yaml-flow 6.0.0 → 7.1.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 (166) hide show
  1. package/board-live-cards-cli.js +4 -4
  2. package/browser/asset-integrity.json +3 -3
  3. package/browser/board-livecards-client.js +2 -0
  4. package/browser/board-livecards-client.js.map +1 -0
  5. package/browser/board-livecards-localstorage.js +10 -0
  6. package/browser/board-livecards-localstorage.js.map +1 -0
  7. package/browser/board-livegraph-engine.js +2 -2
  8. package/browser/board-livegraph-engine.js.map +1 -1
  9. package/browser/card-compute.js +28 -28
  10. package/browser/compute-jsonata.js +5 -0
  11. package/browser/compute-jsonata.js.map +1 -0
  12. package/browser/live-cards.js +264 -151
  13. package/card-store.js +4 -4
  14. package/dist/{board-live-cards-public-CltXYgaY.d.cts → board-live-cards-public-5n1-syA3.d.cts} +8 -5
  15. package/dist/{board-live-cards-public-f-E-FAyp.d.ts → board-live-cards-public-CK_J8uv0.d.ts} +8 -5
  16. package/dist/board-livegraph-runtime/index.cjs +2 -2
  17. package/dist/board-livegraph-runtime/index.cjs.map +1 -1
  18. package/dist/board-livegraph-runtime/index.d.cts +11 -9
  19. package/dist/board-livegraph-runtime/index.d.ts +11 -9
  20. package/dist/board-livegraph-runtime/index.js +2 -2
  21. package/dist/board-livegraph-runtime/index.js.map +1 -1
  22. package/dist/board-livegraph-runtime/jsonata-sync.cjs +37 -1
  23. package/dist/card-compute/index.cjs +4 -4
  24. package/dist/card-compute/index.cjs.map +1 -1
  25. package/dist/card-compute/index.d.cts +5 -1
  26. package/dist/card-compute/index.d.ts +5 -1
  27. package/dist/card-compute/index.js +4 -4
  28. package/dist/card-compute/index.js.map +1 -1
  29. package/dist/card-compute/jsonata-sync.cjs +37 -1
  30. package/dist/cli/browser-api/board-live-cards-browser-adapter.cjs +2 -1
  31. package/dist/cli/browser-api/board-live-cards-browser-adapter.cjs.map +1 -1
  32. package/dist/cli/browser-api/board-live-cards-browser-adapter.d.cts +27 -14
  33. package/dist/cli/browser-api/board-live-cards-browser-adapter.d.ts +27 -14
  34. package/dist/cli/browser-api/board-live-cards-browser-adapter.js +2 -1
  35. package/dist/cli/browser-api/board-live-cards-browser-adapter.js.map +1 -1
  36. package/dist/cli/browser-api/card-store-browser-api.cjs +1 -1
  37. package/dist/cli/browser-api/card-store-browser-api.cjs.map +1 -1
  38. package/dist/cli/browser-api/card-store-browser-api.js +1 -1
  39. package/dist/cli/browser-api/card-store-browser-api.js.map +1 -1
  40. package/dist/cli/browser-api/jsonata-sync.cjs +37 -1
  41. package/dist/cli/node/artifacts-store-cli.cjs +8 -8
  42. package/dist/cli/node/artifacts-store-cli.cjs.map +1 -1
  43. package/dist/cli/node/artifacts-store-cli.js +8 -8
  44. package/dist/cli/node/artifacts-store-cli.js.map +1 -1
  45. package/dist/cli/node/board-live-cards-cli.cjs +7 -7
  46. package/dist/cli/node/board-live-cards-cli.cjs.map +1 -1
  47. package/dist/cli/node/board-live-cards-cli.js +7 -7
  48. package/dist/cli/node/board-live-cards-cli.js.map +1 -1
  49. package/dist/cli/node/card-store-cli.cjs +5 -5
  50. package/dist/cli/node/card-store-cli.cjs.map +1 -1
  51. package/dist/cli/node/card-store-cli.js +5 -5
  52. package/dist/cli/node/card-store-cli.js.map +1 -1
  53. package/dist/cli/node/execution-adapter.cjs +3 -0
  54. package/dist/cli/node/execution-adapter.cjs.map +1 -0
  55. package/dist/cli/node/execution-adapter.d.cts +174 -0
  56. package/dist/cli/node/execution-adapter.d.ts +174 -0
  57. package/dist/cli/node/execution-adapter.js +3 -0
  58. package/dist/cli/node/execution-adapter.js.map +1 -0
  59. package/dist/cli/node/fs-board-adapter.cjs +7 -7
  60. package/dist/cli/node/fs-board-adapter.cjs.map +1 -1
  61. package/dist/cli/node/fs-board-adapter.d.cts +2 -2
  62. package/dist/cli/node/fs-board-adapter.d.ts +2 -2
  63. package/dist/cli/node/fs-board-adapter.js +7 -7
  64. package/dist/cli/node/fs-board-adapter.js.map +1 -1
  65. package/dist/cli/node/jsonata-sync.cjs +37 -1
  66. package/dist/cli/node/source-cli-task-executor.cjs +4 -4
  67. package/dist/cli/node/source-cli-task-executor.cjs.map +1 -1
  68. package/dist/cli/node/source-cli-task-executor.js +4 -4
  69. package/dist/cli/node/source-cli-task-executor.js.map +1 -1
  70. package/dist/continuous-event-graph/index.cjs +2 -2
  71. package/dist/continuous-event-graph/index.cjs.map +1 -1
  72. package/dist/continuous-event-graph/index.js +2 -2
  73. package/dist/continuous-event-graph/index.js.map +1 -1
  74. package/dist/continuous-event-graph/jsonata-sync.cjs +37 -1
  75. package/dist/execution-refs.cjs +2 -1
  76. package/dist/execution-refs.cjs.map +1 -1
  77. package/dist/execution-refs.d.cts +55 -12
  78. package/dist/execution-refs.d.ts +55 -12
  79. package/dist/execution-refs.js +2 -1
  80. package/dist/execution-refs.js.map +1 -1
  81. package/dist/index.cjs +10 -10
  82. package/dist/index.cjs.map +1 -1
  83. package/dist/index.js +10 -10
  84. package/dist/index.js.map +1 -1
  85. package/dist/jsonata-sync.cjs +37 -1
  86. package/dist/server-runtime/index.cjs +9 -0
  87. package/dist/server-runtime/index.cjs.map +1 -0
  88. package/dist/server-runtime/index.d.cts +31 -0
  89. package/dist/server-runtime/index.d.ts +31 -0
  90. package/dist/server-runtime/index.js +9 -0
  91. package/dist/server-runtime/index.js.map +1 -0
  92. package/dist/server-runtime/jsonata-sync.cjs +7623 -0
  93. package/dist/step-machine-public/index.cjs +3 -0
  94. package/dist/step-machine-public/index.cjs.map +1 -0
  95. package/dist/step-machine-public/index.d.cts +166 -0
  96. package/dist/step-machine-public/index.d.ts +166 -0
  97. package/dist/step-machine-public/index.js +3 -0
  98. package/dist/step-machine-public/index.js.map +1 -0
  99. package/dist/step-machine-public/jsonata-sync.cjs +7623 -0
  100. package/dist/storage-refs.cjs +2 -2
  101. package/dist/storage-refs.cjs.map +1 -1
  102. package/dist/storage-refs.d.cts +6 -6
  103. package/dist/storage-refs.d.ts +6 -6
  104. package/dist/storage-refs.js +2 -2
  105. package/dist/storage-refs.js.map +1 -1
  106. package/dist/types-CU3DjTKL.d.cts +147 -0
  107. package/dist/types-HGDTWIun.d.ts +147 -0
  108. package/examples/browser/boards/portfolio-tracker/portfolio-t4.js +9 -10
  109. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-http-test.js +370 -0
  110. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-http-test.py +398 -0
  111. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-public.js +9 -10
  112. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-server.js +300 -0
  113. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-server.py +617 -0
  114. package/examples/browser/boards/portfolio-tracker/portfolio-tracker-sse-worker.js +48 -0
  115. package/examples/browser/boards/portfolio-tracker/portfolio-tracker.py +11 -10
  116. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/_board-cli.js +19 -4
  117. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/add-cards-cli.js +4 -8
  118. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/init-board-cli.js +6 -10
  119. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/poll-status-cli.js +8 -16
  120. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/reset-board-dir-cli.js +2 -6
  121. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/retrigger-cli.js +4 -8
  122. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/status-cli.js +3 -7
  123. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/update-holdings-cli.js +4 -8
  124. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/wait-completed-cli.js +7 -16
  125. package/examples/cli/step-machine-cli/portfolio-tracker/handlers/write-prices-cli.js +2 -6
  126. package/examples/cli/step-machine-cli/portfolio-tracker/handlers-py/_board_pycli.py +13 -3
  127. package/examples/cli/step-machine-cli/portfolio-tracker/handlers-py/add-cards.py +2 -1
  128. package/examples/cli/step-machine-cli/portfolio-tracker/handlers-py/init-board.py +2 -1
  129. package/examples/cli/step-machine-cli/portfolio-tracker/handlers-py/poll-status.py +2 -1
  130. package/examples/cli/step-machine-cli/portfolio-tracker/portfolio-tracker.flow.yaml +20 -24
  131. package/examples/cli/step-machine-cli/portfolio-tracker/run-inline-python-demo-pycli.py +0 -3
  132. package/examples/cli/step-machine-demo/jsonata-init-board-cli.js +8 -13
  133. package/examples/cli/step-machine-demo/jsonata-init-board.flow.yaml +33 -9
  134. package/examples/cli/step-machine-demo/one-step-cli-only.flow.yaml +3 -1
  135. package/examples/cli/step-machine-demo/step2-double-cli.js +6 -12
  136. package/examples/cli/step-machine-demo/two-step-math.flow.yaml +66 -4
  137. package/examples/cli/step-machine-demo/two-step-mixed.flow.yaml +13 -5
  138. package/examples/example-board/agent-instructions.md +1 -1
  139. package/examples/example-board/cards/card-my-identity.json +30 -6
  140. package/examples/example-board/cards/card-portfolio-action.json +24 -6
  141. package/examples/example-board/cards/card-portfolio-intelligence.json +97 -0
  142. package/examples/example-board/cards/card-portfolio-risks.json +24 -6
  143. package/examples/example-board/cards/card-rebalance-impact.json +22 -6
  144. package/examples/example-board/cards/card-rebalance-sim.json +66 -15
  145. package/examples/example-board/cards/cardT-market-prices.json +80 -0
  146. package/examples/example-board/cards/{card-portfolio-value.json → cardT-portfolio-value.json} +38 -10
  147. package/examples/example-board/cards/cardT-portfolio.json +78 -0
  148. package/examples/example-board/demo-server-config.json +1 -1
  149. package/examples/example-board/demo-server.js +383 -69
  150. package/examples/example-board/demo-shell-localstorage.html +774 -0
  151. package/examples/example-board/demo-shell-with-server.html +18 -36
  152. package/examples/example-board/demo-shell.html +5 -4
  153. package/examples/example-board/demo-task-executor.js +213 -265
  154. package/package.json +15 -13
  155. package/step-machine-cli.js +43 -310
  156. package/board-livecards-server-runtime.js +0 -1513
  157. package/browser/board-livecards-runtime-client.js +0 -263
  158. package/dist/pycli/quickjs-board-runtime.global.js +0 -9
  159. package/dist/pycli/quickjs-board-runtime.global.js.map +0 -1
  160. package/dist/pycli/quickjs-step-machine-runtime.global.js +0 -5
  161. package/dist/pycli/quickjs-step-machine-runtime.global.js.map +0 -1
  162. package/examples/cli/step-machine-demo/two-step-math-handlers.js +0 -32
  163. package/examples/cli/step-machine-demo/two-step-mixed-handlers.js +0 -24
  164. package/examples/example-board/cards/card-market-prices.json +0 -56
  165. package/examples/example-board/cards/card-portfolio.json +0 -44
  166. package/examples/example-board/demo-shell-browser.html +0 -675
