@effect-tui/react 0.16.0 → 2.0.1

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 (126) hide show
  1. package/README.md +9 -0
  2. package/dist/src/codeblock.d.ts +1 -1
  3. package/dist/src/codeblock.d.ts.map +1 -1
  4. package/dist/src/codeblock.js +2 -2
  5. package/dist/src/codeblock.js.map +1 -1
  6. package/dist/src/components/Markdown.js +3 -3
  7. package/dist/src/components/Markdown.js.map +1 -1
  8. package/dist/src/components/MultilineTextInput.d.ts.map +1 -1
  9. package/dist/src/components/MultilineTextInput.js +133 -305
  10. package/dist/src/components/MultilineTextInput.js.map +1 -1
  11. package/dist/src/components/TextInput.d.ts.map +1 -1
  12. package/dist/src/components/TextInput.js +51 -98
  13. package/dist/src/components/TextInput.js.map +1 -1
  14. package/dist/src/components/text-editing.d.ts +61 -0
  15. package/dist/src/components/text-editing.d.ts.map +1 -1
  16. package/dist/src/components/text-editing.js +131 -0
  17. package/dist/src/components/text-editing.js.map +1 -1
  18. package/dist/src/hosts/base.d.ts +13 -2
  19. package/dist/src/hosts/base.d.ts.map +1 -1
  20. package/dist/src/hosts/base.js +74 -2
  21. package/dist/src/hosts/base.js.map +1 -1
  22. package/dist/src/hosts/box.d.ts +2 -2
  23. package/dist/src/hosts/box.d.ts.map +1 -1
  24. package/dist/src/hosts/box.js +29 -2
  25. package/dist/src/hosts/box.js.map +1 -1
  26. package/dist/src/hosts/canvas.d.ts +22 -2
  27. package/dist/src/hosts/canvas.d.ts.map +1 -1
  28. package/dist/src/hosts/canvas.js +99 -31
  29. package/dist/src/hosts/canvas.js.map +1 -1
  30. package/dist/src/hosts/codeblock.d.ts +8 -10
  31. package/dist/src/hosts/codeblock.d.ts.map +1 -1
  32. package/dist/src/hosts/codeblock.js +36 -33
  33. package/dist/src/hosts/codeblock.js.map +1 -1
  34. package/dist/src/hosts/flex-container.d.ts +2 -2
  35. package/dist/src/hosts/flex-container.d.ts.map +1 -1
  36. package/dist/src/hosts/flex-container.js +17 -2
  37. package/dist/src/hosts/flex-container.js.map +1 -1
  38. package/dist/src/hosts/index.d.ts +1 -1
  39. package/dist/src/hosts/index.d.ts.map +1 -1
  40. package/dist/src/hosts/index.js.map +1 -1
  41. package/dist/src/hosts/overlay-item.d.ts +2 -2
  42. package/dist/src/hosts/overlay-item.d.ts.map +1 -1
  43. package/dist/src/hosts/overlay-item.js +7 -2
  44. package/dist/src/hosts/overlay-item.js.map +1 -1
  45. package/dist/src/hosts/overlay.d.ts +2 -2
  46. package/dist/src/hosts/overlay.d.ts.map +1 -1
  47. package/dist/src/hosts/overlay.js +2 -2
  48. package/dist/src/hosts/overlay.js.map +1 -1
  49. package/dist/src/hosts/scroll.d.ts +7 -2
  50. package/dist/src/hosts/scroll.d.ts.map +1 -1
  51. package/dist/src/hosts/scroll.js +126 -45
  52. package/dist/src/hosts/scroll.js.map +1 -1
  53. package/dist/src/hosts/single-child.d.ts.map +1 -1
  54. package/dist/src/hosts/single-child.js +2 -0
  55. package/dist/src/hosts/single-child.js.map +1 -1
  56. package/dist/src/hosts/spacer.d.ts +1 -1
  57. package/dist/src/hosts/spacer.d.ts.map +1 -1
  58. package/dist/src/hosts/spacer.js +6 -1
  59. package/dist/src/hosts/spacer.js.map +1 -1
  60. package/dist/src/hosts/text.d.ts +20 -15
  61. package/dist/src/hosts/text.d.ts.map +1 -1
  62. package/dist/src/hosts/text.js +104 -71
  63. package/dist/src/hosts/text.js.map +1 -1
  64. package/dist/src/hosts/zstack.d.ts +2 -2
  65. package/dist/src/hosts/zstack.d.ts.map +1 -1
  66. package/dist/src/hosts/zstack.js +7 -2
  67. package/dist/src/hosts/zstack.js.map +1 -1
  68. package/dist/src/index.d.ts +1 -1
  69. package/dist/src/index.d.ts.map +1 -1
  70. package/dist/src/internal/renderer/index.d.ts.map +1 -1
  71. package/dist/src/internal/renderer/index.js +41 -16
  72. package/dist/src/internal/renderer/index.js.map +1 -1
  73. package/dist/src/internal/renderer/types.d.ts +4 -0
  74. package/dist/src/internal/renderer/types.d.ts.map +1 -1
  75. package/dist/src/motion/hooks.d.ts +1 -1
  76. package/dist/src/motion/hooks.js +1 -1
  77. package/dist/src/reconciler/host-config.js +2 -2
  78. package/dist/src/reconciler/host-config.js.map +1 -1
  79. package/dist/src/reconciler/types.d.ts +5 -1
  80. package/dist/src/reconciler/types.d.ts.map +1 -1
  81. package/dist/src/utils/border.d.ts +1 -1
  82. package/dist/src/utils/border.d.ts.map +1 -1
  83. package/dist/src/utils/border.js +2 -0
  84. package/dist/src/utils/border.js.map +1 -1
  85. package/dist/src/utils/index.d.ts +2 -1
  86. package/dist/src/utils/index.d.ts.map +1 -1
  87. package/dist/src/utils/index.js +2 -1
  88. package/dist/src/utils/index.js.map +1 -1
  89. package/dist/src/utils/text-layout.d.ts +22 -0
  90. package/dist/src/utils/text-layout.d.ts.map +1 -0
  91. package/dist/src/utils/text-layout.js +37 -0
  92. package/dist/src/utils/text-layout.js.map +1 -0
  93. package/dist/src/utils/text-wrap.d.ts +26 -1
  94. package/dist/src/utils/text-wrap.d.ts.map +1 -1
  95. package/dist/src/utils/text-wrap.js +106 -11
  96. package/dist/src/utils/text-wrap.js.map +1 -1
  97. package/dist/tsconfig.tsbuildinfo +1 -1
  98. package/package.json +2 -2
  99. package/src/codeblock.tsx +2 -2
  100. package/src/components/Markdown.tsx +3 -3
  101. package/src/components/MultilineTextInput.tsx +138 -344
  102. package/src/components/TextInput.tsx +54 -99
  103. package/src/components/text-editing.ts +180 -0
  104. package/src/hosts/base.ts +86 -3
  105. package/src/hosts/box.ts +37 -2
  106. package/src/hosts/canvas.ts +120 -31
  107. package/src/hosts/codeblock.ts +46 -33
  108. package/src/hosts/flex-container.ts +21 -2
  109. package/src/hosts/index.ts +1 -1
  110. package/src/hosts/overlay-item.ts +8 -2
  111. package/src/hosts/overlay.ts +2 -2
  112. package/src/hosts/scroll.ts +142 -45
  113. package/src/hosts/single-child.ts +2 -0
  114. package/src/hosts/spacer.ts +6 -1
  115. package/src/hosts/text.ts +122 -75
  116. package/src/hosts/zstack.ts +7 -2
  117. package/src/index.ts +1 -1
  118. package/src/internal/renderer/index.ts +53 -20
  119. package/src/internal/renderer/types.ts +4 -0
  120. package/src/motion/hooks.ts +1 -1
  121. package/src/reconciler/host-config.ts +2 -2
  122. package/src/reconciler/types.ts +7 -1
  123. package/src/utils/border.ts +11 -1
  124. package/src/utils/index.ts +15 -1
  125. package/src/utils/text-layout.ts +65 -0
  126. package/src/utils/text-wrap.ts +135 -13
