@flyingrobots/bijou 4.4.1 → 7.0.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.
Files changed (249) hide show
  1. package/README.md +71 -1
  2. package/dist/adapters/test/index.d.ts.map +1 -1
  3. package/dist/adapters/test/index.js +1 -3
  4. package/dist/adapters/test/index.js.map +1 -1
  5. package/dist/adapters/test/runtime.d.ts.map +1 -1
  6. package/dist/adapters/test/runtime.js +4 -3
  7. package/dist/adapters/test/runtime.js.map +1 -1
  8. package/dist/context-theme.d.ts +25 -0
  9. package/dist/context-theme.d.ts.map +1 -1
  10. package/dist/context-theme.js +19 -0
  11. package/dist/context-theme.js.map +1 -1
  12. package/dist/context.d.ts +13 -1
  13. package/dist/context.d.ts.map +1 -1
  14. package/dist/context.js +24 -3
  15. package/dist/context.js.map +1 -1
  16. package/dist/core/active-binding-collection.d.ts +49 -0
  17. package/dist/core/active-binding-collection.d.ts.map +1 -0
  18. package/dist/core/active-binding-collection.js +264 -0
  19. package/dist/core/active-binding-collection.js.map +1 -0
  20. package/dist/core/app-shell-composition.d.ts +44 -0
  21. package/dist/core/app-shell-composition.d.ts.map +1 -0
  22. package/dist/core/app-shell-composition.js +123 -0
  23. package/dist/core/app-shell-composition.js.map +1 -0
  24. package/dist/core/binding-frame-update.d.ts +18 -0
  25. package/dist/core/binding-frame-update.d.ts.map +1 -0
  26. package/dist/core/binding-frame-update.js +133 -0
  27. package/dist/core/binding-frame-update.js.map +1 -0
  28. package/dist/core/binding-lifecycle.d.ts +65 -0
  29. package/dist/core/binding-lifecycle.d.ts.map +1 -0
  30. package/dist/core/binding-lifecycle.js +357 -0
  31. package/dist/core/binding-lifecycle.js.map +1 -0
  32. package/dist/core/binding.d.ts +192 -0
  33. package/dist/core/binding.d.ts.map +1 -0
  34. package/dist/core/binding.js +587 -0
  35. package/dist/core/binding.js.map +1 -0
  36. package/dist/core/block-metadata.d.ts +113 -0
  37. package/dist/core/block-metadata.d.ts.map +1 -0
  38. package/dist/core/block-metadata.js +376 -0
  39. package/dist/core/block-metadata.js.map +1 -0
  40. package/dist/core/block-tree-render.d.ts +17 -0
  41. package/dist/core/block-tree-render.d.ts.map +1 -0
  42. package/dist/core/block-tree-render.js +186 -0
  43. package/dist/core/block-tree-render.js.map +1 -0
  44. package/dist/core/component-metadata.d.ts +63 -0
  45. package/dist/core/component-metadata.d.ts.map +1 -0
  46. package/dist/core/component-metadata.js +158 -0
  47. package/dist/core/component-metadata.js.map +1 -0
  48. package/dist/core/components/alert-v3.d.ts.map +1 -1
  49. package/dist/core/components/alert-v3.js +5 -4
  50. package/dist/core/components/alert-v3.js.map +1 -1
  51. package/dist/core/components/alert.d.ts.map +1 -1
  52. package/dist/core/components/alert.js +7 -8
  53. package/dist/core/components/alert.js.map +1 -1
  54. package/dist/core/components/badge.d.ts.map +1 -1
  55. package/dist/core/components/badge.js +19 -18
  56. package/dist/core/components/badge.js.map +1 -1
  57. package/dist/core/components/box-v3.d.ts.map +1 -1
  58. package/dist/core/components/box-v3.js +29 -29
  59. package/dist/core/components/box-v3.js.map +1 -1
  60. package/dist/core/components/dag-edges.d.ts +28 -5
  61. package/dist/core/components/dag-edges.d.ts.map +1 -1
  62. package/dist/core/components/dag-edges.js +116 -22
  63. package/dist/core/components/dag-edges.js.map +1 -1
  64. package/dist/core/components/dag-layout.d.ts +3 -4
  65. package/dist/core/components/dag-layout.d.ts.map +1 -1
  66. package/dist/core/components/dag-layout.js +42 -9
  67. package/dist/core/components/dag-layout.js.map +1 -1
  68. package/dist/core/components/dag-render.d.ts +4 -3
  69. package/dist/core/components/dag-render.d.ts.map +1 -1
  70. package/dist/core/components/dag-render.js +209 -105
  71. package/dist/core/components/dag-render.js.map +1 -1
  72. package/dist/core/components/dag-source.d.ts +4 -0
  73. package/dist/core/components/dag-source.d.ts.map +1 -1
  74. package/dist/core/components/dag-source.js +10 -0
  75. package/dist/core/components/dag-source.js.map +1 -1
  76. package/dist/core/components/dag.d.ts +20 -4
  77. package/dist/core/components/dag.d.ts.map +1 -1
  78. package/dist/core/components/dag.js.map +1 -1
  79. package/dist/core/components/explainability.d.ts.map +1 -1
  80. package/dist/core/components/explainability.js +30 -87
  81. package/dist/core/components/explainability.js.map +1 -1
  82. package/dist/core/components/guided-flow.d.ts +32 -0
  83. package/dist/core/components/guided-flow.d.ts.map +1 -0
  84. package/dist/core/components/guided-flow.js +131 -0
  85. package/dist/core/components/guided-flow.js.map +1 -0
  86. package/dist/core/components/hyperlink.d.ts.map +1 -1
  87. package/dist/core/components/hyperlink.js +7 -4
  88. package/dist/core/components/hyperlink.js.map +1 -1
  89. package/dist/core/components/index.d.ts +5 -3
  90. package/dist/core/components/index.d.ts.map +1 -1
  91. package/dist/core/components/index.js +1 -0
  92. package/dist/core/components/index.js.map +1 -1
  93. package/dist/core/components/markdown-parse.d.ts +4 -0
  94. package/dist/core/components/markdown-parse.d.ts.map +1 -1
  95. package/dist/core/components/markdown-parse.js +66 -2
  96. package/dist/core/components/markdown-parse.js.map +1 -1
  97. package/dist/core/components/markdown-render.d.ts.map +1 -1
  98. package/dist/core/components/markdown-render.js +220 -14
  99. package/dist/core/components/markdown-render.js.map +1 -1
  100. package/dist/core/components/markdown.d.ts +4 -3
  101. package/dist/core/components/markdown.d.ts.map +1 -1
  102. package/dist/core/components/markdown.js +6 -5
  103. package/dist/core/components/markdown.js.map +1 -1
  104. package/dist/core/components/paginator.d.ts.map +1 -1
  105. package/dist/core/components/paginator.js +5 -3
  106. package/dist/core/components/paginator.js.map +1 -1
  107. package/dist/core/components/perf-overlay.d.ts.map +1 -1
  108. package/dist/core/components/perf-overlay.js +3 -2
  109. package/dist/core/components/perf-overlay.js.map +1 -1
  110. package/dist/core/components/preference-list.d.ts.map +1 -1
  111. package/dist/core/components/preference-list.js +75 -37
  112. package/dist/core/components/preference-list.js.map +1 -1
  113. package/dist/core/components/progress.d.ts.map +1 -1
  114. package/dist/core/components/progress.js +4 -3
  115. package/dist/core/components/progress.js.map +1 -1
  116. package/dist/core/components/separator-v3.d.ts.map +1 -1
  117. package/dist/core/components/separator-v3.js +11 -11
  118. package/dist/core/components/separator-v3.js.map +1 -1
  119. package/dist/core/components/separator.d.ts.map +1 -1
  120. package/dist/core/components/separator.js +4 -1
  121. package/dist/core/components/separator.js.map +1 -1
  122. package/dist/core/components/skeleton.d.ts.map +1 -1
  123. package/dist/core/components/skeleton.js +3 -2
  124. package/dist/core/components/skeleton.js.map +1 -1
  125. package/dist/core/components/surface-text.d.ts +7 -0
  126. package/dist/core/components/surface-text.d.ts.map +1 -1
  127. package/dist/core/components/surface-text.js +33 -25
  128. package/dist/core/components/surface-text.js.map +1 -1
  129. package/dist/core/components/table-v3.d.ts +5 -2
  130. package/dist/core/components/table-v3.d.ts.map +1 -1
  131. package/dist/core/components/table-v3.js +162 -37
  132. package/dist/core/components/table-v3.js.map +1 -1
  133. package/dist/core/components/table.d.ts +51 -7
  134. package/dist/core/components/table.d.ts.map +1 -1
  135. package/dist/core/components/table.js +655 -81
  136. package/dist/core/components/table.js.map +1 -1
  137. package/dist/core/fixture-promotion.d.ts +33 -0
  138. package/dist/core/fixture-promotion.d.ts.map +1 -0
  139. package/dist/core/fixture-promotion.js +62 -0
  140. package/dist/core/fixture-promotion.js.map +1 -0
  141. package/dist/core/forms/filter-interactive.d.ts.map +1 -1
  142. package/dist/core/forms/filter-interactive.js +2 -4
  143. package/dist/core/forms/filter-interactive.js.map +1 -1
  144. package/dist/core/forms/multiselect.d.ts.map +1 -1
  145. package/dist/core/forms/multiselect.js +2 -4
  146. package/dist/core/forms/multiselect.js.map +1 -1
  147. package/dist/core/forms/note.d.ts.map +1 -1
  148. package/dist/core/forms/note.js +2 -1
  149. package/dist/core/forms/note.js.map +1 -1
  150. package/dist/core/forms/select.d.ts.map +1 -1
  151. package/dist/core/forms/select.js +2 -4
  152. package/dist/core/forms/select.js.map +1 -1
  153. package/dist/core/forms/textarea-editor.d.ts.map +1 -1
  154. package/dist/core/forms/textarea-editor.js +7 -5
  155. package/dist/core/forms/textarea-editor.js.map +1 -1
  156. package/dist/core/layout/envelope.d.ts +174 -0
  157. package/dist/core/layout/envelope.d.ts.map +1 -0
  158. package/dist/core/layout/envelope.js +336 -0
  159. package/dist/core/layout/envelope.js.map +1 -0
  160. package/dist/core/layout/geometry.d.ts +39 -0
  161. package/dist/core/layout/geometry.d.ts.map +1 -0
  162. package/dist/core/layout/geometry.js +201 -0
  163. package/dist/core/layout/geometry.js.map +1 -0
  164. package/dist/core/mode-lowering.d.ts +48 -0
  165. package/dist/core/mode-lowering.d.ts.map +1 -0
  166. package/dist/core/mode-lowering.js +176 -0
  167. package/dist/core/mode-lowering.js.map +1 -0
  168. package/dist/core/numeric.d.ts +16 -0
  169. package/dist/core/numeric.d.ts.map +1 -0
  170. package/dist/core/numeric.js +37 -0
  171. package/dist/core/numeric.js.map +1 -0
  172. package/dist/core/render/differ.d.ts.map +1 -1
  173. package/dist/core/render/differ.js +15 -13
  174. package/dist/core/render/differ.js.map +1 -1
  175. package/dist/core/runtime-viewport.d.ts.map +1 -1
  176. package/dist/core/runtime-viewport.js +2 -3
  177. package/dist/core/runtime-viewport.js.map +1 -1
  178. package/dist/core/schema-block.d.ts +63 -0
  179. package/dist/core/schema-block.d.ts.map +1 -0
  180. package/dist/core/schema-block.js +361 -0
  181. package/dist/core/schema-block.js.map +1 -0
  182. package/dist/core/selection.d.ts +127 -0
  183. package/dist/core/selection.d.ts.map +1 -0
  184. package/dist/core/selection.js +350 -0
  185. package/dist/core/selection.js.map +1 -0
  186. package/dist/core/standard-blocks.d.ts +264 -0
  187. package/dist/core/standard-blocks.d.ts.map +1 -0
  188. package/dist/core/standard-blocks.js +2518 -0
  189. package/dist/core/standard-blocks.js.map +1 -0
  190. package/dist/core/story-capture.d.ts +48 -0
  191. package/dist/core/story-capture.d.ts.map +1 -0
  192. package/dist/core/story-capture.js +64 -0
  193. package/dist/core/story-capture.js.map +1 -0
  194. package/dist/core/text/grapheme.d.ts +51 -0
  195. package/dist/core/text/grapheme.d.ts.map +1 -1
  196. package/dist/core/text/grapheme.js +68 -0
  197. package/dist/core/text/grapheme.js.map +1 -1
  198. package/dist/core/text/icon-presentation.d.ts +10 -0
  199. package/dist/core/text/icon-presentation.d.ts.map +1 -0
  200. package/dist/core/text/icon-presentation.js +12 -0
  201. package/dist/core/text/icon-presentation.js.map +1 -0
  202. package/dist/core/text/index.d.ts +2 -1
  203. package/dist/core/text/index.d.ts.map +1 -1
  204. package/dist/core/text/index.js +2 -1
  205. package/dist/core/text/index.js.map +1 -1
  206. package/dist/core/text/wrap.d.ts.map +1 -1
  207. package/dist/core/text/wrap.js +37 -20
  208. package/dist/core/text/wrap.js.map +1 -1
  209. package/dist/core/theme/color.d.ts +32 -0
  210. package/dist/core/theme/color.d.ts.map +1 -1
  211. package/dist/core/theme/color.js +68 -0
  212. package/dist/core/theme/color.js.map +1 -1
  213. package/dist/core/theme/doctor.d.ts +37 -0
  214. package/dist/core/theme/doctor.d.ts.map +1 -0
  215. package/dist/core/theme/doctor.js +175 -0
  216. package/dist/core/theme/doctor.js.map +1 -0
  217. package/dist/core/theme/dtcg.d.ts.map +1 -1
  218. package/dist/core/theme/dtcg.js +10 -1
  219. package/dist/core/theme/dtcg.js.map +1 -1
  220. package/dist/core/theme/graph-types.d.ts +5 -0
  221. package/dist/core/theme/graph-types.d.ts.map +1 -1
  222. package/dist/core/theme/graph.d.ts.map +1 -1
  223. package/dist/core/theme/graph.js +52 -5
  224. package/dist/core/theme/graph.js.map +1 -1
  225. package/dist/core/theme/index.d.ts +4 -1
  226. package/dist/core/theme/index.d.ts.map +1 -1
  227. package/dist/core/theme/index.js +3 -1
  228. package/dist/core/theme/index.js.map +1 -1
  229. package/dist/core/theme/presets.d.ts +3 -2
  230. package/dist/core/theme/presets.d.ts.map +1 -1
  231. package/dist/core/theme/presets.js +22 -29
  232. package/dist/core/theme/presets.js.map +1 -1
  233. package/dist/core/theme/tokens.d.ts +1 -1
  234. package/dist/core/theme/tokens.d.ts.map +1 -1
  235. package/dist/factory.d.ts +3 -0
  236. package/dist/factory.d.ts.map +1 -1
  237. package/dist/factory.js +4 -6
  238. package/dist/factory.js.map +1 -1
  239. package/dist/index.d.ts +23 -6
  240. package/dist/index.d.ts.map +1 -1
  241. package/dist/index.js +25 -6
  242. package/dist/index.js.map +1 -1
  243. package/dist/ports/context.d.ts +6 -1
  244. package/dist/ports/context.d.ts.map +1 -1
  245. package/dist/ports/surface.d.ts +6 -4
  246. package/dist/ports/surface.d.ts.map +1 -1
  247. package/dist/ports/surface.js +40 -23
  248. package/dist/ports/surface.js.map +1 -1
  249. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -4,18 +4,35 @@
