@almadar/std 16.181.0 → 16.182.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 (75) hide show
  1. package/behaviors/lolo/infra/atoms/std-calendar-sync.lolo +290 -0
  2. package/behaviors/lolo/infra/atoms/std-notification-center.lolo +290 -0
  3. package/behaviors/lolo/infra/atoms/std-notify-on-event.lolo +238 -40
  4. package/behaviors/lolo/ui/core/atoms/std-esign-flow.lolo +180 -3
  5. package/behaviors/lolo/ui/core/molecules/ui-calendar-grid.lolo +6 -0
  6. package/behaviors/lolo/ui/core/organisms/ui-detail-panel.lolo +4 -4
  7. package/behaviors/lolo/ui/game/.hand-authored.json +1 -1
  8. package/behaviors/lolo/ui/game/atoms/ui-control-grid.lolo +5 -0
  9. package/behaviors/lolo/ui/game/atoms/ui-game-hud.lolo +5 -0
  10. package/behaviors/lolo/ui/game/templates/ui-game-shell.lolo +5 -5
  11. package/behaviors/registry/infra/atoms/std-calendar-sync.orb +1643 -0
  12. package/behaviors/registry/infra/atoms/std-notification-center.orb +1621 -0
  13. package/behaviors/registry/infra/atoms/std-notify-on-event.orb +1734 -169
  14. package/behaviors/registry/ui/core/atoms/std-esign-flow.orb +846 -2
  15. package/behaviors/registry/ui/core/molecules/ui-calendar-grid.orb +9 -0
  16. package/behaviors/registry/ui/core/organisms/ui-detail-panel.orb +4 -2
  17. package/behaviors/registry/ui/game/atoms/ui-control-grid.orb +13 -1
  18. package/behaviors/registry/ui/game/atoms/ui-game-hud.orb +13 -1
  19. package/behaviors/registry/ui/game/templates/ui-game-shell.orb +5 -5
  20. package/canonical-operators.json +21 -1
  21. package/dist/behaviors/exports-reader.js +8303 -3043
  22. package/dist/behaviors/functions/index.d.ts +468 -10
  23. package/dist/behaviors/functions/index.js +18352 -13109
  24. package/dist/behaviors/index.d.ts +1 -1
  25. package/dist/behaviors/index.js +8304 -3044
  26. package/dist/behaviors/query.js +8303 -3043
  27. package/dist/behaviors-embeddings.hash.json +3 -3
  28. package/dist/behaviors-embeddings.json +449 -441
  29. package/dist/behaviors-registry.json +1164 -9
  30. package/dist/index.d.ts +3 -3
  31. package/dist/index.js +8275 -2978
  32. package/dist/knob-embeddings.hash.json +3 -3
  33. package/dist/knob-embeddings.json +1 -1
  34. package/dist/modules/anim.d.ts +1 -1
  35. package/dist/modules/array.d.ts +1 -1
  36. package/dist/modules/async.d.ts +1 -1
  37. package/dist/modules/behavior.d.ts +1 -1
  38. package/dist/modules/browser.d.ts +1 -1
  39. package/dist/modules/browser.js +21 -0
  40. package/dist/modules/composition.d.ts +1 -1
  41. package/dist/modules/contract.d.ts +1 -1
  42. package/dist/modules/core.d.ts +1 -1
  43. package/dist/modules/core.js +18 -2
  44. package/dist/modules/data.d.ts +1 -1
  45. package/dist/modules/ease.d.ts +1 -1
  46. package/dist/modules/format.d.ts +1 -1
  47. package/dist/modules/geo.d.ts +1 -1
  48. package/dist/modules/graph.d.ts +1 -1
  49. package/dist/modules/grid.d.ts +1 -1
  50. package/dist/modules/index.d.ts +1 -1
  51. package/dist/modules/index.js +39 -2
  52. package/dist/modules/integration.d.ts +1 -1
  53. package/dist/modules/llm.d.ts +1 -1
  54. package/dist/modules/math.d.ts +1 -1
  55. package/dist/modules/memory.d.ts +1 -1
  56. package/dist/modules/nn.d.ts +1 -1
  57. package/dist/modules/noise.d.ts +1 -1
  58. package/dist/modules/object.d.ts +1 -1
  59. package/dist/modules/os.d.ts +1 -1
  60. package/dist/modules/path.d.ts +1 -1
  61. package/dist/modules/prob.d.ts +1 -1
  62. package/dist/modules/session.d.ts +1 -1
  63. package/dist/modules/str.d.ts +1 -1
  64. package/dist/modules/tensor.d.ts +1 -1
  65. package/dist/modules/time.d.ts +1 -1
  66. package/dist/modules/trace.d.ts +1 -1
  67. package/dist/modules/train.d.ts +1 -1
  68. package/dist/modules/validate.d.ts +1 -1
  69. package/dist/modules/vector.d.ts +1 -1
  70. package/dist/modules/workspace.d.ts +1 -1
  71. package/dist/registry/factory-signatures.json +1 -1
  72. package/dist/registry.d.ts +1 -1
  73. package/dist/registry.js +39 -2
  74. package/dist/{types-DGJ6Y6nW.d.ts → types-BXWzEjFm.d.ts} +1 -1
  75. package/package.json +3 -3
