yaml-flow 8.5.0 → 8.5.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/cli/browser-api/board-live-cards-browser-adapter.d.ts +1 -1
- package/cli/bundled/board-live-cards-cli.mjs +13 -13
- package/cli/bundled/chat-store-cli.mjs +13 -13
- package/cli/{types-D2s3VzyY.d.ts → types-H3EMBPY2.d.ts} +7 -2
- package/examples/board/demo-shell-with-server.html +2 -2
- package/examples/board/doc.html +2 -2
- package/examples/board/server/README-mcp-api.md +680 -0
- package/examples/board/test/server-http-mcp-test.js +391 -34
- package/examples/board-local/demo-shell-localstorage.html +3 -3
- package/lib/artifacts-store-public.d.cts +1 -1
- package/lib/artifacts-store-public.d.ts +1 -1
- package/lib/board-live-cards-mcp.cjs +1 -1
- package/lib/board-live-cards-mcp.d.cts +42 -5
- package/lib/board-live-cards-mcp.d.ts +42 -5
- package/lib/board-live-cards-mcp.js +1 -1
- package/lib/board-live-cards-node.cjs +14 -14
- package/lib/board-live-cards-node.d.cts +4 -4
- package/lib/board-live-cards-node.d.ts +4 -4
- package/lib/board-live-cards-node.js +14 -14
- package/lib/{board-live-cards-public-CvkDfZQ7.d.cts → board-live-cards-public-B13InXhC.d.cts} +7 -2
- package/lib/{board-live-cards-public-DdVhH4M-.d.ts → board-live-cards-public-BGS22cMb.d.ts} +7 -2
- package/lib/board-live-cards-public.cjs +1 -1
- package/lib/board-live-cards-public.d.cts +1 -1
- package/lib/board-live-cards-public.d.ts +1 -1
- package/lib/board-live-cards-public.js +1 -1
- package/lib/board-live-cards-server-runtime.cjs +4 -4
- package/lib/board-live-cards-server-runtime.d.cts +2 -2
- package/lib/board-live-cards-server-runtime.d.ts +2 -2
- package/lib/board-live-cards-server-runtime.js +4 -4
- package/lib/card-store-public.d.cts +1 -1
- package/lib/card-store-public.d.ts +1 -1
- package/lib/chat-store-public.cjs +1 -1
- package/lib/chat-store-public.d.cts +6 -1
- package/lib/chat-store-public.d.ts +6 -1
- package/lib/chat-store-public.js +1 -1
- package/lib/server-runtime/index.cjs +4 -4
- package/lib/server-runtime/index.d.cts +3 -3
- package/lib/server-runtime/index.d.ts +3 -3
- package/lib/server-runtime/index.js +4 -4
- package/lib/{types-QNI__eAf.d.ts → types-30R357js.d.ts} +1 -1
- package/lib/{types-NM_d_1oZ.d.cts → types-CIgsh56O.d.cts} +1 -1
- package/package.json +1 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generatedAt": "2026-05-
|
|
2
|
+
"generatedAt": "2026-05-28T17:55:28.807Z",
|
|
3
3
|
"algorithm": "sha256",
|
|
4
4
|
"files": {
|
|
5
5
|
"browser/board-livecards-localstorage.js": {
|
|
6
|
-
"sha256": "sha256-
|
|
7
|
-
"bytes":
|
|
6
|
+
"sha256": "sha256-u7dL4cNzKLbP4R5Ff04ErNcpwPFEm/N3O5WjakWtlDY=",
|
|
7
|
+
"bytes": 143933
|
|
8
8
|
},
|
|
9
9
|
"browser/live-cards.schema.json": {
|
|
10
10
|
"sha256": "sha256-F5nfqDzZ5L3p0lLTMxGt4YtMa2sVzdNPh8sbQ8OiXHE=",
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var BoardLiveCardsClient=(function(exports){'use strict';function W(t){return t==="running"||t==="in-progress"?"loading":t==="failed"?"error":"fresh"}function pt(t,e){let r=e&&typeof e=="object"&&!Array.isArray(e)?e:{};return {schema_version:r.schema_version||"v1",card_id:typeof r.card_id=="string"?r.card_id:t,card_data:r.card_data&&typeof r.card_data=="object"&&!Array.isArray(r.card_data)?structuredClone(r.card_data):{},computed_values:r.computed_values&&typeof r.computed_values=="object"&&!Array.isArray(r.computed_values)?structuredClone(r.computed_values):{}}}function E(t,e){if(!t||typeof t!="object")throw new Error("payload must be an object");if(!e)throw new Error("cardId is required");let h=(Array.isArray(t.cardDefinitions)?t.cardDefinitions:[]).find(C=>C.id===e);if(!h)throw new Error(`cardDefinitions has no entry with id ${e}`);let n=t.statusSnapshot&&typeof t.statusSnapshot=="object"?t.statusSnapshot:{},o=t.cardRuntimeById&&typeof t.cardRuntimeById=="object"?t.cardRuntimeById:{},y=t.dataObjectsByToken&&typeof t.dataObjectsByToken=="object"?t.dataObjectsByToken:{},u=(Array.isArray(n.cards)?n.cards:[]).find(C=>C.name===e),l=structuredClone(h),i=pt(e,o[e]),s={...l.card_data&&typeof l.card_data=="object"&&!Array.isArray(l.card_data)?l.card_data:{},...i.card_data||{},status:W(u?.status),lastRun:u?.runtime?.last_transition_at??null};u?.error?.message&&(s.error=u.error.message);let g=u?{task_status:u.status??null,card_status:W(u.status),runtime:structuredClone(u.runtime??{}),error:u.error?structuredClone(u.error):null,blocked_by:Array.isArray(u.blocked_by)?structuredClone(u.blocked_by):[],requires_missing:Array.isArray(u.requires_missing)?structuredClone(u.requires_missing):[]}:{task_status:null,card_status:s.status??"fresh",runtime:{last_transition_at:s.lastRun??null},error:s.error?{message:s.error}:null,blocked_by:[],requires_missing:[]},k=Array.isArray(l.requires)?l.requires:[],c={};for(let[C,x]of Object.entries(y))c[C]=structuredClone(x);for(let C of k)Object.prototype.hasOwnProperty.call(c,C)||(c[C]=null);let d=(t.cardChatsByCardId&&typeof t.cardChatsByCardId=="object"?t.cardChatsByCardId:{})[e],S=d?{messages:Array.isArray(d.messages)?d.messages:[],receiving:!!d.receiving,processing:!!d.processing}:null;return {id:e,card:l,card_data:s,requires:c,computed_values:i.computed_values,runtime_state:g,card_chats:S}}function U(t){if(!t||typeof t!="object")throw new Error("payload must be an object");return (Array.isArray(t.cardDefinitions)?t.cardDefinitions:[]).map(r=>E(t,r.id))}function G(t){return JSON.parse(JSON.stringify(t))}function B(t,e){if(t===e)return t;try{if(JSON.stringify(t)===JSON.stringify(e))return t}catch{}return e}function _(t,e){if(t===e)return true;try{return JSON.stringify(t)===JSON.stringify(e)}catch{return false}}function gt(t){return t==="running"||t==="in-progress"?"loading":t==="failed"?"error":"fresh"}function q(t,e,r){let h=t,o=(h&&Array.isArray(h.cardDefinitions)?h.cardDefinitions:[]).map(u=>u.id),y=e&&e.modelsById||{},m={};for(let u of o){let l=r(t,u),i=y[u];if(!i){m[u]=l;continue}let p=l.card_chats!=null?B(i.card_chats,l.card_chats??null):i.card_chats??null,s={id:l.id,card:B(i.card,l.card),card_data:B(i.card_data,l.card_data),requires:B(i.requires,l.requires),computed_values:B(i.computed_values,l.computed_values),runtime_state:B(i.runtime_state,l.runtime_state),card_chats:p};m[u]=s.card===i.card&&s.card_data===i.card_data&&s.requires===i.requires&&s.computed_values===i.computed_values&&s.runtime_state===i.runtime_state&&s.card_chats===i.card_chats?i:s;}return {payload:t,cardIds:o,modelsById:m}}function H(t,e={}){if(!t)return t;let r=typeof e.includeCard=="function"?e.includeCard:(()=>true),h=typeof e.mapCard=="function"?e.mapCard:(u=>u),n=false,o=[],y={};for(let u of t.cardIds){let l=t.modelsById[u];if(!l){n=true;continue}if(!r(l,t)){n=true;continue}let i=h(l,t);if(!i||i.id!==u)throw new Error(`deriveBoardState: mapped card must preserve id "${u}"`);i!==l&&(n=true),o.push(u),y[u]=i;}let m=typeof e.mapPayload=="function"?e.mapPayload(t.payload,{sourceState:t,cardIds:o,modelsById:y}):t.payload;return m!==t.payload&&(n=true),!n&&o.length===t.cardIds.length?t:{payload:m,cardIds:o,modelsById:y}}function J(t,e,r,h){if(!t||!Array.isArray(e)||e.length===0)return t;let n=t.modelsById,o=t.cardIds,y=false,m=false,u={};for(let i of o){let p=n[i],s=p&&p.requires;if(s&&typeof s=="object")for(let g of Object.keys(s))(u[g]=u[g]||[]).push(i);}function l(){y||(n={...n},y=true);}for(let i of e)if(!(!i||!i.kind)){if(i.kind==="computed_values"){let p=i.cardId,s=n[p];if(!s)continue;let g=i.values||{};if(_(s.computed_values,g))continue;l(),n[p]={...s,computed_values:g},m=true;}else if(i.kind==="data_object"){let p=i.key,s=i.payload,g=u[p]||[];for(let k of g){let c=n[k];if(!c)continue;let w=c.requires||{};_(w[p],s)||(l(),n[k]={...c,requires:{...w,[p]:s}},m=true);}}else if(i.kind==="card_refreshed"){let p=i.cardId,s=null,g=n[p],k=i.card;if(g&&k&&typeof k=="object"&&!Array.isArray(k)){let c=k,w=c.card_data&&typeof c.card_data=="object"&&!Array.isArray(c.card_data)?c.card_data:g.card_data,d=c.requires&&typeof c.requires=="object"&&!Array.isArray(c.requires)?c.requires:g.requires,S=c.computed_values&&typeof c.computed_values=="object"&&!Array.isArray(c.computed_values)?c.computed_values:g.computed_values,C=c.runtime_state&&typeof c.runtime_state=="object"&&!Array.isArray(c.runtime_state)?c.runtime_state:g.runtime_state;s={...g,card:k,card_data:w,requires:d,computed_values:S,runtime_state:C};}if(!s)try{let c=h();c&&(s=r(c,p));}catch{}if(!s||g&&_(g.card,s.card)&&_(g.card_data,s.card_data)&&_(g.requires,s.requires)&&_(g.computed_values,s.computed_values)&&_(g.runtime_state,s.runtime_state))continue;l(),n[p]=s,o.includes(p)||(o=[...o,p]),m=true;}else if(i.kind==="card_removed"){let p=i.cardId;if(!n[p])continue;l(),delete n[p],o=o.filter(s=>s!==p),m=true;}else if(i.kind==="card_chats"){let p=i.cardId,s=n[p];if(!s)continue;let g=Array.isArray(i.messages)?i.messages:s.card_chats?.messages??[],k=typeof i.receiving=="boolean"?i.receiving:s.card_chats?.receiving??false,c=typeof i.processing=="boolean"?i.processing:s.card_chats?.processing??false,w={messages:g,receiving:k,processing:c};if(_(s.card_chats,w))continue;l(),n[p]={...s,card_chats:w},m=true;}else if(i.kind==="chat_messages"){let p=i.cardId,s=n[p];if(!s)continue;let g=Array.isArray(i.messages)?i.messages:[],k=s.card_chats||{receiving:false,processing:false},c={messages:g,receiving:k.receiving,processing:!!k.processing};if(_(s.card_chats,c))continue;l(),n[p]={...s,card_chats:c},m=true;}else if(i.kind==="status"){let p=i.status?.cards??[];for(let s of p){let g=s?.name;if(!g||!n[g])continue;let k=n[g],c=gt(s.status),w={...k.card_data||{},status:c,lastRun:s.runtime?.last_transition_at??null,...s.error?.message?{error:s.error.message}:{}};s.error?.message||delete w.error;let d={task_status:s.status??null,card_status:c,runtime:s.runtime?G(s.runtime):{},error:s.error?G(s.error):null,blocked_by:Array.isArray(s.blocked_by)?G(s.blocked_by):[],requires_missing:Array.isArray(s.requires_missing)?G(s.requires_missing):[]};_(k.card_data,w)&&_(k.runtime_state,d)||(l(),n[g]={...k,card_data:w,runtime_state:d},m=true);}}}return m?{payload:t.payload,cardIds:o,modelsById:n}:t}function Ie(t,e="/api/boards"){let r=e.replace(/\/$/,""),h=encodeURIComponent(t||"default"),n=`${r}/${h}`;return {initBoard:`${n}/init-board`,stream:`${n}/sse`,patchCard:o=>`${n}/cards/${encodeURIComponent(o)}`,retriggerCard:o=>`${n}/cards/${encodeURIComponent(o)}/retrigger`,cardAction:o=>`${n}/cards/${encodeURIComponent(o)}/actions`,cardFile:o=>`${n}/cards/${encodeURIComponent(o)}/files`,cardChats:o=>`${n}/cards/${encodeURIComponent(o)}/chats`,chatSubscribeSse:o=>`${n}/cards/${encodeURIComponent(o)}/chats/subscribe-sse`,chatUnsubscribeSse:o=>`${n}/cards/${encodeURIComponent(o)}/chats/unsubscribe-sse`}}function Be(t="/api/board"){let e=t.replace(/\/$/,"");return {initBoard:`${e}/init-board`,stream:`${e}/sse`,patchCard:r=>`${e}/cards/${encodeURIComponent(r)}`,retriggerCard:r=>`${e}/cards/${encodeURIComponent(r)}/retrigger`,cardAction:r=>`${e}/cards/${encodeURIComponent(r)}/actions`,cardFile:r=>`${e}/cards/${encodeURIComponent(r)}/files`,cardChats:r=>`${e}/cards/${encodeURIComponent(r)}/chats`,chatSubscribeSse:r=>`${e}/cards/${encodeURIComponent(r)}/chats/subscribe-sse`,chatUnsubscribeSse:r=>`${e}/cards/${encodeURIComponent(r)}/chats/unsubscribe-sse`}}function ht(t){let e=t.getServerOrigin();if(!e||!t.boardId)return null;let r=t.boardPaths(t.boardId);return `${e}${r.initBoard.replace(/\/init-board$/,"")}`}async function Z(t){if(!t.file)return null;let e=t.boardPaths(t.boardId),r=t.inChat?`${e.cardFile(t.cardId)}?inChat=true`:e.cardFile(t.cardId),h=typeof t.file.name=="string"?t.file.name:"upload.bin",n=t.file.type||"application/octet-stream",o=await t.fetchServer(r,{method:"POST",headers:{"content-type":n,"x-file-name":encodeURIComponent(h)},body:t.file});if(!o.ok){let m=await o.text();throw new Error(`Upload failed for ${t.cardId} (${o.status})${m?": "+m:""}`)}return (await o.json())?.file??null}async function mt(t){let{actionType:e}=t;if(e!=="chat-send"&&e!=="file-upload")return t.payload||{};let r={...t.payload||{}},h=Array.isArray(r.files)?r.files:[];if(!h.length)return r.files=[],r;let n=[];for(let o of h){let y=await Z({...t,file:o,inChat:e==="chat-send"});y&&n.push(y);}return r.files=e==="chat-send"?[]:n,r}async function yt(t){let e=t.boardPaths(t.boardId),r=await t.fetchServer(e.patchCard(t.cardId),{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(t.patch||{})});if(!r.ok)throw new Error(`PATCH failed for ${t.cardId} (${r.status})`)}async function kt(t){let e=t.boardPaths(t.boardId),r=await t.fetchServer(e.retriggerCard(t.cardId),{method:"POST"});if(!r.ok)throw new Error(`retrigger failed for ${t.cardId} (${r.status})`)}async function St(t){let e=t.boardPaths(t.boardId),r=await mt(t),h=await t.fetchServer(e.cardAction(t.cardId),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({actionType:t.actionType,payload:r})});if(!h.ok)throw new Error(`${t.actionType==="refresh"?"Refresh":"Action"} failed for ${t.cardId} (${h.status})`);return {payload:r}}function Oe(t,e=null){return q(t,e,E)}function Pe(t,e,r){return J(t,e,E,r)}function De(t,e){let r=new Set(e.map(String)),h=t.cardIds.filter(o=>r.has(o)),n={};for(let o of h)n[o]=t.modelsById[o];return {payload:t.payload,cardIds:h,modelsById:n}}function je(t,e){let r=e instanceof Set?e:new Set(e.map(String)),h=t.cardIds.filter(o=>!r.has(o)),n={};for(let o of h)n[o]=t.modelsById[o];return {payload:t.payload,cardIds:h,modelsById:n}}function vt(t){let e=t?.core,r=t?.engine??e?.engine;r&&typeof r.onServerSseEvent=="function"?r.onServerSseEvent():r&&typeof r.refreshOpenChatModal=="function"&&r.refreshOpenChatModal();}function bt(){let t=globalThis.LiveCard;if(!t)throw new Error("LiveCard global not loaded \u2014 include live-cards.js before this script");return t}function Ct(t){if(!t||typeof t!="object")throw new Error("options are required");let{fetchServer:e,boardPaths:r,getServerOrigin:h}=t;if(typeof e!="function")throw new Error("options.fetchServer is required");if(typeof r!="function")throw new Error("options.boardPaths is required");if(typeof h!="function")throw new Error("options.getServerOrigin is required");let n={current:null},o=new Set,y=null,m=null,u=null,l={},i={},p=globalThis.crypto&&typeof globalThis.crypto.randomUUID=="function"?globalThis.crypto.randomUUID():`lc-${Date.now()}-${Math.random().toString(36).slice(2)}`;function s(){for(let a of o)a(n.current);}function g(){return n.current?n.current.payload:null}function k(a){return n.current=a,s(),n.current}function c(){let a=m;if(!a)throw new Error("Board runtime session is not bound to a board yet");let f=u??r(a);return u=f,{boardId:a,paths:f}}function w(a){let f=q(a,n.current,E);return k(f),f}function d(a,f){let b=q(a,f??n.current,E);return k(b),b}function S(a){return k(a)}function C(a){if(!n.current)return n.current;let f=J(n.current,a,E,g);return k(f),f}async function x(a,f,b){let{boardId:R}=c();return Z({fetchServer:e,boardPaths:r,boardId:R,cardId:a,file:f,inChat:b?.inChat})}async function M(a,f,b){let{boardId:R}=c();return f==="chat-send"&&await A(a),St({fetchServer:e,boardPaths:r,boardId:R,cardId:a,actionType:f,payload:b})}function v(a,f){return i[a]=f,f.finally(()=>{i[a]===f&&delete i[a];})}async function A(a){let f=i[a];if(f){await f;return}l[a]||await K(a);}async function $(a,f){let{boardId:b}=c();await yt({fetchServer:e,boardPaths:r,boardId:b,cardId:a,patch:f});}async function tt(a){let{boardId:f}=c();await kt({fetchServer:e,boardPaths:r,boardId:f,cardId:a});}async function K(a){let{paths:f}=c(),b=i[a];if(b){await b;return}if(l[a])return;l[a]=true;let R=(async()=>{await e(f.chatSubscribeSse(a),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})});})().catch(()=>{delete l[a];});await v(a,R);}async function et(a){let{paths:f}=c(),b=i[a];if(b)try{await b;}catch{}delete l[a];try{await e(f.chatUnsubscribeSse(a),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})});}catch{}}function rt(a){Object.keys(l).forEach(f=>{e(a.chatSubscribeSse(f),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})}).catch(()=>{});});}function V(a){let f=a;f?.kind==="notification-batch"&&Array.isArray(f.notifications)?C(f.notifications):f?.cardDefinitions&&w(f);}function nt(a){return m=String(a.boardId||"default"),u=r(m),a.state!==void 0?S(a.state??null):a.payload?d(a.payload,n.current):n.current}function st(a){return V(a),n.current}function F(){y&&(y.close(),y=null);}async function at(a={}){let f=String(a.boardId||m||"default");m=f;let b=r(f);if(u=b,a.initialState!==void 0?S(a.initialState??null):a.initialPayload!==void 0&&d(a.initialPayload,n.current),a.skipInitBoard!==true){let O=typeof a.taskExecutorPath=="string"?a.taskExecutorPath.trim():"",P=O?`${b.initBoard}?taskExecutorPath=${encodeURIComponent(O)}`:b.initBoard,T=await e(P);if(!T.ok)throw new Error(`Server init-board failed (${T.status}).`)}let R=h();if(!R)throw new Error("Server origin not resolved before SSE start");F();let I=!n.current,dt=`${R}${b.stream}${b.stream.includes("?")?"&":"?"}clientId=${encodeURIComponent(p)}`,X=await new Promise((O,P)=>{let T=new EventSource(dt);y=T;let D=false,j=I?setTimeout(()=>{D||P(new Error("SSE initial payload timeout (15s)"));},15e3):null;T.onopen=()=>{rt(b),I||O(n.current?.payload??null);},T.onmessage=ct=>{try{let N=JSON.parse(ct.data||"{}");V(N),!D&&I&&(N?.cardDefinitions||U(N))&&(D=!0,j&&clearTimeout(j),O(N));}catch{if(!I)return}},T.onerror=()=>{I&&!D&&(j&&clearTimeout(j),P(new Error("SSE connection failed during bootstrap")));};});if(I){if(!U(X))throw new Error("SSE payload missing published runtime artifacts");w(X);}return n.current}function ot(a){return o.add(a),a(n.current),()=>{o.delete(a);}}function it(){F(),Object.keys(l).forEach(a=>delete l[a]),u=null,m=null,o.clear(),n.current=null;}return {bootstrap:at,attachProvidedState:nt,applyServerUpdate:st,seedStateFromPayload:d,seedState:S,applyNotificationBatch:C,replacePayload:w,subscribe:ot,closeSse:F,isConnected:()=>y!=null,getState:()=>n.current,getPayload:g,getBoardId:()=>m,getClientId:()=>p,getSseClientId:()=>p,patchCardState:$,retriggerCard:tt,dispatchCardAction:M,uploadCardFile:x,subscribeCardChats:K,unsubscribeCardChats:et,dispose:it}}function Q(t){if(!t||typeof t!="object")throw new Error("options are required");if(!t.session)throw new Error("options.session is required");let{session:e,...r}=t,h=t.session&&"canvas"in t&&typeof t.canvas=="object"?t.canvas:{height:"72vh",overflow:"auto"},n=e.getState()?H(e.getState(),r):null,o=null,y=String(t.initialMode||"board"),m=new Set;function u(){for(let d of m)d(n);}function l(d){n=d?H(d,r):null,u(),o&&n&&(o.setState(()=>n),vt(o));}let i=e.subscribe(d=>{l(d);});function p(d){if(!n)throw new Error("Derived board runtime has no state to mount");let S=d?.rootElement;if(!S)throw new Error("mountBoard requires params.rootElement");y=String(d?.mode||y||"board");let C=r.boardPaths&&r.getServerOrigin&&e.getBoardId()?ht({boardPaths:r.boardPaths,getServerOrigin:r.getServerOrigin,boardId:e.getBoardId()}):null,x=bt(),M=x.init({resolve:v=>n?.modelsById[v],chartLib:globalThis.Chart??null,markdown:globalThis.marked?v=>globalThis.marked.parse(v):null,sanitize:globalThis.DOMPurify?v=>globalThis.DOMPurify.sanitize(v):null,onPatchState:(v,A)=>e.patchCardState(v,A),onRefresh:v=>e.retriggerCard(v),onAction:(v,A,$)=>e.dispatchCardAction(v,A,$).then(()=>{}),startReceivingChats:v=>{e.subscribeCardChats(v);},stopReceivingChats:v=>{e.unsubscribeCardChats(v);},fileUrlBase:C||void 0});return S.innerHTML="",o=x.Board(M,S,{initialState:n,getNodeIds:v=>v.cardIds,selectNode:(v,A)=>v.modelsById[A],mode:y,canvas:h}),o}function s(d){return m.add(d),d(n),()=>{m.delete(d);}}function g(d){y=String(d||"board");let S=o&&o.core;S&&typeof S.setMode=="function"&&S.setMode(y);}function k(){if(!o)return;y="canvas";let d=o.core;d&&typeof d.setMode=="function"&&d.setMode("canvas"),d&&typeof d.autoLayout=="function"&&d.autoLayout();}function c(d){let S=o&&o.core;S&&typeof S.setDevMode=="function"&&S.setDevMode(!!d);}function w(){i(),m.clear(),o=null;}return {mountBoard:p,subscribe:s,getState:()=>n,getFullState:()=>e.getState(),getBoardId:()=>e.getBoardId(),getClientId:()=>e.getClientId(),getSseClientId:()=>e.getSseClientId(),patchCardState:(d,S)=>e.patchCardState(d,S),retriggerCard:d=>e.retriggerCard(d),dispatchCardAction:(d,S,C)=>e.dispatchCardAction(d,S,C),uploadCardFile:(d,S,C)=>e.uploadCardFile(d,S,C),subscribeCardChats:d=>e.subscribeCardChats(d),unsubscribeCardChats:d=>e.unsubscribeCardChats(d),setMode:g,autoLayout:k,setDevMode:c,getCurrentMode:()=>y,dispose:w}}function Ne(t){let e=Ct(t),r=Q({session:e,boardPaths:t.boardPaths,getServerOrigin:t.getServerOrigin});async function h(n){let o=String(n?.boardId||"default");return await e.bootstrap({boardId:o,taskExecutorPath:n?.taskExecutorPath}),r.mountBoard({rootElement:n.rootElement,mode:n.mode})}return {bootstrapBoard:h,dispose:()=>{r.dispose(),e.dispose();},setMode:n=>r.setMode(n),autoLayout:()=>r.autoLayout(),setDevMode:n=>r.setDevMode(n),getCurrentMode:()=>r.getCurrentMode(),getState:()=>e.getState(),getRuntimeSession:()=>e,createDerivedRuntime:(n={})=>Q({session:e,...n})}}exports.applyBoardNotifications=Pe;exports.applyNotification=J;exports.buildBoardState=q;exports.buildFileUrlBase=ht;exports.createBoardRuntimeClient=Ne;exports.createBoardRuntimeSession=Ct;exports.createDerivedBoardRuntime=Q;exports.defaultBoardPaths=Ie;exports.deriveBoardState=H;exports.dispatchCardAction=St;exports.patchCardState=yt;exports.pickBoardState=De;exports.prepareActionPayload=mt;exports.retriggerCard=kt;exports.selectAllLiveCardModels=U;exports.selectLiveCardModel=E;exports.serverPayloadToBoardState=Oe;exports.singleBoardPaths=Be;exports.subtractBoardState=je;exports.uploadCardFile=Z;return exports;})({});//# sourceMappingURL=board-livecards-client.js.map
|
|
1
|
+
var BoardLiveCardsClient=(function(exports){'use strict';function W(t){return t==="running"||t==="in-progress"?"loading":t==="failed"?"error":"fresh"}function pt(t,e){let r=e&&typeof e=="object"&&!Array.isArray(e)?e:{};return {schema_version:r.schema_version||"v1",card_id:typeof r.card_id=="string"?r.card_id:t,card_data:r.card_data&&typeof r.card_data=="object"&&!Array.isArray(r.card_data)?structuredClone(r.card_data):{},computed_values:r.computed_values&&typeof r.computed_values=="object"&&!Array.isArray(r.computed_values)?structuredClone(r.computed_values):{}}}function E(t,e){if(!t||typeof t!="object")throw new Error("payload must be an object");if(!e)throw new Error("cardId is required");let m=(Array.isArray(t.cardDefinitions)?t.cardDefinitions:[]).find(C=>C.id===e);if(!m)throw new Error(`cardDefinitions has no entry with id ${e}`);let n=t.statusSnapshot&&typeof t.statusSnapshot=="object"?t.statusSnapshot:{},o=t.cardRuntimeById&&typeof t.cardRuntimeById=="object"?t.cardRuntimeById:{},y=t.dataObjectsByToken&&typeof t.dataObjectsByToken=="object"?t.dataObjectsByToken:{},u=(Array.isArray(n.cards)?n.cards:[]).find(C=>C.name===e),l=structuredClone(m),i=pt(e,o[e]),s={...l.card_data&&typeof l.card_data=="object"&&!Array.isArray(l.card_data)?l.card_data:{},...i.card_data||{},status:W(u?.status),lastRun:u?.runtime?.last_transition_at??null};u?.error?.message&&(s.error=u.error.message);let g=u?{task_status:u.status??null,card_status:W(u.status),runtime:structuredClone(u.runtime??{}),error:u.error?structuredClone(u.error):null,blocked_by:Array.isArray(u.blocked_by)?structuredClone(u.blocked_by):[],requires_missing:Array.isArray(u.requires_missing)?structuredClone(u.requires_missing):[]}:{task_status:null,card_status:s.status??"fresh",runtime:{last_transition_at:s.lastRun??null},error:s.error?{message:s.error}:null,blocked_by:[],requires_missing:[]},k=Array.isArray(l.requires)?l.requires:[],c={};for(let[C,x]of Object.entries(y))c[C]=structuredClone(x);for(let C of k)Object.prototype.hasOwnProperty.call(c,C)||(c[C]=null);let d=(t.cardChatsByCardId&&typeof t.cardChatsByCardId=="object"?t.cardChatsByCardId:{})[e],S=d?{messages:Array.isArray(d.messages)?d.messages:[],receiving:!!d.receiving,processing:!!d.processing}:null;return {id:e,card:l,card_data:s,requires:c,computed_values:i.computed_values,runtime_state:g,card_chats:S}}function U(t){if(!t||typeof t!="object")throw new Error("payload must be an object");return (Array.isArray(t.cardDefinitions)?t.cardDefinitions:[]).map(r=>E(t,r.id))}function G(t){return JSON.parse(JSON.stringify(t))}function B(t,e){if(t===e)return t;try{if(JSON.stringify(t)===JSON.stringify(e))return t}catch{}return e}function _(t,e){if(t===e)return true;try{return JSON.stringify(t)===JSON.stringify(e)}catch{return false}}function gt(t){return t==="running"||t==="in-progress"?"loading":t==="failed"?"error":"fresh"}function q(t,e,r){let m=t,o=(m&&Array.isArray(m.cardDefinitions)?m.cardDefinitions:[]).map(u=>u.id),y=e&&e.modelsById||{},h={};for(let u of o){let l=r(t,u),i=y[u];if(!i){h[u]=l;continue}let p=l.card_chats!=null?B(i.card_chats,l.card_chats??null):i.card_chats??null,s={id:l.id,card:B(i.card,l.card),card_data:B(i.card_data,l.card_data),requires:B(i.requires,l.requires),computed_values:B(i.computed_values,l.computed_values),runtime_state:B(i.runtime_state,l.runtime_state),card_chats:p};h[u]=s.card===i.card&&s.card_data===i.card_data&&s.requires===i.requires&&s.computed_values===i.computed_values&&s.runtime_state===i.runtime_state&&s.card_chats===i.card_chats?i:s;}return {payload:t,cardIds:o,modelsById:h}}function H(t,e={}){if(!t)return t;let r=typeof e.includeCard=="function"?e.includeCard:(()=>true),m=typeof e.mapCard=="function"?e.mapCard:(u=>u),n=false,o=[],y={};for(let u of t.cardIds){let l=t.modelsById[u];if(!l){n=true;continue}if(!r(l,t)){n=true;continue}let i=m(l,t);if(!i||i.id!==u)throw new Error(`deriveBoardState: mapped card must preserve id "${u}"`);i!==l&&(n=true),o.push(u),y[u]=i;}let h=typeof e.mapPayload=="function"?e.mapPayload(t.payload,{sourceState:t,cardIds:o,modelsById:y}):t.payload;return h!==t.payload&&(n=true),!n&&o.length===t.cardIds.length?t:{payload:h,cardIds:o,modelsById:y}}function J(t,e,r,m){if(!t||!Array.isArray(e)||e.length===0)return t;let n=t.modelsById,o=t.cardIds,y=false,h=false,u={};for(let i of o){let p=n[i],s=p&&p.requires;if(s&&typeof s=="object")for(let g of Object.keys(s))(u[g]=u[g]||[]).push(i);}function l(){y||(n={...n},y=true);}for(let i of e)if(!(!i||!i.kind)){if(i.kind==="computed_values"){let p=i.cardId,s=n[p];if(!s)continue;let g=i.values||{};if(_(s.computed_values,g))continue;l(),n[p]={...s,computed_values:g},h=true;}else if(i.kind==="data_object"){let p=i.key,s=i.payload,g=u[p]||[];for(let k of g){let c=n[k];if(!c)continue;let w=c.requires||{};_(w[p],s)||(l(),n[k]={...c,requires:{...w,[p]:s}},h=true);}}else if(i.kind==="card_refreshed"){let p=i.cardId,s=null,g=n[p],k=i.card;if(g&&k&&typeof k=="object"&&!Array.isArray(k)){let c=k,w=c.card_data&&typeof c.card_data=="object"&&!Array.isArray(c.card_data)?c.card_data:g.card_data,d=c.requires&&typeof c.requires=="object"&&!Array.isArray(c.requires)?c.requires:g.requires,S=c.computed_values&&typeof c.computed_values=="object"&&!Array.isArray(c.computed_values)?c.computed_values:g.computed_values,C=c.runtime_state&&typeof c.runtime_state=="object"&&!Array.isArray(c.runtime_state)?c.runtime_state:g.runtime_state;s={...g,card:k,card_data:w,requires:d,computed_values:S,runtime_state:C};}if(!s)try{let c=m();c&&(s=r(c,p));}catch{}if(!s||g&&_(g.card,s.card)&&_(g.card_data,s.card_data)&&_(g.requires,s.requires)&&_(g.computed_values,s.computed_values)&&_(g.runtime_state,s.runtime_state))continue;l(),n[p]=s,o.includes(p)||(o=[...o,p]),h=true;}else if(i.kind==="card_removed"){let p=i.cardId;if(!n[p])continue;l(),delete n[p],o=o.filter(s=>s!==p),h=true;}else if(i.kind==="card_chats"){let p=i.cardId,s=n[p];if(!s)continue;let g=Array.isArray(i.messages)?i.messages:s.card_chats?.messages??[],k=typeof i.receiving=="boolean"?i.receiving:s.card_chats?.receiving??false,c=typeof i.processing=="boolean"?i.processing:s.card_chats?.processing??false,w={messages:g,receiving:k,processing:c};if(_(s.card_chats,w))continue;l(),n[p]={...s,card_chats:w},h=true;}else if(i.kind==="chat_messages"){let p=i.cardId,s=n[p];if(!s)continue;let g=Array.isArray(i.messages)?i.messages:[],k=s.card_chats||{receiving:false,processing:false},c={messages:g,receiving:k.receiving,processing:!!k.processing};if(_(s.card_chats,c))continue;l(),n[p]={...s,card_chats:c},h=true;}else if(i.kind==="status"){let p=i.status?.cards??[];for(let s of p){let g=s?.name;if(!g||!n[g])continue;let k=n[g],c=gt(s.status),w={...k.card_data||{},status:c,lastRun:s.runtime?.last_transition_at??null,...s.error?.message?{error:s.error.message}:{}};s.error?.message||delete w.error;let d={task_status:s.status??null,card_status:c,runtime:s.runtime?G(s.runtime):{},error:s.error?G(s.error):null,blocked_by:Array.isArray(s.blocked_by)?G(s.blocked_by):[],requires_missing:Array.isArray(s.requires_missing)?G(s.requires_missing):[]};_(k.card_data,w)&&_(k.runtime_state,d)||(l(),n[g]={...k,card_data:w,runtime_state:d},h=true);}}}return h?{payload:t.payload,cardIds:o,modelsById:n}:t}function Ie(t,e="/api/boards"){let r=e.replace(/\/$/,""),m=encodeURIComponent(t||"default"),n=`${r}/${m}`;return {initBoard:`${n}/init-board`,stream:`${n}/sse`,patchCard:o=>`${n}/cards/${encodeURIComponent(o)}`,retriggerCard:o=>`${n}/cards/${encodeURIComponent(o)}/retrigger`,cardAction:o=>`${n}/cards/${encodeURIComponent(o)}/actions`,cardFile:o=>`${n}/cards/${encodeURIComponent(o)}/files`,cardChats:o=>`${n}/cards/${encodeURIComponent(o)}/chats`,chatSubscribeSse:o=>`${n}/cards/${encodeURIComponent(o)}/chats/subscribe-sse`,chatUnsubscribeSse:o=>`${n}/cards/${encodeURIComponent(o)}/chats/unsubscribe-sse`}}function Be(t="/api/board"){let e=t.replace(/\/$/,"");return {initBoard:`${e}/init-board`,stream:`${e}/sse`,patchCard:r=>`${e}/cards/${encodeURIComponent(r)}`,retriggerCard:r=>`${e}/cards/${encodeURIComponent(r)}/retrigger`,cardAction:r=>`${e}/cards/${encodeURIComponent(r)}/actions`,cardFile:r=>`${e}/cards/${encodeURIComponent(r)}/files`,cardChats:r=>`${e}/cards/${encodeURIComponent(r)}/chats`,chatSubscribeSse:r=>`${e}/cards/${encodeURIComponent(r)}/chats/subscribe-sse`,chatUnsubscribeSse:r=>`${e}/cards/${encodeURIComponent(r)}/chats/unsubscribe-sse`}}function ht(t){let e=t.getServerOrigin();if(!e||!t.boardId)return null;let r=t.boardPaths(t.boardId);return `${e}${r.initBoard.replace(/\/init-board$/,"")}`}async function Z(t){if(!t.file)return null;let e=t.boardPaths(t.boardId),r=typeof t.turnId=="string"&&t.turnId!=="",m=t.inChat?`${e.cardFile(t.cardId)}?inChat=true${r?`&turn-id=${encodeURIComponent(t.turnId)}`:""}`:e.cardFile(t.cardId),n=typeof t.file.name=="string"?t.file.name:"upload.bin",o=t.file.type||"application/octet-stream",y=await t.fetchServer(m,{method:"POST",headers:{"content-type":o,"x-file-name":encodeURIComponent(n)},body:t.file});if(!y.ok){let u=await y.text();throw new Error(`Upload failed for ${t.cardId} (${y.status})${u?": "+u:""}`)}return (await y.json())?.file??null}async function mt(t){let{actionType:e}=t;if(e!=="chat-send"&&e!=="file-upload")return t.payload||{};let r={...t.payload||{}},m=typeof r["turn-id"]=="string"?String(r["turn-id"]):typeof r.turnId=="string"?String(r.turnId):typeof r.turn=="string"?String(r.turn):"",n=Array.isArray(r.files)?r.files:[];if(!n.length)return r.files=[],r;let o=[];for(let y of n){let h=await Z({...t,file:y,inChat:e==="chat-send",turnId:e==="chat-send"?m:void 0});h&&o.push(h);}return r.files=e==="chat-send"?[]:o,r}async function yt(t){let e=t.boardPaths(t.boardId),r=await t.fetchServer(e.patchCard(t.cardId),{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify(t.patch||{})});if(!r.ok)throw new Error(`PATCH failed for ${t.cardId} (${r.status})`)}async function kt(t){let e=t.boardPaths(t.boardId),r=await t.fetchServer(e.retriggerCard(t.cardId),{method:"POST"});if(!r.ok)throw new Error(`retrigger failed for ${t.cardId} (${r.status})`)}async function St(t){let e=t.boardPaths(t.boardId),r=await mt(t),m=await t.fetchServer(e.cardAction(t.cardId),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({actionType:t.actionType,payload:r})});if(!m.ok)throw new Error(`${t.actionType==="refresh"?"Refresh":"Action"} failed for ${t.cardId} (${m.status})`);return {payload:r}}function Oe(t,e=null){return q(t,e,E)}function Pe(t,e,r){return J(t,e,E,r)}function De(t,e){let r=new Set(e.map(String)),m=t.cardIds.filter(o=>r.has(o)),n={};for(let o of m)n[o]=t.modelsById[o];return {payload:t.payload,cardIds:m,modelsById:n}}function je(t,e){let r=e instanceof Set?e:new Set(e.map(String)),m=t.cardIds.filter(o=>!r.has(o)),n={};for(let o of m)n[o]=t.modelsById[o];return {payload:t.payload,cardIds:m,modelsById:n}}function vt(t){let e=t?.core,r=t?.engine??e?.engine;r&&typeof r.onServerSseEvent=="function"?r.onServerSseEvent():r&&typeof r.refreshOpenChatModal=="function"&&r.refreshOpenChatModal();}function bt(){let t=globalThis.LiveCard;if(!t)throw new Error("LiveCard global not loaded \u2014 include live-cards.js before this script");return t}function Ct(t){if(!t||typeof t!="object")throw new Error("options are required");let{fetchServer:e,boardPaths:r,getServerOrigin:m}=t;if(typeof e!="function")throw new Error("options.fetchServer is required");if(typeof r!="function")throw new Error("options.boardPaths is required");if(typeof m!="function")throw new Error("options.getServerOrigin is required");let n={current:null},o=new Set,y=null,h=null,u=null,l={},i={},p=globalThis.crypto&&typeof globalThis.crypto.randomUUID=="function"?globalThis.crypto.randomUUID():`lc-${Date.now()}-${Math.random().toString(36).slice(2)}`;function s(){for(let a of o)a(n.current);}function g(){return n.current?n.current.payload:null}function k(a){return n.current=a,s(),n.current}function c(){let a=h;if(!a)throw new Error("Board runtime session is not bound to a board yet");let f=u??r(a);return u=f,{boardId:a,paths:f}}function w(a){let f=q(a,n.current,E);return k(f),f}function d(a,f){let v=q(a,f??n.current,E);return k(v),v}function S(a){return k(a)}function C(a){if(!n.current)return n.current;let f=J(n.current,a,E,g);return k(f),f}async function x(a,f,v){let{boardId:R}=c();return Z({fetchServer:e,boardPaths:r,boardId:R,cardId:a,file:f,inChat:v?.inChat,turnId:v?.turnId})}async function M(a,f,v){let{boardId:R}=c();return f==="chat-send"&&await A(a),St({fetchServer:e,boardPaths:r,boardId:R,cardId:a,actionType:f,payload:v})}function b(a,f){return i[a]=f,f.finally(()=>{i[a]===f&&delete i[a];})}async function A(a){let f=i[a];if(f){await f;return}l[a]||await K(a);}async function $(a,f){let{boardId:v}=c();await yt({fetchServer:e,boardPaths:r,boardId:v,cardId:a,patch:f});}async function tt(a){let{boardId:f}=c();await kt({fetchServer:e,boardPaths:r,boardId:f,cardId:a});}async function K(a){let{paths:f}=c(),v=i[a];if(v){await v;return}if(l[a])return;l[a]=true;let R=(async()=>{await e(f.chatSubscribeSse(a),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})});})().catch(()=>{delete l[a];});await b(a,R);}async function et(a){let{paths:f}=c(),v=i[a];if(v)try{await v;}catch{}delete l[a];try{await e(f.chatUnsubscribeSse(a),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})});}catch{}}function rt(a){Object.keys(l).forEach(f=>{e(a.chatSubscribeSse(f),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({clientId:p})}).catch(()=>{});});}function V(a){let f=a;f?.kind==="notification-batch"&&Array.isArray(f.notifications)?C(f.notifications):f?.cardDefinitions&&w(f);}function nt(a){return h=String(a.boardId||"default"),u=r(h),a.state!==void 0?S(a.state??null):a.payload?d(a.payload,n.current):n.current}function st(a){return V(a),n.current}function F(){y&&(y.close(),y=null);}async function at(a={}){let f=String(a.boardId||h||"default");h=f;let v=r(f);if(u=v,a.initialState!==void 0?S(a.initialState??null):a.initialPayload!==void 0&&d(a.initialPayload,n.current),a.skipInitBoard!==true){let O=typeof a.taskExecutorPath=="string"?a.taskExecutorPath.trim():"",P=O?`${v.initBoard}?taskExecutorPath=${encodeURIComponent(O)}`:v.initBoard,T=await e(P);if(!T.ok)throw new Error(`Server init-board failed (${T.status}).`)}let R=m();if(!R)throw new Error("Server origin not resolved before SSE start");F();let I=!n.current,dt=`${R}${v.stream}${v.stream.includes("?")?"&":"?"}clientId=${encodeURIComponent(p)}`,X=await new Promise((O,P)=>{let T=new EventSource(dt);y=T;let D=false,j=I?setTimeout(()=>{D||P(new Error("SSE initial payload timeout (15s)"));},15e3):null;T.onopen=()=>{rt(v),I||O(n.current?.payload??null);},T.onmessage=ct=>{try{let N=JSON.parse(ct.data||"{}");V(N),!D&&I&&(N?.cardDefinitions||U(N))&&(D=!0,j&&clearTimeout(j),O(N));}catch{if(!I)return}},T.onerror=()=>{I&&!D&&(j&&clearTimeout(j),P(new Error("SSE connection failed during bootstrap")));};});if(I){if(!U(X))throw new Error("SSE payload missing published runtime artifacts");w(X);}return n.current}function ot(a){return o.add(a),a(n.current),()=>{o.delete(a);}}function it(){F(),Object.keys(l).forEach(a=>delete l[a]),u=null,h=null,o.clear(),n.current=null;}return {bootstrap:at,attachProvidedState:nt,applyServerUpdate:st,seedStateFromPayload:d,seedState:S,applyNotificationBatch:C,replacePayload:w,subscribe:ot,closeSse:F,isConnected:()=>y!=null,getState:()=>n.current,getPayload:g,getBoardId:()=>h,getClientId:()=>p,getSseClientId:()=>p,patchCardState:$,retriggerCard:tt,dispatchCardAction:M,uploadCardFile:x,subscribeCardChats:K,unsubscribeCardChats:et,dispose:it}}function Q(t){if(!t||typeof t!="object")throw new Error("options are required");if(!t.session)throw new Error("options.session is required");let{session:e,...r}=t,m=t.session&&"canvas"in t&&typeof t.canvas=="object"?t.canvas:{height:"72vh",overflow:"auto"},n=e.getState()?H(e.getState(),r):null,o=null,y=String(t.initialMode||"board"),h=new Set;function u(){for(let d of h)d(n);}function l(d){n=d?H(d,r):null,u(),o&&n&&(o.setState(()=>n),vt(o));}let i=e.subscribe(d=>{l(d);});function p(d){if(!n)throw new Error("Derived board runtime has no state to mount");let S=d?.rootElement;if(!S)throw new Error("mountBoard requires params.rootElement");y=String(d?.mode||y||"board");let C=r.boardPaths&&r.getServerOrigin&&e.getBoardId()?ht({boardPaths:r.boardPaths,getServerOrigin:r.getServerOrigin,boardId:e.getBoardId()}):null,x=bt(),M=x.init({resolve:b=>n?.modelsById[b],chartLib:globalThis.Chart??null,markdown:globalThis.marked?b=>globalThis.marked.parse(b):null,sanitize:globalThis.DOMPurify?b=>globalThis.DOMPurify.sanitize(b):null,onPatchState:(b,A)=>e.patchCardState(b,A),onRefresh:b=>e.retriggerCard(b),onAction:(b,A,$)=>e.dispatchCardAction(b,A,$).then(()=>{}),startReceivingChats:b=>{e.subscribeCardChats(b);},stopReceivingChats:b=>{e.unsubscribeCardChats(b);},fileUrlBase:C||void 0});return S.innerHTML="",o=x.Board(M,S,{initialState:n,getNodeIds:b=>b.cardIds,selectNode:(b,A)=>b.modelsById[A],mode:y,canvas:m}),o}function s(d){return h.add(d),d(n),()=>{h.delete(d);}}function g(d){y=String(d||"board");let S=o&&o.core;S&&typeof S.setMode=="function"&&S.setMode(y);}function k(){if(!o)return;y="canvas";let d=o.core;d&&typeof d.setMode=="function"&&d.setMode("canvas"),d&&typeof d.autoLayout=="function"&&d.autoLayout();}function c(d){let S=o&&o.core;S&&typeof S.setDevMode=="function"&&S.setDevMode(!!d);}function w(){i(),h.clear(),o=null;}return {mountBoard:p,subscribe:s,getState:()=>n,getFullState:()=>e.getState(),getBoardId:()=>e.getBoardId(),getClientId:()=>e.getClientId(),getSseClientId:()=>e.getSseClientId(),patchCardState:(d,S)=>e.patchCardState(d,S),retriggerCard:d=>e.retriggerCard(d),dispatchCardAction:(d,S,C)=>e.dispatchCardAction(d,S,C),uploadCardFile:(d,S,C)=>e.uploadCardFile(d,S,C),subscribeCardChats:d=>e.subscribeCardChats(d),unsubscribeCardChats:d=>e.unsubscribeCardChats(d),setMode:g,autoLayout:k,setDevMode:c,getCurrentMode:()=>y,dispose:w}}function Ne(t){let e=Ct(t),r=Q({session:e,boardPaths:t.boardPaths,getServerOrigin:t.getServerOrigin});async function m(n){let o=String(n?.boardId||"default");return await e.bootstrap({boardId:o,taskExecutorPath:n?.taskExecutorPath}),r.mountBoard({rootElement:n.rootElement,mode:n.mode})}return {bootstrapBoard:m,dispose:()=>{r.dispose(),e.dispose();},setMode:n=>r.setMode(n),autoLayout:()=>r.autoLayout(),setDevMode:n=>r.setDevMode(n),getCurrentMode:()=>r.getCurrentMode(),getState:()=>e.getState(),getRuntimeSession:()=>e,createDerivedRuntime:(n={})=>Q({session:e,...n})}}exports.applyBoardNotifications=Pe;exports.applyNotification=J;exports.buildBoardState=q;exports.buildFileUrlBase=ht;exports.createBoardRuntimeClient=Ne;exports.createBoardRuntimeSession=Ct;exports.createDerivedBoardRuntime=Q;exports.defaultBoardPaths=Ie;exports.deriveBoardState=H;exports.dispatchCardAction=St;exports.patchCardState=yt;exports.pickBoardState=De;exports.prepareActionPayload=mt;exports.retriggerCard=kt;exports.selectAllLiveCardModels=U;exports.selectLiveCardModel=E;exports.serverPayloadToBoardState=Oe;exports.singleBoardPaths=Be;exports.subtractBoardState=je;exports.uploadCardFile=Z;return exports;})({});//# sourceMappingURL=board-livecards-client.js.map
|
|
2
2
|
//# sourceMappingURL=board-livecards-client.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as BoardPlatformAdapter, N as NotificationTransport, C as ChatStorage } from '../types-
|
|
1
|
+
import { B as BoardPlatformAdapter, N as NotificationTransport, C as ChatStorage } from '../types-H3EMBPY2.js';
|
|
2
2
|
import { E as ExecutionRef } from '../execution-interface-BCIhu1gO.js';
|
|
3
3
|
import '../board-live-cards-lib-COi4bSpk.js';
|
|
4
4
|
|