@detergent-software/atk 3.0.0-dev.10 → 3.0.0-dev.12

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 (34) hide show
  1. package/build/commands/browse.d.ts.map +1 -1
  2. package/build/commands/browse.js +107 -77
  3. package/build/commands/browse.js.map +1 -1
  4. package/build/commands/cache.d.ts.map +1 -1
  5. package/build/commands/cache.js +13 -15
  6. package/build/commands/cache.js.map +1 -1
  7. package/build/components/BrowseExpandedBundle.d.ts +7 -0
  8. package/build/components/BrowseExpandedBundle.d.ts.map +1 -1
  9. package/build/components/BrowseExpandedBundle.js +19 -0
  10. package/build/components/BrowseExpandedBundle.js.map +1 -1
  11. package/build/components/BrowseExpandedRow.d.ts +4 -1
  12. package/build/components/BrowseExpandedRow.d.ts.map +1 -1
  13. package/build/components/BrowseExpandedRow.js +24 -3
  14. package/build/components/BrowseExpandedRow.js.map +1 -1
  15. package/build/components/BrowseList.d.ts +3 -1
  16. package/build/components/BrowseList.d.ts.map +1 -1
  17. package/build/components/BrowseList.js +52 -42
  18. package/build/components/BrowseList.js.map +1 -1
  19. package/build/components/HelpBar.d.ts.map +1 -1
  20. package/build/components/HelpBar.js +3 -3
  21. package/build/components/HelpBar.js.map +1 -1
  22. package/build/components/index.d.ts +2 -2
  23. package/build/components/index.d.ts.map +1 -1
  24. package/build/components/index.js +2 -2
  25. package/build/components/index.js.map +1 -1
  26. package/build/hooks/useBrowseState.d.ts +18 -1
  27. package/build/hooks/useBrowseState.d.ts.map +1 -1
  28. package/build/hooks/useBrowseState.js +65 -11
  29. package/build/hooks/useBrowseState.js.map +1 -1
  30. package/build/lib/registry.d.ts +2 -1
  31. package/build/lib/registry.d.ts.map +1 -1
  32. package/build/lib/registry.js +18 -4
  33. package/build/lib/registry.js.map +1 -1
  34. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"browse.d.ts","sourceRoot":"","sources":["../../src/commands/browse.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAsCxB,eAAO,MAAM,WAAW,4CAA4C,CAAC;AASrE,eAAO,MAAM,OAAO;;;;;iBAqClB,CAAC;AAEH,eAAO,MAAM,IAAI,gDAAwE,CAAC;AAE1F,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,SAAS,CAAC,EACjB,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAC9D,EAAE,KAAK,2CA2NP"}
