@almadar/ui 5.111.0 → 5.113.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 (589) hide show
  1. package/dist/GameAudioProvider-CPGwD49P.d.cts +151 -0
  2. package/dist/GameAudioProvider-CPGwD49P.d.ts +151 -0
  3. package/dist/TraitProvider-YkK6tXDw.d.cts +236 -0
  4. package/dist/TraitProvider-YkK6tXDw.d.ts +236 -0
  5. package/dist/{providers/UISlotContext.d.ts → UISlotContext-C1FsU9GB.d.ts} +14 -10
  6. package/dist/UISlotContext-D8_SoDsD.d.cts +79 -0
  7. package/dist/UserContext-bziZwgFL.d.cts +278 -0
  8. package/dist/UserContext-bziZwgFL.d.ts +278 -0
  9. package/dist/avl/index.cjs +137 -18
  10. package/dist/avl/index.js +139 -20
  11. package/dist/avl-schema-parser-B8Onmfsu.d.cts +393 -0
  12. package/dist/avl-schema-parser-B8Onmfsu.d.ts +393 -0
  13. package/dist/cn-BkQrMR01.d.cts +295 -0
  14. package/dist/cn-CTEFm9PC.d.ts +295 -0
  15. package/dist/components/index.cjs +33 -6
  16. package/dist/components/index.d.cts +11225 -0
  17. package/dist/components/index.d.ts +11225 -6
  18. package/dist/components/index.js +33 -6
  19. package/dist/{lib/themeTokens.d.ts → context/index.d.cts} +13 -4
  20. package/dist/context/index.d.ts +62 -9
  21. package/dist/{types/event-bus-types.d.ts → event-bus-types-Bl78kokd.d.cts} +7 -6
  22. package/dist/event-bus-types-Bl78kokd.d.ts +65 -0
  23. package/dist/hooks/index.d.cts +995 -0
  24. package/dist/hooks/index.d.ts +994 -32
  25. package/dist/lib/drawable/three/index.cjs +11 -24
  26. package/dist/lib/drawable/three/index.d.cts +1485 -0
  27. package/dist/lib/drawable/three/index.d.ts +1484 -38
  28. package/dist/lib/drawable/three/index.js +11 -24
  29. package/dist/lib/index.d.cts +505 -0
  30. package/dist/lib/index.d.ts +504 -18
  31. package/dist/locales/index.d.cts +22 -0
  32. package/dist/locales/index.d.ts +7 -5
  33. package/dist/offline-executor-aRuNznZx.d.cts +520 -0
  34. package/dist/offline-executor-aRuNznZx.d.ts +520 -0
  35. package/dist/paintDispatch-DR942knx.d.cts +221 -0
  36. package/dist/paintDispatch-DR942knx.d.ts +221 -0
  37. package/dist/providers/index.cjs +33 -6
  38. package/dist/providers/index.d.cts +428 -0
  39. package/dist/providers/index.d.ts +427 -26
  40. package/dist/providers/index.js +33 -6
  41. package/dist/renderer/index.cjs +1 -1
  42. package/dist/renderer/index.d.cts +343 -0
  43. package/dist/renderer/index.d.ts +337 -22
  44. package/dist/renderer/index.js +1 -1
  45. package/dist/runtime/index.cjs +137 -18
  46. package/dist/runtime/index.d.cts +426 -0
  47. package/dist/runtime/index.d.ts +421 -16
  48. package/dist/runtime/index.js +139 -20
  49. package/dist/useEventBus-CQWyAWpK.d.ts +65 -0
  50. package/dist/useEventBus-Ckr4wqW3.d.cts +65 -0
  51. package/dist/{hooks/useUISlots.d.ts → useUISlots-BesZYMks.d.cts} +16 -14
  52. package/dist/useUISlots-BesZYMks.d.ts +216 -0
  53. package/package.json +11 -11
  54. package/dist/avl/index.d.cts +0 -1853
  55. package/dist/avl/index.d.ts +0 -64
  56. package/dist/components/avl/atoms/Avl3DLabel.d.ts +0 -23
  57. package/dist/components/avl/atoms/Avl3DTooltip.d.ts +0 -25
  58. package/dist/components/avl/atoms/AvlApplication.d.ts +0 -8
  59. package/dist/components/avl/atoms/AvlBinding.d.ts +0 -12
  60. package/dist/components/avl/atoms/AvlBindingRef.d.ts +0 -7
  61. package/dist/components/avl/atoms/AvlEffect.d.ts +0 -10
  62. package/dist/components/avl/atoms/AvlEntity.d.ts +0 -9
  63. package/dist/components/avl/atoms/AvlEvent.d.ts +0 -7
  64. package/dist/components/avl/atoms/AvlField.d.ts +0 -10
  65. package/dist/components/avl/atoms/AvlFieldType.d.ts +0 -8
  66. package/dist/components/avl/atoms/AvlGuard.d.ts +0 -7
  67. package/dist/components/avl/atoms/AvlLiteral.d.ts +0 -7
  68. package/dist/components/avl/atoms/AvlOperator.d.ts +0 -8
  69. package/dist/components/avl/atoms/AvlOrbital.d.ts +0 -11
  70. package/dist/components/avl/atoms/AvlPage.d.ts +0 -7
  71. package/dist/components/avl/atoms/AvlPersistence.d.ts +0 -8
  72. package/dist/components/avl/atoms/AvlSExpr.d.ts +0 -8
  73. package/dist/components/avl/atoms/AvlState.d.ts +0 -15
  74. package/dist/components/avl/atoms/AvlTrait.d.ts +0 -13
  75. package/dist/components/avl/atoms/AvlTransition.d.ts +0 -18
  76. package/dist/components/avl/atoms/index.d.ts +0 -24
  77. package/dist/components/avl/hooks/useCanvasDnd.d.ts +0 -155
  78. package/dist/components/avl/lib/avl-3d-layout.d.ts +0 -116
  79. package/dist/components/avl/lib/avl-behavior-compose-converter.d.ts +0 -55
  80. package/dist/components/avl/lib/avl-elk-layout.d.ts +0 -55
  81. package/dist/components/avl/lib/avl-flow-converter.d.ts +0 -17
  82. package/dist/components/avl/lib/avl-layout.d.ts +0 -32
  83. package/dist/components/avl/lib/avl-preview-converter.d.ts +0 -71
  84. package/dist/components/avl/lib/avl-schema-parser.d.ts +0 -128
  85. package/dist/components/avl/lib/avl-story-schemas.d.ts +0 -34
  86. package/dist/components/avl/lib/avl-zoom-band.d.ts +0 -19
  87. package/dist/components/avl/lib/avl-zoom-state.d.ts +0 -72
  88. package/dist/components/avl/lib/derive-edit-focus.d.ts +0 -8
  89. package/dist/components/avl/lib/wire-validation.d.ts +0 -30
  90. package/dist/components/avl/molecules/Avl3DCrossWire.d.ts +0 -22
  91. package/dist/components/avl/molecules/Avl3DEntityCore.d.ts +0 -26
  92. package/dist/components/avl/molecules/Avl3DExprTree.d.ts +0 -21
  93. package/dist/components/avl/molecules/Avl3DOrbitalNode.d.ts +0 -29
  94. package/dist/components/avl/molecules/Avl3DStateNode.d.ts +0 -34
  95. package/dist/components/avl/molecules/Avl3DTransitionArc.d.ts +0 -38
  96. package/dist/components/avl/molecules/AvlBackwardEdge.d.ts +0 -8
  97. package/dist/components/avl/molecules/AvlBehaviorGlyph.d.ts +0 -61
  98. package/dist/components/avl/molecules/AvlBindingEdge.d.ts +0 -9
  99. package/dist/components/avl/molecules/AvlClosedCircuit.d.ts +0 -20
  100. package/dist/components/avl/molecules/AvlEmitListen.d.ts +0 -16
  101. package/dist/components/avl/molecules/AvlEventWireEdge.d.ts +0 -15
  102. package/dist/components/avl/molecules/AvlExprTree.d.ts +0 -13
  103. package/dist/components/avl/molecules/AvlOrbitalNode.d.ts +0 -12
  104. package/dist/components/avl/molecules/AvlOrbitalUnit.d.ts +0 -20
  105. package/dist/components/avl/molecules/AvlPageEdge.d.ts +0 -8
  106. package/dist/components/avl/molecules/AvlSlotMap.d.ts +0 -18
  107. package/dist/components/avl/molecules/AvlStateMachine.d.ts +0 -22
  108. package/dist/components/avl/molecules/AvlSwimLane.d.ts +0 -10
  109. package/dist/components/avl/molecules/AvlTransitionEdge.d.ts +0 -17
  110. package/dist/components/avl/molecules/AvlTransitionLane.d.ts +0 -18
  111. package/dist/components/avl/molecules/BehaviorComposeNode.d.ts +0 -13
  112. package/dist/components/avl/molecules/BehaviorView.d.ts +0 -12
  113. package/dist/components/avl/molecules/DetailView.d.ts +0 -13
  114. package/dist/components/avl/molecules/EventFlowEdge.d.ts +0 -13
  115. package/dist/components/avl/molecules/MiniStateMachine.d.ts +0 -14
  116. package/dist/components/avl/molecules/ModuleCard.d.ts +0 -22
  117. package/dist/components/avl/molecules/OrbPreviewNode.d.ts +0 -38
  118. package/dist/components/avl/molecules/SystemNode.d.ts +0 -12
  119. package/dist/components/avl/molecules/TraitCardNode.d.ts +0 -33
  120. package/dist/components/avl/molecules/index.d.ts +0 -38
  121. package/dist/components/avl/organisms/Avl3DApplicationScene.d.ts +0 -19
  122. package/dist/components/avl/organisms/Avl3DEffects.d.ts +0 -18
  123. package/dist/components/avl/organisms/Avl3DOrbitalScene.d.ts +0 -23
  124. package/dist/components/avl/organisms/Avl3DTraitScene.d.ts +0 -19
  125. package/dist/components/avl/organisms/Avl3DTransitionScene.d.ts +0 -17
  126. package/dist/components/avl/organisms/Avl3DViewer.d.ts +0 -40
  127. package/dist/components/avl/organisms/AvlClickTarget.d.ts +0 -31
  128. package/dist/components/avl/organisms/AvlCosmicZoom.d.ts +0 -41
  129. package/dist/components/avl/organisms/AvlLegend.d.ts +0 -15
  130. package/dist/components/avl/organisms/AvlOrbitalsCosmicZoom.d.ts +0 -54
  131. package/dist/components/avl/organisms/AvlTraitScene.d.ts +0 -17
  132. package/dist/components/avl/organisms/AvlTransitionDetail.d.ts +0 -20
  133. package/dist/components/avl/organisms/AvlTransitionScene.d.ts +0 -13
  134. package/dist/components/avl/organisms/FlowCanvas.d.ts +0 -134
  135. package/dist/components/avl/organisms/OrbInspector.d.ts +0 -45
  136. package/dist/components/avl/organisms/ZoomBreadcrumb.d.ts +0 -16
  137. package/dist/components/avl/organisms/ZoomLegend.d.ts +0 -10
  138. package/dist/components/avl/organisms/index.d.ts +0 -19
  139. package/dist/components/avl/providers/avl-3d-context.d.ts +0 -32
  140. package/dist/components/avl/types/avl-atom-types.d.ts +0 -53
  141. package/dist/components/avl/types/avl-behavior-compose-types.d.ts +0 -120
  142. package/dist/components/avl/types/avl-canvas-types.d.ts +0 -39
  143. package/dist/components/avl/types/avl-preview-types.d.ts +0 -240
  144. package/dist/components/core/atoms/Aside.d.ts +0 -15
  145. package/dist/components/core/atoms/AtlasImage.d.ts +0 -58
  146. package/dist/components/core/atoms/Avatar.d.ts +0 -61
  147. package/dist/components/core/atoms/Badge.d.ts +0 -29
  148. package/dist/components/core/atoms/Box.d.ts +0 -68
  149. package/dist/components/core/atoms/Button.d.ts +0 -33
  150. package/dist/components/core/atoms/Card.d.ts +0 -34
  151. package/dist/components/core/atoms/Center.d.ts +0 -33
  152. package/dist/components/core/atoms/Checkbox.d.ts +0 -14
  153. package/dist/components/core/atoms/ConditionalWrapper.d.ts +0 -69
  154. package/dist/components/core/atoms/ConfettiEffect.d.ts +0 -19
  155. package/dist/components/core/atoms/DayCell.d.ts +0 -22
  156. package/dist/components/core/atoms/Dialog.d.ts +0 -18
  157. package/dist/components/core/atoms/Divider.d.ts +0 -29
  158. package/dist/components/core/atoms/FilterPill.d.ts +0 -30
  159. package/dist/components/core/atoms/FlipContainer.d.ts +0 -21
  160. package/dist/components/core/atoms/GameIcon.d.ts +0 -19
  161. package/dist/components/core/atoms/Icon.d.ts +0 -57
  162. package/dist/components/core/atoms/InfiniteScrollSentinel.d.ts +0 -24
  163. package/dist/components/core/atoms/Input.d.ts +0 -39
  164. package/dist/components/core/atoms/Label.d.ts +0 -12
  165. package/dist/components/core/atoms/LawReferenceTooltip.d.ts +0 -48
  166. package/dist/components/core/atoms/Overlay.d.ts +0 -17
  167. package/dist/components/core/atoms/ProgressBar.d.ts +0 -63
  168. package/dist/components/core/atoms/Radio.d.ts +0 -35
  169. package/dist/components/core/atoms/RangeSlider.d.ts +0 -34
  170. package/dist/components/core/atoms/SectionHeader.d.ts +0 -14
  171. package/dist/components/core/atoms/Select.d.ts +0 -49
  172. package/dist/components/core/atoms/Spacer.d.ts +0 -25
  173. package/dist/components/core/atoms/Sparkline.d.ts +0 -30
  174. package/dist/components/core/atoms/Spinner.d.ts +0 -10
  175. package/dist/components/core/atoms/Stack.d.ts +0 -67
  176. package/dist/components/core/atoms/StatusDot.d.ts +0 -16
  177. package/dist/components/core/atoms/Switch.d.ts +0 -12
  178. package/dist/components/core/atoms/TextHighlight.d.ts +0 -54
  179. package/dist/components/core/atoms/Textarea.d.ts +0 -17
  180. package/dist/components/core/atoms/ThemeToggle.d.ts +0 -33
  181. package/dist/components/core/atoms/TimeSlotCell.d.ts +0 -23
  182. package/dist/components/core/atoms/TraitFrame.d.ts +0 -54
  183. package/dist/components/core/atoms/TrendIndicator.d.ts +0 -20
  184. package/dist/components/core/atoms/TypewriterText.d.ts +0 -20
  185. package/dist/components/core/atoms/Typography.d.ts +0 -39
  186. package/dist/components/core/atoms/index.d.ts +0 -52
  187. package/dist/components/core/atoms/svg/SvgBranch.d.ts +0 -16
  188. package/dist/components/core/atoms/svg/SvgConnection.d.ts +0 -17
  189. package/dist/components/core/atoms/svg/SvgFlow.d.ts +0 -14
  190. package/dist/components/core/atoms/svg/SvgGrid.d.ts +0 -18
  191. package/dist/components/core/atoms/svg/SvgLobe.d.ts +0 -17
  192. package/dist/components/core/atoms/svg/SvgMesh.d.ts +0 -16
  193. package/dist/components/core/atoms/svg/SvgMorph.d.ts +0 -15
  194. package/dist/components/core/atoms/svg/SvgNode.d.ts +0 -16
  195. package/dist/components/core/atoms/svg/SvgPulse.d.ts +0 -16
  196. package/dist/components/core/atoms/svg/SvgRing.d.ts +0 -17
  197. package/dist/components/core/atoms/svg/SvgShield.d.ts +0 -15
  198. package/dist/components/core/atoms/svg/SvgStack.d.ts +0 -17
  199. package/dist/components/core/atoms/svg/index.d.ts +0 -12
  200. package/dist/components/core/atoms/types.d.ts +0 -47
  201. package/dist/components/core/molecules/Accordion.d.ts +0 -71
  202. package/dist/components/core/molecules/ActivationBlock.d.ts +0 -22
  203. package/dist/components/core/molecules/Alert.d.ts +0 -25
  204. package/dist/components/core/molecules/AnimatedCounter.d.ts +0 -18
  205. package/dist/components/core/molecules/AssetPicker.d.ts +0 -21
  206. package/dist/components/core/molecules/BloomQuizBlock.d.ts +0 -25
  207. package/dist/components/core/molecules/BranchingLogicBuilder.d.ts +0 -33
  208. package/dist/components/core/molecules/Breadcrumb.d.ts +0 -55
  209. package/dist/components/core/molecules/ButtonGroup.d.ts +0 -77
  210. package/dist/components/core/molecules/CalendarGrid.d.ts +0 -61
  211. package/dist/components/core/molecules/Card.d.ts +0 -58
  212. package/dist/components/core/molecules/Carousel.d.ts +0 -42
  213. package/dist/components/core/molecules/Chart.d.ts +0 -106
  214. package/dist/components/core/molecules/ChartLegend.d.ts +0 -20
  215. package/dist/components/core/molecules/Coachmark.d.ts +0 -47
  216. package/dist/components/core/molecules/ConfirmDialog.d.ts +0 -49
  217. package/dist/components/core/molecules/ConnectionBlock.d.ts +0 -18
  218. package/dist/components/core/molecules/Container.d.ts +0 -30
  219. package/dist/components/core/molecules/ContentRenderer.d.ts +0 -23
  220. package/dist/components/core/molecules/DataGrid.d.ts +0 -117
  221. package/dist/components/core/molecules/DataList.d.ts +0 -129
  222. package/dist/components/core/molecules/DateRangePicker.d.ts +0 -56
  223. package/dist/components/core/molecules/DateRangeSelector.d.ts +0 -21
  224. package/dist/components/core/molecules/DocBreadcrumb.d.ts +0 -20
  225. package/dist/components/core/molecules/DocPagination.d.ts +0 -21
  226. package/dist/components/core/molecules/DocSearch.d.ts +0 -22
  227. package/dist/components/core/molecules/DocSidebar.d.ts +0 -24
  228. package/dist/components/core/molecules/DocTOC.d.ts +0 -24
  229. package/dist/components/core/molecules/DocumentViewer.d.ts +0 -61
  230. package/dist/components/core/molecules/Drawer.d.ts +0 -47
  231. package/dist/components/core/molecules/EdgeDecoration.d.ts +0 -36
  232. package/dist/components/core/molecules/EmptyState.d.ts +0 -29
  233. package/dist/components/core/molecules/ErrorBoundary.d.ts +0 -54
  234. package/dist/components/core/molecules/ErrorState.d.ts +0 -14
  235. package/dist/components/core/molecules/FeatureGrid.d.ts +0 -19
  236. package/dist/components/core/molecules/FileTree.d.ts +0 -37
  237. package/dist/components/core/molecules/FilterGroup.d.ts +0 -61
  238. package/dist/components/core/molecules/Flex.d.ts +0 -43
  239. package/dist/components/core/molecules/FlipCard.d.ts +0 -24
  240. package/dist/components/core/molecules/FloatingActionButton.d.ts +0 -83
  241. package/dist/components/core/molecules/FormField.d.ts +0 -16
  242. package/dist/components/core/molecules/FormSection.d.ts +0 -39
  243. package/dist/components/core/molecules/FormSectionHeader.d.ts +0 -31
  244. package/dist/components/core/molecules/GradientDivider.d.ts +0 -15
  245. package/dist/components/core/molecules/GraphCanvas.d.ts +0 -83
  246. package/dist/components/core/molecules/GraphView.d.ts +0 -45
  247. package/dist/components/core/molecules/Grid.d.ts +0 -54
  248. package/dist/components/core/molecules/GridPicker.d.ts +0 -44
  249. package/dist/components/core/molecules/Header.d.ts +0 -113
  250. package/dist/components/core/molecules/IconPicker.d.ts +0 -18
  251. package/dist/components/core/molecules/InputGroup.d.ts +0 -24
  252. package/dist/components/core/molecules/JazariStateMachine.d.ts +0 -34
  253. package/dist/components/core/molecules/JsonTreeEditor.d.ts +0 -13
  254. package/dist/components/core/molecules/Lightbox.d.ts +0 -26
  255. package/dist/components/core/molecules/LikertScale.d.ts +0 -34
  256. package/dist/components/core/molecules/LineChart.d.ts +0 -35
  257. package/dist/components/core/molecules/LoadingState.d.ts +0 -7
  258. package/dist/components/core/molecules/MapView.d.ts +0 -87
  259. package/dist/components/core/molecules/MatrixQuestion.d.ts +0 -35
  260. package/dist/components/core/molecules/Menu.d.ts +0 -44
  261. package/dist/components/core/molecules/Meter.d.ts +0 -52
  262. package/dist/components/core/molecules/Modal.d.ts +0 -36
  263. package/dist/components/core/molecules/Navigation.d.ts +0 -67
  264. package/dist/components/core/molecules/NodeSlotEditor.d.ts +0 -17
  265. package/dist/components/core/molecules/NumberStepper.d.ts +0 -28
  266. package/dist/components/core/molecules/OnboardingSpotlight.d.ts +0 -27
  267. package/dist/components/core/molecules/OptionConstraintGroup.d.ts +0 -44
  268. package/dist/components/core/molecules/OrbitalVisualization.d.ts +0 -48
  269. package/dist/components/core/molecules/PageHeader.d.ts +0 -60
  270. package/dist/components/core/molecules/Pagination.d.ts +0 -71
  271. package/dist/components/core/molecules/Popover.d.ts +0 -39
  272. package/dist/components/core/molecules/PositionedCanvas.d.ts +0 -40
  273. package/dist/components/core/molecules/ProgressDots.d.ts +0 -24
  274. package/dist/components/core/molecules/PropertyInspector.d.ts +0 -38
  275. package/dist/components/core/molecules/PullToRefresh.d.ts +0 -22
  276. package/dist/components/core/molecules/QrScanner.d.ts +0 -24
  277. package/dist/components/core/molecules/QuizBlock.d.ts +0 -20
  278. package/dist/components/core/molecules/ReflectionBlock.d.ts +0 -23
  279. package/dist/components/core/molecules/RelationSelect.d.ts +0 -48
  280. package/dist/components/core/molecules/RepeatableFormSection.d.ts +0 -60
  281. package/dist/components/core/molecules/ReplyTree.d.ts +0 -46
  282. package/dist/components/core/molecules/RichBlockEditor.d.ts +0 -43
  283. package/dist/components/core/molecules/ScaledDiagram.d.ts +0 -20
  284. package/dist/components/core/molecules/SearchInput.d.ts +0 -60
  285. package/dist/components/core/molecules/Section.d.ts +0 -43
  286. package/dist/components/core/molecules/SidePanel.d.ts +0 -53
  287. package/dist/components/core/molecules/Sidebar.d.ts +0 -72
  288. package/dist/components/core/molecules/SignaturePad.d.ts +0 -46
  289. package/dist/components/core/molecules/SimpleGrid.d.ts +0 -27
  290. package/dist/components/core/molecules/Skeleton.d.ts +0 -35
  291. package/dist/components/core/molecules/SocialProof.d.ts +0 -25
  292. package/dist/components/core/molecules/SortableList.d.ts +0 -19
  293. package/dist/components/core/molecules/Split.d.ts +0 -41
  294. package/dist/components/core/molecules/StarRating.d.ts +0 -27
  295. package/dist/components/core/molecules/StatDisplay.d.ts +0 -58
  296. package/dist/components/core/molecules/SwipeableRow.d.ts +0 -26
  297. package/dist/components/core/molecules/TableView.d.ts +0 -111
  298. package/dist/components/core/molecules/Tabs.d.ts +0 -60
  299. package/dist/components/core/molecules/TagInput.d.ts +0 -52
  300. package/dist/components/core/molecules/Toast.d.ts +0 -36
  301. package/dist/components/core/molecules/Tooltip.d.ts +0 -25
  302. package/dist/components/core/molecules/UploadDropZone.d.ts +0 -28
  303. package/dist/components/core/molecules/VersionDiff.d.ts +0 -62
  304. package/dist/components/core/molecules/ViolationAlert.d.ts +0 -46
  305. package/dist/components/core/molecules/VoteStack.d.ts +0 -35
  306. package/dist/components/core/molecules/WizardContainer.d.ts +0 -166
  307. package/dist/components/core/molecules/WizardNavigation.d.ts +0 -61
  308. package/dist/components/core/molecules/WizardProgress.d.ts +0 -45
  309. package/dist/components/core/molecules/index.d.ts +0 -138
  310. package/dist/components/core/molecules/lessonSegmentUtils.d.ts +0 -18
  311. package/dist/components/core/molecules/markdown/CodeBlock.d.ts +0 -108
  312. package/dist/components/core/molecules/markdown/MarkdownContent.d.ts +0 -26
  313. package/dist/components/core/molecules/markdown/index.d.ts +0 -2
  314. package/dist/components/core/molecules/parseLessonSegments.d.ts +0 -44
  315. package/dist/components/core/molecules/useDataDnd.d.ts +0 -63
  316. package/dist/components/core/organisms/CardGrid.d.ts +0 -84
  317. package/dist/components/core/organisms/ChatBar.d.ts +0 -31
  318. package/dist/components/core/organisms/CodeRunnerPanel.d.ts +0 -42
  319. package/dist/components/core/organisms/ComponentPatterns.d.ts +0 -185
  320. package/dist/components/core/organisms/CustomPattern.d.ts +0 -105
  321. package/dist/components/core/organisms/DataTable.d.ts +0 -79
  322. package/dist/components/core/organisms/DetailPanel.d.ts +0 -80
  323. package/dist/components/core/organisms/DrawerSlot.d.ts +0 -42
  324. package/dist/components/core/organisms/Form.d.ts +0 -214
  325. package/dist/components/core/organisms/LayoutPatterns.d.ts +0 -108
  326. package/dist/components/core/organisms/List.d.ts +0 -81
  327. package/dist/components/core/organisms/MasterDetail.d.ts +0 -35
  328. package/dist/components/core/organisms/MediaGallery.d.ts +0 -63
  329. package/dist/components/core/organisms/ModalSlot.d.ts +0 -38
  330. package/dist/components/core/organisms/NotifyListener.d.ts +0 -15
  331. package/dist/components/core/organisms/SegmentRenderer.d.ts +0 -38
  332. package/dist/components/core/organisms/StatCard.d.ts +0 -65
  333. package/dist/components/core/organisms/StateMachineView.d.ts +0 -45
  334. package/dist/components/core/organisms/SubagentTracePanel.d.ts +0 -50
  335. package/dist/components/core/organisms/Timeline.d.ts +0 -71
  336. package/dist/components/core/organisms/ToastSlot.d.ts +0 -41
  337. package/dist/components/core/organisms/UISlotRenderer.d.ts +0 -116
  338. package/dist/components/core/organisms/book/index.d.ts +0 -7
  339. package/dist/components/core/organisms/book/types.d.ts +0 -62
  340. package/dist/components/core/organisms/component-registry.generated.d.ts +0 -9
  341. package/dist/components/core/organisms/debug/RuntimeDebugger.d.ts +0 -29
  342. package/dist/components/core/organisms/debug/WalkMinimap.d.ts +0 -17
  343. package/dist/components/core/organisms/debug/hooks/useDebugData.d.ts +0 -25
  344. package/dist/components/core/organisms/debug/index.d.ts +0 -13
  345. package/dist/components/core/organisms/debug/tabs/EntitiesTab.d.ts +0 -14
  346. package/dist/components/core/organisms/debug/tabs/EventDispatcherTab.d.ts +0 -18
  347. package/dist/components/core/organisms/debug/tabs/EventFlowTab.d.ts +0 -14
  348. package/dist/components/core/organisms/debug/tabs/GuardsPanel.d.ts +0 -14
  349. package/dist/components/core/organisms/debug/tabs/ServerBridgeTab.d.ts +0 -20
  350. package/dist/components/core/organisms/debug/tabs/TicksTab.d.ts +0 -14
  351. package/dist/components/core/organisms/debug/tabs/TraitsTab.d.ts +0 -14
  352. package/dist/components/core/organisms/debug/tabs/TransitionTimeline.d.ts +0 -19
  353. package/dist/components/core/organisms/debug/tabs/VerificationTab.d.ts +0 -17
  354. package/dist/components/core/organisms/index.d.ts +0 -33
  355. package/dist/components/core/organisms/layout/DashboardGrid.d.ts +0 -33
  356. package/dist/components/core/organisms/layout/MasterDetailLayout.d.ts +0 -32
  357. package/dist/components/core/organisms/layout/SplitPane.d.ts +0 -34
  358. package/dist/components/core/organisms/layout/TabbedContainer.d.ts +0 -42
  359. package/dist/components/core/organisms/layout/index.d.ts +0 -9
  360. package/dist/components/core/organisms/marketing-types.d.ts +0 -8
  361. package/dist/components/core/organisms/trace-edit-focus.d.ts +0 -14
  362. package/dist/components/core/organisms/types.d.ts +0 -72
  363. package/dist/components/core/templates/CounterTemplate.d.ts +0 -51
  364. package/dist/components/core/templates/DashboardLayout.d.ts +0 -110
  365. package/dist/components/core/templates/GenericAppTemplate.d.ts +0 -24
  366. package/dist/components/core/templates/index.d.ts +0 -10
  367. package/dist/components/core/templates/types.d.ts +0 -35
  368. package/dist/components/game/atoms/ChoiceButton.d.ts +0 -29
  369. package/dist/components/game/atoms/ControlButton.d.ts +0 -35
  370. package/dist/components/game/atoms/DialogueBubble.d.ts +0 -26
  371. package/dist/components/game/atoms/DrawShape.d.ts +0 -50
  372. package/dist/components/game/atoms/DrawSprite.d.ts +0 -47
  373. package/dist/components/game/atoms/DrawText.d.ts +0 -31
  374. package/dist/components/game/atoms/GameAudioToggle.d.ts +0 -34
  375. package/dist/components/game/atoms/HealthBar.d.ts +0 -32
  376. package/dist/components/game/atoms/MiniMap.d.ts +0 -40
  377. package/dist/components/game/atoms/ScoreDisplay.d.ts +0 -25
  378. package/dist/components/game/atoms/StateIndicator.d.ts +0 -29
  379. package/dist/components/game/atoms/TimerDisplay.d.ts +0 -22
  380. package/dist/components/game/molecules/ActionPalette.d.ts +0 -34
  381. package/dist/components/game/molecules/ActionTile.d.ts +0 -30
  382. package/dist/components/game/molecules/Canvas.d.ts +0 -96
  383. package/dist/components/game/molecules/Canvas2D.d.ts +0 -120
  384. package/dist/components/game/molecules/ControlGrid.d.ts +0 -49
  385. package/dist/components/game/molecules/DrawShapeLayer.d.ts +0 -19
  386. package/dist/components/game/molecules/DrawSpriteLayer.d.ts +0 -21
  387. package/dist/components/game/molecules/DrawTextLayer.d.ts +0 -22
  388. package/dist/components/game/molecules/GameHud.d.ts +0 -52
  389. package/dist/components/game/molecules/GameMenu.d.ts +0 -42
  390. package/dist/components/game/molecules/SequenceBar.d.ts +0 -51
  391. package/dist/components/game/molecules/StatBadge.d.ts +0 -39
  392. package/dist/components/game/molecules/StateGraph.d.ts +0 -38
  393. package/dist/components/game/molecules/StateJsonView.d.ts +0 -37
  394. package/dist/components/game/molecules/StateNode.d.ts +0 -31
  395. package/dist/components/game/molecules/TraitSlot.d.ts +0 -99
  396. package/dist/components/game/molecules/TraitStateViewer.d.ts +0 -52
  397. package/dist/components/game/molecules/TransitionArrow.d.ts +0 -31
  398. package/dist/components/game/molecules/index.d.ts +0 -39
  399. package/dist/components/game/patterns.d.ts +0 -20
  400. package/dist/components/game/templates/GameShell.d.ts +0 -35
  401. package/dist/components/learning/atoms/LearningCanvas.d.ts +0 -80
  402. package/dist/components/learning/molecules/AlgorithmCanvas.d.ts +0 -58
  403. package/dist/components/learning/molecules/BiologyCanvas.d.ts +0 -47
  404. package/dist/components/learning/molecules/ChemistryCanvas.d.ts +0 -55
  405. package/dist/components/learning/molecules/MathCanvas.d.ts +0 -61
  406. package/dist/components/learning/molecules/PhysicsCanvas.d.ts +0 -54
  407. package/dist/components/marketing/atoms/AnimatedCounter.d.ts +0 -20
  408. package/dist/components/marketing/atoms/AnimatedGraphic.d.ts +0 -32
  409. package/dist/components/marketing/atoms/AnimatedReveal.d.ts +0 -26
  410. package/dist/components/marketing/atoms/ContentSection.d.ts +0 -16
  411. package/dist/components/marketing/atoms/MarketingStatCard.d.ts +0 -13
  412. package/dist/components/marketing/atoms/PatternTile.d.ts +0 -41
  413. package/dist/components/marketing/molecules/ArticleSection.d.ts +0 -18
  414. package/dist/components/marketing/molecules/CTABanner.d.ts +0 -26
  415. package/dist/components/marketing/molecules/CaseStudyCard.d.ts +0 -24
  416. package/dist/components/marketing/molecules/CommunityLinks.d.ts +0 -28
  417. package/dist/components/marketing/molecules/FeatureCard.d.ts +0 -26
  418. package/dist/components/marketing/molecules/GeometricPattern.d.ts +0 -33
  419. package/dist/components/marketing/molecules/HeroSection.d.ts +0 -28
  420. package/dist/components/marketing/molecules/InstallBox.d.ts +0 -16
  421. package/dist/components/marketing/molecules/MarketingFooter.d.ts +0 -29
  422. package/dist/components/marketing/molecules/PricingCard.d.ts +0 -19
  423. package/dist/components/marketing/molecules/PricingGrid.d.ts +0 -13
  424. package/dist/components/marketing/molecules/PullQuote.d.ts +0 -14
  425. package/dist/components/marketing/molecules/ServiceCatalog.d.ts +0 -19
  426. package/dist/components/marketing/molecules/ShowcaseCard.d.ts +0 -18
  427. package/dist/components/marketing/molecules/SplitSection.d.ts +0 -19
  428. package/dist/components/marketing/molecules/StatsGrid.d.ts +0 -18
  429. package/dist/components/marketing/molecules/StepFlow.d.ts +0 -21
  430. package/dist/components/marketing/molecules/TagCloud.d.ts +0 -18
  431. package/dist/components/marketing/molecules/TeamCard.d.ts +0 -19
  432. package/dist/components/marketing/organisms/CaseStudyOrganism.d.ts +0 -29
  433. package/dist/components/marketing/organisms/FeatureGridOrganism.d.ts +0 -30
  434. package/dist/components/marketing/organisms/HeroOrganism.d.ts +0 -42
  435. package/dist/components/marketing/organisms/PricingOrganism.d.ts +0 -33
  436. package/dist/components/marketing/organisms/ShowcaseOrganism.d.ts +0 -34
  437. package/dist/components/marketing/organisms/StatsOrganism.d.ts +0 -23
  438. package/dist/components/marketing/organisms/StepFlowOrganism.d.ts +0 -29
  439. package/dist/components/marketing/organisms/TeamOrganism.d.ts +0 -28
  440. package/dist/components/marketing/organisms/book/BookChapterView.d.ts +0 -21
  441. package/dist/components/marketing/organisms/book/BookCoverPage.d.ts +0 -21
  442. package/dist/components/marketing/organisms/book/BookNavBar.d.ts +0 -19
  443. package/dist/components/marketing/organisms/book/BookTableOfContents.d.ts +0 -20
  444. package/dist/components/marketing/organisms/book/BookViewer.d.ts +0 -31
  445. package/dist/components/marketing/templates/AboutPageTemplate.d.ts +0 -53
  446. package/dist/components/marketing/templates/AuthLayout.d.ts +0 -15
  447. package/dist/components/marketing/templates/FeatureDetailPageTemplate.d.ts +0 -37
  448. package/dist/components/marketing/templates/LandingPageTemplate.d.ts +0 -70
  449. package/dist/components/marketing/templates/PricingPageTemplate.d.ts +0 -44
  450. package/dist/hooks/useAgentChat.d.ts +0 -105
  451. package/dist/hooks/useAlmadarDndCollision.d.ts +0 -34
  452. package/dist/hooks/useAuthContext.d.ts +0 -25
  453. package/dist/hooks/useCamera.d.ts +0 -57
  454. package/dist/hooks/useCanvasGestures.d.ts +0 -44
  455. package/dist/hooks/useClientEffects.d.ts +0 -88
  456. package/dist/hooks/useCompile.d.ts +0 -18
  457. package/dist/hooks/useDeepAgentGeneration.d.ts +0 -46
  458. package/dist/hooks/useDragReorder.d.ts +0 -26
  459. package/dist/hooks/useDraggable.d.ts +0 -25
  460. package/dist/hooks/useDropZone.d.ts +0 -23
  461. package/dist/hooks/useEventBus.d.ts +0 -99
  462. package/dist/hooks/useExtensions.d.ts +0 -32
  463. package/dist/hooks/useFileEditor.d.ts +0 -32
  464. package/dist/hooks/useFileSystem.d.ts +0 -50
  465. package/dist/hooks/useGameAudio.d.ts +0 -47
  466. package/dist/hooks/useGitHub.d.ts +0 -58
  467. package/dist/hooks/useImageCache.d.ts +0 -16
  468. package/dist/hooks/useInfiniteScroll.d.ts +0 -13
  469. package/dist/hooks/useLongPress.d.ts +0 -16
  470. package/dist/hooks/useOrbitalHistory.d.ts +0 -39
  471. package/dist/hooks/usePreview.d.ts +0 -57
  472. package/dist/hooks/usePullToRefresh.d.ts +0 -25
  473. package/dist/hooks/useQuerySingleton.d.ts +0 -79
  474. package/dist/hooks/useRenderInterpolation.d.ts +0 -33
  475. package/dist/hooks/useResolvedSchema.d.ts +0 -45
  476. package/dist/hooks/useSharedEntityStore.d.ts +0 -53
  477. package/dist/hooks/useSwipeGesture.d.ts +0 -26
  478. package/dist/hooks/useTapReveal.d.ts +0 -32
  479. package/dist/hooks/useTraitStateMachine.d.ts +0 -136
  480. package/dist/hooks/useTranslate.d.ts +0 -35
  481. package/dist/hooks/useUIEvents.d.ts +0 -41
  482. package/dist/hooks/useUnitSpriteAtlas.d.ts +0 -24
  483. package/dist/hooks/useValidation.d.ts +0 -46
  484. package/dist/lib/api-client.d.ts +0 -43
  485. package/dist/lib/atlasSlice.d.ts +0 -58
  486. package/dist/lib/boardEntity.d.ts +0 -44
  487. package/dist/lib/client-effect-executor.d.ts +0 -57
  488. package/dist/lib/cn.d.ts +0 -6
  489. package/dist/lib/createClientEffectHandlers.d.ts +0 -42
  490. package/dist/lib/data-resolver.d.ts +0 -55
  491. package/dist/lib/debug.d.ts +0 -36
  492. package/dist/lib/debugRegistry.d.ts +0 -30
  493. package/dist/lib/debugUtils.d.ts +0 -27
  494. package/dist/lib/drawable/contract.d.ts +0 -68
  495. package/dist/lib/drawable/hitTest.d.ts +0 -23
  496. package/dist/lib/drawable/paintDispatch.d.ts +0 -22
  497. package/dist/lib/drawable/projector.d.ts +0 -14
  498. package/dist/lib/drawable/projector3d.d.ts +0 -20
  499. package/dist/lib/drawable/three/Camera3D.d.ts +0 -60
  500. package/dist/lib/drawable/three/Canvas3DErrorBoundary.d.ts +0 -51
  501. package/dist/lib/drawable/three/Canvas3DHost.d.ts +0 -178
  502. package/dist/lib/drawable/three/Canvas3DLoadingState.d.ts +0 -44
  503. package/dist/lib/drawable/three/Drawable3D.d.ts +0 -20
  504. package/dist/lib/drawable/three/GameCamera3D.d.ts +0 -16
  505. package/dist/lib/drawable/three/Lighting3D.d.ts +0 -55
  506. package/dist/lib/drawable/three/ModelLoader.d.ts +0 -52
  507. package/dist/lib/drawable/three/Scene3D.d.ts +0 -37
  508. package/dist/lib/drawable/three/game3dTheme.d.ts +0 -14
  509. package/dist/lib/drawable/three/hooks/useAssetLoader.d.ts +0 -58
  510. package/dist/lib/drawable/three/hooks/useGameCanvas3DEvents.d.ts +0 -124
  511. package/dist/lib/drawable/three/hooks/useRaycaster.d.ts +0 -86
  512. package/dist/lib/drawable/three/hooks/useSceneGraph.d.ts +0 -67
  513. package/dist/lib/drawable/three/hooks/useThree.d.ts +0 -58
  514. package/dist/lib/drawable/three/lib/AssetLoader.d.ts +0 -80
  515. package/dist/lib/drawable/three/lib/culling.d.ts +0 -134
  516. package/dist/lib/drawable/three/lib/grid3D.d.ts +0 -154
  517. package/dist/lib/drawable/three/mesh3d.d.ts +0 -28
  518. package/dist/lib/editorUtils.d.ts +0 -114
  519. package/dist/lib/embedded-traits.d.ts +0 -39
  520. package/dist/lib/entityDebug.d.ts +0 -39
  521. package/dist/lib/fn-form-lambda.d.ts +0 -27
  522. package/dist/lib/game.d.ts +0 -92
  523. package/dist/lib/gameShared.d.ts +0 -18
  524. package/dist/lib/getNestedValue.d.ts +0 -34
  525. package/dist/lib/guardRegistry.d.ts +0 -33
  526. package/dist/lib/iconFamily.d.ts +0 -41
  527. package/dist/lib/imageCache.d.ts +0 -9
  528. package/dist/lib/init.d.ts +0 -14
  529. package/dist/lib/isometric.d.ts +0 -121
  530. package/dist/lib/isometricTypes.d.ts +0 -141
  531. package/dist/lib/jazari/index.d.ts +0 -5
  532. package/dist/lib/jazari/layout.d.ts +0 -31
  533. package/dist/lib/jazari/svg-paths.d.ts +0 -61
  534. package/dist/lib/jazari/types.d.ts +0 -91
  535. package/dist/lib/makeAsset.d.ts +0 -5
  536. package/dist/lib/mechanics.d.ts +0 -4
  537. package/dist/lib/offline-executor.d.ts +0 -239
  538. package/dist/lib/orbitalsByTrait.d.ts +0 -34
  539. package/dist/lib/painter2d.d.ts +0 -81
  540. package/dist/lib/parseContentSegments.d.ts +0 -42
  541. package/dist/lib/pattern-resolver.d.ts +0 -88
  542. package/dist/lib/perf.d.ts +0 -32
  543. package/dist/lib/physicsPresets.d.ts +0 -4
  544. package/dist/lib/physicsTypes.d.ts +0 -43
  545. package/dist/lib/prepareSchemaForPreview.d.ts +0 -71
  546. package/dist/lib/puzzleObject.d.ts +0 -41
  547. package/dist/lib/slot-definitions.d.ts +0 -33
  548. package/dist/lib/spriteAnimation.d.ts +0 -85
  549. package/dist/lib/spriteAnimationTypes.d.ts +0 -72
  550. package/dist/lib/spriteSheetConstants.d.ts +0 -16
  551. package/dist/lib/tickRegistry.d.ts +0 -40
  552. package/dist/lib/trait-binding-resolver.d.ts +0 -57
  553. package/dist/lib/traitRegistry.d.ts +0 -34
  554. package/dist/lib/verificationRegistry.d.ts +0 -97
  555. package/dist/lib/visualizer/browser.d.ts +0 -48
  556. package/dist/lib/visualizer/index.d.ts +0 -144
  557. package/dist/lib/webPainter2d.d.ts +0 -7
  558. package/dist/lib/wrapCallbackForEvent.d.ts +0 -16
  559. package/dist/marketing/index.d.cts +0 -1067
  560. package/dist/marketing/index.d.ts +0 -72
  561. package/dist/providers/CurrentPagePathContext.d.ts +0 -9
  562. package/dist/providers/DesignThemeContext.d.ts +0 -21
  563. package/dist/providers/EntitySchemaContext.d.ts +0 -81
  564. package/dist/providers/EventBusProvider.d.ts +0 -47
  565. package/dist/providers/GameAudioProvider.d.ts +0 -53
  566. package/dist/providers/OfflineModeProvider.d.ts +0 -79
  567. package/dist/providers/OrbitalProvider.d.ts +0 -110
  568. package/dist/providers/OrbitalThemeProvider.d.ts +0 -37
  569. package/dist/providers/SelectionProvider.d.ts +0 -82
  570. package/dist/providers/ServerBridge.d.ts +0 -102
  571. package/dist/providers/ThemeContext.d.ts +0 -104
  572. package/dist/providers/TraitProvider.d.ts +0 -53
  573. package/dist/providers/TraitScopeProvider.d.ts +0 -43
  574. package/dist/providers/UserContext.d.ts +0 -112
  575. package/dist/providers/VerificationProvider.d.ts +0 -64
  576. package/dist/providers/navigation.d.ts +0 -142
  577. package/dist/runtime/BrowserPlayground.d.ts +0 -34
  578. package/dist/runtime/OrbPreview.d.ts +0 -84
  579. package/dist/scripts/audit-tailwind-safelist.d.ts +0 -27
  580. package/dist/scripts/generate-design-system.d.ts +0 -29
  581. package/dist/scripts/generate-theme-from-schema.d.ts +0 -10
  582. package/dist/scripts/generate.d.ts +0 -12
  583. package/dist/scripts/suggest-components.d.ts +0 -31
  584. package/dist/scripts/types.d.ts +0 -129
  585. package/dist/tsup.config.d.ts +0 -3
  586. package/dist/types/renderer-types.d.ts +0 -146
  587. package/dist/types/runtime-types.d.ts +0 -21
  588. package/dist/types/slot-types.d.ts +0 -49
  589. package/dist/vitest.config.d.ts +0 -2
