@effect-tui/react 0.12.3 → 0.14.0

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.
Files changed (170) hide show
  1. package/README.md +31 -7
  2. package/dist/jsx-runtime.d.ts +1 -2
  3. package/dist/jsx-runtime.d.ts.map +1 -1
  4. package/dist/src/components/Markdown.js +7 -7
  5. package/dist/src/components/Markdown.js.map +1 -1
  6. package/dist/src/components/MultilineTextInput.d.ts.map +1 -1
  7. package/dist/src/components/MultilineTextInput.js +11 -0
  8. package/dist/src/components/MultilineTextInput.js.map +1 -1
  9. package/dist/src/components/TextInput.d.ts.map +1 -1
  10. package/dist/src/components/TextInput.js +15 -0
  11. package/dist/src/components/TextInput.js.map +1 -1
  12. package/dist/src/dev.d.ts +22 -32
  13. package/dist/src/dev.d.ts.map +1 -1
  14. package/dist/src/dev.js +42 -96
  15. package/dist/src/dev.js.map +1 -1
  16. package/dist/src/hooks/index.d.ts +3 -0
  17. package/dist/src/hooks/index.d.ts.map +1 -1
  18. package/dist/src/hooks/index.js +1 -0
  19. package/dist/src/hooks/index.js.map +1 -1
  20. package/dist/src/hooks/use-mouse.d.ts +10 -1
  21. package/dist/src/hooks/use-mouse.d.ts.map +1 -1
  22. package/dist/src/hooks/use-mouse.js +10 -2
  23. package/dist/src/hooks/use-mouse.js.map +1 -1
  24. package/dist/src/hooks/use-paste.d.ts +13 -3
  25. package/dist/src/hooks/use-paste.d.ts.map +1 -1
  26. package/dist/src/hooks/use-paste.js +15 -5
  27. package/dist/src/hooks/use-paste.js.map +1 -1
  28. package/dist/src/hooks/use-scroll.d.ts +59 -24
  29. package/dist/src/hooks/use-scroll.d.ts.map +1 -1
  30. package/dist/src/hooks/use-scroll.js +238 -79
  31. package/dist/src/hooks/use-scroll.js.map +1 -1
  32. package/dist/src/hooks/use-shortcut.d.ts +16 -0
  33. package/dist/src/hooks/use-shortcut.d.ts.map +1 -0
  34. package/dist/src/hooks/use-shortcut.js +29 -0
  35. package/dist/src/hooks/use-shortcut.js.map +1 -0
  36. package/dist/src/hosts/base.d.ts +16 -0
  37. package/dist/src/hosts/base.d.ts.map +1 -1
  38. package/dist/src/hosts/base.js +30 -0
  39. package/dist/src/hosts/base.js.map +1 -1
  40. package/dist/src/hosts/box.d.ts.map +1 -1
  41. package/dist/src/hosts/box.js +7 -8
  42. package/dist/src/hosts/box.js.map +1 -1
  43. package/dist/src/hosts/canvas.d.ts.map +1 -1
  44. package/dist/src/hosts/canvas.js +5 -3
  45. package/dist/src/hosts/canvas.js.map +1 -1
  46. package/dist/src/hosts/codeblock.d.ts.map +1 -1
  47. package/dist/src/hosts/codeblock.js +5 -4
  48. package/dist/src/hosts/codeblock.js.map +1 -1
  49. package/dist/src/hosts/flex-container.d.ts.map +1 -1
  50. package/dist/src/hosts/flex-container.js +5 -8
  51. package/dist/src/hosts/flex-container.js.map +1 -1
  52. package/dist/src/hosts/index.d.ts +1 -1
  53. package/dist/src/hosts/index.d.ts.map +1 -1
  54. package/dist/src/hosts/index.js +2 -3
  55. package/dist/src/hosts/index.js.map +1 -1
  56. package/dist/src/hosts/overlay-item.js +2 -2
  57. package/dist/src/hosts/overlay-item.js.map +1 -1
  58. package/dist/src/hosts/overlay.d.ts.map +1 -1
  59. package/dist/src/hosts/overlay.js +6 -11
  60. package/dist/src/hosts/overlay.js.map +1 -1
  61. package/dist/src/hosts/scroll.d.ts +8 -0
  62. package/dist/src/hosts/scroll.d.ts.map +1 -1
  63. package/dist/src/hosts/scroll.js +50 -26
  64. package/dist/src/hosts/scroll.js.map +1 -1
  65. package/dist/src/hosts/spacer.d.ts.map +1 -1
  66. package/dist/src/hosts/spacer.js +1 -3
  67. package/dist/src/hosts/spacer.js.map +1 -1
  68. package/dist/src/hosts/text.d.ts +24 -45
  69. package/dist/src/hosts/text.d.ts.map +1 -1
  70. package/dist/src/hosts/text.js +69 -215
  71. package/dist/src/hosts/text.js.map +1 -1
  72. package/dist/src/hosts/zstack.d.ts.map +1 -1
  73. package/dist/src/hosts/zstack.js +4 -10
  74. package/dist/src/hosts/zstack.js.map +1 -1
  75. package/dist/src/index.d.ts +6 -4
  76. package/dist/src/index.d.ts.map +1 -1
  77. package/dist/src/index.js +3 -2
  78. package/dist/src/index.js.map +1 -1
  79. package/dist/src/reconciler/types.d.ts +2 -0
  80. package/dist/src/reconciler/types.d.ts.map +1 -1
  81. package/dist/src/renderer/core/FrameBuilder.d.ts.map +1 -1
  82. package/dist/src/renderer/core/FrameBuilder.js +2 -0
  83. package/dist/src/renderer/core/FrameBuilder.js.map +1 -1
  84. package/dist/src/renderer/input/InputProcessor.d.ts.map +1 -1
  85. package/dist/src/renderer/input/InputProcessor.js +13 -3
  86. package/dist/src/renderer/input/InputProcessor.js.map +1 -1
  87. package/dist/src/renderer/lifecycle/EventBus.d.ts +2 -2
  88. package/dist/src/renderer/lifecycle/EventBus.d.ts.map +1 -1
  89. package/dist/src/renderer/lifecycle/EventBus.js +13 -1
  90. package/dist/src/renderer/lifecycle/EventBus.js.map +1 -1
  91. package/dist/src/renderer/lifecycle/RenderCache.d.ts +3 -0
  92. package/dist/src/renderer/lifecycle/RenderCache.d.ts.map +1 -0
  93. package/dist/src/renderer/lifecycle/RenderCache.js +9 -0
  94. package/dist/src/renderer/lifecycle/RenderCache.js.map +1 -0
  95. package/dist/src/renderer/lifecycle/index.d.ts +1 -0
  96. package/dist/src/renderer/lifecycle/index.d.ts.map +1 -1
  97. package/dist/src/renderer/lifecycle/index.js +1 -0
  98. package/dist/src/renderer/lifecycle/index.js.map +1 -1
  99. package/dist/src/renderer-types.d.ts +9 -2
  100. package/dist/src/renderer-types.d.ts.map +1 -1
  101. package/dist/src/renderer.d.ts +13 -2
  102. package/dist/src/renderer.d.ts.map +1 -1
  103. package/dist/src/renderer.js +42 -11
  104. package/dist/src/renderer.js.map +1 -1
  105. package/dist/src/shortcuts.d.ts +15 -0
  106. package/dist/src/shortcuts.d.ts.map +1 -0
  107. package/dist/src/shortcuts.js +149 -0
  108. package/dist/src/shortcuts.js.map +1 -0
  109. package/dist/src/test/mock-streams.d.ts.map +1 -1
  110. package/dist/src/test/mock-streams.js +0 -3
  111. package/dist/src/test/mock-streams.js.map +1 -1
  112. package/dist/src/test/render-tui.d.ts.map +1 -1
  113. package/dist/src/test/render-tui.js +1 -0
  114. package/dist/src/test/render-tui.js.map +1 -1
  115. package/dist/src/utils/alignment.d.ts +4 -0
  116. package/dist/src/utils/alignment.d.ts.map +1 -1
  117. package/dist/src/utils/alignment.js +12 -0
  118. package/dist/src/utils/alignment.js.map +1 -1
  119. package/dist/src/utils/index.d.ts +3 -2
  120. package/dist/src/utils/index.d.ts.map +1 -1
  121. package/dist/src/utils/index.js +3 -2
  122. package/dist/src/utils/index.js.map +1 -1
  123. package/dist/src/utils/styles.d.ts +6 -1
  124. package/dist/src/utils/styles.d.ts.map +1 -1
  125. package/dist/src/utils/styles.js +9 -0
  126. package/dist/src/utils/styles.js.map +1 -1
  127. package/dist/src/utils/text-wrap.d.ts +10 -0
  128. package/dist/src/utils/text-wrap.d.ts.map +1 -0
  129. package/dist/src/utils/text-wrap.js +64 -0
  130. package/dist/src/utils/text-wrap.js.map +1 -0
  131. package/dist/tsconfig.tsbuildinfo +1 -1
  132. package/jsx-runtime.ts +1 -2
  133. package/package.json +2 -2
  134. package/src/components/Markdown.tsx +7 -7
  135. package/src/components/MultilineTextInput.tsx +14 -0
  136. package/src/components/TextInput.tsx +18 -0
  137. package/src/dev.tsx +59 -107
  138. package/src/hooks/index.ts +3 -0
  139. package/src/hooks/use-mouse.ts +19 -3
  140. package/src/hooks/use-paste.ts +24 -5
  141. package/src/hooks/use-scroll.ts +345 -105
  142. package/src/hooks/use-shortcut.ts +54 -0
  143. package/src/hosts/base.ts +35 -0
  144. package/src/hosts/box.ts +7 -8
  145. package/src/hosts/canvas.ts +5 -3
  146. package/src/hosts/codeblock.ts +5 -4
  147. package/src/hosts/flex-container.ts +5 -7
  148. package/src/hosts/index.ts +1 -4
  149. package/src/hosts/overlay-item.ts +2 -2
  150. package/src/hosts/overlay.ts +6 -12
  151. package/src/hosts/scroll.ts +55 -26
  152. package/src/hosts/spacer.ts +1 -3
  153. package/src/hosts/text.ts +89 -256
  154. package/src/hosts/zstack.ts +4 -11
  155. package/src/index.ts +19 -6
  156. package/src/reconciler/types.ts +3 -0
  157. package/src/renderer/core/FrameBuilder.ts +3 -0
  158. package/src/renderer/input/InputProcessor.ts +13 -3
  159. package/src/renderer/lifecycle/EventBus.ts +14 -4
  160. package/src/renderer/lifecycle/RenderCache.ts +13 -0
  161. package/src/renderer/lifecycle/index.ts +1 -0
  162. package/src/renderer-types.ts +10 -2
  163. package/src/renderer.ts +85 -14
  164. package/src/shortcuts.ts +180 -0
  165. package/src/test/mock-streams.ts +0 -3
  166. package/src/test/render-tui.ts +1 -0
  167. package/src/utils/alignment.ts +18 -0
  168. package/src/utils/index.ts +3 -1
  169. package/src/utils/styles.ts +18 -1
  170. package/src/utils/text-wrap.ts +66 -0
