@almadar/ui 6.54.0 → 6.56.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 (114) hide show
  1. package/dist/{AwaitingSkeletonContext-Bh399p1x.d.ts → AwaitingSkeletonContext-DPgW__WV.d.ts} +3 -1
  2. package/dist/{Canvas3DHost-B-y2TNij.d.ts → Canvas3DHost-DfAhg6EH.d.ts} +2 -0
  3. package/dist/Typography-7PDT62PG.js +5 -0
  4. package/dist/{UISlotRenderer-QUEG6WFM.js → UISlotRenderer-QTHFT6Z4.js} +6 -6
  5. package/dist/avl/index.cjs +3385 -1883
  6. package/dist/avl/index.js +45 -737
  7. package/dist/{chunk-ERXIHZW3.js → chunk-D2E44ODB.js} +29 -15
  8. package/dist/{chunk-FJDS4SVD.js → chunk-F4ZTPKZL.js} +3 -3
  9. package/dist/{chunk-U3CGKPOK.js → chunk-FQM37C56.js} +136 -107
  10. package/dist/{chunk-4UP6BZ4R.js → chunk-HCSJHRC4.js} +1 -1
  11. package/dist/{chunk-N2V4LHFQ.js → chunk-HRCR53OW.js} +10 -1
  12. package/dist/{chunk-O7OLVVBR.js → chunk-Q47ZN2DW.js} +24 -22
  13. package/dist/{chunk-4HC5HRHB.js → chunk-QGH4NAQO.js} +2 -2
  14. package/dist/{chunk-MCKFWPT2.js → chunk-RNY5LJXJ.js} +1 -1
  15. package/dist/{chunk-Z7JWXIRE.js → chunk-SGJHVPHC.js} +2 -2
  16. package/dist/{chunk-6O37FCX4.js → chunk-V3FGTQUE.js} +37 -2
  17. package/dist/{chunk-U2FGMHQP.js → chunk-XZKGRSIO.js} +3334 -1796
  18. package/dist/{chunk-Z5IYJU44.js → chunk-Y53Q55H5.js} +521 -24
  19. package/dist/components/index.cjs +5194 -3008
  20. package/dist/components/index.d.ts +117 -52
  21. package/dist/components/index.js +13 -13
  22. package/dist/context/index.cjs +36 -1
  23. package/dist/context/index.d.ts +1 -1
  24. package/dist/context/index.js +1 -1
  25. package/dist/design-classes/index.cjs +29 -15
  26. package/dist/design-classes/index.d.cts +1 -0
  27. package/dist/design-classes/index.d.ts +1 -0
  28. package/dist/design-classes/index.js +29 -15
  29. package/dist/hooks/index.cjs +10 -1
  30. package/dist/hooks/index.js +3 -3
  31. package/dist/lib/drawable/three/index.cjs +442 -82
  32. package/dist/lib/drawable/three/index.d.ts +2 -2
  33. package/dist/lib/drawable/three/index.js +28 -24
  34. package/dist/lib/index.cjs +52 -3
  35. package/dist/lib/index.d.ts +1 -1
  36. package/dist/lib/index.js +4 -4
  37. package/dist/locales/index.cjs +30 -3
  38. package/dist/locales/index.js +21 -3
  39. package/dist/providers/index.cjs +5330 -3091
  40. package/dist/providers/index.d.ts +1 -1
  41. package/dist/providers/index.js +12 -9
  42. package/dist/runtime/index.cjs +5400 -3182
  43. package/dist/runtime/index.d.ts +7 -3
  44. package/dist/runtime/index.js +8 -8
  45. package/dist/ssr/index.cjs +24 -8
  46. package/dist/ssr/index.js +24 -8
  47. package/dist/{themeTokens-Ccu7EmGY.d.ts → themeTokens-D6MFwKrC.d.ts} +6 -2
  48. package/locales/ar.json +10 -1
  49. package/locales/en.json +10 -1
  50. package/locales/sl.json +10 -1
  51. package/package.json +6 -6
  52. package/scripts/theme-contrast-audit.mjs +20 -1
  53. package/tailwind-preset.cjs +3 -0
  54. package/themes/_base.css +61 -0
  55. package/themes/_contract.md +37 -0
  56. package/themes/almadar-heritage.css +82 -0
  57. package/themes/almadar-website.css +82 -0
  58. package/themes/almadar.css +82 -0
  59. package/themes/aqua.css +82 -0
  60. package/themes/arabesque.css +82 -0
  61. package/themes/art-deco.css +82 -0
  62. package/themes/art-nouveau.css +82 -0
  63. package/themes/atelier.css +82 -0
  64. package/themes/bauhaus.css +82 -0
  65. package/themes/bloomberg-dense.css +83 -1
  66. package/themes/blueprint.css +84 -0
  67. package/themes/clay.css +82 -0
  68. package/themes/comic.css +82 -0
  69. package/themes/constructivist.css +82 -0
  70. package/themes/corporate.css +82 -0
  71. package/themes/cyberpunk.css +82 -0
  72. package/themes/frutiger-aero.css +83 -0
  73. package/themes/game-adventure.css +15 -0
  74. package/themes/game-rpg.css +16 -0
  75. package/themes/game-sci-fi.css +15 -0
  76. package/themes/game-ui-pack.css +15 -0
  77. package/themes/gazette.css +82 -0
  78. package/themes/glass.css +82 -0
  79. package/themes/gothic.css +82 -0
  80. package/themes/ink-wash.css +82 -0
  81. package/themes/kawaii.css +82 -0
  82. package/themes/kiosk.css +82 -0
  83. package/themes/linear-clean.css +82 -0
  84. package/themes/luxury.css +82 -0
  85. package/themes/mac-classic.css +90 -8
  86. package/themes/material.css +82 -0
  87. package/themes/memphis.css +82 -0
  88. package/themes/mid-century.css +82 -0
  89. package/themes/minimalist.css +82 -0
  90. package/themes/mudcloth.css +82 -0
  91. package/themes/neon.css +83 -0
  92. package/themes/neumorphic.css +82 -0
  93. package/themes/newsprint.css +82 -0
  94. package/themes/notion-editorial.css +82 -0
  95. package/themes/orb.css +82 -0
  96. package/themes/pixel.css +82 -0
  97. package/themes/prism.css +82 -0
  98. package/themes/retro.css +83 -0
  99. package/themes/risograph.css +82 -0
  100. package/themes/scandi.css +82 -0
  101. package/themes/sketch.css +82 -0
  102. package/themes/solarpunk.css +82 -0
  103. package/themes/steampunk.css +82 -0
  104. package/themes/swiss.css +82 -0
  105. package/themes/terminal.css +84 -1
  106. package/themes/trait-wars.css +82 -0
  107. package/themes/ukiyo-e.css +82 -0
  108. package/themes/vaporwave.css +82 -0
  109. package/themes/victorian.css +82 -0
  110. package/themes/wabi-sabi.css +82 -0
  111. package/themes/win95.css +84 -0
  112. package/themes/wireframe.css +82 -0
  113. package/themes/zine.css +82 -0
  114. package/dist/Typography-CFI7JUVE.js +0 -5
@@ -1,12 +1,12 @@
1
- import { A11yProps, Asset, EventKey, EventPayload, EventEmit, AssetUrl, FieldValue, EntityRow, EntityRole, AnimationName, SpriteDirection, AnimationDef, ScenePos, Camera, SoundEntry, EntityWith, TraitConfigValue, SkeletonVariant, SkeletonSpec, SkeletonNode, SurfaceMode, EventListen, JsonValue, AssetCatalog, SExpr as SExpr$1, JsonObject, EventPayloadValue, DeclaredTraitConfig, TraitConfig, ControlValue, OrbitalSchema, Trait, TraceActivity, OrbitalEntity, FormSubmitPayload, UISlot, EnterAnimation, EditFocus, TraceSubagent, TraceChatMessage } from '@almadar/core';
1
+ import { A11yProps, Asset, EventKey, EventPayload, EventEmit, AssetUrl, FieldValue, EntityRow, EntityRole, AnimationName, SpriteDirection, AnimationDef, ScenePos, Camera, SoundEntry, EntityWith, DiagramMarkRoles, TraitConfigValue, SkeletonVariant, SkeletonSpec, SkeletonNode, SurfaceMode, EventListen, JsonValue, AssetCatalog, SExpr as SExpr$1, JsonObject, EventPayloadValue, DeclaredTraitConfig, TraitConfig, ControlValue, OrbitalSchema, Trait, TraceActivity, OrbitalEntity, FormSubmitPayload, UISlot, EnterAnimation, EditFocus, TraceSubagent, TraceChatMessage } from '@almadar/core';
2
2
  export { AnimationDef, AnimationName, AudioManifest, BusEvent, BusEventListener, BusEventSource, BusEventListener as EventListener, SkeletonVariant, SoundEntry, SpriteDirection, UISlot, Unsubscribe } from '@almadar/core';
