@google/gemini-cli 0.3.0-nightly.20250821.653267a6 → 0.3.0-nightly.20250823.1a89d185

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.
Files changed (143) hide show
  1. package/dist/package.json +2 -2
  2. package/dist/src/config/auth.js +9 -0
  3. package/dist/src/config/auth.js.map +1 -1
  4. package/dist/src/config/config.d.ts +1 -0
  5. package/dist/src/config/config.js +13 -1
  6. package/dist/src/config/config.js.map +1 -1
  7. package/dist/src/config/settings.d.ts +3 -1
  8. package/dist/src/config/settings.js +18 -11
  9. package/dist/src/config/settings.js.map +1 -1
  10. package/dist/src/config/settingsSchema.d.ts +46 -1
  11. package/dist/src/config/settingsSchema.js +46 -1
  12. package/dist/src/config/settingsSchema.js.map +1 -1
  13. package/dist/src/config/settingsSchema.test.js +11 -0
  14. package/dist/src/config/settingsSchema.test.js.map +1 -1
  15. package/dist/src/gemini.js +25 -2
  16. package/dist/src/gemini.js.map +1 -1
  17. package/dist/src/gemini.test.js +1 -1
  18. package/dist/src/gemini.test.js.map +1 -1
  19. package/dist/src/generated/git-commit.d.ts +2 -2
  20. package/dist/src/generated/git-commit.js +2 -2
  21. package/dist/src/nonInteractiveCli.js +22 -31
  22. package/dist/src/nonInteractiveCli.js.map +1 -1
  23. package/dist/src/services/McpPromptLoader.d.ts +11 -1
  24. package/dist/src/services/McpPromptLoader.js +42 -16
  25. package/dist/src/services/McpPromptLoader.js.map +1 -1
  26. package/dist/src/services/McpPromptLoader.test.d.ts +6 -0
  27. package/dist/src/services/McpPromptLoader.test.js +114 -0
  28. package/dist/src/services/McpPromptLoader.test.js.map +1 -0
  29. package/dist/src/ui/App.js +13 -6
  30. package/dist/src/ui/App.js.map +1 -1
  31. package/dist/src/ui/commands/aboutCommand.js +8 -1
  32. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  33. package/dist/src/ui/commands/copyCommand.js +1 -1
  34. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  35. package/dist/src/ui/components/AboutBox.d.ts +2 -0
  36. package/dist/src/ui/components/AboutBox.js +2 -1
  37. package/dist/src/ui/components/AboutBox.js.map +1 -1
  38. package/dist/src/ui/components/AuthDialog.js +5 -1
  39. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  40. package/dist/src/ui/components/AuthDialog.test.js +10 -10
  41. package/dist/src/ui/components/AuthDialog.test.js.map +1 -1
  42. package/dist/src/ui/components/DetailedMessagesDisplay.js +1 -1
  43. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  44. package/dist/src/ui/components/FolderTrustDialog.d.ts +1 -0
  45. package/dist/src/ui/components/FolderTrustDialog.js +9 -3
  46. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  47. package/dist/src/ui/components/FolderTrustDialog.test.js +40 -3
  48. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  49. package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
  50. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  51. package/dist/src/ui/components/InputPrompt.js +140 -13
  52. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  53. package/dist/src/ui/components/SettingsDialog.js +65 -34
  54. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  55. package/dist/src/ui/components/SettingsDialog.test.js +107 -47
  56. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  57. package/dist/src/ui/components/StatsDisplay.js +3 -3
  58. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  59. package/dist/src/ui/components/SuggestionsDisplay.js +11 -4
  60. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  61. package/dist/src/ui/components/messages/CompressionMessage.js +2 -1
  62. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  63. package/dist/src/ui/components/messages/DiffRenderer.js +2 -1
  64. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  65. package/dist/src/ui/components/messages/DiffRenderer.test.js +11 -10
  66. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
  67. package/dist/src/ui/components/messages/GeminiMessage.js +2 -1
  68. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  69. package/dist/src/ui/components/messages/UserMessage.js +2 -1
  70. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  71. package/dist/src/ui/components/shared/text-buffer.js +1 -45
  72. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  73. package/dist/src/ui/constants.d.ts +2 -0
  74. package/dist/src/ui/constants.js +2 -0
  75. package/dist/src/ui/constants.js.map +1 -1
  76. package/dist/src/ui/contexts/KeypressContext.d.ts +2 -1
  77. package/dist/src/ui/contexts/KeypressContext.js +22 -3
  78. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  79. package/dist/src/ui/contexts/KeypressContext.test.js +112 -1
  80. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  81. package/dist/src/ui/hooks/atCommandProcessor.js +0 -1
  82. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  83. package/dist/src/ui/hooks/atCommandProcessor.test.js +1 -0
  84. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  85. package/dist/src/ui/hooks/useAtCompletion.js +1 -0
  86. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  87. package/dist/src/ui/hooks/useCommandCompletion.d.ts +4 -1
  88. package/dist/src/ui/hooks/useCommandCompletion.js +29 -8
  89. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  90. package/dist/src/ui/hooks/useFolderTrust.d.ts +1 -0
  91. package/dist/src/ui/hooks/useFolderTrust.js +16 -8
  92. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -1
  93. package/dist/src/ui/hooks/useGeminiStream.d.ts +0 -1
  94. package/dist/src/ui/hooks/useGeminiStream.js +17 -31
  95. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  96. package/dist/src/ui/hooks/usePromptCompletion.d.ts +23 -0
  97. package/dist/src/ui/hooks/usePromptCompletion.js +176 -0
  98. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -0
  99. package/dist/src/ui/hooks/useReactToolScheduler.js +0 -1
  100. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  101. package/dist/src/ui/hooks/useToolScheduler.test.js +32 -24
  102. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  103. package/dist/src/ui/themes/theme-manager.d.ts +2 -0
  104. package/dist/src/ui/themes/theme-manager.js +72 -5
  105. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  106. package/dist/src/ui/themes/theme-manager.test.js +60 -1
  107. package/dist/src/ui/themes/theme-manager.test.js.map +1 -1
  108. package/dist/src/ui/types.d.ts +2 -1
  109. package/dist/src/ui/types.js.map +1 -1
  110. package/dist/src/ui/utils/MarkdownDisplay.js +2 -1
  111. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  112. package/dist/src/ui/utils/MarkdownDisplay.test.js +17 -16
  113. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  114. package/dist/src/ui/utils/commandUtils.js +16 -3
  115. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  116. package/dist/src/ui/utils/commandUtils.test.js +55 -7
  117. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  118. package/dist/src/ui/utils/platformConstants.d.ts +7 -0
  119. package/dist/src/ui/utils/platformConstants.js +7 -0
  120. package/dist/src/ui/utils/platformConstants.js.map +1 -1
  121. package/dist/src/ui/utils/textUtils.d.ts +18 -0
  122. package/dist/src/ui/utils/textUtils.js +44 -0
  123. package/dist/src/ui/utils/textUtils.js.map +1 -1
  124. package/dist/src/utils/license.d.ts +13 -0
  125. package/dist/src/utils/license.js +35 -0
  126. package/dist/src/utils/license.js.map +1 -0
  127. package/dist/src/utils/license.test.d.ts +6 -0
  128. package/dist/src/utils/license.test.js +77 -0
  129. package/dist/src/utils/license.test.js.map +1 -0
  130. package/dist/src/utils/readStdin.js +57 -18
  131. package/dist/src/utils/readStdin.js.map +1 -1
  132. package/dist/src/utils/sandbox.d.ts +1 -1
  133. package/dist/src/utils/sandbox.js +9 -8
  134. package/dist/src/utils/sandbox.js.map +1 -1
  135. package/dist/src/zed-integration/acp.js +2 -1
  136. package/dist/src/zed-integration/acp.js.map +1 -1
  137. package/dist/src/zed-integration/schema.d.ts +116 -13
  138. package/dist/src/zed-integration/schema.js +7 -1
  139. package/dist/src/zed-integration/schema.js.map +1 -1
  140. package/dist/src/zed-integration/zedIntegration.js +130 -94
  141. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  142. package/dist/tsconfig.tsbuildinfo +1 -1
  143. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/SettingsDialog.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SettingsDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/SettingsDialog.tsx"],"names":[],"mappings":"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"}
