@visulima/tui 1.0.0-alpha.23 → 1.0.0-alpha.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +51 -0
- package/README.md +17 -0
- package/dist/components/accordion.js +1 -1
- package/dist/components/alert.js +1 -1
- package/dist/components/animate-presence.js +1 -1
- package/dist/components/approval-prompt.js +1 -1
- package/dist/components/area-chart.js +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/bar-chart.js +1 -1
- package/dist/components/big-text.js +1 -1
- package/dist/components/blink-dot.js +1 -1
- package/dist/components/box.d.ts +1 -1
- package/dist/components/breadcrumb.js +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/calendar.js +1 -1
- package/dist/components/canvas.d.ts +1 -1
- package/dist/components/canvas.js +1 -1
- package/dist/components/card.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/code.js +2 -2
- package/dist/components/collapsible.js +1 -1
- package/dist/components/command-block.js +4 -4
- package/dist/components/command-palette.js +1 -1
- package/dist/components/confirm-dialog.js +1 -1
- package/dist/components/confirm-input.js +1 -1
- package/dist/components/console-overlay.js +1 -1
- package/dist/components/content-switcher.js +1 -1
- package/dist/components/controlled-scroll-view.d.ts +1 -1
- package/dist/components/controlled-scroll-view.js +1 -1
- package/dist/components/cursor.d.ts +1 -1
- package/dist/components/cursor.js +1 -1
- package/dist/components/date-picker.js +1 -1
- package/dist/components/definition-list.js +1 -1
- package/dist/components/dialog.d.ts +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/diff-view.js +1 -1
- package/dist/components/divider.js +1 -1
- package/dist/components/file-picker-entry.js +1 -1
- package/dist/components/form.js +1 -1
- package/dist/components/gauge.js +1 -1
- package/dist/components/gradient.js +1 -1
- package/dist/components/heading.js +1 -1
- package/dist/components/heatmap.js +1 -1
- package/dist/components/help.js +1 -1
- package/dist/components/histogram.js +1 -1
- package/dist/components/kbd.js +1 -1
- package/dist/components/line-chart.js +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/loading-indicator.js +1 -1
- package/dist/components/markdown.js +1 -1
- package/dist/components/masked-input.js +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/message-bubble.js +1 -1
- package/dist/components/model-badge.js +1 -1
- package/dist/components/multi-select.js +1 -1
- package/dist/components/newline.js +2 -2
- package/dist/components/operation-tree.js +1 -1
- package/dist/components/option-list.js +1 -1
- package/dist/components/ordered-list.js +1 -1
- package/dist/components/paginator.js +1 -1
- package/dist/components/paragraph.js +1 -1
- package/dist/components/placeholder.js +1 -1
- package/dist/components/progress-bar.js +1 -1
- package/dist/components/radio-group.js +1 -1
- package/dist/components/scatter-plot.js +1 -1
- package/dist/components/scroll-bar-box.d.ts +1 -1
- package/dist/components/scroll-bar-box.js +1 -1
- package/dist/components/scroll-bar.d.ts +1 -1
- package/dist/components/scroll-bar.js +1 -1
- package/dist/components/scroll-list.d.ts +1 -1
- package/dist/components/scroll-list.js +1 -1
- package/dist/components/scroll-view.d.ts +1 -1
- package/dist/components/scroll-view.js +1 -1
- package/dist/components/search-input.js +1 -1
- package/dist/components/select-input-indicator.js +1 -1
- package/dist/components/select-input-item.js +1 -1
- package/dist/components/select-input.js +1 -1
- package/dist/components/shimmer-text.js +1 -1
- package/dist/components/slider.js +1 -1
- package/dist/components/spacer.js +1 -1
- package/dist/components/sparkline.js +1 -1
- package/dist/components/spinner.js +1 -1
- package/dist/components/static-render.d.ts +1 -1
- package/dist/components/static-render.js +1 -1
- package/dist/components/static.js +1 -1
- package/dist/components/status-line.js +1 -1
- package/dist/components/status-message.js +1 -1
- package/dist/components/stepper.js +1 -1
- package/dist/components/stopwatch.js +1 -1
- package/dist/components/streaming-text.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/tab.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/tag.js +1 -1
- package/dist/components/text-input.js +1 -1
- package/dist/components/text.js +1 -1
- package/dist/components/textarea.js +2 -2
- package/dist/components/timer.js +1 -1
- package/dist/components/toast.js +1 -1
- package/dist/components/tooltip.js +1 -1
- package/dist/components/transform.js +1 -1
- package/dist/components/transition.js +1 -1
- package/dist/components/tree-view-entry.d.ts +1 -1
- package/dist/components/tree-view-entry.js +1 -1
- package/dist/components/unordered-list.js +1 -1
- package/dist/core/index.js +1 -1
- package/dist/ink/hooks/use-animation.js +1 -1
- package/dist/ink/hooks/use-app.js +1 -1
- package/dist/ink/hooks/use-box-metrics.d.ts +1 -1
- package/dist/ink/hooks/use-box-metrics.js +1 -1
- package/dist/ink/hooks/use-clipboard.js +1 -1
- package/dist/ink/hooks/use-color-blindness.js +1 -1
- package/dist/ink/hooks/use-console-capture.js +1 -1
- package/dist/ink/hooks/use-cursor.js +1 -1
- package/dist/ink/hooks/use-focus-manager.js +1 -1
- package/dist/ink/hooks/use-focus.js +1 -1
- package/dist/ink/hooks/use-form.js +1 -1
- package/dist/ink/hooks/use-hotkey.js +1 -1
- package/dist/ink/hooks/use-input.js +2 -2
- package/dist/ink/hooks/use-interval.js +1 -1
- package/dist/ink/hooks/use-is-screen-reader-enabled.js +1 -1
- package/dist/ink/hooks/use-key-bindings.js +1 -1
- package/dist/ink/hooks/use-key-chord.js +1 -1
- package/dist/ink/hooks/use-linked-scroll.d.ts +1 -1
- package/dist/ink/hooks/use-linked-scroll.js +1 -1
- package/dist/ink/hooks/use-paste.js +1 -1
- package/dist/ink/hooks/use-persistent-state.d.ts +12 -3
- package/dist/ink/hooks/use-persistent-state.js +2 -2
- package/dist/ink/hooks/use-scroll-acceleration.js +1 -1
- package/dist/ink/hooks/use-scroll-input.js +1 -1
- package/dist/ink/hooks/use-stderr.js +1 -1
- package/dist/ink/hooks/use-stdin.js +1 -1
- package/dist/ink/hooks/use-stdout.js +1 -1
- package/dist/ink/hooks/use-stopwatch.js +1 -1
- package/dist/ink/hooks/use-terminal-palette.js +1 -1
- package/dist/ink/hooks/use-text-buffer.js +4 -4
- package/dist/ink/hooks/use-text-selection.d.ts +2 -2
- package/dist/ink/hooks/use-text-selection.js +1 -1
- package/dist/ink/hooks/use-timeout.js +1 -1
- package/dist/ink/hooks/use-timer.js +1 -1
- package/dist/ink/hooks/use-window-size.js +1 -1
- package/dist/ink/index.d.ts +17 -62
- package/dist/ink/index.js +1 -1
- package/dist/ink/mouse/use-element-position.d.ts +31 -0
- package/dist/ink/mouse/use-element-position.js +1 -0
- package/dist/ink/mouse/use-mouse-action.d.ts +5 -0
- package/dist/ink/mouse/use-mouse-action.js +1 -0
- package/dist/ink/mouse/use-mouse-position.d.ts +5 -0
- package/dist/ink/mouse/use-mouse-position.js +1 -0
- package/dist/ink/mouse/use-mouse.d.ts +5 -0
- package/dist/ink/mouse/use-mouse.js +1 -0
- package/dist/ink/mouse/use-on-mouse-click.d.ts +16 -0
- package/dist/ink/mouse/use-on-mouse-click.js +1 -0
- package/dist/ink/mouse/use-on-mouse-hover.d.ts +10 -0
- package/dist/ink/mouse/use-on-mouse-hover.js +1 -0
- package/dist/ink/mouse/use-on-mouse-state.d.ts +13 -0
- package/dist/ink/mouse/use-on-mouse-state.js +1 -0
- package/dist/packem_chunks/devtools.js +1 -1
- package/dist/packem_shared/COLOR_BLINDNESS_COMPENSATION-Ilnoyeqc.js +1 -0
- package/dist/packem_shared/ControlledScrollView-BoN5Oi-p.js +1 -0
- package/dist/packem_shared/DevTools-k6uiVzqv.js +1 -0
- package/dist/packem_shared/FilePicker-BLS9nOPz.js +1 -0
- package/dist/packem_shared/FocusContext-C2Sosxa4.js +1 -0
- package/dist/packem_shared/Fullscreen-BRhuBLBh.js +1 -0
- package/dist/packem_shared/IMECompositionBuffer-VhC9HRCv.js +1 -0
- package/dist/packem_shared/InputParser-CtwkCbrQ.js +2 -0
- package/dist/packem_shared/KEY-C--kOw41.js +1 -0
- package/dist/packem_shared/LayoutNode-LPYsuzBg.js +1 -0
- package/dist/packem_shared/MouseProvider-DUqQ3Eaa.js +1 -0
- package/dist/packem_shared/NAMED_COLORS-82DpREQV.js +1 -0
- package/dist/packem_shared/Range-BsVYNWtg.js +1 -0
- package/dist/packem_shared/Renderer-DsskdkUd.js +1 -0
- package/dist/packem_shared/ResizeObserver-aX8XOr2u.js +1 -0
- package/dist/packem_shared/ScrollBar-BKCK8jsb.js +1 -0
- package/dist/packem_shared/ScrollBarBox-CBhLo6eZ.js +1 -0
- package/dist/packem_shared/ScrollList-DyFyVs6I.js +1 -0
- package/dist/packem_shared/ScrollView-BEgrtSnt.js +1 -0
- package/dist/packem_shared/Static-DSzsElz4.js +1 -0
- package/dist/packem_shared/TreeNodeMap-cJlYqckB.js +1 -0
- package/dist/packem_shared/TreeView-BsvLCsf0.js +1 -0
- package/dist/packem_shared/TuiApp-BPL8v1i1.js +1 -0
- package/dist/packem_shared/TuiContext-BNmP0lMY.js +3 -0
- package/dist/packem_shared/ansi-parser-DlgLtOYO.js +1 -0
- package/dist/packem_shared/ansi-tokenizer-BU67A126.js +1 -0
- package/dist/packem_shared/braille-ch3O5D7I.js +1 -0
- package/dist/packem_shared/calculateScroll-D4Y_JR4H.js +1 -0
- package/dist/packem_shared/calculateScrollbarLayout--eUVRLw7.js +1 -0
- package/dist/packem_shared/clearOsc52-BUpnQOav.js +1 -0
- package/dist/packem_shared/clearStringWidthCache-DKFjfJuB.js +1 -0
- package/dist/packem_shared/colorize-DU4YZkp3.js +1 -0
- package/dist/packem_shared/controlled-scroll-view-t55HU9L8.js +1 -0
- package/dist/packem_shared/createInlineLoop-BT40Wpmx.js +2 -0
- package/dist/packem_shared/createScreen-DoYpyL0V.js +3 -0
- package/dist/packem_shared/dom-rphpG0kf.js +1 -0
- package/dist/packem_shared/{dom.d-C1IxuLJ9.d.ts → dom.d-B4kXbaVY.d.ts} +35 -0
- package/dist/packem_shared/format-time-fjoQHMxD.js +1 -0
- package/dist/packem_shared/{getPathToRoot-BuAM_kmj.js → getPathToRoot-PDJeqiEH.js} +1 -1
- package/dist/packem_shared/input-utils-BSWCb4F_.js +1 -0
- package/dist/packem_shared/isIntersecting-Bo2npvMR.js +1 -0
- package/dist/packem_shared/isTerminalPaletteQuerySupported-BYzmqq9-.js +1 -0
- package/dist/packem_shared/kittyFlags-g8ALyoCU.js +1 -0
- package/dist/packem_shared/line-chart-C7CUrvVs.js +1 -0
- package/dist/packem_shared/load-native-root-binding-DDikxNox.js +1 -0
- package/dist/packem_shared/measure-element-Cs7_proT.js +2 -0
- package/dist/packem_shared/measure-text-B7juNq4Y.js +3 -0
- package/dist/packem_shared/mouse-context.d-BfL9xGk_.d.ts +30 -0
- package/dist/packem_shared/parseSgrMouse-bUrqPrh-.js +1 -0
- package/dist/packem_shared/processLayout-tAee0ytT.js +1 -0
- package/dist/packem_shared/reconciler-CFyBVf7l.js +1 -0
- package/dist/packem_shared/reconciler-ClpU7Y-V.js +1 -0
- package/dist/packem_shared/render-DFZ8NHlG.js +1 -0
- package/dist/packem_shared/render-DSuj2PjD.js +24 -0
- package/dist/packem_shared/{render.d-DuyG0zip.d.ts → render.d-CBnYBDk2.d.ts} +1 -1
- package/dist/packem_shared/renderToString-Do8K5Fyk.js +4 -0
- package/dist/packem_shared/renderToString-L_bpw4OQ.js +2 -0
- package/dist/packem_shared/renderTreeToBuffer-C8lS0lJ2.js +2 -0
- package/dist/packem_shared/renderer-COXHo5Xk.js +17 -0
- package/dist/packem_shared/{selection.d-Dbha5bMS.d.ts → selection.d-CI3_p8wg.d.ts} +1 -1
- package/dist/packem_shared/squashTextNodesWithMap-BmUSBPfc.js +1 -0
- package/dist/packem_shared/stderr-context-Bvnik0hL.js +1 -0
- package/dist/packem_shared/stdin-context-88AhuztD.js +1 -0
- package/dist/packem_shared/text-width-e49vlbQH.js +2 -0
- package/dist/packem_shared/token-to-elements-D6J6-P2A.js +1 -0
- package/dist/packem_shared/treeViewTheme-Dq3ekRAC.js +1 -0
- package/dist/packem_shared/useTreeView-D5ifGwG3.js +1 -0
- package/dist/packem_shared/useTreeViewState-BiTJakkh.js +1 -0
- package/dist/packem_shared/utils-Bup8lyK8.js +1 -0
- package/dist/packem_shared/waitFor-CTAki32d.js +4 -0
- package/dist/packem_shared/wrapOrTruncateStyledLine-46W8bTtv.js +3 -0
- package/dist/react/index.js +1 -1
- package/dist/testing/index.d.ts +2 -2
- package/dist/testing/index.js +1 -1
- package/index.js +691 -539
- package/package.json +48 -23
- package/dist/packem_shared/COLOR_BLINDNESS_SIMULATION-DqErf7XX.js +0 -1
- package/dist/packem_shared/ControlledScrollView-CIc-x1Cx.js +0 -1
- package/dist/packem_shared/DevTools-ClAYpMVI.js +0 -1
- package/dist/packem_shared/FilePicker-tYj_CIau.js +0 -1
- package/dist/packem_shared/FocusContext-Xy0cwJpO.js +0 -1
- package/dist/packem_shared/Fullscreen-CxLd1-Zu.js +0 -1
- package/dist/packem_shared/IMECompositionBuffer-C89PhiOu.js +0 -1
- package/dist/packem_shared/InputParser-B_qZcN3r.js +0 -2
- package/dist/packem_shared/KEY-Bk8B-3h_.js +0 -1
- package/dist/packem_shared/LayoutNode-B8zej4dm.js +0 -1
- package/dist/packem_shared/MouseProvider-PnIUKURs.js +0 -1
- package/dist/packem_shared/NAMED_COLORS-B9fJsYdg.js +0 -1
- package/dist/packem_shared/Renderer-DJXooAsp.js +0 -1
- package/dist/packem_shared/ResizeObserverEntry-Dq0dk8Kq.js +0 -1
- package/dist/packem_shared/ScrollBar-U_37hlIT.js +0 -1
- package/dist/packem_shared/ScrollBarBox-DwiCxilX.js +0 -1
- package/dist/packem_shared/ScrollList-C7nZ9ufK.js +0 -1
- package/dist/packem_shared/ScrollView-DKZ8OM-m.js +0 -1
- package/dist/packem_shared/Static-DLynr5pn.js +0 -1
- package/dist/packem_shared/TreeNodeMap-CspqSCpb.js +0 -1
- package/dist/packem_shared/TreeView-C0Iv3et8.js +0 -1
- package/dist/packem_shared/TuiApp-BVDXP0Cv.js +0 -1
- package/dist/packem_shared/TuiContext-BoJvG3NN.js +0 -3
- package/dist/packem_shared/ansi-parser-B6uXaq65.js +0 -1
- package/dist/packem_shared/ansi-tokenizer-DqX9nJuk.js +0 -1
- package/dist/packem_shared/braille-BBjIoaN0.js +0 -1
- package/dist/packem_shared/colorize-DbTZMrJO.js +0 -1
- package/dist/packem_shared/comparePoints-C3NJirbh.js +0 -1
- package/dist/packem_shared/controlled-scroll-view-CcUS50jx.js +0 -1
- package/dist/packem_shared/createInlineLoop-DRNZ7jqH.js +0 -2
- package/dist/packem_shared/createScreen-CrLrxA6t.js +0 -3
- package/dist/packem_shared/dom-CXB-19sK.js +0 -1
- package/dist/packem_shared/format-time-C7Q-hQZq.js +0 -1
- package/dist/packem_shared/getScrollHeight-ClEOyLHH.js +0 -1
- package/dist/packem_shared/input-utils-fAxzSlNh.js +0 -1
- package/dist/packem_shared/isIntersecting-B3KbKTmu.js +0 -1
- package/dist/packem_shared/isOsc52Supported-DKK7Uee6.js +0 -1
- package/dist/packem_shared/isTerminalPaletteQuerySupported-Dn2hFAZ_.js +0 -1
- package/dist/packem_shared/kittyFlags-C3rZLbcK.js +0 -1
- package/dist/packem_shared/layout-BMo200nF.js +0 -2
- package/dist/packem_shared/line-chart-kf7uhR0K.js +0 -1
- package/dist/packem_shared/measure-text-Ce2widM1.js +0 -3
- package/dist/packem_shared/measureElement-BTtTFZg4.js +0 -1
- package/dist/packem_shared/parseSgrMouse-Ccj70ijb.js +0 -1
- package/dist/packem_shared/processLayout-FEKj_mWu.js +0 -1
- package/dist/packem_shared/reconciler-DIfG72R9.js +0 -1
- package/dist/packem_shared/reconciler-DYE5h4K4.js +0 -1
- package/dist/packem_shared/render-BRR1ESvR.js +0 -26
- package/dist/packem_shared/render-Dh7HMhK1.js +0 -1
- package/dist/packem_shared/renderToString-BbQiRHrd.js +0 -2
- package/dist/packem_shared/renderToString-vEQyGmv6.js +0 -4
- package/dist/packem_shared/renderTreeToBuffer-CZilzyhN.js +0 -2
- package/dist/packem_shared/renderer-maLLQcut.js +0 -17
- package/dist/packem_shared/setEnableStyledLineCache-DSbMbENc.js +0 -1
- package/dist/packem_shared/squashTextNodesWithMap-DCdi3SZ2.js +0 -1
- package/dist/packem_shared/stderr-context-BzEaUICS.js +0 -1
- package/dist/packem_shared/stdin-context-BTaaFagk.js +0 -1
- package/dist/packem_shared/text-width-BU2eeTWn.js +0 -2
- package/dist/packem_shared/token-to-elements-BAZpNZsu.js +0 -1
- package/dist/packem_shared/treeViewTheme-1RIZyB4M.js +0 -1
- package/dist/packem_shared/useElementDimensions-qJ_WXFZ9.js +0 -1
- package/dist/packem_shared/useMouseAction-2dRfU1vE.js +0 -1
- package/dist/packem_shared/useMouseContext-C746G7kY.js +0 -1
- package/dist/packem_shared/useMousePosition-BTWfV4JK.js +0 -1
- package/dist/packem_shared/useOnMouseClick-nY8xLZmt.js +0 -1
- package/dist/packem_shared/useOnMouseHover-D3DczIol.js +0 -1
- package/dist/packem_shared/useOnMouseState-cRK8QvzD.js +0 -1
- package/dist/packem_shared/useTreeView-BoMMeRPq.js +0 -1
- package/dist/packem_shared/useTreeViewState-CRPCUWrb.js +0 -1
- package/dist/packem_shared/utils-CoviI5Vm.js +0 -1
- package/dist/packem_shared/waitFor-Dj5zfL5s.js +0 -4
- package/dist/packem_shared/wrapOrTruncateStyledLine-C5rcIrNb.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as f}from"react/jsx-runtime";import{useMemo as s}from"react";import{Text as c}from"./text.js";const e="▁▂▃▄▅▆▇█",I=(m,t,o)=>{if(o===0)return e[0];const r=(m-t)/o,n=Math.max(0,Math.min(e.length-1,Math.floor(r*e.length)));return e[n]},h=(m,t,o)=>{let r=t??Number.POSITIVE_INFINITY,n=o??Number.NEGATIVE_INFINITY;if(t===void 0||o===void 0)for(const i of m)t===void 0&&i<r&&(r=i),o===void 0&&i>n&&(n=i);return{max:n,min:r}};function p({color:m,data:t,max:o,min:r}){const n=s(()=>{if(t.length===0)return"";const{max:i,min:a}=h(t,r,o),l=i-a;return t.map(u=>I(u,a,l)).join("")},[t,r,o]);return n.length===0?null:f(c,{color:m,children:n})}export{p as Sparkline,p as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as i}from"react/jsx-runtime";import{getSpinner as e}from"@visulima/spinner";import m from"../ink/hooks/use-animation.js";import{Text as p}from"./text.js";function d({type:n="dots"}){const r=e(n)??e("dots"),t=r?.frames??[" "],{frame:o}=m({interval:r?.interval??80});return i(p,{children:t[o%t.length]})}export{d as Spinner,d as default};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { ReactNode, DependencyList } from 'react';
|
|
2
|
-
import { D as DOMElement } from "../packem_shared/dom.d-
|
|
2
|
+
import { D as DOMElement } from "../packem_shared/dom.d-B4kXbaVY.js";
|
|
3
3
|
import { S as Styles } from "../packem_shared/styles.d-cMo36xQz.js";
|
|
4
4
|
import 'yoga-layout';
|
|
5
5
|
import "../packem_shared/cursor-helpers.d-BONB9tky.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as R}from"react/jsx-runtime";import{useRef as c,useLayoutEffect as m,useEffect as p,useMemo as v}from"react";const y=(e,r)=>{if(e===r)return!0;if(!e||!r||e.length!==r.length)return!1;for(const[u,s]of e.entries())if(!Object.is(s,r[u]))return!1;return!0},w=({children:e,deps:r,onRender:u,style:s,width:i})=>{const n=c(null),o=c(!1),f=c(r),l=c(e),a=c(u);a.current=u;let d=!1;r!==void 0?y(f.current,r)||(d=!0,f.current=r):e!==l.current&&(d=!0,l.current=e),d&&(o.current=!1,n.current&&(n.current.cachedRender=void 0)),m(()=>{const t=n.current;t&&(t.internal_onRendered=()=>{o.current=!0,a.current?.(t)})}),p(()=>()=>{const t=n.current;t&&(t.cachedRender=void 0,t.internal_onRendered=void 0)},[]);const h=v(()=>({...s,width:i}),[s,i]);return R("ink-static-render",{ref:n,style:h,children:o.current?null:e()})};export{w as StaticRender,w as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as f}from"react/jsx-runtime";import{useState as p,useMemo as i,useLayoutEffect as h}from"react";function y(s){const{children:n,items:t,style:o}=s,[e,l]=p(0),c=i(()=>t.slice(e),[t,e]);h(()=>{l(t.length)},[t.length]);const r=c.map((u,m)=>n(u,e+m)),a=i(()=>({flexDirection:"column",position:"absolute",...o}),[o]);return f("ink-box",{internal_static:!0,style:a,children:r})}export{y as Static,y as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsxs as l,jsx as t}from"react/jsx-runtime";import{Box as i}from"./box.js";import{Text as c}from"./text.js";const e=(r,o)=>{if(r!==void 0)return typeof r=="string"||typeof r=="number"?t(c,{color:o,children:r}):r};function u({backgroundColor:r,center:o,color:n,left:d,right:f}){return l(i,{backgroundColor:r,paddingX:1,width:"100%",children:[t(i,{flexGrow:1,flexShrink:1,minWidth:0,children:e(d,n)}),o===void 0?void 0:t(i,{flexGrow:0,flexShrink:0,justifyContent:"center",children:e(o,n)}),t(i,{flexGrow:1,flexShrink:1,justifyContent:"flex-end",minWidth:0,children:e(f,n)})]})}export{u as StatusLine,u as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsxs as n,jsx as o}from"react/jsx-runtime";import{Box as e}from"./box.js";import{Text as r}from"./text.js";import{o as c}from"../packem_shared/variant-config-BJqpNo7H.js";function d({children:s,variant:t}){const{color:a,icon:i}=c[t];return n(e,{gap:1,children:[o(r,{color:a,children:i}),o(r,{children:s})]})}export{d as StatusMessage,d as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as i,jsxs as d}from"react/jsx-runtime";import{Fragment as v}from"react";import{Box as n}from"./box.js";import{Text as l}from"./text.js";const h={active:"●",completed:"✔",error:"✖",pending:"○"},u=(t,c,m)=>t.status!==void 0?t.status:c<m?"completed":c===m?"active":"pending";function k({accentColor:t="blue",activeIndex:c=0,errorColor:m="red",orientation:g="horizontal",steps:a}){return g==="vertical"?i(n,{flexDirection:"column",children:a.map((r,o)=>{const e=u(r,o,c),p=o===a.length-1,s=e==="error"?m:e==="pending"?void 0:t;return d(n,{flexDirection:"column",children:[d(n,{children:[d(l,{color:s,dimColor:e==="pending",children:[h[e]," "]}),i(l,{bold:e==="active",color:s,dimColor:e==="pending",children:r.label})]}),r.description===void 0?void 0:i(n,{marginLeft:2,children:i(l,{dimColor:!0,children:r.description})}),p?void 0:i(n,{marginLeft:0,children:i(l,{dimColor:!0,children:"│"})})]},r.key??o)})}):i(n,{children:a.map((r,o)=>{const e=u(r,o,c),p=e==="error"?m:e==="pending"?void 0:t,s=o===a.length-1;return d(v,{children:[d(n,{children:[d(l,{color:p,dimColor:e==="pending",children:[h[e]," "]}),i(l,{bold:e==="active",color:p,dimColor:e==="pending",children:r.label})]}),s?void 0:i(l,{dimColor:!0,children:" ── "})]},r.key??o)})})}export{k as Stepper,k as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as p}from"react/jsx-runtime";import{useImperativeHandle as m}from"react";import f from"../ink/hooks/use-stopwatch.js";import{f as i}from"../packem_shared/format-time-fjoQHMxD.js";import{Text as n}from"./text.js";const x=({autoStart:o,bold:r,color:a,format:e=i,interval:s,ref:l})=>{const t=f({autoStart:o,interval:s});return m(l,()=>({lap:t.lap,reset:t.reset,start:t.start,stop:t.stop,toggle:t.toggle}),[t.lap,t.reset,t.start,t.stop,t.toggle]),p(n,{bold:r,color:a,children:e(t.elapsed)})};export{x as Stopwatch,x as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsxs as g}from"react/jsx-runtime";import{useState as T,useRef as c,useEffect as l}from"react";import{Text as d}from"./text.js";function k({color:f,cursor:i="▊",interval:o=20,onComplete:n,showCursorWhenDone:a=!1,text:r}){const[t,s]=T(0),u=c(n),e=c(!1);u.current=n,l(()=>{s(0),e.current=!1},[r]),l(()=>{if(t>=r.length){e.current||(e.current=!0,u.current?.());return}const p=setTimeout(()=>{s(x=>Math.min(r.length,x+1))},o);return()=>{clearTimeout(p)}},[t,r,o]);const m=!(t>=r.length)||a,h=r.slice(0,t);return g(d,{color:f,children:[h,m?i:""]})}export{k as StreamingText,k as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsxs as l,jsx as x}from"react/jsx-runtime";import{useState as F,useCallback as $}from"react";import j from"../ink/hooks/use-focus.js";import y from"../ink/hooks/use-input.js";import{Box as u}from"./box.js";import{Text as a}from"./text.js";const A=["off","on"];function V({accentColor:e="green",autoFocus:f=!1,children:n,defaultValue:m=!1,isDisabled:r=!1,labels:s=A,onChange:t,value:c}){const{isFocused:i}=j({autoFocus:f,isActive:!r}),[v,b]=F(m),o=c??v;y($((h,k)=>{if(i&&(k.return||h===" ")){const d=!o;c===void 0&&b(d),t?.(d)}},[i,o,c,t]),{isActive:!r&&i});const p=s[0],C=s[1],g=i?e:void 0;return l(u,{gap:1,children:[l(u,{gap:0,children:[l(a,{backgroundColor:o?void 0:"gray",color:o?void 0:"black",dimColor:r,children:[" ",p," "]}),l(a,{backgroundColor:o?e:void 0,color:o?"black":void 0,dimColor:r,children:[" ",C," "]})]}),n===void 0?void 0:x(a,{color:g,dimColor:r,children:n})]})}export{V as Switch,V as default};
|
package/dist/components/tab.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as e,Fragment as n}from"react/jsx-runtime";function a({children:r}){return e(n,{children:r})}export{a as Tab,a as default};
|
package/dist/components/table.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as y}from"react/jsx-runtime";import{Table as _}from"@visulima/tabular";import{THICK_BORDER as g,ROUNDED_BORDER as b,NO_BORDER as w,MINIMAL_BORDER as S,MARKDOWN_BORDER as W,DOUBLE_BORDER as x,DOTS_BORDER as C,DEFAULT_BORDER as E,BLOCK_BORDER as H,ASCII_BORDER as I}from"@visulima/tabular/style";import{useMemo as L}from"react";import{Text as M}from"./text.js";const N={ascii:I,block:H,default:E,dots:C,double:x,markdown:W,minimal:S,none:w,rounded:b,thick:g},T=t=>typeof t=="string"?{key:t}:t,A=({borderStyle:t="default",columns:d,data:a,formatCell:n,formatHeader:m,maxWidth:f,padding:i=1,showHeader:s=!0,skeleton:u="",wordWrap:D=!1})=>{const h=L(()=>{if(a.length===0)return"";let r;if(d?r=d.map(e=>T(e)):r=Object.keys(a[0]).map(e=>({key:e})),r.length===0)return"";const k=typeof t=="string"?N[t]??E:t,O=r.map(e=>e.width),B=O.some(e=>e!==void 0),R=new _({columnWidths:B?O:void 0,maxWidth:f,showHeader:s,style:{border:k,paddingLeft:i,paddingRight:i},wordWrap:D});if(s){const e=r.map(o=>{const l=o.header??o.key;return m?m(o.key):l});R.setHeaders(e)}for(const[e,o]of a.entries()){const l=r.map(c=>{const p=o[c.key];return n?n(p,c.key,e):p==null?u:String(p)});R.addRow(l)}return R.toString()},[t,d,a,n,m,f,i,s,u,D]);return y(M,{children:h})},q=A;export{q as Table,q as default};
|
package/dist/components/tabs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as y,jsxs as A}from"react/jsx-runtime";import{useRef as I,useState as U,useCallback as d,useEffect as X,useMemo as j,Children as Y}from"react";import Z from"../ink/hooks/use-input.js";import{Box as M}from"./box.js";import{Text as D}from"./text.js";const _=/^\d$/u,G=e=>e!=null&&typeof e=="object"&&"props"in e&&"name"in e.props,H=e=>{const t=[];for(const n of Y.toArray(e))G(n)&&t.push(n);return t},E=(e,t)=>e.some(n=>t[n]),J=(e,t,n)=>e?t?{backgroundColor:n?.activeTab?.backgroundColor??"green",color:n?.activeTab?.color??"black"}:{backgroundColor:"gray",color:"black"}:{backgroundColor:void 0,color:void 0};function nr({children:e,colors:t,defaultValue:n,flexDirection:f="row",isFocused:b,keyMap:u,onChange:T,showIndex:F=!0,value:x,width:v}){const s=H(e),c=s.length,p=I(s);p.current=s;const l=f==="column"||f==="column-reverse",g=x!==void 0,[L,O]=U(()=>{const r=x??n;if(r==null||c===0)return 0;const o=s.findIndex(i=>i.props.name===r);return o===-1?0:o}),h=g?Math.max(0,s.findIndex(r=>r.props.name===x)):L,P=d(()=>{},[]),a=g?P:O,m=I(T);m.current=T,X(()=>{if(g)return;const r=p.current[h];r&&m.current(r.props.name,r)},[]);const B=j(()=>u?.previous??[l?"upArrow":"leftArrow"],[u?.previous,l]),N=j(()=>u?.next??[l?"downArrow":"rightArrow"],[u?.next,l]),R=u?.useNumbers??!0,S=u?.useTab??!0,k=I(h);k.current=h;const V=d(r=>{a(r);const o=p.current[r];o&&m.current(o.props.name,o)},[a]),C=d(()=>{const r=(k.current+1)%c;a(r);const o=p.current[r];o&&m.current(o.props.name,o)},[c,a]),w=d(()=>{const r=(k.current-1+c)%c;a(r);const o=p.current[r];o&&m.current(o.props.name,o)},[c,a]);Z(d((r,o)=>{if(E(B,o)){w();return}if(E(N,o)){C();return}if(o.tab&&S&&b==null){o.shift?w():C();return}if(R&&o.meta&&_.test(r)){const i=r==="0"?9:Number.parseInt(r,10)-1;i<c&&V(i)}},[B,N,S,R,b,w,C,c,V]),{isActive:b!==!1});const $=typeof v=="number"?v:6,Q=j(()=>l?"─".repeat($):" | ",[l,$]);return y(M,{flexDirection:f,width:v,children:s.map((r,o)=>{const{name:i}=r.props,q=J(h===o,b!==!1,t);let z=null;return F&&(z=A(D,{color:"grey",children:[o+1,"."," "]})),A(M,{flexDirection:f,children:[o!==0&&y(D,{color:"dim",children:Q}),A(M,{children:[z,y(D,{backgroundColor:q.backgroundColor,color:q.color,children:r})]})]},i)})})}export{nr as Tabs,nr as default};
|
package/dist/components/tag.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as e,jsxs as r,Fragment as l}from"react/jsx-runtime";import{Box as a}from"./box.js";import{Text as n}from"./text.js";function u({children:d,color:i="blue",icon:o,variant:c="subtle"}){return c==="outline"?e(a,{borderColor:i,borderStyle:"round",paddingX:1,children:r(n,{color:i,children:[o===void 0?void 0:r(l,{children:[o," "]}),d]})}):c==="solid"?r(n,{backgroundColor:i,color:"black",children:[" ",o===void 0?void 0:r(l,{children:[o," "]}),d," "]}):r(n,{color:i,children:[o===void 0?void 0:r(l,{children:[o," "]}),d]})}export{u as Tag,u as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as f,jsxs as w}from"react/jsx-runtime";import{useState as q,useRef as k,useCallback as L}from"react";import N from"../ink/hooks/use-input.js";import{i as O}from"../packem_shared/input-utils-BSWCb4F_.js";import{Box as I}from"./box.js";import{Text as h}from"./text.js";const P=/\S+\s*$/,S=(n,r)=>n.length===0||!r?void 0:r.find(t=>t.startsWith(n))?.slice(n.length)??void 0,y=-1,T=(n,r,t,e)=>r.leftArrow?Math.max(0,t-1):r.home||r.ctrl&&n==="a"?0:r.end||r.ctrl&&n==="e"?e:y,V=(n,r,t,e)=>{if(r.backspace&&e>0)return[t.slice(0,e-1)+t.slice(e),e-1];if(r.delete&&e<t.length)return[t.slice(0,e)+t.slice(e+1),e];if(r.ctrl&&n==="u")return[t.slice(e),0];if(r.ctrl&&n==="k")return[t.slice(0,e),e];if(r.ctrl&&n==="w"){const m=t.slice(0,e).replace(P,"");return[m+t.slice(e),m.length]}};function U({defaultValue:n="",isDisabled:r=!1,mask:t=!1,onChange:e,onSubmit:m,placeholder:x,suggestions:b}){const[o,v]=q(n),[d,u]=q(n.length),A=k(o);A.current=o;const M=k(d);M.current=d;const g=k(e);g.current=e;const j=k(m);j.current=m;const B=S(o,b),z=L((p,a)=>{const{current:s}=M,c=A.current;if(a.return){const i=S(c,b),l=i?c+i:c;i&&(v(l),u(l.length),g.current?.(l)),j.current?.(l);return}if(a.escape)return;if(a.rightArrow){const i=S(c,b);if(s===c.length&&i){const l=c+i;v(l),u(l.length),g.current?.(l);return}u(Math.min(c.length,s+1));return}const D=T(p,a,s,c.length);if(D!==y){u(D);return}const R=V(p,a,c,s);if(R){const[i,l]=R;v(i),u(l),g.current?.(i);return}if(O(p,a)){const i=c.slice(0,s)+p+c.slice(s);v(i),u(s+p.length),g.current?.(i)}},[b]);N(z,{isActive:!r});const C=t?"*".repeat(o.length):o,E=C.slice(0,d),F=C[d],H=C.slice(d+1);return r?f(I,{children:f(h,{dimColor:!0,children:C||x||""})}):o.length===0&&x?w(I,{children:[f(h,{dimColor:!0,inverse:!0,children:x[0]}),f(h,{dimColor:!0,children:x.slice(1)})]}):w(I,{children:[w(h,{children:[E,f(h,{inverse:!0,children:F??" "}),H]}),B?f(h,{dimColor:!0,children:B}):void 0]})}export{U as TextInput,U as default};
|
package/dist/components/text.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as w}from"react/jsx-runtime";import e from"@visulima/colorize";import{useContext as b,useCallback as v}from"react";import{a as k}from"../packem_shared/colorize-DU4YZkp3.js";import{a as R}from"../packem_shared/accessibility-context-DDyHTwmA.js";import{b as S}from"../packem_shared/background-context-rjOaWFki.js";function W({"aria-hidden":p=!1,"aria-label":a,backgroundColor:i,bold:t=!1,children:s,color:l,dimColor:o=!1,inverse:f=!1,italic:d=!1,strikethrough:u=!1,underline:c=!1,wrap:h="wrap"}){const{isScreenReaderEnabled:n}=b(R),m=b(S),g=n&&a?a:s,C=v(r=>{o&&(r=e.dim(r)),l&&(r=k(r,l,"foreground"));const x=i??m;return x&&(r=k(r,x,"background")),t&&(r=e.bold(r)),d&&(r=e.italic(r)),c&&(r=e.underline(r)),u&&(r=e.strikethrough(r)),f&&(r=e.inverse(r)),r},[o,l,i,m,t,d,c,u,f]);return g==null||n&&p?null:w("ink-text",{internal_transform:C,style:{flexDirection:"row",flexGrow:0,flexShrink:1,textWrap:h},children:n&&a?a:s})}export{W as Text,W as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
`).slice(0,w);return l(C,{flexDirection:"column",children:t.map((r,e)=>m(C,{children:[f?m(
|
|
1
|
+
import{jsx as l,jsxs as m,Fragment as x}from"react/jsx-runtime";import{useRef as T,useState as I,useEffect as B,useMemo as W,useCallback as F}from"react";import G from"../ink/hooks/use-clipboard.js";import H from"../ink/hooks/use-input.js";import N from"../ink/hooks/use-paste.js";import O from"../ink/hooks/use-text-buffer.js";import{i as P}from"../packem_shared/input-utils-BSWCb4F_.js";import{Box as C}from"./box.js";import{Text as o}from"./text.js";const Q=(i,c)=>c.line<i.line||c.line===i.line&&c.col<i.col?{endCol:i.col,endLine:i.line,startCol:c.col,startLine:c.line}:{endCol:c.col,endLine:c.line,startCol:i.col,startLine:i.line};function rr({defaultValue:i="",isDisabled:c=!1,isFocused:g=!0,maxRows:d,onChange:v,onSubmit:h,placeholder:p,rows:a=5,showLineNumbers:f=!1,tabSize:L=2}){const n=O(i),S=T(n);S.current=n;const{copy:u}=G(),[s,A]=I(0),E=T(v);E.current=v;const k=T(h);k.current=h;const D=T(i);B(()=>{n.value!==D.current&&(D.current=n.value,E.current?.(n.value))},[n.value]);const w=W(()=>d?Math.min(Math.max(a,n.lines.length),d):a,[a,d,n.lines.length]);B(()=>{A(t=>n.cursor.line<t?n.cursor.line:n.cursor.line>=t+w?n.cursor.line-w+1:t)},[n.cursor.line,w]);const M=F((t,r)=>{const e=S.current;if(r.return&&(r.meta||r.ctrl)){k.current?.(e.value);return}if(r.return){e.newline();return}if(r.escape){e.clearSelection();return}if(r.tab){e.insert(" ".repeat(L));return}if(r.ctrl&&t==="z"){e.undo();return}if(r.ctrl&&(t==="y"||r.shift&&t==="Z")){e.redo();return}if(r.ctrl&&t==="c"&&e.hasSelection()){u(e.getSelectedText());return}if(r.ctrl&&(t==="A"||t==="a"&&r.shift)){e.selectAll();return}if(r.upArrow){e.moveCursor("up",r.shift);return}if(r.downArrow){e.moveCursor("down",r.shift);return}if(r.leftArrow){e.moveCursor("left",r.shift);return}if(r.rightArrow){e.moveCursor("right",r.shift);return}if(r.home){r.ctrl?e.moveToStart(r.shift):e.moveToLineStart(r.shift);return}if(r.end){r.ctrl?e.moveToEnd(r.shift):e.moveToLineEnd(r.shift);return}if(r.ctrl&&t==="a"){e.moveToLineStart(r.shift);return}if(r.ctrl&&t==="e"){e.moveToLineEnd(r.shift);return}if(r.backspace){e.deleteBack();return}if(r.delete){e.deleteForward();return}if(r.ctrl&&t==="u"){e.deleteToLineStart();return}if(r.ctrl&&t==="k"){e.deleteToLineEnd();return}if(r.ctrl&&t==="w"){e.deleteWord();return}P(t,r)&&(e.hasSelection()?e.replaceSelection(t):e.insert(t))},[u,L]);H(M,{isActive:g&&!c});const R=F(t=>{const r=S.current;r.hasSelection()?r.replaceSelection(t):r.insert(t)},[]);N(R,{isActive:g&&!c});const z=n.lines.slice(s,s+w),b=f?String(n.lines.length).length+1:0,j=n.anchor?Q(n.cursor,n.anchor):null;if(c)return l(C,{flexDirection:"column",children:z.map((t,r)=>{const e=s+r;return m(C,{children:[f?m(o,{dimColor:!0,children:[String(e+1).padStart(b)," "]}):void 0,l(o,{dimColor:!0,children:t||(e===0&&p?p:"")})]},e)})});if(n.value.length===0&&p){const t=p.split(`
|
|
2
|
+
`).slice(0,w);return l(C,{flexDirection:"column",children:t.map((r,e)=>m(C,{children:[f?m(o,{dimColor:!0,children:[String(e+1).padStart(b)," "]}):void 0,e===0?m(o,{children:[l(o,{dimColor:!0,inverse:!0,children:r[0]??" "}),l(o,{dimColor:!0,children:r.slice(1)})]}):l(o,{dimColor:!0,children:r})]},e))})}return l(C,{flexDirection:"column",children:z.map((t,r)=>{const e=s+r,y=e===n.cursor.line;return m(C,{children:[f?m(o,{dimColor:!y,children:[String(e+1).padStart(b)," "]}):void 0,l(o,{children:U(t,e,n.cursor,j)})]},e)})})}function U(i,c,g,d){const v=c===g.line,h=v?g.col:-1,p=d&&c>=d.startLine&&c<=d.endLine;if(!p&&!v)return l(x,{children:i});if(!p){const u=i.slice(0,h),s=i[h],A=i.slice(h+1);return m(x,{children:[u,l(o,{inverse:!0,children:s??" "}),A]})}const a=c===d.startLine?d.startCol:0,f=c===d.endLine?d.endCol:i.length,L=i.slice(0,a),n=i.slice(a,f),S=i.slice(f);if(v&&(h<a||h>=f)){const u=[];let s=0;return h<a?(u.push(l(o,{children:i.slice(0,h)},s++)),u.push(l(o,{inverse:!0,children:i[h]??" "},s++)),u.push(l(o,{children:i.slice(h+1,a)},s++)),u.push(l(o,{inverse:!0,children:n},s++)),u.push(l(o,{children:S},s++))):(u.push(l(o,{children:L},s++)),u.push(l(o,{inverse:!0,children:n},s++)),u.push(l(o,{children:i.slice(f,h)},s++)),u.push(l(o,{inverse:!0,children:i[h]??" "},s++)),u.push(l(o,{children:i.slice(h+1)},s++))),l(x,{children:u})}return m(x,{children:[L,l(o,{inverse:!0,children:n}),S]})}export{rr as Textarea,rr as default};
|
package/dist/components/timer.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as l}from"react/jsx-runtime";import{useImperativeHandle as f}from"react";import p from"../ink/hooks/use-timer.js";import{f as u}from"../packem_shared/format-time-fjoQHMxD.js";import{Text as d}from"./text.js";const b=({autoStart:o,bold:r,color:e,duration:a,format:i=u,interval:m,onTimeout:s,ref:n})=>{const t=p({autoStart:o,duration:a,interval:m,onTimeout:s});return f(n,()=>({reset:t.reset,start:t.start,stop:t.stop,toggle:t.toggle}),[t.reset,t.start,t.stop,t.toggle]),l(d,{bold:r,color:e,children:i(t.remaining)})};export{b as Timer,b as default};
|
package/dist/components/toast.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsxs as c,jsx as t}from"react/jsx-runtime";import{useState as v,useRef as T,useEffect as w}from"react";import{Box as u}from"./box.js";import{Text as i}from"./text.js";import{o as g}from"../packem_shared/variant-config-BJqpNo7H.js";function B({children:f,duration:r=4e3,onDismiss:n,title:l,variant:m="info",visible:o,width:a}){const[p,h]=v(!0),e=o??p,d=T(n);if(d.current=n,w(()=>{if(o!==void 0||r<=0||!e)return;const b=setTimeout(()=>{h(!1),d.current?.()},r);return()=>{clearTimeout(b)}},[r,o,e]),!e)return null;const{color:s,icon:x}=g[m];return c(u,{borderColor:s,borderStyle:"round",gap:1,paddingX:1,width:a,children:[t(i,{color:s,children:x}),c(u,{flexDirection:"column",flexGrow:1,children:[l===void 0?void 0:t(i,{bold:!0,children:l}),t(i,{children:f})]})]})}export{B as Toast,B as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as o,jsxs as f}from"react/jsx-runtime";import{Box as t}from"./box.js";import{Text as a}from"./text.js";const m={bottom:{flexDirection:"column",orderFirst:!1},left:{flexDirection:"row",orderFirst:!0},right:{flexDirection:"row",orderFirst:!1},top:{flexDirection:"column",orderFirst:!0}};function p({children:c,color:i="gray",content:r,isVisible:s=!0,placement:e="right"}){const{flexDirection:d,orderFirst:n}=m[e],l=s?o(t,{borderColor:i,borderStyle:"round",flexShrink:0,marginLeft:e==="right"?1:0,marginRight:e==="left"?1:0,paddingX:1,children:typeof r=="string"?o(a,{color:i,children:r}):r}):void 0;return f(t,{alignItems:"center",flexDirection:d,children:[n?l:void 0,o(t,{children:c}),n?void 0:l]})}export{p as Tooltip,p as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{useContext as i}from"react";import{a as l}from"../packem_shared/accessibility-context-DDyHTwmA.js";const s={flexDirection:"row",flexGrow:0,flexShrink:1};function m({accessibilityLabel:r,children:t,transform:e}){const{isScreenReaderEnabled:n}=i(l);return t==null?null:o("ink-text",{internal_transform:e,style:s,children:n&&r?r:t})}export{m as Transform,m as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useState as w,useRef as d,useEffect as D}from"react";import{Box as c}from"./box.js";import{Text as b}from"./text.js";const j=(t,r)=>t>=1?e(c,{children:r}):t<=0?e(c,{}):e(c,{children:typeof r=="string"?e(b,{dimColor:t<.7,children:r}):r}),y=(t,r)=>Math.max(0,Math.min(r,Math.round((1-t)*r))),f=(t,r)=>(i,u,h)=>{const n=y(i,h);return i>=1?e(c,{children:u}):i<=0?e(c,{}):t==="x"?e(c,{paddingLeft:r===1?n:0,paddingRight:r===-1?n:0,children:u}):e(c,{flexDirection:"column",paddingBottom:r===-1?n:0,paddingTop:r===1?n:0,children:u})},A=(t,r,i)=>{if(t>=1)return e(c,{children:r});if(t<=0)return e(c,{});const u=Math.max(0,Math.min(i,Math.round(t*i)));return e(c,{flexDirection:"column",height:u,overflowY:"hidden",children:r})},C={fade:j,reveal:A,"slide-down":f("y",-1),"slide-left":f("x",-1),"slide-right":f("x",1),"slide-up":f("y",1)},O=(t,r)=>t?r>=1?"entered":"entering":r<=0?"exited":"exiting";function K({children:t,distance:r=4,duration:i=240,onExit:u,preset:h="fade",show:n=!0,tickInterval:g=30}){const[m,I]=w(n?1:0),x=d(n?1:0),M=d(Date.now()),s=d(n?1:0),a=d(!n),p=d(u);p.current=u;const[k,B]=w(0);if(D(()=>{const o=n?1:0;x.current!==o&&(x.current=o,M.current=Date.now(),s.current=m,a.current=!1,B(l=>l+1))},[n]),D(()=>{const o=x.current;if(s.current===o){o===0&&!a.current&&(a.current=!0,p.current?.());return}const l=setInterval(()=>{const R=Date.now()-M.current,v=i<=0?1:Math.min(1,R/i),T=s.current+(o-s.current)*v;I(T),v>=1&&(clearInterval(l),o===0&&!a.current&&(a.current=!0,p.current?.()))},g);return()=>{clearInterval(l)}},[k,i,g]),O(n,m)==="exited"&&!n)return null;const E=C[h];return E(m,t,r)}const Y=Object.assign(K,{isAnimatable:!0});export{K as Transition,Y as default};
|
|
@@ -2,7 +2,7 @@ import { BoxProps as Props$1 } from "./box.js";
|
|
|
2
2
|
import { Props as Props$2 } from "./text.js";
|
|
3
3
|
import { ReactNode, ReactElement } from 'react';
|
|
4
4
|
import 'type-fest';
|
|
5
|
-
import "../packem_shared/dom.d-
|
|
5
|
+
import "../packem_shared/dom.d-B4kXbaVY.js";
|
|
6
6
|
import 'yoga-layout';
|
|
7
7
|
import "../packem_shared/cursor-helpers.d-BONB9tky.js";
|
|
8
8
|
import '@visulima/colorize';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{theme as o}from"../packem_shared/treeViewTheme-
|
|
1
|
+
import{theme as o}from"../packem_shared/treeViewTheme-Dq3ekRAC.js";import{TreeNodeMap as m}from"../packem_shared/TreeNodeMap-cJlYqckB.js";import{TreeView as f}from"../packem_shared/TreeView-BsvLCsf0.js";import{useTreeView as T}from"../packem_shared/useTreeView-D5ifGwG3.js";import{useTreeViewState as w}from"../packem_shared/useTreeViewState-BiTJakkh.js";export{m as TreeNodeMap,f as TreeView,o as treeViewTheme,T as useTreeView,w as useTreeViewState};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{jsx as o,jsxs as l}from"react/jsx-runtime";import{Box as t}from"./box.js";import{Text as c}from"./text.js";const a=["─","◦","▪"],f=r=>typeof r=="string"?[r]:Array.isArray(r)?r:a,s=(r,e,i)=>{const d=e[i%e.length]??"─";return o(t,{flexDirection:"column",children:r.map((n,m)=>l(t,{gap:1,children:[o(c,{dimColor:!0,children:d}),l(t,{flexDirection:"column",children:[o(c,{children:n.label}),n.children?s(n.children,e,i+1):void 0]})]},m))})};function x({items:r,marker:e}){const i=f(e);return s(r,i,0)}export{x as UnorderedList,x as default};
|
package/dist/core/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{TuiApp as o}from"../packem_shared/TuiApp-
|
|
1
|
+
import{TuiApp as o}from"../packem_shared/TuiApp-BPL8v1i1.js";import{Cell as t,StyleMasks as m}from"../packem_shared/Cell-BrXn3jxY.js";import{createInlineLoop as l}from"../packem_shared/createInlineLoop-BT40Wpmx.js";import{InputParser as f}from"../packem_shared/InputParser-CtwkCbrQ.js";import{Renderer as x,TerminalGuard as s,terminalSize as u}from"../packem_shared/Renderer-DsskdkUd.js";export{t as Cell,f as InputParser,x as Renderer,m as StyleMasks,s as TerminalGuard,o as TuiApp,l as createInlineLoop,u as terminalSize};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as S,useState as A,useRef as o,useCallback as D,useLayoutEffect as M}from"react";import{e as E}from"../../packem_shared/animation-context-DW3p-vpk.js";const p=100,F=2147483647,m={delta:0,frame:0,time:0};function R(i){const{interval:x=p,isActive:t=!0}=i??{},e=L(x),{renderThrottleMs:s,subscribe:l}=S(E),[r,I]=A(0),[C,v]=A(m),a=o(0),c=o(0),b=o({isActive:t,resetKey:r,safeInterval:e}),f=b.current,K=t&&(e!==f.safeInterval||!f.isActive||r!==f.resetKey),d=D(()=>{I(n=>n+1)},[]);return M(()=>{if(!t)return;v(m);let n=0;const{startTime:h,unsubscribe:T}=l(u=>{if(s>0&&u<a.current)return;const y=u-n,k=u-c.current;c.current=u,a.current=u+s,v({delta:k,frame:Math.floor(y/e),time:y})},e);return n=h,c.current=h,a.current=n+s,T},[e,t,l,s,r]),M(()=>{b.current={isActive:t,resetKey:r,safeInterval:e}},[t,e,r]),K?{...m,reset:d}:{...C,reset:d}}function L(i){return Number.isFinite(i)?Math.min(F,Math.max(1,i)):p}export{R as default,R as useAnimation};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as t}from"react";import{t as o}from"../../packem_shared/app-context-BVpKlG1z.js";const r=()=>t(o);export{r as default,r as useApp};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
|
-
import { D as DOMElement } from "../../packem_shared/dom.d-
|
|
2
|
+
import { D as DOMElement } from "../../packem_shared/dom.d-B4kXbaVY.js";
|
|
3
3
|
import 'yoga-layout';
|
|
4
4
|
import "../../packem_shared/cursor-helpers.d-BONB9tky.js";
|
|
5
5
|
import '@visulima/colorize';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useState as n,useCallback as h,useEffect as u,useMemo as p}from"react";import{a as l}from"../../packem_shared/dom-rphpG0kf.js";const i={height:0,left:0,top:0,width:0},d=t=>{if(t)return t.parentNode?d(t.parentNode):t.nodeName==="ink-root"?t:void 0},N=t=>{const[o,c]=n(i),[a,f]=n(!1),s=h(()=>{const e=t.current?.yogaNode?.getComputedLayout()??i;c(r=>r.width!==e.width||r.height!==e.height||r.left!==e.left||r.top!==e.top?e:r),f(!!t.current)},[t]);return u(s),u(()=>{const e=d(t.current);if(e)return l(e,s)}),p(()=>({...o,hasMeasured:a}),[o,a])};export{N as default,N as useBoxMetrics};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useMemo as e,useCallback as a}from"react";import{isOsc52Supported as c,writeOsc52 as i}from"../../packem_shared/clearOsc52-BUpnQOav.js";import m from"./use-stdout.js";const n=(p={})=>{const{target:r="c"}=p,{stdout:o}=m(),t=e(()=>c(),[]),s=a(u=>{!t||!o||i(o,u,r)},[t,o,r]);return e(()=>({copy:s,isSupported:t}),[s,t])};export{n as default,n as useClipboard};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useMemo as a,useCallback as i}from"react";import{IDENTITY_MATRIX as l,COLOR_BLINDNESS_COMPENSATION as I,COLOR_BLINDNESS_SIMULATION as N,transformHexColor as C}from"../../packem_shared/COLOR_BLINDNESS_COMPENSATION-Ilnoyeqc.js";const f=(m={})=>{const{compensate:n=!1,mode:o="none"}=m,e=a(()=>o==="none"?l:n&&o!=="achromatopsia"?I[o]:N[o],[o,n]),r=o!=="none",s=i(t=>r?C(t,e):t,[r,e]);return a(()=>({isActive:r,matrix:e,transformColor:s}),[r,e,s])};export{f as default,f as useColorBlindness};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useState as w,useRef as x,useMemo as g,useEffect as A,useCallback as C}from"react";const c=["log","info","warn","error","debug"],b=(p={})=>{const{filter:n=c,isActive:a=!0,maxEntries:s=200}=p,[i,u]=w([]),y=x(0),d=Array.isArray(n)?n.toSorted().join(","):"",l=g(()=>n,[d]);A(()=>{if(!a)return;const r={},S=new Set(l);for(const e of c)S.has(e)&&(r[e]=console[e],console[e]=(...m)=>{r[e]?.apply(console,m);const h=m.map(t=>{if(typeof t=="string")return t;try{return JSON.stringify(t)}catch{return String(t)}}).join(" ");u(t=>{const v={id:++y.current,level:e,message:h,timestamp:Date.now()},o=[...t,v];return o.length>s?o.slice(-s):o})});return()=>{for(const e of c)r[e]&&(console[e]=r[e])}},[a,s,l]);const f=C(()=>{u([])},[]);return g(()=>({clear:f,entries:i}),[f,i])};export{b as default,b as useConsoleCapture};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as e,useRef as u,useCallback as i,useInsertionEffect as n}from"react";import{o as c}from"../../packem_shared/cursor-context-CFviBqPX.js";const a=()=>{const o=e(c),r=u(void 0),s=i(t=>{r.current=t},[]);return n(()=>(o.setCursorPosition(r.current),()=>{o.setCursorPosition(void 0)})),{setCursorPosition:s}};export{a as default,a as useCursor};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as s}from"react";import{o as e}from"../../packem_shared/focus-context-CsT69klR.js";const t=()=>{const o=s(e);return{activeId:o.activeId,disableFocus:o.disableFocus,enableFocus:o.enableFocus,focus:o.focus,focusNext:o.focusNext,focusPrevious:o.focusPrevious}};export{t as default,t as useFocusManager};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as p,useMemo as l,useEffect as t}from"react";import{o as v}from"../../packem_shared/focus-context-CsT69klR.js";import F from"./use-stdin.js";const R=({autoFocus:s=!1,id:a,isActive:o=!0}={})=>{const{isRawModeSupported:r,setRawMode:u}=F(),{activate:c,activeId:i,add:d,deactivate:f,focus:m,remove:n}=p(v),e=l(()=>a??Math.random().toString().slice(2,7),[a]);return t(()=>(d(e,{autoFocus:s}),()=>{n(e)}),[e,s]),t(()=>{o?c(e):f(e)},[o,e]),t(()=>{if(!(!r||!o))return u(!0),()=>{u(!1)}},[o]),{focus:m,isFocused:!!e&&i===e}};export{R as default,R as useFocus};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useMemo as x,useState as f,useRef as C,useCallback as c}from"react";const F=a=>{const r={};for(const u of Object.keys(a))r[u]=a[u].initialValue;return r},K=a=>{const{fields:r,onSubmit:u}=a,l=x(()=>F(r),[r]),[d,m]=f(l),[g,b]=f({}),[h,y]=f({}),[j,k]=f(!1),n=C(d);n.current=d;const i=c((e,s,t=n.current)=>r[e]?.validate?.(s,t),[r]),p=c((e,s)=>{const t={...n.current,[e]:s};n.current=t,m(t);const o=i(e,s,t);b(v=>{if(o===void 0){const S={...v};return delete S[e],S}return{...v,[e]:o}})},[i]),O=c((e,s=!0)=>{y(t=>({...t,[e]:s}))},[]),V=c(()=>{m(l),b({}),y({})},[l]),w=c(async()=>{const e={},s={};for(const t of Object.keys(r)){s[t]=!0;const o=i(t,n.current[t]);o!==void 0&&(e[t]=o)}if(b(e),y(s),Object.keys(e).length>0)return!1;try{return k(!0),await u?.(n.current),!0}finally{k(!1)}},[r,i,u]);return{errors:g,isSubmitting:j,reset:V,setTouched:O,setValue:p,submit:w,touched:h,values:d}};export{K as default,K as useForm};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useCallback as c}from"react";import n from"./use-input.js";const i=new Set(["backspace","delete","downArrow","end","escape","home","leftArrow","pageDown","pageUp","return","rightArrow","tab","upArrow"]),l=r=>{const t=r.split("+").map(a=>a.trim()).filter(a=>a.length>0),e={};for(const a of t){const s=a.toLowerCase();switch(s){case"alt":case"cmd":case"meta":{e.meta=!0;break}case"control":case"ctrl":{e.ctrl=!0;break}case"shift":{e.shift=!0;break}default:if(i.has(s))e.name=s;else switch(s){case"down":{e.name="downArrow";break}case"enter":{e.name="return";break}case"esc":{e.name="escape";break}case"left":{e.name="leftArrow";break}case"right":{e.name="rightArrow";break}case"up":{e.name="upArrow";break}default:e.input=a}}}return e},m=(r,t,e)=>r.ctrl!==void 0&&r.ctrl!==e.ctrl||r.shift!==void 0&&r.shift!==e.shift||r.meta!==void 0&&r.meta!==e.meta?!1:r.name!==void 0?!!e[r.name]:r.input!==void 0?t===r.input:!1,p=(r,t,e)=>{const a=typeof r=="string"?l(r):r;n(c((s,o)=>{m(a,s,o)&&t()},[r,t]),{isActive:e?.isActive??!0})};export{p as default,p as useHotkey};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
`:{t.name="enter";break}case" ":{t.name="tab";break}case" ":case"\x1B ":{t.name="space",t.meta=e.length===2;break}case"\b":case"\x1B\b":{t.name="backspace",t.meta=e.charAt(0)==="\x1B";break}case"\x1B":case"\x1B\x1B":{t.name="escape",t.meta=e.length===2;break}case"\x1B":case"":{t.name="backspace",t.meta=e.charAt(0)==="\x1B";break}default:if(e.length===1&&e<="")t.name=String.fromCharCode(e.charCodeAt(0)+97-1),t.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")t.name="number";else if(e.length===1&&e>="a"&&e<="z")t.name=e;else if(e.length===1&&e>="A"&&e<="Z")t.name=e.toLowerCase(),t.shift=!0;else if(
|
|
1
|
+
import{createRequire as $}from"node:module";import{useRef as L,useEffectEvent as _,useEffect as g}from"react";import{IMECompositionBuffer as S,isIMEInput as q}from"../../packem_shared/IMECompositionBuffer-VhC9HRCv.js";import{kittyModifiers as p}from"../../packem_shared/kittyFlags-g8ALyoCU.js";import{j as w}from"../../packem_shared/reconciler-CFyBVf7l.js";import{useStdinContext as I}from"./use-stdin.js";const C=$(import.meta.url),m=typeof globalThis<"u"&&typeof globalThis.process<"u"?globalThis.process:process,P=e=>{if(typeof m<"u"&&m.versions&&m.versions.node){const[a,n]=m.versions.node.split(".").map(Number);if(a>22||a===22&&n>=3||a===20&&n>=16)return m.getBuiltinModule(e)}return C(e)},{Buffer:E}=P("node:buffer"),j=/^\u001B([a-z0-9])$/i,N=/^\u001B+([ON[]|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,y={"[1~":"home","[2$":"insert","[2^":"insert","[2~":"insert","[3$":"delete","[3^":"delete","[3~":"delete","[4~":"end","[5$":"pageup","[5^":"pageup","[5~":"pageup","[6$":"pagedown","[6^":"pagedown","[6~":"pagedown","[7$":"home","[7^":"home","[7~":"home","[8$":"end","[8^":"end","[8~":"end","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[[5~":"pageup","[[6~":"pagedown","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[A":"up","[a":"up","[B":"down","[b":"down","[C":"right","[c":"right","[D":"left","[d":"left","[E":"clear","[e":"clear","[F":"end","[H":"home","[P":"f1","[Q":"f2","[R":"f3","[S":"f4","[Z":"tab",OA:"up",Oa:"up",OB:"down",Ob:"down",OC:"right",Oc:"right",OD:"left",Od:"left",OE:"clear",Oe:"clear",OF:"end",OH:"home",OP:"f1",OQ:"f2",OR:"f3",OS:"f4"},M=[...Object.values(y),"backspace"],T=e=>["[2$","[3$","[5$","[6$","[7$","[8$","[a","[b","[c","[d","[e","[Z"].includes(e),K=e=>["[2^","[3^","[5^","[6^","[7^","[8^","Oa","Ob","Oc","Od","Oe"].includes(e),B=/^\u001B\[(\d+)(?:;(\d+)(?::(\d+))?(?:;([\d:]+))?)?u$/,R=/^\u001B\[(\d+);(\d+):(\d+)([A-Z~])$/i,Z={A:"up",B:"down",C:"right",D:"left",E:"clear",F:"end",H:"home",P:"f1",Q:"f2",R:"f3",S:"f4"},D={2:"insert",3:"delete",5:"pageup",6:"pagedown",7:"home",8:"end",11:"f1",12:"f2",13:"f3",14:"f4",15:"f5",17:"f6",18:"f7",19:"f8",20:"f9",21:"f10",23:"f11",24:"f12"},v={8:"backspace",9:"tab",27:"escape",127:"backspace",57358:"capslock",57359:"scrolllock",57360:"numlock",57361:"printscreen",57362:"pause",57363:"menu",57376:"f13",57377:"f14",57378:"f15",57379:"f16",57380:"f17",57381:"f18",57382:"f19",57383:"f20",57384:"f21",57385:"f22",57386:"f23",57387:"f24",57388:"f25",57389:"f26",57390:"f27",57391:"f28",57392:"f29",57393:"f30",57394:"f31",57395:"f32",57396:"f33",57397:"f34",57398:"f35",57399:"kp0",57400:"kp1",57401:"kp2",57402:"kp3",57403:"kp4",57404:"kp5",57405:"kp6",57406:"kp7",57407:"kp8",57408:"kp9",57409:"kpdecimal",57410:"kpdivide",57411:"kpmultiply",57412:"kpsubtract",57413:"kpadd",57414:"kpenter",57415:"kpequal",57416:"kpseparator",57417:"kpleft",57418:"kpright",57419:"kpup",57420:"kpdown",57421:"kppageup",57422:"kppagedown",57423:"kphome",57424:"kpend",57425:"kpinsert",57426:"kpdelete",57427:"kpbegin",57428:"mediaplay",57429:"mediapause",57430:"mediaplaypause",57431:"mediareverse",57432:"mediastop",57433:"mediafastforward",57434:"mediarewind",57435:"mediatracknext",57436:"mediatrackprevious",57437:"mediarecord",57438:"lowervolume",57439:"raisevolume",57440:"mutevolume",57441:"leftshift",57442:"leftcontrol",57443:"leftalt",57444:"leftsuper",57445:"lefthyper",57446:"leftmeta",57447:"rightshift",57448:"rightcontrol",57449:"rightalt",57450:"rightsuper",57451:"righthyper",57452:"rightmeta",57453:"isoLevel3Shift",57454:"isoLevel5Shift"},x=e=>e>=0&&e<=1114111&&!(e>=55296&&e<=57343),b=e=>x(e)?String.fromCodePoint(e):"?";function A(e){return e===3?"release":e===2?"repeat":"press"}function O(e){return{capsLock:!!(e&p.capsLock),ctrl:!!(e&p.ctrl),hyper:!!(e&p.hyper),meta:!!(e&p.meta),numLock:!!(e&p.numLock),option:!!(e&p.alt),shift:!!(e&p.shift),super:!!(e&p.super)}}const F=e=>{const a=B.exec(e);if(!a)return null;const n=Number.parseInt(a[1],10),c=a[2]?Math.max(0,Number.parseInt(a[2],10)-1):0,t=a[3]?Number.parseInt(a[3],10):1,l=a[4];if(!x(n))return null;let s;l&&(s=l.split(":").map(d=>b(Number.parseInt(d,10))).join(""));let o,i;return n===32?(o="space",i=!0):n===13?(o="return",i=!0):v[n]?(o=v[n],i=!1):n>=1&&n<=26?(o=String.fromCodePoint(n+96),i=!1):(o=b(n).toLowerCase(),i=!0),i&&!s&&(s=b(n)),{name:o,...O(c),eventType:A(t),isKittyProtocol:!0,isPrintable:i,raw:e,sequence:e,text:s}},U=e=>{const a=R.exec(e);if(!a)return null;const n=Number.parseInt(a[1],10),c=Math.max(0,Number.parseInt(a[2],10)-1),t=Number.parseInt(a[3],10),l=a[4],s=l==="~"?D[n]:Z[l];return s?{name:s,...O(c),eventType:A(t),isKittyProtocol:!0,isPrintable:!1,raw:e,sequence:e}:null},z=(e="")=>{let a;E.isBuffer(e)?e[0]>127&&e[1]===void 0?(e[0]-=128,e=`\x1B${String(e)}`):e=String(e):e!==void 0&&typeof e!="string"?e=String(e):e||(e="");const n=F(e);if(n)return n;const c=U(e);if(c)return c;if(B.test(e))return{ctrl:!1,isKittyProtocol:!0,isPrintable:!1,meta:!1,name:"",option:!1,raw:e,sequence:e,shift:!1};const t={ctrl:!1,meta:!1,name:"",option:!1,raw:e,sequence:e,shift:!1};switch(t.sequence=t.sequence||e||t.name,e){case"\r":case"\x1B\r":{t.raw=void 0,t.name="return",t.option=e.length===2;break}case`
|
|
2
|
+
`:{t.name="enter";break}case" ":{t.name="tab";break}case" ":case"\x1B ":{t.name="space",t.meta=e.length===2;break}case"\b":case"\x1B\b":{t.name="backspace",t.meta=e.charAt(0)==="\x1B";break}case"\x1B":case"\x1B\x1B":{t.name="escape",t.meta=e.length===2;break}case"\x1B":case"":{t.name="backspace",t.meta=e.charAt(0)==="\x1B";break}default:if(e.length===1&&e<="")t.name=String.fromCharCode(e.charCodeAt(0)+97-1),t.ctrl=!0;else if(e.length===1&&e>="0"&&e<="9")t.name="number";else if(e.length===1&&e>="a"&&e<="z")t.name=e;else if(e.length===1&&e>="A"&&e<="Z")t.name=e.toLowerCase(),t.shift=!0;else if(a=j.exec(e))t.meta=!0,t.shift=/^[A-Z]$/.test(a[1]);else if(a=N.exec(e)){const l=[...e];l[0]==="\x1B"&&l[1]==="\x1B"&&(t.option=!0);const s=[a[1],a[2],a[4],a[6]].filter(Boolean).join(""),o=(a[3]||a[5]||1)-1;t.ctrl=!!(o&4),t.meta=!!(o&10),t.shift=!!(o&1),t.code=s,t.name=y[s]??"",t.shift=T(s)||t.shift,t.ctrl=K(s)||t.ctrl}}return t},X=(e,a={})=>{const{internal_eventEmitter:n,internal_exitOnCtrlC:c,setRawMode:t,stdin:l}=I(),s=a.imeEnabled??!0,o=a.imeTimeout??50,i=L(void 0),d=_(e);g(()=>{if(s)return i.current=new S({onFlush:h=>{const u={backspace:!1,capsLock:!1,ctrl:!1,delete:!1,downArrow:!1,end:!1,escape:!1,home:!1,hyper:!1,leftArrow:!1,meta:!1,numLock:!1,pageDown:!1,pageUp:!1,return:!1,rightArrow:!1,shift:!1,super:!1,tab:!1,upArrow:!1};w.discreteUpdates(()=>{d(h,u)})},timeout:o}),()=>{i.current?.destroy(),i.current=void 0}},[s,o]),g(()=>{if(a.isActive!==!1)return t(!0),()=>{t(!1)}},[a.isActive,t]),g(()=>{if(a.isActive===!1)return;const h=u=>{if(s&&q(u)){i.current?.add(u);return}i.current?.flush();const r=z(u),k={backspace:r.name==="backspace",capsLock:r.capsLock??!1,ctrl:r.ctrl,delete:r.name==="delete",downArrow:r.name==="down",end:r.name==="end",escape:r.name==="escape",eventType:r.eventType,home:r.name==="home",hyper:r.hyper??!1,leftArrow:r.name==="left",meta:r.meta||r.option,numLock:r.numLock??!1,pageDown:r.name==="pagedown",pageUp:r.name==="pageup",return:r.name==="return",rightArrow:r.name==="right",shift:r.shift,super:r.super??!1,tab:r.name==="tab",upArrow:r.name==="up"};let f;r.isKittyProtocol?r.isPrintable?f=r.text??r.name:r.ctrl&&r.name.length===1?f=r.name:f="":r.ctrl?f=r.name:f=r.sequence,!r.isKittyProtocol&&M.includes(r.name)&&(f=""),f.startsWith("\x1B")&&(f=f.slice(1)),f.length===1&&typeof f[0]=="string"&&/[A-Z]/.test(f[0])&&(k.shift=!0),!(f==="c"&&k.ctrl&&c)&&(!r.name&&f===""||w.discreteUpdates(()=>{d(f,k)}))};return n.on("input",h),()=>{n.removeListener("input",h)}},[a.isActive,l,c,s])};export{X as default,X as useInput};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useRef as s,useLayoutEffect as i,useEffect as o,useCallback as l}from"react";const f=(t,r,a)=>{const{isActive:u=!0}=a??{},n=s(t),e=s(void 0);return i(()=>{n.current=t},[t]),o(()=>{if(!u||r<=0||!Number.isFinite(r))return;const c=setInterval(()=>{n.current()},r);return e.current=c,()=>{clearInterval(c),e.current=void 0}},[r,u]),{clear:l(()=>{e.current!==void 0&&(clearInterval(e.current),e.current=void 0)},[])}};export{f as default,f as useInterval};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useContext as t}from"react";import{a as r}from"../../packem_shared/accessibility-context-DDyHTwmA.js";const n=()=>{const{isScreenReaderEnabled:e}=t(r);return e};export{n as default,n as useIsScreenReaderEnabled};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useRef as l,useCallback as d,useMemo as p}from"react";import b from"./use-input.js";const a=new Set(["backspace","delete","downArrow","end","escape","home","leftArrow","pageDown","pageUp","return","rightArrow","tab","upArrow"]),g=new Set(["ctrl","hyper","meta","shift","super"]);function m(e,o,t){const r=e.indexOf("+");if(r!==-1){const n=e.slice(0,r),s=e.slice(r+1);return!g.has(n)||!t[n]?!1:a.has(s)?t[s]===!0:o===s}return a.has(e)?t[e]===!0:o===e}function y(e,o){const{isActive:t=!0}=o??{},r=l(e);return r.current=e,b(d((n,s)=>{for(const{binding:i,handler:c}of r.current){if(i.enabled===!1)continue;const f=typeof i.key=="string"?[i.key]:i.key;for(const u of f)if(m(u,n,s)){c();return}}},[]),{isActive:t}),{bindings:p(()=>e.filter(n=>n.binding.enabled!==!1).map(n=>n.binding),[e])}}export{y as default,y as useKeyBindings};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import{useRef as a,useCallback as w}from"react";import g from"./use-input.js";const m=(e,r)=>{if(r.escape)return"escape";if(r.return)return"return";if(r.tab)return"tab";if(r.backspace)return"backspace";if(r.delete)return"delete";if(r.home)return"home";if(r.end)return"end";if(r.pageUp)return"pageup";if(r.pageDown)return"pagedown";if(r.upArrow)return"up";if(r.downArrow)return"down";if(r.leftArrow)return"left";if(r.rightArrow)return"right";if(e===" ")return"space";if(!(!e||e.length===0))return e},A=(e,r)=>{const u=m(e,r);if(u===void 0)return;const n=[];return r.ctrl&&n.push("ctrl"),r.meta&&n.push("meta"),r.shift&&n.push("shift"),n.push(u),n.join("+")},i=e=>e.trim().toLowerCase(),k=(e,r,u)=>{const{isActive:n=!0,resetAfter:c=1e3}=u??{},t=a(0),o=a(0),p=a(r);p.current=r,g(w((d,l)=>{const f=Date.now();c>0&&t.current>0&&f-o.current>c&&(t.current=0);const s=A(d,l);if(s===void 0||e.length===0)return;const h=e[t.current];if(h===void 0){t.current=0;return}if(i(s)===i(h)){t.current+=1,o.current=f,t.current>=e.length&&(t.current=0,p.current());return}t.current=0,i(s)===i(e[0]??"")&&(t.current=1,o.current=f)},[e,c]),{isActive:n})};export{k as default,k as useKeyChord};
|
|
@@ -2,7 +2,7 @@ import { RefObject } from 'react';
|
|
|
2
2
|
import { b as ScrollViewRef } from "../../packem_shared/scroll-view.d-DtpsgHLg.js";
|
|
3
3
|
import "../../components/box.js";
|
|
4
4
|
import 'type-fest';
|
|
5
|
-
import "../../packem_shared/dom.d-
|
|
5
|
+
import "../../packem_shared/dom.d-B4kXbaVY.js";
|
|
6
6
|
import 'yoga-layout';
|
|
7
7
|
import "../../packem_shared/cursor-helpers.d-BONB9tky.js";
|
|
8
8
|
import '@visulima/colorize';
|