@almadar/ui 2.13.3 → 2.15.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 (420) hide show
  1. package/dist/{chunk-UNDQO6DL.js → chunk-4KP6IZEQ.js} +3 -3
  2. package/dist/chunk-4N3BAPDB.js +1667 -0
  3. package/dist/{chunk-PERGHHON.js → chunk-IRIGCHP4.js} +2 -12
  4. package/dist/{chunk-Y7IHEYYE.js → chunk-QU2X55WH.js} +11 -1
  5. package/dist/{chunk-4ZBSL37D.js → chunk-XL7WB2O5.js} +415 -58
  6. package/dist/{chunk-MSLMORZK.js → chunk-YPY74G7F.js} +13434 -2264
  7. package/dist/components/atoms/AnimatedCounter.d.ts +20 -0
  8. package/dist/components/atoms/Avatar.d.ts +58 -0
  9. package/dist/components/atoms/Badge.d.ts +14 -0
  10. package/dist/components/atoms/Box.d.ts +57 -0
  11. package/dist/components/atoms/Button.d.ts +24 -0
  12. package/dist/components/atoms/Card.d.ts +18 -0
  13. package/dist/components/atoms/Center.d.ts +33 -0
  14. package/dist/components/atoms/Checkbox.d.ts +9 -0
  15. package/dist/components/atoms/ConditionalWrapper.d.ts +68 -0
  16. package/dist/components/atoms/ConfettiEffect.d.ts +19 -0
  17. package/dist/components/atoms/DayCell.d.ts +21 -0
  18. package/dist/components/atoms/Divider.d.ts +29 -0
  19. package/dist/components/atoms/FlipContainer.d.ts +21 -0
  20. package/dist/components/atoms/Icon.d.ts +39 -0
  21. package/dist/components/atoms/InfiniteScrollSentinel.d.ts +23 -0
  22. package/dist/components/atoms/Input.d.ts +26 -0
  23. package/dist/components/atoms/Label.d.ts +5 -0
  24. package/dist/components/atoms/LawReferenceTooltip.d.ts +48 -0
  25. package/dist/components/atoms/Overlay.d.ts +16 -0
  26. package/dist/components/atoms/ProgressBar.d.ts +63 -0
  27. package/dist/components/atoms/Radio.d.ts +26 -0
  28. package/dist/components/atoms/RangeSlider.d.ts +31 -0
  29. package/dist/components/atoms/Select.d.ts +12 -0
  30. package/dist/components/atoms/Spacer.d.ts +25 -0
  31. package/dist/components/atoms/Spinner.d.ts +6 -0
  32. package/dist/components/atoms/Stack.d.ts +66 -0
  33. package/dist/components/atoms/StatusDot.d.ts +14 -0
  34. package/dist/components/atoms/Switch.d.ts +12 -0
  35. package/dist/components/atoms/TextHighlight.d.ts +53 -0
  36. package/dist/components/atoms/Textarea.d.ts +5 -0
  37. package/dist/components/atoms/ThemeSelector.d.ts +21 -0
  38. package/dist/components/atoms/ThemeToggle.d.ts +33 -0
  39. package/dist/components/atoms/TimeSlotCell.d.ts +23 -0
  40. package/dist/components/atoms/TrendIndicator.d.ts +18 -0
  41. package/dist/components/atoms/TypewriterText.d.ts +20 -0
  42. package/dist/components/atoms/Typography.d.ts +57 -0
  43. package/dist/components/atoms/game/ActionButton.d.ts +25 -0
  44. package/dist/components/atoms/game/ChoiceButton.d.ts +18 -0
  45. package/dist/components/atoms/game/ComboCounter.d.ts +16 -0
  46. package/dist/components/atoms/game/ControlButton.d.ts +31 -0
  47. package/dist/components/atoms/game/DamageNumber.d.ts +14 -0
  48. package/dist/components/atoms/game/DialogueBubble.d.ts +16 -0
  49. package/dist/components/atoms/game/HealthBar.d.ts +18 -0
  50. package/dist/components/atoms/game/ItemSlot.d.ts +25 -0
  51. package/dist/components/atoms/game/MiniMap.d.ts +36 -0
  52. package/dist/components/atoms/game/ResourceCounter.d.ts +21 -0
  53. package/dist/components/atoms/game/ScoreDisplay.d.ts +21 -0
  54. package/dist/components/atoms/game/Sprite.d.ts +63 -0
  55. package/dist/components/atoms/game/StateIndicator.d.ts +31 -0
  56. package/dist/components/atoms/game/StatusEffect.d.ts +21 -0
  57. package/dist/components/atoms/game/TimerDisplay.d.ts +18 -0
  58. package/dist/components/atoms/game/TurnIndicator.d.ts +18 -0
  59. package/dist/components/atoms/game/WaypointMarker.d.ts +19 -0
  60. package/dist/components/atoms/game/XPBar.d.ts +20 -0
  61. package/dist/components/atoms/game/index.d.ts +25 -0
  62. package/dist/components/atoms/index.d.ts +37 -0
  63. package/dist/components/index.css +508 -0
  64. package/dist/components/index.d.ts +6 -9788
  65. package/dist/components/index.js +769 -11187
  66. package/dist/components/molecules/Accordion.d.ts +67 -0
  67. package/dist/components/molecules/Alert.d.ts +24 -0
  68. package/dist/components/molecules/Breadcrumb.d.ts +55 -0
  69. package/dist/components/molecules/ButtonGroup.d.ts +67 -0
  70. package/dist/components/molecules/CalendarGrid.d.ts +43 -0
  71. package/dist/components/molecules/Card.d.ts +56 -0
  72. package/dist/components/molecules/Carousel.d.ts +31 -0
  73. package/dist/components/molecules/ChartLegend.d.ts +20 -0
  74. package/dist/components/molecules/Container.d.ts +30 -0
  75. package/dist/components/molecules/DataGrid.d.ts +75 -0
  76. package/dist/components/molecules/DataList.d.ts +95 -0
  77. package/dist/components/molecules/DateRangeSelector.d.ts +22 -0
  78. package/dist/components/molecules/Drawer.d.ts +46 -0
  79. package/dist/components/molecules/EmptyState.d.ts +25 -0
  80. package/dist/components/molecules/ErrorBoundary.d.ts +55 -0
  81. package/dist/components/molecules/ErrorState.d.ts +13 -0
  82. package/dist/components/molecules/FilterGroup.d.ts +54 -0
  83. package/dist/components/molecules/Flex.d.ts +43 -0
  84. package/dist/components/molecules/FlipCard.d.ts +25 -0
  85. package/dist/components/molecules/FloatingActionButton.d.ts +69 -0
  86. package/dist/components/molecules/FormField.d.ts +16 -0
  87. package/dist/components/molecules/FormSectionHeader.d.ts +30 -0
  88. package/dist/components/molecules/GraphView.d.ts +45 -0
  89. package/dist/components/molecules/Grid.d.ts +54 -0
  90. package/dist/components/molecules/InputGroup.d.ts +24 -0
  91. package/dist/components/molecules/Lightbox.d.ts +25 -0
  92. package/dist/components/molecules/LineChart.d.ts +33 -0
  93. package/dist/components/molecules/LoadingState.d.ts +7 -0
  94. package/dist/components/molecules/MapView.d.ts +40 -0
  95. package/dist/components/molecules/Menu.d.ts +40 -0
  96. package/dist/components/molecules/Meter.d.ts +51 -0
  97. package/dist/components/molecules/Modal.d.ts +28 -0
  98. package/dist/components/molecules/NumberStepper.d.ts +27 -0
  99. package/dist/components/molecules/Pagination.d.ts +66 -0
  100. package/dist/components/molecules/Popover.d.ts +39 -0
  101. package/dist/components/molecules/ProgressDots.d.ts +24 -0
  102. package/dist/components/molecules/PullToRefresh.d.ts +21 -0
  103. package/dist/components/molecules/QuizBlock.d.ts +20 -0
  104. package/dist/components/molecules/RelationSelect.d.ts +48 -0
  105. package/dist/components/molecules/RepeatableFormSection.d.ts +58 -0
  106. package/dist/components/molecules/ScaledDiagram.d.ts +20 -0
  107. package/dist/components/molecules/SearchInput.d.ts +60 -0
  108. package/dist/components/molecules/SidePanel.d.ts +47 -0
  109. package/dist/components/molecules/SimpleGrid.d.ts +27 -0
  110. package/dist/components/molecules/Skeleton.d.ts +35 -0
  111. package/dist/components/molecules/SortableList.d.ts +17 -0
  112. package/dist/components/molecules/StarRating.d.ts +26 -0
  113. package/dist/components/molecules/StatDisplay.d.ts +37 -0
  114. package/dist/components/molecules/SwipeableRow.d.ts +24 -0
  115. package/dist/components/molecules/Tabs.d.ts +45 -0
  116. package/dist/components/molecules/Toast.d.ts +35 -0
  117. package/dist/components/molecules/Tooltip.d.ts +25 -0
  118. package/dist/components/molecules/UploadDropZone.d.ts +26 -0
  119. package/dist/components/molecules/ViolationAlert.d.ts +49 -0
  120. package/dist/components/molecules/WizardNavigation.d.ts +51 -0
  121. package/dist/components/molecules/WizardProgress.d.ts +42 -0
  122. package/dist/components/molecules/game/ActionButtons.d.ts +34 -0
  123. package/dist/components/molecules/game/CombatLog.d.ts +30 -0
  124. package/dist/components/molecules/game/CraftingRecipe.d.ts +33 -0
  125. package/dist/components/molecules/game/DPad.d.ts +22 -0
  126. package/dist/components/molecules/game/DialogueBox.d.ts +78 -0
  127. package/dist/components/molecules/game/EnemyPlate.d.ts +27 -0
  128. package/dist/components/molecules/game/GameCanvas2D.d.ts +18 -0
  129. package/dist/components/molecules/game/GameHud.d.ts +49 -0
  130. package/dist/components/molecules/game/GameMenu.d.ts +43 -0
  131. package/dist/components/molecules/game/GameOverScreen.d.ts +56 -0
  132. package/dist/components/molecules/game/HealthPanel.d.ts +27 -0
  133. package/dist/components/molecules/game/InventoryGrid.d.ts +30 -0
  134. package/dist/components/molecules/game/InventoryPanel.d.ts +67 -0
  135. package/dist/components/molecules/game/IsometricCanvas.d.ts +127 -0
  136. package/dist/components/molecules/game/PlatformerCanvas.d.ts +52 -0
  137. package/dist/components/molecules/game/PowerupSlots.d.ts +23 -0
  138. package/dist/components/molecules/game/QuestTracker.d.ts +20 -0
  139. package/dist/components/molecules/game/ResourceBar.d.ts +23 -0
  140. package/dist/components/molecules/game/ScoreBoard.d.ts +18 -0
  141. package/dist/components/molecules/game/StatBadge.d.ts +27 -0
  142. package/dist/components/molecules/game/TurnPanel.d.ts +29 -0
  143. package/dist/components/molecules/game/UnitCommandBar.d.ts +25 -0
  144. package/dist/components/molecules/game/index.d.ts +30 -0
  145. package/dist/components/molecules/index.d.ts +59 -0
  146. package/dist/components/molecules/markdown/CodeBlock.d.ts +25 -0
  147. package/dist/components/molecules/markdown/MarkdownContent.d.ts +26 -0
  148. package/dist/components/molecules/markdown/index.d.ts +2 -0
  149. package/dist/components/organisms/CardGrid.d.ts +80 -0
  150. package/dist/components/organisms/Chart.d.ts +59 -0
  151. package/dist/components/organisms/CodeViewer.d.ts +67 -0
  152. package/dist/components/organisms/ComponentPatterns.d.ts +453 -0
  153. package/dist/components/organisms/ConfirmDialog.d.ts +50 -0
  154. package/dist/components/organisms/ContentRenderer.d.ts +23 -0
  155. package/dist/components/organisms/CustomPattern.d.ts +104 -0
  156. package/dist/components/organisms/DataTable.d.ts +67 -0
  157. package/dist/components/organisms/DetailPanel.d.ts +78 -0
  158. package/dist/components/organisms/DocumentViewer.d.ts +60 -0
  159. package/dist/components/organisms/DrawerSlot.d.ts +39 -0
  160. package/dist/components/organisms/Form.d.ts +206 -0
  161. package/dist/components/organisms/FormSection.d.ts +41 -0
  162. package/dist/components/organisms/GraphCanvas.d.ts +69 -0
  163. package/dist/components/organisms/Header.d.ts +110 -0
  164. package/dist/components/organisms/JazariStateMachine.d.ts +60 -0
  165. package/dist/components/organisms/LayoutPatterns.d.ts +181 -0
  166. package/dist/components/organisms/List.d.ts +78 -0
  167. package/dist/components/organisms/MasterDetail.d.ts +32 -0
  168. package/dist/components/organisms/MediaGallery.d.ts +57 -0
  169. package/dist/components/organisms/Meter.d.ts +58 -0
  170. package/dist/components/organisms/ModalSlot.d.ts +35 -0
  171. package/dist/components/organisms/Navigation.d.ts +68 -0
  172. package/dist/components/organisms/NotifyListener.d.ts +15 -0
  173. package/dist/components/organisms/OrbitalVisualization.d.ts +48 -0
  174. package/dist/components/organisms/PageHeader.d.ts +59 -0
  175. package/dist/components/organisms/Section.d.ts +44 -0
  176. package/dist/components/organisms/Sidebar.d.ts +63 -0
  177. package/dist/components/organisms/SignaturePad.d.ts +44 -0
  178. package/dist/components/organisms/Split.d.ts +42 -0
  179. package/dist/components/organisms/StatCard.d.ts +62 -0
  180. package/dist/components/organisms/StateMachineView.d.ts +36 -0
  181. package/dist/components/organisms/Table.d.ts +99 -0
  182. package/dist/components/organisms/Timeline.d.ts +49 -0
  183. package/dist/components/organisms/ToastSlot.d.ts +38 -0
  184. package/dist/components/organisms/UISlotRenderer.d.ts +112 -0
  185. package/dist/components/organisms/WizardContainer.d.ts +160 -0
  186. package/dist/components/organisms/book/BookChapterView.d.ts +17 -0
  187. package/dist/components/organisms/book/BookCoverPage.d.ts +20 -0
  188. package/dist/components/organisms/book/BookNavBar.d.ts +19 -0
  189. package/dist/components/organisms/book/BookTableOfContents.d.ts +18 -0
  190. package/dist/components/organisms/book/BookViewer.d.ts +28 -0
  191. package/dist/components/organisms/book/index.d.ts +7 -0
  192. package/dist/components/organisms/book/types.d.ts +77 -0
  193. package/dist/components/organisms/component-registry.generated.d.ts +9 -0
  194. package/dist/components/organisms/debug/RuntimeDebugger.d.ts +19 -0
  195. package/dist/components/organisms/debug/hooks/useDebugData.d.ts +25 -0
  196. package/dist/components/organisms/debug/index.d.ts +13 -0
  197. package/dist/components/organisms/debug/tabs/EntitiesTab.d.ts +13 -0
  198. package/dist/components/organisms/debug/tabs/EventDispatcherTab.d.ts +16 -0
  199. package/dist/components/organisms/debug/tabs/EventFlowTab.d.ts +9 -0
  200. package/dist/components/organisms/debug/tabs/GuardsPanel.d.ts +9 -0
  201. package/dist/components/organisms/debug/tabs/ServerBridgeTab.d.ts +9 -0
  202. package/dist/components/organisms/debug/tabs/TicksTab.d.ts +13 -0
  203. package/dist/components/organisms/debug/tabs/TraitsTab.d.ts +13 -0
  204. package/dist/components/organisms/debug/tabs/TransitionTimeline.d.ts +9 -0
  205. package/dist/components/organisms/debug/tabs/VerificationTab.d.ts +10 -0
  206. package/dist/components/organisms/game/BattleBoard.d.ts +175 -0
  207. package/dist/components/organisms/game/CanvasEffect.d.ts +68 -0
  208. package/dist/components/organisms/game/CastleBoard.d.ts +85 -0
  209. package/dist/components/organisms/game/CombatLog.d.ts +2 -0
  210. package/dist/components/organisms/game/DialogueBox.d.ts +2 -0
  211. package/dist/components/organisms/game/GameAudioProvider.d.ts +47 -0
  212. package/dist/components/organisms/game/GameAudioToggle.d.ts +28 -0
  213. package/dist/components/organisms/game/GameCanvas3D.d.ts +181 -0
  214. package/dist/components/organisms/game/GameHud.d.ts +2 -0
  215. package/dist/components/organisms/game/GameMenu.d.ts +2 -0
  216. package/dist/components/organisms/game/GameOverScreen.d.ts +2 -0
  217. package/dist/components/organisms/game/InventoryPanel.d.ts +2 -0
  218. package/dist/components/organisms/game/IsometricCanvas.d.ts +3 -0
  219. package/dist/components/organisms/game/PlatformerCanvas.d.ts +2 -0
  220. package/dist/components/organisms/game/TraitSlot.d.ts +90 -0
  221. package/dist/components/organisms/game/TraitStateViewer.d.ts +53 -0
  222. package/dist/components/organisms/game/UncontrolledBattleBoard.d.ts +26 -0
  223. package/dist/components/organisms/game/WorldMapBoard.d.ts +156 -0
  224. package/dist/components/organisms/game/editor/editorUtils.d.ts +109 -0
  225. package/dist/components/organisms/game/editor/index.d.ts +9 -0
  226. package/dist/components/organisms/game/hooks/useBattleState.d.ts +35 -0
  227. package/dist/components/organisms/game/hooks/useCamera.d.ts +41 -0
  228. package/dist/components/organisms/game/hooks/useGameAudio.d.ts +47 -0
  229. package/dist/components/organisms/game/hooks/useImageCache.d.ts +16 -0
  230. package/dist/components/organisms/game/hooks/usePhysics2D.d.ts +45 -0
  231. package/dist/components/organisms/game/hooks/useSpriteAnimations.d.ts +43 -0
  232. package/dist/components/organisms/game/index.d.ts +52 -0
  233. package/dist/components/organisms/game/managers/PhysicsManager.d.ts +103 -0
  234. package/dist/components/organisms/game/physics-sim/SimulationCanvas.d.ts +20 -0
  235. package/dist/components/organisms/game/physics-sim/SimulationControls.d.ts +28 -0
  236. package/dist/components/organisms/game/physics-sim/SimulationGraph.d.ts +25 -0
  237. package/dist/components/organisms/game/physics-sim/index.d.ts +7 -0
  238. package/dist/components/organisms/game/physics-sim/presets/index.d.ts +4 -0
  239. package/dist/components/organisms/game/physics-sim/presets/mechanics.d.ts +4 -0
  240. package/dist/components/organisms/game/physics-sim/presets/types.d.ts +43 -0
  241. package/dist/components/organisms/game/puzzles/builder/BuilderBoard.d.ts +52 -0
  242. package/dist/components/organisms/game/puzzles/builder/index.d.ts +2 -0
  243. package/dist/components/organisms/game/puzzles/classifier/ClassifierBoard.d.ts +53 -0
  244. package/dist/components/organisms/game/puzzles/classifier/index.d.ts +2 -0
  245. package/dist/components/organisms/game/puzzles/debugger/DebuggerBoard.d.ts +45 -0
  246. package/dist/components/organisms/game/puzzles/debugger/index.d.ts +2 -0
  247. package/dist/components/organisms/game/puzzles/event-handler/EventHandlerBoard.d.ts +55 -0
  248. package/dist/components/organisms/game/puzzles/event-handler/EventLog.d.ts +31 -0
  249. package/dist/components/organisms/game/puzzles/event-handler/ObjectRulePanel.d.ts +45 -0
  250. package/dist/components/organisms/game/puzzles/event-handler/RuleEditor.d.ts +41 -0
  251. package/dist/components/organisms/game/puzzles/event-handler/index.d.ts +8 -0
  252. package/dist/components/organisms/game/puzzles/negotiator/NegotiatorBoard.d.ts +54 -0
  253. package/dist/components/organisms/game/puzzles/negotiator/index.d.ts +2 -0
  254. package/dist/components/organisms/game/puzzles/sequencer/ActionPalette.d.ts +34 -0
  255. package/dist/components/organisms/game/puzzles/sequencer/ActionTile.d.ts +30 -0
  256. package/dist/components/organisms/game/puzzles/sequencer/SequenceBar.d.ts +41 -0
  257. package/dist/components/organisms/game/puzzles/sequencer/SequencerBoard.d.ts +72 -0
  258. package/dist/components/organisms/game/puzzles/sequencer/index.d.ts +8 -0
  259. package/dist/components/organisms/game/puzzles/simulator/SimulatorBoard.d.ts +54 -0
  260. package/dist/components/organisms/game/puzzles/simulator/index.d.ts +2 -0
  261. package/dist/components/organisms/game/puzzles/state-architect/CodeView.d.ts +24 -0
  262. package/dist/components/organisms/game/puzzles/state-architect/StateArchitectBoard.d.ts +76 -0
  263. package/dist/components/organisms/game/puzzles/state-architect/StateNode.d.ts +33 -0
  264. package/dist/components/organisms/game/puzzles/state-architect/TransitionArrow.d.ts +36 -0
  265. package/dist/components/organisms/game/puzzles/state-architect/VariablePanel.d.ts +28 -0
  266. package/dist/components/organisms/game/puzzles/state-architect/index.d.ts +10 -0
  267. package/dist/components/organisms/game/three/Camera3D.d.ts +60 -0
  268. package/dist/components/organisms/game/three/Lighting3D.d.ts +47 -0
  269. package/dist/components/organisms/game/three/Scene3D.d.ts +37 -0
  270. package/dist/components/organisms/game/three/components/Canvas3DErrorBoundary.d.ts +51 -0
  271. package/dist/components/organisms/game/three/components/Canvas3DLoadingState.d.ts +44 -0
  272. package/dist/components/organisms/game/three/components/ModelLoader.d.ts +44 -0
  273. package/dist/components/organisms/game/three/components/PhysicsObject3D.d.ts +74 -0
  274. package/dist/components/organisms/game/three/components/index.d.ts +10 -0
  275. package/dist/components/organisms/game/three/hooks/useAssetLoader.d.ts +58 -0
  276. package/dist/components/organisms/game/three/hooks/useGameCanvas3DEvents.d.ts +79 -0
  277. package/dist/components/organisms/game/three/hooks/useRaycaster.d.ts +86 -0
  278. package/dist/components/organisms/game/three/hooks/useSceneGraph.d.ts +66 -0
  279. package/dist/components/organisms/game/three/hooks/useThree.d.ts +58 -0
  280. package/dist/components/organisms/game/three/index.d.ts +18 -1228
  281. package/dist/components/organisms/game/three/index.js +49 -1709
  282. package/dist/components/organisms/game/three/loaders/AssetLoader.d.ts +80 -0
  283. package/dist/components/organisms/game/three/renderers/FeatureRenderer.d.ts +44 -0
  284. package/dist/components/organisms/game/three/renderers/FeatureRenderer3D.d.ts +44 -0
  285. package/dist/components/organisms/game/three/renderers/TileRenderer.d.ts +57 -0
  286. package/dist/components/organisms/game/three/renderers/UnitRenderer.d.ts +46 -0
  287. package/dist/components/organisms/game/three/renderers/index.d.ts +11 -0
  288. package/dist/components/organisms/game/three/utils/culling.d.ts +134 -0
  289. package/dist/components/organisms/game/three/utils/grid3D.d.ts +154 -0
  290. package/dist/components/organisms/game/types/effects.d.ts +253 -0
  291. package/dist/components/organisms/game/types/game.d.ts +92 -0
  292. package/dist/{isometric-ynNHVPZx.d.ts → components/organisms/game/types/isometric.d.ts} +4 -6
  293. package/dist/components/organisms/game/types/spriteAnimation.d.ts +73 -0
  294. package/dist/components/organisms/game/useCanvasEffects.d.ts +26 -0
  295. package/dist/components/organisms/game/utils/canvasEffects.d.ts +50 -0
  296. package/dist/components/organisms/game/utils/combatEffects.d.ts +64 -0
  297. package/dist/components/organisms/game/utils/combatPresets.d.ts +15 -0
  298. package/dist/components/organisms/game/utils/isometric.d.ts +61 -0
  299. package/dist/components/organisms/game/utils/spriteAnimation.d.ts +57 -0
  300. package/dist/components/organisms/game/utils/spriteSheetConstants.d.ts +16 -0
  301. package/dist/components/organisms/index.d.ts +38 -0
  302. package/dist/components/organisms/layout/DashboardGrid.d.ts +35 -0
  303. package/dist/components/organisms/layout/MasterDetail.d.ts +32 -0
  304. package/dist/components/organisms/layout/SplitPane.d.ts +34 -0
  305. package/dist/components/organisms/layout/TabbedContainer.d.ts +42 -0
  306. package/dist/components/organisms/layout/index.d.ts +9 -0
  307. package/dist/components/organisms/types.d.ts +63 -0
  308. package/dist/components/templates/AuthLayout.d.ts +14 -0
  309. package/dist/components/templates/BattleTemplate.d.ts +25 -0
  310. package/dist/components/templates/CastleTemplate.d.ts +23 -0
  311. package/dist/components/templates/CounterTemplate.d.ts +44 -0
  312. package/dist/components/templates/DashboardLayout.d.ts +34 -0
  313. package/dist/components/templates/GameCanvas3DBattleTemplate.d.ts +96 -0
  314. package/dist/components/templates/GameCanvas3DCastleTemplate.d.ts +90 -0
  315. package/dist/components/templates/GameCanvas3DWorldMapTemplate.d.ts +96 -0
  316. package/dist/components/templates/GameShell.d.ts +34 -0
  317. package/dist/components/templates/GameTemplate.d.ts +36 -0
  318. package/dist/components/templates/GenericAppTemplate.d.ts +30 -0
  319. package/dist/components/templates/WorldMapTemplate.d.ts +29 -0
  320. package/dist/components/templates/index.d.ts +10 -0
  321. package/dist/components/templates/types.d.ts +22 -0
  322. package/dist/context/DesignThemeContext.d.ts +21 -0
  323. package/dist/{ThemeContext-D9xUORq5.d.ts → context/ThemeContext.d.ts} +15 -16
  324. package/dist/context/UISlotContext.d.ts +75 -0
  325. package/dist/context/UserContext.d.ts +111 -0
  326. package/dist/context/index.d.ts +6 -206
  327. package/dist/{event-bus-types-CjJduURa.d.ts → hooks/event-bus-types.d.ts} +4 -6
  328. package/dist/hooks/index.d.ts +30 -1220
  329. package/dist/hooks/index.js +2 -2
  330. package/dist/hooks/useAgentChat.d.ts +104 -0
  331. package/dist/hooks/useAuthContext.d.ts +25 -0
  332. package/dist/hooks/useCompile.d.ts +22 -0
  333. package/dist/hooks/useDeepAgentGeneration.d.ts +46 -0
  334. package/dist/hooks/useDragReorder.d.ts +26 -0
  335. package/dist/hooks/useEntities.d.ts +52 -0
  336. package/dist/hooks/useEntityData.d.ts +155 -0
  337. package/dist/hooks/useEntityMutations.d.ts +80 -0
  338. package/dist/hooks/useEventBus.d.ts +96 -0
  339. package/dist/hooks/useExtensions.d.ts +32 -0
  340. package/dist/hooks/useFileEditor.d.ts +32 -0
  341. package/dist/hooks/useFileSystem.d.ts +40 -0
  342. package/dist/hooks/useGitHub.d.ts +58 -0
  343. package/dist/hooks/useInfiniteScroll.d.ts +13 -0
  344. package/dist/hooks/useLongPress.d.ts +16 -0
  345. package/dist/hooks/useOrbitalHistory.d.ts +39 -0
  346. package/dist/hooks/useOrbitalMutations.d.ts +95 -0
  347. package/dist/hooks/usePinchZoom.d.ts +22 -0
  348. package/dist/hooks/usePreview.d.ts +57 -0
  349. package/dist/hooks/usePullToRefresh.d.ts +25 -0
  350. package/dist/hooks/useQuerySingleton.d.ts +78 -0
  351. package/dist/hooks/useResolvedEntity.d.ts +32 -0
  352. package/dist/hooks/useSwipeGesture.d.ts +26 -0
  353. package/dist/hooks/useTranslate.d.ts +35 -0
  354. package/dist/hooks/useUIEvents.d.ts +35 -0
  355. package/dist/{useUISlots-BBjNvQtb.d.ts → hooks/useUISlots.d.ts} +8 -9
  356. package/dist/hooks/useValidation.d.ts +46 -0
  357. package/dist/lib/api-client.d.ts +42 -0
  358. package/dist/lib/cn.d.ts +6 -0
  359. package/dist/lib/debug.d.ts +43 -0
  360. package/dist/lib/debugRegistry.d.ts +29 -0
  361. package/dist/lib/debugUtils.d.ts +27 -0
  362. package/dist/lib/entityDebug.d.ts +38 -0
  363. package/dist/lib/getNestedValue.d.ts +33 -0
  364. package/dist/lib/guardRegistry.d.ts +32 -0
  365. package/dist/lib/index.d.ts +17 -319
  366. package/dist/lib/index.js +1 -3
  367. package/dist/lib/jazari/index.d.ts +5 -0
  368. package/dist/lib/jazari/layout.d.ts +30 -0
  369. package/dist/lib/jazari/svg-paths.d.ts +61 -0
  370. package/dist/lib/jazari/types.d.ts +91 -0
  371. package/dist/lib/parseContentSegments.d.ts +41 -0
  372. package/dist/lib/tickRegistry.d.ts +40 -0
  373. package/dist/lib/traitRegistry.d.ts +34 -0
  374. package/dist/lib/verificationRegistry.d.ts +138 -0
  375. package/dist/lib/visualizer/browser.d.ts +47 -0
  376. package/dist/lib/visualizer/index.d.ts +143 -0
  377. package/dist/locales/index.d.ts +5 -7
  378. package/dist/providers/EventBusProvider.d.ts +60 -0
  379. package/dist/providers/FetchedDataProvider.d.ts +105 -0
  380. package/dist/providers/OfflineModeProvider.d.ts +79 -0
  381. package/dist/providers/OrbitalProvider.d.ts +101 -0
  382. package/dist/providers/SelectionProvider.d.ts +81 -0
  383. package/dist/providers/VerificationProvider.d.ts +63 -0
  384. package/dist/providers/index.css +599 -0
  385. package/dist/providers/index.d.ts +16 -464
  386. package/dist/providers/index.js +5 -4
  387. package/dist/renderer/client-effect-executor.d.ts +68 -0
  388. package/dist/renderer/data-resolver.d.ts +68 -0
  389. package/dist/renderer/index.d.ts +22 -519
  390. package/dist/renderer/init.d.ts +14 -0
  391. package/dist/renderer/navigation.d.ts +142 -0
  392. package/dist/{offline-executor-CHr4uAhf.d.ts → renderer/offline-executor.d.ts} +9 -172
  393. package/dist/renderer/pattern-resolver.d.ts +91 -0
  394. package/dist/renderer/slot-definitions.d.ts +45 -0
  395. package/dist/renderer/types.d.ts +160 -0
  396. package/dist/renderer/useClientEffects.d.ts +88 -0
  397. package/dist/runtime/EntitySchemaContext.d.ts +40 -0
  398. package/dist/runtime/TraitProvider.d.ts +52 -0
  399. package/dist/runtime/createClientEffectHandlers.d.ts +23 -0
  400. package/dist/runtime/index.css +599 -0
  401. package/dist/runtime/index.d.ts +10 -275
  402. package/dist/runtime/index.js +6 -6
  403. package/dist/runtime/types.d.ts +10 -0
  404. package/dist/runtime/ui/SlotsContext.d.ts +71 -0
  405. package/dist/runtime/useResolvedSchema.d.ts +45 -0
  406. package/dist/runtime/useTraitStateMachine.d.ts +48 -0
  407. package/dist/scripts/generate-design-system.d.ts +29 -0
  408. package/dist/scripts/generate-theme-from-schema.d.ts +10 -0
  409. package/dist/scripts/generate.d.ts +12 -0
  410. package/dist/scripts/suggest-components.d.ts +31 -0
  411. package/dist/scripts/types.d.ts +129 -0
  412. package/dist/stores/entityStore.d.ts +99 -0
  413. package/dist/stores/filtering.d.ts +51 -0
  414. package/dist/stores/index.d.ts +4 -148
  415. package/dist/tsup.config.d.ts +2 -0
  416. package/dist/vitest.config.d.ts +2 -0
  417. package/package.json +5 -4
  418. package/dist/chunk-42YQ6JVR.js +0 -48
  419. package/dist/chunk-WCTZ7WZX.js +0 -311
  420. package/dist/cn-C_ATNPvi.d.ts +0 -332
