zenstack 1.3.1 → 1.4.0

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 (43) hide show
  1. package/bin/post-install.js +8 -1
  2. package/cli/actions/format.d.ts +3 -0
  3. package/cli/actions/format.js +39 -0
  4. package/cli/actions/format.js.map +1 -0
  5. package/cli/actions/index.d.ts +1 -0
  6. package/cli/actions/index.js +1 -0
  7. package/cli/actions/index.js.map +1 -1
  8. package/cli/actions/repl.js +25 -6
  9. package/cli/actions/repl.js.map +1 -1
  10. package/cli/cli-util.d.ts +1 -0
  11. package/cli/cli-util.js +41 -10
  12. package/cli/cli-util.js.map +1 -1
  13. package/cli/index.d.ts +1 -0
  14. package/cli/index.js +10 -1
  15. package/cli/index.js.map +1 -1
  16. package/cli/plugin-runner.d.ts +1 -0
  17. package/cli/plugin-runner.js +18 -8
  18. package/cli/plugin-runner.js.map +1 -1
  19. package/language-server/validator/attribute-application-validator.js +9 -1
  20. package/language-server/validator/attribute-application-validator.js.map +1 -1
  21. package/language-server/validator/expression-validator.js +18 -3
  22. package/language-server/validator/expression-validator.js.map +1 -1
  23. package/language-server/zmodel-linker.js +5 -0
  24. package/language-server/zmodel-linker.js.map +1 -1
  25. package/language-server/zmodel-scope.d.ts +1 -0
  26. package/language-server/zmodel-scope.js +20 -12
  27. package/language-server/zmodel-scope.js.map +1 -1
  28. package/package.json +4 -4
  29. package/plugins/access-policy/policy-guard-generator.js +1 -1
  30. package/plugins/access-policy/policy-guard-generator.js.map +1 -1
  31. package/plugins/prisma/schema-generator.js +2 -2
  32. package/plugins/prisma/schema-generator.js.map +1 -1
  33. package/plugins/zod/generator.js +130 -14
  34. package/plugins/zod/generator.js.map +1 -1
  35. package/plugins/zod/utils/schema-gen.d.ts +1 -1
  36. package/plugins/zod/utils/schema-gen.js +18 -3
  37. package/plugins/zod/utils/schema-gen.js.map +1 -1
  38. package/telemetry.d.ts +6 -1
  39. package/telemetry.js +8 -2
  40. package/telemetry.js.map +1 -1
  41. package/utils/is-docker.d.ts +1 -0
  42. package/utils/is-docker.js +34 -0
  43. package/utils/is-docker.js.map +1 -0
@@ -6,6 +6,7 @@ try {
6
6
  const Mixpanel = require('mixpanel');
7
7
  const machineId = require('node-machine-id');
8
8
  const os = require('os');
9
+ const isDocker = require('../utils/is-docker').default;
9
10
 
10
11
  const mixpanel = Mixpanel.init('74944eb779d7d3b4ce185be843fde9fc', {
11
12
  geolocate: true,
@@ -16,7 +17,13 @@ try {
16
17
  distinct_id: machineId.machineIdSync(),
17
18
  nodeVersion: process.version,
18
19
  time: new Date(),
19
- $os: os.platform(),
20
+ $os: os.type(),
21
+ osType: os.type(),
22
+ osRelease: os.release(),
23
+ osPlatform: os.platform(),
24
+ osArch: os.arch(),
25
+ osVersion: os.version(),
26
+ isDocker: isDocker(),
20
27
  version,
21
28
  };
22
29
 
@@ -0,0 +1,3 @@
1
+ export declare function format(projectPath: string, options: {
2
+ schema: string;
3
+ }): Promise<void>;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.format = void 0;
16
+ const runtime_1 = require("@zenstackhq/runtime");
17
+ const cli_util_1 = require("../cli-util");
18
+ const colors_1 = __importDefault(require("colors"));
19
+ const ora_1 = __importDefault(require("ora"));
20
+ const promises_1 = require("fs/promises");
21
+ function format(projectPath, options) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ const version = (0, runtime_1.getVersion)();
24
+ console.log(colors_1.default.bold(`⌛️ ZenStack CLI v${version}`));
25
+ const schemaFile = options.schema;
26
+ const spinner = (0, ora_1.default)(`Formatting ${schemaFile}`).start();
27
+ try {
28
+ const formattedDoc = yield (0, cli_util_1.formatDocument)(schemaFile);
29
+ yield (0, promises_1.writeFile)(schemaFile, formattedDoc);
30
+ spinner.succeed();
31
+ }
32
+ catch (e) {
33
+ spinner.fail();
34
+ throw e;
35
+ }
36
+ });
37
+ }
38
+ exports.format = format;
39
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/cli/actions/format.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iDAAiD;AACjD,0CAA6C;AAC7C,oDAA4B;AAC5B,8CAAsB;AACtB,0CAAwC;AAExC,SAAsB,MAAM,CAAC,WAAmB,EAAE,OAA2B;;QACzE,MAAM,OAAO,GAAG,IAAA,oBAAU,GAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,gBAAM,CAAC,IAAI,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC,CAAC;QAExD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;QAClC,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,cAAc,UAAU,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QACxD,IAAI;YACA,MAAM,YAAY,GAAG,MAAM,IAAA,yBAAc,EAAC,UAAU,CAAC,CAAC;YACtD,MAAM,IAAA,oBAAS,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC1C,OAAO,CAAC,OAAO,EAAE,CAAC;SACrB;QAAC,OAAO,CAAC,EAAE;YACR,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,CAAC,CAAC;SACX;IACL,CAAC;CAAA;AAdD,wBAcC"}
@@ -2,3 +2,4 @@ export * from './generate';
2
2
  export * from './info';
