mirror of
http://10.0.2.1:3031/sauer/claude-code.git
synced 2026-06-30 11:16:58 +10:00
154 lines
13 KiB
TypeScript
154 lines
13 KiB
TypeScript
|
|
import { c as _c } from "react/compiler-runtime";
|
||
|
|
import React, { useCallback } from 'react';
|
||
|
|
import { Text } from '../ink.js';
|
||
|
|
import { getGlobalConfig, saveGlobalConfig } from '../utils/config.js';
|
||
|
|
import { isSupportedTerminal } from '../utils/ide.js';
|
||
|
|
import { Select } from './CustomSelect/index.js';
|
||
|
|
import { Dialog } from './design-system/Dialog.js';
|
||
|
|
type IdeAutoConnectDialogProps = {
|
||
|
|
onComplete: () => void;
|
||
|
|
};
|
||
|
|
export function IdeAutoConnectDialog(t0) {
|
||
|
|
const $ = _c(9);
|
||
|
|
const {
|
||
|
|
onComplete
|
||
|
|
} = t0;
|
||
|
|
let t1;
|
||
|
|
if ($[0] !== onComplete) {
|
||
|
|
t1 = async value => {
|
||
|
|
const autoConnect = value === "yes";
|
||
|
|
saveGlobalConfig(current => ({
|
||
|
|
...current,
|
||
|
|
autoConnectIde: autoConnect,
|
||
|
|
hasIdeAutoConnectDialogBeenShown: true
|
||
|
|
}));
|
||
|
|
onComplete();
|
||
|
|
};
|
||
|
|
$[0] = onComplete;
|
||
|
|
$[1] = t1;
|
||
|
|
} else {
|
||
|
|
t1 = $[1];
|
||
|
|
}
|
||
|
|
const handleSelect = t1;
|
||
|
|
let t2;
|
||
|
|
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
|
||
|
|
t2 = [{
|
||
|
|
label: "Yes",
|
||
|
|
value: "yes"
|
||
|
|
}, {
|
||
|
|
label: "No",
|
||
|
|
value: "no"
|
||
|
|
}];
|
||
|
|
$[2] = t2;
|
||
|
|
} else {
|
||
|
|
t2 = $[2];
|
||
|
|
}
|
||
|
|
const options = t2;
|
||
|
|
let t3;
|
||
|
|
if ($[3] !== handleSelect) {
|
||
|
|
t3 = <Select options={options} onChange={handleSelect} defaultValue="yes" />;
|
||
|
|
$[3] = handleSelect;
|
||
|
|
$[4] = t3;
|
||
|
|
} else {
|
||
|
|
t3 = $[4];
|
||
|
|
}
|
||
|
|
let t4;
|
||
|
|
if ($[5] === Symbol.for("react.memo_cache_sentinel")) {
|
||
|
|
t4 = <Text dimColor={true}>You can also configure this in /config or with the --ide flag</Text>;
|
||
|
|
$[5] = t4;
|
||
|
|
} else {
|
||
|
|
t4 = $[5];
|
||
|
|
}
|
||
|
|
let t5;
|
||
|
|
if ($[6] !== onComplete || $[7] !== t3) {
|
||
|
|
t5 = <Dialog title="Do you wish to enable auto-connect to IDE?" color="ide" onCancel={onComplete}>{t3}{t4}</Dialog>;
|
||
|
|
$[6] = onComplete;
|
||
|
|
$[7] = t3;
|
||
|
|
$[8] = t5;
|
||
|
|
} else {
|
||
|
|
t5 = $[8];
|
||
|
|
}
|
||
|
|
return t5;
|
||
|
|
}
|
||
|
|
export function shouldShowAutoConnectDialog(): boolean {
|
||
|
|
const config = getGlobalConfig();
|
||
|
|
return !isSupportedTerminal() && config.autoConnectIde !== true && config.hasIdeAutoConnectDialogBeenShown !== true;
|
||
|
|
}
|
||
|
|
type IdeDisableAutoConnectDialogProps = {
|
||
|
|
onComplete: (disableAutoConnect: boolean) => void;
|
||
|
|
};
|
||
|
|
export function IdeDisableAutoConnectDialog(t0) {
|
||
|
|
const $ = _c(10);
|
||
|
|
const {
|
||
|
|
onComplete
|
||
|
|
} = t0;
|
||
|
|
let t1;
|
||
|
|
if ($[0] !== onComplete) {
|
||
|
|
t1 = value => {
|
||
|
|
const disableAutoConnect = value === "yes";
|
||
|
|
if (disableAutoConnect) {
|
||
|
|
saveGlobalConfig(_temp);
|
||
|
|
}
|
||
|
|
onComplete(disableAutoConnect);
|
||
|
|
};
|
||
|
|
$[0] = onComplete;
|
||
|
|
$[1] = t1;
|
||
|
|
} else {
|
||
|
|
t1 = $[1];
|
||
|
|
}
|
||
|
|
const handleSelect = t1;
|
||
|
|
let t2;
|
||
|
|
if ($[2] !== onComplete) {
|
||
|
|
t2 = () => {
|
||
|
|
onComplete(false);
|
||
|
|
};
|
||
|
|
$[2] = onComplete;
|
||
|
|
$[3] = t2;
|
||
|
|
} else {
|
||
|
|
t2 = $[3];
|
||
|
|
}
|
||
|
|
const handleCancel = t2;
|
||
|
|
let t3;
|
||
|
|
if ($[4] === Symbol.for("react.memo_cache_sentinel")) {
|
||
|
|
t3 = [{
|
||
|
|
label: "No",
|
||
|
|
value: "no"
|
||
|
|
}, {
|
||
|
|
label: "Yes",
|
||
|
|
value: "yes"
|
||
|
|
}];
|
||
|
|
$[4] = t3;
|
||
|
|
} else {
|
||
|
|
t3 = $[4];
|
||
|
|
}
|
||
|
|
const options = t3;
|
||
|
|
let t4;
|
||
|
|
if ($[5] !== handleSelect) {
|
||
|
|
t4 = <Select options={options} onChange={handleSelect} defaultValue="no" />;
|
||
|
|
$[5] = handleSelect;
|
||
|
|
$[6] = t4;
|
||
|
|
} else {
|
||
|
|
t4 = $[6];
|
||
|
|
}
|
||
|
|
let t5;
|
||
|
|
if ($[7] !== handleCancel || $[8] !== t4) {
|
||
|
|
t5 = <Dialog title="Do you wish to disable auto-connect to IDE?" subtitle="You can also configure this in /config" onCancel={handleCancel} color="ide">{t4}</Dialog>;
|
||
|
|
$[7] = handleCancel;
|
||
|
|
$[8] = t4;
|
||
|
|
$[9] = t5;
|
||
|
|
} else {
|
||
|
|
t5 = $[9];
|
||
|
|
}
|
||
|
|
return t5;
|
||
|
|
}
|
||
|
|
function _temp(current) {
|
||
|
|
return {
|
||
|
|
...current,
|
||
|
|
autoConnectIde: false
|
||
|
|
};
|
||
|
|
}
|
||
|
|
export function shouldShowDisableAutoConnectDialog(): boolean {
|
||
|
|
const config = getGlobalConfig();
|
||
|
|
return !isSupportedTerminal() && config.autoConnectIde === true;
|
||
|
|
}
|
||
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZUNhbGxiYWNrIiwiVGV4dCIsImdldEdsb2JhbENvbmZpZyIsInNhdmVHbG9iYWxDb25maWciLCJpc1N1cHBvcnRlZFRlcm1pbmFsIiwiU2VsZWN0IiwiRGlhbG9nIiwiSWRlQXV0b0Nvbm5lY3REaWFsb2dQcm9wcyIsIm9uQ29tcGxldGUiLCJJZGVBdXRvQ29ubmVjdERpYWxvZyIsInQwIiwiJCIsIl9jIiwidDEiLCJ2YWx1ZSIsImF1dG9Db25uZWN0IiwiY3VycmVudCIsImF1dG9Db25uZWN0SWRlIiwiaGFzSWRlQXV0b0Nvbm5lY3REaWFsb2dCZWVuU2hvd24iLCJoYW5kbGVTZWxlY3QiLCJ0MiIsIlN5bWJvbCIsImZvciIsImxhYmVsIiwib3B0aW9ucyIsInQzIiwidDQiLCJ0NSIsInNob3VsZFNob3dBdXRvQ29ubmVjdERpYWxvZyIsImNvbmZpZyIsIklkZURpc2FibGVBdXRvQ29ubmVjdERpYWxvZ1Byb3BzIiwiZGlzYWJsZUF1dG9Db25uZWN0IiwiSWRlRGlzYWJsZUF1dG9Db25uZWN0RGlhbG9nIiwiX3RlbXAiLCJoYW5kbGVDYW5jZWwiLCJzaG91bGRTaG93RGlzYWJsZUF1dG9Db25uZWN0RGlhbG9nIl0sInNvdXJjZXMiOlsiSWRlQXV0b0Nvbm5lY3REaWFsb2cudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgVGV4dCB9IGZyb20gJy4uL2luay5qcydcbmltcG9ydCB7IGdldEdsb2JhbENvbmZpZywgc2F2ZUdsb2JhbENvbmZpZyB9IGZyb20gJy4uL3V0aWxzL2NvbmZpZy5qcydcbmltcG9ydCB7IGlzU3VwcG9ydGVkVGVybWluYWwgfSBmcm9tICcuLi91dGlscy9pZGUuanMnXG5pbXBvcnQgeyBTZWxlY3QgfSBmcm9tICcuL0N1c3RvbVNlbGVjdC9pbmRleC5qcydcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4vZGVzaWduLXN5c3RlbS9EaWFsb2cuanMnXG5cbnR5cGUgSWRlQXV0b0Nvbm5lY3REaWFsb2dQcm9wcyA9IHtcbiAgb25Db21wbGV0ZTogKCkgPT4gdm9pZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gSWRlQXV0b0Nvbm5lY3REaWFsb2coe1xuICBvbkNvbXBsZXRlLFxufTogSWRlQXV0b0Nvbm5lY3REaWFsb2dQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IGhhbmRsZVNlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBhdXRvQ29ubmVjdCA9IHZhbHVlID09PSAneWVzJ1xuXG4gICAgICAvLyBTYXZlIHRoZSBwcmVmZXJlbmNlIGFuZCBtYXJrIGRpYWxvZyBhcyBzaG93blxuICAgICAgc2F2ZUdsb2JhbENvbmZpZyhjdXJyZW50ID0+ICh7XG4gICAgICAgIC4uLmN1cnJlbnQsXG4gICAgICAgIGF1dG9Db25uZWN0SWRlOiBhdXRvQ29ubmVjdCxcbiAgICAgICAgaGFzSWRlQXV0b0Nvbm5lY3REaWFsb2dCZWVuU2hvd246IHRydWUsXG4gICAgICB9KSlcblxuICAgICAgb25Db21wbGV0ZSgpXG4gICAgfSxcbiAgICBbb25Db21wbGV0ZV0sXG4gIClcblxuICBjb25zdCBvcHRpb25zID0gW1xuICAgIHsgbGFiZWw6ICdZZXMnLCB2YWx1ZTogJ3llcycgfSxcbiAgICB7IGxhYmVsOiAnTm8nLCB2YWx1ZTogJ25vJyB9LFxuICBdXG5cbiAgcmV0dXJuIChcbiAgICA8RGlhbG9nXG4gICAgICB0aXRsZT1cIkRvIHlvdSB3aXNoIHRvIGVuYWJsZSBhdXRvLWNvbm5lY3QgdG8gSURFP1wiXG4gICAgICBjb2xvcj1cImlkZVwiXG4gICAgICBvbkNhbmNlbD17b25Db21wbGV0ZX1cbiAgICA+XG4gICAgICA8U2VsZWN0IG9wdGlvbnM9e29wdGlvbnN9IG9uQ2hhbmdlPXtoYW5kbGVTZWxlY3R9IGRlZmF1bHRWYWx1ZT17J3llcyd9IC8+XG4gICAgICA8VGV4dCBkaW1Db2xvcj5cbiAgICAgICAgWW91IGNhbiBhbHNvIGNvbmZpZ3VyZSB0aGlzIGluIC9jb25maWcgb3Igd2l0aCB0aGUgLS1pZGUgZmxhZ1xuICAgICAgPC9UZXh0PlxuICAgIDwvRGlhbG9nPlxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzaG91bGRTaG93QXV0b0Nvbm5lY3REaWFsb2coKTogYm9vbGVhbiB7XG4gIGNvbnN0IGNvbmZpZyA9IGdldEdsb2JhbENvbmZpZygpXG4gIHJldHVybiAoXG4gICAgIWlzU3VwcG9ydGVkVGVybWluYWwoKSAmJlxuICAgIGNvbmZpZy5hdXRvQ29ubmVjdElkZSAhPT0gdHJ1ZSAmJlxuICAgIGNvbmZpZy5oYXNJZGVBdXRvQ29ubmVjdERpYWxvZ0JlZW5TaG93biAhPT0gdHJ1ZVxuICApXG59XG5cbnR5cGUgSWRlRGlzYWJsZUF1dG9Db25uZWN0RGlhbG9nUHJvcHMgPSB7XG4gIG9uQ29tcGxldGU6IChkaXNhYmxlQXV0b0Nvbm5lY3Q6IGJvb2xlYW4pID0+IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIElkZURpc2FibGVBdXRvQ29ubmVjdERpYWxvZyh7XG4gIG9uQ29tcGxldGUsXG59OiBJZGVEaXNhYmxlQXV0b0Nvbm5lY3REaWFsb2dQcm9wcyk6IFJlYWN0LlJlYWN0Tm9kZSB7XG4gIGNvbnN0IGhhbmRsZVNlbGVjdCA9IHVzZUNhbGxiYWNrKFxuICAgICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBkaXNhYmxlQXV0b0Nvbm5lY3QgPSB2YWx1ZSA9PT0gJ3llcydcblxuICAgICAgaWYgKGRpc2FibGVBdXRvQ29ubmVjdCkge1xuICAgICAgICBzYXZlR2xvYmFsQ29uZmlnKGN1cnJlbnQgPT4gKHtcbiAgICAgICAgICAuLi5jdXJyZW50LFxuICAgICAgICAgIGF1dG9Db25uZWN0SWRlOiBmYWxzZSxcbiAgICAgICAgfSkpXG4gICAgICB9XG5cbiAgICAgIG9uQ29tcGxldGUoZGlzYWJsZUF1dG9Db25uZWN0KVxuICAgIH0sXG4gICAgW29uQ29tcGxldGVdLFxuICApXG5cbiAgY29uc3QgaGFuZGxlQ2FuY2VsID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIG9uQ29tcGxldGUoZmFsc2UpXG4gIH0sIFtvbkNvbXBsZXRlXSlcblxuICBjb25zdCBvcHRpb25zID0gW1xuICAgIHsgbGFiZWw6ICdObycsIHZhbHVlOiAnbm8nIH0sXG4gICAgeyBsYWJlbDogJ1llcycsIHZhbHVlOiAneWVzJyB9LFxuICBdXG5cbiAgcmV0dXJuIChcbiAgICA8RGlhbG9nXG4gICAgICB0aXRsZT1cIkRvIHlvdSB3aXNoIHRvIGRpc2FibGUgYXV0by1jb25uZWN0IHRvIElERT9cIlxuICAgICAgc3VidGl0bGU9XCJZb3U
|