@almadar/std 16.173.0 → 16.175.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 (220) hide show
  1. package/behaviors/lolo/infra/atoms/std-cross-reference.lolo +2 -4
  2. package/behaviors/lolo/ui/core/atoms/std-board.lolo +5 -9
  3. package/behaviors/lolo/ui/core/atoms/std-browse.lolo +8 -1
  4. package/behaviors/lolo/ui/core/atoms/std-esign-flow.lolo +2 -2
  5. package/behaviors/lolo/ui/core/atoms/std-event-log.lolo +3 -7
  6. package/behaviors/lolo/ui/core/atoms/std-form-advanced.lolo +1 -1
  7. package/behaviors/lolo/ui/core/atoms/std-image-upload-multi.lolo +1 -1
  8. package/behaviors/lolo/ui/core/atoms/std-list.lolo +3 -3
  9. package/behaviors/lolo/ui/core/atoms/std-modal.lolo +2 -2
  10. package/behaviors/lolo/ui/core/atoms/std-multi-party-flow.lolo +2 -4
  11. package/behaviors/lolo/ui/core/atoms/std-rating-review.lolo +5 -13
  12. package/behaviors/lolo/ui/core/atoms/std-recurrence.lolo +3 -7
  13. package/behaviors/lolo/ui/core/atoms/std-saved-search.lolo +1 -1
  14. package/behaviors/lolo/ui/core/atoms/std-signature-capture.lolo +2 -2
  15. package/behaviors/lolo/ui/core/atoms/std-step-flow.lolo +2 -4
  16. package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +1 -1
  17. package/behaviors/lolo/ui/core/atoms/std-thread.lolo +2 -2
  18. package/behaviors/lolo/ui/core/atoms/std-vote.lolo +2 -2
  19. package/behaviors/lolo/ui/core/atoms/std-wizard.lolo +3 -7
  20. package/behaviors/lolo/ui/core/atoms/ui-atlas-image.lolo +1 -1
  21. package/behaviors/lolo/ui/core/atoms/ui-atlas-panel.lolo +1 -1
  22. package/behaviors/lolo/ui/core/atoms/ui-center.lolo +1 -1
  23. package/behaviors/lolo/ui/core/atoms/ui-hstack.lolo +1 -1
  24. package/behaviors/lolo/ui/core/atoms/ui-icon.lolo +1 -1
  25. package/behaviors/lolo/ui/core/atoms/ui-stack.lolo +1 -1
  26. package/behaviors/lolo/ui/core/atoms/ui-typography.lolo +1 -1
  27. package/behaviors/lolo/ui/core/atoms/ui-vstack.lolo +1 -1
  28. package/behaviors/lolo/ui/core/molecules/ui-content-renderer.lolo +1 -1
  29. package/behaviors/lolo/ui/core/molecules/ui-form-layout.lolo +1 -1
  30. package/behaviors/lolo/ui/core/molecules/ui-grid.lolo +1 -1
  31. package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +4 -9
  32. package/behaviors/lolo/ui/core/organisms/ui-chat-bar.lolo +1 -1
  33. package/behaviors/lolo/ui/core/organisms/ui-dashboard-grid.lolo +1 -1
  34. package/behaviors/lolo/ui/core/organisms/ui-detail-panel.lolo +1 -1
  35. package/behaviors/lolo/ui/core/organisms/ui-entity-cards.lolo +1 -1
  36. package/behaviors/lolo/ui/core/organisms/ui-entity-list.lolo +1 -1
  37. package/behaviors/lolo/ui/core/organisms/ui-entity-table.lolo +1 -1
  38. package/behaviors/lolo/ui/core/organisms/ui-form-section.lolo +9 -3
  39. package/behaviors/lolo/ui/core/organisms/ui-form.lolo +9 -3
  40. package/behaviors/lolo/ui/core/organisms/ui-master-detail.lolo +1 -1
  41. package/behaviors/lolo/ui/core/organisms/ui-media-gallery.lolo +1 -1
  42. package/behaviors/lolo/ui/core/organisms/ui-segment-renderer.lolo +7 -1
  43. package/behaviors/lolo/ui/core/organisms/ui-stat-card.lolo +1 -1
  44. package/behaviors/lolo/ui/core/organisms/ui-subagent-trace-panel.lolo +1 -1
  45. package/behaviors/lolo/ui/game/atoms/ui-action-tile.lolo +1 -1
  46. package/behaviors/lolo/ui/game/atoms/ui-draw-shape-layer.lolo +41 -9
  47. package/behaviors/lolo/ui/game/atoms/ui-draw-shape.lolo +40 -8
  48. package/behaviors/lolo/ui/game/atoms/ui-draw-sprite-layer.lolo +13 -3
  49. package/behaviors/lolo/ui/game/atoms/ui-draw-sprite.lolo +12 -2
  50. package/behaviors/lolo/ui/game/atoms/ui-draw-text-layer.lolo +3 -3
  51. package/behaviors/lolo/ui/game/atoms/ui-draw-text.lolo +2 -2
  52. package/behaviors/lolo/ui/game/organisms/std-tactics-board-3d.lolo +32 -2
  53. package/behaviors/lolo/ui/learning/atoms/std-learn-classify.lolo +133 -23
  54. package/behaviors/lolo/ui/learning/atoms/std-learn-compare.lolo +397 -0
  55. package/behaviors/lolo/ui/learning/atoms/std-learn-coupled-sim.lolo +537 -0
  56. package/behaviors/lolo/ui/learning/atoms/std-learn-derivation.lolo +428 -0
  57. package/behaviors/lolo/ui/learning/atoms/std-learn-doser.lolo +520 -0
  58. package/behaviors/lolo/ui/learning/atoms/std-learn-estimate.lolo +419 -0
  59. package/behaviors/lolo/ui/learning/atoms/std-learn-goal-seek.lolo +591 -0
  60. package/behaviors/lolo/ui/learning/atoms/std-learn-grid-sim.lolo +425 -0
  61. package/behaviors/lolo/ui/learning/atoms/std-learn-hotspot.lolo +398 -0
  62. package/behaviors/lolo/ui/learning/atoms/std-learn-measure.lolo +325 -0
  63. package/behaviors/lolo/ui/learning/atoms/std-learn-perturb.lolo +494 -0
  64. package/behaviors/lolo/ui/learning/atoms/std-learn-predict.lolo +408 -0
  65. package/behaviors/lolo/ui/learning/atoms/std-learn-scatter-fit.lolo +805 -0
  66. package/behaviors/lolo/ui/learning/atoms/std-learn-scenario.lolo +307 -0
  67. package/behaviors/lolo/ui/learning/atoms/std-learn-sim-3d.lolo +318 -0
  68. package/behaviors/lolo/ui/learning/atoms/std-learn-speed-drill.lolo +336 -0
  69. package/behaviors/lolo/ui/learning/atoms/std-learn-tour-3d.lolo +409 -0
  70. package/behaviors/lolo/ui/learning/atoms/std-learn-transport.lolo +186 -0
  71. package/behaviors/lolo/ui/learning/atoms/std-learn-tree.lolo +522 -0
  72. package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +192 -0
  73. package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +111 -2
  74. package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +193 -5
  75. package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +173 -5
  76. package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +48 -1
  77. package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +141 -1
  78. package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +242 -5
  79. package/behaviors/lolo/ui/marketing/organisms/ui-book-viewer.lolo +1 -1
  80. package/behaviors/lolo/ui/marketing/organisms/ui-case-study-organism.lolo +1 -1
  81. package/behaviors/lolo/ui/marketing/organisms/ui-feature-grid-organism.lolo +1 -1
  82. package/behaviors/lolo/ui/marketing/organisms/ui-hero-organism.lolo +1 -1
  83. package/behaviors/lolo/ui/marketing/organisms/ui-pricing-organism.lolo +1 -1
  84. package/behaviors/lolo/ui/marketing/organisms/ui-showcase-organism.lolo +1 -1
  85. package/behaviors/lolo/ui/marketing/organisms/ui-stats-organism.lolo +1 -1
  86. package/behaviors/lolo/ui/marketing/organisms/ui-step-flow-organism.lolo +1 -1
  87. package/behaviors/lolo/ui/marketing/organisms/ui-team-organism.lolo +1 -1
  88. package/behaviors/registry/agent/atoms/std-agent-session.orb +22 -1
  89. package/behaviors/registry/agent/atoms/std-agent-tool-call.orb +38 -2
  90. package/behaviors/registry/agent/atoms/std-agent-tool-loop.orb +38 -2
  91. package/behaviors/registry/agent/organisms/std-agent-rabit.orb +23 -1
  92. package/behaviors/registry/infra/atoms/std-approval-gate.orb +8 -16
  93. package/behaviors/registry/infra/atoms/std-cache-aside.orb +31 -62
  94. package/behaviors/registry/infra/atoms/std-circuit-breaker.orb +16 -32
  95. package/behaviors/registry/infra/atoms/std-cross-reference.orb +32 -4
  96. package/behaviors/registry/infra/atoms/std-data-erasure.orb +8 -16
  97. package/behaviors/registry/infra/atoms/std-mod-queue.orb +8 -16
  98. package/behaviors/registry/infra/atoms/std-rate-limiter.orb +14 -28
  99. package/behaviors/registry/infra/atoms/std-row-access-control.orb +30 -2
  100. package/behaviors/registry/ui/core/atoms/std-billable-hour.orb +1 -2
  101. package/behaviors/registry/ui/core/atoms/std-board.orb +19 -5
  102. package/behaviors/registry/ui/core/atoms/std-browse.orb +29 -7
  103. package/behaviors/registry/ui/core/atoms/std-dashboard-grid-embedded.orb +1 -2
  104. package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +3 -5
  105. package/behaviors/registry/ui/core/atoms/std-esign-request.orb +3 -6
  106. package/behaviors/registry/ui/core/atoms/std-event-log.orb +17 -3
  107. package/behaviors/registry/ui/core/atoms/std-export.orb +2 -4
  108. package/behaviors/registry/ui/core/atoms/std-form-advanced.orb +1 -1
  109. package/behaviors/registry/ui/core/atoms/std-gallery.orb +9 -18
  110. package/behaviors/registry/ui/core/atoms/std-graphs.orb +15 -1
  111. package/behaviors/registry/ui/core/atoms/std-import.orb +2 -4
  112. package/behaviors/registry/ui/core/atoms/std-list.orb +4 -6
  113. package/behaviors/registry/ui/core/atoms/std-modal.orb +2 -2
  114. package/behaviors/registry/ui/core/atoms/std-multi-party-flow.orb +16 -2
  115. package/behaviors/registry/ui/core/atoms/std-pagination.orb +15 -1
  116. package/behaviors/registry/ui/core/atoms/std-rating-review.orb +19 -5
  117. package/behaviors/registry/ui/core/atoms/std-recurrence.orb +17 -3
  118. package/behaviors/registry/ui/core/atoms/std-rich-editor.orb +15 -1
  119. package/behaviors/registry/ui/core/atoms/std-scatter.orb +15 -1
  120. package/behaviors/registry/ui/core/atoms/std-signature-capture.orb +2 -2
  121. package/behaviors/registry/ui/core/atoms/std-stats.orb +15 -1
  122. package/behaviors/registry/ui/core/atoms/std-step-flow.orb +16 -2
  123. package/behaviors/registry/ui/core/atoms/std-thread.orb +2 -2
  124. package/behaviors/registry/ui/core/atoms/std-vote.orb +2 -2
  125. package/behaviors/registry/ui/core/atoms/std-wizard.orb +17 -3
  126. package/behaviors/registry/ui/core/atoms/ui-atlas-image.orb +4 -1
  127. package/behaviors/registry/ui/core/atoms/ui-atlas-panel.orb +4 -1
  128. package/behaviors/registry/ui/core/atoms/ui-center.orb +4 -1
  129. package/behaviors/registry/ui/core/atoms/ui-hstack.orb +4 -1
  130. package/behaviors/registry/ui/core/atoms/ui-icon.orb +4 -1
  131. package/behaviors/registry/ui/core/atoms/ui-stack.orb +4 -1
  132. package/behaviors/registry/ui/core/atoms/ui-typography.orb +4 -1
  133. package/behaviors/registry/ui/core/atoms/ui-vstack.orb +4 -1
  134. package/behaviors/registry/ui/core/molecules/ui-accordion.orb +3 -3
  135. package/behaviors/registry/ui/core/molecules/ui-content-renderer.orb +4 -1
  136. package/behaviors/registry/ui/core/molecules/ui-form-layout.orb +4 -1
  137. package/behaviors/registry/ui/core/molecules/ui-grid.orb +4 -1
  138. package/behaviors/registry/ui/core/molecules/ui-table-view.orb +4 -39
  139. package/behaviors/registry/ui/core/molecules/ui-tabs.orb +2 -2
  140. package/behaviors/registry/ui/core/molecules/ui-wizard-container.orb +1 -1
  141. package/behaviors/registry/ui/core/organisms/ui-chat-bar.orb +4 -1
  142. package/behaviors/registry/ui/core/organisms/ui-dashboard-grid.orb +5 -2
  143. package/behaviors/registry/ui/core/organisms/ui-detail-panel.orb +5 -2
  144. package/behaviors/registry/ui/core/organisms/ui-entity-cards.orb +4 -1
  145. package/behaviors/registry/ui/core/organisms/ui-entity-list.orb +4 -1
  146. package/behaviors/registry/ui/core/organisms/ui-entity-table.orb +4 -1
  147. package/behaviors/registry/ui/core/organisms/ui-form-section.orb +34 -2
  148. package/behaviors/registry/ui/core/organisms/ui-form.orb +34 -2
  149. package/behaviors/registry/ui/core/organisms/ui-master-detail.orb +4 -1
  150. package/behaviors/registry/ui/core/organisms/ui-media-gallery.orb +4 -1
  151. package/behaviors/registry/ui/core/organisms/ui-segment-renderer.orb +24 -2
  152. package/behaviors/registry/ui/core/organisms/ui-stat-card.orb +4 -1
  153. package/behaviors/registry/ui/core/organisms/ui-subagent-trace-panel.orb +4 -1
  154. package/behaviors/registry/ui/core/organisms/ui-tabbed-container.orb +1 -1
  155. package/behaviors/registry/ui/core/organisms/ui-ui-slot-renderer.orb +1 -1
  156. package/behaviors/registry/ui/game/atoms/std-fx-particles.orb +35 -1
  157. package/behaviors/registry/ui/game/atoms/ui-action-tile.orb +4 -1
  158. package/behaviors/registry/ui/game/atoms/ui-draw-shape-layer.orb +183 -13
  159. package/behaviors/registry/ui/game/atoms/ui-draw-shape.orb +104 -9
  160. package/behaviors/registry/ui/game/atoms/ui-draw-sprite-layer.orb +56 -2
  161. package/behaviors/registry/ui/game/atoms/ui-draw-sprite.orb +36 -4
  162. package/behaviors/registry/ui/game/atoms/ui-draw-text-layer.orb +21 -2
  163. package/behaviors/registry/ui/game/atoms/ui-draw-text.orb +19 -4
  164. package/behaviors/registry/ui/game/organisms/std-tactics-board-3d.orb +173 -2
  165. package/behaviors/registry/ui/learning/atoms/std-learn-classify.orb +1288 -197
  166. package/behaviors/registry/ui/learning/atoms/std-learn-compare.orb +2814 -0
  167. package/behaviors/registry/ui/learning/atoms/std-learn-coupled-sim.orb +3183 -0
  168. package/behaviors/registry/ui/learning/atoms/std-learn-derivation.orb +2512 -0
  169. package/behaviors/registry/ui/learning/atoms/std-learn-doser.orb +3678 -0
  170. package/behaviors/registry/ui/learning/atoms/std-learn-estimate.orb +2394 -0
  171. package/behaviors/registry/ui/learning/atoms/std-learn-goal-seek.orb +3951 -0
  172. package/behaviors/registry/ui/learning/atoms/std-learn-grid-sim.orb +3458 -0
  173. package/behaviors/registry/ui/learning/atoms/std-learn-hotspot.orb +2646 -0
  174. package/behaviors/registry/ui/learning/atoms/std-learn-measure.orb +1979 -0
  175. package/behaviors/registry/ui/learning/atoms/std-learn-perturb.orb +2994 -0
  176. package/behaviors/registry/ui/learning/atoms/std-learn-predict.orb +2682 -0
  177. package/behaviors/registry/ui/learning/atoms/std-learn-scatter-fit.orb +6539 -0
  178. package/behaviors/registry/ui/learning/atoms/std-learn-scenario.orb +1842 -0
  179. package/behaviors/registry/ui/learning/atoms/std-learn-sim-3d.orb +1648 -0
  180. package/behaviors/registry/ui/learning/atoms/std-learn-speed-drill.orb +2307 -0
  181. package/behaviors/registry/ui/learning/atoms/std-learn-tour-3d.orb +3118 -0
  182. package/behaviors/registry/ui/learning/atoms/std-learn-transport.orb +986 -0
  183. package/behaviors/registry/ui/learning/atoms/std-learn-tree.orb +3333 -0
  184. package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +716 -0
  185. package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +679 -5
  186. package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +962 -18
  187. package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +919 -30
  188. package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +372 -1
  189. package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +936 -16
  190. package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +1328 -43
  191. package/behaviors/registry/ui/marketing/atoms/std-marketing-article.orb +1 -2
  192. package/behaviors/registry/ui/marketing/atoms/std-marketing-footer.orb +1 -2
  193. package/behaviors/registry/ui/marketing/atoms/std-marketing-split.orb +1 -2
  194. package/behaviors/registry/ui/marketing/atoms/std-marketing-stats.orb +1 -2
  195. package/behaviors/registry/ui/marketing/atoms/std-marketing-steps.orb +1 -2
  196. package/behaviors/registry/ui/marketing/atoms/std-marketing-team.orb +1 -2
  197. package/behaviors/registry/ui/marketing/organisms/ui-book-viewer.orb +4 -1
  198. package/behaviors/registry/ui/marketing/organisms/ui-case-study-organism.orb +4 -1
  199. package/behaviors/registry/ui/marketing/organisms/ui-feature-grid-organism.orb +4 -1
  200. package/behaviors/registry/ui/marketing/organisms/ui-hero-organism.orb +4 -1
  201. package/behaviors/registry/ui/marketing/organisms/ui-pricing-organism.orb +4 -1
  202. package/behaviors/registry/ui/marketing/organisms/ui-showcase-organism.orb +4 -1
  203. package/behaviors/registry/ui/marketing/organisms/ui-stats-organism.orb +4 -1
  204. package/behaviors/registry/ui/marketing/organisms/ui-step-flow-organism.orb +4 -1
  205. package/behaviors/registry/ui/marketing/organisms/ui-team-organism.orb +4 -1
  206. package/dist/behaviors/exports-reader.js +3704 -2189
  207. package/dist/behaviors/functions/index.d.ts +2638 -254
  208. package/dist/behaviors/functions/index.js +3648 -2190
  209. package/dist/behaviors/index.d.ts +1 -1
  210. package/dist/behaviors/index.js +3705 -2190
  211. package/dist/behaviors/query.js +3704 -2189
  212. package/dist/behaviors-embeddings.hash.json +3 -3
  213. package/dist/behaviors-embeddings.json +289 -213
  214. package/dist/behaviors-registry.json +7900 -587
  215. package/dist/index.d.ts +1 -1
  216. package/dist/index.js +3705 -2190
  217. package/dist/knob-embeddings.hash.json +3 -3
  218. package/dist/knob-embeddings.json +1 -1
  219. package/dist/registry/factory-signatures.json +1 -1
  220. package/package.json +2 -2
