@almadar/std 16.174.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 (45) hide show
  1. package/behaviors/lolo/ui/core/molecules/ui-table-view.lolo +4 -9
  2. package/behaviors/lolo/ui/learning/atoms/std-learn-classify.lolo +132 -22
  3. package/behaviors/lolo/ui/learning/atoms/std-learn-derivation.lolo +428 -0
  4. package/behaviors/lolo/ui/learning/atoms/std-learn-doser.lolo +520 -0
  5. package/behaviors/lolo/ui/learning/atoms/std-learn-scatter-fit.lolo +805 -0
  6. package/behaviors/lolo/ui/learning/atoms/std-learn-tour-3d.lolo +31 -2
  7. package/behaviors/lolo/ui/learning/atoms/std-learn-transport.lolo +186 -0
  8. package/behaviors/lolo/ui/learning/atoms/std-learn-tree.lolo +522 -0
  9. package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +192 -0
  10. package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +111 -2
  11. package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +150 -1
  12. package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +132 -1
  13. package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +48 -1
  14. package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +141 -1
  15. package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +199 -1
  16. package/behaviors/registry/ui/core/molecules/ui-table-view.orb +4 -39
  17. package/behaviors/registry/ui/learning/atoms/std-learn-classify.orb +1288 -197
  18. package/behaviors/registry/ui/learning/atoms/std-learn-derivation.orb +2512 -0
  19. package/behaviors/registry/ui/learning/atoms/std-learn-doser.orb +3678 -0
  20. package/behaviors/registry/ui/learning/atoms/std-learn-scatter-fit.orb +6539 -0
  21. package/behaviors/registry/ui/learning/atoms/std-learn-tour-3d.orb +173 -2
  22. package/behaviors/registry/ui/learning/atoms/std-learn-transport.orb +986 -0
  23. package/behaviors/registry/ui/learning/atoms/std-learn-tree.orb +3333 -0
  24. package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +716 -0
  25. package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +506 -1
  26. package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +684 -0
  27. package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +634 -0
  28. package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +256 -0
  29. package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +736 -12
  30. package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +1061 -33
  31. package/dist/behaviors/exports-reader.js +2448 -2184
  32. package/dist/behaviors/functions/index.d.ts +800 -13
  33. package/dist/behaviors/functions/index.js +2431 -2185
  34. package/dist/behaviors/index.d.ts +1 -1
  35. package/dist/behaviors/index.js +2449 -2185
  36. package/dist/behaviors/query.js +2448 -2184
  37. package/dist/behaviors-embeddings.hash.json +3 -3
  38. package/dist/behaviors-embeddings.json +261 -237
  39. package/dist/behaviors-registry.json +4385 -1298
  40. package/dist/index.d.ts +1 -1
  41. package/dist/index.js +2449 -2185
  42. package/dist/knob-embeddings.hash.json +3 -3
  43. package/dist/knob-embeddings.json +1 -1
  44. package/dist/registry/factory-signatures.json +1 -1
  45. package/package.json +2 -2
@@ -20,9 +20,102 @@ orbital PhysicsCanvasOrbital {
20
20
  from : string!
21
21
  to : string!
22
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
23
116
  }
