mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-22 16:25:51 +00:00
style: 完成所有文件的lint
This commit is contained in:
@@ -1,61 +1,54 @@
|
||||
import React from 'react'
|
||||
import { logEvent } from 'src/services/analytics/index.js'
|
||||
import React from 'react';
|
||||
import { logEvent } from 'src/services/analytics/index.js';
|
||||
// eslint-disable-next-line custom-rules/prefer-use-keybindings -- enter to continue
|
||||
import { Box, Dialog, Link, Newline, Text, useInput } from '@anthropic/ink'
|
||||
import { isChromeExtensionInstalled } from '../utils/claudeInChrome/setup.js'
|
||||
import { saveGlobalConfig } from '../utils/config.js'
|
||||
import { Box, Dialog, Link, Newline, Text, useInput } from '@anthropic/ink';
|
||||
import { isChromeExtensionInstalled } from '../utils/claudeInChrome/setup.js';
|
||||
import { saveGlobalConfig } from '../utils/config.js';
|
||||
|
||||
const CHROME_EXTENSION_URL = 'https://claude.ai/chrome'
|
||||
const CHROME_PERMISSIONS_URL = 'https://clau.de/chrome/permissions'
|
||||
const CHROME_EXTENSION_URL = 'https://claude.ai/chrome';
|
||||
const CHROME_PERMISSIONS_URL = 'https://clau.de/chrome/permissions';
|
||||
|
||||
type Props = {
|
||||
onDone(): void
|
||||
}
|
||||
onDone(): void;
|
||||
};
|
||||
|
||||
export function ClaudeInChromeOnboarding({ onDone }: Props): React.ReactNode {
|
||||
const [isExtensionInstalled, setIsExtensionInstalled] = React.useState(false)
|
||||
const [isExtensionInstalled, setIsExtensionInstalled] = React.useState(false);
|
||||
|
||||
React.useEffect(() => {
|
||||
logEvent('tengu_claude_in_chrome_onboarding_shown', {})
|
||||
void isChromeExtensionInstalled().then(setIsExtensionInstalled)
|
||||
logEvent('tengu_claude_in_chrome_onboarding_shown', {});
|
||||
void isChromeExtensionInstalled().then(setIsExtensionInstalled);
|
||||
saveGlobalConfig(current => {
|
||||
return { ...current, hasCompletedClaudeInChromeOnboarding: true }
|
||||
})
|
||||
}, [])
|
||||
return { ...current, hasCompletedClaudeInChromeOnboarding: true };
|
||||
});
|
||||
}, []);
|
||||
|
||||
// Handle Enter to continue
|
||||
useInput((_input, key) => {
|
||||
if (key.return) {
|
||||
onDone()
|
||||
onDone();
|
||||
}
|
||||
})
|
||||
});
|
||||
|
||||
return (
|
||||
<Dialog
|
||||
title="Claude in Chrome (Beta)"
|
||||
onCancel={onDone}
|
||||
color="chromeYellow"
|
||||
>
|
||||
<Dialog title="Claude in Chrome (Beta)" onCancel={onDone} color="chromeYellow">
|
||||
<Box flexDirection="column" gap={1}>
|
||||
<Text>
|
||||
Claude in Chrome works with the Chrome extension to let you control
|
||||
your browser directly from Claude Code. You can navigate websites,
|
||||
fill forms, capture screenshots, record GIFs, and debug with console
|
||||
logs and network requests.
|
||||
Claude in Chrome works with the Chrome extension to let you control your browser directly from Claude Code.
|
||||
You can navigate websites, fill forms, capture screenshots, record GIFs, and debug with console logs and
|
||||
network requests.
|
||||
{!isExtensionInstalled && (
|
||||
<>
|
||||
<Newline />
|
||||
<Newline />
|
||||
Requires the Chrome extension. Get started at{' '}
|
||||
<Link url={CHROME_EXTENSION_URL} />
|
||||
Requires the Chrome extension. Get started at <Link url={CHROME_EXTENSION_URL} />
|
||||
</>
|
||||
)}
|
||||
</Text>
|
||||
|
||||
<Text dimColor>
|
||||
Site-level permissions are inherited from the Chrome extension. Manage
|
||||
permissions in the Chrome extension settings to control which sites
|
||||
Claude can browse, click, and type on
|
||||
Site-level permissions are inherited from the Chrome extension. Manage permissions in the Chrome extension
|
||||
settings to control which sites Claude can browse, click, and type on
|
||||
{isExtensionInstalled && (
|
||||
<>
|
||||
{' '}
|
||||
@@ -73,5 +66,5 @@ export function ClaudeInChromeOnboarding({ onDone }: Props): React.ReactNode {
|
||||
</Text>
|
||||
</Box>
|
||||
</Dialog>
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user