gnosys 5.9.2 → 5.9.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/cli.js +311 -147
  2. package/dist/cli.js.map +1 -1
  3. package/dist/lib/chat/index.d.ts.map +1 -1
  4. package/dist/lib/chat/index.js +5 -0
  5. package/dist/lib/chat/index.js.map +1 -1
  6. package/dist/lib/cleanup.d.ts +52 -0
  7. package/dist/lib/cleanup.d.ts.map +1 -0
  8. package/dist/lib/cleanup.js +168 -0
  9. package/dist/lib/cleanup.js.map +1 -0
  10. package/dist/lib/config.d.ts +7 -0
  11. package/dist/lib/config.d.ts.map +1 -1
  12. package/dist/lib/config.js +7 -1
  13. package/dist/lib/config.js.map +1 -1
  14. package/dist/lib/paths.d.ts +8 -0
  15. package/dist/lib/paths.d.ts.map +1 -1
  16. package/dist/lib/paths.js +15 -0
  17. package/dist/lib/paths.js.map +1 -1
  18. package/dist/lib/remoteWizard.d.ts.map +1 -1
  19. package/dist/lib/remoteWizard.js +112 -52
  20. package/dist/lib/remoteWizard.js.map +1 -1
  21. package/dist/lib/setup/coldStart.d.ts +71 -0
  22. package/dist/lib/setup/coldStart.d.ts.map +1 -0
  23. package/dist/lib/setup/coldStart.js +122 -0
  24. package/dist/lib/setup/coldStart.js.map +1 -0
  25. package/dist/lib/setup/configSetRender.d.ts +26 -0
  26. package/dist/lib/setup/configSetRender.d.ts.map +1 -0
  27. package/dist/lib/setup/configSetRender.js +103 -0
  28. package/dist/lib/setup/configSetRender.js.map +1 -0
  29. package/dist/lib/setup/dreamRender.d.ts +44 -0
  30. package/dist/lib/setup/dreamRender.d.ts.map +1 -0
  31. package/dist/lib/setup/dreamRender.js +55 -0
  32. package/dist/lib/setup/dreamRender.js.map +1 -0
  33. package/dist/lib/setup/modelsRender.d.ts +25 -0
  34. package/dist/lib/setup/modelsRender.d.ts.map +1 -0
  35. package/dist/lib/setup/modelsRender.js +33 -0
  36. package/dist/lib/setup/modelsRender.js.map +1 -0
  37. package/dist/lib/setup/remoteRender.d.ts +43 -0
  38. package/dist/lib/setup/remoteRender.d.ts.map +1 -0
  39. package/dist/lib/setup/remoteRender.js +65 -0
  40. package/dist/lib/setup/remoteRender.js.map +1 -0
  41. package/dist/lib/setup/routingRender.d.ts +44 -0
  42. package/dist/lib/setup/routingRender.d.ts.map +1 -0
  43. package/dist/lib/setup/routingRender.js +97 -0
  44. package/dist/lib/setup/routingRender.js.map +1 -0
  45. package/dist/lib/setup/sections/ides.d.ts +8 -0
  46. package/dist/lib/setup/sections/ides.d.ts.map +1 -1
  47. package/dist/lib/setup/sections/ides.js +49 -27
  48. package/dist/lib/setup/sections/ides.js.map +1 -1
  49. package/dist/lib/setup/sections/preferences.d.ts +8 -0
  50. package/dist/lib/setup/sections/preferences.d.ts.map +1 -1
  51. package/dist/lib/setup/sections/preferences.js +40 -19
  52. package/dist/lib/setup/sections/preferences.js.map +1 -1
  53. package/dist/lib/setup/sections/routing.d.ts +0 -1
  54. package/dist/lib/setup/sections/routing.d.ts.map +1 -1
  55. package/dist/lib/setup/sections/routing.js +49 -29
  56. package/dist/lib/setup/sections/routing.js.map +1 -1
  57. package/dist/lib/setup/summary.d.ts +33 -19
  58. package/dist/lib/setup/summary.d.ts.map +1 -1
  59. package/dist/lib/setup/summary.js +135 -105
  60. package/dist/lib/setup/summary.js.map +1 -1
  61. package/dist/lib/setup/syncProjectsRender.d.ts +56 -0
  62. package/dist/lib/setup/syncProjectsRender.d.ts.map +1 -0
  63. package/dist/lib/setup/syncProjectsRender.js +168 -0
  64. package/dist/lib/setup/syncProjectsRender.js.map +1 -0
  65. package/dist/lib/setup/ui/diff.d.ts +19 -0
  66. package/dist/lib/setup/ui/diff.d.ts.map +1 -0
  67. package/dist/lib/setup/ui/diff.js +34 -0
  68. package/dist/lib/setup/ui/diff.js.map +1 -0
  69. package/dist/lib/setup/ui/footer.d.ts +11 -0
  70. package/dist/lib/setup/ui/footer.d.ts.map +1 -0
  71. package/dist/lib/setup/ui/footer.js +21 -0
  72. package/dist/lib/setup/ui/footer.js.map +1 -0
  73. package/dist/lib/setup/ui/header.d.ts +24 -0
  74. package/dist/lib/setup/ui/header.d.ts.map +1 -0
  75. package/dist/lib/setup/ui/header.js +49 -0
  76. package/dist/lib/setup/ui/header.js.map +1 -0
  77. package/dist/lib/setup/ui/index.d.ts +26 -0
  78. package/dist/lib/setup/ui/index.d.ts.map +1 -0
  79. package/dist/lib/setup/ui/index.js +18 -0
  80. package/dist/lib/setup/ui/index.js.map +1 -0
  81. package/dist/lib/setup/ui/menu.d.ts +27 -0
  82. package/dist/lib/setup/ui/menu.d.ts.map +1 -0
  83. package/dist/lib/setup/ui/menu.js +75 -0
  84. package/dist/lib/setup/ui/menu.js.map +1 -0
  85. package/dist/lib/setup/ui/panel.d.ts +23 -0
  86. package/dist/lib/setup/ui/panel.d.ts.map +1 -0
  87. package/dist/lib/setup/ui/panel.js +53 -0
  88. package/dist/lib/setup/ui/panel.js.map +1 -0
  89. package/dist/lib/setup/ui/prompt.d.ts +27 -0
  90. package/dist/lib/setup/ui/prompt.d.ts.map +1 -0
  91. package/dist/lib/setup/ui/prompt.js +38 -0
  92. package/dist/lib/setup/ui/prompt.js.map +1 -0
  93. package/dist/lib/setup/ui/safePrompt.d.ts +24 -0
  94. package/dist/lib/setup/ui/safePrompt.d.ts.map +1 -0
  95. package/dist/lib/setup/ui/safePrompt.js +71 -0
  96. package/dist/lib/setup/ui/safePrompt.js.map +1 -0
  97. package/dist/lib/setup/ui/spinner.d.ts +28 -0
  98. package/dist/lib/setup/ui/spinner.d.ts.map +1 -0
  99. package/dist/lib/setup/ui/spinner.js +87 -0
  100. package/dist/lib/setup/ui/spinner.js.map +1 -0
  101. package/dist/lib/setup/ui/status.d.ts +21 -0
  102. package/dist/lib/setup/ui/status.d.ts.map +1 -0
  103. package/dist/lib/setup/ui/status.js +49 -0
  104. package/dist/lib/setup/ui/status.js.map +1 -0
  105. package/dist/lib/setup/ui/title.d.ts +14 -0
  106. package/dist/lib/setup/ui/title.d.ts.map +1 -0
  107. package/dist/lib/setup/ui/title.js +24 -0
  108. package/dist/lib/setup/ui/title.js.map +1 -0
  109. package/dist/lib/setup/ui/tokens.d.ts +66 -0
  110. package/dist/lib/setup/ui/tokens.d.ts.map +1 -0
  111. package/dist/lib/setup/ui/tokens.js +87 -0
  112. package/dist/lib/setup/ui/tokens.js.map +1 -0
  113. package/dist/lib/setup.d.ts +7 -0
  114. package/dist/lib/setup.d.ts.map +1 -1
  115. package/dist/lib/setup.js +204 -230
  116. package/dist/lib/setup.js.map +1 -1
  117. package/package.json +1 -1
