@gzeoneth/gov-tracker 0.2.1-alpha.cli-preview.a5817b4 → 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 -224
- 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
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gzeoneth/gov-tracker",
|
|
3
|
-
"version": "0.2.1-alpha.
|
|
3
|
+
"version": "0.2.1-alpha.main.b2eeb41",
|
|
4
4
|
"description": "Lightweight, high-performance library for tracking Arbitrum DAO governance proposal lifecycle stages",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "gzeoneth",
|
|
@@ -61,15 +61,12 @@
|
|
|
61
61
|
"ethers": "^5.8.0"
|
|
62
62
|
},
|
|
63
63
|
"optionalDependencies": {
|
|
64
|
-
"commander": "^14.0.0"
|
|
65
|
-
"ink": "^3.2.0",
|
|
66
|
-
"react": "^17.0.2"
|
|
64
|
+
"commander": "^14.0.0"
|
|
67
65
|
},
|
|
68
66
|
"devDependencies": {
|
|
69
67
|
"@eslint/js": "^9.39.2",
|
|
70
68
|
"@types/debug": "^4.1.12",
|
|
71
69
|
"@types/node": "^22.0.0",
|
|
72
|
-
"@types/react": "^18.2.0",
|
|
73
70
|
"@typescript-eslint/eslint-plugin": "^8.52.0",
|
|
74
71
|
"@typescript-eslint/parser": "^8.52.0",
|
|
75
72
|
"@vitest/coverage-v8": "^4.0.0",
|
|
@@ -79,7 +76,6 @@
|
|
|
79
76
|
"jiti": "^2.6.1",
|
|
80
77
|
"knip": "^5.80.0",
|
|
81
78
|
"lint-staged": "^16.2.7",
|
|
82
|
-
"node-pty": "^1.1.0",
|
|
83
79
|
"prettier": "^3.7.4",
|
|
84
80
|
"ts-node": "^10.9.2",
|
|
85
81
|
"typescript": "^5.8.0",
|
package/dist/cli/tui/App.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Main TUI Application Component
|
|
3
|
-
*
|
|
4
|
-
* Routes between views and manages global state.
|
|
5
|
-
*/
|
|
6
|
-
import type { ProviderBundle } from "../lib/cli.js";
|
|
7
|
-
export interface AppProps {
|
|
8
|
-
cachePath: string;
|
|
9
|
-
providers?: ProviderBundle;
|
|
10
|
-
verbose?: boolean;
|
|
11
|
-
}
|
|
12
|
-
export declare function App({ cachePath, providers: providerBundle, verbose }: AppProps): React.ReactElement;
|
|
13
|
-
//# sourceMappingURL=App.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/App.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAgDpD,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAgBD,wBAAgB,GAAG,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE,QAAQ,GAAG,KAAK,CAAC,YAAY,CAwInG"}
|
package/dist/cli/tui/App.js
DELETED
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Main TUI Application Component
|
|
4
|
-
*
|
|
5
|
-
* Routes between views and manages global state.
|
|
6
|
-
*/
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.App = App;
|
|
9
|
-
const ink_wrapper_js_1 = require("./ink-wrapper.js");
|
|
10
|
-
const react_1 = require("react");
|
|
11
|
-
const index_js_1 = require("./hooks/index.js");
|
|
12
|
-
const config_js_1 = require("./config.js");
|
|
13
|
-
const ProposalList_js_1 = require("./views/ProposalList.js");
|
|
14
|
-
const ProposalDetail_js_1 = require("./views/ProposalDetail.js");
|
|
15
|
-
const CalldataView_js_1 = require("./views/CalldataView.js");
|
|
16
|
-
const StageView_js_1 = require("./views/StageView.js");
|
|
17
|
-
const SimulationView_js_1 = require("./views/SimulationView.js");
|
|
18
|
-
const DescriptionView_js_1 = require("./views/DescriptionView.js");
|
|
19
|
-
const ElectionView_js_1 = require("./views/ElectionView.js");
|
|
20
|
-
const HelpView_js_1 = require("./views/HelpView.js");
|
|
21
|
-
const SettingsView_js_1 = require("./views/SettingsView.js");
|
|
22
|
-
const Spinner_js_1 = require("./components/Spinner.js");
|
|
23
|
-
const Skeleton_js_1 = require("./components/Skeleton.js");
|
|
24
|
-
class ErrorBoundary extends react_1.Component {
|
|
25
|
-
constructor(props) {
|
|
26
|
-
super(props);
|
|
27
|
-
this.state = { hasError: false, error: null };
|
|
28
|
-
}
|
|
29
|
-
static getDerivedStateFromError(error) {
|
|
30
|
-
return { hasError: true, error };
|
|
31
|
-
}
|
|
32
|
-
componentDidCatch(error, errorInfo) {
|
|
33
|
-
console.error("TUI Error:", error, errorInfo);
|
|
34
|
-
}
|
|
35
|
-
render() {
|
|
36
|
-
if (this.state.hasError) {
|
|
37
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", padding: 1 },
|
|
38
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red", bold: true }, "Something went wrong"),
|
|
39
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, this.state.error?.message ?? "Unknown error"),
|
|
40
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray", marginTop: 1 }, "Press q to quit")));
|
|
41
|
-
}
|
|
42
|
-
return this.props.children;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
function useTerminalHeight() {
|
|
46
|
-
const [height, setHeight] = (0, react_1.useState)(process.stdout.rows || 24);
|
|
47
|
-
(0, react_1.useEffect)(() => {
|
|
48
|
-
const handleResize = () => setHeight(process.stdout.rows || 24);
|
|
49
|
-
process.stdout.on("resize", handleResize);
|
|
50
|
-
return () => {
|
|
51
|
-
process.stdout.off("resize", handleResize);
|
|
52
|
-
};
|
|
53
|
-
}, []);
|
|
54
|
-
return height;
|
|
55
|
-
}
|
|
56
|
-
function App({ cachePath, providers: providerBundle, verbose }) {
|
|
57
|
-
const { exit } = (0, ink_wrapper_js_1.useApp)();
|
|
58
|
-
const cache = (0, index_js_1.useCache)(cachePath);
|
|
59
|
-
const navigation = (0, index_js_1.useNavigation)();
|
|
60
|
-
const { items } = (0, index_js_1.useProposals)(cache.data, navigation.state.filter, navigation.state.searchQuery, navigation.state.sort);
|
|
61
|
-
const tracker = (0, index_js_1.useTracker)({
|
|
62
|
-
providers: providerBundle,
|
|
63
|
-
cachePath,
|
|
64
|
-
onDiscoveryComplete: cache.reload,
|
|
65
|
-
});
|
|
66
|
-
const terminalHeight = useTerminalHeight();
|
|
67
|
-
const [configWarning, setConfigWarning] = (0, react_1.useState)(null);
|
|
68
|
-
(0, react_1.useEffect)(() => {
|
|
69
|
-
const { warning } = (0, config_js_1.loadConfigWithStatus)();
|
|
70
|
-
if (warning) {
|
|
71
|
-
setConfigWarning(warning);
|
|
72
|
-
}
|
|
73
|
-
}, []);
|
|
74
|
-
(0, react_1.useEffect)(() => {
|
|
75
|
-
if (verbose && cache.error) {
|
|
76
|
-
console.error("Cache error:", cache.error);
|
|
77
|
-
}
|
|
78
|
-
}, [verbose, cache.error]);
|
|
79
|
-
(0, react_1.useEffect)(() => {
|
|
80
|
-
if (tracker.lastResult && navigation.state.view === "detail") {
|
|
81
|
-
void cache.reload();
|
|
82
|
-
}
|
|
83
|
-
// Only trigger on lastResult change; view check is a guard condition
|
|
84
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
85
|
-
}, [tracker.lastResult]);
|
|
86
|
-
const handleQuit = () => {
|
|
87
|
-
exit();
|
|
88
|
-
};
|
|
89
|
-
if (cache.loading) {
|
|
90
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", height: terminalHeight, padding: 1 },
|
|
91
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginBottom: 1 },
|
|
92
|
-
ink_wrapper_js_1.React.createElement(Spinner_js_1.Spinner, { text: "Loading proposals..." })),
|
|
93
|
-
ink_wrapper_js_1.React.createElement(Skeleton_js_1.SkeletonList, { rows: 10, columns: [3, 45, 12, 10] }),
|
|
94
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
95
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, cachePath))));
|
|
96
|
-
}
|
|
97
|
-
if (cache.error) {
|
|
98
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", height: terminalHeight, padding: 1 },
|
|
99
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" }, "Error loading cache:"),
|
|
100
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, cache.error),
|
|
101
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray", marginTop: 1 }, "Press q to quit")));
|
|
102
|
-
}
|
|
103
|
-
const { view, selectedProposal } = navigation.state;
|
|
104
|
-
const renderView = () => {
|
|
105
|
-
if (view === "help") {
|
|
106
|
-
return ink_wrapper_js_1.React.createElement(HelpView_js_1.HelpView, { navigation: navigation });
|
|
107
|
-
}
|
|
108
|
-
if (view === "settings") {
|
|
109
|
-
return ink_wrapper_js_1.React.createElement(SettingsView_js_1.SettingsView, { navigation: navigation });
|
|
110
|
-
}
|
|
111
|
-
if (view === "list") {
|
|
112
|
-
return (ink_wrapper_js_1.React.createElement(ProposalList_js_1.ProposalList, { items: items, data: cache.data, navigation: navigation, tracker: tracker, onQuit: handleQuit, onReload: cache.reload }));
|
|
113
|
-
}
|
|
114
|
-
if (view === "election") {
|
|
115
|
-
return ink_wrapper_js_1.React.createElement(ElectionView_js_1.ElectionView, { navigation: navigation, providers: providerBundle });
|
|
116
|
-
}
|
|
117
|
-
if (!selectedProposal) {
|
|
118
|
-
navigation.back();
|
|
119
|
-
return ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null, "Returning to list...");
|
|
120
|
-
}
|
|
121
|
-
switch (view) {
|
|
122
|
-
case "detail":
|
|
123
|
-
return (ink_wrapper_js_1.React.createElement(ProposalDetail_js_1.ProposalDetail, { proposal: selectedProposal, navigation: navigation, tracker: tracker }));
|
|
124
|
-
case "calldata":
|
|
125
|
-
return ink_wrapper_js_1.React.createElement(CalldataView_js_1.CalldataView, { proposal: selectedProposal, navigation: navigation });
|
|
126
|
-
case "stage":
|
|
127
|
-
return ink_wrapper_js_1.React.createElement(StageView_js_1.StageView, { proposal: selectedProposal, navigation: navigation });
|
|
128
|
-
case "simulation":
|
|
129
|
-
return ink_wrapper_js_1.React.createElement(SimulationView_js_1.SimulationView, { proposal: selectedProposal, navigation: navigation });
|
|
130
|
-
case "description":
|
|
131
|
-
return ink_wrapper_js_1.React.createElement(DescriptionView_js_1.DescriptionView, { proposal: selectedProposal, navigation: navigation });
|
|
132
|
-
default:
|
|
133
|
-
return ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null,
|
|
134
|
-
"Unknown view: ",
|
|
135
|
-
view);
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
return (ink_wrapper_js_1.React.createElement(ErrorBoundary, null,
|
|
139
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", height: terminalHeight },
|
|
140
|
-
configWarning && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { paddingX: 1 },
|
|
141
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "yellow" },
|
|
142
|
-
"[Warning] ",
|
|
143
|
-
configWarning))),
|
|
144
|
-
renderView())));
|
|
145
|
-
}
|
|
146
|
-
//# sourceMappingURL=App.js.map
|
package/dist/cli/tui/App.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/cli/tui/App.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Reusable collapsible section component
|
|
3
|
-
*/
|
|
4
|
-
interface CollapsibleSectionProps {
|
|
5
|
-
title: string;
|
|
6
|
-
isExpanded: boolean;
|
|
7
|
-
onToggle?: () => void;
|
|
8
|
-
badge?: string;
|
|
9
|
-
badgeColor?: string;
|
|
10
|
-
children?: React.ReactNode;
|
|
11
|
-
}
|
|
12
|
-
export declare function CollapsibleSection({ title, isExpanded, badge, badgeColor, children, }: CollapsibleSectionProps): React.ReactElement;
|
|
13
|
-
interface SectionItemProps {
|
|
14
|
-
label: string;
|
|
15
|
-
value: string | React.ReactNode;
|
|
16
|
-
color?: string;
|
|
17
|
-
}
|
|
18
|
-
export declare function SectionItem({ label, value, color }: SectionItemProps): React.ReactElement;
|
|
19
|
-
export {};
|
|
20
|
-
//# sourceMappingURL=CollapsibleSection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleSection.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/CollapsibleSection.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,UAAU,uBAAuB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,UAAU,EACV,KAAK,EACL,UAAmB,EACnB,QAAQ,GACT,EAAE,uBAAuB,GAAG,KAAK,CAAC,YAAY,CAgB9C;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAe,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAWnG"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Reusable collapsible section component
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CollapsibleSection = CollapsibleSection;
|
|
7
|
-
exports.SectionItem = SectionItem;
|
|
8
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
9
|
-
function CollapsibleSection({ title, isExpanded, badge, badgeColor = "gray", children, }) {
|
|
10
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column" },
|
|
11
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
12
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { bold: true, color: "cyan" },
|
|
13
|
-
isExpanded ? "▼" : "▶",
|
|
14
|
-
" ",
|
|
15
|
-
title),
|
|
16
|
-
badge && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: badgeColor },
|
|
17
|
-
" (",
|
|
18
|
-
badge,
|
|
19
|
-
")"))),
|
|
20
|
-
isExpanded && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", marginLeft: 2, marginTop: 0 }, children))));
|
|
21
|
-
}
|
|
22
|
-
function SectionItem({ label, value, color = "white" }) {
|
|
23
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
24
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
25
|
-
label,
|
|
26
|
-
": "),
|
|
27
|
-
typeof value === "string" ? (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: color }, value)) : (value)));
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=CollapsibleSection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CollapsibleSection.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/CollapsibleSection.tsx"],"names":[],"mappings":";AAAA;;GAEG;;AAaH,gDAsBC;AAQD,kCAWC;AApDD,sDAAqD;AAWrD,SAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,UAAU,EACV,KAAK,EACL,UAAU,GAAG,MAAM,EACnB,QAAQ,GACgB;IACxB,OAAO,CACL,qCAAC,oBAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,qCAAC,oBAAG;YACF,qCAAC,qBAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM;gBAAE,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;gBAAG,KAAK,CAAQ;YAC9D,KAAK,IAAI,CACR,qCAAC,qBAAI,IAAC,KAAK,EAAE,UAA0D;;gBAAK,KAAK;oBAAS,CAC3F,CACG;QACL,UAAU,IAAI,CACb,qCAAC,oBAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,IACpD,QAAQ,CACL,CACP,CACG,CACP,CAAC;AACJ,CAAC;AAQD,SAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,EAAoB;IAC7E,OAAO,CACL,qCAAC,oBAAG;QACF,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM;YAAE,KAAK;iBAAU;QAClC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC3B,qCAAC,qBAAI,IAAC,KAAK,EAAE,KAAwE,IAAG,KAAK,CAAQ,CACtG,CAAC,CAAC,CAAC,CACF,KAAK,CACN,CACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Confirmation dialog component
|
|
3
|
-
*/
|
|
4
|
-
interface ConfirmDialogProps {
|
|
5
|
-
title: string;
|
|
6
|
-
message: string;
|
|
7
|
-
confirmLabel?: string;
|
|
8
|
-
cancelLabel?: string;
|
|
9
|
-
onConfirm: () => void;
|
|
10
|
-
onCancel: () => void;
|
|
11
|
-
}
|
|
12
|
-
export declare function ConfirmDialog({ title, message, confirmLabel, cancelLabel, onConfirm, onCancel, }: ConfirmDialogProps): React.ReactElement;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=ConfirmDialog.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/ConfirmDialog.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,OAAO,EACP,YAAoB,EACpB,WAAkB,EAClB,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,GAAG,KAAK,CAAC,YAAY,CA0BzC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Confirmation dialog component
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ConfirmDialog = ConfirmDialog;
|
|
7
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
8
|
-
function ConfirmDialog({ title, message, confirmLabel = "Yes", cancelLabel = "No", onConfirm, onCancel, }) {
|
|
9
|
-
(0, ink_wrapper_js_1.useInput)((input, key) => {
|
|
10
|
-
if (input.toLowerCase() === "y" || key.return) {
|
|
11
|
-
onConfirm();
|
|
12
|
-
}
|
|
13
|
-
else if (input.toLowerCase() === "n" || key.escape) {
|
|
14
|
-
onCancel();
|
|
15
|
-
}
|
|
16
|
-
});
|
|
17
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", borderStyle: "double", borderColor: "yellow", paddingX: 2, paddingY: 1 },
|
|
18
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { bold: true, color: "yellow" }, title),
|
|
19
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null, message),
|
|
20
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
21
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "green" },
|
|
22
|
-
"[Y] ",
|
|
23
|
-
confirmLabel),
|
|
24
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null, " "),
|
|
25
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "red" },
|
|
26
|
-
"[N] ",
|
|
27
|
-
cancelLabel))));
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=ConfirmDialog.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConfirmDialog.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/ConfirmDialog.tsx"],"names":[],"mappings":";AAAA;;GAEG;;AAaH,sCAiCC;AA5CD,sDAAyE;AAWzE,SAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,OAAO,EACP,YAAY,GAAG,KAAK,EACpB,WAAW,GAAG,IAAI,EAClB,SAAS,EACT,QAAQ,GACW;IACnB,IAAA,yBAAQ,EAAC,CAAC,KAAa,EAAE,GAAa,EAAE,EAAE;QACxC,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YAC9C,SAAS,EAAE,CAAC;QACd,CAAC;aAAM,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACrD,QAAQ,EAAE,CAAC;QACb,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,qCAAC,oBAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,QAAQ,EACpB,WAAW,EAAC,QAAQ,EACpB,QAAQ,EAAE,CAAC,EACX,QAAQ,EAAE,CAAC;QAEX,qCAAC,qBAAI,IAAC,IAAI,QAAC,KAAK,EAAC,QAAQ,IAAE,KAAK,CAAQ;QACxC,qCAAC,qBAAI,QAAE,OAAO,CAAQ;QACtB,qCAAC,oBAAG,IAAC,SAAS,EAAE,CAAC;YACf,qCAAC,qBAAI,IAAC,KAAK,EAAC,OAAO;;gBAAM,YAAY,CAAQ;YAC7C,qCAAC,qBAAI,YAAS;YACd,qCAAC,qBAAI,IAAC,KAAK,EAAC,KAAK;;gBAAM,WAAW,CAAQ,CACtC,CACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Text component that can be copied to clipboard
|
|
3
|
-
*/
|
|
4
|
-
interface CopyableTextProps {
|
|
5
|
-
value: string;
|
|
6
|
-
label?: string;
|
|
7
|
-
color?: string;
|
|
8
|
-
showHint?: boolean;
|
|
9
|
-
onCopy?: (success: boolean) => void;
|
|
10
|
-
}
|
|
11
|
-
export declare function CopyableText({ value, label, color, showHint, }: CopyableTextProps): React.ReactElement;
|
|
12
|
-
interface CopyFeedbackProps {
|
|
13
|
-
message: string;
|
|
14
|
-
type: "success" | "error";
|
|
15
|
-
}
|
|
16
|
-
export declare function CopyFeedback({ message, type }: CopyFeedbackProps): React.ReactElement;
|
|
17
|
-
export declare function useCopyState(): {
|
|
18
|
-
feedback: string | null;
|
|
19
|
-
feedbackType: "success" | "error";
|
|
20
|
-
copy: (text: string, label?: string) => void;
|
|
21
|
-
};
|
|
22
|
-
export {};
|
|
23
|
-
//# sourceMappingURL=CopyableText.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CopyableText.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/CopyableText.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAKH,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAK,EACL,KAAc,EACd,QAAgB,GACjB,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAQxC;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;CAC3B;AAED,wBAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAQrF;AAED,wBAAgB,YAAY,IAAI;IAC9B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,SAAS,GAAG,OAAO,CAAC;IAClC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C,CAwBA"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Text component that can be copied to clipboard
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.CopyableText = CopyableText;
|
|
7
|
-
exports.CopyFeedback = CopyFeedback;
|
|
8
|
-
exports.useCopyState = useCopyState;
|
|
9
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
10
|
-
const index_js_1 = require("../utils/index.js");
|
|
11
|
-
function CopyableText({ value, label, color = "blue", showHint = false, }) {
|
|
12
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
13
|
-
label && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
14
|
-
label,
|
|
15
|
-
": "),
|
|
16
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: color }, value),
|
|
17
|
-
showHint && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, " (y to copy)")));
|
|
18
|
-
}
|
|
19
|
-
function CopyFeedback({ message, type }) {
|
|
20
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
21
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: type === "success" ? "green" : "red" },
|
|
22
|
-
type === "success" ? "✓" : "✗",
|
|
23
|
-
" ",
|
|
24
|
-
message)));
|
|
25
|
-
}
|
|
26
|
-
function useCopyState() {
|
|
27
|
-
const [feedback, setFeedback] = (0, ink_wrapper_js_1.useState)(null);
|
|
28
|
-
const [feedbackType, setFeedbackType] = (0, ink_wrapper_js_1.useState)("success");
|
|
29
|
-
(0, ink_wrapper_js_1.useEffect)(() => {
|
|
30
|
-
if (feedback) {
|
|
31
|
-
const timer = setTimeout(() => setFeedback(null), 2000);
|
|
32
|
-
return () => clearTimeout(timer);
|
|
33
|
-
}
|
|
34
|
-
return undefined;
|
|
35
|
-
}, [feedback]);
|
|
36
|
-
const copy = (text, label = "Text") => {
|
|
37
|
-
const success = (0, index_js_1.copyToClipboard)(text);
|
|
38
|
-
if (success) {
|
|
39
|
-
setFeedback(`${label} copied to clipboard`);
|
|
40
|
-
setFeedbackType("success");
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
setFeedback("Failed to copy - clipboard not available");
|
|
44
|
-
setFeedbackType("error");
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
return { feedback, feedbackType, copy };
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=CopyableText.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CopyableText.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/CopyableText.tsx"],"names":[],"mappings":";AAAA;;GAEG;;AAaH,oCAaC;AAOD,oCAQC;AAED,oCA4BC;AArED,sDAA0E;AAC1E,gDAAoD;AAUpD,SAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAK,EACL,KAAK,GAAG,MAAM,EACd,QAAQ,GAAG,KAAK,GACE;IAClB,OAAO,CACL,qCAAC,oBAAG;QACD,KAAK,IAAI,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM;YAAE,KAAK;iBAAU;QAC7C,qCAAC,qBAAI,IAAC,KAAK,EAAE,KAAwE,IAAG,KAAK,CAAQ;QACpG,QAAQ,IAAI,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM,mBAAoB,CAC/C,CACP,CAAC;AACJ,CAAC;AAOD,SAAgB,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAqB;IAC/D,OAAO,CACL,qCAAC,oBAAG;QACF,qCAAC,qBAAI,IAAC,KAAK,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK;YAC9C,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;;YAAG,OAAO,CACpC,CACH,CACP,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY;IAK1B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,yBAAQ,EAAgB,IAAI,CAAC,CAAC;IAC9D,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,yBAAQ,EAAsB,SAAS,CAAC,CAAC;IAEjF,IAAA,0BAAS,EAAC,GAAG,EAAE;QACb,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;YACxD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,KAAK,GAAG,MAAM,EAAE,EAAE;QAC5C,MAAM,OAAO,GAAG,IAAA,0BAAe,EAAC,IAAI,CAAC,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACZ,WAAW,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;YAC5C,eAAe,CAAC,SAAS,CAAC,CAAC;QAC7B,CAAC;aAAM,CAAC;YACN,WAAW,CAAC,0CAA0C,CAAC,CAAC;YACxD,eAAe,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Empty state component for when no data is available
|
|
3
|
-
*/
|
|
4
|
-
interface EmptyStateProps {
|
|
5
|
-
title: string;
|
|
6
|
-
message?: string;
|
|
7
|
-
hint?: string;
|
|
8
|
-
}
|
|
9
|
-
export declare function EmptyState({ title, message, hint }: EmptyStateProps): React.ReactElement;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=EmptyState.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EmptyState.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/EmptyState.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,eAAe,GAAG,KAAK,CAAC,YAAY,CAoBxF"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Empty state component for when no data is available
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.EmptyState = EmptyState;
|
|
7
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
8
|
-
function EmptyState({ title, message, hint }) {
|
|
9
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", alignItems: "center", marginY: 2 },
|
|
10
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" },
|
|
11
|
-
" ",
|
|
12
|
-
"____",
|
|
13
|
-
"\n",
|
|
14
|
-
" ",
|
|
15
|
-
"/ __ \\\\",
|
|
16
|
-
"\n",
|
|
17
|
-
" ",
|
|
18
|
-
"| | | |",
|
|
19
|
-
"\n",
|
|
20
|
-
" ",
|
|
21
|
-
"| | | |",
|
|
22
|
-
"\n",
|
|
23
|
-
" ",
|
|
24
|
-
"| |__| |",
|
|
25
|
-
"\n",
|
|
26
|
-
" ",
|
|
27
|
-
"\\\\____/",
|
|
28
|
-
"\n"),
|
|
29
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { bold: true, color: "yellow" }, title),
|
|
30
|
-
message && ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, message),
|
|
31
|
-
hint && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
32
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "cyan" }, hint)))));
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=EmptyState.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EmptyState.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/EmptyState.tsx"],"names":[],"mappings":";AAAA;;GAEG;;AAUH,gCAoBC;AA5BD,sDAAqD;AAQrD,SAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAmB;IAClE,OAAO,CACL,qCAAC,oBAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC;QACxD,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM;YACf,MAAM;;YAAM,IAAI;YAChB,KAAK;;YAAS,IAAI;YAClB,IAAI;;YAAU,IAAI;YAClB,IAAI;;YAAU,IAAI;YAClB,IAAI;;YAAU,IAAI;YAClB,KAAK;;YAAS,IAAI,CACd;QACP,qCAAC,qBAAI,IAAC,IAAI,QAAC,KAAK,EAAC,QAAQ,IAAE,KAAK,CAAQ;QACvC,OAAO,IAAI,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM,IAAE,OAAO,CAAQ;QAC9C,IAAI,IAAI,CACP,qCAAC,oBAAG,IAAC,SAAS,EAAE,CAAC;YACf,qCAAC,qBAAI,IAAC,KAAK,EAAC,MAAM,IAAE,IAAI,CAAQ,CAC5B,CACP,CACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Error display component with retry option
|
|
3
|
-
*/
|
|
4
|
-
interface ErrorDisplayProps {
|
|
5
|
-
error: string;
|
|
6
|
-
title?: string;
|
|
7
|
-
onRetry?: () => void;
|
|
8
|
-
retryKey?: string;
|
|
9
|
-
}
|
|
10
|
-
export declare function ErrorDisplay({ error, title, onRetry, retryKey, }: ErrorDisplayProps): React.ReactElement;
|
|
11
|
-
interface ErrorBannerProps {
|
|
12
|
-
error: string;
|
|
13
|
-
compact?: boolean;
|
|
14
|
-
}
|
|
15
|
-
export declare function ErrorBanner({ error, compact }: ErrorBannerProps): React.ReactElement;
|
|
16
|
-
export {};
|
|
17
|
-
//# sourceMappingURL=ErrorDisplay.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorDisplay.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/ErrorDisplay.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,UAAU,iBAAiB;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAkCD,wBAAgB,YAAY,CAAC,EAC3B,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAc,GACf,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAmBxC;AAED,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,WAAW,CAAC,EAAE,KAAK,EAAE,OAAe,EAAE,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAkB5F"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Error display component with retry option
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ErrorDisplay = ErrorDisplay;
|
|
7
|
-
exports.ErrorBanner = ErrorBanner;
|
|
8
|
-
const ink_wrapper_js_1 = require("../ink-wrapper.js");
|
|
9
|
-
function categorizeError(error) {
|
|
10
|
-
const lowerError = error.toLowerCase();
|
|
11
|
-
// Network errors: connection issues, DNS failures, timeouts
|
|
12
|
-
if (lowerError.includes("network") ||
|
|
13
|
-
lowerError.includes("timeout") ||
|
|
14
|
-
lowerError.includes("etimedout") ||
|
|
15
|
-
lowerError.includes("econnrefused") ||
|
|
16
|
-
lowerError.includes("econnreset") ||
|
|
17
|
-
lowerError.includes("enotfound") ||
|
|
18
|
-
lowerError.includes("ehostunreach") ||
|
|
19
|
-
lowerError.includes("enetunreach")) {
|
|
20
|
-
return { type: "Network", color: "yellow" };
|
|
21
|
-
}
|
|
22
|
-
if (lowerError.includes("rpc") || lowerError.includes("provider")) {
|
|
23
|
-
return { type: "RPC", color: "yellow" };
|
|
24
|
-
}
|
|
25
|
-
if (lowerError.includes("permission") || lowerError.includes("unauthorized") || lowerError.includes("forbidden")) {
|
|
26
|
-
return { type: "Permission", color: "red" };
|
|
27
|
-
}
|
|
28
|
-
if (lowerError.includes("not found") || lowerError.includes("404")) {
|
|
29
|
-
return { type: "Not Found", color: "gray" };
|
|
30
|
-
}
|
|
31
|
-
if (lowerError.includes("rate limit") || lowerError.includes("throttl")) {
|
|
32
|
-
return { type: "Rate Limit", color: "yellow" };
|
|
33
|
-
}
|
|
34
|
-
return { type: "Error", color: "red" };
|
|
35
|
-
}
|
|
36
|
-
function ErrorDisplay({ error, title, onRetry, retryKey = "r", }) {
|
|
37
|
-
const { type, color } = categorizeError(error);
|
|
38
|
-
const displayTitle = title ?? type;
|
|
39
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { flexDirection: "column", borderStyle: "round", borderColor: color, paddingX: 1, paddingY: 0 },
|
|
40
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
41
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: color, bold: true },
|
|
42
|
-
displayTitle,
|
|
43
|
-
": "),
|
|
44
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "white" }, error)),
|
|
45
|
-
onRetry && (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, { marginTop: 1 },
|
|
46
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, "Press "),
|
|
47
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "cyan" }, retryKey),
|
|
48
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, " to retry")))));
|
|
49
|
-
}
|
|
50
|
-
function ErrorBanner({ error, compact = false }) {
|
|
51
|
-
const { type, color } = categorizeError(error);
|
|
52
|
-
if (compact) {
|
|
53
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
54
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: color },
|
|
55
|
-
"[",
|
|
56
|
-
type,
|
|
57
|
-
"] "),
|
|
58
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: "gray" }, error.length > 50 ? error.slice(0, 50) + "..." : error)));
|
|
59
|
-
}
|
|
60
|
-
return (ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Box, null,
|
|
61
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, { color: color, bold: true },
|
|
62
|
-
type,
|
|
63
|
-
": "),
|
|
64
|
-
ink_wrapper_js_1.React.createElement(ink_wrapper_js_1.Text, null, error)));
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=ErrorDisplay.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorDisplay.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/ErrorDisplay.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Header component showing title and stats
|
|
3
|
-
*/
|
|
4
|
-
import type { TrackerStats } from "../../../types/index.js";
|
|
5
|
-
import type { ViewType, FilterType, SortType } from "../types.js";
|
|
6
|
-
interface HeaderProps {
|
|
7
|
-
view: ViewType;
|
|
8
|
-
filter: FilterType;
|
|
9
|
-
sort?: SortType;
|
|
10
|
-
stats: TrackerStats | null;
|
|
11
|
-
hasProviders: boolean;
|
|
12
|
-
isTracking: boolean;
|
|
13
|
-
title?: string;
|
|
14
|
-
position?: {
|
|
15
|
-
current: number;
|
|
16
|
-
total: number;
|
|
17
|
-
};
|
|
18
|
-
breadcrumb?: string[];
|
|
19
|
-
}
|
|
20
|
-
export declare function Header({ view, filter, sort, stats, hasProviders, isTracking, title, position, breadcrumb, }: HeaderProps): React.ReactElement;
|
|
21
|
-
export {};
|
|
22
|
-
//# sourceMappingURL=Header.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/Header.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAElE,UAAU,WAAW;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AASD,wBAAgB,MAAM,CAAC,EACrB,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,UAAU,EACV,KAAK,EACL,QAAQ,EACR,UAAU,GACX,EAAE,WAAW,GAAG,KAAK,CAAC,YAAY,CAqFlC"}
|