@@ -0,0 +1,80 @@
1
+ {
2
+ "id": "card-market-prices",
3
+ "meta": {
4
+ "title": "Market Prices",
5
+ "tags": [
6
+ "prices",
7
+ "market"
8
+ ],
9
+ "desc": "Fetches live prices for portfolio tickers. Publishes enriched quote data for downstream portfolio value calculations."
10
+ },
11
+ "requires": [
12
+ "holdings"
13
+ ],
14
+ "source_defs": [
15
+ {
16
+ "bindTo": "quotes",
17
+ "outputFile": "market-prices-quotes.json",
18
+ "projections": {
19
+ "url_list": "requires.holdings.ticker.('https://query1.finance.yahoo.com/v8/finance/chart/' & $ & '?interval=1d&range=1d')"
20
+ },
21
+ "url-list": {
22
+ "headers": {
23
+ "User-Agent": "Mozilla/5.0 (compatible; portfolio-tracker-demo/1.0)"
24
+ },
25
+ "cacheTimeout": 3600
26
+ }
27
+ }
28
+ ],
29
+ "compute": [
30
+ {
31
+ "bindTo": "normalizedQuotes",
32
+ "expr": "{ \"quoteResponse\": { \"result\": $map(fetched_sources.quotes, function($r) { ($m := $r.chart.result[0].meta; $price := $sum($m.regularMarketPrice); $prev := $sum($m.chartPreviousClose); $chg := $price - $prev; { \"symbol\": $join($m.symbol, \"\"), \"shortName\": ($join($m.shortName, \"\") != \"\" ? $join($m.shortName, \"\") : $join($m.longName, \"\")), \"regularMarketPrice\": $price, \"regularMarketChange\": $chg, \"regularMarketChangePercent\": $prev = 0 ? 0 : ($chg / $prev * 100) }) }), \"error\": null } }"
33
+ },
34
+ {
35
+ "bindTo": "prices",
36
+ "expr": "$map((computed_values.normalizedQuotes.quoteResponse.result ? computed_values.normalizedQuotes.quoteResponse.result : []), function($q) { {\"ticker\": $q.symbol, \"name\": $q.shortName, \"price\": $round($q.regularMarketPrice, 2), \"change\": $round($q.regularMarketChange, 2), \"chg_pct\": $round($q.regularMarketChangePercent, 2)} })"
37
+ }
38
+ ],
39
+ "provides": [
40
+ {
41
+ "bindTo": "quotes",
42
+ "ref": "computed_values.normalizedQuotes"
43
+ }
44
+ ],
45
+ "view": {
46
+ "elements": [
47
+ {
48
+ "kind": "table",
49
+ "label": "Prices",
50
+ "data": {
51
+ "bind": "computed_values.prices",
52
+ "columns": [
53
+ "ticker",
54
+ "name",
55
+ "price",
56
+ "change",
57
+ "chg_pct"
58
+ ],
59
+ "sortable": true
60
+ }
61
+ }
62
+ ],
63
+ "layout": {
64
+ "board": {
65
+ "col": 4,
66
+ "order": 2
67
+ },
68
+ "canvas": {
69
+ "x": 400,
70
+ "y": 50,
71
+ "w": 400,
72
+ "h": 340
73
+ }
74
+ },
75
+ "features": {
76
+ "refresh": true
77
+ }
78
+ },
79
+ "card_data": {}
80
+ }
@@ -2,12 +2,21 @@
2
2
  "id": "card-portfolio-value",
