@augmentd-labs/canvas-web 2.26.5 → 2.26.7
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/assets/{SketchEditor-CWpixOog.js → SketchEditor-CRJF-Jp4.js} +1 -1
- package/dist/assets/document-list-jSeA3hbj.js +19 -0
- package/dist/assets/document-list-uxlmEpEr.css +1 -0
- package/dist/assets/{index-DLTBUV0v.css → index-DCiNIpsg.css} +1 -1
- package/dist/assets/index-DeZi1CDA.js +40 -0
- package/dist/assets/sha256-65KIjGvZ.js +1 -0
- package/dist/assets/useAddTarget-Bprwjjdn.js +1 -0
- package/dist/index.html +6 -3
- package/dist/sw.js +1 -1
- package/package.json +2 -2
- package/dist/assets/index-CItdsVgq.js +0 -55
- package/dist/assets/sha256-Cs35JyRg.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-C0FnF6B9.js";import{u as t}from"./code-editor-BQnKd3jw.js";import{_ as n,u as r}from"./alert-dialog-CDKOX-MP.js";import{An as i,Nt as a,Vt as o,bt as s,dt as c,jn as l}from"./workspace-BYMC2sfI.js";var u=e(t(),1);function d(e){return!/[\\\0]/.test(e)&&e.split(`/`).every(e=>e!==`.`&&e!==`..`)}function f(e,t){if(!d(e))throw Error(`Invalid backend folder path`);let n=`/`+e.split(`/`).filter(Boolean).join(`/`),r=[...t].filter(e=>e.treePath&&(n===e.treePath||n.startsWith(e.treePath+`/`))).sort((e,t)=>t.treePath.length-e.treePath.length)[0];if(!r)throw Error(`Choose a writable storage backend folder`);if(!r.enabled||r.config?.readOnly===!0||!r.capabilities.upload)throw Error(`This backend does not support file uploads or is read-only`);return{driver:r.driver,address:r.address,key:n.slice(r.treePath.length).replace(/^\//,``)}}function p(e,t){if(!t||t.includes(`/`)||!d(t)||!d(e))throw Error(`Invalid upload filename or folder`);return[e.replace(/^\/+|\/+$/g,``),t].filter(Boolean).join(`/`)}var m=(0,u.createContext)(null);function h(){let e=(0,u.useContext)(m);if(!e)throw Error(`useToolbox must be used within a ToolboxProvider`);return e}function g(){return(0,u.useContext)(m)}var _=`contexts:deleted`;function v(e,t){return e.id===t.id?t.ownerId===void 0?e.isShared!==!0&&e.type!==`shared`:e.userId===t.ownerId:!1}async function y(){try{let e=await r.get(n.contexts);return Array.isArray(e)?e:(console.warn(`listContexts: response.payload is not an array:`,e),[])}catch(e){throw console.error(`Failed to list contexts:`,e),e}}function b(e,t){return t?`${e}${e.includes(`?`)?`&`:`?`}ownerId=${encodeURIComponent(t)}`:e}async function x(e,t){try{let i=b(`${n.contexts}/${e}`,t),a=await r.get(i);if(a&&a)return a;throw Error(`Context data not found in API response`)}catch(t){throw console.error(`Failed to get context ${e}:`,t),t}}async function S(e){try{let t=await r.post(n.contexts,e);if(t&&t&&t.context)return t.context;throw Error(`Created context data not found in API response`)}catch(e){throw console.error(`Failed to create context:`,e),e}}async function ee(e,t,i){try{let a=b(`${n.contexts}/${e}`,i),o=await r.put(a,t);if(o?.context)return o.context;throw Error(`Updated context data not found in API response`)}catch(t){throw console.error(`Failed to patch context ${e}:`,t),t}}async function te(e,t,i){try{let a=b(`${n.contexts}/${e}`,i),o=await r.put(a,t);if(o?.context)return o.context;throw Error(`Updated context data not found in API response`)}catch(t){throw console.error(`Failed to update context ${e}:`,t),t}}async function ne(e,t,i,a){try{let o=b(`${n.contexts}/${e}/url`,i),s=await r.post(o,{url:t,...a?{treeName:a}:{}});if(s&&s&&s.url)return{url:s.url,treeId:s.treeId};throw Error(`Updated context data not found in API response`)}catch(t){throw console.error(`Failed to update context URL for ${e}:`,t),t}}async function C(e,t){try{let i=b(`${n.contexts}/${e}`,t);await r.delete(i),window.dispatchEvent(new CustomEvent(_,{detail:{id:e,ownerId:t}}))}catch(t){throw console.error(`Failed to delete context ${e}:`,t),t}}async function w(e,t=[],a=[],o={},s){try{if(o.ids?.length===0)return Object.assign([],{count:0,totalCount:0});if(l(o.sortBy)){let n=await i(o,async n=>{let r=await w(e,t,a,{...o,...n,sortBy:void 0,order:`asc`},s);return{payload:r,count:r.count,totalCount:r.totalCount}});return Object.assign(n.payload,{count:n.count,totalCount:n.totalCount})}let c=new URLSearchParams;o.geoSelection&&(c.set(`geoSelection`,JSON.stringify(o.geoSelection)),c.set(`includeUnlocated`,String(o.includeUnlocated===!0))),o.ids?.forEach(e=>c.append(`ids`,String(e))),t.forEach(e=>c.append(`allOf`,e)),a.forEach(e=>c.append(`filters`,e)),(o.anyOf||[]).filter(Boolean).forEach(e=>c.append(`anyOf`,e)),(o.noneOf||[]).filter(Boolean).forEach(e=>c.append(`noneOf`,e)),o.sortBy&&c.append(`sortBy`,o.sortBy),o.order&&c.append(`order`,o.order),o.applyContextSpec===!1&&c.append(`applyContextSpec`,`false`),s&&c.append(`ownerId`,s),o.includeServerContext!==void 0&&c.append(`includeServerContext`,o.includeServerContext.toString()),o.includeClientContext!==void 0&&c.append(`includeClientContext`,o.includeClientContext.toString()),o.limit!==void 0&&c.append(`limit`,o.limit.toString()),o.offset!==void 0&&c.append(`offset`,o.offset.toString()),o.page!==void 0&&c.append(`page`,o.page.toString()),(o.queries&&o.queries.length?o.queries:o.q?[o.q]:[]).map(e=>e.trim()).filter(Boolean).forEach(e=>c.append(`q`,e));let u=`${n.contexts}/${e}/documents${c.toString()?`?`+c.toString():``}`,d=await r.getEnvelope(u,{signal:o.signal}),f=d.payload;if(Array.isArray(f)){let e=f;return e.count=d.count??void 0,e.totalCount=d.totalCount??void 0,e}return console.warn(`getContextDocuments: payload is not an array:`,f),[]}catch(t){throw console.error(`Failed to get context documents for ${e}:`,t),t}}async function T(e){let t=await r.get(`${n.contexts}/${e}/shares`);return Array.isArray(t)?t:[]}async function E(e,t,i){try{return{message:(await r.post(`${n.contexts}/${e}/shares`,{userEmail:t,accessLevel:i})).message||`Context access granted`}}catch(e){throw console.error(`Failed to grant context access:`,e),e}}async function D(e,t){try{return{message:(await r.delete(`${n.contexts}/${e}/shares/${encodeURIComponent(t)}`)).message||`Context access revoked`}}catch(e){throw console.error(`Failed to revoke context access:`,e),e}}async function O(e,t){try{let i=b(`${n.contexts}/${e}/tree`,t),a=await r.get(i);if(a)return a;throw Error(`Context tree data not found in API response`)}catch(t){throw console.error(`Failed to get context tree for ${e}:`,t),t}}async function k(e,t,i,a){try{let a=Array.isArray(t)?t:[t],o=new URLSearchParams,s=`${n.contexts}/${e}/documents/remove${o.toString()?`?${o.toString()}`:``}`;return{message:await r.delete(b(s,i),{body:JSON.stringify(a),headers:{"Content-Type":`application/json`}})||`Documents removed from context`}}catch(t){throw console.error(`Failed to remove documents from context ${e}:`,t),t}}async function A(e,t,i,a){try{let a=Array.isArray(t)?t:[t],o=new URLSearchParams,s=`${n.contexts}/${e}/documents${o.toString()?`?${o.toString()}`:``}`;return await r.delete(b(s,i),{body:JSON.stringify(a),headers:{"Content-Type":`application/json`}})}catch(t){throw console.error(`Failed to delete documents from context ${e}:`,t),t}}async function j(e,t,i,a){try{let o=Array.isArray(i)?i:[i];return await r.post(b(`${n.contexts}/${e}/documents`,a),{documentIds:o,context:t}),!0}catch(e){throw console.error(`Failed to paste documents to context path ${t}:`,e),e}}async function M(e,t,i=!0){return await r.post(`${n.contexts}/${e}/tree/paths`,{path:t,autoCreateLayers:i})??!0}async function N(e,t,i=!1){let a=new URLSearchParams({path:t,recursive:i.toString()});return await r.delete(`${n.contexts}/${e}/tree/paths?${a}`)??!0}async function P(e,t,i){return await r.patch(`${n.contexts}/${e}/tree/paths`,{path:t,...i})??!0}async function F(e,t,i,a=!1,o={}){return await r.post(`${n.contexts}/${e}/tree/paths/move`,{from:t,to:i,recursive:a,...o.mergeDown?{mergeDown:!0}:{}})??!0}async function I(e,t){return await r.post(`${n.contexts}/${e}/tree/paths/merge-down`,{path:t})}async function L(e,t){return await r.post(`${n.contexts}/${e}/tree/paths/subtract-down`,{path:t})}async function R(e,t,i,a=!1){return await r.post(`${n.contexts}/${e}/tree/paths/copy`,{from:t,to:i,recursive:a})??!0}async function re(e,t,i){return await r.post(`${n.contexts}/${e}/tree/layers/merge`,{layerId:t,targetLayers:i})}async function z(e,t,i){return await r.post(`${n.contexts}/${e}/tree/layers/subtract`,{layerId:t,targetLayers:i})}async function B(e,t,i){try{let a=Array.isArray(i)?i:[i];return await r.post(`${n.workspaces}/${e}/documents`,{documents:a,treeType:`context`,context:t}),!0}catch(e){throw console.error(`Failed to import documents to context path ${t}:`,e),e}}async function V(e,t,i=[]){try{let a=Array.isArray(t)?t:[t],o=await r.post(`${n.contexts}/${e}/documents`,{documents:a,features:i});return Array.isArray(o)?o:[]}catch(t){throw console.error(`Failed to insert documents into context ${e}:`,t),t}}function H(){let{state:e}=h(),{activeContextType:t,activeContextId:n,activeWorkspaceName:r,activeTreeName:i,activeContextPath:a}=e;return(0,u.useMemo)(()=>t===`context`&&n?{mode:`context`,contextId:n}:r&&a?{mode:`workspace`,workspaceName:r,path:a,treeName:i||`context`,treeType:i===`directory`||i===`backends`?`directory`:`context`}:null,[t,n,r,i,a])}var U=new Map,W=15e3;function G(e){let t=U.get(e);if(t&&Date.now()-t.at<W)return t.promise;let n=a(e);return n.catch(()=>U.delete(e)),U.set(e,{at:Date.now(),promise:n}),n}function K(e){e?.mode===`workspace`&&window.dispatchEvent(new CustomEvent(`workspace:documents:refresh`,{detail:{workspaceName:e.workspaceName,treeName:e.treeName,path:e.path}}))}async function q(e,t,n={}){if(!e)throw Error(`No active workspace or context to add to`);if(e.mode===`workspace`){if(e.treeName===`backends`)throw Error(`Backend folders accept files, not database-only documents`);let r=e.treeType;try{let t=(await G(e.workspaceName)).find(t=>t?.name===e.treeName||t?.id===e.treeName);(t?.type===`directory`||t?.type===`context`)&&(r=t.type)}catch{}let i=await c(e.workspaceName,e.path,t,e.treeName,r);return i.length&&n.refresh!==!1&&K(e),i}return V(e.contextId,t)}async function J(e){if(!e)throw Error(`No active workspace or context to add to`);if(e.mode===`workspace`)return{workspaceName:e.workspaceName,path:e.path,treeName:e.treeName,treeType:e.treeType};let t=await x(e.contextId),n=t.workspaceName||t.workspaceId;if(!n)throw Error(`Context has no bound workspace`);return{workspaceName:n,path:t.path||`/`,treeName:t.treeId||`context`,treeType:`context`}}async function Y(e,t){if(!e)throw Error(`No active workspace or context to add to`);if(e.mode===`workspace`){let n=await o(e.workspaceName,e.path,t,e.treeName,e.treeType);return n&&window.dispatchEvent(new CustomEvent(`workspace:documents:refresh`,{detail:{workspaceName:e.workspaceName,treeName:e.treeName,path:e.path}})),n}let n=await x(e.contextId);return j(e.contextId,n.path||`/`,t)}function X(e){return e?e.mode===`context`?`Adds to the current context`:`Adds to ${e.path===`/`?`/`:e.path}`:`No destination. Open a workspace path or a context first`}async function Z(e,t){return f(t,await s(e))}function ie(e){let t=e?.mode===`workspace`&&e.treeName===`backends`,n=t?e.workspaceName:``,r=t?e.path:``,i=`${n}\0${r}`,[a,o]=(0,u.useState)(null);return(0,u.useEffect)(()=>{if(!t)return;let e=!1;return Z(n,r).then(t=>{e||o({key:i,destination:t})}).catch(t=>{e||o({key:i,error:t instanceof Error?t.message:`Unable to load backend`})}),()=>{e=!0}},[t,n,r,i]),{isBackend:t,loading:t&&a?.key!==i,destination:a?.key===i?a.destination:void 0,error:a?.key===i?a.error:void 0}}var ae=33554432,Q=8388608,oe=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),$=class{h=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);block=new Uint8Array(64);blockLen=0;bytesTotal=0;w=new Uint32Array(64);update(e){this.bytesTotal+=e.length;let t=0;if(this.blockLen>0){let n=64-this.blockLen,r=Math.min(n,e.length);this.block.set(e.subarray(0,r),this.blockLen),this.blockLen+=r,t=r,this.blockLen===64&&(this.compress(this.block,0),this.blockLen=0)}for(;t+64<=e.length;)this.compress(e,t),t+=64;t<e.length&&(this.block.set(e.subarray(t),0),this.blockLen=e.length-t)}digestHex(){let e=this.bytesTotal*8,t=new Uint8Array((this.blockLen<56?64:128)-this.blockLen);t[0]=128;let n=new DataView(t.buffer);n.setUint32(t.length-8,Math.floor(e/4294967296),!1),n.setUint32(t.length-4,e>>>0,!1),this.update(t);let r=``;for(let e=0;e<8;e++)r+=this.h[e].toString(16).padStart(8,`0`);return r}compress(e,t){let n=this.w;for(let r=0;r<16;r++){let i=t+r*4;n[r]=e[i]<<24|e[i+1]<<16|e[i+2]<<8|e[i+3]}for(let e=16;e<64;e++){let t=n[e-15],r=n[e-2],i=(t>>>7|t<<25)^(t>>>18|t<<14)^t>>>3,a=(r>>>17|r<<15)^(r>>>19|r<<13)^r>>>10;n[e]=n[e-16]+i+n[e-7]+a>>>0}let r=this.h,i=r[0],a=r[1],o=r[2],s=r[3],c=r[4],l=r[5],u=r[6],d=r[7];for(let e=0;e<64;e++){let t=(c>>>6|c<<26)^(c>>>11|c<<21)^(c>>>25|c<<7),r=c&l^~c&u,f=d+t+r+oe[e]+n[e]>>>0,p=((i>>>2|i<<30)^(i>>>13|i<<19)^(i>>>22|i<<10))+(i&a^i&o^a&o)>>>0;d=u,u=l,l=c,c=s+f>>>0,s=o,o=a,a=i,i=f+p>>>0}r[0]=r[0]+i>>>0,r[1]=r[1]+a>>>0,r[2]=r[2]+o>>>0,r[3]=r[3]+s>>>0,r[4]=r[4]+c>>>0,r[5]=r[5]+l>>>0,r[6]=r[6]+u>>>0,r[7]=r[7]+d>>>0}};function se(e){return Array.from(new Uint8Array(e),e=>e.toString(16).padStart(2,`0`)).join(``)}async function ce(e,t){if(e.size<=ae&&crypto?.subtle){let n=await crypto.subtle.digest(`SHA-256`,await e.arrayBuffer());return t?.(1),se(n)}let n=new $;for(let r=0;r<e.size;r+=Q){let i=await e.slice(r,r+Q).arrayBuffer();n.update(new Uint8Array(i)),t?.(Math.min(1,(r+i.byteLength)/e.size))}return n.digestHex()}async function le(e){let t=new TextEncoder().encode(e),n=await crypto.subtle.digest(`SHA-256`,t);return[...new Uint8Array(n)].map(e=>e.toString(16).padStart(2,`0`)).join(``)}export{D as A,g as B,re as C,ee as D,j as E,ne as F,f as H,_ as I,v as L,L as M,te as N,N as O,P,m as R,y as S,F as T,p as V,O as _,K as a,M as b,q as c,R as d,S as f,w as g,x as h,Y as i,z as j,k,H as l,A as m,le as n,Z as o,C as p,X as r,J as s,ce as t,ie as u,E as v,I as w,T as x,B as y,h as z};
|