@google/gemini-cli 0.18.0-nightly.20251120.2231497b1 → 0.19.0-nightly.20251121.5982abeff
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/dist/google-gemini-cli-0.19.0-nightly.20251120.8e531dc02.tgz +0 -0
- package/dist/package.json +4 -4
- package/dist/src/commands/extensions/disable.test.js +19 -13
- package/dist/src/commands/extensions/disable.test.js.map +1 -1
- package/dist/src/commands/extensions/enable.test.js +16 -9
- package/dist/src/commands/extensions/enable.test.js.map +1 -1
- package/dist/src/commands/extensions/examples/mcp-server/package.json +1 -1
- package/dist/src/commands/extensions/link.test.js +18 -11
- package/dist/src/commands/extensions/link.test.js.map +1 -1
- package/dist/src/commands/extensions/list.test.js +20 -13
- package/dist/src/commands/extensions/list.test.js.map +1 -1
- package/dist/src/commands/extensions/uninstall.test.js +26 -18
- package/dist/src/commands/extensions/uninstall.test.js.map +1 -1
- package/dist/src/commands/extensions/update.test.js +20 -13
- package/dist/src/commands/extensions/update.test.js.map +1 -1
- package/dist/src/commands/mcp/add.test.js +8 -3
- package/dist/src/commands/mcp/add.test.js.map +1 -1
- package/dist/src/commands/mcp/list.test.js +1 -6
- package/dist/src/commands/mcp/list.test.js.map +1 -1
- package/dist/src/commands/mcp/remove.test.js +23 -12
- package/dist/src/commands/mcp/remove.test.js.map +1 -1
- package/dist/src/config/config.js +36 -13
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +50 -10
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/extension.test.js +131 -125
- package/dist/src/config/extension.test.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +1 -1
- package/dist/src/config/settingsSchema.js +2 -2
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/settingsSchema.test.js +1 -1
- package/dist/src/config/settingsSchema.test.js.map +1 -1
- package/dist/src/gemini.js +64 -7
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +49 -15
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/nonInteractiveCli.js +4 -1
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +2 -2
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/services/CommandService.test.js +3 -2
- package/dist/src/services/CommandService.test.js.map +1 -1
- package/dist/src/test-utils/render.d.ts +19 -0
- package/dist/src/test-utils/render.js +32 -1
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/ui/AppContainer.js +42 -26
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +89 -20
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js +2 -2
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.js +8 -1
- package/dist/src/ui/commands/aboutCommand.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.test.js +4 -0
- package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.js +1 -0
- package/dist/src/ui/commands/memoryCommand.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.test.js +3 -0
- package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
- package/dist/src/ui/commands/setupGithubCommand.d.ts +1 -0
- package/dist/src/ui/commands/setupGithubCommand.js +82 -45
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/setupGithubCommand.test.js +35 -5
- package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
- package/dist/src/ui/components/AboutBox.d.ts +1 -0
- package/dist/src/ui/components/AboutBox.js +1 -1
- package/dist/src/ui/components/AboutBox.js.map +1 -1
- package/dist/src/ui/components/AppHeader.js +3 -22
- package/dist/src/ui/components/AppHeader.js.map +1 -1
- package/dist/src/ui/components/AppHeader.test.js +10 -4
- package/dist/src/ui/components/AppHeader.test.js.map +1 -1
- package/dist/src/ui/components/Banner.d.ts +4 -2
- package/dist/src/ui/components/Banner.js +19 -1
- package/dist/src/ui/components/Banner.js.map +1 -1
- package/dist/src/ui/components/DebugProfiler.d.ts +1 -0
- package/dist/src/ui/components/DebugProfiler.js +23 -34
- package/dist/src/ui/components/DebugProfiler.js.map +1 -1
- package/dist/src/ui/components/DebugProfiler.test.js +1 -0
- package/dist/src/ui/components/DebugProfiler.test.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +1 -1
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/GradientRegression.test.js +1 -1
- package/dist/src/ui/components/GradientRegression.test.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +3 -1
- package/dist/src/ui/components/SettingsDialog.js +4 -1
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.js +22 -5
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.test.js +20 -0
- package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +14 -9
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/hooks/useBanner.d.ts +14 -0
- package/dist/src/ui/hooks/useBanner.js +48 -0
- package/dist/src/ui/hooks/useBanner.js.map +1 -0
- package/dist/src/ui/hooks/useBanner.test.d.ts +6 -0
- package/dist/src/ui/hooks/useBanner.test.js +92 -0
- package/dist/src/ui/hooks/useBanner.test.js.map +1 -0
- package/dist/src/ui/hooks/useBracketedPaste.js +3 -2
- package/dist/src/ui/hooks/useBracketedPaste.js.map +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.test.js +5 -5
- package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useConsoleMessages.d.ts +0 -1
- package/dist/src/ui/hooks/useConsoleMessages.js +26 -1
- package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
- package/dist/src/ui/hooks/useConsoleMessages.test.js +37 -5
- package/dist/src/ui/hooks/useConsoleMessages.test.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +2 -2
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +18 -19
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useInputHistoryStore.test.js +4 -1
- package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.d.ts +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js +1 -8
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.test.js +1 -8
- package/dist/src/ui/hooks/useReactToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +18 -12
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js +2 -2
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/themes/theme-manager.test.js +2 -1
- package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
- package/dist/src/ui/types.d.ts +2 -0
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/ConsolePatcher.js +6 -9
- package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
- package/dist/src/ui/utils/kittyProtocolDetector.js +20 -21
- package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -1
- package/dist/src/ui/utils/mouse.js +3 -3
- package/dist/src/ui/utils/mouse.js.map +1 -1
- package/dist/src/utils/cleanup.d.ts +2 -0
- package/dist/src/utils/cleanup.js +16 -0
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/errors.js +10 -0
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/events.d.ts +0 -2
- package/dist/src/utils/events.js +0 -1
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/installationInfo.test.js +8 -9
- package/dist/src/utils/installationInfo.test.js.map +1 -1
- package/dist/src/utils/persistentState.d.ts +1 -1
- package/dist/src/utils/sessionCleanup.test.js +4 -2
- package/dist/src/utils/sessionCleanup.test.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.js +2 -0
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.test.js +10 -6
- package/dist/src/validateNonInterActiveAuth.test.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.d.ts +0 -7
- package/dist/src/zed-integration/zedIntegration.js +3 -19
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -5
- package/dist/google-gemini-cli-0.18.0-nightly.20251118.86828bb56.tgz +0 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { useState, useEffect, useRef } from 'react';
|
|
7
|
+
import { persistentState } from '../../utils/persistentState.js';
|
|
8
|
+
import crypto from 'node:crypto';
|
|
9
|
+
const DEFAULT_MAX_BANNER_SHOWN_COUNT = 5;
|
|
10
|
+
export function useBanner(bannerData, config) {
|
|
11
|
+
const { defaultText, warningText } = bannerData;
|
|
12
|
+
const [previewEnabled, setPreviewEnabled] = useState(config.getPreviewFeatures());
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
const isEnabled = config.getPreviewFeatures();
|
|
15
|
+
if (isEnabled !== previewEnabled) {
|
|
16
|
+
setPreviewEnabled(isEnabled);
|
|
17
|
+
}
|
|
18
|
+
}, [config, previewEnabled]);
|
|
19
|
+
const [bannerCounts] = useState(() => persistentState.get('defaultBannerShownCount') || {});
|
|
20
|
+
const hashedText = crypto
|
|
21
|
+
.createHash('sha256')
|
|
22
|
+
.update(defaultText)
|
|
23
|
+
.digest('hex');
|
|
24
|
+
const currentBannerCount = bannerCounts[hashedText] || 0;
|
|
25
|
+
const showDefaultBanner = warningText === '' &&
|
|
26
|
+
!previewEnabled &&
|
|
27
|
+
currentBannerCount < DEFAULT_MAX_BANNER_SHOWN_COUNT;
|
|
28
|
+
const rawBannerText = showDefaultBanner ? defaultText : warningText;
|
|
29
|
+
const bannerText = rawBannerText.replace(/\\n/g, '\n');
|
|
30
|
+
const lastIncrementedKey = useRef(null);
|
|
31
|
+
useEffect(() => {
|
|
32
|
+
if (showDefaultBanner && defaultText) {
|
|
33
|
+
if (lastIncrementedKey.current !== defaultText) {
|
|
34
|
+
lastIncrementedKey.current = defaultText;
|
|
35
|
+
const allCounts = persistentState.get('defaultBannerShownCount') || {};
|
|
36
|
+
const current = allCounts[hashedText] || 0;
|
|
37
|
+
persistentState.set('defaultBannerShownCount', {
|
|
38
|
+
...allCounts,
|
|
39
|
+
[hashedText]: current + 1,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}, [showDefaultBanner, defaultText, hashedText]);
|
|
44
|
+
return {
|
|
45
|
+
bannerText,
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=useBanner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBanner.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useBanner.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAOzC,MAAM,UAAU,SAAS,CAAC,UAAsB,EAAE,MAAc;IAC9D,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,GAAG,UAAU,CAAC;IAEhD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAClD,MAAM,CAAC,kBAAkB,EAAE,CAC5B,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,SAAS,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9C,IAAI,SAAS,KAAK,cAAc,EAAE,CAAC;YACjC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAE7B,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAC7B,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAC3D,CAAC;IAEF,MAAM,UAAU,GAAG,MAAM;SACtB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,WAAW,CAAC;SACnB,MAAM,CAAC,KAAK,CAAC,CAAC;IAEjB,MAAM,kBAAkB,GAAG,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEzD,MAAM,iBAAiB,GACrB,WAAW,KAAK,EAAE;QAClB,CAAC,cAAc;QACf,kBAAkB,GAAG,8BAA8B,CAAC;IAEtD,MAAM,aAAa,GAAG,iBAAiB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;IACpE,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEvD,MAAM,kBAAkB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAEvD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,iBAAiB,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,kBAAkB,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC/C,kBAAkB,CAAC,OAAO,GAAG,WAAW,CAAC;gBAEzC,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,EAAE,CAAC;gBACvE,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBAE3C,eAAe,CAAC,GAAG,CAAC,yBAAyB,EAAE;oBAC7C,GAAG,SAAS;oBACZ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,CAAC;iBAC1B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,iBAAiB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC;IAEjD,OAAO;QACL,UAAU;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { describe, it, expect, vi, beforeEach, } from 'vitest';
|
|
7
|
+
import { renderHook } from '../../test-utils/render.js';
|
|
8
|
+
import { useBanner } from './useBanner.js';
|
|
9
|
+
import { persistentState } from '../../utils/persistentState.js';
|
|
10
|
+
import crypto from 'node:crypto';
|
|
11
|
+
vi.mock('../../utils/persistentState.js', () => ({
|
|
12
|
+
persistentState: {
|
|
13
|
+
get: vi.fn(),
|
|
14
|
+
set: vi.fn(),
|
|
15
|
+
},
|
|
16
|
+
}));
|
|
17
|
+
vi.mock('../semantic-colors.js', () => ({
|
|
18
|
+
theme: {
|
|
19
|
+
status: {
|
|
20
|
+
warning: 'mock-warning-color',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
}));
|
|
24
|
+
vi.mock('../colors.js', () => ({
|
|
25
|
+
Colors: {
|
|
26
|
+
AccentBlue: 'mock-accent-blue',
|
|
27
|
+
},
|
|
28
|
+
}));
|
|
29
|
+
describe('useBanner', () => {
|
|
30
|
+
let mockConfig;
|
|
31
|
+
const mockedPersistentStateGet = persistentState.get;
|
|
32
|
+
const mockedPersistentStateSet = persistentState.set;
|
|
33
|
+
const defaultBannerData = {
|
|
34
|
+
defaultText: 'Standard Banner',
|
|
35
|
+
warningText: '',
|
|
36
|
+
};
|
|
37
|
+
beforeEach(() => {
|
|
38
|
+
vi.resetAllMocks();
|
|
39
|
+
// Initialize the mock config with default behavior
|
|
40
|
+
mockConfig = {
|
|
41
|
+
getPreviewFeatures: vi.fn().mockReturnValue(false),
|
|
42
|
+
};
|
|
43
|
+
// Default persistentState behavior: return empty object (no counts)
|
|
44
|
+
mockedPersistentStateGet.mockReturnValue({});
|
|
45
|
+
});
|
|
46
|
+
it('should return warning text and warning color if warningText is present', () => {
|
|
47
|
+
const data = { defaultText: 'Standard', warningText: 'Critical Error' };
|
|
48
|
+
const { result } = renderHook(() => useBanner(data, mockConfig));
|
|
49
|
+
expect(result.current.bannerText).toBe('Critical Error');
|
|
50
|
+
});
|
|
51
|
+
it('should NOT show default banner if preview features are enabled in config', () => {
|
|
52
|
+
// Simulate Preview Features Enabled
|
|
53
|
+
mockConfig.getPreviewFeatures.mockReturnValue(true);
|
|
54
|
+
const { result } = renderHook(() => useBanner(defaultBannerData, mockConfig));
|
|
55
|
+
// Should fall back to warningText (which is empty)
|
|
56
|
+
expect(result.current.bannerText).toBe('');
|
|
57
|
+
});
|
|
58
|
+
it('should hide banner if show count exceeds max limit (Legacy format)', () => {
|
|
59
|
+
mockedPersistentStateGet.mockReturnValue({
|
|
60
|
+
[crypto
|
|
61
|
+
.createHash('sha256')
|
|
62
|
+
.update(defaultBannerData.defaultText)
|
|
63
|
+
.digest('hex')]: 5,
|
|
64
|
+
});
|
|
65
|
+
const { result } = renderHook(() => useBanner(defaultBannerData, mockConfig));
|
|
66
|
+
expect(result.current.bannerText).toBe('');
|
|
67
|
+
});
|
|
68
|
+
it('should increment the persistent count when banner is shown', () => {
|
|
69
|
+
const data = { defaultText: 'Tracker', warningText: '' };
|
|
70
|
+
// Current count is 1
|
|
71
|
+
mockedPersistentStateGet.mockReturnValue({
|
|
72
|
+
[crypto.createHash('sha256').update(data.defaultText).digest('hex')]: 1,
|
|
73
|
+
});
|
|
74
|
+
renderHook(() => useBanner(data, mockConfig));
|
|
75
|
+
// Expect set to be called with incremented count
|
|
76
|
+
expect(mockedPersistentStateSet).toHaveBeenCalledWith('defaultBannerShownCount', {
|
|
77
|
+
[crypto.createHash('sha256').update(data.defaultText).digest('hex')]: 2,
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
it('should NOT increment count if warning text is shown instead', () => {
|
|
81
|
+
const data = { defaultText: 'Standard', warningText: 'Warning' };
|
|
82
|
+
renderHook(() => useBanner(data, mockConfig));
|
|
83
|
+
// Since warning text takes precedence, default banner logic (and increment) is skipped
|
|
84
|
+
expect(mockedPersistentStateSet).not.toHaveBeenCalled();
|
|
85
|
+
});
|
|
86
|
+
it('should handle newline replacements', () => {
|
|
87
|
+
const data = { defaultText: 'Line1\\nLine2', warningText: '' };
|
|
88
|
+
const { result } = renderHook(() => useBanner(data, mockConfig));
|
|
89
|
+
expect(result.current.bannerText).toBe('Line1\nLine2');
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
//# sourceMappingURL=useBanner.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useBanner.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useBanner.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useEffect } from 'react';
|
|
7
|
+
import { writeToStdout } from '@google/gemini-cli-core';
|
|
7
8
|
const ENABLE_BRACKETED_PASTE = '\x1b[?2004h';
|
|
8
9
|
const DISABLE_BRACKETED_PASTE = '\x1b[?2004l';
|
|
9
10
|
/**
|
|
@@ -14,10 +15,10 @@ const DISABLE_BRACKETED_PASTE = '\x1b[?2004l';
|
|
|
14
15
|
*/
|
|
15
16
|
export const useBracketedPaste = () => {
|
|
16
17
|
const cleanup = () => {
|
|
17
|
-
|
|
18
|
+
writeToStdout(DISABLE_BRACKETED_PASTE);
|
|
18
19
|
};
|
|
19
20
|
useEffect(() => {
|
|
20
|
-
|
|
21
|
+
writeToStdout(ENABLE_BRACKETED_PASTE);
|
|
21
22
|
process.on('exit', cleanup);
|
|
22
23
|
process.on('SIGINT', cleanup);
|
|
23
24
|
process.on('SIGTERM', cleanup);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBracketedPaste.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useBracketedPaste.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useBracketedPaste.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useBracketedPaste.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,MAAM,sBAAsB,GAAG,aAAa,CAAC;AAC7C,MAAM,uBAAuB,GAAG,aAAa,CAAC;AAE9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE;IACpC,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,aAAa,CAAC,uBAAuB,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,CAAC,sBAAsB,CAAC,CAAC;QAEtC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE/B,OAAO,GAAG,EAAE;YACV,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACxC,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAC1C,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC,CAAC"}
|
|
@@ -6,7 +6,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
6
6
|
*/
|
|
7
7
|
import { describe, it, expect, beforeEach, vi, afterEach, } from 'vitest';
|
|
8
8
|
import { act, useEffect } from 'react';
|
|
9
|
-
import {
|
|
9
|
+
import { renderWithProviders } from '../../test-utils/render.js';
|
|
10
10
|
import { waitFor } from '../../test-utils/async.js';
|
|
11
11
|
import { useCommandCompletion } from './useCommandCompletion.js';
|
|
12
12
|
import { useTextBuffer } from '../components/shared/text-buffer.js';
|
|
@@ -71,7 +71,7 @@ describe('useCommandCompletion', () => {
|
|
|
71
71
|
hookResult = { ...completion, textBuffer };
|
|
72
72
|
return null;
|
|
73
73
|
}
|
|
74
|
-
|
|
74
|
+
renderWithProviders(_jsx(TestComponent, {}));
|
|
75
75
|
return {
|
|
76
76
|
result: {
|
|
77
77
|
get current() {
|
|
@@ -336,7 +336,7 @@ describe('useCommandCompletion', () => {
|
|
|
336
336
|
hookResult = { ...completion, textBuffer };
|
|
337
337
|
return null;
|
|
338
338
|
}
|
|
339
|
-
|
|
339
|
+
renderWithProviders(_jsx(TestComponent, {}));
|
|
340
340
|
// Should not trigger prompt completion for comments
|
|
341
341
|
expect(hookResult.suggestions.length).toBe(0);
|
|
342
342
|
});
|
|
@@ -352,7 +352,7 @@ describe('useCommandCompletion', () => {
|
|
|
352
352
|
hookResult = { ...completion, textBuffer };
|
|
353
353
|
return null;
|
|
354
354
|
}
|
|
355
|
-
|
|
355
|
+
renderWithProviders(_jsx(TestComponent, {}));
|
|
356
356
|
// Should not trigger prompt completion for comments
|
|
357
357
|
expect(hookResult.suggestions.length).toBe(0);
|
|
358
358
|
});
|
|
@@ -368,7 +368,7 @@ describe('useCommandCompletion', () => {
|
|
|
368
368
|
hookResult = { ...completion, textBuffer };
|
|
369
369
|
return null;
|
|
370
370
|
}
|
|
371
|
-
|
|
371
|
+
renderWithProviders(_jsx(TestComponent, {}));
|
|
372
372
|
// This test verifies that comments are filtered out while regular text is not
|
|
373
373
|
expect(hookResult.textBuffer.text).toBe('This is regular text that should trigger completion');
|
|
374
374
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCommandCompletion.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useCommandCompletion.test.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useCommandCompletion.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useCommandCompletion.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,6 @@
|
|
|
6
6
|
import type { ConsoleMessageItem } from '../types.js';
|
|
7
7
|
export interface UseConsoleMessagesReturn {
|
|
8
8
|
consoleMessages: ConsoleMessageItem[];
|
|
9
|
-
handleNewMessage: (message: ConsoleMessageItem) => void;
|
|
10
9
|
clearConsoleMessages: () => void;
|
|
11
10
|
}
|
|
12
11
|
export declare function useConsoleMessages(): UseConsoleMessagesReturn;
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useCallback, useEffect, useReducer, useRef, useTransition, } from 'react';
|
|
7
|
+
import { coreEvents, CoreEvent, } from '@google/gemini-cli-core';
|
|
7
8
|
function consoleMessagesReducer(state, action) {
|
|
8
9
|
switch (action.type) {
|
|
9
10
|
case 'ADD_MESSAGES': {
|
|
@@ -55,6 +56,30 @@ export function useConsoleMessages() {
|
|
|
55
56
|
timeoutRef.current = setTimeout(processQueue, 16);
|
|
56
57
|
}
|
|
57
58
|
}, [processQueue]);
|
|
59
|
+
useEffect(() => {
|
|
60
|
+
const handleConsoleLog = (payload) => {
|
|
61
|
+
handleNewMessage({
|
|
62
|
+
type: payload.type,
|
|
63
|
+
content: payload.content,
|
|
64
|
+
count: 1,
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
const handleOutput = (payload) => {
|
|
68
|
+
const content = typeof payload.chunk === 'string'
|
|
69
|
+
? payload.chunk
|
|
70
|
+
: new TextDecoder().decode(payload.chunk);
|
|
71
|
+
// It would be nice if we could show stderr as 'warn' but unfortunately
|
|
72
|
+
// we log non warning info to stderr before the app starts so that would
|
|
73
|
+
// be misleading.
|
|
74
|
+
handleNewMessage({ type: 'log', content, count: 1 });
|
|
75
|
+
};
|
|
76
|
+
coreEvents.on(CoreEvent.ConsoleLog, handleConsoleLog);
|
|
77
|
+
coreEvents.on(CoreEvent.Output, handleOutput);
|
|
78
|
+
return () => {
|
|
79
|
+
coreEvents.off(CoreEvent.ConsoleLog, handleConsoleLog);
|
|
80
|
+
coreEvents.off(CoreEvent.Output, handleOutput);
|
|
81
|
+
};
|
|
82
|
+
}, [handleNewMessage]);
|
|
58
83
|
const clearConsoleMessages = useCallback(() => {
|
|
59
84
|
if (timeoutRef.current) {
|
|
60
85
|
clearTimeout(timeoutRef.current);
|
|
@@ -71,6 +96,6 @@ export function useConsoleMessages() {
|
|
|
71
96
|
clearTimeout(timeoutRef.current);
|
|
72
97
|
}
|
|
73
98
|
}, []);
|
|
74
|
-
return { consoleMessages,
|
|
99
|
+
return { consoleMessages, clearConsoleMessages };
|
|
75
100
|
}
|
|
76
101
|
//# sourceMappingURL=useConsoleMessages.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConsoleMessages.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useConsoleMessages.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,WAAW,EACX,SAAS,EACT,UAAU,EACV,MAAM,EACN,aAAa,GACd,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"useConsoleMessages.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useConsoleMessages.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,18 +8,51 @@ import { act, useCallback } from 'react';
|
|
|
8
8
|
import { vi } from 'vitest';
|
|
9
9
|
import { render } from '../../test-utils/render.js';
|
|
10
10
|
import { useConsoleMessages } from './useConsoleMessages.js';
|
|
11
|
+
import { CoreEvent } from '@google/gemini-cli-core';
|
|
12
|
+
// Mock coreEvents
|
|
13
|
+
let consoleLogHandler;
|
|
14
|
+
vi.mock('@google/gemini-cli-core', async (importOriginal) => {
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
+
const actual = (await importOriginal());
|
|
17
|
+
return {
|
|
18
|
+
...actual,
|
|
19
|
+
coreEvents: {
|
|
20
|
+
on: vi.fn((event, handler) => {
|
|
21
|
+
if (event === CoreEvent.ConsoleLog) {
|
|
22
|
+
consoleLogHandler = handler;
|
|
23
|
+
}
|
|
24
|
+
}),
|
|
25
|
+
off: vi.fn((event) => {
|
|
26
|
+
if (event === CoreEvent.ConsoleLog) {
|
|
27
|
+
consoleLogHandler = undefined;
|
|
28
|
+
}
|
|
29
|
+
}),
|
|
30
|
+
emitConsoleLog: vi.fn(),
|
|
31
|
+
},
|
|
32
|
+
};
|
|
33
|
+
});
|
|
11
34
|
describe('useConsoleMessages', () => {
|
|
12
35
|
beforeEach(() => {
|
|
13
36
|
vi.useFakeTimers();
|
|
37
|
+
consoleLogHandler = undefined;
|
|
14
38
|
});
|
|
15
39
|
afterEach(() => {
|
|
16
40
|
vi.runOnlyPendingTimers();
|
|
17
41
|
vi.useRealTimers();
|
|
42
|
+
vi.restoreAllMocks();
|
|
18
43
|
});
|
|
19
44
|
const useTestableConsoleMessages = () => {
|
|
20
|
-
const {
|
|
21
|
-
const log = useCallback((content) =>
|
|
22
|
-
|
|
45
|
+
const { ...rest } = useConsoleMessages();
|
|
46
|
+
const log = useCallback((content) => {
|
|
47
|
+
if (consoleLogHandler) {
|
|
48
|
+
consoleLogHandler({ type: 'log', content });
|
|
49
|
+
}
|
|
50
|
+
}, []);
|
|
51
|
+
const error = useCallback((content) => {
|
|
52
|
+
if (consoleLogHandler) {
|
|
53
|
+
consoleLogHandler({ type: 'error', content });
|
|
54
|
+
}
|
|
55
|
+
}, []);
|
|
23
56
|
return {
|
|
24
57
|
...rest,
|
|
25
58
|
log,
|
|
@@ -111,7 +144,7 @@ describe('useConsoleMessages', () => {
|
|
|
111
144
|
result.current.clearConsoleMessages();
|
|
112
145
|
});
|
|
113
146
|
expect(clearTimeoutSpy).toHaveBeenCalled();
|
|
114
|
-
clearTimeoutSpy.mockRestore()
|
|
147
|
+
// clearTimeoutSpy.mockRestore() is handled by afterEach restoreAllMocks
|
|
115
148
|
});
|
|
116
149
|
it('should clean up the timeout on unmount', () => {
|
|
117
150
|
const { result, unmount } = renderConsoleMessagesHook();
|
|
@@ -121,7 +154,6 @@ describe('useConsoleMessages', () => {
|
|
|
121
154
|
});
|
|
122
155
|
unmount();
|
|
123
156
|
expect(clearTimeoutSpy).toHaveBeenCalled();
|
|
124
|
-
clearTimeoutSpy.mockRestore();
|
|
125
157
|
});
|
|
126
158
|
});
|
|
127
159
|
//# sourceMappingURL=useConsoleMessages.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConsoleMessages.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useConsoleMessages.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"useConsoleMessages.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useConsoleMessages.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAA0B,MAAM,yBAAyB,CAAC;AAE5E,kBAAkB;AAClB,IAAI,iBAAqE,CAAC;AAE1E,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IAC1D,8DAA8D;IAC9D,MAAM,MAAM,GAAG,CAAC,MAAM,cAAc,EAAE,CAAQ,CAAC;IAC/C,OAAO;QACL,GAAG,MAAM;QACT,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC3B,IAAI,KAAK,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;oBACnC,iBAAiB,GAAG,OAAO,CAAC;gBAC9B,CAAC;YACH,CAAC,CAAC;YACF,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE;gBACnB,IAAI,KAAK,KAAK,SAAS,CAAC,UAAU,EAAE,CAAC;oBACnC,iBAAiB,GAAG,SAAS,CAAC;gBAChC,CAAC;YACH,CAAC,CAAC;YACF,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE;SACxB;KACF,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;IAClC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,iBAAiB,GAAG,SAAS,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,oBAAoB,EAAE,CAAC;QAC1B,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,MAAM,0BAA0B,GAAG,GAAG,EAAE;QACtC,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,kBAAkB,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,OAAe,EAAE,EAAE;YAC1C,IAAI,iBAAiB,EAAE,CAAC;gBACtB,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,OAAe,EAAE,EAAE;YAC5C,IAAI,iBAAiB,EAAE,CAAC;gBACtB,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC,EAAE,EAAE,CAAC,CAAC;QACP,OAAO;YACL,GAAG,IAAI;YACP,GAAG;YACH,KAAK;YACL,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAChD,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,yBAAyB,GAAG,GAAG,EAAE;QACrC,IAAI,UAAyD,CAAC;QAC9D,SAAS,aAAa;YACpB,UAAU,GAAG,0BAA0B,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,KAAC,aAAa,KAAG,CAAC,CAAC;QAC9C,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,OAAO;oBACT,OAAO,UAAU,CAAC;gBACpB,CAAC;aACF;YACD,OAAO;SACR,CAAC;IACJ,CAAC,CAAC;IAEF,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACnE,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAC/C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAE/C,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;YAC7C,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE;SACnD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAE/C,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACnC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;YAC7C,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE;SACnD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAE/C,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC;YAC7C,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE;YACnD,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE;SACvD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAE/C,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAEvD,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sEAAsE,EAAE,GAAG,EAAE;QAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,yBAAyB,EAAE,CAAC;QAC/C,MAAM,eAAe,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAEzD,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC3C,wEAAwE;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,yBAAyB,EAAE,CAAC;QACxD,MAAM,eAAe,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAEzD,GAAG,CAAC,GAAG,EAAE;YACP,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,OAAO,EAAE,CAAC;QAEV,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -15,7 +15,7 @@ import type { LoadedSettings } from '../../config/settings.js';
|
|
|
15
15
|
* Manages the Gemini stream, including user input, command processing,
|
|
16
16
|
* API interaction, and tool call lifecycle.
|
|
17
17
|
*/
|
|
18
|
-
export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], config: Config, settings: LoadedSettings, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: (error: string) => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>,
|
|
18
|
+
export declare const useGeminiStream: (geminiClient: GeminiClient, history: HistoryItem[], addItem: UseHistoryManagerReturn["addItem"], config: Config, settings: LoadedSettings, onDebugMessage: (message: string) => void, handleSlashCommand: (cmd: PartListUnion) => Promise<SlashCommandProcessorResult | false>, shellModeActive: boolean, getPreferredEditor: () => EditorType | undefined, onAuthError: (error: string) => void, performMemoryRefresh: () => Promise<void>, modelSwitchedFromQuotaError: boolean, setModelSwitchedFromQuotaError: React.Dispatch<React.SetStateAction<boolean>>, onCancelSubmit: (shouldRestorePrompt?: boolean) => void, setShellInputFocused: (value: boolean) => void, terminalWidth: number, terminalHeight: number, isShellFocused?: boolean) => {
|
|
19
19
|
streamingState: StreamingState;
|
|
20
20
|
submitQuery: (query: PartListUnion, options?: {
|
|
21
21
|
isContinuation: boolean;
|
|
@@ -37,7 +37,7 @@ function showCitations(settings) {
|
|
|
37
37
|
* Manages the Gemini stream, including user input, command processing,
|
|
38
38
|
* API interaction, and tool call lifecycle.
|
|
39
39
|
*/
|
|
40
|
-
export const useGeminiStream = (geminiClient, history, addItem, config, settings, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError,
|
|
40
|
+
export const useGeminiStream = (geminiClient, history, addItem, config, settings, onDebugMessage, handleSlashCommand, shellModeActive, getPreferredEditor, onAuthError, performMemoryRefresh, modelSwitchedFromQuotaError, setModelSwitchedFromQuotaError, onCancelSubmit, setShellInputFocused, terminalWidth, terminalHeight, isShellFocused) => {
|
|
41
41
|
const [initError, setInitError] = useState(null);
|
|
42
42
|
const abortControllerRef = useRef(null);
|
|
43
43
|
const turnCancelledRef = useRef(false);
|
|
@@ -77,7 +77,7 @@ export const useGeminiStream = (geminiClient, history, addItem, config, settings
|
|
|
77
77
|
// Handle tool response submission immediately when tools complete
|
|
78
78
|
await handleCompletedTools(completedToolCallsFromScheduler);
|
|
79
79
|
}
|
|
80
|
-
}, config, getPreferredEditor
|
|
80
|
+
}, config, getPreferredEditor);
|
|
81
81
|
const pendingToolCallGroupDisplay = useMemo(() => toolCalls.length ? mapTrackedToolCallsToDisplay(toolCalls) : undefined, [toolCalls]);
|
|
82
82
|
const activeToolPtyId = useMemo(() => {
|
|
83
83
|
const executingShellTool = toolCalls?.find((tc) => tc.status === 'executing' && tc.request.name === 'run_shell_command');
|