@@ -5,21 +5,117 @@ orbital PhysicsCanvasOrbital {
5
5
  id : string
6
6
  x : number!
7
7
  y : number!
8
+ z : number
8
9
  radius : number
9
10
  color : string
10
11
  label : string
11
12
  vx : number
12
13
  vy : number
14
+ vz : number
13
15
  fx : number
14
16
  fy : number
17
+ fz : number
15
18
  }
16
19
  type PhysicsCanvasConstraintsItem = {
17
20
  from : string!
18
21
  to : string!
19
22
  color : string
23
+ kind : "rod" | "spring" | "string"
24
+ }
25
+ type PhysicsCanvasSceneObjectsItem = {
26
+ kind : "ground" | "wall" | "ramp" | "box" | "pivot"!
27
+ x : number
28
+ y : number
29
+ x1 : number
30
+ y1 : number
31
+ x2 : number
32
+ y2 : number
33
+ width : number
34
+ height : number
35
+ color : string
36
+ fill : string
37
+ label : string
38
+ }
39
+ type PhysicsCanvasTrailsItem = {
40
+ id : string
41
+ points : [PhysicsCanvasTrailsItemPointsItem]!
42
+ color : string
43
+ width : number
44
+ opacity : number
45
+ fade : boolean
46
+ }
47
+ type PhysicsCanvasTrailsItemPointsItem = {
48
+ x : number!
49
+ y : number!
50
+ z : number
51
+ }
52
+ type PhysicsCanvasVectorsItem = {
53
+ x : number
54
+ y : number
55
+ body : string
56
+ dx : number!
57
+ dy : number!
58
+ scale : number
59
+ color : string
60
+ label : string
61
+ dash : "dashed" | "dotted"
62
+ }
63
+ type PhysicsCanvasSurface3d = {
64
+ nx : number!
65
+ ny : number!
66
+ heights : [number]!
67
+ spacing : number
68
+ x : number
69
+ y : number
70
+ bands : [PhysicsCanvasSurface3dBandsItem]
71
+ color : string
72
+ opacity : number
73
+ flatShading : boolean
74
+ }
75
+ type PhysicsCanvasSurface3dBandsItem = {
76
+ min : number
77
+ color : string!
78
+ }
79
+ type PhysicsCanvasVectors3dItem = {
80
+ id : string
81
+ x : number!
82
+ y : number!
83
+ z : number
84
+ dx : number!
85
+ dy : number!
86
+ dz : number
87
+ color : string
88
+ label : string
89
+ width : number
90
+ }
91
+ type PhysicsCanvasAnglesItem = {
92
+ x : number!
93
+ y : number!
94
+ from : number!
95
+ to : number!
96
+ radius : number
97
+ color : string
98
+ label : string
99
+ }
100
+ type PhysicsCanvasField = {
101
+ kind : "arrows" | "into" | "out"!
102
+ spacing : number
103
+ angle : number
104
+ size : number
105
+ color : string
106
+ x : number
107
+ y : number
108
+ width : number
109
+ height : number
110
+ }
111
+ type PhysicsCanvasMetersItem = {
112
+ label : string!
113
+ value : number!
114
+ max : number
115
+ color : string
20
116
  }
