@almadar/ui 5.111.0 → 5.112.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 (587) 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 +97 -16
  10. package/dist/avl/index.js +99 -18
  11. package/dist/avl-schema-parser-DKRm-nyh.d.cts +611 -0
  12. package/dist/avl-schema-parser-DKRm-nyh.d.ts +611 -0
  13. package/dist/cn-BbPvQLHt.d.cts +294 -0
  14. package/dist/cn-BbPvQLHt.d.ts +294 -0
  15. package/dist/components/index.cjs +27 -5
  16. package/dist/components/index.d.cts +11224 -0
  17. package/dist/components/index.d.ts +11224 -6
  18. package/dist/components/index.js +27 -5
  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 +1484 -0
  27. package/dist/lib/drawable/three/index.d.ts +1483 -38
  28. package/dist/lib/drawable/three/index.js +11 -24
  29. package/dist/lib/index.d.cts +504 -0
  30. package/dist/lib/index.d.ts +503 -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/providers/index.cjs +27 -5
  36. package/dist/providers/index.d.cts +428 -0
  37. package/dist/providers/index.d.ts +427 -26
  38. package/dist/providers/index.js +27 -5
  39. package/dist/renderer/index.cjs +1 -1
  40. package/dist/renderer/index.d.cts +343 -0
  41. package/dist/renderer/index.d.ts +337 -22
  42. package/dist/renderer/index.js +1 -1
  43. package/dist/runtime/index.cjs +97 -16
  44. package/dist/runtime/index.d.cts +426 -0
  45. package/dist/runtime/index.d.ts +421 -16
  46. package/dist/runtime/index.js +99 -18
  47. package/dist/useEventBus-CQWyAWpK.d.ts +65 -0
  48. package/dist/useEventBus-Ckr4wqW3.d.cts +65 -0
  49. package/dist/{hooks/useUISlots.d.ts → useUISlots-BesZYMks.d.cts} +16 -14
  50. package/dist/useUISlots-BesZYMks.d.ts +216 -0
  51. package/package.json +11 -11
  52. package/dist/avl/index.d.cts +0 -1853
  53. package/dist/avl/index.d.ts +0 -64
  54. package/dist/components/avl/atoms/Avl3DLabel.d.ts +0 -23
  55. package/dist/components/avl/atoms/Avl3DTooltip.d.ts +0 -25
  56. package/dist/components/avl/atoms/AvlApplication.d.ts +0 -8
  57. package/dist/components/avl/atoms/AvlBinding.d.ts +0 -12
  58. package/dist/components/avl/atoms/AvlBindingRef.d.ts +0 -7
  59. package/dist/components/avl/atoms/AvlEffect.d.ts +0 -10
  60. package/dist/components/avl/atoms/AvlEntity.d.ts +0 -9
  61. package/dist/components/avl/atoms/AvlEvent.d.ts +0 -7
  62. package/dist/components/avl/atoms/AvlField.d.ts +0 -10
  63. package/dist/components/avl/atoms/AvlFieldType.d.ts +0 -8
  64. package/dist/components/avl/atoms/AvlGuard.d.ts +0 -7
  65. package/dist/components/avl/atoms/AvlLiteral.d.ts +0 -7
  66. package/dist/components/avl/atoms/AvlOperator.d.ts +0 -8
  67. package/dist/components/avl/atoms/AvlOrbital.d.ts +0 -11
  68. package/dist/components/avl/atoms/AvlPage.d.ts +0 -7
  69. package/dist/components/avl/atoms/AvlPersistence.d.ts +0 -8
  70. package/dist/components/avl/atoms/AvlSExpr.d.ts +0 -8
  71. package/dist/components/avl/atoms/AvlState.d.ts +0 -15
  72. package/dist/components/avl/atoms/AvlTrait.d.ts +0 -13
  73. package/dist/components/avl/atoms/AvlTransition.d.ts +0 -18
  74. package/dist/components/avl/atoms/index.d.ts +0 -24
  75. package/dist/components/avl/hooks/useCanvasDnd.d.ts +0 -155
  76. package/dist/components/avl/lib/avl-3d-layout.d.ts +0 -116
  77. package/dist/components/avl/lib/avl-behavior-compose-converter.d.ts +0 -55
  78. package/dist/components/avl/lib/avl-elk-layout.d.ts +0 -55
  79. package/dist/components/avl/lib/avl-flow-converter.d.ts +0 -17
  80. package/dist/components/avl/lib/avl-layout.d.ts +0 -32
  81. package/dist/components/avl/lib/avl-preview-converter.d.ts +0 -71
  82. package/dist/components/avl/lib/avl-schema-parser.d.ts +0 -128
  83. package/dist/components/avl/lib/avl-story-schemas.d.ts +0 -34
  84. package/dist/components/avl/lib/avl-zoom-band.d.ts +0 -19
  85. package/dist/components/avl/lib/avl-zoom-state.d.ts +0 -72
  86. package/dist/components/avl/lib/derive-edit-focus.d.ts +0 -8
  87. package/dist/components/avl/lib/wire-validation.d.ts +0 -30
  88. package/dist/components/avl/molecules/Avl3DCrossWire.d.ts +0 -22
  89. package/dist/components/avl/molecules/Avl3DEntityCore.d.ts +0 -26
  90. package/dist/components/avl/molecules/Avl3DExprTree.d.ts +0 -21
  91. package/dist/components/avl/molecules/Avl3DOrbitalNode.d.ts +0 -29
  92. package/dist/components/avl/molecules/Avl3DStateNode.d.ts +0 -34
  93. package/dist/components/avl/molecules/Avl3DTransitionArc.d.ts +0 -38
  94. package/dist/components/avl/molecules/AvlBackwardEdge.d.ts +0 -8
  95. package/dist/components/avl/molecules/AvlBehaviorGlyph.d.ts +0 -61
  96. package/dist/components/avl/molecules/AvlBindingEdge.d.ts +0 -9
  97. package/dist/components/avl/molecules/AvlClosedCircuit.d.ts +0 -20
  98. package/dist/components/avl/molecules/AvlEmitListen.d.ts +0 -16
  99. package/dist/components/avl/molecules/AvlEventWireEdge.d.ts +0 -15
  100. package/dist/components/avl/molecules/AvlExprTree.d.ts +0 -13
  101. package/dist/components/avl/molecules/AvlOrbitalNode.d.ts +0 -12
  102. package/dist/components/avl/molecules/AvlOrbitalUnit.d.ts +0 -20
  103. package/dist/components/avl/molecules/AvlPageEdge.d.ts +0 -8
  104. package/dist/components/avl/molecules/AvlSlotMap.d.ts +0 -18
  105. package/dist/components/avl/molecules/AvlStateMachine.d.ts +0 -22
  106. package/dist/components/avl/molecules/AvlSwimLane.d.ts +0 -10
  107. package/dist/components/avl/molecules/AvlTransitionEdge.d.ts +0 -17
  108. package/dist/components/avl/molecules/AvlTransitionLane.d.ts +0 -18
  109. package/dist/components/avl/molecules/BehaviorComposeNode.d.ts +0 -13
  110. package/dist/components/avl/molecules/BehaviorView.d.ts +0 -12
  111. package/dist/components/avl/molecules/DetailView.d.ts +0 -13
  112. package/dist/components/avl/molecules/EventFlowEdge.d.ts +0 -13
  113. package/dist/components/avl/molecules/MiniStateMachine.d.ts +0 -14
  114. package/dist/components/avl/molecules/ModuleCard.d.ts +0 -22
  115. package/dist/components/avl/molecules/OrbPreviewNode.d.ts +0 -38
  116. package/dist/components/avl/molecules/SystemNode.d.ts +0 -12
  117. package/dist/components/avl/molecules/TraitCardNode.d.ts +0 -33
  118. package/dist/components/avl/molecules/index.d.ts +0 -38
  119. package/dist/components/avl/organisms/Avl3DApplicationScene.d.ts +0 -19
  120. package/dist/components/avl/organisms/Avl3DEffects.d.ts +0 -18
  121. package/dist/components/avl/organisms/Avl3DOrbitalScene.d.ts +0 -23
  122. package/dist/components/avl/organisms/Avl3DTraitScene.d.ts +0 -19
  123. package/dist/components/avl/organisms/Avl3DTransitionScene.d.ts +0 -17
  124. package/dist/components/avl/organisms/Avl3DViewer.d.ts +0 -40
  125. package/dist/components/avl/organisms/AvlClickTarget.d.ts +0 -31
  126. package/dist/components/avl/organisms/AvlCosmicZoom.d.ts +0 -41
  127. package/dist/components/avl/organisms/AvlLegend.d.ts +0 -15
  128. package/dist/components/avl/organisms/AvlOrbitalsCosmicZoom.d.ts +0 -54
  129. package/dist/components/avl/organisms/AvlTraitScene.d.ts +0 -17
  130. package/dist/components/avl/organisms/AvlTransitionDetail.d.ts +0 -20
  131. package/dist/components/avl/organisms/AvlTransitionScene.d.ts +0 -13
  132. package/dist/components/avl/organisms/FlowCanvas.d.ts +0 -134
  133. package/dist/components/avl/organisms/OrbInspector.d.ts +0 -45
  134. package/dist/components/avl/organisms/ZoomBreadcrumb.d.ts +0 -16
  135. package/dist/components/avl/organisms/ZoomLegend.d.ts +0 -10
  136. package/dist/components/avl/organisms/index.d.ts +0 -19
  137. package/dist/components/avl/providers/avl-3d-context.d.ts +0 -32
  138. package/dist/components/avl/types/avl-atom-types.d.ts +0 -53
  139. package/dist/components/avl/types/avl-behavior-compose-types.d.ts +0 -120
  140. package/dist/components/avl/types/avl-canvas-types.d.ts +0 -39
  141. package/dist/components/avl/types/avl-preview-types.d.ts +0 -240
  142. package/dist/components/core/atoms/Aside.d.ts +0 -15
  143. package/dist/components/core/atoms/AtlasImage.d.ts +0 -58
  144. package/dist/components/core/atoms/Avatar.d.ts +0 -61
  145. package/dist/components/core/atoms/Badge.d.ts +0 -29
  146. package/dist/components/core/atoms/Box.d.ts +0 -68
  147. package/dist/components/core/atoms/Button.d.ts +0 -33
  148. package/dist/components/core/atoms/Card.d.ts +0 -34
  149. package/dist/components/core/atoms/Center.d.ts +0 -33
  150. package/dist/components/core/atoms/Checkbox.d.ts +0 -14
  151. package/dist/components/core/atoms/ConditionalWrapper.d.ts +0 -69
  152. package/dist/components/core/atoms/ConfettiEffect.d.ts +0 -19
  153. package/dist/components/core/atoms/DayCell.d.ts +0 -22
  154. package/dist/components/core/atoms/Dialog.d.ts +0 -18
  155. package/dist/components/core/atoms/Divider.d.ts +0 -29
  156. package/dist/components/core/atoms/FilterPill.d.ts +0 -30
  157. package/dist/components/core/atoms/FlipContainer.d.ts +0 -21
  158. package/dist/components/core/atoms/GameIcon.d.ts +0 -19
  159. package/dist/components/core/atoms/Icon.d.ts +0 -57
  160. package/dist/components/core/atoms/InfiniteScrollSentinel.d.ts +0 -24
  161. package/dist/components/core/atoms/Input.d.ts +0 -39
  162. package/dist/components/core/atoms/Label.d.ts +0 -12
  163. package/dist/components/core/atoms/LawReferenceTooltip.d.ts +0 -48
  164. package/dist/components/core/atoms/Overlay.d.ts +0 -17
  165. package/dist/components/core/atoms/ProgressBar.d.ts +0 -63
  166. package/dist/components/core/atoms/Radio.d.ts +0 -35
  167. package/dist/components/core/atoms/RangeSlider.d.ts +0 -34
  168. package/dist/components/core/atoms/SectionHeader.d.ts +0 -14
  169. package/dist/components/core/atoms/Select.d.ts +0 -49
  170. package/dist/components/core/atoms/Spacer.d.ts +0 -25
  171. package/dist/components/core/atoms/Sparkline.d.ts +0 -30
  172. package/dist/components/core/atoms/Spinner.d.ts +0 -10
  173. package/dist/components/core/atoms/Stack.d.ts +0 -67
  174. package/dist/components/core/atoms/StatusDot.d.ts +0 -16
  175. package/dist/components/core/atoms/Switch.d.ts +0 -12
  176. package/dist/components/core/atoms/TextHighlight.d.ts +0 -54
  177. package/dist/components/core/atoms/Textarea.d.ts +0 -17
  178. package/dist/components/core/atoms/ThemeToggle.d.ts +0 -33
  179. package/dist/components/core/atoms/TimeSlotCell.d.ts +0 -23
  180. package/dist/components/core/atoms/TraitFrame.d.ts +0 -54
  181. package/dist/components/core/atoms/TrendIndicator.d.ts +0 -20
  182. package/dist/components/core/atoms/TypewriterText.d.ts +0 -20
  183. package/dist/components/core/atoms/Typography.d.ts +0 -39
  184. package/dist/components/core/atoms/index.d.ts +0 -52
  185. package/dist/components/core/atoms/svg/SvgBranch.d.ts +0 -16
  186. package/dist/components/core/atoms/svg/SvgConnection.d.ts +0 -17
  187. package/dist/components/core/atoms/svg/SvgFlow.d.ts +0 -14
  188. package/dist/components/core/atoms/svg/SvgGrid.d.ts +0 -18
  189. package/dist/components/core/atoms/svg/SvgLobe.d.ts +0 -17
  190. package/dist/components/core/atoms/svg/SvgMesh.d.ts +0 -16
  191. package/dist/components/core/atoms/svg/SvgMorph.d.ts +0 -15
  192. package/dist/components/core/atoms/svg/SvgNode.d.ts +0 -16
  193. package/dist/components/core/atoms/svg/SvgPulse.d.ts +0 -16
  194. package/dist/components/core/atoms/svg/SvgRing.d.ts +0 -17
  195. package/dist/components/core/atoms/svg/SvgShield.d.ts +0 -15
  196. package/dist/components/core/atoms/svg/SvgStack.d.ts +0 -17
  197. package/dist/components/core/atoms/svg/index.d.ts +0 -12
  198. package/dist/components/core/atoms/types.d.ts +0 -47
  199. package/dist/components/core/molecules/Accordion.d.ts +0 -71
  200. package/dist/components/core/molecules/ActivationBlock.d.ts +0 -22
  201. package/dist/components/core/molecules/Alert.d.ts +0 -25
  202. package/dist/components/core/molecules/AnimatedCounter.d.ts +0 -18
  203. package/dist/components/core/molecules/AssetPicker.d.ts +0 -21
  204. package/dist/components/core/molecules/BloomQuizBlock.d.ts +0 -25
  205. package/dist/components/core/molecules/BranchingLogicBuilder.d.ts +0 -33
  206. package/dist/components/core/molecules/Breadcrumb.d.ts +0 -55
  207. package/dist/components/core/molecules/ButtonGroup.d.ts +0 -77
  208. package/dist/components/core/molecules/CalendarGrid.d.ts +0 -61
  209. package/dist/components/core/molecules/Card.d.ts +0 -58
  210. package/dist/components/core/molecules/Carousel.d.ts +0 -42
  211. package/dist/components/core/molecules/Chart.d.ts +0 -106
  212. package/dist/components/core/molecules/ChartLegend.d.ts +0 -20
  213. package/dist/components/core/molecules/Coachmark.d.ts +0 -47
  214. package/dist/components/core/molecules/ConfirmDialog.d.ts +0 -49
  215. package/dist/components/core/molecules/ConnectionBlock.d.ts +0 -18
  216. package/dist/components/core/molecules/Container.d.ts +0 -30
  217. package/dist/components/core/molecules/ContentRenderer.d.ts +0 -23
  218. package/dist/components/core/molecules/DataGrid.d.ts +0 -117
  219. package/dist/components/core/molecules/DataList.d.ts +0 -129
  220. package/dist/components/core/molecules/DateRangePicker.d.ts +0 -56
  221. package/dist/components/core/molecules/DateRangeSelector.d.ts +0 -21
  222. package/dist/components/core/molecules/DocBreadcrumb.d.ts +0 -20
  223. package/dist/components/core/molecules/DocPagination.d.ts +0 -21
  224. package/dist/components/core/molecules/DocSearch.d.ts +0 -22
  225. package/dist/components/core/molecules/DocSidebar.d.ts +0 -24
  226. package/dist/components/core/molecules/DocTOC.d.ts +0 -24
  227. package/dist/components/core/molecules/DocumentViewer.d.ts +0 -61
  228. package/dist/components/core/molecules/Drawer.d.ts +0 -47
  229. package/dist/components/core/molecules/EdgeDecoration.d.ts +0 -36
  230. package/dist/components/core/molecules/EmptyState.d.ts +0 -29
  231. package/dist/components/core/molecules/ErrorBoundary.d.ts +0 -54
  232. package/dist/components/core/molecules/ErrorState.d.ts +0 -14
  233. package/dist/components/core/molecules/FeatureGrid.d.ts +0 -19
  234. package/dist/components/core/molecules/FileTree.d.ts +0 -37
  235. package/dist/components/core/molecules/FilterGroup.d.ts +0 -61
  236. package/dist/components/core/molecules/Flex.d.ts +0 -43
  237. package/dist/components/core/molecules/FlipCard.d.ts +0 -24
  238. package/dist/components/core/molecules/FloatingActionButton.d.ts +0 -83
  239. package/dist/components/core/molecules/FormField.d.ts +0 -16
  240. package/dist/components/core/molecules/FormSection.d.ts +0 -39
  241. package/dist/components/core/molecules/FormSectionHeader.d.ts +0 -31
  242. package/dist/components/core/molecules/GradientDivider.d.ts +0 -15
  243. package/dist/components/core/molecules/GraphCanvas.d.ts +0 -83
  244. package/dist/components/core/molecules/GraphView.d.ts +0 -45
  245. package/dist/components/core/molecules/Grid.d.ts +0 -54
  246. package/dist/components/core/molecules/GridPicker.d.ts +0 -44
  247. package/dist/components/core/molecules/Header.d.ts +0 -113
  248. package/dist/components/core/molecules/IconPicker.d.ts +0 -18
  249. package/dist/components/core/molecules/InputGroup.d.ts +0 -24
  250. package/dist/components/core/molecules/JazariStateMachine.d.ts +0 -34
  251. package/dist/components/core/molecules/JsonTreeEditor.d.ts +0 -13
  252. package/dist/components/core/molecules/Lightbox.d.ts +0 -26
  253. package/dist/components/core/molecules/LikertScale.d.ts +0 -34
  254. package/dist/components/core/molecules/LineChart.d.ts +0 -35
  255. package/dist/components/core/molecules/LoadingState.d.ts +0 -7
  256. package/dist/components/core/molecules/MapView.d.ts +0 -87
  257. package/dist/components/core/molecules/MatrixQuestion.d.ts +0 -35
  258. package/dist/components/core/molecules/Menu.d.ts +0 -44
  259. package/dist/components/core/molecules/Meter.d.ts +0 -52
  260. package/dist/components/core/molecules/Modal.d.ts +0 -36
  261. package/dist/components/core/molecules/Navigation.d.ts +0 -67
  262. package/dist/components/core/molecules/NodeSlotEditor.d.ts +0 -17
  263. package/dist/components/core/molecules/NumberStepper.d.ts +0 -28
  264. package/dist/components/core/molecules/OnboardingSpotlight.d.ts +0 -27
  265. package/dist/components/core/molecules/OptionConstraintGroup.d.ts +0 -44
  266. package/dist/components/core/molecules/OrbitalVisualization.d.ts +0 -48
  267. package/dist/components/core/molecules/PageHeader.d.ts +0 -60
  268. package/dist/components/core/molecules/Pagination.d.ts +0 -71
  269. package/dist/components/core/molecules/Popover.d.ts +0 -39
  270. package/dist/components/core/molecules/PositionedCanvas.d.ts +0 -40
  271. package/dist/components/core/molecules/ProgressDots.d.ts +0 -24
  272. package/dist/components/core/molecules/PropertyInspector.d.ts +0 -38
  273. package/dist/components/core/molecules/PullToRefresh.d.ts +0 -22
  274. package/dist/components/core/molecules/QrScanner.d.ts +0 -24
  275. package/dist/components/core/molecules/QuizBlock.d.ts +0 -20
  276. package/dist/components/core/molecules/ReflectionBlock.d.ts +0 -23
  277. package/dist/components/core/molecules/RelationSelect.d.ts +0 -48
  278. package/dist/components/core/molecules/RepeatableFormSection.d.ts +0 -60
  279. package/dist/components/core/molecules/ReplyTree.d.ts +0 -46
  280. package/dist/components/core/molecules/RichBlockEditor.d.ts +0 -43
  281. package/dist/components/core/molecules/ScaledDiagram.d.ts +0 -20
  282. package/dist/components/core/molecules/SearchInput.d.ts +0 -60
  283. package/dist/components/core/molecules/Section.d.ts +0 -43
  284. package/dist/components/core/molecules/SidePanel.d.ts +0 -53
  285. package/dist/components/core/molecules/Sidebar.d.ts +0 -72
  286. package/dist/components/core/molecules/SignaturePad.d.ts +0 -46
  287. package/dist/components/core/molecules/SimpleGrid.d.ts +0 -27
  288. package/dist/components/core/molecules/Skeleton.d.ts +0 -35
  289. package/dist/components/core/molecules/SocialProof.d.ts +0 -25
  290. package/dist/components/core/molecules/SortableList.d.ts +0 -19
  291. package/dist/components/core/molecules/Split.d.ts +0 -41
  292. package/dist/components/core/molecules/StarRating.d.ts +0 -27
  293. package/dist/components/core/molecules/StatDisplay.d.ts +0 -58
  294. package/dist/components/core/molecules/SwipeableRow.d.ts +0 -26
  295. package/dist/components/core/molecules/TableView.d.ts +0 -111
  296. package/dist/components/core/molecules/Tabs.d.ts +0 -60
  297. package/dist/components/core/molecules/TagInput.d.ts +0 -52
  298. package/dist/components/core/molecules/Toast.d.ts +0 -36
  299. package/dist/components/core/molecules/Tooltip.d.ts +0 -25
  300. package/dist/components/core/molecules/UploadDropZone.d.ts +0 -28
  301. package/dist/components/core/molecules/VersionDiff.d.ts +0 -62
  302. package/dist/components/core/molecules/ViolationAlert.d.ts +0 -46
  303. package/dist/components/core/molecules/VoteStack.d.ts +0 -35
  304. package/dist/components/core/molecules/WizardContainer.d.ts +0 -166
  305. package/dist/components/core/molecules/WizardNavigation.d.ts +0 -61
  306. package/dist/components/core/molecules/WizardProgress.d.ts +0 -45
  307. package/dist/components/core/molecules/index.d.ts +0 -138
  308. package/dist/components/core/molecules/lessonSegmentUtils.d.ts +0 -18
  309. package/dist/components/core/molecules/markdown/CodeBlock.d.ts +0 -108
  310. package/dist/components/core/molecules/markdown/MarkdownContent.d.ts +0 -26
  311. package/dist/components/core/molecules/markdown/index.d.ts +0 -2
  312. package/dist/components/core/molecules/parseLessonSegments.d.ts +0 -44
  313. package/dist/components/core/molecules/useDataDnd.d.ts +0 -63
  314. package/dist/components/core/organisms/CardGrid.d.ts +0 -84
  315. package/dist/components/core/organisms/ChatBar.d.ts +0 -31
  316. package/dist/components/core/organisms/CodeRunnerPanel.d.ts +0 -42
  317. package/dist/components/core/organisms/ComponentPatterns.d.ts +0 -185
  318. package/dist/components/core/organisms/CustomPattern.d.ts +0 -105
  319. package/dist/components/core/organisms/DataTable.d.ts +0 -79
  320. package/dist/components/core/organisms/DetailPanel.d.ts +0 -80
  321. package/dist/components/core/organisms/DrawerSlot.d.ts +0 -42
  322. package/dist/components/core/organisms/Form.d.ts +0 -214
  323. package/dist/components/core/organisms/LayoutPatterns.d.ts +0 -108
  324. package/dist/components/core/organisms/List.d.ts +0 -81
  325. package/dist/components/core/organisms/MasterDetail.d.ts +0 -35
  326. package/dist/components/core/organisms/MediaGallery.d.ts +0 -63
  327. package/dist/components/core/organisms/ModalSlot.d.ts +0 -38
  328. package/dist/components/core/organisms/NotifyListener.d.ts +0 -15
  329. package/dist/components/core/organisms/SegmentRenderer.d.ts +0 -38
  330. package/dist/components/core/organisms/StatCard.d.ts +0 -65
  331. package/dist/components/core/organisms/StateMachineView.d.ts +0 -45
  332. package/dist/components/core/organisms/SubagentTracePanel.d.ts +0 -50
  333. package/dist/components/core/organisms/Timeline.d.ts +0 -71
  334. package/dist/components/core/organisms/ToastSlot.d.ts +0 -41
  335. package/dist/components/core/organisms/UISlotRenderer.d.ts +0 -116
  336. package/dist/components/core/organisms/book/index.d.ts +0 -7
  337. package/dist/components/core/organisms/book/types.d.ts +0 -62
  338. package/dist/components/core/organisms/component-registry.generated.d.ts +0 -9
  339. package/dist/components/core/organisms/debug/RuntimeDebugger.d.ts +0 -29
  340. package/dist/components/core/organisms/debug/WalkMinimap.d.ts +0 -17
  341. package/dist/components/core/organisms/debug/hooks/useDebugData.d.ts +0 -25
  342. package/dist/components/core/organisms/debug/index.d.ts +0 -13
  343. package/dist/components/core/organisms/debug/tabs/EntitiesTab.d.ts +0 -14
  344. package/dist/components/core/organisms/debug/tabs/EventDispatcherTab.d.ts +0 -18
  345. package/dist/components/core/organisms/debug/tabs/EventFlowTab.d.ts +0 -14
  346. package/dist/components/core/organisms/debug/tabs/GuardsPanel.d.ts +0 -14
  347. package/dist/components/core/organisms/debug/tabs/ServerBridgeTab.d.ts +0 -20
  348. package/dist/components/core/organisms/debug/tabs/TicksTab.d.ts +0 -14
  349. package/dist/components/core/organisms/debug/tabs/TraitsTab.d.ts +0 -14
  350. package/dist/components/core/organisms/debug/tabs/TransitionTimeline.d.ts +0 -19
  351. package/dist/components/core/organisms/debug/tabs/VerificationTab.d.ts +0 -17
  352. package/dist/components/core/organisms/index.d.ts +0 -33
  353. package/dist/components/core/organisms/layout/DashboardGrid.d.ts +0 -33
  354. package/dist/components/core/organisms/layout/MasterDetailLayout.d.ts +0 -32
  355. package/dist/components/core/organisms/layout/SplitPane.d.ts +0 -34
  356. package/dist/components/core/organisms/layout/TabbedContainer.d.ts +0 -42
  357. package/dist/components/core/organisms/layout/index.d.ts +0 -9
  358. package/dist/components/core/organisms/marketing-types.d.ts +0 -8
  359. package/dist/components/core/organisms/trace-edit-focus.d.ts +0 -14
  360. package/dist/components/core/organisms/types.d.ts +0 -72
  361. package/dist/components/core/templates/CounterTemplate.d.ts +0 -51
  362. package/dist/components/core/templates/DashboardLayout.d.ts +0 -110
  363. package/dist/components/core/templates/GenericAppTemplate.d.ts +0 -24
  364. package/dist/components/core/templates/index.d.ts +0 -10
  365. package/dist/components/core/templates/types.d.ts +0 -35
  366. package/dist/components/game/atoms/ChoiceButton.d.ts +0 -29
  367. package/dist/components/game/atoms/ControlButton.d.ts +0 -35
  368. package/dist/components/game/atoms/DialogueBubble.d.ts +0 -26
  369. package/dist/components/game/atoms/DrawShape.d.ts +0 -50
  370. package/dist/components/game/atoms/DrawSprite.d.ts +0 -47
  371. package/dist/components/game/atoms/DrawText.d.ts +0 -31
  372. package/dist/components/game/atoms/GameAudioToggle.d.ts +0 -34
  373. package/dist/components/game/atoms/HealthBar.d.ts +0 -32
  374. package/dist/components/game/atoms/MiniMap.d.ts +0 -40
  375. package/dist/components/game/atoms/ScoreDisplay.d.ts +0 -25
  376. package/dist/components/game/atoms/StateIndicator.d.ts +0 -29
  377. package/dist/components/game/atoms/TimerDisplay.d.ts +0 -22
  378. package/dist/components/game/molecules/ActionPalette.d.ts +0 -34
  379. package/dist/components/game/molecules/ActionTile.d.ts +0 -30
  380. package/dist/components/game/molecules/Canvas.d.ts +0 -96
  381. package/dist/components/game/molecules/Canvas2D.d.ts +0 -120
  382. package/dist/components/game/molecules/ControlGrid.d.ts +0 -49
  383. package/dist/components/game/molecules/DrawShapeLayer.d.ts +0 -19
  384. package/dist/components/game/molecules/DrawSpriteLayer.d.ts +0 -21
  385. package/dist/components/game/molecules/DrawTextLayer.d.ts +0 -22
  386. package/dist/components/game/molecules/GameHud.d.ts +0 -52
  387. package/dist/components/game/molecules/GameMenu.d.ts +0 -42
  388. package/dist/components/game/molecules/SequenceBar.d.ts +0 -51
  389. package/dist/components/game/molecules/StatBadge.d.ts +0 -39
  390. package/dist/components/game/molecules/StateGraph.d.ts +0 -38
  391. package/dist/components/game/molecules/StateJsonView.d.ts +0 -37
  392. package/dist/components/game/molecules/StateNode.d.ts +0 -31
  393. package/dist/components/game/molecules/TraitSlot.d.ts +0 -99
  394. package/dist/components/game/molecules/TraitStateViewer.d.ts +0 -52
  395. package/dist/components/game/molecules/TransitionArrow.d.ts +0 -31
  396. package/dist/components/game/molecules/index.d.ts +0 -39
  397. package/dist/components/game/patterns.d.ts +0 -20
  398. package/dist/components/game/templates/GameShell.d.ts +0 -35
  399. package/dist/components/learning/atoms/LearningCanvas.d.ts +0 -80
  400. package/dist/components/learning/molecules/AlgorithmCanvas.d.ts +0 -58
  401. package/dist/components/learning/molecules/BiologyCanvas.d.ts +0 -47
  402. package/dist/components/learning/molecules/ChemistryCanvas.d.ts +0 -55
  403. package/dist/components/learning/molecules/MathCanvas.d.ts +0 -61
  404. package/dist/components/learning/molecules/PhysicsCanvas.d.ts +0 -54
  405. package/dist/components/marketing/atoms/AnimatedCounter.d.ts +0 -20
  406. package/dist/components/marketing/atoms/AnimatedGraphic.d.ts +0 -32
  407. package/dist/components/marketing/atoms/AnimatedReveal.d.ts +0 -26
  408. package/dist/components/marketing/atoms/ContentSection.d.ts +0 -16
  409. package/dist/components/marketing/atoms/MarketingStatCard.d.ts +0 -13
  410. package/dist/components/marketing/atoms/PatternTile.d.ts +0 -41
  411. package/dist/components/marketing/molecules/ArticleSection.d.ts +0 -18
  412. package/dist/components/marketing/molecules/CTABanner.d.ts +0 -26
  413. package/dist/components/marketing/molecules/CaseStudyCard.d.ts +0 -24
  414. package/dist/components/marketing/molecules/CommunityLinks.d.ts +0 -28
  415. package/dist/components/marketing/molecules/FeatureCard.d.ts +0 -26
  416. package/dist/components/marketing/molecules/GeometricPattern.d.ts +0 -33
  417. package/dist/components/marketing/molecules/HeroSection.d.ts +0 -28
  418. package/dist/components/marketing/molecules/InstallBox.d.ts +0 -16
  419. package/dist/components/marketing/molecules/MarketingFooter.d.ts +0 -29
  420. package/dist/components/marketing/molecules/PricingCard.d.ts +0 -19
  421. package/dist/components/marketing/molecules/PricingGrid.d.ts +0 -13
  422. package/dist/components/marketing/molecules/PullQuote.d.ts +0 -14
  423. package/dist/components/marketing/molecules/ServiceCatalog.d.ts +0 -19
  424. package/dist/components/marketing/molecules/ShowcaseCard.d.ts +0 -18
  425. package/dist/components/marketing/molecules/SplitSection.d.ts +0 -19
  426. package/dist/components/marketing/molecules/StatsGrid.d.ts +0 -18
  427. package/dist/components/marketing/molecules/StepFlow.d.ts +0 -21
  428. package/dist/components/marketing/molecules/TagCloud.d.ts +0 -18
  429. package/dist/components/marketing/molecules/TeamCard.d.ts +0 -19
  430. package/dist/components/marketing/organisms/CaseStudyOrganism.d.ts +0 -29
  431. package/dist/components/marketing/organisms/FeatureGridOrganism.d.ts +0 -30
  432. package/dist/components/marketing/organisms/HeroOrganism.d.ts +0 -42
  433. package/dist/components/marketing/organisms/PricingOrganism.d.ts +0 -33
  434. package/dist/components/marketing/organisms/ShowcaseOrganism.d.ts +0 -34
  435. package/dist/components/marketing/organisms/StatsOrganism.d.ts +0 -23
  436. package/dist/components/marketing/organisms/StepFlowOrganism.d.ts +0 -29
  437. package/dist/components/marketing/organisms/TeamOrganism.d.ts +0 -28
  438. package/dist/components/marketing/organisms/book/BookChapterView.d.ts +0 -21
  439. package/dist/components/marketing/organisms/book/BookCoverPage.d.ts +0 -21
  440. package/dist/components/marketing/organisms/book/BookNavBar.d.ts +0 -19
  441. package/dist/components/marketing/organisms/book/BookTableOfContents.d.ts +0 -20
  442. package/dist/components/marketing/organisms/book/BookViewer.d.ts +0 -31
  443. package/dist/components/marketing/templates/AboutPageTemplate.d.ts +0 -53
  444. package/dist/components/marketing/templates/AuthLayout.d.ts +0 -15
  445. package/dist/components/marketing/templates/FeatureDetailPageTemplate.d.ts +0 -37
  446. package/dist/components/marketing/templates/LandingPageTemplate.d.ts +0 -70
  447. package/dist/components/marketing/templates/PricingPageTemplate.d.ts +0 -44
  448. package/dist/hooks/useAgentChat.d.ts +0 -105
  449. package/dist/hooks/useAlmadarDndCollision.d.ts +0 -34
  450. package/dist/hooks/useAuthContext.d.ts +0 -25
  451. package/dist/hooks/useCamera.d.ts +0 -57
  452. package/dist/hooks/useCanvasGestures.d.ts +0 -44
  453. package/dist/hooks/useClientEffects.d.ts +0 -88
  454. package/dist/hooks/useCompile.d.ts +0 -18
  455. package/dist/hooks/useDeepAgentGeneration.d.ts +0 -46
  456. package/dist/hooks/useDragReorder.d.ts +0 -26
  457. package/dist/hooks/useDraggable.d.ts +0 -25
  458. package/dist/hooks/useDropZone.d.ts +0 -23
  459. package/dist/hooks/useEventBus.d.ts +0 -99
  460. package/dist/hooks/useExtensions.d.ts +0 -32
  461. package/dist/hooks/useFileEditor.d.ts +0 -32
  462. package/dist/hooks/useFileSystem.d.ts +0 -50
  463. package/dist/hooks/useGameAudio.d.ts +0 -47
  464. package/dist/hooks/useGitHub.d.ts +0 -58
  465. package/dist/hooks/useImageCache.d.ts +0 -16
  466. package/dist/hooks/useInfiniteScroll.d.ts +0 -13
  467. package/dist/hooks/useLongPress.d.ts +0 -16
  468. package/dist/hooks/useOrbitalHistory.d.ts +0 -39
  469. package/dist/hooks/usePreview.d.ts +0 -57
  470. package/dist/hooks/usePullToRefresh.d.ts +0 -25
  471. package/dist/hooks/useQuerySingleton.d.ts +0 -79
  472. package/dist/hooks/useRenderInterpolation.d.ts +0 -33
  473. package/dist/hooks/useResolvedSchema.d.ts +0 -45
  474. package/dist/hooks/useSharedEntityStore.d.ts +0 -53
  475. package/dist/hooks/useSwipeGesture.d.ts +0 -26
  476. package/dist/hooks/useTapReveal.d.ts +0 -32
  477. package/dist/hooks/useTraitStateMachine.d.ts +0 -136
  478. package/dist/hooks/useTranslate.d.ts +0 -35
  479. package/dist/hooks/useUIEvents.d.ts +0 -41
  480. package/dist/hooks/useUnitSpriteAtlas.d.ts +0 -24
  481. package/dist/hooks/useValidation.d.ts +0 -46
  482. package/dist/lib/api-client.d.ts +0 -43
  483. package/dist/lib/atlasSlice.d.ts +0 -58
  484. package/dist/lib/boardEntity.d.ts +0 -44
  485. package/dist/lib/client-effect-executor.d.ts +0 -57
  486. package/dist/lib/cn.d.ts +0 -6
  487. package/dist/lib/createClientEffectHandlers.d.ts +0 -42
  488. package/dist/lib/data-resolver.d.ts +0 -55
  489. package/dist/lib/debug.d.ts +0 -36
  490. package/dist/lib/debugRegistry.d.ts +0 -30
  491. package/dist/lib/debugUtils.d.ts +0 -27
  492. package/dist/lib/drawable/contract.d.ts +0 -68
  493. package/dist/lib/drawable/hitTest.d.ts +0 -23
  494. package/dist/lib/drawable/paintDispatch.d.ts +0 -22
  495. package/dist/lib/drawable/projector.d.ts +0 -14
  496. package/dist/lib/drawable/projector3d.d.ts +0 -20
  497. package/dist/lib/drawable/three/Camera3D.d.ts +0 -60
  498. package/dist/lib/drawable/three/Canvas3DErrorBoundary.d.ts +0 -51
  499. package/dist/lib/drawable/three/Canvas3DHost.d.ts +0 -178
  500. package/dist/lib/drawable/three/Canvas3DLoadingState.d.ts +0 -44
  501. package/dist/lib/drawable/three/Drawable3D.d.ts +0 -20
  502. package/dist/lib/drawable/three/GameCamera3D.d.ts +0 -16
  503. package/dist/lib/drawable/three/Lighting3D.d.ts +0 -55
  504. package/dist/lib/drawable/three/ModelLoader.d.ts +0 -52
  505. package/dist/lib/drawable/three/Scene3D.d.ts +0 -37
  506. package/dist/lib/drawable/three/game3dTheme.d.ts +0 -14
  507. package/dist/lib/drawable/three/hooks/useAssetLoader.d.ts +0 -58
  508. package/dist/lib/drawable/three/hooks/useGameCanvas3DEvents.d.ts +0 -124
  509. package/dist/lib/drawable/three/hooks/useRaycaster.d.ts +0 -86
  510. package/dist/lib/drawable/three/hooks/useSceneGraph.d.ts +0 -67
  511. package/dist/lib/drawable/three/hooks/useThree.d.ts +0 -58
  512. package/dist/lib/drawable/three/lib/AssetLoader.d.ts +0 -80
  513. package/dist/lib/drawable/three/lib/culling.d.ts +0 -134
  514. package/dist/lib/drawable/three/lib/grid3D.d.ts +0 -154
  515. package/dist/lib/drawable/three/mesh3d.d.ts +0 -28
  516. package/dist/lib/editorUtils.d.ts +0 -114
  517. package/dist/lib/embedded-traits.d.ts +0 -39
  518. package/dist/lib/entityDebug.d.ts +0 -39
  519. package/dist/lib/fn-form-lambda.d.ts +0 -27
  520. package/dist/lib/game.d.ts +0 -92
  521. package/dist/lib/gameShared.d.ts +0 -18
  522. package/dist/lib/getNestedValue.d.ts +0 -34
  523. package/dist/lib/guardRegistry.d.ts +0 -33
  524. package/dist/lib/iconFamily.d.ts +0 -41
  525. package/dist/lib/imageCache.d.ts +0 -9
  526. package/dist/lib/init.d.ts +0 -14
  527. package/dist/lib/isometric.d.ts +0 -121
  528. package/dist/lib/isometricTypes.d.ts +0 -141
  529. package/dist/lib/jazari/index.d.ts +0 -5
  530. package/dist/lib/jazari/layout.d.ts +0 -31
  531. package/dist/lib/jazari/svg-paths.d.ts +0 -61
  532. package/dist/lib/jazari/types.d.ts +0 -91
  533. package/dist/lib/makeAsset.d.ts +0 -5
  534. package/dist/lib/mechanics.d.ts +0 -4
  535. package/dist/lib/offline-executor.d.ts +0 -239
  536. package/dist/lib/orbitalsByTrait.d.ts +0 -34
  537. package/dist/lib/painter2d.d.ts +0 -81
  538. package/dist/lib/parseContentSegments.d.ts +0 -42
  539. package/dist/lib/pattern-resolver.d.ts +0 -88
  540. package/dist/lib/perf.d.ts +0 -32
  541. package/dist/lib/physicsPresets.d.ts +0 -4
  542. package/dist/lib/physicsTypes.d.ts +0 -43
  543. package/dist/lib/prepareSchemaForPreview.d.ts +0 -71
  544. package/dist/lib/puzzleObject.d.ts +0 -41
  545. package/dist/lib/slot-definitions.d.ts +0 -33
  546. package/dist/lib/spriteAnimation.d.ts +0 -85
  547. package/dist/lib/spriteAnimationTypes.d.ts +0 -72
  548. package/dist/lib/spriteSheetConstants.d.ts +0 -16
  549. package/dist/lib/tickRegistry.d.ts +0 -40
  550. package/dist/lib/trait-binding-resolver.d.ts +0 -57
  551. package/dist/lib/traitRegistry.d.ts +0 -34
  552. package/dist/lib/verificationRegistry.d.ts +0 -97
  553. package/dist/lib/visualizer/browser.d.ts +0 -48
  554. package/dist/lib/visualizer/index.d.ts +0 -144
  555. package/dist/lib/webPainter2d.d.ts +0 -7
  556. package/dist/lib/wrapCallbackForEvent.d.ts +0 -16
  557. package/dist/marketing/index.d.cts +0 -1067
  558. package/dist/marketing/index.d.ts +0 -72
  559. package/dist/providers/CurrentPagePathContext.d.ts +0 -9
  560. package/dist/providers/DesignThemeContext.d.ts +0 -21
  561. package/dist/providers/EntitySchemaContext.d.ts +0 -81
  562. package/dist/providers/EventBusProvider.d.ts +0 -47
  563. package/dist/providers/GameAudioProvider.d.ts +0 -53
  564. package/dist/providers/OfflineModeProvider.d.ts +0 -79
  565. package/dist/providers/OrbitalProvider.d.ts +0 -110
  566. package/dist/providers/OrbitalThemeProvider.d.ts +0 -37
  567. package/dist/providers/SelectionProvider.d.ts +0 -82
  568. package/dist/providers/ServerBridge.d.ts +0 -102
  569. package/dist/providers/ThemeContext.d.ts +0 -104
  570. package/dist/providers/TraitProvider.d.ts +0 -53
  571. package/dist/providers/TraitScopeProvider.d.ts +0 -43
  572. package/dist/providers/UserContext.d.ts +0 -112
  573. package/dist/providers/VerificationProvider.d.ts +0 -64
  574. package/dist/providers/navigation.d.ts +0 -142
  575. package/dist/runtime/BrowserPlayground.d.ts +0 -34
  576. package/dist/runtime/OrbPreview.d.ts +0 -84
  577. package/dist/scripts/audit-tailwind-safelist.d.ts +0 -27
  578. package/dist/scripts/generate-design-system.d.ts +0 -29
  579. package/dist/scripts/generate-theme-from-schema.d.ts +0 -10
  580. package/dist/scripts/generate.d.ts +0 -12
  581. package/dist/scripts/suggest-components.d.ts +0 -31
  582. package/dist/scripts/types.d.ts +0 -129
  583. package/dist/tsup.config.d.ts +0 -3
  584. package/dist/types/renderer-types.d.ts +0 -146
  585. package/dist/types/runtime-types.d.ts +0 -21
  586. package/dist/types/slot-types.d.ts +0 -49
  587. package/dist/vitest.config.d.ts +0 -2
