@almadar/std 16.218.0 → 16.219.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-data-import.lolo +56 -5
  2. package/behaviors/lolo/infra/atoms/std-notification-center.lolo +18 -18
  3. package/behaviors/lolo/infra/atoms/std-notification-preferences.lolo +5 -5
  4. package/behaviors/lolo/infra/atoms/std-notify-on-event.lolo +17 -18
  5. package/behaviors/lolo/ui/core/atoms/std-gantt-schedule.lolo +215 -0
  6. package/behaviors/lolo/ui/core/atoms/ui-textarea.lolo +2 -2
  7. package/behaviors/lolo/ui/core/molecules/ui-gantt.lolo +169 -0
  8. package/behaviors/lolo/ui/game/atoms/ui-canvas-2d.lolo +2 -2
  9. package/behaviors/lolo/ui/game/atoms/ui-canvas.lolo +2 -2
  10. package/behaviors/lolo/ui/learning/atoms/ui-math-canvas.lolo +2 -2
  11. package/behaviors/registry/infra/atoms/std-data-import.orb +329 -6
  12. package/behaviors/registry/infra/atoms/std-notification-center.orb +41 -33
  13. package/behaviors/registry/infra/atoms/std-notification-preferences.orb +10 -17
  14. package/behaviors/registry/infra/atoms/std-notify-on-event.orb +198 -195
  15. package/behaviors/registry/ui/core/atoms/std-gantt-schedule.orb +723 -0
  16. package/behaviors/registry/ui/core/molecules/ui-gantt.orb +508 -0
  17. package/canonical-operators.json +46 -1
  18. package/dist/behaviors/exports-reader.js +3212 -2818
  19. package/dist/behaviors/functions/index.d.ts +238 -5
  20. package/dist/behaviors/functions/index.js +3207 -2819
  21. package/dist/behaviors/index.d.ts +1 -1
  22. package/dist/behaviors/index.js +3213 -2819
  23. package/dist/behaviors/query.js +3212 -2818
  24. package/dist/behaviors-embeddings.hash.json +3 -3
  25. package/dist/behaviors-embeddings.json +19 -7
  26. package/dist/behaviors-registry.json +1772 -127
  27. package/dist/index.d.ts +3 -3
  28. package/dist/index.js +3249 -2819
  29. package/dist/knob-embeddings.hash.json +3 -3
  30. package/dist/knob-embeddings.json +1 -1
  31. package/dist/modules/anim.d.ts +1 -1
  32. package/dist/modules/array.d.ts +1 -1
  33. package/dist/modules/async.d.ts +1 -1
  34. package/dist/modules/behavior.d.ts +1 -1
  35. package/dist/modules/browser.d.ts +1 -1
  36. package/dist/modules/composition.d.ts +1 -1
  37. package/dist/modules/contract.d.ts +1 -1
  38. package/dist/modules/core.d.ts +1 -1
  39. package/dist/modules/data.d.ts +1 -1
  40. package/dist/modules/ease.d.ts +1 -1
  41. package/dist/modules/format.d.ts +1 -1
  42. package/dist/modules/geo.d.ts +1 -1
  43. package/dist/modules/graph.d.ts +1 -1
  44. package/dist/modules/grid.d.ts +1 -1
  45. package/dist/modules/index.d.ts +2 -1
  46. package/dist/modules/index.js +30 -1
  47. package/dist/modules/integration.d.ts +1 -1
  48. package/dist/modules/json.d.ts +20 -0
  49. package/dist/modules/json.js +30 -0
  50. package/dist/modules/llm.d.ts +1 -1
  51. package/dist/modules/math.d.ts +1 -1
  52. package/dist/modules/memory.d.ts +1 -1
  53. package/dist/modules/nn.d.ts +1 -1
  54. package/dist/modules/noise.d.ts +1 -1
  55. package/dist/modules/object.d.ts +1 -1
  56. package/dist/modules/os.d.ts +1 -1
  57. package/dist/modules/path.d.ts +1 -1
  58. package/dist/modules/prob.d.ts +1 -1
  59. package/dist/modules/session.d.ts +1 -1
  60. package/dist/modules/str.d.ts +1 -1
  61. package/dist/modules/tensor.d.ts +1 -1
  62. package/dist/modules/time.d.ts +1 -1
  63. package/dist/modules/trace.d.ts +1 -1
  64. package/dist/modules/train.d.ts +1 -1
  65. package/dist/modules/validate.d.ts +1 -1
  66. package/dist/modules/vector.d.ts +1 -1
  67. package/dist/modules/workspace.d.ts +1 -1
  68. package/dist/registry/factory-signatures.json +1 -1
  69. package/dist/registry.d.ts +1 -1
  70. package/dist/registry.js +28 -0
  71. package/dist/{types-C-Yerb4-.d.ts → types-DpbKBJu8.d.ts} +3 -3
  72. package/i18n/ar.json +3 -1
  73. package/i18n/en.json +2 -0
  74. package/i18n/sl.json +3 -1
  75. package/package.json +2 -2
