mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-17 13:55:50 +00:00
48 lines
1.2 KiB
TypeScript
48 lines
1.2 KiB
TypeScript
import { c as _c } from "react/compiler-runtime";
|
|
import sample from 'lodash-es/sample.js';
|
|
import React from 'react';
|
|
import { gracefulShutdown } from '../utils/gracefulShutdown.js';
|
|
import { WorktreeExitDialog } from './WorktreeExitDialog.js';
|
|
const GOODBYE_MESSAGES = ['Goodbye!', 'See ya!', 'Bye!', 'Catch you later!'];
|
|
function getRandomGoodbyeMessage(): string {
|
|
return sample(GOODBYE_MESSAGES) ?? 'Goodbye!';
|
|
}
|
|
type Props = {
|
|
onDone: (message?: string) => void;
|
|
onCancel?: () => void;
|
|
showWorktree: boolean;
|
|
};
|
|
export function ExitFlow(t0) {
|
|
const $ = _c(5);
|
|
const {
|
|
showWorktree,
|
|
onDone,
|
|
onCancel
|
|
} = t0;
|
|
let t1;
|
|
if ($[0] !== onDone) {
|
|
t1 = async function onExit(resultMessage) {
|
|
onDone(resultMessage ?? getRandomGoodbyeMessage());
|
|
await gracefulShutdown(0, "prompt_input_exit");
|
|
};
|
|
$[0] = onDone;
|
|
$[1] = t1;
|
|
} else {
|
|
t1 = $[1];
|
|
}
|
|
const onExit = t1;
|
|
if (showWorktree) {
|
|
let t2;
|
|
if ($[2] !== onCancel || $[3] !== onExit) {
|
|
t2 = <WorktreeExitDialog onDone={onExit} onCancel={onCancel} />;
|
|
$[2] = onCancel;
|
|
$[3] = onExit;
|
|
$[4] = t2;
|
|
} else {
|
|
t2 = $[4];
|
|
}
|
|
return t2;
|
|
}
|
|
return null;
|
|
}
|