@mariozechner/pi-tui 0.7.27 → 0.7.29
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/dist/components/truncated-text.d.ts +12 -0
- package/dist/components/truncated-text.d.ts.map +1 -0
- package/dist/components/truncated-text.js +63 -0
- package/dist/components/truncated-text.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Component } from "../tui.js";
|
|
2
|
+
/**
|
|
3
|
+
* Text component that truncates to fit viewport width
|
|
4
|
+
*/
|
|
5
|
+
export declare class TruncatedText implements Component {
|
|
6
|
+
private text;
|
|
7
|
+
private paddingX;
|
|
8
|
+
private paddingY;
|
|
9
|
+
constructor(text: string, paddingX?: number, paddingY?: number);
|
|
10
|
+
render(width: number): string[];
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=truncated-text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"truncated-text.d.ts","sourceRoot":"","sources":["../../src/components/truncated-text.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAG3C;;GAEG;AACH,qBAAa,aAAc,YAAW,SAAS;IAC9C,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IAEzB,YAAY,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,QAAQ,GAAE,MAAU,EAInE;IAED,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CA2D9B;CACD","sourcesContent":["import type { Component } from \"../tui.js\";\nimport { visibleWidth } from \"../utils.js\";\n\n/**\n * Text component that truncates to fit viewport width\n */\nexport class TruncatedText implements Component {\n\tprivate text: string;\n\tprivate paddingX: number;\n\tprivate paddingY: number;\n\n\tconstructor(text: string, paddingX: number = 0, paddingY: number = 0) {\n\t\tthis.text = text;\n\t\tthis.paddingX = paddingX;\n\t\tthis.paddingY = paddingY;\n\t}\n\n\trender(width: number): string[] {\n\t\tconst result: string[] = [];\n\n\t\t// Add vertical padding above\n\t\tfor (let i = 0; i < this.paddingY; i++) {\n\t\t\tresult.push(\"\");\n\t\t}\n\n\t\t// Calculate available width after horizontal padding\n\t\tconst availableWidth = Math.max(1, width - this.paddingX * 2);\n\n\t\t// Truncate text if needed (accounting for ANSI codes)\n\t\tlet displayText = this.text;\n\t\tconst textVisibleWidth = visibleWidth(this.text);\n\n\t\tif (textVisibleWidth > availableWidth) {\n\t\t\t// Need to truncate - walk through the string character by character\n\t\t\tlet currentWidth = 0;\n\t\t\tlet truncateAt = 0;\n\t\t\tlet i = 0;\n\t\t\tconst ellipsisWidth = 3;\n\t\t\tconst targetWidth = availableWidth - ellipsisWidth;\n\n\t\t\twhile (i < this.text.length && currentWidth < targetWidth) {\n\t\t\t\t// Skip ANSI escape sequences\n\t\t\t\tif (this.text[i] === \"\\x1b\" && this.text[i + 1] === \"[\") {\n\t\t\t\t\tlet j = i + 2;\n\t\t\t\t\twhile (j < this.text.length && !/[a-zA-Z]/.test(this.text[j])) {\n\t\t\t\t\t\tj++;\n\t\t\t\t\t}\n\t\t\t\t\ti = j + 1;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst char = this.text[i];\n\t\t\t\tconst charWidth = visibleWidth(char);\n\n\t\t\t\tif (currentWidth + charWidth > targetWidth) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tcurrentWidth += charWidth;\n\t\t\t\ttruncateAt = i + 1;\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\tdisplayText = this.text.substring(0, truncateAt) + \"...\";\n\t\t}\n\n\t\t// Add horizontal padding\n\t\tconst paddingStr = \" \".repeat(this.paddingX);\n\t\tresult.push(paddingStr + displayText);\n\n\t\t// Add vertical padding below\n\t\tfor (let i = 0; i < this.paddingY; i++) {\n\t\t\tresult.push(\"\");\n\t\t}\n\n\t\treturn result;\n\t}\n}\n"]}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { visibleWidth } from "../utils.js";
|
|
2
|
+
/**
|
|
3
|
+
* Text component that truncates to fit viewport width
|
|
4
|
+
*/
|
|
5
|
+
export class TruncatedText {
|
|
6
|
+
text;
|
|
7
|
+
paddingX;
|
|
8
|
+
paddingY;
|
|
9
|
+
constructor(text, paddingX = 0, paddingY = 0) {
|
|
10
|
+
this.text = text;
|
|
11
|
+
this.paddingX = paddingX;
|
|
12
|
+
this.paddingY = paddingY;
|
|
13
|
+
}
|
|
14
|
+
render(width) {
|
|
15
|
+
const result = [];
|
|
16
|
+
// Add vertical padding above
|
|
17
|
+
for (let i = 0; i < this.paddingY; i++) {
|
|
18
|
+
result.push("");
|
|
19
|
+
}
|
|
20
|
+
// Calculate available width after horizontal padding
|
|
21
|
+
const availableWidth = Math.max(1, width - this.paddingX * 2);
|
|
22
|
+
// Truncate text if needed (accounting for ANSI codes)
|
|
23
|
+
let displayText = this.text;
|
|
24
|
+
const textVisibleWidth = visibleWidth(this.text);
|
|
25
|
+
if (textVisibleWidth > availableWidth) {
|
|
26
|
+
// Need to truncate - walk through the string character by character
|
|
27
|
+
let currentWidth = 0;
|
|
28
|
+
let truncateAt = 0;
|
|
29
|
+
let i = 0;
|
|
30
|
+
const ellipsisWidth = 3;
|
|
31
|
+
const targetWidth = availableWidth - ellipsisWidth;
|
|
32
|
+
while (i < this.text.length && currentWidth < targetWidth) {
|
|
33
|
+
// Skip ANSI escape sequences
|
|
34
|
+
if (this.text[i] === "\x1b" && this.text[i + 1] === "[") {
|
|
35
|
+
let j = i + 2;
|
|
36
|
+
while (j < this.text.length && !/[a-zA-Z]/.test(this.text[j])) {
|
|
37
|
+
j++;
|
|
38
|
+
}
|
|
39
|
+
i = j + 1;
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
42
|
+
const char = this.text[i];
|
|
43
|
+
const charWidth = visibleWidth(char);
|
|
44
|
+
if (currentWidth + charWidth > targetWidth) {
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
currentWidth += charWidth;
|
|
48
|
+
truncateAt = i + 1;
|
|
49
|
+
i++;
|
|
50
|
+
}
|
|
51
|
+
displayText = this.text.substring(0, truncateAt) + "...";
|
|
52
|
+
}
|
|
53
|
+
// Add horizontal padding
|
|
54
|
+
const paddingStr = " ".repeat(this.paddingX);
|
|
55
|
+
result.push(paddingStr + displayText);
|
|
56
|
+
// Add vertical padding below
|
|
57
|
+
for (let i = 0; i < this.paddingY; i++) {
|
|
58
|
+
result.push("");
|
|
59
|
+
}
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=truncated-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"truncated-text.js","sourceRoot":"","sources":["../../src/components/truncated-text.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Component } from \"../tui.js\";\nimport { visibleWidth } from \"../utils.js\";\n\n/**\n * Text component that truncates to fit viewport width\n */\nexport class TruncatedText implements Component {\n\tprivate text: string;\n\tprivate paddingX: number;\n\tprivate paddingY: number;\n\n\tconstructor(text: string, paddingX: number = 0, paddingY: number = 0) {\n\t\tthis.text = text;\n\t\tthis.paddingX = paddingX;\n\t\tthis.paddingY = paddingY;\n\t}\n\n\trender(width: number): string[] {\n\t\tconst result: string[] = [];\n\n\t\t// Add vertical padding above\n\t\tfor (let i = 0; i < this.paddingY; i++) {\n\t\t\tresult.push(\"\");\n\t\t}\n\n\t\t// Calculate available width after horizontal padding\n\t\tconst availableWidth = Math.max(1, width - this.paddingX * 2);\n\n\t\t// Truncate text if needed (accounting for ANSI codes)\n\t\tlet displayText = this.text;\n\t\tconst textVisibleWidth = visibleWidth(this.text);\n\n\t\tif (textVisibleWidth > availableWidth) {\n\t\t\t// Need to truncate - walk through the string character by character\n\t\t\tlet currentWidth = 0;\n\t\t\tlet truncateAt = 0;\n\t\t\tlet i = 0;\n\t\t\tconst ellipsisWidth = 3;\n\t\t\tconst targetWidth = availableWidth - ellipsisWidth;\n\n\t\t\twhile (i < this.text.length && currentWidth < targetWidth) {\n\t\t\t\t// Skip ANSI escape sequences\n\t\t\t\tif (this.text[i] === \"\\x1b\" && this.text[i + 1] === \"[\") {\n\t\t\t\t\tlet j = i + 2;\n\t\t\t\t\twhile (j < this.text.length && !/[a-zA-Z]/.test(this.text[j])) {\n\t\t\t\t\t\tj++;\n\t\t\t\t\t}\n\t\t\t\t\ti = j + 1;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst char = this.text[i];\n\t\t\t\tconst charWidth = visibleWidth(char);\n\n\t\t\t\tif (currentWidth + charWidth > targetWidth) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tcurrentWidth += charWidth;\n\t\t\t\ttruncateAt = i + 1;\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\tdisplayText = this.text.substring(0, truncateAt) + \"...\";\n\t\t}\n\n\t\t// Add horizontal padding\n\t\tconst paddingStr = \" \".repeat(this.paddingX);\n\t\tresult.push(paddingStr + displayText);\n\n\t\t// Add vertical padding below\n\t\tfor (let i = 0; i < this.paddingY; i++) {\n\t\t\tresult.push(\"\");\n\t\t}\n\n\t\treturn result;\n\t}\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { Markdown } from "./components/markdown.js";
|
|
|
6
6
|
export { type SelectItem, SelectList } from "./components/select-list.js";
|
|
7
7
|
export { Spacer } from "./components/spacer.js";
|
|
8
8
|
export { Text } from "./components/text.js";
|
|
9
|
+
export { TruncatedText } from "./components/truncated-text.js";
|
|
9
10
|
export { ProcessTerminal, type Terminal } from "./terminal.js";
|
|
10
11
|
export { type Component, Container, TUI } from "./tui.js";
|
|
11
12
|
export { visibleWidth } from "./utils.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,KAAK,YAAY,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,MAAM,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EACN,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EACzB,4BAA4B,EAC5B,KAAK,YAAY,GACjB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,MAAM,EAAE,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,eAAe,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,KAAK,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC","sourcesContent":["// Core TUI interfaces and classes\n\n// Autocomplete support\nexport {\n\ttype AutocompleteItem,\n\ttype AutocompleteProvider,\n\tCombinedAutocompleteProvider,\n\ttype SlashCommand,\n} from \"./autocomplete.js\";\n// Components\nexport { Editor, type TextEditorConfig } from \"./components/editor.js\";\nexport { Input } from \"./components/input.js\";\nexport { Loader } from \"./components/loader.js\";\nexport { Markdown } from \"./components/markdown.js\";\nexport { type SelectItem, SelectList } from \"./components/select-list.js\";\nexport { Spacer } from \"./components/spacer.js\";\nexport { Text } from \"./components/text.js\";\nexport { TruncatedText } from \"./components/truncated-text.js\";\n// Terminal interface and implementations\nexport { ProcessTerminal, type Terminal } from \"./terminal.js\";\nexport { type Component, Container, TUI } from \"./tui.js\";\n// Utilities\nexport { visibleWidth } from \"./utils.js\";\n"]}
|
package/dist/index.js
CHANGED
|
@@ -9,6 +9,7 @@ export { Markdown } from "./components/markdown.js";
|
|
|
9
9
|
export { SelectList } from "./components/select-list.js";
|
|
10
10
|
export { Spacer } from "./components/spacer.js";
|
|
11
11
|
export { Text } from "./components/text.js";
|
|
12
|
+
export { TruncatedText } from "./components/truncated-text.js";
|
|
12
13
|
// Terminal interface and implementations
|
|
13
14
|
export { ProcessTerminal } from "./terminal.js";
|
|
14
15
|
export { Container, TUI } from "./tui.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,uBAAuB;AACvB,OAAO,EAGN,4BAA4B,GAE5B,MAAM,mBAAmB,CAAC;AAC3B,aAAa;AACb,OAAO,EAAE,MAAM,EAAyB,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAmB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAkB,SAAS,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1D,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC","sourcesContent":["// Core TUI interfaces and classes\n\n// Autocomplete support\nexport {\n\ttype AutocompleteItem,\n\ttype AutocompleteProvider,\n\tCombinedAutocompleteProvider,\n\ttype SlashCommand,\n} from \"./autocomplete.js\";\n// Components\nexport { Editor, type TextEditorConfig } from \"./components/editor.js\";\nexport { Input } from \"./components/input.js\";\nexport { Loader } from \"./components/loader.js\";\nexport { Markdown } from \"./components/markdown.js\";\nexport { type SelectItem, SelectList } from \"./components/select-list.js\";\nexport { Spacer } from \"./components/spacer.js\";\nexport { Text } from \"./components/text.js\";\n// Terminal interface and implementations\nexport { ProcessTerminal, type Terminal } from \"./terminal.js\";\nexport { type Component, Container, TUI } from \"./tui.js\";\n// Utilities\nexport { visibleWidth } from \"./utils.js\";\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,uBAAuB;AACvB,OAAO,EAGN,4BAA4B,GAE5B,MAAM,mBAAmB,CAAC;AAC3B,aAAa;AACb,OAAO,EAAE,MAAM,EAAyB,MAAM,wBAAwB,CAAC;AACvE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAmB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,yCAAyC;AACzC,OAAO,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAkB,SAAS,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC1D,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC","sourcesContent":["// Core TUI interfaces and classes\n\n// Autocomplete support\nexport {\n\ttype AutocompleteItem,\n\ttype AutocompleteProvider,\n\tCombinedAutocompleteProvider,\n\ttype SlashCommand,\n} from \"./autocomplete.js\";\n// Components\nexport { Editor, type TextEditorConfig } from \"./components/editor.js\";\nexport { Input } from \"./components/input.js\";\nexport { Loader } from \"./components/loader.js\";\nexport { Markdown } from \"./components/markdown.js\";\nexport { type SelectItem, SelectList } from \"./components/select-list.js\";\nexport { Spacer } from \"./components/spacer.js\";\nexport { Text } from \"./components/text.js\";\nexport { TruncatedText } from \"./components/truncated-text.js\";\n// Terminal interface and implementations\nexport { ProcessTerminal, type Terminal } from \"./terminal.js\";\nexport { type Component, Container, TUI } from \"./tui.js\";\n// Utilities\nexport { visibleWidth } from \"./utils.js\";\n"]}
|
package/package.json
CHANGED