yaml-flow 8.1.1 → 8.2.1
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/asset-integrity.json +3 -3
- package/browser/board-livecards-client.js +1 -1
- package/browser/board-livecards-localstorage.js +4 -6
- package/cli/{board-live-cards-lib-tjYsPt5U.d.ts → board-live-cards-lib-Iq_XAC09.d.ts} +1 -1
- package/cli/browser-api/board-live-cards-browser-adapter.d.ts +4 -3
- package/cli/browser-api/board-live-cards-browser-adapter.js +2 -2
- package/cli/browser-api/card-store-browser-api.d.ts +1 -1
- package/cli/node/artifacts-store-cli.js +8 -8
- package/cli/node/board-live-cards-cli.js +8 -8
- package/cli/node/card-store-cli.js +4 -4
- package/cli/node/fs-board-adapter.d.ts +6 -33
- package/cli/node/fs-board-adapter.js +10 -8
- package/cli/node/step-machine-cli.js +3 -3
- package/cli/{types-D2XnLbBj.d.ts → types--rXGWbSR.d.ts} +77 -5
- package/examples/board/.board-ws/cards/store/_index.json +17 -0
- package/examples/board/.board-ws/cards/store/card-market-prices.json +80 -0
- package/examples/board/.board-ws/cards/store/card-portfolio-value.json +90 -0
- package/examples/board/.board-ws/cards/store/card-portfolio.json +78 -0
- package/examples/board/cards/cardT-market-prices.json +6 -4
- package/examples/board/cards/cardT-portfolio-value.json +10 -38
- package/examples/board/cards/cardT-portfolio.json +9 -4
- package/examples/board/demo-shell-with-server.html +3 -3
- package/examples/board/server/board-server.js +593 -0
- package/examples/board/server/board-worker/source-def-flows/mock-handler/mock-db.js +13 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/.retain/compliance.db +0 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/.retain/optimus.db +0 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/query.cjs +51 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/seed-cpm.cjs +197 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/seed-cpmV2.cjs +128 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/seed-optimus.cjs +352 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/sqlite-config.json +3 -0
- package/examples/board/server/board-worker/source-def-flows/sqlite-handler/sqlite-handler.js +84 -0
- package/examples/board/{source-def-flows/url.flow.json → server/board-worker/source-def-flows/sqlite.flow.json} +7 -7
- package/examples/board/{source-def-handlers → server/board-worker/source-def-flows/url-handler}/http-source-handler.js +29 -21
- package/examples/board/server/board-worker/source-def-flows/url.flow.json +73 -0
- package/examples/board/{source_def_flows.json → server/board-worker/source_def_flows.json} +61 -115
- package/examples/board/server/board-worker/task-executor.js +475 -0
- package/examples/board/server/chat-flow/chat-clear-processing.js +41 -0
- package/examples/board/server/chat-flow/chat-open-turn.js +144 -0
- package/examples/board/server/chat-flow/chat-write-assistant.js +44 -0
- package/examples/board/server/chat-flow/copilot-chat/assistant.js +253 -0
- package/examples/board/server/chat-flow/echo-probe/assistant.js +28 -0
- package/examples/board/server/chat-flow/flow-steps.json +167 -0
- package/examples/board/server-config.json +22 -0
- package/examples/board/test/server-http-test.js +707 -0
- package/examples/board/test/{portfolio-tracker-sse-worker.js → sse-worker.js} +9 -8
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/{artifacts-store-lib-public-DBICnGL6.d.cts → artifacts-store-lib-public-C5UL5tyG.d.cts} +3 -31
- package/lib/{artifacts-store-lib-public-BWC3YuLa.d.ts → artifacts-store-lib-public-GD4H-fFp.d.ts} +3 -31
- package/lib/artifacts-store-public.d.cts +3 -3
- package/lib/artifacts-store-public.d.ts +3 -3
- package/lib/board-live-cards-node.cjs +10 -8
- package/lib/board-live-cards-node.d.cts +9 -8
- package/lib/board-live-cards-node.d.ts +9 -8
- package/lib/board-live-cards-node.js +10 -8
- package/lib/{board-live-cards-public-BF9FP0mL.d.cts → board-live-cards-public-BLXbcBNk.d.cts} +2 -2
- package/lib/{board-live-cards-public-dJAl5IL-.d.ts → board-live-cards-public-BZaNb2mi.d.ts} +2 -2
- package/lib/board-live-cards-public.cjs +2 -2
- package/lib/board-live-cards-public.d.cts +2 -2
- package/lib/board-live-cards-public.d.ts +2 -2
- package/lib/board-live-cards-public.js +2 -2
- package/lib/board-live-cards-server-runtime.cjs +4 -6
- package/lib/board-live-cards-server-runtime.d.cts +3 -3
- package/lib/board-live-cards-server-runtime.d.ts +3 -3
- package/lib/board-live-cards-server-runtime.js +4 -6
- package/lib/board-livegraph-runtime/index.cjs +2 -2
- package/lib/board-livegraph-runtime/index.js +2 -2
- package/lib/card-store-public.d.cts +2 -2
- package/lib/card-store-public.d.ts +2 -2
- package/lib/execution-refs.cjs +1 -1
- package/lib/execution-refs.js +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.cts +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/server-runtime/index.cjs +4 -6
- package/lib/server-runtime/index.d.cts +4 -4
- package/lib/server-runtime/index.d.ts +4 -4
- package/lib/server-runtime/index.js +4 -6
- package/lib/step-machine-public/index.cjs +3 -3
- package/lib/step-machine-public/index.d.cts +27 -10
- package/lib/step-machine-public/index.d.ts +27 -10
- package/lib/step-machine-public/index.js +3 -3
- package/lib/{storage-interface-BhAON-gW.d.ts → storage-interface-B6ecOulj.d.cts} +25 -3
- package/lib/{storage-interface-BhAON-gW.d.cts → storage-interface-B6ecOulj.d.ts} +25 -3
- package/lib/stores/index.d.cts +1 -1
- package/lib/stores/index.d.ts +1 -1
- package/lib/stores/kv.d.cts +1 -1
- package/lib/stores/kv.d.ts +1 -1
- package/lib/{types-CXBzvC0s.d.cts → types-Bztd1KoK.d.cts} +75 -3
- package/lib/{types-D48hpnTR.d.ts → types-D-xVWPdY.d.ts} +75 -3
- package/package.json +1 -1
- package/examples/board/demo-chat-handler.js +0 -169
- package/examples/board/demo-server-config.json +0 -10
- package/examples/board/demo-server.js +0 -580
- package/examples/board/demo-task-executor.js +0 -721
- package/examples/board/gandalf-cards/card-source-kinds.json +0 -36
- package/examples/board/gandalf-cards/cards/_index.json +0 -7
- package/examples/board/gandalf-cards/cards/card-source-kinds.json +0 -64
- package/examples/board/scripts/copilot_wrapper.bat +0 -157
- package/examples/board/scripts/copilot_wrapper_helper.ps1 +0 -190
- package/examples/board/scripts/workiq_wrapper.mjs +0 -66
- package/examples/board/source-def-flows/copilot.flow.json +0 -33
- package/examples/board/source-def-flows/url-list.flow.json +0 -33
- package/examples/board/source-def-flows/workiq.flow.json +0 -34
- package/examples/board/source-def-handlers/copilot-source-handler.js +0 -141
- package/examples/board/test/demo-http-test.js +0 -317
- /package/examples/board/{source-def-flows → server/board-worker/source-def-flows}/mock.flow.json +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import*as d from'fs';import {createRequire}from'module';import'ajv-formats';import*as g from'path';import {createHash,randomUUID}from'crypto';import'proper-lockfile';import*as O from'os';import'net';import'url';import'child_process';var S="b64:";function q(r){let n=r.replace(/-/g,"+").replace(/_/g,"/")+"=".repeat((4-r.length%4)%4),e=globalThis.Buffer;if(e)return e.from(n,"base64").toString("utf8");if(typeof atob=="function"){let o=atob(n),t=new Uint8Array(o.length);for(let s=0;s<o.length;s+=1)t[s]=o.charCodeAt(s);return new TextDecoder().decode(t)}throw new Error("No base64 decoder available in this runtime")}function R(r){if(!r.startsWith(S))throw new Error(`Invalid ref format (expected ${S}<base64url(json)>): ${r}`);let n;try{n=JSON.parse(q(r.slice(S.length)));}catch{throw new Error(`Invalid ref format (malformed base64url/json): ${r}`)}if(!n||typeof n!="object")throw new Error(`Invalid ref format (expected object payload): ${r}`);let e=n;if(typeof e.kind!="string"||typeof e.value!="string")throw new Error(`Invalid ref format (payload must contain string kind/value): ${r}`);return {kind:e.kind,value:e.value}}var D=createRequire(import.meta.url);D("./jsonata-sync.cjs");var K=createRequire(import.meta.url);K("./jsonata-sync.cjs");function E(r,n){function e(){return r.readIndex()??{}}function o(t,s,a){let i=String(s||"").split(".").filter(Boolean);if(i.length===0)return a&&typeof a=="object"&&!Array.isArray(a)?a:{value:a};let u={...t},c=u;for(let l=0;l<i.length-1;l++){let f=i[l],p=c[f],b=p&&typeof p=="object"&&!Array.isArray(p)?{...p}:{};c[f]=b,c=b;}return c[i[i.length-1]]=a,u}return {readCard(t){let s=e()[t];return !s||!r.cardExists(s.key)?null:r.readCard(s.key)},readCardKey(t){return e()[t]?.key??null},readAllCards(){let t=[];for(let[s,a]of Object.entries(e())){if(!r.cardExists(a.key))continue;let i=r.readCard(a.key);i?t.push(i):n?.(`[card-store] could not read card "${s}" at key "${a.key}"`);}return t},readChecksumIndex(){let t={};for(let[s,a]of Object.entries(e()))t[s]=a.checksum;return t},changedSince(t){let s=e(),a=[];for(let[i,u]of Object.entries(s))t[i]!==u.checksum&&a.push(i);for(let i of Object.keys(t))s[i]||a.push(i);return a},validateUpsert(t,s){let a=e(),i=a[t],u=Object.entries(a).find(([,c])=>c.key===s);return i&&i.key!==s?{ok:false,error:`Card id "${t}" is already mapped to key "${i.key}", cannot remap to "${s}"`}:u&&u[0]!==t?{ok:false,error:`Key "${s}" is already mapped to card id "${u[0]}", cannot remap to "${t}"`}:{ok:true}},writeCard(t,s,a){let i=e(),u=a??i[t]?.key??r.defaultCardKey(t),c=r.writeCard(u,s);i[t]={key:u,checksum:c,updatedAt:new Date().toISOString()},r.writeIndex(i);},patchCard(t,s,a){let i=e(),u=i[t];if(!u||!r.cardExists(u.key))throw new Error(`card "${t}" not found`);let c=r.readCard(u.key);if(!c||typeof c!="object"||Array.isArray(c))throw new Error(`card "${t}" is not patchable`);let l=o(c,s,a),f=r.writeCard(u.key,l);i[t]={key:u.key,checksum:f,updatedAt:new Date().toISOString()},r.writeIndex(i);},removeCard(t){let s=e();s[t]&&(delete s[t],r.writeIndex(s));},readIndex(){return e()}}}function A(r){function n(t){return {status:"success",data:t}}function e(t){return {status:"fail",error:t}}function o(t){return {status:"error",error:t instanceof Error?t.message:String(t)}}return {get(t){try{let s=t.params?.id;if(s){let a=r.readCard(s);return a?n({cards:[a]}):e(`card "${s}" not found`)}return n({cards:r.readAllCards()})}catch(s){return o(s)}},set(t){try{let s=t.body;if(s==null)return e("set requires a body (card object or array of cards)");let a=Array.isArray(s)?s:[s];for(let i of a){if(typeof i.id!="string")return e("each card must have a string `id` field");r.writeCard(i.id,i);}return n({count:a.length})}catch(s){return o(s)}},del(t){try{let s=t.body?.ids??[],a=t.params?.id,i=a?[...s,a]:s;if(i.length===0)return e("del requires body.ids (string[]) or params.id");for(let u of i)r.removeCard(u);return n({count:i.length})}catch(s){return o(s)}},patch(t){try{let s=t.params?.id,a=t.params?.path;if(!s)return e("patch requires params.id");if(!a)return e("patch requires params.path");let i=t.body,u=i&&Object.prototype.hasOwnProperty.call(i,"value")?i.value:t.body;return r.patchCard(s,a,u),n({count:1})}catch(s){return o(s)}}}}function M(r,n){if(process.platform!=="win32"){d.renameSync(r,n);return}let e=[10,20,40,80,160];for(let o=0;o<=e.length;o++)try{d.renameSync(r,n);return}catch(t){let s=t.code;if((s==="EPERM"||s==="EBUSY")&&o<e.length){Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,e[o]);continue}throw t}}function G(r){function n(o){return g.join(r,...o.split("/"))+".json"}function e(o,t,s,a){if(d.existsSync(o))for(let i of d.readdirSync(o,{withFileTypes:true})){let u=t?`${t}/${i.name}`:i.name;if(i.isDirectory()){e(g.join(o,i.name),u,s,a);continue}if(!i.isFile()||!i.name.endsWith(".json"))continue;let c=u.replace(/\.json$/,"");(!s||c.startsWith(s))&&a.push(c);}}return {read(o){let t=n(o);if(!d.existsSync(t))return null;try{return JSON.parse(d.readFileSync(t,"utf-8"))}catch{return null}},write(o,t){let s=n(o),a=`${s}.${process.pid}.${randomUUID()}.tmp`;d.mkdirSync(g.dirname(s),{recursive:true}),d.writeFileSync(a,JSON.stringify(t,null,2),"utf-8"),M(a,s);},delete(o){let t=n(o);try{d.existsSync(t)&&d.unlinkSync(t);}catch{}},listKeys(o){let t=[];return e(r,"",o,t),t.sort()}}}function k(r){if(r==null||typeof r!="object")return JSON.stringify(r);if(Array.isArray(r))return `[${r.map(k).join(",")}]`;let n=r;return `{${Object.keys(n).sort().map(o=>`${JSON.stringify(o)}:${k(n[o])}`).join(",")}}`}function U(r){return createHash("sha256").update(k(r)).digest("hex")}function _(r,n){let e={...r};for(let[o,t]of Object.entries(n))t!==null&&typeof t=="object"&&!Array.isArray(t)&&e[o]!==null&&typeof e[o]=="object"&&!Array.isArray(e[o])?e[o]=_(e[o],t):e[o]=t;return e}function T(r,n,e){if(n.length===0)return r;let[o,...t]=n;if(t.length===0)return {...r,[o]:e};let s=r[o]!==null&&typeof r[o]=="object"&&!Array.isArray(r[o])?r[o]:{};return {...r,[o]:T(s,t,e)}}function H(r){let n=G(r);return {read:e=>n.read(e),get(e,o){let t=n.read(e);if(t===null)return null;let s=t;for(let a of o.split(".").filter(Boolean)){if(s===null||typeof s!="object"||Array.isArray(s))return null;s=s[a]??null;}return s??null},write:(e,o)=>n.write(e,o),delete:e=>n.delete(e),listKeys:e=>n.listKeys(e),shallowMerge(e,o){let t=n.read(e)??{};n.write(e,{...t,...o});},deepMerge(e,o){let t=n.read(e)??{};n.write(e,_(t,o));},patch(e,o,t){let s=n.read(e)??{},a=o.split(".").filter(Boolean);n.write(e,T(s,a,t));}}}function j(r){let n=H(r);return {readIndex(){return n.read("_index")},writeIndex(e){n.write("_index",e);},readCard(e){return n.read(e)},writeCard(e,o){return n.write(e,o),U(o)},cardExists(e){return n.read(e)!==null},defaultCardKey(e){return e}}}function x(...r){return g.resolve(...r)}g.join(O.tmpdir(),".board-live-cards-git-bash-cache.json");function w(r,n,e){let o=r.indexOf(n),t=o!==-1?r[o+1]:void 0;if(!t)throw new Error(`Missing ${n}
|
|
2
|
-
Usage: ${e}`);return t}function h(r,n){let e=r.indexOf(n);return e!==-1?r[e+1]:void 0}function W(r,n){return r.includes(n)}async function I(){let r=[];for await(let n of process.stdin)r.push(Buffer.isBuffer(n)?n:Buffer.from(n));return Buffer.concat(r).toString("utf-8")}var
|
|
3
|
-
`);async function z(r){let n=r[0],e=r.slice(1);if(!n||n==="help"||n==="--help"||n==="-h"){console.error(
|
|
2
|
+
Usage: ${e}`);return t}function h(r,n){let e=r.indexOf(n);return e!==-1?r[e+1]:void 0}function W(r,n){return r.includes(n)}async function I(){let r=[];for await(let n of process.stdin)r.push(Buffer.isBuffer(n)?n:Buffer.from(n));return Buffer.concat(r).toString("utf-8")}var F=["card-store \u2014 JSON/YAML read/write for a board card store",""," card-store get --store-ref <ref> [--id <card-id>] [--yaml]"," Print one card (--id) or all cards."," Default: JSON array. --yaml: YAML multi-doc.",""," card-store set --store-ref <ref> [--ref <jsonfile> | --ref-yaml <yamlfile>] [--yaml]"," Write cards into the store."," --ref <file> JSON file (array or single object)"," --ref-yaml <file> YAML multi-doc file"," --yaml treat stdin as YAML (default stdin format is JSON)"," Each card must contain a string `id` field.",""," card-store del --store-ref <ref> --id <card-id> [--id <card-id> ...]"," Delete one or more cards by ID.",""," card-store patch --store-ref <ref> --id <card-id> --path <dot.path> [--value-json <json>]"," Patch one card field by dot-path assignment."," If --value-json is omitted, stdin is parsed as JSON value."].join(`
|
|
3
|
+
`);async function z(r){let n=r[0],e=r.slice(1);if(!n||n==="help"||n==="--help"||n==="-h"){console.error(F);return}let o=w(e,"--store-ref",`card-store ${n} --store-ref <b64-ref>`),t=R(o),s=A(E(j(t.value),i=>console.error(`[card-store] ${i}`))),a=W(e,"--yaml");if(n==="get"){let i=h(e,"--id"),u=s.get({params:i?{id:i}:{}});u.status!=="success"&&(console.error(`card-store get: ${u.error}`),process.exit(1));let c=u.data.cards;if(c.length===0)return;if(a){let{stringify:l}=await import('yaml');process.stdout.write(c.map(f=>`---
|
|
4
4
|
${l(f)}`).join(""));}else process.stdout.write(JSON.stringify(c,null,2)+`
|
|
5
|
-
`);return}if(n==="set"){let i=h(e,"--ref"),u=h(e,"--ref-yaml"),c;if(u){let{parseAllDocuments:f}=await import('yaml'),p=d.readFileSync(u,"utf-8");c
|
|
5
|
+
`);return}if(n==="set"){let i=h(e,"--ref"),u=h(e,"--ref-yaml"),c;if(u){let{parseAllDocuments:f}=await import('yaml'),p=d.readFileSync(u,"utf-8");c=$(f(p));}else if(i)c=N(d.readFileSync(i,"utf-8"),i);else {let f=await I();if(f.trim()||(console.error("card-store set: no input (provide --ref, --ref-yaml, or pipe to stdin)"),process.exit(1)),a){let{parseAllDocuments:p}=await import('yaml');c=$(p(f));}else c=N(f,"stdin");}let l=s.set({body:c});l.status!=="success"&&(console.error(`card-store set: ${l.error}`),process.exit(1)),console.error(`card-store set: wrote ${l.data.count} card(s)`);return}if(n==="del"||n==="delete"){let i=[];for(let c=0;c<e.length;c++)e[c]==="--id"&&e[c+1]&&i.push(e[++c]);let u=s.del({body:{ids:i}});u.status!=="success"&&(console.error(`card-store del: ${u.error}`),process.exit(1)),console.error(`card-store del: removed ${u.data.count} card(s)`);return}if(n==="patch"){let i=w(e,"--id","card-store patch --store-ref <ref> --id <card-id> --path <dot.path> [--value-json <json>]"),u=w(e,"--path","card-store patch --store-ref <ref> --id <card-id> --path <dot.path> [--value-json <json>]"),c=h(e,"--value-json"),l;try{if(typeof c=="string")l=JSON.parse(c);else {let p=await I();p.trim()||(console.error("card-store patch: provide --value-json or JSON value via stdin"),process.exit(1)),l=JSON.parse(p);}}catch(p){console.error(`card-store patch: JSON parse error: ${p.message}`),process.exit(1);}let f=s.patch({params:{id:i,path:u},body:{value:l}});f.status!=="success"&&(console.error(`card-store patch: ${f.error}`),process.exit(1)),console.error("card-store patch: ok");return}console.error(`card-store: unknown command "${n}"
|
|
6
6
|
|
|
7
|
-
${
|
|
7
|
+
${F}`),process.exit(1);}function $(r){return r.map((n,e)=>(n.errors.length>0&&(console.error(`card-store set: YAML parse error in document ${e+1}: ${n.errors[0]}`),process.exit(1)),n.toJS()))}function N(r,n){let e;try{e=JSON.parse(r);}catch(o){console.error(`card-store set: JSON parse error from ${n}: ${o.message}`),process.exit(1);}if(Array.isArray(e))return e;if(e&&typeof e=="object")return [e];console.error(`card-store set: JSON from ${n} must be an object or an array of objects`),process.exit(1);}var X=process.argv[1]&&x(process.argv[1])===x(new URL(import.meta.url).pathname.replace(/^\/([A-Z]:)/,"$1"));X&&z(process.argv.slice(2)).catch(r=>{let n=r instanceof Error?r.message:String(r);console.error(n),process.exit(1);});export{z as cli};//# sourceMappingURL=card-store-cli.js.map
|
|
8
8
|
//# sourceMappingURL=card-store-cli.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
1
|
+
import { a as CommandInput, b as CommandResult, c as BlobStorage, C as ChatStorage, K as KindValueRef, d as BoardNonCorePlatformAdapter, B as BoardPlatformAdapter, I as InvocationAdapter } from '../types--rXGWbSR.js';
|
|
2
|
+
export { e as BoardLiveCardsNonCorePublic, f as BoardLiveCardsPublic, g as ChatConfig, h as ChatRecord, D as DescribeEnvelope, i as createBoardLiveCardsNonCorePublic, j as createBoardLiveCardsPublic, k as createChatStorage, l as createInMemoryChatStorage, p as parseRef, s as serializeRef } from '../types--rXGWbSR.js';
|
|
3
3
|
export { E as ExecutionRef, e as executionRefFromScriptPath, p as parseExecutionRef, s as serializeExecutionRef } from '../execution-interface-ftO1W7Po.js';
|
|
4
|
-
import { C as CardAdminStore, L as LiveCard } from '../board-live-cards-lib-
|
|
5
|
-
export {
|
|
4
|
+
import { C as CardAdminStore, L as LiveCard } from '../board-live-cards-lib-Iq_XAC09.js';
|
|
5
|
+
export { B as BOARD_GRAPH_KEY, E as EMPTY_CONFIG, S as SNAPSHOT_SCHEMA_VERSION_V1, c as createCardStore } from '../board-live-cards-lib-Iq_XAC09.js';
|
|
6
6
|
export { CreateExecutionRefInvokerOptions, ExecutionRefInvoker, InvokeExecutionRefOptions, InvokeRefResult, SyncTransportInvoker, TransportInvoker, createExecutionRefInvoker, evaluateArgsMassaging, invokeExecutionRef, invokeExecutionRefSync, invokeRefSync } from './execution-adapter.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -83,31 +83,6 @@ interface ArtifactsStore {
|
|
|
83
83
|
list(prefix?: string): ArtifactInfo[];
|
|
84
84
|
remove(key: string): void;
|
|
85
85
|
}
|
|
86
|
-
interface ChatIndexRecord {
|
|
87
|
-
serial: number;
|
|
88
|
-
role: string;
|
|
89
|
-
stored_name: string;
|
|
90
|
-
path: string;
|
|
91
|
-
updated_at?: string | null;
|
|
92
|
-
}
|
|
93
|
-
interface ChatRecord extends ChatIndexRecord {
|
|
94
|
-
text: string;
|
|
95
|
-
}
|
|
96
|
-
interface ChatSignal {
|
|
97
|
-
count: number;
|
|
98
|
-
latest_mtime_ms: number;
|
|
99
|
-
processing: boolean;
|
|
100
|
-
}
|
|
101
|
-
interface ChatArtifactsStore {
|
|
102
|
-
indexKey(cardPrefix: string): string;
|
|
103
|
-
loadIndex(cardPrefix: string): ChatIndexRecord[];
|
|
104
|
-
saveIndex(cardPrefix: string, records: ChatIndexRecord[]): void;
|
|
105
|
-
nextSerial(cardPrefix: string): number;
|
|
106
|
-
appendIndexRecord(cardPrefix: string, record: ChatIndexRecord): void;
|
|
107
|
-
readRecords(cardPrefix: string): ChatRecord[];
|
|
108
|
-
clear(cardPrefix: string): void;
|
|
109
|
-
readSignal(cardPrefix: string): ChatSignal;
|
|
110
|
-
}
|
|
111
86
|
interface FileArtifactsStore {
|
|
112
87
|
nextSerial(cardPrefix: string, seedNames?: string[]): number;
|
|
113
88
|
buildStoredName(displayName: string, serial: number, opts?: {
|
|
@@ -140,9 +115,6 @@ interface CardFileMetadataStore {
|
|
|
140
115
|
resolve(cardData: unknown, index: number, expectedStoredName?: string | null): CardFileLookupResult;
|
|
141
116
|
}
|
|
142
117
|
declare function createArtifactsStore(blob: BlobStorage): ArtifactsStore;
|
|
143
|
-
declare function createChatArtifactsStore(store: ArtifactsStore, opts?: {
|
|
144
|
-
indexFileName?: string;
|
|
145
|
-
}): ChatArtifactsStore;
|
|
146
118
|
declare function createFileArtifactsStore(store: ArtifactsStore): FileArtifactsStore;
|
|
147
119
|
declare function createCardFileMetadataStore(): CardFileMetadataStore;
|
|
148
120
|
|
|
@@ -208,10 +180,11 @@ type FsBoardNonCoreAdapterOpts = {
|
|
|
208
180
|
};
|
|
209
181
|
declare function createFsBoardPlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardAdapterOpts, maybeOpts?: FsBoardAdapterOpts): BoardPlatformAdapter;
|
|
210
182
|
declare function createFsBoardNonCorePlatformAdapter(baseRef: KindValueRef, cliDirOrOpts?: string | FsBoardNonCoreAdapterOpts, maybeOpts?: FsBoardNonCoreAdapterOpts): BoardNonCorePlatformAdapter;
|
|
183
|
+
declare function createFsBoardChatStorage(boardDir: string): ChatStorage;
|
|
211
184
|
/**
|
|
212
185
|
* Extract the serialized board ref from a source token (which has a `br` field).
|
|
213
186
|
* Returns null for callback tokens (which don't carry a board ref).
|
|
214
187
|
*/
|
|
215
188
|
declare function decodeBoardRefFromToken(token: string): string | null;
|
|
216
189
|
|
|
217
|
-
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter, CommandInput, CommandResult, InvocationAdapter, KindValueRef, LiveCard, createArtifactsStore, createArtifactsStorePublic, createCardFileMetadataStore, createCardStorePublic,
|
|
190
|
+
export { BoardNonCorePlatformAdapter, BoardPlatformAdapter, ChatStorage, CommandInput, CommandResult, InvocationAdapter, KindValueRef, LiveCard, createArtifactsStore, createArtifactsStorePublic, createCardFileMetadataStore, createCardStorePublic, createFileArtifactsStore, createFsBoardChatStorage, createFsBoardNonCorePlatformAdapter, createFsBoardPlatformAdapter, createNodeSpawnInvocationAdapter, decodeBoardRefFromToken };
|