@@ -3,7 +3,7 @@ import { Colors, displayWidth } from "@effect-tui/core";
3
3
  import { useCallback, useEffect, useState } from "react";
4
4
  import { useKeyboard } from "../hooks/use-keyboard.js";
5
5
  import { usePaste } from "../hooks/use-paste.js";
6
- import { deleteCharBackward, deleteCharForward, deleteWordBackward, insertText, killToEnd, killToStart, matchNextWord, matchPrevWord, transposeChars, } from "./text-editing.js";
6
+ import { deleteCharBackward, deleteCharForward, deleteWordBackward, deleteWordForward, insertText, killToEnd, killToStart, matchNextWord, matchPrevWord, resolveTextInputAction, transposeChars, } from "./text-editing.js";
7
7
  /**
8
8
  * A controlled text input component for terminal UIs.
9
9
  *
@@ -39,13 +39,16 @@ export function TextInput({ value, onChange, placeholder = "", width, fg = Color
39
39
  const handleKey = useCallback((key) => {
40
40
  if (!focused)
41
41
  return;
42
+ const action = resolveTextInputAction(key);
43
+ if (!action)
44
+ return;
42
45
  const state = { text: value, cursor: cursorPos, killRing };
43
46
  // Helper to apply an edit result
44
- const applyEdit = (result) => {
47
+ const applyEdit = (result, options) => {
45
48
  if (result.changed) {
46
49
  onChange(result.state.text);
47
50
  setCursorPos(result.state.cursor);
48
- if (result.state.killRing !== killRing) {
51
+ if (!options?.keepKillRing && result.state.killRing !== killRing) {
49
52
  setKillRing(result.state.killRing);
50
53
  }
51
54
  }
@@ -61,113 +64,63 @@ export function TextInput({ value, onChange, placeholder = "", width, fg = Color
61
64
  const match = matchNextWord(afterCursor);
62
65
  setCursorPos(match ? cursorPos + match.length : value.length);
63
66
  };
64
- switch (key.name) {
65
- case "left":
66
- if (key.meta) {
67
- moveToPrevWord();
68
- }
69
- else {
70
- setCursorPos(Math.max(0, cursorPos - 1));
71
- }
67
+ switch (action.type) {
68
+ case "move-left":
69
+ setCursorPos(Math.max(0, cursorPos - 1));
72
70
  break;
73
- case "right":
74
- if (key.meta) {
75
- moveToNextWord();
76
- }
77
- else {
78
- setCursorPos(Math.min(value.length, cursorPos + 1));
79
- }
71
+ case "move-right":
72
+ setCursorPos(Math.min(value.length, cursorPos + 1));
73
+ break;
74
+ case "move-word-left":
75
+ moveToPrevWord();
76
+ break;
77
+ case "move-word-right":
78
+ moveToNextWord();
80
79
  break;
81
- case "home":
80
+ case "move-start":
81
+ case "move-doc-start":
82
82
  setCursorPos(0);
83
83
  break;
84
- case "end":
84
+ case "move-end":
85
+ case "move-doc-end":
85
86
  setCursorPos(value.length);
86
87
  break;
87
- case "backspace":
88
- if (key.meta) {
89
- // Option+Backspace: Delete to previous word boundary
90
- const beforeCursor = value.slice(0, cursorPos);
91
- const match = matchPrevWord(beforeCursor);
92
- if (match) {
93
- const newPos = cursorPos - match.length;
94
- onChange(value.slice(0, newPos) + value.slice(cursorPos));
95
- setCursorPos(newPos);
96
- }
97
- else if (cursorPos > 0) {
98
- onChange(value.slice(cursorPos));
99
- setCursorPos(0);
100
- }
101
- }
102
- else {
103
- applyEdit(deleteCharBackward(state));
104
- }
88
+ case "delete-backward":
89
+ applyEdit(deleteCharBackward(state));
105
90
  break;
106
- case "delete":
107
- if (key.meta) {
108
- // Option+Delete: Delete to next word boundary
109
- const afterCursor = value.slice(cursorPos);
110
- const match = matchNextWord(afterCursor);
111
- if (match) {
112
- onChange(value.slice(0, cursorPos) + value.slice(cursorPos + match.length));
113
- }
114
- else if (cursorPos < value.length) {
115
- onChange(value.slice(0, cursorPos));
116
- }
117
- }
118
- else {
119
- applyEdit(deleteCharForward(state));
120
- }
91
+ case "delete-forward":
92
+ applyEdit(deleteCharForward(state));
93
+ break;
94
+ case "delete-word-backward":
95
+ applyEdit(deleteWordBackward(state), { keepKillRing: action.scope === "line" });
96
+ break;
97
+ case "delete-word-forward":
98
+ applyEdit(deleteWordForward(state), { keepKillRing: action.scope === "line" });
99
+ break;
100
+ case "kill-to-end":
101
+ applyEdit(killToEnd(state));
102
+ break;
103
+ case "kill-to-start":
104
+ applyEdit(killToStart(state));
105
+ break;
106
+ case "transpose":
107
+ applyEdit(transposeChars(state));
108
+ break;
109
+ case "yank":
110
+ applyEdit(insertText(state, killRing));
111
+ break;
112
+ case "insert":
113
+ applyEdit(insertText(state, action.text));
121
114
  break;
122
115
  case "enter":
116
+ case "submit":
123
117
  onSubmit?.(value);
124
118
  break;
125
- case "escape":
119
+ case "cancel":
126
120
  onCancel?.();
127
121
  break;
128
- case "char":
129
- case "space":
130
- if (key.ctrl && key.text) {
131
- // Emacs-style keybindings
132
- switch (key.text) {
133
- case "a":
134
- setCursorPos(0);
135
- break;
136
- case "e":
137
- setCursorPos(value.length);
138
- break;
139
- case "b":
140
- setCursorPos(Math.max(0, cursorPos - 1));
141
- break;
142
- case "f":
143
- setCursorPos(Math.min(value.length, cursorPos + 1));
144
- break;
145
- case "d":
146
- applyEdit(deleteCharForward(state));
147
- break;
148
- case "h":
149
- applyEdit(deleteCharBackward(state));
150
- break;
151
- case "k":
152
- applyEdit(killToEnd(state));
153
- break;
154
- case "u":
155
- applyEdit(killToStart(state));
156
- break;
157
- case "w":
158
- applyEdit(deleteWordBackward(state));
159
- break;
160
- case "t":
161
- applyEdit(transposeChars(state));
162
- break;
163
- case "y":
164
- applyEdit(insertText(state, killRing));
165
- break;
166
- }
167
- }
168
- else if (key.text && !key.meta) {
169
- applyEdit(insertText(state, key.text));
170
- }
122
+ case "move-up":
123
+ case "move-down":
171
124
  break;
172
125
  }
173
126
  }, [value, cursorPos, focused, onChange, onSubmit, onCancel, killRing]);
@@ -193,7 +146,7 @@ export function TextInput({ value, onChange, placeholder = "", width, fg = Color
193
146
  const maxLen = width ?? ctx.width;
194
147
  // Clear the line with background color
195
148
  if (bg !== undefined) {
196
- ctx.fill(0, 0, ctx.width, 1, " ", { bg });
149
+ ctx.fillRect(0, 0, ctx.width, 1, " ", { bg });
197
150
  }
198
151
  // Calculate scroll offset to keep cursor visible
199
152
  let effectiveScrollOffset = scrollOffset;
@@ -1 +1 @@
1
- {"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../../../src/components/TextInput.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextInput.js","sourceRoot":"","sources":["../../../src/components/TextInput.tsx"],"names":[],"mappings":"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"}
@@ -19,14 +19,73 @@ export interface MultilineState {
19
19
  };
20
20
  killRing: string;
21
21
  }
22
+ export interface TextKeyEvent {
23
+ name: string;
24
+ text?: string;
25
+ ctrl?: boolean;
26
+ meta?: boolean;
27
+ shift?: boolean;
28
+ }
29
+ export type WordScope = "line" | "document";
30
+ export type TextInputAction = {
31
+ type: "move-left";
32
+ } | {
33
+ type: "move-right";
34
+ } | {
35
+ type: "move-up";
36
+ } | {
37
+ type: "move-down";
38
+ } | {
39
+ type: "move-start";
40
+ } | {
41
+ type: "move-end";
42
+ } | {
43
+ type: "move-doc-start";
44
+ } | {
45
+ type: "move-doc-end";
46
+ } | {
47
+ type: "move-word-left";
48
+ } | {
49
+ type: "move-word-right";
50
+ } | {
51
+ type: "delete-backward";
52
+ } | {
53
+ type: "delete-forward";
54
+ } | {
55
+ type: "delete-word-backward";
56
+ scope: WordScope;
57
+ } | {
58
+ type: "delete-word-forward";
59
+ scope: WordScope;
60
+ } | {
61
+ type: "kill-to-end";
62
+ } | {
63
+ type: "kill-to-start";
64
+ } | {
65
+ type: "transpose";
66
+ } | {
67
+ type: "yank";
68
+ } | {
69
+ type: "insert";
70
+ text: string;
71
+ } | {
72
+ type: "enter";
73
+ } | {
74
+ type: "submit";
75
+ } | {
76
+ type: "cancel";
77
+ };
22
78
  /** Result of an edit operation */