4
4
  * Themed terminal components for CLIs, loggers, and scripts —
5
5
  * with graceful degradation across output modes.
6
6
  */
7
- export { createSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
7
+ export { createSurface, isPackedSurface, FULL_MASK, ROTATION_CHAR_MAP, } from './ports/surface.js';
8
8
  export { FLAG_BOLD, FLAG_DIM, FLAG_STRIKETHROUGH, FLAG_INVERSE, FLAG_EMPTY, UNDERLINE_SOLID, UNDERLINE_CURLY, UNDERLINE_DOTDASH, FLAG_DASHED, } from './core/render/packed-cell.js';
9
9
  // Context
10
- export { getDefaultContext, setDefaultContext, } from './context.js';
11
- export { cloneContextWithResolvedTheme, cloneContextWithTheme, } from './context-theme.js';
10
+ export { getDefaultContext, setDefaultContext, setDefaultContextInitializer, } from './context.js';
11
+ export { cloneContextWithResolvedTheme, cloneContextWithTheme, observeTheme, } from './context-theme.js';
12
12
  // Context resolution helpers
13
13
  export { resolveCtx, resolveSafeCtx } from './core/resolve-ctx.js';
14
14
  export { systemClock, resolveClock, sleep, defer } from './core/clock.js';
15
15
  export { decodeRawKeyInput, decodeRawKeySequence } from './core/key-input.js';
16
16
  export { sanitizeRuntimeDimension, readRuntimeViewport, installRuntimeViewportOverlay, updateRuntimeViewport, } from './core/runtime-viewport.js';
17
+ export { sanitizeNonNegativeInt, sanitizeOptionalNonNegativeInt, sanitizeOptionalPositiveInt, sanitizePositiveInt, } from './core/numeric.js';
18
+ export { solveGridRects, solveSplitAxisSizes, solveSplitPaneRects, } from './core/layout/geometry.js';
19
+ export { RE035_LAYOUT_SCOPE, assignLayoutChild, assignedLayoutRect, contentExtentFromBuffer, contentExtentFromSurface, defineLayoutEnvelope, isResolvedLayoutEnvelope, layoutConstraints, layoutExplanationFacts, layoutExplanationText, layoutPreference, measureTextContent, placeInRect, renderWithResolvedLayout, resolveStackLayout, } from './core/layout/envelope.js';
17
20
  // Mode rendering strategy
18
21
  export { renderByMode, } from './core/mode-render.js';
22
+ export { BindingFrame, bindingFrame, bindingFrameFromSnapshots, bindingSnapshot, commandIntent, defineDataRequirement, defineDataProvider, defineViewData, isBindingSnapshot, isCommandIntent, isDataProvider, isDataRequirement, isProviderResolution, isProviderScope, isViewDataContract, provide, providerScope, ProviderScope, resolveProviderRequirement, resolveProviderRequirements, ViewDataContract, } from './core/binding.js';
23
+ export { coordinateSelection, defineSelectionOwner, extractSelectionText, isSelectionOwner, selectionClipboardEffect, selectionRange, selectionRegion, } from './core/selection.js';
24
+ export { bindingFrameUpdateFromSnapshots, } from './core/binding-frame-update.js';
25
+ export { ActiveBindingCollection, activeBindingCollection, activeBindingEntry, collectActiveBindings, isActiveBindingCollection, isActiveBindingEntry, } from './core/active-binding-collection.js';
26
+ export { activateBinding, bindingLifecycleRecord, defineBindingLifecycleOwner, disposeBinding, invalidateBinding, isBindingLifecycleOwner, isBindingLifecycleRecord, suspendBinding, } from './core/binding-lifecycle.js';
27
+ export { AppShellComposition, defineAppShellComposition, isAppShellComposition, } from './core/app-shell-composition.js';
28
+ export { blockMetadataReportText, blockMetadataSummary, blockPackageManifestReportText, blockPackageManifestSummary, defineBlock, defineBlockPackage, isBlockDefinition, validateBlockMetadata, validateBlockPackageManifest, } from './core/block-metadata.js';
29
+ export { blockRenderNode, isBlockRenderNode, renderBlockTree, } from './core/block-tree-render.js';
30
+ export { bindSchemaBlockInput, defineBlockSchemaAdapter, defineSchemaBlock, isBlockSchemaAdapter, isSchemaBoundBlockDefinition, parseBlockSchema, } from './core/schema-block.js';
31
+ export { activityStreamBlock, activityStreamSchemaAdapter, activityStreamSchemaBlock, appShellBlock, binaryDecisionBlock, binaryDecisionSchemaAdapter, binaryDecisionSchemaBlock, brandEmphasisBlock, brandEmphasisSchemaAdapter, brandEmphasisSchemaBlock, denseComparisonBlock, denseComparisonSchemaAdapter, denseComparisonSchemaBlock, dividerBlock, dividerSchemaAdapter, dividerSchemaBlock, explorationListBlock, explorationListSchemaAdapter, explorationListSchemaBlock, explainabilityWalkthroughBlock, explainabilityWalkthroughSchemaAdapter, explainabilityWalkthroughSchemaBlock, formattedDocumentBlock, formattedDocumentSchemaAdapter, formattedDocumentSchemaBlock, framedGroupBlock, framedGroupSchemaAdapter, framedGroupSchemaBlock, hierarchyBlock, hierarchySchemaAdapter, hierarchySchemaBlock, inFlowStatusBlock, inFlowStatusSchemaAdapter, inFlowStatusSchemaBlock, inlineStatusBlock, inlineStatusSchemaAdapter, inlineStatusSchemaBlock, inspectorPanelBlock, inspectorPanelSchemaAdapter, inspectorPanelSchemaBlock, linkDestinationBlock, linkDestinationSchemaAdapter, linkDestinationSchemaBlock, modeAwarePrimitiveBlock, modeAwarePrimitiveSchemaAdapter, modeAwarePrimitiveSchemaBlock, multipleChoiceBlock, multipleChoiceSchemaAdapter, multipleChoiceSchemaBlock, pathProgressBlock, pathProgressSchemaAdapter, pathProgressSchemaBlock, peerNavigationBlock, peerNavigationSchemaAdapter, peerNavigationSchemaBlock, progressIndicatorBlock, progressIndicatorSchemaAdapter, progressIndicatorSchemaBlock, progressiveDisclosureBlock, progressiveDisclosureSchemaAdapter, progressiveDisclosureSchemaBlock, readerSurfaceBlock, readerSurfaceSchemaAdapter, readerSurfaceSchemaBlock, shortcutCueBlock, shortcutCueSchemaAdapter, shortcutCueSchemaBlock, singleChoiceBlock, singleChoiceSchemaAdapter, singleChoiceSchemaBlock, textEntryBlock, textEntrySchemaAdapter, textEntrySchemaBlock, temporalDependencyBlock, temporalDependencySchemaAdapter, temporalDependencySchemaBlock, standardBlockPackageManifest, standardBlocks, standardBlockStories, transientOverlayBlock, transientOverlaySchemaAdapter, transientOverlaySchemaBlock, } from './core/standard-blocks.js';
32
+ export { componentMetadataReportText, componentMetadataSummary, defineComponentMetadata, validateComponentMetadata, } from './core/component-metadata.js';
33
+ export { captureStoryMatrix, storyCaptureMatrixText, } from './core/story-capture.js';
34
+ export { createFixturePromotionRecord, fixturePromotionText, reverseFixturePromotionRecord, } from './core/fixture-promotion.js';
35
+ export { lintModeLowering, modeLoweringReportText, } from './core/mode-lowering.js';
19
36
  // Background fill utilities
20
37
  export { shouldApplyBg, makeBgFill } from './core/bg-fill.js';
21
38
  // Factory
@@ -28,6 +45,8 @@ CYAN_MAGENTA, TEAL_ORANGE_PINK, PRESETS, tv,
28
45
  styled, styledStatus,
29
46
  // Theme extension
30
47
  extendTheme,
48
+ // Theme doctor
49
+ doctorTheme, themeContrastRatio,
31
50
  // Gradient
32
51
  lerp3, gradientText,
33
52
  // Resolver
@@ -39,15 +58,15 @@ rgbToAnsi256, nearestAnsi256, rgbToAnsi16, ansi256ToAnsi16,
39
58
  // Theme accessors
40
59
  createThemeAccessors,
41
60
  // Color manipulation
42
- hexToRgb, rgbToHex, lighten, darken, mix, complementary, saturate, desaturate,
61
+ color, colorHex, colorRgb, hexToRgb, isResolvedColor, resolveColor, rgbToHex, tryResolveColor, lighten, darken, mix, complementary, saturate, desaturate,
43
62
  // Reactive Token Graph
44
63
  createTokenGraph, } from './core/theme/index.js';
