@gzeoneth/gov-tracker 0.2.1-alpha.cli-preview.a5817b4 → 0.2.1-alpha.cli-preview.552bbdb

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 (139) hide show
  1. package/README.md +37 -3
  2. package/dist/abis.d.ts.map +1 -1
  3. package/dist/abis.js +22 -1
  4. package/dist/abis.js.map +1 -1
  5. package/dist/cli/cli.js +206 -12
  6. package/dist/cli/cli.js.map +1 -1
  7. package/dist/cli/lib/cli.d.ts +9 -1
  8. package/dist/cli/lib/cli.d.ts.map +1 -1
  9. package/dist/cli/lib/cli.js +80 -4
  10. package/dist/cli/lib/cli.js.map +1 -1
  11. package/dist/cli/tui/App.d.ts.map +1 -1
  12. package/dist/cli/tui/App.js +29 -23
  13. package/dist/cli/tui/App.js.map +1 -1
  14. package/dist/cli/tui/components/StageRow.d.ts.map +1 -1
  15. package/dist/cli/tui/components/StageRow.js +31 -36
  16. package/dist/cli/tui/components/StageRow.js.map +1 -1
  17. package/dist/cli/tui/hooks/index.d.ts +4 -0
  18. package/dist/cli/tui/hooks/index.d.ts.map +1 -1
  19. package/dist/cli/tui/hooks/index.js +5 -1
  20. package/dist/cli/tui/hooks/index.js.map +1 -1
  21. package/dist/cli/tui/hooks/useCache.d.ts.map +1 -1
  22. package/dist/cli/tui/hooks/useCache.js +30 -33
  23. package/dist/cli/tui/hooks/useCache.js.map +1 -1
  24. package/dist/cli/tui/hooks/useElectionData.d.ts +14 -0
  25. package/dist/cli/tui/hooks/useElectionData.d.ts.map +1 -0
  26. package/dist/cli/tui/hooks/useElectionData.js +86 -0
  27. package/dist/cli/tui/hooks/useElectionData.js.map +1 -0
  28. package/dist/cli/tui/hooks/useElectionDetails.d.ts +18 -0
  29. package/dist/cli/tui/hooks/useElectionDetails.d.ts.map +1 -0
  30. package/dist/cli/tui/hooks/useElectionDetails.js +47 -0
  31. package/dist/cli/tui/hooks/useElectionDetails.js.map +1 -0
  32. package/dist/cli/tui/hooks/useNavigation.d.ts.map +1 -1
  33. package/dist/cli/tui/hooks/useNavigation.js +65 -119
  34. package/dist/cli/tui/hooks/useNavigation.js.map +1 -1
  35. package/dist/cli/tui/hooks/useProposals.d.ts.map +1 -1
  36. package/dist/cli/tui/hooks/useProposals.js +56 -73
  37. package/dist/cli/tui/hooks/useProposals.js.map +1 -1
  38. package/dist/cli/tui/hooks/useTracker.d.ts.map +1 -1
  39. package/dist/cli/tui/hooks/useTracker.js +36 -41
  40. package/dist/cli/tui/hooks/useTracker.js.map +1 -1
  41. package/dist/cli/tui/utils/calldata-formatter.d.ts +17 -0
  42. package/dist/cli/tui/utils/calldata-formatter.d.ts.map +1 -0
  43. package/dist/cli/tui/utils/calldata-formatter.js +91 -0
  44. package/dist/cli/tui/utils/calldata-formatter.js.map +1 -0
  45. package/dist/cli/tui/utils/help-data.d.ts +15 -0
  46. package/dist/cli/tui/utils/help-data.d.ts.map +1 -0
  47. package/dist/cli/tui/utils/help-data.js +88 -0
  48. package/dist/cli/tui/utils/help-data.js.map +1 -0
  49. package/dist/cli/tui/utils/index.d.ts +11 -0
  50. package/dist/cli/tui/utils/index.d.ts.map +1 -1
  51. package/dist/cli/tui/utils/index.js +24 -1
  52. package/dist/cli/tui/utils/index.js.map +1 -1
  53. package/dist/cli/tui/utils/markdown-parser.d.ts +11 -0
  54. package/dist/cli/tui/utils/markdown-parser.d.ts.map +1 -0
  55. package/dist/cli/tui/utils/markdown-parser.js +100 -0
  56. package/dist/cli/tui/utils/markdown-parser.js.map +1 -0
  57. package/dist/cli/tui/utils/proposal-detail-helpers.d.ts +17 -0
  58. package/dist/cli/tui/utils/proposal-detail-helpers.d.ts.map +1 -0
  59. package/dist/cli/tui/utils/proposal-detail-helpers.js +46 -0
  60. package/dist/cli/tui/utils/proposal-detail-helpers.js.map +1 -0
  61. package/dist/cli/tui/utils/settings-data.d.ts +36 -0
  62. package/dist/cli/tui/utils/settings-data.d.ts.map +1 -0
  63. package/dist/cli/tui/utils/settings-data.js +220 -0
  64. package/dist/cli/tui/utils/settings-data.js.map +1 -0
  65. package/dist/cli/tui/utils/stage-formatter.d.ts +13 -0
  66. package/dist/cli/tui/utils/stage-formatter.d.ts.map +1 -0
  67. package/dist/cli/tui/utils/stage-formatter.js +100 -0
  68. package/dist/cli/tui/utils/stage-formatter.js.map +1 -0
  69. package/dist/cli/tui/views/CalldataView.d.ts.map +1 -1
  70. package/dist/cli/tui/views/CalldataView.js +14 -85
  71. package/dist/cli/tui/views/CalldataView.js.map +1 -1
  72. package/dist/cli/tui/views/DescriptionView.d.ts.map +1 -1
  73. package/dist/cli/tui/views/DescriptionView.js +1 -85
  74. package/dist/cli/tui/views/DescriptionView.js.map +1 -1
  75. package/dist/cli/tui/views/ElectionView.d.ts.map +1 -1
  76. package/dist/cli/tui/views/ElectionView.js +269 -169
  77. package/dist/cli/tui/views/ElectionView.js.map +1 -1
  78. package/dist/cli/tui/views/HelpView.d.ts.map +1 -1
  79. package/dist/cli/tui/views/HelpView.js +53 -122
  80. package/dist/cli/tui/views/HelpView.js.map +1 -1
  81. package/dist/cli/tui/views/ProposalDetail.d.ts.map +1 -1
  82. package/dist/cli/tui/views/ProposalDetail.js +35 -80
  83. package/dist/cli/tui/views/ProposalDetail.js.map +1 -1
  84. package/dist/cli/tui/views/ProposalList.d.ts.map +1 -1
  85. package/dist/cli/tui/views/ProposalList.js +92 -75
  86. package/dist/cli/tui/views/ProposalList.js.map +1 -1
  87. package/dist/cli/tui/views/SettingsView.d.ts.map +1 -1
  88. package/dist/cli/tui/views/SettingsView.js +37 -107
  89. package/dist/cli/tui/views/SettingsView.js.map +1 -1
  90. package/dist/cli/tui/views/SimulationView.d.ts.map +1 -1
  91. package/dist/cli/tui/views/SimulationView.js +3 -2
  92. package/dist/cli/tui/views/SimulationView.js.map +1 -1
  93. package/dist/cli/tui/views/StageView.d.ts.map +1 -1
  94. package/dist/cli/tui/views/StageView.js +7 -95
  95. package/dist/cli/tui/views/StageView.js.map +1 -1
  96. package/dist/deduplication.d.ts +132 -0
  97. package/dist/deduplication.d.ts.map +1 -0
  98. package/dist/deduplication.js +270 -0
  99. package/dist/deduplication.js.map +1 -0
  100. package/dist/election.d.ts +141 -1
  101. package/dist/election.d.ts.map +1 -1
  102. package/dist/election.js +505 -88
  103. package/dist/election.js.map +1 -1
  104. package/dist/index.d.ts +4 -2
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +27 -3
  107. package/dist/index.js.map +1 -1
  108. package/dist/stages/builder.d.ts +4 -0
  109. package/dist/stages/builder.d.ts.map +1 -1
  110. package/dist/stages/builder.js +7 -0
  111. package/dist/stages/builder.js.map +1 -1
  112. package/dist/stages/voting.d.ts.map +1 -1
  113. package/dist/stages/voting.js +5 -4
  114. package/dist/stages/voting.js.map +1 -1
  115. package/dist/tracker/discovery.d.ts +39 -8
  116. package/dist/tracker/discovery.d.ts.map +1 -1
  117. package/dist/tracker/discovery.js +141 -12
  118. package/dist/tracker/discovery.js.map +1 -1
  119. package/dist/tracker.d.ts +24 -4
  120. package/dist/tracker.d.ts.map +1 -1
  121. package/dist/tracker.js +57 -8
  122. package/dist/tracker.js.map +1 -1
  123. package/dist/types/core.d.ts +1 -1
  124. package/dist/types/core.d.ts.map +1 -1
  125. package/dist/types/election.d.ts +88 -0
  126. package/dist/types/election.d.ts.map +1 -1
  127. package/dist/types/index.d.ts +2 -2
  128. package/dist/types/index.d.ts.map +1 -1
  129. package/dist/types/index.js.map +1 -1
  130. package/dist/types/stages.d.ts +6 -0
  131. package/dist/types/stages.d.ts.map +1 -1
  132. package/dist/types/stages.js.map +1 -1
  133. package/dist/types/tracking.d.ts +27 -1
  134. package/dist/types/tracking.d.ts.map +1 -1
  135. package/dist/utils/timing.d.ts +13 -0
  136. package/dist/utils/timing.d.ts.map +1 -1
  137. package/dist/utils/timing.js +35 -0
  138. package/dist/utils/timing.js.map +1 -1
  139. package/package.json +1 -1
