@suds-cli/textinput 0.0.0 → 0.0.1-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -17
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/messages.d.ts +1 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +4 -4
- package/dist/messages.js.map +1 -1
- package/dist/model.d.ts +4 -4
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +41 -47
- package/dist/model.js.map +1 -1
- package/dist/types.d.ts +3 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +15 -15
- package/dist/types.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Single-line text input component for Suds terminal UIs. Port of Charmbracelet Bubbles textinput.
|
|
4
4
|
|
|
5
|
+
<img src="../../examples/textinput-demo.gif" width="950" alt="Textinput component demo" />
|
|
6
|
+
|
|
5
7
|
## Install
|
|
6
8
|
|
|
7
9
|
```bash
|
|
@@ -11,32 +13,29 @@ pnpm add @suds-cli/textinput
|
|
|
11
13
|
## Quickstart
|
|
12
14
|
|
|
13
15
|
```ts
|
|
14
|
-
import { TextInputModel, EchoMode } from
|
|
15
|
-
import type { Cmd, Msg } from
|
|
16
|
+
import { TextInputModel, EchoMode } from '@suds-cli/textinput'
|
|
17
|
+
import type { Cmd, Msg } from '@suds-cli/tea'
|
|
16
18
|
|
|
17
19
|
let input = TextInputModel.new({
|
|
18
|
-
placeholder:
|
|
20
|
+
placeholder: 'Type your name…',
|
|
19
21
|
width: 40,
|
|
20
22
|
echoMode: EchoMode.Normal,
|
|
21
|
-
})
|
|
23
|
+
})
|
|
22
24
|
|
|
23
25
|
function init(): Cmd<Msg> {
|
|
24
|
-
const [focused, cmd] = input.focus()
|
|
25
|
-
input = focused
|
|
26
|
-
return cmd
|
|
26
|
+
const [focused, cmd] = input.focus()
|
|
27
|
+
input = focused
|
|
28
|
+
return cmd
|
|
27
29
|
}
|
|
28
30
|
|
|
29
31
|
function update(msg: Msg): [typeof model, Cmd<Msg>] {
|
|
30
|
-
const [nextInput, cmd] = input.update(msg)
|
|
31
|
-
input = nextInput
|
|
32
|
-
return [model, cmd]
|
|
32
|
+
const [nextInput, cmd] = input.update(msg)
|
|
33
|
+
input = nextInput
|
|
34
|
+
return [model, cmd]
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
function view(): string {
|
|
36
|
-
return [
|
|
37
|
-
"Name:",
|
|
38
|
-
input.view(),
|
|
39
|
-
].join("\n");
|
|
38
|
+
return ['Name:', input.view()].join('\n')
|
|
40
39
|
}
|
|
41
40
|
```
|
|
42
41
|
|
|
@@ -80,6 +79,3 @@ function view(): string {
|
|
|
80
79
|
## License
|
|
81
80
|
|
|
82
81
|
MIT
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { TextInputModel
|
|
2
|
-
export { EchoMode, CursorMode, type TextInputOptions, type KeyMap, type ValidateFunc, defaultKeyMap, } from
|
|
3
|
-
export { PasteMsg, PasteErrorMsg, pasteCommand } from
|
|
1
|
+
export { TextInputModel } from './model.js';
|
|
2
|
+
export { EchoMode, CursorMode, type TextInputOptions, type KeyMap, type ValidateFunc, defaultKeyMap, } from './types.js';
|
|
3
|
+
export { PasteMsg, PasteErrorMsg, pasteCommand } from './messages.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EACL,QAAQ,EACR,UAAU,EACV,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACX,KAAK,YAAY,EACjB,aAAa,GACd,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { TextInputModel
|
|
2
|
-
export { EchoMode, CursorMode, defaultKeyMap, } from
|
|
3
|
-
export { PasteMsg, PasteErrorMsg, pasteCommand } from
|
|
1
|
+
export { TextInputModel } from './model.js';
|
|
2
|
+
export { EchoMode, CursorMode, defaultKeyMap, } from './types.js';
|
|
3
|
+
export { PasteMsg, PasteErrorMsg, pasteCommand } from './messages.js';
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAE3C,OAAO,EACL,QAAQ,EACR,UAAU,EAIV,aAAa,GACd,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/messages.d.ts
CHANGED
package/dist/messages.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,eAAe,CAAA;AAE7C;;;GAGG;AACH,qBAAa,QAAS,YAAW,GAAG;aAEN,IAAI,EAAE,MAAM;IADxC,QAAQ,CAAC,IAAI,qBAAoB;gBACL,IAAI,EAAE,MAAM;CACzC;AAED;;;GAGG;AACH,qBAAa,aAAc,YAAW,GAAG;aAEX,KAAK,EAAE,OAAO;IAD1C,QAAQ,CAAC,IAAI,2BAA0B;gBACX,KAAK,EAAE,OAAO;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,IAAI,GAAG,CAAC,QAAQ,GAAG,aAAa,CAAC,CAS5D"}
|
package/dist/messages.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import clipboard from
|
|
1
|
+
import clipboard from 'clipboardy';
|
|
2
2
|
/**
|
|
3
3
|
* Clipboard paste content.
|
|
4
4
|
* @public
|
|
5
5
|
*/
|
|
6
6
|
export class PasteMsg {
|
|
7
7
|
text;
|
|
8
|
-
_tag =
|
|
8
|
+
_tag = 'textinput/paste';
|
|
9
9
|
constructor(text) {
|
|
10
10
|
this.text = text;
|
|
11
11
|
}
|
|
@@ -16,7 +16,7 @@ export class PasteMsg {
|
|
|
16
16
|
*/
|
|
17
17
|
export class PasteErrorMsg {
|
|
18
18
|
error;
|
|
19
|
-
_tag =
|
|
19
|
+
_tag = 'textinput/paste-error';
|
|
20
20
|
constructor(error) {
|
|
21
21
|
this.error = error;
|
|
22
22
|
}
|
|
@@ -30,7 +30,7 @@ export function pasteCommand() {
|
|
|
30
30
|
return async () => {
|
|
31
31
|
try {
|
|
32
32
|
const text = await clipboard.read();
|
|
33
|
-
return new PasteMsg(text ??
|
|
33
|
+
return new PasteMsg(text ?? '');
|
|
34
34
|
}
|
|
35
35
|
catch (error) {
|
|
36
36
|
return new PasteErrorMsg(error);
|
package/dist/messages.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../src/messages.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,YAAY,CAAA;AAGlC;;;GAGG;AACH,MAAM,OAAO,QAAQ;IAES;IADnB,IAAI,GAAG,iBAAiB,CAAA;IACjC,YAA4B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;CAC7C;AAED;;;GAGG;AACH,MAAM,OAAO,aAAa;IAEI;IADnB,IAAI,GAAG,uBAAuB,CAAA;IACvC,YAA4B,KAAc;QAAd,UAAK,GAAL,KAAK,CAAS;IAAG,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,KAAK,IAAI,EAAE;QAChB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAA;YACnC,OAAO,IAAI,QAAQ,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,aAAa,CAAC,KAAK,CAAC,CAAA;QACjC,CAAC;IACH,CAAC,CAAA;AACH,CAAC"}
|
package/dist/model.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Style } from
|
|
2
|
-
import { CursorModel } from
|
|
3
|
-
import { type Cmd, type Msg } from
|
|
4
|
-
import { EchoMode, type KeyMap, type TextInputOptions, type ValidateFunc } from
|
|
1
|
+
import { Style } from '@suds-cli/chapstick';
|
|
2
|
+
import { CursorModel } from '@suds-cli/cursor';
|
|
3
|
+
import { type Cmd, type Msg } from '@suds-cli/tea';
|
|
4
|
+
import { EchoMode, type KeyMap, type TextInputOptions, type ValidateFunc } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Single-line text input model with cursor control and clipboard support.
|
|
7
7
|
* @public
|
package/dist/model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAoC,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/dist/model.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
var _a;
|
|
2
|
-
import { Style, width as stringWidth, clampWidth } from
|
|
3
|
-
import { CursorModel, CursorMode } from
|
|
4
|
-
import { matches } from
|
|
5
|
-
import { batch, KeyMsg, KeyType } from
|
|
6
|
-
import { newSanitizer } from
|
|
7
|
-
import GraphemeSplitter from
|
|
8
|
-
import { PasteErrorMsg, PasteMsg, pasteCommand } from
|
|
9
|
-
import { EchoMode, defaultKeyMap, } from
|
|
2
|
+
import { Style, width as stringWidth, clampWidth } from '@suds-cli/chapstick';
|
|
3
|
+
import { CursorModel, CursorMode } from '@suds-cli/cursor';
|
|
4
|
+
import { matches } from '@suds-cli/key';
|
|
5
|
+
import { batch, KeyMsg, KeyType } from '@suds-cli/tea';
|
|
6
|
+
import { newSanitizer } from '@suds-cli/runeutil';
|
|
7
|
+
import GraphemeSplitter from 'grapheme-splitter';
|
|
8
|
+
import { PasteErrorMsg, PasteMsg, pasteCommand } from './messages.js';
|
|
9
|
+
import { EchoMode, defaultKeyMap, } from './types.js';
|
|
10
10
|
const splitter = new GraphemeSplitter();
|
|
11
|
-
const sanitizer = newSanitizer({ replaceNewLine:
|
|
11
|
+
const sanitizer = newSanitizer({ replaceNewLine: ' ', replaceTab: ' ' });
|
|
12
12
|
/**
|
|
13
13
|
* Single-line text input model with cursor control and clipboard support.
|
|
14
14
|
* @public
|
|
@@ -52,7 +52,7 @@ export class TextInputModel {
|
|
|
52
52
|
}
|
|
53
53
|
/** Create a new text input model. */
|
|
54
54
|
static new(options = {}) {
|
|
55
|
-
const sanitized = clampToLimit(sanitizeValue(options.value ??
|
|
55
|
+
const sanitized = clampToLimit(sanitizeValue(options.value ?? ''), options.charLimit ?? 0);
|
|
56
56
|
const baseTextStyle = options.textStyle ?? new Style();
|
|
57
57
|
const cursorMode = options.cursorMode ?? CursorMode.Blink;
|
|
58
58
|
const cursor = new CursorModel({
|
|
@@ -60,18 +60,18 @@ export class TextInputModel {
|
|
|
60
60
|
textStyle: baseTextStyle,
|
|
61
61
|
mode: cursorMode,
|
|
62
62
|
focused: false,
|
|
63
|
-
char:
|
|
63
|
+
char: ' ',
|
|
64
64
|
});
|
|
65
65
|
const model = new _a({
|
|
66
66
|
value: sanitized,
|
|
67
67
|
position: runeCount(sanitized),
|
|
68
68
|
focused: false,
|
|
69
|
-
placeholder: options.placeholder ??
|
|
69
|
+
placeholder: options.placeholder ?? '',
|
|
70
70
|
echoMode: options.echoMode ?? EchoMode.Normal,
|
|
71
|
-
echoCharacter: options.echoCharacter ??
|
|
71
|
+
echoCharacter: options.echoCharacter ?? '•',
|
|
72
72
|
charLimit: options.charLimit ?? 0,
|
|
73
73
|
width: options.width ?? 0,
|
|
74
|
-
prompt: options.prompt ??
|
|
74
|
+
prompt: options.prompt ?? '> ',
|
|
75
75
|
promptStyle: options.promptStyle ?? new Style(),
|
|
76
76
|
textStyle: baseTextStyle,
|
|
77
77
|
placeholderStyle: options.placeholderStyle ?? new Style(),
|
|
@@ -254,8 +254,8 @@ export class TextInputModel {
|
|
|
254
254
|
}
|
|
255
255
|
break;
|
|
256
256
|
}
|
|
257
|
-
const before = graphemes.slice(0, start).join(
|
|
258
|
-
const after = graphemes.slice(this.position).join(
|
|
257
|
+
const before = graphemes.slice(0, start).join('');
|
|
258
|
+
const after = graphemes.slice(this.position).join('');
|
|
259
259
|
return this.#withValue(before + after, start);
|
|
260
260
|
}
|
|
261
261
|
/** Delete the word to the right of the cursor. */
|
|
@@ -284,8 +284,8 @@ export class TextInputModel {
|
|
|
284
284
|
}
|
|
285
285
|
break;
|
|
286
286
|
}
|
|
287
|
-
const before = graphemes.slice(0, this.position).join(
|
|
288
|
-
const after = graphemes.slice(end).join(
|
|
287
|
+
const before = graphemes.slice(0, this.position).join('');
|
|
288
|
+
const after = graphemes.slice(end).join('');
|
|
289
289
|
return this.#withValue(before + after, this.position);
|
|
290
290
|
}
|
|
291
291
|
/** Delete everything before the cursor. */
|
|
@@ -300,7 +300,7 @@ export class TextInputModel {
|
|
|
300
300
|
}
|
|
301
301
|
/** Reset to empty value and cursor at start. */
|
|
302
302
|
reset() {
|
|
303
|
-
return this.#withValue(
|
|
303
|
+
return this.#withValue('', 0);
|
|
304
304
|
}
|
|
305
305
|
/** Replace the value and re-run validation. */
|
|
306
306
|
setValue(value) {
|
|
@@ -416,19 +416,19 @@ export class TextInputModel {
|
|
|
416
416
|
}
|
|
417
417
|
#placeholderView(availableWidth) {
|
|
418
418
|
const graphemes = splitGraphemes(this.placeholder);
|
|
419
|
-
const cursorChar = graphemes[0] ??
|
|
420
|
-
const rest = graphemes.slice(1).join(
|
|
419
|
+
const cursorChar = graphemes[0] ?? ' ';
|
|
420
|
+
const rest = graphemes.slice(1).join('');
|
|
421
421
|
const budget = Number.isFinite(availableWidth)
|
|
422
422
|
? Math.max(0, availableWidth - stringWidth(cursorChar))
|
|
423
423
|
: undefined;
|
|
424
424
|
const visibleRest = budget === undefined ? rest : clampWidth(rest, budget);
|
|
425
|
-
const cursorView = this.cursor.withChar(cursorChar ||
|
|
425
|
+
const cursorView = this.cursor.withChar(cursorChar || ' ').view();
|
|
426
426
|
const styledRest = this.placeholderStyle.inline(true).render(visibleRest);
|
|
427
427
|
const usedWidth = stringWidth(cursorChar + visibleRest);
|
|
428
428
|
const padding = Number.isFinite(availableWidth) && availableWidth > 0
|
|
429
429
|
? Math.max(0, availableWidth - usedWidth)
|
|
430
430
|
: 0;
|
|
431
|
-
return cursorView + styledRest +
|
|
431
|
+
return cursorView + styledRest + ' '.repeat(padding);
|
|
432
432
|
}
|
|
433
433
|
#valueView(availableWidth) {
|
|
434
434
|
const graphemes = splitGraphemes(this.value);
|
|
@@ -437,30 +437,24 @@ export class TextInputModel {
|
|
|
437
437
|
const [start, end] = visibleRange(widths, this.position, availableWidth);
|
|
438
438
|
const slice = displayGraphemes.slice(start, end);
|
|
439
439
|
const cursorOffset = clamp(this.position - start, 0, slice.length);
|
|
440
|
-
const before = slice.slice(0, cursorOffset).join(
|
|
441
|
-
const after = cursorOffset < slice.length
|
|
442
|
-
|
|
443
|
-
: "";
|
|
444
|
-
const cursorChar = cursorOffset < slice.length
|
|
445
|
-
? slice[cursorOffset] ?? " "
|
|
446
|
-
: " ";
|
|
440
|
+
const before = slice.slice(0, cursorOffset).join('');
|
|
441
|
+
const after = cursorOffset < slice.length ? slice.slice(cursorOffset + 1).join('') : '';
|
|
442
|
+
const cursorChar = cursorOffset < slice.length ? (slice[cursorOffset] ?? ' ') : ' ';
|
|
447
443
|
const beforeStyled = this.textStyle.inline(true).render(before);
|
|
448
444
|
const afterStyled = this.textStyle.inline(true).render(after);
|
|
449
|
-
const cursorView = this.cursor.withChar(cursorChar ||
|
|
450
|
-
const usedWidth = stringWidth(before) +
|
|
451
|
-
stringWidth(cursorChar || " ") +
|
|
452
|
-
stringWidth(after);
|
|
445
|
+
const cursorView = this.cursor.withChar(cursorChar || ' ').view();
|
|
446
|
+
const usedWidth = stringWidth(before) + stringWidth(cursorChar || ' ') + stringWidth(after);
|
|
453
447
|
const padding = Number.isFinite(availableWidth) && availableWidth > 0
|
|
454
448
|
? Math.max(0, availableWidth - usedWidth)
|
|
455
449
|
: 0;
|
|
456
|
-
return beforeStyled + cursorView + afterStyled +
|
|
450
|
+
return beforeStyled + cursorView + afterStyled + ' '.repeat(padding);
|
|
457
451
|
}
|
|
458
452
|
#echoTransform(s) {
|
|
459
453
|
switch (this.echoMode) {
|
|
460
454
|
case EchoMode.Password:
|
|
461
455
|
return this.echoCharacter.repeat(Math.max(0, runeCount(s)));
|
|
462
456
|
case EchoMode.None:
|
|
463
|
-
return
|
|
457
|
+
return '';
|
|
464
458
|
case EchoMode.Normal:
|
|
465
459
|
default:
|
|
466
460
|
return s;
|
|
@@ -520,7 +514,7 @@ export class TextInputModel {
|
|
|
520
514
|
}
|
|
521
515
|
_a = TextInputModel;
|
|
522
516
|
function sanitizeValue(value) {
|
|
523
|
-
return sanitizer.sanitize(value ??
|
|
517
|
+
return sanitizer.sanitize(value ?? '');
|
|
524
518
|
}
|
|
525
519
|
function clampToLimit(value, charLimit) {
|
|
526
520
|
if (charLimit <= 0) {
|
|
@@ -530,23 +524,23 @@ function clampToLimit(value, charLimit) {
|
|
|
530
524
|
}
|
|
531
525
|
function clampGraphemes(value, limit) {
|
|
532
526
|
if (limit <= 0) {
|
|
533
|
-
return
|
|
527
|
+
return '';
|
|
534
528
|
}
|
|
535
529
|
const graphemes = splitGraphemes(value);
|
|
536
530
|
if (graphemes.length <= limit) {
|
|
537
|
-
return graphemes.join(
|
|
531
|
+
return graphemes.join('');
|
|
538
532
|
}
|
|
539
|
-
return graphemes.slice(0, limit).join(
|
|
533
|
+
return graphemes.slice(0, limit).join('');
|
|
540
534
|
}
|
|
541
535
|
function splitGraphemes(value) {
|
|
542
|
-
return splitter.splitGraphemes(value ??
|
|
536
|
+
return splitter.splitGraphemes(value ?? '');
|
|
543
537
|
}
|
|
544
538
|
function sliceGraphemes(value, start, end) {
|
|
545
539
|
const graphemes = splitGraphemes(value);
|
|
546
|
-
return graphemes.slice(start, end).join(
|
|
540
|
+
return graphemes.slice(start, end).join('');
|
|
547
541
|
}
|
|
548
542
|
function runeCount(value) {
|
|
549
|
-
return splitter.countGraphemes(value ??
|
|
543
|
+
return splitter.countGraphemes(value ?? '');
|
|
550
544
|
}
|
|
551
545
|
function clamp(value, min, max) {
|
|
552
546
|
const lower = Math.min(min, max);
|
|
@@ -564,7 +558,7 @@ function visibleRange(widths, position, maxWidth) {
|
|
|
564
558
|
if (len === 0) {
|
|
565
559
|
return [0, 0];
|
|
566
560
|
}
|
|
567
|
-
const widthAt = (i) => (i >= 0 && i < len ? widths[i] ?? 0 : 0);
|
|
561
|
+
const widthAt = (i) => (i >= 0 && i < len ? (widths[i] ?? 0) : 0);
|
|
568
562
|
const budget = maxWidth;
|
|
569
563
|
let start = Math.min(position, len);
|
|
570
564
|
let end = start;
|
|
@@ -610,10 +604,10 @@ function asError(err) {
|
|
|
610
604
|
if (err instanceof Error) {
|
|
611
605
|
return err;
|
|
612
606
|
}
|
|
613
|
-
if (typeof err ===
|
|
607
|
+
if (typeof err === 'string')
|
|
614
608
|
return new Error(err);
|
|
615
|
-
if (typeof err ===
|
|
609
|
+
if (typeof err === 'number' || typeof err === 'boolean')
|
|
616
610
|
return new Error(String(err));
|
|
617
|
-
return new Error(
|
|
611
|
+
return new Error('clipboard error');
|
|
618
612
|
}
|
|
619
613
|
//# sourceMappingURL=model.js.map
|
package/dist/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Style } from
|
|
2
|
-
import { CursorMode } from
|
|
3
|
-
import { Binding } from
|
|
1
|
+
import { Style } from '@suds-cli/chapstick';
|
|
2
|
+
import { CursorMode } from '@suds-cli/cursor';
|
|
3
|
+
import { Binding } from '@suds-cli/key';
|
|
4
4
|
/**
|
|
5
5
|
* Echo rendering mode for text input.
|
|
6
6
|
* @public
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAc,MAAM,eAAe,CAAA;AAEnD;;;GAGG;AACH,oBAAY,QAAQ;IAClB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,IAAI,SAAS;CACd;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,KAAK,GAAG,IAAI,CAAA;AAE1D;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,gBAAgB,EAAE,OAAO,CAAA;IACzB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,EAAE,OAAO,CAAA;IACrB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,iBAAiB,EAAE,OAAO,CAAA;IAC1B,iBAAiB,EAAE,OAAO,CAAA;IAC1B,kBAAkB,EAAE,OAAO,CAAA;IAC3B,uBAAuB,EAAE,OAAO,CAAA;IAChC,sBAAsB,EAAE,OAAO,CAAA;IAC/B,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,OAAO,CAAA;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,MAc3B,CAAA;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,SAAS,CAAC,EAAE,KAAK,CAAA;IACjB,gBAAgB,CAAC,EAAE,KAAK,CAAA;IACxB,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
package/dist/types.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { CursorMode } from
|
|
2
|
-
import { newBinding } from
|
|
1
|
+
import { CursorMode } from '@suds-cli/cursor';
|
|
2
|
+
import { newBinding } from '@suds-cli/key';
|
|
3
3
|
/**
|
|
4
4
|
* Echo rendering mode for text input.
|
|
5
5
|
* @public
|
|
@@ -15,19 +15,19 @@ export var EchoMode;
|
|
|
15
15
|
* @public
|
|
16
16
|
*/
|
|
17
17
|
export const defaultKeyMap = {
|
|
18
|
-
characterForward: newBinding({ keys: [
|
|
19
|
-
characterBackward: newBinding({ keys: [
|
|
20
|
-
wordForward: newBinding({ keys: [
|
|
21
|
-
wordBackward: newBinding({ keys: [
|
|
22
|
-
deleteWordBackward: newBinding({ keys: [
|
|
23
|
-
deleteWordForward: newBinding({ keys: [
|
|
24
|
-
deleteAfterCursor: newBinding({ keys: [
|
|
25
|
-
deleteBeforeCursor: newBinding({ keys: [
|
|
26
|
-
deleteCharacterBackward: newBinding({ keys: [
|
|
27
|
-
deleteCharacterForward: newBinding({ keys: [
|
|
28
|
-
lineStart: newBinding({ keys: [
|
|
29
|
-
lineEnd: newBinding({ keys: [
|
|
30
|
-
paste: newBinding({ keys: [
|
|
18
|
+
characterForward: newBinding({ keys: ['right', 'ctrl+f'] }),
|
|
19
|
+
characterBackward: newBinding({ keys: ['left', 'ctrl+b'] }),
|
|
20
|
+
wordForward: newBinding({ keys: ['alt+right', 'ctrl+right', 'alt+f'] }),
|
|
21
|
+
wordBackward: newBinding({ keys: ['alt+left', 'ctrl+left', 'alt+b'] }),
|
|
22
|
+
deleteWordBackward: newBinding({ keys: ['alt+backspace', 'ctrl+w'] }),
|
|
23
|
+
deleteWordForward: newBinding({ keys: ['alt+delete', 'alt+d'] }),
|
|
24
|
+
deleteAfterCursor: newBinding({ keys: ['ctrl+k'] }),
|
|
25
|
+
deleteBeforeCursor: newBinding({ keys: ['ctrl+u'] }),
|
|
26
|
+
deleteCharacterBackward: newBinding({ keys: ['backspace', 'ctrl+h'] }),
|
|
27
|
+
deleteCharacterForward: newBinding({ keys: ['delete', 'ctrl+d'] }),
|
|
28
|
+
lineStart: newBinding({ keys: ['home', 'ctrl+a'] }),
|
|
29
|
+
lineEnd: newBinding({ keys: ['end', 'ctrl+e'] }),
|
|
30
|
+
paste: newBinding({ keys: ['ctrl+v'] }),
|
|
31
31
|
};
|
|
32
32
|
export { CursorMode };
|
|
33
33
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAW,UAAU,EAAE,MAAM,eAAe,CAAA;AAEnD;;;GAGG;AACH,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;AACf,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AA4BD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAW;IACnC,gBAAgB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC3D,iBAAiB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC3D,WAAW,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;IACvE,YAAY,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC;IACtE,kBAAkB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;IACrE,iBAAiB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,EAAE,CAAC;IAChE,iBAAiB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;IACnD,kBAAkB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;IACpD,uBAAuB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtE,sBAAsB,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IAClE,SAAS,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;IACnD,OAAO,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;IAChD,KAAK,EAAE,UAAU,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;CACxC,CAAA;AAuBD,OAAO,EAAE,UAAU,EAAE,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@suds-cli/textinput",
|
|
3
|
-
"version": "0.0.0",
|
|
3
|
+
"version": "0.0.1-alpha.0",
|
|
4
4
|
"description": "Single-line text input component for Suds terminal UIs",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"clipboardy": "^4.0.0",
|
|
13
13
|
"grapheme-splitter": "^1.0.4",
|
|
14
|
-
"@suds-cli/chapstick": "0.0.0",
|
|
15
|
-
"@suds-cli/cursor": "0.0.0",
|
|
14
|
+
"@suds-cli/chapstick": "0.1.0-alpha.0",
|
|
15
|
+
"@suds-cli/cursor": "0.0.1-alpha.0",
|
|
16
16
|
"@suds-cli/key": "0.0.0",
|
|
17
17
|
"@suds-cli/runeutil": "0.0.0",
|
|
18
18
|
"@suds-cli/tea": "0.0.0"
|