@customize-agent/server 4.59.1 → 4.59.2
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +15 -15
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/chunks/1928.js +1 -1
- package/.next/server/chunks/{5547.js → 4435.js} +8 -8
- package/.next/server/chunks/6321.js +1 -1
- package/.next/server/chunks/8204.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages/api/assets/generated/preview.js +1 -1
- package/.next/server/pages/api/assets/generated/preview.js.nft.json +1 -1
- package/.next/server/pages/api/assets/generated.js +1 -1
- package/.next/server/pages/api/assets/generated.js.nft.json +1 -1
- package/.next/server/pages/api/documents/canvas/[id].js +1 -1
- package/.next/server/pages/api/documents/canvas/[id].js.nft.json +1 -1
- package/.next/server/pages/api/documents/export.js +1 -1
- package/.next/server/pages/api/documents/export.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generate/preview.js +1 -1
- package/.next/server/pages/api/documents/generate/preview.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generate.js +1 -1
- package/.next/server/pages/api/documents/generate.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/events.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/events.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/figure/[name].js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/figure/[name].js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/nodes/[nodeId].js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/nodes/[nodeId].js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/nodes.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/nodes.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/pause.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/pause.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/preview.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/preview.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/confirm.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/confirm.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/rollback.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/rollback.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/repair.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/resume-generate.js +1 -1
- package/.next/server/pages/api/documents/generated/[id]/resume-generate.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id].js +1 -1
- package/.next/server/pages/api/documents/generated/[id].js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated.js +1 -1
- package/.next/server/pages/api/documents/generated.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/reindex.js +1 -1
- package/.next/server/pages/api/kb/files/reindex.js.nft.json +1 -1
- package/.next/server/pages/api/kb/intelligence.js +1 -1
- package/.next/server/pages/api/kb/intelligence.js.nft.json +1 -1
- package/.next/server/pages/api/kb/reindex.js +1 -1
- package/.next/server/pages/api/kb/reindex.js.nft.json +1 -1
- package/.next/server/pages/api/kb/upload/complete.js +1 -1
- package/.next/server/pages/api/kb/upload/complete.js.nft.json +1 -1
- package/.next/server/pages/api/kb/upload.js +1 -1
- package/.next/server/pages/api/kb/upload.js.nft.json +1 -1
- package/.next/server/pages/api/skills/[id].js +1 -1
- package/.next/server/pages/api/skills/[id].js.nft.json +1 -1
- package/.next/server/pages/api/skills/validate.js +1 -1
- package/.next/server/pages/api/skills/validate.js.nft.json +1 -1
- package/.next/server/pages/api/skills.js +1 -1
- package/.next/server/pages/api/skills.js.nft.json +1 -1
- package/.next/server/pages/api/system/data-health.js +2 -0
- package/.next/server/pages/api/system/data-health.js.nft.json +1 -0
- package/.next/server/pages/canvas/[id].html +1 -1
- package/.next/server/pages/canvas.html +1 -1
- package/.next/server/pages/documents.html +1 -1
- package/.next/server/pages/guide.html +1 -1
- package/.next/server/pages/index.html +1 -1
- package/.next/server/pages/knowledge/file-detail.html +1 -1
- package/.next/server/pages/knowledge/files.html +1 -1
- package/.next/server/pages/knowledge/manage.html +1 -1
- package/.next/server/pages/knowledge.html +1 -1
- package/.next/server/pages/models.html +1 -1
- package/.next/server/pages/overview.html +1 -1
- package/.next/server/pages/prompt.html +1 -1
- package/.next/server/pages/settings.html +1 -1
- package/.next/server/pages/skills.html +1 -1
- package/.next/server/pages/system/logs.html +1 -1
- package/.next/server/pages-manifest.json +33 -32
- package/.next/static/{4xQDkixSretJDM503EzIq → 2MjosIoMmZUcFnY_P02ZD}/_buildManifest.js +1 -1
- package/.next/static/chunks/{289-0cccd8131332e041.js → 289-136ebb30e0f6723a.js} +3 -3
- package/.next/static/chunks/{426-22c4cedb04b0d45d.js → 426-90638907336adcb8.js} +1 -1
- package/.next/static/chunks/530-df2ce692cf0fa512.js +1 -0
- package/.next/static/chunks/795-81a3e3973fc43791.js +1 -0
- package/.next/static/chunks/pages/{_app-ebb535779b63fd5d.js → _app-c560816f0a8a0815.js} +1 -1
- package/.next/static/chunks/pages/knowledge-ca8ad5501faed486.js +1 -0
- package/.next/static/chunks/pages/prompt-dd9a9f9105216e2b.js +1 -0
- package/.next/static/chunks/pages/system/logs-9deb1217739490af.js +1 -0
- package/package.json +1 -1
- package/.next/static/chunks/530-6f3f5848c6f702ae.js +0 -1
- package/.next/static/chunks/795-9e0cb0bb11e8c89f.js +0 -1
- package/.next/static/chunks/pages/knowledge-09dde24cdce1b195.js +0 -1
- package/.next/static/chunks/pages/prompt-6a224562d194cb45.js +0 -1
- package/.next/static/chunks/pages/system/logs-70790bee46e5a08d.js +0 -1
- /package/.next/static/{4xQDkixSretJDM503EzIq → 2MjosIoMmZUcFnY_P02ZD}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[426],{7492:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(33460),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},7851:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(12059),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},12059:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z"}}]},name:"safety-certificate",theme:"outlined"}},12887:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM504 618H320c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM312 490v48c0 4.4 3.6 8 8 8h384c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H320c-4.4 0-8 3.6-8 8z"}}]},name:"file-text",theme:"outlined"}},17362:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"unordered-list",theme:"outlined"}},23830:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"}},24810:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(31738),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},26631:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(12887),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},28438:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M464 144H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H212V212h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H612V212h200v200zM464 544H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H212V612h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H612V612h200v200z"}}]},name:"appstore",theme:"outlined"}},29606:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(23830),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},30960:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file",theme:"outlined"}},31738:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M300 328a60 60 0 10120 0 60 60 0 10-120 0zM852 64H172c-17.7 0-32 14.3-32 32v660c0 17.7 14.3 32 32 32h680c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zm-32 660H204V128h616v596zM604 328a60 60 0 10120 0 60 60 0 10-120 0zm250.2 556H169.8c-16.5 0-29.8 14.3-29.8 32v36c0 4.4 3.3 8 7.4 8h729.1c4.1 0 7.4-3.6 7.4-8v-36c.1-17.7-13.2-32-29.7-32zM664 508H360c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z"}}]},name:"robot",theme:"outlined"}},33460:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M931.4 498.9L94.9 79.5c-3.4-1.7-7.3-2.1-11-1.2a15.99 15.99 0 00-11.7 19.3l86.2 352.2c1.3 5.3 5.2 9.6 10.4 11.3l147.7 50.7-147.6 50.7c-5.2 1.8-9.1 6-10.3 11.3L72.2 926.5c-.9 3.7-.5 7.6 1.2 10.9 3.9 7.9 13.5 11.1 21.5 7.2l836.5-417c3.1-1.5 5.6-4.1 7.2-7.1 3.9-8 .7-17.6-7.2-21.6zM170.8 826.3l50.3-205.6 295.2-101.3c2.3-.8 4.2-2.6 5-5 1.4-4.2-.8-8.7-5-10.2L221.1 403 171 198.2l628 314.9-628.2 313.2z"}}]},name:"send",theme:"outlined"}},42758:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(28438),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},45759:(e,t,r)=>{r.d(t,{A:()=>ed});var i=r(97109),a=r(9750),n=r(61222),l=r(42644),o=r(3638);function s(e){let t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch(e){return t}}function c(e){let t=new XMLHttpRequest;e.onProgress&&t.upload&&(t.upload.onprogress=function(t){t.total>0&&(t.percent=t.loaded/t.total*100),e.onProgress(t)});let r=new FormData;e.data&&Object.keys(e.data).forEach(t=>{let i=e.data[t];if(Array.isArray(i))return void i.forEach(e=>{r.append(`${t}[]`,e)});r.append(t,i)}),e.file instanceof Blob?r.append(e.filename,e.file,e.file.name):r.append(e.filename,e.file),t.onerror=function(t){e.onError(t)},t.onload=function(){return t.status<200||t.status>=300?e.onError(function(e,t){let r=Error(`cannot ${e.method} ${e.action} ${t.status}'`);return r.status=t.status,r.method=e.method,r.url=e.action,r}(e,t),s(t)):e.onSuccess(s(t),t)},t.open(e.method,e.action,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);let i=e.headers||{};return null!==i["X-Requested-With"]&&t.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(i).forEach(e=>{null!==i[e]&&t.setRequestHeader(e,i[e])}),t.send(r),{abort(){t.abort()}}}let d=async(e,t)=>{let r=[],i=[];async function a(e){let t=e.createReader(),r=[];for(;;){let e=await new Promise(e=>{t.readEntries(e,()=>e([]))}),i=e.length;if(!i)break;for(let t=0;t<i;t++)r.push(e[t])}return r}async function n(e){return new Promise(r=>{e.file(i=>{t(i)?(e.fullPath&&!i.webkitRelativePath&&(Object.defineProperties(i,{webkitRelativePath:{writable:!0}}),i.webkitRelativePath=e.fullPath.replace(/^\//,""),Object.defineProperties(i,{webkitRelativePath:{writable:!1}})),r(i)):r(null)})})}e.forEach(e=>i.push(e.webkitGetAsEntry()));let l=async(e,t)=>{if(e){if(e.path=t||"",e.isFile){let t=await n(e);t&&r.push(t)}else if(e.isDirectory){let t=await a(e);i.push(...t)}}},o=0;for(;o<i.length;)await l(i[o]),o++;return r},u=+new Date,p=0;function m(){return`rc-upload-${u}-${++p}`}function h(){return(h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}class f extends i.Component{state={uid:m()};reqs={};fileInput;_isMounted;filterFile=(e,t=!1)=>{let r,i,{accept:a,directory:n}=this.props;if("string"==typeof a)i=a;else{let{filter:e,format:t}=a||{};i=t,r="native"===e?()=>!0:e}return(r||(n||t?e=>((e,t)=>{if(e&&t){let r=Array.isArray(t)?t:t.split(","),i=e.name||"",a=e.type||"",n=a.replace(/\/.*$/,"");return r.some(e=>{let t=e.trim();if(/^\*(\/\*)?$/.test(e))return!0;if("."===t.charAt(0)){let e=i.toLowerCase(),r=t.toLowerCase(),a=[r];return(".jpg"===r||".jpeg"===r)&&(a=[".jpg",".jpeg"]),a.some(t=>e.endsWith(t))}return/\/\*$/.test(t)?n===t.replace(/\/.*$/,""):a===t||!!/^\w+$/.test(t)&&((0,l.$e)(!1,`Upload takes an invalidate 'accept' type '${t}'.Skip for check.`),!0)})}return!0})(e,i):()=>!0))(e)};onChange=e=>{let{files:t}=e.target,r=[...t].filter(e=>this.filterFile(e));this.uploadFiles(r),this.reset()};onClick=e=>{let t=this.fileInput;if(!t)return;let r=e.target,{onClick:i}=this.props;r&&"BUTTON"===r.tagName&&(t.parentNode.focus(),r.blur()),t.click(),i&&i(e)};onKeyDown=e=>{"Enter"===e.key&&this.onClick(e)};onDataTransferFiles=async(e,t)=>{let{multiple:r,directory:i}=this.props,a=[...e.items||[]],n=[...e.files||[]];if((n.length>0||a.some(e=>"file"===e.kind))&&t?.(),i)n=await d(Array.prototype.slice.call(a),this.filterFile),this.uploadFiles(n);else{let e=[...n].filter(e=>this.filterFile(e,!0));!1===r&&(e=n.slice(0,1)),this.uploadFiles(e)}};onFilePaste=async e=>{let{pastable:t}=this.props;if(t&&"paste"===e.type){let t=e.clipboardData;return this.onDataTransferFiles(t,()=>{e.preventDefault()})}};onFileDragOver=e=>{e.preventDefault()};onFileDrop=async e=>{if(e.preventDefault(),"drop"===e.type){let t=e.dataTransfer;return this.onDataTransferFiles(t)}};componentDidMount(){this._isMounted=!0;let{pastable:e}=this.props;e&&document.addEventListener("paste",this.onFilePaste)}componentWillUnmount(){this._isMounted=!1,this.abort(),document.removeEventListener("paste",this.onFilePaste)}componentDidUpdate(e){let{pastable:t}=this.props;t&&!e.pastable?document.addEventListener("paste",this.onFilePaste):!t&&e.pastable&&document.removeEventListener("paste",this.onFilePaste)}uploadFiles=e=>{let t=[...e];Promise.all(t.map(e=>(e.uid=m(),this.processFile(e,t)))).then(e=>{let{onBatchStart:t}=this.props;t?.(e.map(({origin:e,parsedFile:t})=>({file:e,parsedFile:t}))),e.filter(e=>null!==e.parsedFile).forEach(e=>{this.post(e)})})};processFile=async(e,t)=>{let r,i,{beforeUpload:a}=this.props,n=e;if(a){try{n=await a(e,t)}catch(e){n=!1}if(!1===n)return{origin:e,parsedFile:null,action:null,data:null}}let{action:l}=this.props;r="function"==typeof l?await l(e):l;let{data:o}=this.props;i="function"==typeof o?await o(e):o;let s=("object"==typeof n||"string"==typeof n)&&n?n:e,c=s instanceof File?s:new File([s],e.name,{type:e.type});return c.uid=e.uid,{origin:e,data:i,parsedFile:c,action:r}};post({data:e,origin:t,action:r,parsedFile:i}){if(!this._isMounted)return;let{onStart:a,customRequest:n,name:l,headers:o,withCredentials:s,method:d}=this.props,{uid:u}=t,p=n||c;a(t),this.reqs[u]=p({action:r,filename:l,data:e,file:i,headers:o,withCredentials:s,method:d||"post",onProgress:e=>{let{onProgress:t}=this.props;t?.(e,i)},onSuccess:(e,t)=>{let{onSuccess:r}=this.props;r?.(e,i,t),delete this.reqs[u]},onError:(e,t)=>{let{onError:r}=this.props;r?.(e,t,i),delete this.reqs[u]}},{defaultRequest:c})}reset(){this.setState({uid:m()})}abort(e){let{reqs:t}=this;if(e){let r=e.uid?e.uid:e;t[r]&&t[r].abort&&t[r].abort(),delete t[r]}else Object.keys(t).forEach(e=>{t[e]&&t[e].abort&&t[e].abort(),delete t[e]})}saveFileInput=e=>{this.fileInput=e};render(){let{component:e,prefixCls:t,className:r,classNames:a={},disabled:n,id:s,name:c,style:d,styles:u={},multiple:p,accept:m,capture:f,children:g,directory:b,openFileDialogOnClick:$,onMouseEnter:v,onMouseLeave:y,hasControlInside:w,...A}=this.props,E="string"==typeof m?m:m?.format,z=(0,o.$)(t,{[`${t}-disabled`]:n,[r]:r}),S=n?{}:{onClick:$?this.onClick:()=>{},onKeyDown:$?this.onKeyDown:()=>{},onMouseEnter:v,onMouseLeave:y,onDrop:this.onFileDrop,onDragOver:this.onFileDragOver,tabIndex:w?void 0:"0"};return i.createElement(e,h({},S,{className:z,role:w?void 0:"button",style:d}),i.createElement("input",h({},(0,l.KE)(A,{aria:!0,data:!0}),{id:s,name:c,disabled:n,type:"file",ref:this.saveFileInput,onClick:e=>e.stopPropagation(),key:this.state.uid,style:{display:"none",...u.input},className:a.input,accept:E},b?{directory:"directory",webkitdirectory:"webkitdirectory"}:{},{multiple:p,onChange:this.onChange},null!=f?{capture:f}:{})),g)}}function g(){return(g=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}function b(){}class $ extends i.Component{static defaultProps={component:"span",prefixCls:"rc-upload",data:{},headers:{},name:"file",multipart:!1,onStart:b,onError:b,onSuccess:b,multiple:!1,beforeUpload:null,customRequest:null,withCredentials:!1,openFileDialogOnClick:!0,hasControlInside:!1};uploader;abort(e){this.uploader.abort(e)}saveUploader=e=>{this.uploader=e};render(){return i.createElement(f,g({},this.props,{ref:this.saveUploader}))}}var v=r(112),y=r(92162),w=r(26047),A=r(74567),E=r(6831),z=r(69925),S=r(79287),x=r(7961),k=r(15437),O=r(10540),R=r(28403),H=r(15561),C=r(72668);let I=(0,O.OF)("Upload",e=>{let{fontSizeHeading3:t,marginXS:r,lineWidth:i,pictureCardSize:a,calc:n}=e,l=(0,R.oX)(e,{uploadThumbnailSize:n(t).mul(2).equal(),uploadProgressOffset:n(n(r).div(2)).add(i).equal(),uploadPicCardSize:a});return[(e=>{let{componentCls:t,colorTextDisabled:r}=e;return{[`${t}-wrapper`]:{...(0,x.dF)(e),[t]:{outline:0,"input[type='file']":{cursor:"pointer"}},[`${t}-select`]:{display:"inline-block"},[`${t}-hidden`]:{display:"none"},[`${t}-disabled`]:{color:r,cursor:"not-allowed"}}}})(l),(e=>{let{componentCls:t,iconCls:r}=e;return{[`${t}-wrapper`]:{[`${t}-drag`]:{position:"relative",width:"100%",height:"100%",textAlign:"center",background:e.colorFillAlter,border:`${(0,H.zA)(e.lineWidth)} dashed ${e.colorBorder}`,borderRadius:e.borderRadiusLG,cursor:"pointer",transition:`border-color ${e.motionDurationSlow}`,[t]:{padding:e.padding},[`${t}-btn`]:{display:"table",width:"100%",height:"100%",outline:"none",borderRadius:e.borderRadiusLG,"&:focus-visible":{outline:`${(0,H.zA)(e.lineWidthFocus)} solid ${e.colorPrimaryBorder}`}},[`${t}-drag-container`]:{display:"table-cell",verticalAlign:"middle"},[`
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[426],{7225:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(23830),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},7492:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(33460),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},7851:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(12059),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},12059:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z"}}]},name:"safety-certificate",theme:"outlined"}},12887:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM504 618H320c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM312 490v48c0 4.4 3.6 8 8 8h384c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H320c-4.4 0-8 3.6-8 8z"}}]},name:"file-text",theme:"outlined"}},17362:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"unordered-list",theme:"outlined"}},23830:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"}},24810:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(31738),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},26631:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(12887),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},28438:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M464 144H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H212V212h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H612V212h200v200zM464 544H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H212V612h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H612V612h200v200z"}}]},name:"appstore",theme:"outlined"}},30960:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file",theme:"outlined"}},31738:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M300 328a60 60 0 10120 0 60 60 0 10-120 0zM852 64H172c-17.7 0-32 14.3-32 32v660c0 17.7 14.3 32 32 32h680c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zm-32 660H204V128h616v596zM604 328a60 60 0 10120 0 60 60 0 10-120 0zm250.2 556H169.8c-16.5 0-29.8 14.3-29.8 32v36c0 4.4 3.3 8 7.4 8h729.1c4.1 0 7.4-3.6 7.4-8v-36c.1-17.7-13.2-32-29.7-32zM664 508H360c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z"}}]},name:"robot",theme:"outlined"}},33460:(e,t)=>{t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M931.4 498.9L94.9 79.5c-3.4-1.7-7.3-2.1-11-1.2a15.99 15.99 0 00-11.7 19.3l86.2 352.2c1.3 5.3 5.2 9.6 10.4 11.3l147.7 50.7-147.6 50.7c-5.2 1.8-9.1 6-10.3 11.3L72.2 926.5c-.9 3.7-.5 7.6 1.2 10.9 3.9 7.9 13.5 11.1 21.5 7.2l836.5-417c3.1-1.5 5.6-4.1 7.2-7.1 3.9-8 .7-17.6-7.2-21.6zM170.8 826.3l50.3-205.6 295.2-101.3c2.3-.8 4.2-2.6 5-5 1.4-4.2-.8-8.7-5-10.2L221.1 403 171 198.2l628 314.9-628.2 313.2z"}}]},name:"send",theme:"outlined"}},42758:(e,t,r)=>{r.d(t,{A:()=>o});var i=r(97109),a=r(28438),n=r(88483);function l(){return(l=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}let o=i.forwardRef((e,t)=>i.createElement(n.A,l({},e,{ref:t,icon:a.A})))},45759:(e,t,r)=>{r.d(t,{A:()=>ed});var i=r(97109),a=r(9750),n=r(61222),l=r(42644),o=r(3638);function s(e){let t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch(e){return t}}function c(e){let t=new XMLHttpRequest;e.onProgress&&t.upload&&(t.upload.onprogress=function(t){t.total>0&&(t.percent=t.loaded/t.total*100),e.onProgress(t)});let r=new FormData;e.data&&Object.keys(e.data).forEach(t=>{let i=e.data[t];if(Array.isArray(i))return void i.forEach(e=>{r.append(`${t}[]`,e)});r.append(t,i)}),e.file instanceof Blob?r.append(e.filename,e.file,e.file.name):r.append(e.filename,e.file),t.onerror=function(t){e.onError(t)},t.onload=function(){return t.status<200||t.status>=300?e.onError(function(e,t){let r=Error(`cannot ${e.method} ${e.action} ${t.status}'`);return r.status=t.status,r.method=e.method,r.url=e.action,r}(e,t),s(t)):e.onSuccess(s(t),t)},t.open(e.method,e.action,!0),e.withCredentials&&"withCredentials"in t&&(t.withCredentials=!0);let i=e.headers||{};return null!==i["X-Requested-With"]&&t.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(i).forEach(e=>{null!==i[e]&&t.setRequestHeader(e,i[e])}),t.send(r),{abort(){t.abort()}}}let d=async(e,t)=>{let r=[],i=[];async function a(e){let t=e.createReader(),r=[];for(;;){let e=await new Promise(e=>{t.readEntries(e,()=>e([]))}),i=e.length;if(!i)break;for(let t=0;t<i;t++)r.push(e[t])}return r}async function n(e){return new Promise(r=>{e.file(i=>{t(i)?(e.fullPath&&!i.webkitRelativePath&&(Object.defineProperties(i,{webkitRelativePath:{writable:!0}}),i.webkitRelativePath=e.fullPath.replace(/^\//,""),Object.defineProperties(i,{webkitRelativePath:{writable:!1}})),r(i)):r(null)})})}e.forEach(e=>i.push(e.webkitGetAsEntry()));let l=async(e,t)=>{if(e){if(e.path=t||"",e.isFile){let t=await n(e);t&&r.push(t)}else if(e.isDirectory){let t=await a(e);i.push(...t)}}},o=0;for(;o<i.length;)await l(i[o]),o++;return r},u=+new Date,p=0;function m(){return`rc-upload-${u}-${++p}`}function h(){return(h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}class f extends i.Component{state={uid:m()};reqs={};fileInput;_isMounted;filterFile=(e,t=!1)=>{let r,i,{accept:a,directory:n}=this.props;if("string"==typeof a)i=a;else{let{filter:e,format:t}=a||{};i=t,r="native"===e?()=>!0:e}return(r||(n||t?e=>((e,t)=>{if(e&&t){let r=Array.isArray(t)?t:t.split(","),i=e.name||"",a=e.type||"",n=a.replace(/\/.*$/,"");return r.some(e=>{let t=e.trim();if(/^\*(\/\*)?$/.test(e))return!0;if("."===t.charAt(0)){let e=i.toLowerCase(),r=t.toLowerCase(),a=[r];return(".jpg"===r||".jpeg"===r)&&(a=[".jpg",".jpeg"]),a.some(t=>e.endsWith(t))}return/\/\*$/.test(t)?n===t.replace(/\/.*$/,""):a===t||!!/^\w+$/.test(t)&&((0,l.$e)(!1,`Upload takes an invalidate 'accept' type '${t}'.Skip for check.`),!0)})}return!0})(e,i):()=>!0))(e)};onChange=e=>{let{files:t}=e.target,r=[...t].filter(e=>this.filterFile(e));this.uploadFiles(r),this.reset()};onClick=e=>{let t=this.fileInput;if(!t)return;let r=e.target,{onClick:i}=this.props;r&&"BUTTON"===r.tagName&&(t.parentNode.focus(),r.blur()),t.click(),i&&i(e)};onKeyDown=e=>{"Enter"===e.key&&this.onClick(e)};onDataTransferFiles=async(e,t)=>{let{multiple:r,directory:i}=this.props,a=[...e.items||[]],n=[...e.files||[]];if((n.length>0||a.some(e=>"file"===e.kind))&&t?.(),i)n=await d(Array.prototype.slice.call(a),this.filterFile),this.uploadFiles(n);else{let e=[...n].filter(e=>this.filterFile(e,!0));!1===r&&(e=n.slice(0,1)),this.uploadFiles(e)}};onFilePaste=async e=>{let{pastable:t}=this.props;if(t&&"paste"===e.type){let t=e.clipboardData;return this.onDataTransferFiles(t,()=>{e.preventDefault()})}};onFileDragOver=e=>{e.preventDefault()};onFileDrop=async e=>{if(e.preventDefault(),"drop"===e.type){let t=e.dataTransfer;return this.onDataTransferFiles(t)}};componentDidMount(){this._isMounted=!0;let{pastable:e}=this.props;e&&document.addEventListener("paste",this.onFilePaste)}componentWillUnmount(){this._isMounted=!1,this.abort(),document.removeEventListener("paste",this.onFilePaste)}componentDidUpdate(e){let{pastable:t}=this.props;t&&!e.pastable?document.addEventListener("paste",this.onFilePaste):!t&&e.pastable&&document.removeEventListener("paste",this.onFilePaste)}uploadFiles=e=>{let t=[...e];Promise.all(t.map(e=>(e.uid=m(),this.processFile(e,t)))).then(e=>{let{onBatchStart:t}=this.props;t?.(e.map(({origin:e,parsedFile:t})=>({file:e,parsedFile:t}))),e.filter(e=>null!==e.parsedFile).forEach(e=>{this.post(e)})})};processFile=async(e,t)=>{let r,i,{beforeUpload:a}=this.props,n=e;if(a){try{n=await a(e,t)}catch(e){n=!1}if(!1===n)return{origin:e,parsedFile:null,action:null,data:null}}let{action:l}=this.props;r="function"==typeof l?await l(e):l;let{data:o}=this.props;i="function"==typeof o?await o(e):o;let s=("object"==typeof n||"string"==typeof n)&&n?n:e,c=s instanceof File?s:new File([s],e.name,{type:e.type});return c.uid=e.uid,{origin:e,data:i,parsedFile:c,action:r}};post({data:e,origin:t,action:r,parsedFile:i}){if(!this._isMounted)return;let{onStart:a,customRequest:n,name:l,headers:o,withCredentials:s,method:d}=this.props,{uid:u}=t,p=n||c;a(t),this.reqs[u]=p({action:r,filename:l,data:e,file:i,headers:o,withCredentials:s,method:d||"post",onProgress:e=>{let{onProgress:t}=this.props;t?.(e,i)},onSuccess:(e,t)=>{let{onSuccess:r}=this.props;r?.(e,i,t),delete this.reqs[u]},onError:(e,t)=>{let{onError:r}=this.props;r?.(e,t,i),delete this.reqs[u]}},{defaultRequest:c})}reset(){this.setState({uid:m()})}abort(e){let{reqs:t}=this;if(e){let r=e.uid?e.uid:e;t[r]&&t[r].abort&&t[r].abort(),delete t[r]}else Object.keys(t).forEach(e=>{t[e]&&t[e].abort&&t[e].abort(),delete t[e]})}saveFileInput=e=>{this.fileInput=e};render(){let{component:e,prefixCls:t,className:r,classNames:a={},disabled:n,id:s,name:c,style:d,styles:u={},multiple:p,accept:m,capture:f,children:g,directory:b,openFileDialogOnClick:$,onMouseEnter:v,onMouseLeave:y,hasControlInside:w,...A}=this.props,E="string"==typeof m?m:m?.format,z=(0,o.$)(t,{[`${t}-disabled`]:n,[r]:r}),S=n?{}:{onClick:$?this.onClick:()=>{},onKeyDown:$?this.onKeyDown:()=>{},onMouseEnter:v,onMouseLeave:y,onDrop:this.onFileDrop,onDragOver:this.onFileDragOver,tabIndex:w?void 0:"0"};return i.createElement(e,h({},S,{className:z,role:w?void 0:"button",style:d}),i.createElement("input",h({},(0,l.KE)(A,{aria:!0,data:!0}),{id:s,name:c,disabled:n,type:"file",ref:this.saveFileInput,onClick:e=>e.stopPropagation(),key:this.state.uid,style:{display:"none",...u.input},className:a.input,accept:E},b?{directory:"directory",webkitdirectory:"webkitdirectory"}:{},{multiple:p,onChange:this.onChange},null!=f?{capture:f}:{})),g)}}function g(){return(g=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(e[i]=r[i])}return e}).apply(this,arguments)}function b(){}class $ extends i.Component{static defaultProps={component:"span",prefixCls:"rc-upload",data:{},headers:{},name:"file",multipart:!1,onStart:b,onError:b,onSuccess:b,multiple:!1,beforeUpload:null,customRequest:null,withCredentials:!1,openFileDialogOnClick:!0,hasControlInside:!1};uploader;abort(e){this.uploader.abort(e)}saveUploader=e=>{this.uploader=e};render(){return i.createElement(f,g({},this.props,{ref:this.saveUploader}))}}var v=r(112),y=r(92162),w=r(26047),A=r(74567),E=r(6831),z=r(69925),S=r(79287),x=r(7961),k=r(15437),O=r(10540),R=r(28403),H=r(15561),C=r(72668);let I=(0,O.OF)("Upload",e=>{let{fontSizeHeading3:t,marginXS:r,lineWidth:i,pictureCardSize:a,calc:n}=e,l=(0,R.oX)(e,{uploadThumbnailSize:n(t).mul(2).equal(),uploadProgressOffset:n(n(r).div(2)).add(i).equal(),uploadPicCardSize:a});return[(e=>{let{componentCls:t,colorTextDisabled:r}=e;return{[`${t}-wrapper`]:{...(0,x.dF)(e),[t]:{outline:0,"input[type='file']":{cursor:"pointer"}},[`${t}-select`]:{display:"inline-block"},[`${t}-hidden`]:{display:"none"},[`${t}-disabled`]:{color:r,cursor:"not-allowed"}}}})(l),(e=>{let{componentCls:t,iconCls:r}=e;return{[`${t}-wrapper`]:{[`${t}-drag`]:{position:"relative",width:"100%",height:"100%",textAlign:"center",background:e.colorFillAlter,border:`${(0,H.zA)(e.lineWidth)} dashed ${e.colorBorder}`,borderRadius:e.borderRadiusLG,cursor:"pointer",transition:`border-color ${e.motionDurationSlow}`,[t]:{padding:e.padding},[`${t}-btn`]:{display:"table",width:"100%",height:"100%",outline:"none",borderRadius:e.borderRadiusLG,"&:focus-visible":{outline:`${(0,H.zA)(e.lineWidthFocus)} solid ${e.colorPrimaryBorder}`}},[`${t}-drag-container`]:{display:"table-cell",verticalAlign:"middle"},[`
|
|
2
2
|
&:not(${t}-disabled):hover,
|
|
3
3
|
&-hover:not(${t}-disabled)
|
|
4
4
|
`]:{borderColor:e.colorPrimaryHover},[`p${t}-drag-icon`]:{marginBottom:e.margin,[r]:{color:e.colorPrimary,fontSize:e.uploadThumbnailSize}},[`p${t}-text`]:{margin:`0 0 ${(0,H.zA)(e.marginXXS)}`,color:e.colorTextHeading,fontSize:e.fontSizeLG},[`p${t}-hint`]:{color:e.colorTextDescription,fontSize:e.fontSize},[`&${t}-disabled`]:{[`p${t}-drag-icon ${r},
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[530],{8090:(e,t,n)=>{n.d(t,{EL:()=>Z,zT:()=>V,II:()=>Q,bJ:()=>er,Jr:()=>J,O0:()=>em,uj:()=>L,GC:()=>z,qj:()=>eo,x8:()=>W,Kg:()=>et,a3:()=>eu,Qs:()=>F,PI:()=>ea,dB:()=>ef,Jy:()=>es,uv:()=>q,vp:()=>U,m_:()=>B,kH:()=>Y,z9:()=>G,Aq:()=>ec,RV:()=>el,Kq:()=>$});var r=n(97109),a=n(84662),l=n(30486),o=n(4527),i=n(80042),c=n(99650),s=n(25345),u=n(7851),d=n(33555),m=n(43240),f=n(26619),p=n(23216),h=n(46791),g=n(8579),v=n(26631),x=n(35459),y=n(64629),w=n(76824),k=n(83374),b=n(81668),A=n(39356),I=n(8263),j=n(61024);let E=["failed","paused","repairing","blocked","running","pending","completed"],S=["chars","costUsd"];function M(e,t){return e.seq!==t.seq?e.seq-t.seq:e.id===t.id?0:e.id<t.id?-1:1}function C(e){let t=new Map;for(let n of e){if(void 0===n.parentId)continue;let e=t.get(n.parentId);e?e.push(n):t.set(n.parentId,[n])}for(let e of t.values())e.sort(M);return t}function R(e){let t=new Map(e.map(e=>[e.id,e])),n=new Map;for(let r of e){let e=0,a=r,l=new Set([r.id]);for(;(null==a?void 0:a.parentId)!==void 0;){let n=t.get(a.parentId);if(!n||l.has(n.id))break;l.add(n.id),e+=1,a=n}n.set(r.id,e)}return n}let N=new Set(["prepare","understand","plan","blueprint","write","close","deliver","chapter","block","turn","round","round.observe","round.decide","round.fix","repair.request","repair.localize","repair.impact","repair.transaction","repair.recheck","supervisor","skill.load"]),T=new Set(["failed","paused","repairing","blocked","running","pending","completed"]),D={pending:{key:"common.statusWaiting",text:"等待中",color:"default"},running:{key:"common.statusRunning",text:"进行中",color:"processing"},completed:{key:"common.statusCompleted",text:"已完成",color:"success"},paused:{key:"common.statusPaused",text:"已暂停",color:"gold"},repairing:{key:"common.statusRepairing",text:"修复中",color:"warning"},blocked:{key:"common.statusBlocked",text:"已放弃(阻塞)",color:"warning"},failed:{key:"common.statusAbnormal",text:"异常",color:"error"}};function _(e,t,n,r){let a=e[t];if(!a)return"未知".concat(n,"(").concat(t||"空",")");if(a.key&&r){let e=r(a.key);if(e&&e!==a.key)return e}return a.text}function B(e,t){return _(D,e,"状态",t)}function q(e){var t,n;return null!=(n=null==(t=D[e])?void 0:t.color)?n:"default"}let P={queued:{key:"common.statusWaiting",text:"排队中",color:"default"},generating:{key:"common.statusRunning",text:"生成中",color:"processing"},paused:{key:"common.statusPaused",text:"已暂停(节点边界生效)",color:"gold"},completed:{key:"common.statusCompleted",text:"已完成",color:"success"},completed_with_issues:{key:"common.statusReview",text:"完成(有需复核项)",color:"warning"},warning:{key:"common.statusReview",text:"需复核",color:"warning"},failed:{key:"common.statusAbnormal",text:"失败",color:"error"},aborted:{key:"common.statusAbnormal",text:"已中止",color:"default"}};function z(e,t){return _(P,e,"记录状态",t)}function L(e){var t,n;return null!=(n=null==(t=P[e])?void 0:t.color)?n:"default"}let O=["failed","paused","repairing","blocked","running","pending","completed"];function U(e){let t=O.indexOf(e);return t>=0?t:O.length}let H={prepare:"生成准备",understand:"资料理解",plan:"规划",blueprint:"蓝图",write:"正文撰写",close:"收口",deliver:"交付",chapter:"章节",block:"块",turn:"轮次",round:"收口轮","round.observe":"收口\xb7观察","round.decide":"收口\xb7判定","round.fix":"收口\xb7修复","repair.request":"修复\xb7请求","repair.localize":"修复\xb7定位","repair.impact":"修复\xb7影响面","repair.transaction":"修复\xb7事务","repair.recheck":"修复\xb7复检","skill.load":"技能命中",supervisor:"调度决策"};function G(e){var t;return e?null!=(t=H[e])?t:e:"未知节点"}let X={role_binding:(0,r.createElement)(a.A),knowledge_retrieval:(0,r.createElement)(l.A),file_understanding:(0,r.createElement)(o.A),fact_extraction:(0,r.createElement)(i.A),chapter_generation:(0,r.createElement)(c.A),llm_review:(0,r.createElement)(s.A),validation:(0,r.createElement)(u.A),reference:(0,r.createElement)(d.A),prepare:(0,r.createElement)(m.A),understand:(0,r.createElement)(f.A),plan:(0,r.createElement)(p.A),blueprint:(0,r.createElement)(h.A),write:(0,r.createElement)(g.A),chapter:(0,r.createElement)(v.A),block:(0,r.createElement)(x.A),turn:(0,r.createElement)(y.A),round:(0,r.createElement)(w.A),close:(0,r.createElement)(k.A),deliver:(0,r.createElement)(b.A),repair:(0,r.createElement)(A.A),skill:(0,r.createElement)(I.A),supervisor:(0,r.createElement)(j.A),default:(0,r.createElement)(m.A)};function Y(e){var t;return null!=(t=X[e.split(".")[0]||e])?t:X.default}function F(e){var t;return null!=(t=X[e])?t:X.default}function K(e){var t,n;let r=e.issues;return{id:e.id,...void 0!==e.parentId?{parentId:e.parentId}:{},type:e.type||"block",title:null!=(t=e.title)?t:"",seq:"number"==typeof e.seq&&Number.isFinite(e.seq)?e.seq:0,status:"string"==typeof(n=e.status)&&T.has(n)?e.status:"failed",startedAt:"number"==typeof e.startedAt&&Number.isFinite(e.startedAt)&&e.startedAt>0?e.startedAt:0,...void 0!==e.completedAt?{completedAt:e.completedAt}:{},...e.progress?{progress:e.progress}:{},...e.metrics?{metrics:e.metrics}:{},...Array.isArray(r)&&r.length>0?{issues:r}:{},...void 0!==e.payloadRef?{payloadRef:e.payloadRef}:{}}}function J(e,t){let n=new Map(e.map(e=>[e.id,e]));return(function(e,t){let n=function(e){let t=C(e),n=R(e),r=[...e].sort((e,t)=>{var r,a;return(null!=(r=n.get(t.id))?r:0)-(null!=(a=n.get(e.id))?a:0)||M(e,t)}),a=new Map(e.map(e=>[e.id,e]));for(let e of r){let n=t.get(e.id);if(!n||0===n.length)continue;let r=n.map(e=>{var t;return null!=(t=a.get(e.id))?t:e});a.set(e.id,function(e,t){var n,r,a;if(0===t.length)return{...e};let l=[...t].sort(M),o={...null!=(r=e.metrics)?r:{}};for(let e of S){let t=function(e,t){let n=0,r=!1;for(let l of e){var a;let e=null==(a=l.metrics)?void 0:a[t];"number"==typeof e&&Number.isFinite(e)&&(n+=e,r=!0)}return r?n:void 0}(l,e);void 0===t?delete o[e]:o[e]=t}let i=null==(n=e.progress)?void 0:n.label,c={current:l.filter(e=>"completed"===e.status).length,total:l.length,...void 0!==i?{label:i}:{}},s=function(e){let t=new Set,n=[];for(let a of e){var r;let e=null==(r=a.provenance)?void 0:r.fingerprint;if("string"==typeof e&&e.length>0){if(t.has(e))continue;t.add(e)}n.push(a)}return n}(l.flatMap(e=>{var t;return null!=(t=e.issues)?t:[]})),u=null!=(a=function(e){let t,n=1/0;for(let r of e){let e=function(e){let t=E.indexOf(e);return t>=0?t:0}(r);e<n&&(n=e,t=r)}return t}(l.map(e=>e.status)))?a:e.status;return{...e,status:u,progress:c,...Object.keys(o).length>0?{metrics:o}:{},...s.length>0?{issues:s}:{}}}(e,r))}return[...e].sort(M).map(e=>{var t;return null!=(t=a.get(e.id))?t:e})}(e),r=C(n),a=new Set(n.map(e=>e.id)),l=1/0,o=(e,t)=>{var n;let a=t+1<l?(null!=(n=r.get(e.id))?n:[]).filter(t=>t.id!==e.id).map(e=>o(e,t+1)):[];return{...e,children:a}},i=n.filter(e=>void 0===e.parentId||!a.has(e.parentId)).sort(M).map(e=>o(e,0)),c=new Set,s=e=>{for(let t of e)c.add(t.id),s(t.children)};for(let e of(s(i),n))c.has(e.id)||i.push(o(e,0));return i})(function(e,t){if(void 0===t)return[...e];let n=R(e),r=Math.max(0,Math.floor(t));return e.filter(e=>{var t;return(null!=(t=n.get(e.id))?t:0)<r})}(e.map(K),t)).map(e=>(function e(t,n){var r,a;let l=n.get(t.id),o=null!=(r=null==l?void 0:l.type)?r:String(t.type),i=t.issues;return{id:t.id,...void 0!==t.parentId?{parentId:t.parentId}:{},type:o,unknownType:!("string"==typeof o&&N.has(o)),title:t.title||G(o),seq:t.seq,status:t.status,..."number"==typeof t.startedAt&&t.startedAt>0?{startedAt:t.startedAt}:{},...void 0!==t.completedAt?{completedAt:t.completedAt}:{},...t.progress?{progress:t.progress}:{},metrics:null!=(a=t.metrics)?a:{},issues:Array.isArray(i)?i:[],...void 0!==t.payloadRef?{payloadRef:t.payloadRef}:{},children:t.children.map(t=>e(t,n))}})(e,n))}function W(e){let t=[],n=e=>{for(let r of e)t.push(r),n(r.children)};return n(e),t.sort(M)}function Q(e,t){let n=[],r=(e,a)=>{for(let l of e){if(l.id===t)return n.push(...a),!0;if(r(l.children,[...a,l.id]))return!0}return!1};return r(e,[]),n}let V=236,Z=76;function $(e,t){var n;if(!t)return e;let r=new Map(e),a=null!=(n=r.get(t.id))?n:{dx:0,dy:0};return r.set(t.id,{dx:a.dx+t.dx,dy:a.dy+t.dy}),r}let ee=new Set(["running","repairing"]);function et(e){let t=new Set(e.nodes.filter(e=>ee.has(e.node.status)).map(e=>e.node.id));if(0===t.size)return en;let n=new Set;for(let r of e.edges)t.has(r.fromId)&&n.add(r.id);return n}let en=new Set;function er(e,t){if(0===t.size)return e;let n=e.nodes.map(e=>{let n=t.get(e.node.id);return n?{...e,x:e.x+n.dx,y:e.y+n.dy}:e}),r=e.edges.map(e=>{var n,r,a,l;let o=t.get(e.fromId),i=t.get(e.toId);return o||i?{...e,x1:e.x1+(null!=(n=null==o?void 0:o.dx)?n:0),y1:e.y1+(null!=(r=null==o?void 0:o.dy)?r:0),x2:e.x2+(null!=(a=null==i?void 0:i.dx)?a:0),y2:e.y2+(null!=(l=null==i?void 0:i.dy)?l:0)}:e});return{...e,nodes:n,edges:r}}function ea(e){let t=[],n=[],r=0,a=(e,l)=>{let o,i=e.children,c=40+l*(V+72),s=i.map(e=>({id:e.id,...a(e,l+1)}));for(let a of(0===s.length?(o=40+r*(Z+22),r+=1):o=(s[0].y+s[s.length-1].y)/2,t.push({node:e,x:c,y:o,depth:l}),s))n.push({id:"".concat(e.id,"->").concat(a.id),fromId:e.id,toId:a.id,x1:c+V/2,y1:o+Z,x2:a.x+V/2,y2:a.y});return{x:c,y:o}};for(let t of e)a(t,0),r+=1;let l=t.reduce((e,t)=>Math.max(e,t.x+V),0),o=t.reduce((e,t)=>Math.max(e,t.y+Z),0);return{nodes:t,edges:n,width:l+40,height:o+40}}function el(e,t){let n=["影响面:".concat(t.kind),"波及 ".concat(t.affectedNodeIds.length," 个节点"),...t.escalate?["超出阈值需人工确认"]:[],...t.rollbackable?[]:["不可回滚:按 11.1 需回滚或重新校准,不得当普通改动提交"]];return"请修复节点「".concat(e,"」(").concat(n.join(","),")")}function eo(e,t){let n=t>0?t:1;return{dx:e.dx/n,dy:e.dy/n}}let ei=(e,t)=>e.left<t.right&&e.right>t.left&&e.top<t.bottom&&e.bottom>t.top;function ec(e){var t;let{node:n,view:r,box:a,panelWidth:l,panelHeight:o,gap:i=12,margin:c=8,obstacles:s=[]}=e,u=(e,t,n)=>Math.min(Math.max(e,t),Math.max(t,n)),d=Math.min(l,Math.max(0,a.width-2*c)),m=n.x*r.k+r.x,f=n.y*r.k+r.y,p=f+Z*r.k,h={left:m,top:f,right:m+V*r.k,bottom:p},g=a.width-d-c,v=(e,t)=>{let n=s.filter(n=>n.top>=t&&n.left<e+d&&n.right>e).map(e=>e.top-i);return Math.max(0,Math.min(a.height-c,...n,a.height-c)-t)},x=e=>{let t=a.height-e-c,n=(n,r)=>{if(n<c||r<c||n>g||r>t)return!1;let a={left:n,top:r,right:n+d,bottom:r+e};return!s.some(e=>ei(a,e))},l=m+(V+i)*r.k,o=m-d-i*r.k,x=p+i,y=f-e-i;for(let[e,t]of[[l,x],[l,y],[o,x],[o,y]])if(n(e,t))return{left:e,top:t,maxHeight:Math.max(0,Math.min(v(e,t),a.height-t-c))};let w=[l,o,c,g],k=[x,y,c,t,...s.flatMap(t=>[t.bottom+i,t.top-e-i])],b=null,A=1/0;for(let r of w)for(let a of k){let l=u(r,c,g),o=u(a,c,Math.max(c,t));if(!n(l,o))continue;let i={left:l,top:o,right:l+d,bottom:o+e},s=Math.max(Math.max(0,h.left-i.right,i.left-h.right),Math.max(0,h.top-i.bottom,i.top-h.bottom))+1e3*!!ei(i,h);s<A&&(A=s,b={left:l,top:o})}return b?{...b,maxHeight:v(b.left,b.top)}:null};if(e.pin){let t=u(e.pin.left,c,g),n=u(e.pin.top,c,Math.max(c,a.height-2*c));return{left:t,top:n,maxHeight:Math.max(0,Math.min(v(t,n),a.height-n-c))}}let y=Math.min(o,Math.max(0,a.height-2*c)),w=x(y);if(w)return w;let k=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:8,r=e.height-n,a=t.map(e=>({start:Math.max(n,e.top),end:Math.min(r,e.bottom)})).filter(e=>e.end>e.start).sort((e,t)=>e.start-t.start),l=0,o=n;for(let e of a)e.start>o&&(l=Math.max(l,e.start-o)),o=Math.max(o,e.end);return Math.max(l,r-o)}(a,s,c)-i;if(k>0&&k<y){let e=x(Math.max(120,k));if(e)return e}return null!=(t=null!=w?w:x(Math.max(120,k)))?t:{left:u(m+(V+i)*r.k,c,g),top:c,maxHeight:Math.max(0,a.height-2*c)}}function es(e){var t;if("number"!=typeof e.startedAt||(null==(t=e.metrics)?void 0:t.instantEvent)===!0)return;let n=("number"==typeof e.completedAt?e.completedAt:Date.now())-e.startedAt;return n>=0?n:void 0}function eu(e){if(void 0===e)return"—";let t=Math.max(0,Math.round(e/1e3));if(t<60)return"".concat(t," 秒");let n=Math.floor(t/60);return n<60?"".concat(n," 分 ").concat(t%60," 秒"):"".concat(Math.floor(n/60)," 小时 ").concat(n%60," 分")}let ed=[{key:"note",format:e=>String(e)},{key:"chars",format:e=>"".concat(Number(e).toLocaleString()," 字")},{key:"targetWords",format:e=>"目标 ".concat(Number(e).toLocaleString()," 字")},{key:"turn",format:e=>"第 ".concat(e," 轮")},{key:"residual",format:e=>"残余 ".concat(e)},{key:"toolCalls",format:e=>"工具 ".concat(e," 次")},{key:"attempt",format:e=>"第 ".concat(e," 次尝试")},{key:"failureKinds",format:e=>String(e)},{key:"chapters",format:e=>"".concat(e," 章")},{key:"facts",format:e=>"".concat(e," 条事实")}];function em(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2,n=[];for(let{key:r,format:a}of ed){let l=e[r];if(void 0===l||""===l||!1===l)continue;let o=a(l);if(o.trim()&&(n.push(o),n.length>=t))break}return n}function ef(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6;return Object.entries(e).slice(0,t).map(e=>{let[t,n]=e;return{key:t,text:"number"==typeof n?"".concat(t,": ").concat(Number.isInteger(n)?n:n.toFixed(2)):"".concat(t,": ").concat(String(n))}})}},8665:(e,t,n)=>{n.d(t,{_:()=>g});var r=n(65321),a=n(97109),l=n(48399),o=n(33442),i=n(14932),c=n(11702),s=n(85114),u=n(55897),d=n(57271),m=n(7576),f=n(54746),p=n(7492);let{Text:h}=l.A;function g(e){let{value:t,onChange:n,onSend:l,generating:g,submitting:v,disabled:x,disabledReason:y,selectedNode:w,onMentionSelected:k,resumable:b,onContinue:A,quickActions:I,requireGenerationSetup:j=!1,promptOptions:E=[],projectOptions:S=[],selectedPrompts:M=[],selectedProject:C=null,onSelectPrompts:R,onSelectProject:N,onPreviewStructure:T}=e,[D,_]=(0,a.useState)(!1),B=j?[0===M.length?"提示词":"",!C?"项目":""].filter(Boolean):[],q=B.length>0,P=x?y||"当前不可发起生成":q?"请先用左侧「+」选择".concat(B.join(" 与 "),"——未选齐时不能发起生成"):g?"有任务正在运行:发送将加入生成队列(前面任务完成后自动开始)":"发送后将创建生成任务,画布随节点日志实时增长";return(0,r.jsxs)("div",{className:"canvasInputBar",children:[(0,r.jsxs)(o.A,{wrap:!0,size:6,style:{marginBottom:6},children:[w&&(0,r.jsx)(i.A,{title:"把「@".concat(w.title,"」插入输入框(可见文本,可自行修改)"),children:(0,r.jsx)(c.A,{color:"blue",style:{cursor:"pointer"},onClick:k,children:"@ ".concat(w.title)})}),!w&&(0,r.jsx)(h,{type:"secondary",style:{fontSize:12},children:"点选一个节点后可 @ 提及它"}),b&&!g&&(0,r.jsx)(s.Ay,{size:"small",type:"link",onClick:A,children:"继续生成"}),null==I?void 0:I.map(e=>(0,r.jsx)(s.Ay,{size:"small",type:"link",onClick:e.onClick,children:e.label},e.key))]}),(0,r.jsxs)(o.A,{wrap:!0,size:10,style:{marginBottom:8},children:[(0,r.jsx)(u.A,{trigger:"click",placement:"topLeft",open:D,onOpenChange:_,content:(0,r.jsxs)("div",{style:{width:360,display:"flex",flexDirection:"column",gap:8},children:[j&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{children:[(0,r.jsx)(h,{strong:!0,style:{fontSize:13},children:"提示词"}),(0,r.jsx)(d.A,{mode:"multiple",style:{width:"100%",marginTop:4},value:M.map(e=>e.value),placeholder:0===E.length?"该项目暂无提示词":"选择提示词(至少一份;可多选)",options:E,onChange:e=>null==R?void 0:R(e)})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)(h,{strong:!0,style:{fontSize:13},children:"项目"}),(0,r.jsx)(d.A,{style:{width:"100%",marginTop:4},value:null==C?void 0:C.value,showSearch:!0,optionFilterProp:"label",placeholder:0===S.length?"本项目知识库里还没有资料:先到知识库页上传并入库":"选择项目(= 知识库里这个项目的资料,决定本次用哪份材料)",options:S,onChange:e=>null==N?void 0:N(e)})]}),(0,r.jsx)(h,{type:"secondary",style:{fontSize:12},children:"两者选齐后才能点「生成」。「项目」选的是入库到本地知识库的那份项目资料(清单/图纸/招标文件都在其中)——本次生成只用它,不会把库里别的项目材料混进来。提示词的正文按名字进入对应链路(总控/写作 → 写作链,清单/图纸/提取 → 事实抽取链,排版 → 格式链);章节大纲取自其中带 <OUTLINE> 的那一份,且只能有一份声明大纲。"})]}),!j&&(0,r.jsx)(h,{type:"secondary",style:{fontSize:12},children:"提示词与项目取自这条记录本身(章节结构由记录里那份提示词的大纲派生),不需要在这里再选。"}),(0,r.jsx)("div",{children:(0,r.jsx)(s.Ay,{size:"small",block:!0,disabled:q,onClick:()=>{_(!1),null==T||T()},children:"结构预览(章清单与小节)"})})]}),children:(0,r.jsx)(s.Ay,{style:{marginLeft:"5px"},size:"small",icon:(0,r.jsx)(f.A,{}),type:q?"primary":"default",children:"提示词 / 项目"})}),M.map(e=>(0,r.jsx)(c.A,{color:"blue",closable:!0,onClose:t=>{t.preventDefault(),null==R||R(M.filter(t=>t.value!==e.value).map(e=>e.value))},children:"提示词:".concat(e.label)},e.value)),C&&(0,r.jsx)(c.A,{color:"geekblue",closable:!0,onClose:e=>{e.preventDefault(),null==N||N("")},children:"项目:".concat(C.label)})]}),(0,r.jsxs)(o.A.Compact,{style:{width:"100%"},children:[(0,r.jsx)(m.A.TextArea,{value:t,onChange:e=>n(e.target.value),onPressEnter:e=>{!e.shiftKey&&(e.preventDefault(),x||v||l())},autoSize:{minRows:1,maxRows:5},placeholder:"描述你的需求;可用上面的 @ 提及把节点带进正文(Enter 发送,Shift+Enter 换行)",disabled:x}),(0,r.jsx)(i.A,{title:P,children:(0,r.jsx)(s.Ay,{type:"primary",icon:(0,r.jsx)(p.A,{}),loading:v,disabled:x||q||!t.trim(),onClick:l,children:g?"排队提交":"生成"})})]})]})}},28629:(e,t,n)=>{n.d(t,{p:()=>r});function r(e,t){let n="/canvas/".concat(encodeURIComponent(e));return t?"".concat(n,"?projectRoot=").concat(encodeURIComponent(t)):n}},34038:(e,t,n)=>{n.d(t,{B:()=>u});var r=n(65321),a=n(48399),l=n(25258),o=n(85114),i=n(85493),c=n(38332);let{Paragraph:s}=a.A;function u(e){let{open:t,title:n,chapters:a,outlineSource:u,materialScope:d,onClose:m}=e,f=a.length>0?"结构预览:".concat(n,"(").concat(a.length," 章").concat(u?",大纲来源:".concat(u):"",")"):"结构预览:".concat(n);return(0,r.jsxs)(l.A,{open:t,title:f,centered:!0,onCancel:m,width:640,styles:{container:{maxHeight:"calc(100vh - 48px)",display:"flex",flexDirection:"column"},body:{overflowY:"auto",flex:1,minHeight:0}},footer:(0,r.jsx)(o.Ay,{type:"primary",onClick:m,children:"知道了"}),children:[(0,r.jsx)(s,{type:"secondary",style:{fontSize:12,marginBottom:8},children:"章清单与小节由提示词的 <OUTLINE> 大纲 + 技能库(按章域 \xd7 工程类型)派生;这份预览与点「生成」时用的是同一个派生函数、同一份输入。 要看提示词会被怎样解读(必含表格 / 禁止项 / 字数下限),去提示词页的规则预览。"}),d&&(0,r.jsx)(i.A,{type:"info",showIcon:!0,style:{marginBottom:8},message:"本次项目资料:".concat(d.root||"(未指定)","(").concat(d.fileCount," 份文件)"),description:"资料范围已锁定在所选项目资料内:库里其它项目的材料不会进入本篇。"}),0===a.length&&(0,r.jsx)(i.A,{type:"info",showIcon:!0,message:"本次没有派生出章清单",description:"派生的硬约束是提示词(或输入框要求)里要有 ≥2 章的显式大纲;缺大纲时服务端会直接拒绝这次生成,并在提示里说清缺什么。"}),(0,r.jsx)(c.A,{size:"small",dataSource:a,renderItem:(e,t)=>(0,r.jsx)(c.A.Item,{children:(0,r.jsx)(c.A.Item.Meta,{title:"".concat(t+1,". ").concat(e.title),description:e.sections.length>0?e.sections.join("、"):"(无预设小节)"})})})]})}},45551:(e,t,n)=>{function r(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024)),n=e/Math.pow(1024,t);return"".concat(n.toFixed(+(0!==t))," ").concat(["B","KB","MB","GB","TB"][t])}function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN",n=Math.max(0,Math.floor(e)),r=Math.floor(n/86400),a=Math.floor(n%86400/3600),l=Math.floor(n%3600/60),o="en-US"===t;return r>0?o?"".concat(r,"d ").concat(a,"h"):"".concat(r," 天 ").concat(a," 小时"):a>0?o?"".concat(a,"h ").concat(l,"m"):"".concat(a," 小时 ").concat(l," 分"):l>0?o?"".concat(l,"m"):"".concat(l," 分"):o?"Just now":"刚刚"}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";if(!e||e<=0)return"en-US"===t?"Never":"从未";let n=Math.floor(Math.floor((Date.now()-e)/1e3)/60),r=Math.floor(n/60),a=Math.floor(r/24);return a>30?new Date(e).toLocaleDateString(t):"en-US"===t?a>0?"".concat(a,"d ago"):r>0?"".concat(r,"h ago"):n>0?"".concat(n,"m ago"):"Just now":a>0?"".concat(a," 天前"):r>0?"".concat(r," 小时前"):n>0?"".concat(n," 分钟前"):"刚刚"}n.d(t,{Jm:()=>c,a3:()=>a,fw:()=>l,mc:()=>s,z3:()=>r});let o={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},i={document:"Document",spreadsheet:"Spreadsheet",image:"Image",cad:"CAD",code:"Code",data:"Data",web:"Web",diagram:"Diagram",archive:"Archive",other:"Other"};function c(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(t=("en-US"===n?i:o)[e])?t:e}let s={active:"common.statusIndexed",outdated:"common.statusOutdated",error:"common.statusAbnormal",deleted:"common.statusDeleted",disk:"common.statusNotIndexed"}},52057:(e,t,n)=>{n.d(t,{B:()=>i,VF:()=>l,ff:()=>o,s_:()=>c});var r=n(97109),a=n(8090);let l=24;function o(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:80,a=e.x*t.k+t.x,l=e.y*t.k+t.y,o=a+e.width*t.k,i=l+e.height*t.k;return!(o>=-r&&i>=-r&&a<=n.width+r&&l<=n.height+r)}function i(e,t,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:24,a=t.x,l=t.y,o=t.x+e.width*t.k,i=t.y+e.height*t.k,c=Math.min(o,n.right)-Math.max(a,n.left),s=Math.min(i,n.bottom)-Math.max(l,n.top);return c>=r&&s>=r?{dx:0,dy:0}:{dx:n.left+r-a,dy:n.top+r-l}}function c(){let[e,t]=(0,r.useState)({x:0,y:0,k:1}),n=(0,r.useRef)(null),l=(0,r.useRef)(null),o=(0,r.useRef)(e);(0,r.useEffect)(()=>{o.current=e},[e]);let i=(0,r.useCallback)((e,r,a)=>{t(t=>{var l;let o=Math.min(2,Math.max(.1,t.k*e)),i=null==(l=n.current)?void 0:l.getBoundingClientRect();if(!i||void 0===r||void 0===a)return{...t,k:o};let c=(r-i.left-t.x)/t.k,s=(a-i.top-t.y)/t.k;return{k:o,x:r-i.left-c*o,y:a-i.top-s*o}})},[]),[c,s]=(0,r.useState)(null);(0,r.useEffect)(()=>{var e,t;let r=null!=(t=null==(e=n.current)?void 0:e.parentElement)?t:n.current;r&&r!==c&&s(r)}),(0,r.useEffect)(()=>{if(!c)return;let e=e=>{(e=>{for(let t=e;t&&t!==c;t=t.parentElement)if(t.scrollHeight>t.clientHeight+1){let e=getComputedStyle(t).overflowY;if("auto"===e||"scroll"===e)return!0}return!1})(e.target)||(e.preventDefault(),i(Math.exp(-e.deltaY/320),e.clientX,e.clientY))};return c.addEventListener("wheel",e,{passive:!1}),()=>c.removeEventListener("wheel",e)},[c,i]);let u=(0,r.useCallback)(e=>{if(0!==e.button)return;e.currentTarget.setPointerCapture(e.pointerId);let t=o.current;l.current={pointerId:e.pointerId,startX:e.clientX,startY:e.clientY,originX:t.x,originY:t.y}},[]),d=(0,r.useCallback)(e=>{let n=l.current;n&&n.pointerId===e.pointerId&&t(t=>({...t,x:n.originX+(e.clientX-n.startX),y:n.originY+(e.clientY-n.startY)}))},[]),m=(0,r.useCallback)(()=>{l.current=null},[]),f=(0,r.useCallback)(()=>t({x:0,y:0,k:1}),[]),p=(e,t)=>null!=t?t:{left:0,top:0,right:e.width,bottom:e.height},h=(0,r.useCallback)((e,r,a)=>{t(t=>{var l;let o=null==(l=n.current)?void 0:l.getBoundingClientRect();if(!o||e<=0||r<=0)return{...t,x:0,y:0};let i=p(o,a),c=Math.max(1,i.right-i.left),s=Math.max(1,i.bottom-i.top),u=Math.min(2,Math.max(.1,Math.min(c/e,s/r)));return{k:u,x:i.left+(c-e*u)/2,y:i.top+(s-r*u)/2}})},[]),g=(0,r.useCallback)((e,r,l,o)=>{t(t=>{var i;let c=null==(i=n.current)?void 0:i.getBoundingClientRect();if(!c)return t;let s=p(c,o),u=null!=l?l:t.k,d=(s.left+s.right)/2,m=(s.top+s.bottom)/2;return{k:u,x:d-(e+a.zT/2)*u,y:m-(r+a.EL/2)*u}})},[]);return{view:e,containerRef:n,zoomAt:i,onPointerDown:u,onPointerMove:d,endDrag:m,reset:f,fit:h,centerOn:g,panBy:(0,r.useCallback)((e,n)=>{(0!==e||0!==n)&&t(t=>({...t,x:t.x+e,y:t.y+n}))},[])}}},57481:(e,t,n)=>{n.d(t,{_:()=>x});var r=n(65321),a=n(97109),l=n(17807),o=n(42700),i=n(84253),c=n(32965),s=n(14932),u=n(75174),d=n(1310),m=n(58209),f=n(85587),p=n(6578),h=n(70553),g=n(45551);let v="canvas:recordsBallPos";function x(e){let{currentDocumentId:t,projectRoot:n,onSelect:x,onCurrentDeleted:w}=e,k=(0,f.Vr)(),{message:b}=l.A.useApp(),A=(0,a.useRef)(null),[I,j]=(0,a.useState)([]),[E,S]=(0,a.useState)(!1),[M,C]=(0,a.useState)(!1),[R,N]=(0,a.useState)(1),[T,D]=(0,a.useState)(!1),[_,B]=(0,a.useState)([]),[q,P]=(0,a.useState)(!1),[z,L]=(0,a.useState)(null),[O,U]=(0,a.useState)(!0),H=(0,a.useRef)(null);(0,a.useEffect)(()=>{var e,t;let n=function(){try{let e=window.localStorage.getItem(v);if(!e)return null;let t=JSON.parse(e);return"number"==typeof(null==t?void 0:t.left)&&"number"==typeof(null==t?void 0:t.top)?{left:t.left,top:t.top}:null}catch(e){return null}}();if(!n)return;let r=null==(t=A.current)||null==(e=t.parentElement)?void 0:e.getBoundingClientRect();if(!r)return void L(n);L({left:Math.min(Math.max(8,n.left),Math.max(8,r.width-44-8)),top:Math.min(Math.max(8,n.top),Math.max(8,r.height-44-8))})},[]);let G=(0,a.useCallback)(async()=>{S(!0);try{let e=await (0,p.cQ)(n||void 0);j(e.documents||[])}catch(e){j([])}finally{S(!1)}},[n]);(0,a.useEffect)(()=>{G()},[G]),(0,a.useEffect)(()=>{M&&G()},[M,G]),(0,a.useEffect)(()=>{N(1),B([])},[M]),I.length;let X=(0,a.useMemo)(()=>I.slice((R-1)*8,8*R),[I,R]),Y=(0,a.useCallback)(e=>!(0,h.Ce)(e.status),[]),F=X.filter(Y).map(e=>e.id),K=()=>{if(!M){var e,t,n;let r=null==(t=A.current)||null==(e=t.parentElement)?void 0:e.getBoundingClientRect(),a=null==(n=A.current)?void 0:n.getBoundingClientRect();U(!r||!a||a.top-r.top>252)}C(e=>!e)},J=async e=>{try{await (0,p.QG)(e.id,e.projectRoot||n||void 0),b.success(k("common.success")),B(t=>t.filter(t=>t!==e.id)),e.id===t&&w(),await G()}catch(e){b.error(k("common.error"))}},W=async()=>{let e=I.filter(e=>_.includes(e.id)&&Y(e));if(0!==e.length){P(!0);try{await Promise.all(e.map(e=>(0,p.QG)(e.id,e.projectRoot||n||void 0))),b.success(k("records.deletedCount").replace("{count}",String(e.length))),t&&e.some(e=>e.id===t)&&w(),B([]),D(!1),await G()}catch(e){b.error(k("common.error"))}finally{P(!1)}}},Q=z?{left:z.left,top:z.top}:{right:24,bottom:96};return(0,r.jsxs)("div",{className:"canvasRecordsBall",ref:A,style:{position:"absolute",zIndex:3,...Q},children:[M&&(0,r.jsxs)("div",{className:"canvasRecordsPanel",style:{position:"absolute",right:0,width:320,maxHeight:420,display:"flex",flexDirection:"column",...O?{bottom:52}:{top:52}},children:[(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2 px-3 py-2 border-b border-[var(--canvasSectionBorder)] shrink-0",children:[(0,r.jsxs)("span",{className:"text-[13px] font-semibold text-[var(--colorText)]",children:[k("records.title"),(0,r.jsx)("span",{className:"ml-2 font-normal text-xs text-[var(--colorTextTertiary)]",children:I.length})]}),(0,r.jsx)("button",{type:"button",className:"canvasRecordsLink",onClick:()=>{D(e=>!e),B([])},children:T?k("common.cancel"):k("records.batch")})]}),(0,r.jsx)("div",{className:"flex-1 min-h-0 overflow-y-auto",children:E&&0===I.length?(0,r.jsx)("div",{className:"py-10 text-center",children:(0,r.jsx)(o.A,{size:"small"})}):0===I.length?(0,r.jsx)("div",{className:"py-8",children:(0,r.jsx)(i.A,{image:i.A.PRESENTED_IMAGE_SIMPLE,description:(0,r.jsx)("span",{className:"text-xs text-[var(--colorTextTertiary)]",children:k("records.empty")})})}):X.map(e=>{var n;let a=e.id===t,l=Y(e);return(0,r.jsxs)("div",{className:"group flex items-start gap-2 px-3 py-2 border-b border-[var(--canvasSectionBorder)] last:border-b-0 transition-colors ".concat(a?"bg-[var(--colorBgSelected)]":"hover:bg-[var(--colorBgHover)]"),children:[T&&(0,r.jsx)("input",{type:"checkbox",className:"mt-1 shrink-0",disabled:!l,checked:_.includes(e.id),onChange:t=>B(n=>t.target.checked?[...n,e.id]:n.filter(t=>t!==e.id))}),(0,r.jsxs)("button",{type:"button",className:"min-w-0 flex-1 text-left bg-transparent border-0 p-0 cursor-pointer",title:e.title,onClick:()=>{x(e),C(!1)},children:[(0,r.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,r.jsx)("span",{className:"w-1.5 h-1.5 shrink-0 rounded-full ".concat(null!=(n=y[e.status])?n:"bg-[var(--colorTextTertiary)]")}),(0,r.jsx)("span",{className:"truncate text-[13px] ".concat(a?"font-semibold text-[var(--colorText)]":"text-[var(--colorText)]"),children:e.title}),a&&(0,r.jsx)("span",{className:"shrink-0 text-[10px] text-[var(--colorTextTertiary)]",children:k("records.current")})]}),(0,r.jsxs)("div",{className:"mt-0.5 pl-3 text-[11px] text-[var(--colorTextTertiary)]",children:[(0,r.jsx)(d.A,{className:"mr-1"}),(0,g.fw)(e.updatedAt,"zh-CN")]})]}),!T&&l&&(0,r.jsx)(c.A,{title:k("records.confirmDelete"),description:k("records.deleteHint"),onConfirm:()=>{J(e)},okText:k("common.confirm"),cancelText:k("common.cancel"),children:(0,r.jsx)("button",{type:"button",className:"canvasRecordsDelete",title:k("common.delete"),children:(0,r.jsx)(m.A,{})})}),!T&&!l&&(0,r.jsx)(s.A,{title:k("records.inFlightHint"),children:(0,r.jsx)("span",{className:"canvasRecordsDelete isDisabled",children:(0,r.jsx)(m.A,{})})})]},e.id)})}),I.length>8&&(0,r.jsx)("div",{className:"flex justify-center px-3 py-2 border-t border-[var(--canvasSectionBorder)] shrink-0",children:(0,r.jsx)(u.A,{size:"small",simple:!0,current:R,total:I.length,pageSize:8,onChange:N})}),T&&(0,r.jsxs)("div",{className:"flex items-center justify-between gap-2 px-3 py-2 border-t border-[var(--canvasSectionBorder)] shrink-0",children:[(0,r.jsx)("span",{className:"text-xs text-[var(--colorTextSecondary)]",children:k("records.checkedCount").replace("{count}",String(_.length))}),(0,r.jsxs)("div",{className:"flex items-center gap-2",children:[(0,r.jsx)("button",{type:"button",className:"canvasRecordsLink",onClick:()=>B(_.length===F.length?[]:F),children:_.length===F.length&&F.length>0?k("records.clearSelect"):k("records.selectPage")}),(0,r.jsx)(c.A,{title:k("records.confirmDeleteSelected").replace("{count}",String(_.length)),description:k("records.deleteHint"),disabled:0===_.length,onConfirm:()=>{W()},okText:k("common.confirm"),cancelText:k("common.cancel"),children:(0,r.jsxs)("button",{type:"button",className:"canvasRecordsDanger",disabled:0===_.length||q,children:[(0,r.jsx)(m.A,{className:"mr-1"}),k("records.deleteSelected")]})})]})]})]}),(0,r.jsxs)("div",{className:"canvasRecordsBallBtn",role:"button",tabIndex:0,"aria-label":"".concat(k("records.title"),"(").concat(I.length,")"),style:{width:44,height:44},onPointerDown:e=>{var t,n,r;let a=null==(n=A.current)||null==(t=n.parentElement)?void 0:t.getBoundingClientRect(),l=null==(r=A.current)?void 0:r.getBoundingClientRect();if(a&&l){H.current={pointerId:e.pointerId,startX:e.clientX,startY:e.clientY,originLeft:l.left-a.left,originTop:l.top-a.top,moved:!1};try{e.currentTarget.setPointerCapture(e.pointerId)}catch(e){}}},onPointerMove:e=>{var t,n;let r=H.current,a=null==(n=A.current)||null==(t=n.parentElement)?void 0:t.getBoundingClientRect();if(!r||r.pointerId!==e.pointerId||!a)return;let l=e.clientX-r.startX,o=e.clientY-r.startY;!r.moved&&5>Math.hypot(l,o)||(r.moved=!0,L({left:Math.min(Math.max(8,r.originLeft+l),Math.max(8,a.width-44-8)),top:Math.min(Math.max(8,r.originTop+o),Math.max(8,a.height-44-8))}))},onPointerUp:e=>{let t=H.current;H.current=null;try{e.currentTarget.releasePointerCapture(e.pointerId)}catch(e){}if(t){if(t.moved)return void L(e=>{if(e)try{window.localStorage.setItem(v,JSON.stringify(e))}catch(e){}return e});K()}},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),K())},children:[(0,r.jsx)(d.A,{}),(0,r.jsx)("span",{className:"canvasRecordsBallBadge".concat(0===I.length?" isZero":""),children:I.length>99?"99+":I.length})]})]})}let y={completed:"bg-[var(--colorOk)]",completed_with_issues:"bg-[var(--colorDanger)]",warning:"bg-[var(--colorWarning)]",failed:"bg-[var(--colorDanger)]",aborted:"bg-[var(--colorTextTertiary)]",generating:"bg-[var(--colorAccent)]",queued:"bg-[var(--colorTextTertiary)]",paused:"bg-[var(--colorWarning)]"}},70553:(e,t,n)=>{n.d(t,{Ce:()=>w,tl:()=>b});var r=n(97109),a=n(25258),l=n(23216),o=n(26619),i=n(8263),c=n(16285),s=n(8579),u=n(29071),d=n(7851),m=n(1310),f=n(26631),p=n(83914),h=n(6578);let g=null,v=!1;function x(){null==g||g.listeners.forEach(e=>e())}let y={role_binding:"角色配置绑定",knowledge_retrieval:"知识库检索",file_understanding:"多模态文件理解",fact_extraction:"LLM 事实抽取",chapter_generation:"LLM 章节生成",validation:"规则校验",llm_review:"LLM 审查优化",reference:"参考资源处理"};function w(e){return"completed"!==e&&"completed_with_issues"!==e&&"warning"!==e&&"failed"!==e&&"aborted"!==e&&"paused"!==e}function k(e){var t,n,a,p,h,g,v,x,w;let k=null==(t=e.agentWorkflow)?void 0:t.nodes;if(!k||0===k.length)return null;let b=[...k].sort((e,t)=>{var n,r;return(null!=(n=e.seq)?n:0)-(null!=(r=t.seq)?r:0)}).map(e=>{let t=y[e.type]||e.title||e.type||"节点",n="failed"===e.status||"blocked"===e.status?"error":"paused"===e.status||"repairing"===e.status?"warning":"running"===e.status?"process":"pending"===e.status?"wait":"finish",a=Object.entries(e.metrics||{}).slice(0,4).map(e=>{let[t,n]=e;return"".concat(t,":").concat(String(n))}).join(" ");return{key:e.id,title:t,subtitle:e.progress?"".concat(e.progress.label||"进度",":").concat(e.progress.current,"/").concat(e.progress.total):"",description:a,status:n,icon:function(e){let t=e.split(".")[0]||e;return"role_binding"===e||"prepare"===t?(0,r.createElement)(l.A):"knowledge_retrieval"===e||"understand"===t?(0,r.createElement)(o.A):"file_understanding"===e||"skill"===t?(0,r.createElement)(i.A):"fact_extraction"===e?(0,r.createElement)(c.A):"chapter_generation"===e||"chapter"===t||"write"===t?(0,r.createElement)(s.A):"llm_review"===e||"turn"===t||"round"===t?(0,r.createElement)(u.A):"validation"===e||"repair"===t||"recheck"===t?(0,r.createElement)(d.A):"plan"===t||"blueprint"===t?(0,r.createElement)(l.A):"rollback"===t||"snapshot"===t?(0,r.createElement)(m.A):(0,r.createElement)(f.A)}(e.type),subSteps:[]}}),A="generating"===e.status||"queued"===e.status?null!=(v=null!=(g=null==(n=b.find(e=>"process"===e.status))?void 0:n.key)?g:null==(a=b.at(-1))?void 0:a.key)?v:null:("failed"===e.status||"aborted"===e.status)&&null!=(w=null!=(x=null==(p=b.find(e=>"error"===e.status))?void 0:p.key)?x:null==(h=b.at(-1))?void 0:h.key)?w:null;return{steps:b,activeKey:A}}function b(){var e,t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{projectRoot:l,documents:o,onNotice:i,t:c,onGenerated:s}=n,[u,d]=(0,r.useState)([]),[m,f]=(0,r.useState)(null),[y,b]=(0,r.useState)(!1),[A,I]=(0,r.useState)(null),[j,E]=(0,r.useState)(""),[S,M]=(0,r.useState)(null),[C,R]=(0,r.useState)(null!=(e=n.documentId)?e:null),[N,T]=(0,r.useState)(null),[D,_]=(0,r.useState)(null!=o?o:[]),[B,q]=(0,r.useState)(0),[P,z]=(0,r.useState)(null),[L,O]=(0,r.useState)([]),[U,H]=(0,r.useState)(null),G=(0,r.useRef)(""),X=(0,r.useRef)(new Map),Y=(0,r.useRef)(new Map),F=(0,r.useRef)(!1),K=(0,r.useRef)(l),J=(0,r.useRef)(C),W=(0,r.useRef)(u),Q=(0,r.useRef)(m),V=(0,r.useRef)(y),Z=(0,r.useRef)(c),$=(0,r.useRef)(i),ee=(0,r.useRef)(s);(0,r.useEffect)(()=>{K.current=l},[l]),(0,r.useEffect)(()=>{J.current=C},[C]),(0,r.useEffect)(()=>{W.current=u},[u]),(0,r.useEffect)(()=>{Q.current=m},[m]),(0,r.useEffect)(()=>{V.current=y},[y]),(0,r.useEffect)(()=>{Z.current=c},[c]),(0,r.useEffect)(()=>{$.current=i},[i]),(0,r.useEffect)(()=>{ee.current=s},[s]);let et=(0,r.useMemo)(()=>"activeGenDocId:".concat(l||"default"),[l]),en=(0,r.useCallback)(e=>{var t;null==(t=$.current)||t.call($,e)},[]),er=(0,r.useCallback)((e,t)=>{var n,r;return null!=(r=null==(n=Z.current)?void 0:n.call(Z,e))?r:t},[]);(0,r.useEffect)(()=>{let e=()=>{let e=g;e&&(d(e.flowSteps),f(e.activeFlowKey),b(e.loading),e.documentId&&R(e.documentId),e.draft&&I(e.draft),void 0!==e.content&&E(e.content))},t=g;return null==t||t.listeners.add(e),e(),()=>{null==t||t.listeners.delete(e)}},[]);let ea=(0,r.useCallback)(async()=>{try{_((await (0,h.cQ)(K.current||void 0)).documents)}catch(e){_([])}},[]);(0,r.useEffect)(()=>{o&&_(o)},[o]),(0,r.useEffect)(()=>{void 0!==n.documentId&&null!==n.documentId&&R(n.documentId)},[n.documentId]);let el=(0,r.useCallback)(function(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:V.current;(null==g?void 0:g.loading)&&(g.flowSteps=e,g.activeFlowKey=t,g.loading=n,x())},[]),eo=(0,r.useCallback)(e=>{let t=Date.now();for(let n of e){let e=X.current.get(n.key);"process"!==n.status||e?("finish"===n.status||"error"===n.status||"warning"===n.status)&&e&&!e.endedAt&&X.current.set(n.key,{...e,endedAt:t}):X.current.set(n.key,{startedAt:t})}},[]),ei=(0,r.useCallback)(e=>{let t=Math.max(0,Math.round(e/1e3));if(t<60)return"".concat(t," 秒");let n=Math.floor(t/60);return n<60?"".concat(n," 分 ").concat(t%60," 秒"):"".concat(Math.floor(n/60)," 小时 ").concat(n%60," 分")},[]),ec=(0,r.useCallback)(e=>{var t;let n=(null==(t=e.agentWorkflow)?void 0:t.nodes)||[],r="".concat(e.id,"|").concat(e.updatedAt,"|").concat(e.status,"|").concat(e.error||"","|n").concat(n.length,":").concat(n.map(e=>{var t,n,r,a;return"".concat(e.id,"=").concat(e.status,":").concat(null!=(r=null==(t=e.progress)?void 0:t.current)?r:0,"/").concat(null!=(a=null==(n=e.progress)?void 0:n.total)?a:0)}).join(","));if(G.current===r)return;G.current=r,M(e);let{steps:a,activeKey:l}=function(e){var t;return arguments.length>1&&void 0!==arguments[1]&&arguments[1],null!=(t=k(e))?t:{steps:[],activeKey:null}}(e);eo(a);let o=w(e.status);d(a),f(l),b(o),el(a,l,o),T("failed"===e.status||"aborted"===e.status?e.error||("aborted"===e.status?"生成已中止":"生成失败"):null),("completed"===e.status||"completed_with_issues"===e.status||"warning"===e.status)&&(e.draft&&I(e.draft),E(e.editedMarkdown||e.markdown),O(e.exportReports||[]))},[el,eo]),es=(0,r.useCallback)(e=>{e.id&&R(e.id),ec(e)},[ec]),eu=(0,r.useCallback)(async(e,t)=>{let n=Date.now(),r=0,a=Date.now(),l=null,o=0;for(;;){let i,c;if(null==t?void 0:t.aborted)throw Error("用户中止");let s=new AbortController;t&&(t.pollController=s);try{let t=await (0,h.v7)(e,!0,K.current||void 0,s.signal,r||void 0);i=t.document,c=t.status,o=0}catch(e){if((null==t?void 0:t.aborted)||e instanceof DOMException&&"AbortError"===e.name)throw Error("用户中止",{cause:e});if((o+=1)>=3)throw e instanceof Error?e:Error("生成进度获取失败");await new Promise(e=>window.setTimeout(e,2e3*o));continue}finally{(null==t?void 0:t.pollController)===s&&(t.pollController=void 0)}let u=i?"queued"===i.status:"queued"===c;if(u&&(a=Date.now(),Date.now()-n>216e5))throw Error("排队等待超时,请稍后刷新列表查看或取消后重新发起");if(!i){if(!u&&(Date.now()-(null!=l?l:n)>75e5||Date.now()-a>96e4))throw Error("生成任务疑似卡住,请点击继续生成或重新生成(后台任务可能仍在运行,稍后刷新可查看)");await new Promise(e=>window.setTimeout(e,1500));continue}if(ec(i),"generating"===i.status&&null===l&&(l=Date.now()),i.updatedAt!==r&&(r=i.updatedAt,a=Date.now()),("completed"===i.status||"completed_with_issues"===i.status||"warning"===i.status)&&i.draft)return i;if("warning"===i.status&&i.error&&/已中断/u.test(i.error))throw Error(i.error);if("failed"===i.status||"aborted"===i.status)throw Error(i.error||("aborted"===i.status?"生成已中止":"生成失败"));if(!u&&(Date.now()-(null!=l?l:n)>75e5||Date.now()-a>96e4))throw Error("生成任务疑似卡住,请点击继续生成或重新生成(后台任务可能仍在运行,稍后刷新可查看)");await new Promise(e=>window.setTimeout(e,1500))}},[ec]),ed=(0,r.useCallback)(async(e,t)=>{if(!e.specId)return;let n=e.title,a=e.promptIds,l=e.projectRoot||K.current;if((null==g?void 0:g.aborted)&&(g=null),null==g?void 0:g.loading){if(F.current)return;if(!l)return void en({kind:"error",text:"未识别当前项目,请先选择或打开项目后再生成文件"});F.current=!0;try{let e=await (0,h.OX)({promptIds:a,...n?{title:n}:{},requirement:t,projectRoot:l});await ea(),en({kind:"info",text:e.queuePosition?"已加入生成队列(第 ".concat(e.queuePosition," 位):前面任务完成后将自动开始"):"生成任务已创建"})}catch(e){en({kind:"error",text:e instanceof Error?e.message:"创建生成任务失败"})}finally{F.current=!1}return}if(!l)return void en({kind:"error",text:"未识别当前项目,请先选择或打开项目后再生成文件"});b(!0);let o=W.current,i=o.length>0?o:[{key:"prepare",title:"正在创建生成任务",description:"系统正在创建后台生成任务,请稍候。",status:"process",icon:(0,r.createElement)(p.A),subSteps:[{key:"start",title:"准备生成任务",status:"process"}]}],c=Q.current||"prepare";d(i),f(c);let s=(0,h.OX)({promptIds:a,...n?{title:n}:{},requirement:t,projectRoot:l});g={id:Date.now(),specId:e.specId,loading:!0,flowSteps:i,activeFlowKey:c,promise:s,listeners:new Set};try{var u,m,y,w,A,j;let t=await s;t.documentId&&(localStorage.setItem(et,t.documentId),R(t.documentId),(null==g?void 0:g.promise)===s&&(g.documentId=t.documentId)),await ea(),t.queuePosition&&en({kind:"info",text:"已加入生成队列(第 ".concat(t.queuePosition," 位):前面任务完成后将自动开始")});let n=t.documentId?await eu(t.documentId,(null==g?void 0:g.promise)===s?g:void 0):void 0,r=t.draft||(null==n?void 0:n.draft);if(!r)throw Error("生成结果为空");(t.documentId||(null==n?void 0:n.id))&&R(t.documentId||n.id),I(r),E((null==n?void 0:n.editedMarkdown)||(null==n?void 0:n.markdown)||r.markdown),(null==g?void 0:g.promise)===s&&(g.draft=r,g.content=(null==n?void 0:n.editedMarkdown)||(null==n?void 0:n.markdown)||r.markdown);let a=n||{id:t.documentId||"draft-".concat(Date.now()),templateId:(null==(u=t.record)?void 0:u.templateId)||(null==(m=t.documentSpec)?void 0:m.id)||e.specId,templateName:(null==(y=t.record)?void 0:y.templateName)||(null==(w=t.documentSpec)?void 0:w.title),title:r.title,requirement:r.requirement,projectRoot:r.projectRoot||K.current,projectId:r.projectId,markdown:r.markdown,status:r.validationIssues.some(e=>"error"===e.level||"warning"===e.level)||!r.exportGate.passed?"completed_with_issues":"completed",draft:r,executionStages:r.executionStages,assets:r.assets||[],createdAt:r.generatedAt,updatedAt:Date.now()},{steps:l}=null!=(j=k(a))?j:{steps:[],activeKey:null};d(l),el(l,"done",!1),f("done"),(null==g?void 0:g.promise)===s&&(g.activeFlowKey="done",g.loading=!1,x(),g=null),localStorage.removeItem(et),await ea(),en({kind:"success",text:"操作成功",key:"common.success"}),(t.documentId||(null==n?void 0:n.id))&&(null==(A=ee.current)||A.call(ee,t.documentId||n.id))}catch(r){localStorage.removeItem(et);let e=r instanceof Error?r.message:er("common.error","出错了"),t=v;v=!1;let n=!t&&"用户中止"===e;T(e),t||d(t=>{let n=t.map(t=>"process"===t.status?{...t,status:"error",description:e,subSteps:t.subSteps.map((e,t)=>({...e,status:0===t?"error":e.status}))}:t);return el(n,Q.current,!1),n}),(null==g?void 0:g.promise)===s&&(g.loading=!1,g.error=e,x(),g=null),await ea(),n?en({kind:"warning",text:"生成任务已被中止(可能来自其他窗口):可在列表中点击「继续生成」恢复"}):t||en({kind:"error",text:e})}finally{b(!1),v=!1,(null==g?void 0:g.promise)===s&&(g.loading=!1,x())}},[en,ea,el,et,er,eu]),em=(0,r.useCallback)(e=>{let t=Y.current.get(e);t&&(clearInterval(t),Y.current.delete(e))},[]),ef=(0,r.useCallback)((e,t)=>{em(e);let n=setInterval(()=>{(async()=>{try{let{document:n}=await (0,h.v7)(e,!0,t||K.current||void 0);if(!n)return;ec(n),await ea(),w(n.status)||(em(e),localStorage.removeItem(et))}catch(e){}})()},2e3);Y.current.set(e,n)},[ec,ea,em,et]);(0,r.useEffect)(()=>()=>{for(let e of Y.current.values())clearInterval(e);Y.current.clear()},[]),(0,r.useEffect)(()=>{if(0===D.length)return;let e=localStorage.getItem(et);if(!e)return;if(!D.find(t=>t.id===e&&("generating"===t.status||"queued"===t.status)))return void localStorage.removeItem(et);R(e);let t=setInterval(()=>{(async()=>{try{let{document:n}=await (0,h.v7)(e,!1,K.current||void 0);if(!n)return;await ea(),"generating"!==n.status&&"queued"!==n.status&&(localStorage.removeItem(et),clearInterval(t))}catch(e){clearInterval(t)}})()},3e3);return()=>clearInterval(t)},[D,ea,et]),(0,r.useEffect)(()=>{var e;if(!C)return;let t=D.find(e=>e.id===C),n=null!=(e=null==t?void 0:t.status)?e:null==S?void 0:S.status;n&&w(n)?ef(C,(null==t?void 0:t.projectRoot)||K.current):em(C)},[C,D,ef,em,null==S?void 0:S.status]),(0,r.useEffect)(()=>{if(!y||!m)return;let e=window.setInterval(()=>d(e=>{let t=e.map(e=>{if(e.key!==m||"process"!==e.status)return e;let t=e.subSteps.findIndex(e=>"process"===e.status),n=t<0?0:Math.min(t+1,e.subSteps.length-1);return{...e,subSteps:e.subSteps.map((e,t)=>t<n?{...e,status:"finish"}:t===n?{...e,status:"process"}:{...e,status:"wait"})}});return el(t,m),t}),1400);return()=>window.clearInterval(e)},[m,y,el]),(0,r.useEffect)(()=>{if(!y)return;let e=window.setInterval(()=>q(e=>e+1),1e3);return()=>window.clearInterval(e)},[y]);let ep=(0,r.useCallback)(e=>{var t;let n=X.current.get(e);if(!n)return null;let r=ei((null!=(t=n.endedAt)?t:Date.now())-n.startedAt);return n.endedAt?r:"".concat(r,"(运行中)")},[B,ei]),eh=(0,r.useCallback)(async e=>{g&&(v=!0);let t=J.current;if(t&&await (0,h.r)(t,e||K.current||void 0).catch(()=>void 0),g){var n;g.aborted=!0,null==(n=g.pollController)||n.abort(),g.loading=!1,g.error="用户中止",x(),g=null}for(let e of(localStorage.removeItem(et),Y.current.values()))clearInterval(e);Y.current.clear(),b(!1),d([]),f(null),T("用户中止"),await ea(),en({kind:"info",text:"已中止生成任务"})},[en,ea,et]),eg=(0,r.useCallback)(async e=>{if((null==g?void 0:g.loading)&&g.documentId===e.id){var t;v=!0,g.aborted=!0,null==(t=g.pollController)||t.abort(),g.loading=!1,g.error="用户中止",x(),g=null,b(!1)}localStorage.removeItem(et),em(e.id);try{await (0,h.r)(e.id,e.projectRoot||K.current||void 0),en({kind:"success",text:"queued"===e.status?"已取消排队任务":"已中止生成任务"})}catch(e){en({kind:"info",text:"任务已不在运行,已刷新状态"})}finally{await ea(),J.current===e.id&&(R(null),M(null),I(null),E(""))}},[en,ea,em,et]),ev=(0,r.useCallback)(async e=>{try{R(e.id),b(!0);let t=await (0,h.UQ)(e.id,e.projectRoot||K.current||void 0);localStorage.setItem(et,t.documentId),await ea();let n=await eu(t.documentId);n.draft&&(I(n.draft),E(n.editedMarkdown||n.markdown||n.draft.markdown)),localStorage.removeItem(et),await ea(),en({kind:"success",text:"已继续生成并完成"})}catch(e){en({kind:"error",text:e instanceof Error?e.message:"继续生成失败"})}finally{b(!1)}},[en,ea,et,eu]),ex=(0,r.useCallback)(async(e,t)=>{let n=await fetch("/api/documents/generated/".concat(encodeURIComponent(e),"/pause"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectRoot:t||K.current||void 0})});if(!n.ok)throw Error(await n.text()||"HTTP ".concat(n.status));let r=await n.json();return en({kind:"info",text:r.message||"已请求暂停:将在当前节点边界停住并落盘"}),await ea(),ef(e,t),r},[en,ea,ef]),ey=(0,r.useCallback)(async(e,t)=>{let n=await fetch("/api/documents/generated/".concat(encodeURIComponent(e),"/resume-generate"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectRoot:t||K.current||void 0})});if(!n.ok)throw Error(await n.text()||"HTTP ".concat(n.status));en({kind:"info",text:"已请求继续:将从暂停的节点边界接着跑"}),await ea()},[en,ea]),ew=(0,r.useCallback)((e,t,n)=>{let r=new Blob([e],{type:n}),a=URL.createObjectURL(r),l=document.createElement("a");l.href=a,l.download=t,l.target="_self",l.rel="noopener",l.style.display="none",document.body.appendChild(l),l.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window})),l.remove(),window.setTimeout(()=>URL.revokeObjectURL(a),1e3)},[]),ek=(0,r.useCallback)(async(e,t,n)=>{let{blob:r,filename:a,notDeliverable:l,gateIssues:o}=await (0,h.UE)(e);ew(r,a||t,n),H(l?{at:Date.now(),count:o.length,issues:o}:null)},[ew]),eb=(0,r.useCallback)(e=>/导出门禁未通过|EXPORT_GATE_BLOCKED/u.test(e),[]),eA=(0,r.useCallback)(e=>new Promise(t=>{a.A.confirm({title:er("documents.exportGateBlockedTitle","导出门禁未通过"),content:"".concat(e,"\n\n").concat(er("documents.nonDeliverableExportConfirm","仍要导出将产出「非交付物」文件(文件名带后缀且界面显著标注),是否继续?")),okText:er("documents.exportAnywayNonDeliverable","仍要导出(非交付物)"),okButtonProps:{danger:!0},cancelText:er("common.cancel","取消"),onOk:()=>t(!0),onCancel:()=>t(!1)})}),[er]),eI=(0,r.useCallback)(async(e,t)=>{let n=e instanceof Error?e.message:er("common.error","出错了");if(!eb(n))return void en({kind:"error",text:n});if(await eA(n))try{await t()}catch(e){en({kind:"error",text:e instanceof Error?e.message:er("common.error","出错了")})}},[eA,eb,en,er]),ej=(0,r.useMemo)(()=>({markdown:"text/markdown;charset=utf-8",html:"text/html;charset=utf-8",pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"}),[]),eE=(0,r.useCallback)(async(e,t)=>{var n;let r=e.editedMarkdown||e.markdown||(null==(n=e.draft)?void 0:n.markdown)||"";if(!r.trim())return void en({kind:"warning",text:"该记录暂无可导出的正文内容"});z(t);let a="markdown"===t?"md":t,l={documentId:e.id,title:e.title,markdown:r,format:t,useClientMarkdown:!0,projectRoot:e.projectRoot||K.current||void 0};try{await ek(l,"".concat(e.title,".").concat(a),ej[t])}catch(n){await eI(n,async()=>{await ek({...l,allowNonDeliverable:!0},"".concat(e.title,".").concat(a),ej[t])})}finally{z(null)}},[ek,ej,eI,en]),eS=(0,r.useCallback)(async e=>{if(!A)return;z(e);let t="markdown"===e?"md":e,n={documentId:J.current||void 0,title:A.title,markdown:j,format:e,exportGate:A.exportGate,useClientMarkdown:!0,projectRoot:A.projectRoot||K.current||void 0};try{if(await ek(n,"".concat(A.title,".").concat(t),ej[e]),J.current)try{let{document:e}=await (0,h.v7)(J.current,!1,A.projectRoot||K.current||void 0);e&&O(e.exportReports||[])}catch(e){}}catch(r){await eI(r,async()=>{await ek({...n,allowNonDeliverable:!0},"".concat(A.title,".").concat(t),ej[e])})}finally{z(null)}},[j,ek,A,ej,eI]),eM=C&&null!=(t=D.find(e=>e.id===C))?t:S,eC=function(e,t){if(!e)return t?"running":"idle";switch(e){case"queued":return"queued";case"generating":return"running";case"paused":return"paused";case"failed":case"aborted":return"stopped";case"completed_with_issues":case"warning":return"issues";case"completed":return"done";default:return"idle"}}(null==eM?void 0:eM.status,y);return{flowSteps:u,activeFlowKey:m,loading:y,draft:A,content:j,workflowRecord:S,documentId:C,documents:D,error:N,phase:eC,flowTick:B,boundRecord:eM,canResume:function(e){var t,n,r,a,l,o;let i=!!e&&w(e.status);return!!e&&("paused"===e.status||"failed"===e.status||"aborted"===e.status||"completed_with_issues"===e.status||"warning"===e.status&&!!(null==(t=e.checkpointChapters)?void 0:t.length)&&/继续生成|重新生成|中断|卡住|未完成|门禁|阻断/u.test(e.error||(null==(n=e.warningIssues)?void 0:n.join(";"))||(null==(l=e.draft)||null==(a=l.exportGate)||null==(r=a.blockingIssues)?void 0:r.map(e=>e.message).join(";"))||"")||!i&&!!((null==(o=e.draft)?void 0:o.exportGate)&&!1===e.draft.exportGate.passed))}(eM),startGeneration:ed,abortGeneration:eh,abortDocument:eg,resumeDocument:ev,pauseDocument:ex,resumePausedDocument:ey,applyRecord:es,refreshDocuments:ea,waitForDoc:eu,stepDurationText:ep,setDraft:I,setContent:E,setExportReports:O,export:{exporting:P,nonDeliverableExport:U,exportRecord:eE,exportEditor:eS,downloadExport:ek,handleExportError:eI,confirmNonDeliverableExport:eA,exportReports:L}}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[795],{27795:(e,t,s)=>{s.r(t),s.d(t,{default:()=>b});var a=s(65321),l=s(97109),o=s(85587),r=s(33442),c=s(85114),n=s(99605),i=s(11702),d=s(48399),x=s(25258),v=s(99811),m=s(13114),u=s(29071),h=s(26631),g=s(84742),p=s(38762),j=s(24810),f=s(6578),y=s(45551),w=s(85310);function N(e){let{title:t,value:s,subtext:l,icon:o,colorClass:r,animationClass:c}=e;return(0,a.jsxs)("div",{className:"p-4 ".concat(w.wD," flex flex-col justify-between animateFadeIn ").concat(c||""),style:{opacity:0},children:[(0,a.jsxs)("div",{className:"flex items-start justify-between mb-2",children:[(0,a.jsx)("div",{className:"text-xs font-semibold text-[var(--colorTextSecondary)] tracking-wide uppercase",children:t}),o&&(0,a.jsx)("div",{className:r,style:{opacity:.7},children:o})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-3xl font-bold tracking-tight",children:s}),l&&(0,a.jsx)("div",{className:"text-xs mt-1 truncate font-medium",style:{color:"var(--colorTextTertiary)"},children:l})]})]})}function b(){var e,t,s,b,k,T,C,S,A,D,M,B,z,U,F,I,P,L,O,Z,R,W,_;let E=(0,o.Vr)(),{locale:J}=(0,o.x_)(),[K,Q]=(0,l.useState)(null),[V,G]=(0,l.useState)(!0),[H,q]=(0,l.useState)(0),[X,Y]=(0,l.useState)(0),[$,ee]=(0,l.useState)(0),[et,es]=(0,l.useState)(0),[ea,el]=(0,l.useState)(null),[eo,er]=(0,l.useState)(null),[ec,en]=(0,l.useState)(null),[ei,ed]=(0,l.useState)(!1),[ex,ev]=(0,l.useState)([]),[em,eu]=(0,l.useState)(!1),[eh,eg]=(0,l.useState)(null),ep=(0,l.useCallback)(async()=>{G(!0);try{let[e,t,s,a,l,o]=await Promise.all([(0,f.FC)(),(0,f.Z3)().catch(()=>[]),(0,f.dx)().catch(()=>[]),(0,f.cQ)().catch(()=>({documents:[]})),(0,f.II)().catch(()=>null),(0,f.BO)().catch(()=>[])]);Q(e),q(Array.isArray(t)?t.length:0),Y(Array.isArray(s)?s.length:0),ee(Array.isArray(a.documents)?a.documents.length:0),es(Array.isArray(o)?o.filter(e=>e.fileCount>0).length:0),el(l),en(await (0,f.nn)().catch(()=>null)),er(Date.now())}catch(e){}finally{G(!1)}},[]);(0,l.useEffect)(()=>{ep();let e=setInterval(()=>{ep()},1e4);return()=>clearInterval(e)},[ep]);let ej=(null==K?void 0:K.tasks.total)?Math.round(K.tasks.success/K.tasks.total*100):null,ef=null==K||null==(e=K.models)?void 0:e[0],ey=(null==K?void 0:K.logs.latestAt)?(0,y.fw)(new Date(K.logs.latestAt).getTime(),J):E("overview.noLogs");return(0,a.jsxs)("div",{className:"space-y-6",children:[(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-end justify-between gap-4 pb-6 border-b border-[var(--borderColor)]",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"text-3xl font-extrabold tracking-tight text-[var(--colorText)] mb-2",children:E("overview.title")}),(0,a.jsx)("p",{className:"text-sm text-[var(--colorTextSecondary)]",children:E("overview.description")})]}),(0,a.jsxs)(r.A,{children:[(0,a.jsxs)("span",{className:"text-xs font-mono",style:{color:"var(--colorTextTertiary)"},children:[E("overview.updated"),": ",eo?new Date(eo).toLocaleTimeString(J):"—"]}),(0,a.jsx)(c.Ay,{type:"text",icon:(0,a.jsx)(v.A,{spin:V}),onClick:()=>{ep()}})]})]}),(0,a.jsx)(w.Zk,{title:E("overview.coreMetrics"),description:E("overview.coreMetricsDesc"),children:(0,a.jsxs)("div",{className:"grid grid-cols-2 lg:grid-cols-4 gap-4",children:[(0,a.jsx)(N,{title:E("overview.uptime"),value:(0,y.a3)(null!=(s=null==K?void 0:K.serviceUptimeSeconds)?s:0,J),subtext:"".concat(E("overview.processUptime")," ").concat((0,y.a3)(null!=(b=null==K?void 0:K.uptime)?b:0,J)),icon:(0,a.jsx)(m.A,{size:16}),colorClass:"text-[var(--colorBrand)]",animationClass:"stagger-1"}),(0,a.jsx)(N,{title:E("overview.tokensUsed"),value:(null!=(k=null==K?void 0:K.tokens.total)?k:0).toLocaleString(),subtext:"P ".concat(null!=(T=null==K?void 0:K.tokens.prompt)?T:0," / C ").concat(null!=(C=null==K?void 0:K.tokens.completion)?C:0),icon:(0,a.jsx)(u.A,{size:16}),colorClass:"text-[var(--colorWarn)]",animationClass:"stagger-2"}),(0,a.jsx)(N,{title:E("overview.tasksTotal"),value:(null!=(S=null==K?void 0:K.tasks.total)?S:0).toLocaleString(),subtext:"✓ ".concat(null!=(A=null==K?void 0:K.tasks.success)?A:0," | ✗ ").concat(null!=(D=null==K?void 0:K.tasks.failed)?D:0," | ↻ ").concat(null!=(M=null==K?void 0:K.tasks.running)?M:0),icon:(0,a.jsx)(h.A,{size:16}),colorClass:"text-[var(--colorInfo)]",animationClass:"stagger-3"}),(0,a.jsx)(N,{title:E("overview.successRate"),value:null===ej?"—":"".concat(ej,"%"),subtext:null===ej?E("overview.noDataAvailable"):void 0,icon:null!==ej&&ej>80?(0,a.jsx)(g.A,{size:16}):(0,a.jsx)(p.A,{size:16}),colorClass:null!==ej&&ej>80?"text-[var(--colorOk)]":"text-[var(--colorDanger)]",animationClass:"stagger-4"})]})}),(0,a.jsx)(w.Zk,{title:E("overview.systemResources"),description:E("overview.systemResourcesDesc"),children:(0,a.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-3 gap-4",children:[(0,a.jsx)(N,{title:E("overview.materialUnderstanding"),value:et>0?String(et):"—",subtext:E(et>0?"overview.materialKinds":"common.noData"),animationClass:"stagger-5"}),(0,a.jsx)(N,{title:E("overview.prompts"),value:X,animationClass:"stagger-5"}),(0,a.jsx)(N,{title:E("overview.templateCount"),value:$,animationClass:"stagger-5"}),(0,a.jsx)(N,{title:E("overview.semanticModel"),value:(null==ea?void 0:ea.provider)==="openai-compatible"?E("overview.external"):ea?E("overview.local"):"—",subtext:null!=(B=null==ea?void 0:ea.model)?B:E("overview.notConfigured"),animationClass:"stagger-5"}),(0,a.jsx)(N,{title:E("overview.modelProviders"),value:H,animationClass:"stagger-5"}),(0,a.jsx)(N,{title:E("overview.auditLogs"),value:null!=(z=null==K?void 0:K.logs.events)?z:0,subtext:"".concat(E("overview.lastActivity")," ").concat(ey),animationClass:"stagger-5"})]})}),(0,a.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6",children:[(0,a.jsx)(w.Zk,{title:E("overview.hardwareUsage"),description:E("overview.hardwareUsageDesc"),children:(0,a.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 gap-4",children:[(0,a.jsxs)("div",{className:"flex items-center gap-4 p-4 ".concat(w.wD),children:[(0,a.jsx)(n.A,{type:"dashboard",percent:null!=(U=null==K?void 0:K.cpu.usagePercent)?U:0,size:64,strokeColor:(null!=(F=null==K?void 0:K.cpu.usagePercent)?F:0)>80?"var(--colorDanger)":"var(--colorText)",strokeWidth:10}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-[var(--colorTextSecondary)]",children:E("overview.cpuUsage")}),(0,a.jsxs)("div",{className:"text-xl font-bold",children:[null!=(I=null==K||null==(t=K.cpu.usagePercent)?void 0:t.toFixed(1))?I:"0.0","%"]}),(0,a.jsxs)("div",{className:"text-xs text-[var(--colorTextTertiary)]",children:[null!=(P=null==K?void 0:K.cpu.cores)?P:0," ",E("overview.cores")]})]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-4 p-4 ".concat(w.wD),children:[(0,a.jsx)(n.A,{type:"dashboard",percent:null!=(L=null==K?void 0:K.memory.usagePercent)?L:0,size:64,strokeColor:(null!=(O=null==K?void 0:K.memory.usagePercent)?O:0)>80?"var(--colorDanger)":"var(--colorTextSecondary)",strokeWidth:10}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"text-sm font-medium text-[var(--colorTextSecondary)]",children:E("overview.memoryUsage")}),(0,a.jsxs)("div",{className:"text-xl font-bold",children:[null!=(Z=null==K?void 0:K.memory.usagePercent)?Z:0,"%"]}),(0,a.jsxs)("div",{className:"text-xs text-[var(--colorTextTertiary)]",children:[null!=(R=null==K?void 0:K.memory.processMB)?R:0," MB / ",null!=(W=null==K?void 0:K.memory.totalMB)?W:0," MB"]})]})]})]})}),(0,a.jsx)(w.Zk,{title:E("overview.activityContext"),description:E("overview.activityContextDesc"),children:(0,a.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,a.jsxs)("div",{className:"p-4 ".concat(w.wD),children:[(0,a.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--colorTextTertiary)] mb-2",children:E("overview.topModel")}),ef?(0,a.jsxs)("div",{className:"font-semibold flex items-center gap-2 min-w-0",children:[(0,a.jsx)(j.A,{className:"text-[var(--colorTextSecondary)] shrink-0"}),(0,a.jsx)("span",{className:"truncate",children:ef.model}),(0,a.jsxs)("span",{className:"font-normal text-[var(--colorTextTertiary)] text-sm shrink-0",children:["@",ef.provider]})]}):(0,a.jsx)("span",{className:"text-sm text-[var(--colorTextTertiary)]",children:E("overview.noDataAvailable")})]}),(0,a.jsxs)("div",{className:"p-4 ".concat(w.wD),children:[(0,a.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--colorTextTertiary)] mb-3",children:E("overview.recentTaskTypes")}),(null==K?void 0:K.tasks.types)&&Object.keys(K.tasks.types).length>0?(0,a.jsx)("div",{className:"flex flex-wrap gap-2",children:Object.entries(K.tasks.types).sort((e,t)=>t[1]-e[1]).map(e=>{let[t,s]=e;return(0,a.jsxs)("div",{className:"px-2 py-1 rounded-lg text-xs font-mono bg-[var(--colorFillAlter)] text-[var(--colorTextSecondary)]",children:[t.slice(0,30)," ",(0,a.jsx)("span",{className:"ml-2 font-bold text-[var(--colorText)]",children:s})]},t)})}):(0,a.jsx)("span",{className:"text-sm text-[var(--colorTextTertiary)]",children:E("common.noData")})]})]})})]}),(0,a.jsx)(w.Zk,{title:"数据体检与清理",description:"升级后旧数据会不会碍事、占了多少地方——先看清,再决定清什么",children:ec?(0,a.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,a.jsx)("div",{className:"text-xs text-[var(--colorTextTertiary)]",children:"存储根 ".concat(ec.storageRoot,"|工作流版本 ").concat(ec.workflowVersion)}),(0,a.jsx)("div",{className:"flex flex-col gap-2",children:ec.scopes.map(e=>(0,a.jsx)("div",{className:"p-3 flex items-start gap-3 ".concat(w.wD),children:(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 flex-wrap",children:[(0,a.jsx)("span",{className:"text-sm font-medium",children:e.label}),e.deletable?(0,a.jsx)(i.A,{color:"blue",children:"可清理"}):(0,a.jsx)(i.A,{children:"只体检"}),(0,a.jsx)("span",{className:"text-xs text-[var(--colorTextTertiary)]",children:"".concat(e.files," 项|").concat((e.bytes/1048576).toFixed(1)," MB")})]}),(0,a.jsx)("div",{className:"text-xs text-[var(--colorTextTertiary)] mt-1",children:e.note})]})},e.key))}),(0,a.jsxs)("div",{className:"p-3 flex flex-col gap-1",style:{background:"var(--colorFillQuaternary)",borderRadius:8},children:[(0,a.jsx)("div",{className:"text-sm",children:"历史类型残留:".concat(ec.legacy.recordsWithLegacyTypes,"/").concat(ec.legacy.totalRecords," 条记录含已删除的节点类型(共 ").concat(ec.legacy.legacyNodes," 个节点)")}),(0,a.jsx)("div",{className:"text-xs text-[var(--colorTextTertiary)]",children:ec.legacy.note})]}),(0,a.jsxs)(r.A,{children:[(0,a.jsx)(c.Ay,{size:"small",disabled:ec.scopes.every(e=>!e.deletable),onClick:()=>{ev([]),eg(null),ed(!0)},children:"清理可重建数据…"}),(0,a.jsx)(c.Ay,{size:"small",type:"text",onClick:()=>{ep()},children:"重新体检"})]}),eh&&(0,a.jsx)(d.A.Text,{type:"success",style:{fontSize:12},children:eh})]}):(0,a.jsx)("span",{className:"text-sm text-[var(--colorTextTertiary)]",children:E("common.noData")})}),(0,a.jsx)(x.A,{title:"清理可重建数据",open:ei,onCancel:()=>ed(!1),okText:em?"清理中…":"确认清理",okButtonProps:{disabled:0===ex.length||em,danger:!0},onOk:()=>{eu(!0),(0,f.fc)(ex).then(e=>{let t=e.removed.reduce((e,t)=>e+t.bytes,0);eg("已清理 ".concat(e.removed.length," 项,释放 ").concat((t/1048576).toFixed(1)," MB")),en(e.report),ed(!1)}).catch(e=>eg("清理失败:".concat(e instanceof Error?e.message:String(e)))).finally(()=>eu(!1))},children:(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsxs)(d.A.Text,{type:"secondary",style:{fontSize:12},children:["只列**可重建**的数据:缓存键含内容与判据指纹,删掉只是下次重算。",(0,a.jsx)("br",{}),"生成记录、节点日志、技能库、知识库**不在清理范围**(那是你的资产)。"]}),(null!=(_=null==ec?void 0:ec.scopes)?_:[]).filter(e=>e.deletable).map(e=>(0,a.jsxs)("label",{className:"flex items-start gap-2 cursor-pointer",children:[(0,a.jsx)("input",{type:"checkbox",checked:ex.includes(e.key),onChange:t=>ev(s=>t.target.checked?[...s,e.key]:s.filter(t=>t!==e.key))}),(0,a.jsxs)("span",{className:"min-w-0",children:[(0,a.jsx)("span",{className:"text-sm",children:"".concat(e.label,"(").concat(e.files," 项|").concat((e.bytes/1048576).toFixed(1)," MB)")}),(0,a.jsx)("span",{className:"block text-xs text-[var(--colorTextTertiary)]",children:e.note})]})]},e.key))]})})]})}},45551:(e,t,s)=>{function a(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024)),s=e/Math.pow(1024,t);return"".concat(s.toFixed(+(0!==t))," ").concat(["B","KB","MB","GB","TB"][t])}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN",s=Math.max(0,Math.floor(e)),a=Math.floor(s/86400),l=Math.floor(s%86400/3600),o=Math.floor(s%3600/60),r="en-US"===t;return a>0?r?"".concat(a,"d ").concat(l,"h"):"".concat(a," 天 ").concat(l," 小时"):l>0?r?"".concat(l,"h ").concat(o,"m"):"".concat(l," 小时 ").concat(o," 分"):o>0?r?"".concat(o,"m"):"".concat(o," 分"):r?"Just now":"刚刚"}function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";if(!e||e<=0)return"en-US"===t?"Never":"从未";let s=Math.floor(Math.floor((Date.now()-e)/1e3)/60),a=Math.floor(s/60),l=Math.floor(a/24);return l>30?new Date(e).toLocaleDateString(t):"en-US"===t?l>0?"".concat(l,"d ago"):a>0?"".concat(a,"h ago"):s>0?"".concat(s,"m ago"):"Just now":l>0?"".concat(l," 天前"):a>0?"".concat(a," 小时前"):s>0?"".concat(s," 分钟前"):"刚刚"}s.d(t,{Jm:()=>n,a3:()=>l,fw:()=>o,mc:()=>i,z3:()=>a});let r={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},c={document:"Document",spreadsheet:"Spreadsheet",image:"Image",cad:"CAD",code:"Code",data:"Data",web:"Web",diagram:"Diagram",archive:"Archive",other:"Other"};function n(e){var t;let s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(t=("en-US"===s?c:r)[e])?t:e}let i={active:"common.statusIndexed",outdated:"common.statusOutdated",error:"common.statusAbnormal",deleted:"common.statusDeleted",disk:"common.statusNotIndexed"}},85310:(e,t,s)=>{s.d(t,{Zk:()=>o,dh:()=>r,wD:()=>l});var a=s(65321);s(97109);let l="rounded-xl bg-[var(--colorBgContainer)] shadow-[var(--shadowSurface)] hover:shadow-[var(--shadowSurfaceHover)] transition-shadow";function o(e){let{title:t,count:s,description:l,extra:o,className:r,children:c}=e;return(0,a.jsxs)("section",{className:"rounded-2xl bg-[var(--colorBgContainer)] shadow-[var(--shadowSurface)] p-6 animateFadeIn ".concat(null!=r?r:""),children:[(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-start justify-between gap-3 mb-5",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("h2",{className:"text-base font-semibold text-[var(--colorText)] tracking-wide flex items-center gap-2 m-0",children:[t,void 0!==s&&(0,a.jsx)("span",{className:"text-[var(--colorTextTertiary)] font-normal text-sm",children:s})]}),l&&(0,a.jsx)("p",{className:"text-xs text-[var(--colorTextTertiary)] mt-1.5 mb-0 leading-relaxed max-w-3xl",children:l})]}),o]}),c]})}function r(e){let{children:t}=e;return(0,a.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:t})}}}]);
|