@flyingrobots/bijou 1.7.0 → 2.1.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/dist/adapters/test/index.d.ts +1 -0
- package/dist/adapters/test/index.d.ts.map +1 -1
- package/dist/adapters/test/index.js +1 -0
- package/dist/adapters/test/index.js.map +1 -1
- package/dist/core/ansi.d.ts +15 -0
- package/dist/core/ansi.d.ts.map +1 -0
- package/dist/core/ansi.js +15 -0
- package/dist/core/ansi.js.map +1 -0
- package/dist/core/components/box.d.ts +6 -0
- package/dist/core/components/box.d.ts.map +1 -1
- package/dist/core/components/box.js +20 -5
- package/dist/core/components/box.js.map +1 -1
- package/dist/core/components/constrain.d.ts +28 -0
- package/dist/core/components/constrain.d.ts.map +1 -0
- package/dist/core/components/constrain.js +66 -0
- package/dist/core/components/constrain.js.map +1 -0
- package/dist/core/components/cursor-guard.d.ts +46 -0
- package/dist/core/components/cursor-guard.d.ts.map +1 -0
- package/dist/core/components/cursor-guard.js +88 -0
- package/dist/core/components/cursor-guard.js.map +1 -0
- package/dist/core/components/dag-render.js +2 -2
- package/dist/core/components/dag-render.js.map +1 -1
- package/dist/core/components/index.d.ts +6 -0
- package/dist/core/components/index.d.ts.map +1 -1
- package/dist/core/components/index.js +3 -0
- package/dist/core/components/index.js.map +1 -1
- package/dist/core/components/progress.d.ts.map +1 -1
- package/dist/core/components/progress.js +20 -8
- package/dist/core/components/progress.js.map +1 -1
- package/dist/core/components/spinner.d.ts.map +1 -1
- package/dist/core/components/spinner.js +11 -4
- package/dist/core/components/spinner.js.map +1 -1
- package/dist/core/components/table.d.ts.map +1 -1
- package/dist/core/components/table.js +1 -10
- package/dist/core/components/table.js.map +1 -1
- package/dist/core/components/timer.d.ts +74 -0
- package/dist/core/components/timer.d.ts.map +1 -0
- package/dist/core/components/timer.js +219 -0
- package/dist/core/components/timer.js.map +1 -0
- package/dist/core/detect/tty.d.ts +5 -5
- package/dist/core/detect/tty.d.ts.map +1 -1
- package/dist/core/detect/tty.js +7 -15
- package/dist/core/detect/tty.js.map +1 -1
- package/dist/core/forms/form-utils.d.ts +22 -0
- package/dist/core/forms/form-utils.d.ts.map +1 -1
- package/dist/core/forms/form-utils.js +50 -3
- package/dist/core/forms/form-utils.js.map +1 -1
- package/dist/core/forms/index.d.ts +2 -0
- package/dist/core/forms/index.d.ts.map +1 -1
- package/dist/core/forms/index.js +1 -0
- package/dist/core/forms/index.js.map +1 -1
- package/dist/core/forms/multiselect.js +5 -20
- package/dist/core/forms/multiselect.js.map +1 -1
- package/dist/core/forms/note.d.ts +27 -0
- package/dist/core/forms/note.d.ts.map +1 -0
- package/dist/core/forms/note.js +55 -0
- package/dist/core/forms/note.js.map +1 -0
- package/dist/core/forms/select.js +5 -20
- package/dist/core/forms/select.js.map +1 -1
- package/dist/core/forms/wizard.d.ts +11 -0
- package/dist/core/forms/wizard.d.ts.map +1 -1
- package/dist/core/forms/wizard.js +30 -2
- package/dist/core/forms/wizard.js.map +1 -1
- package/dist/core/text/clip.d.ts.map +1 -1
- package/dist/core/text/clip.js +2 -8
- package/dist/core/text/clip.js.map +1 -1
- package/dist/core/text/grapheme.d.ts +14 -0
- package/dist/core/text/grapheme.d.ts.map +1 -1
- package/dist/core/text/grapheme.js +21 -1
- package/dist/core/text/grapheme.js.map +1 -1
- package/dist/core/text/index.d.ts +1 -1
- package/dist/core/text/index.d.ts.map +1 -1
- package/dist/core/text/index.js +1 -1
- package/dist/core/text/index.js.map +1 -1
- package/dist/core/theme/index.d.ts +1 -1
- package/dist/core/theme/index.d.ts.map +1 -1
- package/dist/core/theme/index.js +1 -1
- package/dist/core/theme/index.js.map +1 -1
- package/dist/core/theme/resolve.d.ts +6 -18
- package/dist/core/theme/resolve.d.ts.map +1 -1
- package/dist/core/theme/resolve.js +9 -31
- package/dist/core/theme/resolve.js.map +1 -1
- package/dist/core/theme/styled.d.ts +9 -0
- package/dist/core/theme/styled.d.ts.map +1 -1
- package/dist/core/theme/styled.js +9 -0
- package/dist/core/theme/styled.js.map +1 -1
- package/dist/index.d.ts +6 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -5
- package/dist/index.js.map +1 -1
- package/dist/ports/env.d.ts +24 -0
- package/dist/ports/env.d.ts.map +1 -0
- package/dist/ports/env.js +27 -0
- package/dist/ports/env.js.map +1 -0
- package/dist/ports/index.d.ts +1 -0
- package/dist/ports/index.d.ts.map +1 -1
- package/dist/ports/index.js +1 -1
- package/dist/ports/index.js.map +1 -1
- package/dist/ports/io.d.ts +1 -1
- package/dist/ports/io.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/text/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/text/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/core/text/index.js
CHANGED
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
* from the `grapheme` and `clip` sub-modules.
|
|
6
6
|
* @module
|
|
7
7
|
*/
|
|
8
|
-
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, } from './grapheme.js';
|
|
8
|
+
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, ANSI_SGR_RE, stripAnsi, } from './grapheme.js';
|
|
9
9
|
export { clipToWidth } from './clip.js';
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/text/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/text/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -10,7 +10,7 @@ export { CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv } from './presets.js';
|
|
|
10
10
|
export { styled, styledStatus } from './styled.js';
|
|
11
11
|
export { extendTheme } from './extend.js';
|
|
12
12
|
export { lerp3, gradientText } from './gradient.js';
|
|
13
|
-
export { isNoColor,
|
|
13
|
+
export { isNoColor, createThemeResolver, createResolved, } from './resolve.js';
|
|
14
14
|
export type { ResolvedTheme, ThemeResolver, ThemeResolverOptions } from './resolve.js';
|
|
15
15
|
export type { GradientTextOptions } from './gradient.js';
|
|
16
16
|
export { fromDTCG, toDTCG } from './dtcg.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,GAAG,EACH,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,EACT,eAAe,EACf,KAAK,GACN,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EACL,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,YAAY,EACV,GAAG,EACH,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,aAAa,EACb,SAAS,EACT,eAAe,EACf,KAAK,GACN,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAG3E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAIvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGzD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,EACf,KAAK,UAAU,GAChB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,oBAAoB,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAG3E,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
package/dist/core/theme/index.js
CHANGED
|
@@ -14,7 +14,7 @@ export { extendTheme } from './extend.js';
|
|
|
14
14
|
// Gradient
|
|
15
15
|
export { lerp3, gradientText } from './gradient.js';
|
|
16
16
|
// Resolver
|
|
17
|
-
export { isNoColor,
|
|
17
|
+
export { isNoColor, createThemeResolver, createResolved, } from './resolve.js';
|
|
18
18
|
// DTCG interop
|
|
19
19
|
export { fromDTCG, toDTCG } from './dtcg.js';
|
|
20
20
|
// Color downsampling
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAE3E,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEnD,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,WAAW;AACX,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,WAAW;AACX,OAAO,EACL,SAAS,EACT,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/theme/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAE3E,8BAA8B;AAC9B,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEnD,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,WAAW;AACX,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpD,WAAW;AACX,OAAO,EACL,SAAS,EACT,mBAAmB,EACnB,cAAc,GACf,MAAM,cAAc,CAAC;AAOtB,eAAe;AACf,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAG7C,qBAAqB;AACrB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe,GAEhB,MAAM,iBAAiB,CAAC;AAEzB,kBAAkB;AAClB,OAAO,EAAE,oBAAoB,EAAuB,MAAM,gBAAgB,CAAC;AAE3E,qBAAqB;AACrB,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,YAAY,CAAC"}
|
|
@@ -4,10 +4,11 @@ import type { WritePort } from '../../ports/io.js';
|
|
|
4
4
|
import type { ColorScheme } from '../detect/tty.js';
|
|
5
5
|
/**
|
|
6
6
|
* Check the no-color.org spec: `NO_COLOR` defined (any value) means no color.
|
|
7
|
-
*
|
|
7
|
+
*
|
|
8
|
+
* @param runtime - RuntimePort for reading env vars.
|
|
8
9
|
* @returns True if the `NO_COLOR` environment variable is set.
|
|
9
10
|
*/
|
|
10
|
-
export declare function isNoColor(runtime
|
|
11
|
+
export declare function isNoColor(runtime: RuntimePort): boolean;
|
|
11
12
|
/** A theme bundled with its noColor flag and convenience accessor methods. */
|
|
12
13
|
export interface ResolvedTheme {
|
|
13
14
|
/** The underlying Theme object. */
|
|
@@ -51,8 +52,8 @@ export interface ThemeResolverOptions {
|
|
|
51
52
|
presets?: Record<string, Theme>;
|
|
52
53
|
/** Fallback theme when env var / name doesn't match. Default: CYAN_MAGENTA. */
|
|
53
54
|
fallback?: Theme;
|
|
54
|
-
/**
|
|
55
|
-
runtime
|
|
55
|
+
/** RuntimePort for reading env vars. */
|
|
56
|
+
runtime: RuntimePort;
|
|
56
57
|
/**
|
|
57
58
|
* Optional output port for resolver warnings (unknown env/configured theme names).
|
|
58
59
|
*
|
|
@@ -77,18 +78,5 @@ export interface ThemeResolver {
|
|
|
77
78
|
* @param options - Resolver configuration (env var name, presets, fallback, runtime port).
|
|
78
79
|
* @returns ThemeResolver with `getTheme`, `resolveTheme`, and `_resetForTesting` methods.
|
|
79
80
|
*/
|
|
80
|
-
export declare function createThemeResolver(options
|
|
81
|
-
/**
|
|
82
|
-
* Return the current resolved theme (singleton) using the default resolver.
|
|
83
|
-
* @returns Cached ResolvedTheme from the default resolver.
|
|
84
|
-
*/
|
|
85
|
-
export declare function getTheme(): ResolvedTheme;
|
|
86
|
-
/**
|
|
87
|
-
* Resolve a theme by name using the default resolver (bypasses cache).
|
|
88
|
-
* @param name - Theme name to look up.
|
|
89
|
-
* @returns ResolvedTheme for the given name.
|
|
90
|
-
*/
|
|
91
|
-
export declare function resolveTheme(name?: string): ResolvedTheme;
|
|
92
|
-
/** Resets the default resolver's cached singleton. For tests only. */
|
|
93
|
-
export declare function _resetThemeForTesting(): void;
|
|
81
|
+
export declare function createThemeResolver(options: ThemeResolverOptions): ThemeResolver;
|
|
94
82
|
//# sourceMappingURL=resolve.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../src/core/theme/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../../src/core/theme/resolve.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAGvD;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAa;IAC5B,mCAAmC;IACnC,KAAK,EAAE,KAAK,CAAC;IACb,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC;IACjB,iEAAiE;IACjE,WAAW,EAAE,WAAW,CAAC;IAEzB;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,QAAQ,CAAC;IAEjC;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC;IAEpC;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAAC;CAChC;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,GAAE,WAAoB,GAAG,aAAa,CAqB/G;AAED,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uFAAuF;IACvF,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChC,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,wCAAwC;IACxC,OAAO,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;CAC7C;AAED,mFAAmF;AACnF,MAAM,WAAW,aAAa;IAC5B,4DAA4D;IAC5D,QAAQ,IAAI,aAAa,CAAC;IAC1B;;;OAGG;IACH,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IAC3C,kDAAkD;IAClD,gBAAgB,IAAI,IAAI,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAuDhF"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
import { createEnvAccessor } from '../../ports/env.js';
|
|
1
2
|
import { detectColorScheme } from '../detect/tty.js';
|
|
2
3
|
import { PRESETS, CYAN_MAGENTA } from './presets.js';
|
|
3
4
|
/**
|
|
4
5
|
* Check the no-color.org spec: `NO_COLOR` defined (any value) means no color.
|
|
5
|
-
*
|
|
6
|
+
*
|
|
7
|
+
* @param runtime - RuntimePort for reading env vars.
|
|
6
8
|
* @returns True if the `NO_COLOR` environment variable is set.
|
|
7
9
|
*/
|
|
8
10
|
export function isNoColor(runtime) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
return process.env['NO_COLOR'] !== undefined;
|
|
11
|
+
const env = createEnvAccessor(runtime);
|
|
12
|
+
return env('NO_COLOR') !== undefined;
|
|
12
13
|
}
|
|
13
14
|
/**
|
|
14
15
|
* Create a ResolvedTheme from a Theme and a noColor flag.
|
|
@@ -42,17 +43,15 @@ export function createResolved(theme, noColor, colorScheme = 'dark') {
|
|
|
42
43
|
* @param options - Resolver configuration (env var name, presets, fallback, runtime port).
|
|
43
44
|
* @returns ThemeResolver with `getTheme`, `resolveTheme`, and `_resetForTesting` methods.
|
|
44
45
|
*/
|
|
45
|
-
export function createThemeResolver(options
|
|
46
|
+
export function createThemeResolver(options) {
|
|
46
47
|
const envVar = options.envVar ?? 'BIJOU_THEME';
|
|
47
48
|
const presets = options.presets ?? PRESETS;
|
|
48
49
|
const fallback = options.fallback ?? CYAN_MAGENTA;
|
|
49
|
-
const runtime = options
|
|
50
|
+
const { runtime } = options;
|
|
50
51
|
const warningPort = options.warningPort;
|
|
51
|
-
const readEnv = runtime
|
|
52
|
-
? (key) => runtime.env(key)
|
|
53
|
-
: (key) => process.env[key];
|
|
52
|
+
const readEnv = createEnvAccessor(runtime);
|
|
54
53
|
const warn = (message) => {
|
|
55
|
-
warningPort?.writeError
|
|
54
|
+
warningPort?.writeError(`${message}\n`);
|
|
56
55
|
};
|
|
57
56
|
let cached = null;
|
|
58
57
|
/** Return the lazily-cached resolved theme for the current environment. */
|
|
@@ -90,25 +89,4 @@ export function createThemeResolver(options = {}) {
|
|
|
90
89
|
}
|
|
91
90
|
return { getTheme, resolveTheme, _resetForTesting };
|
|
92
91
|
}
|
|
93
|
-
/** Default resolver — uses `BIJOU_THEME` env var and built-in presets. */
|
|
94
|
-
const defaultResolver = createThemeResolver();
|
|
95
|
-
/**
|
|
96
|
-
* Return the current resolved theme (singleton) using the default resolver.
|
|
97
|
-
* @returns Cached ResolvedTheme from the default resolver.
|
|
98
|
-
*/
|
|
99
|
-
export function getTheme() {
|
|
100
|
-
return defaultResolver.getTheme();
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Resolve a theme by name using the default resolver (bypasses cache).
|
|
104
|
-
* @param name - Theme name to look up.
|
|
105
|
-
* @returns ResolvedTheme for the given name.
|
|
106
|
-
*/
|
|
107
|
-
export function resolveTheme(name) {
|
|
108
|
-
return defaultResolver.resolveTheme(name);
|
|
109
|
-
}
|
|
110
|
-
/** Resets the default resolver's cached singleton. For tests only. */
|
|
111
|
-
export function _resetThemeForTesting() {
|
|
112
|
-
defaultResolver._resetForTesting();
|
|
113
|
-
}
|
|
114
92
|
//# sourceMappingURL=resolve.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../src/core/theme/resolve.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../../src/core/theme/resolve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { TokenValue } from './tokens.js';
|
|
2
2
|
/**
|
|
3
3
|
* Apply a token's color and modifiers to a string using the default context's style port.
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Reaches for the global default context singleton, violating
|
|
6
|
+
* dependency inversion. Use `ctx.style.styled(token, text)` instead.
|
|
7
|
+
*
|
|
4
8
|
* @param token - Token whose hex color and modifiers are applied.
|
|
5
9
|
* @param text - Text to style.
|
|
6
10
|
* @returns Styled text string.
|
|
@@ -8,6 +12,11 @@ import type { TokenValue } from './tokens.js';
|
|
|
8
12
|
export declare function styled(token: TokenValue, text: string): string;
|
|
9
13
|
/**
|
|
10
14
|
* Style text using the token for a given status key, falling back to `muted` if the key is unknown.
|
|
15
|
+
*
|
|
16
|
+
* @deprecated Reaches for the global default context singleton, violating
|
|
17
|
+
* dependency inversion. Use `ctx.semantic(status)` with
|
|
18
|
+
* `ctx.style.styled()` instead.
|
|
19
|
+
*
|
|
11
20
|
* @param status - Status key to look up in the current theme.
|
|
12
21
|
* @param text - Text to display (defaults to the status key itself).
|
|
13
22
|
* @returns Styled text string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/core/theme/styled.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C
|
|
1
|
+
{"version":3,"file":"styled.d.ts","sourceRoot":"","sources":["../../../src/core/theme/styled.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAG9C;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAQlE"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { getDefaultContext } from '../../context.js';
|
|
2
2
|
/**
|
|
3
3
|
* Apply a token's color and modifiers to a string using the default context's style port.
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Reaches for the global default context singleton, violating
|
|
6
|
+
* dependency inversion. Use `ctx.style.styled(token, text)` instead.
|
|
7
|
+
*
|
|
4
8
|
* @param token - Token whose hex color and modifiers are applied.
|
|
5
9
|
* @param text - Text to style.
|
|
6
10
|
* @returns Styled text string.
|
|
@@ -10,6 +14,11 @@ export function styled(token, text) {
|
|
|
10
14
|
}
|
|
11
15
|
/**
|
|
12
16
|
* Style text using the token for a given status key, falling back to `muted` if the key is unknown.
|
|
17
|
+
*
|
|
18
|
+
* @deprecated Reaches for the global default context singleton, violating
|
|
19
|
+
* dependency inversion. Use `ctx.semantic(status)` with
|
|
20
|
+
* `ctx.style.styled()` instead.
|
|
21
|
+
*
|
|
13
22
|
* @param status - Status key to look up in the current theme.
|
|
14
23
|
* @param text - Text to display (defaults to the status key itself).
|
|
15
24
|
* @returns Styled text string.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styled.js","sourceRoot":"","sources":["../../../src/core/theme/styled.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD
|
|
1
|
+
{"version":3,"file":"styled.js","sourceRoot":"","sources":["../../../src/core/theme/styled.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,KAAiB,EAAE,IAAY;IACpD,OAAO,iBAAiB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc,EAAE,IAAa;IACxD,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC,KAAK,CAAC;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,MAAyC,CAA2B,CAAC;IACtG,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,OAA0C,CAA2B,CAAC;IAC1G,MAAM,QAAQ,GAAG,KAAK,IAAI,QAAQ,CAAC;IACnC,MAAM,KAAK,GAAG,IAAI,IAAI,MAAM,CAAC;IAC7B,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,OAAO,iBAAiB,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,14 +5,15 @@
|
|
|
5
5
|
* with graceful degradation across output modes.
|
|
6
6
|
*/
|
|
7
7
|
export type { RuntimePort, WritePort, QueryPort, InteractivePort, FilePort, IOPort, RawInputHandle, TimerHandle, StylePort, BijouContext, } from './ports/index.js';
|
|
8
|
-
export { getDefaultContext, setDefaultContext,
|
|
8
|
+
export { getDefaultContext, setDefaultContext, } from './context.js';
|
|
9
9
|
export { resolveCtx, resolveSafeCtx } from './core/resolve-ctx.js';
|
|
10
10
|
export { renderByMode, type ModeHandler, type ModeMap, } from './core/mode-render.js';
|
|
11
11
|
export { shouldApplyBg, makeBgFill } from './core/bg-fill.js';
|
|
12
12
|
export { createBijou, type CreateBijouOptions } from './factory.js';
|
|
13
|
-
export { type RGB, type GradientStop, type TextModifier, type TokenValue, type InkColor, type BaseStatusKey, type BaseUiKey, type BaseGradientKey, type Theme, CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv, styled, styledStatus, extendTheme, lerp3, gradientText, type GradientTextOptions, isNoColor,
|
|
14
|
-
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, clipToWidth, } from './core/text/index.js';
|
|
13
|
+
export { type RGB, type GradientStop, type TextModifier, type TokenValue, type InkColor, type BaseStatusKey, type BaseUiKey, type BaseGradientKey, type Theme, CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv, styled, styledStatus, extendTheme, lerp3, gradientText, type GradientTextOptions, isNoColor, createThemeResolver, createResolved, type ResolvedTheme, type ThemeResolver, type ThemeResolverOptions, fromDTCG, toDTCG, type DTCGDocument, type DTCGToken, type DTCGGroup, rgbToAnsi256, nearestAnsi256, rgbToAnsi16, ansi256ToAnsi16, type ColorLevel, createThemeAccessors, type ThemeAccessors, hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate, } from './core/theme/index.js';
|
|
14
|
+
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, clipToWidth, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
15
15
|
export { detectOutputMode, detectColorScheme, type OutputMode, type ColorScheme, } from './core/detect/index.js';
|
|
16
|
-
export { spinnerFrame, createSpinner, type SpinnerOptions, type SpinnerController, progressBar, createProgressBar, createAnimatedProgressBar, type ProgressBarOptions, type LiveProgressBarOptions, type AnimatedProgressBarOptions, type ProgressBarController, table, type TableColumn, type TableOptions, box, headerBox, type BoxOptions, type HeaderBoxOptions, selectLogoSize, loadRandomLogo, type LogoSize, type LogoResult, type LogoConstraints, type LogoOptions, separator, type SeparatorOptions, badge, type BadgeVariant, type BadgeOptions, alert, type AlertVariant, type AlertOptions, skeleton, type SkeletonOptions, kbd, type KbdOptions, tree, type TreeNode, type TreeOptions, accordion, type AccordionSection, type AccordionOptions, timeline, type TimelineEvent, type TimelineOptions, tabs, type TabItem, type TabsOptions, breadcrumb, type BreadcrumbOptions, paginator, type PaginatorOptions, stepper, type StepperStep, type StepperOptions, dag, dagSlice, dagLayout, type DagNode, type DagOptions, type DagNodePosition, type DagLayout, arraySource, isDagSource, isSlicedDagSource, type DagSource, type SlicedDagSource, type DagSliceOptions, dagStats, type DagStats, enumeratedList, type BulletStyle, type EnumeratedListOptions, hyperlink, type HyperlinkOptions, log, type LogLevel, type LogOptions, markdown, type MarkdownOptions, } from './core/components/index.js';
|
|
17
|
-
export {
|
|
16
|
+
export { spinnerFrame, createSpinner, type SpinnerOptions, type SpinnerController, progressBar, createProgressBar, createAnimatedProgressBar, type ProgressBarOptions, type LiveProgressBarOptions, type AnimatedProgressBarOptions, type ProgressBarController, table, type TableColumn, type TableOptions, box, headerBox, type BoxOptions, type HeaderBoxOptions, selectLogoSize, loadRandomLogo, type LogoSize, type LogoResult, type LogoConstraints, type LogoOptions, separator, type SeparatorOptions, badge, type BadgeVariant, type BadgeOptions, alert, type AlertVariant, type AlertOptions, skeleton, type SkeletonOptions, kbd, type KbdOptions, tree, type TreeNode, type TreeOptions, accordion, type AccordionSection, type AccordionOptions, timeline, type TimelineEvent, type TimelineOptions, tabs, type TabItem, type TabsOptions, breadcrumb, type BreadcrumbOptions, paginator, type PaginatorOptions, stepper, type StepperStep, type StepperOptions, dag, dagSlice, dagLayout, type DagNode, type DagOptions, type DagNodePosition, type DagLayout, arraySource, isDagSource, isSlicedDagSource, type DagSource, type SlicedDagSource, type DagSliceOptions, dagStats, type DagStats, enumeratedList, type BulletStyle, type EnumeratedListOptions, hyperlink, type HyperlinkOptions, log, type LogLevel, type LogOptions, markdown, type MarkdownOptions, constrain, type ConstrainOptions, timer, createTimer, createStopwatch, type TimerOptions, type TimerController, type CreateTimerOptions, type CreateStopwatchOptions, cursorGuard, withHiddenCursor, type CursorGuard, type CursorHideHandle, } from './core/components/index.js';
|
|
17
|
+
export { HIDE_CURSOR, SHOW_CURSOR, CLEAR_LINE_RETURN } from './core/ansi.js';
|
|
18
|
+
export { type ValidationResult, type Validator, type FieldOptions, type SelectOption, type SelectFieldOptions, type ConfirmFieldOptions, type GroupFieldResult, type InputOptions, input, select, multiselect, confirm, group, textarea, type TextareaOptions, filter, type FilterOption, type FilterOptions, wizard, type WizardStep, type WizardOptions, note, type NoteOptions, } from './core/forms/index.js';
|
|
18
19
|
//# 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;;;;;GAKG;AAGH,YAAY,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,eAAe,EACf,QAAQ,EACR,MAAM,EACN,cAAc,EACd,WAAW,EACX,SAAS,EACT,YAAY,GACb,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,iBAAiB,EACjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* with graceful degradation across output modes.
|
|
6
6
|
*/
|
|
7
7
|
// Context
|
|
8
|
-
export { getDefaultContext, setDefaultContext,
|
|
8
|
+
export { getDefaultContext, setDefaultContext, } from './context.js';
|
|
9
9
|
// Context resolution helpers
|
|
10
10
|
export { resolveCtx, resolveSafeCtx } from './core/resolve-ctx.js';
|
|
11
11
|
// Mode rendering strategy
|
|
@@ -25,7 +25,7 @@ extendTheme,
|
|
|
25
25
|
// Gradient
|
|
26
26
|
lerp3, gradientText,
|
|
27
27
|
// Resolver
|
|
28
|
-
isNoColor,
|
|
28
|
+
isNoColor, createThemeResolver, createResolved,
|
|
29
29
|
// DTCG interop
|
|
30
30
|
fromDTCG, toDTCG,
|
|
31
31
|
// Color downsampling
|
|
@@ -35,11 +35,13 @@ createThemeAccessors,
|
|
|
35
35
|
// Color manipulation
|
|
36
36
|
hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate, } from './core/theme/index.js';
|
|
37
37
|
// Text / grapheme utilities
|
|
38
|
-
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, clipToWidth, } from './core/text/index.js';
|
|
38
|
+
export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, clipToWidth, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
|
|
39
39
|
// Detection
|
|
40
40
|
export { detectOutputMode, detectColorScheme, } from './core/detect/index.js';
|
|
41
41
|
// Components
|
|
42
|
-
export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, box, headerBox, selectLogoSize, loadRandomLogo, separator, badge, alert, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, } from './core/components/index.js';
|
|
42
|
+
export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, box, headerBox, selectLogoSize, loadRandomLogo, separator, badge, alert, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, constrain, timer, createTimer, createStopwatch, cursorGuard, withHiddenCursor, } from './core/components/index.js';
|
|
43
|
+
// Shared ANSI escape constants
|
|
44
|
+
export { HIDE_CURSOR, SHOW_CURSOR, CLEAR_LINE_RETURN } from './core/ansi.js';
|
|
43
45
|
// Forms
|
|
44
|
-
export { input, select, multiselect, confirm, group, textarea, filter, wizard, } from './core/forms/index.js';
|
|
46
|
+
export { input, select, multiselect, confirm, group, textarea, filter, wizard, note, } from './core/forms/index.js';
|
|
45
47
|
//# 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;;;;;GAKG;AAgBH,UAAU;AACV,OAAO,EACL,iBAAiB,EACjB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,UAAU;AACV,OAAO,EACL,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AAEtB,6BAA6B;AAC7B,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEnE,0BAA0B;AAC1B,OAAO,EACL,YAAY,GAGb,MAAM,uBAAuB,CAAC;AAE/B,4BAA4B;AAC5B,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE9D,UAAU;AACV,OAAO,EAAE,WAAW,EAA2B,MAAM,cAAc,CAAC;AAEpE,eAAe;AACf,OAAO;AAWL,UAAU;AACV,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,EAAE;AACF,8BAA8B;AAC9B,MAAM,EACN,YAAY;AACZ,kBAAkB;AAClB,WAAW;AACX,WAAW;AACX,KAAK,EACL,YAAY;AAGZ,WAAW;AACX,SAAS,EACT,mBAAmB,EACnB,cAAc;AAId,eAAe;AACf,QAAQ,EACR,MAAM;AAIN,qBAAqB;AACrB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,eAAe;AAEf,kBAAkB;AAClB,oBAAoB;AAEpB,qBAAqB;AACrB,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,MAAM,EACN,GAAG,EACH,aAAa,EACb,QAAQ,EACR,UAAU,GACX,MAAM,uBAAuB,CAAC;AAE/B,4BAA4B;AAC5B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,WAAW,EACX,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAGlB,MAAM,wBAAwB,CAAC;AAEhC,aAAa;AACb,OAAO,EACL,YAAY,EACZ,aAAa,EAGb,WAAW,EACX,iBAAiB,EACjB,yBAAyB,EAKzB,KAAK,EAGL,GAAG,EACH,SAAS,EAGT,cAAc,EACd,cAAc,EAKd,SAAS,EAET,KAAK,EAGL,KAAK,EAGL,QAAQ,EAER,GAAG,EAEH,IAAI,EAGJ,SAAS,EAGT,QAAQ,EAGR,IAAI,EAGJ,UAAU,EAEV,SAAS,EAET,OAAO,EAGP,GAAG,EACH,QAAQ,EACR,SAAS,EAKT,WAAW,EACX,WAAW,EACX,iBAAiB,EAIjB,QAAQ,EAER,cAAc,EAGd,SAAS,EAET,GAAG,EAGH,QAAQ,EAER,SAAS,EAET,KAAK,EACL,WAAW,EACX,eAAe,EAKf,WAAW,EACX,gBAAgB,GAGjB,MAAM,4BAA4B,CAAC;AAEpC,+BAA+B;AAC/B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAE7E,QAAQ;AACR,OAAO,EASL,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,KAAK,EACL,QAAQ,EAER,MAAM,EAGN,MAAM,EAGN,IAAI,GAEL,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared environment and TTY accessors built on {@link RuntimePort}.
|
|
3
|
+
*
|
|
4
|
+
* Provides consistent env-var and TTY-status reading for modules
|
|
5
|
+
* (tty.ts, resolve.ts) via the hexagonal port boundary.
|
|
6
|
+
*
|
|
7
|
+
* @module ports/env
|
|
8
|
+
*/
|
|
9
|
+
import type { RuntimePort } from './runtime.js';
|
|
10
|
+
/**
|
|
11
|
+
* Build an environment variable accessor from a runtime port.
|
|
12
|
+
*
|
|
13
|
+
* @param runtime - Runtime port for environment access.
|
|
14
|
+
* @returns A function that reads a single env var by key.
|
|
15
|
+
*/
|
|
16
|
+
export declare function createEnvAccessor(runtime: RuntimePort): (key: string) => string | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Build a TTY status accessor from a runtime port.
|
|
19
|
+
*
|
|
20
|
+
* @param runtime - Runtime port for TTY status.
|
|
21
|
+
* @returns Whether stdout is a TTY.
|
|
22
|
+
*/
|
|
23
|
+
export declare function createTTYAccessor(runtime: RuntimePort): boolean;
|
|
24
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../src/ports/env.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAE3F;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAE/D"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared environment and TTY accessors built on {@link RuntimePort}.
|
|
3
|
+
*
|
|
4
|
+
* Provides consistent env-var and TTY-status reading for modules
|
|
5
|
+
* (tty.ts, resolve.ts) via the hexagonal port boundary.
|
|
6
|
+
*
|
|
7
|
+
* @module ports/env
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Build an environment variable accessor from a runtime port.
|
|
11
|
+
*
|
|
12
|
+
* @param runtime - Runtime port for environment access.
|
|
13
|
+
* @returns A function that reads a single env var by key.
|
|
14
|
+
*/
|
|
15
|
+
export function createEnvAccessor(runtime) {
|
|
16
|
+
return (key) => runtime.env(key);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Build a TTY status accessor from a runtime port.
|
|
20
|
+
*
|
|
21
|
+
* @param runtime - Runtime port for TTY status.
|
|
22
|
+
* @returns Whether stdout is a TTY.
|
|
23
|
+
*/
|
|
24
|
+
export function createTTYAccessor(runtime) {
|
|
25
|
+
return runtime.stdoutIsTTY;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=env.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/ports/env.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAoB;IACpD,OAAO,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAoB;IACpD,OAAO,OAAO,CAAC,WAAW,CAAC;AAC7B,CAAC"}
|
package/dist/ports/index.d.ts
CHANGED
|
@@ -7,4 +7,5 @@ export type { RuntimePort } from './runtime.js';
|
|
|
7
7
|
export type { WritePort, QueryPort, InteractivePort, FilePort, IOPort, RawInputHandle, TimerHandle } from './io.js';
|
|
8
8
|
export type { StylePort } from './style.js';
|
|
9
9
|
export type { BijouContext } from './context.js';
|
|
10
|
+
export { createEnvAccessor, createTTYAccessor } from './env.js';
|
|
10
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACpH,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACpH,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/ports/index.js
CHANGED
package/dist/ports/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ports/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/ports/io.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export interface WritePort {
|
|
|
18
18
|
/** Write a string to the output stream (typically stdout). */
|
|
19
19
|
write(data: string): void;
|
|
20
20
|
/** Write a string to the error stream (typically stderr). */
|
|
21
|
-
writeError
|
|
21
|
+
writeError(data: string): void;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
24
|
* Output + line-oriented input port.
|
package/dist/ports/io.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../src/ports/io.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,WAAW,cAAc;IAC7B,iDAAiD;IACjD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,qDAAqD;AACrD,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,8DAA8D;IAC9D,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,6DAA6D;IAC7D,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../src/ports/io.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,MAAM,WAAW,cAAc;IAC7B,iDAAiD;IACjD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,qDAAqD;AACrD,MAAM,WAAW,WAAW;IAC1B,wBAAwB;IACxB,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAS;IACxB,8DAA8D;IAC9D,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,6DAA6D;IAC7D,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;;;;GAKG;AACH,MAAM,WAAW,SAAU,SAAQ,SAAS;IAC1C,uDAAuD;IACvD,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3C;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAgB,SAAQ,SAAS;IAChD;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,cAAc,CAAC;IAEvD;;;OAGG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5D;AAED;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAE/B;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC,uDAAuD;IACvD,QAAQ,CAAC,GAAG,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;CACzC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,MAAO,SAAQ,eAAe,EAAE,QAAQ;IACvD;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,cAAc,CAAC;CAC1E"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flyingrobots/bijou",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Themed terminal components for CLIs, loggers, and scripts
|
|
3
|
+
"version": "2.1.0",
|
|
4
|
+
"description": "Themed terminal components for CLIs, loggers, and scripts \u2014 graceful degradation included.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"main": "./dist/index.js",
|