@@ -0,0 +1,278 @@
1
+ import * as React from 'react';
2
+ import React__default, { ReactNode, ReactElement } from 'react';
3
+ import { ThemeRef, FieldValue } from '@almadar/core';
4
+
5
+ /**
6
+ * Unified ThemeContext - Single provider for theme and color mode
7
+ *
8
+ * Combines design theme selection (ocean, wireframe, etc.) with
9
+ * color mode (light/dark) into a single, simple system.
10
+ *
11
+ * Uses a single data attribute: data-theme="ocean-light" or data-theme="ocean-dark"
12
+ *
13
+ * @packageDocumentation
14
+ */
15
+
16
+ /** Color mode preference */
17
+ type ColorMode = "light" | "dark" | "system";
18
+ /** Resolved color mode (what's actually applied) */
19
+ type ResolvedMode = "light" | "dark";
20
+ /** Theme definition */
21
+ interface UIThemeDefinition {
22
+ /** Theme identifier (e.g., "ocean", "wireframe") */
23
+ name: string;
24
+ /** Display name for UI (e.g., "Ocean Blue") */
25
+ displayName?: string;
26
+ /** Whether this theme has light mode styles */
27
+ hasLightMode?: boolean;
28
+ /** Whether this theme has dark mode styles */
29
+ hasDarkMode?: boolean;
30
+ }
31
+ /** Built-in themes available in the design system */
32
+ declare const BUILT_IN_THEMES: UIThemeDefinition[];
33
+ /** Theme context value */
34
+ interface ThemeContextValue {
35
+ /** Current theme name */
36
+ theme: string;
37
+ /** Current color mode setting (may be 'system') */
38
+ mode: ColorMode;
39
+ /** Resolved color mode (always 'light' or 'dark') */
40
+ resolvedMode: ResolvedMode;
41
+ /** Set the theme */
42
+ setTheme: (theme: string) => void;
43
+ /** Set the color mode */
44
+ setMode: (mode: ColorMode) => void;
45
+ /** Toggle between light and dark modes */
46
+ toggleMode: () => void;
47
+ /** Available themes */
48
+ availableThemes: UIThemeDefinition[];
49
+ /** The full theme string applied to data-theme (e.g., "ocean-light") */
50
+ appliedTheme: string;
51
+ }
52
+ declare const ThemeContext: React__default.Context<ThemeContextValue | undefined>;
53
+ interface ThemeProviderProps {
54
+ children: React__default.ReactNode;
55
+ /** Available themes (will be merged with built-in themes) */
56
+ themes?: readonly UIThemeDefinition[] | UIThemeDefinition[];
57
+ /** Default theme name */
58
+ defaultTheme?: string;
59
+ /** Default color mode */
60
+ defaultMode?: ColorMode;
61
+ /** Optional target element ref — when provided, theme attributes are applied to this element instead of document.documentElement */
62
+ targetRef?: React__default.RefObject<HTMLElement>;
63
+ }
64
+ /**
65
+ * Unified ThemeProvider component
66
+ *
67
+ * @example
68
+ * ```tsx
69
+ * // Basic usage with built-in themes
70
+ * <ThemeProvider defaultTheme="wireframe" defaultMode="light">
71
+ * <App />
72
+ * </ThemeProvider>
73
+ *
74
+ * // With custom themes from orbital schema
75
+ * import { THEMES } from './generated/theme-manifest';
76
+ * <ThemeProvider themes={THEMES} defaultTheme="ocean" defaultMode="system">
77
+ * <App />
78
+ * </ThemeProvider>
79
+ * ```
80
+ */
81
+ declare const ThemeProvider: React__default.FC<ThemeProviderProps>;
82
+ /**
83
+ * Hook for accessing theme context
84
+ *
85
+ * @returns Theme context value
86
+ *
87
+ * @example
88
+ * ```tsx
89
+ * const { theme, resolvedMode, toggleMode, setTheme } = useTheme();
90
+ *
91
+ * // Toggle dark mode
92
+ * <button onClick={toggleMode}>
93
+ * {resolvedMode === 'dark' ? 'Light' : 'Dark'}
94
+ * </button>
95
+ *
96
+ * // Change theme
97
+ * <select value={theme} onChange={(e) => setTheme(e.target.value)}>
98
+ * {availableThemes.map(t => (
99
+ * <option key={t.name} value={t.name}>{t.displayName || t.name}</option>
100
+ * ))}
101
+ * </select>
102
+ * ```
103
+ */
104
+ declare function useTheme(): ThemeContextValue;
105
+ type DesignTheme = UIThemeDefinition;
106
+
107
+ /**
108
+ * OrbitalThemeProvider — runtime application of `OrbitalDefinition.theme`.
109
+ *
110
+ * Wraps an orbital's rendered subtree in a wrapping `<div>` that sets the
111
+ * CSS variables derived from `theme.tokens` (and `variants.dark` when the
112
+ * resolved color mode is dark). Inline custom-property declarations on the
113
+ * wrapper override any `[data-theme]` selector rule for the same variable
114
+ * within the subtree, while letting unset variables cascade from the parent.
115
+ *
116
+ * Mapping is delegated to `themeTokensToCssVars`, which mirrors the Rust
117
+ * compiler's `generate_tokens_css`. Compile-time and runtime produce the
118
+ * same CSS variable map for the same `ThemeDefinition` input, so a Studio
119
+ * Design System edit and an `orbital compile` of the same schema render
120
+ * identically.
121
+ *
122
+ * No-op when:
123
+ * - `theme` is `undefined` (orbital declares no theme — parent cascades)
124
+ * - `theme` is a string ref that didn't get inlined upstream
125
+ *
126
+ * @example
127
+ * ```tsx
128
+ * <OrbitalThemeProvider theme={orbital.theme}>
129
+ * <UISlotRenderer />
130
+ * </OrbitalThemeProvider>
131
+ * ```
132
+ */
133
+
134
+ interface OrbitalThemeProviderProps {
135
+ /** The `OrbitalDefinition.theme` value (inline definition or string ref). */
136
+ theme?: ThemeRef;
137
+ children: ReactNode;
138
+ }
139
+ declare function OrbitalThemeProvider({ theme, children }: OrbitalThemeProviderProps): ReactElement;
140
+ declare namespace OrbitalThemeProvider {
141
+ var displayName: string;
142
+ }
143
+
144
+ /**
145
+ * @deprecated Use ThemeProvider from ThemeContext instead
146
+ */
147
+ declare const DesignThemeProvider: React.FC<ThemeProviderProps>;
148
+ /**
149
+ * @deprecated Use useTheme from ThemeContext instead
150
+ *
151
+ * This wrapper provides backward compatibility with the old API.
152
+ */
153
+ declare function useDesignTheme(): {
154
+ designTheme: string;
155
+ setDesignTheme: (theme: string) => void;
156
+ availableThemes: string[];
157
+ };
158
+
159
+ declare const CurrentPagePathContext: React__default.Context<string | undefined>;
160
+ interface CurrentPagePathProviderProps {
161
+ value: string | undefined;
162
+ children: React__default.ReactNode;
163
+ }
164
+ declare const CurrentPagePathProvider: React__default.FC<CurrentPagePathProviderProps>;
165
+ declare const useCurrentPagePath: () => string | undefined;
166
+
167
+ /**
168
+ * UserContext
169
+ *
170
+ * React context for providing user data throughout the application.
171
+ * Enables @user bindings in S-expressions for role-based UI and permissions.
172
+ *
173
+ * Usage:
174
+ * ```tsx
175
+ * // In App.tsx or layout
176
+ * <UserProvider user={{ id: '123', role: 'admin', permissions: ['read', 'write'] }}>
177
+ * <App />
178
+ * </UserProvider>
179
+ *
180
+ * // In components - access via hook
181
+ * const { user, hasRole, hasPermission } = useUser();
182
+ * if (hasRole('admin')) { ... }
183
+ * if (hasPermission('delete')) { ... }
184
+ * ```
185
+ *
186
+ * @packageDocumentation
187
+ */
188
+
189
+ /**
190
+ * User data for @user bindings.
191
+ * Matches UserContext type from evaluator/context.ts
192
+ */
193
+ interface UserData {
194
+ /** User's unique ID */
195
+ id: string;
196
+ /** User's email */
197
+ email?: string;
198
+ /** User's display name */
199
+ name?: string;
200
+ /** User's role (for RBAC) */
201
+ role?: string;
202
+ /** User's permissions */
203
+ permissions?: string[];
204
+ /** Additional custom profile fields */
205
+ [key: string]: FieldValue | undefined;
206
+ }
207
+ /**
208
+ * User context value.
209
+ */
210
+ interface UserContextValue {
211
+ /** Current user data (null if not logged in) */
212
+ user: UserData | null;
213
+ /** Check if user is logged in */
214
+ isLoggedIn: boolean;
215
+ /** Check if user has a specific role */
216
+ hasRole: (role: string) => boolean;
217
+ /** Check if user has a specific permission */
218
+ hasPermission: (permission: string) => boolean;
219
+ /** Check if user has any of the specified roles */
220
+ hasAnyRole: (roles: string[]) => boolean;
221
+ /** Check if user has all of the specified permissions */
222
+ hasAllPermissions: (permissions: string[]) => boolean;
223
+ /** Get a user field by path (for @user.field bindings) */
224
+ getUserField: (path: string) => FieldValue | undefined;
225
+ }
226
+ /**
227
+ * Anonymous user for when no user is logged in.
228
+ */
229
+ declare const ANONYMOUS_USER: UserData;
230
+ declare const UserContext: React__default.Context<UserContextValue | null>;
231
+ interface UserProviderProps {
232
+ /** User data (null if not logged in) */
233
+ user?: UserData | null;
234
+ /** Children to render */
235
+ children: React__default.ReactNode;
236
+ }
237
+ /**
238
+ * Provider component that provides user context to the application.
239
+ *
240
+ * Provides RBAC helpers and field access for @user bindings.
241
+ */
242
+ declare function UserProvider({ user, children, }: UserProviderProps): React__default.ReactElement;
243
+ /**
244
+ * Hook to access the user context.
245
+ *
246
+ * Returns default values if used outside of UserProvider (for resilience).
247
+ *
248
+ * @example
249
+ * ```tsx
250
+ * function AdminPanel() {
251
+ * const { user, hasRole, hasPermission } = useUser();
252
+ *
253
+ * if (!hasRole('admin') && !hasPermission('admin:access')) {
254
+ * return <AccessDenied />;
255
+ * }
256
+ *
257
+ * return <div>Welcome, {user?.name}</div>;
258
+ * }
259
+ * ```
260
+ */
261
+ declare function useUser(): UserContextValue;
262
+ /**
263
+ * Hook to check if user has a specific role.
264
+ * Convenience wrapper around useUser().hasRole().
265
+ */
266
+ declare function useHasRole(role: string): boolean;
267
+ /**
268
+ * Hook to check if user has a specific permission.
269
+ * Convenience wrapper around useUser().hasPermission().
270
+ */
271
+ declare function useHasPermission(permission: string): boolean;
272
+ /**
273
+ * Hook to get user data for @user bindings in S-expressions.
274
+ * Returns the user data object compatible with EvaluationContext.user
275
+ */
276
+ declare function useUserForEvaluation(): UserData | undefined;
277
+
278
+ export { ANONYMOUS_USER as A, BUILT_IN_THEMES as B, type ColorMode as C, type DesignTheme as D, OrbitalThemeProvider as O, type ResolvedMode as R, ThemeContext as T, type UIThemeDefinition as U, CurrentPagePathContext as a, CurrentPagePathProvider as b, type CurrentPagePathProviderProps as c, DesignThemeProvider as d, type OrbitalThemeProviderProps as e, ThemeProvider as f, type ThemeProviderProps as g, UserContext as h, type UserContextValue as i, type UserData as j, UserProvider as k, type UserProviderProps as l, useDesignTheme as m, useHasPermission as n, useHasRole as o, useTheme as p, useUser as q, useUserForEvaluation as r, useCurrentPagePath as u };
@@ -39,7 +39,7 @@ var core = require('@almadar/core');
39
39
  var core$1 = require('@dnd-kit/core');
