@almadar/std 16.236.0 → 16.238.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 (583) hide show
  1. package/behaviors/behaviors-registry.json +57874 -1895
  2. package/behaviors/lolo/agent/atoms/std-agent-context.lolo +65 -134
  3. package/behaviors/lolo/agent/atoms/std-agent-memory.lolo +162 -112
  4. package/behaviors/lolo/agent/atoms/std-agent-session.lolo +239 -115
  5. package/behaviors/lolo/agent/atoms/std-agent-tool-loop.lolo +96 -90
  6. package/behaviors/lolo/agent/atoms/std-agent-trace.lolo +133 -40
  7. package/behaviors/lolo/agent/organisms/std-agent-assistant.lolo +137 -0
  8. package/behaviors/lolo/infra/atoms/std-approval-gate.lolo +7 -0
  9. package/behaviors/lolo/infra/atoms/std-cache-aside.lolo +4 -17
  10. package/behaviors/lolo/infra/atoms/std-migration-job.lolo +2 -2
  11. package/behaviors/lolo/infra/atoms/std-notification-preferences.lolo +26 -13
  12. package/behaviors/lolo/infra/atoms/std-permission-matrix.lolo +5 -0
  13. package/behaviors/lolo/ui/avl/atoms/ui-avl-glyph.lolo +90 -0
  14. package/behaviors/lolo/ui/avl/atoms/ui-avl-state-machine.lolo +90 -0
  15. package/behaviors/lolo/ui/avl/atoms/ui-behavior-view.lolo +80 -0
  16. package/behaviors/lolo/ui/avl/atoms/ui-module-card.lolo +80 -0
  17. package/behaviors/lolo/ui/core/atoms/std-billable-hour.lolo +12 -21
  18. package/behaviors/lolo/ui/core/atoms/std-board.lolo +5 -32
  19. package/behaviors/lolo/ui/core/atoms/std-book-reader.lolo +19 -11
  20. package/behaviors/lolo/ui/core/atoms/std-browse.lolo +42 -7
  21. package/behaviors/lolo/ui/core/atoms/std-calendar.lolo +4 -16
  22. package/behaviors/lolo/ui/core/atoms/std-detail-layout.lolo +3 -1
  23. package/behaviors/lolo/ui/core/atoms/std-esign-flow.lolo +21 -13
  24. package/behaviors/lolo/ui/core/atoms/std-esign-request.lolo +12 -2
  25. package/behaviors/lolo/ui/core/atoms/std-event-log.lolo +44 -10
  26. package/behaviors/lolo/ui/core/atoms/std-file-store.lolo +35 -72
  27. package/behaviors/lolo/ui/core/atoms/std-gantt-schedule.lolo +29 -14
  28. package/behaviors/lolo/ui/core/atoms/std-image-upload-multi.lolo +8 -22
  29. package/behaviors/lolo/ui/core/atoms/std-list.lolo +28 -13
  30. package/behaviors/lolo/ui/core/atoms/std-multi-party-flow.lolo +52 -14
  31. package/behaviors/lolo/ui/core/atoms/std-prose.lolo +7 -1
  32. package/behaviors/lolo/ui/core/atoms/std-rating-review.lolo +23 -8
  33. package/behaviors/lolo/ui/core/atoms/std-record-detail.lolo +139 -19
  34. package/behaviors/lolo/ui/core/atoms/std-recurrence.lolo +28 -20
  35. package/behaviors/lolo/ui/core/atoms/std-related.lolo +36 -25
  36. package/behaviors/lolo/ui/core/atoms/std-saved-search.lolo +20 -21
  37. package/behaviors/lolo/ui/core/atoms/std-scoped-list.lolo +143 -0
  38. package/behaviors/lolo/ui/core/atoms/std-selection.lolo +34 -14
  39. package/behaviors/lolo/ui/core/atoms/std-signature-capture.lolo +1 -13
  40. package/behaviors/lolo/ui/core/atoms/std-slide-deck.lolo +2 -2
  41. package/behaviors/lolo/ui/core/atoms/std-step-flow.lolo +4 -16
  42. package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +24 -80
  43. package/behaviors/lolo/ui/core/atoms/std-thread.lolo +92 -31
  44. package/behaviors/lolo/ui/core/atoms/std-tree.lolo +18 -22
  45. package/behaviors/lolo/ui/core/atoms/std-version-history.lolo +43 -83
  46. package/behaviors/lolo/ui/core/atoms/std-vote.lolo +2 -39
  47. package/behaviors/lolo/ui/core/atoms/std-wizard.lolo +20 -10
  48. package/behaviors/lolo/ui/core/atoms/ui-animated-graphic.lolo +90 -0
  49. package/behaviors/lolo/ui/core/atoms/ui-animated-reveal.lolo +90 -0
  50. package/behaviors/lolo/ui/core/atoms/ui-aside.lolo +90 -0
  51. package/behaviors/lolo/ui/core/atoms/ui-atlas-image.lolo +16 -0
  52. package/behaviors/lolo/ui/core/atoms/ui-atlas-panel.lolo +16 -0
  53. package/behaviors/lolo/ui/core/atoms/ui-avatar.lolo +91 -1
  54. package/behaviors/lolo/ui/core/atoms/ui-badge.lolo +90 -0
  55. package/behaviors/lolo/ui/core/atoms/ui-box.lolo +98 -13
  56. package/behaviors/lolo/ui/core/atoms/ui-button.lolo +90 -0
  57. package/behaviors/lolo/ui/core/atoms/ui-card.lolo +91 -1
  58. package/behaviors/lolo/ui/core/atoms/ui-center.lolo +90 -0
  59. package/behaviors/lolo/ui/core/atoms/ui-checkbox.lolo +112 -0
  60. package/behaviors/lolo/ui/core/atoms/ui-confetti-effect.lolo +90 -0
  61. package/behaviors/lolo/ui/core/atoms/ui-day-cell.lolo +90 -0
  62. package/behaviors/lolo/ui/core/atoms/ui-dialog.lolo +90 -0
  63. package/behaviors/lolo/ui/core/atoms/ui-divider.lolo +90 -0
  64. package/behaviors/lolo/ui/core/atoms/ui-filter-pill.lolo +90 -0
  65. package/behaviors/lolo/ui/core/atoms/ui-flip-container.lolo +90 -0
  66. package/behaviors/lolo/ui/core/atoms/ui-game-icon.lolo +90 -0
  67. package/behaviors/lolo/ui/core/atoms/ui-hstack.lolo +90 -10
  68. package/behaviors/lolo/ui/core/atoms/ui-icon.lolo +90 -0
  69. package/behaviors/lolo/ui/core/atoms/ui-image.lolo +90 -0
  70. package/behaviors/lolo/ui/core/atoms/ui-infinite-scroll-sentinel.lolo +90 -0
  71. package/behaviors/lolo/ui/core/atoms/ui-input.lolo +11 -1
  72. package/behaviors/lolo/ui/core/atoms/ui-label.lolo +91 -1
  73. package/behaviors/lolo/ui/core/atoms/ui-law-reference-tooltip.lolo +90 -0
  74. package/behaviors/lolo/ui/core/atoms/ui-overlay.lolo +90 -0
  75. package/behaviors/lolo/ui/core/atoms/ui-pattern-tile.lolo +90 -0
  76. package/behaviors/lolo/ui/core/atoms/ui-presence.lolo +90 -0
  77. package/behaviors/lolo/ui/core/atoms/ui-progress-bar.lolo +91 -1
  78. package/behaviors/lolo/ui/core/atoms/ui-radio.lolo +106 -0
  79. package/behaviors/lolo/ui/core/atoms/ui-range-slider.lolo +122 -0
  80. package/behaviors/lolo/ui/core/atoms/ui-section-header.lolo +90 -0
  81. package/behaviors/lolo/ui/core/atoms/ui-select.lolo +95 -0
  82. package/behaviors/lolo/ui/core/atoms/ui-spacer.lolo +90 -0
  83. package/behaviors/lolo/ui/core/atoms/ui-sparkline.lolo +90 -0
  84. package/behaviors/lolo/ui/core/atoms/ui-spinner.lolo +90 -0
  85. package/behaviors/lolo/ui/core/atoms/ui-stack.lolo +90 -10
  86. package/behaviors/lolo/ui/core/atoms/ui-status-dot.lolo +90 -0
  87. package/behaviors/lolo/ui/core/atoms/ui-svg-branch.lolo +90 -0
  88. package/behaviors/lolo/ui/core/atoms/ui-svg-connection.lolo +90 -0
  89. package/behaviors/lolo/ui/core/atoms/ui-svg-flow.lolo +90 -0
  90. package/behaviors/lolo/ui/core/atoms/ui-svg-grid.lolo +90 -0
  91. package/behaviors/lolo/ui/core/atoms/ui-svg-lobe.lolo +90 -0
  92. package/behaviors/lolo/ui/core/atoms/ui-svg-mesh.lolo +90 -0
  93. package/behaviors/lolo/ui/core/atoms/ui-svg-morph.lolo +90 -0
  94. package/behaviors/lolo/ui/core/atoms/ui-svg-node.lolo +90 -0
  95. package/behaviors/lolo/ui/core/atoms/ui-svg-pulse.lolo +90 -0
  96. package/behaviors/lolo/ui/core/atoms/ui-svg-ring.lolo +90 -0
  97. package/behaviors/lolo/ui/core/atoms/ui-svg-shield.lolo +90 -0
  98. package/behaviors/lolo/ui/core/atoms/ui-svg-stack.lolo +90 -0
  99. package/behaviors/lolo/ui/core/atoms/ui-switch.lolo +106 -0
  100. package/behaviors/lolo/ui/core/atoms/ui-text-highlight.lolo +122 -0
  101. package/behaviors/lolo/ui/core/atoms/ui-textarea.lolo +100 -0
  102. package/behaviors/lolo/ui/core/atoms/ui-theme-toggle.lolo +90 -0
  103. package/behaviors/lolo/ui/core/atoms/ui-time-slot-cell.lolo +142 -0
  104. package/behaviors/lolo/ui/core/atoms/ui-trend-indicator.lolo +91 -1
  105. package/behaviors/lolo/ui/core/atoms/ui-typewriter-text.lolo +90 -0
  106. package/behaviors/lolo/ui/core/atoms/ui-typography.lolo +96 -6
  107. package/behaviors/lolo/ui/core/atoms/ui-vstack.lolo +90 -10
  108. package/behaviors/lolo/ui/core/molecules/ui-accordion.lolo +90 -0
  109. package/behaviors/lolo/ui/core/molecules/ui-activation-block.lolo +90 -0
  110. package/behaviors/lolo/ui/core/molecules/ui-alert.lolo +95 -0
  111. package/behaviors/lolo/ui/core/molecules/ui-animated-counter.lolo +91 -1
  112. package/behaviors/lolo/ui/core/molecules/ui-bloom-quiz-block.lolo +90 -0
  113. package/behaviors/lolo/ui/core/molecules/ui-branching-logic-builder.lolo +90 -0
  114. package/behaviors/lolo/ui/core/molecules/ui-breadcrumb.lolo +90 -0
  115. package/behaviors/lolo/ui/core/molecules/ui-calendar-grid.lolo +122 -0
  116. package/behaviors/lolo/ui/core/molecules/ui-carousel.lolo +90 -0
  117. package/behaviors/lolo/ui/core/molecules/ui-change-list.lolo +90 -0
  118. package/behaviors/lolo/ui/core/molecules/ui-chart-legend.lolo +90 -0
  119. package/behaviors/lolo/ui/core/molecules/ui-chart.lolo +93 -3
  120. package/behaviors/lolo/ui/core/molecules/ui-code-block.lolo +202 -0
  121. package/behaviors/lolo/ui/core/molecules/ui-command-palette.lolo +110 -4
  122. package/behaviors/lolo/ui/core/molecules/ui-commit-row.lolo +123 -1
  123. package/behaviors/lolo/ui/core/molecules/ui-confirm-dialog.lolo +90 -0
  124. package/behaviors/lolo/ui/core/molecules/ui-connection-block.lolo +90 -0
  125. package/behaviors/lolo/ui/core/molecules/ui-container.lolo +92 -2
  126. package/behaviors/lolo/ui/core/molecules/ui-content-renderer.lolo +97 -7
  127. package/behaviors/lolo/ui/core/molecules/ui-data-grid.lolo +144 -4
  128. package/behaviors/lolo/ui/core/molecules/ui-data-list.lolo +132 -3
  129. package/behaviors/lolo/ui/core/molecules/ui-date-range-picker.lolo +109 -3
  130. package/behaviors/lolo/ui/core/molecules/ui-date-range-selector.lolo +90 -0
  131. package/behaviors/lolo/ui/core/molecules/ui-doc-breadcrumb.lolo +90 -0
  132. package/behaviors/lolo/ui/core/molecules/ui-doc-pagination.lolo +90 -0
  133. package/behaviors/lolo/ui/core/molecules/ui-doc-search.lolo +90 -0
  134. package/behaviors/lolo/ui/core/molecules/ui-doc-sidebar.lolo +90 -0
  135. package/behaviors/lolo/ui/core/molecules/ui-doc-toc.lolo +90 -0
  136. package/behaviors/lolo/ui/core/molecules/ui-document-details.lolo +139 -0
  137. package/behaviors/lolo/ui/core/molecules/ui-document-panel.lolo +122 -0
  138. package/behaviors/lolo/ui/core/molecules/ui-document-viewer.lolo +90 -0
  139. package/behaviors/lolo/ui/core/molecules/ui-drawer.lolo +90 -0
  140. package/behaviors/lolo/ui/core/molecules/ui-edge-decoration.lolo +10 -0
  141. package/behaviors/lolo/ui/core/molecules/ui-emoji-picker.lolo +91 -1
  142. package/behaviors/lolo/ui/core/molecules/ui-empty-state.lolo +91 -1
  143. package/behaviors/lolo/ui/core/molecules/ui-error-boundary.lolo +10 -0
  144. package/behaviors/lolo/ui/core/molecules/ui-error-state.lolo +90 -0
  145. package/behaviors/lolo/ui/core/molecules/ui-feature-card.lolo +91 -1
  146. package/behaviors/lolo/ui/core/molecules/ui-feature-grid.lolo +90 -0
  147. package/behaviors/lolo/ui/core/molecules/ui-file-tree.lolo +90 -0
  148. package/behaviors/lolo/ui/core/molecules/ui-filter-group.lolo +122 -0
  149. package/behaviors/lolo/ui/core/molecules/ui-flex.lolo +90 -0
  150. package/behaviors/lolo/ui/core/molecules/ui-flip-card.lolo +90 -0
  151. package/behaviors/lolo/ui/core/molecules/ui-floating-action-button.lolo +91 -1
  152. package/behaviors/lolo/ui/core/molecules/ui-floating-toolbar.lolo +90 -0
  153. package/behaviors/lolo/ui/core/molecules/ui-form-actions.lolo +90 -0
  154. package/behaviors/lolo/ui/core/molecules/ui-form-field.lolo +90 -0
  155. package/behaviors/lolo/ui/core/molecules/ui-form-layout.lolo +96 -6
  156. package/behaviors/lolo/ui/core/molecules/ui-form-section-header.lolo +90 -0
  157. package/behaviors/lolo/ui/core/molecules/ui-fx-overlay.lolo +90 -0
  158. package/behaviors/lolo/ui/core/molecules/ui-gantt.lolo +131 -1
  159. package/behaviors/lolo/ui/core/molecules/ui-geometric-pattern.lolo +10 -0
  160. package/behaviors/lolo/ui/core/molecules/ui-gradient-divider.lolo +90 -0
  161. package/behaviors/lolo/ui/core/molecules/ui-graph-canvas.lolo +95 -0
  162. package/behaviors/lolo/ui/core/molecules/ui-graph-view.lolo +90 -0
  163. package/behaviors/lolo/ui/core/molecules/ui-grid.lolo +95 -5
  164. package/behaviors/lolo/ui/core/molecules/ui-header.lolo +90 -0
  165. package/behaviors/lolo/ui/core/molecules/ui-icon-button.lolo +90 -0
  166. package/behaviors/lolo/ui/core/molecules/ui-import-preview-tree.lolo +93 -2
  167. package/behaviors/lolo/ui/core/molecules/ui-import-progress.lolo +90 -0
  168. package/behaviors/lolo/ui/core/molecules/ui-import-source-picker.lolo +90 -0
  169. package/behaviors/lolo/ui/core/molecules/ui-input-group.lolo +91 -1
  170. package/behaviors/lolo/ui/core/molecules/ui-jazari-state-machine.lolo +90 -0
  171. package/behaviors/lolo/ui/core/molecules/ui-lightbox.lolo +90 -0
  172. package/behaviors/lolo/ui/core/molecules/ui-likert-scale.lolo +91 -1
  173. package/behaviors/lolo/ui/core/molecules/ui-line-chart.lolo +90 -0
  174. package/behaviors/lolo/ui/core/molecules/ui-loading-state.lolo +90 -0
  175. package/behaviors/lolo/ui/core/molecules/ui-map-view.lolo +90 -0
  176. package/behaviors/lolo/ui/core/molecules/ui-markdown-content.lolo +90 -0
  177. package/behaviors/lolo/ui/core/molecules/ui-matrix-question.lolo +90 -0
  178. package/behaviors/lolo/ui/core/molecules/ui-menu.lolo +91 -0
  179. package/behaviors/lolo/ui/core/molecules/ui-meter.lolo +90 -0
  180. package/behaviors/lolo/ui/core/molecules/ui-modal.lolo +90 -0
  181. package/behaviors/lolo/ui/core/molecules/ui-navigation.lolo +90 -0
  182. package/behaviors/lolo/ui/core/molecules/ui-notification.lolo +91 -1
  183. package/behaviors/lolo/ui/core/molecules/ui-number-stepper.lolo +122 -0
  184. package/behaviors/lolo/ui/core/molecules/ui-option-constraint-group.lolo +90 -0
  185. package/behaviors/lolo/ui/core/molecules/ui-orbital-visualization.lolo +90 -0
  186. package/behaviors/lolo/ui/core/molecules/ui-page-header.lolo +90 -0
  187. package/behaviors/lolo/ui/core/molecules/ui-page-transition.lolo +90 -0
  188. package/behaviors/lolo/ui/core/molecules/ui-pagination.lolo +106 -0
  189. package/behaviors/lolo/ui/core/molecules/ui-popover.lolo +106 -0
  190. package/behaviors/lolo/ui/core/molecules/ui-positioned-canvas.lolo +122 -0
  191. package/behaviors/lolo/ui/core/molecules/ui-progress-dots.lolo +90 -0
  192. package/behaviors/lolo/ui/core/molecules/ui-pull-to-refresh.lolo +90 -0
  193. package/behaviors/lolo/ui/core/molecules/ui-qr-scanner.lolo +90 -0
  194. package/behaviors/lolo/ui/core/molecules/ui-quiz-block.lolo +90 -0
  195. package/behaviors/lolo/ui/core/molecules/ui-reflection-block.lolo +90 -0
  196. package/behaviors/lolo/ui/core/molecules/ui-relation-select.lolo +106 -0
  197. package/behaviors/lolo/ui/core/molecules/ui-repeatable-form-section.lolo +90 -0
  198. package/behaviors/lolo/ui/core/molecules/ui-reply-tree.lolo +122 -0
  199. package/behaviors/lolo/ui/core/molecules/ui-rich-text-editor.lolo +106 -0
  200. package/behaviors/lolo/ui/core/molecules/ui-scaled-diagram.lolo +90 -0
  201. package/behaviors/lolo/ui/core/molecules/ui-search-input.lolo +106 -0
  202. package/behaviors/lolo/ui/core/molecules/ui-section.lolo +90 -0
  203. package/behaviors/lolo/ui/core/molecules/ui-side-panel.lolo +90 -0
  204. package/behaviors/lolo/ui/core/molecules/ui-sidebar.lolo +106 -0
  205. package/behaviors/lolo/ui/core/molecules/ui-signature-pad.lolo +90 -0
  206. package/behaviors/lolo/ui/core/molecules/ui-simple-grid.lolo +90 -0
  207. package/behaviors/lolo/ui/core/molecules/ui-skeleton.lolo +93 -3
  208. package/behaviors/lolo/ui/core/molecules/ui-social-proof.lolo +90 -0
  209. package/behaviors/lolo/ui/core/molecules/ui-sortable-list.lolo +122 -0
  210. package/behaviors/lolo/ui/core/molecules/ui-split.lolo +90 -0
  211. package/behaviors/lolo/ui/core/molecules/ui-star-rating.lolo +122 -0
  212. package/behaviors/lolo/ui/core/molecules/ui-stat-display.lolo +90 -0
  213. package/behaviors/lolo/ui/core/molecules/ui-swipeable-row.lolo +138 -0
  214. package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +140 -3
  215. package/behaviors/lolo/ui/core/molecules/ui-tabs.lolo +90 -0
  216. package/behaviors/lolo/ui/core/molecules/ui-tag-input.lolo +90 -0
  217. package/behaviors/lolo/ui/core/molecules/ui-tooltip.lolo +90 -0
  218. package/behaviors/lolo/ui/core/molecules/ui-top-nav-item.lolo +90 -0
  219. package/behaviors/lolo/ui/core/molecules/ui-upload-drop-zone.lolo +90 -0
  220. package/behaviors/lolo/ui/core/molecules/ui-version-diff.lolo +90 -0
  221. package/behaviors/lolo/ui/core/molecules/ui-violation-alert.lolo +91 -1
  222. package/behaviors/lolo/ui/core/molecules/ui-vote-stack.lolo +91 -1
  223. package/behaviors/lolo/ui/core/molecules/ui-wizard-container.lolo +90 -0
  224. package/behaviors/lolo/ui/core/molecules/ui-wizard-navigation.lolo +138 -0
  225. package/behaviors/lolo/ui/core/molecules/ui-wizard-progress.lolo +90 -0
  226. package/behaviors/lolo/ui/core/organisms/ui-chat-bar.lolo +91 -1
  227. package/behaviors/lolo/ui/core/organisms/ui-code-runner-panel.lolo +90 -0
  228. package/behaviors/lolo/ui/core/organisms/ui-dashboard-grid.lolo +91 -1
  229. package/behaviors/lolo/ui/core/organisms/ui-detail-panel.lolo +355 -6
  230. package/behaviors/lolo/ui/core/organisms/ui-dock-layout.lolo +90 -0
  231. package/behaviors/lolo/ui/core/organisms/ui-drawer-slot.lolo +10 -0
  232. package/behaviors/lolo/ui/core/organisms/ui-entity-cards.lolo +152 -8
  233. package/behaviors/lolo/ui/core/organisms/ui-entity-list.lolo +162 -7
  234. package/behaviors/lolo/ui/core/organisms/ui-entity-table.lolo +142 -1
  235. package/behaviors/lolo/ui/core/organisms/ui-form-section.lolo +141 -1
  236. package/behaviors/lolo/ui/core/organisms/ui-form.lolo +141 -1
  237. package/behaviors/lolo/ui/core/organisms/ui-master-detail-layout.lolo +90 -0
  238. package/behaviors/lolo/ui/core/organisms/ui-master-detail.lolo +123 -1
  239. package/behaviors/lolo/ui/core/organisms/ui-media-gallery.lolo +137 -1
  240. package/behaviors/lolo/ui/core/organisms/ui-modal-slot.lolo +10 -0
  241. package/behaviors/lolo/ui/core/organisms/ui-runtime-debugger.lolo +90 -0
  242. package/behaviors/lolo/ui/core/organisms/ui-segment-renderer.lolo +90 -0
  243. package/behaviors/lolo/ui/core/organisms/ui-split-pane.lolo +106 -0
  244. package/behaviors/lolo/ui/core/organisms/ui-stat-card.lolo +130 -2
  245. package/behaviors/lolo/ui/core/organisms/ui-state-machine-view.lolo +92 -2
  246. package/behaviors/lolo/ui/core/organisms/ui-subagent-trace-panel.lolo +91 -1
  247. package/behaviors/lolo/ui/core/organisms/ui-tabbed-container.lolo +90 -0
  248. package/behaviors/lolo/ui/core/organisms/ui-timeline.lolo +152 -2
  249. package/behaviors/lolo/ui/core/organisms/ui-toast-slot.lolo +91 -1
  250. package/behaviors/lolo/ui/core/templates/ui-auth-layout.lolo +81 -1
  251. package/behaviors/lolo/ui/core/templates/ui-counter-template.lolo +92 -2
  252. package/behaviors/lolo/ui/core/templates/ui-dashboard-layout.lolo +1 -1
  253. package/behaviors/lolo/ui/core/templates/ui-generic-app-template.lolo +90 -0
  254. package/behaviors/lolo/ui/game/.hand-authored.json +2 -2
  255. package/behaviors/lolo/ui/game/atoms/ui-action-palette.lolo +90 -0
  256. package/behaviors/lolo/ui/game/atoms/ui-action-tile.lolo +91 -1
  257. package/behaviors/lolo/ui/game/atoms/ui-canvas-2d.lolo +95 -0
  258. package/behaviors/lolo/ui/game/atoms/ui-canvas.lolo +91 -1
  259. package/behaviors/lolo/ui/game/atoms/ui-choice-button.lolo +91 -1
  260. package/behaviors/lolo/ui/game/atoms/ui-control-button.lolo +90 -0
  261. package/behaviors/lolo/ui/game/atoms/ui-control-grid.lolo +90 -0
  262. package/behaviors/lolo/ui/game/atoms/ui-dialogue-bubble.lolo +92 -2
  263. package/behaviors/lolo/ui/game/atoms/ui-draw-mesh.lolo +1 -1
  264. package/behaviors/lolo/ui/game/atoms/ui-draw-shape.lolo +2 -2
  265. package/behaviors/lolo/ui/game/atoms/ui-draw-sprite.lolo +1 -1
  266. package/behaviors/lolo/ui/game/atoms/ui-draw-text.lolo +3 -3
  267. package/behaviors/lolo/ui/game/atoms/ui-game-audio-toggle.lolo +90 -0
  268. package/behaviors/lolo/ui/game/atoms/ui-game-hud.lolo +90 -0
  269. package/behaviors/lolo/ui/game/atoms/ui-game-menu.lolo +91 -1
  270. package/behaviors/lolo/ui/game/atoms/ui-health-bar.lolo +90 -0
  271. package/behaviors/lolo/ui/game/atoms/ui-score-display.lolo +91 -1
  272. package/behaviors/lolo/ui/game/atoms/ui-sequence-bar.lolo +90 -0
  273. package/behaviors/lolo/ui/game/atoms/ui-stat-badge.lolo +90 -0
  274. package/behaviors/lolo/ui/game/atoms/ui-state-graph.lolo +90 -0
  275. package/behaviors/lolo/ui/game/atoms/ui-state-json-view.lolo +90 -0
  276. package/behaviors/lolo/ui/game/atoms/ui-trait-slot.lolo +123 -1
  277. package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +90 -0
  278. package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +106 -0
  279. package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +106 -0
  280. package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +106 -0
  281. package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +112 -0
  282. package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +106 -0
  283. package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +106 -0
  284. package/behaviors/lolo-behavior-contracts.json +1 -1
  285. package/behaviors/registry/agent/atoms/std-agent-context.orb +299 -826
  286. package/behaviors/registry/agent/atoms/std-agent-memory.orb +858 -643
  287. package/behaviors/registry/agent/atoms/std-agent-session.orb +833 -770
  288. package/behaviors/registry/agent/atoms/std-agent-tool-loop.orb +505 -707
  289. package/behaviors/registry/agent/atoms/std-agent-trace.orb +680 -195
  290. package/behaviors/registry/agent/organisms/std-agent-assistant.orb +594 -0
  291. package/behaviors/registry/factory-signatures.json +1 -1
  292. package/behaviors/registry/infra/atoms/std-approval-gate.orb +70 -0
  293. package/behaviors/registry/infra/atoms/std-cache-aside.orb +172 -299
  294. package/behaviors/registry/infra/atoms/std-migration-job.orb +26 -1
  295. package/behaviors/registry/infra/atoms/std-notification-preferences.orb +57 -14
  296. package/behaviors/registry/infra/atoms/std-permission-matrix.orb +9 -0
  297. package/behaviors/registry/ui/avl/atoms/ui-avl-glyph.orb +236 -0
  298. package/behaviors/registry/ui/avl/atoms/ui-avl-state-machine.orb +236 -0
  299. package/behaviors/registry/ui/avl/atoms/ui-behavior-view.orb +215 -0
  300. package/behaviors/registry/ui/avl/atoms/ui-module-card.orb +215 -0
  301. package/behaviors/registry/ui/core/atoms/std-billable-hour.orb +26 -18
  302. package/behaviors/registry/ui/core/atoms/std-board.orb +10 -34
  303. package/behaviors/registry/ui/core/atoms/std-book-reader.orb +32 -13
  304. package/behaviors/registry/ui/core/atoms/std-browse.orb +312 -20
  305. package/behaviors/registry/ui/core/atoms/std-calendar.orb +8 -19
  306. package/behaviors/registry/ui/core/atoms/std-detail-layout.orb +3 -1
  307. package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +48 -11
  308. package/behaviors/registry/ui/core/atoms/std-esign-request.orb +28 -4
  309. package/behaviors/registry/ui/core/atoms/std-event-log.orb +86 -14
  310. package/behaviors/registry/ui/core/atoms/std-file-store.orb +68 -59
  311. package/behaviors/registry/ui/core/atoms/std-gantt-schedule.orb +69 -12
  312. package/behaviors/registry/ui/core/atoms/std-image-upload-multi.orb +16 -16
  313. package/behaviors/registry/ui/core/atoms/std-list.orb +59 -11
  314. package/behaviors/registry/ui/core/atoms/std-multi-party-flow.orb +115 -14
  315. package/behaviors/registry/ui/core/atoms/std-prose.orb +14 -1
  316. package/behaviors/registry/ui/core/atoms/std-rating-review.orb +79 -8
  317. package/behaviors/registry/ui/core/atoms/std-record-detail.orb +693 -69
  318. package/behaviors/registry/ui/core/atoms/std-recurrence.orb +112 -28
  319. package/behaviors/registry/ui/core/atoms/std-related.orb +82 -21
  320. package/behaviors/registry/ui/core/atoms/std-saved-search.orb +82 -18
  321. package/behaviors/registry/ui/core/atoms/std-scoped-list.orb +993 -0
  322. package/behaviors/registry/ui/core/atoms/std-selection.orb +101 -12
  323. package/behaviors/registry/ui/core/atoms/std-signature-capture.orb +2 -16
  324. package/behaviors/registry/ui/core/atoms/std-slide-deck.orb +2 -0
  325. package/behaviors/registry/ui/core/atoms/std-step-flow.orb +8 -8
  326. package/behaviors/registry/ui/core/atoms/std-tag-taxonomy.orb +48 -64
  327. package/behaviors/registry/ui/core/atoms/std-thread.orb +863 -141
  328. package/behaviors/registry/ui/core/atoms/std-tree.orb +40 -18
  329. package/behaviors/registry/ui/core/atoms/std-version-history.orb +87 -69
  330. package/behaviors/registry/ui/core/atoms/std-vote.orb +4 -54
  331. package/behaviors/registry/ui/core/atoms/std-wizard.orb +70 -10
  332. package/behaviors/registry/ui/core/atoms/ui-animated-graphic.orb +236 -0
  333. package/behaviors/registry/ui/core/atoms/ui-animated-reveal.orb +236 -0
  334. package/behaviors/registry/ui/core/atoms/ui-aside.orb +236 -0
  335. package/behaviors/registry/ui/core/atoms/ui-atlas-image.orb +29 -0
  336. package/behaviors/registry/ui/core/atoms/ui-atlas-panel.orb +29 -0
  337. package/behaviors/registry/ui/core/atoms/ui-avatar.orb +236 -1
  338. package/behaviors/registry/ui/core/atoms/ui-badge.orb +236 -0
  339. package/behaviors/registry/ui/core/atoms/ui-box.orb +231 -10
  340. package/behaviors/registry/ui/core/atoms/ui-button.orb +236 -0
  341. package/behaviors/registry/ui/core/atoms/ui-card.orb +236 -1
  342. package/behaviors/registry/ui/core/atoms/ui-center.orb +236 -0
  343. package/behaviors/registry/ui/core/atoms/ui-checkbox.orb +260 -0
  344. package/behaviors/registry/ui/core/atoms/ui-confetti-effect.orb +236 -0
  345. package/behaviors/registry/ui/core/atoms/ui-day-cell.orb +236 -0
  346. package/behaviors/registry/ui/core/atoms/ui-dialog.orb +236 -0
  347. package/behaviors/registry/ui/core/atoms/ui-divider.orb +236 -0
  348. package/behaviors/registry/ui/core/atoms/ui-filter-pill.orb +236 -0
  349. package/behaviors/registry/ui/core/atoms/ui-flip-container.orb +236 -0
  350. package/behaviors/registry/ui/core/atoms/ui-game-icon.orb +236 -0
  351. package/behaviors/registry/ui/core/atoms/ui-hstack.orb +225 -3
  352. package/behaviors/registry/ui/core/atoms/ui-icon.orb +236 -0
  353. package/behaviors/registry/ui/core/atoms/ui-image.orb +236 -0
  354. package/behaviors/registry/ui/core/atoms/ui-infinite-scroll-sentinel.orb +236 -0
  355. package/behaviors/registry/ui/core/atoms/ui-input.orb +21 -1
  356. package/behaviors/registry/ui/core/atoms/ui-label.orb +237 -1
  357. package/behaviors/registry/ui/core/atoms/ui-law-reference-tooltip.orb +236 -0
  358. package/behaviors/registry/ui/core/atoms/ui-overlay.orb +236 -0
  359. package/behaviors/registry/ui/core/atoms/ui-pattern-tile.orb +236 -0
  360. package/behaviors/registry/ui/core/atoms/ui-presence.orb +236 -0
  361. package/behaviors/registry/ui/core/atoms/ui-progress-bar.orb +236 -1
  362. package/behaviors/registry/ui/core/atoms/ui-radio.orb +252 -0
  363. package/behaviors/registry/ui/core/atoms/ui-range-slider.orb +268 -0
  364. package/behaviors/registry/ui/core/atoms/ui-section-header.orb +236 -0
  365. package/behaviors/registry/ui/core/atoms/ui-select.orb +243 -0
  366. package/behaviors/registry/ui/core/atoms/ui-spacer.orb +236 -0
  367. package/behaviors/registry/ui/core/atoms/ui-sparkline.orb +236 -0
  368. package/behaviors/registry/ui/core/atoms/ui-spinner.orb +236 -0
  369. package/behaviors/registry/ui/core/atoms/ui-stack.orb +225 -3
  370. package/behaviors/registry/ui/core/atoms/ui-status-dot.orb +236 -0
  371. package/behaviors/registry/ui/core/atoms/ui-svg-branch.orb +236 -0
  372. package/behaviors/registry/ui/core/atoms/ui-svg-connection.orb +236 -0
  373. package/behaviors/registry/ui/core/atoms/ui-svg-flow.orb +236 -0
  374. package/behaviors/registry/ui/core/atoms/ui-svg-grid.orb +236 -0
  375. package/behaviors/registry/ui/core/atoms/ui-svg-lobe.orb +236 -0
  376. package/behaviors/registry/ui/core/atoms/ui-svg-mesh.orb +236 -0
  377. package/behaviors/registry/ui/core/atoms/ui-svg-morph.orb +236 -0
  378. package/behaviors/registry/ui/core/atoms/ui-svg-node.orb +236 -0
  379. package/behaviors/registry/ui/core/atoms/ui-svg-pulse.orb +236 -0
  380. package/behaviors/registry/ui/core/atoms/ui-svg-ring.orb +236 -0
  381. package/behaviors/registry/ui/core/atoms/ui-svg-shield.orb +236 -0
  382. package/behaviors/registry/ui/core/atoms/ui-svg-stack.orb +236 -0
  383. package/behaviors/registry/ui/core/atoms/ui-switch.orb +252 -0
  384. package/behaviors/registry/ui/core/atoms/ui-text-highlight.orb +268 -0
  385. package/behaviors/registry/ui/core/atoms/ui-textarea.orb +250 -0
  386. package/behaviors/registry/ui/core/atoms/ui-theme-toggle.orb +236 -0
  387. package/behaviors/registry/ui/core/atoms/ui-time-slot-cell.orb +384 -0
  388. package/behaviors/registry/ui/core/atoms/ui-trend-indicator.orb +236 -1
  389. package/behaviors/registry/ui/core/atoms/ui-typewriter-text.orb +236 -0
  390. package/behaviors/registry/ui/core/atoms/ui-typography.orb +236 -6
  391. package/behaviors/registry/ui/core/atoms/ui-vstack.orb +225 -3
  392. package/behaviors/registry/ui/core/molecules/ui-accordion.orb +236 -0
  393. package/behaviors/registry/ui/core/molecules/ui-activation-block.orb +236 -0
  394. package/behaviors/registry/ui/core/molecules/ui-alert.orb +243 -0
  395. package/behaviors/registry/ui/core/molecules/ui-animated-counter.orb +237 -1
  396. package/behaviors/registry/ui/core/molecules/ui-bloom-quiz-block.orb +236 -0
  397. package/behaviors/registry/ui/core/molecules/ui-branching-logic-builder.orb +236 -0
  398. package/behaviors/registry/ui/core/molecules/ui-breadcrumb.orb +236 -0
  399. package/behaviors/registry/ui/core/molecules/ui-calendar-grid.orb +268 -0
  400. package/behaviors/registry/ui/core/molecules/ui-carousel.orb +236 -0
  401. package/behaviors/registry/ui/core/molecules/ui-change-list.orb +236 -0
  402. package/behaviors/registry/ui/core/molecules/ui-chart-legend.orb +236 -0
  403. package/behaviors/registry/ui/core/molecules/ui-chart.orb +236 -3
  404. package/behaviors/registry/ui/core/molecules/ui-code-block.orb +348 -0
  405. package/behaviors/registry/ui/core/molecules/ui-command-palette.orb +254 -4
  406. package/behaviors/registry/ui/core/molecules/ui-commit-row.orb +268 -1
  407. package/behaviors/registry/ui/core/molecules/ui-confirm-dialog.orb +236 -0
  408. package/behaviors/registry/ui/core/molecules/ui-connection-block.orb +236 -0
  409. package/behaviors/registry/ui/core/molecules/ui-container.orb +236 -2
  410. package/behaviors/registry/ui/core/molecules/ui-content-renderer.orb +241 -7
  411. package/behaviors/registry/ui/core/molecules/ui-data-grid.orb +387 -2
  412. package/behaviors/registry/ui/core/molecules/ui-data-list.orb +351 -1
  413. package/behaviors/registry/ui/core/molecules/ui-date-range-picker.orb +253 -3
  414. package/behaviors/registry/ui/core/molecules/ui-date-range-selector.orb +236 -0
  415. package/behaviors/registry/ui/core/molecules/ui-doc-breadcrumb.orb +236 -0
  416. package/behaviors/registry/ui/core/molecules/ui-doc-pagination.orb +236 -0
  417. package/behaviors/registry/ui/core/molecules/ui-doc-search.orb +236 -0
  418. package/behaviors/registry/ui/core/molecules/ui-doc-sidebar.orb +236 -0
  419. package/behaviors/registry/ui/core/molecules/ui-doc-toc.orb +236 -0
  420. package/behaviors/registry/ui/core/molecules/ui-document-details.orb +296 -0
  421. package/behaviors/registry/ui/core/molecules/ui-document-panel.orb +268 -0
  422. package/behaviors/registry/ui/core/molecules/ui-document-viewer.orb +236 -0
  423. package/behaviors/registry/ui/core/molecules/ui-drawer.orb +236 -0
  424. package/behaviors/registry/ui/core/molecules/ui-edge-decoration.orb +21 -0
  425. package/behaviors/registry/ui/core/molecules/ui-emoji-picker.orb +236 -1
  426. package/behaviors/registry/ui/core/molecules/ui-empty-state.orb +236 -1
  427. package/behaviors/registry/ui/core/molecules/ui-error-boundary.orb +21 -0
  428. package/behaviors/registry/ui/core/molecules/ui-error-state.orb +236 -0
  429. package/behaviors/registry/ui/core/molecules/ui-feature-card.orb +236 -1
  430. package/behaviors/registry/ui/core/molecules/ui-feature-grid.orb +236 -0
  431. package/behaviors/registry/ui/core/molecules/ui-file-tree.orb +236 -0
  432. package/behaviors/registry/ui/core/molecules/ui-filter-group.orb +268 -0
  433. package/behaviors/registry/ui/core/molecules/ui-flex.orb +236 -0
  434. package/behaviors/registry/ui/core/molecules/ui-flip-card.orb +236 -0
  435. package/behaviors/registry/ui/core/molecules/ui-floating-action-button.orb +236 -1
  436. package/behaviors/registry/ui/core/molecules/ui-floating-toolbar.orb +236 -0
  437. package/behaviors/registry/ui/core/molecules/ui-form-actions.orb +236 -0
  438. package/behaviors/registry/ui/core/molecules/ui-form-field.orb +236 -0
  439. package/behaviors/registry/ui/core/molecules/ui-form-layout.orb +241 -6
  440. package/behaviors/registry/ui/core/molecules/ui-form-section-header.orb +236 -0
  441. package/behaviors/registry/ui/core/molecules/ui-fx-overlay.orb +236 -0
  442. package/behaviors/registry/ui/core/molecules/ui-gantt.orb +296 -1
  443. package/behaviors/registry/ui/core/molecules/ui-geometric-pattern.orb +21 -0
  444. package/behaviors/registry/ui/core/molecules/ui-gradient-divider.orb +236 -0
  445. package/behaviors/registry/ui/core/molecules/ui-graph-canvas.orb +243 -0
  446. package/behaviors/registry/ui/core/molecules/ui-graph-view.orb +236 -0
  447. package/behaviors/registry/ui/core/molecules/ui-grid.orb +236 -5
  448. package/behaviors/registry/ui/core/molecules/ui-header.orb +236 -0
  449. package/behaviors/registry/ui/core/molecules/ui-icon-button.orb +236 -0
  450. package/behaviors/registry/ui/core/molecules/ui-import-preview-tree.orb +245 -2
  451. package/behaviors/registry/ui/core/molecules/ui-import-progress.orb +236 -0
  452. package/behaviors/registry/ui/core/molecules/ui-import-source-picker.orb +236 -0
  453. package/behaviors/registry/ui/core/molecules/ui-input-group.orb +236 -1
  454. package/behaviors/registry/ui/core/molecules/ui-jazari-state-machine.orb +236 -0
  455. package/behaviors/registry/ui/core/molecules/ui-lightbox.orb +236 -0
  456. package/behaviors/registry/ui/core/molecules/ui-likert-scale.orb +237 -1
  457. package/behaviors/registry/ui/core/molecules/ui-line-chart.orb +236 -0
  458. package/behaviors/registry/ui/core/molecules/ui-loading-state.orb +236 -0
  459. package/behaviors/registry/ui/core/molecules/ui-map-view.orb +236 -0
  460. package/behaviors/registry/ui/core/molecules/ui-markdown-content.orb +236 -0
  461. package/behaviors/registry/ui/core/molecules/ui-matrix-question.orb +236 -0
  462. package/behaviors/registry/ui/core/molecules/ui-menu.orb +253 -0
  463. package/behaviors/registry/ui/core/molecules/ui-meter.orb +236 -0
  464. package/behaviors/registry/ui/core/molecules/ui-modal.orb +236 -0
  465. package/behaviors/registry/ui/core/molecules/ui-navigation.orb +236 -0
  466. package/behaviors/registry/ui/core/molecules/ui-notification.orb +237 -1
  467. package/behaviors/registry/ui/core/molecules/ui-number-stepper.orb +268 -0
  468. package/behaviors/registry/ui/core/molecules/ui-option-constraint-group.orb +236 -0
  469. package/behaviors/registry/ui/core/molecules/ui-orbital-visualization.orb +236 -0
  470. package/behaviors/registry/ui/core/molecules/ui-page-header.orb +236 -0
  471. package/behaviors/registry/ui/core/molecules/ui-page-transition.orb +236 -0
  472. package/behaviors/registry/ui/core/molecules/ui-pagination.orb +252 -0
  473. package/behaviors/registry/ui/core/molecules/ui-popover.orb +252 -0
  474. package/behaviors/registry/ui/core/molecules/ui-positioned-canvas.orb +268 -0
  475. package/behaviors/registry/ui/core/molecules/ui-progress-dots.orb +236 -0
  476. package/behaviors/registry/ui/core/molecules/ui-pull-to-refresh.orb +236 -0
  477. package/behaviors/registry/ui/core/molecules/ui-qr-scanner.orb +236 -0
  478. package/behaviors/registry/ui/core/molecules/ui-quiz-block.orb +236 -0
  479. package/behaviors/registry/ui/core/molecules/ui-reflection-block.orb +236 -0
  480. package/behaviors/registry/ui/core/molecules/ui-relation-select.orb +252 -0
  481. package/behaviors/registry/ui/core/molecules/ui-repeatable-form-section.orb +236 -0
  482. package/behaviors/registry/ui/core/molecules/ui-reply-tree.orb +268 -0
  483. package/behaviors/registry/ui/core/molecules/ui-rich-text-editor.orb +252 -0
  484. package/behaviors/registry/ui/core/molecules/ui-scaled-diagram.orb +236 -0
  485. package/behaviors/registry/ui/core/molecules/ui-search-input.orb +252 -0
  486. package/behaviors/registry/ui/core/molecules/ui-section.orb +236 -0
  487. package/behaviors/registry/ui/core/molecules/ui-side-panel.orb +236 -0
  488. package/behaviors/registry/ui/core/molecules/ui-sidebar.orb +252 -0
  489. package/behaviors/registry/ui/core/molecules/ui-signature-pad.orb +236 -0
  490. package/behaviors/registry/ui/core/molecules/ui-simple-grid.orb +236 -0
  491. package/behaviors/registry/ui/core/molecules/ui-skeleton.orb +242 -2
  492. package/behaviors/registry/ui/core/molecules/ui-social-proof.orb +236 -0
  493. package/behaviors/registry/ui/core/molecules/ui-sortable-list.orb +268 -0
  494. package/behaviors/registry/ui/core/molecules/ui-split.orb +236 -0
  495. package/behaviors/registry/ui/core/molecules/ui-star-rating.orb +268 -0
  496. package/behaviors/registry/ui/core/molecules/ui-stat-display.orb +236 -0
  497. package/behaviors/registry/ui/core/molecules/ui-swipeable-row.orb +284 -0
  498. package/behaviors/registry/ui/core/molecules/ui-table-view.orb +425 -3
  499. package/behaviors/registry/ui/core/molecules/ui-tabs.orb +236 -0
  500. package/behaviors/registry/ui/core/molecules/ui-tag-input.orb +236 -0
  501. package/behaviors/registry/ui/core/molecules/ui-tooltip.orb +236 -0
  502. package/behaviors/registry/ui/core/molecules/ui-top-nav-item.orb +236 -0
  503. package/behaviors/registry/ui/core/molecules/ui-upload-drop-zone.orb +236 -0
  504. package/behaviors/registry/ui/core/molecules/ui-version-diff.orb +236 -0
  505. package/behaviors/registry/ui/core/molecules/ui-violation-alert.orb +236 -1
  506. package/behaviors/registry/ui/core/molecules/ui-vote-stack.orb +236 -1
  507. package/behaviors/registry/ui/core/molecules/ui-wizard-container.orb +236 -0
  508. package/behaviors/registry/ui/core/molecules/ui-wizard-navigation.orb +284 -0
  509. package/behaviors/registry/ui/core/molecules/ui-wizard-progress.orb +236 -0
  510. package/behaviors/registry/ui/core/organisms/ui-chat-bar.orb +236 -1
  511. package/behaviors/registry/ui/core/organisms/ui-code-runner-panel.orb +236 -0
  512. package/behaviors/registry/ui/core/organisms/ui-dashboard-grid.orb +236 -1
  513. package/behaviors/registry/ui/core/organisms/ui-detail-panel.orb +1281 -16
  514. package/behaviors/registry/ui/core/organisms/ui-dock-layout.orb +236 -0
  515. package/behaviors/registry/ui/core/organisms/ui-drawer-slot.orb +21 -0
  516. package/behaviors/registry/ui/core/organisms/ui-entity-cards.orb +489 -27
  517. package/behaviors/registry/ui/core/organisms/ui-entity-list.orb +444 -19
  518. package/behaviors/registry/ui/core/organisms/ui-entity-table.orb +410 -0
  519. package/behaviors/registry/ui/core/organisms/ui-form-section.orb +312 -1
  520. package/behaviors/registry/ui/core/organisms/ui-form.orb +312 -1
  521. package/behaviors/registry/ui/core/organisms/ui-master-detail-layout.orb +236 -0
  522. package/behaviors/registry/ui/core/organisms/ui-master-detail.orb +268 -1
  523. package/behaviors/registry/ui/core/organisms/ui-media-gallery.orb +288 -1
  524. package/behaviors/registry/ui/core/organisms/ui-modal-slot.orb +21 -0
  525. package/behaviors/registry/ui/core/organisms/ui-runtime-debugger.orb +236 -0
  526. package/behaviors/registry/ui/core/organisms/ui-segment-renderer.orb +236 -0
  527. package/behaviors/registry/ui/core/organisms/ui-split-pane.orb +252 -0
  528. package/behaviors/registry/ui/core/organisms/ui-stat-card.orb +326 -2
  529. package/behaviors/registry/ui/core/organisms/ui-state-machine-view.orb +236 -2
  530. package/behaviors/registry/ui/core/organisms/ui-subagent-trace-panel.orb +236 -1
  531. package/behaviors/registry/ui/core/organisms/ui-tabbed-container.orb +236 -0
  532. package/behaviors/registry/ui/core/organisms/ui-timeline.orb +306 -5
  533. package/behaviors/registry/ui/core/organisms/ui-toast-slot.orb +236 -1
  534. package/behaviors/registry/ui/core/templates/ui-auth-layout.orb +215 -1
  535. package/behaviors/registry/ui/core/templates/ui-counter-template.orb +236 -2
  536. package/behaviors/registry/ui/core/templates/ui-dashboard-layout.orb +0 -1
  537. package/behaviors/registry/ui/core/templates/ui-generic-app-template.orb +236 -0
  538. package/behaviors/registry/ui/game/atoms/ui-action-palette.orb +236 -0
  539. package/behaviors/registry/ui/game/atoms/ui-action-tile.orb +236 -1
  540. package/behaviors/registry/ui/game/atoms/ui-canvas-2d.orb +243 -0
  541. package/behaviors/registry/ui/game/atoms/ui-canvas.orb +236 -1
  542. package/behaviors/registry/ui/game/atoms/ui-choice-button.orb +237 -1
  543. package/behaviors/registry/ui/game/atoms/ui-control-button.orb +236 -0
  544. package/behaviors/registry/ui/game/atoms/ui-control-grid.orb +236 -0
  545. package/behaviors/registry/ui/game/atoms/ui-dialogue-bubble.orb +237 -2
  546. package/behaviors/registry/ui/game/atoms/ui-draw-mesh.orb +0 -1
  547. package/behaviors/registry/ui/game/atoms/ui-draw-shape.orb +0 -2
  548. package/behaviors/registry/ui/game/atoms/ui-draw-sprite.orb +0 -1
  549. package/behaviors/registry/ui/game/atoms/ui-draw-text.orb +0 -3
  550. package/behaviors/registry/ui/game/atoms/ui-game-audio-toggle.orb +236 -0
  551. package/behaviors/registry/ui/game/atoms/ui-game-hud.orb +236 -0
  552. package/behaviors/registry/ui/game/atoms/ui-game-menu.orb +237 -1
  553. package/behaviors/registry/ui/game/atoms/ui-health-bar.orb +236 -0
  554. package/behaviors/registry/ui/game/atoms/ui-score-display.orb +236 -1
  555. package/behaviors/registry/ui/game/atoms/ui-sequence-bar.orb +236 -0
  556. package/behaviors/registry/ui/game/atoms/ui-stat-badge.orb +236 -0
  557. package/behaviors/registry/ui/game/atoms/ui-state-graph.orb +236 -0
  558. package/behaviors/registry/ui/game/atoms/ui-state-json-view.orb +236 -0
  559. package/behaviors/registry/ui/game/atoms/ui-trait-slot.orb +268 -1
  560. package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +236 -0
  561. package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +252 -0
  562. package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +252 -0
  563. package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +252 -0
  564. package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +260 -0
  565. package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +252 -0
  566. package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +252 -0
  567. package/dist/behaviors/exports-reader.js +15164 -7081
  568. package/dist/behaviors/functions/index.d.ts +4293 -362
  569. package/dist/behaviors/functions/index.js +15134 -7043
  570. package/dist/behaviors/index.d.ts +1 -1
  571. package/dist/behaviors/index.js +15165 -7082
  572. package/dist/behaviors/query.js +15164 -7081
  573. package/dist/behaviors-embeddings.hash.json +3 -3
  574. package/dist/behaviors-embeddings.json +37 -33
  575. package/dist/behaviors-registry.json +57874 -1895
  576. package/dist/index.d.ts +1 -1
  577. package/dist/index.js +15165 -7082
  578. package/dist/knob-embeddings.hash.json +3 -3
  579. package/dist/knob-embeddings.json +14971 -255
  580. package/dist/registry/factory-signatures.json +1 -1
  581. package/package.json +4 -4
  582. package/behaviors/lolo/agent/organisms/std-agent-rabit.lolo +0 -301
  583. package/behaviors/registry/agent/organisms/std-agent-rabit.orb +0 -2181
