@gzeoneth/gov-tracker 0.2.1-alpha.cli-preview.375ef6c → 0.2.1-alpha.main.b2eeb41
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.
- package/README.md +0 -40
- package/dist/cli/cli.js +0 -50
- package/dist/cli/cli.js.map +1 -1
- package/dist/cli/lib/cli.d.ts.map +1 -1
- package/dist/cli/lib/cli.js +5 -27
- package/dist/cli/lib/cli.js.map +1 -1
- package/dist/stages/timelock.d.ts.map +1 -1
- package/dist/stages/timelock.js +4 -5
- package/dist/stages/timelock.js.map +1 -1
- package/dist/tracker/cache.d.ts.map +1 -1
- package/dist/tracker/cache.js +0 -4
- package/dist/tracker/cache.js.map +1 -1
- package/package.json +2 -6
- package/dist/cli/tui/App.d.ts +0 -13
- package/dist/cli/tui/App.d.ts.map +0 -1
- package/dist/cli/tui/App.js +0 -146
- package/dist/cli/tui/App.js.map +0 -1
- package/dist/cli/tui/components/CollapsibleSection.d.ts +0 -20
- package/dist/cli/tui/components/CollapsibleSection.d.ts.map +0 -1
- package/dist/cli/tui/components/CollapsibleSection.js +0 -29
- package/dist/cli/tui/components/CollapsibleSection.js.map +0 -1
- package/dist/cli/tui/components/ConfirmDialog.d.ts +0 -14
- package/dist/cli/tui/components/ConfirmDialog.d.ts.map +0 -1
- package/dist/cli/tui/components/ConfirmDialog.js +0 -29
- package/dist/cli/tui/components/ConfirmDialog.js.map +0 -1
- package/dist/cli/tui/components/CopyableText.d.ts +0 -23
- package/dist/cli/tui/components/CopyableText.d.ts.map +0 -1
- package/dist/cli/tui/components/CopyableText.js +0 -49
- package/dist/cli/tui/components/CopyableText.js.map +0 -1
- package/dist/cli/tui/components/EmptyState.d.ts +0 -11
- package/dist/cli/tui/components/EmptyState.d.ts.map +0 -1
- package/dist/cli/tui/components/EmptyState.js +0 -34
- package/dist/cli/tui/components/EmptyState.js.map +0 -1
- package/dist/cli/tui/components/ErrorDisplay.d.ts +0 -17
- package/dist/cli/tui/components/ErrorDisplay.d.ts.map +0 -1
- package/dist/cli/tui/components/ErrorDisplay.js +0 -66
- package/dist/cli/tui/components/ErrorDisplay.js.map +0 -1
- package/dist/cli/tui/components/Header.d.ts +0 -22
- package/dist/cli/tui/components/Header.d.ts.map +0 -1
- package/dist/cli/tui/components/Header.js +0 -73
- package/dist/cli/tui/components/Header.js.map +0 -1
- package/dist/cli/tui/components/KeyHelp.d.ts +0 -20
- package/dist/cli/tui/components/KeyHelp.d.ts.map +0 -1
- package/dist/cli/tui/components/KeyHelp.js +0 -136
- package/dist/cli/tui/components/KeyHelp.js.map +0 -1
- package/dist/cli/tui/components/ProposalRow.d.ts +0 -11
- package/dist/cli/tui/components/ProposalRow.d.ts.map +0 -1
- package/dist/cli/tui/components/ProposalRow.js +0 -106
- package/dist/cli/tui/components/ProposalRow.js.map +0 -1
- package/dist/cli/tui/components/ScrollIndicator.d.ts +0 -26
- package/dist/cli/tui/components/ScrollIndicator.d.ts.map +0 -1
- package/dist/cli/tui/components/ScrollIndicator.js +0 -59
- package/dist/cli/tui/components/ScrollIndicator.js.map +0 -1
- package/dist/cli/tui/components/SearchBar.d.ts +0 -12
- package/dist/cli/tui/components/SearchBar.d.ts.map +0 -1
- package/dist/cli/tui/components/SearchBar.js +0 -36
- package/dist/cli/tui/components/SearchBar.js.map +0 -1
- package/dist/cli/tui/components/Skeleton.d.ts +0 -22
- package/dist/cli/tui/components/Skeleton.d.ts.map +0 -1
- package/dist/cli/tui/components/Skeleton.js +0 -35
- package/dist/cli/tui/components/Skeleton.js.map +0 -1
- package/dist/cli/tui/components/Spinner.d.ts +0 -10
- package/dist/cli/tui/components/Spinner.d.ts.map +0 -1
- package/dist/cli/tui/components/Spinner.js +0 -24
- package/dist/cli/tui/components/Spinner.js.map +0 -1
- package/dist/cli/tui/components/StageProgress.d.ts +0 -12
- package/dist/cli/tui/components/StageProgress.d.ts.map +0 -1
- package/dist/cli/tui/components/StageProgress.js +0 -72
- package/dist/cli/tui/components/StageProgress.js.map +0 -1
- package/dist/cli/tui/components/StageRow.d.ts +0 -12
- package/dist/cli/tui/components/StageRow.d.ts.map +0 -1
- package/dist/cli/tui/components/StageRow.js +0 -106
- package/dist/cli/tui/components/StageRow.js.map +0 -1
- package/dist/cli/tui/components/StatusBadge.d.ts +0 -12
- package/dist/cli/tui/components/StatusBadge.d.ts.map +0 -1
- package/dist/cli/tui/components/StatusBadge.js +0 -27
- package/dist/cli/tui/components/StatusBadge.js.map +0 -1
- package/dist/cli/tui/components/StatusBar.d.ts +0 -12
- package/dist/cli/tui/components/StatusBar.d.ts.map +0 -1
- package/dist/cli/tui/components/StatusBar.js +0 -14
- package/dist/cli/tui/components/StatusBar.js.map +0 -1
- package/dist/cli/tui/components/Timeline.d.ts +0 -12
- package/dist/cli/tui/components/Timeline.d.ts.map +0 -1
- package/dist/cli/tui/components/Timeline.js +0 -91
- package/dist/cli/tui/components/Timeline.js.map +0 -1
- package/dist/cli/tui/components/Toast.d.ts +0 -13
- package/dist/cli/tui/components/Toast.d.ts.map +0 -1
- package/dist/cli/tui/components/Toast.js +0 -35
- package/dist/cli/tui/components/Toast.js.map +0 -1
- package/dist/cli/tui/components/TrackingProgress.d.ts +0 -24
- package/dist/cli/tui/components/TrackingProgress.d.ts.map +0 -1
- package/dist/cli/tui/components/TrackingProgress.js +0 -82
- package/dist/cli/tui/components/TrackingProgress.js.map +0 -1
- package/dist/cli/tui/components/ViewLayout.d.ts +0 -26
- package/dist/cli/tui/components/ViewLayout.d.ts.map +0 -1
- package/dist/cli/tui/components/ViewLayout.js +0 -57
- package/dist/cli/tui/components/ViewLayout.js.map +0 -1
- package/dist/cli/tui/components/VotingStats.d.ts +0 -11
- package/dist/cli/tui/components/VotingStats.d.ts.map +0 -1
- package/dist/cli/tui/components/VotingStats.js +0 -87
- package/dist/cli/tui/components/VotingStats.js.map +0 -1
- package/dist/cli/tui/config.d.ts +0 -42
- package/dist/cli/tui/config.d.ts.map +0 -1
- package/dist/cli/tui/config.js +0 -144
- package/dist/cli/tui/config.js.map +0 -1
- package/dist/cli/tui/hooks/index.d.ts +0 -12
- package/dist/cli/tui/hooks/index.d.ts.map +0 -1
- package/dist/cli/tui/hooks/index.js +0 -18
- package/dist/cli/tui/hooks/index.js.map +0 -1
- package/dist/cli/tui/hooks/useCache.d.ts +0 -12
- package/dist/cli/tui/hooks/useCache.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useCache.js +0 -110
- package/dist/cli/tui/hooks/useCache.js.map +0 -1
- package/dist/cli/tui/hooks/useCliProcess.d.ts +0 -19
- package/dist/cli/tui/hooks/useCliProcess.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useCliProcess.js +0 -135
- package/dist/cli/tui/hooks/useCliProcess.js.map +0 -1
- package/dist/cli/tui/hooks/useNavigation.d.ts +0 -40
- package/dist/cli/tui/hooks/useNavigation.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useNavigation.js +0 -283
- package/dist/cli/tui/hooks/useNavigation.js.map +0 -1
- package/dist/cli/tui/hooks/useProposals.d.ts +0 -10
- package/dist/cli/tui/hooks/useProposals.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useProposals.js +0 -215
- package/dist/cli/tui/hooks/useProposals.js.map +0 -1
- package/dist/cli/tui/hooks/useStageCalldata.d.ts +0 -17
- package/dist/cli/tui/hooks/useStageCalldata.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useStageCalldata.js +0 -77
- package/dist/cli/tui/hooks/useStageCalldata.js.map +0 -1
- package/dist/cli/tui/hooks/useTracker.d.ts +0 -27
- package/dist/cli/tui/hooks/useTracker.d.ts.map +0 -1
- package/dist/cli/tui/hooks/useTracker.js +0 -205
- package/dist/cli/tui/hooks/useTracker.js.map +0 -1
- package/dist/cli/tui/index.d.ts +0 -15
- package/dist/cli/tui/index.d.ts.map +0 -1
- package/dist/cli/tui/index.js +0 -100
- package/dist/cli/tui/index.js.map +0 -1
- package/dist/cli/tui/ink-wrapper.d.ts +0 -43
- package/dist/cli/tui/ink-wrapper.d.ts.map +0 -1
- package/dist/cli/tui/ink-wrapper.js +0 -41
- package/dist/cli/tui/ink-wrapper.js.map +0 -1
- package/dist/cli/tui/types.d.ts +0 -37
- package/dist/cli/tui/types.d.ts.map +0 -1
- package/dist/cli/tui/types.js +0 -6
- package/dist/cli/tui/types.js.map +0 -1
- package/dist/cli/tui/utils/clipboard.d.ts +0 -7
- package/dist/cli/tui/utils/clipboard.d.ts.map +0 -1
- package/dist/cli/tui/utils/clipboard.js +0 -46
- package/dist/cli/tui/utils/clipboard.js.map +0 -1
- package/dist/cli/tui/utils/index.d.ts +0 -5
- package/dist/cli/tui/utils/index.d.ts.map +0 -1
- package/dist/cli/tui/utils/index.js +0 -13
- package/dist/cli/tui/utils/index.js.map +0 -1
- package/dist/cli/tui/utils/terminal.d.ts +0 -18
- package/dist/cli/tui/utils/terminal.d.ts.map +0 -1
- package/dist/cli/tui/utils/terminal.js +0 -26
- package/dist/cli/tui/utils/terminal.js.map +0 -1
- package/dist/cli/tui/utils/text.d.ts +0 -12
- package/dist/cli/tui/utils/text.d.ts.map +0 -1
- package/dist/cli/tui/utils/text.js +0 -30
- package/dist/cli/tui/utils/text.js.map +0 -1
- package/dist/cli/tui/views/CalldataView.d.ts +0 -12
- package/dist/cli/tui/views/CalldataView.d.ts.map +0 -1
- package/dist/cli/tui/views/CalldataView.js +0 -194
- package/dist/cli/tui/views/CalldataView.js.map +0 -1
- package/dist/cli/tui/views/DescriptionView.d.ts +0 -12
- package/dist/cli/tui/views/DescriptionView.d.ts.map +0 -1
- package/dist/cli/tui/views/DescriptionView.js +0 -182
- package/dist/cli/tui/views/DescriptionView.js.map +0 -1
- package/dist/cli/tui/views/ElectionView.d.ts +0 -12
- package/dist/cli/tui/views/ElectionView.d.ts.map +0 -1
- package/dist/cli/tui/views/ElectionView.js +0 -197
- package/dist/cli/tui/views/ElectionView.js.map +0 -1
- package/dist/cli/tui/views/HelpView.d.ts +0 -10
- package/dist/cli/tui/views/HelpView.d.ts.map +0 -1
- package/dist/cli/tui/views/HelpView.js +0 -159
- package/dist/cli/tui/views/HelpView.js.map +0 -1
- package/dist/cli/tui/views/ProposalDetail.d.ts +0 -14
- package/dist/cli/tui/views/ProposalDetail.d.ts.map +0 -1
- package/dist/cli/tui/views/ProposalDetail.js +0 -167
- package/dist/cli/tui/views/ProposalDetail.js.map +0 -1
- package/dist/cli/tui/views/ProposalList.d.ts +0 -17
- package/dist/cli/tui/views/ProposalList.d.ts.map +0 -1
- package/dist/cli/tui/views/ProposalList.js +0 -126
- package/dist/cli/tui/views/ProposalList.js.map +0 -1
- package/dist/cli/tui/views/SettingsView.d.ts +0 -12
- package/dist/cli/tui/views/SettingsView.d.ts.map +0 -1
- package/dist/cli/tui/views/SettingsView.js +0 -203
- package/dist/cli/tui/views/SettingsView.js.map +0 -1
- package/dist/cli/tui/views/SimulationView.d.ts +0 -12
- package/dist/cli/tui/views/SimulationView.d.ts.map +0 -1
- package/dist/cli/tui/views/SimulationView.js +0 -112
- package/dist/cli/tui/views/SimulationView.js.map +0 -1
- package/dist/cli/tui/views/StageView.d.ts +0 -12
- package/dist/cli/tui/views/StageView.d.ts.map +0 -1
- package/dist/cli/tui/views/StageView.js +0 -215
- package/dist/cli/tui/views/StageView.js.map +0 -1
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Animated tracking progress indicator
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.TrackingProgress = TrackingProgress;
|
|
7
|
-
exports.ProgressBar = ProgressBar;
|
|
8
|
-
exports.PulsingText = PulsingText;
|
|
9
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
10
|
-
const SPINNER_FRAMES = ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
|
|
11
|
-
const PROGRESS_BAR_WIDTH = 20;
|
|
12
|
-
function formatElapsed(ms) {
|
|
13
|
-
const seconds = Math.floor(ms / 1000);
|
|
14
|
-
if (seconds < 60)
|
|
15
|
-
return `${seconds}s`;
|
|
16
|
-
const minutes = Math.floor(seconds / 60);
|
|
17
|
-
const remainingSeconds = seconds % 60;
|
|
18
|
-
return `${minutes}m ${remainingSeconds}s`;
|
|
19
|
-
}
|
|
20
|
-
function TrackingProgress({ message, stage, elapsed, }) {
|
|
21
|
-
const [frameIndex, setFrameIndex] = (0, ink_wrapper_js_1.useState)(0);
|
|
22
|
-
const [dots, setDots] = (0, ink_wrapper_js_1.useState)(0);
|
|
23
|
-
(0, ink_wrapper_js_1.useEffect)(() => {
|
|
24
|
-
const timer = setInterval(() => {
|
|
25
|
-
setFrameIndex((prev) => (prev + 1) % SPINNER_FRAMES.length);
|
|
26
|
-
setDots((prev) => (prev + 1) % 4);
|
|
27
|
-
}, 100);
|
|
28
|
-
return () => clearInterval(timer);
|
|
29
|
-
}, []);
|
|
30
|
-
const dotString = ".".repeat(dots);
|
|
31
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: "yellow", paddingX: 1 },
|
|
32
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
33
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "yellow" },
|
|
34
|
-
SPINNER_FRAMES[frameIndex],
|
|
35
|
-
" "),
|
|
36
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "white", bold: true }, "Tracking"),
|
|
37
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, dotString.padEnd(3)),
|
|
38
|
-
elapsed !== undefined && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
39
|
-
" (",
|
|
40
|
-
formatElapsed(elapsed),
|
|
41
|
-
")"))),
|
|
42
|
-
stage && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginLeft: 2 },
|
|
43
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "cyan" }, "Stage: "),
|
|
44
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null, stage))),
|
|
45
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginLeft: 2 },
|
|
46
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, message))));
|
|
47
|
-
}
|
|
48
|
-
function ProgressBar({ current, total, width = PROGRESS_BAR_WIDTH, showPercentage = true, label, }) {
|
|
49
|
-
const percentage = total > 0 ? Math.min(100, Math.round((current / total) * 100)) : 0;
|
|
50
|
-
const filled = Math.min(width, Math.round((percentage / 100) * width));
|
|
51
|
-
const empty = Math.max(0, width - filled);
|
|
52
|
-
const filledBar = "█".repeat(filled);
|
|
53
|
-
const emptyBar = "░".repeat(empty);
|
|
54
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
55
|
-
label && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
56
|
-
label,
|
|
57
|
-
": "),
|
|
58
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" }, filledBar),
|
|
59
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, emptyBar),
|
|
60
|
-
showPercentage && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
61
|
-
" ",
|
|
62
|
-
percentage,
|
|
63
|
-
"%"),
|
|
64
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
65
|
-
" (",
|
|
66
|
-
current,
|
|
67
|
-
"/",
|
|
68
|
-
total,
|
|
69
|
-
")")));
|
|
70
|
-
}
|
|
71
|
-
function PulsingText({ text, color = "yellow" }) {
|
|
72
|
-
const [intensity, setIntensity] = (0, ink_wrapper_js_1.useState)(0);
|
|
73
|
-
(0, ink_wrapper_js_1.useEffect)(() => {
|
|
74
|
-
const timer = setInterval(() => {
|
|
75
|
-
setIntensity((prev) => (prev + 1) % 3);
|
|
76
|
-
}, 500);
|
|
77
|
-
return () => clearInterval(timer);
|
|
78
|
-
}, []);
|
|
79
|
-
const colors = [color, "white", color];
|
|
80
|
-
return ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: colors[intensity], bold: intensity === 1 }, text);
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=TrackingProgress.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TrackingProgress.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/TrackingProgress.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared view layout component
|
|
3
|
-
*/
|
|
4
|
-
import type { ViewType, FilterType } from "../types.js";
|
|
5
|
-
type SkeletonType = "list" | "detail" | "text" | "none";
|
|
6
|
-
interface KeyHelpContext {
|
|
7
|
-
calldataActionCount?: number;
|
|
8
|
-
currentActionIndex?: number;
|
|
9
|
-
}
|
|
10
|
-
interface ViewLayoutProps {
|
|
11
|
-
view: ViewType;
|
|
12
|
-
filter?: FilterType;
|
|
13
|
-
title?: string;
|
|
14
|
-
hasProviders?: boolean;
|
|
15
|
-
isTracking?: boolean;
|
|
16
|
-
loading?: boolean;
|
|
17
|
-
loadingText?: string;
|
|
18
|
-
skeletonType?: SkeletonType;
|
|
19
|
-
error?: string | null;
|
|
20
|
-
breadcrumb?: string[];
|
|
21
|
-
keyHelpContext?: KeyHelpContext;
|
|
22
|
-
children: React.ReactNode;
|
|
23
|
-
}
|
|
24
|
-
export declare function ViewLayout({ view, filter, title, hasProviders, isTracking, loading, loadingText, skeletonType, error, breadcrumb, keyHelpContext, children, }: ViewLayoutProps): React.ReactElement;
|
|
25
|
-
export {};
|
|
26
|
-
//# sourceMappingURL=ViewLayout.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ViewLayout.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/ViewLayout.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAMxD,KAAK,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAExD,UAAU,cAAc;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAqDD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,MAAc,EACd,KAAK,EACL,YAAoB,EACpB,UAAkB,EAClB,OAAe,EACf,WAA0B,EAC1B,YAAqB,EACrB,KAAY,EACZ,UAAU,EACV,cAAc,EACd,QAAQ,GACT,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CA2BtC"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Shared view layout component
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ViewLayout = ViewLayout;
|
|
7
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
8
|
-
const Header_js_1 = require("./Header.js");
|
|
9
|
-
const KeyHelp_js_1 = require("./KeyHelp.js");
|
|
10
|
-
const Spinner_js_1 = require("./Spinner.js");
|
|
11
|
-
const Skeleton_js_1 = require("./Skeleton.js");
|
|
12
|
-
function LoadingSkeleton({ type, text }) {
|
|
13
|
-
if (type === "none") {
|
|
14
|
-
return ink_wrapper_js_1.React.createElement(Spinner_js_1.Spinner, { text: text });
|
|
15
|
-
}
|
|
16
|
-
if (type === "list") {
|
|
17
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
18
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginBottom: 1 },
|
|
19
|
-
ink_wrapper_js_1.React.createElement(Spinner_js_1.Spinner, { text: text })),
|
|
20
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.SkeletonList, { rows: 8, columns: [3, 45, 12, 10] })));
|
|
21
|
-
}
|
|
22
|
-
if (type === "detail") {
|
|
23
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
24
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginBottom: 1 },
|
|
25
|
-
ink_wrapper_js_1.React.createElement(Spinner_js_1.Spinner, { text: text })),
|
|
26
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", gap: 1 },
|
|
27
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 60 }),
|
|
28
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 40 }),
|
|
29
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1, flexDirection: "column" },
|
|
30
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 70 }),
|
|
31
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 55 }),
|
|
32
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 65 })))));
|
|
33
|
-
}
|
|
34
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
35
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginBottom: 1 },
|
|
36
|
-
ink_wrapper_js_1.React.createElement(Spinner_js_1.Spinner, { text: text })),
|
|
37
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
38
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 80 }),
|
|
39
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 75 }),
|
|
40
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 70 }),
|
|
41
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 78 }),
|
|
42
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.Skeleton, { width: 60 }))));
|
|
43
|
-
}
|
|
44
|
-
function ViewLayout({ view, filter = "all", title, hasProviders = false, isTracking = false, loading = false, loadingText = "Loading...", skeletonType = "none", error = null, breadcrumb, keyHelpContext, children, }) {
|
|
45
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", height: "100%" },
|
|
46
|
-
ink_wrapper_js_1.React.createElement(Header_js_1.Header, { view: view, filter: filter, stats: null, hasProviders: hasProviders, isTracking: isTracking, title: title, breadcrumb: breadcrumb }),
|
|
47
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", paddingX: 1, flexGrow: 1 },
|
|
48
|
-
loading && ink_wrapper_js_1.React.createElement(LoadingSkeleton, { type: skeletonType, text: loadingText }),
|
|
49
|
-
error && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
50
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" },
|
|
51
|
-
"Error: ",
|
|
52
|
-
error),
|
|
53
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "Press b to go back"))),
|
|
54
|
-
!loading && !error && children),
|
|
55
|
-
ink_wrapper_js_1.React.createElement(KeyHelp_js_1.KeyHelp, { view: view, hasProviders: hasProviders, context: keyHelpContext })));
|
|
56
|
-
}
|
|
57
|
-
//# sourceMappingURL=ViewLayout.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ViewLayout.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/ViewLayout.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Enhanced voting statistics visualization
|
|
3
|
-
*/
|
|
4
|
-
import type { VotingActiveData } from "../../../types/stages.js";
|
|
5
|
-
interface VotingStatsProps {
|
|
6
|
-
data: VotingActiveData;
|
|
7
|
-
compact?: boolean;
|
|
8
|
-
}
|
|
9
|
-
export declare function VotingStats({ data, compact }: VotingStatsProps): React.ReactElement;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=VotingStats.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VotingStats.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/VotingStats.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,UAAU,gBAAgB;IACxB,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAiBD,wBAAgB,WAAW,CAAC,EAAE,IAAI,EAAE,OAAe,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAoE3F"}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Enhanced voting statistics visualization
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.VotingStats = VotingStats;
|
|
7
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
8
|
-
const BAR_WIDTH = 30;
|
|
9
|
-
function formatVoteCount(value) {
|
|
10
|
-
const num = parseFloat(value);
|
|
11
|
-
if (isNaN(num))
|
|
12
|
-
return value;
|
|
13
|
-
if (num >= 1000000)
|
|
14
|
-
return `${(num / 1000000).toFixed(1)}M`;
|
|
15
|
-
if (num >= 1000)
|
|
16
|
-
return `${(num / 1000).toFixed(1)}K`;
|
|
17
|
-
return value;
|
|
18
|
-
}
|
|
19
|
-
function calculatePercentage(value, total) {
|
|
20
|
-
const num = parseFloat(value) || 0;
|
|
21
|
-
return total > 0 ? (num / total) * 100 : 0;
|
|
22
|
-
}
|
|
23
|
-
function VotingStats({ data, compact = false }) {
|
|
24
|
-
const forVotes = parseFloat(data.forVotes) || 0;
|
|
25
|
-
const againstVotes = parseFloat(data.againstVotes) || 0;
|
|
26
|
-
const abstainVotes = parseFloat(data.abstainVotes) || 0;
|
|
27
|
-
const total = forVotes + againstVotes + abstainVotes;
|
|
28
|
-
const forPct = calculatePercentage(data.forVotes, total);
|
|
29
|
-
const againstPct = calculatePercentage(data.againstVotes, total);
|
|
30
|
-
const abstainPct = calculatePercentage(data.abstainVotes, total);
|
|
31
|
-
const forBarWidth = Math.min(BAR_WIDTH, Math.max(0, Math.round((forPct / 100) * BAR_WIDTH)));
|
|
32
|
-
const againstBarWidth = Math.min(BAR_WIDTH, Math.max(0, Math.round((againstPct / 100) * BAR_WIDTH)));
|
|
33
|
-
if (compact) {
|
|
34
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
35
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" },
|
|
36
|
-
"\u2713",
|
|
37
|
-
formatVoteCount(data.forVotes)),
|
|
38
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, " / "),
|
|
39
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" },
|
|
40
|
-
"\u2717",
|
|
41
|
-
formatVoteCount(data.againstVotes)),
|
|
42
|
-
data.quorumReached && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "cyan" }, " [Q]")));
|
|
43
|
-
}
|
|
44
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: "gray", paddingX: 1 },
|
|
45
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { bold: true, color: "cyan" }, "Voting Results"),
|
|
46
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
47
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" }, "For "),
|
|
48
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" }, "█".repeat(forBarWidth)),
|
|
49
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "░".repeat(BAR_WIDTH - forBarWidth)),
|
|
50
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" },
|
|
51
|
-
" ",
|
|
52
|
-
forPct.toFixed(1),
|
|
53
|
-
"%"),
|
|
54
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
55
|
-
" (",
|
|
56
|
-
formatVoteCount(data.forVotes),
|
|
57
|
-
")")),
|
|
58
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
59
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" }, "Against "),
|
|
60
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" }, "█".repeat(againstBarWidth)),
|
|
61
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "░".repeat(BAR_WIDTH - againstBarWidth)),
|
|
62
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" },
|
|
63
|
-
" ",
|
|
64
|
-
againstPct.toFixed(1),
|
|
65
|
-
"%"),
|
|
66
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
67
|
-
" (",
|
|
68
|
-
formatVoteCount(data.againstVotes),
|
|
69
|
-
")")),
|
|
70
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
71
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "Abstain "),
|
|
72
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
73
|
-
abstainPct.toFixed(1),
|
|
74
|
-
"% (",
|
|
75
|
-
formatVoteCount(data.abstainVotes),
|
|
76
|
-
")")),
|
|
77
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1, borderStyle: "single", borderColor: "gray", borderTop: false, borderLeft: false, borderRight: false },
|
|
78
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "cyan" },
|
|
79
|
-
"Quorum: ",
|
|
80
|
-
formatVoteCount(data.quorum),
|
|
81
|
-
" "),
|
|
82
|
-
data.quorumReached ? (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green", bold: true }, "\u2713 REACHED")) : (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "yellow" }, "\u25CB Not yet reached"))),
|
|
83
|
-
data.proposalState && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
84
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "State: "),
|
|
85
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { bold: true, color: data.proposalState === "Succeeded" ? "green" : data.proposalState === "Defeated" ? "red" : "yellow" }, data.proposalState)))));
|
|
86
|
-
}
|
|
87
|
-
//# sourceMappingURL=VotingStats.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"VotingStats.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/VotingStats.tsx"],"names":[],"mappings":"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"}
|
package/dist/cli/tui/config.d.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* TUI Configuration - persistent settings stored alongside cache file
|
|
3
|
-
*/
|
|
4
|
-
export interface TuiConfig {
|
|
5
|
-
rpc: {
|
|
6
|
-
l1Url: string;
|
|
7
|
-
l2Url: string;
|
|
8
|
-
novaUrl: string;
|
|
9
|
-
};
|
|
10
|
-
cache: {
|
|
11
|
-
path: string;
|
|
12
|
-
};
|
|
13
|
-
display: {
|
|
14
|
-
theme: "dark" | "light";
|
|
15
|
-
showProgressBar: boolean;
|
|
16
|
-
compactMode: boolean;
|
|
17
|
-
};
|
|
18
|
-
discovery: {
|
|
19
|
-
defaultDays: number;
|
|
20
|
-
startBlock: number | null;
|
|
21
|
-
chunkSize: number;
|
|
22
|
-
concurrency: number;
|
|
23
|
-
};
|
|
24
|
-
debug: {
|
|
25
|
-
logFile: string;
|
|
26
|
-
namespaces: string;
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Set the base path for config storage (same directory as cache)
|
|
31
|
-
* Call this before using loadConfig/saveConfig in TUI context
|
|
32
|
-
*/
|
|
33
|
-
export declare function setConfigBasePath(cachePath: string): void;
|
|
34
|
-
export interface ConfigLoadResult {
|
|
35
|
-
config: TuiConfig;
|
|
36
|
-
warning?: string;
|
|
37
|
-
}
|
|
38
|
-
export declare function loadConfigWithStatus(): ConfigLoadResult;
|
|
39
|
-
export declare function loadConfig(): TuiConfig;
|
|
40
|
-
export declare function saveConfig(config: TuiConfig): boolean;
|
|
41
|
-
export declare function getDefaultConfig(): TuiConfig;
|
|
42
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE;QACH,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QACxB,eAAe,EAAE,OAAO,CAAC;QACzB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC;IACF,SAAS,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AA+BD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CASzD;AAaD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,oBAAoB,IAAI,gBAAgB,CAwBvD;AAED,wBAAgB,UAAU,IAAI,SAAS,CAEtC;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAYrD;AAED,wBAAgB,gBAAgB,IAAI,SAAS,CAE5C"}
|
package/dist/cli/tui/config.js
DELETED
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* TUI Configuration - persistent settings stored alongside cache file
|
|
4
|
-
*/
|
|
5
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
-
}
|
|
11
|
-
Object.defineProperty(o, k2, desc);
|
|
12
|
-
}) : (function(o, m, k, k2) {
|
|
13
|
-
if (k2 === undefined) k2 = k;
|
|
14
|
-
o[k2] = m[k];
|
|
15
|
-
}));
|
|
16
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
-
}) : function(o, v) {
|
|
19
|
-
o["default"] = v;
|
|
20
|
-
});
|
|
21
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
-
var ownKeys = function(o) {
|
|
23
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
-
var ar = [];
|
|
25
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
-
return ar;
|
|
27
|
-
};
|
|
28
|
-
return ownKeys(o);
|
|
29
|
-
};
|
|
30
|
-
return function (mod) {
|
|
31
|
-
if (mod && mod.__esModule) return mod;
|
|
32
|
-
var result = {};
|
|
33
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
-
__setModuleDefault(result, mod);
|
|
35
|
-
return result;
|
|
36
|
-
};
|
|
37
|
-
})();
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.setConfigBasePath = setConfigBasePath;
|
|
40
|
-
exports.loadConfigWithStatus = loadConfigWithStatus;
|
|
41
|
-
exports.loadConfig = loadConfig;
|
|
42
|
-
exports.saveConfig = saveConfig;
|
|
43
|
-
exports.getDefaultConfig = getDefaultConfig;
|
|
44
|
-
const fs = __importStar(require("fs"));
|
|
45
|
-
const path = __importStar(require("path"));
|
|
46
|
-
const os = __importStar(require("os"));
|
|
47
|
-
const DEFAULT_CONFIG = {
|
|
48
|
-
rpc: {
|
|
49
|
-
l1Url: "",
|
|
50
|
-
l2Url: "",
|
|
51
|
-
novaUrl: "",
|
|
52
|
-
},
|
|
53
|
-
cache: {
|
|
54
|
-
path: "",
|
|
55
|
-
},
|
|
56
|
-
display: {
|
|
57
|
-
theme: "dark",
|
|
58
|
-
showProgressBar: true,
|
|
59
|
-
compactMode: false,
|
|
60
|
-
},
|
|
61
|
-
discovery: {
|
|
62
|
-
defaultDays: 60,
|
|
63
|
-
startBlock: null,
|
|
64
|
-
chunkSize: 10000000, // Match gov-tracker default (10M blocks for L2)
|
|
65
|
-
concurrency: 1,
|
|
66
|
-
},
|
|
67
|
-
debug: {
|
|
68
|
-
logFile: "",
|
|
69
|
-
namespaces: "gov-tracker:*",
|
|
70
|
-
},
|
|
71
|
-
};
|
|
72
|
-
// Module-level cache path for config location
|
|
73
|
-
let configBasePath = null;
|
|
74
|
-
/**
|
|
75
|
-
* Set the base path for config storage (same directory as cache)
|
|
76
|
-
* Call this before using loadConfig/saveConfig in TUI context
|
|
77
|
-
*/
|
|
78
|
-
function setConfigBasePath(cachePath) {
|
|
79
|
-
// If cachePath is a file, use its directory; if a directory, use it directly
|
|
80
|
-
try {
|
|
81
|
-
const stats = fs.existsSync(cachePath) && fs.statSync(cachePath);
|
|
82
|
-
configBasePath = stats && stats.isDirectory() ? cachePath : path.dirname(cachePath);
|
|
83
|
-
}
|
|
84
|
-
catch {
|
|
85
|
-
// Fall back to parent directory if stat fails (permissions, race condition, etc.)
|
|
86
|
-
configBasePath = path.dirname(cachePath);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
function getConfigDir() {
|
|
90
|
-
if (configBasePath) {
|
|
91
|
-
return configBasePath;
|
|
92
|
-
}
|
|
93
|
-
return path.join(os.homedir(), ".gov-tracker");
|
|
94
|
-
}
|
|
95
|
-
function getConfigPath() {
|
|
96
|
-
return path.join(getConfigDir(), "tui-config.json");
|
|
97
|
-
}
|
|
98
|
-
function loadConfigWithStatus() {
|
|
99
|
-
try {
|
|
100
|
-
const configPath = getConfigPath();
|
|
101
|
-
if (!fs.existsSync(configPath)) {
|
|
102
|
-
return { config: { ...DEFAULT_CONFIG } };
|
|
103
|
-
}
|
|
104
|
-
const raw = fs.readFileSync(configPath, "utf-8");
|
|
105
|
-
const parsed = JSON.parse(raw);
|
|
106
|
-
return {
|
|
107
|
-
config: {
|
|
108
|
-
rpc: { ...DEFAULT_CONFIG.rpc, ...parsed.rpc },
|
|
109
|
-
cache: { ...DEFAULT_CONFIG.cache, ...parsed.cache },
|
|
110
|
-
display: { ...DEFAULT_CONFIG.display, ...parsed.display },
|
|
111
|
-
discovery: { ...DEFAULT_CONFIG.discovery, ...parsed.discovery },
|
|
112
|
-
debug: { ...DEFAULT_CONFIG.debug, ...parsed.debug },
|
|
113
|
-
},
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
catch (err) {
|
|
117
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
118
|
-
return {
|
|
119
|
-
config: { ...DEFAULT_CONFIG },
|
|
120
|
-
warning: `Config file corrupted, using defaults: ${message}`,
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
function loadConfig() {
|
|
125
|
-
return loadConfigWithStatus().config;
|
|
126
|
-
}
|
|
127
|
-
function saveConfig(config) {
|
|
128
|
-
try {
|
|
129
|
-
const configDir = getConfigDir();
|
|
130
|
-
if (!fs.existsSync(configDir)) {
|
|
131
|
-
fs.mkdirSync(configDir, { recursive: true });
|
|
132
|
-
}
|
|
133
|
-
const configPath = getConfigPath();
|
|
134
|
-
fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
|
|
135
|
-
return true;
|
|
136
|
-
}
|
|
137
|
-
catch {
|
|
138
|
-
return false;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
function getDefaultConfig() {
|
|
142
|
-
return { ...DEFAULT_CONFIG };
|
|
143
|
-
}
|
|
144
|
-
//# sourceMappingURL=config.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/cli/tui/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
export { useCache } from "./useCache.js";
|
|
2
|
-
export type { UseCacheResult } from "./useCache.js";
|
|
3
|
-
export { useProposals } from "./useProposals.js";
|
|
4
|
-
export { useNavigation, MAX_STAGE_INDEX, STAGE_COUNT } from "./useNavigation.js";
|
|
5
|
-
export type { UseNavigationResult } from "./useNavigation.js";
|
|
6
|
-
export { useTracker } from "./useTracker.js";
|
|
7
|
-
export type { UseTrackerResult, UseTrackerOptions } from "./useTracker.js";
|
|
8
|
-
export { useStageCalldata } from "./useStageCalldata.js";
|
|
9
|
-
export type { UseStageCalldataResult, DecodedAction } from "./useStageCalldata.js";
|
|
10
|
-
export { useCliProcess } from "./useCliProcess.js";
|
|
11
|
-
export type { UseCliProcessResult, CliProcessResult } from "./useCliProcess.js";
|
|
12
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjF,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,YAAY,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useCliProcess = exports.useStageCalldata = exports.useTracker = exports.STAGE_COUNT = exports.MAX_STAGE_INDEX = exports.useNavigation = exports.useProposals = exports.useCache = void 0;
|
|
4
|
-
var useCache_js_1 = require("./useCache.js");
|
|
5
|
-
Object.defineProperty(exports, "useCache", { enumerable: true, get: function () { return useCache_js_1.useCache; } });
|
|
6
|
-
var useProposals_js_1 = require("./useProposals.js");
|
|
7
|
-
Object.defineProperty(exports, "useProposals", { enumerable: true, get: function () { return useProposals_js_1.useProposals; } });
|
|
8
|
-
var useNavigation_js_1 = require("./useNavigation.js");
|
|
9
|
-
Object.defineProperty(exports, "useNavigation", { enumerable: true, get: function () { return useNavigation_js_1.useNavigation; } });
|
|
10
|
-
Object.defineProperty(exports, "MAX_STAGE_INDEX", { enumerable: true, get: function () { return useNavigation_js_1.MAX_STAGE_INDEX; } });
|
|
11
|
-
Object.defineProperty(exports, "STAGE_COUNT", { enumerable: true, get: function () { return useNavigation_js_1.STAGE_COUNT; } });
|
|
12
|
-
var useTracker_js_1 = require("./useTracker.js");
|
|
13
|
-
Object.defineProperty(exports, "useTracker", { enumerable: true, get: function () { return useTracker_js_1.useTracker; } });
|
|
14
|
-
var useStageCalldata_js_1 = require("./useStageCalldata.js");
|
|
15
|
-
Object.defineProperty(exports, "useStageCalldata", { enumerable: true, get: function () { return useStageCalldata_js_1.useStageCalldata; } });
|
|
16
|
-
var useCliProcess_js_1 = require("./useCliProcess.js");
|
|
17
|
-
Object.defineProperty(exports, "useCliProcess", { enumerable: true, get: function () { return useCliProcess_js_1.useCliProcess; } });
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/index.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAAhC,uGAAA,QAAQ,OAAA;AAGjB,qDAAiD;AAAxC,+GAAA,YAAY,OAAA;AAErB,uDAAiF;AAAxE,iHAAA,aAAa,OAAA;AAAE,mHAAA,eAAe,OAAA;AAAE,+GAAA,WAAW,OAAA;AAGpD,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AAGnB,6DAAyD;AAAhD,uHAAA,gBAAgB,OAAA;AAGzB,uDAAmD;AAA1C,iHAAA,aAAa,OAAA"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Cache loading hook for TUI
|
|
3
|
-
*/
|
|
4
|
-
import type { CacheData } from "../types.js";
|
|
5
|
-
export interface UseCacheResult {
|
|
6
|
-
data: CacheData | null;
|
|
7
|
-
loading: boolean;
|
|
8
|
-
error: string | null;
|
|
9
|
-
reload: () => Promise<void>;
|
|
10
|
-
}
|
|
11
|
-
export declare function useCache(cachePath?: string): UseCacheResult;
|
|
12
|
-
//# sourceMappingURL=useCache.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useCache.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useCache.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA8D7C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED,wBAAgB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CA6C3D"}
|