@google/gemini-cli 0.12.0-nightly.20251023.c4c0c0d1 → 0.12.0-preview.0
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 +7 -5
- package/dist/package.json +3 -3
- package/dist/src/commands/extensions/disable.d.ts +1 -1
- package/dist/src/commands/extensions/disable.js +5 -4
- package/dist/src/commands/extensions/disable.js.map +1 -1
- package/dist/src/commands/extensions/enable.d.ts +1 -1
- package/dist/src/commands/extensions/enable.js +3 -2
- package/dist/src/commands/extensions/enable.js.map +1 -1
- package/dist/src/commands/extensions/install.js +2 -1
- package/dist/src/commands/extensions/install.js.map +1 -1
- package/dist/src/commands/extensions/install.test.js +1 -0
- package/dist/src/commands/extensions/install.test.js.map +1 -1
- package/dist/src/commands/extensions/link.js +2 -1
- package/dist/src/commands/extensions/link.js.map +1 -1
- package/dist/src/commands/extensions/list.js +2 -2
- package/dist/src/commands/extensions/list.js.map +1 -1
- package/dist/src/commands/extensions/uninstall.js +2 -1
- package/dist/src/commands/extensions/uninstall.js.map +1 -1
- package/dist/src/commands/extensions/update.js +2 -2
- package/dist/src/commands/extensions/update.js.map +1 -1
- package/dist/src/commands/mcp/list.js +2 -2
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/config/config.d.ts +6 -3
- package/dist/src/config/config.js +56 -11
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +208 -175
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/extension-manager.d.ts +23 -10
- package/dist/src/config/extension-manager.js +90 -64
- package/dist/src/config/extension-manager.js.map +1 -1
- package/dist/src/config/extension.test.js +183 -76
- package/dist/src/config/extension.test.js.map +1 -1
- package/dist/src/config/extensions/extensionEnablement.d.ts +1 -1
- package/dist/src/config/extensions/extensionEnablement.js +3 -2
- package/dist/src/config/extensions/extensionEnablement.js.map +1 -1
- package/dist/src/config/extensions/extensionEnablement.test.js +10 -10
- package/dist/src/config/extensions/extensionEnablement.test.js.map +1 -1
- package/dist/src/config/extensions/extensionSettings.d.ts +3 -3
- package/dist/src/config/extensions/extensionSettings.js +74 -24
- package/dist/src/config/extensions/extensionSettings.js.map +1 -1
- package/dist/src/config/extensions/extensionSettings.test.js +145 -24
- package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
- package/dist/src/config/extensions/github.js +3 -3
- package/dist/src/config/extensions/github.js.map +1 -1
- package/dist/src/config/extensions/github.test.js +1 -1
- package/dist/src/config/extensions/github.test.js.map +1 -1
- package/dist/src/config/extensions/github_fetch.d.ts +1 -1
- package/dist/src/config/extensions/github_fetch.js +13 -1
- package/dist/src/config/extensions/github_fetch.js.map +1 -1
- package/dist/src/config/extensions/github_fetch.test.d.ts +6 -0
- package/dist/src/config/extensions/github_fetch.test.js +169 -0
- package/dist/src/config/extensions/github_fetch.test.js.map +1 -0
- package/dist/src/config/extensions/update.js +7 -6
- package/dist/src/config/extensions/update.js.map +1 -1
- package/dist/src/config/extensions/update.test.js +54 -30
- package/dist/src/config/extensions/update.test.js.map +1 -1
- package/dist/src/config/keyBindings.js +1 -1
- package/dist/src/config/keyBindings.js.map +1 -1
- package/dist/src/config/policies/read-only.toml +56 -0
- package/dist/src/config/policies/write.toml +63 -0
- package/dist/src/config/policies/yolo.toml +31 -0
- package/dist/src/config/policy-engine.integration.test.js +41 -38
- package/dist/src/config/policy-engine.integration.test.js.map +1 -1
- package/dist/src/config/policy-toml-loader.d.ts +46 -0
- package/dist/src/config/policy-toml-loader.js +314 -0
- package/dist/src/config/policy-toml-loader.js.map +1 -0
- package/dist/src/config/policy-toml-loader.test.d.ts +6 -0
- package/dist/src/config/policy-toml-loader.test.js +626 -0
- package/dist/src/config/policy-toml-loader.test.js.map +1 -0
- package/dist/src/config/policy.d.ts +9 -2
- package/dist/src/config/policy.js +139 -110
- package/dist/src/config/policy.js.map +1 -1
- package/dist/src/config/policy.test.js +780 -82
- package/dist/src/config/policy.test.js.map +1 -1
- package/dist/src/config/settings.test.js +6 -6
- package/dist/src/config/settings.test.js.map +1 -1
- package/dist/src/core/initializer.js +2 -1
- package/dist/src/core/initializer.js.map +1 -1
- package/dist/src/gemini.js +6 -17
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +27 -2
- 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/generated/git-commit.js.map +1 -1
- package/dist/src/nonInteractiveCli.js +16 -4
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +67 -12
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/test-utils/render.d.ts +12 -0
- package/dist/src/test-utils/render.js +28 -1
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/test-utils/render.test.d.ts +6 -0
- package/dist/src/test-utils/render.test.js +54 -0
- package/dist/src/test-utils/render.test.js.map +1 -0
- package/dist/src/ui/AppContainer.js +29 -23
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +8 -0
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.js +1 -1
- package/dist/src/ui/commands/directoryCommand.js.map +1 -1
- package/dist/src/ui/commands/extensionsCommand.js +45 -1
- package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
- package/dist/src/ui/commands/extensionsCommand.test.js +64 -1
- package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.js +1 -1
- package/dist/src/ui/commands/memoryCommand.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.test.js +3 -1
- package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
- package/dist/src/ui/components/ConsoleSummaryDisplay.js +1 -1
- package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/DetailedMessagesDisplay.js +1 -1
- package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js +4 -4
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Footer.js +1 -1
- package/dist/src/ui/components/Footer.js.map +1 -1
- package/dist/src/ui/components/Footer.test.js +24 -0
- package/dist/src/ui/components/Footer.test.js.map +1 -1
- package/dist/src/ui/components/Help.test.js +0 -1
- package/dist/src/ui/components/Help.test.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.test.js +442 -342
- package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/ModelDialog.test.js +5 -5
- package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
- package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js +11 -12
- package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +13 -14
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
- package/dist/src/ui/components/ThemeDialog.test.js +1 -2
- package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.test.js +11 -12
- package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.test.js +2 -1
- package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
- package/dist/src/ui/components/views/ExtensionsList.d.ts +1 -1
- package/dist/src/ui/components/views/ExtensionsList.js +4 -1
- package/dist/src/ui/components/views/ExtensionsList.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.d.ts +3 -2
- package/dist/src/ui/contexts/KeypressContext.js +114 -64
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +166 -482
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/SessionContext.test.js +27 -13
- package/dist/src/ui/contexts/SessionContext.test.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.js +2 -2
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/shellCommandProcessor.test.js +18 -2
- package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.test.js +74 -80
- package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/useAtCompletion.test.js +32 -23
- package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +2 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.test.js +79 -78
- package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useConsoleMessages.test.js +26 -9
- package/dist/src/ui/hooks/useConsoleMessages.test.js.map +1 -1
- package/dist/src/ui/hooks/useEditorSettings.test.js +40 -34
- package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
- package/dist/src/ui/hooks/useExtensionUpdates.d.ts +1 -2
- package/dist/src/ui/hooks/useExtensionUpdates.js +4 -2
- package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
- package/dist/src/ui/hooks/useExtensionUpdates.test.js +37 -26
- package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
- package/dist/src/ui/hooks/useFlickerDetector.test.js +9 -5
- package/dist/src/ui/hooks/useFlickerDetector.test.js.map +1 -1
- package/dist/src/ui/hooks/useFocus.test.js +25 -9
- package/dist/src/ui/hooks/useFocus.test.js.map +1 -1
- package/dist/src/ui/hooks/useFolderTrust.test.js +45 -22
- package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +56 -19
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +155 -74
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useGitBranchName.test.js +29 -16
- package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
- package/dist/src/ui/hooks/useHistoryManager.test.js +2 -1
- package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -1
- package/dist/src/ui/hooks/useIdeTrustListener.test.js +24 -7
- package/dist/src/ui/hooks/useIdeTrustListener.test.js.map +1 -1
- package/dist/src/ui/hooks/useInputHistory.test.js +2 -1
- package/dist/src/ui/hooks/useInputHistory.test.js.map +1 -1
- package/dist/src/ui/hooks/useInputHistoryStore.test.js +2 -1
- package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -1
- package/dist/src/ui/hooks/useKeypress.test.js +94 -113
- package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +24 -6
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/useMemoryMonitor.test.js +10 -5
- package/dist/src/ui/hooks/useMemoryMonitor.test.js.map +1 -1
- package/dist/src/ui/hooks/useMessageQueue.test.js +61 -45
- package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -1
- package/dist/src/ui/hooks/useModelCommand.test.js +18 -11
- package/dist/src/ui/hooks/useModelCommand.test.js.map +1 -1
- package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +2 -2
- package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.js +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.test.js +83 -110
- package/dist/src/ui/hooks/usePhraseCycler.test.js.map +1 -1
- package/dist/src/ui/hooks/usePrivacySettings.test.js +26 -10
- package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
- package/dist/src/ui/hooks/useQuotaAndFallback.js +13 -14
- package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
- package/dist/src/ui/hooks/useQuotaAndFallback.test.js +33 -40
- package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.d.ts +8 -1
- package/dist/src/ui/hooks/useReactToolScheduler.js +37 -26
- package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.test.js +1 -1
- package/dist/src/ui/hooks/useReactToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +2 -2
- package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.test.js +193 -132
- package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
- package/dist/src/ui/hooks/useShellHistory.test.js +40 -16
- package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -1
- package/dist/src/ui/hooks/useSlashCompletion.test.js +54 -49
- package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
- package/dist/src/ui/hooks/useTimer.test.js +43 -14
- package/dist/src/ui/hooks/useTimer.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js +163 -74
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/vim.test.js +251 -356
- package/dist/src/ui/hooks/vim.test.js.map +1 -1
- package/dist/src/ui/keyMatchers.test.js +3 -3
- package/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/utils/textOutput.d.ts +25 -0
- package/dist/src/ui/utils/textOutput.js +49 -0
- package/dist/src/ui/utils/textOutput.js.map +1 -0
- package/dist/src/ui/utils/textOutput.test.d.ts +6 -0
- package/dist/src/ui/utils/textOutput.test.js +79 -0
- package/dist/src/ui/utils/textOutput.test.js.map +1 -0
- package/dist/src/ui/utils/updateCheck.d.ts +7 -1
- package/dist/src/ui/utils/updateCheck.js +27 -26
- package/dist/src/ui/utils/updateCheck.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.test.js +19 -49
- package/dist/src/ui/utils/updateCheck.test.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.js +9 -3
- package/dist/src/utils/handleAutoUpdate.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.d.ts +2 -2
- package/dist/src/zed-integration/zedIntegration.js +9 -16
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/google-gemini-cli-0.12.0-nightly.20251022.0542de95.tgz +0 -0
|
@@ -7,10 +7,11 @@ import { PassThrough } from 'node:stream';
|
|
|
7
7
|
import { BACKSLASH_ENTER_DETECTION_WINDOW_MS, CHAR_CODE_ESC, KITTY_CTRL_C, KITTY_KEYCODE_BACKSPACE, KITTY_KEYCODE_ENTER, KITTY_KEYCODE_NUMPAD_ENTER, KITTY_KEYCODE_TAB, MAX_KITTY_SEQUENCE_LENGTH, KITTY_MODIFIER_BASE, KITTY_MODIFIER_EVENT_TYPES_OFFSET, MODIFIER_SHIFT_BIT, MODIFIER_ALT_BIT, MODIFIER_CTRL_BIT, } from '../utils/platformConstants.js';
|
|
8
8
|
import { FOCUS_IN, FOCUS_OUT } from '../hooks/useFocus.js';
|
|
9
9
|
const ESC = '\u001B';
|
|
10
|
-
export const
|
|
11
|
-
export const
|
|
10
|
+
export const PASTE_MODE_START = `${ESC}[200~`;
|
|
11
|
+
export const PASTE_MODE_END = `${ESC}[201~`;
|
|
12
12
|
export const DRAG_COMPLETION_TIMEOUT_MS = 100; // Broadcast full path after 100ms if no more input
|
|
13
13
|
export const KITTY_SEQUENCE_TIMEOUT_MS = 50; // Flush incomplete kitty sequences after 50ms
|
|
14
|
+
export const PASTE_CODE_TIMEOUT_MS = 50; // Flush incomplete paste code after 50ms
|
|
14
15
|
export const SINGLE_QUOTE = "'";
|
|
15
16
|
export const DOUBLE_QUOTE = '"';
|
|
16
17
|
const ALT_KEY_CHARACTER_MAP = {
|
|
@@ -306,6 +307,98 @@ function parseKittyPrefix(buffer) {
|
|
|
306
307
|
}
|
|
307
308
|
return null;
|
|
308
309
|
}
|
|
310
|
+
/**
|
|
311
|
+
* Returns the first index before which we are certain there is no paste marker.
|
|
312
|
+
*/
|
|
313
|
+
function earliestPossiblePasteMarker(data) {
|
|
314
|
+
// Check data for full start-paste or end-paste markers.
|
|
315
|
+
const startIndex = data.indexOf(PASTE_MODE_START);
|
|
316
|
+
const endIndex = data.indexOf(PASTE_MODE_END);
|
|
317
|
+
if (startIndex !== -1 && endIndex !== -1) {
|
|
318
|
+
return Math.min(startIndex, endIndex);
|
|
319
|
+
}
|
|
320
|
+
else if (startIndex !== -1) {
|
|
321
|
+
return startIndex;
|
|
322
|
+
}
|
|
323
|
+
else if (endIndex !== -1) {
|
|
324
|
+
return endIndex;
|
|
325
|
+
}
|
|
326
|
+
// data contains no full start-paste or end-paste.
|
|
327
|
+
// Check if data ends with a prefix of start-paste or end-paste.
|
|
328
|
+
const codeLength = PASTE_MODE_START.length;
|
|
329
|
+
for (let i = Math.min(data.length, codeLength - 1); i > 0; i--) {
|
|
330
|
+
const candidate = data.slice(data.length - i);
|
|
331
|
+
if (PASTE_MODE_START.indexOf(candidate) === 0 ||
|
|
332
|
+
PASTE_MODE_END.indexOf(candidate) === 0) {
|
|
333
|
+
return data.length - i;
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
return data.length;
|
|
337
|
+
}
|
|
338
|
+
/**
|
|
339
|
+
* A generator that takes in data chunks and spits out paste-start and
|
|
340
|
+
* paste-end keypresses. All non-paste marker data is passed to passthrough.
|
|
341
|
+
*/
|
|
342
|
+
function* pasteMarkerParser(passthrough, keypressHandler) {
|
|
343
|
+
while (true) {
|
|
344
|
+
let data = yield;
|
|
345
|
+
if (data.length === 0) {
|
|
346
|
+
continue; // we timed out
|
|
347
|
+
}
|
|
348
|
+
while (true) {
|
|
349
|
+
const index = earliestPossiblePasteMarker(data);
|
|
350
|
+
if (index === data.length) {
|
|
351
|
+
// no possible paste markers were found
|
|
352
|
+
passthrough.write(data);
|
|
353
|
+
break;
|
|
354
|
+
}
|
|
355
|
+
if (index > 0) {
|
|
356
|
+
// snip off and send the part that doesn't have a paste marker
|
|
357
|
+
passthrough.write(data.slice(0, index));
|
|
358
|
+
data = data.slice(index);
|
|
359
|
+
}
|
|
360
|
+
// data starts with a possible paste marker
|
|
361
|
+
const codeLength = PASTE_MODE_START.length;
|
|
362
|
+
if (data.length < codeLength) {
|
|
363
|
+
// we have a prefix. Concat the next data and try again.
|
|
364
|
+
const newData = yield;
|
|
365
|
+
if (newData.length === 0) {
|
|
366
|
+
// we timed out. Just dump what we have and start over.
|
|
367
|
+
passthrough.write(data);
|
|
368
|
+
break;
|
|
369
|
+
}
|
|
370
|
+
data += newData;
|
|
371
|
+
}
|
|
372
|
+
else if (data.startsWith(PASTE_MODE_START)) {
|
|
373
|
+
keypressHandler(undefined, {
|
|
374
|
+
name: 'paste-start',
|
|
375
|
+
ctrl: false,
|
|
376
|
+
meta: false,
|
|
377
|
+
shift: false,
|
|
378
|
+
paste: false,
|
|
379
|
+
sequence: '',
|
|
380
|
+
});
|
|
381
|
+
data = data.slice(PASTE_MODE_START.length);
|
|
382
|
+
}
|
|
383
|
+
else if (data.startsWith(PASTE_MODE_END)) {
|
|
384
|
+
keypressHandler(undefined, {
|
|
385
|
+
name: 'paste-end',
|
|
386
|
+
ctrl: false,
|
|
387
|
+
meta: false,
|
|
388
|
+
shift: false,
|
|
389
|
+
paste: false,
|
|
390
|
+
sequence: '',
|
|
391
|
+
});
|
|
392
|
+
data = data.slice(PASTE_MODE_END.length);
|
|
393
|
+
}
|
|
394
|
+
else {
|
|
395
|
+
// This should never happen.
|
|
396
|
+
passthrough.write(data);
|
|
397
|
+
break;
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
}
|
|
309
402
|
const KeypressContext = createContext(undefined);
|
|
310
403
|
export function useKeypressContext() {
|
|
311
404
|
const context = useContext(KeypressContext);
|
|
@@ -314,17 +407,8 @@ export function useKeypressContext() {
|
|
|
314
407
|
}
|
|
315
408
|
return context;
|
|
316
409
|
}
|
|
317
|
-
/**
|
|
318
|
-
* Determines if the passthrough stream workaround should be used.
|
|
319
|
-
* This is necessary for Node.js versions older than 20 or when the
|
|
320
|
-
* PASTE_WORKAROUND environment variable is set, to correctly handle
|
|
321
|
-
* paste events.
|
|
322
|
-
*/
|
|
323
410
|
function shouldUsePassthrough() {
|
|
324
|
-
|
|
325
|
-
return (nodeMajorVersion < 20 ||
|
|
326
|
-
process.env['PASTE_WORKAROUND'] === '1' ||
|
|
327
|
-
process.env['PASTE_WORKAROUND'] === 'true');
|
|
411
|
+
return process.env['PASTE_WORKAROUND'] !== 'false';
|
|
328
412
|
}
|
|
329
413
|
export function KeypressProvider({ children, kittyProtocolEnabled, config, debugKeystrokeLogging, }) {
|
|
330
414
|
const { stdin, setRawMode } = useStdin();
|
|
@@ -498,8 +582,8 @@ export function KeypressProvider({ children, kittyProtocolEnabled, config, debug
|
|
|
498
582
|
// Check if this could start a kitty sequence
|
|
499
583
|
const startsWithEsc = key.sequence.startsWith(ESC);
|
|
500
584
|
const isExcluded = [
|
|
501
|
-
|
|
502
|
-
|
|
585
|
+
PASTE_MODE_START,
|
|
586
|
+
PASTE_MODE_END,
|
|
503
587
|
FOCUS_IN,
|
|
504
588
|
FOCUS_OUT,
|
|
505
589
|
].some((prefix) => key.sequence.startsWith(prefix));
|
|
@@ -613,49 +697,7 @@ export function KeypressProvider({ children, kittyProtocolEnabled, config, debug
|
|
|
613
697
|
}
|
|
614
698
|
broadcast({ ...key, paste: pasteBuffer !== null });
|
|
615
699
|
};
|
|
616
|
-
|
|
617
|
-
const pasteModePrefixBuffer = Buffer.from(PASTE_MODE_PREFIX);
|
|
618
|
-
const pasteModeSuffixBuffer = Buffer.from(PASTE_MODE_SUFFIX);
|
|
619
|
-
let pos = 0;
|
|
620
|
-
while (pos < data.length) {
|
|
621
|
-
const prefixPos = data.indexOf(pasteModePrefixBuffer, pos);
|
|
622
|
-
const suffixPos = data.indexOf(pasteModeSuffixBuffer, pos);
|
|
623
|
-
const isPrefixNext = prefixPos !== -1 && (suffixPos === -1 || prefixPos < suffixPos);
|
|
624
|
-
const isSuffixNext = suffixPos !== -1 && (prefixPos === -1 || suffixPos < prefixPos);
|
|
625
|
-
let nextMarkerPos = -1;
|
|
626
|
-
let markerLength = 0;
|
|
627
|
-
if (isPrefixNext) {
|
|
628
|
-
nextMarkerPos = prefixPos;
|
|
629
|
-
}
|
|
630
|
-
else if (isSuffixNext) {
|
|
631
|
-
nextMarkerPos = suffixPos;
|
|
632
|
-
}
|
|
633
|
-
markerLength = pasteModeSuffixBuffer.length;
|
|
634
|
-
if (nextMarkerPos === -1) {
|
|
635
|
-
keypressStream.write(data.slice(pos));
|
|
636
|
-
return;
|
|
637
|
-
}
|
|
638
|
-
const nextData = data.slice(pos, nextMarkerPos);
|
|
639
|
-
if (nextData.length > 0) {
|
|
640
|
-
keypressStream.write(nextData);
|
|
641
|
-
}
|
|
642
|
-
const createPasteKeyEvent = (name) => ({
|
|
643
|
-
name,
|
|
644
|
-
ctrl: false,
|
|
645
|
-
meta: false,
|
|
646
|
-
shift: false,
|
|
647
|
-
paste: false,
|
|
648
|
-
sequence: '',
|
|
649
|
-
});
|
|
650
|
-
if (isPrefixNext) {
|
|
651
|
-
handleKeypress(undefined, createPasteKeyEvent('paste-start'));
|
|
652
|
-
}
|
|
653
|
-
else if (isSuffixNext) {
|
|
654
|
-
handleKeypress(undefined, createPasteKeyEvent('paste-end'));
|
|
655
|
-
}
|
|
656
|
-
pos = nextMarkerPos + markerLength;
|
|
657
|
-
}
|
|
658
|
-
};
|
|
700
|
+
let cleanup = () => { };
|
|
659
701
|
let rl;
|
|
660
702
|
if (keypressStream !== null) {
|
|
661
703
|
rl = readline.createInterface({
|
|
@@ -663,22 +705,30 @@ export function KeypressProvider({ children, kittyProtocolEnabled, config, debug
|
|
|
663
705
|
escapeCodeTimeout: 0,
|
|
664
706
|
});
|
|
665
707
|
readline.emitKeypressEvents(keypressStream, rl);
|
|
708
|
+
const parser = pasteMarkerParser(keypressStream, handleKeypress);
|
|
709
|
+
parser.next(); // prime the generator so it starts listening.
|
|
710
|
+
let timeoutId;
|
|
711
|
+
const handleRawKeypress = (data) => {
|
|
712
|
+
clearTimeout(timeoutId);
|
|
713
|
+
parser.next(data);
|
|
714
|
+
timeoutId = setTimeout(() => parser.next(''), PASTE_CODE_TIMEOUT_MS);
|
|
715
|
+
};
|
|
666
716
|
keypressStream.on('keypress', handleKeypress);
|
|
717
|
+
process.stdin.setEncoding('utf8'); // so handleRawKeypress gets strings
|
|
667
718
|
stdin.on('data', handleRawKeypress);
|
|
719
|
+
cleanup = () => {
|
|
720
|
+
keypressStream.removeListener('keypress', handleKeypress);
|
|
721
|
+
stdin.removeListener('data', handleRawKeypress);
|
|
722
|
+
};
|
|
668
723
|
}
|
|
669
724
|
else {
|
|
670
725
|
rl = readline.createInterface({ input: stdin, escapeCodeTimeout: 0 });
|
|
671
726
|
readline.emitKeypressEvents(stdin, rl);
|
|
672
727
|
stdin.on('keypress', handleKeypress);
|
|
728
|
+
cleanup = () => stdin.removeListener('keypress', handleKeypress);
|
|
673
729
|
}
|
|
674
730
|
return () => {
|
|
675
|
-
|
|
676
|
-
keypressStream.removeListener('keypress', handleKeypress);
|
|
677
|
-
stdin.removeListener('data', handleRawKeypress);
|
|
678
|
-
}
|
|
679
|
-
else {
|
|
680
|
-
stdin.removeListener('keypress', handleKeypress);
|
|
681
|
-
}
|
|
731
|
+
cleanup();
|
|
682
732
|
rl.close();
|
|
683
733
|
// Restore the terminal to its original state.
|
|
684
734
|
if (wasRaw === false) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeypressContext.js","sourceRoot":"","sources":["../../../../src/ui/contexts/KeypressContext.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"KeypressContext.js","sourceRoot":"","sources":["../../../../src/ui/contexts/KeypressContext.tsx"],"names":[],"mappings":"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"}
|