150 lines
15 KiB
TypeScript
150 lines
15 KiB
TypeScript
import { c as _c } from "react/compiler-runtime";
|
|
import figures from 'figures';
|
|
import * as React from 'react';
|
|
import { useCallback, useEffect } from 'react';
|
|
import { getOriginalCwd } from '../../../bootstrap/state.js';
|
|
import type { CommandResultDisplay } from '../../../commands.js';
|
|
import { Select } from '../../../components/CustomSelect/select.js';
|
|
import { Box, Text } from '../../../ink.js';
|
|
import type { ToolPermissionContext } from '../../../Tool.js';
|
|
import { useTabHeaderFocus } from '../../design-system/Tabs.js';
|
|
type Props = {
|
|
onExit: (result?: string, options?: {
|
|
display?: CommandResultDisplay;
|
|
}) => void;
|
|
toolPermissionContext: ToolPermissionContext;
|
|
onRequestAddDirectory: () => void;
|
|
onRequestRemoveDirectory: (path: string) => void;
|
|
onHeaderFocusChange?: (focused: boolean) => void;
|
|
};
|
|
type DirectoryItem = {
|
|
path: string;
|
|
isCurrent: boolean;
|
|
isDeletable: boolean;
|
|
};
|
|
export function WorkspaceTab(t0) {
|
|
const $ = _c(23);
|
|
const {
|
|
onExit,
|
|
toolPermissionContext,
|
|
onRequestAddDirectory,
|
|
onRequestRemoveDirectory,
|
|
onHeaderFocusChange
|
|
} = t0;
|
|
const {
|
|
headerFocused,
|
|
focusHeader
|
|
} = useTabHeaderFocus();
|
|
let t1;
|
|
let t2;
|
|
if ($[0] !== headerFocused || $[1] !== onHeaderFocusChange) {
|
|
t1 = () => {
|
|
onHeaderFocusChange?.(headerFocused);
|
|
};
|
|
t2 = [headerFocused, onHeaderFocusChange];
|
|
$[0] = headerFocused;
|
|
$[1] = onHeaderFocusChange;
|
|
$[2] = t1;
|
|
$[3] = t2;
|
|
} else {
|
|
t1 = $[2];
|
|
t2 = $[3];
|
|
}
|
|
useEffect(t1, t2);
|
|
let t3;
|
|
if ($[4] !== toolPermissionContext.additionalWorkingDirectories) {
|
|
t3 = Array.from(toolPermissionContext.additionalWorkingDirectories.keys()).map(_temp);
|
|
$[4] = toolPermissionContext.additionalWorkingDirectories;
|
|
$[5] = t3;
|
|
} else {
|
|
t3 = $[5];
|
|
}
|
|
const additionalDirectories = t3;
|
|
let t4;
|
|
if ($[6] !== additionalDirectories || $[7] !== onRequestAddDirectory || $[8] !== onRequestRemoveDirectory) {
|
|
t4 = selectedValue => {
|
|
if (selectedValue === "add-directory") {
|
|
onRequestAddDirectory();
|
|
return;
|
|
}
|
|
const directory = additionalDirectories.find(d => d.path === selectedValue);
|
|
if (directory && directory.isDeletable) {
|
|
onRequestRemoveDirectory(directory.path);
|
|
}
|
|
};
|
|
$[6] = additionalDirectories;
|
|
$[7] = onRequestAddDirectory;
|
|
$[8] = onRequestRemoveDirectory;
|
|
$[9] = t4;
|
|
} else {
|
|
t4 = $[9];
|
|
}
|
|
const handleDirectorySelect = t4;
|
|
let t5;
|
|
if ($[10] !== onExit) {
|
|
t5 = () => onExit("Workspace dialog dismissed", {
|
|
display: "system"
|
|
});
|
|
$[10] = onExit;
|
|
$[11] = t5;
|
|
} else {
|
|
t5 = $[11];
|
|
}
|
|
const handleCancel = t5;
|
|
let opts;
|
|
if ($[12] !== additionalDirectories) {
|
|
opts = additionalDirectories.map(_temp2);
|
|
let t6;
|
|
if ($[14] === Symbol.for("react.memo_cache_sentinel")) {
|
|
t6 = {
|
|
label: `Add directory${figures.ellipsis}`,
|
|
value: "add-directory"
|
|
};
|
|
$[14] = t6;
|
|
} else {
|
|
t6 = $[14];
|
|
}
|
|
opts.push(t6);
|
|
$[12] = additionalDirectories;
|
|
$[13] = opts;
|
|
} else {
|
|
opts = $[13];
|
|
}
|
|
const options = opts;
|
|
let t6;
|
|
if ($[15] === Symbol.for("react.memo_cache_sentinel")) {
|
|
t6 = <Box flexDirection="row" marginTop={1} marginLeft={2} gap={1}><Text>{`- ${getOriginalCwd()}`}</Text><Text dimColor={true}>(Original working directory)</Text></Box>;
|
|
$[15] = t6;
|
|
} else {
|
|
t6 = $[15];
|
|
}
|
|
const t7 = Math.min(10, options.length);
|
|
let t8;
|
|
if ($[16] !== focusHeader || $[17] !== handleCancel || $[18] !== handleDirectorySelect || $[19] !== headerFocused || $[20] !== options || $[21] !== t7) {
|
|
t8 = <Box flexDirection="column" marginBottom={1}>{t6}<Select options={options} onChange={handleDirectorySelect} onCancel={handleCancel} visibleOptionCount={t7} onUpFromFirstItem={focusHeader} isDisabled={headerFocused} /></Box>;
|
|
$[16] = focusHeader;
|
|
$[17] = handleCancel;
|
|
$[18] = handleDirectorySelect;
|
|
$[19] = headerFocused;
|
|
$[20] = options;
|
|
$[21] = t7;
|
|
$[22] = t8;
|
|
} else {
|
|
t8 = $[22];
|
|
}
|
|
return t8;
|
|
}
|
|
function _temp2(dir) {
|
|
return {
|
|
label: dir.path,
|
|
value: dir.path
|
|
};
|
|
}
|
|
function _temp(path) {
|
|
return {
|
|
path,
|
|
isCurrent: false,
|
|
isDeletable: true
|
|
};
|
|
}
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmaWd1cmVzIiwiUmVhY3QiLCJ1c2VDYWxsYmFjayIsInVzZUVmZmVjdCIsImdldE9yaWdpbmFsQ3dkIiwiQ29tbWFuZFJlc3VsdERpc3BsYXkiLCJTZWxlY3QiLCJCb3giLCJUZXh0IiwiVG9vbFBlcm1pc3Npb25Db250ZXh0IiwidXNlVGFiSGVhZGVyRm9jdXMiLCJQcm9wcyIsIm9uRXhpdCIsInJlc3VsdCIsIm9wdGlvbnMiLCJkaXNwbGF5IiwidG9vbFBlcm1pc3Npb25Db250ZXh0Iiwib25SZXF1ZXN0QWRkRGlyZWN0b3J5Iiwib25SZXF1ZXN0UmVtb3ZlRGlyZWN0b3J5IiwicGF0aCIsIm9uSGVhZGVyRm9jdXNDaGFuZ2UiLCJmb2N1c2VkIiwiRGlyZWN0b3J5SXRlbSIsImlzQ3VycmVudCIsImlzRGVsZXRhYmxlIiwiV29ya3NwYWNlVGFiIiwidDAiLCIkIiwiX2MiLCJoZWFkZXJGb2N1c2VkIiwiZm9jdXNIZWFkZXIiLCJ0MSIsInQyIiwidDMiLCJhZGRpdGlvbmFsV29ya2luZ0RpcmVjdG9yaWVzIiwiQXJyYXkiLCJmcm9tIiwia2V5cyIsIm1hcCIsIl90ZW1wIiwiYWRkaXRpb25hbERpcmVjdG9yaWVzIiwidDQiLCJzZWxlY3RlZFZhbHVlIiwiZGlyZWN0b3J5IiwiZmluZCIsImQiLCJoYW5kbGVEaXJlY3RvcnlTZWxlY3QiLCJ0NSIsImhhbmRsZUNhbmNlbCIsIm9wdHMiLCJfdGVtcDIiLCJ0NiIsIlN5bWJvbCIsImZvciIsImxhYmVsIiwiZWxsaXBzaXMiLCJ2YWx1ZSIsInB1c2giLCJ0NyIsIk1hdGgiLCJtaW4iLCJsZW5ndGgiLCJ0OCIsImRpciJdLCJzb3VyY2VzIjpbIldvcmtzcGFjZVRhYi50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZpZ3VyZXMgZnJvbSAnZmlndXJlcydcbmltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgZ2V0T3JpZ2luYWxDd2QgfSBmcm9tICcuLi8uLi8uLi9ib290c3RyYXAvc3RhdGUuanMnXG5pbXBvcnQgdHlwZSB7IENvbW1hbmRSZXN1bHREaXNwbGF5IH0gZnJvbSAnLi4vLi4vLi4vY29tbWFuZHMuanMnXG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzL0N1c3RvbVNlbGVjdC9zZWxlY3QuanMnXG5pbXBvcnQgeyBCb3gsIFRleHQgfSBmcm9tICcuLi8uLi8uLi9pbmsuanMnXG5pbXBvcnQgdHlwZSB7IFRvb2xQZXJtaXNzaW9uQ29udGV4dCB9IGZyb20gJy4uLy4uLy4uL1Rvb2wuanMnXG5pbXBvcnQgeyB1c2VUYWJIZWFkZXJGb2N1cyB9IGZyb20gJy4uLy4uL2Rlc2lnbi1zeXN0ZW0vVGFicy5qcydcblxudHlwZSBQcm9wcyA9IHtcbiAgb25FeGl0OiAoXG4gICAgcmVzdWx0Pzogc3RyaW5nLFxuICAgIG9wdGlvbnM/OiB7IGRpc3BsYXk/OiBDb21tYW5kUmVzdWx0RGlzcGxheSB9LFxuICApID0+IHZvaWRcbiAgdG9vbFBlcm1pc3Npb25Db250ZXh0OiBUb29sUGVybWlzc2lvbkNvbnRleHRcbiAgb25SZXF1ZXN0QWRkRGlyZWN0b3J5OiAoKSA9PiB2b2lkXG4gIG9uUmVxdWVzdFJlbW92ZURpcmVjdG9yeTogKHBhdGg6IHN0cmluZykgPT4gdm9pZFxuICBvbkhlYWRlckZvY3VzQ2hhbmdlPzogKGZvY3VzZWQ6IGJvb2xlYW4pID0+IHZvaWRcbn1cblxudHlwZSBEaXJlY3RvcnlJdGVtID0ge1xuICBwYXRoOiBzdHJpbmdcbiAgaXNDdXJyZW50OiBib29sZWFuXG4gIGlzRGVsZXRhYmxlOiBib29sZWFuXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBXb3Jrc3BhY2VUYWIoe1xuICBvbkV4aXQsXG4gIHRvb2xQZXJtaXNzaW9uQ29udGV4dCxcbiAgb25SZXF1ZXN0QWRkRGlyZWN0b3J5LFxuICBvblJlcXVlc3RSZW1vdmVEaXJlY3RvcnksXG4gIG9uSGVhZGVyRm9jdXNDaGFuZ2UsXG59OiBQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IHsgaGVhZGVyRm9jdXNlZCwgZm9jdXNIZWFkZXIgfSA9IHVzZVRhYkhlYWRlckZvY3VzKClcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBvbkhlYWRlckZvY3VzQ2hhbmdlPy4oaGVhZGVyRm9jdXNlZClcbiAgfSwgW2hlYWRlckZvY3VzZWQsIG9uSGVhZGVyRm9jdXNDaGFuZ2VdKVxuICAvLyBHZXQgb25seSBhZGRpdGlvbmFsIHdvcmtzcGFjZSBkaXJlY3RvcmllcyAobm90IHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5KVxuICBjb25zdCBhZGRpdGlvbmFsRGlyZWN0b3JpZXMgPSBSZWFjdC51c2VNZW1vKCgpOiBEaXJlY3RvcnlJdGVtW10gPT4ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKFxuICAgICAgdG9vbFBlcm1pc3Npb25Db250ZXh0LmFkZGl0aW9uYWxXb3JraW5nRGlyZWN0b3JpZXMua2V5cygpLFxuICAgICkubWFwKHBhdGggPT4gKHtcbiAgICAgIHBhdGgsXG4gICAgICBpc0N1cnJlbnQ6IGZhbHNlLFxuICAgICAgaXNEZWxldGFibGU6IHRydWUsXG4gICAgfSkpXG4gIH0sIFt0b29sUGVybWlzc2lvbkNvbnRleHQuYWRkaXRpb25hbFdvcmtpbmdEaXJlY3Rvcmllc10pXG5cbiAgY29uc3QgaGFuZGxlRGlyZWN0b3J5U2VsZWN0ID0gdXNlQ2FsbGJhY2soXG4gICAgKHNlbGVjdGVkVmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKHNlbGVjdGVkVmFsdWUgPT09ICdhZGQtZGlyZWN0b3J5Jykge1xuICAgICAgICBvblJlcXVlc3RBZGREaXJlY3RvcnkoKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cblxuICAgICAgY29uc3QgZGlyZWN0b3J5ID0gYWRkaXRpb25hbERpcmVjdG9yaWVzLmZpbmQoXG4gICAgICAgIGQgPT4gZC5wYXRoID09PSBzZWxlY3RlZFZhbHVlLFxuICAgICAgKVxuICAgICAgaWYgKGRpcmVjdG9yeSAmJiBkaXJlY3RvcnkuaXNEZWxldGFibGUpIHtcbiAgICAgICAgb25SZXF1ZXN0UmVtb3ZlRGlyZWN0b3J5KGRpcmVjdG9yeS5wYXRoKVxuICAgICAgfVxuICAgIH0sXG4gICAgW2FkZGl0aW9uYWxEaXJlY3Rvcmllcywgb25SZXF1ZXN0QWRkRGlyZWN0b3J5LCBvblJlcXVlc3RSZW1vdmVEaXJlY3RvcnldLFxuICApXG5cbiAgY29uc3QgaGFuZGxlQ2FuY2VsID0gdXNlQ2FsbGJhY2soXG4gICAgKCkgPT4gb25FeGl0KCdXb3Jrc3BhY2UgZGlhbG9nIGRpc21pc3NlZCcsIHsgZGlzcGxheTogJ3N5c3RlbScgfSksXG4gICAgW29uRXhpdF0sXG4gIClcblxuICAvLyBNYWluIGxpc3QgdmlldyBvcHRpb25zXG4gIGNvbnN0IG9wdGlvbnMgPSBSZWFjdC51c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBvcHRzID0gYWRkaXRpb25hbERpcmVjdG9yaWVzLm1hcChkaXIgPT4gKHtcbiAgICAgIGxhYmVsOiBkaXIucGF0aCxcbiAgICAgIHZhbHVlOiBkaXIucGF0aCxcbiAgICB9KSlcblxuICAgIG9wdHMucHVzaCh7XG4gICAgICBsYWJlbDogYEFkZCBkaXJlY3Rvcnkke2ZpZ3VyZXMuZWxsaXBzaXN9YCxcbiAgICAgIHZhbHVlOiAnYWRkLWRpcmVjdG9yeScsXG4gICAgfSlcblxuICAgIHJldHVybiBvcHRzXG4gIH0sIFthZGRpdGlvbmFsRGlyZWN0b3JpZXNdKVxuXG4gIC8vIE1haW4gbGlzdCB2aWV3XG4gIHJldHVybiAoXG4gICAgPEJveCBmbGV4RGlyZWN0aW9uPVwiY29sdW1uXCIgbWFyZ2luQm90dG9tPXsxfT5cbiAgICAgIHsvKiBDdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5IHNlY3Rpb24gKi99XG4gICAgICA8Qm94IGZsZXhEaXJlY3Rpb249XCJyb3dcIiBtYXJnaW5Ub3A9ezF9IG1hcmdpbkxlZnQ9ezJ9IGdhcD17MX0+XG4gICAgICAgIDxUZXh0PntgLSAgJHtnZXRPcmlnaW5hbEN3ZCgpfWB9PC9UZXh0PlxuICAgICAgICA8VGV4dCBkaW1Db2xvcj4oT3JpZ2luYWwgd29ya2luZyBkaXJlY3RvcnkpPC9UZXh0PlxuICAgICAgPC9Cb3g+XG4gICAgICA8U2VsZWN0XG4gICAgICAgIG9wdGlvbnM9e29wdGlvbnN9XG4gICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVEaXJlY3RvcnlTZWxlY3R9XG4gICAgICAgIG9uQ2FuY2VsPXtoYW5kbGVDYW5jZWx9XG4gICAgICAgIHZpc2libGVPcHRpb25Db3VudD17TWF0aC5taW4oMTAsIG9wdGlvbnMubGVuZ3RoKX1cbiAgICAgICAgb25VcEZyb21GaXJzdEl0ZW09e2ZvY3VzSGVhZGVyfVxuICAgICAgICBpc0Rpc2FibGVkPXtoZWFkZXJGb2N1c2VkfVxuICAgICAgLz5cbiAgICA8L0JveD5cbiAgKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsT0FBTyxNQUFNLFNBQVM7QUFDN0IsT0FBTyxLQUFLQyxLQUFLLE1BQU0sT0FBTztBQUM5QixTQUFTQyxXQUFXLEVBQUVDLFNBQVMsUUFBUSxPQUFPO0FBQzlDLFNBQVNDLGNBQWMsUUFBUSw2QkFBNkI7QUFDNUQsY0FBY0Msb0JBQW9CLFFBQVEsc0JBQXNCO0FBQ2hFLFNBQVNDLE1BQU0sUUFBUSw0Q0FBNEM7QUFDbkUsU0FBU0MsR0FBRyxFQUFFQyxJQUFJLFFBQVEsaUJBQWlCO0FBQzNDLGNBQWNDLHFCQUFxQixRQUFRLGtCQUFrQjtBQUM3RCxTQUFTQyxpQkFBaUIsUUFBUSw2QkFBNkI7QUFFL0QsS0FBS0MsS0FBSyxHQUFHO0VBQ1hDLE1BQU0sRUFBRSxDQUNOQyxNQUFlLENBQVIsRUFBRSxNQUFNLEVBQ2ZDLE9BQTRDLENBQXBDLEVBQUU7SUFBRUMsT0FBTyxDQUFDLEVBQUVWLG9CQUFvQjtFQUFDLENBQUMsRUFDNUMsR0FBRyxJQUFJO0VBQ1RXLHFCQUFxQixFQUFFUCxxQkFBcUI7RUFDNUNRLHFCQUFxQixFQUFFLEdBQUcsR0FBRyxJQUFJ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
|