@@ -6,14 +6,35 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.useProposals = useProposals;
7
7
  const react_1 = require("react");
8
8
  const constants_js_1 = require("../../../constants.js");
9
- function getStages(checkpoint) {
9
+ function getAllStages(checkpoint) {
10
10
  return checkpoint.cachedData.completedStages ?? [];
11
11
  }
12
- function getCreatedStage(stages) {
13
- return stages.find((s) => s.type === "PROPOSAL_CREATED");
12
+ function findStageByType(stages, type) {
13
+ return stages.find((s) => s.type === type);
14
14
  }
15
15
  function getCreatedData(stages) {
16
- return getCreatedStage(stages)?.data;
16
+ return findStageByType(stages, "PROPOSAL_CREATED")?.data;
17
+ }
18
+ function getCreationTimestamp(stages) {
19
+ const createdStage = findStageByType(stages, "PROPOSAL_CREATED");
20
+ if (createdStage?.timing?.startedAt) {
21
+ return createdStage.timing.startedAt * 1000;
22
+ }
23
+ const l2TimelockStage = findStageByType(stages, "L2_TIMELOCK");
24
+ if (l2TimelockStage?.timing?.startedAt) {
25
+ return l2TimelockStage.timing.startedAt * 1000;
26
+ }
27
+ return null;
28
+ }
29
+ function hasExecutableStage(stages) {
30
+ return stages.some((s) => s.status === "READY" || s.executable === true);
31
+ }
32
+ function isElectionProposal(stages) {
33
+ const proposalType = getCreatedData(stages)?.proposalType;
34
+ return proposalType === "ELECTION_NOMINEE" || proposalType === "ELECTION_MEMBER";
35
+ }
36
+ function countCompletedStages(stages) {
37
+ return stages.filter((s) => s.status === "COMPLETED" || s.status === "SKIPPED").length;
17
38
  }
18
39
  function extractMarkdownTitle(description) {
19
40
  if (!description)
@@ -23,26 +44,23 @@ function extractMarkdownTitle(description) {
23
44
  const trimmed = line.trim();
24
45
  if (trimmed.startsWith("#")) {
25
46
  const title = trimmed.replace(/^#+\s*/, "").trim();
26
- // Return null if empty so fallback logic continues
27
47
  return title || null;
28
48
  }
29
49
  }
30
50
  return null;
31
51
  }
32
52
  function getProposalTitle(checkpoint) {
33
- const data = getCreatedData(getStages(checkpoint));
53
+ const data = getCreatedData(getAllStages(checkpoint));
34
54
  if (data?.description) {
35
55
  const mdTitle = extractMarkdownTitle(data.description);
36
- if (mdTitle) {
56
+ if (mdTitle)
37
57
  return mdTitle;
38
- }
39
58
  const firstLine = data.description
40
59
  .split("\n")
41
60
  .find((l) => l.trim())
42
61
  ?.trim();
43
- if (firstLine) {
62
+ if (firstLine)
44
63
  return firstLine;
45
- }
46
64
  }
47
65
  if (checkpoint.input.type === "governor") {
48
66
  return `Proposal ${checkpoint.input.proposalId}`;
@@ -53,8 +71,8 @@ function getProposalTitle(checkpoint) {
53
71
  return "Unknown";
54
72
  }
55
73
  function getProposalStatus(checkpoint) {
56
- const stages = getStages(checkpoint);
57
- const votingStage = stages.find((s) => s.type === "VOTING_ACTIVE");
74
+ const stages = getAllStages(checkpoint);
75
+ const votingStage = findStageByType(stages, "VOTING_ACTIVE");
58
76
  const votingData = votingStage?.data;
59
77
  if (votingData?.proposalState === "Defeated" || votingData?.proposalState === "Canceled") {
60
78
  return "failed";
@@ -70,7 +88,7 @@ function getProposalStatus(checkpoint) {
70
88
  return "active";
71
89
  }
72
90
  function getCurrentStageType(checkpoint) {
73
- const stages = getStages(checkpoint);
91
+ const stages = getAllStages(checkpoint);
74
92
  for (let i = stages.length - 1; i >= 0; i--) {
75
93
  if (stages[i].status !== "COMPLETED" && stages[i].status !== "SKIPPED") {
76
94
  return stages[i].type;
@@ -78,24 +96,6 @@ function getCurrentStageType(checkpoint) {
78
96
  }
79
97
  return checkpoint.lastProcessedStage;
80
98
  }
81
- function hasExecutableStage(stages) {
82
- return stages.some((s) => s.status === "READY" || s.executable === true);
83
- }
84
- function isElectionProposal(stages) {
85
- const proposalType = getCreatedData(stages)?.proposalType;
86
- return proposalType === "ELECTION_NOMINEE" || proposalType === "ELECTION_MEMBER";
87
- }
88
- function getCreationTimestamp(stages) {
89
- const createdStage = getCreatedStage(stages);
90
- if (createdStage?.timing?.startedAt) {
91
- return createdStage.timing.startedAt * 1000;
92
- }
93
- const l2TimelockStage = stages.find((s) => s.type === "L2_TIMELOCK");
94
- if (l2TimelockStage?.timing?.startedAt) {
95
- return l2TimelockStage.timing.startedAt * 1000;
96
- }
97
- return null;
98
- }
99
99
  function getItemType(checkpoint, stages) {
100
100
  if (isElectionProposal(stages))
101
101
  return "election";
@@ -103,53 +103,39 @@ function getItemType(checkpoint, stages) {
103
103
  return "timelock";
104
104
  return "governor";
105
105
  }
106
+ const filterPredicates = {
107
+ all: () => true,
108
+ active: (item) => item.status === "active",
109
+ complete: (item) => item.status === "complete",
110
+ timelocks: (item) => item.type === "timelock",
111
+ };
106
112
  function matchesFilter(item, filter) {
107
- // Elections have their own view (press 'e'), exclude from main list
108
113
  if (item.type === "election")
109
114
  return false;
110
- switch (filter) {
111
- case "all":
112
- return true;
113
- case "active":
114
- return item.status === "active";
115
- case "complete":
116
- return item.status === "complete";
117
- case "timelocks":
118
- return item.type === "timelock";
119
- default:
120
- return true;
121
- }
115
+ return filterPredicates[filter](item);
122
116
  }
123
- function getProgressNumber(progress) {
117
+ const STATUS_ORDER = { active: 0, complete: 1, failed: 2 };
118
+ function parseProgressNumber(progress) {
124
119
  const match = progress.match(/^(\d+)/);
125
120
  return match ? parseInt(match[1], 10) : 0;
126
121
  }
127
- function compareByDate(aDate, bDate, ascending) {
128
- if (aDate === null && bDate === null)
122
+ function nullSafeCompare(aVal, bVal, ascending) {
123
+ if (aVal === null && bVal === null)
129
124
  return 0;
130
- if (aDate === null)
125
+ if (aVal === null)
131
126
  return 1;
132
- if (bDate === null)
127
+ if (bVal === null)
133
128
  return -1;
134
- return ascending ? aDate - bDate : bDate - aDate;
135
- }
129
+ return ascending ? aVal - bVal : bVal - aVal;
130
+ }
131
+ const sortComparators = {
132
+ newest: (a, b) => nullSafeCompare(a.createdAt, b.createdAt, false),
133
+ oldest: (a, b) => nullSafeCompare(a.createdAt, b.createdAt, true),
134
+ progress: (a, b) => parseProgressNumber(b.stageProgress) - parseProgressNumber(a.stageProgress),
135
+ status: (a, b) => (STATUS_ORDER[a.status] ?? 3) - (STATUS_ORDER[b.status] ?? 3),
136
+ };
136
137
  function sortItems(items, sort) {
137
- return [...items].sort((a, b) => {
138
- switch (sort) {
139
- case "newest":
140
- return compareByDate(a.createdAt, b.createdAt, false);
141
- case "oldest":
142
- return compareByDate(a.createdAt, b.createdAt, true);
143
- case "progress":
144
- return getProgressNumber(b.stageProgress) - getProgressNumber(a.stageProgress);
145
- case "status": {
146
- const statusOrder = { active: 0, complete: 1, failed: 2 };
147
- return (statusOrder[a.status] ?? 3) - (statusOrder[b.status] ?? 3);
148
- }
149
- default:
150
- return 0;
151
- }
152
- });
138
+ return [...items].sort(sortComparators[sort]);
153
139
  }
154
140
  function useProposals(data, filter, searchQuery = "", sort = "newest") {
155
141
  return (0, react_1.useMemo)(() => {
@@ -159,10 +145,8 @@ function useProposals(data, filter, searchQuery = "", sort = "newest") {
159
145
  for (const [key, checkpoint] of data.checkpoints) {
160
146
  if (checkpoint.input.type === "discovery")
161
147
  continue;
162
- const stages = getStages(checkpoint);
163
- // Handle proposals with no stages yet (discovered but not tracked)
148
+ const stages = getAllStages(checkpoint);
164
149
  if (stages.length === 0) {
165
- // Skip untracked election proposals - they belong in the Elections view
166
150
  if (checkpoint.input.type === "governor" &&
167
151
  (0, constants_js_1.isElectionGovernor)(checkpoint.input.governorAddress)) {
168
152
  continue;
@@ -182,7 +166,7 @@ function useProposals(data, filter, searchQuery = "", sort = "newest") {
182
166
  title,
183
167
  type: checkpoint.input.type === "timelock" ? "timelock" : "governor",
184
168
  proposalType: undefined,
185
- status: "active", // Needs tracking
169
+ status: "active",
186
170
  stageProgress: "0/7",
187
171
  currentStage: null,
188
172
  hasExecutable: false,
@@ -191,14 +175,13 @@ function useProposals(data, filter, searchQuery = "", sort = "newest") {
191
175
  });
192
176
  continue;
193
177
  }
194
- const completedCount = stages.filter((s) => s.status === "COMPLETED" || s.status === "SKIPPED").length;
195
178
  items.push({
196
179
  key,
197
180
  title: getProposalTitle(checkpoint),
198
181
  type: getItemType(checkpoint, stages),
199
182
  proposalType: getCreatedData(stages)?.proposalType,
200
183
  status: getProposalStatus(checkpoint),
201
- stageProgress: `${completedCount}/7`,
184
+ stageProgress: `${countCompletedStages(stages)}/7`,
202
185
  currentStage: getCurrentStageType(checkpoint),
203
186
  hasExecutable: hasExecutableStage(stages),
204
187
  createdAt: getCreationTimestamp(stages),
@@ -1 +1 @@
1
- {"version":3,"file":"useProposals.js","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useProposals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useProposals.js","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useProposals.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useTracker.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useTracker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,cAAc,EAEd,mBAAmB,EAGpB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAcvD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAClC,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAClE,QAAQ,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AA2BD,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAiLvE"}
1
+ {"version":3,"file":"useTracker.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useTracker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,cAAc,EAEd,mBAAmB,EAGpB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAyCvD,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,cAAc,GAAG,IAAI,CAAC;IAClC,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAClE,QAAQ,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;CAClC;AAuBD,wBAAgB,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAkKvE"}
@@ -20,29 +20,40 @@ function getTxHashFromCheckpoint(checkpoint) {
20
20
  }
21
21
  throw new Error("Cannot track discovery checkpoint");
22
22
  }
23
- function buildCliArgs(config, cachePath) {
24
- const args = ["run", "--cache", cachePath];
25
- // RPC URLs from config
26
- if (config.rpc.l1Url)
27
- args.push("--l1-rpc", config.rpc.l1Url);
28
- if (config.rpc.l2Url)
29
- args.push("--l2-rpc", config.rpc.l2Url);
30
- if (config.rpc.novaUrl)
31
- args.push("--nova-rpc", config.rpc.novaUrl);
32
- // Discovery settings
33
- if (config.discovery.defaultDays) {
34
- args.push("--max-age-days", config.discovery.defaultDays.toString());
35
- }
36
- if (config.discovery.startBlock) {
37
- args.push("--start-block", config.discovery.startBlock.toString());
38
- }
39
- if (config.discovery.chunkSize) {
40
- args.push("--l2-chunk-size", config.discovery.chunkSize.toString());
41
- }
42
- if (config.discovery.concurrency > 1) {
43
- args.push("--concurrency", config.discovery.concurrency.toString());
23
+ async function prepareExecutableTransactions(tracker, result) {
24
+ const executableStages = result.stages.filter((s) => s.status === "READY" || s.executable);
25
+ const prepared = [];
26
+ let errorCount = 0;
27
+ for (const stage of executableStages) {
28
+ try {
29
+ const prep = await tracker.prepareTransaction(stage, { stages: result.stages });
30
+ if (prep.success) {
31
+ prepared.push(prep.prepared);
32
+ }
33
+ }
34
+ catch {
35
+ errorCount++;
36
+ }
44
37
  }
45
- return args;
38
+ return { prepared, errorCount };
39
+ }
40
+ function buildCliArgs(config, cachePath) {
41
+ const { rpc, discovery } = config;
42
+ const optionalArgs = [
43
+ [!!rpc.l1Url, "--l1-rpc", rpc.l1Url ?? ""],
44
+ [!!rpc.l2Url, "--l2-rpc", rpc.l2Url ?? ""],
45
+ [!!rpc.novaUrl, "--nova-rpc", rpc.novaUrl ?? ""],
46
+ [!!discovery.defaultDays, "--max-age-days", String(discovery.defaultDays ?? "")],
47
+ [!!discovery.startBlock, "--start-block", String(discovery.startBlock ?? "")],
48
+ [!!discovery.chunkSize, "--l2-chunk-size", String(discovery.chunkSize ?? "")],
49
+ [discovery.concurrency > 1, "--concurrency", String(discovery.concurrency)],
50
+ ];
51
+ return [
52
+ "run",
53
+ "--cache",
54
+ cachePath,
55
+ ...optionalArgs.filter(([cond]) => cond).flatMap(([, flag, val]) => [flag, val]),
56
+ ];
46
57
  }
47
58
  function useTracker(options) {
48
59
  const [isTracking, setIsTracking] = (0, react_1.useState)(false);
@@ -114,26 +125,10 @@ function useTracker(options) {
114
125
  return null;
115
126
  setLastResult(result);
116
127
  if (result) {
117
- const prepared = [];
118
- let prepErrors = 0;
119
- for (const stage of result.stages) {
120
- if (stage.status === "READY" || stage.executable) {
121
- try {
122
- const prep = await tracker.prepareTransaction(stage, {
123
- stages: result.stages,
124
- });
125
- if (prep.success) {
126
- prepared.push(prep.prepared);
127
- }
128
- }
129
- catch {
130
- prepErrors++;
131
- }
132
- }
133
- }
128
+ const { prepared, errorCount } = await prepareExecutableTransactions(tracker, result);
134
129
  setPreparedTxs(prepared);
135
- if (prepErrors > 0 && prepared.length === 0) {
136
- setError(`Failed to prepare ${prepErrors} transaction(s)`);
130
+ if (errorCount > 0 && prepared.length === 0) {
131
+ setError(`Failed to prepare ${errorCount} transaction(s)`);
137
132
  }
138
133
  }
139
134
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"useTracker.js","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useTracker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useTracker.js","sourceRoot":"","sources":["../../../../src/cli/tui/hooks/useTracker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Calldata formatting utilities for TUI display
3
+ */
4
+ import type { DecodedCalldata } from "../../../types/calldata.js";
5
+ export interface FormattedLine {
6
+ text: string;
7
+ indent: number;
8
+ foldable: boolean;
9
+ foldKey?: string;
10
+ foldedLineCount?: number;
11
+ isFoldedContent?: boolean;
12
+ }
13
+ export declare function formatDecodedCalldata(decoded: DecodedCalldata, indent?: number, keyPrefix?: string): FormattedLine[];
14
+ export declare function filterVisibleLines(allLines: FormattedLine[], expandedKeys: Set<string>): FormattedLine[];
15
+ export declare function getAllFoldableKeys(lines: FormattedLine[]): string[];
16
+ export declare function toggleFoldKey(expandedKeys: Set<string>, foldKey: string): Set<string>;
17
+ //# sourceMappingURL=calldata-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calldata-formatter.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/utils/calldata-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,4BAA4B,CAAC;AAEpF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAuDD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,eAAe,EACxB,MAAM,SAAI,EACV,SAAS,SAAS,GACjB,aAAa,EAAE,CAoBjB;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,aAAa,EAAE,EACzB,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,GACxB,aAAa,EAAE,CAKjB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,CAEnE;AAED,wBAAgB,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAQrF"}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ /**
3
+ * Calldata formatting utilities for TUI display
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.formatDecodedCalldata = formatDecodedCalldata;
7
+ exports.filterVisibleLines = filterVisibleLines;
8
+ exports.getAllFoldableKeys = getAllFoldableKeys;
9
+ exports.toggleFoldKey = toggleFoldKey;
10
+ const text_js_1 = require("./text.js");
11
+ const FOLD_THRESHOLD = 100;
12
+ function formatParameter(param, indent, keyPrefix) {
13
+ const lines = [];
14
+ const foldKey = `${keyPrefix}-${param.name}`;
15
+ let value = param.displayValue;
16
+ if (param.addressLabel) {
17
+ value = `${param.displayValue} [${param.addressLabel}]`;
18
+ }
19
+ const isFoldable = value.length > FOLD_THRESHOLD;
20
+ const wrappedLines = isFoldable ? (0, text_js_1.wrapText)(value, 80) : [value];
21
+ lines.push({
22
+ text: `${param.name} (${param.type}): ${wrappedLines[0]}`,
23
+ indent,
24
+ foldable: isFoldable,
25
+ foldKey: isFoldable ? foldKey : undefined,
26
+ foldedLineCount: isFoldable ? wrappedLines.length - 1 : undefined,
27
+ });
28
+ if (isFoldable && wrappedLines.length > 1) {
29
+ for (let i = 1; i < wrappedLines.length; i++) {
30
+ lines.push({
31
+ text: wrappedLines[i],
32
+ indent: indent + 1,
33
+ foldable: false,
34
+ isFoldedContent: true,
35
+ foldKey,
36
+ });
37
+ }
38
+ }
39
+ if (param.nested) {
40
+ lines.push({ text: "└─ [NESTED]", indent: indent + 1, foldable: false });
41
+ lines.push(...formatDecodedCalldata(param.nested, indent + 2, `${foldKey}-nested`));
42
+ }
43
+ if (param.nestedArray && param.nestedArray.length > 0) {
44
+ param.nestedArray.forEach((nested, i) => {
45
+ lines.push({ text: `[${i}]:`, indent: indent + 1, foldable: false });
46
+ lines.push(...formatDecodedCalldata(nested, indent + 2, `${foldKey}-arr-${i}`));
47
+ });
48
+ }
49
+ return lines;
50
+ }
51
+ function formatDecodedCalldata(decoded, indent = 0, keyPrefix = "root") {
52
+ const lines = [];
53
+ let header;
54
+ if (decoded.isRetryable) {
55
+ header = `Retryable Ticket → ${decoded.targetChain}`;
56
+ }
57
+ else if (decoded.signature) {
58
+ header = decoded.signature;
59
+ }
60
+ else {
61
+ header = `Unknown function (${decoded.selector})`;
62
+ }
63
+ lines.push({ text: header, indent, foldable: false });
64
+ if (decoded.parameters) {
65
+ decoded.parameters.forEach((param, i) => {
66
+ lines.push(...formatParameter(param, indent + 1, `${keyPrefix}-p${i}`));
67
+ });
68
+ }
69
+ return lines;
70
+ }
71
+ function filterVisibleLines(allLines, expandedKeys) {
72
+ return allLines.filter((line) => {
73
+ if (!line.isFoldedContent)
74
+ return true;
75
+ return line.foldKey && expandedKeys.has(line.foldKey);
76
+ });
77
+ }
78
+ function getAllFoldableKeys(lines) {
79
+ return lines.filter((l) => l.foldable && l.foldKey).map((l) => l.foldKey);
80
+ }
81
+ function toggleFoldKey(expandedKeys, foldKey) {
82
+ const next = new Set(expandedKeys);
83
+ if (next.has(foldKey)) {
84
+ next.delete(foldKey);
85
+ }
86
+ else {
87
+ next.add(foldKey);
88
+ }
89
+ return next;
90
+ }
91
+ //# sourceMappingURL=calldata-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calldata-formatter.js","sourceRoot":"","sources":["../../../../src/cli/tui/utils/calldata-formatter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Help view section data - keyboard shortcuts reference
3
+ */
4
+ export interface HelpShortcut {
5
+ key: string;
6
+ description: string;
7
+ note?: string;
8
+ }
9
+ export interface HelpSection {
10
+ title: string;
11
+ icon?: string;
12
+ shortcuts: HelpShortcut[];
13
+ }
14
+ export declare const HELP_SECTIONS: HelpSection[];
15
+ //# sourceMappingURL=help-data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help-data.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/utils/help-data.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,WAAW,EAgFtC,CAAC"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ /**
3
+ * Help view section data - keyboard shortcuts reference
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HELP_SECTIONS = void 0;
7
+ exports.HELP_SECTIONS = [
8
+ {
9
+ title: "Navigation (Vim-style)",
10
+ icon: "⌨",
11
+ shortcuts: [
12
+ { key: "j/↓", description: "Move down" },
13
+ { key: "k/↑", description: "Move up" },
14
+ { key: "Ctrl+d/PgDn", description: "Page down (10 items)" },
15
+ { key: "Ctrl+u/PgUp", description: "Page up (10 items)" },
16
+ { key: "g", description: "Jump to top" },
17
+ { key: "G", description: "Jump to bottom" },
18
+ { key: "Enter", description: "Select / Enter view" },
19
+ { key: "b/Esc", description: "Go back" },
20
+ ],
21
+ },
22
+ {
23
+ title: "List View",
24
+ icon: "📋",
25
+ shortcuts: [
26
+ { key: "/", description: "Start search", note: "Enter to finish, Esc to clear" },
27
+ { key: "Tab", description: "Cycle filter", note: "all → active → complete → timelocks" },
28
+ { key: "o", description: "Cycle sort", note: "newest → oldest → progress → status" },
29
+ { key: "R", description: "Reload cache from disk" },
30
+ { key: "d", description: "Discover proposals", note: "requires RPC" },
31
+ { key: "e", description: "Election status", note: "requires RPC" },
32
+ { key: "S", description: "Settings" },
33
+ { key: "q", description: "Quit" },
34
+ ],
35
+ },
36
+ {
37
+ title: "Detail View",
38
+ icon: "📄",
39
+ shortcuts: [
40
+ { key: "1-7", description: "Jump to stage number" },
41
+ { key: "y", description: "Copy proposal/operation ID" },
42
+ { key: "Y", description: "Copy transaction hash" },
43
+ { key: "d", description: "View description" },
44
+ { key: "c", description: "View calldata" },
45
+ { key: "s", description: "View simulation data" },
46
+ { key: "r", description: "Re-track proposal", note: "requires RPC" },
47
+ ],
48
+ },
49
+ {
50
+ title: "Calldata View",
51
+ icon: "🔍",
52
+ shortcuts: [
53
+ { key: "←/→", description: "Navigate between actions" },
54
+ { key: "Enter", description: "Toggle fold/unfold" },
55
+ { key: "e", description: "Expand all" },
56
+ { key: "c", description: "Collapse all" },
57
+ ],
58
+ },
59
+ {
60
+ title: "Election View",
61
+ icon: "🗳",
62
+ shortcuts: [
63
+ { key: "j/k", description: "Navigate elections" },
64
+ { key: "Enter/l", description: "View detailed info", note: "contenders, nominees, members" },
65
+ { key: "b/Esc", description: "Go back / Close details" },
66
+ ],
67
+ },
68
+ {
69
+ title: "Settings View",
70
+ icon: "⚙",
71
+ shortcuts: [
72
+ { key: "j/k", description: "Navigate settings" },
73
+ { key: "Enter/Space", description: "Edit or toggle setting" },
74
+ { key: "r", description: "Reset all to defaults" },
75
+ { key: "b/Esc", description: "Save and close" },
76
+ ],
77
+ },
78
+ {
79
+ title: "Tips",
80
+ icon: "💡",
81
+ shortcuts: [
82
+ { key: "?", description: "Show/hide this help (works in any view)" },
83
+ { key: "Search", description: "Matches title and proposal ID" },
84
+ { key: "RPC", description: "Use --l2-rpc for tracking features" },
85
+ ],
86
+ },
87
+ ];
88
+ //# sourceMappingURL=help-data.js.map