24
117
  type PhysicsCanvasShapesItem = {
25
- type : "line" | "arrow" | "circle" | "rect" | "polygon" | "path" | "text" | "axis" | "grid"!
118
+ type : "line" | "arrow" | "circle" | "ellipse" | "rect" | "polygon" | "path" | "text" | "axis" | "grid" | "venn-region"!
26
119
  id : string
27
120
  x : number
28
121
  y : number
@@ -47,11 +140,42 @@ orbital PhysicsCanvasOrbital {
47
140
  fill : string
48
141
  lineWidth : number
49
142
  opacity : number
143
+ startAngle : number
144
+ endAngle : number
145
+ dash : "dashed" | "dotted"
146
+ inside : [string]
147
+ outside : [string]
50
148
  }
51
149
  type PhysicsCanvasShapesItemPointsItem = {
52
150
  x : number!
53
151
  y : number!
54
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
+ }
55
179
  type PhysicsCanvasError = {
56
180
  message : string!
57
181
  name : string
@@ -89,7 +213,18 @@ orbital PhysicsCanvasOrbital {
89
213
  showForces: @config.showForces
90
214
  velocityScale: @config.velocityScale
91
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
92
225
  shapes: @config.shapes
226
+ readouts: @config.readouts
227
+ traces: @config.traces
93
228
  showGrid: @config.showGrid
94
229
  shadows: @config.shadows
95
230
  interactive: @config.interactive
@@ -116,7 +251,18 @@ orbital PhysicsCanvasOrbital {
116
251
  showForces: @config.showForces
117
252
  velocityScale: @config.velocityScale
118
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
119
263
  shapes: @payload.shapes
264
+ readouts: @payload.readouts
265
+ traces: @payload.traces
120
266
  showGrid: @config.showGrid
121
267
  shadows: @config.shadows
122
268
  interactive: @config.interactive
@@ -140,7 +286,15 @@ orbital PhysicsCanvasOrbital {
140
286
  UPDATE {
141
287
  bodies : [PhysicsCanvasBodiesItem]
142
288
  constraints : [PhysicsCanvasConstraintsItem]
289
+ sceneObjects : [PhysicsCanvasSceneObjectsItem]
290
+ trails : [PhysicsCanvasTrailsItem]
291
+ vectors : [PhysicsCanvasVectorsItem]
292
+ vectors3d : [PhysicsCanvasVectors3dItem]
293
+ angles : [PhysicsCanvasAnglesItem]
294
+ meters : [PhysicsCanvasMetersItem]
143
295
  shapes : [PhysicsCanvasShapesItem]
296
+ readouts : [PhysicsCanvasReadoutsItem]
297
+ traces : [PhysicsCanvasTracesItem]
144
298
  }
145
299
  @description "Live scene update; payload carries the current drawable state."
146
300
  @synonyms "tick, redraw, animate, frame"
@@ -208,10 +362,54 @@ orbital PhysicsCanvasOrbital {
208
362
  @label "Force Scale"
209
363
  @description "forceScale prop"
210
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"
211
401
  shapes : [PhysicsCanvasShapesItem] = []
212
402
  @label "Shapes"
213
403
  @description "Extra declarative shapes in canvas pixel coordinates (2D mode only — ignored in 3D)."
214
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"
215
413
  showGrid : boolean
216
414
  @label "Show Grid"
217
415
  @description "3D only: show the ground grid (default off)."
@@ -55,15 +55,6 @@
55
55
  "parent": "trt_01KXG04RSAMGZ70BX7E6M2EKPH",
56
56
  "renames": []
57
57
  },
58
- "evt_01KYQ93WDMPFGCAXSHZQ4RAVKK": {
59
- "bakedName": "@config.itemClickEvent",
60
- "curName": "@config.itemClickEvent",
61
- "id": "evt_01KYQ93WDMPFGCAXSHZQ4RAVKK",
62
- "kind": "event",
63
- "owner": "workspace",
64
- "parent": "trt_01KXG04RSAMGZ70BX7E6M2EKPH",
65
- "renames": []
66
- },
67
58
  "orb_01KXG04RSAMH7355J2NZQRJWY9": {
68
59
  "bakedName": "TableViewOrbital",
69
60
  "curName": "TableViewOrbital",
@@ -380,7 +371,7 @@
380
371
  },
381
372
  "itemActions": {
382
373
  "default": [],
383
- "description": "Per-row action buttons (trailing column).",
374
+ "description": "Per-row actions, collected under a trailing kebab overflow menu.",
384
375
  "items": {
385
376
  "properties": {
386
377
  "event": {
@@ -417,8 +408,8 @@
417
408
  "type": "[TableViewItemActionsItem]"
418
409
  },
419
410
  "itemClickEvent": {
420
- "default": "ITEM_CLICK",
421
- "description": "When set, the whole row is clickable and emits UI:{itemClickEvent} with { id, row } (action-button clicks stopPropagation so they still win). Mirrors DataList's contract.",
411
+ "default": "",
412
+ "description": "When set, the whole row is clickable and emits UI:{itemClickEvent} with { id, row } (action-button clicks stopPropagation so they still win). Mirrors DataList's contract. When OMITTED and `itemActions` exist, the row click defaults to the first non-danger item action (the view/open action by authoring convention) — a danger action never becomes the row default (destructive actions require intentional reach).",
422
413
  "label": "Item Click Event",
423
414
  "tier": "presentation",
424
415
  "type": "string"
@@ -438,7 +429,7 @@
438
429
  ]
439
430
  },
440
431
  "maxInlineActions": {
441
- "description": "Max inline action buttons before the rest collapse into a '⋯' overflow menu. Omit = all inline.",
432
+ "description": "maxInlineActions prop",
442
433
  "label": "Max Inline Actions",
443
434
  "tier": "presentation",
444
435
  "type": "number"
@@ -518,19 +509,6 @@
518
509
  }
519
510
  },
520
511
  "emits": [
521
- {
522
- "description": "When set, the whole row is clickable and emits UI:{itemClickEvent} with { id, row } (action-button clicks stopPropagation so they still win). Mirrors DataList's contract.",
523
- "event": "@config.itemClickEvent",
524
- "eventId": "evt_01KYQ93WDMPFGCAXSHZQ4RAVKK",
525
- "payloadSchema": [
526
- {
527
- "name": "id",
528
- "type": "string"
529
- }
530
- ],
531
- "scope": "external",
532
- "tier": "essential"
533
- },
534
512
  {
535
513
  "description": "Event emitted on selection change: UI:{selectEvent} with { ids, rows }.",
536
514
  "event": "@config.selectEvent",
@@ -619,19 +597,6 @@
619
597
  "synonyms": "loaded, fetched, retrieved",
620
598
  "tier": "essential"
621
599
  },
622
- {
623
- "description": "When set, the whole row is clickable and emits UI:{itemClickEvent} with { id, row } (action-button clicks stopPropagation so they still win). Mirrors DataList's contract.",
624
- "id": "evt_01KYQ93WDMPFGCAXSHZQ4RAVKK",
625
- "key": "@config.itemClickEvent",
626
- "name": "@config.item click event",
627
- "payloadSchema": [
628
- {
629
- "name": "id",
630
- "type": "string"
631
- }
632
- ],
633
- "tier": "essential"
634
- },
635
600
  {
636
601
  "description": "Event emitted on selection change: UI:{selectEvent} with { ids, rows }.",
637
602
  "id": "evt_01KXG04RSDTCZQPH74KHHQR5MZ",