@task-mcp/shared 1.0.9 → 1.0.10
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/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +18 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/terminal-ui.d.ts +203 -0
- package/dist/utils/terminal-ui.d.ts.map +1 -0
- package/dist/utils/terminal-ui.js +534 -0
- package/dist/utils/terminal-ui.js.map +1 -0
- package/package.json +1 -1
- package/src/utils/index.ts +44 -0
- package/src/utils/terminal-ui.ts +706 -0
package/dist/utils/index.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ export { now, parseRelativeDate, formatDate, formatDisplayDate, isToday, isPastD
|
|
|
3
3
|
export { parseTaskInput, parseInboxInput, parseInput, type ParseTarget, type ParsedInput } from "./natural-language.js";
|
|
4
4
|
export { MAX_HIERARCHY_DEPTH, getTaskLevel, validateHierarchyDepth, getAncestorIds, getDescendantIds, getChildTasks, getRootTask, buildTaskTree, type TaskTreeNode, } from "./hierarchy.js";
|
|
5
5
|
export { projectTask, projectTasks, projectTasksPaginated, projectProject, projectProjects, projectInboxItem, projectInboxItems, formatResponse, applyPagination, truncate, summarizeList, } from "./projection.js";
|
|
6
|
+
export { color, style, styled, c, BOX, box, drawBox, hline, stripAnsi, displayWidth, visibleLength, pad, padEnd, padStart, center, truncateStr, progressBar, type ProgressBarOptions, sideBySide, sideBySideArrays, type BoxOptions, table, renderTable, type TableColumn, statusColors, statusIcons, icons, formatStatus, priorityColors, formatPriority, formatDependencies, banner, } from "./terminal-ui.js";
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,cAAc,EAEd,cAAc,EACd,KAAK,kBAAkB,EACvB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACpH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,QAAQ,EACR,aAAa,GACd,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,cAAc,EAEd,cAAc,EACd,KAAK,kBAAkB,EACvB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACpH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,EACb,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,QAAQ,EACR,aAAa,GACd,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAEL,KAAK,EACL,KAAK,EACL,MAAM,EACN,CAAC,EAED,GAAG,EACH,GAAG,EACH,OAAO,EACP,KAAK,EAEL,SAAS,EACT,YAAY,EACZ,aAAa,EACb,GAAG,EACH,MAAM,EACN,QAAQ,EACR,MAAM,EACN,WAAW,EAEX,WAAW,EACX,KAAK,kBAAkB,EAEvB,UAAU,EACV,gBAAgB,EAChB,KAAK,UAAU,EAEf,KAAK,EACL,WAAW,EACX,KAAK,WAAW,EAEhB,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,kBAAkB,EAElB,MAAM,GACP,MAAM,kBAAkB,CAAC"}
|
package/dist/utils/index.js
CHANGED
|
@@ -6,4 +6,22 @@ export { parseTaskInput, parseInboxInput, parseInput } from "./natural-language.
|
|
|
6
6
|
export { MAX_HIERARCHY_DEPTH, getTaskLevel, validateHierarchyDepth, getAncestorIds, getDescendantIds, getChildTasks, getRootTask, buildTaskTree, } from "./hierarchy.js";
|
|
7
7
|
// Projection utilities (token optimization)
|
|
8
8
|
export { projectTask, projectTasks, projectTasksPaginated, projectProject, projectProjects, projectInboxItem, projectInboxItems, formatResponse, applyPagination, truncate, summarizeList, } from "./projection.js";
|
|
9
|
+
// Terminal UI utilities
|
|
10
|
+
export {
|
|
11
|
+
// Colors and styles
|
|
12
|
+
color, style, styled, c,
|
|
13
|
+
// Box drawing
|
|
14
|
+
BOX, box, drawBox, hline,
|
|
15
|
+
// String utilities
|
|
16
|
+
stripAnsi, displayWidth, visibleLength, pad, padEnd, padStart, center, truncateStr,
|
|
17
|
+
// Progress bar
|
|
18
|
+
progressBar,
|
|
19
|
+
// Layout
|
|
20
|
+
sideBySide, sideBySideArrays,
|
|
21
|
+
// Tables
|
|
22
|
+
table, renderTable,
|
|
23
|
+
// Formatters
|
|
24
|
+
statusColors, statusIcons, icons, formatStatus, priorityColors, formatPriority, formatDependencies,
|
|
25
|
+
// Banner
|
|
26
|
+
banner, } from "./terminal-ui.js";
|
|
9
27
|
//# sourceMappingURL=index.js.map
|
package/dist/utils/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,cAAc;AACd,uDAAuD;AACvD,cAAc,EAEd,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACpH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAsC,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,GAEd,MAAM,gBAAgB,CAAC;AAExB,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,QAAQ,EACR,aAAa,GACd,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,cAAc;AACd,uDAAuD;AACvD,cAAc,EAEd,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACpH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAsC,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,GAEd,MAAM,gBAAgB,CAAC;AAExB,4CAA4C;AAC5C,OAAO,EACL,WAAW,EACX,YAAY,EACZ,qBAAqB,EACrB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,QAAQ,EACR,aAAa,GACd,MAAM,iBAAiB,CAAC;AAEzB,wBAAwB;AACxB,OAAO;AACL,oBAAoB;AACpB,KAAK,EACL,KAAK,EACL,MAAM,EACN,CAAC;AACD,cAAc;AACd,GAAG,EACH,GAAG,EACH,OAAO,EACP,KAAK;AACL,mBAAmB;AACnB,SAAS,EACT,YAAY,EACZ,aAAa,EACb,GAAG,EACH,MAAM,EACN,QAAQ,EACR,MAAM,EACN,WAAW;AACX,eAAe;AACf,WAAW;AAEX,SAAS;AACT,UAAU,EACV,gBAAgB;AAEhB,SAAS;AACT,KAAK,EACL,WAAW;AAEX,aAAa;AACb,YAAY,EACZ,WAAW,EACX,KAAK,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,kBAAkB;AAClB,SAAS;AACT,MAAM,GACP,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Terminal UI utilities for task-mcp
|
|
3
|
+
* Zero-dependency ANSI colors, box drawing, and layout helpers
|
|
4
|
+
* Supports CJK (Korean, Chinese, Japanese) character width calculation
|
|
5
|
+
*/
|
|
6
|
+
declare const FG: {
|
|
7
|
+
readonly black: 30;
|
|
8
|
+
readonly red: 31;
|
|
9
|
+
readonly green: 32;
|
|
10
|
+
readonly yellow: 33;
|
|
11
|
+
readonly blue: 34;
|
|
12
|
+
readonly magenta: 35;
|
|
13
|
+
readonly cyan: 36;
|
|
14
|
+
readonly white: 37;
|
|
15
|
+
readonly gray: 90;
|
|
16
|
+
readonly brightRed: 91;
|
|
17
|
+
readonly brightGreen: 92;
|
|
18
|
+
readonly brightYellow: 93;
|
|
19
|
+
readonly brightBlue: 94;
|
|
20
|
+
readonly brightMagenta: 95;
|
|
21
|
+
readonly brightCyan: 96;
|
|
22
|
+
readonly brightWhite: 97;
|
|
23
|
+
};
|
|
24
|
+
declare const STYLE: {
|
|
25
|
+
readonly bold: 1;
|
|
26
|
+
readonly dim: 2;
|
|
27
|
+
readonly italic: 3;
|
|
28
|
+
readonly underline: 4;
|
|
29
|
+
readonly inverse: 7;
|
|
30
|
+
readonly strikethrough: 9;
|
|
31
|
+
};
|
|
32
|
+
type ColorName = keyof typeof FG;
|
|
33
|
+
type StyleName = keyof typeof STYLE;
|
|
34
|
+
/**
|
|
35
|
+
* Apply color to text
|
|
36
|
+
*/
|
|
37
|
+
export declare function color(text: string, colorName: ColorName): string;
|
|
38
|
+
/**
|
|
39
|
+
* Apply style to text
|
|
40
|
+
*/
|
|
41
|
+
export declare function style(text: string, styleName: StyleName): string;
|
|
42
|
+
/**
|
|
43
|
+
* Combine color and style
|
|
44
|
+
*/
|
|
45
|
+
export declare function styled(text: string, colorName: ColorName, styleName?: StyleName): string;
|
|
46
|
+
export declare const c: {
|
|
47
|
+
reset: (s: string) => string;
|
|
48
|
+
bold: (s: string) => string;
|
|
49
|
+
dim: (s: string) => string;
|
|
50
|
+
italic: (s: string) => string;
|
|
51
|
+
underline: (s: string) => string;
|
|
52
|
+
black: (s: string) => string;
|
|
53
|
+
red: (s: string) => string;
|
|
54
|
+
green: (s: string) => string;
|
|
55
|
+
yellow: (s: string) => string;
|
|
56
|
+
blue: (s: string) => string;
|
|
57
|
+
magenta: (s: string) => string;
|
|
58
|
+
cyan: (s: string) => string;
|
|
59
|
+
white: (s: string) => string;
|
|
60
|
+
gray: (s: string) => string;
|
|
61
|
+
brightRed: (s: string) => string;
|
|
62
|
+
brightGreen: (s: string) => string;
|
|
63
|
+
brightYellow: (s: string) => string;
|
|
64
|
+
brightBlue: (s: string) => string;
|
|
65
|
+
brightMagenta: (s: string) => string;
|
|
66
|
+
brightCyan: (s: string) => string;
|
|
67
|
+
brightWhite: (s: string) => string;
|
|
68
|
+
success: (s: string) => string;
|
|
69
|
+
error: (s: string) => string;
|
|
70
|
+
warning: (s: string) => string;
|
|
71
|
+
info: (s: string) => string;
|
|
72
|
+
muted: (s: string) => string;
|
|
73
|
+
highlight: (s: string) => string;
|
|
74
|
+
label: (s: string) => string;
|
|
75
|
+
title: (s: string) => string;
|
|
76
|
+
value: (s: string) => string;
|
|
77
|
+
};
|
|
78
|
+
export declare const BOX: {
|
|
79
|
+
readonly topLeft: "┌";
|
|
80
|
+
readonly topRight: "┐";
|
|
81
|
+
readonly bottomLeft: "└";
|
|
82
|
+
readonly bottomRight: "┘";
|
|
83
|
+
readonly horizontal: "─";
|
|
84
|
+
readonly vertical: "│";
|
|
85
|
+
readonly teeRight: "├";
|
|
86
|
+
readonly teeLeft: "┤";
|
|
87
|
+
readonly teeDown: "┬";
|
|
88
|
+
readonly teeUp: "┴";
|
|
89
|
+
readonly cross: "┼";
|
|
90
|
+
readonly dblTopLeft: "╔";
|
|
91
|
+
readonly dblTopRight: "╗";
|
|
92
|
+
readonly dblBottomLeft: "╚";
|
|
93
|
+
readonly dblBottomRight: "╝";
|
|
94
|
+
readonly dblHorizontal: "═";
|
|
95
|
+
readonly dblVertical: "║";
|
|
96
|
+
readonly rTopLeft: "╭";
|
|
97
|
+
readonly rTopRight: "╮";
|
|
98
|
+
readonly rBottomLeft: "╰";
|
|
99
|
+
readonly rBottomRight: "╯";
|
|
100
|
+
};
|
|
101
|
+
/**
|
|
102
|
+
* Strip all ANSI escape codes from string
|
|
103
|
+
*/
|
|
104
|
+
export declare function stripAnsi(str: string): string;
|
|
105
|
+
/**
|
|
106
|
+
* Get display width of string (excluding ANSI codes, CJK = 2 columns)
|
|
107
|
+
*/
|
|
108
|
+
export declare function displayWidth(str: string): number;
|
|
109
|
+
export declare const visibleLength: typeof displayWidth;
|
|
110
|
+
/**
|
|
111
|
+
* Pad string to width (accounting for display width)
|
|
112
|
+
*/
|
|
113
|
+
export declare function pad(str: string, width: number, align?: "left" | "right" | "center"): string;
|
|
114
|
+
export declare const padEnd: (str: string, width: number) => string;
|
|
115
|
+
export declare const padStart: (str: string, width: number) => string;
|
|
116
|
+
export declare const center: (str: string, width: number) => string;
|
|
117
|
+
/**
|
|
118
|
+
* Truncate string to max display width
|
|
119
|
+
*/
|
|
120
|
+
export declare function truncateStr(str: string, maxLen: number, suffix?: string): string;
|
|
121
|
+
/**
|
|
122
|
+
* Create a horizontal line
|
|
123
|
+
*/
|
|
124
|
+
export declare function hline(width: number, char?: string): string;
|
|
125
|
+
export interface ProgressBarOptions {
|
|
126
|
+
width?: number;
|
|
127
|
+
filled?: string;
|
|
128
|
+
empty?: string;
|
|
129
|
+
showPercent?: boolean;
|
|
130
|
+
filledColor?: ColorName;
|
|
131
|
+
emptyColor?: ColorName;
|
|
132
|
+
}
|
|
133
|
+
export declare function progressBar(current: number, total: number, options?: ProgressBarOptions): string;
|
|
134
|
+
export interface BoxOptions {
|
|
135
|
+
title?: string;
|
|
136
|
+
width?: number;
|
|
137
|
+
padding?: number;
|
|
138
|
+
borderColor?: ColorName;
|
|
139
|
+
rounded?: boolean;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Create a box around content (string input, string output)
|
|
143
|
+
*/
|
|
144
|
+
export declare function box(content: string, options?: BoxOptions): string;
|
|
145
|
+
/**
|
|
146
|
+
* Draw a box around content (array input, array output)
|
|
147
|
+
* For MCP server compatibility
|
|
148
|
+
*/
|
|
149
|
+
export declare function drawBox(lines: string[], options?: BoxOptions): string[];
|
|
150
|
+
/**
|
|
151
|
+
* Place multiple boxes side by side (string input, string output)
|
|
152
|
+
*/
|
|
153
|
+
export declare function sideBySide(boxes: string[], gap?: number): string;
|
|
154
|
+
/**
|
|
155
|
+
* Merge two boxes side by side (array input, array output)
|
|
156
|
+
* For MCP server compatibility
|
|
157
|
+
*/
|
|
158
|
+
export declare function sideBySideArrays(leftLines: string[], rightLines: string[], gap?: number): string[];
|
|
159
|
+
export interface TableColumn {
|
|
160
|
+
key: string;
|
|
161
|
+
header: string;
|
|
162
|
+
width?: number;
|
|
163
|
+
align?: "left" | "center" | "right";
|
|
164
|
+
format?: (value: unknown, row?: Record<string, unknown>) => string;
|
|
165
|
+
}
|
|
166
|
+
export declare function table<T extends Record<string, unknown>>(data: T[], columns: TableColumn[], options?: {
|
|
167
|
+
headerColor?: ColorName;
|
|
168
|
+
borderColor?: ColorName;
|
|
169
|
+
}): string;
|
|
170
|
+
/**
|
|
171
|
+
* Render table with full borders (array output)
|
|
172
|
+
* For MCP server compatibility
|
|
173
|
+
*/
|
|
174
|
+
export declare function renderTable(columns: TableColumn[], rows: Record<string, unknown>[]): string[];
|
|
175
|
+
export declare const statusColors: Record<string, (s: string) => string>;
|
|
176
|
+
export declare const statusIcons: Record<string, string>;
|
|
177
|
+
export declare const icons: {
|
|
178
|
+
pending: string;
|
|
179
|
+
in_progress: string;
|
|
180
|
+
completed: string;
|
|
181
|
+
blocked: string;
|
|
182
|
+
cancelled: string;
|
|
183
|
+
critical: string;
|
|
184
|
+
high: string;
|
|
185
|
+
medium: string;
|
|
186
|
+
low: string;
|
|
187
|
+
arrow: string;
|
|
188
|
+
bullet: string;
|
|
189
|
+
check: string;
|
|
190
|
+
cross: string;
|
|
191
|
+
warning: string;
|
|
192
|
+
info: string;
|
|
193
|
+
};
|
|
194
|
+
export declare function formatStatus(status: string): string;
|
|
195
|
+
export declare const priorityColors: Record<string, (s: string) => string>;
|
|
196
|
+
export declare function formatPriority(priority: string): string;
|
|
197
|
+
export declare function formatDependencies(deps: string[]): string;
|
|
198
|
+
/**
|
|
199
|
+
* ASCII art text banner
|
|
200
|
+
*/
|
|
201
|
+
export declare function banner(text: string): string;
|
|
202
|
+
export {};
|
|
203
|
+
//# sourceMappingURL=terminal-ui.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-ui.d.ts","sourceRoot":"","sources":["../../src/utils/terminal-ui.ts"],"names":[],"mappings":"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"}
|