@@ -1,28 +1,343 @@
1
+ import { M as MappedPattern, C as ClientEffect, q as ClientEffectExecutorConfig, r as NotifyOptions, D as DataContext, s as DataResolution, S as SlotDefinition } from '../offline-executor-aRuNznZx.js';
2
+ export { E as EventResponse, N as NavigationContextValue, b as NavigationProvider, c as NavigationProviderProps, d as NavigationState, O as OfflineExecutor, t as OfflineExecutorConfig, v as OfflineExecutorState, P as PendingSyncEffect, w as SlotType, a as UseOfflineExecutorOptions, U as UseOfflineExecutorResult, x as createOfflineExecutor, e as extractRouteParams, f as findPageByName, g as findPageByPath, h as getAllPages, i as getDefaultPage, m as matchPath, p as pathMatches, u as useActivePage, j as useInitPayload, k as useNavigateTo, l as useNavigation, n as useNavigationId, o as useNavigationState, y as useOfflineExecutor } from '../offline-executor-aRuNznZx.js';
3
+ import { PatternPropDef } from '@almadar/core/patterns';
4
+ import { PatternConfig, FieldValue, EntityRow, UISlot } from '@almadar/core';
5
+ export { PatternConfig, UISlot } from '@almadar/core';
6
+ import * as React from 'react';
7
+
1
8
  /**
2
- * Shared Renderer Module
9
+ * Pattern Resolver
3
10
  *
4
- * Provides unified rendering logic for both Builder preview and compiled shells.
5
- * This is the core of the runtime unification - both systems use this same code.
11
+ * Resolves pattern configurations to component information.
12
+ * Uses the central pattern registry and component mapping from orbital-shared/patterns/.
6
13
  *
7
- * Key components:
8
- * - Types: Shared type definitions for effects, patterns, responses
9
- * - Pattern Resolver: Pattern → Component resolution
10
- * - Client Effect Executor: Execute clientEffects from server
11
- * - useClientEffects: React hook for effect execution
12
- * - Data Resolver: Entity data resolution with filtering
13
- * - Slot Definitions: Inline vs portal slot configuration
14
+ * This is the shared logic used by both Builder's PatternRenderer and
15
+ * the compiled shell's UISlotRenderer.
14
16
  *
15
17
  * @packageDocumentation
16
18
  */
