@nuvin/ink 7.0.2-alpha → 7.1.1-alpha

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 (53) hide show
  1. package/build/components/App.d.ts +3 -1
  2. package/build/components/App.js +4 -2
  3. package/build/components/App.js.map +1 -1
  4. package/build/components/Text.d.ts +9 -1
  5. package/build/components/Text.js +2 -2
  6. package/build/components/Text.js.map +1 -1
  7. package/build/components/TextSelectionContext.d.ts +6 -0
  8. package/build/components/TextSelectionContext.js +7 -0
  9. package/build/components/TextSelectionContext.js.map +1 -0
  10. package/build/dom.d.ts +1 -0
  11. package/build/dom.js.map +1 -1
  12. package/build/hooks/use-text-selection-actions.d.ts +10 -0
  13. package/build/hooks/use-text-selection-actions.js +26 -0
  14. package/build/hooks/use-text-selection-actions.js.map +1 -0
  15. package/build/hooks/use-text-selection.d.ts +9 -0
  16. package/build/hooks/use-text-selection.js +26 -0
  17. package/build/hooks/use-text-selection.js.map +1 -0
  18. package/build/index.d.ts +4 -0
  19. package/build/index.js +2 -0
  20. package/build/index.js.map +1 -1
  21. package/build/ink.d.ts +1 -0
  22. package/build/ink.js +12 -2
  23. package/build/ink.js.map +1 -1
  24. package/build/output.d.ts +9 -1
  25. package/build/output.js +31 -4
  26. package/build/output.js.map +1 -1
  27. package/build/paint-selection.d.ts +12 -2
  28. package/build/paint-selection.js +45 -98
  29. package/build/paint-selection.js.map +1 -1
  30. package/build/reconciler.js +8 -0
  31. package/build/reconciler.js.map +1 -1
  32. package/build/render-node-to-output.js +8 -2
  33. package/build/render-node-to-output.js.map +1 -1
  34. package/build/renderer.d.ts +2 -1
  35. package/build/renderer.js +13 -2
  36. package/build/renderer.js.map +1 -1
  37. package/build/text-selection-controller.d.ts +116 -0
  38. package/build/text-selection-controller.js +340 -0
  39. package/build/text-selection-controller.js.map +1 -0
  40. package/build/text-selection.d.ts +41 -0
  41. package/build/text-selection.js +101 -0
  42. package/build/text-selection.js.map +1 -0
  43. package/package.json +1 -1
  44. package/readme.md +47 -0
  45. package/build/current-frame.d.ts +0 -27
  46. package/build/current-frame.js +0 -73
  47. package/build/current-frame.js.map +0 -1
  48. package/build/hooks/use-selection-overlay.d.ts +0 -3
  49. package/build/hooks/use-selection-overlay.js +0 -14
  50. package/build/hooks/use-selection-overlay.js.map +0 -1
  51. package/build/selection.d.ts +0 -28
  52. package/build/selection.js +0 -9
  53. package/build/selection.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import React, { type ReactNode } from 'react';
2
2
  import { type CursorPosition } from '../log-update.js';