@@ -26,9 +26,46 @@ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
26
26
  import { SettingsDialog } from './SettingsDialog.js';
27
27
  import { LoadedSettings } from '../../config/settings.js';
28
28
  import { VimModeProvider } from '../contexts/VimModeContext.js';
29
+ import { KeypressProvider } from '../contexts/KeypressContext.js';
29
30
  // Mock the VimModeContext
30
31
  const mockToggleVimEnabled = vi.fn();
31
32
  const mockSetVimMode = vi.fn();
33
+ const createMockSettings = (userSettings = {}, systemSettings = {}, workspaceSettings = {}) => new LoadedSettings({
34
+ settings: { customThemes: {}, mcpServers: {}, ...systemSettings },
35
+ path: '/system/settings.json',
36
+ }, {
37
+ settings: {
38
+ customThemes: {},
39
+ mcpServers: {},
40
+ ...userSettings,
41
+ },
42
+ path: '/user/settings.json',
43
+ }, {
44
+ settings: { customThemes: {}, mcpServers: {}, ...workspaceSettings },
45
+ path: '/workspace/settings.json',
46
+ }, [], true);
47
+ vi.mock('../contexts/SettingsContext.js', async () => {
48
+ const actual = await vi.importActual('../contexts/SettingsContext.js');
49
+ let settings = createMockSettings({ 'a.string.setting': 'initial' });
50
+ return {
51
+ ...actual,
52
+ useSettings: () => ({
53
+ settings,
54
+ setSetting: (key, value) => {
55
+ settings = createMockSettings({ [key]: value });
56
+ },
57
+ getSettingDefinition: (key) => {
58
+ if (key === 'a.string.setting') {
59
+ return {
60
+ type: 'string',
61
+ description: 'A string setting',
62
+ };
63
+ }
64
+ return undefined;
65
+ },
66
+ }),
67
+ };
68
+ });
32
69
  vi.mock('../contexts/VimModeContext.js', async () => {
33
70
  const actual = await vi.importActual('../contexts/VimModeContext.js');
34
71
  return {
@@ -48,14 +85,6 @@ vi.mock('../../utils/settingsUtils.js', async () => {
48
85
  saveModifiedSettings: vi.fn(),
49
86
  };
50
87
  });
51
- // Variables for keypress simulation (not currently used)
52
- // let currentKeypressHandler: ((key: Key) => void) | null = null;
53
- // let isKeypressActive = false;
54
- vi.mock('../hooks/useKeypress.js', () => ({
55
- useKeypress: vi.fn((_handler, _options) => {
56
- // Mock implementation - simplified for test stability
57
- }),
58
- }));
59
88
  // Helper function to simulate key presses (commented out for now)
60
89
  // const simulateKeyPress = async (keyData: Partial<Key> & { name: string }) => {
61
90
  // if (currentKeypressHandler) {
@@ -106,12 +135,12 @@ describe('SettingsDialog', () => {
106
135
  }, {
107
136
  settings: { customThemes: {}, mcpServers: {}, ...workspaceSettings },
108
137
  path: '/workspace/settings.json',
109
- }, []);
138
+ }, [], true);
110
139
  describe('Initial Rendering', () => {
111
140
  it('should render the settings dialog with default state', () => {
112
141
  const settings = createMockSettings();
113
142
  const onSelect = vi.fn();
114
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
143
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
115
144
  const output = lastFrame();
116
145
  expect(output).toContain('Settings');
117
146
  expect(output).toContain('Apply To');
@@ -120,7 +149,7 @@ describe('SettingsDialog', () => {
120
149
  it('should show settings list with default values', () => {
121
150
  const settings = createMockSettings();
122
151
  const onSelect = vi.fn();
123
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
152
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
124
153
  const output = lastFrame();
125
154
  // Should show some default settings
126
155
  expect(output).toContain('●'); // Active indicator
@@ -128,7 +157,7 @@ describe('SettingsDialog', () => {
128
157
  it('should highlight first setting by default', () => {
129
158
  const settings = createMockSettings();
130
159
  const onSelect = vi.fn();
131
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
160
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
132
161
  const output = lastFrame();
133
162
  // First item should be highlighted with green color and active indicator
134
163
  expect(output).toContain('●');
@@ -138,7 +167,7 @@ describe('SettingsDialog', () => {
138
167
  it('should navigate down with arrow key', async () => {
139
168
  const settings = createMockSettings();
140
169
  const onSelect = vi.fn();
141
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
170
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
142
171
  // Press down arrow
143
172
  stdin.write('\u001B[B'); // Down arrow
144
173
  await wait();
@@ -148,7 +177,7 @@ describe('SettingsDialog', () => {
148
177
  it('should navigate up with arrow key', async () => {
149
178
  const settings = createMockSettings();
150
179
  const onSelect = vi.fn();
151
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
180
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
152
181
  // First go down, then up
153
182
  stdin.write('\u001B[B'); // Down arrow
154
183
  await wait();
@@ -159,7 +188,7 @@ describe('SettingsDialog', () => {
159
188
  it('should navigate with vim keys (j/k)', async () => {
160
189
  const settings = createMockSettings();
161
190
  const onSelect = vi.fn();
162
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
191
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
163
192
  // Navigate with vim keys
164
193
  stdin.write('j'); // Down
165
194
  await wait();
@@ -170,7 +199,7 @@ describe('SettingsDialog', () => {
170
199
  it('should not navigate beyond bounds', async () => {
171
200
  const settings = createMockSettings();
172
201
  const onSelect = vi.fn();
173
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
202
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
174
203
  // Try to go up from first item
175
204
  stdin.write('\u001B[A'); // Up arrow
176
205
  await wait();
@@ -182,7 +211,7 @@ describe('SettingsDialog', () => {
182
211
  it('should toggle setting with Enter key', async () => {
183
212
  const settings = createMockSettings();
184
213
  const onSelect = vi.fn();
185
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
214
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
186
215
  // Press Enter to toggle current setting
187
216
  stdin.write('\u000D'); // Enter key
188
217
  await wait();
@@ -191,7 +220,7 @@ describe('SettingsDialog', () => {
191
220
  it('should toggle setting with Space key', async () => {
192
221
  const settings = createMockSettings();
193
222
  const onSelect = vi.fn();
194
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
223
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
195
224
  // Press Space to toggle current setting
196
225
  stdin.write(' '); // Space key
197
226
  await wait();
@@ -200,7 +229,7 @@ describe('SettingsDialog', () => {
200
229
  it('should handle vim mode setting specially', async () => {
201
230
  const settings = createMockSettings();
202
231
  const onSelect = vi.fn();
203
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
232
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
204
233
  // Navigate to vim mode setting and toggle it
205
234
  // This would require knowing the exact position, so we'll just test that the mock is called
206
235
  stdin.write('\u000D'); // Enter key
@@ -213,7 +242,7 @@ describe('SettingsDialog', () => {
213
242
  it('should switch between scopes', async () => {
214
243
  const settings = createMockSettings();
215
244
  const onSelect = vi.fn();
216
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
245
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
217
246
  // Switch to scope focus
218
247
  stdin.write('\t'); // Tab key
219
248
  await wait();
@@ -225,7 +254,7 @@ describe('SettingsDialog', () => {
225
254
  it('should reset to settings focus when scope is selected', async () => {
226
255
  const settings = createMockSettings();
227
256
  const onSelect = vi.fn();
228
- const { lastFrame, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
257
+ const { lastFrame, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
229
258
  // Wait for initial render
230
259
  await waitFor(() => {
231
260
  expect(lastFrame()).toContain('Hide Window Title');
@@ -242,7 +271,7 @@ describe('SettingsDialog', () => {
242
271
  it('should show restart prompt for restart-required settings', async () => {
243
272
  const settings = createMockSettings();
244
273
  const onRestartRequest = vi.fn();
245
- const { unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }));
274
+ const { unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }) }));
246
275
  // This test would need to trigger a restart-required setting change
247
276
  // The exact steps depend on which settings require restart
248
277
  await wait();
@@ -251,7 +280,7 @@ describe('SettingsDialog', () => {
251
280
  it('should handle restart request when r is pressed', async () => {
252
281
  const settings = createMockSettings();
253
282
  const onRestartRequest = vi.fn();
254
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }));
283
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }) }));
255
284
  // Press 'r' key (this would only work if restart prompt is showing)
256
285
  stdin.write('r');
257
286
  await wait();
@@ -263,7 +292,7 @@ describe('SettingsDialog', () => {
263
292
  it('should call onSelect with undefined when Escape is pressed', async () => {
264
293
  const settings = createMockSettings();
265
294
  const onSelect = vi.fn();
266
- const { lastFrame, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
295
+ const { lastFrame, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
267
296
  // Wait for initial render
268
297
  await waitFor(() => {
269
298
  expect(lastFrame()).toContain('Hide Window Title');
@@ -280,7 +309,7 @@ describe('SettingsDialog', () => {
280
309
  it('should persist settings across scope changes', async () => {
281
310
  const settings = createMockSettings({ vimMode: true });
282
311
  const onSelect = vi.fn();
283
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
312
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
284
313
  // Switch to scope selector
285
314
  stdin.write('\t'); // Tab
286
315
  await wait();
@@ -295,7 +324,7 @@ describe('SettingsDialog', () => {
295
324
  { vimMode: false }, // System settings
296
325
  { autoUpdate: false });
297
326
  const onSelect = vi.fn();
298
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
327
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
299
328
  // Should show user scope values initially
300
329
  const output = lastFrame();
301
330
  expect(output).toContain('Settings');
@@ -306,7 +335,7 @@ describe('SettingsDialog', () => {
306
335
  mockToggleVimEnabled.mockRejectedValue(new Error('Toggle failed'));
307
336
  const settings = createMockSettings();
308
337
  const onSelect = vi.fn();
309
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
338
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
310
339
  // Try to toggle a setting (this might trigger vim mode toggle)
311
340
  stdin.write('\u000D'); // Enter
312
341
  await wait();
@@ -318,7 +347,7 @@ describe('SettingsDialog', () => {
318
347
  it('should track modified settings correctly', async () => {
319
348
  const settings = createMockSettings();
320
349
  const onSelect = vi.fn();
321
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
350
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
322
351
  // Toggle a setting
323
352
  stdin.write('\u000D'); // Enter
324
353
  await wait();
@@ -333,7 +362,7 @@ describe('SettingsDialog', () => {
333
362
  it('should handle scrolling when there are many settings', async () => {
334
363
  const settings = createMockSettings();
335
364
  const onSelect = vi.fn();
336
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
365
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
337
366
  // Navigate down many times to test scrolling
338
367
  for (let i = 0; i < 10; i++) {
339
368
  stdin.write('\u001B[B'); // Down arrow
@@ -346,7 +375,7 @@ describe('SettingsDialog', () => {
346
375
  it('should sync with VimModeContext when vim mode is toggled', async () => {
347
376
  const settings = createMockSettings();
348
377
  const onSelect = vi.fn();
349
- const { stdin, unmount } = render(_jsx(VimModeProvider, { settings: settings, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
378
+ const { stdin, unmount } = render(_jsx(VimModeProvider, { settings: settings, children: _jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }) }));
350
379
  // Navigate to and toggle vim mode setting
351
380
  // This would require knowing the exact position of vim mode setting
352
381
  stdin.write('\u000D'); // Enter
@@ -360,7 +389,7 @@ describe('SettingsDialog', () => {
360
389
  { hideWindowTitle: true }, // System settings
361
390
  { ideMode: false });
362
391
  const onSelect = vi.fn();
363
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
392
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
364
393
  const output = lastFrame();
365
394
  // Should contain settings labels
366
395
  expect(output).toContain('Settings');
@@ -368,7 +397,7 @@ describe('SettingsDialog', () => {
368
397
  it('should handle immediate settings save for non-restart-required settings', async () => {
369
398
  const settings = createMockSettings();
370
399
  const onSelect = vi.fn();
371
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
400
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
372
401
  // Toggle a non-restart-required setting (like hideTips)
373
402
  stdin.write('\u000D'); // Enter - toggle current setting
374
403
  await wait();
@@ -378,7 +407,7 @@ describe('SettingsDialog', () => {
378
407
  it('should show restart prompt for restart-required settings', async () => {
379
408
  const settings = createMockSettings();
380
409
  const onSelect = vi.fn();
381
- const { lastFrame, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
410
+ const { lastFrame, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
382
411
  // This test would need to navigate to a specific restart-required setting
383
412
  // Since we can't easily target specific settings, we test the general behavior
384
413
  await wait();
@@ -389,7 +418,7 @@ describe('SettingsDialog', () => {
389
418
  it('should clear restart prompt when switching scopes', async () => {
390
419
  const settings = createMockSettings();
391
420
  const onSelect = vi.fn();
392
- const { unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
421
+ const { unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
393
422
  // Restart prompt should be cleared when switching scopes
394
423
  unmount();
395
424
  });
@@ -399,7 +428,7 @@ describe('SettingsDialog', () => {
399
428
  const settings = createMockSettings({}, { vimMode: true, hideWindowTitle: false }, // System settings
400
429
  {});
401
430
  const onSelect = vi.fn();
402
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
431
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
403
432
  const output = lastFrame();
404
433
  // Settings should show inherited values
405
434
  expect(output).toContain('Settings');
@@ -409,7 +438,7 @@ describe('SettingsDialog', () => {
409
438
  { vimMode: true }, // System default
410
439
  {});
411
440
  const onSelect = vi.fn();
412
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
441
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
413
442
  const output = lastFrame();
414
443
  // Should show settings with override indicators
415
444
  expect(output).toContain('Settings');
@@ -419,7 +448,7 @@ describe('SettingsDialog', () => {
419
448
  it('should handle rapid key presses gracefully', async () => {
420
449
  const settings = createMockSettings();
421
450
  const onSelect = vi.fn();
422
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
451
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
423
452
  // Rapid navigation
424
453
  for (let i = 0; i < 5; i++) {
425
454
  stdin.write('\u001B[B'); // Down arrow
@@ -432,7 +461,7 @@ describe('SettingsDialog', () => {
432
461
  it('should handle Ctrl+C to reset current setting to default', async () => {
433
462
  const settings = createMockSettings({ vimMode: true }); // Start with vimMode enabled
434
463
  const onSelect = vi.fn();
435
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
464
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
436
465
  // Press Ctrl+C to reset current setting to default
437
466
  stdin.write('\u0003'); // Ctrl+C
438
467
  await wait();
@@ -442,7 +471,7 @@ describe('SettingsDialog', () => {
442
471
  it('should handle Ctrl+L to reset current setting to default', async () => {
443
472
  const settings = createMockSettings({ vimMode: true }); // Start with vimMode enabled
444
473
  const onSelect = vi.fn();
445
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
474
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
446
475
  // Press Ctrl+L to reset current setting to default
447
476
  stdin.write('\u000C'); // Ctrl+L
448
477
  await wait();
@@ -452,7 +481,7 @@ describe('SettingsDialog', () => {
452
481
  it('should handle navigation when only one setting exists', async () => {
453
482
  const settings = createMockSettings();
454
483
  const onSelect = vi.fn();
455
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
484
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
456
485
  // Try to navigate when potentially at bounds
457
486
  stdin.write('\u001B[B'); // Down
458
487
  await wait();
@@ -463,7 +492,7 @@ describe('SettingsDialog', () => {
463
492
  it('should properly handle Tab navigation between sections', async () => {
464
493
  const settings = createMockSettings();
465
494
  const onSelect = vi.fn();
466
- const { lastFrame, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
495
+ const { lastFrame, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
467
496
  // Wait for initial render
468
497
  await waitFor(() => {
469
498
  expect(lastFrame()).toContain('Hide Window Title');
@@ -482,7 +511,7 @@ describe('SettingsDialog', () => {
482
511
  const settings = createMockSettings({ vimMode: null }, // Invalid value
483
512
  {}, {});
484
513
  const onSelect = vi.fn();
485
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
514
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
486
515
  // Should still render without crashing
487
516
  expect(lastFrame()).toContain('Settings');
488
517
  });
@@ -490,7 +519,7 @@ describe('SettingsDialog', () => {
490
519
  const settings = createMockSettings();
491
520
  const onSelect = vi.fn();
492
521
  // Should not crash even if some settings are missing definitions
493
- const { lastFrame } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
522
+ const { lastFrame } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
494
523
  expect(lastFrame()).toContain('Settings');
495
524
  });
496
525
  });
@@ -498,7 +527,7 @@ describe('SettingsDialog', () => {
498
527
  it('should handle complete user workflow: navigate, toggle, change scope, exit', async () => {
499
528
  const settings = createMockSettings();
500
529
  const onSelect = vi.fn();
501
- const { lastFrame, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
530
+ const { lastFrame, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
502
531
  // Wait for initial render
503
532
  await waitFor(() => {
504
533
  expect(lastFrame()).toContain('Hide Window Title');
@@ -516,7 +545,7 @@ describe('SettingsDialog', () => {
516
545
  it('should allow changing multiple settings without losing pending changes', async () => {
517
546
  const settings = createMockSettings();
518
547
  const onSelect = vi.fn();
519
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
548
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
520
549
  // Toggle first setting (should require restart)
521
550
  stdin.write('\u000D'); // Enter
522
551
  await wait();
@@ -537,7 +566,7 @@ describe('SettingsDialog', () => {
537
566
  it('should maintain state consistency during complex interactions', async () => {
538
567
  const settings = createMockSettings({ vimMode: true });
539
568
  const onSelect = vi.fn();
540
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: onSelect }));
569
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
541
570
  // Multiple scope changes
542
571
  stdin.write('\t'); // Tab to scope
543
572
  await wait();
@@ -555,7 +584,7 @@ describe('SettingsDialog', () => {
555
584
  it('should handle restart workflow correctly', async () => {
556
585
  const settings = createMockSettings();
557
586
  const onRestartRequest = vi.fn();
558
- const { stdin, unmount } = render(_jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }));
587
+ const { stdin, unmount } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: () => { }, onRestartRequest: onRestartRequest }) }));
559
588
  // This would test the restart workflow if we could trigger it
560
589
  stdin.write('r'); // Try restart key
561
590
  await wait();
@@ -564,5 +593,36 @@ describe('SettingsDialog', () => {
564
593
  unmount();
565
594
  });
566
595
  });
596
+ describe('String Settings Editing', () => {
597
+ it('should allow editing and committing a string setting', async () => {
598
+ let settings = createMockSettings({ 'a.string.setting': 'initial' });
599
+ const onSelect = vi.fn();
600
+ const { stdin, unmount, rerender } = render(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
601
+ // Wait for the dialog to render
602
+ await wait();
603
+ // Navigate to the last setting
604
+ for (let i = 0; i < 20; i++) {
605
+ stdin.write('j'); // Down
606
+ await wait(10);
607
+ }
608
+ // Press Enter to start editing
609
+ stdin.write('\r');
610
+ await wait();
611
+ // Type a new value
612
+ stdin.write('new value');
613
+ await wait();
614
+ // Press Enter to commit
615
+ stdin.write('\r');
616
+ await wait();
617
+ settings = createMockSettings({ 'a.string.setting': 'new value' }, {}, {});
618
+ rerender(_jsx(KeypressProvider, { kittyProtocolEnabled: false, children: _jsx(SettingsDialog, { settings: settings, onSelect: onSelect }) }));
619
+ await wait();
620
+ // Press Escape to exit
621
+ stdin.write('\u001B');
622
+ await wait();
623
+ expect(onSelect).toHaveBeenCalledWith(undefined, 'User');
624
+ unmount();
625
+ });
626
+ });
567
627
  });
568
628
  //# sourceMappingURL=SettingsDialog.test.js.map