@@ -0,0 +1,96 @@
1
+ /**
2
+ * GameCanvas3DWorldMapTemplate
3
+ *
4
+ * Pure declarative template wrapper for 3D world map.
5
+ * No hooks, no callbacks, no local state -- just entity data and config props.
6
+ *
7
+ * Page: WorldMap3DPage
8
+ * Entity: WorldMap3D
9
+ * ViewType: detail
10
+ *
11
+ * Events Emitted:
12
+ * - TILE_SELECTED - When a tile is clicked ({ tileId, x, z, type })
13
+ * - UNIT_SELECTED - When a unit is clicked ({ unitId, x, z, name })
14
+ * - FEATURE_SELECTED - When a feature is clicked ({ featureId, x, z, type })
15
+ * - TILE_HOVERED - When hovering over a tile ({ tileId, x, z })
16
+ * - TILE_LEAVE - When leaving a tile ({})
17
+ * - CAMERA_CHANGED - When camera position changes ({ position })
18
+ *
19
+ * @packageDocumentation
20
+ */
21
+ import React from 'react';
22
+ import type { IsometricTile, IsometricUnit, IsometricFeature } from '../organisms/game/types/isometric';
23
+ import type { TemplateProps } from './types';
24
+ export interface WorldMap3DEntity {
25
+ /** Map tiles */
26
+ tiles: IsometricTile[];
27
+ /** Units on the map */
28
+ units: IsometricUnit[];
29
+ /** Map features (castles, resources, etc.) */
30
+ features: IsometricFeature[];
31
+ /** Entity ID */
32
+ id: string;
33
+ /** Entity name */
34
+ name?: string;
35
+ }
36
+ export interface GameCanvas3DWorldMapTemplateProps extends TemplateProps<WorldMap3DEntity> {
37
+ /** 3D camera mode */
38
+ cameraMode?: 'isometric' | 'perspective' | 'top-down';
39
+ /** Show grid helper */
40
+ showGrid?: boolean;
41
+ /** Show coordinate overlay */
42
+ showCoordinates?: boolean;
43
+ /** Show tile info on hover */
44
+ showTileInfo?: boolean;
45
+ /** Enable shadows */
46
+ shadows?: boolean;
47
+ /** Background color */
48
+ backgroundColor?: string;
49
+ /** Event name for tile clicks */
50
+ tileClickEvent?: string;
51
+ /** Event name for unit clicks */
52
+ unitClickEvent?: string;
53
+ /** Event name for feature clicks */
54
+ featureClickEvent?: string;
55
+ /** Event name for tile hover */
56
+ tileHoverEvent?: string;
57
+ /** Event name for tile leave */
58
+ tileLeaveEvent?: string;
59
+ /** Event name for camera changes */
60
+ cameraChangeEvent?: string;
61
+ /** Exit/back event name */
62
+ exitEvent?: string;
63
+ /** Currently selected unit ID */
64
+ selectedUnitId?: string | null;
65
+ /** Valid move positions for selected unit */
66
+ validMoves?: Array<{
67
+ x: number;
68
+ z: number;
69
+ }>;
70
+ /** Attack target positions */
71
+ attackTargets?: Array<{
72
+ x: number;
73
+ z: number;
74
+ }>;
75
+ }
76
+ /**
77
+ * GameCanvas3DWorldMapTemplate Component
78
+ *
79
+ * Template for 3D world map view.
80
+ *
81
+ * @example
82
+ * ```tsx
83
+ * <GameCanvas3DWorldMapTemplate
84
+ * entity={worldMapEntity}
85
+ * cameraMode="isometric"
86
+ * tileClickEvent="SELECT_TILE"
87
+ * unitClickEvent="SELECT_UNIT"
88
+ * showCoordinates={true}
89
+ * />
90
+ * ```
91
+ */
92
+ export declare function GameCanvas3DWorldMapTemplate({ entity, cameraMode, showGrid, showCoordinates, showTileInfo, shadows, backgroundColor, tileClickEvent, unitClickEvent, featureClickEvent, tileHoverEvent, tileLeaveEvent, cameraChangeEvent, selectedUnitId, validMoves, attackTargets, className, }: GameCanvas3DWorldMapTemplateProps): React.JSX.Element | null;
93
+ export declare namespace GameCanvas3DWorldMapTemplate {
94
+ var displayName: string;
95
+ }
96
+ export default GameCanvas3DWorldMapTemplate;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * GameShell
3
+ *
4
+ * A full-screen layout wrapper for game applications.
5
+ * Replaces DashboardLayout for game clients — no sidebar nav, just full-viewport
6
+ * rendering with an optional HUD overlay bar.
7
+ *
8
+ * Wrap game page content directly as children:
9
+ * <GameShell appName="TraitWars">
10
+ * <WorldMapPage />
11
+ * </GameShell>
12
+ *
13
+ * @generated pattern — can be customised per-game via props
14
+ */
15
+ import React from "react";
16
+ export interface GameShellProps {
17
+ /** Application / game title shown in the HUD bar */
18
+ appName?: string;
19
+ /** Optional HUD content rendered above the main area */
20
+ hud?: React.ReactNode;
21
+ /** Extra class name on the root container */
22
+ className?: string;
23
+ /** Whether to show the minimal top bar (default: true) */
24
+ showTopBar?: boolean;
25
+ /** Game content rendered inside the full-screen area */
26
+ children?: React.ReactNode;
27
+ }
28
+ /**
29
+ * Full-viewport game shell layout.
30
+ *
31
+ * Renders children inside a full-height flex container.
32
+ * An optional top bar shows the game title and can host HUD widgets.
33
+ */
34
+ export declare const GameShell: React.FC<GameShellProps>;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * GameTemplate
3
+ *
4
+ * A presentational template for game applications.
5
+ * Includes a main game canvas/area, HUD overlay, and an optional debug sidebar.
6
+ * **Atomic Design**: Composed using Box, Typography, and Layout molecules/atoms.
7
+ */
8
+ import React from "react";
9
+ import type { TemplateProps } from "./types";
10
+ interface GameEntity {
11
+ id: string;
12
+ title?: string;
13
+ }
14
+ export interface GameTemplateProps extends TemplateProps<GameEntity> {
15
+ /** Title of the game */
16
+ title?: string;
17
+ /** The main game canvas or content */
18
+ children: React.ReactNode;
19
+ /** HUD overlay content (scores, health, etc.) */
20
+ hud?: React.ReactNode;
21
+ /** Debug panel content */
22
+ debugPanel?: React.ReactNode;
23
+ /** Whether the debug panel is visible */
24
+ showDebugPanel?: boolean;
25
+ /** Game controls */
26
+ controls?: {
27
+ onPlay?: () => void;
28
+ onPause?: () => void;
29
+ onReset?: () => void;
30
+ isPlaying?: boolean;
31
+ };
32
+ /** Additional class name */
33
+ className?: string;
34
+ }
35
+ export declare const GameTemplate: React.FC<GameTemplateProps>;
36
+ export {};
@@ -0,0 +1,30 @@
1
+ /**
2
+ * GenericAppTemplate
3
+ *
4
+ * A simple, generic template for any application.
5
+ * Includes a header with title and actions, and a main content area.
6
+ * **Atomic Design**: Composed using Box, Typography, and Button atoms.
7
+ */
8
+ import React from "react";
9
+ import type { TemplateProps } from "./types";
10
+ interface GenericAppEntity {
11
+ id: string;
12
+ title?: string;
13
+ subtitle?: string;
14
+ }
15
+ export interface GenericAppTemplateProps extends TemplateProps<GenericAppEntity> {
16
+ /** Page title */
17
+ title: string;
18
+ /** Subtitle or description */
19
+ subtitle?: string;
20
+ /** Main content */
21
+ children: React.ReactNode;
22
+ /** Header actions (buttons, links) */
23
+ headerActions?: React.ReactNode;
24
+ /** Footer content */
25
+ footer?: React.ReactNode;
26
+ /** Additional class name */
27
+ className?: string;
28
+ }
29
+ export declare const GenericAppTemplate: React.FC<GenericAppTemplateProps>;
30
+ export {};
@@ -0,0 +1,29 @@
1
+ /**
2
+ * WorldMapTemplate
3
+ *
4
+ * Thin declarative wrapper around WorldMapBoard organism.
5
+ * All game logic (hero movement, encounters, hex conversion, etc.) lives in WorldMapBoard.
6
+ *
7
+ * Compliant with Almadar_Templates.md: no hooks, no callbacks, entity-only data flow.
8
+ *
9
+ * @packageDocumentation
10
+ */
11
+ import React from 'react';
12
+ import type { TemplateProps } from './types';
13
+ import type { WorldMapEntity } from '../organisms/game/WorldMapBoard';
14
+ export type { WorldMapEntity, MapHero, MapHex, WorldMapSlotContext, } from '../organisms/game/WorldMapBoard';
15
+ export interface WorldMapTemplateProps extends TemplateProps<WorldMapEntity> {
16
+ /** Canvas render scale */
17
+ scale?: number;
18
+ /** Unit draw-size multiplier */
19
+ unitScale?: number;
20
+ /** Override for the diamond-top Y offset within tile sprites (default: 374). */
21
+ diamondTopY?: number;
22
+ /** Allow selecting / moving ALL heroes (including enemy). For testing. */
23
+ allowMoveAllHeroes?: boolean;
24
+ }
25
+ export declare function WorldMapTemplate({ entity, scale, unitScale, diamondTopY, allowMoveAllHeroes, className, }: WorldMapTemplateProps): React.JSX.Element;
26
+ export declare namespace WorldMapTemplate {
27
+ var displayName: string;
28
+ }
29
+ export default WorldMapTemplate;
@@ -0,0 +1,10 @@
1
+ export type { TemplateProps } from './types';
2
+ export { DashboardLayout, type DashboardLayoutProps, type NavItem } from './DashboardLayout';
3
+ export { AuthLayout, type AuthLayoutProps } from './AuthLayout';
4
+ export { CounterTemplate, type CounterTemplateProps, type CounterSize, type CounterVariant } from './CounterTemplate';
5
+ export { GameTemplate, type GameTemplateProps } from './GameTemplate';
6
+ export { GenericAppTemplate, type GenericAppTemplateProps } from './GenericAppTemplate';
7
+ export { GameShell, type GameShellProps } from './GameShell';
8
+ export { BattleTemplate, type BattleTemplateProps, type BattleEntity, type BattlePhase, type BattleUnit, type BattleTile, type BattleSlotContext, } from './BattleTemplate';
9
+ export { CastleTemplate, type CastleTemplateProps, type CastleEntity, type CastleSlotContext, } from './CastleTemplate';
10
+ export { WorldMapTemplate, type WorldMapTemplateProps, type WorldMapEntity, type MapHero, type MapHex, type WorldMapSlotContext, } from './WorldMapTemplate';
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Base template types for Almadar UI.
3
+ *
4
+ * All templates MUST extend `TemplateProps<E>` to enforce entity-only data flow
5
+ * and JSON round-trip compatibility with the flattener pipeline.
6
+ *
7
+ * The compiler passes `entity` as `E[]` (array from data store), so
8
+ * TemplateProps accepts the same union as EntityDisplayProps.
9
+ *
10
+ * @see docs/Almadar_Templates.md
11
+ */
12
+ /** Base props for all templates — enforces entity-only data flow. */
13
+ export interface TemplateProps<E extends {
14
+ id: string;
15
+ } = {
16
+ id: string;
17
+ }> {
18
+ /** Entity data — single object, array from compiler, or string entity name */
19
+ entity?: string | E | readonly E[];
20
+ /** External styling override */
21
+ className?: string;
22
+ }
@@ -0,0 +1,21 @@
1
+ /** @deprecated Use ThemeDefinition from ThemeContext */
2
+ export type DesignTheme = string;
3
+ /**
4
+ * @deprecated Use ThemeProvider from ThemeContext instead
5
+ */
6
+ export declare const DesignThemeProvider: import("react").FC<import("./ThemeContext").ThemeProviderProps>;
7
+ /**
8
+ * @deprecated Use useTheme from ThemeContext instead
9
+ *
10
+ * This wrapper provides backward compatibility with the old API.
11
+ */
12
+ export declare function useDesignTheme(): {
13
+ designTheme: string;
14
+ setDesignTheme: (theme: string) => void;
15
+ availableThemes: string[];
16
+ };
17
+ declare const _default: {
18
+ DesignThemeProvider: import("react").FC<import("./ThemeContext").ThemeProviderProps>;
19
+ useDesignTheme: typeof useDesignTheme;
20
+ };
21
+ export default _default;
@@ -1,5 +1,3 @@
1
- import React__default from 'react';
2
-
3
1
  /**
4
2
  * Unified ThemeContext - Single provider for theme and color mode
5
3
  *
@@ -10,13 +8,13 @@ import React__default from 'react';
10
8
  *
11
9
  * @packageDocumentation
12
10
  */