@@ -182,6 +182,13 @@
182
182
  "tier": "presentation",
183
183
  "type": "string"
184
184
  },
185
+ "endField": {
186
+ "default": "endTime",
187
+ "description": "Row field holding the end timestamp (ISO or epoch). Defaults to `endTime`. When a row carries an end, the event's chip renders in its start slot and every further slot it covers shows a subdued continuation bar — without this, multi-hour events silently collapsed to their first hour.",
188
+ "label": "End Field",
189
+ "tier": "presentation",
190
+ "type": "string"
191
+ },
185
192
  "longPressEvent": {
186
193
  "default": "LONG_PRESS",
187
194
  "description": "Event emitted on long-press of a time slot: UI:{longPressEvent} with { date, time, ...longPressPayload }",
@@ -513,6 +520,7 @@
513
520
  "className": "@config.className",
514
521
  "colorField": "@config.colorField",
515
522
  "dayWindow": "@config.dayWindow",
523
+ "endField": "@config.endField",
516
524
  "events": "@entity",
517
525
  "longPressEvent": "@config.longPressEvent",
518
526
  "longPressPayload": "@config.longPressPayload",
@@ -543,6 +551,7 @@
543
551
  "className": "@config.className",
544
552
  "colorField": "@config.colorField",
545
553
  "dayWindow": "@config.dayWindow",
554
+ "endField": "@config.endField",
546
555
  "events": "@payload.data",
547
556
  "longPressEvent": "@config.longPressEvent",
548
557
  "longPressPayload": "@config.longPressPayload",
@@ -316,7 +316,8 @@
316
316
  "type": "boolean"
317
317
  },
318
318
  "maxInlineActions": {
319
- "description": "Max inline action buttons before the rest collapse into a '⋯' overflow menu (mirrors DataGrid's maxInlineActions). Omit = all inline.",
319
+ "default": 2.0,
320
+ "description": "Max inline action buttons before the rest collapse into a '⋯' overflow menu (mirrors DataGrid's maxInlineActions). Defaults to 2 — primary + secondary visible, the rest under the menu — so every detail panel carries the same action pattern.",
320
321
  "label": "Max Inline Actions",
321
322
  "tier": "presentation",
322
323
  "type": "number"
@@ -450,7 +451,8 @@
450
451
  "type": "[string]"
451
452
  },
452
453
  "showActions": {
453
- "description": "Show actions flag",
454
+ "default": true,
455
+ "description": "When false, hides the action buttons + overflow menu (and the close ×). Defaults to true.",
454
456
  "label": "Show Actions",
455
457
  "tier": "presentation",
456
458
  "type": "boolean"
@@ -433,6 +433,17 @@
433
433
  "md",
434
434
  "lg"
435
435
  ]
436
+ },
437
+ "visibility": {
438
+ "default": "auto",
439
+ "description": "'auto' (default) renders only on coarse-pointer (touch) devices; 'always' renders everywhere.",
440
+ "label": "Visibility",
441
+ "tier": "presentation",
442
+ "type": "string",
443
+ "values": [
444
+ "auto",
445
+ "always"
446
+ ]
436
447
  }
437
448
  },
438
449
  "emits": [
@@ -553,7 +564,8 @@
553
564
  "onAction": "@config.onAction",
554
565
  "onDirection": "@config.onDirection",
555
566
  "size": "@config.size",
556
- "type": "control-grid"
567
+ "type": "control-grid",
568
+ "visibility": "@config.visibility"
557
569
  }
558
570
  ]
559
571
  ],
@@ -299,6 +299,17 @@
299
299
  "label": "Transparent",
300
300
  "tier": "presentation",
301
301
  "type": "boolean"
302
+ },
303
+ "variant": {
304
+ "default": "floating",
305
+ "description": "Layout variant: 'floating' (default) renders a compact pill cluster that hugs its content width; 'bar' preserves the legacy full-width split bar.",
306
+ "label": "Variant",
307
+ "tier": "presentation",
308
+ "type": "string",
309
+ "values": [
310
+ "floating",
311
+ "bar"
312
+ ]
302
313
  }