@@ -0,0 +1,508 @@
1
+ {
2
+ "description": "Gantt — view-only task schedule rendering rows as bars on a day axis. — UI factory (1:1 with the @almadar/ui gantt pattern).",
3
+ "ledger": {
4
+ "entries": {
5
+ "ent_01M2M53R3YYSDKM5249ABXQ7T4": {
6
+ "bakedName": "GanttItem",
7
+ "curName": "GanttItem",
8
+ "id": "ent_01M2M53R3YYSDKM5249ABXQ7T4",
9
+ "kind": "entity",
10
+ "owner": "workspace",
11
+ "renames": []
12
+ },
13
+ "evt_01M2M53R3YDVJNHTNMWVQHD6DM": {
14
+ "bakedName": "INIT",
15
+ "curName": "INIT",
16
+ "id": "evt_01M2M53R3YDVJNHTNMWVQHD6DM",
17
+ "kind": "event",
18
+ "owner": "workspace",
19
+ "parent": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY",
20
+ "renames": []
21
+ },
22
+ "evt_01M2M53R3YKHR780KWWS352SKC": {
23
+ "bakedName": "GanttLoaded",
24
+ "curName": "GanttLoaded",
25
+ "id": "evt_01M2M53R3YKHR780KWWS352SKC",
26
+ "kind": "event",
27
+ "owner": "workspace",
28
+ "parent": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY",
29
+ "renames": []
30
+ },
31
+ "evt_01M2M53R3YYF5SRSR2HQHT3FGZ": {
32
+ "bakedName": "@config.barClickEvent",
33
+ "curName": "@config.barClickEvent",
34
+ "id": "evt_01M2M53R3YYF5SRSR2HQHT3FGZ",
35
+ "kind": "event",
36
+ "owner": "workspace",
37
+ "parent": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY",
38
+ "renames": []
39
+ },
40
+ "orb_01M2M53R3YY6NQ5PQMXCT1MSFW": {
41
+ "bakedName": "GanttOrbital",
42
+ "curName": "GanttOrbital",
43
+ "id": "orb_01M2M53R3YY6NQ5PQMXCT1MSFW",
44
+ "kind": "orbital",
45
+ "owner": "workspace",
46
+ "renames": []
47
+ },
48
+ "pag_01M2M53R3Y5K89GCKEWQDK6YXK": {
49
+ "bakedName": "GanttPage",
50
+ "curName": "GanttPage",
51
+ "id": "pag_01M2M53R3Y5K89GCKEWQDK6YXK",
52
+ "kind": "page",
53
+ "owner": "workspace",
54
+ "renames": []
55
+ },
56
+ "trt_01M2M53R3YSVDN4KJ5FZM8AYXY": {
57
+ "bakedName": "GanttRender",
58
+ "curName": "GanttRender",
59
+ "id": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY",
60
+ "kind": "trait",
61
+ "owner": "workspace",
62
+ "renames": []
63
+ }
64
+ },
65
+ "schemaVersion": 1
66
+ },
67
+ "name": "ui-gantt",
68
+ "orbitals": [
69
+ {
70
+ "entity": {
71
+ "fields": [
72
+ {
73
+ "name": "id",
74
+ "required": true,
75
+ "type": "string"
76
+ }
77
+ ],
78
+ "id": "ent_01M2M53R3YYSDKM5249ABXQ7T4",
79
+ "name": "GanttItem",
80
+ "persistence": "runtime"
81
+ },
82
+ "id": "orb_01M2M53R3YY6NQ5PQMXCT1MSFW",
83
+ "name": "GanttOrbital",
84
+ "pages": [
85
+ {
86
+ "id": "pag_01M2M53R3Y5K89GCKEWQDK6YXK",
87
+ "name": "GanttPage",
88
+ "path": "/gantt",
89
+ "traits": [
90
+ {
91
+ "ref": "GanttRender",
92
+ "refId": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY"
93
+ }
94
+ ]
95
+ }
96
+ ],
97
+ "traits": [
98
+ {
99
+ "category": "interaction",
100
+ "config": {
101
+ "barClickEvent": {
102
+ "default": "BAR_CLICK",
103
+ "description": "Event emitted when a bar is clicked: UI:{barClickEvent} with { id }",
104
+ "label": "Bar Click Event",
105
+ "tier": "presentation",
106
+ "type": "event"
107
+ },
108
+ "className": {
109
+ "description": "Additional CSS classes",
110
+ "label": "Class Name",
111
+ "tier": "presentation",
112
+ "type": "string"
113
+ },
114
+ "dayWidth": {
115
+ "default": 28.0,
116
+ "description": "Pixels per day on the axis (default 28)",
117
+ "label": "Day Width",
118
+ "tier": "presentation",
119
+ "type": "number"
120
+ },
121
+ "durationField": {
122
+ "description": "Row field holding the task length in days, used when the row has no end.",
123
+ "label": "Duration Field",
124
+ "tier": "presentation",
125
+ "type": "string"
126
+ },
127
+ "endField": {
128
+ "default": "end",
129
+ "description": "Row field holding the end timestamp (ISO or epoch). Defaults to `end`. When absent, `durationField` (days) is used instead.",
130
+ "label": "End Field",
131
+ "tier": "presentation",
132
+ "type": "string"
133
+ },
134
+ "error": {
135
+ "description": "Error state",
136
+ "label": "Error",
137
+ "properties": {
138
+ "code": {
139
+ "name": "code",
140
+ "required": false,
141
+ "type": "string"
142
+ },
143
+ "message": {
144
+ "name": "message",
145
+ "required": true,
146
+ "type": "string"
147
+ },
148
+ "name": {
149
+ "name": "name",
150
+ "required": false,
151
+ "type": "string"
152
+ },
153
+ "stack": {
154
+ "name": "stack",
155
+ "required": false,
156
+ "type": "string"
157
+ }
158
+ },
159
+ "tier": "presentation",
160
+ "type": "GanttError"
161
+ },
162
+ "groupField": {
163
+ "description": "Row field rows are grouped under header rows by. Empty (default) = flat list.",
164
+ "label": "Group Field",
165
+ "tier": "presentation",
166
+ "type": "string"
167
+ },
168
+ "isLoading": {
169
+ "default": false,
170
+ "description": "Loading state",
171
+ "label": "Is Loading",
172
+ "tier": "presentation",
173
+ "type": "boolean"
174
+ },
175
+ "links": {
176
+ "default": [],
177
+ "description": "Dependency arrows between task ids",
178
+ "items": {
179
+ "properties": {
180
+ "from": {
181
+ "name": "from",
182
+ "required": true,
183
+ "type": "string"
184
+ },
185
+ "to": {
186
+ "name": "to",
187
+ "required": true,
188
+ "type": "string"
189
+ }
190
+ },
191
+ "type": "object"
192
+ },
193
+ "label": "Links",
194
+ "tier": "presentation",
195
+ "type": "[GanttLinksItem]"
196
+ },
197
+ "rangeEnd": {
198
+ "default": "2024-01-01",
199
+ "description": "Last visible day (ISO or Date). Defaults to 2 days after the latest task end.",
200
+ "label": "Range End",
201
+ "tier": "presentation",
202
+ "type": "date"
203
+ },
204
+ "rangeStart": {
205
+ "default": "2024-01-01",
206
+ "description": "First visible day (ISO or Date). Defaults to 2 days before the earliest task.",
207
+ "label": "Range Start",
208
+ "tier": "presentation",
209
+ "type": "date"
210
+ },
211
+ "selfFetch": {
212
+ "default": true,
213
+ "description": "true (default) = standalone mount self-populates on INIT. false = a composing atom owns the fetch and routes its loaded event here — suppresses the wrapper's own un-hydrated fetch so it cannot race the composer's.",
214
+ "label": "Fetch its own rows on mount?",
215
+ "tier": "internal",
216
+ "type": "boolean"
217
+ },
218
+ "showToday": {
219
+ "default": true,
220
+ "description": "Paint the today marker line when today falls inside the range (default true).",
221
+ "label": "Show Today",
222
+ "tier": "presentation",
223
+ "type": "boolean"
224
+ },
225
+ "startField": {
226
+ "default": "start",
227
+ "description": "Row field holding the start timestamp (ISO or epoch). Defaults to `start`.",
228
+ "label": "Start Field",
229
+ "tier": "presentation",
230
+ "type": "string"
231
+ },
232
+ "statusField": {
233
+ "default": "status",
234
+ "description": "Row field holding the bar status (drives bar colour). Defaults to `status`.",
235
+ "label": "Status Field",
236
+ "tier": "presentation",
237
+ "type": "string"
238
+ },
239
+ "titleField": {
240
+ "default": "title",
241
+ "description": "Row field holding the bar label. Defaults to `title`.",
242
+ "label": "Title Field",
243
+ "tier": "presentation",
244
+ "type": "string"
245
+ }
246
+ },
247
+ "effectRow": [
248
+ {
249
+ "kind": "fetch",
250
+ "resource": "GanttItem"
251
+ },
252
+ {
253
+ "kind": "render-ui",
254
+ "resource": "main"
255
+ }
256
+ ],
257
+ "emits": [
258
+ {
259
+ "definerKnob": "barClickEvent",
260
+ "description": "Event emitted when a bar is clicked: UI:{barClickEvent} with { id }",
261
+ "event": "@config.barClickEvent",
262
+ "eventId": "evt_01M2M53R3YYF5SRSR2HQHT3FGZ",
263
+ "payloadSchema": [
264
+ {
265
+ "name": "id",
266
+ "required": true,
267
+ "type": "string"
268
+ }
269
+ ],
270
+ "scope": "external",
271
+ "tier": "essential"
272
+ },
273
+ {
274
+ "description": "Gantt rows finished loading; payload.data holds the collection.",
275
+ "event": "GanttLoaded",
276
+ "eventId": "evt_01M2M53R3YKHR780KWWS352SKC",
277
+ "payloadSchema": [
278
+ {
279
+ "entity": "GanttItem",
280
+ "name": "data",
281
+ "properties": [
282
+ {
283
+ "name": "id",
284
+ "required": true,
285
+ "type": "string"
286
+ }
287
+ ],
288
+ "type": "[object]"
289
+ }
290
+ ],
291
+ "scope": "internal",
292
+ "synonyms": "loaded, fetched, retrieved",
293
+ "tier": "essential"
294
+ }
295
+ ],
296
+ "entityContract": {
297
+ "provides": [],
298
+ "requires": []
299
+ },
300
+ "entityRebindable": true,
301
+ "entityRefIds": {
302
+ "GanttItem": "ent_01M2M53R3YYSDKM5249ABXQ7T4"
303
+ },
304
+ "id": "trt_01M2M53R3YSVDN4KJ5FZM8AYXY",
305
+ "linkedEntity": "GanttItem",
306
+ "linkedEntityId": "ent_01M2M53R3YYSDKM5249ABXQ7T4",
307
+ "name": "GanttRender",
308
+ "scope": "instance",
309
+ "stateMachine": {
310
+ "events": [
311
+ {
312
+ "id": "evt_01M2M53R3YDVJNHTNMWVQHD6DM",
313
+ "key": "INIT",
314
+ "name": "Initialize"
315
+ },
316
+ {
317
+ "description": "Gantt rows finished loading; payload.data holds the collection.",
318
+ "id": "evt_01M2M53R3YKHR780KWWS352SKC",
319
+ "key": "GanttLoaded",
320
+ "name": "Gantt loaded",
321
+ "payloadSchema": [
322
+ {
323
+ "entity": "GanttItem",
324
+ "name": "data",
325
+ "properties": [
326
+ {
327
+ "name": "id",
328
+ "required": true,
329
+ "type": "string"
330
+ }
331
+ ],
332
+ "type": "[object]"
333
+ }
334
+ ],
335
+ "synonyms": "loaded, fetched, retrieved",
336
+ "tier": "essential"
337
+ },
338
+ {
339
+ "description": "Event emitted when a bar is clicked: UI:{barClickEvent} with { id }",
340
+ "id": "evt_01M2M53R3YYF5SRSR2HQHT3FGZ",
341
+ "key": "@config.barClickEvent",
342
+ "name": "@config.bar click event",
343
+ "payloadSchema": [
344
+ {
345
+ "name": "id",
346
+ "required": true,
347
+ "type": "string"
348
+ }
349
+ ],
350
+ "tier": "essential"
351
+ }
352
+ ],
353
+ "states": [
354
+ {
355
+ "isInitial": true,
356
+ "name": "idle"
357
+ }
358
+ ],
359
+ "transitions": [
360
+ {
361
+ "effects": [
362
+ [
363
+ "fetch",
364
+ "GanttItem",
365
+ {
366
+ "emit": {
367
+ "success": "GanttLoaded"
368
+ }
369
+ }
370
+ ],
371
+ [
372
+ "render-ui",
373
+ "main",
374
+ {
375
+ "barClickEvent": "@config.barClickEvent",
376
+ "className": "@config.className",
377
+ "dayWidth": "@config.dayWidth",
378
+ "durationField": "@config.durationField",
379
+ "endField": "@config.endField",
380
+ "error": "@config.error",
381
+ "groupField": "@config.groupField",
382
+ "isLoading": "@config.isLoading",
383
+ "links": "@config.links",
384
+ "rangeEnd": "@config.rangeEnd",
385
+ "rangeStart": "@config.rangeStart",
386
+ "showToday": "@config.showToday",
387
+ "startField": "@config.startField",
388
+ "statusField": "@config.statusField",
389
+ "tasks": "@entity",
390
+ "titleField": "@config.titleField",
391
+ "type": "gantt"
392
+ }
393
+ ]
394
+ ],
395
+ "event": "INIT",
396
+ "eventId": "evt_01M2M53R3YDVJNHTNMWVQHD6DM",
397
+ "from": "idle",
398
+ "guard": "@config.selfFetch",
399
+ "to": "idle"
400
+ },
401
+ {
402
+ "effects": [
403
+ [
404
+ "render-ui",
405
+ "main",
406
+ {
407
+ "barClickEvent": "@config.barClickEvent",
408
+ "className": "@config.className",
409
+ "dayWidth": "@config.dayWidth",
410
+ "durationField": "@config.durationField",
411
+ "endField": "@config.endField",
412
+ "error": "@config.error",
413
+ "groupField": "@config.groupField",
414
+ "isLoading": "@config.isLoading",
415
+ "links": "@config.links",
416
+ "rangeEnd": "@config.rangeEnd",
417
+ "rangeStart": "@config.rangeStart",
418
+ "showToday": "@config.showToday",
419
+ "startField": "@config.startField",
420
+ "statusField": "@config.statusField",
421
+ "tasks": "@entity",
422
+ "titleField": "@config.titleField",
423
+ "type": "gantt"
424
+ }
425
+ ]
426
+ ],
427
+ "event": "INIT",
428
+ "eventId": "evt_01M2M53R3YDVJNHTNMWVQHD6DM",
429
+ "from": "idle",
430
+ "guard": [
431
+ "not",
432
+ "@config.selfFetch"
433
+ ],
434
+ "to": "idle"
435
+ },
436
+ {
437
+ "effects": [
438
+ [
439
+ "render-ui",
440
+ "main",
441
+ {
442
+ "barClickEvent": "@config.barClickEvent",
443
+ "className": "@config.className",
444
+ "dayWidth": "@config.dayWidth",
445
+ "durationField": "@config.durationField",
446
+ "endField": "@config.endField",
447
+ "error": "@config.error",
448
+ "groupField": "@config.groupField",
449
+ "isLoading": "@config.isLoading",
450
+ "links": "@config.links",
451
+ "rangeEnd": "@config.rangeEnd",
452
+ "rangeStart": "@config.rangeStart",
453
+ "showToday": "@config.showToday",
454
+ "startField": "@config.startField",
455
+ "statusField": "@config.statusField",
456
+ "tasks": "@payload.data",
457
+ "titleField": "@config.titleField",
458
+ "type": "gantt"
459
+ }
460
+ ]
461
+ ],
462
+ "event": "GanttLoaded",
463
+ "eventId": "evt_01M2M53R3YKHR780KWWS352SKC",
464
+ "from": "idle",
465
+ "to": "idle"
466
+ }
467
+ ]
468
+ }
469
+ }
470
+ ],
471
+ "types": {
472
+ "GanttError": [
473
+ {
474
+ "name": "message",
475
+ "required": true,
476
+ "type": "string"
477
+ },
478
+ {
479
+ "name": "name",
480
+ "type": "string"
481
+ },
482
+ {
483
+ "name": "code",
484
+ "type": "string"
485
+ },
486
+ {
487
+ "name": "stack",
488
+ "type": "string"
489
+ }
490
+ ],
491
+ "GanttLinksItem": [
492
+ {
493
+ "name": "from",
494
+ "required": true,
495
+ "type": "string"
496
+ },
497
+ {
498
+ "name": "to",
499
+ "required": true,
500
+ "type": "string"
501
+ }
502
+ ]
503
+ }
504
+ }
505
+ ],
506
+ "schemaVersion": 1,
507
+ "version": "1.0.0"
508
+ }
@@ -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-09-14T03:53:34.301Z",
4
+ "generated": "2026-09-16T03:45:18.260Z",
5
5
  "categories": {
6
6
  "arithmetic": {
7
7
  "description": "Numeric operations",
@@ -72,6 +72,13 @@
72
72
  "rust"
73
73
  ]
74
74
  },