23
79
  export interface EditResult<T> {
24
80
  state: T;
25
81
  changed: boolean;
26
82
  }
27
83
  export { matchNextWord, matchPrevWord };
84
+ export declare function resolveTextInputAction(key: TextKeyEvent): TextInputAction | null;
28
85
  /** Delete word backward */
29
86
  export declare function deleteWordBackward(state: TextState): EditResult<TextState>;
87
+ /** Delete word forward */
88
+ export declare function deleteWordForward(state: TextState): EditResult<TextState>;
30
89
  /** Kill to end of line */
31
90
  export declare function killToEnd(state: TextState): EditResult<TextState>;
32
91
  /** Kill to start of line */
@@ -45,6 +104,8 @@ export declare function graphemeColToCharIdx(line: string, col: number): number;
45
104
  export declare function charIdxToGraphemeCol(line: string, charIdx: number): number;
46
105
  /** Delete word backward in multiline (crosses line boundaries) */
47
106
  export declare function deleteWordBackwardMultiline(state: MultilineState): EditResult<MultilineState>;
107
+ /** Delete word forward in multiline (line-scoped) */
108
+ export declare function deleteWordForwardMultiline(state: MultilineState): EditResult<MultilineState>;
48
109
  /** Kill to end of line in multiline */
49
110
  export declare function killToEndMultiline(state: MultilineState): EditResult<MultilineState>;
