@calltelemetry/cli 0.3.3 → 0.3.5

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 (69) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/lib/log.d.ts +13 -5
  3. package/dist/lib/log.d.ts.map +1 -1
  4. package/dist/lib/log.js +34 -10
  5. package/dist/lib/log.js.map +1 -1
  6. package/dist/lib/rpc.d.ts +7 -0
  7. package/dist/lib/rpc.d.ts.map +1 -1
  8. package/dist/lib/rpc.js +21 -0
  9. package/dist/lib/rpc.js.map +1 -1
  10. package/dist/lib/system.d.ts +20 -0
  11. package/dist/lib/system.d.ts.map +1 -1
  12. package/dist/lib/system.js +44 -1
  13. package/dist/lib/system.js.map +1 -1
  14. package/dist/ui/components/AppShell.d.ts +4 -1
  15. package/dist/ui/components/AppShell.d.ts.map +1 -1
  16. package/dist/ui/components/AppShell.js +4 -3
  17. package/dist/ui/components/AppShell.js.map +1 -1
  18. package/dist/ui/components/LogLevelBadge.d.ts +7 -0
  19. package/dist/ui/components/LogLevelBadge.d.ts.map +1 -0
  20. package/dist/ui/components/LogLevelBadge.js +14 -0
  21. package/dist/ui/components/LogLevelBadge.js.map +1 -0
  22. package/dist/ui/components/MeterBar.d.ts +15 -0
  23. package/dist/ui/components/MeterBar.d.ts.map +1 -0
  24. package/dist/ui/components/MeterBar.js +17 -0
  25. package/dist/ui/components/MeterBar.js.map +1 -0
  26. package/dist/ui/components/StepList.d.ts.map +1 -1
  27. package/dist/ui/components/StepList.js +5 -1
  28. package/dist/ui/components/StepList.js.map +1 -1
  29. package/dist/ui/components/index.d.ts +2 -0
  30. package/dist/ui/components/index.d.ts.map +1 -1
  31. package/dist/ui/components/index.js +2 -0
  32. package/dist/ui/components/index.js.map +1 -1
  33. package/dist/ui/hooks/index.d.ts +1 -0
  34. package/dist/ui/hooks/index.d.ts.map +1 -1
  35. package/dist/ui/hooks/index.js +1 -0
  36. package/dist/ui/hooks/index.js.map +1 -1
  37. package/dist/ui/hooks/useLogLevel.d.ts +12 -0
  38. package/dist/ui/hooks/useLogLevel.d.ts.map +1 -0
  39. package/dist/ui/hooks/useLogLevel.js +19 -0
  40. package/dist/ui/hooks/useLogLevel.js.map +1 -0
  41. package/dist/ui/views/DbSizeView.d.ts.map +1 -1
  42. package/dist/ui/views/DbSizeView.js +4 -3
  43. package/dist/ui/views/DbSizeView.js.map +1 -1
  44. package/dist/ui/views/DbTablesView.d.ts.map +1 -1
  45. package/dist/ui/views/DbTablesView.js +7 -4
  46. package/dist/ui/views/DbTablesView.js.map +1 -1
  47. package/dist/ui/views/DiagDatabaseView.d.ts.map +1 -1
  48. package/dist/ui/views/DiagDatabaseView.js +12 -6
  49. package/dist/ui/views/DiagDatabaseView.js.map +1 -1
  50. package/dist/ui/views/DockerStatusView.d.ts.map +1 -1
  51. package/dist/ui/views/DockerStatusView.js +12 -5
  52. package/dist/ui/views/DockerStatusView.js.map +1 -1
  53. package/dist/ui/views/MainMenu.d.ts.map +1 -1
  54. package/dist/ui/views/MainMenu.js +26 -10
  55. package/dist/ui/views/MainMenu.js.map +1 -1
  56. package/dist/ui/views/MigrateHistoryView.d.ts.map +1 -1
  57. package/dist/ui/views/MigrateHistoryView.js +7 -4
  58. package/dist/ui/views/MigrateHistoryView.js.map +1 -1
  59. package/dist/ui/views/UpdateView.js +8 -8
  60. package/dist/ui/views/UpdateView.js.map +1 -1
  61. package/dist/utils/parseDocker.d.ts +17 -0
  62. package/dist/utils/parseDocker.d.ts.map +1 -0
  63. package/dist/utils/parseDocker.js +67 -0
  64. package/dist/utils/parseDocker.js.map +1 -0
  65. package/dist/utils/parsePsql.d.ts +30 -0
  66. package/dist/utils/parsePsql.d.ts.map +1 -0
  67. package/dist/utils/parsePsql.js +75 -0
  68. package/dist/utils/parsePsql.js.map +1 -0
  69. package/package.json +1 -1
@@ -1,8 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { composeExec } from '../../lib/compose.js';
3
3
  import { DB_USER, DB_NAME, PG_ENV } from '../../lib/db.js';
4
- import { AppShell, Section, ShellOutput, Spinner, StatusLine } from '../components/index.js';
4
+ import { AppShell, Section, DataTable, Spinner, StatusLine } from '../components/index.js';
5
5
  import { useAsyncTask } from '../hooks/index.js';
6
+ import { parsePsqlTable, parsePsqlScalar } from '../../utils/parsePsql.js';
6
7
  export function DbTablesView({ name, onBack }) {
7
8
  const tablesTask = useAsyncTask(async () => {
8
9
  const safeName = name ? name.replace(/'/g, "''") : '';
@@ -11,14 +12,16 @@ export function DbTablesView({ name, onBack }) {
11
12
  : '';
12
13
  const query = `SELECT table_name, row_count, pg_size_pretty(total_bytes) AS total_size, pg_size_pretty(index_bytes) AS index_size, pg_size_pretty(table_bytes) AS table_size FROM (SELECT c.relname AS table_name, c.reltuples::BIGINT AS row_count, pg_total_relation_size(c.oid) AS total_bytes, pg_indexes_size(c.oid) AS index_bytes, pg_relation_size(c.oid) AS table_bytes FROM pg_class c LEFT JOIN pg_namespace n ON n.oid = c.relnamespace WHERE n.nspname = 'public' AND c.relkind = 'r' ${whereClause}) t ORDER BY total_bytes DESC;`;
13
14
  const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c', query], { env: PG_ENV, pipe: true });
14
- return (result.stdout ?? '').trim();
15
+ return parsePsqlTable((result.stdout ?? '').trim());
15
16
  });
16
17
  const sizeTask = useAsyncTask(async () => {
17
18
  const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c',
18
19
  `SELECT pg_size_pretty(pg_database_size('${DB_NAME}')) AS database_size;`], { env: PG_ENV, pipe: true });
19
- return (result.stdout ?? '').trim();
20
+ return parsePsqlScalar((result.stdout ?? '').trim());
20
21
  });
21
22
  const allDone = [tablesTask, sizeTask].every(t => t.status === 'done' || t.status === 'error');
22
- return (_jsxs(AppShell, { command: name ? `ct db tables ${name}` : 'ct db tables', onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: name ? `Table Sizes: ${name}` : 'All Table Sizes', children: [tablesTask.status === 'pending' && _jsx(Spinner, { label: "Querying table sizes..." }), tablesTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), tablesTask.status === 'done' && tablesTask.data && _jsx(ShellOutput, { content: tablesTask.data })] }), _jsxs(Section, { title: "Database Total Size", children: [sizeTask.status === 'pending' && _jsx(Spinner, { label: "Querying size..." }), sizeTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), sizeTask.status === 'done' && sizeTask.data && _jsx(ShellOutput, { content: sizeTask.data })] })] }));
23
+ return (_jsxs(AppShell, { command: name ? `ct db tables ${name}` : 'ct db tables', onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: name ? `Table Sizes: ${name}` : 'All Table Sizes', children: [tablesTask.status === 'pending' && _jsx(Spinner, { label: "Querying table sizes..." }), tablesTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), tablesTask.status === 'done' && tablesTask.data && (tablesTask.data.rows.length > 0
24
+ ? _jsx(DataTable, { columns: tablesTask.data.columns, rows: tablesTask.data.rows })
25
+ : _jsx(StatusLine, { status: "ok", label: "No tables found" }))] }), _jsxs(Section, { title: "Database Total Size", children: [sizeTask.status === 'pending' && _jsx(Spinner, { label: "Querying size..." }), sizeTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), sizeTask.status === 'done' && sizeTask.data && (_jsx(StatusLine, { status: "ok", label: `Database size: ${sizeTask.data}` }))] })] }));
23
26
  }
