@rajat-rastogi/maestro 0.4.3 → 0.5.1

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.
Binary file
Binary file
@@ -456,6 +456,9 @@ function registerMachinesIpc(machineManager2) {
456
456
  electron.ipcMain.handle("machines:ping", async (_e, id) => {
457
457
  return machineManager2.ping(id);
458
458
  });
459
+ electron.ipcMain.handle("machines:pingVerbose", async (_e, id) => {
460
+ return machineManager2.pingVerbose(id);
461
+ });
459
462
  electron.ipcMain.handle("machines:update", async (_e, id, partial) => {
460
463
  return machineManager2.update(id, partial);
461
464
  });
@@ -562,7 +565,14 @@ class AgentConnectionPool {
562
565
  const ws = new WebSocket(wssUrl);
563
566
  entry.ws = ws;
564
567
  return new Promise((resolve, reject) => {
568
+ const connectTimeout = setTimeout(() => {
569
+ console.log(`[AgentPool] getConnection: WebSocket connect timeout (10s) for "${tunnelId}"`);
570
+ ws.terminate();
571
+ this.teardown(tunnelId);
572
+ reject(new Error(`WebSocket connect timeout — agent may not be running on remote machine`));
573
+ }, 1e4);
565
574
  ws.on("open", () => {
575
+ clearTimeout(connectTimeout);
566
576
  console.log(`[AgentPool] getConnection: connected to agent via ${wssUrl}`);
567
577
  entry.ready = true;
568
578
  entry.queue.forEach((cb) => cb(ws));
@@ -570,6 +580,7 @@ class AgentConnectionPool {
570
580
  resolve(ws);
571
581
  });
572
582
  ws.on("error", (err) => {
583
+ clearTimeout(connectTimeout);
573
584
  console.log(`[AgentPool] WebSocket error for "${tunnelId}": ${err.message}`);
574
585
  this.teardown(tunnelId);
575
586
  reject(new Error(`Agent WebSocket error: ${err.message}`));
@@ -582,13 +593,53 @@ class AgentConnectionPool {
582
593
  }
583
594
  /** Ping the agent via WebSocket, return true if pong received within 5s. */
584
595
  async ping(tunnelId) {
596
+ const result = await this.pingVerbose(tunnelId);
597
+ return result.status === "online";
598
+ }
599
+ /** Detailed ping with step-by-step results for UI display. */
600
+ async pingVerbose(tunnelId) {
601
+ const steps = [];
602
+ try {
603
+ child_process.execSync(process.platform === "win32" ? "where devtunnel" : "which devtunnel", { stdio: "pipe" });
604
+ steps.push({ label: "devtunnel installed (host)", ok: true });
605
+ } catch {
606
+ steps.push({ label: "devtunnel installed (host)", ok: false, error: "devtunnel not found in PATH" });
607
+ return {
608
+ status: "offline",
609
+ steps,
610
+ suggestion: "Install devtunnel on this machine:\n winget install Microsoft.devtunnel\n devtunnel user login"
611
+ };
612
+ }
613
+ let wssUrl;
585
614
  try {
586
- console.log(`[AgentPool] ping: connecting to "${tunnelId}"...`);
587
- const ws = await this.getConnection(tunnelId);
588
- console.log(`[AgentPool] ping: connected, sending ping...`);
589
- return new Promise((resolve) => {
615
+ wssUrl = this.discoverWssUrl(tunnelId);
616
+ steps.push({ label: "Discover tunnel URL", ok: true });
617
+ } catch (err) {
618
+ const msg = err instanceof Error ? err.message : String(err);
619
+ steps.push({ label: "Discover tunnel URL", ok: false, error: msg });
620
+ let suggestion;
621
+ if (msg.includes("No port 9741")) {
622
+ suggestion = "Port 9741 not configured on the tunnel. Run on the remote:\n devtunnel port create " + tunnelId + " --port-number 9741";
623
+ } else if (msg.includes("not found")) {
624
+ suggestion = "Tunnel not found. Check on the remote:\n devtunnel list\n devtunnel host " + tunnelId;
625
+ } else {
626
+ suggestion = "Run on this machine:\n devtunnel user login";
627
+ }
628
+ return { status: "offline", steps, suggestion };
629
+ }
630
+ let ws;
631
+ try {
632
+ ws = await this.getConnection(tunnelId);
633
+ steps.push({ label: `Connect to agent (${wssUrl})`, ok: true });
634
+ } catch (err) {
635
+ const msg = err instanceof Error ? err.message : String(err);
636
+ steps.push({ label: "Connect to agent", ok: false, error: msg });
637
+ const suggestion = "Agent not responding. Check on the remote:\n netstat -ano | findstr 9741\n node C:\\maestro-agent\\maestro-agent.js";
638
+ return { status: "offline", steps, suggestion };
639
+ }
640
+ try {
641
+ const pong = await new Promise((resolve) => {
590
642
  const t = setTimeout(() => {
591
- console.log(`[AgentPool] ping: timeout (5s) — no pong received`);
592
643
  ws.removeListener("message", handler);
593
644
  resolve(false);
594
645
  }, 5e3);
@@ -596,7 +647,6 @@ class AgentConnectionPool {
596
647
  try {
597
648
  const msg = JSON.parse(data.toString());
598
649
  if (msg.type === "pong") {
599
- console.log(`[AgentPool] ping: pong received — agent online`);
600
650
  clearTimeout(t);
601
651
  ws.removeListener("message", handler);
602
652
  resolve(true);
@@ -607,9 +657,16 @@ class AgentConnectionPool {
607
657
  ws.on("message", handler);
608
658
  ws.send(JSON.stringify({ type: "ping" }));
609
659
  });
660
+ if (pong) {
661
+ steps.push({ label: "Agent responded (pong)", ok: true });
662
+ return { status: "online", steps };
663
+ } else {
664
+ steps.push({ label: "Agent responded (pong)", ok: false, error: "No response within 5s" });
665
+ return { status: "offline", steps, suggestion: "Agent connected but not responding. Restart on the remote:\n Stop-ScheduledTask -TaskName MaestroAgent\n Start-ScheduledTask -TaskName MaestroAgent" };
666
+ }
610
667
  } catch (err) {
611
- console.log(`[AgentPool] ping failed for "${tunnelId}": ${err instanceof Error ? err.message : String(err)}`);
612
- return false;
668
+ steps.push({ label: "Agent responded (pong)", ok: false, error: err instanceof Error ? err.message : String(err) });
669
+ return { status: "offline", steps, suggestion: "Unexpected error during ping" };
613
670
  }
614
671
  }
615
672
  teardown(tunnelId) {
@@ -970,6 +1027,20 @@ class MachineManager {
970
1027
  this.emitStatusChanged({ machineId: id, status });
971
1028
  return status;
972
1029
  }
1030
+ async pingVerbose(id) {
1031
+ const machine = this.machines.get(id);
1032
+ if (!machine) return { status: "offline", steps: [{ label: "Find machine", ok: false, error: "Machine not found" }] };
1033
+ if (id === "local") return { status: "online", steps: [{ label: "Local machine", ok: true }] };
1034
+ if (machine.authMethod !== "dev-tunnel" || !machine.tunnelId) {
1035
+ return { status: "offline", steps: [{ label: "Check tunnel config", ok: false, error: "No tunnel ID configured" }], suggestion: "Set up the agent via the Setup panel" };
1036
+ }
1037
+ const result = await AgentConnectionPool.getInstance().pingVerbose(machine.tunnelId);
1038
+ machine.status = result.status;
1039
+ if (result.status === "online") machine.onboarded = true;
1040
+ this.save();
1041
+ this.emitStatusChanged({ machineId: id, status: result.status });
1042
+ return result;
1043
+ }
973
1044
  onStatusChanged(cb) {
974
1045
  this.statusCallbacks.push(cb);
975
1046
  }
@@ -1803,6 +1874,7 @@ function createWindow() {
1803
1874
  minWidth: 900,
1804
1875
  minHeight: 600,
1805
1876
  title: "Maestro",
1877
+ icon: path.join(__dirname, process.platform === "win32" ? "../../assets/icon.ico" : "../../assets/icon.png"),
1806
1878
  backgroundColor: "#1a1a2e",
1807
1879
  show: false,
1808
1880
  webPreferences: {
@@ -61,6 +61,7 @@ electron.contextBridge.exposeInMainWorld("maestro", {
61
61
  add: (machine) => electron.ipcRenderer.invoke("machines:add", machine),
62
62
  remove: (id) => electron.ipcRenderer.invoke("machines:remove", id),
63
63
  ping: (id) => electron.ipcRenderer.invoke("machines:ping", id),
64
+ pingVerbose: (id) => electron.ipcRenderer.invoke("machines:pingVerbose", id),
64
65
  update: (id, partial) => electron.ipcRenderer.invoke("machines:update", id, partial),
65
66
  updateAddress: (id, address) => electron.ipcRenderer.invoke("machines:updateAddress", id, address),
66
67
  discoverDevBoxes: () => electron.ipcRenderer.invoke("machines:discoverDevBoxes"),
@@ -9649,7 +9649,7 @@ const STATUS_DOT = {
9649
9649
  hibernated: { color: "var(--state-waiting)", label: "● Hibernated" },
9650
9650
  unknown: { color: "var(--state-idle)", label: "○ Unknown" }
9651
9651
  };
9652
- function MachineCard({ machine, onSetup, onRemove, onPing, onAddressSet, onRdp, pingState }) {
9652
+ function MachineCard({ machine, onSetup, onRemove, onPing, onAddressSet, onRdp, pingState, pingDetails, onDismissPing }) {
9653
9653
  const { color, label } = STATUS_DOT[machine.status] ?? STATUS_DOT.unknown;
9654
9654
  const [showTunnelSetup, setShowTunnelSetup] = reactExports.useState(false);
9655
9655
  const sshReady = machine.onboarded && (machine.authMethod === "dev-tunnel" ? !!machine.tunnelId : machine.address.length > 0);
@@ -9707,10 +9707,13 @@ function MachineCard({ machine, onSetup, onRemove, onPing, onAddressSet, onRdp,
9707
9707
  children: pingState === "pinging…" ? "Pinging…" : "Ping"
9708
9708
  }
9709
9709
  ),
9710
- pingState && pingState !== "pinging…" && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: {
9710
+ pingState && pingState !== "pinging…" && /* @__PURE__ */ jsxRuntimeExports.jsxs("span", { style: {
9711
9711
  fontSize: "11px",
9712
- color: pingState === "Online" ? "var(--state-working)" : "var(--state-error)"
9713
- }, children: pingState === "Online" ? "✓ Online" : "✕ Offline" })
9712
+ color: pingState.startsWith("Online") ? "var(--state-working)" : "var(--state-error)"
9713
+ }, children: [
9714
+ pingState.startsWith("Online") ? "✓ " : "✕ ",
9715
+ pingState
9716
+ ] })
9714
9717
  ] }),
9715
9718
  machine.id !== "local" && /* @__PURE__ */ jsxRuntimeExports.jsx(
9716
9719
  "button",
@@ -9724,6 +9727,30 @@ function MachineCard({ machine, onSetup, onRemove, onPing, onAddressSet, onRdp,
9724
9727
  ] })
9725
9728
  ] })
9726
9729
  ] }),
9730
+ pingDetails && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: styles$d.pingPanel, children: [
9731
+ /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: styles$d.pingPanelHeader, children: [
9732
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { fontSize: "12px", fontWeight: 600 }, children: "Ping Details" }),
9733
+ /* @__PURE__ */ jsxRuntimeExports.jsx("button", { style: styles$d.pingDismiss, onClick: onDismissPing, children: "✕" })
9734
+ ] }),
9735
+ pingDetails.steps.map((step, i) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: styles$d.pingStep, children: [
9736
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { color: step.ok ? "var(--state-done)" : "var(--state-error)" }, children: step.ok ? "✓" : "✗" }),
9737
+ /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { flex: 1, fontSize: "12px", color: "var(--text-secondary)" }, children: step.label }),
9738
+ step.error && /* @__PURE__ */ jsxRuntimeExports.jsx("span", { style: { fontSize: "11px", color: "var(--state-error)", maxWidth: "250px", overflow: "hidden", textOverflow: "ellipsis" }, title: step.error, children: step.error })
9739
+ ] }, i)),
9740
+ pingDetails.suggestion && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { style: styles$d.pingSuggestion, children: pingDetails.suggestion.split("\n").map((line, i) => {
9741
+ const trimmed = line.trim();
9742
+ const isCommand = trimmed.startsWith("winget ") || trimmed.startsWith("devtunnel ") || trimmed.startsWith("netstat ") || trimmed.startsWith("node ") || trimmed.startsWith("Stop-") || trimmed.startsWith("Start-");
9743
+ return /* @__PURE__ */ jsxRuntimeExports.jsx("div", { children: isCommand ? /* @__PURE__ */ jsxRuntimeExports.jsx(
9744
+ "code",
9745
+ {
9746
+ style: styles$d.pingCommand,
9747
+ onClick: () => navigator.clipboard.writeText(trimmed),
9748
+ title: "Click to copy",
9749
+ children: trimmed
9750
+ }
9751
+ ) : line }, i);
9752
+ }) })
9753
+ ] }),
9727
9754
  showTunnelSetup && /* @__PURE__ */ jsxRuntimeExports.jsx(
9728
9755
  TunnelSetupPanel,
9729
9756
  {
@@ -10048,6 +10075,58 @@ const styles$d = {
10048
10075
  padding: "8px 12px",
10049
10076
  marginTop: "10px"
10050
10077
  },
10078
+ pingPanel: {
10079
+ background: "var(--bg-elevated)",
10080
+ border: "1px solid var(--border)",
10081
+ borderRadius: "var(--radius-sm)",
10082
+ margin: "8px 12px 12px",
10083
+ padding: "10px",
10084
+ display: "flex",
10085
+ flexDirection: "column",
10086
+ gap: "6px"
10087
+ },
10088
+ pingPanelHeader: {
10089
+ display: "flex",
10090
+ justifyContent: "space-between",
10091
+ alignItems: "center",
10092
+ marginBottom: "4px"
10093
+ },
10094
+ pingDismiss: {
10095
+ background: "transparent",
10096
+ border: "none",
10097
+ color: "var(--text-muted)",
10098
+ fontSize: "14px",
10099
+ cursor: "pointer",
10100
+ padding: "0 2px"
10101
+ },
10102
+ pingStep: {
10103
+ display: "flex",
10104
+ alignItems: "center",
10105
+ gap: "8px",
10106
+ fontSize: "12px"
10107
+ },
10108
+ pingSuggestion: {
10109
+ fontSize: "11px",
10110
+ color: "var(--state-waiting)",
10111
+ background: "#1c1500",
10112
+ border: "1px solid #713f12",
10113
+ borderRadius: "var(--radius-sm)",
10114
+ padding: "8px 10px",
10115
+ marginTop: "4px",
10116
+ lineHeight: 1.8
10117
+ },
10118
+ pingCommand: {
10119
+ display: "inline-block",
10120
+ fontFamily: "'Cascadia Code', Consolas, monospace",
10121
+ fontSize: "11px",
10122
+ background: "var(--bg-base)",
10123
+ color: "var(--text-primary)",
10124
+ padding: "2px 8px",
10125
+ borderRadius: "3px",
10126
+ cursor: "pointer",
10127
+ border: "1px solid var(--border)",
10128
+ marginLeft: "4px"
10129
+ },
10051
10130
  panelFooter: {
10052
10131
  display: "flex",
10053
10132
  justifyContent: "flex-end",
@@ -10274,6 +10353,7 @@ function MachinesView({ onMachineAdded, onMachineRemoved }) {
10274
10353
  const { machines, addMachine, removeMachine, updateStatus, setMachines, updateMachine } = useMachinesStore();
10275
10354
  const [showOnboarding, setShowOnboarding] = reactExports.useState(false);
10276
10355
  const [pingStates, setPingStates] = reactExports.useState({});
10356
+ const [pingDetails, setPingDetails] = reactExports.useState({});
10277
10357
  const [discoveryState, setDiscoveryState] = reactExports.useState("idle");
10278
10358
  const [discoveryError, setDiscoveryError] = reactExports.useState(null);
10279
10359
  const onlineCount = machines.filter((m2) => m2.status === "online").length;
@@ -10307,12 +10387,28 @@ function MachinesView({ onMachineAdded, onMachineRemoved }) {
10307
10387
  }
10308
10388
  async function handlePing(id2) {
10309
10389
  setPingStates((prev) => ({ ...prev, [id2]: "pinging…" }));
10310
- const status = await window.maestro.machines.ping(id2).catch(() => "unknown");
10311
- updateStatus({ machineId: id2, status });
10312
- if (status === "online") updateMachine({ id: id2, onboarded: true });
10313
- const label = status === "online" ? "Online" : "Offline";
10314
- setPingStates((prev) => ({ ...prev, [id2]: label }));
10315
- setTimeout(() => setPingStates((prev) => ({ ...prev, [id2]: "" })), 4e3);
10390
+ setPingDetails((prev) => ({ ...prev, [id2]: null }));
10391
+ const timeout = new Promise((resolve) => setTimeout(() => resolve(null), 25e3));
10392
+ const pingPromise = window.maestro.machines.pingVerbose(id2).catch(() => null);
10393
+ const result = await Promise.race([pingPromise, timeout]);
10394
+ if (!result) {
10395
+ setPingStates((prev) => ({ ...prev, [id2]: "Timeout" }));
10396
+ setPingDetails((prev) => ({ ...prev, [id2]: {
10397
+ steps: [{ label: "Ping timed out after 25s", ok: false }],
10398
+ suggestion: "Check on the remote:\n netstat -ano | findstr 9741\n devtunnel host <tunnel-id>"
10399
+ } }));
10400
+ return;
10401
+ }
10402
+ updateStatus({ machineId: id2, status: result.status });
10403
+ if (result.status === "online") updateMachine({ id: id2, onboarded: true });
10404
+ setPingStates((prev) => ({ ...prev, [id2]: result.status === "online" ? "Online" : "Offline" }));
10405
+ setPingDetails((prev) => ({ ...prev, [id2]: result }));
10406
+ if (result.status === "online") {
10407
+ setTimeout(() => {
10408
+ setPingStates((prev) => ({ ...prev, [id2]: "" }));
10409
+ setPingDetails((prev) => ({ ...prev, [id2]: null }));
10410
+ }, 4e3);
10411
+ }
10316
10412
  }
10317
10413
  async function handleAddressSet(id2, address) {
10318
10414
  updateMachine({ id: id2, address });
@@ -10377,7 +10473,12 @@ function MachinesView({ onMachineAdded, onMachineRemoved }) {
10377
10473
  onPing: () => handlePing(machine.id),
10378
10474
  onAddressSet: (address) => handleAddressSet(machine.id, address),
10379
10475
  onRdp: () => handleRdp(machine.id),
10380
- pingState: pingStates[machine.id] ?? ""
10476
+ pingState: pingStates[machine.id] ?? "",
10477
+ pingDetails: pingDetails[machine.id] ?? null,
10478
+ onDismissPing: () => {
10479
+ setPingStates((prev) => ({ ...prev, [machine.id]: "" }));
10480
+ setPingDetails((prev) => ({ ...prev, [machine.id]: null }));
10481
+ }
10381
10482
  },
10382
10483
  machine.id
10383
10484
  )),
@@ -11275,6 +11376,17 @@ function FullscreenOverlay({ session, onClose }) {
11275
11376
  window.addEventListener("keydown", handler);
11276
11377
  return () => window.removeEventListener("keydown", handler);
11277
11378
  }, [onClose]);
11379
+ reactExports.useEffect(() => {
11380
+ const interval = setInterval(() => {
11381
+ if (pendingPaste || ctxMenu) return;
11382
+ const active = document.activeElement;
11383
+ const textarea = containerRef.current?.querySelector("textarea");
11384
+ if (textarea && active !== textarea && !active?.closest("[data-no-fullscreen]")) {
11385
+ textarea.focus();
11386
+ }
11387
+ }, 500);
11388
+ return () => clearInterval(interval);
11389
+ }, [pendingPaste, ctxMenu]);
11278
11390
  const stateColor = STATE_BADGE_COLOR[session.state] ?? "var(--state-idle)";
11279
11391
  const machineName = session.tags["machine"] ?? session.machineId;
11280
11392
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { style: styles$8.overlay, children: [
@@ -11297,6 +11409,7 @@ function FullscreenOverlay({ session, onClose }) {
11297
11409
  {
11298
11410
  ref: containerRef,
11299
11411
  style: styles$8.terminalBody,
11412
+ onClick: () => refocusTerminal(),
11300
11413
  onContextMenu: (e) => {
11301
11414
  e.preventDefault();
11302
11415
  setCtxMenu({ x: e.clientX, y: e.clientY });
@@ -5,7 +5,7 @@
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline'; connect-src http://localhost:*" />
7
7
  <title>Maestro</title>
8
- <script type="module" crossorigin src="./assets/index-CAcCK5X-.js"></script>
8
+ <script type="module" crossorigin src="./assets/index-D1inqgrm.js"></script>
9
9
  <link rel="stylesheet" crossorigin href="./assets/index-DBLgxEKP.css">
10
10
  </head>
11
11
  <body>
package/dist/main.js CHANGED
@@ -180,6 +180,56 @@ async function main() {
180
180
  catch {
181
181
  logger.info('electron-rebuild not available — native modules may need manual rebuild');
182
182
  }
183
+ // Check devtunnel (needed for remote machine connectivity)
184
+ logger.info('Checking devtunnel (needed for remote machines)...');
185
+ let hasDevtunnel = false;
186
+ try {
187
+ execSyncGui(process.platform === 'win32' ? 'where devtunnel' : 'which devtunnel', { stdio: 'pipe' });
188
+ hasDevtunnel = true;
189
+ }
190
+ catch { /* not found */ }
191
+ if (hasDevtunnel) {
192
+ logger.info('devtunnel already installed');
193
+ }
194
+ else if (process.platform === 'win32') {
195
+ logger.info('Installing devtunnel via winget...');
196
+ try {
197
+ execSyncGui('winget install Microsoft.devtunnel --accept-package-agreements --accept-source-agreements', { stdio: childStdio });
198
+ hasDevtunnel = true;
199
+ logger.info('devtunnel installed');
200
+ }
201
+ catch {
202
+ logger.info('Could not install devtunnel — remote machines will not be available');
203
+ logger.info('Install manually: winget install Microsoft.devtunnel');
204
+ }
205
+ }
206
+ else {
207
+ logger.info('devtunnel not found — install it for remote machine support');
208
+ logger.info('See: https://learn.microsoft.com/en-us/azure/developer/dev-tunnels/');
209
+ }
210
+ if (hasDevtunnel) {
211
+ // Check if logged in
212
+ let loggedIn = false;
213
+ try {
214
+ execSyncGui('devtunnel user show', { stdio: 'pipe' });
215
+ loggedIn = true;
216
+ }
217
+ catch { /* not logged in */ }
218
+ if (!loggedIn) {
219
+ logger.info('Launching devtunnel login — complete authentication in your browser...');
220
+ try {
221
+ const { spawnSync: spawnSyncGui } = await import('child_process');
222
+ spawnSyncGui('devtunnel', ['user', 'login'], { stdio: 'inherit' });
223
+ logger.info('devtunnel authenticated');
224
+ }
225
+ catch {
226
+ logger.info('devtunnel login failed — you can login later via: devtunnel user login');
227
+ }
228
+ }
229
+ else {
230
+ logger.info('devtunnel authenticated');
231
+ }
232
+ }
183
233
  }
184
234
  // Launch Electron
185
235
  const electronArgs = planFile
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAwB,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,EAAE;IACtC,OAAO,CAAC,KAAK,CAAC,gCAAgC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,EAAE;IAC1C,OAAO,CAAC,KAAK,CAAC,iCAAiC,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,2DAA2D,CAAC;KACxE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;KACrB,QAAQ,CAAC,aAAa,EAAE,2CAA2C,CAAC;KACpE,MAAM,CAAC,mBAAmB,EAAE,uCAAuC,CAAC;KACpE,MAAM,CAAC,0BAA0B,EAAE,mCAAmC,EAAE,IAAI,CAAC;KAC7E,MAAM,CAAC,+BAA+B,EAAE,mDAAmD,EAAE,GAAG,CAAC;KACjG,MAAM,CAAC,cAAc,EAAE,wDAAwD,CAAC;KAChF,MAAM,CAAC,kBAAkB,EAAE,kCAAkC,CAAC;KAC9D,MAAM,CAAC,sBAAsB,EAAE,0CAA0C,CAAC;KAC1E,MAAM,CAAC,iBAAiB,EAAE,8CAA8C,CAAC;KACzE,MAAM,CAAC,YAAY,EAAE,8BAA8B,CAAC;KACpD,MAAM,CAAC,sBAAsB,EAAE,sCAAsC,CAAC;KACtE,MAAM,CAAC,aAAa,EAAE,qBAAqB,CAAC;KAC5C,MAAM,CAAC,UAAU,EAAE,gDAAgD,CAAC;KACpE,MAAM,CAAC,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,CAAC;KACtD,MAAM,CAAC,mBAAmB,EAAE,iDAAiD,EAAE,OAAO,EAAE,EAAE,CAAC;KAC3F,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC;KAC7C,MAAM,CAAC,YAAY,EAAE,2BAA2B,CAAC;KACjD,MAAM,CAAC,aAAa,EAAE,6CAA6C,CAAC;KACpE,MAAM,CAAC,SAAS,EAAE,+CAA+C,CAAC;KAClE,MAAM,CAAC,uBAAuB,EAAE,wCAAwC,CAAC;KACzE,MAAM,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;KACzD,MAAM,CAAC,UAAU,EAAE,oDAAoD,CAAC;KACxE,MAAM,CAAC,QAAQ,EAAE,8CAA8C,CAAC;KAChE,MAAM,CAAC,OAAO,EAAE,6CAA6C,CAAC;KAC9D,MAAM,CAAC,iBAAiB,EAAE,+CAA+C,CAAC,CAAC;AAE9E,SAAS,OAAO,CAAC,KAAa,EAAE,QAAkB;IAChD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO;QACxC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;QAC7E,CAAC,CAAC,OAAO,CAAC,QAAQ,KAAK,QAAQ;YAC7B,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;YAC3D,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACpE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAE,iDAAiD;AACnE,CAAC;AAED,OAAO,CAAC,KAAK,EAAE,CAAC;AAEhB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AAE1B,mEAAmE;AACnE,IAAI,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;IAC5D,IAAI,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AACxD,CAAC;AACD,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;IACxD,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;AACxB,CAAC;AACD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;IACnD,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AACvB,CAAC;AACD,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAC7C,CAAC;AAED,IAAI,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAEvB,KAAK,UAAU,IAAI;IACjB,IAAI,MAAqC,CAAC;IAC1C,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,CAAC;YAClB,SAAS,EAAE,IAAI,CAAC,WAAW,CAAuB;YAClD,YAAY,EAAE;gBACZ,WAAW,EAAE,IAAI,CAAC,UAAU,CAAqC;gBACjE,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAW,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7F,uBAAuB,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAW,CAAC,CAAC,CAAC,CAAC,SAAS;gBACtH,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;gBACjD,cAAc,EAAE,IAAI,CAAC,SAAS,CAAuB;gBACrD,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;aAC3D;YACD,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,KAAK;YAChC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAwB;YAC3C,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAW,CAAC,CAAC,CAAC,CAAC,SAAS;SAClE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACrG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAE/C,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAC1D,MAAM,YAAY,CAAC,IAAI,CAAC,cAAc,CAAW,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAC7D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;QACnD,mEAAmE;QACnE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAC7B,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAC5C,WAAW,EAAE,QAAQ,EAAE,WAAW,CACnC,CAAC;QACF,sEAAsE;QACtE,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;YAC3C,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,CAAC,GAAG,EAAE;gBACJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC;gBACxD,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC1D,OAAO,GAAG,CAAC;YACb,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAC;QACxC,WAAW,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAC5D,MAAM,YAAY,EAAE,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAChB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC;QAC9C,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAE5D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,uCAAuC;YACvC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,SAAS,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE;gBACrD,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ;aAC7C,CAAC,CAAC;YACH,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,0CAA0C;QAC1C,wFAAwF;QACxF,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO;YAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,CAAC;YACvE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAwB,CAAC;YACrD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,SAAkB,CAAC,CAAC,CAAC,MAAe,CAAC;YAElE,MAAM,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;YACnF,IAAI,CAAC;gBACH,WAAW,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;gBAC/D,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACzG,OAAO,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;gBAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,qDAAqD;YACrD,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;YACzD,IAAI,CAAC;gBACH,WAAW,CAAC,qCAAqC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;gBACvF,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,CAAC,IAAI,CAAC,yEAAyE,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,MAAM,YAAY,GAAG,QAAQ;YAC3B,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC;YACpC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAEd,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpF,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAChE,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,oBAAoB,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,GAAG,EAAE;YAClE,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC3D,QAAQ,EAAE,CAAC;QACb,CAAC,CAAC,CAAC;QACH,WAAW,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,CAAC,IAAI,CAAC,cAAc,GAAG,yBAAyB,CAAC,CAAC;QACxD,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACjB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAChE,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAW,CAAC;QAC3C,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC3B,+BAA+B;IACjC,CAAC;IAED,sFAAsF;IACtF,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAClE,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAI,IAAI,CAAC,OAAO,CAAc,CAAC,CAAC;QAClE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACvE,MAAM,CAAC,IAAI,CAAC,sCAAsC,MAAM,CAAC,IAAI,yBAAyB,CAAC,CAAC;QACxF,MAAM,QAAQ,GAAG,GAAG,EAAE,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAChC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,0BAA0B;IACzD,CAAC;IAED,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,eAA4E,CAAC;IACjF,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAC9D,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAClE,MAAM,GAAG,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACxB,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,QAAQ,IAAI,EAAE,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,CAAC,OAAO,CAAa,CAAC,CAAC;QACjF,MAAM,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;QACpD,QAAQ;QACR,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAwB;QACjD,SAAS,EAAE,IAAI,CAAC,WAAW,CAAwB;QACnD,KAAK,EAAE,IAAI,CAAC,OAAO,CAAwB;QAC3C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAa;QACpC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAwB;KAC1D,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,GAAG,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,MAAM,CAAC,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC;QAClC,MAAM,gBAAgB,CAAC,SAAS,EAAE,gBAAgB,OAAO,EAAE,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,eAAe,EAAE,IAAI,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,eAAe,EAAE,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rajat-rastogi/maestro",
3
- "version": "0.4.3",
3
+ "version": "0.5.1",
4
4
  "description": "Conduct your codebase — autonomous AI coding orchestrator",
5
5
  "type": "module",
6
6
  "main": "dist/main.js",
@@ -15,6 +15,7 @@
15
15
  "dist/dashboard/assets/",
16
16
  "defaults/",
17
17
  "app/out/",
18
+ "app/assets/",
18
19
  "app/package.json",
19
20
  "app/package-lock.json",
20
21
  "app/index.html",