@peteanderson/ansi 3.0.0 → 3.2.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 +4 -0
- package/dist/cjs/ansi.d.ts +11 -9
- package/dist/cjs/ansi.d.ts.map +1 -1
- package/dist/cjs/ansi.js +4 -1
- package/dist/cjs/ansi.js.map +1 -1
- package/dist/cjs/cursor.d.ts +6 -6
- package/dist/cjs/cursor.d.ts.map +1 -1
- package/dist/cjs/cursor.js +32 -30
- package/dist/cjs/cursor.js.map +1 -1
- package/dist/cjs/erase.d.ts.map +1 -1
- package/dist/cjs/erase.js +8 -7
- package/dist/cjs/erase.js.map +1 -1
- package/dist/cjs/index.d.ts +10 -8
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/scroll.d.ts +2 -2
- package/dist/cjs/scroll.d.ts.map +1 -1
- package/dist/cjs/scroll.js +5 -4
- package/dist/cjs/scroll.js.map +1 -1
- package/dist/cjs/sgr/color/channel.d.ts.map +1 -1
- package/dist/cjs/sgr/color/channel.js +2 -1
- package/dist/cjs/sgr/color/channel.js.map +1 -1
- package/dist/cjs/sgr/format-builder.d.ts.map +1 -1
- package/dist/cjs/sgr/format-builder.js +3 -2
- package/dist/cjs/sgr/format-builder.js.map +1 -1
- package/dist/cjs/sgr/reset.d.ts.map +1 -1
- package/dist/cjs/sgr/reset.js +2 -1
- package/dist/cjs/sgr/reset.js.map +1 -1
- package/dist/cjs/simplify/simplify.d.ts.map +1 -1
- package/dist/cjs/simplify/simplify.js +2 -1
- package/dist/cjs/simplify/simplify.js.map +1 -1
- package/dist/cjs/slice.d.ts +6 -1
- package/dist/cjs/slice.d.ts.map +1 -1
- package/dist/cjs/slice.js +8 -7
- package/dist/cjs/slice.js.map +1 -1
- package/dist/cjs/split-at.d.ts +12 -0
- package/dist/cjs/split-at.d.ts.map +1 -0
- package/dist/cjs/split-at.js +32 -0
- package/dist/cjs/split-at.js.map +1 -0
- package/dist/cjs/terminal.d.ts.map +1 -1
- package/dist/cjs/terminal.js +13 -12
- package/dist/cjs/terminal.js.map +1 -1
- package/dist/cjs/types.d.ts +2 -0
- package/dist/cjs/types.d.ts.map +1 -1
- package/dist/cjs/utils.d.ts +5 -0
- package/dist/cjs/utils.d.ts.map +1 -0
- package/dist/cjs/utils.js +14 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/esm/ansi.d.ts +11 -9
- package/dist/esm/ansi.d.ts.map +1 -1
- package/dist/esm/ansi.js +3 -1
- package/dist/esm/ansi.js.map +1 -1
- package/dist/esm/cursor.d.ts +6 -6
- package/dist/esm/cursor.d.ts.map +1 -1
- package/dist/esm/cursor.js +18 -16
- package/dist/esm/cursor.js.map +1 -1
- package/dist/esm/erase.d.ts.map +1 -1
- package/dist/esm/erase.js +8 -7
- package/dist/esm/erase.js.map +1 -1
- package/dist/esm/scroll.d.ts +2 -2
- package/dist/esm/scroll.d.ts.map +1 -1
- package/dist/esm/scroll.js +5 -4
- package/dist/esm/scroll.js.map +1 -1
- package/dist/esm/sgr/color/channel.d.ts.map +1 -1
- package/dist/esm/sgr/color/channel.js +2 -1
- package/dist/esm/sgr/color/channel.js.map +1 -1
- package/dist/esm/sgr/format-builder.d.ts.map +1 -1
- package/dist/esm/sgr/format-builder.js +3 -2
- package/dist/esm/sgr/format-builder.js.map +1 -1
- package/dist/esm/sgr/reset.d.ts.map +1 -1
- package/dist/esm/sgr/reset.js +2 -1
- package/dist/esm/sgr/reset.js.map +1 -1
- package/dist/esm/simplify/simplify.d.ts.map +1 -1
- package/dist/esm/simplify/simplify.js +2 -1
- package/dist/esm/simplify/simplify.js.map +1 -1
- package/dist/esm/slice.d.ts +6 -1
- package/dist/esm/slice.d.ts.map +1 -1
- package/dist/esm/slice.js +8 -9
- package/dist/esm/slice.js.map +1 -1
- package/dist/esm/split-at.d.ts +12 -0
- package/dist/esm/split-at.d.ts.map +1 -0
- package/dist/esm/split-at.js +29 -0
- package/dist/esm/split-at.js.map +1 -0
- package/dist/esm/terminal.d.ts.map +1 -1
- package/dist/esm/terminal.js +13 -12
- package/dist/esm/terminal.js.map +1 -1
- package/dist/esm/types.d.ts +2 -0
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/utils.d.ts +5 -0
- package/dist/esm/utils.d.ts.map +1 -0
- package/dist/esm/utils.js +8 -0
- package/dist/esm/utils.js.map +1 -0
- package/package.json +1 -1
- package/src/ansi.ts +3 -1
- package/src/cursor.ts +18 -18
- package/src/erase.ts +9 -7
- package/src/scroll.ts +6 -4
- package/src/sgr/color/channel.ts +2 -1
- package/src/sgr/format-builder.ts +3 -2
- package/src/sgr/reset.ts +3 -1
- package/src/simplify/simplify.ts +2 -1
- package/src/slice.ts +11 -10
- package/src/split-at.ts +44 -0
- package/src/terminal.ts +14 -12
- package/src/types.ts +2 -0
- package/src/utils.ts +15 -0
package/README.md
CHANGED
|
@@ -206,6 +206,10 @@ Removes all ANSI CSI sequences from a string (always available).
|
|
|
206
206
|
|
|
207
207
|
Slices a string by visible characters, ignoring ANSI sequences (always available).
|
|
208
208
|
|
|
209
|
+
### `splitAt(text, visibleIndex)`
|
|
210
|
+
|
|
211
|
+
Splits a string into two parts at the given visible index, ignoring ANSI sequences (always available).
|
|
212
|
+
|
|
209
213
|
### `sanitize(text)`
|
|
210
214
|
|
|
211
215
|
Removes "unsafe" CSI sequences, leaving only color and style codes (always available).
|
package/dist/cjs/ansi.d.ts
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { padEnd, padStart } from "./pad";
|
|
2
|
+
import { splitAt } from "./split-at";
|
|
2
3
|
import { strip, visibleLength } from "./strip";
|
|
3
4
|
import type { Args } from "./features";
|
|
4
5
|
import type { Ansi } from "./types";
|
|
5
6
|
export declare function makeAnsi(...args: Args): Ansi;
|
|
6
7
|
export declare const ansi: Ansi;
|
|
7
8
|
export declare const fg: import("./sgr/types").Channel<"bg" | import("./sgr/types").StyleKey>, bg: import("./sgr/types").Channel<"fg" | import("./sgr/types").StyleKey>, style: import("./sgr/types").Style<import("./sgr/types").ChainKey>, reset: string, cursor: {
|
|
8
|
-
up: (count?: number) => string;
|
|
9
|
-
down: (count?: number) => string;
|
|
10
|
-
forward: (count?: number) => string;
|
|
11
|
-
backward: (count?: number) => string;
|
|
12
|
-
nextLine: (count?: number) => string;
|
|
13
|
-
prevLine: (count?: number) => string;
|
|
9
|
+
up: (count?: number | undefined) => string;
|
|
10
|
+
down: (count?: number | undefined) => string;
|
|
11
|
+
forward: (count?: number | undefined) => string;
|
|
12
|
+
backward: (count?: number | undefined) => string;
|
|
13
|
+
nextLine: (count?: number | undefined) => string;
|
|
14
|
+
prevLine: (count?: number | undefined) => string;
|
|
14
15
|
x: (x: number) => string;
|
|
15
16
|
save: string;
|
|
16
17
|
restore: string;
|
|
@@ -42,8 +43,8 @@ export declare const fg: import("./sgr/types").Channel<"bg" | import("./sgr/type
|
|
|
42
43
|
scrollback: string;
|
|
43
44
|
};
|
|
44
45
|
}, scroll: {
|
|
45
|
-
up: (lines?: number) => string;
|
|
46
|
-
down: (lines?: number) => string;
|
|
46
|
+
up: (lines?: number | undefined) => string;
|
|
47
|
+
down: (lines?: number | undefined) => string;
|
|
47
48
|
}, terminal: {
|
|
48
49
|
focusReporting: {
|
|
49
50
|
enable: string;
|
|
@@ -66,7 +67,7 @@ export declare const fg: import("./sgr/types").Channel<"bg" | import("./sgr/type
|
|
|
66
67
|
end: string;
|
|
67
68
|
};
|
|
68
69
|
};
|
|
69
|
-
export { padEnd, padStart, strip, visibleLength };
|
|
70
|
+
export { padEnd, padStart, splitAt, strip, visibleLength };
|
|
70
71
|
declare const _default: typeof makeAnsi & import("./sgr").SGR & {
|
|
71
72
|
cursor: import("./cursor").Cursor;
|
|
72
73
|
erase: import("./erase").Erase;
|
|
@@ -78,6 +79,7 @@ declare const _default: typeof makeAnsi & import("./sgr").SGR & {
|
|
|
78
79
|
visibleLength: import("./strip").VisibleLength;
|
|
79
80
|
sanitize: import("./strip").Sanitize;
|
|
80
81
|
slice: import("./slice").Slice;
|
|
82
|
+
splitAt: import("./split-at").SplitAt;
|
|
81
83
|
simplify: import("./simplify").Simplify;
|
|
82
84
|
features: import("./features").Features;
|
|
83
85
|
};
|
package/dist/cjs/ansi.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/ansi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAC,MAAoB,OAAO,CAAC;AAKrD,OAAO,EAAW,KAAK,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAGvD,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,YAAY,CAAC;AACrC,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,wBAAgB,QAAQ,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"ansi.d.ts","sourceRoot":"","sources":["../../src/ansi.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAC,MAAoB,OAAO,CAAC;AAKrD,OAAO,EAAC,OAAO,EAAC,MAA6B,YAAY,CAAC;AAC1D,OAAO,EAAW,KAAK,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAGvD,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,YAAY,CAAC;AACrC,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,SAAS,CAAC;AAElC,wBAAgB,QAAQ,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,CAwB5C;AAED,eAAO,MAAM,IAAI,MAAa,CAAC;AAE/B,eAAO,MAAO,EAAE,wEAAE,EAAE,wEAAE,KAAK,+DAAE,KAAK,UAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;GAAE,KAAK;;;;;;;;;;;;GAAE,MAAM;;;GAAE,QAAQ;;;;;;;;;;;;;;;;;;;;;CAAQ,CAAC;AAE5E,OAAO,EAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAC,CAAA;;;;;;;;;;;;;;;;AAExD,wBAGE"}
|
package/dist/cjs/ansi.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.visibleLength = exports.strip = exports.padStart = exports.padEnd = exports.terminal = exports.scroll = exports.erase = exports.cursor = exports.reset = exports.style = exports.bg = exports.fg = exports.ansi = void 0;
|
|
3
|
+
exports.visibleLength = exports.strip = exports.splitAt = exports.padStart = exports.padEnd = exports.terminal = exports.scroll = exports.erase = exports.cursor = exports.reset = exports.style = exports.bg = exports.fg = exports.ansi = void 0;
|
|
4
4
|
exports.makeAnsi = makeAnsi;
|
|
5
5
|
const cursor_1 = require("./cursor");
|
|
6
6
|
const erase_1 = require("./erase");
|
|
@@ -12,6 +12,8 @@ const scroll_1 = require("./scroll");
|
|
|
12
12
|
const sgr_1 = require("./sgr");
|
|
13
13
|
const simplify_1 = require("./simplify");
|
|
14
14
|
const slice_1 = require("./slice");
|
|
15
|
+
const split_at_1 = require("./split-at");
|
|
16
|
+
Object.defineProperty(exports, "splitAt", { enumerable: true, get: function () { return split_at_1.splitAt; } });
|
|
15
17
|
const strip_1 = require("./strip");
|
|
16
18
|
Object.defineProperty(exports, "strip", { enumerable: true, get: function () { return strip_1.strip; } });
|
|
17
19
|
Object.defineProperty(exports, "visibleLength", { enumerable: true, get: function () { return strip_1.visibleLength; } });
|
|
@@ -31,6 +33,7 @@ function makeAnsi(...args) {
|
|
|
31
33
|
sanitize: strip_1.sanitize,
|
|
32
34
|
slice: slice_1.slice,
|
|
33
35
|
simplify: simplify_1.simplify,
|
|
36
|
+
splitAt: split_at_1.splitAt,
|
|
34
37
|
features,
|
|
35
38
|
};
|
|
36
39
|
}
|
package/dist/cjs/ansi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/ansi.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"ansi.js","sourceRoot":"","sources":["../../src/ansi.ts"],"names":[],"mappings":";;;AAeA,4BAwBC;AAvCD,qCAAwD;AACxD,mCAAuD;AACvD,yCAA0D;AAC1D,+BAAqD;AA0C7C,uFA1CA,YAAM,OA0CA;AAAE,yFA1CA,cAAQ,OA0CA;AAzCxB,qCAAwD;AACxD,+BAAqD;AACrD,yCAA0D;AAC1D,mCAAuD;AACvD,yCAA0D;AAqChC,wFArClB,kBAAO,OAqCkB;AApCjC,mCAAuD;AAoCpB,sFApCjB,aAAK,OAoCiB;AAAE,8FApCjB,qBAAa,OAoCiB;AAnCvD,yCAA0D;AAK1D,SAAgB,QAAQ,CAAC,GAAG,IAAU;IACrC,MAAM,QAAQ,GAAG,IAAA,sBAAW,EAAC,GAAG,IAAI,CAAC,CAAC;IAEtC,OAAO;QACN,GAAG,IAAA,aAAO,EAAC,QAAQ,CAAC;QAEpB,MAAM,EAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,MAAM,CAAC;QACpC,KAAK,EAAI,IAAA,iBAAS,EAAC,QAAQ,CAAC,KAAK,CAAC;QAClC,MAAM,EAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,MAAM,CAAC;QAEpC,QAAQ,EAAE,IAAA,uBAAY,EAAC,QAAQ,CAAC,QAAQ,CAAC;QAEzC,MAAM,EAAN,YAAM;QACN,QAAQ,EAAR,cAAQ;QAER,KAAK,EAAL,aAAK;QACL,aAAa,EAAb,qBAAa;QACb,QAAQ,EAAR,gBAAQ;QACR,KAAK,EAAL,aAAK;QACL,QAAQ,EAAR,mBAAQ;QACR,OAAO,EAAP,kBAAO;QAEP,QAAQ;KACR,CAAC;AACH,CAAC;AAEY,QAAA,IAAI,GAAG,QAAQ,EAAE,CAAC;AAEjB,UAAE,GAAuD,YAAI,KAAzD,UAAE,GAAmD,YAAI,KAArD,aAAK,GAA4C,YAAI,QAA9C,aAAK,GAAqC,YAAI,QAAvC,cAAM,GAA6B,YAAI,SAA/B,aAAK,GAAsB,YAAI,QAAxB,cAAM,GAAc,YAAI,SAAhB,gBAAQ,GAAI,YAAI,UAAC;AAI5E,kBAAe,MAAM,CAAC,MAAM,CAC3B,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,EAAC,KAAK,EAAE,MAAM,EAAC,CAAC,EACxE,YAAI,CACJ,CAAC"}
|
package/dist/cjs/cursor.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
declare const cursor: {
|
|
2
|
-
up: (count?: number) => string;
|
|
3
|
-
down: (count?: number) => string;
|
|
4
|
-
forward: (count?: number) => string;
|
|
5
|
-
backward: (count?: number) => string;
|
|
6
|
-
nextLine: (count?: number) => string;
|
|
7
|
-
prevLine: (count?: number) => string;
|
|
2
|
+
up: (count?: number | undefined) => string;
|
|
3
|
+
down: (count?: number | undefined) => string;
|
|
4
|
+
forward: (count?: number | undefined) => string;
|
|
5
|
+
backward: (count?: number | undefined) => string;
|
|
6
|
+
nextLine: (count?: number | undefined) => string;
|
|
7
|
+
prevLine: (count?: number | undefined) => string;
|
|
8
8
|
x: (x: number) => string;
|
|
9
9
|
save: string;
|
|
10
10
|
restore: string;
|
package/dist/cjs/cursor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/cursor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/cursor.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM;;;;;;;WAWJ,MAAM;;;;;;;iBAkBH,MAAM,KAAK,MAAM,KAAG,MAAM;;;;;;;;;;;CAYpC,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAkCnC,eAAO,MAAM,UAAU,GAAI,iBAAc,KAAG,MAAqC,CAAC"}
|
package/dist/cjs/cursor.js
CHANGED
|
@@ -1,57 +1,59 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeCursor = void 0;
|
|
4
|
-
const
|
|
5
|
-
const noop = () => "";
|
|
4
|
+
const utils_1 = require("./utils");
|
|
6
5
|
const cursor = {
|
|
7
|
-
up:
|
|
8
|
-
down:
|
|
9
|
-
forward:
|
|
10
|
-
backward:
|
|
11
|
-
nextLine:
|
|
12
|
-
prevLine:
|
|
13
|
-
|
|
6
|
+
up: (0, utils_1.count)("A"),
|
|
7
|
+
down: (0, utils_1.count)("B"),
|
|
8
|
+
forward: (0, utils_1.count)("C"),
|
|
9
|
+
backward: (0, utils_1.count)("D"),
|
|
10
|
+
nextLine: (0, utils_1.count)("E"),
|
|
11
|
+
prevLine: (0, utils_1.count)("F"),
|
|
12
|
+
// Don't use `move`/`count` here, because it will output an empty string if `x` is `0`, but the
|
|
13
|
+
// terminal accepts `\x1b[0G` and will process it the same as `\x1b[1G`/`x1b[G`. Also, the
|
|
14
|
+
// parameter for `move`/`count` is optional, but the parameter for `x` is required.
|
|
15
|
+
x: (x) => (0, utils_1.csi)(x, "G"),
|
|
14
16
|
// These are the old VT100 codes, but they're widely supported by old and new terminals. The
|
|
15
17
|
// newer VT220 codes are standardized by ECMA and ISO, and are also widely supported, but might
|
|
16
18
|
// not work in some older terminals. The VT220 codes are:
|
|
17
19
|
//
|
|
18
20
|
// ```
|
|
19
|
-
// save : "
|
|
20
|
-
// restore : "
|
|
21
|
+
// save : csi("s"),
|
|
22
|
+
// restore : csi("u"),
|
|
21
23
|
// ```
|
|
22
24
|
save: "\x1b7",
|
|
23
25
|
restore: "\x1b8",
|
|
24
|
-
hide: "
|
|
25
|
-
show: "
|
|
26
|
+
hide: (0, utils_1.csi)("?25l"),
|
|
27
|
+
show: (0, utils_1.csi)("?25h"),
|
|
26
28
|
position: {
|
|
27
|
-
get: "
|
|
28
|
-
set: (x, y) =>
|
|
29
|
+
get: (0, utils_1.csi)("6n"),
|
|
30
|
+
set: (x, y) => (0, utils_1.csi)(`${y};${x}H`),
|
|
29
31
|
},
|
|
30
32
|
shape: {
|
|
31
|
-
steadyBlock: "
|
|
32
|
-
steadyBar: "
|
|
33
|
-
steadyUnderline: "
|
|
34
|
-
blinkingBlock: "
|
|
35
|
-
blinkingBar: "
|
|
36
|
-
blinkingUnderline: "
|
|
37
|
-
default: "
|
|
33
|
+
steadyBlock: (0, utils_1.csi)("2 q"),
|
|
34
|
+
steadyBar: (0, utils_1.csi)("6 q"),
|
|
35
|
+
steadyUnderline: (0, utils_1.csi)("4 q"),
|
|
36
|
+
blinkingBlock: (0, utils_1.csi)("1 q"),
|
|
37
|
+
blinkingBar: (0, utils_1.csi)("5 q"),
|
|
38
|
+
blinkingUnderline: (0, utils_1.csi)("3 q"),
|
|
39
|
+
default: (0, utils_1.csi)("0 q"),
|
|
38
40
|
},
|
|
39
41
|
};
|
|
40
42
|
const disabled = {
|
|
41
|
-
up: noop,
|
|
42
|
-
down: noop,
|
|
43
|
-
forward: noop,
|
|
44
|
-
backward: noop,
|
|
45
|
-
nextLine: noop,
|
|
46
|
-
prevLine: noop,
|
|
47
|
-
x: noop,
|
|
43
|
+
up: utils_1.noop,
|
|
44
|
+
down: utils_1.noop,
|
|
45
|
+
forward: utils_1.noop,
|
|
46
|
+
backward: utils_1.noop,
|
|
47
|
+
nextLine: utils_1.noop,
|
|
48
|
+
prevLine: utils_1.noop,
|
|
49
|
+
x: utils_1.noop,
|
|
48
50
|
save: "",
|
|
49
51
|
restore: "",
|
|
50
52
|
hide: "",
|
|
51
53
|
show: "",
|
|
52
54
|
position: {
|
|
53
55
|
get: "",
|
|
54
|
-
set: noop,
|
|
56
|
+
set: utils_1.noop,
|
|
55
57
|
},
|
|
56
58
|
shape: {
|
|
57
59
|
steadyBlock: "",
|
package/dist/cjs/cursor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/cursor.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../src/cursor.ts"],"names":[],"mappings":";;;AAAA,mCAAiD;AAEjD,MAAM,MAAM,GAAG;IACd,EAAE,EAAS,IAAA,aAAI,EAAC,GAAG,CAAC;IACpB,IAAI,EAAO,IAAA,aAAI,EAAC,GAAG,CAAC;IACpB,OAAO,EAAI,IAAA,aAAI,EAAC,GAAG,CAAC;IACpB,QAAQ,EAAG,IAAA,aAAI,EAAC,GAAG,CAAC;IACpB,QAAQ,EAAG,IAAA,aAAI,EAAC,GAAG,CAAC;IACpB,QAAQ,EAAG,IAAA,aAAI,EAAC,GAAG,CAAC;IAEpB,+FAA+F;IAC/F,0FAA0F;IAC1F,mFAAmF;IACnF,CAAC,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,IAAA,WAAG,EAAC,CAAC,EAAE,GAAG,CAAC;IAE7B,4FAA4F;IAC5F,+FAA+F;IAC/F,yDAAyD;IACzD,EAAE;IACF,MAAM;IACN,sBAAsB;IACtB,sBAAsB;IACtB,MAAM;IACN,IAAI,EAAM,OAAO;IACjB,OAAO,EAAG,OAAO;IAEjB,IAAI,EAAG,IAAA,WAAG,EAAC,MAAM,CAAC;IAClB,IAAI,EAAG,IAAA,WAAG,EAAC,MAAM,CAAC;IAElB,QAAQ,EAAE;QACT,GAAG,EAAE,IAAA,WAAG,EAAC,IAAI,CAAC;QACd,GAAG,EAAE,CAAC,CAAS,EAAE,CAAS,EAAU,EAAE,CAAC,IAAA,WAAG,EAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC;KACxD;IAED,KAAK,EAAE;QACN,WAAW,EAAS,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,SAAS,EAAW,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,eAAe,EAAK,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,aAAa,EAAO,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,WAAW,EAAS,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,iBAAiB,EAAG,IAAA,WAAG,EAAC,KAAK,CAAC;QAC9B,OAAO,EAAa,IAAA,WAAG,EAAC,KAAK,CAAC;KAC9B;CACD,CAAC;AAIF,MAAM,QAAQ,GAAW;IACxB,EAAE,EAAS,YAAI;IACf,IAAI,EAAO,YAAI;IACf,OAAO,EAAI,YAAI;IACf,QAAQ,EAAG,YAAI;IACf,QAAQ,EAAG,YAAI;IACf,QAAQ,EAAG,YAAI;IAEf,CAAC,EAAE,YAAI;IAEP,IAAI,EAAM,EAAE;IACZ,OAAO,EAAG,EAAE;IAEZ,IAAI,EAAG,EAAE;IACT,IAAI,EAAG,EAAE;IAET,QAAQ,EAAE;QACT,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,YAAI;KACT;IAED,KAAK,EAAE;QACN,WAAW,EAAS,EAAE;QACtB,SAAS,EAAW,EAAE;QACtB,eAAe,EAAK,EAAE;QACtB,aAAa,EAAO,EAAE;QACtB,WAAW,EAAS,EAAE;QACtB,iBAAiB,EAAG,EAAE;QACtB,OAAO,EAAa,EAAE;KACtB;CACD,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,OAAO,GAAG,IAAI,EAAU,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AAArE,QAAA,UAAU,cAA2D"}
|
package/dist/cjs/erase.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erase.d.ts","sourceRoot":"","sources":["../../src/erase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"erase.d.ts","sourceRoot":"","sources":["../../src/erase.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,KAAK;;;;;;;;;;;;CAYV,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC;AAgBjC,eAAO,MAAM,SAAS,GAAI,iBAAc,KAAG,KAAmC,CAAC"}
|
package/dist/cjs/erase.js
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeErase = void 0;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
4
5
|
const erase = {
|
|
5
6
|
line: {
|
|
6
|
-
toStart: "
|
|
7
|
-
toEnd: "
|
|
8
|
-
full: "
|
|
7
|
+
toStart: (0, utils_1.csi)("1K"),
|
|
8
|
+
toEnd: (0, utils_1.csi)("0K"),
|
|
9
|
+
full: (0, utils_1.csi)("2K"),
|
|
9
10
|
},
|
|
10
11
|
screen: {
|
|
11
|
-
toStart: "
|
|
12
|
-
toEnd: "
|
|
13
|
-
full: "
|
|
14
|
-
scrollback: "
|
|
12
|
+
toStart: (0, utils_1.csi)("1J"),
|
|
13
|
+
toEnd: (0, utils_1.csi)("0J"),
|
|
14
|
+
full: (0, utils_1.csi)("2J"),
|
|
15
|
+
scrollback: (0, utils_1.csi)("3J"),
|
|
15
16
|
},
|
|
16
17
|
};
|
|
17
18
|
const disabled = {
|
package/dist/cjs/erase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erase.js","sourceRoot":"","sources":["../../src/erase.ts"],"names":[],"mappings":";;;AAAA,MAAM,KAAK,GAAG;IACb,IAAI,EAAE;QACL,OAAO,EAAG,
|
|
1
|
+
{"version":3,"file":"erase.js","sourceRoot":"","sources":["../../src/erase.ts"],"names":[],"mappings":";;;AAAA,mCAA4B;AAE5B,MAAM,KAAK,GAAG;IACb,IAAI,EAAE;QACL,OAAO,EAAG,IAAA,WAAG,EAAC,IAAI,CAAC;QACnB,KAAK,EAAK,IAAA,WAAG,EAAC,IAAI,CAAC;QACnB,IAAI,EAAM,IAAA,WAAG,EAAC,IAAI,CAAC;KACnB;IACD,MAAM,EAAE;QACP,OAAO,EAAM,IAAA,WAAG,EAAC,IAAI,CAAC;QACtB,KAAK,EAAQ,IAAA,WAAG,EAAC,IAAI,CAAC;QACtB,IAAI,EAAS,IAAA,WAAG,EAAC,IAAI,CAAC;QACtB,UAAU,EAAG,IAAA,WAAG,EAAC,IAAI,CAAC;KACtB;CACD,CAAC;AAIF,MAAM,QAAQ,GAAU;IACvB,IAAI,EAAE;QACL,OAAO,EAAG,EAAE;QACZ,KAAK,EAAK,EAAE;QACZ,IAAI,EAAM,EAAE;KACZ;IACD,MAAM,EAAE;QACP,OAAO,EAAM,EAAE;QACf,KAAK,EAAQ,EAAE;QACf,IAAI,EAAS,EAAE;QACf,UAAU,EAAG,EAAE;KACf;CACD,CAAC;AAEK,MAAM,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,EAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAAlE,QAAA,SAAS,aAAyD"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ declare const ansi: typeof $ansi.makeAnsi & import("./sgr").SGR & {
|
|
|
13
13
|
visibleLength: import("./strip").VisibleLength;
|
|
14
14
|
sanitize: import("./strip").Sanitize;
|
|
15
15
|
slice: import("./slice").Slice;
|
|
16
|
+
splitAt: import("./split-at").SplitAt;
|
|
16
17
|
simplify: import("./simplify").Simplify;
|
|
17
18
|
features: import("./features").Features;
|
|
18
19
|
} & {
|
|
@@ -23,12 +24,12 @@ declare const ansi: typeof $ansi.makeAnsi & import("./sgr").SGR & {
|
|
|
23
24
|
style: import("./sgr/types").Style<import("./sgr/types").ChainKey>;
|
|
24
25
|
reset: string;
|
|
25
26
|
cursor: {
|
|
26
|
-
up: (count?: number) => string;
|
|
27
|
-
down: (count?: number) => string;
|
|
28
|
-
forward: (count?: number) => string;
|
|
29
|
-
backward: (count?: number) => string;
|
|
30
|
-
nextLine: (count?: number) => string;
|
|
31
|
-
prevLine: (count?: number) => string;
|
|
27
|
+
up: (count?: number | undefined) => string;
|
|
28
|
+
down: (count?: number | undefined) => string;
|
|
29
|
+
forward: (count?: number | undefined) => string;
|
|
30
|
+
backward: (count?: number | undefined) => string;
|
|
31
|
+
nextLine: (count?: number | undefined) => string;
|
|
32
|
+
prevLine: (count?: number | undefined) => string;
|
|
32
33
|
x: (x: number) => string;
|
|
33
34
|
save: string;
|
|
34
35
|
restore: string;
|
|
@@ -62,8 +63,8 @@ declare const ansi: typeof $ansi.makeAnsi & import("./sgr").SGR & {
|
|
|
62
63
|
};
|
|
63
64
|
};
|
|
64
65
|
scroll: {
|
|
65
|
-
up: (lines?: number) => string;
|
|
66
|
-
down: (lines?: number) => string;
|
|
66
|
+
up: (lines?: number | undefined) => string;
|
|
67
|
+
down: (lines?: number | undefined) => string;
|
|
67
68
|
};
|
|
68
69
|
terminal: {
|
|
69
70
|
focusReporting: {
|
|
@@ -89,6 +90,7 @@ declare const ansi: typeof $ansi.makeAnsi & import("./sgr").SGR & {
|
|
|
89
90
|
};
|
|
90
91
|
padEnd: (text: string, targetLength: number, fillString?: string) => string;
|
|
91
92
|
padStart: (text: string, targetLength: number, fillString?: string) => string;
|
|
93
|
+
splitAt: typeof $ansi.splitAt;
|
|
92
94
|
strip: (text: string) => string;
|
|
93
95
|
visibleLength: (text: string) => number;
|
|
94
96
|
};
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/require.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAC;AAEhC,OAAO,WAAW,IAAI,CAAC;IACtB,KAAY,IAAI,GAAG,OAAO,SAAS,EAAE,IAAI,CAAC;CAC1C;AAID,QAAA,MAAM,IAAI
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/require.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAC;AAEhC,OAAO,WAAW,IAAI,CAAC;IACtB,KAAY,IAAI,GAAG,OAAO,SAAS,EAAE,IAAI,CAAC;CAC1C;AAID,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAkC,CAAC;AAE7C,SAAS,IAAI,CAAC"}
|
package/dist/cjs/scroll.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare const scroll: {
|
|
2
|
-
up: (lines?: number) => string;
|
|
3
|
-
down: (lines?: number) => string;
|
|
2
|
+
up: (lines?: number | undefined) => string;
|
|
3
|
+
down: (lines?: number | undefined) => string;
|
|
4
4
|
};
|
|
5
5
|
export type Scroll = typeof scroll;
|
|
6
6
|
export declare const makeScroll: (enabled?: boolean) => Scroll;
|
package/dist/cjs/scroll.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../src/scroll.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../src/scroll.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM;;;CAGX,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC;AAOnC,eAAO,MAAM,UAAU,GAAI,iBAAc,KAAG,MAAqC,CAAC"}
|
package/dist/cjs/scroll.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeScroll = void 0;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
4
5
|
const scroll = {
|
|
5
|
-
up: (
|
|
6
|
-
down: (
|
|
6
|
+
up: (0, utils_1.count)("S"),
|
|
7
|
+
down: (0, utils_1.count)("T"),
|
|
7
8
|
};
|
|
8
9
|
const disabled = {
|
|
9
|
-
up:
|
|
10
|
-
down:
|
|
10
|
+
up: utils_1.noop,
|
|
11
|
+
down: utils_1.noop,
|
|
11
12
|
};
|
|
12
13
|
const makeScroll = (enabled = true) => enabled ? scroll : disabled;
|
|
13
14
|
exports.makeScroll = makeScroll;
|
package/dist/cjs/scroll.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/scroll.ts"],"names":[],"mappings":";;;AAAA,MAAM,MAAM,GAAG;IACd,EAAE,EAAK,
|
|
1
|
+
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/scroll.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAEpC,MAAM,MAAM,GAAG;IACd,EAAE,EAAK,IAAA,aAAK,EAAmB,GAAG,CAAC;IACnC,IAAI,EAAG,IAAA,aAAK,EAAmB,GAAG,CAAC;CACnC,CAAC;AAIF,MAAM,QAAQ,GAAW;IACxB,EAAE,EAAK,YAAI;IACX,IAAI,EAAG,YAAI;CACX,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,OAAO,GAAG,IAAI,EAAU,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AAArE,QAAA,UAAU,cAA2D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../../src/sgr/color/channel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../../src/sgr/color/channel.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,UAAU,EAAC,MAA6C,gBAAgB,CAAC;AACtF,OAAO,KAAK,EAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAC,MAAM,UAAU,CAAC;AAahF,wBAAgB,WAAW,CAC1B,IAAI,EAAY,WAAW,CAAC,QAAQ,CAAC,EACrC,aAAa,EAAG,aAAa,EAC7B,KAAK,EAAW,KAAK,EACrB,UAAU,EAAM,UAAU,EAC1B,OAAO,EAAS,QAAQ,GACtB,OAAO,CAmBT"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeChannel = makeChannel;
|
|
4
|
+
const utils_1 = require("../../utils");
|
|
4
5
|
const lazy_1 = require("../lazy");
|
|
5
6
|
const context_1 = require("./context");
|
|
6
7
|
const rgb_1 = require("./rgb");
|
|
@@ -20,7 +21,7 @@ function makeChannel(keys, makeFormatter, style, colorDepth, channel) {
|
|
|
20
21
|
const rtn = {
|
|
21
22
|
rgb: (0, rgb_1.makeRGB)(ctx),
|
|
22
23
|
x256: (0, rgb_1.makeX256)(ctx),
|
|
23
|
-
default: colorDepth > 1 ?
|
|
24
|
+
default: colorDepth > 1 ? (0, utils_1.csi)(close, "m") : "",
|
|
24
25
|
};
|
|
25
26
|
for (let i = 0; i < colors.length; i++) {
|
|
26
27
|
const color = colors[i];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../../src/sgr/color/channel.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../../src/sgr/color/channel.ts"],"names":[],"mappings":";;AAmBA,kCAyBC;AA5CD,uCAA8C;AAC9C,kCAA0C;AAC1C,uCAA4C;AAC5C,+BAAwC;AAKxC,MAAM,MAAM,GAAG;IACd,OAAO;IACP,KAAK;IACL,OAAO;IACP,QAAQ;IACR,MAAM;IACN,SAAS;IACT,MAAM;IACN,OAAO;CACE,CAAC;AAEX,SAAgB,WAAW,CAC1B,IAAqC,EACrC,aAA6B,EAC7B,KAAqB,EACrB,UAA0B,EAC1B,OAAwB;IAExB,MAAM,GAAG,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1E,MAAM,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAC,GAAG,GAAG,CAAC;IAEzC,MAAM,GAAG,GAAG;QACX,GAAG,EAAO,IAAA,aAAO,EAAC,GAAG,CAAC;QACtB,IAAI,EAAM,IAAA,cAAQ,EAAC,GAAG,CAAC;QACvB,OAAO,EAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,WAAG,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;KACpC,CAAC;IAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,KAAK,GAAS,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAEvE,WAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QAClD,WAAI,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,GAAG,CAAC;AACZ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-builder.d.ts","sourceRoot":"","sources":["../../../src/sgr/format-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"format-builder.d.ts","sourceRoot":"","sources":["../../../src/sgr/format-builder.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAC,YAAY,EAAsC,aAAa,EAAC,MAAM,SAAS,CAAC;AAY7F,eAAO,MAAM,iBAAiB,GAAI,WAAW,YAAY,KAAG,aAkC1D,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeFormatBuilder = void 0;
|
|
4
4
|
const props_1 = require("@peteanderson/props");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
5
6
|
const combine_1 = require("./combine");
|
|
6
7
|
const lazy_1 = require("./lazy");
|
|
7
8
|
const codeSequence = (code) => Array.isArray(code) ? code.join(';') : code;
|
|
@@ -12,8 +13,8 @@ const makeFormatBuilder = (makeChain) => function format(keys, open, close, rese
|
|
|
12
13
|
const empty = Array.isArray(open) && !open.length;
|
|
13
14
|
const openCode = empty ? "" : codeSequence(open);
|
|
14
15
|
const closeCode = empty ? "" : codeSequence(close);
|
|
15
|
-
const openSequence = empty ? "" :
|
|
16
|
-
const closeSequence = empty ? "" :
|
|
16
|
+
const openSequence = empty ? "" : (0, utils_1.csi)(openCode, "m");
|
|
17
|
+
const closeSequence = empty ? "" : (0, utils_1.csi)(closeCode, "m");
|
|
17
18
|
const reopenCode = reset && !empty ? `${closeCode};${openCode}` : openCode;
|
|
18
19
|
const rxClose = new RegExp(`(?<start>\\x1b\\[(?:\\d+;)*)${closeCode}(?<end>(?:;\\d+)*m)`, "g");
|
|
19
20
|
const replace = `$<start>${reopenCode}$<end>`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-builder.js","sourceRoot":"","sources":["../../../src/sgr/format-builder.ts"],"names":[],"mappings":";;;AAAA,+CAAiD;AACjD,uCAAuC;AACvC,iCAAoC;AAIpC,MAAM,YAAY,GAAG,CAAC,IAAU,EAAmB,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAElG,MAAM,KAAK,GAAG,CACb,SAAyB,EACzB,IAA8B,EAC9B,UAAuB,EACR,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;IAC5B,CAAC,CAAC,UAA0B;IAC5B,CAAC,CAAC,WAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;AAE3D,MAAM,iBAAiB,GAAG,CAAC,SAAuB,EAAiB,EAAE,CAC3E,SAAS,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;IACvC,MAAM,KAAK,GAAW,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC1D,MAAM,QAAQ,GAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IACtD,MAAM,SAAS,GAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,YAAY,GAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"format-builder.js","sourceRoot":"","sources":["../../../src/sgr/format-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/sgr/reset.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/sgr/reset.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,SAAS,GAAI,iBAAc,KAAG,MAAiC,CAAC"}
|
package/dist/cjs/sgr/reset.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.makeReset = void 0;
|
|
4
|
-
const
|
|
4
|
+
const utils_1 = require("../utils");
|
|
5
|
+
const makeReset = (enabled = true) => enabled ? (0, utils_1.csi)("m") : "";
|
|
5
6
|
exports.makeReset = makeReset;
|
|
6
7
|
//# sourceMappingURL=reset.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/sgr/reset.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"reset.js","sourceRoot":"","sources":["../../../src/sgr/reset.ts"],"names":[],"mappings":";;;AAAA,oCAA6B;AAEtB,MAAM,SAAS,GAAG,CAAC,OAAO,GAAG,IAAI,EAAU,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,WAAG,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAAhE,QAAA,SAAS,aAAuD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simplify.d.ts","sourceRoot":"","sources":["../../../src/simplify/simplify.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"simplify.d.ts","sourceRoot":"","sources":["../../../src/simplify/simplify.ts"],"names":[],"mappings":"AAIA,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAwB7C;AAED,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.simplify = simplify;
|
|
4
4
|
const patterns_1 = require("../patterns");
|
|
5
|
+
const utils_1 = require("../utils");
|
|
5
6
|
const state_1 = require("./state");
|
|
6
7
|
function simplify(text) {
|
|
7
8
|
// `.split` doesn't modify `lastIndex`, so no clone is necessary here.
|
|
@@ -18,7 +19,7 @@ function simplify(text) {
|
|
|
18
19
|
}
|
|
19
20
|
const newCodes = state.update(codes);
|
|
20
21
|
if (newCodes.length)
|
|
21
|
-
result +=
|
|
22
|
+
result += (0, utils_1.csi)(newCodes.join(";"), "m");
|
|
22
23
|
result += chunk;
|
|
23
24
|
}
|
|
24
25
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simplify.js","sourceRoot":"","sources":["../../../src/simplify/simplify.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"simplify.js","sourceRoot":"","sources":["../../../src/simplify/simplify.ts"],"names":[],"mappings":";;AAIA,4BAwBC;AA5BD,0CAAkC;AAClC,oCAA+B;AAC/B,mCAA8B;AAE9B,SAAgB,QAAQ,CAAC,IAAY;IACpC,sEAAsE;IACtE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAK,CAAC,CAAC;IAEhC,MAAM,KAAK,GAAI,IAAI,aAAK,EAAE,CAAC;IAC3B,IAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAExB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAI,CAAC;QACpC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,IAAM,KAAK,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QAEzB,OAAO,CAAC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACnC,6DAA6D;YAC7D,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,KAAK,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,QAAQ,CAAC,MAAM;YAClB,MAAM,IAAI,IAAA,WAAG,EAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC;IACjB,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC"}
|
package/dist/cjs/slice.d.ts
CHANGED
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export declare function scanCSI(text: string, fromStringIndex: number, visibleCount: number): {
|
|
2
|
+
index: number;
|
|
3
|
+
length: number;
|
|
4
|
+
};
|
|
5
|
+
export declare function skippedSequences(text: string, start: number, end?: number): string;
|
|
1
6
|
/**
|
|
2
7
|
* Return a slice of the given text, counting only visible characters (i.e. ignoring ANSI escape
|
|
3
8
|
* codes). The returned slice will include any ANSI escape codes from within the slice. In addition,
|
|
@@ -17,6 +22,6 @@
|
|
|
17
22
|
* of the slice as it would be if the whole string were printed. This function is intended mostly
|
|
18
23
|
* for text that contains SGR codes, but no other ANSI codes or control characters.
|
|
19
24
|
*/
|
|
20
|
-
export declare function slice(text: string, start: number, end
|
|
25
|
+
export declare function slice(text: string, start: number, end?: number): string;
|
|
21
26
|
export type Slice = typeof slice;
|
|
22
27
|
//# sourceMappingURL=slice.d.ts.map
|
package/dist/cjs/slice.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../src/slice.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"slice.d.ts","sourceRoot":"","sources":["../../src/slice.ts"],"names":[],"mappings":"AAIA,wBAAgB,OAAO,CACtB,IAAI,EAAc,MAAM,EACxB,eAAe,EAAG,MAAM,EACxB,YAAY,EAAM,MAAM,GACtB;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAsBjC;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAGlF;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CA8BvE;AAED,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC"}
|
package/dist/cjs/slice.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scanCSI = scanCSI;
|
|
4
|
+
exports.skippedSequences = skippedSequences;
|
|
3
5
|
exports.slice = slice;
|
|
4
6
|
const patterns_1 = require("./patterns");
|
|
5
7
|
const simplify_1 = require("./simplify");
|
|
@@ -49,13 +51,12 @@ function skippedSequences(text, start, end) {
|
|
|
49
51
|
function slice(text, start, end) {
|
|
50
52
|
let textVisibleLength;
|
|
51
53
|
const getVisibleLength = () => textVisibleLength ??= (0, strip_1.visibleLength)(text);
|
|
52
|
-
if (
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
}
|
|
54
|
+
if (end === undefined)
|
|
55
|
+
end = getVisibleLength();
|
|
56
|
+
if (start < 0)
|
|
57
|
+
start = Math.max(0, getVisibleLength() + start);
|
|
58
|
+
if (end < 0)
|
|
59
|
+
end = Math.max(0, getVisibleLength() + end);
|
|
59
60
|
if (start > end)
|
|
60
61
|
return "";
|
|
61
62
|
if (start === 0 && (end >= text.length || end >= getVisibleLength()))
|
package/dist/cjs/slice.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../src/slice.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"slice.js","sourceRoot":"","sources":["../../src/slice.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Split a string into two parts at the given visible index (i.e., the given visible character,
|
|
3
|
+
* ignoring ANSI escape codes). The returned strings will include any ANSI escape codes from within
|
|
4
|
+
* each slice.
|
|
5
|
+
*
|
|
6
|
+
* Note that unlike {@linkcode slice}, this function doesn't, by default include any SGR codes (m)
|
|
7
|
+
* from before or after the split point. If you need to preserve the terminal state before and after
|
|
8
|
+
* the split, pass `true` for the `includeSkipped` parameter.
|
|
9
|
+
*/
|
|
10
|
+
export declare function splitAt(text: string, visibleIndex: number, includeSkipped?: boolean): [start: string, end: string];
|
|
11
|
+
export type SplitAt = typeof splitAt;
|
|
12
|
+
//# sourceMappingURL=split-at.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-at.d.ts","sourceRoot":"","sources":["../../src/split-at.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACtB,IAAI,EAAa,MAAM,EACvB,YAAY,EAAK,MAAM,EACvB,cAAc,GAAG,OAAe,GAC9B,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAwB9B;AAED,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.splitAt = splitAt;
|
|
4
|
+
const slice_1 = require("./slice");
|
|
5
|
+
/**
|
|
6
|
+
* Split a string into two parts at the given visible index (i.e., the given visible character,
|
|
7
|
+
* ignoring ANSI escape codes). The returned strings will include any ANSI escape codes from within
|
|
8
|
+
* each slice.
|
|
9
|
+
*
|
|
10
|
+
* Note that unlike {@linkcode slice}, this function doesn't, by default include any SGR codes (m)
|
|
11
|
+
* from before or after the split point. If you need to preserve the terminal state before and after
|
|
12
|
+
* the split, pass `true` for the `includeSkipped` parameter.
|
|
13
|
+
*/
|
|
14
|
+
function splitAt(text, visibleIndex, includeSkipped = false) {
|
|
15
|
+
if (!visibleIndex)
|
|
16
|
+
return ["", text];
|
|
17
|
+
if (visibleIndex < 0)
|
|
18
|
+
throw new Error("visibleIndex must be non-negative");
|
|
19
|
+
if (visibleIndex > text.length)
|
|
20
|
+
return [text, ""];
|
|
21
|
+
const { index } = (0, slice_1.scanCSI)(text, 0, visibleIndex);
|
|
22
|
+
if (index === text.length)
|
|
23
|
+
return [text, ""];
|
|
24
|
+
let start = text.slice(0, index);
|
|
25
|
+
let end = text.slice(index);
|
|
26
|
+
if (includeSkipped) {
|
|
27
|
+
start += (0, slice_1.skippedSequences)(text, index);
|
|
28
|
+
end = (0, slice_1.skippedSequences)(text, 0, index) + end;
|
|
29
|
+
}
|
|
30
|
+
return [start, end];
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=split-at.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-at.js","sourceRoot":"","sources":["../../src/split-at.ts"],"names":[],"mappings":";;AAaA,0BA4BC;AAzCD,mCAAkD;AAIlD;;;;;;;;GAQG;AACH,SAAgB,OAAO,CACtB,IAAuB,EACvB,YAAuB,EACvB,iBAA2B,KAAK;IAEhC,IAAI,CAAC,YAAY;QAChB,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAEnB,IAAI,YAAY,GAAG,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAEtD,IAAI,YAAY,GAAG,IAAI,CAAC,MAAM;QAC7B,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEnB,MAAM,EAAC,KAAK,EAAC,GAAG,IAAA,eAAO,EAAC,IAAI,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC;IAE/C,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM;QACxB,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAEnB,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACjC,IAAI,GAAG,GAAK,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAE9B,IAAI,cAAc,EAAE,CAAC;QACpB,KAAK,IAAI,IAAA,wBAAgB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACvC,GAAG,GAAM,IAAA,wBAAgB,EAAC,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC;IACjD,CAAC;IAED,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACrB,CAAC"}
|