3
3
  import * as React$1 from 'react';
4
4
  import React__default, { ReactNode, ErrorInfo } from 'react';
5
5
  import { I as IconInput, U as UiError, D as DrawableNode, P as Projector, F as FxOverlayItem, B as BadgeColor, M as MeshShapeKind, a as MeshMaterial, b as DrawGroupProps, c as DrawTextProps, d as DrawMeshProps, e as DisplayField, f as BadgeVariant, C as ColorToken } from '../paintDispatch-_6EhJCiL.js';
6
6
  export { g as Badge, h as BadgeProps, i as FxOverlayKind, j as Icon, k as IconAnimation, l as IconProps, m as IconSize, n as ImageSource, L as LinkAction, o as Point, R as Rect } from '../paintDispatch-_6EhJCiL.js';
7
7
  import { SExpr } from '@almadar/evaluator';
8
- import { U as UnitAnimationState, F as FacingDirection, S as SpriteSheetUrls, f as SpriteFrameDims, R as ResolvedFrame, g as CanvasLighting, h as CanvasPost, a as IsometricUnit, i as CameraState } from '../Canvas3DHost-B-y2TNij.js';
9
- export { B as BoardTile, G as GameAction, j as GamePhase, k as GameState, l as GameUnit, b as IsometricFeature, I as IsometricTile, P as Position, m as UnitTrait, n as calculateAttackTargets, o as calculateValidMoves, p as createInitialGameState } from '../Canvas3DHost-B-y2TNij.js';
8
+ import { U as UnitAnimationState, F as FacingDirection, S as SpriteSheetUrls, f as SpriteFrameDims, R as ResolvedFrame, g as CanvasLighting, h as CanvasPost, a as IsometricUnit, i as CameraState } from '../Canvas3DHost-DfAhg6EH.js';
9
+ export { B as BoardTile, G as GameAction, j as GamePhase, k as GameState, l as GameUnit, b as IsometricFeature, I as IsometricTile, P as Position, m as UnitTrait, n as calculateAttackTargets, o as calculateValidMoves, p as createInitialGameState } from '../Canvas3DHost-DfAhg6EH.js';
10
10
  export { G as GameAudioContext, a as GameAudioContextValue, e as GameAudioControls, b as GameAudioProvider, c as GameAudioProviderProps, U as UseGameAudioOptions, f as useGameAudio, u as useGameAudioContext } from '../GameAudioProvider-DyBvYP2c.js';
11
11
  import { c as AvlStateMachineProps } from '../FileTree-DUi7e7Z8.js';
12
12
  export { B as BehaviorView, d as BehaviorViewProps, e as FileTree, F as FileTreeItem, f as FileTreeNode, g as FileTreeProps, M as ModuleCard, h as ModuleCardProps } from '../FileTree-DUi7e7Z8.js';
@@ -3448,7 +3448,12 @@ interface LearningPoint {
3448
3448
  x: number;
3449
3449
  y: number;
3450
3450
  }
