@nuvin/ink 6.6.7 → 7.0.0-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/ansi-tokenizer.d.ts +38 -0
- package/build/ansi-tokenizer.js +316 -0
- package/build/ansi-tokenizer.js.map +1 -0
- package/build/components/AnimationContext.d.ts +9 -0
- package/build/components/AnimationContext.js +13 -0
- package/build/components/AnimationContext.js.map +1 -0
- package/build/components/App.d.ts +11 -49
- package/build/components/App.js +412 -227
- package/build/components/App.js.map +1 -1
- package/build/components/AppContext.d.ts +33 -3
- package/build/components/AppContext.js +2 -1
- package/build/components/AppContext.js.map +1 -1
- package/build/components/Box.d.ts +15 -8
- package/build/components/Box.js +12 -10
- package/build/components/Box.js.map +1 -1
- package/build/components/CursorContext.d.ts +11 -0
- package/build/components/CursorContext.js +8 -0
- package/build/components/CursorContext.js.map +1 -0
- package/build/components/ErrorBoundary.d.ts +18 -0
- package/build/components/ErrorBoundary.js +23 -0
- package/build/components/ErrorBoundary.js.map +1 -0
- package/build/components/ErrorOverview.js +6 -6
- package/build/components/ErrorOverview.js.map +1 -1
- package/build/components/Static.js.map +1 -1
- package/build/components/StdinContext.d.ts +7 -1
- package/build/components/StdinContext.js +1 -0
- package/build/components/StdinContext.js.map +1 -1
- package/build/components/Text.d.ts +1 -1
- package/build/components/Text.js +1 -1
- package/build/components/Text.js.map +1 -1
- package/build/components/Transform.d.ts +1 -1
- package/build/cursor-helpers.d.ts +38 -0
- package/build/cursor-helpers.js +56 -0
- package/build/cursor-helpers.js.map +1 -0
- package/build/devtools-window-polyfill.js +7 -4
- package/build/devtools-window-polyfill.js.map +1 -1
- package/build/devtools.js +31 -6
- package/build/devtools.js.map +1 -1
- package/build/dom.d.ts +5 -1
- package/build/dom.js +20 -1
- package/build/dom.js.map +1 -1
- package/build/hooks/use-animation.d.ts +49 -0
- package/build/hooks/use-animation.js +87 -0
- package/build/hooks/use-animation.js.map +1 -0
- package/build/hooks/use-app.d.ts +5 -2
- package/build/hooks/use-app.js +1 -1
- package/build/hooks/use-box-metrics.d.ts +59 -0
- package/build/hooks/use-box-metrics.js +88 -0
- package/build/hooks/use-box-metrics.js.map +1 -0
- package/build/hooks/use-cursor.d.ts +12 -0
- package/build/hooks/use-cursor.js +29 -0
- package/build/hooks/use-cursor.js.map +1 -0
- package/build/hooks/use-focus-manager.d.ts +17 -2
- package/build/hooks/use-focus-manager.js +2 -1
- package/build/hooks/use-focus-manager.js.map +1 -1
- package/build/hooks/use-focus.d.ts +2 -1
- package/build/hooks/use-focus.js +5 -4
- package/build/hooks/use-focus.js.map +1 -1
- package/build/hooks/use-input.d.ts +40 -1
- package/build/hooks/use-input.js +84 -51
- package/build/hooks/use-input.js.map +1 -1
- package/build/hooks/use-is-screen-reader-enabled.d.ts +2 -1
- package/build/hooks/use-is-screen-reader-enabled.js +2 -1
- package/build/hooks/use-is-screen-reader-enabled.js.map +1 -1
- package/build/hooks/use-paste.d.ts +35 -0
- package/build/hooks/use-paste.js +62 -0
- package/build/hooks/use-paste.js.map +1 -0
- package/build/hooks/use-stderr.d.ts +1 -1
- package/build/hooks/use-stderr.js +1 -1
- package/build/hooks/use-stdin.d.ts +4 -2
- package/build/hooks/use-stdin.js +2 -1
- package/build/hooks/use-stdin.js.map +1 -1
- package/build/hooks/use-stdout.d.ts +1 -1
- package/build/hooks/use-stdout.js +1 -1
- package/build/hooks/use-window-size.d.ts +18 -0
- package/build/hooks/use-window-size.js +22 -0
- package/build/hooks/use-window-size.js.map +1 -0
- package/build/index.d.ts +14 -1
- package/build/index.js +7 -0
- package/build/index.js.map +1 -1
- package/build/ink.d.ts +86 -5
- package/build/ink.js +581 -80
- package/build/ink.js.map +1 -1
- package/build/input-parser.d.ts +10 -0
- package/build/input-parser.js +194 -0
- package/build/input-parser.js.map +1 -0
- package/build/kitty-keyboard.d.ts +23 -0
- package/build/kitty-keyboard.js +32 -0
- package/build/kitty-keyboard.js.map +1 -0
- package/build/log-update.d.ts +7 -1
- package/build/log-update.js +181 -56
- package/build/log-update.js.map +1 -1
- package/build/measure-element.d.ts +4 -0
- package/build/measure-element.js +4 -0
- package/build/measure-element.js.map +1 -1
- package/build/measure-text.js +3 -11
- package/build/measure-text.js.map +1 -1
- package/build/output.d.ts +2 -1
- package/build/output.js +62 -58
- package/build/output.js.map +1 -1
- package/build/parse-keypress.d.ts +9 -3
- package/build/parse-keypress.js +283 -13
- package/build/parse-keypress.js.map +1 -1
- package/build/reconciler.js +57 -37
- package/build/reconciler.js.map +1 -1
- package/build/render-background.js +2 -0
- package/build/render-background.js.map +1 -1
- package/build/render-border.d.ts +1 -1
- package/build/render-border.js +35 -24
- package/build/render-border.js.map +1 -1
- package/build/render-node-to-output.d.ts +1 -1
- package/build/render-node-to-output.js +35 -18
- package/build/render-node-to-output.js.map +1 -1
- package/build/render-to-string.d.ts +38 -0
- package/build/render-to-string.js +116 -0
- package/build/render-to-string.js.map +1 -0
- package/build/render.d.ts +91 -3
- package/build/render.js +17 -5
- package/build/render.js.map +1 -1
- package/build/sanitize-ansi.d.ts +2 -0
- package/build/sanitize-ansi.js +27 -0
- package/build/sanitize-ansi.js.map +1 -0
- package/build/squash-text-nodes.js +2 -1
- package/build/squash-text-nodes.js.map +1 -1
- package/build/styles.d.ts +75 -37
- package/build/styles.js +87 -44
- package/build/styles.js.map +1 -1
- package/build/utils.d.ts +9 -2
- package/build/utils.js +18 -3
- package/build/utils.js.map +1 -1
- package/build/wrap-text.js +7 -14
- package/build/wrap-text.js.map +1 -1
- package/build/write-synchronized.d.ts +4 -0
- package/build/write-synchronized.js +9 -0
- package/build/write-synchronized.js.map +1 -0
- package/package.json +45 -105
- package/readme.md +850 -64
- package/build/components/FixedLayout.d.ts +0 -12
- package/build/components/FixedLayout.js +0 -19
- package/build/components/FixedLayout.js.map +0 -1
- package/build/components/VirtualizedList.d.ts +0 -21
- package/build/components/VirtualizedList.js +0 -55
- package/build/components/VirtualizedList.js.map +0 -1
- package/build/hooks/use-mouse.d.ts +0 -15
- package/build/hooks/use-mouse.js +0 -121
- package/build/hooks/use-mouse.js.map +0 -1
- package/build/hooks/use-virtualization.d.ts +0 -19
- package/build/hooks/use-virtualization.js +0 -56
- package/build/hooks/use-virtualization.js.map +0 -1
package/build/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,WAAW,MAAM,cAAc,CAAC;AACvC,OAAO,EAEN,qBAAqB,EACrB,mBAAmB,EACnB,QAAQ,GACR,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,20 @@
|
|
|
1
|
-
import { Buffer } from 'node:buffer';
|
|
2
1
|
export declare const nonAlphanumericKeys: string[];
|
|
3
2
|
type ParsedKey = {
|
|
4
3
|
name: string;
|
|
5
4
|
ctrl: boolean;
|
|
6
5
|
meta: boolean;
|
|
7
6
|
shift: boolean;
|
|
8
|
-
option: boolean;
|
|
9
7
|
sequence: string;
|
|
10
8
|
raw: string | undefined;
|
|
11
9
|
code?: string;
|
|
10
|
+
super?: boolean;
|
|
11
|
+
hyper?: boolean;
|
|
12
|
+
capsLock?: boolean;
|
|
13
|
+
numLock?: boolean;
|
|
14
|
+
eventType?: 'press' | 'repeat' | 'release';
|
|
15
|
+
isKittyProtocol?: boolean;
|
|
16
|
+
text?: string;
|
|
17
|
+
isPrintable?: boolean;
|
|
12
18
|
};
|
|
13
|
-
declare const parseKeypress: (s?:
|
|
19
|
+
declare const parseKeypress: (s?: Uint8Array | string) => ParsedKey;
|
|
14
20
|
export default parseKeypress;
|
package/build/parse-keypress.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// Copied from https://github.com/enquirer/enquirer/blob/36785f3399a41cd61e9d28d1eb9c2fcd73d69b4c/lib/keypress.js
|
|
2
|
-
import {
|
|
2
|
+
import { kittyModifiers } from './kitty-keyboard.js';
|
|
3
|
+
const textDecoder = new TextDecoder();
|
|
3
4
|
const metaKeyCodeRe = /^(?:\x1b)([a-zA-Z0-9])$/;
|
|
4
5
|
const fnKeyRe = /^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/;
|
|
5
6
|
const keyName = {
|
|
@@ -8,6 +9,11 @@ const keyName = {
|
|
|
8
9
|
OQ: 'f2',
|
|
9
10
|
OR: 'f3',
|
|
10
11
|
OS: 'f4',
|
|
12
|
+
/* vt220-style ESC [ letter (e.g. Ctrl+F1 sends ESC [ 1 ; 5 P) */
|
|
13
|
+
'[P': 'f1',
|
|
14
|
+
'[Q': 'f2',
|
|
15
|
+
'[R': 'f3',
|
|
16
|
+
'[S': 'f4',
|
|
11
17
|
/* xterm/rxvt ESC [ number ~ */
|
|
12
18
|
'[11~': 'f1',
|
|
13
19
|
'[12~': 'f2',
|
|
@@ -115,15 +121,257 @@ const isCtrlKey = (code) => {
|
|
|
115
121
|
'[8^',
|
|
116
122
|
].includes(code);
|
|
117
123
|
};
|
|
124
|
+
// Kitty keyboard protocol: CSI codepoint ; modifiers [: eventType] [; text-as-codepoints] u
|
|
125
|
+
const kittyKeyRe = /^\x1b\[(\d+)(?:;(\d+)(?::(\d+))?(?:;([\d:]+))?)?u$/;
|
|
126
|
+
// Kitty-enhanced special keys: CSI number ; modifiers : eventType {letter|~}
|
|
127
|
+
// These are legacy CSI sequences enhanced with the :eventType field.
|
|
128
|
+
// Examples: \x1b[1;1:1A (up arrow press), \x1b[3;1:3~ (delete release)
|
|
129
|
+
const kittySpecialKeyRe = /^\x1b\[(\d+);(\d+):(\d+)([A-Za-z~])$/;
|
|
130
|
+
// Letter-terminated special key names (CSI 1 ; mods letter)
|
|
131
|
+
const kittySpecialLetterKeys = {
|
|
132
|
+
A: 'up',
|
|
133
|
+
B: 'down',
|
|
134
|
+
C: 'right',
|
|
135
|
+
D: 'left',
|
|
136
|
+
E: 'clear',
|
|
137
|
+
F: 'end',
|
|
138
|
+
H: 'home',
|
|
139
|
+
P: 'f1',
|
|
140
|
+
Q: 'f2',
|
|
141
|
+
R: 'f3',
|
|
142
|
+
S: 'f4',
|
|
143
|
+
};
|
|
144
|
+
// Number-terminated special key names (CSI number ; mods ~)
|
|
145
|
+
const kittySpecialNumberKeys = {
|
|
146
|
+
2: 'insert',
|
|
147
|
+
3: 'delete',
|
|
148
|
+
5: 'pageup',
|
|
149
|
+
6: 'pagedown',
|
|
150
|
+
7: 'home',
|
|
151
|
+
8: 'end',
|
|
152
|
+
11: 'f1',
|
|
153
|
+
12: 'f2',
|
|
154
|
+
13: 'f3',
|
|
155
|
+
14: 'f4',
|
|
156
|
+
15: 'f5',
|
|
157
|
+
17: 'f6',
|
|
158
|
+
18: 'f7',
|
|
159
|
+
19: 'f8',
|
|
160
|
+
20: 'f9',
|
|
161
|
+
21: 'f10',
|
|
162
|
+
23: 'f11',
|
|
163
|
+
24: 'f12',
|
|
164
|
+
};
|
|
165
|
+
// Map of special codepoints to key names in kitty protocol
|
|
166
|
+
const kittyCodepointNames = {
|
|
167
|
+
27: 'escape',
|
|
168
|
+
// 13 (return) and 32 (space) are handled before this lookup
|
|
169
|
+
// in parseKittyKeypress so they can be marked as printable.
|
|
170
|
+
9: 'tab',
|
|
171
|
+
127: 'backspace',
|
|
172
|
+
8: 'backspace',
|
|
173
|
+
57358: 'capslock',
|
|
174
|
+
57359: 'scrolllock',
|
|
175
|
+
57360: 'numlock',
|
|
176
|
+
57361: 'printscreen',
|
|
177
|
+
57362: 'pause',
|
|
178
|
+
57363: 'menu',
|
|
179
|
+
57376: 'f13',
|
|
180
|
+
57377: 'f14',
|
|
181
|
+
57378: 'f15',
|
|
182
|
+
57379: 'f16',
|
|
183
|
+
57380: 'f17',
|
|
184
|
+
57381: 'f18',
|
|
185
|
+
57382: 'f19',
|
|
186
|
+
57383: 'f20',
|
|
187
|
+
57384: 'f21',
|
|
188
|
+
57385: 'f22',
|
|
189
|
+
57386: 'f23',
|
|
190
|
+
57387: 'f24',
|
|
191
|
+
57388: 'f25',
|
|
192
|
+
57389: 'f26',
|
|
193
|
+
57390: 'f27',
|
|
194
|
+
57391: 'f28',
|
|
195
|
+
57392: 'f29',
|
|
196
|
+
57393: 'f30',
|
|
197
|
+
57394: 'f31',
|
|
198
|
+
57395: 'f32',
|
|
199
|
+
57396: 'f33',
|
|
200
|
+
57397: 'f34',
|
|
201
|
+
57398: 'f35',
|
|
202
|
+
57399: 'kp0',
|
|
203
|
+
57400: 'kp1',
|
|
204
|
+
57401: 'kp2',
|
|
205
|
+
57402: 'kp3',
|
|
206
|
+
57403: 'kp4',
|
|
207
|
+
57404: 'kp5',
|
|
208
|
+
57405: 'kp6',
|
|
209
|
+
57406: 'kp7',
|
|
210
|
+
57407: 'kp8',
|
|
211
|
+
57408: 'kp9',
|
|
212
|
+
57409: 'kpdecimal',
|
|
213
|
+
57410: 'kpdivide',
|
|
214
|
+
57411: 'kpmultiply',
|
|
215
|
+
57412: 'kpsubtract',
|
|
216
|
+
57413: 'kpadd',
|
|
217
|
+
57414: 'kpenter',
|
|
218
|
+
57415: 'kpequal',
|
|
219
|
+
57416: 'kpseparator',
|
|
220
|
+
57417: 'kpleft',
|
|
221
|
+
57418: 'kpright',
|
|
222
|
+
57419: 'kpup',
|
|
223
|
+
57420: 'kpdown',
|
|
224
|
+
57421: 'kppageup',
|
|
225
|
+
57422: 'kppagedown',
|
|
226
|
+
57423: 'kphome',
|
|
227
|
+
57424: 'kpend',
|
|
228
|
+
57425: 'kpinsert',
|
|
229
|
+
57426: 'kpdelete',
|
|
230
|
+
57427: 'kpbegin',
|
|
231
|
+
57428: 'mediaplay',
|
|
232
|
+
57429: 'mediapause',
|
|
233
|
+
57430: 'mediaplaypause',
|
|
234
|
+
57431: 'mediareverse',
|
|
235
|
+
57432: 'mediastop',
|
|
236
|
+
57433: 'mediafastforward',
|
|
237
|
+
57434: 'mediarewind',
|
|
238
|
+
57435: 'mediatracknext',
|
|
239
|
+
57436: 'mediatrackprevious',
|
|
240
|
+
57437: 'mediarecord',
|
|
241
|
+
57438: 'lowervolume',
|
|
242
|
+
57439: 'raisevolume',
|
|
243
|
+
57440: 'mutevolume',
|
|
244
|
+
57441: 'leftshift',
|
|
245
|
+
57442: 'leftcontrol',
|
|
246
|
+
57443: 'leftalt',
|
|
247
|
+
57444: 'leftsuper',
|
|
248
|
+
57445: 'lefthyper',
|
|
249
|
+
57446: 'leftmeta',
|
|
250
|
+
57447: 'rightshift',
|
|
251
|
+
57448: 'rightcontrol',
|
|
252
|
+
57449: 'rightalt',
|
|
253
|
+
57450: 'rightsuper',
|
|
254
|
+
57451: 'righthyper',
|
|
255
|
+
57452: 'rightmeta',
|
|
256
|
+
57453: 'isoLevel3Shift',
|
|
257
|
+
57454: 'isoLevel5Shift',
|
|
258
|
+
};
|
|
259
|
+
// Valid Unicode codepoint range, excluding surrogates
|
|
260
|
+
const isValidCodepoint = (cp) => cp >= 0 && cp <= 0x10_ffff && !(cp >= 0xd8_00 && cp <= 0xdf_ff);
|
|
261
|
+
const safeFromCodePoint = (cp) => isValidCodepoint(cp) ? String.fromCodePoint(cp) : '?';
|
|
262
|
+
function resolveEventType(value) {
|
|
263
|
+
if (value === 3)
|
|
264
|
+
return 'release';
|
|
265
|
+
if (value === 2)
|
|
266
|
+
return 'repeat';
|
|
267
|
+
return 'press';
|
|
268
|
+
}
|
|
269
|
+
function parseKittyModifiers(modifiers) {
|
|
270
|
+
return {
|
|
271
|
+
ctrl: !!(modifiers & kittyModifiers.ctrl),
|
|
272
|
+
shift: !!(modifiers & kittyModifiers.shift),
|
|
273
|
+
meta: !!(modifiers & (kittyModifiers.meta | kittyModifiers.alt)),
|
|
274
|
+
super: !!(modifiers & kittyModifiers.super),
|
|
275
|
+
hyper: !!(modifiers & kittyModifiers.hyper),
|
|
276
|
+
capsLock: !!(modifiers & kittyModifiers.capsLock),
|
|
277
|
+
numLock: !!(modifiers & kittyModifiers.numLock),
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
const parseKittyKeypress = (s) => {
|
|
281
|
+
const match = kittyKeyRe.exec(s);
|
|
282
|
+
if (!match)
|
|
283
|
+
return null;
|
|
284
|
+
const codepoint = parseInt(match[1], 10);
|
|
285
|
+
const modifiers = match[2] ? Math.max(0, parseInt(match[2], 10) - 1) : 0;
|
|
286
|
+
const eventType = match[3] ? parseInt(match[3], 10) : 1;
|
|
287
|
+
const textField = match[4];
|
|
288
|
+
// Bail on invalid primary codepoint
|
|
289
|
+
if (!isValidCodepoint(codepoint)) {
|
|
290
|
+
return null;
|
|
291
|
+
}
|
|
292
|
+
// Parse text-as-codepoints field (colon-separated Unicode codepoints)
|
|
293
|
+
let text;
|
|
294
|
+
if (textField) {
|
|
295
|
+
text = textField
|
|
296
|
+
.split(':')
|
|
297
|
+
.map(cp => safeFromCodePoint(parseInt(cp, 10)))
|
|
298
|
+
.join('');
|
|
299
|
+
}
|
|
300
|
+
// Determine key name from codepoint
|
|
301
|
+
let name;
|
|
302
|
+
let isPrintable;
|
|
303
|
+
if (codepoint === 32) {
|
|
304
|
+
name = 'space';
|
|
305
|
+
isPrintable = true;
|
|
306
|
+
}
|
|
307
|
+
else if (codepoint === 13) {
|
|
308
|
+
name = 'return';
|
|
309
|
+
isPrintable = true;
|
|
310
|
+
}
|
|
311
|
+
else if (kittyCodepointNames[codepoint]) {
|
|
312
|
+
name = kittyCodepointNames[codepoint];
|
|
313
|
+
isPrintable = false;
|
|
314
|
+
}
|
|
315
|
+
else if (codepoint >= 1 && codepoint <= 26) {
|
|
316
|
+
// Ctrl+letter comes as codepoint 1-26
|
|
317
|
+
name = String.fromCodePoint(codepoint + 96); // 'a' is 97
|
|
318
|
+
isPrintable = false;
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
name = safeFromCodePoint(codepoint).toLowerCase();
|
|
322
|
+
isPrintable = true;
|
|
323
|
+
}
|
|
324
|
+
// Default text to the character from the codepoint when not explicitly
|
|
325
|
+
// provided by the protocol, so keys like space and return produce their
|
|
326
|
+
// expected text input (' ' and '\r' respectively).
|
|
327
|
+
if (isPrintable && !text) {
|
|
328
|
+
text = safeFromCodePoint(codepoint);
|
|
329
|
+
}
|
|
330
|
+
return {
|
|
331
|
+
name,
|
|
332
|
+
...parseKittyModifiers(modifiers),
|
|
333
|
+
eventType: resolveEventType(eventType),
|
|
334
|
+
sequence: s,
|
|
335
|
+
raw: s,
|
|
336
|
+
isKittyProtocol: true,
|
|
337
|
+
isPrintable,
|
|
338
|
+
text,
|
|
339
|
+
};
|
|
340
|
+
};
|
|
341
|
+
// Parse kitty-enhanced special key sequences (arrow keys, function keys, etc.)
|
|
342
|
+
// These use the legacy CSI format but with an added :eventType field.
|
|
343
|
+
const parseKittySpecialKey = (s) => {
|
|
344
|
+
const match = kittySpecialKeyRe.exec(s);
|
|
345
|
+
if (!match)
|
|
346
|
+
return null;
|
|
347
|
+
const number = parseInt(match[1], 10);
|
|
348
|
+
const modifiers = Math.max(0, parseInt(match[2], 10) - 1);
|
|
349
|
+
const eventType = parseInt(match[3], 10);
|
|
350
|
+
const terminator = match[4];
|
|
351
|
+
const name = terminator === '~'
|
|
352
|
+
? kittySpecialNumberKeys[number]
|
|
353
|
+
: kittySpecialLetterKeys[terminator];
|
|
354
|
+
if (!name)
|
|
355
|
+
return null;
|
|
356
|
+
return {
|
|
357
|
+
name,
|
|
358
|
+
...parseKittyModifiers(modifiers),
|
|
359
|
+
eventType: resolveEventType(eventType),
|
|
360
|
+
sequence: s,
|
|
361
|
+
raw: s,
|
|
362
|
+
isKittyProtocol: true,
|
|
363
|
+
isPrintable: false,
|
|
364
|
+
};
|
|
365
|
+
};
|
|
118
366
|
const parseKeypress = (s = '') => {
|
|
119
367
|
let parts;
|
|
120
|
-
if (
|
|
368
|
+
if (s instanceof Uint8Array) {
|
|
121
369
|
if (s[0] > 127 && s[1] === undefined) {
|
|
122
370
|
s[0] -= 128;
|
|
123
|
-
s = '\x1b' +
|
|
371
|
+
s = '\x1b' + textDecoder.decode(s);
|
|
124
372
|
}
|
|
125
373
|
else {
|
|
126
|
-
s =
|
|
374
|
+
s = textDecoder.decode(s);
|
|
127
375
|
}
|
|
128
376
|
}
|
|
129
377
|
else if (s !== undefined && typeof s !== 'string') {
|
|
@@ -132,20 +380,42 @@ const parseKeypress = (s = '') => {
|
|
|
132
380
|
else if (!s) {
|
|
133
381
|
s = '';
|
|
134
382
|
}
|
|
383
|
+
// Try kitty keyboard protocol parsers first
|
|
384
|
+
const kittyResult = parseKittyKeypress(s);
|
|
385
|
+
if (kittyResult)
|
|
386
|
+
return kittyResult;
|
|
387
|
+
const kittySpecialResult = parseKittySpecialKey(s);
|
|
388
|
+
if (kittySpecialResult)
|
|
389
|
+
return kittySpecialResult;
|
|
390
|
+
// If the input matched the kitty CSI-u pattern but was rejected (e.g.,
|
|
391
|
+
// invalid codepoint), return a safe empty keypress instead of falling
|
|
392
|
+
// through to legacy parsing which can produce unsafe states (undefined name)
|
|
393
|
+
if (kittyKeyRe.test(s)) {
|
|
394
|
+
return {
|
|
395
|
+
name: '',
|
|
396
|
+
ctrl: false,
|
|
397
|
+
meta: false,
|
|
398
|
+
shift: false,
|
|
399
|
+
sequence: s,
|
|
400
|
+
raw: s,
|
|
401
|
+
isKittyProtocol: true,
|
|
402
|
+
isPrintable: false,
|
|
403
|
+
};
|
|
404
|
+
}
|
|
135
405
|
const key = {
|
|
136
406
|
name: '',
|
|
137
407
|
ctrl: false,
|
|
138
408
|
meta: false,
|
|
139
409
|
shift: false,
|
|
140
|
-
option: false,
|
|
141
410
|
sequence: s,
|
|
142
411
|
raw: s,
|
|
143
412
|
};
|
|
144
413
|
key.sequence = key.sequence || s || key.name;
|
|
145
|
-
if (s === '\r') {
|
|
146
|
-
// carriage return
|
|
414
|
+
if (s === '\r' || s === '\x1b\r') {
|
|
415
|
+
// carriage return (or meta+return on macOS)
|
|
147
416
|
key.raw = undefined;
|
|
148
417
|
key.name = 'return';
|
|
418
|
+
key.meta = s.length === 2;
|
|
149
419
|
}
|
|
150
420
|
else if (s === '\n') {
|
|
151
421
|
// enter, should have been called linefeed
|
|
@@ -161,9 +431,8 @@ const parseKeypress = (s = '') => {
|
|
|
161
431
|
key.meta = s.charAt(0) === '\x1b';
|
|
162
432
|
}
|
|
163
433
|
else if (s === '\x7f' || s === '\x1b\x7f') {
|
|
164
|
-
//
|
|
165
|
-
|
|
166
|
-
key.name = 'delete';
|
|
434
|
+
// backspace
|
|
435
|
+
key.name = 'backspace';
|
|
167
436
|
key.meta = s.charAt(0) === '\x1b';
|
|
168
437
|
}
|
|
169
438
|
else if (s === '\x1b' || s === '\x1b\x1b') {
|
|
@@ -195,13 +464,14 @@ const parseKeypress = (s = '') => {
|
|
|
195
464
|
}
|
|
196
465
|
else if ((parts = metaKeyCodeRe.exec(s))) {
|
|
197
466
|
// meta+character key
|
|
467
|
+
key.name = parts[1].toLowerCase();
|
|
198
468
|
key.meta = true;
|
|
199
469
|
key.shift = /^[A-Z]$/.test(parts[1]);
|
|
200
470
|
}
|
|
201
471
|
else if ((parts = fnKeyRe.exec(s))) {
|
|
202
472
|
const segs = [...s];
|
|
203
473
|
if (segs[0] === '\u001b' && segs[1] === '\u001b') {
|
|
204
|
-
key.
|
|
474
|
+
key.meta = true;
|
|
205
475
|
}
|
|
206
476
|
// ansi escape sequence
|
|
207
477
|
// reassemble the key code leaving out leading \x1b's,
|
|
@@ -212,10 +482,10 @@ const parseKeypress = (s = '') => {
|
|
|
212
482
|
const modifier = (parts[3] || parts[5] || 1) - 1;
|
|
213
483
|
// Parse the key modifier
|
|
214
484
|
key.ctrl = !!(modifier & 4);
|
|
215
|
-
key.meta = !!(modifier & 10);
|
|
485
|
+
key.meta = key.meta || !!(modifier & 10);
|
|
216
486
|
key.shift = !!(modifier & 1);
|
|
217
487
|
key.code = code;
|
|
218
|
-
key.name = keyName[code];
|
|
488
|
+
key.name = keyName[code] ?? '';
|
|
219
489
|
key.shift = isShiftKey(code) || key.shift;
|
|
220
490
|
key.ctrl = isCtrlKey(code) || key.ctrl;
|
|
221
491
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-keypress.js","sourceRoot":"","sources":["../src/parse-keypress.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parse-keypress.js","sourceRoot":"","sources":["../src/parse-keypress.ts"],"names":[],"mappings":"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"}
|
package/build/reconciler.js
CHANGED
|
@@ -1,32 +1,26 @@
|
|
|
1
|
+
import process from 'node:process';
|
|
1
2
|
import createReconciler from 'react-reconciler';
|
|
2
3
|
import { DefaultEventPriority, NoEventPriority, } from 'react-reconciler/constants.js';
|
|
4
|
+
import * as Scheduler from 'scheduler';
|
|
3
5
|
import Yoga from 'yoga-layout';
|
|
4
|
-
import { createContext } from 'react';
|
|
5
|
-
import { createTextNode, appendChildNode, insertBeforeNode, removeChildNode, setStyle, setTextNodeValue, createNode, setAttribute, } from './dom.js';
|
|
6
|
+
import { createContext, version as reactVersion } from 'react';
|
|
7
|
+
import { createTextNode, appendChildNode, insertBeforeNode, removeChildNode, emitLayoutListeners, setStyle, setTextNodeValue, createNode, setAttribute, } from './dom.js';
|
|
6
8
|
import applyStyles from './styles.js';
|
|
7
|
-
import { isDev } from './utils.js';
|
|
8
9
|
// We need to conditionally perform devtools connection to avoid
|
|
9
10
|
// accidentally breaking other third-party code.
|
|
10
11
|
// See https://github.com/vadimdemedes/ink/issues/384
|
|
11
|
-
|
|
12
|
+
// See https://github.com/vadimdemedes/ink/issues/648
|
|
13
|
+
if (process.env['DEV'] === 'true') {
|
|
14
|
+
// Intentionally no warning when the package is missing.
|
|
15
|
+
// DEV may be set for other reasons; devtools is opt-in via installing the package.
|
|
16
|
+
let isDevtoolsInstalled = false;
|
|
12
17
|
try {
|
|
13
|
-
|
|
18
|
+
import.meta.resolve('react-devtools-core');
|
|
19
|
+
isDevtoolsInstalled = true;
|
|
14
20
|
}
|
|
15
|
-
catch
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
The environment variable DEV is set to true, so Ink tried to import \`react-devtools-core\`,
|
|
19
|
-
but this failed as it was not installed. Debugging with React Devtools requires it.
|
|
20
|
-
|
|
21
|
-
To install use this command:
|
|
22
|
-
|
|
23
|
-
$ npm install --save-dev react-devtools-core
|
|
24
|
-
`.trim() + '\n');
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
// eslint-disable-next-line @typescript-eslint/only-throw-error
|
|
28
|
-
throw error;
|
|
29
|
-
}
|
|
21
|
+
catch { }
|
|
22
|
+
if (isDevtoolsInstalled) {
|
|
23
|
+
await import('./devtools.js');
|
|
30
24
|
}
|
|
31
25
|
}
|
|
32
26
|
const diff = (before, after) => {
|
|
@@ -64,11 +58,30 @@ let currentRootNode;
|
|
|
64
58
|
async function loadPackageJson() {
|
|
65
59
|
const fs = await import('node:fs');
|
|
66
60
|
const content = fs.readFileSync(new URL('../package.json', import.meta.url), 'utf8');
|
|
67
|
-
|
|
61
|
+
const parsedContent = JSON.parse(content);
|
|
62
|
+
return {
|
|
63
|
+
name: parsedContent?.name,
|
|
64
|
+
version: parsedContent?.version,
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
let packageInfo = {
|
|
68
|
+
name: 'ink',
|
|
69
|
+
version: reactVersion,
|
|
70
|
+
};
|
|
71
|
+
if (process.env['DEV'] === 'true') {
|
|
72
|
+
try {
|
|
73
|
+
const loaded = await loadPackageJson();
|
|
74
|
+
packageInfo = {
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
76
|
+
name: loaded.name || packageInfo.name,
|
|
77
|
+
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
|
78
|
+
version: loaded.version || packageInfo.version,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
console.warn('Failed to load package.json in development mode. Falling back to default renderer metadata.', error);
|
|
83
|
+
}
|
|
68
84
|
}
|
|
69
|
-
const packageJson = isDev()
|
|
70
|
-
? await loadPackageJson()
|
|
71
|
-
: { name: undefined, version: undefined };
|
|
72
85
|
export default createReconciler({
|
|
73
86
|
getRootHostContext: () => ({
|
|
74
87
|
isInsideText: false,
|
|
@@ -80,6 +93,7 @@ export default createReconciler({
|
|
|
80
93
|
if (typeof rootNode.onComputeLayout === 'function') {
|
|
81
94
|
rootNode.onComputeLayout();
|
|
82
95
|
}
|
|
96
|
+
emitLayoutListeners(rootNode);
|
|
83
97
|
// Since renders are throttled at the instance level and <Static> component children
|
|
84
98
|
// are rendered only once and then get deleted, we need an escape hatch to
|
|
85
99
|
// trigger an immediate render to ensure <Static> children are written to output before they get erased
|
|
@@ -135,10 +149,6 @@ export default createReconciler({
|
|
|
135
149
|
rootNode.staticNode = node;
|
|
136
150
|
continue;
|
|
137
151
|
}
|
|
138
|
-
if (key === 'internal_scrollVersion') {
|
|
139
|
-
node.internal_scrollVersion = value;
|
|
140
|
-
continue;
|
|
141
|
-
}
|
|
142
152
|
setAttribute(node, key, value);
|
|
143
153
|
}
|
|
144
154
|
return node;
|
|
@@ -173,6 +183,14 @@ export default createReconciler({
|
|
|
173
183
|
supportsMutation: true,
|
|
174
184
|
supportsPersistence: false,
|
|
175
185
|
supportsHydration: false,
|
|
186
|
+
// Scheduler integration for concurrent mode
|
|
187
|
+
supportsMicrotasks: true,
|
|
188
|
+
scheduleMicrotask: queueMicrotask,
|
|
189
|
+
// @ts-expect-error @types/react-reconciler is outdated and doesn't include scheduleCallback
|
|
190
|
+
scheduleCallback: Scheduler.unstable_scheduleCallback,
|
|
191
|
+
cancelCallback: Scheduler.unstable_cancelCallback,
|
|
192
|
+
shouldYield: Scheduler.unstable_shouldYield,
|
|
193
|
+
now: Scheduler.unstable_now,
|
|
176
194
|
scheduleTimeout: setTimeout,
|
|
177
195
|
cancelTimeout: clearTimeout,
|
|
178
196
|
noTimeout: -1,
|
|
@@ -187,6 +205,9 @@ export default createReconciler({
|
|
|
187
205
|
removeChildFromContainer(node, removeNode) {
|
|
188
206
|
removeChildNode(node, removeNode);
|
|
189
207
|
cleanupYogaNode(removeNode.yogaNode);
|
|
208
|
+
if (removeNode.internal_static && currentRootNode) {
|
|
209
|
+
currentRootNode.staticNode = undefined;
|
|
210
|
+
}
|
|
190
211
|
},
|
|
191
212
|
commitUpdate(node, _type, oldProps, newProps) {
|
|
192
213
|
if (currentRootNode && node.internal_static) {
|
|
@@ -211,15 +232,11 @@ export default createReconciler({
|
|
|
211
232
|
node.internal_static = true;
|
|
212
233
|
continue;
|
|
213
234
|
}
|
|
214
|
-
if (key === 'internal_scrollVersion') {
|
|
215
|
-
node.internal_scrollVersion = value;
|
|
216
|
-
continue;
|
|
217
|
-
}
|
|
218
235
|
setAttribute(node, key, value);
|
|
219
236
|
}
|
|
220
237
|
}
|
|
221
238
|
if (style && node.yogaNode) {
|
|
222
|
-
applyStyles(node.yogaNode, style);
|
|
239
|
+
applyStyles(node.yogaNode, style, newProps['style'] ?? {});
|
|
223
240
|
}
|
|
224
241
|
},
|
|
225
242
|
commitTextUpdate(node, _oldText, newText) {
|
|
@@ -228,6 +245,9 @@ export default createReconciler({
|
|
|
228
245
|
removeChild(node, removeNode) {
|
|
229
246
|
removeChildNode(node, removeNode);
|
|
230
247
|
cleanupYogaNode(removeNode.yogaNode);
|
|
248
|
+
if (removeNode.internal_static && currentRootNode) {
|
|
249
|
+
currentRootNode.staticNode = undefined;
|
|
250
|
+
}
|
|
231
251
|
},
|
|
232
252
|
setCurrentUpdatePriority(newPriority) {
|
|
233
253
|
currentUpdatePriority = newPriority;
|
|
@@ -240,7 +260,8 @@ export default createReconciler({
|
|
|
240
260
|
return DefaultEventPriority;
|
|
241
261
|
},
|
|
242
262
|
maySuspendCommit() {
|
|
243
|
-
|
|
263
|
+
// Return true to enable Suspense resource preloading
|
|
264
|
+
return true;
|
|
244
265
|
},
|
|
245
266
|
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
246
267
|
NotPendingTransition: undefined,
|
|
@@ -266,8 +287,7 @@ export default createReconciler({
|
|
|
266
287
|
waitForCommitToBeReady() {
|
|
267
288
|
return null;
|
|
268
289
|
},
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
rendererVersion: packageJson.version,
|
|
290
|
+
rendererPackageName: packageInfo.name,
|
|
291
|
+
rendererVersion: packageInfo.version,
|
|
272
292
|
});
|
|
273
293
|
//# sourceMappingURL=reconciler.js.map
|