13
-
11
+ import React from "react";
14
12
  /** Color mode preference */
15
- type ColorMode = "light" | "dark" | "system";
13
+ export type ColorMode = "light" | "dark" | "system";
16
14
  /** Resolved color mode (what's actually applied) */
17
- type ResolvedMode = "light" | "dark";
15
+ export type ResolvedMode = "light" | "dark";
18
16
  /** Theme definition */
19
- interface ThemeDefinition {
17
+ export interface ThemeDefinition {
20
18
  /** Theme identifier (e.g., "ocean", "wireframe") */
21
19
  name: string;
22
20
  /** Display name for UI (e.g., "Ocean Blue") */
@@ -27,7 +25,7 @@ interface ThemeDefinition {
27
25
  hasDarkMode?: boolean;
28
26
  }
29
27
  /** Built-in themes available in the design system */
30
- declare const BUILT_IN_THEMES: ThemeDefinition[];
28
+ export declare const BUILT_IN_THEMES: ThemeDefinition[];
31
29
  /** Theme context value */
32
30
  interface ThemeContextValue {
33
31
  /** Current theme name */
@@ -47,9 +45,9 @@ interface ThemeContextValue {
47
45
  /** The full theme string applied to data-theme (e.g., "ocean-light") */
48
46
  appliedTheme: string;
49
47
  }
50
- declare const ThemeContext: React__default.Context<ThemeContextValue | undefined>;
51
- interface ThemeProviderProps {
52
- children: React__default.ReactNode;
48
+ declare const ThemeContext: React.Context<ThemeContextValue | undefined>;
49
+ export interface ThemeProviderProps {
50
+ children: React.ReactNode;
53
51
  /** Available themes (will be merged with built-in themes) */
54
52
  themes?: readonly ThemeDefinition[] | ThemeDefinition[];
55
53
  /** Default theme name */
@@ -57,7 +55,7 @@ interface ThemeProviderProps {
57
55
  /** Default color mode */
58
56
  defaultMode?: ColorMode;
59
57
  /** Optional target element ref — when provided, theme attributes are applied to this element instead of document.documentElement */
60
- targetRef?: React__default.RefObject<HTMLElement>;
58
+ targetRef?: React.RefObject<HTMLElement>;
61
59
  }
62
60
  /**
63
61
  * Unified ThemeProvider component
@@ -76,7 +74,7 @@ interface ThemeProviderProps {
76
74
  * </ThemeProvider>
77
75
  * ```
78
76
  */
79
- declare const ThemeProvider: React__default.FC<ThemeProviderProps>;
77
+ export declare const ThemeProvider: React.FC<ThemeProviderProps>;
80
78
  /**
81
79
  * Hook for accessing theme context
82
80
  *
@@ -99,7 +97,8 @@ declare const ThemeProvider: React__default.FC<ThemeProviderProps>;
99
97
  * </select>
100
98
  * ```
101
99
  */
102
- declare function useTheme(): ThemeContextValue;
103
- type DesignTheme = ThemeDefinition;
104
-
105
- export { BUILT_IN_THEMES as B, type ColorMode as C, type DesignTheme as D, type ResolvedMode as R, type ThemeProviderProps as T, ThemeContext as a, type ThemeDefinition as b, ThemeProvider as c, useTheme as u };
100
+ export declare function useTheme(): ThemeContextValue;
101
+ export type Theme = ColorMode;
102
+ export type ResolvedTheme = ResolvedMode;
103
+ export type DesignTheme = ThemeDefinition;
104
+ export default ThemeContext;
@@ -0,0 +1,75 @@
1
+ /**
2
+ * UISlotContext
3
+ *
4
+ * React context for providing the UI Slot Manager throughout the application.
5
+ * Traits use this context to render content into slots via render_ui effects.
6
+ *
7
+ * Usage:
8
+ * ```tsx
9
+ * // In App.tsx or layout
10
+ * <UISlotProvider>
11
+ * <App />
12
+ * </UISlotProvider>
13
+ *
14
+ * // In trait hooks or components
15
+ * const { render, clear } = useUISlots();
16
+ * render({ target: 'modal', pattern: 'form-section', props: {...} });
17
+ * ```
18
+ *
19
+ * @packageDocumentation
20
+ */
21
+ import React from 'react';
22
+ import { type UISlotManager, type UISlot, type SlotContent, type RenderUIConfig, type SlotAnimation, type SlotChangeCallback } from '../hooks/useUISlots';
23
+ /**
24
+ * Context for the UI Slot Manager
25
+ */
26
+ declare const UISlotContext: React.Context<UISlotManager | null>;
27
+ export interface UISlotProviderProps {
28
+ children: React.ReactNode;
29
+ }
30
+ /**
31
+ * Provider component that creates and provides the UI Slot Manager.
32
+ *
33
+ * Must wrap any components that use traits with render_ui effects.
34
+ */
35
+ export declare function UISlotProvider({ children }: UISlotProviderProps): React.ReactElement;
36
+ /**
37
+ * Hook to access the UI Slot Manager.
38
+ *
39
+ * Must be used within a UISlotProvider.
40
+ *
41
+ * @throws Error if used outside of UISlotProvider
42
+ *
43
+ * @example
44
+ * ```tsx
45
+ * function MyTraitHook() {
46
+ * const { render, clear } = useUISlots();
47
+ *
48
+ * const showModal = () => {
49
+ * render({
50
+ * target: 'modal',
51
+ * pattern: 'form-section',
52
+ * props: { title: 'Create Item' },
53
+ * });
54
+ * };
55
+ *
56
+ * const closeModal = () => {
57
+ * clear('modal');
58
+ * };
59
+ *
60
+ * return { showModal, closeModal };
61
+ * }
62
+ * ```
63
+ */
64
+ export declare function useUISlots(): UISlotManager;
65
+ /**
66
+ * Hook to get content for a specific slot.
67
+ *
68
+ * Useful for components that only need to read slot state.
69
+ */
70
+ export declare function useSlotContent(slot: UISlot): SlotContent | null;
71
+ /**
72
+ * Hook to check if a slot has content.
73
+ */
74
+ export declare function useSlotHasContent(slot: UISlot): boolean;
75
+ export { UISlotContext, type UISlotManager, type UISlot, type SlotContent, type RenderUIConfig, type SlotAnimation, type SlotChangeCallback, };
@@ -0,0 +1,111 @@
1
+ /**
2
+ * UserContext
3
+ *
4
+ * React context for providing user data throughout the application.
5
+ * Enables @user bindings in S-expressions for role-based UI and permissions.
6
+ *
7
+ * Usage:
8
+ * ```tsx
9
+ * // In App.tsx or layout
10
+ * <UserProvider user={{ id: '123', role: 'admin', permissions: ['read', 'write'] }}>
11
+ * <App />
12
+ * </UserProvider>
13
+ *
14
+ * // In components - access via hook
15
+ * const { user, hasRole, hasPermission } = useUser();
16
+ * if (hasRole('admin')) { ... }
17
+ * if (hasPermission('delete')) { ... }
18
+ * ```
19
+ *
20
+ * @packageDocumentation
21
+ */
22
+ import React from 'react';
23
+ /**
24
+ * User data for @user bindings.
25
+ * Matches UserContext type from evaluator/context.ts
26
+ */
27
+ export interface UserData {
28
+ /** User's unique ID */
29
+ id: string;
30
+ /** User's email */
31
+ email?: string;
32
+ /** User's display name */
33
+ name?: string;
34
+ /** User's role (for RBAC) */
35
+ role?: string;
36
+ /** User's permissions */
37
+ permissions?: string[];
38
+ /** Additional custom profile fields */
39
+ [key: string]: unknown;
40
+ }
41
+ /**
42
+ * User context value.
43
+ */
44
+ export interface UserContextValue {
45
+ /** Current user data (null if not logged in) */
46
+ user: UserData | null;
47
+ /** Check if user is logged in */
48
+ isLoggedIn: boolean;
49
+ /** Check if user has a specific role */
50
+ hasRole: (role: string) => boolean;
51
+ /** Check if user has a specific permission */
52
+ hasPermission: (permission: string) => boolean;
53
+ /** Check if user has any of the specified roles */
54
+ hasAnyRole: (roles: string[]) => boolean;
55
+ /** Check if user has all of the specified permissions */
56
+ hasAllPermissions: (permissions: string[]) => boolean;
57
+ /** Get a user field by path (for @user.field bindings) */
58
+ getUserField: (path: string) => unknown;
59
+ }
60
+ /**
61
+ * Anonymous user for when no user is logged in.
62
+ */
63
+ declare const ANONYMOUS_USER: UserData;
64
+ declare const UserContext: React.Context<UserContextValue | null>;
65
+ export interface UserProviderProps {
66
+ /** User data (null if not logged in) */
67
+ user?: UserData | null;
68
+ /** Children to render */
69
+ children: React.ReactNode;
70
+ }
71
+ /**
72
+ * Provider component that provides user context to the application.
73
+ *
74
+ * Provides RBAC helpers and field access for @user bindings.
75
+ */
76
+ export declare function UserProvider({ user, children, }: UserProviderProps): React.ReactElement;
77
+ /**
78
+ * Hook to access the user context.
79
+ *
80
+ * Returns default values if used outside of UserProvider (for resilience).
81
+ *
82
+ * @example
83
+ * ```tsx
84
+ * function AdminPanel() {
85
+ * const { user, hasRole, hasPermission } = useUser();
86
+ *
87
+ * if (!hasRole('admin') && !hasPermission('admin:access')) {
88
+ * return <AccessDenied />;
89
+ * }
90
+ *
91
+ * return <div>Welcome, {user?.name}</div>;
92
+ * }
93
+ * ```
94
+ */
95
+ export declare function useUser(): UserContextValue;
96
+ /**
97
+ * Hook to check if user has a specific role.
98
+ * Convenience wrapper around useUser().hasRole().
99
+ */
100
+ export declare function useHasRole(role: string): boolean;
101
+ /**
102
+ * Hook to check if user has a specific permission.
103
+ * Convenience wrapper around useUser().hasPermission().
104
+ */
105
+ export declare function useHasPermission(permission: string): boolean;
106
+ /**
107
+ * Hook to get user data for @user bindings in S-expressions.
108
+ * Returns the user data object compatible with EvaluationContext.user
109
+ */
110
+ export declare function useUserForEvaluation(): UserData | undefined;
111
+ export { UserContext, ANONYMOUS_USER };