| 4 | import { checkOverageGate, confirmOverage, launchRemoteReview } from './reviewRemote.js'; |
| 5 | import { UltrareviewOverageDialog } from './UltrareviewOverageDialog.js'; |
| 6 | function contentBlocksToString(blocks: ContentBlockParam[]): string { |
| 7 | return blocks.map(b => b.type === 'text' ? b.text : '').filter(Boolean).join('\n'); |
| 8 | } |
| 9 | async function launchAndDone(args: string, context: Parameters<LocalJSXCommandCall>[1], onDone: LocalJSXCommandOnDone, billingNote: string, signal?: AbortSignal): Promise<void> { |
| 10 | const result = await launchRemoteReview(args, context, billingNote); |
| 11 | // User hit Escape during the ~5s launch — the dialog already showed |