1
+ {"version":3,"file":"browse.d.ts","sourceRoot":"","sources":["../../src/commands/browse.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqCxB,eAAO,MAAM,WAAW,4CAA4C,CAAC;AASrE,eAAO,MAAM,OAAO;;;;;iBAqClB,CAAC;AAEH,eAAO,MAAM,IAAI,gDAAwE,CAAC;AAE1F,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC3B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,IAAI,EAAE,CAAC,SAAS,CAAC,EACjB,OAAO,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAC9D,EAAE,KAAK,2CA2MP"}
@@ -10,6 +10,7 @@ import { Spinner } from '../components/index.js';
10
10
  import InstallConfirmBar from '../components/InstallConfirmBar.js';
11
11
  import { TYPE_TAB_LABELS, TYPE_TABS, useBrowseInput, useBrowseState, } from '../hooks/useBrowseState.js';
12
12
  import { loadMergedConfig } from '../lib/config.js';
13
+ import { buildReadmeUrl } from '../lib/github.js';
13
14
  import { executeInstallPlan } from '../lib/installer.js';
14
15
  import { LockfileLockedError, readLockfile, withLockfileLock } from '../lib/lockfile.js';
15
16
  import { resolveActiveOrg } from '../lib/org.js';
@@ -17,15 +18,10 @@ import { findProjectRoot } from '../lib/paths.js';
17
18
  import { fetchRegistry, findBundle } from '../lib/registry.js';
18
19
  import { resolveBundleInstallPlan, resolveInstallPlan } from '../lib/resolver.js';
19
20
  import { resolveTools } from '../lib/tool-resolver.js';
20
- const BROWSE_ABBREVIATED_TAB_LABELS = {
21
- agent: 'Agent',
22
- all: 'All',
23
- bundle: 'Bundle',
24
- hook: 'Hook',
25
- 'mcp-config': 'MCP',
26
- 'memory-template': 'Mem',
27
- rule: 'Rule',
28
- skill: 'Skill',
21
+ const BROWSE_SORT_FIELD_LABELS = {
22
+ name: 'Name',
23
+ type: 'Type',
24
+ version: 'Version',
29
25
  };
30
26
  export const description = 'Interactively browse the asset registry';
31
27
  /**
@@ -85,27 +81,40 @@ export default function Browse({ args: [filterArg], options: { org: cliOrg, proj
85
81
  // Load data
86
82
  useEffect(() => {
87
83
  let cancelled = false;
84
+ const slowLoadTimer = setTimeout(() => {
85
+ if (!cancelled) {
86
+ dispatch({
87
+ message: 'Still loading registry\u2026 this is taking longer than expected',
88
+ type: 'SET_LOADING_MESSAGE',
89
+ });
90
+ }
91
+ }, 10_000);
88
92
  (async () => {
89
93
  try {
90
94
  const projectDir = findProjectRoot(projectRoot);
91
95
  const config = await loadMergedConfig(projectDir);
92
96
  projectDirRef.current = projectDir;
97
+ let toolWarning;
93
98
  try {
94
99
  const tools = await resolveTools(undefined);
95
100
  resolvedToolsRef.current = tools;
96
101
  }
97
- catch {
102
+ catch (err) {
98
103
  // Fallback: no tools resolved — install will fail gracefully
99
104
  resolvedToolsRef.current = [];
105
+ toolWarning = err instanceof Error ? err.message : String(err);
100
106
  }
101
107
  const registry = await fetchRegistry({ force: refresh });
102
108
  const lockfile = await readLockfile(projectDir);
103
109
  const org = resolveActiveOrg(cliOrg, lockfile.org, config.org);
104
- if (!cancelled)
105
- dispatchLoad(registry, lockfile, org);
110
+ if (!cancelled) {
111
+ clearTimeout(slowLoadTimer);
112
+ dispatchLoad(registry, lockfile, org, toolWarning);
113
+ }
106
114
  }
107
115
  catch (err) {
108
116
  if (!cancelled) {
117
+ clearTimeout(slowLoadTimer);
109
118
  dispatch({
110
119
  message: err instanceof Error ? err.message : String(err),
111
120
  type: 'LOAD_ERROR',
@@ -115,80 +124,33 @@ export default function Browse({ args: [filterArg], options: { org: cliOrg, proj
115
124
  })();
116
125
  return () => {
117
126
  cancelled = true;
127
+ clearTimeout(slowLoadTimer);
118
128
  };
119
129
  }, [cliOrg, dispatch, dispatchLoad, projectRoot, refresh]);
120
130
  // Handle install side-effect
121
131
  useEffect(() => {
122
132
  if (!isInstalling)
123
133
  return;
124
- let cancelled = false;
134
+ // Runtime guards: verify state shape before casting. These protect against
135
+ // race conditions (e.g., unmount or rapid state transitions) where the
136
+ // boolean `isInstalling` flag is stale but the actual state has moved on.
137
+ if (stateRef.current.status !== 'ready')
138
+ return;
125
139
  const currentState = stateRef.current;
140
+ if (currentState.mode.kind !== 'installing')
141
+ return;
126
142
  const installingMode = currentState.mode;
127
- const { assetName, itemKind } = installingMode;
143
+ let cancelled = false;
128
144
  (async () => {
129
145
  try {
130
- const tools = resolvedToolsRef.current;
131
- if (tools.length === 0) {
132
- throw new Error('No tools configured. Run `atk setup` to select your AI coding tool.');
133
- }
134
- await withLockfileLock(projectDirRef.current, async () => {
135
- if (itemKind === 'bundle') {
136
- const bundle = findBundle(currentState.registry, assetName);
137
- if (!bundle) {
138
- throw new Error(`Bundle "${assetName}" not found in registry`);
139
- }
140
- if (!cancelled)
141
- dispatch({ message: `Resolving bundle ${assetName}...`, type: 'INSTALL_PROGRESS' });
142
- const plan = resolveBundleInstallPlan(currentState.registry, bundle);
143
- for (const { adapter, tool: toolName } of tools) {
144
- if (!cancelled)
145
- dispatch({ message: `Installing bundle for ${toolName}...`, type: 'INSTALL_PROGRESS' });
146
- await executeInstallPlan(plan, {
147
- adapter,
148
- bundleOrigin: { name: bundle.name, version: bundle.version },
149
- onProgress: (message) => {
150
- if (!cancelled)
151
- dispatch({ message, type: 'INSTALL_PROGRESS' });
152
- },
153
- projectDir: projectDirRef.current,
154
- });
155
- }
156
- const newLockfile = await readLockfile(projectDirRef.current);
157
- if (!cancelled) {
158
- dispatch({
159
- message: `Installed bundle ${assetName} (${plan.totalCount} assets) for ${tools.map((t) => t.tool).join(', ')}`,
160
- newLockfile,
161
- success: true,
162
- type: 'INSTALL_COMPLETE',
163
- });
164
- }
165
- }
166
- else {
167
- const plan = resolveInstallPlan(currentState.registry, assetName);
168
- if (!cancelled)
169
- dispatch({ message: `Resolving dependencies for ${assetName}...`, type: 'INSTALL_PROGRESS' });
170
- for (const { adapter, tool: toolName } of tools) {
171
- if (!cancelled)
172
- dispatch({ message: `Installing for ${toolName}...`, type: 'INSTALL_PROGRESS' });
173
- await executeInstallPlan(plan, {
174
- adapter,
175
- onProgress: (message) => {
176
- if (!cancelled)
177
- dispatch({ message, type: 'INSTALL_PROGRESS' });
178
- },
179
- projectDir: projectDirRef.current,
180
- });
181
- }
182
- const newLockfile = await readLockfile(projectDirRef.current);
183
- if (!cancelled) {
184
- dispatch({
185
- message: `Installed ${assetName} for ${tools.map((t) => t.tool).join(', ')}`,
186
- newLockfile,
187
- success: true,
188
- type: 'INSTALL_COMPLETE',
189
- });
190
- }
191
- }
146
+ await executeInstallFromBrowse({
147
+ assetName: installingMode.assetName,
148
+ dispatch,
149
+ isCancelled: () => cancelled,
150
+ itemKind: installingMode.itemKind,
151
+ projectDir: projectDirRef.current,
152
+ registry: currentState.registry,
153
+ tools: resolvedToolsRef.current,
192
154
  });
193
155
  }
194
156
  catch (err) {
@@ -209,6 +171,11 @@ export default function Browse({ args: [filterArg], options: { org: cliOrg, proj
209
171
  return () => {
210
172
  cancelled = true;
211
173
  };
174
+ // `stateRef` is a stable React ref (its identity never changes), so it is
175
+ // intentionally omitted from the dependency array. The effect only needs to
176
+ // re-run when `isInstalling` transitions to true; it reads the current
177
+ // state snapshot from `stateRef.current` at invocation time rather than
178
+ // closing over `state`, which would re-trigger the effect on every state change.
212
179
  }, [isInstalling, dispatch]);
213
180
  // Keyboard input
214
181
  useBrowseInput(state, dispatch, () => exit());
@@ -229,6 +196,69 @@ export default function Browse({ args: [filterArg], options: { org: cliOrg, proj
229
196
  ? state.allAssets.length + state.allBundles.length
230
197
  : state.allAssets.filter((a) => a.type === state.typeFilter).length;
231
198
  const canInstall = state.filteredItems.length > 0;
232
- return (_jsxs(Box, { flexDirection: 'column', children: [_jsx(FilterBar, { abbreviatedTabLabels: BROWSE_ABBREVIATED_TAB_LABELS, filterText: state.filterText, inputMode: inputMode, org: state.org, orgOnly: state.orgOnly, resultCount: state.filteredItems.length, terminalWidth: terminalWidth, totalCount: totalCount, typeFilter: state.typeFilter, typeTabLabels: TYPE_TAB_LABELS, typeTabs: TYPE_TABS }), _jsx(BrowseList, { cursorIndex: state.cursorIndex, expandedIndex: state.expandedIndex, items: state.filteredItems, lockfile: state.lockfile, registryAssets: state.allAssets, scrollOffset: state.scrollOffset, terminalWidth: terminalWidth, typeFilter: state.typeFilter, viewportHeight: state.viewportHeight }), browsing ? (_jsx(HelpBar, { canInstall: canInstall, expanded: state.expandedIndex !== null, hasOrg: !!state.org, inputMode: inputMode })) : (_jsx(InstallConfirmBar, { mode: mode }))] }));
199
+ const sortArrow = state.sortDirection === 'asc' ? '\u2191' : '\u2193';
200
+ const sortIndicator = `Sort: ${BROWSE_SORT_FIELD_LABELS[state.sortField]} ${sortArrow}`;
201
+ const expandedItem = state.expandedIndex !== null ? state.filteredItems[state.expandedIndex] : null;
202
+ const readmeUrl = expandedItem?.kind === 'asset' ? buildReadmeUrl(expandedItem.data, expandedItem.data.latest) : null;
203
+ return (_jsxs(Box, { flexDirection: 'column', children: [_jsx(FilterBar, { filterText: state.filterText, inputMode: inputMode, org: state.org, orgOnly: state.orgOnly, resultCount: state.filteredItems.length, sortIndicator: sortIndicator, terminalWidth: terminalWidth, totalCount: totalCount, typeFilter: state.typeFilter, typeTabLabels: TYPE_TAB_LABELS, typeTabs: TYPE_TABS }), state.toolWarning && (_jsxs(Text, { color: 'yellow', children: ['\u26A0', " Tool resolution failed: ", state.toolWarning, ". Install will not be available."] })), _jsx(BrowseList, { cursorIndex: state.cursorIndex, expandedIndex: state.expandedIndex, items: state.filteredItems, lockfile: state.lockfile, readmeUrl: readmeUrl, registryAssets: state.allAssets, scrollOffset: state.scrollOffset, terminalWidth: terminalWidth, typeFilter: state.typeFilter, viewportHeight: state.viewportHeight }), browsing ? (_jsx(HelpBar, { canInstall: canInstall, expanded: state.expandedIndex !== null, hasOrg: !!state.org, inputMode: inputMode })) : (_jsx(InstallConfirmBar, { mode: mode }))] }));
204
+ }
205
+ /**
206
+ * Standalone async helper that executes the install flow for both bundles and
207
+ * individual assets. Extracted from the install useEffect to reduce duplication
208
+ * (the bundle and asset branches share the same resolve -> execute -> read
209
+ * lockfile -> dispatch completion pattern) and to make the logic easier to test
210
+ * independently.
211
+ */
212
+ async function executeInstallFromBrowse({ assetName, dispatch, isCancelled, itemKind, projectDir, registry, tools, }) {
213
+ if (tools.length === 0) {
214
+ throw new Error('No tools configured. Run `atk setup` to select your AI coding tool.');
215
+ }
216
+ await withLockfileLock(projectDir, async () => {
217
+ // Resolve install plan: bundles use resolveBundleInstallPlan, assets use resolveInstallPlan.
218
+ // For bundles, we also look up the bundle metadata for bundleOrigin and completion message.
219
+ let bundle;
220
+ if (itemKind === 'bundle') {
221
+ bundle = findBundle(registry, assetName);
222
+ if (!bundle) {
223
+ throw new Error(`Bundle "${assetName}" not found in registry`);
224
+ }
225
+ }
226
+ if (!isCancelled()) {
227
+ dispatch({
228
+ message: itemKind === 'bundle' ? `Resolving bundle ${assetName}...` : `Resolving dependencies for ${assetName}...`,
229
+ type: 'INSTALL_PROGRESS',
230
+ });
231
+ }
232
+ const plan = itemKind === 'bundle' ? resolveBundleInstallPlan(registry, bundle) : resolveInstallPlan(registry, assetName);
233
+ for (const { adapter, tool: toolName } of tools) {
234
+ if (!isCancelled()) {
235
+ dispatch({
236
+ message: itemKind === 'bundle' ? `Installing bundle for ${toolName}...` : `Installing for ${toolName}...`,
237
+ type: 'INSTALL_PROGRESS',
238
+ });
239
+ }
240
+ await executeInstallPlan(plan, {
241
+ adapter,
242
+ ...(itemKind === 'bundle' && bundle ? { bundleOrigin: { name: bundle.name, version: bundle.version } } : {}),
243
+ onProgress: (message) => {
244
+ if (!isCancelled())
245
+ dispatch({ message, type: 'INSTALL_PROGRESS' });
246
+ },
247
+ projectDir,
248
+ });
249
+ }
250
+ const newLockfile = await readLockfile(projectDir);
251
+ if (!isCancelled()) {
252
+ const toolNames = tools.map((t) => t.tool).join(', ');
253
+ dispatch({
254
+ message: itemKind === 'bundle'
255
+ ? `Installed bundle ${assetName} (${plan.totalCount} assets) for ${toolNames}`
256
+ : `Installed ${assetName} for ${toolNames}`,
257
+ newLockfile,
258
+ success: true,
259
+ type: 'INSTALL_COMPLETE',
260
+ });
261
+ }
262
+ });
233
263
  }
234
264
  //# sourceMappingURL=browse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"browse.js","sourceRoot":"","sources":["../../src/commands/browse.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browse.js","sourceRoot":"","sources":["../../src/commands/browse.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/commands/cache.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,WAAW,8BAA8B,CAAC;AAEvD,eAAO,MAAM,IAAI;;;;WAEf,CAAC;AAIH,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,2CAmEtD"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/commands/cache.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,WAAW,8BAA8B,CAAC;AAEvD,eAAO,MAAM,IAAI;;;;WAEf,CAAC;AAIH,KAAK,KAAK,GAAG;IACX,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,2CA+DtD"}
@@ -11,12 +11,8 @@ export const args = z.tuple([
11
11
  export default function Cache({ args: [action] }) {
12
12
  const state = useCommand(async () => {
13
13
  if (action === 'clean' || action === 'clear') {
14
- const status = await getCacheStatus();
15
- if (!status.exists) {
16
- return { outcome: 'clean-noop' };
17
- }
18
- await clearCache();
19
- return { outcome: 'cleaned' };
14
+ const deleted = await clearCache();
15
+ return { outcome: deleted ? 'cleaned' : 'clean-noop' };
20
16
  }
21
17
  // Default: status
22
18
  const status = await getCacheStatus();
@@ -50,18 +46,20 @@ function formatAge(ms) {
50
46
  if (minutes < 60)
51
47
  return `${minutes}m`;
52
48
  const hours = Math.floor(minutes / 60);
53
- const remainingMinutes = minutes % 60;
54
- if (remainingMinutes === 0)
55
- return `${hours}h`;
56
- return `${hours}h ${remainingMinutes}m`;
49
+ if (hours < 24) {
50
+ const remainingMinutes = minutes % 60;
51
+ return remainingMinutes > 0 ? `${hours}h ${remainingMinutes}m` : `${hours}h`;
52
+ }
53
+ const days = Math.floor(hours / 24);
54
+ const remainingHours = hours % 24;
55
+ return remainingHours > 0 ? `${days}d ${remainingHours}h` : `${days}d`;
57
56
  }
58
57
  function formatBytes(bytes) {
59
58
  if (bytes < 1024)
60
59
  return `${bytes} B`;
61
- const kb = bytes / 1024;
62
- if (kb < 1024)
63
- return `${kb.toFixed(1)} KB`;
64
- const mb = kb / 1024;
65
- return `${mb.toFixed(1)} MB`;
60
+ const kib = bytes / 1024;
61
+ if (kib < 1024)
62
+ return `${kib.toFixed(1)} KiB`;
63
+ return `${(kib / 1024).toFixed(1)} MiB`;
66
64
  }
67
65
  //# sourceMappingURL=cache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/commands/cache.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/commands/cache.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,OAAO,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAoB,UAAU,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAElF,MAAM,CAAC,MAAM,WAAW,GAAG,2BAA2B,CAAC;AAEvD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC;IAC1B,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;CAChH,CAAC,CAAC;AAQH,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAS;IACrD,MAAM,KAAK,GAAG,UAAU,CACtB,KAAK,IAAI,EAAE;QACT,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC7C,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;YACnC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAE,SAAmB,CAAC,CAAC,CAAE,YAAsB,EAAE,CAAC;QAC/E,CAAC;QAED,kBAAkB;QAClB,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;QACtC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC,EACD,CAAC,MAAM,CAAC,EACR,uBAAuB,CACxB,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,KAAC,OAAO,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC;IAC7C,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAS,KAAK,CAAC,OAAO,IAAQ,CAAC;IACzD,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAEvB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,4CAAmC,CAAC;IAChE,CAAC;IAED,IAAI,IAAI,CAAC,OAAO,KAAK,YAAY,EAAE,CAAC;QAClC,OAAO,KAAC,IAAI,IAAC,QAAQ,+CAAgC,CAAC;IACxD,CAAC;IAED,SAAS;IACT,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAExB,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,IAAI,qCAAsB,EAChC,MAAC,IAAI,yBACG,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,CAAC,IAAI,GAAQ,IACpC,EACP,MAAC,IAAI,2BACK,KAAC,IAAI,IAAC,QAAQ,iCAAkB,IACnC,IACH,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,IAAI,qCAAsB,EAChC,MAAC,IAAI,yBACG,KAAC,IAAI,IAAC,QAAQ,kBAAE,MAAM,CAAC,IAAI,GAAQ,IACpC,EACP,MAAC,IAAI,yBAAQ,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,IAAQ,EAClD,MAAC,IAAI,wBAAO,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,IAAQ,EAC3C,MAAC,IAAI,wBAAO,MAAM,CAAC,UAAU,SAAS,EACtC,MAAC,IAAI,2BAAU,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,wBAAe,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,sBAAa,IAAQ,IAC1G,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAU;IAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IACtC,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,GAAG,OAAO,GAAG,CAAC;IACvC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACzC,IAAI,OAAO,GAAG,EAAE;QAAE,OAAO,GAAG,OAAO,GAAG,CAAC;IACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,MAAM,gBAAgB,GAAG,OAAO,GAAG,EAAE,CAAC;QACtC,OAAO,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,gBAAgB,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;IAC/E,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;IACpC,MAAM,cAAc,GAAG,KAAK,GAAG,EAAE,CAAC;IAClC,OAAO,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,cAAc,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;AACzE,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,KAAK,IAAI,CAAC;IACtC,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,CAAC;IACzB,IAAI,GAAG,GAAG,IAAI;QAAE,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAC1C,CAAC"}
@@ -13,6 +13,13 @@ interface BrowseExpandedBundleProps {
13
13
  terminalWidth: number;
14
14
  }
15
15
  export default function BrowseExpandedBundle({ bundle, bundleDeps, terminalWidth }: BrowseExpandedBundleProps): import("react/jsx-runtime").JSX.Element;
16
+ /**
17
+ * WARNING: This line-count calculation MUST stay in sync with the JSX rendered
18
+ * by BrowseExpandedBundle above. If any lines are added to or removed from the
19
+ * component's output, this function must be updated to match — otherwise the
20
+ * viewport height math in BrowseList will be wrong, causing scroll glitches.
21
+ */
22
+ export declare function bundleExpandedLines(bundleDeps: BundleDeps, assetCount: number): number;
16
23
  /**
17
24
  * Resolve transitive dependencies for each bundle asset.
18
25
  * Returns a map of "type/name" → array of dependency RegistryAssets,
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseExpandedBundle.d.ts","sourceRoot":"","sources":["../../src/components/BrowseExpandedBundle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,yBAAyB;IACjC,qCAAqC;IACrC,MAAM,EAAE,cAAc,CAAC;IACvB,gDAAgD;IAChD,UAAU,EAAE,UAAU,CAAC;IACvB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,yBAAyB,2CAsD5G;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,aAAa,EAAE,EAC/B,eAAe,EAAE,cAAc,EAAE,GAChC;IAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CA0CjE"}
1
+ {"version":3,"file":"BrowseExpandedBundle.d.ts","sourceRoot":"","sources":["../../src/components/BrowseExpandedBundle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,yBAAyB;IACjC,qCAAqC;IACrC,MAAM,EAAE,cAAc,CAAC;IACvB,gDAAgD;IAChD,UAAU,EAAE,UAAU,CAAC;IACvB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,yBAAyB,2CAsD5G;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAWtF;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,EAAE,aAAa,EAAE,EAC/B,eAAe,EAAE,cAAc,EAAE,GAChC;IAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CA0CjE"}
@@ -13,6 +13,25 @@ export default function BrowseExpandedBundle({ bundle, bundleDeps, terminalWidth
13
13
  return (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Text, { children: [' ', _jsxs(Text, { dimColor: true, children: [a.type, "/"] }), _jsx(Text, { children: a.name })] }), deps?.map((d) => (_jsxs(Text, { children: [' ', _jsxs(Text, { dimColor: true, children: ["\u2514 ", d.type, "/"] }), _jsx(Text, { dimColor: true, children: d.name })] }, `${d.type}/${d.name}`)))] }, key));
14
14
  })] })), _jsx(Text, { dimColor: true, children: '─'.repeat(separatorWidth) })] }));
15
15
  }
16
+ /**
17
+ * WARNING: This line-count calculation MUST stay in sync with the JSX rendered
18
+ * by BrowseExpandedBundle above. If any lines are added to or removed from the
19
+ * component's output, this function must be updated to match — otherwise the
20
+ * viewport height math in BrowseList will be wrong, causing scroll glitches.
21
+ */
22
+ export function bundleExpandedLines(bundleDeps, assetCount) {
23
+ // separator + description + tags/author + separator = 4
24
+ // If assets: header(1) + assets(N) + rendered dep lines(M)
25
+ if (assetCount === 0)
26
+ return 4;
27
+ // Sum per-asset dep counts from the depMap, since deps shared across assets
28
+ // are rendered under each asset individually (not deduplicated in the UI)
29
+ let renderedDepLines = 0;
30
+ for (const deps of bundleDeps.depMap.values()) {
31
+ renderedDepLines += deps.length;
32
+ }
33
+ return 4 + 1 + assetCount + renderedDepLines;
34
+ }
16
35
  /**
17
36
  * Resolve transitive dependencies for each bundle asset.
18
37
  * Returns a map of "type/name" → array of dependency RegistryAssets,
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseExpandedBundle.js","sourceRoot":"","sources":["../../src/components/BrowseExpandedBundle.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrowseExpandedBundle.js","sourceRoot":"","sources":["../../src/components/BrowseExpandedBundle.tsx"],"names":[],"mappings":"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"}
@@ -6,9 +6,12 @@ interface BrowseExpandedRowProps {
6
6
  installedVersion?: string;
7
7
  /** Whether this asset is already installed */
8
8
  isInstalled: boolean;
9
+ /** URL to the asset's README on GitHub, or null */
10
+ readmeUrl: null | string;
9
11
  /** Terminal width for responsive layout */
10
12
  terminalWidth: number;
11
13
  }
12
- export default function BrowseExpandedRow({ asset, installedVersion, isInstalled, terminalWidth, }: BrowseExpandedRowProps): import("react/jsx-runtime").JSX.Element;
14
+ export default function BrowseExpandedRow({ asset, installedVersion, isInstalled, readmeUrl, terminalWidth, }: BrowseExpandedRowProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function computeBrowseExpandedLines(asset: RegistryAsset, readmeUrl: null | string): number;
13
16
  export {};
14
17
  //# sourceMappingURL=BrowseExpandedRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseExpandedRow.d.ts","sourceRoot":"","sources":["../../src/components/BrowseExpandedRow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,UAAU,sBAAsB;IAC9B,oCAAoC;IACpC,KAAK,EAAE,aAAa,CAAC;IACrB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8CAA8C;IAC9C,WAAW,EAAE,OAAO,CAAC;IACrB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,aAAa,GACd,EAAE,sBAAsB,2CA6CxB"}
1
+ {"version":3,"file":"BrowseExpandedRow.d.ts","sourceRoot":"","sources":["../../src/components/BrowseExpandedRow.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAIhE,UAAU,sBAAsB;IAC9B,oCAAoC;IACpC,KAAK,EAAE,aAAa,CAAC;IACrB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,8CAA8C;IAC9C,WAAW,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,aAAa,GACd,EAAE,sBAAsB,2CAyDxB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAYjG"}
@@ -1,8 +1,29 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Box, Text } from 'ink';
3
- export default function BrowseExpandedRow({ asset, installedVersion, isInstalled, terminalWidth, }) {
3
+ import Link from './Link.js';
4
+ export default function BrowseExpandedRow({ asset, installedVersion, isInstalled, readmeUrl, terminalWidth, }) {
4
5
  const latestVersion = asset.versions[asset.latest];
5
6
  const separatorWidth = Math.max(20, terminalWidth - 10);
6
- return (_jsxs(Box, { flexDirection: 'column', paddingLeft: 4, children: [_jsx(Text, { dimColor: true, children: '─'.repeat(separatorWidth) }), _jsx(Text, { wrap: 'truncate', children: latestVersion?.description ?? '' }), _jsxs(Box, { gap: 2, children: [asset.org && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Org: " }), _jsx(Text, { color: 'magenta', children: asset.org })] })), asset.tags.length > 0 && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Tags: " }), _jsx(Text, { color: 'blue', children: asset.tags.join(', ') })] })), (latestVersion?.tools ?? []).length > 0 && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Tools: " }), _jsx(Text, { children: (latestVersion?.tools ?? []).join(', ') })] }))] }), _jsxs(Box, { gap: 2, children: [(latestVersion?.dependencies ?? []).length > 0 && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Deps: " }), _jsx(Text, { children: (latestVersion?.dependencies ?? []).map((d) => d.name).join(', ') })] })), isInstalled && (_jsxs(Text, { children: [_jsx(Text, { color: 'green', children: "\u2713 installed" }), installedVersion && _jsxs(Text, { dimColor: true, children: [" v", installedVersion] })] }))] }), _jsx(Text, { dimColor: true, children: '─'.repeat(separatorWidth) })] }));
7
+ const hasOrg = !!asset.org;
8
+ const hasTags = asset.tags.length > 0;
9
+ const hasTools = (latestVersion?.tools ?? []).length > 0;
10
+ const hasDeps = (latestVersion?.dependencies ?? []).length > 0;
11
+ return (_jsxs(Box, { flexDirection: 'column', paddingLeft: 4, children: [_jsx(Text, { dimColor: true, children: '─'.repeat(separatorWidth) }), _jsx(Text, { wrap: 'truncate', children: latestVersion?.description ?? '' }), _jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Version: " }), _jsxs(Text, { children: ["v", asset.latest] }), ' ', isInstalled && (_jsxs(_Fragment, { children: [_jsx(Text, { color: 'green', children: "\u2713 installed" }), installedVersion && _jsxs(Text, { dimColor: true, children: [" v", installedVersion] })] }))] }), hasOrg && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Org: " }), _jsx(Text, { color: 'magenta', children: asset.org })] })), hasTags && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Tags: " }), _jsx(Text, { color: 'blue', children: asset.tags.join(', ') })] })), hasTools && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Tools: " }), _jsx(Text, { children: (latestVersion?.tools ?? []).join(', ') })] })), hasDeps && (_jsxs(Text, { children: [_jsx(Text, { dimColor: true, children: "Deps: " }), _jsx(Text, { children: (latestVersion?.dependencies ?? []).map((d) => d.name).join(', ') })] })), readmeUrl && (_jsxs(Box, { marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "README: " }), _jsx(Link, { url: readmeUrl, children: "view on GitHub" })] })), _jsx(Text, { dimColor: true, children: '─'.repeat(separatorWidth) })] }));
12
+ }
13
+ export function computeBrowseExpandedLines(asset, readmeUrl) {
14
+ const latestVersion = asset.versions[asset.latest];
15
+ // Base: top separator + description + version + bottom separator = 4
16
+ let lines = 4;
17
+ if (asset.org)
18
+ lines += 1;
19
+ if (asset.tags.length > 0)
20
+ lines += 1;
21
+ if ((latestVersion?.tools ?? []).length > 0)
22
+ lines += 1;
23
+ if ((latestVersion?.dependencies ?? []).length > 0)
24
+ lines += 1;
25
+ if (readmeUrl)
26
+ lines += 2; // marginTop + link line
27
+ return lines;
7
28
  }