@@ -58,6 +58,22 @@ orbital AvlStateMachineOrbital {
58
58
  direction: @config.direction
59
59
  showHeader: @config.showHeader
60
60
  className: @config.className
61
+ enter: @config.enter
62
+ enterDelay: @config.enterDelay
63
+ aria-label: @config.ariaLabel
64
+ aria-labelledby: @config.ariaLabelledby
65
+ aria-describedby: @config.ariaDescribedby
66
+ aria-live: @config.ariaLive
67
+ aria-current: @config.ariaCurrent
68
+ aria-pressed: @config.ariaPressed
69
+ aria-expanded: @config.ariaExpanded
70
+ aria-selected: @config.ariaSelected
71
+ aria-hidden: @config.ariaHidden
72
+ aria-busy: @config.ariaBusy
73
+ role: @config.role
74
+ lang: @config.lang
75
+ dir: @config.dir
76
+ tabIndex: @config.tabIndex
61
77
  type: avl-state-machine
62
78
  })
63
79
  }
@@ -137,6 +153,80 @@ orbital AvlStateMachineOrbital {
137
153
  @label "Class Name"
138
154
  @description "className prop"
139
155
  @tier "presentation"
156
+ enter : "none" | "fade" | "rise" | "scale" | "slide"
157
+ @label "Enter"
158
+ @description "How this element animates in when it mounts (theme-styled); overrides the theme's default slot entry. `none` opts out."
159
+ @tier "presentation"
160
+ enterDelay : number
161
+ @label "Enter Delay"
162
+ @description "Stagger step for the entry: waits this many `--motion-enter-stagger` steps before animating."
163
+ @tier "presentation"
164
+ ariaLabel : string
165
+ @label "Aria-label"
166
+ @description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
167
+ @synonyms "aria-label"
168
+ @tier "presentation"
169
+ ariaLabelledby : string
170
+ @label "Aria-labelledby"
171
+ @description "Id of the element whose text names this one."
172
+ @synonyms "aria-labelledby"
173
+ @tier "presentation"
174
+ ariaDescribedby : string
175
+ @label "Aria-describedby"
176
+ @description "Id of the element whose text describes this one (help text, error)."
177
+ @synonyms "aria-describedby"
178
+ @tier "presentation"
179
+ ariaLive : "off" | "polite" | "assertive"
180
+ @label "Aria-live"
181
+ @description "Announce changes to this region: polite waits for a pause, assertive interrupts."
182
+ @synonyms "aria-live"
183
+ @tier "presentation"
184
+ ariaCurrent : "page" | "step" | "location" | "date" | "time" | "true" | "false"
185
+ @label "Aria-current"
186
+ @description "Marks the current item in a set: the current page, step, location, date or time."
187
+ @synonyms "aria-current"
188
+ @tier "presentation"
189
+ ariaPressed : "true" | "false" | "mixed"
190
+ @label "Aria-pressed"
191
+ @description "Toggle-button state."
192
+ @synonyms "aria-pressed"
193
+ @tier "presentation"
194
+ ariaExpanded : boolean
195
+ @label "Aria-expanded"
196
+ @description "Whether the element it controls is expanded."
197
+ @synonyms "aria-expanded"
198
+ @tier "presentation"
199
+ ariaSelected : boolean
200
+ @label "Aria-selected"
201
+ @description "Whether this item is selected (tabs, options, grid cells)."
202
+ @synonyms "aria-selected"
203
+ @tier "presentation"
204
+ ariaHidden : boolean
205
+ @label "Aria-hidden"
206
+ @description "Hide from assistive technology (decorative content only)."
207
+ @synonyms "aria-hidden"
208
+ @tier "presentation"
209
+ ariaBusy : boolean
210
+ @label "Aria-busy"
211
+ @description "This region is updating; assistive technology waits before announcing it."
212
+ @synonyms "aria-busy"
213
+ @tier "presentation"
214
+ role : "alert" | "alertdialog" | "application" | "article" | "banner" | "blockquote" | "button" | "caption" | "cell" | "checkbox" | "code" | "columnheader" | "combobox" | "complementary" | "contentinfo" | "definition" | "deletion" | "dialog" | "document" | "emphasis" | "feed" | "figure" | "form" | "generic" | "grid" | "gridcell" | "group" | "heading" | "img" | "insertion" | "link" | "list" | "listbox" | "listitem" | "log" | "main" | "marquee" | "math" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "meter" | "navigation" | "none" | "note" | "option" | "paragraph" | "presentation" | "progressbar" | "radio" | "radiogroup" | "region" | "row" | "rowgroup" | "rowheader" | "scrollbar" | "search" | "searchbox" | "separator" | "slider" | "spinbutton" | "status" | "strong" | "subscript" | "superscript" | "switch" | "tab" | "table" | "tablist" | "tabpanel" | "term" | "textbox" | "time" | "timer" | "toolbar" | "tooltip" | "tree" | "treegrid" | "treeitem"
215
+ @label "Role"
216
+ @description "WAI-ARIA role when the element's native semantics don't describe it."
217
+ @tier "presentation"
218
+ lang : string
219
+ @label "Lang"
220
+ @description "Language of this element's content (BCP 47, e.g. ar, sl, en)."
221
+ @tier "presentation"
222
+ dir : "ltr" | "rtl" | "auto"
223
+ @label "Dir"
224
+ @description "Text direction of this element's content."
225
+ @tier "presentation"
226
+ tabIndex : number
227
+ @label "Tab Index"
228
+ @description "0 puts the element in the Tab order; -1 makes it focusable only programmatically."
229
+ @tier "presentation"
140
230
  }