45
64
  // Text / grapheme utilities
46
- export { isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
65
+ export { forceTextPresentation, TEXT_PRESENTATION_SELECTOR, isWideChar, segmentGraphemes, graphemeClusterWidth, graphemeWidth, sanitizeTerminalText, sanitizePlainTerminalText, prepareWrappedText, wrapPreparedTextToWidth, clipToWidth, wrapToWidth, ANSI_CONTROL_SEQUENCE_RE, ANSI_SGR_RE, stripAnsi, } from './core/text/index.js';
47
66
  // Detection
48
67
  export { detectOutputMode, detectColorScheme, } from './core/detect/index.js';
49
68
  // Components
50
- export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, tableSurface, box, headerBox, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, separator, separatorSurface, badge, alert, alertSurface, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, explainability, inspector, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, constrain, timer, createTimer, createStopwatch, cursorGuard, withHiddenCursor, sparkline, brailleChartSurface, statsPanelSurface, perfOverlaySurface, } from './core/components/index.js';
69
+ export { spinnerFrame, createSpinner, progressBar, createProgressBar, createAnimatedProgressBar, table, tableSurface, box, headerBox, boxSurface, headerBoxSurface, selectLogoSize, loadRandomLogo, separator, separatorSurface, badge, alert, alertSurface, skeleton, kbd, tree, accordion, timeline, tabs, breadcrumb, paginator, stepper, guidedFlow, explainability, inspector, dag, dagSlice, dagLayout, arraySource, isDagSource, isSlicedDagSource, dagStats, enumeratedList, hyperlink, log, markdown, constrain, timer, createTimer, createStopwatch, cursorGuard, withHiddenCursor, sparkline, brailleChartSurface, statsPanelSurface, perfOverlaySurface, } from './core/components/index.js';
51
70
  export { preferenceListSurface, preferenceRowSurface, resolvePreferenceRowLayout, preparePreferenceRow, preparePreferenceSections, } from './core/components/preference-list.js';
