@next-bricks/ai-portal 0.55.0 → 0.56.0
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/bricks.json +36 -28
- package/dist/chunks/1510.d022a470.js +2 -0
- package/dist/chunks/1510.d022a470.js.map +1 -0
- package/dist/chunks/{2084.0e9751e7.js → 2084.778e8126.js} +3 -3
- package/dist/chunks/2084.778e8126.js.map +1 -0
- package/dist/chunks/6995.cb0a8137.js +2 -0
- package/dist/chunks/6995.cb0a8137.js.map +1 -0
- package/dist/chunks/7517.b5ed4e8e.js +2 -0
- package/dist/chunks/7517.b5ed4e8e.js.map +1 -0
- package/dist/chunks/9324.e514b672.js +2 -0
- package/dist/chunks/9324.e514b672.js.map +1 -0
- package/dist/chunks/{chat-stream.11c6ade7.js → chat-stream.24066a8e.js} +2 -2
- package/dist/chunks/{chat-stream.11c6ade7.js.map → chat-stream.24066a8e.js.map} +1 -1
- package/dist/chunks/{cruise-canvas.c494563b.js → cruise-canvas.eca7469a.js} +2 -2
- package/dist/chunks/{cruise-canvas.c494563b.js.map → cruise-canvas.eca7469a.js.map} +1 -1
- package/dist/chunks/{elevo-sidebar.bfad7500.js → elevo-sidebar.08aad53b.js} +3 -3
- package/dist/chunks/{elevo-sidebar.bfad7500.js.map → elevo-sidebar.08aad53b.js.map} +1 -1
- package/dist/chunks/{main.6b7402db.js → main.0653045c.js} +2 -2
- package/dist/chunks/{main.6b7402db.js.map → main.0653045c.js.map} +1 -1
- package/dist/chunks/running-flow.4b117f11.js +3 -0
- package/dist/chunks/running-flow.4b117f11.js.LICENSE.txt +5 -0
- package/dist/chunks/running-flow.4b117f11.js.map +1 -0
- package/dist/examples.json +20 -17
- package/dist/index.e11d54e9.js +2 -0
- package/dist/index.e11d54e9.js.map +1 -0
- package/dist/manifest.json +242 -216
- package/dist/types.json +1106 -824
- package/dist-types/bootstrap.d.ts +1 -0
- package/dist-types/chat-stream/Aside/Aside.d.ts +3 -3
- package/dist-types/chat-stream/Aside/FlowApp/FlowApp.d.ts +7 -0
- package/dist-types/chat-stream/Aside/FlowApp/i18n.d.ts +20 -0
- package/dist-types/chat-stream/AssistantMessage/AssistantMessage.d.ts +3 -5
- package/dist-types/chat-stream/NodeChunk/NodeChunk.d.ts +6 -0
- package/dist-types/chat-stream/NodeChunk/NodeJob.d.ts +6 -0
- package/dist-types/chat-stream/NodeChunk/getStateDisplay.d.ts +6 -0
- package/dist-types/chat-stream/StreamContext.d.ts +2 -1
- package/dist-types/chat-stream/UserMessage/UserMessage.d.ts +3 -1
- package/dist-types/chat-stream/i18n.d.ts +5 -1
- package/dist-types/chat-stream/interfaces.d.ts +26 -3
- package/dist-types/chat-stream/useConversationStream.d.ts +5 -5
- package/dist-types/cruise-canvas/NodeChunk/NodeChunk.d.ts +9 -0
- package/dist-types/cruise-canvas/NodeRequirement/NodeRequirement.d.ts +3 -1
- package/dist-types/cruise-canvas/i18n.d.ts +3 -1
- package/dist-types/cruise-canvas/interfaces.d.ts +14 -2
- package/dist-types/cruise-canvas/reducers/interfaces.d.ts +2 -1
- package/dist-types/cruise-canvas/reducers/serviceFlows.d.ts +4 -0
- package/dist-types/cruise-canvas/useConversationDetail.d.ts +1 -0
- package/dist-types/cruise-canvas/useConversationGraph.d.ts +3 -3
- package/dist-types/running-flow/formatDuration.d.ts +6 -0
- package/dist-types/running-flow/index.d.ts +34 -0
- package/dist-types/running-flow/index.spec.d.ts +1 -0
- package/dist-types/shared/ReadableCommand/ReadableCommand.d.ts +7 -0
- package/dist-types/shared/RequestHumanAction/RequestHumanAction.d.ts +2 -1
- package/dist-types/shared/TaskContext.d.ts +6 -3
- package/dist-types/shared/bricks.d.ts +4 -0
- package/dist-types/shared/constants.d.ts +1 -0
- package/dist-types/shared/getFlatChunks.d.ts +3 -0
- package/dist-types/shared/getFlowOrActivityIcon.d.ts +3 -0
- package/dist-types/{cruise-canvas → shared}/getOrderedNodes.d.ts +2 -6
- package/dist-types/shared/getTaskTree.d.ts +10 -0
- package/dist-types/shared/interfaces.d.ts +64 -3
- package/dist-types/shared/useFlowAndActivityMap.d.ts +5 -0
- package/dist-types/shared/useFulfilledActiveDetail.d.ts +2 -0
- package/docs/running-flow.md +22 -0
- package/package.json +2 -2
- package/dist/chunks/2084.0e9751e7.js.map +0 -1
- package/dist/chunks/2761.561a580a.js +0 -2
- package/dist/chunks/2761.561a580a.js.map +0 -1
- package/dist/chunks/3227.689d8678.js +0 -2
- package/dist/chunks/3227.689d8678.js.map +0 -1
- package/dist/chunks/6201.fa3b6e24.js +0 -2
- package/dist/chunks/6201.fa3b6e24.js.map +0 -1
- package/dist/chunks/8717.1e5ad2b1.js +0 -2
- package/dist/chunks/8717.1e5ad2b1.js.map +0 -1
- package/dist/index.14c08956.js +0 -2
- package/dist/index.14c08956.js.map +0 -1
- package/dist-types/chat-stream/NodeJob/NodeJob.d.ts +0 -7
- package/dist-types/cruise-canvas/getFlatOrderedJobs.d.ts +0 -11
- package/dist-types/cruise-canvas/getFlatOrderedJobs.spec.d.ts +0 -1
- /package/dist/chunks/{2084.0e9751e7.js.LICENSE.txt → 2084.778e8126.js.LICENSE.txt} +0 -0
- /package/dist/chunks/{elevo-sidebar.bfad7500.js.LICENSE.txt → elevo-sidebar.08aad53b.js.LICENSE.txt} +0 -0
- /package/dist-types/{cruise-canvas → shared}/getOrderedNodes.spec.d.ts +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
/*! For license information please see 2084.
|
|
2
|
-
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2084],{5813:(e,t,i)=>{i.d(t,{I:()=>s,K:()=>o,NS:()=>l,t:()=>c});var n=i(52616);let o=function(e){return e.NEW_CHAT="NEW_CHAT",e.LOGOUT="LOGOUT",e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.PREVIOUS_7_DAYS="PREVIOUS_7_DAYS",e.PREVIOUS_30_DAYS="PREVIOUS_30_DAYS",e.SWITCH_LANGUAGE="SWITCH_LANGUAGE",e.MY="MY",e.PROJECTS="PROJECTS",e.HISTORY="HISTORY",e.CREATE_PROJECT="CREATE_PROJECT",e.MOVE_TO_PROJECT="MOVE_TO_PROJECT",e.UNTITLED="UNTITLED",e.UNNAMED="UNNAMED",e}({});const r={[o.NEW_CHAT]:"New chat",[o.LOGOUT]:"Logout",[o.TODAY]:"Today",[o.YESTERDAY]:"Yesterday",[o.PREVIOUS_7_DAYS]:"Previous 7 days",[o.PREVIOUS_30_DAYS]:"Previous 30 days",[o.SWITCH_LANGUAGE]:"中文",[o.MY]:"My",[o.PROJECTS]:"Projects",[o.HISTORY]:"Chats",[o.CREATE_PROJECT]:"Create project",[o.MOVE_TO_PROJECT]:"Move to project",[o.UNTITLED]:"Untitled",[o.UNNAMED]:"Unnamed"},a={[o.NEW_CHAT]:"新对话",[o.LOGOUT]:"登出",[o.TODAY]:"今天",[o.YESTERDAY]:"昨天",[o.PREVIOUS_7_DAYS]:"过去7天",[o.PREVIOUS_30_DAYS]:"过去30天",[o.SWITCH_LANGUAGE]:"English",[o.MY]:"我的",[o.PROJECTS]:"项目",[o.HISTORY]:"对话",[o.CREATE_PROJECT]:"创建项目",[o.MOVE_TO_PROJECT]:"移动到项目",[o.UNTITLED]:"无标题",[o.UNNAMED]:"未命名"},l="bricks/ai-portal/elevo-sidebar",s={en:r,zh:a},c=n.i18n.getFixedT(null,l)},61408:(e,t,i)=>{i.d(t,{A:()=>l});var n=i(36758),o=i.n(n),r=i(40935),a=i.n(r)()(o());a.push([e.id,':host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.sidebar{position:relative;z-index:2;width:260px;height:100%;background:rgba(246,247,249,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:23px 11px 0;display:flex;flex-direction:column;transition:transform 0.3s ease-in-out}.logo-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;margin-left:4px}.logo-link::part(link){display:block}.logo{vertical-align:middle}.new-chat::part(link){display:flex;gap:0;align-items:center;color:var(--elevo-color-brand);font-size:14px;text-align:left;cursor:pointer}.sidebar .new-chat::part(link){background:#f0f4ff;border-radius:8px;border:1px solid #c9d7ff;padding:9px 13px;font-weight:500;margin-bottom:16px}.sidebar .new-chat::part(link):hover{background:rgba(201,215,255,0.5)}.new-chat-icon{font-size:16px;margin-right:5px}.footer{border-top:1px solid rgba(0,0,0,0.04);padding:9px 12px;margin:0 -12px}.dropdown{display:block}.account{background:none;border:none;border-radius:8px;padding:6px 10px;display:block;width:100%;text-align:left;cursor:pointer}.account:hover{background:rgba(0,0,0,0.04)}.alternative{position:fixed;top:12px;left:8px;padding:6px 10px 6px 8px;display:flex;align-items:center;opacity:0;z-index:2;transition:opacity 0.2s ease-in-out;background:rgba(255,255,255,0);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.alternative .new-chat::part(link){padding:4px;margin-left:16px;font-size:12px}.alternative .new-chat::part(link):hover{color:#7891ff}.alternative .new-chat::part(link):active{color:#0911b3}.container{width:270px;padding:10px 0 10px 10px;height:100%;transition:width 0.3s ease-in-out,padding 0.3s ease-in-out}.container.collapsed{width:0;padding:10px 0;overflow:visible}.container.collapsed .sidebar{transform:translateX(-100%)}.container.collapsed .alternative{opacity:1}:host([behavior="drawer"]){z-index:2;width:0}:host(:not([behavior="drawer"])) .alternative .new-chat{display:none}.mask{position:fixed;top:0;right:0;bottom:0;left:0}.links{border-bottom:1px solid rgba(0,0,0,0.06);padding-bottom:16px;margin-bottom:16px}.link{display:block}.link + .link{margin-top:4px}.link::part(link){display:flex;gap:0;align-items:center;padding:7px 10px;border-radius:8px;color:#000}.link.active::part(link),.link::part(link):hover{background:rgba(0,0,0,0.04)}.link .icon{font-size:16px;margin-right:10px}.link .title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history{flex:1;min-height:0;overflow-y:auto;margin:0 -12px;padding:0 12px}.history ul{list-style:none;margin:0;padding:0}.history .section + .section{margin-top:14px}.history .section-title{display:flex;align-items:center;justify-content:space-between;height:30px;margin-bottom:6px;padding:0 8px;position:sticky;top:0}.history .section-title.sticky::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgb(229,228,234);border-radius:8px;z-index:-1}.history .section-label{display:flex;align-items:center;height:24px;padding:0 8px;margin-left:-8px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:12px;color:#8c8c8c;border-radius:8px}.history .section-label eo-icon{vertical-align:middle;margin-left:6px;transition:transform 0.2s ease-in-out}.history .section-label:hover{background:rgba(0,0,0,0.04)}.history .collapsed > ul{display:none}.history .collapsed .section-label eo-icon{transform:rotate(-90deg)}.history .error,.history .loading{display:flex;align-items:center;height:36px;padding:0 8px}.history .loading{justify-content:center}.history .error{color:var(--color-error)}.history .group + .group{margin-top:15px}.history .group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.history .item{display:block}.history .item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.history .item.active::part(link){background:rgba(0,0,0,0.06)}.history .item.actions-active::part(link),.history .item::part(link):hover{background:rgba(0,0,0,0.04)}.history .item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history .actions{cursor:auto}.history .item:not(:hover):not(.actions-active) .actions{display:none}.history .working{width:8px;height:8px;border-radius:8px;background:var(--elevo-color-brand);margin:0 7px}.history .item.actions-active .working,.history .item:hover .working,.history .item.active .working{display:none}.history .load-more{display:flex;justify-content:center;align-items:center;height:36px}.button{display:flex}',""]);const l=a.toString()},70579:(e,t,i)=>{i.d(t,{Bj:()=>o,EM:()=>r,JQ:()=>l,Py:()=>c,qb:()=>a,qu:()=>s});var n=i(30981);const o=(0,n.wrapBrick)("eo-icon"),r=(0,n.wrapBrick)("eo-link"),a=(0,n.wrapBrick)("eo-dropdown-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),l=(0,n.wrapBrick)("eo-easyops-avatar"),s=(0,n.wrapBrick)("eo-mini-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),c=(0,n.wrapBrick)("ai-portal.icon-button")},75197:(e,t,i)=>{i.d(t,{D:()=>b});var n=i(89575),o=i(18769),r=i.n(o),a=i(53373),l=i.n(a),s=i(22919);const c=async(e,t)=>(await s.http.get("api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations",{...t,params:e})).data;var d=i(41030),p=i(5813),u=i(70579),m=i(40177),g=i(65549),h=i(94504);const E={lib:"fa",icon:"plus"},b=(0,o.forwardRef)(x);function x(e,t){let{historyActions:i,historyUrlTemplate:a,projectUrlTemplate:b,projectActions:x,canAddProject:v,myLinks:k,onActionClick:y,onHistoryClick:T,onProjectActionClick:w,onAddProject:O}=e;const A=(0,o.useRef)(null),[C,S]=(0,o.useState)(!1),[_,N]=(0,o.useState)(null),[R,I]=(0,o.useState)(!1),[P,U]=(0,o.useState)(!1),[Y,D]=(0,o.useState)(null),[j,M]=(0,o.useState)(!1),[L,V]=(0,o.useState)(),[H,B]=(0,o.useState)(),[J,z]=(0,o.useState)(!1),G=(0,o.useRef)(!0),[q,K]=(0,o.useState)([]),W=(0,o.useMemo)((()=>[...null!=i?i:[],{isDropdown:!0,text:(0,p.t)(p.K.MOVE_TO_PROJECT),disabled:!(null!=_&&_.length),items:null==_?void 0:_.map((e=>({event:"move",key:e.instanceId,text:e.name,project:e})))}]),[i,_]);(0,o.useEffect)((()=>{(async()=>{try{const e=await(async()=>(await s.http.get("api/gateway/logic.llm.aiops_service/api/v1/elevo/projects",{params:{page:1,page_size:3e3}})).data)();N(e.list)}catch(e){console.error("Error loading projects:",e),U(!0),N([])}})()}),[]),(0,o.useEffect)((()=>{Promise.all([c({token:H,limit:30,onlyOwner:!0,onlyUnrelatedProject:!0},{interceptorParams:{ignoreLoadingBar:!0}}),...G.current?[]:[new Promise((e=>setTimeout(e,500)))]]).then((e=>{let[t]=e;G.current=!1,D((e=>[...null!=e?e:[],...t.conversations])),V(t.nextToken)})).catch((e=>{console.error("Error loading chat history:",e),D([]),z(!0)}))}),[H]);const[Q,F]=(0,o.useState)(null),X=(0,o.useRef)(null);(0,o.useEffect)((()=>{const e=X.current,t=A.current;if(!e||!L||!t||j)return;const i=new IntersectionObserver((e=>{for(const t of e)t.isIntersecting&&B(L)}),{root:t});return i.observe(e),()=>{i.disconnect()}}),[L,j]);const Z=(0,o.useRef)(0),$=(0,o.useCallback)((async()=>{try{const e=++Z.current,t=await c({limit:30,onlyOwner:!0,onlyUnrelatedProject:!0},{interceptorParams:{ignoreLoadingBar:!0}});if(e!==Z.current)return;D((e=>{const i=null!=e?e:[],n=t.conversations,o=new Set(n.map((e=>e.conversationId))),r=new Map(n.map((e=>[e.conversationId,e])));let a=!1,l=!1,s=!0;for(const e of i){const t=r.get(e.conversationId);if(!t)break;if(a=!0,l=s&&t!==n[0]||!(0,d.isEqual)(t,e),l)break;s=!1}return a?l?[...n,...i.filter((e=>!o.has(e.conversationId)))]:e:(V(t.nextToken),n)}))}catch(e){console.error("Error pulling chat history:",e)}}),[]);(0,o.useImperativeHandle)(t,(()=>({pull:$,removeProject:e=>{N((t=>t?t.filter((t=>t.instanceId!==e)):t))},addProject:e=>{N((t=>t?[...t,e]:[e]))},moveConversation:e=>{K((t=>[...t,e]))}})),[$]);const ee=(0,o.useMemo)((()=>Y&&Y.length?Y.filter((e=>!q.includes(e.conversationId))):Y),[Y,q]);return r().createElement("div",{className:"history",ref:A},null!=k&&k.length?r().createElement("div",{className:l()("section",{collapsed:C})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.MY),onToggle:()=>S((e=>!e))}),r().createElement("ul",{className:"items"},k.map(((e,t)=>r().createElement("li",{key:t},r().createElement(h.k,{url:e.url,activeIncludes:e.activeIncludes,render:t=>{let{active:i}=t;return r().createElement(u.EM,{className:l()("item",{active:i}),url:e.url},r().createElement("div",{className:"item-title"},e.title))}})))))):null,r().createElement("div",{className:l()("section",{collapsed:R})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.PROJECTS),onToggle:()=>I((e=>!e))},v&&r().createElement(u.Py,{icon:E,variant:"mini-light",tooltip:(0,p.t)(p.K.CREATE_PROJECT),tooltipHoist:!0,className:"button",onClick:O})),r().createElement("ul",{className:"items"},P?r().createElement("li",{className:"error"},"Failed to load project"):_?_.map((e=>{const t=b?(0,g.Q)(b,e):void 0;return r().createElement("li",{key:e.instanceId},r().createElement(h.k,{url:t,render:i=>{let{active:o}=i;return r().createElement(u.EM,(0,n.A)({className:l()("item",{"actions-active":e.instanceId===Q,active:o}),onClick:T},t?{url:t}:null),r().createElement("div",{className:"item-title",title:e.name},e.name||(0,p.t)(p.K.UNNAMED)),r().createElement(u.qu,{className:"actions",actions:x,themeVariant:"elevo",onActionClick:t=>{w({action:t.detail,project:e})},onVisibleChange:t=>{F(t.detail?e.instanceId:null)}}))}}))})):r().createElement("li",{className:"loading"},r().createElement(u.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})))),r().createElement("div",{className:l()("section",{collapsed:j})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.HISTORY),onToggle:()=>M((e=>!e))}),r().createElement("ul",{className:"items"},ee?ee.map((e=>{const t=a?(0,g.Q)(a,e):void 0;return r().createElement("li",{key:e.conversationId},r().createElement(h.k,{url:t,render:t=>{let{active:i}=t;return r().createElement(u.EM,(0,n.A)({className:l()("item",{"actions-active":e.conversationId===Q,active:i}),onClick:T},a?{url:(0,g.Q)(a,e)}:null),r().createElement("div",{className:"item-title",title:e.title},e.title||(0,p.t)(p.K.UNTITLED)),r().createElement(u.qu,{className:"actions",actions:W,onActionClick:t=>{y({action:t.detail,item:e})},onVisibleChange:t=>{F(t.detail?e.conversationId:null)}}),!m.QB.includes(e.state)&&r().createElement("div",{className:"working"}))}}))})):r().createElement("li",{className:"loading"},r().createElement(u.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})),J?r().createElement("li",{className:"error"},"Failed to load chat history"):null),!j&&L&&r().createElement("div",{className:"load-more",ref:X},r().createElement(u.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))))}function f(e){let{rootRef:t,title:i,children:n,onToggle:a}=e;const s=(0,o.useRef)(null),[c,p]=(0,o.useState)(!1);return(0,o.useEffect)((()=>{const e=t.current,i=s.current,n=null==i?void 0:i.nextElementSibling;if(!e||!i||!n)return;const o=(0,d.throttle)((()=>{const e=i.getBoundingClientRect(),t=n.getBoundingClientRect().top-e.top-e.height;p(t<1)}),100);return e.addEventListener("scroll",o),()=>{e.removeEventListener("scroll",o)}}),[t]),r().createElement("div",{className:l()("section-title",{sticky:c}),ref:s},r().createElement("div",{className:"section-label",onClick:a},i,r().createElement(u.Bj,{lib:"fa",icon:"angle-down"})),n)}},94504:(e,t,i)=>{i.d(t,{k:()=>r});var n=i(18769),o=i(30348);function r(e){let{url:t,activeIncludes:i,render:r}=e;const[a,l]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{function e(e){if(t){for(const n of[t,...null!=i?i:[]])if((0,o.matchPath)(e.pathname,{path:n,exact:!1}))return void l(!0);l(!1)}else l(!1)}const n=(0,o.getHistory)();return e(n.location),n.listen(e)}),[t,i]),r({active:a})}}}]);
|
|
3
|
-
//# sourceMappingURL=2084.
|
|
1
|
+
/*! For license information please see 2084.778e8126.js.LICENSE.txt */
|
|
2
|
+
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[2084],{5813:(e,t,i)=>{i.d(t,{I:()=>s,K:()=>o,NS:()=>l,t:()=>c});var n=i(52616);let o=function(e){return e.NEW_CHAT="NEW_CHAT",e.LOGOUT="LOGOUT",e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.PREVIOUS_7_DAYS="PREVIOUS_7_DAYS",e.PREVIOUS_30_DAYS="PREVIOUS_30_DAYS",e.SWITCH_LANGUAGE="SWITCH_LANGUAGE",e.MY="MY",e.PROJECTS="PROJECTS",e.HISTORY="HISTORY",e.CREATE_PROJECT="CREATE_PROJECT",e.MOVE_TO_PROJECT="MOVE_TO_PROJECT",e.UNTITLED="UNTITLED",e.UNNAMED="UNNAMED",e}({});const r={[o.NEW_CHAT]:"New chat",[o.LOGOUT]:"Logout",[o.TODAY]:"Today",[o.YESTERDAY]:"Yesterday",[o.PREVIOUS_7_DAYS]:"Previous 7 days",[o.PREVIOUS_30_DAYS]:"Previous 30 days",[o.SWITCH_LANGUAGE]:"中文",[o.MY]:"My",[o.PROJECTS]:"Projects",[o.HISTORY]:"Chats",[o.CREATE_PROJECT]:"Create project",[o.MOVE_TO_PROJECT]:"Move to project",[o.UNTITLED]:"Untitled",[o.UNNAMED]:"Unnamed"},a={[o.NEW_CHAT]:"新对话",[o.LOGOUT]:"登出",[o.TODAY]:"今天",[o.YESTERDAY]:"昨天",[o.PREVIOUS_7_DAYS]:"过去7天",[o.PREVIOUS_30_DAYS]:"过去30天",[o.SWITCH_LANGUAGE]:"English",[o.MY]:"我的",[o.PROJECTS]:"项目",[o.HISTORY]:"对话",[o.CREATE_PROJECT]:"创建项目",[o.MOVE_TO_PROJECT]:"移动到项目",[o.UNTITLED]:"无标题",[o.UNNAMED]:"未命名"},l="bricks/ai-portal/elevo-sidebar",s={en:r,zh:a},c=n.i18n.getFixedT(null,l)},61408:(e,t,i)=>{i.d(t,{A:()=>l});var n=i(36758),o=i.n(n),r=i(40935),a=i.n(r)()(o());a.push([e.id,':host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.sidebar{position:relative;z-index:2;width:260px;height:100%;background:rgba(246,247,249,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:23px 11px 0;display:flex;flex-direction:column;transition:transform 0.3s ease-in-out}.logo-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;margin-left:4px}.logo-link::part(link){display:block}.logo{vertical-align:middle}.new-chat::part(link){display:flex;gap:0;align-items:center;color:var(--elevo-color-brand);font-size:14px;text-align:left;cursor:pointer}.sidebar .new-chat::part(link){background:#f0f4ff;border-radius:8px;border:1px solid #c9d7ff;padding:9px 13px;font-weight:500;margin-bottom:16px}.sidebar .new-chat::part(link):hover{background:rgba(201,215,255,0.5)}.new-chat-icon{font-size:16px;margin-right:5px}.footer{border-top:1px solid rgba(0,0,0,0.04);padding:9px 12px;margin:0 -12px}.dropdown{display:block}.account{background:none;border:none;border-radius:8px;padding:6px 10px;display:block;width:100%;text-align:left;cursor:pointer}.account:hover{background:rgba(0,0,0,0.04)}.alternative{position:fixed;top:12px;left:8px;padding:6px 10px 6px 8px;display:flex;align-items:center;opacity:0;z-index:2;transition:opacity 0.2s ease-in-out;background:rgba(255,255,255,0);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.alternative .new-chat::part(link){padding:4px;margin-left:16px;font-size:12px}.alternative .new-chat::part(link):hover{color:#7891ff}.alternative .new-chat::part(link):active{color:#0911b3}.container{width:270px;padding:10px 0 10px 10px;height:100%;transition:width 0.3s ease-in-out,padding 0.3s ease-in-out}.container.collapsed{width:0;padding:10px 0;overflow:visible}.container.collapsed .sidebar{transform:translateX(-100%)}.container.collapsed .alternative{opacity:1}:host([behavior="drawer"]){z-index:2;width:0}:host(:not([behavior="drawer"])) .alternative .new-chat{display:none}.mask{position:fixed;top:0;right:0;bottom:0;left:0}.links{border-bottom:1px solid rgba(0,0,0,0.06);padding-bottom:16px;margin-bottom:16px}.link{display:block}.link + .link{margin-top:4px}.link::part(link){display:flex;gap:0;align-items:center;padding:7px 10px;border-radius:8px;color:#000}.link.active::part(link),.link::part(link):hover{background:rgba(0,0,0,0.04)}.link .icon{font-size:16px;margin-right:10px}.link .title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history{flex:1;min-height:0;overflow-y:auto;margin:0 -12px;padding:0 12px}.history ul{list-style:none;margin:0;padding:0}.history .section + .section{margin-top:14px}.history .section-title{display:flex;align-items:center;justify-content:space-between;height:30px;margin-bottom:6px;padding:0 8px;position:sticky;top:0}.history .section-title.sticky::before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgb(229,228,234);border-radius:8px;z-index:-1}.history .section-label{display:flex;align-items:center;height:24px;padding:0 8px;margin-left:-8px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:12px;color:#8c8c8c;border-radius:8px}.history .section-label eo-icon{vertical-align:middle;margin-left:6px;transition:transform 0.2s ease-in-out}.history .section-label:hover{background:rgba(0,0,0,0.04)}.history .collapsed > ul{display:none}.history .collapsed .section-label eo-icon{transform:rotate(-90deg)}.history .error,.history .loading{display:flex;align-items:center;height:36px;padding:0 8px}.history .loading{justify-content:center}.history .error{color:var(--color-error)}.history .group + .group{margin-top:15px}.history .group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.history .item{display:block}.history .item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.history .item.active::part(link){background:rgba(0,0,0,0.06)}.history .item.actions-active::part(link),.history .item::part(link):hover{background:rgba(0,0,0,0.04)}.history .item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history .actions{cursor:auto}.history .item:not(:hover):not(.actions-active) .actions{display:none}.history .working{width:8px;height:8px;border-radius:8px;background:var(--elevo-color-brand);margin:0 7px}.history .item.actions-active .working,.history .item:hover .working,.history .item.active .working{display:none}.history .load-more{display:flex;justify-content:center;align-items:center;height:36px}.button{display:flex}',""]);const l=a.toString()},70579:(e,t,i)=>{i.d(t,{Bj:()=>o,EM:()=>r,JQ:()=>l,Py:()=>c,qb:()=>a,qu:()=>s});var n=i(30981);const o=(0,n.wrapBrick)("eo-icon"),r=(0,n.wrapBrick)("eo-link"),a=(0,n.wrapBrick)("eo-dropdown-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),l=(0,n.wrapBrick)("eo-easyops-avatar"),s=(0,n.wrapBrick)("eo-mini-actions",{onActionClick:"action.click",onVisibleChange:"visible.change"}),c=(0,n.wrapBrick)("ai-portal.icon-button")},75197:(e,t,i)=>{i.d(t,{D:()=>b});var n=i(89575),o=i(18769),r=i.n(o),a=i(53373),l=i.n(a),s=i(22919);const c=async(e,t)=>(await s.http.get("api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations",{...t,params:e})).data;var d=i(41030),p=i(5813),u=i(70579),m=i(40177),g=i(65549),h=i(94504);const E={lib:"fa",icon:"plus"},b=(0,o.forwardRef)(x);function x(e,t){let{historyActions:i,historyUrlTemplate:a,projectUrlTemplate:b,projectActions:x,canAddProject:v,myLinks:k,onActionClick:y,onHistoryClick:T,onProjectActionClick:w,onAddProject:O}=e;const A=(0,o.useRef)(null),[C,S]=(0,o.useState)(!1),[_,N]=(0,o.useState)(null),[R,I]=(0,o.useState)(!1),[P,U]=(0,o.useState)(!1),[Y,D]=(0,o.useState)(null),[j,M]=(0,o.useState)(!1),[L,V]=(0,o.useState)(),[H,B]=(0,o.useState)(),[J,z]=(0,o.useState)(!1),G=(0,o.useRef)(!0),[q,K]=(0,o.useState)([]),W=(0,o.useMemo)((()=>[...null!=i?i:[],{isDropdown:!0,text:(0,p.t)(p.K.MOVE_TO_PROJECT),disabled:!(null!=_&&_.length),items:null==_?void 0:_.map((e=>({event:"move",key:e.instanceId,text:e.name,project:e})))}]),[i,_]);(0,o.useEffect)((()=>{(async()=>{try{const e=await(async()=>(await s.http.get("api/gateway/logic.llm.aiops_service/api/v1/elevo/projects",{params:{page:1,page_size:3e3}})).data)();N(e.list)}catch(e){console.error("Error loading projects:",e),U(!0),N([])}})()}),[]),(0,o.useEffect)((()=>{Promise.all([c({token:H,limit:30,onlyOwner:!0,onlyUnrelatedProject:!0},{interceptorParams:{ignoreLoadingBar:!0}}),...G.current?[]:[new Promise((e=>setTimeout(e,500)))]]).then((e=>{let[t]=e;G.current=!1,D((e=>[...null!=e?e:[],...t.conversations])),V(t.nextToken)})).catch((e=>{console.error("Error loading chat history:",e),D([]),z(!0)}))}),[H]);const[Q,F]=(0,o.useState)(null),X=(0,o.useRef)(null);(0,o.useEffect)((()=>{const e=X.current,t=A.current;if(!e||!L||!t||j)return;const i=new IntersectionObserver((e=>{for(const t of e)t.isIntersecting&&B(L)}),{root:t});return i.observe(e),()=>{i.disconnect()}}),[L,j]);const Z=(0,o.useRef)(0),$=(0,o.useCallback)((async()=>{try{const e=++Z.current,t=await c({limit:30,onlyOwner:!0,onlyUnrelatedProject:!0},{interceptorParams:{ignoreLoadingBar:!0}});if(e!==Z.current)return;D((e=>{const i=null!=e?e:[],n=t.conversations,o=new Set(n.map((e=>e.conversationId))),r=new Map(n.map((e=>[e.conversationId,e])));let a=!1,l=!1,s=!0;for(const e of i){const t=r.get(e.conversationId);if(!t)break;if(a=!0,l=s&&t!==n[0]||!(0,d.isEqual)(t,e),l)break;s=!1}return a?l?[...n,...i.filter((e=>!o.has(e.conversationId)))]:e:(V(t.nextToken),n)}))}catch(e){console.error("Error pulling chat history:",e)}}),[]);(0,o.useImperativeHandle)(t,(()=>({pull:$,removeProject:e=>{N((t=>t?t.filter((t=>t.instanceId!==e)):t))},addProject:e=>{N((t=>t?[...t,e]:[e]))},moveConversation:e=>{K((t=>[...t,e]))}})),[$]);const ee=(0,o.useMemo)((()=>Y&&Y.length?Y.filter((e=>!q.includes(e.conversationId))):Y),[Y,q]);return r().createElement("div",{className:"history",ref:A},null!=k&&k.length?r().createElement("div",{className:l()("section",{collapsed:C})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.MY),collapsed:C,onToggle:()=>S((e=>!e))}),r().createElement("ul",{className:"items"},k.map(((e,t)=>r().createElement("li",{key:t},r().createElement(h.k,{url:e.url,activeIncludes:e.activeIncludes,render:t=>{let{active:i}=t;return r().createElement(u.EM,{className:l()("item",{active:i}),url:e.url},r().createElement("div",{className:"item-title"},e.title))}})))))):null,r().createElement("div",{className:l()("section",{collapsed:R})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.PROJECTS),collapsed:R,onToggle:()=>I((e=>!e))},v&&r().createElement(u.Py,{icon:E,variant:"mini-light",tooltip:(0,p.t)(p.K.CREATE_PROJECT),tooltipHoist:!0,className:"button",onClick:O})),r().createElement("ul",{className:"items"},P?r().createElement("li",{className:"error"},"Failed to load project"):_?_.map((e=>{const t=b?(0,g.Q)(b,e):void 0;return r().createElement("li",{key:e.instanceId},r().createElement(h.k,{url:t,render:i=>{let{active:o}=i;return r().createElement(u.EM,(0,n.A)({className:l()("item",{"actions-active":e.instanceId===Q,active:o}),onClick:T},t?{url:t}:null),r().createElement("div",{className:"item-title",title:e.name},e.name||(0,p.t)(p.K.UNNAMED)),r().createElement(u.qu,{className:"actions",actions:x,themeVariant:"elevo",onActionClick:t=>{w({action:t.detail,project:e})},onVisibleChange:t=>{F(t.detail?e.instanceId:null)}}))}}))})):r().createElement("li",{className:"loading"},r().createElement(u.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})))),r().createElement("div",{className:l()("section",{collapsed:j})},r().createElement(f,{rootRef:A,title:(0,p.t)(p.K.HISTORY),collapsed:j,onToggle:()=>M((e=>!e))}),r().createElement("ul",{className:"items"},ee?ee.map((e=>{const t=a?(0,g.Q)(a,e):void 0;return r().createElement("li",{key:e.conversationId},r().createElement(h.k,{url:t,render:t=>{let{active:i}=t;return r().createElement(u.EM,(0,n.A)({className:l()("item",{"actions-active":e.conversationId===Q,active:i}),onClick:T},a?{url:(0,g.Q)(a,e)}:null),r().createElement("div",{className:"item-title",title:e.title},e.title||(0,p.t)(p.K.UNTITLED)),r().createElement(u.qu,{className:"actions",actions:W,onActionClick:t=>{y({action:t.detail,item:e})},onVisibleChange:t=>{F(t.detail?e.conversationId:null)}}),!m.QB.includes(e.state)&&r().createElement("div",{className:"working"}))}}))})):r().createElement("li",{className:"loading"},r().createElement(u.Bj,{lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0})),J?r().createElement("li",{className:"error"},"Failed to load chat history"):null),!j&&L&&r().createElement("div",{className:"load-more",ref:X},r().createElement(u.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0}))))}function f(e){let{rootRef:t,title:i,collapsed:n,children:a,onToggle:s}=e;const c=(0,o.useRef)(null),[p,m]=(0,o.useState)(!1);return(0,o.useEffect)((()=>{if(n)return void m(!1);const e=t.current,i=c.current,o=null==i?void 0:i.nextElementSibling;if(!e||!i||!o)return;const r=(0,d.throttle)((()=>{const e=i.getBoundingClientRect(),t=o.getBoundingClientRect().top-e.top-e.height;m(t<1)}),100);return e.addEventListener("scroll",r),()=>{e.removeEventListener("scroll",r)}}),[n,t]),r().createElement("div",{className:l()("section-title",{sticky:p}),ref:c},r().createElement("div",{className:"section-label",onClick:s},i,r().createElement(u.Bj,{lib:"fa",icon:"angle-down"})),a)}},94504:(e,t,i)=>{i.d(t,{k:()=>r});var n=i(18769),o=i(30348);function r(e){let{url:t,activeIncludes:i,render:r}=e;const[a,l]=(0,n.useState)(!1);return(0,n.useEffect)((()=>{function e(e){if(t){for(const n of[t,...null!=i?i:[]])if((0,o.matchPath)(e.pathname,{path:n,exact:!1}))return void l(!0);l(!1)}else l(!1)}const n=(0,o.getHistory)();return e(n.location),n.listen(e)}),[t,i]),r({active:a})}}}]);
|
|
3
|
+
//# sourceMappingURL=2084.778e8126.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunks/2084.778e8126.js","mappings":"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","sources":["webpack:///./src/elevo-sidebar/i18n.ts","webpack:///./src/elevo-sidebar/styles.shadow.css","webpack:///./src/elevo-sidebar/bricks.ts","webpack:///../../node_modules/@next-api-sdk/llm-sdk/dist/esm/api/llm/elevo/getElevoProjects.js","webpack:///../../node_modules/@next-api-sdk/llm-sdk/dist/esm/api/llm/elevo/listElevoConversations.js","webpack:///./src/elevo-sidebar/ChatHistory.tsx","webpack:///./src/elevo-sidebar/NavLink.tsx"],"sourcesContent":["import { i18n } from \"@next-core/i18n\";\n\nexport enum K {\n NEW_CHAT = \"NEW_CHAT\",\n LOGOUT = \"LOGOUT\",\n TODAY = \"TODAY\",\n YESTERDAY = \"YESTERDAY\",\n PREVIOUS_7_DAYS = \"PREVIOUS_7_DAYS\",\n PREVIOUS_30_DAYS = \"PREVIOUS_30_DAYS\",\n SWITCH_LANGUAGE = \"SWITCH_LANGUAGE\",\n MY = \"MY\",\n PROJECTS = \"PROJECTS\",\n HISTORY = \"HISTORY\",\n CREATE_PROJECT = \"CREATE_PROJECT\",\n MOVE_TO_PROJECT = \"MOVE_TO_PROJECT\",\n UNTITLED = \"UNTITLED\",\n UNNAMED = \"UNNAMED\",\n}\n\nconst en: Locale = {\n [K.NEW_CHAT]: \"New chat\",\n [K.LOGOUT]: \"Logout\",\n [K.TODAY]: \"Today\",\n [K.YESTERDAY]: \"Yesterday\",\n [K.PREVIOUS_7_DAYS]: \"Previous 7 days\",\n [K.PREVIOUS_30_DAYS]: \"Previous 30 days\",\n [K.SWITCH_LANGUAGE]: \"中文\",\n [K.MY]: \"My\",\n [K.PROJECTS]: \"Projects\",\n [K.HISTORY]: \"Chats\",\n [K.CREATE_PROJECT]: \"Create project\",\n [K.MOVE_TO_PROJECT]: \"Move to project\",\n [K.UNTITLED]: \"Untitled\",\n [K.UNNAMED]: \"Unnamed\",\n};\n\nconst zh: Locale = {\n [K.NEW_CHAT]: \"新对话\",\n [K.LOGOUT]: \"登出\",\n [K.TODAY]: \"今天\",\n [K.YESTERDAY]: \"昨天\",\n [K.PREVIOUS_7_DAYS]: \"过去7天\",\n [K.PREVIOUS_30_DAYS]: \"过去30天\",\n [K.SWITCH_LANGUAGE]: \"English\",\n [K.MY]: \"我的\",\n [K.PROJECTS]: \"项目\",\n [K.HISTORY]: \"对话\",\n [K.CREATE_PROJECT]: \"创建项目\",\n [K.MOVE_TO_PROJECT]: \"移动到项目\",\n [K.UNTITLED]: \"无标题\",\n [K.UNNAMED]: \"未命名\",\n};\n\nexport const NS = \"bricks/ai-portal/elevo-sidebar\";\n\nexport const locales = { en, zh };\n\nexport const t = i18n.getFixedT(null, NS);\n\ntype Locale = { [k in K]: string } & {\n [k in K as `${k}_plural`]?: string;\n};\n","// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `:host{display:block}:host([hidden]){display:none}*{box-sizing:border-box}.sidebar{position:relative;z-index:2;width:260px;height:100%;background:rgba(246,247,249,0.5);border:1px solid rgba(255,255,255,0.3);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:23px 11px 0;display:flex;flex-direction:column;transition:transform 0.3s ease-in-out}.logo-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;margin-left:4px}.logo-link::part(link){display:block}.logo{vertical-align:middle}.new-chat::part(link){display:flex;gap:0;align-items:center;color:var(--elevo-color-brand);font-size:14px;text-align:left;cursor:pointer}.sidebar .new-chat::part(link){background:#f0f4ff;border-radius:8px;border:1px solid #c9d7ff;padding:9px 13px;font-weight:500;margin-bottom:16px}.sidebar .new-chat::part(link):hover{background:rgba(201,215,255,0.5)}.new-chat-icon{font-size:16px;margin-right:5px}.footer{border-top:1px solid rgba(0,0,0,0.04);padding:9px 12px;margin:0 -12px}.dropdown{display:block}.account{background:none;border:none;border-radius:8px;padding:6px 10px;display:block;width:100%;text-align:left;cursor:pointer}.account:hover{background:rgba(0,0,0,0.04)}.alternative{position:fixed;top:12px;left:8px;padding:6px 10px 6px 8px;display:flex;align-items:center;opacity:0;z-index:2;transition:opacity 0.2s ease-in-out;background:rgba(255,255,255,0);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.alternative .new-chat::part(link){padding:4px;margin-left:16px;font-size:12px}.alternative .new-chat::part(link):hover{color:#7891ff}.alternative .new-chat::part(link):active{color:#0911b3}.container{width:270px;padding:10px 0 10px 10px;height:100%;transition:width 0.3s ease-in-out,padding 0.3s ease-in-out}.container.collapsed{width:0;padding:10px 0;overflow:visible}.container.collapsed .sidebar{transform:translateX(-100%)}.container.collapsed .alternative{opacity:1}:host([behavior=\"drawer\"]){z-index:2;width:0}:host(:not([behavior=\"drawer\"])) .alternative .new-chat{display:none}.mask{position:fixed;top:0;right:0;bottom:0;left:0}.links{border-bottom:1px solid rgba(0,0,0,0.06);padding-bottom:16px;margin-bottom:16px}.link{display:block}.link + .link{margin-top:4px}.link::part(link){display:flex;gap:0;align-items:center;padding:7px 10px;border-radius:8px;color:#000}.link.active::part(link),.link::part(link):hover{background:rgba(0,0,0,0.04)}.link .icon{font-size:16px;margin-right:10px}.link .title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history{flex:1;min-height:0;overflow-y:auto;margin:0 -12px;padding:0 12px}.history ul{list-style:none;margin:0;padding:0}.history .section + .section{margin-top:14px}.history .section-title{display:flex;align-items:center;justify-content:space-between;height:30px;margin-bottom:6px;padding:0 8px;position:sticky;top:0}.history .section-title.sticky::before{content:\"\";position:absolute;top:0;right:0;bottom:0;left:0;background-color:rgb(229,228,234);border-radius:8px;z-index:-1}.history .section-label{display:flex;align-items:center;height:24px;padding:0 8px;margin-left:-8px;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500;font-size:12px;color:#8c8c8c;border-radius:8px}.history .section-label eo-icon{vertical-align:middle;margin-left:6px;transition:transform 0.2s ease-in-out}.history .section-label:hover{background:rgba(0,0,0,0.04)}.history .collapsed > ul{display:none}.history .collapsed .section-label eo-icon{transform:rotate(-90deg)}.history .error,.history .loading{display:flex;align-items:center;height:36px;padding:0 8px}.history .loading{justify-content:center}.history .error{color:var(--color-error)}.history .group + .group{margin-top:15px}.history .group-title{font-weight:500;font-size:12px;color:#000;padding:8px;height:36px;line-height:20px}.history .item{display:block}.history .item::part(link){display:flex;align-items:center;padding:0 8px;height:36px;border-radius:8px;color:#000}.history .item.active::part(link){background:rgba(0,0,0,0.06)}.history .item.actions-active::part(link),.history .item::part(link):hover{background:rgba(0,0,0,0.04)}.history .item-title{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.history .actions{cursor:auto}.history .item:not(:hover):not(.actions-active) .actions{display:none}.history .working{width:8px;height:8px;border-radius:8px;background:var(--elevo-color-brand);margin:0 7px}.history .item.actions-active .working,.history .item:hover .working,.history .item.active .working{display:none}.history .load-more{display:flex;justify-content:center;align-items:center;height:36px}.button{display:flex}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___.toString();\n","import { wrapBrick } from \"@next-core/react-element\";\nimport type {\n GeneralIcon,\n GeneralIconProps,\n} from \"@next-bricks/icons/general-icon\";\nimport type { Link, LinkProps } from \"@next-bricks/basic/link\";\nimport type {\n EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping,\n} from \"@next-bricks/basic/dropdown-actions\";\nimport type {\n EoEasyopsAvatar,\n EoEasyopsAvatarProps,\n} from \"@next-bricks/basic/easyops-avatar\";\nimport type {\n EoMiniActions,\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping,\n EoMiniActionsProps,\n} from \"@next-bricks/basic/mini-actions\";\nimport type { IconButton, IconButtonProps } from \"../icon-button\";\n\nexport const WrappedIcon = wrapBrick<GeneralIcon, GeneralIconProps>(\"eo-icon\");\nexport const WrappedLink = wrapBrick<Link, LinkProps>(\"eo-link\");\nexport const WrappedDropdownActions = wrapBrick<\n EoDropdownActions,\n DropdownActionsProps,\n DropdownActionsEvents,\n DropdownActionsEventsMapping\n>(\"eo-dropdown-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nexport const WrappedEasyopsAvatar = wrapBrick<\n EoEasyopsAvatar,\n EoEasyopsAvatarProps\n>(\"eo-easyops-avatar\");\nexport const WrappedMiniActions = wrapBrick<\n EoMiniActions,\n EoMiniActionsProps & { themeVariant?: \"default\" | \"elevo\" },\n EoMiniActionsEvents,\n EoMiniActionsEventsMapping\n>(\"eo-mini-actions\", {\n onActionClick: \"action.click\",\n onVisibleChange: \"visible.change\",\n});\nexport const WrappedIconButton = wrapBrick<IconButton, IconButtonProps>(\n \"ai-portal.icon-button\"\n);\n","import { http } from \"@next-core/http\";\n/**\n * @description 获取elevo项目列表\n * @endpoint list /api/v1/elevo/projects\n */\nexport const ElevoApi_getElevoProjects = async (params, options) => /**! @contract easyops.api.llm.elevo.GetElevoProjects@1.0.0 */(await http.get(\"api/gateway/logic.llm.aiops_service/api/v1/elevo/projects\", {\n ...options,\n params\n})).data;\n//# sourceMappingURL=getElevoProjects.js.map","import { http } from \"@next-core/http\";\n/**\n * @description 获取elevo会话列表\n * @endpoint GET /api/v1/elevo/conversations\n */\nexport const ElevoApi_listElevoConversations = async (params, options) => /**! @contract easyops.api.llm.elevo.ListElevoConversations@1.0.0 */(await http.get(\"api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations\", {\n ...options,\n params\n})).data;\n//# sourceMappingURL=listElevoConversations.js.map","import React, {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n type MutableRefObject,\n type PropsWithChildren,\n} from \"react\";\nimport classNames from \"classnames\";\nimport {\n ElevoApi_listElevoConversations,\n ElevoApi_getElevoProjects,\n type ElevoApi_ListElevoConversationsRequestParams,\n} from \"@next-api-sdk/llm-sdk\";\nimport type {\n ActionType,\n SimpleActionType,\n} from \"@next-bricks/basic/mini-actions\";\nimport type { GeneralIconProps } from \"@next-bricks/icons/general-icon\";\nimport { isEqual, throttle } from \"lodash\";\nimport { K, t } from \"./i18n.js\";\nimport {\n WrappedIcon,\n WrappedLink,\n WrappedMiniActions,\n WrappedIconButton,\n} from \"./bricks.js\";\nimport { DONE_STATES } from \"../shared/constants.js\";\nimport { parseTemplate } from \"../shared/parseTemplate.js\";\nimport type { ConversationState } from \"../shared/interfaces.js\";\nimport type { SidebarLink } from \"./index.js\";\nimport { NavLink } from \"./NavLink.js\";\n\nconst ADD_ICON: GeneralIconProps = {\n lib: \"fa\",\n icon: \"plus\",\n};\n\nexport interface HistoryItem {\n conversationId: string;\n title: string;\n startTime: number;\n state?: ConversationState;\n}\n\nexport interface GroupedHistory {\n title: string;\n items: HistoryItem[];\n}\n\nexport interface ActionClickDetail {\n action: SimpleActionType;\n item: HistoryItem;\n project?: Project;\n}\n\nexport interface ProjectActionClickDetail {\n action: SimpleActionType;\n project: Project;\n}\n\nexport interface Project {\n /** 实例ID */\n instanceId: string;\n /** 项目名称 */\n name: string;\n /** 项目描述 */\n description: string;\n /** 状态 */\n state: \"active\" | \"inactive\";\n /** 默认数字人ID */\n defaultAiEmployeeId: string;\n /** 创建者 */\n creator: string;\n /** 创建时间 */\n ctime: string;\n /** 修改时间 */\n mtime: string;\n /** 修改者 */\n modifier: string;\n}\n\nexport interface ChatHistoryProps {\n historyUrlTemplate?: string;\n historyActions?: ActionType[];\n projectUrlTemplate?: string;\n projectActions?: ActionType[];\n canAddProject?: boolean;\n myLinks?: SidebarLink[];\n onActionClick: (detail: ActionClickDetail) => void;\n onHistoryClick: () => void;\n onProjectActionClick: (detail: ProjectActionClickDetail) => void;\n onAddProject: () => void;\n}\n\nexport interface ChatHistoryRef {\n pull: () => void;\n removeProject?: (projectId: string) => void;\n addProject?: (project: Project) => void;\n moveConversation?: (conversationId: string) => void;\n}\n\nexport const ChatHistory = forwardRef(LowLevelChatHistory);\n\nexport function LowLevelChatHistory(\n {\n historyActions,\n historyUrlTemplate,\n projectUrlTemplate,\n projectActions,\n canAddProject,\n myLinks,\n onActionClick,\n onHistoryClick,\n onProjectActionClick,\n onAddProject,\n }: ChatHistoryProps,\n ref: React.Ref<ChatHistoryRef>\n) {\n const rootRef = useRef<HTMLDivElement | null>(null);\n const [myCollapsed, setMyCollapsed] = useState(false);\n const [projects, setProjects] = useState<Project[] | null>(null);\n const [projectsCollapsed, setProjectsCollapsed] = useState(false);\n const [projectsError, setProjectsError] = useState(false);\n const [historyList, setHistoryList] = useState<HistoryItem[] | null>(null);\n const [historyCollapsed, setHistoryCollapsed] = useState(false);\n const [nextToken, setNextToken] = useState<string | undefined>();\n const [loadNextToken, setLoadNextToken] = useState<string | undefined>();\n const [historyError, setHistoryError] = useState(false);\n const initialRef = useRef(true);\n const [movedConversations, setMovedConversations] = useState<string[]>([]);\n\n const mergedHistoryActions = useMemo(\n () =>\n [\n ...(historyActions ?? []),\n {\n isDropdown: true,\n text: t(K.MOVE_TO_PROJECT),\n disabled: !projects?.length,\n items: projects?.map((project) => ({\n event: \"move\",\n key: project.instanceId,\n text: project.name,\n project,\n })),\n },\n ] as ActionType[],\n [historyActions, projects]\n );\n\n useEffect(() => {\n (async () => {\n try {\n const projects = await ElevoApi_getElevoProjects({\n page: 1,\n page_size: 3000,\n });\n setProjects(projects.list as Project[]);\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error loading projects:\", error);\n setProjectsError(true);\n setProjects([]);\n }\n })();\n }, []);\n\n useEffect(() => {\n Promise.all([\n ElevoApi_listElevoConversations(\n {\n token: loadNextToken,\n limit: 30,\n onlyOwner: true,\n onlyUnrelatedProject: true,\n } as ElevoApi_ListElevoConversationsRequestParams,\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n ),\n ...(initialRef.current\n ? []\n : [\n new Promise((resolve) => setTimeout(resolve, 500)), // Force a minimum delay\n ]),\n ])\n .then(([data]) => {\n initialRef.current = false;\n setHistoryList((prev) => [\n ...(prev ?? []),\n ...(data.conversations as HistoryItem[]),\n ]);\n setNextToken(data.nextToken);\n })\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error(\"Error loading chat history:\", error);\n setHistoryList([]);\n setHistoryError(true);\n });\n }, [loadNextToken]);\n\n const [actionsVisible, setActionsVisible] = useState<string | null>(null);\n\n const nextRef = useRef<HTMLDivElement | null>(null);\n\n useEffect(() => {\n const next = nextRef.current;\n const root = rootRef.current;\n if (!next || !nextToken || !root || historyCollapsed) {\n return;\n }\n const observer = new IntersectionObserver(\n (entries) => {\n for (const entry of entries) {\n if (entry.isIntersecting) {\n setLoadNextToken(nextToken);\n }\n }\n },\n { root }\n );\n observer.observe(next);\n return () => {\n observer.disconnect();\n };\n }, [nextToken, historyCollapsed]);\n\n const pullIdRef = useRef(0);\n\n const pull = useCallback(async () => {\n try {\n const pullId = ++pullIdRef.current;\n const tempList = await ElevoApi_listElevoConversations(\n {\n limit: 30,\n onlyOwner: true,\n onlyUnrelatedProject: true,\n } as ElevoApi_ListElevoConversationsRequestParams,\n {\n interceptorParams: {\n ignoreLoadingBar: true,\n },\n }\n );\n if (pullId !== pullIdRef.current) {\n // Ignore this pull if a newer one has been triggered\n return;\n }\n setHistoryList((prev) => {\n const prevList = prev ?? [];\n const newList = tempList.conversations as HistoryItem[];\n const newIds = new Set(newList.map((item) => item.conversationId));\n const newItemsMap = new Map(\n newList.map((item) => [item.conversationId, item])\n );\n\n let foundIntersection = false;\n let foundChanged = false;\n let isFirst = true;\n for (const item of prevList) {\n const newItem = newItemsMap.get(item.conversationId);\n if (newItem) {\n foundIntersection = true;\n foundChanged =\n (isFirst && newItem !== newList[0]) || !isEqual(newItem, item);\n if (foundChanged) {\n break;\n }\n } else {\n break;\n }\n isFirst = false;\n }\n\n if (!foundIntersection) {\n setNextToken(tempList.nextToken);\n return newList;\n }\n\n if (foundChanged) {\n return [\n ...newList,\n ...prevList.filter((item) => !newIds.has(item.conversationId)),\n ];\n }\n\n return prev;\n });\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\"Error pulling chat history:\", error);\n }\n }, []);\n\n useImperativeHandle(\n ref,\n () => ({\n pull,\n removeProject: (projectId: string) => {\n setProjects((prev) =>\n prev ? prev.filter((p) => p.instanceId !== projectId) : prev\n );\n },\n addProject: (project: Project) => {\n setProjects((prev) => (prev ? [...prev, project] : [project]));\n },\n moveConversation: (conversationId: string) => {\n setMovedConversations((prev) => [...prev, conversationId]);\n },\n }),\n [pull]\n );\n\n const filteredHistoryList = useMemo(() => {\n if (!historyList || !historyList.length) {\n return historyList;\n }\n return historyList.filter(\n (item) => !movedConversations.includes(item.conversationId)\n );\n }, [historyList, movedConversations]);\n\n return (\n <div className=\"history\" ref={rootRef}>\n {myLinks?.length ? (\n <div className={classNames(\"section\", { collapsed: myCollapsed })}>\n <SectionTitle\n rootRef={rootRef}\n title={t(K.MY)}\n collapsed={myCollapsed}\n onToggle={() => setMyCollapsed((prev) => !prev)}\n />\n <ul className=\"items\">\n {myLinks.map((link, index) => (\n <li key={index}>\n <NavLink\n url={link.url}\n activeIncludes={link.activeIncludes}\n render={({ active }) => (\n <WrappedLink\n className={classNames(\"item\", { active })}\n url={link.url}\n >\n <div className=\"item-title\">{link.title}</div>\n </WrappedLink>\n )}\n />\n </li>\n ))}\n </ul>\n </div>\n ) : null}\n <div className={classNames(\"section\", { collapsed: projectsCollapsed })}>\n <SectionTitle\n rootRef={rootRef}\n title={t(K.PROJECTS)}\n collapsed={projectsCollapsed}\n onToggle={() => setProjectsCollapsed((prev) => !prev)}\n >\n {canAddProject && (\n <WrappedIconButton\n icon={ADD_ICON}\n variant=\"mini-light\"\n tooltip={t(K.CREATE_PROJECT)}\n tooltipHoist={true}\n className=\"button\"\n onClick={onAddProject}\n />\n )}\n </SectionTitle>\n <ul className=\"items\">\n {projectsError ? (\n <li className=\"error\">Failed to load project</li>\n ) : projects ? (\n projects.map((project) => {\n const url = projectUrlTemplate\n ? parseTemplate(projectUrlTemplate, project)\n : undefined;\n return (\n <li key={project.instanceId}>\n <NavLink\n url={url}\n render={({ active }) => (\n <WrappedLink\n className={classNames(\"item\", {\n \"actions-active\":\n project.instanceId === actionsVisible,\n active,\n })}\n onClick={onHistoryClick}\n {...(url ? { url } : null)}\n >\n <div className=\"item-title\" title={project.name}>\n {project.name || t(K.UNNAMED)}\n </div>\n <WrappedMiniActions\n className=\"actions\"\n actions={projectActions}\n themeVariant=\"elevo\"\n onActionClick={(e) => {\n onProjectActionClick({ action: e.detail, project });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(\n e.detail ? project.instanceId : null\n );\n }}\n />\n </WrappedLink>\n )}\n />\n </li>\n );\n })\n ) : (\n <li className=\"loading\">\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </li>\n )}\n </ul>\n </div>\n <div className={classNames(\"section\", { collapsed: historyCollapsed })}>\n <SectionTitle\n rootRef={rootRef}\n title={t(K.HISTORY)}\n collapsed={historyCollapsed}\n onToggle={() => setHistoryCollapsed((prev) => !prev)}\n />\n <ul className=\"items\">\n {filteredHistoryList ? (\n filteredHistoryList.map((item) => {\n const url = historyUrlTemplate\n ? parseTemplate(historyUrlTemplate, item)\n : undefined;\n return (\n <li key={item.conversationId}>\n <NavLink\n url={url}\n render={({ active }) => (\n <WrappedLink\n className={classNames(\"item\", {\n \"actions-active\":\n item.conversationId === actionsVisible,\n active,\n })}\n onClick={onHistoryClick}\n {...(historyUrlTemplate\n ? { url: parseTemplate(historyUrlTemplate, item) }\n : null)}\n >\n <div className=\"item-title\" title={item.title}>\n {item.title || t(K.UNTITLED)}\n </div>\n <WrappedMiniActions\n className=\"actions\"\n actions={mergedHistoryActions}\n onActionClick={(e) => {\n onActionClick({ action: e.detail, item });\n }}\n onVisibleChange={(e) => {\n setActionsVisible(\n e.detail ? item.conversationId : null\n );\n }}\n />\n {!DONE_STATES.includes(item.state!) && (\n <div className=\"working\"></div>\n )}\n </WrappedLink>\n )}\n />\n </li>\n );\n })\n ) : (\n <li className=\"loading\">\n <WrappedIcon\n lib=\"antd\"\n theme=\"outlined\"\n icon=\"loading-3-quarters\"\n spinning\n />\n </li>\n )}\n {historyError ? (\n <li className=\"error\">Failed to load chat history</li>\n ) : null}\n </ul>\n {!historyCollapsed && nextToken && (\n <div className=\"load-more\" ref={nextRef}>\n <WrappedIcon lib=\"antd\" icon=\"loading-3-quarters\" spinning />\n </div>\n )}\n </div>\n </div>\n );\n}\n\ninterface SectionTitleProps {\n rootRef: MutableRefObject<HTMLDivElement | null>;\n title: string;\n collapsed: boolean;\n onToggle: () => void;\n}\n\nfunction SectionTitle({\n rootRef,\n title,\n collapsed,\n children,\n onToggle,\n}: PropsWithChildren<SectionTitleProps>) {\n const ref = useRef<HTMLDivElement | null>(null);\n const [stickyActive, setStickyActive] = useState(false);\n\n useEffect(() => {\n if (collapsed) {\n setStickyActive(false);\n return;\n }\n const parent = rootRef.current;\n const element = ref.current;\n const sibling = element?.nextElementSibling as HTMLElement | null;\n if (!parent || !element || !sibling) {\n return;\n }\n const onScroll = throttle(() => {\n const rect = element.getBoundingClientRect();\n const siblingRect = sibling.getBoundingClientRect();\n const diff = siblingRect.top - rect.top - rect.height;\n setStickyActive(diff < 1);\n }, 100);\n parent.addEventListener(\"scroll\", onScroll);\n return () => {\n parent.removeEventListener(\"scroll\", onScroll);\n };\n }, [collapsed, rootRef]);\n\n return (\n <div\n className={classNames(\"section-title\", { sticky: stickyActive })}\n ref={ref}\n >\n <div className=\"section-label\" onClick={onToggle}>\n {title}\n <WrappedIcon lib=\"fa\" icon=\"angle-down\" />\n </div>\n {children}\n </div>\n );\n}\n","import React, { useEffect, useState } from \"react\";\nimport { getHistory, matchPath } from \"@next-core/runtime\";\nimport type { Location } from \"history\";\n\nexport interface NavLinkProps {\n url?: string;\n activeIncludes?: string[];\n render: (props: { active: boolean }) => React.ReactElement;\n}\n\nexport function NavLink({ url, activeIncludes, render }: NavLinkProps) {\n const [active, setActive] = useState(false);\n\n useEffect(() => {\n function checkLinkActive(loc: Location) {\n if (!url) {\n setActive(false);\n return;\n }\n for (const path of [url, ...(activeIncludes ?? [])]) {\n const matched = matchPath(loc.pathname, { path, exact: false });\n if (matched) {\n setActive(true);\n return;\n }\n }\n setActive(false);\n }\n const history = getHistory();\n checkLinkActive(history.location);\n return history.listen(checkLinkActive);\n }, [url, activeIncludes]);\n\n return render({ active });\n}\n"],"names":["K","en","NEW_CHAT","LOGOUT","TODAY","YESTERDAY","PREVIOUS_7_DAYS","PREVIOUS_30_DAYS","SWITCH_LANGUAGE","MY","PROJECTS","HISTORY","CREATE_PROJECT","MOVE_TO_PROJECT","UNTITLED","UNNAMED","zh","NS","locales","t","i18n","getFixedT","___CSS_LOADER_EXPORT___","push","module","id","toString","WrappedIcon","wrapBrick","WrappedLink","WrappedDropdownActions","onActionClick","onVisibleChange","WrappedEasyopsAvatar","WrappedMiniActions","WrappedIconButton","ElevoApi_listElevoConversations","async","params","options","http","get","data","ADD_ICON","lib","icon","ChatHistory","forwardRef","LowLevelChatHistory","_ref","ref","historyActions","historyUrlTemplate","projectUrlTemplate","projectActions","canAddProject","myLinks","onHistoryClick","onProjectActionClick","onAddProject","rootRef","useRef","myCollapsed","setMyCollapsed","useState","projects","setProjects","projectsCollapsed","setProjectsCollapsed","projectsError","setProjectsError","historyList","setHistoryList","historyCollapsed","setHistoryCollapsed","nextToken","setNextToken","loadNextToken","setLoadNextToken","historyError","setHistoryError","initialRef","movedConversations","setMovedConversations","mergedHistoryActions","useMemo","isDropdown","text","disabled","length","items","map","project","event","key","instanceId","name","useEffect","page","page_size","ElevoApi_getElevoProjects","list","error","console","Promise","all","token","limit","onlyOwner","onlyUnrelatedProject","interceptorParams","ignoreLoadingBar","current","resolve","setTimeout","then","_ref2","prev","conversations","catch","actionsVisible","setActionsVisible","nextRef","next","root","observer","IntersectionObserver","entries","entry","isIntersecting","observe","disconnect","pullIdRef","pull","useCallback","pullId","tempList","prevList","newList","newIds","Set","item","conversationId","newItemsMap","Map","foundIntersection","foundChanged","isFirst","newItem","isEqual","filter","has","useImperativeHandle","removeProject","projectId","p","addProject","moveConversation","filteredHistoryList","includes","React","className","classNames","collapsed","SectionTitle","title","onToggle","link","index","NavLink","url","activeIncludes","render","_ref3","active","variant","tooltip","tooltipHoist","onClick","parseTemplate","undefined","_ref4","_extends","actions","themeVariant","e","action","detail","theme","spinning","_ref5","DONE_STATES","state","_ref6","children","stickyActive","setStickyActive","parent","element","sibling","nextElementSibling","onScroll","throttle","rect","getBoundingClientRect","diff","top","height","addEventListener","removeEventListener","sticky","setActive","checkLinkActive","loc","path","matchPath","pathname","exact","history","getHistory","location","listen"],"sourceRoot":""}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";(globalThis.webpackChunk_next_bricks_ai_portal=globalThis.webpackChunk_next_bricks_ai_portal||[]).push([[6995],{2367:(e,t,n)=>{n.d(t,{U:()=>r});var a=n(18769);function r(e,t,n,r){return(0,a.useMemo)((()=>{if(!e)return null;switch(e.type){case"job":{const n=null==t?void 0:t.get(e.id);if(n)return{type:"job",job:n};break}case"flow":{const t=null==n?void 0:n.get(e.id);if(t)return{type:"flow",flow:t};break}case"activity":{const t=null==r?void 0:r.get(e.id);if(t)return{type:"activity",flow:t.flow,activity:t.activity};break}}return null}),[e,r,n,t])}},8590:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".node-feedback--qSAvjvCa{width:var(--cruise-canvas-node-width-medium);background:rgba(255,255,255,0.2);border-radius:12px;border:1px solid rgba(255,255,255,0.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px 28px}.heading--zbbPDsFk{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.title--l9cmJRhB{font-weight:500}.form-item--wtgYuM1v{font-size:12px;line-height:17px;color:rgba(0,0,0,0.88)}.form-item--wtgYuM1v.horizontal--zqc5U1Jh{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;gap:1em}.form-item--wtgYuM1v.vertical--i26lXOiT{margin-top:16px}.form-item--wtgYuM1v.vertical--i26lXOiT label{display:block;color:rgba(0,0,0,0.45);margin-bottom:8px}.form-item--wtgYuM1v textarea{width:100%;background:none;border-radius:8px;border:1px solid rgba(0,0,0,0.15);padding:8px;color:#262626}.form-item--wtgYuM1v textarea:focus{outline:none;border-color:rgba(0,0,0,0.25)}.options--Cak4FPTk{display:flex;align-items:center}.radio--P5Vo_D45{position:relative;cursor:pointer}.radio--P5Vo_D45 input{width:0px;height:0px;position:absolute;-webkit-appearance:none;-moz-appearance:none;appearance:none}.radio--P5Vo_D45 span{display:flex;align-items:center;justify-content:center;width:64px;height:28px;border-radius:8px;background:none;border:1px solid rgba(0,0,0,0.15)}.radio--P5Vo_D45 input:checked + span{background:rgba(255,255,255,0.5);border:none}.radio--P5Vo_D45 input:not(:checked) + span:hover{background:rgba(255,255,255,0.3);border:none}.radio--P5Vo_D45 + .radio--P5Vo_D45{margin-left:8px}.submit--eCyA49Nq{display:flex;justify-content:end;margin-top:18px;gap:8px}.validate--krlXob4C .form-item--wtgYuM1v:has(input:invalid) .label--U8YsN4Mm{color:#f24c25}.submitted--XxktB9y5{background:#d0e7d6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;font-weight:500;color:#009929;padding:17px;text-align:center}",""]),i.locals={"node-feedback":"node-feedback--qSAvjvCa",heading:"heading--zbbPDsFk",title:"title--l9cmJRhB","form-item":"form-item--wtgYuM1v",horizontal:"horizontal--zqc5U1Jh",vertical:"vertical--i26lXOiT",options:"options--Cak4FPTk",radio:"radio--P5Vo_D45",submit:"submit--eCyA49Nq",validate:"validate--krlXob4C",label:"label--U8YsN4Mm",submitted:"submitted--XxktB9y5"};const l=i},11190:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".heading--Mi2u66PA{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.title--t7OpwWbH{font-size:12px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;--shine-text-color:rgba(38,38,38,0.65);--shine-text-highlight-color:#dcdcdc}ai-portal\\.cruise-canvas .title--t7OpwWbH{text-indent:4px}ai-portal\\.cruise-canvas .heading--Mi2u66PA{margin-bottom:10px}",""]),i.locals={heading:"heading--Mi2u66PA",title:"title--t7OpwWbH"};const l=i},20555:(e,t,n)=>{n.d(t,{j:()=>_});var a=n(18769),r=n.n(a),o=n(30981),i=n(72591),l=n.n(i),s=n(1740),c=n.n(s),d=n(88128),u=n.n(d),p=n(30855),m=n.n(p),E=n(93051),b=n.n(E),f=n(73656),v=n.n(f),h=n(22291),g={};g.styleTagTransform=v(),g.setAttributes=m(),g.insert=u().bind(null,"head"),g.domAPI=c(),g.insertStyleElement=b(),l()(h.A,g);const T=h.A&&h.A.locals?h.A.locals:void 0,A=(0,o.wrapBrick)("presentational.code-wrapper");function _(e){var t;let{node:n,...a}=e;return r().createElement(A,{className:T["code-wrapper"],preProps:a,showCopyButton:!(null===(t=a.className)||void 0===t||!t.includes("shiki")),themeVariant:"elevo"})}},22291:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".code-wrapper--jieEbxla::part(pre){border:1px solid #ccd1de}.code-wrapper--jieEbxla::part(mermaid){border:none;background:none}",""]),i.locals={"code-wrapper":"code-wrapper--jieEbxla"};const l=i},30672:(e,t,n)=>{n.d(t,{Bj:()=>o,EM:()=>l,F_:()=>m,Gx:()=>i,IV:()=>d,Py:()=>c,n$:()=>E,p9:()=>u,ui:()=>b,xb:()=>s,yQ:()=>p}),n(18769);var a=n(30981),r=n(77019);n(60709);const o=(0,a.wrapBrick)("eo-icon"),i=(0,a.wrapBrick)("eo-button"),l=(0,a.wrapBrick)("eo-link"),s=((0,a.wrapBrick)("eo-tooltip"),(0,a.wrapBrick)("eo-popover"),(0,a.wrapBrick)("eo-drawer",{onClose:"close",onOpen:"open"})),c=(0,a.wrapBrick)("ai-portal.icon-button"),d=(0,a.wrapBrick)("ai-portal.chat-input",{onMessageSubmit:"message.submit",onTerminate:"terminate"}),u=(0,a.wrapBrick)("ai-portal.show-case"),p=(0,a.wrapBrick)("eo-code-block"),m=(0,a.wrapBrick)("ai-portal.blank-state"),E=(0,a.wrapBrick)("ai-portal.running-flow",{onActiveChange:"active.change"}),b=(0,r.unwrapProvider)("basic.show-dialog");(0,r.unwrapProvider)("basic.copy-to-clipboard")},31078:(e,t,n)=>{n.d(t,{Q:()=>a});const a=(0,n(18769).createContext)({onNodeResize:()=>{},setActiveNodeId:()=>{},hoverOnScrollableContent:!1,setHoverOnScrollableContent:()=>{},setActiveFile:()=>{}})},35430:(e,t,n)=>{n.d(t,{n:()=>S});var a=n(18769),r=n.n(a),o=n(72591),i=n.n(o),l=n(1740),s=n.n(l),c=n(88128),d=n.n(c),u=n(30855),p=n.n(u),m=n(93051),E=n.n(m),b=n(73656),f=n.n(b),v=n(90108),h={};h.styleTagTransform=f(),h.setAttributes=p(),h.insert=d().bind(null,"head"),h.domAPI=s(),h.insertStyleElement=E(),i()(v.A,h);const g=v.A&&v.A.locals?v.A.locals:void 0;var T=n(30672),A=n(76720),_=n(53373),x=n.n(_);function S(e){let{action:t,ui:n}=e;const{humanInput:o,replay:i}=(0,a.useContext)(A.j),[l,s]=(0,a.useState)(!1);return"select"===t.type?null:r().createElement("div",{className:x()(g["human-action"],{[g.canvas]:"chat"!==n})},r().createElement(T.Gx,{type:"primary",themeVariant:"elevo",shape:"chat"===n?void 0:"round",disabled:l,onClick:()=>{i||(o("",null,t.confirmText||"确认"),s(!0))}},t.confirmText||"确认"))}},36903:(e,t,n)=>{n.d(t,{A:()=>v});var a=n(72591),r=n.n(a),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),d=n.n(c),u=n(93051),p=n.n(u),m=n(73656),E=n.n(m),b=n(91525),f={};f.styleTagTransform=E(),f.setAttributes=d(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=p(),r()(b.A,f);const v=b.A&&b.A.locals?b.A.locals:void 0},39439:(e,t,n)=>{n.d(t,{W:()=>_});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(67993),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;function _(e){let{progress:t,failed:n}=e;const a=t.data;return r().createElement("div",{className:i()(A["progress-line"],{[A.failed]:n})},r().createElement("div",{className:i()(A.step),key:a.progress},r().createElement("div",{className:A.axis},r().createElement("div",{className:A.line}),r().createElement("div",{className:A.dot})),r().createElement("div",{className:A.progress},r().createElement("span",{className:A.count},a.progress),r().createElement("span",null,"/"),r().createElement("span",{className:A.total},a.total)),r().createElement("div",{className:A.description},a.message)))}},39649:(e,t,n)=>{n.d(t,{t:()=>R});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(21302),s=n.n(l),c=n(41030),d=n(62916),u=n(72591),p=n.n(u),m=n(1740),E=n.n(m),b=n(88128),f=n.n(b),v=n(30855),h=n.n(v),g=n(93051),T=n.n(g),A=n(73656),_=n.n(A),x=n(42671),S={};S.styleTagTransform=_(),S.setAttributes=h(),S.insert=f().bind(null,"head"),S.domAPI=E(),S.insertStyleElement=T(),p()(x.A,S);const k=x.A&&x.A.locals?x.A.locals:void 0;var w=n(30672),y=n(76720),C=n(39439);const I=e=>{let t;return null==e||e.findLast((e=>{var n;return t=null===(n=e.parts)||void 0===n?void 0:n.findLast((e=>{var t;return"data"===e.type&&"progress"===(null===(t=e.data)||void 0===t?void 0:t.type)})),!!t})),t};function R(e){var t;let{job:n,variant:o}=e;const{setActiveDetail:l,separateInstructions:u}=(0,a.useContext)(y.j),p=n.toolCall,m=(null===(t=p.annotations)||void 0===t?void 0:t.title)||p.name,E=u?m:n.instruction||m,[b,f]=(0,a.useMemo)((()=>{var e;const t=null===(e=n.messages)||void 0===e?void 0:e.filter((e=>"tool"===e.role));return[I(t),null==t?void 0:t.some((e=>e.parts.some((e=>"text"===e.type))))]}),[n.messages]),v=(0,a.useMemo)((()=>"read-only"===o),[o]),h=(0,a.useCallback)((()=>{if("read-only"===o)return;const e={type:"job",id:n.id};l((t=>(0,c.isEqual)(t,e)?t:e))}),[n.id,o,l]),g=["working","input-required"].includes(n.state)&&f?"completed":n.state,T=n.isError||"failed"===g;return r().createElement("div",{className:i()(k["tool-call"],{[k.failed]:T,[k["read-only"]]:v}),onClick:h},r().createElement("div",{className:i()(k.status)},n.isError||"failed"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"fas",icon:"xmark"}):"completed"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"fas",icon:"check"}):"working"===g?r().createElement(w.Bj,{className:k.icon,lib:"antd",theme:"outlined",icon:"loading-3-quarters",spinning:!0}):"input-required"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"circle-user"}):"canceled"===g||"terminated"===g?r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"circle-stop"}):r().createElement(w.Bj,{className:k.icon,lib:"fa",prefix:"far",icon:"clock"}),r().createElement("span",{className:k.name},"read-only"===o?m:E),n.startTime?r().createElement("span",{className:k.timing},`${(0,d.P)(1e3*n.startTime,d.c.accurate)}${n.endTime?` (${s().duration(1e3*n.endTime-1e3*n.startTime).humanize({ss:-1})})`:""}`):null),!!b&&!v&&r().createElement(C.W,{progress:b,failed:T}))}},40177:(e,t,n)=>{n.d(t,{$g:()=>c,LQ:()=>i,QB:()=>a,Rq:()=>s,X4:()=>r,Xc:()=>l,Z5:()=>o,ae:()=>p,ju:()=>u,mJ:()=>d});const a=["completed","failed","canceled","terminated"],r=[...a,"paused"],o=[...r,"input-required"],i={lib:"lucide",icon:"x"},l={lib:"antd",icon:"loading-3-quarters",spinning:!0},s={lib:"lucide",icon:"network"},c={lib:"lucide",icon:"messages-square"},d={lib:"lucide",icon:"message-square"},u={lib:"lucide",icon:"external-link"},p={lib:"fa",icon:"angle-up"}},42671:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,'.tool-call--aTh276av{--failed-color:#f24c25;--border-color:#e2e2ec;--status-border-color:rgba(226,226,236,0.8);font-size:13px;color:#595959;border-radius:10px;border:1px solid var(--border-color);background:#e6e9f3}.tool-call--aTh276av:not(.read-only--xWUswNds):hover{background:#e4e9fb;border:1px solid #b8c1ff}.tool-call--aTh276av:not(:last-child){margin-bottom:10px}.tool-call--aTh276av:not(.read-only--xWUswNds){cursor:pointer}.tool-call--aTh276av .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid var(--status-border-color)}.read-only--xWUswNds{font-size:14px;padding:4px}.failed--sz70SlSa{background:#fef5f3}.failed--sz70SlSa:not(.read-only--xWUswNds):hover{background:#fee7e1;border:1px solid #ffc3b5}.failed--sz70SlSa .status--V5ZXGYOG:not(:last-child){border-bottom:1px solid rgba(253,225,218,0.8)}.status--V5ZXGYOG{height:24px;display:flex;align-items:center;padding:0 12px;color:#262626}.timing--GjuZkMuV{display:none;color:#8c8c8c}.read-only--xWUswNds .timing--GjuZkMuV,\n[class^="node-job--"]:hover .timing--GjuZkMuV,\n.status--V5ZXGYOG:hover .timing--GjuZkMuV{display:block}.icon--LTp5Jjna{margin-right:8px;color:#8c8c8c}.failed--sz70SlSa .icon--LTp5Jjna{color:var(--failed-color)}.name--FwiqyIlQ{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}',""]),i.locals={"tool-call":"tool-call--aTh276av","read-only":"read-only--xWUswNds",status:"status--V5ZXGYOG",failed:"failed--sz70SlSa",timing:"timing--GjuZkMuV",icon:"icon--LTp5Jjna",name:"name--FwiqyIlQ"};const l=i},42854:(e,t,n)=>{n.d(t,{H:()=>R});var a=n(89575),r=n(18769),o=n.n(r),i=n(41030),l=n(30348),s=n(77019),c=n(72591),d=n.n(c),u=n(1740),p=n.n(u),m=n(88128),E=n.n(m),b=n(30855),f=n.n(b),v=n(93051),h=n.n(v),g=n(73656),T=n.n(g),A=n(56819),_={};_.styleTagTransform=T(),_.setAttributes=f(),_.insert=E().bind(null,"head"),_.domAPI=p(),_.insertStyleElement=h(),d()(A.A,_);const x=A.A&&A.A.locals?A.A.locals:void 0;var S=n(23241),k=n(30672),w=n(40177);const y=6,C=2,I="__builtin_fn_stringify";function R(e){let{objectId:t,detail:n,outputSchema:c}=e;const d=(0,r.useMemo)((()=>(0,i.uniqueId)()),[]),u=(0,r.useRef)(null),p=(0,r.useRef)(null);(0,r.useEffect)((()=>{const e=u.current;if(!e)return;const t=(0,S.d)(d),n=(0,l.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return p.current=n,()=>{n.unmount(),t.remove(),p.current=null}}),[d]);const[m,E]=(0,r.useState)(!0);return(0,r.useEffect)((()=>{let e=!1;return(async()=>{E(!0);try{var t;const{bricks:a,context:r}=await async function(e,t,n,a){var r;let o,l;if("string"==typeof n)try{o=JSON.parse(n)}catch(e){console.error("Failed to parse outputSchema as JSON",e)}else o=n;const c=[],d=[{name:I,value:F}];function u(e,t,n,r,o){var l;const s=D(t),m=s.length>0?s[0][0]:null,E=M(`modal__${r}`),b=M(`context__${r}`);o&&d.push({name:b});const f={brick:"eo-modal",portal:!0,properties:{dataset:{modalId:E},width:"800px",themeVariant:"elevo",modalTitle:n,hideCancelButton:!0,maskClosable:!0,keyboard:!0}};c.push(f);const v=[],h=[];for(const[e,t]of s){let n;"array"===t.type&&"object"===t.items.type?(n=`[${e}]`,h.push({...u("DATA.cellData",t.items,t.description||(0,i.upperFirst)(e),`${r}__${e}`,!0),slot:n})):"object"===t.type&&(n=`[${e}]`,h.push({...p("DATA.cellData",t,t.description||(0,i.upperFirst)(e),`${r}__${e}`,!0),slot:n})),v.push({key:e,dataIndex:e,title:t.description||(0,i.upperFirst)(e),useChildren:n})}f.children=[{brick:"eo-next-table",properties:{dataSource:o?`<%= { list: CTX.${b} } %>`:`<% { list: (${e}) } %>`,columns:v,themeVariant:"elevo",pagination:!1,bordered:!0},children:h}];const g=[...o?[{action:"context.replace",args:[{name:b,value:`<% ${e} %>`}]}]:[],{target:`[data-root-id="${a}"] [data-modal-id="${E}"]`,method:"open"}];return{brick:"span",if:`<% !!(${e}) %>`,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[{brick:":forEach",dataSource:`<% (${e}).slice(0, ${C}) %>`,children:[{brick:"eo-tag",properties:{textContent:`<% CTX.${I}(ITEM, ${JSON.stringify(m)}, ${JSON.stringify(null===(l=s[0])||void 0===l?void 0:l[1].type)}) %>`,outline:!0,style:{cursor:"pointer"}},events:{click:g}}]},{brick:"eo-link",if:`<% (${e}).length > ${C} %>`,properties:{textContent:`<% \`+\${(${e}).length - ${C}}\` %>`},events:{click:g}}]}}function p(e,t,n,r,o){var l;const s=D(t),u=s.length>0?s[0][0]:null,p=M(`modal__${r}`),m=M(`context__${r}`);return o&&d.push({name:m}),c.push({brick:"eo-modal",portal:!0,properties:{dataset:{modalId:p},themeVariant:"elevo",modalTitle:n,hideCancelButton:!0,maskClosable:!0,keyboard:!0},children:[{brick:"eo-descriptions",properties:{themeVariant:"elevo",column:1,dataSource:o?`<%= CTX.${m} %>`:`<% ${e} %> `,list:s.map((e=>{let[t,n]=e;return{label:n.description||(0,i.upperFirst)(t),field:t}}))}}]}),{brick:"span",if:`<% !!(${e}) %>`,properties:{style:{display:"inline-flex",alignItems:"center",gap:"0.5em"}},children:[{brick:"eo-tag",properties:{textContent:`<% CTX.${I}(${e}, ${JSON.stringify(u)}, ${JSON.stringify(null===(l=s[0])||void 0===l?void 0:l[1].type)}) %>`,outline:!0,style:{cursor:"pointer"}},events:{click:[...o?[{action:"context.replace",args:[{name:m,value:`<% ${e} %>`}]}]:[],{target:`[data-root-id="${a}"] [data-modal-id="${p}"]`,method:"open"}]}}]}}return l="object"===(null===(r=o)||void 0===r?void 0:r.type)?Object.entries(o.properties).map((t=>{let[n,a]=t;const{description:r,type:o}=a,l=r||(0,i.upperFirst)(n);if(N(e,n))return{label:l,text:""};if("array"===o&&Array.isArray(e[n])){const{items:t}=a;if("object"===(null==t?void 0:t.type)){const a=M(`context__${n}`);return d.push({name:a,value:e[n]}),{label:l,useBrick:u(`CTX.${a}`,t,l,n)}}if(!O(null==t?void 0:t.type))return{label:l,text:e[n].join(", ")}}if("object"===o&&(0,s.isObject)(e[n])){const t=M(`context__${n}`);return d.push({name:t,value:e[n]}),{label:l,useBrick:p(`CTX.${t}`,a,l,n)}}return O(o)?{label:l,text:JSON.stringify(e[n],null,2)}:{label:l,field:n}})):Object.keys(e).map((e=>({label:(0,i.upperFirst)(e),field:e}))),{bricks:[{brick:"eo-descriptions",properties:{themeVariant:"elevo",column:l.length>y?2:1,dataSource:e,list:l}},...c],context:d}}(n,0,c,d);if(e)return;await(null===(t=p.current)||void 0===t?void 0:t.render(a,{context:r}))}catch(e){console.error("Failed to render view:",e)}e||E(!1)})(),()=>{e=!0}}),[n,t,c,d]),o().createElement("div",{className:x.container},m&&o().createElement(k.Bj,(0,a.A)({className:x.loading},w.Xc)),o().createElement("div",{"data-root-id":d,ref:u}))}function O(e){return!e||"object"===e||"array"===e}function N(e,t){return!(0,s.hasOwnProperty)(e,t)||null==e[t]||""===e[t]||Array.isArray(e[t])&&0===e[t].length}function M(e){return e.replace(/[^a-zA-Z0-9_]+/g,"_")}function F(e,t,n){if(null===t||N(e,t))return"";const a=e[t];return O(n)&&(0,s.isObject)(a)?JSON.stringify(a,null,2):String(a)}function D(e){var t;const n=Object.entries(e.properties);if(null===(t=e.required)||void 0===t||!t.length)return n;const a=Object.keys(e.properties);return(0,i.orderBy)(n,[t=>{let[n]=t;const r=e.required.indexOf(n);return-1===r?e.required.length+a.indexOf(n):r}],["asc"])}},50045:(e,t,n)=>{function a(e){const t=new Map,n=new Map,a=[],r=[],o=new Map;for(const n of e)t.set(n.id,n),n.parent?o.set(n.parent,n.id):r.push(n.id);for(const t of e){var i;for(const e of null!==(l=t.upstream)&&void 0!==l?l:[]){var l;let a=n.get(e);a||n.set(e,a=[]),a.push(t.id)}t.parent||null!==(i=t.upstream)&&void 0!==i&&i.length||a.push(t.id)}const s=[],c=new Set,d=[...a],u=[];for(;d.length>0;){const e=d.shift();if(c.has(e))continue;c.add(e),s.push(e);const t=n.get(e);null!=t&&t.length?d.push(...t):u.push(e)}return{list:s,map:t,roots:a,leaves:u,childMap:o,downstreamMap:n}}function r(e,t,n,r,o){const i=function(e){const{list:t,map:n,childMap:r}=a(e),o=new Map([...n.entries()].map((e=>{let[t,n]=e;return[t,a(n.jobs)]}))),i=e=>{const t=n.get(e),a=o.get(e),{list:l,map:s}=a;return{task:t,children:l.map((e=>{const t=s.get(e),n=r.get(t.id);return n?{job:t,subTask:i(n)}:{job:t}}))}};return t.map((e=>i(e)))}(e),l=[],s=(e,a)=>{const i=null==n?void 0:n.get(e.task.id),c=null==r?void 0:r.get(e.task.id);c&&l.push({type:"activity",activity:c.activity,flow:c.flow,task:e.task});const d=c&&o;for(const{job:t,subTask:n}of e.children){var u;d?"completed"===t.state&&null!==(u=t.messages)&&void 0!==u&&u.length&&t.messages.every((e=>"user"===e.role))&&l.push({type:"job",job:t,level:a,fromSkippedSubTask:!0}):"serviceFlow"===t.type?i&&l.push({type:"flow",flow:i,task:e.task}):n?s(n,a+1):l.push({type:"job",job:t,level:a})}const p=t.filter((t=>t.taskId===e.task.id&&t.error));for(const e of p)l.push({type:"error",error:e.error})};for(const e of i)s(e,0);for(const e of t)!e.taskId&&e.error&&l.push({type:"error",error:e.error});return l}n.d(t,{a:()=>r})},56819:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".container--YostHfxu{background:var(--elevo-component-background);-webkit-backdrop-filter:var(--elevo-component-backdrop-filter);backdrop-filter:var(--elevo-component-backdrop-filter);border-radius:var(--elevo-border-radius);padding:16px}.container--YostHfxu:not(:first-child){margin-top:10px}ai-portal\\.chat-stream .container--YostHfxu{background:rgba(255,255,255,0.6);border-radius:8px;border:1px solid rgba(0,0,0,0.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:12px 20px}.loading--FzSrGTPm{position:absolute;top:calc(50% - 7px);left:calc(50% - 7px)}",""]),i.locals={container:"container--YostHfxu",loading:"loading--FzSrGTPm"};const l=i},62309:(e,t,n)=>{n.d(t,{f:()=>O});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(30348),s=n(41030),c=n(71568),d=n(72591),u=n.n(d),p=n(1740),m=n.n(p),E=n(88128),b=n.n(E),f=n(30855),v=n.n(f),h=n(93051),g=n.n(h),T=n(73656),A=n.n(T),_=n(85036),x={};x.styleTagTransform=A(),x.setAttributes=v(),x.insert=b().bind(null,"head"),x.domAPI=m(),x.insertStyleElement=g(),u()(_.A,x);const S=_.A&&_.A.locals?_.A.locals:void 0;var k=n(30672),w=n(23241),y=n(40177),C=n(76720),I=n(91797),R=n(65549);function O(e){var t,n;let{views:o}=e;const d=(0,a.useMemo)((()=>(0,s.uniqueId)()),[]),{workspace:u,previewUrlTemplate:p,activeExpandedViewJobId:m,setActiveExpandedViewJobId:E,manuallyUpdatedViews:b,showFeedbackOnView:f,onFeedbackOnView:v,feedbackDoneViews:h}=(0,a.useContext)(C.j),g=(0,a.useRef)(null),T=(0,a.useRef)(null),A=(0,a.useRef)(null),_=m?null!==(t=null==b?void 0:b.get(m))&&void 0!==t?t:null===(n=o.find((e=>e.id===m)))||void 0===n?void 0:n.view:null,x=(0,I.G)(null==_?void 0:_.viewId,f)||_&&(null==h?void 0:h.has(_.viewId)),[O,N]=(0,a.useState)(null),M=!!O&&!(null==_||!_.viewId)&&"config"!==_.from,[F,D]=(0,a.useState)(o);(0,a.useEffect)((()=>{var e;N(null);let t=!1;return null==_||null===(e=_.asyncConstructedView)||void 0===e||e.then((e=>{t||N(e)})),()=>{t=!0}}),[_]),(0,a.useEffect)((()=>{Promise.all(o.map((async e=>{var t;const n=await e.view.asyncConstructedView;return{...e,title:null==n||null===(t=n.entry)||void 0===t||null===(t=t.defaultExport)||void 0===t?void 0:t.title}}))).then((e=>{D(e)}))}),[o]),(0,a.useEffect)((()=>{const e=T.current;if(!e)return;const t=(0,w.d)(d),n=(0,l.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return A.current=n,()=>{n.unmount(),t.remove(),A.current=null}}),[d]);const[P,L]=(0,a.useState)(!0);(0,a.useEffect)((()=>{if(L(!0),!O)return;let e=!1;return(async()=>{try{var t;const n=await(0,c.z)(O,{rootId:d,workspace:u,expanded:!0,withContexts:O.withContexts});if(e)return;const{brick:a,context:r,functions:o,templates:i}=n;await(null===(t=A.current)||void 0===t?void 0:t.render(a,{context:r,functions:o,templates:i}))}catch(e){console.error("Failed to render view:",e)}e||L(!1)})(),()=>{e=!0}}),[d,u,O]);const H=(0,a.useCallback)((()=>{E(null)}),[E]);(0,a.useEffect)((()=>{setTimeout((()=>{var e;null===(e=g.current)||void 0===e||e.focus()}),0)}),[]);const j=(0,a.useCallback)((e=>{"Escape"===e.key&&(e.stopPropagation(),H())}),[H]);return r().createElement("div",{className:S["expanded-view"],tabIndex:-1,ref:g,onKeyDown:j},P&&r().createElement("div",{className:S.loading},r().createElement(k.Bj,{lib:"antd",icon:"loading-3-quarters",spinning:!0})),r().createElement("div",{className:i()(S.body,{}),ref:T,"data-root-id":d}),r().createElement("ul",{className:S.nav},F.map((e=>{var t;return r().createElement("li",{key:e.id},r().createElement("button",{className:i()(S["nav-button"],{[S.active]:m===e.id}),onClick:()=>E(e.id)},null!==(t=e.title)&&void 0!==t?t:"…"))}))),r().createElement("div",{className:S.buttons},f&&!x&&M&&r().createElement(k.Py,{icon:y.mJ,onClick:()=>null==v?void 0:v(_.viewId)}),!(null==_||!_.viewId||_.withContexts||!p)&&r().createElement(k.Py,{icon:y.ju,onClick:()=>{window.open(`${(0,l.getBasePath)().slice(0,-1)}${(0,R.Q)(p,{viewId:_.viewId})}`,"_blank")}}),r().createElement(k.Py,{icon:y.LQ,onClick:H})))}},62916:(e,t,n)=>{n.d(t,{c:()=>c,P:()=>d});var a=n(21302),r=n(52616);const o="libs-datetime";let i=function(e){return e.TODAY="TODAY",e.YESTERDAY="YESTERDAY",e.FUTURE_AFTER="FUTURE_AFTER",e.FORMAT_MEDIUM_DATETIME="FORMAT_MEDIUM_DATETIME",e.FORMAT_MEDIUM_DATE="FORMAT_MEDIUM_DATE",e.FORMAT_SHORT_DATETIME="FORMAT_SHORT_DATETIME",e.FORMAT_SHORT_DATE="FORMAT_SHORT_DATE",e.FORMAT_SHORT_DAY_DATETIME="FORMAT_SHORT_DAY_DATETIME",e.FORMAT_SHORT_DAY_DATE="FORMAT_SHORT_DAY_DATE",e.SECONDS="SECONDS",e.MILL_SECONDS="MILL_SECONDS",e.MINUTES="MINUTES",e.HOURS="HOURS",e.DAYS="DARS",e.MONTHS="MONTHS",e}({});const l={[i.YESTERDAY]:"Yesterday",[i.TODAY]:"Today",[i.FUTURE_AFTER]:"After {{time}}",[i.FORMAT_MEDIUM_DATETIME]:"LLL",[i.FORMAT_MEDIUM_DATE]:"LL",[i.FORMAT_SHORT_DATETIME]:"MMM D ah:mm",[i.FORMAT_SHORT_DATE]:"MMM D",[i.FORMAT_SHORT_DAY_DATETIME]:"MMM D HH:mm",[i.FORMAT_SHORT_DAY_DATE]:"MMM D",[i.MONTHS]:"months",[i.HOURS]:"hours",[i.SECONDS]:"seconds",[i.MILL_SECONDS]:"millseconds",[i.DAYS]:"days",[i.MINUTES]:"minutes"},s={[i.YESTERDAY]:"昨天",[i.TODAY]:"今天",[i.FUTURE_AFTER]:"{{time}}后",[i.FORMAT_MEDIUM_DATETIME]:"LL ah:mm",[i.FORMAT_MEDIUM_DATE]:"LL",[i.FORMAT_SHORT_DATETIME]:"MMMD日 ah:mm",[i.FORMAT_SHORT_DATE]:"MMMD日",[i.FORMAT_SHORT_DAY_DATETIME]:"MMMD日 HH:mm",[i.FORMAT_SHORT_DAY_DATE]:"MMMD日",[i.MONTHS]:"个月",[i.HOURS]:"小时",[i.SECONDS]:"秒",[i.MILL_SECONDS]:"毫秒",[i.DAYS]:"天",[i.MINUTES]:"分钟"};(0,r.initializeI18n)(o,{en:l,zh:s});let c=function(e){return e.full="full",e.default="default",e.relative="relative",e.past="past",e.future="future",e.accurate="accurate",e.auto="auto",e}({});const d=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:c.auto,n=arguments.length>2?arguments[2]:void 0;if(null==e||e===-1/0||e===1/0)return null;const l=a(e),s=a().add(0),d="date"===n?"LL":"LL HH:mm",u=r.i18n.t(`${o}:${"date"===n?i.FORMAT_MEDIUM_DATE:i.FORMAT_MEDIUM_DATETIME}`),p=r.i18n.t(`${o}:${"date"===n?i.FORMAT_SHORT_DATE:i.FORMAT_SHORT_DATETIME}`),m=r.i18n.t(`${o}:${"date"===n?i.FORMAT_SHORT_DAY_DATE:i.FORMAT_SHORT_DAY_DATETIME}`),E="date"===n?"LL":"LL HH:mm:ss";let b;switch(t){case c.full:b=l.format(d);break;case c.default:b=l.format(E);break;case c.relative:{const e=+l-+s;b=e<=0?a.duration(e).humanize(!0):r.i18n.t(`${o}:${i.FUTURE_AFTER}`,{time:a.duration(e).humanize()});break}case c.past:b=a.duration(Math.min(+l-+s,0)).humanize(!0);break;case c.future:b=r.i18n.t(`${o}:${i.FUTURE_AFTER}`,{time:a.duration(Math.max(+l-+s,0)).humanize()});break;case c.accurate:b=(()=>{const e=+l.diff(s,"days",!0).toFixed(1);let t="";const a=l.year()<s.year()?"lastYear":e<-2||l.isBefore(s.clone().add(-1,"day"),"day")?"twoDaysBefore":l.isSame(s.clone().add(-1,"day"),"day")?"yesterday":l.isSame(s,"day")?"sameDay":e<2&&l.isSame(s.clone().add(1,"day"),"day")?"nextDay":e<7?"nextWeek":"default";switch(a){case"sameDay":case"yesterday":t=`${r.i18n.t(`${o}:${"yesterday"===a?i.YESTERDAY:i.TODAY}`)}${"date"===n?"":` ${l.format("HH:mm")}`}`;break;case"lastYear":default:t=l.format(d);break;case"twoDaysBefore":t=l.format(m)}return t})();break;default:b=l.format(l.year()===s.year()?p:u)}return b}},65549:(e,t,n)=>{n.d(t,{Q:()=>r});var a=n(41030);function r(e,t){return null==e?void 0:e.replace(/{{(.*?)}}/g,((e,n)=>(0,a.get)(t,n.trim())))}},67101:(e,t,n)=>{n.d(t,{u:()=>g});var a=n(18769),r=n(77019),o=n(30348),i=n(41030),l=n(75321);function s(e,t,n,a){let r=null!=e?e:[];for(const e of null!=t?t:[]){var o,s;const t=null!==(o=null===(s=r)||void 0===s?void 0:s.findIndex((t=>t.id===e.id)))&&void 0!==o?o:-1,{messages:g,toolCall:T}=e;if("string"==typeof(null==T?void 0:T.arguments)){T.originalArguments=T.arguments;try{T.arguments=JSON.parse(T.arguments)}catch(e){T.arguments={},T.argumentsParseFailed=!0,T.argumentsParseError=e}}if(-1===t){var d;const t={...e};if(void 0!==a&&(t.aiEmployeeId=a),"create_view"===(null===(d=t.toolCall)||void 0===d?void 0:d.name)&&"completed"===t.state){const e=u(g,n);e&&(t.generatedView=e)}r=Array.isArray(g)&&g.length>0?[...r,{...t,messages:c(g)}]:[...r,t]}else{var E,b,f,v;const o=r[t],s=(0,i.pick)(e,["id","upstream","parent","state","instruction","toolCall","isError","hidden","startTime","endTime","requestHumanAction","humanAction","username","cmd"]);var h;if(void 0!==a&&(s.aiEmployeeId=a),Array.isArray(g)&&g.length>0&&(s.messages=c([...null!==(h=o.messages)&&void 0!==h?h:[],...g])),!o.generatedView&&["create_view"].includes(null!==(E=null===(b=s.toolCall)||void 0===b?void 0:b.name)&&void 0!==E?E:null===(f=o.toolCall)||void 0===f?void 0:f.name)&&"completed"===(null!==(v=s.state)&&void 0!==v?v:o.state)){const e=u(g,n);e&&(s.generatedView=e)}if(!o.generatedView&&!s.generatedView){const e=p(g);e&&(e.withContexts={RESPONSE:m(s.messages)},e.asyncConstructedView=(0,l.e)(e,n),s.generatedView=e)}(0,i.isMatch)(o,s)||(r=[...r.slice(0,t),{...o,...s},...r.slice(t+1)])}}return r}function c(e){const t=[];let n;for(const a of e){if(n&&n===a.role){const e=t[t.length-1];e.parts=[...e.parts,...a.parts]}else t.push({...a});n=a.role}for(const e of t)e.parts=d(e.parts);return t}function d(e){const t=[];let n,a;for(const i of e){var r,o;"text"===n&&"text"===i.type?t[t.length-1].text+=i.text:"stream"===a&&"data"===i.type&&"stream"===(null===(r=i.data)||void 0===r?void 0:r.type)?t[t.length-1].data.message+=i.data.message:t.push({...i}),n=i.type,a="data"===i.type?null===(o=i.data)||void 0===o?void 0:o.type:void 0}return t}function u(e,t){if(e)for(const n of e)if("tool"===n.role)for(const e of n.parts)if("text"===e.type)try{const n=JSON.parse(e.text);return n.asyncConstructedView=(0,l.e)(n,t),n}catch{}}function p(e){if(e)for(const n of e)if("tool"===n.role)for(const e of n.parts){var t;if("data"===e.type&&"static_data_view"===(null===(t=e.data)||void 0===t?void 0:t.type))return{viewId:e.data.viewId,code:e.data.code,from:e.data.from,isStaticData:!0}}}function m(e){for(const t of e)if("tool"===t.role)for(const e of t.parts)if("text"===e.type)try{return JSON.parse(e.text)}catch(e){console.error("Failed to parse static data response as JSON:",e)}return null}function E(e,t,n){if(Array.isArray(n))return n;if(!Array.isArray(t.spec))return null!=e?e:[];const a=e?[...e]:[];for(const e of t.spec){const t=a.findIndex((t=>t.name===e.name));if(-1===t){var r;const t={...e};null!==(r=t.serviceFlowActivities)&&void 0!==r||(t.serviceFlowActivities=[]),a.push(t)}else{const n=b(a[t].serviceFlowActivities,e.serviceFlowActivities);a[t]={...a[t],...e,serviceFlowActivities:n}}}return a}function b(e,t){let n=null!=e?e:[];if(!Array.isArray(t)||0===t.length)return n;for(const e of t){const t=n.findIndex((t=>t.taskId?t.taskId===e.taskId:t.name===e.name));n=-1===t?[...n,e]:[...n.slice(0,t),{...n[t],...e},...n.slice(t+1)]}return n}const f=(v={conversation:(e,t)=>{switch(t.type){case"sse":{const n=(0,i.pick)(t.payload,["id","state","title","startTime","endTime","projectId"]);return e&&(0,i.isMatch)(e,n)?e:{...e,...n}}case"reset":return null;case"finished":return e?{...e,finished:!0}:e}return e},tasks:(e,t)=>{switch(t.type){case"sse":{const a=t.payload.tasks;let r=e;if(!Array.isArray(a)||0===a.length)return e;for(const e of a){var n;const a=(0,i.pick)(e,["id","upstream","parent","state","plan","startTime","endTime","jobs","aiEmployeeId"]),o=r.findIndex((e=>e.id===a.id)),l=r[o];a.jobs=s(null==l?void 0:l.jobs,a.jobs,t.workspace,null!==(n=a.aiEmployeeId)&&void 0!==n?n:null==l?void 0:l.aiEmployeeId),-1===o?r=[...r,a]:(0,i.isMatch)(l,a)||(r=[...r.slice(0,o),{...l,...a},...r.slice(o+1)])}return r}case"reset":return 0===e.length?e:[]}return e},errors:(e,t)=>{switch(t.type){case"sse":{const{error:n,tasks:a}=t.payload,r=e[e.length-1];let o;return o=null!=a&&a.length?a[a.length-1].id:null==r?void 0:r.taskId,"string"==typeof n&&n&&r?e.slice(0,-1).concat({taskId:o,error:n},{taskId:o}):r?r.error?e.concat({taskId:o}):r.taskId!==o?e.slice(0,-1).concat({taskId:o}):e:o?[{taskId:o}]:e}case"reset":return 0===e.length?e:[]}return e},serviceFlows:(e,t)=>{switch(t.type){case"sse":{const n=t.payload.serviceFlows;let a=e;if(!Array.isArray(n)||0===n.length)return e;for(const e of n){const t=(0,i.pick)(e,["taskId","flowInstanceId","name","spec","space"]),n=a.findIndex((e=>e.taskId===t.taskId)),r=a[n];t.spec=E(null==r?void 0:r.spec,t,e.fullSpec),-1===n?a=[...a,t]:(0,i.isMatch)(r,t)||(a=[...a.slice(0,n),{...r,...t},...a.slice(n+1)])}return a}case"reset":return 0===e.length?e:[]}return e}},(e,t)=>Object.fromEntries(Object.entries(v).map((n=>{let[a,r]=n;return[a,r(e[a],t)]}))));var v;const h=500;function g(e,t,n,i){const[{conversation:l,tasks:s,serviceFlows:c,errors:d},u]=(0,a.useReducer)(f,null,(()=>({conversation:null,tasks:[],serviceFlows:[],errors:[]}))),p=(0,a.useRef)(),m=(0,a.useRef)([]),E=(0,a.useRef)(n),b=(0,a.useRef)(1e3*(null!=i?i:2)),v=(0,a.useRef)(null),g=(0,a.useCallback)((()=>{E.current=!1,v.current&&(v.current(),v.current=null)}),[]),T=(0,a.useCallback)((async()=>{E.current=!0,u({type:"reset"});let t,n=!0;for(const a of m.current){if(E.current){let e=b.current;a.time&&t&&(e=Math.min(Math.max(h,1e3*(a.time-t)),e)),t=a.time,n||(await new Promise((t=>{v.current=t,setTimeout(t,e)})),v.current=null)}u({type:"sse",payload:a,workspace:e}),n=!1}u({type:"finished"})}),[e]);return(0,a.useEffect)((()=>{u({type:"reset"}),m.current=[],p.current=void 0;let n,a=!1,i=!1;const l=async(t,l,s)=>{if(!i){i=!0,n=new AbortController;try{const c=await(null!==t||l?(0,r.createSSEStream)(`${(0,o.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations/${e}/messages`,{signal:n.signal,method:"POST",body:JSON.stringify(l?{action:l}:{content:t,cmd:s}),headers:{"Content-Type":"application/json"}}):(0,r.createSSEStream)(`${(0,o.getBasePath)()}api/gateway/logic.llm.aiops_service/api/v1/elevo/conversations/${e}/stream`,{signal:n.signal})),d=await c;let p,f=!0;for await(const t of d){if(a)return void(i=!1);if(E.current){let e=b.current;t.time&&p&&(e=Math.min(Math.max(h,1e3*(t.time-p)),e)),p=t.time,f||(await new Promise((t=>{v.current=t,setTimeout(t,e)})),v.current=null)}m.current.push(t),u({type:"sse",payload:t,workspace:e}),f=!1}u({type:"finished"})}catch(e){console.error("sse failed",e),(0,o.handleHttpError)(e)}finally{i=!1}}};return p.current=async(e,t,n)=>{l(t,n)},(null==t?void 0:t.conversationId)===e?l(t.content,void 0,t.cmd):l(null),()=>{var e;a=!0,null===(e=n)||void 0===e||e.abort()}}),[e,t]),{conversation:l,tasks:s,serviceFlows:c,errors:d,humanInputRef:p,skipToResults:g,watchAgain:T}}},67993:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".progress-line--CX_xuAHC{--breathing-color:rgba(205,205,217,0.7);--breathing-color-2:rgba(205,205,217,0);display:flex;flex-direction:column}.progress-line--CX_xuAHC .step--YXd66tSR{position:relative;display:flex;align-items:center;padding:10px 4px 10px 16px;color:rgba(0,0,0,0.5)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5{position:absolute;top:0;bottom:0;left:14px;width:1px}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .line--BUSBjzxD{width:1px;height:100%;background:linear-gradient(172deg,rgba(205,205,217,0) 0%,#cdcdd9 46%,rgba(205,205,217,0) 100%)}.progress-line--CX_xuAHC .step--YXd66tSR .axis--T4nVxQt5 .dot--TPMEta87{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:5px;height:5px;background:rgba(205,205,217,1);border-radius:50%}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF{padding:3px;margin:0 8px 0 12px;border-radius:10px;line-height:1;background:#ffffff}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .count--RdZcMYhZ{font-weight:400}.progress-line--CX_xuAHC .step--YXd66tSR .progress--alc7SspF .total--BKoLTm8c{opacity:0.6}.progress-line--CX_xuAHC .step--YXd66tSR .description--AyfMh1_M{flex:1;color:#999}.progress-line--CX_xuAHC .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{font-weight:600}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .line--BUSBjzxD{background:linear-gradient(172deg,rgba(242,76,37,0) 0%,rgba(242,76,37,0.3) 47%,rgba(242,76,37,0) 100%)}.failed--Q9TADo_k .step--YXd66tSR:last-child .axis--T4nVxQt5 .dot--TPMEta87{background:rgba(255,154,120,1)}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF{background:#ffd6d6}.failed--Q9TADo_k .step--YXd66tSR:last-child .progress--alc7SspF .count--RdZcMYhZ{color:#f44336}",""]),i.locals={"progress-line":"progress-line--CX_xuAHC",step:"step--YXd66tSR",axis:"axis--T4nVxQt5",line:"line--BUSBjzxD",dot:"dot--TPMEta87",progress:"progress--alc7SspF",count:"count--RdZcMYhZ",total:"total--BKoLTm8c",description:"description--AyfMh1_M",failed:"failed--Q9TADo_k"};const l=i},69606:(e,t,n)=>{n.d(t,{w:()=>Y});var a=n(89575),r=n(18769),o=n.n(r),i=n(31085),l=n(51309),s=n(81735),c=n(35532),d=n(23640),u=n(48302),p=n(45619),m=n(62142),E=n(56948),b=n(64149),f=n(29755);const v={json:()=>n.e(4190).then(n.bind(n,64190)),javascript:()=>n.e(5065).then(n.bind(n,15065)),js:()=>n.e(5065).then(n.bind(n,15065)),typescript:()=>n.e(2449).then(n.bind(n,72449)),ts:()=>n.e(2449).then(n.bind(n,72449)),html:()=>Promise.all([n.e(5065),n.e(2593),n.e(4735)]).then(n.bind(n,74735)),"html-derivative":()=>Promise.all([n.e(5065),n.e(2593),n.e(4735),n.e(9251)]).then(n.bind(n,9251)),xml:()=>n.e(8263).then(n.bind(n,28263)),css:()=>n.e(2593).then(n.bind(n,62593)),markdown:()=>n.e(8311).then(n.bind(n,88311)),md:()=>n.e(8311).then(n.bind(n,88311)),mermaid:()=>n.e(8757).then(n.bind(n,58757)),mmd:()=>n.e(8757).then(n.bind(n,58757)),jsx:()=>n.e(1136).then(n.bind(n,58755)),tsx:()=>n.e(4609).then(n.bind(n,54609)),shellscript:()=>n.e(1215).then(n.bind(n,1215)),bash:()=>n.e(1215).then(n.bind(n,1215)),sh:()=>n.e(1215).then(n.bind(n,1215)),shell:()=>n.e(1215).then(n.bind(n,1215)),zsh:()=>n.e(1215).then(n.bind(n,1215)),python:()=>n.e(2510).then(n.bind(n,82510)),py:()=>n.e(2510).then(n.bind(n,82510)),go:()=>n.e(5498).then(n.bind(n,75498)),sql:()=>n.e(1120).then(n.bind(n,21120))},h={"light-plus":m.A,"dark-plus":E.A},g=(0,b.q6)({langs:v,themes:h,engine:()=>(0,f.Mk)(n.e(5032).then(n.bind(n,75032)))}),{codeToHtml:T,codeToHast:A,codeToTokensBase:_,codeToTokens:x,codeToTokensWithThemes:S,getSingletonHighlighter:k,getLastGrammarState:w}=(0,b.CZ)(g,{guessEmbeddedLanguages(e,t){if("markdown"===t||"md"===t)return["mermaid"]}});var y=n(74269),C=n(74650),I=n(96271);let R;let O=0;const N=new DOMParser,M=new XMLSerializer;function F(){return async e=>{const t=[];(0,y.YR)(e,"element",((e,a,r)=>{if(!r||"element"!==r.type||"pre"!==r.tagName||"code"!==e.tagName)return;const o=function(e){const t=e.properties.className||[];for(const e of t)if("language-"===e.slice(0,9))return e.slice(9).toLowerCase();return null}(e);"mermaid"===o&&t.push((async()=>{const t="mermaid-"+O++;let o;try{const a=await(R||(R=async function(){const e=(await Promise.all([n.e(8324),n.e(7367)]).then(n.bind(n,67367))).default;return e.initialize({startOnLoad:!1,theme:"base",themeVariables:{fontSize:"14px",lineColor:"#979797",primaryColor:"#DCD2F3",primaryBorderColor:"#0000001A"}}),e}(),R));o=(await a.render(t,(0,C.d)(e))).svg}catch(e){var i;return console.error("Error rendering mermaid diagram:",e),void(null===(i=document.getElementById(t))||void 0===i||i.remove())}const l=N.parseFromString(o,"text/html"),s=l.querySelector("svg"),c=l.createElementNS("http://www.w3.org/2000/svg","defs");c.innerHTML=`<linearGradient id="linear-gradient-${t}" x1="0%" y1="0%" x2="0%" y2="100%">\n <stop offset="0%" stop-color="#F0EBFA" />\n <stop offset="75%" stop-color="#DED4F4" />\n <stop offset="100%" stop-color="#C5C7FA" />\n</linearGradient>`,s.prepend(c);const d=l.createElementNS("http://www.w3.org/2000/svg","style");d.textContent=`\n#${t} .node rect,\n#${t} .node circle,\n#${t} .node ellipse,\n#${t} .node polygon,\n#${t} .node path {\n fill: url(#linear-gradient-${t});\n}\n#${t} .node rect {\n rx: 4;\n ry: 4;\n}\n#${t} .labelBkg {\n background-color: #f5f8ff;\n}\n#${t} .edgeLabel,\n#${t} .edgeLabel p {\n background-color: transparent;\n}\n#${t} .edgeLabel {\n color: #8c8c8c;\n font-size: 12px;\n}\n`,s.appendChild(d);const u=M.serializeToString(s),p=(0,I.f)(u,{fragment:!0}).children;r.children.splice(a,1,...p),r.properties.className=(r.properties.className||[]).concat("mermaid")})())})),await Promise.all(t)}}const D={Fragment:i.Fragment,jsx:i.jsx,jsxs:i.jsxs};function P(e){var t;let{content:n,components:a,shiki:o}=e;const[i,m]=(0,r.useState)(null),E=null!==(t=null==o?void 0:o.theme)&&void 0!==t?t:"dark-plus";return(0,r.useEffect)((()=>{let e=!1;return(async()=>{try{const t=await k({themes:[E]});if(e)return;const r=await(0,l.l)().use(s.A).use(c.A).use(d.A).use(F).use(p.A,t,{theme:E,lazy:!0,defaultLanguage:"text"}).use(u.A,{...D,passNode:!0,components:a}).process(n);e||m(r.result)}catch(t){e||(console.error("Convert markdown failed:",t),m(null))}})(),()=>{e=!0}}),[a,n,E]),i}var L=n(31078);const H={pre:n(20555).j},j={theme:"light-plus"};function Y(e){let{className:t,...n}=e;const i=(0,r.useRef)(null),{setHoverOnScrollableContent:l}=(0,r.useContext)(L.Q),s=(0,r.useCallback)((e=>{let t=!1;for(const n of e.nativeEvent.composedPath()){if(n===i.current)break;if((n instanceof HTMLTableElement||n instanceof HTMLPreElement)&&n.scrollWidth>n.clientWidth){t=!0;break}}l(t)}),[l]),c=(0,r.useCallback)((()=>{l(!1)}),[l]);return o().createElement("div",{className:t,onMouseMove:s,onMouseLeave:c},o().createElement(P,(0,a.A)({},n,{components:H,shiki:j})))}},70046:(e,t,n)=>{n.d(t,{s:()=>u});var a=n(18769),r=n.n(a),o=n(52616),i=n(30672);let l=function(e){return e.SEND_MESSAGE="SEND_MESSAGE",e.CONFIRM_TO_TERMINATE_THE_TASK_TITLE="CONFIRM_TO_TERMINATE_THE_TASK_TITLE",e}({});const s="bricks/ai-portal/ChatBox",c=o.i18n.getFixedT(null,s);var d=n(76720);function u(e){let{state:t,canChat:n}=e;const{humanInput:o,onTerminate:s,supports:u}=(0,a.useContext)(d.j),[p,m]=(0,a.useState)(!1);(0,a.useEffect)((()=>{m(!1)}),[t]);const E=(0,a.useCallback)((async()=>{try{await(0,i.ui)({type:"confirm",title:c(l.CONFIRM_TO_TERMINATE_THE_TASK_TITLE),content:""})}catch{return}s(),m(!0)}),[s]);return r().createElement(i.IV,{placeholder:c(l.SEND_MESSAGE),autoFocus:!0,submitDisabled:!n,supportsTerminate:null==u?void 0:u.intercept,terminating:p,onMessageSubmit:e=>{o("",e.detail)},onTerminate:E})}(0,o.initializeI18n)(s,{en:{SEND_MESSAGE:"Send message",CONFIRM_TO_TERMINATE_THE_TASK_TITLE:"Are you sure to terminate the task?"},zh:{SEND_MESSAGE:"发送消息",CONFIRM_TO_TERMINATE_THE_TASK_TITLE:"确定终止任务吗?"}})},75321:(e,t,n)=>{n.d(t,{e:()=>r});var a=n(43100);async function r(e,t){try{const n=await(0,a.f)();return{...await n.parseView(e.code,{workspace:t,withContexts:e.withContexts?Object.keys(e.withContexts):void 0}),viewId:e.viewId,withContexts:e.withContexts}}catch(e){return console.error("Failed to parse generated view:",e),null}}},76720:(e,t,n)=>{n.d(t,{j:()=>a});const a=(0,n(18769).createContext)({tasks:[],errors:[],humanInput:()=>{},onShare:()=>{},onTerminate:()=>{},activeExpandedViewJobId:null,setActiveExpandedViewJobId:()=>{},activeDetail:null,setActiveDetail:()=>{},submittingFeedback:!1,submittedFeedback:!1,onSubmitFeedback:()=>{},setShowFeedback:()=>{}})},77388:(e,t,n)=>{n.d(t,{_:()=>_});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(82674),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;function _(e){let{cmd:t,size:n}=e;const o=(0,a.useMemo)((()=>"serviceFlowStarting"===t.type?`/start service flow${[t.serviceFlowStarting.spaceName,t.serviceFlowStarting.flowName].filter(Boolean).map((e=>`: ${e}`)).join("")}`:`/${t.type}`),[t]);return r().createElement(r().Fragment,null,r().createElement("span",{className:i()(A.command,{[A.small]:"small"===n})},o)," ")}},78697:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".node-replay--RJPyOwC6{width:var(--cruise-canvas-node-width-large);max-width:100%;background:rgba(255,255,255,0.5);border-radius:12px;border:1px solid rgba(255,255,255,0.4);padding:4px}.finished--DCI6ewIN:not(.chat--YJT4RmwA){max-width:90vw}.node-replay--RJPyOwC6.chat--YJT4RmwA{margin-top:14px}.bar--Pae7qP58{background:rgba(184,187,205,0.3);border-radius:8px;border:1px solid rgba(255,255,255,0.4);-webkit-backdrop-filter:blur(100px);backdrop-filter:blur(100px);height:54px;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.buttons--m0009sdd{display:flex;align-items:center;gap:8px}.label--VlLhkZeC{font-weight:500}.cases--czpvOoLX,\n.projects--W1KI5fUu{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.content--rFWHJyEy{padding:0 16px 16px}.heading--jlFUCX5n{margin:26px 0 10px;color:rgba(0,0,0,0.6);line-height:20px}.tips--FzM5aSiq{font-size:12px;line-height:20px;color:rgba(0,0,0,0.35);margin:-3px 0 10px}.project--BSu5VIGZ{width:100%}.project--BSu5VIGZ::part(link){height:48px;background:rgba(255,255,255,0.5);border-radius:12px;border:1px solid rgba(255,255,255,0.4);display:flex;align-items:center;padding:0 16px;gap:6px;font-weight:500;color:#262626}.project--BSu5VIGZ::part(link):hover{color:var(--elevo-color-brand)}.tag--Hp8eFjie{display:inline-block;padding:0 4px;background:rgba(37,64,255,0.1);border-radius:4px;color:var(--elevo-color-brand)}",""]),i.locals={"node-replay":"node-replay--RJPyOwC6",finished:"finished--DCI6ewIN",chat:"chat--YJT4RmwA",bar:"bar--Pae7qP58",buttons:"buttons--m0009sdd",label:"label--VlLhkZeC",cases:"cases--czpvOoLX",projects:"projects--W1KI5fUu",content:"content--rFWHJyEy",heading:"heading--jlFUCX5n",tips:"tips--FzM5aSiq",project:"project--BSu5VIGZ",tag:"tag--Hp8eFjie"};const l=i},80865:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".toolbar--ELlNUAti{position:absolute;display:flex;align-items:center;padding:3px 5px;-webkit-user-select:none;user-select:none;background:rgba(255,255,255,0.7);box-shadow:0px 3px 14px 0px rgba(0,0,0,0.1),0px 1px 4px 0px rgba(0,0,0,0.06);border-radius:8px;border:1px solid rgba(255,255,255,0.3)}.divider--JeH8feaX{background:rgba(0,0,0,0.15);width:1px;height:16px}.toolbar--ELlNUAti > :not(:last-child){margin-right:6px}",""]),i.locals={toolbar:"toolbar--ELlNUAti",divider:"divider--JeH8feaX"};const l=i},82674:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".command--PjYZ4uqH{display:inline-block;background:rgba(37,64,255,0.06);border-radius:8px;color:#2540ff;padding:4px 6px;line-height:22px}.small--dUc9qGKv{padding:2px 6px}",""]),i.locals={command:"command--PjYZ4uqH",small:"small--dUc9qGKv"};const l=i},85036:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".expanded-view--Pl3PL2nR{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;background:rgba(247,248,250,0.5);-webkit-backdrop-filter:blur(74px);backdrop-filter:blur(74px);padding:106px var(--page-padding-right) 40px var(--page-padding-left);overflow-y:auto;display:flex;flex-direction:column;align-items:center}.nav--dLWwzH3E{position:absolute;top:39px;left:50%;transform:translate(-50%,0);list-style:none;margin:0 0 25px;padding:4px;display:flex;justify-content:start;align-items:center;background:rgba(2,0,102,0.05);box-shadow:inset 0px 1px 2px 0px #cdd1d7;border-radius:21px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.nav-button--zv2Yj10m{display:flex;align-items:center;height:34px;padding:0 26px;background:none;border:none;color:#595959;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.nav-button--zv2Yj10m:not(:last-child){margin-right:12px}.nav-button--zv2Yj10m.active--MHyqtaKu{background:rgba(255,255,255,0.6);border-radius:20px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);color:var(--elevo-color-brand);text-shadow:-0.02ex 0 0 currentColor,0.02ex 0 0 currentColor}.nav-button--zv2Yj10m:hover{color:var(--elevo-color-brand)}.body--edodw95r{width:100%;max-width:1556px}.body--edodw95r.small--Y90AL_bt{max-width:804px}.loading--UxfFogUY{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;color:#fff}.buttons--ZZYyY2LU{position:absolute;top:24px;right:24px;display:flex;gap:12px}",""]),i.locals={"expanded-view":"expanded-view--Pl3PL2nR",nav:"nav--dLWwzH3E","nav-button":"nav-button--zv2Yj10m",active:"active--MHyqtaKu",body:"body--edodw95r",small:"small--Y90AL_bt",loading:"loading--UxfFogUY",buttons:"buttons--ZZYyY2LU"};const l=i},86011:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".view-toolbar--kVhd3X5H{display:flex;align-items:center;gap:8px}.button--f3fGXpYl{display:flex;background:none;border:none;padding:3px;cursor:pointer;color:#595959}.button-lucide--J7U9FEo_{font-size:16px;padding:2px}.button--f3fGXpYl:hover{color:var(--elevo-color-brand)}",""]),i.locals={"view-toolbar":"view-toolbar--kVhd3X5H",button:"button--f3fGXpYl","button-lucide":"button-lucide--J7U9FEo_"};const l=i},86767:(e,t,n)=>{n.d(t,{A:()=>v});var a=n(72591),r=n.n(a),o=n(1740),i=n.n(o),l=n(88128),s=n.n(l),c=n(30855),d=n.n(c),u=n(93051),p=n.n(u),m=n(73656),E=n.n(m),b=n(80865),f={};f.styleTagTransform=E(),f.setAttributes=d(),f.insert=s().bind(null,"head"),f.domAPI=i(),f.insertStyleElement=p(),r()(b.A,f);const v=b.A&&b.A.locals?b.A.locals:void 0},86976:(e,t,n)=>{n.d(t,{y:()=>O});var a=n(18769),r=n.n(a),o=n(30348),i=n(53373),l=n.n(i),s=n(41030),c=n(71568),d=n(72591),u=n.n(d),p=n(1740),m=n.n(p),E=n(88128),b=n.n(E),f=n(30855),v=n.n(f),h=n(93051),g=n.n(h),T=n(73656),A=n.n(T),_=n(11190),x={};x.styleTagTransform=A(),x.setAttributes=v(),x.insert=b().bind(null,"head"),x.domAPI=m(),x.insertStyleElement=g(),u()(_.A,x);const S=_.A&&_.A.locals?_.A.locals:void 0;var k=n(36903),w=n(30672),y=n(23241),C=n(76720),I=n(40177),R=n(89064);function O(e){var t;let{job:n,noHeading:i,onSizeChange:d}=e;const u=(0,a.useMemo)((()=>(0,s.uniqueId)()),[]),{workspace:p,manuallyUpdatedViews:m}=(0,a.useContext)(C.j),E=(0,a.useRef)(null),b=(0,a.useRef)(null),f=null!==(t=null==m?void 0:m.get(n.id))&&void 0!==t?t:n.generatedView,[v,h]=(0,a.useState)(null),g=!!v&&!!f.viewId&&"config"!==f.from;(0,a.useEffect)((()=>{var e;h(null);let t=!1;return null===(e=f.asyncConstructedView)||void 0===e||e.then((e=>{t||h(e)})),()=>{t=!0}}),[f]),(0,a.useEffect)((()=>{const e=E.current;if(!e)return;const t=(0,y.d)(u),n=(0,o.unstable_createRoot)(e,{portal:t,supportsUseChildren:!0});return b.current=n,()=>{n.unmount(),t.remove(),b.current=null}}),[u]);const[T,A]=(0,a.useState)(!0),[_,x]=(0,a.useState)(!1);(0,a.useEffect)((()=>{if(A(!0),!v)return;let e=!1;return(async()=>{try{var t;const n=await(0,c.z)(v,{rootId:u,workspace:p,withContexts:v.withContexts});if(e)return;const{brick:a,context:r,functions:o,templates:i}=n;x(function(e){let t=!1;return N([].concat(e),(e=>{var n;if("eo-next-table"===e.brick)return t=!0,!0;if("div"===e.brick&&"dashboard"===(null===(n=e.properties)||void 0===n||null===(n=n.dataset)||void 0===n?void 0:n.component)){const n=e.children;if(Array.isArray(n)&&n.length>=7)return t=!0,!0}return!1})),t}(a)),await(null===(t=b.current)||void 0===t?void 0:t.render(a,{context:r,functions:o,templates:i}))}catch(e){console.error("Failed to render view:",e)}e||A(!1)})(),()=>{e=!0}}),[u,p,v]),(0,a.useEffect)((()=>{null==d||d(_?"large":"medium")}),[d,_]);const O=(0,a.useMemo)((()=>{var e;return null==v||null===(e=v.entry)||void 0===e||null===(e=e.defaultExport)||void 0===e?void 0:e.title}),[v]);return r().createElement(r().Fragment,null,i?null:r().createElement("div",{className:S.heading},r().createElement("div",{className:l()(S.title,{[k.A["shine-text"]]:v&&T})},v?O:r().createElement(w.Bj,I.Xc)),r().createElement(R.v,{job:n,canFeedback:g})),r().createElement("div",{"data-root-id":u,ref:E}))}function N(e,t){for(const n of e){if(t(n))break;Array.isArray(n.children)&&N(n.children,t)}}},88253:(e,t,n)=>{n.d(t,{o:()=>r});var a=n(18769);function r(e){return(0,a.useMemo)((()=>{const t=new Map,n=new Map;for(const a of e){a.taskId&&t.set(a.taskId,a);for(const e of a.spec)for(const t of e.serviceFlowActivities)t.taskId&&n.set(t.taskId,{activity:t,flow:a})}return{flowMap:t,activityMap:n}}),[e])}},89064:(e,t,n)=>{n.d(t,{v:()=>R});var a=n(18769),r=n.n(a),o=n(30348),i=n(52616),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(86011),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;var _=n(30672);let x=function(e){return e.FULLSCREEN="FULLSCREEN",e.FEEDBACK="FEEDBACK",e.OPEN_PREVIEW="OPEN_PREVIEW",e}({});const S="bricks/ai-portal/CreatedView",k=i.i18n.getFixedT(null,S);var w=n(76720),y=n(40177),C=n(91797),I=n(65549);function R(e){var t;let{job:n,canFeedback:i}=e;const{previewUrlTemplate:l,showJsxEditor:s,setActiveExpandedViewJobId:c,setActiveJsxEditorJob:d,manuallyUpdatedViews:u,showFeedbackOnView:p,onFeedbackOnView:m,feedbackDoneViews:E}=(0,a.useContext)(w.j),b=null!==(t=null==u?void 0:u.get(n.id))&&void 0!==t?t:n.generatedView,f=(0,C.G)(b.viewId,p)||(null==E?void 0:E.has(b.viewId)),v=i&&!!b.viewId&&"config"!==b.from,h=(0,a.useCallback)((()=>{c(n.id)}),[n.id,c]);return r().createElement("div",{className:A["view-toolbar"]},s&&r().createElement("button",{className:A.button,onClick:()=>{null==d||d(n)}},r().createElement(_.Bj,{lib:"antd",icon:"bug"})),p&&!f&&v&&r().createElement("button",{className:`${A.button} ${A["button-lucide"]}`,title:k(x.FEEDBACK),onClick:()=>null==m?void 0:m(b.viewId)},r().createElement(_.Bj,y.mJ)),!(!b.viewId||b.withContexts||!l)&&r().createElement("button",{className:`${A.button} ${A["button-lucide"]}`,title:k(x.OPEN_PREVIEW),onClick:()=>{window.open(`${(0,o.getBasePath)().slice(0,-1)}${(0,I.Q)(l,{viewId:b.viewId})}`,"_blank")}},r().createElement(_.Bj,{lib:"lucide",icon:"external-link"})),r().createElement("button",{className:A.button,title:k(x.FULLSCREEN),onClick:h},r().createElement(_.Bj,{lib:"easyops",icon:"expand"})))}(0,i.initializeI18n)(S,{en:{FULLSCREEN:"Fullscreen",FEEDBACK:"Feedback",OPEN_PREVIEW:"Open preview"},zh:{FULLSCREEN:"全屏",FEEDBACK:"反馈",OPEN_PREVIEW:"打开预览"}})},90108:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,".human-action--WMMvJhMD{margin-top:22px}.canvas--mQCtCDkd{display:flex;justify-content:center;align-items:center;padding:24px 12px;background:rgba(62,67,102,0.05);box-shadow:0px 1px 0px 0px rgba(255,255,255,0.5);border-radius:9px}",""]),i.locals={"human-action":"human-action--WMMvJhMD",canvas:"canvas--mQCtCDkd"};const l=i},91525:(e,t,n)=>{n.d(t,{A:()=>l});var a=n(36758),r=n.n(a),o=n(40935),i=n.n(o)()(r());i.push([e.id,'.shine-text--t2t9tIJp{color:transparent;background:linear-gradient(to right,var(--shine-text-color) 0%,var(--shine-text-color) 40%,var(--shine-text-highlight-color) 50%,var(--shine-text-color) 60%,var(--shine-text-color) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:shineText--ycIJ4nxc 2s infinite linear}@keyframes shineText--ycIJ4nxc{0%{background-position:-50% 50%}100%{background-position:-250% 50%}}.markdown--t5EHw6k4 a{color:var(--elevo-color-brand)}.markdown--t5EHw6k4 a:hover{color:var(--elevo-color-brand-hover)}.markdown--t5EHw6k4 a:active{color:var(--elevo-color-brand-active)}.markdown--t5EHw6k4 .shiki{font-family:"Fira Code","Fira Mono",Menlo,Consolas,"DejaVu Sans Mono",monospace;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;hyphens:none;font-size:13px;padding:1em;margin:0.5em 0;overflow-x:auto;border-radius:9px}.markdown--t5EHw6k4 .shiki.light-plus{background:hsl(230,1%,98%)!important}.markdown--t5EHw6k4 table{width:100%;overflow-x:auto;border-collapse:collapse}.markdown--t5EHw6k4 tr{border-top:1px solid #ccd1de}.markdown--t5EHw6k4 td,.markdown--t5EHw6k4 th{border:1px solid #ccd1de;padding:6px 13px}.markdown--t5EHw6k4{overflow-wrap:break-word}.markdown--t5EHw6k4:not(:first-child){margin-top:6px}.markdown--t5EHw6k4 p{margin:1em 0}.markdown--t5EHw6k4 > :first-child,\n.markdown-wrapper--TGg3xHyX > :first-child{margin-top:0}.markdown--t5EHw6k4 > :last-child,\n.markdown-wrapper--TGg3xHyX > :last-child{margin-bottom:0}.table-container--hekbaxrD{padding:8px 8px 10px;border-radius:12px;border:1px solid #e2e2ec;background:#ffffff}.table-container--hekbaxrD:not(:first-child){margin-top:6px}',""]),i.locals={"shine-text":"shine-text--t2t9tIJp",shineText:"shineText--ycIJ4nxc",markdown:"markdown--t5EHw6k4","markdown-wrapper":"markdown-wrapper--TGg3xHyX","table-container":"table-container--hekbaxrD"};const l=i},91797:(e,t,n)=>{n.d(t,{G:()=>i});var a=n(81752),r=n(18769);const o=new Map;function i(e,t){const[n,i]=(0,r.useState)(!0);return(0,r.useEffect)((()=>{if(!e||!t)return void i(!0);let n=o.get(e);void 0===n&&(n=async function(e){var t;const n=await(0,a.y)("LLM_WEB_VIEW_INFO@EASYOPS",e,{fields:"feedback.instanceId"},{priority:"low"});return!(null==n||null===(t=n.feedback)||void 0===t||!t.length)}(e),o.set(e,n));let r=!1;return n.then((e=>{r||i(e)})),()=>{r=!0}}),[e,t]),n}},94625:(e,t,n)=>{n.d(t,{k:()=>O});var a=n(18769),r=n.n(a),o=n(53373),i=n.n(o),l=n(52616),s=n(72591),c=n.n(s),d=n(1740),u=n.n(d),p=n(88128),m=n.n(p),E=n(30855),b=n.n(E),f=n(93051),v=n.n(f),h=n(73656),g=n.n(h),T=n(8590),A={};A.styleTagTransform=g(),A.setAttributes=b(),A.insert=m().bind(null,"head"),A.domAPI=u(),A.insertStyleElement=v(),c()(T.A,A);const _=T.A&&T.A.locals?T.A.locals:void 0;let x=function(e){return e.YES="YES",e.NO="NO",e.SUBMIT="SUBMIT",e.RESET="RESET",e.FEEDBACK_NODE_TITLE="FEEDBACK_NODE_TITLE",e.PROBLEM_FEEDBACK="PROBLEM_FEEDBACK",e.PROBLEM_FEEDBACK_PLACEHOLDER="PROBLEM_FEEDBACK_PLACEHOLDER",e.IS_THE_TASK_PLAN_COMPLETE="IS_THE_TASK_PLAN_COMPLETE",e.IS_THE_TASK_PLAN_LOGICALLY_CORRECT="IS_THE_TASK_PLAN_LOGICALLY_CORRECT",e.ARE_THE_TASK_PLAN_STEPS_CONCISE="ARE_THE_TASK_PLAN_STEPS_CONCISE",e.ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE="ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE",e.IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT="IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT",e.THANKS_FOR_YOUR_FEEDBACK="THANKS_FOR_YOUR_FEEDBACK",e}({});const S="bricks/ai-portal/NodeFeedback",k=l.i18n.getFixedT(null,S);var w=n(30672),y=n(40177),C=n(76720);let I;function R(){return I||(I=[{label:`1. ${k(x.IS_THE_TASK_PLAN_COMPLETE)}`,value:"计划完备",group:"plan"},{label:`2. ${k(x.IS_THE_TASK_PLAN_LOGICALLY_CORRECT)}`,value:"逻辑正确",group:"plan"},{label:`3. ${k(x.ARE_THE_TASK_PLAN_STEPS_CONCISE)}`,value:"步骤精简",group:"plan"},{label:`4. ${k(x.ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE)}`,value:"结论准确",group:"result"},{label:`5. ${k(x.IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT)}`,value:"支撑证据充足",group:"result"}]),I}function O(e){let{className:t}=e;const{submittingFeedback:n,submittedFeedback:o,setShowFeedback:l,onSubmitFeedback:s}=(0,a.useContext)(C.j),c=(0,a.useRef)(null),d=R(),[u,p]=(0,a.useState)(!1),m=(0,a.useCallback)((e=>{var t,n;if(e.preventDefault(),p(!0),null===(t=c.current)||void 0===t||!t.reportValidity())return;const a=new FormData(c.current),r=[],o=[];for(let e=0;e<d.length;e++){const t=a.get(`feedback-check-${e}`);t&&("plan"===d[e].group?r.push(t):o.push(t))}s({plan:r,result:o,feedback:null!==(n=a.get("feedback"))&&void 0!==n?n:""})}),[d,s]),E=(0,a.useCallback)((e=>{var t;e.preventDefault(),p(!1),null===(t=c.current)||void 0===t||t.reset()}),[]);return o?r().createElement("div",{className:`${_["node-feedback"]} ${_.submitted}`},k(x.THANKS_FOR_YOUR_FEEDBACK)):r().createElement("div",{className:i()(_["node-feedback"],t)},r().createElement("div",{className:_.heading},r().createElement("div",{className:_.title},k(x.FEEDBACK_NODE_TITLE)),r().createElement(w.Py,{icon:y.LQ,variant:"mini",onClick:()=>l(!1)})),r().createElement("form",{className:i()(_.form,{[_.validate]:u}),ref:c},d.map(((e,t)=>r().createElement("div",{key:t,className:`${_["form-item"]} ${_.horizontal}`},r().createElement("div",{className:_.label},e.label),r().createElement("div",{className:_.options},r().createElement("label",{className:_.radio},r().createElement("input",{type:"radio",required:!0,name:`feedback-check-${t}`,value:e.value}),r().createElement("span",null,k(x.YES))),r().createElement("label",{className:_.radio},r().createElement("input",{type:"radio",required:!0,name:`feedback-check-${t}`,value:""}),r().createElement("span",null,k(x.NO))))))),r().createElement("div",{className:`${_["form-item"]} ${_.vertical}`},r().createElement("label",{htmlFor:"feedback-content"},k(x.PROBLEM_FEEDBACK)),r().createElement("textarea",{id:"feedback-content",name:"feedback",placeholder:k(x.PROBLEM_FEEDBACK_PLACEHOLDER),rows:2})),r().createElement("div",{className:_.submit},r().createElement(w.Gx,{themeVariant:"elevo",type:"text",onClick:E},k(x.RESET)),r().createElement(w.Gx,{themeVariant:"elevo",type:"primary",shape:"round",onClick:m,disabled:n},k(x.SUBMIT)))))}(0,l.initializeI18n)(S,{en:{YES:"Yes",NO:"No",SUBMIT:"Submit",RESET:"Reset",FEEDBACK_NODE_TITLE:"How do you think Elevo has done this task?",PROBLEM_FEEDBACK:"Problem feedback",PROBLEM_FEEDBACK_PLACEHOLDER:"Please describe the problem you encountered.",IS_THE_TASK_PLAN_COMPLETE:"Is the task plan complete:",IS_THE_TASK_PLAN_LOGICALLY_CORRECT:"Is the task plan logically correct:",ARE_THE_TASK_PLAN_STEPS_CONCISE:"Are the task plan steps concise:",ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE:"Are the analytical conclusions accurate:",IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT:"Is the evidence supporting the conclusions sufficient:",THANKS_FOR_YOUR_FEEDBACK:"Thank you for helping us become better."},zh:{YES:"是",NO:"否",SUBMIT:"提交",RESET:"重置",FEEDBACK_NODE_TITLE:"Elevo 完成这项任务的效果如何?",PROBLEM_FEEDBACK:"问题反馈",PROBLEM_FEEDBACK_PLACEHOLDER:"欢迎留下您的意见",IS_THE_TASK_PLAN_COMPLETE:"任务计划是否完备:",IS_THE_TASK_PLAN_LOGICALLY_CORRECT:"任务计划是否逻辑正确:",ARE_THE_TASK_PLAN_STEPS_CONCISE:"任务计划步骤是否精简:",ARE_THE_ANALYTICAL_CONCLUSIONS_ACCURATE:"分析结论是否准确:",IS_THE_EVIDENCE_SUPPORTING_THE_CONCLUSIONS_SUFFICIENT:"结论的支撑证据是否充足:",THANKS_FOR_YOUR_FEEDBACK:"感谢你帮我们变得更好。"}})},98153:(e,t,n)=>{n.d(t,{A:()=>O});var a=n(89575),r=n(18769),o=n.n(r),i=n(52616),l=n(72591),s=n.n(l),c=n(1740),d=n.n(c),u=n(88128),p=n.n(u),m=n(30855),E=n.n(m),b=n(93051),f=n.n(b),v=n(73656),h=n.n(v),g=n(78697),T={};T.styleTagTransform=h(),T.setAttributes=E(),T.insert=p().bind(null,"head"),T.domAPI=d(),T.insertStyleElement=f(),s()(g.A,T);const A=g.A&&g.A.locals?g.A.locals:void 0;var _=n(30672),x=n(76720),S=n(40177);let k=function(e){return e.WATCH_AGAIN="WATCH_AGAIN",e.TRY_IT_OUT="TRY_IT_OUT",e.CASE_REPLAYING="CASE_REPLAYING",e.CASE_REPLAY_FINISHED="CASE_REPLAY_FINISHED",e.SKIP_TO_RESULTS="SKIP_TO_RESULTS",e.OTHER_CASES="OTHER_CASES",e.PROJECT_TIPS="PROJECT_TIPS",e.GET_STARTED_WITH_PROJECTS_PREFIX="GET_STARTED_WITH_PROJECTS_PREFIX",e.PROJECTS="PROJECTS",e.GET_STARTED_WITH_PROJECTS_SUFFIX="GET_STARTED_WITH_PROJECTS_SUFFIX",e}({});const w="bricks/ai-portal/NodeReplay",y=i.i18n.getFixedT(null,w),C=n.p+"images/b567cca3.png";var I=n(53373),R=n.n(I);function O(e){let{finished:t,ui:n}=e;const{conversationId:i,showCases:l,exampleProjects:s,skipToResults:c,watchAgain:d,tryItOut:u}=(0,r.useContext)(x.j);return o().createElement("div",{className:R()(A["node-replay"],{[A.finished]:t,[A.chat]:"chat"===n})},o().createElement("div",{className:A.bar},o().createElement("div",{className:A.label},y(t?k.CASE_REPLAY_FINISHED:k.CASE_REPLAYING)),o().createElement("div",{className:A.buttons},t?o().createElement(_.Gx,{themeVariant:"elevo",onClick:d},y(k.WATCH_AGAIN)):o().createElement(_.Gx,{themeVariant:"elevo",onClick:c},y(k.SKIP_TO_RESULTS)),o().createElement(_.Gx,{type:"primary",themeVariant:"elevo",onClick:u},y(k.TRY_IT_OUT)))),t&&o().createElement("div",{className:A.content},!l||l.length>0&&o().createElement(o().Fragment,null,o().createElement("div",{className:A.heading},y(k.OTHER_CASES)),l?o().createElement("ul",{className:A.cases},l.filter((e=>e.conversationId!==i)).slice(0,3).map((e=>o().createElement("li",{key:e.conversationId},o().createElement(_.p9,{caseTitle:e.title,summary:e.summary,url:e.url}))))):o().createElement(_.Bj,(0,a.A)({className:A.loading},S.Xc))),!s||s.length>0&&o().createElement(o().Fragment,null,o().createElement("div",{className:A.heading},y(k.GET_STARTED_WITH_PROJECTS_PREFIX),o().createElement("span",{className:A.tag},y(k.PROJECTS)),y(k.GET_STARTED_WITH_PROJECTS_SUFFIX)),o().createElement("div",{className:A.tips},y(k.PROJECT_TIPS)),s?o().createElement("ul",{className:A.projects},s.slice(0,2).map((e=>o().createElement("li",{key:e.instanceId},o().createElement(_.EM,{className:A.project,url:e.url},o().createElement("img",{src:C,width:16,height:16}),e.name))))):o().createElement(_.Bj,(0,a.A)({className:A.loading},S.Xc)))))}(0,i.initializeI18n)(w,{en:{WATCH_AGAIN:"Watch again",TRY_IT_OUT:"Try it out",CASE_REPLAYING:"The case is replaying...",CASE_REPLAY_FINISHED:"The case replay has finished.",SKIP_TO_RESULTS:"Skip to results",OTHER_CASES:"Other cases",PROJECT_TIPS:"Start your project collaboration journey and achieve shared goals with team members and AI employees.",GET_STARTED_WITH_PROJECTS_PREFIX:"Get started with ",PROJECTS:"Projects",GET_STARTED_WITH_PROJECTS_SUFFIX:""},zh:{WATCH_AGAIN:"再次观看",TRY_IT_OUT:"尝试同款",CASE_REPLAYING:"案例回放中...",CASE_REPLAY_FINISHED:"案例回放完成",SKIP_TO_RESULTS:"跳转到结果",OTHER_CASES:"其他案例",PROJECT_TIPS:"开启项目协作之旅,和团队成员及多位AI数字人一起实现共同制定的目标。",GET_STARTED_WITH_PROJECTS_PREFIX:"开启 ",PROJECTS:"项目",GET_STARTED_WITH_PROJECTS_SUFFIX:" 体验"}})}}]);
|
|
2
|
+
//# sourceMappingURL=6995.cb0a8137.js.map
|