mirror of
http://10.0.2.1:3031/sauer/claude-code.git
synced 2026-06-30 12:26:58 +10:00
214 lines
21 KiB
TypeScript
214 lines
21 KiB
TypeScript
|
|
import { c as _c } from "react/compiler-runtime";
|
||
|
|
import '../global.d.ts';
|
||
|
|
import React, { type PropsWithChildren, type Ref } from 'react';
|
||
|
|
import type { Except } from 'type-fest';
|
||
|
|
import type { DOMElement } from '../dom.js';
|
||
|
|
import type { ClickEvent } from '../events/click-event.js';
|
||
|
|
import type { FocusEvent } from '../events/focus-event.js';
|
||
|
|
import type { KeyboardEvent } from '../events/keyboard-event.js';
|
||
|
|
import type { Styles } from '../styles.js';
|
||
|
|
import * as warn from '../warn.js';
|
||
|
|
export type Props = Except<Styles, 'textWrap'> & {
|
||
|
|
ref?: Ref<DOMElement>;
|
||
|
|
/**
|
||
|
|
* Tab order index. Nodes with `tabIndex >= 0` participate in
|
||
|
|
* Tab/Shift+Tab cycling; `-1` means programmatically focusable only.
|
||
|
|
*/
|
||
|
|
tabIndex?: number;
|
||
|
|
/**
|
||
|
|
* Focus this element when it mounts. Like the HTML `autofocus`
|
||
|
|
* attribute — the FocusManager calls `focus(node)` during the
|
||
|
|
* reconciler's `commitMount` phase.
|
||
|
|
*/
|
||
|
|
autoFocus?: boolean;
|
||
|
|
/**
|
||
|
|
* Fired on left-button click (press + release without drag). Only works
|
||
|
|
* inside `<AlternateScreen>` where mouse tracking is enabled — no-op
|
||
|
|
* otherwise. The event bubbles from the deepest hit Box up through
|
||
|
|
* ancestors; call `event.stopImmediatePropagation()` to stop bubbling.
|
||
|
|
*/
|
||
|
|
onClick?: (event: ClickEvent) => void;
|
||
|
|
onFocus?: (event: FocusEvent) => void;
|
||
|
|
onFocusCapture?: (event: FocusEvent) => void;
|
||
|
|
onBlur?: (event: FocusEvent) => void;
|
||
|
|
onBlurCapture?: (event: FocusEvent) => void;
|
||
|
|
onKeyDown?: (event: KeyboardEvent) => void;
|
||
|
|
onKeyDownCapture?: (event: KeyboardEvent) => void;
|
||
|
|
/**
|
||
|
|
* Fired when the mouse moves into this Box's rendered rect. Like DOM
|
||
|
|
* `mouseenter`, does NOT bubble — moving between children does not
|
||
|
|
* re-fire on the parent. Only works inside `<AlternateScreen>` where
|
||
|
|
* mode-1003 mouse tracking is enabled.
|
||
|
|
*/
|
||
|
|
onMouseEnter?: () => void;
|
||
|
|
/** Fired when the mouse moves out of this Box's rendered rect. */
|
||
|
|
onMouseLeave?: () => void;
|
||
|
|
};
|
||
|
|
|
||
|
|
/**
|
||
|
|
* `<Box>` is an essential Ink component to build your layout. It's like `<div style="display: flex">` in the browser.
|
||
|
|
*/
|
||
|
|
function Box(t0) {
|
||
|
|
const $ = _c(42);
|
||
|
|
let autoFocus;
|
||
|
|
let children;
|
||
|
|
let flexDirection;
|
||
|
|
let flexGrow;
|
||
|
|
let flexShrink;
|
||
|
|
let flexWrap;
|
||
|
|
let onBlur;
|
||
|
|
let onBlurCapture;
|
||
|
|
let onClick;
|
||
|
|
let onFocus;
|
||
|
|
let onFocusCapture;
|
||
|
|
let onKeyDown;
|
||
|
|
let onKeyDownCapture;
|
||
|
|
let onMouseEnter;
|
||
|
|
let onMouseLeave;
|
||
|
|
let ref;
|
||
|
|
let style;
|
||
|
|
let tabIndex;
|
||
|
|
if ($[0] !== t0) {
|
||
|
|
const {
|
||
|
|
children: t1,
|
||
|
|
flexWrap: t2,
|
||
|
|
flexDirection: t3,
|
||
|
|
flexGrow: t4,
|
||
|
|
flexShrink: t5,
|
||
|
|
ref: t6,
|
||
|
|
tabIndex: t7,
|
||
|
|
autoFocus: t8,
|
||
|
|
onClick: t9,
|
||
|
|
onFocus: t10,
|
||
|
|
onFocusCapture: t11,
|
||
|
|
onBlur: t12,
|
||
|
|
onBlurCapture: t13,
|
||
|
|
onMouseEnter: t14,
|
||
|
|
onMouseLeave: t15,
|
||
|
|
onKeyDown: t16,
|
||
|
|
onKeyDownCapture: t17,
|
||
|
|
...t18
|
||
|
|
} = t0;
|
||
|
|
children = t1;
|
||
|
|
ref = t6;
|
||
|
|
tabIndex = t7;
|
||
|
|
autoFocus = t8;
|
||
|
|
onClick = t9;
|
||
|
|
onFocus = t10;
|
||
|
|
onFocusCapture = t11;
|
||
|
|
onBlur = t12;
|
||
|
|
onBlurCapture = t13;
|
||
|
|
onMouseEnter = t14;
|
||
|
|
onMouseLeave = t15;
|
||
|
|
onKeyDown = t16;
|
||
|
|
onKeyDownCapture = t17;
|
||
|
|
style = t18;
|
||
|
|
flexWrap = t2 === undefined ? "nowrap" : t2;
|
||
|
|
flexDirection = t3 === undefined ? "row" : t3;
|
||
|
|
flexGrow = t4 === undefined ? 0 : t4;
|
||
|
|
flexShrink = t5 === undefined ? 1 : t5;
|
||
|
|
warn.ifNotInteger(style.margin, "margin");
|
||
|
|
warn.ifNotInteger(style.marginX, "marginX");
|
||
|
|
warn.ifNotInteger(style.marginY, "marginY");
|
||
|
|
warn.ifNotInteger(style.marginTop, "marginTop");
|
||
|
|
warn.ifNotInteger(style.marginBottom, "marginBottom");
|
||
|
|
warn.ifNotInteger(style.marginLeft, "marginLeft");
|
||
|
|
warn.ifNotInteger(style.marginRight, "marginRight");
|
||
|
|
warn.ifNotInteger(style.padding, "padding");
|
||
|
|
warn.ifNotInteger(style.paddingX, "paddingX");
|
||
|
|
warn.ifNotInteger(style.paddingY, "paddingY");
|
||
|
|
warn.ifNotInteger(style.paddingTop, "paddingTop");
|
||
|
|
warn.ifNotInteger(style.paddingBottom, "paddingBottom");
|
||
|
|
warn.ifNotInteger(style.paddingLeft, "paddingLeft");
|
||
|
|
warn.ifNotInteger(style.paddingRight, "paddingRight");
|
||
|
|
warn.ifNotInteger(style.gap, "gap");
|
||
|
|
warn.ifNotInteger(style.columnGap, "columnGap");
|
||
|
|
warn.ifNotInteger(style.rowGap, "rowGap");
|
||
|
|
$[0] = t0;
|
||
|
|
$[1] = autoFocus;
|
||
|
|
$[2] = children;
|
||
|
|
$[3] = flexDirection;
|
||
|
|
$[4] = flexGrow;
|
||
|
|
$[5] = flexShrink;
|
||
|
|
$[6] = flexWrap;
|
||
|
|
$[7] = onBlur;
|
||
|
|
$[8] = onBlurCapture;
|
||
|
|
$[9] = onClick;
|
||
|
|
$[10] = onFocus;
|
||
|
|
$[11] = onFocusCapture;
|
||
|
|
$[12] = onKeyDown;
|
||
|
|
$[13] = onKeyDownCapture;
|
||
|
|
$[14] = onMouseEnter;
|
||
|
|
$[15] = onMouseLeave;
|
||
|
|
$[16] = ref;
|
||
|
|
$[17] = style;
|
||
|
|
$[18] = tabIndex;
|
||
|
|
} else {
|
||
|
|
autoFocus = $[1];
|
||
|
|
children = $[2];
|
||
|
|
flexDirection = $[3];
|
||
|
|
flexGrow = $[4];
|
||
|
|
flexShrink = $[5];
|
||
|
|
flexWrap = $[6];
|
||
|
|
onBlur = $[7];
|
||
|
|
onBlurCapture = $[8];
|
||
|
|
onClick = $[9];
|
||
|
|
onFocus = $[10];
|
||
|
|
onFocusCapture = $[11];
|
||
|
|
onKeyDown = $[12];
|
||
|
|
onKeyDownCapture = $[13];
|
||
|
|
onMouseEnter = $[14];
|
||
|
|
onMouseLeave = $[15];
|
||
|
|
ref = $[16];
|
||
|
|
style = $[17];
|
||
|
|
tabIndex = $[18];
|
||
|
|
}
|
||
|
|
const t1 = style.overflowX ?? style.overflow ?? "visible";
|
||
|
|
const t2 = style.overflowY ?? style.overflow ?? "visible";
|
||
|
|
let t3;
|
||
|
|
if ($[19] !== flexDirection || $[20] !== flexGrow || $[21] !== flexShrink || $[22] !== flexWrap || $[23] !== style || $[24] !== t1 || $[25] !== t2) {
|
||
|
|
t3 = {
|
||
|
|
flexWrap,
|
||
|
|
flexDirection,
|
||
|
|
flexGrow,
|
||
|
|
flexShrink,
|
||
|
|
...style,
|
||
|
|
overflowX: t1,
|
||
|
|
overflowY: t2
|
||
|
|
};
|
||
|
|
$[19] = flexDirection;
|
||
|
|
$[20] = flexGrow;
|
||
|
|
$[21] = flexShrink;
|
||
|
|
$[22] = flexWrap;
|
||
|
|
$[23] = style;
|
||
|
|
$[24] = t1;
|
||
|
|
$[25] = t2;
|
||
|
|
$[26] = t3;
|
||
|
|
} else {
|
||
|
|
t3 = $[26];
|
||
|
|
}
|
||
|
|
let t4;
|
||
|
|
if ($[27] !== autoFocus || $[28] !== children || $[29] !== onBlur || $[30] !== onBlurCapture || $[31] !== onClick || $[32] !== onFocus || $[33] !== onFocusCapture || $[34] !== onKeyDown || $[35] !== onKeyDownCapture || $[36] !== onMouseEnter || $[37] !== onMouseLeave || $[38] !== ref || $[39] !== t3 || $[40] !== tabIndex) {
|
||
|
|
t4 = <ink-box ref={ref} tabIndex={tabIndex} autoFocus={autoFocus} onClick={onClick} onFocus={onFocus} onFocusCapture={onFocusCapture} onBlur={onBlur} onBlurCapture={onBlurCapture} onMouseEnter={onMouseEnter} onMouseLeave={onMouseLeave} onKeyDown={onKeyDown} onKeyDownCapture={onKeyDownCapture} style={t3}>{children}</ink-box>;
|
||
|
|
$[27] = autoFocus;
|
||
|
|
$[28] = children;
|
||
|
|
$[29] = onBlur;
|
||
|
|
$[30] = onBlurCapture;
|
||
|
|
$[31] = onClick;
|
||
|
|
$[32] = onFocus;
|
||
|
|
$[33] = onFocusCapture;
|
||
|
|
$[34] = onKeyDown;
|
||
|
|
$[35] = onKeyDownCapture;
|
||
|
|
$[36] = onMouseEnter;
|
||
|
|
$[37] = onMouseLeave;
|
||
|
|
$[38] = ref;
|
||
|
|
$[39] = t3;
|
||
|
|
$[40] = tabIndex;
|
||
|
|
$[41] = t4;
|
||
|
|
} else {
|
||
|
|
t4 = $[41];
|
||
|
|
}
|
||
|
|
return t4;
|
||
|
|
}
|
||
|
|
export default Box;
|
||
|
|
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIlByb3BzV2l0aENoaWxkcmVuIiwiUmVmIiwiRXhjZXB0IiwiRE9NRWxlbWVudCIsIkNsaWNrRXZlbnQiLCJGb2N1c0V2ZW50IiwiS2V5Ym9hcmRFdmVudCIsIlN0eWxlcyIsIndhcm4iLCJQcm9wcyIsInJlZiIsInRhYkluZGV4IiwiYXV0b0ZvY3VzIiwib25DbGljayIsImV2ZW50Iiwib25Gb2N1cyIsIm9uRm9jdXNDYXB0dXJlIiwib25CbHVyIiwib25CbHVyQ2FwdHVyZSIsIm9uS2V5RG93biIsIm9uS2V5RG93bkNhcHR1cmUiLCJvbk1vdXNlRW50ZXIiLCJvbk1vdXNlTGVhdmUiLCJCb3giLCJ0MCIsIiQiLCJfYyIsImNoaWxkcmVuIiwiZmxleERpcmVjdGlvbiIsImZsZXhHcm93IiwiZmxleFNocmluayIsImZsZXhXcmFwIiwic3R5bGUiLCJ0MSIsInQyIiwidDMiLCJ0NCIsInQ1IiwidDYiLCJ0NyIsInQ4IiwidDkiLCJ0MTAiLCJ0MTEiLCJ0MTIiLCJ0MTMiLCJ0MTQiLCJ0MTUiLCJ0MTYiLCJ0MTciLCJ0MTgiLCJ1bmRlZmluZWQiLCJpZk5vdEludGVnZXIiLCJtYXJnaW4iLCJtYXJnaW5YIiwibWFyZ2luWSIsIm1hcmdpblRvcCIsIm1hcmdpbkJvdHRvbSIsIm1hcmdpbkxlZnQiLCJtYXJnaW5SaWdodCIsInBhZGRpbmciLCJwYWRkaW5nWCIsInBhZGRpbmdZIiwicGFkZGluZ1RvcCIsInBhZGRpbmdCb3R0b20iLCJwYWRkaW5nTGVmdCIsInBhZGRpbmdSaWdodCIsImdhcCIsImNvbHVtbkdhcCIsInJvd0dhcCIsIm92ZXJmbG93WCIsIm92ZXJmbG93Iiwib3ZlcmZsb3dZIl0sInNvdXJjZXMiOlsiQm94LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJy4uL2dsb2JhbC5kLnRzJ1xuaW1wb3J0IFJlYWN0LCB7IHR5cGUgUHJvcHNXaXRoQ2hpbGRyZW4sIHR5cGUgUmVmIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQgdHlwZSB7IEV4Y2VwdCB9IGZyb20gJ3R5cGUtZmVzdCdcbmltcG9ydCB0eXBlIHsgRE9NRWxlbWVudCB9IGZyb20gJy4uL2RvbS5qcydcbmltcG9ydCB0eXBlIHsgQ2xpY2tFdmVudCB9IGZyb20gJy4uL2V2ZW50cy9jbGljay1ldmVudC5qcydcbmltcG9ydCB0eXBlIHsgRm9jdXNFdmVudCB9IGZyb20gJy4uL2V2ZW50cy9mb2N1cy1ldmVudC5qcydcbmltcG9ydCB0eXBlIHsgS2V5Ym9hcmRFdmVudCB9IGZyb20gJy4uL2V2ZW50cy9rZXlib2FyZC1ldmVudC5qcydcbmltcG9ydCB0eXBlIHsgU3R5bGVzIH0gZnJvbSAnLi4vc3R5bGVzLmpzJ1xuaW1wb3J0ICogYXMgd2FybiBmcm9tICcuLi93YXJuLmpzJ1xuXG5leHBvcnQgdHlwZSBQcm9wcyA9IEV4Y2VwdDxTdHlsZXMsICd0ZXh0V3JhcCc+ICYge1xuICByZWY/OiBSZWY8RE9NRWxlbWVudD5cbiAgLyoqXG4gICAqIFRhYiBvcmRlciBpbmRleC4gTm9kZXMgd2l0aCBgdGFiSW5kZXggPj0gMGAgcGFydGljaXBhdGUgaW5cbiAgICogVGFiL1NoaWZ0K1RhYiBjeWNsaW5nOyBgLTFgIG1lYW5zIHByb2dyYW1tYXRpY2FsbHkgZm9jdXNhYmxlIG9ubHkuXG4gICAqL1xuICB0YWJJbmRleD86IG51bWJlclxuICAvKipcbiAgICogRm9jdXMgdGhpcyBlbGVtZW50IHdoZW4gaXQgbW91bnRzLiBMaWtlIHRoZSBIVE1MIGBhdXRvZm9jdXNgXG4gICAqIGF0dHJpYnV0ZSDigJQgdGhlIEZvY3VzTWFuYWdlciBjYWxscyBgZm9jdXMobm9kZSlgIGR1cmluZyB0aGVcbiAgICogcmVjb25jaWxlcidzIGBjb21taXRNb3VudGAgcGhhc2UuXG4gICAqL1xuICBhdXRvRm9jdXM/OiBib29sZWFuXG4gIC8qKlxuICAgKiBGaXJlZCBvbiBsZWZ0LWJ1dHRvbiBjbGljayAocHJlc3MgKyByZWxlYXNlIHdpdGhvdXQgZHJhZykuIE9ubHkgd29ya3NcbiAgICogaW5zaWRlIGA8QWx0ZXJuYXRlU2NyZWVuPmAgd2hlcmUgbW91c2UgdHJhY2tpbmcgaXMgZW5hYmxlZCDigJQgbm8tb3BcbiAgICogb3RoZXJ3aXNlLiBUaGUgZXZlbnQgYnViYmxlcyBmcm9tIHRoZSBkZWVwZXN0IGhpdCBCb3ggdXAgdGhyb3VnaFxuICAgKiBhbmNlc3RvcnM7IGNhbGwgYGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpYCB0byBzdG9wIGJ1YmJsaW5nLlxuICAgKi9cbiAgb25DbGljaz86IChldmVudDogQ2xpY2tFdmVudCkgPT4gdm9pZFxuICBvbkZvY3VzPzogKGV2ZW50OiBGb2N1c0V2ZW50KSA9PiB2b2lkXG4gIG9uRm9jdXNDYXB0dXJlPzogKGV2ZW50OiBGb2N1c0V2ZW50KSA9PiB2b2lkXG4gIG9uQmx1cj86IChldmVudDogRm9jdXNFdmVudCkgPT4gdm9pZFxuICBvbkJsdXJDYXB0dXJlPzogKGV2ZW50OiBGb2N1c0V2ZW50KSA9PiB2b2lkXG4gIG9uS2V5RG93bj86IChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdm9pZFxuICBvbktleURvd25DYXB0dXJlPzogKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB2b2lkXG4gIC8qKlxuICAgKiBGaXJlZCB3aGVuIHRoZSBtb3VzZSBtb3ZlcyBpbnRvIHRoaXMgQm94J3MgcmVuZGVyZWQgcmVjdC4gTGlrZSBET01cbiAgICogYG1vdXNlZW50ZXJgLCBkb2VzIE5PVCBidWJibGUg4oCUIG1vdmluZyBiZXR3ZWVuIGNoaWxkcmVuIGRvZXMgbm90XG4gICAqIHJlLWZpcmUgb24gdGhlIHBhcmVudC4gT25seSB3b3JrcyBpbnNpZGUgYDxBbHRlcm5hdGVTY3JlZW4+YCB3aGVyZVxuICAgKiBtb2RlLTEwMDMgbW91c2UgdHJhY2tpbmcgaXMgZW5hYmxlZC5cbiAgICovXG4gIG9uTW91c2VFbnRlcj86ICgpID0+IHZvaWRcbiAgLyoqIEZpcmVkIHdoZW4gdGhlIG1vdXNlIG1vdmVzIG91dCBvZiB0aGlzIEJveCdzIHJlbmRlcmVkIHJlY3QuICovXG4gIG9uTW91c2VMZWF2ZT86ICgpID0+IHZvaWRcbn1cblxuLyoqXG4gKiBgPEJveD5gIGlzIGFuIGVzc2VudGlhbCBJbmsgY29tcG9uZW50IHRvIGJ1aWxkIHlvdXIgbGF5b3V0LiBJdCdzIGxpa2UgYDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4XCI+YCBpbiB0aGUgYnJvd3Nlci5cbiAqL1xuZnVuY3Rpb24gQm94KHtcbiAgY2hpbGRyZW4sXG4gIGZsZXhXcmFwID0gJ25vd3JhcCcsXG4gIGZsZXhEaXJlY3Rpb24gPSAncm93JyxcbiAgZmxleEdyb3cgPSAwLFxuICBmbGV4U2hyaW5rID0gMSxcbiAgcmVmLFxuICB0YWJJbmRleCxcbiAgYXV0b0ZvY3VzLFxuICB
|