3
3
  "meta": {
4
4
  "title": "Portfolio Value",
5
- "tags": ["portfolio", "value"],
5
+ "tags": [
6
+ "portfolio",
7
+ "value"
8
+ ],
6
9
  "desc": "Computes total portfolio value, gainers/losers summary, and per-position P&L from holdings and live market quotes."
7
10
  },
8
- "requires": ["holdings", "quotes"],
11
+ "requires": [
12
+ "holdings",
13
+ "quotes"
14
+ ],
9
15
  "provides": [
10
- { "bindTo": "positions", "ref": "computed_values.positions" }
16
+ {
17
+ "bindTo": "positions",
18
+ "ref": "computed_values.positions"
19
+ }
11
20
  ],
12
21
  "compute": [
13
22
  {
@@ -36,27 +45,46 @@
36
45
  {
37
46
  "kind": "metric",
38
47
  "label": "Portfolio Value ($)",
39
- "data": { "bind": "computed_values.totalValue" }
48
+ "data": {
49
+ "bind": "computed_values.totalValue"
50
+ }
40
51
  },
41
52
  {
42
53
  "kind": "text",
43
- "data": { "bind": "computed_values.gainersLosers" }
54
+ "data": {
55
+ "bind": "computed_values.gainersLosers"
56
+ }
44
57
  },
45
58
  {
46
59
  "kind": "table",
47
60
  "label": "Positions",
48
61
  "data": {
49
62
  "bind": "computed_values.positions",
50
- "columns": ["ticker", "value", "gain_$", "gain_%"],
63
+ "columns": [
64
+ "ticker",
65
+ "value",
66
+ "gain_$",
67
+ "gain_%"
68
+ ],
51
69
  "sortable": true
52
70
  }
53
71
  }
54
72
  ],
55
73
  "layout": {
56
- "board": { "col": 4, "order": 3 },
57
- "canvas": { "x": 840, "y": 50, "w": 420, "h": 380 }
74
+ "board": {
75
+ "col": 4,
76
+ "order": 3
77
+ },
78
+ "canvas": {
79
+ "x": 840,
80
+ "y": 50,
81
+ "w": 420,
82
+ "h": 380
83
+ }
58
84
  },
59
- "features": { "chat": true }
85
+ "features": {
86
+ "chat": true
87
+ }
60
88
  },