8
29
  //# sourceMappingURL=BrowseExpandedRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseExpandedRow.js","sourceRoot":"","sources":["../../src/components/BrowseExpandedRow.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAehC,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,EACxC,KAAK,EACL,gBAAgB,EAChB,WAAW,EACX,aAAa,GACU;IACvB,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,aAAa,GAAG,EAAE,CAAC,CAAC;IAExD,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,aACxC,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,GAAQ,EAClD,KAAC,IAAI,IAAC,IAAI,EAAC,UAAU,YAAE,aAAa,EAAE,WAAW,IAAI,EAAE,GAAQ,EAC/D,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACR,KAAK,CAAC,GAAG,IAAI,CACZ,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,QAAQ,4BAAa,EAC3B,KAAC,IAAI,IAAC,KAAK,EAAC,SAAS,YAAE,KAAK,CAAC,GAAG,GAAQ,IACnC,CACR,EACA,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CACxB,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,QAAQ,6BAAc,EAC5B,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,IAC5C,CACR,EACA,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1C,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,QAAQ,8BAAe,EAC7B,KAAC,IAAI,cAAE,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,IACjD,CACR,IACG,EACN,MAAC,GAAG,IAAC,GAAG,EAAE,CAAC,aACR,CAAC,aAAa,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CACjD,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,QAAQ,6BAAc,EAC5B,KAAC,IAAI,cAAE,CAAC,aAAa,EAAE,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAQ,IAC3E,CACR,EACA,WAAW,IAAI,CACd,MAAC,IAAI,eACH,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,iCAAmB,EACrC,gBAAgB,IAAI,MAAC,IAAI,IAAC,QAAQ,yBAAI,gBAAgB,IAAQ,IAC1D,CACR,IACG,EACN,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,GAAQ,IAC9C,CACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"BrowseExpandedRow.js","sourceRoot":"","sources":["../../src/components/BrowseExpandedRow.tsx"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ interface BrowseListProps {