24
27
  //# sourceMappingURL=DbTablesView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DbTablesView.js","sourceRoot":"","sources":["../../../src/ui/views/DbTablesView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DbTablesView.js","sourceRoot":"","sources":["../../../src/ui/views/DbTablesView.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DiagDatabaseView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/DiagDatabaseView.tsx"],"names":[],"mappings":"AAaA,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,qBAAqB,2CAwEjE"}
1
+ {"version":3,"file":"DiagDatabaseView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/DiagDatabaseView.tsx"],"names":[],"mappings":"AAgBA,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,qBAAqB,2CA8EjE"}
@@ -2,14 +2,16 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { execa } from 'execa';
3
3
  import { composeExec } from '../../lib/compose.js';
4
4
  import { DB_USER, DB_NAME, PG_ENV } from '../../lib/db.js';
5
- import { AppShell, Section, ShellOutput, Spinner, StatusLine } from '../components/index.js';
5
+ import { AppShell, Section, DataTable, Spinner, StatusLine } from '../components/index.js';
6
6
  import { useAsyncTask } from '../hooks/index.js';
7
+ import { parsePsqlTable } from '../../utils/parsePsql.js';
8
+ import { parseDockerTable } from '../../utils/parseDocker.js';
7
9
  export function DiagDatabaseView({ onBack }) {
8
10
  // Docker stats
9
11
  const statsTask = useAsyncTask(async () => {
10
12
  try {
11
13
  const { stdout } = await execa('docker', ['stats', '--no-stream'], { stdout: 'pipe', stderr: 'pipe' });
12
- return stdout;
14
+ return parseDockerTable(stdout.trim());
13
15
  }
14
16
  catch {
15
17
  return null;
@@ -30,17 +32,21 @@ export function DiagDatabaseView({ onBack }) {
30
32
  for (const [title, query] of queries) {
31
33
  try {
32
34
  const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c', query], { env: PG_ENV, pipe: true });
33
- results.push({ title, output: (result.stdout ?? '').trim() });
35
+ results.push({ title, table: parsePsqlTable((result.stdout ?? '').trim()) });
34
36
  }
35
37
  catch {
36
- results.push({ title, output: 'Query failed', error: true });
38
+ results.push({ title, table: { columns: [], rows: [] }, error: true });
37
39
  }
38
40
  }
39
41
  return results;
40
42
  });
41
43
  const allDone = [statsTask, queriesTask].every(t => t.status === 'done' || t.status === 'error');
42
- return (_jsxs(AppShell, { command: "ct diag database", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Container CPU/Memory Usage", children: [statsTask.status === 'pending' && _jsx(Spinner, { label: "Loading docker stats..." }), statsTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not get docker stats" }), statsTask.status === 'done' && statsTask.data === null && _jsx(StatusLine, { status: "warn", label: "Docker stats not available" }), statsTask.status === 'done' && statsTask.data && _jsx(ShellOutput, { content: statsTask.data })] }), queriesTask.status === 'pending' && (_jsx(Section, { title: "Database Queries", children: _jsx(Spinner, { label: "Running database diagnostics..." }) })), queriesTask.status === 'error' && (_jsx(Section, { title: "Database Queries", children: _jsx(StatusLine, { status: "fail", label: "Database diagnostics failed" }) })), queriesTask.status === 'done' && queriesTask.data && queriesTask.data.map((result, i) => (_jsx(Section, { title: result.title, children: result.error
44
+ return (_jsxs(AppShell, { command: "ct diag database", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Container CPU/Memory Usage", children: [statsTask.status === 'pending' && _jsx(Spinner, { label: "Loading docker stats..." }), statsTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not get docker stats" }), statsTask.status === 'done' && statsTask.data === null && _jsx(StatusLine, { status: "warn", label: "Docker stats not available" }), statsTask.status === 'done' && statsTask.data && (statsTask.data.rows.length > 0
45
+ ? _jsx(DataTable, { columns: statsTask.data.columns, rows: statsTask.data.rows })
46
+ : _jsx(StatusLine, { status: "ok", label: "No containers running" }))] }), queriesTask.status === 'pending' && (_jsx(Section, { title: "Database Queries", children: _jsx(Spinner, { label: "Running database diagnostics..." }) })), queriesTask.status === 'error' && (_jsx(Section, { title: "Database Queries", children: _jsx(StatusLine, { status: "fail", label: "Database diagnostics failed" }) })), queriesTask.status === 'done' && queriesTask.data && queriesTask.data.map((result, i) => (_jsx(Section, { title: result.title, children: result.error
43
47
  ? _jsx(StatusLine, { status: "fail", label: "Query failed" })
44
- : _jsx(ShellOutput, { content: result.output }) }, i)))] }));
48
+ : result.table.rows.length > 0
49
+ ? _jsx(DataTable, { columns: result.table.columns, rows: result.table.rows })
50
+ : _jsx(StatusLine, { status: "ok", label: "None found" }) }, i)))] }));
45
51
  }
46
52
  //# sourceMappingURL=DiagDatabaseView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiagDatabaseView.js","sourceRoot":"","sources":["../../../src/ui/views/DiagDatabaseView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DiagDatabaseView.js","sourceRoot":"","sources":["../../../src/ui/views/DiagDatabaseView.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DockerStatusView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/DockerStatusView.tsx"],"names":[],"mappings":"AAMA,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,qBAAqB,2CA8DjE"}
1
+ {"version":3,"file":"DockerStatusView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/DockerStatusView.tsx"],"names":[],"mappings":"AAOA,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,EAAE,qBAAqB,2CAoEjE"}
@@ -1,13 +1,14 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { execa } from 'execa';
3
3
  import { compose } from '../../lib/compose.js';
4
- import { AppShell, Section, ShellOutput, Spinner, StatusLine } from '../components/index.js';
4
+ import { AppShell, Section, DataTable, Spinner, StatusLine } from '../components/index.js';
5
5
  import { useAsyncTask } from '../hooks/index.js';
6
+ import { parseDockerTable } from '../../utils/parseDocker.js';
6
7
  export function DockerStatusView({ onBack }) {
7
8
  // Section 1: Containers
8
9
  const containerTask = useAsyncTask(async () => {
9
10
  const result = await compose(['ps'], { pipe: true });
10
- return result.stdout ?? '';
11
+ return parseDockerTable(String(result.stdout ?? '').trim());
11
12
  });
12
13
  // Section 2: Images
13
14
  const imageTask = useAsyncTask(async () => {
@@ -16,7 +17,7 @@ export function DockerStatusView({ onBack }) {
16
17
  '--format',
17
18
  'table {{.Repository}}\t{{.Tag}}\t{{.Size}}',
18
19
  ], { stdout: 'pipe', stderr: 'pipe' });
19
- return stdout;
20
+ return parseDockerTable(stdout.trim());
20
21
  });