141
231
  }
142
232
 
@@ -72,6 +72,20 @@ orbital BehaviorViewOrbital {
72
72
  INIT -> idle
73
73
  (render-ui main {
74
74
  data: @config.data
75
+ aria-label: @config.ariaLabel
76
+ aria-labelledby: @config.ariaLabelledby
77
+ aria-describedby: @config.ariaDescribedby
78
+ aria-live: @config.ariaLive
79
+ aria-current: @config.ariaCurrent
80
+ aria-pressed: @config.ariaPressed
81
+ aria-expanded: @config.ariaExpanded
82
+ aria-selected: @config.ariaSelected
83
+ aria-hidden: @config.ariaHidden
84
+ aria-busy: @config.ariaBusy
85
+ role: @config.role
86
+ lang: @config.lang
87
+ dir: @config.dir
88
+ tabIndex: @config.tabIndex
75
89
  type: behavior-view
76
90
  })
77
91
  }
@@ -81,6 +95,72 @@ orbital BehaviorViewOrbital {
81
95
  @label "Data"
82
96
  @description "The orbital to summarize."
83
97
  @tier "presentation"
98
+ ariaLabel : string
99
+ @label "Aria-label"
100
+ @description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
101
+ @synonyms "aria-label"
102
+ @tier "presentation"
103
+ ariaLabelledby : string
104
+ @label "Aria-labelledby"
105
+ @description "Id of the element whose text names this one."
106
+ @synonyms "aria-labelledby"
107
+ @tier "presentation"
108
+ ariaDescribedby : string
109
+ @label "Aria-describedby"
110
+ @description "Id of the element whose text describes this one (help text, error)."
111
+ @synonyms "aria-describedby"
112
+ @tier "presentation"
113
+ ariaLive : "off" | "polite" | "assertive"
114
+ @label "Aria-live"
115
+ @description "Announce changes to this region: polite waits for a pause, assertive interrupts."
116
+ @synonyms "aria-live"
117
+ @tier "presentation"
118
+ ariaCurrent : "page" | "step" | "location" | "date" | "time" | "true" | "false"
119
+ @label "Aria-current"
120
+ @description "Marks the current item in a set: the current page, step, location, date or time."
121
+ @synonyms "aria-current"
122
+ @tier "presentation"
123
+ ariaPressed : "true" | "false" | "mixed"
124
+ @label "Aria-pressed"
125
+ @description "Toggle-button state."
126
+ @synonyms "aria-pressed"
127
+ @tier "presentation"
128
+ ariaExpanded : boolean
129
+ @label "Aria-expanded"
130
+ @description "Whether the element it controls is expanded."
131
+ @synonyms "aria-expanded"
132
+ @tier "presentation"
133
+ ariaSelected : boolean
134
+ @label "Aria-selected"
135
+ @description "Whether this item is selected (tabs, options, grid cells)."
136
+ @synonyms "aria-selected"
137
+ @tier "presentation"
138
+ ariaHidden : boolean
139
+ @label "Aria-hidden"
140
+ @description "Hide from assistive technology (decorative content only)."
141
+ @synonyms "aria-hidden"
142
+ @tier "presentation"
143
+ ariaBusy : boolean
144
+ @label "Aria-busy"
145
+ @description "This region is updating; assistive technology waits before announcing it."
146
+ @synonyms "aria-busy"
147
+ @tier "presentation"
148
+ role : "alert" | "alertdialog" | "application" | "article" | "banner" | "blockquote" | "button" | "caption" | "cell" | "checkbox" | "code" | "columnheader" | "combobox" | "complementary" | "contentinfo" | "definition" | "deletion" | "dialog" | "document" | "emphasis" | "feed" | "figure" | "form" | "generic" | "grid" | "gridcell" | "group" | "heading" | "img" | "insertion" | "link" | "list" | "listbox" | "listitem" | "log" | "main" | "marquee" | "math" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "meter" | "navigation" | "none" | "note" | "option" | "paragraph" | "presentation" | "progressbar" | "radio" | "radiogroup" | "region" | "row" | "rowgroup" | "rowheader" | "scrollbar" | "search" | "searchbox" | "separator" | "slider" | "spinbutton" | "status" | "strong" | "subscript" | "superscript" | "switch" | "tab" | "table" | "tablist" | "tabpanel" | "term" | "textbox" | "time" | "timer" | "toolbar" | "tooltip" | "tree" | "treegrid" | "treeitem"
149
+ @label "Role"
150
+ @description "WAI-ARIA role when the element's native semantics don't describe it."
151
+ @tier "presentation"
152
+ lang : string
153
+ @label "Lang"
154
+ @description "Language of this element's content (BCP 47, e.g. ar, sl, en)."
155
+ @tier "presentation"
156
+ dir : "ltr" | "rtl" | "auto"
157
+ @label "Dir"
158
+ @description "Text direction of this element's content."
159
+ @tier "presentation"
160
+ tabIndex : number
161
+ @label "Tab Index"
162
+ @description "0 puts the element in the Tab order; -1 makes it focusable only programmatically."
163
+ @tier "presentation"
84
164
  }