21
117
  type PhysicsCanvasShapesItem = {
22
- type : "line" | "arrow" | "circle" | "rect" | "polygon" | "path" | "text" | "axis" | "grid"!
118
+ type : "line" | "arrow" | "circle" | "ellipse" | "rect" | "polygon" | "path" | "text" | "axis" | "grid" | "venn-region"!
23
119
  id : string
24
120
  x : number
25
121
  y : number
@@ -44,11 +140,42 @@ orbital PhysicsCanvasOrbital {
44
140
  fill : string
45
141
  lineWidth : number
46
142
  opacity : number
143
+ startAngle : number
144
+ endAngle : number
145
+ dash : "dashed" | "dotted"
146
+ inside : [string]
147
+ outside : [string]
47
148
  }
48
149
  type PhysicsCanvasShapesItemPointsItem = {
49
150
  x : number!
50
151
  y : number!
51
152
  }
153
+ type PhysicsCanvasReadoutsItem = {
154
+ label : string!
155
+ value : string!
156
+ color : string
157
+ }
158
+ type PhysicsCanvasTracesItem = {
159
+ x : number
160
+ y : number
161
+ width : number
162
+ height : number
163
+ series : [PhysicsCanvasTracesItemSeriesItem]!
164
+ xLabel : string
165
+ yLabel : string
166
+ frameColor : string
167
+ backgroundColor : string
168
+ backgroundOpacity : number
169
+ }
170
+ type PhysicsCanvasTracesItemSeriesItem = {
171
+ samples : [PhysicsCanvasTracesItemSeriesItemSamplesItem]!
172
+ color : string
173
+ label : string
174
+ }
175
+ type PhysicsCanvasTracesItemSeriesItemSamplesItem = {
176
+ x : number!
177
+ y : number!
178
+ }
52
179
  type PhysicsCanvasError = {
53
180
  message : string!
54
181
  name : string
@@ -76,13 +203,30 @@ orbital PhysicsCanvasOrbital {
76
203
  height: @config.height
77
204
  title: @config.title
78
205
  backgroundColor: @config.backgroundColor
206
+ mode: @config.mode
207
+ camera: @config.camera
208
+ lighting: @config.lighting
209
+ post: @config.post
79
210
  bodies: @config.bodies
80
211
  constraints: @config.constraints
81
212
  showVelocity: @config.showVelocity
82
213
  showForces: @config.showForces
83
214
  velocityScale: @config.velocityScale
84
215
  forceScale: @config.forceScale
216
+ sceneObjects: @config.sceneObjects
217
+ trails: @config.trails
218
+ vectors: @config.vectors
219
+ surface3d: @config.surface3d
220
+ vectors3d: @config.vectors3d
221
+ vectorScale: @config.vectorScale
222
+ angles: @config.angles
223
+ field: @config.field
224
+ meters: @config.meters
85
225
  shapes: @config.shapes
226
+ readouts: @config.readouts
227
+ traces: @config.traces
228
+ showGrid: @config.showGrid
229
+ shadows: @config.shadows
86
230
  interactive: @config.interactive
87
231
  animate: @config.animate
88
232
  onShapeClick: @config.onShapeClick
@@ -97,13 +241,30 @@ orbital PhysicsCanvasOrbital {
97
241
  height: @config.height
98
242
  title: @config.title
99
243
  backgroundColor: @config.backgroundColor
244
+ mode: @config.mode
245
+ camera: @config.camera
246
+ lighting: @config.lighting
247
+ post: @config.post
100
248
  bodies: @payload.bodies
101
249
  constraints: @payload.constraints
102
250
  showVelocity: @config.showVelocity
103
251
  showForces: @config.showForces
104
252
  velocityScale: @config.velocityScale
105
253
  forceScale: @config.forceScale
254
+ sceneObjects: @payload.sceneObjects
255
+ trails: @payload.trails
256
+ vectors: @payload.vectors
257
+ surface3d: @config.surface3d
258
+ vectors3d: @payload.vectors3d
259
+ vectorScale: @config.vectorScale
260
+ angles: @payload.angles
261
+ field: @config.field
262
+ meters: @payload.meters
106
263
  shapes: @payload.shapes
264
+ readouts: @payload.readouts
265
+ traces: @payload.traces
266
+ showGrid: @config.showGrid
267
+ shadows: @config.shadows
107
268
  interactive: @config.interactive
108
269
  animate: @config.animate
109
270
  onShapeClick: @config.onShapeClick
@@ -125,7 +286,15 @@ orbital PhysicsCanvasOrbital {
125
286
  UPDATE {
126
287
  bodies : [PhysicsCanvasBodiesItem]
127
288
  constraints : [PhysicsCanvasConstraintsItem]
289
+ sceneObjects : [PhysicsCanvasSceneObjectsItem]
290
+ trails : [PhysicsCanvasTrailsItem]
291
+ vectors : [PhysicsCanvasVectorsItem]
292
+ vectors3d : [PhysicsCanvasVectors3dItem]
293
+ angles : [PhysicsCanvasAnglesItem]
294
+ meters : [PhysicsCanvasMetersItem]
128
295
  shapes : [PhysicsCanvasShapesItem]
296
+ readouts : [PhysicsCanvasReadoutsItem]
297
+ traces : [PhysicsCanvasTracesItem]
129
298
  }
130
299
  @description "Live scene update; payload carries the current drawable state."
131
300
  @synonyms "tick, redraw, animate, frame"
@@ -153,6 +322,22 @@ orbital PhysicsCanvasOrbital {
153
322
  @label "Background Color"
154
323
  @description "backgroundColor prop"
155
324
  @tier "presentation"
325
+ mode : "2d" | "3d" = "2d"
326
+ @label "Mode"
327
+ @description "Painter: 2D raster (default) or 3D mesh scene via the lazy three.js host."
328
+ @tier "presentation"
329
+ camera : json = {}
330
+ @label "Camera"
331
+ @description "3D only: neutral camera pose ({ mode, zoom, fov, azimuth, target })."
332
+ @tier "presentation"
333
+ lighting : json = {}
334
+ @label "Lighting"
335
+ @description "3D only: scene light rig as data."
336
+ @tier "presentation"
337
+ post : json = {}
338
+ @label "Post"
339
+ @description "3D only: post-processing stack (bloom/vignette)."
340
+ @tier "presentation"
156
341
  bodies : [PhysicsCanvasBodiesItem] = []
157
342
  @label "Bodies"
158
343
  @description "bodies prop"
@@ -177,17 +362,69 @@ orbital PhysicsCanvasOrbital {
177
362
  @label "Force Scale"
178
363
  @description "forceScale prop"
179
364
  @tier "presentation"
365
+ sceneObjects : [PhysicsCanvasSceneObjectsItem] = []
366
+ @label "Scene Objects"
367
+ @description "Ground/wall/ramp/box/pivot scene fixtures. 2D only."
368
+ @tier "presentation"
369
+ trails : [PhysicsCanvasTrailsItem] = []
370
+ @label "Trails"
371
+ @description "Fading trajectory polylines (2D) / trajectory tubes (3D)."
372
+ @tier "presentation"
373
+ vectors : [PhysicsCanvasVectorsItem] = []
374
+ @label "Vectors"
375
+ @description "Named force/velocity/free-body arrows, anchored by point or by body id. 2D only."
376
+ @tier "presentation"
377
+ surface3d : PhysicsCanvasSurface3d
378
+ @label "Surface3d"
379
+ @description "A 3D height-field surface mesh (wave, terrain, potential well). 3D only."
380
+ @tier "presentation"
381
+ vectors3d : [PhysicsCanvasVectors3dItem] = []
382
+ @label "Vectors3d"
383
+ @description "Labeled 3D arrows (field arrows, axis triads). 3D only."
384
+ @tier "presentation"
385
+ vectorScale : number = 1
386
+ @label "Vector Scale"
387
+ @description "Multiplies every `vectors3d` entry's `dx`/`dy`/`dz` (default 1). 3D only."
388
+ @tier "presentation"
389
+ angles : [PhysicsCanvasAnglesItem] = []
390
+ @label "Angles"
391
+ @description "Angle arcs between two bearings. 2D only."
392
+ @tier "presentation"
393
+ field : PhysicsCanvasField
394
+ @label "Field"
395
+ @description "A single uniform vector/into/out field lattice. 2D only."
396
+ @tier "presentation"
397
+ meters : [PhysicsCanvasMetersItem] = []
398
+ @label "Meters"
399
+ @description "Bottom-left labeled bar gauges. 2D only."
400
+ @tier "presentation"
180
401
  shapes : [PhysicsCanvasShapesItem] = []
181
402
  @label "Shapes"
182
- @description "Extra declarative shapes in canvas pixel coordinates."
403
+ @description "Extra declarative shapes in canvas pixel coordinates (2D mode only — ignored in 3D)."
404
+ @tier "presentation"
405
+ readouts : [PhysicsCanvasReadoutsItem] = []
406
+ @label "Readouts"
407
+ @description "Top-right status chip row, forwarded to LearningCanvas verbatim."
408
+ @tier "presentation"
409
+ traces : [PhysicsCanvasTracesItem] = []
410
+ @label "Traces"
411
+ @description "Inset sparkline panels, forwarded to LearningCanvas verbatim."
412
+ @tier "presentation"
413
+ showGrid : boolean
414
+ @label "Show Grid"
415
+ @description "3D only: show the ground grid (default off)."
416
+ @tier "presentation"
417
+ shadows : boolean
418
+ @label "Shadows"
419
+ @description "3D only: enable shadows. Omitted → the host default."
183
420
  @tier "presentation"
184
- interactive : boolean = false
421
+ interactive : boolean
185
422
  @label "Interactive"
186
- @description "interactive prop"
423
+ @description "2D: pointer interaction (click/hover). 3D: orbit camera controls."
187
424
  @tier "presentation"
188
425
  animate : boolean = false
189
426
  @label "Animate"
190
- @description "animate prop"
427
+ @description "2D only: continuous redraw loop. 3D motion is entity-state driven."
191
428
  @tier "presentation"
192
429
  onShapeClick : string = "SHAPE_CLICK"
193
430
  @label "On Shape Click"
@@ -115,7 +115,7 @@ orbital BookViewerOrbital {
115
115
  @label "Total Count"
116
116
  @description "Total number of items"
117
117
  @tier "presentation"
118
- activeFilters : json = {}
118
+ activeFilters : Map string string = {}
119
119
  @label "Active Filters"
120
120
  @description "Active filters"
121
121
  @tier "presentation"
@@ -107,7 +107,7 @@ orbital CaseStudyOrganismOrbital {
107
107
  @label "Total Count"
108
108
  @description "Total number of items"
109
109
  @tier "presentation"
110
- activeFilters : json = {}
110
+ activeFilters : Map string string = {}
111
111
  @label "Active Filters"
112
112
  @description "Active filters"
113
113
  @tier "presentation"
@@ -108,7 +108,7 @@ orbital FeatureGridOrganismOrbital {
108
108
  @label "Total Count"
109
109
  @description "Total number of items"
110
110
  @tier "presentation"
111
- activeFilters : json = {}
111
+ activeFilters : Map string string = {}
112
112
  @label "Active Filters"
113
113
  @description "Active filters"
114
114
  @tier "presentation"
@@ -121,7 +121,7 @@ orbital HeroOrganismOrbital {
121
121
  @label "Total Count"
122
122
  @description "Total number of items"
123
123
  @tier "presentation"
124
- activeFilters : json = {}
124
+ activeFilters : Map string string = {}
125
125
  @label "Active Filters"
126
126
  @description "Active filters"
127
127
  @tier "presentation"
@@ -109,7 +109,7 @@ orbital PricingOrganismOrbital {
109
109
  @label "Total Count"
110
110
  @description "Total number of items"
111
111
  @tier "presentation"
112
- activeFilters : json = {}
112
+ activeFilters : Map string string = {}
113
113
  @label "Active Filters"
114
114
  @description "Active filters"
115
115
  @tier "presentation"
@@ -113,7 +113,7 @@ orbital ShowcaseOrganismOrbital {
113
113
  @label "Total Count"
114
114
  @description "Total number of items"
115
115
  @tier "presentation"
116
- activeFilters : json = {}
116
+ activeFilters : Map string string = {}
117
117
  @label "Active Filters"
118
118
  @description "Active filters"
119
119
  @tier "presentation"
@@ -101,7 +101,7 @@ orbital StatsOrganismOrbital {
101
101
  @label "Total Count"
102
102
  @description "Total number of items"
103
103
  @tier "presentation"
104
- activeFilters : json = {}
104
+ activeFilters : Map string string = {}
105
105
  @label "Active Filters"
106
106
  @description "Active filters"
107
107
  @tier "presentation"
@@ -109,7 +109,7 @@ orbital StepFlowOrganismOrbital {
109
109
  @label "Total Count"
110
110
  @description "Total number of items"
111
111
  @tier "presentation"
112
- activeFilters : json = {}
112
+ activeFilters : Map string string = {}
113
113
  @label "Active Filters"
114
114
  @description "Active filters"
115
115
  @tier "presentation"
@@ -106,7 +106,7 @@ orbital TeamOrganismOrbital {
106
106
  @label "Total Count"
107
107
  @description "Total number of items"
108
108
  @tier "presentation"
109
- activeFilters : json = {}
109
+ activeFilters : Map string string = {}
110
110
  @label "Active Filters"
111
111
  @description "Active filters"
112
112
  @tier "presentation"
@@ -731,8 +731,29 @@
731
731
  },
732
732
  {
733
733
  "name": "spec",
734
+ "properties": [
735
+ {
736
+ "name": "orbitalName",
737
+ "type": "string"
738
+ },
739
+ {
740
+ "name": "organism",
741
+ "required": true,
742
+ "type": "string"
743
+ },
744
+ {
745
+ "name": "method",
746
+ "required": true,
747
+ "type": "string"
748
+ },
749
+ {
750
+ "name": "deltaPrompt",
751
+ "required": true,
752
+ "type": "string"
753
+ }
754
+ ],
734
755
  "required": true,
735
- "type": "OrbitalSpec"
756
+ "type": "object"
736
757
  }
737
758
  ]
738
759
  },
@@ -256,13 +256,49 @@
256
256
  "payloadSchema": [
257
257
  {
258
258
  "name": "messages",
259
+ "properties": [
260
+ {
261
+ "name": "role",
262
+ "required": true,
263
+ "type": "string"
264
+ },
265
+ {
266
+ "name": "content",
267
+ "required": true,
268
+ "type": "string"
269
+ },
270
+ {
271
+ "name": "toolCalls",
272
+ "type": "[object]"
273
+ },
274
+ {
275
+ "name": "toolCallId",
276
+ "type": "string"
277
+ }
278
+ ],
259
279
  "required": true,
260
- "type": "[LlmMessage]"
280
+ "type": "[object]"
261
281
  },
262
282
  {
263
283
  "name": "tools",
284
+ "properties": [
285
+ {
286
+ "name": "name",
287
+ "required": true,
288
+ "type": "string"
289
+ },
290
+ {
291
+ "name": "description",
292
+ "required": true,
293
+ "type": "string"
294
+ },
295
+ {
296
+ "name": "schema",
297
+ "type": "object"
298
+ }
299
+ ],
264
300
  "required": true,
265
- "type": "[LlmToolDef]"
301
+ "type": "[object]"
266
302
  }
267
303
  ]
268
304
  },
@@ -325,13 +325,49 @@
325
325
  "payloadSchema": [
326
326
  {
327
327
  "name": "messages",
328
+ "properties": [
329
+ {
330
+ "name": "role",
331
+ "required": true,
332
+ "type": "string"
333
+ },
334
+ {
335
+ "name": "content",
336
+ "required": true,
337
+ "type": "string"
338
+ },
339
+ {
340
+ "name": "toolCalls",
341
+ "type": "[object]"
342
+ },
343
+ {
344
+ "name": "toolCallId",
345
+ "type": "string"
346
+ }
347
+ ],
328
348
  "required": true,
329
- "type": "[LlmMessage]"
349
+ "type": "[object]"
330
350
  },
331
351
  {
332
352
  "name": "tools",
353
+ "properties": [
354
+ {
355
+ "name": "name",
356
+ "required": true,
357
+ "type": "string"
358
+ },
359
+ {
360
+ "name": "description",
361
+ "required": true,
362
+ "type": "string"
363
+ },
364
+ {
365
+ "name": "schema",
366
+ "type": "object"
367
+ }
368
+ ],
333
369
  "required": true,
334
- "type": "[LlmToolDef]"
370
+ "type": "[object]"
335
371
  }
336
372
  ]
337
373
  },
@@ -1437,8 +1437,30 @@
1437
1437
  },
1438
1438
  {
1439
1439
  "name": "spec",
1440
+ "properties": [
1441
+ {
1442
+ "name": "orbitalName",
1443
+ "required": true,
1444
+ "type": "string"
1445
+ },
1446
+ {
1447
+ "name": "organism",
1448
+ "required": true,
1449
+ "type": "string"
1450
+ },
1451
+ {
1452
+ "name": "method",
1453
+ "required": true,
1454
+ "type": "string"
1455
+ },
1456
+ {
1457
+ "name": "deltaPrompt",
1458
+ "required": true,
1459
+ "type": "string"
1460
+ }
1461
+ ],
1440
1462
  "required": true,
1441
- "type": "OrbitalSpec"
1463
+ "type": "object"
1442
1464
  }
1443
1465
  ]
1444
1466
  },
@@ -299,8 +299,7 @@
299
299
  "linkedEntity": "ApprovalRequest",
300
300
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
301
301
  "name": "LoadingSpinner",
302
- "ref": "Spinner.traits.SpinnerRender",
303
- "refId": "trt_01KXG04KQTE55FSTDE4V4XKESN"
302
+ "ref": "Spinner.traits.SpinnerRender"
304
303
  },
305
304
  {
306
305
  "config": {
@@ -313,8 +312,7 @@
313
312
  "linkedEntity": "ApprovalRequest",
314
313
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
315
314
  "name": "ErrorSpinner",
316
- "ref": "Spinner.traits.SpinnerRender",
317
- "refId": "trt_01KXG04KQTE55FSTDE4V4XKESN"
315
+ "ref": "Spinner.traits.SpinnerRender"
318
316
  },
319
317
  {
320
318
  "config": {
@@ -335,8 +333,7 @@
335
333
  "linkedEntity": "ApprovalRequest",
336
334
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
337
335
  "name": "LoadingText",
338
- "ref": "Typography.traits.TypographyRender",
339
- "refId": "trt_01KXG04MN4YEZRM29MVNFTYM98"
336
+ "ref": "Typography.traits.TypographyRender"
340
337
  },
341
338
  {
342
339
  "config": {
@@ -349,8 +346,7 @@
349
346
  "linkedEntity": "ApprovalRequest",
350
347
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
351
348
  "name": "ShieldCheckIcon",
352
- "ref": "Icon.traits.IconRender",
353
- "refId": "trt_01KXG04K2JE4GSQVWEWHAHDE2A"
349
+ "ref": "Icon.traits.IconRender"
354
350
  },
355
351
  {
356
352
  "config": {
@@ -367,8 +363,7 @@
367
363
  "linkedEntity": "ApprovalRequest",
368
364
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
369
365
  "name": "ApprovalQueueTitle",
370
- "ref": "Typography.traits.TypographyRender",
371
- "refId": "trt_01KXG04MN4YEZRM29MVNFTYM98"
366
+ "ref": "Typography.traits.TypographyRender"
372
367
  },
373
368
  {
374
369
  "config": {
@@ -393,16 +388,14 @@
393
388
  "linkedEntity": "ApprovalRequest",
394
389
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
395
390
  "name": "CloseButton",
396
- "ref": "Button.traits.ButtonRender",
397
- "refId": "trt_01KXG04JBQPWD7RW8X33NXPXG9"
391
+ "ref": "Button.traits.ButtonRender"
398
392
  },
399
393
  {
400
394
  "id": "trt_01KY21K6QC0P4NS69R6ATZPC18",
401
395
  "linkedEntity": "ApprovalRequest",
402
396
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
403
397
  "name": "ApprovalDivider",
404
- "ref": "Divider.traits.DividerRender",
405
- "refId": "trt_01KXG04JVTJZ479S2KPR7HD1KB"
398
+ "ref": "Divider.traits.DividerRender"
406
399
  },
407
400
  {
408
401
  "config": {
@@ -419,8 +412,7 @@
419
412
  "linkedEntity": "ApprovalRequest",
420
413
  "linkedEntityId": "ent_01KXG04EYQFWN6TM97JNWHHSF4",
421
414
  "name": "ErrorAlert",
422
- "ref": "Alert.traits.AlertRender",
423
- "refId": "trt_01KXG04MT125AX1BGFS3ZNGX67"
415
+ "ref": "Alert.traits.AlertRender"
424
416
  },
425
417
  {
426
418
  "capabilities": [