50
111
  /** Kill to start of line in multiline */
@@ -1 +1 @@
1
- {"version":3,"file":"text-editing.d.ts","sourceRoot":"","sources":["../../../src/components/text-editing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAM1E,6BAA6B;AAC7B,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,4BAA4B;AAC5B,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,kCAAkC;AAClC,MAAM,WAAW,UAAU,CAAC,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAA;IACR,OAAO,EAAE,OAAO,CAAA;CAChB;AAMD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAA;AAMvC,2BAA2B;AAC3B,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAoB1E;AAED,0BAA0B;AAC1B,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAYjE;AAED,4BAA4B;AAC5B,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAYnE;AAED,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAWzE;AAED,qCAAqC;AACrC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAW1E;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAsBtE;AAED,mCAAmC;AACnC,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAWpF;AAMD,2DAA2D;AAC3D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGtE;AAED,iDAAiD;AACjD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,kEAAkE;AAClE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAoE7F;AAED,uCAAuC;AACvC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CA0BpF;AAED,yCAAyC;AACzC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAsBtF;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAgCzF;AAED,sEAAsE;AACtE,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CA4B5F;AAED,yFAAyF;AACzF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAqC7F;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,CA8CvG"}
1
+ {"version":3,"file":"text-editing.d.ts","sourceRoot":"","sources":["../../../src/components/text-editing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAM1E,6BAA6B;AAC7B,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,4BAA4B;AAC5B,MAAM,WAAW,cAAc;IAC9B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IACpC,QAAQ,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;CACf;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,CAAA;AAE3C,MAAM,MAAM,eAAe,GACxB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GACpB;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,cAAc,CAAA;CAAE,GACxB;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,iBAAiB,CAAA;CAAE,GAC3B;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,GAC1B;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,KAAK,EAAE,SAAS,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACvB;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAChC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GACjB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAClB;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAA;AAErB,kCAAkC;AAClC,MAAM,WAAW,UAAU,CAAC,CAAC;IAC5B,KAAK,EAAE,CAAC,CAAA;IACR,OAAO,EAAE,OAAO,CAAA;CAChB;AAMD,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,CAAA;AAMvC,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,YAAY,GAAG,eAAe,GAAG,IAAI,CAmEhF;AAMD,2BAA2B;AAC3B,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAoB1E;AAED,0BAA0B;AAC1B,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CA0BzE;AAED,0BAA0B;AAC1B,wBAAgB,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAYjE;AAED,4BAA4B;AAC5B,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAYnE;AAED,iCAAiC;AACjC,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAWzE;AAED,qCAAqC;AACrC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAW1E;AAED,yCAAyC;AACzC,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAsBtE;AAED,mCAAmC;AACnC,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAWpF;AAMD,2DAA2D;AAC3D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGtE;AAED,iDAAiD;AACjD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,kEAAkE;AAClE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAoE7F;AAED,qDAAqD;AACrD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAyC5F;AAED,uCAAuC;AACvC,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CA0BpF;AAED,yCAAyC;AACzC,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAsBtF;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAgCzF;AAED,sEAAsE;AACtE,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CA4B5F;AAED,yFAAyF;AACzF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,CAqC7F;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,cAAc,CAAC,CA8CvG"}
@@ -10,6 +10,75 @@ import { matchNextWord, matchPrevWord } from "../utils/word-boundaries.js";
10
10
  // ============================================================================
11
11
  export { matchNextWord, matchPrevWord };
12
12
  // ============================================================================
13
+ // Keybinding resolution (shared by TextInput and MultilineTextInput)
14
+ // ============================================================================
15
+ export function resolveTextInputAction(key) {
16
+ switch (key.name) {
17
+ case "left":
18
+ return key.meta ? { type: "move-word-left" } : { type: "move-left" };
19
+ case "right":
20
+ return key.meta ? { type: "move-word-right" } : { type: "move-right" };
21
+ case "up":
22
+ return key.meta ? { type: "move-doc-start" } : { type: "move-up" };
23
+ case "down":
24
+ return key.meta ? { type: "move-doc-end" } : { type: "move-down" };
25
+ case "home":
26
+ return { type: "move-start" };
27
+ case "end":
28
+ return { type: "move-end" };
29
+ case "backspace":
30
+ return key.meta
31
+ ? { type: "delete-word-backward", scope: "line" }
32
+ : { type: "delete-backward" };
33
+ case "delete":
34
+ return key.meta
35
+ ? { type: "delete-word-forward", scope: "line" }
36
+ : { type: "delete-forward" };
37
+ case "enter":
38
+ return key.ctrl || key.meta ? { type: "submit" } : { type: "enter" };
39
+ case "escape":
40
+ return { type: "cancel" };
41
+ case "char":
42
+ case "space": {
43
+ if (key.ctrl && key.text) {
44
+ switch (key.text) {
45
+ case "a":
46
+ return { type: "move-start" };
47
+ case "e":
48
+ return { type: "move-end" };
49
+ case "b":
50
+ return { type: "move-left" };
51
+ case "f":
52
+ return { type: "move-right" };
53
+ case "n":
54
+ return { type: "move-down" };
55
+ case "p":
56
+ return { type: "move-up" };
57
+ case "d":
58
+ return { type: "delete-forward" };
59
+ case "h":
60
+ return { type: "delete-backward" };
61
+ case "k":
62
+ return { type: "kill-to-end" };
63
+ case "u":
64
+ return { type: "kill-to-start" };
65
+ case "w":
66
+ return { type: "delete-word-backward", scope: "document" };
67
+ case "t":
68
+ return { type: "transpose" };
69
+ case "y":
70
+ return { type: "yank" };
71
+ }
72
+ }
73
+ if (key.text && !key.meta) {
74
+ return { type: "insert", text: key.text };
75
+ }
76
+ break;
77
+ }
78
+ }
79
+ return null;
80
+ }
81
+ // ============================================================================
13
82
  // Single-line operations (for TextInput)
14
83
  // ============================================================================
15
84
  /** Delete word backward */
@@ -30,6 +99,30 @@ export function deleteWordBackward(state) {
30
99
  changed: true,
31
100
  };
32
101
  }
102
+ /** Delete word forward */
103
+ export function deleteWordForward(state) {
104
+ const { text, cursor } = state;
105
+ if (cursor >= text.length) {
106
+ return { state, changed: false };
107
+ }
108
+ const afterCursor = text.slice(cursor);
109
+ const match = matchNextWord(afterCursor);
110
+ if (match) {
111
+ const newText = text.slice(0, cursor) + text.slice(cursor + match.length);
112
+ return {
113
+ state: { text: newText, cursor, killRing: match },
114
+ changed: true,
115
+ };
116
+ }
117
+ const killed = text.slice(cursor);
118
+ if (!killed) {
119
+ return { state, changed: false };
120
+ }
121
+ return {
122
+ state: { text: text.slice(0, cursor), cursor, killRing: killed },
123
+ changed: true,
124
+ };
125
+ }
33
126
  /** Kill to end of line */
34
127
  export function killToEnd(state) {
35
128
  const { text, cursor } = state;
@@ -188,6 +281,44 @@ export function deleteWordBackwardMultiline(state) {
188
281
  }
189
282
  return { state, changed: false };
190
283
  }
284
+ /** Delete word forward in multiline (line-scoped) */
285
+ export function deleteWordForwardMultiline(state) {
286
+ const { lines, cursor } = state;
287
+ const line = lines[cursor.row];
288
+ const lineLen = graphemes(line).length;
289
+ if (cursor.col < lineLen) {
290
+ const charIdx = graphemeColToCharIdx(line, cursor.col);
291
+ const afterCursor = line.slice(charIdx);
292
+ const match = matchNextWord(afterCursor);
293
+ const newLines = [...lines];
294
+ if (match) {
295
+ const newLine = line.slice(0, charIdx) + line.slice(charIdx + match.length);
296
+ newLines[cursor.row] = newLine;
297
+ return {
298
+ state: {
299
+ lines: newLines,
300
+ cursor,
301
+ killRing: match,
302
+ },
303
+ changed: true,
304
+ };
305
+ }
306
+ const killed = line.slice(charIdx);
307
+ if (!killed) {
308
+ return { state, changed: false };
309
+ }
310
+ newLines[cursor.row] = line.slice(0, charIdx);
311
+ return {
312
+ state: {
313
+ lines: newLines,
314
+ cursor,
315
+ killRing: killed,
316
+ },
317
+ changed: true,
318
+ };
319
+ }
320
+ return { state, changed: false };
321
+ }
191
322
  /** Kill to end of line in multiline */
192
323
  export function killToEndMultiline(state) {
193
324
  const { lines, cursor } = state;
@@ -1 +1 @@
1
- {"version":3,"file":"text-editing.js","sourceRoot":"","sources":["../../../src/components/text-editing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-editing.js","sourceRoot":"","sources":["../../../src/components/text-editing.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,12 @@ export declare abstract class BaseHost implements HostInstance {
14
14
  parent: HostInstance | null;
15
15
  children: HostInstance[];
16
16
  rect: Rect | null;
17
+ private _layoutDirty;
18
+ private _renderDirty;
19
+ private _lastMeasureW;
20
+ private _lastMeasureH;
21
+ private _lastMeasuredSize;
22
+ private _lastLayoutRect;
17
23
  greedy: boolean | number | undefined;
18
24
  frameWidth?: number;
19
25
  frameHeight?: number;
@@ -39,7 +45,10 @@ export declare abstract class BaseHost implements HostInstance {
39
45
  */
40
46
  prepareFrame(): void;
41
47
  /** Override in subclasses to precompute caches once per frame. */
42
- protected prepareSelf(): void;
48
+ protected prepareSelf(_layoutDirty: boolean, _renderDirty: boolean): void;
49
+ protected ensurePrepared(): void;
50
+ invalidateLayout(): void;
51
+ invalidateRender(): void;
43
52
  /**
44
53
  * Resolve a prop that may be a MotionValue/ColorMotionValue.
45
54
  * If it's a spring, subscribes to changes and returns current value.
@@ -57,9 +66,11 @@ export declare abstract class BaseHost implements HostInstance {
57
66
  * Called automatically in destroy().
58
67
  */
59
68
  protected clearSpringSubscriptions(): void;
60
- abstract measure(maxW: number, maxH: number): Size;
69
+ measure(maxW: number, maxH: number): Size;
70
+ protected abstract measureSelf(maxW: number, maxH: number): Size;
61
71
  abstract render(buffer: CellBuffer, palette: Palette): void;
62
72
  layout(rect: Rect): void;
73
+ protected layoutSelf(rect: Rect): void;
63
74
  /**
64
75
  * Apply frame constraints and update this.rect.
65
76
  * Returns the constrained rect for convenience in subclasses.
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAElE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAmChG,4DAA4D;AAC5D,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC/C,EAAE,CAAC,EAAE,KAAK,CAAA;CACV;AAOD,8DAA8D;AAC9D,wBAAgB,cAAc,CAAC,WAAW,EAAE,YAAY,GAAG,IAAI,GAAG,KAAK,GAAG,SAAS,CASlF;AAID,8BAAsB,QAAS,YAAW,YAAY;IACrD,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,YAAY,GAAG,IAAI,CAAO;IAClC,QAAQ,EAAE,YAAY,EAAE,CAAK;IAC7B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAO;IAMxB,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAY;IAMhD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,OAAO,CAAA;IAKlB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAClF,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,YAAY,CAAK;IAEzB,SAAS,CAAC,GAAG,EAAE,WAAW,CAAA;IAO1B,OAAO,CAAC,oBAAoB,CAAC,CAAoD;gBAErE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW;IAS/D;;OAEG;IACH,YAAY,IAAI,IAAI;IAOpB,kEAAkE;IAClE,SAAS,CAAC,WAAW,IAAI,IAAI;IAI7B;;;;;;;;;;OAUG;IACH,SAAS,CAAC,iBAAiB,CAAC,CAAC,EAC5B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,gBAAgB,EAC5C,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,GAC3B,CAAC,GAAG,SAAS;IAiDhB;;;OAGG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAQ1C,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAClD,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAE3D,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAIxB;;;OAGG;IACH,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IA0BjD;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAiBjF;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAgB3C,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IA+BjD;;;OAGG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAMpF,OAAO,IAAI,IAAI;IAMf,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAKtC,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAQtC,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAc7D;;;OAGG;IACH,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;CAS9F"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/hosts/base.ts"],"names":[],"mappings":"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"}