85
165
  }
86
166
 
@@ -73,6 +73,20 @@ orbital ModuleCardOrbital {
73
73
  INIT -> idle
74
74
  (render-ui main {
75
75
  data: @config.data
76
+ aria-label: @config.ariaLabel
77
+ aria-labelledby: @config.ariaLabelledby
78
+ aria-describedby: @config.ariaDescribedby
79
+ aria-live: @config.ariaLive
80
+ aria-current: @config.ariaCurrent
81
+ aria-pressed: @config.ariaPressed
82
+ aria-expanded: @config.ariaExpanded
83
+ aria-selected: @config.ariaSelected
84
+ aria-hidden: @config.ariaHidden
85
+ aria-busy: @config.ariaBusy
86
+ role: @config.role
87
+ lang: @config.lang
88
+ dir: @config.dir
89
+ tabIndex: @config.tabIndex
76
90
  type: module-card
77
91
  })
78
92
  }
@@ -82,6 +96,72 @@ orbital ModuleCardOrbital {
82
96
  @label "Data"
83
97
  @description "The orbital to summarize."
84
98
  @tier "presentation"
99
+ ariaLabel : string
100
+ @label "Aria-label"
101
+ @description "Accessible name read by screen readers when the visible text is missing or not descriptive (e.g. an icon-only control)."
102
+ @synonyms "aria-label"
103
+ @tier "presentation"
104
+ ariaLabelledby : string
105
+ @label "Aria-labelledby"
106
+ @description "Id of the element whose text names this one."
107
+ @synonyms "aria-labelledby"
108
+ @tier "presentation"
109
+ ariaDescribedby : string
110
+ @label "Aria-describedby"
111
+ @description "Id of the element whose text describes this one (help text, error)."
112
+ @synonyms "aria-describedby"
113
+ @tier "presentation"
114
+ ariaLive : "off" | "polite" | "assertive"
115
+ @label "Aria-live"
116
+ @description "Announce changes to this region: polite waits for a pause, assertive interrupts."
117
+ @synonyms "aria-live"
118
+ @tier "presentation"
119
+ ariaCurrent : "page" | "step" | "location" | "date" | "time" | "true" | "false"
120
+ @label "Aria-current"
121
+ @description "Marks the current item in a set: the current page, step, location, date or time."
122
+ @synonyms "aria-current"
123
+ @tier "presentation"
124
+ ariaPressed : "true" | "false" | "mixed"
125
+ @label "Aria-pressed"
126
+ @description "Toggle-button state."
127
+ @synonyms "aria-pressed"
128
+ @tier "presentation"
129
+ ariaExpanded : boolean
130
+ @label "Aria-expanded"
131
+ @description "Whether the element it controls is expanded."
132
+ @synonyms "aria-expanded"
133
+ @tier "presentation"
134
+ ariaSelected : boolean
135
+ @label "Aria-selected"
136
+ @description "Whether this item is selected (tabs, options, grid cells)."
137
+ @synonyms "aria-selected"
138
+ @tier "presentation"
139
+ ariaHidden : boolean
140
+ @label "Aria-hidden"
141
+ @description "Hide from assistive technology (decorative content only)."
142
+ @synonyms "aria-hidden"
143
+ @tier "presentation"
144
+ ariaBusy : boolean
145
+ @label "Aria-busy"
146
+ @description "This region is updating; assistive technology waits before announcing it."
147
+ @synonyms "aria-busy"
148
+ @tier "presentation"
149
+ role : "alert" | "alertdialog" | "application" | "article" | "banner" | "blockquote" | "button" | "caption" | "cell" | "checkbox" | "code" | "columnheader" | "combobox" | "complementary" | "contentinfo" | "definition" | "deletion" | "dialog" | "document" | "emphasis" | "feed" | "figure" | "form" | "generic" | "grid" | "gridcell" | "group" | "heading" | "img" | "insertion" | "link" | "list" | "listbox" | "listitem" | "log" | "main" | "marquee" | "math" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "meter" | "navigation" | "none" | "note" | "option" | "paragraph" | "presentation" | "progressbar" | "radio" | "radiogroup" | "region" | "row" | "rowgroup" | "rowheader" | "scrollbar" | "search" | "searchbox" | "separator" | "slider" | "spinbutton" | "status" | "strong" | "subscript" | "superscript" | "switch" | "tab" | "table" | "tablist" | "tabpanel" | "term" | "textbox" | "time" | "timer" | "toolbar" | "tooltip" | "tree" | "treegrid" | "treeitem"
150
+ @label "Role"
151
+ @description "WAI-ARIA role when the element's native semantics don't describe it."
152
+ @tier "presentation"
153
+ lang : string
154
+ @label "Lang"
155
+ @description "Language of this element's content (BCP 47, e.g. ar, sl, en)."
156
+ @tier "presentation"
157
+ dir : "ltr" | "rtl" | "auto"
158
+ @label "Dir"
159
+ @description "Text direction of this element's content."
160
+ @tier "presentation"
161
+ tabIndex : number
162
+ @label "Tab Index"
163
+ @description "0 puts the element in the Tab order; -1 makes it focusable only programmatically."
164
+ @tier "presentation"
85
165
  }
