@vendure/create 3.5.2-master-202512180239 → 3.5.2-master-202512190240

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.
@@ -38,8 +38,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.createVendureApp = createVendureApp;
40
40
  const prompts_1 = require("@clack/prompts");
41
+ const shared_constants_1 = require("@vendure/common/lib/shared-constants");
41
42
  const commander_1 = require("commander");
43
+ const crypto_1 = require("crypto");
42
44
  const fs_extra_1 = __importDefault(require("fs-extra"));
45
+ const handlebars_1 = __importDefault(require("handlebars"));
43
46
  const node_child_process_1 = require("node:child_process");
44
47
  const promises_1 = require("node:timers/promises");
45
48
  const open_1 = __importDefault(require("open"));
@@ -69,16 +72,18 @@ commander_1.program
69
72
  .option('--verbose', 'Alias for --log-level verbose', false)
70
73
  .option('--use-npm', 'Uses npm rather than as the default package manager. DEPRECATED: Npm is now the default')
71
74
  .option('--ci', 'Runs without prompts for use in CI scenarios', false)
75
+ .option('--with-storefront', 'Include Next.js storefront (only used with --ci)', false)
72
76
  .parse(process.argv);
73
77
  const options = commander_1.program.opts();
74
- void createVendureApp(projectName, options.useNpm, options.verbose ? 'verbose' : options.logLevel || 'info', options.ci).catch(err => {
78
+ void createVendureApp(projectName, options.useNpm, options.verbose ? 'verbose' : options.logLevel || 'info', options.ci, options.withStorefront).catch(err => {
75
79
  (0, logger_1.log)(err);
76
80
  process.exit(1);
77
81
  });
78
- async function createVendureApp(name, useNpm, logLevel, isCi = false) {
82
+ async function createVendureApp(name, _useNpm, // Deprecated: npm is now the default package manager
83
+ logLevel, isCi = false, withStorefront = false) {
79
84
  var _a, _b;
80
85
  (0, logger_1.setLogLevel)(logLevel);
81
- if (!runPreChecks(name, useNpm)) {
86
+ if (!runPreChecks(name)) {
82
87
  return;
83
88
  }
84
89
  (0, prompts_1.intro)(`Let's create a ${picocolors_1.default.blue(picocolors_1.default.bold('Vendure App'))} ✨ ${picocolors_1.default.dim(`v${packageJson.version}`)}`);
@@ -98,20 +103,17 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
98
103
  }));
99
104
  (0, helpers_1.checkCancel)(mode);
100
105
  const portSpinner = (0, prompts_1.spinner)();
101
- let port = constants_1.SERVER_PORT;
102
- const attemptedPortRange = 20;
106
+ let port;
103
107
  portSpinner.start(`Establishing port...`);
104
- while (await (0, helpers_1.isServerPortInUse)(port)) {
105
- const nextPort = port + 1;
106
- portSpinner.message(picocolors_1.default.yellow(`Port ${port} is in use. Attempting to use ${nextPort}`));
107
- port = nextPort;
108
- if (port > constants_1.SERVER_PORT + attemptedPortRange) {
109
- portSpinner.stop(picocolors_1.default.red('Could not find an available port'));
110
- (0, prompts_1.outro)(`Please ensure there is a port available between ${constants_1.SERVER_PORT} and ${constants_1.SERVER_PORT + attemptedPortRange}`);
111
- process.exit(1);
112
- }
108
+ try {
109
+ port = await (0, helpers_1.findAvailablePort)(constants_1.SERVER_PORT, constants_1.PORT_SCAN_RANGE);
110
+ portSpinner.stop(`Using port ${port}`);
111
+ }
112
+ catch (e) {
113
+ portSpinner.stop(picocolors_1.default.red('Could not find an available port'));
114
+ (0, prompts_1.outro)(e.message);
115
+ process.exit(1);
113
116
  }
114
- portSpinner.stop(`Using port ${port}`);
115
117
  process.env.PORT = port.toString();
116
118
  const root = path_1.default.resolve(name);
117
119
  const appName = path_1.default.basename(root);
@@ -120,83 +122,160 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
120
122
  if (scaffoldExists) {
121
123
  (0, logger_1.log)(picocolors_1.default.yellow('It appears that a new Vendure project scaffold already exists. Re-using the existing files...'), { newline: 'after' });
122
124
  }
123
- const { dbType, configSource, envSource, envDtsSource, indexSource, indexWorkerSource, readmeSource, dockerfileSource, dockerComposeSource, populateProducts, } = mode === 'ci'
124
- ? await (0, gather_user_responses_1.getCiConfiguration)(root, packageManager)
125
+ const { dbType, configSource, envSource, envDtsSource, indexSource, indexWorkerSource, readmeSource, dockerfileSource, dockerComposeSource, tsconfigDashboardSource, populateProducts, includeStorefront, } = mode === 'ci'
126
+ ? await (0, gather_user_responses_1.getCiConfiguration)(root, packageManager, port, withStorefront)
125
127
  : mode === 'manual'
126
- ? await (0, gather_user_responses_1.getManualConfiguration)(root, packageManager)
127
- : await (0, gather_user_responses_1.getQuickStartConfiguration)(root, packageManager);
128
+ ? await (0, gather_user_responses_1.getManualConfiguration)(root, packageManager, port)
129
+ : await (0, gather_user_responses_1.getQuickStartConfiguration)(root, packageManager, port);
130
+ // Determine the server root directory (either root or apps/server for monorepo)
131
+ const serverRoot = includeStorefront ? path_1.default.join(root, 'apps', 'server') : root;
132
+ const storefrontRoot = path_1.default.join(root, 'apps', 'storefront');
133
+ const storefrontPort = constants_1.STOREFRONT_PORT;
128
134
  process.chdir(root);
129
135
  if (packageManager !== 'npm' && !(0, helpers_1.checkThatNpmCanReadCwd)()) {
130
136
  process.exit(1);
131
137
  }
132
- const packageJsonContents = {
133
- name: appName,
134
- version: '0.1.0',
135
- private: true,
136
- scripts: {
137
- 'dev:server': 'ts-node ./src/index.ts',
138
- 'dev:worker': 'ts-node ./src/index-worker.ts',
139
- dev: 'concurrently npm:dev:*',
140
- build: 'tsc',
141
- 'start:server': 'node ./dist/index.js',
142
- 'start:worker': 'node ./dist/index-worker.js',
143
- start: 'concurrently npm:start:*',
144
- },
145
- };
146
138
  const setupSpinner = (0, prompts_1.spinner)();
147
- setupSpinner.start(`Setting up your new Vendure project in ${picocolors_1.default.green(root)}\nThis may take a few minutes...`);
148
- const srcPathScript = (fileName) => path_1.default.join(root, 'src', `${fileName}.ts`);
149
- fs_extra_1.default.writeFileSync(path_1.default.join(root, 'package.json'), JSON.stringify(packageJsonContents, null, 2) + os_1.default.EOL);
150
- const { dependencies, devDependencies } = (0, helpers_1.getDependencies)(dbType, `@${packageJson.version}`);
151
- setupSpinner.stop(`Created ${picocolors_1.default.green('package.json')}`);
152
- const installSpinner = (0, prompts_1.spinner)();
153
- installSpinner.start(`Installing ${dependencies[0]} + ${dependencies.length - 1} more dependencies`);
154
- try {
155
- await (0, helpers_1.installPackages)({ dependencies, logLevel });
139
+ const projectType = includeStorefront ? 'monorepo' : 'project';
140
+ setupSpinner.start(`Setting up your new Vendure ${projectType} in ${picocolors_1.default.green(root)}\nThis may take a few minutes...`);
141
+ const assetPath = (fileName) => path_1.default.join(__dirname, '../assets', fileName);
142
+ const templatePath = (fileName) => path_1.default.join(__dirname, '../assets/monorepo', fileName);
143
+ if (includeStorefront) {
144
+ // Create monorepo structure
145
+ await fs_extra_1.default.ensureDir(path_1.default.join(root, 'apps'));
146
+ await fs_extra_1.default.ensureDir(serverRoot);
147
+ await fs_extra_1.default.ensureDir(path_1.default.join(serverRoot, 'src'));
148
+ // Generate root package.json from template
149
+ const rootPackageTemplate = await fs_extra_1.default.readFile(templatePath('root-package.json.hbs'), 'utf-8');
150
+ const rootPackageContent = handlebars_1.default.compile(rootPackageTemplate)({ name: appName });
151
+ fs_extra_1.default.writeFileSync(path_1.default.join(root, 'package.json'), rootPackageContent + os_1.default.EOL);
152
+ // Generate root README from template
153
+ const rootReadmeTemplate = await fs_extra_1.default.readFile(templatePath('root-readme.hbs'), 'utf-8');
154
+ const rootReadmeContent = handlebars_1.default.compile(rootReadmeTemplate)({
155
+ name: appName,
156
+ serverPort: port,
157
+ storefrontPort,
158
+ superadminIdentifier: shared_constants_1.SUPER_ADMIN_USER_IDENTIFIER,
159
+ superadminPassword: shared_constants_1.SUPER_ADMIN_USER_PASSWORD,
160
+ });
161
+ fs_extra_1.default.writeFileSync(path_1.default.join(root, 'README.md'), rootReadmeContent);
162
+ // Copy root .gitignore
163
+ await fs_extra_1.default.copyFile(templatePath('root-gitignore.template'), path_1.default.join(root, '.gitignore'));
164
+ // Create server package.json
165
+ const serverPackageJsonContents = {
166
+ name: 'server',
167
+ version: constants_1.DEFAULT_PROJECT_VERSION,
168
+ private: true,
169
+ scripts: getServerPackageScripts(),
170
+ };
171
+ fs_extra_1.default.writeFileSync(path_1.default.join(serverRoot, 'package.json'), JSON.stringify(serverPackageJsonContents, null, 2) + os_1.default.EOL);
156
172
  }
157
- catch (e) {
158
- (0, prompts_1.outro)(picocolors_1.default.red(`Failed to inst all dependencies. Please try again.`));
159
- process.exit(1);
173
+ else {
174
+ // Single project structure (original behavior)
175
+ const packageJsonContents = {
176
+ name: appName,
177
+ version: constants_1.DEFAULT_PROJECT_VERSION,
178
+ private: true,
179
+ scripts: getServerPackageScripts(),
180
+ };
181
+ fs_extra_1.default.writeFileSync(path_1.default.join(root, 'package.json'), JSON.stringify(packageJsonContents, null, 2) + os_1.default.EOL);
182
+ fs_extra_1.default.ensureDirSync(path_1.default.join(root, 'src'));
160
183
  }
161
- installSpinner.stop(`Successfully installed ${dependencies.length} dependencies`);
162
- if (devDependencies.length) {
163
- const installDevSpinner = (0, prompts_1.spinner)();
164
- installDevSpinner.start(`Installing ${devDependencies[0]} + ${devDependencies.length - 1} more dev dependencies`);
184
+ setupSpinner.stop(`Created ${picocolors_1.default.green('package.json')}`);
185
+ // Download storefront if needed
186
+ if (includeStorefront) {
187
+ const storefrontSpinner = (0, prompts_1.spinner)();
188
+ storefrontSpinner.start(`Downloading Next.js storefront...`);
165
189
  try {
166
- await (0, helpers_1.installPackages)({ dependencies: devDependencies, isDevDependencies: true, logLevel });
190
+ await (0, helpers_1.downloadAndExtractStorefront)(storefrontRoot);
191
+ // Update storefront package.json name
192
+ const storefrontPackageJsonPath = path_1.default.join(storefrontRoot, 'package.json');
193
+ const storefrontPackageJson = await fs_extra_1.default.readJson(storefrontPackageJsonPath);
194
+ storefrontPackageJson.name = 'storefront';
195
+ await fs_extra_1.default.writeJson(storefrontPackageJsonPath, storefrontPackageJson, { spaces: 2 });
196
+ // Generate storefront .env.local from template
197
+ const storefrontEnvTemplate = await fs_extra_1.default.readFile(templatePath('storefront-env.hbs'), 'utf-8');
198
+ const storefrontEnvContent = handlebars_1.default.compile(storefrontEnvTemplate)({
199
+ serverPort: port,
200
+ storefrontPort,
201
+ name: appName,
202
+ revalidationSecret: (0, crypto_1.randomBytes)(32).toString('base64'),
203
+ });
204
+ fs_extra_1.default.writeFileSync(path_1.default.join(storefrontRoot, '.env.local'), storefrontEnvContent);
205
+ storefrontSpinner.stop(`Downloaded Next.js storefront`);
167
206
  }
168
207
  catch (e) {
169
- (0, prompts_1.outro)(picocolors_1.default.red(`Failed to install dev dependencies. Please try again.`));
208
+ storefrontSpinner.stop(picocolors_1.default.red(`Failed to download storefront`));
209
+ (0, logger_1.log)(e.message, { level: 'verbose' });
210
+ (0, prompts_1.outro)(picocolors_1.default.red(`Failed to download storefront: ${e.message}`));
170
211
  process.exit(1);
171
212
  }
172
- installDevSpinner.stop(`Successfully installed ${devDependencies.length} dev dependencies`);
213
+ }
214
+ // Install dependencies
215
+ const { dependencies, devDependencies } = (0, helpers_1.getDependencies)(dbType, `@${packageJson.version}`);
216
+ // Install server dependencies
217
+ await installDependenciesWithSpinner({
218
+ dependencies,
219
+ logLevel,
220
+ cwd: serverRoot,
221
+ spinnerMessage: `Installing ${dependencies[0]} + ${dependencies.length - 1} more dependencies`,
222
+ successMessage: `Successfully installed ${dependencies.length} dependencies`,
223
+ failureMessage: 'Failed to install dependencies. Please try again.',
224
+ });
225
+ if (devDependencies.length) {
226
+ await installDependenciesWithSpinner({
227
+ dependencies: devDependencies,
228
+ isDevDependencies: true,
229
+ logLevel,
230
+ cwd: serverRoot,
231
+ spinnerMessage: `Installing ${devDependencies[0]} + ${devDependencies.length - 1} more dev dependencies`,
232
+ successMessage: `Successfully installed ${devDependencies.length} dev dependencies`,
233
+ failureMessage: 'Failed to install dev dependencies. Please try again.',
234
+ });
235
+ }
236
+ if (includeStorefront) {
237
+ // Install storefront dependencies
238
+ const storefrontInstalled = await installDependenciesWithSpinner({
239
+ dependencies: [],
240
+ logLevel,
241
+ cwd: storefrontRoot,
242
+ spinnerMessage: 'Installing storefront dependencies...',
243
+ successMessage: 'Installed storefront dependencies',
244
+ failureMessage: 'Failed to install storefront dependencies',
245
+ warnOnFailure: true,
246
+ });
247
+ if (!storefrontInstalled) {
248
+ (0, logger_1.log)('You may need to run npm install in the storefront directory manually.', { level: 'info' });
249
+ }
173
250
  }
174
251
  const scaffoldSpinner = (0, prompts_1.spinner)();
175
252
  scaffoldSpinner.start(`Generating app scaffold`);
176
253
  // We add this pause so that the above output is displayed before the
177
254
  // potentially lengthy file operations begin, which can prevent that
178
255
  // from displaying and thus make the user think that the process has hung.
179
- await (0, promises_1.setTimeout)(500);
180
- fs_extra_1.default.ensureDirSync(path_1.default.join(root, 'src'));
181
- const assetPath = (fileName) => path_1.default.join(__dirname, '../assets', fileName);
256
+ await (0, promises_1.setTimeout)(constants_1.SCAFFOLD_DELAY_MS);
257
+ const srcPathScript = (fileName) => path_1.default.join(serverRoot, 'src', `${fileName}.ts`);
258
+ if (!includeStorefront) {
259
+ fs_extra_1.default.ensureDirSync(path_1.default.join(serverRoot, 'src'));
260
+ }
182
261
  const configFile = srcPathScript('vendure-config');
183
262
  try {
184
263
  await fs_extra_1.default
185
264
  .writeFile(configFile, configSource)
186
- .then(() => fs_extra_1.default.writeFile(path_1.default.join(root, '.env'), envSource))
265
+ .then(() => fs_extra_1.default.writeFile(path_1.default.join(serverRoot, '.env'), envSource))
187
266
  .then(() => fs_extra_1.default.writeFile(srcPathScript('environment.d'), envDtsSource))
188
267
  .then(() => fs_extra_1.default.writeFile(srcPathScript('index'), indexSource))
189
268
  .then(() => fs_extra_1.default.writeFile(srcPathScript('index-worker'), indexWorkerSource))
190
- .then(() => fs_extra_1.default.writeFile(path_1.default.join(root, 'README.md'), readmeSource))
191
- .then(() => fs_extra_1.default.writeFile(path_1.default.join(root, 'Dockerfile'), dockerfileSource))
192
- .then(() => fs_extra_1.default.writeFile(path_1.default.join(root, 'docker-compose.yml'), dockerComposeSource))
193
- .then(() => fs_extra_1.default.ensureDir(path_1.default.join(root, 'src/plugins')))
194
- .then(() => fs_extra_1.default.copyFile(assetPath('gitignore.template'), path_1.default.join(root, '.gitignore')))
195
- .then(() => fs_extra_1.default.copyFile(assetPath('tsconfig.template.json'), path_1.default.join(root, 'tsconfig.json')))
196
- .then(() => fs_extra_1.default.copyFile(assetPath('tsconfig.dashboard.template.json'), path_1.default.join(root, 'tsconfig.dashboard.json')))
197
- .then(() => fs_extra_1.default.copyFile(assetPath('vite.config.template.mts'), path_1.default.join(root, 'vite.config.mts')))
198
- .then(() => createDirectoryStructure(root))
199
- .then(() => copyEmailTemplates(root));
269
+ .then(() => fs_extra_1.default.writeFile(path_1.default.join(serverRoot, 'README.md'), readmeSource))
270
+ .then(() => fs_extra_1.default.writeFile(path_1.default.join(serverRoot, 'Dockerfile'), dockerfileSource))
271
+ .then(() => fs_extra_1.default.writeFile(path_1.default.join(serverRoot, 'docker-compose.yml'), dockerComposeSource))
272
+ .then(() => fs_extra_1.default.ensureDir(path_1.default.join(serverRoot, 'src/plugins')))
273
+ .then(() => fs_extra_1.default.copyFile(assetPath('gitignore.template'), path_1.default.join(serverRoot, '.gitignore')))
274
+ .then(() => fs_extra_1.default.copyFile(assetPath('tsconfig.template.json'), path_1.default.join(serverRoot, 'tsconfig.json')))
275
+ .then(() => fs_extra_1.default.writeFile(path_1.default.join(serverRoot, 'tsconfig.dashboard.json'), tsconfigDashboardSource))
276
+ .then(() => fs_extra_1.default.copyFile(assetPath('vite.config.template.mts'), path_1.default.join(serverRoot, 'vite.config.mts')))
277
+ .then(() => createDirectoryStructure(serverRoot))
278
+ .then(() => copyEmailTemplates(serverRoot));
200
279
  }
201
280
  catch (e) {
202
281
  (0, prompts_1.outro)(picocolors_1.default.red(`Failed to create app scaffold: ${e.message}`));
@@ -205,7 +284,7 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
205
284
  scaffoldSpinner.stop(`Generated app scaffold`);
206
285
  if (mode === 'quick' && dbType === 'postgres') {
207
286
  (0, helpers_1.cleanUpDockerResources)(name);
208
- await (0, helpers_1.startPostgresDatabase)(root);
287
+ await (0, helpers_1.startPostgresDatabase)(serverRoot);
209
288
  }
210
289
  const populateSpinner = (0, prompts_1.spinner)();
211
290
  populateSpinner.start(`Initializing your new Vendure server`);
@@ -216,31 +295,10 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
216
295
  populateProducts
217
296
  ? 'We are populating sample data so that you can start testing right away'
218
297
  : 'We are setting up your Vendure server',
219
- '☕ This can take a minute or two, so grab a coffee',
220
- `✨ We'd love it if you drop us a star on GitHub: https://github.com/vendure-ecommerce/vendure`,
221
- `📖 Check out the Vendure documentation at https://docs.vendure.io`,
222
- `💬 Join our Discord community to chat with other Vendure developers: https://vendure.io/community`,
223
- '💡 In the mean time, here are some tips to get you started',
224
- `Vendure provides dedicated GraphQL APIs for both the Admin and Shop`,
225
- `Almost every aspect of Vendure is customizable via plugins`,
226
- `You can run 'vendure add' from the command line to add new plugins & features`,
227
- `Use the EventBus in your plugins to react to events in the system`,
228
- `Vendure supports multiple languages & currencies out of the box`,
229
- `☕ Did we mention this can take a while?`,
230
- `Our custom fields feature allows you to add any kind of data to your entities`,
231
- `Vendure is built with TypeScript, so you get full type safety`,
232
- `Combined with GraphQL's static schema, your type safety is end-to-end`,
233
- `☕ Almost there now... thanks for your patience!`,
234
- `Collections allow you to group products together`,
235
- `Our AssetServerPlugin allows you to dynamically resize & optimize images`,
236
- `Order flows are fully customizable to suit your business requirements`,
237
- `Role-based permissions allow you to control access to every part of the system`,
238
- `Customers can be grouped for targeted promotions & custom pricing`,
239
- `You can find integrations in the Vendure Hub: https://vendure.io/hub`,
298
+ ...constants_1.TIPS_WHILE_WAITING,
240
299
  ];
241
300
  let tipIndex = 0;
242
301
  let timer;
243
- const tipInterval = 10000;
244
302
  function displayTip() {
245
303
  populateSpinner.message(tips[tipIndex]);
246
304
  tipIndex++;
@@ -248,16 +306,28 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
248
306
  // skip the intro tips if looping
249
307
  tipIndex = 3;
250
308
  }
251
- timer = setTimeout(displayTip, tipInterval);
309
+ timer = setTimeout(displayTip, constants_1.TIP_INTERVAL_MS);
252
310
  }
253
- timer = setTimeout(displayTip, tipInterval);
311
+ timer = setTimeout(displayTip, constants_1.TIP_INTERVAL_MS);
312
+ // Change to serverRoot so that ts-node can correctly resolve modules.
313
+ // In monorepo mode, dependencies are hoisted to the root node_modules,
314
+ // but ts-node needs to be anchored in the server directory for proper
315
+ // module resolution and to find the tsconfig.json.
316
+ process.chdir(serverRoot);
254
317
  // register ts-node so that the config file can be loaded
318
+ // We use transpileOnly to skip type checking during bootstrap, as the
319
+ // complex module resolution with npm workspaces and ESM packages can
320
+ // cause false TypeScript errors. Type checking happens when users run
321
+ // their own build/dev commands.
255
322
  // eslint-disable-next-line @typescript-eslint/no-var-requires
256
- require((0, helpers_1.resolvePackageRootDir)('ts-node', root)).register();
323
+ require((0, helpers_1.resolvePackageRootDir)('ts-node', serverRoot)).register({
324
+ project: path_1.default.join(serverRoot, 'tsconfig.json'),
325
+ transpileOnly: true,
326
+ });
257
327
  let superAdminCredentials;
258
328
  try {
259
- const { populate } = await Promise.resolve(`${path_1.default.join((0, helpers_1.resolvePackageRootDir)('@vendure/core', root), 'cli', 'populate')}`).then(s => __importStar(require(s)));
260
- const { bootstrap, DefaultLogger, LogLevel, JobQueueService } = await Promise.resolve(`${path_1.default.join((0, helpers_1.resolvePackageRootDir)('@vendure/core', root), 'dist', 'index')}`).then(s => __importStar(require(s)));
329
+ const { populate } = await Promise.resolve(`${path_1.default.join((0, helpers_1.resolvePackageRootDir)('@vendure/core', serverRoot), 'cli', 'populate')}`).then(s => __importStar(require(s)));
330
+ const { bootstrap, DefaultLogger, LogLevel, JobQueueService } = await Promise.resolve(`${path_1.default.join((0, helpers_1.resolvePackageRootDir)('@vendure/core', serverRoot), 'dist', 'index')}`).then(s => __importStar(require(s)));
261
331
  const { config } = await Promise.resolve(`${configFile}`).then(s => __importStar(require(s)));
262
332
  const assetsDir = path_1.default.join(__dirname, '../assets');
263
333
  superAdminCredentials = config.authOptions.superadminCredentials;
@@ -269,7 +339,7 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
269
339
  : LogLevel.Info;
270
340
  const bootstrapFn = async () => {
271
341
  var _a;
272
- await (0, helpers_1.checkDbConnection)(config.dbConnectionOptions, root);
342
+ await (0, helpers_1.checkDbConnection)(config.dbConnectionOptions, serverRoot);
273
343
  const _app = await bootstrap(Object.assign(Object.assign({}, config), { apiOptions: Object.assign(Object.assign({}, ((_a = config.apiOptions) !== null && _a !== void 0 ? _a : {})), { port }), dbConnectionOptions: Object.assign(Object.assign({}, config.dbConnectionOptions), { synchronize: true }), logger: new DefaultLogger({ level: vendureLogLevel }), importExportOptions: {
274
344
  importAssetsDir: path_1.default.join(assetsDir, 'images'),
275
345
  } }));
@@ -281,11 +351,11 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
281
351
  if (isCi) {
282
352
  (0, logger_1.log)('[CI] Pausing before close...');
283
353
  }
284
- await (0, promises_1.setTimeout)(isCi ? 30000 : 2000);
354
+ await (0, promises_1.setTimeout)(isCi ? constants_1.CI_PAUSE_BEFORE_CLOSE_MS : constants_1.NORMAL_PAUSE_BEFORE_CLOSE_MS);
285
355
  await app.close();
286
356
  if (isCi) {
287
357
  (0, logger_1.log)('[CI] Pausing after close...');
288
- await (0, promises_1.setTimeout)(10000);
358
+ await (0, promises_1.setTimeout)(constants_1.CI_PAUSE_AFTER_CLOSE_MS);
289
359
  }
290
360
  populateSpinner.stop(`Server successfully initialized${populateProducts ? ' and populated' : ''}`);
291
361
  clearTimeout(timer);
@@ -325,13 +395,20 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
325
395
  }
326
396
  // process.stdin.resume();
327
397
  process.on('SIGINT', function () {
328
- displayOutro(root, name, superAdminCredentials);
398
+ displayOutro({
399
+ root,
400
+ name,
401
+ superAdminCredentials,
402
+ includeStorefront,
403
+ serverPort: port,
404
+ storefrontPort,
405
+ });
329
406
  quickStartProcess === null || quickStartProcess === void 0 ? void 0 : quickStartProcess.kill('SIGINT');
330
407
  process.exit(0);
331
408
  });
332
409
  // Give enough time for the server to get up and running
333
410
  // before opening the window.
334
- await (0, promises_1.setTimeout)(10000);
411
+ await (0, promises_1.setTimeout)(constants_1.AUTO_RUN_DELAY_MS);
335
412
  try {
336
413
  await (0, open_1.default)(dashboardUrl, {
337
414
  newInstance: true,
@@ -350,7 +427,14 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
350
427
  }
351
428
  else {
352
429
  clearTimeout(timer);
353
- displayOutro(root, name, superAdminCredentials);
430
+ displayOutro({
431
+ root,
432
+ name,
433
+ superAdminCredentials,
434
+ includeStorefront,
435
+ serverPort: port,
436
+ storefrontPort,
437
+ });
354
438
  process.exit(0);
355
439
  }
356
440
  }
@@ -360,34 +444,104 @@ async function createVendureApp(name, useNpm, logLevel, isCi = false) {
360
444
  process.exit(1);
361
445
  }
362
446
  }
363
- function displayOutro(root, name, superAdminCredentials) {
447
+ /**
448
+ * Returns the standard npm scripts for the server package.json.
449
+ */
450
+ function getServerPackageScripts() {
451
+ return {
452
+ 'dev:server': 'ts-node ./src/index.ts',
453
+ 'dev:worker': 'ts-node ./src/index-worker.ts',
454
+ dev: 'concurrently npm:dev:*',
455
+ build: 'tsc',
456
+ 'start:server': 'node ./dist/index.js',
457
+ 'start:worker': 'node ./dist/index-worker.js',
458
+ start: 'concurrently npm:start:*',
459
+ };
460
+ }
461
+ /**
462
+ * Installs dependencies with a spinner, handling success/failure messaging.
463
+ * Returns true if installation succeeded, false otherwise.
464
+ */
465
+ async function installDependenciesWithSpinner(installOptions) {
466
+ const { dependencies, isDevDependencies = false, logLevel, cwd, spinnerMessage, successMessage, failureMessage, warnOnFailure = false, } = installOptions;
467
+ const installSpinner = (0, prompts_1.spinner)();
468
+ installSpinner.start(spinnerMessage);
469
+ try {
470
+ await (0, helpers_1.installPackages)({ dependencies, isDevDependencies, logLevel, cwd });
471
+ installSpinner.stop(successMessage);
472
+ return true;
473
+ }
474
+ catch (e) {
475
+ if (warnOnFailure) {
476
+ installSpinner.stop(picocolors_1.default.yellow(`Warning: ${failureMessage}`));
477
+ return false;
478
+ }
479
+ else {
480
+ (0, prompts_1.outro)(picocolors_1.default.red(failureMessage));
481
+ process.exit(1);
482
+ }
483
+ }
484
+ }
485
+ // eslint-disable-next-line @typescript-eslint/no-shadow
486
+ function displayOutro(outroOptions) {
364
487
  var _a, _b;
488
+ const { root, name, superAdminCredentials, includeStorefront, serverPort = constants_1.SERVER_PORT, storefrontPort = constants_1.STOREFRONT_PORT, } = outroOptions;
365
489
  const startCommand = 'npm run dev';
366
- const nextSteps = [
367
- `Your new Vendure server was created!`,
368
- picocolors_1.default.gray(root),
369
- `\n`,
370
- `Next, run:`,
371
- picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`cd ${name}`)),
372
- picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`${startCommand}`)),
373
- `\n`,
374
- `This will start the server in development mode.`,
375
- `\n`,
376
- `To run the Dashboard, in a new terminal navigate to your project directory and run:`,
377
- picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`npx vite`)),
378
- `\n`,
379
- `To access the Dashboard, open your browser and navigate to:`,
380
- picocolors_1.default.green(`http://localhost:3000/dashboard`),
490
+ const identifier = (_a = superAdminCredentials === null || superAdminCredentials === void 0 ? void 0 : superAdminCredentials.identifier) !== null && _a !== void 0 ? _a : shared_constants_1.SUPER_ADMIN_USER_IDENTIFIER;
491
+ const password = (_b = superAdminCredentials === null || superAdminCredentials === void 0 ? void 0 : superAdminCredentials.password) !== null && _b !== void 0 ? _b : shared_constants_1.SUPER_ADMIN_USER_PASSWORD;
492
+ // Common footer for both modes
493
+ const commonFooter = [
381
494
  `\n`,
382
495
  `Use the following credentials to log in:`,
383
- `Username: ${picocolors_1.default.green((_a = superAdminCredentials === null || superAdminCredentials === void 0 ? void 0 : superAdminCredentials.identifier) !== null && _a !== void 0 ? _a : 'superadmin')}`,
384
- `Password: ${picocolors_1.default.green((_b = superAdminCredentials === null || superAdminCredentials === void 0 ? void 0 : superAdminCredentials.password) !== null && _b !== void 0 ? _b : 'superadmin')}`,
496
+ `Username: ${picocolors_1.default.green(identifier)}`,
497
+ `Password: ${picocolors_1.default.green(password)}`,
385
498
  '\n',
386
499
  '➡️ Docs: https://docs.vendure.io',
387
500
  '➡️ Discord community: https://vendure.io/community',
388
501
  '➡️ Star us on GitHub:',
389
502
  ' https://github.com/vendure-ecommerce/vendure',
390
503
  ];
504
+ let nextSteps;
505
+ if (includeStorefront) {
506
+ nextSteps = [
507
+ `Your new Vendure project was created!`,
508
+ picocolors_1.default.gray(root),
509
+ `\n`,
510
+ `This is a monorepo with the following apps:`,
511
+ ` ${picocolors_1.default.cyan('apps/server')} - Vendure backend`,
512
+ ` ${picocolors_1.default.cyan('apps/storefront')} - Next.js frontend`,
513
+ `\n`,
514
+ `Next, run:`,
515
+ picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`cd ${name}`)),
516
+ picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`${startCommand}`)),
517
+ `\n`,
518
+ `This will start both the server and storefront.`,
519
+ `\n`,
520
+ `Access points:`,
521
+ ` Dashboard: ${picocolors_1.default.green(`http://localhost:${serverPort}/dashboard`)}`,
522
+ ` Storefront: ${picocolors_1.default.green(`http://localhost:${storefrontPort}`)}`,
523
+ ...commonFooter,
524
+ ];
525
+ }
526
+ else {
527
+ nextSteps = [
528
+ `Your new Vendure server was created!`,
529
+ picocolors_1.default.gray(root),
530
+ `\n`,
531
+ `Next, run:`,
532
+ picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`cd ${name}`)),
533
+ picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`${startCommand}`)),
534
+ `\n`,
535
+ `This will start the server in development mode.`,
536
+ `\n`,
537
+ `To run the Dashboard, in a new terminal navigate to your project directory and run:`,
538
+ picocolors_1.default.gray('$ ') + picocolors_1.default.blue(picocolors_1.default.bold(`npx vite`)),
539
+ `\n`,
540
+ `To access the Dashboard, open your browser and navigate to:`,
541
+ picocolors_1.default.green(`http://localhost:${serverPort}/dashboard`),
542
+ ...commonFooter,
543
+ ];
544
+ }
391
545
  (0, prompts_1.note)(nextSteps.join('\n'), picocolors_1.default.green('Setup complete!'));
