@north-light/crouter 0.3.192 → 0.3.193
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/dist/api/client.d.ts +31 -10
- package/dist/api/client.js +83 -24
- package/dist/api/dto/bash-jobs.d.ts +22 -0
- package/dist/api/dto/bash-jobs.js +9 -0
- package/dist/api/dto/human.d.ts +3 -4
- package/dist/api/dto/inbox.d.ts +106 -65
- package/dist/api/dto/inbox.js +2 -8
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.js +1 -0
- package/dist/api/routes.d.ts +7 -0
- package/dist/api/routes.js +7 -0
- package/dist/builtin-memory/internal/storage-tiers.md +1 -1
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/serial/provider-rotation.test.ts +101 -3
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.d.ts +6 -2
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.js +68 -14
- package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.ts +87 -13
- package/dist/clients/attach/__tests__/chat-view-snapshot-ordering.test.js +2 -2
- package/dist/clients/attach/__tests__/group-activity.test.js +2 -2
- package/dist/clients/attach/chrome/canvas-panels.d.ts +1 -1
- package/dist/clients/attach/chrome/canvas-panels.js +1 -1
- package/dist/clients/attach/input/overlay-owner.js +1 -1
- package/dist/clients/attach/overlays/auth.js +34 -8
- package/dist/clients/attach/overlays/pickers.d.ts +5 -8
- package/dist/clients/attach/overlays/pickers.js +37 -43
- package/dist/clients/attach/viewer.js +643 -620
- package/dist/clients/inbox/__tests__/serial/inbox-controller.test.js +38 -128
- package/dist/clients/inbox/__tests__/serial/mount-panel.test.js +72 -148
- package/dist/clients/inbox/controller.d.ts +2 -3
- package/dist/clients/inbox/controller.js +41 -42
- package/dist/clients/inbox/page-adapter.d.ts +33 -0
- package/dist/clients/inbox/page-adapter.js +54 -0
- package/dist/clients/inbox/resolve.d.ts +2 -2
- package/dist/clients/inbox/resolve.js +1 -1
- package/dist/clients/inbox/review-visibility.d.ts +1 -1
- package/dist/clients/inbox/review-visibility.js +1 -1
- package/dist/clients/inbox/tui/ansi.d.ts +1 -1
- package/dist/clients/inbox/tui/ansi.js +2 -2
- package/dist/clients/inbox/tui/input.d.ts +1 -3
- package/dist/clients/inbox/tui/input.js +242 -553
- package/dist/clients/inbox/tui/panel.d.ts +3 -1
- package/dist/clients/inbox/tui/panel.js +59 -187
- package/dist/clients/inbox/tui/render.d.ts +0 -25
- package/dist/clients/inbox/tui/render.js +165 -416
- package/dist/clients/inbox/tui/slots.d.ts +32 -0
- package/dist/clients/inbox/tui/slots.js +156 -0
- package/dist/clients/inbox/tui/types.d.ts +25 -13
- package/dist/clients/inbox/tui.js +5 -3
- package/dist/commands/attention.js +2 -2
- package/dist/commands/human/doc.js +66 -20
- package/dist/commands/human/prompts.d.ts +3 -3
- package/dist/commands/human/prompts.js +158 -112
- package/dist/commands/human/queue.d.ts +0 -1
- package/dist/commands/human/queue.js +34 -94
- package/dist/commands/human/shared.d.ts +10 -4
- package/dist/commands/human/shared.js +62 -13
- package/dist/commands/human.js +8 -4
- package/dist/commands/memory/read.js +13 -5
- package/dist/commands/node/bash.js +15 -28
- package/dist/commands/surface/node/focus.js +1 -1
- package/dist/core/__tests__/human-deliver.test.js +40 -46
- package/dist/core/__tests__/seam/broker-attach-stream.test.js +7 -1
- package/dist/core/__tests__/serial/human-deliver-e2e.test.js +40 -31
- package/dist/core/__tests__/serial/spawn-root.test.js +3 -1
- package/dist/core/__tests__/spawn-worktree-id-conflict.test.js +3 -1
- package/dist/core/auth-interaction.d.ts +2 -2
- package/dist/core/bash-jobs.d.ts +32 -0
- package/dist/core/bash-jobs.js +72 -1
- package/dist/core/canvas/__tests__/attention.test.js +16 -10
- package/dist/core/canvas/__tests__/render-remote.test.js +9 -3
- package/dist/core/canvas/attention.js +1 -1
- package/dist/core/canvas/browse/app.js +1 -1
- package/dist/core/canvas/nav-model.d.ts +1 -1
- package/dist/core/canvas/nav-model.js +1 -1
- package/dist/core/canvas/remote-canvas-source.js +1 -1
- package/dist/core/config.js +4 -1
- package/dist/core/human/__tests__/page-render.test.d.ts +1 -0
- package/dist/core/human/__tests__/page-render.test.js +49 -0
- package/dist/core/human/__tests__/page-tickets.test.d.ts +1 -0
- package/dist/core/human/__tests__/page-tickets.test.js +112 -0
- package/dist/core/human/__tests__/page.test.d.ts +1 -0
- package/dist/core/human/__tests__/page.test.js +139 -0
- package/dist/core/human/__tests__/serial/inbox-core.test.js +42 -32
- package/dist/core/human/claim.js +2 -2
- package/dist/core/human/convention.d.ts +4 -4
- package/dist/core/human/convention.js +6 -13
- package/dist/core/human/markdown-html.d.ts +8 -0
- package/dist/core/human/markdown-html.js +581 -0
- package/dist/core/human/page-catalog.d.ts +6 -0
- package/dist/core/human/page-catalog.js +43 -0
- package/dist/core/human/page-render.d.ts +3 -0
- package/dist/core/human/page-render.js +131 -0
- package/dist/core/human/page-schema.d.ts +312 -0
- package/dist/core/human/page-schema.js +291 -0
- package/dist/core/human/page-synth.d.ts +9 -0
- package/dist/core/human/page-synth.js +17 -0
- package/dist/core/human/page.d.ts +22 -0
- package/dist/core/human/page.js +427 -0
- package/dist/core/human/review-schema.d.ts +19 -0
- package/dist/core/human/review-schema.js +34 -0
- package/dist/core/human/scan.d.ts +12 -3
- package/dist/core/human/scan.js +69 -26
- package/dist/core/human/summary.d.ts +5 -6
- package/dist/core/human/summary.js +54 -37
- package/dist/core/human/tickets.d.ts +61 -11
- package/dist/core/human/tickets.js +100 -57
- package/dist/core/human/types.d.ts +21 -66
- package/dist/core/human/types.js +1 -5
- package/dist/core/preview-registry.js +0 -1
- package/dist/core/review/ticket-filter.d.ts +1 -1
- package/dist/core/review/ticket-filter.js +2 -8
- package/dist/core/runtime/broker/read-ops.js +3 -0
- package/dist/core/runtime/broker.js +19 -10
- package/dist/core/runtime/package-health.js +1 -1
- package/dist/core/termrender/termrender.d.ts +1 -1
- package/dist/core/termrender/termrender.js +2 -2
- package/dist/core/tui/page-host.d.ts +1 -1
- package/dist/core/tui/page-host.js +2 -2
- package/dist/core/user-settings.d.ts +19 -0
- package/dist/core/user-settings.js +22 -0
- package/dist/daemon/api/handlers/bash-jobs.d.ts +2 -0
- package/dist/daemon/api/handlers/bash-jobs.js +89 -0
- package/dist/daemon/api/handlers/human.js +16 -14
- package/dist/daemon/api/handlers/inbox.js +311 -227
- package/dist/daemon/api/router.d.ts +5 -1
- package/dist/daemon/api/router.js +5 -0
- package/dist/daemon/api/server.js +2 -0
- package/dist/daemon/cron-run.js +23 -10
- package/dist/daemon/human/finish.d.ts +8 -3
- package/dist/daemon/human/finish.js +35 -15
- package/dist/pages/bundle.css +1 -0
- package/dist/pages/bundle.js +1347 -0
- package/dist/pages/comments.d.ts +34 -0
- package/dist/pages/comments.js +72 -0
- package/dist/pages/elements/cards.d.ts +17 -0
- package/dist/pages/elements/cards.js +785 -0
- package/dist/pages/elements/chart.d.ts +1 -0
- package/dist/pages/elements/chart.js +648 -0
- package/dist/pages/elements/options.d.ts +21 -0
- package/dist/pages/elements/options.js +604 -0
- package/dist/pages/elements/pages.d.ts +24 -0
- package/dist/pages/elements/pages.js +355 -0
- package/dist/pages/elements/slot.d.ts +21 -0
- package/dist/pages/elements/slot.js +105 -0
- package/dist/pages/elements/table.d.ts +19 -0
- package/dist/pages/elements/table.js +906 -0
- package/dist/pages/elements/text.d.ts +25 -0
- package/dist/pages/elements/text.js +951 -0
- package/dist/pages/entry.d.ts +8 -0
- package/dist/pages/entry.js +8 -0
- package/dist/pages/host.d.ts +132 -0
- package/dist/pages/host.js +149 -0
- package/dist/pages/register.d.ts +2 -0
- package/dist/pages/register.js +3 -0
- package/dist/pages/slot-config.d.ts +36 -0
- package/dist/pages/slot-config.js +50 -0
- package/dist/pages/types.d.ts +98 -0
- package/dist/pages/types.js +23 -0
- package/dist/types.d.ts +4 -0
- package/dist/types.js +2 -0
- package/package.json +8 -8
- package/runtime.lock.json +156 -101
- package/dist/clients/inbox/deck-adapter.d.ts +0 -29
- package/dist/clients/inbox/deck-adapter.js +0 -63
- package/dist/core/human/deck-factories.d.ts +0 -8
- package/dist/core/human/deck-factories.js +0 -15
- package/dist/core/human/deck-schema.d.ts +0 -70
- package/dist/core/human/deck-schema.js +0 -92
package/runtime.lock.json
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@north-light/crouter",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.193",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@north-light/crouter",
|
|
9
|
-
"version": "0.3.
|
|
9
|
+
"version": "0.3.193",
|
|
10
10
|
"hasInstallScript": true,
|
|
11
11
|
"license": "MIT",
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@earendil-works/pi-agent-core": "0.
|
|
14
|
-
"@earendil-works/pi-ai": "0.
|
|
15
|
-
"@earendil-works/pi-coding-agent": "0.
|
|
16
|
-
"@earendil-works/pi-tui": "0.
|
|
13
|
+
"@earendil-works/pi-agent-core": "0.84.1",
|
|
14
|
+
"@earendil-works/pi-ai": "0.84.1",
|
|
15
|
+
"@earendil-works/pi-coding-agent": "0.84.1",
|
|
16
|
+
"@earendil-works/pi-tui": "0.84.1",
|
|
17
17
|
"cron-parser": "^5.6.0",
|
|
18
18
|
"proper-lockfile": "4.1.2",
|
|
19
19
|
"string-width": "^7.0.0",
|
|
@@ -131,9 +131,9 @@
|
|
|
131
131
|
}
|
|
132
132
|
},
|
|
133
133
|
"node_modules/@aws-sdk/core": {
|
|
134
|
-
"version": "3.977.
|
|
135
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.977.
|
|
136
|
-
"integrity": "sha512-
|
|
134
|
+
"version": "3.977.6",
|
|
135
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.977.6.tgz",
|
|
136
|
+
"integrity": "sha512-QiaJV4/zDrB4ZY2mfeSXSzSTc36W16sZXcGz+SPFk0CJ26gziO0cS+4LjJUMAbdeeBOvS0k0Aq1cZpfGdUXxSw==",
|
|
137
137
|
"license": "Apache-2.0",
|
|
138
138
|
"dependencies": {
|
|
139
139
|
"@aws-sdk/types": "^3.974.2",
|
|
@@ -150,12 +150,12 @@
|
|
|
150
150
|
}
|
|
151
151
|
},
|
|
152
152
|
"node_modules/@aws-sdk/credential-provider-env": {
|
|
153
|
-
"version": "3.972.
|
|
154
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.
|
|
155
|
-
"integrity": "sha512-
|
|
153
|
+
"version": "3.972.67",
|
|
154
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.67.tgz",
|
|
155
|
+
"integrity": "sha512-rcIpk5kxUqDaaNa6Xk23pQ6ViY7jlqzmfFWCahQcBT97ddXaXYYwzCen9Tz1Jvo6aJft6wDl5bN44/Jw5B4oLA==",
|
|
156
156
|
"license": "Apache-2.0",
|
|
157
157
|
"dependencies": {
|
|
158
|
-
"@aws-sdk/core": "^3.977.
|
|
158
|
+
"@aws-sdk/core": "^3.977.6",
|
|
159
159
|
"@aws-sdk/types": "^3.974.2",
|
|
160
160
|
"@smithy/core": "^3.31.1",
|
|
161
161
|
"@smithy/types": "^4.16.1",
|
|
@@ -166,12 +166,12 @@
|
|
|
166
166
|
}
|
|
167
167
|
},
|
|
168
168
|
"node_modules/@aws-sdk/credential-provider-http": {
|
|
169
|
-
"version": "3.972.
|
|
170
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.
|
|
171
|
-
"integrity": "sha512-
|
|
169
|
+
"version": "3.972.69",
|
|
170
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.69.tgz",
|
|
171
|
+
"integrity": "sha512-nggwJtZ4eeNsUw5IeWBMXsi1ryct5idi0K+/SCRF3kybLubOMaNTb3XCihXpWMiVpyzyPeIrl0zTkzhBH9porA==",
|
|
172
172
|
"license": "Apache-2.0",
|
|
173
173
|
"dependencies": {
|
|
174
|
-
"@aws-sdk/core": "^3.977.
|
|
174
|
+
"@aws-sdk/core": "^3.977.6",
|
|
175
175
|
"@aws-sdk/types": "^3.974.2",
|
|
176
176
|
"@smithy/core": "^3.31.1",
|
|
177
177
|
"@smithy/fetch-http-handler": "^5.6.13",
|
|
@@ -198,19 +198,19 @@
|
|
|
198
198
|
}
|
|
199
199
|
},
|
|
200
200
|
"node_modules/@aws-sdk/credential-provider-ini": {
|
|
201
|
-
"version": "3.973.
|
|
202
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.973.
|
|
203
|
-
"integrity": "sha512-
|
|
201
|
+
"version": "3.973.12",
|
|
202
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.973.12.tgz",
|
|
203
|
+
"integrity": "sha512-pNEf/OeyN5X3VmLKlgSO6TqaWmW10CvI3TfwL1XhsuhYjSLT2VDaxFnCPHnOeQXSaFisMX4jNhpETriqN8DOmg==",
|
|
204
204
|
"license": "Apache-2.0",
|
|
205
205
|
"dependencies": {
|
|
206
|
-
"@aws-sdk/core": "^3.977.
|
|
207
|
-
"@aws-sdk/credential-provider-env": "^3.972.
|
|
208
|
-
"@aws-sdk/credential-provider-http": "^3.972.
|
|
209
|
-
"@aws-sdk/credential-provider-login": "^3.972.
|
|
210
|
-
"@aws-sdk/credential-provider-process": "^3.972.
|
|
211
|
-
"@aws-sdk/credential-provider-sso": "^3.973.
|
|
212
|
-
"@aws-sdk/credential-provider-web-identity": "^3.972.
|
|
213
|
-
"@aws-sdk/nested-clients": "^3.997.
|
|
206
|
+
"@aws-sdk/core": "^3.977.6",
|
|
207
|
+
"@aws-sdk/credential-provider-env": "^3.972.67",
|
|
208
|
+
"@aws-sdk/credential-provider-http": "^3.972.69",
|
|
209
|
+
"@aws-sdk/credential-provider-login": "^3.972.74",
|
|
210
|
+
"@aws-sdk/credential-provider-process": "^3.972.67",
|
|
211
|
+
"@aws-sdk/credential-provider-sso": "^3.973.11",
|
|
212
|
+
"@aws-sdk/credential-provider-web-identity": "^3.972.73",
|
|
213
|
+
"@aws-sdk/nested-clients": "^3.997.41",
|
|
214
214
|
"@aws-sdk/types": "^3.974.2",
|
|
215
215
|
"@smithy/core": "^3.31.1",
|
|
216
216
|
"@smithy/credential-provider-imds": "^4.4.16",
|
|
@@ -222,13 +222,13 @@
|
|
|
222
222
|
}
|
|
223
223
|
},
|
|
224
224
|
"node_modules/@aws-sdk/credential-provider-login": {
|
|
225
|
-
"version": "3.972.
|
|
226
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.
|
|
227
|
-
"integrity": "sha512-
|
|
225
|
+
"version": "3.972.74",
|
|
226
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.74.tgz",
|
|
227
|
+
"integrity": "sha512-0AQfDcf99TNmqVKv0owHrw/TQs6i4ZE5t9qmz6NvO53bE/sA/tpXhXL9AAcEP1qHc6Zzjd1UMb69+/9zdhvY3g==",
|
|
228
228
|
"license": "Apache-2.0",
|
|
229
229
|
"dependencies": {
|
|
230
|
-
"@aws-sdk/core": "^3.977.
|
|
231
|
-
"@aws-sdk/nested-clients": "^3.997.
|
|
230
|
+
"@aws-sdk/core": "^3.977.6",
|
|
231
|
+
"@aws-sdk/nested-clients": "^3.997.41",
|
|
232
232
|
"@aws-sdk/types": "^3.974.2",
|
|
233
233
|
"@smithy/core": "^3.31.1",
|
|
234
234
|
"@smithy/types": "^4.16.1",
|
|
@@ -239,17 +239,17 @@
|
|
|
239
239
|
}
|
|
240
240
|
},
|
|
241
241
|
"node_modules/@aws-sdk/credential-provider-node": {
|
|
242
|
-
"version": "3.972.
|
|
243
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.
|
|
244
|
-
"integrity": "sha512-
|
|
242
|
+
"version": "3.972.78",
|
|
243
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.78.tgz",
|
|
244
|
+
"integrity": "sha512-OgPAnfvbGAMWac6yvxJ1ihslrvDpPVwR68D2csospdNCCyPvHk9JLzYKwz48SNiS1T2znDwHauywRKRFfpyYng==",
|
|
245
245
|
"license": "Apache-2.0",
|
|
246
246
|
"dependencies": {
|
|
247
|
-
"@aws-sdk/credential-provider-env": "^3.972.
|
|
248
|
-
"@aws-sdk/credential-provider-http": "^3.972.
|
|
249
|
-
"@aws-sdk/credential-provider-ini": "^3.973.
|
|
250
|
-
"@aws-sdk/credential-provider-process": "^3.972.
|
|
251
|
-
"@aws-sdk/credential-provider-sso": "^3.973.
|
|
252
|
-
"@aws-sdk/credential-provider-web-identity": "^3.972.
|
|
247
|
+
"@aws-sdk/credential-provider-env": "^3.972.67",
|
|
248
|
+
"@aws-sdk/credential-provider-http": "^3.972.69",
|
|
249
|
+
"@aws-sdk/credential-provider-ini": "^3.973.12",
|
|
250
|
+
"@aws-sdk/credential-provider-process": "^3.972.67",
|
|
251
|
+
"@aws-sdk/credential-provider-sso": "^3.973.11",
|
|
252
|
+
"@aws-sdk/credential-provider-web-identity": "^3.972.73",
|
|
253
253
|
"@aws-sdk/types": "^3.974.2",
|
|
254
254
|
"@smithy/core": "^3.31.1",
|
|
255
255
|
"@smithy/credential-provider-imds": "^4.4.16",
|
|
@@ -261,12 +261,12 @@
|
|
|
261
261
|
}
|
|
262
262
|
},
|
|
263
263
|
"node_modules/@aws-sdk/credential-provider-process": {
|
|
264
|
-
"version": "3.972.
|
|
265
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.
|
|
266
|
-
"integrity": "sha512-
|
|
264
|
+
"version": "3.972.67",
|
|
265
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.67.tgz",
|
|
266
|
+
"integrity": "sha512-IlUEejorGTWKb4/Dm7K5Yw4QxUmXLThLhrvBmzVBqZFTbW72cv9LTcITmo1dsnYriALE4h68mOq4LB99x6sQ7Q==",
|
|
267
267
|
"license": "Apache-2.0",
|
|
268
268
|
"dependencies": {
|
|
269
|
-
"@aws-sdk/core": "^3.977.
|
|
269
|
+
"@aws-sdk/core": "^3.977.6",
|
|
270
270
|
"@aws-sdk/types": "^3.974.2",
|
|
271
271
|
"@smithy/core": "^3.31.1",
|
|
272
272
|
"@smithy/types": "^4.16.1",
|
|
@@ -277,14 +277,14 @@
|
|
|
277
277
|
}
|
|
278
278
|
},
|
|
279
279
|
"node_modules/@aws-sdk/credential-provider-sso": {
|
|
280
|
-
"version": "3.973.
|
|
281
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.973.
|
|
282
|
-
"integrity": "sha512-
|
|
280
|
+
"version": "3.973.11",
|
|
281
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.973.11.tgz",
|
|
282
|
+
"integrity": "sha512-gAQBkBZxUB84d71+pPcI9L+jh2ujhuAVxc/4FgGiWFDjkPBlMKxzd5XDtkSXTFX8Ro7ansnT88+XadasxMeCRw==",
|
|
283
283
|
"license": "Apache-2.0",
|
|
284
284
|
"dependencies": {
|
|
285
|
-
"@aws-sdk/core": "^3.977.
|
|
286
|
-
"@aws-sdk/nested-clients": "^3.997.
|
|
287
|
-
"@aws-sdk/token-providers": "3.
|
|
285
|
+
"@aws-sdk/core": "^3.977.6",
|
|
286
|
+
"@aws-sdk/nested-clients": "^3.997.41",
|
|
287
|
+
"@aws-sdk/token-providers": "3.1103.0",
|
|
288
288
|
"@aws-sdk/types": "^3.974.2",
|
|
289
289
|
"@smithy/core": "^3.31.1",
|
|
290
290
|
"@smithy/types": "^4.16.1",
|
|
@@ -295,13 +295,13 @@
|
|
|
295
295
|
}
|
|
296
296
|
},
|
|
297
297
|
"node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers": {
|
|
298
|
-
"version": "3.
|
|
299
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.
|
|
300
|
-
"integrity": "sha512-
|
|
298
|
+
"version": "3.1103.0",
|
|
299
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1103.0.tgz",
|
|
300
|
+
"integrity": "sha512-N4wy26MNn31ItGVHYHPrEuCIFY4MBBjC+C5v1lJKqIUSA7OZBdhleCY53zCCrXn27hsk7YNOaTuhQu807S4AfQ==",
|
|
301
301
|
"license": "Apache-2.0",
|
|
302
302
|
"dependencies": {
|
|
303
|
-
"@aws-sdk/core": "^3.977.
|
|
304
|
-
"@aws-sdk/nested-clients": "^3.997.
|
|
303
|
+
"@aws-sdk/core": "^3.977.6",
|
|
304
|
+
"@aws-sdk/nested-clients": "^3.997.41",
|
|
305
305
|
"@aws-sdk/types": "^3.974.2",
|
|
306
306
|
"@smithy/core": "^3.31.1",
|
|
307
307
|
"@smithy/types": "^4.16.1",
|
|
@@ -312,13 +312,13 @@
|
|
|
312
312
|
}
|
|
313
313
|
},
|
|
314
314
|
"node_modules/@aws-sdk/credential-provider-web-identity": {
|
|
315
|
-
"version": "3.972.
|
|
316
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.
|
|
317
|
-
"integrity": "sha512-
|
|
315
|
+
"version": "3.972.73",
|
|
316
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.73.tgz",
|
|
317
|
+
"integrity": "sha512-SnlEmQa6SjOgs6iOPLUQl1Eyq4AKiAdPQlkOhFhqNfDtDCwibMGvL6QlkSmf3o6vAUSImzdPCxowT5dfQUZP1A==",
|
|
318
318
|
"license": "Apache-2.0",
|
|
319
319
|
"dependencies": {
|
|
320
|
-
"@aws-sdk/core": "^3.977.
|
|
321
|
-
"@aws-sdk/nested-clients": "^3.997.
|
|
320
|
+
"@aws-sdk/core": "^3.977.6",
|
|
321
|
+
"@aws-sdk/nested-clients": "^3.997.41",
|
|
322
322
|
"@aws-sdk/types": "^3.974.2",
|
|
323
323
|
"@smithy/core": "^3.31.1",
|
|
324
324
|
"@smithy/types": "^4.16.1",
|
|
@@ -359,12 +359,12 @@
|
|
|
359
359
|
}
|
|
360
360
|
},
|
|
361
361
|
"node_modules/@aws-sdk/middleware-websocket": {
|
|
362
|
-
"version": "3.972.
|
|
363
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.
|
|
364
|
-
"integrity": "sha512-
|
|
362
|
+
"version": "3.972.49",
|
|
363
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.49.tgz",
|
|
364
|
+
"integrity": "sha512-wGYJvu1/stdWuzGcNyh44u8aY7ArU8XFrMesBlzIYn70HWVCRBNEngQexDuPIMu0NEgsKGKmTc0uvnS/bF7KWw==",
|
|
365
365
|
"license": "Apache-2.0",
|
|
366
366
|
"dependencies": {
|
|
367
|
-
"@aws-sdk/core": "^3.977.
|
|
367
|
+
"@aws-sdk/core": "^3.977.6",
|
|
368
368
|
"@aws-sdk/types": "^3.974.2",
|
|
369
369
|
"@smithy/core": "^3.31.1",
|
|
370
370
|
"@smithy/fetch-http-handler": "^5.6.13",
|
|
@@ -377,12 +377,12 @@
|
|
|
377
377
|
}
|
|
378
378
|
},
|
|
379
379
|
"node_modules/@aws-sdk/nested-clients": {
|
|
380
|
-
"version": "3.997.
|
|
381
|
-
"resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.
|
|
382
|
-
"integrity": "sha512-
|
|
380
|
+
"version": "3.997.41",
|
|
381
|
+
"resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.41.tgz",
|
|
382
|
+
"integrity": "sha512-RDHqPGQWlF6tatA/Tp3rg6oIwtgN9IVderxE+9av2Y93Dfyu+mO1hZ5Bu2jpfZg2rwdNbsssnwM+sLafIczMlQ==",
|
|
383
383
|
"license": "Apache-2.0",
|
|
384
384
|
"dependencies": {
|
|
385
|
-
"@aws-sdk/core": "^3.977.
|
|
385
|
+
"@aws-sdk/core": "^3.977.6",
|
|
386
386
|
"@aws-sdk/signature-v4-multi-region": "^3.996.43",
|
|
387
387
|
"@aws-sdk/types": "^3.974.2",
|
|
388
388
|
"@smithy/core": "^3.31.1",
|
|
@@ -498,12 +498,13 @@
|
|
|
498
498
|
}
|
|
499
499
|
},
|
|
500
500
|
"node_modules/@earendil-works/pi-agent-core": {
|
|
501
|
-
"version": "0.
|
|
502
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.
|
|
503
|
-
"integrity": "sha512-
|
|
501
|
+
"version": "0.84.1",
|
|
502
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.84.1.tgz",
|
|
503
|
+
"integrity": "sha512-evyzXYWCLQGmcaBYHlmSku02r8qoN4SGI60GZABo6iV+H+nqX+P9ud8fEZ4GmRq9mUSREvvfX+w9dA9ThF9C6w==",
|
|
504
504
|
"license": "MIT",
|
|
505
505
|
"dependencies": {
|
|
506
|
-
"@earendil-works/pi-ai": "^0.
|
|
506
|
+
"@earendil-works/pi-ai": "^0.84.1",
|
|
507
|
+
"@earendil-works/pi-telemetry": "^0.84.1",
|
|
507
508
|
"diff": "8.0.4",
|
|
508
509
|
"ignore": "7.0.5",
|
|
509
510
|
"typebox": "1.3.7",
|
|
@@ -514,13 +515,14 @@
|
|
|
514
515
|
}
|
|
515
516
|
},
|
|
516
517
|
"node_modules/@earendil-works/pi-ai": {
|
|
517
|
-
"version": "0.
|
|
518
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.
|
|
519
|
-
"integrity": "sha512-
|
|
518
|
+
"version": "0.84.1",
|
|
519
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.84.1.tgz",
|
|
520
|
+
"integrity": "sha512-wMsAdJMxuNri08vLqTyYVI201DQQezGhPSTkzYsHdw5dYX3rCNwEmSvpaAwhi7ELKI/2tE/CEgSWg/6iRxSgdQ==",
|
|
520
521
|
"license": "MIT",
|
|
521
522
|
"dependencies": {
|
|
522
523
|
"@anthropic-ai/sdk": "0.91.1",
|
|
523
524
|
"@aws-sdk/client-bedrock-runtime": "3.1048.0",
|
|
525
|
+
"@earendil-works/pi-telemetry": "^0.84.1",
|
|
524
526
|
"@google/genai": "1.52.0",
|
|
525
527
|
"@mistralai/mistralai": "2.2.6",
|
|
526
528
|
"@opentelemetry/api": "1.9.0",
|
|
@@ -539,20 +541,23 @@
|
|
|
539
541
|
}
|
|
540
542
|
},
|
|
541
543
|
"node_modules/@earendil-works/pi-coding-agent": {
|
|
542
|
-
"version": "0.
|
|
543
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.
|
|
544
|
-
"integrity": "sha512-
|
|
544
|
+
"version": "0.84.1",
|
|
545
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.84.1.tgz",
|
|
546
|
+
"integrity": "sha512-ncAqFrG+iybuPGOhMiZoEHkEzTpJgz3guYD32pD+M7ucc0WeHmauP6wa7qwP8V/KWvsZDVNa5XGsdZ7fkC7w7A==",
|
|
545
547
|
"hasShrinkwrap": true,
|
|
546
548
|
"license": "MIT",
|
|
547
549
|
"dependencies": {
|
|
548
|
-
"@earendil-works/pi-agent-core": "^0.
|
|
549
|
-
"@earendil-works/pi-ai": "^0.
|
|
550
|
-
"@earendil-works/pi-
|
|
550
|
+
"@earendil-works/pi-agent-core": "^0.84.1",
|
|
551
|
+
"@earendil-works/pi-ai": "^0.84.1",
|
|
552
|
+
"@earendil-works/pi-client": "^0.84.1",
|
|
553
|
+
"@earendil-works/pi-protocol": "^0.84.1",
|
|
554
|
+
"@earendil-works/pi-tui": "^0.84.1",
|
|
551
555
|
"@silvia-odwyer/photon-node": "0.3.4",
|
|
552
556
|
"chalk": "5.6.2",
|
|
553
557
|
"cross-spawn": "7.0.6",
|
|
554
558
|
"diff": "8.0.4",
|
|
555
559
|
"glob": "13.0.6",
|
|
560
|
+
"grok-mermaid": "0.2.2",
|
|
556
561
|
"highlight.js": "10.7.3",
|
|
557
562
|
"hosted-git-info": "9.0.3",
|
|
558
563
|
"ignore": "7.0.5",
|
|
@@ -561,7 +566,7 @@
|
|
|
561
566
|
"proper-lockfile": "4.1.2",
|
|
562
567
|
"semver": "7.8.0",
|
|
563
568
|
"typebox": "1.3.7",
|
|
564
|
-
"undici": "8.
|
|
569
|
+
"undici": "8.9.0",
|
|
565
570
|
"yaml": "2.9.0"
|
|
566
571
|
},
|
|
567
572
|
"bin": {
|
|
@@ -1010,11 +1015,12 @@
|
|
|
1010
1015
|
}
|
|
1011
1016
|
},
|
|
1012
1017
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-agent-core": {
|
|
1013
|
-
"version": "0.
|
|
1014
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.
|
|
1018
|
+
"version": "0.84.1",
|
|
1019
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.84.1.tgz",
|
|
1015
1020
|
"license": "MIT",
|
|
1016
1021
|
"dependencies": {
|
|
1017
|
-
"@earendil-works/pi-ai": "^0.
|
|
1022
|
+
"@earendil-works/pi-ai": "^0.84.1",
|
|
1023
|
+
"@earendil-works/pi-telemetry": "^0.84.1",
|
|
1018
1024
|
"diff": "8.0.4",
|
|
1019
1025
|
"ignore": "7.0.5",
|
|
1020
1026
|
"typebox": "1.3.7",
|
|
@@ -1025,12 +1031,13 @@
|
|
|
1025
1031
|
}
|
|
1026
1032
|
},
|
|
1027
1033
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-ai": {
|
|
1028
|
-
"version": "0.
|
|
1029
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.
|
|
1034
|
+
"version": "0.84.1",
|
|
1035
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.84.1.tgz",
|
|
1030
1036
|
"license": "MIT",
|
|
1031
1037
|
"dependencies": {
|
|
1032
1038
|
"@anthropic-ai/sdk": "0.91.1",
|
|
1033
1039
|
"@aws-sdk/client-bedrock-runtime": "3.1048.0",
|
|
1040
|
+
"@earendil-works/pi-telemetry": "^0.84.1",
|
|
1034
1041
|
"@google/genai": "1.52.0",
|
|
1035
1042
|
"@mistralai/mistralai": "2.2.6",
|
|
1036
1043
|
"@opentelemetry/api": "1.9.0",
|
|
@@ -1048,9 +1055,39 @@
|
|
|
1048
1055
|
"node": ">=22.19.0"
|
|
1049
1056
|
}
|
|
1050
1057
|
},
|
|
1058
|
+
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-client": {
|
|
1059
|
+
"version": "0.84.1",
|
|
1060
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-client/-/pi-client-0.84.1.tgz",
|
|
1061
|
+
"license": "MIT",
|
|
1062
|
+
"dependencies": {
|
|
1063
|
+
"@earendil-works/pi-protocol": "^0.84.1"
|
|
1064
|
+
},
|
|
1065
|
+
"engines": {
|
|
1066
|
+
"node": ">=22.19.0"
|
|
1067
|
+
}
|
|
1068
|
+
},
|
|
1069
|
+
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-protocol": {
|
|
1070
|
+
"version": "0.84.1",
|
|
1071
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-protocol/-/pi-protocol-0.84.1.tgz",
|
|
1072
|
+
"license": "MIT",
|
|
1073
|
+
"dependencies": {
|
|
1074
|
+
"typebox": "1.3.7"
|
|
1075
|
+
},
|
|
1076
|
+
"engines": {
|
|
1077
|
+
"node": ">=22.19.0"
|
|
1078
|
+
}
|
|
1079
|
+
},
|
|
1080
|
+
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-telemetry": {
|
|
1081
|
+
"version": "0.84.1",
|
|
1082
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.84.1.tgz",
|
|
1083
|
+
"license": "MIT",
|
|
1084
|
+
"engines": {
|
|
1085
|
+
"node": ">=22.19.0"
|
|
1086
|
+
}
|
|
1087
|
+
},
|
|
1051
1088
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-tui": {
|
|
1052
|
-
"version": "0.
|
|
1053
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.
|
|
1089
|
+
"version": "0.84.1",
|
|
1090
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.84.1.tgz",
|
|
1054
1091
|
"license": "MIT",
|
|
1055
1092
|
"dependencies": {
|
|
1056
1093
|
"get-east-asian-width": "1.6.0",
|
|
@@ -1559,15 +1596,15 @@
|
|
|
1559
1596
|
"license": "MIT"
|
|
1560
1597
|
},
|
|
1561
1598
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/brace-expansion": {
|
|
1562
|
-
"version": "5.0.
|
|
1563
|
-
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.
|
|
1564
|
-
"integrity": "sha512-
|
|
1599
|
+
"version": "5.0.9",
|
|
1600
|
+
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
|
|
1601
|
+
"integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
|
|
1565
1602
|
"license": "MIT",
|
|
1566
1603
|
"dependencies": {
|
|
1567
1604
|
"balanced-match": "^4.0.2"
|
|
1568
1605
|
},
|
|
1569
1606
|
"engines": {
|
|
1570
|
-
"node": "
|
|
1607
|
+
"node": "20 || >=22"
|
|
1571
1608
|
}
|
|
1572
1609
|
},
|
|
1573
1610
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/buffer-equal-constant-time": {
|
|
@@ -1813,6 +1850,15 @@
|
|
|
1813
1850
|
"integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
|
|
1814
1851
|
"license": "ISC"
|
|
1815
1852
|
},
|
|
1853
|
+
"node_modules/@earendil-works/pi-coding-agent/node_modules/grok-mermaid": {
|
|
1854
|
+
"version": "0.2.2",
|
|
1855
|
+
"resolved": "https://registry.npmjs.org/grok-mermaid/-/grok-mermaid-0.2.2.tgz",
|
|
1856
|
+
"integrity": "sha512-XcJEP5dDC8liHBh52mlLjU18fNvu1ckFsu0QpIG3+APZ270fsj9wxpiA6cOURmbUEuoMVgjbC2+UYgTdCqqgzA==",
|
|
1857
|
+
"license": "Apache-2.0",
|
|
1858
|
+
"engines": {
|
|
1859
|
+
"node": ">=18"
|
|
1860
|
+
}
|
|
1861
|
+
},
|
|
1816
1862
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/highlight.js": {
|
|
1817
1863
|
"version": "10.7.3",
|
|
1818
1864
|
"resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz",
|
|
@@ -2250,9 +2296,9 @@
|
|
|
2250
2296
|
"license": "MIT"
|
|
2251
2297
|
},
|
|
2252
2298
|
"node_modules/@earendil-works/pi-coding-agent/node_modules/undici": {
|
|
2253
|
-
"version": "8.
|
|
2254
|
-
"resolved": "https://registry.npmjs.org/undici/-/undici-8.
|
|
2255
|
-
"integrity": "sha512-
|
|
2299
|
+
"version": "8.9.0",
|
|
2300
|
+
"resolved": "https://registry.npmjs.org/undici/-/undici-8.9.0.tgz",
|
|
2301
|
+
"integrity": "sha512-aWZpUj7XoGonMClx4gdDRfgBjqeA+F473aDmROQQbM9n6PRfK/u1q/a0X4wMTgcHfT8H6fpbt98PFuDUwFg2YA==",
|
|
2256
2302
|
"license": "MIT",
|
|
2257
2303
|
"engines": {
|
|
2258
2304
|
"node": ">=22.19.0"
|
|
@@ -2357,10 +2403,19 @@
|
|
|
2357
2403
|
"zod": "^3.25.28 || ^4"
|
|
2358
2404
|
}
|
|
2359
2405
|
},
|
|
2406
|
+
"node_modules/@earendil-works/pi-telemetry": {
|
|
2407
|
+
"version": "0.84.1",
|
|
2408
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.84.1.tgz",
|
|
2409
|
+
"integrity": "sha512-180/xGJtsq7IoR3p9EKWjRd0e9M4DkxInhlo9xyD7prDC7Qrhqq+nhvwrW0lFjPfXcEI2FSHmGCSyvSJE9GsaQ==",
|
|
2410
|
+
"license": "MIT",
|
|
2411
|
+
"engines": {
|
|
2412
|
+
"node": ">=22.19.0"
|
|
2413
|
+
}
|
|
2414
|
+
},
|
|
2360
2415
|
"node_modules/@earendil-works/pi-tui": {
|
|
2361
|
-
"version": "0.
|
|
2362
|
-
"resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.
|
|
2363
|
-
"integrity": "sha512-
|
|
2416
|
+
"version": "0.84.1",
|
|
2417
|
+
"resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.84.1.tgz",
|
|
2418
|
+
"integrity": "sha512-udeXFbgEhJ6JiB0uguwNVNkDy2FENfmtQwPcY+/iJ8GWeq18wkal1tKqa5YyeH0IqtX1vG0cGh8zfSYzyzVuLA==",
|
|
2364
2419
|
"license": "MIT",
|
|
2365
2420
|
"dependencies": {
|
|
2366
2421
|
"get-east-asian-width": "1.6.0",
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import type { Deck, InteractionResponse } from '../../core/human/types.js';
|
|
2
|
-
import type { Key } from './tui/keys.js';
|
|
3
|
-
export interface DeckAdapterOptions {
|
|
4
|
-
dir: string;
|
|
5
|
-
deck: Deck;
|
|
6
|
-
cols: number;
|
|
7
|
-
rows: number;
|
|
8
|
-
onProgress?: (responses: InteractionResponse[]) => void;
|
|
9
|
-
onComplete: (responses: InteractionResponse[]) => void;
|
|
10
|
-
onBack: () => void;
|
|
11
|
-
onDirty: () => void;
|
|
12
|
-
onEditorRequest?: () => void;
|
|
13
|
-
}
|
|
14
|
-
/** Embeds the single deck renderer in a controller-owned rectangle. */
|
|
15
|
-
export declare class DeckAdapter {
|
|
16
|
-
private readonly opts;
|
|
17
|
-
private panel;
|
|
18
|
-
private responses;
|
|
19
|
-
constructor(opts: DeckAdapterOptions);
|
|
20
|
-
render(): string[];
|
|
21
|
-
resize(cols: number, rows: number): string[];
|
|
22
|
-
inputBuffer(): string | undefined;
|
|
23
|
-
setInputBuffer(text: string): void;
|
|
24
|
-
canAcceptHostKeys(): boolean;
|
|
25
|
-
handleKey(input: string, key: Key): void;
|
|
26
|
-
/** Fresh descriptor reads preserve mounted answers for interaction ids still present. */
|
|
27
|
-
reload(deck: Deck): void;
|
|
28
|
-
close(): void;
|
|
29
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { progressPath } from '../../core/human/convention.js';
|
|
2
|
-
import { readJsonOrNull } from '../../core/fs-utils.js';
|
|
3
|
-
import { mountPanel } from './tui/panel.js';
|
|
4
|
-
/** Embeds the single deck renderer in a controller-owned rectangle. */
|
|
5
|
-
export class DeckAdapter {
|
|
6
|
-
opts;
|
|
7
|
-
panel;
|
|
8
|
-
responses = [];
|
|
9
|
-
constructor(opts) {
|
|
10
|
-
this.opts = opts;
|
|
11
|
-
this.responses = initialResponses(opts.deck, opts.dir);
|
|
12
|
-
this.panel = mountPanel({
|
|
13
|
-
deck: opts.deck,
|
|
14
|
-
progressPath: progressPath(opts.dir),
|
|
15
|
-
cols: opts.cols,
|
|
16
|
-
rows: opts.rows,
|
|
17
|
-
onProgress: (responses) => { this.responses = responses; opts.onProgress?.(responses); },
|
|
18
|
-
onComplete: opts.onComplete,
|
|
19
|
-
// A partial-deck exit is a valid completion for ordinary asks, but a
|
|
20
|
-
// notification is resolved only by its explicit acknowledgement.
|
|
21
|
-
onExit: () => { if (notificationsAcknowledged(opts.deck, this.responses))
|
|
22
|
-
opts.onComplete(this.responses); },
|
|
23
|
-
onDirty: opts.onDirty,
|
|
24
|
-
onEditorRequest: opts.onEditorRequest,
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
render() { return this.panel.render(); }
|
|
28
|
-
resize(cols, rows) { return this.panel.handleResize(cols, rows); }
|
|
29
|
-
inputBuffer() { return this.panel.getInputBuffer(); }
|
|
30
|
-
setInputBuffer(text) { this.panel.setInputBuffer(text); }
|
|
31
|
-
canAcceptHostKeys() { return this.panel.canAcceptHostKeys(); }
|
|
32
|
-
handleKey(input, key) {
|
|
33
|
-
if (key.escape && this.panel.atDeckTop()) {
|
|
34
|
-
this.opts.onBack();
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
this.panel.handleKey(input, key);
|
|
38
|
-
}
|
|
39
|
-
/** Fresh descriptor reads preserve mounted answers for interaction ids still present. */
|
|
40
|
-
reload(deck) {
|
|
41
|
-
this.panel.loadDeck(deck, { progressPath: progressPath(this.opts.dir) });
|
|
42
|
-
this.opts.onDirty();
|
|
43
|
-
}
|
|
44
|
-
close() { this.panel.unmount(); }
|
|
45
|
-
}
|
|
46
|
-
function notificationsAcknowledged(deck, responses) {
|
|
47
|
-
const byId = new Map(responses.map((response) => [response.id, response]));
|
|
48
|
-
return deck.interactions.filter((interaction) => interaction.kind === 'notify').every((interaction) => {
|
|
49
|
-
const response = byId.get(interaction.id);
|
|
50
|
-
return response !== undefined && (response.selectedOptionId !== undefined || (response.selectedOptionIds?.length ?? 0) > 0 || (response.freetext?.trim() ?? '') !== '');
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
function initialResponses(deck, dir) {
|
|
54
|
-
const saved = readJsonOrNull(progressPath(dir))?.responses;
|
|
55
|
-
if (Array.isArray(saved))
|
|
56
|
-
return saved;
|
|
57
|
-
return deck.interactions.flatMap((interaction) => {
|
|
58
|
-
const answer = interaction.preAnswered;
|
|
59
|
-
if (answer === undefined)
|
|
60
|
-
return [];
|
|
61
|
-
return [{ id: interaction.id, ...(answer.selectedOptionId === undefined ? {} : { selectedOptionId: answer.selectedOptionId }), ...(answer.selectedOptionIds === undefined ? {} : { selectedOptionIds: [...answer.selectedOptionIds] }), ...(answer.freetext === undefined ? {} : { freetext: answer.freetext }) }];
|
|
62
|
-
});
|
|
63
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Deck } from './types.js';
|
|
2
|
-
export interface NotifyDeckOpts {
|
|
3
|
-
/** One plain-English sentence stating the notification's status and stakes. */
|
|
4
|
-
subtitle: string;
|
|
5
|
-
body?: string;
|
|
6
|
-
}
|
|
7
|
-
/** Build a validated single-option notify deck. id: 'notify', kind: 'notify'. */
|
|
8
|
-
export declare function notifyDeck(title: string, opts: NotifyDeckOpts): Deck;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { validateDeck } from './deck-schema.js';
|
|
2
|
-
/** Build a validated single-option notify deck. id: 'notify', kind: 'notify'. */
|
|
3
|
-
export function notifyDeck(title, opts) {
|
|
4
|
-
return validateDeck({
|
|
5
|
-
title,
|
|
6
|
-
interactions: [{
|
|
7
|
-
id: 'notify',
|
|
8
|
-
title,
|
|
9
|
-
subtitle: opts.subtitle,
|
|
10
|
-
...(opts.body !== undefined ? { body: opts.body } : {}),
|
|
11
|
-
kind: 'notify',
|
|
12
|
-
options: [{ id: 'ok', label: 'OK' }],
|
|
13
|
-
}],
|
|
14
|
-
});
|
|
15
|
-
}
|