claude-code-best/src/commands/extra-usage/extra-usage.tsx
2026-05-01 21:39:30 +08:00

28 lines
802 B
TypeScript

import React from 'react';
import type { LocalJSXCommandContext } from '../../commands.js';
import type { LocalJSXCommandOnDone } from '../../types/command.js';
import { Login } from '../login/login.js';
import { runExtraUsage } from './extra-usage-core.js';
export async function call(
onDone: LocalJSXCommandOnDone,
context: LocalJSXCommandContext,
): Promise<React.ReactNode | null> {
const result = await runExtraUsage();
if (result.type === 'message') {
onDone(result.value);
return null;
}
return (
<Login
startingMessage={'Starting new login following /extra-usage. Exit with Ctrl-C to use existing account.'}
onDone={success => {
context.onChangeAPIKey();
onDone(success ? 'Login successful' : 'Login interrupted');
}}
/>
);
}