17
- export type { ClientEffect, NotifyOptions, ClientEffectExecutorConfig, PatternConfig, MappedPattern, EventResponse, UISlot, SlotType, SlotDefinition, DataContext, DataResolution, } from '../types/renderer-types';
18
- export { resolvePattern, isKnownPattern, getKnownPatterns, getPatternsByCategory, getPatternMapping, getPatternDefinition, initializePatternResolver, setComponentMapping, setPatternRegistry, } from '../lib/pattern-resolver';
19
- export { executeClientEffects, parseClientEffect, parseClientEffects, getRenderUIEffects, getNotifyEffects, } from '../lib/client-effect-executor';
20
- export { useClientEffects, useClientEffectConfig, useClientEffectConfigOptional, ClientEffectConfigProvider, ClientEffectConfigContext, } from '../hooks/useClientEffects';
21
- export type { UseClientEffectsOptions, UseClientEffectsResult, } from '../hooks/useClientEffects';
22
- export { resolveEntityData, resolveEntityDataWithQuery, resolveEntityById, hasEntities, } from '../lib/data-resolver';
23
- export { SLOT_DEFINITIONS, getSlotDefinition, isPortalSlot, getInlineSlots, ALL_SLOTS, } from '../lib/slot-definitions';
24
- export { OfflineExecutor, createOfflineExecutor, useOfflineExecutor, } from '../lib/offline-executor';
25
- export type { PendingSyncEffect, OfflineExecutorConfig, OfflineExecutorState, UseOfflineExecutorOptions, UseOfflineExecutorResult, } from '../lib/offline-executor';
26
- export { NavigationProvider, useNavigation, useNavigateTo, useNavigationState, useInitPayload, useActivePage, useNavigationId, matchPath, extractRouteParams, pathMatches, findPageByPath, findPageByName, getDefaultPage, getAllPages, } from '../providers/navigation';
27
- export type { NavigationState, NavigationContextValue, NavigationProviderProps, } from '../providers/navigation';
28
- export { initializePatterns } from '../lib/init';
19
+
20
+ /**
21
+ * Component mapping entry from component-mapping.json
22
+ */
23
+ interface ComponentMappingEntry {
24
+ component: string;
25
+ importPath: string;
26
+ category: string;
27
+ deprecated?: boolean;
28
+ replacedBy?: string;
29
+ }
30
+ /**
31
+ * Pattern definition from registry.json
32
+ */
33
+ interface PatternDefinition {
34
+ type: string;
35
+ category: string;
36
+ description: string;
37
+ propsSchema?: Record<string, PatternPropDef>;
38
+ }
39
+ /**
40
+ * Initialize the pattern resolver with mappings.
41
+ * Called at app startup with data from JSON files.
42
+ */
43
+ declare function initializePatternResolver(config: {
44
+ componentMapping: Record<string, ComponentMappingEntry>;
45
+ patternRegistry: Record<string, PatternDefinition>;
46
+ }): void;
47
+ /**
48
+ * Set component mapping (alternative to full initialization).
49
+ */
50
+ declare function setComponentMapping(mapping: Record<string, ComponentMappingEntry>): void;
51
+ /**
52
+ * Set pattern registry (alternative to full initialization).
53
+ */
54
+ declare function setPatternRegistry(registry: Record<string, PatternDefinition>): void;
55
+ /**
56
+ * Resolve a pattern configuration to component information.
57
+ *
58
+ * @param config - Pattern configuration from render-ui effect
59
+ * @returns Resolved pattern with component name, import path, and validated props
60
+ * @throws Error if pattern type is unknown
61
+ *
62
+ * @example
63
+ * ```typescript
64
+ * const resolved = resolvePattern({
65
+ * type: 'entity-table',
66
+ * entity: 'Task',
67
+ * columns: ['title', 'status']
68
+ * });
69
+ * // resolved.component === 'DataTable'
70
+ * // resolved.importPath === '@/components/organisms/DataTable'
71
+ * ```
72
+ */
73
+ declare function resolvePattern(config: PatternConfig): MappedPattern;
74
+ /**
75
+ * Check if a pattern type is known.
76
+ */
77
+ declare function isKnownPattern(type: string): boolean;
78
+ /**
79
+ * Get all known pattern types.
80
+ */
81
+ declare function getKnownPatterns(): string[];
82
+ /**
83
+ * Get patterns by category.
84
+ */
85
+ declare function getPatternsByCategory(category: string): string[];
86
+ /**
87
+ * Get the component mapping for a pattern type.
88
+ */
89
+ declare function getPatternMapping(type: string): ComponentMappingEntry | undefined;
90
+ /**
91
+ * Get the pattern definition from the registry.
92
+ */
93
+ declare function getPatternDefinition(type: string): PatternDefinition | undefined;
94
+
95
+ /**
96
+ * Client Effect Executor
97
+ *
98
+ * Executes client effects returned from the server.
99
+ * This is the core of the dual execution model - the server processes
100
+ * events and returns client effects, which this module executes.
101
+ *
102
+ * Used by both Builder preview and compiled shells.
103
+ *
104
+ * @packageDocumentation
105
+ */
106
+
107
+ /**
108
+ * Execute an array of client effects.
109
+ *
110
+ * Effects are executed sequentially in order.
111
+ * Errors in one effect don't prevent subsequent effects from executing.
112
+ *
113
+ * @param effects - Array of client effects to execute
114
+ * @param config - Configuration providing implementations for each effect type
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * executeClientEffects(
119
+ * [
120
+ * ['render-ui', 'main', { type: 'entity-table', entity: 'Task' }],
121
+ * ['notify', 'Tasks loaded!', { type: 'success' }]
122
+ * ],
123
+ * {
124
+ * renderToSlot: (slot, pattern) => slotManager.render(slot, pattern),
125
+ * navigate: (path) => router.push(path),
126
+ * notify: (message, opts) => toast.show(message, opts),
127
+ * eventBus: { emit: (event, payload) => bus.emit(event, payload) }
128
+ * }
129
+ * );
130
+ * ```
131
+ */
132
+ declare function executeClientEffects(effects: ClientEffect[], config: ClientEffectExecutorConfig): void;
133
+ /**
134
+ * Parse a raw effect array into a typed ClientEffect.
135
+ * Handles unknown effect formats gracefully.
136
+ */
137
+ declare function parseClientEffect(raw: FieldValue[]): ClientEffect | null;
138
+ /**
139
+ * Parse an array of raw effects into typed ClientEffects.
140
+ * Filters out invalid effects.
141
+ */
142
+ declare function parseClientEffects(raw: FieldValue[] | undefined): ClientEffect[];
143
+ /**
144
+ * Get all render-ui effects.
145
+ */
146
+ declare function getRenderUIEffects(effects: ClientEffect[]): Array<['render-ui', string, PatternConfig | null]>;
147
+ /**
148
+ * Get all notify effects.
149
+ */
150
+ declare function getNotifyEffects(effects: ClientEffect[]): Array<['notify', string, NotifyOptions?]>;
151
+
152
+ /**
153
+ * Options for the useClientEffects hook
154
+ */
155
+ interface UseClientEffectsOptions extends ClientEffectExecutorConfig {
156
+ /**
157
+ * Whether to execute effects. Defaults to true.
158
+ * Set to false to temporarily disable effect execution.
159
+ */
160
+ enabled?: boolean;
161
+ /**
162
+ * Debug mode - logs effect execution details.
163
+ */
164
+ debug?: boolean;
165
+ }
166
+ /**
167
+ * Result of useClientEffects hook
168
+ */
169
+ interface UseClientEffectsResult {
170
+ /**
171
+ * Number of effects executed in the last batch.
172
+ */
173
+ executedCount: number;
174
+ /**
175
+ * Whether effects are currently being executed.
176
+ */
177
+ executing: boolean;
178
+ /**
179
+ * Manually trigger effect execution.
180
+ * Useful for imperative control.
181
+ */
182
+ execute: (effects: ClientEffect[]) => void;
183
+ }
184
+ /**
185
+ * Execute client effects from server response.
186
+ *
187
+ * This hook automatically executes effects when they change,
188
+ * tracking which effects have been executed to prevent duplicates.
189
+ *
190
+ * @param effects - Array of client effects to execute (from server response)
191
+ * @param options - Configuration including effect implementations
192
+ * @returns Hook result with execution state and manual trigger
193
+ *
194
+ * @example
195
+ * ```typescript
196
+ * function useMyTrait() {
197
+ * const [state, setState] = useState({ pendingEffects: [] });
198
+ * const effectConfig = useClientEffectConfig();
199
+ *
200
+ * useClientEffects(state.pendingEffects, {
201
+ * ...effectConfig,
202
+ * onComplete: () => setState(s => ({ ...s, pendingEffects: [] }))
203
+ * });
204
+ *
205
+ * // ...
206
+ * }
207
+ * ```
208
+ */
209
+ declare function useClientEffects(effects: ClientEffect[] | undefined, options: UseClientEffectsOptions): UseClientEffectsResult;
210
+ declare const ClientEffectConfigContext: React.Context<ClientEffectExecutorConfig | null>;
211
+ /**
212
+ * Provider for client effect configuration.
213
+ */
214
+ declare const ClientEffectConfigProvider: React.Provider<ClientEffectExecutorConfig | null>;
215
+ /**
216
+ * Hook to get the client effect configuration from context.
217
+ *
218
+ * @throws Error if used outside of ClientEffectConfigProvider
219
+ *
220
+ * @example
221
+ * ```typescript
222
+ * function MyTraitHook() {
223
+ * const effectConfig = useClientEffectConfig();
224
+ *
225
+ * useClientEffects(pendingEffects, {
226
+ * ...effectConfig,
227
+ * onComplete: () => clearPendingEffects()
228
+ * });
229
+ * }
230
+ * ```
231
+ */
232
+ declare function useClientEffectConfig(): ClientEffectExecutorConfig;
233
+ /**
234
+ * Hook to get client effect configuration, returning null if not available.
235
+ * Use this for optional integration where effects may not be configured.
236
+ */
237
+ declare function useClientEffectConfigOptional(): ClientEffectExecutorConfig | null;
238
+
239
+ /**
240
+ * Data Resolver
241
+ *
242
+ * Resolves entity data for pattern rendering.
243
+ * Supports multiple data sources with priority:
244
+ * 1. Server-provided data (from EventResponse.data)
245
+ * 2. Entity store (Builder in-memory mock data)
246
+ * 3. Empty array (fallback)
247
+ *
248
+ * Used by both Builder's PatternRenderer and compiled shell's UISlotRenderer.
249
+ *
250
+ * @packageDocumentation
251
+ */
252
+
253
+ /**
254
+ * Resolve entity data from available sources.
255
+ *
256
+ * Priority:
257
+ * 1. fetchedData (from server response) - highest priority
258
+ * 2. entityStore (Builder mock data)
259
+ * 3. Empty array (fallback)
260
+ *
261
+ * @param entityName - Name of the entity to resolve data for
262
+ * @param context - Data context with available sources
263
+ * @returns Resolved data with loading state
264
+ *
265
+ * @example
266
+ * ```typescript
267
+ * const { data, loading } = resolveEntityData('Task', {
268
+ * fetchedData: response.data,
269
+ * entityStore: mockStore
270
+ * });
271
+ * ```
272
+ */
273
+ declare function resolveEntityData(entityName: string, context: DataContext): DataResolution;
274
+ /**
275
+ * Resolve entity data with query filtering.
276
+ *
277
+ * Applies query singleton filters if available.
278
+ *
279
+ * @param entityName - Name of the entity
280
+ * @param queryRef - Optional query reference for filtering
281
+ * @param context - Data context
282
+ * @returns Filtered resolved data
283
+ */
284
+ declare function resolveEntityDataWithQuery(entityName: string, queryRef: string | undefined, context: DataContext): DataResolution;
285
+ /**
286
+ * Get a single entity record by ID.
287
+ */
288
+ declare function resolveEntityById(entityName: string, id: string | number, context: DataContext): EntityRow | null;
289
+ /**
290
+ * Check if any entities exist for a given entity name.
291
+ */
292
+ declare function hasEntities(entityName: string, context: DataContext): boolean;
293
+
294
+ /**
295
+ * Slot Definitions
296
+ *
297
+ * Defines the available UI slots and their rendering behavior.
298
+ * Slots are either inline (rendered in the component tree) or
299
+ * portal (rendered to document.body via React Portal).
300
+ *
301
+ * @packageDocumentation
302
+ */
303
+
304
+ /**
305
+ * Definitions for all available UI slots.
306
+ *
307
+ * Inline slots render within the component hierarchy.
308
+ * Portal slots render to document.body, breaking out of overflow containers.
309
+ */
310
+ declare const SLOT_DEFINITIONS: Partial<Record<UISlot, SlotDefinition>> & Record<'main' | 'sidebar' | 'modal' | 'drawer' | 'overlay' | 'center' | 'toast' | 'hud-top' | 'hud-bottom' | 'floating', SlotDefinition>;
311
+ /**
312
+ * Get the slot definition for a slot name.
313
+ */
314
+ declare function getSlotDefinition(slot: UISlot): SlotDefinition | undefined;
315
+ /**
316
+ * Check if a slot is a portal slot.
317
+ */
318
+ declare function isPortalSlot(slot: string): boolean;
319
+ /**
320
+ * Get all inline slots.
321
+ */
322
+ declare function getInlineSlots(): UISlot[];
323
+ /**
324
+ * All valid slot names.
325
+ */
326
+ declare const ALL_SLOTS: UISlot[];
327
+
328
+ /**
329
+ * Pattern Resolver Initialization
330
+ *
331
+ * Loads pattern registry and component mapping from @almadar/core/patterns
332
+ * and initializes the pattern resolver at app startup.
333
+ *
334
+ * @packageDocumentation
335
+ */
336
+ /**
337
+ * Initialize the pattern resolver with shared pattern data.
338
+ * Must be called once at app startup before any pattern rendering.
339
+ * @returns The number of patterns initialized
340
+ */
341
+ declare function initializePatterns(): number;
342
+
343
+ export { ALL_SLOTS, ClientEffect, ClientEffectConfigContext, ClientEffectConfigProvider, ClientEffectExecutorConfig, DataContext, DataResolution, MappedPattern, NotifyOptions, SLOT_DEFINITIONS, SlotDefinition, type UseClientEffectsOptions, type UseClientEffectsResult, executeClientEffects, getInlineSlots, getKnownPatterns, getNotifyEffects, getPatternDefinition, getPatternMapping, getPatternsByCategory, getRenderUIEffects, getSlotDefinition, hasEntities, initializePatternResolver, initializePatterns, isKnownPattern, isPortalSlot, parseClientEffect, parseClientEffects, resolveEntityById, resolveEntityData, resolveEntityDataWithQuery, resolvePattern, setComponentMapping, setPatternRegistry, useClientEffectConfig, useClientEffectConfigOptional, useClientEffects };
@@ -1,7 +1,7 @@
1
1
  import { createLogger } from '@almadar/logger';
