@almadar/std 16.239.0 → 16.242.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 (167) hide show
  1. package/behaviors/behaviors-registry.json +4814 -553
  2. package/behaviors/lolo/agent/atoms/std-agent-memory.lolo +38 -1
  3. package/behaviors/lolo/agent/atoms/std-agent-session.lolo +1074 -47
  4. package/behaviors/lolo/agent/atoms/std-agent-tool-loop.lolo +8 -7
  5. package/behaviors/lolo/agent/organisms/std-agent-assistant.lolo +56 -37
  6. package/behaviors/lolo/infra/atoms/std-page-open.lolo +59 -0
  7. package/behaviors/lolo/infra/atoms/std-page-search.lolo +134 -0
  8. package/behaviors/lolo/infra/atoms/std-page-treat.lolo +59 -0
  9. package/behaviors/lolo/infra/atoms/std-page-watch.lolo +86 -0
  10. package/behaviors/lolo/ui/core/atoms/std-board.lolo +53 -6
  11. package/behaviors/lolo/ui/core/atoms/std-book-reader.lolo +25 -1
  12. package/behaviors/lolo/ui/core/atoms/std-card-grid.lolo +9 -0
  13. package/behaviors/lolo/ui/core/atoms/std-doc-page.lolo +153 -0
  14. package/behaviors/lolo/ui/core/atoms/std-site-header.lolo +15 -3
  15. package/behaviors/lolo/ui/core/atoms/std-tag-strip.lolo +2 -2
  16. package/behaviors/lolo/ui/core/atoms/std-tag-taxonomy.lolo +7 -7
  17. package/behaviors/lolo/ui/core/atoms/std-version-history.lolo +1 -1
  18. package/behaviors/lolo/ui/core/molecules/ui-header.lolo +5 -0
  19. package/behaviors/lolo/ui/learning/atoms/std-learn-arrangement.lolo +124 -92
  20. package/behaviors/lolo/ui/learning/atoms/std-learn-classify.lolo +114 -55
  21. package/behaviors/lolo/ui/learning/atoms/std-learn-compare.lolo +40 -14
  22. package/behaviors/lolo/ui/learning/atoms/std-learn-coupled-sim.lolo +363 -123
  23. package/behaviors/lolo/ui/learning/atoms/std-learn-derivation.lolo +93 -48
  24. package/behaviors/lolo/ui/learning/atoms/std-learn-diagram.lolo +60 -28
  25. package/behaviors/lolo/ui/learning/atoms/std-learn-doser.lolo +193 -96
  26. package/behaviors/lolo/ui/learning/atoms/std-learn-estimate.lolo +75 -32
  27. package/behaviors/lolo/ui/learning/atoms/std-learn-goal-seek.lolo +142 -86
  28. package/behaviors/lolo/ui/learning/atoms/std-learn-grid-sim.lolo +266 -98
  29. package/behaviors/lolo/ui/learning/atoms/std-learn-hotspot.lolo +103 -65
  30. package/behaviors/lolo/ui/learning/atoms/std-learn-live-sim.lolo +223 -109
  31. package/behaviors/lolo/ui/learning/atoms/std-learn-measure.lolo +232 -64
  32. package/behaviors/lolo/ui/learning/atoms/std-learn-param-explorer.lolo +69 -29
  33. package/behaviors/lolo/ui/learning/atoms/std-learn-perturb.lolo +363 -123
  34. package/behaviors/lolo/ui/learning/atoms/std-learn-predict.lolo +73 -41
  35. package/behaviors/lolo/ui/learning/atoms/std-learn-sample-accumulator.lolo +96 -38
  36. package/behaviors/lolo/ui/learning/atoms/std-learn-sandbox.lolo +65 -45
  37. package/behaviors/lolo/ui/learning/atoms/std-learn-scatter-fit.lolo +243 -117
  38. package/behaviors/lolo/ui/learning/atoms/std-learn-scenario.lolo +76 -28
  39. package/behaviors/lolo/ui/learning/atoms/std-learn-sim-3d.lolo +228 -109
  40. package/behaviors/lolo/ui/learning/atoms/std-learn-speed-drill.lolo +95 -44
  41. package/behaviors/lolo/ui/learning/atoms/std-learn-stepper.lolo +199 -125
  42. package/behaviors/lolo/ui/learning/atoms/std-learn-tour-3d.lolo +92 -48
  43. package/behaviors/lolo/ui/learning/atoms/std-learn-trace-player.lolo +239 -78
  44. package/behaviors/lolo/ui/learning/atoms/std-learn-transport.lolo +147 -38
  45. package/behaviors/lolo/ui/learning/atoms/std-learn-tree.lolo +123 -58
  46. package/behaviors/lolo/ui/learning/atoms/ui-algo-graph-canvas.lolo +22 -0
  47. package/behaviors/lolo/ui/learning/atoms/ui-algorithm-canvas.lolo +26 -0
  48. package/behaviors/lolo/ui/learning/atoms/ui-biology-canvas.lolo +26 -0
  49. package/behaviors/lolo/ui/learning/atoms/ui-chemistry-canvas.lolo +27 -1
  50. package/behaviors/lolo/ui/learning/atoms/ui-learning-canvas.lolo +27 -1
  51. package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +29 -9
  52. package/behaviors/lolo/ui/learning/atoms/ui-physics-canvas.lolo +26 -0
  53. package/behaviors/lolo-behavior-contracts.json +1 -1
  54. package/behaviors/registry/agent/atoms/std-agent-memory.orb +372 -2
  55. package/behaviors/registry/agent/atoms/std-agent-session.orb +4752 -348
  56. package/behaviors/registry/agent/atoms/std-agent-tool-loop.orb +54 -42
  57. package/behaviors/registry/agent/organisms/std-agent-assistant.orb +356 -122
  58. package/behaviors/registry/factory-signatures.json +1 -1
  59. package/behaviors/registry/infra/atoms/std-page-open.orb +435 -0
  60. package/behaviors/registry/infra/atoms/std-page-search.orb +867 -0
  61. package/behaviors/registry/infra/atoms/std-page-treat.orb +494 -0
  62. package/behaviors/registry/infra/atoms/std-page-watch.orb +554 -0
  63. package/behaviors/registry/ui/core/atoms/std-board.orb +110 -14
  64. package/behaviors/registry/ui/core/atoms/std-book-reader.orb +119 -0
  65. package/behaviors/registry/ui/core/atoms/std-card-grid.orb +61 -0
  66. package/behaviors/registry/ui/core/atoms/std-doc-page.orb +594 -0
  67. package/behaviors/registry/ui/core/atoms/std-site-header.orb +40 -2
  68. package/behaviors/registry/ui/core/atoms/std-tag-strip.orb +2 -0
  69. package/behaviors/registry/ui/core/atoms/std-tag-taxonomy.orb +24 -0
  70. package/behaviors/registry/ui/core/atoms/std-version-history.orb +8 -1
  71. package/behaviors/registry/ui/core/molecules/ui-header.orb +7 -0
  72. package/behaviors/registry/ui/learning/atoms/std-learn-arrangement.orb +903 -369
  73. package/behaviors/registry/ui/learning/atoms/std-learn-classify.orb +1002 -232
  74. package/behaviors/registry/ui/learning/atoms/std-learn-compare.orb +253 -74
  75. package/behaviors/registry/ui/learning/atoms/std-learn-coupled-sim.orb +3624 -921
  76. package/behaviors/registry/ui/learning/atoms/std-learn-derivation.orb +685 -144
  77. package/behaviors/registry/ui/learning/atoms/std-learn-diagram.orb +404 -52
  78. package/behaviors/registry/ui/learning/atoms/std-learn-doser.orb +1787 -210
  79. package/behaviors/registry/ui/learning/atoms/std-learn-estimate.orb +699 -71
  80. package/behaviors/registry/ui/learning/atoms/std-learn-goal-seek.orb +1102 -578
  81. package/behaviors/registry/ui/learning/atoms/std-learn-grid-sim.orb +2760 -872
  82. package/behaviors/registry/ui/learning/atoms/std-learn-hotspot.orb +689 -152
  83. package/behaviors/registry/ui/learning/atoms/std-learn-live-sim.orb +1431 -633
  84. package/behaviors/registry/ui/learning/atoms/std-learn-measure.orb +2485 -512
  85. package/behaviors/registry/ui/learning/atoms/std-learn-param-explorer.orb +501 -197
  86. package/behaviors/registry/ui/learning/atoms/std-learn-perturb.orb +3642 -928
  87. package/behaviors/registry/ui/learning/atoms/std-learn-predict.orb +705 -125
  88. package/behaviors/registry/ui/learning/atoms/std-learn-sample-accumulator.orb +624 -114
  89. package/behaviors/registry/ui/learning/atoms/std-learn-sandbox.orb +405 -153
  90. package/behaviors/registry/ui/learning/atoms/std-learn-scatter-fit.orb +1911 -611
  91. package/behaviors/registry/ui/learning/atoms/std-learn-scenario.orb +436 -128
  92. package/behaviors/registry/ui/learning/atoms/std-learn-sim-3d.orb +2482 -485
  93. package/behaviors/registry/ui/learning/atoms/std-learn-speed-drill.orb +896 -192
  94. package/behaviors/registry/ui/learning/atoms/std-learn-stepper.orb +2001 -759
  95. package/behaviors/registry/ui/learning/atoms/std-learn-tour-3d.orb +734 -228
  96. package/behaviors/registry/ui/learning/atoms/std-learn-trace-player.orb +2501 -764
  97. package/behaviors/registry/ui/learning/atoms/std-learn-transport.orb +1591 -173
  98. package/behaviors/registry/ui/learning/atoms/std-learn-tree.orb +883 -122
  99. package/behaviors/registry/ui/learning/atoms/ui-algo-graph-canvas.orb +176 -0
  100. package/behaviors/registry/ui/learning/atoms/ui-algorithm-canvas.orb +211 -0
  101. package/behaviors/registry/ui/learning/atoms/ui-biology-canvas.orb +211 -0
  102. package/behaviors/registry/ui/learning/atoms/ui-chemistry-canvas.orb +212 -1
  103. package/behaviors/registry/ui/learning/atoms/ui-learning-canvas.orb +212 -1
  104. package/behaviors/registry/ui/learning/atoms/ui-math-canvas.orb +203 -9
  105. package/behaviors/registry/ui/learning/atoms/ui-physics-canvas.orb +211 -0
  106. package/behaviors/signatures.lolo +325 -655
  107. package/canonical-operators.json +35 -1
  108. package/dist/behaviors/exports-reader.js +41980 -35508
  109. package/dist/behaviors/functions/index.d.ts +1063 -140
  110. package/dist/behaviors/functions/index.js +41951 -35506
  111. package/dist/behaviors/index.d.ts +1 -1
  112. package/dist/behaviors/index.js +41981 -35509
  113. package/dist/behaviors/query.js +41980 -35508
  114. package/dist/behaviors-embeddings.hash.json +3 -3
  115. package/dist/behaviors-embeddings.json +47 -27
  116. package/dist/behaviors-registry.json +4814 -553
  117. package/dist/index.d.ts +4 -4
  118. package/dist/index.js +42019 -35509
  119. package/dist/knob-embeddings.hash.json +3 -3
  120. package/dist/knob-embeddings.json +623 -263
  121. package/dist/modules/anim.d.ts +1 -1
  122. package/dist/modules/array.d.ts +1 -1
  123. package/dist/modules/async.d.ts +1 -1
  124. package/dist/modules/behavior.d.ts +1 -1
  125. package/dist/modules/browser.d.ts +1 -1
  126. package/dist/modules/composition.d.ts +1 -1
  127. package/dist/modules/contract.d.ts +1 -1
  128. package/dist/modules/core.d.ts +1 -1
  129. package/dist/modules/core.js +2 -0
  130. package/dist/modules/data.d.ts +1 -1
  131. package/dist/modules/ease.d.ts +1 -1
  132. package/dist/modules/format.d.ts +1 -1
  133. package/dist/modules/geo.d.ts +1 -1
  134. package/dist/modules/graph.d.ts +1 -1
  135. package/dist/modules/grid.d.ts +1 -1
  136. package/dist/modules/i18n.d.ts +17 -0
  137. package/dist/modules/i18n.js +22 -0
  138. package/dist/modules/index.d.ts +2 -1
  139. package/dist/modules/index.js +24 -1
  140. package/dist/modules/integration.d.ts +1 -1
  141. package/dist/modules/json.d.ts +1 -1
  142. package/dist/modules/llm.d.ts +1 -1
  143. package/dist/modules/math.d.ts +1 -1
  144. package/dist/modules/memory.d.ts +1 -1
  145. package/dist/modules/nn.d.ts +1 -1
  146. package/dist/modules/noise.d.ts +1 -1
  147. package/dist/modules/object.d.ts +1 -1
  148. package/dist/modules/os.d.ts +1 -1
  149. package/dist/modules/path.d.ts +1 -1
  150. package/dist/modules/prob.d.ts +1 -1
  151. package/dist/modules/session.d.ts +1 -1
  152. package/dist/modules/str.d.ts +1 -1
  153. package/dist/modules/tensor.d.ts +1 -1
  154. package/dist/modules/time.d.ts +1 -1
  155. package/dist/modules/trace.d.ts +1 -1
  156. package/dist/modules/train.d.ts +1 -1
  157. package/dist/modules/validate.d.ts +1 -1
  158. package/dist/modules/vector.d.ts +1 -1
  159. package/dist/modules/workspace.d.ts +1 -1
  160. package/dist/registry/factory-signatures.json +1 -1
  161. package/dist/registry.d.ts +10 -3
  162. package/dist/registry.js +31 -1
  163. package/dist/{types-DLx38UFZ.d.ts → types-Cdb321uM.d.ts} +9 -3
  164. package/i18n/ar.json +1 -0
  165. package/i18n/en.json +1 -0
  166. package/i18n/sl.json +1 -0
  167. package/package.json +3 -3
