@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.
- package/build/commands/browse.d.ts.map +1 -1
- package/build/commands/browse.js +107 -77
- package/build/commands/browse.js.map +1 -1
- package/build/commands/cache.d.ts.map +1 -1
- package/build/commands/cache.js +13 -15
- package/build/commands/cache.js.map +1 -1
- package/build/components/BrowseExpandedBundle.d.ts +7 -0
- package/build/components/BrowseExpandedBundle.d.ts.map +1 -1
- package/build/components/BrowseExpandedBundle.js +19 -0
- package/build/components/BrowseExpandedBundle.js.map +1 -1
- package/build/components/BrowseExpandedRow.d.ts +4 -1
- package/build/components/BrowseExpandedRow.d.ts.map +1 -1
- package/build/components/BrowseExpandedRow.js +24 -3
- package/build/components/BrowseExpandedRow.js.map +1 -1
- package/build/components/BrowseList.d.ts +3 -1
- package/build/components/BrowseList.d.ts.map +1 -1
- package/build/components/BrowseList.js +52 -42
- package/build/components/BrowseList.js.map +1 -1
- package/build/components/HelpBar.d.ts.map +1 -1
- package/build/components/HelpBar.js +3 -3
- package/build/components/HelpBar.js.map +1 -1
- package/build/components/index.d.ts +2 -2
- package/build/components/index.d.ts.map +1 -1
- package/build/components/index.js +2 -2
- package/build/components/index.js.map +1 -1
- package/build/hooks/useBrowseState.d.ts +18 -1
- package/build/hooks/useBrowseState.d.ts.map +1 -1
- package/build/hooks/useBrowseState.js +65 -11
- package/build/hooks/useBrowseState.js.map +1 -1
- package/build/lib/registry.d.ts +2 -1
- package/build/lib/registry.d.ts.map +1 -1
- package/build/lib/registry.js +18 -4
- package/build/lib/registry.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
import { getBreakpoint } from '../lib/breakpoints.js';
|
|
4
4
|
import { findInstalledAsset, isInstalled as isAssetInstalled } from '../lib/lockfile.js';
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import BrowseExpandedRow from './BrowseExpandedRow.js';
|
|
5
|
+
import BrowseExpandedBundle, { bundleExpandedLines, resolveBundleDependencies, } from './BrowseExpandedBundle.js';
|
|
6
|
+
import BrowseExpandedRow, { computeBrowseExpandedLines } from './BrowseExpandedRow.js';
|
|
8
7
|
const COLUMN_WIDTHS = {
|
|
9
|
-
medium: { cursor: 3, name:
|
|
8
|
+
medium: { cursor: 3, name: 20, org: 16, status: 12, type: 14, version: 10 },
|
|
10
9
|
narrow: { cursor: 3, name: 20, status: 12, version: 10 },
|
|
11
|
-
wide: { cursor: 3, name:
|
|
10
|
+
wide: { cursor: 3, name: 24, org: 20, status: 12, type: 18, version: 10 },
|
|
12
11
|
};
|
|
13
12
|
const BUNDLE_COLUMN_WIDTHS = {
|
|
14
13
|
medium: { assets: 18, cursor: 3, name: 24, status: 12, version: 10 },
|
|
15
14
|
narrow: { assets: 14, cursor: 3, name: 20, status: 12, version: 10 },
|
|
16
15
|
wide: { assets: 18, cursor: 3, name: 28, status: 12, version: 10 },
|
|
17
16
|
};
|
|
18
|
-
export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile, registryAssets, scrollOffset, terminalWidth, typeFilter, viewportHeight, }) {
|
|
17
|
+
export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile, readmeUrl, registryAssets, scrollOffset, terminalWidth, typeFilter, viewportHeight, }) {
|
|
19
18
|
if (items.length === 0) {
|
|
20
19
|
const label = typeFilter === 'bundle' ? 'bundles' : 'assets';
|
|
21
20
|
return (_jsx(Box, { borderColor: 'gray', borderStyle: 'round', flexDirection: 'column', children: _jsx(Box, { paddingY: 1, children: _jsxs(Text, { dimColor: true, children: ["No ", label, " match your filters."] }) }) }));
|
|
@@ -23,7 +22,9 @@ export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile
|
|
|
23
22
|
const isBundleTab = typeFilter === 'bundle';
|
|
24
23
|
const bp = getBreakpoint(terminalWidth);
|
|
25
24
|
const showType = bp !== 'narrow';
|
|
25
|
+
const showOrg = bp !== 'narrow';
|
|
26
26
|
const cols = COLUMN_WIDTHS[bp];
|
|
27
|
+
const orgWidth = 'org' in cols ? cols.org : 0;
|
|
27
28
|
const bundleCols = BUNDLE_COLUMN_WIDTHS[bp];
|
|
28
29
|
const aboveCount = scrollOffset;
|
|
29
30
|
// Resolve deps for the expanded bundle (if any) once, used for both line-height calculation and rendering
|
|
@@ -44,8 +45,8 @@ export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile
|
|
|
44
45
|
if (expandedBundleDeps && expandedBundle) {
|
|
45
46
|
expandedLines = bundleExpandedLines(expandedBundleDeps, (expandedBundle.assets ?? []).length);
|
|
46
47
|
}
|
|
47
|
-
else {
|
|
48
|
-
expandedLines =
|
|
48
|
+
else if (expandedItem?.kind === 'asset') {
|
|
49
|
+
expandedLines = computeBrowseExpandedLines(expandedItem.data, readmeUrl);
|
|
49
50
|
}
|
|
50
51
|
}
|
|
51
52
|
const linesNeeded = 1 + expandedLines;
|
|
@@ -58,43 +59,52 @@ export default function BrowseList({ cursorIndex, expandedIndex, items, lockfile
|
|
|
58
59
|
}
|
|
59
60
|
const lastVisibleIndex = belowItems.length > 0 ? belowItems[belowItems.length - 1].index : scrollOffset;
|
|
60
61
|
const belowCount = items.length - lastVisibleIndex - 1;
|
|
61
|
-
return (_jsxs(Box, { borderColor: 'gray', borderStyle: 'round', flexDirection: 'column', children: [
|
|
62
|
+
return (_jsxs(Box, { borderColor: 'gray', borderStyle: 'round', flexDirection: 'column', children: [_jsx(ColumnHeader, { bundleCols: bundleCols, cols: cols, isBundleTab: isBundleTab, orgWidth: orgWidth, showOrg: showOrg, showType: showType }), aboveCount > 0 && _jsxs(Text, { dimColor: true, children: [" \u25B2 ", aboveCount, " more above"] }), belowItems.map(({ index, item }) => {
|
|
62
63
|
const isCursor = index === cursorIndex;
|
|
63
64
|
const isExpanded = index === expandedIndex;
|
|
64
|
-
|
|
65
|
-
const bundle = item.data;
|
|
66
|
-
const bundleDeps = index === expandedIndex && expandedBundleDeps
|
|
67
|
-
? expandedBundleDeps
|
|
68
|
-
: resolveBundleDependencies(registryAssets, bundle.assets ?? []);
|
|
69
|
-
const assetLabel = bundleDeps.totalDepCount > 0
|
|
70
|
-
? `${bundle.assetCount} (+${bundleDeps.totalDepCount} deps)`
|
|
71
|
-
: `${bundle.assetCount} assets`;
|
|
72
|
-
const bundleAssets = bundle.assets ?? [];
|
|
73
|
-
const installedCount = bundleAssets.filter((ref) => isAssetInstalled(lockfile, ref.name, ref.type)).length;
|
|
74
|
-
const totalCount = bundleAssets.length;
|
|
75
|
-
const allInstalled = totalCount > 0 && installedCount === totalCount;
|
|
76
|
-
const partiallyInstalled = installedCount > 0 && installedCount < totalCount;
|
|
77
|
-
return (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.cursor : cols.cursor, children: _jsx(Text, { color: 'magenta', children: isCursor ? ' ▸' : ' ' }) }), _jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.name : cols.name, children: _jsx(Text, { color: 'magenta', wrap: 'truncate', children: bundle.name }) }), isBundleTab ? (_jsx(Box, { flexShrink: 0, width: bundleCols.assets, children: _jsx(Text, { wrap: 'truncate', children: assetLabel }) })) : (showType && (_jsx(Box, { flexShrink: 0, width: 'type' in cols ? cols.type : 0, children: _jsx(Text, { wrap: 'truncate', children: "bundle" }) }))), _jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.version : cols.version, children: _jsxs(Text, { wrap: 'truncate', children: ["v", bundle.version] }) }), _jsxs(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.status : cols.status, children: [allInstalled && _jsx(Text, { color: 'green', children: "[installed]" }), partiallyInstalled && _jsx(Text, { color: 'yellow', children: "[partial]" })] }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { dimColor: true, wrap: 'truncate', children: bundle.description }) })] }), isExpanded && (_jsx(BrowseExpandedBundle, { bundle: bundle, bundleDeps: bundleDeps, terminalWidth: terminalWidth }))] }, `bundle/${bundle.name}`));
|
|
78
|
-
}
|
|
79
|
-
const asset = item.data;
|
|
80
|
-
const latestVersion = asset.versions[asset.latest];
|
|
81
|
-
const installed = findInstalledAsset(lockfile, asset.name, asset.type);
|
|
82
|
-
return (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: cols.cursor, children: _jsx(Text, { color: 'cyan', children: isCursor ? ' ▸' : ' ' }) }), _jsx(Box, { flexShrink: 0, width: cols.name, children: _jsx(Text, { color: 'cyan', wrap: 'truncate', children: formatOrgName(asset.org, asset.name) }) }), showType && (_jsx(Box, { flexShrink: 0, width: 'type' in cols ? cols.type : 0, children: _jsx(Text, { wrap: 'truncate', children: asset.type }) })), _jsx(Box, { flexShrink: 0, width: cols.version, children: _jsxs(Text, { wrap: 'truncate', children: ["v", asset.latest] }) }), _jsx(Box, { flexShrink: 0, width: cols.status, children: installed && _jsx(Text, { color: 'green', children: "[installed]" }) }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { dimColor: true, wrap: 'truncate', children: latestVersion?.description ?? '' }) })] }), isExpanded && (_jsx(BrowseExpandedRow, { asset: asset, installedVersion: installed?.version, isInstalled: !!installed, terminalWidth: terminalWidth }))] }, `${asset.type}/${asset.name}`));
|
|
65
|
+
return item.kind === 'bundle' ? (_jsx(BrowseBundleRow, { bundle: item.data, bundleCols: bundleCols, cols: cols, expandedBundleDeps: expandedBundleDeps, isBundleTab: isBundleTab, isCursor: isCursor, isExpanded: isExpanded, lockfile: lockfile, orgWidth: orgWidth, registryAssets: registryAssets, showOrg: showOrg, showType: showType, terminalWidth: terminalWidth }, `bundle/${item.data.name}`)) : (_jsx(BrowseAssetRow, { asset: item.data, cols: cols, isCursor: isCursor, isExpanded: isExpanded, lockfile: lockfile, orgWidth: orgWidth, readmeUrl: readmeUrl, showOrg: showOrg, showType: showType, terminalWidth: terminalWidth }, `${item.data.type}/${item.data.name}`));
|
|
83
66
|
}), belowCount > 0 && _jsxs(Text, { dimColor: true, children: [" \u25BC ", belowCount, " more below"] })] }));
|
|
84
67
|
}
|
|
85
|
-
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
//
|
|
93
|
-
|
|
94
|
-
let
|
|
95
|
-
|
|
96
|
-
|
|
68
|
+
function BrowseAssetRow({ asset, cols, isCursor, isExpanded, lockfile, orgWidth, readmeUrl, showOrg, showType, terminalWidth, }) {
|
|
69
|
+
const latestVersion = asset.versions[asset.latest];
|
|
70
|
+
const installed = findInstalledAsset(lockfile, asset.name, asset.type);
|
|
71
|
+
return (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: cols.cursor, children: _jsx(Text, { color: 'cyan', children: isCursor ? ' ▸' : ' ' }) }), _jsx(Box, { flexShrink: 0, width: cols.name, children: _jsx(Text, { color: 'cyan', wrap: 'truncate', children: asset.name }) }), showOrg && (_jsx(Box, { flexShrink: 0, width: orgWidth, children: _jsx(Text, { dimColor: true, wrap: 'truncate', children: asset.org ? `@${asset.org}` : '' }) })), showType && (_jsx(Box, { flexShrink: 0, width: 'type' in cols ? cols.type : 0, children: _jsx(Text, { wrap: 'truncate', children: asset.type }) })), _jsx(Box, { flexShrink: 0, width: cols.version, children: _jsxs(Text, { wrap: 'truncate', children: ["v", asset.latest] }) }), _jsx(Box, { flexShrink: 0, width: cols.status, children: installed && _jsx(Text, { color: 'green', children: "[installed]" }) }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { dimColor: true, wrap: 'truncate', children: latestVersion?.description ?? '' }) })] }), isExpanded && (_jsx(BrowseExpandedRow, { asset: asset, installedVersion: installed?.version, isInstalled: !!installed, readmeUrl: readmeUrl, terminalWidth: terminalWidth }))] }, `${asset.type}/${asset.name}`));
|
|
72
|
+
}
|
|
73
|
+
function BrowseBundleRow({ bundle, bundleCols, cols, expandedBundleDeps, isBundleTab, isCursor, isExpanded, lockfile, orgWidth, registryAssets, showOrg, showType, terminalWidth, }) {
|
|
74
|
+
const bundleAssets = bundle.assets ?? [];
|
|
75
|
+
// Only resolve dependencies when expanded; for collapsed rows use asset count directly
|
|
76
|
+
let assetLabel;
|
|
77
|
+
let bundleDeps;
|
|
78
|
+
if (isExpanded) {
|
|
79
|
+
bundleDeps = expandedBundleDeps ?? resolveBundleDependencies(registryAssets, bundleAssets);
|
|
80
|
+
assetLabel =
|
|
81
|
+
bundleDeps.totalDepCount > 0
|
|
82
|
+
? `${bundle.assetCount} (+${bundleDeps.totalDepCount} deps)`
|
|
83
|
+
: `${bundle.assetCount} assets`;
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
assetLabel = `${bundle.assetCount} assets`;
|
|
87
|
+
// bundleDeps only needed for the expanded view, provide a stub for type safety
|
|
88
|
+
bundleDeps = { depMap: new Map(), totalDepCount: 0 };
|
|
97
89
|
}
|
|
98
|
-
|
|
90
|
+
const { allInstalled, partiallyInstalled } = getBundleInstallStatus(lockfile, bundleAssets);
|
|
91
|
+
return (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.cursor : cols.cursor, children: _jsx(Text, { color: 'magenta', children: isCursor ? ' ▸' : ' ' }) }), _jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.name : cols.name, children: _jsx(Text, { color: 'magenta', wrap: 'truncate', children: bundle.name }) }), isBundleTab ? (_jsx(Box, { flexShrink: 0, width: bundleCols.assets, children: _jsx(Text, { wrap: 'truncate', children: assetLabel }) })) : (_jsxs(_Fragment, { children: [showOrg && (_jsx(Box, { flexShrink: 0, width: orgWidth, children: _jsx(Text, { dimColor: true, wrap: 'truncate' }) })), showType && (_jsx(Box, { flexShrink: 0, width: 'type' in cols ? cols.type : 0, children: _jsx(Text, { wrap: 'truncate', children: "bundle" }) }))] })), _jsx(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.version : cols.version, children: _jsxs(Text, { wrap: 'truncate', children: ["v", bundle.version] }) }), _jsxs(Box, { flexShrink: 0, width: isBundleTab ? bundleCols.status : cols.status, children: [allInstalled && _jsx(Text, { color: 'green', children: "[installed]" }), partiallyInstalled && _jsx(Text, { color: 'yellow', children: "[partial]" })] }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { dimColor: true, wrap: 'truncate', children: bundle.description }) })] }), isExpanded && _jsx(BrowseExpandedBundle, { bundle: bundle, bundleDeps: bundleDeps, terminalWidth: terminalWidth })] }, `bundle/${bundle.name}`));
|
|
92
|
+
}
|
|
93
|
+
// --- Main component ---
|
|
94
|
+
function ColumnHeader({ bundleCols, cols, isBundleTab, orgWidth, showOrg, showType }) {
|
|
95
|
+
if (isBundleTab) {
|
|
96
|
+
return (_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: bundleCols.cursor, children: _jsx(Text, { children: " " }) }), _jsx(Box, { flexShrink: 0, width: bundleCols.name, children: _jsx(Text, { bold: true, dimColor: true, children: "Name" }) }), _jsx(Box, { flexShrink: 0, width: bundleCols.assets, children: _jsx(Text, { bold: true, dimColor: true, children: "Assets" }) }), _jsx(Box, { flexShrink: 0, width: bundleCols.version, children: _jsx(Text, { bold: true, dimColor: true, children: "Version" }) }), _jsx(Box, { flexShrink: 0, width: bundleCols.status, children: _jsx(Text, { bold: true, dimColor: true, children: "Status" }) }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { bold: true, dimColor: true, children: "Description" }) })] }));
|
|
97
|
+
}
|
|
98
|
+
return (_jsxs(Box, { children: [_jsx(Box, { flexShrink: 0, width: cols.cursor, children: _jsx(Text, { children: " " }) }), _jsx(Box, { flexShrink: 0, width: cols.name, children: _jsx(Text, { bold: true, dimColor: true, children: "Name" }) }), showOrg && (_jsx(Box, { flexShrink: 0, width: orgWidth, children: _jsx(Text, { bold: true, dimColor: true, children: "Org" }) })), showType && (_jsx(Box, { flexShrink: 0, width: 'type' in cols ? cols.type : 0, children: _jsx(Text, { bold: true, dimColor: true, children: "Type" }) })), _jsx(Box, { flexShrink: 0, width: cols.version, children: _jsx(Text, { bold: true, dimColor: true, children: "Version" }) }), _jsx(Box, { flexShrink: 0, width: cols.status, children: _jsx(Text, { bold: true, dimColor: true, children: "Status" }) }), _jsx(Box, { flexGrow: 1, overflow: 'hidden', children: _jsx(Text, { bold: true, dimColor: true, children: "Description" }) })] }));
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Compute bundle install status from the lockfile and bundle asset refs.
|
|
102
|
+
*/
|
|
103
|
+
function getBundleInstallStatus(lockfile, bundleAssets) {
|
|
104
|
+
const totalCount = bundleAssets.length;
|
|
105
|
+
const installedCount = bundleAssets.filter((ref) => isAssetInstalled(lockfile, ref.name, ref.type)).length;
|
|
106
|
+
const allInstalled = totalCount > 0 && installedCount === totalCount;
|
|
107
|
+
const partiallyInstalled = installedCount > 0 && installedCount < totalCount;
|
|
108
|
+
return { allInstalled, installedCount, partiallyInstalled, totalCount };
|
|
99
109
|
}
|
|
100
110
|
//# sourceMappingURL=BrowseList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrowseList.js","sourceRoot":"","sources":["../../src/components/BrowseList.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BrowseList.js","sourceRoot":"","sources":["../../src/components/BrowseList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HelpBar.d.ts","sourceRoot":"","sources":["../../src/components/HelpBar.tsx"],"names":[],"mappings":"AAEA,UAAU,YAAY;IACpB,gDAAgD;IAChD,UAAU,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,OAAO,CAAC;IAClB,uCAAuC;IACvC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yBAAyB;IACzB,SAAS,EAAE,QAAQ,GAAG,UAAU,CAAC;CAClC;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAc,EAAE,SAAS,EAAE,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"HelpBar.d.ts","sourceRoot":"","sources":["../../src/components/HelpBar.tsx"],"names":[],"mappings":"AAEA,UAAU,YAAY;IACpB,gDAAgD;IAChD,UAAU,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,OAAO,CAAC;IAClB,uCAAuC;IACvC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,yBAAyB;IACzB,SAAS,EAAE,QAAQ,GAAG,UAAU,CAAC;CAClC;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAc,EAAE,SAAS,EAAE,EAAE,YAAY,2CA4ChG"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
export default function HelpBar({ canInstall, expanded, hasOrg = false, inputMode }) {
|
|
4
4
|
if (inputMode === 'filter') {
|
|
5
|
-
return (_jsx(Box, { borderColor: 'gray', borderStyle: 'round', children: _jsxs(Text, { dimColor: true, children: [_jsx(Text, { children: "\u2191\u2193" }), " navigate", ' ', _jsx(Text, { children: "Tab" }), ": type", ' ', _jsx(Text, { children: "Esc" }), ": stop filter", ' ',
|
|
5
|
+
return (_jsx(Box, { borderColor: 'gray', borderStyle: 'round', children: _jsxs(Text, { dimColor: true, children: [_jsx(Text, { children: "\u2191\u2193" }), " navigate", ' ', _jsx(Text, { children: "Tab" }), ": type", ' ', _jsx(Text, { children: "Esc" }), ": stop filter", ' ', "Type to filter..."] }) }));
|
|
6
6
|
}
|
|
7
|
-
return (_jsx(Box, { borderColor: 'gray', borderStyle: 'round', children: _jsxs(Text, { dimColor: true, children: [_jsx(Text, { children: "\u2191\u2193" }), " navigate", ' ', _jsx(Text, { children: "/" }), ": filter", ' ', _jsx(Text, { children: "Tab" }), ": type", ' ', expanded ? (_jsxs(_Fragment, { children: [_jsx(Text, { children: "Esc" }), ": collapse", ' '] })) : (_jsxs(_Fragment, { children: [_jsx(Text, { children: "Enter" }), ": expand", ' '] })), canInstall && (_jsxs(_Fragment, { children: [_jsx(Text, { children: "i" }), ": install", ' '] })), hasOrg && (_jsxs(_Fragment, { children: [_jsx(Text, { children: "o" }), ": org only", ' '] })), _jsx(Text, { children: "q" }), ": quit"] }) }));
|
|
7
|
+
return (_jsx(Box, { borderColor: 'gray', borderStyle: 'round', children: _jsxs(Text, { dimColor: true, children: [_jsx(Text, { children: "\u2191\u2193" }), " navigate", ' ', _jsx(Text, { children: "/" }), ": filter", ' ', _jsx(Text, { children: "Tab" }), ": type", ' ', _jsx(Text, { children: "s" }), ": sort", ' ', expanded ? (_jsxs(_Fragment, { children: [_jsx(Text, { children: "Esc" }), ": collapse", ' '] })) : (_jsxs(_Fragment, { children: [_jsx(Text, { children: "Enter" }), ": expand", ' '] })), canInstall && (_jsxs(_Fragment, { children: [_jsx(Text, { children: "i" }), ": install", ' '] })), hasOrg && (_jsxs(_Fragment, { children: [_jsx(Text, { children: "o" }), ": org only", ' '] })), _jsx(Text, { children: "q" }), ": quit"] }) }));
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=HelpBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HelpBar.js","sourceRoot":"","sources":["../../src/components/HelpBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAahC,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,SAAS,EAAgB;IAC/F,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CACL,KAAC,GAAG,IAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,YACzC,MAAC,IAAI,IAAC,QAAQ,mBACZ,KAAC,IAAI,+BAAU,eAAU,IAAI,EAC7B,KAAC,IAAI,sBAAW,YAAO,IAAI,EAC3B,KAAC,IAAI,sBAAW,mBAAc,IAAI,
|
|
1
|
+
{"version":3,"file":"HelpBar.js","sourceRoot":"","sources":["../../src/components/HelpBar.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAahC,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,KAAK,EAAE,SAAS,EAAgB;IAC/F,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CACL,KAAC,GAAG,IAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,YACzC,MAAC,IAAI,IAAC,QAAQ,mBACZ,KAAC,IAAI,+BAAU,eAAU,IAAI,EAC7B,KAAC,IAAI,sBAAW,YAAO,IAAI,EAC3B,KAAC,IAAI,sBAAW,mBAAc,IAAI,yBAE7B,GACH,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,KAAC,GAAG,IAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,YACzC,MAAC,IAAI,IAAC,QAAQ,mBACZ,KAAC,IAAI,+BAAU,eAAU,IAAI,EAC7B,KAAC,IAAI,oBAAS,cAAS,IAAI,EAC3B,KAAC,IAAI,sBAAW,YAAO,IAAI,EAC3B,KAAC,IAAI,oBAAS,YAAO,IAAI,EACxB,QAAQ,CAAC,CAAC,CAAC,CACV,8BACE,KAAC,IAAI,sBAAW,gBAAW,IAAI,IAC9B,CACJ,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,IAAI,wBAAa,cAAS,IAAI,IAC9B,CACJ,EACA,UAAU,IAAI,CACb,8BACE,KAAC,IAAI,oBAAS,eAAU,IAAI,IAC3B,CACJ,EACA,MAAM,IAAI,CACT,8BACE,KAAC,IAAI,oBAAS,gBAAW,IAAI,IAC5B,CACJ,EACD,KAAC,IAAI,oBAAS,cACT,GACH,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { default as AssetDetail } from './AssetDetail.js';
|
|
2
2
|
export { default as AssetTable } from './AssetTable.js';
|
|
3
|
-
export { default as BrowseExpandedBundle } from './BrowseExpandedBundle.js';
|
|
4
|
-
export { default as BrowseExpandedRow } from './BrowseExpandedRow.js';
|
|
3
|
+
export { default as BrowseExpandedBundle, type BundleDeps, bundleExpandedLines, resolveBundleDependencies, } from './BrowseExpandedBundle.js';
|
|
4
|
+
export { default as BrowseExpandedRow, computeBrowseExpandedLines } from './BrowseExpandedRow.js';
|
|
5
5
|
export { default as BrowseList } from './BrowseList.js';
|
|
6
6
|
export { default as BundleDetail } from './BundleDetail.js';
|
|
7
7
|
export { default as DependencyTree } from './DependencyTree.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,OAAO,IAAI,oBAAoB,EAC/B,KAAK,UAAU,EACf,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,KAAK,eAAe,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,KAAK,oBAAoB,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { default as AssetDetail } from './AssetDetail.js';
|
|
2
2
|
export { default as AssetTable } from './AssetTable.js';
|
|
3
|
-
export { default as BrowseExpandedBundle } from './BrowseExpandedBundle.js';
|
|
4
|
-
export { default as BrowseExpandedRow } from './BrowseExpandedRow.js';
|
|
3
|
+
export { default as BrowseExpandedBundle, bundleExpandedLines, resolveBundleDependencies, } from './BrowseExpandedBundle.js';
|
|
4
|
+
export { default as BrowseExpandedRow, computeBrowseExpandedLines } from './BrowseExpandedRow.js';
|
|
5
5
|
export { default as BrowseList } from './BrowseList.js';
|
|
6
6
|
export { default as BundleDetail } from './BundleDetail.js';
|
|
7
7
|
export { default as DependencyTree } from './DependencyTree.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,OAAO,IAAI,oBAAoB,EAE/B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAwB,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAsB,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAA6B,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClH,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -4,6 +4,8 @@ import type { Registry, RegistryAsset, RegistryBundle } from '../lib/schemas/reg
|
|
|
4
4
|
export type AssetTypeFilter = 'all' | 'bundle' | AssetType;
|
|
5
5
|
export declare const TYPE_TABS: AssetTypeFilter[];
|
|
6
6
|
export declare const TYPE_TAB_LABELS: Record<AssetTypeFilter, string>;
|
|
7
|
+
export type BrowseSortDirection = 'asc' | 'desc';
|
|
8
|
+
export type BrowseSortField = 'name' | 'type' | 'version';
|
|
7
9
|
export type BrowseAction = {
|
|
8
10
|
char: string;
|
|
9
11
|
type: 'APPEND_FILTER_CHAR';
|
|
@@ -16,6 +18,7 @@ export type BrowseAction = {
|
|
|
16
18
|
lockfile: Lockfile;
|
|
17
19
|
org?: string;
|
|
18
20
|
registry: Registry;
|
|
21
|
+
toolWarning?: string;
|
|
19
22
|
type: 'LOAD_SUCCESS';
|
|
20
23
|
} | {
|
|
21
24
|
message: string;
|
|
@@ -28,6 +31,9 @@ export type BrowseAction = {
|
|
|
28
31
|
} | {
|
|
29
32
|
message: string;
|
|
30
33
|
type: 'LOAD_ERROR';
|
|
34
|
+
} | {
|
|
35
|
+
message: string;
|
|
36
|
+
type: 'SET_LOADING_MESSAGE';
|
|
31
37
|
} | {
|
|
32
38
|
type: 'BEGIN_INSTALL';
|
|
33
39
|
} | {
|
|
@@ -40,6 +46,8 @@ export type BrowseAction = {
|
|
|
40
46
|
type: 'CURSOR_DOWN';
|
|
41
47
|
} | {
|
|
42
48
|
type: 'CURSOR_UP';
|
|
49
|
+
} | {
|
|
50
|
+
type: 'CYCLE_SORT';
|
|
43
51
|
} | {
|
|
44
52
|
type: 'CYCLE_TYPE';
|
|
45
53
|
} | {
|
|
@@ -122,10 +130,18 @@ export type ReadyState = {
|
|
|
122
130
|
orgOnly: boolean;
|
|
123
131
|
registry: Registry;
|
|
124
132
|
scrollOffset: number;
|
|
133
|
+
sortDirection: BrowseSortDirection;
|
|
134
|
+
sortField: BrowseSortField;
|
|
125
135
|
status: 'ready';
|
|
136
|
+
toolWarning?: string;
|
|
126
137
|
typeFilter: AssetTypeFilter;
|
|
127
138
|
viewportHeight: number;
|
|
128
139
|
};
|
|
140
|
+
/**
|
|
141
|
+
* Mirrors Ink's internal key type from ink ^6.0.0.
|
|
142
|
+
* When upgrading the ink dependency, verify this type still matches
|
|
143
|
+
* the key object shape passed to useInput callbacks in the Ink source.
|
|
144
|
+
*/
|
|
129
145
|
type InkKey = {
|
|
130
146
|
backspace: boolean;
|
|
131
147
|
ctrl: boolean;
|
|
@@ -139,12 +155,13 @@ type InkKey = {
|
|
|
139
155
|
};
|
|
140
156
|
export declare function browseReducer(state: BrowseState, action: BrowseAction): BrowseState;
|
|
141
157
|
export declare function computeFilteredItems(allAssets: RegistryAsset[], allBundles: RegistryBundle[], typeFilter: AssetTypeFilter, filterText: string, orgOnly?: boolean, org?: string): BrowseItem[];
|
|
158
|
+
export declare function computeSortedItems(items: BrowseItem[], sortField: BrowseSortField, sortDirection: BrowseSortDirection): BrowseItem[];
|
|
142
159
|
/**
|
|
143
160
|
* Pure function mapping keyboard input to a browse action (or quit signal).
|
|
144
161
|
* Returns null when the input should be ignored.
|
|
145
162
|
*/
|
|
146
163
|
export declare function mapBrowseInput(input: string, key: InkKey, state: ReadyState): BrowseInputResult;
|
|
147
164
|
export declare function useBrowseInput(state: BrowseState, dispatch: React.Dispatch<BrowseAction>, onQuit: () => void): void;
|
|
148
|
-
export declare function useBrowseState(initialFilterText: string, initialTypeFilter: AssetTypeFilter): readonly [BrowseState, import("react").ActionDispatch<[action: BrowseAction]>, (registry: Registry, lockfile: Lockfile, org?: string) => void];
|
|
165
|
+
export declare function useBrowseState(initialFilterText: string, initialTypeFilter: AssetTypeFilter): readonly [BrowseState, import("react").ActionDispatch<[action: BrowseAction]>, (registry: Registry, lockfile: Lockfile, org?: string, toolWarning?: string) => void];
|
|
149
166
|
export {};
|
|
150
167
|
//# sourceMappingURL=useBrowseState.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBrowseState.d.ts","sourceRoot":"","sources":["../../src/hooks/useBrowseState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useBrowseState.d.ts","sourceRoot":"","sources":["../../src/hooks/useBrowseState.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { useInput } from 'ink';
|
|
2
2
|
import { useCallback, useReducer } from 'react';
|
|
3
|
+
import { compare as semverCompare } from 'semver';
|
|
3
4
|
import { isInstalled } from '../lib/lockfile.js';
|
|
4
5
|
import { filterVisibleAssets } from '../lib/registry.js';
|
|
5
6
|
export const TYPE_TABS = [
|
|
@@ -22,6 +23,7 @@ export const TYPE_TAB_LABELS = {
|
|
|
22
23
|
rule: 'Rules',
|
|
23
24
|
skill: 'Skills',
|
|
24
25
|
};
|
|
26
|
+
const BROWSE_SORT_FIELDS = ['name', 'type', 'version'];
|
|
25
27
|
// --- Reducer ---
|
|
26
28
|
export function browseReducer(state, action) {
|
|
27
29
|
switch (action.type) {
|
|
@@ -29,6 +31,10 @@ export function browseReducer(state, action) {
|
|
|
29
31
|
if (state.status !== 'loading')
|
|
30
32
|
return state;
|
|
31
33
|
return { message: action.message, status: 'error' };
|
|
34
|
+
case 'SET_LOADING_MESSAGE':
|
|
35
|
+
if (state.status !== 'loading')
|
|
36
|
+
return state;
|
|
37
|
+
return { ...state, message: action.message };
|
|
32
38
|
case 'SET_VIEWPORT_HEIGHT':
|
|
33
39
|
if (state.status === 'ready' || state.status === 'loading') {
|
|
34
40
|
return { ...state, viewportHeight: action.height };
|
|
@@ -42,12 +48,13 @@ export function browseReducer(state, action) {
|
|
|
42
48
|
const allBundles = action.registry.bundles ?? [];
|
|
43
49
|
const typeFilter = action.initialTypeFilter ?? 'all';
|
|
44
50
|
const filterText = action.initialFilterText ?? '';
|
|
51
|
+
const filtered = computeFilteredItems(allAssets, allBundles, typeFilter, filterText, false, action.org);
|
|
45
52
|
return {
|
|
46
53
|
allAssets,
|
|
47
54
|
allBundles,
|
|
48
55
|
cursorIndex: 0,
|
|
49
56
|
expandedIndex: null,
|
|
50
|
-
filteredItems:
|
|
57
|
+
filteredItems: computeSortedItems(filtered, 'name', 'asc'),
|
|
51
58
|
filterText,
|
|
52
59
|
lockfile: action.lockfile,
|
|
53
60
|
mode: { inputMode: 'navigate', kind: 'browsing' },
|
|
@@ -55,7 +62,10 @@ export function browseReducer(state, action) {
|
|
|
55
62
|
orgOnly: false,
|
|
56
63
|
registry: action.registry,
|
|
57
64
|
scrollOffset: 0,
|
|
65
|
+
sortDirection: 'asc',
|
|
66
|
+
sortField: 'name',
|
|
58
67
|
status: 'ready',
|
|
68
|
+
toolWarning: action.toolWarning,
|
|
59
69
|
typeFilter,
|
|
60
70
|
viewportHeight: state.viewportHeight,
|
|
61
71
|
};
|
|
@@ -65,12 +75,12 @@ export function browseReducer(state, action) {
|
|
|
65
75
|
switch (action.type) {
|
|
66
76
|
case 'APPEND_FILTER_CHAR': {
|
|
67
77
|
const newText = state.filterText + action.char;
|
|
68
|
-
const
|
|
78
|
+
const filtered = computeFilteredItems(state.allAssets, state.allBundles, state.typeFilter, newText, state.orgOnly, state.org);
|
|
69
79
|
return {
|
|
70
80
|
...state,
|
|
71
81
|
cursorIndex: 0,
|
|
72
82
|
expandedIndex: null,
|
|
73
|
-
filteredItems:
|
|
83
|
+
filteredItems: computeSortedItems(filtered, state.sortField, state.sortDirection),
|
|
74
84
|
filterText: newText,
|
|
75
85
|
scrollOffset: 0,
|
|
76
86
|
};
|
|
@@ -162,17 +172,37 @@ export function browseReducer(state, action) {
|
|
|
162
172
|
scrollOffset: newScroll,
|
|
163
173
|
};
|
|
164
174
|
}
|
|
175
|
+
case 'CYCLE_SORT': {
|
|
176
|
+
const currentIdx = BROWSE_SORT_FIELDS.indexOf(state.sortField);
|
|
177
|
+
const nextIdx = (currentIdx + 1) % BROWSE_SORT_FIELDS.length;
|
|
178
|
+
const newSortField = BROWSE_SORT_FIELDS[nextIdx];
|
|
179
|
+
const wrappedAround = nextIdx === 0 && currentIdx === BROWSE_SORT_FIELDS.length - 1;
|
|
180
|
+
const newDirection = wrappedAround
|
|
181
|
+
? (state.sortDirection === 'asc' ? 'desc' : 'asc')
|
|
182
|
+
: 'asc';
|
|
183
|
+
return {
|
|
184
|
+
...state,
|
|
185
|
+
cursorIndex: 0,
|
|
186
|
+
expandedIndex: null,
|
|
187
|
+
filteredItems: computeSortedItems(state.filteredItems, newSortField, newDirection),
|
|
188
|
+
scrollOffset: 0,
|
|
189
|
+
sortDirection: newDirection,
|
|
190
|
+
sortField: newSortField,
|
|
191
|
+
};
|
|
192
|
+
}
|
|
165
193
|
case 'CYCLE_TYPE': {
|
|
166
194
|
const currentIdx = TYPE_TABS.indexOf(state.typeFilter);
|
|
167
195
|
const nextIdx = (currentIdx + 1) % TYPE_TABS.length;
|
|
168
196
|
const newTypeFilter = TYPE_TABS[nextIdx];
|
|
169
|
-
const
|
|
197
|
+
const filtered = computeFilteredItems(state.allAssets, state.allBundles, newTypeFilter, state.filterText, state.orgOnly, state.org);
|
|
170
198
|
return {
|
|
171
199
|
...state,
|
|
172
200
|
cursorIndex: 0,
|
|
173
201
|
expandedIndex: null,
|
|
174
|
-
filteredItems:
|
|
202
|
+
filteredItems: computeSortedItems(filtered, 'name', 'asc'),
|
|
175
203
|
scrollOffset: 0,
|
|
204
|
+
sortDirection: 'asc',
|
|
205
|
+
sortField: 'name',
|
|
176
206
|
typeFilter: newTypeFilter,
|
|
177
207
|
};
|
|
178
208
|
}
|
|
@@ -180,12 +210,12 @@ export function browseReducer(state, action) {
|
|
|
180
210
|
if (state.filterText.length === 0)
|
|
181
211
|
return state;
|
|
182
212
|
const newText = state.filterText.slice(0, -1);
|
|
183
|
-
const
|
|
213
|
+
const filtered = computeFilteredItems(state.allAssets, state.allBundles, state.typeFilter, newText, state.orgOnly, state.org);
|
|
184
214
|
return {
|
|
185
215
|
...state,
|
|
186
216
|
cursorIndex: 0,
|
|
187
217
|
expandedIndex: null,
|
|
188
|
-
filteredItems:
|
|
218
|
+
filteredItems: computeSortedItems(filtered, state.sortField, state.sortDirection),
|
|
189
219
|
filterText: newText,
|
|
190
220
|
scrollOffset: 0,
|
|
191
221
|
};
|
|
@@ -240,12 +270,12 @@ export function browseReducer(state, action) {
|
|
|
240
270
|
if (!state.org)
|
|
241
271
|
return state;
|
|
242
272
|
const newOrgOnly = !state.orgOnly;
|
|
243
|
-
const
|
|
273
|
+
const filtered = computeFilteredItems(state.allAssets, state.allBundles, state.typeFilter, state.filterText, newOrgOnly, state.org);
|
|
244
274
|
return {
|
|
245
275
|
...state,
|
|
246
276
|
cursorIndex: 0,
|
|
247
277
|
expandedIndex: null,
|
|
248
|
-
filteredItems:
|
|
278
|
+
filteredItems: computeSortedItems(filtered, state.sortField, state.sortDirection),
|
|
249
279
|
orgOnly: newOrgOnly,
|
|
250
280
|
scrollOffset: 0,
|
|
251
281
|
};
|
|
@@ -309,7 +339,28 @@ export function computeFilteredItems(allAssets, allBundles, typeFilter, filterTe
|
|
|
309
339
|
}
|
|
310
340
|
}
|
|
311
341
|
}
|
|
312
|
-
return items
|
|
342
|
+
return items;
|
|
343
|
+
}
|
|
344
|
+
export function computeSortedItems(items, sortField, sortDirection) {
|
|
345
|
+
const sorted = [...items];
|
|
346
|
+
const dir = sortDirection === 'asc' ? 1 : -1;
|
|
347
|
+
sorted.sort((a, b) => {
|
|
348
|
+
switch (sortField) {
|
|
349
|
+
case 'name':
|
|
350
|
+
return dir * a.data.name.localeCompare(b.data.name);
|
|
351
|
+
case 'type': {
|
|
352
|
+
const aType = a.kind === 'asset' ? a.data.type : 'bundle';
|
|
353
|
+
const bType = b.kind === 'asset' ? b.data.type : 'bundle';
|
|
354
|
+
return dir * aType.localeCompare(bType) || a.data.name.localeCompare(b.data.name);
|
|
355
|
+
}
|
|
356
|
+
case 'version': {
|
|
357
|
+
const aVersion = a.kind === 'asset' ? a.data.latest : a.data.version;
|
|
358
|
+
const bVersion = b.kind === 'asset' ? b.data.latest : b.data.version;
|
|
359
|
+
return dir * semverCompare(aVersion, bVersion) || a.data.name.localeCompare(b.data.name);
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
});
|
|
363
|
+
return sorted;
|
|
313
364
|
}
|
|
314
365
|
// --- Input mapping (pure) ---
|
|
315
366
|
/**
|
|
@@ -364,6 +415,8 @@ export function mapBrowseInput(input, key, state) {
|
|
|
364
415
|
return { action: { type: 'COLLAPSE' } };
|
|
365
416
|
if (input === 'i')
|
|
366
417
|
return { action: { type: 'BEGIN_INSTALL' } };
|
|
418
|
+
if (input === 's')
|
|
419
|
+
return { action: { type: 'CYCLE_SORT' } };
|
|
367
420
|
if (input === 'o' && state.org)
|
|
368
421
|
return { action: { type: 'TOGGLE_ORG_FILTER' } };
|
|
369
422
|
if (input === 'q')
|
|
@@ -394,13 +447,14 @@ export function useBrowseState(initialFilterText, initialTypeFilter) {
|
|
|
394
447
|
viewportHeight: 20,
|
|
395
448
|
};
|
|
396
449
|
const [state, dispatch] = useReducer(browseReducer, initialState);
|
|
397
|
-
const dispatchLoad = useCallback((registry, lockfile, org) => {
|
|
450
|
+
const dispatchLoad = useCallback((registry, lockfile, org, toolWarning) => {
|
|
398
451
|
dispatch({
|
|
399
452
|
initialFilterText: initialFilterText || undefined,
|
|
400
453
|
initialTypeFilter: initialTypeFilter !== 'all' ? initialTypeFilter : undefined,
|
|
401
454
|
lockfile,
|
|
402
455
|
org,
|
|
403
456
|
registry,
|
|
457
|
+
toolWarning,
|
|
404
458
|
type: 'LOAD_SUCCESS',
|
|
405
459
|
});
|
|
406
460
|
}, [initialFilterText, initialTypeFilter]);
|