392
546
  (0, prompts_1.outro)(`Happy hacking!`);
393
547
  }
@@ -395,7 +549,7 @@ function displayOutro(root, name, superAdminCredentials) {
395
549
  * Run some initial checks to ensure that it is okay to proceed with creating
396
550
  * a new Vendure project in the given location.
397
551
  */
398
- function runPreChecks(name, useNpm) {
552
+ function runPreChecks(name) {
399
553
  if (typeof name === 'undefined') {
400
554
  (0, logger_1.log)(picocolors_1.default.red(`Please specify the project directory:`));
401
555
  (0, logger_1.log)(` ${picocolors_1.default.cyan(commander_1.program.name())} ${picocolors_1.default.green('<project-directory>')}`, { newline: 'after' });
@@ -1 +1 @@
1
- {"version":3,"file":"create-vendure-app.js","sourceRoot":"","sources":["../src/create-vendure-app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-vendure-app.js","sourceRoot":"","sources":["../src/create-vendure-app.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgGA,4CAwcC;AAxiBD,4CAAqE;AACrE,2EAA8G;AAC9G,yCAAoC;AACpC,mCAAqC;AACrC,wDAA0B;AAC1B,4DAAoC;AACpC,2DAAyD;AACzD,mDAA2D;AAC3D,gDAAwB;AACxB,4CAAoB;AACpB,gDAAwB;AACxB,4DAA4B;AAE5B,2CAaqB;AACrB,mEAIiC;AACjC,uCAcmB;AACnB,qCAA4C;AAG5C,8DAA8D;AAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAC/C,IAAA,0BAAgB,EAAC,iCAAqB,CAAC,CAAC;AAExC,IAAI,WAA+B,CAAC;AAEpC,yDAAyD;AACzD,qDAAqD;AACrD,MAAM,YAAY,GACd,sBAAsB,CAAC;AAC3B,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;AAEnC,mBAAO;KACF,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;KAC5B,SAAS,CAAC,qBAAqB,CAAC;KAChC,KAAK,CAAC,GAAG,oBAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,CAAC;KACrD,MAAM,CAAC,IAAI,CAAC,EAAE;IACX,WAAW,GAAG,IAAI,CAAC;AACvB,CAAC,CAAC;KACD,MAAM,CACH,wBAAwB,EACxB,kDAAkD,EAClD,0BAA0B,EAC1B,MAAM,CACT;KACA,MAAM,CAAC,WAAW,EAAE,+BAA+B,EAAE,KAAK,CAAC;KAC3D,MAAM,CACH,WAAW,EACX,yFAAyF,CAC5F;KACA,MAAM,CAAC,MAAM,EAAE,8CAA8C,EAAE,KAAK,CAAC;KACrE,MAAM,CAAC,mBAAmB,EAAE,kDAAkD,EAAE,KAAK,CAAC;KACtF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAEzB,MAAM,OAAO,GAAG,mBAAO,CAAC,IAAI,EAAE,CAAC;AAC/B,KAAK,gBAAgB,CACjB,WAAW,EACX,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,MAAM,EACxD,OAAO,CAAC,EAAE,EACV,OAAO,CAAC,cAAc,CACzB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IACV,IAAA,YAAG,EAAC,GAAG,CAAC,CAAC;IACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC;AAEI,KAAK,UAAU,gBAAgB,CAClC,IAAwB,EACxB,OAAgB,EAAE,qDAAqD;AACvE,QAAqB,EACrB,OAAgB,KAAK,EACrB,iBAA0B,KAAK;;IAE/B,IAAA,oBAAW,EAAC,QAAQ,CAAC,CAAC;IACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO;IACX,CAAC;IAED,IAAA,eAAK,EACD,kBAAkB,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,oBAAE,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,OAAiB,EAAE,CAAC,EAAE,CACvG,CAAC;IAEF,MAAM,IAAI,GAAG,IAAI;QACb,CAAC,CAAC,IAAI;QACN,CAAC,CAAE,CAAC,MAAM,IAAA,gBAAM,EAAC;YACX,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE;gBACL,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,oCAAoC,EAAE;gBACpF;oBACI,KAAK,EAAE,sBAAsB;oBAC7B,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,4DAA4D;iBACrE;aACJ;YACD,YAAY,EAAE,OAA6B;SAC9C,CAAC,CAAwB,CAAC;IACjC,IAAA,qBAAW,EAAC,IAAI,CAAC,CAAC;IAElB,MAAM,WAAW,GAAG,IAAA,iBAAO,GAAE,CAAC;IAC9B,IAAI,IAAY,CAAC;IACjB,WAAW,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,IAAI,CAAC;QACD,IAAI,GAAG,MAAM,IAAA,2BAAiB,EAAC,uBAAW,EAAE,2BAAe,CAAC,CAAC;QAC7D,WAAW,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,WAAW,CAAC,IAAI,CAAC,oBAAE,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC7D,IAAA,eAAK,EAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAEnC,MAAM,IAAI,GAAG,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,OAAO,GAAG,cAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,cAAc,GAAG,IAAA,+BAAqB,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAEzD,MAAM,cAAc,GAAmB,KAAK,CAAC;IAE7C,IAAI,cAAc,EAAE,CAAC;QACjB,IAAA,YAAG,EACC,oBAAE,CAAC,MAAM,CACL,+FAA+F,CAClG,EACD,EAAE,OAAO,EAAE,OAAO,EAAE,CACvB,CAAC;IACN,CAAC;IACD,MAAM,EACF,MAAM,EACN,YAAY,EACZ,SAAS,EACT,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GACpB,GACG,IAAI,KAAK,IAAI;QACT,CAAC,CAAC,MAAM,IAAA,0CAAkB,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,CAAC;QACtE,CAAC,CAAC,IAAI,KAAK,QAAQ;YACjB,CAAC,CAAC,MAAM,IAAA,8CAAsB,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC;YAC1D,CAAC,CAAC,MAAM,IAAA,kDAA0B,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACzE,gFAAgF;IAChF,MAAM,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChF,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAC7D,MAAM,cAAc,GAAG,2BAAe,CAAC;IAEvC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,cAAc,KAAK,KAAK,IAAI,CAAC,IAAA,gCAAsB,GAAE,EAAE,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,iBAAO,GAAE,CAAC;IAC/B,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,YAAY,CAAC,KAAK,CACd,+BAA+B,WAAW,OAAO,oBAAE,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CACpG,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IACpF,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,EAAE,QAAQ,CAAC,CAAC;IAEhG,IAAI,iBAAiB,EAAE,CAAC;QACpB,4BAA4B;QAC5B,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5C,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC/B,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;QAEjD,2CAA2C;QAC3C,MAAM,mBAAmB,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,OAAO,CAAC,CAAC;QAC9F,MAAM,kBAAkB,GAAG,oBAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACtF,kBAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,kBAAkB,GAAG,YAAE,CAAC,GAAG,CAAC,CAAC;QAE/E,qCAAqC;QACrC,MAAM,kBAAkB,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC,CAAC;QACvF,MAAM,iBAAiB,GAAG,oBAAU,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC7D,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,IAAI;YAChB,cAAc;YACd,oBAAoB,EAAE,8CAA2B;YACjD,kBAAkB,EAAE,4CAAyB;SAChD,CAAC,CAAC;QACH,kBAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,iBAAiB,CAAC,CAAC;QAElE,uBAAuB;QACvB,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,yBAAyB,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;QAE1F,6BAA6B;QAC7B,MAAM,yBAAyB,GAAG;YAC9B,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,mCAAuB;YAChC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,uBAAuB,EAAE;SACrC,CAAC;QACF,kBAAE,CAAC,aAAa,CACZ,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EACrC,IAAI,CAAC,SAAS,CAAC,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,YAAE,CAAC,GAAG,CAC9D,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,+CAA+C;QAC/C,MAAM,mBAAmB,GAAG;YACxB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,mCAAuB;YAChC,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,uBAAuB,EAAE;SACrC,CAAC;QACF,kBAAE,CAAC,aAAa,CACZ,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,YAAE,CAAC,GAAG,CACxD,CAAC;QACF,kBAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,WAAW,oBAAE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAEzD,gCAAgC;IAChC,IAAI,iBAAiB,EAAE,CAAC;QACpB,MAAM,iBAAiB,GAAG,IAAA,iBAAO,GAAE,CAAC;QACpC,iBAAiB,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC7D,IAAI,CAAC;YACD,MAAM,IAAA,sCAA4B,EAAC,cAAc,CAAC,CAAC;YACnD,sCAAsC;YACtC,MAAM,yBAAyB,GAAG,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAC5E,MAAM,qBAAqB,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;YAC3E,qBAAqB,CAAC,IAAI,GAAG,YAAY,CAAC;YAC1C,MAAM,kBAAE,CAAC,SAAS,CAAC,yBAAyB,EAAE,qBAAqB,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;YAEpF,+CAA+C;YAC/C,MAAM,qBAAqB,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC,CAAC;YAC7F,MAAM,oBAAoB,GAAG,oBAAU,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;gBACnE,UAAU,EAAE,IAAI;gBAChB,cAAc;gBACd,IAAI,EAAE,OAAO;gBACb,kBAAkB,EAAE,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;aACzD,CAAC,CAAC;YACH,kBAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,EAAE,oBAAoB,CAAC,CAAC;YAEhF,iBAAiB,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YACd,iBAAiB,CAAC,IAAI,CAAC,oBAAE,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;YAChE,IAAA,YAAG,EAAC,CAAC,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;YACrC,IAAA,eAAK,EAAC,oBAAE,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,OAAiB,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;IAED,uBAAuB;IACvB,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,IAAA,yBAAe,EAAC,MAAM,EAAE,IAAI,WAAW,CAAC,OAAiB,EAAE,CAAC,CAAC;IAEvG,8BAA8B;IAC9B,MAAM,8BAA8B,CAAC;QACjC,YAAY;QACZ,QAAQ;QACR,GAAG,EAAE,UAAU;QACf,cAAc,EAAE,cAAc,YAAY,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,MAAM,GAAG,CAAC,oBAAoB;QAC9F,cAAc,EAAE,0BAA0B,YAAY,CAAC,MAAM,eAAe;QAC5E,cAAc,EAAE,mDAAmD;KACtE,CAAC,CAAC;IAEH,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,8BAA8B,CAAC;YACjC,YAAY,EAAE,eAAe;YAC7B,iBAAiB,EAAE,IAAI;YACvB,QAAQ;YACR,GAAG,EAAE,UAAU;YACf,cAAc,EAAE,cAAc,eAAe,CAAC,CAAC,CAAC,MAAM,eAAe,CAAC,MAAM,GAAG,CAAC,wBAAwB;YACxG,cAAc,EAAE,0BAA0B,eAAe,CAAC,MAAM,mBAAmB;YACnF,cAAc,EAAE,uDAAuD;SAC1E,CAAC,CAAC;IACP,CAAC;IAED,IAAI,iBAAiB,EAAE,CAAC;QACpB,kCAAkC;QAClC,MAAM,mBAAmB,GAAG,MAAM,8BAA8B,CAAC;YAC7D,YAAY,EAAE,EAAE;YAChB,QAAQ;YACR,GAAG,EAAE,cAAc;YACnB,cAAc,EAAE,uCAAuC;YACvD,cAAc,EAAE,mCAAmC;YACnD,cAAc,EAAE,2CAA2C;YAC3D,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACvB,IAAA,YAAG,EAAC,uEAAuE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACpG,CAAC;IACL,CAAC;IAED,MAAM,eAAe,GAAG,IAAA,iBAAO,GAAE,CAAC;IAClC,eAAe,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACjD,qEAAqE;IACrE,oEAAoE;IACpE,0EAA0E;IAC1E,MAAM,IAAA,qBAAK,EAAC,6BAAiB,CAAC,CAAC;IAE/B,MAAM,aAAa,GAAG,CAAC,QAAgB,EAAU,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,QAAQ,KAAK,CAAC,CAAC;IAEnG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrB,kBAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,UAAU,GAAG,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAEnD,IAAI,CAAC;QACD,MAAM,kBAAE;aACH,SAAS,CAAC,UAAU,EAAE,YAAY,CAAC;aACnC,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC;aAClE,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,YAAY,CAAC,CAAC;aACtE,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC;aAC7D,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,iBAAiB,CAAC,CAAC;aAC1E,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,YAAY,CAAC,CAAC;aAC1E,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,gBAAgB,CAAC,CAAC;aAC/E,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,oBAAoB,CAAC,EAAE,mBAAmB,CAAC,CAAC;aAC1F,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;aAC9D,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,oBAAoB,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;aAC7F,IAAI,CAAC,GAAG,EAAE,CACP,kBAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAC3F;aACA,IAAI,CAAC,GAAG,EAAE,CACP,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,yBAAyB,CAAC,EAAE,uBAAuB,CAAC,CAC1F;aACA,IAAI,CAAC,GAAG,EAAE,CACP,kBAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,0BAA0B,CAAC,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAC/F;aACA,IAAI,CAAC,GAAG,EAAE,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;aAChD,IAAI,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAA,eAAK,EAAC,oBAAE,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC,OAAiB,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,eAAe,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAE/C,IAAI,IAAI,KAAK,OAAO,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC5C,IAAA,gCAAsB,EAAC,IAAI,CAAC,CAAC;QAC7B,MAAM,IAAA,+BAAqB,EAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,eAAe,GAAG,IAAA,iBAAO,GAAE,CAAC;IAClC,eAAe,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAE9D,gEAAgE;IAChE,+DAA+D;IAC/D,6BAA6B;IAC7B,MAAM,IAAI,GAAG;QACT,gBAAgB;YACZ,CAAC,CAAC,wEAAwE;YAC1E,CAAC,CAAC,uCAAuC;QAC7C,GAAG,8BAAkB;KACxB,CAAC;IAEF,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,KAAU,CAAC;IAEf,SAAS,UAAU;QACf,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxC,QAAQ,EAAE,CAAC;QACX,IAAI,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,iCAAiC;YACjC,QAAQ,GAAG,CAAC,CAAC;QACjB,CAAC;QACD,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,2BAAe,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,GAAG,UAAU,CAAC,UAAU,EAAE,2BAAe,CAAC,CAAC;IAEhD,sEAAsE;IACtE,uEAAuE;IACvE,sEAAsE;IACtE,mDAAmD;IACnD,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAE1B,yDAAyD;IACzD,sEAAsE;IACtE,qEAAqE;IACrE,sEAAsE;IACtE,gCAAgC;IAChC,8DAA8D;IAC9D,OAAO,CAAC,IAAA,+BAAqB,EAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC3D,OAAO,EAAE,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC;QAC/C,aAAa,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,IAAI,qBAA2E,CAAC;IAChF,IAAI,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,yBACjB,cAAI,CAAC,IAAI,CAAC,IAAA,+BAAqB,EAAC,eAAe,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,uCACnF,CAAC;QACF,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,yBAC5D,cAAI,CAAC,IAAI,CAAC,IAAA,+BAAqB,EAAC,eAAe,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,uCACjF,CAAC;QACF,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAa,UAAU,uCAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACpD,qBAAqB,GAAG,MAAM,CAAC,WAAW,CAAC,qBAAqB,CAAC;QACjE,MAAM,eAAe,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;QAClE,MAAM,eAAe,GACjB,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,QAAQ;YACxC,CAAC,CAAC,QAAQ,CAAC,KAAK;YAChB,CAAC,CAAC,QAAQ,KAAK,SAAS;gBACtB,CAAC,CAAC,QAAQ,CAAC,OAAO;gBAClB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QAE1B,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;;YAC3B,MAAM,IAAA,2BAAiB,EAAC,MAAM,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YAChE,MAAM,IAAI,GAAG,MAAM,SAAS,iCACrB,MAAM,KACT,UAAU,kCACH,CAAC,MAAA,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC,KAC5B,IAAI,KAER,mBAAmB,kCACZ,MAAM,CAAC,mBAAmB,KAC7B,WAAW,EAAE,IAAI,KAErB,MAAM,EAAE,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,EACrD,mBAAmB,EAAE;oBACjB,eAAe,EAAE,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC;iBAClD,IACH,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC;QAEF,MAAM,GAAG,GAAG,MAAM,QAAQ,CACtB,WAAW,EACX,eAAe,EACf,gBAAgB,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CACtE,CAAC;QAEF,yDAAyD;QACzD,IAAI,IAAI,EAAE,CAAC;YACP,IAAA,YAAG,EAAC,8BAA8B,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,IAAA,qBAAK,EAAC,IAAI,CAAC,CAAC,CAAC,oCAAwB,CAAC,CAAC,CAAC,wCAA4B,CAAC,CAAC;QAC5E,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;QAClB,IAAI,IAAI,EAAE,CAAC;YACP,IAAA,YAAG,EAAC,6BAA6B,CAAC,CAAC;YACnC,MAAM,IAAA,qBAAK,EAAC,mCAAuB,CAAC,CAAC;QACzC,CAAC;QACD,eAAe,CAAC,IAAI,CAAC,kCAAkC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnG,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB;;;;;;;;WAQG;QACH,MAAM,aAAa,GAAG,KAAK,CAAC;QAC5B,IAAI,IAAI,KAAK,OAAO,IAAI,aAAa,EAAE,CAAC;YACpC,iEAAiE;YACjE,qCAAqC;YACrC,IAAI,CAAC;gBACD,MAAM,YAAY,GAAG,oBAAoB,IAAI,YAAY,CAAC;gBAC1D,MAAM,sBAAsB,GAAG;oBAC3B,2DAA2D;oBAC3D,aAAa,oBAAE,CAAC,KAAK,CAAC,MAAA,MAAM,CAAC,WAAW,CAAC,qBAAqB,0CAAE,UAAU,CAAC,EAAE;oBAC7E,aAAa,oBAAE,CAAC,KAAK,CAAC,MAAA,MAAM,CAAC,WAAW,CAAC,qBAAqB,0CAAE,QAAQ,CAAC,EAAE;oBAC3E,sCAAsC,oBAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;oBAC9D,EAAE;iBACL,CAAC;gBACF,IAAA,cAAI,EAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBAExC,MAAM,UAAU,GAAG,YAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;gBACjE,IAAI,iBAA2C,CAAC;gBAChD,IAAI,CAAC;oBACD,iBAAiB,GAAG,IAAA,0BAAK,EAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;wBAClD,GAAG,EAAE,IAAI;wBACT,KAAK,EAAE,SAAS;qBACnB,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACd,WAAW;gBACf,CAAC;gBAED,0BAA0B;gBAC1B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE;oBACjB,YAAY,CAAC;wBACT,IAAI;wBACJ,IAAI;wBACJ,qBAAqB;wBACrB,iBAAiB;wBACjB,UAAU,EAAE,IAAI;wBAChB,cAAc;qBACjB,CAAC,CAAC;oBACH,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;gBAEH,wDAAwD;gBACxD,6BAA6B;gBAC7B,MAAM,IAAA,qBAAK,EAAC,6BAAiB,CAAC,CAAC;gBAC/B,IAAI,CAAC;oBACD,MAAM,IAAA,cAAI,EAAC,YAAY,EAAE;wBACrB,WAAW,EAAE,IAAI;qBACpB,CAAC,CAAC;gBACP,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACd,WAAW;gBACf,CAAC;YACL,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBACd,IAAA,YAAG,EAAC,oBAAE,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,OAAiB,EAAE,CAAC,EAAE;oBAC9D,OAAO,EAAE,OAAO;oBAChB,KAAK,EAAE,SAAS;iBACnB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,YAAY,CAAC;gBACT,IAAI;gBACJ,IAAI;gBACJ,qBAAqB;gBACrB,iBAAiB;gBACjB,UAAU,EAAE,IAAI;gBAChB,cAAc;aACjB,CAAC,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAA,YAAG,EAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClB,IAAA,eAAK,EAAC,oBAAE,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB;IAC5B,OAAO;QACH,YAAY,EAAE,wBAAwB;QACtC,YAAY,EAAE,+BAA+B;QAC7C,GAAG,EAAE,wBAAwB;QAC7B,KAAK,EAAE,KAAK;QACZ,cAAc,EAAE,sBAAsB;QACtC,cAAc,EAAE,6BAA6B;QAC7C,KAAK,EAAE,0BAA0B;KACpC,CAAC;AACN,CAAC;AAaD;;;GAGG;AACH,KAAK,UAAU,8BAA8B,CAAC,cAA0C;IACpF,MAAM,EACF,YAAY,EACZ,iBAAiB,GAAG,KAAK,EACzB,QAAQ,EACR,GAAG,EACH,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,GAAG,KAAK,GACxB,GAAG,cAAc,CAAC;IAEnB,MAAM,cAAc,GAAG,IAAA,iBAAO,GAAE,CAAC;IACjC,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAErC,IAAI,CAAC;QACD,MAAM,IAAA,yBAAe,EAAC,EAAE,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1E,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,IAAI,aAAa,EAAE,CAAC;YAChB,cAAc,CAAC,IAAI,CAAC,oBAAE,CAAC,MAAM,CAAC,YAAY,cAAc,EAAE,CAAC,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;QACjB,CAAC;aAAM,CAAC;YACJ,IAAA,eAAK,EAAC,oBAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;AACL,CAAC;AAWD,wDAAwD;AACxD,SAAS,YAAY,CAAC,YAA0B;;IAC5C,MAAM,EACF,IAAI,EACJ,IAAI,EACJ,qBAAqB,EACrB,iBAAiB,EACjB,UAAU,GAAG,uBAAW,EACxB,cAAc,GAAG,2BAAe,GACnC,GAAG,YAAY,CAAC;IACjB,MAAM,YAAY,GAAG,aAAa,CAAC;IACnC,MAAM,UAAU,GAAG,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,UAAU,mCAAI,8CAA2B,CAAC;IACpF,MAAM,QAAQ,GAAG,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,QAAQ,mCAAI,4CAAyB,CAAC;IAE9E,+BAA+B;IAC/B,MAAM,YAAY,GAAG;QACjB,IAAI;QACJ,0CAA0C;QAC1C,aAAa,oBAAE,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;QACnC,aAAa,oBAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;QACjC,IAAI;QACJ,kCAAkC;QAClC,oDAAoD;QACpD,uBAAuB;QACvB,iDAAiD;KACpD,CAAC;IAEF,IAAI,SAAmB,CAAC;IAExB,IAAI,iBAAiB,EAAE,CAAC;QACpB,SAAS,GAAG;YACR,uCAAuC;YACvC,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,6CAA6C;YAC7C,KAAK,oBAAE,CAAC,IAAI,CAAC,aAAa,CAAC,wBAAwB;YACnD,KAAK,oBAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,qBAAqB;YACpD,IAAI;YACJ,YAAY;YACZ,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAC9C,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC,CAAC;YACnD,IAAI;YACJ,iDAAiD;YACjD,IAAI;YACJ,gBAAgB;YAChB,iBAAiB,oBAAE,CAAC,KAAK,CAAC,oBAAoB,UAAU,YAAY,CAAC,EAAE;YACvE,iBAAiB,oBAAE,CAAC,KAAK,CAAC,oBAAoB,cAAc,EAAE,CAAC,EAAE;YACjE,GAAG,YAAY;SAClB,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,SAAS,GAAG;YACR,sCAAsC;YACtC,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC;YACb,IAAI;YACJ,YAAY;YACZ,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;YAC9C,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,GAAG,YAAY,EAAE,CAAC,CAAC;YACnD,IAAI;YACJ,iDAAiD;YACjD,IAAI;YACJ,qFAAqF;YACrF,oBAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAE,CAAC,IAAI,CAAC,oBAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI;YACJ,6DAA6D;YAC7D,oBAAE,CAAC,KAAK,CAAC,oBAAoB,UAAU,YAAY,CAAC;YACpD,GAAG,YAAY;SAClB,CAAC;IACN,CAAC;IAED,IAAA,cAAI,EAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,oBAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACxD,IAAA,eAAK,EAAC,gBAAgB,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,IAAwB;IAC1C,IAAI,OAAO,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,IAAA,YAAG,EAAC,oBAAE,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACrD,IAAA,YAAG,EAAC,KAAK,oBAAE,CAAC,IAAI,CAAC,mBAAO,CAAC,IAAI,EAAE,CAAC,IAAI,oBAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7F,IAAA,YAAG,EAAC,cAAc,CAAC,CAAC;QACpB,IAAA,YAAG,EAAC,KAAK,oBAAE,CAAC,IAAI,CAAC,mBAAO,CAAC,IAAI,EAAE,CAAC,IAAI,oBAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,IAAI,GAAG,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC;QACD,kBAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,CAAM,EAAE,CAAC;QACd,IAAA,YAAG,EAAC,oBAAE,CAAC,GAAG,CAAC,sCAAsC,IAAI,KAAK,CAAC,CAAC,OAAiB,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,IAAI,CAAC,IAAA,iCAAuB,EAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,wBAAwB,CAAC,IAAY;IAChD,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC;IACtE,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,kBAAkB,CAAC,IAAY;IAC1C,MAAM,mBAAmB,GAAG,IAAA,+BAAqB,EAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;IACjF,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC;IAChE,IAAI,CAAC;QACD,MAAM,kBAAE,CAAC,IAAI,CAAC,WAAW,EAAE,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;IAChF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,IAAA,YAAG,EAAC,oBAAE,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC/C,IAAA,YAAG,EAAC,GAAG,CAAC,CAAC;QACT,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC"}