@vybestack/llxprt-code 0.1.18-nightly.250808.f9b79d74 → 0.1.18-nightly.250812.12fa8ad2
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/README.md +49 -2
- package/dist/package.json +5 -3
- package/dist/src/auth/anthropic-oauth-provider.d.ts +33 -0
- package/dist/src/auth/anthropic-oauth-provider.js +129 -0
- package/dist/src/auth/anthropic-oauth-provider.js.map +1 -0
- package/dist/src/auth/gemini-oauth-provider.d.ts +15 -0
- package/dist/src/auth/gemini-oauth-provider.js +33 -0
- package/dist/src/auth/gemini-oauth-provider.js.map +1 -0
- package/dist/src/auth/oauth-manager.d.ts +109 -0
- package/dist/src/auth/oauth-manager.js +334 -0
- package/dist/src/auth/oauth-manager.js.map +1 -0
- package/dist/src/auth/oauth-manager.spec.d.ts +6 -0
- package/dist/src/auth/oauth-manager.spec.js +523 -0
- package/dist/src/auth/oauth-manager.spec.js.map +1 -0
- package/dist/src/auth/qwen-oauth-provider.d.ts +14 -0
- package/dist/src/auth/qwen-oauth-provider.js +75 -0
- package/dist/src/auth/qwen-oauth-provider.js.map +1 -0
- package/dist/src/auth/types.d.ts +7 -0
- package/dist/src/auth/types.js +7 -0
- package/dist/src/auth/types.js.map +1 -0
- package/dist/src/config/auth.js +11 -0
- package/dist/src/config/auth.js.map +1 -1
- package/dist/src/config/config.js +93 -43
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/keyBindings.d.ts +66 -0
- package/dist/src/config/keyBindings.js +136 -0
- package/dist/src/config/keyBindings.js.map +1 -0
- package/dist/src/config/settings.d.ts +3 -59
- package/dist/src/config/settings.js +17 -1
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +587 -0
- package/dist/src/config/settingsSchema.js +565 -0
- package/dist/src/config/settingsSchema.js.map +1 -0
- package/dist/src/gemini.js +12 -109
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +1 -1
- package/dist/src/generated/git-commit.js +1 -1
- package/dist/src/nonInteractiveCli.js +0 -1
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/providers/logging/git-stats-service-impl.d.ts +19 -0
- package/dist/src/providers/logging/git-stats-service-impl.js +25 -0
- package/dist/src/providers/logging/git-stats-service-impl.js.map +1 -0
- package/dist/src/providers/logging/git-stats.d.ts +43 -0
- package/dist/src/providers/logging/git-stats.js +137 -0
- package/dist/src/providers/logging/git-stats.js.map +1 -0
- package/dist/src/providers/providerManagerInstance.d.ts +2 -0
- package/dist/src/providers/providerManagerInstance.js +49 -5
- package/dist/src/providers/providerManagerInstance.js.map +1 -1
- package/dist/src/services/BuiltinCommandLoader.js +4 -0
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/services/todo-continuation/todoContinuationService.d.ts +172 -0
- package/dist/src/services/todo-continuation/todoContinuationService.js +387 -0
- package/dist/src/services/todo-continuation/todoContinuationService.js.map +1 -0
- package/dist/src/services/todo-continuation/todoContinuationService.spec.d.ts +6 -0
- package/dist/src/services/todo-continuation/todoContinuationService.spec.js +385 -0
- package/dist/src/services/todo-continuation/todoContinuationService.spec.js.map +1 -0
- package/dist/src/ui/App.js +156 -35
- package/dist/src/ui/App.js.map +1 -1
- package/dist/src/ui/colors.d.ts +5 -0
- package/dist/src/ui/colors.js +51 -0
- package/dist/src/ui/colors.js.map +1 -1
- package/dist/src/ui/commands/authCommand.d.ts +11 -1
- package/dist/src/ui/commands/authCommand.js +145 -48
- package/dist/src/ui/commands/authCommand.js.map +1 -1
- package/dist/src/ui/commands/chatCommand.js +16 -0
- package/dist/src/ui/commands/chatCommand.js.map +1 -1
- package/dist/src/ui/commands/diagnosticsCommand.js +94 -10
- package/dist/src/ui/commands/diagnosticsCommand.js.map +1 -1
- package/dist/src/ui/commands/ideCommand.js +67 -31
- package/dist/src/ui/commands/ideCommand.js.map +1 -1
- package/dist/src/ui/commands/keyCommand.js +32 -2
- package/dist/src/ui/commands/keyCommand.js.map +1 -1
- package/dist/src/ui/commands/keyfileCommand.js +15 -12
- package/dist/src/ui/commands/keyfileCommand.js.map +1 -1
- package/dist/src/ui/commands/loggingCommand.d.ts +15 -0
- package/dist/src/ui/commands/loggingCommand.js +421 -0
- package/dist/src/ui/commands/loggingCommand.js.map +1 -0
- package/dist/src/ui/commands/modelCommand.js +21 -3
- package/dist/src/ui/commands/modelCommand.js.map +1 -1
- package/dist/src/ui/commands/privacyCommand.d.ts +3 -0
- package/dist/src/ui/commands/privacyCommand.js +6 -3
- package/dist/src/ui/commands/privacyCommand.js.map +1 -1
- package/dist/src/ui/commands/providerCommand.js +52 -14
- package/dist/src/ui/commands/providerCommand.js.map +1 -1
- package/dist/src/ui/commands/setCommand.js +17 -1
- package/dist/src/ui/commands/setCommand.js.map +1 -1
- package/dist/src/ui/commands/settingsCommand.d.ts +7 -0
- package/dist/src/ui/commands/settingsCommand.js +16 -0
- package/dist/src/ui/commands/settingsCommand.js.map +1 -0
- package/dist/src/ui/commands/setupGithubCommand.js +21 -2
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/toolformatCommand.js +79 -23
- package/dist/src/ui/commands/toolformatCommand.js.map +1 -1
- package/dist/src/ui/commands/types.d.ts +14 -2
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/components/AuthDialog.js +15 -54
- package/dist/src/ui/components/AuthDialog.js.map +1 -1
- package/dist/src/ui/components/AuthInProgress.js +3 -3
- package/dist/src/ui/components/AuthInProgress.js.map +1 -1
- package/dist/src/ui/components/ContextUsageDisplay.d.ts +10 -0
- package/dist/src/ui/components/ContextUsageDisplay.js +27 -0
- package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -0
- package/dist/src/ui/components/FolderTrustDialog.d.ts +16 -0
- package/dist/src/ui/components/FolderTrustDialog.js +38 -0
- package/dist/src/ui/components/FolderTrustDialog.js.map +1 -0
- package/dist/src/ui/components/Footer.js +132 -15
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.d.ts +1 -0
- package/dist/src/ui/components/InputPrompt.js +87 -31
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/LoggingDialog.d.ts +37 -0
- package/dist/src/ui/components/LoggingDialog.js +155 -0
- package/dist/src/ui/components/LoggingDialog.js.map +1 -0
- package/dist/src/ui/components/MemoryUsageDisplay.js +6 -4
- package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
- package/dist/src/ui/components/OAuthCodeDialog.d.ts +13 -0
- package/dist/src/ui/components/OAuthCodeDialog.js +54 -0
- package/dist/src/ui/components/OAuthCodeDialog.js.map +1 -0
- package/dist/src/ui/components/ProviderDialog.js +100 -26
- package/dist/src/ui/components/ProviderDialog.js.map +1 -1
- package/dist/src/ui/components/ProviderModelDialog.js +99 -27
- package/dist/src/ui/components/ProviderModelDialog.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +14 -0
- package/dist/src/ui/components/SettingsDialog.js +247 -0
- package/dist/src/ui/components/SettingsDialog.js.map +1 -0
- package/dist/src/ui/components/ThemeDialog.js +4 -15
- package/dist/src/ui/components/ThemeDialog.js.map +1 -1
- package/dist/src/ui/components/TodoPanel.js +93 -18
- package/dist/src/ui/components/TodoPanel.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +85 -7
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/contexts/SettingsContext.d.ts +9 -0
- package/dist/src/ui/contexts/SettingsContext.js +15 -0
- package/dist/src/ui/contexts/SettingsContext.js.map +1 -0
- package/dist/src/ui/hooks/atCommandProcessor.js +21 -0
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +6 -2
- package/dist/src/ui/hooks/slashCommandProcessor.js +142 -113
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion.js +1 -1
- package/dist/src/ui/hooks/useAuthCommand.js +48 -2
- package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
- package/dist/src/ui/hooks/useConsoleMessages.js +7 -0
- package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
- package/dist/src/ui/hooks/useFolderTrust.d.ts +11 -0
- package/dist/src/ui/hooks/useFolderTrust.js +22 -0
- package/dist/src/ui/hooks/useFolderTrust.js.map +1 -0
- package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +35 -10
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useResponsive.d.ts +14 -0
- package/dist/src/ui/hooks/useResponsive.js +19 -0
- package/dist/src/ui/hooks/useResponsive.js.map +1 -0
- package/dist/src/ui/hooks/useSettingsCommand.d.ts +10 -0
- package/dist/src/ui/hooks/useSettingsCommand.js +21 -0
- package/dist/src/ui/hooks/useSettingsCommand.js.map +1 -0
- package/dist/src/ui/hooks/useTodoContinuation.d.ts +31 -0
- package/dist/src/ui/hooks/useTodoContinuation.js +148 -0
- package/dist/src/ui/hooks/useTodoContinuation.js.map +1 -0
- package/dist/src/ui/hooks/useTodoContinuation.spec.d.ts +6 -0
- package/dist/src/ui/hooks/useTodoContinuation.spec.js +378 -0
- package/dist/src/ui/hooks/useTodoContinuation.spec.js.map +1 -0
- package/dist/src/ui/keyMatchers.d.ts +26 -0
- package/dist/src/ui/keyMatchers.js +68 -0
- package/dist/src/ui/keyMatchers.js.map +1 -0
- package/dist/src/ui/privacy/PrivacyNotice.js +10 -4
- package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -1
- package/dist/src/ui/reducers/appReducer.d.ts +3 -2
- package/dist/src/ui/reducers/appReducer.js +1 -0
- package/dist/src/ui/reducers/appReducer.js.map +1 -1
- package/dist/src/ui/themes/semantic-resolver.d.ts +12 -0
- package/dist/src/ui/themes/semantic-resolver.js +32 -0
- package/dist/src/ui/themes/semantic-resolver.js.map +1 -0
- package/dist/src/ui/themes/semantic-tokens.d.ts +52 -0
- package/dist/src/ui/themes/semantic-tokens.js +7 -0
- package/dist/src/ui/themes/semantic-tokens.js.map +1 -0
- package/dist/src/ui/themes/theme-compat.d.ts +34 -0
- package/dist/src/ui/themes/theme-compat.js +65 -0
- package/dist/src/ui/themes/theme-compat.js.map +1 -0
- package/dist/src/ui/themes/theme-manager.d.ts +8 -0
- package/dist/src/ui/themes/theme-manager.js +18 -0
- package/dist/src/ui/themes/theme-manager.js.map +1 -1
- package/dist/src/ui/utils/CodeColorizer.d.ts +2 -1
- package/dist/src/ui/utils/CodeColorizer.js +4 -3
- package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
- package/dist/src/ui/utils/MarkdownDisplay.js +4 -2
- package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.d.ts +1 -0
- package/dist/src/ui/utils/commandUtils.js +22 -1
- package/dist/src/ui/utils/commandUtils.js.map +1 -1
- package/dist/src/ui/utils/responsive.d.ts +16 -0
- package/dist/src/ui/utils/responsive.js +111 -0
- package/dist/src/ui/utils/responsive.js.map +1 -0
- package/dist/src/utils/cleanup.d.ts +2 -2
- package/dist/src/utils/cleanup.js +2 -2
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/dialogScopeUtils.d.ts +31 -0
- package/dist/src/utils/dialogScopeUtils.js +48 -0
- package/dist/src/utils/dialogScopeUtils.js.map +1 -0
- package/dist/src/utils/gitUtils.d.ts +9 -0
- package/dist/src/utils/gitUtils.js +17 -0
- package/dist/src/utils/gitUtils.js.map +1 -1
- package/dist/src/utils/privacy/ConversationDataRedactor.d.ts +75 -0
- package/dist/src/utils/privacy/ConversationDataRedactor.js +412 -0
- package/dist/src/utils/privacy/ConversationDataRedactor.js.map +1 -0
- package/dist/src/utils/privacy/PrivacyManager.d.ts +58 -0
- package/dist/src/utils/privacy/PrivacyManager.js +133 -0
- package/dist/src/utils/privacy/PrivacyManager.js.map +1 -0
- package/dist/src/utils/sandbox.js +10 -0
- package/dist/src/utils/sandbox.js.map +1 -1
- package/dist/src/utils/settingsUtils.d.ts +126 -0
- package/dist/src/utils/settingsUtils.js +327 -0
- package/dist/src/utils/settingsUtils.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -3
- package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +0 -12
- package/dist/src/ui/components/IDEContextDetailDisplay.js +0 -17
- package/dist/src/ui/components/IDEContextDetailDisplay.js.map +0 -1
@@ -0,0 +1,38 @@
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
2
|
+
/**
|
3
|
+
* @license
|
4
|
+
* Copyright 2025 Google LLC
|
5
|
+
* SPDX-License-Identifier: Apache-2.0
|
6
|
+
*/
|
7
|
+
import { Box, Text, useInput } from 'ink';
|
8
|
+
import { Colors } from '../colors.js';
|
9
|
+
import { RadioButtonSelect, } from './shared/RadioButtonSelect.js';
|
10
|
+
export var FolderTrustChoice;
|
11
|
+
(function (FolderTrustChoice) {
|
12
|
+
FolderTrustChoice["TRUST_FOLDER"] = "trust_folder";
|
13
|
+
FolderTrustChoice["TRUST_PARENT"] = "trust_parent";
|
14
|
+
FolderTrustChoice["DO_NOT_TRUST"] = "do_not_trust";
|
15
|
+
})(FolderTrustChoice || (FolderTrustChoice = {}));
|
16
|
+
export const FolderTrustDialog = ({ onSelect, }) => {
|
17
|
+
useInput((_, key) => {
|
18
|
+
if (key.escape) {
|
19
|
+
onSelect(FolderTrustChoice.DO_NOT_TRUST);
|
20
|
+
}
|
21
|
+
});
|
22
|
+
const options = [
|
23
|
+
{
|
24
|
+
label: 'Trust folder',
|
25
|
+
value: FolderTrustChoice.TRUST_FOLDER,
|
26
|
+
},
|
27
|
+
{
|
28
|
+
label: 'Trust parent folder',
|
29
|
+
value: FolderTrustChoice.TRUST_PARENT,
|
30
|
+
},
|
31
|
+
{
|
32
|
+
label: "Don't trust (esc)",
|
33
|
+
value: FolderTrustChoice.DO_NOT_TRUST,
|
34
|
+
},
|
35
|
+
];
|
36
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: Colors.AccentYellow, padding: 1, width: "100%", marginLeft: 1, children: [_jsxs(Box, { flexDirection: "column", marginBottom: 1, children: [_jsx(Text, { bold: true, children: "Do you trust this folder?" }), _jsx(Text, { children: "Trusting a folder allows Gemini to execute commands it suggests. This is a security feature to prevent accidental execution in untrusted directories." })] }), _jsx(RadioButtonSelect, { items: options, onSelect: onSelect, isFocused: true })] }));
|
37
|
+
};
|
38
|
+
//# sourceMappingURL=FolderTrustDialog.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"FolderTrustDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/FolderTrustDialog.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EACL,iBAAiB,GAElB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,CAAN,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,kDAA6B,CAAA;IAC7B,kDAA6B,CAAA;AAC/B,CAAC,EAJW,iBAAiB,KAAjB,iBAAiB,QAI5B;AAMD,MAAM,CAAC,MAAM,iBAAiB,GAAqC,CAAC,EAClE,QAAQ,GACT,EAAE,EAAE;IACH,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAClB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,QAAQ,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,GAA8C;QACzD;YACE,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,iBAAiB,CAAC,YAAY;SACtC;QACD;YACE,KAAK,EAAE,qBAAqB;YAC5B,KAAK,EAAE,iBAAiB,CAAC,YAAY;SACtC;QACD;YACE,KAAK,EAAE,mBAAmB;YAC1B,KAAK,EAAE,iBAAiB,CAAC,YAAY;SACtC;KACF,CAAC;IAEF,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,MAAM,CAAC,YAAY,EAChC,OAAO,EAAE,CAAC,EACV,KAAK,EAAC,MAAM,EACZ,UAAU,EAAE,CAAC,aAEb,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,KAAC,IAAI,IAAC,IAAI,gDAAiC,EAC3C,KAAC,IAAI,wKAIE,IACH,EAEN,KAAC,iBAAiB,IAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,SAAG,IAC/D,CACP,CAAC;AACJ,CAAC,CAAC"}
|
@@ -1,26 +1,143 @@
|
|
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
|
+
/**
|
3
|
+
* @license
|
4
|
+
* Copyright 2025 Google LLC
|
5
|
+
* SPDX-License-Identifier: Apache-2.0
|
6
|
+
*/
|
7
|
+
import { useEffect, useState } from 'react';
|
2
8
|
import { Box, Text } from 'ink';
|
3
|
-
import { Colors } from '../colors.js';
|
9
|
+
import { Colors, SemanticColors } from '../colors.js';
|
4
10
|
import { shortenPath, tildeifyPath, tokenLimit, } from '@vybestack/llxprt-code-core';
|
5
11
|
import { ConsoleSummaryDisplay } from './ConsoleSummaryDisplay.js';
|
6
12
|
import process from 'node:process';
|
7
13
|
import Gradient from 'ink-gradient';
|
8
|
-
import { MemoryUsageDisplay } from './MemoryUsageDisplay.js';
|
9
14
|
import { getProviderManager } from '../../providers/providerManagerInstance.js';
|
10
15
|
import { DebugProfiler } from './DebugProfiler.js';
|
11
|
-
|
16
|
+
import { useResponsive } from '../hooks/useResponsive.js';
|
17
|
+
import { truncateMiddle } from '../utils/responsive.js';
|
18
|
+
// Responsive Memory Usage Display
|
19
|
+
const ResponsiveMemoryDisplay = ({ compact, detailed }) => {
|
20
|
+
// Initialize with immediate value to avoid empty render in tests
|
21
|
+
const initialUsage = process.memoryUsage().rss;
|
22
|
+
const initialPercentage = Math.round((initialUsage / (4.8 * 1024 * 1024 * 1024)) * 100);
|
23
|
+
let initialText;
|
24
|
+
if (detailed) {
|
25
|
+
const usageGB = (initialUsage / (1024 * 1024 * 1024)).toFixed(1);
|
26
|
+
initialText = `Memory: ${initialPercentage}% (${usageGB}GB/4.8GB)`;
|
27
|
+
}
|
28
|
+
else if (compact) {
|
29
|
+
initialText = `Mem: ${initialPercentage}%`;
|
30
|
+
}
|
31
|
+
else {
|
32
|
+
initialText = `Memory: ${initialPercentage}%`;
|
33
|
+
}
|
34
|
+
const [memoryUsage, setMemoryUsage] = useState(initialText);
|
35
|
+
const [memoryUsageColor, setMemoryUsageColor] = useState(initialUsage >= 2 * 1024 * 1024 * 1024
|
36
|
+
? SemanticColors.status.error
|
37
|
+
: SemanticColors.text.secondary);
|
38
|
+
useEffect(() => {
|
39
|
+
const updateMemory = () => {
|
40
|
+
const usage = process.memoryUsage().rss;
|
41
|
+
const totalMemory = 4.8 * 1024 * 1024 * 1024; // 4.8GB total
|
42
|
+
const percentage = Math.round((usage / totalMemory) * 100);
|
43
|
+
if (detailed) {
|
44
|
+
const usageGB = (usage / (1024 * 1024 * 1024)).toFixed(1);
|
45
|
+
const totalGB = (totalMemory / (1024 * 1024 * 1024)).toFixed(1);
|
46
|
+
setMemoryUsage(`Memory: ${percentage}% (${usageGB}GB/${totalGB}GB)`);
|
47
|
+
}
|
48
|
+
else if (compact) {
|
49
|
+
setMemoryUsage(`Mem: ${percentage}%`);
|
50
|
+
}
|
51
|
+
else {
|
52
|
+
setMemoryUsage(`Memory: ${percentage}%`);
|
53
|
+
}
|
54
|
+
setMemoryUsageColor(usage >= 2 * 1024 * 1024 * 1024
|
55
|
+
? SemanticColors.status.error
|
56
|
+
: SemanticColors.text.secondary);
|
57
|
+
};
|
58
|
+
const intervalId = setInterval(updateMemory, 2000);
|
59
|
+
// Don't call updateMemory immediately since we have initial value
|
60
|
+
return () => clearInterval(intervalId);
|
61
|
+
}, [compact, detailed]);
|
62
|
+
return _jsx(Text, { color: memoryUsageColor, children: memoryUsage });
|
63
|
+
};
|
64
|
+
// Responsive Context Usage Display
|
65
|
+
const ResponsiveContextDisplay = ({ promptTokenCount, model, contextLimit, compact, detailed }) => {
|
12
66
|
const limit = tokenLimit(model, contextLimit);
|
13
67
|
const percentage = promptTokenCount / limit;
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
68
|
+
const remainingPercentage = (1 - percentage) * 100;
|
69
|
+
// Use semantic colors based on how much context is left
|
70
|
+
let color;
|
71
|
+
if (remainingPercentage < 10) {
|
72
|
+
color = SemanticColors.status.error;
|
73
|
+
}
|
74
|
+
else if (remainingPercentage < 25) {
|
75
|
+
color = SemanticColors.status.warning;
|
76
|
+
}
|
77
|
+
else {
|
78
|
+
color = SemanticColors.text.secondary;
|
79
|
+
}
|
80
|
+
let displayText;
|
81
|
+
if (detailed) {
|
82
|
+
displayText = `Context: ${promptTokenCount.toLocaleString()}/${limit.toLocaleString()} tokens`;
|
83
|
+
}
|
84
|
+
else if (compact) {
|
85
|
+
displayText = `Ctx: ${(promptTokenCount / 1000).toFixed(1)}k/${(limit / 1000).toFixed(0)}k`;
|
86
|
+
}
|
87
|
+
else {
|
88
|
+
displayText = `Context: ${(promptTokenCount / 1000).toFixed(1)}k/${(limit / 1000).toFixed(0)}k`;
|
89
|
+
}
|
90
|
+
return _jsx(Text, { color: color, children: displayText });
|
91
|
+
};
|
92
|
+
// Responsive Timestamp Display
|
93
|
+
const ResponsiveTimestamp = () => {
|
94
|
+
// Initialize with immediate value to avoid empty render in tests
|
95
|
+
const initialTime = new Date().toTimeString().slice(0, 8); // HH:MM:SS
|
96
|
+
const [time, setTime] = useState(initialTime);
|
97
|
+
useEffect(() => {
|
98
|
+
const updateTime = () => {
|
99
|
+
const now = new Date();
|
100
|
+
setTime(now.toTimeString().slice(0, 8)); // HH:MM:SS
|
101
|
+
};
|
102
|
+
const intervalId = setInterval(updateTime, 1000);
|
103
|
+
// Don't call updateTime immediately since we have initial value
|
104
|
+
return () => clearInterval(intervalId);
|
105
|
+
}, []);
|
106
|
+
return _jsx(Text, { color: SemanticColors.text.secondary, children: time });
|
107
|
+
};
|
108
|
+
export const Footer = ({ model, targetDir, branchName, debugMode, debugMessage, errorCount, showErrorDetails, showMemoryUsage, promptTokenCount, isPaidMode, nightly, vimMode, contextLimit, }) => {
|
109
|
+
const { breakpoint } = useResponsive();
|
110
|
+
// Define what to show at each breakpoint
|
111
|
+
const showTimestamp = breakpoint === 'WIDE';
|
112
|
+
const showModelName = breakpoint !== 'NARROW';
|
113
|
+
const isCompact = breakpoint === 'NARROW';
|
114
|
+
const isDetailed = breakpoint === 'WIDE';
|
115
|
+
// Calculate max length for branch truncation based on breakpoint
|
116
|
+
let maxBranchLength;
|
117
|
+
if (isCompact) {
|
118
|
+
maxBranchLength = 15;
|
119
|
+
}
|
120
|
+
else if (breakpoint === 'STANDARD') {
|
121
|
+
maxBranchLength = 35;
|
122
|
+
}
|
123
|
+
else {
|
124
|
+
maxBranchLength = 100; // Don't truncate at wide width
|
125
|
+
}
|
126
|
+
return (_jsxs(Box, { flexDirection: "column", width: "100%", children: [_jsxs(Box, { justifyContent: "space-between", width: "100%", alignItems: "center", children: [_jsxs(Box, { flexDirection: "row", alignItems: "center", children: [branchName && (_jsx(_Fragment, { children: nightly ? (_jsx(Gradient, { colors: Colors.GradientColors, children: _jsxs(Text, { children: ["(", branchName.length > maxBranchLength
|
127
|
+
? truncateMiddle(branchName, maxBranchLength)
|
128
|
+
: branchName, "*)"] }) })) : (_jsxs(Text, { color: SemanticColors.text.accent, children: ["(", branchName.length > maxBranchLength
|
129
|
+
? truncateMiddle(branchName, maxBranchLength)
|
130
|
+
: branchName, "*)"] })) })), debugMode && (_jsxs(_Fragment, { children: [_jsx(DebugProfiler, {}), _jsx(Text, { color: SemanticColors.status.error, children: ' ' + (debugMessage || '--debug') })] })), vimMode && (_jsxs(Text, { color: SemanticColors.text.secondary, children: ["[", vimMode, "] "] }))] }), _jsxs(Box, { flexDirection: "row", alignItems: "center", children: [showMemoryUsage && (_jsxs(_Fragment, { children: [_jsx(ResponsiveMemoryDisplay, { compact: isCompact, detailed: isDetailed }), _jsx(Text, { color: SemanticColors.text.secondary, children: " | " })] })), _jsx(ResponsiveContextDisplay, { promptTokenCount: promptTokenCount, model: model, contextLimit: contextLimit, compact: isCompact, detailed: isDetailed }), showTimestamp && (_jsxs(_Fragment, { children: [_jsx(Text, { color: SemanticColors.text.secondary, children: " | " }), _jsx(ResponsiveTimestamp, {})] }))] })] }), _jsxs(Box, { justifyContent: "space-between", width: "100%", alignItems: "center", children: [_jsxs(Box, { flexDirection: "row", alignItems: "center", children: [nightly ? (_jsx(Gradient, { colors: Colors.GradientColors, children: _jsx(Text, { children: shortenPath(tildeifyPath(targetDir), isCompact ? 30 : 70) }) })) : (_jsx(Text, { color: SemanticColors.text.secondary, children: shortenPath(tildeifyPath(targetDir), isCompact ? 30 : 70) })), !isCompact && (_jsx(Box, { marginLeft: 2, children: process.env.SANDBOX && process.env.SANDBOX !== 'sandbox-exec' ? (_jsxs(Text, { color: SemanticColors.status.success, children: ["[", process.env.SANDBOX.replace(/^gemini-(?:cli-)?/, ''), "]"] })) : process.env.SANDBOX === 'sandbox-exec' ? (_jsxs(Text, { color: SemanticColors.status.warning, children: ["[macOS Seatbelt", ' ', _jsxs(Text, { color: SemanticColors.text.secondary, children: ["(", process.env.SEATBELT_PROFILE, ")"] }), "]"] })) : (_jsxs(Text, { color: SemanticColors.status.error, children: ["[no sandbox", ' ', _jsx(Text, { color: SemanticColors.text.secondary, children: "(see /docs)" }), "]"] })) }))] }), _jsxs(Box, { flexDirection: "row", alignItems: "center", children: [showModelName && (_jsx(Text, { color: SemanticColors.text.accent, children: model })), isPaidMode !== undefined &&
|
131
|
+
(() => {
|
132
|
+
const providerManager = getProviderManager();
|
133
|
+
const activeProvider = providerManager?.getActiveProvider?.();
|
134
|
+
const isGeminiProvider = activeProvider?.name === 'gemini';
|
135
|
+
if (isGeminiProvider) {
|
136
|
+
return (_jsxs(_Fragment, { children: [showModelName && (_jsx(Text, { color: SemanticColors.text.secondary, children: " | " })), _jsx(Text, { color: isPaidMode
|
137
|
+
? SemanticColors.status.warning
|
138
|
+
: SemanticColors.status.success, children: isPaidMode ? 'paid mode' : 'free mode' })] }));
|
139
|
+
}
|
140
|
+
return null;
|
141
|
+
})(), !showErrorDetails && errorCount > 0 && (_jsxs(_Fragment, { children: [_jsx(Text, { color: SemanticColors.text.secondary, children: " | " }), _jsx(ConsoleSummaryDisplay, { errorCount: errorCount })] }))] })] })] }));
|
25
142
|
};
|
26
143
|
//# sourceMappingURL=Footer.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../src/ui/components/Footer.tsx"],"names":[],"mappings":";
|
1
|
+
{"version":3,"file":"Footer.js","sourceRoot":"","sources":["../../../../src/ui/components/Footer.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EACL,WAAW,EACX,YAAY,EACZ,UAAU,GACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,QAAQ,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAkBxD,kCAAkC;AAClC,MAAM,uBAAuB,GAGxB,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7B,iEAAiE;IACjE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;IAC/C,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAClC,CAAC,YAAY,GAAG,CAAC,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,CAClD,CAAC;IAEF,IAAI,WAAmB,CAAC;IACxB,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,CAAC,YAAY,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE,WAAW,GAAG,WAAW,iBAAiB,MAAM,OAAO,WAAW,CAAC;IACrE,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,WAAW,GAAG,QAAQ,iBAAiB,GAAG,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,WAAW,iBAAiB,GAAG,CAAC;IAChD,CAAC;IAED,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAS,WAAW,CAAC,CAAC;IACpE,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,YAAY,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;QACpC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK;QAC7B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAClC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC;YACxC,MAAM,WAAW,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,cAAc;YAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;YAE3D,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,CAAC,KAAK,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1D,MAAM,OAAO,GAAG,CAAC,WAAW,GAAG,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAChE,cAAc,CAAC,WAAW,UAAU,MAAM,OAAO,MAAM,OAAO,KAAK,CAAC,CAAC;YACvE,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,cAAc,CAAC,QAAQ,UAAU,GAAG,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,WAAW,UAAU,GAAG,CAAC,CAAC;YAC3C,CAAC;YAED,mBAAmB,CACjB,KAAK,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI;gBAC7B,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK;gBAC7B,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAClC,CAAC;QACJ,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACnD,kEAAkE;QAClE,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IAExB,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,gBAAgB,YAAG,WAAW,GAAQ,CAAC;AAC7D,CAAC,CAAC;AAEF,mCAAmC;AACnC,MAAM,wBAAwB,GAMzB,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE;IACpE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,gBAAgB,GAAG,KAAK,CAAC;IAC5C,MAAM,mBAAmB,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,GAAG,CAAC;IAEnD,wDAAwD;IACxD,IAAI,KAAa,CAAC;IAClB,IAAI,mBAAmB,GAAG,EAAE,EAAE,CAAC;QAC7B,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC;IACtC,CAAC;SAAM,IAAI,mBAAmB,GAAG,EAAE,EAAE,CAAC;QACpC,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC;IACxC,CAAC;IAED,IAAI,WAAmB,CAAC;IACxB,IAAI,QAAQ,EAAE,CAAC;QACb,WAAW,GAAG,YAAY,gBAAgB,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,cAAc,EAAE,SAAS,CAAC;IACjG,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,WAAW,GAAG,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC9F,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,YAAY,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAClG,CAAC;IAED,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,YAAG,WAAW,GAAQ,CAAC;AAClD,CAAC,CAAC;AAEF,+BAA+B;AAC/B,MAAM,mBAAmB,GAAa,GAAG,EAAE;IACzC,iEAAiE;IACjE,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;IACtE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAS,WAAW,CAAC,CAAC;IAEtD,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,UAAU,GAAG,GAAG,EAAE;YACtB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW;QACtD,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACjD,gEAAgE;QAChE,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,YAAG,IAAI,GAAQ,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAC5C,KAAK,EACL,SAAS,EACT,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,OAAO,EACP,YAAY,GACb,EAAE,EAAE;IACH,MAAM,EAAE,UAAU,EAAE,GAAG,aAAa,EAAE,CAAC;IAEvC,yCAAyC;IACzC,MAAM,aAAa,GAAG,UAAU,KAAK,MAAM,CAAC;IAC5C,MAAM,aAAa,GAAG,UAAU,KAAK,QAAQ,CAAC;IAC9C,MAAM,SAAS,GAAG,UAAU,KAAK,QAAQ,CAAC;IAC1C,MAAM,UAAU,GAAG,UAAU,KAAK,MAAM,CAAC;IAEzC,iEAAiE;IACjE,IAAI,eAAuB,CAAC;IAC5B,IAAI,SAAS,EAAE,CAAC;QACd,eAAe,GAAG,EAAE,CAAC;IACvB,CAAC;SAAM,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;QACrC,eAAe,GAAG,EAAE,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,eAAe,GAAG,GAAG,CAAC,CAAC,+BAA+B;IACxD,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAC,MAAM,aAEtC,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,EAAC,KAAK,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,aAElE,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,aACzC,UAAU,IAAI,CACb,4BACG,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,QAAQ,IAAC,MAAM,EAAE,MAAM,CAAC,cAAc,YACrC,MAAC,IAAI,oBAEF,UAAU,CAAC,MAAM,GAAG,eAAe;gDAClC,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC;gDAC7C,CAAC,CAAC,UAAU,UAET,GACE,CACZ,CAAC,CAAC,CAAC,CACF,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,kBAEpC,UAAU,CAAC,MAAM,GAAG,eAAe;4CAClC,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,eAAe,CAAC;4CAC7C,CAAC,CAAC,UAAU,UAET,CACR,GACA,CACJ,EACA,SAAS,IAAI,CACZ,8BACE,KAAC,aAAa,KAAG,EACjB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,YACrC,GAAG,GAAG,CAAC,YAAY,IAAI,SAAS,CAAC,GAC7B,IACN,CACJ,EACA,OAAO,IAAI,CACV,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,kBAAI,OAAO,UAAU,CAChE,IACG,EAGN,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,aACzC,eAAe,IAAI,CAClB,8BACE,KAAC,uBAAuB,IACtB,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,UAAU,GACpB,EACF,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oBAAY,IACrD,CACJ,EAED,KAAC,wBAAwB,IACvB,gBAAgB,EAAE,gBAAgB,EAClC,KAAK,EAAE,KAAK,EACZ,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,UAAU,GACpB,EAGD,aAAa,IAAI,CAChB,8BACE,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oBAAY,EACtD,KAAC,mBAAmB,KAAG,IACtB,CACJ,IACG,IACF,EAGN,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,EAAC,KAAK,EAAC,MAAM,EAAC,UAAU,EAAC,QAAQ,aAElE,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,aACzC,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,QAAQ,IAAC,MAAM,EAAE,MAAM,CAAC,cAAc,YACrC,KAAC,IAAI,cACF,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACrD,GACE,CACZ,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,YACvC,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACrD,CACR,EAGA,CAAC,SAAS,IAAI,CACb,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YACf,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,cAAc,CAAC,CAAC,CAAC,CAC/D,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,kBACtC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,SACjD,CACR,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,cAAc,CAAC,CAAC,CAAC,CAC3C,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,OAAO,gCACxB,GAAG,EACnB,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,kBACtC,OAAO,CAAC,GAAG,CAAC,gBAAgB,SACzB,SAEF,CACR,CAAC,CAAC,CAAC,CACF,MAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,MAAM,CAAC,KAAK,4BAC1B,GAAG,EACf,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,4BAAoB,SAEzD,CACR,GACG,CACP,IACG,EAGN,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,aAEzC,aAAa,IAAI,CAChB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,MAAM,YAAG,KAAK,GAAQ,CACxD,EAGA,UAAU,KAAK,SAAS;gCACvB,CAAC,GAAG,EAAE;oCACJ,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;oCAC7C,MAAM,cAAc,GAAG,eAAe,EAAE,iBAAiB,EAAE,EAAE,CAAC;oCAC9D,MAAM,gBAAgB,GAAG,cAAc,EAAE,IAAI,KAAK,QAAQ,CAAC;oCAE3D,IAAI,gBAAgB,EAAE,CAAC;wCACrB,OAAO,CACL,8BACG,aAAa,IAAI,CAChB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oBAAY,CACvD,EACD,KAAC,IAAI,IACH,KAAK,EACH,UAAU;wDACR,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO;wDAC/B,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,YAGlC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,GAClC,IACN,CACJ,CAAC;oCACJ,CAAC;oCACD,OAAO,IAAI,CAAC;gCACd,CAAC,CAAC,EAAE,EAGL,CAAC,gBAAgB,IAAI,UAAU,GAAG,CAAC,IAAI,CACtC,8BACE,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,CAAC,IAAI,CAAC,SAAS,oBAAY,EACtD,KAAC,qBAAqB,IAAC,UAAU,EAAE,UAAU,GAAI,IAChD,CACJ,IACG,IACF,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
|
@@ -22,6 +22,7 @@ export interface InputPromptProps {
|
|
22
22
|
suggestionsWidth: number;
|
23
23
|
shellModeActive: boolean;
|
24
24
|
setShellModeActive: (value: boolean) => void;
|
25
|
+
onEscapePromptChange?: (showPrompt: boolean) => void;
|
25
26
|
vimHandleInput?: (key: Key) => boolean;
|
26
27
|
}
|
27
28
|
export declare const InputPrompt: React.FC<InputPromptProps>;
|
@@ -4,7 +4,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
|
|
4
4
|
* Copyright 2025 Google LLC
|
5
5
|
* SPDX-License-Identifier: Apache-2.0
|
6
6
|
*/
|
7
|
-
import { useCallback, useEffect, useState, useMemo } from 'react';
|
7
|
+
import { useCallback, useEffect, useState, useMemo, useRef, } from 'react';
|
8
8
|
import { Box, Text } from 'ink';
|
9
9
|
import { Colors } from '../colors.js';
|
10
10
|
import { SuggestionsDisplay } from './SuggestionsDisplay.js';
|
@@ -17,12 +17,16 @@ import { useShellHistory } from '../hooks/useShellHistory.js';
|
|
17
17
|
import { useReverseSearchCompletion } from '../hooks/useReverseSearchCompletion.js';
|
18
18
|
import { useSlashCompletion } from '../hooks/useSlashCompletion.js';
|
19
19
|
import { useKeypress } from '../hooks/useKeypress.js';
|
20
|
+
import { keyMatchers, Command } from '../keyMatchers.js';
|
20
21
|
import { clipboardHasImage, saveClipboardImage, cleanupOldClipboardImages, } from '../utils/clipboardUtils.js';
|
21
22
|
import * as path from 'path';
|
22
23
|
import { secureInputHandler } from '../utils/secureInputHandler.js';
|
23
|
-
export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, config, slashCommands, commandContext, placeholder = ' Type your message or @path/to/file', focus = true, inputWidth, suggestionsWidth, shellModeActive, setShellModeActive, vimHandleInput, }) => {
|
24
|
+
export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, config, slashCommands, commandContext, placeholder = ' Type your message or @path/to/file', focus = true, inputWidth, suggestionsWidth, shellModeActive, setShellModeActive, onEscapePromptChange, vimHandleInput, }) => {
|
24
25
|
const [justNavigatedHistory, setJustNavigatedHistory] = useState(false);
|
25
26
|
const [pasteMessage, setPasteMessage] = useState(null);
|
27
|
+
const [escPressCount, setEscPressCount] = useState(0);
|
28
|
+
const [showEscapePrompt, setShowEscapePrompt] = useState(false);
|
29
|
+
const escapeTimerRef = useRef(null);
|
26
30
|
const [dirs, setDirs] = useState(config.getWorkspaceContext().getDirectories());
|
27
31
|
const dirsChanged = config.getWorkspaceContext().getDirectories();
|
28
32
|
useEffect(() => {
|
@@ -41,6 +45,26 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
41
45
|
const reverseSearchCompletion = useReverseSearchCompletion(buffer, historyData, reverseSearchActive);
|
42
46
|
const resetCompletionState = completion.resetCompletionState;
|
43
47
|
const resetReverseSearchCompletionState = reverseSearchCompletion.resetCompletionState;
|
48
|
+
const resetEscapeState = useCallback(() => {
|
49
|
+
if (escapeTimerRef.current) {
|
50
|
+
clearTimeout(escapeTimerRef.current);
|
51
|
+
escapeTimerRef.current = null;
|
52
|
+
}
|
53
|
+
setEscPressCount(0);
|
54
|
+
setShowEscapePrompt(false);
|
55
|
+
}, []);
|
56
|
+
// Notify parent component about escape prompt state changes
|
57
|
+
useEffect(() => {
|
58
|
+
if (onEscapePromptChange) {
|
59
|
+
onEscapePromptChange(showEscapePrompt);
|
60
|
+
}
|
61
|
+
}, [showEscapePrompt, onEscapePromptChange]);
|
62
|
+
// Clear escape prompt timer on unmount
|
63
|
+
useEffect(() => () => {
|
64
|
+
if (escapeTimerRef.current) {
|
65
|
+
clearTimeout(escapeTimerRef.current);
|
66
|
+
}
|
67
|
+
}, []);
|
44
68
|
const handleSubmitAndClear = useCallback((submittedValue) => {
|
45
69
|
// Get the actual value if in secure mode
|
46
70
|
const actualValue = secureInputHandler.isInSecureMode()
|
@@ -146,6 +170,12 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
146
170
|
if (vimHandleInput && vimHandleInput(key)) {
|
147
171
|
return;
|
148
172
|
}
|
173
|
+
// Reset ESC count and hide prompt on any non-ESC key
|
174
|
+
if (key.name !== 'escape') {
|
175
|
+
if (escPressCount > 0 || showEscapePrompt) {
|
176
|
+
resetEscapeState();
|
177
|
+
}
|
178
|
+
}
|
149
179
|
if (key.sequence === '!' &&
|
150
180
|
buffer.text === '' &&
|
151
181
|
!completion.showSuggestions) {
|
@@ -153,7 +183,7 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
153
183
|
buffer.setText(''); // Clear the '!' from input
|
154
184
|
return;
|
155
185
|
}
|
156
|
-
if (key
|
186
|
+
if (keyMatchers[Command.ESCAPE](key)) {
|
157
187
|
if (reverseSearchActive) {
|
158
188
|
setReverseSearchActive(false);
|
159
189
|
reverseSearchCompletion.resetCompletionState();
|
@@ -164,42 +194,65 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
164
194
|
}
|
165
195
|
if (shellModeActive) {
|
166
196
|
setShellModeActive(false);
|
197
|
+
resetEscapeState();
|
167
198
|
return;
|
168
199
|
}
|
169
200
|
if (completion.showSuggestions) {
|
170
201
|
completion.resetCompletionState();
|
202
|
+
resetEscapeState();
|
171
203
|
return;
|
172
204
|
}
|
205
|
+
// Handle double ESC for clearing input
|
206
|
+
if (escPressCount === 0) {
|
207
|
+
if (buffer.text === '') {
|
208
|
+
return;
|
209
|
+
}
|
210
|
+
setEscPressCount(1);
|
211
|
+
setShowEscapePrompt(true);
|
212
|
+
if (escapeTimerRef.current) {
|
213
|
+
clearTimeout(escapeTimerRef.current);
|
214
|
+
}
|
215
|
+
escapeTimerRef.current = setTimeout(() => {
|
216
|
+
resetEscapeState();
|
217
|
+
}, 500);
|
218
|
+
}
|
219
|
+
else {
|
220
|
+
// clear input and immediately reset state
|
221
|
+
buffer.setText('');
|
222
|
+
resetCompletionState();
|
223
|
+
resetEscapeState();
|
224
|
+
}
|
225
|
+
return;
|
173
226
|
}
|
174
|
-
if (shellModeActive &&
|
227
|
+
if (shellModeActive && keyMatchers[Command.REVERSE_SEARCH](key)) {
|
175
228
|
setReverseSearchActive(true);
|
176
229
|
setTextBeforeReverseSearch(buffer.text);
|
177
230
|
setCursorPosition(buffer.cursor);
|
178
231
|
return;
|
179
232
|
}
|
180
|
-
if (
|
233
|
+
if (keyMatchers[Command.CLEAR_SCREEN](key)) {
|
181
234
|
onClearScreen();
|
182
235
|
return;
|
183
236
|
}
|
184
237
|
if (reverseSearchActive) {
|
185
238
|
const { activeSuggestionIndex, navigateUp, navigateDown, showSuggestions, suggestions, } = reverseSearchCompletion;
|
186
239
|
if (showSuggestions) {
|
187
|
-
if (key
|
240
|
+
if (keyMatchers[Command.NAVIGATION_UP](key)) {
|
188
241
|
navigateUp();
|
189
242
|
return;
|
190
243
|
}
|
191
|
-
if (key
|
244
|
+
if (keyMatchers[Command.NAVIGATION_DOWN](key)) {
|
192
245
|
navigateDown();
|
193
246
|
return;
|
194
247
|
}
|
195
|
-
if (key
|
248
|
+
if (keyMatchers[Command.ACCEPT_SUGGESTION_REVERSE_SEARCH](key)) {
|
196
249
|
reverseSearchCompletion.handleAutocomplete(activeSuggestionIndex);
|
197
250
|
reverseSearchCompletion.resetCompletionState();
|
198
251
|
setReverseSearchActive(false);
|
199
252
|
return;
|
200
253
|
}
|
201
254
|
}
|
202
|
-
if (
|
255
|
+
if (keyMatchers[Command.SUBMIT_REVERSE_SEARCH](key)) {
|
203
256
|
const textToSubmit = showSuggestions && activeSuggestionIndex > -1
|
204
257
|
? suggestions[activeSuggestionIndex].value
|
205
258
|
: buffer.text;
|
@@ -209,27 +262,28 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
209
262
|
return;
|
210
263
|
}
|
211
264
|
// Prevent up/down from falling through to regular history navigation
|
212
|
-
if (
|
265
|
+
if (keyMatchers[Command.NAVIGATION_UP](key) ||
|
266
|
+
keyMatchers[Command.NAVIGATION_DOWN](key)) {
|
213
267
|
return;
|
214
268
|
}
|
215
269
|
}
|
216
270
|
// If the command is a perfect match, pressing enter should execute it.
|
217
|
-
if (completion.isPerfectMatch && key
|
271
|
+
if (completion.isPerfectMatch && keyMatchers[Command.RETURN](key)) {
|
218
272
|
handleSubmitAndClear(buffer.text);
|
219
273
|
return;
|
220
274
|
}
|
221
275
|
if (completion.showSuggestions) {
|
222
276
|
if (completion.suggestions.length > 1) {
|
223
|
-
if (
|
277
|
+
if (keyMatchers[Command.COMPLETION_UP](key)) {
|
224
278
|
completion.navigateUp();
|
225
279
|
return;
|
226
280
|
}
|
227
|
-
if (
|
281
|
+
if (keyMatchers[Command.COMPLETION_DOWN](key)) {
|
228
282
|
completion.navigateDown();
|
229
283
|
return;
|
230
284
|
}
|
231
285
|
}
|
232
|
-
if (
|
286
|
+
if (keyMatchers[Command.ACCEPT_SUGGESTION](key)) {
|
233
287
|
if (completion.suggestions.length > 0) {
|
234
288
|
const targetIndex = completion.activeSuggestionIndex === -1
|
235
289
|
? 0 // Default to the first if none is active
|
@@ -242,22 +296,22 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
242
296
|
}
|
243
297
|
}
|
244
298
|
if (!shellModeActive) {
|
245
|
-
if (
|
299
|
+
if (keyMatchers[Command.HISTORY_UP](key)) {
|
246
300
|
inputHistory.navigateUp();
|
247
301
|
return;
|
248
302
|
}
|
249
|
-
if (
|
303
|
+
if (keyMatchers[Command.HISTORY_DOWN](key)) {
|
250
304
|
inputHistory.navigateDown();
|
251
305
|
return;
|
252
306
|
}
|
253
307
|
// Handle arrow-up/down for history on single-line or at edges
|
254
|
-
if (key
|
308
|
+
if (keyMatchers[Command.NAVIGATION_UP](key) &&
|
255
309
|
(buffer.allVisualLines.length === 1 ||
|
256
310
|
(buffer.visualCursor[0] === 0 && buffer.visualScrollRow === 0))) {
|
257
311
|
inputHistory.navigateUp();
|
258
312
|
return;
|
259
313
|
}
|
260
|
-
if (key
|
314
|
+
if (keyMatchers[Command.NAVIGATION_DOWN](key) &&
|
261
315
|
(buffer.allVisualLines.length === 1 ||
|
262
316
|
buffer.visualCursor[0] === buffer.allVisualLines.length - 1)) {
|
263
317
|
inputHistory.navigateDown();
|
@@ -265,20 +319,21 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
265
319
|
}
|
266
320
|
}
|
267
321
|
else {
|
268
|
-
|
322
|
+
// Shell History Navigation
|
323
|
+
if (keyMatchers[Command.NAVIGATION_UP](key)) {
|
269
324
|
const prevCommand = shellHistory.getPreviousCommand();
|
270
325
|
if (prevCommand !== null)
|
271
326
|
buffer.setText(prevCommand);
|
272
327
|
return;
|
273
328
|
}
|
274
|
-
if (key
|
329
|
+
if (keyMatchers[Command.NAVIGATION_DOWN](key)) {
|
275
330
|
const nextCommand = shellHistory.getNextCommand();
|
276
331
|
if (nextCommand !== null)
|
277
332
|
buffer.setText(nextCommand);
|
278
333
|
return;
|
279
334
|
}
|
280
335
|
}
|
281
|
-
if (
|
336
|
+
if (keyMatchers[Command.SUBMIT](key)) {
|
282
337
|
if (buffer.text.trim()) {
|
283
338
|
const [row, col] = buffer.cursor;
|
284
339
|
const line = buffer.lines[row];
|
@@ -294,47 +349,45 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
294
349
|
return;
|
295
350
|
}
|
296
351
|
// Newline insertion
|
297
|
-
if (
|
352
|
+
if (keyMatchers[Command.NEWLINE](key)) {
|
298
353
|
buffer.newline();
|
299
354
|
return;
|
300
355
|
}
|
301
356
|
// Ctrl+A (Home) / Ctrl+E (End)
|
302
|
-
if (
|
357
|
+
if (keyMatchers[Command.HOME](key)) {
|
303
358
|
buffer.move('home');
|
304
359
|
return;
|
305
360
|
}
|
306
|
-
if (
|
361
|
+
if (keyMatchers[Command.END](key)) {
|
307
362
|
buffer.move('end');
|
308
363
|
buffer.moveToOffset(cpLen(buffer.text));
|
309
364
|
return;
|
310
365
|
}
|
311
366
|
// Ctrl+C (Clear input)
|
312
|
-
if (
|
367
|
+
if (keyMatchers[Command.CLEAR_INPUT](key)) {
|
313
368
|
if (buffer.text.length > 0) {
|
314
369
|
buffer.setText('');
|
315
370
|
resetCompletionState();
|
316
371
|
secureInputHandler.reset();
|
317
|
-
return;
|
318
372
|
}
|
319
373
|
return;
|
320
374
|
}
|
321
375
|
// Kill line commands
|
322
|
-
if (
|
376
|
+
if (keyMatchers[Command.KILL_LINE_RIGHT](key)) {
|
323
377
|
buffer.killLineRight();
|
324
378
|
return;
|
325
379
|
}
|
326
|
-
if (
|
380
|
+
if (keyMatchers[Command.KILL_LINE_LEFT](key)) {
|
327
381
|
buffer.killLineLeft();
|
328
382
|
return;
|
329
383
|
}
|
330
384
|
// External editor
|
331
|
-
|
332
|
-
if (isCtrlX) {
|
385
|
+
if (keyMatchers[Command.OPEN_EXTERNAL_EDITOR](key)) {
|
333
386
|
buffer.openInExternalEditor();
|
334
387
|
return;
|
335
388
|
}
|
336
389
|
// Ctrl+V for clipboard image paste
|
337
|
-
if (
|
390
|
+
if (keyMatchers[Command.PASTE_CLIPBOARD_IMAGE](key)) {
|
338
391
|
handleClipboardImage();
|
339
392
|
return;
|
340
393
|
}
|
@@ -369,6 +422,9 @@ export const InputPrompt = ({ buffer, onSubmit, userMessages, onClearScreen, con
|
|
369
422
|
reverseSearchCompletion,
|
370
423
|
handleClipboardImage,
|
371
424
|
resetCompletionState,
|
425
|
+
escPressCount,
|
426
|
+
showEscapePrompt,
|
427
|
+
resetEscapeState,
|
372
428
|
vimHandleInput,
|
373
429
|
reverseSearchActive,
|
374
430
|
textBeforeReverseSearch,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAc,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,WAAW,EAAO,MAAM,yBAAyB,CAAC;AAG3D,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAmBpE,MAAM,CAAC,MAAM,WAAW,GAA+B,CAAC,EACtD,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,MAAM,EACN,aAAa,EACb,cAAc,EACd,WAAW,GAAG,sCAAsC,EACpD,KAAK,GAAG,IAAI,EACZ,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,cAAc,GACf,EAAE,EAAE;IACH,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEtE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAC9B,MAAM,CAAC,mBAAmB,EAAE,CAAC,cAAc,EAAE,CAC9C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC,cAAc,EAAE,CAAC;IAClE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,CAAC,WAAW,CAAC,CAAC;QACvB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;IAC/B,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3E,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAmB;QACrE,CAAC,EAAE,CAAC;KACL,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9D,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC;IAEzC,MAAM,UAAU,GAAG,kBAAkB,CACnC,MAAM,EACN,IAAI,EACJ,MAAM,CAAC,YAAY,EAAE,EACrB,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,MAAM,CACP,CAAC;IAEF,MAAM,uBAAuB,GAAG,0BAA0B,CACxD,MAAM,EACN,WAAW,EACX,mBAAmB,CACpB,CAAC;IACF,MAAM,oBAAoB,GAAG,UAAU,CAAC,oBAAoB,CAAC;IAC7D,MAAM,iCAAiC,GACrC,uBAAuB,CAAC,oBAAoB,CAAC;IAE/C,MAAM,oBAAoB,GAAG,WAAW,CACtC,CAAC,cAAsB,EAAE,EAAE;QACzB,yCAAyC;QACzC,MAAM,WAAW,GAAG,kBAAkB,CAAC,cAAc,EAAE;YACrD,CAAC,CAAC,kBAAkB,CAAC,cAAc,EAAE;YACrC,CAAC,CAAC,cAAc,CAAC;QAEnB,IAAI,eAAe,EAAE,CAAC;YACpB,gDAAgD;YAChD,MAAM,YAAY,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;YACxE,YAAY,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QACjD,CAAC;QAED,gFAAgF;QAChF,+EAA+E;QAC/E,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEnB,6BAA6B;QAC7B,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAE3B,QAAQ,CAAC,WAAW,CAAC,CAAC;QACtB,oBAAoB,EAAE,CAAC;QACvB,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,iCAAiC,EAAE,CAAC;IACtC,CAAC,EACD;QACE,QAAQ;QACR,MAAM;QACN,oBAAoB;QACpB,eAAe;QACf,YAAY;QACZ,iCAAiC;QACjC,eAAe;KAChB,CACF,CAAC;IAEF,MAAM,qCAAqC,GAAG,WAAW,CACvD,CAAC,OAAe,EAAE,EAAE;QAClB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACxB,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,qDAAqD;QACrD,kBAAkB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,EACD,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAClC,CAAC;IAEF,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,YAAY;QACZ,QAAQ,EAAE,oBAAoB;QAC9B,QAAQ,EACN,CAAC,CAAC,UAAU,CAAC,eAAe,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC;YACpE,CAAC,eAAe;QAClB,YAAY,EAAE,MAAM,CAAC,IAAI;QACzB,QAAQ,EAAE,qCAAqC;KAChD,CAAC,CAAC;IAEH,kFAAkF;IAClF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,oBAAoB,EAAE,CAAC;YACzB,oBAAoB,EAAE,CAAC;YACvB,iCAAiC,EAAE,CAAC;YACpC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,EAAE;QACD,oBAAoB;QACpB,MAAM,CAAC,IAAI;QACX,oBAAoB;QACpB,uBAAuB;QACvB,iCAAiC;KAClC,CAAC,CAAC;IAEH,6CAA6C;IAC7C,MAAM,oBAAoB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QAClD,IAAI,CAAC;YACH,IAAI,MAAM,iBAAiB,EAAE,EAAE,CAAC;gBAC9B,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;gBAClE,IAAI,SAAS,EAAE,CAAC;oBACd,sBAAsB;oBACtB,yBAAyB,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;wBAC1D,wBAAwB;oBAC1B,CAAC,CAAC,CAAC;oBAEH,2CAA2C;oBAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;oBAErE,4CAA4C;oBAC5C,MAAM,UAAU,GAAG,IAAI,YAAY,EAAE,CAAC;oBACtC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;oBAChC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;oBAEjC,gCAAgC;oBAChC,IAAI,MAAM,GAAG,CAAC,CAAC;oBACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;wBAC7B,MAAM,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,iBAAiB;oBACzD,CAAC;oBACD,MAAM,IAAI,GAAG,CAAC;oBAEd,uCAAuC;oBACvC,IAAI,YAAY,GAAG,UAAU,CAAC;oBAC9B,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC7D,MAAM,SAAS,GACb,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAEzD,IAAI,UAAU,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;wBAC5D,YAAY,GAAG,GAAG,GAAG,YAAY,CAAC;oBACpC,CAAC;oBACD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC;wBAC5D,YAAY,GAAG,YAAY,GAAG,GAAG,CAAC;oBACpC,CAAC;oBAED,4BAA4B;oBAC5B,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,GAAQ,EAAE,EAAE;QACX,2EAA2E;QAC3E,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,IAAI,cAAc,IAAI,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IACE,GAAG,CAAC,QAAQ,KAAK,GAAG;YACpB,MAAM,CAAC,IAAI,KAAK,EAAE;YAClB,CAAC,UAAU,CAAC,eAAe,EAC3B,CAAC;YACD,kBAAkB,CAAC,CAAC,eAAe,CAAC,CAAC;YACrC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,2BAA2B;YAC/C,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,mBAAmB,EAAE,CAAC;gBACxB,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBAC9B,uBAAuB,CAAC,oBAAoB,EAAE,CAAC;gBAC/C,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;gBACxC,MAAM,MAAM,GAAG,kBAAkB,CAC/B,MAAM,CAAC,KAAK,EACZ,cAAc,CAAC,CAAC,CAAC,EACjB,cAAc,CAAC,CAAC,CAAC,CAClB,CAAC;gBACF,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBAC5B,OAAO;YACT,CAAC;YAED,IAAI,eAAe,EAAE,CAAC;gBACpB,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YAED,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;gBAC/B,UAAU,CAAC,oBAAoB,EAAE,CAAC;gBAClC,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,eAAe,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACpD,sBAAsB,CAAC,IAAI,CAAC,CAAC;YAC7B,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACxC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACjC,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,aAAa,EAAE,CAAC;YAChB,OAAO;QACT,CAAC;QAED,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,EACJ,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,WAAW,GACZ,GAAG,uBAAuB,CAAC;YAE5B,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBACtB,UAAU,EAAE,CAAC;oBACb,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxB,YAAY,EAAE,CAAC;oBACf,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;oBACvB,uBAAuB,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC;oBAClE,uBAAuB,CAAC,oBAAoB,EAAE,CAAC;oBAC/C,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,YAAY,GAChB,eAAe,IAAI,qBAAqB,GAAG,CAAC,CAAC;oBAC3C,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAC,KAAK;oBAC1C,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClB,oBAAoB,CAAC,YAAY,CAAC,CAAC;gBACnC,uBAAuB,CAAC,oBAAoB,EAAE,CAAC;gBAC/C,sBAAsB,CAAC,KAAK,CAAC,CAAC;gBAC9B,OAAO;YACT,CAAC;YAED,qEAAqE;YACrE,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7C,OAAO;YACT,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,IAAI,UAAU,CAAC,cAAc,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;YAC/B,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBACxD,UAAU,CAAC,UAAU,EAAE,CAAC;oBACxB,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;oBAC1D,UAAU,CAAC,YAAY,EAAE,CAAC;oBAC1B,OAAO;gBACT,CAAC;YACH,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/D,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,MAAM,WAAW,GACf,UAAU,CAAC,qBAAqB,KAAK,CAAC,CAAC;wBACrC,CAAC,CAAC,CAAC,CAAC,yCAAyC;wBAC7C,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC;oBACvC,IAAI,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;wBAChD,UAAU,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;oBAC7C,CAAC;gBACH,CAAC;gBACD,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjC,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBACjC,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC5B,OAAO;YACT,CAAC;YACD,8DAA8D;YAC9D,IACE,GAAG,CAAC,IAAI,KAAK,IAAI;gBACjB,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC;oBACjC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,EACjE,CAAC;gBACD,YAAY,CAAC,UAAU,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,IACE,GAAG,CAAC,IAAI,KAAK,MAAM;gBACnB,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC;oBACjC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,EAC9D,CAAC;gBACD,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC5B,OAAO;YACT,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACtB,MAAM,WAAW,GAAG,YAAY,CAAC,kBAAkB,EAAE,CAAC;gBACtD,IAAI,WAAW,KAAK,IAAI;oBAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBACtD,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,YAAY,CAAC,cAAc,EAAE,CAAC;gBAClD,IAAI,WAAW,KAAK,IAAI;oBAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBACtD,OAAO;YACT,CAAC;QACH,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YAClE,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;gBACjC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,MAAM,UAAU,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9D,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;oBACxB,MAAM,CAAC,SAAS,EAAE,CAAC;oBACnB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,CAAC;qBAAM,CAAC;oBACN,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QAED,oBAAoB;QACpB,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACjE,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,+BAA+B;QAC/B,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpB,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YACxC,OAAO;QACT,CAAC;QACD,uBAAuB;QACvB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACnB,oBAAoB,EAAE,CAAC;gBACvB,kBAAkB,CAAC,KAAK,EAAE,CAAC;gBAC3B,OAAO;YACT,CAAC;YACD,OAAO;QACT,CAAC;QAED,qBAAqB;QACrB,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,MAAM,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QACD,kBAAkB;QAClB,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;QAC1E,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,mCAAmC;QACnC,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,oBAAoB,EAAE,CAAC;YACvB,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,eAAe,CAAC,IAAI,KAAK,CAAC,MAAM,gBAAgB,CAAC,CAAC;YACpD,CAAC;YAED,8CAA8C;YAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE5B,gDAAgD;YAChD,0DAA0D;YAC1D,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAE7C,OAAO;QACT,CAAC;QAED,2EAA2E;QAC3E,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAExB,oDAAoD;QACpD,uDAAuD;QACvD,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC,EACD;QACE,KAAK;QACL,MAAM;QACN,UAAU;QACV,eAAe;QACf,kBAAkB;QAClB,aAAa;QACb,YAAY;QACZ,oBAAoB;QACpB,YAAY;QACZ,uBAAuB;QACvB,oBAAoB;QACpB,oBAAoB;QACpB,cAAc;QACd,mBAAmB;QACnB,uBAAuB;QACvB,cAAc;KACf,CACF,CAAC;IAEF,WAAW,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,mDAAmD;IACnD,2FAA2F;IAC3F,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE,CAAC,kBAAkB,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAClD,CAAC,MAAM,CAAC,IAAI,CAAC,CACd,CAAC;IAEF,8CAA8C;IAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,EAAE,CAAC;YACzC,OAAO,MAAM,CAAC,mBAAmB,CAAC;QACpC,CAAC;QAED,iEAAiE;QACjE,+EAA+E;QAC/E,+CAA+C;QAE/C,qEAAqE;QACrE,4EAA4E;QAC5E,OAAO,CAAC,aAAa,CAAC,CAAC;IACzB,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC,CAAC;IAEhD,MAAM,aAAa,GAAG,YAAY,CAAC;IACnC,MAAM,CAAC,uBAAuB,EAAE,uBAAuB,CAAC,GACtD,MAAM,CAAC,YAAY,CAAC;IACtB,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;IAE/C,OAAO,CACL,8BACE,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EACtE,QAAQ,EAAE,CAAC,aAEX,KAAC,IAAI,IACH,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,YAEjE,eAAe,CAAC,CAAC,CAAC,CACjB,mBAAmB,CAAC,CAAC,CAAC,CACpB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,UAAU,sBAAc,CAC7C,CAAC,CAAC,CAAC,CACF,IAAI,CACL,CACF,CAAC,CAAC,CAAC,CACF,IAAI,CACL,GACI,EACP,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,aAAa,EAAC,QAAQ,YACrC,aAAa,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAC3C,KAAK,CAAC,CAAC,CAAC,CACN,MAAC,IAAI,eACF,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EACvC,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,GAAQ,IAClD,CACR,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,WAAW,GAAQ,CAC/C,CACF,CAAC,CAAC,CAAC,CACF,aAAa,CAAC,GAAG,CACf,CAAC,QAAgB,EAAE,sBAA8B,EAAE,EAAE;4BACnD,MAAM,eAAe,GACnB,uBAAuB,GAAG,eAAe,CAAC;4BAC5C,IAAI,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;4BAC/C,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;4BAChD,IAAI,kBAAkB,GAAG,UAAU,EAAE,CAAC;gCACpC,OAAO;oCACL,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,kBAAkB,CAAC,CAAC;4BAC1D,CAAC;4BAED,IAAI,KAAK,IAAI,sBAAsB,KAAK,eAAe,EAAE,CAAC;gCACxD,MAAM,6BAA6B,GAAG,uBAAuB,CAAC;gCAE9D,IAAI,6BAA6B,IAAI,CAAC,EAAE,CAAC;oCACvC,IAAI,6BAA6B,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;wCACnD,MAAM,eAAe,GACnB,OAAO,CACL,OAAO,EACP,6BAA6B,EAC7B,6BAA6B,GAAG,CAAC,CAClC,IAAI,GAAG,CAAC;wCACX,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;wCACnD,OAAO;4CACL,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,6BAA6B,CAAC;gDAClD,WAAW;gDACX,OAAO,CAAC,OAAO,EAAE,6BAA6B,GAAG,CAAC,CAAC,CAAC;oCACxD,CAAC;yCAAM,IACL,6BAA6B,KAAK,KAAK,CAAC,OAAO,CAAC;wCAChD,KAAK,CAAC,OAAO,CAAC,KAAK,UAAU,EAC7B,CAAC;wCACD,OAAO,GAAG,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;oCACzC,CAAC;gCACH,CAAC;4BACH,CAAC;4BACD,OAAO,CACL,KAAC,IAAI,IACH,KAAK,EAAE,MAAM,CAAC,UAAU,YAGvB,OAAO,IAFH,QAAQ,sBAAsB,EAAE,CAGhC,CACR,CAAC;wBACJ,CAAC,CACF,CACF,GACG,IACF,EACL,UAAU,CAAC,eAAe,IAAI,CAC7B,KAAC,GAAG,cACF,KAAC,kBAAkB,IACjB,WAAW,EAAE,UAAU,CAAC,WAAW,EACnC,WAAW,EAAE,UAAU,CAAC,qBAAqB,EAC7C,SAAS,EAAE,UAAU,CAAC,oBAAoB,EAC1C,KAAK,EAAE,gBAAgB,EACvB,YAAY,EAAE,UAAU,CAAC,iBAAiB,EAC1C,SAAS,EAAE,aAAa,GACxB,GACE,CACP,EACA,YAAY,IAAI,CACf,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,YAAG,YAAY,GAAQ,GAC9C,CACP,EACA,mBAAmB,IAAI,CACtB,KAAC,GAAG,cACF,KAAC,kBAAkB,IACjB,WAAW,EAAE,uBAAuB,CAAC,WAAW,EAChD,WAAW,EAAE,uBAAuB,CAAC,qBAAqB,EAC1D,SAAS,EAAE,uBAAuB,CAAC,oBAAoB,EACvD,KAAK,EAAE,gBAAgB,EACvB,YAAY,EAAE,uBAAuB,CAAC,iBAAiB,EACvD,SAAS,EAAE,MAAM,CAAC,IAAI,GACtB,GACE,CACP,IACA,CACJ,CAAC;AACJ,CAAC,CAAC"}
|
1
|
+
{"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../src/ui/components/InputPrompt.tsx"],"names":[],"mappings":"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"}
|