303
314
  },
304
315
  "entityContract": {
@@ -342,7 +353,8 @@
342
353
  "size": "@config.size",
343
354
  "stats": "@config.stats",
344
355
  "transparent": "@config.transparent",
345
- "type": "game-hud"
356
+ "type": "game-hud",
357
+ "variant": "@config.variant"
346
358
  }
347
359
  ]
348
360
  ],
@@ -81,7 +81,7 @@
81
81
  "category": "interaction",
82
82
  "config": {
83
83
  "addons": {
84
- "description": "Action cluster — floats bottom-right (End Turn, Fire, Reset, …)",
84
+ "description": "Action cluster — floats bottom-right (End Turn, Fire, Reset, …). Legacy chrome surface: new behaviors emit action chrome via render-ui \"hud-bottom\" or \"floating\" instead.",
85
85
  "label": "Addons",
86
86
  "tier": "presentation",
87
87
  "type": "node"
@@ -199,20 +199,20 @@
199
199
  "type": "string"
200
200
  },
201
201
  "controls": {
202
- "description": "Movement controls — floats bottom-left (d-pad / control-grid).",
202
+ "description": "Movement controls — floats bottom-left (d-pad / control-grid). Legacy chrome surface: new behaviors emit movement controls via render-ui \"hud-bottom\" instead.",
203
203
  "label": "Controls",
204
204
  "tier": "presentation",
205
205
  "type": "node"
206
206
  },
207
207
  "fontFamily": {
208
208
  "default": "future",
209
- "description": "Game font key (future | future-narrow | pixel | blocks | mini) or a CSS font-family.",
209
+ "description": "Game display-font key (future | future-narrow | pixel | blocks | mini) or a CSS font-family. Scoped override of the theme contract's --font-family-display slot: titles and numerics take this face, body text follows the active theme.",
210
210
  "label": "Font Family",
211
211
  "tier": "presentation",
212
212
  "type": "string"
213
213
  },
214
214
  "hud": {
215
- "description": "Stat chips row — floats along the top edge",
215
+ "description": "Stat chips row — floats along the top edge. Legacy chrome surface: new behaviors emit HUD chrome via render-ui \"hud-top\" instead.",
216
216
  "label": "Hud",
217
217
  "tier": "presentation",
218
218
  "type": "node"
@@ -306,7 +306,7 @@
306
306
  "type": "GameShellHudBackgroundAsset"
307
307
  },
308
308
  "overlay": {
309
- "description": "Centered overlay layer (victory/defeat banners, dialogs).",
309
+ "description": "Centered overlay layer (victory/defeat banners, dialogs). Legacy chrome surface: new behaviors emit overlays via render-ui \"overlay\" (clear with render-ui \"overlay\" null on every exit) instead.",
310
310
  "label": "Overlay",
311
311
  "tier": "presentation",
312
312
  "type": "node"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": "2.0.0",
3
3
  "description": "Canonical operator registry for Almadar. Generated from @almadar/std/modules. Consumed by orbital-compiler via include_str!.",
4
- "generated": "2026-08-16T04:15:07.046Z",
4
+ "generated": "2026-08-22T07:56:44.692Z",
5
5
  "categories": {
6
6
  "arithmetic": {
7
7
  "description": "Numeric operations",
@@ -955,6 +955,26 @@
955
955
  }
956
956
  }
957
957
  },
958
+ "browser/push-subscribe": {
959
+ "category": "std-browser",
960
+ "minArity": 0,
961
+ "maxArity": 0,
962
+ "returnType": "object",
963
+ "description": "Subscribe this browser to Web Push notifications: registers the shared push service worker, fetches the VAPID public key from the host (/api/push/vapid-public-key — no key material in the schema), and calls PushManager.subscribe. Requires notification permission (user gesture). Resolves with the flat subscription credentials { endpoint, p256dh, auth } via the trailing { emit } envelope — persist them on an owner-scoped entity row and pass them back to the push.send service as subscription: { endpoint, keys: { p256dh, auth } }. Emits failure when the Push API is unavailable, permission is denied, or the host has no VAPID key configured.",
964
+ "module": "browser",
965
+ "hasSideEffects": true,
966
+ "effect": {
967
+ "kind": "custom",
968
+ "produces": {
969
+ "kind": "object",
970
+ "fields": {
971
+ "endpoint": "string",
972
+ "p256dh": "string",
973
+ "auth": "string"
974
+ }
975
+ }
976
+ }
977
+ },
958
978
  "call-service": {
959
979
  "category": "effect",
960
980
  "minArity": 2,