52
71
  // Shared ANSI escape constants
53
72
  export { HIDE_CURSOR, SHOW_CURSOR, CLEAR_LINE_RETURN } from './core/ansi.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,12 @@ export interface BijouContext {
25
25
  readonly clock?: ClockPort;
26
26
  /** Color / text-decoration adapter. */
27
27
  readonly style: StylePort;
28
- /** Reactive and Semantic Token Graph for advanced theming. */
28
+ /**
29
+ * Reactive token graph for advanced theming.
30
+ *
31
+ * Third-party component authors should prefer the public `observeTheme()`
32
+ * seam over subscribing to this graph directly.
33
+ */
29
34
  readonly tokenGraph: TokenGraph;
30
35
  /** Resolve styles from a global stylesheet based on component identity. */
31
36
  resolveBCSS(identity: {
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ports/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC,2EAA2E;IAC3E,WAAW,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,sCAAsC;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;IACnD,oCAAoC;IACpC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;IAC/C,qCAAqC;IACrC,OAAO,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;IACjD,6DAA6D;IAC7D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,wCAAwC;IACxC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAC5B,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;CACvC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ports/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,yFAAyF;IACzF,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAEhC,2EAA2E;IAC3E,WAAW,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjG,sCAAsC;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;IACnD,oCAAoC;IACpC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;IAC/C,qCAAqC;IACrC,OAAO,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC;IACjD,6DAA6D;IAC7D,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAChC,wCAAwC;IACxC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;IAC5B,4DAA4D;IAC5D,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,EAAE,CAAC;CACvC"}
@@ -4,16 +4,17 @@
4
4
  * A Surface is a 2D grid of Cells. Each Cell is a self-contained unit
5
5
  * of terminal output (character + styling).
6
6
  */
7
+ import { type ColorRef } from '../core/theme/color.js';
7
8
  /**
8
9
  * A single terminal character cell.
9
10
  */
10
11
  export interface Cell {
11
12
  /** The character to display. Must be a single grapheme. */
12
13
  char: string;
13
- /** Foreground hex color (e.g. '#ffffff'). Undefined = terminal default. */
14
- fg?: string;
15
- /** Background hex color (e.g. '#000000'). Undefined = terminal default. */
16
- bg?: string;
14
+ /** Foreground color reference. Undefined = terminal default. */
15
+ fg?: ColorRef;
16
+ /** Background color reference. Undefined = terminal default. */
17
+ bg?: ColorRef;
17
18
  /**
18
19
  * Pre-parsed foreground RGB channels `[r, g, b]` (0–255 each).
19
20
  * When present, the hot path skips hex string parsing of `fg`
@@ -181,6 +182,7 @@ export interface Surface {
181
182
  * of common line-art and box-drawing characters.
182
183
  */
183
184
  export declare const ROTATION_CHAR_MAP: Record<string, string>;
185
+ export declare function isPackedSurface(s: Surface): s is PackedSurface;
184
186
  /**
185
187
  * Extended surface interface exposing the packed buffer for hot-path consumers.
186
188
  */
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@
4
4
  * A Surface is a 2D grid of Cells. Each Cell is a self-contained unit
5
5
  * of terminal output (character + styling).
6
6
  */
7
+ import { sanitizeNonNegativeInt } from '../core/numeric.js';
8
+ import { colorHex, colorRgb, isResolvedColor } from '../core/theme/color.js';
7
9
  /** A mask that affects all properties of a cell. */
8
10
  export const FULL_MASK = {
9
11
  char: true,
@@ -35,6 +37,8 @@ function maskCell(cell, mask) {
35
37
  char: mask.char ? cell.char : ' ',
36
38
  fg: mask.fg ? cell.fg : undefined,
37
39
  bg: mask.bg ? cell.bg : undefined,
40
+ fgRGB: mask.fg ? cell.fgRGB : undefined,
41
+ bgRGB: mask.bg ? cell.bgRGB : undefined,
38
42
  modifiers: mask.modifiers ? cell.modifiers : undefined,
39
43
  empty: mask.alpha ? (cell.empty ?? false) : false,
40
44
  opacity: mask.alpha ? (cell.opacity ?? 1) : 1,
@@ -45,6 +49,8 @@ function cloneCell(cell) {
45
49
  char: cell.char,
46
50
  fg: cell.fg,
47
51
  bg: cell.bg,
52
+ fgRGB: cell.fgRGB,
53
+ bgRGB: cell.bgRGB,
48
54
  modifiers: cell.modifiers,
49
55
  empty: cell.empty,
50
56
  opacity: cell.opacity,
@@ -54,11 +60,13 @@ function copyCellInto(target, source) {
54
60
  target.char = source.char;
55
61
  target.fg = source.fg;
56
62
  target.bg = source.bg;
63
+ target.fgRGB = source.fgRGB;
64
+ target.bgRGB = source.bgRGB;
57
65
  target.modifiers = source.modifiers;
58
66
  target.empty = source.empty;
59
67
  target.opacity = source.opacity;
60
68
  }
61
- function isPackedSurface(s) {
69
+ export function isPackedSurface(s) {
62
70
  return 'buffer' in s && s.buffer instanceof Uint8Array;
63
71
  }
64
72
  // ── Packed buffer helpers ────────────────────────────────
@@ -82,6 +90,23 @@ function inlineHexRGB(hex, out, off) {
82
90
  out[off + 2] = (hexD(c5) << 4) | hexD(c6);
83
91
  return true;
84
92
  }
93
+ function writeColorRefInto(ref, rgb, out, off) {
94
+ if (rgb !== undefined) {
95
+ out[off] = rgb[0];
96
+ out[off + 1] = rgb[1];
97
+ out[off + 2] = rgb[2];
98
+ return true;
99
+ }
100
+ if (ref == null)
101
+ return false;
102
+ if (isResolvedColor(ref)) {
103
+ out[off] = ref.rgb[0];
104
+ out[off + 1] = ref.rgb[1];
105
+ out[off + 2] = ref.rgb[2];
106
+ return true;
107
+ }
108
+ return inlineHexRGB(ref, out, off);
109
+ }
85
110
  /** Encode a Cell into the packed buffer. */
86
111
  function encodeCellIntoBuf(buf, idx, cell, sideTable) {
87
112
  const off = idx * CELL_STRIDE;
@@ -92,14 +117,7 @@ function encodeCellIntoBuf(buf, idx, cell, sideTable) {
92
117
  // Theme tokens populate fgRGB via resolve.ts populateThemeRGB(),
93
118
  // so theme-driven paints skip inlineHexRGB entirely.
94
119
  let alphaBits = 0;
95
- const fgRGB = cell.fgRGB;
96
- if (fgRGB !== undefined) {
97
- buf[off + OFF_FG_R] = fgRGB[0];
98
- buf[off + OFF_FG_G] = fgRGB[1];
99
- buf[off + OFF_FG_B] = fgRGB[2];
100
- alphaBits |= FLAG_FG_SET;
101
- }
102
- else if (cell.fg && inlineHexRGB(cell.fg, buf, off + OFF_FG_R)) {
120
+ if (writeColorRefInto(cell.fg, cell.fgRGB, buf, off + OFF_FG_R)) {
103
121
  alphaBits |= FLAG_FG_SET;
104
122
  }
105
123
  else {
@@ -107,14 +125,7 @@ function encodeCellIntoBuf(buf, idx, cell, sideTable) {
107
125
  buf[off + OFF_FG_G] = 0;
108
126
  buf[off + OFF_FG_B] = 0;
109
127
  }
110
- const bgRGB = cell.bgRGB;
111
- if (bgRGB !== undefined) {
112
- buf[off + OFF_BG_R] = bgRGB[0];
113
- buf[off + OFF_BG_G] = bgRGB[1];
114
- buf[off + OFF_BG_B] = bgRGB[2];
115
- alphaBits |= FLAG_BG_SET;
116
- }
117
- else if (cell.bg && inlineHexRGB(cell.bg, buf, off + OFF_BG_R)) {
128
+ if (writeColorRefInto(cell.bg, cell.bgRGB, buf, off + OFF_BG_R)) {
118
129
  alphaBits |= FLAG_BG_SET;
119
130
  }
120
131
  else {
@@ -133,10 +144,14 @@ function decodeCellFromBuf(buf, idx, sideTable) {
133
144
  const flags = buf[off + OFF_FLAGS];
134
145
  const fgSet = (alphaByte & FLAG_FG_SET) !== 0;
135
146
  const bgSet = (alphaByte & FLAG_BG_SET) !== 0;
147
+ const fgRGB = fgSet ? [buf[off + OFF_FG_R], buf[off + OFF_FG_G], buf[off + OFF_FG_B]] : undefined;
148
+ const bgRGB = bgSet ? [buf[off + OFF_BG_R], buf[off + OFF_BG_G], buf[off + OFF_BG_B]] : undefined;
136
149
  return {
137
150
  char: decodeChar(charCode, sideTable),
138
151
  fg: fgSet ? toHex(buf[off + OFF_FG_R], buf[off + OFF_FG_G], buf[off + OFF_FG_B]) : undefined,
139
152
  bg: bgSet ? toHex(buf[off + OFF_BG_R], buf[off + OFF_BG_G], buf[off + OFF_BG_B]) : undefined,
153
+ fgRGB,
154
+ bgRGB,
140
155
  modifiers: decodeModifiers(flags & ~FLAG_EMPTY),
141
156
  empty: (flags & FLAG_EMPTY) !== 0,
142
157
  opacity: decodeOpacity(alphaByte & OPACITY_MASK),
@@ -146,8 +161,10 @@ function decodeCellFromBuf(buf, idx, sideTable) {
146
161
  function syncCellFromBuf(cell, buf, idx, sideTable, exactOpacity) {
147
162
  const decoded = decodeCellFromBuf(buf, idx, sideTable);
148
163
  cell.char = decoded.char;
149
- cell.fg = decoded.fg;
150
- cell.bg = decoded.bg;
164
+ cell.fg = colorHex(decoded.fg);
165
+ cell.bg = colorHex(decoded.bg);
166
+ cell.fgRGB = colorRgb(decoded.fg);
167
+ cell.bgRGB = colorRgb(decoded.bg);
151
168
  cell.modifiers = decoded.modifiers;
152
169
  cell.empty = decoded.empty;
153
170
  // Preserve exact float when available; use quantized only for buffer-decoded reads
@@ -167,7 +184,7 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
167
184
  buf[off + OFF_CHAR + 1] = (charCode >> 8) & 0xFF;
168
185
  }
169
186
  if (mask.fg) {
170
- if (source.fg && inlineHexRGB(source.fg, buf, off + OFF_FG_R)) {
187
+ if (writeColorRefInto(source.fg, source.fgRGB, buf, off + OFF_FG_R)) {
171
188
  buf[off + OFF_ALPHA] = buf[off + OFF_ALPHA] | FLAG_FG_SET;
172
189
  }
173
190
  else {
@@ -178,7 +195,7 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
178
195
  }
179
196
  }
180
197
  if (mask.bg) {
181
- if (source.bg && inlineHexRGB(source.bg, buf, off + OFF_BG_R)) {
198
+ if (writeColorRefInto(source.bg, source.bgRGB, buf, off + OFF_BG_R)) {
182
199
  buf[off + OFF_ALPHA] = buf[off + OFF_ALPHA] | FLAG_BG_SET;
183
200
  }
184
201
  else {
@@ -217,8 +234,8 @@ function applyMaskToBuf(buf, idx, source, mask, sideTable) {
217
234
  * @returns A new Surface instance.
218
235
  */
219
236
  export function createSurface(width, height, fill) {
220
- const w = Math.max(0, Math.floor(width));
221
- const h = Math.max(0, Math.floor(height));
237
+ const w = sanitizeNonNegativeInt(width, 0);
238
+ const h = sanitizeNonNegativeInt(height, 0);
222
239
  const size = w * h;
223
240
  const defaultCell = fill ?? { char: ' ', empty: true };
224
241
  const sideTable = [];
@@ -1 +1 @@
1
- {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surface.js","sourceRoot":"","sources":["../../src/ports/surface.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flyingrobots/bijou",
3
- "version": "4.4.1",
3
+ "version": "7.0.0",
4
4
  "description": "Themed terminal components for CLIs, loggers, and scripts — graceful degradation included.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -35,7 +35,7 @@
35
35
  "@types/node": "^22.0.0",
36
36
  "fast-check": "^4.5.3",
37
37
  "typescript": "^5.9.3",
38
- "vitest": "^4.0.18"
38
+ "vitest": "^4.1.8"
39
39
  },
40
40
  "keywords": [
41
41
  "cli",