3
+ import { type TextSelectionController } from '../text-selection-controller.js';
3
4
  type Props = {
4
5
  readonly children: ReactNode;
5
6
  readonly stdin: NodeJS.ReadStream;
@@ -13,8 +14,9 @@ type Props = {
13
14
  readonly setCursorPosition: (position: CursorPosition | undefined) => void;
14
15
  readonly interactive: boolean;
15
16
  readonly renderThrottleMs: number;
17
+ readonly textSelection?: TextSelectionController;
16
18
  };
17
- declare function App({ children, stdin, stdout, stderr, writeToStdout, writeToStderr, exitOnCtrlC, onExit, onWaitUntilRenderFlush, setCursorPosition, interactive, renderThrottleMs, }: Props): React.ReactNode;
19
+ declare function App({ children, stdin, stdout, stderr, writeToStdout, writeToStderr, exitOnCtrlC, onExit, onWaitUntilRenderFlush, setCursorPosition, interactive, renderThrottleMs, textSelection, }: Props): React.ReactNode;
18
20
  declare namespace App {
19
21
  var displayName: string;
20
22
  }
@@ -10,6 +10,7 @@ import StderrContext from './StderrContext.js';
10
10
  import FocusContext from './FocusContext.js';
11
11
  import AnimationContext from './AnimationContext.js';
12
12
  import CursorContext from './CursorContext.js';
13
+ import { textSelectionContext as TextSelectionContext } from './TextSelectionContext.js';
13
14
  import ErrorBoundary from './ErrorBoundary.js';
14
15
  const tab = '\t';
15
16
  const shiftTab = '\u001B[Z';
@@ -17,7 +18,7 @@ const escape = '\u001B';
17
18
  // Root component for all Ink apps
18
19
  // It renders stdin and stdout contexts, so that children can access them if needed
19
20
  // It also handles Ctrl+C exiting and cursor visibility
20
- function App({ children, stdin, stdout, stderr, writeToStdout, writeToStderr, exitOnCtrlC, onExit, onWaitUntilRenderFlush, setCursorPosition, interactive, renderThrottleMs, }) {
21
+ function App({ children, stdin, stdout, stderr, writeToStdout, writeToStderr, exitOnCtrlC, onExit, onWaitUntilRenderFlush, setCursorPosition, interactive, renderThrottleMs, textSelection, }) {
21
22
  const [isFocusEnabled, setIsFocusEnabled] = useState(true);
22
23
  const [activeFocusId, setActiveFocusId] = useState(undefined);
23
24
  // Focusables array is managed internally via setFocusables callback pattern
@@ -464,7 +465,8 @@ function App({ children, stdin, stdout, stderr, writeToStdout, writeToStderr, ex
464
465
  React.createElement(FocusContext.Provider, { value: focusContextValue },
465
466
  React.createElement(AnimationContext.Provider, { value: animationContextValue },
466
467
  React.createElement(CursorContext.Provider, { value: cursorContextValue },
467
- React.createElement(ErrorBoundary, { onError: handleExit }, children)))))))));
468
+ React.createElement(TextSelectionContext.Provider, { value: textSelection },
469
+ React.createElement(ErrorBoundary, { onError: handleExit }, children))))))))));
468
470
  }
469
471
  App.displayName = 'InternalApp';
470
472
  export default App;
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/components/App.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/components/App.tsx"],"names":[],"mappings":"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"}
@@ -47,9 +47,17 @@ export type Props = {
47
47
  This property tells Ink to wrap or truncate text if its width is larger than the container. If `wrap` is passed (the default), Ink will wrap text and split it into multiple lines. If `hard` is passed, Ink will fill each line to the full column width, breaking words as necessary. If `truncate-*` is passed, Ink will truncate text instead, resulting in one line of text with the rest cut off.
48
48
  */
49
49
  readonly wrap?: Styles['textWrap'];
50
+ /**
51
+ Whether this text participates in mouse text selection. Set to `false` on
52
+ chrome text (icons, line-number gutters, diff markers) so it is never
53
+ highlighted and never appears in extracted selection text.
54
+
55
+ @default true
56
+ */
57
+ readonly selectable?: boolean;
50
58
  readonly children?: ReactNode;
51
59
  };
52
60
  /**
53
61
  This component can display text and change its style to make it bold, underlined, italic, or strikethrough.
54
62
  */
55
- export default function Text({ color, backgroundColor, dimColor, bold, italic, underline, strikethrough, inverse, wrap, children, 'aria-label': ariaLabel, 'aria-hidden': ariaHidden, }: Props): React.JSX.Element | null;
63
+ export default function Text({ color, backgroundColor, dimColor, bold, italic, underline, strikethrough, inverse, wrap, selectable, children, 'aria-label': ariaLabel, 'aria-hidden': ariaHidden, }: Props): React.JSX.Element | null;
@@ -6,7 +6,7 @@ import { backgroundContext } from './BackgroundContext.js';
6
6
  /**
7
7
  This component can display text and change its style to make it bold, underlined, italic, or strikethrough.
8
8
  */