@@ -10,7 +10,13 @@ import { readdirSync, statSync } from "fs";
10
10
  import * as path from "path";
11
11
  import { createInterface } from "readline/promises";
12
12
  import { RemoteSync, validateLocation } from "./remote.js";
13
+ import { safeQuestion } from "./setup/ui/safePrompt.js";
14
+ import { Spinner } from "./setup/ui/spinner.js";
15
+ import { printStatus } from "./setup/ui/status.js";
16
+ import { Footer } from "./setup/ui/footer.js";
17
+ import { renderRemoteIntro, renderValidationSummary, renderRemoteDiff, SYNC_MODE_LABELS, } from "./setup/remoteRender.js";
13
18
  const REMOTE_PATH_KEY = "remote_path";
19
+ const REMOTE_MODE_KEY = "remote_mode";
14
20
  // ─── Helpers ────────────────────────────────────────────────────────────
15
21
  /** List likely remote candidates from /Volumes/. Filters out system volumes. */
16
22
  function detectVolumeCandidates() {
@@ -42,7 +48,7 @@ function detectVolumeCandidates() {
42
48
  }
43
49
  }
44
50
  async function ask(rl, prompt) {
45
- return (await rl.question(prompt)).trim();
51
+ return (await safeQuestion(rl, prompt)).trim();
46
52
  }