61
89
  "card_data": {}
62
- }
90
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "id": "card-portfolio",
3
+ "meta": {
4
+ "title": "My Portfolio",
5
+ "tags": [
6
+ "portfolio"
7
+ ],
8
+ "desc": "Manage your stock holdings — edit tickers and quantities inline, add or delete rows. Changes propagate downstream immediately."
9
+ },
10
+ "provides": [
11
+ {
12
+ "bindTo": "holdings",
13
+ "ref": "card_data.holdings"
14
+ }
15
+ ],
16
+ "compute": [],
17
+ "view": {
18
+ "elements": [
19
+ {
20
+ "kind": "editable-table",
21
+ "label": "Holdings",
22
+ "data": {
23
+ "bind": "card_data.holdings",
24
+ "writeTo": "card_data.holdings",
25
+ "columns": [
26
+ "ticker",
27
+ "quantity",
28
+ "cost_basis"
29
+ ],
30
+ "schema": {
31
+ "properties": {
32
+ "quantity": {
33
+ "type": "number"
34
+ },
35
+ "cost_basis": {
36
+ "type": "number"
37
+ }
38
+ }
39
+ }
40
+ }
41
+ }
42
+ ],
43
+ "layout": {
44
+ "board": {
45
+ "col": 4,
46
+ "order": 1
47
+ },
48
+ "canvas": {
49
+ "x": 50,
50
+ "y": 50,
51
+ "w": 320,
52
+ "h": 340
53
+ }
54
+ },
55
+ "features": {
56
+ "chat": true
57
+ }
58
+ },
59
+ "card_data": {
60
+ "holdings": [
61
+ {
62
+ "ticker": "AAPL",
63
+ "quantity": 10,
64
+ "cost_basis": 150
65
+ },
66
+ {
67
+ "ticker": "NVDA",
68
+ "quantity": 5,
69
+ "cost_basis": 310
70
+ },
71
+ {
72
+ "ticker": "GOOG",
73
+ "quantity": 3,
74
+ "cost_basis": 33
75
+ }
76
+ ]
77
+ }
78
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "port": 7799,
3
- "serverMetaStoreRef": "::fs-path::./.server-meta",
3
+ "serverMetaStoreRef": "b64:eyJraW5kIjoiZnMtcGF0aCIsInZhbHVlIjoiLi8uc2VydmVyLW1ldGEifQ",
4
4
  "cardsDir": "./cards",
5
5
  "taskExecutorPath": "./demo-task-executor.js",
6
6
  "chatHandlerPath": "./demo-chat-handler.js",