mirror of
http://10.0.2.1:3031/sauer/claude-code.git
synced 2026-06-30 14:56:58 +10:00
133 lines
16 KiB
TypeScript
133 lines
16 KiB
TypeScript
|
|
import { c as _c } from "react/compiler-runtime";
|
||
|
|
import partition from 'lodash-es/partition.js';
|
||
|
|
import React, { useCallback } from 'react';
|
||
|
|
import { logEvent } from 'src/services/analytics/index.js';
|
||
|
|
import { Box, Text } from '../ink.js';
|
||
|
|
import { getSettings_DEPRECATED, updateSettingsForSource } from '../utils/settings/settings.js';
|
||
|
|
import { ConfigurableShortcutHint } from './ConfigurableShortcutHint.js';
|
||
|
|
import { SelectMulti } from './CustomSelect/SelectMulti.js';
|
||
|
|
import { Byline } from './design-system/Byline.js';
|
||
|
|
import { Dialog } from './design-system/Dialog.js';
|
||
|
|
import { KeyboardShortcutHint } from './design-system/KeyboardShortcutHint.js';
|
||
|
|
import { MCPServerDialogCopy } from './MCPServerDialogCopy.js';
|
||
|
|
type Props = {
|
||
|
|
serverNames: string[];
|
||
|
|
onDone(): void;
|
||
|
|
};
|
||
|
|
export function MCPServerMultiselectDialog(t0) {
|
||
|
|
const $ = _c(21);
|
||
|
|
const {
|
||
|
|
serverNames,
|
||
|
|
onDone
|
||
|
|
} = t0;
|
||
|
|
let t1;
|
||
|
|
if ($[0] !== onDone || $[1] !== serverNames) {
|
||
|
|
t1 = function onSubmit(selectedServers) {
|
||
|
|
const currentSettings = getSettings_DEPRECATED() || {};
|
||
|
|
const enabledServers = currentSettings.enabledMcpjsonServers || [];
|
||
|
|
const disabledServers = currentSettings.disabledMcpjsonServers || [];
|
||
|
|
const [approvedServers, rejectedServers] = partition(serverNames, server => selectedServers.includes(server));
|
||
|
|
logEvent("tengu_mcp_multidialog_choice", {
|
||
|
|
approved: approvedServers.length,
|
||
|
|
rejected: rejectedServers.length
|
||
|
|
});
|
||
|
|
if (approvedServers.length > 0) {
|
||
|
|
const newEnabledServers = [...new Set([...enabledServers, ...approvedServers])];
|
||
|
|
updateSettingsForSource("localSettings", {
|
||
|
|
enabledMcpjsonServers: newEnabledServers
|
||
|
|
});
|
||
|
|
}
|
||
|
|
if (rejectedServers.length > 0) {
|
||
|
|
const newDisabledServers = [...new Set([...disabledServers, ...rejectedServers])];
|
||
|
|
updateSettingsForSource("localSettings", {
|
||
|
|
disabledMcpjsonServers: newDisabledServers
|
||
|
|
});
|
||
|
|
}
|
||
|
|
onDone();
|
||
|
|
};
|
||
|
|
$[0] = onDone;
|
||
|
|
$[1] = serverNames;
|
||
|
|
$[2] = t1;
|
||
|
|
} else {
|
||
|
|
t1 = $[2];
|
||
|
|
}
|
||
|
|
const onSubmit = t1;
|
||
|
|
let t2;
|
||
|
|
if ($[3] !== onDone || $[4] !== serverNames) {
|
||
|
|
t2 = () => {
|
||
|
|
const currentSettings_0 = getSettings_DEPRECATED() || {};
|
||
|
|
const disabledServers_0 = currentSettings_0.disabledMcpjsonServers || [];
|
||
|
|
const newDisabledServers_0 = [...new Set([...disabledServers_0, ...serverNames])];
|
||
|
|
updateSettingsForSource("localSettings", {
|
||
|
|
disabledMcpjsonServers: newDisabledServers_0
|
||
|
|
});
|
||
|
|
onDone();
|
||
|
|
};
|
||
|
|
$[3] = onDone;
|
||
|
|
$[4] = serverNames;
|
||
|
|
$[5] = t2;
|
||
|
|
} else {
|
||
|
|
t2 = $[5];
|
||
|
|
}
|
||
|
|
const handleEscRejectAll = t2;
|
||
|
|
const t3 = `${serverNames.length} new MCP servers found in .mcp.json`;
|
||
|
|
let t4;
|
||
|
|
if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
|
||
|
|
t4 = <MCPServerDialogCopy />;
|
||
|
|
$[6] = t4;
|
||
|
|
} else {
|
||
|
|
t4 = $[6];
|
||
|
|
}
|
||
|
|
let t5;
|
||
|
|
if ($[7] !== serverNames) {
|
||
|
|
t5 = serverNames.map(_temp);
|
||
|
|
$[7] = serverNames;
|
||
|
|
$[8] = t5;
|
||
|
|
} else {
|
||
|
|
t5 = $[8];
|
||
|
|
}
|
||
|
|
let t6;
|
||
|
|
if ($[9] !== handleEscRejectAll || $[10] !== onSubmit || $[11] !== serverNames || $[12] !== t5) {
|
||
|
|
t6 = <SelectMulti options={t5} defaultValue={serverNames} onSubmit={onSubmit} onCancel={handleEscRejectAll} hideIndexes={true} />;
|
||
|
|
$[9] = handleEscRejectAll;
|
||
|
|
$[10] = onSubmit;
|
||
|
|
$[11] = serverNames;
|
||
|
|
$[12] = t5;
|
||
|
|
$[13] = t6;
|
||
|
|
} else {
|
||
|
|
t6 = $[13];
|
||
|
|
}
|
||
|
|
let t7;
|
||
|
|
if ($[14] !== handleEscRejectAll || $[15] !== t3 || $[16] !== t6) {
|
||
|
|
t7 = <Dialog title={t3} subtitle="Select any you wish to enable." color="warning" onCancel={handleEscRejectAll} hideInputGuide={true}>{t4}{t6}</Dialog>;
|
||
|
|
$[14] = handleEscRejectAll;
|
||
|
|
$[15] = t3;
|
||
|
|
$[16] = t6;
|
||
|
|
$[17] = t7;
|
||
|
|
} else {
|
||
|
|
t7 = $[17];
|
||
|
|
}
|
||
|
|
let t8;
|
||
|
|
if ($[18] === Symbol.for("react.memo_cache_sentinel")) {
|
||
|
|
t8 = <Box paddingX={1}><Text dimColor={true} italic={true}><Byline><KeyboardShortcutHint shortcut="Space" action="select" /><KeyboardShortcutHint shortcut="Enter" action="confirm" /><ConfigurableShortcutHint action="confirm:no" context="Confirmation" fallback="Esc" description="reject all" /></Byline></Text></Box>;
|
||
|
|
$[18] = t8;
|
||
|
|
} else {
|
||
|
|
t8 = $[18];
|
||
|
|
}
|
||
|
|
let t9;
|
||
|
|
if ($[19] !== t7) {
|
||
|
|
t9 = <>{t7}{t8}</>;
|
||
|
|
$[19] = t7;
|
||
|
|
$[20] = t9;
|
||
|
|
} else {
|
||
|
|
t9 = $[20];
|
||
|
|
}
|
||
|
|
return t9;
|
||
|
|
}
|
||
|
|
function _temp(server_0) {
|
||
|
|
return {
|
||
|
|
label: server_0,
|
||
|
|
value: server_0
|
||
|
|
};
|
||
|
|
}
|
||
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXJ0aXRpb24iLCJSZWFjdCIsInVzZUNhbGxiYWNrIiwibG9nRXZlbnQiLCJCb3giLCJUZXh0IiwiZ2V0U2V0dGluZ3NfREVQUkVDQVRFRCIsInVwZGF0ZVNldHRpbmdzRm9yU291cmNlIiwiQ29uZmlndXJhYmxlU2hvcnRjdXRIaW50IiwiU2VsZWN0TXVsdGkiLCJCeWxpbmUiLCJEaWFsb2ciLCJLZXlib2FyZFNob3J0Y3V0SGludCIsIk1DUFNlcnZlckRpYWxvZ0NvcHkiLCJQcm9wcyIsInNlcnZlck5hbWVzIiwib25Eb25lIiwiTUNQU2VydmVyTXVsdGlzZWxlY3REaWFsb2ciLCJ0MCIsIiQiLCJfYyIsInQxIiwib25TdWJtaXQiLCJzZWxlY3RlZFNlcnZlcnMiLCJjdXJyZW50U2V0dGluZ3MiLCJlbmFibGVkU2VydmVycyIsImVuYWJsZWRNY3Bqc29uU2VydmVycyIsImRpc2FibGVkU2VydmVycyIsImRpc2FibGVkTWNwanNvblNlcnZlcnMiLCJhcHByb3ZlZFNlcnZlcnMiLCJyZWplY3RlZFNlcnZlcnMiLCJzZXJ2ZXIiLCJpbmNsdWRlcyIsImFwcHJvdmVkIiwibGVuZ3RoIiwicmVqZWN0ZWQiLCJuZXdFbmFibGVkU2VydmVycyIsIlNldCIsIm5ld0Rpc2FibGVkU2VydmVycyIsInQyIiwiY3VycmVudFNldHRpbmdzXzAiLCJkaXNhYmxlZFNlcnZlcnNfMCIsIm5ld0Rpc2FibGVkU2VydmVyc18wIiwiaGFuZGxlRXNjUmVqZWN0QWxsIiwidDMiLCJ0NCIsIlN5bWJvbCIsImZvciIsInQ1IiwibWFwIiwiX3RlbXAiLCJ0NiIsInQ3IiwidDgiLCJ0OSIsInNlcnZlcl8wIiwibGFiZWwiLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIk1DUFNlcnZlck11bHRpc2VsZWN0RGlhbG9nLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGFydGl0aW9uIGZyb20gJ2xvZGFzaC1lcy9wYXJ0aXRpb24uanMnXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGxvZ0V2ZW50IH0gZnJvbSAnc3JjL3NlcnZpY2VzL2FuYWx5dGljcy9pbmRleC5qcydcbmltcG9ydCB7IEJveCwgVGV4dCB9IGZyb20gJy4uL2luay5qcydcbmltcG9ydCB7XG4gIGdldFNldHRpbmdzX0RFUFJFQ0FURUQsXG4gIHVwZGF0ZVNldHRpbmdzRm9yU291cmNlLFxufSBmcm9tICcuLi91dGlscy9zZXR0aW5ncy9zZXR0aW5ncy5qcydcbmltcG9ydCB7IENvbmZpZ3VyYWJsZVNob3J0Y3V0SGludCB9IGZyb20gJy4vQ29uZmlndXJhYmxlU2hvcnRjdXRIaW50LmpzJ1xuaW1wb3J0IHsgU2VsZWN0TXVsdGkgfSBmcm9tICcuL0N1c3RvbVNlbGVjdC9TZWxlY3RNdWx0aS5qcydcbmltcG9ydCB7IEJ5bGluZSB9IGZyb20gJy4vZGVzaWduLXN5c3RlbS9CeWxpbmUuanMnXG5pbXBvcnQgeyBEaWFsb2cgfSBmcm9tICcuL2Rlc2lnbi1zeXN0ZW0vRGlhbG9nLmpzJ1xuaW1wb3J0IHsgS2V5Ym9hcmRTaG9ydGN1dEhpbnQgfSBmcm9tICcuL2Rlc2lnbi1zeXN0ZW0vS2V5Ym9hcmRTaG9ydGN1dEhpbnQuanMnXG5pbXBvcnQgeyBNQ1BTZXJ2ZXJEaWFsb2dDb3B5IH0gZnJvbSAnLi9NQ1BTZXJ2ZXJEaWFsb2dDb3B5LmpzJ1xuXG50eXBlIFByb3BzID0ge1xuICBzZXJ2ZXJOYW1lczogc3RyaW5nW11cbiAgb25Eb25lKCk6IHZvaWRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIE1DUFNlcnZlck11bHRpc2VsZWN0RGlhbG9nKHtcbiAgc2VydmVyTmFtZXMsXG4gIG9uRG9uZSxcbn06IFByb3BzKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgZnVuY3Rpb24gb25TdWJtaXQoc2VsZWN0ZWRTZXJ2ZXJzOiBzdHJpbmdbXSkge1xuICAgIGNvbnN0IGN1cnJlbnRTZXR0aW5ncyA9IGdldFNldHRpbmdzX0RFUFJFQ0FURUQoKSB8fCB7fVxuICAgIGNvbnN0IGVuYWJsZWRTZXJ2ZXJzID0gY3VycmVudFNldHRpbmdzLmVuYWJsZWRNY3Bqc29uU2VydmVycyB8fCBbXVxuICAgIGNvbnN0IGRpc2FibGVkU2VydmVycyA9IGN1cnJlbnRTZXR0aW5ncy5kaXNhYmxlZE1jcGpzb25TZXJ2ZXJzIHx8IFtdXG5cbiAgICAvLyBVc2UgcGFydGl0aW9uIHRvIHNlcGFyYXRlIGFwcHJvdmVkIGFuZCByZWplY3RlZCBzZXJ2ZXJzXG4gICAgY29uc3QgW2FwcHJvdmVkU2VydmVycywgcmVqZWN0ZWRTZXJ2ZXJzXSA9IHBhcnRpdGlvbihzZXJ2ZXJOYW1lcywgc2VydmVyID0+XG4gICAgICBzZWxlY3RlZFNlcnZlcnMuaW5jbHVkZXMoc2VydmVyKSxcbiAgICApXG5cbiAgICBsb2dFdmVudCgndGVuZ3VfbWNwX211bHRpZGlhbG9nX2Nob2ljZScsIHtcbiAgICAgIGFwcHJvdmVkOiBhcHByb3ZlZFNlcnZlcnMubGVuZ3RoLFxuICAgICAgcmVqZWN0ZWQ6IHJlamVjdGVkU2VydmVycy5sZW5ndGgsXG4gICAgfSlcblxuICAgIC8vIFVwZGF0ZSBzZXR0aW5ncyB3aXRoIGFwcHJvdmVkIHNlcnZlcnNcbiAgICBpZiAoYXBwcm92ZWRTZXJ2ZXJzLmxlbmd0aCA+IDApIHtcbiAgICAgIGNvbnN0IG5ld0VuYWJsZWRTZXJ2ZXJzID0gW1xuICAgICAgICAuLi5uZXcgU2V0KFsuLi5lbmFibGVkU2VydmVycywgLi4uYXBwcm92ZWRTZXJ2ZXJzXSksXG4gICAgICBdXG4gICAgICB1cGRhdGVTZXR0aW5nc0ZvclNvdXJjZSgnbG9jYWxTZXR0aW5ncycsIHtcbiAgICAgICAgZW5hYmxlZE1jcGpzb25TZXJ2ZXJzOiBuZXdFbmFibGVkU2VydmVycyxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIHNldHRpbmdzIHdpdGggcmVqZWN0ZWQgc2VydmVyc1xuICAgIGlmIChyZWplY3RlZFNlcnZlcnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgbmV3RGlzYWJsZWRTZXJ2ZXJzID0gW1xuICAgICAgICAuLi5uZXcgU2V0KFsuLi5kaXNhYmxlZFNlcnZlcnMsIC4uLnJlamVjdGVkU2VydmVyc10pLFxuICAgICAgXVxuICAgICAgdXBkYXRlU2V0dGluZ3NGb3JTb3VyY2UoJ2xvY2FsU2V0dGluZ3MnLCB7XG4gICAgICAgIGRpc2FibGVkTWNwanNvblNlcnZlcnM6IG5ld0Rpc2FibGVkU2VydmVycyxcbiAgICAgIH0pXG4gICAgfVxuXG4gICAgb25Eb25lKClcbiAgfVxuXG4gIC8vIEhhbmRsZSBFU0MgdG8gcmVqZWN0IGFsbCBzZXJ2ZXJzXG4gIGNvbnN0IGhhbmRsZUVzY1JlamVjdEFsbCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBjdXJyZW50U2V0dGl
|