47
53
  async function askChoice(rl, prompt, choices, defaultKey) {
48
54
  const lines = [prompt];
@@ -70,21 +76,62 @@ async function askConfirm(rl, prompt, defaultYes = true) {
70
76
  return answer === "y" || answer === "yes";
71
77
  }
72
78
  function showValidationSummary(validation) {
73
- console.log(` Path exists: ${validation.checks.pathExists ? "✓" : "✗"}`);
74
- console.log(` Writable: ${validation.checks.writable ? "✓" : "✗"}`);
75
- console.log(` SQLite compatible: ${validation.checks.sqliteCompatible ? "✓" : "✗"}`);
76
- if (validation.checks.latencyMs !== null) {
77
- console.log(` Latency: ${validation.checks.latencyMs}ms`);
79
+ // v5.9.3 Screen 6 route through the renderer so each check renders as
80
+ // a `✓` / `✗` status line. Identical content, atom-styled output.
81
+ console.log(renderValidationSummary({
82
+ pathExists: validation.checks.pathExists,
83
+ writable: validation.checks.writable,
84
+ sqliteCompatible: validation.checks.sqliteCompatible,
85
+ latencyMs: validation.checks.latencyMs,
86
+ existing: {
87
+ found: validation.checks.existingDb.found,
88
+ memoryCount: validation.checks.existingDb.memoryCount ?? null,
89
+ lastModified: validation.checks.existingDb.lastModified ?? null,
90
+ },
91
+ warnings: validation.warnings,
92
+ errors: validation.errors,
93
+ }));
94
+ }
95
+ /**
96
+ * Hierarchical sync-mode picker. Per design §4 Screen 6 the default
97
+ * `read & write` is one keystroke (enter), and the other modes hide
98
+ * behind a `more options` affordance.
99
+ *
100
+ * Returns the chosen mode, or null when the user explicitly cancels.
101
+ */
102
+ async function pickSyncMode(rl) {
103
+ console.log("");
104
+ console.log(" Sync mode");
105
+ console.log("");
106
+ console.log(` 1 read & write ${SYNC_MODE_LABELS["read-write"]} ◂ recommended`);
107
+ console.log(` 2 more options pull-only, push-only`);
108
+ console.log("");
109
+ console.log(Footer("1–2 · pick enter · use recommended"));
110
+ const answer = (await safeQuestion(rl, " > ")).trim();
111
+ if (!answer || answer === "1")
112
+ return "read-write";
113
+ if (answer !== "2") {
114
+ printStatus("warn", "invalid choice — using `read & write`");
115
+ return "read-write";
78
116
  }
79
- if (validation.checks.existingDb.found) {
80
- const c = validation.checks.existingDb;
81
- const dateStr = c.lastModified ? c.lastModified.split("T")[0] : "unknown";
82
- console.log(` Existing DB found: ${c.memoryCount ?? "?"} memories (last modified ${dateStr})`);
117
+ // Nested submenu — all three modes + back.
118
+ console.log("");
119
+ console.log(` 1 read & write ${SYNC_MODE_LABELS["read-write"]} ◂ recommended`);
120
+ console.log(` 2 pull-only ${SYNC_MODE_LABELS["pull-only"]}`);
121
+ console.log(` 3 push-only ${SYNC_MODE_LABELS["push-only"]}`);
122
+ console.log(` 4 back`);
123
+ console.log("");
124
+ console.log(Footer("1–4 · pick"));
125
+ const sub = (await safeQuestion(rl, " > ")).trim();
126
+ switch (sub) {
127
+ case "1": return "read-write";
128
+ case "2": return "pull-only";
129
+ case "3": return "push-only";
130
+ case "4": return null;
131
+ default:
132
+ printStatus("warn", "invalid choice — using `read & write`");
133
+ return "read-write";
83
134
  }
84
- for (const w of validation.warnings)
85
- console.log(` ⚠ ${w}`);
86
- for (const e of validation.errors)
87
- console.log(` ✗ ${e}`);
88
135
  }
89
136
  // ─── Main wizard ────────────────────────────────────────────────────────
90
137
  export async function runConfigureWizard(centralDb, externalRl) {
@@ -94,11 +141,7 @@ export async function runConfigureWizard(centralDb, externalRl) {
94
141
  const localCount = centralDb.getMemoryCount();
95
142
  const currentRemote = centralDb.getMeta(REMOTE_PATH_KEY);
96
143
  console.log("");
97
- console.log(" Gnosys Remote Sync Configuration Wizard");
98
- console.log(" ─────────────────────────────────────────");
99
- console.log("");
100
- console.log(` Local DB: ~/.gnosys/gnosys.db (${localCount.active} active, ${localCount.archived} archived)`);
101
- console.log(` Remote: ${currentRemote || "not configured"}`);
144
+ console.log(renderRemoteIntro(localCount.active, localCount.archived, currentRemote || null));
102
145
  console.log("");
103
146
  if (currentRemote) {
104
147
  // Reconfigure flow
@@ -163,12 +206,21 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
163
206
  console.log("No path provided. Cancelling.");
164
207
  return false;
165
208
  }
166
- // Step 2: Validate
167
- console.log(`\nStep 2: Validating ${remotePath}...`);
209
+ // Step 2: Validate — v5.9.3 Screen 6: animate the validation under a
210
+ // Spinner so the path-check feedback lands before the mode picker.
211
+ console.log("");
212
+ const validateSpinner = Spinner(`checking ${remotePath}…`);
168
213
  const validation = await validateLocation(remotePath);
214
+ if (validation.ok) {
215
+ const latency = validation.checks.latencyMs;
216
+ validateSpinner.ok("path exists, writable", latency !== null ? `${latency} ms` : undefined);
217
+ }
218
+ else {
219
+ validateSpinner.fail("validation failed");
220
+ }
169
221
  showValidationSummary(validation);
170
222
  if (!validation.ok) {
171
- console.log("\nValidation failed. Remote not configured.");
223
+ printStatus("fail", "remote not configured");
172
224
  return false;
173
225
  }
174
226
  if (validation.warnings.length > 0) {
@@ -176,6 +228,13 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
176
228
  if (!proceed)
177
229
  return false;
178
230
  }
231
+ // v5.9.3 Screen 6 — hierarchical sync-mode picker before data strategy.
232
+ // Default is read-write (one keystroke). Persisted to remote_mode meta.
233
+ const syncMode = await pickSyncMode(rl);
234
+ if (syncMode === null) {
235
+ printStatus("warn", "cancelled at mode picker — no changes written");
236
+ return false;
237
+ }
179
238
  // Step 3: Decide what to do based on existing DB state
180
239
  console.log("\nStep 3: Data strategy");
181
240
  console.log("");
@@ -231,54 +290,55 @@ async function setupRemoteFlow(rl, centralDb, localActiveCount) {
231
290
  }
232
291
  }
233
292
  }
234
- // Step 4: Save config and execute strategy
293
+ // Step 4: Save config and execute strategy. v5.9.3 Screen 6 wraps the
294
+ // long-running sync calls in Spinners and prints a final Diff() block.
295
+ const previousRemote = centralDb.getMeta(REMOTE_PATH_KEY) || null;
235
296
  centralDb.setMeta(REMOTE_PATH_KEY, remotePath);
236
- console.log(`\n✓ Remote configured: ${remotePath}`);
297
+ centralDb.setMeta(REMOTE_MODE_KEY, syncMode);
237
298
  const sync = new RemoteSync(centralDb, remotePath);
238
299
  try {
239
300
  if (strategy === "migrate") {
240
- console.log("\nCopying local memories to remote...");
301
+ const spin = Spinner(`doing first sync to ${remotePath}…`);
241
302
  const result = await sync.migrate();
242
303
  if (result.ok) {
243
- console.log(` ✓ Copied ${result.copied} memories.`);
304
+ spin.ok("first sync complete", `${result.copied} memories pushed`);
244
305
  }
245
306
  else {
246
- console.log(` ✗ Migration had errors:`);
307
+ spin.fail("migration had errors");
247
308
  for (const e of result.errors)
248
- console.log(` ${e}`);
309
+ printStatus("fail", e);
249
310
  return false;
250
311
  }
251
312
  }
252
313
  else if (strategy === "pull") {
253
- console.log("\nPulling memories from remote...");
314
+ const spin = Spinner(`doing first sync from ${remotePath}…`);
254
315
  const result = await sync.pull({ strategy: "newer-wins" });
255
- console.log(` ✓ Pulled ${result.pulled} memories.`);
256
- if (result.errors.length > 0) {
257
- for (const e of result.errors)
258
- console.log(` ✗ ${e}`);
259
- }
316
+ spin.ok("first sync complete", `${result.pulled} memories pulled`);
317
+ for (const e of result.errors)
318
+ printStatus("fail", e);
260
319
  }
261
320
  else if (strategy === "merge") {
262
- console.log("\nMerging local and remote...");
321
+ const spin = Spinner(`merging local and remote at ${remotePath}…`);
263
322
  const result = await sync.sync();
264
- console.log(` Pushed: ${result.pushed} | Pulled: ${result.pulled} | Conflicts: ${result.conflicts.length}`);
323
+ spin.ok("merge complete", `pushed ${result.pushed} · pulled ${result.pulled} · conflicts ${result.conflicts.length}`);
265
324
  if (result.conflicts.length > 0) {
266
- console.log("\n Conflicts need resolution:");
267
- for (const c of result.conflicts) {
268
- console.log(` ${c.memoryId}: ${c.title}`);
269
- }
270
- console.log("\n Resolve with: gnosys remote resolve <memory-id> --keep <local|remote>");
271
- }
272
- if (result.errors.length > 0) {
273
- for (const e of result.errors)
274
- console.log(` ✗ ${e}`);
325
+ printStatus("warn", "conflicts need resolution");
326
+ for (const c of result.conflicts)
327
+ console.log(` ${c.memoryId}: ${c.title}`);
328
+ printStatus("progress", "resolve with", "gnosys remote resolve <memory-id> --keep <local|remote>");
275
329
  }
330
+ for (const e of result.errors)
331
+ printStatus("fail", e);
276
332
  }
277
333
  }
278
334
  finally {
279
335
  sync.closeRemote();
280
336
  }
281
- console.log("\nDone! Run 'gnosys remote status' anytime to check sync state.");
337
+ // Final Diff + save confirmation per the design.
338
+ console.log("");
339
+ console.log(renderRemoteDiff({ previousRemote, newRemote: remotePath, mode: syncMode }));
340
+ printStatus("ok", "saved", "~/.gnosys/gnosys.json");
341
+ console.log(Footer("run `gnosys remote status` anytime to check sync state"));
282
342
  return true;
283
343
  }
284
344
  // ─── Reconfigure helpers ────────────────────────────────────────────────
@@ -293,17 +353,17 @@ async function disconnectRemote(rl, centralDb) {
293
353
  return true;
294
354
  }
295
355
  async function revalidateRemote(_rl, _centralDb, currentRemote) {
296
- console.log(`\nValidating ${currentRemote}...`);
356
+ console.log("");
357
+ const spin = Spinner(`checking ${currentRemote}…`);
297
358
  const validation = await validateLocation(currentRemote);
298
- showValidationSummary(validation);
299
359
  if (validation.ok) {
300
- console.log("\n✓ Remote is healthy.");
301
- return true;
360
+ spin.ok("remote is healthy");
302
361
  }
303
362
  else {
304
- console.log("\n✗ Validation failed. The remote may be unreachable or the path is wrong.");
305
- return false;
363
+ spin.fail("validation failed", "the remote may be unreachable or the path is wrong");
306
364
  }
365
+ showValidationSummary(validation);
366
+ return validation.ok;
307
367
  }
308
368
  // ─── Non-interactive mode ───────────────────────────────────────────────
309
369
  export async function configureFromPath(centralDb, remotePath, opts = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"remoteWizard.js","sourceRoot":"","sources":["../../src/lib/remoteWizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"remoteWizard.js","sourceRoot":"","sources":["../../src/lib/remoteWizard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AAC3C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAa,MAAM,mBAAmB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,GAEjB,MAAM,yBAAyB,CAAC;AAEjC,MAAM,eAAe,GAAG,aAAa,CAAC;AACtC,MAAM,eAAe,GAAG,aAAa,CAAC;AAEtC,2EAA2E;AAE3E,gFAAgF;AAChF,SAAS,sBAAsB;IAC7B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC;YACnB,cAAc;YACd,qBAAqB;YACrB,UAAU;YACV,QAAQ;YACR,SAAS;YACT,IAAI;SACL,CAAC,CAAC;QACH,OAAO,OAAO;aACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aAC1D,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,IAAI,CAAC;gBACH,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YACnC,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,GAAG,CAAC,EAAa,EAAE,MAAc;IAC9C,OAAO,CAAC,MAAM,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,EAAa,EACb,MAAc,EACd,OAAyC,EACzC,UAAmB;IAEnB,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QACxD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,GAAG,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,KAAK,IAAI,QAAQ,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACzD,IAAI,CAAC,MAAM,IAAI,UAAU;YAAE,OAAO,UAAU,CAAC;QAC7C,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,EAAa,EAAE,MAAc,EAAE,aAAsB,IAAI;IACjF,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAChD,MAAM,MAAM,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,IAAI,CAAC,MAAM;QAAE,OAAO,UAAU,CAAC;IAC/B,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,KAAK,CAAC;AAC5C,CAAC;AAED,SAAS,qBAAqB,CAAC,UAAwD;IACrF,wEAAwE;IACxE,kEAAkE;IAClE,OAAO,CAAC,GAAG,CACT,uBAAuB,CAAC;QACtB,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU;QACxC,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ;QACpC,gBAAgB,EAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB;QACpD,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS;QACtC,QAAQ,EAAE;YACR,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK;YACzC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI;YAC7D,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,YAAY,IAAI,IAAI;SAChE;QACD,QAAQ,EAAE,UAAU,CAAC,QAAQ;QAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;KAC1B,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,YAAY,CAAC,EAAa;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,8BAA8B,gBAAgB,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;IACrG,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,CAAC,MAAM,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtD,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,YAAY,CAAC;IACnD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,WAAW,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;QAC7D,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,2CAA2C;IAC3C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,8BAA8B,gBAAgB,CAAC,YAAY,CAAC,2BAA2B,CAAC,CAAC;IACrG,OAAO,CAAC,GAAG,CAAC,8BAA8B,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,8BAA8B,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAClC,MAAM,GAAG,GAAG,CAAC,MAAM,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,GAAG,CAAC,CAAC,OAAO,YAAY,CAAC;QAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,WAAW,CAAC;QAC7B,KAAK,GAAG,CAAC,CAAC,OAAO,WAAW,CAAC;QAC7B,KAAK,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC;QACtB;YACE,WAAW,CAAC,MAAM,EAAE,uCAAuC,CAAC,CAAC;YAC7D,OAAO,YAAY,CAAC;IACxB,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,SAAmB,EACnB,UAAsB;IAEtB,MAAM,MAAM,GAAG,CAAC,UAAU,CAAC;IAC3B,MAAM,EAAE,GAAG,UAAU,IAAI,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3F,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,SAAS,CAAC,cAAc,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAEzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,EAAE,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,IAAI,aAAa,EAAE,CAAC;YAClB,mBAAmB;YACnB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,4BAA4B,EAAE;gBAC/D,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,wBAAwB,EAAE;gBAC7C,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,4BAA4B,EAAE;gBACjD,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,wCAAwC,EAAE;gBAC7D,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE;aAC9B,EAAE,GAAG,CAAC,CAAC;YAER,IAAI,MAAM,KAAK,GAAG;gBAAE,OAAO,KAAK,CAAC;YACjC,IAAI,MAAM,KAAK,GAAG;gBAAE,OAAO,MAAM,gBAAgB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YACjE,IAAI,MAAM,KAAK,GAAG;gBAAE,OAAO,MAAM,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;YAChF,6CAA6C;QAC/C,CAAC;QAED,6BAA6B;QAC7B,OAAO,MAAM,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACjE,CAAC;YAAS,CAAC;QACT,IAAI,MAAM,EAAE,CAAC;YACX,EAAE,CAAC,KAAK,EAAE,CAAC;QACb,CAAC;IACH,CAAC;AACH,CAAC;AAED,2EAA2E;AAE3E,KAAK,UAAU,eAAe,CAAC,EAAa,EAAE,SAAmB,EAAE,gBAAwB;IACzF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAC;IAC5C,IAAI,UAA8B,CAAC;IAEnC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,mEAAmE;QACnE,MAAM,OAAO,GAAG;YACd,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3E,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE;YAC5D,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE;SACtD,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,wCAAwC,EAAE,OAAO,CAAC,CAAC;QAEtF,IAAI,MAAM,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3D,IAAI,MAAM,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,UAAU,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,0CAA0C,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,kDAAkD;YAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,OAAO,SAAS,8BAA8B,CAAC,CAAC;YACvF,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9C,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,gFAAgF,CAAC,CAAC;QAC9F,UAAU,GAAG,MAAM,GAAG,CAAC,EAAE,EAAE,gDAAgD,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,qEAAqE;IACrE,mEAAmE;IACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,eAAe,GAAG,OAAO,CAAC,YAAY,UAAU,GAAG,CAAC,CAAC;IAC3D,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,UAAU,CAAC,EAAE,EAAE,CAAC;QAClB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC;QAC5C,eAAe,CAAC,EAAE,CAAC,uBAAuB,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC9F,CAAC;SAAM,CAAC;QACN,eAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC5C,CAAC;IACD,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAElC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,WAAW,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,4BAA4B,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;IAC7B,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,WAAW,CAAC,MAAM,EAAE,+CAA+C,CAAC,CAAC;QACrE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,uDAAuD;IACvD,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAChH,MAAM,YAAY,GAAG,gBAAgB,GAAG,CAAC,CAAC;IAE1C,IAAI,QAAQ,GAAoD,gBAAgB,CAAC;IAEjF,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,oCAAoC;QACpC,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC;QAC5F,QAAQ,GAAG,gBAAgB,CAAC;IAC9B,CAAC;SAAM,IAAI,CAAC,aAAa,IAAI,YAAY,EAAE,CAAC;QAC1C,sDAAsD;QACtD,OAAO,CAAC,GAAG,CAAC,uBAAuB,gBAAgB,YAAY,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,6CAA6C,EAAE,IAAI,CAAC,CAAC;QAC1F,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACpD,CAAC;SAAM,IAAI,aAAa,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1C,0FAA0F;QAC1F,OAAO,CAAC,GAAG,CAAC,oBAAoB,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,YAAY,CAAC,CAAC;QACtF,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,EAAE,EAAE,6CAA6C,EAAE,IAAI,CAAC,CAAC;QACvF,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,mCAAmC;QACnC,qEAAqE;QACrE,sEAAsE;QACtE,kDAAkD;QAClD,OAAO,CAAC,GAAG,CAAC,oCAAoC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,WAAW,CAAC,CAAC;QACrG,OAAO,CAAC,GAAG,CAAC,oCAAoC,gBAAgB,WAAW,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,kCAAkC,EAAE;YACrE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,0FAA0F,EAAE;YAC/G,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,6DAA6D,EAAE;YAClF,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,oDAAoD,EAAE;YACzE,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,oDAAoD,EAAE;SAC1E,EAAE,GAAG,CAAC,CAAC;QAER,IAAI,MAAM,KAAK,GAAG;YAAE,QAAQ,GAAG,OAAO,CAAC;aAClC,IAAI,MAAM,KAAK,GAAG;YAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,aAAa;aACvD,IAAI,MAAM,KAAK,GAAG;YAAE,QAAQ,GAAG,MAAM,CAAC;;YACtC,QAAQ,GAAG,gBAAgB,CAAC,CAAC,uCAAuC;QAEzE,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YAClD,MAAM,OAAO,GAAG,MAAM,UAAU,CAC9B,EAAE,EACF,6BAA6B,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,oBAAoB,EAC5F,KAAK,CACN,CAAC;YACF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC1B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,uEAAuE;IACvE,MAAM,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC;IAClE,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC/C,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IAE7C,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACnD,IAAI,CAAC;QACH,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,uBAAuB,UAAU,GAAG,CAAC,CAAC;YAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,IAAI,CAAC,EAAE,CAAC,qBAAqB,EAAE,GAAG,MAAM,CAAC,MAAM,kBAAkB,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;gBAClC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM;oBAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACtD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,yBAAyB,UAAU,GAAG,CAAC,CAAC;YAC7D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;YAC3D,IAAI,CAAC,EAAE,CAAC,qBAAqB,EAAE,GAAG,MAAM,CAAC,MAAM,kBAAkB,CAAC,CAAC;YACnE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM;gBAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,OAAO,CAAC,+BAA+B,UAAU,GAAG,CAAC,CAAC;YACnE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,EAAE,CACL,gBAAgB,EAChB,UAAU,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,MAAM,gBAAgB,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAC3F,CAAC;YACF,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,WAAW,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;gBACjD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS;oBAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,yDAAyD,CAAC,CAAC;YACrG,CAAC;YACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM;gBAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,WAAW,EAAE,CAAC;IACrB,CAAC;IAED,iDAAiD;IACjD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzF,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,wDAAwD,CAAC,CAAC,CAAC;IAC9E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,2EAA2E;AAE3E,KAAK,UAAU,gBAAgB,CAAC,EAAa,EAAE,SAAmB;IAChE,MAAM,OAAO,GAAG,MAAM,UAAU,CAC9B,EAAE,EACF,wFAAwF,EACxF,KAAK,CACN,CAAC;IACF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,GAAc,EAAE,UAAoB,EAAE,aAAqB;IACzF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,aAAa,GAAG,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,aAAa,CAAC,CAAC;IACzD,IAAI,UAAU,CAAC,EAAE,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,oDAAoD,CAAC,CAAC;IACvF,CAAC;IACD,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,UAAU,CAAC,EAAE,CAAC;AACvB,CAAC;AAED,2EAA2E;AAE3E,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,SAAmB,EACnB,UAAkB,EAClB,OAA8B,EAAE;IAEhC,OAAO,CAAC,GAAG,CAAC,gBAAgB,UAAU,KAAK,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACtD,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAElC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC;IAEpD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,MAAM,sBAAsB,CAAC,CAAC;YACjE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;gBACzC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM;oBAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACvD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;SAAM,IAAI,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Cold-start (linear wizard) rendering helpers — v5.9.3 redesign.
3
+ *
4
+ * These pure render functions replace the bespoke banner/box drawing
5
+ * inside `runSetup()` with the new atom-based layout. They produce
6
+ * strings (no I/O) so they're snapshot-testable.
7
+ *
8
+ * Screens 1.1 (provider), 1.2 (model), 1.3 (key) get their headers
9
+ * here. The actual provider/model pickers stay in `setup.ts` —
10
+ * pickProvider / pickModel are called from multiple paths and were
11
+ * intentionally left untouched per the v5.9.3 brief; the cold-start
12
+ * sub-screen functions wrap the picker invocations with the header
13
+ * chrome.
14
+ */
15
+ /**
16
+ * Splash screen body (Screen 1.0 in the design handoff). The caller
17
+ * follows up with the "press enter to begin" prompt.
18
+ */
19
+ export declare function renderColdStartSplash(version: string): string;
20
+ /**
21
+ * Step header — used as the banner of each cold-start sub-screen
22
+ * (1.1 provider, 1.2 model, 1.3 key, 1.5 done). Renders the breadcrumb
23
+ * with the version on the right plus the "step N of M" mid-line.
24
+ */
25
+ export declare function renderStepHeader(crumbs: string[], step: number, total: number, version: string): string;
26
+ /**
27
+ * Body rows for the "ready" panel on screen 1.5. Exported so the wizard
28
+ * can hand them to Panel() and snapshot tests can verify the rows
29
+ * independently.
30
+ */
31
+ export declare function renderDonePanelRows(summary: {
32
+ provider: string;
33
+ model: string;
34
+ keySource: string;
35
+ ides: string[];
36
+ dreamEnabled: boolean;
37
+ }): string[];
38
+ /**
39
+ * Screen 1.1 — provider sub-screen header. Renders the breadcrumb +
40
+ * step counter + Title + intro line. The caller follows up with the
41
+ * existing pickProvider() call to print the actual numbered menu.
42
+ */
43
+ export declare function renderProviderStepHeader(version: string): string;
44
+ /**
45
+ * Screen 1.2 — model sub-screen header. Includes the provider name in
46
+ * the breadcrumb so the user knows which catalog they're picking from.
47
+ */
48
+ export declare function renderModelStepHeader(provider: string, version: string): string;
49
+ /**
50
+ * Screen 1.3 — API key sub-screen header. Shows the provider name and
51
+ * a one-line subtitle reminding the user that we validate the key
52
+ * before saving.
53
+ */
54
+ export declare function renderKeyStepHeader(provider: string, version: string): string;
55
+ /**
56
+ * Render the key-source picker rows. Each row has a number, a label, a
57
+ * meta column, and an optional `◂ found` tag when the env var is
58
+ * actually set. Returns the array of lines so the caller can
59
+ * concatenate them around its own prompt.
60
+ */
61
+ export interface KeySourceRow {
62
+ /** "environment variable" / "macos keychain" / "paste inline" / "skip for now". */
63
+ label: string;
64
+ /** Right-side meta (env var name, "(will store securely)", etc.). */
65
+ meta: string;
66
+ /** When true, append the `◂ found` tag in `ok` color. */
67
+ found?: boolean;
68
+ }
69
+ export declare function renderKeySourceRows(rows: KeySourceRow[]): string[];
70
+ export declare function renderKeyStepFooter(): string;
71
+ //# sourceMappingURL=coldStart.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coldStart.d.ts","sourceRoot":"","sources":["../../../src/lib/setup/coldStart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAiB7D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EAAE,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,OAAO,CAAC;CACvB,GAAG,MAAM,EAAE,CAYX;AAQD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAMhE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM/E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAM7E;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,mFAAmF;IACnF,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,yDAAyD;IACzD,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,MAAM,EAAE,CAWlE;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Cold-start (linear wizard) rendering helpers — v5.9.3 redesign.
3
+ *
4
+ * These pure render functions replace the bespoke banner/box drawing
5
+ * inside `runSetup()` with the new atom-based layout. They produce
6
+ * strings (no I/O) so they're snapshot-testable.
7
+ *
8
+ * Screens 1.1 (provider), 1.2 (model), 1.3 (key) get their headers
9
+ * here. The actual provider/model pickers stay in `setup.ts` —
10
+ * pickProvider / pickModel are called from multiple paths and were
11
+ * intentionally left untouched per the v5.9.3 brief; the cold-start
12
+ * sub-screen functions wrap the picker invocations with the header
13
+ * chrome.
14
+ */
15
+ import { Header } from "./ui/header.js";
16
+ import { Title } from "./ui/title.js";
17
+ import { Footer } from "./ui/footer.js";
18
+ import { c, color, glyph } from "./ui/tokens.js";
19
+ /**
20
+ * Splash screen body (Screen 1.0 in the design handoff). The caller
21
+ * follows up with the "press enter to begin" prompt.
22
+ */
23
+ export function renderColdStartSplash(version) {
24
+ const v = version.startsWith("v") ? version : `v${version}`;
25
+ const lines = [];
26
+ lines.push(Header(["gnosys", "setup"], { version: v }));
27
+ lines.push("");
28
+ lines.push(Title("Welcome."));
29
+ lines.push("");
30
+ lines.push(" gnosys gives your AI agents persistent memory — a centralized brain");
31
+ lines.push(" they keep across sessions. This wizard takes about 90 seconds.");
32
+ lines.push("");
33
+ lines.push(" step 1 pick a default LLM provider");
34
+ lines.push(" step 2 validate the API key");
35
+ lines.push(" step 3 wire up MCP for detected IDEs");
36
+ lines.push(" step 4 (optional) task routing & dream mode");
37
+ lines.push("");
38
+ lines.push(Footer("^C exits cleanly at any time"));
39
+ return lines.join("\n");
40
+ }
41
+ /**
42
+ * Step header — used as the banner of each cold-start sub-screen
43
+ * (1.1 provider, 1.2 model, 1.3 key, 1.5 done). Renders the breadcrumb
44
+ * with the version on the right plus the "step N of M" mid-line.
45
+ */
46
+ export function renderStepHeader(crumbs, step, total, version) {
47
+ const v = version.startsWith("v") ? version : `v${version}`;
48
+ return Header([...crumbs], { version: `step ${step} of ${total} ${v}` });
49
+ }
50
+ /**
51
+ * Body rows for the "ready" panel on screen 1.5. Exported so the wizard
52
+ * can hand them to Panel() and snapshot tests can verify the rows
53
+ * independently.
54
+ */
55
+ export function renderDonePanelRows(summary) {
56
+ const idesStr = summary.ides.length === 0 ? "(none)" : summary.ides.join(", ");
57
+ const dreamStr = summary.dreamEnabled
58
+ ? "enabled"
59
+ : "disabled · enable later with `gnosys setup`";
60
+ return [
61
+ pad("provider", summary.provider),
62
+ pad("model", summary.model),
63
+ pad("api key", summary.keySource),
64
+ pad("ides", idesStr),
65
+ pad("dream mode", dreamStr),
66
+ ];
67
+ }
68
+ function pad(label, value) {
69
+ return `${label.padEnd(18)}${value}`;
70
+ }
71
+ // ─── Screens 1.1 / 1.2 / 1.3 — sub-screen headers ────────────────────────
72
+ /**
73
+ * Screen 1.1 — provider sub-screen header. Renders the breadcrumb +
74
+ * step counter + Title + intro line. The caller follows up with the
75
+ * existing pickProvider() call to print the actual numbered menu.
76
+ */
77
+ export function renderProviderStepHeader(version) {
78
+ const lines = [];
79
+ lines.push(renderStepHeader(["gnosys", "setup", "provider"], 1, 4, version));
80
+ lines.push("");
81
+ lines.push(Title("Choose your LLM provider", "prices are per-1M-tokens (input – output)"));
82
+ return lines.join("\n");
83
+ }
84
+ /**
85
+ * Screen 1.2 — model sub-screen header. Includes the provider name in
86
+ * the breadcrumb so the user knows which catalog they're picking from.
87
+ */
88
+ export function renderModelStepHeader(provider, version) {
89
+ const lines = [];
90
+ lines.push(renderStepHeader(["gnosys", "setup", "provider", "model"], 2, 4, version));
91
+ lines.push("");
92
+ lines.push(Title(`Choose a model for ${provider}`));
93
+ return lines.join("\n");
94
+ }
95
+ /**
96
+ * Screen 1.3 — API key sub-screen header. Shows the provider name and
97
+ * a one-line subtitle reminding the user that we validate the key
98
+ * before saving.
99
+ */
100
+ export function renderKeyStepHeader(provider, version) {
101
+ const lines = [];
102
+ lines.push(renderStepHeader(["gnosys", "setup", "key"], 3, 4, version));
103
+ lines.push("");
104
+ lines.push(Title(`API key for ${provider}`, "we'll validate it before saving anything"));
105
+ return lines.join("\n");
106
+ }
107
+ export function renderKeySourceRows(rows) {
108
+ const labelW = Math.max(...rows.map((r) => r.label.length)) + 2;
109
+ const out = [];
110
+ rows.forEach((r, i) => {
111
+ const num = color(c.textDim, String(i + 1).padStart(2, " "));
112
+ const label = color(c.text, r.label.padEnd(labelW));
113
+ const meta = color(c.textDim, r.meta);
114
+ const tag = r.found ? ` ${color(c.ok, `${glyph.tag} found`)}` : "";
115
+ out.push(` ${num} ${label}${meta}${tag}`);
116
+ });
117
+ return out;
118
+ }
119
+ export function renderKeyStepFooter() {
120
+ return Footer("1–4 · pick b · back");
121
+ }
122
+ //# sourceMappingURL=coldStart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coldStart.js","sourceRoot":"","sources":["../../../src/lib/setup/coldStart.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Known top-level keys accepted by `gnosys config set`. Mirrors the switch
3
+ * cases in cli.ts; keep these in sync when a new branch is added.
4
+ */
5
+ export declare const KNOWN_CONFIG_KEYS: readonly string[];
6
+ /**
7
+ * Validate a user-supplied config key. Returns the closest known key
8
+ * (by edit distance) when the input doesn't match exactly. The caller
9
+ * uses the suggestion to render a `did you mean X?` hint.
10
+ */
11
+ export declare function suggestConfigKey(input: string): string | null;
12
+ /**
13
+ * Classify a store path as `project` or `global`. Used to label both the
14
+ * Diff row and the "saved" status line so the user always knows which
15
+ * store was touched.
16
+ *
17
+ * The convention: store paths under `~/.gnosys` (the central user store)
18
+ * count as global; everything else is project-scoped.
19
+ */
20
+ export declare function classifyStore(storePath: string, homeDir: string): "project" | "global";
21
+ /**
22
+ * Compute the Levenshtein edit distance between two strings. Small inputs
23
+ * only — config keys are at most ~20 chars.
24
+ */
25
+ export declare function levenshtein(a: string, b: string): number;
26
+ //# sourceMappingURL=configSetRender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configSetRender.d.ts","sourceRoot":"","sources":["../../../src/lib/setup/configSetRender.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAkB9C,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAc7D;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAMtF;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAsBxD"}