@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
@@ -98,9 +98,56 @@
98
98
  {
99
99
  "category": "interaction",
100
100
  "config": {
101
+ "angles": {
102
+ "default": [],
103
+ "description": "Angle arcs between two bearings. 2D only.",
104
+ "items": {
105
+ "properties": {
106
+ "color": {
107
+ "name": "color",
108
+ "required": false,
109
+ "type": "string"
110
+ },
111
+ "from": {
112
+ "name": "from",
113
+ "required": true,
114
+ "type": "number"
115
+ },
116
+ "label": {
117
+ "name": "label",
118
+ "required": false,
119
+ "type": "string"
120
+ },
121
+ "radius": {
122
+ "name": "radius",
123
+ "required": false,
124
+ "type": "number"
125
+ },
126
+ "to": {
127
+ "name": "to",
128
+ "required": true,
129
+ "type": "number"
130
+ },
131
+ "x": {
132
+ "name": "x",
133
+ "required": true,
134
+ "type": "number"
135
+ },
136
+ "y": {
137
+ "name": "y",
138
+ "required": true,
139
+ "type": "number"
140
+ }
141
+ },
142
+ "type": "object"
143
+ },
144
+ "label": "Angles",
145
+ "tier": "presentation",
146
+ "type": "[PhysicsCanvasAnglesItem]"
147
+ },
101
148
  "animate": {
102
149
  "default": false,
103
- "description": "animate prop",
150
+ "description": "2D only: continuous redraw loop. 3D motion is entity-state driven.",
104
151
  "label": "Animate",
105
152
  "tier": "presentation",
106
153
  "type": "boolean"
@@ -131,6 +178,11 @@
131
178
  "required": false,
132
179
  "type": "number"
133
180
  },
181
+ "fz": {
182
+ "name": "fz",
183
+ "required": false,
184
+ "type": "number"
185
+ },
134
186
  "id": {
135
187
  "name": "id",
136
188
  "required": false,
@@ -156,6 +208,11 @@
156
208
  "required": false,
157
209
  "type": "number"
158
210
  },
211
+ "vz": {
212
+ "name": "vz",
213
+ "required": false,
214
+ "type": "number"
215
+ },
159
216
  "x": {
160
217
  "name": "x",
161
218
  "required": true,
@@ -165,6 +222,11 @@
165
222
  "name": "y",
166
223
  "required": true,
167
224
  "type": "number"
225
+ },
226
+ "z": {
227
+ "name": "z",
228
+ "required": false,
229
+ "type": "number"
168
230
  }
169
231
  },
170
232
  "type": "object"
@@ -173,6 +235,13 @@
173
235
  "tier": "presentation",
174
236
  "type": "[PhysicsCanvasBodiesItem]"
175
237
  },
238
+ "camera": {
239
+ "default": {},
240
+ "description": "3D only: neutral camera pose ({ mode, zoom, fov, azimuth, target }).",
241
+ "label": "Camera",
242
+ "tier": "presentation",
243
+ "type": "json"
244
+ },
176
245
  "className": {
177
246
  "description": "className prop",
178
247
  "label": "Class Name",
@@ -194,6 +263,16 @@
194
263
  "required": true,
195
264
  "type": "string"
196
265
  },
266
+ "kind": {
267
+ "name": "kind",
268
+ "required": false,
269
+ "type": "string",
270
+ "values": [
271
+ "rod",
272
+ "spring",
273
+ "string"
274
+ ]
275
+ },
197
276
  "to": {
198
277
  "name": "to",
199
278
  "required": true,
@@ -234,6 +313,64 @@
234
313
  "tier": "presentation",
235
314
  "type": "PhysicsCanvasError"
236
315
  },
316
+ "field": {
317
+ "description": "A single uniform vector/into/out field lattice. 2D only.",
318
+ "label": "Field",
319
+ "properties": {
320
+ "angle": {
321
+ "name": "angle",
322
+ "required": false,
323
+ "type": "number"
324
+ },
325
+ "color": {
326
+ "name": "color",
327
+ "required": false,
328
+ "type": "string"
329
+ },
330
+ "height": {
331
+ "name": "height",
332
+ "required": false,
333
+ "type": "number"
334
+ },
335
+ "kind": {
336
+ "name": "kind",
337
+ "required": true,
338
+ "type": "string",
339
+ "values": [
340
+ "arrows",
341
+ "into",
342
+ "out"
343
+ ]
344
+ },
345
+ "size": {
346
+ "name": "size",
347
+ "required": false,
348
+ "type": "number"
349
+ },
350
+ "spacing": {
351
+ "name": "spacing",
352
+ "required": false,
353
+ "type": "number"
354
+ },
355
+ "width": {
356
+ "name": "width",
357
+ "required": false,
358
+ "type": "number"
359
+ },
360
+ "x": {
361
+ "name": "x",
362
+ "required": false,
363
+ "type": "number"
364
+ },
365
+ "y": {
366
+ "name": "y",
367
+ "required": false,
368
+ "type": "number"
369
+ }
370
+ },
371
+ "tier": "presentation",
372
+ "type": "PhysicsCanvasField"
373
+ },
237
374
  "forceScale": {
238
375
  "default": 20.0,
239
376
  "description": "forceScale prop",
@@ -249,8 +386,7 @@
249
386
  "type": "number"
250
387
  },