21
22
  // Section 3: Networks
22
23
  const networkTask = useAsyncTask(async () => {
@@ -25,11 +26,17 @@ export function DockerStatusView({ onBack }) {
25
26
  '--filter', 'name=ct',
26
27
  '--format', 'table {{.Name}}\t{{.Driver}}\t{{.Scope}}',
27
28
  ], { stdout: 'pipe', stderr: 'pipe' });
28
- return stdout;
29
+ return parseDockerTable(stdout.trim());
29
30
  });
30
31
  // Exit when all 3 tasks complete
31
32
  const allDone = [containerTask, imageTask, networkTask]
32
33
  .every(t => t.status === 'done' || t.status === 'error');
33
- return (_jsxs(AppShell, { command: "ct docker status", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Containers", children: [containerTask.status === 'pending' && _jsx(Spinner, { label: "Checking containers..." }), containerTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list containers" }), containerTask.status === 'done' && containerTask.data && (_jsx(ShellOutput, { content: containerTask.data }))] }), _jsxs(Section, { title: "Images", children: [imageTask.status === 'pending' && _jsx(Spinner, { label: "Loading images..." }), imageTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list images" }), imageTask.status === 'done' && imageTask.data && (_jsx(ShellOutput, { content: imageTask.data }))] }), _jsxs(Section, { title: "Networks", children: [networkTask.status === 'pending' && _jsx(Spinner, { label: "Loading networks..." }), networkTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list networks" }), networkTask.status === 'done' && networkTask.data && (_jsx(ShellOutput, { content: networkTask.data }))] })] }));
34
+ return (_jsxs(AppShell, { command: "ct docker status", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Containers", children: [containerTask.status === 'pending' && _jsx(Spinner, { label: "Checking containers..." }), containerTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list containers" }), containerTask.status === 'done' && containerTask.data && (containerTask.data.rows.length > 0
35
+ ? _jsx(DataTable, { columns: containerTask.data.columns, rows: containerTask.data.rows })
36
+ : _jsx(StatusLine, { status: "warn", label: "No containers running" }))] }), _jsxs(Section, { title: "Images", children: [imageTask.status === 'pending' && _jsx(Spinner, { label: "Loading images..." }), imageTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list images" }), imageTask.status === 'done' && imageTask.data && (imageTask.data.rows.length > 0
37
+ ? _jsx(DataTable, { columns: imageTask.data.columns, rows: imageTask.data.rows })
38
+ : _jsx(StatusLine, { status: "warn", label: "No images found" }))] }), _jsxs(Section, { title: "Networks", children: [networkTask.status === 'pending' && _jsx(Spinner, { label: "Loading networks..." }), networkTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Could not list networks" }), networkTask.status === 'done' && networkTask.data && (networkTask.data.rows.length > 0
39
+ ? _jsx(DataTable, { columns: networkTask.data.columns, rows: networkTask.data.rows })
40
+ : _jsx(StatusLine, { status: "warn", label: "No networks found" }))] })] }));
34
41
  }
35
42
  //# sourceMappingURL=DockerStatusView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DockerStatusView.js","sourceRoot":"","sources":["../../../src/ui/views/DockerStatusView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DockerStatusView.js","sourceRoot":"","sources":["../../../src/ui/views/DockerStatusView.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MainMenu.d.ts","sourceRoot":"","sources":["../../../src/ui/views/MainMenu.tsx"],"names":[],"mappings":"AA4KA,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,aAAa,2CAuJxE"}
1
+ {"version":3,"file":"MainMenu.d.ts","sourceRoot":"","sources":["../../../src/ui/views/MainMenu.tsx"],"names":[],"mappings":"AAiLA,UAAU,aAAa;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,YAAY,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,QAAQ,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,aAAa,2CAoOxE"}
@@ -1,9 +1,12 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useCallback, useEffect } from 'react';
3
3
  import { Box, Text, useInput } from 'ink';
4
- import { AppShell, Spinner } from '../components/index.js';
5
- import { usePolling } from '../hooks/index.js';
4
+ import { AppShell, Spinner, MeterBar, LogLevelBadge } from '../components/index.js';
5
+ import { usePolling, useLogLevel } from '../hooks/index.js';
6
6
  import { getServiceList } from '../../lib/services.js';
7
+ import { getSystemMetrics } from '../../lib/system.js';
8
+ import { getAppHealth } from '../../lib/rpc.js';
9
+ import { healthIcon, healthColor, extractUptime } from '../utils/serviceDisplay.js';
7
10
  import { LOGO } from '../../lib/brand.js';
8
11
  // View imports
9
12
  import { StatusView } from './StatusView.js';