86
166
  }
87
167
 
@@ -52,17 +52,10 @@ orbital BillableHourOrbital {
52
52
  emit: { failure: BillableHourLoadFailed, success: BillableHourLoaded }
53
53
  })
54
54
  (render-ui main {
55
- align: center
56
- children: [{ type: spinner }, {
57
- color: muted
58
- content: "Loading time entries…"
59
- type: typography
60
- variant: caption
61
- }]
62
- className: py-12
63
- direction: vertical
64
- gap: md
65
55
  type: stack
56
+ direction: vertical
57
+ gap: lg
58
+ children: [{ type: skeleton, variant: header }, { type: skeleton, variant: table, rows: 6 }]
66
59
  })
67
60
  BillableHourLoaded -> browsing
68
61
  (render-ui main {
@@ -239,17 +232,10 @@ orbital BillableHourOrbital {
239
232
  emit: { failure: BillableHourLoadFailed, success: BillableHourLoaded }
240
233
  })
241
234
  (render-ui main {
242
- align: center
243
- children: [{ type: spinner }, {
244
- color: muted
245
- content: "Loading time entries…"
246
- type: typography
247
- variant: caption
248
- }]
249
- className: py-12
250
- direction: vertical
251
- gap: md
252
235
  type: stack
236
+ direction: vertical
237
+ gap: lg
238
+ children: [{ type: skeleton, variant: header }, { type: skeleton, variant: table, rows: 6 }]
253
239
  })
254
240
  INVOICE_HOURS -> loading
255
241
  (set @entity.id ?id)
@@ -294,7 +280,12 @@ orbital BillableHourOrbital {
294
280
  (fetch BillableHour {
295
281
  emit: { failure: BillableHourLoadFailed, success: BillableHourLoaded }
296
282
  })
297
- (render-ui main { size: sm, type: spinner })
283
+ (render-ui main {
284
+ type: stack
285
+ direction: vertical
286
+ gap: lg
287
+ children: [{ type: skeleton, variant: header }, { type: skeleton, variant: table, rows: 6 }]
288
+ })
298
289
  }
299
290
 
300
291
  emits {
@@ -45,10 +45,7 @@ orbital BoardOrbital {
45
45
  emit: { failure: BoardItemsLoadFailed, success: BoardItemsLoaded }
46
46
  include: @config.include
47
47
  })
48
- (render-ui main {
49
- title: "Loading board…"
50
- type: loading-state
51
- })
48
+ (render-ui main { type: skeleton, variant: card })
52
49
  BoardItemsLoaded -> viewing_board
53
50
  (set @entity.boards (array/map @config.columns (fn col {
54
51
  count: (array/len (array/filter ?data (fn item ["=", (object/get @item @config.groupByField), (object/get @col key)])))
@@ -76,10 +73,7 @@ orbital BoardOrbital {
76
73
  emit: { failure: BoardItemsLoadFailed, success: BoardItemsLoaded }
77
74
  include: @config.include
78
75
  })
79
- (render-ui main {
80
- title: "Refreshing board…"
81
- type: loading-state
82
- })
76
+ (render-ui main { type: skeleton, variant: card })
83
77
  ;; Same refresh, different contract: a delete emits { id, deleted }, not
84
78
  ;; the row, so it cannot ride BoardItemsSaved's payload.
85
79
  BoardItemDeleted -> loading
@@ -87,10 +81,6 @@ orbital BoardOrbital {
87
81
  emit: { failure: BoardItemsLoadFailed, success: BoardItemsLoaded }
88
82
  include: @config.include
89
83
  })
90
- (render-ui main {
91
- title: "Refreshing board…"
92
- type: loading-state
93
- })
94
84
  BoardItemsSaveFailed -> error
95
85
  (set @entity.errorMessage ?error)
96
86
  (render-ui main {
@@ -106,10 +96,7 @@ orbital BoardOrbital {
106
96
  emit: { failure: BoardItemsLoadFailed, success: BoardItemsLoaded }
107
97
  include: @config.include
108
98
  })
109
- (render-ui main {
110
- title: "Loading board…"
111
- type: loading-state
112
- })
99
+ (render-ui main { type: skeleton, variant: card })
113
100
  OPEN_CARD -> viewing_card
114
101
  (set @entity.currentId ?id)
115
102
  (set @entity.currentTitle ?title)
@@ -291,10 +278,7 @@ orbital BoardOrbital {
291
278
  emit: { failure: BoardItemsLoadFailed, success: BoardItemsLoaded }
292
279
  include: @config.include
293
280
  })
294
- (render-ui main {
295
- title: "Refreshing board…"
296
- type: loading-state
297
- })
281
+ (render-ui main { type: skeleton, variant: card })
298
282
  MOVE_CARD -> loading
299
283
  (persist update BoardView { id: ?id, stage: ?targetGroup } {
300
284
  emit: { failure: BoardItemsSaveFailed, success: BoardItemsSaved }
@@ -307,10 +291,6 @@ orbital BoardOrbital {
307
291
  (persist delete BoardView ?id {
308
292
  emit: { failure: BoardItemsSaveFailed, success: BoardItemDeleted }
309
293
  })
310
- (render-ui main {
311
- title: "Deleting item…"
312
- type: loading-state
313
- })
314
294
  }
315
295
 
316
296
  state adding {
@@ -318,10 +298,6 @@ orbital BoardOrbital {
318
298
  (persist create BoardView ?data {
319
299
  emit: { failure: BoardItemsSaveFailed, success: BoardItemsSaved }
320
300
  })
321
- (render-ui main {
322
- title: "Saving…"
323
- type: loading-state
324
- })
325
301
  CANCEL_ADD -> viewing_board
326
302
  (render-ui main {
327
303
  title: "Cancelling…"
@@ -331,10 +307,7 @@ orbital BoardOrbital {
331
307
 
332
308
  state error {
333
309
  INIT -> loading
334
- (render-ui main {
335
- title: "Retrying…"
336
- type: loading-state
337
- })
310
+ (render-ui main { type: skeleton, variant: card })
338
311
  }
339
312
 
340
313
  emits {
@@ -258,7 +258,8 @@ orbital BookReaderOrbital {
258
258
  label: (object/get @chapter title "")
259
259
  action: OPEN_CHAPTER
260
260
  actionPayload: { index: @index }
261
- className: (if (== @index @entity.chapterIndex) "text-foreground font-semibold" "")
261
+ aria-current: (if (== @index @entity.chapterIndex) "page" "false")
262
+ className: (if (== @index @entity.chapterIndex) "h-auto justify-start text-start text-foreground font-semibold" "h-auto justify-start text-start")
262
263
  }))
263
264
  }]
264
265
  }, {
@@ -266,16 +267,23 @@ orbital BookReaderOrbital {
266
267
  direction: vertical
267
268
  gap: lg
268
269
  children: [{
269
- type: typography
270
- content: @entity.progressLabel
271
- variant: caption
272
- color: muted
273
- }, {
274
- type: typography
275
- content: @entity.chapterTitle
276
- variant: h2
277
- weight: bold
278
- className: "tracking-tight"
270
+ type: stack
271
+ direction: vertical
272
+ gap: lg
273
+ role: status
274
+ children: [{
275
+ type: typography
276
+ content: @entity.progressLabel
277
+ variant: caption
278
+ color: muted
279
+ }, {
280
+ type: typography
281
+ content: @entity.chapterTitle
282
+ variant: h1
283
+ size: "3xl"
284
+ weight: bold
285
+ className: "tracking-tight"
286
+ }]
279
287
  }, {
280
288
  type: markdown-content
281
289
  content: @entity.chapterContent
@@ -1,8 +1,9 @@
1
1
  app std-browse "2.5.0"
2
2
  "std-browse as a Function — single primitive: data-grid. Owns the fetch + REFETCH (query/filter/page) state machine. Consumers configure fields/imageField/itemActions/cols/gap/variant; the atom renders the grid. Each `fields[]` entry accepts `{ name, label, variant }` plus optional `referenceEntity` + `displayField` to render a foreign-key column as the joined entity's display value (data-grid resolves @list[referenceEntity] at render time when both keys are present). `browseLook` (table default / dense / feed / gallery / master-detail / triage) selects one of six render bodies; dense/feed/gallery were folded in from std-browse-dense/-feed/-gallery (Phase 5.B); master-detail (split record view driven by the guarded VIEW/CLOSE self-transitions) and triage (inbox rows) were folded in 2026-07-26. Consumers retarget by setting browseLook."
3
- type FieldSpec = { name : string!, label : string, variant : h3 | h4 | body | caption | badge | small | progress, icon : string, format : date | currency | number | boolean | percent, key : string, header : string }
3
+ type BadgeColor = "default" | "primary" | "secondary" | "success" | "warning" | "danger" | "error" | "info" | "neutral" | "destructive"
4
+ type FieldSpec = { name : string!, label : string, variant : h3 | h4 | body | caption | badge | small | progress, icon : string, format : date | currency | number | boolean | percent, key : string, header : string, colorMap : Map string BadgeColor, labels : Map string string }
4
5
  type ItemAction = { label : string!, event : event, navigatesTo : string, variant : primary | secondary | ghost | danger, icon : string, roles : [string], when : SExpr }
5
- type ColumnSpec = { key : string!, field : string, header : string, width : string, align : left | center | right, className : string, weight : normal | medium | semibold, format : badge | date | currency | number | percent | boolean, icon : string }
6
+ type ColumnSpec = { key : string!, field : string, header : string, width : string, align : left | center | right, className : string, weight : normal | medium | semibold, format : badge | date | currency | number | percent | boolean, icon : string, colorMap : Map string BadgeColor, labels : Map string string, variant : h3 | h4 }
6
7
  type FilterSpec = { field : string!, label : string, options : [string] }
7
8
  orbital BrowseItemOrbital {
8
9
  type BrowseDetailAction = {
@@ -69,7 +70,11 @@ orbital BrowseItemOrbital {
69
70
  limit: @config.pageSize
70
71
  offset: 0
71
72
  })
72
- (render-ui main { rows: 4, type: skeleton })
73
+ (if ["=", @config.browseLook, gallery]
74
+ (render-ui main { type: skeleton, variant: grid, rows: 6 })
75
+ (if (or ["=", @config.browseLook, feed] ["=", @config.browseLook, master-detail] ["=", @config.browseLook, triage])
76
+ (render-ui main { type: skeleton, variant: list, rows: 6 })
77
+ (render-ui main { type: skeleton, variant: table, rows: 6 })))
73
78
  BrowseItemLoaded -> browsing
74
79
  (if ["=", @config.browseLook, dense]
75
80
  (render-ui main @config.denseBodyContent)
@@ -164,7 +169,11 @@ orbital BrowseItemOrbital {
164
169
  limit: @config.pageSize
165
170
  offset: 0
166
171
  })
167
- (render-ui main { rows: 4, type: skeleton })
172
+ (if ["=", @config.browseLook, gallery]
173
+ (render-ui main { type: skeleton, variant: grid, rows: 6 })
174
+ (if (or ["=", @config.browseLook, feed] ["=", @config.browseLook, master-detail] ["=", @config.browseLook, triage])
175
+ (render-ui main { type: skeleton, variant: list, rows: 6 })
176
+ (render-ui main { type: skeleton, variant: table, rows: 6 })))
168
177
  }
169
178
 
170
179
  emits {
@@ -406,11 +415,32 @@ orbital BrowseItemOrbital {
406
415
  @label "Browse look"
407
416
  @description "Layer 2 visual treatment for the whole browse surface. table = the default data-grid (bodyContent); dense = spreadsheet-style table with toolbar search (denseBodyContent); feed = chronological card stream (feedBodyContent); gallery = image-first responsive card grid (galleryBodyContent); master-detail = record-work split view — dense list left, clicked record's detail right (masterDetailBodyContent); triage = inbox-register compact rows for queue work (triageBodyContent). Selecting a non-table look swaps which body tree renders after rows load; any body may still be overridden directly at the call site for a one-off layout."
408
417
  @tier "presentation"
409
- detailFields : [string] = [name, description, status, createdAt]
418
+ detailFields : [FieldSpec] = [{
419
+ label: Name
420
+ name: name
421
+ variant: h4
422
+ }, {
423
+ label: Description
424
+ name: description
425
+ variant: body
426
+ }, {
427
+ label: Status
428
+ name: status
429
+ variant: badge
430
+ }, {
431
+ format: date
432
+ label: Created
433
+ name: createdAt
434
+ }]
410
435
  @label "Which fields appear in the master-detail record pane?"
411
- @description "Field names shown in the detail panel when browseLook = master-detail; the first entry doubles as the pane title. Consumers overriding columns/fields should override this list to match their entity."
436
+ @description "Fields shown in the detail panel when browseLook = master-detail; the field declared variant h3/h4 is the pane title. Consumers overriding columns/fields should override this list to match their entity."
412
437
  @synonyms "detail columns, record fields, detail pane fields"
413
438
  @tier "presentation"
439
+ detailCloseEvent : event = CLOSE
440
+ @label "Which pane action closes the record?"
441
+ @description "The detailActions entry whose event matches renders as the pane's close (×) button."
442
+ @synonyms "close event, dismiss event, pane close"
443
+ @tier "presentation"
414
444
  detailActions : [BrowseDetailAction] = [{ event: CLOSE, label: Close }]
415
445
  @label "Master-detail record pane actions"
416
446
  @description "Action buttons on the master-detail record pane (detail-panel `actions` descriptors: label/event/icon/variant). Consumers add their own record actions (Edit/Delete/…) alongside or instead of Close."
@@ -453,6 +483,7 @@ orbital BrowseItemOrbital {
453
483
  fields: @config.fields
454
484
  gap: @config.gap
455
485
  imageField: @config.imageField
486
+ itemClickEvent: @config.itemClickEvent
456
487
  itemActions: (array/filter @config.itemActions (fn item (or (= (array/len (object/get @item roles [])) 0) (array/includes (object/get @item roles []) @config.viewerRole))))
457
488
  maxInlineActions: @config.maxInlineActions
458
489
  pageSize: @config.displayPageSize
@@ -566,6 +597,7 @@ orbital BrowseItemOrbital {
566
597
  entity: ?data
567
598
  fields: []
568
599
  gap: md
600
+ itemClickEvent: @config.itemClickEvent
569
601
  itemActions: (array/filter @config.itemActions (fn item (or (= (array/len (object/get @item roles [])) 0) (array/includes (object/get @item roles []) @config.viewerRole))))
570
602
  renderItem: (fn item {
571
603
  children: [{
@@ -688,6 +720,7 @@ orbital BrowseItemOrbital {
688
720
  fields: @config.fields
689
721
  gap: lg
690
722
  imageField: @config.imageField
723
+ itemClickEvent: @config.itemClickEvent
691
724
  itemActions: (array/filter @config.itemActions (fn item (or (= (array/len (object/get @item roles [])) 0) (array/includes (object/get @item roles []) @config.viewerRole))))
692
725
  maxInlineActions: @config.maxInlineActions
693
726
  minCardWidth: 260
@@ -741,6 +774,7 @@ orbital BrowseItemOrbital {
741
774
  children: [{
742
775
  entity: ?data
743
776
  fields: @config.fields
777
+ itemClickEvent: @config.itemClickEvent
744
778
  itemActions: (array/filter @config.itemActions (fn item (or (= (array/len (object/get @item roles [])) 0) (array/includes (object/get @item roles []) @config.viewerRole))))
745
779
  maxInlineActions: @config.maxInlineActions
746
780
  emptyDescription: @config.emptyDescription
@@ -861,7 +895,8 @@ orbital BrowseItemOrbital {
861
895
  }), {
862
896
  detail: {
863
897
  actions: (array/filter @config.detailActions (fn action (or (= (array/len (object/get @action roles [])) 0) (array/includes (object/get @action roles []) @config.viewerRole))))
864
- fieldNames: @config.detailFields
898
+ fields: @config.detailFields
899
+ closeEvent: @config.detailCloseEvent
865
900
  initialData: ?row
866
901
  showActions: true
867
902
  type: detail-panel
@@ -31,19 +31,7 @@ orbital CalendarEventOrbital {
31
31
  emit: { failure: CalendarEventLoadFailed, success: CalendarEventLoaded }
32
32
  include: @config.include
33
33
  })
34
- (render-ui main {
35
- align: center
36
- children: [{ type: spinner }, {
37
- color: muted
38
- content: "Loading calendar…"
39
- type: typography
40
- variant: caption
41
- }]
42
- className: py-12
43
- direction: vertical
44
- gap: md
45
- type: stack
46
- })
34
+ (render-ui main { type: skeleton, variant: card })
47
35
  CalendarEventLoaded -> month-view
48
36
  (if ["=", @config.calendarLook, agenda-list]
49
37
  (render-ui main @config.agendaListBodyContent)
@@ -87,7 +75,7 @@ orbital CalendarEventOrbital {
87
75
  emit: { failure: CalendarEventLoadFailed, success: CalendarEventLoaded }
88
76
  include: @config.include
89
77
  })
90
- (render-ui main { type: spinner })
78
+ (render-ui main { type: skeleton, variant: card })
91
79
  SELECT_DAY -> loading
92
80
  (set @entity.selectedRange ?value)
93
81
  ;; filter reads the candidate ROW's configured start column — never a
@@ -133,7 +121,7 @@ orbital CalendarEventOrbital {
133
121
  emit: { failure: CalendarEventLoadFailed, success: CalendarEventLoaded }
134
122
  include: @config.include
135
123
  })
136
- (render-ui main { type: spinner })
124
+ (render-ui main { type: skeleton, variant: card })
137
125
  ;; the error screen's Retry button: INIT is lifecycle-only and the bus never
138
126
  ;; delivers it, so the affordance must target a first-class user event
139
127
  RETRY -> loading
@@ -141,7 +129,7 @@ orbital CalendarEventOrbital {
141
129
  emit: { failure: CalendarEventLoadFailed, success: CalendarEventLoaded }
142
130
  include: @config.include
143
131
  })
144
- (render-ui main { type: spinner })
132
+ (render-ui main { type: skeleton, variant: card })
145
133
  }
146
134
 
147
135
  emits {