package/dist/src/dev.js CHANGED
@@ -10,6 +10,8 @@ import { jsx as _jsx, jsxs as _jsxs } from "@effect-tui/react/jsx-runtime";
10
10
  /**
11
11
  * Development utilities for hot module replacement (HMR).
12
12
  *
13
+ * Use render(..., { dev: true, importMeta: import.meta }) to enable HMR.
14
+ *
13
15
  * Enables hot reload during development:
14
16
  * - File changes trigger re-render without process restart
15
17
  * - Terminal stays stable (no screen flash)
@@ -32,7 +34,6 @@ import { DiagnosticsPanel } from "./debug/DiagnosticsPanel.js";
32
34
  import { ToastContainer, ToastProvider, useToast } from "./dev/Toast.js";
33
35
  import { useKeyboard } from "./hooks/use-keyboard.js";
34
36
  import { enableRemote } from "./remote/index.js";
35
- import { createRenderer, createRoot } from "./renderer.js";
36
37
  import { useRenderer, useTerminalSize } from "./renderer-context.js";
37
38
  /**
38
39
  * Pipeable combinator that makes an atom persist across hot reloads.
@@ -43,7 +44,7 @@ import { useRenderer, useTerminalSize } from "./renderer-context.js";
43
44
  * @example
44
45
  * ```tsx
45
46
  * import { Atom } from "@effect-atom/atom-react"
46
- * import { hmr, devRender } from "@effect-tui/react"
47
+ * import { hmr, render } from "@effect-tui/react"
47
48
  *
48
49
  * // Just pipe hmr() - that's it!
49
50
  * const countAtom = Atom.make(0).pipe(hmr("count"))
@@ -53,6 +54,8 @@ import { useRenderer, useTerminalSize } from "./renderer-context.js";
53
54
  * const count = useAtomValue(countAtom)
54
55
  * // Edit this file - count persists!
55
56
  * }
57
+ *
58
+ * render(<App />, { dev: true, importMeta: import.meta })
56
59
  * ```
57
60
  */