251
388
  "interactive": {
252
- "default": false,
253
- "description": "interactive prop",
389
+ "description": "2D: pointer interaction (click/hover). 3D: orbit camera controls.",
254
390
  "label": "Interactive",
255
391
  "tier": "presentation",
256
392
  "type": "boolean"
@@ -261,6 +397,56 @@
261
397
  "tier": "presentation",
262
398
  "type": "boolean"
263
399
  },
400
+ "lighting": {
401
+ "default": {},
402
+ "description": "3D only: scene light rig as data.",
403
+ "label": "Lighting",
404
+ "tier": "presentation",
405
+ "type": "json"
406
+ },
407
+ "meters": {
408
+ "default": [],
409
+ "description": "Bottom-left labeled bar gauges. 2D only.",
410
+ "items": {
411
+ "properties": {
412
+ "color": {
413
+ "name": "color",
414
+ "required": false,
415
+ "type": "string"
416
+ },
417
+ "label": {
418
+ "name": "label",
419
+ "required": true,
420
+ "type": "string"
421
+ },
422
+ "max": {
423
+ "name": "max",
424
+ "required": false,
425
+ "type": "number"
426
+ },
427
+ "value": {
428
+ "name": "value",
429
+ "required": true,
430
+ "type": "number"
431
+ }
432
+ },
433
+ "type": "object"
434
+ },
435
+ "label": "Meters",
436
+ "tier": "presentation",
437
+ "type": "[PhysicsCanvasMetersItem]"
438
+ },
439
+ "mode": {
440
+ "default": "2d",
441
+ "description": "Painter: 2D raster (default) or 3D mesh scene via the lazy three.js host.",
442
+ "label": "Mode",
443
+ "tier": "presentation",
444
+ "type": "string",
445
+ "values": [
446
+ "2d",
447
+ "3d"
448
+ ]
449
+ },
264
450
  "onShapeClick": {
265
451
  "default": "SHAPE_CLICK",
266
452
  "description": "onShapeClick prop",
@@ -268,9 +454,128 @@
268
454
  "tier": "presentation",
269
455
  "type": "string"
270
456
  },
