@oscloudlab/vgen-agent-assistant 0.0.17 → 0.0.18
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/stats.html +1 -1
- package/dist/stats.html.br +0 -0
- package/dist/stats.html.gz +0 -0
- package/dist/vgen-agent-assistant.es.js +13 -4
- package/dist/vgen-agent-assistant.es.js.br +0 -0
- package/dist/vgen-agent-assistant.es.js.gz +0 -0
- package/dist/vgen-agent-assistant.umd.js +1 -1
- package/dist/vgen-agent-assistant.umd.js.br +0 -0
- package/dist/vgen-agent-assistant.umd.js.gz +0 -0
- package/package.json +1 -1
package/dist/stats.html.br
CHANGED
|
Binary file
|
package/dist/stats.html.gz
CHANGED
|
Binary file
|
|
@@ -18086,7 +18086,7 @@ const useVgenChat = (props) => {
|
|
|
18086
18086
|
}
|
|
18087
18087
|
};
|
|
18088
18088
|
const toUpdateMsgs = async () => {
|
|
18089
|
-
var _a, _b, _c;
|
|
18089
|
+
var _a, _b, _c, _d;
|
|
18090
18090
|
const realChatId = chatIdRef.current || chatId;
|
|
18091
18091
|
const res = await getSesstionList({
|
|
18092
18092
|
sessionId: realChatId
|
|
@@ -18097,10 +18097,19 @@ const useVgenChat = (props) => {
|
|
|
18097
18097
|
textSummary(item.content)
|
|
18098
18098
|
)
|
|
18099
18099
|
);
|
|
18100
|
+
const oldIdSet = new Set((_b = messgaesRef.current) == null ? void 0 : _b.map((item) => item.id));
|
|
18100
18101
|
const saveMsgArr = [...messgaesRef.current];
|
|
18101
|
-
(
|
|
18102
|
-
|
|
18103
|
-
|
|
18102
|
+
(_d = (_c = res == null ? void 0 : res.messages) == null ? void 0 : _c.reverse()) == null ? void 0 : _d.forEach((item) => {
|
|
18103
|
+
const summary = textSummary(item.content);
|
|
18104
|
+
if (summary) {
|
|
18105
|
+
if (!oldMsgSummaryArr.includes(summary)) {
|
|
18106
|
+
saveMsgArr.unshift(item);
|
|
18107
|
+
}
|
|
18108
|
+
} else {
|
|
18109
|
+
if (!item.messageType || item.messageType === msgType$1.TEXT) return;
|
|
18110
|
+
if (item.id != null && !oldIdSet.has(item.id)) {
|
|
18111
|
+
saveMsgArr.unshift(item);
|
|
18112
|
+
}
|
|
18104
18113
|
}
|
|
18105
18114
|
});
|
|
18106
18115
|
setMessages(saveMsgArr);
|
|
Binary file
|
|
Binary file
|
|
@@ -18,4 +18,4 @@
|
|
|
18
18
|
opacity: 0;
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
`}));var Xi,_i,$i={exports:{}},es=(Xi||(Xi=1,_i=$i,function(){var e={}.hasOwnProperty;function t(){for(var e="",t=0;t<arguments.length;t++){var o=arguments[t];o&&(e=r(e,n(o)))}return e}function n(n){if("string"==typeof n||"number"==typeof n)return n;if("object"!=typeof n)return"";if(Array.isArray(n))return t.apply(null,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var o="";for(var a in n)e.call(n,a)&&n[a]&&(o=r(o,a));return o}function r(e,t){return t?e?e+" "+t:e+t:e}_i.exports?(t.default=t,_i.exports=t):window.classNames=t}()),$i.exports);const ts=g(es),ns=e=>{const{title:t,content:r,cancelText:o,okText:a,onOk:i,onCancel:s,onCancelCallback:l,footer:c=!0,contentType:u="center",noIcon:d=!1,blackMode:p=!1,isTip:f=!1}=e,{styles:h}=Ki();return k.jsx("div",{children:k.jsx(n.ConfigProvider,{button:{className:h.linearGradientButton},children:k.jsxs(n.Modal,{...e,title:null,footer:null,classNames:{content:ts("_vgenModal_143da_40","left"===u&&"_modalLeft_143da_107",p&&"_blackMode_143da_101")},className:ts("_modalWrapper_143da_32",f&&"_modalTipWrapper_143da_37"),children:[k.jsxs("div",{className:"_modalContent_143da_49",children:[t&&k.jsxs("div",{className:ts("_modalTitle_143da_52","left"===u&&"_modalTitleLeft_143da_52"),children:[!d&&k.jsx("img",{src:"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='18px'%20height='18px'%20viewBox='0%200%2018%2018'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e注意%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='解析合集'%20transform='translate(-347.000000,%20-127.000000)'%20fill-rule='nonzero'%3e%3cg%20id='编组-5'%20transform='translate(347.000000,%20125.000000)'%3e%3cg%20id='注意'%20transform='translate(0.000000,%202.000000)'%3e%3cpath%20d='M0,9%20C0,12.2153903%201.71539025,15.1865334%204.5,16.7942286%20C7.28460967,18.4019238%2010.7153903,18.4019238%2013.5,16.7942286%20C16.2846097,15.1865334%2018,12.2153903%2018,9%20C18,4.02943722%2013.9705627,0%209,0%20C4.02943725,0%200,4.02943722%200,9%20Z'%20id='路径'%20fill='%230064FF'%3e%3c/path%3e%3cpath%20d='M9,13.090909%20C9.29230822,13.090909%209.56241216,13.2468535%209.70856628,13.4999999%20C9.8547204,13.7531462%209.8547204,14.0650354%209.70856628,14.3181817%20C9.56241216,14.5713281%209.29230822,14.7272726%209,14.7272726%20C8.54813066,14.7272726%208.18181818,14.3609601%208.18181818,13.9090908%20C8.18181818,13.4572215%208.54813066,13.090909%209,13.090909%20L9,13.090909%20Z%20M9,3.27272725%20C9.45186934,3.27272725%209.81818182,3.63903972%209.81818182,4.09090906%20L9.81818182,11.0454545%20C9.81818182,11.4973238%209.45186934,11.8636363%209,11.8636363%20C8.54813066,11.8636363%208.18181818,11.4973238%208.18181818,11.0454545%20L8.18181818,4.09090906%20C8.18181818,3.63903972%208.54813066,3.27272725%209,3.27272725%20L9,3.27272725%20Z'%20id='形状'%20fill='%23FFFFFF'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e"}),t]}),k.jsx("div",{className:ts("center"===u&&"_modalContentText_143da_71"),children:r})]}),c&&k.jsxs("div",{className:"_modalFooter_143da_77",children:[k.jsx(n.Button,{type:"primary",className:"_btnOk_143da_85",onClick:i,children:a}),k.jsx(n.Button,{className:"_btnCancel_143da_90",onClick:()=>{null==s||s(),null==l||l()},children:o})]})]})})})},rs=t.memo(e=>{const{thinkContent:o,answerIsDone:a,isLast:i,recommendScene:l,progress:c,cookieConsume:u}=e,d=t.useMemo(()=>{let e="";switch(l){case Y.SYSTEMATIZE_LEARNING:e="正在为你为你生成学习计划...";break;case Y.SKILL_TO_KNOWLEDGE:e="正在为你生成知识点...";break;case Y.QUESTION_GENERATION:e="正在为你生成练习题...";break;case Y.EVALUATION_TASK_SCENE:e="正在为你生成能力评测...";break;case Y.DAILY_TASK_REMINDER_SCENE:e="正在为你生成每日任务...";break;default:e="饼干正在思考中..."}return e},[l]),p=t.useMemo(()=>{let e="";switch(l){case Y.SYSTEMATIZE_LEARNING:e="正在为你为你生成学习计划...";break;case Y.SKILL_TO_KNOWLEDGE:e="正在为你生成知识点...";break;case Y.QUESTION_GENERATION:e="正在为你生成练习题...";break;case Y.EVALUATION_TASK_SCENE:e="正在为你生成能力评测...";break;case Y.DAILY_TASK_REMINDER_SCENE:e="正在为你生成每日任务...";break;default:e=""}return e},[l]);return o&&!a&&i?k.jsx(s.motion.div,{initial:{opacity:0,scale:.9,y:10},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.95},className:"w-full max-w-xl bg-white rounded-[1.5rem] border border-border/40 shadow-soft overflow-hidden",children:k.jsxs("div",{className:"p-5 space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-6",children:[k.jsx("div",{className:"relative",children:k.jsx(s.motion.div,{animate:{rotate:[0,-10,10,0]},transition:{duration:3,repeat:1/0},className:"h-16 w-16 bg-orange-50 rounded-2xl flex items-center justify-center border border-orange-200",children:k.jsx("img",{src:"https://mdn.alipayobjects.com/huamei_dc6env/afts/img/gp_8T7DH1Q0AAAAAgCAAAAgAei4tAQFr/df.webp?hm_biz=muse_style",alt:"Cookie",className:"h-10 w-10 object-contain"})})}),k.jsxs("div",{className:"space-y-1",children:[k.jsx("h4",{className:"text-base font-black italic text-slate-900 tracking-tight",children:d}),k.jsx("p",{className:"text-xs font-bold text-primary animate-pulse",children:o})]})]}),p?k.jsxs("div",{className:"bg-[#FAFBFC] rounded-3xl p-6 border border-border/40 relative group overflow-hidden",children:[k.jsx("div",{className:"absolute top-0 right-0 p-4 opacity-5 rotate-12 group-hover:rotate-0 transition-transform",children:k.jsx(r.Zap,{className:"h-20 w-20 text-primary"})}),k.jsxs("div",{className:"relative z-10 space-y-4",children:[k.jsx("div",{className:"flex items-center gap-2",children:k.jsx(n.Badge,{className:"bg-primary/10 text-primary border-none text-[8px] font-black uppercase",children:"饼干进化冷知识"})}),k.jsx("p",{className:"text-sm font-medium text-slate-500 leading-relaxed italic",children:p})]})]}):null,u||c?k.jsxs("div",{className:"space-y-4",children:[c&&k.jsx("div",{className:"h-3 bg-slate-100 rounded-full overflow-hidden p-0.5 border border-border/20",children:k.jsx(s.motion.div,{initial:{width:0},animate:{width:`${c}%`},className:"h-full bg-primary rounded-full shadow-glow"})}),k.jsxs("div",{className:"flex justify-between items-center px-1",children:[k.jsxs("div",{className:"flex items-center gap-1.5",children:[k.jsx("div",{className:"h-4 w-4 rounded-full bg-orange-100 flex items-center justify-center",children:k.jsx("img",{src:"https://mdn.alipayobjects.com/huamei_dc6env/afts/img/gp_8T7DH1Q0AAAAAgCAAAAgAei4tAQFr/df.webp?hm_biz=muse_style",alt:"Cookie Icon",className:"h-3 w-3 object-contain"})}),k.jsxs("span",{className:"text-[10px] font-black text-orange-600 uppercase tracking-widest",children:["消耗 ",u," 🍪"]})]}),k.jsx("span",{className:"text-[10px] font-black text-primary uppercase",children:c?Math.round(c)+"%":""})]})]}):null]})}):null}),os=["08:00","09:00","20:00","21:00"],as=[{label:"每天",value:"daily"},{label:"工作日",value:"weekday"},{label:"周末",value:"weekend"}],is=[{label:"星期一",value:1},{label:"星期二",value:2},{label:"星期三",value:3},{label:"星期四",value:4},{label:"星期五",value:5},{label:"星期六",value:6},{label:"星期日",value:7}],ss=t.memo(e=>{const{extraInfo:r}=e,[o,a]=t.useState(null),[i,s]=t.useState(null),[l,c]=t.useState(null),[u,d]=t.useState([]),p=!!i||!!o,f=!!l||u.length>0;return k.jsxs("div",{className:"py-2",children:[k.jsx("div",{className:"mb-4",children:"你想怎么改?我来帮你定个闹钟。"}),k.jsxs("div",{className:"mb-3",children:[k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:"几点钟"}),k.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[os.map(e=>k.jsx(n.Button,{type:o===e?"primary":"default",onClick:()=>(e=>{a(e),s(null)})(e),children:e},e)),k.jsx(n.TimePicker,{format:"HH:mm",placeholder:"自定义",value:i,onChange:e=>{s(e),a(null)},className:"w-28"})]})]}),k.jsxs("div",{className:"mb-3",children:[k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:"哪天"}),k.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[as.map(e=>k.jsx(n.Button,{type:l===e.value?"primary":"default",onClick:()=>{return t=e.value,c(t),void d([]);var t},children:e.label},e.value)),k.jsx(n.Select,{mode:"multiple",placeholder:"自定义",value:u,onChange:e=>{d(e),c(null)},options:is,className:"w-40",maxTagCount:"responsive"})]})]}),k.jsx(n.Button,{type:"primary",onClick:async()=>{const e=i?i.format("HH:mm"):o;let t=u;if(l)switch(l){case"daily":t=[1,2,3,4,5,6,7];break;case"weekday":t=[1,2,3,4,5];break;case"weekend":t=[6,7]}var p;await(p={...r,reminderTimeDesc:e,cycleDays:[...t]},$.post("/api/v1.0/learning-task/config/update",p)),d([]),c(null),s(null),a(null),n.message.success("设置成功!")},disabled:!p||!f,block:!0,children:"确定"})]})}),ls=({extraInfo:e,customDiffViewer:o,handleSend:a})=>{const[i,s]=t.useState(!1);if(!e)return null;const l={update:"更新",create:"创建"}[e.action]||"编辑";({pending:"待生效",success:"已生效",failed:"失败"})[e.status]||e.status;const c={original:e.originalContent??"",new:"",diff:e.diff??"",title:e.title};return k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsxs("div",{className:"flex gap-2 items-start mb-2",children:[k.jsx(r.FileDiff,{className:"w-[18px] h-[18px] mt-1 shrink-0 text-primary-400"}),k.jsx("h4",{title:e.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:e.title||"资源内容更新"})]}),k.jsx("p",{className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:`AI 已${l}该资源的内容,点击查看修改前后的差异对比。`}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[12px] font-bold text-primary-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),o?s(!0):n.message.warning("当前宿主未接入差异组件,暂时无法查看差异")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看结果",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]}),k.jsx(n.Modal,{destroyOnHidden:!0,open:i,onCancel:()=>s(!1),title:e.title||"文本差异对比",footer:null,width:"min(1120px, 100%)",styles:{body:{padding:0}},children:null==o?void 0:o(c,{mode:"modal",onConfirmChange:()=>{s(!1),null==a||a({input:"确认保存"})},onCancelChange:()=>{s(!1),null==a||a({input:"暂不变更"})}})})]})},cs=t.memo(({content:e})=>{const n=t.useMemo(()=>(e=>{const t=[],n=/<<<([\s\S]*?)>>>/g;let r,o=0;for(;null!==(r=n.exec(e));)r.index>o&&t.push({type:"text",content:e.slice(o,r.index)}),t.push({type:"quoted",content:r[1].trim()}),o=n.lastIndex;return o<e.length&&t.push({type:"text",content:e.slice(o)}),t})(e),[e]);return k.jsx(k.Fragment,{children:n.map((e,t)=>"quoted"===e.type?k.jsx("span",{title:e.content,className:"mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-primary-100 text-primary-600 border border-primary-200 select-none transition-all",children:e.content.length>10?e.content.substring(0,10)+"...":e.content},t):k.jsx("span",{className:"whitespace-pre-wrap",children:e.content},t))})}),us={[Q.FROM_LEARN_PATH]:"定制学习计划",[Q.FROM_KNOWLEDGE_CARD]:"生成知识点",[Q.FROM_QUESTION]:"生成练习题",[Q.FROM_LEARN_TASK]:"定制"},ds=t.memo(e=>{const{messages:o,answerIsDone:a,recommendScene:i,recommendSceneData:l,setAnalyzeUrlNow:c,setConfirmAnalyzeModalVisible:d,setAnalyzeMsgShouldSave:p,taskFormSubmit:f,TaskFormFields:h,saveStudyPath:m,studyPathSaving:g,toCheckQuestions:x,toCheckVideo:A,recommendVideos:b,handleSend:y,isTaskPage:w,isDev:v,userInfo:j,cookieConsume:T,progress:S,saveMsg:R,customDiffViewer:L}=e,[O,z]=t.useState(!1),[B,H]=t.useState(!1),[G,Y]=t.useState(""),J=t.useRef(""),K=t.useRef(""),X=t.useRef(""),[_,ee]=t.useState([]);t.useEffect(()=>{ee(o)},[o]);t.useEffect(()=>{var e;O||(K.current&&(null==(e=K.current)||e.close()),X.current="")},[O]);const ne=e=>{const t=`http://www.bilibili.com/video/${e.bvid}`;null==c||c(t),null==d||d(!0),null==p||p(!0)},re=t.useMemo(()=>v?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL,[v,W,Z]),ae=e=>{navigator.clipboard.writeText(e),n.message.success("复制成功")};return t.useEffect(()=>{var e;const t=o.filter(e=>e.messageType===Q.REL_EVALUATION&&!e.evaStatus&&0!==e.evaStatus);if(!t.length||0===t.length)return;let n=t[0];const r=null==(e=N(n.extraInfo))?void 0:e.userEvaId;r&&ie(r).then(e=>{const t=o.map(t=>t.id===n.id?{...t,evaStatus:e.status}:t);ee(t)})},[o.length]),k.jsxs("div",{className:"flex flex-col gap-4",children:[[..._].reverse().map((e,t)=>{var o,l,c;let d="";e.content&&"string"==typeof e.content&&(d=e.content.includes("<think>")&&e.content.includes("</think>")?e.content.replace(/<think>|<\/think>/g,""):"");const p=N(e.extraInfo)||null;if(e.messageType===Q.FROM_PARSE_VIDEO&&(null==p?void 0:p.form))return null;if(e.messageType===Q.FROM_LEARN_TASK&&(null==p?void 0:p.form))return null;const v=t===_.length-1;return k.jsxs(s.motion.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:E("flex gap-2","user"===e.role?"flex-row-reverse":"flex-row"),children:[k.jsx("div",{className:E("w-12 h-12 rounded-2xl flex items-center justify-center shrink-0 shadow-sm","user"===e.role?"text-white":"bg-primary-200 border border-gray-100"),children:"user"===e.role?(null==j?void 0:j.avatar)?k.jsx("img",{src:null==j?void 0:j.avatar,className:"w-8 h-8",referrerPolicy:"no-referrer"}):k.jsx(r.User,{className:"w-6 h-6"}):k.jsx("img",{src:P,className:"w-10 h-10"})}),d&&!a&&v?k.jsx(rs,{thinkContent:d,answerIsDone:a,isLast:v,recommendScene:i,cookieConsume:T,progress:S}):k.jsxs("div",{className:E("flex flex-col gap-2 max-w-[85%] group mt-1","user"===e.role?"items-end":"items-start","ai"===e.role&&e.messageType!==Q.TEXT?"mb-4":""),children:[k.jsxs("div",{className:E("w-full px-4 rounded-[24px] text-[13px] leading-relaxed shadow-sm","user"===e.role?"bg-primary-600 text-white rounded-tr-none":"bg-white text-gray-800 border border-gray-100 rounded-tl-none"),children:[e.messageType===Q.NODE&&k.jsx("div",{className:"px-1 py-2 whitespace-pre-wrap break-words",children:e.content}),e.messageType!==Q.TEXT&&e.messageType||"string"!=typeof(null==e?void 0:e.content)||-1!==(null==(o=null==e?void 0:e.content)?void 0:o.indexOf("<think>"))?e.messageType!==Q.TEXT&&e.messageType?null:k.jsx("div",{className:"py-4 text-red-400",children:"思考已中断..."}):"user"===e.role?k.jsx("div",{className:"px-1 py-2 whitespace-pre-wrap break-words",children:k.jsx(cs,{content:e.content,role:e.role})}):k.jsx("div",{className:"relative",children:k.jsx(Wi,{children:e.content})}),e.messageType===Q.FROM_PARSE_VIDEO&&(null==p?void 0:p.form)&&k.jsx("div",{className:"py-4 italic text-purple-600",children:p.form.url?"视频解析请求":"视频推荐"}),e.messageType===Q.RECOMMEND_VIDEO&&(null==p?void 0:p.form)&&k.jsx("div",{className:"py-4 italic text-purple-600",children:k.jsx(Ji,{searchKey:p.form.searchKey,selectCallback:ne})}),e.messageType===Q.FROM_LEARN_TASK&&(null==p?void 0:p.form)&&k.jsx("div",{className:"my-4",children:k.jsx(n.Collapse,{defaultActiveKey:!0===p.needClarify?[e.id]:[],items:[{key:e.id,label:"创建任务信息确认",children:k.jsxs("div",{className:"bg-white",children:[k.jsx("div",{className:"border-b border-gray-100 pb-3 mb-3",children:k.jsxs("h3",{className:"text-sm font-bold text-gray-900 flex items-center",children:[k.jsx(r.User,{className:"h-4 w-4 mr-2 text-primary"}),"定制你的专属任务"]})}),k.jsxs(n.Form,{layout:"inline",className:"space-y-4",labelCol:{span:8},wrapperCol:{span:16},onFinish:f,autoComplete:"off",children:[null==h?void 0:h.map(e=>{var t,r,o;return k.jsx(n.Form.Item,{initialValue:(null==(t=null==p?void 0:p.form)?void 0:t[e.name])||void 0,label:e.display,name:e.name,rules:e.required?[{required:!0,message:`${"str"===e.type?"请输入":"请选择"}${e.display}`}]:[],style:{marginTop:"str"===e.type?"16px":"12px",width:"320px"},children:"str"===e.type?k.jsx(n.Input,{placeholder:e.desc||e.display,style:{width:"140px"}}):k.jsx(n.Checkbox.Group,{options:"pathNames"===e.name?(null==(r=null==p?void 0:p.form)?void 0:r.pathNames)||[]:"pathOptions"===e.name?(null==(o=null==p?void 0:p.form)?void 0:o.pathOptions.map(e=>e.skillName))||[]:e.options||[],style:{width:"140px"}})},e.name)}),k.jsx("div",{className:"w-full flex align-center justify-center",children:k.jsxs("div",{className:"flex gap-3",children:[k.jsx(n.Button,{type:"primary",htmlType:"submit",children:us[e.messageType]}),k.jsx(n.Button,{htmlType:"reset",children:"清空"})]})})]})]})}]})}),e.messageType===Q.LEARN_PATH_TREE&&"[object Array]"===(O=p,Object.prototype.toString.call(O))&&k.jsxs("div",{className:"mt-4",children:[p.map((e,t)=>k.jsxs("div",{className:"mb-4",children:[k.jsx("div",{className:"font-bold mb-2",children:`${t+1}. ${e.name}`}),k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:e.desc}),k.jsx(n.Tree,{treeData:e.data,fieldNames:{title:"name",key:"name"},showLine:!0})]},e.name)),k.jsxs(n.Button,{onClick:()=>null==m?void 0:m(p),type:"primary",disabled:g,loading:g,className:"w-full bg-primary-600 mt-2 flex items-center justify-center px-4 py-4 text-white text-sm font-bold shadow-md hover:shadow-lg disabled:opacity-50 disabled:shadow-none transform active:scale-[0.98]",children:[k.jsx(r.Zap,{className:"h-4 w-4 mr-2"}),"保存路径"]})]}),e.messageType===Q.REL_LEARN_PATH&&p&&k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsxs("div",{className:"flex items-start justify-between mb-2",children:[k.jsx("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.name}),k.jsx("button",{onClick:()=>(e=>{const t=`${re}/editStudyPath/${e.id}`;window.open(t,"_blank")})(p),className:"p-1.5 rounded-lg hover:bg-gray-100 text-gray-400 transition-all opacity-0 group-hover:opacity-100",children:k.jsx(r.Pencil,{className:"w-3.5 h-3.5"})})]}),k.jsx("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.desc}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsx("button",{onClick:()=>{const e=`${re}/studyMap/${p.id}`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:"进入学习"})]})]}),e.messageType===Q.REL_PLAN_TASK&&p&&k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsx("div",{className:"flex items-start justify-between mb-2",children:k.jsx("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.name})}),k.jsx("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.desc}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:()=>{const e=`${re}/myStudyPath?planId=${p.id}`;window.open(e,"_blank")},className:"flex items-center bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看计划",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),e.messageType===Q.REL_KNOWLEDGE_CARD&&p&&k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsx("div",{className:"flex items-start mb-2",children:k.jsx("h4",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.title})}),k.jsx("p",{title:p.content,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.content}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsx("button",{onClick:()=>{const e=`${re}/knowledgeDetailPage/${p.knowledgeId}`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:"立即查看"})]})]}),e.messageType===Q.REL_QUESTION&&p&&k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsx("div",{className:"flex items-start mb-2",children:k.jsxs("h4",{className:"text-[16px] font-bold text-gray-900",children:["题目批次ID:",null==p?void 0:p.batchId]})}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),null==x||x(p)},className:"whitespace-nowrap bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["去答题 (共",p.questionCenterIds.length,"题)"]})]})]}),e.messageType===Q.REL_RECORD&&p&&k.jsxs("div",{className:"py-4",children:[k.jsxs("div",{className:"pt-4 max-w-[300px]",children:[k.jsxs("div",{className:"flex gap-2 items-start mb-2",children:[k.jsx(r.Video,{className:"w-[44px] h-[26px] text-primary-400"}),k.jsx("div",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.title})]}),k.jsx("p",{className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:"点击查看视频分析结果,获取详细的视频内容解析和学习建议。"}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[12px] font-bold text-primary-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),null==A||A(p.recordId||p.id)},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看视频",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),(null==b?void 0:b.length)&&k.jsxs("div",{className:"mt-4 max-w-[300px] pt-4 border-t border-gray-100",children:[k.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[k.jsx("div",{className:"w-1 h-4 bg-gradient-to-b from-primary-400 to-primary-600 rounded-full"}),k.jsx("span",{className:"text-sm font-bold text-gray-800",children:"视频拼命解析中,先来看看这些吧~"})]}),k.jsx("div",{className:"space-y-2",children:b.map(e=>k.jsxs("div",{className:"flex items-center gap-3 p-2.5 rounded-xl bg-gradient-to-r from-gray-50 to-white hover:from-primary-50 hover:to-primary-50 transition-all duration-200 cursor-pointer group/item border border-gray-100 hover:border-primary-200 hover:shadow-md",onClick:t=>{t.stopPropagation(),(e=>{n.message.loading("视频获取中...");const{viewDetail:t,shareUserId:r,recordId:o}=e;if(t){const e=`${re}/mainPage?recordId=${o}`;window.open(e,"_blank")}else{const e=`${re}/mainPage?recordId=${o}&fromShare=true&shareUserId=${r}`;window.open(e,"_blank")}})(e)},children:[k.jsx("img",{referrerPolicy:"no-referrer",className:"w-24 h-16 rounded-lg group-hover/item:scale-105 transition-transform",src:e.pic}),k.jsxs("div",{className:"flex-1 min-w-0",children:[k.jsx("div",{title:e.title,className:"text-sm font-semibold text-gray-900 line-clamp-2 group-hover/item:text-primary-600 transition-colors",children:e.title}),k.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[k.jsx("span",{className:"text-xs text-gray-500 whitespace-nowrap",children:e.createTime.split(" ")[0]}),k.jsx("span",{className:"text-xs text-gray-300",children:"•"}),k.jsxs("span",{className:"text-xs text-gray-500 whitespace-nowrap",children:[C(e.views),"次观看"]})]})]}),k.jsx("div",{className:"opacity-0 group-hover/item:opacity-100 transition-opacity",children:k.jsx(r.ArrowRight,{className:"w-4 h-4 text-primary-500"})})]},e.recordId))})]})]}),e.messageType===Q.REL_LEARN_TASK&&p&&k.jsxs("div",{className:"py-4 group min-w-[300px] max-w-[400px]",children:[k.jsxs("div",{className:"flex items-start justify-between mb-2",children:[k.jsxs("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:["任务名称:",p.taskName]}),k.jsx("button",{onClick:()=>(e=>{const t=`${re}/createTask?manual=true&editId=${e.id}`;window.open(t,"_blank")})(p),className:"p-1.5 rounded-lg hover:bg-gray-100 text-gray-400 transition-all opacity-0 group-hover:opacity-100",children:k.jsx(r.Pencil,{className:"w-3.5 h-3.5"})})]}),k.jsxs("div",{title:p.desc,className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:["推送周期:",D(p.cycleDays||[])]}),k.jsxs("div",{title:p.desc,className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:["提醒时间:",p.reminderTimeDesc||"无"]}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsxs("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider",children:["生效时间:",p.effectiveDate]}),k.jsxs("button",{onClick:()=>{const e=`${re}/taskManagement`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看任务",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),e.messageType===Q.REL_EVALUATION&&p&&k.jsx(n.Spin,{spinning:10===(null==e?void 0:e.evaStatus),tip:"题目生成中...",children:k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsx("div",{className:"flex items-start justify-between mb-2",children:k.jsxs("h4",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:["测评方向:",p.title]})}),k.jsxs("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:["测评等级:",p.level]}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:()=>(e=>{ie(e.userEvaId).then(e=>{if(10!==e.status)if(1!==e.status){const t=`${re}/skillAssessments?evaId=${e.id}`;window.open(t,"_blank")}else n.message.success("测评生成失败,请重新生成");else n.message.warning("测评题目生成中,请稍后查看,你也可以在:个人头像 -> 测评记录 页面中查看")})})(p),className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["进入测评",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]})}),e.messageType===Q.REL_RESOURCE_EDIT&&p&&k.jsx(ls,{extraInfo:p,customDiffViewer:L,handleSend:y}),e.messageType===Q.TASK_TIP&&p&&k.jsxs("div",{className:"py-2 flex items-center gap-1",children:["学习计划已经定了,明天 ",null==p?void 0:p.reminderTimeDesc," 我叫你接着学,好吗?",k.jsxs("div",{className:"whitespace-nowrap text-green-500 cursor-pointer hover:text-green-400 hover:underline text-[11px] flex items-center gap-1 px-2.5 py-0.5 border border-green-500 rounded-full",onClick:()=>{const e=`${re}/todayTasks/taskManagement`;window.open(e,"_blank")},children:["已经在日程里了",k.jsx(r.Check,{className:"w-3.5 h-3.5"})]})]}),e.messageType===Q.TASK_EDIT&&p&&k.jsx(ss,{extraInfo:p})]}),"ai"===e.role&&e.messageType===Q.TEXT&&"string"==typeof e.content&&k.jsxs("div",{className:"flex items-center gap-2 px-1",children:[k.jsx("button",{onClick:()=>ae(e.content),className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.Copy,{className:"w-3.5 h-3.5"})}),!w&&k.jsx(n.Dropdown,{menu:{items:[{key:"convert-to-knowledge",label:"转化为知识点",onClick:()=>{(async e=>{var t,r;z(!0),H(!0),K.current&&(null==(t=K.current)||t.close()),X.current="",J.current=e;try{const t={system:"<session>"+M(e)+"</session>",message:"将该会话转化成知识点"};n.message.warning("开始生成知识点,请稍后...");const r=await(async()=>{const e=await oe({app:"vgen-web",btype:"button-event",extra:JSON.stringify({sessionId:"-1",enableSearch:!1})});return(null==e?void 0:e.data)||""})(),o=((e,t,n,r)=>te({url:"/saas/chat/sse",method:"POST",body:{...t},query:{sessionId:"-1"},headers:{"x-run-id":r||""}},{...n}))(0,{...t},{onProgress:e=>{Y(e)},onError:e=>{H(!1),Y("")},onComplete:({sessionKnowledgeData:e})=>{var t;H(!1);try{const t=N(e||"");(null==t?void 0:t.content)&&(e=>$.post("/api/v1.0/knowledge/save",e))({btype:1,data:I([t])}).then(e=>{var t,n;const r=(null==e?void 0:e.knowledgeList)||[];(null==(t=r[0])?void 0:t.knowledgeId)&&(X.current=null==(n=r[0])?void 0:n.knowledgeId)})}catch(n){z(!1),H(!1),K.current&&(null==(t=K.current)||t.close())}}},r);K.current=o}catch(o){n.message.error(o.message||"知识点转化失败"),z(!1),H(!1),K.current&&(null==(r=K.current)||r.close())}})(e.content)}}]},trigger:["hover"],children:k.jsx("button",{className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",onClick:e=>{e.stopPropagation()},children:k.jsx(r.Wand2,{className:"w-3.5 h-3.5"})})})]}),"user"===e.role&&e.messageType===Q.TEXT&&k.jsxs("div",{className:"w-full flex items-center justify-end gap-2 px-1",children:[k.jsx("button",{onClick:()=>ae(e.content),className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.Copy,{className:"w-3.5 h-3.5"})}),k.jsx(n.Tooltip,{title:"重新发送",placement:"bottom",arrow:!1,children:k.jsx("button",{onClick:()=>{y({input:e.content})},className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.RefreshCcw,{className:"w-3.5 h-3.5"})})})]}),(null==(l=null==p?void 0:p.buttonList)?void 0:l.length)&&v?k.jsx("div",{className:"w-full max-w-2xl mb-2 flex gap-4",children:null==p?void 0:p.buttonList.map((e,t)=>k.jsx(s.motion.div,{initial:{opacity:0,x:-20},animate:{opacity:1,x:0},transition:{delay:.1*t,duration:.4},children:k.jsx("button",{onClick:()=>{"sendTopic"===e.action&&y({input:e.topic})},className:"w-full group/recommend flex items-center justify-between px-4 py-2 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-primary-200 hover:bg-primary-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",children:e.topic})},e.topic+t))}):null,(null==(c=null==p?void 0:p.recommendList)?void 0:c.length)&&v?k.jsx("div",{className:"w-full max-w-2xl mb-2",children:k.jsx("div",{className:"flex flex-col gap-3",children:null==p?void 0:p.recommendList.map((e,t)=>{var n,r;const o=U[e.scene],a=(null==(n=null==q?void 0:q[e.scene])?void 0:n.pre)+"《"+e.topic+"》"+(null==(r=null==q?void 0:q[e.scene])?void 0:r.after);return k.jsx(s.motion.div,{initial:{opacity:0,x:-20},animate:{opacity:1,x:0},transition:{delay:.1*t,duration:.4},children:k.jsxs("button",{onClick:()=>{y({input:a,scene:e.scene})},className:"w-full group/recommend flex items-center justify-between p-4 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-primary-200 hover:bg-primary-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",children:[k.jsxs("div",{className:"flex items-center gap-3",children:[o&&k.jsxs("div",{className:"text-sm px-2 py-1.5 flex items-center gap-1 transition-colors rounded-md bg-primary/10 text-primary border border-primary/20",children:[k.jsx(o,{className:`${F[e.scene]} w-5 h-5`}),V[e.scene]]}),k.jsx("span",{title:e.topic,className:"flex-1 text-[15px] text-slate-700 font-medium group-hover/recommend:text-primary-600 transition-colors line-clamp-1",children:a})]}),k.jsx(u.ArrowRightOutlined,{className:"text-slate-300 group-hover/recommend:text-primary-400 opacity-100 group-hover/recommend:opacity-100 -translate-x-2 group-hover/recommend:translate-x-0 transition-all"})]})},e.topic+t)})})}):null,"ai"===e.role&&e.messageType===Q.TASK_TIP?k.jsx("div",{className:"flex items-center gap-2 px-1",children:k.jsxs("button",{onClick:()=>(e=>{null==R||R({content:"",role:"ai",messageType:Q.TASK_EDIT,toPost:!1,extraInfo:JSON.stringify({...e})})})(p),className:"flex items-center p-1.5 gap-1 text-[12px] text-gray-500 italic hover:text-gray-600 transition-colors",children:[k.jsx(r.RefreshCcw,{className:"w-3 h-3"}),"改个时间"]})}):null]})]},e.id);var O}),k.jsx(ns,{destroyOnHidden:!0,maskClosable:!1,open:O,title:B?"正在转化...":"转化完成",content:k.jsx("div",{className:"w-[140px]",children:B?k.jsxs("div",{className:"flex flex-col items-center justify-center py-8",children:[k.jsx("div",{className:"w-16 h-16 bg-primary-50 text-primary-600 rounded-2xl flex items-center justify-center mx-auto mb-6 animate-bounce",children:k.jsx(r.BookOpenText,{className:"w-8 h-8 opacity-50"})}),k.jsx("p",{className:"text-gray-600",children:G||"正在将对话内容转化为知识点..."})]}):k.jsxs("div",{className:"text-center py-4",children:[k.jsx("div",{className:"mx-auto w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4",children:k.jsx("svg",{className:"w-8 h-8 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:k.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M5 13l4 4L19 7"})})}),k.jsx("h3",{className:"text-lg font-medium text-gray-900 mb-2",children:"转化成功!"}),k.jsx("p",{className:"text-gray-600 mb-6",children:"对话内容已成功转化为知识点卡片"}),k.jsxs("div",{className:"flex justify-center gap-3",children:[k.jsx(n.Button,{type:"primary",onClick:()=>{z(!1)},children:"继续聊天"}),k.jsx(n.Button,{onClick:()=>{z(!1);const e=`${re}/knowledgeDetailPage?knowledgeId=${X.current}`;window.open(e,"_blank")},children:"查看知识点"})]})]})}),footer:null,onCancel:()=>z(!1)})]})});var ps,fs={},hs=function(){if(ps)return fs;ps=1;var e=h;if("production"===process.env.NODE_ENV)fs.createRoot=e.createRoot,fs.hydrateRoot=e.hydrateRoot;else{var t=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;fs.createRoot=function(n,r){t.usingClientEntryPoint=!0;try{return e.createRoot(n,r)}finally{t.usingClientEntryPoint=!1}},fs.hydrateRoot=function(n,r,o){t.usingClientEntryPoint=!0;try{return e.hydrateRoot(n,r,o)}finally{t.usingClientEntryPoint=!1}}}return fs}();const ms=t.forwardRef((e,r)=>{const{onChange:o,minHeight:a=150,maxHeight:i=150,placeholder:s,sendMsg:l}=e,c=t.useRef(null),[u,d]=t.useState(""),[p,f]=t.useState([]),[h,m]=t.useState([""]),[g,x]=t.useState(0);t.useImperativeHandle(r,()=>({getHtmlContent:()=>u,getStructuredData:()=>p,addText:E,addTag:T,addQuotedText:N,addInput:M,addDropdown:I,focusInput:v,clearContent:j}));const A=()=>{if(!c.current)return;const e=[];c.current.childNodes.forEach(t=>{var n,r,o;if(t.nodeType===Node.TEXT_NODE){const r=null==(n=t.textContent)?void 0:n.trim();r&&e.push({type:"text",value:r})}else if(t.nodeType===Node.ELEMENT_NODE&&(null==(r=null==t?void 0:t.dataset)?void 0:r.quote))e.push({type:"text",value:null==(o=null==t?void 0:t.dataset)?void 0:o.quote});else if(t.nodeType===Node.ELEMENT_NODE&&"BR"===t.nodeName)e.push({type:"br",value:""});else if(t.nodeType===Node.ELEMENT_NODE){const n=t;if("false"===n.getAttribute("contenteditable")){const t=n.querySelector("input"),r=n.querySelector("select"),o=n.getAttribute("data-selected-value");t&&!o?e.push({type:"input",value:t.value}):r?e.push({type:"select",value:r.value}):o?e.push({type:"select",value:o}):e.push({type:"tag",value:n.innerText.replace("🏷️","").trim()})}else if("true"===n.contentEditable){const t=n.innerText;t&&e.push({type:"text",value:t})}else{const t=n.innerText.trim();t&&e.push({type:"text",value:t})}}}),f(e)};t.useEffect(()=>{null==o||o(p)},[p]);const b=t.useCallback(((e,t=500,n=!1)=>{let r=null;return(...o)=>{const a=n&&!r;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n||e(...o)},t),a&&e(...o)}})(e=>{m(t=>{const n=t.slice(0,g+1);return n.push(e),n.slice(-50)}),x(e=>e+1)},300),[g,h]),y=()=>{if(c.current){const e=c.current.innerHTML.trim();"<br>"!==e&&"<br/>"!==e&&"<br />"!==e||(c.current.innerHTML="");const t=c.current.innerHTML;d(t),A(),b(t)}},w=(e,t)=>{var n,r;if(t&&!e){const e=document.createElement("br"),t=window.getSelection();if(!t||!t.rangeCount)return;const r=t.getRangeAt(0);r.deleteContents(),r.insertNode(e);const o=document.createRange();return o.setStartAfter(e),o.setEndAfter(e),t.removeAllRanges(),t.addRange(o),y(),void(null==(n=c.current)||n.focus())}if(!e)return;const o=window.getSelection();if(!o||!o.rangeCount)return;const a=o.getRangeAt(0);a.deleteContents(),a.insertNode(e);const i=document.createRange();i.setStartAfter(e),i.setEndAfter(e),o.removeAllRanges(),o.addRange(i),y(),null==(r=c.current)||r.focus()},v=()=>{var e;null==(e=c.current)||e.focus()},j=()=>{c.current&&(d(""),f([]),c.current.innerHTML="",y())},E=e=>{const t=document.createElement("span");t.contentEditable="true",t.innerHTML=`${e}`.replace(/\n/g,"<br>"),w(t)},T=e=>{const t=document.createElement("span");t.contentEditable="false",t.className="inline-flex items-center mx-1 px-2 py-1.5 rounded-md text-sm font-medium bg-primary/10 text-primary border border-primary/20 select-none transition-all hover:bg-primary/20";const n=document.createElement("span");n.innerHTML=`${e}`.replace(/\n/g,"<br>"),t.appendChild(n),t.appendChild((e=>{const t=document.createElement("button");return t.className="ml-1.5 p-0.5 rounded-full hover:bg-black/10 text-current/40 hover:text-current transition-colors focus:outline-none flex items-center justify-center",t.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',t.onclick=t=>{t.stopPropagation(),e.remove(),y()},t})(t)),w(t)},N=e=>{const t=document.createElement("span");t.contentEditable="false",t.className="mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-primary-50 text-primary-600 border border-primary-200 select-none transition-all hover:bg-primary-100";const n=document.createElement("span"),r=e.match(/<<<(.*?)>>>/),o=null==r?void 0:r[1];if(!o)return;const a=o.slice(0,10);n.innerHTML=`${a}...`,t.dataset.quote=e,t.appendChild(n),w(t)},M=(e,t)=>{const n=document.createElement("span");n.contentEditable="false",n.className="max-w-[400px] inline-flex items-center mx-1 px-2 py-1.5 rounded-lg bg-gray-100 focus-within:ring-2 focus-within:ring-ring";const r=document.createElement("input");r.type="text",r.value=e,r.placeholder=t||"请输入",r.className="bg-transparent border-none outline-none text-sm px-1 text-foreground",r.style.minWidth="0";const o=()=>{const e=document.createElement("span");e.style.visibility="hidden",e.style.position="absolute",e.style.whiteSpace="nowrap",e.style.fontSize="14px",e.style.fontFamily="inherit",e.textContent=r.value||t,document.body.appendChild(e);const n=Math.max(0,e.offsetWidth+10);r.style.width=`${n}px`,document.body.removeChild(e)};o(),r.oninput=()=>{o(),A()},n.appendChild(r),w(n)},I=(e,t)=>{const r=document.createElement("span");r.contentEditable="false",r.className="inline-flex items-center px-2 mx-1 py-0 rounded-lg bg-indigo-50 text-indigo-700 shadow-sm transition-all hover:bg-indigo-100",r.setAttribute("data-selected-value",t);const o=document.createElement("div");o.style.display="inline-flex",o.style.alignItems="center",hs.createRoot(o).render(k.jsx(n.Select,{defaultValue:t,className:"textareaSelect",onSelect:e=>{r.setAttribute("data-selected-value",e),A()},children:e.map(e=>k.jsx(n.Select.Option,{value:e,children:e},e))})),o.onmousedown=e=>e.stopPropagation(),r.appendChild(o),w(r)};return k.jsx("div",{className:"w-full mx-auto",children:k.jsx("div",{className:`tagTextareaContent overflow-y-auto min-h-[${a}px] max-h-[${i}px]`,style:{minHeight:a+"px",maxHeight:i+"px"},children:k.jsx("div",{ref:c,contentEditable:!0,onInput:y,className:"smartEditor smart-editor h-full focus:outline-none text-[15px] leading-relaxed text-slate-800 empty:before:content-[attr(data-placeholder)] empty:before:text-slate-300",style:{minHeight:a+"px",maxHeight:i+"px"},"data-placeholder":s,onPaste:e=>{var t,n,r;if("INPUT"===e.target.tagName)return;e.preventDefault();const o=(null==(t=e.clipboardData)?void 0:t.getData("text/plain"))||"",a=window.getSelection();if(!a||!a.rangeCount)return;const i=a.getRangeAt(0);i.deleteContents();const s=o.split("\n");s.reverse().forEach((e,t)=>{const n=document.createTextNode(e);if(i.insertNode(n),t<s.length-1){const e=document.createElement("br");i.insertNode(e)}});const l=document.createRange();l.setStartAfter(i.endContainer),l.collapse(!0),a.removeAllRanges(),a.addRange(l),y(),null==(n=c.current)||n.focus();const u=window.getSelection();if(u){const e=document.createRange(),t=null==(r=c.current)?void 0:r.lastChild;t?e.setStartAfter(t):c.current&&e.setStart(c.current,0),e.collapse(!0),u.removeAllRanges(),u.addRange(e)}},onKeyDown:e=>{if("Enter"===e.key){if(e.isComposing||e.nativeEvent.isComposing)return;e.ctrlKey?(e.preventDefault(),w(null,!0),w(null,!0)):(e.preventDefault(),null==l||l(),j())}else if(e.ctrlKey&&"z"===e.key){if(e.preventDefault(),g>0){const e=g-1,t=h[e];if(c.current){c.current.innerHTML=t,d(t),x(e),A(),c.current.focus();const n=window.getSelection();if(n){const e=document.createRange(),t=c.current.lastChild;t?e.setStartAfter(t):e.setStart(c.current,0),e.collapse(!0),n.removeAllRanges(),n.addRange(e)}}}}else if(e.ctrlKey&&"y"===e.key&&(e.preventDefault(),g<h.length-1)){const e=g+1,t=h[e];if(c.current){c.current.innerHTML=t,d(t),x(e),A(),c.current.focus();const n=window.getSelection();if(n){const e=document.createRange(),t=c.current.lastChild;t?e.setStartAfter(t):e.setStart(c.current,0),e.collapse(!0),n.removeAllRanges(),n.addRange(e)}}}}})})})}),gs="_title_1r6dj_203",xs=e=>{const{analyzeCallback:o,closeAnalysisModal:a,initUrl:i,forChatUse:s,chatVideoUrl:l,needTraceId:c=!1,sessionId:u=""}=e,[d,p]=t.useState(""),[f,h]=t.useState(!1),[m,g]=t.useState(!1),[x,A]=t.useState([]),[b,y]=t.useState([]),[w,v]=t.useState(!1),[j,E]=t.useState(!1),[T,N]=t.useState(),[M,I]=t.useState(0);t.useEffect(()=>{$.get("/api/v1.0/duration/user-duration").then(e=>{I(e)})},[]),t.useEffect(()=>{s&&l&&(p(l),C(l))},[s,l]),t.useEffect(()=>{p(i||"")},[i]);const C=e=>{const t=(e||d).split("\n");let r=[];t.map(e=>{const t=e.split(",");r=r.concat(t)}),r=r.filter(e=>{return""!==e.trim()&&(0===(t=e).indexOf("http://")||0===t.indexOf("https://"));var t}),0!==r.length?(r=Array.from(new Set(r)),r.length>3?n.message.warning("最多只能同时解析三个链接"):(A([]),S(r))):n.message.warning("请输入有效的链接")},S=e=>{var t;(t={urls:e,code:"1"},$.post("/api/v1.0/record/video/overview",t)).then(t=>{var r,o,i;if(null==t?void 0:t.some(e=>null==e?void 0:e.collection)){null==a||a();const n=[],r=e.map(e=>{const t=(e=>{const t=new URL(e),n=t.pathname.match(/\/video\/(BV\w{10})/i);return{bvid:n?n[1]:null,p:t.searchParams.get("p")||"1",recordId:t.searchParams.get("recordId")||"",code:t.searchParams.get("code")||""}})(e);return t}),o=t.map(e=>{var t;const o=r.find(t=>t.bvid===e.bvid);return{title:e.title,bvid:e.bvid+e.title,realBvid:e.bvid,seasonDisplay:e.seasonDisplay,pages:null==(t=null==e?void 0:e.pages)?void 0:t.map(t=>{const r=e.code+":::"+t.bvid+":::"+t.cid+":::"+e.title+":::"+t.duration+":::"+t.part;return(!e.seasonDisplay&&(null==o?void 0:o.p)===String(t.page)||e.seasonDisplay&&t.bvid===(null==o?void 0:o.bvid))&&n.push(r),{label:t.part,value:r,parsed:t.parsed}})}});A(n),y(o);let i=0;n.forEach(e=>{var t;const n=Number(null==(t=e.split(":::"))?void 0:t[4])||0,r=Math.ceil(n/60);i+=r});const s=1.8*i;if(M<s)return void v(!0);if(M>=s&&M<=40)return E(!0),void N(()=>()=>{B(o)});B(o)}else{if(null==t?void 0:t.some(e=>{var t;return(null==(t=null==e?void 0:e.pages)?void 0:t.length)>1}))return void n.message.warning("多合集类型链接暂不支持解析!");const e=null==t?void 0:t.map(e=>{var t;return{groupName:void 0,videoIdParamList:null==(t=null==e?void 0:e.pages)?void 0:t.map(t=>({code:e.code,bvid:t.bvid,cid:t.cid,duration:t.duration,title:t.part}))}}),a=null==(i=null==(o=null==(r=null==e?void 0:e[0])?void 0:r.videoIdParamList)?void 0:o[0])?void 0:i.duration,s=a?Math.floor(Number(a)/60):0;if(s>1.8*s)return void v(!0);if(M>=P&&M<=40)return E(!0),void N(()=>()=>{z(e)});z(e)}})},D=(e,t)=>{var r;const o=(null==(r=t.filter(e=>e.parsed))?void 0:r.length)||0;return k.jsxs("div",{className:"_collectionTitle_1r6dj_240",children:[k.jsx(n.Tooltip,{title:e,children:k.jsx("div",{className:gs,children:e})}),o?k.jsxs("div",{className:"_freeCount_1r6dj_252",children:[o,"个限时免费"]}):null]})},R=t.useMemo(()=>b.map(e=>{return{key:e.bvid,label:D(e.title,e.pages),children:(t=e.pages,o=e.title,k.jsx("div",{className:"_videoList_1r6dj_181",id:o,children:t.map(({label:e,value:t,parsed:o})=>{const a=x.includes(t);return k.jsx(n.Tooltip,{title:e.length>9?e:"",children:k.jsxs("div",{id:t,className:ts("_videoItem_1r6dj_190",a&&"_selected_1r6dj_230"),onClick:()=>{x.length>=3&&!a?n.message.warning("最多只能选择三个视频进行解析"):A(e=>{const n=[...e];return a?n.splice(n.indexOf(t),1):n.push(t),n})},children:[k.jsx("div",{className:gs,children:e}),a&&k.jsx("img",{src:"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='22px'%20height='13px'%20viewBox='0%200%2022%2013'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%2020%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='解析合集'%20transform='translate(-1073.000000,%20-560.000000)'%3e%3cg%20id='编组-17'%20transform='translate(923.000000,%20531.000000)'%3e%3cg%20id='编组-20'%20transform='translate(150.000000,%2029.000000)'%3e%3cpath%20d='M5.38653786,0%20L22,0%20L22,0%20L22,10%20C22,11.6568542%2020.6568542,13%2019,13%20L0,13%20L0,13%20L2.46336427,2.32542148%20C2.7774858,0.964228212%203.98956991,1.58888648e-15%205.38653786,0%20Z'%20id='矩形'%20fill='%230064FF'%3e%3c/path%3e%3cpath%20d='M11.3333333,10%20C11.1666667,10%2011.0555556,9.94615384%2010.9444444,9.83846154%20L8.16666667,7.14615385%20C7.94444444,6.93076923%207.94444444,6.60769231%208.16666667,6.39230769%20C8.3888889,6.17692307%208.72222223,6.17692307%208.94444444,6.39230769%20L11.3333333,8.70769231%20L17.0555556,3.16153846%20C17.2777778,2.94615385%2017.6111111,2.94615385%2017.8333333,3.16153846%20C18.0555555,3.37692308%2018.0555556,3.70000001%2017.8333333,3.91538463%20L11.7222222,9.83846154%20C11.6111111,9.94615384%2011.5,10%2011.3333333,10%20Z'%20id='路径'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e"}),o&&k.jsxs("div",{className:"_freeBadge_1r6dj_209",children:[k.jsx(r.Zap,{className:"_icon_1r6dj_222"}),"限免"]})]},t)},t)})}))};var t,o}),[x,b]),L=t.useRef(null);t.useEffect(()=>{if(m)return L.current=setTimeout(()=>{b.forEach((e,t)=>{var n;const r=document.getElementById(e.title),o=null==(n=e.pages.find(e=>x.includes(e.value)))?void 0:n.value,a=document.getElementById(o||"");null==r||r.scrollTo({top:a.offsetTop-240-200*t,behavior:"smooth"})})},0),()=>{L.current&&clearTimeout(L.current)}},[m]);const P=t.useMemo(()=>{let e=0;return x.forEach(t=>{var n;const r=Number(null==(n=t.split(":::"))?void 0:n[4])||0,o=Math.ceil(r/60);e+=o}),1.8*e},[x]),O=()=>{if(P>M)return void v(!0);let e=[];x.forEach(t=>{const n=t.split(":::"),r=e.findIndex(e=>e.groupName===n[3]);r>-1?(e[r].videoIdParamList||(e[r].videoIdParamList=[]),e[r].videoIdParamList.push({code:n[0],bvid:n[1],cid:n[2],title:n[5]})):e.push({groupName:n[3],videoIdParamList:[{code:n[0],bvid:n[1],cid:n[2],title:n[5]}]})}),e=e.map(e=>({groupName:e.groupName||void 0,videoIdParamList:e.videoIdParamList})),z(e)},z=async e=>{let t="";if(c&&u){const e={sessionId:u},n=await oe({app:"vgen-web",btype:"workflow",extra:JSON.stringify(e)});t=(null==n?void 0:n.data)||""}((e,t,n)=>$.post(`/api/v1.0/record?chatbotSessionId=${n||""}`,e,{headers:{"x-run-id":t||""}}))(e,t,u).then(t=>{g(!1),p(""),o&&o(t,e)}).catch(()=>{})},B=e=>{var t;const n=e||b;if(n.length>1)return void h(!1);h(!1);const r=null==(t=(e=>{const t=e.includes("?")?e.split("?")[1]:"",n={};if(!t)return n;const r=t.split("&");for(const o of r){const[e,t]=o.split("=");e&&(n[decodeURIComponent(e)]=decodeURIComponent(t||""))}return n})(s?l||"":d))?void 0:t.p,o=r?Number(r):1,a=null==n?void 0:n.map(e=>{var t;let n=null==(t=null==e?void 0:e.pages)?void 0:t[o-1];if(e.seasonDisplay){const t=e.pages.find(t=>{var n;return(null==(n=t.value.split(":::"))?void 0:n[1])===e.realBvid});t&&(n=t)}const r=null==n?void 0:n.value.split(":::");return{groupName:e.pages.length>1?e.title:void 0,videoIdParamList:[{code:r[0],bvid:r[1],cid:r[2],title:n.label}]}});z(a)};return k.jsxs("div",{className:"_analyzeCom_1r6dj_32",children:[k.jsx(ns,{open:f,title:"发现合集视频!",content:"该视频包含多个分集内容。是否分析整个合集?",okText:"查看合集",cancelText:"暂不",onOk:()=>{h(!1),g(!0)},onCancel:()=>{h(!1)},onCancelCallback:()=>{if(!(M<P))return M>=P&&M<=40?(E(!0),void N(()=>()=>{B()})):void B();v(!0)}}),k.jsx(ns,{destroyOnHidden:!0,style:{top:"20% !important"},open:m,contentType:"left",title:"发现合集视频!",content:k.jsxs("div",{className:"_colletionList_1r6dj_129",children:[k.jsx("div",{className:"_colletionListHeader_1r6dj_132",children:"该视频包含多个分集内容,请选择你想要分析的章节:"}),k.jsxs("div",{className:"_buyVip_1r6dj_142",children:["额度剩余:",k.jsx("span",{style:{color:M>15?"#52C41A":"#F5222D"},children:M})," 饼干"]}),k.jsxs("div",{className:"_countText_1r6dj_150",children:["已选视频:",k.jsxs("span",{style:{color:"#52c41a"},children:[x.length," "]}),",共计 ",k.jsx("span",{style:{color:"#F5222D"},children:P})," 饼干,"]}),k.jsx("div",{className:"_collectionList_1r6dj_156",children:k.jsx(n.Collapse,{items:R,destroyOnHidden:!0,collapsible:"icon",defaultActiveKey:R.map(e=>e.key)})})]}),okText:"分析",cancelText:"暂不",onOk:()=>{if(null==x?void 0:x.length)return M>=P&&M<=40?(E(!0),g(!1),void N(()=>()=>{O()})):void O();n.message.warning("请先选择视频")},onCancel:()=>{g(!1),A([])}}),k.jsx(ns,{destroyOnHidden:!0,open:w,title:"余额不足!",content:k.jsxs("div",{children:["剩余",k.jsx("span",{style:{color:"#F5222D"},children:M}),"饼干,视频时长超出余额无法分析,去邀请好友赚更多时长吧~"]}),okText:"立即邀请好友赚200饼干",cancelText:"稍后再说",onOk:()=>{},onCancel:()=>{v(!1)}}),k.jsx(ns,{destroyOnHidden:!0,open:j,title:"余额不足!",content:k.jsxs("div",{children:["剩余",k.jsx("span",{style:{color:"#F5222D"},children:M}),"饼干,去邀请好友赚更多时长吧~"]}),okText:"立即邀请好友赚200饼干",cancelText:"继续分析",onOk:()=>{},onCancel:()=>{E(!1)},onCancelCallback:()=>{null==T||T()}})]})},As=t.memo(e=>{const{videoMode:n}=e,r=t.useMemo(()=>{switch(n){case"video":return"你好!我是你的专属AI助手,视频中有什么不懂的地方,随时喊我哦~";case"course":return"你好!我是你的专属AI助手,我可以为你提供详细的课程讲解和学习建议。";default:return"你好!我是你的专属AI助手,有什么不懂的随时喊我哦~"}},[n]);return k.jsx("div",{className:"space-y-2",children:k.jsx("p",{className:"text-[13px] text-gray-800 leading-relaxed font-medium",children:r})})}),bs=t.memo(e=>{const{videoInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎继续观看《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,看视频时有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),ys=t.memo(e=>{const{videoInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎观看《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,看视频时有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})});t.memo(e=>{const{courseInfo:t,handleSendMessage:o}=e;return k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-2 text-primary-600 font-bold text-sm",children:[k.jsx(r.Star,{className:"w-4 h-4"}),"欢迎回来~ 继续学习《",t.name,"》!"]}),k.jsxs("div",{className:"bg-gray-50 rounded-xl p-3 border border-gray-100",children:[k.jsx("p",{className:"text-xs text-gray-500 mb-1",children:"📊 上次学到:"}),k.jsxs("p",{className:"text-[13px] font-bold text-gray-800",children:[t.chapter,"(进度 75%)"]})]}),k.jsxs("div",{className:"flex gap-2 pt-2",children:[k.jsx(n.Button,{size:"small",type:"primary",className:"bg-[#0099cc] text-[11px] h-8 px-4 border-none",onClick:()=>o({input:"继续上次的话题"}),children:"继续提问"}),k.jsx(n.Button,{type:"text",size:"small",className:"text-[11px] h-8 text-gray-400",children:"重新开始"})]})]})});const ws=t.memo(e=>{const{courseInfo:t,handleSendMessage:n}=e;return k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎学习《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,陪你一起学习~ (。•̀ᴗ-)و✧"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-2",children:[k.jsx(r.BookOpen,{className:"w-4 h-4 text-primary-500"}),k.jsxs("span",{className:"text-[12px] font-bold text-gray-800",children:["当前章节:",t.chapter]})]}),k.jsxs("div",{className:"space-y-3",children:[k.jsx("p",{className:"text-[12px] font-bold text-gray-900",children:"我可以帮你:"}),k.jsx("div",{className:"grid grid-cols-2 gap-x-6 gap-y-2.5",children:K.map(e=>k.jsxs("button",{onClick:()=>n({input:e.label}),className:"flex items-center gap-2 group hover:translate-x-1 transition-all active:scale-95",children:[k.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-primary-400 group-hover:bg-primary-600 group-hover:scale-125 transition-all"}),k.jsx("span",{className:"text-[12px] text-gray-600 group-hover:text-primary-600 group-hover:font-bold group-hover:underline underline-offset-4 decoration-primary-200 text-left transition-all",children:e.label})]},e.id))})]})]}),k.jsx("div",{className:"h-px bg-gray-100/60"}),k.jsxs("div",{className:"space-y-3",children:[k.jsx("p",{className:"text-[11px] font-bold text-gray-400",children:"进阶功能 (前往 Vgen):"}),k.jsx("div",{className:"flex flex-wrap gap-x-4 gap-y-2",children:[{label:"生成学习计划",icon:k.jsx(r.GitBranch,{className:"w-3 h-3"})},{label:"AI智能出题",icon:k.jsx(r.FileCode,{className:"w-3 h-3"})},{label:"能力测评",icon:k.jsx(r.Trophy,{className:"w-3 h-3"})}].map(e=>k.jsxs("button",{className:"text-[11px] text-gray-500 hover:text-primary-600 flex items-center gap-1.5 transition-colors",children:[e.icon,e.label]},e.label))})]})]})}),vs=t.memo(e=>{const{knowledgeInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎继续学习《",null==t?void 0:t.title,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),ks=t.memo(e=>{const{knowledgeInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎学习《",null==t?void 0:t.title,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),js=e=>{const{token:r,viewMode:o="default",isDev:a,chatId:i,courseInfo:s,videoInfo:l,knowledgeInfo:c}=e,[u,d]=t.useState(!1),[p,f]=t.useState({}),[h,m]=t.useState([]),[g,x]=t.useState(""),[A,b]=t.useState(0),[y,w]=t.useState("在此输入你的需求或问题..."),[v,j]=t.useState(""),[E,M]=t.useState([]),[I,C]=t.useState(!0),[S,D]=t.useState(!1),[R,P]=t.useState(""),[B,G]=t.useState(!1),[Y,U]=t.useState(""),[F,V]=t.useState(!1),[q,Q]=t.useState(""),[W,Z]=t.useState(null),[J,K]=t.useState(!1),[X,_]=t.useState(null),[ee,ie]=t.useState(!1),[se,le]=t.useState(""),[ce,ue]=t.useState([]),[de,pe]=t.useState(!1),[fe,he]=t.useState(0),[me,ge]=t.useState(0),[xe,Ae]=t.useState(!1),[be,ye]=t.useState(null),[we,ve]=t.useState("fresh"),[ke,je]=t.useState(new Set),Ee=t.useRef([]),Te=t.useRef(""),Ne=t.useRef(!0),Me=t.useRef(0),Ie=t.useRef(null),Ce=t.useRef(!1),Se=t.useRef(null);t.useEffect(()=>{var e,t;if(Ee.current=h,h.length>0&&h[0].messageType===O.REL_PLAN_TASK){const n=N(null==(e=h[0])?void 0:e.extraInfo);if(!(null==n?void 0:n.learnTaskConfigId))return;(t=null==n?void 0:n.learnTaskConfigId,$.get(`/api/v1.0/learning-task/config/${t}`)).then(e=>{He({content:"",role:"ai",messageType:O.TASK_TIP,extraInfo:JSON.stringify({...e})})})}},[h]),t.useEffect(()=>{Ne.current=I},[I]),t.useEffect(()=>{Me.current=A},[A]),t.useEffect(()=>{if(!h.length)return;const e=[];h.forEach(t=>{if([O.REL_KNOWLEDGE_CARD,O.REL_LEARN_PATH,O.REL_QUESTION,O.REL_RECORD].includes(t.messageType)){const{id:n,messageType:r,extraInfo:o}=t,a=N(o);a&&e.push({id:n,type:r,extraInfo:a})}}),M(e)},[h]),t.useEffect(()=>{"undefined"!=typeof window&&(window.isRunInDev=a)},[a]),t.useEffect(()=>{localStorage.setItem(H,r),De()},[r]);const De=async()=>{const e=await $.get("/api/v0.3/user/detail");d(e.isLogin||!1),f(e)};t.useEffect(()=>{b(i||0)},[i]);const[Re,Le]=t.useState(!1),Pe=()=>{switch(o){case"video":Oe();break;case"course":break;case"knowledgeCard":ze()}};t.useEffect(()=>{u&&Re&&!de&&(pe(!0),Pe())},[u,Re,de]);const Oe=()=>{l?ae({currentPage:1,pageSize:20,dataBtype:10,dataId:l.recordId,orders:[{key:"create_time",asc:!1}]}).then(e=>{e.dataList.length?(b(e.dataList[0].id),ue(e.dataList),Be(e.dataList[0].id)):ne({btype:2,dataType:10,dataId:l.recordId}).then(e=>{b(e),Qe(),Be(e)})}):n.message.error("视频信息未传入!")},ze=()=>{if(c)return i?(b(i),ue([]),void Be(i)):void ae({currentPage:1,pageSize:20,dataBtype:1,dataId:c.knowledgeId,orders:[{key:"create_time",asc:!1}]}).then(e=>{e.dataList.length?(b(e.dataList[0].id),ue(e.dataList),Be(e.dataList[0].id)):ne({btype:2,dataType:1,dataId:c.knowledgeId}).then(e=>{b(e),Qe(),Be(e)})});n.message.error("知识卡片信息未传入!")},Be=async e=>{b(e),Ge.current.clear(),D(!0);const t=await re({sessionId:e});if(D(!1),null==t?void 0:t.messages){const e=t.messages;0===e.length?(()=>{switch(o){case"video":(()=>{let e=h.length>0;m(l?e?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(bs,{videoInfo:l,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ys,{videoInfo:l,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])})();break;case"course":m(s?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ws,{courseInfo:s,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}]);break;case"knowledgeCard":(()=>{let e=h.length>0;m(c?e?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(vs,{knowledgeInfo:c,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ks,{knowledgeInfo:c,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])})();break;default:m([{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])}})():m([...e]),e.length>0&&_(Math.min(...e.map(e=>e.id))),K(t.hasMoreBefore)}},He=async e=>{const{role:t,content:n,currnetMsgId:r,onlyPost:o=!1,messageType:a,extraInfo:i}=e;!o&&m(e=>e.find(e=>(null==e?void 0:e.id)===r)?e.map(e=>(null==e?void 0:e.id)===r?{...e,content:n,messageType:a,extraInfo:i}:e):[{role:t,content:n,id:r||T(),messageType:a,extraInfo:i},...e])},Ge=t.useRef(new Set),Ye=e=>{if(!e||"object"!=typeof e)return;const t=[e.traceId||"",e.dataId||"",e.action||"",(e.diff||"").length].join("_");Ge.current.has(t)||(Ge.current.add(t),He({role:"ai",content:"",currnetMsgId:T(),messageType:O.REL_RESOURCE_EDIT,extraInfo:JSON.stringify(e)}))},Ue=(e,t)=>{qe(e||Y),t&&Ve({input:`帮我解析B站视频:${e||Y}`})},Fe=async()=>{var e,t,n;const r=Me.current||A,o=await re({sessionId:r}),a=null==(e=Ee.current)?void 0:e.map(e=>L(e.content)),i=[...Ee.current];null==(n=null==(t=null==o?void 0:o.messages)?void 0:t.reverse())||n.forEach(e=>{a.includes(L(e.content))||i.unshift(e)}),m(i)},Ve=async e=>{const{input:t,scene:r,chatId:o,quotedText:a}=e;if(!I&&!1===Ne.current)return void n.message.warning("助理正在作答中,请稍后...");const i=o||A||Me.current;Ie.current&&Ie.current.close(),C(!1),Q(""),he(0),ge(0),Z(null);let s="";s+=`<scene>${r||v}</scene>`;const l=a||Te.current&&t.startsWith("[")?JSON.stringify({quotedText:a||Te.current}):void 0;He({role:"user",content:t,currnetMsgId:T(1e4,1e5),messageType:O.TEXT,extraInfo:l}),x(""),j(""),le(""),Te.current="";const c=T(1e4,1e5);Se.current=c;const u={enableSearch:ee,sessionId:i,scene:r||v},d=await oe({app:"vgen-web",btype:"session",extra:JSON.stringify(u)}),p=((e,t,n,r,o)=>te({url:"/api/v1.0/agent/chat/sse",method:"POST",body:{...t},query:{...e},headers:{"Enable-Search":r?"true":"false","x-run-id":o||""}},{...n}))({sessionId:i},{system:s,message:t},{onProgress:(e,t)=>{He({role:"ai",content:"<think>"+t+"</think>",currnetMsgId:c})},onMessage:(e,t)=>{He({role:"ai",content:t,currnetMsgId:c,messageType:O.TEXT})},onWaitTaskScene:e=>{Q(e)},onCookieConsume:e=>{he(e)},onProgressMsg:e=>{ge(e.percent)},onError:e=>{},onResourceEdit:e=>{Ye(e)},onComplete:async({messageData:e,formData:t,planData:n,questionData:r,skillKnowledgeData:o,recommendList:a,buttonList:i,evaluationData:s,resourceEditList:l})=>{var u,p,f,h;if(C(!0),null==l||l.forEach(e=>Ye(e)),Se.current=null,je(e=>{const t=new Set(e);return t.delete(c),t}),t){const e=N(t);e.scene===z.VIDEO_PARSE&&(null==(u=null==e?void 0:e.form)?void 0:u.url)?(U(null==(p=null==e?void 0:e.form)?void 0:p.url),Ue(null==(f=null==e?void 0:e.form)?void 0:f.url),V(!1)):e.scene===z.VIDEO_PARSE&&(null==(h=null==e?void 0:e.form)?void 0:h.searchKey)&&He({role:"ai",content:t,currnetMsgId:T(),messageType:O.RECOMMEND_VIDEO,extraInfo:t})}e&&He({role:"ai",content:e,currnetMsgId:e&&t?T():c,messageType:O.TEXT,extraInfo:JSON.stringify({traceId:(null==d?void 0:d.data)||"",recommendList:a,buttonList:i})}),Fe()}},ee,d.data);Ie.current=p},qe=e=>{P(e)},Qe=e=>{switch(o){case"video":He({role:"user",content:(null==l?void 0:l.description)||"",onlyPost:!0,messageType:O.INVISIBLE_TEXT});break;case"course":break;case"knowledgeCard":He({role:"user",content:(null==c?void 0:c.content)||"",onlyPost:!0,messageType:O.INVISIBLE_TEXT})}};return{isLogin:u,userInfo:p,messages:h,saveMsg:He,insertLocalMsg:(e,t)=>{const n=T(1e4,1e5);return He({role:"ai",content:e,currnetMsgId:n,messageType:O.TEXT,extraInfo:t}),n},toUpdateMsgs:Fe,toGetHistoryList:Be,loadMoreHistory:async()=>{if(J&&A&&!Ce.current){Ce.current=!0;try{const e=await re({sessionId:A,anchorId:X||void 0,direction:"before",limit:20});if((null==e?void 0:e.messages)&&e.messages.length>0){const t=[...h,...e.messages];m(t),Ce.current=!1,e.messages.length>0&&_(Math.min(...e.messages.map(e=>e.id))),K(e.hasMoreBefore)}}catch(e){n.message.error("加载历史消息失败")}}},handleSend:Ve,sendDockMessage:(e,t)=>{Ve(t?{input:`<<<${t}>>> ${e}`.trim(),quotedText:t}:{input:e})},stopAnswer:()=>{var e;if(null==(e=Ie.current)||e.close(),null!=Se.current){const e=Se.current;je(t=>new Set(t).add(e))}C(!0),x("")},answerIsDone:I,inputValue:g,setInputValue:x,sceneNow:v,setSceneNow:j,inputPlaceholder:y,setInputPlaceholder:w,enableGlobalSearch:ee,setEnableGlobalSearch:ie,quotedText:se,setQuotedTextData:e=>{if(!e)return le(""),void(Te.current="");Te.current=e,le(e)},dockQuotedText:be,setDockQuotedText:ye,dockOpen:xe,setDockOpen:Ae,dockHintState:we,setDockHintState:ve,interruptedMsgIds:ke,chatId:A,setChatId:b,sessionList:ce,generatedResources:E,recommendScene:q,recommendSceneData:W,cookieConsume:fe,progress:me,hasMoreBefore:J,chatVideoUrl:R,analyzeUrlNow:Y,setAnalyzeUrlNow:U,confirmAnalyzeModalVisible:B,setConfirmAnalyzeModalVisible:G,analyzeMsgShouldSave:F,setAnalyzeMsgShouldSave:V,confirmAnalyze:Ue,analyzeVideo:qe,videoAnalyzeCallback:e=>{Fe()},activate:()=>Le(!0),addNewSession:()=>{"video"===o&&ne({btype:2,dataType:10,dataId:null==l?void 0:l.recordId}).then(e=>{b(e),Qe(),Be(e),ae({currentPage:1,pageSize:20,dataBtype:10,dataId:(null==l?void 0:l.recordId)||""}).then(e=>{ue((null==e?void 0:e.dataList)||[])})})},toDeleteSession:e=>{var t;(t={ids:[e]},$.post("/api/v1.0/chatbot/session/delete",t)).then(()=>{n.message.success("删除成功");const t=ce.filter(t=>t.id!==e);ue(t),e===A&&Pe()})}}},Es="https://mdn.alipayobjects.com/huamei_1aoktl/afts/img/W3rjTYQLpoEAAAAAUEAAAAgADieFAQJr/df.webp?hm_biz=muse_style",Ts=e=>"adjusted"===e?"有问题问饼干,想继续调整也可以~":"expanded"===e?"继续跟饼干说点什么~":"看完有问题随时问,想改也跟我说~",Ns=[{icon:r.MessageCircleQuestion,label:"这段什么意思"},{icon:r.Search,label:"举个例子"},{icon:r.Sparkles,label:"改通俗些"}],Ms=[{icon:r.MessageCircleQuestion,label:"问问题",mode:"prefill",fill:"我想问一下:"},{icon:r.ListChecks,label:"再出几题",mode:"prefill",fill:"再出3道问答题"},{icon:r.Sparkles,label:"润色全文",mode:"prefill",fill:"帮我润色一下,改成通俗版"}],Is=e=>{const t=e;return/(学术|口语|通俗|润色|风格|专业点|面试风格)/.test(t)?"polish":/(重新生成|重生成|换个动画)/.test(t)?"anim-regen":/(太快|太慢|节奏|转场|配色|字太|标注|暂停)/.test(t)?"anim-optimize":/(出题|出几道|再出|练一下|考考我|重练)/.test(t)?"quiz":/(加个|补充|换成|删掉|删除|改成|改写)/.test(t)?"edit":null},Cs={polish:{text:"好的,帮你把这段改得更通俗~ 生成后你可以对比再决定。",cta:"看对比",label:"AI润色(通俗版)"},edit:{text:"好的,帮你补一段内容~",cta:"看效果",label:"文本编辑"},"anim-regen":{text:"好的,重新生成动画~ 你想换个风格还是保持原来的?",cta:"看对比",label:"动画重新生成"},"anim-optimize":{text:"好的,帮你把动画节奏调慢一点~",cta:"看效果",label:"动画效果优化"},quiz:{text:"好的,帮你再出几道题练练~",cta:"开始答题",label:"自测题生成"}},Ss=e=>{const{state:n="fresh",messages:o,open:a,onOpenChange:i,onSend:l,answerIsDone:c=!0,onStopAnswer:u,onQuickAction:d,userInfo:p,isDev:f,quote:h,onClearQuote:m,customDiffViewer:g}=e,[x,A]=t.useState(""),b=t.useRef(null),y=t.useRef(null);t.useEffect(()=>{var e;a&&(null==(e=b.current)||e.scrollTo({top:b.current.scrollHeight,behavior:"smooth"}))},[o,a]);const w=()=>{x.trim()&&(l(x.trim()),A(""),m())};return k.jsx("div",{className:"pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center px-3 pb-3 sm:px-4 sm:pb-5 sm:pl-28",children:k.jsxs(s.motion.div,{layout:!0,transition:{type:"spring",stiffness:320,damping:32},className:E("pointer-events-auto w-full max-w-2xl overflow-hidden rounded-3xl bg-white shadow-xl ring-1 ring-slate-900/[0.06]",a&&"max-w-2xl rounded-[1.75rem]"),children:[k.jsxs("button",{type:"button",onClick:()=>i(!a),"aria-expanded":a,className:"group flex w-full items-center gap-3 px-4 py-3 text-left transition-colors hover:bg-slate-50/80",children:[k.jsx("span",{"aria-hidden":!0,className:"h-9 w-9 shrink-0 overflow-hidden rounded-full ring-1 ring-primary/15",children:k.jsx("img",{src:Es,alt:"",className:"h-full w-full object-cover"})}),k.jsx("span",{className:"min-w-0 flex-1",children:k.jsx("span",{className:"block text-[13px] font-black text-slate-800",children:a?"饼干":Ts(n)})}),k.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-slate-100 text-slate-500 transition-colors group-hover:bg-slate-200",children:a?k.jsx(r.ChevronDown,{className:"h-4 w-4"}):k.jsx(r.ChevronUp,{className:"h-4 w-4"})})]}),k.jsx(s.AnimatePresence,{initial:!1,children:a&&k.jsxs(s.motion.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.24,ease:"easeOut"},className:"overflow-hidden",children:[k.jsx("div",{ref:b,className:"no-scrollbar max-h-[min(56vh,420px)] space-y-3 overflow-y-auto px-4 pb-3 pt-1",children:0===o.length?k.jsxs("div",{className:"flex items-start gap-2.5 pt-1",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"mt-0.5 h-7 w-7 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx("p",{className:"rounded-2xl rounded-tl-md bg-slate-100 px-3.5 py-2.5 text-[12px] font-bold leading-relaxed text-slate-600",children:"想怎么调整?或者有问题都可以问我~"})]}):k.jsx(ds,{messages:o,answerIsDone:c,isDev:f,userInfo:p,handleSend:({input:e})=>l(e),customDiffViewer:g})}),h&&k.jsx("div",{className:"px-4 pb-2",children:k.jsxs("div",{className:"flex items-center gap-2 rounded-xl bg-primary/5 px-3 py-2",children:[k.jsx(r.Paperclip,{className:"h-3 w-3 shrink-0 text-primary"}),k.jsx("span",{className:"shrink-0 text-[10px] font-black text-primary",children:"引用"}),k.jsxs("p",{className:"min-w-0 flex-1 truncate text-[11px] font-bold text-slate-600",children:['"',h,'"']}),k.jsx("button",{type:"button",onClick:m,"aria-label":"取消引用",className:"shrink-0 rounded-md p-0.5 text-slate-400 transition-colors hover:text-rose-500",children:k.jsx(r.X,{className:"h-3.5 w-3.5"})})]})}),k.jsxs("div",{className:"px-4 pb-2",children:[k.jsx("p",{className:"mb-2 text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"你可以"}),k.jsx("div",{className:"grid grid-cols-3 gap-2",children:(h?Ns:Ms).map(e=>k.jsxs("button",{type:"button",onClick:()=>(e=>{if("prefill"===e.mode&&e.fill)return A(e.fill),void requestAnimationFrame(()=>{const t=y.current;t&&(t.focus(),t.setSelectionRange(e.fill.length,e.fill.length))});d(e.label)})(e),className:"flex items-center gap-1.5 rounded-xl bg-white px-2.5 py-2 text-[11px] font-black text-slate-600 ring-1 ring-slate-200/80 transition-all hover:bg-primary/10 hover:text-primary hover:ring-primary/30 active:scale-[0.97]",children:[k.jsx(e.icon,{className:"h-3.5 w-3.5 shrink-0"}),k.jsx("span",{className:"truncate",children:e.label})]},e.label))})]}),k.jsx("div",{className:"px-4 pb-4",children:k.jsx("div",{className:"rounded-2xl bg-slate-50 p-1.5 ring-1 ring-slate-200/80 transition-shadow focus-within:bg-white focus-within:ring-2 focus-within:ring-primary/30",children:k.jsxs("div",{className:"flex items-end gap-1.5",children:[k.jsx("input",{ref:y,value:x,onChange:e=>A(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||w())},placeholder:h?"针对这段提问,或说想怎么改...":"描述你想怎么调,或问我任何问题...","aria-label":"输入你想问的问题或想做的调整",className:"h-10 w-full border-0 bg-transparent px-2.5 text-[12px] font-bold outline-none placeholder:font-bold placeholder:text-slate-400"}),!c&&u?k.jsx("button",{type:"button",onClick:u,title:"停止回答","aria-label":"停止回答",className:"h-10 w-10 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary/80",children:k.jsx(r.StopCircle,{className:"mx-auto h-4 w-4"})}):k.jsx("button",{type:"button",onClick:w,disabled:!x.trim(),"aria-label":"发送",className:"h-10 w-10 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary-700 disabled:bg-slate-200 disabled:text-slate-400 disabled:shadow-none",children:k.jsx(r.Send,{className:"mx-auto h-4 w-4"})})]})})})]})})]})})},Ds=e=>{const{state:n="fresh",messages:o,open:a,onOpenChange:i,onSend:l,answerIsDone:c=!0,onStopAnswer:u,onQuickAction:d,userInfo:p,isDev:f,quote:h,onClearQuote:m,customDiffViewer:g,width:x=320,collapsible:A=!0}=e,b=!A||a,y="number"==typeof x?`${x}px`:x,[w,v]=t.useState(""),j=t.useRef(null),E=t.useRef(null);t.useEffect(()=>{var e;b&&(null==(e=j.current)||e.scrollTo({top:j.current.scrollHeight,behavior:"smooth"}))},[o,b]);const T=()=>{w.trim()&&(l(w.trim()),v(""),m())};return k.jsx(s.motion.div,{initial:!1,animate:{width:b?y:"52px"},transition:{duration:.24,ease:"easeOut"},className:"relative h-full shrink-0 overflow-hidden border-r border-slate-200/90 bg-white",children:b?k.jsxs("div",{style:{width:y},className:"flex h-full flex-col",children:[k.jsxs("div",{className:"flex shrink-0 items-center gap-2.5 px-3.5 py-3",children:[k.jsx("span",{"aria-hidden":!0,className:"h-9 w-9 shrink-0 overflow-hidden rounded-full ring-1 ring-primary/15",children:k.jsx("img",{src:Es,alt:"",className:"h-full w-full object-cover"})}),k.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] font-black text-slate-800",children:"饼干 · AI 学伴"}),A&&k.jsx("button",{type:"button",onClick:()=>i(!1),title:"收起为窄条","aria-label":"收起 AI 学伴面板",className:"shrink-0 rounded-lg p-1.5 text-slate-400 transition-colors hover:bg-slate-100 hover:text-slate-600",children:k.jsx(r.PanelLeftClose,{className:"h-4 w-4"})})]}),k.jsx("div",{ref:j,className:"no-scrollbar min-h-0 flex-1 space-y-3 overflow-y-auto px-3.5 pb-2 pt-1",children:0===o.length?k.jsxs("div",{className:"flex items-start gap-2.5 pt-1",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"mt-0.5 h-7 w-7 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx("p",{className:"rounded-2xl rounded-tl-md bg-slate-100 px-3.5 py-2.5 text-[12px] font-bold leading-relaxed text-slate-600",children:"想怎么调整?或者有问题都可以问我~"})]}):k.jsx(ds,{messages:o,answerIsDone:c,isDev:f,userInfo:p,handleSend:({input:e})=>l(e),customDiffViewer:g})}),h&&k.jsx("div",{className:"shrink-0 px-3.5 pb-2",children:k.jsxs("div",{className:"flex items-center gap-2 rounded-xl bg-primary/5 px-3 py-2",children:[k.jsx(r.Paperclip,{className:"h-3 w-3 shrink-0 text-primary"}),k.jsx("span",{className:"shrink-0 text-[10px] font-black text-primary",children:"引用"}),k.jsxs("p",{className:"min-w-0 flex-1 truncate text-[11px] font-bold text-slate-600",children:['"',h,'"']}),k.jsx("button",{type:"button",onClick:m,"aria-label":"取消引用",className:"shrink-0 rounded-md p-0.5 text-slate-400 transition-colors hover:text-rose-500",children:k.jsx(r.X,{className:"h-3.5 w-3.5"})})]})}),k.jsxs("div",{className:"shrink-0 px-3.5 pb-2",children:[k.jsx("p",{className:"mb-2 text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"你可以"}),k.jsx("div",{className:"grid grid-cols-1 gap-1.5",children:(h?Ns:Ms).map(e=>k.jsxs("button",{type:"button",onClick:()=>(e=>{var t;if("prefill"===e.mode&&e.fill)return v(e.fill),void(null==(t=E.current)||t.focus());d(e.label)})(e),className:"flex items-center gap-2 rounded-xl bg-slate-50 px-2.5 py-1.5 text-[11px] font-bold text-slate-600 ring-1 ring-slate-200/70 transition-colors hover:bg-primary-50 hover:text-primary",children:[k.jsx(e.icon,{className:"h-3.5 w-3.5 shrink-0"}),e.label]},e.label))})]}),k.jsx("div",{className:"shrink-0 px-3.5 pb-4",children:k.jsx("div",{className:"rounded-2xl bg-slate-50 p-1.5 ring-1 ring-slate-200/80 transition-shadow focus-within:bg-white focus-within:ring-2 focus-within:ring-primary/30",children:k.jsxs("div",{className:"flex items-end gap-1.5",children:[k.jsx("input",{ref:E,value:w,onChange:e=>v(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||T())},placeholder:h?"针对这段提问,或说想怎么改...":"描述你想怎么调,或问我任何问题...","aria-label":"输入你想问的问题或想做的调整",className:"h-9 w-full border-0 bg-transparent px-2.5 text-[12px] font-bold outline-none placeholder:font-bold placeholder:text-slate-400"}),!c&&u?k.jsx("button",{type:"button",onClick:u,title:"停止回答","aria-label":"停止回答",className:"h-9 w-9 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary/80",children:k.jsx(r.StopCircle,{className:"mx-auto h-4 w-4"})}):k.jsx("button",{type:"button",onClick:T,disabled:!w.trim(),"aria-label":"发送",className:"h-9 w-9 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary-700 disabled:bg-slate-200 disabled:text-slate-400 disabled:shadow-none",children:k.jsx(r.Send,{className:"mx-auto h-4 w-4"})})]})})})]}):k.jsxs("button",{type:"button",onClick:()=>i(!0),title:Ts(n),"aria-label":"展开 AI 学伴面板",className:"flex h-full w-[52px] flex-col items-center gap-3 py-3 transition-colors hover:bg-slate-50",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"h-9 w-9 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx(r.PanelLeftOpen,{className:"h-4 w-4 shrink-0 text-slate-400"}),k.jsx("span",{className:"text-[11px] font-black tracking-widest text-slate-500",style:{writingMode:"vertical-rl"},children:"饼干 · AI 学伴"})]})})},Rs=t.forwardRef((e,o)=>{const{containerRef:a,token:i,viewMode:c="default",courseInfo:u,videoInfo:d,knowledgeInfo:p,initPos:f,initStyle:h,hoverTip:m,isDev:g,chatId:x,showDock:A=!1,showFloatingBall:b=!0,dockInitOpen:y=!1,dockLayout:w="float",dockPanelWidth:v=320,quoteTarget:j,customDiffViewer:N,onDockQuickAction:M,onDockCta:I,onDockResultAccept:C,onDockResultReject:S}=e,D=js({token:i,viewMode:c,isDev:g,chatId:x,videoInfo:d,courseInfo:u,knowledgeInfo:p}),[R,L]=t.useState(!1),z=s.useDragControls(),[H,Y]=t.useState(!1),[U,F]=t.useState(!1),[V,q]=t.useState(!1),Q=t.useRef(!1),J=t.useRef(null),_=t.useRef(null),ee=t.useRef(null),te=t.useRef(null),ne=t.useRef(null);t.useEffect(()=>()=>{te.current&&clearTimeout(te.current),ne.current&&clearTimeout(ne.current)},[]),t.useEffect(()=>{R&&D.activate()},[R]),t.useEffect(()=>{D.dockOpen&&D.activate()},[D.dockOpen]),t.useEffect(()=>{y&&D.setDockOpen(!0)},[]),t.useImperativeHandle(o,()=>({setQuotedText:(e,t)=>{const n=(null==t?void 0:t.target)??j??"modal";var r;"dock"!==n&&"both"!==n||(D.setDockQuotedText(e),D.setDockOpen((null==t?void 0:t.open)??!0)),"modal"!==n&&"both"!==n||((r=e)?(D.setQuotedTextData(r),L(!0),te.current=setTimeout(()=>{var e,t;null==(e=ee.current)||e.focusInput(),null==(t=ee.current)||t.addQuotedText(`<<<${r}>>>`)},100)):D.setQuotedTextData(""))},sendMsg:(e,t)=>{if("dock"===((null==t?void 0:t.target)??j??"modal"))return D.setDockOpen(!0),void D.handleSend({input:e});L(!0),ne.current&&clearTimeout(ne.current);let n=100;D.chatId||(n=2e3),ne.current=setTimeout(()=>{var t;null==(t=ee.current)||t.focusInput(),D.handleSend({input:e})},n)},openDock:()=>D.setDockOpen(!0),closeDock:()=>D.setDockOpen(!1)})),t.useEffect(()=>{if(J.current){const{scrollTop:e,scrollHeight:t,clientHeight:n}=J.current;t-e-n<100&&(_.current&&clearTimeout(_.current),_.current=setTimeout(()=>{J.current&&(J.current.scrollTop=J.current.scrollHeight)},500))}},[D.messages]);const re=e=>{var t;(t=e,$.get(`/api/v1.0/record/${t}/status`)).then(t=>{if(t===B.COMPLETED){const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}/mainPage?recordId=${e}`;window.open(t,"_blank")}else t===B.FAILED?n.message.error("视频解析失败"):t===B.CANCEL?n.message.info("视频解析已取消"):n.message.warning(`视频解析中,解析进度:${G[t]}%`)})},oe=e=>{const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}?batchId=${e.batchId}&toPractice=true`;window.open(t,"_blank")},ae=t.useMemo(()=>D.messages.filter(e=>("user"===e.role||"ai"===e.role)&&e.messageType!==O.INVISIBLE_TEXT&&e.messageType!==O.NODE),[D.messages]),ie=e=>{const t=Is(e);t&&D.insertLocalMsg(Cs[t].text,JSON.stringify({dockAction:{kind:t,label:Cs[t].label,cta:Cs[t].cta,userText:e}})),D.sendDockMessage(e,D.dockQuotedText)},se=e=>{M?M(e):D.handleSend({input:e})},le=e=>{e.action&&(null==I||I(e.action.kind,{userText:e.action.userText||"",quote:D.dockQuotedText??void 0}))},ce=e=>{e.result&&(null==C||C(e.result.kind,e.result.payload))},ue=e=>{e.result&&(null==S||S(e.result.kind))},de=e=>{const t=ae.findIndex(t=>t.id===e.id);if(t>-1&&t<ae.length-1){const e=ae.slice(t+1).find(e=>"user"===e.role);if(e&&"string"==typeof e.content&&e.content.trim())return void D.handleSend({input:e.content})}D.handleSend({input:"继续"})};t.useMemo(()=>k.jsx("div",{className:"flex items-center bg-gray-50 rounded-xl border border-gray-100",children:k.jsx(n.Dropdown,{trigger:["click"],placement:"bottomRight",popupRender:()=>k.jsxs("div",{className:"bg-white p-2 rounded-2xl shadow-xl border border-gray-100 w-64",children:[k.jsx("div",{className:"px-3 py-2 text-[12px] font-bold text-gray-400 uppercase tracking-widest border-b border-gray-50 mb-1",children:"本次会话生成"}),k.jsx("div",{className:"flex flex-col gap-1 max-h-72 overflow-y-auto p-1 custom-scrollbar",children:D.generatedResources.length>0?D.generatedResources.map(e=>k.jsxs("div",{className:"flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-primary-50 group transition-colors",onClick:()=>{switch(e.type){case O.REL_KNOWLEDGE_CARD:(e=>{const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}/knowledgeDetailPage?knowledgeId=${e.knowledgeId||e.id}`;window.open(t,"_blank")})(e.extraInfo);break;case O.REL_LEARN_PATH:break;case O.REL_QUESTION:oe(e.extraInfo);break;case O.REL_RECORD:re(e.extraInfo.recordId||e.extraInfo.id)}},children:[k.jsx("div",{className:E("w-8 h-8 rounded-lg flex items-center justify-center shrink-0",e.type===O.REL_LEARN_PATH?"bg-primary-50 text-primary-600":e.type===O.REL_RECORD?"bg-purple-50 text-purple-600":e.type===O.REL_QUESTION?"bg-emerald-50 text-emerald-600":"bg-gray-50 text-gray-600"),children:e.type===O.REL_LEARN_PATH?k.jsx(r.GraduationCap,{className:"w-4 h-4"}):e.type===O.REL_RECORD?k.jsx(r.Video,{className:"w-4 h-4"}):e.type===O.REL_QUESTION?k.jsx(r.BookOpen,{className:"w-4 h-4"}):k.jsx(r.FileText,{className:"w-4 h-4"})}),k.jsxs("div",{className:"flex-1 min-w-0",children:[k.jsx("div",{className:"text-[12px] font-bold text-gray-900 truncate group-hover:text-primary-600",children:e.type===O.REL_LEARN_PATH?e.extraInfo.name:e.type===O.REL_RECORD?e.extraInfo.title:e.type===O.REL_QUESTION?`题目批次ID:${e.extraInfo.batchId}`:e.extraInfo.title}),k.jsx("div",{className:"text-[10px] text-gray-400 font-medium",children:e.type===O.REL_LEARN_PATH?"学习计划":e.type===O.REL_RECORD?"视频解析":e.type===O.REL_QUESTION?"练习题":"知识讲解"})]})]},e.id)):k.jsx("div",{className:"py-8 text-center text-xs text-gray-400 font-medium",children:"尚未生成任何资源"})})]}),children:k.jsxs(n.Button,{type:"text",size:"small",className:"h-10 rounded-lg text-[11px] font-bold text-gray-500 gap-1.5 hover:bg-white hover:shadow-sm transition-all flex items-center",children:[k.jsx(r.Folder,{className:"w-3.5 h-3.5"})," 生成资源 (",D.generatedResources.length,")"," ",k.jsx(r.ChevronDown,{className:"w-3.5 h-3.5"})]})})}),[D.generatedResources]);const pe=t.useMemo(()=>{var e;return k.jsxs("div",{className:"w-[320px] flex flex-col max-h-[500px] overflow-y-auto",children:[k.jsx("div",{className:"px-3 py-1 border-b bg-white",children:k.jsx("div",{className:"flex items-center justify-between mb-2",children:k.jsx("span",{className:"text-xs font-bold text-gray-800",children:"会话记录"})})}),k.jsx("div",{className:"flex-1 overflow-y-auto py-3 space-y-4",children:(null==(e=D.sessionList)?void 0:e.length)>0?k.jsx("div",{className:"space-y-2",children:D.sessionList.map(e=>k.jsxs("div",{className:E("bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-primary-200 transition-colors cursor-pointer group relative",e.id===D.chatId&&"border-primary-300"),onClick:()=>{D.toGetHistoryList(e.id)},children:[k.jsxs("div",{className:"flex justify-between items-center mb-1 pr-6",children:[k.jsxs("p",{title:e.summary,className:"text-[12px] text-gray-700 line-clamp-1",children:["💬 ",e.summary]}),k.jsx("span",{className:"text-[9px] text-gray-400",children:e.createTime})]}),k.jsx(n.Popconfirm,{title:"确定删除这条记录吗?",description:"删除后将无法恢复",onConfirm:t=>{var n;t.stopPropagation(),n=e.id,D.toDeleteSession(n)},okText:"确定",cancelText:"取消",children:k.jsx("button",{className:"absolute right-2 top-3 p-1 text-gray-300 hover:text-red-500 opacity-0 group-hover:opacity-100 transition-all",children:k.jsx(r.Trash2,{className:"w-3 h-3"})})})]},e.id))}):k.jsx("div",{className:"text-center text-xs text-gray-400",children:"暂无历史记录"})})]})},[D.sessionList,D.chatId]);return k.jsxs("div",{children:[b&&k.jsx(s.AnimatePresence,{children:R?k.jsxs(s.motion.div,{drag:!0,dragControls:z,dragListener:!1,dragMomentum:!1,dragConstraints:a,initial:{opacity:0,scale:.9,y:50},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.9,y:50},className:"fixed pointer-events-auto bg-white rounded-2xl border border-gray-100 flex flex-col overflow-hidden cursor-default z-50",style:{maxHeight:"90vh",width:"440px",height:"760px",boxShadow:"0 20px 50px rgba(0,0,0,0.15)",...f,...h},children:[k.jsxs("div",{onPointerDown:e=>z.start(e),className:"bg-[#f8fafc] px-4 py-3 flex items-center justify-between border-b shrink-0 relative overflow-hidden cursor-move active:cursor-grabbing",children:[k.jsxs("div",{className:"flex items-center gap-2 z-10",children:[k.jsx(r.Cookie,{className:"w-4 h-4 text-orange-500"}),k.jsx("div",{className:"text-[13px] font-bold text-gray-800",children:"饼干 AI 学伴"})]}),k.jsxs("div",{className:"flex items-center gap-1 z-10",children:["knowledgeCard"!==c&&k.jsx(n.Tooltip,{title:"开启新对话",children:k.jsx("button",{onClick:()=>{D.addNewSession()},className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",children:k.jsx(r.Plus,{className:"w-4 h-4"})})}),"knowledgeCard"!==c&&k.jsx(n.Popover,{placement:"bottomRight",trigger:"click",content:pe,children:k.jsx("button",{className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",children:k.jsx(r.History,{className:"w-4 h-4"})})}),k.jsx("button",{onClick:()=>L(!1),className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-gray-600 transition-colors",children:k.jsx(r.Minimize2,{className:"w-4 h-4"})})]})]}),"video"===c&&k.jsx("div",{className:"bg-primary-50 px-4 py-3 border-b border-primary-100 animate-in slide-in-from-top-2 duration-300",children:k.jsxs("div",{className:"flex items-center justify-between",children:[k.jsx("span",{title:null==d?void 0:d.name,className:"text-[11px] font-medium text-primary-900 truncate pr-4 flex-1 text-ellipsis",children:null==d?void 0:d.name}),k.jsx("div",{className:"flex flex-wrap gap-2",children:["视频总结","章节大纲"].map(e=>k.jsx("button",{className:"px-2 py-1 bg-white border border-primary-100 rounded text-[10px] text-primary-700 shadow-sm hover:bg-primary-50 transition-colors",children:e},e))})]})}),k.jsxs("div",{className:"flex-1 px-4 bg-white relative overflow-hidden",children:[k.jsx("div",{ref:J,id:"vgenChatListScrollableDiv",className:"h-full overflow-y-auto custom-scrollbar flex flex-col-reverse",style:{minHeight:"300px"},children:k.jsx(l,{dataLength:D.messages.length,next:D.loadMoreHistory,hasMore:D.hasMoreBefore,scrollableTarget:"vgenChatListScrollableDiv",loader:null,inverse:!0,pullDownToRefresh:!1,scrollThreshold:"100px",children:k.jsx("div",{className:"mx-auto space-y-8 overflow-hidden py-4",children:k.jsx(ds,{messages:D.messages,answerIsDone:D.answerIsDone,recommendScene:D.recommendScene,cookieConsume:D.cookieConsume,progress:D.progress,recommendSceneData:D.recommendSceneData,setAnalyzeUrlNow:D.setAnalyzeUrlNow,setConfirmAnalyzeModalVisible:D.setConfirmAnalyzeModalVisible,setAnalyzeMsgShouldSave:D.setAnalyzeMsgShouldSave,saveStudyPath:()=>{},studyPathSaving:U,toCheckQuestions:oe,toCheckVideo:re,recommendVideos:[],handleSend:D.handleSend,isDev:g,userInfo:D.userInfo,saveMsg:D.saveMsg,customDiffViewer:N})})})}),k.jsx(s.AnimatePresence,{children:H&&k.jsx(s.motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"absolute inset-0 bg-white/95 z-50 flex items-center justify-center p-6",children:k.jsxs("div",{className:"w-full space-y-4",children:[k.jsxs("div",{className:"text-center",children:[k.jsx(r.Cookie,{className:"w-8 h-8 text-orange-400 mx-auto"}),k.jsx("p",{className:"text-[14px] font-bold text-gray-800 mt-2",children:"想挑战更多练习题吗?"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-3",children:[k.jsxs("p",{className:"text-[12px] font-bold text-primary-900 flex items-center gap-1.5 justify-center",children:[k.jsx(r.Star,{className:"w-4 h-4 text-yellow-500 fill-yellow-500"})," ","🌟 Vgen 深度学习"]}),k.jsx("ul",{className:"space-y-1.5 text-center",children:["• 500+ 精选题库","• AI 智能批改 + 详细解析","• 错题本自动收藏","• 能力成长报告"].map(e=>k.jsx("li",{className:"text-[11px] text-gray-500",children:e},e))}),k.jsx("p",{className:"text-[11px] font-bold text-orange-600 text-center",children:"🍪 新用户专享:完成首题送 200 饼干!"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-2",children:[k.jsx(n.Button,{type:"primary",className:"w-full bg-primary-600 text-white h-10 font-bold border-none",onClick:()=>{Y(!1),window.open("https://vgen.alipay.com/practice","_blank")},children:"前往 Vgen 练习 →"}),k.jsx(n.Button,{type:"text",className:"w-full text-gray-400 text-xs",onClick:()=>Y(!1),children:"稍后再说"}),k.jsx("p",{className:"text-[9px] text-gray-400 text-center",children:"↗ 云燕账号直接登录,无需重复注册"})]})]})})})]}),k.jsxs("div",{className:"p-4 border-t bg-white relative",children:[k.jsx("div",{className:"flex items-center gap-2 mb-3 relative",children:k.jsxs("div",{className:"flex items-center gap-2",children:[K.map(e=>k.jsxs("button",{onClick:()=>D.handleSend({input:e.label}),className:"flex items-center gap-1.5 px-3 py-1.5 bg-white border border-gray-100 rounded-full shadow-sm hover:border-primary-200 hover:bg-primary-50 transition-all group active:scale-95",children:[k.jsx("span",{className:E("text-primary-500","w-3.5 h-3.5"),children:e.icon}),k.jsx("span",{className:"text-[11px] font-medium text-gray-600 group-hover:text-primary-600 whitespace-nowrap",children:e.label})]},e.id)),k.jsxs("div",{className:"relative",children:[k.jsxs("button",{onClick:()=>q(!V),className:E("flex items-center gap-1.5 px-3 py-1.5 border rounded-full shadow-sm transition-all active:scale-95",V?"bg-primary-600 border-primary-600 text-white":"bg-primary-50 border-primary-100 text-primary-700 hover:bg-primary-100"),children:[k.jsx(r.Sparkles,{className:E("w-3.5 h-3.5",V?"text-white":"text-primary-600")}),k.jsx("span",{className:"text-[11px] font-bold whitespace-nowrap",children:"更多"})]}),V&&k.jsxs(k.Fragment,{children:[k.jsx("div",{className:"fixed inset-0 z-50",onClick:()=>q(!1)}),k.jsxs("div",{className:"absolute mb-2 w-48 bg-white rounded-xl border border-gray-100 p-2 z-[60] animate-in fade-in slide-in-from-bottom-2 duration-200",style:{boxShadow:"0 10px 30px rgba(0,0,0,0.2)",right:"0",bottom:"30px"},children:[k.jsx("p",{className:"text-[10px] font-bold text-gray-400 px-2 py-1 mb-1 uppercase",children:"Vgen 进阶功能"}),[{label:"生成学习计划",desc:"帮我生成学习计划",icon:k.jsx(r.GitBranch,{className:"w-3.5 h-3.5"}),color:"text-primary-500"},{label:"AI智能出题",desc:"帮我出三道练习题",icon:k.jsx(r.FileCode,{className:"w-3.5 h-3.5"}),color:"text-indigo-500"}].map(e=>k.jsxs("button",{onClick:()=>{D.handleSend({input:e.desc})},className:"w-full flex items-center gap-2.5 px-2 py-2 rounded-lg hover:bg-gray-50 text-[12px] text-gray-600 transition-colors",children:[k.jsx("span",{className:e.color,children:e.icon}),e.label]},e.label))]})]})]})]})}),k.jsx("div",{className:"relative flex-1 flex flex-col gap-2",children:k.jsxs("div",{className:"relative flex items-center gap-2",children:[k.jsx("div",{className:"w-full px-4 pb-1 pt-1.5 bg-white rounded-[12px] cursor-text border border-gray-100 focus-within:border-primary-200 transition-all overflow-hidden",style:{paddingTop:"6px"},children:k.jsx(ms,{minHeight:30,maxHeight:120,onChange:e=>{var t;const n=e.filter(e=>"tag"!==e.type),r=e.filter(e=>"tag"===e.type);if(r.length){const e=r[0].value,n=(null==(t=X.find(t=>t.label===e))?void 0:t.id)||"";D.setSceneNow(n)}else D.setSceneNow(""),D.setInputPlaceholder("向你的AI学习助手提问...");const o=n.map(e=>"br"===e.type?"\n":e.value).join("");D.setInputValue(o)},placeholder:D.inputPlaceholder,sendMsg:()=>{D.handleSend({input:D.inputValue})},ref:ee})}),D.answerIsDone?k.jsx(n.Button,{type:"primary",onClick:()=>{var e;D.handleSend({input:D.inputValue}),null==(e=ee.current)||e.clearContent()},disabled:!D.inputValue.trim(),className:E("rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center",D.inputValue.trim()?"bg-primary-600 text-white shadow-primary-200":"bg-gray-200 text-white"),children:k.jsx(r.Send,{className:"w-4 h-4"})}):k.jsx(n.Tooltip,{title:"停止回答",children:k.jsx(n.Button,{type:"primary",onClick:D.stopAnswer,className:"rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center bg-primary-500 text-white hover:!bg-primary-600",children:k.jsx(r.StopCircle,{className:"w-5 h-5"})})})]})})]})]}):k.jsxs(s.motion.div,{drag:!0,dragMomentum:!1,dragConstraints:a,dragElastic:.1,onDragStart:()=>{Q.current=!0},onDragEnd:()=>{setTimeout(()=>{Q.current=!1},100)},initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1,transition:{type:"spring",stiffness:260,damping:20}},exit:{opacity:0,scale:.5},whileHover:{scale:1.1},onClick:()=>{Q.current||L(!0)},className:"fixed pointer-events-auto cursor-grab active:cursor-grabbing flex flex-col items-center justify-center group z-50",style:{...f},children:[k.jsx(n.Tooltip,{title:m||"",children:k.jsx(s.motion.div,{className:"relative flex items-center",children:k.jsxs("div",{className:"relative flex flex-col items-center z-10",children:[k.jsx("img",{src:P,className:"w-24 h-24 select-none pointer-events-none",draggable:"false"}),k.jsx("div",{className:"text-white text-[14px] px-6 py-2 rounded-full font-bold border border-white/30 whitespace-nowrap",style:{marginTop:"-28px",background:"linear-gradient(to right, #4461f2, #bc2df3)",boxShadow:"0 8px 20px rgba(68,97,242,0.3)"},children:"AI 学伴"})]})})}),k.jsx(k.Fragment,{})]})}),D.isLogin&&A&&("inline"===w?k.jsx(Ds,{state:D.dockHintState,messages:ae,userInfo:D.userInfo,isDev:g,open:D.dockOpen,onOpenChange:D.setDockOpen,onSend:ie,answerIsDone:D.answerIsDone,onStopAnswer:D.stopAnswer,onQuickAction:se,quote:D.dockQuotedText,onClearQuote:()=>D.setDockQuotedText(null),customDiffViewer:N,width:v,onCta:le,ctaEnabled:!!I,onAccept:ce,onReject:ue,onResume:de}):k.jsx(Ss,{state:D.dockHintState,messages:ae,userInfo:D.userInfo,isDev:g,open:D.dockOpen,onOpenChange:D.setDockOpen,onSend:ie,answerIsDone:D.answerIsDone,onStopAnswer:D.stopAnswer,onQuickAction:se,onCta:le,ctaEnabled:!!I,onAccept:ce,onReject:ue,onResume:de,quote:D.dockQuotedText,onClearQuote:()=>D.setDockQuotedText(null),customDiffViewer:N})),D.isLogin&&k.jsx(xs,{forChatUse:!0,chatVideoUrl:D.chatVideoUrl,analyzeCallback:D.videoAnalyzeCallback,needTraceId:!0,sessionId:D.chatId}),k.jsx(ns,{destroyOnHidden:!0,open:D.confirmAnalyzeModalVisible,title:"确认解析",content:k.jsx("div",{children:"确认解析该视频课程吗?"}),okText:"确定",cancelText:"取消",onOk:()=>{D.setConfirmAnalyzeModalVisible(!1),D.analyzeVideo(D.analyzeUrlNow),D.analyzeMsgShouldSave&&D.saveMsg({role:"user",content:`帮我解析B站视频:${D.analyzeUrlNow}`,currnetMsgId:T(),toPost:!0,chatId:D.chatId,messageType:O.TEXT})},onCancel:()=>{D.setConfirmAnalyzeModalVisible(!1)}})]})});e.BottomChatDock=Ss,e.BottomChatPanel=Ds,e.COOKIE_AVATAR=Es,e.GENERAL_CHIPS=Ms,e.INTENT_REPLY=Cs,e.QUOTE_CHIPS=Ns,e.agentScene=z,e.default=Rs,e.detectIntent=Is,e.dockHint=Ts,e.msgType=O,e.useVgenChat=js,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
21
|
+
`}));var Xi,_i,$i={exports:{}},es=(Xi||(Xi=1,_i=$i,function(){var e={}.hasOwnProperty;function t(){for(var e="",t=0;t<arguments.length;t++){var o=arguments[t];o&&(e=r(e,n(o)))}return e}function n(n){if("string"==typeof n||"number"==typeof n)return n;if("object"!=typeof n)return"";if(Array.isArray(n))return t.apply(null,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var o="";for(var a in n)e.call(n,a)&&n[a]&&(o=r(o,a));return o}function r(e,t){return t?e?e+" "+t:e+t:e}_i.exports?(t.default=t,_i.exports=t):window.classNames=t}()),$i.exports);const ts=g(es),ns=e=>{const{title:t,content:r,cancelText:o,okText:a,onOk:i,onCancel:s,onCancelCallback:l,footer:c=!0,contentType:u="center",noIcon:d=!1,blackMode:p=!1,isTip:f=!1}=e,{styles:h}=Ki();return k.jsx("div",{children:k.jsx(n.ConfigProvider,{button:{className:h.linearGradientButton},children:k.jsxs(n.Modal,{...e,title:null,footer:null,classNames:{content:ts("_vgenModal_143da_40","left"===u&&"_modalLeft_143da_107",p&&"_blackMode_143da_101")},className:ts("_modalWrapper_143da_32",f&&"_modalTipWrapper_143da_37"),children:[k.jsxs("div",{className:"_modalContent_143da_49",children:[t&&k.jsxs("div",{className:ts("_modalTitle_143da_52","left"===u&&"_modalTitleLeft_143da_52"),children:[!d&&k.jsx("img",{src:"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='18px'%20height='18px'%20viewBox='0%200%2018%2018'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e注意%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='解析合集'%20transform='translate(-347.000000,%20-127.000000)'%20fill-rule='nonzero'%3e%3cg%20id='编组-5'%20transform='translate(347.000000,%20125.000000)'%3e%3cg%20id='注意'%20transform='translate(0.000000,%202.000000)'%3e%3cpath%20d='M0,9%20C0,12.2153903%201.71539025,15.1865334%204.5,16.7942286%20C7.28460967,18.4019238%2010.7153903,18.4019238%2013.5,16.7942286%20C16.2846097,15.1865334%2018,12.2153903%2018,9%20C18,4.02943722%2013.9705627,0%209,0%20C4.02943725,0%200,4.02943722%200,9%20Z'%20id='路径'%20fill='%230064FF'%3e%3c/path%3e%3cpath%20d='M9,13.090909%20C9.29230822,13.090909%209.56241216,13.2468535%209.70856628,13.4999999%20C9.8547204,13.7531462%209.8547204,14.0650354%209.70856628,14.3181817%20C9.56241216,14.5713281%209.29230822,14.7272726%209,14.7272726%20C8.54813066,14.7272726%208.18181818,14.3609601%208.18181818,13.9090908%20C8.18181818,13.4572215%208.54813066,13.090909%209,13.090909%20L9,13.090909%20Z%20M9,3.27272725%20C9.45186934,3.27272725%209.81818182,3.63903972%209.81818182,4.09090906%20L9.81818182,11.0454545%20C9.81818182,11.4973238%209.45186934,11.8636363%209,11.8636363%20C8.54813066,11.8636363%208.18181818,11.4973238%208.18181818,11.0454545%20L8.18181818,4.09090906%20C8.18181818,3.63903972%208.54813066,3.27272725%209,3.27272725%20L9,3.27272725%20Z'%20id='形状'%20fill='%23FFFFFF'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e"}),t]}),k.jsx("div",{className:ts("center"===u&&"_modalContentText_143da_71"),children:r})]}),c&&k.jsxs("div",{className:"_modalFooter_143da_77",children:[k.jsx(n.Button,{type:"primary",className:"_btnOk_143da_85",onClick:i,children:a}),k.jsx(n.Button,{className:"_btnCancel_143da_90",onClick:()=>{null==s||s(),null==l||l()},children:o})]})]})})})},rs=t.memo(e=>{const{thinkContent:o,answerIsDone:a,isLast:i,recommendScene:l,progress:c,cookieConsume:u}=e,d=t.useMemo(()=>{let e="";switch(l){case Y.SYSTEMATIZE_LEARNING:e="正在为你为你生成学习计划...";break;case Y.SKILL_TO_KNOWLEDGE:e="正在为你生成知识点...";break;case Y.QUESTION_GENERATION:e="正在为你生成练习题...";break;case Y.EVALUATION_TASK_SCENE:e="正在为你生成能力评测...";break;case Y.DAILY_TASK_REMINDER_SCENE:e="正在为你生成每日任务...";break;default:e="饼干正在思考中..."}return e},[l]),p=t.useMemo(()=>{let e="";switch(l){case Y.SYSTEMATIZE_LEARNING:e="正在为你为你生成学习计划...";break;case Y.SKILL_TO_KNOWLEDGE:e="正在为你生成知识点...";break;case Y.QUESTION_GENERATION:e="正在为你生成练习题...";break;case Y.EVALUATION_TASK_SCENE:e="正在为你生成能力评测...";break;case Y.DAILY_TASK_REMINDER_SCENE:e="正在为你生成每日任务...";break;default:e=""}return e},[l]);return o&&!a&&i?k.jsx(s.motion.div,{initial:{opacity:0,scale:.9,y:10},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.95},className:"w-full max-w-xl bg-white rounded-[1.5rem] border border-border/40 shadow-soft overflow-hidden",children:k.jsxs("div",{className:"p-5 space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-6",children:[k.jsx("div",{className:"relative",children:k.jsx(s.motion.div,{animate:{rotate:[0,-10,10,0]},transition:{duration:3,repeat:1/0},className:"h-16 w-16 bg-orange-50 rounded-2xl flex items-center justify-center border border-orange-200",children:k.jsx("img",{src:"https://mdn.alipayobjects.com/huamei_dc6env/afts/img/gp_8T7DH1Q0AAAAAgCAAAAgAei4tAQFr/df.webp?hm_biz=muse_style",alt:"Cookie",className:"h-10 w-10 object-contain"})})}),k.jsxs("div",{className:"space-y-1",children:[k.jsx("h4",{className:"text-base font-black italic text-slate-900 tracking-tight",children:d}),k.jsx("p",{className:"text-xs font-bold text-primary animate-pulse",children:o})]})]}),p?k.jsxs("div",{className:"bg-[#FAFBFC] rounded-3xl p-6 border border-border/40 relative group overflow-hidden",children:[k.jsx("div",{className:"absolute top-0 right-0 p-4 opacity-5 rotate-12 group-hover:rotate-0 transition-transform",children:k.jsx(r.Zap,{className:"h-20 w-20 text-primary"})}),k.jsxs("div",{className:"relative z-10 space-y-4",children:[k.jsx("div",{className:"flex items-center gap-2",children:k.jsx(n.Badge,{className:"bg-primary/10 text-primary border-none text-[8px] font-black uppercase",children:"饼干进化冷知识"})}),k.jsx("p",{className:"text-sm font-medium text-slate-500 leading-relaxed italic",children:p})]})]}):null,u||c?k.jsxs("div",{className:"space-y-4",children:[c&&k.jsx("div",{className:"h-3 bg-slate-100 rounded-full overflow-hidden p-0.5 border border-border/20",children:k.jsx(s.motion.div,{initial:{width:0},animate:{width:`${c}%`},className:"h-full bg-primary rounded-full shadow-glow"})}),k.jsxs("div",{className:"flex justify-between items-center px-1",children:[k.jsxs("div",{className:"flex items-center gap-1.5",children:[k.jsx("div",{className:"h-4 w-4 rounded-full bg-orange-100 flex items-center justify-center",children:k.jsx("img",{src:"https://mdn.alipayobjects.com/huamei_dc6env/afts/img/gp_8T7DH1Q0AAAAAgCAAAAgAei4tAQFr/df.webp?hm_biz=muse_style",alt:"Cookie Icon",className:"h-3 w-3 object-contain"})}),k.jsxs("span",{className:"text-[10px] font-black text-orange-600 uppercase tracking-widest",children:["消耗 ",u," 🍪"]})]}),k.jsx("span",{className:"text-[10px] font-black text-primary uppercase",children:c?Math.round(c)+"%":""})]})]}):null]})}):null}),os=["08:00","09:00","20:00","21:00"],as=[{label:"每天",value:"daily"},{label:"工作日",value:"weekday"},{label:"周末",value:"weekend"}],is=[{label:"星期一",value:1},{label:"星期二",value:2},{label:"星期三",value:3},{label:"星期四",value:4},{label:"星期五",value:5},{label:"星期六",value:6},{label:"星期日",value:7}],ss=t.memo(e=>{const{extraInfo:r}=e,[o,a]=t.useState(null),[i,s]=t.useState(null),[l,c]=t.useState(null),[u,d]=t.useState([]),p=!!i||!!o,f=!!l||u.length>0;return k.jsxs("div",{className:"py-2",children:[k.jsx("div",{className:"mb-4",children:"你想怎么改?我来帮你定个闹钟。"}),k.jsxs("div",{className:"mb-3",children:[k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:"几点钟"}),k.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[os.map(e=>k.jsx(n.Button,{type:o===e?"primary":"default",onClick:()=>(e=>{a(e),s(null)})(e),children:e},e)),k.jsx(n.TimePicker,{format:"HH:mm",placeholder:"自定义",value:i,onChange:e=>{s(e),a(null)},className:"w-28"})]})]}),k.jsxs("div",{className:"mb-3",children:[k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:"哪天"}),k.jsxs("div",{className:"flex flex-wrap gap-2 items-center",children:[as.map(e=>k.jsx(n.Button,{type:l===e.value?"primary":"default",onClick:()=>{return t=e.value,c(t),void d([]);var t},children:e.label},e.value)),k.jsx(n.Select,{mode:"multiple",placeholder:"自定义",value:u,onChange:e=>{d(e),c(null)},options:is,className:"w-40",maxTagCount:"responsive"})]})]}),k.jsx(n.Button,{type:"primary",onClick:async()=>{const e=i?i.format("HH:mm"):o;let t=u;if(l)switch(l){case"daily":t=[1,2,3,4,5,6,7];break;case"weekday":t=[1,2,3,4,5];break;case"weekend":t=[6,7]}var p;await(p={...r,reminderTimeDesc:e,cycleDays:[...t]},$.post("/api/v1.0/learning-task/config/update",p)),d([]),c(null),s(null),a(null),n.message.success("设置成功!")},disabled:!p||!f,block:!0,children:"确定"})]})}),ls=({extraInfo:e,customDiffViewer:o,handleSend:a})=>{const[i,s]=t.useState(!1);if(!e)return null;const l={update:"更新",create:"创建"}[e.action]||"编辑";({pending:"待生效",success:"已生效",failed:"失败"})[e.status]||e.status;const c={original:e.originalContent??"",new:"",diff:e.diff??"",title:e.title};return k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsxs("div",{className:"flex gap-2 items-start mb-2",children:[k.jsx(r.FileDiff,{className:"w-[18px] h-[18px] mt-1 shrink-0 text-primary-400"}),k.jsx("h4",{title:e.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:e.title||"资源内容更新"})]}),k.jsx("p",{className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:`AI 已${l}该资源的内容,点击查看修改前后的差异对比。`}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[12px] font-bold text-primary-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),o?s(!0):n.message.warning("当前宿主未接入差异组件,暂时无法查看差异")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看结果",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]}),k.jsx(n.Modal,{destroyOnHidden:!0,open:i,onCancel:()=>s(!1),title:e.title||"文本差异对比",footer:null,width:"min(1120px, 100%)",styles:{body:{padding:0}},children:null==o?void 0:o(c,{mode:"modal",onConfirmChange:()=>{s(!1),null==a||a({input:"确认保存"})},onCancelChange:()=>{s(!1),null==a||a({input:"暂不变更"})}})})]})},cs=t.memo(({content:e})=>{const n=t.useMemo(()=>(e=>{const t=[],n=/<<<([\s\S]*?)>>>/g;let r,o=0;for(;null!==(r=n.exec(e));)r.index>o&&t.push({type:"text",content:e.slice(o,r.index)}),t.push({type:"quoted",content:r[1].trim()}),o=n.lastIndex;return o<e.length&&t.push({type:"text",content:e.slice(o)}),t})(e),[e]);return k.jsx(k.Fragment,{children:n.map((e,t)=>"quoted"===e.type?k.jsx("span",{title:e.content,className:"mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-primary-100 text-primary-600 border border-primary-200 select-none transition-all",children:e.content.length>10?e.content.substring(0,10)+"...":e.content},t):k.jsx("span",{className:"whitespace-pre-wrap",children:e.content},t))})}),us={[Q.FROM_LEARN_PATH]:"定制学习计划",[Q.FROM_KNOWLEDGE_CARD]:"生成知识点",[Q.FROM_QUESTION]:"生成练习题",[Q.FROM_LEARN_TASK]:"定制"},ds=t.memo(e=>{const{messages:o,answerIsDone:a,recommendScene:i,recommendSceneData:l,setAnalyzeUrlNow:c,setConfirmAnalyzeModalVisible:d,setAnalyzeMsgShouldSave:p,taskFormSubmit:f,TaskFormFields:h,saveStudyPath:m,studyPathSaving:g,toCheckQuestions:x,toCheckVideo:A,recommendVideos:b,handleSend:y,isTaskPage:w,isDev:v,userInfo:j,cookieConsume:T,progress:S,saveMsg:R,customDiffViewer:L}=e,[O,z]=t.useState(!1),[B,H]=t.useState(!1),[G,Y]=t.useState(""),J=t.useRef(""),K=t.useRef(""),X=t.useRef(""),[_,ee]=t.useState([]);t.useEffect(()=>{ee(o)},[o]);t.useEffect(()=>{var e;O||(K.current&&(null==(e=K.current)||e.close()),X.current="")},[O]);const ne=e=>{const t=`http://www.bilibili.com/video/${e.bvid}`;null==c||c(t),null==d||d(!0),null==p||p(!0)},re=t.useMemo(()=>v?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL,[v,W,Z]),ae=e=>{navigator.clipboard.writeText(e),n.message.success("复制成功")};return t.useEffect(()=>{var e;const t=o.filter(e=>e.messageType===Q.REL_EVALUATION&&!e.evaStatus&&0!==e.evaStatus);if(!t.length||0===t.length)return;let n=t[0];const r=null==(e=N(n.extraInfo))?void 0:e.userEvaId;r&&ie(r).then(e=>{const t=o.map(t=>t.id===n.id?{...t,evaStatus:e.status}:t);ee(t)})},[o.length]),k.jsxs("div",{className:"flex flex-col gap-4",children:[[..._].reverse().map((e,t)=>{var o,l,c;let d="";e.content&&"string"==typeof e.content&&(d=e.content.includes("<think>")&&e.content.includes("</think>")?e.content.replace(/<think>|<\/think>/g,""):"");const p=N(e.extraInfo)||null;if(e.messageType===Q.FROM_PARSE_VIDEO&&(null==p?void 0:p.form))return null;if(e.messageType===Q.FROM_LEARN_TASK&&(null==p?void 0:p.form))return null;const v=t===_.length-1;return k.jsxs(s.motion.div,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:E("flex gap-2","user"===e.role?"flex-row-reverse":"flex-row"),children:[k.jsx("div",{className:E("w-12 h-12 rounded-2xl flex items-center justify-center shrink-0 shadow-sm","user"===e.role?"text-white":"bg-primary-200 border border-gray-100"),children:"user"===e.role?(null==j?void 0:j.avatar)?k.jsx("img",{src:null==j?void 0:j.avatar,className:"w-8 h-8",referrerPolicy:"no-referrer"}):k.jsx(r.User,{className:"w-6 h-6"}):k.jsx("img",{src:P,className:"w-10 h-10"})}),d&&!a&&v?k.jsx(rs,{thinkContent:d,answerIsDone:a,isLast:v,recommendScene:i,cookieConsume:T,progress:S}):k.jsxs("div",{className:E("flex flex-col gap-2 max-w-[85%] group mt-1","user"===e.role?"items-end":"items-start","ai"===e.role&&e.messageType!==Q.TEXT?"mb-4":""),children:[k.jsxs("div",{className:E("w-full px-4 rounded-[24px] text-[13px] leading-relaxed shadow-sm","user"===e.role?"bg-primary-600 text-white rounded-tr-none":"bg-white text-gray-800 border border-gray-100 rounded-tl-none"),children:[e.messageType===Q.NODE&&k.jsx("div",{className:"px-1 py-2 whitespace-pre-wrap break-words",children:e.content}),e.messageType!==Q.TEXT&&e.messageType||"string"!=typeof(null==e?void 0:e.content)||-1!==(null==(o=null==e?void 0:e.content)?void 0:o.indexOf("<think>"))?e.messageType!==Q.TEXT&&e.messageType?null:k.jsx("div",{className:"py-4 text-red-400",children:"思考已中断..."}):"user"===e.role?k.jsx("div",{className:"px-1 py-2 whitespace-pre-wrap break-words",children:k.jsx(cs,{content:e.content,role:e.role})}):k.jsx("div",{className:"relative",children:k.jsx(Wi,{children:e.content})}),e.messageType===Q.FROM_PARSE_VIDEO&&(null==p?void 0:p.form)&&k.jsx("div",{className:"py-4 italic text-purple-600",children:p.form.url?"视频解析请求":"视频推荐"}),e.messageType===Q.RECOMMEND_VIDEO&&(null==p?void 0:p.form)&&k.jsx("div",{className:"py-4 italic text-purple-600",children:k.jsx(Ji,{searchKey:p.form.searchKey,selectCallback:ne})}),e.messageType===Q.FROM_LEARN_TASK&&(null==p?void 0:p.form)&&k.jsx("div",{className:"my-4",children:k.jsx(n.Collapse,{defaultActiveKey:!0===p.needClarify?[e.id]:[],items:[{key:e.id,label:"创建任务信息确认",children:k.jsxs("div",{className:"bg-white",children:[k.jsx("div",{className:"border-b border-gray-100 pb-3 mb-3",children:k.jsxs("h3",{className:"text-sm font-bold text-gray-900 flex items-center",children:[k.jsx(r.User,{className:"h-4 w-4 mr-2 text-primary"}),"定制你的专属任务"]})}),k.jsxs(n.Form,{layout:"inline",className:"space-y-4",labelCol:{span:8},wrapperCol:{span:16},onFinish:f,autoComplete:"off",children:[null==h?void 0:h.map(e=>{var t,r,o;return k.jsx(n.Form.Item,{initialValue:(null==(t=null==p?void 0:p.form)?void 0:t[e.name])||void 0,label:e.display,name:e.name,rules:e.required?[{required:!0,message:`${"str"===e.type?"请输入":"请选择"}${e.display}`}]:[],style:{marginTop:"str"===e.type?"16px":"12px",width:"320px"},children:"str"===e.type?k.jsx(n.Input,{placeholder:e.desc||e.display,style:{width:"140px"}}):k.jsx(n.Checkbox.Group,{options:"pathNames"===e.name?(null==(r=null==p?void 0:p.form)?void 0:r.pathNames)||[]:"pathOptions"===e.name?(null==(o=null==p?void 0:p.form)?void 0:o.pathOptions.map(e=>e.skillName))||[]:e.options||[],style:{width:"140px"}})},e.name)}),k.jsx("div",{className:"w-full flex align-center justify-center",children:k.jsxs("div",{className:"flex gap-3",children:[k.jsx(n.Button,{type:"primary",htmlType:"submit",children:us[e.messageType]}),k.jsx(n.Button,{htmlType:"reset",children:"清空"})]})})]})]})}]})}),e.messageType===Q.LEARN_PATH_TREE&&"[object Array]"===(O=p,Object.prototype.toString.call(O))&&k.jsxs("div",{className:"mt-4",children:[p.map((e,t)=>k.jsxs("div",{className:"mb-4",children:[k.jsx("div",{className:"font-bold mb-2",children:`${t+1}. ${e.name}`}),k.jsx("div",{className:"text-sm text-gray-500 mb-2",children:e.desc}),k.jsx(n.Tree,{treeData:e.data,fieldNames:{title:"name",key:"name"},showLine:!0})]},e.name)),k.jsxs(n.Button,{onClick:()=>null==m?void 0:m(p),type:"primary",disabled:g,loading:g,className:"w-full bg-primary-600 mt-2 flex items-center justify-center px-4 py-4 text-white text-sm font-bold shadow-md hover:shadow-lg disabled:opacity-50 disabled:shadow-none transform active:scale-[0.98]",children:[k.jsx(r.Zap,{className:"h-4 w-4 mr-2"}),"保存路径"]})]}),e.messageType===Q.REL_LEARN_PATH&&p&&k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsxs("div",{className:"flex items-start justify-between mb-2",children:[k.jsx("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.name}),k.jsx("button",{onClick:()=>(e=>{const t=`${re}/editStudyPath/${e.id}`;window.open(t,"_blank")})(p),className:"p-1.5 rounded-lg hover:bg-gray-100 text-gray-400 transition-all opacity-0 group-hover:opacity-100",children:k.jsx(r.Pencil,{className:"w-3.5 h-3.5"})})]}),k.jsx("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.desc}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsx("button",{onClick:()=>{const e=`${re}/studyMap/${p.id}`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:"进入学习"})]})]}),e.messageType===Q.REL_PLAN_TASK&&p&&k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsx("div",{className:"flex items-start justify-between mb-2",children:k.jsx("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.name})}),k.jsx("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.desc}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:()=>{const e=`${re}/myStudyPath?planId=${p.id}`;window.open(e,"_blank")},className:"flex items-center bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看计划",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),e.messageType===Q.REL_KNOWLEDGE_CARD&&p&&k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsx("div",{className:"flex items-start mb-2",children:k.jsx("h4",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.title})}),k.jsx("p",{title:p.content,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:p.content}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsx("button",{onClick:()=>{const e=`${re}/knowledgeDetailPage/${p.knowledgeId}`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:"立即查看"})]})]}),e.messageType===Q.REL_QUESTION&&p&&k.jsxs("div",{className:"py-4 max-w-[300px]",children:[k.jsx("div",{className:"flex items-start mb-2",children:k.jsxs("h4",{className:"text-[16px] font-bold text-gray-900",children:["题目批次ID:",null==p?void 0:p.batchId]})}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),null==x||x(p)},className:"whitespace-nowrap bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["去答题 (共",p.questionCenterIds.length,"题)"]})]})]}),e.messageType===Q.REL_RECORD&&p&&k.jsxs("div",{className:"py-4",children:[k.jsxs("div",{className:"pt-4 max-w-[300px]",children:[k.jsxs("div",{className:"flex gap-2 items-start mb-2",children:[k.jsx(r.Video,{className:"w-[44px] h-[26px] text-primary-400"}),k.jsx("div",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:p.title})]}),k.jsx("p",{className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:"点击查看视频分析结果,获取详细的视频内容解析和学习建议。"}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[12px] font-bold text-primary-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:e=>{e.stopPropagation(),null==A||A(p.recordId||p.id)},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看视频",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),(null==b?void 0:b.length)&&k.jsxs("div",{className:"mt-4 max-w-[300px] pt-4 border-t border-gray-100",children:[k.jsxs("div",{className:"flex items-center gap-2 mb-3",children:[k.jsx("div",{className:"w-1 h-4 bg-gradient-to-b from-primary-400 to-primary-600 rounded-full"}),k.jsx("span",{className:"text-sm font-bold text-gray-800",children:"视频拼命解析中,先来看看这些吧~"})]}),k.jsx("div",{className:"space-y-2",children:b.map(e=>k.jsxs("div",{className:"flex items-center gap-3 p-2.5 rounded-xl bg-gradient-to-r from-gray-50 to-white hover:from-primary-50 hover:to-primary-50 transition-all duration-200 cursor-pointer group/item border border-gray-100 hover:border-primary-200 hover:shadow-md",onClick:t=>{t.stopPropagation(),(e=>{n.message.loading("视频获取中...");const{viewDetail:t,shareUserId:r,recordId:o}=e;if(t){const e=`${re}/mainPage?recordId=${o}`;window.open(e,"_blank")}else{const e=`${re}/mainPage?recordId=${o}&fromShare=true&shareUserId=${r}`;window.open(e,"_blank")}})(e)},children:[k.jsx("img",{referrerPolicy:"no-referrer",className:"w-24 h-16 rounded-lg group-hover/item:scale-105 transition-transform",src:e.pic}),k.jsxs("div",{className:"flex-1 min-w-0",children:[k.jsx("div",{title:e.title,className:"text-sm font-semibold text-gray-900 line-clamp-2 group-hover/item:text-primary-600 transition-colors",children:e.title}),k.jsxs("div",{className:"flex items-center gap-2 mt-1",children:[k.jsx("span",{className:"text-xs text-gray-500 whitespace-nowrap",children:e.createTime.split(" ")[0]}),k.jsx("span",{className:"text-xs text-gray-300",children:"•"}),k.jsxs("span",{className:"text-xs text-gray-500 whitespace-nowrap",children:[C(e.views),"次观看"]})]})]}),k.jsx("div",{className:"opacity-0 group-hover/item:opacity-100 transition-opacity",children:k.jsx(r.ArrowRight,{className:"w-4 h-4 text-primary-500"})})]},e.recordId))})]})]}),e.messageType===Q.REL_LEARN_TASK&&p&&k.jsxs("div",{className:"py-4 group min-w-[300px] max-w-[400px]",children:[k.jsxs("div",{className:"flex items-start justify-between mb-2",children:[k.jsxs("h4",{title:p.name,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:["任务名称:",p.taskName]}),k.jsx("button",{onClick:()=>(e=>{const t=`${re}/createTask?manual=true&editId=${e.id}`;window.open(t,"_blank")})(p),className:"p-1.5 rounded-lg hover:bg-gray-100 text-gray-400 transition-all opacity-0 group-hover:opacity-100",children:k.jsx(r.Pencil,{className:"w-3.5 h-3.5"})})]}),k.jsxs("div",{title:p.desc,className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:["推送周期:",D(p.cycleDays||[])]}),k.jsxs("div",{title:p.desc,className:"text-sm text-gray-500 mb-2 leading-relaxed line-clamp-3",children:["提醒时间:",p.reminderTimeDesc||"无"]}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsxs("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider",children:["生效时间:",p.effectiveDate]}),k.jsxs("button",{onClick:()=>{const e=`${re}/taskManagement`;window.open(e,"_blank")},className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["查看任务",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]}),e.messageType===Q.REL_EVALUATION&&p&&k.jsx(n.Spin,{spinning:10===(null==e?void 0:e.evaStatus),tip:"题目生成中...",children:k.jsxs("div",{className:"py-4 group max-w-[300px]",children:[k.jsx("div",{className:"flex items-start justify-between mb-2",children:k.jsxs("h4",{title:p.title,className:"text-[16px] font-bold text-gray-900 line-clamp-1",children:["测评方向:",p.title]})}),k.jsxs("p",{title:p.desc,className:"text-sm text-gray-500 mb-6 leading-relaxed line-clamp-3",children:["测评等级:",p.level]}),k.jsxs("div",{className:"flex items-center justify-between pt-4 border-t border-gray-50",children:[k.jsx("span",{className:"text-[11px] font-bold text-gray-400 uppercase tracking-wider"}),k.jsxs("button",{onClick:()=>(e=>{ie(e.userEvaId).then(e=>{if(10!==e.status)if(1!==e.status){const t=`${re}/skillAssessments?evaId=${e.id}`;window.open(t,"_blank")}else n.message.success("测评生成失败,请重新生成");else n.message.warning("测评题目生成中,请稍后查看,你也可以在:个人头像 -> 测评记录 页面中查看")})})(p),className:"bg-primary-600 hover:bg-primary-700 text-white rounded-xl h-9 px-4 font-bold text-xs gap-2",children:["进入测评",k.jsx(r.ArrowRight,{className:"w-3.5 h-3.5"})]})]})]})}),e.messageType===Q.REL_RESOURCE_EDIT&&p&&k.jsx(ls,{extraInfo:p,customDiffViewer:L,handleSend:y}),e.messageType===Q.TASK_TIP&&p&&k.jsxs("div",{className:"py-2 flex items-center gap-1",children:["学习计划已经定了,明天 ",null==p?void 0:p.reminderTimeDesc," 我叫你接着学,好吗?",k.jsxs("div",{className:"whitespace-nowrap text-green-500 cursor-pointer hover:text-green-400 hover:underline text-[11px] flex items-center gap-1 px-2.5 py-0.5 border border-green-500 rounded-full",onClick:()=>{const e=`${re}/todayTasks/taskManagement`;window.open(e,"_blank")},children:["已经在日程里了",k.jsx(r.Check,{className:"w-3.5 h-3.5"})]})]}),e.messageType===Q.TASK_EDIT&&p&&k.jsx(ss,{extraInfo:p})]}),"ai"===e.role&&e.messageType===Q.TEXT&&"string"==typeof e.content&&k.jsxs("div",{className:"flex items-center gap-2 px-1",children:[k.jsx("button",{onClick:()=>ae(e.content),className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.Copy,{className:"w-3.5 h-3.5"})}),!w&&k.jsx(n.Dropdown,{menu:{items:[{key:"convert-to-knowledge",label:"转化为知识点",onClick:()=>{(async e=>{var t,r;z(!0),H(!0),K.current&&(null==(t=K.current)||t.close()),X.current="",J.current=e;try{const t={system:"<session>"+M(e)+"</session>",message:"将该会话转化成知识点"};n.message.warning("开始生成知识点,请稍后...");const r=await(async()=>{const e=await oe({app:"vgen-web",btype:"button-event",extra:JSON.stringify({sessionId:"-1",enableSearch:!1})});return(null==e?void 0:e.data)||""})(),o=((e,t,n,r)=>te({url:"/saas/chat/sse",method:"POST",body:{...t},query:{sessionId:"-1"},headers:{"x-run-id":r||""}},{...n}))(0,{...t},{onProgress:e=>{Y(e)},onError:e=>{H(!1),Y("")},onComplete:({sessionKnowledgeData:e})=>{var t;H(!1);try{const t=N(e||"");(null==t?void 0:t.content)&&(e=>$.post("/api/v1.0/knowledge/save",e))({btype:1,data:I([t])}).then(e=>{var t,n;const r=(null==e?void 0:e.knowledgeList)||[];(null==(t=r[0])?void 0:t.knowledgeId)&&(X.current=null==(n=r[0])?void 0:n.knowledgeId)})}catch(n){z(!1),H(!1),K.current&&(null==(t=K.current)||t.close())}}},r);K.current=o}catch(o){n.message.error(o.message||"知识点转化失败"),z(!1),H(!1),K.current&&(null==(r=K.current)||r.close())}})(e.content)}}]},trigger:["hover"],children:k.jsx("button",{className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",onClick:e=>{e.stopPropagation()},children:k.jsx(r.Wand2,{className:"w-3.5 h-3.5"})})})]}),"user"===e.role&&e.messageType===Q.TEXT&&k.jsxs("div",{className:"w-full flex items-center justify-end gap-2 px-1",children:[k.jsx("button",{onClick:()=>ae(e.content),className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.Copy,{className:"w-3.5 h-3.5"})}),k.jsx(n.Tooltip,{title:"重新发送",placement:"bottom",arrow:!1,children:k.jsx("button",{onClick:()=>{y({input:e.content})},className:"p-1.5 text-gray-500 hover:text-gray-600 transition-colors",children:k.jsx(r.RefreshCcw,{className:"w-3.5 h-3.5"})})})]}),(null==(l=null==p?void 0:p.buttonList)?void 0:l.length)&&v?k.jsx("div",{className:"w-full max-w-2xl mb-2 flex gap-4",children:null==p?void 0:p.buttonList.map((e,t)=>k.jsx(s.motion.div,{initial:{opacity:0,x:-20},animate:{opacity:1,x:0},transition:{delay:.1*t,duration:.4},children:k.jsx("button",{onClick:()=>{"sendTopic"===e.action&&y({input:e.topic})},className:"w-full group/recommend flex items-center justify-between px-4 py-2 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-primary-200 hover:bg-primary-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",children:e.topic})},e.topic+t))}):null,(null==(c=null==p?void 0:p.recommendList)?void 0:c.length)&&v?k.jsx("div",{className:"w-full max-w-2xl mb-2",children:k.jsx("div",{className:"flex flex-col gap-3",children:null==p?void 0:p.recommendList.map((e,t)=>{var n,r;const o=U[e.scene],a=(null==(n=null==q?void 0:q[e.scene])?void 0:n.pre)+"《"+e.topic+"》"+(null==(r=null==q?void 0:q[e.scene])?void 0:r.after);return k.jsx(s.motion.div,{initial:{opacity:0,x:-20},animate:{opacity:1,x:0},transition:{delay:.1*t,duration:.4},children:k.jsxs("button",{onClick:()=>{y({input:a,scene:e.scene})},className:"w-full group/recommend flex items-center justify-between p-4 bg-white/80 backdrop-blur-sm border border-slate-100 rounded-xl hover:border-primary-200 hover:bg-primary-50/30 transition-all duration-300 text-left shadow-sm hover:shadow-md",children:[k.jsxs("div",{className:"flex items-center gap-3",children:[o&&k.jsxs("div",{className:"text-sm px-2 py-1.5 flex items-center gap-1 transition-colors rounded-md bg-primary/10 text-primary border border-primary/20",children:[k.jsx(o,{className:`${F[e.scene]} w-5 h-5`}),V[e.scene]]}),k.jsx("span",{title:e.topic,className:"flex-1 text-[15px] text-slate-700 font-medium group-hover/recommend:text-primary-600 transition-colors line-clamp-1",children:a})]}),k.jsx(u.ArrowRightOutlined,{className:"text-slate-300 group-hover/recommend:text-primary-400 opacity-100 group-hover/recommend:opacity-100 -translate-x-2 group-hover/recommend:translate-x-0 transition-all"})]})},e.topic+t)})})}):null,"ai"===e.role&&e.messageType===Q.TASK_TIP?k.jsx("div",{className:"flex items-center gap-2 px-1",children:k.jsxs("button",{onClick:()=>(e=>{null==R||R({content:"",role:"ai",messageType:Q.TASK_EDIT,toPost:!1,extraInfo:JSON.stringify({...e})})})(p),className:"flex items-center p-1.5 gap-1 text-[12px] text-gray-500 italic hover:text-gray-600 transition-colors",children:[k.jsx(r.RefreshCcw,{className:"w-3 h-3"}),"改个时间"]})}):null]})]},e.id);var O}),k.jsx(ns,{destroyOnHidden:!0,maskClosable:!1,open:O,title:B?"正在转化...":"转化完成",content:k.jsx("div",{className:"w-[140px]",children:B?k.jsxs("div",{className:"flex flex-col items-center justify-center py-8",children:[k.jsx("div",{className:"w-16 h-16 bg-primary-50 text-primary-600 rounded-2xl flex items-center justify-center mx-auto mb-6 animate-bounce",children:k.jsx(r.BookOpenText,{className:"w-8 h-8 opacity-50"})}),k.jsx("p",{className:"text-gray-600",children:G||"正在将对话内容转化为知识点..."})]}):k.jsxs("div",{className:"text-center py-4",children:[k.jsx("div",{className:"mx-auto w-16 h-16 bg-green-100 rounded-full flex items-center justify-center mb-4",children:k.jsx("svg",{className:"w-8 h-8 text-green-500",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",children:k.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",d:"M5 13l4 4L19 7"})})}),k.jsx("h3",{className:"text-lg font-medium text-gray-900 mb-2",children:"转化成功!"}),k.jsx("p",{className:"text-gray-600 mb-6",children:"对话内容已成功转化为知识点卡片"}),k.jsxs("div",{className:"flex justify-center gap-3",children:[k.jsx(n.Button,{type:"primary",onClick:()=>{z(!1)},children:"继续聊天"}),k.jsx(n.Button,{onClick:()=>{z(!1);const e=`${re}/knowledgeDetailPage?knowledgeId=${X.current}`;window.open(e,"_blank")},children:"查看知识点"})]})]})}),footer:null,onCancel:()=>z(!1)})]})});var ps,fs={},hs=function(){if(ps)return fs;ps=1;var e=h;if("production"===process.env.NODE_ENV)fs.createRoot=e.createRoot,fs.hydrateRoot=e.hydrateRoot;else{var t=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;fs.createRoot=function(n,r){t.usingClientEntryPoint=!0;try{return e.createRoot(n,r)}finally{t.usingClientEntryPoint=!1}},fs.hydrateRoot=function(n,r,o){t.usingClientEntryPoint=!0;try{return e.hydrateRoot(n,r,o)}finally{t.usingClientEntryPoint=!1}}}return fs}();const ms=t.forwardRef((e,r)=>{const{onChange:o,minHeight:a=150,maxHeight:i=150,placeholder:s,sendMsg:l}=e,c=t.useRef(null),[u,d]=t.useState(""),[p,f]=t.useState([]),[h,m]=t.useState([""]),[g,x]=t.useState(0);t.useImperativeHandle(r,()=>({getHtmlContent:()=>u,getStructuredData:()=>p,addText:E,addTag:T,addQuotedText:N,addInput:M,addDropdown:I,focusInput:v,clearContent:j}));const A=()=>{if(!c.current)return;const e=[];c.current.childNodes.forEach(t=>{var n,r,o;if(t.nodeType===Node.TEXT_NODE){const r=null==(n=t.textContent)?void 0:n.trim();r&&e.push({type:"text",value:r})}else if(t.nodeType===Node.ELEMENT_NODE&&(null==(r=null==t?void 0:t.dataset)?void 0:r.quote))e.push({type:"text",value:null==(o=null==t?void 0:t.dataset)?void 0:o.quote});else if(t.nodeType===Node.ELEMENT_NODE&&"BR"===t.nodeName)e.push({type:"br",value:""});else if(t.nodeType===Node.ELEMENT_NODE){const n=t;if("false"===n.getAttribute("contenteditable")){const t=n.querySelector("input"),r=n.querySelector("select"),o=n.getAttribute("data-selected-value");t&&!o?e.push({type:"input",value:t.value}):r?e.push({type:"select",value:r.value}):o?e.push({type:"select",value:o}):e.push({type:"tag",value:n.innerText.replace("🏷️","").trim()})}else if("true"===n.contentEditable){const t=n.innerText;t&&e.push({type:"text",value:t})}else{const t=n.innerText.trim();t&&e.push({type:"text",value:t})}}}),f(e)};t.useEffect(()=>{null==o||o(p)},[p]);const b=t.useCallback(((e,t=500,n=!1)=>{let r=null;return(...o)=>{const a=n&&!r;r&&clearTimeout(r),r=setTimeout(()=>{r=null,n||e(...o)},t),a&&e(...o)}})(e=>{m(t=>{const n=t.slice(0,g+1);return n.push(e),n.slice(-50)}),x(e=>e+1)},300),[g,h]),y=()=>{if(c.current){const e=c.current.innerHTML.trim();"<br>"!==e&&"<br/>"!==e&&"<br />"!==e||(c.current.innerHTML="");const t=c.current.innerHTML;d(t),A(),b(t)}},w=(e,t)=>{var n,r;if(t&&!e){const e=document.createElement("br"),t=window.getSelection();if(!t||!t.rangeCount)return;const r=t.getRangeAt(0);r.deleteContents(),r.insertNode(e);const o=document.createRange();return o.setStartAfter(e),o.setEndAfter(e),t.removeAllRanges(),t.addRange(o),y(),void(null==(n=c.current)||n.focus())}if(!e)return;const o=window.getSelection();if(!o||!o.rangeCount)return;const a=o.getRangeAt(0);a.deleteContents(),a.insertNode(e);const i=document.createRange();i.setStartAfter(e),i.setEndAfter(e),o.removeAllRanges(),o.addRange(i),y(),null==(r=c.current)||r.focus()},v=()=>{var e;null==(e=c.current)||e.focus()},j=()=>{c.current&&(d(""),f([]),c.current.innerHTML="",y())},E=e=>{const t=document.createElement("span");t.contentEditable="true",t.innerHTML=`${e}`.replace(/\n/g,"<br>"),w(t)},T=e=>{const t=document.createElement("span");t.contentEditable="false",t.className="inline-flex items-center mx-1 px-2 py-1.5 rounded-md text-sm font-medium bg-primary/10 text-primary border border-primary/20 select-none transition-all hover:bg-primary/20";const n=document.createElement("span");n.innerHTML=`${e}`.replace(/\n/g,"<br>"),t.appendChild(n),t.appendChild((e=>{const t=document.createElement("button");return t.className="ml-1.5 p-0.5 rounded-full hover:bg-black/10 text-current/40 hover:text-current transition-colors focus:outline-none flex items-center justify-center",t.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',t.onclick=t=>{t.stopPropagation(),e.remove(),y()},t})(t)),w(t)},N=e=>{const t=document.createElement("span");t.contentEditable="false",t.className="mb-1 qouteSpan relative inline-flex items-center mx-1 pl-4 pr-2 py-1 rounded-md text-sm font-medium bg-primary-50 text-primary-600 border border-primary-200 select-none transition-all hover:bg-primary-100";const n=document.createElement("span"),r=e.match(/<<<(.*?)>>>/),o=null==r?void 0:r[1];if(!o)return;const a=o.slice(0,10);n.innerHTML=`${a}...`,t.dataset.quote=e,t.appendChild(n),w(t)},M=(e,t)=>{const n=document.createElement("span");n.contentEditable="false",n.className="max-w-[400px] inline-flex items-center mx-1 px-2 py-1.5 rounded-lg bg-gray-100 focus-within:ring-2 focus-within:ring-ring";const r=document.createElement("input");r.type="text",r.value=e,r.placeholder=t||"请输入",r.className="bg-transparent border-none outline-none text-sm px-1 text-foreground",r.style.minWidth="0";const o=()=>{const e=document.createElement("span");e.style.visibility="hidden",e.style.position="absolute",e.style.whiteSpace="nowrap",e.style.fontSize="14px",e.style.fontFamily="inherit",e.textContent=r.value||t,document.body.appendChild(e);const n=Math.max(0,e.offsetWidth+10);r.style.width=`${n}px`,document.body.removeChild(e)};o(),r.oninput=()=>{o(),A()},n.appendChild(r),w(n)},I=(e,t)=>{const r=document.createElement("span");r.contentEditable="false",r.className="inline-flex items-center px-2 mx-1 py-0 rounded-lg bg-indigo-50 text-indigo-700 shadow-sm transition-all hover:bg-indigo-100",r.setAttribute("data-selected-value",t);const o=document.createElement("div");o.style.display="inline-flex",o.style.alignItems="center",hs.createRoot(o).render(k.jsx(n.Select,{defaultValue:t,className:"textareaSelect",onSelect:e=>{r.setAttribute("data-selected-value",e),A()},children:e.map(e=>k.jsx(n.Select.Option,{value:e,children:e},e))})),o.onmousedown=e=>e.stopPropagation(),r.appendChild(o),w(r)};return k.jsx("div",{className:"w-full mx-auto",children:k.jsx("div",{className:`tagTextareaContent overflow-y-auto min-h-[${a}px] max-h-[${i}px]`,style:{minHeight:a+"px",maxHeight:i+"px"},children:k.jsx("div",{ref:c,contentEditable:!0,onInput:y,className:"smartEditor smart-editor h-full focus:outline-none text-[15px] leading-relaxed text-slate-800 empty:before:content-[attr(data-placeholder)] empty:before:text-slate-300",style:{minHeight:a+"px",maxHeight:i+"px"},"data-placeholder":s,onPaste:e=>{var t,n,r;if("INPUT"===e.target.tagName)return;e.preventDefault();const o=(null==(t=e.clipboardData)?void 0:t.getData("text/plain"))||"",a=window.getSelection();if(!a||!a.rangeCount)return;const i=a.getRangeAt(0);i.deleteContents();const s=o.split("\n");s.reverse().forEach((e,t)=>{const n=document.createTextNode(e);if(i.insertNode(n),t<s.length-1){const e=document.createElement("br");i.insertNode(e)}});const l=document.createRange();l.setStartAfter(i.endContainer),l.collapse(!0),a.removeAllRanges(),a.addRange(l),y(),null==(n=c.current)||n.focus();const u=window.getSelection();if(u){const e=document.createRange(),t=null==(r=c.current)?void 0:r.lastChild;t?e.setStartAfter(t):c.current&&e.setStart(c.current,0),e.collapse(!0),u.removeAllRanges(),u.addRange(e)}},onKeyDown:e=>{if("Enter"===e.key){if(e.isComposing||e.nativeEvent.isComposing)return;e.ctrlKey?(e.preventDefault(),w(null,!0),w(null,!0)):(e.preventDefault(),null==l||l(),j())}else if(e.ctrlKey&&"z"===e.key){if(e.preventDefault(),g>0){const e=g-1,t=h[e];if(c.current){c.current.innerHTML=t,d(t),x(e),A(),c.current.focus();const n=window.getSelection();if(n){const e=document.createRange(),t=c.current.lastChild;t?e.setStartAfter(t):e.setStart(c.current,0),e.collapse(!0),n.removeAllRanges(),n.addRange(e)}}}}else if(e.ctrlKey&&"y"===e.key&&(e.preventDefault(),g<h.length-1)){const e=g+1,t=h[e];if(c.current){c.current.innerHTML=t,d(t),x(e),A(),c.current.focus();const n=window.getSelection();if(n){const e=document.createRange(),t=c.current.lastChild;t?e.setStartAfter(t):e.setStart(c.current,0),e.collapse(!0),n.removeAllRanges(),n.addRange(e)}}}}})})})}),gs="_title_1r6dj_203",xs=e=>{const{analyzeCallback:o,closeAnalysisModal:a,initUrl:i,forChatUse:s,chatVideoUrl:l,needTraceId:c=!1,sessionId:u=""}=e,[d,p]=t.useState(""),[f,h]=t.useState(!1),[m,g]=t.useState(!1),[x,A]=t.useState([]),[b,y]=t.useState([]),[w,v]=t.useState(!1),[j,E]=t.useState(!1),[T,N]=t.useState(),[M,I]=t.useState(0);t.useEffect(()=>{$.get("/api/v1.0/duration/user-duration").then(e=>{I(e)})},[]),t.useEffect(()=>{s&&l&&(p(l),C(l))},[s,l]),t.useEffect(()=>{p(i||"")},[i]);const C=e=>{const t=(e||d).split("\n");let r=[];t.map(e=>{const t=e.split(",");r=r.concat(t)}),r=r.filter(e=>{return""!==e.trim()&&(0===(t=e).indexOf("http://")||0===t.indexOf("https://"));var t}),0!==r.length?(r=Array.from(new Set(r)),r.length>3?n.message.warning("最多只能同时解析三个链接"):(A([]),S(r))):n.message.warning("请输入有效的链接")},S=e=>{var t;(t={urls:e,code:"1"},$.post("/api/v1.0/record/video/overview",t)).then(t=>{var r,o,i;if(null==t?void 0:t.some(e=>null==e?void 0:e.collection)){null==a||a();const n=[],r=e.map(e=>{const t=(e=>{const t=new URL(e),n=t.pathname.match(/\/video\/(BV\w{10})/i);return{bvid:n?n[1]:null,p:t.searchParams.get("p")||"1",recordId:t.searchParams.get("recordId")||"",code:t.searchParams.get("code")||""}})(e);return t}),o=t.map(e=>{var t;const o=r.find(t=>t.bvid===e.bvid);return{title:e.title,bvid:e.bvid+e.title,realBvid:e.bvid,seasonDisplay:e.seasonDisplay,pages:null==(t=null==e?void 0:e.pages)?void 0:t.map(t=>{const r=e.code+":::"+t.bvid+":::"+t.cid+":::"+e.title+":::"+t.duration+":::"+t.part;return(!e.seasonDisplay&&(null==o?void 0:o.p)===String(t.page)||e.seasonDisplay&&t.bvid===(null==o?void 0:o.bvid))&&n.push(r),{label:t.part,value:r,parsed:t.parsed}})}});A(n),y(o);let i=0;n.forEach(e=>{var t;const n=Number(null==(t=e.split(":::"))?void 0:t[4])||0,r=Math.ceil(n/60);i+=r});const s=1.8*i;if(M<s)return void v(!0);if(M>=s&&M<=40)return E(!0),void N(()=>()=>{B(o)});B(o)}else{if(null==t?void 0:t.some(e=>{var t;return(null==(t=null==e?void 0:e.pages)?void 0:t.length)>1}))return void n.message.warning("多合集类型链接暂不支持解析!");const e=null==t?void 0:t.map(e=>{var t;return{groupName:void 0,videoIdParamList:null==(t=null==e?void 0:e.pages)?void 0:t.map(t=>({code:e.code,bvid:t.bvid,cid:t.cid,duration:t.duration,title:t.part}))}}),a=null==(i=null==(o=null==(r=null==e?void 0:e[0])?void 0:r.videoIdParamList)?void 0:o[0])?void 0:i.duration,s=a?Math.floor(Number(a)/60):0;if(s>1.8*s)return void v(!0);if(M>=P&&M<=40)return E(!0),void N(()=>()=>{z(e)});z(e)}})},D=(e,t)=>{var r;const o=(null==(r=t.filter(e=>e.parsed))?void 0:r.length)||0;return k.jsxs("div",{className:"_collectionTitle_1r6dj_240",children:[k.jsx(n.Tooltip,{title:e,children:k.jsx("div",{className:gs,children:e})}),o?k.jsxs("div",{className:"_freeCount_1r6dj_252",children:[o,"个限时免费"]}):null]})},R=t.useMemo(()=>b.map(e=>{return{key:e.bvid,label:D(e.title,e.pages),children:(t=e.pages,o=e.title,k.jsx("div",{className:"_videoList_1r6dj_181",id:o,children:t.map(({label:e,value:t,parsed:o})=>{const a=x.includes(t);return k.jsx(n.Tooltip,{title:e.length>9?e:"",children:k.jsxs("div",{id:t,className:ts("_videoItem_1r6dj_190",a&&"_selected_1r6dj_230"),onClick:()=>{x.length>=3&&!a?n.message.warning("最多只能选择三个视频进行解析"):A(e=>{const n=[...e];return a?n.splice(n.indexOf(t),1):n.push(t),n})},children:[k.jsx("div",{className:gs,children:e}),a&&k.jsx("img",{src:"data:image/svg+xml,%3c?xml%20version='1.0'%20encoding='UTF-8'?%3e%3csvg%20width='22px'%20height='13px'%20viewBox='0%200%2022%2013'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3ctitle%3e编组%2020%3c/title%3e%3cg%20id='页面-1'%20stroke='none'%20stroke-width='1'%20fill='none'%20fill-rule='evenodd'%3e%3cg%20id='解析合集'%20transform='translate(-1073.000000,%20-560.000000)'%3e%3cg%20id='编组-17'%20transform='translate(923.000000,%20531.000000)'%3e%3cg%20id='编组-20'%20transform='translate(150.000000,%2029.000000)'%3e%3cpath%20d='M5.38653786,0%20L22,0%20L22,0%20L22,10%20C22,11.6568542%2020.6568542,13%2019,13%20L0,13%20L0,13%20L2.46336427,2.32542148%20C2.7774858,0.964228212%203.98956991,1.58888648e-15%205.38653786,0%20Z'%20id='矩形'%20fill='%230064FF'%3e%3c/path%3e%3cpath%20d='M11.3333333,10%20C11.1666667,10%2011.0555556,9.94615384%2010.9444444,9.83846154%20L8.16666667,7.14615385%20C7.94444444,6.93076923%207.94444444,6.60769231%208.16666667,6.39230769%20C8.3888889,6.17692307%208.72222223,6.17692307%208.94444444,6.39230769%20L11.3333333,8.70769231%20L17.0555556,3.16153846%20C17.2777778,2.94615385%2017.6111111,2.94615385%2017.8333333,3.16153846%20C18.0555555,3.37692308%2018.0555556,3.70000001%2017.8333333,3.91538463%20L11.7222222,9.83846154%20C11.6111111,9.94615384%2011.5,10%2011.3333333,10%20Z'%20id='路径'%20fill='%23FFFFFF'%20fill-rule='nonzero'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/g%3e%3c/svg%3e"}),o&&k.jsxs("div",{className:"_freeBadge_1r6dj_209",children:[k.jsx(r.Zap,{className:"_icon_1r6dj_222"}),"限免"]})]},t)},t)})}))};var t,o}),[x,b]),L=t.useRef(null);t.useEffect(()=>{if(m)return L.current=setTimeout(()=>{b.forEach((e,t)=>{var n;const r=document.getElementById(e.title),o=null==(n=e.pages.find(e=>x.includes(e.value)))?void 0:n.value,a=document.getElementById(o||"");null==r||r.scrollTo({top:a.offsetTop-240-200*t,behavior:"smooth"})})},0),()=>{L.current&&clearTimeout(L.current)}},[m]);const P=t.useMemo(()=>{let e=0;return x.forEach(t=>{var n;const r=Number(null==(n=t.split(":::"))?void 0:n[4])||0,o=Math.ceil(r/60);e+=o}),1.8*e},[x]),O=()=>{if(P>M)return void v(!0);let e=[];x.forEach(t=>{const n=t.split(":::"),r=e.findIndex(e=>e.groupName===n[3]);r>-1?(e[r].videoIdParamList||(e[r].videoIdParamList=[]),e[r].videoIdParamList.push({code:n[0],bvid:n[1],cid:n[2],title:n[5]})):e.push({groupName:n[3],videoIdParamList:[{code:n[0],bvid:n[1],cid:n[2],title:n[5]}]})}),e=e.map(e=>({groupName:e.groupName||void 0,videoIdParamList:e.videoIdParamList})),z(e)},z=async e=>{let t="";if(c&&u){const e={sessionId:u},n=await oe({app:"vgen-web",btype:"workflow",extra:JSON.stringify(e)});t=(null==n?void 0:n.data)||""}((e,t,n)=>$.post(`/api/v1.0/record?chatbotSessionId=${n||""}`,e,{headers:{"x-run-id":t||""}}))(e,t,u).then(t=>{g(!1),p(""),o&&o(t,e)}).catch(()=>{})},B=e=>{var t;const n=e||b;if(n.length>1)return void h(!1);h(!1);const r=null==(t=(e=>{const t=e.includes("?")?e.split("?")[1]:"",n={};if(!t)return n;const r=t.split("&");for(const o of r){const[e,t]=o.split("=");e&&(n[decodeURIComponent(e)]=decodeURIComponent(t||""))}return n})(s?l||"":d))?void 0:t.p,o=r?Number(r):1,a=null==n?void 0:n.map(e=>{var t;let n=null==(t=null==e?void 0:e.pages)?void 0:t[o-1];if(e.seasonDisplay){const t=e.pages.find(t=>{var n;return(null==(n=t.value.split(":::"))?void 0:n[1])===e.realBvid});t&&(n=t)}const r=null==n?void 0:n.value.split(":::");return{groupName:e.pages.length>1?e.title:void 0,videoIdParamList:[{code:r[0],bvid:r[1],cid:r[2],title:n.label}]}});z(a)};return k.jsxs("div",{className:"_analyzeCom_1r6dj_32",children:[k.jsx(ns,{open:f,title:"发现合集视频!",content:"该视频包含多个分集内容。是否分析整个合集?",okText:"查看合集",cancelText:"暂不",onOk:()=>{h(!1),g(!0)},onCancel:()=>{h(!1)},onCancelCallback:()=>{if(!(M<P))return M>=P&&M<=40?(E(!0),void N(()=>()=>{B()})):void B();v(!0)}}),k.jsx(ns,{destroyOnHidden:!0,style:{top:"20% !important"},open:m,contentType:"left",title:"发现合集视频!",content:k.jsxs("div",{className:"_colletionList_1r6dj_129",children:[k.jsx("div",{className:"_colletionListHeader_1r6dj_132",children:"该视频包含多个分集内容,请选择你想要分析的章节:"}),k.jsxs("div",{className:"_buyVip_1r6dj_142",children:["额度剩余:",k.jsx("span",{style:{color:M>15?"#52C41A":"#F5222D"},children:M})," 饼干"]}),k.jsxs("div",{className:"_countText_1r6dj_150",children:["已选视频:",k.jsxs("span",{style:{color:"#52c41a"},children:[x.length," "]}),",共计 ",k.jsx("span",{style:{color:"#F5222D"},children:P})," 饼干,"]}),k.jsx("div",{className:"_collectionList_1r6dj_156",children:k.jsx(n.Collapse,{items:R,destroyOnHidden:!0,collapsible:"icon",defaultActiveKey:R.map(e=>e.key)})})]}),okText:"分析",cancelText:"暂不",onOk:()=>{if(null==x?void 0:x.length)return M>=P&&M<=40?(E(!0),g(!1),void N(()=>()=>{O()})):void O();n.message.warning("请先选择视频")},onCancel:()=>{g(!1),A([])}}),k.jsx(ns,{destroyOnHidden:!0,open:w,title:"余额不足!",content:k.jsxs("div",{children:["剩余",k.jsx("span",{style:{color:"#F5222D"},children:M}),"饼干,视频时长超出余额无法分析,去邀请好友赚更多时长吧~"]}),okText:"立即邀请好友赚200饼干",cancelText:"稍后再说",onOk:()=>{},onCancel:()=>{v(!1)}}),k.jsx(ns,{destroyOnHidden:!0,open:j,title:"余额不足!",content:k.jsxs("div",{children:["剩余",k.jsx("span",{style:{color:"#F5222D"},children:M}),"饼干,去邀请好友赚更多时长吧~"]}),okText:"立即邀请好友赚200饼干",cancelText:"继续分析",onOk:()=>{},onCancel:()=>{E(!1)},onCancelCallback:()=>{null==T||T()}})]})},As=t.memo(e=>{const{videoMode:n}=e,r=t.useMemo(()=>{switch(n){case"video":return"你好!我是你的专属AI助手,视频中有什么不懂的地方,随时喊我哦~";case"course":return"你好!我是你的专属AI助手,我可以为你提供详细的课程讲解和学习建议。";default:return"你好!我是你的专属AI助手,有什么不懂的随时喊我哦~"}},[n]);return k.jsx("div",{className:"space-y-2",children:k.jsx("p",{className:"text-[13px] text-gray-800 leading-relaxed font-medium",children:r})})}),bs=t.memo(e=>{const{videoInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎继续观看《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,看视频时有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),ys=t.memo(e=>{const{videoInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎观看《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,看视频时有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})});t.memo(e=>{const{courseInfo:t,handleSendMessage:o}=e;return k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-2 text-primary-600 font-bold text-sm",children:[k.jsx(r.Star,{className:"w-4 h-4"}),"欢迎回来~ 继续学习《",t.name,"》!"]}),k.jsxs("div",{className:"bg-gray-50 rounded-xl p-3 border border-gray-100",children:[k.jsx("p",{className:"text-xs text-gray-500 mb-1",children:"📊 上次学到:"}),k.jsxs("p",{className:"text-[13px] font-bold text-gray-800",children:[t.chapter,"(进度 75%)"]})]}),k.jsxs("div",{className:"flex gap-2 pt-2",children:[k.jsx(n.Button,{size:"small",type:"primary",className:"bg-[#0099cc] text-[11px] h-8 px-4 border-none",onClick:()=>o({input:"继续上次的话题"}),children:"继续提问"}),k.jsx(n.Button,{type:"text",size:"small",className:"text-[11px] h-8 text-gray-400",children:"重新开始"})]})]})});const ws=t.memo(e=>{const{courseInfo:t,handleSendMessage:n}=e;return k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎学习《",t.name,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,陪你一起学习~ (。•̀ᴗ-)و✧"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-4",children:[k.jsxs("div",{className:"flex items-center gap-2",children:[k.jsx(r.BookOpen,{className:"w-4 h-4 text-primary-500"}),k.jsxs("span",{className:"text-[12px] font-bold text-gray-800",children:["当前章节:",t.chapter]})]}),k.jsxs("div",{className:"space-y-3",children:[k.jsx("p",{className:"text-[12px] font-bold text-gray-900",children:"我可以帮你:"}),k.jsx("div",{className:"grid grid-cols-2 gap-x-6 gap-y-2.5",children:K.map(e=>k.jsxs("button",{onClick:()=>n({input:e.label}),className:"flex items-center gap-2 group hover:translate-x-1 transition-all active:scale-95",children:[k.jsx("div",{className:"w-1.5 h-1.5 rounded-full bg-primary-400 group-hover:bg-primary-600 group-hover:scale-125 transition-all"}),k.jsx("span",{className:"text-[12px] text-gray-600 group-hover:text-primary-600 group-hover:font-bold group-hover:underline underline-offset-4 decoration-primary-200 text-left transition-all",children:e.label})]},e.id))})]})]}),k.jsx("div",{className:"h-px bg-gray-100/60"}),k.jsxs("div",{className:"space-y-3",children:[k.jsx("p",{className:"text-[11px] font-bold text-gray-400",children:"进阶功能 (前往 Vgen):"}),k.jsx("div",{className:"flex flex-wrap gap-x-4 gap-y-2",children:[{label:"生成学习计划",icon:k.jsx(r.GitBranch,{className:"w-3 h-3"})},{label:"AI智能出题",icon:k.jsx(r.FileCode,{className:"w-3 h-3"})},{label:"能力测评",icon:k.jsx(r.Trophy,{className:"w-3 h-3"})}].map(e=>k.jsxs("button",{className:"text-[11px] text-gray-500 hover:text-primary-600 flex items-center gap-1.5 transition-colors",children:[e.icon,e.label]},e.label))})]})]})}),vs=t.memo(e=>{const{knowledgeInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎继续学习《",null==t?void 0:t.title,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),ks=t.memo(e=>{const{knowledgeInfo:t}=e;return k.jsx("div",{children:k.jsxs("div",{className:"space-y-1",children:[k.jsxs("p",{className:"text-[15px] font-bold text-gray-900",children:["欢迎学习《",null==t?void 0:t.title,"》!"]}),k.jsx("p",{className:"text-[13px] text-gray-600 leading-relaxed",children:"我是你的 AI 学伴饼干,有什么不明白的,随时都可以问我哦~ (。•̀ᴗ-)و✧"})]})})}),js=e=>{const{token:r,viewMode:o="default",isDev:a,chatId:i,courseInfo:s,videoInfo:l,knowledgeInfo:c}=e,[u,d]=t.useState(!1),[p,f]=t.useState({}),[h,m]=t.useState([]),[g,x]=t.useState(""),[A,b]=t.useState(0),[y,w]=t.useState("在此输入你的需求或问题..."),[v,j]=t.useState(""),[E,M]=t.useState([]),[I,C]=t.useState(!0),[S,D]=t.useState(!1),[R,P]=t.useState(""),[B,G]=t.useState(!1),[Y,U]=t.useState(""),[F,V]=t.useState(!1),[q,Q]=t.useState(""),[W,Z]=t.useState(null),[J,K]=t.useState(!1),[X,_]=t.useState(null),[ee,ie]=t.useState(!1),[se,le]=t.useState(""),[ce,ue]=t.useState([]),[de,pe]=t.useState(!1),[fe,he]=t.useState(0),[me,ge]=t.useState(0),[xe,Ae]=t.useState(!1),[be,ye]=t.useState(null),[we,ve]=t.useState("fresh"),[ke,je]=t.useState(new Set),Ee=t.useRef([]),Te=t.useRef(""),Ne=t.useRef(!0),Me=t.useRef(0),Ie=t.useRef(null),Ce=t.useRef(!1),Se=t.useRef(null);t.useEffect(()=>{var e,t;if(Ee.current=h,h.length>0&&h[0].messageType===O.REL_PLAN_TASK){const n=N(null==(e=h[0])?void 0:e.extraInfo);if(!(null==n?void 0:n.learnTaskConfigId))return;(t=null==n?void 0:n.learnTaskConfigId,$.get(`/api/v1.0/learning-task/config/${t}`)).then(e=>{He({content:"",role:"ai",messageType:O.TASK_TIP,extraInfo:JSON.stringify({...e})})})}},[h]),t.useEffect(()=>{Ne.current=I},[I]),t.useEffect(()=>{Me.current=A},[A]),t.useEffect(()=>{if(!h.length)return;const e=[];h.forEach(t=>{if([O.REL_KNOWLEDGE_CARD,O.REL_LEARN_PATH,O.REL_QUESTION,O.REL_RECORD].includes(t.messageType)){const{id:n,messageType:r,extraInfo:o}=t,a=N(o);a&&e.push({id:n,type:r,extraInfo:a})}}),M(e)},[h]),t.useEffect(()=>{"undefined"!=typeof window&&(window.isRunInDev=a)},[a]),t.useEffect(()=>{localStorage.setItem(H,r),De()},[r]);const De=async()=>{const e=await $.get("/api/v0.3/user/detail");d(e.isLogin||!1),f(e)};t.useEffect(()=>{b(i||0)},[i]);const[Re,Le]=t.useState(!1),Pe=()=>{switch(o){case"video":Oe();break;case"course":break;case"knowledgeCard":ze()}};t.useEffect(()=>{u&&Re&&!de&&(pe(!0),Pe())},[u,Re,de]);const Oe=()=>{l?ae({currentPage:1,pageSize:20,dataBtype:10,dataId:l.recordId,orders:[{key:"create_time",asc:!1}]}).then(e=>{e.dataList.length?(b(e.dataList[0].id),ue(e.dataList),Be(e.dataList[0].id)):ne({btype:2,dataType:10,dataId:l.recordId}).then(e=>{b(e),Qe(),Be(e)})}):n.message.error("视频信息未传入!")},ze=()=>{if(c)return i?(b(i),ue([]),void Be(i)):void ae({currentPage:1,pageSize:20,dataBtype:1,dataId:c.knowledgeId,orders:[{key:"create_time",asc:!1}]}).then(e=>{e.dataList.length?(b(e.dataList[0].id),ue(e.dataList),Be(e.dataList[0].id)):ne({btype:2,dataType:1,dataId:c.knowledgeId}).then(e=>{b(e),Qe(),Be(e)})});n.message.error("知识卡片信息未传入!")},Be=async e=>{b(e),Ge.current.clear(),D(!0);const t=await re({sessionId:e});if(D(!1),null==t?void 0:t.messages){const e=t.messages;0===e.length?(()=>{switch(o){case"video":(()=>{let e=h.length>0;m(l?e?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(bs,{videoInfo:l,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ys,{videoInfo:l,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])})();break;case"course":m(s?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ws,{courseInfo:s,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}]);break;case"knowledgeCard":(()=>{let e=h.length>0;m(c?e?[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(vs,{knowledgeInfo:c,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(ks,{knowledgeInfo:c,handleSendMessage:Ve})}]:[{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])})();break;default:m([{role:"ai",messageType:O.NODE,id:T(),content:k.jsx(As,{videoMode:o})}])}})():m([...e]),e.length>0&&_(Math.min(...e.map(e=>e.id))),K(t.hasMoreBefore)}},He=async e=>{const{role:t,content:n,currnetMsgId:r,onlyPost:o=!1,messageType:a,extraInfo:i}=e;!o&&m(e=>e.find(e=>(null==e?void 0:e.id)===r)?e.map(e=>(null==e?void 0:e.id)===r?{...e,content:n,messageType:a,extraInfo:i}:e):[{role:t,content:n,id:r||T(),messageType:a,extraInfo:i},...e])},Ge=t.useRef(new Set),Ye=e=>{if(!e||"object"!=typeof e)return;const t=[e.traceId||"",e.dataId||"",e.action||"",(e.diff||"").length].join("_");Ge.current.has(t)||(Ge.current.add(t),He({role:"ai",content:"",currnetMsgId:T(),messageType:O.REL_RESOURCE_EDIT,extraInfo:JSON.stringify(e)}))},Ue=(e,t)=>{qe(e||Y),t&&Ve({input:`帮我解析B站视频:${e||Y}`})},Fe=async()=>{var e,t,n,r;const o=Me.current||A,a=await re({sessionId:o}),i=null==(e=Ee.current)?void 0:e.map(e=>L(e.content)),s=new Set(null==(t=Ee.current)?void 0:t.map(e=>e.id)),l=[...Ee.current];null==(r=null==(n=null==a?void 0:a.messages)?void 0:n.reverse())||r.forEach(e=>{const t=L(e.content);if(t)i.includes(t)||l.unshift(e);else{if(!e.messageType||e.messageType===O.TEXT)return;null==e.id||s.has(e.id)||l.unshift(e)}}),m(l)},Ve=async e=>{const{input:t,scene:r,chatId:o,quotedText:a}=e;if(!I&&!1===Ne.current)return void n.message.warning("助理正在作答中,请稍后...");const i=o||A||Me.current;Ie.current&&Ie.current.close(),C(!1),Q(""),he(0),ge(0),Z(null);let s="";s+=`<scene>${r||v}</scene>`;const l=a||Te.current&&t.startsWith("[")?JSON.stringify({quotedText:a||Te.current}):void 0;He({role:"user",content:t,currnetMsgId:T(1e4,1e5),messageType:O.TEXT,extraInfo:l}),x(""),j(""),le(""),Te.current="";const c=T(1e4,1e5);Se.current=c;const u={enableSearch:ee,sessionId:i,scene:r||v},d=await oe({app:"vgen-web",btype:"session",extra:JSON.stringify(u)}),p=((e,t,n,r,o)=>te({url:"/api/v1.0/agent/chat/sse",method:"POST",body:{...t},query:{...e},headers:{"Enable-Search":r?"true":"false","x-run-id":o||""}},{...n}))({sessionId:i},{system:s,message:t},{onProgress:(e,t)=>{He({role:"ai",content:"<think>"+t+"</think>",currnetMsgId:c})},onMessage:(e,t)=>{He({role:"ai",content:t,currnetMsgId:c,messageType:O.TEXT})},onWaitTaskScene:e=>{Q(e)},onCookieConsume:e=>{he(e)},onProgressMsg:e=>{ge(e.percent)},onError:e=>{},onResourceEdit:e=>{Ye(e)},onComplete:async({messageData:e,formData:t,planData:n,questionData:r,skillKnowledgeData:o,recommendList:a,buttonList:i,evaluationData:s,resourceEditList:l})=>{var u,p,f,h;if(C(!0),null==l||l.forEach(e=>Ye(e)),Se.current=null,je(e=>{const t=new Set(e);return t.delete(c),t}),t){const e=N(t);e.scene===z.VIDEO_PARSE&&(null==(u=null==e?void 0:e.form)?void 0:u.url)?(U(null==(p=null==e?void 0:e.form)?void 0:p.url),Ue(null==(f=null==e?void 0:e.form)?void 0:f.url),V(!1)):e.scene===z.VIDEO_PARSE&&(null==(h=null==e?void 0:e.form)?void 0:h.searchKey)&&He({role:"ai",content:t,currnetMsgId:T(),messageType:O.RECOMMEND_VIDEO,extraInfo:t})}e&&He({role:"ai",content:e,currnetMsgId:e&&t?T():c,messageType:O.TEXT,extraInfo:JSON.stringify({traceId:(null==d?void 0:d.data)||"",recommendList:a,buttonList:i})}),Fe()}},ee,d.data);Ie.current=p},qe=e=>{P(e)},Qe=e=>{switch(o){case"video":He({role:"user",content:(null==l?void 0:l.description)||"",onlyPost:!0,messageType:O.INVISIBLE_TEXT});break;case"course":break;case"knowledgeCard":He({role:"user",content:(null==c?void 0:c.content)||"",onlyPost:!0,messageType:O.INVISIBLE_TEXT})}};return{isLogin:u,userInfo:p,messages:h,saveMsg:He,insertLocalMsg:(e,t)=>{const n=T(1e4,1e5);return He({role:"ai",content:e,currnetMsgId:n,messageType:O.TEXT,extraInfo:t}),n},toUpdateMsgs:Fe,toGetHistoryList:Be,loadMoreHistory:async()=>{if(J&&A&&!Ce.current){Ce.current=!0;try{const e=await re({sessionId:A,anchorId:X||void 0,direction:"before",limit:20});if((null==e?void 0:e.messages)&&e.messages.length>0){const t=[...h,...e.messages];m(t),Ce.current=!1,e.messages.length>0&&_(Math.min(...e.messages.map(e=>e.id))),K(e.hasMoreBefore)}}catch(e){n.message.error("加载历史消息失败")}}},handleSend:Ve,sendDockMessage:(e,t)=>{Ve(t?{input:`<<<${t}>>> ${e}`.trim(),quotedText:t}:{input:e})},stopAnswer:()=>{var e;if(null==(e=Ie.current)||e.close(),null!=Se.current){const e=Se.current;je(t=>new Set(t).add(e))}C(!0),x("")},answerIsDone:I,inputValue:g,setInputValue:x,sceneNow:v,setSceneNow:j,inputPlaceholder:y,setInputPlaceholder:w,enableGlobalSearch:ee,setEnableGlobalSearch:ie,quotedText:se,setQuotedTextData:e=>{if(!e)return le(""),void(Te.current="");Te.current=e,le(e)},dockQuotedText:be,setDockQuotedText:ye,dockOpen:xe,setDockOpen:Ae,dockHintState:we,setDockHintState:ve,interruptedMsgIds:ke,chatId:A,setChatId:b,sessionList:ce,generatedResources:E,recommendScene:q,recommendSceneData:W,cookieConsume:fe,progress:me,hasMoreBefore:J,chatVideoUrl:R,analyzeUrlNow:Y,setAnalyzeUrlNow:U,confirmAnalyzeModalVisible:B,setConfirmAnalyzeModalVisible:G,analyzeMsgShouldSave:F,setAnalyzeMsgShouldSave:V,confirmAnalyze:Ue,analyzeVideo:qe,videoAnalyzeCallback:e=>{Fe()},activate:()=>Le(!0),addNewSession:()=>{"video"===o&&ne({btype:2,dataType:10,dataId:null==l?void 0:l.recordId}).then(e=>{b(e),Qe(),Be(e),ae({currentPage:1,pageSize:20,dataBtype:10,dataId:(null==l?void 0:l.recordId)||""}).then(e=>{ue((null==e?void 0:e.dataList)||[])})})},toDeleteSession:e=>{var t;(t={ids:[e]},$.post("/api/v1.0/chatbot/session/delete",t)).then(()=>{n.message.success("删除成功");const t=ce.filter(t=>t.id!==e);ue(t),e===A&&Pe()})}}},Es="https://mdn.alipayobjects.com/huamei_1aoktl/afts/img/W3rjTYQLpoEAAAAAUEAAAAgADieFAQJr/df.webp?hm_biz=muse_style",Ts=e=>"adjusted"===e?"有问题问饼干,想继续调整也可以~":"expanded"===e?"继续跟饼干说点什么~":"看完有问题随时问,想改也跟我说~",Ns=[{icon:r.MessageCircleQuestion,label:"这段什么意思"},{icon:r.Search,label:"举个例子"},{icon:r.Sparkles,label:"改通俗些"}],Ms=[{icon:r.MessageCircleQuestion,label:"问问题",mode:"prefill",fill:"我想问一下:"},{icon:r.ListChecks,label:"再出几题",mode:"prefill",fill:"再出3道问答题"},{icon:r.Sparkles,label:"润色全文",mode:"prefill",fill:"帮我润色一下,改成通俗版"}],Is=e=>{const t=e;return/(学术|口语|通俗|润色|风格|专业点|面试风格)/.test(t)?"polish":/(重新生成|重生成|换个动画)/.test(t)?"anim-regen":/(太快|太慢|节奏|转场|配色|字太|标注|暂停)/.test(t)?"anim-optimize":/(出题|出几道|再出|练一下|考考我|重练)/.test(t)?"quiz":/(加个|补充|换成|删掉|删除|改成|改写)/.test(t)?"edit":null},Cs={polish:{text:"好的,帮你把这段改得更通俗~ 生成后你可以对比再决定。",cta:"看对比",label:"AI润色(通俗版)"},edit:{text:"好的,帮你补一段内容~",cta:"看效果",label:"文本编辑"},"anim-regen":{text:"好的,重新生成动画~ 你想换个风格还是保持原来的?",cta:"看对比",label:"动画重新生成"},"anim-optimize":{text:"好的,帮你把动画节奏调慢一点~",cta:"看效果",label:"动画效果优化"},quiz:{text:"好的,帮你再出几道题练练~",cta:"开始答题",label:"自测题生成"}},Ss=e=>{const{state:n="fresh",messages:o,open:a,onOpenChange:i,onSend:l,answerIsDone:c=!0,onStopAnswer:u,onQuickAction:d,userInfo:p,isDev:f,quote:h,onClearQuote:m,customDiffViewer:g}=e,[x,A]=t.useState(""),b=t.useRef(null),y=t.useRef(null);t.useEffect(()=>{var e;a&&(null==(e=b.current)||e.scrollTo({top:b.current.scrollHeight,behavior:"smooth"}))},[o,a]);const w=()=>{x.trim()&&(l(x.trim()),A(""),m())};return k.jsx("div",{className:"pointer-events-none fixed inset-x-0 bottom-0 z-40 flex justify-center px-3 pb-3 sm:px-4 sm:pb-5 sm:pl-28",children:k.jsxs(s.motion.div,{layout:!0,transition:{type:"spring",stiffness:320,damping:32},className:E("pointer-events-auto w-full max-w-2xl overflow-hidden rounded-3xl bg-white shadow-xl ring-1 ring-slate-900/[0.06]",a&&"max-w-2xl rounded-[1.75rem]"),children:[k.jsxs("button",{type:"button",onClick:()=>i(!a),"aria-expanded":a,className:"group flex w-full items-center gap-3 px-4 py-3 text-left transition-colors hover:bg-slate-50/80",children:[k.jsx("span",{"aria-hidden":!0,className:"h-9 w-9 shrink-0 overflow-hidden rounded-full ring-1 ring-primary/15",children:k.jsx("img",{src:Es,alt:"",className:"h-full w-full object-cover"})}),k.jsx("span",{className:"min-w-0 flex-1",children:k.jsx("span",{className:"block text-[13px] font-black text-slate-800",children:a?"饼干":Ts(n)})}),k.jsx("span",{className:"flex h-7 w-7 shrink-0 items-center justify-center rounded-full bg-slate-100 text-slate-500 transition-colors group-hover:bg-slate-200",children:a?k.jsx(r.ChevronDown,{className:"h-4 w-4"}):k.jsx(r.ChevronUp,{className:"h-4 w-4"})})]}),k.jsx(s.AnimatePresence,{initial:!1,children:a&&k.jsxs(s.motion.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.24,ease:"easeOut"},className:"overflow-hidden",children:[k.jsx("div",{ref:b,className:"no-scrollbar max-h-[min(56vh,420px)] space-y-3 overflow-y-auto px-4 pb-3 pt-1",children:0===o.length?k.jsxs("div",{className:"flex items-start gap-2.5 pt-1",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"mt-0.5 h-7 w-7 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx("p",{className:"rounded-2xl rounded-tl-md bg-slate-100 px-3.5 py-2.5 text-[12px] font-bold leading-relaxed text-slate-600",children:"想怎么调整?或者有问题都可以问我~"})]}):k.jsx(ds,{messages:o,answerIsDone:c,isDev:f,userInfo:p,handleSend:({input:e})=>l(e),customDiffViewer:g})}),h&&k.jsx("div",{className:"px-4 pb-2",children:k.jsxs("div",{className:"flex items-center gap-2 rounded-xl bg-primary/5 px-3 py-2",children:[k.jsx(r.Paperclip,{className:"h-3 w-3 shrink-0 text-primary"}),k.jsx("span",{className:"shrink-0 text-[10px] font-black text-primary",children:"引用"}),k.jsxs("p",{className:"min-w-0 flex-1 truncate text-[11px] font-bold text-slate-600",children:['"',h,'"']}),k.jsx("button",{type:"button",onClick:m,"aria-label":"取消引用",className:"shrink-0 rounded-md p-0.5 text-slate-400 transition-colors hover:text-rose-500",children:k.jsx(r.X,{className:"h-3.5 w-3.5"})})]})}),k.jsxs("div",{className:"px-4 pb-2",children:[k.jsx("p",{className:"mb-2 text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"你可以"}),k.jsx("div",{className:"grid grid-cols-3 gap-2",children:(h?Ns:Ms).map(e=>k.jsxs("button",{type:"button",onClick:()=>(e=>{if("prefill"===e.mode&&e.fill)return A(e.fill),void requestAnimationFrame(()=>{const t=y.current;t&&(t.focus(),t.setSelectionRange(e.fill.length,e.fill.length))});d(e.label)})(e),className:"flex items-center gap-1.5 rounded-xl bg-white px-2.5 py-2 text-[11px] font-black text-slate-600 ring-1 ring-slate-200/80 transition-all hover:bg-primary/10 hover:text-primary hover:ring-primary/30 active:scale-[0.97]",children:[k.jsx(e.icon,{className:"h-3.5 w-3.5 shrink-0"}),k.jsx("span",{className:"truncate",children:e.label})]},e.label))})]}),k.jsx("div",{className:"px-4 pb-4",children:k.jsx("div",{className:"rounded-2xl bg-slate-50 p-1.5 ring-1 ring-slate-200/80 transition-shadow focus-within:bg-white focus-within:ring-2 focus-within:ring-primary/30",children:k.jsxs("div",{className:"flex items-end gap-1.5",children:[k.jsx("input",{ref:y,value:x,onChange:e=>A(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||w())},placeholder:h?"针对这段提问,或说想怎么改...":"描述你想怎么调,或问我任何问题...","aria-label":"输入你想问的问题或想做的调整",className:"h-10 w-full border-0 bg-transparent px-2.5 text-[12px] font-bold outline-none placeholder:font-bold placeholder:text-slate-400"}),!c&&u?k.jsx("button",{type:"button",onClick:u,title:"停止回答","aria-label":"停止回答",className:"h-10 w-10 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary/80",children:k.jsx(r.StopCircle,{className:"mx-auto h-4 w-4"})}):k.jsx("button",{type:"button",onClick:w,disabled:!x.trim(),"aria-label":"发送",className:"h-10 w-10 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary-700 disabled:bg-slate-200 disabled:text-slate-400 disabled:shadow-none",children:k.jsx(r.Send,{className:"mx-auto h-4 w-4"})})]})})})]})})]})})},Ds=e=>{const{state:n="fresh",messages:o,open:a,onOpenChange:i,onSend:l,answerIsDone:c=!0,onStopAnswer:u,onQuickAction:d,userInfo:p,isDev:f,quote:h,onClearQuote:m,customDiffViewer:g,width:x=320,collapsible:A=!0}=e,b=!A||a,y="number"==typeof x?`${x}px`:x,[w,v]=t.useState(""),j=t.useRef(null),E=t.useRef(null);t.useEffect(()=>{var e;b&&(null==(e=j.current)||e.scrollTo({top:j.current.scrollHeight,behavior:"smooth"}))},[o,b]);const T=()=>{w.trim()&&(l(w.trim()),v(""),m())};return k.jsx(s.motion.div,{initial:!1,animate:{width:b?y:"52px"},transition:{duration:.24,ease:"easeOut"},className:"relative h-full shrink-0 overflow-hidden border-r border-slate-200/90 bg-white",children:b?k.jsxs("div",{style:{width:y},className:"flex h-full flex-col",children:[k.jsxs("div",{className:"flex shrink-0 items-center gap-2.5 px-3.5 py-3",children:[k.jsx("span",{"aria-hidden":!0,className:"h-9 w-9 shrink-0 overflow-hidden rounded-full ring-1 ring-primary/15",children:k.jsx("img",{src:Es,alt:"",className:"h-full w-full object-cover"})}),k.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] font-black text-slate-800",children:"饼干 · AI 学伴"}),A&&k.jsx("button",{type:"button",onClick:()=>i(!1),title:"收起为窄条","aria-label":"收起 AI 学伴面板",className:"shrink-0 rounded-lg p-1.5 text-slate-400 transition-colors hover:bg-slate-100 hover:text-slate-600",children:k.jsx(r.PanelLeftClose,{className:"h-4 w-4"})})]}),k.jsx("div",{ref:j,className:"no-scrollbar min-h-0 flex-1 space-y-3 overflow-y-auto px-3.5 pb-2 pt-1",children:0===o.length?k.jsxs("div",{className:"flex items-start gap-2.5 pt-1",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"mt-0.5 h-7 w-7 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx("p",{className:"rounded-2xl rounded-tl-md bg-slate-100 px-3.5 py-2.5 text-[12px] font-bold leading-relaxed text-slate-600",children:"想怎么调整?或者有问题都可以问我~"})]}):k.jsx(ds,{messages:o,answerIsDone:c,isDev:f,userInfo:p,handleSend:({input:e})=>l(e),customDiffViewer:g})}),h&&k.jsx("div",{className:"shrink-0 px-3.5 pb-2",children:k.jsxs("div",{className:"flex items-center gap-2 rounded-xl bg-primary/5 px-3 py-2",children:[k.jsx(r.Paperclip,{className:"h-3 w-3 shrink-0 text-primary"}),k.jsx("span",{className:"shrink-0 text-[10px] font-black text-primary",children:"引用"}),k.jsxs("p",{className:"min-w-0 flex-1 truncate text-[11px] font-bold text-slate-600",children:['"',h,'"']}),k.jsx("button",{type:"button",onClick:m,"aria-label":"取消引用",className:"shrink-0 rounded-md p-0.5 text-slate-400 transition-colors hover:text-rose-500",children:k.jsx(r.X,{className:"h-3.5 w-3.5"})})]})}),k.jsxs("div",{className:"shrink-0 px-3.5 pb-2",children:[k.jsx("p",{className:"mb-2 text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"你可以"}),k.jsx("div",{className:"grid grid-cols-1 gap-1.5",children:(h?Ns:Ms).map(e=>k.jsxs("button",{type:"button",onClick:()=>(e=>{var t;if("prefill"===e.mode&&e.fill)return v(e.fill),void(null==(t=E.current)||t.focus());d(e.label)})(e),className:"flex items-center gap-2 rounded-xl bg-slate-50 px-2.5 py-1.5 text-[11px] font-bold text-slate-600 ring-1 ring-slate-200/70 transition-colors hover:bg-primary-50 hover:text-primary",children:[k.jsx(e.icon,{className:"h-3.5 w-3.5 shrink-0"}),e.label]},e.label))})]}),k.jsx("div",{className:"shrink-0 px-3.5 pb-4",children:k.jsx("div",{className:"rounded-2xl bg-slate-50 p-1.5 ring-1 ring-slate-200/80 transition-shadow focus-within:bg-white focus-within:ring-2 focus-within:ring-primary/30",children:k.jsxs("div",{className:"flex items-end gap-1.5",children:[k.jsx("input",{ref:E,value:w,onChange:e=>v(e.target.value),onKeyDown:e=>{"Enter"===e.key&&(e.shiftKey||T())},placeholder:h?"针对这段提问,或说想怎么改...":"描述你想怎么调,或问我任何问题...","aria-label":"输入你想问的问题或想做的调整",className:"h-9 w-full border-0 bg-transparent px-2.5 text-[12px] font-bold outline-none placeholder:font-bold placeholder:text-slate-400"}),!c&&u?k.jsx("button",{type:"button",onClick:u,title:"停止回答","aria-label":"停止回答",className:"h-9 w-9 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary/80",children:k.jsx(r.StopCircle,{className:"mx-auto h-4 w-4"})}):k.jsx("button",{type:"button",onClick:T,disabled:!w.trim(),"aria-label":"发送",className:"h-9 w-9 shrink-0 rounded-xl bg-primary text-white shadow-glow transition-all hover:bg-primary-700 disabled:bg-slate-200 disabled:text-slate-400 disabled:shadow-none",children:k.jsx(r.Send,{className:"mx-auto h-4 w-4"})})]})})})]}):k.jsxs("button",{type:"button",onClick:()=>i(!0),title:Ts(n),"aria-label":"展开 AI 学伴面板",className:"flex h-full w-[52px] flex-col items-center gap-3 py-3 transition-colors hover:bg-slate-50",children:[k.jsx("img",{src:Es,alt:"","aria-hidden":!0,className:"h-9 w-9 shrink-0 rounded-full object-cover ring-1 ring-primary/15"}),k.jsx(r.PanelLeftOpen,{className:"h-4 w-4 shrink-0 text-slate-400"}),k.jsx("span",{className:"text-[11px] font-black tracking-widest text-slate-500",style:{writingMode:"vertical-rl"},children:"饼干 · AI 学伴"})]})})},Rs=t.forwardRef((e,o)=>{const{containerRef:a,token:i,viewMode:c="default",courseInfo:u,videoInfo:d,knowledgeInfo:p,initPos:f,initStyle:h,hoverTip:m,isDev:g,chatId:x,showDock:A=!1,showFloatingBall:b=!0,dockInitOpen:y=!1,dockLayout:w="float",dockPanelWidth:v=320,quoteTarget:j,customDiffViewer:N,onDockQuickAction:M,onDockCta:I,onDockResultAccept:C,onDockResultReject:S}=e,D=js({token:i,viewMode:c,isDev:g,chatId:x,videoInfo:d,courseInfo:u,knowledgeInfo:p}),[R,L]=t.useState(!1),z=s.useDragControls(),[H,Y]=t.useState(!1),[U,F]=t.useState(!1),[V,q]=t.useState(!1),Q=t.useRef(!1),J=t.useRef(null),_=t.useRef(null),ee=t.useRef(null),te=t.useRef(null),ne=t.useRef(null);t.useEffect(()=>()=>{te.current&&clearTimeout(te.current),ne.current&&clearTimeout(ne.current)},[]),t.useEffect(()=>{R&&D.activate()},[R]),t.useEffect(()=>{D.dockOpen&&D.activate()},[D.dockOpen]),t.useEffect(()=>{y&&D.setDockOpen(!0)},[]),t.useImperativeHandle(o,()=>({setQuotedText:(e,t)=>{const n=(null==t?void 0:t.target)??j??"modal";var r;"dock"!==n&&"both"!==n||(D.setDockQuotedText(e),D.setDockOpen((null==t?void 0:t.open)??!0)),"modal"!==n&&"both"!==n||((r=e)?(D.setQuotedTextData(r),L(!0),te.current=setTimeout(()=>{var e,t;null==(e=ee.current)||e.focusInput(),null==(t=ee.current)||t.addQuotedText(`<<<${r}>>>`)},100)):D.setQuotedTextData(""))},sendMsg:(e,t)=>{if("dock"===((null==t?void 0:t.target)??j??"modal"))return D.setDockOpen(!0),void D.handleSend({input:e});L(!0),ne.current&&clearTimeout(ne.current);let n=100;D.chatId||(n=2e3),ne.current=setTimeout(()=>{var t;null==(t=ee.current)||t.focusInput(),D.handleSend({input:e})},n)},openDock:()=>D.setDockOpen(!0),closeDock:()=>D.setDockOpen(!1)})),t.useEffect(()=>{if(J.current){const{scrollTop:e,scrollHeight:t,clientHeight:n}=J.current;t-e-n<100&&(_.current&&clearTimeout(_.current),_.current=setTimeout(()=>{J.current&&(J.current.scrollTop=J.current.scrollHeight)},500))}},[D.messages]);const re=e=>{var t;(t=e,$.get(`/api/v1.0/record/${t}/status`)).then(t=>{if(t===B.COMPLETED){const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}/mainPage?recordId=${e}`;window.open(t,"_blank")}else t===B.FAILED?n.message.error("视频解析失败"):t===B.CANCEL?n.message.info("视频解析已取消"):n.message.warning(`视频解析中,解析进度:${G[t]}%`)})},oe=e=>{const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}?batchId=${e.batchId}&toPractice=true`;window.open(t,"_blank")},ae=t.useMemo(()=>D.messages.filter(e=>("user"===e.role||"ai"===e.role)&&e.messageType!==O.INVISIBLE_TEXT&&e.messageType!==O.NODE),[D.messages]),ie=e=>{const t=Is(e);t&&D.insertLocalMsg(Cs[t].text,JSON.stringify({dockAction:{kind:t,label:Cs[t].label,cta:Cs[t].cta,userText:e}})),D.sendDockMessage(e,D.dockQuotedText)},se=e=>{M?M(e):D.handleSend({input:e})},le=e=>{e.action&&(null==I||I(e.action.kind,{userText:e.action.userText||"",quote:D.dockQuotedText??void 0}))},ce=e=>{e.result&&(null==C||C(e.result.kind,e.result.payload))},ue=e=>{e.result&&(null==S||S(e.result.kind))},de=e=>{const t=ae.findIndex(t=>t.id===e.id);if(t>-1&&t<ae.length-1){const e=ae.slice(t+1).find(e=>"user"===e.role);if(e&&"string"==typeof e.content&&e.content.trim())return void D.handleSend({input:e.content})}D.handleSend({input:"继续"})};t.useMemo(()=>k.jsx("div",{className:"flex items-center bg-gray-50 rounded-xl border border-gray-100",children:k.jsx(n.Dropdown,{trigger:["click"],placement:"bottomRight",popupRender:()=>k.jsxs("div",{className:"bg-white p-2 rounded-2xl shadow-xl border border-gray-100 w-64",children:[k.jsx("div",{className:"px-3 py-2 text-[12px] font-bold text-gray-400 uppercase tracking-widest border-b border-gray-50 mb-1",children:"本次会话生成"}),k.jsx("div",{className:"flex flex-col gap-1 max-h-72 overflow-y-auto p-1 custom-scrollbar",children:D.generatedResources.length>0?D.generatedResources.map(e=>k.jsxs("div",{className:"flex items-center gap-3 p-2.5 rounded-xl cursor-pointer hover:bg-primary-50 group transition-colors",onClick:()=>{switch(e.type){case O.REL_KNOWLEDGE_CARD:(e=>{const t=`${g?W.VITE_BASE_VGEN_URL:Z.VITE_BASE_VGEN_URL}/knowledgeDetailPage?knowledgeId=${e.knowledgeId||e.id}`;window.open(t,"_blank")})(e.extraInfo);break;case O.REL_LEARN_PATH:break;case O.REL_QUESTION:oe(e.extraInfo);break;case O.REL_RECORD:re(e.extraInfo.recordId||e.extraInfo.id)}},children:[k.jsx("div",{className:E("w-8 h-8 rounded-lg flex items-center justify-center shrink-0",e.type===O.REL_LEARN_PATH?"bg-primary-50 text-primary-600":e.type===O.REL_RECORD?"bg-purple-50 text-purple-600":e.type===O.REL_QUESTION?"bg-emerald-50 text-emerald-600":"bg-gray-50 text-gray-600"),children:e.type===O.REL_LEARN_PATH?k.jsx(r.GraduationCap,{className:"w-4 h-4"}):e.type===O.REL_RECORD?k.jsx(r.Video,{className:"w-4 h-4"}):e.type===O.REL_QUESTION?k.jsx(r.BookOpen,{className:"w-4 h-4"}):k.jsx(r.FileText,{className:"w-4 h-4"})}),k.jsxs("div",{className:"flex-1 min-w-0",children:[k.jsx("div",{className:"text-[12px] font-bold text-gray-900 truncate group-hover:text-primary-600",children:e.type===O.REL_LEARN_PATH?e.extraInfo.name:e.type===O.REL_RECORD?e.extraInfo.title:e.type===O.REL_QUESTION?`题目批次ID:${e.extraInfo.batchId}`:e.extraInfo.title}),k.jsx("div",{className:"text-[10px] text-gray-400 font-medium",children:e.type===O.REL_LEARN_PATH?"学习计划":e.type===O.REL_RECORD?"视频解析":e.type===O.REL_QUESTION?"练习题":"知识讲解"})]})]},e.id)):k.jsx("div",{className:"py-8 text-center text-xs text-gray-400 font-medium",children:"尚未生成任何资源"})})]}),children:k.jsxs(n.Button,{type:"text",size:"small",className:"h-10 rounded-lg text-[11px] font-bold text-gray-500 gap-1.5 hover:bg-white hover:shadow-sm transition-all flex items-center",children:[k.jsx(r.Folder,{className:"w-3.5 h-3.5"})," 生成资源 (",D.generatedResources.length,")"," ",k.jsx(r.ChevronDown,{className:"w-3.5 h-3.5"})]})})}),[D.generatedResources]);const pe=t.useMemo(()=>{var e;return k.jsxs("div",{className:"w-[320px] flex flex-col max-h-[500px] overflow-y-auto",children:[k.jsx("div",{className:"px-3 py-1 border-b bg-white",children:k.jsx("div",{className:"flex items-center justify-between mb-2",children:k.jsx("span",{className:"text-xs font-bold text-gray-800",children:"会话记录"})})}),k.jsx("div",{className:"flex-1 overflow-y-auto py-3 space-y-4",children:(null==(e=D.sessionList)?void 0:e.length)>0?k.jsx("div",{className:"space-y-2",children:D.sessionList.map(e=>k.jsxs("div",{className:E("bg-white p-3 rounded-xl border border-gray-100 shadow-sm hover:border-primary-200 transition-colors cursor-pointer group relative",e.id===D.chatId&&"border-primary-300"),onClick:()=>{D.toGetHistoryList(e.id)},children:[k.jsxs("div",{className:"flex justify-between items-center mb-1 pr-6",children:[k.jsxs("p",{title:e.summary,className:"text-[12px] text-gray-700 line-clamp-1",children:["💬 ",e.summary]}),k.jsx("span",{className:"text-[9px] text-gray-400",children:e.createTime})]}),k.jsx(n.Popconfirm,{title:"确定删除这条记录吗?",description:"删除后将无法恢复",onConfirm:t=>{var n;t.stopPropagation(),n=e.id,D.toDeleteSession(n)},okText:"确定",cancelText:"取消",children:k.jsx("button",{className:"absolute right-2 top-3 p-1 text-gray-300 hover:text-red-500 opacity-0 group-hover:opacity-100 transition-all",children:k.jsx(r.Trash2,{className:"w-3 h-3"})})})]},e.id))}):k.jsx("div",{className:"text-center text-xs text-gray-400",children:"暂无历史记录"})})]})},[D.sessionList,D.chatId]);return k.jsxs("div",{children:[b&&k.jsx(s.AnimatePresence,{children:R?k.jsxs(s.motion.div,{drag:!0,dragControls:z,dragListener:!1,dragMomentum:!1,dragConstraints:a,initial:{opacity:0,scale:.9,y:50},animate:{opacity:1,scale:1,y:0},exit:{opacity:0,scale:.9,y:50},className:"fixed pointer-events-auto bg-white rounded-2xl border border-gray-100 flex flex-col overflow-hidden cursor-default z-50",style:{maxHeight:"90vh",width:"440px",height:"760px",boxShadow:"0 20px 50px rgba(0,0,0,0.15)",...f,...h},children:[k.jsxs("div",{onPointerDown:e=>z.start(e),className:"bg-[#f8fafc] px-4 py-3 flex items-center justify-between border-b shrink-0 relative overflow-hidden cursor-move active:cursor-grabbing",children:[k.jsxs("div",{className:"flex items-center gap-2 z-10",children:[k.jsx(r.Cookie,{className:"w-4 h-4 text-orange-500"}),k.jsx("div",{className:"text-[13px] font-bold text-gray-800",children:"饼干 AI 学伴"})]}),k.jsxs("div",{className:"flex items-center gap-1 z-10",children:["knowledgeCard"!==c&&k.jsx(n.Tooltip,{title:"开启新对话",children:k.jsx("button",{onClick:()=>{D.addNewSession()},className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",children:k.jsx(r.Plus,{className:"w-4 h-4"})})}),"knowledgeCard"!==c&&k.jsx(n.Popover,{placement:"bottomRight",trigger:"click",content:pe,children:k.jsx("button",{className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-primary-600 transition-colors",children:k.jsx(r.History,{className:"w-4 h-4"})})}),k.jsx("button",{onClick:()=>L(!1),className:"p-1.5 hover:bg-gray-100 rounded-lg text-gray-400 hover:text-gray-600 transition-colors",children:k.jsx(r.Minimize2,{className:"w-4 h-4"})})]})]}),"video"===c&&k.jsx("div",{className:"bg-primary-50 px-4 py-3 border-b border-primary-100 animate-in slide-in-from-top-2 duration-300",children:k.jsxs("div",{className:"flex items-center justify-between",children:[k.jsx("span",{title:null==d?void 0:d.name,className:"text-[11px] font-medium text-primary-900 truncate pr-4 flex-1 text-ellipsis",children:null==d?void 0:d.name}),k.jsx("div",{className:"flex flex-wrap gap-2",children:["视频总结","章节大纲"].map(e=>k.jsx("button",{className:"px-2 py-1 bg-white border border-primary-100 rounded text-[10px] text-primary-700 shadow-sm hover:bg-primary-50 transition-colors",children:e},e))})]})}),k.jsxs("div",{className:"flex-1 px-4 bg-white relative overflow-hidden",children:[k.jsx("div",{ref:J,id:"vgenChatListScrollableDiv",className:"h-full overflow-y-auto custom-scrollbar flex flex-col-reverse",style:{minHeight:"300px"},children:k.jsx(l,{dataLength:D.messages.length,next:D.loadMoreHistory,hasMore:D.hasMoreBefore,scrollableTarget:"vgenChatListScrollableDiv",loader:null,inverse:!0,pullDownToRefresh:!1,scrollThreshold:"100px",children:k.jsx("div",{className:"mx-auto space-y-8 overflow-hidden py-4",children:k.jsx(ds,{messages:D.messages,answerIsDone:D.answerIsDone,recommendScene:D.recommendScene,cookieConsume:D.cookieConsume,progress:D.progress,recommendSceneData:D.recommendSceneData,setAnalyzeUrlNow:D.setAnalyzeUrlNow,setConfirmAnalyzeModalVisible:D.setConfirmAnalyzeModalVisible,setAnalyzeMsgShouldSave:D.setAnalyzeMsgShouldSave,saveStudyPath:()=>{},studyPathSaving:U,toCheckQuestions:oe,toCheckVideo:re,recommendVideos:[],handleSend:D.handleSend,isDev:g,userInfo:D.userInfo,saveMsg:D.saveMsg,customDiffViewer:N})})})}),k.jsx(s.AnimatePresence,{children:H&&k.jsx(s.motion.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"absolute inset-0 bg-white/95 z-50 flex items-center justify-center p-6",children:k.jsxs("div",{className:"w-full space-y-4",children:[k.jsxs("div",{className:"text-center",children:[k.jsx(r.Cookie,{className:"w-8 h-8 text-orange-400 mx-auto"}),k.jsx("p",{className:"text-[14px] font-bold text-gray-800 mt-2",children:"想挑战更多练习题吗?"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-3",children:[k.jsxs("p",{className:"text-[12px] font-bold text-primary-900 flex items-center gap-1.5 justify-center",children:[k.jsx(r.Star,{className:"w-4 h-4 text-yellow-500 fill-yellow-500"})," ","🌟 Vgen 深度学习"]}),k.jsx("ul",{className:"space-y-1.5 text-center",children:["• 500+ 精选题库","• AI 智能批改 + 详细解析","• 错题本自动收藏","• 能力成长报告"].map(e=>k.jsx("li",{className:"text-[11px] text-gray-500",children:e},e))}),k.jsx("p",{className:"text-[11px] font-bold text-orange-600 text-center",children:"🍪 新用户专享:完成首题送 200 饼干!"})]}),k.jsx("div",{className:"h-px bg-gray-100"}),k.jsxs("div",{className:"space-y-2",children:[k.jsx(n.Button,{type:"primary",className:"w-full bg-primary-600 text-white h-10 font-bold border-none",onClick:()=>{Y(!1),window.open("https://vgen.alipay.com/practice","_blank")},children:"前往 Vgen 练习 →"}),k.jsx(n.Button,{type:"text",className:"w-full text-gray-400 text-xs",onClick:()=>Y(!1),children:"稍后再说"}),k.jsx("p",{className:"text-[9px] text-gray-400 text-center",children:"↗ 云燕账号直接登录,无需重复注册"})]})]})})})]}),k.jsxs("div",{className:"p-4 border-t bg-white relative",children:[k.jsx("div",{className:"flex items-center gap-2 mb-3 relative",children:k.jsxs("div",{className:"flex items-center gap-2",children:[K.map(e=>k.jsxs("button",{onClick:()=>D.handleSend({input:e.label}),className:"flex items-center gap-1.5 px-3 py-1.5 bg-white border border-gray-100 rounded-full shadow-sm hover:border-primary-200 hover:bg-primary-50 transition-all group active:scale-95",children:[k.jsx("span",{className:E("text-primary-500","w-3.5 h-3.5"),children:e.icon}),k.jsx("span",{className:"text-[11px] font-medium text-gray-600 group-hover:text-primary-600 whitespace-nowrap",children:e.label})]},e.id)),k.jsxs("div",{className:"relative",children:[k.jsxs("button",{onClick:()=>q(!V),className:E("flex items-center gap-1.5 px-3 py-1.5 border rounded-full shadow-sm transition-all active:scale-95",V?"bg-primary-600 border-primary-600 text-white":"bg-primary-50 border-primary-100 text-primary-700 hover:bg-primary-100"),children:[k.jsx(r.Sparkles,{className:E("w-3.5 h-3.5",V?"text-white":"text-primary-600")}),k.jsx("span",{className:"text-[11px] font-bold whitespace-nowrap",children:"更多"})]}),V&&k.jsxs(k.Fragment,{children:[k.jsx("div",{className:"fixed inset-0 z-50",onClick:()=>q(!1)}),k.jsxs("div",{className:"absolute mb-2 w-48 bg-white rounded-xl border border-gray-100 p-2 z-[60] animate-in fade-in slide-in-from-bottom-2 duration-200",style:{boxShadow:"0 10px 30px rgba(0,0,0,0.2)",right:"0",bottom:"30px"},children:[k.jsx("p",{className:"text-[10px] font-bold text-gray-400 px-2 py-1 mb-1 uppercase",children:"Vgen 进阶功能"}),[{label:"生成学习计划",desc:"帮我生成学习计划",icon:k.jsx(r.GitBranch,{className:"w-3.5 h-3.5"}),color:"text-primary-500"},{label:"AI智能出题",desc:"帮我出三道练习题",icon:k.jsx(r.FileCode,{className:"w-3.5 h-3.5"}),color:"text-indigo-500"}].map(e=>k.jsxs("button",{onClick:()=>{D.handleSend({input:e.desc})},className:"w-full flex items-center gap-2.5 px-2 py-2 rounded-lg hover:bg-gray-50 text-[12px] text-gray-600 transition-colors",children:[k.jsx("span",{className:e.color,children:e.icon}),e.label]},e.label))]})]})]})]})}),k.jsx("div",{className:"relative flex-1 flex flex-col gap-2",children:k.jsxs("div",{className:"relative flex items-center gap-2",children:[k.jsx("div",{className:"w-full px-4 pb-1 pt-1.5 bg-white rounded-[12px] cursor-text border border-gray-100 focus-within:border-primary-200 transition-all overflow-hidden",style:{paddingTop:"6px"},children:k.jsx(ms,{minHeight:30,maxHeight:120,onChange:e=>{var t;const n=e.filter(e=>"tag"!==e.type),r=e.filter(e=>"tag"===e.type);if(r.length){const e=r[0].value,n=(null==(t=X.find(t=>t.label===e))?void 0:t.id)||"";D.setSceneNow(n)}else D.setSceneNow(""),D.setInputPlaceholder("向你的AI学习助手提问...");const o=n.map(e=>"br"===e.type?"\n":e.value).join("");D.setInputValue(o)},placeholder:D.inputPlaceholder,sendMsg:()=>{D.handleSend({input:D.inputValue})},ref:ee})}),D.answerIsDone?k.jsx(n.Button,{type:"primary",onClick:()=>{var e;D.handleSend({input:D.inputValue}),null==(e=ee.current)||e.clearContent()},disabled:!D.inputValue.trim(),className:E("rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center",D.inputValue.trim()?"bg-primary-600 text-white shadow-primary-200":"bg-gray-200 text-white"),children:k.jsx(r.Send,{className:"w-4 h-4"})}):k.jsx(n.Tooltip,{title:"停止回答",children:k.jsx(n.Button,{type:"primary",onClick:D.stopAnswer,className:"rounded-xl h-10 px-3 shadow-lg transition-all flex items-center justify-center bg-primary-500 text-white hover:!bg-primary-600",children:k.jsx(r.StopCircle,{className:"w-5 h-5"})})})]})})]})]}):k.jsxs(s.motion.div,{drag:!0,dragMomentum:!1,dragConstraints:a,dragElastic:.1,onDragStart:()=>{Q.current=!0},onDragEnd:()=>{setTimeout(()=>{Q.current=!1},100)},initial:{opacity:0,scale:.5},animate:{opacity:1,scale:1,transition:{type:"spring",stiffness:260,damping:20}},exit:{opacity:0,scale:.5},whileHover:{scale:1.1},onClick:()=>{Q.current||L(!0)},className:"fixed pointer-events-auto cursor-grab active:cursor-grabbing flex flex-col items-center justify-center group z-50",style:{...f},children:[k.jsx(n.Tooltip,{title:m||"",children:k.jsx(s.motion.div,{className:"relative flex items-center",children:k.jsxs("div",{className:"relative flex flex-col items-center z-10",children:[k.jsx("img",{src:P,className:"w-24 h-24 select-none pointer-events-none",draggable:"false"}),k.jsx("div",{className:"text-white text-[14px] px-6 py-2 rounded-full font-bold border border-white/30 whitespace-nowrap",style:{marginTop:"-28px",background:"linear-gradient(to right, #4461f2, #bc2df3)",boxShadow:"0 8px 20px rgba(68,97,242,0.3)"},children:"AI 学伴"})]})})}),k.jsx(k.Fragment,{})]})}),D.isLogin&&A&&("inline"===w?k.jsx(Ds,{state:D.dockHintState,messages:ae,userInfo:D.userInfo,isDev:g,open:D.dockOpen,onOpenChange:D.setDockOpen,onSend:ie,answerIsDone:D.answerIsDone,onStopAnswer:D.stopAnswer,onQuickAction:se,quote:D.dockQuotedText,onClearQuote:()=>D.setDockQuotedText(null),customDiffViewer:N,width:v,onCta:le,ctaEnabled:!!I,onAccept:ce,onReject:ue,onResume:de}):k.jsx(Ss,{state:D.dockHintState,messages:ae,userInfo:D.userInfo,isDev:g,open:D.dockOpen,onOpenChange:D.setDockOpen,onSend:ie,answerIsDone:D.answerIsDone,onStopAnswer:D.stopAnswer,onQuickAction:se,onCta:le,ctaEnabled:!!I,onAccept:ce,onReject:ue,onResume:de,quote:D.dockQuotedText,onClearQuote:()=>D.setDockQuotedText(null),customDiffViewer:N})),D.isLogin&&k.jsx(xs,{forChatUse:!0,chatVideoUrl:D.chatVideoUrl,analyzeCallback:D.videoAnalyzeCallback,needTraceId:!0,sessionId:D.chatId}),k.jsx(ns,{destroyOnHidden:!0,open:D.confirmAnalyzeModalVisible,title:"确认解析",content:k.jsx("div",{children:"确认解析该视频课程吗?"}),okText:"确定",cancelText:"取消",onOk:()=>{D.setConfirmAnalyzeModalVisible(!1),D.analyzeVideo(D.analyzeUrlNow),D.analyzeMsgShouldSave&&D.saveMsg({role:"user",content:`帮我解析B站视频:${D.analyzeUrlNow}`,currnetMsgId:T(),toPost:!0,chatId:D.chatId,messageType:O.TEXT})},onCancel:()=>{D.setConfirmAnalyzeModalVisible(!1)}})]})});e.BottomChatDock=Ss,e.BottomChatPanel=Ds,e.COOKIE_AVATAR=Es,e.GENERAL_CHIPS=Ms,e.INTENT_REPLY=Cs,e.QUOTE_CHIPS=Ns,e.agentScene=z,e.default=Rs,e.detectIntent=Is,e.dockHint=Ts,e.msgType=O,e.useVgenChat=js,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED