diff options
Diffstat (limited to 'packages/cli/src/ui/privacy')
| -rw-r--r-- | packages/cli/src/ui/privacy/CloudFreePrivacyNotice.tsx | 16 | ||||
| -rw-r--r-- | packages/cli/src/ui/privacy/CloudPaidPrivacyNotice.tsx | 16 | ||||
| -rw-r--r-- | packages/cli/src/ui/privacy/GeminiPrivacyNotice.tsx | 16 |
3 files changed, 30 insertions, 18 deletions
diff --git a/packages/cli/src/ui/privacy/CloudFreePrivacyNotice.tsx b/packages/cli/src/ui/privacy/CloudFreePrivacyNotice.tsx index 25e14281..d4c13097 100644 --- a/packages/cli/src/ui/privacy/CloudFreePrivacyNotice.tsx +++ b/packages/cli/src/ui/privacy/CloudFreePrivacyNotice.tsx @@ -4,12 +4,13 @@ * SPDX-License-Identifier: Apache-2.0 */ -import { Box, Newline, Text, useInput } from 'ink'; +import { Box, Newline, Text } from 'ink'; import { RadioButtonSelect } from '../components/shared/RadioButtonSelect.js'; import { usePrivacySettings } from '../hooks/usePrivacySettings.js'; import { CloudPaidPrivacyNotice } from './CloudPaidPrivacyNotice.js'; import { Config } from '@google/gemini-cli-core'; import { Colors } from '../colors.js'; +import { useKeypress } from '../hooks/useKeypress.js'; interface CloudFreePrivacyNoticeProps { config: Config; @@ -23,11 +24,14 @@ export const CloudFreePrivacyNotice = ({ const { privacyState, updateDataCollectionOptIn } = usePrivacySettings(config); - useInput((input, key) => { - if (privacyState.error && key.escape) { - onExit(); - } - }); + useKeypress( + (key) => { + if (privacyState.error && key.name === 'escape') { + onExit(); + } + }, + { isActive: true }, + ); if (privacyState.isLoading) { return <Text color={Colors.Gray}>Loading...</Text>; diff --git a/packages/cli/src/ui/privacy/CloudPaidPrivacyNotice.tsx b/packages/cli/src/ui/privacy/CloudPaidPrivacyNotice.tsx index e50dcd4b..f0adbb68 100644 --- a/packages/cli/src/ui/privacy/CloudPaidPrivacyNotice.tsx +++ b/packages/cli/src/ui/privacy/CloudPaidPrivacyNotice.tsx @@ -4,8 +4,9 @@ * SPDX-License-Identifier: Apache-2.0 */ -import { Box, Newline, Text, useInput } from 'ink'; +import { Box, Newline, Text } from 'ink'; import { Colors } from '../colors.js'; +import { useKeypress } from '../hooks/useKeypress.js'; interface CloudPaidPrivacyNoticeProps { onExit: () => void; @@ -14,11 +15,14 @@ interface CloudPaidPrivacyNoticeProps { export const CloudPaidPrivacyNotice = ({ onExit, }: CloudPaidPrivacyNoticeProps) => { - useInput((input, key) => { - if (key.escape) { - onExit(); - } - }); + useKeypress( + (key) => { + if (key.name === 'escape') { + onExit(); + } + }, + { isActive: true }, + ); return ( <Box flexDirection="column" marginBottom={1}> diff --git a/packages/cli/src/ui/privacy/GeminiPrivacyNotice.tsx b/packages/cli/src/ui/privacy/GeminiPrivacyNotice.tsx index 57030ac3..c0eaa74f 100644 --- a/packages/cli/src/ui/privacy/GeminiPrivacyNotice.tsx +++ b/packages/cli/src/ui/privacy/GeminiPrivacyNotice.tsx @@ -4,19 +4,23 @@ * SPDX-License-Identifier: Apache-2.0 */ -import { Box, Newline, Text, useInput } from 'ink'; +import { Box, Newline, Text } from 'ink'; import { Colors } from '../colors.js'; +import { useKeypress } from '../hooks/useKeypress.js'; interface GeminiPrivacyNoticeProps { onExit: () => void; } export const GeminiPrivacyNotice = ({ onExit }: GeminiPrivacyNoticeProps) => { - useInput((input, key) => { - if (key.escape) { - onExit(); - } - }); + useKeypress( + (key) => { + if (key.name === 'escape') { + onExit(); + } + }, + { isActive: true }, + ); return ( <Box flexDirection="column" marginBottom={1}> |