457
+ "post": {
458
+ "default": {},
459
+ "description": "3D only: post-processing stack (bloom/vignette).",
460
+ "label": "Post",
461
+ "tier": "presentation",
462
+ "type": "json"
463
+ },
464
+ "readouts": {
465
+ "default": [],
466
+ "description": "Top-right status chip row, forwarded to LearningCanvas verbatim.",
467
+ "items": {
468
+ "properties": {
469
+ "color": {
470
+ "name": "color",
471
+ "required": false,
472
+ "type": "string"
473
+ },
474
+ "label": {
475
+ "name": "label",
476
+ "required": true,
477
+ "type": "string"
478
+ },
479
+ "value": {
480
+ "name": "value",
481
+ "required": true,
482
+ "type": "string"
483
+ }
484
+ },
485
+ "type": "object"
486
+ },
487
+ "label": "Readouts",
488
+ "tier": "presentation",
489
+ "type": "[PhysicsCanvasReadoutsItem]"
490
+ },
491
+ "sceneObjects": {
492
+ "default": [],
493
+ "description": "Ground/wall/ramp/box/pivot scene fixtures. 2D only.",
494
+ "items": {
495
+ "properties": {
496
+ "color": {
497
+ "name": "color",
498
+ "required": false,
499
+ "type": "string"
500
+ },
501
+ "fill": {
502
+ "name": "fill",
503
+ "required": false,
504
+ "type": "string"
505
+ },
506
+ "height": {
507
+ "name": "height",
508
+ "required": false,
509
+ "type": "number"
510
+ },
511
+ "kind": {
512
+ "name": "kind",
513
+ "required": true,
514
+ "type": "string",
515
+ "values": [
516
+ "ground",
517
+ "wall",
518
+ "ramp",
519
+ "box",
520
+ "pivot"
521
+ ]
522
+ },
523
+ "label": {
524
+ "name": "label",
525
+ "required": false,
526
+ "type": "string"
527
+ },
528
+ "width": {
529
+ "name": "width",
530
+ "required": false,
531
+ "type": "number"
532
+ },
533
+ "x": {
534
+ "name": "x",
535
+ "required": false,
536
+ "type": "number"
537
+ },
538
+ "x1": {
539
+ "name": "x1",
540
+ "required": false,
541
+ "type": "number"
542
+ },
543
+ "x2": {
544
+ "name": "x2",
545
+ "required": false,
546
+ "type": "number"
547
+ },
548
+ "y": {
549
+ "name": "y",
550
+ "required": false,
551
+ "type": "number"
552
+ },
553
+ "y1": {
554
+ "name": "y1",
555
+ "required": false,
556
+ "type": "number"
557
+ },
558
+ "y2": {
559
+ "name": "y2",
560
+ "required": false,
561
+ "type": "number"
562
+ }
563
+ },
564
+ "type": "object"
565
+ },
566
+ "label": "Scene Objects",
567
+ "tier": "presentation",
568
+ "type": "[PhysicsCanvasSceneObjectsItem]"
569
+ },
570
+ "shadows": {
571
+ "description": "3D only: enable shadows. Omitted → the host default.",
572
+ "label": "Shadows",
573
+ "tier": "presentation",
574
+ "type": "boolean"
575
+ },
271
576
  "shapes": {
272
577
  "default": [],
273
- "description": "Extra declarative shapes in canvas pixel coordinates.",
578
+ "description": "Extra declarative shapes in canvas pixel coordinates (2D mode only — ignored in 3D).",
274
579
  "items": {
275
580
  "properties": {
276
581
  "align": {
@@ -297,6 +602,20 @@
297
602
  "required": false,
298
603
  "type": "string"
299
604
  },
605
+ "dash": {
606
+ "name": "dash",
607
+ "required": false,
608
+ "type": "string",
609
+ "values": [
610
+ "dashed",
611
+ "dotted"
612
+ ]
613
+ },
614
+ "endAngle": {
615
+ "name": "endAngle",
616
+ "required": false,
617
+ "type": "number"
618
+ },
300
619
  "fill": {
301
620
  "name": "fill",
302
621
  "required": false,
@@ -372,6 +691,11 @@
372
691
  "required": false,
373
692
  "type": "number"
374
693
  },
694
+ "startAngle": {
695
+ "name": "startAngle",
696
+ "required": false,
697
+ "type": "number"
698
+ },
375
699
  "step": {
376
700
  "name": "step",
377
701
  "required": false,
@@ -390,6 +714,7 @@
390
714
  "line",
391
715
  "arrow",
392
716
  "circle",
717
+ "ellipse",
393
718
  "rect",
394
719
  "polygon",
395
720
  "path",
@@ -447,6 +772,12 @@
447
772
  "tier": "presentation",
448
773
  "type": "boolean"
449
774
  },
775
+ "showGrid": {
776
+ "description": "3D only: show the ground grid (default off).",
777
+ "label": "Show Grid",
778
+ "tier": "presentation",
779
+ "type": "boolean"
780
+ },
450
781
  "showVelocity": {
451
782
  "default": true,
452
783
  "description": "showVelocity prop",
@@ -454,40 +785,405 @@
454
785
  "tier": "presentation",
455
786
  "type": "boolean"
456
787
  },
457
- "title": {
458
- "description": "title prop",
459
- "label": "Title",
460
- "tier": "presentation",
461
- "type": "string"
462
- },
463
- "velocityScale": {
464
- "default": 20.0,
465
- "description": "velocityScale prop",
466
- "label": "Velocity Scale",
467
- "tier": "presentation",
468
- "type": "number"
469
- },
470
- "width": {
471
- "default": 600.0,
472
- "description": "width prop",
473
- "label": "Width",
474
- "tier": "presentation",
475
- "type": "number"
476
- }
477
- },
478
- "emits": [
479
- {
480
- "description": "onShapeClick prop",
481
- "event": "@config.onShapeClick",
482
- "eventId": "evt_01M055GQAA3XBD1GWQJE6F3DX1",
483
- "payloadSchema": [
484
- {
485
- "name": "payload",
486
- "properties": [
487
- {
488
- "name": "id",
489
- "type": "string"
490
- },
788
+ "surface3d": {
789
+ "description": "A 3D height-field surface mesh (wave, terrain, potential well). 3D only.",
790
+ "label": "Surface3d",
791
+ "properties": {
792
+ "bands": {
793
+ "items": {
794
+ "properties": {
795
+ "color": {
796
+ "name": "color",
797
+ "required": true,
798
+ "type": "string"
799
+ },
800
+ "min": {
801
+ "name": "min",
802
+ "required": false,
803
+ "type": "number"
804
+ }
805
+ },
806
+ "type": "object"
807
+ },
808
+ "name": "bands",
809
+ "required": false,
810
+ "type": "array"
811
+ },
812
+ "color": {
813
+ "name": "color",
814
+ "required": false,
815
+ "type": "string"
816
+ },
817
+ "flatShading": {
818
+ "name": "flatShading",
819
+ "required": false,
820
+ "type": "boolean"
821
+ },
822
+ "heights": {
823
+ "items": {
824
+ "type": "number"
825
+ },
826
+ "name": "heights",
827
+ "required": true,
828
+ "type": "array"
829
+ },
830
+ "nx": {
831
+ "name": "nx",
832
+ "required": true,
833
+ "type": "number"
834
+ },
835
+ "ny": {
836
+ "name": "ny",
837
+ "required": true,
838
+ "type": "number"
839
+ },
840
+ "opacity": {
841
+ "name": "opacity",
842
+ "required": false,
843
+ "type": "number"
844
+ },
845
+ "spacing": {
846
+ "name": "spacing",
847
+ "required": false,
848
+ "type": "number"
849
+ },
850
+ "x": {
851
+ "name": "x",
852
+ "required": false,
853
+ "type": "number"
854
+ },
855
+ "y": {
856
+ "name": "y",
857
+ "required": false,
858
+ "type": "number"
859
+ }
860
+ },
861
+ "tier": "presentation",
862
+ "type": "PhysicsCanvasSurface3d"
863
+ },
864
+ "title": {
865
+ "description": "title prop",
866
+ "label": "Title",
867
+ "tier": "presentation",
868
+ "type": "string"
869
+ },
870
+ "traces": {
871
+ "default": [],
872
+ "description": "Inset sparkline panels, forwarded to LearningCanvas verbatim.",
873
+ "items": {
874
+ "properties": {
875
+ "backgroundColor": {
876
+ "name": "backgroundColor",
877
+ "required": false,
878
+ "type": "string"
879
+ },
880
+ "backgroundOpacity": {
881
+ "name": "backgroundOpacity",
882
+ "required": false,
883
+ "type": "number"
884
+ },
885
+ "frameColor": {
886
+ "name": "frameColor",
887
+ "required": false,
888
+ "type": "string"
889
+ },
890
+ "height": {
891
+ "name": "height",
892
+ "required": false,
893
+ "type": "number"
894
+ },
895
+ "series": {
896
+ "items": {
897
+ "properties": {
898
+ "color": {
899
+ "name": "color",
900
+ "required": false,
901
+ "type": "string"
902
+ },
903
+ "label": {
904
+ "name": "label",
905
+ "required": false,
906
+ "type": "string"
907
+ },
908
+ "samples": {
909
+ "items": {
910
+ "properties": {
911
+ "x": {
912
+ "name": "x",
913
+ "required": true,
914
+ "type": "number"
915
+ },
916
+ "y": {
917
+ "name": "y",
918
+ "required": true,
919
+ "type": "number"
920
+ }
921
+ },
922
+ "type": "object"
923
+ },
924
+ "name": "samples",
925
+ "required": true,
926
+ "type": "array"
927
+ }
928
+ },
929
+ "type": "object"
930
+ },
931
+ "name": "series",
932
+ "required": true,
933
+ "type": "array"
934
+ },
935
+ "width": {
936
+ "name": "width",
937
+ "required": false,
938
+ "type": "number"
939
+ },
940
+ "x": {
941
+ "name": "x",
942
+ "required": false,
943
+ "type": "number"
944
+ },
945
+ "xLabel": {
946
+ "name": "xLabel",
947
+ "required": false,
948
+ "type": "string"
949
+ },
950
+ "y": {
951
+ "name": "y",
952
+ "required": false,
953
+ "type": "number"
954
+ },
955
+ "yLabel": {
956
+ "name": "yLabel",
957
+ "required": false,
958
+ "type": "string"
959
+ }
960
+ },
961
+ "type": "object"
962
+ },
963
+ "label": "Traces",
964
+ "tier": "presentation",
965
+ "type": "[PhysicsCanvasTracesItem]"
966
+ },
967
+ "trails": {
968
+ "default": [],
969
+ "description": "Fading trajectory polylines (2D) / trajectory tubes (3D).",
970
+ "items": {
971
+ "properties": {
972
+ "color": {
973
+ "name": "color",
974
+ "required": false,
975
+ "type": "string"
976
+ },
977
+ "fade": {
978
+ "name": "fade",
979
+ "required": false,
980
+ "type": "boolean"
981
+ },
982
+ "id": {
983
+ "name": "id",
984
+ "required": false,
985
+ "type": "string"
986
+ },
987
+ "opacity": {
988
+ "name": "opacity",
989
+ "required": false,
990
+ "type": "number"
991
+ },
992
+ "points": {
993
+ "items": {
994
+ "properties": {
995
+ "x": {
996
+ "name": "x",
997
+ "required": true,
998
+ "type": "number"
999
+ },
1000
+ "y": {
1001
+ "name": "y",
1002
+ "required": true,
1003
+ "type": "number"
1004
+ },
1005
+ "z": {
1006
+ "name": "z",
1007
+ "required": false,
1008
+ "type": "number"
1009
+ }
1010
+ },
1011
+ "type": "object"
1012
+ },
1013
+ "name": "points",
1014
+ "required": true,
1015
+ "type": "array"
1016
+ },
1017
+ "width": {
1018
+ "name": "width",
1019
+ "required": false,
1020
+ "type": "number"
1021
+ }
1022
+ },
1023
+ "type": "object"
1024
+ },
1025
+ "label": "Trails",
1026
+ "tier": "presentation",
1027
+ "type": "[PhysicsCanvasTrailsItem]"
1028
+ },
1029
+ "vectorScale": {
1030
+ "default": 1.0,
1031
+ "description": "Multiplies every `vectors3d` entry's `dx`/`dy`/`dz` (default 1). 3D only.",
1032
+ "label": "Vector Scale",
1033
+ "tier": "presentation",
1034
+ "type": "number"
1035
+ },
1036
+ "vectors": {
1037
+ "default": [],
1038
+ "description": "Named force/velocity/free-body arrows, anchored by point or by body id. 2D only.",
1039
+ "items": {
1040
+ "properties": {
1041
+ "body": {
1042
+ "name": "body",
1043
+ "required": false,
1044
+ "type": "string"
1045
+ },
1046
+ "color": {
1047
+ "name": "color",
1048
+ "required": false,
1049
+ "type": "string"
1050
+ },
1051
+ "dash": {
1052
+ "name": "dash",
1053
+ "required": false,
1054
+ "type": "string",
1055
+ "values": [
1056
+ "dashed",
1057
+ "dotted"
1058
+ ]
1059
+ },
1060
+ "dx": {
1061
+ "name": "dx",
1062
+ "required": true,
1063
+ "type": "number"
1064
+ },
1065
+ "dy": {
1066
+ "name": "dy",
1067
+ "required": true,
1068
+ "type": "number"
1069
+ },
1070
+ "label": {
1071
+ "name": "label",
1072
+ "required": false,
1073
+ "type": "string"
1074
+ },
1075
+ "scale": {
1076
+ "name": "scale",
1077
+ "required": false,
1078
+ "type": "number"
1079
+ },
1080
+ "x": {
1081
+ "name": "x",
1082
+ "required": false,
1083
+ "type": "number"
1084
+ },
1085
+ "y": {
1086
+ "name": "y",
1087
+ "required": false,
1088
+ "type": "number"
1089
+ }
1090
+ },
1091
+ "type": "object"
1092
+ },
1093
+ "label": "Vectors",
1094
+ "tier": "presentation",
1095
+ "type": "[PhysicsCanvasVectorsItem]"
1096
+ },
1097
+ "vectors3d": {
1098
+ "default": [],
1099
+ "description": "Labeled 3D arrows (field arrows, axis triads). 3D only.",
1100
+ "items": {
1101
+ "properties": {
1102
+ "color": {
1103
+ "name": "color",
1104
+ "required": false,
1105
+ "type": "string"
1106
+ },
1107
+ "dx": {
1108
+ "name": "dx",
1109
+ "required": true,
1110
+ "type": "number"
1111
+ },
1112
+ "dy": {
1113
+ "name": "dy",
1114
+ "required": true,
1115
+ "type": "number"
1116
+ },
1117
+ "dz": {
1118
+ "name": "dz",
1119
+ "required": false,
1120
+ "type": "number"
1121
+ },
1122
+ "id": {
1123
+ "name": "id",
1124
+ "required": false,
1125
+ "type": "string"
1126
+ },
1127
+ "label": {
1128
+ "name": "label",
1129
+ "required": false,
1130
+ "type": "string"
1131
+ },
1132
+ "width": {
1133
+ "name": "width",
1134
+ "required": false,
1135
+ "type": "number"
1136
+ },
1137
+ "x": {
1138
+ "name": "x",
1139
+ "required": true,
1140
+ "type": "number"
1141
+ },
1142
+ "y": {
1143
+ "name": "y",
1144
+ "required": true,
1145
+ "type": "number"
1146
+ },
1147
+ "z": {
1148
+ "name": "z",
1149
+ "required": false,
1150
+ "type": "number"
1151
+ }
1152
+ },
1153
+ "type": "object"
1154
+ },
1155
+ "label": "Vectors3d",
1156
+ "tier": "presentation",
1157
+ "type": "[PhysicsCanvasVectors3dItem]"
1158
+ },
1159
+ "velocityScale": {
1160
+ "default": 20.0,
1161
+ "description": "velocityScale prop",
1162
+ "label": "Velocity Scale",
1163
+ "tier": "presentation",
1164
+ "type": "number"
1165
+ },
1166
+ "width": {
1167
+ "default": 600.0,
1168
+ "description": "width prop",
1169
+ "label": "Width",
1170
+ "tier": "presentation",
1171
+ "type": "number"
1172
+ }
1173
+ },
1174
+ "emits": [
1175
+ {
1176
+ "description": "onShapeClick prop",
1177
+ "event": "@config.onShapeClick",
1178
+ "eventId": "evt_01M055GQAA3XBD1GWQJE6F3DX1",
1179
+ "payloadSchema": [
1180
+ {
1181
+ "name": "payload",
1182
+ "properties": [
1183
+ {
1184
+ "name": "id",
1185
+ "type": "string"
1186
+ },
491
1187
  {
492
1188
  "name": "type",
493
1189
  "type": "string"
@@ -532,16 +1228,571 @@
532
1228
  "name": "Update",
533
1229
  "payloadSchema": [
534
1230
  {
535
- "name": "bodies",
536
- "type": "[PhysicsCanvasBodiesItem]"
1231
+ "name": "bodies",
1232
+ "properties": [
1233
+ {
1234
+ "name": "id",
1235
+ "type": "string"
1236
+ },
1237
+ {
1238
+ "name": "x",
1239
+ "required": true,
1240
+ "type": "number"
1241
+ },
1242
+ {
1243
+ "name": "y",
1244
+ "required": true,
1245
+ "type": "number"
1246
+ },
1247
+ {
1248
+ "name": "z",
1249
+ "type": "number"
1250
+ },
1251
+ {
1252
+ "name": "radius",
1253
+ "type": "number"
1254
+ },
1255
+ {
1256
+ "name": "color",
1257
+ "type": "string"
1258
+ },
1259
+ {
1260
+ "name": "label",
1261
+ "type": "string"
1262
+ },
1263
+ {
1264
+ "name": "vx",
1265
+ "type": "number"
1266
+ },
1267
+ {
1268
+ "name": "vy",
1269
+ "type": "number"
1270
+ },
1271
+ {
1272
+ "name": "vz",
1273
+ "type": "number"
1274
+ },
1275
+ {
1276
+ "name": "fx",
1277
+ "type": "number"
1278
+ },
1279
+ {
1280
+ "name": "fy",
1281
+ "type": "number"
1282
+ },
1283
+ {
1284
+ "name": "fz",
1285
+ "type": "number"
1286
+ }
1287
+ ],
1288
+ "type": "[object]"
1289
+ },
1290
+ {
1291
+ "name": "constraints",
1292
+ "properties": [
1293
+ {
1294
+ "name": "from",
1295
+ "required": true,
1296
+ "type": "string"
1297
+ },
1298
+ {
1299
+ "name": "to",
1300
+ "required": true,
1301
+ "type": "string"
1302
+ },
1303
+ {
1304
+ "name": "color",
1305
+ "type": "string"
1306
+ },
1307
+ {
1308
+ "name": "kind",
1309
+ "type": "string"
1310
+ }
1311
+ ],
1312
+ "type": "[object]"
1313
+ },
1314
+ {
1315
+ "name": "sceneObjects",
1316
+ "properties": [
1317
+ {
1318
+ "name": "kind",
1319
+ "required": true,
1320
+ "type": "string"
1321
+ },
1322
+ {
1323
+ "name": "x",
1324
+ "type": "number"
1325
+ },
1326
+ {
1327
+ "name": "y",
1328
+ "type": "number"
1329
+ },
1330
+ {
1331
+ "name": "x1",
1332
+ "type": "number"
1333
+ },
1334
+ {
1335
+ "name": "y1",
1336
+ "type": "number"
1337
+ },
1338
+ {
1339
+ "name": "x2",
1340
+ "type": "number"
1341
+ },
1342
+ {
1343
+ "name": "y2",
1344
+ "type": "number"
1345
+ },
1346
+ {
1347
+ "name": "width",
1348
+ "type": "number"
1349
+ },
1350
+ {
1351
+ "name": "height",
1352
+ "type": "number"
1353
+ },
1354
+ {
1355
+ "name": "color",
1356
+ "type": "string"
1357
+ },
1358
+ {
1359
+ "name": "fill",
1360
+ "type": "string"
1361
+ },
1362
+ {
1363
+ "name": "label",
1364
+ "type": "string"
1365
+ }
1366
+ ],
1367
+ "type": "[object]"
1368
+ },
1369
+ {
1370
+ "name": "trails",
1371
+ "properties": [
1372
+ {
1373
+ "name": "id",
1374
+ "type": "string"
1375
+ },
1376
+ {
1377
+ "name": "points",
1378
+ "properties": [
1379
+ {
1380
+ "name": "x",
1381
+ "required": true,
1382
+ "type": "number"
1383
+ },
1384
+ {
1385
+ "name": "y",
1386
+ "required": true,
1387
+ "type": "number"
1388
+ },
1389
+ {
1390
+ "name": "z",
1391
+ "type": "number"
1392
+ }
1393
+ ],
1394
+ "required": true,
1395
+ "type": "[object]"
1396
+ },
1397
+ {
1398
+ "name": "color",
1399
+ "type": "string"
1400
+ },
1401
+ {
1402
+ "name": "width",
1403
+ "type": "number"
1404
+ },
1405
+ {
1406
+ "name": "opacity",
1407
+ "type": "number"
1408
+ },
1409
+ {
1410
+ "name": "fade",
1411
+ "type": "boolean"
1412
+ }
1413
+ ],
1414
+ "type": "[object]"
1415
+ },
1416
+ {
1417
+ "name": "vectors",
1418
+ "properties": [
1419
+ {
1420
+ "name": "x",
1421
+ "type": "number"
1422
+ },
1423
+ {
1424
+ "name": "y",
1425
+ "type": "number"
1426
+ },
1427
+ {
1428
+ "name": "body",
1429
+ "type": "string"
1430
+ },
1431
+ {
1432
+ "name": "dx",
1433
+ "required": true,
1434
+ "type": "number"
1435
+ },
1436
+ {
1437
+ "name": "dy",
1438
+ "required": true,
1439
+ "type": "number"
1440
+ },
1441
+ {
1442
+ "name": "scale",
1443
+ "type": "number"
1444
+ },
1445
+ {
1446
+ "name": "color",
1447
+ "type": "string"
1448
+ },
1449
+ {
1450
+ "name": "label",
1451
+ "type": "string"
1452
+ },
1453
+ {
1454
+ "name": "dash",
1455
+ "type": "string"
1456
+ }
1457
+ ],
1458
+ "type": "[object]"
537
1459
  },
538
1460
  {
539
- "name": "constraints",
540
- "type": "[PhysicsCanvasConstraintsItem]"
1461
+ "name": "vectors3d",
1462
+ "properties": [
1463
+ {
1464
+ "name": "id",
1465
+ "type": "string"
1466
+ },
1467
+ {
1468
+ "name": "x",
1469
+ "required": true,
1470
+ "type": "number"
1471
+ },
1472
+ {
1473
+ "name": "y",
1474
+ "required": true,
1475
+ "type": "number"
1476
+ },
1477
+ {
1478
+ "name": "z",
1479
+ "type": "number"
1480
+ },
1481
+ {
1482
+ "name": "dx",
1483
+ "required": true,
1484
+ "type": "number"
1485
+ },
1486
+ {
1487
+ "name": "dy",
1488
+ "required": true,
1489
+ "type": "number"
1490
+ },
1491
+ {
1492
+ "name": "dz",
1493
+ "type": "number"
1494
+ },
1495
+ {
1496
+ "name": "color",
1497
+ "type": "string"
1498
+ },
1499
+ {
1500
+ "name": "label",
1501
+ "type": "string"
1502
+ },
1503
+ {
1504
+ "name": "width",
1505
+ "type": "number"
1506
+ }
1507
+ ],
1508
+ "type": "[object]"
1509
+ },
1510
+ {
1511
+ "name": "angles",
1512
+ "properties": [
1513
+ {
1514
+ "name": "x",
1515
+ "required": true,
1516
+ "type": "number"
1517
+ },
1518
+ {
1519
+ "name": "y",
1520
+ "required": true,
1521
+ "type": "number"
1522
+ },
1523
+ {
1524
+ "name": "from",
1525
+ "required": true,
1526
+ "type": "number"
1527
+ },
1528
+ {
1529
+ "name": "to",
1530
+ "required": true,
1531
+ "type": "number"
1532
+ },
1533
+ {
1534
+ "name": "radius",
1535
+ "type": "number"
1536
+ },
1537
+ {
1538
+ "name": "color",
1539
+ "type": "string"
1540
+ },
1541
+ {
1542
+ "name": "label",
1543
+ "type": "string"
1544
+ }
1545
+ ],
1546
+ "type": "[object]"
1547
+ },
1548
+ {
1549
+ "name": "meters",
1550
+ "properties": [
1551
+ {
1552
+ "name": "label",
1553
+ "required": true,
1554
+ "type": "string"
1555
+ },
1556
+ {
1557
+ "name": "value",
1558
+ "required": true,
1559
+ "type": "number"
1560
+ },
1561
+ {
1562
+ "name": "max",
1563
+ "type": "number"
1564
+ },
1565
+ {
1566
+ "name": "color",
1567
+ "type": "string"
1568
+ }
1569
+ ],
1570
+ "type": "[object]"
541
1571
  },
542
1572
  {
543
1573
  "name": "shapes",
544
- "type": "[PhysicsCanvasShapesItem]"
1574
+ "properties": [
1575
+ {
1576
+ "name": "type",
1577
+ "required": true,
1578
+ "type": "string"
1579
+ },
1580
+ {
1581
+ "name": "id",
1582
+ "type": "string"
1583
+ },
1584
+ {
1585
+ "name": "x",
1586
+ "type": "number"
1587
+ },
1588
+ {
1589
+ "name": "y",
1590
+ "type": "number"
1591
+ },
1592
+ {
1593
+ "name": "x1",
1594
+ "type": "number"
1595
+ },
1596
+ {
1597
+ "name": "y1",
1598
+ "type": "number"
1599
+ },
1600
+ {
1601
+ "name": "x2",
1602
+ "type": "number"
1603
+ },
1604
+ {
1605
+ "name": "y2",
1606
+ "type": "number"
1607
+ },
1608
+ {
1609
+ "name": "radius",
1610
+ "type": "number"
1611
+ },
1612
+ {
1613
+ "name": "width",
1614
+ "type": "number"
1615
+ },
1616
+ {
1617
+ "name": "height",
1618
+ "type": "number"
1619
+ },
1620
+ {
1621
+ "name": "points",
1622
+ "properties": [
1623
+ {
1624
+ "name": "x",
1625
+ "required": true,
1626
+ "type": "number"
1627
+ },
1628
+ {
1629
+ "name": "y",
1630
+ "required": true,
1631
+ "type": "number"
1632
+ }
1633
+ ],
1634
+ "type": "[object]"
1635
+ },
1636
+ {
1637
+ "name": "path",
1638
+ "type": "string"
1639
+ },
1640
+ {
1641
+ "name": "text",
1642
+ "type": "string"
1643
+ },
1644
+ {
1645
+ "name": "label",
1646
+ "type": "string"
1647
+ },
1648
+ {
1649
+ "name": "fontSize",
1650
+ "type": "number"
1651
+ },
1652
+ {
1653
+ "name": "align",
1654
+ "type": "string"
1655
+ },
1656
+ {
1657
+ "name": "axis",
1658
+ "type": "string"
1659
+ },
1660
+ {
1661
+ "name": "min",
1662
+ "type": "number"
1663
+ },
1664
+ {
1665
+ "name": "max",
1666
+ "type": "number"
1667
+ },
1668
+ {
1669
+ "name": "step",
1670
+ "type": "number"
1671
+ },
1672
+ {
1673
+ "name": "color",
1674
+ "type": "string"
1675
+ },
1676
+ {
1677
+ "name": "fill",
1678
+ "type": "string"
1679
+ },
1680
+ {
1681
+ "name": "lineWidth",
1682
+ "type": "number"
1683
+ },
1684
+ {
1685
+ "name": "opacity",
1686
+ "type": "number"
1687
+ },
1688
+ {
1689
+ "name": "startAngle",
1690
+ "type": "number"
1691
+ },
1692
+ {
1693
+ "name": "endAngle",
1694
+ "type": "number"
1695
+ },
1696
+ {
1697
+ "name": "dash",
1698
+ "type": "string"
1699
+ }
1700
+ ],
1701
+ "type": "[object]"
1702
+ },
1703
+ {
1704
+ "name": "readouts",
1705
+ "properties": [
1706
+ {
1707
+ "name": "label",
1708
+ "required": true,
1709
+ "type": "string"
1710
+ },
1711
+ {
1712
+ "name": "value",
1713
+ "required": true,
1714
+ "type": "string"
1715
+ },
1716
+ {
1717
+ "name": "color",
1718
+ "type": "string"
1719
+ }
1720
+ ],
1721
+ "type": "[object]"
1722
+ },
1723
+ {
1724
+ "name": "traces",
1725
+ "properties": [
1726
+ {
1727
+ "name": "x",
1728
+ "type": "number"
1729
+ },
1730
+ {
1731
+ "name": "y",
1732
+ "type": "number"
1733
+ },
1734
+ {
1735
+ "name": "width",
1736
+ "type": "number"
1737
+ },
1738
+ {
1739
+ "name": "height",
1740
+ "type": "number"
1741
+ },
1742
+ {
1743
+ "name": "series",
1744
+ "properties": [
1745
+ {
1746
+ "name": "samples",
1747
+ "properties": [
1748
+ {
1749
+ "name": "x",
1750
+ "required": true,
1751
+ "type": "number"
1752
+ },
1753
+ {
1754
+ "name": "y",
1755
+ "required": true,
1756
+ "type": "number"
1757
+ }
1758
+ ],
1759
+ "required": true,
1760
+ "type": "[object]"
1761
+ },
1762
+ {
1763
+ "name": "color",
1764
+ "type": "string"
1765
+ },
1766
+ {
1767
+ "name": "label",
1768
+ "type": "string"
1769
+ }
1770
+ ],
1771
+ "required": true,
1772
+ "type": "[object]"
1773
+ },
1774
+ {
1775
+ "name": "xLabel",
1776
+ "type": "string"
1777
+ },
1778
+ {
1779
+ "name": "yLabel",
1780
+ "type": "string"
1781
+ },
1782
+ {
1783
+ "name": "frameColor",
1784
+ "type": "string"
1785
+ },
1786
+ {
1787
+ "name": "backgroundColor",
1788
+ "type": "string"
1789
+ },
1790
+ {
1791
+ "name": "backgroundOpacity",
1792
+ "type": "number"
1793
+ }
1794
+ ],
1795
+ "type": "[object]"
545
1796
  }
546
1797
  ],
547
1798
  "synonyms": "tick, redraw, animate, frame",
@@ -589,22 +1840,39 @@
589
1840
  "render-ui",
590
1841
  "main",
591
1842
  {
1843
+ "angles": "@config.angles",
592
1844
  "animate": "@config.animate",
593
1845
  "backgroundColor": "@config.backgroundColor",
594
1846
  "bodies": "@config.bodies",
1847
+ "camera": "@config.camera",
595
1848
  "className": "@config.className",
596
1849
  "constraints": "@config.constraints",
597
1850
  "error": "@config.error",
1851
+ "field": "@config.field",
598
1852
  "forceScale": "@config.forceScale",
599
1853
  "height": "@config.height",
600
1854
  "interactive": "@config.interactive",
601
1855
  "isLoading": "@config.isLoading",
1856
+ "lighting": "@config.lighting",
1857
+ "meters": "@config.meters",
1858
+ "mode": "@config.mode",
602
1859
  "onShapeClick": "@config.onShapeClick",
1860
+ "post": "@config.post",
1861
+ "readouts": "@config.readouts",
1862
+ "sceneObjects": "@config.sceneObjects",
1863
+ "shadows": "@config.shadows",
603
1864
  "shapes": "@config.shapes",
604
1865
  "showForces": "@config.showForces",
1866
+ "showGrid": "@config.showGrid",
605
1867
  "showVelocity": "@config.showVelocity",
1868
+ "surface3d": "@config.surface3d",
606
1869
  "title": "@config.title",
1870
+ "traces": "@config.traces",
1871
+ "trails": "@config.trails",
607
1872
  "type": "physics-canvas",
1873
+ "vectorScale": "@config.vectorScale",
1874
+ "vectors": "@config.vectors",
1875
+ "vectors3d": "@config.vectors3d",
608
1876
  "velocityScale": "@config.velocityScale",
609
1877
  "width": "@config.width"
610
1878
  }
@@ -621,22 +1889,39 @@
621
1889
  "render-ui",
622
1890
  "main",
623
1891
  {
1892
+ "angles": "@payload.angles",
624
1893
  "animate": "@config.animate",
625
1894
  "backgroundColor": "@config.backgroundColor",
626
1895
  "bodies": "@payload.bodies",
1896
+ "camera": "@config.camera",
627
1897
  "className": "@config.className",
628
1898
  "constraints": "@payload.constraints",
629
1899
  "error": "@config.error",
1900
+ "field": "@config.field",
630
1901
  "forceScale": "@config.forceScale",
631
1902
  "height": "@config.height",
632
1903
  "interactive": "@config.interactive",
633
1904
  "isLoading": "@config.isLoading",
1905
+ "lighting": "@config.lighting",
1906
+ "meters": "@payload.meters",
1907
+ "mode": "@config.mode",
634
1908
  "onShapeClick": "@config.onShapeClick",
1909
+ "post": "@config.post",
1910
+ "readouts": "@payload.readouts",
1911
+ "sceneObjects": "@payload.sceneObjects",
1912
+ "shadows": "@config.shadows",
635
1913
  "shapes": "@payload.shapes",
636
1914
  "showForces": "@config.showForces",
1915
+ "showGrid": "@config.showGrid",
637
1916
  "showVelocity": "@config.showVelocity",
1917
+ "surface3d": "@config.surface3d",
638
1918
  "title": "@config.title",
1919
+ "traces": "@payload.traces",
1920
+ "trails": "@payload.trails",
639
1921
  "type": "physics-canvas",
1922
+ "vectorScale": "@config.vectorScale",
1923
+ "vectors": "@payload.vectors",
1924
+ "vectors3d": "@payload.vectors3d",
640
1925
  "velocityScale": "@config.velocityScale",
641
1926
  "width": "@config.width"
642
1927
  }