3
3
  export * from './init';
4
4
  export * from './repl';
5
+ export * from './format';
@@ -18,4 +18,5 @@ __exportStar(require("./generate"), exports);
18
18
  __exportStar(require("./info"), exports);
19
19
  __exportStar(require("./init"), exports);
20
20
  __exportStar(require("./repl"), exports);
21
+ __exportStar(require("./format"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,yCAAuB;AACvB,yCAAuB;AACvB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,yCAAuB;AACvB,yCAAuB;AACvB,yCAAuB;AACvB,2CAAyB"}
@@ -28,15 +28,32 @@ function repl(projectPath, options) {
28
28
  return __awaiter(this, void 0, void 0, function* () {
29
29
  console.log('Welcome to ZenStack REPL. See help with the ".help" command.');
30
30
  console.log('Global variables:');
31
- console.log(` ${colors_1.default.cyan('db')} to access enhanced PrismaClient`);
32
- console.log(` ${colors_1.default.cyan('prisma')} to access raw PrismaClient`);
31
+ console.log(` ${colors_1.default.blue('db')} to access enhanced PrismaClient`);
32
+ console.log(` ${colors_1.default.blue('prisma')} to access raw PrismaClient`);
33
+ console.log(` ${colors_1.default.blue('user')} to inspect the current user`);
33
34
  console.log('Commands:');
34
35
  console.log(` ${colors_1.default.magenta('.auth { id: ... }')} - set current user`);
35
36
  console.log(` ${colors_1.default.magenta('.table')} - toggle table output`);
37
+ console.log(` ${colors_1.default.magenta('.debug')} - toggle debug output`);
36
38
  console.log();
37
39
  console.log(`Running as anonymous user. Use ".auth" to set current user.`);
38
- const prismaClientModule = (_a = options.prismaClient) !== null && _a !== void 0 ? _a : path_1.default.join(projectPath, './node_modules/.prisma/client');
39
- const { PrismaClient } = require(prismaClientModule);
40
+ let PrismaClient;
41
+ const prismaClientModule = (_a = options.prismaClient) !== null && _a !== void 0 ? _a : '@prisma/client';
42
+ try {
43
+ // try direct require
44
+ const module = require(prismaClientModule);
45
+ PrismaClient = module.PrismaClient;
46
+ }
47
+ catch (err) {
48
+ if (!path_1.default.isAbsolute(prismaClientModule)) {
49
+ // try relative require
50
+ const module = require(path_1.default.join(projectPath, prismaClientModule));
51
+ PrismaClient = module.PrismaClient;
52
+ }
53
+ else {
54
+ throw err;
55
+ }
56
+ }
40
57
  const { enhance } = require('@zenstackhq/runtime');
41
58
  let debug = !!options.debug;
42
59
  let table = !!options.table;
@@ -45,7 +62,7 @@ function repl(projectPath, options) {
45
62
  let db;
46
63
  let user;
47
64
  const replServer = pretty_repl_1.default.start({
48
- prompt: '[anonymous] > ',
65
+ prompt: `[${colors_1.default.cyan('anonymous')}] > `,
49
66
  eval: (cmd, _context, _filename, callback) => __awaiter(this, void 0, void 0, function* () {
50
67
  try {
51
68
  let r = undefined;
@@ -166,6 +183,7 @@ function repl(projectPath, options) {
166
183
  prisma.$disconnect();
167
184
  }
168
185
  prisma = new PrismaClient(debug ? { log: ['info'] } : undefined);
186
+ // https://github.com/prisma/prisma/issues/18292
169
187
  prisma[Symbol.for('nodejs.util.inspect.custom')] = 'PrismaClient';
170
188
  db = enhance(prisma, { user }, { logPrismaQuery: debug });
171
189
  replServer.context.prisma = prisma;
@@ -173,7 +191,8 @@ function repl(projectPath, options) {
173
191
  });
174
192
  }
175
193
  function setPrompt() {
176
- replServer.setPrompt(`[${debug ? colors_1.default.yellow('D ') : ''}${user ? (0, util_1.inspect)(user) : 'anonymous'}] > `);
194
+ const userInfo = user ? (user.id ? `user#${user.id.toString().slice(-8)}` : (0, util_1.inspect)(user)) : 'anonymous';
195
+ replServer.setPrompt(`[${debug ? colors_1.default.yellow('D ') : ''}${colors_1.default.cyan(userInfo)}] > `);
177
196
  }
178
197
  function setAuth(_user) {
179
198
  user = _user;
@@ -1 +1 @@
1
- {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../../src/cli/actions/repl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repl.js","sourceRoot":"","sources":["../../../src/cli/actions/repl.ts"],"names":[],"mappings":"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"}
package/cli/cli-util.d.ts CHANGED
@@ -19,3 +19,4 @@ export declare function getZenStackPackages(projectPath: string): {
19
19
  }[] | undefined;
20
20
  export declare function checkRequiredPackage(packageName: string, minVersion?: string): void;
21
21
  export declare function checkNewVersion(): Promise<void>;
22
+ export declare function formatDocument(fileName: string): Promise<string>;
package/cli/cli-util.js CHANGED
@@ -12,7 +12,7 @@ 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
- exports.checkNewVersion = exports.checkRequiredPackage = exports.getZenStackPackages = exports.getPluginDocuments = exports.mergeImportsDeclarations = exports.eagerLoadAllImports = exports.loadDocument = exports.requiredPrismaVersion = void 0;
15
+ exports.formatDocument = exports.checkNewVersion = exports.checkRequiredPackage = exports.getZenStackPackages = exports.getPluginDocuments = exports.mergeImportsDeclarations = exports.eagerLoadAllImports = exports.loadDocument = exports.requiredPrismaVersion = void 0;
16
16
  const ast_1 = require("@zenstackhq/language/ast");
17
17
  const sdk_1 = require("@zenstackhq/sdk");
18
18
  const colors_1 = __importDefault(require("colors"));
@@ -28,6 +28,7 @@ const zmodel_module_1 = require("../language-server/zmodel-module");
28
28
  const ast_utils_1 = require("../utils/ast-utils");
29
29
  const version_utils_1 = require("../utils/version-utils");
30
30
  const cli_error_1 = require("./cli-error");
31
+ const vscode_languageserver_textdocument_1 = require("vscode-languageserver-textdocument");
31
32
  // required minimal version of Prisma
32
33
  exports.requiredPrismaVersion = '4.8.0';
33
34
  /**
@@ -93,7 +94,7 @@ function validationAfterMerge(model) {
93
94
  throw new cli_error_1.CliError('schema validation errors');
94
95
  }
95
96
  // at most one `@@auth` model
96
- const dataModels = (0, sdk_1.getDataModels)(model);
97
+ const dataModels = (0, sdk_1.getDataModels)(model, true);
97
98
  const authModels = dataModels.filter((d) => (0, sdk_1.hasAttribute)(d, '@@auth'));
98
99
  if (authModels.length > 1) {
99
100
  console.error(colors_1.default.red('Validation error: Multiple `@@auth` models are not allowed'));
@@ -141,22 +142,30 @@ function getPluginDocuments(services, fileName) {
141
142
  if ((0, ast_1.isPlugin)(decl)) {
142
143
  const providerField = decl.fields.find((f) => f.name === 'provider');
143
144
  if (providerField) {
144
- let provider = (0, sdk_1.getLiteral)(providerField.value);
145
+ const provider = (0, sdk_1.getLiteral)(providerField.value);
145
146
  if (provider) {
147
+ let pluginEntrance;
146
148
  try {
147
- if (provider.startsWith('.')) {
148
- // resolve relative path against the schema file
149
- provider = path_1.default.resolve(path_1.default.dirname(fileName), provider);
149
+ // direct require
150
+ pluginEntrance = require.resolve(provider);
151
+ }
152
+ catch (_a) {
153
+ if (!path_1.default.isAbsolute(provider)) {
154
+ // relative path
155
+ try {
156
+ pluginEntrance = require.resolve(path_1.default.join(path_1.default.dirname(fileName), provider));
157
+ }
158
+ catch (_b) {
159
+ // noop
160
+ }
150
161
  }
151
- const pluginEntrance = require.resolve(`${provider}`);
162
+ }
163
+ if (pluginEntrance) {
152
164
  const pluginModelFile = path_1.default.join(path_1.default.dirname(pluginEntrance), constants_1.PLUGIN_MODULE_NAME);
153
165
  if (fs_1.default.existsSync(pluginModelFile)) {
154
166
  result.push(services.shared.workspace.LangiumDocuments.getOrCreateDocument(vscode_uri_1.URI.file(pluginModelFile)));
155
167
  }
156
168
  }
157
- catch (_a) {
158
- // noop
159
- }
160
169
  }
161
170
  }
162
171
  }
@@ -219,4 +228,26 @@ function checkNewVersion() {
219
228
  });
220
229
  }
221
230
  exports.checkNewVersion = checkNewVersion;
231
+ function formatDocument(fileName) {
232
+ var _a;
233
+ return __awaiter(this, void 0, void 0, function* () {
234
+ const services = (0, zmodel_module_1.createZModelServices)(node_1.NodeFileSystem).ZModel;
235
+ const extensions = services.LanguageMetaData.fileExtensions;
236
+ if (!extensions.includes(path_1.default.extname(fileName))) {
237
+ console.error(colors_1.default.yellow(`Please choose a file with extension: ${extensions}.`));
238
+ throw new cli_error_1.CliError('invalid schema file');
239
+ }
240
+ const langiumDocuments = services.shared.workspace.LangiumDocuments;
241
+ const document = langiumDocuments.getOrCreateDocument(vscode_uri_1.URI.file(path_1.default.resolve(fileName)));
242
+ const formatter = services.lsp.Formatter;
243
+ const identifier = { uri: document.uri.toString() };
244
+ const options = (_a = formatter.getFormatOptions()) !== null && _a !== void 0 ? _a : {
245
+ insertSpaces: true,
246
+ tabSize: 4,
247
+ };
248
+ const edits = yield formatter.formatDocument(document, { options, textDocument: identifier });
249
+ return vscode_languageserver_textdocument_1.TextDocument.applyEdits(document.textDocument, edits);
250
+ });
251
+ }
252
+ exports.formatDocument = formatDocument;
222
253
  //# sourceMappingURL=cli-util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-util.js","sourceRoot":"","sources":["../../src/cli/cli-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-util.js","sourceRoot":"","sources":["../../src/cli/cli-util.ts"],"names":[],"mappings":"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"}
package/cli/index.d.ts CHANGED
@@ -4,5 +4,6 @@ export declare const initAction: (projectPath: string, options: Parameters<typeo
4
4
  export declare const infoAction: (projectPath: string) => Promise<void>;
5
5
  export declare const generateAction: (options: Parameters<typeof actions.generate>[1]) => Promise<void>;
6
6
  export declare const replAction: (options: Parameters<typeof actions.repl>[1]) => Promise<void>;
7
+ export declare const formatAction: (options: Parameters<typeof actions.format>[1]) => Promise<void>;
7
8
  export declare function createProgram(): Command;
8
9
  export default function (): Promise<void>;
package/cli/index.js CHANGED
@@ -35,7 +35,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
35
35
  return (mod && mod.__esModule) ? mod : { "default": mod };
36
36
  };
37
37
  Object.defineProperty(exports, "__esModule", { value: true });
38
- exports.createProgram = exports.replAction = exports.generateAction = exports.infoAction = exports.initAction = void 0;
38
+ exports.createProgram = exports.formatAction = exports.replAction = exports.generateAction = exports.infoAction = exports.initAction = void 0;
39
39
  /* eslint-disable @typescript-eslint/no-explicit-any */
40
40
  const module_1 = require("@zenstackhq/language/module");
41
41
  const colors_1 = __importDefault(require("colors"));
@@ -62,6 +62,10 @@ const replAction = (options) => __awaiter(void 0, void 0, void 0, function* () {
62
62
  yield telemetry_1.default.trackSpan('cli:command:start', 'cli:command:complete', 'cli:command:error', { command: 'repl' }, () => actions.repl(process.cwd(), options));
63
63
  });
64
64
  exports.replAction = replAction;
65
+ const formatAction = (options) => __awaiter(void 0, void 0, void 0, function* () {
66
+ yield telemetry_1.default.trackSpan('cli:command:start', 'cli:command:complete', 'cli:command:error', { command: 'format' }, () => actions.format(process.cwd(), options));
67
+ });
68
+ exports.formatAction = formatAction;
65
69
  function createProgram() {
66
70
  const program = new commander_1.Command('zenstack');
67
71
  program.version((0, version_utils_1.getVersion)(), '-v --version', 'display CLI version');
@@ -112,6 +116,11 @@ function createProgram() {
112
116
  .option('--debug', 'enable debug output')
113
117
  .option('--table', 'enable table format output')
114
118
  .action(exports.replAction);
119
+ program
120
+ .command('format')
121
+ .description('Format a ZenStack schema file.')
122
+ .addOption(schemaOption)
123
+ .action(exports.formatAction);
115
124
  // make sure config is loaded before actions run
116
125
  program.hook('preAction', (_, actionCommand) => __awaiter(this, void 0, void 0, function* () {
117
126
  let configFile = actionCommand.opts().config;
package/cli/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -21,4 +21,5 @@ export declare class PluginRunner {
21
21
  private getPluginProvider;
22
22
  private runPlugin;
23
23
  private getPluginModulePath;
24
+ private loadPluginModule;
24
25
  }
@@ -43,14 +43,13 @@ class PluginRunner {
43
43
  console.error(`Plugin ${pluginDecl.name} has invalid provider option`);
44
44
  throw new sdk_1.PluginError('', `Plugin ${pluginDecl.name} has invalid provider option`);
45
45
  }
46
- const pluginModulePath = this.getPluginModulePath(pluginProvider, options);
47
46
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
48
47
  let pluginModule;
49
48
  try {
50
- pluginModule = require(pluginModulePath);
49
+ pluginModule = this.loadPluginModule(pluginProvider, options);
51
50
  }
52
51
  catch (err) {
53
- console.error(`Unable to load plugin module ${pluginProvider}: ${pluginModulePath}, ${err}`);
52
+ console.error(`Unable to load plugin module ${pluginProvider}: ${err}`);
54
53
  throw new sdk_1.PluginError('', `Unable to load plugin module ${pluginProvider}`);
55
54
  }
56
55
  if (!pluginModule.default || typeof pluginModule.default !== 'function') {
@@ -240,15 +239,26 @@ class PluginRunner {
240
239
  });
241
240
  }
242
241
  getPluginModulePath(provider, options) {
243
- if (path_1.default.isAbsolute(provider) || provider.startsWith('.')) {
244
- return (0, sdk_1.resolvePath)(provider, options);
245
- }
246
242
  let pluginModulePath = provider;
247
- if (pluginModulePath.startsWith('@core/')) {
248
- pluginModulePath = pluginModulePath.replace(/^@core/, path_1.default.join(__dirname, '../plugins'));
243
+ if (provider.startsWith('@core/')) {
244
+ pluginModulePath = provider.replace(/^@core/, path_1.default.join(__dirname, '../plugins'));
245
+ }
246
+ else {
247
+ try {
248
+ // direct require
249
+ require.resolve(pluginModulePath);
250
+ }
251
+ catch (_a) {
252
+ // relative
253
+ pluginModulePath = (0, sdk_1.resolvePath)(provider, options);
254
+ }
249
255
  }
250
256
  return pluginModulePath;
251
257
  }
258
+ loadPluginModule(provider, options) {
259
+ const pluginModulePath = this.getPluginModulePath(provider, options);
260
+ return require(pluginModulePath);
261
+ }
252
262
  }
253
263
  exports.PluginRunner = PluginRunner;
254
264
  //# sourceMappingURL=plugin-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-runner.js","sourceRoot":"","sources":["../../src/cli/plugin-runner.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGA,kDAAmE;AACnE,yCAUyB;AACzB,oDAA4B;AAC5B,4CAAoB;AACpB,8CAAsB;AACtB,gDAAwB;AACxB,0DAAoE;AACpE,6DAAqC;AACrC,0DAAoD;AAmBpD;;GAEG;AACH,MAAa,YAAY;IACrB;;OAEG;IACG,GAAG,CAAC,OAA4B;;YAClC,MAAM,OAAO,GAAG,IAAA,0BAAU,GAAE,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,gBAAM,CAAC,IAAI,CAAC,oBAAoB,OAAO,mBAAmB,CAAC,CAAC,CAAC;YAEzE,IAAA,wCAAyB,EAAC,OAAO,CAAC,CAAC;YAEnC,MAAM,OAAO,GAAiB,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,IAAA,cAAQ,EAAC,CAAC,CAAC,CAAC,CAAC;YAExF,IAAI,YAAY,GAAG,IAAA,iBAAW,EAAC,wBAAwB,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;YAE7F,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;gBAClC,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAC1D,IAAI,CAAC,cAAc,EAAE;oBACjB,OAAO,CAAC,KAAK,CAAC,UAAU,UAAU,CAAC,IAAI,8BAA8B,CAAC,CAAC;oBACvE,MAAM,IAAI,iBAAW,CAAC,EAAE,EAAE,UAAU,UAAU,CAAC,IAAI,8BAA8B,CAAC,CAAC;iBACtF;gBACD,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;gBAC3E,8DAA8D;gBAC9D,IAAI,YAAiB,CAAC;gBACtB,IAAI;oBACA,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;iBAC5C;gBAAC,OAAO,GAAG,EAAE;oBACV,OAAO,CAAC,KAAK,CAAC,gCAAgC,cAAc,KAAK,gBAAgB,KAAK,GAAG,EAAE,CAAC,CAAC;oBAC7F,MAAM,IAAI,iBAAW,CAAC,EAAE,EAAE,gCAAgC,cAAc,EAAE,CAAC,CAAC;iBAC/E;gBAED,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU,EAAE;oBACrE,OAAO,CAAC,KAAK,CAAC,mBAAmB,cAAc,uCAAuC,CAAC,CAAC;oBACxF,MAAM,IAAI,iBAAW,CAAC,EAAE,EAAE,mBAAmB,cAAc,uCAAuC,CAAC,CAAC;iBACvG;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;gBAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;gBACpE,MAAM,aAAa,GAAkB,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;gBAE1F,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;;oBAC5B,MAAM,KAAK,GAAG,MAAA,IAAA,gBAAU,EAAC,CAAC,CAAC,KAAK,CAAC,mCAAI,IAAA,qBAAe,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC9D,IAAI,KAAK,KAAK,SAAS,EAAE;wBACrB,MAAM,IAAI,iBAAW,CAAC,UAAU,EAAE,4BAA4B,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC3E;oBACD,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBAClC,CAAC,CAAC,CAAC;gBAEH,OAAO,CAAC,IAAI,CAAC;oBACT,IAAI,EAAE,UAAU;oBAChB,QAAQ,EAAE,cAAc;oBACxB,YAAY;oBACZ,OAAO,EAAE,aAAa;oBACtB,GAAG,EAAE,YAAY,CAAC,OAAyB;oBAC3C,MAAM,EAAE,YAAY;iBACvB,CAAC,CAAC;gBAEH,IAAI,cAAc,KAAK,cAAc,IAAI,OAAO,aAAa,CAAC,MAAM,KAAK,QAAQ,EAAE;oBAC/E,mCAAmC;oBACnC,YAAY,GAAG,IAAA,iBAAW,EAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;iBACnE;aACJ;YAED,2CAA2C;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAEhE,yCAAyC;YACzC,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE;gBAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACjF,IAAI,WAAW,IAAI,CAAC,EAAE;oBAClB,gCAAgC;oBAChC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;oBACtC,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;oBAC/B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAC7B;qBAAM;oBACH,uCAAuC;oBACvC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;oBACrF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACzE,OAAO,CAAC,OAAO,CAAC;wBACZ,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,UAAU,CAAC,QAAQ;wBAC7B,YAAY,EAAE,EAAE;wBAChB,OAAO,kBAAI,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,IAAK,UAAU,CAAC,OAAO,CAAE;wBACpF,GAAG,EAAE,YAAY,CAAC,OAAO;wBACzB,MAAM,EAAE,YAAY;qBACvB,CAAC,CAAC;iBACN;aACJ;YAED,qBAAqB;YACrB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;gBAC1B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE;oBACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,EAAE;wBAC1C,OAAO,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,QAAQ,gBAAgB,GAAG,yBAAyB,CAAC,CAAC;wBACrF,MAAM,IAAI,iBAAW,CACjB,MAAM,CAAC,IAAI,EACX,UAAU,MAAM,CAAC,QAAQ,gBAAgB,GAAG,yBAAyB,CACxE,CAAC;qBACL;iBACJ;aACJ;YAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,gBAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBACrD,OAAO;aACV;YAED,MAAM,QAAQ,GAAa,EAAE,CAAC;YAE9B,IAAI,IAAI,GAA8B,SAAS,CAAC;YAChD,KAAK,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,OAAO,EAAE;gBACnE,4BAA4B;gBAC5B,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACxE,mGAAmG;gBACnG,IAAI,QAAQ,KAAK,cAAc,EAAE;oBAC7B,mBAAmB;oBACnB,IAAI,GAAG,MAAM,IAAA,aAAO,EAAC;wBACjB,SAAS,EAAE,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;qBAClE,CAAC,CAAC;iBACN;aACJ;YACD,OAAO,CAAC,GAAG,CAAC,gBAAM,CAAC,KAAK,CAAC,gBAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC,CAAC;YAEnF,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAExD,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;QAC3F,CAAC;KAAA;IAEO,oBAAoB,CAAC,OAA4B,EAAE,OAAqB;QAC5E,MAAM,WAAW,GAAmE,EAAE,CAAC;QAEvF,IAAI,OAAO,CAAC,cAAc,EAAE;YACxB,WAAW,CAAC,IAAI,CACZ,EAAE,QAAQ,EAAE,cAAc,EAAE,EAC5B,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAChC,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CACtC,CAAC;SACL;aAAM,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3B,sEAAsE;YACtE,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;SAClD;QAED,kDAAkD;QAClD,IAAI,kBAAkB,GAAG,KAAK,CAAC;QAC/B,IAAI,CAAC,GAAG,OAAO,EAAE,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,qBAAqB,CAAC,EAAE;YAChF,0CAA0C;YAC1C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,kBAAkB,CAAC,EAAE;gBAC7D,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC;aACtD;YAED,8DAA8D;YAC9D,+BAA+B;YAC/B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,WAAW,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBAC5F,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,WAAW,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;aAC7E;SACJ;QAED,0CAA0C;QAC1C,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACvB,wBAAwB;YACxB,MAAM,YAAY,GACd,MAAM,CAAC,QAAQ,KAAK,kBAAkB;gBACtC,cAAc;gBACd,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YAEpE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE;gBACnC,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;oBAC1B,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,GAAG,CAAC,CAAC;oBAC7D,IAAI,QAAQ,EAAE;wBACV,wBAAwB;wBACxB,IAAI,QAAQ,CAAC,QAAQ,KAAK,WAAW,EAAE;4BACnC,uEAAuE;4BACvE,8DAA8D;4BAC9D,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;4BAEtB,IACI,YAAY;gCACZ,kBAAkB,CAAC,0CAA0C;8BAC/D;gCACE,gEAAgE;gCAChE,QAAQ,CAAC,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;6BACnE;yBACJ;qBACJ;yBAAM;wBACH,sBAAsB;wBACtB,MAAM,KAAK,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,EAA6B,EAAE,CAAC;wBAExE,wBAAwB;wBACxB,IAAI,GAAG,KAAK,WAAW,IAAI,YAAY,EAAE;4BACrC,gEAAgE;4BAChE,KAAK,CAAC,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;yBAChE;wBAED,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBAC3B;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,WAAW,CAAC;IACvB,CAAC;IAEO,aAAa,CAAC,MAAa;QAC/B,OAAO,IAAA,mBAAa,EAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,6BAAuB,EAAC,KAAK,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,8DAA8D;IACtD,aAAa,CAAC,YAAiB,EAAE,cAAsB;QAC3D,OAAO,OAAO,YAAY,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAE,YAAY,CAAC,IAAe,CAAC,CAAC,CAAC,cAAc,CAAC;IAClG,CAAC;IAEO,qBAAqB,CAAC,YAAiB;QAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,CAAE,YAAY,CAAC,YAAyB,CAAC,CAAC,CAAC,EAAE,CAAC;IACnG,CAAC;IAEO,iBAAiB,CAAC,MAAc;QACpC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACvE,OAAO,IAAA,gBAAU,EAAS,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAEa,SAAS,CACnB,IAAY,EACZ,GAAmB,EACnB,aAAkC,EAClC,OAAsB,EACtB,IAA+B,EAC/B,QAAkB;;YAElB,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,kBAAkB,gBAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;YACnE,IAAI;gBACA,MAAM,mBAAS,CAAC,SAAS,CACrB,kBAAkB,EAClB,qBAAqB,EACrB,kBAAkB,EAClB;oBACI,MAAM,EAAE,IAAI;oBACZ,OAAO;iBACV,EACD,GAAS,EAAE;oBACP,IAAI,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;wBAClD,MAAM,EAAE,aAAa,CAAC,MAAM;wBAC5B,OAAO,EAAE,aAAa,CAAC,OAAO;qBACjC,CAAC,CAAC;oBACH,IAAI,MAAM,YAAY,OAAO,EAAE;wBAC3B,MAAM,GAAG,MAAM,MAAM,CAAC;qBACzB;oBACD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;wBACvB,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;qBAC5B;gBACL,CAAC,CAAA,CACJ,CAAC;gBACF,OAAO,CAAC,OAAO,EAAE,CAAC;aACrB;YAAC,OAAO,GAAG,EAAE;gBACV,OAAO,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,GAAG,CAAC;aACb;QACL,CAAC;KAAA;IAEO,mBAAmB,CAAC,QAAgB,EAAE,OAA0C;QACpF,IAAI,cAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACvD,OAAO,IAAA,iBAAW,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;SACzC;QACD,IAAI,gBAAgB,GAAG,QAAQ,CAAC;QAChC,IAAI,gBAAgB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YACvC,gBAAgB,GAAG,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;SAC7F;QACD,OAAO,gBAAgB,CAAC;IAC5B,CAAC;CACJ;AA7QD,oCA6QC"}
1
+ {"version":3,"file":"plugin-runner.js","sourceRoot":"","sources":["../../src/cli/plugin-runner.ts"],"names":[],"mappings":"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"}
@@ -104,11 +104,18 @@ class AttributeApplicationValidator {
104
104
  accept('error', `expects a string literal`, { node: attr.args[0] });
105
105
  return;
106
106
  }
107
- this.validatePolicyKinds(kind, ['read', 'update', 'all'], attr, accept);
107
+ const kindItems = this.validatePolicyKinds(kind, ['read', 'update', 'all'], attr, accept);
108
108
  const expr = attr.args[1].value;
109
109
  if ((0, langium_1.streamAst)(expr).some((node) => (0, sdk_1.isFutureExpr)(node))) {
110
110
  accept('error', `"future()" is not allowed in field-level policy rules`, { node: expr });
111
111
  }
112
+ // 'update' rules are not allowed for relation fields
113
+ if (kindItems.includes('update') || kindItems.includes('all')) {
114
+ const field = attr.$container;
115
+ if ((0, sdk_1.isRelationshipField)(field)) {
116
+ accept('error', `Field-level policy rules with "update" or "all" kind are not allowed for relation fields. Put rules on foreign-key fields instead.`, { node: attr });
117
+ }
118
+ }
112
119
  }
113
120
  validatePolicyKinds(kind, candidates, attr, accept) {
114
121
  const items = kind.split(',').map((x) => x.trim());
@@ -117,6 +124,7 @@ class AttributeApplicationValidator {
117
124
  accept('error', `Invalid policy rule kind: "${item}", allowed: ${candidates.map((c) => '"' + c + '"').join(', ')}`, { node: attr });
118
125
  }
119
126
  });
127
+ return items;
120
128
  }
121
129
  }
122
130
  __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"attribute-application-validator.js","sourceRoot":"","sources":["../../../src/language-server/validator/attribute-application-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attribute-application-validator.js","sourceRoot":"","sources":["../../../src/language-server/validator/attribute-application-validator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const ast_1 = require("@zenstackhq/language/ast");
4
4
  const sdk_1 = require("@zenstackhq/sdk");
5
5
  const ast_utils_1 = require("../../utils/ast-utils");
6
+ const utils_1 = require("./utils");
6
7
  /**
7
8
  * Validates expressions.
8
9
  */
@@ -35,7 +36,7 @@ class ExpressionValidator {
35
36
  }
36
37
  }
37
38
  validateBinaryExpr(expr, accept) {
38
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
39
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
39
40
  switch (expr.operator) {
40
41
  case 'in': {
41
42
  if (typeof ((_a = expr.left.$resolvedType) === null || _a === void 0 ? void 0 : _a.decl) !== 'string' && !(0, ast_1.isEnum)((_b = expr.left.$resolvedType) === null || _b === void 0 ? void 0 : _b.decl)) {
@@ -99,10 +100,24 @@ class ExpressionValidator {
99
100
  accept('error', 'incompatible operand types', { node: expr });
100
101
  break;
101
102
  }
103
+ if ((((_k = expr.left.$resolvedType) === null || _k === void 0 ? void 0 : _k.nullable) && (0, ast_1.isNullExpr)(expr.right)) ||
104
+ (((_l = expr.right.$resolvedType) === null || _l === void 0 ? void 0 : _l.nullable) && (0, ast_1.isNullExpr)(expr.left))) {
105
+ // comparing nullable field with null
106
+ return;
107
+ }
108
+ if (typeof ((_m = expr.left.$resolvedType) === null || _m === void 0 ? void 0 : _m.decl) === 'string' &&
109
+ typeof ((_o = expr.right.$resolvedType) === null || _o === void 0 ? void 0 : _o.decl) === 'string') {
110
+ // scalar types assignability
111
+ if (!(0, utils_1.typeAssignable)(expr.left.$resolvedType.decl, expr.right.$resolvedType.decl) &&
112
+ !(0, utils_1.typeAssignable)(expr.right.$resolvedType.decl, expr.left.$resolvedType.decl)) {
113
+ accept('error', 'incompatible operand types', { node: expr });
114
+ }
115
+ return;
116
+ }
102
117
  // disallow comparing model type with scalar type or comparison between
103
118
  // incompatible model types
104
- const leftType = (_k = expr.left.$resolvedType) === null || _k === void 0 ? void 0 : _k.decl;
105
- const rightType = (_l = expr.right.$resolvedType) === null || _l === void 0 ? void 0 : _l.decl;
119
+ const leftType = (_p = expr.left.$resolvedType) === null || _p === void 0 ? void 0 : _p.decl;
120
+ const rightType = (_q = expr.right.$resolvedType) === null || _q === void 0 ? void 0 : _q.decl;
106
121
  if ((0, ast_1.isDataModel)(leftType) && (0, ast_1.isDataModel)(rightType)) {
107
122
  if (leftType != rightType) {
108
123
  // incompatible model types