zenstack 1.0.0-alpha.61 → 1.0.0-alpha.70

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.
@@ -7,7 +7,7 @@ try {
7
7
  const machineId = require('node-machine-id');
8
8
  const os = require('os');
9
9
 
10
- const mixpanel = Mixpanel.init('', {
10
+ const mixpanel = Mixpanel.init('74944eb779d7d3b4ce185be843fde9fc', {
11
11
  geolocate: true,
12
12
  });
13
13
 
package/cli/cli-util.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { Model } from '@zenstackhq/language/ast';
2
- import { LangiumServices } from 'langium';
2
+ import { LangiumDocument } from 'langium';
3
+ import { ZModelServices } from '../language-server/zmodel-module';
3
4
  import { PackageManagers } from '../utils/pkg-utils';
4
5
  /**
5
6
  * Initializes an existing project for ZenStack
@@ -11,7 +12,8 @@ export declare function initProject(projectPath: string, prismaSchema: string |
11
12
  * @param services Language services
12
13
  * @returns Parsed and validated AST
13
14
  */
14
- export declare function loadDocument(fileName: string, services: LangiumServices): Promise<Model>;
15
+ export declare function loadDocument(fileName: string): Promise<Model>;
16
+ export declare function getPluginDocuments(services: ZModelServices, fileName: string): Promise<LangiumDocument[]>;
15
17
  export declare function runPlugins(options: {
16
18
  schema: string;
17
19
  packageManager: PackageManagers | undefined;
package/cli/cli-util.js CHANGED
@@ -12,7 +12,8 @@ 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.runPlugins = exports.loadDocument = exports.initProject = void 0;
15
+ exports.runPlugins = exports.getPluginDocuments = exports.loadDocument = exports.initProject = void 0;
16
+ const ast_1 = require("@zenstackhq/language/ast");
16
17
  const sdk_1 = require("@zenstackhq/sdk");
17
18
  const colors_1 = __importDefault(require("colors"));
18
19
  const fs_1 = __importDefault(require("fs"));
@@ -84,9 +85,10 @@ exports.initProject = initProject;
84
85
  * @param services Language services
85
86
  * @returns Parsed and validated AST
86
87
  */
87
- function loadDocument(fileName, services) {
88
+ function loadDocument(fileName) {
88
89
  var _a;
89
90
  return __awaiter(this, void 0, void 0, function* () {
91
+ const services = (0, zmodel_module_1.createZModelServices)(node_1.NodeFileSystem).ZModel;
90
92
  const extensions = services.LanguageMetaData.fileExtensions;
91
93
  if (!extensions.includes(path_1.default.extname(fileName))) {
92
94
  console.error(colors_1.default.yellow(`Please choose a file with extension: ${extensions}.`));
@@ -98,10 +100,11 @@ function loadDocument(fileName, services) {
98
100
  }
99
101
  // load standard library
100
102
  const stdLib = services.shared.workspace.LangiumDocuments.getOrCreateDocument(vscode_uri_1.URI.file(path_1.default.resolve(path_1.default.join(__dirname, '../res', constants_1.STD_LIB_MODULE_NAME))));
103
+ const pluginDocuments = yield getPluginDocuments(services, fileName);
101
104
  // load the document
102
105
  const document = services.shared.workspace.LangiumDocuments.getOrCreateDocument(vscode_uri_1.URI.file(path_1.default.resolve(fileName)));
103
- // build the document together with standard library
104
- yield services.shared.workspace.DocumentBuilder.build([stdLib, document], {
106
+ // build the document together with standard library and plugin modules
107
+ yield services.shared.workspace.DocumentBuilder.build([stdLib, ...pluginDocuments, document], {
105
108
  validationChecks: 'all',
106
109
  });
107
110
  const validationErrors = ((_a = document.diagnostics) !== null && _a !== void 0 ? _a : []).filter((e) => e.severity === 1);
@@ -116,10 +119,40 @@ function loadDocument(fileName, services) {
116
119
  });
117
120
  }
118
121
  exports.loadDocument = loadDocument;
122
+ function getPluginDocuments(services, fileName) {
123
+ return __awaiter(this, void 0, void 0, function* () {
124
+ const parseResult = services.parser.LangiumParser.parse(fs_1.default.readFileSync(fileName, { encoding: 'utf-8' }));
125
+ const parsed = parseResult.value;
126
+ const result = [];
127
+ parsed.declarations.forEach((decl) => {
128
+ if ((0, ast_1.isPlugin)(decl)) {
129
+ const providerField = decl.fields.find((f) => f.name === 'provider');
130
+ if (providerField) {
131
+ const provider = (0, sdk_1.getLiteral)(providerField.value);
132
+ if (provider) {
133
+ try {
134
+ const pluginEntrance = require.resolve(`${provider}`);
135
+ const pluginModelFile = path_1.default.join(path_1.default.dirname(pluginEntrance), constants_1.PLUGIN_MODULE_NAME);
136
+ if (fs_1.default.existsSync(pluginModelFile)) {
137
+ console.log('Including zmodel module from:', pluginModelFile);
138
+ result.push(services.shared.workspace.LangiumDocuments.getOrCreateDocument(vscode_uri_1.URI.file(pluginModelFile)));
139
+ }
140
+ }
141
+ catch (_a) {
142
+ console.warn(`Unable to load plugin from ${provider}, skipping`);
143
+ // noop
144
+ }
145
+ }
146
+ }
147
+ }
148
+ });
149
+ return result;
150
+ });
151
+ }
152
+ exports.getPluginDocuments = getPluginDocuments;
119
153
  function runPlugins(options) {
120
154
  return __awaiter(this, void 0, void 0, function* () {
121
- const services = (0, zmodel_module_1.createZModelServices)(node_1.NodeFileSystem).ZModel;
122
- const model = yield loadDocument(options.schema, services);
155
+ const model = yield loadDocument(options.schema);
123
156
  const context = {
124
157
  schema: model,
125
158
  schemaPath: path_1.default.resolve(options.schema),
@@ -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/constants.js CHANGED
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TELEMETRY_TRACKING_TOKEN = void 0;
4
4
  // replaced at build time
5
- exports.TELEMETRY_TRACKING_TOKEN = '';
5
+ exports.TELEMETRY_TRACKING_TOKEN = '74944eb779d7d3b4ce185be843fde9fc';
6
6
  //# sourceMappingURL=constants.js.map
@@ -10,6 +10,10 @@ export declare const SCALAR_TYPES: string[];
10
10
  * Name of standard library module
11
11
  */
12
12
  export declare const STD_LIB_MODULE_NAME = "stdlib.zmodel";
13
+ /**
14
+ * Name of module contributed by plugins
15
+ */
16
+ export declare const PLUGIN_MODULE_NAME = "plugin.zmodel";
13
17
  export declare enum IssueCodes {
14
18
  MissingOppositeRelation = "miss-opposite-relation"
15
19
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IssueCodes = exports.STD_LIB_MODULE_NAME = exports.SCALAR_TYPES = exports.SUPPORTED_PROVIDERS = void 0;
3
+ exports.IssueCodes = exports.PLUGIN_MODULE_NAME = exports.STD_LIB_MODULE_NAME = exports.SCALAR_TYPES = exports.SUPPORTED_PROVIDERS = void 0;
4
4
  /**
5
5
  * Supported Prisma db providers
6
6
  */
@@ -13,6 +13,10 @@ exports.SCALAR_TYPES = ['String', 'Int', 'Float', 'Decimal', 'BigInt', 'Boolean'
13
13
  * Name of standard library module
14
14
  */
15
15
  exports.STD_LIB_MODULE_NAME = 'stdlib.zmodel';
16
+ /**
17
+ * Name of module contributed by plugins
18
+ */
19
+ exports.PLUGIN_MODULE_NAME = 'plugin.zmodel';
16
20
  var IssueCodes;
17
21
  (function (IssueCodes) {
18
22
  IssueCodes["MissingOppositeRelation"] = "miss-opposite-relation";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/language-server/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,mBAAmB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;AAEjG;;GAEG;AACU,QAAA,YAAY,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAE5G;;GAEG;AACU,QAAA,mBAAmB,GAAG,eAAe,CAAC;AAEnD,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,gEAAkD,CAAA;AACtD,CAAC,EAFW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAErB"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/language-server/constants.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,mBAAmB,GAAG,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;AAEjG;;GAEG;AACU,QAAA,YAAY,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AAE5G;;GAEG;AACU,QAAA,mBAAmB,GAAG,eAAe,CAAC;AAEnD;;GAEG;AACU,QAAA,kBAAkB,GAAG,eAAe,CAAC;AAElD,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,gEAAkD,CAAA;AACtD,CAAC,EAFW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAErB"}
@@ -8,9 +8,10 @@ const utils_1 = require("./utils");
8
8
  */
9
9
  class SchemaValidator {
10
10
  validate(model, accept) {
11
- var _a;
11
+ var _a, _b;
12
12
  (0, utils_1.validateDuplicatedDeclarations)(model.declarations, accept);
13
- if (!((_a = model.$document) === null || _a === void 0 ? void 0 : _a.uri.path.endsWith(constants_1.STD_LIB_MODULE_NAME))) {
13
+ if (!((_a = model.$document) === null || _a === void 0 ? void 0 : _a.uri.path.endsWith(constants_1.STD_LIB_MODULE_NAME)) &&
14
+ !((_b = model.$document) === null || _b === void 0 ? void 0 : _b.uri.path.endsWith(constants_1.PLUGIN_MODULE_NAME))) {
14
15
  this.validateDataSources(model, accept);
15
16
  }
16
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/language-server/validator/schema-validator.ts"],"names":[],"mappings":";;AAAA,4CAAmD;AACnD,kDAA+D;AAG/D,mCAAyD;AAEzD;;GAEG;AACH,MAAqB,eAAe;IAChC,QAAQ,CAAC,KAAY,EAAE,MAA0B;;QAC7C,IAAA,sCAA8B,EAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAE3D,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,+BAAmB,CAAC,CAAA,EAAE;YAC1D,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SAC3C;IACL,CAAC;IAEO,mBAAmB,CAAC,KAAY,EAAE,MAA0B;QAChE,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,kBAAY,EAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,MAAM,CAAC,OAAO,EAAE,gCAAgC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SACtE;aAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,CAAC,OAAO,EAAE,kDAAkD,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACjG;IACL,CAAC;CACJ;AAjBD,kCAiBC"}
1
+ {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../../src/language-server/validator/schema-validator.ts"],"names":[],"mappings":";;AAAA,4CAAuE;AACvE,kDAA+D;AAG/D,mCAAyD;AAEzD;;GAEG;AACH,MAAqB,eAAe;IAChC,QAAQ,CAAC,KAAY,EAAE,MAA0B;;QAC7C,IAAA,sCAA8B,EAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QAE3D,IACI,CAAC,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,+BAAmB,CAAC,CAAA;YACxD,CAAC,CAAA,MAAA,KAAK,CAAC,SAAS,0CAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,8BAAkB,CAAC,CAAA,EACzD;YACE,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SAC3C;IACL,CAAC;IAEO,mBAAmB,CAAC,KAAY,EAAE,MAA0B;QAChE,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,kBAAY,EAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,MAAM,CAAC,OAAO,EAAE,gCAAgC,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;SACtE;aAAM,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,CAAC,OAAO,EAAE,kDAAkD,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACjG;IACL,CAAC;CACJ;AApBD,kCAoBC"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publisher": "zenstack",
4
4
  "displayName": "ZenStack Language Tools",
5
5
  "description": "A toolkit for building secure CRUD apps with Next.js + Typescript",
6
- "version": "1.0.0-alpha.61",
6
+ "version": "1.0.0-alpha.70",
7
7
  "author": {
8
8
  "name": "ZenStack Team"
9
9
  },
@@ -90,9 +90,9 @@
90
90
  "vscode-languageserver-textdocument": "^1.0.7",
91
91
  "vscode-uri": "^3.0.6",
92
92
  "zod": "^3.19.1",
93
- "@zenstackhq/runtime": "1.0.0-alpha.61",
94
- "@zenstackhq/language": "1.0.0-alpha.61",
95
- "@zenstackhq/sdk": "1.0.0-alpha.61"
93
+ "@zenstackhq/language": "1.0.0-alpha.70",
94
+ "@zenstackhq/runtime": "1.0.0-alpha.70",
95
+ "@zenstackhq/sdk": "1.0.0-alpha.70"
96
96
  },
97
97
  "devDependencies": {
98
98
  "@types/async-exit-hook": "^2.0.0",
@@ -120,7 +120,8 @@
120
120
  "ts-node": "^10.9.1",
121
121
  "tsc-alias": "^1.7.0",
122
122
  "typescript": "^4.8.4",
123
- "vsce": "^2.13.0"
123
+ "vsce": "^2.13.0",
124
+ "@zenstackhq/testtools": "1.0.0-alpha.70"
124
125
  },
125
126
  "scripts": {
126
127
  "vscode:publish": "vsce publish --no-dependencies",
@@ -61,8 +61,11 @@ class PrismaSchemaGenerator {
61
61
  fs_1.default.mkdirSync(path_1.default.dirname(outFile), { recursive: true });
62
62
  }
63
63
  yield (0, promises_1.writeFile)(outFile, this.PRELUDE + prisma.toString());
64
- // run 'prisma generate'
65
- yield (0, exec_utils_1.execSync)(`npx prisma generate --schema ${outFile}`);
64
+ const generateClient = options.generateClient !== false;
65
+ if (generateClient) {
66
+ // run 'prisma generate'
67
+ yield (0, exec_utils_1.execSync)(`npx prisma generate --schema ${outFile}`);
68
+ }
66
69
  });
67
70
  }
68
71
  generateDataSource(prisma, dataSource) {
@@ -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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"}
@@ -7,16 +7,33 @@ exports.ensurePackage = exports.installPackage = void 0;
7
7
  const fs_1 = __importDefault(require("fs"));
8
8
  const path_1 = __importDefault(require("path"));
9
9
  const exec_utils_1 = require("./exec-utils");
10
- function getPackageManager(projectPath = '.') {
11
- if (fs_1.default.existsSync(path_1.default.join(projectPath, 'yarn.lock'))) {
12
- return 'yarn';
13
- }
14
- else if (fs_1.default.existsSync(path_1.default.join(projectPath, 'pnpm-lock.yaml'))) {
15
- return 'pnpm';
10
+ function findUp(names, cwd) {
11
+ let dir = cwd;
12
+ // eslint-disable-next-line no-constant-condition
13
+ while (true) {
14
+ const target = names.find((name) => fs_1.default.existsSync(path_1.default.join(dir, name)));
15
+ if (target)
16
+ return target;
17
+ const up = path_1.default.resolve(dir, '..');
18
+ if (up === dir)
19
+ return undefined; // it'll fail anyway
20
+ dir = up;
16
21
  }
17
- else {
22
+ }
23
+ function getPackageManager(projectPath = '.') {
24
+ const lockFile = findUp(['yarn.lock', 'pnpm-lock.yaml', 'package-lock.json'], projectPath);
25
+ if (!lockFile) {
26
+ // default use npm
18
27
  return 'npm';
19
28
  }
29
+ switch (path_1.default.basename(lockFile)) {
30
+ case 'yarn.lock':
31
+ return 'yarn';
32
+ case 'pnpm-lock.yaml':
33
+ return 'pnpm';
34
+ default:
35
+ return 'npm';
36
+ }
20
37
  }
21
38
  function installPackage(pkg, dev, pkgManager = undefined, tag = 'latest', projectPath = '.') {
22
39
  const manager = pkgManager !== null && pkgManager !== void 0 ? pkgManager : getPackageManager(projectPath);
@@ -1 +1 @@
1
- {"version":3,"file":"pkg-utils.js","sourceRoot":"","sources":["../../src/utils/pkg-utils.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,6CAAwC;AAIxC,SAAS,iBAAiB,CAAC,WAAW,GAAG,GAAG;IACxC,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE;QACpD,OAAO,MAAM,CAAC;KACjB;SAAM,IAAI,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC,EAAE;QAChE,OAAO,MAAM,CAAC;KACjB;SAAM;QACH,OAAO,KAAK,CAAC;KAChB;AACL,CAAC;AAED,SAAgB,cAAc,CAC1B,GAAW,EACX,GAAY,EACZ,aAA0C,SAAS,EACnD,GAAG,GAAG,QAAQ,EACd,WAAW,GAAG,GAAG;IAEjB,MAAM,OAAO,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,UAAU,OAAO,EAAE,CAAC,CAAC;IAC3D,QAAQ,OAAO,EAAE;QACb,KAAK,MAAM;YACP,IAAA,qBAAQ,EAAC,eAAe,WAAW,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;YAClG,MAAM;QAEV,KAAK,MAAM;YACP,IAAA,qBAAQ,EAAC,gBAAgB,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YACnF,MAAM;QAEV;YACI,IAAA,qBAAQ,EAAC,yBAAyB,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YAC5F,MAAM;KACb;AACL,CAAC;AAtBD,wCAsBC;AAED,SAAgB,aAAa,CACzB,GAAW,EACX,GAAY,EACZ,aAA0C,SAAS,EACnD,GAAG,GAAG,QAAQ,EACd,WAAW,GAAG,GAAG;IAEjB,IAAI;QACA,OAAO,CAAC,GAAG,CAAC,CAAC;KAChB;IAAC,WAAM;QACJ,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;KAC1D;AACL,CAAC;AAZD,sCAYC"}
1
+ {"version":3,"file":"pkg-utils.js","sourceRoot":"","sources":["../../src/utils/pkg-utils.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,6CAAwC;AAIxC,SAAS,MAAM,CAAC,KAAe,EAAE,GAAW;IACxC,IAAI,GAAG,GAAG,GAAG,CAAC;IACd,iDAAiD;IACjD,OAAO,IAAI,EAAE;QACT,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACzE,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAE1B,MAAM,EAAE,GAAG,cAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACnC,IAAI,EAAE,KAAK,GAAG;YAAE,OAAO,SAAS,CAAC,CAAC,oBAAoB;QACtD,GAAG,GAAG,EAAE,CAAC;KACZ;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAW,GAAG,GAAG;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,WAAW,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,EAAE,WAAW,CAAC,CAAC;IAE3F,IAAI,CAAC,QAAQ,EAAE;QACX,kBAAkB;QAClB,OAAO,KAAK,CAAC;KAChB;IAED,QAAQ,cAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAC7B,KAAK,WAAW;YACZ,OAAO,MAAM,CAAC;QAClB,KAAK,gBAAgB;YACjB,OAAO,MAAM,CAAC;QAClB;YACI,OAAO,KAAK,CAAC;KACpB;AACL,CAAC;AACD,SAAgB,cAAc,CAC1B,GAAW,EACX,GAAY,EACZ,aAA0C,SAAS,EACnD,GAAG,GAAG,QAAQ,EACd,WAAW,GAAG,GAAG;IAEjB,MAAM,OAAO,GAAG,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,UAAU,OAAO,EAAE,CAAC,CAAC;IAC3D,QAAQ,OAAO,EAAE;QACb,KAAK,MAAM;YACP,IAAA,qBAAQ,EAAC,eAAe,WAAW,SAAS,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAC;YAClG,MAAM;QAEV,KAAK,MAAM;YACP,IAAA,qBAAQ,EAAC,gBAAgB,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YACnF,MAAM;QAEV;YACI,IAAA,qBAAQ,EAAC,yBAAyB,WAAW,KAAK,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;YAC5F,MAAM;KACb;AACL,CAAC;AAtBD,wCAsBC;AAED,SAAgB,aAAa,CACzB,GAAW,EACX,GAAY,EACZ,aAA0C,SAAS,EACnD,GAAG,GAAG,QAAQ,EACd,WAAW,GAAG,GAAG;IAEjB,IAAI;QACA,OAAO,CAAC,GAAG,CAAC,CAAC;KAChB;IAAC,WAAM;QACJ,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;KAC1D;AACL,CAAC;AAZD,sCAYC"}