10
10
  items: BrowseItem[];
11
11
  /** Current lockfile for installed badges */
12
12
  lockfile: Lockfile;
13
+ /** URL to the expanded asset's README, or null */
14
+ readmeUrl: null | string;
13
15
  /** All registry assets for resolving transitive dependencies */
14
16
  registryAssets: RegistryAsset[];
15
17
  /** First visible item index */
@@ -21,6 +23,6 @@ interface BrowseListProps {
21
23
  /** Available height in rows for the list area */
22
24
  viewportHeight: number;
23
25
  }
24
- export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile, registryAssets, scrollOffset, terminalWidth, typeFilter, viewportHeight, }: BrowseListProps): import("react/jsx-runtime").JSX.Element;
26
+ export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile, readmeUrl, registryAssets, scrollOffset, terminalWidth, typeFilter, viewportHeight, }: BrowseListProps): import("react/jsx-runtime").JSX.Element;
25
27
  export {};
26
28
  //# sourceMappingURL=BrowseList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BrowseList.d.ts","sourceRoot":"","sources":["../../src/components/BrowseList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAoBhE,UAAU,eAAe;IACvB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAC;IAC7B,gCAAgC;IAChC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,EAAE,QAAQ,CAAC;IACnB,gEAAgE;IAChE,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,WAAW,EACX,aAAa,EACb,KAAK,EACL,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,GACf,EAAE,eAAe,2CAwOjB"}
1
+ {"version":3,"file":"BrowseList.d.ts","sourceRoot":"","sources":["../../src/components/BrowseList.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,4BAA4B,CAAC;AAyDhF,UAAU,eAAe;IACvB,6CAA6C;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,EAAE,IAAI,GAAG,MAAM,CAAC;IAC7B,gCAAgC;IAChC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,EAAE,QAAQ,CAAC;IACnB,kDAAkD;IAClD,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;IACzB,gEAAgE;IAChE,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,6BAA6B;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,iDAAiD;IACjD,cAAc,EAAE,MAAM,CAAC;CACxB;AAaD,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,WAAW,EACX,aAAa,EACb,KAAK,EACL,QAAQ,EACR,SAAS,EACT,cAAc,EACd,YAAY,EACZ,aAAa,EACb,UAAU,EACV,cAAc,GACf,EAAE,eAAe,2CA2GjB"}