diff --git a/dist/chunk-bscbaa87.js b/dist/chunk-5my64v78.js similarity index 98% rename from dist/chunk-bscbaa87.js rename to dist/chunk-5my64v78.js index 7d0feb7..5b3285c 100644 --- a/dist/chunk-bscbaa87.js +++ b/dist/chunk-5my64v78.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Badge.tsx import { insert as _$insert } from "@opentui/solid"; diff --git a/dist/chunk-b0h95a6q.js b/dist/chunk-5q9en54m.js similarity index 98% rename from dist/chunk-b0h95a6q.js rename to dist/chunk-5q9en54m.js index 2b3a72a..9a50195 100644 --- a/dist/chunk-b0h95a6q.js +++ b/dist/chunk-5q9en54m.js @@ -1,11 +1,11 @@ // @bun -import { - theme -} from "./chunk-x7m82z3z.js"; import { dismiss, notifications } from "./chunk-y6txxzxk.js"; +import { + theme +} from "./chunk-9cbm4zqz.js"; // src/components/NotificationHost.tsx import { effect as _$effect } from "@opentui/solid"; diff --git a/dist/chunk-3t6nhsa8.js b/dist/chunk-6g54ffq0.js similarity index 63% rename from dist/chunk-3t6nhsa8.js rename to dist/chunk-6g54ffq0.js index c571b5f..c3cf20b 100644 --- a/dist/chunk-3t6nhsa8.js +++ b/dist/chunk-6g54ffq0.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Modal.tsx import { createComponent as _$createComponent } from "@opentui/solid"; @@ -15,6 +15,8 @@ import { Portal, useTerminalDimensions } from "@opentui/solid"; import { Show } from "solid-js"; function Modal(props) { const dimensions = useTerminalDimensions(); + const maxPanelHeight = () => Math.max(5, dimensions().height - 4); + const maxContentHeight = () => Math.max(1, maxPanelHeight() - 4); return _$createComponent(Portal, { get children() { return _$createComponent(Show, { @@ -22,32 +24,38 @@ function Modal(props) { return props.open; }, get children() { - var _el$ = _$createElement("box"), _el$2 = _$createElement("box"); + var _el$ = _$createElement("box"), _el$2 = _$createElement("box"), _el$3 = _$createElement("scrollbox"); _$insertNode(_el$, _el$2); _$setProp(_el$, "position", "absolute"); _$setProp(_el$, "top", 0); _$setProp(_el$, "left", 0); _$setProp(_el$, "alignItems", "center"); + _$setProp(_el$, "justifyContent", "center"); _$setProp(_el$, "zIndex", 2000); + _$insertNode(_el$2, _el$3); _$setProp(_el$2, "border", true); _$setProp(_el$2, "flexDirection", "column"); _$setProp(_el$2, "paddingLeft", 2); _$setProp(_el$2, "paddingRight", 2); _$setProp(_el$2, "paddingTop", 1); _$setProp(_el$2, "paddingBottom", 1); - _$insert(_el$2, () => props.children); + _$setProp(_el$3, "flexShrink", 1); + _$setProp(_el$3, "scrollY", true); + _$setProp(_el$3, "scrollX", false); + _$insert(_el$3, () => props.children); _$effect((_p$) => { - var _v$ = dimensions().width, _v$2 = dimensions().height, _v$3 = Math.floor(dimensions().height / 4), _v$4 = props.backdropColor ?? RGBA.fromInts(0, 0, 0, 150), _v$5 = theme.mouse ? props.onDismiss : undefined, _v$6 = props.width ?? 50, _v$7 = theme.borderStyle, _v$8 = props.accentColor ?? theme.primary, _v$9 = props.backgroundColor ?? theme.background, _v$0 = theme.mouse ? (event) => event.stopPropagation() : undefined; + var _v$ = dimensions().width, _v$2 = dimensions().height, _v$3 = props.backdropColor ?? RGBA.fromInts(0, 0, 0, 150), _v$4 = theme.mouse ? props.onDismiss : undefined, _v$5 = props.width ?? 50, _v$6 = maxPanelHeight(), _v$7 = theme.borderStyle, _v$8 = props.accentColor ?? theme.primary, _v$9 = props.backgroundColor ?? theme.background, _v$0 = theme.mouse ? (event) => event.stopPropagation() : undefined, _v$1 = maxContentHeight(); _v$ !== _p$.e && (_p$.e = _$setProp(_el$, "width", _v$, _p$.e)); _v$2 !== _p$.t && (_p$.t = _$setProp(_el$, "height", _v$2, _p$.t)); - _v$3 !== _p$.a && (_p$.a = _$setProp(_el$, "paddingTop", _v$3, _p$.a)); - _v$4 !== _p$.o && (_p$.o = _$setProp(_el$, "backgroundColor", _v$4, _p$.o)); - _v$5 !== _p$.i && (_p$.i = _$setProp(_el$, "onMouseDown", _v$5, _p$.i)); - _v$6 !== _p$.n && (_p$.n = _$setProp(_el$2, "width", _v$6, _p$.n)); + _v$3 !== _p$.a && (_p$.a = _$setProp(_el$, "backgroundColor", _v$3, _p$.a)); + _v$4 !== _p$.o && (_p$.o = _$setProp(_el$, "onMouseDown", _v$4, _p$.o)); + _v$5 !== _p$.i && (_p$.i = _$setProp(_el$2, "width", _v$5, _p$.i)); + _v$6 !== _p$.n && (_p$.n = _$setProp(_el$2, "maxHeight", _v$6, _p$.n)); _v$7 !== _p$.s && (_p$.s = _$setProp(_el$2, "borderStyle", _v$7, _p$.s)); _v$8 !== _p$.h && (_p$.h = _$setProp(_el$2, "borderColor", _v$8, _p$.h)); _v$9 !== _p$.r && (_p$.r = _$setProp(_el$2, "backgroundColor", _v$9, _p$.r)); _v$0 !== _p$.d && (_p$.d = _$setProp(_el$2, "onMouseDown", _v$0, _p$.d)); + _v$1 !== _p$.l && (_p$.l = _$setProp(_el$3, "maxHeight", _v$1, _p$.l)); return _p$; }, { e: undefined, @@ -59,7 +67,8 @@ function Modal(props) { s: undefined, h: undefined, r: undefined, - d: undefined + d: undefined, + l: undefined }); return _el$; } diff --git a/dist/chunk-x7m82z3z.js b/dist/chunk-9cbm4zqz.js similarity index 100% rename from dist/chunk-x7m82z3z.js rename to dist/chunk-9cbm4zqz.js index 87166d7..0467225 100644 --- a/dist/chunk-x7m82z3z.js +++ b/dist/chunk-9cbm4zqz.js @@ -1,8 +1,4 @@ // @bun -import { - configPath, - readYamlFile -} from "./chunk-7f8jagy5.js"; import { mergeConfig, normalizeColors, @@ -11,6 +7,10 @@ import { import { buildPresets } from "./chunk-cnhhssmz.js"; +import { + configPath, + readYamlFile +} from "./chunk-7f8jagy5.js"; // src/index.ts import { join } from "path"; diff --git a/dist/chunk-mezyz219.js b/dist/chunk-gc6m7gbw.js similarity index 96% rename from dist/chunk-mezyz219.js rename to dist/chunk-gc6m7gbw.js index 1fdf90d..840fb6a 100644 --- a/dist/chunk-mezyz219.js +++ b/dist/chunk-gc6m7gbw.js @@ -1,10 +1,10 @@ // @bun import { Badge -} from "./chunk-bscbaa87.js"; +} from "./chunk-5my64v78.js"; import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Toggle.tsx import { setProp as _$setProp } from "@opentui/solid"; diff --git a/dist/chunk-5m64a9kb.js b/dist/chunk-hq5k1y0s.js similarity index 98% rename from dist/chunk-5m64a9kb.js rename to dist/chunk-hq5k1y0s.js index 372adf8..027e6db 100644 --- a/dist/chunk-5m64a9kb.js +++ b/dist/chunk-hq5k1y0s.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/ProgressBar.tsx import { effect as _$effect } from "@opentui/solid"; diff --git a/dist/chunk-rvq53a2a.js b/dist/chunk-mj1hhxzy.js similarity index 99% rename from dist/chunk-rvq53a2a.js rename to dist/chunk-mj1hhxzy.js index 3883e9d..1cffc93 100644 --- a/dist/chunk-rvq53a2a.js +++ b/dist/chunk-mj1hhxzy.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/HelpBar.tsx import { createTextNode as _$createTextNode } from "@opentui/solid"; diff --git a/dist/chunk-dctn29v0.js b/dist/chunk-qeqbg1rs.js similarity index 97% rename from dist/chunk-dctn29v0.js rename to dist/chunk-qeqbg1rs.js index 4ae3349..1a29069 100644 --- a/dist/chunk-dctn29v0.js +++ b/dist/chunk-qeqbg1rs.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/SignalBars.tsx import { effect as _$effect } from "@opentui/solid"; diff --git a/dist/chunk-c7bjgk8c.js b/dist/chunk-qpd35mce.js similarity index 98% rename from dist/chunk-c7bjgk8c.js rename to dist/chunk-qpd35mce.js index 68b926d..d579c59 100644 --- a/dist/chunk-c7bjgk8c.js +++ b/dist/chunk-qpd35mce.js @@ -1,7 +1,7 @@ // @bun import { Modal -} from "./chunk-3t6nhsa8.js"; +} from "./chunk-6g54ffq0.js"; import { helpOpen, toggleHelp diff --git a/dist/chunk-hj94kpbg.js b/dist/chunk-wc3fqqt2.js similarity index 99% rename from dist/chunk-hj94kpbg.js rename to dist/chunk-wc3fqqt2.js index f1d1ed0..f32cbab 100644 --- a/dist/chunk-hj94kpbg.js +++ b/dist/chunk-wc3fqqt2.js @@ -2,7 +2,7 @@ import { presets, theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Sidebar.tsx import { use as _$use } from "@opentui/solid"; diff --git a/dist/chunk-eta27h3c.js b/dist/chunk-xd40rew1.js similarity index 98% rename from dist/chunk-eta27h3c.js rename to dist/chunk-xd40rew1.js index daee13f..785b63e 100644 --- a/dist/chunk-eta27h3c.js +++ b/dist/chunk-xd40rew1.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/MinSizeGuard.tsx import { createComponent as _$createComponent } from "@opentui/solid"; diff --git a/dist/chunk-ev4wvhd2.js b/dist/chunk-yvprfbxx.js similarity index 99% rename from dist/chunk-ev4wvhd2.js rename to dist/chunk-yvprfbxx.js index e3e8901..ad48e7a 100644 --- a/dist/chunk-ev4wvhd2.js +++ b/dist/chunk-yvprfbxx.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Tabs.tsx import { effect as _$effect } from "@opentui/solid"; diff --git a/dist/chunk-ynqvwj4d.js b/dist/chunk-zvmj6cvs.js similarity index 94% rename from dist/chunk-ynqvwj4d.js rename to dist/chunk-zvmj6cvs.js index 833fef0..a0867ac 100644 --- a/dist/chunk-ynqvwj4d.js +++ b/dist/chunk-zvmj6cvs.js @@ -1,7 +1,7 @@ // @bun import { theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; // src/components/Box.tsx import { spread as _$spread } from "@opentui/solid"; diff --git a/dist/components/Badge.js b/dist/components/Badge.js index 7aad879..6d3c2c0 100644 --- a/dist/components/Badge.js +++ b/dist/components/Badge.js @@ -1,11 +1,11 @@ // @bun import { Badge -} from "../chunk-bscbaa87.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-5my64v78.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { Badge }; diff --git a/dist/components/Box.js b/dist/components/Box.js index d358e68..a8a85e5 100644 --- a/dist/components/Box.js +++ b/dist/components/Box.js @@ -1,11 +1,11 @@ // @bun import { Box -} from "../chunk-ynqvwj4d.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-zvmj6cvs.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { Box }; diff --git a/dist/components/HelpBar.js b/dist/components/HelpBar.js index 078f853..ed96a54 100644 --- a/dist/components/HelpBar.js +++ b/dist/components/HelpBar.js @@ -1,11 +1,11 @@ // @bun import { HelpBar -} from "../chunk-rvq53a2a.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-mj1hhxzy.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { HelpBar }; diff --git a/dist/components/HelpModal.js b/dist/components/HelpModal.js index ebc8691..734cd31 100644 --- a/dist/components/HelpModal.js +++ b/dist/components/HelpModal.js @@ -1,12 +1,12 @@ // @bun import { HelpModal -} from "../chunk-c7bjgk8c.js"; -import"../chunk-3t6nhsa8.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-qpd35mce.js"; +import"../chunk-6g54ffq0.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; import"../chunk-cyvpvpws.js"; export { HelpModal diff --git a/dist/components/MinSizeGuard.js b/dist/components/MinSizeGuard.js index 318da10..6d10089 100644 --- a/dist/components/MinSizeGuard.js +++ b/dist/components/MinSizeGuard.js @@ -1,11 +1,11 @@ // @bun import { MinSizeGuard -} from "../chunk-eta27h3c.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-xd40rew1.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { MinSizeGuard }; diff --git a/dist/components/Modal.js b/dist/components/Modal.js index 4f67217..2358ae5 100644 --- a/dist/components/Modal.js +++ b/dist/components/Modal.js @@ -1,11 +1,11 @@ // @bun import { Modal -} from "../chunk-3t6nhsa8.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-6g54ffq0.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { Modal }; diff --git a/dist/components/NotificationHost.js b/dist/components/NotificationHost.js index 20358eb..c01122d 100644 --- a/dist/components/NotificationHost.js +++ b/dist/components/NotificationHost.js @@ -1,12 +1,12 @@ // @bun import { NotificationHost -} from "../chunk-b0h95a6q.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-5q9en54m.js"; +import"../chunk-y6txxzxk.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; -import"../chunk-y6txxzxk.js"; +import"../chunk-7f8jagy5.js"; export { NotificationHost }; diff --git a/dist/components/ProgressBar.js b/dist/components/ProgressBar.js index baeb011..211966d 100644 --- a/dist/components/ProgressBar.js +++ b/dist/components/ProgressBar.js @@ -1,11 +1,11 @@ // @bun import { ProgressBar -} from "../chunk-5m64a9kb.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-hq5k1y0s.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { ProgressBar }; diff --git a/dist/components/Sidebar.js b/dist/components/Sidebar.js index 6b0459e..861411e 100644 --- a/dist/components/Sidebar.js +++ b/dist/components/Sidebar.js @@ -1,11 +1,11 @@ // @bun import { Sidebar -} from "../chunk-hj94kpbg.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-wc3fqqt2.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { Sidebar }; diff --git a/dist/components/SignalBars.js b/dist/components/SignalBars.js index 14e8e58..20dadde 100644 --- a/dist/components/SignalBars.js +++ b/dist/components/SignalBars.js @@ -1,11 +1,11 @@ // @bun import { SignalBars -} from "../chunk-dctn29v0.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-qeqbg1rs.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { SignalBars }; diff --git a/dist/components/Spinner.js b/dist/components/Spinner.js index b0475f6..970730b 100644 --- a/dist/components/Spinner.js +++ b/dist/components/Spinner.js @@ -1,10 +1,10 @@ // @bun import { theme -} from "../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; // src/components/Spinner.tsx import { setProp as _$setProp } from "@opentui/solid"; diff --git a/dist/components/Tabs.js b/dist/components/Tabs.js index 32f5f7f..abeb977 100644 --- a/dist/components/Tabs.js +++ b/dist/components/Tabs.js @@ -2,11 +2,11 @@ import { Tabs, stepTabValue -} from "../chunk-ev4wvhd2.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-yvprfbxx.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { stepTabValue, Tabs diff --git a/dist/components/Toggle.js b/dist/components/Toggle.js index d399c4f..b3df648 100644 --- a/dist/components/Toggle.js +++ b/dist/components/Toggle.js @@ -1,12 +1,12 @@ // @bun import { Toggle -} from "../chunk-mezyz219.js"; -import"../chunk-bscbaa87.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-gc6m7gbw.js"; +import"../chunk-5my64v78.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; export { Toggle }; diff --git a/dist/components/help.js b/dist/components/help.js index 0476ad1..5bb2c26 100644 --- a/dist/components/help.js +++ b/dist/components/help.js @@ -1,15 +1,15 @@ // @bun -import { - HelpModal -} from "../chunk-c7bjgk8c.js"; -import"../chunk-3t6nhsa8.js"; import { HelpBar -} from "../chunk-rvq53a2a.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; +} from "../chunk-mj1hhxzy.js"; +import { + HelpModal +} from "../chunk-qpd35mce.js"; +import"../chunk-6g54ffq0.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; +import"../chunk-7f8jagy5.js"; import"../chunk-cyvpvpws.js"; export { HelpModal, diff --git a/dist/components/index.js b/dist/components/index.js index 7b59cc2..b23e232 100644 --- a/dist/components/index.js +++ b/dist/components/index.js @@ -1,40 +1,40 @@ // @bun -import { - Box -} from "../chunk-ynqvwj4d.js"; import { NotificationHost -} from "../chunk-b0h95a6q.js"; +} from "../chunk-5q9en54m.js"; import { - Toggle -} from "../chunk-mezyz219.js"; -import { - MinSizeGuard -} from "../chunk-eta27h3c.js"; + ProgressBar +} from "../chunk-hq5k1y0s.js"; import { Sidebar -} from "../chunk-hj94kpbg.js"; +} from "../chunk-wc3fqqt2.js"; +import { + SignalBars +} from "../chunk-qeqbg1rs.js"; import { Tabs, stepTabValue -} from "../chunk-ev4wvhd2.js"; +} from "../chunk-yvprfbxx.js"; import { - Modal -} from "../chunk-3t6nhsa8.js"; + Toggle +} from "../chunk-gc6m7gbw.js"; import { Badge -} from "../chunk-bscbaa87.js"; +} from "../chunk-5my64v78.js"; import { - ProgressBar -} from "../chunk-5m64a9kb.js"; + Box +} from "../chunk-zvmj6cvs.js"; import { - SignalBars -} from "../chunk-dctn29v0.js"; -import"../chunk-x7m82z3z.js"; -import"../chunk-7f8jagy5.js"; + Modal +} from "../chunk-6g54ffq0.js"; +import { + MinSizeGuard +} from "../chunk-xd40rew1.js"; +import"../chunk-y6txxzxk.js"; +import"../chunk-9cbm4zqz.js"; import"../chunk-hcq62p48.js"; import"../chunk-cnhhssmz.js"; -import"../chunk-y6txxzxk.js"; +import"../chunk-7f8jagy5.js"; export { stepTabValue, Toggle, diff --git a/dist/context/index.js b/dist/context/index.js index 51fb61b..50864d2 100644 --- a/dist/context/index.js +++ b/dist/context/index.js @@ -2,15 +2,15 @@ import { createSimpleContext } from "../chunk-2px9e43p.js"; -import { - helpOpen, - toggleHelp -} from "../chunk-cyvpvpws.js"; import { dismiss, notifications, notify } from "../chunk-y6txxzxk.js"; +import { + helpOpen, + toggleHelp +} from "../chunk-cyvpvpws.js"; export { toggleHelp, notify, diff --git a/dist/index.js b/dist/index.js index 9852f97..3d71a6b 100644 --- a/dist/index.js +++ b/dist/index.js @@ -2,12 +2,12 @@ import { presets, theme -} from "./chunk-x7m82z3z.js"; +} from "./chunk-9cbm4zqz.js"; +import"./chunk-hcq62p48.js"; +import"./chunk-cnhhssmz.js"; import { configPath } from "./chunk-7f8jagy5.js"; -import"./chunk-hcq62p48.js"; -import"./chunk-cnhhssmz.js"; export { theme, presets, diff --git a/dist/solid.js b/dist/solid.js index 853f0d8..ecbc888 100644 --- a/dist/solid.js +++ b/dist/solid.js @@ -2,10 +2,10 @@ import { presets, theme -} from "./chunk-x7m82z3z.js"; -import"./chunk-7f8jagy5.js"; +} from "./chunk-9cbm4zqz.js"; import"./chunk-hcq62p48.js"; import"./chunk-cnhhssmz.js"; +import"./chunk-7f8jagy5.js"; // src/solid.ts import { extend } from "@opentui/solid"; diff --git a/src/components/Modal.tsx b/src/components/Modal.tsx index e839242..71387c9 100644 --- a/src/components/Modal.tsx +++ b/src/components/Modal.tsx @@ -14,6 +14,14 @@ export interface ModalProps extends ParentProps { export function Modal(props: ModalProps) { const dimensions = useTerminalDimensions(); + // Leave a margin of screen rows above/below so the panel never touches the + // terminal edges, then reserve the border + vertical padding from that + // budget for the scrollable content itself. On a short terminal (or with + // a lot of content, e.g. HelpModal's keybinding list) this keeps the panel + // fully on-screen — with a scrollbar — instead of spilling past the bottom + // edge with no way to see or reach the rest of it. + const maxPanelHeight = () => Math.max(5, dimensions().height - 4); + const maxContentHeight = () => Math.max(1, maxPanelHeight() - 4); return ( @@ -25,13 +33,14 @@ export function Modal(props: ModalProps) { top={0} left={0} alignItems="center" - paddingTop={Math.floor(dimensions().height / 4)} + justifyContent="center" backgroundColor={props.backdropColor ?? RGBA.fromInts(0, 0, 0, 150)} zIndex={2000} onMouseDown={theme.mouse ? props.onDismiss : undefined} > event.stopPropagation() : undefined} > - {props.children} + + {props.children} +