@@ -165,16 +168,23 @@ export function MainMenu({ version, onCliCommand, onExit }) {
165
168
  const [menuCursor, setMenuCursor] = useState(0);
166
169
  const [menuStack, setMenuStack] = useState([]);
167
170
  const [logsService, setLogsService] = useState(null);
168
- const { data: services, stop: stopPolling, start: startPolling } = usePolling(getServiceList, 5000, false);
171
+ const { level: logLevel, cycle: cycleLogLevel } = useLogLevel();
172
+ const { data: services, stop: stopSvcPolling, start: startSvcPolling } = usePolling(getServiceList, 5000, false);
173
+ const { data: metrics, stop: stopMetrics, start: startMetrics } = usePolling(getSystemMetrics, 10000, false);
174
+ const { data: appHealth, stop: stopHealth, start: startHealth } = usePolling(getAppHealth, 15000, false);
169
175
  // Control polling based on phase — only poll when on home screen
170
176
  useEffect(() => {
171
177
  if (phase === 'home') {
172
- startPolling();
178
+ startSvcPolling();
179
+ startMetrics();
180
+ startHealth();
173
181
  }
174
182
  else {
175
- stopPolling();
183
+ stopSvcPolling();
184
+ stopMetrics();
185
+ stopHealth();
176
186
  }
177
- }, [phase, startPolling, stopPolling]);
187
+ }, [phase, startSvcPolling, stopSvcPolling, startMetrics, stopMetrics, startHealth, stopHealth]);
178
188
  const goHome = useCallback(() => {
179
189
  setPhase('home');
180
190
  setActiveView(null);
@@ -234,6 +244,9 @@ export function MainMenu({ version, onCliCommand, onExit }) {
234
244
  setMenuCursor(0);
235
245
  }
236
246
  }
247
+ else if (input === 'd') {
248
+ cycleLogLevel();
249
+ }
237
250
  else if (key.escape || input === 'q') {
238
251
  if (hasParent) {
239
252
  setMenuStack(prev => prev.slice(0, -1));
@@ -253,14 +266,17 @@ export function MainMenu({ version, onCliCommand, onExit }) {
253
266
  return _jsx(ServiceLogsView, { service: logsService, onBack: goHome });
254
267
  }
255
268
  // --- Phase: home ---
256
- const runningCount = serviceList.filter(s => s.state === 'running').length;
257
269
  const healthyCount = serviceList.filter(s => s.health === 'healthy').length;
258
270
  const unhealthyCount = serviceList.filter(s => s.health === 'unhealthy').length;
259
271
  const stoppedCount = serviceList.filter(s => s.state === 'exited' || s.state === 'dead').length;
260
- return (_jsxs(AppShell, { title: `CallTelemetry CLI v${version}`, children: [_jsx(Box, { paddingLeft: 1, marginBottom: 1, children: _jsx(Text, { color: "cyan", children: LOGO }) }), !services && (_jsx(Box, { paddingLeft: 2, marginBottom: 1, children: _jsx(Spinner, { label: "Loading services..." }) })), serviceList.length > 0 && (_jsx(Box, { paddingLeft: 2, marginBottom: 1, children: _jsxs(Text, { children: [_jsx(Text, { bold: true, children: "Services:" }), _jsxs(Text, { children: [" ", serviceList.length, " containers"] }), healthyCount > 0 && _jsxs(Text, { color: "green", children: [" \u2014 ", healthyCount, " healthy"] }), unhealthyCount > 0 && _jsxs(Text, { color: "yellow", children: [", ", unhealthyCount, " unhealthy"] }), stoppedCount > 0 && _jsxs(Text, { color: "red", children: [", ", stoppedCount, " stopped"] })] }) })), _jsx(Box, { flexDirection: "column", paddingLeft: 2, paddingTop: serviceList.length > 0 ? 0 : 1, children: menuDisplayItems.map((entry, i) => {
272
+ return (_jsxs(AppShell, { title: `CallTelemetry CLI v${version}`, logLevel: logLevel, children: [_jsx(Box, { paddingLeft: 1, marginBottom: 1, children: _jsx(Text, { color: "cyan", children: LOGO }) }), _jsx(Box, { flexDirection: "column", paddingLeft: 2, marginBottom: 1, children: metrics ? (_jsxs(_Fragment, { children: [_jsx(MeterBar, { label: "RAM", percent: metrics.ram.percent, detail: metrics.ram.label }), _jsx(MeterBar, { label: "Disk", percent: metrics.disk.usedPercent, detail: metrics.disk.label }), _jsx(MeterBar, { label: "CPU", percent: metrics.cpu.percent, detail: metrics.cpu.label, thresholds: [80, 95] })] })) : (_jsx(Spinner, { label: "Loading system metrics..." })) }), _jsxs(Box, { paddingLeft: 2, marginBottom: 1, children: [_jsx(Text, { bold: true, children: 'App ' }), appHealth === undefined ? (_jsx(Text, { dimColor: true, children: "checking..." })) : (_jsxs(_Fragment, { children: [_jsxs(Text, { color: appHealth.overall === 'healthy' ? 'green' : appHealth.overall === 'degraded' ? 'yellow' : 'red', children: [appHealth.overall === 'healthy' ? '●' : appHealth.overall === 'degraded' ? '▲' : '✘', ` ${appHealth.overall}`] }), _jsx(Text, { dimColor: true, children: ' — ' }), _jsx(Text, { color: appHealth.api ? 'green' : 'red', children: appHealth.api ? 'API up' : 'API down' }), _jsx(Text, { dimColor: true, children: ' · ' }), _jsx(Text, { color: appHealth.rpc ? 'green' : 'red', children: appHealth.rpc ? 'RPC connected' : 'RPC timeout' }), _jsx(Text, { dimColor: true, children: ' · ' }), _jsx(Text, { color: appHealth.dbConnected ? 'green' : 'red', children: appHealth.dbConnected ? 'DB connected' : 'DB unreachable' }), (() => {
273
+ const webSvc = serviceList.find(s => s.service === 'web');
274
+ const uptime = webSvc ? extractUptime(webSvc.status) : '';
275
+ return uptime && uptime !== 'exited' ? (_jsxs(_Fragment, { children: [_jsx(Text, { dimColor: true, children: ' · ' }), _jsxs(Text, { dimColor: true, children: ["Up ", uptime] })] })) : null;
276
+ })()] }))] }), !services && (_jsx(Box, { paddingLeft: 2, marginBottom: 1, children: _jsx(Spinner, { label: "Loading containers..." }) })), serviceList.length > 0 && (_jsxs(Box, { flexDirection: "column", paddingLeft: 2, marginBottom: 1, children: [_jsxs(Box, { marginBottom: 0, children: [_jsx(Text, { bold: true, children: "Containers" }), _jsxs(Text, { dimColor: true, children: [' ', serviceList.length, " total"] }), healthyCount > 0 && _jsxs(Text, { color: "green", children: [" \u2014 ", healthyCount, " healthy"] }), unhealthyCount > 0 && _jsxs(Text, { color: "yellow", children: [", ", unhealthyCount, " unhealthy"] }), stoppedCount > 0 && _jsxs(Text, { color: "red", children: [", ", stoppedCount, " stopped"] })] }), _jsx(Box, { flexWrap: "wrap", children: serviceList.map(svc => (_jsxs(Box, { marginRight: 1, children: [_jsx(Text, { color: healthColor(svc.health, svc.state), children: healthIcon(svc.health, svc.state) }), _jsx(Text, { dimColor: true, children: ` ${svc.service}` })] }, svc.service))) })] })), _jsx(Box, { paddingLeft: 2, children: _jsx(Text, { dimColor: true, children: '─'.repeat(50) }) }), _jsx(Box, { flexDirection: "column", paddingLeft: 2, paddingTop: 1, children: menuDisplayItems.map((entry, i) => {
261
277
  const isActive = i === menuCursor;
262
278
  const prefix = isActive ? '❯' : ' ';
263
279
  return (_jsxs(Box, { children: [_jsx(Text, { color: isActive ? 'cyan' : undefined, bold: isActive, children: `${prefix} ${entry.label.padEnd(16)}` }), _jsx(Text, { dimColor: true, children: entry.description })] }, `menu-${i}`));
264
- }) }), _jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsx(Text, { dimColor: true, children: '↑↓ Navigate Enter Select q Quit' }) })] }));
280
+ }) }), _jsxs(Box, { paddingLeft: 2, paddingTop: 1, children: [_jsx(Text, { dimColor: true, children: '↑↓ Navigate Enter Select d Log Level q Quit' }), logLevel !== 'normal' && (_jsxs(_Fragment, { children: [_jsx(Text, { children: " " }), _jsx(LogLevelBadge, { level: logLevel })] }))] })] }));
265
281
  }
266
282
  //# sourceMappingURL=MainMenu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MainMenu.js","sourceRoot":"","sources":["../../../src/ui/views/MainMenu.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MainMenu.js","sourceRoot":"","sources":["../../../src/ui/views/MainMenu.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MigrateHistoryView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/MigrateHistoryView.tsx"],"names":[],"mappings":"AAMA,UAAU,uBAAuB;IAC/B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,uBAAuB,2CAkCrE"}
1
+ {"version":3,"file":"MigrateHistoryView.d.ts","sourceRoot":"","sources":["../../../src/ui/views/MigrateHistoryView.tsx"],"names":[],"mappings":"AAOA,UAAU,uBAAuB;IAC/B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,uBAAuB,2CAwCrE"}
@@ -1,20 +1,23 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { composeExec } from '../../lib/compose.js';
3
3
  import { DB_USER, DB_NAME, PG_ENV } from '../../lib/db.js';
4
- import { AppShell, Section, ShellOutput, Spinner, StatusLine } from '../components/index.js';
4
+ import { AppShell, Section, DataTable, Spinner, StatusLine } from '../components/index.js';
5
5
  import { useAsyncTask } from '../hooks/index.js';
6
+ import { parsePsqlTable, parsePsqlScalar } from '../../utils/parsePsql.js';
6
7
  export function MigrateHistoryView({ onBack }) {
7
8
  const historyTask = useAsyncTask(async () => {
8
9
  const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c',
9
10
  'SELECT version, inserted_at FROM schema_migrations ORDER BY version DESC LIMIT 10;'], { env: PG_ENV, pipe: true });
10
- return (result.stdout ?? '').trim();
11
+ return parsePsqlTable((result.stdout ?? '').trim());
11
12
  });
