dexto 1.2.2 → 1.2.3
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/webui/.next/standalone/packages/webui/.next/BUILD_ID +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/build-manifest.json +2 -2
- package/dist/webui/.next/standalone/packages/webui/.next/prerender-manifest.json +3 -3
- package/dist/webui/.next/standalone/packages/webui/.next/required-server-files.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/695.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/pages/500.html +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/server-reference-manifest.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/package.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/server.js +1 -1
- package/dist/webui/package.json +1 -1
- package/package.json +3 -3
- /package/dist/webui/.next/standalone/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_buildManifest.js +0 -0
- /package/dist/webui/.next/standalone/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_ssgManifest.js +0 -0
- /package/dist/webui/.next/standalone/packages/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_buildManifest.js +0 -0
- /package/dist/webui/.next/standalone/packages/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_ssgManifest.js +0 -0
- /package/dist/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_buildManifest.js +0 -0
- /package/dist/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
U7FoI4y6AsEBJdPHl6Tx2
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
"devFiles": [],
|
|
6
6
|
"ampDevFiles": [],
|
|
7
7
|
"lowPriorityFiles": [
|
|
8
|
-
"static/
|
|
9
|
-
"static/
|
|
8
|
+
"static/U7FoI4y6AsEBJdPHl6Tx2/_buildManifest.js",
|
|
9
|
+
"static/U7FoI4y6AsEBJdPHl6Tx2/_ssgManifest.js"
|
|
10
10
|
],
|
|
11
11
|
"rootMainFiles": [
|
|
12
12
|
"static/chunks/webpack-7229fd0786f0483c.js",
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
"dynamicRoutes": {},
|
|
5
5
|
"notFoundRoutes": [],
|
|
6
6
|
"preview": {
|
|
7
|
-
"previewModeId": "
|
|
8
|
-
"previewModeSigningKey": "
|
|
9
|
-
"previewModeEncryptionKey": "
|
|
7
|
+
"previewModeId": "ead2238d0240b317c9dcd226273d11ae",
|
|
8
|
+
"previewModeSigningKey": "60920ba7f8489706c3e66060342a4b9d7b8de853bffd24d8e2c248be66d8606b",
|
|
9
|
+
"previewModeEncryptionKey": "83a88020be645e586a820557957726150a145d961cbaec83deadc3e0c425ccde"
|
|
10
10
|
}
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=695,exports.ids=[695],exports.modules={2057:(a,b,c)=>{"use strict";c.d(b,{useAnalytics:()=>f});var d=c(4039),e=c(49093);function f(){let{capture:a,enabled:b,isReady:c}=(0,e.useAnalyticsContext)(),f=(0,d.useRef)({}),g=(0,d.useCallback)(c=>{if(b)try{let b=c.sessionId;f.current[b]=(f.current[b]||0)+1;let d={...c,messageCount:f.current[b]};a("dexto_webui_message_sent",d)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),h=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_session_created",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),i=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_session_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),j=(0,d.useCallback)(c=>{if(b)try{f.current[c.sessionId]=0,a("dexto_webui_conversation_reset",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),k=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_agent_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),l=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_tool_called",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),m=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_llm_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),n=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_file_uploaded",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),o=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_image_uploaded",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),p=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_mcp_server_connected",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]);return{capture:a,enabled:b,isReady:c,trackMessageSent:g,trackSessionCreated:h,trackSessionSwitched:i,trackConversationReset:j,trackAgentSwitched:k,trackToolCalled:l,trackLLMSwitched:m,trackFileUploaded:n,trackImageUploaded:o,trackMCPServerConnected:p}}},21842:()=>{},21870:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,97452,23)),Promise.resolve().then(c.t.bind(c,41143,23)),Promise.resolve().then(c.t.bind(c,96731,23)),Promise.resolve().then(c.t.bind(c,61742,23)),Promise.resolve().then(c.t.bind(c,202,23)),Promise.resolve().then(c.t.bind(c,43598,23)),Promise.resolve().then(c.t.bind(c,30670,23)),Promise.resolve().then(c.t.bind(c,68299,23)),Promise.resolve().then(c.t.bind(c,10190,23))},23625:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>z,metadata:()=>y});var d,e=c(21824),f=c(99741),g=c.n(f),h=c(42829),i=c.n(h);c(21842);var j=c(34820),k=c(27359),l=c(85972),m=c(29021),n=c(33873),o=c(21820),p=c(55511),q=c(8086);c(79551);let{machineIdSync:r}=(0,q.createRequire)("file:///home/runner/work/dexto/dexto/packages/analytics/dist/state.js")("node-machine-id"),s=(d="telemetry",n.join((0,o.homedir)(),".dexto",d)),t=n.join(s,"state.json");async function u(){try{let a=await m.promises.readFile(t,"utf8"),b=JSON.parse(a);if(!b.distinctId)throw Error("invalid state");return{distinctId:b.distinctId,createdAt:b.createdAt||new Date().toISOString(),commandRunCounts:b.commandRunCounts??{}}}catch{await m.promises.mkdir(s,{recursive:!0});let a={distinctId:function(){try{let a=r(!0);if("string"==typeof a&&a.length>0)return`DEXTO-${a}`}catch{}let a=o.hostname()||"unknown-host",b=(0,p.createHash)("sha256").update(a).digest("hex");return b?`DEXTO-${b.slice(0,32)}`:`DEXTO-${(0,p.randomUUID)()}`}(),createdAt:new Date().toISOString(),commandRunCounts:{}};return await v(a),a}}async function v(a){await m.promises.mkdir(s,{recursive:!0}),await m.promises.writeFile(t,JSON.stringify(a,null,2),"utf8")}var w=c(74911);c(75651);let x={rE:"0.2.2"},y={title:{default:"Dexto Web UI",template:"%s \xb7 Dexto"},description:"Interactive playground for testing MCP tools and talking to AI agents",icons:{icon:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}],shortcut:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}],apple:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}]},openGraph:{title:"Dexto",description:"Interactive playground for testing MCP tools and talking to AI agents",type:"website"},twitter:{card:"summary",title:"Dexto",description:"Interactive playground for testing MCP tools and talking to AI agents"},other:{"color-scheme":"light dark"}};async function z({children:a}){let b=await (0,l.UL)(),c=b.get("theme")?.value,d=process.env.API_PORT,f=!function(){let a=process.env.DEXTO_ANALYTICS_DISABLED;return"string"==typeof a&&/^(1|true|yes)$/i.test(a)}(),h=null;if(f)try{h={distinctId:(await u()).distinctId,posthogKey:process.env.DEXTO_POSTHOG_KEY??"phc_IJHITHjBKOjDyFiVeilfdumcGniXMuLeXeiLQhYvwDW",posthogHost:process.env.DEXTO_POSTHOG_HOST??"https://app.posthog.com",appVersion:x.rE}}catch(a){console.error("Failed to load analytics state:",a),h=null}return(0,e.jsxs)("html",{lang:"en",className:c&&"dark"!==c?"":"dark",children:[(0,e.jsxs)("head",{children:[d&&(0,e.jsx)("script",{dangerouslySetInnerHTML:{__html:`window.__DEXTO_API_PORT__ = ${JSON.stringify(d)};`}}),h&&(0,e.jsx)("script",{dangerouslySetInnerHTML:{__html:`window.__DEXTO_ANALYTICS__ = ${JSON.stringify(h)};`}})]}),(0,e.jsx)("body",{className:`${g().variable} ${i().variable} antialiased bg-background text-foreground`,children:(0,e.jsx)(w.AnalyticsProvider,{children:(0,e.jsxs)(j.ChatProvider,{children:[(0,e.jsx)(k.SpeechReset,{}),(0,e.jsx)("div",{className:"flex h-screen w-screen flex-col supports-[height:100svh]:h-[100svh] supports-[height:100dvh]:h-[100dvh]",children:a})]})})})]})}},27359:(a,b,c)=>{"use strict";c.d(b,{SpeechReset:()=>d});let d=(0,c(95364).registerClientReference)(function(){throw Error("Attempted to call SpeechReset() from the server but SpeechReset is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/ui/speech-reset.tsx","SpeechReset")},33671:(a,b,c)=>{"use strict";function d(){return"http://localhost:3001"}function e(){return"ws://localhost:3001"}c.d(b,{e:()=>d,m:()=>e})},34820:(a,b,c)=>{"use strict";c.d(b,{ChatProvider:()=>e});var d=c(95364);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call ChatProvider() from the server but ChatProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/hooks/ChatContext.tsx","ChatProvider");(0,d.registerClientReference)(function(){throw Error("Attempted to call useChatContext() from the server but useChatContext is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/hooks/ChatContext.tsx","useChatContext")},49093:(a,b,c)=>{"use strict";c.d(b,{AnalyticsProvider:()=>h,useAnalyticsContext:()=>i});var d=c(35270),e=c(4039),f=c(33821);let g=(0,e.createContext)(void 0);function h({children:a}){let[b,c]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!1);return(0,d.jsx)(g.Provider,{value:{capture:(a,c)=>{if(b&&h)try{f.Ay.capture(a,{app:"dexto-webui",...c})}catch(a){console.error("Failed to capture analytics event:",a)}},enabled:b,isReady:h},children:a})}function i(){let a=(0,e.useContext)(g);if(!a)throw Error("useAnalyticsContext must be used within an AnalyticsProvider");return a}},55395:(a,b,c)=>{Promise.resolve().then(c.bind(c,34820)),Promise.resolve().then(c.bind(c,27359)),Promise.resolve().then(c.bind(c,75651)),Promise.resolve().then(c.bind(c,74911))},61622:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,28710,23)),Promise.resolve().then(c.t.bind(c,11865,23)),Promise.resolve().then(c.t.bind(c,54401,23)),Promise.resolve().then(c.t.bind(c,11096,23)),Promise.resolve().then(c.t.bind(c,55368,23)),Promise.resolve().then(c.t.bind(c,53612,23)),Promise.resolve().then(c.t.bind(c,88572,23)),Promise.resolve().then(c.t.bind(c,47629,23)),Promise.resolve().then(c.bind(c,74476))},63501:(a,b,c)=>{"use strict";function d(){return null}c.d(b,{SpeechReset:()=>d}),c(4039)},64516:(a,b,c)=>{"use strict";c.d(b,{ChatProvider:()=>l,v:()=>m});var d=c(35270),e=c(4039),f=c(76112),g=c(70702),h=c(33671),i=c(77836),j=c(73148);let k=(0,e.createContext)(void 0);function l({children:a}){let b=(0,f.useRouter)(),c=(0,j.st)(),l=(0,h.m)(),[m,n]=(0,e.useState)(null),[o,p]=(0,e.useState)(!0),[q,r]=(0,e.useState)(!0),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),{messages:w,sendMessage:x,status:y,reset:z,setMessages:A,websocket:B,activeError:C,clearError:D,processing:E,cancel:F}=(0,g.Y_)(l,()=>m),[G,H]=(0,e.useState)(null),I=(0,e.useCallback)(async a=>{try{let b=void 0!==a?a:m,c=b?`${(0,h.e)()}/api/llm/current?sessionId=${b}`:`${(0,h.e)()}/api/llm/current`,d=await fetch(c);if(d.ok){let a=await d.json(),b=a.config||a;H({provider:b.provider,model:b.model,displayName:b.displayName,router:b.router,baseURL:b.baseURL})}}catch{}},[m]),{greeting:J}=function(a){let[b,c]=(0,e.useState)(null),[d,f]=(0,e.useState)(!1),[g,i]=(0,e.useState)(null),[j,k]=(0,e.useState)(0);return(0,e.useCallback)(async b=>{f(!0),i(null);try{let d=a?`${(0,h.e)()}/api/greeting?sessionId=${encodeURIComponent(a)}`:`${(0,h.e)()}/api/greeting`,e=await fetch(d,{signal:b});if(!e.ok){let a=`Failed to fetch greeting: HTTP ${e.status} ${e.statusText}`;c(null),i(a);return}let f=await e.json();c(f.greeting??null)}catch(b){if(b?.name==="AbortError")return;let a=b instanceof Error?b.message:"Failed to fetch greeting";i(a),console.error(`Error fetching greeting: ${a}`)}finally{f(!1)}},[a]),{greeting:b,isLoading:d,error:g}}(m),K=(0,e.useCallback)(async()=>{let a,b=await fetch(`${(0,h.e)()}/api/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!b.ok)throw Error(`Failed to create session: ${b.status} ${b.statusText}`);let d=await b.text();if(!d.trim())throw Error("Empty response from session creation");try{a=JSON.parse(d)}catch(a){throw console.error("Failed to parse session creation response:",a),Error("Invalid response from session creation")}if(!a.session?.id)throw Error("Session ID not found in server response");let e=a.session.id;return c.trackSessionCreated({sessionId:e,trigger:"first_message"}),e},[c]),L=(0,e.useCallback)(async(a,d,e)=>{let f=m;if(!f&&o){if(u)return;try{v(!0),f=await K(),n(f),p(!1),b.replace(`/chat/${f}`),await I(f)}catch(a){console.error("Failed to create session:",a);return}finally{v(!1)}}if(f){x(a,d,e,f,q);let b=G?.provider||"unknown",g=G?.model||"unknown";c.trackMessageSent({sessionId:f,provider:b,model:g,hasImage:!!d,hasFile:!!e,messageLength:a.length})}else console.error("No session available for sending message")},[x,m,o,u,K,q,I,b,c,G]),M=(0,e.useCallback)(()=>{if(m){let a=w.filter(a=>a.sessionId===m).length;c.trackConversationReset({sessionId:m,messageCount:a}),z(m)}},[z,m,c,w]),N=(0,e.useCallback)(async a=>{try{let b,c=await fetch(`${(0,h.e)()}/api/sessions/${a}/history`);if(!c.ok){if(404===c.status)return void A([]);throw Error("Failed to load session history")}let d=await c.text();if(!d.trim())return void A(b=>b.some(b=>b.sessionId===a)?b:[]);try{b=JSON.parse(d)}catch(a){console.error("Failed to parse session history response:",a),A([]);return}let e=b.history||[],f=[],g=new Map;for(let b=0;b<e.length;b++){let c=e[b],d={id:`session-${a}-${b}`,role:c.role,content:c.content,createdAt:Date.now()-(e.length-b)*1e3,sessionId:a,tokenUsage:c.tokenUsage,reasoning:c.reasoning,model:c.model,router:c.router,provider:c.provider},h=a=>{let b=[];for(let c of a){if("image"===c.type&&"string"==typeof c.image&&c.image.startsWith("@blob:")){let a=c.image.substring(1);b.push({uri:a,kind:"image",mimeType:c.mimeType??"image/jpeg"})}if("file"===c.type&&"string"==typeof c.data&&c.data.startsWith("@blob:")){let a=c.data.substring(1),d=c.mimeType??"application/octet-stream",e=(0,i.h)(d);b.push({uri:a,kind:e,mimeType:d,...c.filename?{filename:c.filename}:{}})}}return b.length>0?b:void 0};if("assistant"===c.role){c.content&&f.push(d),c.toolCalls&&c.toolCalls.length>0&&c.toolCalls.forEach((c,d)=>{let h={};if(c?.function)try{h=JSON.parse(c.function.arguments||"{}")}catch(a){console.warn(`Failed to parse toolCall arguments for ${c.function?.name||"unknown"}: ${a}`),h={}}let i=c.function?.name||"unknown",j={id:`session-${a}-${b}-tool-${d}`,role:"tool",content:null,createdAt:Date.now()-(e.length-b)*1e3+d,sessionId:a,toolName:i,toolArgs:h,toolResult:void 0,toolResultMeta:void 0,toolResultSuccess:void 0};"string"==typeof c.id&&c.id.length>0&&g.set(c.id,f.length),f.push(j)});continue}if("tool"===c.role){let a="string"==typeof c.toolCallId?c.toolCallId:void 0,e="string"==typeof c.name?c.name:"unknown",i=Array.isArray(c.content)?c.content:"string"==typeof c.content?[{type:"text",text:c.content}]:[],j=h(i),k={content:i,...j?{resources:j}:{},meta:{toolName:e,toolCallId:a??`tool-${b}`,..."boolean"==typeof c.success?{success:c.success}:{}}};if(a&&g.has(a)){let b=g.get(a);f[b]={...f[b],toolResult:k,toolResultMeta:k.meta,toolResultSuccess:"boolean"==typeof c.success?c.success:void 0}}else f.push({...d,role:"tool",content:null,toolName:e,toolArgs:"object"==typeof c.args?c.args:void 0,toolResult:k,toolResultMeta:k.meta,toolResultSuccess:"boolean"==typeof c.success?c.success:void 0});continue}f.push(d)}A(b=>b.some(b=>b.sessionId===a)?b:f)}catch(a){console.error("Error loading session history:",a),A([])}},[A,I]),O=(0,e.useCallback)(async a=>{if(a!==m&&!s){t(!0);try{c.trackSessionSwitched({fromSessionId:m,toSessionId:a}),n(a),p(!1),await N(a),await I(a)}catch(a){throw console.error("Error switching session:",a),a}finally{t(!1)}}},[m,s,N,I,c]),P=(0,e.useCallback)(()=>{n(null),p(!0),A([])},[A]);return(0,d.jsx)(k.Provider,{value:{messages:w,sendMessage:L,status:y,reset:M,currentSessionId:m,switchSession:O,loadSessionHistory:N,isWelcomeState:o,returnToWelcome:P,isStreaming:q,setStreaming:r,websocket:B,currentLLM:G,refreshCurrentLLM:I,processing:E,cancel:F,activeError:C,clearError:D,greeting:J},children:a})}function m(){let a=(0,e.useContext)(k);if(!a)throw Error("useChatContext must be used within a ChatProvider");return a}},69467:(a,b,c)=>{Promise.resolve().then(c.bind(c,64516)),Promise.resolve().then(c.bind(c,63501)),Promise.resolve().then(c.bind(c,2057)),Promise.resolve().then(c.bind(c,49093))},70702:(a,b,c)=>{"use strict";c.d(b,{kz:()=>j,EQ:()=>k,j0:()=>i,PI:()=>h,P2:()=>g,KU:()=>f,Y_:()=>m});var d=c(4039),e=c(73148);function f(a){return"object"==typeof a&&null!==a&&"error"in a}function g(a){return"object"==typeof a&&null!==a&&"content"in a&&Array.isArray(a.content)}function h(a){return"object"==typeof a&&null!==a&&"type"in a&&"text"===a.type}function i(a){return"object"==typeof a&&null!==a&&"type"in a&&"image"===a.type}function j(a){return"object"==typeof a&&null!==a&&"type"in a&&"audio"===a.type}function k(a){return"object"==typeof a&&null!==a&&"type"in a&&"file"===a.type}let l=()=>`msg-${Date.now()}-${Math.random().toString(36).substring(2,9)}`;function m(a,b){let c=(0,e.st)();(0,d.useRef)(c);let f=(0,d.useRef)(null),[g,h]=(0,d.useState)([]),i=(0,d.useRef)(null),[j,k]=(0,d.useState)("connecting"),[m,n]=(0,d.useState)(!1),[o,p]=(0,d.useState)(null),q=(0,d.useRef)(!1),r=(0,d.useRef)(new Map),s=(0,d.useRef)(b);(0,d.useCallback)(a=>{if(!a)return!1;let b=s.current,c=b?b():null;return!!c&&a===c},[]);let t=(0,d.useCallback)((a,b,c,d,e=!1)=>{if(f.current?.readyState===globalThis.WebSocket.OPEN){f.current.send(JSON.stringify({type:"message",content:a,imageData:b,fileData:c,sessionId:d,stream:e})),n(!0);let g=l();i.current=g,h(e=>[...e,{id:g,role:"user",content:a,createdAt:Date.now(),sessionId:d,imageData:b,fileData:c}])}else p({id:l(),message:"Cannot send message: connection is not open",timestamp:Date.now(),context:"websocket",recoverable:!0})},[]),u=(0,d.useCallback)(a=>{f.current?.readyState===globalThis.WebSocket.OPEN&&f.current.send(JSON.stringify({type:"reset",sessionId:a})),h([]),p(null),i.current=null,r.current.clear(),n(!1)},[]),v=(0,d.useCallback)(a=>{f.current?.readyState===globalThis.WebSocket.OPEN&&f.current.send(JSON.stringify({type:"cancel",sessionId:a})),n(!1),r.current.clear(),q.current=!0},[]),w=(0,d.useCallback)(()=>{p(null)},[]);return{messages:g,status:j,sendMessage:t,reset:u,setMessages:h,websocket:f.current,processing:m,cancel:v,activeError:o,clearError:w}}},73148:(a,b,c)=>{"use strict";c.d(b,{st:()=>d.useAnalytics}),c(49093);var d=c(2057)},74911:(a,b,c)=>{"use strict";c.d(b,{AnalyticsProvider:()=>e,useAnalyticsContext:()=>f});var d=c(95364);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call AnalyticsProvider() from the server but AnalyticsProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/provider.tsx","AnalyticsProvider"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call useAnalyticsContext() from the server but useAnalyticsContext is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/provider.tsx","useAnalyticsContext")},75651:(a,b,c)=>{"use strict";c.d(b,{useAnalytics:()=>d});let d=(0,c(95364).registerClientReference)(function(){throw Error("Attempted to call useAnalytics() from the server but useAnalytics is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/hook.ts","useAnalytics")},77836:(a,b,c)=>{"use strict";function d(a){return a?.startsWith("audio/")?"audio":a?.startsWith("video/")?"video":"binary"}function e(a){return a?.startsWith("image/")?"image":a?.startsWith("audio/")?"audio":a?.startsWith("video/")?"video":"binary"}c.d(b,{h:()=>e,t:()=>d})}};
|
|
1
|
+
exports.id=695,exports.ids=[695],exports.modules={2057:(a,b,c)=>{"use strict";c.d(b,{useAnalytics:()=>f});var d=c(4039),e=c(49093);function f(){let{capture:a,enabled:b,isReady:c}=(0,e.useAnalyticsContext)(),f=(0,d.useRef)({}),g=(0,d.useCallback)(c=>{if(b)try{let b=c.sessionId;f.current[b]=(f.current[b]||0)+1;let d={...c,messageCount:f.current[b]};a("dexto_webui_message_sent",d)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),h=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_session_created",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),i=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_session_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),j=(0,d.useCallback)(c=>{if(b)try{f.current[c.sessionId]=0,a("dexto_webui_conversation_reset",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),k=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_agent_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),l=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_tool_called",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),m=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_llm_switched",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),n=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_file_uploaded",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),o=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_image_uploaded",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]),p=(0,d.useCallback)(c=>{if(b)try{a("dexto_webui_mcp_server_connected",c)}catch(a){console.warn("Analytics tracking failed:",a)}},[a,b]);return{capture:a,enabled:b,isReady:c,trackMessageSent:g,trackSessionCreated:h,trackSessionSwitched:i,trackConversationReset:j,trackAgentSwitched:k,trackToolCalled:l,trackLLMSwitched:m,trackFileUploaded:n,trackImageUploaded:o,trackMCPServerConnected:p}}},21842:()=>{},21870:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,97452,23)),Promise.resolve().then(c.t.bind(c,41143,23)),Promise.resolve().then(c.t.bind(c,96731,23)),Promise.resolve().then(c.t.bind(c,61742,23)),Promise.resolve().then(c.t.bind(c,202,23)),Promise.resolve().then(c.t.bind(c,43598,23)),Promise.resolve().then(c.t.bind(c,30670,23)),Promise.resolve().then(c.t.bind(c,68299,23)),Promise.resolve().then(c.t.bind(c,10190,23))},23625:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>z,metadata:()=>y});var d,e=c(21824),f=c(99741),g=c.n(f),h=c(42829),i=c.n(h);c(21842);var j=c(34820),k=c(27359),l=c(85972),m=c(29021),n=c(33873),o=c(21820),p=c(55511),q=c(8086);c(79551);let{machineIdSync:r}=(0,q.createRequire)("file:///home/runner/work/dexto/dexto/packages/analytics/dist/state.js")("node-machine-id"),s=(d="telemetry",n.join((0,o.homedir)(),".dexto",d)),t=n.join(s,"state.json");async function u(){try{let a=await m.promises.readFile(t,"utf8"),b=JSON.parse(a);if(!b.distinctId)throw Error("invalid state");return{distinctId:b.distinctId,createdAt:b.createdAt||new Date().toISOString(),commandRunCounts:b.commandRunCounts??{}}}catch{await m.promises.mkdir(s,{recursive:!0});let a={distinctId:function(){try{let a=r(!0);if("string"==typeof a&&a.length>0)return`DEXTO-${a}`}catch{}let a=o.hostname()||"unknown-host",b=(0,p.createHash)("sha256").update(a).digest("hex");return b?`DEXTO-${b.slice(0,32)}`:`DEXTO-${(0,p.randomUUID)()}`}(),createdAt:new Date().toISOString(),commandRunCounts:{}};return await v(a),a}}async function v(a){await m.promises.mkdir(s,{recursive:!0}),await m.promises.writeFile(t,JSON.stringify(a,null,2),"utf8")}var w=c(74911);c(75651);let x={rE:"0.2.3"},y={title:{default:"Dexto Web UI",template:"%s \xb7 Dexto"},description:"Interactive playground for testing MCP tools and talking to AI agents",icons:{icon:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}],shortcut:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}],apple:[{url:"/logos/dexto/dexto_logo_icon.svg",type:"image/svg+xml"}]},openGraph:{title:"Dexto",description:"Interactive playground for testing MCP tools and talking to AI agents",type:"website"},twitter:{card:"summary",title:"Dexto",description:"Interactive playground for testing MCP tools and talking to AI agents"},other:{"color-scheme":"light dark"}};async function z({children:a}){let b=await (0,l.UL)(),c=b.get("theme")?.value,d=process.env.API_PORT,f=!function(){let a=process.env.DEXTO_ANALYTICS_DISABLED;return"string"==typeof a&&/^(1|true|yes)$/i.test(a)}(),h=null;if(f)try{h={distinctId:(await u()).distinctId,posthogKey:process.env.DEXTO_POSTHOG_KEY??"phc_IJHITHjBKOjDyFiVeilfdumcGniXMuLeXeiLQhYvwDW",posthogHost:process.env.DEXTO_POSTHOG_HOST??"https://app.posthog.com",appVersion:x.rE}}catch(a){console.error("Failed to load analytics state:",a),h=null}return(0,e.jsxs)("html",{lang:"en",className:c&&"dark"!==c?"":"dark",children:[(0,e.jsxs)("head",{children:[d&&(0,e.jsx)("script",{dangerouslySetInnerHTML:{__html:`window.__DEXTO_API_PORT__ = ${JSON.stringify(d)};`}}),h&&(0,e.jsx)("script",{dangerouslySetInnerHTML:{__html:`window.__DEXTO_ANALYTICS__ = ${JSON.stringify(h)};`}})]}),(0,e.jsx)("body",{className:`${g().variable} ${i().variable} antialiased bg-background text-foreground`,children:(0,e.jsx)(w.AnalyticsProvider,{children:(0,e.jsxs)(j.ChatProvider,{children:[(0,e.jsx)(k.SpeechReset,{}),(0,e.jsx)("div",{className:"flex h-screen w-screen flex-col supports-[height:100svh]:h-[100svh] supports-[height:100dvh]:h-[100dvh]",children:a})]})})})]})}},27359:(a,b,c)=>{"use strict";c.d(b,{SpeechReset:()=>d});let d=(0,c(95364).registerClientReference)(function(){throw Error("Attempted to call SpeechReset() from the server but SpeechReset is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/ui/speech-reset.tsx","SpeechReset")},33671:(a,b,c)=>{"use strict";function d(){return"http://localhost:3001"}function e(){return"ws://localhost:3001"}c.d(b,{e:()=>d,m:()=>e})},34820:(a,b,c)=>{"use strict";c.d(b,{ChatProvider:()=>e});var d=c(95364);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call ChatProvider() from the server but ChatProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/hooks/ChatContext.tsx","ChatProvider");(0,d.registerClientReference)(function(){throw Error("Attempted to call useChatContext() from the server but useChatContext is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/components/hooks/ChatContext.tsx","useChatContext")},49093:(a,b,c)=>{"use strict";c.d(b,{AnalyticsProvider:()=>h,useAnalyticsContext:()=>i});var d=c(35270),e=c(4039),f=c(33821);let g=(0,e.createContext)(void 0);function h({children:a}){let[b,c]=(0,e.useState)(!1),[h,i]=(0,e.useState)(!1);return(0,d.jsx)(g.Provider,{value:{capture:(a,c)=>{if(b&&h)try{f.Ay.capture(a,{app:"dexto-webui",...c})}catch(a){console.error("Failed to capture analytics event:",a)}},enabled:b,isReady:h},children:a})}function i(){let a=(0,e.useContext)(g);if(!a)throw Error("useAnalyticsContext must be used within an AnalyticsProvider");return a}},55395:(a,b,c)=>{Promise.resolve().then(c.bind(c,34820)),Promise.resolve().then(c.bind(c,27359)),Promise.resolve().then(c.bind(c,75651)),Promise.resolve().then(c.bind(c,74911))},61622:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,28710,23)),Promise.resolve().then(c.t.bind(c,11865,23)),Promise.resolve().then(c.t.bind(c,54401,23)),Promise.resolve().then(c.t.bind(c,11096,23)),Promise.resolve().then(c.t.bind(c,55368,23)),Promise.resolve().then(c.t.bind(c,53612,23)),Promise.resolve().then(c.t.bind(c,88572,23)),Promise.resolve().then(c.t.bind(c,47629,23)),Promise.resolve().then(c.bind(c,74476))},63501:(a,b,c)=>{"use strict";function d(){return null}c.d(b,{SpeechReset:()=>d}),c(4039)},64516:(a,b,c)=>{"use strict";c.d(b,{ChatProvider:()=>l,v:()=>m});var d=c(35270),e=c(4039),f=c(76112),g=c(70702),h=c(33671),i=c(77836),j=c(73148);let k=(0,e.createContext)(void 0);function l({children:a}){let b=(0,f.useRouter)(),c=(0,j.st)(),l=(0,h.m)(),[m,n]=(0,e.useState)(null),[o,p]=(0,e.useState)(!0),[q,r]=(0,e.useState)(!0),[s,t]=(0,e.useState)(!1),[u,v]=(0,e.useState)(!1),{messages:w,sendMessage:x,status:y,reset:z,setMessages:A,websocket:B,activeError:C,clearError:D,processing:E,cancel:F}=(0,g.Y_)(l,()=>m),[G,H]=(0,e.useState)(null),I=(0,e.useCallback)(async a=>{try{let b=void 0!==a?a:m,c=b?`${(0,h.e)()}/api/llm/current?sessionId=${b}`:`${(0,h.e)()}/api/llm/current`,d=await fetch(c);if(d.ok){let a=await d.json(),b=a.config||a;H({provider:b.provider,model:b.model,displayName:b.displayName,router:b.router,baseURL:b.baseURL})}}catch{}},[m]),{greeting:J}=function(a){let[b,c]=(0,e.useState)(null),[d,f]=(0,e.useState)(!1),[g,i]=(0,e.useState)(null),[j,k]=(0,e.useState)(0);return(0,e.useCallback)(async b=>{f(!0),i(null);try{let d=a?`${(0,h.e)()}/api/greeting?sessionId=${encodeURIComponent(a)}`:`${(0,h.e)()}/api/greeting`,e=await fetch(d,{signal:b});if(!e.ok){let a=`Failed to fetch greeting: HTTP ${e.status} ${e.statusText}`;c(null),i(a);return}let f=await e.json();c(f.greeting??null)}catch(b){if(b?.name==="AbortError")return;let a=b instanceof Error?b.message:"Failed to fetch greeting";i(a),console.error(`Error fetching greeting: ${a}`)}finally{f(!1)}},[a]),{greeting:b,isLoading:d,error:g}}(m),K=(0,e.useCallback)(async()=>{let a,b=await fetch(`${(0,h.e)()}/api/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(!b.ok)throw Error(`Failed to create session: ${b.status} ${b.statusText}`);let d=await b.text();if(!d.trim())throw Error("Empty response from session creation");try{a=JSON.parse(d)}catch(a){throw console.error("Failed to parse session creation response:",a),Error("Invalid response from session creation")}if(!a.session?.id)throw Error("Session ID not found in server response");let e=a.session.id;return c.trackSessionCreated({sessionId:e,trigger:"first_message"}),e},[c]),L=(0,e.useCallback)(async(a,d,e)=>{let f=m;if(!f&&o){if(u)return;try{v(!0),f=await K(),n(f),p(!1),b.replace(`/chat/${f}`),await I(f)}catch(a){console.error("Failed to create session:",a);return}finally{v(!1)}}if(f){x(a,d,e,f,q);let b=G?.provider||"unknown",g=G?.model||"unknown";c.trackMessageSent({sessionId:f,provider:b,model:g,hasImage:!!d,hasFile:!!e,messageLength:a.length})}else console.error("No session available for sending message")},[x,m,o,u,K,q,I,b,c,G]),M=(0,e.useCallback)(()=>{if(m){let a=w.filter(a=>a.sessionId===m).length;c.trackConversationReset({sessionId:m,messageCount:a}),z(m)}},[z,m,c,w]),N=(0,e.useCallback)(async a=>{try{let b,c=await fetch(`${(0,h.e)()}/api/sessions/${a}/history`);if(!c.ok){if(404===c.status)return void A([]);throw Error("Failed to load session history")}let d=await c.text();if(!d.trim())return void A(b=>b.some(b=>b.sessionId===a)?b:[]);try{b=JSON.parse(d)}catch(a){console.error("Failed to parse session history response:",a),A([]);return}let e=b.history||[],f=[],g=new Map;for(let b=0;b<e.length;b++){let c=e[b],d={id:`session-${a}-${b}`,role:c.role,content:c.content,createdAt:Date.now()-(e.length-b)*1e3,sessionId:a,tokenUsage:c.tokenUsage,reasoning:c.reasoning,model:c.model,router:c.router,provider:c.provider},h=a=>{let b=[];for(let c of a){if("image"===c.type&&"string"==typeof c.image&&c.image.startsWith("@blob:")){let a=c.image.substring(1);b.push({uri:a,kind:"image",mimeType:c.mimeType??"image/jpeg"})}if("file"===c.type&&"string"==typeof c.data&&c.data.startsWith("@blob:")){let a=c.data.substring(1),d=c.mimeType??"application/octet-stream",e=(0,i.h)(d);b.push({uri:a,kind:e,mimeType:d,...c.filename?{filename:c.filename}:{}})}}return b.length>0?b:void 0};if("assistant"===c.role){c.content&&f.push(d),c.toolCalls&&c.toolCalls.length>0&&c.toolCalls.forEach((c,d)=>{let h={};if(c?.function)try{h=JSON.parse(c.function.arguments||"{}")}catch(a){console.warn(`Failed to parse toolCall arguments for ${c.function?.name||"unknown"}: ${a}`),h={}}let i=c.function?.name||"unknown",j={id:`session-${a}-${b}-tool-${d}`,role:"tool",content:null,createdAt:Date.now()-(e.length-b)*1e3+d,sessionId:a,toolName:i,toolArgs:h,toolResult:void 0,toolResultMeta:void 0,toolResultSuccess:void 0};"string"==typeof c.id&&c.id.length>0&&g.set(c.id,f.length),f.push(j)});continue}if("tool"===c.role){let a="string"==typeof c.toolCallId?c.toolCallId:void 0,e="string"==typeof c.name?c.name:"unknown",i=Array.isArray(c.content)?c.content:"string"==typeof c.content?[{type:"text",text:c.content}]:[],j=h(i),k={content:i,...j?{resources:j}:{},meta:{toolName:e,toolCallId:a??`tool-${b}`,..."boolean"==typeof c.success?{success:c.success}:{}}};if(a&&g.has(a)){let b=g.get(a);f[b]={...f[b],toolResult:k,toolResultMeta:k.meta,toolResultSuccess:"boolean"==typeof c.success?c.success:void 0}}else f.push({...d,role:"tool",content:null,toolName:e,toolArgs:"object"==typeof c.args?c.args:void 0,toolResult:k,toolResultMeta:k.meta,toolResultSuccess:"boolean"==typeof c.success?c.success:void 0});continue}f.push(d)}A(b=>b.some(b=>b.sessionId===a)?b:f)}catch(a){console.error("Error loading session history:",a),A([])}},[A,I]),O=(0,e.useCallback)(async a=>{if(a!==m&&!s){t(!0);try{c.trackSessionSwitched({fromSessionId:m,toSessionId:a}),n(a),p(!1),await N(a),await I(a)}catch(a){throw console.error("Error switching session:",a),a}finally{t(!1)}}},[m,s,N,I,c]),P=(0,e.useCallback)(()=>{n(null),p(!0),A([])},[A]);return(0,d.jsx)(k.Provider,{value:{messages:w,sendMessage:L,status:y,reset:M,currentSessionId:m,switchSession:O,loadSessionHistory:N,isWelcomeState:o,returnToWelcome:P,isStreaming:q,setStreaming:r,websocket:B,currentLLM:G,refreshCurrentLLM:I,processing:E,cancel:F,activeError:C,clearError:D,greeting:J},children:a})}function m(){let a=(0,e.useContext)(k);if(!a)throw Error("useChatContext must be used within a ChatProvider");return a}},69467:(a,b,c)=>{Promise.resolve().then(c.bind(c,64516)),Promise.resolve().then(c.bind(c,63501)),Promise.resolve().then(c.bind(c,2057)),Promise.resolve().then(c.bind(c,49093))},70702:(a,b,c)=>{"use strict";c.d(b,{kz:()=>j,EQ:()=>k,j0:()=>i,PI:()=>h,P2:()=>g,KU:()=>f,Y_:()=>m});var d=c(4039),e=c(73148);function f(a){return"object"==typeof a&&null!==a&&"error"in a}function g(a){return"object"==typeof a&&null!==a&&"content"in a&&Array.isArray(a.content)}function h(a){return"object"==typeof a&&null!==a&&"type"in a&&"text"===a.type}function i(a){return"object"==typeof a&&null!==a&&"type"in a&&"image"===a.type}function j(a){return"object"==typeof a&&null!==a&&"type"in a&&"audio"===a.type}function k(a){return"object"==typeof a&&null!==a&&"type"in a&&"file"===a.type}let l=()=>`msg-${Date.now()}-${Math.random().toString(36).substring(2,9)}`;function m(a,b){let c=(0,e.st)();(0,d.useRef)(c);let f=(0,d.useRef)(null),[g,h]=(0,d.useState)([]),i=(0,d.useRef)(null),[j,k]=(0,d.useState)("connecting"),[m,n]=(0,d.useState)(!1),[o,p]=(0,d.useState)(null),q=(0,d.useRef)(!1),r=(0,d.useRef)(new Map),s=(0,d.useRef)(b);(0,d.useCallback)(a=>{if(!a)return!1;let b=s.current,c=b?b():null;return!!c&&a===c},[]);let t=(0,d.useCallback)((a,b,c,d,e=!1)=>{if(f.current?.readyState===globalThis.WebSocket.OPEN){f.current.send(JSON.stringify({type:"message",content:a,imageData:b,fileData:c,sessionId:d,stream:e})),n(!0);let g=l();i.current=g,h(e=>[...e,{id:g,role:"user",content:a,createdAt:Date.now(),sessionId:d,imageData:b,fileData:c}])}else p({id:l(),message:"Cannot send message: connection is not open",timestamp:Date.now(),context:"websocket",recoverable:!0})},[]),u=(0,d.useCallback)(a=>{f.current?.readyState===globalThis.WebSocket.OPEN&&f.current.send(JSON.stringify({type:"reset",sessionId:a})),h([]),p(null),i.current=null,r.current.clear(),n(!1)},[]),v=(0,d.useCallback)(a=>{f.current?.readyState===globalThis.WebSocket.OPEN&&f.current.send(JSON.stringify({type:"cancel",sessionId:a})),n(!1),r.current.clear(),q.current=!0},[]),w=(0,d.useCallback)(()=>{p(null)},[]);return{messages:g,status:j,sendMessage:t,reset:u,setMessages:h,websocket:f.current,processing:m,cancel:v,activeError:o,clearError:w}}},73148:(a,b,c)=>{"use strict";c.d(b,{st:()=>d.useAnalytics}),c(49093);var d=c(2057)},74911:(a,b,c)=>{"use strict";c.d(b,{AnalyticsProvider:()=>e,useAnalyticsContext:()=>f});var d=c(95364);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call AnalyticsProvider() from the server but AnalyticsProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/provider.tsx","AnalyticsProvider"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call useAnalyticsContext() from the server but useAnalyticsContext is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/provider.tsx","useAnalyticsContext")},75651:(a,b,c)=>{"use strict";c.d(b,{useAnalytics:()=>d});let d=(0,c(95364).registerClientReference)(function(){throw Error("Attempted to call useAnalytics() from the server but useAnalytics is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/dexto/dexto/packages/webui/lib/analytics/hook.ts","useAnalytics")},77836:(a,b,c)=>{"use strict";function d(a){return a?.startsWith("audio/")?"audio":a?.startsWith("video/")?"video":"binary"}function e(a){return a?.startsWith("image/")?"image":a?.startsWith("audio/")?"audio":a?.startsWith("video/")?"video":"binary"}c.d(b,{h:()=>e,t:()=>d})}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-7229fd0786f0483c.js" defer=""></script><script src="/_next/static/chunks/framework-6873d9e7016e0d56.js" defer=""></script><script src="/_next/static/chunks/main-7decd42f62688419.js" defer=""></script><script src="/_next/static/chunks/pages/_app-46db88469de84370.js" defer=""></script><script src="/_next/static/chunks/pages/_error-162d61367b59fad2.js" defer=""></script><script src="/_next/static/
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-7229fd0786f0483c.js" defer=""></script><script src="/_next/static/chunks/framework-6873d9e7016e0d56.js" defer=""></script><script src="/_next/static/chunks/main-7decd42f62688419.js" defer=""></script><script src="/_next/static/chunks/pages/_app-46db88469de84370.js" defer=""></script><script src="/_next/static/chunks/pages/_error-162d61367b59fad2.js" defer=""></script><script src="/_next/static/U7FoI4y6AsEBJdPHl6Tx2/_buildManifest.js" defer=""></script><script src="/_next/static/U7FoI4y6AsEBJdPHl6Tx2/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"U7FoI4y6AsEBJdPHl6Tx2","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
|
package/dist/webui/.next/standalone/packages/webui/.next/server/server-reference-manifest.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"node":{},"edge":{},"encryptionKey":"
|
|
1
|
+
{"node":{},"edge":{},"encryptionKey":"fGESyn4cRRKw0qir3yhkuL9Yjf3/6QV3Hm0pzZBwAFs="}
|
|
@@ -9,7 +9,7 @@ const currentPort = parseInt(process.env.PORT, 10) || 3000
|
|
|
9
9
|
const hostname = process.env.HOSTNAME || '0.0.0.0'
|
|
10
10
|
|
|
11
11
|
let keepAliveTimeout = parseInt(process.env.KEEP_ALIVE_TIMEOUT, 10)
|
|
12
|
-
const nextConfig = {"env":{},"eslint":{"ignoreDuringBuilds":true},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"typedRoutes":false,"distDir":"./.next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.ts","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","remotePatterns":[],"unoptimized":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":true,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/runner/work/dexto/dexto","allowedDevOrigins":["http://localhost:3000","http://10.1.0.
|
|
12
|
+
const nextConfig = {"env":{},"eslint":{"ignoreDuringBuilds":true},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"typedRoutes":false,"distDir":"./.next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.ts","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","remotePatterns":[],"unoptimized":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":true,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/runner/work/dexto/dexto","allowedDevOrigins":["http://localhost:3000","http://10.1.0.5:3000"],"experimental":{"useSkewCookie":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":4294967294}},"cacheHandlers":{},"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"serverSourceMaps":false,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"clientSegmentCache":false,"clientParamParsing":false,"dynamicOnHover":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":3,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"viewTransition":false,"routerBFCache":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"cacheComponents":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"devtoolSegmentExplorer":true,"browserDebugInfoInTerminal":false,"optimizeRouterScrolling":false,"optimizePackageImports":["lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.ts","turbopack":{"root":"/home/runner/work/dexto/dexto"}}
|
|
13
13
|
|
|
14
14
|
process.env.__NEXT_PRIVATE_STANDALONE_CONFIG = JSON.stringify(nextConfig)
|
|
15
15
|
|
package/dist/webui/package.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dexto",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"dexto": "./dist/index.js"
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"ws": "^8.18.1",
|
|
25
25
|
"yaml": "^2.7.1",
|
|
26
26
|
"zod": "^3.25.0",
|
|
27
|
-
"@dexto/analytics": "1.2.
|
|
28
|
-
"@dexto/core": "1.2.
|
|
27
|
+
"@dexto/analytics": "1.2.3",
|
|
28
|
+
"@dexto/core": "1.2.3"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/ws": "^8.5.11",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_buildManifest.js
RENAMED
|
File without changes
|
/package/dist/webui/.next/static/{IXh4cVyOAx6rg0D8ivJp6 → U7FoI4y6AsEBJdPHl6Tx2}/_ssgManifest.js
RENAMED
|
File without changes
|