@vellumai/web 0.8.9 → 0.8.10
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/{account-page-DLWgiDpL.js → account-page-u7ke_44I.js} +1 -1
- package/dist/assets/{add-credits-modal-KR3l-hlL.js → add-credits-modal-CjJBB_aT.js} +1 -1
- package/dist/assets/{advanced-page-CM1prrIX.js → advanced-page-BybHh4NW.js} +1 -1
- package/dist/assets/{ai-page-DfYw7V-1.js → ai-page-BjCnCImt.js} +1 -1
- package/dist/assets/{archive-page-C3-LAH2o.js → archive-page-Bn06aNEy.js} +1 -1
- package/dist/assets/{assistant-status-panel-AFf9Mjwp.js → assistant-status-panel-ClxIYpxL.js} +1 -1
- package/dist/assets/{billing-page-o68CnS02.js → billing-page-XLpuMBWG.js} +1 -1
- package/dist/assets/{command-palette-BcHAzecz.js → command-palette-DFTMiCCM.js} +1 -1
- package/dist/assets/{community-page-BCX3CsOx.js → community-page-Dt39tUwD.js} +1 -1
- package/dist/assets/{connect-page-DXB8Xkpw.js → connect-page-Csfk5gxJ.js} +1 -1
- package/dist/assets/{contacts-page-route-8pMuZN4b.js → contacts-page-route-CAfebyIn.js} +1 -1
- package/dist/assets/{debug-page-CS2bRZp9.js → debug-page-DuVq7WGa.js} +1 -1
- package/dist/assets/{deploy-dialogs-EImApd6S.js → deploy-dialogs-BjBUBG5o.js} +1 -1
- package/dist/assets/{developer-page-C6j4GZcn.js → developer-page-BtLYaMJ4.js} +1 -1
- package/dist/assets/{devices-page-C1id1sIt.js → devices-page-Dr0ybqr8.js} +1 -1
- package/dist/assets/{document-viewer-page-D-zkJQlm.js → document-viewer-page-DZuzK5Y4.js} +1 -1
- package/dist/assets/{earn-credits-modal-RXLM_09P.js → earn-credits-modal-BJXnNvv7.js} +1 -1
- package/dist/assets/{emails-page-BFlPmeFT.js → emails-page-ChNIsyxX.js} +1 -1
- package/dist/assets/{general-page-q3bvwcHU.js → general-page-Joeygf_N.js} +1 -1
- package/dist/assets/{hatching-screen-6TxMgPxR.js → hatching-screen-B4BX6YJm.js} +1 -1
- package/dist/assets/{home-page-route-mDiWda9f.js → home-page-route-CmVT_FWM.js} +1 -1
- package/dist/assets/{hosting-screen-XKK-VeRo.js → hosting-screen-B-KyyLUm.js} +1 -1
- package/dist/assets/{identity-page-route-BCiHzwmk.js → identity-page-route-Dl65N_cj.js} +1 -1
- package/dist/assets/{index-BjEJFZTJ.js → index-DGojzQtP.js} +20 -20
- package/dist/assets/{inspect-page-BrUzgvle.js → inspect-page-DGmhgzNU.js} +1 -1
- package/dist/assets/{install-Uj6CrGld.js → install-DzcS2hVv.js} +1 -1
- package/dist/assets/{integrations-page-BL9LXHFe.js → integrations-page-D_TaVfYl.js} +1 -1
- package/dist/assets/{intelligence-layout-BwYGHEw7.js → intelligence-layout-DZ_lXLTB.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-QHFTyWOo.js → keyboard-shortcuts-page-CwEtke1e.js} +1 -1
- package/dist/assets/{library-detail-page-nUyEDHke.js → library-detail-page-DP_uvWHQ.js} +1 -1
- package/dist/assets/{library-page-B0AzCNkJ.js → library-page-D4Ay8lOK.js} +1 -1
- package/dist/assets/{login-flow-Bi4ujzeb.js → login-flow-BZiMiMrf.js} +1 -1
- package/dist/assets/{login-page-BOH-K9Pj.js → login-page-C-lBEtiR.js} +1 -1
- package/dist/assets/{logout-page-B1QXMyiH.js → logout-page-Dd8xdb39.js} +1 -1
- package/dist/assets/{logs-layout-zcrIEQRy.js → logs-layout-C2Qs3fI-.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CeZ4XMd2.js → memory-router-playground-page-D9miza7X.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-BjPgVWjw.js → mobile-sidebar-drawer-DrrMr6Xw.js} +1 -1
- package/dist/assets/{notifications-page-omwlGRbj.js → notifications-page-aakfxDxE.js} +1 -1
- package/dist/assets/{oauth-complete-page--ojS1AzN.js → oauth-complete-page-DAbPV3TG.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-D5wVrngS.js → oauth-popup-complete-page-DyEV43x9.js} +1 -1
- package/dist/assets/{plugin-detail-page-Co_JFwRa.js → plugin-detail-page-cM71JV79.js} +1 -1
- package/dist/assets/{plugins-page-D7VpzRFc.js → plugins-page-BbOw3iEZ.js} +1 -1
- package/dist/assets/{pre-chat-flow-BoePpEU7.js → pre-chat-flow-DYa4Tg43.js} +1 -1
- package/dist/assets/{privacy-page-DpKZ9VJG.js → privacy-page-qfuUT3ZP.js} +1 -1
- package/dist/assets/{privacy-screen-CEsX-1V3.js → privacy-screen-Iqyv6zx6.js} +1 -1
- package/dist/assets/{provider-callback-page-DDEEkkDM.js → provider-callback-page-CxHnf-wJ.js} +1 -1
- package/dist/assets/{provider-signup-page-CZqSVAQl.js → provider-signup-page-vOry8yXY.js} +1 -1
- package/dist/assets/{review-terms-screen-CYFxXWmR.js → review-terms-screen-DDGg4T4h.js} +1 -1
- package/dist/assets/{schedules-page-Dk-YbWK3.js → schedules-page-C6MSsxSW.js} +1 -1
- package/dist/assets/{select-assistant-screen-CYpMf074.js → select-assistant-screen-CNC2S4Bq.js} +1 -1
- package/dist/assets/{settings-layout-C_sqrv5S.js → settings-layout-BXQK9h6V.js} +1 -1
- package/dist/assets/{share-feedback-modal-Cg8gci5A.js → share-feedback-modal-Cd3EJn8y.js} +1 -1
- package/dist/assets/{sidebar-tree-Cme65q7r.js → sidebar-tree-CPFfB2hS.js} +1 -1
- package/dist/assets/{signup-page-BBM_CboU.js → signup-page-CBvfJsht.js} +1 -1
- package/dist/assets/{skills-page-J6mZv9bN.js → skills-page-CS2tWjQe.js} +1 -1
- package/dist/assets/{sounds-page-DpRhAAJv.js → sounds-page-C4u0pcg-.js} +1 -1
- package/dist/assets/{step-indicator-dots-Dmj2aMuo.js → step-indicator-dots-C_NCj5FH.js} +1 -1
- package/dist/assets/{subagent-detail-panel-Dq-GDI61.js → subagent-detail-panel-0yehIKO8.js} +1 -1
- package/dist/assets/{system-events-page-DNln669W.js → system-events-page-Dw7NwEcP.js} +1 -1
- package/dist/assets/{tiptap-document-editor-DucA37Km.js → tiptap-document-editor-pNgheL8Q.js} +1 -1
- package/dist/assets/{tool-detail-panel-CwQTuANT.js → tool-detail-panel-B5SgZOMP.js} +1 -1
- package/dist/assets/{trace-page-CKTCZonQ.js → trace-page-C7tNAZHn.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-BsW23ioD.js → upgrade-cancel-page-ByiEITdu.js} +1 -1
- package/dist/assets/{upgrade-success-page-DqSBwFJv.js → upgrade-success-page-CLOlaEfu.js} +1 -1
- package/dist/assets/{usage-page-D6cPGTNn.js → usage-page-Drq5qPw2.js} +1 -1
- package/dist/assets/{use-current-platform-assistant-Cu95G65M.js → use-current-platform-assistant-TpNI2OQf.js} +1 -1
- package/dist/assets/{use-oauth-complete-deep-link-listener-BQZGv8sr.js → use-oauth-complete-deep-link-listener-aRDKwx8y.js} +1 -1
- package/dist/assets/{use-onboarding-login-Cd72-1Qe.js → use-onboarding-login-CWKxGXhS.js} +1 -1
- package/dist/assets/{voice-page-D8IZifkA.js → voice-page-DiYRh5kS.js} +1 -1
- package/dist/assets/{weather-forecast-display-DgqpUX3a.js → weather-forecast-display-DV6RskYo.js} +1 -1
- package/dist/assets/{welcome-screen-B2tizoBp.js → welcome-screen-lzsZvDsg.js} +1 -1
- package/dist/assets/{workspace-page-Bu8beso_.js → workspace-page-DPhpvY0s.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{i as e,o as t,t as n}from"./chunk-jRWAZmH_.js";import{t as r}from"./react-DJZBPgpf.js";import{d as i,h as a,p as o,t as s}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as c}from"./QueryClientProvider-DNHWXaGq.js";import{t as l}from"./useQuery-D2zf6Uhu.js";import{t as u}from"./jsx-runtime-CVSDxk6A.js";import{t as d}from"./queryOptions-BtNi-_9H.js";import{t as f}from"./button-DdEh-9f_.js";import{t as p}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{n as m}from"./panel-item-FzMfzMJA.js";import{n as h}from"./stat-square-sRJmexc-.js";import{t as g}from"./chevron-right-zTNPbA1m.js";import{I as _,Rt as v,Ut as y,W as b}from"./sdk.gen-AJllUeDf.js";import{n as x,r as S}from"./api-errors-ChauV4ed.js";import{a as C,n as w}from"./auth-store-CiQCAKS1.js";import{g as T}from"./api-DEEx3e9R.js";import{i as E}from"./routes-Dk5Qeryt.js";import{t as D}from"./misc-MEUnNRwX.js";import{Ja as O,Kn as k,Wa as A,bo as j,do as M,ea as N,ha as P,ji as F,lo as I,po as L,qn as R,wn as z,za as B}from"./index-
|
|
1
|
+
import{i as e,o as t,t as n}from"./chunk-jRWAZmH_.js";import{t as r}from"./react-DJZBPgpf.js";import{d as i,h as a,p as o,t as s}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as c}from"./QueryClientProvider-DNHWXaGq.js";import{t as l}from"./useQuery-D2zf6Uhu.js";import{t as u}from"./jsx-runtime-CVSDxk6A.js";import{t as d}from"./queryOptions-BtNi-_9H.js";import{t as f}from"./button-DdEh-9f_.js";import{t as p}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{n as m}from"./panel-item-FzMfzMJA.js";import{n as h}from"./stat-square-sRJmexc-.js";import{t as g}from"./chevron-right-zTNPbA1m.js";import{I as _,Rt as v,Ut as y,W as b}from"./sdk.gen-AJllUeDf.js";import{n as x,r as S}from"./api-errors-ChauV4ed.js";import{a as C,n as w}from"./auth-store-CiQCAKS1.js";import{g as T}from"./api-DEEx3e9R.js";import{i as E}from"./routes-Dk5Qeryt.js";import{t as D}from"./misc-MEUnNRwX.js";import{Ja as O,Kn as k,Wa as A,bo as j,do as M,ea as N,ha as P,ji as F,lo as I,po as L,qn as R,wn as z,za as B}from"./index-DGojzQtP.js";import{t as V}from"./use-active-assistant-id-BIhArlF_.js";import{t as H}from"./file-markdown-DX5x9ziL.js";var U=t(r(),1),W=class extends Error{status;constructor(e,t){super(t),this.name=`LlmContextRequestError`,this.status=e}};function ee(e,t,n){let r=n||void 0;return d({queryKey:[`assistants`,e,`llm-context`,r?{scope:`message`,messageId:r}:{scope:`conversation`,conversationId:t}],queryFn:async({signal:n})=>{if(!e)throw new W(0,`Missing assistantId`);if(r)return await ie(e,r,n);if(!t)throw new W(0,`Missing conversationId`);return await re(e,t,n)},enabled:!!(e&&(r||t)),staleTime:3e4})}function te(e,t,n){return l(ee(e,t,n))}function ne(e,t){return l({queryKey:[`assistants`,e,`conversations`,t,`messages`,`for-inspector`],queryFn:async()=>!e||!t?[]:(await k(e,t))?.messages??[],enabled:!!(e&&t),staleTime:3e4})}async function re(e,t,n){let{data:r,error:i,response:a}=await b({path:{assistant_id:e},query:{conversationId:t},signal:n,throwOnError:!1});if(x(a,i,`Failed to fetch LLM context`),a.status===404)return await ae(e,t,n);if(!a.ok){let e=S(i,a,`Failed to load LLM context`);throw new W(a.status,e)}if(!r)throw new W(a.status,`Empty response from LLM context endpoint`);return r}async function ie(e,t,n){let{data:r,error:i,response:a}=await y({path:{assistant_id:e,id:t},signal:n,throwOnError:!1});if(x(a,i,`Failed to fetch message LLM context`),!a.ok){let e=S(i,a,`Failed to load LLM context`);throw new W(a.status,e)}if(!r)throw new W(a.status,`Empty response from message LLM context endpoint`);return r}async function ae(e,t,n){let r=(await k(e,t))?.messages??[],i=[],a=new Set;for(let e of r){let t=e.id;!t||a.has(t)||(a.add(t),i.push(t))}if(i.length===0)return{conversationId:t,conversationKind:`user`,conversationTotalEstimatedCostUsd:null,logs:[],memoryRecall:null,memoryV2Activation:null};let o=await Promise.all(i.map(t=>oe(e,t,n))),s=`user`,c=null,l=null,u=null,d=new Set,f=[];for(let e of o)if(e){e.conversationKind&&(s=e.conversationKind),e.conversationTotalEstimatedCostUsd!=null&&(c=e.conversationTotalEstimatedCostUsd),e.memoryRecall&&(l=e.memoryRecall),e.memoryV2Activation&&(u=e.memoryV2Activation);for(let t of e.logs??[])d.has(t.id)||(d.add(t.id),f.push(t))}return f.sort((e,t)=>e.createdAt-t.createdAt),{conversationId:t,conversationKind:s,conversationTotalEstimatedCostUsd:c,logs:f,memoryRecall:l,memoryV2Activation:u}}async function oe(e,t,n){let{data:r,response:i}=await y({path:{assistant_id:e,id:t},signal:n,throwOnError:!1});return!i||!i.ok||!r?null:r}var se=t(n(((t,n)=>{(function(e){typeof t==`object`&&n!==void 0?n.exports=e():typeof define==`function`&&define.amd?define([],e):(typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:this).JSZip=e()})(function(){return function t(n,r,i){function a(s,c){if(!r[s]){if(!n[s]){var l=typeof e==`function`&&e;if(!c&&l)return l(s,!0);if(o)return o(s,!0);var u=Error(`Cannot find module '`+s+`'`);throw u.code=`MODULE_NOT_FOUND`,u}var d=r[s]={exports:{}};n[s][0].call(d.exports,function(e){var t=n[s][1][e];return a(t||e)},d,d.exports,t,n,r,i)}return r[s].exports}for(var o=typeof e==`function`&&e,s=0;s<i.length;s++)a(i[s]);return a}({1:[function(e,t,n){var r=e(`./utils`),i=e(`./support`),a=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=`;n.encode=function(e){for(var t,n,i,o,s,c,l,u=[],d=0,f=e.length,p=f,m=r.getTypeOf(e)!==`string`;d<e.length;)p=f-d,i=m?(t=e[d++],n=d<f?e[d++]:0,d<f?e[d++]:0):(t=e.charCodeAt(d++),n=d<f?e.charCodeAt(d++):0,d<f?e.charCodeAt(d++):0),o=t>>2,s=(3&t)<<4|n>>4,c=1<p?(15&n)<<2|i>>6:64,l=2<p?63&i:64,u.push(a.charAt(o)+a.charAt(s)+a.charAt(c)+a.charAt(l));return u.join(``)},n.decode=function(e){var t,n,r,o,s,c,l=0,u=0,d=`data:`;if(e.substr(0,d.length)===d)throw Error(`Invalid base64 input, it looks like a data url.`);var f,p=3*(e=e.replace(/[^A-Za-z0-9+/=]/g,``)).length/4;if(e.charAt(e.length-1)===a.charAt(64)&&p--,e.charAt(e.length-2)===a.charAt(64)&&p--,p%1!=0)throw Error(`Invalid base64 input, bad content length.`);for(f=i.uint8array?new Uint8Array(0|p):Array(0|p);l<e.length;)t=a.indexOf(e.charAt(l++))<<2|(o=a.indexOf(e.charAt(l++)))>>4,n=(15&o)<<4|(s=a.indexOf(e.charAt(l++)))>>2,r=(3&s)<<6|(c=a.indexOf(e.charAt(l++))),f[u++]=t,s!==64&&(f[u++]=n),c!==64&&(f[u++]=r);return f}},{"./support":30,"./utils":32}],2:[function(e,t,n){var r=e(`./external`),i=e(`./stream/DataWorker`),a=e(`./stream/Crc32Probe`),o=e(`./stream/DataLengthProbe`);function s(e,t,n,r,i){this.compressedSize=e,this.uncompressedSize=t,this.crc32=n,this.compression=r,this.compressedContent=i}s.prototype={getContentWorker:function(){var e=new i(r.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new o(`data_length`)),t=this;return e.on(`end`,function(){if(this.streamInfo.data_length!==t.uncompressedSize)throw Error(`Bug : uncompressed data size mismatch`)}),e},getCompressedWorker:function(){return new i(r.Promise.resolve(this.compressedContent)).withStreamInfo(`compressedSize`,this.compressedSize).withStreamInfo(`uncompressedSize`,this.uncompressedSize).withStreamInfo(`crc32`,this.crc32).withStreamInfo(`compression`,this.compression)}},s.createWorkerFrom=function(e,t,n){return e.pipe(new a).pipe(new o(`uncompressedSize`)).pipe(t.compressWorker(n)).pipe(new o(`compressedSize`)).withStreamInfo(`compression`,t)},t.exports=s},{"./external":6,"./stream/Crc32Probe":25,"./stream/DataLengthProbe":26,"./stream/DataWorker":27}],3:[function(e,t,n){var r=e(`./stream/GenericWorker`);n.STORE={magic:`\0\0`,compressWorker:function(){return new r(`STORE compression`)},uncompressWorker:function(){return new r(`STORE decompression`)}},n.DEFLATE=e(`./flate`)},{"./flate":7,"./stream/GenericWorker":28}],4:[function(e,t,n){var r=e(`./utils`),i=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t){return e!==void 0&&e.length?r.getTypeOf(e)===`string`?function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t.charCodeAt(s))];return-1^e}(0|t,e,e.length,0):function(e,t,n,r){var a=i,o=r+n;e^=-1;for(var s=r;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}(0|t,e,e.length,0):0}},{"./utils":32}],5:[function(e,t,n){n.base64=!1,n.binary=!1,n.dir=!1,n.createFolders=!0,n.date=null,n.compression=null,n.compressionOptions=null,n.comment=null,n.unixPermissions=null,n.dosPermissions=null},{}],6:[function(e,t,n){var r=null;r=typeof Promise<`u`?Promise:e(`lie`),t.exports={Promise:r}},{lie:37}],7:[function(e,t,n){var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Uint32Array<`u`,i=e(`pako`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=r?`uint8array`:`array`;function c(e,t){o.call(this,`FlateWorker/`+e),this._pako=null,this._pakoAction=e,this._pakoOptions=t,this.meta={}}n.magic=`\b\0`,a.inherits(c,o),c.prototype.processChunk=function(e){this.meta=e.meta,this._pako===null&&this._createPako(),this._pako.push(a.transformTo(s,e.data),!1)},c.prototype.flush=function(){o.prototype.flush.call(this),this._pako===null&&this._createPako(),this._pako.push([],!0)},c.prototype.cleanUp=function(){o.prototype.cleanUp.call(this),this._pako=null},c.prototype._createPako=function(){this._pako=new i[this._pakoAction]({raw:!0,level:this._pakoOptions.level||-1});var e=this;this._pako.onData=function(t){e.push({data:t,meta:e.meta})}},n.compressWorker=function(e){return new c(`Deflate`,e)},n.uncompressWorker=function(){return new c(`Inflate`,{})}},{"./stream/GenericWorker":28,"./utils":32,pako:38}],8:[function(e,t,n){function r(e,t){var n,r=``;for(n=0;n<t;n++)r+=String.fromCharCode(255&e),e>>>=8;return r}function i(e,t,n,i,o,u){var d,f,p=e.file,m=e.compression,h=u!==s.utf8encode,g=a.transformTo(`string`,u(p.name)),_=a.transformTo(`string`,s.utf8encode(p.name)),v=p.comment,y=a.transformTo(`string`,u(v)),b=a.transformTo(`string`,s.utf8encode(v)),x=_.length!==p.name.length,S=b.length!==v.length,C=``,w=``,T=``,E=p.dir,D=p.date,O={crc32:0,compressedSize:0,uncompressedSize:0};t&&!n||(O.crc32=e.crc32,O.compressedSize=e.compressedSize,O.uncompressedSize=e.uncompressedSize);var k=0;t&&(k|=8),h||!x&&!S||(k|=2048);var A=0,j=0;E&&(A|=16),o===`UNIX`?(j=798,A|=function(e,t){var n=e;return e||(n=t?16893:33204),(65535&n)<<16}(p.unixPermissions,E)):(j=20,A|=function(e){return 63&(e||0)}(p.dosPermissions)),d=D.getUTCHours(),d<<=6,d|=D.getUTCMinutes(),d<<=5,d|=D.getUTCSeconds()/2,f=D.getUTCFullYear()-1980,f<<=4,f|=D.getUTCMonth()+1,f<<=5,f|=D.getUTCDate(),x&&(w=r(1,1)+r(c(g),4)+_,C+=`up`+r(w.length,2)+w),S&&(T=r(1,1)+r(c(y),4)+b,C+=`uc`+r(T.length,2)+T);var M=``;return M+=`
|
|
2
2
|
\0`,M+=r(k,2),M+=m.magic,M+=r(d,2),M+=r(f,2),M+=r(O.crc32,4),M+=r(O.compressedSize,4),M+=r(O.uncompressedSize,4),M+=r(g.length,2),M+=r(C.length,2),{fileRecord:l.LOCAL_FILE_HEADER+M+g+C,dirRecord:l.CENTRAL_FILE_HEADER+r(j,2)+M+r(y.length,2)+`\0\0\0\0`+r(A,4)+r(i,4)+g+C+y}}var a=e(`../utils`),o=e(`../stream/GenericWorker`),s=e(`../utf8`),c=e(`../crc32`),l=e(`../signature`);function u(e,t,n,r){o.call(this,`ZipFileWorker`),this.bytesWritten=0,this.zipComment=t,this.zipPlatform=n,this.encodeFileName=r,this.streamFiles=e,this.accumulate=!1,this.contentBuffer=[],this.dirRecords=[],this.currentSourceOffset=0,this.entriesCount=0,this.currentFile=null,this._sources=[]}a.inherits(u,o),u.prototype.push=function(e){var t=e.meta.percent||0,n=this.entriesCount,r=this._sources.length;this.accumulate?this.contentBuffer.push(e):(this.bytesWritten+=e.data.length,o.prototype.push.call(this,{data:e.data,meta:{currentFile:this.currentFile,percent:n?(t+100*(n-r-1))/n:100}}))},u.prototype.openedSource=function(e){this.currentSourceOffset=this.bytesWritten,this.currentFile=e.file.name;var t=this.streamFiles&&!e.file.dir;if(t){var n=i(e,t,!1,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);this.push({data:n.fileRecord,meta:{percent:0}})}else this.accumulate=!0},u.prototype.closedSource=function(e){this.accumulate=!1;var t=this.streamFiles&&!e.file.dir,n=i(e,t,!0,this.currentSourceOffset,this.zipPlatform,this.encodeFileName);if(this.dirRecords.push(n.dirRecord),t)this.push({data:function(e){return l.DATA_DESCRIPTOR+r(e.crc32,4)+r(e.compressedSize,4)+r(e.uncompressedSize,4)}(e),meta:{percent:100}});else for(this.push({data:n.fileRecord,meta:{percent:0}});this.contentBuffer.length;)this.push(this.contentBuffer.shift());this.currentFile=null},u.prototype.flush=function(){for(var e=this.bytesWritten,t=0;t<this.dirRecords.length;t++)this.push({data:this.dirRecords[t],meta:{percent:100}});var n=this.bytesWritten-e,i=function(e,t,n,i,o){var s=a.transformTo(`string`,o(i));return l.CENTRAL_DIRECTORY_END+`\0\0\0\0`+r(e,2)+r(e,2)+r(t,4)+r(n,4)+r(s.length,2)+s}(this.dirRecords.length,n,e,this.zipComment,this.encodeFileName);this.push({data:i,meta:{percent:100}})},u.prototype.prepareNextSource=function(){this.previous=this._sources.shift(),this.openedSource(this.previous.streamInfo),this.isPaused?this.previous.pause():this.previous.resume()},u.prototype.registerPrevious=function(e){this._sources.push(e);var t=this;return e.on(`data`,function(e){t.processChunk(e)}),e.on(`end`,function(){t.closedSource(t.previous.streamInfo),t._sources.length?t.prepareNextSource():t.end()}),e.on(`error`,function(e){t.error(e)}),this},u.prototype.resume=function(){return!!o.prototype.resume.call(this)&&(!this.previous&&this._sources.length?(this.prepareNextSource(),!0):this.previous||this._sources.length||this.generatedError?void 0:(this.end(),!0))},u.prototype.error=function(e){var t=this._sources;if(!o.prototype.error.call(this,e))return!1;for(var n=0;n<t.length;n++)try{t[n].error(e)}catch{}return!0},u.prototype.lock=function(){o.prototype.lock.call(this);for(var e=this._sources,t=0;t<e.length;t++)e[t].lock()},t.exports=u},{"../crc32":4,"../signature":23,"../stream/GenericWorker":28,"../utf8":31,"../utils":32}],9:[function(e,t,n){var r=e(`../compressions`),i=e(`./ZipFileWorker`);n.generateWorker=function(e,t,n){var a=new i(t.streamFiles,n,t.platform,t.encodeFileName),o=0;try{e.forEach(function(e,n){o++;var i=function(e,t){var n=e||t,i=r[n];if(!i)throw Error(n+` is not a valid compression method !`);return i}(n.options.compression,t.compression),s=n.options.compressionOptions||t.compressionOptions||{},c=n.dir,l=n.date;n._compressWorker(i,s).withStreamInfo(`file`,{name:e,dir:c,date:l,comment:n.comment||``,unixPermissions:n.unixPermissions,dosPermissions:n.dosPermissions}).pipe(a)}),a.entriesCount=o}catch(e){a.error(e)}return a}},{"../compressions":3,"./ZipFileWorker":8}],10:[function(e,t,n){function r(){if(!(this instanceof r))return new r;if(arguments.length)throw Error(`The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.`);this.files=Object.create(null),this.comment=null,this.root=``,this.clone=function(){var e=new r;for(var t in this)typeof this[t]!=`function`&&(e[t]=this[t]);return e}}(r.prototype=e(`./object`)).loadAsync=e(`./load`),r.support=e(`./support`),r.defaults=e(`./defaults`),r.version=`3.10.1`,r.loadAsync=function(e,t){return new r().loadAsync(e,t)},r.external=e(`./external`),t.exports=r},{"./defaults":5,"./external":6,"./load":11,"./object":15,"./support":30}],11:[function(e,t,n){var r=e(`./utils`),i=e(`./external`),a=e(`./utf8`),o=e(`./zipEntries`),s=e(`./stream/Crc32Probe`),c=e(`./nodejsUtils`);function l(e){return new i.Promise(function(t,n){var r=e.decompressed.getContentWorker().pipe(new s);r.on(`error`,function(e){n(e)}).on(`end`,function(){r.streamInfo.crc32===e.decompressed.crc32?t():n(Error(`Corrupted zip : CRC32 mismatch`))}).resume()})}t.exports=function(e,t){var n=this;return t=r.extend(t||{},{base64:!1,checkCRC32:!1,optimizedBinaryString:!1,createFolders:!1,decodeFileName:a.utf8decode}),c.isNode&&c.isStream(e)?i.Promise.reject(Error(`JSZip can't accept a stream when loading a zip file.`)):r.prepareContent(`the loaded zip file`,e,!0,t.optimizedBinaryString,t.base64).then(function(e){var n=new o(t);return n.load(e),n}).then(function(e){var n=[i.Promise.resolve(e)],r=e.files;if(t.checkCRC32)for(var a=0;a<r.length;a++)n.push(l(r[a]));return i.Promise.all(n)}).then(function(e){for(var i=e.shift(),a=i.files,o=0;o<a.length;o++){var s=a[o],c=s.fileNameStr,l=r.resolve(s.fileNameStr);n.file(l,s.decompressed,{binary:!0,optimizedBinaryString:!0,date:s.date,dir:s.dir,comment:s.fileCommentStr.length?s.fileCommentStr:null,unixPermissions:s.unixPermissions,dosPermissions:s.dosPermissions,createFolders:t.createFolders}),s.dir||(n.file(l).unsafeOriginalName=c)}return i.zipComment.length&&(n.comment=i.zipComment),n})}},{"./external":6,"./nodejsUtils":14,"./stream/Crc32Probe":25,"./utf8":31,"./utils":32,"./zipEntries":33}],12:[function(e,t,n){var r=e(`../utils`),i=e(`../stream/GenericWorker`);function a(e,t){i.call(this,`Nodejs stream input adapter for `+e),this._upstreamEnded=!1,this._bindStream(t)}r.inherits(a,i),a.prototype._bindStream=function(e){var t=this;(this._stream=e).pause(),e.on(`data`,function(e){t.push({data:e,meta:{percent:0}})}).on(`error`,function(e){t.isPaused?this.generatedError=e:t.error(e)}).on(`end`,function(){t.isPaused?t._upstreamEnded=!0:t.end()})},a.prototype.pause=function(){return!!i.prototype.pause.call(this)&&(this._stream.pause(),!0)},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(this._upstreamEnded?this.end():this._stream.resume(),!0)},t.exports=a},{"../stream/GenericWorker":28,"../utils":32}],13:[function(e,t,n){var r=e(`readable-stream`).Readable;function i(e,t,n){r.call(this,t),this._helper=e;var i=this;e.on(`data`,function(e,t){i.push(e)||i._helper.pause(),n&&n(t)}).on(`error`,function(e){i.emit(`error`,e)}).on(`end`,function(){i.push(null)})}e(`../utils`).inherits(i,r),i.prototype._read=function(){this._helper.resume()},t.exports=i},{"../utils":32,"readable-stream":16}],14:[function(e,t,n){t.exports={isNode:typeof Buffer<`u`,newBufferFrom:function(e,t){if(Buffer.from&&Buffer.from!==Uint8Array.from)return Buffer.from(e,t);if(typeof e==`number`)throw Error(`The "data" argument must not be a number`);return new Buffer(e,t)},allocBuffer:function(e){if(Buffer.alloc)return Buffer.alloc(e);var t=new Buffer(e);return t.fill(0),t},isBuffer:function(e){return Buffer.isBuffer(e)},isStream:function(e){return e&&typeof e.on==`function`&&typeof e.pause==`function`&&typeof e.resume==`function`}}},{}],15:[function(e,t,n){function r(e,t,n){var r,i=a.getTypeOf(t),s=a.extend(n||{},c);s.date=s.date||new Date,s.compression!==null&&(s.compression=s.compression.toUpperCase()),typeof s.unixPermissions==`string`&&(s.unixPermissions=parseInt(s.unixPermissions,8)),s.unixPermissions&&16384&s.unixPermissions&&(s.dir=!0),s.dosPermissions&&16&s.dosPermissions&&(s.dir=!0),s.dir&&(e=h(e)),s.createFolders&&(r=m(e))&&g.call(this,r,!0);var d=i===`string`&&!1===s.binary&&!1===s.base64;n&&n.binary!==void 0||(s.binary=!d),(t instanceof l&&t.uncompressedSize===0||s.dir||!t||t.length===0)&&(s.base64=!1,s.binary=!0,t=``,s.compression=`STORE`,i=`string`);var _=null;_=t instanceof l||t instanceof o?t:f.isNode&&f.isStream(t)?new p(e,t):a.prepareContent(e,t,s.binary,s.optimizedBinaryString,s.base64);var v=new u(e,_,s);this.files[e]=v}var i=e(`./utf8`),a=e(`./utils`),o=e(`./stream/GenericWorker`),s=e(`./stream/StreamHelper`),c=e(`./defaults`),l=e(`./compressedObject`),u=e(`./zipObject`),d=e(`./generate`),f=e(`./nodejsUtils`),p=e(`./nodejs/NodejsStreamInputAdapter`),m=function(e){e.slice(-1)===`/`&&(e=e.substring(0,e.length-1));var t=e.lastIndexOf(`/`);return 0<t?e.substring(0,t):``},h=function(e){return e.slice(-1)!==`/`&&(e+=`/`),e},g=function(e,t){return t=t===void 0?c.createFolders:t,e=h(e),this.files[e]||r.call(this,e,null,{dir:!0,createFolders:t}),this.files[e]};function _(e){return Object.prototype.toString.call(e)===`[object RegExp]`}t.exports={load:function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},forEach:function(e){var t,n,r;for(t in this.files)r=this.files[t],(n=t.slice(this.root.length,t.length))&&t.slice(0,this.root.length)===this.root&&e(n,r)},filter:function(e){var t=[];return this.forEach(function(n,r){e(n,r)&&t.push(r)}),t},file:function(e,t,n){if(arguments.length!==1)return e=this.root+e,r.call(this,e,t,n),this;if(_(e)){var i=e;return this.filter(function(e,t){return!t.dir&&i.test(e)})}var a=this.files[this.root+e];return a&&!a.dir?a:null},folder:function(e){if(!e)return this;if(_(e))return this.filter(function(t,n){return n.dir&&e.test(t)});var t=this.root+e,n=g.call(this,t),r=this.clone();return r.root=n.name,r},remove:function(e){e=this.root+e;var t=this.files[e];if(t||=(e.slice(-1)!==`/`&&(e+=`/`),this.files[e]),t&&!t.dir)delete this.files[e];else for(var n=this.filter(function(t,n){return n.name.slice(0,e.length)===e}),r=0;r<n.length;r++)delete this.files[n[r].name];return this},generate:function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},generateInternalStream:function(e){var t,n={};try{if((n=a.extend(e||{},{streamFiles:!1,compression:`STORE`,compressionOptions:null,type:``,platform:`DOS`,comment:null,mimeType:`application/zip`,encodeFileName:i.utf8encode})).type=n.type.toLowerCase(),n.compression=n.compression.toUpperCase(),n.type===`binarystring`&&(n.type=`string`),!n.type)throw Error(`No output type specified.`);a.checkSupport(n.type),n.platform!==`darwin`&&n.platform!==`freebsd`&&n.platform!==`linux`&&n.platform!==`sunos`||(n.platform=`UNIX`),n.platform===`win32`&&(n.platform=`DOS`);var r=n.comment||this.comment||``;t=d.generateWorker(this,n,r)}catch(e){(t=new o(`error`)).error(e)}return new s(t,n.type||`string`,n.mimeType)},generateAsync:function(e,t){return this.generateInternalStream(e).accumulate(t)},generateNodeStream:function(e,t){return(e||={}).type||(e.type=`nodebuffer`),this.generateInternalStream(e).toNodejsStream(t)}}},{"./compressedObject":2,"./defaults":5,"./generate":9,"./nodejs/NodejsStreamInputAdapter":12,"./nodejsUtils":14,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31,"./utils":32,"./zipObject":35}],16:[function(e,t,n){t.exports=e(`stream`)},{stream:void 0}],17:[function(e,t,n){var r=e(`./DataReader`);function i(e){r.call(this,e);for(var t=0;t<this.data.length;t++)e[t]=255&e[t]}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data[this.zero+e]},i.prototype.lastIndexOfSignature=function(e){for(var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),a=this.length-4;0<=a;--a)if(this.data[a]===t&&this.data[a+1]===n&&this.data[a+2]===r&&this.data[a+3]===i)return a-this.zero;return-1},i.prototype.readAndCheckSignature=function(e){var t=e.charCodeAt(0),n=e.charCodeAt(1),r=e.charCodeAt(2),i=e.charCodeAt(3),a=this.readData(4);return t===a[0]&&n===a[1]&&r===a[2]&&i===a[3]},i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return[];var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],18:[function(e,t,n){var r=e(`../utils`);function i(e){this.data=e,this.length=e.length,this.index=0,this.zero=0}i.prototype={checkOffset:function(e){this.checkIndex(this.index+e)},checkIndex:function(e){if(this.length<this.zero+e||e<0)throw Error(`End of data reached (data length = `+this.length+`, asked index = `+e+`). Corrupted zip ?`)},setIndex:function(e){this.checkIndex(e),this.index=e},skip:function(e){this.setIndex(this.index+e)},byteAt:function(){},readInt:function(e){var t,n=0;for(this.checkOffset(e),t=this.index+e-1;t>=this.index;t--)n=(n<<8)+this.byteAt(t);return this.index+=e,n},readString:function(e){return r.transformTo(`string`,this.readData(e))},readData:function(){},lastIndexOfSignature:function(){},readAndCheckSignature:function(){},readDate:function(){var e=this.readInt(4);return new Date(Date.UTC(1980+(e>>25&127),(e>>21&15)-1,e>>16&31,e>>11&31,e>>5&63,(31&e)<<1))}},t.exports=i},{"../utils":32}],19:[function(e,t,n){var r=e(`./Uint8ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./Uint8ArrayReader":21}],20:[function(e,t,n){var r=e(`./DataReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.byteAt=function(e){return this.data.charCodeAt(this.zero+e)},i.prototype.lastIndexOfSignature=function(e){return this.data.lastIndexOf(e)-this.zero},i.prototype.readAndCheckSignature=function(e){return e===this.readData(4)},i.prototype.readData=function(e){this.checkOffset(e);var t=this.data.slice(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./DataReader":18}],21:[function(e,t,n){var r=e(`./ArrayReader`);function i(e){r.call(this,e)}e(`../utils`).inherits(i,r),i.prototype.readData=function(e){if(this.checkOffset(e),e===0)return new Uint8Array;var t=this.data.subarray(this.zero+this.index,this.zero+this.index+e);return this.index+=e,t},t.exports=i},{"../utils":32,"./ArrayReader":17}],22:[function(e,t,n){var r=e(`../utils`),i=e(`../support`),a=e(`./ArrayReader`),o=e(`./StringReader`),s=e(`./NodeBufferReader`),c=e(`./Uint8ArrayReader`);t.exports=function(e){var t=r.getTypeOf(e);return r.checkSupport(t),t!==`string`||i.uint8array?t===`nodebuffer`?new s(e):i.uint8array?new c(r.transformTo(`uint8array`,e)):new a(r.transformTo(`array`,e)):new o(e)}},{"../support":30,"../utils":32,"./ArrayReader":17,"./NodeBufferReader":19,"./StringReader":20,"./Uint8ArrayReader":21}],23:[function(e,t,n){n.LOCAL_FILE_HEADER=`PK`,n.CENTRAL_FILE_HEADER=`PK`,n.CENTRAL_DIRECTORY_END=`PK`,n.ZIP64_CENTRAL_DIRECTORY_LOCATOR=`PK\x07`,n.ZIP64_CENTRAL_DIRECTORY_END=`PK`,n.DATA_DESCRIPTOR=`PK\x07\b`},{}],24:[function(e,t,n){var r=e(`./GenericWorker`),i=e(`../utils`);function a(e){r.call(this,`ConvertWorker to `+e),this.destType=e}i.inherits(a,r),a.prototype.processChunk=function(e){this.push({data:i.transformTo(this.destType,e.data),meta:e.meta})},t.exports=a},{"../utils":32,"./GenericWorker":28}],25:[function(e,t,n){var r=e(`./GenericWorker`),i=e(`../crc32`);function a(){r.call(this,`Crc32Probe`),this.withStreamInfo(`crc32`,0)}e(`../utils`).inherits(a,r),a.prototype.processChunk=function(e){this.streamInfo.crc32=i(e.data,this.streamInfo.crc32||0),this.push(e)},t.exports=a},{"../crc32":4,"../utils":32,"./GenericWorker":28}],26:[function(e,t,n){var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataLengthProbe for `+e),this.propName=e,this.withStreamInfo(e,0)}r.inherits(a,i),a.prototype.processChunk=function(e){if(e){var t=this.streamInfo[this.propName]||0;this.streamInfo[this.propName]=t+e.data.length}i.prototype.processChunk.call(this,e)},t.exports=a},{"../utils":32,"./GenericWorker":28}],27:[function(e,t,n){var r=e(`../utils`),i=e(`./GenericWorker`);function a(e){i.call(this,`DataWorker`);var t=this;this.dataIsReady=!1,this.index=0,this.max=0,this.data=null,this.type=``,this._tickScheduled=!1,e.then(function(e){t.dataIsReady=!0,t.data=e,t.max=e&&e.length||0,t.type=r.getTypeOf(e),t.isPaused||t._tickAndRepeat()},function(e){t.error(e)})}r.inherits(a,i),a.prototype.cleanUp=function(){i.prototype.cleanUp.call(this),this.data=null},a.prototype.resume=function(){return!!i.prototype.resume.call(this)&&(!this._tickScheduled&&this.dataIsReady&&(this._tickScheduled=!0,r.delay(this._tickAndRepeat,[],this)),!0)},a.prototype._tickAndRepeat=function(){this._tickScheduled=!1,this.isPaused||this.isFinished||(this._tick(),this.isFinished||(r.delay(this._tickAndRepeat,[],this),this._tickScheduled=!0))},a.prototype._tick=function(){if(this.isPaused||this.isFinished)return!1;var e=null,t=Math.min(this.max,this.index+16384);if(this.index>=this.max)return this.end();switch(this.type){case`string`:e=this.data.substring(this.index,t);break;case`uint8array`:e=this.data.subarray(this.index,t);break;case`array`:case`nodebuffer`:e=this.data.slice(this.index,t)}return this.index=t,this.push({data:e,meta:{percent:this.max?this.index/this.max*100:0}})},t.exports=a},{"../utils":32,"./GenericWorker":28}],28:[function(e,t,n){function r(e){this.name=e||`default`,this.streamInfo={},this.generatedError=null,this.extraStreamInfo={},this.isPaused=!0,this.isFinished=!1,this.isLocked=!1,this._listeners={data:[],end:[],error:[]},this.previous=null}r.prototype={push:function(e){this.emit(`data`,e)},end:function(){if(this.isFinished)return!1;this.flush();try{this.emit(`end`),this.cleanUp(),this.isFinished=!0}catch(e){this.emit(`error`,e)}return!0},error:function(e){return!this.isFinished&&(this.isPaused?this.generatedError=e:(this.isFinished=!0,this.emit(`error`,e),this.previous&&this.previous.error(e),this.cleanUp()),!0)},on:function(e,t){return this._listeners[e].push(t),this},cleanUp:function(){this.streamInfo=this.generatedError=this.extraStreamInfo=null,this._listeners=[]},emit:function(e,t){if(this._listeners[e])for(var n=0;n<this._listeners[e].length;n++)this._listeners[e][n].call(this,t)},pipe:function(e){return e.registerPrevious(this)},registerPrevious:function(e){if(this.isLocked)throw Error(`The stream '`+this+`' has already been used.`);this.streamInfo=e.streamInfo,this.mergeStreamInfo(),this.previous=e;var t=this;return e.on(`data`,function(e){t.processChunk(e)}),e.on(`end`,function(){t.end()}),e.on(`error`,function(e){t.error(e)}),this},pause:function(){return!this.isPaused&&!this.isFinished&&(this.isPaused=!0,this.previous&&this.previous.pause(),!0)},resume:function(){if(!this.isPaused||this.isFinished)return!1;var e=this.isPaused=!1;return this.generatedError&&(this.error(this.generatedError),e=!0),this.previous&&this.previous.resume(),!e},flush:function(){},processChunk:function(e){this.push(e)},withStreamInfo:function(e,t){return this.extraStreamInfo[e]=t,this.mergeStreamInfo(),this},mergeStreamInfo:function(){for(var e in this.extraStreamInfo)Object.prototype.hasOwnProperty.call(this.extraStreamInfo,e)&&(this.streamInfo[e]=this.extraStreamInfo[e])},lock:function(){if(this.isLocked)throw Error(`The stream '`+this+`' has already been used.`);this.isLocked=!0,this.previous&&this.previous.lock()},toString:function(){var e=`Worker `+this.name;return this.previous?this.previous+` -> `+e:e}},t.exports=r},{}],29:[function(e,t,n){var r=e(`../utils`),i=e(`./ConvertWorker`),a=e(`./GenericWorker`),o=e(`../base64`),s=e(`../support`),c=e(`../external`),l=null;if(s.nodestream)try{l=e(`../nodejs/NodejsStreamOutputAdapter`)}catch{}function u(e,t){return new c.Promise(function(n,i){var a=[],s=e._internalType,c=e._outputType,l=e._mimeType;e.on(`data`,function(e,n){a.push(e),t&&t(n)}).on(`error`,function(e){a=[],i(e)}).on(`end`,function(){try{n(function(e,t,n){switch(e){case`blob`:return r.newBlob(r.transformTo(`arraybuffer`,t),n);case`base64`:return o.encode(t);default:return r.transformTo(e,t)}}(c,function(e,t){var n,r=0,i=null,a=0;for(n=0;n<t.length;n++)a+=t[n].length;switch(e){case`string`:return t.join(``);case`array`:return Array.prototype.concat.apply([],t);case`uint8array`:for(i=new Uint8Array(a),n=0;n<t.length;n++)i.set(t[n],r),r+=t[n].length;return i;case`nodebuffer`:return Buffer.concat(t);default:throw Error(`concat : unsupported type '`+e+`'`)}}(s,a),l))}catch(e){i(e)}a=[]}).resume()})}function d(e,t,n){var o=t;switch(t){case`blob`:case`arraybuffer`:o=`uint8array`;break;case`base64`:o=`string`}try{this._internalType=o,this._outputType=t,this._mimeType=n,r.checkSupport(o),this._worker=e.pipe(new i(o)),e.lock()}catch(e){this._worker=new a(`error`),this._worker.error(e)}}d.prototype={accumulate:function(e){return u(this,e)},on:function(e,t){var n=this;return e===`data`?this._worker.on(e,function(e){t.call(n,e.data,e.meta)}):this._worker.on(e,function(){r.delay(t,arguments,n)}),this},resume:function(){return r.delay(this._worker.resume,[],this._worker),this},pause:function(){return this._worker.pause(),this},toNodejsStream:function(e){if(r.checkSupport(`nodestream`),this._outputType!==`nodebuffer`)throw Error(this._outputType+` is not supported by this method`);return new l(this,{objectMode:this._outputType!==`nodebuffer`},e)}},t.exports=d},{"../base64":1,"../external":6,"../nodejs/NodejsStreamOutputAdapter":13,"../support":30,"../utils":32,"./ConvertWorker":24,"./GenericWorker":28}],30:[function(e,t,n){if(n.base64=!0,n.array=!0,n.string=!0,n.arraybuffer=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`,n.nodebuffer=typeof Buffer<`u`,n.uint8array=typeof Uint8Array<`u`,typeof ArrayBuffer>`u`)n.blob=!1;else{var r=new ArrayBuffer(0);try{n.blob=new Blob([r],{type:`application/zip`}).size===0}catch{try{var i=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);i.append(r),n.blob=i.getBlob(`application/zip`).size===0}catch{n.blob=!1}}}try{n.nodestream=!!e(`readable-stream`).Readable}catch{n.nodestream=!1}},{"readable-stream":16}],31:[function(e,t,n){for(var r=e(`./utils`),i=e(`./support`),a=e(`./nodejsUtils`),o=e(`./stream/GenericWorker`),s=Array(256),c=0;c<256;c++)s[c]=252<=c?6:248<=c?5:240<=c?4:224<=c?3:192<=c?2:1;s[254]=s[254]=1;function l(){o.call(this,`utf-8 decode`),this.leftOver=null}function u(){o.call(this,`utf-8 encode`)}n.utf8encode=function(e){return i.nodebuffer?a.newBufferFrom(e,`utf-8`):function(e){var t,n,r,a,o,s=e.length,c=0;for(a=0;a<s;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(r=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(r-56320),a++),c+=n<128?1:n<2048?2:n<65536?3:4;for(t=i.uint8array?new Uint8Array(c):Array(c),a=o=0;o<c;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(r=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(r-56320),a++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t}(e)},n.utf8decode=function(e){return i.nodebuffer?r.transformTo(`nodebuffer`,e).toString(`utf-8`):function(e){var t,n,i,a,o=e.length,c=Array(2*o);for(t=n=0;t<o;)if((i=e[t++])<128)c[n++]=i;else if(4<(a=s[i]))c[n++]=65533,t+=a-1;else{for(i&=a===2?31:a===3?15:7;1<a&&t<o;)i=i<<6|63&e[t++],a--;1<a?c[n++]=65533:i<65536?c[n++]=i:(i-=65536,c[n++]=55296|i>>10&1023,c[n++]=56320|1023&i)}return c.length!==n&&(c.subarray?c=c.subarray(0,n):c.length=n),r.applyFromCharCode(c)}(e=r.transformTo(i.uint8array?`uint8array`:`array`,e))},r.inherits(l,o),l.prototype.processChunk=function(e){var t=r.transformTo(i.uint8array?`uint8array`:`array`,e.data);if(this.leftOver&&this.leftOver.length){if(i.uint8array){var a=t;(t=new Uint8Array(a.length+this.leftOver.length)).set(this.leftOver,0),t.set(a,this.leftOver.length)}else t=this.leftOver.concat(t);this.leftOver=null}var o=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+s[e[n]]>t?n:t}(t),c=t;o!==t.length&&(i.uint8array?(c=t.subarray(0,o),this.leftOver=t.subarray(o,t.length)):(c=t.slice(0,o),this.leftOver=t.slice(o,t.length))),this.push({data:n.utf8decode(c),meta:e.meta})},l.prototype.flush=function(){this.leftOver&&this.leftOver.length&&(this.push({data:n.utf8decode(this.leftOver),meta:{}}),this.leftOver=null)},n.Utf8DecodeWorker=l,r.inherits(u,o),u.prototype.processChunk=function(e){this.push({data:n.utf8encode(e.data),meta:e.meta})},n.Utf8EncodeWorker=u},{"./nodejsUtils":14,"./stream/GenericWorker":28,"./support":30,"./utils":32}],32:[function(e,t,n){var r=e(`./support`),i=e(`./base64`),a=e(`./nodejsUtils`),o=e(`./external`);function s(e){return e}function c(e,t){for(var n=0;n<e.length;++n)t[n]=255&e.charCodeAt(n);return t}e(`setimmediate`),n.newBlob=function(e,t){n.checkSupport(`blob`);try{return new Blob([e],{type:t})}catch{try{var r=new(self.BlobBuilder||self.WebKitBlobBuilder||self.MozBlobBuilder||self.MSBlobBuilder);return r.append(e),r.getBlob(t)}catch{throw Error(`Bug : can't construct the Blob.`)}}};var l={stringifyByChunk:function(e,t,n){var r=[],i=0,a=e.length;if(a<=n)return String.fromCharCode.apply(null,e);for(;i<a;)t===`array`||t===`nodebuffer`?r.push(String.fromCharCode.apply(null,e.slice(i,Math.min(i+n,a)))):r.push(String.fromCharCode.apply(null,e.subarray(i,Math.min(i+n,a)))),i+=n;return r.join(``)},stringifyByChar:function(e){for(var t=``,n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return t},applyCanBeUsed:{uint8array:function(){try{return r.uint8array&&String.fromCharCode.apply(null,new Uint8Array(1)).length===1}catch{return!1}}(),nodebuffer:function(){try{return r.nodebuffer&&String.fromCharCode.apply(null,a.allocBuffer(1)).length===1}catch{return!1}}()}};function u(e){var t=65536,r=n.getTypeOf(e),i=!0;if(r===`uint8array`?i=l.applyCanBeUsed.uint8array:r===`nodebuffer`&&(i=l.applyCanBeUsed.nodebuffer),i)for(;1<t;)try{return l.stringifyByChunk(e,r,t)}catch{t=Math.floor(t/2)}return l.stringifyByChar(e)}function d(e,t){for(var n=0;n<e.length;n++)t[n]=e[n];return t}n.applyFromCharCode=u;var f={};f.string={string:s,array:function(e){return c(e,Array(e.length))},arraybuffer:function(e){return f.string.uint8array(e).buffer},uint8array:function(e){return c(e,new Uint8Array(e.length))},nodebuffer:function(e){return c(e,a.allocBuffer(e.length))}},f.array={string:u,array:s,arraybuffer:function(e){return new Uint8Array(e).buffer},uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(e)}},f.arraybuffer={string:function(e){return u(new Uint8Array(e))},array:function(e){return d(new Uint8Array(e),Array(e.byteLength))},arraybuffer:s,uint8array:function(e){return new Uint8Array(e)},nodebuffer:function(e){return a.newBufferFrom(new Uint8Array(e))}},f.uint8array={string:u,array:function(e){return d(e,Array(e.length))},arraybuffer:function(e){return e.buffer},uint8array:s,nodebuffer:function(e){return a.newBufferFrom(e)}},f.nodebuffer={string:u,array:function(e){return d(e,Array(e.length))},arraybuffer:function(e){return f.nodebuffer.uint8array(e).buffer},uint8array:function(e){return d(e,new Uint8Array(e.length))},nodebuffer:s},n.transformTo=function(e,t){return t||=``,e?(n.checkSupport(e),f[n.getTypeOf(t)][e](t)):t},n.resolve=function(e){for(var t=e.split(`/`),n=[],r=0;r<t.length;r++){var i=t[r];i===`.`||i===``&&r!==0&&r!==t.length-1||(i===`..`?n.pop():n.push(i))}return n.join(`/`)},n.getTypeOf=function(e){return typeof e==`string`?`string`:Object.prototype.toString.call(e)===`[object Array]`?`array`:r.nodebuffer&&a.isBuffer(e)?`nodebuffer`:r.uint8array&&e instanceof Uint8Array?`uint8array`:r.arraybuffer&&e instanceof ArrayBuffer?`arraybuffer`:void 0},n.checkSupport=function(e){if(!r[e.toLowerCase()])throw Error(e+` is not supported by this platform`)},n.MAX_VALUE_16BITS=65535,n.MAX_VALUE_32BITS=-1,n.pretty=function(e){var t,n,r=``;for(n=0;n<(e||``).length;n++)r+=`\\x`+((t=e.charCodeAt(n))<16?`0`:``)+t.toString(16).toUpperCase();return r},n.delay=function(e,t,n){setImmediate(function(){e.apply(n||null,t||[])})},n.inherits=function(e,t){function n(){}n.prototype=t.prototype,e.prototype=new n},n.extend=function(){var e,t,n={};for(e=0;e<arguments.length;e++)for(t in arguments[e])Object.prototype.hasOwnProperty.call(arguments[e],t)&&n[t]===void 0&&(n[t]=arguments[e][t]);return n},n.prepareContent=function(e,t,a,s,l){return o.Promise.resolve(t).then(function(e){return r.blob&&(e instanceof Blob||[`[object File]`,`[object Blob]`].indexOf(Object.prototype.toString.call(e))!==-1)&&typeof FileReader<`u`?new o.Promise(function(t,n){var r=new FileReader;r.onload=function(e){t(e.target.result)},r.onerror=function(e){n(e.target.error)},r.readAsArrayBuffer(e)}):e}).then(function(t){var u=n.getTypeOf(t);return u?(u===`arraybuffer`?t=n.transformTo(`uint8array`,t):u===`string`&&(l?t=i.decode(t):a&&!0!==s&&(t=function(e){return c(e,r.uint8array?new Uint8Array(e.length):Array(e.length))}(t))),t):o.Promise.reject(Error(`Can't read the data of '`+e+`'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`))})}},{"./base64":1,"./external":6,"./nodejsUtils":14,"./support":30,setimmediate:54}],33:[function(e,t,n){var r=e(`./reader/readerFor`),i=e(`./utils`),a=e(`./signature`),o=e(`./zipEntry`),s=e(`./support`);function c(e){this.files=[],this.loadOptions=e}c.prototype={checkSignature:function(e){if(!this.reader.readAndCheckSignature(e)){this.reader.index-=4;var t=this.reader.readString(4);throw Error(`Corrupted zip or bug: unexpected signature (`+i.pretty(t)+`, expected `+i.pretty(e)+`)`)}},isSignature:function(e,t){var n=this.reader.index;this.reader.setIndex(e);var r=this.reader.readString(4)===t;return this.reader.setIndex(n),r},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2);var e=this.reader.readData(this.zipCommentLength),t=s.uint8array?`uint8array`:`array`,n=i.transformTo(t,e);this.zipComment=this.loadOptions.decodeFileName(n)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.reader.skip(4),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var e,t,n,r=this.zip64EndOfCentralSize-44;0<r;)e=this.reader.readInt(2),t=this.reader.readInt(4),n=this.reader.readData(t),this.zip64ExtensibleData[e]={id:e,length:t,value:n}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),1<this.disksCount)throw Error(`Multi-volumes zip are not supported`)},readLocalFiles:function(){var e,t;for(e=0;e<this.files.length;e++)t=this.files[e],this.reader.setIndex(t.localHeaderOffset),this.checkSignature(a.LOCAL_FILE_HEADER),t.readLocalPart(this.reader),t.handleUTF8(),t.processAttributes()},readCentralDir:function(){var e;for(this.reader.setIndex(this.centralDirOffset);this.reader.readAndCheckSignature(a.CENTRAL_FILE_HEADER);)(e=new o({zip64:this.zip64},this.loadOptions)).readCentralPart(this.reader),this.files.push(e);if(this.centralDirRecords!==this.files.length&&this.centralDirRecords!==0&&this.files.length===0)throw Error(`Corrupted zip or bug: expected `+this.centralDirRecords+` records in central dir, got `+this.files.length)},readEndOfCentral:function(){var e=this.reader.lastIndexOfSignature(a.CENTRAL_DIRECTORY_END);if(e<0)throw this.isSignature(0,a.LOCAL_FILE_HEADER)?Error(`Corrupted zip: can't find end of central directory`):Error(`Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html`);this.reader.setIndex(e);var t=e;if(this.checkSignature(a.CENTRAL_DIRECTORY_END),this.readBlockEndOfCentral(),this.diskNumber===i.MAX_VALUE_16BITS||this.diskWithCentralDirStart===i.MAX_VALUE_16BITS||this.centralDirRecordsOnThisDisk===i.MAX_VALUE_16BITS||this.centralDirRecords===i.MAX_VALUE_16BITS||this.centralDirSize===i.MAX_VALUE_32BITS||this.centralDirOffset===i.MAX_VALUE_32BITS){if(this.zip64=!0,(e=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR))<0)throw Error(`Corrupted zip: can't find the ZIP64 end of central directory locator`);if(this.reader.setIndex(e),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_LOCATOR),this.readBlockZip64EndOfCentralLocator(),!this.isSignature(this.relativeOffsetEndOfZip64CentralDir,a.ZIP64_CENTRAL_DIRECTORY_END)&&(this.relativeOffsetEndOfZip64CentralDir=this.reader.lastIndexOfSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.relativeOffsetEndOfZip64CentralDir<0))throw Error(`Corrupted zip: can't find the ZIP64 end of central directory`);this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir),this.checkSignature(a.ZIP64_CENTRAL_DIRECTORY_END),this.readBlockZip64EndOfCentral()}var n=this.centralDirOffset+this.centralDirSize;this.zip64&&(n+=20,n+=12+this.zip64EndOfCentralSize);var r=t-n;if(0<r)this.isSignature(t,a.CENTRAL_FILE_HEADER)||(this.reader.zero=r);else if(r<0)throw Error(`Corrupted zip: missing `+Math.abs(r)+` bytes.`)},prepareReader:function(e){this.reader=r(e)},load:function(e){this.prepareReader(e),this.readEndOfCentral(),this.readCentralDir(),this.readLocalFiles()}},t.exports=c},{"./reader/readerFor":22,"./signature":23,"./support":30,"./utils":32,"./zipEntry":34}],34:[function(e,t,n){var r=e(`./reader/readerFor`),i=e(`./utils`),a=e(`./compressedObject`),o=e(`./crc32`),s=e(`./utf8`),c=e(`./compressions`),l=e(`./support`);function u(e,t){this.options=e,this.loadOptions=t}u.prototype={isEncrypted:function(){return(1&this.bitFlag)==1},useUTF8:function(){return(2048&this.bitFlag)==2048},readLocalPart:function(e){var t,n;if(e.skip(22),this.fileNameLength=e.readInt(2),n=e.readInt(2),this.fileName=e.readData(this.fileNameLength),e.skip(n),this.compressedSize===-1||this.uncompressedSize===-1)throw Error(`Bug or corrupted zip : didn't get enough information from the central directory (compressedSize === -1 || uncompressedSize === -1)`);if((t=function(e){for(var t in c)if(Object.prototype.hasOwnProperty.call(c,t)&&c[t].magic===e)return c[t];return null}(this.compressionMethod))===null)throw Error(`Corrupted zip : compression `+i.pretty(this.compressionMethod)+` unknown (inner file : `+i.transformTo(`string`,this.fileName)+`)`);this.decompressed=new a(this.compressedSize,this.uncompressedSize,this.crc32,t,e.readData(this.compressedSize))},readCentralPart:function(e){this.versionMadeBy=e.readInt(2),e.skip(2),this.bitFlag=e.readInt(2),this.compressionMethod=e.readString(2),this.date=e.readDate(),this.crc32=e.readInt(4),this.compressedSize=e.readInt(4),this.uncompressedSize=e.readInt(4);var t=e.readInt(2);if(this.extraFieldsLength=e.readInt(2),this.fileCommentLength=e.readInt(2),this.diskNumberStart=e.readInt(2),this.internalFileAttributes=e.readInt(2),this.externalFileAttributes=e.readInt(4),this.localHeaderOffset=e.readInt(4),this.isEncrypted())throw Error(`Encrypted zip are not supported`);e.skip(t),this.readExtraFields(e),this.parseZIP64ExtraField(e),this.fileComment=e.readData(this.fileCommentLength)},processAttributes:function(){this.unixPermissions=null,this.dosPermissions=null;var e=this.versionMadeBy>>8;this.dir=!!(16&this.externalFileAttributes),e==0&&(this.dosPermissions=63&this.externalFileAttributes),e==3&&(this.unixPermissions=this.externalFileAttributes>>16&65535),this.dir||this.fileNameStr.slice(-1)!==`/`||(this.dir=!0)},parseZIP64ExtraField:function(){if(this.extraFields[1]){var e=r(this.extraFields[1].value);this.uncompressedSize===i.MAX_VALUE_32BITS&&(this.uncompressedSize=e.readInt(8)),this.compressedSize===i.MAX_VALUE_32BITS&&(this.compressedSize=e.readInt(8)),this.localHeaderOffset===i.MAX_VALUE_32BITS&&(this.localHeaderOffset=e.readInt(8)),this.diskNumberStart===i.MAX_VALUE_32BITS&&(this.diskNumberStart=e.readInt(4))}},readExtraFields:function(e){var t,n,r,i=e.index+this.extraFieldsLength;for(this.extraFields||={};e.index+4<i;)t=e.readInt(2),n=e.readInt(2),r=e.readData(n),this.extraFields[t]={id:t,length:n,value:r};e.setIndex(i)},handleUTF8:function(){var e=l.uint8array?`uint8array`:`array`;if(this.useUTF8())this.fileNameStr=s.utf8decode(this.fileName),this.fileCommentStr=s.utf8decode(this.fileComment);else{var t=this.findExtraFieldUnicodePath();if(t!==null)this.fileNameStr=t;else{var n=i.transformTo(e,this.fileName);this.fileNameStr=this.loadOptions.decodeFileName(n)}var r=this.findExtraFieldUnicodeComment();if(r!==null)this.fileCommentStr=r;else{var a=i.transformTo(e,this.fileComment);this.fileCommentStr=this.loadOptions.decodeFileName(a)}}},findExtraFieldUnicodePath:function(){var e=this.extraFields[28789];if(e){var t=r(e.value);return t.readInt(1)===1&&o(this.fileName)===t.readInt(4)?s.utf8decode(t.readData(e.length-5)):null}return null},findExtraFieldUnicodeComment:function(){var e=this.extraFields[25461];if(e){var t=r(e.value);return t.readInt(1)===1&&o(this.fileComment)===t.readInt(4)?s.utf8decode(t.readData(e.length-5)):null}return null}},t.exports=u},{"./compressedObject":2,"./compressions":3,"./crc32":4,"./reader/readerFor":22,"./support":30,"./utf8":31,"./utils":32}],35:[function(e,t,n){function r(e,t,n){this.name=e,this.dir=n.dir,this.date=n.date,this.comment=n.comment,this.unixPermissions=n.unixPermissions,this.dosPermissions=n.dosPermissions,this._data=t,this._dataBinary=n.binary,this.options={compression:n.compression,compressionOptions:n.compressionOptions}}var i=e(`./stream/StreamHelper`),a=e(`./stream/DataWorker`),o=e(`./utf8`),s=e(`./compressedObject`),c=e(`./stream/GenericWorker`);r.prototype={internalStream:function(e){var t=null,n=`string`;try{if(!e)throw Error(`No output type specified.`);var r=(n=e.toLowerCase())===`string`||n===`text`;n!==`binarystring`&&n!==`text`||(n=`string`),t=this._decompressWorker();var a=!this._dataBinary;a&&!r&&(t=t.pipe(new o.Utf8EncodeWorker)),!a&&r&&(t=t.pipe(new o.Utf8DecodeWorker))}catch(e){(t=new c(`error`)).error(e)}return new i(t,n,``)},async:function(e,t){return this.internalStream(e).accumulate(t)},nodeStream:function(e,t){return this.internalStream(e||`nodebuffer`).toNodejsStream(t)},_compressWorker:function(e,t){if(this._data instanceof s&&this._data.compression.magic===e.magic)return this._data.getCompressedWorker();var n=this._decompressWorker();return this._dataBinary||(n=n.pipe(new o.Utf8EncodeWorker)),s.createWorkerFrom(n,e,t)},_decompressWorker:function(){return this._data instanceof s?this._data.getContentWorker():this._data instanceof c?this._data:new a(this._data)}};for(var l=[`asText`,`asBinary`,`asNodeBuffer`,`asUint8Array`,`asArrayBuffer`],u=function(){throw Error(`This method has been removed in JSZip 3.0, please check the upgrade guide.`)},d=0;d<l.length;d++)r.prototype[l[d]]=u;t.exports=r},{"./compressedObject":2,"./stream/DataWorker":27,"./stream/GenericWorker":28,"./stream/StreamHelper":29,"./utf8":31}],36:[function(e,t,n){(function(e){var n,r,i=e.MutationObserver||e.WebKitMutationObserver;if(i){var a=0,o=new i(u),s=e.document.createTextNode(``);o.observe(s,{characterData:!0}),n=function(){s.data=a=++a%2}}else if(e.setImmediate||e.MessageChannel===void 0)n=`document`in e&&`onreadystatechange`in e.document.createElement(`script`)?function(){var t=e.document.createElement(`script`);t.onreadystatechange=function(){u(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(u,0)};else{var c=new e.MessageChannel;c.port1.onmessage=u,n=function(){c.port2.postMessage(0)}}var l=[];function u(){var e,t;r=!0;for(var n=l.length;n;){for(t=l,l=[],e=-1;++e<n;)t[e]();n=l.length}r=!1}t.exports=function(e){l.push(e)!==1||r||n()}}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}],37:[function(e,t,n){var r=e(`immediate`);function i(){}var a={},o=[`REJECTED`],s=[`FULFILLED`],c=[`PENDING`];function l(e){if(typeof e!=`function`)throw TypeError(`resolver must be a function`);this.state=c,this.queue=[],this.outcome=void 0,e!==i&&p(this,e)}function u(e,t,n){this.promise=e,typeof t==`function`&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),typeof n==`function`&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function d(e,t,n){r(function(){var r;try{r=t(n)}catch(t){return a.reject(e,t)}r===e?a.reject(e,TypeError(`Cannot resolve promise with itself`)):a.resolve(e,r)})}function f(e){var t=e&&e.then;if(e&&(typeof e==`object`||typeof e==`function`)&&typeof t==`function`)return function(){t.apply(e,arguments)}}function p(e,t){var n=!1;function r(t){n||(n=!0,a.reject(e,t))}function i(t){n||(n=!0,a.resolve(e,t))}var o=m(function(){t(i,r)});o.status===`error`&&r(o.value)}function m(e,t){var n={};try{n.value=e(t),n.status=`success`}catch(e){n.status=`error`,n.value=e}return n}(t.exports=l).prototype.finally=function(e){if(typeof e!=`function`)return this;var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){throw n})})},l.prototype.catch=function(e){return this.then(null,e)},l.prototype.then=function(e,t){if(typeof e!=`function`&&this.state===s||typeof t!=`function`&&this.state===o)return this;var n=new this.constructor(i);return this.state===c?this.queue.push(new u(n,e,t)):d(n,this.state===s?e:t,this.outcome),n},u.prototype.callFulfilled=function(e){a.resolve(this.promise,e)},u.prototype.otherCallFulfilled=function(e){d(this.promise,this.onFulfilled,e)},u.prototype.callRejected=function(e){a.reject(this.promise,e)},u.prototype.otherCallRejected=function(e){d(this.promise,this.onRejected,e)},a.resolve=function(e,t){var n=m(f,t);if(n.status===`error`)return a.reject(e,n.value);var r=n.value;if(r)p(e,r);else{e.state=s,e.outcome=t;for(var i=-1,o=e.queue.length;++i<o;)e.queue[i].callFulfilled(t)}return e},a.reject=function(e,t){e.state=o,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},l.resolve=function(e){return e instanceof this?e:a.resolve(new this(i),e)},l.reject=function(e){var t=new this(i);return a.reject(t,e)},l.all=function(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=Array(n),s=0,c=-1,l=new this(i);++c<n;)u(e[c],c);return l;function u(e,i){t.resolve(e).then(function(e){o[i]=e,++s!==n||r||(r=!0,a.resolve(l,o))},function(e){r||(r=!0,a.reject(l,e))})}},l.race=function(e){var t=this;if(Object.prototype.toString.call(e)!==`[object Array]`)return this.reject(TypeError(`must be an array`));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var o=-1,s=new this(i);++o<n;)c=e[o],t.resolve(c).then(function(e){r||(r=!0,a.resolve(s,e))},function(e){r||(r=!0,a.reject(s,e))});var c;return s}},{immediate:36}],38:[function(e,t,n){var r={};(0,e(`./lib/utils/common`).assign)(r,e(`./lib/deflate`),e(`./lib/inflate`),e(`./lib/zlib/constants`)),t.exports=r},{"./lib/deflate":39,"./lib/inflate":40,"./lib/utils/common":41,"./lib/zlib/constants":44}],39:[function(e,t,n){var r=e(`./zlib/deflate`),i=e(`./utils/common`),a=e(`./utils/strings`),o=e(`./zlib/messages`),s=e(`./zlib/zstream`),c=Object.prototype.toString,l=0,u=-1,d=0,f=8;function p(e){if(!(this instanceof p))return new p(e);this.options=i.assign({level:u,method:f,chunkSize:16384,windowBits:15,memLevel:8,strategy:d,to:``},e||{});var t=this.options;t.raw&&0<t.windowBits?t.windowBits=-t.windowBits:t.gzip&&0<t.windowBits&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new s,this.strm.avail_out=0;var n=r.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==l)throw Error(o[n]);if(t.header&&r.deflateSetHeader(this.strm,t.header),t.dictionary){var m;if(m=typeof t.dictionary==`string`?a.string2buf(t.dictionary):c.call(t.dictionary)===`[object ArrayBuffer]`?new Uint8Array(t.dictionary):t.dictionary,(n=r.deflateSetDictionary(this.strm,m))!==l)throw Error(o[n]);this._dict_set=!0}}function m(e,t){var n=new p(t);if(n.push(e,!0),n.err)throw n.msg||o[n.err];return n.result}p.prototype.push=function(e,t){var n,o,s=this.strm,u=this.options.chunkSize;if(this.ended)return!1;o=t===~~t?t:!0===t?4:0,typeof e==`string`?s.input=a.string2buf(e):c.call(e)===`[object ArrayBuffer]`?s.input=new Uint8Array(e):s.input=e,s.next_in=0,s.avail_in=s.input.length;do{if(s.avail_out===0&&(s.output=new i.Buf8(u),s.next_out=0,s.avail_out=u),(n=r.deflate(s,o))!==1&&n!==l)return this.onEnd(n),!(this.ended=!0);s.avail_out!==0&&(s.avail_in!==0||o!==4&&o!==2)||(this.options.to===`string`?this.onData(a.buf2binstring(i.shrinkBuf(s.output,s.next_out))):this.onData(i.shrinkBuf(s.output,s.next_out)))}while((0<s.avail_in||s.avail_out===0)&&n!==1);return o===4?(n=r.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===l):o!==2||(this.onEnd(l),!(s.avail_out=0))},p.prototype.onData=function(e){this.chunks.push(e)},p.prototype.onEnd=function(e){e===l&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},n.Deflate=p,n.deflate=m,n.deflateRaw=function(e,t){return(t||={}).raw=!0,m(e,t)},n.gzip=function(e,t){return(t||={}).gzip=!0,m(e,t)}},{"./utils/common":41,"./utils/strings":42,"./zlib/deflate":46,"./zlib/messages":51,"./zlib/zstream":53}],40:[function(e,t,n){var r=e(`./zlib/inflate`),i=e(`./utils/common`),a=e(`./utils/strings`),o=e(`./zlib/constants`),s=e(`./zlib/messages`),c=e(`./zlib/zstream`),l=e(`./zlib/gzheader`),u=Object.prototype.toString;function d(e){if(!(this instanceof d))return new d(e);this.options=i.assign({chunkSize:16384,windowBits:0,to:``},e||{});var t=this.options;t.raw&&0<=t.windowBits&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),!(0<=t.windowBits&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),15<t.windowBits&&t.windowBits<48&&!(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg=``,this.ended=!1,this.chunks=[],this.strm=new c,this.strm.avail_out=0;var n=r.inflateInit2(this.strm,t.windowBits);if(n!==o.Z_OK)throw Error(s[n]);this.header=new l,r.inflateGetHeader(this.strm,this.header)}function f(e,t){var n=new d(t);if(n.push(e,!0),n.err)throw n.msg||s[n.err];return n.result}d.prototype.push=function(e,t){var n,s,c,l,d,f,p=this.strm,m=this.options.chunkSize,h=this.options.dictionary,g=!1;if(this.ended)return!1;s=t===~~t?t:!0===t?o.Z_FINISH:o.Z_NO_FLUSH,typeof e==`string`?p.input=a.binstring2buf(e):u.call(e)===`[object ArrayBuffer]`?p.input=new Uint8Array(e):p.input=e,p.next_in=0,p.avail_in=p.input.length;do{if(p.avail_out===0&&(p.output=new i.Buf8(m),p.next_out=0,p.avail_out=m),(n=r.inflate(p,o.Z_NO_FLUSH))===o.Z_NEED_DICT&&h&&(f=typeof h==`string`?a.string2buf(h):u.call(h)===`[object ArrayBuffer]`?new Uint8Array(h):h,n=r.inflateSetDictionary(this.strm,f)),n===o.Z_BUF_ERROR&&!0===g&&(n=o.Z_OK,g=!1),n!==o.Z_STREAM_END&&n!==o.Z_OK)return this.onEnd(n),!(this.ended=!0);p.next_out&&(p.avail_out!==0&&n!==o.Z_STREAM_END&&(p.avail_in!==0||s!==o.Z_FINISH&&s!==o.Z_SYNC_FLUSH)||(this.options.to===`string`?(c=a.utf8border(p.output,p.next_out),l=p.next_out-c,d=a.buf2string(p.output,c),p.next_out=l,p.avail_out=m-l,l&&i.arraySet(p.output,p.output,c,l,0),this.onData(d)):this.onData(i.shrinkBuf(p.output,p.next_out)))),p.avail_in===0&&p.avail_out===0&&(g=!0)}while((0<p.avail_in||p.avail_out===0)&&n!==o.Z_STREAM_END);return n===o.Z_STREAM_END&&(s=o.Z_FINISH),s===o.Z_FINISH?(n=r.inflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===o.Z_OK):s!==o.Z_SYNC_FLUSH||(this.onEnd(o.Z_OK),!(p.avail_out=0))},d.prototype.onData=function(e){this.chunks.push(e)},d.prototype.onEnd=function(e){e===o.Z_OK&&(this.options.to===`string`?this.result=this.chunks.join(``):this.result=i.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg},n.Inflate=d,n.inflate=f,n.inflateRaw=function(e,t){return(t||={}).raw=!0,f(e,t)},n.ungzip=f},{"./utils/common":41,"./utils/strings":42,"./zlib/constants":44,"./zlib/gzheader":47,"./zlib/inflate":49,"./zlib/messages":51,"./zlib/zstream":53}],41:[function(e,t,n){var r=typeof Uint8Array<`u`&&typeof Uint16Array<`u`&&typeof Int32Array<`u`;n.assign=function(e){for(var t=Array.prototype.slice.call(arguments,1);t.length;){var n=t.shift();if(n){if(typeof n!=`object`)throw TypeError(n+`must be non-object`);for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}}return e},n.shrinkBuf=function(e,t){return e.length===t?e:e.subarray?e.subarray(0,t):(e.length=t,e)};var i={arraySet:function(e,t,n,r,i){if(t.subarray&&e.subarray)e.set(t.subarray(n,n+r),i);else for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){var t,n,r,i,a,o;for(t=r=0,n=e.length;t<n;t++)r+=e[t].length;for(o=new Uint8Array(r),t=i=0,n=e.length;t<n;t++)a=e[t],o.set(a,i),i+=a.length;return o}},a={arraySet:function(e,t,n,r,i){for(var a=0;a<r;a++)e[i+a]=t[n+a]},flattenChunks:function(e){return[].concat.apply([],e)}};n.setTyped=function(e){e?(n.Buf8=Uint8Array,n.Buf16=Uint16Array,n.Buf32=Int32Array,n.assign(n,i)):(n.Buf8=Array,n.Buf16=Array,n.Buf32=Array,n.assign(n,a))},n.setTyped(r)},{}],42:[function(e,t,n){var r=e(`./common`),i=!0,a=!0;try{String.fromCharCode.apply(null,[0])}catch{i=!1}try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{a=!1}for(var o=new r.Buf8(256),s=0;s<256;s++)o[s]=252<=s?6:248<=s?5:240<=s?4:224<=s?3:192<=s?2:1;function c(e,t){if(t<65537&&(e.subarray&&a||!e.subarray&&i))return String.fromCharCode.apply(null,r.shrinkBuf(e,t));for(var n=``,o=0;o<t;o++)n+=String.fromCharCode(e[o]);return n}o[254]=o[254]=1,n.string2buf=function(e){var t,n,i,a,o,s=e.length,c=0;for(a=0;a<s;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(i=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(i-56320),a++),c+=n<128?1:n<2048?2:n<65536?3:4;for(t=new r.Buf8(c),a=o=0;o<c;a++)(64512&(n=e.charCodeAt(a)))==55296&&a+1<s&&(64512&(i=e.charCodeAt(a+1)))==56320&&(n=65536+(n-55296<<10)+(i-56320),a++),n<128?t[o++]=n:(n<2048?t[o++]=192|n>>>6:(n<65536?t[o++]=224|n>>>12:(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63),t[o++]=128|n>>>6&63),t[o++]=128|63&n);return t},n.buf2binstring=function(e){return c(e,e.length)},n.binstring2buf=function(e){for(var t=new r.Buf8(e.length),n=0,i=t.length;n<i;n++)t[n]=e.charCodeAt(n);return t},n.buf2string=function(e,t){var n,r,i,a,s=t||e.length,l=Array(2*s);for(n=r=0;n<s;)if((i=e[n++])<128)l[r++]=i;else if(4<(a=o[i]))l[r++]=65533,n+=a-1;else{for(i&=a===2?31:a===3?15:7;1<a&&n<s;)i=i<<6|63&e[n++],a--;1<a?l[r++]=65533:i<65536?l[r++]=i:(i-=65536,l[r++]=55296|i>>10&1023,l[r++]=56320|1023&i)}return c(l,r)},n.utf8border=function(e,t){var n;for((t||=e.length)>e.length&&(t=e.length),n=t-1;0<=n&&(192&e[n])==128;)n--;return n<0||n===0?t:n+o[e[n]]>t?n:t}},{"./common":41}],43:[function(e,t,n){t.exports=function(e,t,n,r){for(var i=65535&e|0,a=e>>>16&65535|0,o=0;n!==0;){for(n-=o=2e3<n?2e3:n;a=a+(i=i+t[r++]|0)|0,--o;);i%=65521,a%=65521}return i|a<<16|0}},{}],44:[function(e,t,n){t.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],45:[function(e,t,n){var r=function(){for(var e,t=[],n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t}();t.exports=function(e,t,n,i){var a=r,o=i+n;e^=-1;for(var s=i;s<o;s++)e=e>>>8^a[255&(e^t[s])];return-1^e}},{}],46:[function(e,t,n){var r,i=e(`../utils/common`),a=e(`./trees`),o=e(`./adler32`),s=e(`./crc32`),c=e(`./messages`),l=0,u=4,d=0,f=-2,p=-1,m=4,h=2,g=8,_=9,v=286,y=30,b=19,x=2*v+1,S=15,C=3,w=258,T=w+C+1,E=42,D=113,O=1,k=2,A=3,j=4;function M(e,t){return e.msg=c[t],t}function N(e){return(e<<1)-(4<e?9:0)}function P(e){for(var t=e.length;0<=--t;)e[t]=0}function F(e){var t=e.state,n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(i.arraySet(e.output,t.pending_buf,t.pending_out,n,e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))}function I(e,t){a._tr_flush_block(e,0<=e.block_start?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,F(e.strm)}function L(e,t){e.pending_buf[e.pending++]=t}function R(e,t){e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t}function z(e,t){var n,r,i=e.max_chain_length,a=e.strstart,o=e.prev_length,s=e.nice_match,c=e.strstart>e.w_size-T?e.strstart-(e.w_size-T):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+w,p=l[a+o-1],m=l[a+o];e.prev_length>=e.good_match&&(i>>=2),s>e.lookahead&&(s=e.lookahead);do if(l[(n=t)+o]===m&&l[n+o-1]===p&&l[n]===l[a]&&l[++n]===l[a+1]){a+=2,n++;do;while(l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&l[++a]===l[++n]&&a<f);if(r=w-(f-a),a=f-w,o<r){if(e.match_start=t,s<=(o=r))break;p=l[a+o-1],m=l[a+o]}}while((t=d[t&u])>c&&--i!=0);return o<=e.lookahead?o:e.lookahead}function B(e){var t,n,r,a,c,l,u,d,f,p,m=e.w_size;do{if(a=e.window_size-e.lookahead-e.strstart,e.strstart>=m+(m-T)){for(i.arraySet(e.window,e.window,m,m,0),e.match_start-=m,e.strstart-=m,e.block_start-=m,t=n=e.hash_size;r=e.head[--t],e.head[t]=m<=r?r-m:0,--n;);for(t=n=m;r=e.prev[--t],e.prev[t]=m<=r?r-m:0,--n;);a+=m}if(e.strm.avail_in===0)break;if(l=e.strm,u=e.window,d=e.strstart+e.lookahead,f=a,p=void 0,p=l.avail_in,f<p&&(p=f),n=p===0?0:(l.avail_in-=p,i.arraySet(u,l.input,l.next_in,p,d),l.state.wrap===1?l.adler=o(l.adler,u,p,d):l.state.wrap===2&&(l.adler=s(l.adler,u,p,d)),l.next_in+=p,l.total_in+=p,p),e.lookahead+=n,e.lookahead+e.insert>=C)for(c=e.strstart-e.insert,e.ins_h=e.window[c],e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+1])&e.hash_mask;e.insert&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[c+C-1])&e.hash_mask,e.prev[c&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=c,c++,e.insert--,!(e.lookahead+e.insert<C)););}while(e.lookahead<T&&e.strm.avail_in!==0)}function V(e,t){for(var n,r;;){if(e.lookahead<T){if(B(e),e.lookahead<T&&t===l)return O;if(e.lookahead===0)break}if(n=0,e.lookahead>=C&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-T&&(e.match_length=z(e,n)),e.match_length>=C)if(r=a._tr_tally(e,e.strstart-e.match_start,e.match_length-C),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=C){for(e.match_length--;e.strstart++,e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart,--e.match_length!=0;);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+1])&e.hash_mask;else r=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=e.strstart<C-1?e.strstart:C-1,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}function H(e,t){for(var n,r,i;;){if(e.lookahead<T){if(B(e),e.lookahead<T&&t===l)return O;if(e.lookahead===0)break}if(n=0,e.lookahead>=C&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=C-1,n!==0&&e.prev_length<e.max_lazy_match&&e.strstart-n<=e.w_size-T&&(e.match_length=z(e,n),e.match_length<=5&&(e.strategy===1||e.match_length===C&&4096<e.strstart-e.match_start)&&(e.match_length=C-1)),e.prev_length>=C&&e.match_length<=e.prev_length){for(i=e.strstart+e.lookahead-C,r=a._tr_tally(e,e.strstart-1-e.prev_match,e.prev_length-C),e.lookahead-=e.prev_length-1,e.prev_length-=2;++e.strstart<=i&&(e.ins_h=(e.ins_h<<e.hash_shift^e.window[e.strstart+C-1])&e.hash_mask,n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),--e.prev_length!=0;);if(e.match_available=0,e.match_length=C-1,e.strstart++,r&&(I(e,!1),e.strm.avail_out===0))return O}else if(e.match_available){if((r=a._tr_tally(e,0,e.window[e.strstart-1]))&&I(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return O}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&=(r=a._tr_tally(e,0,e.window[e.strstart-1]),0),e.insert=e.strstart<C-1?e.strstart:C-1,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}function U(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}function W(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=g,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new i.Buf16(2*x),this.dyn_dtree=new i.Buf16(2*(2*y+1)),this.bl_tree=new i.Buf16(2*(2*b+1)),P(this.dyn_ltree),P(this.dyn_dtree),P(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new i.Buf16(S+1),this.heap=new i.Buf16(2*v+1),P(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new i.Buf16(2*v+1),P(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}function ee(e){var t;return e&&e.state?(e.total_in=e.total_out=0,e.data_type=h,(t=e.state).pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap?E:D,e.adler=t.wrap===2?0:1,t.last_flush=l,a._tr_init(t),d):M(e,f)}function te(e){var t=ee(e);return t===d&&function(e){e.window_size=2*e.w_size,P(e.head),e.max_lazy_match=r[e.level].max_lazy,e.good_match=r[e.level].good_length,e.nice_match=r[e.level].nice_length,e.max_chain_length=r[e.level].max_chain,e.strstart=0,e.block_start=0,e.lookahead=0,e.insert=0,e.match_length=e.prev_length=C-1,e.match_available=0,e.ins_h=0}(e.state),t}function ne(e,t,n,r,a,o){if(!e)return f;var s=1;if(t===p&&(t=6),r<0?(s=0,r=-r):15<r&&(s=2,r-=16),a<1||_<a||n!==g||r<8||15<r||t<0||9<t||o<0||m<o)return M(e,f);r===8&&(r=9);var c=new W;return(e.state=c).strm=e,c.wrap=s,c.gzhead=null,c.w_bits=r,c.w_size=1<<c.w_bits,c.w_mask=c.w_size-1,c.hash_bits=a+7,c.hash_size=1<<c.hash_bits,c.hash_mask=c.hash_size-1,c.hash_shift=~~((c.hash_bits+C-1)/C),c.window=new i.Buf8(2*c.w_size),c.head=new i.Buf16(c.hash_size),c.prev=new i.Buf16(c.w_size),c.lit_bufsize=1<<a+6,c.pending_buf_size=4*c.lit_bufsize,c.pending_buf=new i.Buf8(c.pending_buf_size),c.d_buf=1*c.lit_bufsize,c.l_buf=3*c.lit_bufsize,c.level=t,c.strategy=o,c.method=n,te(e)}r=[new U(0,0,0,0,function(e,t){var n=65535;for(n>e.pending_buf_size-5&&(n=e.pending_buf_size-5);;){if(e.lookahead<=1){if(B(e),e.lookahead===0&&t===l)return O;if(e.lookahead===0)break}e.strstart+=e.lookahead,e.lookahead=0;var r=e.block_start+n;if((e.strstart===0||e.strstart>=r)&&(e.lookahead=e.strstart-r,e.strstart=r,I(e,!1),e.strm.avail_out===0)||e.strstart-e.block_start>=e.w_size-T&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):(e.strstart>e.block_start&&(I(e,!1),e.strm.avail_out),O)}),new U(4,4,8,4,V),new U(4,5,16,8,V),new U(4,6,32,32,V),new U(4,4,16,16,H),new U(8,16,32,32,H),new U(8,16,128,128,H),new U(8,32,128,256,H),new U(32,128,258,1024,H),new U(32,258,258,4096,H)],n.deflateInit=function(e,t){return ne(e,t,g,15,8,0)},n.deflateInit2=ne,n.deflateReset=te,n.deflateResetKeep=ee,n.deflateSetHeader=function(e,t){return e&&e.state&&e.state.wrap===2?(e.state.gzhead=t,d):f},n.deflate=function(e,t){var n,i,o,c;if(!e||!e.state||5<t||t<0)return e?M(e,f):f;if(i=e.state,!e.output||!e.input&&e.avail_in!==0||i.status===666&&t!==u)return M(e,e.avail_out===0?-5:f);if(i.strm=e,n=i.last_flush,i.last_flush=t,i.status===E)if(i.wrap===2)e.adler=0,L(i,31),L(i,139),L(i,8),i.gzhead?(L(i,+!!i.gzhead.text+(i.gzhead.hcrc?2:0)+(i.gzhead.extra?4:0)+(i.gzhead.name?8:0)+(i.gzhead.comment?16:0)),L(i,255&i.gzhead.time),L(i,i.gzhead.time>>8&255),L(i,i.gzhead.time>>16&255),L(i,i.gzhead.time>>24&255),L(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),L(i,255&i.gzhead.os),i.gzhead.extra&&i.gzhead.extra.length&&(L(i,255&i.gzhead.extra.length),L(i,i.gzhead.extra.length>>8&255)),i.gzhead.hcrc&&(e.adler=s(e.adler,i.pending_buf,i.pending,0)),i.gzindex=0,i.status=69):(L(i,0),L(i,0),L(i,0),L(i,0),L(i,0),L(i,i.level===9?2:2<=i.strategy||i.level<2?4:0),L(i,3),i.status=D);else{var p=g+(i.w_bits-8<<4)<<8;p|=(2<=i.strategy||i.level<2?0:i.level<6?1:i.level===6?2:3)<<6,i.strstart!==0&&(p|=32),p+=31-p%31,i.status=D,R(i,p),i.strstart!==0&&(R(i,e.adler>>>16),R(i,65535&e.adler)),e.adler=1}if(i.status===69)if(i.gzhead.extra){for(o=i.pending;i.gzindex<(65535&i.gzhead.extra.length)&&(i.pending!==i.pending_buf_size||(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending!==i.pending_buf_size));)L(i,255&i.gzhead.extra[i.gzindex]),i.gzindex++;i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),i.gzindex===i.gzhead.extra.length&&(i.gzindex=0,i.status=73)}else i.status=73;if(i.status===73)if(i.gzhead.name){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.name.length?255&i.gzhead.name.charCodeAt(i.gzindex++):0,L(i,c)}while(c!==0);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.gzindex=0,i.status=91)}else i.status=91;if(i.status===91)if(i.gzhead.comment){o=i.pending;do{if(i.pending===i.pending_buf_size&&(i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),F(e),o=i.pending,i.pending===i.pending_buf_size)){c=1;break}c=i.gzindex<i.gzhead.comment.length?255&i.gzhead.comment.charCodeAt(i.gzindex++):0,L(i,c)}while(c!==0);i.gzhead.hcrc&&i.pending>o&&(e.adler=s(e.adler,i.pending_buf,i.pending-o,o)),c===0&&(i.status=103)}else i.status=103;if(i.status===103&&(i.gzhead.hcrc?(i.pending+2>i.pending_buf_size&&F(e),i.pending+2<=i.pending_buf_size&&(L(i,255&e.adler),L(i,e.adler>>8&255),e.adler=0,i.status=D)):i.status=D),i.pending!==0){if(F(e),e.avail_out===0)return i.last_flush=-1,d}else if(e.avail_in===0&&N(t)<=N(n)&&t!==u)return M(e,-5);if(i.status===666&&e.avail_in!==0)return M(e,-5);if(e.avail_in!==0||i.lookahead!==0||t!==l&&i.status!==666){var m=i.strategy===2?function(e,t){for(var n;;){if(e.lookahead===0&&(B(e),e.lookahead===0)){if(t===l)return O;break}if(e.match_length=0,n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++,n&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}(i,t):i.strategy===3?function(e,t){for(var n,r,i,o,s=e.window;;){if(e.lookahead<=w){if(B(e),e.lookahead<=w&&t===l)return O;if(e.lookahead===0)break}if(e.match_length=0,e.lookahead>=C&&0<e.strstart&&(r=s[i=e.strstart-1])===s[++i]&&r===s[++i]&&r===s[++i]){o=e.strstart+w;do;while(r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&r===s[++i]&&i<o);e.match_length=w-(o-i),e.match_length>e.lookahead&&(e.match_length=e.lookahead)}if(e.match_length>=C?(n=a._tr_tally(e,1,e.match_length-C),e.lookahead-=e.match_length,e.strstart+=e.match_length,e.match_length=0):(n=a._tr_tally(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++),n&&(I(e,!1),e.strm.avail_out===0))return O}return e.insert=0,t===u?(I(e,!0),e.strm.avail_out===0?A:j):e.last_lit&&(I(e,!1),e.strm.avail_out===0)?O:k}(i,t):r[i.level].func(i,t);if(m!==A&&m!==j||(i.status=666),m===O||m===A)return e.avail_out===0&&(i.last_flush=-1),d;if(m===k&&(t===1?a._tr_align(i):t!==5&&(a._tr_stored_block(i,0,0,!1),t===3&&(P(i.head),i.lookahead===0&&(i.strstart=0,i.block_start=0,i.insert=0))),F(e),e.avail_out===0))return i.last_flush=-1,d}return t===u?i.wrap<=0?1:(i.wrap===2?(L(i,255&e.adler),L(i,e.adler>>8&255),L(i,e.adler>>16&255),L(i,e.adler>>24&255),L(i,255&e.total_in),L(i,e.total_in>>8&255),L(i,e.total_in>>16&255),L(i,e.total_in>>24&255)):(R(i,e.adler>>>16),R(i,65535&e.adler)),F(e),0<i.wrap&&(i.wrap=-i.wrap),i.pending===0?1:d):d},n.deflateEnd=function(e){var t;return e&&e.state?(t=e.state.status)!==E&&t!==69&&t!==73&&t!==91&&t!==103&&t!==D&&t!==666?M(e,f):(e.state=null,t===D?M(e,-3):d):f},n.deflateSetDictionary=function(e,t){var n,r,a,s,c,l,u,p,m=t.length;if(!e||!e.state||(s=(n=e.state).wrap)===2||s===1&&n.status!==E||n.lookahead)return f;for(s===1&&(e.adler=o(e.adler,t,m,0)),n.wrap=0,m>=n.w_size&&(s===0&&(P(n.head),n.strstart=0,n.block_start=0,n.insert=0),p=new i.Buf8(n.w_size),i.arraySet(p,t,m-n.w_size,n.w_size,0),t=p,m=n.w_size),c=e.avail_in,l=e.next_in,u=e.input,e.avail_in=m,e.next_in=0,e.input=t,B(n);n.lookahead>=C;){for(r=n.strstart,a=n.lookahead-(C-1);n.ins_h=(n.ins_h<<n.hash_shift^n.window[r+C-1])&n.hash_mask,n.prev[r&n.w_mask]=n.head[n.ins_h],n.head[n.ins_h]=r,r++,--a;);n.strstart=r,n.lookahead=C-1,B(n)}return n.strstart+=n.lookahead,n.block_start=n.strstart,n.insert=n.lookahead,n.lookahead=0,n.match_length=n.prev_length=C-1,n.match_available=0,e.next_in=l,e.input=u,e.avail_in=c,n.wrap=s,d},n.deflateInfo=`pako deflate (from Nodeca project)`},{"../utils/common":41,"./adler32":43,"./crc32":45,"./messages":51,"./trees":52}],47:[function(e,t,n){t.exports=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name=``,this.comment=``,this.hcrc=0,this.done=!1}},{}],48:[function(e,t,n){t.exports=function(e,t){var n=e.state,r=e.next_in,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=e.input,E;i=r+(e.avail_in-5),a=e.next_out,E=e.output,o=a-(t-e.avail_out),s=a+(e.avail_out-257),c=n.dmax,l=n.wsize,u=n.whave,d=n.wnext,f=n.window,p=n.hold,m=n.bits,h=n.lencode,g=n.distcode,_=(1<<n.lenbits)-1,v=(1<<n.distbits)-1;e:do{m<15&&(p+=T[r++]<<m,m+=8,p+=T[r++]<<m,m+=8),y=h[p&_];t:for(;;){if(p>>>=b=y>>>24,m-=b,(b=y>>>16&255)==0)E[a++]=65535&y;else{if(!(16&b)){if(!(64&b)){y=h[(65535&y)+(p&(1<<b)-1)];continue t}if(32&b){n.mode=12;break e}e.msg=`invalid literal/length code`,n.mode=30;break e}x=65535&y,(b&=15)&&(m<b&&(p+=T[r++]<<m,m+=8),x+=p&(1<<b)-1,p>>>=b,m-=b),m<15&&(p+=T[r++]<<m,m+=8,p+=T[r++]<<m,m+=8),y=g[p&v];r:for(;;){if(p>>>=b=y>>>24,m-=b,!(16&(b=y>>>16&255))){if(!(64&b)){y=g[(65535&y)+(p&(1<<b)-1)];continue r}e.msg=`invalid distance code`,n.mode=30;break e}if(S=65535&y,m<(b&=15)&&(p+=T[r++]<<m,(m+=8)<b&&(p+=T[r++]<<m,m+=8)),c<(S+=p&(1<<b)-1)){e.msg=`invalid distance too far back`,n.mode=30;break e}if(p>>>=b,m-=b,(b=a-o)<S){if(u<(b=S-b)&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break e}if(w=f,(C=0)===d){if(C+=l-b,b<x){for(x-=b;E[a++]=f[C++],--b;);C=a-S,w=E}}else if(d<b){if(C+=l+d-b,(b-=d)<x){for(x-=b;E[a++]=f[C++],--b;);if(C=0,d<x){for(x-=b=d;E[a++]=f[C++],--b;);C=a-S,w=E}}}else if(C+=d-b,b<x){for(x-=b;E[a++]=f[C++],--b;);C=a-S,w=E}for(;2<x;)E[a++]=w[C++],E[a++]=w[C++],E[a++]=w[C++],x-=3;x&&(E[a++]=w[C++],1<x&&(E[a++]=w[C++]))}else{for(C=a-S;E[a++]=E[C++],E[a++]=E[C++],E[a++]=E[C++],2<(x-=3););x&&(E[a++]=E[C++],1<x&&(E[a++]=E[C++]))}break}}break}}while(r<i&&a<s);r-=x=m>>3,p&=(1<<(m-=x<<3))-1,e.next_in=r,e.next_out=a,e.avail_in=r<i?i-r+5:5-(r-i),e.avail_out=a<s?s-a+257:257-(a-s),n.hold=p,n.bits=m}},{}],49:[function(e,t,n){var r=e(`../utils/common`),i=e(`./adler32`),a=e(`./crc32`),o=e(`./inffast`),s=e(`./inftrees`),c=1,l=2,u=0,d=-2,f=1,p=852,m=592;function h(e){return(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24)}function g(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new r.Buf16(320),this.work=new r.Buf16(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}function _(e){var t;return e&&e.state?(t=e.state,e.total_in=e.total_out=t.total=0,e.msg=``,t.wrap&&(e.adler=1&t.wrap),t.mode=f,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new r.Buf32(p),t.distcode=t.distdyn=new r.Buf32(m),t.sane=1,t.back=-1,u):d}function v(e){var t;return e&&e.state?((t=e.state).wsize=0,t.whave=0,t.wnext=0,_(e)):d}function y(e,t){var n,r;return e&&e.state?(r=e.state,t<0?(n=0,t=-t):(n=1+(t>>4),t<48&&(t&=15)),t&&(t<8||15<t)?d:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,v(e))):d}function b(e,t){var n,r;return e?(r=new g,(e.state=r).window=null,(n=y(e,t))!==u&&(e.state=null),n):d}var x,S,C=!0;function w(e){if(C){var t;for(x=new r.Buf32(512),S=new r.Buf32(32),t=0;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(s(c,e.lens,0,288,x,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;s(l,e.lens,0,32,S,0,e.work,{bits:5}),C=!1}e.lencode=x,e.lenbits=9,e.distcode=S,e.distbits=5}function T(e,t,n,i){var a,o=e.state;return o.window===null&&(o.wsize=1<<o.wbits,o.wnext=0,o.whave=0,o.window=new r.Buf8(o.wsize)),i>=o.wsize?(r.arraySet(o.window,t,n-o.wsize,o.wsize,0),o.wnext=0,o.whave=o.wsize):(i<(a=o.wsize-o.wnext)&&(a=i),r.arraySet(o.window,t,n-i,a,o.wnext),(i-=a)?(r.arraySet(o.window,t,n-i,i,0),o.wnext=i,o.whave=o.wsize):(o.wnext+=a,o.wnext===o.wsize&&(o.wnext=0),o.whave<o.wsize&&(o.whave+=a))),0}n.inflateReset=v,n.inflateReset2=y,n.inflateResetKeep=_,n.inflateInit=function(e){return b(e,15)},n.inflateInit2=b,n.inflate=function(e,t){var n,p,m,g,_,v,y,b,x,S,C,E,D,O,k,A,j,M,N,P,F,I,L,R,z=0,B=new r.Buf8(4),V=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];if(!e||!e.state||!e.output||!e.input&&e.avail_in!==0)return d;(n=e.state).mode===12&&(n.mode=13),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,S=v,C=y,I=u;e:for(;;)switch(n.mode){case f:if(n.wrap===0){n.mode=13;break}for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(2&n.wrap&&b===35615){B[n.check=0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0),x=b=0,n.mode=2;break}if(n.flags=0,n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&b)<<8)+(b>>8))%31){e.msg=`incorrect header check`,n.mode=30;break}if((15&b)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(x-=4,F=8+(15&(b>>>=4)),n.wbits===0)n.wbits=F;else if(F>n.wbits){e.msg=`invalid window size`,n.mode=30;break}n.dmax=1<<F,e.adler=n.check=1,n.mode=512&b?10:12,x=b=0;break;case 2:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(n.flags=b,(255&n.flags)!=8){e.msg=`unknown compression method`,n.mode=30;break}if(57344&n.flags){e.msg=`unknown header flags set`,n.mode=30;break}n.head&&(n.head.text=b>>8&1),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0,n.mode=3;case 3:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.head&&(n.head.time=b),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,B[2]=b>>>16&255,B[3]=b>>>24&255,n.check=a(n.check,B,4,0)),x=b=0,n.mode=4;case 4:for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.head&&(n.head.xflags=255&b,n.head.os=b>>8),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0,n.mode=5;case 5:if(1024&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.length=b,n.head&&(n.head.extra_len=b),512&n.flags&&(B[0]=255&b,B[1]=b>>>8&255,n.check=a(n.check,B,2,0)),x=b=0}else n.head&&(n.head.extra=null);n.mode=6;case 6:if(1024&n.flags&&(v<(E=n.length)&&(E=v),E&&(n.head&&(F=n.head.extra_len-n.length,n.head.extra||(n.head.extra=Array(n.head.extra_len)),r.arraySet(n.head.extra,p,g,E,F)),512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,n.length-=E),n.length))break e;n.length=0,n.mode=7;case 7:if(2048&n.flags){if(v===0)break e;for(E=0;F=p[g+ E++],n.head&&F&&n.length<65536&&(n.head.name+=String.fromCharCode(F)),F&&E<v;);if(512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,F)break e}else n.head&&(n.head.name=null);n.length=0,n.mode=8;case 8:if(4096&n.flags){if(v===0)break e;for(E=0;F=p[g+ E++],n.head&&F&&n.length<65536&&(n.head.comment+=String.fromCharCode(F)),F&&E<v;);if(512&n.flags&&(n.check=a(n.check,p,E,g)),v-=E,g+=E,F)break e}else n.head&&(n.head.comment=null);n.mode=9;case 9:if(512&n.flags){for(;x<16;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b!==(65535&n.check)){e.msg=`header crc mismatch`,n.mode=30;break}x=b=0}n.head&&(n.head.hcrc=n.flags>>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=12;break;case 10:for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}e.adler=n.check=h(b),x=b=0,n.mode=11;case 11:if(n.havedict===0)return e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,2;e.adler=n.check=1,n.mode=12;case 12:if(t===5||t===6)break e;case 13:if(n.last){b>>>=7&x,x-=7&x,n.mode=27;break}for(;x<3;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}switch(n.last=1&b,--x,3&(b>>>=1)){case 0:n.mode=14;break;case 1:if(w(n),n.mode=20,t!==6)break;b>>>=2,x-=2;break e;case 2:n.mode=17;break;case 3:e.msg=`invalid block type`,n.mode=30}b>>>=2,x-=2;break;case 14:for(b>>>=7&x,x-=7&x;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if((65535&b)!=(b>>>16^65535)){e.msg=`invalid stored block lengths`,n.mode=30;break}if(n.length=65535&b,x=b=0,n.mode=15,t===6)break e;case 15:n.mode=16;case 16:if(E=n.length){if(v<E&&(E=v),y<E&&(E=y),E===0)break e;r.arraySet(m,p,g,E,_),v-=E,g+=E,y-=E,_+=E,n.length-=E;break}n.mode=12;break;case 17:for(;x<14;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(n.nlen=257+(31&b),b>>>=5,x-=5,n.ndist=1+(31&b),b>>>=5,x-=5,n.ncode=4+(15&b),b>>>=4,x-=4,286<n.nlen||30<n.ndist){e.msg=`too many length or distance symbols`,n.mode=30;break}n.have=0,n.mode=18;case 18:for(;n.have<n.ncode;){for(;x<3;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.lens[V[n.have++]]=7&b,b>>>=3,x-=3}for(;n.have<19;)n.lens[V[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,L={bits:n.lenbits},I=s(0,n.lens,0,19,n.lencode,0,n.work,L),n.lenbits=L.bits,I){e.msg=`invalid code lengths set`,n.mode=30;break}n.have=0,n.mode=19;case 19:for(;n.have<n.nlen+n.ndist;){for(;A=(z=n.lencode[b&(1<<n.lenbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(j<16)b>>>=k,x-=k,n.lens[n.have++]=j;else{if(j===16){for(R=k+2;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b>>>=k,x-=k,n.have===0){e.msg=`invalid bit length repeat`,n.mode=30;break}F=n.lens[n.have-1],E=3+(3&b),b>>>=2,x-=2}else if(j===17){for(R=k+3;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}x-=k,F=0,E=3+(7&(b>>>=k)),b>>>=3,x-=3}else{for(R=k+7;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}x-=k,F=0,E=11+(127&(b>>>=k)),b>>>=7,x-=7}if(n.have+E>n.nlen+n.ndist){e.msg=`invalid bit length repeat`,n.mode=30;break}for(;E--;)n.lens[n.have++]=F}}if(n.mode===30)break;if(n.lens[256]===0){e.msg=`invalid code -- missing end-of-block`,n.mode=30;break}if(n.lenbits=9,L={bits:n.lenbits},I=s(c,n.lens,0,n.nlen,n.lencode,0,n.work,L),n.lenbits=L.bits,I){e.msg=`invalid literal/lengths set`,n.mode=30;break}if(n.distbits=6,n.distcode=n.distdyn,L={bits:n.distbits},I=s(l,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,L),n.distbits=L.bits,I){e.msg=`invalid distances set`,n.mode=30;break}if(n.mode=20,t===6)break e;case 20:n.mode=21;case 21:if(6<=v&&258<=y){e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,o(e,C),_=e.next_out,m=e.output,y=e.avail_out,g=e.next_in,p=e.input,v=e.avail_in,b=n.hold,x=n.bits,n.mode===12&&(n.back=-1);break}for(n.back=0;A=(z=n.lencode[b&(1<<n.lenbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(A&&!(240&A)){for(M=k,N=A,P=j;A=(z=n.lencode[P+((b&(1<<M+N)-1)>>M)])>>>16&255,j=65535&z,!(M+(k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}b>>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,n.length=j,A===0){n.mode=26;break}if(32&A){n.back=-1,n.mode=12;break}if(64&A){e.msg=`invalid literal/length code`,n.mode=30;break}n.extra=15&A,n.mode=22;case 22:if(n.extra){for(R=n.extra;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.length+=b&(1<<n.extra)-1,b>>>=n.extra,x-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=23;case 23:for(;A=(z=n.distcode[b&(1<<n.distbits)-1])>>>16&255,j=65535&z,!((k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(!(240&A)){for(M=k,N=A,P=j;A=(z=n.distcode[P+((b&(1<<M+N)-1)>>M)])>>>16&255,j=65535&z,!(M+(k=z>>>24)<=x);){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}b>>>=M,x-=M,n.back+=M}if(b>>>=k,x-=k,n.back+=k,64&A){e.msg=`invalid distance code`,n.mode=30;break}n.offset=j,n.extra=15&A,n.mode=24;case 24:if(n.extra){for(R=n.extra;x<R;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}n.offset+=b&(1<<n.extra)-1,b>>>=n.extra,x-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg=`invalid distance too far back`,n.mode=30;break}n.mode=25;case 25:if(y===0)break e;if(E=C-y,n.offset>E){if((E=n.offset-E)>n.whave&&n.sane){e.msg=`invalid distance too far back`,n.mode=30;break}D=E>n.wnext?(E-=n.wnext,n.wsize-E):n.wnext-E,E>n.length&&(E=n.length),O=n.window}else O=m,D=_-n.offset,E=n.length;for(y<E&&(E=y),y-=E,n.length-=E;m[_++]=O[D++],--E;);n.length===0&&(n.mode=21);break;case 26:if(y===0)break e;m[_++]=n.length,y--,n.mode=21;break;case 27:if(n.wrap){for(;x<32;){if(v===0)break e;v--,b|=p[g++]<<x,x+=8}if(C-=y,e.total_out+=C,n.total+=C,C&&(e.adler=n.check=n.flags?a(n.check,m,C,_-C):i(n.check,m,C,_-C)),C=y,(n.flags?b:h(b))!==n.check){e.msg=`incorrect data check`,n.mode=30;break}x=b=0}n.mode=28;case 28:if(n.wrap&&n.flags){for(;x<32;){if(v===0)break e;v--,b+=p[g++]<<x,x+=8}if(b!==(4294967295&n.total)){e.msg=`incorrect length check`,n.mode=30;break}x=b=0}n.mode=29;case 29:I=1;break e;case 30:I=-3;break e;case 31:return-4;case 32:default:return d}return e.next_out=_,e.avail_out=y,e.next_in=g,e.avail_in=v,n.hold=b,n.bits=x,(n.wsize||C!==e.avail_out&&n.mode<30&&(n.mode<27||t!==4))&&T(e,e.output,e.next_out,C-e.avail_out)?(n.mode=31,-4):(S-=e.avail_in,C-=e.avail_out,e.total_in+=S,e.total_out+=C,n.total+=C,n.wrap&&C&&(e.adler=n.check=n.flags?a(n.check,m,C,e.next_out-C):i(n.check,m,C,e.next_out-C)),e.data_type=n.bits+(n.last?64:0)+(n.mode===12?128:0)+(n.mode===20||n.mode===15?256:0),(S==0&&C===0||t===4)&&I===u&&(I=-5),I)},n.inflateEnd=function(e){if(!e||!e.state)return d;var t=e.state;return t.window&&=null,e.state=null,u},n.inflateGetHeader=function(e,t){var n;return e&&e.state&&2&(n=e.state).wrap?((n.head=t).done=!1,u):d},n.inflateSetDictionary=function(e,t){var n,r=t.length;return e&&e.state?(n=e.state).wrap!==0&&n.mode!==11?d:n.mode===11&&i(1,t,r,0)!==n.check?-3:T(e,t,r,r)?(n.mode=31,-4):(n.havedict=1,u):d},n.inflateInfo=`pako inflate (from Nodeca project)`},{"../utils/common":41,"./adler32":43,"./crc32":45,"./inffast":48,"./inftrees":50}],50:[function(e,t,n){var r=e(`../utils/common`),i=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],a=[16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78],o=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0],s=[16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64];t.exports=function(e,t,n,c,l,u,d,f){var p,m,h,g,_,v,y,b,x,S=f.bits,C=0,w=0,T=0,E=0,D=0,O=0,k=0,A=0,j=0,M=0,N=null,P=0,F=new r.Buf16(16),I=new r.Buf16(16),L=null,R=0;for(C=0;C<=15;C++)F[C]=0;for(w=0;w<c;w++)F[t[n+w]]++;for(D=S,E=15;1<=E&&F[E]===0;E--);if(E<D&&(D=E),E===0)return l[u++]=20971520,l[u++]=20971520,f.bits=1,0;for(T=1;T<E&&F[T]===0;T++);for(D<T&&(D=T),C=A=1;C<=15;C++)if(A<<=1,(A-=F[C])<0)return-1;if(0<A&&(e===0||E!==1))return-1;for(I[1]=0,C=1;C<15;C++)I[C+1]=I[C]+F[C];for(w=0;w<c;w++)t[n+w]!==0&&(d[I[t[n+w]]++]=w);if(v=e===0?(N=L=d,19):e===1?(N=i,P-=257,L=a,R-=257,256):(N=o,L=s,-1),C=T,_=u,k=w=M=0,h=-1,g=(j=1<<(O=D))-1,e===1&&852<j||e===2&&592<j)return 1;for(;;){for(y=C-k,x=d[w]<v?(b=0,d[w]):d[w]>v?(b=L[R+d[w]],N[P+d[w]]):(b=96,0),p=1<<C-k,T=m=1<<O;l[_+(M>>k)+(m-=p)]=y<<24|b<<16|x|0,m!==0;);for(p=1<<C-1;M&p;)p>>=1;if(p===0?M=0:(M&=p-1,M+=p),w++,--F[C]==0){if(C===E)break;C=t[n+d[w]]}if(D<C&&(M&g)!==h){for(k===0&&(k=D),_+=T,A=1<<(O=C-k);O+k<E&&!((A-=F[O+k])<=0);)O++,A<<=1;if(j+=1<<O,e===1&&852<j||e===2&&592<j)return 1;l[h=M&g]=D<<24|O<<16|_-u|0}}return M!==0&&(l[_+M]=C-k<<24|4194304),f.bits=D,0}},{"../utils/common":41}],51:[function(e,t,n){t.exports={2:`need dictionary`,1:`stream end`,0:``,"-1":`file error`,"-2":`stream error`,"-3":`data error`,"-4":`insufficient memory`,"-5":`buffer error`,"-6":`incompatible version`}},{}],52:[function(e,t,n){var r=e(`../utils/common`),i=0,a=1;function o(e){for(var t=e.length;0<=--t;)e[t]=0}var s=0,c=29,l=256,u=l+1+c,d=30,f=19,p=2*u+1,m=15,h=16,g=7,_=256,v=16,y=17,b=18,x=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],S=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],C=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],w=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],T=Array(2*(u+2));o(T);var E=Array(2*d);o(E);var D=Array(512);o(D);var O=Array(256);o(O);var k=Array(c);o(k);var A,j,M,N=Array(d);function P(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}function F(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}function I(e){return e<256?D[e]:D[256+(e>>>7)]}function L(e,t){e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255}function R(e,t,n){e.bi_valid>h-n?(e.bi_buf|=t<<e.bi_valid&65535,L(e,e.bi_buf),e.bi_buf=t>>h-e.bi_valid,e.bi_valid+=n-h):(e.bi_buf|=t<<e.bi_valid&65535,e.bi_valid+=n)}function z(e,t,n){R(e,n[2*t],n[2*t+1])}function B(e,t){for(var n=0;n|=1&e,e>>>=1,n<<=1,0<--t;);return n>>>1}function V(e,t,n){var r,i,a=Array(m+1),o=0;for(r=1;r<=m;r++)a[r]=o=o+n[r-1]<<1;for(i=0;i<=t;i++){var s=e[2*i+1];s!==0&&(e[2*i]=B(a[s]++,s))}}function H(e){var t;for(t=0;t<u;t++)e.dyn_ltree[2*t]=0;for(t=0;t<d;t++)e.dyn_dtree[2*t]=0;for(t=0;t<f;t++)e.bl_tree[2*t]=0;e.dyn_ltree[2*_]=1,e.opt_len=e.static_len=0,e.last_lit=e.matches=0}function U(e){8<e.bi_valid?L(e,e.bi_buf):0<e.bi_valid&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0}function W(e,t,n,r){var i=2*t,a=2*n;return e[i]<e[a]||e[i]===e[a]&&r[t]<=r[n]}function ee(e,t,n){for(var r=e.heap[n],i=n<<1;i<=e.heap_len&&(i<e.heap_len&&W(t,e.heap[i+1],e.heap[i],e.depth)&&i++,!W(t,r,e.heap[i],e.depth));)e.heap[n]=e.heap[i],n=i,i<<=1;e.heap[n]=r}function te(e,t,n){var r,i,a,o,s=0;if(e.last_lit!==0)for(;r=e.pending_buf[e.d_buf+2*s]<<8|e.pending_buf[e.d_buf+2*s+1],i=e.pending_buf[e.l_buf+s],s++,r===0?z(e,i,t):(z(e,(a=O[i])+l+1,t),(o=x[a])!==0&&R(e,i-=k[a],o),z(e,a=I(--r),n),(o=S[a])!==0&&R(e,r-=N[a],o)),s<e.last_lit;);z(e,_,t)}function ne(e,t){var n,r,i,a=t.dyn_tree,o=t.stat_desc.static_tree,s=t.stat_desc.has_stree,c=t.stat_desc.elems,l=-1;for(e.heap_len=0,e.heap_max=p,n=0;n<c;n++)a[2*n]===0?a[2*n+1]=0:(e.heap[++e.heap_len]=l=n,e.depth[n]=0);for(;e.heap_len<2;)a[2*(i=e.heap[++e.heap_len]=l<2?++l:0)]=1,e.depth[i]=0,e.opt_len--,s&&(e.static_len-=o[2*i+1]);for(t.max_code=l,n=e.heap_len>>1;1<=n;n--)ee(e,a,n);for(i=c;n=e.heap[1],e.heap[1]=e.heap[e.heap_len--],ee(e,a,1),r=e.heap[1],e.heap[--e.heap_max]=n,e.heap[--e.heap_max]=r,a[2*i]=a[2*n]+a[2*r],e.depth[i]=(e.depth[n]>=e.depth[r]?e.depth[n]:e.depth[r])+1,a[2*n+1]=a[2*r+1]=i,e.heap[1]=i++,ee(e,a,1),2<=e.heap_len;);e.heap[--e.heap_max]=e.heap[1],function(e,t){var n,r,i,a,o,s,c=t.dyn_tree,l=t.max_code,u=t.stat_desc.static_tree,d=t.stat_desc.has_stree,f=t.stat_desc.extra_bits,h=t.stat_desc.extra_base,g=t.stat_desc.max_length,_=0;for(a=0;a<=m;a++)e.bl_count[a]=0;for(c[2*e.heap[e.heap_max]+1]=0,n=e.heap_max+1;n<p;n++)g<(a=c[2*c[2*(r=e.heap[n])+1]+1]+1)&&(a=g,_++),c[2*r+1]=a,l<r||(e.bl_count[a]++,o=0,h<=r&&(o=f[r-h]),s=c[2*r],e.opt_len+=s*(a+o),d&&(e.static_len+=s*(u[2*r+1]+o)));if(_!==0){do{for(a=g-1;e.bl_count[a]===0;)a--;e.bl_count[a]--,e.bl_count[a+1]+=2,e.bl_count[g]--,_-=2}while(0<_);for(a=g;a!==0;a--)for(r=e.bl_count[a];r!==0;)l<(i=e.heap[--n])||(c[2*i+1]!==a&&(e.opt_len+=(a-c[2*i+1])*c[2*i],c[2*i+1]=a),r--)}}(e,t),V(a,l,e.bl_count)}function re(e,t,n){var r,i,a=-1,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=o,o=t[2*(r+1)+1],++s<c&&i===o||(s<l?e.bl_tree[2*i]+=s:i===0?s<=10?e.bl_tree[2*y]++:e.bl_tree[2*b]++:(i!==a&&e.bl_tree[2*i]++,e.bl_tree[2*v]++),a=i,l=(s=0)===o?(c=138,3):i===o?(c=6,3):(c=7,4))}function ie(e,t,n){var r,i,a=-1,o=t[1],s=0,c=7,l=4;for(o===0&&(c=138,l=3),r=0;r<=n;r++)if(i=o,o=t[2*(r+1)+1],!(++s<c&&i===o)){if(s<l)for(;z(e,i,e.bl_tree),--s!=0;);else i===0?s<=10?(z(e,y,e.bl_tree),R(e,s-3,3)):(z(e,b,e.bl_tree),R(e,s-11,7)):(i!==a&&(z(e,i,e.bl_tree),s--),z(e,v,e.bl_tree),R(e,s-3,2));a=i,l=(s=0)===o?(c=138,3):i===o?(c=6,3):(c=7,4)}}o(N);var ae=!1;function oe(e,t,n,i){R(e,(s<<1)+ +!!i,3),function(e,t,n,i){U(e),i&&(L(e,n),L(e,~n)),r.arraySet(e.pending_buf,e.window,t,n,e.pending),e.pending+=n}(e,t,n,!0)}n._tr_init=function(e){ae||=(function(){var e,t,n,r,i,a=Array(m+1);for(r=n=0;r<c-1;r++)for(k[r]=n,e=0;e<1<<x[r];e++)O[n++]=r;for(O[n-1]=r,r=i=0;r<16;r++)for(N[r]=i,e=0;e<1<<S[r];e++)D[i++]=r;for(i>>=7;r<d;r++)for(N[r]=i<<7,e=0;e<1<<S[r]-7;e++)D[256+ i++]=r;for(t=0;t<=m;t++)a[t]=0;for(e=0;e<=143;)T[2*e+1]=8,e++,a[8]++;for(;e<=255;)T[2*e+1]=9,e++,a[9]++;for(;e<=279;)T[2*e+1]=7,e++,a[7]++;for(;e<=287;)T[2*e+1]=8,e++,a[8]++;for(V(T,u+1,a),e=0;e<d;e++)E[2*e+1]=5,E[2*e]=B(e,5);A=new P(T,x,l+1,u,m),j=new P(E,S,0,d,m),M=new P([],C,0,f,g)}(),!0),e.l_desc=new F(e.dyn_ltree,A),e.d_desc=new F(e.dyn_dtree,j),e.bl_desc=new F(e.bl_tree,M),e.bi_buf=0,e.bi_valid=0,H(e)},n._tr_stored_block=oe,n._tr_flush_block=function(e,t,n,r){var o,s,c=0;0<e.level?(e.strm.data_type===2&&(e.strm.data_type=function(e){var t,n=4093624447;for(t=0;t<=31;t++,n>>>=1)if(1&n&&e.dyn_ltree[2*t]!==0)return i;if(e.dyn_ltree[18]!==0||e.dyn_ltree[20]!==0||e.dyn_ltree[26]!==0)return a;for(t=32;t<l;t++)if(e.dyn_ltree[2*t]!==0)return a;return i}(e)),ne(e,e.l_desc),ne(e,e.d_desc),c=function(e){var t;for(re(e,e.dyn_ltree,e.l_desc.max_code),re(e,e.dyn_dtree,e.d_desc.max_code),ne(e,e.bl_desc),t=f-1;3<=t&&e.bl_tree[2*w[t]+1]===0;t--);return e.opt_len+=3*(t+1)+5+5+4,t}(e),o=e.opt_len+3+7>>>3,(s=e.static_len+3+7>>>3)<=o&&(o=s)):o=s=n+5,n+4<=o&&t!==-1?oe(e,t,n,r):e.strategy===4||s===o?(R(e,2+ +!!r,3),te(e,T,E)):(R(e,4+ +!!r,3),function(e,t,n,r){var i;for(R(e,t-257,5),R(e,n-1,5),R(e,r-4,4),i=0;i<r;i++)R(e,e.bl_tree[2*w[i]+1],3);ie(e,e.dyn_ltree,t-1),ie(e,e.dyn_dtree,n-1)}(e,e.l_desc.max_code+1,e.d_desc.max_code+1,c+1),te(e,e.dyn_ltree,e.dyn_dtree)),H(e),r&&U(e)},n._tr_tally=function(e,t,n){return e.pending_buf[e.d_buf+2*e.last_lit]=t>>>8&255,e.pending_buf[e.d_buf+2*e.last_lit+1]=255&t,e.pending_buf[e.l_buf+e.last_lit]=255&n,e.last_lit++,t===0?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(O[n]+l+1)]++,e.dyn_dtree[2*I(t)]++),e.last_lit===e.lit_bufsize-1},n._tr_align=function(e){R(e,2,3),z(e,_,T),function(e){e.bi_valid===16?(L(e,e.bi_buf),e.bi_buf=0,e.bi_valid=0):8<=e.bi_valid&&(e.pending_buf[e.pending++]=255&e.bi_buf,e.bi_buf>>=8,e.bi_valid-=8)}(e)}},{"../utils/common":41}],53:[function(e,t,n){t.exports=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg=``,this.state=null,this.data_type=2,this.adler=0}},{}],54:[function(e,t,n){(function(e){(function(e,t){if(!e.setImmediate){var n,r,i,a,o=1,s={},c=!1,l=e.document,u=Object.getPrototypeOf&&Object.getPrototypeOf(e);u=u&&u.setTimeout?u:e,n={}.toString.call(e.process)===`[object process]`?function(e){process.nextTick(function(){f(e)})}:function(){if(e.postMessage&&!e.importScripts){var t=!0,n=e.onmessage;return e.onmessage=function(){t=!1},e.postMessage(``,`*`),e.onmessage=n,t}}()?(a=`setImmediate$`+Math.random()+`$`,e.addEventListener?e.addEventListener(`message`,p,!1):e.attachEvent(`onmessage`,p),function(t){e.postMessage(a+t,`*`)}):e.MessageChannel?((i=new MessageChannel).port1.onmessage=function(e){f(e.data)},function(e){i.port2.postMessage(e)}):l&&`onreadystatechange`in l.createElement(`script`)?(r=l.documentElement,function(e){var t=l.createElement(`script`);t.onreadystatechange=function(){f(e),t.onreadystatechange=null,r.removeChild(t),t=null},r.appendChild(t)}):function(e){setTimeout(f,0,e)},u.setImmediate=function(e){typeof e!=`function`&&(e=Function(``+e));for(var t=Array(arguments.length-1),r=0;r<t.length;r++)t[r]=arguments[r+1];return s[o]={callback:e,args:t},n(o),o++},u.clearImmediate=d}function d(e){delete s[e]}function f(e){if(c)setTimeout(f,0,e);else{var n=s[e];if(n){c=!0;try{(function(e){var n=e.callback,r=e.args;switch(r.length){case 0:n();break;case 1:n(r[0]);break;case 2:n(r[0],r[1]);break;case 3:n(r[0],r[1],r[2]);break;default:n.apply(t,r)}})(n)}finally{d(e),c=!1}}}}function p(t){t.source===e&&typeof t.data==`string`&&t.data.indexOf(a)===0&&f(+t.data.slice(a.length))}})(typeof self>`u`?e===void 0?this:e:self)}).call(this,typeof global<`u`?global:typeof self<`u`?self:typeof window<`u`?window:{})},{}]},{},[10])(10)})}))(),1);function ce(e){return`llm-inspector-${ge(e)}.zip`}function le(e,t,n={}){let r=new Map(t.map(e=>[e.id,e])),i=n.exportedAt??new Date().toISOString(),a=e.logs.map((e,t)=>me(e,t)),o=[{path:`README.md`,contents:_e()},{path:`manifest.json`,contents:G({exportedAt:i,conversationId:e.conversationId??null,messageId:e.messageId??null,conversationKind:e.conversationKind,conversationTotalEstimatedCostUsd:e.conversationTotalEstimatedCostUsd??null,callCount:e.logs.length,calls:a})},{path:`conversation/actual-user-messages.json`,contents:G({conversationId:e.conversationId??null,messageId:e.messageId??null,description:`User-authored message sections extracted from the normalized request context. These are intentionally separate from provider request payloads.`,messages:fe(e.logs)})},{path:`conversation/llm-calls.json`,contents:G(a)},{path:`memory/memory-recall.json`,contents:G(e.memoryRecall??null)},{path:`memory/memory-v2-activation.json`,contents:G(e.memoryV2Activation??null)}];return e.logs.forEach((e,t)=>{let n=he(e,t),i=r.get(e.id);o.push({path:`normalized-context/calls/${n}/summary.json`,contents:G(e.summary??null)},{path:`normalized-context/calls/${n}/request-sections.json`,contents:G(e.requestSections??[])},{path:`normalized-context/calls/${n}/response-sections.json`,contents:G(e.responseSections??[])},{path:`provider-payloads/calls/${n}/request.json`,contents:G(i?.requestPayload??null)},{path:`provider-payloads/calls/${n}/response.json`,contents:G(i?.responsePayload??null)})}),o}async function ue(e,t){let n=new se.default;for(let r of le(e,t))n.file(r.path,r.contents);return n.generateAsync({type:`blob`,mimeType:`application/zip`})}function de(e,t){let n=URL.createObjectURL(e),r=document.createElement(`a`);r.href=n,r.download=t,document.body.appendChild(r),r.click(),r.remove(),URL.revokeObjectURL(n)}function fe(e){let t=[];return e.forEach((e,n)=>{for(let[r,i]of(e.requestSections??[]).entries())pe(i)&&t.push({callId:e.id,callIndex:n,sectionIndex:r,label:i.label??null,role:i.role??null,text:i.text??null,...i.data===void 0?{}:{data:i.data}})}),t}function pe(e){return e.kind===`message`&&e.role===`user`}function me(e,t){return{index:t,id:e.id,directory:he(e,t),createdAt:e.createdAt,provider:e.provider??e.summary?.provider??null,model:e.summary?.model??null,status:e.summary?.status??null,stopReason:e.summary?.stopReason??null,estimatedCostUsd:e.summary?.estimatedCostUsd??null}}function he(e,t){return`${String(t+1).padStart(3,`0`)}-${ge(e.id)}`}function ge(e){return e.replace(/[^A-Za-z0-9._-]+/g,`_`).replace(/^_+|_+$/g,``)||`unknown`}function G(e){return`${JSON.stringify(e,null,2)}\n`}function _e(){return"# LLM Inspector Export\n\nThis archive separates the inspector data into human/debug context and provider raw payloads.\n\n## Folders\n\n- `conversation/actual-user-messages.json` — user-authored message sections extracted from the normalized request context. This is the human conversation layer.\n- `normalized-context/calls/<call>/` — provider-normalized request/response sections plus summary metadata, matching the Prompt / Response / Overview tabs.\n- `provider-payloads/calls/<call>/` — raw request and response JSON sent to and received from the LLM provider.\n- `memory/` — memory recall and memory-v2 activation snapshots shown in the Memory tab.\n- `manifest.json` — export metadata and call directory index.\n\nUse `conversation/actual-user-messages.json` when you need to inspect what the user actually said. Use `provider-payloads/` when you need to debug the exact provider API envelope.\n"}var ve=class extends Error{status;constructor(e,t){super(t),this.name=`LlmPayloadRequestError`,this.status=e}};function ye(e,t){return d({queryKey:[`assistants`,e,`llm-request-logs`,t,`payload`],queryFn:async({signal:n})=>{if(!e||!t)throw new ve(0,`Missing assistantId or logId`);let{data:r,response:i}=await v({path:{assistant_id:e,id:t},signal:n,throwOnError:!1});if(!i||!i.ok){let e=await i?.clone().text().catch(()=>``);throw new ve(i?.status??0,e||i?.statusText||`Failed to load payload`)}return r??{id:t,requestPayload:null,responsePayload:null}},enabled:!!(e&&t),staleTime:300*1e3})}function be(e,t){return l(ye(e,t))}var K=`Unavailable`,xe=new Intl.NumberFormat(void 0,{style:`decimal`}),Se=new Intl.NumberFormat(void 0,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:4}),Ce=new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`medium`});function q(e){return e==null||!Number.isFinite(e)?K:xe.format(e)}function we(e){return e==null||!Number.isFinite(e)?K:Se.format(e)}function Te(e,t){let n=[];return e!=null&&Number.isFinite(e)&&n.push(`Created ${q(e)}`),t!=null&&Number.isFinite(t)&&n.push(`Read ${q(t)}`),n.length?n.join(`, `):K}function Ee(e){if(e==null)return K;let t=e.trim();return t.length?t:K}var De={openai:`OpenAI`,anthropic:`Anthropic`,gemini:`Gemini`};function Oe(e){if(!e)return K;let t=e.trim();if(!t)return K;let n=t.toLowerCase(),r=De[n];if(r)return r;let i=n.split(/[-_]+/).filter(Boolean);return i.length?i.map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `):t}function ke(e){return e==null||!Number.isFinite(e)?K:Ce.format(new Date(e))}function Ae(e){return Oe(e.provider)===`Unavailable`?!1:e.model==null&&e.status==null&&e.inputTokens==null&&e.outputTokens==null&&e.cacheCreationInputTokens==null&&e.cacheReadInputTokens==null&&e.stopReason==null&&e.requestMessageCount==null&&e.requestToolCount==null&&e.responseMessageCount==null&&e.responseToolCallCount==null&&e.responsePreview==null&&(!e.toolCallNames||e.toolCallNames.length===0)}function je(e,t){let n=ke(e),r=t?Oe(t):null;return r&&r!==`Unavailable`?`Recorded at ${n} from ${r}. The daemon couldn't normalize a summary, but the raw request and response are still available on the Raw tab.`:`Recorded at ${n}. The daemon couldn't normalize a summary, but the raw request and response are still available on the Raw tab.`}var J=u();function Me({logs:e,selectedLogId:t,buildCallHref:n,onSelect:r}){if(!e.length)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center p-4 text-label-default`,style:{color:`var(--content-tertiary)`},children:`No LLM calls recorded.`});let i=[...e].reverse();return(0,J.jsxs)(`nav`,{className:`flex flex-col gap-2 p-3`,"aria-label":`LLM calls`,children:[(0,J.jsx)(`div`,{className:`px-1 text-label-default`,style:{color:`var(--content-tertiary)`},children:e.length===1?`1 LLM call`:`${e.length} LLM calls`}),i.map((i,a)=>(0,J.jsx)(Ne,{entry:i,callNumber:e.length-a,isSelected:i.id===t,isLatest:a===0,href:n(i.id),onSelect:r},i.id))]})}function Ne({entry:e,callNumber:t,isSelected:n,isLatest:r,href:i,onSelect:a}){let o=Pe(e),c=Fe(e)??`Unrecognized call`,l=we(e.summary?.estimatedCostUsd??null);return(0,J.jsxs)(s,{to:i,onClick:a,"aria-current":n?`page`:void 0,className:`flex flex-col gap-2 rounded-md p-3 text-left no-underline transition-colors hover:opacity-90`,style:{background:n?`var(--surface-active)`:`var(--surface-overlay)`,border:`1px solid ${n?`var(--border-active)`:o?`var(--system-negative-strong)`:`var(--border-base)`}`},children:[(0,J.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,J.jsx)(`span`,{className:`line-clamp-1 flex-1 text-body-medium-default`,style:{color:`var(--content-default)`},children:o?(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,J.jsx)(F,{className:`h-3.5 w-3.5`,style:{color:`var(--system-negative-strong)`},"aria-hidden":!0}),(0,J.jsxs)(`span`,{children:[`Call `,t]})]}):(0,J.jsxs)(J.Fragment,{children:[`Call `,t]})}),r?(0,J.jsx)(`span`,{className:`rounded-[4px] px-1.5 py-0.5 text-label-default`,style:{background:`var(--surface-base)`,color:`var(--primary-default, var(--content-default))`},children:`Latest`}):null]}),(0,J.jsx)(`div`,{className:`line-clamp-2 text-label-default`,style:{color:o?`var(--system-negative-strong)`:`var(--content-secondary)`},children:c}),(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1 text-label-default`,style:{color:`var(--content-tertiary)`},children:[(0,J.jsxs)(`span`,{className:`inline-flex items-baseline gap-1 rounded-[4px] px-1.5 py-0.5`,style:{background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,J.jsx)(`span`,{style:{color:`var(--content-secondary)`},children:`Cost`}),(0,J.jsx)(`span`,{className:`font-medium`,children:l})]}),(0,J.jsx)(`span`,{className:`min-w-0 flex-1 text-right`,children:ke(e.createdAt)})]})]})}function Pe(e){return e.callSite===T}function Fe(e){if(Pe(e))return Ie(e.agentLoopExitReason??null);let t=Oe(e.summary?.provider??null),n=e.summary?.model?Ee(e.summary.model):null,r=[t===`Unavailable`?null:t,n].filter(e=>!!e);return r.length>0?r.join(` · `):null}function Ie(e){switch(e){case`budget_yield_unrecovered`:return`Yield · compaction couldn't fit next step`;case null:case``:return`Agent loop error`;default:return`Agent loop error · ${e}`}}function Le({logs:e,selectedLogId:t,buildCallHref:n}){let[r,i]=(0,U.useState)(!1),a=e.length,o=t?e.findIndex(e=>e.id===t):-1,s=o>=0?o+1:null,c=s==null?a===1?`1 LLM call`:`${a} LLM calls`:`Call ${s} of ${a}`;return(0,J.jsxs)(m.Root,{open:r,onOpenChange:i,children:[(0,J.jsx)(m.Trigger,{asChild:!0,children:(0,J.jsxs)(`button`,{type:`button`,"aria-label":`Select an LLM call to inspect`,className:`flex w-full shrink-0 items-center justify-between gap-2 px-4 py-2.5 text-left`,style:{background:`var(--surface-base)`,borderBottom:`1px solid var(--border-base)`,color:`var(--content-default)`},children:[(0,J.jsx)(`span`,{className:`text-label-medium-default`,children:c}),(0,J.jsx)(L,{size:16,"aria-hidden":!0,style:{color:`var(--content-secondary)`}})]})}),(0,J.jsxs)(m.Content,{className:`max-h-[80dvh]`,children:[(0,J.jsx)(m.Header,{children:(0,J.jsx)(m.Title,{children:`Select a call`})}),(0,J.jsx)(m.Body,{className:`-mx-4 px-0`,children:(0,J.jsx)(Me,{logs:e,selectedLogId:t,buildCallHref:n,onSelect:()=>i(!1)})})]})]})}var Re=[{id:`overview`,label:`Overview`},{id:`prompt`,label:`Prompt`},{id:`response`,label:`Response`},{id:`raw`,label:`Raw`},{id:`compaction`,label:`Compaction`},{id:`skills`,label:`Skills`},{id:`memory`,label:`Memory`}];function ze({selected:e,onSelect:t}){return(0,J.jsx)(`div`,{className:`flex shrink-0 overflow-x-auto px-4`,style:{borderBottom:`1px solid var(--border-base)`},role:`tablist`,children:Re.map(n=>(0,J.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e===n.id,onClick:()=>t(n.id),className:D(`-mb-px shrink-0 whitespace-nowrap border-b-2 px-3 py-2 text-label-medium-default transition-colors`,e===n.id?`border-[var(--primary-base)] text-[var(--content-default)]`:`border-transparent text-[var(--content-secondary)] hover:text-[var(--content-default)]`),children:n.label},n.id))})}var Be=class extends Error{status;constructor(e,t){super(t),this.name=`CompactionTrailRequestError`,this.status=e}};function Ve(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.conversationId==`string`&&Array.isArray(t.events)}async function He(e,t,n,r){let{data:i,error:a,response:o}=await _({path:{assistant_id:e,id:t},query:{callId:n},signal:r,throwOnError:!1});if(x(o,a,`Failed to fetch compaction trail`),!o.ok)throw new Be(o.status,`Compaction trail request failed (HTTP ${o.status})`);if(!Ve(i))throw new Be(0,`Compaction trail response was malformed`);return i}function Ue(e,t,n){return d({queryKey:[`assistants`,e,`conversations`,t,`compaction`,{callId:n}],queryFn:async({signal:r})=>{if(!e)throw new Be(0,`Missing assistantId`);if(!t)throw new Be(0,`Missing conversationId`);if(!n)throw new Be(0,`Missing callId`);return await He(e,t,n,r)},enabled:!!(e&&t&&n),staleTime:3e4})}function We(e,t,n){return l(Ue(e,t,n))}function Ge({assistantId:e,conversationId:t,entry:n}){let{data:r,isLoading:i,isError:a,error:o,refetch:s}=We(e,t,n.id);if(i)return(0,J.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:(0,J.jsx)(p,{padding:`md`,children:(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:`Loading compaction trail…`})})});if(a){let e=o&&typeof o==`object`&&`message`in o?String(o.message):`Failed to load compaction trail.`;return(0,J.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:(0,J.jsx)(p,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(M,{size:16,"aria-hidden":!0,style:{color:`var(--content-secondary)`}}),(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Failed to load`})]}),(0,J.jsx)(`p`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,J.jsx)(`div`,{children:(0,J.jsx)(f,{variant:`outlined`,size:`compact`,onClick:()=>s(),children:`Retry`})})]})})})}let c=r?.events??[];return c.length===0?(0,J.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:(0,J.jsxs)(p,{padding:`md`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No compaction ran before this call`}),(0,J.jsx)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`The compactor only runs when the conversation crosses its context budget. If you expect events here, check that the conversation actually crossed the auto-compaction threshold prior to this call.`})]})}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(Ke,{events:c}),c.map((e,t)=>(0,J.jsx)(Ye,{event:e,index:t+1,totalCount:c.length},e.id))]})}function Ke({events:e}){let t=e.length,n=e.filter(e=>e.stopReason&&e.stopReason!==`end_turn`).length,r=qe(e.map(e=>e.inputTokens)),i=qe(e.map(e=>e.outputTokens)),a=Je(e.map(e=>e.durationMs)),o=qe(e.map(e=>e.estimatedCostUsd));return(0,J.jsx)(p,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Compaction trail`}),(0,J.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-tertiary)`},children:[t===1?`1 compaction before this call`:`${t} compactions before this call`,n>0?` · ${n} failed`:``]})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,J.jsx)(Y,{label:`Total tokens compacted`,value:r==null?K:q(r)}),(0,J.jsx)(Y,{label:`Total summary tokens`,value:i==null?K:q(i)}),(0,J.jsx)(Y,{label:`Avg compaction latency`,value:a==null?K:`${q(a)} ms`}),(0,J.jsx)(Y,{label:`Total compaction cost`,value:o==null?K:we(o)})]})]})})}function qe(e){let t=0;for(let n of e){if(n==null||!Number.isFinite(n))return null;t+=n}return t}function Je(e){if(e.length===0)return null;let t=0;for(let n of e){if(n==null||!Number.isFinite(n))return null;t+=n}return Math.round(t/e.length)}function Ye({event:e,index:t,totalCount:n}){let[r,i]=(0,U.useState)(!1),a=e.stopReason!=null&&e.stopReason!==`end_turn`,o=Ze(e.inputTokens,e.outputTokens);return(0,J.jsx)(p,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,J.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,J.jsx)(Xe,{isError:a}),(0,J.jsxs)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:[`Compaction `,t,(0,J.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[` `,`/ `,n]})]})]}),(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-tertiary)`},children:ke(e.createdAt)})]}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,J.jsx)(Y,{label:`Model`,value:`${Oe(e.provider)} · ${Ee(e.model)}`}),(0,J.jsx)(Y,{label:`Tokens`,value:`${q(e.inputTokens)} → ${q(e.outputTokens)}${o?` (${o})`:``}`}),(0,J.jsx)(Y,{label:`Messages compacted`,value:q(e.requestMessageCount)}),(0,J.jsx)(Y,{label:`Duration`,value:e.durationMs!=null&&Number.isFinite(e.durationMs)?`${q(Math.round(e.durationMs))} ms`:K}),(0,J.jsx)(Y,{label:`Stop reason`,value:Ee(e.stopReason)}),(0,J.jsx)(Y,{label:`Cost`,value:we(e.estimatedCostUsd)})]}),e.responsePreview?(0,J.jsxs)(`div`,{className:`flex flex-col gap-2 border-t pt-3`,style:{borderColor:`var(--border-base)`},children:[(0,J.jsxs)(`button`,{type:`button`,onClick:()=>i(e=>!e),className:`flex items-center gap-1 text-label-medium-default hover:underline`,style:{color:`var(--content-secondary)`},children:[r?(0,J.jsx)(L,{size:14,"aria-hidden":!0}):(0,J.jsx)(g,{size:14,"aria-hidden":!0}),r?`Hide summary excerpt`:`Show summary excerpt`]}),r?(0,J.jsx)(`p`,{className:`select-text whitespace-pre-wrap break-words text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:e.responsePreview}):null]}):null]})})}function Xe({isError:e}){return(0,J.jsx)(`span`,{className:`inline-flex items-center`,style:{color:e?`var(--content-warning)`:`var(--content-success)`},children:(0,J.jsx)(e?M:I,{size:14,"aria-hidden":!0})})}function Y({label:e,value:t}){return(0,J.jsxs)(`div`,{className:`flex items-baseline gap-3`,children:[(0,J.jsx)(`span`,{className:`shrink-0 text-label-default`,style:{color:`var(--content-secondary)`,minWidth:`10rem`},children:e}),(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-default)`},children:t})]})}function Ze(e,t){if(e==null||t==null||!Number.isFinite(e)||!Number.isFinite(t)||t<=0||e<=t)return null;let n=e/t;return Number.isFinite(n)?`${Math.round(n)}× smaller`:null}function Qe({context:e}){let t=e?.memoryRecall??null,n=e?.memoryV2Activation??null,r=e?.memoryV3Selection??null,i=t!==null,a=n!==null,o=r!=null,s=[{id:`v3`,label:`Memory V3`,show:o},{id:`v2`,label:`Memory V2`,show:a},{id:`recall`,label:`Recall (v1)`,show:i}].filter(e=>e.show),[c,l]=(0,U.useState)(a?`v2`:o?`v3`:`recall`);if((0,U.useEffect)(()=>{l(a?`v2`:o?`v3`:`recall`)},[a,o,i]),s.length===0)return(0,J.jsx)(pt,{});let u=s.some(e=>e.id===c)?c:s[0]?.id??`recall`;return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[s.length>1&&(0,J.jsx)(`div`,{className:`flex gap-1 px-4 py-2`,style:{borderBottom:`1px solid var(--border-base)`},children:s.map(e=>(0,J.jsx)($e,{label:e.label,active:u===e.id,onClick:()=>l(e.id)},e.id))}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto`,children:u===`v3`&&r!=null?(0,J.jsx)(rt,{selection:r}):u===`v2`&&n!=null?(0,J.jsx)(nt,{activation:n}):t==null?null:(0,J.jsx)(et,{recall:t})})]})}function $e({label:e,active:t,onClick:n}){return(0,J.jsx)(`button`,{onClick:n,className:`rounded-full px-3 py-1 text-label-default transition-colors`,style:{background:t?`var(--surface-active)`:`var(--surface-overlay)`,color:t?`var(--content-default)`:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:e})}function et({recall:e}){return e.enabled?(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(st,{title:`Turn-level recall`,body:`Memory recall runs once per turn. This data applies to all LLM calls for this message.`}),(0,J.jsx)(X,{title:`Status`,subtitle:`Provider, model, and latency for this recall.`,children:(0,J.jsx)(Z,{rows:[{label:`Status`,value:e.degraded?`Degraded`:`Active`},{label:`Provider`,value:e.provider??`Unavailable`},{label:`Model`,value:e.model??`Unavailable`},{label:`Total latency`,value:e.latencyMs==null?`—`:`${e.latencyMs} ms`}]})}),(0,J.jsx)(X,{title:`Retrieval funnel`,subtitle:`How memories were filtered from semantic search to injection.`,children:(0,J.jsx)(Z,{rows:[{label:`Semantic hits`,value:e.semanticHits==null?`—`:Q(e.semanticHits)},{label:`After merge`,value:e.mergedCount==null?`—`:Q(e.mergedCount)},{label:`Tier 1`,value:e.tier1Count==null?`—`:Q(e.tier1Count)},{label:`Tier 2`,value:e.tier2Count==null?`—`:Q(e.tier2Count)},{label:`Selected`,value:e.selectedCount==null?`—`:Q(e.selectedCount)},{label:`Injected tokens`,value:e.injectedTokens==null?`—`:Q(e.injectedTokens)}]})}),(0,J.jsx)(X,{title:`Search details`,children:(0,J.jsx)(Z,{rows:[{label:`Hybrid search`,value:e.hybridSearchLatencyMs==null?`—`:`${e.hybridSearchLatencyMs} ms`},{label:`Sparse vectors`,value:e.sparseVectorUsed==null?`—`:e.sparseVectorUsed?`Used`:`Dense only`}]})}),e.queryContext!=null&&(0,J.jsx)(X,{title:`Query context`,subtitle:`The text embedded as the search vector for semantic retrieval.`,copyText:e.queryContext,children:(0,J.jsx)(lt,{text:e.queryContext})}),e.topCandidates.length>0&&(0,J.jsx)(X,{title:`Top candidates`,subtitle:`${e.topCandidates.length} candidate(s) ranked by final score.`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-2`,children:[...e.topCandidates].sort((e,t)=>t.score-e.score).map((e,t)=>(0,J.jsx)(tt,{candidate:e},`${t}-${e.nodeId}`))})}),e.injectedText!=null&&(0,J.jsx)(X,{title:`Injected memory context`,copyText:e.injectedText,children:(0,J.jsx)(lt,{text:e.injectedText})}),e.degraded&&e.degradation!=null&&(0,J.jsx)(X,{title:`Degradation`,children:(0,J.jsx)(Z,{rows:[{label:`Reason`,value:e.degradation.reason??`Unknown`},{label:`Semantic unavailable`,value:e.degradation.semanticUnavailable?`Yes`:`No`},...e.degradation.fallbackSources?.length?[{label:`Fallback sources`,value:e.degradation.fallbackSources.join(`, `)}]:[]]})})]}):(0,J.jsx)(`div`,{className:`p-4`,children:(0,J.jsx)(X,{title:`Memory disabled`,subtitle:e.reason??`Memory recall was disabled for this turn.`})})}function tt({candidate:e}){return(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-3 rounded-md px-3 py-2`,style:{background:`var(--surface-base)`},children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,J.jsx)(`code`,{className:`truncate text-body-small-default`,style:{color:`var(--content-default)`},children:e.nodeId}),e.type!=null&&(0,J.jsx)(ut,{label:e.type})]}),(0,J.jsxs)(`div`,{className:`flex shrink-0 flex-col items-end gap-0.5`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:mt(e.score)}),(0,J.jsxs)(`span`,{className:`text-label-small`,style:{color:`var(--content-tertiary)`},children:[`sem `,mt(e.semanticSimilarity),` · rec`,` `,mt(e.recencyBoost)]})]})]})}function nt({activation:e}){let t=(0,U.useMemo)(()=>[...e.concepts].sort((e,t)=>t.finalActivation-e.finalActivation),[e.concepts]),n=t.filter(e=>e.status===`in_context`).length,r=t.filter(e=>e.status===`injected`).length,i=t.filter(e=>e.status===`not_injected`).length,a=e.config;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(X,{title:`Run`,children:(0,J.jsx)(Z,{rows:[{label:`Mode`,value:e.mode},{label:`Turn`,value:String(e.turn)},{label:`Concepts evaluated`,value:Q(e.concepts.length)}]})}),(0,J.jsx)(X,{title:`Outcome`,children:(0,J.jsx)(Z,{rows:[{label:`In context`,value:Q(n)},{label:`Injected`,value:Q(r)},{label:`Not injected`,value:Q(i)}]})}),t.length>0&&(0,J.jsx)(X,{title:`Concepts`,subtitle:`${t.length} concept(s) ranked by final activation.`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:t.map(e=>(0,J.jsx)(ot,{concept:e,config:a},e.slug))})}),(0,J.jsx)(X,{title:`Config`,subtitle:`Hyperparameters used for this activation run.`,children:(0,J.jsx)(Z,{rows:[{label:`d (decay)`,value:$(a.d)},{label:`c_user`,value:$(a.c_user)},{label:`c_assistant`,value:$(a.c_assistant)},{label:`c_now`,value:$(a.c_now)},{label:`k`,value:$(a.k)},{label:`hops`,value:String(a.hops)},{label:`top_k`,value:String(a.top_k)},{label:`epsilon`,value:$(a.epsilon)}]})})]})}function rt({selection:e}){let{live:t,shadow:n}=e,r=t?`Live — injected`:n?`Shadow — not injected`:`Off`,i=e.selections.filter(e=>e.source.startsWith(`core`)).length,a=e.selections.filter(e=>e.source===`carry-forward`).length,o=e.selections.filter(e=>e.pinned).length;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(st,{title:t?`Memory V3 — live injection`:`Memory V3 — shadow (observation only)`,body:t?`v3 is the live memory source this turn — the block below was injected into context (v2 suppressed).`:`v3 ran in shadow this turn. The block below is what it WOULD have injected; the live memory came from v2.`}),(0,J.jsx)(X,{title:`Selection`,children:(0,J.jsx)(Z,{rows:[{label:`Mode`,value:r},{label:`Turn`,value:String(e.turn)},{label:`Selected pages`,value:Q(e.selections.length)},{label:`Core`,value:Q(i)},{label:`Carry-forward`,value:Q(a)},{label:`Pinned`,value:Q(o)}]})}),e.selections.length>0&&(0,J.jsx)(X,{title:`Selected pages`,subtitle:`${e.selections.length} page(s), tagged by the lane that surfaced them.`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:e.selections.map(e=>(0,J.jsx)(it,{row:e},e.slug))})}),e.injectedText!==``&&(0,J.jsx)(X,{title:t?`Injected memory context`:`Would-be memory context`,subtitle:t?void 0:`Rendered from the v3 selection — not injected this turn.`,copyText:e.injectedText,children:(0,J.jsx)(lt,{text:e.injectedText})})]})}function it({row:e}){return(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-md px-3 py-2`,style:{background:`var(--surface-base)`},children:[(0,J.jsx)(`code`,{className:`min-w-0 flex-1 truncate text-body-small-default`,style:{color:`var(--content-default)`},children:e.slug}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1.5`,children:[e.pinned&&(0,J.jsx)(ut,{label:`pinned`}),(0,J.jsx)(ut,{label:at(e.source)})]})]})}function at(e){switch(e){case`l1+l2`:return`L1+L2`;case`core+l2`:return`core`;case`carry-forward`:return`carried`;case`needle`:return`needle`;default:return e}}function ot({concept:e,config:t}){let[n,r]=(0,U.useState)(!1),i=e.source!==`ann_top50`,a=ht(e.status),o=gt(e.status),s=[{label:`A_o (own)`,value:$(e.ownActivation)},{label:`spread Δ`,value:$(e.spreadContribution)},{label:`prior · d`,value:$(e.priorActivation)},{label:`sim_user (×${$(t.c_user)})`,value:$(e.simUser)},{label:`sim_asst (×${$(t.c_assistant)})`,value:$(e.simAssistant)},{label:`sim_now (×${$(t.c_now)})`,value:$(e.simNow)}];(e.simUserRerankBoost??0)!==0&&s.push({label:`rerank user Δ`,value:$(e.simUserRerankBoost??0)}),(e.simAssistantRerankBoost??0)!==0&&s.push({label:`rerank asst Δ`,value:$(e.simAssistantRerankBoost??0)}),e.inRerankPool!=null&&s.push({label:`in rerank pool`,value:e.inRerankPool?`Yes`:`No`}),i&&s.push({label:`source`,value:dt(e.source)}),s.push({label:`status`,value:o});let c=Math.max(0,Math.min(e.finalActivation,1));return(0,J.jsxs)(`div`,{className:`overflow-hidden rounded-md`,style:{background:`var(--surface-base)`},children:[(0,J.jsxs)(`button`,{className:`flex w-full items-center gap-2 px-3 py-2 text-left`,style:{background:`none`,border:`none`,cursor:`pointer`},onClick:()=>r(e=>!e),"aria-expanded":n,children:[(0,J.jsx)(`span`,{className:`mt-0.5 shrink-0 rounded-full`,style:{width:8,height:8,background:a},"aria-hidden":!0}),(0,J.jsx)(`code`,{className:`flex-1 truncate text-body-small-default`,style:{color:`var(--content-default)`},children:e.slug}),i&&(0,J.jsx)(ut,{label:dt(e.source)}),(0,J.jsx)(`div`,{className:`shrink-0 overflow-hidden rounded-full`,style:{width:60,height:6,background:`var(--surface-active)`},children:(0,J.jsx)(`div`,{className:`h-full rounded-full`,style:{width:`${c*100}%`,background:`var(--primary-base)`}})}),(0,J.jsx)(`span`,{className:`w-12 shrink-0 text-right text-body-medium-default tabular-nums`,style:{color:`var(--content-default)`},children:$(e.finalActivation)}),(0,J.jsx)(`span`,{className:`shrink-0`,style:{color:`var(--content-secondary)`},children:n?(0,J.jsx)(L,{size:14,"aria-hidden":!0}):(0,J.jsx)(g,{size:14,"aria-hidden":!0})})]}),n&&(0,J.jsx)(`div`,{className:`flex flex-col gap-1 px-3 pb-3`,style:{paddingLeft:`1.5rem`},children:s.map(({label:e,value:t})=>(0,J.jsx)(ct,{label:e,value:t},e))})]})}function st({title:e,body:t}){return(0,J.jsxs)(`div`,{className:`rounded-lg px-4 py-3`,style:{background:`var(--surface-overlay)`},children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,J.jsx)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t})]})}function X({title:e,subtitle:t,copyText:n,children:r}){return(0,J.jsx)(p,{children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,J.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t!=null&&t!==``&&(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-tertiary)`},children:t})]}),n!=null&&(0,J.jsx)(ft,{text:n})]}),r]})})}function Z({rows:e}){return(0,J.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,J.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,J.jsx)(`span`,{className:`shrink-0 text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,J.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function ct({label:e,value:t}){return(0,J.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,J.jsx)(`span`,{className:`text-label-small`,style:{color:`var(--content-secondary)`},children:e}),(0,J.jsx)(`span`,{className:`tabular-nums text-body-medium-default`,style:{color:`var(--content-default)`},children:t})]})}function lt({text:e}){return(0,J.jsx)(`pre`,{className:`overflow-x-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`,whiteSpace:`pre-wrap`,wordBreak:`break-word`},children:e})}function ut({label:e}){return(0,J.jsx)(`span`,{className:`rounded px-1.5 py-0.5 text-label-small`,style:{background:`var(--surface-base)`,color:`var(--content-secondary)`},children:e})}function dt(e){return e===`tier1`?`tier 1`:e===`tier2`?`tier 2`:e.startsWith(`tier3:`)?`tier 3 · b${e.slice(6)}`:e===`carry_over`?`carry over`:e}function ft({text:e}){let[t,n]=(0,U.useState)(!1),r=(0,U.useRef)(null);return(0,U.useEffect)(()=>()=>{clearTimeout(r.current)},[]),(0,J.jsxs)(`button`,{onClick:()=>{navigator.clipboard.writeText(e).then(()=>{n(!0),clearTimeout(r.current),r.current=setTimeout(()=>n(!1),1500)})},title:t?`Copied!`:`Copy`,"aria-label":t?`Copied`:`Copy to clipboard`,className:`flex shrink-0 items-center gap-1 rounded px-2 py-1 text-label-default transition-colors`,style:{background:`var(--surface-overlay)`,color:t?`var(--system-positive-strong)`:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:[(0,J.jsx)(O,{size:12,"aria-hidden":!0}),t?`Copied`:`Copy`]})}function pt(){return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-8 text-center`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No memory data`}),(0,J.jsx)(`p`,{className:`max-w-sm text-label-default`,style:{color:`var(--content-secondary)`},children:`Memory recall information is not available for this message.`})]})}function Q(e){return new Intl.NumberFormat().format(e)}function mt(e){return e.toFixed(3)}function $(e){return e.toFixed(3)}function ht(e){switch(e){case`in_context`:return`var(--content-secondary)`;case`injected`:return`var(--system-positive-strong)`;case`not_injected`:return`var(--content-disabled)`;default:return`var(--content-tertiary)`}}function gt(e){switch(e){case`in_context`:return`In context`;case`injected`:return`Injected`;case`not_injected`:return`Not injected`;case`page_missing`:return`Page missing`;default:return e}}function _t({entry:e,conversationTotalEstimatedCostUsd:t}){let n=e.summary,r=!n||Ae(n),i=vt(t);return r?(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[i,(0,J.jsx)(Ct,{message:je(e.createdAt,n?.provider??null)})]}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[i,(0,J.jsx)(St,{title:`Normalized metadata`,subtitle:`Provider, model, timestamps, and usage counts.`,rows:yt(n,e.createdAt,e.agentLoopExitReason)}),(0,J.jsx)(St,{title:`Usage`,subtitle:`Token and call counts normalized by the assistant route.`,rows:bt(n)})]})}function vt(e){return e==null||!Number.isFinite(e)?null:(0,J.jsx)(St,{title:`Conversation`,subtitle:`Running totals across every priced LLM call so far.`,rows:[{label:`Total cost so far`,value:we(e)}]})}function yt(e,t,n){let r=[{label:`Provider`,value:Oe(e.provider??null)},{label:`Model`,value:Ee(e.model??null)},{label:`Created`,value:ke(t)},{label:`Stop reason`,value:Ee(e.stopReason??null)}];return n!=null&&n.trim().length>0&&r.push({label:`Loop exit reason`,value:Ee(n)}),r}function bt(e){let t=[{label:`Input tokens`,value:q(e.inputTokens)},{label:`Output tokens`,value:q(e.outputTokens)},{label:`Cache tokens`,value:Te(e.cacheCreationInputTokens,e.cacheReadInputTokens)},{label:`Estimated cost`,value:we(e.estimatedCostUsd)},{label:`Request messages`,value:q(e.requestMessageCount)},{label:`Tools available`,value:q(e.requestToolCount)},{label:`Tool calls`,value:q(e.responseToolCallCount??0)}];return e.durationMs!=null&&Number.isFinite(e.durationMs)&&t.splice(4,0,{label:`Duration`,value:`${q(Math.round(e.durationMs))} ms`}),t}function xt({title:e,subtitle:t}){return(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-tertiary)`},children:t}):null]})}function St({title:e,subtitle:t,rows:n}){return(0,J.jsx)(p,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,J.jsx)(xt,{title:e,subtitle:t}),(0,J.jsx)(`div`,{className:`flex flex-col gap-2`,children:n.map(e=>(0,J.jsx)(wt,{row:e},e.label))})]})})}function Ct({message:e}){return(0,J.jsx)(p,{padding:`md`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,J.jsx)(xt,{title:`Normalized summary unavailable`,subtitle:`This call still has raw request and response payloads.`}),(0,J.jsx)(`p`,{className:`select-text whitespace-pre-wrap break-words text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:e})]})})}function wt({row:e}){return(0,J.jsxs)(`div`,{className:`flex items-baseline gap-3`,children:[(0,J.jsx)(`span`,{className:`shrink-0 text-label-default`,style:{color:`var(--content-secondary)`},children:e.label}),(0,J.jsx)(`span`,{className:`ml-auto select-text break-words text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:e.value})]})}function Tt({entry:e}){let t=e.requestSections??[],[n,r]=(0,U.useState)(`markdown`),i=t.length===0?`This call has no normalized prompt sections yet.`:`${t.length} normalized request section${t.length===1?``:`s`} shown in the order returned by the assistant route.`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(p,{children:(0,J.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Prompt sections`}),(0,J.jsx)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:i})]}),t.length>0&&(0,J.jsx)(h,{ariaLabel:`Prompt rendering mode`,value:n,onChange:r,items:[{value:`markdown`,label:`Markdown`},{value:`raw`,label:`Raw`}]})]})}),t.length===0?(0,J.jsx)(Et,{}):t.map((e,t)=>(0,J.jsx)(Dt,{section:e,index:t,viewMode:n},t))]})}function Et(){return(0,J.jsxs)(p,{children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No normalized prompt sections`}),(0,J.jsx)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`This call has no normalized prompt sections. Use the Raw tab to inspect the full request payload.`})]})}function Dt({section:e,index:t,viewMode:n}){let r=Ot(e,t),i=kt(e.kind),a=At(e.language??null),{text:o,isStructured:s}=jt(e),c=!s&&n===`markdown`;return(0,J.jsxs)(p,{children:[(0,J.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(`p`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:r}),(0,J.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2`,children:[(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-tertiary)`},children:i}),a&&(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:a})]})]}),(0,J.jsx)(f,{variant:`ghost`,size:`compact`,iconOnly:!0,leftIcon:(0,J.jsx)(O,{size:14,"aria-hidden":!0}),"aria-label":`Copy ${r}`,onClick:()=>void navigator.clipboard.writeText(o)})]}),s?(0,J.jsx)(`pre`,{className:`mt-3 overflow-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`,maxHeight:`320px`},children:o}):c?(0,J.jsx)(`div`,{className:`mt-3 min-w-0 break-words`,style:{color:`var(--content-default)`},children:(0,J.jsx)(H,{content:o,stripFrontmatter:!1})}):(0,J.jsx)(`p`,{className:`mt-3 select-text whitespace-pre-wrap break-words text-body-medium-lighter`,style:{color:`var(--content-default)`},children:o})]})}function Ot(e,t){return e.label?.trim()||`${kt(e.kind)} ${t+1}`}function kt(e){return e.replace(/_/g,` `).split(` `).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function At(e){if(!e)return null;switch(e.toLowerCase()){case`json`:case`application/json`:return`JSON`;case`markdown`:case`md`:case`text/markdown`:return`Markdown`;case`javascript`:case`application/javascript`:case`text/javascript`:return`JavaScript`;case`typescript`:case`application/typescript`:case`text/typescript`:return`TypeScript`;default:return null}}function jt(e){if(e.text!=null)return{text:e.text,isStructured:!1};if(e.data!=null)try{return{text:JSON.stringify(e.data,null,2),isStructured:!0}}catch{return{text:String(e.data),isStructured:!1}}return{text:`No content available.`,isStructured:!1}}function Mt({entry:e,assistantId:t}){let[n,r]=(0,U.useState)(`request`),{data:i,isLoading:a,isError:o,error:s,refetch:c}=be(t,e.id);if(a)return(0,J.jsx)(It,{});if(o)return(0,J.jsx)(Lt,{message:s&&typeof s==`object`&&`message`in s?String(s.message):`The payload request failed. Try again.`,onRetry:()=>void c()});let l=Nt(n===`request`?i?.requestPayload:i?.responsePayload),u=Pt(e.id,n);return(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsx)(`div`,{className:`flex items-center gap-2`,children:[`request`,`response`].map(e=>(0,J.jsx)(`button`,{type:`button`,onClick:()=>r(e),className:`rounded-md px-3 py-1 text-label-medium-default transition-colors`,style:{background:n===e?`var(--surface-overlay)`:`transparent`,color:n===e?`var(--content-default)`:`var(--content-secondary)`,border:`1px solid var(--border-base)`},children:e===`request`?`Request`:`Response`},e))}),(0,J.jsxs)(p,{children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:n===`request`?`Request payload`:`Response payload`}),(0,J.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,J.jsx)(f,{variant:`ghost`,size:`compact`,iconOnly:!0,leftIcon:(0,J.jsx)(A,{size:14,"aria-hidden":!0}),"aria-label":`Download ${n} payload`,onClick:()=>Ft(l,u)}),(0,J.jsx)(f,{variant:`ghost`,size:`compact`,iconOnly:!0,leftIcon:(0,J.jsx)(O,{size:14,"aria-hidden":!0}),"aria-label":`Copy ${n} payload`,onClick:()=>void navigator.clipboard.writeText(l)})]})]}),(0,J.jsx)(`pre`,{className:`mt-3 overflow-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`,maxHeight:`calc(100vh - 320px)`,minHeight:`120px`},children:l})]})]})}function Nt(e){if(e==null)return`null`;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function Pt(e,t){return`llm-${e.replace(/[^A-Za-z0-9._-]+/g,`_`)}-${t}.json`}function Ft(e,t){let n=new Blob([e],{type:`application/json;charset=utf-8`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=t,document.body.appendChild(i),i.click(),i.remove(),URL.revokeObjectURL(r)}function It(){return(0,J.jsx)(`div`,{className:`flex h-48 w-full flex-col items-center justify-center gap-2`,children:(0,J.jsx)(`p`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Loading raw payloads…`})})}function Lt({message:e,onRetry:t}){return(0,J.jsxs)(`div`,{className:`flex h-48 w-full flex-col items-center justify-center gap-3 p-8 text-center`,children:[(0,J.jsx)(M,{size:28,"aria-hidden":!0,style:{color:`var(--content-secondary)`}}),(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Couldn’t load raw payloads`}),(0,J.jsx)(`p`,{className:`max-w-xs text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,J.jsx)(f,{variant:`outlined`,size:`compact`,leftIcon:(0,J.jsx)(N,{size:14,"aria-hidden":!0}),onClick:t,children:`Retry`})]})}function Rt({entry:e}){let t=Zt(e.responseSections??[]),n=Qt(e.summary),r=en(e.summary,t),i=n!=null||r!=null;return!t.length&&!i?(0,J.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:(0,J.jsx)(Ht,{message:null})}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[i&&(0,J.jsxs)(p,{children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Response metadata`}),(0,J.jsxs)(`div`,{className:`mt-2 flex flex-wrap gap-2`,children:[n&&(0,J.jsx)(Wt,{label:`Stop reason: ${n}`}),r&&(0,J.jsx)(Wt,{label:r})]})]}),t.length>0?t.map(e=>(0,J.jsx)(zt,{section:e},e.id)):(0,J.jsx)(Ht,{message:null})]})}function zt({section:e}){switch(e.kind){case`toolCall`:return(0,J.jsx)(Vt,{section:e});default:return(0,J.jsx)(Bt,{section:e})}}function Bt({section:e}){return(0,J.jsxs)(p,{children:[(0,J.jsx)(Ut,{section:e}),e.bodyText?(0,J.jsx)(`p`,{className:`mt-3 select-text whitespace-pre-wrap text-body-medium-lighter`,style:{color:`var(--content-default)`},children:e.bodyText}):(0,J.jsx)(`p`,{className:`mt-3 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`No assistant text was captured for this section.`})]})}function Vt({section:e}){return(0,J.jsxs)(p,{children:[(0,J.jsx)(Ut,{section:e}),e.toolName&&(0,J.jsx)(`div`,{className:`mt-2`,children:(0,J.jsx)(Wt,{label:`Tool: ${e.toolName}`})}),e.bodyText?(0,J.jsxs)(`div`,{className:`mt-3`,children:[(0,J.jsx)(`p`,{className:`mb-1 text-label-default`,style:{color:`var(--content-secondary)`},children:`Arguments preview`}),(0,J.jsx)(`p`,{className:`select-text whitespace-pre-wrap text-body-small-default`,style:{color:`var(--content-default)`},children:e.bodyText})]}):(0,J.jsx)(`p`,{className:`mt-3 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:`No structured arguments preview is available for this tool call.`}),(0,J.jsx)(`div`,{className:`mt-3 rounded-md px-3 py-2 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:`Need the full provider payload? Open the Raw tab for request and response JSON.`})]})}function Ht({message:e}){return(0,J.jsxs)(p,{children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,J.jsx)(B,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Section rendering unavailable`})]}),(0,J.jsx)(`p`,{className:`mt-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:e??`This response has no rendered sections. Raw payloads remain available in the Raw tab, and any normalized response metadata will still be shown when present.`})]})}function Ut({section:e}){return(0,J.jsxs)(`div`,{className:`flex items-start gap-4`,children:[(0,J.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.title}),(0,J.jsx)(`div`,{className:`mt-0.5`,children:(0,J.jsx)(Wt,{label:e.kindLabel})})]}),(0,J.jsx)(f,{variant:`ghost`,size:`compact`,iconOnly:!0,leftIcon:(0,J.jsx)(O,{size:14,"aria-hidden":!0}),"aria-label":`Copy section content`,onClick:()=>void navigator.clipboard.writeText(e.copyText)})]})}function Wt({label:e}){return(0,J.jsx)(`span`,{className:`inline-block rounded px-2 py-0.5 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:e})}var Gt=new Set([`assistant`,`message`,`text`,`output`,`completion`,`markdown`,`code`,`json`]),Kt=new Set([`tool`,`tool_use`,`function_call`]),qt=new Set([`tool_result`,`function_response`]);function Jt(e){let t=e.toLowerCase();return Kt.has(t)?`toolCall`:qt.has(t)?`result`:t===`reasoning`?`reasoning`:Gt.has(t)?`assistantText`:`other`}function Yt(e,t){switch(t){case`toolCall`:return`Tool call`;case`result`:return e.toLowerCase()===`function_response`?`Function response`:`Tool result`;case`reasoning`:return`Reasoning`;case`assistantText`:return`Assistant text`;default:return e}}function Xt(e){if(e.text!=null)return e.text;if(e.data!=null)try{return JSON.stringify(e.data,null,2)}catch{return String(e.data)}return null}function Zt(e){return e.map((e,t)=>{let n=Jt(e.kind),r=(e.label?.trim()??``)||`Section ${t+1}`,i=Xt(e);return{id:t,kind:n,title:r,kindLabel:Yt(e.kind,n),bodyText:i,toolName:e.toolName??null,copyText:i??r}})}function Qt(e){return e?.stopReason?.trim()||null}function $t(e){return e?[`tool_calls`,`tool_use`,`function_call`,`function_calls`].includes(e.toLowerCase().trim()):!1}function en(e,t){if(e?.responseToolCallCount&&e.responseToolCallCount>0||$t(e?.stopReason??null))return`Tool-calling response`;if(!t.length)return null;if(t.some(e=>e.kind===`toolCall`))return`Tool-calling response`;let n=t.some(e=>e.kind===`assistantText`),r=t.some(e=>e.kind===`result`);return n&&!r?`Text-only response`:r&&!n?`Result-only response`:null}var tn=new Set([`tool_use`,`function_call`]);function nn(e){return on(rn(e))}function rn(e){let t=[];return[...e].sort((e,t)=>e.createdAt-t.createdAt).forEach((e,n)=>{(e.responseSections??[]).forEach((r,i)=>{let a=an(r);a!=null&&t.push({skill:a,logId:e.id,createdAt:e.createdAt,callNumber:n+1,sectionIndex:i})})}),t}function an(e){let t=e.kind?.toLowerCase?.()??``;if(!tn.has(t)||e.toolName!==`skill_load`)return null;let n=e.data;if(typeof n!=`object`||!n)return null;let r=n.skill;if(typeof r!=`string`)return null;let i=r.trim();return i.length>0?i:null}function on(e){let t=new Map;for(let n of e){let e=t.get(n.skill);e?e.push(n):t.set(n.skill,[n])}return Array.from(t.entries()).map(([e,t])=>({skill:e,loads:t})).sort((e,t)=>e.loads[0].createdAt-t.loads[0].createdAt)}function sn({logs:e,buildCallHref:t}){let n=nn(e),r=n.reduce((e,t)=>e+t.loads.length,0),i=n.length;return i===0?(0,J.jsx)(`div`,{className:`flex flex-col gap-4 p-4`,children:(0,J.jsxs)(p,{children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No skills were loaded in this conversation`}),(0,J.jsxs)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:[`This tab lists every `,(0,J.jsx)(`code`,{children:`skill_load`}),` tool call across the conversation. None were detected in the captured LLM calls.`]})]})}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,J.jsxs)(p,{children:[(0,J.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Skills loaded in this conversation`}),(0,J.jsxs)(`p`,{className:`mt-1 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:[i===1?`1 unique skill`:`${i} unique skills`,` · `,r===1?`1 load call`:`${r} load calls`]})]}),n.map(e=>(0,J.jsx)(cn,{skill:e.skill,loads:e.loads,buildCallHref:t},e.skill))]})}function cn({skill:e,loads:t,buildCallHref:n}){return(0,J.jsxs)(p,{children:[(0,J.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,J.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:t.length===1?`1 load`:`${t.length} loads`})]}),(0,J.jsx)(`ul`,{className:`mt-3 flex flex-col gap-1`,children:t.map(e=>(0,J.jsx)(`li`,{children:(0,J.jsxs)(`a`,{href:n(e.logId),className:`inline-flex items-baseline gap-2 rounded px-2 py-1 text-label-default hover:bg-[var(--surface-overlay)]`,style:{color:`var(--content-default)`},children:[(0,J.jsxs)(`span`,{style:{color:`var(--content-secondary)`},children:[`Call `,e.callNumber]}),(0,J.jsx)(`span`,{style:{color:`var(--content-tertiary)`},children:`·`}),(0,J.jsx)(`span`,{style:{color:`var(--content-tertiary)`},children:un(e.createdAt)})]})},`${e.logId}-${e.sectionIndex}`))})]})}var ln=new Intl.DateTimeFormat(void 0,{hour:`numeric`,minute:`numeric`,second:`numeric`});function un(e){return Number.isFinite(e)?ln.format(new Date(e)):`—`}function dn(){let e=w.use.user(),t=C(),{conversationId:n}=o(),[r]=a(),i=r.get(`messageId`);return t?(0,J.jsx)(xn,{tone:`muted`,children:`Loading…`}):z(e)?n?(0,J.jsx)(fn,{conversationId:n,messageId:i}):(0,J.jsx)(xn,{tone:`muted`,children:`Loading…`}):(0,J.jsx)(xn,{tone:`muted`,children:`Inspector is available to Vellum developers only.`})}function fn({conversationId:e,messageId:t}){let n=V(),{data:r,isLoading:i,isError:o,error:s,refetch:c}=te(n,e,t),l=(0,U.useMemo)(()=>r?.logs??[],[r?.logs]),[u]=a(),d=u.get(`callId`),f=(0,U.useMemo)(()=>{if(l.length)return d&&l.some(e=>e.id===d)?d:l[l.length-1].id},[l,d]),p=(0,U.useMemo)(()=>l.find(e=>e.id===f)??null,[l,f]),m=(0,U.useMemo)(()=>n=>{let r=new URLSearchParams;return t&&r.set(`messageId`,t),r.set(`callId`,n),`${E.inspect(e)}?${r.toString()}`},[e,t]);return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,children:[(0,J.jsx)(pn,{assistantId:n,conversationId:e,messageId:t,context:r,callCount:r?l.length:null}),(0,J.jsx)(`div`,{className:`flex min-h-0 flex-1`,style:{borderTop:`1px solid var(--border-base)`},children:i?(0,J.jsx)(xn,{tone:`muted`,children:`Loading…`}):o?(0,J.jsx)(Cn,{error:s,onRetry:()=>void c()}):l.length?(0,J.jsx)(yn,{logs:l,context:r,selectedLog:p,selectedLogId:f,buildCallHref:m,assistantId:n,conversationId:e}):(0,J.jsx)(Sn,{messageId:t})})]})}function pn({assistantId:e,conversationId:t,messageId:n,context:r,callCount:i}){let a=c(),[o,l]=(0,U.useState)(!1),[u,d]=(0,U.useState)(null),p=!!(e&&r&&r.logs.length>0),m=!!n;async function h(){if(!(!e||!r||o)){l(!0),d(null);try{de(await ue(r,await Promise.all(r.logs.map(t=>{let n=ye(e,t.id);return a.fetchQuery(n)}))),ce(r.conversationId??t))}catch(e){d(e&&typeof e==`object`&&`message`in e?String(e.message):`Failed to export inspector data`)}finally{l(!1)}}}return(0,J.jsxs)(`div`,{className:`flex flex-col gap-2 px-4 py-3`,children:[(0,J.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,J.jsx)(f,{asChild:!0,variant:`ghost`,size:`compact`,leftIcon:(0,J.jsx)(j,{size:16,"aria-hidden":!0}),children:(0,J.jsx)(s,{to:E.conversation(t),"aria-label":`Back to conversation`,children:`Back`})}),(0,J.jsxs)(`div`,{className:`order-3 flex w-full min-w-0 flex-col md:order-2 md:w-auto md:flex-1`,children:[(0,J.jsx)(`h1`,{className:`truncate text-body-large-bold md:text-title-medium`,style:{color:`var(--content-default)`},children:`LLM Context Inspector`}),(0,J.jsx)(mn,{conversationId:t,messageId:n})]}),(0,J.jsxs)(`div`,{className:`order-2 ml-auto flex items-center gap-3 md:order-3 md:ml-0`,children:[(0,J.jsx)(f,{variant:`outlined`,size:`compact`,leftIcon:(0,J.jsx)(A,{size:16,"aria-hidden":!0}),disabled:!p||o,onClick:()=>void h(),"aria-label":`Export inspector data as ZIP`,children:o?`Exporting…`:`Export ZIP`}),(0,J.jsxs)(`div`,{className:`hidden flex-col items-end gap-0.5 md:flex`,children:[i==null?null:(0,J.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:i===1?`1 LLM call`:`${i} LLM calls`}),u?(0,J.jsx)(`span`,{className:`max-w-72 text-right text-body-small-default`,role:`alert`,style:{color:`var(--system-negative-strong)`},children:u}):null]})]}),u?(0,J.jsx)(`span`,{className:`order-4 w-full text-body-small-default md:hidden`,role:`alert`,style:{color:`var(--system-negative-strong)`},children:u}):null]}),(0,J.jsx)(hn,{assistantId:e,conversationId:t,messageId:n,isMessageScoped:m})]})}function mn({conversationId:e,messageId:t}){return t?(0,J.jsx)(`p`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:(0,J.jsxs)(`span`,{className:`inline-flex items-center gap-1`,style:{color:`var(--content-default)`},children:[(0,J.jsx)(P,{size:12,"aria-hidden":!0}),`Scoped to one message · `,(0,J.jsx)(`code`,{children:vn(t)})]})}):(0,J.jsx)(`p`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Showing every LLM call recorded for this conversation.`})}function hn({assistantId:e,conversationId:t,messageId:n,isMessageScoped:r}){let a=i(),{data:o}=ne(e,t),s=(0,U.useMemo)(()=>gn(o??[]),[o]),c=e=>{let n=new URLSearchParams;e&&n.set(`messageId`,e);let r=n.toString(),i=E.inspect(t);a(r?`${i}?${r}`:i)};return r?(0,J.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,J.jsx)(f,{variant:`ghost`,size:`compact`,onClick:()=>c(null),"aria-label":`View all conversation calls`,children:`View all conversation calls`})}):(0,J.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[(0,J.jsx)(`label`,{htmlFor:`inspector-scope-select`,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Filter to message:`}),(0,J.jsxs)(`select`,{id:`inspector-scope-select`,className:`rounded-md border px-2 py-1 text-label-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},value:n??``,onChange:e=>{let t=e.target.value;c(t||null)},disabled:s.length===0,children:[(0,J.jsx)(`option`,{value:``,children:`All messages`}),s.map(e=>(0,J.jsx)(`option`,{value:e.value,children:e.label},e.value))]})]})}function gn(e){let t=new Set,n=[],r=1;for(let i of e){let e=i.id;if(!e||t.has(e))continue;t.add(e);let a=R(i)?.find(e=>e.type===`text`),o=_n(a?.text),s=i.role===`assistant`?`Assistant`:`User`,c=o?`${r}. ${s} · ${o}`:`${r}. ${s}`;n.push({value:e,label:c}),r+=1}return n}function _n(e){if(!e)return``;let t=e.replace(/\s+/g,` `).trim();return t.length<=60?t:`${t.slice(0,57)}…`}function vn(e){return e.length>12?`${e.slice(0,8)}…`:e}function yn({logs:e,context:t,selectedLog:n,selectedLogId:r,buildCallHref:i,assistantId:a,conversationId:o}){let[s,c]=(0,U.useState)(`overview`);return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`aside`,{className:`hidden w-64 shrink-0 overflow-y-auto md:block`,style:{background:`var(--surface-base)`,borderRight:`1px solid var(--border-base)`},children:(0,J.jsx)(Me,{logs:e,selectedLogId:r,buildCallHref:i})}),(0,J.jsxs)(`main`,{className:`flex min-h-0 min-w-0 flex-1 flex-col`,children:[(0,J.jsx)(`div`,{className:`md:hidden`,children:(0,J.jsx)(Le,{logs:e,selectedLogId:r,buildCallHref:i})}),(0,J.jsx)(ze,{selected:s,onSelect:c}),(0,J.jsx)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:n?(0,J.jsx)(bn,{tab:s,entry:n,logs:e,buildCallHref:i,assistantId:a,conversationId:o,context:t,conversationTotalEstimatedCostUsd:t?.conversationTotalEstimatedCostUsd}):(0,J.jsx)(xn,{tone:`muted`,children:`Choose a call from the rail to inspect its context.`})})]})]})}function bn({tab:e,entry:t,logs:n,buildCallHref:r,assistantId:i,conversationId:a,context:o,conversationTotalEstimatedCostUsd:s}){switch(e){case`overview`:return(0,J.jsx)(_t,{entry:t,conversationTotalEstimatedCostUsd:s});case`prompt`:return(0,J.jsx)(Tt,{entry:t});case`response`:return(0,J.jsx)(Rt,{entry:t});case`raw`:return(0,J.jsx)(Mt,{entry:t,assistantId:i});case`compaction`:return(0,J.jsx)(Ge,{assistantId:i,conversationId:a,entry:t});case`skills`:return(0,J.jsx)(sn,{logs:n,buildCallHref:r});case`memory`:return(0,J.jsx)(Qe,{context:o})}}function xn({children:e,tone:t=`default`}){return(0,J.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-default`,style:{color:t===`muted`?`var(--content-tertiary)`:`var(--content-secondary)`},children:e})}function Sn({messageId:e}){return(0,J.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-2 p-8 text-center`,children:[(0,J.jsx)(`h2`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e?`No LLM calls recorded for this message.`:`No LLM calls recorded for this conversation.`}),(0,J.jsx)(`p`,{className:`max-w-md text-label-default`,style:{color:`var(--content-secondary)`},children:e?`Either this message wasn’t produced by an LLM call or its request logs were trimmed by retention.`:`Either no message in the conversation was produced by an LLM call or the request logs were trimmed by retention.`})]})}function Cn({error:e,onRetry:t}){let n=e&&typeof e==`object`&&`message`in e?String(e.message):`Failed to load LLM context.`;return(0,J.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-3 p-8 text-center`,children:[(0,J.jsx)(M,{size:32,"aria-hidden":!0,style:{color:`var(--content-secondary)`}}),(0,J.jsx)(`h2`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Failed to load`}),(0,J.jsx)(`p`,{className:`max-w-md text-label-default`,style:{color:`var(--content-secondary)`},children:n}),(0,J.jsx)(f,{variant:`outlined`,size:`compact`,onClick:t,children:`Retry`})]})}export{dn as InspectPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./useQuery-D2zf6Uhu.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./button-DdEh-9f_.js";import{t as a}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{t as o}from"./tag-Ccr7Quy6.js";import{t as s}from"./createLucideIcon-D6d6iDdi.js";import{t as c}from"./globe-ByNYDdSW.js";import{t as l}from"./loader-circle-BSAFLoPH.js";import{kn as u}from"./sdk.gen-AJllUeDf.js";import{N as d,P as f}from"./react-query.gen-B8xaBreR.js";import{n as p,r as m,t as h}from"./api-errors-ChauV4ed.js";import{La as g,Ni as _,Oi as v,Pa as y,Pi as b,bo as x,ta as S,xo as C}from"./index-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./useQuery-D2zf6Uhu.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./button-DdEh-9f_.js";import{t as a}from"./card-CL5iEMJO.js";import"./src-hn7lwVCD.js";import{t as o}from"./tag-Ccr7Quy6.js";import{t as s}from"./createLucideIcon-D6d6iDdi.js";import{t as c}from"./globe-ByNYDdSW.js";import{t as l}from"./loader-circle-BSAFLoPH.js";import{kn as u}from"./sdk.gen-AJllUeDf.js";import{N as d,P as f}from"./react-query.gen-B8xaBreR.js";import{n as p,r as m,t as h}from"./api-errors-ChauV4ed.js";import{La as g,Ni as _,Oi as v,Pa as y,Pi as b,bo as x,ta as S,xo as C}from"./index-DGojzQtP.js";import{n as w,t as T}from"./file-markdown-DX5x9ziL.js";var E=s(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),D=e(t(),1),O=r();function k({skill:e,className:t,fallback:n=`🧩`}){let[r,i]=(0,D.useState)(!1);return e.icon&&!r?(0,O.jsx)(`img`,{src:`/assistant/skills/${e.id}/${e.icon}`,alt:``,className:`${t} object-contain`,onError:()=>i(!0)}):(0,O.jsx)(`span`,{className:t,children:e.emoji??n})}var A={vellum:{label:`Vellum`,icon:E},clawhub:{label:`Clawhub`,icon:c},skillssh:{label:`skills.sh`,icon:b},custom:{label:`Custom`,icon:v}};function j({origin:e}){let t=e in A?A[e]:{label:e.replace(/-/g,` `),icon:S};return(0,O.jsx)(o,{tone:`neutral`,leftIcon:(0,D.createElement)(t.icon),className:`capitalize`,children:t.label})}function M(e){return e.kind===`installed`||e.kind===`bundled`}function N(e){return e.kind===`catalog`}function P(e){return e.kind===`installed`}function F({assistantId:e,skill:t,onBack:r,onInstall:o,onRemove:s,isInstalling:c=!1,isRemoving:u=!1}){let[p,m]=(0,D.useState)(null),h=N(t),v=P(t),b=n({...f({path:{assistant_id:e,id:t.id}}),select:e=>e??null}),S=(0,D.useMemo)(()=>b.data?.files??[],[b.data]),w=(0,D.useMemo)(()=>S.find(e=>e.name===`SKILL.md`),[S]),T=p??w?.path??null,E=n({...d({path:{assistant_id:e,id:t.id},query:{path:T??``}}),select:e=>e??null,enabled:!!T}),A=S.find(e=>e.path===T);return(0,O.jsxs)(`div`,{className:`flex h-[calc(100vh-14rem)] flex-col`,children:[(0,O.jsxs)(`div`,{className:`mb-4 flex items-start gap-3`,children:[(0,O.jsx)(i,{type:`button`,variant:`ghost`,iconOnly:(0,O.jsx)(x,{"aria-hidden":!0}),"aria-label":`Back to skills`,onClick:r}),(0,O.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-3 sm:flex-row sm:items-center`,children:[(0,O.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,O.jsx)(k,{skill:t,className:`h-8 w-8 text-3xl`}),(0,O.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,O.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-2 gap-y-1`,children:[(0,O.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:t.name}),(0,O.jsx)(j,{origin:t.origin})]}),(0,O.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t.description})]})]}),h?c?(0,O.jsx)(`div`,{className:`flex h-9 items-center px-3`,children:(0,O.jsx)(l,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}})}):(0,O.jsx)(i,{type:`button`,onClick:o,disabled:!o,leftIcon:(0,O.jsx)(C,{"aria-hidden":!0}),children:`Install`}):(0,O.jsx)(i,{type:`button`,variant:v?`dangerOutline`:`outlined`,onClick:s,disabled:!v||u||!s,leftIcon:u?(0,O.jsx)(l,{className:`animate-spin`,"aria-hidden":!0}):(0,O.jsx)(_,{"aria-hidden":!0}),children:`Remove`})]})]}),(0,O.jsx)(a.Root,{asChild:!0,noPadding:!0,children:(0,O.jsxs)(`div`,{className:`flex flex-1 flex-col overflow-hidden sm:grid`,style:{gridTemplateColumns:`240px 1fr`},children:[(0,O.jsx)(`div`,{className:`max-h-40 shrink-0 overflow-y-auto border-b p-2 sm:max-h-none sm:border-b-0 sm:border-r`,style:{borderColor:`var(--border-base)`},children:b.isLoading?(0,O.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,O.jsx)(l,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}})}):S.length===0?(0,O.jsx)(`p`,{className:`px-3 py-4 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`No files available.`}):S.map(e=>{let t=T===e.path,n=(e.mimeType??``).endsWith(`/directory`);return(0,O.jsxs)(`button`,{type:`button`,onClick:()=>m(e.path),className:`flex w-full items-center gap-2 rounded px-2 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:t?`var(--primary-base)`:`var(--content-default)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:void 0},children:[n?(0,O.jsx)(y,{className:`h-4 w-4 shrink-0`,style:{color:`var(--system-mid-strong)`}}):(0,O.jsx)(g,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,O.jsx)(`span`,{className:`truncate`,children:e.name})]},e.path)})}),(0,O.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:E.isLoading?(0,O.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,O.jsx)(l,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):A?(0,O.jsx)(I,{fileName:A.name,content:E.data?.content??null,isBinary:!!E.data?.isBinary}):(0,O.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a file to view its contents.`})})]})})]})}function I({fileName:e,content:t,isBinary:n}){return n?(0,O.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Binary file — no preview available.`}):t===null?(0,O.jsxs)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[`No preview available for `,e,`.`]}):w(e,void 0)?(0,O.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,O.jsx)(T,{content:t})}):(0,O.jsx)(`pre`,{className:`h-full overflow-auto p-4 font-mono text-body-small-default`,style:{color:`var(--content-default)`},children:t})}async function L(e,t,n){let{data:r,error:i,response:a}=await u({path:{assistant_id:e},body:n?{slug:t,version:n}:{slug:t},throwOnError:!1});if(p(a,i,`Failed to install skill.`),!a.ok)throw new h(a.status,m(i,a,`Failed to install skill.`));return r??{ok:!0}}export{P as a,E as c,M as i,F as n,j as o,N as r,k as s,L as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{t as r}from"./capture-error-CZsNGL6n.js";import{t as i}from"./react-DJZBPgpf.js";import{d as a,h as o}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as s}from"./QueryClientProvider-DNHWXaGq.js";import{t as c}from"./useQuery-D2zf6Uhu.js";import{t as l}from"./useMutation-BuofVRHk.js";import{t as u}from"./jsx-runtime-CVSDxk6A.js";import{t as d}from"./button-DdEh-9f_.js";import{t as f}from"./card-CL5iEMJO.js";import{t as p}from"./confirm-dialog-NYG-K9zN.js";import{t as m}from"./notice-CF2pptne.js";import{n as h,r as g,t as _}from"./panel-item-FzMfzMJA.js";import{t as v}from"./input-Cu3PPVCq.js";import{n as y}from"./toast-DU1nH33j.js";import{t as b}from"./external-link-BCB1rbW9.js";import{t as x}from"./loader-circle-BSAFLoPH.js";import{t as S}from"./pencil-BA9LOIzP.js";import{t as C}from"./x-BDqbYVtS.js";import{$t as w,Qt as T,Xt as E,Zt as D,en as O,nn as k,rn as A,tn as j}from"./sdk.gen-AJllUeDf.js";import{r as M}from"./api-errors-ChauV4ed.js";import{O as ee}from"./auth-store-CiQCAKS1.js";import{r as N}from"./api-DEEx3e9R.js";import{i as P}from"./routes-Dk5Qeryt.js";import{n as F}from"./use-is-mobile-D_xrnINF.js";import{Bi as I,Ct as L,G as R,Ja as z,M as B,Ni as V,O as H,St as te,W as ne,Yi as U,bt as W,et as G,j as K,k as re,mo as q,na as J,po as Y,so as ie,xt as ae}from"./index-BjEJFZTJ.js";import{t as oe}from"./use-oauth-complete-deep-link-listener-BQZGv8sr.js";var X=e(i(),1);async function se(e){let{data:t,error:n}=await A({path:{assistant_id:e},throwOnError:!1});if(n||!t)throw Error(`Failed to fetch OAuth providers`);return t.providers}async function ce(e,t){let{data:n,error:r}=await k({path:{assistant_id:e,providerKey:t},throwOnError:!1});if(r||!n)throw Error(`Failed to fetch OAuth provider detail`);return{oauth_callback_url:n.oauth_callback_url??null}}function Z(e,t){if(e&&typeof e==`object`){let t=e;if(t.error?.message)return t.error.message;if(t.detail)return t.detail;if(t.message)return t.message}return t}async function le(e,t){let{data:n,error:r}=await w({path:{assistant_id:e},query:{provider_key:t},throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to load OAuth apps`));return n.apps}async function ue(e,t){let{data:n,error:r}=await O({path:{assistant_id:e},body:t,throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to create OAuth app`));return n.app}async function de(e,t){let{error:n}=await T({path:{assistant_id:e,id:t},throwOnError:!1});if(n)throw Error(Z(n,`Failed to delete OAuth app`))}async function fe(e,t){let{data:n,error:r}=await D({path:{assistant_id:e,appId:t},throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to load OAuth app connections`));return n.connections}async function pe(e,t){let{error:n}=await j({path:{assistant_id:e,id:t},throwOnError:!1});if(n)throw Error(Z(n,`Failed to disconnect OAuth account`))}async function me(e,t,n){let{data:r,error:i}=await E({path:{assistant_id:e,appId:t},body:{callback_transport:`gateway`,scopes:n??[]},throwOnError:!1});if(i||!r)throw Error(Z(i,`Failed to start OAuth flow`));if(!(`auth_url`in r))throw Error(`OAuth flow did not return an authorization URL`);return{authUrl:r.auth_url,state:r.state}}function he(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function ge(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}var Q=u();function _e(e){return new Promise(t=>setTimeout(t,e))}function ve(e){return JSON.stringify({status:e.status,connected:e.connected,account_label:e.account_label,scopes_granted:[...e.scopes_granted].sort(),expires_at:e.expires_at})}function ye(e,t){return new Map((e??[]).filter(e=>e.provider===t).map(e=>[e.id,ve(e)]))}function be(e,t,n){return e.some(e=>e.provider===t&&e.connected&&n.get(e.id)!==ve(e))}function xe({assistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,platformGate:a,onClose:o}){let u=s(),f=ee(),h=a===`full`,[g,_]=(0,X.useState)(a===`gated`?`your-own`:`managed`),[v,b]=(0,X.useState)(null),[x,S]=(0,X.useState)(null),w=(0,X.useRef)(null),T=(0,X.useRef)(null),E=(0,X.useRef)(null),D=(0,X.useRef)(null),[O,k]=(0,X.useState)(!1),A=(0,X.useCallback)(()=>{T.current=null,k(!1)},[]),j=(0,X.useCallback)(()=>{w.current&&!w.current.closed&&w.current.close(),w.current=null,E.current&&=(clearInterval(E.current),null),D.current&&=(clearTimeout(D.current),null)},[]),N=ae({path:{assistant_id:e}}),F=(0,X.useCallback)(e=>{if(e.type!==`vellum:oauth-complete`||!T.current||e.requestId!==T.current.requestId)return;let{oauthStatus:t,oauthCode:r}=e;if(j(),A(),t===`connected`)y.success(`${n} account connected.`),u.invalidateQueries({queryKey:N});else{let e=r?`Error: ${r}`:`Authorization failed`;y.error(`${n} ${e}`)}},[A,j,N,n,u]),I=(0,X.useCallback)(async n=>{if(!h)return!1;for(let r=0;r<8;r+=1){r>0&&await _e(750);try{if(u.invalidateQueries({queryKey:N}),be(await u.fetchQuery({...W({path:{assistant_id:e}}),staleTime:0}),t,n))return!0}catch{}}return!1},[e,N,h,t,u]);(0,X.useEffect)(()=>{let e=e=>{e.key===`Escape`&&o()};document.addEventListener(`keydown`,e);let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.removeEventListener(`keydown`,e),document.body.style.overflow=t}},[o]),(0,X.useEffect)(()=>{let e=e=>{let t=T.current;if(!t)return;let n=H(e,window.location.origin,t.requestId);n&&F(n)},t=e=>{let t=T.current;if(!t)return;let n=re(e,t.requestId);n&&(F(n),window.localStorage.removeItem(K(t.requestId)))};return window.addEventListener(`message`,e),window.addEventListener(`storage`,t),()=>{window.removeEventListener(`message`,e),window.removeEventListener(`storage`,t)}},[F]),oe((0,X.useCallback)(e=>{let t=T.current;t&&e.requestId===t.requestId&&F({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[F])),(0,X.useEffect)(()=>R(()=>{let e=T.current;e&&(async()=>{let t=await I(e.baselineConnectionSignatures);T.current&&(A(),t&&y.success(`${n} account connected.`))})()}),[A,I,n]),(0,X.useEffect)(()=>()=>{E.current&&clearInterval(E.current),D.current&&clearTimeout(D.current),w.current&&!w.current.closed&&w.current.close()},[]);let{data:z,isLoading:V}=c({...W({path:{assistant_id:e}}),enabled:h}),U=(z??[]).filter(e=>e.provider===t&&e.connected),G=l({...L()}),q=l({...te(),onSuccess(e,t){y.success(`${n} account disconnected.`);let r=t.path.connection_id;u.setQueryData(N,e=>e?.filter(e=>e.id!==r)),u.invalidateQueries({queryKey:N}),b(null)},onError(e){let t=M(e,void 0,`Failed to disconnect ${n} account.`);y.error(t),b(null)}}),J=(0,X.useCallback)(()=>{if(!h)return;let r=crypto.randomUUID();if(f){k(!0),T.current={requestId:r,provider:t,baselineConnectionSignatures:ye(u.getQueryData(N)??z,t)},G.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${P.account.oauth.popupComplete}?requestId=${r}&native=1`}},{onSuccess(e){ne(e.connect_url)},onError(e){A();let t=M(e,void 0,`Failed to start ${n} authorization.`);y.error(t)}});return}let i=window.open(``,`_blank`,`width=500,height=600`);if(i===null){y.error(`Popup blocked. Please enable popups and try again.`);return}w.current=i,k(!0),T.current={requestId:r,provider:t,baselineConnectionSignatures:ye(u.getQueryData(N)??z,t)},E.current=setInterval(()=>{w.current&&w.current.closed&&T.current&&!D.current&&(D.current=setTimeout(async()=>{D.current=null;let e=T.current;if(!e)return;let t=window.localStorage.getItem(K(e.requestId));if(t)try{F(JSON.parse(t)),window.localStorage.removeItem(K(e.requestId));return}catch{}let r=await I(e.baselineConnectionSignatures);if(T.current){if(r){j(),A(),y.success(`${n} account connected.`);return}j(),A(),y.error(`${n} connection failed: authorization popup closed.`)}},1e3))},100),G.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${P.account.oauth.popupComplete}?requestId=${r}`}},{onSuccess(e){w.current&&!w.current.closed?w.current.location.href=e.connect_url:T.current&&(j(),A(),y.error(`${n} connection failed: popup closed.`))},onError(e){j(),A();let t=M(e,void 0,`Failed to start ${n} authorization.`);y.error(t)}})},[e,t,n,z,N,u,A,j,F,I,G,f,h]),Y=e=>{S(e)},ie=()=>{let t=x;S(null),t&&(b(t.id),q.mutate({path:{assistant_id:e,connection_id:t.id}}))},se=r?`Configure ${n} OAuth for ${r}`:`Configure ${n} OAuth`;return(0,Q.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,Q.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:[n,` OAuth`]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:se})]})]}),(0,Q.jsx)(d,{variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(C,{}),"aria-label":`Close`,onClick:o})]}),(0,Q.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[a!==`gated`&&(0,Q.jsxs)(`div`,{role:`tablist`,"aria-label":`OAuth mode`,className:`flex w-full rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-0.5 dark:border-[var(--border-base)] dark:bg-[var(--surface-base)]/40`,children:[(0,Q.jsx)(Se,{active:g===`managed`,onClick:()=>_(`managed`),children:`Managed`}),(0,Q.jsx)(Se,{active:g===`your-own`,onClick:()=>_(`your-own`),children:`Your Own`})]}),g===`managed`&&a!==`gated`?a===`disabled`?(0,Q.jsx)(m,{tone:`info`,children:`Log in to the Vellum platform to manage OAuth connections.`}):(0,Q.jsx)(Ce,{displayName:n,providerKey:t,logoUrl:i,connections:U,connectionsLoading:V,startPending:G.isPending,oauthInProgress:O,disconnectingId:q.isPending?v:null,onConnect:J,onDisconnect:Y}):(0,Q.jsx)(we,{assistantId:e,providerKey:t,displayName:n,logoUrl:i})]}),(0,Q.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,Q.jsx)(d,{variant:`outlined`,size:`compact`,onClick:o,children:`Confirm`})})]}),(0,Q.jsx)(p,{open:x!==null,title:`Disconnect ${n}?`,message:x?`Disconnect ${x.account_label??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:ie,onCancel:()=>S(null)})]})}function Se({active:e,onClick:t,children:n}){return(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e,onClick:t,className:`flex-1 cursor-pointer rounded-[5px] px-3 py-1.5 text-body-medium-default transition-colors ${e?`bg-white text-[var(--content-default)] shadow-sm dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:text-[var(--content-default)] dark:text-[var(--content-disabled)] dark:hover:text-[var(--content-default)]`}`,children:n})}function Ce({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,startPending:a,oauthInProgress:o,disconnectingId:s,onConnect:c,onDisconnect:l}){return i?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(x,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?a||o?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:`Connect Account to continue`}),(0,Q.jsx)(d,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(J,{}),onClick:c,disabled:a||o,children:`Connect Account`})]}):(0,Q.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=s===r.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:r.account_label??`${e} Account`}),(0,Q.jsx)(d,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,Q.jsx)(x,{className:`animate-spin`}):(0,Q.jsx)(V,{}),onClick:()=>l(r),disabled:i,"aria-label":`Disconnect ${r.account_label??`${e} account`}`})]},r.id)})}),(0,Q.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:a||o?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]}):(0,Q.jsx)(d,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(b,{}),onClick:c,disabled:a||o,children:`Connect account`})})]})}function we({assistantId:e,providerKey:t,displayName:n,logoUrl:r}){let[i,a]=(0,X.useState)([]),[o,s]=(0,X.useState)({}),[c,l]=(0,X.useState)(!0),[u,m]=(0,X.useState)(!1),[h,g]=(0,X.useState)(``),[_,S]=(0,X.useState)(``),[C,w]=(0,X.useState)(!1),[T,E]=(0,X.useState)(null),[D,O]=(0,X.useState)(!1),[k,A]=(0,X.useState)(null),[j,M]=(0,X.useState)(null),[ee,N]=(0,X.useState)(null),[P,F]=(0,X.useState)(null),[I,L]=(0,X.useState)(null),R=(0,X.useCallback)(async t=>{try{let n=await fe(e,t);s(e=>({...e,[t]:n}))}catch(e){let t=e instanceof Error?e.message:`Failed to load connections`;y.error(t)}},[e]),H=(0,X.useCallback)(async()=>{l(!0);try{let n=await le(e,t);a(n),await Promise.all(n.map(e=>R(e.id)))}catch(e){let t=e instanceof Error?e.message:`Failed to load OAuth apps`;y.error(t)}finally{l(!1)}},[e,t,R]);(0,X.useEffect)(()=>{H()},[H]),(0,X.useEffect)(()=>{let n=!0;return ce(e,t).then(e=>{n&&E(e.oauth_callback_url)},()=>{}),()=>{n=!1}},[e,t]);let te=i.length===0||u,ne=async()=>{if(!(!h.trim()||!_.trim())){w(!0);try{let r=await ue(e,{provider_key:t,client_id:h.trim(),client_secret:_.trim()});a(e=>[...e,r]),s(e=>({...e,[r.id]:[]})),g(``),S(``),m(!1),y.success(`${n} OAuth app added.`)}catch(e){let t=e instanceof Error?e.message:`Failed to create OAuth app`;y.error(t)}finally{w(!1)}}},U=e=>{F(e)},W=async()=>{let t=P;if(F(null),t){A(t.id);try{await de(e,t.id),a(e=>e.filter(e=>e.id!==t.id)),s(e=>{let n={...e};return delete n[t.id],n}),y.success(`OAuth app deleted.`)}catch(e){let t=e instanceof Error?e.message:`Failed to delete OAuth app`;y.error(t)}finally{A(null)}}},G=async t=>{M(t.id);try{let{authUrl:n}=await me(e,t.id);window.location.href=n}catch(e){let t=e instanceof Error?e.message:`Failed to start OAuth flow`;y.error(t),M(null)}},K=(e,t)=>{L({appId:e,connection:t})},re=async()=>{let t=I;if(L(null),!t)return;let{appId:r,connection:i}=t;N(i.id);try{await pe(e,i.id),s(e=>({...e,[r]:(e[r]??[]).filter(e=>e.id!==i.id)})),y.success(`${n} account disconnected.`)}catch(e){let t=e instanceof Error?e.message:`Failed to disconnect account`;y.error(t)}finally{N(null)}};return c?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(x,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[te?(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:i.length===0?`Add your own ${n} OAuth app`:`Add another ${n} OAuth app`}),(0,Q.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-tertiary)]`,children:`Credentials are stored encrypted on the assistant and are never sent to Vellum.`})]}),T?(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Redirect URL`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{type:`text`,value:T,readOnly:!0,fullWidth:!0}),(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{navigator.clipboard.writeText(T).then(()=>{O(!0),y.success(`Copied to clipboard!`),setTimeout(()=>O(!1),2e3)})},"aria-label":D?`Copied`:`Copy redirect URL`,iconOnly:D?(0,Q.jsx)(q,{"aria-hidden":!0}):(0,Q.jsx)(z,{"aria-hidden":!0})})]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Add this URL to your OAuth app's redirect settings.`})]}):null,(0,Q.jsx)(v,{label:`Client ID`,type:`text`,value:h,onChange:e=>g(e.target.value),placeholder:`Enter your client ID`,fullWidth:!0}),(0,Q.jsx)(v,{label:`Client Secret`,type:`password`,value:_,onChange:e=>S(e.target.value),placeholder:`Enter your client secret`,fullWidth:!0}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[i.length>0?(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{m(!1),g(``),S(``)},disabled:C,children:`Cancel`}):null,(0,Q.jsx)(d,{type:`button`,size:`compact`,onClick:ne,disabled:C||!h.trim()||!_.trim(),leftIcon:C?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(J,{"aria-hidden":!0}),children:`Add App`})]})]})}):null,i.map(e=>{let i=o[e.id]??[],a=k===e.id,s=j===e.id;return(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,Q.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:he(e.client_id)}),(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Added `,ge(e.created_at)]})]}),(0,Q.jsx)(d,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>U(e),disabled:a,"aria-label":`Delete OAuth app ${he(e.client_id)}`,iconOnly:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(V,{"aria-hidden":!0})})]}),i.length>0?(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:i.map(i=>{let a=ee===i.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:r,size:18}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:i.account_info??`${n} Account`}),(0,Q.jsx)(d,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>K(e.id,i),disabled:a,"aria-label":`Disconnect ${i.account_info??`${n} account`}`,iconOnly:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(V,{"aria-hidden":!0})})]},i.id)})}):null,(0,Q.jsx)(d,{type:`button`,size:`compact`,onClick:()=>G(e),disabled:s,className:`w-full`,leftIcon:s?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(b,{"aria-hidden":!0}),children:s?`Waiting for authorization...`:`Connect account`})]})},e.id)}),i.length>0&&!u?(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>m(!0),className:`w-full border-dashed`,leftIcon:(0,Q.jsx)(J,{"aria-hidden":!0}),children:`Add Another App`}):null,(0,Q.jsx)(p,{open:P!==null,title:`Delete OAuth app`,message:P?`Delete OAuth app '${he(P.client_id)}'? This will disconnect all linked accounts.`:``,confirmLabel:`Delete`,destructive:!0,onConfirm:()=>{W()},onCancel:()=>F(null)}),(0,Q.jsx)(p,{open:I!==null,title:`Disconnect ${n}?`,message:I?`Disconnect ${I.connection.account_info??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{re()},onCancel:()=>L(null)})]})}function Te({assistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,connection:a,platformGate:o,onConfigure:c}){let u=s(),m=!!a?.connected,[h,g]=(0,X.useState)(!1),[_,v]=(0,X.useState)(!1),b=F(),x=ae({path:{assistant_id:e}}),S=l({...te(),onSuccess(e,t){y.success(`${n} account disconnected.`);let r=t.path.connection_id;u.setQueryData(x,e=>e?.filter(e=>e.id!==r)),u.invalidateQueries({queryKey:x})},onError(e){let t=M(e,void 0,`Failed to disconnect ${n} account.`);y.error(t)}}),C=()=>{a?.id&&v(!0)};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,Q.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),m&&o===`full`?(0,Q.jsx)(`div`,{className:`shrink-0`,children:(0,Q.jsx)(Ee,{displayName:n,open:h,onOpenChange:g,onEditConnections:()=>{g(!1),c()},onDisable:()=>{g(!1),C()},disablePending:S.isPending,isMobile:b})}):(0,Q.jsx)(d,{variant:`primary`,onClick:c,className:`shrink-0`,children:`Enable`})]})}),(0,Q.jsx)(p,{open:_,title:`Disconnect ${n}?`,message:`Disconnect your ${n} account? You can reconnect it later.`,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{v(!1),a?.id&&S.mutate({path:{assistant_id:e,connection_id:a.id}})},onCancel:()=>v(!1)})]})}function Ee({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:a,isMobile:o}){return o?(0,Q.jsxs)(h.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(h.Trigger,{asChild:!0,children:(0,Q.jsx)(d,{variant:`outlined`,rightIcon:(0,Q.jsx)(Y,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(h.Content,{children:[(0,Q.jsx)(h.Header,{children:(0,Q.jsx)(h.Title,{children:e})}),(0,Q.jsxs)(h.Body,{children:[(0,Q.jsx)(_,{icon:S,label:`Edit connections`,onSelect:r}),(0,Q.jsx)(_,{icon:a?x:ie,label:`Disable`,onSelect:()=>{a||i()}})]})]})]}):(0,Q.jsxs)(g.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(g.Trigger,{asChild:!0,children:(0,Q.jsx)(d,{variant:`outlined`,rightIcon:(0,Q.jsx)(Y,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(g.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,Q.jsx)(d,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,Q.jsx)(S,{"aria-hidden":!0}),children:`Edit connections`}),(0,Q.jsx)(d,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:a,className:`w-full justify-start rounded-none`,leftIcon:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(ie,{"aria-hidden":!0}),children:`Disable`})]})]})}var De=`vellum:integrations:bannerDismissed`,Oe=[{value:`all`,label:`All`},{value:`enabled`,label:`Enabled`},{value:`not-enabled`,label:`Not Enabled`}];function $(e,t){return e?.find(e=>e.provider===t)??null}function ke(){let[e]=o(),i=a(),s=G(),[l,u]=(0,X.useState)(null),[d,f]=(0,X.useState)(!0),[p,h]=(0,X.useState)(``),[_,b]=(0,X.useState)(`all`),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(!0),[E,D]=(0,X.useState)(null);(0,X.useEffect)(()=>{T(t(De,`false`)===`true`)},[]);let O=()=>{T(!0),n(De,`true`)};(0,X.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await N();e&&t.ok&&u(t.data)}catch(e){r(e,{context:`integrations.getAssistant`})}finally{e&&f(!1)}})(),()=>{e=!1}},[]);let{data:k,isLoading:A,isError:j}=c({queryKey:[`oauth-providers`,l?.id],queryFn:()=>se(l.id),enabled:!!l}),{data:M,isLoading:ee}=c({...W({path:{assistant_id:l?.id??``}}),enabled:!!l&&s===`full`});(0,X.useEffect)(()=>{let t=e.get(`oauth_status`);if(!t)return;let n=e.get(`oauth_provider`),r=n?n.charAt(0).toUpperCase()+n.slice(1):null;if(t===`connected`)y.success(r?`${r} account connected successfully.`:`Account connected successfully.`);else if(t===`error`){let t=e.get(`oauth_code`)??`unknown`;y.error({denied:`Authorization was denied. Please try again.`,state_invalid:`Authorization state was invalid. Please try again.`,state_expired:`Authorization expired. Please try again.`,exchange_failed:`Failed to complete authorization. Please try again.`,identity_failed:`Failed to verify account identity. Please try again.`}[t]??(r?`Failed to connect ${r}.`:`Failed to connect. Please try again.`))}i(P.settings.integrations,{replace:!0})},[e,i]);let F=(0,X.useMemo)(()=>k?.filter(e=>e.supports_managed_mode)??[],[k]),L=(0,X.useMemo)(()=>{let e=p.trim().toLowerCase(),t=F.filter(t=>{if(!e)return!0;let n=(t.display_name??t.provider_key).toLowerCase(),r=(t.description??``).toLowerCase();return n.includes(e)||r.includes(e)});return _!==`all`&&(t=t.filter(e=>{let t=!!$(M,e.provider_key)?.connected;return _===`enabled`?t:!t})),[...t].sort((e,t)=>{let n=!!$(M,e.provider_key)?.connected;if(n!==!!$(M,t.provider_key)?.connected)return n?-1:1;let r=(e.display_name??e.provider_key).toLowerCase(),i=(t.display_name??t.provider_key).toLowerCase();return r.localeCompare(i)})},[F,M,p,_]),R=d||A||ee,z=Oe.find(e=>e.value===_)?.label??`All`,B=(()=>{if(p.trim())return`No integrations matched`;switch(_){case`enabled`:return`No Enabled Integrations`;case`not-enabled`:return`All Integrations Are Enabled`;default:return`No Integrations Available`}})(),V=(()=>{if(p.trim())return`No integrations matched "${p.trim()}"`;switch(_){case`enabled`:return`Connect an integration to get started.`;case`not-enabled`:return`All available integrations have been connected.`;default:return`Check your connection and try again.`}})(),H=(0,X.useMemo)(()=>E?F.find(e=>e.provider_key===E)??null:null,[F,E]);return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[!w&&(0,Q.jsxs)(m,{tone:`info`,icon:(0,Q.jsx)(I,{className:`h-3.5 w-3.5`}),onDismiss:O,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default`,children:`Tip:`}),` You can enable integrations by mentioning them in chat.`]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{type:`text`,value:p,onChange:e=>h(e.target.value),placeholder:`Search Integrations`,"aria-label":`Search integrations`,leftIcon:(0,Q.jsx)(U,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,Q.jsxs)(g.Root,{open:S,onOpenChange:C,children:[(0,Q.jsx)(g.Trigger,{asChild:!0,children:(0,Q.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-expanded":S,className:`flex w-36 cursor-pointer items-center justify-between gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-lighter text-[var(--content-default)] transition-colors hover:bg-[var(--ghost-hover)]`,children:[(0,Q.jsx)(`span`,{children:z}),(0,Q.jsx)(Y,{className:`h-3.5 w-3.5`})]})}),(0,Q.jsx)(g.Content,{align:`end`,sideOffset:4,className:`w-36 overflow-hidden p-0`,children:(0,Q.jsx)(`div`,{role:`listbox`,children:Oe.map(e=>{let t=e.value===_;return(0,Q.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":t,onClick:()=>{b(e.value),C(!1)},className:`flex w-full cursor-pointer items-center px-3 py-1.5 text-left hover:bg-[var(--ghost-hover)] ${t?`text-body-medium-default text-[var(--content-default)]`:`text-body-medium-lighter text-[var(--content-default)]`}`,children:e.label},e.value)})})})]})]}),(0,Q.jsx)(`div`,{children:R?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-4 w-4 animate-spin`}),(0,Q.jsx)(`span`,{children:`Loading...`})]}):j?(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load integrations. Please try again.`}):l?L.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,Q.jsx)(U,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:B}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:V})]}):(0,Q.jsx)(`div`,{className:`space-y-2`,children:L.map(e=>(0,Q.jsx)(Te,{assistantId:l.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:$(M,e.provider_key),platformGate:s,onConfigure:()=>D(e.provider_key)},e.provider_key))}):(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to connect integrations.`})}),H&&l&&(0,Q.jsx)(xe,{assistantId:l.id,providerKey:H.provider_key,displayName:H.display_name??H.provider_key,description:H.description,logoUrl:H.logo_url,platformGate:s,onClose:()=>D(null)})]})}function Ae(){return(0,Q.jsx)(`div`,{className:`space-y-6`,children:(0,Q.jsx)(X.Suspense,{children:(0,Q.jsx)(ke,{})})})}export{Ae as IntegrationsPage};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{t as r}from"./capture-error-CZsNGL6n.js";import{t as i}from"./react-DJZBPgpf.js";import{d as a,h as o}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as s}from"./QueryClientProvider-DNHWXaGq.js";import{t as c}from"./useQuery-D2zf6Uhu.js";import{t as l}from"./useMutation-BuofVRHk.js";import{t as u}from"./jsx-runtime-CVSDxk6A.js";import{t as d}from"./button-DdEh-9f_.js";import{t as f}from"./card-CL5iEMJO.js";import{t as p}from"./confirm-dialog-NYG-K9zN.js";import{t as m}from"./notice-CF2pptne.js";import{n as h,r as g,t as _}from"./panel-item-FzMfzMJA.js";import{t as v}from"./input-Cu3PPVCq.js";import{n as y}from"./toast-DU1nH33j.js";import{t as b}from"./external-link-BCB1rbW9.js";import{t as x}from"./loader-circle-BSAFLoPH.js";import{t as S}from"./pencil-BA9LOIzP.js";import{t as C}from"./x-BDqbYVtS.js";import{$t as w,Qt as T,Xt as E,Zt as D,en as O,nn as k,rn as A,tn as j}from"./sdk.gen-AJllUeDf.js";import{r as M}from"./api-errors-ChauV4ed.js";import{O as ee}from"./auth-store-CiQCAKS1.js";import{r as N}from"./api-DEEx3e9R.js";import{i as P}from"./routes-Dk5Qeryt.js";import{n as F}from"./use-is-mobile-D_xrnINF.js";import{Bi as I,Ct as L,G as R,Ja as z,M as B,Ni as V,O as H,St as te,W as ne,Yi as U,bt as W,et as G,j as K,k as re,mo as q,na as J,po as Y,so as ie,xt as ae}from"./index-DGojzQtP.js";import{t as oe}from"./use-oauth-complete-deep-link-listener-aRDKwx8y.js";var X=e(i(),1);async function se(e){let{data:t,error:n}=await A({path:{assistant_id:e},throwOnError:!1});if(n||!t)throw Error(`Failed to fetch OAuth providers`);return t.providers}async function ce(e,t){let{data:n,error:r}=await k({path:{assistant_id:e,providerKey:t},throwOnError:!1});if(r||!n)throw Error(`Failed to fetch OAuth provider detail`);return{oauth_callback_url:n.oauth_callback_url??null}}function Z(e,t){if(e&&typeof e==`object`){let t=e;if(t.error?.message)return t.error.message;if(t.detail)return t.detail;if(t.message)return t.message}return t}async function le(e,t){let{data:n,error:r}=await w({path:{assistant_id:e},query:{provider_key:t},throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to load OAuth apps`));return n.apps}async function ue(e,t){let{data:n,error:r}=await O({path:{assistant_id:e},body:t,throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to create OAuth app`));return n.app}async function de(e,t){let{error:n}=await T({path:{assistant_id:e,id:t},throwOnError:!1});if(n)throw Error(Z(n,`Failed to delete OAuth app`))}async function fe(e,t){let{data:n,error:r}=await D({path:{assistant_id:e,appId:t},throwOnError:!1});if(r||!n)throw Error(Z(r,`Failed to load OAuth app connections`));return n.connections}async function pe(e,t){let{error:n}=await j({path:{assistant_id:e,id:t},throwOnError:!1});if(n)throw Error(Z(n,`Failed to disconnect OAuth account`))}async function me(e,t,n){let{data:r,error:i}=await E({path:{assistant_id:e,appId:t},body:{callback_transport:`gateway`,scopes:n??[]},throwOnError:!1});if(i||!r)throw Error(Z(i,`Failed to start OAuth flow`));if(!(`auth_url`in r))throw Error(`OAuth flow did not return an authorization URL`);return{authUrl:r.auth_url,state:r.state}}function he(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function ge(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}var Q=u();function _e(e){return new Promise(t=>setTimeout(t,e))}function ve(e){return JSON.stringify({status:e.status,connected:e.connected,account_label:e.account_label,scopes_granted:[...e.scopes_granted].sort(),expires_at:e.expires_at})}function ye(e,t){return new Map((e??[]).filter(e=>e.provider===t).map(e=>[e.id,ve(e)]))}function be(e,t,n){return e.some(e=>e.provider===t&&e.connected&&n.get(e.id)!==ve(e))}function xe({assistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,platformGate:a,onClose:o}){let u=s(),f=ee(),h=a===`full`,[g,_]=(0,X.useState)(a===`gated`?`your-own`:`managed`),[v,b]=(0,X.useState)(null),[x,S]=(0,X.useState)(null),w=(0,X.useRef)(null),T=(0,X.useRef)(null),E=(0,X.useRef)(null),D=(0,X.useRef)(null),[O,k]=(0,X.useState)(!1),A=(0,X.useCallback)(()=>{T.current=null,k(!1)},[]),j=(0,X.useCallback)(()=>{w.current&&!w.current.closed&&w.current.close(),w.current=null,E.current&&=(clearInterval(E.current),null),D.current&&=(clearTimeout(D.current),null)},[]),N=ae({path:{assistant_id:e}}),F=(0,X.useCallback)(e=>{if(e.type!==`vellum:oauth-complete`||!T.current||e.requestId!==T.current.requestId)return;let{oauthStatus:t,oauthCode:r}=e;if(j(),A(),t===`connected`)y.success(`${n} account connected.`),u.invalidateQueries({queryKey:N});else{let e=r?`Error: ${r}`:`Authorization failed`;y.error(`${n} ${e}`)}},[A,j,N,n,u]),I=(0,X.useCallback)(async n=>{if(!h)return!1;for(let r=0;r<8;r+=1){r>0&&await _e(750);try{if(u.invalidateQueries({queryKey:N}),be(await u.fetchQuery({...W({path:{assistant_id:e}}),staleTime:0}),t,n))return!0}catch{}}return!1},[e,N,h,t,u]);(0,X.useEffect)(()=>{let e=e=>{e.key===`Escape`&&o()};document.addEventListener(`keydown`,e);let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.removeEventListener(`keydown`,e),document.body.style.overflow=t}},[o]),(0,X.useEffect)(()=>{let e=e=>{let t=T.current;if(!t)return;let n=H(e,window.location.origin,t.requestId);n&&F(n)},t=e=>{let t=T.current;if(!t)return;let n=re(e,t.requestId);n&&(F(n),window.localStorage.removeItem(K(t.requestId)))};return window.addEventListener(`message`,e),window.addEventListener(`storage`,t),()=>{window.removeEventListener(`message`,e),window.removeEventListener(`storage`,t)}},[F]),oe((0,X.useCallback)(e=>{let t=T.current;t&&e.requestId===t.requestId&&F({type:`vellum:oauth-complete`,requestId:e.requestId,oauthStatus:e.oauthStatus,oauthProvider:e.oauthProvider,oauthCode:e.oauthCode})},[F])),(0,X.useEffect)(()=>R(()=>{let e=T.current;e&&(async()=>{let t=await I(e.baselineConnectionSignatures);T.current&&(A(),t&&y.success(`${n} account connected.`))})()}),[A,I,n]),(0,X.useEffect)(()=>()=>{E.current&&clearInterval(E.current),D.current&&clearTimeout(D.current),w.current&&!w.current.closed&&w.current.close()},[]);let{data:z,isLoading:V}=c({...W({path:{assistant_id:e}}),enabled:h}),U=(z??[]).filter(e=>e.provider===t&&e.connected),G=l({...L()}),q=l({...te(),onSuccess(e,t){y.success(`${n} account disconnected.`);let r=t.path.connection_id;u.setQueryData(N,e=>e?.filter(e=>e.id!==r)),u.invalidateQueries({queryKey:N}),b(null)},onError(e){let t=M(e,void 0,`Failed to disconnect ${n} account.`);y.error(t),b(null)}}),J=(0,X.useCallback)(()=>{if(!h)return;let r=crypto.randomUUID();if(f){k(!0),T.current={requestId:r,provider:t,baselineConnectionSignatures:ye(u.getQueryData(N)??z,t)},G.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${P.account.oauth.popupComplete}?requestId=${r}&native=1`}},{onSuccess(e){ne(e.connect_url)},onError(e){A();let t=M(e,void 0,`Failed to start ${n} authorization.`);y.error(t)}});return}let i=window.open(``,`_blank`,`width=500,height=600`);if(i===null){y.error(`Popup blocked. Please enable popups and try again.`);return}w.current=i,k(!0),T.current={requestId:r,provider:t,baselineConnectionSignatures:ye(u.getQueryData(N)??z,t)},E.current=setInterval(()=>{w.current&&w.current.closed&&T.current&&!D.current&&(D.current=setTimeout(async()=>{D.current=null;let e=T.current;if(!e)return;let t=window.localStorage.getItem(K(e.requestId));if(t)try{F(JSON.parse(t)),window.localStorage.removeItem(K(e.requestId));return}catch{}let r=await I(e.baselineConnectionSignatures);if(T.current){if(r){j(),A(),y.success(`${n} account connected.`);return}j(),A(),y.error(`${n} connection failed: authorization popup closed.`)}},1e3))},100),G.mutate({path:{assistant_id:e,provider:t},body:{requested_scopes:[],redirect_after_connect:`${P.account.oauth.popupComplete}?requestId=${r}`}},{onSuccess(e){w.current&&!w.current.closed?w.current.location.href=e.connect_url:T.current&&(j(),A(),y.error(`${n} connection failed: popup closed.`))},onError(e){j(),A();let t=M(e,void 0,`Failed to start ${n} authorization.`);y.error(t)}})},[e,t,n,z,N,u,A,j,F,I,G,f,h]),Y=e=>{S(e)},ie=()=>{let t=x;S(null),t&&(b(t.id),q.mutate({path:{assistant_id:e,connection_id:t.id}}))},se=r?`Configure ${n} OAuth for ${r}`:`Configure ${n} OAuth`;return(0,Q.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,Q.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,Q.jsxs)(`div`,{children:[(0,Q.jsxs)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:[n,` OAuth`]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:se})]})]}),(0,Q.jsx)(d,{variant:`ghost`,size:`compact`,iconOnly:(0,Q.jsx)(C,{}),"aria-label":`Close`,onClick:o})]}),(0,Q.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[a!==`gated`&&(0,Q.jsxs)(`div`,{role:`tablist`,"aria-label":`OAuth mode`,className:`flex w-full rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-0.5 dark:border-[var(--border-base)] dark:bg-[var(--surface-base)]/40`,children:[(0,Q.jsx)(Se,{active:g===`managed`,onClick:()=>_(`managed`),children:`Managed`}),(0,Q.jsx)(Se,{active:g===`your-own`,onClick:()=>_(`your-own`),children:`Your Own`})]}),g===`managed`&&a!==`gated`?a===`disabled`?(0,Q.jsx)(m,{tone:`info`,children:`Log in to the Vellum platform to manage OAuth connections.`}):(0,Q.jsx)(Ce,{displayName:n,providerKey:t,logoUrl:i,connections:U,connectionsLoading:V,startPending:G.isPending,oauthInProgress:O,disconnectingId:q.isPending?v:null,onConnect:J,onDisconnect:Y}):(0,Q.jsx)(we,{assistantId:e,providerKey:t,displayName:n,logoUrl:i})]}),(0,Q.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,Q.jsx)(d,{variant:`outlined`,size:`compact`,onClick:o,children:`Confirm`})})]}),(0,Q.jsx)(p,{open:x!==null,title:`Disconnect ${n}?`,message:x?`Disconnect ${x.account_label??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:ie,onCancel:()=>S(null)})]})}function Se({active:e,onClick:t,children:n}){return(0,Q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e,onClick:t,className:`flex-1 cursor-pointer rounded-[5px] px-3 py-1.5 text-body-medium-default transition-colors ${e?`bg-white text-[var(--content-default)] shadow-sm dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:text-[var(--content-default)] dark:text-[var(--content-disabled)] dark:hover:text-[var(--content-default)]`}`,children:n})}function Ce({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,startPending:a,oauthInProgress:o,disconnectingId:s,onConnect:c,onDisconnect:l}){return i?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(x,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?a||o?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]})]}):(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:`Connect Account to continue`}),(0,Q.jsx)(d,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(J,{}),onClick:c,disabled:a||o,children:`Connect Account`})]}):(0,Q.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=s===r.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:r.account_label??`${e} Account`}),(0,Q.jsx)(d,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,Q.jsx)(x,{className:`animate-spin`}):(0,Q.jsx)(V,{}),onClick:()=>l(r),disabled:i,"aria-label":`Disconnect ${r.account_label??`${e} account`}`})]},r.id)})}),(0,Q.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:a||o?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-3.5 w-3.5 animate-spin`}),`Waiting for authorization...`]}):(0,Q.jsx)(d,{variant:`primary`,size:`compact`,leftIcon:(0,Q.jsx)(b,{}),onClick:c,disabled:a||o,children:`Connect account`})})]})}function we({assistantId:e,providerKey:t,displayName:n,logoUrl:r}){let[i,a]=(0,X.useState)([]),[o,s]=(0,X.useState)({}),[c,l]=(0,X.useState)(!0),[u,m]=(0,X.useState)(!1),[h,g]=(0,X.useState)(``),[_,S]=(0,X.useState)(``),[C,w]=(0,X.useState)(!1),[T,E]=(0,X.useState)(null),[D,O]=(0,X.useState)(!1),[k,A]=(0,X.useState)(null),[j,M]=(0,X.useState)(null),[ee,N]=(0,X.useState)(null),[P,F]=(0,X.useState)(null),[I,L]=(0,X.useState)(null),R=(0,X.useCallback)(async t=>{try{let n=await fe(e,t);s(e=>({...e,[t]:n}))}catch(e){let t=e instanceof Error?e.message:`Failed to load connections`;y.error(t)}},[e]),H=(0,X.useCallback)(async()=>{l(!0);try{let n=await le(e,t);a(n),await Promise.all(n.map(e=>R(e.id)))}catch(e){let t=e instanceof Error?e.message:`Failed to load OAuth apps`;y.error(t)}finally{l(!1)}},[e,t,R]);(0,X.useEffect)(()=>{H()},[H]),(0,X.useEffect)(()=>{let n=!0;return ce(e,t).then(e=>{n&&E(e.oauth_callback_url)},()=>{}),()=>{n=!1}},[e,t]);let te=i.length===0||u,ne=async()=>{if(!(!h.trim()||!_.trim())){w(!0);try{let r=await ue(e,{provider_key:t,client_id:h.trim(),client_secret:_.trim()});a(e=>[...e,r]),s(e=>({...e,[r.id]:[]})),g(``),S(``),m(!1),y.success(`${n} OAuth app added.`)}catch(e){let t=e instanceof Error?e.message:`Failed to create OAuth app`;y.error(t)}finally{w(!1)}}},U=e=>{F(e)},W=async()=>{let t=P;if(F(null),t){A(t.id);try{await de(e,t.id),a(e=>e.filter(e=>e.id!==t.id)),s(e=>{let n={...e};return delete n[t.id],n}),y.success(`OAuth app deleted.`)}catch(e){let t=e instanceof Error?e.message:`Failed to delete OAuth app`;y.error(t)}finally{A(null)}}},G=async t=>{M(t.id);try{let{authUrl:n}=await me(e,t.id);window.location.href=n}catch(e){let t=e instanceof Error?e.message:`Failed to start OAuth flow`;y.error(t),M(null)}},K=(e,t)=>{L({appId:e,connection:t})},re=async()=>{let t=I;if(L(null),!t)return;let{appId:r,connection:i}=t;N(i.id);try{await pe(e,i.id),s(e=>({...e,[r]:(e[r]??[]).filter(e=>e.id!==i.id)})),y.success(`${n} account disconnected.`)}catch(e){let t=e instanceof Error?e.message:`Failed to disconnect account`;y.error(t)}finally{N(null)}};return c?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(x,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[te?(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:i.length===0?`Add your own ${n} OAuth app`:`Add another ${n} OAuth app`}),(0,Q.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-tertiary)]`,children:`Credentials are stored encrypted on the assistant and are never sent to Vellum.`})]}),T?(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Redirect URL`}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{type:`text`,value:T,readOnly:!0,fullWidth:!0}),(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{navigator.clipboard.writeText(T).then(()=>{O(!0),y.success(`Copied to clipboard!`),setTimeout(()=>O(!1),2e3)})},"aria-label":D?`Copied`:`Copy redirect URL`,iconOnly:D?(0,Q.jsx)(q,{"aria-hidden":!0}):(0,Q.jsx)(z,{"aria-hidden":!0})})]}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Add this URL to your OAuth app's redirect settings.`})]}):null,(0,Q.jsx)(v,{label:`Client ID`,type:`text`,value:h,onChange:e=>g(e.target.value),placeholder:`Enter your client ID`,fullWidth:!0}),(0,Q.jsx)(v,{label:`Client Secret`,type:`password`,value:_,onChange:e=>S(e.target.value),placeholder:`Enter your client secret`,fullWidth:!0}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[i.length>0?(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{m(!1),g(``),S(``)},disabled:C,children:`Cancel`}):null,(0,Q.jsx)(d,{type:`button`,size:`compact`,onClick:ne,disabled:C||!h.trim()||!_.trim(),leftIcon:C?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(J,{"aria-hidden":!0}),children:`Add App`})]})]})}):null,i.map(e=>{let i=o[e.id]??[],a=k===e.id,s=j===e.id;return(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,Q.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:he(e.client_id)}),(0,Q.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Added `,ge(e.created_at)]})]}),(0,Q.jsx)(d,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>U(e),disabled:a,"aria-label":`Delete OAuth app ${he(e.client_id)}`,iconOnly:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(V,{"aria-hidden":!0})})]}),i.length>0?(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:i.map(i=>{let a=ee===i.id;return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:r,size:18}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:i.account_info??`${n} Account`}),(0,Q.jsx)(d,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>K(e.id,i),disabled:a,"aria-label":`Disconnect ${i.account_info??`${n} account`}`,iconOnly:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(V,{"aria-hidden":!0})})]},i.id)})}):null,(0,Q.jsx)(d,{type:`button`,size:`compact`,onClick:()=>G(e),disabled:s,className:`w-full`,leftIcon:s?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(b,{"aria-hidden":!0}),children:s?`Waiting for authorization...`:`Connect account`})]})},e.id)}),i.length>0&&!u?(0,Q.jsx)(d,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>m(!0),className:`w-full border-dashed`,leftIcon:(0,Q.jsx)(J,{"aria-hidden":!0}),children:`Add Another App`}):null,(0,Q.jsx)(p,{open:P!==null,title:`Delete OAuth app`,message:P?`Delete OAuth app '${he(P.client_id)}'? This will disconnect all linked accounts.`:``,confirmLabel:`Delete`,destructive:!0,onConfirm:()=>{W()},onCancel:()=>F(null)}),(0,Q.jsx)(p,{open:I!==null,title:`Disconnect ${n}?`,message:I?`Disconnect ${I.connection.account_info??`${n} Account`}? You can reconnect later.`:``,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{re()},onCancel:()=>L(null)})]})}function Te({assistantId:e,providerKey:t,displayName:n,description:r,logoUrl:i,connection:a,platformGate:o,onConfigure:c}){let u=s(),m=!!a?.connected,[h,g]=(0,X.useState)(!1),[_,v]=(0,X.useState)(!1),b=F(),x=ae({path:{assistant_id:e}}),S=l({...te(),onSuccess(e,t){y.success(`${n} account disconnected.`);let r=t.path.connection_id;u.setQueryData(x,e=>e?.filter(e=>e.id!==r)),u.invalidateQueries({queryKey:x})},onError(e){let t=M(e,void 0,`Failed to disconnect ${n} account.`);y.error(t)}}),C=()=>{a?.id&&v(!0)};return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(f.Root,{children:(0,Q.jsxs)(f.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,Q.jsx)(B,{providerKey:t,displayName:n,logoUrl:i,size:32}),(0,Q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Q.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,Q.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),m&&o===`full`?(0,Q.jsx)(`div`,{className:`shrink-0`,children:(0,Q.jsx)(Ee,{displayName:n,open:h,onOpenChange:g,onEditConnections:()=>{g(!1),c()},onDisable:()=>{g(!1),C()},disablePending:S.isPending,isMobile:b})}):(0,Q.jsx)(d,{variant:`primary`,onClick:c,className:`shrink-0`,children:`Enable`})]})}),(0,Q.jsx)(p,{open:_,title:`Disconnect ${n}?`,message:`Disconnect your ${n} account? You can reconnect it later.`,confirmLabel:`Disconnect`,destructive:!0,onConfirm:()=>{v(!1),a?.id&&S.mutate({path:{assistant_id:e,connection_id:a.id}})},onCancel:()=>v(!1)})]})}function Ee({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:a,isMobile:o}){return o?(0,Q.jsxs)(h.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(h.Trigger,{asChild:!0,children:(0,Q.jsx)(d,{variant:`outlined`,rightIcon:(0,Q.jsx)(Y,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(h.Content,{children:[(0,Q.jsx)(h.Header,{children:(0,Q.jsx)(h.Title,{children:e})}),(0,Q.jsxs)(h.Body,{children:[(0,Q.jsx)(_,{icon:S,label:`Edit connections`,onSelect:r}),(0,Q.jsx)(_,{icon:a?x:ie,label:`Disable`,onSelect:()=>{a||i()}})]})]})]}):(0,Q.jsxs)(g.Root,{open:t,onOpenChange:n,children:[(0,Q.jsx)(g.Trigger,{asChild:!0,children:(0,Q.jsx)(d,{variant:`outlined`,rightIcon:(0,Q.jsx)(Y,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:`Configure`})}),(0,Q.jsxs)(g.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,Q.jsx)(d,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,Q.jsx)(S,{"aria-hidden":!0}),children:`Edit connections`}),(0,Q.jsx)(d,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:a,className:`w-full justify-start rounded-none`,leftIcon:a?(0,Q.jsx)(x,{className:`animate-spin`,"aria-hidden":!0}):(0,Q.jsx)(ie,{"aria-hidden":!0}),children:`Disable`})]})]})}var De=`vellum:integrations:bannerDismissed`,Oe=[{value:`all`,label:`All`},{value:`enabled`,label:`Enabled`},{value:`not-enabled`,label:`Not Enabled`}];function $(e,t){return e?.find(e=>e.provider===t)??null}function ke(){let[e]=o(),i=a(),s=G(),[l,u]=(0,X.useState)(null),[d,f]=(0,X.useState)(!0),[p,h]=(0,X.useState)(``),[_,b]=(0,X.useState)(`all`),[S,C]=(0,X.useState)(!1),[w,T]=(0,X.useState)(!0),[E,D]=(0,X.useState)(null);(0,X.useEffect)(()=>{T(t(De,`false`)===`true`)},[]);let O=()=>{T(!0),n(De,`true`)};(0,X.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await N();e&&t.ok&&u(t.data)}catch(e){r(e,{context:`integrations.getAssistant`})}finally{e&&f(!1)}})(),()=>{e=!1}},[]);let{data:k,isLoading:A,isError:j}=c({queryKey:[`oauth-providers`,l?.id],queryFn:()=>se(l.id),enabled:!!l}),{data:M,isLoading:ee}=c({...W({path:{assistant_id:l?.id??``}}),enabled:!!l&&s===`full`});(0,X.useEffect)(()=>{let t=e.get(`oauth_status`);if(!t)return;let n=e.get(`oauth_provider`),r=n?n.charAt(0).toUpperCase()+n.slice(1):null;if(t===`connected`)y.success(r?`${r} account connected successfully.`:`Account connected successfully.`);else if(t===`error`){let t=e.get(`oauth_code`)??`unknown`;y.error({denied:`Authorization was denied. Please try again.`,state_invalid:`Authorization state was invalid. Please try again.`,state_expired:`Authorization expired. Please try again.`,exchange_failed:`Failed to complete authorization. Please try again.`,identity_failed:`Failed to verify account identity. Please try again.`}[t]??(r?`Failed to connect ${r}.`:`Failed to connect. Please try again.`))}i(P.settings.integrations,{replace:!0})},[e,i]);let F=(0,X.useMemo)(()=>k?.filter(e=>e.supports_managed_mode)??[],[k]),L=(0,X.useMemo)(()=>{let e=p.trim().toLowerCase(),t=F.filter(t=>{if(!e)return!0;let n=(t.display_name??t.provider_key).toLowerCase(),r=(t.description??``).toLowerCase();return n.includes(e)||r.includes(e)});return _!==`all`&&(t=t.filter(e=>{let t=!!$(M,e.provider_key)?.connected;return _===`enabled`?t:!t})),[...t].sort((e,t)=>{let n=!!$(M,e.provider_key)?.connected;if(n!==!!$(M,t.provider_key)?.connected)return n?-1:1;let r=(e.display_name??e.provider_key).toLowerCase(),i=(t.display_name??t.provider_key).toLowerCase();return r.localeCompare(i)})},[F,M,p,_]),R=d||A||ee,z=Oe.find(e=>e.value===_)?.label??`All`,B=(()=>{if(p.trim())return`No integrations matched`;switch(_){case`enabled`:return`No Enabled Integrations`;case`not-enabled`:return`All Integrations Are Enabled`;default:return`No Integrations Available`}})(),V=(()=>{if(p.trim())return`No integrations matched "${p.trim()}"`;switch(_){case`enabled`:return`Connect an integration to get started.`;case`not-enabled`:return`All available integrations have been connected.`;default:return`Check your connection and try again.`}})(),H=(0,X.useMemo)(()=>E?F.find(e=>e.provider_key===E)??null:null,[F,E]);return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[!w&&(0,Q.jsxs)(m,{tone:`info`,icon:(0,Q.jsx)(I,{className:`h-3.5 w-3.5`}),onDismiss:O,children:[(0,Q.jsx)(`span`,{className:`text-body-medium-default`,children:`Tip:`}),` You can enable integrations by mentioning them in chat.`]}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(v,{type:`text`,value:p,onChange:e=>h(e.target.value),placeholder:`Search Integrations`,"aria-label":`Search integrations`,leftIcon:(0,Q.jsx)(U,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,Q.jsxs)(g.Root,{open:S,onOpenChange:C,children:[(0,Q.jsx)(g.Trigger,{asChild:!0,children:(0,Q.jsxs)(`button`,{type:`button`,"aria-haspopup":`listbox`,"aria-expanded":S,className:`flex w-36 cursor-pointer items-center justify-between gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-lighter text-[var(--content-default)] transition-colors hover:bg-[var(--ghost-hover)]`,children:[(0,Q.jsx)(`span`,{children:z}),(0,Q.jsx)(Y,{className:`h-3.5 w-3.5`})]})}),(0,Q.jsx)(g.Content,{align:`end`,sideOffset:4,className:`w-36 overflow-hidden p-0`,children:(0,Q.jsx)(`div`,{role:`listbox`,children:Oe.map(e=>{let t=e.value===_;return(0,Q.jsx)(`button`,{type:`button`,role:`option`,"aria-selected":t,onClick:()=>{b(e.value),C(!1)},className:`flex w-full cursor-pointer items-center px-3 py-1.5 text-left hover:bg-[var(--ghost-hover)] ${t?`text-body-medium-default text-[var(--content-default)]`:`text-body-medium-lighter text-[var(--content-default)]`}`,children:e.label},e.value)})})})]})]}),(0,Q.jsx)(`div`,{children:R?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(x,{className:`h-4 w-4 animate-spin`}),(0,Q.jsx)(`span`,{children:`Loading...`})]}):j?(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Failed to load integrations. Please try again.`}):l?L.length===0?(0,Q.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,Q.jsx)(U,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:B}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:V})]}):(0,Q.jsx)(`div`,{className:`space-y-2`,children:L.map(e=>(0,Q.jsx)(Te,{assistantId:l.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:$(M,e.provider_key),platformGate:s,onConfigure:()=>D(e.provider_key)},e.provider_key))}):(0,Q.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found. Hatch an assistant to connect integrations.`})}),H&&l&&(0,Q.jsx)(xe,{assistantId:l.id,providerKey:H.provider_key,displayName:H.display_name??H.provider_key,description:H.description,logoUrl:H.logo_url,platformGate:s,onClose:()=>D(null)})]})}function Ae(){return(0,Q.jsx)(`div`,{className:`space-y-6`,children:(0,Q.jsx)(X.Suspense,{children:(0,Q.jsx)(ke,{})})})}export{Ae as IntegrationsPage};
|