40
40
  var sortable = require('@dnd-kit/sortable');
41
41
  var utilities = require('@dnd-kit/utilities');
42
- var patterns = require('@almadar/patterns');
42
+ var patterns = require('@almadar/core/patterns');
43
43
  var OrbitalServerRuntime = require('@almadar/runtime/OrbitalServerRuntime');
44
44
  var runtime = require('@almadar/runtime');
45
45
 
@@ -12574,8 +12574,12 @@ var init_MiniMap = __esm({
12574
12574
  MiniMap.displayName = "MiniMap";
12575
12575
  }
12576
12576
  });
12577
- function useCamera() {
12578
- const cameraRef = React90.useRef({ x: 0, y: 0, zoom: 1 });
12577
+ function useCamera(initial) {
12578
+ const cameraRef = React90.useRef({
12579
+ x: initial?.x ?? 0,
12580
+ y: initial?.y ?? 0,
12581
+ zoom: initial?.zoom ?? 1
12582
+ });
12579
12583
  const targetCameraRef = React90.useRef(null);
12580
12584
  const isDraggingRef = React90.useRef(false);
12581
12585
  const dragDistanceRef = React90.useRef(0);
@@ -13251,8 +13255,18 @@ function Canvas2D({
13251
13255
  scale = 0.4,
13252
13256
  showMinimap = true,
13253
13257
  followTarget,
13258
+ cameraPos,
13254
13259
  bgColor
13255
13260
  }) {
13261
+ const instanceId = React90.useMemo(() => Math.random().toString(36).slice(2, 8), []);
13262
+ function isDrawableLayer(node) {
13263
+ return node.type === "draw-sprite-layer" || node.type === "draw-shape-layer" || node.type === "draw-text-layer";
13264
+ }
13265
+ const layerSummaries = drawables?.map((d) => {
13266
+ if (!isDrawableLayer(d)) return { type: d.type };
13267
+ return { type: d.type, itemsLen: d.items.length, firstItem: d.items[0] };
13268
+ });
13269
+ canvas2DLog.debug("Canvas2D render", { instanceId, projection, scale, cameraMode: camera, cameraPos: cameraPos ? JSON.stringify(cameraPos) : void 0, drawablesCount: drawables?.length, layerSummaries: layerSummaries ? JSON.stringify(layerSummaries) : void 0 });
13256
13270
  const backgroundImage = normalizeBackdrop(backgroundImageRaw);
13257
13271
  const isFree = projection === "free";
13258
13272
  const squareGrid = projection === "flat" || isFree || projection === "side";
@@ -13335,7 +13349,7 @@ function Canvas2D({
13335
13349
  zoomAtPoint,
13336
13350
  screenToWorld,
13337
13351
  lerpToTarget
13338
- } = useCamera();
13352
+ } = useCamera({ zoom: scale });
13339
13353
  const [atlasVersion, setAtlasVersion] = React90.useState(0);
13340
13354
  const bumpAtlas = React90.useCallback(() => setAtlasVersion((v) => v + 1), []);
13341
13355
  const miniMapTiles = React90.useMemo(() => {
@@ -13381,6 +13395,14 @@ function Canvas2D({
13381
13395
  }
13382
13396
  if (!drawables || drawables.length === 0) return;
13383
13397
  const cam = cameraRef.current;
13398
+ if (cameraPos && dragDistance() === 0) {
13399
+ const p = projector.anchorPoint(cameraPos, "center");
13400
+ cam.x = p.x - viewportSize.width / 2;
13401
+ cam.y = p.y - viewportSize.height / 2;
13402
+ }
13403
+ const containerRect = containerRef.current?.getBoundingClientRect();
13404
+ const canvasRect = canvas.getBoundingClientRect();
13405
+ canvas2DLog.debug("Canvas2D draw", { instanceId, viewportSize, baseOffsetX, cam: { x: cam.x, y: cam.y, zoom: cam.zoom }, cameraPos: cameraPos ? JSON.stringify(cameraPos) : void 0, containerRect: containerRect ? { width: containerRect.width, height: containerRect.height } : null, canvasRect: canvasRect ? { width: canvasRect.width, height: canvasRect.height } : null });
13384
13406
  const painter = createWebPainter(ctx, bumpAtlas);
13385
13407
  painter.save();
13386
13408
  painter.translate(viewportSize.width / 2, viewportSize.height / 2);
@@ -13592,6 +13614,7 @@ function Canvas2D({
13592
13614
  }
13593
13615
  );
13594
13616
  }
13617
+ var canvas2DLog;
13595
13618
  var init_Canvas2D = __esm({
13596
13619
  "components/game/molecules/Canvas2D.tsx"() {
13597
13620
  "use client";
@@ -13613,6 +13636,7 @@ var init_Canvas2D = __esm({
13613
13636
  init_paintDispatch();
13614
13637
  init_hitTest();
13615
13638
  init_isometric();
13639
+ canvas2DLog = logger.createLogger("almadar:ui:game-canvas");
13616
13640
  Canvas2D.displayName = "Canvas2D";
13617
13641
  }
13618
13642
  });
@@ -13651,6 +13675,7 @@ function Canvas({
13651
13675
  keyMap,
13652
13676
  keyUpMap
13653
13677
  }) {
13678
+ canvasLog.debug("Canvas render", { mode, drawablesCount: drawables?.length, projection, camera: camera ? JSON.stringify(camera) : void 0 });
13654
13679
  const zoom = camera?.zoom;
13655
13680
  if (mode === "3d") {
13656
13681
  const props3d = {
@@ -13690,6 +13715,7 @@ function Canvas({
13690
13715
  camera: to2DCamera(camera?.mode),
13691
13716
  ...zoom !== void 0 ? { scale: zoom } : {},
13692
13717
  ...camera?.target !== void 0 ? { followTarget: camera.target } : {},
13718
+ ...camera?.pos !== void 0 ? { cameraPos: camera.pos } : {},
13693
13719
  showMinimap,
13694
13720
  backgroundImage,
13695
13721
  ...backgroundColor !== void 0 ? { bgColor: backgroundColor } : {},
@@ -13702,7 +13728,7 @@ function Canvas({
13702
13728
  }
13703
13729
  );
13704
13730
  }
13705
- var Canvas3DHost;
13731
+ var Canvas3DHost, canvasLog;
13706
13732
  var init_Canvas = __esm({
13707
13733
  "components/game/molecules/Canvas.tsx"() {
13708
13734
  "use client";
@@ -13710,6 +13736,7 @@ var init_Canvas = __esm({
13710
13736
  Canvas3DHost = React90.lazy(
13711
13737
  () => import('@almadar/ui/components/molecules/game/three').then((m) => ({ default: m.Canvas3DHost }))
13712
13738
  );
13739
+ canvasLog = logger.createLogger("almadar:ui:game-canvas");
13713
13740
  Canvas.displayName = "Canvas";
13714
13741
  }
13715
13742
  });
@@ -46201,7 +46228,7 @@ function SlotContentRenderer({
46201
46228
  const childrenConfig = content.props.children;
46202
46229
  const isSingleChild = typeof childrenConfig === "string" || typeof childrenConfig === "object" && childrenConfig !== null && !Array.isArray(childrenConfig) && "type" in childrenConfig;
46203
46230
  const hasChildren = PATTERNS_WITH_CHILDREN.has(content.pattern) || Array.isArray(childrenConfig) && childrenConfig.length > 0 || isSingleChild;
46204
- const isDrawHost = patterns.getPatternDefinition(content.pattern)?.drawHost === true;
46231
+ const isDrawHost = patterns.isDrawHostPattern(content.pattern);
46205
46232
  const myPath = patternPath ?? "root";
46206
46233
  const renderedChildren = hasChildren && !isDrawHost ? renderPatternChildren(childrenConfig, onDismiss, content.id, myPath, content.sourceTrait, {
46207
46234
  slot: content.slot,
@@ -50172,6 +50199,8 @@ var flushLog = logger.createLogger("almadar:ui:slot-flush");
50172
50199
  var stateLog = logger.createLogger("almadar:ui:state-transitions");
50173
50200
  var tickLog = logger.createLogger("almadar:ui:tick-effects");
50174
50201
  logger.setNamespaceLevel("almadar:ui:tick-effects", "WARN");
50202
+ var sharedEntityLog = logger.createLogger("almadar:ui:shared-entity");
50203
+ logger.setNamespaceLevel("almadar:ui:shared-entity", "WARN");
50175
50204
  var SYNC_TICK_OPERATORS = /* @__PURE__ */ new Set([
50176
50205
  "set",
50177
50206
  "emit",
@@ -50224,6 +50253,14 @@ function effectsCallOp(effects, ops) {
50224
50253
  }
50225
50254
  return false;
50226
50255
  }
50256
+ function classifySharedTick(tick) {
50257
+ const writes = effectsCallOp(tick.effects, SHARED_ENTITY_WRITE_OPS);
50258
+ const renders = effectsCallOp(tick.effects, SHARED_ENTITY_RENDER_OPS);
50259
+ if (writes && renders) return "both";
50260
+ if (writes) return "writer";
50261
+ if (renders) return "renderer";
50262
+ return "neither";
50263
+ }
50227
50264
  function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
50228
50265
  return (scratch) => {
50229
50266
  const traitName = binding.trait.name;
@@ -50233,7 +50270,7 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
50233
50270
  const writes = [];
50234
50271
  const ctx = evaluator.createMinimalContext(scratchEntity, {}, currentState);
50235
50272
  const declaredDefaults = runtime.collectDeclaredConfigDefaults(binding.trait);
50236
- const callSiteConfig = binding.config;
50273
+ const callSiteConfig = getBindingConfig(binding);
50237
50274
  if (declaredDefaults || callSiteConfig) {
50238
50275
  ctx.config = { ...declaredDefaults ?? {}, ...callSiteConfig ?? {} };
50239
50276
  }
@@ -50255,7 +50292,25 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
50255
50292
  return writes;
50256
50293
  };
50257
50294
  }
50295
+ function getBindingConfig(binding) {
50296
+ const raw = binding.config;
50297
+ const normalized = runtime.normalizeCallSiteConfigToValues(raw);
50298
+ sharedEntityLog.debug("getBindingConfig", { traitName: binding.trait.name, rawKeys: raw ? Object.keys(raw) : void 0, hasTiles: raw ? "tiles" in raw : false });
50299
+ return normalized;
50300
+ }
50301
+ function evalFieldDefault(value) {
50302
+ if (!Array.isArray(value) || value.length === 0) return value;
50303
+ const head = value[0];
50304
+ const isSExpr = typeof head === "string" && (head.includes("/") || head === "let" || head === "if" || head === "lambda");
50305
+ if (!isSExpr) return value;
50306
+ try {
50307
+ return evaluator.evaluate(value, evaluator.createMinimalContext({}, {}, ""));
50308
+ } catch {
50309
+ return value;
50310
+ }
50311
+ }
50258
50312
  function useTraitStateMachine(traitBindings, uiSlots, options) {
50313
+ sharedEntityLog.debug("useTraitStateMachine start", { traitBindingsCount: traitBindings.length, traitNames: traitBindings.map((b) => b.trait.name) });
50259
50314
  const eventBus = useEventBus();
50260
50315
  const { entities } = providers.useEntitySchema();
50261
50316
  const traitConfigsByName = options?.traitConfigsByName;
@@ -50274,8 +50329,17 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50274
50329
  if (!group) {
50275
50330
  let defaults;
50276
50331
  for (const field of entityDef.fields) {
50277
- if (field.default !== void 0) {
50278
- (defaults ?? (defaults = {}))[field.name] = field.default;
50332
+ if (field.default !== void 0 && field.default !== null) {
50333
+ const evaluated = evalFieldDefault(field.default);
50334
+ if (field.name === "tiles") {
50335
+ sharedEntityLog.debug("seed tiles", {
50336
+ linkedEntityName,
50337
+ type: typeof evaluated,
50338
+ length: Array.isArray(evaluated) ? evaluated?.length : void 0,
50339
+ head: Array.isArray(evaluated) && evaluated.length > 0 ? JSON.stringify(evaluated[0]).slice(0, 80) : void 0
50340
+ });
50341
+ }
50342
+ (defaults ?? (defaults = {}))[field.name] = evaluated;
50279
50343
  }
50280
50344
  }
50281
50345
  group = { storeKey, entityName: linkedEntityName, writerBindings: [], renderBindings: [], defaults };
@@ -50288,7 +50352,15 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50288
50352
  return groups;
50289
50353
  }, [traitBindings, entities, orbitalsByTrait]);
50290
50354
  for (const group of sharedGroups.values()) {
50291
- if (group.defaults) sharedEntityStore.seed(group.storeKey, group.defaults);
50355
+ if (group.defaults) {
50356
+ sharedEntityStore.seed(group.storeKey, group.defaults);
50357
+ sharedEntityLog.debug("shared-seed", {
50358
+ storeKey: group.storeKey,
50359
+ writers: group.writerBindings.map((b) => b.trait.name),
50360
+ renderers: group.renderBindings.map((b) => b.trait.name),
50361
+ tilesLength: Array.isArray(group.defaults.tiles) ? group.defaults.tiles.length : group.defaults.tiles
50362
+ });
50363
+ }
50292
50364
  }
50293
50365
  const sharedKeyByTraitNameRef = React90.useRef(/* @__PURE__ */ new Map());
50294
50366
  React90.useEffect(() => {
@@ -50298,12 +50370,13 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50298
50370
  for (const binding of group.renderBindings) map.set(binding.trait.name, group.storeKey);
50299
50371
  }
50300
50372
  sharedKeyByTraitNameRef.current = map;
50373
+ sharedEntityLog.debug("shared-map", { map: Array.from(map.entries()).map(([k, v]) => `${k}->${v}`) });
50301
50374
  }, [sharedGroups]);
50302
50375
  const manager = React90.useMemo(() => {
50303
50376
  const traitDefs = traitBindings.map(toTraitDefinition);
50304
50377
  const m = new runtime.StateMachineManager(traitDefs);
50305
50378
  for (const binding of traitBindings) {
50306
- const cfg = binding.config ?? traitConfigsByName?.[binding.trait.name];
50379
+ const cfg = getBindingConfig(binding) ?? traitConfigsByName?.[binding.trait.name];
50307
50380
  if (cfg !== void 0) {
50308
50381
  m.setTraitConfig(binding.trait.name, cfg);
50309
50382
  }
@@ -50486,6 +50559,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50486
50559
  const linkedEntity = binding.linkedEntity || "";
50487
50560
  const entityId = payload?.entityId;
50488
50561
  const sharedKey = sharedKeyByTraitNameRef.current.get(traitName);
50562
+ if (traitName === "Hero" || traitName === "Authority") {
50563
+ sharedEntityLog.debug("executeTransitionEffects sharedKey", { traitName, sharedKey, storeTilesLength: sharedKey ? sharedEntityStore.getSnapshot(sharedKey).tiles?.length : void 0 });
50564
+ }
50489
50565
  let liveEntity;
50490
50566
  if (sharedKey !== void 0) {
50491
50567
  liveEntity = { ...sharedEntityStore.getSnapshot(sharedKey) };
@@ -50509,6 +50585,18 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50509
50585
  eventBus,
50510
50586
  slotSetter: {
50511
50587
  addPattern: (slot, pattern, props) => {
50588
+ if (traitName === "Hero" && slot === "main" && props && typeof props === "object") {
50589
+ const canvasChild = Array.isArray(props.children) ? props.children[0] : null;
50590
+ const grandChildren = canvasChild && typeof canvasChild === "object" && !Array.isArray(canvasChild) ? canvasChild.children : null;
50591
+ const firstLayer = Array.isArray(grandChildren) && grandChildren.length > 0 ? grandChildren[0] : null;
50592
+ const firstLayerItems = firstLayer && typeof firstLayer === "object" && !Array.isArray(firstLayer) ? firstLayer.items : null;
50593
+ sharedEntityLog.debug("render-ui main slot", {
50594
+ traitName,
50595
+ slot,
50596
+ canvasChildType: canvasChild && typeof canvasChild === "object" && !Array.isArray(canvasChild) ? canvasChild.type : "none",
50597
+ firstLayerItemsLength: Array.isArray(firstLayerItems) ? firstLayerItems.length : firstLayerItems
50598
+ });
50599
+ }
50512
50600
  const existing = pendingSlots.get(slot) || [];
50513
50601
  existing.push({ pattern, props: props || {} });
50514
50602
  pendingSlots.set(slot, existing);
@@ -50540,7 +50628,7 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50540
50628
  state: previousState
50541
50629
  };
50542
50630
  const sharedDeclared = runtime.collectDeclaredConfigDefaults(binding.trait);
50543
- const sharedCallSite = binding.config;
50631
+ const sharedCallSite = getBindingConfig(binding);
50544
50632
  if (sharedDeclared || sharedCallSite) {
50545
50633
  sharedBindings.config = {
50546
50634
  ...sharedDeclared ?? {},
@@ -50591,13 +50679,21 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50591
50679
  state: previousState
50592
50680
  };
50593
50681
  const declaredDefaults = runtime.collectDeclaredConfigDefaults(binding.trait);
50594
- const callSiteConfig = binding.config;
50682
+ const callSiteConfig = getBindingConfig(binding);
50595
50683
  if (declaredDefaults || callSiteConfig) {
50596
50684
  bindingCtx.config = {
50597
50685
  ...declaredDefaults ?? {},
50598
50686
  ...callSiteConfig ?? {}
50599
50687
  };
50600
50688
  }
50689
+ if (traitName === "Authority" || traitName === "Hero") {
50690
+ sharedEntityLog.debug("executeTransitionEffects config tiles", {
50691
+ traitName,
50692
+ tilesType: typeof bindingCtx.config?.tiles,
50693
+ tilesLength: Array.isArray(bindingCtx.config?.tiles) ? bindingCtx.config?.tiles?.length : void 0,
50694
+ configKeys: bindingCtx.config ? Object.keys(bindingCtx.config) : void 0
50695
+ });
50696
+ }
50601
50697
  const effectContext = {
50602
50698
  traitName,
50603
50699
  state: previousState,
@@ -50614,9 +50710,25 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50614
50710
  baseEmit(event, eventPayload, source);
50615
50711
  }
50616
50712
  };
50713
+ if (traitName === "Hero") {
50714
+ sharedEntityLog.debug("executeTransitionEffects effects summary", {
50715
+ traitName,
50716
+ effectsCount: effects.length,
50717
+ hasRenderUI: typeof handlers.renderUI === "function",
50718
+ effectHeads: effects.map((e) => Array.isArray(e) ? String(e[0]) : "??")
50719
+ });
50720
+ }
50617
50721
  const executor = new runtime.EffectExecutor({ handlers: trackingHandlers, bindings: bindingCtx, context: effectContext });
50618
50722
  try {
50619
50723
  await executor.executeAll(effects);
50724
+ if (traitName === "Authority" || traitName === "Hero") {
50725
+ sharedEntityLog.debug("executeTransitionEffects after executeAll", {
50726
+ traitName,
50727
+ tilesType: typeof liveEntity.tiles,
50728
+ tilesLength: Array.isArray(liveEntity.tiles) ? liveEntity.tiles?.length : void 0,
50729
+ firstTilePos: Array.isArray(liveEntity.tiles) && liveEntity.tiles.length > 0 ? JSON.stringify(liveEntity.tiles[0]).slice(0, 120) : void 0
50730
+ });
50731
+ }
50620
50732
  if (sharedKey !== void 0) {
50621
50733
  sharedEntityStore.commit(sharedKey, liveEntity);
50622
50734
  }
@@ -50667,8 +50779,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50667
50779
  payload: {},
50668
50780
  state: currentState
50669
50781
  };
50670
- if (binding.config) {
50671
- guardCtx.config = binding.config;
50782
+ const bindingCfg = getBindingConfig(binding);
50783
+ if (bindingCfg) {
50784
+ guardCtx.config = bindingCfg;
50672
50785
  }
50673
50786
  const passed = evaluator.evaluateGuard(
50674
50787
  tick.guard,
@@ -50695,12 +50808,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50695
50808
  }, [eventBus]);
50696
50809
  React90.useEffect(() => {
50697
50810
  const scheduler = runtime.createTickScheduler();
50698
- const writerTraitNames = /* @__PURE__ */ new Set();
50811
+ const pureWriterTickKeys = /* @__PURE__ */ new Set();
50699
50812
  for (const group of sharedGroups.values()) {
50700
50813
  const ticksByInterval = /* @__PURE__ */ new Map();
50701
50814
  for (const binding of group.writerBindings) {
50702
- writerTraitNames.add(binding.trait.name);
50703
50815
  for (const tick of binding.trait.ticks ?? []) {
50816
+ const classification = classifySharedTick(tick);
50817
+ if (classification !== "writer") continue;
50818
+ pureWriterTickKeys.add(`${binding.trait.name}::${tick.name}`);
50704
50819
  const intervalKey = String(tick.interval);
50705
50820
  const entries = ticksByInterval.get(intervalKey) ?? [];
50706
50821
  entries.push({ binding, tick });
@@ -50727,8 +50842,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
50727
50842
  }
50728
50843
  }
50729
50844
  for (const binding of traitBindings) {
50730
- if (writerTraitNames.has(binding.trait.name)) continue;
50731
50845
  for (const tick of binding.trait.ticks ?? []) {
50846
+ const sharedKey = sharedKeyByTraitNameRef.current.get(binding.trait.name);
50847
+ if (sharedKey !== void 0 && pureWriterTickKeys.has(`${binding.trait.name}::${tick.name}`)) {
50848
+ continue;
50849
+ }
50732
50850
  if (tick.interval === "frame") {
50733
50851
  scheduler.add(0, () => runTickEffects(tick, binding));
50734
50852
  } else if (typeof tick.interval === "number") {
@@ -51357,6 +51475,7 @@ function TraitInitializer({ traits: traits2, orbitalNames, onNavigate, onLocalFa
51357
51475
  hadPrev: prevTraitsRef.current !== void 0
51358
51476
  }));
51359
51477
  if (refChanged) {
51478
+ navLog.info("page:traits-reset", { traitsCount: Array.isArray(traits2) ? traits2.length : -1 });
51360
51479
  uiSlots.clearAll();
51361
51480
  initSentRef.current = false;
51362
51481
  }