75
+ "std-json": {
76
+ "description": "JSON parsing/serialization",
77
+ "target": [
78
+ "ts",
79
+ "rust"
80
+ ]
81
+ },
75
82
  "std-time": {
76
83
  "description": "Date/time utilities",
77
84
  "target": [
@@ -4001,6 +4008,44 @@
4001
4008
  ],
4002
4009
  "docsSource": "generated"
4003
4010
  },
4011
+ "json/parse": {
4012
+ "category": "std-json",
4013
+ "minArity": 1,
4014
+ "maxArity": 1,
4015
+ "returnType": "any",
4016
+ "description": "Parse a JSON string into a value; invalid JSON or non-string input returns null (never throws)",
4017
+ "module": "json",
4018
+ "params": [
4019
+ {
4020
+ "name": "s",
4021
+ "type": "string",
4022
+ "description": "The JSON string to parse"
4023
+ }
4024
+ ],
4025
+ "examples": [
4026
+ "(json/parse \"{\\\"a\\\": 1}\") // => {a: 1}"
4027
+ ],
4028
+ "docsSource": "generated"
4029
+ },
4030
+ "json/stringify": {
4031
+ "category": "std-json",
4032
+ "minArity": 1,
4033
+ "maxArity": 1,
4034
+ "returnType": "string",
4035
+ "description": "Serialize any value to a JSON string",
4036
+ "module": "json",
4037
+ "params": [
4038
+ {
4039
+ "name": "v",
4040
+ "type": "any",
4041
+ "description": "The value to serialize"
4042
+ }
4043
+ ],
4044
+ "examples": [
4045
+ "[\"json/stringify\", {a: 1}] // => \"{\\\"a\\\":1}\""
4046
+ ],
4047
+ "docsSource": "generated"
4048
+ },
4004
4049
  "let": {
4005
4050
  "category": "control",
4006
4051
  "minArity": 2,