yaml-flow 4.0.0 → 5.0.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.
- package/browser/board-livegraph-runtime.js +1453 -0
- package/browser/board-livegraph-runtime.js.map +1 -0
- package/browser/card-compute.js +36 -17
- package/browser/live-cards.js +848 -109
- package/browser/live-cards.schema.json +46 -21
- package/dist/board-livegraph-runtime/index.cjs +1448 -0
- package/dist/board-livegraph-runtime/index.cjs.map +1 -0
- package/dist/board-livegraph-runtime/index.d.cts +101 -0
- package/dist/board-livegraph-runtime/index.d.ts +101 -0
- package/dist/board-livegraph-runtime/index.js +1441 -0
- package/dist/board-livegraph-runtime/index.js.map +1 -0
- package/dist/card-compute/index.cjs +159 -44
- package/dist/card-compute/index.cjs.map +1 -1
- package/dist/card-compute/index.d.cts +36 -11
- package/dist/card-compute/index.d.ts +36 -11
- package/dist/card-compute/index.js +156 -44
- package/dist/card-compute/index.js.map +1 -1
- package/dist/cli/board-live-cards-cli.cjs +476 -105
- package/dist/cli/board-live-cards-cli.cjs.map +1 -1
- package/dist/cli/board-live-cards-cli.d.cts +8 -16
- package/dist/cli/board-live-cards-cli.d.ts +8 -16
- package/dist/cli/board-live-cards-cli.js +476 -106
- package/dist/cli/board-live-cards-cli.js.map +1 -1
- package/dist/continuous-event-graph/index.cjs +74 -33
- package/dist/continuous-event-graph/index.cjs.map +1 -1
- package/dist/continuous-event-graph/index.d.cts +7 -23
- package/dist/continuous-event-graph/index.d.ts +7 -23
- package/dist/continuous-event-graph/index.js +73 -32
- package/dist/continuous-event-graph/index.js.map +1 -1
- package/dist/index.cjs +1440 -56
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +21 -3
- package/dist/index.d.ts +21 -3
- package/dist/index.js +1434 -56
- package/dist/index.js.map +1 -1
- package/dist/journal-DRfJiheM.d.cts +28 -0
- package/dist/journal-NLYuqege.d.ts +28 -0
- package/dist/{journal-B_2JnBMF.d.ts → live-cards-bridge-Or7fdEJV.d.ts} +5 -32
- package/dist/{journal-BJDjWb5Q.d.cts → live-cards-bridge-vGJ6tMzN.d.cts} +5 -32
- package/dist/schedule-CMcZe5Ny.d.ts +21 -0
- package/dist/schedule-CiucyCan.d.cts +21 -0
- package/examples/browser/boards/portfolio-tracker/cards/holdings-table.json +1 -1
- package/examples/browser/boards/portfolio-tracker/cards/portfolio-form.json +3 -3
- package/examples/browser/boards/portfolio-tracker/cards/portfolio-value.json +1 -1
- package/examples/browser/boards/portfolio-tracker/cards/price-fetch.json +3 -3
- package/examples/browser/boards/portfolio-tracker/portfolio-tracker-task-executor.cjs +96 -0
- package/examples/browser/boards/portfolio-tracker/portfolio-tracker.js +33 -5
- package/examples/browser/livecards-browser/index.html +37 -684
- package/examples/cli/step-machine-cli/portfolio-tracker/cards/holdings-table.json +1 -1
- package/examples/cli/step-machine-cli/portfolio-tracker/cards/portfolio-form.json +3 -3
- package/examples/cli/step-machine-cli/portfolio-tracker/cards/portfolio-value.json +1 -1
- package/examples/cli/step-machine-cli/portfolio-tracker/cards/price-fetch.json +3 -3
- package/examples/cli/step-machine-cli/portfolio-tracker/handlers/update-holdings-cli.js +2 -2
- package/examples/example-board/board.yaml +23 -0
- package/examples/example-board/bootstrap_payload.json +1 -0
- package/examples/example-board/cards/card-chain-region-alert.json +39 -0
- package/examples/example-board/cards/card-chain-region-totals.json +26 -0
- package/examples/example-board/cards/card-chain-top-region.json +24 -0
- package/examples/example-board/cards/card-ex-actions.json +32 -0
- package/examples/example-board/cards/card-ex-chart.json +30 -0
- package/examples/example-board/cards/card-ex-filter.json +36 -0
- package/examples/example-board/cards/card-ex-filtered-by-preference.json +59 -0
- package/examples/example-board/cards/card-ex-form.json +91 -0
- package/examples/example-board/cards/card-ex-list.json +22 -0
- package/examples/example-board/cards/card-ex-markdown.json +17 -0
- package/examples/example-board/cards/card-ex-metric.json +19 -0
- package/examples/example-board/cards/card-ex-narrative.json +36 -0
- package/examples/example-board/cards/card-ex-source-http.json +28 -0
- package/examples/example-board/cards/card-ex-source.json +21 -0
- package/examples/example-board/cards/card-ex-status.json +35 -0
- package/examples/example-board/cards/card-ex-table.json +30 -0
- package/examples/example-board/cards/card-ex-todo.json +29 -0
- package/examples/example-board/demo-chat-handler.js +69 -0
- package/examples/example-board/demo-server.js +87 -0
- package/examples/example-board/demo-shell-browser.html +806 -0
- package/examples/example-board/demo-shell-with-server.html +280 -0
- package/examples/example-board/demo-shell.html +62 -0
- package/examples/example-board/demo-task-executor.js +255 -0
- package/examples/example-board/mock.db +15 -0
- package/examples/example-board/reusable-board-runtime-client.js +265 -0
- package/examples/example-board/reusable-runtime-artifacts-adapter.js +233 -0
- package/examples/example-board/reusable-server-runtime.js +1284 -0
- package/examples/index.html +16 -9
- package/examples/npm-libs/continuous-event-graph/live-cards-board.ts +17 -17
- package/examples/npm-libs/continuous-event-graph/live-portfolio-dashboard.ts +23 -23
- package/examples/step-machine-cli/portfolio-tracker/cards/holdings-table.json +1 -1
- package/examples/step-machine-cli/portfolio-tracker/cards/portfolio-form.json +3 -3
- package/examples/step-machine-cli/portfolio-tracker/cards/portfolio-value.json +1 -1
- package/examples/step-machine-cli/portfolio-tracker/cards/price-fetch.json +1 -1
- package/examples/step-machine-cli/portfolio-tracker/portfolio-tracker-task-executor.cjs +96 -0
- package/package.json +16 -2
- package/schema/card-runtime.schema.json +25 -0
- package/schema/live-cards.schema.json +46 -21
- package/browser/ingest-board.js +0 -296
- package/examples/ingest.js +0 -733
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
3
|
"$id": "https://nsreehari.github.io/boards/live-cards.schema.json",
|
|
4
|
-
"title": "LiveCards Node Schema",
|
|
5
|
-
"description": "Schema for Card and ExternalSource nodes in the LiveCards Board/Canvas engine",
|
|
6
4
|
|
|
7
5
|
"definitions": {
|
|
8
6
|
|
|
9
7
|
"bind_ref": {
|
|
10
|
-
"description": "A
|
|
8
|
+
"description": "A card data path reference, e.g. 'card_data.raw_quotes' or 'requires.upstream'",
|
|
11
9
|
"type": "string",
|
|
12
|
-
"pattern": "^(
|
|
10
|
+
"pattern": "^(card_data|requires|fetched_sources|computed_values)(\\.|$)"
|
|
13
11
|
},
|
|
14
12
|
|
|
15
13
|
"bind_or_literal": {
|
|
@@ -46,7 +44,7 @@
|
|
|
46
44
|
]
|
|
47
45
|
},
|
|
48
46
|
"input": {
|
|
49
|
-
"description": "
|
|
47
|
+
"description": "card_data.path, literal, array of inputs, or nested compute_expr",
|
|
50
48
|
"oneOf": [
|
|
51
49
|
{ "type": "string" },
|
|
52
50
|
{ "type": "number" },
|
|
@@ -85,19 +83,19 @@
|
|
|
85
83
|
"required": ["bindTo", "src"],
|
|
86
84
|
"properties": {
|
|
87
85
|
"bindTo": { "type": "string", "description": "Token name published downstream" },
|
|
88
|
-
"src": { "type": "string", "description": "Path to read value from (
|
|
86
|
+
"src": { "type": "string", "description": "Path to read value from (card_data.*, requires.*, fetched_sources.*, computed_values.*)" }
|
|
89
87
|
}
|
|
90
88
|
},
|
|
91
|
-
"description": "Explicit bindings exposing computed
|
|
89
|
+
"description": "Explicit bindings exposing computed or card_data values downstream as named tokens"
|
|
92
90
|
},
|
|
93
91
|
|
|
94
92
|
"compute_step": {
|
|
95
|
-
"description": "A single ordered compute step: reads
|
|
93
|
+
"description": "A single ordered compute step: reads card_data.*/requires.*/computed_values.*, writes to computed_values[bindTo]",
|
|
96
94
|
"type": "object",
|
|
97
95
|
"required": ["bindTo", "expr"],
|
|
98
96
|
"properties": {
|
|
99
97
|
"bindTo": { "type": "string", "description": "Key in computed_values to write result" },
|
|
100
|
-
"expr": { "type": "string", "description": "JSONata expression evaluated against {
|
|
98
|
+
"expr": { "type": "string", "description": "JSONata expression evaluated against { card_data, requires, fetched_sources, computed_values }" }
|
|
101
99
|
}
|
|
102
100
|
},
|
|
103
101
|
|
|
@@ -107,7 +105,7 @@
|
|
|
107
105
|
"required": ["bindTo"],
|
|
108
106
|
"additionalProperties": true,
|
|
109
107
|
"properties": {
|
|
110
|
-
"bindTo": { "type": "string", "description": "Key under
|
|
108
|
+
"bindTo": { "type": "string", "description": "Key under fetched_sources.* available in compute expressions" },
|
|
111
109
|
"outputFile": { "type": "string", "description": "Board-relative path the executor writes its JSON result to. Presence of this file signals delivery." },
|
|
112
110
|
"optionalForCompletionGating": { "type": "boolean", "default": false, "description": "When true this source does not gate card completion. Default false when absent, so sources are completion-gating by default." },
|
|
113
111
|
"timeout": { "type": "integer", "minimum": 0, "default": 120000, "description": "Executor/script timeout in ms. Default: 120 000 (2 min)." },
|
|
@@ -123,16 +121,16 @@
|
|
|
123
121
|
"kind": {
|
|
124
122
|
"enum": ["metric", "table", "chart", "form", "filter", "list",
|
|
125
123
|
"notes", "todo", "alert", "narrative", "badge", "text",
|
|
126
|
-
"markdown", "custom", "
|
|
124
|
+
"markdown", "custom", "actions"]
|
|
127
125
|
},
|
|
128
126
|
"label": { "type": "string", "description": "Heading above this element" },
|
|
129
127
|
"className": { "type": "string", "description": "Bootstrap grid class, e.g. 'col-12 col-md-6'" },
|
|
130
|
-
"visible": { "type": "string", "description": "
|
|
128
|
+
"visible": { "type": "string", "description": "card_data/requires/fetched_sources/computed_values path — element shown only if truthy" },
|
|
131
129
|
"data": {
|
|
132
130
|
"type": "object",
|
|
133
131
|
"properties": {
|
|
134
|
-
"bind": { "$ref": "#/definitions/bind_ref", "description": "
|
|
135
|
-
"writeTo": { "$ref": "#/definitions/bind_ref", "description": "
|
|
132
|
+
"bind": { "$ref": "#/definitions/bind_ref", "description": "card_data/requires/fetched_sources/computed_values path to read data from" },
|
|
133
|
+
"writeTo": { "$ref": "#/definitions/bind_ref", "description": "card_data path for user input (form, filter, todo, notes)" },
|
|
136
134
|
"columns": { "type": "array", "items": { "type": "string" }, "description": "table: visible columns" },
|
|
137
135
|
"maxRows": { "type": "integer", "description": "table/list: max rows to display" },
|
|
138
136
|
"sortable": { "type": "boolean", "default": true, "description": "table: enable click-to-sort" },
|
|
@@ -165,7 +163,7 @@
|
|
|
165
163
|
"label": { "type": "string" },
|
|
166
164
|
"style": { "type": "string", "description": "Bootstrap button variant, e.g. 'success', 'outline-danger'" },
|
|
167
165
|
"size": { "type": "string", "default": "sm" },
|
|
168
|
-
"disabled": { "oneOf": [{ "type": "boolean" }, { "type": "string", "description": "
|
|
166
|
+
"disabled": { "oneOf": [{ "type": "boolean" }, { "type": "string", "description": "card_data/requires/fetched_sources/computed_values path — truthy = disabled" }] }
|
|
169
167
|
}
|
|
170
168
|
}
|
|
171
169
|
}
|
|
@@ -227,12 +225,39 @@
|
|
|
227
225
|
"provides": { "$ref": "#/definitions/provides" },
|
|
228
226
|
"meta": { "$ref": "#/definitions/meta" },
|
|
229
227
|
"view": { "$ref": "#/definitions/view" },
|
|
230
|
-
"
|
|
228
|
+
"card_data": {
|
|
229
|
+
"type": "object",
|
|
230
|
+
"description": "Authored card data supplied in the card definition",
|
|
231
231
|
"properties": {
|
|
232
|
-
"
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
232
|
+
"files": {
|
|
233
|
+
"type": "array",
|
|
234
|
+
"description": "Optional uploaded-file metadata maintained by host handlers. Stored name is normalized and serial-prefixed (for example 001-my_file.pdf).",
|
|
235
|
+
"items": {
|
|
236
|
+
"type": "object",
|
|
237
|
+
"required": ["name", "stored_name"],
|
|
238
|
+
"properties": {
|
|
239
|
+
"name": { "type": "string", "minLength": 1 },
|
|
240
|
+
"stored_name": {
|
|
241
|
+
"type": "string",
|
|
242
|
+
"minLength": 5,
|
|
243
|
+
"maxLength": 32,
|
|
244
|
+
"pattern": "^[0-9]{3,}-[a-z0-9._-]+$"
|
|
245
|
+
},
|
|
246
|
+
"size": {
|
|
247
|
+
"oneOf": [
|
|
248
|
+
{ "type": "integer", "minimum": 0 },
|
|
249
|
+
{ "type": "null" }
|
|
250
|
+
]
|
|
251
|
+
},
|
|
252
|
+
"mime_type": { "type": "string" },
|
|
253
|
+
"path": { "type": "string", "pattern": "^[^\\s]+/files/[0-9]{3,}-[a-z0-9._-]+$" },
|
|
254
|
+
"uploaded_at": { "type": "string", "format": "date-time" }
|
|
255
|
+
},
|
|
256
|
+
"additionalProperties": false
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
},
|
|
260
|
+
"additionalProperties": true
|
|
236
261
|
},
|
|
237
262
|
"sources": {
|
|
238
263
|
"type": "array",
|
|
@@ -241,7 +266,7 @@
|
|
|
241
266
|
},
|
|
242
267
|
"compute": {
|
|
243
268
|
"type": "array",
|
|
244
|
-
"description": "Ordered array of compute steps. Each reads
|
|
269
|
+
"description": "Ordered array of compute steps. Each reads card_data.*/requires.*/fetched_sources.*/computed_values.* and writes to ephemeral computed_values[bindTo].",
|
|
245
270
|
"items": { "$ref": "#/definitions/compute_step" }
|
|
246
271
|
}
|
|
247
272
|
}
|