@brimveyn/aimux-config 0.6.4 → 0.6.5

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brimveyn/aimux-config",
3
- "version": "0.6.4",
3
+ "version": "0.6.5",
4
4
  "description": "TypeScript configuration API for aimux — keymaps, themes, and backends with a fluent builder.",
5
5
  "keywords": [
6
6
  "aimux",
package/src/index.ts CHANGED
@@ -29,6 +29,7 @@ export { getDefaultKeymapConfig } from './defaults'
29
29
  export { resolveConfig } from './resolver'
30
30
  export { isAutoCommitEnabled, setAutoCommitEnabled } from './auto-commit-runtime'
31
31
  export { getMultiRepoConfig, setMultiRepoConfig } from './multi-repo-runtime'
32
+ export { getStatusBarSeparator, setStatusBarSeparator } from './status-bar-runtime'
32
33
  export {
33
34
  DEFAULT_EDITOR_ARGS,
34
35
  getExternalEditorConfig,
@@ -84,5 +85,6 @@ export type {
84
85
  SnippetVar,
85
86
  SplitDirection,
86
87
  StatusBarConfig,
88
+ StatusBarSeparator,
87
89
  TabSession,
88
90
  } from './types'
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Module-level singleton mirroring `statusBar.separator` from the resolved
3
+ * config. The status bar component reads this each render; the app sets it
4
+ * once at startup so the value is stable for the session.
5
+ *
6
+ * Same pattern as `auto-commit-runtime` / `external-editor-runtime` — avoids
7
+ * threading config through React props or contexts.
8
+ */
9
+
10
+ import type { StatusBarSeparator } from './types'
11
+
12
+ const DEFAULT_SEPARATOR: StatusBarSeparator = 'arrow'
13
+
14
+ let separator: StatusBarSeparator = DEFAULT_SEPARATOR
15
+
16
+ export function setStatusBarSeparator(value: StatusBarSeparator | undefined): void {
17
+ separator = value ?? DEFAULT_SEPARATOR
18
+ }
19
+
20
+ export function getStatusBarSeparator(): StatusBarSeparator {
21
+ return separator
22
+ }
package/src/types.ts CHANGED
@@ -964,8 +964,21 @@ export interface AIUsageToolConfig {
964
964
  tools?: AIUsageTool[]
965
965
  }
966
966
 
967
+ export type StatusBarSeparator = 'arrow' | 'round' | 'slant' | 'flame' | 'none'
968
+
967
969
  export interface StatusBarConfig {
968
970
  aiUsage?: AIUsageToolConfig
971
+ /**
972
+ * Powerline-style glyph used between status bar sections.
973
+ * - `arrow` (default): solid triangles ( / )
974
+ * - `round`: solid semicircles ( / )
975
+ * - `slant`: solid slopes ( / )
976
+ * - `flame`: solid flame ribbons ( / )
977
+ * - `none`: no glyph, sections snap via background colour only
978
+ *
979
+ * All non-`none` options require a nerd-font / powerline-capable font.
980
+ */
981
+ separator?: StatusBarSeparator
969
982
  }
970
983
 
971
984
  export interface ExternalEditorConfig {