9
- export default function Text({ color, backgroundColor, dimColor = false, bold = false, italic = false, underline = false, strikethrough = false, inverse = false, wrap = 'wrap', children, 'aria-label': ariaLabel, 'aria-hidden': ariaHidden = false, }) {
9
+ export default function Text({ color, backgroundColor, dimColor = false, bold = false, italic = false, underline = false, strikethrough = false, inverse = false, wrap = 'wrap', selectable = true, children, 'aria-label': ariaLabel, 'aria-hidden': ariaHidden = false, }) {
10
10
  const { isScreenReaderEnabled } = useContext(accessibilityContext);
11
11
  const inheritedBackgroundColor = useContext(backgroundContext);
12
12
  const childrenOrAriaLabel = isScreenReaderEnabled && ariaLabel ? ariaLabel : children;
@@ -45,6 +45,6 @@ export default function Text({ color, backgroundColor, dimColor = false, bold =
45
45
  if (isScreenReaderEnabled && ariaHidden) {
46
46
  return null;
47
47
  }
48
- return (React.createElement("ink-text", { style: { flexGrow: 0, flexShrink: 1, flexDirection: 'row', textWrap: wrap }, internal_transform: transform }, childrenOrAriaLabel));
48
+ return (React.createElement("ink-text", { style: { flexGrow: 0, flexShrink: 1, flexDirection: 'row', textWrap: wrap }, internal_transform: transform, internal_selectable: selectable }, childrenOrAriaLabel));
49
49
  }
50
50
  //# sourceMappingURL=Text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAiB,MAAM,OAAO,CAAC;AACxD,OAAO,KAAiC,MAAM,OAAO,CAAC;AAEtD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AA6DzD;;EAEE;AACF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAC5B,KAAK,EACL,eAAe,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,KAAK,EACZ,MAAM,GAAG,KAAK,EACd,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,OAAO,GAAG,KAAK,EACf,IAAI,GAAG,MAAM,EACb,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,UAAU,GAAG,KAAK,GAC1B;IACP,MAAM,EAAC,qBAAqB,EAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACjE,MAAM,wBAAwB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,mBAAmB,GACxB,qBAAqB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3D,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,oFAAoF;QACpF,MAAM,wBAAwB,GAC7B,eAAe,IAAI,wBAAwB,CAAC;QAC7C,IAAI,wBAAwB,EAAE,CAAC;YAC9B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,EAAE,YAAY,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACV,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACZ,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACf,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YACnB,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;IAEF,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CACN,kCACC,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EACzE,kBAAkB,EAAE,SAAS,IAE5B,mBAAmB,CACV,CACX,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,UAAU,EAAiB,MAAM,OAAO,CAAC;AACxD,OAAO,KAAiC,MAAM,OAAO,CAAC;AAEtD,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAEtC,OAAO,EAAC,oBAAoB,EAAC,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAC,iBAAiB,EAAC,MAAM,wBAAwB,CAAC;AAsEzD;;EAEE;AACF,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAC5B,KAAK,EACL,eAAe,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,GAAG,KAAK,EACZ,MAAM,GAAG,KAAK,EACd,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,OAAO,GAAG,KAAK,EACf,IAAI,GAAG,MAAM,EACb,UAAU,GAAG,IAAI,EACjB,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,aAAa,EAAE,UAAU,GAAG,KAAK,GAC1B;IACP,MAAM,EAAC,qBAAqB,EAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IACjE,MAAM,wBAAwB,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC/D,MAAM,mBAAmB,GACxB,qBAAqB,IAAI,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAE3D,IAAI,mBAAmB,KAAK,SAAS,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,CAAC,QAAgB,EAAU,EAAE;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACd,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,oFAAoF;QACpF,MAAM,wBAAwB,GAC7B,eAAe,IAAI,wBAAwB,CAAC;QAC7C,IAAI,wBAAwB,EAAE,CAAC;YAC9B,QAAQ,GAAG,QAAQ,CAAC,QAAQ,EAAE,wBAAwB,EAAE,YAAY,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACV,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACZ,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACf,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,aAAa,EAAE,CAAC;YACnB,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,QAAQ,CAAC;IACjB,CAAC,CAAC;IAEF,IAAI,qBAAqB,IAAI,UAAU,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,OAAO,CACN,kCACC,KAAK,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,EACzE,kBAAkB,EAAE,SAAS,EAC7B,mBAAmB,EAAE,UAAU,IAE9B,mBAAmB,CACV,CACX,CAAC;AACH,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type TextSelectionController } from '../text-selection-controller.js';
2
+ /**
3
+ Provides the instance-owned text selection controller to hooks. The value is
4
+ stable for the lifetime of the Ink instance — no module-level state exists.
5
+ */
6
+ export declare const textSelectionContext: import("react").Context<TextSelectionController | undefined>;
@@ -0,0 +1,7 @@
1
+ import { createContext } from 'react';
2
+ /**
3
+ Provides the instance-owned text selection controller to hooks. The value is
4
+ stable for the lifetime of the Ink instance — no module-level state exists.
5
+ */
6
+ export const textSelectionContext = createContext(undefined);
7
+ //# sourceMappingURL=TextSelectionContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextSelectionContext.js","sourceRoot":"","sources":["../../src/components/TextSelectionContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AAGpC;;;EAGE;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAE/C,SAAS,CAAC,CAAC"}
package/build/dom.d.ts CHANGED
@@ -16,6 +16,7 @@ export type DOMElement = {
16
16
  attributes: Record<string, DOMNodeAttribute>;
17
17
  childNodes: DOMNode[];
18
18
  internal_transform?: OutputTransformer;
19
+ internal_selectable?: boolean;
19
20
  internal_accessibility?: {
20
21
  role?: 'button' | 'checkbox' | 'combobox' | 'list' | 'listbox' | 'listitem' | 'menu' | 'menuitem' | 'option' | 'progressbar' | 'radio' | 'radiogroup' | 'tab' | 'tablist' | 'table' | 'textbox' | 'timer' | 'toolbar';
21
22
  state?: {
package/build/dom.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dom.js","sourceRoot":"","sources":["../src/dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { type TextSelectionHandle } from '../text-selection-controller.js';
2
+ /**
3
+ Drive the text selection without subscribing to it.
4
+
5
+ Returns a stable handle of actions plus `getSnapshot()` for at-event-time
6
+ reads. Unlike `useTextSelection()`, the host component never re-renders on
7
+ selection changes — use this for mouse bridges and key handlers so dragging
8
+ repaints only the highlight overlay, not the React tree.
9
+ */
10
+ export default function useTextSelectionActions(): TextSelectionHandle;
@@ -0,0 +1,26 @@
1
+ import { useContext, useMemo } from 'react';
2
+ import { textSelectionContext } from '../components/TextSelectionContext.js';
3
+ /**
4
+ Drive the text selection without subscribing to it.
5
+
6
+ Returns a stable handle of actions plus `getSnapshot()` for at-event-time
7
+ reads. Unlike `useTextSelection()`, the host component never re-renders on
8
+ selection changes — use this for mouse bridges and key handlers so dragging
9
+ repaints only the highlight overlay, not the React tree.
10
+ */
11
+ export default function useTextSelectionActions() {
12
+ const controller = useContext(textSelectionContext);
13
+ if (!controller) {
14
+ throw new Error('useTextSelectionActions must be used within an Ink app');
15
+ }
16
+ return useMemo(() => ({
17
+ start: controller.start,
18
+ update: controller.update,
19
+ finish: controller.finish,
20
+ clear: controller.clear,
21
+ registerViewportProvider: controller.registerViewportProvider,
22
+ setViewportProvider: controller.setViewportProvider,
23
+ getSnapshot: controller.getSnapshot,
24
+ }), [controller]);
25
+ }
26
+ //# sourceMappingURL=use-text-selection-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-text-selection-actions.js","sourceRoot":"","sources":["../../src/hooks/use-text-selection-actions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,OAAO,EAAC,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,uCAAuC,CAAC;AAG3E;;;;;;;EAOE;AACF,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC9C,MAAM,UAAU,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAEpD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC3E,CAAC;IAED,OAAO,OAAO,CACb,GAAG,EAAE,CAAC,CAAC;QACN,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,wBAAwB,EAAE,UAAU,CAAC,wBAAwB;QAC7D,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;QACnD,WAAW,EAAE,UAAU,CAAC,WAAW;KACnC,CAAC,EACF,CAAC,UAAU,CAAC,CACZ,CAAC;AACH,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { type TextSelectionActions, type TextSelectionSnapshot } from '../text-selection-controller.js';
2
+ /**
3
+ Read the current text selection and drive it programmatically.
4
+
5
+ `anchor`/`focus` are content coordinates; `start`/`update` take 0-based screen
6
+ cells on the Ink output grid. Only components calling this hook re-render on
7
+ selection changes.
8
+ */
9
+ export default function useTextSelection(): TextSelectionSnapshot & TextSelectionActions;
@@ -0,0 +1,26 @@
1
+ import { useContext, useMemo, useSyncExternalStore } from 'react';
2
+ import { textSelectionContext } from '../components/TextSelectionContext.js';
3
+ /**
4
+ Read the current text selection and drive it programmatically.
5
+
6
+ `anchor`/`focus` are content coordinates; `start`/`update` take 0-based screen
7
+ cells on the Ink output grid. Only components calling this hook re-render on
8
+ selection changes.
9
+ */
10
+ export default function useTextSelection() {
11
+ const controller = useContext(textSelectionContext);
12
+ if (!controller) {
13
+ throw new Error('useTextSelection must be used within an Ink app');
14
+ }
15
+ const snapshot = useSyncExternalStore(listener => controller.subscribe(listener), () => controller.getSnapshot());
16
+ const actions = useMemo(() => ({
17
+ start: controller.start,
18
+ update: controller.update,
19
+ finish: controller.finish,
20
+ clear: controller.clear,
21
+ registerViewportProvider: controller.registerViewportProvider,
22
+ setViewportProvider: controller.setViewportProvider,
23
+ }), [controller]);
24
+ return { ...snapshot, ...actions };
25
+ }
26
+ //# sourceMappingURL=use-text-selection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-text-selection.js","sourceRoot":"","sources":["../../src/hooks/use-text-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,OAAO,EAAE,oBAAoB,EAAC,MAAM,OAAO,CAAC;AAChE,OAAO,EAAC,oBAAoB,EAAC,MAAM,uCAAuC,CAAC;AAM3E;;;;;;EAME;AACF,MAAM,CAAC,OAAO,UAAU,gBAAgB;IAEvC,MAAM,UAAU,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAEpD,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,QAAQ,GAAG,oBAAoB,CACpC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,EAC1C,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,CAC9B,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO,CACtB,GAAG,EAAE,CAAC,CAAC;QACN,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,KAAK,EAAE,UAAU,CAAC,KAAK;QACvB,wBAAwB,EAAE,UAAU,CAAC,wBAAwB;QAC7D,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;KACnD,CAAC,EACF,CAAC,UAAU,CAAC,CACZ,CAAC;IAEF,OAAO,EAAC,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAC,CAAC;AAClC,CAAC"}
package/build/index.d.ts CHANGED
@@ -39,5 +39,9 @@ export { default as measureElement } from './measure-element.js';
39
39
  export type { InkCacheSizes } from './diagnostics.js';
40
40
  export { getInkCacheSizes } from './diagnostics.js';
41
41
  export type { DOMElement } from './dom.js';
42
+ export type { TextSelectionPoint, TextSelectionSpan, SelectionRow, } from './text-selection.js';
43
+ export type { SelectionViewport, TextSelectionActions, TextSelectionHandle, TextSelectionSnapshot, } from './text-selection-controller.js';
44
+ export { default as useTextSelection } from './hooks/use-text-selection.js';
45
+ export { default as useTextSelectionActions } from './hooks/use-text-selection-actions.js';
42
46
  export { kittyFlags, kittyModifiers } from './kitty-keyboard.js';
43
47
  export type { KittyKeyboardOptions, KittyFlagName } from './kitty-keyboard.js';
package/build/index.js CHANGED
@@ -21,5 +21,7 @@ export { default as useWindowSize } from './hooks/use-window-size.js';
21
21
  export { default as useBoxMetrics } from './hooks/use-box-metrics.js';
22
22
  export { default as measureElement } from './measure-element.js';
23
23
  export { getInkCacheSizes } from './diagnostics.js';
24
+ export { default as useTextSelection } from './hooks/use-text-selection.js';
25
+ export { default as useTextSelectionActions } from './hooks/use-text-selection-actions.js';
24
26
  export { kittyFlags, kittyModifiers } from './kitty-keyboard.js';
25
27
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAC,OAAO,IAAI,GAAG,EAAC,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAC,OAAO,IAAI,IAAI,EAAC,MAAM,sBAAsB,CAAC;AAMrD,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,wBAAwB,EAAC,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EAAC,OAAO,IAAI,GAAG,EAAC,MAAM,qBAAqB,CAAC;AAEnD,OAAO,EAAC,OAAO,IAAI,IAAI,EAAC,MAAM,sBAAsB,CAAC;AAMrD,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,wBAAwB,CAAC;AAEzD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,MAAM,EAAC,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAC,OAAO,IAAI,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAC,OAAO,IAAI,wBAAwB,EAAC,MAAM,yCAAyC,CAAC;AAC5F,OAAO,EAAC,OAAO,IAAI,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAE3D,OAAO,EAAC,OAAO,IAAI,YAAY,EAAC,MAAM,0BAA0B,CAAC;AAEjE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAC,OAAO,IAAI,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAC,OAAO,IAAI,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAC,gBAAgB,EAAC,MAAM,kBAAkB,CAAC;AAalD,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAC,OAAO,IAAI,uBAAuB,EAAC,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC"}
package/build/ink.d.ts CHANGED
@@ -110,6 +110,7 @@ export default class Ink {
110
110
  private kittyProtocolEnabled;
111
111
  private cancelKittyDetection?;
112
112
  private nextRenderCommit?;
113
+ private readonly textSelection;
113
114
  constructor(options: Options);
114
115
  resized: () => void;
115
116
  resolveExitPromise: (result?: unknown) => void;
package/build/ink.js CHANGED
@@ -17,6 +17,7 @@ import { hideCursorEscape, showCursorEscape } from './cursor-helpers.js';
17
17
  import logUpdate from './log-update.js';
18
18
  import { bsu, esu, shouldSynchronize } from './write-synchronized.js';
19
19
  import instances from './instances.js';
20
+ import { TextSelectionController } from './text-selection-controller.js';
20
21
  import App from './components/App.js';
21
22
  import { accessibilityContext as AccessibilityContext } from './components/AccessibilityContext.js';
22
23
  import { resolveFlags, } from './kitty-keyboard.js';
@@ -160,9 +161,16 @@ export default class Ink {
160
161
  kittyProtocolEnabled = false;
161
162
  cancelKittyDetection;
162
163
  nextRenderCommit;
164
+ textSelection;
163
165
  constructor(options) {
164
166
  autoBind(this);
165
167
  this.options = options;
168
+ this.textSelection = new TextSelectionController();
169
+ // Selection changes repaint through the same (throttled) path as React
170
+ // renders; layout is unchanged, so no calculateLayout is needed.
171
+ this.textSelection.onInvalidate = () => {
172
+ this.rootNode.onRender?.();
173
+ };
166
174
  this.rootNode = dom.createNode('ink-root');
167
175
  this.rootNode.onComputeLayout = this.calculateLayout;
168
176
  this.isScreenReaderEnabled =
@@ -312,7 +320,9 @@ export default class Ink {
312
320
  this.nextRenderCommit = undefined;
313
321
  }
314
322
  const startTime = performance.now();
315
- const { output, outputHeight, staticOutput } = render(this.rootNode, this.isScreenReaderEnabled);
323
+ const { output, outputHeight, staticOutput } = render(this.rootNode, this.isScreenReaderEnabled,
324
+ // Screen-reader rendering bypasses Output, so selection is skipped.
325
+ this.isScreenReaderEnabled ? undefined : this.textSelection);
316
326
  this.options.onRender?.({
317
327
  outputHeight,
318
328
  outputLength: output.length,
@@ -390,7 +400,7 @@ export default class Ink {
390
400
  };
391
401
  render(node) {
392
402
  const tree = (React.createElement(AccessibilityContext.Provider, { value: { isScreenReaderEnabled: this.isScreenReaderEnabled } },
393
- React.createElement(App, { stdin: this.options.stdin, stdout: this.options.stdout, stderr: this.options.stderr, exitOnCtrlC: this.options.exitOnCtrlC, interactive: this.interactive, renderThrottleMs: this.renderThrottleMs, writeToStdout: this.writeToStdout, writeToStderr: this.writeToStderr, setCursorPosition: this.setCursorPosition, onExit: this.handleAppExit, onWaitUntilRenderFlush: this.waitUntilRenderFlush }, node)));
403
+ React.createElement(App, { stdin: this.options.stdin, stdout: this.options.stdout, stderr: this.options.stderr, exitOnCtrlC: this.options.exitOnCtrlC, interactive: this.interactive, renderThrottleMs: this.renderThrottleMs, writeToStdout: this.writeToStdout, writeToStderr: this.writeToStderr, setCursorPosition: this.setCursorPosition, textSelection: this.textSelection, onExit: this.handleAppExit, onWaitUntilRenderFlush: this.waitUntilRenderFlush }, node)));
394
404
  if (this.options.concurrent) {
395
405
  // Concurrent mode: use updateContainer (async scheduling)
396
406
  reconciler.updateContainer(tree, this.container, null, noop);
package/build/ink.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ink.js","sourceRoot":"","sources":["../src/ink.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ink.js","sourceRoot":"","sources":["../src/ink.tsx"],"names":[],"mappings":"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"}
package/build/output.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { type StyledChar } from '@alcalzone/ansi-tokenize';
1
2
  import { type OutputTransformer } from './render-node-to-output.js';
2
3
  /**
3
4
  "Virtual" output class
@@ -16,6 +17,10 @@ type Clip = {
16
17
  y1: number | undefined;
17
18
  y2: number | undefined;
18
19
  };
20
+ type GetOptions = {
21
+ capturePlainRows?: boolean;
22
+ paint?: (grid: StyledChar[][], plainRows: string[], maskRows: boolean[][]) => void;
23
+ };
19
24
  export default class Output {
20
25
  width: number;
21
26
  height: number;
@@ -24,12 +29,15 @@ export default class Output {
24
29
  constructor(options: Options);
25
30
  write(x: number, y: number, text: string, options: {
26
31
  transformers: OutputTransformer[];
32
+ selectable?: boolean;
27
33
  }): void;
28
34
  clip(clip: Clip): void;
29
35
  unclip(): void;
30
- get(): {
36
+ get(options?: GetOptions): {
31
37
  output: string;
32
38
  height: number;
39
+ plainRows?: string[];
40
+ maskRows?: boolean[][];
33
41
  };
34
42
  }
35
43
  export {};