3451
- interface LearningShape {
3451
+ /**
3452
+ * A drawn mark. Style comes from the theme by role (`tone`, `stroke`, `text`, `font`,
3453
+ * `fillStyle`); a literal field on the same mark (`color`, `lineWidth`, `fontSize`) overrides its
3454
+ * role. `color` and `fill` also accept a tone name.
3455
+ */
3456
+ interface LearningShape extends DiagramMarkRoles {
3452
3457
  type: LearningShapeType;
3453
3458
  /** Optional stable id for interaction payloads. */
3454
3459
  id?: string;
@@ -3473,8 +3478,11 @@ interface LearningShape {
3473
3478
  min?: number;
3474
3479
  max?: number;
3475
3480
  step?: number;
3481
+ /** Stroke/text color: a tone name (`ink`, `guide`, `series-2`, …), a `var()` token or a literal. Overrides `tone`. */
3476
3482
  color?: string;
3483
+ /** Fill color: a tone name, a `var()` token or a literal. A literal fills solid unless `fillStyle` says otherwise. */
3477
3484
  fill?: string;
3485
+ /** Stroke width in px. Overrides `stroke`. */
3478
3486
  lineWidth?: number;
3479
3487
  opacity?: number;
3480
3488
  /** Ellipse arc start, in degrees (screen convention: 0 = +x, clockwise). Omit with `endAngle` for a full ellipse. */
@@ -3494,7 +3502,7 @@ interface LearningReadout {
3494
3502
  label: string;
3495
3503
  /** Chip value, shown after the label. */
3496
3504
  value: string | number;
3497
- /** Chip fill/border color (default `var(--color-foreground)`). */
3505
+ /** Accent of the chip's marker dot: a tone name, token or literal (default `highlight`). */
3498
3506
  color?: string;
3499
3507
  }
3500
3508
  /** One plotted line within a trace panel. */
@@ -3539,8 +3547,14 @@ interface LearningCanvasProps extends A11yProps {
3539
3547
  width?: number;
3540
3548
  /** Canvas height in CSS pixels. */
3541
3549
  height?: number;
3542
- /** Background color (default transparent). */
3550
+ /** Canvas ground: a tone name, `var()` token or literal (default the theme's `--surface-diagram`). */
3543
3551
  backgroundColor?: string;
3552
+ /**
3553
+ * Overrides the theme's categorical palette for this canvas: `series-1…N` resolve to these
3554
+ * colors instead. For real-world conventions (CPK atom colors, resistor bands); unset, the
3555
+ * theme's `--color-series-*` apply.
3556
+ */
3557
+ series?: string[];
3544
3558
  /** Canvas text font family. Falls back to the theme's --font-family-body. */
3545
3559
  fontFamily?: string;
3546
3560
  /** Declarative shapes to draw. */
@@ -3565,6 +3579,10 @@ interface LearningCanvasProps extends A11yProps {
3565
3579
  * @synonyms sparkline, time series, history plot
3566
3580
  */
3567
3581
  traces?: LearningTracePanel[];
3582
+ /** Maps a keydown `e.code` — optionally prefixed `Mod+` (⌘/Ctrl), `Shift+`, `Alt+` — to a SEMANTIC event emitted as `UI:{event}` (e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`); keystrokes inside inputs never route. */
3583
+ keyMap?: Record<string, EventKey>;
3584
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
3585
+ keyUpMap?: Record<string, EventKey>;
3568
3586
  /** Enable pointer interaction (click/hover). */
3569
3587
  interactive?: boolean;
3570
3588
  /** Enable continuous redraw loop. */
@@ -6444,7 +6462,7 @@ interface MathRegion {
6444
6462
  samples2?: LearningPoint[];
6445
6463
  /** Baseline y-value the region closes against when `samples2` is absent (default 0). */
6446
6464
  baseline?: number;
6447
- /** Fill/stroke color (default '#2563eb'). */
6465
+ /** Fill/stroke color: a tone name, token or literal (default `series-1`, tinted). */
6448
6466
  color?: string;
6449
6467
  /** Fill opacity (default 0.2). */
6450
6468
  opacity?: number;
@@ -6464,7 +6482,7 @@ interface MathBar {
6464
6482
  y0?: number;
6465
6483
  /** Top y-value. */
6466
6484
  y1: number;
6467
- /** Fill/stroke color (default '#93c5fd'). */
6485
+ /** Fill/stroke color: a tone name, token or literal (default `series-2`, tinted). */
6468
6486
  color?: string;
6469
6487
  /** Fill opacity (default 0.5). */
6470
6488
  opacity?: number;
@@ -6475,7 +6493,7 @@ interface MathGuide {
6475
6493
  kind: 'vline' | 'hline';
6476
6494
  /** World coordinate the guide sits at. */
6477
6495
  at: number;
6478
- /** Line color (default '#9ca3af'). */
6496
+ /** Line color: a tone name, token or literal (default `guide`). */
6479
6497
  color?: string;
6480
6498
  /** Stroke dash style (default 'dashed'); 'solid' draws an unbroken line. */
6481
6499
  dash?: 'solid' | 'dashed' | 'dotted';
@@ -6494,7 +6512,7 @@ interface MathAngle {
6494
6512
  to: number;
6495
6513
  /** Arc radius, in world-x units (default 0.8). */
6496
6514
  radius?: number;
6497
- /** Arc + label color (default '#0ea5e9'). */
6515
+ /** Arc + label color: a tone name, token or literal (default `series-4`). */
6498
6516
  color?: string;
6499
6517
  /** Angle label. */
6500
6518
  label?: string;
@@ -6508,7 +6526,7 @@ interface MathHop {
6508
6526
  from: number;
6509
6527
  /** End x, in world coordinates. */
6510
6528
  to: number;
6511
- /** Arc + arrowhead color (default '#7c3aed'). */
6529
+ /** Arc + arrowhead color: a tone name, token or literal (default `series-3`). */
6512
6530
  color?: string;
6513
6531
  /** Hop label, centered above the arc. */
6514
6532
  label?: string;
@@ -6525,17 +6543,24 @@ interface MathCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yProps>,
6525
6543
  showAxes?: boolean;
6526
6544
  showGrid?: boolean;
6527
6545
  gridStep?: number;
6528
- /** Canvas fill color; `var(--token, fallback)` strings resolve against the active theme. Default transparent. */
6546
+ /** Canvas ground: a tone name, `var()` token or literal. Default the theme's `--surface-diagram`. */
6529
6547
  backgroundColor?: string;
6530
- /** Grid line color; resolves theme tokens (default `var(--color-border, #9ca3af)`). */
6548
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
6549
+ series?: string[];
6550
+ /** Grid line color: a tone name, token or literal (default the `grid` tone). */
6531
6551
  gridColor?: string;
6532
- /** Axis line color; resolves theme tokens (default `var(--color-muted-foreground, #374151)`). */
6552
+ /** Axis line color: a tone name, token or literal (default the `axis` tone). */
6533
6553
  axisColor?: string;
6554
+ /**
6555
+ * How the x and y ranges map to the canvas. `fit` stretches each range to fill the plot (function
6556
+ * plots); `equal` uses one scale for both axes so circles stay round (geometry). Default `fit`.
6557
+ */
6558
+ aspect?: 'fit' | 'equal';
6534
6559
  /** Draw numeric labels on grid lines (default false). */
6535
6560
  showTickLabels?: boolean;
6536
- /** Font size in px for axis tick labels (default 10). */
6561
+ /** Font size in px for axis tick labels (default the theme's `xs` step). */
6537
6562
  tickLabelFontSize?: number;
6538
- /** Base font size in px for all other canvas annotations (points, vectors, guides, curves, regions, angles, hops; default 12). */
6563
+ /** Font size in px for all other canvas annotations (default the theme's diagram label size). */
6539
6564
  labelFontSize?: number;
6540
6565
  /** Canvas text font family. Accepts a known game-font key (e.g. "future-narrow") or a CSS font-family string. */
6541
6566
  fontFamily?: string;
@@ -6599,6 +6624,7 @@ interface LearningPhysicsBody {
6599
6624
  /** 3D mode only: height in scene cells (2D ignores it). */
6600
6625
  z?: number;
6601
6626
  radius?: number;
6627
+ /** Body color: a tone name, token or literal (default the `series-1`..`series-8` tone by body index). */
6602
6628
  color?: string;
6603
6629
  label?: string;
6604
6630
  vx?: number;
@@ -6613,6 +6639,7 @@ interface LearningPhysicsBody {
6613
6639
  interface LearningPhysicsConstraint {
6614
6640
  from: string;
6615
6641
  to: string;
6642
+ /** Constraint color: a tone name, token or literal (default the `ink` tone). */
6616
6643
  color?: string;
6617
6644
  /** Draw style: rigid line (default), zigzag coil, or dashed tether. 2D only — 3D always draws a rod. */
6618
6645
  kind?: 'rod' | 'spring' | 'string';
@@ -6642,9 +6669,9 @@ interface PhysicsSceneObject {
6642
6669
  width?: number;
6643
6670
  /** Box height. */
6644
6671
  height?: number;
6645
- /** Stroke + hatch color (default '#334155'). */
6672
+ /** Stroke + hatch color: a tone name, token or literal (default the `ink` tone). */
6646
6673
  color?: string;
6647
- /** Fill color; ramp defaults to '#e2e8f0'. */
6674
+ /** Fill color: a tone name, token or literal; ramp defaults to the `fill` tone. */
6648
6675
  fill?: string;
6649
6676
  /** Fixture label. */
6650
6677
  label?: string;
@@ -6666,7 +6693,7 @@ interface PhysicsVector {
6666
6693
  dy: number;
6667
6694
  /** Multiplies `dx`/`dy` (default 1). */
6668
6695
  scale?: number;
6669
- /** Arrow + label color (default '#dc2626'). */
6696
+ /** Arrow + label color: a tone name, token or literal (default the `series-5` tone). */
6670
6697
  color?: string;
6671
6698
  /** Label drawn at the tip, offset 8px further along the arrow direction. */
6672
6699
  label?: string;
@@ -6688,9 +6715,9 @@ interface PhysicsTrail {
6688
6715
  /** Authoring handle only — not clickable. */
6689
6716
  id?: string;
6690
6717
  points: PhysicsTrailPoint[];
6691
- /** Line color (default '#94a3b8'). */
6718
+ /** Line color: a tone name, token or literal (default the `guide` tone). */
6692
6719
  color?: string;
6693
- /** 2D: stroke width in pixels (default 2). 3D: tube radius in scene cells (default 0.05). */
6720
+ /** 2D: stroke width in pixels (default the theme's normal stroke). 3D: tube radius in scene cells (default 0.05). */
6694
6721
  width?: number;
6695
6722
  /** Multiplies the per-segment fade opacity (default 1). */
6696
6723
  opacity?: number;
@@ -6723,7 +6750,7 @@ interface PhysicsSurface3D {
6723
6750
  y?: number;
6724
6751
  /** Elevation color bands; omitted → a single flat-colored sheet. */
6725
6752
  bands?: PhysicsSurfaceBand[];
6726
- /** Fallback color when `bands` is omitted (default '#64748b'). */
6753
+ /** Fallback color when `bands` is omitted: a tone name, token or literal (default the `series-1` tone). */
6727
6754
  color?: string;
6728
6755
  opacity?: number;
6729
6756
  /** Faceted low-poly shading (default true). */
@@ -6747,7 +6774,7 @@ interface PhysicsVector3D {
6747
6774
  dy: number;
6748
6775
  /** Height component (default 0). */
6749
6776
  dz?: number;
6750
- /** Arrow + label color (default '#dc2626'). */
6777
+ /** Arrow + label color: a tone name, token or literal (default the `series-5` tone). */
6751
6778
  color?: string;
6752
6779
  /** Billboard label at the tip. */
6753
6780
  label?: string;
@@ -6767,7 +6794,7 @@ interface PhysicsAngleMarker {
6767
6794
  to: number;
6768
6795
  /** Arc radius in pixels (default 26). */
6769
6796
  radius?: number;
6770
- /** Arc + label color (default '#0ea5e9'). */
6797
+ /** Arc + label color: a tone name, token or literal (default the `series-4` tone). */
6771
6798
  color?: string;
6772
6799
  /** Label drawn past the arc, along the bisecting bearing. */
6773
6800
  label?: string;
@@ -6784,7 +6811,7 @@ interface PhysicsField {
6784
6811
  angle?: number;
6785
6812
  /** Glyph size in pixels (default 14). */
6786
6813
  size?: number;
6787
- /** Glyph color (default '#94a3b8'). */
6814
+ /** Glyph color: a tone name, token or literal (default the `guide` tone). */
6788
6815
  color?: string;
6789
6816
  /** Region left edge (default 0). */
6790
6817
  x?: number;
@@ -6804,7 +6831,7 @@ interface PhysicsMeter {
6804
6831
  value: number;
6805
6832
  /** Full-bar value (default: the max value across all meters, so bars stay comparable). */
6806
6833
  max?: number;
6807
- /** Bar + value color (default '#3b82f6'). */
6834
+ /** Bar color: a tone name, token or literal (default the `series-1`..`series-8` tone by meter index). */
6808
6835
  color?: string;
6809
6836
  }
6810
6837
  interface PhysicsCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yProps>, A11yProps {
@@ -6813,6 +6840,12 @@ interface PhysicsCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yProp
6813
6840
  height?: number;
6814
6841
  title?: string;
6815
6842
  backgroundColor?: string;
6843
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
6844
+ series?: string[];
6845
+ /** Maps a keydown `e.code` (optionally `Mod+`/`Shift+`/`Alt+` prefixed) to a SEMANTIC event emitted as `UI:{event}` — e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`; keystrokes inside inputs never route. */
6846
+ keyMap?: Record<string, EventKey>;
6847
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
6848
+ keyUpMap?: Record<string, EventKey>;
6816
6849
  /** Painter: 2D raster (default) or 3D mesh scene via the lazy three.js host. */
6817
6850
  mode?: '2d' | '3d';
6818
6851
  /** 3D only: neutral camera pose ({ mode, zoom, fov, azimuth, target }). */
@@ -6918,18 +6951,18 @@ interface BiologyCompartment {
6918
6951
  height: number;
6919
6952
  /** Centered near the top of the ellipse. */
6920
6953
  label?: string;
6921
- /** Outline color (default '#16a34a'). */
6954
+ /** Outline color: a tone name, token or literal (default `ink`). */
6922
6955
  color?: string;
6923
- /** Fill color (default = `color` at ~10% alpha). */
6956
+ /** Fill color: a tone name, token or literal (default = `color`, tinted). */
6924
6957
  fill?: string;
6925
6958
  dash?: 'dashed' | 'dotted';
6926
- /** Outline stroke width (default 2). */
6959
+ /** Outline stroke width in px (default the theme's normal stroke). */
6927
6960
  lineWidth?: number;
6928
6961
  }
6929
6962
  /** A horizontal background stripe spanning the canvas (e.g. a trophic level or elevation zone). */
6930
6963
  interface BiologyBand {
6931
6964
  label?: string;
6932
- /** Fill/stroke color (default cycles BIO_BAND_COLORS by index). */
6965
+ /** Fill/stroke color: a tone name, token or literal (default cycles `series-1`..`series-8` by index). */
6933
6966
  color?: string;
6934
6967
  }
6935
6968
  type BiologyStageState = 'pending' | 'active' | 'done';
@@ -6938,7 +6971,7 @@ interface BiologyStage {
6938
6971
  label: string;
6939
6972
  /** Progress state driving fill/text color (default 'pending'). */
6940
6973
  state?: BiologyStageState;
6941
- /** Overrides the state-derived fill color. */
6974
+ /** Overrides the state-derived fill: a tone name, token or literal. */
6942
6975
  color?: string;
6943
6976
  }
6944
6977
  /** One base pair (rung) of a `helix` ladder. */
@@ -6947,7 +6980,7 @@ interface BiologyHelixRung {
6947
6980
  a?: string;
6948
6981
  /** Base letter on strand B (bottom). */
6949
6982
  b?: string;
6950
- /** 'new' renders the rung in the newly-synthesized color (default '#16a34a'); 'open'/'paired' drive strand separation. */
6983
+ /** 'new' renders the rung in the newly-synthesized color (default `accent`); 'open'/'paired' drive strand separation. */
6951
6984
  state?: 'paired' | 'open' | 'new';
6952
6985
  /** Overrides the state-derived rung color. */
6953
6986
  color?: string;
@@ -6965,18 +6998,18 @@ interface BiologyHelix {
6965
6998
  rungs: BiologyHelixRung[];
6966
6999
  /** Unzipped fraction from the left, 0..1 (default 0 = fully paired). */
6967
7000
  fork?: number;
6968
- /** Strand A (top) color (default '#2563eb'). */
7001
+ /** Strand A (top) color: a tone name, token or literal (default `series-1`). */
6969
7002
  colorA?: string;
6970
- /** Strand B (bottom) color (default '#dc2626'). */
7003
+ /** Strand B (bottom) color: a tone name, token or literal (default `series-2`). */
6971
7004
  colorB?: string;
6972
- /** Default paired-rung color (default '#94a3b8'). */
7005
+ /** Default paired-rung color: a tone name, token or literal (default `muted`). */
6973
7006
  rungColor?: string;
6974
7007
  }
6975
7008
  /** One base-pair rung of a 3D `helix3d` ladder. */
6976
7009
  interface BiologyHelixRung3D {
6977
7010
  /** Clickable when present — stamped on this rung's marker sphere. */
6978
7011
  id?: string;
6979
- /** Rung cylinder + marker color (default '#94a3b8'). */
7012
+ /** Rung cylinder + marker color: a tone name, token or literal (default `muted`). */
6980
7013
  color?: string;
6981
7014
  /** Marker sphere radius override (e.g. selection enlargement). */
6982
7015
  radius?: number;
@@ -6999,9 +7032,9 @@ interface BiologyHelix3D {
6999
7032
  rise?: number;
7000
7033
  /** Twist per rung in degrees (default 36). */
7001
7034
  twistDeg?: number;
7002
- /** Strand A (top) color (default '#38bdf8'). */
7035
+ /** Strand A (top) color: a tone name, token or literal (default `series-1`). */
7003
7036
  strandAColor?: string;
7004
- /** Strand B (bottom) color (default '#fb923c'). */
7037
+ /** Strand B (bottom) color: a tone name, token or literal (default `series-2`). */
7005
7038
  strandBColor?: string;
7006
7039
  /** Backbone strand cylinder + bead radius (default 0.16). */
7007
7040
  backboneRadius?: number;
@@ -7022,6 +7055,12 @@ interface BiologyCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yProp
7022
7055
  height?: number;
7023
7056
  title?: string;
7024
7057
  backgroundColor?: string;
7058
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
7059
+ series?: string[];
7060
+ /** Maps a keydown `e.code` (optionally `Mod+`/`Shift+`/`Alt+` prefixed) to a SEMANTIC event emitted as `UI:{event}` — e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`; keystrokes inside inputs never route. */
7061
+ keyMap?: Record<string, EventKey>;
7062
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
7063
+ keyUpMap?: Record<string, EventKey>;
7025
7064
  /** Painter: 2D raster (default) or 3D mesh scene via the lazy three.js host. */
7026
7065
  mode?: '2d' | '3d';
7027
7066
  /** 3D only: neutral camera pose ({ mode, zoom, fov, azimuth, target }). */
@@ -7097,6 +7136,7 @@ interface ChemistryAtom {
7097
7136
  z?: number;
7098
7137
  element?: string;
7099
7138
  radius?: number;
7139
+ /** Atom color: a tone name, token or literal (default a `series-1`..`series-8` tone per distinct element, in order of first appearance). */
7100
7140
  color?: string;
7101
7141
  /** Ionic charge label (e.g. '2+', '-'), drawn top-right of the atom. 2D only. */
7102
7142
  charge?: string;
@@ -7107,6 +7147,7 @@ interface ChemistryBond {
7107
7147
  from: string;
7108
7148
  to: string;
7109
7149
  type?: 'single' | 'double' | 'triple';
7150
+ /** Bond color: a tone name, token or literal (default by `state`). */
7110
7151
  color?: string;
7111
7152
  /** Reaction-state coloring (overridden by an explicit `color`). 2D only. */
7112
7153
  state?: ChemistryBondState;
@@ -7119,11 +7160,11 @@ interface ChemistryContainer {
7119
7160
  y: number;
7120
7161
  width: number;
7121
7162
  height: number;
7122
- /** Outline + label color (default '#64748b'). */
7163
+ /** Outline color: a tone name, token or literal (default the `ink` tone). */
7123
7164
  color?: string;
7124
7165
  /** Fill color for the outline rect itself (independent of the liquid level fill). */
7125
7166
  fill?: string;
7126
- /** Outline stroke width (default 2). */
7167
+ /** Outline stroke width in px (default the theme's normal stroke). */
7127
7168
  lineWidth?: number;
7128
7169
  /** Vertical divider at the container's mid-width (default 'none'). */
7129
7170
  divider?: 'none' | 'solid' | 'dashed' | 'dotted';
@@ -7137,7 +7178,7 @@ interface ChemistryContainer {
7137
7178
  label?: string;
7138
7179
  /** Liquid fill level, 0..1 from the bottom. */
7139
7180
  level?: number;
7140
- /** Liquid fill color (default '#60a5fa'). */
7181
+ /** Liquid fill color: a tone name, token or literal (default the `series-1` tone). */
7141
7182
  levelColor?: string;
7142
7183
  }
7143
7184
  interface ChemistryArrow {
@@ -7145,6 +7186,7 @@ interface ChemistryArrow {
7145
7186
  y: number;
7146
7187
  angle?: number;
7147
7188
  length?: number;
7189
+ /** Arrow color: a tone name, token or literal (default the `ink` tone). */
7148
7190
  color?: string;
7149
7191
  label?: string;
7150
7192
  }
@@ -7157,7 +7199,7 @@ interface ChemistryLatticeSite {
7157
7199
  dy: number;
7158
7200
  dz: number;
7159
7201
  element?: string;
7160
- /** Marker color (default '#2563eb'). */
7202
+ /** Marker color: a tone name, token or literal (default a `series-1`..`series-8` tone by basis index). */
7161
7203
  color?: string;
7162
7204
  /** Marker radius (default 0.3). */
7163
7205
  radius?: number;
@@ -7178,7 +7220,7 @@ interface ChemistryLatticeBond {
7178
7220
  dx?: number;
7179
7221
  dy?: number;
7180
7222
  dz?: number;
7181
- /** Bond color (default '#6b7280'). */
7223
+ /** Bond color: a tone name, token or literal (default the `ink` tone). */
7182
7224
  color?: string;
7183
7225
  }
7184
7226
  /**
@@ -7200,13 +7242,13 @@ interface ChemistryLattice3D {
7200
7242
  bondRadius?: number;
7201
7243
  /** Dim every generated site outside unit cell (0,0,0) with `dimColor`; bonds with a dimmed endpoint dim too. */
7202
7244
  highlightCell?: boolean;
7203
- /** Dim color for `highlightCell` (default '#475569'). */
7245
+ /** Dim color for `highlightCell`: a tone name, token or literal (default the `muted` tone). */
7204
7246
  dimColor?: string;
7205
7247
  /** Billboard each site's `element` above its marker (default false). */
7206
7248
  showLabels?: boolean;
7207
7249
  /** Generated site id (`lat-{key}-{i}-{j}-{k}`, as delivered by onShapeClick) to enlarge and recolor as the selection. */
7208
7250
  selectedId?: string;
7209
- /** Selected-site color (default '#f59e0b'). */
7251
+ /** Selected-site color: a tone name, token or literal (default the `highlight` tone). */
7210
7252
  selectedColor?: string;
7211
7253
  }
7212
7254
  interface ChemistryCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yProps>, A11yProps {
@@ -7215,6 +7257,12 @@ interface ChemistryCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yPr
7215
7257
  height?: number;
7216
7258
  title?: string;
7217
7259
  backgroundColor?: string;
7260
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
7261
+ series?: string[];
7262
+ /** Maps a keydown `e.code` (optionally `Mod+`/`Shift+`/`Alt+` prefixed) to a SEMANTIC event emitted as `UI:{event}` — e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`; keystrokes inside inputs never route. */
7263
+ keyMap?: Record<string, EventKey>;
7264
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
7265
+ keyUpMap?: Record<string, EventKey>;
7218
7266
  /** Painter: 2D raster (default) or 3D mesh scene via the lazy three.js host. */
7219
7267
  mode?: '2d' | '3d';
7220
7268
  /** 3D only: neutral camera pose ({ mode, zoom, fov, azimuth, target }). */
@@ -7238,7 +7286,7 @@ interface ChemistryCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yPr
7238
7286
  * @synonyms reaction equation, formula
7239
7287
  */
7240
7288
  equation?: string;
7241
- /** Equation text color (default '#111827'). */
7289
+ /** Equation text color: a tone name, token or literal (default the `ink` tone). */
7242
7290
  equationColor?: string;
7243
7291
  /** A 3D crystal lattice block (simple cubic, BCC, FCC, rock salt, diamond, ...). 3D only. */
7244
7292
  lattice3d?: ChemistryLattice3D;
@@ -7363,6 +7411,12 @@ interface AlgorithmCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yPr
7363
7411
  height?: number;
7364
7412
  title?: string;
7365
7413
  backgroundColor?: string;
7414
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
7415
+ series?: string[];
7416
+ /** Maps a keydown `e.code` (optionally `Mod+`/`Shift+`/`Alt+` prefixed) to a SEMANTIC event emitted as `UI:{event}` — e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`; keystrokes inside inputs never route. */
7417
+ keyMap?: Record<string, EventKey>;
7418
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
7419
+ keyUpMap?: Record<string, EventKey>;
7366
7420
  /** Sorting/histogram bars; laid out left-to-right, height proportional to value. */
7367
7421
  bars?: AlgorithmBar[];
7368
7422
  /** Grid/array/DP cells; laid out on a row/col lattice sized to the extent. */
@@ -7451,6 +7505,12 @@ interface AlgoGraphCanvasProps extends Omit<React$1.AriaAttributes, keyof A11yPr
7451
7505
  height?: number;
7452
7506
  title?: string;
7453
7507
  backgroundColor?: string;
7508
+ /** Overrides the theme's categorical palette (`series-1…N`) for this canvas — real-world conventions like CPK atom colors or resistor bands. Unset, the theme's `--color-series-*` apply. */
7509
+ series?: string[];
7510
+ /** Maps a keydown `e.code` (optionally `Mod+`/`Shift+`/`Alt+` prefixed) to a SEMANTIC event emitted as `UI:{event}` — e.g. `{ Space: TOGGLE_RUN, ArrowRight: STEP, KeyR: RESET }`; keystrokes inside inputs never route. */
7511
+ keyMap?: Record<string, EventKey>;
7512
+ /** Maps a keyup `e.code` to a semantic event emitted as `UI:{event}`. */
7513
+ keyUpMap?: Record<string, EventKey>;
7454
7514
  nodes?: AlgoGraphNode[];
7455
7515
  edges?: AlgoGraphEdge[];
7456
7516
  /** Deterministic layout to compute node positions; `manual` passes through `x`/`y`. */
@@ -7511,6 +7571,8 @@ interface LearningScene3DProps extends A11yProps {
7511
7571
  height?: number;
7512
7572
  title?: string;
7513
7573
  backgroundColor?: string;
7574
+ /** Overrides the theme's categorical palette (`series-1…N`) for this scene. */
7575
+ series?: string[];
7514
7576
  /** Neutral drawable descriptors derived from the molecule's vocabulary. */
7515
7577
  drawables: DrawableNode[];
7516
7578
  /** Neutral camera pose; `mode` defaults to 'perspective' for learning scenes. */
@@ -7530,7 +7592,7 @@ interface LearningScene3DProps extends A11yProps {
7530
7592
  /** Fires with the `id` of a clicked descriptor (descriptors carry `id` via DrawableBase). */
7531
7593
  onItemClick?: (id: string) => void;
7532
7594
  }
7533
- declare function LearningScene3D({ className, width, height, title, backgroundColor, drawables, camera, lighting, post, showGrid, shadows, interactive, isLoading, error, onItemClick, description, ...rest }: LearningScene3DProps): React$1.JSX.Element;
7595
+ declare function LearningScene3D({ className, width, height, title, backgroundColor, series, drawables, camera, lighting, post, showGrid, shadows, interactive, isLoading, error, onItemClick, description, ...rest }: LearningScene3DProps): React$1.JSX.Element;
7534
7596
  declare namespace LearningScene3D {
7535
7597
  var displayName: string;
7536
7598
  }
@@ -11107,10 +11169,13 @@ declare namespace AgentActivityFeed {
11107
11169
  }
11108
11170
 
11109
11171
  /**
11110
- * AgentChatFeed — a chat region's view of an agent turn: the activities the
11111
- * host's audience selected, rendered by `AgentActivityFeed`, with raw LLM
11112
- * responses behind a "Raw LLM" switch (off by default, so the conversation
11113
- * stays readable until they're wanted). The switch is remembered per host.
11172
+ * AgentChatFeed — the in-app assistant's conversation (Almadar_UX §3.6).
11173
+ * Messages are bubbles by sender with their time; each turn's tool and model
11174
+ * steps fold under the reply behind one "Worked through N steps" disclosure
11175
+ * (open while the assistant is still working on that turn); replies carry a
11176
+ * copy action; days are separated; and the feed follows new messages only
11177
+ * while the reader is at the bottom, otherwise it shows a "New messages" cue.
11178
+ * Raw LLM responses stay behind a switch inside the steps, remembered per host.
11114
11179
  */
11115
11180
 
11116
11181
  interface AgentChatFeedProps {
@@ -11119,7 +11184,7 @@ interface AgentChatFeedProps {
11119
11184
  emptyTitle: string;
11120
11185
  /** localStorage key remembering the Raw LLM switch for this host. */
11121
11186
  rawLlmPreferenceKey: string;
11122
- /** Prefix for the toolbar test id and the switch's element id. */
11187
+ /** Prefix for the scroller test id and the switch's element id. */
11123
11188
  idPrefix: string;
11124
11189
  /** The agent is running — the feed shows it is thinking. */
11125
11190
  working?: boolean;
@@ -1,25 +1,25 @@
1
1
  export { assertUniqueSlotsPerHost } from '../chunk-O2EIWXWE.js';
2
- import { JsonTreeEditor } from '../chunk-FJDS4SVD.js';
3
- export { JsonTreeEditor } from '../chunk-FJDS4SVD.js';
2
+ import { JsonTreeEditor } from '../chunk-F4ZTPKZL.js';
3
+ export { JsonTreeEditor } from '../chunk-F4ZTPKZL.js';
4
4
  export { keyChord, mergeCaptureTables, useAgentChat, useCompile, useConnectGitHub, useDeepAgentGeneration, useDisconnectGitHub, useExtensions, useFileEditor, useFileSystem, useGitHubBranches, useGitHubRepo, useGitHubRepos, useGitHubStatus, useKeyboardRouter, useNavStack, usePreview, useRenderInterpolation, useTraitListens, useUIEvents, useValidation } from '../chunk-2LFBQ4IS.js';
5
- export { I18nProvider, SharedEntityStoreContext, createSharedEntityStore, createTranslate, runTickFrame, useFormatContext, useRenderI18n, useSharedEntitySnapshot, useSharedEntityStore, useSharedEntityStoreContext, useTranslate } from '../chunk-4HC5HRHB.js';
5
+ export { I18nProvider, SharedEntityStoreContext, createSharedEntityStore, createTranslate, runTickFrame, useFormatContext, useRenderI18n, useSharedEntitySnapshot, useSharedEntityStore, useSharedEntityStoreContext, useTranslate } from '../chunk-QGH4NAQO.js';
6
6
  export { DEFAULT_SLOTS, useUISlotManager } from '../chunk-VHTJRS2N.js';
7
- export { parseLessonSegments } from '../chunk-OKWD7LPO.js';
8
- import { GridPicker, Icon, Button, FormSection, Select, ThemedPortal, Switch, Input } from '../chunk-U2FGMHQP.js';
9
- export { ALL_PRESETS, Accordion, Card2 as ActionCard, ActionPalette, ActionTile, ActivationBlock, AgentActivityFeed, AgentActivityRow, AgentChatFeed, AgentThinkingRow, Alert, AlgoGraphCanvas, AlgorithmCanvas, AnimatedCounter, AnimatedGraphic, AnimatedReveal, Aside, AtlasImage, AtlasPanel, AuthLayout, Avatar, Badge, BehaviorView, BiologyCanvas, BloomQuizBlock, BranchingLogicBuilder, Breadcrumb, Button, ButtonGroup, COMPACT_MEDIA_QUERY, CalendarGrid, Canvas, Canvas2D, Card, CardBody, CardContent, CardFooter, CardHeader, CardTitle, Carousel, Center, ChangeList, Chart, ChartLegend, ChatBar, Checkbox, ChemistryCanvas, ChoiceButton, CodeBlock, CodeRunnerPanel, CollapsibleSection, CommandPalette, CommitRow, ConditionalWrapper, ConfettiEffect, ConfirmDialog, ConnectionBlock, Container, ContentRenderer, ControlButton, ControlGrid, CounterTemplate, DEFAULT_LIKERT_OPTION_KEYS, DEFAULT_MATRIX_COLUMN_KEYS, DIAMOND_TOP_Y, DashboardGrid, DashboardLayout, DataGrid, DataList, DateRangePicker, DateRangeSelector, DayCell, DetailPanel, Dialog, DialogueBubble, Divider, DocBreadcrumb, DocPagination, DocSearch, DocSidebar, DocTOC, DockLayout, DocumentDetails, DocumentPanel, DocumentViewer, StateMachineView as DomStateMachineVisualizer, Drawer, DrawerSlot, ELEMENT_SELECTED_EVENT, EdgeDecoration, EditorCheckbox, EditorSelect, EditorSlider, EditorTextInput, EditorToolbar, EmojiPicker, EmptyState, ErrorBoundary, ErrorState, FEATURE_COLORS, FEATURE_TYPES, FLOOR_HEIGHT, FeatureCard, FeatureGrid, FileTree, FilterGroup, FilterPill, Flex, FlipCard, FlipContainer, FloatingActionButton, FloatingToolbar, Form, FormActions, FormField, FormLayout, FormSection, FormSectionHeader, FxOverlay, GameAudioContext, GameAudioCue, GameAudioProvider, GameAudioToggle, GameHud, GameIcon, GameMenu, GameShell, Gantt, GenericAppTemplate, GeometricPattern, GradientDivider, GraphCanvas, GraphView, Grid, GridPicker, Header, HealthBar, Icon, IconButton, Image, ImportPreviewTree, ImportProgress, ImportSourcePicker, InfiniteScrollSentinel, Input, InputGroup, JazariStateMachine, Label, LawReferenceTooltip, LearningCanvas, LearningScene3D, Lightbox, LikertScale, LineChart, LoadingState, MapView, MarkdownContent, MasterDetailLayout, MathCanvas, MatrixQuestion, MediaGallery, Menu, Meter, Modal, ModalSlot, ModuleCard, Navigation, NumberStepper, OptionConstraintGroup, StateMachineView as OrbitalStateMachineView, OrbitalVisualization, Overlay, PageHeader, PageTransition, Pagination, PatternTile, PhysicsCanvas, Popover, PositionedCanvas, ProgressBar, ProgressDots, PullToRefresh, QrScanner, QuizBlock, Radio, RangeSlider, ReflectionBlock, RelationSelect, RepeatableFormSection, ReplyTree, RichTextEditor, RuntimeDebugger, SHEET_COLUMNS, SPRITE_SHEET_LAYOUT, ScaledDiagram, ScoreDisplay, SearchInput, Section, SectionHeader, SegmentRenderer, Select, SequenceBar, SidePanel, Sidebar, SignaturePad, SimpleGrid, Skeleton, SkeletonTree, SlotContentRenderer, SocialProof, SortableList, Spacer, Sparkline, Spinner, Split, SplitPane, StarRating, StatBadge, StatCard, StatDisplay, StateGraph, StateJsonView, StateMachineView, StatusBar, StatusDot, SubagentTracePanel, SvgBranch, SvgConnection, SvgFlow, SvgGrid, SvgLobe, SvgMesh, SvgMorph, SvgNode, SvgPulse, SvgRing, SvgShield, SvgStack, SwipeableRow, Switch, TERRAIN_COLORS, TILE_HEIGHT, TILE_WIDTH, TabbedContainer, TableView, Tabs, TagInput, TerrainPalette, TextHighlight, Textarea, ThemeToggle, TimeSlotCell, Timeline, TimerDisplay, Toast, ToastSlot, Tooltip, TopNavItem, TraitFrame, TraitSlot, TraitStateViewer, TrendIndicator, TypewriterText, UISlotComponent, UISlotRenderer, UploadDropZone, VersionDiff, ViolationAlert, VoteStack, WizardContainer, WizardNavigation, WizardProgress, activityRowFacts, applyCompletion, applySuggestions, arrowBetween, billboardLabel, boardEntity, bool, calculateAttackTargets, calculateValidMoves, createInitialGameState, createUnitAnimationState, cylinderBetween, dispatchCommandPaletteCommand, get3DClickPayload, getCurrentFrame, getTileDimensions, groupIntoConversations, inferDirection, isoToScreen, makeAsset, makeAssetMap, meshSphere, num, objAvailableActions, objAvailableEvents, objCurrentState, objIcon, objId, objMaxRules, objName, objRules, objStates, parseEditFocus, pendulum, projectileMotion, registerCodeLanguageLoader, renderPatternValue, resolveFrame, resolveSheetDirection, rows, sanitizeRichHtml, screenToIso, springOscillator, str, tickAnimationState, toCodeLanguage, transitionAnimation, unitHealth, unitPosition, unitTeam, useAtlasSliceDataUrl, useCamera, useCompactLayout, useDockLayout, useGameAudio, useGameAudioContext, useImageCache, useUnitSpriteAtlas, vec2 } from '../chunk-U2FGMHQP.js';
10
- import { VStack, HStack, Box } from '../chunk-Z5IYJU44.js';
11
- export { Box, HStack, Stack, VStack } from '../chunk-Z5IYJU44.js';
12
- import { Typography } from '../chunk-4UP6BZ4R.js';
13
- export { Typography } from '../chunk-4UP6BZ4R.js';
7
+ import { GridPicker, Icon, Button, FormSection, Select, ThemedPortal, Switch, Input } from '../chunk-XZKGRSIO.js';
8
+ export { ALL_PRESETS, Accordion, Card2 as ActionCard, ActionPalette, ActionTile, ActivationBlock, AgentActivityFeed, AgentActivityRow, AgentChatFeed, AgentThinkingRow, Alert, AlgoGraphCanvas, AlgorithmCanvas, AnimatedCounter, AnimatedGraphic, AnimatedReveal, Aside, AtlasImage, AtlasPanel, AuthLayout, Avatar, Badge, BehaviorView, BiologyCanvas, BloomQuizBlock, BranchingLogicBuilder, Breadcrumb, Button, ButtonGroup, COMPACT_MEDIA_QUERY, CalendarGrid, Canvas, Canvas2D, Card, CardBody, CardContent, CardFooter, CardHeader, CardTitle, Carousel, Center, ChangeList, Chart, ChartLegend, ChatBar, Checkbox, ChemistryCanvas, ChoiceButton, CodeBlock, CodeRunnerPanel, CollapsibleSection, CommandPalette, CommitRow, ConditionalWrapper, ConfettiEffect, ConfirmDialog, ConnectionBlock, Container, ContentRenderer, ControlButton, ControlGrid, CounterTemplate, DEFAULT_LIKERT_OPTION_KEYS, DEFAULT_MATRIX_COLUMN_KEYS, DIAMOND_TOP_Y, DashboardGrid, DashboardLayout, DataGrid, DataList, DateRangePicker, DateRangeSelector, DayCell, DetailPanel, Dialog, DialogueBubble, Divider, DocBreadcrumb, DocPagination, DocSearch, DocSidebar, DocTOC, DockLayout, DocumentDetails, DocumentPanel, DocumentViewer, StateMachineView as DomStateMachineVisualizer, Drawer, DrawerSlot, ELEMENT_SELECTED_EVENT, EdgeDecoration, EditorCheckbox, EditorSelect, EditorSlider, EditorTextInput, EditorToolbar, EmojiPicker, EmptyState, ErrorBoundary, ErrorState, FEATURE_COLORS, FEATURE_TYPES, FLOOR_HEIGHT, FeatureCard, FeatureGrid, FileTree, FilterGroup, FilterPill, Flex, FlipCard, FlipContainer, FloatingActionButton, FloatingToolbar, Form, FormActions, FormField, FormLayout, FormSection, FormSectionHeader, FxOverlay, GameAudioContext, GameAudioCue, GameAudioProvider, GameAudioToggle, GameHud, GameIcon, GameMenu, GameShell, Gantt, GenericAppTemplate, GeometricPattern, GradientDivider, GraphCanvas, GraphView, Grid, GridPicker, Header, HealthBar, Icon, IconButton, Image, ImportPreviewTree, ImportProgress, ImportSourcePicker, InfiniteScrollSentinel, Input, InputGroup, JazariStateMachine, Label, LawReferenceTooltip, LearningCanvas, LearningScene3D, Lightbox, LikertScale, LineChart, LoadingState, MapView, MarkdownContent, MasterDetailLayout, MathCanvas, MatrixQuestion, MediaGallery, Menu, Meter, Modal, ModalSlot, ModuleCard, Navigation, NumberStepper, OptionConstraintGroup, StateMachineView as OrbitalStateMachineView, OrbitalVisualization, Overlay, PageHeader, PageTransition, Pagination, PatternTile, PhysicsCanvas, Popover, PositionedCanvas, ProgressBar, ProgressDots, PullToRefresh, QrScanner, QuizBlock, Radio, RangeSlider, ReflectionBlock, RelationSelect, RepeatableFormSection, ReplyTree, RichTextEditor, RuntimeDebugger, SHEET_COLUMNS, SPRITE_SHEET_LAYOUT, ScaledDiagram, ScoreDisplay, SearchInput, Section, SectionHeader, SegmentRenderer, Select, SequenceBar, SidePanel, Sidebar, SignaturePad, SimpleGrid, Skeleton, SkeletonTree, SlotContentRenderer, SocialProof, SortableList, Spacer, Sparkline, Spinner, Split, SplitPane, StarRating, StatBadge, StatCard, StatDisplay, StateGraph, StateJsonView, StateMachineView, StatusBar, StatusDot, SubagentTracePanel, SvgBranch, SvgConnection, SvgFlow, SvgGrid, SvgLobe, SvgMesh, SvgMorph, SvgNode, SvgPulse, SvgRing, SvgShield, SvgStack, SwipeableRow, Switch, TERRAIN_COLORS, TILE_HEIGHT, TILE_WIDTH, TabbedContainer, TableView, Tabs, TagInput, TerrainPalette, TextHighlight, Textarea, ThemeToggle, TimeSlotCell, Timeline, TimerDisplay, Toast, ToastSlot, Tooltip, TopNavItem, TraitFrame, TraitSlot, TraitStateViewer, TrendIndicator, TypewriterText, UISlotComponent, UISlotRenderer, UploadDropZone, VersionDiff, ViolationAlert, VoteStack, WizardContainer, WizardNavigation, WizardProgress, activityRowFacts, applyCompletion, applySuggestions, arrowBetween, billboardLabel, boardEntity, bool, calculateAttackTargets, calculateValidMoves, createInitialGameState, createUnitAnimationState, cylinderBetween, dispatchCommandPaletteCommand, get3DClickPayload, getCurrentFrame, getTileDimensions, groupIntoConversations, inferDirection, isoToScreen, makeAsset, makeAssetMap, meshSphere, num, objAvailableActions, objAvailableEvents, objCurrentState, objIcon, objId, objMaxRules, objName, objRules, objStates, parseEditFocus, pendulum, projectileMotion, registerCodeLanguageLoader, renderPatternValue, resolveFrame, resolveSheetDirection, rows, sanitizeRichHtml, screenToIso, springOscillator, str, tickAnimationState, toCodeLanguage, transitionAnimation, unitHealth, unitPosition, unitTeam, useAtlasSliceDataUrl, useCamera, useCompactLayout, useDockLayout, useGameAudio, useGameAudioContext, useImageCache, useUnitSpriteAtlas, vec2 } from '../chunk-XZKGRSIO.js';
9
+ import { VStack, HStack, Box } from '../chunk-Y53Q55H5.js';
10
+ export { Box, HStack, Stack, VStack } from '../chunk-Y53Q55H5.js';
11
+ import { Typography } from '../chunk-HCSJHRC4.js';
12
+ export { Typography } from '../chunk-HCSJHRC4.js';
14
13
  export { ALMADAR_DND_MIME, parseQueryBinding, useAuthContext, useCanvasGestures, useDragReorder, useDraggable, useDropZone, useInfiniteScroll, useLongPress, useMediaQuery, usePrefersReducedMotion, usePullToRefresh, useQuerySingleton, useSwipeGesture } from '../chunk-JRW33U35.js';
15
14
  export { useTapReveal } from '../chunk-XJTHMW4G.js';
16
15
  export { useEmitEvent, useEventBus, useEventListener } from '../chunk-6EV3OEBQ.js';
16
+ export { parseLessonSegments } from '../chunk-OKWD7LPO.js';
17
17
  export { Presence, parseMarkdownWithCodeBlocks, usePresence } from '../chunk-KQXXO42S.js';
18
- import '../chunk-O7OLVVBR.js';
18
+ import '../chunk-Q47ZN2DW.js';
19
19
  import { cn, domPassthrough } from '../chunk-64WACXM7.js';
20
20
  export { cn } from '../chunk-64WACXM7.js';
21
- import '../chunk-MCKFWPT2.js';
22
- import '../chunk-N2V4LHFQ.js';
21
+ import '../chunk-RNY5LJXJ.js';
22
+ import '../chunk-HRCR53OW.js';
23
23
  import { getKnownPatterns, getPatternDefinition } from '../chunk-PQKU62LK.js';
24
24
  import '../chunk-PEST66PN.js';
25
25
  import '../chunk-QPXIAUJD.js';
@@ -910,7 +910,38 @@ var SURFACE_VARS = [
910
910
  { cssVar: "--surface-backdrop", key: "backdrop" },
911
911
  { cssVar: "--surface-card-image", key: "cardImage" },
912
912
  { cssVar: "--surface-page-image", key: "pageImage" },
913
- { cssVar: "--surface-page-image-size", key: "pageImageSize" }
913
+ { cssVar: "--surface-page-image-size", key: "pageImageSize" },
914
+ { cssVar: "--surface-diagram", key: "diagram" }
915
+ ];
916
+ var DIAGRAM_VARS = [
917
+ { cssVar: "--diagram-stroke-thin", key: "strokeThin" },
918
+ { cssVar: "--diagram-stroke-normal", key: "strokeNormal" },
919
+ { cssVar: "--diagram-stroke-bold", key: "strokeBold" },
920
+ { cssVar: "--diagram-line-cap", key: "lineCap" },
921
+ { cssVar: "--diagram-line-join", key: "lineJoin" },
922
+ { cssVar: "--diagram-dash", key: "dash" },
923
+ { cssVar: "--diagram-dot", key: "dot" },
924
+ { cssVar: "--diagram-fill-style", key: "fillStyle" },
925
+ { cssVar: "--diagram-fill-opacity", key: "fillOpacity" },
926
+ { cssVar: "--diagram-roughness", key: "roughness" },
927
+ { cssVar: "--diagram-glow", key: "glow" },
928
+ { cssVar: "--diagram-shadow", key: "shadow" },
929
+ { cssVar: "--diagram-marker", key: "marker" },
930
+ { cssVar: "--diagram-label-font", key: "labelFont" },
931
+ { cssVar: "--diagram-label-size", key: "labelSize" },
932
+ { cssVar: "--diagram-label-weight", key: "labelWeight" },
933
+ { cssVar: "--diagram-label-case", key: "labelCase" },
934
+ { cssVar: "--diagram-corner", key: "corner" }
935
+ ];
936
+ var SCENE_VARS = [
937
+ { cssVar: "--material-roughness", key: "materialRoughness" },
938
+ { cssVar: "--material-metalness", key: "materialMetalness" },
939
+ { cssVar: "--material-flat", key: "materialFlat" },
940
+ { cssVar: "--material-outline", key: "materialOutline" },
941
+ { cssVar: "--light-ambient", key: "lightAmbient" },
942
+ { cssVar: "--light-key", key: "lightKey" },
943
+ { cssVar: "--light-key-color", key: "lightKeyColor" },
944
+ { cssVar: "--scene-fog", key: "fog" }
914
945
  ];
915
946
  var LEGACY_PREFIXES = {
916
947
  colors: "--color-",
@@ -971,6 +1002,10 @@ function themeTokensToCssVars(tokens, mode = "light", darkVariant) {
971
1002
  emitGeometry(pickGeometry, vars);
972
1003
  const pickSurface = isDark && darkVariant?.surface ? darkVariant.surface : tokens.surface;
973
1004
  applyFlat(pickSurface, SURFACE_VARS, vars);
1005
+ const pickDiagram = isDark && darkVariant?.diagram ? darkVariant.diagram : tokens.diagram;
1006
+ applyFlat(pickDiagram, DIAGRAM_VARS, vars);
1007
+ const pickScene = isDark && darkVariant?.scene ? darkVariant.scene : tokens.scene;
1008
+ applyFlat(pickScene, SCENE_VARS, vars);
974
1009
  return vars;
975
1010
  }
976
1011
  function emitDensity(density, vars) {
@@ -1,7 +1,7 @@
1
1
  export { U as UISlotContext, a as UISlotProvider, u as useSlotContent, b as useSlotHasContent, c as useUISlots } from '../UISlotContext-CS487Uoc.js';
2
2
  import { U as UIThemeDefinition } from '../ArbitraryClassCompiler-DvzdeHxc.js';
3
3
  export { A as ARBITRARY_CLASS_STYLE_ID, a as ArbitraryClassCompiler, b as ArbitraryClassCompilerProvider, c as ArbitraryClassCompilerProviderProps, C as ColorMode, d as CurrentPagePathContext, e as CurrentPagePathProvider, f as CurrentPagePathProviderProps, D as DesignTheme, g as DesignThemeProvider, O as OrbitalThemeProvider, h as OrbitalThemeProviderProps, R as ResolvedMode, T as ThemeContext, i as ThemeProvider, j as ThemeProviderProps, k as ThemeScope, l as ThemeScopeContext, u as useArbitraryClassStyles, m as useCurrentPagePath, n as useDesignTheme, o as useTheme, p as useThemeScope } from '../ArbitraryClassCompiler-DvzdeHxc.js';
4
- export { T as ThemeMode, r as resolveThemeForRuntime, t as themeTokensToCssVars } from '../themeTokens-Ccu7EmGY.js';
4
+ export { T as ThemeMode, r as resolveThemeForRuntime, t as themeTokensToCssVars } from '../themeTokens-D6MFwKrC.js';
5
5
  export { U as UserContext, a as UserContextValue, b as UserData, c as UserProvider, d as UserProviderProps, u as useHasPermission, e as useHasRole, f as useUser, g as useUserForEvaluation } from '../UserContext-D566nfWA.js';
6
6
  export { ANONYMOUS_USER, UISlot } from '@almadar/core';
7
7
  export { S as SlotChangeCallback, a as SlotContent, b as SlotRenderConfig, U as UISlotManager } from '../useUISlots-1dk2TR4j.js';