paean 0.8.23 → 0.8.24
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/ui/components/Header.d.ts +1 -1
- package/dist/ui/components/Header.d.ts.map +1 -1
- package/dist/ui/components/Header.js +12 -30
- package/dist/ui/components/Header.js.map +1 -1
- package/dist/ui/theme/ink-theme.d.ts.map +1 -1
- package/dist/ui/theme/ink-theme.js +4 -3
- package/dist/ui/theme/ink-theme.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Header Component
|
|
3
3
|
* Compact header with ASCII logo + status info side-by-side
|
|
4
|
-
*
|
|
4
|
+
* Logo rendered as single Text block to eliminate inter-line gaps
|
|
5
5
|
*/
|
|
6
6
|
import React from 'react';
|
|
7
7
|
interface HeaderProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Header.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,UAAU,WAAW;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;
|
|
1
|
+
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Header.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAkB,MAAM,OAAO,CAAC;AAKvC,UAAU,WAAW;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,WAAW,CA0CxC,CAAC"}
|
|
@@ -2,21 +2,22 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
/**
|
|
3
3
|
* Header Component
|
|
4
4
|
* Compact header with ASCII logo + status info side-by-side
|
|
5
|
-
*
|
|
5
|
+
* Logo rendered as single Text block to eliminate inter-line gaps
|
|
6
6
|
*/
|
|
7
7
|
import { useMemo } from 'react';
|
|
8
8
|
import { Box, Text } from 'ink';
|
|
9
9
|
import { ASCII_LOGO_LINES, INK_COLORS, SEPARATOR_CHAR } from '../theme/ink-theme.js';
|
|
10
10
|
import { useTerminalSize } from '../hooks/index.js';
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
//
|
|
19
|
-
const
|
|
11
|
+
export const Header = ({ mcpToolCount, gatewayOnline, workerOnline }) => {
|
|
12
|
+
const { columns } = useTerminalSize();
|
|
13
|
+
const separatorLine = useMemo(() => {
|
|
14
|
+
const width = Math.max(0, columns - 2);
|
|
15
|
+
return SEPARATOR_CHAR.repeat(width);
|
|
16
|
+
}, [columns]);
|
|
17
|
+
// Join logo lines into a single string so Ink renders them as one text
|
|
18
|
+
// block with no inter-line layout gaps
|
|
19
|
+
const logoBlock = ASCII_LOGO_LINES.join('\n');
|
|
20
|
+
// Build status badges
|
|
20
21
|
const badges = [];
|
|
21
22
|
if (mcpToolCount && mcpToolCount > 0)
|
|
22
23
|
badges.push(`⚡ ${mcpToolCount} tools`);
|
|
@@ -24,26 +25,7 @@ function buildInfoLines(props) {
|
|
|
24
25
|
badges.push('⬡ Gateway');
|
|
25
26
|
if (workerOnline)
|
|
26
27
|
badges.push('⚙ Worker');
|
|
27
|
-
if (badges.length > 0) {
|
|
28
|
-
line2.push({ text: badges.join(' · '), color: 'green' });
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
line2.push({ text: 'Interactive Agent Session', dimColor: true });
|
|
32
|
-
}
|
|
33
|
-
// Line 3: cwd
|
|
34
28
|
const cwd = process.cwd().replace(process.env['HOME'] ?? '', '~');
|
|
35
|
-
|
|
36
|
-
{ text: cwd, dimColor: true },
|
|
37
|
-
];
|
|
38
|
-
return [line1, line2, line3];
|
|
39
|
-
}
|
|
40
|
-
export const Header = (props) => {
|
|
41
|
-
const { columns } = useTerminalSize();
|
|
42
|
-
const separatorLine = useMemo(() => {
|
|
43
|
-
const width = Math.max(0, columns - 2);
|
|
44
|
-
return SEPARATOR_CHAR.repeat(width);
|
|
45
|
-
}, [columns]);
|
|
46
|
-
const infoLines = buildInfoLines(props);
|
|
47
|
-
return (_jsxs(Box, { flexDirection: "column", marginBottom: 0, children: [ASCII_LOGO_LINES.map((logoLine, i) => (_jsxs(Box, { children: [_jsx(Text, { color: INK_COLORS.primary, children: logoLine }), _jsx(Text, { children: " " }), infoLines[i]?.map((seg, j) => (_jsx(Text, { color: seg.color, bold: seg.bold, dimColor: seg.dimColor, children: seg.text }, j)))] }, i))), _jsx(Box, { children: _jsx(Text, { color: "gray", children: separatorLine }) })] }));
|
|
29
|
+
return (_jsxs(Box, { flexDirection: "column", marginBottom: 0, children: [_jsxs(Box, { children: [_jsx(Text, { color: INK_COLORS.primary, children: logoBlock }), _jsxs(Box, { flexDirection: "column", marginLeft: 2, children: [_jsx(Text, { bold: true, children: "Paean Agent CLI" }), badges.length > 0 ? (_jsx(Text, { color: "green", children: badges.join(' · ') })) : (_jsx(Text, { dimColor: true, children: "Interactive Agent Session" })), _jsx(Text, { dimColor: true, children: cwd })] })] }), _jsx(Box, { children: _jsx(Text, { color: "gray", children: separatorLine }) })] }));
|
|
48
30
|
};
|
|
49
31
|
//# sourceMappingURL=Header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/ui/components/Header.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAUpD,
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/ui/components/Header.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAc,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAUpD,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,EAAE,EAAE;IAC3F,MAAM,EAAE,OAAO,EAAE,GAAG,eAAe,EAAE,CAAC;IAEtC,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;QACvC,OAAO,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,uEAAuE;IACvE,uCAAuC;IACvC,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE9C,sBAAsB;IACtB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,YAAY,IAAI,YAAY,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,YAAY,QAAQ,CAAC,CAAC;IAC7E,IAAI,aAAa;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,YAAY;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IAElE,OAAO,CACH,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aAEvC,MAAC,GAAG,eACA,KAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,OAAO,YAAG,SAAS,GAAQ,EACnD,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,aACrC,KAAC,IAAI,IAAC,IAAI,sCAAuB,EAChC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CACjB,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,YAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAQ,CAClD,CAAC,CAAC,CAAC,CACA,KAAC,IAAI,IAAC,QAAQ,gDAAiC,CAClD,EACD,KAAC,IAAI,IAAC,QAAQ,kBAAE,GAAG,GAAQ,IACzB,IACJ,EAGN,KAAC,GAAG,cACA,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,aAAa,GAAQ,GACvC,IACJ,CACT,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ink-theme.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/ink-theme.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,MAAM;;;;;;;;CAQlB,CAAC;AAGF,eAAO,MAAM,UAAU;;;;;;;CAOtB,CAAC;AAGF,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"ink-theme.d.ts","sourceRoot":"","sources":["../../../src/ui/theme/ink-theme.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,MAAM;;;;;;;;CAQlB,CAAC;AAGF,eAAO,MAAM,UAAU;;;;;;;CAOtB,CAAC;AAGF,eAAO,MAAM,gBAAgB,UAK5B,CAAC;AAGF,eAAO,MAAM,YAAY,iBAAY,CAAC;AAGtC,eAAO,MAAM,OAAO;;;;;;;;;;;;CAYnB,CAAC;AAIF,eAAO,MAAM,eAAe,UAAiC,CAAC;AAG9D,eAAO,MAAM,iBAAiB,UAQ7B,CAAC;AAGF,eAAO,MAAM,cAAc,WAAM,CAAC"}
|
|
@@ -21,11 +21,12 @@ export const INK_COLORS = {
|
|
|
21
21
|
error: 'red',
|
|
22
22
|
muted: 'gray',
|
|
23
23
|
};
|
|
24
|
-
// ASCII Logo for Ink —
|
|
24
|
+
// ASCII Logo for Ink — Paean arch (∩+○) with dense block chars
|
|
25
25
|
export const ASCII_LOGO_LINES = [
|
|
26
26
|
' ▄████▄ ',
|
|
27
|
-
'
|
|
28
|
-
'
|
|
27
|
+
'██▄▀▀▄██',
|
|
28
|
+
'██▀▄▄▀██',
|
|
29
|
+
'▀▀ ▀▀',
|
|
29
30
|
];
|
|
30
31
|
// Compact logo for small screens
|
|
31
32
|
export const COMPACT_LOGO = '∩ Paean';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ink-theme.js","sourceRoot":"","sources":["../../../src/ui/theme/ink-theme.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,kEAAkE;AAClE,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,OAAO,EAAE,SAAS,EAAO,2BAA2B;IACpD,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS,EAAK,0BAA0B;IACnD,OAAO,EAAE,SAAS,EAAO,yBAAyB;IAClD,OAAO,EAAE,SAAS,EAAO,wBAAwB;IACjD,KAAK,EAAE,SAAS,EAAS,MAAM;IAC/B,KAAK,EAAE,SAAS,EAAS,OAAO;CACnC,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,OAAO,EAAE,MAAe;IACxB,SAAS,EAAE,SAAkB;IAC7B,OAAO,EAAE,OAAgB;IACzB,OAAO,EAAE,QAAiB;IAC1B,KAAK,EAAE,KAAc;IACrB,KAAK,EAAE,MAAe;CACzB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"ink-theme.js","sourceRoot":"","sources":["../../../src/ui/theme/ink-theme.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,kEAAkE;AAClE,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,OAAO,EAAE,SAAS,EAAO,2BAA2B;IACpD,YAAY,EAAE,SAAS;IACvB,SAAS,EAAE,SAAS,EAAK,0BAA0B;IACnD,OAAO,EAAE,SAAS,EAAO,yBAAyB;IAClD,OAAO,EAAE,SAAS,EAAO,wBAAwB;IACjD,KAAK,EAAE,SAAS,EAAS,MAAM;IAC/B,KAAK,EAAE,SAAS,EAAS,OAAO;CACnC,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,UAAU,GAAG;IACtB,OAAO,EAAE,MAAe;IACxB,SAAS,EAAE,SAAkB;IAC7B,OAAO,EAAE,OAAgB;IACzB,OAAO,EAAE,QAAiB;IAC1B,KAAK,EAAE,KAAc;IACrB,KAAK,EAAE,MAAe;CACzB,CAAC;AAEF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;CACb,CAAC;AAEF,iCAAiC;AACjC,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC;AAEtC,gBAAgB;AAChB,MAAM,CAAC,MAAM,OAAO,GAAG;IACnB,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,GAAG;IACZ,KAAK,EAAE,GAAG;IACV,OAAO,EAAE,GAAG;IACZ,IAAI,EAAE,GAAG;IACT,GAAG,EAAE,GAAG;IACR,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,GAAG;CACd,CAAC;AAEF,0CAA0C;AAC1C,gCAAgC;AAChC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAE9D,2DAA2D;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC7B,6BAA6B;IAC7B,4BAA4B;IAC5B,4BAA4B;IAC5B,4BAA4B;IAC5B,oBAAoB;IACpB,0BAA0B;IAC1B,mBAAmB;CACtB,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC"}
|
package/package.json
CHANGED