@nuvin/ink 7.7.2-alpha → 7.7.3-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.
- package/build/text-selection-controller.d.ts +6 -4
- package/build/text-selection-controller.js +61 -17
- package/build/text-selection-controller.js.map +1 -1
- package/build/text-selection.d.ts +4 -1
- package/build/text-selection.js +4 -2
- package/build/text-selection.js.map +1 -1
- package/package.json +1 -1
|
@@ -52,6 +52,7 @@ Selection actions plus an imperative snapshot read. Unlike the snapshot from
|
|
|
52
52
|
`useTextSelection()`, holding this handle does NOT subscribe the component to
|
|
53
53
|
selection changes — use it where selection state is only needed at event time
|
|
54
54
|
(mouse bridges, key handlers) so drags never re-render the host component.
|
|
55
|
+
Calling `getSnapshot()` resolves text across the full selection on that read.
|
|
55
56
|
*/
|
|
56
57
|
export type TextSelectionHandle = TextSelectionActions & {
|
|
57
58
|
getSnapshot: () => TextSelectionSnapshot;
|
|
@@ -68,6 +69,7 @@ export declare class TextSelectionController {
|
|
|
68
69
|
private focus;
|
|
69
70
|
private isDragging;
|
|
70
71
|
private text;
|
|
72
|
+
private textDirty;
|
|
71
73
|
private readonly rowCache;
|
|
72
74
|
private readonly viewportProviders;
|
|
73
75
|
private legacyProviderUnregister;
|
|
@@ -95,10 +97,10 @@ export declare class TextSelectionController {
|
|
|
95
97
|
— it runs during a render pass and must not schedule another render.
|
|
96
98
|
|
|
97
99
|
While dragging, cache entries update freely (auto-scroll depends on it).
|
|
98
|
-
After `finish()`,
|
|
99
|
-
|
|
100
|
-
selected range no longer matches its frozen entry
|
|
101
|
-
underneath the selection), the selection auto-clears.
|
|
100
|
+
After `finish()`, existing entries are frozen and never overwritten; rows
|
|
101
|
+
that were not captured during the gesture may still fill their gaps. If a
|
|
102
|
+
visible row inside the selected range no longer matches its frozen entry
|
|
103
|
+
(content reflowed underneath the selection), the selection auto-clears.
|
|
102
104
|
*/
|
|
103
105
|
captureRows: (plainRows: readonly string[], maskRows?: ReadonlyArray<readonly boolean[]>) => void;
|
|
104
106
|
/**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
The public selection API uses null (matching React ref idioms and the
|
|
3
3
|
mouse bridge in ink-input); keep it consistent throughout this file. */
|
|
4
4
|
import stringWidth from 'string-width';
|
|
5
|
-
import { extractTextFromRows, getSelectionSpans, } from './text-selection.js';
|
|
5
|
+
import { extractTextFromRows, getSelectionSpans, sliceSelectableCells, } from './text-selection.js';
|
|
6
6
|
const fullGridViewport = {
|
|
7
7
|
top: 0,
|
|
8
8
|
left: 0,
|
|
@@ -22,6 +22,7 @@ export class TextSelectionController {
|
|
|
22
22
|
focus = null;
|
|
23
23
|
isDragging = false;
|
|
24
24
|
text = '';
|
|
25
|
+
textDirty = false;
|
|
25
26
|
rowCache = new Map();
|
|
26
27
|
// Stack of registered providers; the last entry is active. Stacking lets
|
|
27
28
|
// an overlay (tool detail modal) take over selection while mounted and
|
|
@@ -43,6 +44,9 @@ export class TextSelectionController {
|
|
|
43
44
|
};
|
|
44
45
|
};
|
|
45
46
|
getSnapshot = () => {
|
|
47
|
+
if (this.textDirty && this.recomputeText()) {
|
|
48
|
+
this.snapshot = undefined;
|
|
49
|
+
}
|
|
46
50
|
this.snapshot ??= {
|
|
47
51
|
anchor: this.anchor,
|
|
48
52
|
focus: this.focus,
|
|
@@ -84,7 +88,7 @@ export class TextSelectionController {
|
|
|
84
88
|
this.anchor = point;
|
|
85
89
|
this.focus = point;
|
|
86
90
|
this.isDragging = true;
|
|
87
|
-
this.
|
|
91
|
+
this.textDirty = true;
|
|
88
92
|
this.emit();
|
|
89
93
|
this.onInvalidate?.();
|
|
90
94
|
};
|
|
@@ -95,8 +99,8 @@ export class TextSelectionController {
|
|
|
95
99
|
const point = this.toContentPoint(screenPoint);
|
|
96
100
|
const focusChanged = this.focus?.x !== point.x || this.focus.y !== point.y;
|
|
97
101
|
this.focus = point;
|
|
98
|
-
|
|
99
|
-
|
|
102
|
+
if (focusChanged) {
|
|
103
|
+
this.textDirty = true;
|
|
100
104
|
this.emit();
|
|
101
105
|
this.onInvalidate?.();
|
|
102
106
|
}
|
|
@@ -114,6 +118,7 @@ export class TextSelectionController {
|
|
|
114
118
|
this.focus = null;
|
|
115
119
|
this.isDragging = false;
|
|
116
120
|
this.text = '';
|
|
121
|
+
this.textDirty = false;
|
|
117
122
|
this.rowCache.clear();
|
|
118
123
|
if (hadSelection) {
|
|
119
124
|
this.emit();
|
|
@@ -126,10 +131,10 @@ export class TextSelectionController {
|
|
|
126
131
|
— it runs during a render pass and must not schedule another render.
|
|
127
132
|
|
|
128
133
|
While dragging, cache entries update freely (auto-scroll depends on it).
|
|
129
|
-
After `finish()`,
|
|
130
|
-
|
|
131
|
-
selected range no longer matches its frozen entry
|
|
132
|
-
underneath the selection), the selection auto-clears.
|
|
134
|
+
After `finish()`, existing entries are frozen and never overwritten; rows
|
|
135
|
+
that were not captured during the gesture may still fill their gaps. If a
|
|
136
|
+
visible row inside the selected range no longer matches its frozen entry
|
|
137
|
+
(content reflowed underneath the selection), the selection auto-clears.
|
|
133
138
|
*/
|
|
134
139
|
captureRows = (plainRows, maskRows) => {
|
|
135
140
|
const resolved = this.resolveViewport();
|
|
@@ -153,12 +158,15 @@ export class TextSelectionController {
|
|
|
153
158
|
this.rowCache.clear();
|
|
154
159
|
}
|
|
155
160
|
let mismatch = false;
|
|
161
|
+
let selectedRowsChanged = false;
|
|
156
162
|
const range = hasSelection
|
|
157
163
|
? (() => {
|
|
158
164
|
const [a, b] = [this.anchor, this.focus];
|
|
159
165
|
return a.y <= b.y ? { min: a.y, max: b.y } : { min: b.y, max: a.y };
|
|
160
166
|
})()
|
|
161
167
|
: undefined;
|
|
168
|
+
const selectionHasExtent = hasSelection &&
|
|
169
|
+
(this.anchor.x !== this.focus.x || this.anchor.y !== this.focus.y);
|
|
162
170
|
for (let y = top; y < bottom; y++) {
|
|
163
171
|
const contentY = viewport.scrollY + (y - viewport.top);
|
|
164
172
|
const text = sliceRow(plainRows[y] ?? '', left, viewport.width);
|
|
@@ -178,6 +186,16 @@ export class TextSelectionController {
|
|
|
178
186
|
continue;
|
|
179
187
|
}
|
|
180
188
|
this.rowCache.set(contentY, row);
|
|
189
|
+
if (selectionHasExtent &&
|
|
190
|
+
range &&
|
|
191
|
+
contentY >= range.min &&
|
|
192
|
+
contentY <= range.max &&
|
|
193
|
+
selectedRowTextChanged(this.anchor, this.focus, contentY, {
|
|
194
|
+
previous: existing,
|
|
195
|
+
next: row,
|
|
196
|
+
})) {
|
|
197
|
+
selectedRowsChanged = true;
|
|
198
|
+
}
|
|
181
199
|
}
|
|
182
200
|
if (mismatch) {
|
|
183
201
|
// Content reflowed underneath a finished selection: clearing is the
|
|
@@ -186,18 +204,14 @@ export class TextSelectionController {
|
|
|
186
204
|
this.focus = null;
|
|
187
205
|
this.isDragging = false;
|
|
188
206
|
this.text = '';
|
|
207
|
+
this.textDirty = false;
|
|
189
208
|
this.rowCache.clear();
|
|
190
209
|
this.snapshot = undefined;
|
|
191
210
|
this.scheduleNotify(true);
|
|
192
211
|
return;
|
|
193
212
|
}
|
|
194
|
-
if (
|
|
195
|
-
this.
|
|
196
|
-
}
|
|
197
|
-
else if (hasSelection &&
|
|
198
|
-
frozen &&
|
|
199
|
-
this.text.length === 0 && // Rows may have arrived only after the gesture ended.
|
|
200
|
-
this.recomputeText()) {
|
|
213
|
+
if (selectedRowsChanged) {
|
|
214
|
+
this.textDirty = true;
|
|
201
215
|
this.scheduleNotify(false);
|
|
202
216
|
}
|
|
203
217
|
};
|
|
@@ -211,11 +225,13 @@ export class TextSelectionController {
|
|
|
211
225
|
return [];
|
|
212
226
|
}
|
|
213
227
|
const { viewport } = this.resolveViewport();
|
|
214
|
-
const spans = getSelectionSpans(this.anchor, this.focus, y => this.rowCache.get(y));
|
|
215
228
|
const left = Math.max(0, viewport.left);
|
|
216
229
|
const right = Math.min(outputWidth, viewport.left + viewport.width);
|
|
217
230
|
const screenTop = Math.max(0, viewport.top);
|
|
218
231
|
const screenBottom = Math.min(outputHeight, viewport.top + viewport.height);
|
|
232
|
+
const contentStartY = viewport.scrollY + (screenTop - viewport.top);
|
|
233
|
+
const contentEndY = viewport.scrollY + (screenBottom - viewport.top);
|
|
234
|
+
const spans = getSelectionSpans(this.anchor, this.focus, y => this.rowCache.get(y), { startY: contentStartY, endY: contentEndY });
|
|
219
235
|
const result = [];
|
|
220
236
|
for (const span of spans) {
|
|
221
237
|
const screenY = viewport.top + (span.y - viewport.scrollY);
|
|
@@ -270,6 +286,7 @@ export class TextSelectionController {
|
|
|
270
286
|
const next = this.anchor && this.focus
|
|
271
287
|
? extractTextFromRows(this.anchor, this.focus, y => this.rowCache.get(y))
|
|
272
288
|
: '';
|
|
289
|
+
this.textDirty = false;
|
|
273
290
|
if (next === this.text) {
|
|
274
291
|
return false;
|
|
275
292
|
}
|
|
@@ -283,7 +300,6 @@ export class TextSelectionController {
|
|
|
283
300
|
}
|
|
284
301
|
}
|
|
285
302
|
scheduleNotify(invalidate) {
|
|
286
|
-
this.snapshot = undefined;
|
|
287
303
|
if (this.notifyScheduled) {
|
|
288
304
|
return;
|
|
289
305
|
}
|
|
@@ -337,4 +353,32 @@ const sliceMask = (mask, left, width) => {
|
|
|
337
353
|
? mask.slice(left)
|
|
338
354
|
: mask.slice(left, left + width);
|
|
339
355
|
};
|
|
356
|
+
const rowsEqual = (first, second) => {
|
|
357
|
+
if (first?.text !== second.text) {
|
|
358
|
+
return false;
|
|
359
|
+
}
|
|
360
|
+
const firstMask = first.mask;
|
|
361
|
+
const secondMask = second.mask;
|
|
362
|
+
if (firstMask === secondMask) {
|
|
363
|
+
return true;
|
|
364
|
+
}
|
|
365
|
+
if (firstMask?.length !== secondMask?.length) {
|
|
366
|
+
return false;
|
|
367
|
+
}
|
|
368
|
+
return (firstMask?.every((value, index) => value === secondMask?.[index]) ?? false);
|
|
369
|
+
};
|
|
370
|
+
const selectedRowTextChanged = (anchor, focus, y, rows) => {
|
|
371
|
+
if (rowsEqual(rows.previous, rows.next)) {
|
|
372
|
+
return false;
|
|
373
|
+
}
|
|
374
|
+
const selectedText = (row) => {
|
|
375
|
+
const resolvedRow = row ?? { text: '' };
|
|
376
|
+
const span = getSelectionSpans(anchor, focus, () => resolvedRow, {
|
|
377
|
+
startY: y,
|
|
378
|
+
endY: y + 1,
|
|
379
|
+
})[0];
|
|
380
|
+
return span ? sliceSelectableCells(resolvedRow, span.x1, span.x2) : '';
|
|
381
|
+
};
|
|
382
|
+
return selectedText(rows.previous) !== selectedText(rows.next);
|
|
383
|
+
};
|
|
340
384
|
//# sourceMappingURL=text-selection-controller.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-selection-controller.js","sourceRoot":"","sources":["../src/text-selection-controller.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"text-selection-controller.js","sourceRoot":"","sources":["../src/text-selection-controller.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,10 @@ One past the last printable selectable cell of the row. Trailing whitespace
|
|
|
30
30
|
and trailing chrome cells are excluded.
|
|
31
31
|
*/
|
|
32
32
|
export declare function getRowEnd(row: SelectionRow): number;
|
|
33
|
-
export declare function getSelectionSpans(anchor: TextSelectionPoint, focus: TextSelectionPoint, getRow: RowLookup
|
|
33
|
+
export declare function getSelectionSpans(anchor: TextSelectionPoint, focus: TextSelectionPoint, getRow: RowLookup, rowBounds?: {
|
|
34
|
+
startY: number;
|
|
35
|
+
endY: number;
|
|
36
|
+
}): TextSelectionSpan[];
|
|
34
37
|
/**
|
|
35
38
|
Extract the selectable text of `row` between display cells `[from, to)`.
|
|
36
39
|
Non-selectable runs at the edges are dropped; interior non-selectable runs
|
package/build/text-selection.js
CHANGED
|
@@ -38,13 +38,15 @@ export function getRowEnd(row) {
|
|
|
38
38
|
}
|
|
39
39
|
return end;
|
|
40
40
|
}
|
|
41
|
-
export function getSelectionSpans(anchor, focus, getRow) {
|
|
41
|
+
export function getSelectionSpans(anchor, focus, getRow, rowBounds) {
|
|
42
42
|
const { start, end } = normalizeSelection(anchor, focus);
|
|
43
43
|
if (start.x === end.x && start.y === end.y) {
|
|
44
44
|
return [];
|
|
45
45
|
}
|
|
46
46
|
const spans = [];
|
|
47
|
-
|
|
47
|
+
const firstY = rowBounds ? Math.max(start.y, rowBounds.startY) : start.y;
|
|
48
|
+
const lastY = rowBounds ? Math.min(end.y, rowBounds.endY - 1) : end.y;
|
|
49
|
+
for (let y = firstY; y <= lastY; y++) {
|
|
48
50
|
const rowEnd = getRowEnd(getRow(y) ?? { text: '' });
|
|
49
51
|
let x1 = y === start.y ? start.x : 0;
|
|
50
52
|
let x2 = y === end.y ? end.x : rowEnd;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"text-selection.js","sourceRoot":"","sources":["../src/text-selection.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,cAAc,CAAC;AAmBvC,MAAM,UAAU,kBAAkB,CACjC,MAA0B,EAC1B,KAAyB;IAEzB,IAAI,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAC,CAAC;IACpC,CAAC;IAED,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAC,CAAC;AACpC,CAAC;AAED,MAAM,gBAAgB,GAAG,CACxB,IAAoC,EACpC,SAAiB,EACjB,OAAe,EACL,EAAE;IACZ,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACb,CAAC;IAED,KAAK,IAAI,IAAI,GAAG,SAAS,EAAE,IAAI,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QACnD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAEF;;;EAGE;AACF,MAAM,UAAU,SAAS,CAAC,GAAiB;IAC1C,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,GAAG,CAAC;IACzB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,OAAO,GAAG,IAAI,GAAG,KAAK,CAAC;QAC7B,IAAI,GAAG,OAAO,CAAC;QAEf,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,SAAS;QACV,CAAC;QAED,IAAI,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAChD,GAAG,GAAG,OAAO,CAAC;QACf,CAAC;IACF,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAChC,MAA0B,EAC1B,KAAyB,EACzB,MAAiB;
|
|
1
|
+
{"version":3,"file":"text-selection.js","sourceRoot":"","sources":["../src/text-selection.ts"],"names":[],"mappings":"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"}
|