2
2
  import { createContext, useRef, useCallback, useEffect, useContext, useState } from 'react';
3
3
  export { NavigationProvider, extractRouteParams, findPageByName, findPageByPath, getAllPages, getDefaultPage, matchPath, pathMatches, useActivePage, useInitPayload, useNavigateTo, useNavigation, useNavigationId, useNavigationState } from '@almadar/ui/providers';
4
- import { componentMapping as componentMapping$1, patternsRegistry } from '@almadar/patterns';
4
+ import { componentMapping as componentMapping$1, patternsRegistry } from '@almadar/core/patterns';
5
5
 
6
6
  var __defProp = Object.defineProperty;
7
7
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
@@ -41,7 +41,7 @@ var core$1 = require('@dnd-kit/core');
41
41
  var sortable = require('@dnd-kit/sortable');
42
42
  var utilities = require('@dnd-kit/utilities');
43
43
  var react = require('@xyflow/react');
44
- var patterns = require('@almadar/patterns');
44
+ var patterns = require('@almadar/core/patterns');
45
45
  var runtime = require('@almadar/runtime');
46
46
  var OrbitalServerRuntime = require('@almadar/runtime/OrbitalServerRuntime');
47
47
 
@@ -9273,8 +9273,12 @@ var init_MiniMap = __esm({
9273
9273
  MiniMap.displayName = "MiniMap";
9274
9274
  }
9275
9275
  });