@@ -207,7 +207,7 @@
207
207
  "type": "boolean"
208
208
  },
209
209
  "color": {
210
- "default": "#3b82f6",
210
+ "default": "series-2",
211
211
  "label": "Curve Color",
212
212
  "tier": "presentation",
213
213
  "type": "string"
@@ -327,6 +327,13 @@
327
327
  "tier": "presentation",
328
328
  "type": "boolean"
329
329
  },
330
+ "summary": {
331
+ "default": "",
332
+ "description": "One line under the title saying what the learner is looking at (keep it under ~65 characters). Empty shows no line.",
333
+ "label": "Concept",
334
+ "tier": "presentation",
335
+ "type": "string"
336
+ },
330
337
  "title": {
331
338
  "default": "Parameter Explorer",
332
339
  "description": "Title shown above the canvas.",
@@ -875,68 +882,66 @@
875
882
  {
876
883
  "children": [
877
884
  {
878
- "content": "@entity.title",
879
- "type": "typography",
880
- "variant": "h4"
881
- },
882
- {
885
+ "align": "start",
883
886
  "children": [
884
887
  {
885
- "content": [
886
- "str/concat",
887
- "@entity.paramALabel",
888
- ": ",
888
+ "children": [
889
+ {
890
+ "content": "@entity.title",
891
+ "type": "typography",
892
+ "variant": "h4"
893
+ },
889
894
  [
890
- "math/round",
891
- "@entity.paramA",
892
- 2.0
895
+ "if",
896
+ [
897
+ "==",
898
+ "@config.summary",
899
+ ""
900
+ ],
901
+ null,
902
+ {
903
+ "color": "muted",
904
+ "content": "@config.summary",
905
+ "type": "typography",
906
+ "variant": "body2"
907
+ }
893
908
  ]
894
909
  ],
895
- "type": "typography",
896
- "variant": "caption"
910
+ "direction": "vertical",
911
+ "gap": "xs",
912
+ "type": "stack"
897
913
  },
898
914
  {
899
- "action": "SET_PARAM_A",
900
- "max": "@config.paramAMax",
901
- "min": "@config.paramAMin",
902
- "showTooltip": true,
903
- "step": "@config.paramAStep",
904
- "type": "range-slider",
905
- "value": "@entity.paramA"
906
- }
907
- ],
908
- "direction": "vertical",
909
- "gap": "xs",
910
- "type": "stack"
911
- },
912
- {
913
- "children": [
914
- {
915
- "content": [
915
+ "label": [
916
916
  "str/concat",
917
- "@entity.paramBLabel",
918
- ": ",
917
+ "y = ",
919
918
  [
920
- "math/round",
921
- "@entity.paramB",
922
- 2.0
919
+ "if",
920
+ [
921
+ "==",
922
+ "@entity.curveKind",
923
+ "power"
924
+ ],
925
+ "A·xᴮ",
926
+ [
927
+ "if",
928
+ [
929
+ "==",
930
+ "@entity.curveKind",
931
+ "linear"
932
+ ],
933
+ "A + B·x",
934
+ "A·sin(B·x)"
935
+ ]
923
936
  ]
924
937
  ],
925
- "type": "typography",
926
- "variant": "caption"
927
- },
928
- {
929
- "action": "SET_PARAM_B",
930
- "max": "@config.paramBMax",
931
- "min": "@config.paramBMin",
932
- "showTooltip": true,
933
- "step": "@config.paramBStep",
934
- "type": "range-slider",
935
- "value": "@entity.paramB"
938
+ "type": "badge",
939
+ "variant": "neutral"
936
940
  }
937
941
  ],
938
- "direction": "vertical",
939
- "gap": "xs",
942
+ "direction": "horizontal",
943
+ "gap": "md",
944
+ "justify": "between",
940
945
  "type": "stack"
941
946
  },
942
947
  {
@@ -958,6 +963,73 @@
958
963
  "yMax": "@entity.yMax",
959
964
  "yMin": "@entity.yMin"
960
965
  },
966
+ {
967
+ "children": [
968
+ {
969
+ "children": [
970
+ {
971
+ "content": [
972
+ "str/concat",
973
+ "@entity.paramALabel",
974
+ ": ",
975
+ [
976
+ "math/round",
977
+ "@entity.paramA",
978
+ 2.0
979
+ ]
980
+ ],
981
+ "type": "typography",
982
+ "variant": "caption"
983
+ },
984
+ {
985
+ "action": "SET_PARAM_A",
986
+ "max": "@config.paramAMax",
987
+ "min": "@config.paramAMin",
988
+ "showTooltip": true,
989
+ "step": "@config.paramAStep",
990
+ "type": "range-slider",
991
+ "value": "@entity.paramA"
992
+ }
993
+ ],
994
+ "direction": "vertical",
995
+ "gap": "xs",
996
+ "type": "stack"
997
+ },
998
+ {
999
+ "children": [
1000
+ {
1001
+ "content": [
1002
+ "str/concat",
1003
+ "@entity.paramBLabel",
1004
+ ": ",
1005
+ [
1006
+ "math/round",
1007
+ "@entity.paramB",
1008
+ 2.0
1009
+ ]
1010
+ ],
1011
+ "type": "typography",
1012
+ "variant": "caption"
1013
+ },
1014
+ {
1015
+ "action": "SET_PARAM_B",
1016
+ "max": "@config.paramBMax",
1017
+ "min": "@config.paramBMin",
1018
+ "showTooltip": true,
1019
+ "step": "@config.paramBStep",
1020
+ "type": "range-slider",
1021
+ "value": "@entity.paramB"
1022
+ }
1023
+ ],
1024
+ "direction": "vertical",
1025
+ "gap": "xs",
1026
+ "type": "stack"
1027
+ }
1028
+ ],
1029
+ "direction": "vertical",
1030
+ "gap": "sm",
1031
+ "type": "stack"
1032
+ },
961
1033
  {
962
1034
  "content": [
963
1035
  "str/concat",
@@ -1013,6 +1085,43 @@
1013
1085
  ],
1014
1086
  "to": "idle"
1015
1087
  },
1088
+ {
1089
+ "effects": [
1090
+ [
1091
+ "set",
1092
+ "@entity.active",
1093
+ false
1094
+ ],
1095
+ [
1096
+ "render-ui",
1097
+ "main",
1098
+ null
1099
+ ]
1100
+ ],
1101
+ "event": "MODE_SELECTED",
1102
+ "eventId": "evt_01M055GQ3SMBT9W67Y0R8XCZMS",
1103
+ "from": "idle",
1104
+ "guard": [
1105
+ "and",
1106
+ [
1107
+ "not",
1108
+ [
1109
+ "==",
1110
+ "@config.matchMode",
1111
+ ""
1112
+ ]
1113
+ ],
1114
+ [
1115
+ "not",
1116
+ [
1117
+ "==",
1118
+ "@payload.mode",
1119
+ "@config.matchMode"
1120
+ ]
1121
+ ]
1122
+ ],
1123
+ "to": "idle"
1124
+ },
1016
1125
  {
1017
1126
  "effects": [
1018
1127
  [
@@ -1357,68 +1466,66 @@
1357
1466
  {
1358
1467
  "children": [
1359
1468
  {
1360
- "content": "@entity.title",
1361
- "type": "typography",
1362
- "variant": "h4"
1363
- },
1364
- {
1469
+ "align": "start",
1365
1470
  "children": [
1366
1471
  {
1367
- "content": [
1368
- "str/concat",
1369
- "@entity.paramALabel",
1370
- ": ",
1472
+ "children": [
1473
+ {
1474
+ "content": "@entity.title",
1475
+ "type": "typography",
1476
+ "variant": "h4"
1477
+ },
1371
1478
  [
1372
- "math/round",
1373
- "@entity.paramA",
1374
- 2.0
1479
+ "if",
1480
+ [
1481
+ "==",
1482
+ "@config.summary",
1483
+ ""
1484
+ ],
1485
+ null,
1486
+ {
1487
+ "color": "muted",
1488
+ "content": "@config.summary",
1489
+ "type": "typography",
1490
+ "variant": "body2"
1491
+ }
1375
1492
  ]
1376
1493
  ],
1377
- "type": "typography",
1378
- "variant": "caption"
1494
+ "direction": "vertical",
1495
+ "gap": "xs",
1496
+ "type": "stack"
1379
1497
  },
1380
1498
  {
1381
- "action": "SET_PARAM_A",
1382
- "max": "@config.paramAMax",
1383
- "min": "@config.paramAMin",
1384
- "showTooltip": true,
1385
- "step": "@config.paramAStep",
1386
- "type": "range-slider",
1387
- "value": "@entity.paramA"
1388
- }
1389
- ],
1390
- "direction": "vertical",
1391
- "gap": "xs",
1392
- "type": "stack"
1393
- },
1394
- {
1395
- "children": [
1396
- {
1397
- "content": [
1499
+ "label": [
1398
1500
  "str/concat",
1399
- "@entity.paramBLabel",
1400
- ": ",
1501
+ "y = ",
1401
1502
  [
1402
- "math/round",
1403
- "@entity.paramB",
1404
- 2.0
1503
+ "if",
1504
+ [
1505
+ "==",
1506
+ "@entity.curveKind",
1507
+ "power"
1508
+ ],
1509
+ "A·xᴮ",
1510
+ [
1511
+ "if",
1512
+ [
1513
+ "==",
1514
+ "@entity.curveKind",
1515
+ "linear"
1516
+ ],
1517
+ "A + B·x",
1518
+ "A·sin(B·x)"
1519
+ ]
1405
1520
  ]
1406
1521
  ],
1407
- "type": "typography",
1408
- "variant": "caption"
1409
- },
1410
- {
1411
- "action": "SET_PARAM_B",
1412
- "max": "@config.paramBMax",
1413
- "min": "@config.paramBMin",
1414
- "showTooltip": true,
1415
- "step": "@config.paramBStep",
1416
- "type": "range-slider",
1417
- "value": "@entity.paramB"
1522
+ "type": "badge",
1523
+ "variant": "neutral"
1418
1524
  }
1419
1525
  ],
1420
- "direction": "vertical",
1421
- "gap": "xs",
1526
+ "direction": "horizontal",
1527
+ "gap": "md",
1528
+ "justify": "between",
1422
1529
  "type": "stack"
1423
1530
  },
1424
1531
  {
@@ -1440,6 +1547,73 @@
1440
1547
  "yMax": "@entity.yMax",
1441
1548
  "yMin": "@entity.yMin"
1442
1549
  },
1550
+ {
1551
+ "children": [
1552
+ {
1553
+ "children": [
1554
+ {
1555
+ "content": [
1556
+ "str/concat",
1557
+ "@entity.paramALabel",
1558
+ ": ",
1559
+ [
1560
+ "math/round",
1561
+ "@entity.paramA",
1562
+ 2.0
1563
+ ]
1564
+ ],
1565
+ "type": "typography",
1566
+ "variant": "caption"
1567
+ },
1568
+ {
1569
+ "action": "SET_PARAM_A",
1570
+ "max": "@config.paramAMax",
1571
+ "min": "@config.paramAMin",
1572
+ "showTooltip": true,
1573
+ "step": "@config.paramAStep",
1574
+ "type": "range-slider",
1575
+ "value": "@entity.paramA"
1576
+ }
1577
+ ],
1578
+ "direction": "vertical",
1579
+ "gap": "xs",
1580
+ "type": "stack"
1581
+ },
1582
+ {
1583
+ "children": [
1584
+ {
1585
+ "content": [
1586
+ "str/concat",
1587
+ "@entity.paramBLabel",
1588
+ ": ",
1589
+ [
1590
+ "math/round",
1591
+ "@entity.paramB",
1592
+ 2.0
1593
+ ]
1594
+ ],
1595
+ "type": "typography",
1596
+ "variant": "caption"
1597
+ },
1598
+ {
1599
+ "action": "SET_PARAM_B",
1600
+ "max": "@config.paramBMax",
1601
+ "min": "@config.paramBMin",
1602
+ "showTooltip": true,
1603
+ "step": "@config.paramBStep",
1604
+ "type": "range-slider",
1605
+ "value": "@entity.paramB"
1606
+ }
1607
+ ],
1608
+ "direction": "vertical",
1609
+ "gap": "xs",
1610
+ "type": "stack"
1611
+ }
1612
+ ],
1613
+ "direction": "vertical",
1614
+ "gap": "sm",
1615
+ "type": "stack"
1616
+ },
1443
1617
  {
1444
1618
  "content": [
1445
1619
  "str/concat",
@@ -1797,68 +1971,66 @@
1797
1971
  {
1798
1972
  "children": [
1799
1973
  {
1800
- "content": "@entity.title",
1801
- "type": "typography",
1802
- "variant": "h4"
1803
- },
1804
- {
1974
+ "align": "start",
1805
1975
  "children": [
1806
1976
  {
1807
- "content": [
1808
- "str/concat",
1809
- "@entity.paramALabel",
1810
- ": ",
1977
+ "children": [
1978
+ {
1979
+ "content": "@entity.title",
1980
+ "type": "typography",
1981
+ "variant": "h4"
1982
+ },
1811
1983
  [
1812
- "math/round",
1813
- "@entity.paramA",
1814
- 2.0
1984
+ "if",
1985
+ [
1986
+ "==",
1987
+ "@config.summary",
1988
+ ""
1989
+ ],
1990
+ null,
1991
+ {
1992
+ "color": "muted",
1993
+ "content": "@config.summary",
1994
+ "type": "typography",
1995
+ "variant": "body2"
1996
+ }
1815
1997
  ]
1816
1998
  ],
1817
- "type": "typography",
1818
- "variant": "caption"
1999
+ "direction": "vertical",
2000
+ "gap": "xs",
2001
+ "type": "stack"
1819
2002
  },
1820
2003
  {
1821
- "action": "SET_PARAM_A",
1822
- "max": "@config.paramAMax",
1823
- "min": "@config.paramAMin",
1824
- "showTooltip": true,
1825
- "step": "@config.paramAStep",
1826
- "type": "range-slider",
1827
- "value": "@entity.paramA"
1828
- }
1829
- ],
1830
- "direction": "vertical",
1831
- "gap": "xs",
1832
- "type": "stack"
1833
- },
1834
- {
1835
- "children": [
1836
- {
1837
- "content": [
2004
+ "label": [
1838
2005
  "str/concat",
1839
- "@entity.paramBLabel",
1840
- ": ",
2006
+ "y = ",
1841
2007
  [
1842
- "math/round",
1843
- "@entity.paramB",
1844
- 2.0
2008
+ "if",
2009
+ [
2010
+ "==",
2011
+ "@entity.curveKind",
2012
+ "power"
2013
+ ],
2014
+ "A·xᴮ",
2015
+ [
2016
+ "if",
2017
+ [
2018
+ "==",
2019
+ "@entity.curveKind",
2020
+ "linear"
2021
+ ],
2022
+ "A + B·x",
2023
+ "A·sin(B·x)"
2024
+ ]
1845
2025
  ]
1846
2026
  ],
1847
- "type": "typography",
1848
- "variant": "caption"
1849
- },
1850
- {
1851
- "action": "SET_PARAM_B",
1852
- "max": "@config.paramBMax",
1853
- "min": "@config.paramBMin",
1854
- "showTooltip": true,
1855
- "step": "@config.paramBStep",
1856
- "type": "range-slider",
1857
- "value": "@entity.paramB"
2027
+ "type": "badge",
2028
+ "variant": "neutral"
1858
2029
  }
1859
2030
  ],
1860
- "direction": "vertical",
1861
- "gap": "xs",
2031
+ "direction": "horizontal",
2032
+ "gap": "md",
2033
+ "justify": "between",
1862
2034
  "type": "stack"
1863
2035
  },
1864
2036
  {
@@ -1880,6 +2052,73 @@
1880
2052
  "yMax": "@entity.yMax",
1881
2053
  "yMin": "@entity.yMin"
1882
2054
  },
2055
+ {
2056
+ "children": [
2057
+ {
2058
+ "children": [
2059
+ {
2060
+ "content": [
2061
+ "str/concat",
2062
+ "@entity.paramALabel",
2063
+ ": ",
2064
+ [
2065
+ "math/round",
2066
+ "@entity.paramA",
2067
+ 2.0
2068
+ ]
2069
+ ],
2070
+ "type": "typography",
2071
+ "variant": "caption"
2072
+ },
2073
+ {
2074
+ "action": "SET_PARAM_A",
2075
+ "max": "@config.paramAMax",
2076
+ "min": "@config.paramAMin",
2077
+ "showTooltip": true,
2078
+ "step": "@config.paramAStep",
2079
+ "type": "range-slider",
2080
+ "value": "@entity.paramA"
2081
+ }
2082
+ ],
2083
+ "direction": "vertical",
2084
+ "gap": "xs",
2085
+ "type": "stack"
2086
+ },
2087
+ {
2088
+ "children": [
2089
+ {
2090
+ "content": [
2091
+ "str/concat",
2092
+ "@entity.paramBLabel",
2093
+ ": ",
2094
+ [
2095
+ "math/round",
2096
+ "@entity.paramB",
2097
+ 2.0
2098
+ ]
2099
+ ],
2100
+ "type": "typography",
2101
+ "variant": "caption"
2102
+ },
2103
+ {
2104
+ "action": "SET_PARAM_B",
2105
+ "max": "@config.paramBMax",
2106
+ "min": "@config.paramBMin",
2107
+ "showTooltip": true,
2108
+ "step": "@config.paramBStep",
2109
+ "type": "range-slider",
2110
+ "value": "@entity.paramB"
2111
+ }
2112
+ ],
2113
+ "direction": "vertical",
2114
+ "gap": "xs",
2115
+ "type": "stack"
2116
+ }
2117
+ ],
2118
+ "direction": "vertical",
2119
+ "gap": "sm",
2120
+ "type": "stack"
2121
+ },
1883
2122
  {
1884
2123
  "content": [
1885
2124
  "str/concat",
@@ -2245,68 +2484,66 @@
2245
2484
  {
2246
2485
  "children": [
2247
2486
  {
2248
- "content": "@entity.title",
2249
- "type": "typography",
2250
- "variant": "h4"
2251
- },
2252
- {
2487
+ "align": "start",
2253
2488
  "children": [
2254
2489
  {
2255
- "content": [
2256
- "str/concat",
2257
- "@entity.paramALabel",
2258
- ": ",
2490
+ "children": [
2491
+ {
2492
+ "content": "@entity.title",
2493
+ "type": "typography",
2494
+ "variant": "h4"
2495
+ },
2259
2496
  [
2260
- "math/round",
2261
- "@entity.paramA",
2262
- 2.0
2497
+ "if",
2498
+ [
2499
+ "==",
2500
+ "@config.summary",
2501
+ ""
2502
+ ],
2503
+ null,
2504
+ {
2505
+ "color": "muted",
2506
+ "content": "@config.summary",
2507
+ "type": "typography",
2508
+ "variant": "body2"
2509
+ }
2263
2510
  ]
2264
2511
  ],
2265
- "type": "typography",
2266
- "variant": "caption"
2512
+ "direction": "vertical",
2513
+ "gap": "xs",
2514
+ "type": "stack"
2267
2515
  },
2268
2516
  {
2269
- "action": "SET_PARAM_A",
2270
- "max": "@config.paramAMax",
2271
- "min": "@config.paramAMin",
2272
- "showTooltip": true,
2273
- "step": "@config.paramAStep",
2274
- "type": "range-slider",
2275
- "value": "@entity.paramA"
2276
- }
2277
- ],
2278
- "direction": "vertical",
2279
- "gap": "xs",
2280
- "type": "stack"
2281
- },
2282
- {
2283
- "children": [
2284
- {
2285
- "content": [
2517
+ "label": [
2286
2518
  "str/concat",
2287
- "@entity.paramBLabel",
2288
- ": ",
2519
+ "y = ",
2289
2520
  [
2290
- "math/round",
2291
- "@entity.paramB",
2292
- 2.0
2521
+ "if",
2522
+ [
2523
+ "==",
2524
+ "@entity.curveKind",
2525
+ "power"
2526
+ ],
2527
+ "A·xᴮ",
2528
+ [
2529
+ "if",
2530
+ [
2531
+ "==",
2532
+ "@entity.curveKind",
2533
+ "linear"
2534
+ ],
2535
+ "A + B·x",
2536
+ "A·sin(B·x)"
2537
+ ]
2293
2538
  ]
2294
2539
  ],
2295
- "type": "typography",
2296
- "variant": "caption"
2297
- },
2298
- {
2299
- "action": "SET_PARAM_B",
2300
- "max": "@config.paramBMax",
2301
- "min": "@config.paramBMin",
2302
- "showTooltip": true,
2303
- "step": "@config.paramBStep",
2304
- "type": "range-slider",
2305
- "value": "@entity.paramB"
2540
+ "type": "badge",
2541
+ "variant": "neutral"
2306
2542
  }
2307
2543
  ],
2308
- "direction": "vertical",
2309
- "gap": "xs",
2544
+ "direction": "horizontal",
2545
+ "gap": "md",
2546
+ "justify": "between",
2310
2547
  "type": "stack"
2311
2548
  },
2312
2549
  {
@@ -2328,6 +2565,73 @@
2328
2565
  "yMax": "@entity.yMax",
2329
2566
  "yMin": "@entity.yMin"
2330
2567
  },
2568
+ {
2569
+ "children": [
2570
+ {
2571
+ "children": [
2572
+ {
2573
+ "content": [
2574
+ "str/concat",
2575
+ "@entity.paramALabel",
2576
+ ": ",
2577
+ [
2578
+ "math/round",
2579
+ "@entity.paramA",
2580
+ 2.0
2581
+ ]
2582
+ ],
2583
+ "type": "typography",
2584
+ "variant": "caption"
2585
+ },
2586
+ {
2587
+ "action": "SET_PARAM_A",
2588
+ "max": "@config.paramAMax",
2589
+ "min": "@config.paramAMin",
2590
+ "showTooltip": true,
2591
+ "step": "@config.paramAStep",
2592
+ "type": "range-slider",
2593
+ "value": "@entity.paramA"
2594
+ }
2595
+ ],
2596
+ "direction": "vertical",
2597
+ "gap": "xs",
2598
+ "type": "stack"
2599
+ },
2600
+ {
2601
+ "children": [
2602
+ {
2603
+ "content": [
2604
+ "str/concat",
2605
+ "@entity.paramBLabel",
2606
+ ": ",
2607
+ [
2608
+ "math/round",
2609
+ "@entity.paramB",
2610
+ 2.0
2611
+ ]
2612
+ ],
2613
+ "type": "typography",
2614
+ "variant": "caption"
2615
+ },
2616
+ {
2617
+ "action": "SET_PARAM_B",
2618
+ "max": "@config.paramBMax",
2619
+ "min": "@config.paramBMin",
2620
+ "showTooltip": true,
2621
+ "step": "@config.paramBStep",
2622
+ "type": "range-slider",
2623
+ "value": "@entity.paramB"
2624
+ }
2625
+ ],
2626
+ "direction": "vertical",
2627
+ "gap": "xs",
2628
+ "type": "stack"
2629
+ }
2630
+ ],
2631
+ "direction": "vertical",
2632
+ "gap": "sm",
2633
+ "type": "stack"
2634
+ },
2331
2635
  {
2332
2636
  "content": [
2333
2637
  "str/concat",