init claude-code

This commit is contained in:
2026-04-01 17:32:37 +02:00
commit 73b208c009
1902 changed files with 513237 additions and 0 deletions
+65
View File
@@ -0,0 +1,65 @@
import { c as _c } from "react/compiler-runtime";
import React, { type ReactNode } from 'react';
import type { Theme } from '../../utils/theme.js';
import { Dialog } from '../design-system/Dialog.js';
import { useWizard } from './useWizard.js';
import { WizardNavigationFooter } from './WizardNavigationFooter.js';
type Props = {
title?: string;
color?: keyof Theme;
children: ReactNode;
subtitle?: string;
footerText?: ReactNode;
};
export function WizardDialogLayout(t0) {
const $ = _c(11);
const {
title: titleOverride,
color: t1,
children,
subtitle,
footerText
} = t0;
const color = t1 === undefined ? "suggestion" : t1;
const {
currentStepIndex,
totalSteps,
title: providerTitle,
showStepCounter,
goBack
} = useWizard();
const title = titleOverride || providerTitle || "Wizard";
const stepSuffix = showStepCounter !== false ? ` (${currentStepIndex + 1}/${totalSteps})` : "";
const t2 = `${title}${stepSuffix}`;
let t3;
if ($[0] !== children || $[1] !== color || $[2] !== goBack || $[3] !== subtitle || $[4] !== t2) {
t3 = <Dialog title={t2} subtitle={subtitle} onCancel={goBack} color={color} hideInputGuide={true} isCancelActive={false}>{children}</Dialog>;
$[0] = children;
$[1] = color;
$[2] = goBack;
$[3] = subtitle;
$[4] = t2;
$[5] = t3;
} else {
t3 = $[5];
}
let t4;
if ($[6] !== footerText) {
t4 = <WizardNavigationFooter instructions={footerText} />;
$[6] = footerText;
$[7] = t4;
} else {
t4 = $[7];
}
let t5;
if ($[8] !== t3 || $[9] !== t4) {
t5 = <>{t3}{t4}</>;
$[8] = t3;
$[9] = t4;
$[10] = t5;
} else {
t5 = $[10];
}
return t5;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlJlYWN0Tm9kZSIsIlRoZW1lIiwiRGlhbG9nIiwidXNlV2l6YXJkIiwiV2l6YXJkTmF2aWdhdGlvbkZvb3RlciIsIlByb3BzIiwidGl0bGUiLCJjb2xvciIsImNoaWxkcmVuIiwic3VidGl0bGUiLCJmb290ZXJUZXh0IiwiV2l6YXJkRGlhbG9nTGF5b3V0IiwidDAiLCIkIiwiX2MiLCJ0aXRsZU92ZXJyaWRlIiwidDEiLCJ1bmRlZmluZWQiLCJjdXJyZW50U3RlcEluZGV4IiwidG90YWxTdGVwcyIsInByb3ZpZGVyVGl0bGUiLCJzaG93U3RlcENvdW50ZXIiLCJnb0JhY2siLCJzdGVwU3VmZml4IiwidDIiLCJ0MyIsInQ0IiwidDUiXSwic291cmNlcyI6WyJXaXphcmREaWFsb2dMYXlvdXQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyB0eXBlIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHR5cGUgeyBUaGVtZSB9IGZyb20gJy4uLy4uL3V0aWxzL3RoZW1lLmpzJ1xuaW1wb3J0IHsgRGlhbG9nIH0gZnJvbSAnLi4vZGVzaWduLXN5c3RlbS9EaWFsb2cuanMnXG5pbXBvcnQgeyB1c2VXaXphcmQgfSBmcm9tICcuL3VzZVdpemFyZC5qcydcbmltcG9ydCB7IFdpemFyZE5hdmlnYXRpb25Gb290ZXIgfSBmcm9tICcuL1dpemFyZE5hdmlnYXRpb25Gb290ZXIuanMnXG5cbnR5cGUgUHJvcHMgPSB7XG4gIHRpdGxlPzogc3RyaW5nXG4gIGNvbG9yPzoga2V5b2YgVGhlbWVcbiAgY2hpbGRyZW46IFJlYWN0Tm9kZVxuICBzdWJ0aXRsZT86IHN0cmluZ1xuICBmb290ZXJUZXh0PzogUmVhY3ROb2RlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBXaXphcmREaWFsb2dMYXlvdXQoe1xuICB0aXRsZTogdGl0bGVPdmVycmlkZSxcbiAgY29sb3IgPSAnc3VnZ2VzdGlvbicsXG4gIGNoaWxkcmVuLFxuICBzdWJ0aXRsZSxcbiAgZm9vdGVyVGV4dCxcbn06IFByb3BzKTogUmVhY3ROb2RlIHtcbiAgY29uc3Qge1xuICAgIGN1cnJlbnRTdGVwSW5kZXgsXG4gICAgdG90YWxTdGVwcyxcbiAgICB0aXRsZTogcHJvdmlkZXJUaXRsZSxcbiAgICBzaG93U3RlcENvdW50ZXIsXG4gICAgZ29CYWNrLFxuICB9ID0gdXNlV2l6YXJkKClcbiAgY29uc3QgdGl0bGUgPSB0aXRsZU92ZXJyaWRlIHx8IHByb3ZpZGVyVGl0bGUgfHwgJ1dpemFyZCdcbiAgY29uc3Qgc3RlcFN1ZmZpeCA9XG4gICAgc2hvd1N0ZXBDb3VudGVyICE9PSBmYWxzZSA/IGAgKCR7Y3VycmVudFN0ZXBJbmRleCArIDF9LyR7dG90YWxTdGVwc30pYCA6ICcnXG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPERpYWxvZ1xuICAgICAgICB0aXRsZT17YCR7dGl0bGV9JHtzdGVwU3VmZml4fWB9XG4gICAgICAgIHN1YnRpdGxlPXtzdWJ0aXRsZX1cbiAgICAgICAgb25DYW5jZWw9e2dvQmFja31cbiAgICAgICAgY29sb3I9e2NvbG9yfVxuICAgICAgICBoaWRlSW5wdXRHdWlkZVxuICAgICAgICBpc0NhbmNlbEFjdGl2ZT17ZmFsc2V9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvRGlhbG9nPlxuICAgICAgPFdpemFyZE5hdmlnYXRpb25Gb290ZXIgaW5zdHJ1Y3Rpb25zPXtmb290ZXJUZXh0fSAvPlxuICAgIDwvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxLQUFLLElBQUksS0FBS0MsU0FBUyxRQUFRLE9BQU87QUFDN0MsY0FBY0MsS0FBSyxRQUFRLHNCQUFzQjtBQUNqRCxTQUFTQyxNQUFNLFFBQVEsNEJBQTRCO0FBQ25ELFNBQVNDLFNBQVMsUUFBUSxnQkFBZ0I7QUFDMUMsU0FBU0Msc0JBQXNCLFFBQVEsNkJBQTZCO0FBRXBFLEtBQUtDLEtBQUssR0FBRztFQUNYQyxLQUFLLENBQUMsRUFBRSxNQUFNO0VBQ2RD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
@@ -0,0 +1,24 @@
import React, { type ReactNode } from 'react';
import { useExitOnCtrlCDWithKeybindings } from '../../hooks/useExitOnCtrlCDWithKeybindings.js';
import { Box, Text } from '../../ink.js';
import { ConfigurableShortcutHint } from '../ConfigurableShortcutHint.js';
import { Byline } from '../design-system/Byline.js';
import { KeyboardShortcutHint } from '../design-system/KeyboardShortcutHint.js';
type Props = {
instructions?: ReactNode;
};
export function WizardNavigationFooter({
instructions = <Byline>
<KeyboardShortcutHint shortcut="↑↓" action="navigate" />
<KeyboardShortcutHint shortcut="Enter" action="select" />
<ConfigurableShortcutHint action="confirm:no" context="Confirmation" fallback="Esc" description="go back" />
</Byline>
}: Props): ReactNode {
const exitState = useExitOnCtrlCDWithKeybindings();
return <Box marginLeft={3} marginTop={1}>
<Text dimColor>
{exitState.pending ? `Press ${exitState.keyName} again to exit` : instructions}
</Text>
</Box>;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlJlYWN0Tm9kZSIsInVzZUV4aXRPbkN0cmxDRFdpdGhLZXliaW5kaW5ncyIsIkJveCIsIlRleHQiLCJDb25maWd1cmFibGVTaG9ydGN1dEhpbnQiLCJCeWxpbmUiLCJLZXlib2FyZFNob3J0Y3V0SGludCIsIlByb3BzIiwiaW5zdHJ1Y3Rpb25zIiwiV2l6YXJkTmF2aWdhdGlvbkZvb3RlciIsImV4aXRTdGF0ZSIsInBlbmRpbmciLCJrZXlOYW1lIl0sInNvdXJjZXMiOlsiV2l6YXJkTmF2aWdhdGlvbkZvb3Rlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHR5cGUgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VFeGl0T25DdHJsQ0RXaXRoS2V5YmluZGluZ3MgfSBmcm9tICcuLi8uLi9ob29rcy91c2VFeGl0T25DdHJsQ0RXaXRoS2V5YmluZGluZ3MuanMnXG5pbXBvcnQgeyBCb3gsIFRleHQgfSBmcm9tICcuLi8uLi9pbmsuanMnXG5pbXBvcnQgeyBDb25maWd1cmFibGVTaG9ydGN1dEhpbnQgfSBmcm9tICcuLi9Db25maWd1cmFibGVTaG9ydGN1dEhpbnQuanMnXG5pbXBvcnQgeyBCeWxpbmUgfSBmcm9tICcuLi9kZXNpZ24tc3lzdGVtL0J5bGluZS5qcydcbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRIaW50IH0gZnJvbSAnLi4vZGVzaWduLXN5c3RlbS9LZXlib2FyZFNob3J0Y3V0SGludC5qcydcblxudHlwZSBQcm9wcyA9IHtcbiAgaW5zdHJ1Y3Rpb25zPzogUmVhY3ROb2RlXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBXaXphcmROYXZpZ2F0aW9uRm9vdGVyKHtcbiAgaW5zdHJ1Y3Rpb25zID0gKFxuICAgIDxCeWxpbmU+XG4gICAgICA8S2V5Ym9hcmRTaG9ydGN1dEhpbnQgc2hvcnRjdXQ9XCLihpHihpNcIiBhY3Rpb249XCJuYXZpZ2F0ZVwiIC8+XG4gICAgICA8S2V5Ym9hcmRTaG9ydGN1dEhpbnQgc2hvcnRjdXQ9XCJFbnRlclwiIGFjdGlvbj1cInNlbGVjdFwiIC8+XG4gICAgICA8Q29uZmlndXJhYmxlU2hvcnRjdXRIaW50XG4gICAgICAgIGFjdGlvbj1cImNvbmZpcm06bm9cIlxuICAgICAgICBjb250ZXh0PVwiQ29uZmlybWF0aW9uXCJcbiAgICAgICAgZmFsbGJhY2s9XCJFc2NcIlxuICAgICAgICBkZXNjcmlwdGlvbj1cImdvIGJhY2tcIlxuICAgICAgLz5cbiAgICA8L0J5bGluZT5cbiAgKSxcbn06IFByb3BzKTogUmVhY3ROb2RlIHtcbiAgY29uc3QgZXhpdFN0YXRlID0gdXNlRXhpdE9uQ3RybENEV2l0aEtleWJpbmRpbmdzKClcblxuICByZXR1cm4gKFxuICAgIDxCb3ggbWFyZ2luTGVmdD17M30gbWFyZ2luVG9wPXsxfT5cbiAgICAgIDxUZXh0IGRpbUNvbG9yPlxuICAgICAgICB7ZXhpdFN0YXRlLnBlbmRpbmdcbiAgICAgICAgICA/IGBQcmVzcyAke2V4aXRTdGF0ZS5rZXlOYW1lfSBhZ2FpbiB0byBleGl0YFxuICAgICAgICAgIDogaW5zdHJ1Y3Rpb25zfVxuICAgICAgPC9UZXh0PlxuICAgIDwvQm94PlxuICApXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLEtBQUssSUFBSSxLQUFLQyxTQUFTLFFBQVEsT0FBTztBQUM3QyxTQUFTQyw4QkFBOEIsUUFBUSwrQ0FBK0M7QUFDOUYsU0FBU0MsR0FBRyxFQUFFQyxJQUFJLFFBQVEsY0FBYztBQUN4QyxTQUFTQyx3QkFBd0IsUUFBUSxnQ0FBZ0M7QUFDekUsU0FBU0MsTUFBTSxRQUFRLDRCQUE0QjtBQUNuRCxTQUFTQyxvQkFBb0IsUUFBUSwwQ0FBMEM7QUFFL0UsS0FBS0MsS0FBSyxHQUFHO0VBQ1hDLFlBQVksQ0FBQyxFQUFFUixTQUFTO0FBQzFCLENBQUM7QUFFRCxPQUFPLFNBQVNTLHNCQUFzQkEsQ0FBQztFQUNyQ0QsWUFBWSxHQUNWLENBQUMsTUFBTTtBQUNYLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVO0FBQzNELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRO0FBQzVELE1BQU0sQ0FBQyx3QkFBd0IsQ0FDdkIsTUFBTSxDQUFDLFlBQVksQ0FDbkIsT0FBTyxDQUFDLGNBQWMsQ0FDdEIsUUFBUSxDQUFDLEtBQUssQ0FDZCxXQUFXLENBQUMsU0FBUztBQUU3QixJQUFJLEVBQUUsTUFBTTtBQUVMLENBQU4sRUFBRUQsS0FBSyxDQUFDLEVBQUVQLFNBQVMsQ0FBQztFQUNuQixNQUFNVSxTQUFTLEdBQUdULDhCQUE4QixDQUFDLENBQUM7RUFFbEQsT0FDRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDckMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRO0FBQ3BCLFFBQVEsQ0FBQ1MsU0FBUyxDQUFDQyxPQUFPLEdBQ2QsU0FBU0QsU0FBUyxDQUFDRSxPQUFPLGdCQUFnQixHQUMxQ0osWUFBWTtBQUN4QixNQUFNLEVBQUUsSUFBSTtBQUNaLElBQUksRUFBRSxHQUFHLENBQUM7QUFFViIsImlnbm9yZUxpc3QiOltdfQ==
File diff suppressed because one or more lines are too long
+9
View File
@@ -0,0 +1,9 @@
export type {
WizardContextValue,
WizardProviderProps,
WizardStepComponent,
} from './types.js'
export { useWizard } from './useWizard.js'
export { WizardDialogLayout } from './WizardDialogLayout.js'
export { WizardNavigationFooter } from './WizardNavigationFooter.js'
export { WizardProvider } from './WizardProvider.js'
+13
View File
@@ -0,0 +1,13 @@
import { useContext } from 'react'
import type { WizardContextValue } from './types.js'
import { WizardContext } from './WizardProvider.js'
export function useWizard<
T extends Record<string, unknown> = Record<string, unknown>,
>(): WizardContextValue<T> {
const context = useContext(WizardContext) as WizardContextValue<T> | null
if (!context) {
throw new Error('useWizard must be used within a WizardProvider')
}
return context
}