9276
- function useCamera() {
9277
- const cameraRef = React81.useRef({ x: 0, y: 0, zoom: 1 });
9276
+ function useCamera(initial) {
9277
+ const cameraRef = React81.useRef({
9278
+ x: initial?.x ?? 0,
9279
+ y: initial?.y ?? 0,
9280
+ zoom: initial?.zoom ?? 1
9281
+ });
9278
9282
  const targetCameraRef = React81.useRef(null);
9279
9283
  const isDraggingRef = React81.useRef(false);
9280
9284
  const dragDistanceRef = React81.useRef(0);
@@ -9843,9 +9847,17 @@ function Canvas2D({
9843
9847
  scale = 0.4,
9844
9848
  showMinimap = true,
9845
9849
  followTarget,
9850
+ cameraPos,
9846
9851
  bgColor
9847
9852
  }) {
9853
+ const layerSummaries = drawables?.map((d) => {
9854
+ if (!d || typeof d !== "object") return d;
9855
+ const rec = d;
9856
+ return { type: rec.type, itemsLen: Array.isArray(rec.items) ? rec.items.length : void 0, firstItem: Array.isArray(rec.items) ? rec.items[0] : void 0 };
9857
+ });
9858
+ console.error("[debug:Canvas2D] " + JSON.stringify({ projection, scale, cameraMode: camera, cameraPos, drawablesCount: drawables?.length, layerSummaries }));
9848
9859
  const backgroundImage = normalizeBackdrop(backgroundImageRaw);
9860
+ const instanceId = React81.useMemo(() => Math.random().toString(36).slice(2, 8), []);
9849
9861
  const isFree = projection === "free";
9850
9862
  const squareGrid = projection === "flat" || isFree || projection === "side";
9851
9863
  const layout = projection === "side" ? "free" : projection;
@@ -9927,7 +9939,7 @@ function Canvas2D({
9927
9939
  zoomAtPoint,
9928
9940
  screenToWorld,
9929
9941
  lerpToTarget
9930
- } = useCamera();
9942
+ } = useCamera({ zoom: scale });
9931
9943
  const [atlasVersion, setAtlasVersion] = React81.useState(0);
9932
9944
  const bumpAtlas = React81.useCallback(() => setAtlasVersion((v) => v + 1), []);
9933
9945
  const miniMapTiles = React81.useMemo(() => {
@@ -9973,6 +9985,14 @@ function Canvas2D({
9973
9985
  }
9974
9986
  if (!drawables || drawables.length === 0) return;
9975
9987
  const cam = cameraRef.current;
9988
+ if (cameraPos && dragDistance() === 0) {
9989
+ const p = projector.anchorPoint(cameraPos, "center");
9990
+ cam.x = p.x - viewportSize.width / 2;
9991
+ cam.y = p.y - viewportSize.height / 2;
9992
+ }
9993
+ const containerRect = containerRef.current?.getBoundingClientRect();
9994
+ const canvasRect = canvas.getBoundingClientRect();
9995
+ console.error("[debug:Canvas2D:draw:" + instanceId + "] " + JSON.stringify({ viewportSize, baseOffsetX, cam: { x: cam.x, y: cam.y, zoom: cam.zoom }, cameraPos, containerRect: containerRect ? { width: containerRect.width, height: containerRect.height } : null, canvasRect: canvasRect ? { width: canvasRect.width, height: canvasRect.height } : null }));
9976
9996
  const painter = createWebPainter(ctx, bumpAtlas);
9977
9997
  painter.save();
9978
9998
  painter.translate(viewportSize.width / 2, viewportSize.height / 2);
@@ -10243,6 +10263,7 @@ function Canvas({
10243
10263
  keyMap,
10244
10264
  keyUpMap
10245
10265
  }) {
10266
+ console.error("[debug:Canvas] " + JSON.stringify({ mode, drawablesCount: drawables?.length, projection, camera }));
10246
10267
  const zoom = camera?.zoom;
10247
10268
  if (mode === "3d") {
10248
10269
  const props3d = {
@@ -10282,6 +10303,7 @@ function Canvas({
10282
10303
  camera: to2DCamera(camera?.mode),
10283
10304
  ...zoom !== void 0 ? { scale: zoom } : {},
10284
10305
  ...camera?.target !== void 0 ? { followTarget: camera.target } : {},
10306
+ ...camera?.pos !== void 0 ? { cameraPos: camera.pos } : {},
10285
10307
  showMinimap,
10286
10308
  backgroundImage,
10287
10309
  ...backgroundColor !== void 0 ? { bgColor: backgroundColor } : {},
@@ -43696,7 +43718,7 @@ function SlotContentRenderer({
43696
43718
  const childrenConfig = content.props.children;
43697
43719
  const isSingleChild = typeof childrenConfig === "string" || typeof childrenConfig === "object" && childrenConfig !== null && !Array.isArray(childrenConfig) && "type" in childrenConfig;
43698
43720
  const hasChildren = PATTERNS_WITH_CHILDREN.has(content.pattern) || Array.isArray(childrenConfig) && childrenConfig.length > 0 || isSingleChild;
43699
- const isDrawHost = patterns.getPatternDefinition(content.pattern)?.drawHost === true;
43721
+ const isDrawHost = patterns.isDrawHostPattern(content.pattern);
43700
43722
  const myPath = patternPath ?? "root";
43701
43723
  const renderedChildren = hasChildren && !isDrawHost ? renderPatternChildren(childrenConfig, onDismiss, content.id, myPath, content.sourceTrait, {
43702
43724
  slot: content.slot,
@@ -44267,6 +44289,14 @@ function effectsCallOp(effects, ops) {
44267
44289
  }
44268
44290
  return false;
44269
44291
  }
44292
+ function classifySharedTick(tick) {
44293
+ const writes = effectsCallOp(tick.effects, SHARED_ENTITY_WRITE_OPS);
44294
+ const renders = effectsCallOp(tick.effects, SHARED_ENTITY_RENDER_OPS);
44295
+ if (writes && renders) return "both";
44296
+ if (writes) return "writer";
44297
+ if (renders) return "renderer";
44298
+ return "neither";
44299
+ }
44270
44300
  function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
44271
44301
  return (scratch) => {
44272
44302
  const traitName = binding.trait.name;
@@ -44276,7 +44306,7 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
44276
44306
  const writes = [];
44277
44307
  const ctx = evaluator.createMinimalContext(scratchEntity, {}, currentState);
44278
44308
  const declaredDefaults = runtime.collectDeclaredConfigDefaults(binding.trait);
44279
- const callSiteConfig = binding.config;
44309
+ const callSiteConfig = getBindingConfig(binding);
44280
44310
  if (declaredDefaults || callSiteConfig) {
44281
44311
  ctx.config = { ...declaredDefaults ?? {}, ...callSiteConfig ?? {} };
44282
44312
  }
@@ -44298,7 +44328,25 @@ function createSharedEntityWriter(binding, tick, traitStatesRef, emit) {
44298
44328
  return writes;
44299
44329
  };
44300
44330
  }
44331
+ function getBindingConfig(binding) {
44332
+ const raw = binding.config;
44333
+ const normalized = runtime.normalizeCallSiteConfigToValues(raw);
44334
+ console.log("[debug:getBindingConfig]", binding.trait.name, "raw keys=", raw ? Object.keys(raw) : "undefined", "has tiles=", raw ? "tiles" in raw : false);
44335
+ return normalized;
44336
+ }
44337
+ function evalFieldDefault(value) {
44338
+ if (!Array.isArray(value) || value.length === 0) return value;
44339
+ const head = value[0];
44340
+ const isSExpr = typeof head === "string" && (head.includes("/") || head === "let" || head === "if" || head === "lambda");
44341
+ if (!isSExpr) return value;
44342
+ try {
44343
+ return evaluator.evaluate(value, evaluator.createMinimalContext({}, {}, ""));
44344
+ } catch {
44345
+ return value;
44346
+ }
44347
+ }
44301
44348
  function useTraitStateMachine(traitBindings, uiSlots, options) {
44349
+ console.log("[debug:useTraitStateMachine] start, traitBindings count=", traitBindings.length, "names=", traitBindings.map((b) => b.trait.name).join(","));
44302
44350
  const eventBus = useEventBus();
44303
44351
  const { entities } = providers.useEntitySchema();
44304
44352
  const traitConfigsByName = options?.traitConfigsByName;
@@ -44318,7 +44366,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44318
44366
  let defaults;
44319
44367
  for (const field of entityDef.fields) {
44320
44368
  if (field.default !== void 0) {
44321
- (defaults ?? (defaults = {}))[field.name] = field.default;
44369
+ const evaluated = evalFieldDefault(field.default);
44370
+ if (field.name === "tiles") {
44371
+ console.log(`[debug:seed] ${linkedEntityName}.tiles seed type=`, typeof evaluated, Array.isArray(evaluated) ? "len=" + evaluated?.length : "", "head=", Array.isArray(evaluated) && evaluated.length > 0 ? JSON.stringify(evaluated[0]).slice(0, 80) : "n/a");
44372
+ }
44373
+ (defaults ?? (defaults = {}))[field.name] = evaluated;
44322
44374
  }
44323
44375
  }
44324
44376
  group = { storeKey, entityName: linkedEntityName, writerBindings: [], renderBindings: [], defaults };
@@ -44331,7 +44383,10 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44331
44383
  return groups;
44332
44384
  }, [traitBindings, entities, orbitalsByTrait]);
44333
44385
  for (const group of sharedGroups.values()) {
44334
- if (group.defaults) sharedEntityStore.seed(group.storeKey, group.defaults);
44386
+ if (group.defaults) {
44387
+ sharedEntityStore.seed(group.storeKey, group.defaults);
44388
+ console.log("[debug:shared-seed]", group.storeKey, "writers=", group.writerBindings.map((b) => b.trait.name).join(","), "renderers=", group.renderBindings.map((b) => b.trait.name).join(","), "defaults.tiles=", Array.isArray(group.defaults.tiles) ? group.defaults.tiles.length : group.defaults.tiles);
44389
+ }
44335
44390
  }
44336
44391
  const sharedKeyByTraitNameRef = React81.useRef(/* @__PURE__ */ new Map());
44337
44392
  React81.useEffect(() => {
@@ -44341,12 +44396,13 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44341
44396
  for (const binding of group.renderBindings) map.set(binding.trait.name, group.storeKey);
44342
44397
  }
44343
44398
  sharedKeyByTraitNameRef.current = map;
44399
+ console.log("[debug:shared-map]", Array.from(map.entries()).map(([k, v]) => `${k}->${v}`).join(","));
44344
44400
  }, [sharedGroups]);
44345
44401
  const manager = React81.useMemo(() => {
44346
44402
  const traitDefs = traitBindings.map(toTraitDefinition);
44347
44403
  const m = new runtime.StateMachineManager(traitDefs);
44348
44404
  for (const binding of traitBindings) {
44349
- const cfg = binding.config ?? traitConfigsByName?.[binding.trait.name];
44405
+ const cfg = getBindingConfig(binding) ?? traitConfigsByName?.[binding.trait.name];
44350
44406
  if (cfg !== void 0) {
44351
44407
  m.setTraitConfig(binding.trait.name, cfg);
44352
44408
  }
@@ -44529,6 +44585,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44529
44585
  const linkedEntity = binding.linkedEntity || "";
44530
44586
  const entityId = payload?.entityId;
44531
44587
  const sharedKey = sharedKeyByTraitNameRef.current.get(traitName);
44588
+ if (traitName === "Hero" || traitName === "Authority") {
44589
+ console.log(`[debug:executeTransitionEffects] ${traitName} sharedKey=`, sharedKey, "store tiles=", sharedKey ? sharedEntityStore.getSnapshot(sharedKey).tiles?.length : "n/a");
44590
+ }
44532
44591
  let liveEntity;
44533
44592
  if (sharedKey !== void 0) {
44534
44593
  liveEntity = { ...sharedEntityStore.getSnapshot(sharedKey) };
@@ -44552,6 +44611,13 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44552
44611
  eventBus,
44553
44612
  slotSetter: {
44554
44613
  addPattern: (slot, pattern, props) => {
44614
+ if (traitName === "Hero" && slot === "main" && props && typeof props === "object") {
44615
+ const canvasChild = Array.isArray(props.children) ? props.children[0] : null;
44616
+ const grandChildren = canvasChild && typeof canvasChild === "object" ? canvasChild.children : null;
44617
+ const firstLayer = Array.isArray(grandChildren) && grandChildren.length > 0 ? grandChildren[0] : null;
44618
+ const firstLayerItems = firstLayer && typeof firstLayer === "object" ? firstLayer.items : null;
44619
+ console.log(`[debug:render-ui] ${traitName} slot=${slot} canvasChild=`, canvasChild ? canvasChild.type : "none", "firstLayerItems=", Array.isArray(firstLayerItems) ? firstLayerItems.length : firstLayerItems);
44620
+ }
44555
44621
  const existing = pendingSlots.get(slot) || [];
44556
44622
  existing.push({ pattern, props: props || {} });
44557
44623
  pendingSlots.set(slot, existing);
@@ -44583,7 +44649,7 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44583
44649
  state: previousState
44584
44650
  };
44585
44651
  const sharedDeclared = runtime.collectDeclaredConfigDefaults(binding.trait);
44586
- const sharedCallSite = binding.config;
44652
+ const sharedCallSite = getBindingConfig(binding);
44587
44653
  if (sharedDeclared || sharedCallSite) {
44588
44654
  sharedBindings.config = {
44589
44655
  ...sharedDeclared ?? {},
@@ -44634,13 +44700,16 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44634
44700
  state: previousState
44635
44701
  };
44636
44702
  const declaredDefaults = runtime.collectDeclaredConfigDefaults(binding.trait);
44637
- const callSiteConfig = binding.config;
44703
+ const callSiteConfig = getBindingConfig(binding);
44638
44704
  if (declaredDefaults || callSiteConfig) {
44639
44705
  bindingCtx.config = {
44640
44706
  ...declaredDefaults ?? {},
44641
44707
  ...callSiteConfig ?? {}
44642
44708
  };
44643
44709
  }
44710
+ if (traitName === "Authority" || traitName === "Hero") {
44711
+ console.log(`[debug:executeTransitionEffects] ${traitName} config tiles type=`, typeof bindingCtx.config?.tiles, Array.isArray(bindingCtx.config?.tiles) ? "len=" + bindingCtx.config?.tiles?.length : "", "keys=", bindingCtx.config ? Object.keys(bindingCtx.config) : "none");
44712
+ }
44644
44713
  const effectContext = {
44645
44714
  traitName,
44646
44715
  state: previousState,
@@ -44657,9 +44726,15 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44657
44726
  baseEmit(event, eventPayload, source);
44658
44727
  }
44659
44728
  };
44729
+ if (traitName === "Hero") {
44730
+ console.log(`[debug:executeTransitionEffects] ${traitName} effects count=${effects.length} hasRenderUI=${typeof handlers.renderUI === "function"} effect heads=${effects.map((e) => Array.isArray(e) ? String(e[0]) : "??").join(",")}`);
44731
+ }
44660
44732
  const executor = new runtime.EffectExecutor({ handlers: trackingHandlers, bindings: bindingCtx, context: effectContext });
44661
44733
  try {
44662
44734
  await executor.executeAll(effects);
44735
+ if (traitName === "Authority" || traitName === "Hero") {
44736
+ console.log(`[debug:executeTransitionEffects] ${traitName} after executeAll liveEntity.tiles type=`, typeof liveEntity.tiles, Array.isArray(liveEntity.tiles) ? "len=" + liveEntity.tiles?.length : "", "firstTilePos=", Array.isArray(liveEntity.tiles) && liveEntity.tiles.length > 0 ? JSON.stringify(liveEntity.tiles[0]).slice(0, 120) : "n/a");
44737
+ }
44663
44738
  if (sharedKey !== void 0) {
44664
44739
  sharedEntityStore.commit(sharedKey, liveEntity);
44665
44740
  }
@@ -44710,8 +44785,9 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44710
44785
  payload: {},
44711
44786
  state: currentState
44712
44787
  };
44713
- if (binding.config) {
44714
- guardCtx.config = binding.config;
44788
+ const bindingCfg = getBindingConfig(binding);
44789
+ if (bindingCfg) {
44790
+ guardCtx.config = bindingCfg;
44715
44791
  }
44716
44792
  const passed = evaluator.evaluateGuard(
44717
44793
  tick.guard,
@@ -44738,12 +44814,14 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44738
44814
  }, [eventBus]);
44739
44815
  React81.useEffect(() => {
44740
44816
  const scheduler = runtime.createTickScheduler();
44741
- const writerTraitNames = /* @__PURE__ */ new Set();
44817
+ const pureWriterTickKeys = /* @__PURE__ */ new Set();
44742
44818
  for (const group of sharedGroups.values()) {
44743
44819
  const ticksByInterval = /* @__PURE__ */ new Map();
44744
44820
  for (const binding of group.writerBindings) {
44745
- writerTraitNames.add(binding.trait.name);
44746
44821
  for (const tick of binding.trait.ticks ?? []) {
44822
+ const classification = classifySharedTick(tick);
44823
+ if (classification !== "writer") continue;
44824
+ pureWriterTickKeys.add(`${binding.trait.name}::${tick.name}`);
44747
44825
  const intervalKey = String(tick.interval);
44748
44826
  const entries = ticksByInterval.get(intervalKey) ?? [];
44749
44827
  entries.push({ binding, tick });
@@ -44770,8 +44848,11 @@ function useTraitStateMachine(traitBindings, uiSlots, options) {
44770
44848
  }
44771
44849
  }
44772
44850
  for (const binding of traitBindings) {
44773
- if (writerTraitNames.has(binding.trait.name)) continue;
44774
44851
  for (const tick of binding.trait.ticks ?? []) {
44852
+ const sharedKey = sharedKeyByTraitNameRef.current.get(binding.trait.name);
44853
+ if (sharedKey !== void 0 && pureWriterTickKeys.has(`${binding.trait.name}::${tick.name}`)) {
44854
+ continue;
44855
+ }
44775
44856
  if (tick.interval === "frame") {
44776
44857
  scheduler.add(0, () => runTickEffects(tick, binding));
44777
44858
  } else if (typeof tick.interval === "number") {