12
13
  const countTask = useAsyncTask(async () => {
13
14
  const result = await composeExec('db', ['psql', '-U', DB_USER, '-d', DB_NAME, '-c',
14
15
  'SELECT COUNT(*) as total_migrations FROM schema_migrations;'], { env: PG_ENV, pipe: true });
15
- return (result.stdout ?? '').trim();
16
+ return parsePsqlScalar((result.stdout ?? '').trim());
16
17
  });
17
18
  const allDone = [historyTask, countTask].every(t => t.status === 'done' || t.status === 'error');
18
- return (_jsxs(AppShell, { command: "ct migrate history", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Last 10 Applied Migrations", children: [historyTask.status === 'pending' && _jsx(Spinner, { label: "Querying migrations..." }), historyTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), historyTask.status === 'done' && historyTask.data && _jsx(ShellOutput, { content: historyTask.data })] }), _jsxs(Section, { title: "Migration Count", children: [countTask.status === 'pending' && _jsx(Spinner, { label: "Counting..." }), countTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), countTask.status === 'done' && countTask.data && _jsx(ShellOutput, { content: countTask.data })] })] }));
19
+ return (_jsxs(AppShell, { command: "ct migrate history", onBack: onBack, isComplete: allDone, children: [_jsxs(Section, { title: "Last 10 Applied Migrations", children: [historyTask.status === 'pending' && _jsx(Spinner, { label: "Querying migrations..." }), historyTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), historyTask.status === 'done' && historyTask.data && (historyTask.data.rows.length > 0
20
+ ? _jsx(DataTable, { columns: historyTask.data.columns, rows: historyTask.data.rows })
21
+ : _jsx(StatusLine, { status: "ok", label: "No migrations found" }))] }), _jsxs(Section, { title: "Migration Count", children: [countTask.status === 'pending' && _jsx(Spinner, { label: "Counting..." }), countTask.status === 'error' && _jsx(StatusLine, { status: "fail", label: "Query failed" }), countTask.status === 'done' && countTask.data && (_jsx(StatusLine, { status: "ok", label: `${countTask.data} total migrations` }))] })] }));
19
22
  }
20
23
  //# sourceMappingURL=MigrateHistoryView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MigrateHistoryView.js","sourceRoot":"","sources":["../../../src/ui/views/MigrateHistoryView.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAMjD,MAAM,UAAU,kBAAkB,CAAC,EAAE,MAAM,EAA2B;IAEpE,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE;QAC1C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EACnC,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;YAC1C,oFAAoF,CAAC,EACtF,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,IAAI,EAAE;QACxC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,EACnC,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;YAC1C,6DAA6D,CAAC,EAC/D,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAEjG,OAAO,CACL,MAAC,QAAQ,IAAC,OAAO,EAAC,oBAAoB,EAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,aACxE,MAAC,OAAO,IAAC,KAAK,EAAC,4BAA4B,aACxC,WAAW,CAAC,MAAM,KAAK,SAAS,IAAI,KAAC,OAAO,IAAC,KAAK,EAAC,wBAAwB,GAAG,EAC9E,WAAW,CAAC,MAAM,KAAK,OAAO,IAAI,KAAC,UAAU,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,cAAc,GAAG,EACnF,WAAW,CAAC,MAAM,KAAK,MAAM,IAAI,WAAW,CAAC,IAAI,IAAI,KAAC,WAAW,IAAC,OAAO,EAAE,WAAW,CAAC,IAAI,GAAI,IACxF,EACV,MAAC,OAAO,IAAC,KAAK,EAAC,iBAAiB,aAC7B,SAAS,CAAC,MAAM,KAAK,SAAS,IAAI,KAAC,OAAO,IAAC,KAAK,EAAC,aAAa,GAAG,EACjE,SAAS,CAAC,MAAM,KAAK,OAAO,IAAI,KAAC,UAAU,IAAC,MAAM,EAAC,MAAM,EAAC,KAAK,EAAC,cAAc,GAAG,EACjF,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,IAAI,KAAC,WAAW,IAAC,OAAO,EAAE,SAAS,CAAC,IAAI,GAAI,IAClF,IACD,CACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"MigrateHistoryView.js","sourceRoot":"","sources":["../../../src/ui/views/MigrateHistoryView.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { useState, useEffect, useMemo, useCallback } from 'react';
3
3
  import { Box, Text, useApp, useInput } from 'ink';
4
4
  import { join } from 'node:path';
5
5
  import { AppShell, Section, Spinner, StatusBox, KeyValue, Confirm, StepList, TextInput } from '../components/index.js';
6
- import { useAsyncTask, useStepRunner } from '../hooks/index.js';
6
+ import { useAsyncTask, useStepRunner, useLogLevel } from '../hooks/index.js';
7
7
  import { fetchLatestVersion, fetchAvailableVersions, downloadBundle, checkImageAvailabilityQuiet, extractImages } from '../../lib/bundle.js';
8
8
  import { checkRam, checkDiskSpace, getDockerVersion } from '../../lib/system.js';
9
9
  import { generateSelfSignedCerts } from '../../lib/certs.js';
@@ -52,7 +52,7 @@ export function UpdateView({ onBack }) {
52
52
  const [showAll, setShowAll] = useState(false);
53
53
  const [showCustom, setShowCustom] = useState(false);
54
54
  const [customValue, setCustomValue] = useState('');
55
- const [showVerbose, setShowVerbose] = useState(false);
55
+ const { level: logLevel, cycle: cycleLogLevel } = useLogLevel();
56
56
  // --- Phase: fetch ---
57
57
  const fetchTask = useAsyncTask(async () => {
58
58
  const [current, stable, latest, all] = await Promise.all([
@@ -274,9 +274,9 @@ export function UpdateView({ onBack }) {
274
274
  }
275
275
  return;
276
276
  }
277
- // Toggle verbose output during execute phase
278
- if (phase === 'execute' && input === 'v') {
279
- setShowVerbose(prev => !prev);
277
+ // Cycle log level during execute/preflight/done phases
278
+ if (input === 'd') {
279
+ cycleLogLevel();
280
280
  return;
281
281
  }
282
282
  // confirm is handled by <Confirm> component
@@ -326,7 +326,7 @@ export function UpdateView({ onBack }) {
326
326
  }
327
327
  // --- Render ---
328
328
  const isComplete = phase === 'done' || phase === 'error' || executeFailed;
329
- return (_jsxs(AppShell, { command: "ct update", onBack: onBack, isComplete: isComplete, children: [phase === 'fetch' && (_jsx(Section, { title: "Update", children: _jsx(Spinner, { label: "Fetching available versions..." }) })), phase === 'select' && versions && (_jsxs(_Fragment, { children: [_jsx(Section, { title: "Current Version", children: _jsx(Box, { paddingLeft: 2, children: _jsx(Text, { bold: true, children: versions.current }) }) }), _jsx(Section, { title: "Available Versions", children: showCustom ? (_jsxs(Box, { paddingLeft: 2, flexDirection: "column", children: [_jsx(TextInput, { label: "Version", value: customValue, onChange: setCustomValue, onSubmit: handleCustomSubmit, placeholder: "e.g. 0.8.6-rc49" }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: true, children: "Enter to confirm Esc to cancel" }) })] })) : (_jsxs(Box, { flexDirection: "column", paddingLeft: 2, children: [displayVersions.map((v, i) => {
329
+ return (_jsxs(AppShell, { command: "ct update", onBack: onBack, isComplete: isComplete, logLevel: logLevel, children: [phase === 'fetch' && (_jsx(Section, { title: "Update", children: _jsx(Spinner, { label: "Fetching available versions..." }) })), phase === 'select' && versions && (_jsxs(_Fragment, { children: [_jsx(Section, { title: "Current Version", children: _jsx(Box, { paddingLeft: 2, children: _jsx(Text, { bold: true, children: versions.current }) }) }), _jsx(Section, { title: "Available Versions", children: showCustom ? (_jsxs(Box, { paddingLeft: 2, flexDirection: "column", children: [_jsx(TextInput, { label: "Version", value: customValue, onChange: setCustomValue, onSubmit: handleCustomSubmit, placeholder: "e.g. 0.8.6-rc49" }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { dimColor: true, children: "Enter to confirm Esc to cancel" }) })] })) : (_jsxs(Box, { flexDirection: "column", paddingLeft: 2, children: [displayVersions.map((v, i) => {
330
330
  const isActive = i === cursor;
331
331
  const dir = versionDirection(versions.current, v);
332
332
  const dl = directionLabel(dir);
@@ -336,14 +336,14 @@ export function UpdateView({ onBack }) {
336
336
  const customIdx = displayVersions.length + (hasMore ? 1 : 0);
337
337
  const isActive = cursor === customIdx;
338
338
  return (_jsxs(Box, { children: [_jsx(Text, { color: isActive ? 'cyan' : undefined, bold: isActive, children: isActive ? '❯ ' : ' ' }), _jsx(Text, { color: isActive ? 'cyan' : undefined, bold: isActive, children: 'Custom...'.padEnd(26) }), _jsx(Text, { dimColor: true, children: "Enter a specific version" })] }));
339
- })()] })) }), !showCustom && (_jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsx(Text, { dimColor: true, children: "\u2191\u2193 Navigate \u2192/Enter Select \u2190 Back c Custom q Back" }) }))] })), phase === 'preflight' && (_jsx(Section, { title: "Pre-flight Checks", children: _jsx(StepList, { steps: preflightRunner.states }) })), phase === 'confirm' && versions && selectedVersion && (_jsxs(Section, { title: "Update Summary", children: [_jsx(KeyValue, { items: [
339
+ })()] })) }), !showCustom && (_jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsx(Text, { dimColor: true, children: "\u2191\u2193 Navigate \u2192/Enter Select \u2190 Back c Custom d Log Level q Back" }) }))] })), phase === 'preflight' && (_jsx(Section, { title: "Pre-flight Checks", children: _jsx(StepList, { steps: preflightRunner.states, expanded: logLevel !== 'normal' }) })), phase === 'confirm' && versions && selectedVersion && (_jsxs(Section, { title: "Update Summary", children: [_jsx(KeyValue, { items: [
340
340
  { key: 'Current Version', value: versions.current },
341
341
  { key: 'Target Version', value: selectedVersion },
342
342
  { key: 'Direction', value: directionLabel(direction).text },
343
343
  ] }), direction === 'downgrade' && (_jsx(Box, { marginTop: 1, paddingLeft: 2, children: _jsx(StatusBox, { variant: "warning", title: "DOWNGRADE WARNING", lines: [
344
344
  `You are downgrading from ${versions.current} to ${selectedVersion}.`,
345
345
  'This may cause data incompatibilities.',
346
- ] }) })), _jsx(Box, { marginTop: 1, paddingLeft: 2, children: _jsx(Confirm, { message: `Proceed with update to ${selectedVersion}?`, onConfirm: handleConfirm }) })] })), phase === 'execute' && (_jsxs(Section, { title: `Updating to ${selectedVersion}`, children: [_jsx(StepList, { steps: executeRunner.states, expanded: showVerbose }), executeFailed && (_jsx(Box, { marginTop: 1, paddingLeft: 2, flexDirection: "column", children: _jsx(StatusBox, { variant: "error", title: "Update failed", lines: executeErrorLines }) })), _jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsxs(Text, { dimColor: true, children: [showVerbose ? 'v Compact' : 'v Verbose', executeFailed ? ' q Back' : ''] }) })] })), phase === 'done' && versions && selectedVersion && (_jsx(Box, { paddingLeft: 2, children: _jsx(StatusBox, { variant: "success", title: "Update complete!", lines: [
346
+ ] }) })), _jsx(Box, { marginTop: 1, paddingLeft: 2, children: _jsx(Confirm, { message: `Proceed with update to ${selectedVersion}?`, onConfirm: handleConfirm }) })] })), phase === 'execute' && (_jsxs(Section, { title: `Updating to ${selectedVersion}`, children: [_jsx(StepList, { steps: executeRunner.states, expanded: logLevel !== 'normal' }), executeFailed && (_jsx(Box, { marginTop: 1, paddingLeft: 2, flexDirection: "column", children: _jsx(StatusBox, { variant: "error", title: "Update failed", lines: executeErrorLines }) })), _jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsxs(Text, { dimColor: true, children: ['d Log Level', executeFailed ? ' q Back' : ''] }) })] })), phase === 'done' && versions && selectedVersion && (_jsx(Box, { paddingLeft: 2, children: _jsx(StatusBox, { variant: "success", title: "Update complete!", lines: [
347
347
  `Updated from ${versions.current} to ${selectedVersion}`,
348
348
  ] }) })), phase === 'error' && (_jsxs(_Fragment, { children: [_jsx(Box, { paddingLeft: 2, children: _jsx(StatusBox, { variant: "error", title: "Error", lines: [error ?? 'Unknown error'] }) }), _jsx(Box, { paddingLeft: 2, paddingTop: 1, children: _jsx(Text, { dimColor: true, children: "r Retry" }) })] }))] }));
349
349
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UpdateView.js","sourceRoot":"","sources":["../../../src/ui/views/UpdateView.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACvH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,cAAc,EAAE,2BAA2B,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAC7I,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,eAAe,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzI,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAe9C,SAAS,gBAAgB,CAAC,OAAe,EAAE,MAAc;IACvD,IAAI,OAAO,KAAK,eAAe,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAC3E,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,GAAG,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9B,IAAI,GAAG,GAAG,CAAC;QAAE,OAAO,WAAW,CAAC;IAChC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,SAAS,CAAC,CAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC/D,KAAK,WAAW,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC/D,KAAK,MAAM,CAAC,CAAM,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAC3D,OAAO,CAAC,CAAU,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC5D,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,OAAe,EAAE,IAAiB;IACpD,IAAI,OAAO,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,WAAW,CAAC;IACjD,IAAI,OAAO,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC7C,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,YAAY,GAAG,EAAE,CAAC;AAExB,MAAM,UAAU,UAAU,CAAC,EAAE,MAAM,EAAmB;IACpD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAE1B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,IAAI,MAAM;YAAE,MAAM,EAAE,CAAC;;YAChB,IAAI,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAEnB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAQ,OAAO,CAAC,CAAC;IACnD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAC;IACnE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC5E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEtD,uBAAuB;IACvB,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,IAA0B,EAAE;QAC9D,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACvD,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;YACpC,kBAAkB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC;YACvD,kBAAkB,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC;YACvD,sBAAsB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAc,CAAC;SACrD,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC1C,CAAC,EAAE,IAAI,CAAC,CAAC;IAET,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YAClD,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACjC,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,IAAI,0BAA0B,CAAC,CAAC;YACjE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAExD,6BAA6B;IAC7B,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACtD,OAAO,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACtE,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAExB,6DAA6D;IAC7D,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC;IAClF,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,gBAAgB;IAElF,0BAA0B;IAC1B,MAAM,cAAc,GAAW,OAAO,CAAC,GAAG,EAAE;QAC1C,MAAM,CAAC,GAAG,eAAe,IAAI,EAAE,CAAC;QAChC,OAAO;YACL;gBACE,KAAK,EAAE,WAAW;gBAClB,GAAG,EAAE,KAAK,IAAI,EAAE;oBACd,MAAM,GAAG,GAAG,MAAM,QAAQ,EAAE,CAAC;oBAC7B,IAAI,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACxC,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC;oBACvE,CAAC;oBACD,OAAO,GAAG,GAAG,CAAC,OAAO,KAAK,CAAC;gBAC7B,CAAC;aACF;YACD;gBACE,KAAK,EAAE,kBAAkB;gBACzB,GAAG,EAAE,KAAK,IAAI,EAAE;oBACd,MAAM,IAAI,GAAG,MAAM,cAAc,EAAE,CAAC;oBACpC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,WAAW,oBAAoB,CAAC,CAAC;oBACjF,OAAO,GAAG,IAAI,CAAC,WAAW,QAAQ,CAAC;gBACrC,CAAC;aACF;YACD;gBACE,KAAK,EAAE,cAAc;gBACrB,GAAG,EAAE,KAAK,IAAI,EAAE;oBACd,MAAM,GAAG,GAAG,MAAM,gBAAgB,EAAE,CAAC;oBACrC,IAAI,GAAG,KAAK,IAAI;wBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;oBACtD,IAAI,GAAG,GAAG,EAAE;wBAAE,OAAO,IAAI,GAAG,wBAAwB,CAAC;oBACrD,OAAO,IAAI,GAAG,EAAE,CAAC;gBACnB,CAAC;aACF;SACF,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,eAAe,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,WAAW;YAAE,eAAe,CAAC,GAAG,EAAE,CAAC;IACnD,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAE/D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,WAAW;YAAE,OAAO;QAClC,IAAI,eAAe,CAAC,MAAM;YAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,CAAC;YAC3D,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE,MAAM,IAAI,wBAAwB,CAAC,CAAC;YACrG,QAAQ,CAAC,OAAO,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;IAE5D,wBAAwB;IACxB,MAAM,YAAY,GAAW,OAAO,CAAC,GAAG,EAAE;QACxC,MAAM,CAAC,GAAG,eAAe,IAAI,EAAE,CAAC;QAChC,MAAM,EAAE,UAAU,EAAE,GAAG,QAAQ,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QAC7D,OAAO;YACL;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,uCAAuC,CAAC,CAAC;oBAClD,MAAM,uBAAuB,EAAE,CAAC;oBAChC,OAAO,SAAS,CAAC;gBACnB,CAAC;aACF;YACD;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAC3C,MAAM,IAAI,GAAG,MAAM,aAAa,EAAE,CAAC;oBACnC,GAAG,EAAE,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;oBAC3B,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;YACD;gBACE,KAAK,EAAE,wBAAwB;gBAC/B,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,MAAM,EAAE,gBAAgB,EAAE,GAAG,QAAQ,EAAE,CAAC;oBACxC,GAAG,EAAE,GAAG,CAAC,oBAAoB,gBAAgB,IAAI,CAAC,GAAG,CAAC,CAAC;oBACvD,MAAM,cAAc,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBACzC,GAAG,EAAE,GAAG,CAAC,6DAA6D,CAAC,CAAC;oBACxE,OAAO,CAAC,CAAC;gBACX,CAAC;aACF;YACD;gBACE,KAAK,EAAE,0BAA0B;gBACjC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,QAAQ,CAAC,CAAC;oBAC3D,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBAC/B,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrF,CAAC;oBACD,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;wBACtB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO;6BAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;6BACzB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;wBAC3D,MAAM,IAAI,KAAK,CAAC,gBAAgB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxD,CAAC;oBACD,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,kBAAkB,CAAC;gBACpD,CAAC;aACF;YACD;gBACE,KAAK,EAAE,oBAAoB;gBAC3B,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAC7C,GAAG,EAAE,GAAG,CAAC,WAAW,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC;oBAC/C,KAAK,MAAM,GAAG,IAAI,MAAM;wBAAE,GAAG,EAAE,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;oBAC/C,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;oBAC1C,OAAO,GAAG,MAAM,CAAC,MAAM,SAAS,CAAC;gBACnC,CAAC;aACF;YACD;gBACE,KAAK,EAAE,0BAA0B;gBACjC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,8CAA8C,CAAC,CAAC;oBACzD,MAAM,MAAM,GAAG,MAAM,oBAAoB,EAAE,CAAC;oBAC5C,IAAI,MAAM;wBAAE,GAAG,EAAE,GAAG,CAAC,wBAAwB,MAAM,gCAAgC,CAAC,CAAC;oBACrF,OAAO,MAAM,CAAC,CAAC,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAClD,CAAC;aACF;YACD;gBACE,KAAK,EAAE,4BAA4B;gBACnC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,sCAAsC,CAAC,CAAC;oBACjD,MAAM,eAAe,EAAE,CAAC;oBACxB,GAAG,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC;oBAC/B,OAAO,MAAM,CAAC;gBAChB,CAAC;aACF;YACD;gBACE,KAAK,EAAE,0BAA0B;gBACjC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;oBACjB,GAAG,EAAE,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAC3C,MAAM,aAAa,EAAE,CAAC;oBACtB,OAAO,MAAM,CAAC;gBAChB,CAAC;aACF;SACF,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,aAAa,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAElD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,SAAS;YAAE,aAAa,CAAC,GAAG,EAAE,CAAC;IAC/C,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAE/D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO;QAChC,IAAI,aAAa,CAAC,MAAM;YAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAElC,MAAM,aAAa,GAAG,KAAK,KAAK,SAAS,IAAI,CAAC,aAAa,CAAC,SAAS,IAAI,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAE9H,mBAAmB;IACnB,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,IAAI,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,SAAS;gBAAE,MAAM,EAAE,CAAC;YAC3D,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,IAAI,GAAG,CAAC,OAAO;gBAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC;iBACrE,IAAI,GAAG,CAAC,SAAS;gBAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC5E,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;gBACtC,IAAI,MAAM,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;oBACpC,qBAAqB;oBACrB,kBAAkB,CAAC,eAAe,CAAC,MAAM,CAAE,CAAC,CAAC;oBAC7C,QAAQ,CAAC,WAAW,CAAC,CAAC;gBACxB,CAAC;qBAAM,IAAI,OAAO,IAAI,MAAM,KAAK,eAAe,CAAC,MAAM,EAAE,CAAC;oBACxD,cAAc;oBACd,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,cAAc;oBACd,aAAa,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;iBACI,IAAI,KAAK,KAAK,GAAG;gBAAE,aAAa,CAAC,IAAI,CAAC,CAAC;iBACvC,IAAI,KAAK,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,SAAS;gBAAE,MAAM,EAAE,CAAC;YAChE,OAAO;QACT,CAAC;QAED,IAAI,KAAK,KAAK,QAAQ,IAAI,UAAU,EAAE,CAAC;YACrC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAAC,aAAa,CAAC,KAAK,CAAC,CAAC;gBAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YAAC,CAAC;YAC7D,OAAO;QACT,CAAC;QAED,6CAA6C;QAC7C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YACzC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,4CAA4C;QAC5C,kDAAkD;QAElD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAAC,CAAC;YAC1D,OAAO;QACT,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mBAAmB;IACnB,MAAM,aAAa,GAAG,CAAC,GAAY,EAAE,EAAE;QACrC,IAAI,GAAG;YAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;aACxB,CAAC;YAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;IACtE,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAE,EAAE;QAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,EAAE,CAAC;YACN,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,cAAc,CAAC,EAAE,CAAC,CAAC;YACnB,QAAQ,CAAC,WAAW,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,CAAC;IAEF,kBAAkB;IAClB,MAAM,SAAS,GAAG,QAAQ,IAAI,eAAe;QAC3C,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;QACrD,CAAC,CAAC,IAAI,CAAC;IAET,0EAA0E;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IACxE,MAAM,iBAAiB,GAAa,EAAE,CAAC;IACvC,IAAI,UAAU,EAAE,CAAC;QACf,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC;QAC7D,IAAI,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACpC,iBAAiB,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,IAAI,UAAU,CAAC,WAAW,EAAE,MAAM,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;YAC1F,iBAAiB,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,UAAU,GAAG,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,OAAO,IAAI,aAAa,CAAC;IAE1E,OAAO,CACL,MAAC,QAAQ,IAAC,OAAO,EAAC,WAAW,EAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,aAEjE,KAAK,KAAK,OAAO,IAAI,CACpB,KAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,YACrB,KAAC,OAAO,IAAC,KAAK,EAAC,gCAAgC,GAAG,GAC1C,CACX,EAGA,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,CACjC,8BACE,KAAC,OAAO,IAAC,KAAK,EAAC,iBAAiB,YAC9B,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,KAAC,IAAI,IAAC,IAAI,kBAAE,QAAQ,CAAC,OAAO,GAAQ,GAChC,GACE,EAEV,KAAC,OAAO,IAAC,KAAK,EAAC,oBAAoB,YAChC,UAAU,CAAC,CAAC,CAAC,CACZ,MAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,aACzC,KAAC,SAAS,IACR,KAAK,EAAC,SAAS,EACf,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,kBAAkB,EAC5B,WAAW,EAAC,iBAAiB,GAC7B,EACF,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,QAAQ,uDAAwC,GAClD,IACF,CACP,CAAC,CAAC,CAAC,CACF,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,aACvC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oCAC5B,MAAM,QAAQ,GAAG,CAAC,KAAK,MAAM,CAAC;oCAC9B,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oCAClD,MAAM,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;oCAC/B,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;oCACpC,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,YACvD,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAClB,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,YACvD,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GACR,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,YACjG,CAAC,GAAG,IAAI,aAAa,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,GAC7B,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,KAAK,YAAG,EAAE,CAAC,IAAI,GAAQ,KAV/B,CAAC,CAWL,CACP,CAAC;gCACJ,CAAC,CAAC,EAGD,OAAO,IAAI,CACV,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,KAAK,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC7D,IAAI,EAAE,MAAM,KAAK,eAAe,CAAC,MAAM,YAC1C,MAAM,KAAK,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAC3C,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,KAAK,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,eAAe,CAAC,MAAM,YAC1G,YAAY,QAAQ,CAAC,GAAG,CAAC,MAAM,cAAc,GACzC,IACH,CACP,EAGA,CAAC,GAAG,EAAE;oCACL,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oCAC7D,MAAM,QAAQ,GAAG,MAAM,KAAK,SAAS,CAAC;oCACtC,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,YACvD,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAClB,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,YACvD,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,GAClB,EACP,KAAC,IAAI,IAAC,QAAQ,+CAAgC,IAC1C,CACP,CAAC;gCACJ,CAAC,CAAC,EAAE,IACA,CACP,GACO,EAET,CAAC,UAAU,IAAI,CACd,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAChC,KAAC,IAAI,IAAC,QAAQ,oGAAiE,GAC3E,CACP,IACA,CACJ,EAGA,KAAK,KAAK,WAAW,IAAI,CACxB,KAAC,OAAO,IAAC,KAAK,EAAC,mBAAmB,YAChC,KAAC,QAAQ,IAAC,KAAK,EAAE,eAAe,CAAC,MAAM,GAAI,GACnC,CACX,EAGA,KAAK,KAAK,SAAS,IAAI,QAAQ,IAAI,eAAe,IAAI,CACrD,MAAC,OAAO,IAAC,KAAK,EAAC,gBAAgB,aAC7B,KAAC,QAAQ,IAAC,KAAK,EAAE;4BACf,EAAE,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,QAAQ,CAAC,OAAO,EAAE;4BACnD,EAAE,GAAG,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE;4BACjD,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,CAAC,SAAU,CAAC,CAAC,IAAI,EAAE;yBAC7D,GAAI,EAEJ,SAAS,KAAK,WAAW,IAAI,CAC5B,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,YAC/B,KAAC,SAAS,IAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,mBAAmB,EAAC,KAAK,EAAE;gCAC5D,4BAA4B,QAAQ,CAAC,OAAO,OAAO,eAAe,GAAG;gCACrE,wCAAwC;6BACzC,GAAI,GACD,CACP,EAED,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,YAC/B,KAAC,OAAO,IACN,OAAO,EAAE,0BAA0B,eAAe,GAAG,EACrD,SAAS,EAAE,aAAa,GACxB,GACE,IACE,CACX,EAGA,KAAK,KAAK,SAAS,IAAI,CACtB,MAAC,OAAO,IAAC,KAAK,EAAE,eAAe,eAAe,EAAE,aAC9C,KAAC,QAAQ,IAAC,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,GAAI,EAC/D,aAAa,IAAI,CAChB,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACvD,KAAC,SAAS,IAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,eAAe,EAAC,KAAK,EAAE,iBAAiB,GAAI,GACzE,CACP,EACD,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAChC,MAAC,IAAI,IAAC,QAAQ,mBACX,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EACvC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAC5B,GACH,IACE,CACX,EAGA,KAAK,KAAK,MAAM,IAAI,QAAQ,IAAI,eAAe,IAAI,CAClD,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,KAAC,SAAS,IAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,kBAAkB,EAAC,KAAK,EAAE;wBAC3D,gBAAgB,QAAQ,CAAC,OAAO,OAAO,eAAe,EAAE;qBACzD,GAAI,GACD,CACP,EAGA,KAAK,KAAK,OAAO,IAAI,CACpB,8BACE,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,KAAC,SAAS,IAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,CAAC,KAAK,IAAI,eAAe,CAAC,GAAI,GAC1E,EACN,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAChC,KAAC,IAAI,IAAC,QAAQ,8BAAe,GACzB,IACL,CACJ,IACQ,CACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"UpdateView.js","sourceRoot":"","sources":["../../../src/ui/views/UpdateView.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface ParsedTable {
2
+ columns: Array<{
3
+ key: string;
4
+ label: string;
5
+ }>;
6
+ rows: Array<Record<string, string>>;
7
+ }
8
+ /**
9
+ * Parse docker `--format table` or `docker compose ps` output into
10
+ * DataTable-compatible structure.
11
+ *
12
+ * Docker table output uses 2+ spaces (or tabs) between columns:
13
+ * NAME STATUS PORTS
14
+ * ct-web running 0.0.0.0:443->443/tcp
15
+ */
16
+ export declare function parseDockerTable(raw: string): ParsedTable;
17
+ //# sourceMappingURL=parseDocker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseDocker.d.ts","sourceRoot":"","sources":["../../src/utils/parseDocker.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CACrC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CA6BzD"}