58
61
  export function hmr(key) {
@@ -80,36 +83,6 @@ export function hmr(key) {
80
83
  export function hmrState(key, create) {
81
84
  return globalValue(Symbol.for(`hmr/${key}`), create);
82
85
  }
83
- /**
84
- * Simple self-running dev mode. Just add this at the bottom of your file:
85
- *
86
- * @example
87
- * ```tsx
88
- * export default function App() { ... }
89
- *
90
- * devMain(import.meta)
91
- * ```
92
- *
93
- * That's it! Handles:
94
- * - Only runs when file is the entry point (import.meta.main)
95
- * - Only initializes once across HMR reloads
96
- * - Automatically finds the file path
97
- */
98
- export function devMain(importMeta, options) {
99
- // Skip if not main entry point
100
- if (!importMeta.main)
101
- return;
102
- // Skip if this is a HMR re-import (has cache-busting query string)
103
- if (importMeta.url.includes("?"))
104
- return;
105
- const key = `devMain/${importMeta.url}`;
106
- const initialized = hmrState(key, () => ({ done: false }));
107
- if (!initialized.done) {
108
- initialized.done = true;
109
- const filePath = new URL(importMeta.url).pathname;
110
- devRender(filePath, options);
111
- }
112
- }
113
86
  // Cache for runtime key extraction
114
87
  const keyCache = new Map();
115
88
  /**
@@ -150,7 +123,7 @@ function extractVarName(source, line) {
150
123
  * @example
151
124
  * ```tsx
152
125
  * import { Atom } from "@effect-atom/atom-react"
153
- * import { autoHmr, devRender } from "@effect-tui/react"
126
+ * import { autoHmr, render } from "@effect-tui/react"
154
127
  *
155
128
  * // No manual key needed - derived from variable name!
156
129
  * const countAtom = Atom.make(0).pipe(autoHmr)
@@ -226,30 +199,6 @@ async function awaitWriteFinish(path, stabilityMs) {
226
199
  await new Promise((r) => setTimeout(r, checkInterval));
227
200
  }
228
201
  }
229
- /**
230
- * Render a TUI app with hot module replacement support.
231
- *
232
- * Uses @parcel/watcher for reliable, cross-platform file watching.
233
- * When files change, the module is re-imported and the app re-renders
234
- * without restarting the process or tearing down the terminal.
235
- *
236
- * For state preservation, use effect-atom with the hmr() combinator:
237
- *
238
- * @example
239
- * ```tsx
240
- * import { Atom, useAtomValue } from "@effect-atom/atom-react"
241
- * import { hmr, devRender } from "@effect-tui/react"
242
- *
243
- * const countAtom = Atom.make(0).pipe(hmr("count"))
244
- *
245
- * export default function App() {
246
- * const count = useAtomValue(countAtom)
247
- * return <text>Count: {count}</text>
248
- * }
249
- *
250
- * devRender(import.meta.path, { mode: "inline" })
251
- * ```
252
- */
253
202
  /**
254
203
  * Internal component that handles screenshot with toast notification
255
204
  */
@@ -290,8 +239,8 @@ function StatsOverlay({ sampleMs, title }) {
290
239
  * - Auto-show console on errors
291
240
  * - Optional renderer stats overlay (showStats)
292
241
  *
293
- * Use this to wrap your app when you need dev features but can't use devRender
294
- * (e.g., when you need to pass props to your App component).
242
+ * Use this to wrap your app when you need dev UI features without the dev runtime
243
+ * (e.g., when you need to pass props or load the app manually).
295
244
  */
296
245
  export function DevWrapper({ children, showStats, statsSampleMs, statsTitle, mode, }) {
297
246
  const { visible } = useConsole({ autoShowOnError: true, initiallyVisible: false });
@@ -302,12 +251,10 @@ export function DevWrapper({ children, showStats, statsSampleMs, statsTitle, mod
302
251
  // Fullscreen mode: Overlay with toast/console positioned by alignment
303
252
  return (_jsx(ToastProvider, { children: _jsxs(Overlay, { children: [_jsx(ScreenshotHandler, {}), children, visible && (_jsx(Overlay.Item, { alignment: { v: "bottom" }, children: _jsx(ConsolePopover, { fixedHeight: 12 }) })), showStats && (_jsx(Overlay.Item, { alignment: { v: "top", h: "right" }, children: _jsx(StatsOverlay, { sampleMs: statsSampleMs, title: statsTitle }) })), _jsx(Overlay.Item, { alignment: { v: "top" }, children: _jsx(ToastContainer, {}) })] }) }));
304
253
  }
305
- export async function devRender(entryPath, options) {
254
+ export function startDevRuntime(entryPath, renderer, root, options) {
306
255
  const watchExtensions = options?.watchExtensions ?? [".ts", ".tsx"];
307
256
  const debounceMs = options?.debounce ?? 150;
308
257
  const stabilityMs = options?.awaitWriteFinish ?? 50;
309
- const renderer = createRenderer(options);
310
- const root = createRoot(renderer);
311
258
  // Dev mode always enables remote control with entry path for identification
312
259
  const stopRemote = enableRemote(renderer, { entryPath });
313
260
  let debounceTimer = null;
@@ -315,8 +262,7 @@ export async function devRender(entryPath, options) {
315
262
  let subscription = null;
316
263
  // Determine project root for cache clearing
317
264
  const projectRoot = options?.watchDirs?.[0] ?? dirname(entryPath);
318
- // Import and render the module
319
- const render = async () => {
265
+ const reload = async () => {
320
266
  const thisVersion = ++version;
321
267
  try {
322
268
  // Clear module cache for project files before re-importing
@@ -330,7 +276,7 @@ export async function devRender(entryPath, options) {
330
276
  if (!App) {
331
277
  const err = new Error(`No default export found in ${entryPath}`);
332
278
  options?.onError?.(err);
333
- console.error("[devRender]", err.message);
279
+ console.error("[effect-tui] Dev render failed:", err.message);
334
280
  return;
335
281
  }
336
282
  // Render the component wrapped in DevWrapper for console panel
@@ -346,38 +292,38 @@ export async function devRender(entryPath, options) {
346
292
  catch (err) {
347
293
  const error = err instanceof Error ? err : new Error(String(err));
348
294
  options?.onError?.(error);
349
- console.error("[devRender] Error loading module:", error.message);
295
+ console.error("[effect-tui] Dev render error:", error.message);
350
296
  }
351
297
  };
352
- // Initial render
353
- await render();
354
- // Watch for changes using @parcel/watcher
355
- try {
356
- subscription = await watcher.subscribe(projectRoot, async (err, events) => {
357
- if (err) {
358
- options?.onError?.(err);
359
- console.error("[devRender] Watcher error:", err);
360
- return;
361
- }
362
- // Filter to relevant file extensions
363
- const relevantEvents = events.filter((event) => watchExtensions.some((ext) => event.path.endsWith(ext)));
364
- if (relevantEvents.length === 0)
365
- return;
366
- // Debounce rapid changes
367
- if (debounceTimer)
368
- clearTimeout(debounceTimer);
369
- debounceTimer = setTimeout(async () => {
370
- // Wait for file writes to stabilize
371
- const changedPath = relevantEvents[0].path;
372
- await awaitWriteFinish(changedPath, stabilityMs);
373
- options?.onReload?.();
374
- await render();
375
- }, debounceMs);
376
- });
377
- }
378
- catch (err) {
379
- console.error(`[devRender] Failed to watch ${projectRoot}:`, err);
380
- }
298
+ const ready = (async () => {
299
+ await reload();
300
+ try {
301
+ subscription = await watcher.subscribe(projectRoot, async (err, events) => {
302
+ if (err) {
303
+ options?.onError?.(err);
304
+ console.error("[effect-tui] Dev watcher error:", err);
305
+ return;
306
+ }
307
+ // Filter to relevant file extensions
308
+ const relevantEvents = events.filter((event) => watchExtensions.some((ext) => event.path.endsWith(ext)));
309
+ if (relevantEvents.length === 0)
310
+ return;
311
+ // Debounce rapid changes
312
+ if (debounceTimer)
313
+ clearTimeout(debounceTimer);
314
+ debounceTimer = setTimeout(async () => {
315
+ // Wait for file writes to stabilize
316
+ const changedPath = relevantEvents[0].path;
317
+ await awaitWriteFinish(changedPath, stabilityMs);
318
+ options?.onReload?.();
319
+ await reload();
320
+ }, debounceMs);
321
+ });
322
+ }
323
+ catch (err) {
324
+ console.error(`[effect-tui] Failed to watch ${projectRoot}:`, err);
325
+ }
326
+ })();
381
327
  const stop = async () => {
382
328
  if (debounceTimer)
383
329
  clearTimeout(debounceTimer);
@@ -387,6 +333,6 @@ export async function devRender(entryPath, options) {
387
333
  stopRemote();
388
334
  renderer.stop();
389
335
  };
390
- return { renderer, root, rerender: render, stop };
336
+ return { ready, reload, stop };
391
337
  }
392
338
  //# sourceMappingURL=dev.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/dev.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/dev.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,10 @@ export type { UseKeyboardOptions } from "./use-keyboard.js";
2
2
  export { useKeyboard } from "./use-keyboard.js";
3
3
  export type { UseMouseOptions } from "./use-mouse.js";
4
4
  export { useMouse } from "./use-mouse.js";
5
+ export type { UsePasteOptions } from "./use-paste.js";
5
6
  export { usePaste } from "./use-paste.js";
7
+ export type { ShortcutHandler, ShortcutMap, UseShortcutOptions } from "./use-shortcut.js";
8
+ export { useShortcut } from "./use-shortcut.js";
6
9
  export { useQuit } from "./use-quit.js";
7
10
  export type { ScrollState, UseScrollOptions, UseScrollReturn } from "./use-scroll.js";
8
11
  export { useScroll } from "./use-scroll.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC5F,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACrF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC5F,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export { useKeyboard } from "./use-keyboard.js";
2
2
  export { useMouse } from "./use-mouse.js";
3
3
  export { usePaste } from "./use-paste.js";
4
+ export { useShortcut } from "./use-shortcut.js";
4
5
  export { useQuit } from "./use-quit.js";
5
6
  export { useScroll } from "./use-scroll.js";
6
7
  export { useTimer } from "./use-timer.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
@@ -1,9 +1,18 @@
1
1
  import type { MouseButton, MouseMsg } from "@effect-tui/core";
2
2
  export type UseMouseOptions = {
3
- /** Filter by action type */
3
+ /** Filter by action type (alias: phase) */
4
4
  action?: "press" | "release" | "drag" | "move" | "any";
5
+ /** Filter by action type */
6
+ phase?: "press" | "release" | "drag" | "move" | "any";
5
7
  /** Filter by button */
6
8
  button?: MouseButton | MouseButton[];
9
+ /** Optional predicate to drop events before they reach the handler. */
10
+ filter?: (mouse: MouseMsg) => boolean;
11
+ /**
12
+ * If true, call preventDefault when available before invoking handler.
13
+ * This stops further renderer-level handlers.
14
+ */
15
+ stopPropagation?: boolean;
7
16
  };
8
17
  /**
9
18
  * Subscribe to mouse events.
@@ -1 +1 @@
1
- {"version":3,"file":"use-mouse.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-mouse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAI7D,MAAM,MAAM,eAAe,GAAG;IAC7B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;IACtD,uBAAuB;IACvB,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAA;CACpC,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CAwBzF"}
1
+ {"version":3,"file":"use-mouse.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-mouse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAI7D,MAAM,MAAM,eAAe,GAAG;IAC7B,2CAA2C;IAC3C,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;IACtD,4BAA4B;IAC5B,KAAK,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAA;IACrD,uBAAuB;IACvB,MAAM,CAAC,EAAE,WAAW,GAAG,WAAW,EAAE,CAAA;IACpC,uEAAuE;IACvE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAA;IACrC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CA+BzF"}
@@ -17,11 +17,15 @@ import { useRenderer } from "../renderer.js";
17
17
  */
18
18
  export function useMouse(handler, opts) {
19
19
  const renderer = useRenderer();
20
- const action = opts?.action ?? "any";
20
+ const action = opts?.phase ?? opts?.action ?? "any";
21
21
  const button = opts?.button;
22
+ const filter = opts?.filter;
23
+ const stopPropagation = opts?.stopPropagation ?? false;
22
24
  // Store handler in ref so we always call the latest version
23
25
  const handlerRef = useRef(handler);
24
26
  handlerRef.current = handler;
27
+ const filterRef = useRef(filter);
28
+ filterRef.current = filter;
25
29
  useEffect(() => {
26
30
  const wrapped = (mouse) => {
27
31
  // Filter by action
@@ -33,9 +37,13 @@ export function useMouse(handler, opts) {
33
37
  if (!buttons.includes(mouse.button))
34
38
  return;
35
39
  }
40
+ if (filterRef.current && !filterRef.current(mouse))
41
+ return;
42
+ if (stopPropagation && mouse.preventDefault)
43
+ mouse.preventDefault();
36
44
  handlerRef.current(mouse);
37
45
  };
38
46
  return renderer.onMouse(wrapped);
39
- }, [renderer, action, button]);
47
+ }, [renderer, action, button, stopPropagation]);
40
48
  }
41
49
  //# sourceMappingURL=use-mouse.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-mouse.js","sourceRoot":"","sources":["../../../src/hooks/use-mouse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAS5C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAkC,EAAE,IAAsB;IAClF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,KAAK,CAAA;IACpC,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;IAE3B,4DAA4D;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,OAAO,GAAG,CAAC,KAAe,EAAE,EAAE;YACnC,mBAAmB;YACnB,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAM;YAEvD,mBAAmB;YACnB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;gBACzD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;oBAAE,OAAM;YAC5C,CAAC;YAED,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC,CAAA;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;AAC/B,CAAC"}
1
+ {"version":3,"file":"use-mouse.js","sourceRoot":"","sources":["../../../src/hooks/use-mouse.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAkB5C;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAkC,EAAE,IAAsB;IAClF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,MAAM,IAAI,KAAK,CAAA;IACnD,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;IAC3B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;IAC3B,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,IAAI,KAAK,CAAA;IAEtD,4DAA4D;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAA;IAE1B,SAAS,CAAC,GAAG,EAAE;QACd,MAAM,OAAO,GAAG,CAAC,KAAe,EAAE,EAAE;YACnC,mBAAmB;YACnB,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAM;YAEvD,mBAAmB;YACnB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;gBACzD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;oBAAE,OAAM;YAC5C,CAAC;YAED,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAM;YAC1D,IAAI,eAAe,IAAI,KAAK,CAAC,cAAc;gBAAE,KAAK,CAAC,cAAc,EAAE,CAAA;YAEnE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC,CAAA;QACD,OAAO,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC,CAAA;AAChD,CAAC"}
@@ -1,3 +1,13 @@
1
+ import type { PasteMsg } from "../renderer-types.js";
2
+ export type UsePasteOptions = {
3
+ /** Optional predicate to drop events before they reach the handler. */
4
+ filter?: (paste: PasteMsg) => boolean;
5
+ /**
6
+ * If true, call preventDefault when available before invoking handler.
7
+ * This stops further renderer-level handlers.
8
+ */
9
+ stopPropagation?: boolean;
10
+ };
1
11
  /**
2
12
  * Subscribe to bracketed paste events (if supported by renderer/terminal).
3
13
  *
@@ -7,10 +17,10 @@
7
17
  * @example
8
18
  * ```tsx
9
19
  * // No useCallback needed - just pass your handler directly
10
- * usePaste((text) => {
11
- * insertText(text, cursorPosition)
20
+ * usePaste((paste) => {
21
+ * insertText(paste.text, cursorPosition)
12
22
  * })
13
23
  * ```
14
24
  */
15
- export declare function usePaste(handler: (text: string) => void): void;
25
+ export declare function usePaste(handler: (paste: PasteMsg) => void, opts?: UsePasteOptions): void;
16
26
  //# sourceMappingURL=use-paste.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-paste.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-paste.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI,CAW9D"}
1
+ {"version":3,"file":"use-paste.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-paste.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAGpD,MAAM,MAAM,eAAe,GAAG;IAC7B,uEAAuE;IACvE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAA;IACrC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,EAAE,IAAI,CAAC,EAAE,eAAe,GAAG,IAAI,CAmBzF"}
@@ -9,20 +9,30 @@ import { useRenderer } from "../renderer.js";
9
9
  * @example
10
10
  * ```tsx
11
11
  * // No useCallback needed - just pass your handler directly
12
- * usePaste((text) => {
13
- * insertText(text, cursorPosition)
12
+ * usePaste((paste) => {
13
+ * insertText(paste.text, cursorPosition)
14
14
  * })
15
15
  * ```
16
16
  */
17
- export function usePaste(handler) {
17
+ export function usePaste(handler, opts) {
18
18
  const renderer = useRenderer();
19
+ const filter = opts?.filter;
20
+ const stopPropagation = opts?.stopPropagation ?? false;
19
21
  // Store handler in ref so we always call the latest version
20
22
  const handlerRef = useRef(handler);
21
23
  handlerRef.current = handler;
24
+ const filterRef = useRef(filter);
25
+ filterRef.current = filter;
22
26
  useEffect(() => {
23
27
  if (!renderer.onPaste)
24
28
  return;
25
- return renderer.onPaste((text) => handlerRef.current(text));
26
- }, [renderer]);
29
+ return renderer.onPaste((paste) => {
30
+ if (filterRef.current && !filterRef.current(paste))
31
+ return;
32
+ if (stopPropagation && paste.preventDefault)
33
+ paste.preventDefault();
34
+ handlerRef.current(paste);
35
+ });
36
+ }, [renderer, stopPropagation]);
27
37
  }
28
38
  //# sourceMappingURL=use-paste.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-paste.js","sourceRoot":"","sources":["../../../src/hooks/use-paste.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAE5C;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,QAAQ,CAAC,OAA+B;IACvD,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAE9B,4DAA4D;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAM;QAC7B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5D,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"use-paste.js","sourceRoot":"","sources":["../../../src/hooks/use-paste.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAY5C;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,QAAQ,CAAC,OAAkC,EAAE,IAAsB;IAClF,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAA;IAC9B,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,CAAA;IAC3B,MAAM,eAAe,GAAG,IAAI,EAAE,eAAe,IAAI,KAAK,CAAA;IAEtD,4DAA4D;IAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;IAClC,UAAU,CAAC,OAAO,GAAG,OAAO,CAAA;IAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,SAAS,CAAC,OAAO,GAAG,MAAM,CAAA;IAE1B,SAAS,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,QAAQ,CAAC,OAAO;YAAE,OAAM;QAC7B,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjC,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,OAAM;YAC1D,IAAI,eAAe,IAAI,KAAK,CAAC,cAAc;gBAAE,KAAK,CAAC,cAAc,EAAE,CAAA;YACnE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1B,CAAC,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAA;AAChC,CAAC"}
@@ -1,30 +1,63 @@
1
+ import type { ScrollProps } from "../hosts/scroll.js";
1
2
  export interface ScrollState {
2
- /** Current scroll offset (pixels from start) */
3
+ /** Current scroll offset (pixels from start) for the primary axis */
3
4
  offset: number;
4
- /** Maximum scroll offset */
5
+ /** Maximum scroll offset for the primary axis */
5
6
  maxOffset: number;
6
- /** Viewport height (or width for horizontal) */
7
+ /** Viewport size for the primary axis */
7
8
  viewportSize: number;
8
- /** Whether viewport size has been measured by the host */
9
+ /** Whether viewport size has been measured by the host (primary axis) */
9
10
  viewportMeasured: boolean;
10
- /** Total content size */
11
+ /** Total content size for the primary axis */
11
12
  contentSize: number;
12
- /** Whether we're at the start edge */
13
+ /** Whether we're at the start edge (primary axis) */
13
14
  atStart: boolean;
14
- /** Whether we're at the end edge */
15
+ /** Whether we're at the end edge (primary axis) */
15
16
  atEnd: boolean;
17
+ /** Current horizontal offset (pixels from start) */
18
+ offsetX: number;
19
+ /** Maximum horizontal offset */
20
+ maxOffsetX: number;
21
+ /** Horizontal viewport size */
22
+ viewportSizeX: number;
23
+ /** Whether horizontal viewport size has been measured */
24
+ viewportMeasuredX: boolean;
25
+ /** Total horizontal content size */
26
+ contentSizeX: number;
27
+ /** Whether we're at the horizontal start edge */
28
+ atStartX: boolean;
29
+ /** Whether we're at the horizontal end edge */
30
+ atEndX: boolean;
16
31
  }
17
32
  export interface UseScrollOptions {
18
- /** Scroll axis: "vertical" (default) or "horizontal" */
19
- axis?: "vertical" | "horizontal";
20
- /** Controlled content size (skips host measurement when provided) */
33
+ /** Scroll axis: "vertical" (default), "horizontal", or "both" */
34
+ axis?: "vertical" | "horizontal" | "both";
35
+ /** Controlled content size for the primary axis (skips host measurement when provided) */
21
36
  contentSize?: number;
37
+ /** Controlled content width (skips host measurement when provided) */
38
+ contentWidth?: number;
39
+ /** Controlled content height (skips host measurement when provided) */
40
+ contentHeight?: number;
22
41
  /** @internal Initial viewport size override (useful for tests) */
23
42
  initialViewportSize?: number;
43
+ /** @internal Initial viewport width override (useful for tests) */
44
+ initialViewportWidth?: number;
45
+ /** @internal Initial viewport height override (useful for tests) */
46
+ initialViewportHeight?: number;
24
47
  /** @internal Initial content size override (useful for tests) */
25
48
  initialContentSize?: number;
26
- /** Initial scroll offset */
49
+ /** @internal Initial content width override (useful for tests) */
50
+ initialContentWidth?: number;
51
+ /** @internal Initial content height override (useful for tests) */
52
+ initialContentHeight?: number;
53
+ /** Initial scroll offset for the primary axis */
27
54
  initialOffset?: number;
55
+ /** Initial horizontal scroll offset */
56
+ initialOffsetX?: number;
57
+ /** Alignment when content is smaller than viewport */
58
+ align?: "start" | "end";
59
+ /** Whether to show scrollbars */
60
+ showScrollbar?: boolean;
28
61
  /** Enable keyboard navigation (default: true) */
29
62
  enableKeyboard?: boolean;
30
63
  /** Enable mouse wheel (default: true) */
@@ -41,14 +74,22 @@ export interface UseScrollOptions {
41
74
  export interface UseScrollReturn {
42
75
  /** Current scroll state */
43
76
  state: ScrollState;
44
- /** Set scroll offset directly */
77
+ /** Set scroll offset directly (primary axis) */
45
78
  setOffset: (offset: number) => void;
46
- /** Scroll by delta pixels */
79
+ /** Set horizontal scroll offset directly */
80
+ setOffsetX: (offsetX: number) => void;
81
+ /** Scroll by delta pixels (primary axis) */
47
82
  scrollBy: (delta: number) => void;
48
- /** Scroll to start */
83
+ /** Scroll by delta pixels horizontally */
84
+ scrollByX: (delta: number) => void;
85
+ /** Scroll to start (primary axis) */
49
86
  scrollToStart: () => void;
50
- /** Scroll to end */
87
+ /** Scroll to end (primary axis) */
51
88
  scrollToEnd: () => void;
89
+ /** Scroll to horizontal start */
90
+ scrollToStartX: () => void;
91
+ /** Scroll to horizontal end */
92
+ scrollToEndX: () => void;
52
93
  /**
53
94
  * Scroll to make a position visible in the viewport.
54
95
  * Useful for keeping a selected item in view.
@@ -56,17 +97,11 @@ export interface UseScrollReturn {
56
97
  * @param itemSize - Size of each item (default: 1 for row-based lists)
57
98
  * @param padding - Extra padding around the item (default: 0)
58
99
  * @param totalSize - Optional known total content size (avoids stale state issues)
100
+ * @param axis - Axis to scroll (defaults to vertical)
59
101
  */
60
- scrollToVisible: (position: number, itemSize?: number, padding?: number, totalSize?: number) => void;
102
+ scrollToVisible: (position: number, itemSize?: number, padding?: number, totalSize?: number, axis?: "vertical" | "horizontal") => void;
61
103
  /** Props to spread on <scroll> element */
62
- scrollProps: {
63
- offset: number;
64
- axis: "vertical" | "horizontal";
65
- onContentSize: (width: number, height: number) => void;
66
- onViewportSize: (width: number, height: number) => void;
67
- onEffectiveOffset?: (offset: number) => void;
68
- onRect?: (x: number, y: number, w: number, h: number) => void;
69
- };
104
+ scrollProps: ScrollProps;
70
105
  }
71
106
  /**
72
107
  * Hook for managing scroll state with keyboard/mouse input.
@@ -1 +1 @@
1
- {"version":3,"file":"use-scroll.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-scroll.ts"],"names":[],"mappings":"AAsFA,MAAM,WAAW,WAAW;IAC3B,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,gDAAgD;IAChD,YAAY,EAAE,MAAM,CAAA;IACpB,0DAA0D;IAC1D,gBAAgB,EAAE,OAAO,CAAA;IACzB,yBAAyB;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,sCAAsC;IACtC,OAAO,EAAE,OAAO,CAAA;IAChB,oCAAoC;IACpC,KAAK,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,gBAAgB;IAChC,wDAAwD;IACxD,IAAI,CAAC,EAAE,UAAU,GAAG,YAAY,CAAA;IAChC,qEAAqE;IACrE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kEAAkE;IAClE,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,4BAA4B;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iDAAiD;IACjD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,iDAAiD;IACjD,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,6EAA6E;IAC7E,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,eAAe;IAC/B,2BAA2B;IAC3B,KAAK,EAAE,WAAW,CAAA;IAClB,iCAAiC;IACjC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,6BAA6B;IAC7B,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,sBAAsB;IACtB,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB,oBAAoB;IACpB,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB;;;;;;;OAOG;IACH,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACpG,0CAA0C;IAC1C,WAAW,EAAE;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,IAAI,EAAE,UAAU,GAAG,YAAY,CAAA;QAC/B,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;QACtD,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;QACvD,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAA;QAC5C,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;KAC7D,CAAA;CACD;AAsED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,eAAe,CAkOzE"}
1
+ {"version":3,"file":"use-scroll.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-scroll.ts"],"names":[],"mappings":"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"}