primitive-admin 1.0.37 → 1.0.39

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.
@@ -1,9 +1,10 @@
1
1
  import { confirm, input, select } from "@inquirer/prompts";
2
- import { existsSync } from "fs";
2
+ import { existsSync, readFileSync } from "fs";
3
3
  import { basename, resolve } from "path";
4
4
  import { ApiClient } from "../lib/api-client.js";
5
5
  import { browserLogin } from "../lib/auth-flow.js";
6
6
  import { loadCredentials, setCurrentApp } from "../lib/config.js";
7
+ import { INIT_CONFIG_FILENAME, loadInitConfig, parseInitConfigToml, validateInitConfig, } from "../lib/init-config.js";
7
8
  import { divider, error, info, keyValue, success, warn, } from "../lib/output.js";
8
9
  import { downloadAndExtractTemplate, gitInitialCommit, gitInitRepo, installPnpmGlobally, installPrimitiveCli, isDirectoryEmpty, isPnpmInstalled, isPortFree, isPrimitiveCliInstalled, runPnpmInstall, updateEnvFile, updateEnvPort, updateViteConfig, } from "../lib/template.js";
9
10
  const DEFAULT_SERVER_URL = process.env.PRIMITIVE_SERVER_URL || "https://primitiveapi.com";
@@ -21,6 +22,7 @@ function validateServerUrl(url) {
21
22
  /**
22
23
  * Prompts for login when credentials are missing or the server has changed.
23
24
  * Returns updated credentials on success, or exits/warns on failure.
25
+ * In non-interactive mode, auto-proceeds with login (no confirmation prompt).
24
26
  */
25
27
  async function ensureAuthenticated(credentials, serverUrl, serverChanged, context) {
26
28
  if (credentials && !serverChanged)
@@ -31,10 +33,18 @@ async function ensureAuthenticated(credentials, serverUrl, serverChanged, contex
31
33
  else {
32
34
  info(`You need to log in to ${context.reason}.`);
33
35
  }
34
- const shouldLogin = await confirm({
35
- message: "Log in now?",
36
- default: true,
37
- });
36
+ let shouldLogin;
37
+ if (context.nonInteractive) {
38
+ // In non-interactive mode, auto-proceed with login
39
+ shouldLogin = true;
40
+ info("Attempting automatic login...");
41
+ }
42
+ else {
43
+ shouldLogin = await confirm({
44
+ message: "Log in now?",
45
+ default: true,
46
+ });
47
+ }
38
48
  if (!shouldLogin) {
39
49
  if (!context.allowSkip) {
40
50
  error(`Cannot ${context.reason} without authentication. Use --use-existing-app-id to skip app creation.`);
@@ -55,6 +65,47 @@ async function ensureAuthenticated(credentials, serverUrl, serverChanged, contex
55
65
  success(`Logged in as ${result.credentials.email}`);
56
66
  return result.credentials;
57
67
  }
68
+ /**
69
+ * Loads the init config from --config flag or auto-discovers it in CWD.
70
+ * Returns null if no config file is found/specified.
71
+ * Exits with error if config file is specified but invalid.
72
+ */
73
+ function loadInitConfigFromOptions(options) {
74
+ let config = null;
75
+ if (options.config) {
76
+ // Explicit config path
77
+ const configPath = resolve(process.cwd(), options.config);
78
+ if (!existsSync(configPath)) {
79
+ error(`Config file not found: ${configPath}`);
80
+ process.exit(1);
81
+ }
82
+ try {
83
+ const content = readFileSync(configPath, "utf-8");
84
+ config = parseInitConfigToml(content);
85
+ }
86
+ catch (err) {
87
+ error(`Failed to parse config file: ${err.message}`);
88
+ process.exit(1);
89
+ }
90
+ }
91
+ else {
92
+ // Auto-discover in CWD
93
+ config = loadInitConfig(process.cwd());
94
+ }
95
+ if (!config)
96
+ return null;
97
+ // Validate
98
+ info(`Using config file for non-interactive init`);
99
+ const validation = validateInitConfig(config);
100
+ if (!validation.valid) {
101
+ error("Invalid config file:");
102
+ for (const err of validation.errors) {
103
+ error(` - ${err}`);
104
+ }
105
+ process.exit(1);
106
+ }
107
+ return config;
108
+ }
58
109
  export function registerInitCommand(program) {
59
110
  program
60
111
  .command("init")
@@ -63,12 +114,30 @@ export function registerInitCommand(program) {
63
114
  .option("--use-existing-app-id <id>", "Use an existing app ID instead of creating a new one")
64
115
  .option("-s, --server <url>", "Server URL (default: current CLI server or https://primitiveapi.com)")
65
116
  .option("--skip-install", "Skip running pnpm install")
117
+ .option("--config <path>", `Path to a ${INIT_CONFIG_FILENAME} config file for non-interactive init`)
66
118
  .addHelpText("after", `
67
119
  Examples:
68
120
  $ primitive init my-app # Create in ./my-app, prompt for app name
69
121
  $ primitive init # Interactive: prompt for directory and app name
70
122
  $ primitive init . --use-existing-app-id 01HXY... # Use existing app in current dir
71
123
  $ primitive init my-app --skip-install # Skip dependency install
124
+ $ primitive init --config .primitive-init.toml # Non-interactive from config file
125
+
126
+ Non-interactive mode:
127
+ Create a ${INIT_CONFIG_FILENAME} file (or pass --config <path>) to skip all prompts.
128
+ The config file uses TOML format:
129
+
130
+ action = "create" # "create" or "use-existing"
131
+ app_name = "My App" # Required for action = "create"
132
+ app_id = "01HXY..." # Required for action = "use-existing"
133
+ dir = "my-app" # Project directory (optional)
134
+ access_mode = "invite-only" # "public", "domain", or "invite-only" (optional)
135
+ dev_port = 5173 # Dev server port (optional)
136
+ skip_install = false # Skip pnpm install (optional)
137
+ server = "https://..." # Custom server URL (optional)
138
+ invite_emails = ["a@b.com"] # Emails to invite (optional, for invite-only)
139
+ allowed_domains = ["b.com"] # Allowed domains (optional, for domain mode)
140
+ overwrite = false # Overwrite non-empty target directory (optional)
72
141
 
73
142
  This command will:
74
143
  1. Download the Primitive app template
@@ -79,8 +148,25 @@ This command will:
79
148
  .action(handleInit);
80
149
  }
81
150
  async function handleInit(projectDirArg, options) {
151
+ // Step 0: Check for non-interactive config file
152
+ const initConfig = loadInitConfigFromOptions(options);
153
+ if (initConfig) {
154
+ // Merge config values into options so the rest of the flow uses them
155
+ if (initConfig.action === "use-existing" && initConfig.app_id) {
156
+ options.useExistingAppId = initConfig.app_id;
157
+ }
158
+ if (initConfig.skip_install) {
159
+ options.skipInstall = true;
160
+ }
161
+ if (initConfig.server) {
162
+ options.server = initConfig.server;
163
+ }
164
+ }
82
165
  // Step 1: Determine project directory
83
166
  let projectDir = projectDirArg;
167
+ if (!projectDir && initConfig?.dir) {
168
+ projectDir = initConfig.dir;
169
+ }
84
170
  if (!projectDir) {
85
171
  projectDir = await input({
86
172
  message: "Project name (a new directory will be created):",
@@ -97,14 +183,25 @@ async function handleInit(projectDirArg, options) {
97
183
  const defaultAppName = projectDir === "." ? basename(targetDir) : basename(projectDir);
98
184
  // Step 2: Check if directory exists and is non-empty
99
185
  if (existsSync(targetDir) && !isDirectoryEmpty(targetDir)) {
100
- warn(`Directory "${projectDir}" already exists and is not empty.`);
101
- const overwrite = await confirm({
102
- message: "Do you want to overwrite the existing contents?",
103
- default: false,
104
- });
105
- if (!overwrite) {
106
- error("Aborted. Please choose a different project name.");
107
- process.exit(1);
186
+ if (initConfig) {
187
+ // Non-interactive: require explicit overwrite opt-in
188
+ if (!initConfig.overwrite) {
189
+ error(`Directory "${projectDir}" already exists and is not empty.`);
190
+ error('Set overwrite = true in your config file to allow overwriting.');
191
+ process.exit(1);
192
+ }
193
+ warn(`Directory "${projectDir}" already exists and is not empty. Overwriting (overwrite = true in config).`);
194
+ }
195
+ else {
196
+ warn(`Directory "${projectDir}" already exists and is not empty.`);
197
+ const overwrite = await confirm({
198
+ message: "Do you want to overwrite the existing contents?",
199
+ default: false,
200
+ });
201
+ if (!overwrite) {
202
+ error("Aborted. Please choose a different project name.");
203
+ process.exit(1);
204
+ }
108
205
  }
109
206
  }
110
207
  // Step 2.5: Determine target server
@@ -127,7 +224,7 @@ async function handleInit(projectDirArg, options) {
127
224
  else {
128
225
  const existingCredentials = loadCredentials();
129
226
  const currentServer = existingCredentials?.serverUrl;
130
- if (currentServer && currentServer !== DEFAULT_SERVER_URL) {
227
+ if (currentServer && currentServer !== DEFAULT_SERVER_URL && !initConfig) {
131
228
  console.log();
132
229
  const serverChoice = await select({
133
230
  message: `The Primitive CLI is currently using ${currentServer}.\nWhere do you want to create this app?`,
@@ -194,6 +291,7 @@ async function handleInit(projectDirArg, options) {
194
291
  reason: "verify the app",
195
292
  targetDir,
196
293
  allowSkip: true,
294
+ nonInteractive: !!initConfig,
197
295
  });
198
296
  if (credentials) {
199
297
  try {
@@ -213,12 +311,19 @@ async function handleInit(projectDirArg, options) {
213
311
  reason: "create an app",
214
312
  targetDir,
215
313
  allowSkip: false,
314
+ nonInteractive: !!initConfig,
216
315
  });
217
- // Prompt for app name
218
- appName = await input({
219
- message: "What would you like to name your app?",
220
- default: defaultAppName,
221
- });
316
+ // Determine app name
317
+ if (initConfig?.app_name) {
318
+ appName = initConfig.app_name;
319
+ info(`App name: ${appName} (from config)`);
320
+ }
321
+ else {
322
+ appName = await input({
323
+ message: "What would you like to name your app?",
324
+ default: defaultAppName,
325
+ });
326
+ }
222
327
  // Create app
223
328
  info("Creating app on Primitive server...");
224
329
  try {
@@ -243,47 +348,61 @@ async function handleInit(projectDirArg, options) {
243
348
  process.exit(1);
244
349
  }
245
350
  // Configure app access mode
246
- console.log();
247
- info("Let's configure who can access your app.");
248
- info("(You can change this later with 'primitive apps update')");
249
- const accessMode = await select({
250
- message: "Who should be able to sign up for your app?",
251
- choices: [
252
- {
253
- value: "public",
254
- name: "Anyone (public)",
255
- description: "Anyone can create an account",
256
- },
257
- {
258
- value: "domain",
259
- name: "Domain restricted",
260
- description: "Only users with email addresses from specific domains",
261
- },
262
- {
263
- value: "invite-only",
264
- name: "Invite only",
265
- description: "Only users you explicitly invite can sign up",
266
- },
267
- ],
268
- default: "invite-only",
269
- });
351
+ let accessMode;
352
+ if (initConfig?.access_mode) {
353
+ accessMode = initConfig.access_mode;
354
+ info(`Access mode: ${accessMode} (from config)`);
355
+ }
356
+ else {
357
+ console.log();
358
+ info("Let's configure who can access your app.");
359
+ info("(You can change this later with 'primitive apps update')");
360
+ accessMode = await select({
361
+ message: "Who should be able to sign up for your app?",
362
+ choices: [
363
+ {
364
+ value: "public",
365
+ name: "Anyone (public)",
366
+ description: "Anyone can create an account",
367
+ },
368
+ {
369
+ value: "domain",
370
+ name: "Domain restricted",
371
+ description: "Only users with email addresses from specific domains",
372
+ },
373
+ {
374
+ value: "invite-only",
375
+ name: "Invite only",
376
+ description: "Only users you explicitly invite can sign up",
377
+ },
378
+ ],
379
+ default: "invite-only",
380
+ });
381
+ }
270
382
  const client = new ApiClient();
271
383
  const settingsPayload = {
272
384
  mode: accessMode,
273
385
  };
274
386
  if (accessMode === "domain") {
275
- const domainsInput = await input({
276
- message: "Enter allowed email domain(s) (comma-separated, e.g., 'acme.com, example.org'):",
277
- validate: (value) => {
278
- if (!value.trim())
279
- return "Please enter at least one domain";
280
- return true;
281
- },
282
- });
283
- const allowedDomains = domainsInput
284
- .split(",")
285
- .map((d) => d.trim().toLowerCase())
286
- .filter((d) => d.length > 0);
387
+ let allowedDomains;
388
+ if (initConfig?.allowed_domains && initConfig.allowed_domains.length > 0) {
389
+ allowedDomains = initConfig.allowed_domains;
390
+ info(`Allowed domains: ${allowedDomains.join(", ")} (from config)`);
391
+ }
392
+ else {
393
+ const domainsInput = await input({
394
+ message: "Enter allowed email domain(s) (comma-separated, e.g., 'acme.com, example.org'):",
395
+ validate: (value) => {
396
+ if (!value.trim())
397
+ return "Please enter at least one domain";
398
+ return true;
399
+ },
400
+ });
401
+ allowedDomains = domainsInput
402
+ .split(",")
403
+ .map((d) => d.trim().toLowerCase())
404
+ .filter((d) => d.length > 0);
405
+ }
287
406
  settingsPayload.allowedDomains = allowedDomains;
288
407
  }
289
408
  // Update app settings with the chosen mode
@@ -309,32 +428,42 @@ async function handleInit(projectDirArg, options) {
309
428
  warn(`Could not add your email to the invite list: ${err.message}`);
310
429
  }
311
430
  }
312
- const inviteNow = await confirm({
313
- message: "Would you like to add initial users who can sign up? (no emails will be sent)",
314
- default: false,
315
- });
316
- if (inviteNow) {
317
- const emailsInput = await input({
318
- message: "Enter email address(es) to allow (comma-separated):",
319
- validate: (value) => {
320
- if (!value.trim())
321
- return "Please enter at least one email";
322
- const emails = value.split(",").map((e) => e.trim());
323
- for (const email of emails) {
324
- if (!email.includes("@")) {
325
- return `Invalid email: ${email}`;
326
- }
327
- }
328
- return true;
329
- },
431
+ // Determine emails to invite
432
+ let emailsToInvite = [];
433
+ if (initConfig?.invite_emails && initConfig.invite_emails.length > 0) {
434
+ emailsToInvite = initConfig.invite_emails;
435
+ info(`Inviting users from config: ${emailsToInvite.join(", ")}`);
436
+ }
437
+ else if (!initConfig) {
438
+ const inviteNow = await confirm({
439
+ message: "Would you like to add initial users who can sign up? (no emails will be sent)",
440
+ default: false,
330
441
  });
331
- const emails = emailsInput
332
- .split(",")
333
- .map((e) => e.trim())
334
- .filter((e) => e.length > 0);
442
+ if (inviteNow) {
443
+ const emailsInput = await input({
444
+ message: "Enter email address(es) to allow (comma-separated):",
445
+ validate: (value) => {
446
+ if (!value.trim())
447
+ return "Please enter at least one email";
448
+ const emails = value.split(",").map((e) => e.trim());
449
+ for (const email of emails) {
450
+ if (!email.includes("@")) {
451
+ return `Invalid email: ${email}`;
452
+ }
453
+ }
454
+ return true;
455
+ },
456
+ });
457
+ emailsToInvite = emailsInput
458
+ .split(",")
459
+ .map((e) => e.trim())
460
+ .filter((e) => e.length > 0);
461
+ }
462
+ }
463
+ if (emailsToInvite.length > 0) {
335
464
  info("Adding invited users...");
336
465
  let inviteCount = 0;
337
- for (const email of emails) {
466
+ for (const email of emailsToInvite) {
338
467
  try {
339
468
  await client.createInvitation(appId, {
340
469
  email,
@@ -383,31 +512,42 @@ async function handleInit(projectDirArg, options) {
383
512
  }
384
513
  // Step 6: Confirm the dev port to use. Default to 5173; warn about taken ports.
385
514
  try {
386
- console.log();
387
515
  const defaultPort = 5173;
388
516
  const defaultOrigin = `http://localhost:${defaultPort}`;
389
- // Scan up to 10 ports starting from 5173 to surface what's already in use
390
- const takenPorts = [];
391
- for (let p = defaultPort; p < defaultPort + 10; p++) {
392
- if (!(await isPortFree(p)))
393
- takenPorts.push(p);
394
- else
395
- break;
396
- }
397
- if (takenPorts.length > 0) {
398
- warn(`Port${takenPorts.length > 1 ? "s" : ""} ${takenPorts.join(", ")} ${takenPorts.length > 1 ? "are" : "is"} already in use.`);
399
- }
400
- const portInput = await input({
401
- message: "Dev server port for this project:",
402
- default: String(defaultPort),
403
- validate: (val) => {
404
- const n = parseInt(val, 10);
405
- if (isNaN(n) || n < 1 || n > 65535)
406
- return "Enter a valid port number.";
407
- return true;
408
- },
409
- });
410
- const chosenPort = parseInt(portInput, 10);
517
+ let chosenPort;
518
+ if (initConfig?.dev_port) {
519
+ chosenPort = initConfig.dev_port;
520
+ info(`Dev port: ${chosenPort} (from config)`);
521
+ }
522
+ else if (initConfig) {
523
+ // Non-interactive mode without explicit port — use default
524
+ chosenPort = defaultPort;
525
+ }
526
+ else {
527
+ console.log();
528
+ // Scan up to 10 ports starting from 5173 to surface what's already in use
529
+ const takenPorts = [];
530
+ for (let p = defaultPort; p < defaultPort + 10; p++) {
531
+ if (!(await isPortFree(p)))
532
+ takenPorts.push(p);
533
+ else
534
+ break;
535
+ }
536
+ if (takenPorts.length > 0) {
537
+ warn(`Port${takenPorts.length > 1 ? "s" : ""} ${takenPorts.join(", ")} ${takenPorts.length > 1 ? "are" : "is"} already in use.`);
538
+ }
539
+ const portInput = await input({
540
+ message: "Dev server port for this project:",
541
+ default: String(defaultPort),
542
+ validate: (val) => {
543
+ const n = parseInt(val, 10);
544
+ if (isNaN(n) || n < 1 || n > 65535)
545
+ return "Enter a valid port number.";
546
+ return true;
547
+ },
548
+ });
549
+ chosenPort = parseInt(portInput, 10);
550
+ }
411
551
  if (chosenPort !== defaultPort) {
412
552
  const devOrigin = `http://localhost:${chosenPort}`;
413
553
  // Pin the port in vite.config.ts and update .env
@@ -464,23 +604,37 @@ async function handleInit(projectDirArg, options) {
464
604
  // (kept as separate step from install so we can ask about pnpm first)
465
605
  const pnpmInstalled = await isPnpmInstalled();
466
606
  if (!pnpmInstalled) {
467
- console.log();
468
- info("pnpm is not installed globally on your system.");
469
- const installPnpm = await confirm({
470
- message: "Install pnpm globally? (recommended for future use)",
471
- default: true,
472
- });
473
- if (installPnpm) {
474
- info("Installing pnpm...");
607
+ if (initConfig) {
608
+ // Non-interactive: auto-install pnpm
609
+ info("pnpm is not installed globally. Installing...");
475
610
  try {
476
611
  await installPnpmGlobally();
477
- success("pnpm installed globally. You can now use 'pnpm' commands.");
612
+ success("pnpm installed globally.");
478
613
  }
479
614
  catch (err) {
480
615
  warn(`Could not install pnpm: ${err.message}`);
481
616
  warn("Will use npx to run pnpm for dependency installation.");
482
617
  }
483
618
  }
619
+ else {
620
+ console.log();
621
+ info("pnpm is not installed globally on your system.");
622
+ const installPnpm = await confirm({
623
+ message: "Install pnpm globally? (recommended for future use)",
624
+ default: true,
625
+ });
626
+ if (installPnpm) {
627
+ info("Installing pnpm...");
628
+ try {
629
+ await installPnpmGlobally();
630
+ success("pnpm installed globally. You can now use 'pnpm' commands.");
631
+ }
632
+ catch (err) {
633
+ warn(`Could not install pnpm: ${err.message}`);
634
+ warn("Will use npx to run pnpm for dependency installation.");
635
+ }
636
+ }
637
+ }
484
638
  }
485
639
  // Step 8: Install dependencies with pnpm (via npx to handle version management)
486
640
  if (!options.skipInstall) {
@@ -500,23 +654,37 @@ async function handleInit(projectDirArg, options) {
500
654
  // Step 9: Install primitive CLI globally if not already installed
501
655
  const cliInstalled = await isPrimitiveCliInstalled();
502
656
  if (!cliInstalled) {
503
- console.log();
504
- info("The Primitive CLI helps you manage your app from the command line.");
505
- const installCli = await confirm({
506
- message: "Install the Primitive CLI globally?",
507
- default: true,
508
- });
509
- if (installCli) {
657
+ if (initConfig) {
658
+ // Non-interactive: auto-install CLI
510
659
  info("Installing Primitive CLI...");
511
660
  try {
512
661
  await installPrimitiveCli();
513
- success("Primitive CLI installed. You can now use 'primitive' commands.");
662
+ success("Primitive CLI installed.");
514
663
  }
515
664
  catch (err) {
516
665
  warn(`Could not install CLI: ${err.message}`);
517
666
  warn("You can install it manually with: npm install -g primitive-admin");
518
667
  }
519
668
  }
669
+ else {
670
+ console.log();
671
+ info("The Primitive CLI helps you manage your app from the command line.");
672
+ const installCli = await confirm({
673
+ message: "Install the Primitive CLI globally?",
674
+ default: true,
675
+ });
676
+ if (installCli) {
677
+ info("Installing Primitive CLI...");
678
+ try {
679
+ await installPrimitiveCli();
680
+ success("Primitive CLI installed. You can now use 'primitive' commands.");
681
+ }
682
+ catch (err) {
683
+ warn(`Could not install CLI: ${err.message}`);
684
+ warn("You can install it manually with: npm install -g primitive-admin");
685
+ }
686
+ }
687
+ }
520
688
  }
521
689
  // Step 10: Offer to install Claude Code skill if not already installed
522
690
  try {
@@ -525,6 +693,10 @@ async function handleInit(projectDirArg, options) {
525
693
  // Already installed — silently auto-update if a newer version is bundled
526
694
  await checkSkillStatus();
527
695
  }
696
+ else if (initConfig) {
697
+ // Non-interactive: auto-install skill
698
+ installSkillExplicit();
699
+ }
528
700
  else {
529
701
  console.log();
530
702
  info("The Primitive platform skill gives Claude Code expertise with Primitive APIs and patterns.");
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EACL,OAAO,EACP,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,IAAI,GACL,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,uBAAuB,EACvB,cAAc,EACd,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,kBAAkB,GACtB,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,0BAA0B,CAAC;AAQjE,SAAS,iBAAiB,CAAC,GAAW;IACpC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,4BAA4B,CAAC;IACrD,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,sDAAsD,CAAC;IAChE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,mBAAmB,CAChC,WAA+C,EAC/C,SAAiB,EACjB,aAAsB,EACtB,OAAkE;IAElE,IAAI,WAAW,IAAI,CAAC,aAAa;QAAE,OAAO,WAAW,CAAC;IAEtD,IAAI,aAAa,EAAE,CAAC;QAClB,IAAI,CAAC,gBAAgB,SAAS,uBAAuB,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,yBAAyB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC;QAChC,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC;IAEH,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,CACH,UAAU,OAAO,CAAC,MAAM,0EAA0E,CACnG,CAAC;YACF,IAAI,CACF,qCAAqC,OAAO,CAAC,SAAS,sCAAsC,CAC7F,CAAC;YACF,IAAI,CACF,gFAAgF,CACjF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,CAAC,iBAAiB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACvC,IAAI,CACF,qCAAqC,OAAO,CAAC,SAAS,sCAAsC,CAC7F,CAAC;QACF,IAAI,CACF,gFAAgF,CACjF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,OAAO,CAAC,gBAAgB,MAAM,CAAC,WAAY,CAAC,KAAK,EAAE,CAAC,CAAC;IACrD,OAAO,MAAM,CAAC,WAAY,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,0CAA0C,CAAC;SACvD,QAAQ,CACP,aAAa,EACb,iEAAiE,CAClE;SACA,MAAM,CACL,4BAA4B,EAC5B,sDAAsD,CACvD;SACA,MAAM,CACL,oBAAoB,EACpB,sEAAsE,CACvE;SACA,MAAM,CAAC,gBAAgB,EAAE,2BAA2B,CAAC;SACrD,WAAW,CACV,OAAO,EACP;;;;;;;;;;;;CAYL,CACI;SACA,MAAM,CAAC,UAAU,CAAC,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,aAAiC,EACjC,OAAoB;IAEpB,sCAAsC;IACtC,IAAI,UAAU,GAAG,aAAa,CAAC;IAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,GAAG,MAAM,KAAK,CAAC;YACvB,OAAO,EAAE,iDAAiD;YAC1D,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;gBAClB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;oBAAE,OAAO,8BAA8B,CAAC;gBACzD,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,CAAC;IACrD,yDAAyD;IACzD,MAAM,cAAc,GAClB,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAElE,qDAAqD;IACrD,IAAI,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,cAAc,UAAU,oCAAoC,CAAC,CAAC;QACnE,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,iDAAiD;YAC1D,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,oCAAoC;IACpC,IAAI,SAAiB,CAAC;IACtB,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,KAAK,CAAC,UAAU,CAAC,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;QAE3B,8DAA8D;QAC9D,MAAM,mBAAmB,GAAG,eAAe,EAAE,CAAC;QAC9C,IACE,mBAAmB,EAAE,SAAS;YAC9B,mBAAmB,CAAC,SAAS,KAAK,OAAO,CAAC,MAAM,EAChD,CAAC;YACD,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,mBAAmB,GAAG,eAAe,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,mBAAmB,EAAE,SAAS,CAAC;QAErD,IAAI,aAAa,IAAI,aAAa,KAAK,kBAAkB,EAAE,CAAC;YAC1D,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC;gBAChC,OAAO,EAAE,wCAAwC,aAAa,0CAA0C;gBACxG,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,aAAa;wBACpB,IAAI,EAAE,mBAAmB,aAAa,GAAG;qBAC1C;oBACD;wBACE,KAAK,EAAE,kBAAkB;wBACzB,IAAI,EAAE,eAAe,kBAAkB,GAAG;qBAC3C;oBACD;wBACE,KAAK,EAAE,YAAY;wBACnB,IAAI,EAAE,cAAc;qBACrB;iBACF;gBACD,OAAO,EAAE,aAAa;aACvB,CAAC,CAAC;YAEH,IAAI,YAAY,KAAK,YAAY,EAAE,CAAC;gBAClC,SAAS,GAAG,MAAM,KAAK,CAAC;oBACtB,OAAO,EAAE,uBAAuB;oBAChC,QAAQ,EAAE,iBAAiB;iBAC5B,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,YAAY,CAAC;YAC3B,CAAC;YAED,aAAa,GAAG,aAAa,KAAK,SAAS,CAAC;QAC9C,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,aAAa,IAAI,kBAAkB,CAAC;QAClD,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,0BAA0B,CAAC;YAC/B,SAAS;YACT,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,wEAAwE;IACxE,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,6DAA6D;IAC/D,CAAC;IAED,+BAA+B;IAC/B,IAAI,WAAW,GAAG,eAAe,EAAE,CAAC;IACpC,IAAI,KAAa,CAAC;IAClB,IAAI,OAAe,CAAC;IAEpB,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,2CAA2C;QAC3C,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC;QACjC,OAAO,GAAG,gBAAgB,CAAC,CAAC,6BAA6B;QAEzD,WAAW,GAAG,MAAM,mBAAmB,CACrC,WAAW,EACX,SAAS,EACT,aAAa,EACb;YACE,MAAM,EAAE,gBAAgB;YACxB,SAAS;YACT,SAAS,EAAE,IAAI;SAChB,CACF,CAAC;QAEF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC/B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3C,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;gBACvB,IAAI,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;YACzC,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,yBAAyB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,6CAA6C;QAC7C,WAAW,GAAG,MAAM,mBAAmB,CACrC,WAAW,EACX,SAAS,EACT,aAAa,EACb;YACE,MAAM,EAAE,eAAe;YACvB,SAAS;YACT,SAAS,EAAE,KAAK;SACjB,CACF,CAAC;QAEF,sBAAsB;QACtB,OAAO,GAAG,MAAM,KAAK,CAAC;YACpB,OAAO,EAAE,uCAAuC;YAChD,OAAO,EAAE,cAAc;SACxB,CAAC,CAAC;QAEH,aAAa;QACb,IAAI,CAAC,qCAAqC,CAAC,CAAC;QAC5C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;gBACpC,IAAI,EAAE,OAAO;gBACb,iBAAiB,EAAE,WAAW,CAAC,KAAK;aACrC,CAAC,CAAC;YACH,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;YAC7C,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YACD,KAAK,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;YACnC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,KAAK,CAAC,yBAAyB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9C,KAAK,CACH,sEAAsE,CACvE,CAAC;YACF,IAAI,CACF,qCAAqC,SAAS,sCAAsC,CACrF,CAAC;YACF,IAAI,CACF,gFAAgF,CACjF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,4BAA4B;QAC5B,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,0CAA0C,CAAC,CAAC;QACjD,IAAI,CAAC,0DAA0D,CAAC,CAAC;QAEjE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC;YAC9B,OAAO,EAAE,6CAA6C;YACtD,OAAO,EAAE;gBACP;oBACE,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EAAE,8BAA8B;iBAC5C;gBACD;oBACE,KAAK,EAAE,QAAQ;oBACf,IAAI,EAAE,mBAAmB;oBACzB,WAAW,EAAE,uDAAuD;iBACrE;gBACD;oBACE,KAAK,EAAE,aAAa;oBACpB,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,8CAA8C;iBAC5D;aACF;YACD,OAAO,EAAE,aAAa;SACvB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,eAAe,GAAgD;YACnE,IAAI,EAAE,UAAU;SACjB,CAAC;QAEF,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC;gBAC/B,OAAO,EACL,iFAAiF;gBACnF,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;oBAClB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;wBAAE,OAAO,kCAAkC,CAAC;oBAC7D,OAAO,IAAI,CAAC;gBACd,CAAC;aACF,CAAC,CAAC;YACH,MAAM,cAAc,GAAG,YAAY;iBAChC,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;iBAClC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC/B,eAAe,CAAC,cAAc,GAAG,cAAc,CAAC;QAClD,CAAC;QAED,2CAA2C;QAC3C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;YACvD,OAAO,CAAC,sBAAsB,UAAU,UAAU,CAAC,CAAC;QACtD,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,0EAA0E;QAC1E,IAAI,UAAU,KAAK,aAAa,EAAE,CAAC;YACjC,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE;oBACnC,KAAK,EAAE,WAAW,CAAC,KAAK;oBACxB,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,KAAK;iBACjB,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,WAAW,CAAC,KAAK,4BAA4B,CAAC,CAAC;YAC5D,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,kCAAkC,CAAC,EAAE,CAAC;oBAC/D,IAAI,CAAC,gDAAgD,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;gBAC9B,OAAO,EACL,+EAA+E;gBACjF,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC;oBAC9B,OAAO,EAAE,qDAAqD;oBAC9D,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;wBAClB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;4BAAE,OAAO,iCAAiC,CAAC;wBAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;wBACrD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;4BAC3B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gCACzB,OAAO,kBAAkB,KAAK,EAAE,CAAC;4BACnC,CAAC;wBACH,CAAC;wBACD,OAAO,IAAI,CAAC;oBACd,CAAC;iBACF,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,WAAW;qBACvB,KAAK,CAAC,GAAG,CAAC;qBACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;qBACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAE/B,IAAI,CAAC,yBAAyB,CAAC,CAAC;gBAChC,IAAI,WAAW,GAAG,CAAC,CAAC;gBACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,IAAI,CAAC;wBACH,MAAM,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE;4BACnC,KAAK;4BACL,IAAI,EAAE,QAAQ;4BACd,SAAS,EAAE,KAAK;yBACjB,CAAC,CAAC;wBACH,WAAW,EAAE,CAAC;oBAChB,CAAC;oBAAC,OAAO,GAAQ,EAAE,CAAC;wBAClB,IAAI,CAAC,iBAAiB,KAAK,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBACjD,CAAC;gBACH,CAAC;gBACD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBACpB,OAAO,CAAC,SAAS,WAAW,8BAA8B,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC;QACH,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,IAAI,CAAC,sBAAsB,OAAO,KAAK,KAAK,GAAG,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,2FAA2F;QAC3F,IAAI,CAAC,4CAA4C,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,2BAA2B;IAC3B,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAC1B,IAAI,CAAC,iDAAiD,CAAC,CAAC;YACxD,IAAI,CAAC,mCAAmC,KAAK,qBAAqB,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,CAAC,SAAS,CAAC,oBAAoB,EAAE,CAAC;YAC3C,IAAI,CACF,oEAAoE,CACrE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,oDAAoD,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,CAAC,+BAA+B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,CAAC,mCAAmC,KAAK,qBAAqB,CAAC,CAAC;IACtE,CAAC;IAED,gFAAgF;IAChF,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,MAAM,WAAW,GAAG,IAAI,CAAC;QACzB,MAAM,aAAa,GAAG,oBAAoB,WAAW,EAAE,CAAC;QAExD,0EAA0E;QAC1E,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,KAAK,IAAI,CAAC,GAAG,WAAW,EAAE,CAAC,GAAG,WAAW,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;;gBAC1C,MAAM;QACb,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CACF,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAC3H,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC;YAC5B,OAAO,EAAE,mCAAmC;YAC5C,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC;YAC5B,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;gBAChB,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC5B,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,4BAA4B,CAAC;gBACxE,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAE3C,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,oBAAoB,UAAU,EAAE,CAAC;YAEnD,iDAAiD;YACjD,gBAAgB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YACxC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;YAErC,oDAAoD;YACpD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,IAAI,CACF,gFAAgF,CACjF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;oBAC/B,IAAI,eAAe,GAAa,EAAE,CAAC;oBACnC,IAAI,oBAAoB,GAAa,EAAE,CAAC;oBACxC,IAAI,CAAC;wBACH,MAAM,eAAe,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;wBAC3D,IACE,eAAe,CAAC,QAAQ,KAAK,QAAQ;4BACrC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,EACjD,CAAC;4BACD,eAAe,GAAG,eAAe,CAAC,kBAAkB,CAAC;wBACvD,CAAC;wBACD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;4BAChD,oBAAoB,GAAG,eAAe,CAAC,YAAY,CAAC;wBACtD,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,mCAAmC;oBACrC,CAAC;oBAED,iEAAiE;oBACjE,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC5B,IAAI,GAAG,CAAC,CAAC,GAAG,eAAe,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CACxD,CAAC;oBACF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAC7B,IAAI,GAAG,CAAC;wBACN,GAAG,oBAAoB;wBACvB,GAAG,aAAa,iBAAiB;wBACjC,GAAG,SAAS,iBAAiB;qBAC9B,CAAC,CACH,CAAC;oBAEF,MAAM,MAAM,CAAC,iBAAiB,CAAC,KAAK,EAAE;wBACpC,QAAQ,EAAE,QAAQ;wBAClB,kBAAkB,EAAE,WAAW;wBAC/B,oBAAoB,EAAE,IAAI;wBAC1B,YAAY;wBACZ,OAAO,EAAE,SAAS;qBACnB,CAAC,CAAC;oBACH,OAAO,CACL,mBAAmB,UAAU,oEAAoE,CAClG,CAAC;gBACJ,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,kCAAkC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,+DAA+D;IACjE,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,MAAM,aAAa,GAAG,MAAM,eAAe,EAAE,CAAC;IAC9C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,gDAAgD,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC;YAChC,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAC3B,IAAI,CAAC;gBACH,MAAM,mBAAmB,EAAE,CAAC;gBAC5B,OAAO,CAAC,2DAA2D,CAAC,CAAC;YACvE,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC/C,IAAI,CAAC,uDAAuD,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACzB,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,cAAc,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACrC,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,mCAAmC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,oDAAoD,CAAC,CAAC;IAC7D,CAAC;IAED,kEAAkE;IAClE,MAAM,YAAY,GAAG,MAAM,uBAAuB,EAAE,CAAC;IACrD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,oEAAoE,CAAC,CAAC;QAC3E,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC;YAC/B,OAAO,EAAE,qCAAqC;YAC9C,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,mBAAmB,EAAE,CAAC;gBAC5B,OAAO,CACL,gEAAgE,CACjE,CAAC;YACJ,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,CAAC,0BAA0B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9C,IAAI,CACF,kEAAkE,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,IAAI,CAAC;QACH,MAAM,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;QAC/G,IAAI,gBAAgB,EAAE,EAAE,CAAC;YACvB,yEAAyE;YACzE,MAAM,gBAAgB,EAAE,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,4FAA4F,CAAC,CAAC;YACnG,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC;gBACjC,OAAO,EAAE,uDAAuD;gBAChE,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;YAEH,IAAI,YAAY,EAAE,CAAC;gBACjB,oBAAoB,EAAE,CAAC;YACzB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;IAED,oFAAoF;IACpF,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;IAC9D,CAAC;IAED,gCAAgC;IAChC,OAAO,EAAE,CAAC;IACV,OAAO,CAAC,mCAAmC,CAAC,CAAC;IAC7C,OAAO,EAAE,CAAC;IACV,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACjC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1B,OAAO,EAAE,CAAC;IACV,IAAI,CAAC,aAAa,CAAC,CAAC;IACpB,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,QAAQ,UAAU,EAAE,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}