weifuwu 0.89.1 → 0.90.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/README.md +99 -461
  2. package/dist/client/components/AlertGroup/AlertGroup.d.ts +1 -1
  3. package/dist/client/components/Anchor/Anchor.d.ts +1 -1
  4. package/dist/client/components/AutoComplete/AutoComplete.d.ts +1 -1
  5. package/dist/client/components/AvatarGroup/AvatarGroup.d.ts +1 -1
  6. package/dist/client/components/BackTop/BackTop.d.ts +12 -5
  7. package/dist/client/components/Button/Button.d.ts +2 -0
  8. package/dist/client/components/Calendar/Calendar.d.ts +1 -1
  9. package/dist/client/components/Carousel/Carousel.d.ts +1 -1
  10. package/dist/client/components/Cascader/Cascader.d.ts +1 -1
  11. package/dist/client/components/CodeEditor/CodeEditor.d.ts +1 -1
  12. package/dist/client/components/ColorPicker/ColorPicker.d.ts +1 -1
  13. package/dist/client/components/DropZone/DropZone.d.ts +27 -0
  14. package/dist/client/components/Editor/Editor.d.ts +1 -1
  15. package/dist/client/components/Editor/edit-events.d.ts +1 -1
  16. package/dist/client/components/Editor/model/types.d.ts +1 -1
  17. package/dist/client/components/Editor/tools/table.d.ts +1 -1
  18. package/dist/client/components/Editor/tools/types.d.ts +1 -1
  19. package/dist/client/components/FilePreview/FilePreview.d.ts +1 -1
  20. package/dist/client/components/FloatButton/FloatButton.d.ts +1 -1
  21. package/dist/client/components/Grid/Grid.d.ts +1 -1
  22. package/dist/client/components/Img/Img.d.ts +7 -0
  23. package/dist/client/components/InputNumber/InputNumber.d.ts +1 -1
  24. package/dist/client/components/JSONViewer/JSONViewer.d.ts +1 -1
  25. package/dist/client/components/Link/Link.d.ts +1 -1
  26. package/dist/client/components/LogViewer/LogViewer.d.ts +1 -1
  27. package/dist/client/components/Markdown/parser.d.ts +1 -1
  28. package/dist/client/components/Math/Math.d.ts +1 -1
  29. package/dist/client/components/Mentions/Mentions.d.ts +1 -1
  30. package/dist/client/components/Menu/Menu.d.ts +1 -1
  31. package/dist/client/components/Menubar/Menubar.d.ts +1 -1
  32. package/dist/client/components/MessageBubble/MessageBubble.d.ts +1 -1
  33. package/dist/client/components/NavBar/NavBar.d.ts +32 -0
  34. package/dist/client/components/NavMenu/NavMenu.d.ts +1 -1
  35. package/dist/client/components/OfficeEditor/ai/ai-bridge.d.ts +1 -1
  36. package/dist/client/components/OfficeEditor/model/types.d.ts +1 -1
  37. package/dist/client/components/Popconfirm/Popconfirm.d.ts +1 -1
  38. package/dist/client/components/Result/Result.d.ts +1 -1
  39. package/dist/client/components/Scrollbar/Scrollbar.d.ts +1 -1
  40. package/dist/client/components/SheetGrid/SheetGrid.d.ts +1 -1
  41. package/dist/client/components/SlideCanvas/SlideCanvas.d.ts +1 -1
  42. package/dist/client/components/TagsInput/TagsInput.d.ts +1 -1
  43. package/dist/client/components/Timeline/Timeline.d.ts +1 -1
  44. package/dist/client/components/Transfer/Transfer.d.ts +1 -1
  45. package/dist/client/components/VirtualList/VirtualList.d.ts +1 -1
  46. package/dist/client/components/VirtualTable/VirtualTable.d.ts +1 -1
  47. package/dist/client/components/Watermark/Watermark.d.ts +1 -1
  48. package/dist/client/components/index.d.ts +4 -0
  49. package/dist/client/components/index.js +39 -39
  50. package/dist/client/components/style.css +238 -18
  51. package/dist/client/layout/weifuwu-layout.css +35 -16
  52. package/dist/client/office/docx.d.ts +1 -1
  53. package/dist/client/office/xlsx.d.ts +1 -1
  54. package/dist/client/vdom/core/async-guard.d.ts +1 -1
  55. package/dist/client/vdom/core/patch/state-machine.d.ts +1 -1
  56. package/dist/client/vdom/core/router.d.ts +1 -1
  57. package/dist/client/vdom/core/ssr/html.d.ts +1 -1
  58. package/dist/client/vdom/core/v2/cycle.d.ts +4 -2
  59. package/dist/client/vdom/core/v2/diff.d.ts +9 -0
  60. package/dist/client/vdom/core/v2/integrate.d.ts +1 -1
  61. package/dist/client/vdom/core/v2/schedule.d.ts +1 -1
  62. package/dist/client/vdom/core/vnode.d.ts +1 -1
  63. package/dist/client/vdom/hooks/drag-media.d.ts +4 -1
  64. package/dist/client/vdom/hooks/popup-manager.d.ts +1 -1
  65. package/dist/client/vdom/hooks/stable.d.ts +1 -1
  66. package/dist/client/vdom/index.js +3 -3
  67. package/dist/client/vdom/testing.js +2 -2
  68. package/dist/server/ai/client.d.ts +1 -1
  69. package/dist/server/ai/sse.d.ts +1 -1
  70. package/dist/server/ai/types.d.ts +2 -2
  71. package/dist/server/db/contracts.d.ts +5 -0
  72. package/dist/server/db/postgres/connection.d.ts +6 -0
  73. package/dist/server/index.js +32 -2
  74. package/dist/server/postgres/types.d.ts +3 -0
  75. package/docs/client.md +170 -0
  76. package/docs/server.md +112 -0
  77. package/package.json +1 -3
  78. package/docs/ai-contract.md +0 -418
  79. package/docs/compat-three-library.md +0 -290
  80. package/docs/components-map.md +0 -227
  81. package/docs/environment.md +0 -50
  82. package/docs/examples.md +0 -121
  83. package/docs/style-guide.md +0 -248
@@ -1,34 +1,34 @@
1
- var Ra=Object.defineProperty;var Ft=(o,e,t)=>()=>{if(t)throw t[0];try{return o&&(e=o(o=0)),e}catch(n){throw t=[n],n}};var Go=(o,e)=>{for(var t in e)Ra(o,t,{get:e[t],enumerable:!0})};var un,Ze,zt=Ft(()=>{un={text:"",blockProps:[],marks:[],embeds:[]},Ze="\uFFFC"});function td(o){let e=4294967295;for(let t=0;t<o.length;t++)e=ed[(e^o[t])&255]^e>>>8;return(e^4294967295)>>>0}async function nd(o){let e=globalThis.DecompressionStream;if(!e)throw new Error("zip: \u73AF\u5883\u65E0 DecompressionStream\uFF08deflate \u89E3\u538B\u4E0D\u652F\u6301\uFF09");let t=new e("deflate-raw"),n=await new Response(new Blob([o]).stream().pipeThrough(t)).arrayBuffer();return new Uint8Array(n)}async function vn(o){let e=-1;for(let i=o.length-22;i>=0;i--)if(o[i]===80&&o[i+1]===75&&o[i+2]===5&&o[i+3]===6){e=i;break}if(e<0)throw new Error("zip: EOCD \u672A\u627E\u5230\uFF08\u975E ZIP \u6216\u5DF2\u635F\u574F\uFF09");let t=new DataView(o.buffer,o.byteOffset,o.byteLength),n=t.getUint16(e+10,!0),r=t.getUint32(e+16,!0),a=new Map,s=r;for(let i=0;i<n;i++){if(t.getUint32(s,!0)!==33639248)throw new Error(`zip: central entry ${i} \u7B7E\u540D\u9519\u8BEF`);let l=t.getUint16(s+10,!0),c=t.getUint32(s+20,!0),f=t.getUint16(s+28,!0),g=t.getUint16(s+30,!0),u=t.getUint16(s+32,!0),d=t.getUint32(s+42,!0),p=new TextDecoder().decode(o.subarray(s+46,s+46+f));if(l!==0&&l!==8)throw new Error(`zip: ${p} \u538B\u7F29\u65B9\u6CD5 ${l} \u4E0D\u652F\u6301\uFF08\u88C1\u526A\uFF1Astore/deflate\uFF09`);let h=t.getUint16(d+26,!0),m=t.getUint16(d+28,!0),b=d+30+h+m,v=o.subarray(b,b+c);a.set(p,l===8?await nd(v):v),s+=46+f+g+u}return a}function xn(o){let e=[],t=[],n=0,r=new TextEncoder;for(let[g,u]of o){let d=r.encode(g),p=td(u),h=new Uint8Array(30),m=new DataView(h.buffer);m.setUint32(0,67324752,!0),m.setUint16(4,20,!0),m.setUint16(6,0,!0),m.setUint16(8,0,!0),m.setUint32(14,p,!0),m.setUint32(18,u.length,!0),m.setUint32(22,u.length,!0),m.setUint16(26,d.length,!0),m.setUint16(28,0,!0),e.push(h,d,u);let b=new Uint8Array(46),v=new DataView(b.buffer);v.setUint32(0,33639248,!0),v.setUint16(4,20,!0),v.setUint16(6,20,!0),v.setUint16(10,0,!0),v.setUint32(16,p,!0),v.setUint32(20,u.length,!0),v.setUint32(24,u.length,!0),v.setUint16(28,d.length,!0),v.setUint32(42,n,!0),t.push(b,d),n+=30+d.length+u.length}let a=t.reduce((g,u)=>g+u.length,0),s=new Uint8Array(22),i=new DataView(s.buffer);i.setUint32(0,101010256,!0),i.setUint16(8,o.size,!0),i.setUint16(10,o.size,!0),i.setUint32(12,a,!0),i.setUint32(16,n,!0);let l=n+a+22,c=new Uint8Array(l),f=0;for(let g of[...e,...t,s])c.set(g,f),f+=g.length;return c}var ed,Eo=Ft(()=>{ed=(()=>{let o=new Uint32Array(256);for(let e=0;e<256;e++){let t=e;for(let n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;o[e]=t>>>0}return o})()});function Lr(o){return o.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&amp;/g,"&")}function pt(o){let e=0,t=o.length;function n(){for(;e<t&&/\s/.test(o[e]);)e++}function r(){let l=e;for(;e<t&&/[^\s/>="]/.test(o[e]);)e++;return o.slice(l,e)}function a(){let l={};for(;n(),!(e>=t||o[e]===">"||o[e]==="/"&&o[e+1]===">");){let c=r();if(n(),o[e]!=="="){e++;continue}e++,n();let f=o[e];if(f!=='"'&&f!=="'")continue;e++;let g=e;for(;e<t&&o[e]!==f;)e++;l[c]=Lr(o.slice(g,e)),e++}return l}function s(){for(;;){for(;e<t&&o[e]!=="<";)e++;if(e>=t)throw new Error("xml: \u610F\u5916\u5185\u5BB9\uFF08\u65E0\u6839\u5143\u7D20\uFF09");if(o.startsWith("<!--",e)){let u=o.indexOf("-->",e);e=u<0?t:u+3;continue}if(o.startsWith("<![CDATA[",e)){let u=o.indexOf("]]>",e),d=o.slice(e+9,u<0?t:u);return e=u<0?t:u+3,{name:"#text",attrs:{},children:[],text:d}}if(o[e+1]==="?"||o[e+1]==="!"){let u=o.indexOf(">",e);e=u<0?t:u+1;continue}e++;let l=r(),c=a(),f={name:l,attrs:c,children:[],text:""};if(o[e]==="/"&&o[e+1]===">")return e+=2,f;e++;let g="";for(;;){if(e>=t)throw new Error(`xml: \u672A\u95ED\u5408\u6807\u7B7E <${l}>`);if(o[e]==="<"){if(o.startsWith("</",e))return e+=2,r(),e=o.indexOf(">",e),e=e<0?t:e+1,f.text=Lr(g),f;g.trim()&&f.children.push({name:"#text",attrs:{},children:[],text:Lr(g)}),g="",f.children.push(s())}else g+=o[e],e++}}}return s()}function pe(o,e){return o.children.find(t=>t.name===e)??null}function Fe(o,e){return o.children.filter(t=>t.name===e)}function ft(o){let e=o.text;for(let t of o.children)t.name==="#text"?e+=t.text:e+=ft(t);return e}var Io=Ft(()=>{});function ki(o){return typeof o=="string"||typeof o=="number"}function Ci(o){if(typeof o.type!="string")throw new Error(`xml-serialize: \u4E0D\u652F\u6301\u7684 VNode type\uFF08OOXML \u751F\u6210\u53EA\u7528\u5B57\u7B26\u4E32\u5143\u7D20\u540D\uFF09: ${String(o.type)}`);let e=o.type,{children:t,...n}=o.props??{},r="";for(let[c,f]of Object.entries(n))if(!(c==="key"||f==null))if(typeof f=="string"||typeof f=="number"||typeof f=="boolean")r+=` ${c}="${Rr(String(f))}"`;else throw new Error(`xml-serialize: \u5C5E\u6027 ${c} \u503C\u5FC5\u987B\u4E3A\u5B57\u7B26\u4E32/\u6570\u5B57/\u5E03\u5C14\uFF08OOXML \u5C5E\u6027\u65E0\u5BF9\u8C61\uFF09`);let a=Array.isArray(t)?t:t==null?[]:[t],s=[],i=c=>{for(let f of c)Array.isArray(f)?i(f):f!=null&&typeof f!="boolean"&&s.push(f)};if(i(a),s.length===0)return od.has(e)?`<${e}${r}/>`:`<${e}${r}></${e}>`;let l="";for(let c of s)ki(c)?l+=Rr(String(c)):l+=Ci(c);return`<${e}${r}>${l}</${e}>`}function Ne(o,e=!0){let t;return Array.isArray(o)?t=o.map(n=>Ne(n,!1)).join(""):ki(o)?t=Rr(String(o)):o==null||typeof o=="boolean"?t="":t=Ci(o),e?`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
- ${t}`:t}var Rr,od,$o=Ft(()=>{Rr=o=>o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"),od=new Set(["w:br","w:cr","w:tab","w:b","w:i","w:u"])});var Or={};Go(Or,{deckToPptx:()=>ad,pptxToDeck:()=>rd});import{h as ae}from"weifuwu/vdom";async function rd(o){let e=await vn(o),t=[],n=new TextDecoder,r=[...e.keys()].filter(s=>/^ppt\/slides\/slide\d+\.xml$/.test(s)).sort((s,i)=>{let l=Number(/slide(\d+)/.exec(s)?.[1]??0),c=Number(/slide(\d+)/.exec(i)?.[1]??0);return l-c}),a=[];for(let s of r){let i=pt(n.decode(e.get(s))),l=i.name==="p:sld"?i:pe(i,"p:sld"),c=l?pe(l,"p:cSld"):null,f=c?pe(c,"p:spTree"):null,g=c??null,u=[];if(f){for(let d of Fe(f,"p:sp")){let p=sd(d);p&&u.push(p)}for(let d of Fe(f,"p:pic")){let p=id(d);p&&u.push(p)}}else t.push(`${s} \u7F3A\u5C11 spTree\uFF08\u88C1\u526A\uFF1A\u7A7A\u5E7B\u706F\u7247\uFF09`);a.push({shapes:u,layout:void 0})}if(a.length===0)throw new Error("pptx: \u65E0\u5E7B\u706F\u7247\uFF08\u975E pptx\uFF1F\uFF09");return{deck:{slides:a,activeSlide:0,size:{w:960,h:540}},warnings:t}}function Mi(o){let e=pe(o,"p:spPr"),t=pe(o,"p:xfrm")??pe(o,"a:xfrm")??(e?pe(e,"a:xfrm"):null);if(!t)return null;let n=pe(t,"a:off"),r=pe(t,"a:ext");return{x:n?Math.round(Number(n.attrs.x??0)/Vt):0,y:n?Math.round(Number(n.attrs.y??0)/Vt):0,w:r?Math.round(Number(r.attrs.cx??0)/Vt):100,h:r?Math.round(Number(r.attrs.cy??0)/Vt):40}}function sd(o){let e=Mi(o);if(!e)return null;let t=pe(o,"p:nvSpPr"),n=t?pe(t,"p:cNvPr")?.attrs.id??"sp":"sp",r="text",a=pe(o,"p:spPr"),i=(a?pe(a,"a:prstGeom"):null)?.attrs.prst;i==="line"?r="line":i&&(r="rect");let l=pe(o,"p:txBody"),c="";return l&&(c=Fe(l,"a:p").map(f=>ft(f)).join(`
3
- `).trim()),{id:String(n),kind:r,...e,props:c?{text:c}:void 0}}function id(o){let e=Mi(o);if(!e)return null;let t=pe(o,"p:nvPicPr"),n=t?pe(t,"p:cNvPr")?.attrs.id??"pic":"pic";return{id:String(n),kind:"image",...e,props:{imageUrl:"#"}}}function ad(o){let e=[],t=[],n=[],r=[],a=Math.max(1,o.slides.length);o.slides.forEach((u,d)=>{let p=[];u.shapes.forEach((m,b)=>{let v=2+b,w=Math.round(m.x*Vt),y=Math.round(m.y*Vt),x=Math.round(m.w*Vt),k=Math.round(m.h*Vt);if(m.kind==="image"){e.push(`shape ${m.id} \u56FE\u7247\u5BFC\u51FA\u88C1\u526A\uFF08v1 \u65E0\u5A92\u4F53\u4E8C\u8FDB\u5236\uFF09`),p.push(ae("p:pic",{key:`pic${b}`},ae("p:nvPicPr",{},ae("p:cNvPr",{id:v,name:`pic${b}`}),ae("p:cNvPicPr")),ae("p:blipFill",{},ae("a:blip",{"r:embed":"rIdPlaceholder"})),ae("p:spPr",{},Nr(w,y,x,k))));return}let E=m.kind==="line"?"line":m.kind==="rect"?"rect":null,T=m.props?.text?ae("p:txBody",{},...m.props.text.split(`
4
- `).map((P,I)=>ae("a:p",{key:`p${I}`},ae("a:r",{},ae("a:t",{},P))))):null;p.push(ae("p:sp",{key:`sp${b}`},ae("p:nvSpPr",{},ae("p:cNvPr",{id:v,name:`shape${b}`}),ae("p:cNvSpPr")),ae("p:spPr",{},Nr(w,y,x,k),...E?[ae("a:prstGeom",{prst:E},ae("a:avLst"))]:[]),...T?[T]:[]))});let h=ae("p:sld",{xmlns:"http://schemas.openxmlformats.org/presentationml/2006/main","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ae("p:cSld",{},ae("p:spTree",{},ae("p:nvGrpSpPr",{},ae("p:cNvPr",{id:1,name:""}),ae("p:cNvGrpSpPr"),ae("p:nvPr")),ae("p:grpSpPr",{},Nr(0,0,9144e3,5143500)),...p)));t.push({path:`ppt/slides/slide${d+1}.xml`,xml:Ne(h)}),n.push(ae("Relationship",{Id:`rId${d+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide",Target:`slides/slide${d+1}.xml`})),r.push(ae("p:sldId",{id:256+d,"r:id":`rId${d+1}`}))});let s=ae("p:presentation",{xmlns:"http://schemas.openxmlformats.org/presentationml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ae("p:sldIdLst",{},...r),ae("p:sldSz",{cx:9144e3,cy:5143500}),ae("p:notesSz",{cx:6858e3,cy:9144e3})),i=Ne(ae("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},...n)),l=Ne(ae("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},ae("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"ppt/presentation.xml"}))),c=Ne(ae("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},ae("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),ae("Default",{Extension:"xml",ContentType:"application/xml"}),ae("Override",{PartName:"/ppt/presentation.xml",ContentType:"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml"}),...o.slides.map((u,d)=>ae("Override",{PartName:`/ppt/slides/slide${d+1}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.presentationml.slide+xml"})))),f=new TextEncoder,g=new Map([["[Content_Types].xml",f.encode(c)],["_rels/.rels",f.encode(l)],["ppt/presentation.xml",f.encode(Ne(s))],["ppt/_rels/presentation.xml.rels",f.encode(i)]]);for(let u of t)g.set(u.path,f.encode(u.xml));return{data:xn(g),warnings:e}}function Nr(o,e,t,n){return ae("a:xfrm",{},ae("a:off",{x:o,y:e}),ae("a:ext",{cx:t,cy:n}))}var Vt,Hr=Ft(()=>{Eo();Io();$o();Vt=9525});var Ur={};Go(Ur,{workbookToXlsx:()=>dd,xlsxToWorkbook:()=>ld});import{h as ge}from"weifuwu/vdom";async function ld(o){let e=await vn(o),t=[],n=new TextDecoder,r=e.get("xl/workbook.xml");if(!r)throw new Error("xlsx: \u7F3A\u5C11 xl/workbook.xml\uFF08\u975E xlsx\uFF1F\uFF09");let a=pt(n.decode(r)),s=[],i=pe(a,"sheets");if(i)for(let d of Fe(i,"sheet"))s.push({name:d.attrs.name??`Sheet${s.length+1}`,rId:d.attrs["r:id"]??""});let l=new Map,c=e.get("xl/_rels/workbook.xml.rels");if(c){let d=pt(n.decode(c));for(let p of Fe(d,"Relationship")){let h=p.attrs.Target??"";h.startsWith("worksheets/")&&l.set(p.attrs.Id??"",`xl/${h}`)}}let f=[],g=e.get("xl/sharedStrings.xml");if(g){let d=pt(n.decode(g)),p=d.name==="sst"?d:pe(d,"sst");if(p)for(let h of Fe(p,"si")){let m=Fe(h,"t");f.push(m.length>0?m.map(b=>ft(b)).join(""):ft(h))}}let u=[];for(let d=0;d<s.length;d++){let p=s[d],h=l.get(p.rId)??`xl/worksheets/sheet${d+1}.xml`,m=e.get(h);if(!m){t.push(`sheet ${p.name} \u90E8\u4EF6\u7F3A\u5931\uFF08${h}\uFF09`);continue}let b=Pi(n.decode(m),f,t);u.push({...b,name:p.name})}if(u.length===0){let d=e.get("xl/worksheets/sheet1.xml");if(d)u.push({...Pi(n.decode(d),f,t),name:"Sheet1"});else throw new Error("xlsx: \u65E0\u53EF\u7528\u5DE5\u4F5C\u8868")}return{workbook:{sheets:u,activeSheet:0},warnings:t}}function Pi(o,e,t){let n=pt(o),r=pe(n,"sheetData"),a=new Map,s=1;if(r)for(let i of Fe(r,"row"))for(let l of Fe(i,"c")){let c=(l.attrs.r??"").toUpperCase(),f=l.attrs.t,g=pe(l,"f"),u=pe(l,"v"),d=u?ft(u):"",p;if(g)p={kind:"f",value:d,formula:ft(g)};else if(f==="s"){let h=Number(d);p={kind:"s",value:Number.isFinite(h)&&e[h]!=null?e[h]:d}}else if(f==="b")p={kind:"b",value:d==="1"||d==="true"};else if(f==="n"||d!==""){let h=Number(d);p=Number.isFinite(h)&&d!==""?{kind:"n",value:h}:{kind:"s",value:d}}else p={kind:"s",value:""};if(c){a.set(c,p);let h=cd(c);h+1>s&&(s=h+1)}else t.push("\u5355\u5143\u683C\u7F3A\u5C11 r \u5F15\u7528\u2014\u2014\u8DF3\u8FC7")}return{name:"",cols:s,cells:a}}function cd(o){let e=/^([A-Z]+)/.exec(o);if(!e)return 0;let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return t-1}function dd(o){let e=[],t=[],n=new Map,r=h=>{let m=n.get(h);return m==null&&(m=t.length,t.push(h),n.set(h,m)),m},a=[],s=[],i=[];o.sheets.forEach((h,m)=>{let b=[],v=new Map,w=h.cols;for(let[k,E]of h.cells){let{row:T,col:P}=Br(k);P+1>w&&(w=P+1);let I=v.get(T)??[];I.push({ref:k,cell:E}),v.set(T,I)}let y=[...v.keys()].sort((k,E)=>k-E);for(let k of y){let E=v.get(k).sort((P,I)=>Br(P.ref).col-Br(I.ref).col),T=[];for(let{ref:P,cell:I}of E)I.kind==="f"&&I.formula?T.push(ge("c",{r:P,t:"f"},ge("f",{},I.formula),ge("v",{},String(I.value??"")))):I.kind==="s"?T.push(ge("c",{r:P,t:"s"},ge("v",{},String(r(String(I.value)))))):I.kind==="b"?T.push(ge("c",{r:P,t:"b"},ge("v",{},I.value?"1":"0"))):I.kind==="n"?T.push(ge("c",{r:P,t:"n"},ge("v",{},String(I.value)))):T.push(ge("c",{r:P,t:"s"},ge("v",{},String(r(String(I.value))))));b.push(ge("row",{r:k+1},...T))}let x=ge("worksheet",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"},ge("sheetData",{},...b));a.push({path:`xl/worksheets/sheet${m+1}.xml`,xml:Ne(x)}),s.push(ge("Relationship",{Id:`rId${m+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${m+1}.xml`})),i.push(ge("sheet",{name:h.name,sheetId:m+1,"r:id":`rId${m+1}`}))});let l=ge("workbook",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ge("sheets",{},...i)),c=ge("sst",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:t.length,uniqueCount:t.length},...t.map((h,m)=>ge("si",{key:`si${m}`},ge("t",{},h)))),f=ge("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},...s,ge("Relationship",{Id:`rId${o.sheets.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"})),g=Ne(ge("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},ge("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),ge("Default",{Extension:"xml",ContentType:"application/xml"}),ge("Override",{PartName:"/xl/workbook.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"}),...o.sheets.map((h,m)=>ge("Override",{PartName:`/xl/worksheets/sheet${m+1}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"})),ge("Override",{PartName:"/xl/sharedStrings.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"}))),u=Ne(ge("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},ge("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"xl/workbook.xml"}))),d=new TextEncoder,p=new Map([["[Content_Types].xml",d.encode(g)],["_rels/.rels",d.encode(u)],["xl/workbook.xml",d.encode(Ne(l))],["xl/_rels/workbook.xml.rels",d.encode(Ne(f))],["xl/sharedStrings.xml",d.encode(Ne(c))]]);for(let h of a)p.set(h.path,d.encode(h.xml));return{data:xn(p),warnings:e}}function Br(o){let e=/^([A-Z]+)(\d+)$/.exec(o);if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}var zr=Ft(()=>{Eo();Io();$o()});var _r={};Go(_r,{base64ToBytes:()=>Ii,bytesToBase64:()=>$i,docToDocx:()=>hd,docxToDoc:()=>fd});import{h as j}from"weifuwu/vdom";function Ii(o){if(typeof Buffer<"u")return new Uint8Array(Buffer.from(o,"base64"));let e=atob(o),t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function $i(o){if(typeof Buffer<"u")return Buffer.from(o).toString("base64");let e="";for(let t=0;t<o.length;t++)e+=String.fromCharCode(o[t]);return btoa(e)}async function fd(o){let e=await vn(o),t=[],n=e.get("word/document.xml");if(!n)throw new Error("docx: \u7F3A\u5C11 word/document.xml\uFF08\u975E docx\uFF1F\uFF09");let r=new Map,a=e.get("word/_rels/document.xml.rels");if(a){let p=pt(new TextDecoder().decode(a));for(let h of Fe(p,"Relationship")){let m=h.attrs.Target??"";m.startsWith("media/")&&r.set(h.attrs.Id??"",`word/${m}`)}}let s=pt(new TextDecoder().decode(n)),i=pe(s,"w:body");if(!i)throw new Error("docx: \u7F3A\u5C11 w:body");let l="",c=[],f=[],g=[],u=0,d=p=>{l+=p};for(let p of i.children)if(p.name==="w:p"){let h=null,m,b=pe(p,"w:pPr");if(b){let w=pe(b,"w:pStyle");w?.attrs["w:val"]&&Si[w.attrs["w:val"]]&&(h=Si[w.attrs["w:val"]]);let y=pe(b,"w:jc");y?.attrs["w:val"]&&Ti[y.attrs["w:val"]]&&(m=Ti[y.attrs["w:val"]])}let v=l.length;for(let w of p.children)if(w.name==="w:r"){let y=w,x=pe(y,"w:rPr"),k=!!x&&!!pe(x,"w:b"),E=!!x&&!!pe(x,"w:i"),T=!!x&&!!pe(x,"w:u");Fe(y,"w:br").length>0&&d(`
5
- `);let P=pe(y,"w:t");if(P){let A=ft(P);d(A),k&&f.push({start:l.length-A.length,end:l.length,type:"b"}),E&&f.push({start:l.length-A.length,end:l.length,type:"i"}),T&&f.push({start:l.length-A.length,end:l.length,type:"u"})}let I=pe(y,"w:drawing")??pe(y,"w:pict");if(I){let A=ud(I),$=A?r.get(A):void 0;if($&&e.has($)){let N=e.get($),q=`<img src="data:${md($)};base64,${$i(N)}" alt="">`;g.push({id:`d${u++}`,at:l.length,type:"img",html:q}),d(Ze)}else t.push(`\u56FE\u7247 r:embed=${A??"?"} \u672A\u627E\u5230\uFF08\u88C1\u526A\uFF1A\u5916\u90E8\u56FE\u7247\u4E0D\u652F\u6301\uFF09`)}}else if(w.name==="w:tbl"){let y=Ei(w);g.push({id:`d${u++}`,at:l.length,type:"table",html:y}),d(Ze)}if(d(`
6
- `),h||m){let w={start:v,kind:h??"p"};m&&(w.align=m),c.push(w)}}else if(p.name==="w:tbl"){let h=Ei(p);g.push({id:`d${u++}`,at:l.length,type:"table",html:h}),d(Ze),d(`
7
- `)}else p.name;return{doc:{text:l,blockProps:c,marks:f,embeds:g},warnings:t}}function ud(o){let e=t=>{if(t.attrs?.["r:embed"])return t.attrs["r:embed"];for(let n of t.children??[]){let r=e(n);if(r)return r}return null};return e(o)}function md(o){let e=o.split(".").pop()?.toLowerCase()??"";return{png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",bmp:"image/bmp",svg:"image/svg+xml",webp:"image/webp"}[e]??"image/png"}function Ei(o){let e=(o.children??[]).filter(n=>n.name==="w:tr");if(e.length===0)return'<table class="wf-editor-table"><tbody></tbody></table>';let t='<table class="wf-editor-table"><tbody>';for(let n of e){t+="<tr>";for(let r of(n.children??[]).filter(a=>a.name==="w:tc")){let a=(r.children??[]).filter(s=>s.name==="w:p").map(s=>(s.children??[]).filter(i=>i.name==="w:r").map(i=>(i.children??[]).filter(l=>l.name==="w:t").map(l=>Ai(l)).join("")).join("")).join("");t+=`<td>${pd(a)}</td>`}t+="</tr>"}return t+="</tbody></table>",t}function Ai(o){if(!o.children||o.children.length===0)return o.text??"";let e=o.text??"";for(let t of o.children)e+=Ai(t);return e}function hd(o){let e=[],t=new Map,n=[],r=j("w:document",{"xmlns:w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:wp":"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:pic":"http://schemas.openxmlformats.org/drawingml/2006/picture"},j("w:body",{},gd(o,t,n,e),j("w:sectPr",{},j("w:pgSz",{"w:w":11906,"w:h":16838}),j("w:pgMar",{"w:top":1440,"w:right":1440,"w:bottom":1440,"w:left":1440})))),a=Ne(r),s=Ne(j("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},j("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"}),...n)),i=Ne(j("w:styles",{"xmlns:w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main"},j("w:docDefaults",{},j("w:rPrDefault",{},j("w:rPr",{},j("w:sz",{"w:val":22})))),j("w:style",{"w:type":"paragraph","w:default":"1","w:styleId":"Normal"},j("w:name",{"w:val":"Normal"})),j("w:style",{"w:type":"paragraph","w:styleId":"Heading1"},j("w:name",{"w:val":"heading 1"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":36}))),j("w:style",{"w:type":"paragraph","w:styleId":"Heading2"},j("w:name",{"w:val":"heading 2"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":28}))),j("w:style",{"w:type":"paragraph","w:styleId":"Heading3"},j("w:name",{"w:val":"heading 3"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":24}))))),l=Ne(j("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},j("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),j("Default",{Extension:"xml",ContentType:"application/xml"}),j("Default",{Extension:"png",ContentType:"image/png"}),j("Default",{Extension:"jpeg",ContentType:"image/jpeg"}),j("Override",{PartName:"/word/document.xml",ContentType:"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"}),j("Override",{PartName:"/word/styles.xml",ContentType:"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"}))),c=Ne(j("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},j("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"word/document.xml"}))),f=new TextEncoder,g=new Map([["[Content_Types].xml",f.encode(l)],["_rels/.rels",f.encode(c)],["word/document.xml",f.encode(a)],["word/_rels/document.xml.rels",f.encode(s)],["word/styles.xml",f.encode(i)]]);for(let[u,d]of t)g.set(u,d);return{data:xn(g),warnings:e}}function gd(o,e,t,n){let r=[],a=p=>{let h=o.blockProps.find(m=>m.start===p);return h?{kind:h.kind==="p"?"":h.kind==="h1"?"Heading1":h.kind==="h2"?"Heading2":"Heading3",align:h.align}:null},s=(p,h)=>{let m=[],b=o.marks.filter(y=>y.start>=p&&y.end<=h&&y.start<y.end).sort((y,x)=>y.start-x.start||y.end-x.end),v=p,w=[];for(let y of b)y.start>v&&w.push({from:v,to:Math.min(y.start,h),ms:[]}),v=Math.max(v,y.start),y.end<=h&&(w.push({from:y.start,to:y.end,ms:[y]}),v=y.end);v<h&&w.push({from:v,to:h,ms:[]});for(let y of w){let x=o.text.slice(y.from,y.to);if(!x)continue;let k=[];for(let E of y.ms)E.type==="b"?k.push(j("w:b")):E.type==="i"?k.push(j("w:i")):E.type==="u"?k.push(j("w:u")):E.type==="link"&&k.push(j("w:u"),j("w:color",{"w:val":"0563C1"}));m.push(k.length>0?j("w:r",{},j("w:rPr",{},...k),j("w:t",{"xml:space":"preserve"},x)):j("w:r",{},j("w:t",{"xml:space":"preserve"},x)))}return m},i=(p,h,m)=>{let b=a(p),v=[];b&&(b.kind&&v.push(j("w:pStyle",{"w:val":b.kind})),b.align&&v.push(j("w:jc",{"w:val":b.align})));let w=[...s(p,h),...m];return v.length>0?j("w:p",{},j("w:pPr",{},...v),...w):j("w:p",{},...w)},l=0,c=[],f={current:0},g=()=>{if(c.length===0){l<f.current?r.push(i(l,f.current,[])):r.push(i(l,l,[]));return}let p=l,h=[];for(let m of c)m.kind==="block"?(r.push(i(p,m.at,h)),h=[],r.push(m.vnode),p=m.at+1):h.push(m.vnode);r.push(i(p,f.current,h))},u=[...o.embeds].sort((p,h)=>p.at-h.at),d=0;for(;;){let p=o.text.indexOf(`
8
- `,l),h=p<0?o.text.length:p;for(f.current=h,c.length=0;d<u.length&&u[d].at<h;){let m=u[d],b=bd(m,e,t,n);b&&c.push({at:m.at,kind:m.type==="pre"||m.type==="hr"?"block":"inline",vnode:b}),d++}if(g(),p<0||(l=h+1,l>=o.text.length))break}return r}function bd(o,e,t,n){if(o.type==="img"){let r=/src="data:([^;]+);base64,([^"]+)"/.exec(o.html);if(r){let a=e.size+1,s=`rIdImg${a+1}`,i=r[1].includes("png")?"png":r[1].includes("jpeg")||r[1].includes("jpg")?"jpeg":"png",l=`word/media/image${a}.${i}`;return e.set(l,Ii(r[2])),t.push(j("Relationship",{Id:s,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`media/image${a}.${i}`})),j("w:r",{},j("w:drawing",{},j("wp:inline",{distT:0,distB:0,distL:0,distR:0},j("wp:extent",{cx:1371600,cy:1371600}),j("wp:docPr",{id:a,name:`image${a}`}),j("a:graphic",{},j("a:graphicData",{uri:"http://schemas.openxmlformats.org/drawingml/2006/picture"},j("pic:pic",{},j("pic:nvPicPr",{},j("pic:cNvPr",{id:a,name:`image${a}`}),j("pic:cNvPicPr")),j("pic:blipFill",{},j("a:blip",{"r:embed":s}),j("a:stretch",{},j("a:fillRect"))),j("pic:spPr",{},j("a:xfrm",{},j("a:off",{x:0,y:0}),j("a:ext",{cx:1371600,cy:1371600})),j("a:prstGeom",{prst:"rect"},j("a:avLst")))))))))}return n.push("\u56FE\u7247 embed \u975E data url\u2014\u2014\u5BFC\u51FA\u88C1\u526A\uFF08http \u56FE\u7247\u9700\u670D\u52A1\u7AEF\u4E0B\u8F7D\uFF09"),j("w:p")}if(o.type==="table")return wd(o);if(o.type==="hr")return j("w:p",{},j("w:pPr",{},j("w:pBdr",{},j("w:bottom",{"w:val":"single","w:sz":6}))));if(o.type==="pre"){let a=yd(o.html).split(`
9
- `),s=[];return a.forEach((i,l)=>{l>0&&s.push(j("w:r",{key:`br${l}`},j("w:br"))),s.push(j("w:r",{key:`l${l}`},j("w:t",{"xml:space":"preserve"},i)))}),j("w:p",{key:"pre"},...s)}return n.push(`embed \u7C7B\u578B ${o.type} \u5BFC\u51FA\u88C1\u526A`),j("w:p")}function yd(o){let e=/<pre[^>]*>([\s\S]*)<\/pre>/.exec(o);return e?e[1].replace(/<[^>]+>/g,""):""}function wd(o){try{let e=pt(o.html),t=pe(e,"tbody")??e;return j("w:tbl",{},j("w:tblPr",{},j("w:tblW",{"w:w":0,"w:type":"auto"})),...Fe(t,"tr").map((n,r)=>j("w:tr",{key:`r${r}`},...Fe(n,"td").map((a,s)=>j("w:tc",{key:`c${s}`},j("w:tcPr",{},j("w:tcW",{"w:w":0,"w:type":"auto"})),j("w:p",{},j("w:r",{},j("w:t",{"xml:space":"preserve"},ft(a)))))))))}catch{return j("w:p",{},j("w:r",{},j("w:t",{},"[\u8868\u683C\uFF08\u5BFC\u51FA\u88C1\u526A\u2014\u2014\u683C\u5F0F\u65E0\u6CD5\u89E3\u6790\uFF09]")))}}var pd,Si,Ti,Vr=Ft(()=>{Eo();Io();$o();zt();pd=o=>o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");Si={Heading1:"h1",Heading2:"h2",Heading3:"h3",heading1:"h1",heading2:"h2",heading3:"h3",title:"h1",Title:"h1"},Ti={center:"center",right:"right",left:"left",both:"left",distribute:"left"}});import{h as ps}from"weifuwu/vdom";var Na={"chevron-down":["M6 9l6 6 6-6"],"chevron-up":["M6 15l6-6 6 6"],"chevron-left":["M15 18l-6-6 6-6"],"chevron-right":["M9 18l6-6-6-6"],"arrow-left":["M19 12H5","M12 19l-7-7 7-7"],"arrow-up":["M12 19V5","M5 12l7-7 7 7"],"arrow-down":["M12 5v14","M19 12l-7 7-7-7"],"arrow-right":["M5 12h14","M12 5l7 7-7 7"],sort:["M7 15l5 5 5-5","M7 9l5-5 5 5"],"sort-asc":["M12 19V5","M5 12l7-7 7 7"],"sort-desc":["M12 5v14","M19 12l-7 7-7-7"],check:["M20 6L9 17l-5-5"],close:["M18 6L6 18","M6 6l12 12"],alert:["M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z","M12 9v4","M12 17h.01"],info:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 16v-4","M12 8h.01"],warning:["M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z","M12 9v4","M12 17h.01"],pause:["M6 4h4v16H6z","M14 4h4v16h-4z"],settings:["M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z","M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],search:["M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16z","M21 21l-4.35-4.35"],send:["M22 2L11 13","M22 2l-7 20-4-9-9-4 20-7z"],stop:["M6 6h12v12H6z"],retry:["M1 4v6h6","M23 20v-6h-6","M20.49 9A9 9 0 0 0 5.64 5.64L1 10","M3.51 15a9 9 0 0 0 14.85 3.36L23 14"],upload:["M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4","M17 8l-5-5-5 5","M12 3v12"],trash:["M3 6h18","M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2","M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14","M10 11v6","M14 11v6"],edit:["M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7","M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"],plus:["M12 5v14","M5 12h14"],copy:["M20 9h-9a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2-2v-9a2 2 0 0 0-2-2z","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"],eye:["M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z","M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],"eye-off":["M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94","M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19","M14.12 14.12a3 3 0 1 1-4.24-4.24","M1 1l22 22"],star:["M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"],dashboard:["M3 13h8V3H3z","M21 13h-8V9h8z","M21 21h-8v-8h8z","M3 21h8v-8H3z"],grid:["M3 3h7v7H3z","M14 3h7v7h-7z","M14 14h7v7h-7z","M3 14h7v7H3z"],box:["M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z","M3.27 6.96L12 12.01l8.73-5.05","M12 22.08V12"],users:["M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2","M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8z","M23 21v-2a4 4 0 0 0-3-3.87","M16 3.13a4 4 0 0 1 0 7.75"],user:["M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2","M12 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8z"],home:["M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M9 22V12h6v10"],folder:["M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"],file:["M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z","M13 2v7h7"],"file-text":["M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z","M13 2v7h7","M9 13h6","M9 17h6"],calendar:["M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M16 3v4","M8 3v4","M3 11h18"],clock:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 6v6l4 2"],bell:["M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9","M13.73 21a2 2 0 0 1-3.46 0"],menu:["M3 12h18","M3 6h18","M3 18h18"],activity:["M22 12h-4l-3 9L9 3l-3 9H2"],"trending-up":["M23 6l-9.5 9.5-5-5L1 18","M17 6h6v6"],"trending-down":["M23 18l-9.5-9.5-5 5L1 6","M17 18h6v-6"],database:["M12 8c4.97 0 9-1.34 9-3s-4.03-3-9-3-9 1.34-9 3 4.03 3 9 3z","M21 12c0 1.66-4.03 3-9 3s-9-1.34-9-3","M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5"],server:["M20 4H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z","M4 14h16","M20 14a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2","M7 18h.01","M12 18h.01"],heart:["M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"],refresh:["M23 4v6h-6","M1 20v-6h6","M3.51 9a9 9 0 0 1 14.85-3.36L23 10","M20.49 15a9 9 0 0 1-14.85 3.36L1 14"],message:["M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"],inbox:["M22 12h-6l-2 3h-4l-2-3H2","M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"],shield:["M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"],zap:["M13 2L3 14h9l-1 8 10-12h-9l1-8z"],target:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 18a6 6 0 1 0 0-12 6 6 0 0 0 0 12z","M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"],mail:["M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z","M22 6l-10 7L2 6"],"external-link":["M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6","M15 3h6v6","M10 14L21 3"],"log-out":["M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4","M16 17l5-5-5-5","M21 12H9"],lock:["M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2z","M7 11V7a5 5 0 0 1 10 0v4"],list:["M8 6h13","M8 12h13","M8 18h13","M3 6h.01","M3 12h.01","M3 18h.01"],"bar-chart":["M12 20V10","M18 20V4","M6 20v-4"],gauge:["M12 15l3.5-3.5","M20.39 18.39A10 10 0 1 0 3.61 18.39","M12 15a2 2 0 1 0 0 4 2 2 0 0 0 0-4z"],paperclip:["M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"],filter:["M22 3H2l8 9.46V19l4 2v-8.54L22 3z"],layers:["M12 2L2 7l10 5 10-5-10-5z","M2 17l10 5 10-5","M2 12l10 5 10-5"],"map-pin":["M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z","M15 10a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],"book-open":["M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z","M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"],github:["M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"],tag:["M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z","M7 7h.01"],phone:["M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"],"more-vertical":["M12 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M12 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M12 20a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z"],"check-circle":["M22 11.08V12a10 10 0 1 1-5.93-9.14","M22 4L12 14.01l-3-3"],"alert-circle":["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 8v4","M12 16h.01"],wifi:["M5 12.55a11 11 0 0 1 14.08 0","M1.42 9a16 16 0 0 1 21.16 0","M8.53 16.11a6 6 0 0 1 6.95 0","M12 20h.01"],cpu:["M9 9h6v6H9z","M9 1v4","M15 1v4","M9 19v4","M15 19v4","M1 9h4","M1 15h4","M19 9h4","M19 15h4","M5 5h14v14H5z"],"hard-drive":["M22 12H2","M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z","M6 16h.01","M10 16h.01"],globe:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M2 12h20","M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"],briefcase:["M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16","M2 20h20","M4 4h16a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z"],layout:["M3 3h18a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z","M9 3v18","M3 9h18"],camera:["M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z","M12 17a4 4 0 1 0 0-8 4 4 0 0 0 0 8z"],image:["M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M8.5 10a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M21 15l-5-5L5 21"],share:["M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8","M16 6l-4-4-4 4","M12 2v13"]},H=(o,e)=>t=>{let{name:n,size:r,className:a}=t;return ps("svg",{class:`wf-icon${a?" "+a:""}`,width:r??"1em",height:r??"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":1.8,"stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},(Na[n]??(globalThis.__WF_DEV__&&globalThis.__iconWarned!==n&&(globalThis.__iconWarned=n,console.warn(`[Icon] \u672A\u77E5\u56FE\u6807\u540D\u300C${n}\u300D\u2014\u2014\u6E32\u67D3\u5360\u4F4D\u5706\u70B9\uFF08PATHS \u672A\u767B\u8BB0\u2014\u2014\u68C0\u67E5 name \u62FC\u5199\u6216\u767B\u8BB0\u65B0\u56FE\u6807\uFF09`)),["M12 12m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"])).map(s=>ps("path",{d:s})))};import{h as fs}from"weifuwu/vdom";var Ye=(o,e)=>t=>{let{variant:n="primary",size:r="md",block:a,loading:s,disabled:i,type:l,onClick:c,children:f}=t,g=["wf-btn",`wf-btn--${n}`,`wf-btn--${r}`,a&&"wf-btn--block",s&&"wf-btn--loading"].filter(Boolean).join(" "),u=e?.i18n?.components?.Button??{};return fs("button",{id:t.id,title:t.title,class:g,type:l??"button",disabled:i||s||void 0,"aria-busy":s||void 0,onClick:c},s?[fs("span",{class:"wf-btn-spinner"}),u.loading??"\u52A0\u8F7D\u4E2D..."]:f)};import{h as on}from"weifuwu/vdom";var co=o=>e=>{let{label:t,name:n,type:r="text",value:a,placeholder:s,required:i,disabled:l,readonly:c,error:f,hint:g,variant:u="default",onInput:d,onChange:p,...h}=e,m=on("input",{class:`wf-input${u==="borderless"?" wf-input--borderless":""}`,name:n||void 0,type:r,value:a,placeholder:s,required:i||void 0,disabled:l||void 0,readonly:c||void 0,onInput:d,onChange:p,...h});if(!t&&!f&&!g)return m;let b=[];if(t){let v=[t];i&&v.push(on("span",{class:"wf-input-req"},"*")),b.push(on("label",{class:"wf-input-label"},v))}return b.push(m),f&&b.push(on("div",{class:"wf-input-err"},f)),g&&!f&&b.push(on("div",{class:"wf-input-hint"},g)),on("div",{class:`wf-input-wrap${f?" wf-input--err":""}`},b)};import{h as Gt}from"weifuwu/vdom";var Oa=(o,e)=>t=>{let{label:n,value:r,placeholder:a,required:s,disabled:i,error:l,hint:c,rows:f=3,maxLength:g,showCount:u,onInput:d}=t,p=Gt("textarea",{class:"wf-textarea",value:r,placeholder:a,required:s||void 0,disabled:i||void 0,rows:f,maxLength:g,onInput:d}),h=[];if(n){let m=[n];s&&m.push(Gt("span",{class:"wf-textarea-req"},"*")),h.push(Gt("label",{class:"wf-textarea-label"},m))}if(h.push(p),u){let m=(r??"").length,b=g!=null&&m>g;h.push(Gt("div",{class:`wf-textarea-count${b?" wf-textarea-count--over":""}`,"aria-live":"polite"},g!=null?`${m}/${g}`:String(m)))}return l&&h.push(Gt("div",{class:"wf-textarea-err"},l)),c&&!l&&h.push(Gt("div",{class:"wf-textarea-hint"},c)),Gt("div",{class:`wf-textarea-wrap${l?" wf-textarea--err":""}`},h)};import{h as Te}from"weifuwu/vdom";function po(o){return"options"in o&&!("value"in o)}function Wo(o){return o?o.flatMap(e=>po(e)?e.options:[e]):[]}var Ha=(o,e)=>t=>{let{label:n,value:r,options:a,placeholder:s,required:i,disabled:l,error:c,onChange:f,children:g}=t,u=[];if(s&&u.push(Te("option",{value:"",disabled:!0},s)),a)for(let h of a)po(h)?u.push(Te("optgroup",{label:h.label},h.options.map(m=>Te("option",{value:m.value,disabled:m.disabled},m.label)))):u.push(Te("option",{value:h.value,disabled:h.disabled},h.label));let d=Te("select",{class:"wf-select",value:r??"",required:i||void 0,disabled:l||void 0,onChange:h=>f?.(h.target.value)},g??u),p=[];if(n){let h=[n];i&&h.push(Te("span",{class:"wf-select-req"},"*")),p.push(Te("label",{class:"wf-select-label"},h))}return p.push(d),c&&p.push(Te("div",{class:"wf-select-err"},c)),Te("div",{class:`wf-select-wrap${c?" wf-select--err":""}`},p)},Ba=(o,e)=>{let t=!1,n="",r=[],a=-1,s=!1,i;e.ui.useStableRef?.(()=>{},()=>{s=!0,i&&clearTimeout(i)});let l=null,c=null,f=p=>{p&&(l=p)},g=p=>{p&&(c=p)},u=null,d=p=>{t&&!u?u=e.ui.openPopup({key:"wf-select-menu",anchor:()=>l,placement:"bottom",center:!1,gap:4,content:()=>p,onClose:()=>{u=null,t&&(t=!1,e.render())}}):!t&&u?(u.close(),u=null):u&&u.update(p)};return p=>{let{label:h,value:m,options:b=[],placeholder:v,required:w,disabled:y,error:x,onChange:k,onSearch:E,multiple:T}=p,P=!!T,I=P?Array.isArray(m)?m:[]:[m],A=(X,W)=>{if(!W)return X;let J=W.toLowerCase();return X.flatMap(ee=>{if(po(ee)){let ue=ee.options.filter(ie=>ie.label.toLowerCase().includes(J));return ue.length?[{label:ee.label,options:ue}]:[]}return ee.label.toLowerCase().includes(J)?[ee]:[]})},$=n&&E&&r.length>0?r:A(b,n),N=Wo($),B=Wo(b),q=B.find(X=>X.value===m),V=B.filter(X=>I.includes(X.value)),U=async X=>{if(n=X,t=!0,a=0,e.render(),E&&X){let W=await E(X);W&&(r=W,e.render())}},L=X=>{if(!X.disabled)if(P){let W=Array.isArray(m)?[...m]:[],J=W.indexOf(X.value);J>=0?W.splice(J,1):W.push(X.value),k?.(W)}else n="",t=!1,e.render(),k?.(X.value)},C=X=>{if(!P)return;let W=Array.isArray(m)?[...m]:[];k?.(W.filter(J=>J!==X))},M=X=>{if(!y)if(X.key==="ArrowDown")X.preventDefault(),t=!0,a=Math.min(a+1,N.length-1),e.render();else if(X.key==="ArrowUp")X.preventDefault(),t=!0,a=Math.max(a-1,0),e.render();else if(X.key==="Enter"){X.preventDefault();let W=N[a];W&&L(W)}else X.key==="Escape"&&(X.preventDefault(),t=!1,n="",e.render())},S=P&&V.length>0?V.map(X=>Te("span",{class:"wf-select-tag",key:X.value},[X.label,Te("button",{type:"button",class:"wf-select-tag-close","aria-label":`\u79FB\u9664 ${X.label}`,onClick:W=>{W.stopPropagation(),C(X.value)}},Te(H,{name:"close",size:10}))])):[],R=P?"":t?n:q?.label??"",D=Te("div",{key:"select-trigger",class:`wf-select-search-trigger${y?" wf-select-search--disabled":""}${x?" wf-select--err":""}`,ref:f,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(t),onClick:y?void 0:()=>{t=!0,e.render(),c?.focus()}},[...S,Te("input",{key:"select-search-input",ref:g,class:"wf-select-search-input",type:"text",value:P?"":t?n:q?.label??"",placeholder:V.length>0?void 0:v??"",disabled:y,readOnly:!t||void 0,onInput:X=>U(X.target.value),onFocus:()=>{y||(t=!0,e.render())},onBlur:()=>{i=setTimeout(()=>{s||(t=!1,n="",e.render())},150)},onKeyDown:M})]),O=[];if(h){let X=[h];w&&X.push(Te("span",{class:"wf-select-req"},"*")),O.push(Te("label",{class:"wf-select-label"},X))}let K=0,Y=(X,W)=>{let J=P?I.includes(X.value):X.value===m,ee=Te("div",{class:`wf-select-search-opt${J?" wf-select-search-opt--sel":""}${X.disabled?" wf-select-search-opt--dis":""}${a===W?" wf-select-search-opt--hl":""}`,key:X.value,onMouseDown:ue=>{ue.preventDefault(),L(X)}},X.label);return K++,ee},Q=[];if(N.length>0)for(let X of $)if(po(X)){Q.push(Te("div",{class:"wf-select-search-group",key:`group-${X.label}`},X.label));for(let W of X.options)Q.push(Y(W,K))}else Q.push(Y(X,K));else n&&Q.push(Te("div",{class:"wf-select-search-empty"},"\u65E0\u5339\u914D"));let G=Te("div",{class:"wf-select-search-menu"},Q);return d(G),O.push(Te("div",{class:"wf-select-search"},[D])),x&&O.push(Te("div",{class:"wf-select-err"},x)),Te("div",{class:`wf-select-wrap${x?" wf-select--err":""}`},O)}},fo=(o,e)=>{let t=Ha(o,e),n=Ba(o,e);return r=>r.searchable?n(r):t(r)};import{h as An}from"weifuwu/vdom";var qo=(o,e)=>t=>{let{label:n,checked:r,disabled:a,onChange:s}=t,i=An("input",{type:"checkbox",class:"wf-checkbox-input",checked:r||void 0,disabled:a||void 0,onChange:s?c=>s(c.target.checked):void 0}),l=An("span",{class:"wf-checkbox-visual"});return n?An("label",{class:"wf-checkbox"},[i,l,An("span",{class:"wf-checkbox-label"},n)]):An("label",{class:"wf-checkbox"},[i,l])};import{h as Dn}from"weifuwu/vdom";var uo=(o,e)=>t=>{let{label:n,checked:r,disabled:a,onChange:s}=t,i=Dn("input",{type:"checkbox",class:"wf-switch-input",checked:r||void 0,disabled:a||void 0,role:"switch","aria-checked":String(!!r),onChange:s?f=>s(f.target.checked):void 0}),l=Dn("span",{class:"wf-switch-track"}),c=e?.i18n?.components?.Switch??{};return n?Dn("label",{class:"wf-switch"},[i,l,Dn("span",{class:"wf-switch-label"},n)]):Dn("label",{class:"wf-switch","aria-label":c.ariaLabel??"\u5207\u6362"},[i,l])};import{h as Ln}from"weifuwu/vdom";var Ua=(o,e)=>t=>{let{name:n,options:r=[],inline:a}=t,s=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"RadioGroup"}),i=c=>{let f=s?.controlled?.value!==void 0;s?.setValue(c),f||t.onChange?.(c)},l=r.map(c=>{let f=Ln("input",{type:"radio",class:"wf-radio-input",name:n??"radio",value:c.value,checked:s?.value===c.value||void 0,disabled:c.disabled||void 0,onChange:()=>i(c.value)}),g=Ln("span",{class:"wf-radio-visual"}),u=Ln("span",{class:"wf-radio-label-text"},c.label);return Ln("label",{class:"wf-radio",key:c.value},[f,g,u])});return Ln("div",{class:`wf-radio-group${a?" wf-radio-group--inline":""}`},l)};import{h as Ie}from"weifuwu/vdom";function za(o,e,t,n){if(!t||!n)return o;let r=e.find(s=>s.key===t);if(!r||!r.sortable)return o;let a=[...o];return a.sort((s,i)=>{let l=s[t],c=i[t],f=r.sorter?r.sorter(l,c):String(l??"").localeCompare(String(c??""));return n==="desc"?-f:f}),a}var _a=(o,e)=>{let t=null,n={},r=(s,i,l)=>{t={row:s,col:i,value:String(l??"")},e.render()},a=()=>{if(t){let{row:s,col:i,value:l}=t;t=null,e.render(),n.onCellEdit?.(i,s,l,n.data?.[s])}};return s=>{let{data:i=[],columns:l,onRowClick:c,sortKey:f,sortOrder:g,onSort:u,emptyText:d,rowSelection:p}=s;n.data=i,n.onCellEdit=s.onCellEdit;let h=za(i,l,f,g),m=C=>typeof C=="number"?C:typeof C=="string"&&/^\d+px$/.test(C)?Number(C.slice(0,-2)):140,b=new Map;{let C=0;for(let M of l)M.fixed==="left"&&(M.width===void 0&&console.warn(`[Table] \u56FA\u5B9A\u5217\u300C${M.label}\u300D\u672A\u6307\u5B9A width\u2014\u2014sticky \u504F\u79FB\u6309 140px \u4F30\u7B97\uFF08\u56FA\u5B9A\u5217\u5FC5\u987B\u663E\u5F0F width\uFF09`),b.set(M.key,C),C+=m(M.width))}let v=C=>{if(C.fixed==="left")return{position:"sticky",left:`${b.get(C.key)??0}px`,zIndex:2,background:"var(--wf-color-bg-elevated)"};if(C.fixed==="right")return{position:"sticky",right:"0px",zIndex:2,background:"var(--wf-color-bg-elevated)"}},w=(C,M)=>C[p?.rowKey??"id"]??M,y=p?.selectedRowKeys??[],x=new Set(y.map(String)),k=h.map((C,M)=>String(w(C,M))),E=k.length>0&&k.every(C=>x.has(C)),T=k.some(C=>x.has(C)),P=()=>{if(!p?.onChange)return;let C=E?[]:k.map(M=>h.find((S,R)=>String(w(S,R))===M));p.onChange(E?[]:k,E?[]:C)},I=(C,M)=>{if(!p?.onChange)return;let S=String(w(C,M)),R=x.has(S)?y.filter(O=>String(O)!==S):[...y,S],D=R.map(O=>h.find((K,Y)=>String(w(K,Y))===String(O))).filter(Boolean);p.onChange(R,D)},A=p?Ie("th",{class:"wf-table-th wf-table-th--selection",scope:"col"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:E||void 0,indeterminate:T&&!E?"true":void 0,"aria-label":"\u5168\u9009",onChange:P})):null,$=(C,M)=>p?Ie("td",{class:"wf-table-td wf-table-td--selection"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:x.has(String(w(C,M)))||void 0,"aria-label":"\u9009\u62E9\u884C",onClick:S=>S.stopPropagation(),onChange:()=>I(C,M)})):null,N=l.map(C=>{let M=C.key===f&&g,S=g==="asc",R=C.label,D=C.sortable?Ie(H,{name:M?S?"sort-asc":"sort-desc":"sort",className:`wf-table-sort-icon${M?" wf-table-sort-icon--active":""}`}):null,O=C.sortable&&u?()=>u(C.key,M&&S?"desc":"asc"):void 0;return Ie("th",{class:`wf-table-th${C.sortable?" wf-table-th--sortable":""}${M?" wf-table-th--sorted":""}`,scope:"col",tabindex:C.sortable?0:void 0,style:{...C.width?{width:C.width}:{},...v(C)??{}},onClick:O,onKeyDown:O?K=>{(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),O())}:void 0},[R,D].filter(Boolean))}),B=Ie("tr",{class:"wf-table-tr"},[A,...N].filter(Boolean)),q=Ie("thead",{class:"wf-table-thead"},B),V;if(s.loading){let C=s.loadingRows??3;V=Array.from({length:C},(M,S)=>Ie("tr",{class:"wf-table-tr wf-table-tr--loading",key:`loading-${S}`},l.map((R,D)=>Ie("td",{class:"wf-table-td",key:`${S}-${D}`},Ie("span",{class:"wf-skeleton wf-skeleton--text"})))))}else if(h.length===0&&d){let C=l.length+(p?1:0);V=[Ie("tr",{class:"wf-table-tr"},Ie("td",{class:"wf-table-td wf-table-empty",colspan:C,style:{textAlign:"center"}},d))]}else V=h.map((C,M)=>{let S=l.map(D=>{let O=C[D.key];if(D.editable)return t&&t.row===M&&t.col===D.key?Ie("td",{class:"wf-table-td wf-table-td--editing",key:`${M}-${D.key}`},Ie("input",{class:"wf-input wf-input--table-edit",value:t.value,"data-wf-edit":`${M}:${D.key}`,onInput:Y=>{t.value=Y.target.value},onKeyDown:Y=>{Y.key==="Enter"&&a(),Y.key==="Escape"&&(t=null,e.render())},onBlur:()=>a()})):Ie("td",{class:"wf-table-td wf-table-td--editable",key:`${M}-${D.key}`,style:{cursor:"text",...v(D)??{}},onClick:()=>r(M,D.key,O)},D.render?D.render(O,C,M):String(O??""));let K=D.render?D.render(O,C,M):String(O??"");return Ie("td",{class:"wf-table-td",key:`${M}-${D.key}`,style:v(D)},K)}),R=$(C,M);return Ie("tr",{key:String(w(C,M)),class:"wf-table-tr",onClick:c?()=>c(C,M):void 0,style:c?{cursor:"pointer"}:void 0},[R,...S].filter(Boolean))});let U=Ie("tbody",{class:"wf-table-tbody"},V),L=Ie("table",{class:"wf-table",style:s.minWidth?{minWidth:s.minWidth}:void 0},[q,U]);return Ie("div",{class:"wf-table-wrap"},L)}};import{h as Ot}from"weifuwu/vdom";var Xo=(o,e)=>{let t=!1,n,r=null;return e.ui.useGlobalKey(a=>{a.key==="Escape"&&r?.open&&t&&n?.()}),e.ui.onUnmount?.(()=>{r&&r.close()}),a=>{let{open:s,title:i,onClose:l,children:c,footer:f,width:g,closable:u=!0,maskClosable:d=!0}=a;n=l,t=!!s;let p=e?.i18n?.components?.Modal??{},h=Ot("div",{class:"wf-modal-overlay",onClick:d?l:void 0}),m=u?Ot("button",{class:"wf-modal-close",onClick:l,type:"button","aria-label":p.closeAria??"\u5173\u95ED"},Ot(H,{name:"close"})):null,b=i?Ot("div",{class:"wf-modal-header"},[i,m].filter(Boolean)):null,v=Ot("div",{class:"wf-modal-body"},c),w=f?Ot("div",{class:"wf-modal-footer"},f):null,y=Ot("div",{class:"wf-modal-content",onClick:k=>k.stopPropagation(),style:g?{minWidth:`min(${g}, calc(100vw - 32px))`,maxWidth:`min(${g}, calc(100vw - 32px))`}:void 0},[b,v,w].filter(Boolean)),x=Ot("div",{class:`wf-modal ${s?"wf-modal--enter":"wf-modal--exit"}`,role:"dialog","aria-modal":"true","aria-label":i??p.ariaLabel??"\u5F39\u7A97"},[h,y]);return s&&!r?r=e.ui.openPopup({key:"modal",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>x,onClose:()=>{r=null}}):!s&&r?(r.update(x),r.close(),r=null):r&&r.update(x),null}};import{createClientBrowser as us}from"weifuwu/vdom";import{h as mo}from"weifuwu/vdom";import{renderToStreamV2 as Va}from"weifuwu/vdom";import{disposeSegment as Ka}from"weifuwu/vdom";import{CommandApplier as ja}from"weifuwu/vdom";import{createComponentRegistry as Fa}from"weifuwu/vdom";var su=us();function Ga(o,e){return new Promise(t=>{let n=document.createElement("div");document.body.appendChild(n);let r=Fa(),a=new ja(n,document,r),s=new Map,i=!1,l=g=>{if(!i){i=!0;for(let[u]of[...s])Ka(u,s);a.dispose(),n.remove(),t(g)}},c={render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:us()},f=mo(ms,{open:!0,message:o,...e,onConfirm:()=>l(!0),onCancel:()=>l(!1)});Va(f,c,r,s).pipeTo(new WritableStream({write(g){a.apply(g)}})).catch(()=>l(!1))})}var ms=(o,e)=>t=>{let{open:n=!1,title:r,message:a,confirmText:s,cancelText:i,variant:l="primary",width:c,maskClosable:f=!1,onConfirm:g,onCancel:u}=t,d=e?.i18n?.components?.Confirm??{},p=[mo(Ye,{variant:"secondary",size:"md",onClick:()=>u?.()},i??d.cancelText??"\u53D6\u6D88"),mo(Ye,{variant:l,size:"md",onClick:()=>g?.()},s??d.confirmText??"\u786E\u5B9A")];return mo(Xo,{open:n,title:r,onClose:u??t.onClose,maskClosable:f,footer:p,width:c,closable:!1},a)};import{createClientBrowser as Wa}from"weifuwu/vdom";import{h as rn}from"weifuwu/vdom";var mu=Wa();function qa(o){return{"top-right":"wf-toast--tr","top-left":"wf-toast--tl","bottom-right":"wf-toast--br","bottom-left":"wf-toast--bl","top-center":"wf-toast--tc"}[o]??"wf-toast--tr"}var Xa=(o,e)=>{let t=null;return n=>{let{toasts:r=[],onRemove:a,position:s="top-right",duration:i=0,max:l=0}=n,c=l>0&&r.length>l?r.slice(-l):r,f=c.map(u=>rn("div",{class:`wf-toast wf-toast--${u.type}`,key:u.id,role:u.type==="error"?"alert":"status","aria-live":u.type==="error"?"assertive":"polite","data-id":u.id,"data-duration":(u.duration??i)||void 0,onClick:a?()=>a(u.id):void 0},[rn("span",{class:"wf-toast-icon"},rn(H,{name:Ya(u.type)})),rn("span",{class:"wf-toast-msg"},u.message),u.action?rn("button",{class:`wf-toast-action wf-toast-action--${u.type}`,type:"button",onClick:d=>{d.stopPropagation(),u.action.onClick()}},u.action.label):null].filter(Boolean))),g=rn("div",{class:`wf-toast-container ${qa(s)}`,"data-max":l||void 0},f);return c.length>0&&!t?t=e.ui.openPopup({key:"toast",positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>g,onClose:()=>{t=null}}):c.length===0&&t?(t.close(),t=null):t&&t.update(g),null}};function Ya(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info";default:return"info"}}import{h as sn}from"weifuwu/vdom";var Yo=(o,e)=>t=>{let{variant:n="info",closable:r,onClose:a,children:s}=t;if(!s)return null;let i=sn("span",{class:"wf-alert-icon"},sn(H,{name:Ja(n)})),l=r?sn("button",{class:"wf-alert-close",onClick:a,type:"button","aria-label":"\u5173\u95ED"},sn(H,{name:"close"})):null,c=sn("span",{class:"wf-alert-msg"},s);return sn("div",{class:`wf-alert wf-alert--${n}`,role:"alert"},[i,c,l].filter(Boolean))};function Ja(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info"}}import{h as Jo}from"weifuwu/vdom";var Za=(o,e)=>t=>{let{text:n="\u52A0\u8F7D\u4E2D..."}=t;return Jo("div",{class:"wf-loading",role:"status","aria-live":"polite"},[Jo("div",{class:"wf-loading-spinner"}),Jo("span",{class:"wf-loading-text"},n)])};import{h as an}from"weifuwu/vdom";var Qa=(o,e)=>t=>{let{icon:n=an(H,{name:"inbox"}),text:r="\u6682\u65E0\u6570\u636E",hint:a,children:s}=t,i=[an("div",{class:"wf-empty-icon"},n),an("div",{class:"wf-empty-text"},r)];return a&&i.push(an("div",{class:"wf-empty-hint"},a)),s&&i.push(an("div",{class:"wf-empty-action"},s)),an("div",{class:"wf-empty",role:"status"},i)};import{createClientBrowser as el}from"weifuwu/vdom";import{h as it}from"weifuwu/vdom";var tl=(o,e)=>{let t=e?.browser??el(),n=0,r=0,a=null,s=c=>{c&&(n=c.offsetLeft,r=c.offsetWidth,e.render())},i=()=>{a&&s(a.querySelector(".wf-tab--active"))},l=c=>{c&&(a=c,queueMicrotask(i))};return c=>{let{items:f=[],closable:g,onClose:u,addable:d,onAdd:p}=c;if(f.length===0)return null;g&&!u&&console.warn("[Tabs] closable \u672A\u914D onClose\u2014\u2014\u5173\u95ED\u6309\u94AE\u9759\u9ED8\u5931\u6548"),d&&!p&&console.warn("[Tabs] addable \u672A\u914D onAdd\u2014\u2014\u65B0\u589E\u6309\u94AE\u9759\u9ED8\u5931\u6548");let h=e?.ui?.useControlled({value:c.active,onChange:c.onChange,name:"Tabs"}),m=P=>{let I=h?.controlled?.value!==void 0;h?.setValue(P),I||c.onChange?.(P)},b=h?.value??f[0].key,v=(P,I)=>{if(I.stopPropagation(),P===b){let A=f.findIndex(N=>N.key===P),$=f[A+1]??f[A-1];$&&m($.key)}u?.(P)},w=P=>{let I=P.currentTarget,A=Array.from(I.querySelectorAll(".wf-tab")),$=A.indexOf(t?.activeElement()??null);if($<0||!h)return;let N=$;if(P.key==="ArrowRight")N=($+1)%A.length;else if(P.key==="ArrowLeft")N=($-1+A.length)%A.length;else if(P.key==="Home")N=0;else if(P.key==="End")N=A.length-1;else return;P.preventDefault();let B=f[N];B&&B.key!==f[$].key&&(m(B.key),A[N].focus(),s(A[N]))},y=f.map(P=>it("button",{class:`wf-tab${P.key===b?" wf-tab--active":""}`,key:P.key,role:"tab",tabindex:P.key===b?0:-1,"aria-selected":P.key===b?"true":"false",onClick:P.key!==b?(I=>{s(I?.currentTarget),m(P.key)}):void 0},[P.label,g&&P.closable!==!1?it("span",{class:"wf-tab-close",role:"button","aria-label":`\u5173\u95ED ${P.label}`,tabindex:-1,onClick:I=>v(P.key,I)},it("svg",{viewBox:"0 0 24 24",width:12,height:12,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},it("path",{d:"M18 6L6 18M6 6l12 12"}))):null])),x=d?it("button",{key:"wf-tab-add",class:"wf-tab-add",role:"tab","aria-label":"\u65B0\u589E\u6807\u7B7E\u9875",onClick:()=>p?.()},it("svg",{viewBox:"0 0 24 24",width:14,height:14,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},it("path",{d:"M12 5v14M5 12h14"}))):null,k=it("span",{key:"wf-tab-ink",class:"wf-tab-ink",style:{transform:`translateX(${n}px)`,width:`${r}px`},"aria-hidden":"true"}),E=f.find(P=>P.key===b),T=E?.content?it("div",{class:"wf-tab-content",role:"tabpanel"},E.content):null;return it("div",{class:"wf-tabs",role:"tablist",onKeyDown:w},[it("div",{class:"wf-tab-list",ref:l},[...y,x,k]),T].filter(Boolean))}};import{h as ln}from"weifuwu/vdom";var nl=(o,e)=>{let t=null;return n=>{let{items:r,activeKey:a,onChange:s,fixed:i,className:l}=n,c=a!==void 0;c&&!s&&console.warn("[TabBar] activeKey \u53D7\u63A7\u4F20\u5165\u4F46\u672A\u914D onChange\u2014\u2014\u70B9\u51FB\u9759\u9ED8\u5931\u6548");let f=c?a:t??r[0]?.key??null,g=d=>{let p=r.findIndex(w=>w.key===f),h=d.key==="ArrowRight"?1:d.key==="ArrowLeft"?-1:0;if(h===0)return;d.preventDefault();let m=-1;for(let w=1;w<=r.length;w++){let y=(p+h*w+r.length)%r.length;if(!r[y]?.disabled){m=y;break}}if(m===-1)return;let b=r[m];c||(t=b.key),s?.(b.key),e.render(),e.browser?.byId?.(`wf-tab-${b.key}`)?.focus()},u=r.map(d=>{let p=d.key===f,h=typeof d.icon=="string"?ln(H,{name:d.icon,size:20,className:"wf-tab-bar-icon"}):d.icon;return ln("button",{key:d.key,id:`wf-tab-${d.key}`,type:"button",role:"tab",class:["wf-tab-bar-item",p?"wf-tab-bar-item--active":"",d.disabled?"wf-tab-bar-item--disabled":""].filter(Boolean).join(" "),tabindex:p?0:-1,"aria-selected":p?"true":"false",disabled:d.disabled||void 0,onClick:d.disabled?void 0:()=>{c||(t=d.key),s?.(d.key),e.render()}},[ln("span",{class:"wf-tab-bar-icon-wrap"},[h??null,d.badge!==void 0&&d.badge!==null?ln("span",{class:"wf-tab-bar-badge"},String(d.badge)):null]),ln("span",{class:"wf-tab-bar-label"},d.label)])});return ln("nav",{class:["wf-tab-bar",i?"wf-tab-bar--fixed":"",l??""].filter(Boolean).join(" "),role:"tablist","aria-label":"\u5E95\u90E8\u5BFC\u822A",onKeyDown:g},u)}};import{h as Pt}from"weifuwu/vdom";var ol=(o,e)=>{let t=!1,n="",r=null;e.ui.onUnmount?.(()=>{r&&r.close()});let a;return e.ui.useGlobalKey(s=>{s.key==="Escape"&&r?.open&&t&&a?.()}),s=>{let{open:i,items:l,onSelect:c,onClose:f,cancelText:g,title:u}=s;t=i,a=f;let d=w=>{let y=l.findIndex(k=>k.key===n),x=w.key==="ArrowDown"?1:w.key==="ArrowUp"?-1:0;if(x!==0){w.preventDefault();let k=-1;for(let T=1;T<=l.length;T++){let P=(y+x*T+l.length)%l.length;if(!l[P]?.disabled){k=P;break}}if(k===-1)return;n=l[k].key,e.render(),document.querySelector(`[data-actionsheet-key="${n}"]`)?.focus();return}if(w.key==="Enter"&&n){let k=l.find(E=>E.key===n);k&&!k.disabled&&(c?.(k.key),f())}};l.some(w=>w.key===n)||(n=l[0]?.key??"");let p=Pt("div",{class:"wf-actionsheet-overlay",onClick:f}),h=l.map(w=>{let y=typeof w.icon=="string"?Pt(H,{name:w.icon,size:18,className:"wf-actionsheet-icon"}):w.icon;return Pt("button",{key:w.key,type:"button",role:"menuitem","data-actionsheet-key":w.key,class:["wf-actionsheet-item",w.danger?"wf-actionsheet-item--danger":"",w.disabled?"wf-actionsheet-item--disabled":""].filter(Boolean).join(" "),disabled:w.disabled||void 0,onClick:w.disabled?void 0:()=>{c?.(w.key),f()}},[y??null,Pt("span",{class:"wf-actionsheet-item-label"},w.label)])}),m=Pt("button",{type:"button",class:"wf-actionsheet-cancel",onClick:f},g??"\u53D6\u6D88"),b=Pt("div",{class:"wf-actionsheet-panel",role:"menu","aria-label":u??"\u64CD\u4F5C\u9762\u677F",onKeyDown:d,onClick:w=>w.stopPropagation()},[u?Pt("div",{class:"wf-actionsheet-title"},u):null,...h,Pt("div",{class:"wf-actionsheet-divider"}),m]),v=Pt("div",{class:`wf-actionsheet ${i?"wf-actionsheet--enter":"wf-actionsheet--exit"}`,role:"dialog","aria-modal":"true","aria-label":u??"\u64CD\u4F5C\u9762\u677F",tabIndex:-1},[p,b]);return i&&!r?r=e.ui.openPopup({key:"actionsheet",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>v,onClose:()=>{r=null}}):!i&&r?(r.update(v),r.close(),r=null):r&&r.update(v),null}};import{h as St}from"weifuwu/vdom";var rl=(o,e)=>{let t=null,n=r=>{t=r};return r=>{let{value:a="",onChange:s,variables:i=[],values:l={},readOnly:c,label:f,showPreview:g=!0,className:u}=r,d=v=>{let w=`{{${v}}}`;if(!s)return;let y=t;if(!y){s(a+w);return}let x=y.selectionStart??a.length,k=y.selectionEnd??a.length,E=a.slice(0,x)+w+a.slice(k);s(E),queueMicrotask(()=>{y.focus();let T=x+w.length;y.setSelectionRange(T,T)})},p=a.replace(/\{\{([a-zA-Z0-9_]+)\}\}/g,(v,w)=>l[w]??v),h=i.length>0?St("div",{class:"wf-prompt-chips"},[St("span",{class:"wf-prompt-chips-hint"},"\u63D2\u5165\u53D8\u91CF\uFF1A"),...i.map(v=>St("button",{key:v.name,type:"button",class:"wf-prompt-chip",title:v.description??`{{${v.name}}}`,disabled:c||void 0,onClick:()=>d(v.name)},`{{${v.name}}}`))]):null,m=St("textarea",{class:"wf-prompt-editor",ref:n,value:a,readOnly:c||void 0,placeholder:"\u8F93\u5165\u63D0\u793A\u8BCD\u6A21\u677F\u2026\uFF08\u70B9\u51FB\u4E0A\u65B9\u53D8\u91CF\u63D2\u5165\u5360\u4F4D\uFF09","aria-label":f??"\u63D0\u793A\u8BCD\u6A21\u677F",onInput:s?v=>s(v.target.value):void 0}),b=g&&!c?St("div",{class:"wf-prompt-preview"},[St("div",{class:"wf-prompt-preview-title"},"\u9884\u89C8\uFF08\u53D8\u91CF\u586B\u5145\uFF09"),St("div",{class:"wf-prompt-preview-body"},p||"\uFF08\u7A7A\u6A21\u677F\uFF09")]):null;return St("div",{class:["wf-prompt-template",u??""].filter(Boolean).join(" ")},[f?St("div",{class:"wf-prompt-label"},f):null,h,m,b])}};import{h as Zo}from"weifuwu/vdom";var sl=(o,e)=>{let t=null,n=l=>{t=l},r=null,a=null,s=0,i=!1;return e.ui.onUnmount?.(()=>{a&&a.close()}),l=>{let{trigger:c,items:f=[]}=l;r=e.ui.useOpen({open:l.open,onOpenChange:l.onOpenChange,name:"Dropdown"});let g=!!r?.open;g&&!i&&(s=0),i=g;let u=h=>{let m=h.key;if(m==="Escape")return;let b=f.map((y,x)=>y.disabled?-1:x).filter(y=>y>=0);if(!b.length)return;let v=b.indexOf(s),w=v>=0?v:0;if(m==="ArrowDown"||m==="ArrowRight")h.preventDefault(),s=b[Math.min(w+1,b.length-1)],e.render();else if(m==="ArrowUp"||m==="ArrowLeft")h.preventDefault(),s=b[Math.max(w-1,0)],e.render();else if(m==="Home")h.preventDefault(),s=b[0],e.render();else if(m==="End")h.preventDefault(),s=b[b.length-1],e.render();else if(m==="Enter"||m===" "){let y=f[s];y&&!y.disabled&&(h.preventDefault(),y.onClick?.(),r?.setOpen(!1))}},d=f.map((h,m)=>Zo("button",{class:["wf-dropdown-item",h.variant==="danger"?" wf-dropdown-item--danger":"",m===s&&g?" wf-dropdown-item--hl":""].filter(Boolean).join(" "),key:h.value??m,disabled:h.disabled||void 0,role:"menuitem","aria-selected":String(m===s&&g),onClick:h.disabled?void 0:()=>{h.onClick?.()}},h.label)),p=Zo("div",{class:"wf-dropdown-menu",role:"menu",onKeyDown:u},d);return r?.open&&!a?a=e.ui.openPopup({anchor:()=>t,content:()=>p,onClose:()=>{a=null,r?.setOpen(!1)}}):!r?.open&&a?(a.close(),a=null):a&&a.update(p),Zo("div",{class:`wf-dropdown${r?.open?" wf-dropdown--open":""}`,ref:n,onClick:h=>{h.stopPropagation?.(),r?.setOpen(!r.open)},"aria-haspopup":"menu","aria-expanded":String(!!r?.open)},c)}};import{h as Wt}from"weifuwu/vdom";var il=(o,e)=>t=>{let{total:n,pageSize:r=20}=t,a=e?.ui?.useControlled({value:t.page,onChange:t.onChange,name:"Pagination"}),s=a?.value??1,i=u=>{let d=a?.controlled?.value!==void 0;a?.setValue(u),d||t.onChange?.(u)},l=e?.i18n?.components?.Pagination??{},c=Math.max(1,Math.ceil(n/r));if(c<=1)return null;let f=[];f.push(Wt("button",{class:`wf-page-btn${s<=1?" wf-page-btn--disabled":""}`,disabled:s<=1,"aria-label":l.prevAria??"\u4E0A\u4E00\u9875",onClick:s>1?()=>i(s-1):void 0},Wt(H,{name:"chevron-left"})));let g=al(s,c);for(let u of g)u==="..."?f.push(Wt("span",{class:"wf-page-ellipsis"},"...")):f.push(Wt("button",{class:`wf-page-btn${u===s?" wf-page-btn--active":""}`,"aria-current":u===s?"page":void 0,onClick:u!==s?()=>i(u):void 0},String(u)));return f.push(Wt("button",{class:`wf-page-btn${s>=c?" wf-page-btn--disabled":""}`,disabled:s>=c,"aria-label":l.nextAria??"\u4E0B\u4E00\u9875",onClick:s<c?()=>i(s+1):void 0},Wt(H,{name:"chevron-right"}))),Wt("nav",{class:"wf-pagination","aria-label":l.ariaLabel??"\u5206\u9875"},f)};function al(o,e){if(e<=7)return Array.from({length:e},(a,s)=>s+1);let t=[1];o>3&&t.push("...");let n=Math.max(2,o-1),r=Math.min(e-1,o+1);for(let a=n;a<=r;a++)t.push(a);return o<e-2&&t.push("..."),t.push(e),t}import{h as ll}from"weifuwu/vdom";var Qo=(o,e)=>t=>{let{variant:n="default",padding:r="md",clickable:a,hover:s,active:i,onClick:l,className:c,id:f,style:g,children:u}=t,d=["wf-card",`wf-card--${n}`,`wf-card--pad-${r}`,a&&"wf-card--clickable",s&&"wf-card--hover",i&&"wf-card--active",(a||s)&&"wf-elevate"].filter(Boolean).join(" ");return ll("div",{class:c?`${d} ${c}`:d,id:f,style:g,onClick:l,role:a?"button":void 0,tabindex:a?0:void 0,onKeyDown:a?p=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),l?.())}:void 0},u)};import{h as er}from"weifuwu/vdom";var cl=(o,e)=>t=>{let{variant:n="default",dot:r,children:a,count:s,overflowCount:i=99,showZero:l=!1,...c}=t;if(r)return er("span",{class:`wf-badge-dot wf-badge-dot--${n}`,...c});if(s!=null){if(s===0&&!l)return null;let f=s>i?`${i}+`:String(s);return er("span",{class:`wf-badge wf-badge--count wf-badge--${n}`,"aria-label":`${s>i?`\u8D85\u8FC7 ${i}`:s} \u6761`,...c},f)}return er("span",{class:`wf-badge wf-badge--${n}`,...c},a??"")};import{h as hs}from"weifuwu/vdom";var gs=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899"];function dl(o){let e=0;for(let t=0;t<o.length;t++)e=o.charCodeAt(t)+((e<<5)-e);return gs[Math.abs(e)%gs.length]}var cn=(o,e)=>t=>{let{name:n="",src:r,size:a="md",color:s}=t,i=Array.from(n.trim())[0]?.toUpperCase()??"?";return r?hs("img",{class:`wf-avatar wf-avatar--${a}`,src:r,alt:n}):hs("div",{class:`wf-avatar wf-avatar--${a}`,style:{background:s??dl(n)}},i)};import{h as ho}from"weifuwu/vdom";var pl=(o,e)=>t=>{let{closable:n,onClose:r,variant:a="default",children:s}=t,i=n?ho("button",{class:"wf-tag-close",onClick:r,type:"button","aria-label":"\u79FB\u9664"},ho(H,{name:"close"})):null;return ho("span",{class:`wf-tag wf-tag--${a}`},[ho("span",{class:"wf-tag-text"},s),i].filter(Boolean))};import{h as Ht}from"weifuwu/vdom";var fl=(o,e)=>{let t=e.ui.useTween(0,{duration:400,ease:"easeOutCubic"}),n=0,r=null,a,s,i=()=>{r&&(clearInterval(r),r=null)},l=()=>{a!==void 0&&(n=Math.max(0,Math.ceil((a-Date.now())/1e3)),n<=0&&(i(),s?.()),e.render())},c=()=>{r||typeof window>"u"||(r=setInterval(l,1e3))};return e.ui.hold(i),o.countdown!==void 0&&queueMicrotask(c),f=>{let{label:g,value:u,trend:d,trendLabel:p,icon:h,onClick:m,animate:b,countdown:v,onFinish:w}=f;s=w;let y=typeof u=="number"?u:0;b&&typeof u=="number"&&t.reset(y),t.value=y,a=v,v!==void 0?(n=Math.max(0,Math.ceil((v-Date.now())/1e3)),r||queueMicrotask(c)):r&&i();let x=v!==void 0?(()=>{let E=Math.floor(n/3600),T=Math.floor(n%3600/60),P=n%60,I=A=>String(A).padStart(2,"0");return E>0?`${I(E)}:${I(T)}:${I(P)}`:`${I(T)}:${I(P)}`})():String(typeof u=="number"?t.value:u??""),k=[];return h&&k.push(Ht("div",{class:"wf-stat-icon"},h)),k.push(Ht("div",{class:"wf-stat-value wf-nums"},x)),k.push(Ht("div",{class:"wf-stat-label"},g)),d&&k.push(Ht("div",{class:`wf-stat-trend wf-stat-trend--${d}`},[Ht("span",{class:"wf-stat-trend-arrow"},Ht(H,{name:d==="up"?"arrow-up":"arrow-down"})),p?Ht("span",{class:"wf-stat-trend-label"},p):null].filter(Boolean))),Ht("div",{class:`wf-stat${m?" wf-stat--clickable":""}${m?" wf-elevate":""}`,onClick:m,role:m?"button":void 0,tabindex:m?0:void 0,onKeyDown:m?E=>{(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),m())}:void 0},k)}};import{h as Bt}from"weifuwu/vdom";var ul=(o,e)=>t=>{let{items:n=[],active:r,current:a=0}=t,s=r??n[a]?.key,i=n.map((l,c)=>{let f=n.findIndex(v=>v.key===s),g=c<f,u=c===f,d=["wf-step",g&&"wf-step--done",u&&"wf-step--current"].filter(Boolean).join(" "),p=g?Bt("span",{class:"wf-step-num"},Bt(H,{name:"check"})):Bt("span",{class:"wf-step-num"},String(c+1)),h=Bt("span",{class:"wf-step-label"},l.label),m=l.description?Bt("span",{class:"wf-step-desc"},l.description):null,b=c<n.length-1?Bt("span",{class:`wf-step-connector${g?" wf-step-connector--done":""}`}):null;return Bt("div",{class:d,key:l.key,role:"listitem","aria-current":u?"step":void 0},[p,h,m,b].filter(Boolean))});return Bt("div",{class:"wf-steps",role:"list"},i)};import{h as ml}from"weifuwu/vdom";async function hl(o,e){let t={};for(let[n,r]of Object.entries(e)){let a=o[n]??"";for(let s of r){if(s.required&&!String(a).trim()){t[n]=s.message;break}if(s.pattern&&!s.pattern.test(String(a))){t[n]=s.message;break}if(s.minLength!=null&&String(a).length<s.minLength){t[n]=s.message;break}if(s.maxLength!=null&&String(a).length>s.maxLength){t[n]=s.message;break}if(s.validator){let i=await s.validator(a);if(i!==!0){t[n]=typeof i=="string"?i:s.message;break}}}}return t}var gl=(o,e)=>t=>{let{validation:n,onSubmit:r,onError:a,children:s}=t;return ml("form",{class:"wf-form",onSubmit:async l=>{l.preventDefault();let c=l.target,f=new FormData(c),g={};for(let[u,d]of f.entries())if(u in g){let p=g[u];g[u]=Array.isArray(p)?[...p,d]:[p,d]}else g[u]=d;if(n){let u=await hl(g,n);if(Object.keys(u).length>0){a?.(u);return}a?.({})}await r?.(g)},noValidate:n?!0:void 0},s)};import{h as Rn}from"weifuwu/vdom";var dn=(o,e)=>t=>{let{label:n,required:r,error:a,hint:s,children:i}=t,l=[];if(n){let c=[n];r&&c.push(Rn("span",{class:"wf-field-req"},"*")),l.push(Rn("label",{class:"wf-field-label"},c))}return l.push(i),a&&l.push(Rn("div",{class:"wf-field-err"},a)),s&&!a&&l.push(Rn("div",{class:"wf-field-hint"},s)),Rn("div",{class:`wf-field${a?" wf-field--err":""}`},l)};import{h as Me}from"weifuwu/vdom";import{createClientBrowser as bs}from"weifuwu/vdom";var bl=(o,e)=>{let t=null,n=null,r=null,a=null,s=!1,i=!1,l=null,c=null,f=w=>{t=w},g=w=>{n=w},u=w=>{r=w},d=()=>{t&&a!==null&&Number(t.value)!==a&&(t.value=String(a))};(e.browser??bs()).onFormRestore?.(d);let h=w=>{s!==w&&(s=w,e.render())},m=null,b=w=>{s&&!m?m=e.ui.openPopup({key:"slider-tooltip",anchor:()=>c==="lo"?n:c==="hi"?r:t,position:()=>l?{x:l.left,y:l.top}:{x:0,y:0},content:()=>w,onClose:()=>{m=null,s&&h(!1)}}):!s&&m?(m.close(),m=null):m&&m.update(w)},v=e.browser??bs();return w=>{let{label:y,value:x=0,min:k=0,max:E=100,step:T=1,onChange:P,onChangeEnd:I,disabled:A,marks:$,range:N,onRangeChange:B,onRangeChangeEnd:q}=w,V=Number(Array.isArray(x)?x[0]:x),U=Array.isArray(x)?[Math.min(Number(x[0]),Number(x[1])),Math.max(Number(x[0]),Number(x[1]))]:[V,V],L=E-k,C=fe=>L>0?Math.min(100,Math.max(0,(fe-k)/L*100)):0,M=C(V),S=C(U[0]),R=C(U[1]),D=L>0&&T>0?T/L*100:1,O=fe=>{let Ae=k+Number(fe)/100*L,Se=T>0?Math.round((Ae-k)/T)*T+k:Ae;return Math.min(E,Math.max(k,Se))};a=M;let K=9,Y=fe=>`calc(${K}px + (100% - ${K*2}px) * ${fe})`,Q=(fe,Ae)=>K+Ae*(fe-K*2),G=`calc(${K}px + (100% - ${K*2}px) * ${M/100})`,X=`linear-gradient(to right, var(--wf-color-primary) ${G}, var(--wf-color-border) ${G})`;if(l=null,s&&!A){let fe=N?c==="lo"?n:r:t,Ae=N?c==="lo"?S:R:M;if(fe){let Se=fe.getBoundingClientRect();Se.width>0&&(l={left:Math.round(Se.left+Q(Se.width,Ae/100)),top:Math.round(Se.top-36)})}}if(N){let fe=Ce=>Math.min(Ce,U[1]-T),Ae=Ce=>Math.max(Ce,U[0]+T),Se=c==="lo"?U[0]:U[1],En=(Ce,io,vt,_)=>Me("input",{type:"range",class:`wf-slider-input ${Ce==="hi"?"wf-slider-input--hi":"wf-slider-input--lo"}`,ref:Ce==="lo"?g:u,value:vt,min:0,max:100,step:D,disabled:A||void 0,autocomplete:"off","aria-label":Ce==="lo"?`${y??"\u8303\u56F4"}\u4E0B\u9650`:`${y??"\u8303\u56F4"}\u4E0A\u9650`,"aria-disabled":A?"true":void 0,onInput:A?void 0:z=>{let Z=_(O(Number(z.target.value)));B?.([Ce==="lo"?Z:U[0],Ce==="hi"?Z:U[1]]),m?.refresh()},onChange:A?void 0:z=>{let Z=_(O(Number(z.target.value)));B?.([Ce==="lo"?Z:U[0],Ce==="hi"?Z:U[1]]),m?.refresh()},onPointerDown:A?void 0:()=>{i=!0,c=Ce,h(!0)},onPointerUp:A?void 0:z=>{i=!1;let Z=_(O(Number(z.target.value)));q?.([Ce==="lo"?Z:U[0],Ce==="hi"?Z:U[1]]),h(!1)},onPointerCancel:A?void 0:()=>{i=!1,h(!1)},onMouseEnter:A?void 0:()=>{c=Ce,h(!0)},onMouseLeave:A?void 0:()=>{i||h(!1)},onFocus:A?void 0:()=>{c=Ce,h(!0)},onBlur:A?void 0:()=>{i||h(!1)}}),yt=`calc((100% - ${K*2}px) * ${(R-S)/100})`,_o=Me("span",{class:"wf-slider-value"},`${U[0]} - ${U[1]}`),wt=A?null:Me("div",{class:"wf-slider-tip"},String(Se)),Vo=$?.length?Me("div",{class:"wf-slider-marks"},$.map(Ce=>{let io=C(Ce.value);return Me("div",{key:`mark-${Ce.value}`,class:"wf-slider-mark",style:{left:Y(io/100)}},[Me("span",{class:"wf-slider-mark-dot"}),Ce.label?Me("span",{class:"wf-slider-mark-label"},Ce.label):null])})):null,Je=Me("div",{class:"wf-slider-track wf-slider-range"},[Me("div",{class:"wf-slider-range-fill",style:{left:Y(S/100),width:yt}}),En("lo",U[0],S,fe),En("hi",U[1],R,Ae),Vo]),so=Me("div",{class:"wf-slider"},[Je,_o]);return b(wt),y?Me("div",{class:"wf-slider-wrap"},[Me("label",{class:"wf-slider-label"},y),so]):Me("div",{class:"wf-slider-wrap"},[so])}let W=Me("input",{type:"range",class:["wf-slider-input",A?"wf-slider-input--dis":""].filter(Boolean).join(" "),ref:f,"aria-expanded":String(s),value:M,min:0,max:100,step:D,disabled:A||void 0,autocomplete:"off","aria-label":y,"aria-disabled":A?"true":void 0,style:{background:X},onInput:A||!P?void 0:fe=>{P(O(Number(fe.target.value))),m?.refresh()},onChange:A||!P?void 0:fe=>{P(O(Number(fe.target.value))),m?.refresh()},onPointerDown:A?void 0:()=>{i=!0,h(!0)},onPointerUp:A?void 0:fe=>{i=!1,I?.(O(Number(fe.target.value))),h(!1)},onPointerCancel:A?void 0:()=>{i=!1,h(!1)},onMouseEnter:A?void 0:()=>h(!0),onMouseLeave:A?void 0:()=>{i||h(!1)},onFocus:A?void 0:()=>h(!0),onBlur:A?void 0:()=>{i||h(!1)}}),J=Me("span",{class:"wf-slider-value"},String(V)),ee=A?null:Me("div",{class:"wf-slider-tip"},String(V)),ue=$?.length?Me("div",{class:"wf-slider-marks"},$.map(fe=>{let Ae=L>0?Math.min(100,Math.max(0,(fe.value-k)/L*100)):0;return Me("div",{key:`mark-${fe.value}`,class:"wf-slider-mark",style:{left:Y(Ae/100)}},[Me("span",{class:"wf-slider-mark-dot"}),fe.label?Me("span",{class:"wf-slider-mark-label"},fe.label):null])})):null,ie=Me("div",{class:"wf-slider-track"},[W,ue]),he=Me("div",{class:"wf-slider"},[ie,J]);return b(ee),y?Me("div",{class:"wf-slider-wrap"},[Me("label",{class:"wf-slider-label"},y),he]):Me("div",{class:"wf-slider-wrap"},[he])}};import{h as pn}from"weifuwu/vdom";var yl=(o,e)=>{let t=!1;return n=>{let{value:r,placeholder:a="\u641C\u7D22...",onInput:s,onClear:i,disabled:l}=n,c=r!==void 0,f=r??"",g=c&&f&&i?pn("button",{class:"wf-search-clear",type:"button","aria-label":"\u6E05\u9664",onClick:i},pn(H,{name:"close"})):null,u=pn("span",{class:"wf-search-icon"},pn(H,{name:"search"}));return pn("div",{class:g?"wf-search wf-search--has-clear":"wf-search"},[u,pn("input",{class:["wf-search-input",l?"wf-search-input--dis":""].filter(Boolean).join(" "),type:"search",value:c?f:void 0,placeholder:a,disabled:l||void 0,"aria-disabled":l?"true":void 0,onInput:d=>{t||d.isComposing||s?.(d)},onCompositionStart:()=>{t=!0},onCompositionEnd:d=>{t=!1,s?.(d)}}),g].filter(Boolean))}};import{h as ys}from"weifuwu/vdom";var wl=(o,e)=>t=>{let{options:n,size:r="md",block:a,ariaLabel:s}=t,i=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"SegmentedControl"}),l=f=>{let g=i?.controlled?.value!==void 0;i?.setValue(f),g||t.onChange?.(f)},c=["wf-segmented",r==="sm"&&"wf-segmented--sm",a&&"wf-segmented--block"].filter(Boolean).join(" ");return ys("div",{class:c,role:"group","aria-label":s},n.map(f=>ys("button",{type:"button",key:f.value,class:`wf-segmented-option${f.value===i?.value?" wf-segmented-option--active":""}`,"aria-pressed":f.value===i?.value?"true":"false",disabled:f.disabled||void 0,onClick:f.disabled?void 0:()=>l(f.value)},f.label)))};import{h as Nn}from"weifuwu/vdom";var vl=(o,e)=>t=>{let{value:n,max:r=100,label:a,showValue:s,status:i="default",size:l="md"}=t,c=n==null,f=c?0:Math.min(100,Math.max(0,n/r*100)),g=e?.i18n?.components?.ProgressBar??{},u=Nn("div",{class:`wf-progress wf-progress--${l}${c?" wf-progress--indeterminate":""}${i!=="default"?` wf-progress--${i}`:""}`,role:"progressbar","aria-valuenow":c?void 0:Math.round(n),"aria-valuemin":0,"aria-valuemax":Math.round(r),"aria-label":a??g.ariaLabel??"\u8FDB\u5EA6"},[Nn("div",{class:`wf-progress-fill${i!=="default"?` wf-progress-fill--${i}`:""}`,style:c?void 0:{width:`${f}%`}})]);if(!a&&!s)return u;let d=[];return a&&d.push(Nn("span",{class:"wf-progress-label"},a)),d.push(u),s&&!c&&d.push(Nn("span",{class:"wf-progress-value"},`${Math.round(f)}%`)),Nn("div",{class:"wf-progress-wrap"},d)};import{createClientBrowser as xl}from"weifuwu/vdom";import{h as On}from"weifuwu/vdom";var kl=(o,e)=>{let t=e.browser??xl(),n=[],r=[],a=new Map,s=i=>{let l=a.get(i);return l||(l=c=>{c&&(r[i]=c)},a.set(i,l)),l};return i=>{let{items:l=[],active:c,onChange:f,multiple:g=!1}=i;n.length===0&&l.length>0&&(n=l.map(w=>w.key));let u=c!==void 0,d=u?c:n,p=w=>d.includes(w),h=w=>{u?f?.(w):(n=w,e.render())},m=w=>{p(w)?h(d.filter(y=>y!==w)):h(g?[...d,w]:[w])},b=w=>{let y=t?.activeElement()??null,x=r.indexOf(y);if(x<0)return;let k=x;if(w.key==="ArrowDown"||w.key==="ArrowRight")k=(x+1)%l.length;else if(w.key==="ArrowUp"||w.key==="ArrowLeft")k=(x-1+l.length)%l.length;else return;w.preventDefault(),r[k]?.focus()};if(l.length===0)return null;let v=l.map((w,y)=>{let x=p(w.key);return On("div",{class:`wf-accordion-item${x?" wf-accordion-item--open":""}`,key:w.key},[On("button",{type:"button",class:"wf-accordion-summary",ref:s(y),disabled:w.disabled||void 0,"aria-expanded":x?"true":"false",onClick:w.disabled?void 0:()=>m(w.key)},[w.title,On(H,{name:"chevron-down",size:14,className:"wf-accordion-arrow"})]),x&&w.content?On("div",{class:"wf-accordion-content"},w.content):null].filter(Boolean))});return On("div",{class:"wf-accordion",onKeyDown:b},v)}};import{h as Hn}from"weifuwu/vdom";var Cl=(o,e)=>t=>{let{title:n,sub:r,display:a,children:s}=t;return Hn("div",{class:"wf-page-head"},[Hn("div",{class:"wf-page-head-left"},[Hn("h2",{class:`wf-page-title${a?" wf-page-title--display":""}`},n),r?Hn("p",{class:"wf-page-sub"},r):null].filter(Boolean)),s?Hn("div",{class:"wf-page-head-actions"},s):null].filter(Boolean))};import{h as Bn}from"weifuwu/vdom";var Ml=(o,e)=>t=>{let{items:n}=t,r=n.flatMap((s,i)=>{let l=i===n.length-1,c=l?Bn("span",{class:"wf-breadcrumb-current","aria-current":"page"},s.label):s.href?Bn("a",{class:"wf-breadcrumb-link",href:s.href},s.label):Bn("span",{class:"wf-breadcrumb-text"},s.label);return l?c:[c,Bn("span",{class:"wf-breadcrumb-sep","aria-hidden":"true"},"/")]}),a=e?.i18n?.components?.Breadcrumb??{};return Bn("nav",{class:"wf-breadcrumb","aria-label":a.ariaLabel??"\u9762\u5305\u5C51"},r)};import{h as tr}from"weifuwu/vdom";var Pl=(o,e)=>t=>{let{vertical:n,children:r}=t;return n?tr("div",{class:"wf-divider wf-divider--vertical",role:"separator"}):tr("div",{class:r?"wf-divider wf-divider--with-text":"wf-divider",role:"separator"},r?tr("span",{class:"wf-divider-text"},r):void 0)};import{h as Re}from"weifuwu/vdom";function ws(o){return o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}var nr=(o,e)=>{let t=e?.i18n?.components?.FileUpload??{},n=null,r=d=>{d&&(n=d)},a=new Map,s=d=>`${d.name}:${d.size}`,i=d=>{if(!d.type.startsWith("image/"))return;let p=s(d),h=a.get(p);return!h&&typeof URL<"u"&&URL.createObjectURL&&(h=URL.createObjectURL(d),a.set(p,h)),h},l=d=>{if(!d){for(let p of a.values())URL.revokeObjectURL?.(p);a.clear()}},c=!1,f={...o},g=!1,{dropProps:u}=e.ui.useDragDrop({onDrop:d=>{if(g=!1,e.render(),f.disabled)return;let p=Array.from(d.dataTransfer?.files??[]);f.maxSize&&p.filter(m=>m.size>f.maxSize).length>0||f.onChange?.(p)},onDragOver:()=>{g||(g=!0,e.render())},onDragLeave:()=>{g&&(g=!1,e.render())}});return d=>{Object.assign(f,d);let{accept:p,multiple:h,maxSize:m,disabled:b,error:v,hint:w,value:y,onChange:x,children:k,uploading:E,progress:T}=d,P=y??[];y!==void 0&&!x&&!c&&(c=!0,console.warn(`[weifuwu/FileUpload] value \u5DF2\u4F20\uFF08\u53D7\u63A7\uFF09\u4F46\u672A\u63D0\u4F9B onChange\u2014\u2014\u9009\u62E9/\u5220\u9664\u65E0\u6CD5\u751F\u6548\u3002
10
- \u4F20 onChange \u6216\u7701\u7565 value \u4F7F\u7528\u975E\u53D7\u63A7\u6A21\u5F0F\u3002`));let I=U=>{let L=U.target,C=Array.from(L.files??[]);m&&C.filter(S=>S.size>m).length>0||(x?.(C),L.value="")},A=U=>{let L=P.filter((C,M)=>M!==U);x?.(L)},$=Re("input",{type:"file",class:"wf-upload-input",accept:p||void 0,multiple:h||void 0,disabled:b||void 0,onChange:I,style:{display:"none"},ref:r}),N=Re("div",{class:`wf-upload-zone${b?" wf-upload-zone--disabled":""}${v?" wf-upload-zone--err":""}${g?" wf-upload-zone--drag":""}`,onClick:b?void 0:()=>n?.click(),...u},k??Re("div",{class:"wf-upload-placeholder"},[Re("span",{class:"wf-upload-icon"},"\u{1F4C1}"),Re("span",{class:"wf-upload-text"},t.placeholder??"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u6587\u4EF6"),p?Re("span",{class:"wf-upload-hint"},`${t.supportedFormats??"\u652F\u6301\u683C\u5F0F: "}${p}`):null,m?Re("span",{class:"wf-upload-hint"},`${t.maxSize??"\u6700\u5927 "}${ws(m)}`):null].filter(Boolean))),B=P.length>0?Re("ul",{class:"wf-upload-list"},P.map((U,L)=>{let C=i(U),M=[C?Re("img",{class:"wf-upload-thumb",src:C,alt:U.name}):null,Re("span",{class:"wf-upload-item-info"},[Re("span",{class:"wf-upload-item-name"},U.name),Re("span",{class:"wf-upload-item-size"},ws(U.size))]),Re("button",{class:"wf-upload-item-remove","aria-label":`${t.remove??"\u5220\u9664"} ${U.name}`,onClick:()=>A(L)},Re(H,{name:"trash"}))];return Re("li",{class:"wf-upload-item",key:U.name+U.size},M.filter(Boolean))})):null,q=E?Re("div",{class:"wf-upload-progress",role:"progressbar","aria-valuenow":T??0},Re("div",{class:"wf-upload-progress-fill",style:{width:`${T??0}%`}})):null,V=[$,N,B,q];return v&&V.push(Re("div",{class:"wf-upload-err"},v)),w&&!v&&V.push(Re("div",{class:"wf-upload-hint"},w)),Re("div",{class:"wf-upload",ref:l},V)}};import{h as ve}from"weifuwu/vdom";function Sl(o){return o===void 0?"":o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}function Tl(o){if(!o)return"";try{let e=new Date(o),t=Date.now()-e.getTime();return t<6e4?"\u521A\u521A":t<36e5?`${Math.floor(t/6e4)} \u5206\u949F\u524D`:t<864e5?`${Math.floor(t/36e5)} \u5C0F\u65F6\u524D`:e.toLocaleDateString()}catch{return""}}var El=(o,e)=>{let t=null,n=a=>{a&&(t=a)},r=()=>t?.click();return a=>{let{entries:s=[],path:i="/",loading:l=!1,openFile:c=null,editValue:f="",saving:g=!1,emptyText:u="\u7A7A\u76EE\u5F55"}=a,d=i==="/"?[]:i.split("/").filter(Boolean),p=b=>{let v=b.target,w=v.files?.[0];v.value="",w&&a.onUpload?.(w)},h=(b,v)=>ve("button",{type:"button",class:"wf-filetree-crumb",onClick:v},b),m=()=>ve("span",{class:"wf-filetree-sep"},"/");return ve("div",{class:"wf-filetree"},[ve("div",{class:"wf-filetree-toolbar"},[ve("div",{class:"wf-filetree-path"},[h("/",()=>a.onOpenDir?.("/")),...d.map((b,v)=>{let w=d.slice(0,v+1).join("/");return ve("span",{class:"wf-filetree-crumb-wrap"},[m(),h(b,()=>a.onOpenDir?.(w))])})]),ve("div",{class:"wf-filetree-actions"},[...a.onUpload?[ve(Ye,{size:"sm",variant:"ghost",onClick:r},[ve(H,{name:"upload",size:13})," \u4E0A\u4F20"]),ve("input",{ref:n,type:"file",hidden:!0,accept:a.accept,onChange:p})]:[],...a.onRefresh?[ve(Ye,{size:"sm",variant:"ghost",onClick:a.onRefresh},[ve(H,{name:"refresh",size:13})," \u5237\u65B0"])]:[]])]),c?ve("div",{class:"wf-filetree-editor"},[ve("div",{class:"wf-filetree-editor-head"},[a.onBack?ve(Ye,{size:"sm",variant:"ghost",onClick:a.onBack,disabled:g},[ve(H,{name:"arrow-left",size:13})," \u8FD4\u56DE\u5217\u8868"]):null,ve("span",{class:"wf-filetree-filename"},`${c.path}${c.truncated?"\uFF08\u5DF2\u622A\u65AD\uFF09":""}`),a.onSave?ve(Ye,{size:"sm",variant:"primary",disabled:g||a.onEditChange===void 0,onClick:()=>a.onSave?.(f)},g?"\u4FDD\u5B58\u4E2D...":"\u4FDD\u5B58"):null]),a.onEditChange?ve("textarea",{class:"wf-filetree-editor-area",rows:14,value:f,spellcheck:!1,onInput:b=>a.onEditChange?.(b.target.value)}):ve("pre",{class:"wf-filetree-preview"},c.content||"\uFF08\u7A7A\u6587\u4EF6\uFF09")]):ve("div",{class:"wf-filetree-list"},l?ve("div",{class:"wf-filetree-empty wf-text-secondary"},"\u52A0\u8F7D\u4E2D\u2026"):s.length===0?ve("div",{class:"wf-filetree-empty wf-text-secondary"},u):s.map(b=>ve("button",{type:"button",key:b.name,class:"wf-filetree-item",onClick:()=>b.type==="dir"?a.onOpenDir?.(i==="/"?b.name:`${i}/${b.name}`):a.onOpenFile?.(i==="/"?b.name:`${i}/${b.name}`)},[ve(H,{name:b.type==="dir"?"folder":"file",size:14,className:b.type==="dir"?"wf-filetree-dir":"wf-filetree-file"}),ve("span",{class:"wf-filetree-name"},b.name),ve("span",{class:"wf-filetree-meta"},[b.type==="file"&&b.size!==void 0?Sl(b.size):"",b.mtime?` \xB7 ${Tl(b.mtime)}`:""])])))])}};import{h as xe}from"weifuwu/vdom";import{createClientBrowser as Il}from"weifuwu/vdom";import{h as Oe}from"weifuwu/vdom";var or=(o,e)=>{let t=e.browser??Il(),n=null,r=[],a=!1,s=null,i=null,l=null,c=(u,d,p)=>{d&&!l?l=e.ui.openPopup({key:"menu-popup",anchor:()=>i,placement:"right",gap:6,content:p,onClose:()=>{l=null,s&&(s=null,e.render())}}):l&&d&&l.update(p())},f=u=>{u&&(n=u)},g=u=>{if(!["ArrowDown","ArrowUp","Home","End"].includes(u.key))return;let d=n?Array.from(n.querySelectorAll(".wf-menu-item, .wf-menu-submenu-title")):[],p=d.indexOf(t?.activeElement()??null);if(p<0)return;u.preventDefault();let h=p;u.key==="ArrowDown"?h=(p+1)%d.length:u.key==="ArrowUp"?h=(p-1+d.length)%d.length:u.key==="Home"?h=0:u.key==="End"&&(h=d.length-1),d[h].focus()};return u=>{let{items:d,onSelect:p,activeKey:h,className:m,openKeys:b,onOpenChange:v,collapsible:w,collapsed:y,onCollapseChange:x}=u,k=b!==void 0,E=y!==void 0,T=new Set(k?b:r),P=E?!!y:a,I=C=>{k?v?.(C):(r=C,e.render())},A=(C,M)=>{let S=M!=null?M?[...T,C]:[...T].filter(R=>R!==C):T.has(C)?[...T].filter(R=>R!==C):[...T,C];I([...new Set(S)])},$=()=>{let C=!P;E?x?.(C):(a=C,e.render())},N=C=>{let M=T.has(C.key)&&!P,S=C.active??(h!=null&&C.key===h);if(P){let K=s===C.key,Y=Oe("div",{"data-key":C.key,class:`wf-menu-submenu-title wf-menu-submenu-title--collapsed${S?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:S?0:-1,"aria-haspopup":"menu","aria-expanded":K?"true":"false",onClick:Q=>{K?(s=null,e.render()):(i=Q.currentTarget,s=C.key,e.render())},onKeyDown:Q=>{Q.key==="Enter"||Q.key===" "||Q.key==="ArrowRight"?(Q.preventDefault(),K||(i=Q.currentTarget,s=C.key,e.render())):Q.key==="Escape"&&(Q.preventDefault(),s=null,e.render())}},[C.icon?Oe("span",{class:"wf-menu-icon"},C.icon):null].filter(Boolean));return K&&c(C,K,()=>Oe("div",{class:"wf-menu-popup"},(C.children??[]).map(Q=>B(Q,!0,!0)))),Oe("div",{key:C.key,"data-key":C.key,class:"wf-menu-submenu wf-menu-submenu--collapsed"},[Y])}let R=[C.icon?Oe("span",{class:"wf-menu-icon"},C.icon):null,P?null:Oe("span",{class:"wf-menu-label"},C.label),P?null:Oe("span",{class:"wf-menu-arrow"},Oe(H,{name:"chevron-right",size:12}))].filter(Boolean),D=Oe("div",{"data-key":C.key,class:`wf-menu-submenu-title${S?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:S?0:-1,"aria-expanded":M?"true":"false",onClick:()=>A(C.key),onKeyDown:K=>{K.key==="Enter"||K.key===" "||K.key==="ArrowRight"?(K.preventDefault(),M||A(C.key,!0)):(K.key==="ArrowLeft"||K.key==="Escape")&&M&&(K.preventDefault(),A(C.key,!1))}},R),O=Oe("div",{class:"wf-menu-submenu-content",role:"group"},(C.children??[]).map(K=>B(K,!0)));return Oe("div",{key:C.key,"data-key":C.key,class:`wf-menu-submenu${M?" wf-menu-submenu--open":""}`},[D,O])},B=(C,M=!1,S=!1)=>{if(C.children&&C.children.length>0&&!P)return N(C);let R=C.active??(h!=null&&C.key===h);return Oe("div",{key:C.key,"data-key":C.key,class:`wf-menu-item${R?" wf-menu-item--active":""}${C.danger?" wf-menu-item--danger":""}${M?" wf-menu-item--child":""}`,role:"menuitem",tabIndex:R?0:-1,"aria-current":R?"page":void 0,onClick:()=>{C.onClick?C.onClick():p?.(C.key)},onKeyDown:D=>{if(D.key==="Enter"||D.key===" ")D.preventDefault(),C.onClick?C.onClick():p?.(C.key);else if((D.key==="ArrowLeft"||D.key==="Escape")&&M){D.preventDefault();let O=C._parentKey;O&&T.has(O)&&A(O,!1)}}},[C.icon?Oe("span",{class:"wf-menu-icon"},C.icon):null,P&&!S?null:Oe("span",{class:"wf-menu-label"},C.label)].filter(Boolean))},q=[],V;for(let C of d)if(C.group!==V&&(q.push(Oe("div",{class:"wf-menu-group",key:`g-${C.group}`},C.group)),V=C.group),C.children&&C.children.length>0){let M=N(C);!P&&M.props.children[1]&&(M.props.children[1].props.children=M.props.children[1].props.children.map(S=>S?.props?{...S,props:{...S.props,_parentKey:C.key}}:S)),q.push(M)}else q.push(B(C));let U=["wf-menu",P?"wf-menu--collapsed":"",m??""].filter(Boolean).join(" "),L=[...q,w?Oe("div",{class:"wf-menu-collapse-btn",role:"button",tabIndex:0,"aria-label":P?"\u5C55\u5F00\u83DC\u5355":"\u6298\u53E0\u83DC\u5355",onClick:$,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),$())}},P?Oe(H,{name:"chevron-right",size:14}):Oe(H,{name:"chevron-left",size:14})):null].filter(Boolean);return!s&&l&&(l.close(),l=null),Oe("nav",{class:U,role:"menu",ref:f,onKeyDown:g},L)}};var $l=(o,e)=>{let t=e||"/";return o.find(r=>r.key==="/"?t==="/":t.startsWith(r.key))?.key??""},Al=(o,e)=>t=>{let{nav:n=[],path:r="",user:a=null,brand:s={},onNavigate:i,onLogout:l,onSettings:c,loading:f=!1,sidebarWidth:g="240px"}=t,u=n.map(h=>({key:h.key,label:h.label,icon:h.icon,group:h.group})),d=s.name??"App",p=s.subtitle??"";return xe("div",{class:"wf-app-shell",style:{"--wf-sidebar-width":g}},[xe("aside",{class:"wf-sidebar"},[xe("div",{class:"wf-sidebar-header"},[xe(cn,{name:s.logo??d.slice(0,1),size:"lg"}),xe("div",{class:"wf-app-shell-brand-text"},[xe("span",{class:"wf-app-shell-brand-name"},d),p?xe("small",{class:"wf-app-shell-brand-sub"},p):null])]),xe("div",{class:"wf-sidebar-body"},[f?xe("div",{class:"wf-app-shell-skel"}):xe(or,{items:u,activeKey:$l(n,r),onSelect:h=>i?.(h)})]),t.footer??(f?xe("div",{class:"wf-sidebar-footer"},[xe("div",{class:"wf-app-shell-skel"}),xe("div",{class:"wf-app-shell-skel wf-app-shell-skel--sm"})]):xe("div",{class:"wf-sidebar-footer"},[xe("div",{class:"wf-app-shell-user"},[xe("div",{class:"wf-app-shell-user-info"},[xe(cn,{name:a?.name??"?",size:"sm"}),xe("div",{class:"wf-app-shell-user-meta"},[xe("div",{class:"wf-app-shell-user-name"},a?.name??"\u672A\u767B\u5F55"),a?.email?xe("div",{class:"wf-app-shell-user-mail"},a.email):null])]),xe("div",{class:"wf-app-shell-user-actions"},[c?xe(Ye,{size:"sm",variant:"ghost",title:"\u8BBE\u7F6E",onClick:c},[xe(H,{name:"settings",size:16})]):null,l?xe(Ye,{size:"sm",variant:"ghost",title:"\u9000\u51FA\u767B\u5F55",onClick:l},[xe(H,{name:"log-out",size:16})]):null])])]))]),xe("main",{class:"wf-main"},t.children)])};import{h as Ue}from"weifuwu/vdom";var Un=800,zn=500,vs=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16","#f97316","#14b8a6"],xs=["#94a3b8","#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16"];function Dl(o){let e=0;for(let t=0;t<o.length;t++)e=e*31+o.charCodeAt(t)>>>0;return e}var go=(o,e,t)=>t?.[o]??e[Dl(o)%e.length];function ks(o){if(o===void 0)return 14;let e=Math.max(1,o);return 12+Math.round(Math.log10(e)*6)}function Ll(o,e){let r=1/0,a=1/0,s=-1/0,i=-1/0;for(let l=0;l<o.length;l++){let c=ks(o[l].weight),f=e[l];r=Math.min(r,f.x-c),a=Math.min(a,f.y-c),s=Math.max(s,f.x+c),i=Math.max(i,f.y+c+(o[l].sublabel?34:0))}return o.length===0?`0 0 ${Un} ${zn}`:`${Math.round(r-28)} ${Math.round(a-28)} ${Math.round(s-r+56)} ${Math.round(i-a+56)}`}function Rl(o,e){let t=o.length;if(t===0)return[];if(e==="ring"){if(t===1)return[{x:Un/2,y:zn/2}];let i=Un/2,l=zn/2,c=Math.min(Un,zn)/2-70;return o.map((f,g)=>{let u=Math.PI*2*g/t-Math.PI/2;return{x:i+c*Math.cos(u),y:l+c*Math.sin(u)}})}let n=Math.max(1,Math.ceil(Math.sqrt(t))),r=Math.ceil(t/n),a=Un-160,s=zn-140;return o.map((i,l)=>({x:80+a*(l%n)/Math.max(1,n-1),y:80+s*Math.floor(l/n)/Math.max(1,r-1)}))}var Nl=(o,e)=>t=>{let{nodes:n=[],edges:r=[],selectedId:a=null,onSelect:s,onNodeClick:i,layout:l="ring",width:c="100%",height:f="480px",showLegend:g=!0,nodeColors:u,edgeColors:d}=t,p=Rl(n,l),h=new Map(n.map((y,x)=>[y.id,{node:y,...p[x]}])),m=Ll(n,p),b=[...new Set(n.map(y=>y.kind??"default"))],v=[...new Set(r.map(y=>y.type??"default"))],w=r.filter(y=>h.has(y.from)&&h.has(y.to)).map(y=>{let x=h.get(y.from),k=h.get(y.to);return{e:y,x1:x.x,y1:x.y,x2:k.x,y2:k.y,color:go(y.type??"default",xs,d),width:Math.min(5,Math.max(1,y.strength??1.5)),marker:y.directed?"url(#rg-arrow)":void 0}});return Ue("div",{class:"wf-rg"},[Ue("svg",{class:"wf-rg-canvas",width:c,height:f,viewBox:m,preserveAspectRatio:"xMidYMid meet"},[Ue("defs",{},Ue("marker",{id:"rg-arrow",viewBox:"0 0 10 10",refX:22,refY:5,markerWidth:7,markerHeight:7,orient:"auto-start-reverse"},Ue("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"#94a3b8"}))),...w.map(y=>Ue("line",{key:`${y.e.from}-${y.e.to}-${y.e.type??""}`,x1:y.x1,y1:y.y1,x2:y.x2,y2:y.y2,stroke:y.color,"stroke-width":y.width,marker:y.marker,class:"wf-rg-edge",opacity:.75,"pointer-events":"none"})),...n.map(y=>{let x=h.get(y.id),k=ks(y.weight),E=go(y.kind??"default",vs,u),T=y.id===a;return Ue("g",{key:y.id,class:"wf-rg-node"+(T?" wf-rg-node--selected":""),transform:`translate(${x.x}, ${x.y})`,onClick:()=>{s?.(y.id),i?.(y.id)}},[Ue("title",{},`${y.label}${y.sublabel?`\uFF08${y.sublabel}\uFF09`:""}`),Ue("circle",{r:k+10,fill:"transparent","pointer-events":"all"}),Ue("circle",{r:k,fill:E,opacity:.18,stroke:E,"stroke-width":T?3:1.5}),Ue("text",{class:"wf-rg-label",y:k+16,"text-anchor":"middle"},y.label),y.sublabel?Ue("text",{class:"wf-rg-sublabel",y:k+30,"text-anchor":"middle"},y.sublabel):null])})]),g&&b.length+v.length>0?Ue("div",{class:"wf-rg-legend"},[...b.map(y=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-swatch",style:{background:go(y,vs,u)}}),y])),...v.map(y=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-line",style:{background:go(y,xs,d)}}),y]))]):null])};import{h as bo}from"weifuwu/vdom";var Ol=(o,e)=>{let t=!1,n="top",r=!1,a=null,s=u=>{u&&(a=u)},i=null,l=null,c=()=>{l!==null&&(clearTimeout(l),l=null)},f=()=>{c(),!r&&(l=setTimeout(()=>{l=null,t||(t=!0,e.render())},0))},g=()=>{c(),l=setTimeout(()=>{l=null,t&&(t=!1,e.render())},0)};return e.ui.onUnmount?.(c),e.ui.onUnmount?.(()=>{i&&i.close()}),u=>{let{content:d,position:p="top",children:h}=u;n=p,r=!!u.disabled;let m=bo("div",{class:`wf-tooltip wf-tooltip--${p}`,role:"tooltip"},[bo("div",{class:"wf-tooltip-arrow"}),bo("div",{class:"wf-tooltip-content"},d)]);return t&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>n,gap:6,content:()=>m,onClose:()=>{i=null,t&&(t=!1,e.render())}}):!t&&i?(i.close(),i=null):i&&i.update(m),bo("div",{class:"wf-tooltip-wrap",ref:s,"aria-haspopup":"tooltip",onMouseEnter:f,onMouseLeave:g,onClick:()=>{t=!t,e.render()}},h)}};import{h as Ut}from"weifuwu/vdom";var Hl=(o,e)=>{let t=!1,n=null,r;return e.ui.useGlobalKey(a=>{a.key==="Escape"&&n?.open&&t&&r?.()}),e.ui.onUnmount?.(()=>{n&&n.close()}),a=>{let{open:s,title:i,position:l="right",onClose:c,children:f,footer:g,width:u}=a;r=c;let d=e?.i18n?.components?.Drawer??{};t=!!s;let p=Ut("div",{class:"wf-drawer-overlay",onClick:c}),h=Ut("button",{class:"wf-drawer-close",onClick:c,type:"button","aria-label":d.closeAria??"\u5173\u95ED"},Ut(H,{name:"close"})),m=i?Ut("div",{class:"wf-drawer-header"},[i,h]):null,b=Ut("div",{class:"wf-drawer-body"},f),v=g?Ut("div",{class:"wf-drawer-footer"},g):null,w=Ut("div",{class:`wf-drawer-panel wf-drawer-panel--${l}`,style:u?{"--wf-drawer-width":u}:void 0,onClick:x=>x.stopPropagation()},[m,b,v].filter(Boolean)),y=Ut("div",{class:`wf-drawer wf-drawer--${l} ${s?"wf-drawer--enter":"wf-drawer--exit"}`,role:"dialog","aria-modal":"true","aria-label":i??d.ariaLabel??"\u4FA7\u8FB9\u9762\u677F",tabIndex:-1,onKeyDown:x=>{x.key==="Escape"&&c?.()}},[p,w]);return s&&!n?n=e.ui.openPopup({key:"drawer",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>y,onClose:()=>{n=null}}):!s&&n?(n.update(y),n.close(),n=null):n&&n.update(y),null}};import{h as yo}from"weifuwu/vdom";var _n=(o,e)=>{let t="bottom",n="click",r=!1,a=null,s=d=>{d&&(a=d)},i=null,l=null,c=null,f=()=>{c!==null&&(clearTimeout(c),c=null)},g=()=>{f(),!r&&(c=setTimeout(()=>{c=null,l?.open||l?.setOpen(!0)},0))},u=()=>{f(),c=setTimeout(()=>{c=null,l?.open&&l?.setOpen(!1)},0)};return e.ui.onUnmount?.(f),e.ui.onUnmount?.(()=>{i&&i.close()}),d=>{let{content:p,position:h="bottom",trigger:m="click",children:b}=d;t=h,n=m,l=e.ui.useOpen({open:d.open,onOpenChange:d.onOpenChange,name:"Popover"}),r=!!d.disabled;let v=yo("div",{class:`wf-popover wf-popover--${h} wf-popover--enter`,role:"tooltip"},[yo("div",{class:"wf-popover-arrow"}),yo("div",{class:"wf-popover-content"},p)]);return l?.open&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:6,content:()=>v,onClose:()=>{i=null,l?.setOpen(!1)}}):!l?.open&&i?(i.close(),i=null):i&&i.update(v),yo("div",{class:`wf-popover-wrap${l?.open?" wf-popover-wrap--open":""}`,ref:s,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onClick:w=>{w.stopPropagation?.(),l?.setOpen(!l.open)},...n==="hover"?{onMouseEnter:g,onMouseLeave:u}:{}},b)}};import{h as fn,Fragment as Bl}from"weifuwu/vdom";var Ul=o=>e=>{let{variant:t="text",lines:n=1,cols:r=3,width:a,height:s,className:i}=e,l={};a!==void 0&&(l.width=typeof a=="number"?`${a}px`:a),s!==void 0&&(l.height=typeof s=="number"?`${s}px`:s);let c=["wf-skeleton",`wf-skeleton--${t}`,i].filter(Boolean).join(" ");if(t==="table"){let g=Array.from({length:n},(u,d)=>{let p=Array.from({length:r},(h,m)=>{let b=d===n-1&&m===r-1?"40%":void 0;return fn("div",{class:"wf-skeleton wf-skeleton--text",style:b?{width:b}:void 0})});return fn("div",{class:"wf-skeleton-row"},p)});return fn("div",{class:"wf-skeleton-table"},g)}if(n<=1)return fn("div",{class:c,style:Object.keys(l).length?l:void 0});let f=Array.from({length:n},(g,u)=>{let d=u===n-1&&n>1?`${c} wf-skeleton--short`:c;return fn("div",{class:d,style:Object.keys(l).length?l:void 0})});return fn(Bl,null,f)};import{h as Vn}from"weifuwu/vdom";var zl=(o,e)=>{let t=!1,n=1,r=null,a=null,s=l=>{t&&!a?a=e.ui.openPopup({key:"img-preview",mask:!0,maskCentered:!0,content:()=>l,onClose:()=>{a=null,t&&(t=!1,n=1,e.render())}}):!t&&a?(a.close(),a=null):a&&a.update(l)},i=l=>{r=l};return l=>{let{src:c,alt:f="",fallback:g,loading:u,width:d,height:p,className:h,style:m,preview:b,previewScale:v=1}=l,w={class:["wf-image",h].filter(Boolean).join(" "),src:c??g??"",alt:f,loading:u??"lazy"};if(d!==void 0&&(w.width=d),p!==void 0&&(w.height=p),m&&(w.style=m),g&&(w.onError=x=>{let k=x.currentTarget;k.src!==g&&(k.src=g)}),!b)return Vn("img",w);let y=Vn("img",{class:"wf-img-preview-image",src:c??g??"",alt:f,style:{transform:`scale(${n*v})`,maxWidth:"90vw",maxHeight:"90vh"},onClick:x=>{x.stopPropagation(),n=n===1?2:1,e.render()}});return s(y),Vn("div",{class:"wf-img-preview-wrap"},[Vn("button",{type:"button",class:"wf-img-preview-trigger","aria-label":"\u653E\u5927\u9884\u89C8",ref:i,onClick:()=>{t=!0,e.render()}},Vn("img",w))])}};import{h as wo}from"weifuwu/vdom";var _l=(o,e)=>{let t=!1,n={once:!0},r=e.ui.useInView({rootMargin:()=>n.rootMargin??"0px",threshold:()=>n.threshold??0}),a=s=>{s?r.observe(s):r.disconnect()};return s=>{if(Object.assign(n,s),r.isIn)return t||(t=!0,s.once!==!1&&r.disconnect(),s.onEnter?.()),wo("div",{class:"wf-inview wf-inview--loaded"},s.children);let i=s.placeholder!==void 0?s.placeholder:wo("div",{class:"wf-inview-placeholder"});return wo("div",{class:"wf-inview wf-inview--pending"},[wo("div",{class:"wf-inview-pending",style:{width:"1px",height:"1px",opacity:0,pointerEvents:"none"},ref:a}),i])}};import{createClientBrowser as jl}from"weifuwu/vdom";import{h as re}from"weifuwu/vdom";var Vl=["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];function vo(){return Vl}function Cs(o,e){return new Date(o,e+1,0).getDate()}function Kl(o,e){return new Date(o,e,1).getDay()}function Kn(o,e){let t=[],n=Cs(o,e),r=Kl(o,e),a=e===0?11:e-1,s=e===0?o-1:o,i=Cs(s,a),l=new Date,c=[];for(let d=r-1;d>=0;d--){let p=i-d;c.push({year:s,month:a,day:p,isOtherMonth:!0,isToday:s===l.getFullYear()&&a===l.getMonth()&&p===l.getDate()})}for(let d=1;d<=n;d++)c.push({year:o,month:e,day:d,isOtherMonth:!1,isToday:o===l.getFullYear()&&e===l.getMonth()&&d===l.getDate()}),c.length===7&&(t.push(c),c=[]);let f=e===11?0:e+1,g=e===11?o+1:o,u=1;for(;t.length<6;){for(;c.length<7;)c.push({year:g,month:f,day:u++,isOtherMonth:!0,isToday:g===l.getFullYear()&&f===l.getMonth()&&u-1===l.getDate()});t.push(c),c=[]}return t}function Tt(o,e,t){return`${o}-${String(e+1).padStart(2,"0")}-${String(t).padStart(2,"0")}`}function rr(o,e){return`${String(o).padStart(2,"0")}:${String(e).padStart(2,"0")}`}function Ms(o,e,t,n,r){return`${Tt(o,e,t)} ${rr(n,r)}`}function sr(){return Array.from({length:24},(o,e)=>e)}function ir(){return Array.from({length:12},(o,e)=>e*5)}var Fl=(o,e)=>{let t=e.browser??jl(),n=!1,r="",a=new Date,s=a.getFullYear(),i=a.getMonth(),l=a.getHours(),c=Math.round(a.getMinutes()/5)*5,f=a.getFullYear(),g=a.getMonth(),u=a.getDate(),d=null,p=null,h=null,m=y=>{h=y},b="date";e.ui.useGlobalKey(y=>{y.key==="Escape"&&n&&(n=!1,e.render())});let v=null,w=y=>{n&&y&&!v?v=e.ui.openPopup({key:"dp-calendar",mask:!0,maskClosable:!0,closeOnEscape:!1,content:()=>y,position:()=>{let x=h?.getBoundingClientRect();if(!x)return{x:0,y:0};let k=b==="range";return{x:x.left,y:x.bottom+4,width:k?void 0:x.width}},onClose:()=>{v=null,n&&(n=!1,e.render())}}):!n&&v?(v.close(),v=null):v&&v.update(y)};return y=>{let x=e?.i18n?.components?.DatePicker??{},{mode:k="date",value:E,onChange:T,placeholder:P=x.placeholder??"\u9009\u62E9\u65E5\u671F",disabled:I,error:A}=y;b=k;let $=n,N=W=>{n=W,e.render()},B=W=>{I||N(!n)},q=W=>{if(k==="datetime")f=W.year,g=W.month,u=W.day,s=W.year,i=W.month,e.render();else if(k==="range")if(!d||d&&p)d=Tt(W.year,W.month,W.day),p=null,e.render();else{p=Tt(W.year,W.month,W.day);let J=d<p?d:p,ee=d<p?p:d;r=`${J} ~ ${ee}`,T?.(r),N(!1)}else r=Tt(W.year,W.month,W.day),T?.(r),N(!1)},V=()=>{i===0?(s--,i=11):i--,e.render()},U=()=>{i===11?(s++,i=0):i++,e.render()},L=()=>{r=rr(l,c),T?.(r),N(!1)},C=()=>{r=Ms(f,g,u,l,c),T?.(r),N(!1)},M=Kn(s,i),S=[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6].some(W=>W)?[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6]:vo(),R=(W,J,ee)=>re("button",{class:"wf-datepicker-header-btn",type:"button","aria-label":J,onClick:ee},re(H,{name:W})),D=re("div",{class:"wf-datepicker-header"},[R("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",V),re("span",{class:"wf-datepicker-header-title"},`${s}\u5E74${i+1}\u6708`),R("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",U)]),O=re("div",{class:"wf-datepicker-weekdays"},S.map(W=>re("span",{class:"wf-datepicker-weekday"},W))),K=M.map((W,J)=>re("div",{class:"wf-datepicker-grid",key:`row-${J}`},W.map((ee,ue)=>{let ie=["wf-datepicker-cell"];ee.isOtherMonth&&ie.push("wf-datepicker-cell--other-month"),ee.isToday&&ie.push("wf-datepicker-cell--today");let he=Tt(ee.year,ee.month,ee.day);return k==="range"?he===d||he===p?ie.push("wf-datepicker-cell--range-edge"):d&&p&&he>d&&he<p&&ie.push("wf-datepicker-cell--in-range"):k==="datetime"?f===ee.year&&g===ee.month&&u===ee.day&&ie.push("wf-datepicker-cell--selected"):he===r&&ie.push("wf-datepicker-cell--selected"),re("button",{class:ie.join(" "),key:`${ee.year}-${ee.month}-${ee.day}`,type:"button",onClick:()=>q(ee)},String(ee.day))}))),Y=re("div",{class:"wf-datepicker-range-panel"},[D,O,...K]),Q=W=>{if(W.key==="Escape"){N(!1);return}if(k==="time"||k==="datetime"||!["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(W.key))return;let J=W.currentTarget,ee=Array.from(J.querySelectorAll(".wf-datepicker-cell")),ue=ee.indexOf(t?.activeElement()??null);if(ue<0)return;W.preventDefault();let ie=7,he=ue;W.key==="ArrowLeft"?he--:W.key==="ArrowRight"?he++:W.key==="ArrowUp"?he-=ie:W.key==="ArrowDown"&&(he+=ie),he>=0&&he<ee.length&&ee[he].focus()},G=null;if($)if(k==="time"){let W=sr(),J=ir();G=re("div",{class:"wf-time-picker",role:"dialog",onKeyDown:Q,onMouseDown:ue=>ue.stopPropagation()},[re("div",{class:"wf-time-body"},[re("div",{class:"wf-time-col"},[re("div",{class:"wf-time-col-label"},x.hour??"\u65F6"),re("div",{class:"wf-time-opt-list"},W.map(ue=>re("button",{class:`wf-time-opt${ue===l?" wf-time-opt--selected":""}`,type:"button",key:ue,onClick:()=>{l=ue,e.render()}},String(ue).padStart(2,"0"))))]),re("div",{class:"wf-time-col"},[re("div",{class:"wf-time-col-label"},x.minute??"\u5206"),re("div",{class:"wf-time-opt-list"},J.map(ue=>re("button",{class:`wf-time-opt${ue===c?" wf-time-opt--selected":""}`,type:"button",key:ue,onClick:()=>{c=ue,e.render()}},String(ue).padStart(2,"0"))))])]),re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:()=>N(!1)},x.cancel??"\u53D6\u6D88"),re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:L},x.confirm??"\u786E\u5B9A")])])}else if(k==="range"){let W=i===11?0:i+1,J=i===11?s+1:s,ee=Kn(J,W);G=re("div",{class:"wf-datepicker-range-wrap",onMouseDown:ie=>ie.stopPropagation()},[re("div",{class:"wf-datepicker-range-panel"},[re("div",{class:"wf-datepicker-header"},[R("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",V),re("span",{class:"wf-datepicker-header-title"},`${s}\u5E74${i+1}\u6708`),re("span",{class:"wf-datepicker-header-title"})]),O,...K]),re("div",{class:"wf-datepicker-range-panel"},[re("div",{class:"wf-datepicker-header"},[re("span",{class:"wf-datepicker-header-title"}),re("span",{class:"wf-datepicker-header-title"},`${J}\u5E74${W+1}\u6708`),R("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",U)]),re("div",{class:"wf-datepicker-weekdays"},S.map(ie=>re("span",{class:"wf-datepicker-weekday"},ie))),...ee.map((ie,he)=>re("div",{class:"wf-datepicker-grid",key:`row-${he}`},ie.map(fe=>{let Ae=Tt(fe.year,fe.month,fe.day),Se=["wf-datepicker-cell"];return fe.isOtherMonth&&Se.push("wf-datepicker-cell--other-month"),fe.isToday&&Se.push("wf-datepicker-cell--today"),Ae===d||Ae===p?Se.push("wf-datepicker-cell--range-edge"):d&&p&&Ae>d&&Ae<p&&Se.push("wf-datepicker-cell--in-range"),re("button",{class:Se.join(" "),key:Ae,type:"button",onClick:()=>q(fe)},String(fe.day))})))])])}else{let W=[Y];k==="datetime"&&(W.push(re("div",{class:"wf-datetime-time"},[re("span",{class:"wf-datetime-time-label"},(x.time??"\u65F6\u95F4")+"\uFF1A"),re("div",{class:"wf-datetime-time-select"},[re("select",{class:"wf-datetime-select",value:l,onChange:ee=>{l=parseInt(ee.target.value),e.render()}},sr().map(ee=>re("option",{value:ee,key:ee},String(ee).padStart(2,"0")))),re("span",{class:"wf-datetime-sep"},":"),re("select",{class:"wf-datetime-select",value:c,onChange:ee=>{c=parseInt(ee.target.value),e.render()}},ir().map(ee=>re("option",{value:ee,key:ee},String(ee).padStart(2,"0"))))])])),W.push(re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:C},x.confirm??"\u786E\u5B9A")]))),G=re("div",{class:"wf-datepicker-dropdown",role:"dialog",onKeyDown:Q,onMouseDown:ee=>ee.stopPropagation()},W)}w($?G:null);let X=E??r??"";return re("div",{class:`wf-datepicker${I?" wf-datepicker--disabled":""}`},[re("input",{class:["wf-datepicker-input",A?" wf-datepicker-input--err":""].filter(Boolean).join(" "),"aria-invalid":A?"true":void 0,type:"text",placeholder:P,value:X||"",ref:m,readonly:!0,disabled:I,role:"combobox","aria-haspopup":"dialog","aria-expanded":String($),onClick:B})])}};import{h as se}from"weifuwu/vdom";function jn(o,e){let t=(n=>{let r=(n-o[0])/(o[1]-o[0]);return e[0]+r*(e[1]-e[0])});return t.domain=o,t.range=e,t.invert=n=>{let r=(n-e[0])/(e[1]-e[0]);return o[0]+r*(o[1]-o[0])},t}function Ss(o,e,t){return o.length===0?"":o.map((n,r)=>{let a=e(r),s=t(n.value);return r===0?`M${a},${s}`:`L${a},${s}`}).join(" ")}function Ts(o,e,t,n){if(o.length===0)return"";let r=o.map((i,l)=>{let c=e(l),f=t(i.value);return`${c},${f}`}),a=e(0),s=e(o.length-1);return`M${a},${n}L${r.join("L")}L${s},${n}Z`}function Es(o,e,t,n){let r=n??Math.max(4,(e.range[1]-e.range[0])/o.length*.6);return o.map((a,s)=>({x:e(s)-r/2,y:t(Math.max(0,a.value)),width:r,height:Math.abs(t(a.value)-t(0)),color:a.color??qt(s),label:a.label,value:a.value}))}function Is(o,e,t,n){let r=o.reduce((s,i)=>s+Math.abs(i.value),0);if(r===0)return[];let a=-Math.PI/2;return o.map((s,i)=>{let l=Math.abs(s.value)/r*Math.PI*2,c=a+l,f=Gl(e,t,n,a,c),g=a+l/2;return a=c,{d:f,color:s.color??qt(i),label:s.label,value:s.value,centroid:{x:e+Math.cos(g)*n*.6,y:t+Math.sin(g)*n*.6}}})}function Gl(o,e,t,n,r){let a=o+t*Math.cos(n),s=e+t*Math.sin(n),i=o+t*Math.cos(r),l=e+t*Math.sin(r),c=r-n>Math.PI?1:0;return`M${o},${e}L${a},${s}A${t},${t} 0 ${c} 1 ${i},${l}Z`}var Ps=["#3b82f6","#ef4444","#22c55e","#f59e0b","#8b5cf6","#ec4899","#06b6d4","#84cc16"];function qt(o){return Ps[o%Ps.length]}function ar(o,e=5){let[t,n]=o.domain,r=(n-t)/e,a=[];for(let s=0;s<=e;s++){let i=t+r*s;a.push({value:i,y:o(i),label:Wl(i)})}return a}function Wl(o){return Math.abs(o)>=1e6?(o/1e6).toFixed(1)+"M":Math.abs(o)>=1e3?(o/1e3).toFixed(1)+"k":String(Math.round(o))}var ql=(o,e)=>{let t=null,n=null,r=null;return a=>{let{type:s="line",data:i,options:l={},title:c,area:f,className:g}=a,u=l.width??320,d=l.height??200,p=l.padding??32,h=u-p*2,m=d-p*2,b=i.map(B=>B.value),v=Math.min(0,...b),w=Math.max(...b),y=w-v||1,x=()=>{let B=Math.max(1,i.length-1),q=jn([-.5,B+.5],[0,h]),V=jn([v,w],[m,0]),U=ar(V),L=Ss(i,q,V),C=f?Ts(i,q,V,V(0)):null,M=i.map((S,R)=>{let D=q(R)+p,O=V(S.value)+p,K=Q=>{n=Q.target,t={label:S.label,value:S.value,color:S.color??qt(R)},e.render()},Y=()=>{n=null,t=null,e.render()};return se("g",{key:`dot-${R}`},[se("circle",{cx:D,cy:O,r:3,fill:S.color??qt(R),style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,"pointer-events":"none"}),se("circle",{cx:D,cy:O,r:9,fill:"transparent",style:{cursor:"pointer"},onMouseEnter:K,onMouseLeave:Y})])});return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...U.map((S,R)=>se("g",{key:`tick-${R}`},[se("line",{x1:p,y1:S.y+p,x2:u-p,y2:S.y+p,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:p-6,y:S.y+p+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},S.label)])),...C?[se("path",{key:"area",d:C,style:{fill:"var(--wf-color-primary-bg)"},stroke:"none",transform:`translate(${p},${p})`})]:[],se("path",{key:"line",d:L,fill:"none",style:{stroke:"var(--wf-color-primary)"},"stroke-width":2,"stroke-linejoin":"round","stroke-linecap":"round",transform:`translate(${p},${p})`}),...i.map((S,R)=>{let D=q(R)+p;return se("text",{key:`xlabel-${R}`,x:D,y:d-p+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},S.label)}),...M])},k=()=>{let B=Math.max(1,i.length-1),q=jn([-.5,B+.5],[0,h]),V=jn([v,w],[m,0]),U=ar(V),L=Es(i,q,V);return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...U.map((C,M)=>se("g",{key:`tick-${M}`},[se("line",{x1:p,y1:C.y+p,x2:u-p,y2:C.y+p,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:p-6,y:C.y+p+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},C.label)])),...L.map((C,M)=>se("rect",{key:`bar-${M}`,x:C.x+p,y:C.y+p,width:C.width,height:C.height,fill:C.color,rx:2,onMouseEnter:S=>{n=S.target,t={label:C.label,value:C.value,color:C.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}})),...i.map((C,M)=>{let S=q(M)+p;return se("text",{key:`xlabel-${M}`,x:S,y:d-p+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},C.label)})])},E=()=>{let B=u/2,q=d/2,V=Math.min(h,m)/2-4,U=Is(i,B,q,V);return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...U.map((L,C)=>se("g",{key:`arc-${C}`},[se("path",{d:L.d,fill:L.color,style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,onMouseEnter:M=>{n=M.target,t={label:L.label,value:L.value,color:L.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}}),...L.value/i.reduce((M,S)=>M+Math.abs(S.value),0)>.05?[se("text",{x:L.centroid.x,y:L.centroid.y+3,"text-anchor":"middle",style:{fill:"var(--wf-color-on-brand)"},"font-size":"11","font-weight":"bold","font-family":"var(--wf-font-sans)","pointer-events":"none"},`${Math.round(L.value/i.reduce((M,S)=>M+Math.abs(S.value),0)*100)}%`)]:[]]))])},T=()=>{let C=Math.max(...i.map(Q=>Math.abs(Q.value)),1),M=i.length,S=Q=>Math.PI*2*Q/M-Math.PI/2,R=(Q,G)=>[150+Math.cos(S(Q))*95*G,140+Math.sin(S(Q))*95*G],D=[.33,.66,1].map(Q=>se("polygon",{key:`ring-${Q}`,points:Array.from({length:M},(G,X)=>R(X,Q).join(",")).join(" "),fill:"none",stroke:"var(--wf-color-border)","stroke-width":1})),O=Array.from({length:M},(Q,G)=>se("line",{key:`spoke-${G}`,x1:150,y1:140,x2:R(G,1)[0],y2:R(G,1)[1],stroke:"var(--wf-color-border)","stroke-width":1})),K=i.map((Q,G)=>R(G,Math.abs(Q.value)/C).join(",")).join(" "),Y=i.map((Q,G)=>{let[X,W]=R(G,1.18);return se("text",{key:`lb-${G}`,x:X,y:W,"text-anchor":"middle","dominant-baseline":"middle",class:"wf-chart-label","font-size":10},Q.label)});return se("svg",{viewBox:"0 0 300 260",class:"wf-chart-svg",role:"img"},[...D,...O,se("polygon",{key:"data",points:K,fill:"var(--wf-color-primary-bg)",stroke:"var(--wf-color-primary)","stroke-width":1.5,opacity:.85}),...Y])},P=()=>{let C=i[0]?.value??0,M=l?.min??0,S=l?.max??100,R=Math.min(Math.max((C-M)/(S-M),0),1),D=(X,W,J)=>{let ee=Se=>Math.PI*(1-Se),[ue,ie]=[150-Math.cos(ee(W))*X,170-Math.sin(ee(W))*X],[he,fe]=[150-Math.cos(ee(J))*X,170-Math.sin(ee(J))*X],Ae=Math.abs(ee(W)-ee(J))>Math.PI?1:0;return`M ${ue} ${ie} A ${X} ${X} 0 ${Ae} 1 ${he} ${fe}`},O=D(118,0,R),K=D(118,0,1),Y=-Math.PI/2+R*Math.PI,[Q,G]=[150+Math.cos(Y)*100,170+Math.sin(Y)*100];return se("svg",{viewBox:"0 0 300 180",class:"wf-chart-svg",role:"img"},[se("path",{key:"bg",d:K,fill:"none",stroke:"var(--wf-color-border)","stroke-width":12,"stroke-linecap":"round"}),se("path",{key:"val",d:O,fill:"none",stroke:"var(--wf-color-primary)","stroke-width":12,"stroke-linecap":"round"}),se("line",{key:"needle",x1:150,y1:170,x2:Q,y2:G,stroke:"var(--wf-color-text)","stroke-width":3,"stroke-linecap":"round"}),se("text",{key:"val-t",x:150,y:208,"text-anchor":"middle",class:"wf-chart-value","font-size":22,"font-weight":600},`${C}`),se("text",{key:"min",x:24,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${M}`),se("text",{key:"max",x:276,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${S}`)])},I=()=>{let U=Math.max(...i.map(D=>Math.abs(D.value)),1)*1.1,L=Math.max(...i.map(D=>Number(D.label)||0),i.length,1)*1.1,C=D=>34+(Number(i[D]?.label)||D)/L*252,M=D=>186-Math.abs(D)/U*152,S=i.map((D,O)=>se("circle",{key:`dot-${O}`,cx:C(O),cy:M(D.value),r:4.5,fill:D.color??qt(O),onMouseEnter:()=>{t={label:D.label,value:D.value},e.render()},onMouseLeave:()=>{t=null,e.render()}})),R=[0,.5,1].map(D=>{let O=M(D*U);return se("g",{key:`yt-${D}`},[se("line",{x1:34,y1:O,x2:286,y2:O,stroke:"var(--wf-color-border)","stroke-width":1,"stroke-dasharray":"3 3"}),se("text",{x:28,y:O+3,"text-anchor":"end",class:"wf-chart-label","font-size":10},`${Math.round(D*U)}`)])});return se("svg",{viewBox:"0 0 320 220",class:"wf-chart-svg",role:"img"},[...R,...S])},A;s==="bar"?A=k():s==="pie"?A=E():s==="radar"?A=T():s==="gauge"?A=P():s==="scatter"?A=I():A=x();let $=i.length>1?se("div",{class:"wf-chart-legend"},i.map((B,q)=>se("span",{class:"wf-chart-legend-item",key:`leg-${q}`},[se("span",{class:"wf-chart-legend-dot",style:{background:B.color??qt(q)}}),se("span",{class:"wf-chart-legend-label"},B.label)]))):null,N=t?se("div",{class:"wf-chart-tooltip"},[se("div",{class:"wf-chart-tooltip-label"},[t.color?se("span",{class:"wf-chart-tooltip-dot",style:{background:t.color}}):null,se("span",{},t.label)]),se("div",{class:"wf-chart-tooltip-value"},String(t.value))]):null;return t&&!r?r=e.ui.openPopup({key:"chart-tooltip",anchor:()=>n,placement:"top",gap:8,content:()=>N,onClose:()=>{r=null,t&&(t=null,n=null,e.render())}}):!t&&r?(r.close(),r=null):r&&r.update(N),se("div",{class:`wf-chart${g?" "+g:""}`,role:"img","aria-expanded":String(!!t),"aria-label":c??e?.i18n?.components?.Chart?.ariaLabel??"\u56FE\u8868"},[c?se("div",{class:"wf-chart-title"},c):null,A,$].filter(Boolean))}};import{createClientBrowser as gc}from"weifuwu/vdom";import{h as ne}from"weifuwu/vdom";import{h as lr}from"weifuwu/vdom";var Rs=["bold","italic","underline","h1","h2","h3","ul","ol","blockquote","alignLeft","alignCenter","alignRight","hr","image","table","link","clear","source"],Xl={bold:"B",italic:"I",underline:"U",h1:"H1",h2:"H2",h3:"H3",ul:"\u25A1",ol:"1.",blockquote:"\u275D",alignLeft:"\u21E4",alignCenter:"\u21D4",alignRight:"\u21E5",hr:"\u2014",image:"\u{1F5BC}",table:"\u229E",link:"\u{1F517}",clear:"\u2715",source:"</>"},$s={bold:"\u52A0\u7C97 (Ctrl+B)",italic:"\u659C\u4F53 (Ctrl+I)",underline:"\u4E0B\u5212\u7EBF (Ctrl+U)",h1:"\u6807\u9898 1",h2:"\u6807\u9898 2",h3:"\u6807\u9898 3",ul:"\u65E0\u5E8F\u5217\u8868",ol:"\u6709\u5E8F\u5217\u8868",blockquote:"\u5F15\u7528",alignLeft:"\u5DE6\u5BF9\u9F50",alignCenter:"\u5C45\u4E2D",alignRight:"\u53F3\u5BF9\u9F50",hr:"\u5206\u5272\u7EBF",image:"\u63D2\u5165\u56FE\u7247",table:"\u63D2\u5165\u8868\u683C",link:"\u63D2\u5165\u94FE\u63A5",clear:"\u6E05\u9664\u683C\u5F0F",source:"\u6E90\u7801"},Yl=["bold","italic","underline"],As=["h1","h2","h3"],Ds=["ul","ol"],Ls=["blockquote","alignLeft","alignCenter","alignRight","hr"],Jl=["image","table","link","clear"];function Zl(o,e){return Yl.includes(o)&&As.includes(e)||As.includes(o)&&Ds.includes(e)||Ds.includes(o)&&Ls.includes(e)||Ls.includes(o)&&Jl.includes(e)||["link","clear"].includes(o)&&e==="source"}function Ns(o,e,t,n,r,a){let s=o.map(l=>{if(r?.[l])return r[l](l);let g=["wf-editor-tb-btn",(l==="source"?t:!!e[l])&&"wf-editor-tb-btn--active",l==="link"&&"wf-editor-tb-btn--link"].filter(Boolean).join(" ");return lr("button",{key:l,class:g,type:"button",title:$s[l],"aria-label":$s[l],"data-item":l,onClick:u=>n(l,u.currentTarget)},Xl[l])}),i=[];return o.forEach((l,c)=>{c>0&&Zl(o[c-1],l)&&i.push(lr("span",{class:"wf-editor-tb-sep",key:`sep-${c}`})),i.push(s[c])}),lr("div",{class:"wf-editor-toolbar",role:"toolbar","aria-label":"\u7F16\u8F91\u683C\u5F0F"},[...i,...a??[]])}import{h as Fn}from"weifuwu/vdom";var Os=6;function Hs(o,e){let t='<table class="wf-editor-table"><tbody>';for(let n=0;n<o;n++){t+="<tr>";for(let r=0;r<e;r++)t+=n===0?'<td style="font-weight:var(--wf-font-weight-semibold,600)">&nbsp;</td>':"<td>&nbsp;</td>";t+="</tr>"}return t+="</tbody></table>",t}function Bs(o,e,t,n,r){let a=Fn("div",{class:"wf-editor-table-grid",onMouseLeave:r},Array.from({length:Os},(i,l)=>Fn("div",{class:"wf-editor-table-grid-row",key:`r${l}`},Array.from({length:Os},(c,f)=>{let g=l<=o&&f<=e;return Fn("div",{class:`wf-editor-table-grid-cell${g?" wf-editor-table-grid-cell--active":""}`,key:`${l}-${f}`,onMouseEnter:()=>n(l,f),onClick:()=>t(l+1,f+1)})})))),s=o>=0&&e>=0?`${o+1} \xD7 ${e+1} \u8868\u683C`:"\u9009\u62E9\u8868\u683C\u5927\u5C0F";return Fn("div",{class:"wf-editor-table-picker",onMouseDown:i=>i.stopPropagation()},[a,Fn("div",{class:"wf-editor-table-picker-label"},s)])}zt();import{aiStream as bc}from"weifuwu/vdom";zt();function mn(o){let e=[0];for(let t=0;t<o.length;t++)o[t]===`
11
- `&&e.push(t+1);return e}function Xt(o,e,t){let n=t??mn(o),r=0,a=n.length-1;for(;r<a;){let s=r+a+1>>1;n[s]<=e?r=s:a=s-1}return n[r]}function Yt(o,e){let t=Xt(o.text,e);for(let n of o.blockProps){if(n.start===t)return n;if(n.start>t)break}return null}function zs(o,e,t){return o.map(n=>n.end<=e?n:n.start>=e?{...n,start:n.start+t,end:n.end+t}:{...n,end:n.end+t}).sort((n,r)=>n.start-r.start||n.end-r.end)}function _s(o,e,t){return o.map(n=>n.at>=e?{...n,at:n.at+t}:n).sort((n,r)=>n.at-r.at)}function dr(o){return{text:o.text,blockProps:o.blockProps.slice(),marks:o.marks.slice(),embeds:o.embeds.slice()}}function pr(o,e,t,n,r){let a=mn(o),s=new Map(e.map(l=>[l.start,l])),i=[];for(let l of mn(t)){let c;l<n?c=l:l<n+r?c=n:c=l-r;let f=Xt(o,c,a),g=s.get(f);g&&i.push({...g,start:l})}return i.sort((l,c)=>l.start-c.start)}function hn(o,e){switch(e.type){case"text-insert":return Us(o,e.at,e.text);case"text-delete":return cr(o,e.at,e.len,e.removedEmbeds,e.removedBlocks);case"mark-apply":return tc(o,e);case"mark-restore":return nc(o,e.mark,e.spans);case"block-set":return Vs(o,e.start,e.kind,e.align??null);case"embed-insert":return oc(o,e.at,e.embed);case"embed-delete":return rc(o,e.at,e.embed);case"ai-apply":{if(o.text.slice(e.start,e.end)!==e.original)throw new Error(`[editor/model] ai-apply original \u4E0E\u6587\u6863\u4E0D\u7B26 (${e.start},${e.end})`);let t=o.embeds.filter(r=>r.at>=e.start&&r.at<e.end);if(t.length!==e.removedEmbeds.length||t.some((r,a)=>r.id!==e.removedEmbeds[a]?.id))throw new Error("[editor/model] ai-apply removedEmbeds \u4E0E\u6587\u6863\u4E0D\u7B26");let n=Us(cr(o,e.start,e.end-e.start,e.removedEmbeds,e.removedBlocks),e.start,e.revised);return Ql(n,e.removedBlocks,e.start,e.start+e.revised.length)}}}function Ql(o,e,t,n){if(e.length===0)return o;let r=o;for(let a of mn(o.text)){if(a<t||a>=n)continue;let s=e.find(i=>i.start===a);s&&(r=Vs(r,a,s.kind,s.align??null))}return r}function ec(o,e,t){return o.blockProps.filter(n=>n.start>=e&&n.start<=t)}function Us(o,e,t){let n=t.length;if(n===0)return o;if(t.includes(Ze))throw new Error("[editor/model] text-insert \u7981\u6B62\u542B\u5D4C\u5165\u5360\u4F4D\u7B26\u2014\u2014\u7528 embed-insert");let r=dr(o);return r.text=o.text.slice(0,e)+t+o.text.slice(e),r.marks=zs(o.marks,e,n),r.embeds=_s(o.embeds,e,n),r.blockProps=pr(o.text,o.blockProps,r.text,e,n),r}function cr(o,e,t,n=[],r=[]){if(t<=0||e<0||e+t>o.text.length)return o;let a=o.embeds.filter(l=>l.at>=e&&l.at<e+t);if(a.length!==n.length||a.some((l,c)=>l.id!==n[c]?.id))throw new Error("[editor/model] text-delete removedEmbeds \u4E0E\u6587\u6863\u4E0D\u7B26");let s=o.blockProps.filter(l=>l.start>=e&&l.start<=e+t);if(s.length!==r.length||s.some((l,c)=>l.start!==r[c]?.start))throw new Error("[editor/model] text-delete removedBlocks \u4E0E\u6587\u6863\u4E0D\u7B26");let i=dr(o);return i.text=o.text.slice(0,e)+o.text.slice(e+t),i.marks=o.marks.flatMap(l=>l.end<=e?[l]:l.start>=e+t?[{...l,start:l.start-t,end:l.end-t}]:l.start<e&&l.end>e+t?[{...l,end:l.end-t}]:l.start<e?[{...l,end:e}]:[{...l,start:e,end:Math.max(e,l.end-t)}]).filter(l=>l.end>l.start).sort((l,c)=>l.start-c.start||l.end-c.end),i.embeds=o.embeds.filter(l=>l.at<e||l.at>=e+t).map(l=>l.at>=e+t?{...l,at:l.at-t}:l).sort((l,c)=>l.at-c.at),i.blockProps=pr(o.text,o.blockProps,i.text,e,-t),i}function tc(o,e){let{start:t,end:n,mark:r,on:a,href:s}=e;if(t>=n)return o;let i=o.marks.filter(g=>g.type===r);if(i.length!==e.prev.length||i.some((g,u)=>g.start!==e.prev[u]?.start||g.end!==e.prev[u]?.end))throw new Error("[editor/model] mark-apply prev \u4E0E\u6587\u6863\u4E0D\u7B26");let l=o.marks.filter(g=>g.type!==r),c=o.marks.filter(g=>g.type===r).flatMap(g=>{if(g.end<=t||g.start>=n)return[g];let u=[];return g.start<t&&u.push({...g,end:t}),g.end>n&&u.push({...g,start:n}),u}),f=a?[...c,{start:t,end:n,type:r,...s?{href:s}:{}}]:c;return{...o,marks:[...l,...f].sort((g,u)=>g.start-u.start||g.end-u.end)}}function nc(o,e,t){let n=o.marks.filter(r=>r.type!==e);return{...o,marks:[...n,...t].sort((r,a)=>r.start-a.start||r.end-a.end)}}function Vs(o,e,t,n){if(Xt(o.text,e)!==e)return o;let a=o.blockProps.filter(l=>l.start!==e),i=t==="p"&&!n?a:[...a,{start:e,kind:t,...n?{align:n}:{}}];return{...o,blockProps:i.sort((l,c)=>l.start-c.start)}}function oc(o,e,t){let n=dr(o);return n.text=o.text.slice(0,e)+Ze+o.text.slice(e),n.marks=zs(o.marks,e,1),n.embeds=[..._s(o.embeds,e,1),{...t,at:e}].sort((r,a)=>r.at-a.at),n.blockProps=pr(o.text,o.blockProps,n.text,e,1),n}function rc(o,e,t){if(o.text[e]!==Ze)return o;let n=cr(o,e,1,[t],ec(o,e,e+1));return n.embeds=n.embeds.filter(r=>r.id!==t.id),n}function Ks(o=20){return{undoStack:[],redoStack:[]}}function fr(o,e,t=20){e.ts===void 0&&(e.ts=Date.now()),o.undoStack.push(e),o.redoStack=[],o.undoStack.length>t&&o.undoStack.shift()}function ur(o){let e=o.undoStack.pop();return e&&o.redoStack.push(e),e??null}function js(o){let e=o.redoStack.pop();return e&&o.undoStack.push(e),e??null}function Fs(o){return o.undoStack.length>0}function mr(o){return o.redoStack.length>0}zt();var sc=new Set(["P","DIV","H1","H2","H3","BLOCKQUOTE","LI","SECTION","ARTICLE","MAIN","HEADER","FOOTER","ASIDE","PRE","FIGURE","FORM"]),Gs={B:{type:"b"},STRONG:{type:"b"},I:{type:"i"},EM:{type:"i"},U:{type:"u"},A:{type:"link",href:!0}},Ws={IMG:"img",TABLE:"table",HR:"hr",PRE:"pre"},ic=new Set(["SCRIPT","IFRAME","OBJECT","EMBED","LINK","STYLE","META"]);function gr(o,e=!1){let t=typeof o=="string"?o:"",n=t.replace(/[\s\x00-\x1f\x7f]/g,"");if(n==="")return"";let r=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(n);if(!r)return t;let a=r[1].toLowerCase();return a==="http"||a==="https"||a==="mailto"||e&&/^data:image\/(png|jpeg|jpg|gif|webp|bmp)[;,]/.test(n)?n:null}function Ys(o){for(let e of Array.from(o.attributes)){let t=e.name.toLowerCase();if(t.startsWith("on")){o.removeAttribute(e.name);continue}if(t==="href"||t==="src"){let n=gr(e.value,t==="src");n===null?o.removeAttribute(e.name):n!==e.value&&o.setAttribute(e.name,n)}}for(let e of Array.from(o.children)){if(ic.has(e.tagName)){e.remove();continue}Ys(e)}}var qs={"wf-text-center":"center","wf-text-right":"right","wf-text-left":"left"};function ac(o){let e=o.style?.textAlign;if(e)return e;for(let t of o.classList??[])if(qs[t])return qs[t]}var hr=class{text="";marks=[];embeds=[];blockProps=[];embedSeq=0;append(e){this.text+=e}blockBoundary(){this.text.length>0&&this.text[this.text.length-1]!==`
1
+ var Na=Object.defineProperty;var Gt=(o,e,t)=>()=>{if(t)throw t[0];try{return o&&(e=o(o=0)),e}catch(n){throw t=[n],n}};var Go=(o,e)=>{for(var t in e)Na(o,t,{get:e[t],enumerable:!0})};var mn,Je,_t=Gt(()=>{mn={text:"",blockProps:[],marks:[],embeds:[]},Je="\uFFFC"});function sd(o){let e=4294967295;for(let t=0;t<o.length;t++)e=rd[(e^o[t])&255]^e>>>8;return(e^4294967295)>>>0}async function id(o){let e=globalThis.DecompressionStream;if(!e)throw new Error("zip: \u73AF\u5883\u65E0 DecompressionStream\uFF08deflate \u89E3\u538B\u4E0D\u652F\u6301\uFF09");let t=new e("deflate-raw"),n=await new Response(new Blob([o]).stream().pipeThrough(t)).arrayBuffer();return new Uint8Array(n)}async function xn(o){let e=-1;for(let i=o.length-22;i>=0;i--)if(o[i]===80&&o[i+1]===75&&o[i+2]===5&&o[i+3]===6){e=i;break}if(e<0)throw new Error("zip: EOCD \u672A\u627E\u5230\uFF08\u975E ZIP \u6216\u5DF2\u635F\u574F\uFF09");let t=new DataView(o.buffer,o.byteOffset,o.byteLength),n=t.getUint16(e+10,!0),r=t.getUint32(e+16,!0),a=new Map,s=r;for(let i=0;i<n;i++){if(t.getUint32(s,!0)!==33639248)throw new Error(`zip: central entry ${i} \u7B7E\u540D\u9519\u8BEF`);let l=t.getUint16(s+10,!0),c=t.getUint32(s+20,!0),f=t.getUint16(s+28,!0),g=t.getUint16(s+30,!0),u=t.getUint16(s+32,!0),p=t.getUint32(s+42,!0),d=new TextDecoder().decode(o.subarray(s+46,s+46+f));if(l!==0&&l!==8)throw new Error(`zip: ${d} \u538B\u7F29\u65B9\u6CD5 ${l} \u4E0D\u652F\u6301\uFF08\u88C1\u526A\uFF1Astore/deflate\uFF09`);let h=t.getUint16(p+26,!0),m=t.getUint16(p+28,!0),b=p+30+h+m,v=o.subarray(b,b+c);a.set(d,l===8?await id(v):v),s+=46+f+g+u}return a}function kn(o){let e=[],t=[],n=0,r=new TextEncoder;for(let[g,u]of o){let p=r.encode(g),d=sd(u),h=new Uint8Array(30),m=new DataView(h.buffer);m.setUint32(0,67324752,!0),m.setUint16(4,20,!0),m.setUint16(6,0,!0),m.setUint16(8,0,!0),m.setUint32(14,d,!0),m.setUint32(18,u.length,!0),m.setUint32(22,u.length,!0),m.setUint16(26,p.length,!0),m.setUint16(28,0,!0),e.push(h,p,u);let b=new Uint8Array(46),v=new DataView(b.buffer);v.setUint32(0,33639248,!0),v.setUint16(4,20,!0),v.setUint16(6,20,!0),v.setUint16(10,0,!0),v.setUint32(16,d,!0),v.setUint32(20,u.length,!0),v.setUint32(24,u.length,!0),v.setUint16(28,p.length,!0),v.setUint32(42,n,!0),t.push(b,p),n+=30+p.length+u.length}let a=t.reduce((g,u)=>g+u.length,0),s=new Uint8Array(22),i=new DataView(s.buffer);i.setUint32(0,101010256,!0),i.setUint16(8,o.size,!0),i.setUint16(10,o.size,!0),i.setUint32(12,a,!0),i.setUint32(16,n,!0);let l=n+a+22,c=new Uint8Array(l),f=0;for(let g of[...e,...t,s])c.set(g,f),f+=g.length;return c}var rd,Io=Gt(()=>{rd=(()=>{let o=new Uint32Array(256);for(let e=0;e<256;e++){let t=e;for(let n=0;n<8;n++)t=t&1?3988292384^t>>>1:t>>>1;o[e]=t>>>0}return o})()});function Lr(o){return o.replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&amp;/g,"&")}function pt(o){let e=0,t=o.length;function n(){for(;e<t&&/\s/.test(o[e]);)e++}function r(){let l=e;for(;e<t&&/[^\s/>="]/.test(o[e]);)e++;return o.slice(l,e)}function a(){let l={};for(;n(),!(e>=t||o[e]===">"||o[e]==="/"&&o[e+1]===">");){let c=r();if(n(),o[e]!=="="){e++;continue}e++,n();let f=o[e];if(f!=='"'&&f!=="'")continue;e++;let g=e;for(;e<t&&o[e]!==f;)e++;l[c]=Lr(o.slice(g,e)),e++}return l}function s(){for(;;){for(;e<t&&o[e]!=="<";)e++;if(e>=t)throw new Error("xml: \u610F\u5916\u5185\u5BB9\uFF08\u65E0\u6839\u5143\u7D20\uFF09");if(o.startsWith("<!--",e)){let u=o.indexOf("-->",e);e=u<0?t:u+3;continue}if(o.startsWith("<![CDATA[",e)){let u=o.indexOf("]]>",e),p=o.slice(e+9,u<0?t:u);return e=u<0?t:u+3,{name:"#text",attrs:{},children:[],text:p}}if(o[e+1]==="?"||o[e+1]==="!"){let u=o.indexOf(">",e);e=u<0?t:u+1;continue}e++;let l=r(),c=a(),f={name:l,attrs:c,children:[],text:""};if(o[e]==="/"&&o[e+1]===">")return e+=2,f;e++;let g="";for(;;){if(e>=t)throw new Error(`xml: \u672A\u95ED\u5408\u6807\u7B7E <${l}>`);if(o[e]==="<"){if(o.startsWith("</",e))return e+=2,r(),e=o.indexOf(">",e),e=e<0?t:e+1,f.text=Lr(g),f;g.trim()&&f.children.push({name:"#text",attrs:{},children:[],text:Lr(g)}),g="",f.children.push(s())}else g+=o[e],e++}}}return s()}function pe(o,e){return o.children.find(t=>t.name===e)??null}function Fe(o,e){return o.children.filter(t=>t.name===e)}function ft(o){let e=o.text;for(let t of o.children)t.name==="#text"?e+=t.text:e+=ft(t);return e}var $o=Gt(()=>{});function ki(o){return typeof o=="string"||typeof o=="number"}function Ci(o){if(typeof o.type!="string")throw new Error(`xml-serialize: \u4E0D\u652F\u6301\u7684 VNode type\uFF08OOXML \u751F\u6210\u53EA\u7528\u5B57\u7B26\u4E32\u5143\u7D20\u540D\uFF09: ${String(o.type)}`);let e=o.type,{children:t,...n}=o.props??{},r="";for(let[c,f]of Object.entries(n))if(!(c==="key"||f==null))if(typeof f=="string"||typeof f=="number"||typeof f=="boolean")r+=` ${c}="${Rr(String(f))}"`;else throw new Error(`xml-serialize: \u5C5E\u6027 ${c} \u503C\u5FC5\u987B\u4E3A\u5B57\u7B26\u4E32/\u6570\u5B57/\u5E03\u5C14\uFF08OOXML \u5C5E\u6027\u65E0\u5BF9\u8C61\uFF09`);let a=Array.isArray(t)?t:t==null?[]:[t],s=[],i=c=>{for(let f of c)Array.isArray(f)?i(f):f!=null&&typeof f!="boolean"&&s.push(f)};if(i(a),s.length===0)return ad.has(e)?`<${e}${r}/>`:`<${e}${r}></${e}>`;let l="";for(let c of s)ki(c)?l+=Rr(String(c)):l+=Ci(c);return`<${e}${r}>${l}</${e}>`}function Ne(o,e=!0){let t;return Array.isArray(o)?t=o.map(n=>Ne(n,!1)).join(""):ki(o)?t=Rr(String(o)):o==null||typeof o=="boolean"?t="":t=Ci(o),e?`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
2
+ ${t}`:t}var Rr,ad,Ao=Gt(()=>{Rr=o=>o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;"),ad=new Set(["w:br","w:cr","w:tab","w:b","w:i","w:u"])});var Hr={};Go(Hr,{deckToPptx:()=>pd,pptxToDeck:()=>ld});import{h as ae}from"weifuwu/vdom";async function ld(o){let e=await xn(o),t=[],n=new TextDecoder,r=[...e.keys()].filter(s=>/^ppt\/slides\/slide\d+\.xml$/.test(s)).sort((s,i)=>{let l=Number(/slide(\d+)/.exec(s)?.[1]??0),c=Number(/slide(\d+)/.exec(i)?.[1]??0);return l-c}),a=[];for(let s of r){let i=pt(n.decode(e.get(s))),l=i.name==="p:sld"?i:pe(i,"p:sld"),c=l?pe(l,"p:cSld"):null,f=c?pe(c,"p:spTree"):null,g=c??null,u=[];if(f){for(let p of Fe(f,"p:sp")){let d=cd(p);d&&u.push(d)}for(let p of Fe(f,"p:pic")){let d=dd(p);d&&u.push(d)}}else t.push(`${s} \u7F3A\u5C11 spTree\uFF08\u88C1\u526A\uFF1A\u7A7A\u5E7B\u706F\u7247\uFF09`);a.push({shapes:u,layout:void 0})}if(a.length===0)throw new Error("pptx: \u65E0\u5E7B\u706F\u7247\uFF08\u975E pptx\uFF1F\uFF09");return{deck:{slides:a,activeSlide:0,size:{w:960,h:540}},warnings:t}}function Mi(o){let e=pe(o,"p:spPr"),t=pe(o,"p:xfrm")??pe(o,"a:xfrm")??(e?pe(e,"a:xfrm"):null);if(!t)return null;let n=pe(t,"a:off"),r=pe(t,"a:ext");return{x:n?Math.round(Number(n.attrs.x??0)/Kt):0,y:n?Math.round(Number(n.attrs.y??0)/Kt):0,w:r?Math.round(Number(r.attrs.cx??0)/Kt):100,h:r?Math.round(Number(r.attrs.cy??0)/Kt):40}}function cd(o){let e=Mi(o);if(!e)return null;let t=pe(o,"p:nvSpPr"),n=t?pe(t,"p:cNvPr")?.attrs.id??"sp":"sp",r="text",a=pe(o,"p:spPr"),i=(a?pe(a,"a:prstGeom"):null)?.attrs.prst;i==="line"?r="line":i&&(r="rect");let l=pe(o,"p:txBody"),c="";return l&&(c=Fe(l,"a:p").map(f=>ft(f)).join(`
3
+ `).trim()),{id:String(n),kind:r,...e,props:c?{text:c}:void 0}}function dd(o){let e=Mi(o);if(!e)return null;let t=pe(o,"p:nvPicPr"),n=t?pe(t,"p:cNvPr")?.attrs.id??"pic":"pic";return{id:String(n),kind:"image",...e,props:{imageUrl:"#"}}}function pd(o){let e=[],t=[],n=[],r=[],a=Math.max(1,o.slides.length);o.slides.forEach((u,p)=>{let d=[];u.shapes.forEach((m,b)=>{let v=2+b,w=Math.round(m.x*Kt),y=Math.round(m.y*Kt),x=Math.round(m.w*Kt),k=Math.round(m.h*Kt);if(m.kind==="image"){e.push(`shape ${m.id} \u56FE\u7247\u5BFC\u51FA\u88C1\u526A\uFF08v1 \u65E0\u5A92\u4F53\u4E8C\u8FDB\u5236\uFF09`),d.push(ae("p:pic",{key:`pic${b}`},ae("p:nvPicPr",{},ae("p:cNvPr",{id:v,name:`pic${b}`}),ae("p:cNvPicPr")),ae("p:blipFill",{},ae("a:blip",{"r:embed":"rIdPlaceholder"})),ae("p:spPr",{},Nr(w,y,x,k))));return}let E=m.kind==="line"?"line":m.kind==="rect"?"rect":null,P=m.props?.text?ae("p:txBody",{},...m.props.text.split(`
4
+ `).map((S,I)=>ae("a:p",{key:`p${I}`},ae("a:r",{},ae("a:t",{},S))))):null;d.push(ae("p:sp",{key:`sp${b}`},ae("p:nvSpPr",{},ae("p:cNvPr",{id:v,name:`shape${b}`}),ae("p:cNvSpPr")),ae("p:spPr",{},Nr(w,y,x,k),...E?[ae("a:prstGeom",{prst:E},ae("a:avLst"))]:[]),...P?[P]:[]))});let h=ae("p:sld",{xmlns:"http://schemas.openxmlformats.org/presentationml/2006/main","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ae("p:cSld",{},ae("p:spTree",{},ae("p:nvGrpSpPr",{},ae("p:cNvPr",{id:1,name:""}),ae("p:cNvGrpSpPr"),ae("p:nvPr")),ae("p:grpSpPr",{},Nr(0,0,9144e3,5143500)),...d)));t.push({path:`ppt/slides/slide${p+1}.xml`,xml:Ne(h)}),n.push(ae("Relationship",{Id:`rId${p+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/slide",Target:`slides/slide${p+1}.xml`})),r.push(ae("p:sldId",{id:256+p,"r:id":`rId${p+1}`}))});let s=ae("p:presentation",{xmlns:"http://schemas.openxmlformats.org/presentationml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ae("p:sldIdLst",{},...r),ae("p:sldSz",{cx:9144e3,cy:5143500}),ae("p:notesSz",{cx:6858e3,cy:9144e3})),i=Ne(ae("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},...n)),l=Ne(ae("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},ae("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"ppt/presentation.xml"}))),c=Ne(ae("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},ae("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),ae("Default",{Extension:"xml",ContentType:"application/xml"}),ae("Override",{PartName:"/ppt/presentation.xml",ContentType:"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml"}),...o.slides.map((u,p)=>ae("Override",{PartName:`/ppt/slides/slide${p+1}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.presentationml.slide+xml"})))),f=new TextEncoder,g=new Map([["[Content_Types].xml",f.encode(c)],["_rels/.rels",f.encode(l)],["ppt/presentation.xml",f.encode(Ne(s))],["ppt/_rels/presentation.xml.rels",f.encode(i)]]);for(let u of t)g.set(u.path,f.encode(u.xml));return{data:kn(g),warnings:e}}function Nr(o,e,t,n){return ae("a:xfrm",{},ae("a:off",{x:o,y:e}),ae("a:ext",{cx:t,cy:n}))}var Kt,Or=Gt(()=>{Io();$o();Ao();Kt=9525});var Ur={};Go(Ur,{workbookToXlsx:()=>md,xlsxToWorkbook:()=>fd});import{h as ge}from"weifuwu/vdom";async function fd(o){let e=await xn(o),t=[],n=new TextDecoder,r=e.get("xl/workbook.xml");if(!r)throw new Error("xlsx: \u7F3A\u5C11 xl/workbook.xml\uFF08\u975E xlsx\uFF1F\uFF09");let a=pt(n.decode(r)),s=[],i=pe(a,"sheets");if(i)for(let p of Fe(i,"sheet"))s.push({name:p.attrs.name??`Sheet${s.length+1}`,rId:p.attrs["r:id"]??""});let l=new Map,c=e.get("xl/_rels/workbook.xml.rels");if(c){let p=pt(n.decode(c));for(let d of Fe(p,"Relationship")){let h=d.attrs.Target??"";h.startsWith("worksheets/")&&l.set(d.attrs.Id??"",`xl/${h}`)}}let f=[],g=e.get("xl/sharedStrings.xml");if(g){let p=pt(n.decode(g)),d=p.name==="sst"?p:pe(p,"sst");if(d)for(let h of Fe(d,"si")){let m=Fe(h,"t");f.push(m.length>0?m.map(b=>ft(b)).join(""):ft(h))}}let u=[];for(let p=0;p<s.length;p++){let d=s[p],h=l.get(d.rId)??`xl/worksheets/sheet${p+1}.xml`,m=e.get(h);if(!m){t.push(`sheet ${d.name} \u90E8\u4EF6\u7F3A\u5931\uFF08${h}\uFF09`);continue}let b=Pi(n.decode(m),f,t);u.push({...b,name:d.name})}if(u.length===0){let p=e.get("xl/worksheets/sheet1.xml");if(p)u.push({...Pi(n.decode(p),f,t),name:"Sheet1"});else throw new Error("xlsx: \u65E0\u53EF\u7528\u5DE5\u4F5C\u8868")}return{workbook:{sheets:u,activeSheet:0},warnings:t}}function Pi(o,e,t){let n=pt(o),r=pe(n,"sheetData"),a=new Map,s=1;if(r)for(let i of Fe(r,"row"))for(let l of Fe(i,"c")){let c=(l.attrs.r??"").toUpperCase(),f=l.attrs.t,g=pe(l,"f"),u=pe(l,"v"),p=u?ft(u):"",d;if(g)d={kind:"f",value:p,formula:ft(g)};else if(f==="s"){let h=Number(p);d={kind:"s",value:Number.isFinite(h)&&e[h]!=null?e[h]:p}}else if(f==="b")d={kind:"b",value:p==="1"||p==="true"};else if(f==="n"||p!==""){let h=Number(p);d=Number.isFinite(h)&&p!==""?{kind:"n",value:h}:{kind:"s",value:p}}else d={kind:"s",value:""};if(c){a.set(c,d);let h=ud(c);h+1>s&&(s=h+1)}else t.push("\u5355\u5143\u683C\u7F3A\u5C11 r \u5F15\u7528\u2014\u2014\u8DF3\u8FC7")}return{name:"",cols:s,cells:a}}function ud(o){let e=/^([A-Z]+)/.exec(o);if(!e)return 0;let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return t-1}function md(o){let e=[],t=[],n=new Map,r=h=>{let m=n.get(h);return m==null&&(m=t.length,t.push(h),n.set(h,m)),m},a=[],s=[],i=[];o.sheets.forEach((h,m)=>{let b=[],v=new Map,w=h.cols;for(let[k,E]of h.cells){let{row:P,col:S}=Br(k);S+1>w&&(w=S+1);let I=v.get(P)??[];I.push({ref:k,cell:E}),v.set(P,I)}let y=[...v.keys()].sort((k,E)=>k-E);for(let k of y){let E=v.get(k).sort((S,I)=>Br(S.ref).col-Br(I.ref).col),P=[];for(let{ref:S,cell:I}of E)I.kind==="f"&&I.formula?P.push(ge("c",{r:S,t:"f"},ge("f",{},I.formula),ge("v",{},String(I.value??"")))):I.kind==="s"?P.push(ge("c",{r:S,t:"s"},ge("v",{},String(r(String(I.value)))))):I.kind==="b"?P.push(ge("c",{r:S,t:"b"},ge("v",{},I.value?"1":"0"))):I.kind==="n"?P.push(ge("c",{r:S,t:"n"},ge("v",{},String(I.value)))):P.push(ge("c",{r:S,t:"s"},ge("v",{},String(r(String(I.value))))));b.push(ge("row",{r:k+1},...P))}let x=ge("worksheet",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main"},ge("sheetData",{},...b));a.push({path:`xl/worksheets/sheet${m+1}.xml`,xml:Ne(x)}),s.push(ge("Relationship",{Id:`rId${m+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",Target:`worksheets/sheet${m+1}.xml`})),i.push(ge("sheet",{name:h.name,sheetId:m+1,"r:id":`rId${m+1}`}))});let l=ge("workbook",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships"},ge("sheets",{},...i)),c=ge("sst",{xmlns:"http://schemas.openxmlformats.org/spreadsheetml/2006/main",count:t.length,uniqueCount:t.length},...t.map((h,m)=>ge("si",{key:`si${m}`},ge("t",{},h)))),f=ge("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},...s,ge("Relationship",{Id:`rId${o.sheets.length+1}`,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",Target:"sharedStrings.xml"})),g=Ne(ge("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},ge("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),ge("Default",{Extension:"xml",ContentType:"application/xml"}),ge("Override",{PartName:"/xl/workbook.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"}),...o.sheets.map((h,m)=>ge("Override",{PartName:`/xl/worksheets/sheet${m+1}.xml`,ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"})),ge("Override",{PartName:"/xl/sharedStrings.xml",ContentType:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"}))),u=Ne(ge("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},ge("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"xl/workbook.xml"}))),p=new TextEncoder,d=new Map([["[Content_Types].xml",p.encode(g)],["_rels/.rels",p.encode(u)],["xl/workbook.xml",p.encode(Ne(l))],["xl/_rels/workbook.xml.rels",p.encode(Ne(f))],["xl/sharedStrings.xml",p.encode(Ne(c))]]);for(let h of a)d.set(h.path,p.encode(h.xml));return{data:kn(d),warnings:e}}function Br(o){let e=/^([A-Z]+)(\d+)$/.exec(o);if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}var zr=Gt(()=>{Io();$o();Ao()});var _r={};Go(_r,{base64ToBytes:()=>Ii,bytesToBase64:()=>$i,docToDocx:()=>wd,docxToDoc:()=>gd});import{h as j}from"weifuwu/vdom";function Ii(o){if(typeof Buffer<"u")return new Uint8Array(Buffer.from(o,"base64"));let e=atob(o),t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}function $i(o){if(typeof Buffer<"u")return Buffer.from(o).toString("base64");let e="";for(let t=0;t<o.length;t++)e+=String.fromCharCode(o[t]);return btoa(e)}async function gd(o){let e=await xn(o),t=[],n=e.get("word/document.xml");if(!n)throw new Error("docx: \u7F3A\u5C11 word/document.xml\uFF08\u975E docx\uFF1F\uFF09");let r=new Map,a=e.get("word/_rels/document.xml.rels");if(a){let d=pt(new TextDecoder().decode(a));for(let h of Fe(d,"Relationship")){let m=h.attrs.Target??"";m.startsWith("media/")&&r.set(h.attrs.Id??"",`word/${m}`)}}let s=pt(new TextDecoder().decode(n)),i=pe(s,"w:body");if(!i)throw new Error("docx: \u7F3A\u5C11 w:body");let l="",c=[],f=[],g=[],u=0,p=d=>{l+=d};for(let d of i.children)if(d.name==="w:p"){let h=null,m,b=pe(d,"w:pPr");if(b){let w=pe(b,"w:pStyle");w?.attrs["w:val"]&&Si[w.attrs["w:val"]]&&(h=Si[w.attrs["w:val"]]);let y=pe(b,"w:jc");y?.attrs["w:val"]&&Ti[y.attrs["w:val"]]&&(m=Ti[y.attrs["w:val"]])}let v=l.length;for(let w of d.children)if(w.name==="w:r"){let y=w,x=pe(y,"w:rPr"),k=!!x&&!!pe(x,"w:b"),E=!!x&&!!pe(x,"w:i"),P=!!x&&!!pe(x,"w:u");Fe(y,"w:br").length>0&&p(`
5
+ `);let S=pe(y,"w:t");if(S){let A=ft(S);p(A),k&&f.push({start:l.length-A.length,end:l.length,type:"b"}),E&&f.push({start:l.length-A.length,end:l.length,type:"i"}),P&&f.push({start:l.length-A.length,end:l.length,type:"u"})}let I=pe(y,"w:drawing")??pe(y,"w:pict");if(I){let A=bd(I),$=A?r.get(A):void 0;if($&&e.has($)){let N=e.get($),W=`<img src="data:${yd($)};base64,${$i(N)}" alt="">`;g.push({id:`d${u++}`,at:l.length,type:"img",html:W}),p(Je)}else t.push(`\u56FE\u7247 r:embed=${A??"?"} \u672A\u627E\u5230\uFF08\u88C1\u526A\uFF1A\u5916\u90E8\u56FE\u7247\u4E0D\u652F\u6301\uFF09`)}}else if(w.name==="w:tbl"){let y=Ei(w);g.push({id:`d${u++}`,at:l.length,type:"table",html:y}),p(Je)}if(p(`
6
+ `),h||m){let w={start:v,kind:h??"p"};m&&(w.align=m),c.push(w)}}else if(d.name==="w:tbl"){let h=Ei(d);g.push({id:`d${u++}`,at:l.length,type:"table",html:h}),p(Je),p(`
7
+ `)}else d.name;return{doc:{text:l,blockProps:c,marks:f,embeds:g},warnings:t}}function bd(o){let e=t=>{if(t.attrs?.["r:embed"])return t.attrs["r:embed"];for(let n of t.children??[]){let r=e(n);if(r)return r}return null};return e(o)}function yd(o){let e=o.split(".").pop()?.toLowerCase()??"";return{png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",bmp:"image/bmp",svg:"image/svg+xml",webp:"image/webp"}[e]??"image/png"}function Ei(o){let e=(o.children??[]).filter(n=>n.name==="w:tr");if(e.length===0)return'<table class="wf-editor-table"><tbody></tbody></table>';let t='<table class="wf-editor-table"><tbody>';for(let n of e){t+="<tr>";for(let r of(n.children??[]).filter(a=>a.name==="w:tc")){let a=(r.children??[]).filter(s=>s.name==="w:p").map(s=>(s.children??[]).filter(i=>i.name==="w:r").map(i=>(i.children??[]).filter(l=>l.name==="w:t").map(l=>Ai(l)).join("")).join("")).join("");t+=`<td>${hd(a)}</td>`}t+="</tr>"}return t+="</tbody></table>",t}function Ai(o){if(!o.children||o.children.length===0)return o.text??"";let e=o.text??"";for(let t of o.children)e+=Ai(t);return e}function wd(o){let e=[],t=new Map,n=[],r=j("w:document",{"xmlns:w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main","xmlns:r":"http://schemas.openxmlformats.org/officeDocument/2006/relationships","xmlns:wp":"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing","xmlns:a":"http://schemas.openxmlformats.org/drawingml/2006/main","xmlns:pic":"http://schemas.openxmlformats.org/drawingml/2006/picture"},j("w:body",{},vd(o,t,n,e),j("w:sectPr",{},j("w:pgSz",{"w:w":11906,"w:h":16838}),j("w:pgMar",{"w:top":1440,"w:right":1440,"w:bottom":1440,"w:left":1440})))),a=Ne(r),s=Ne(j("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},j("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",Target:"styles.xml"}),...n)),i=Ne(j("w:styles",{"xmlns:w":"http://schemas.openxmlformats.org/wordprocessingml/2006/main"},j("w:docDefaults",{},j("w:rPrDefault",{},j("w:rPr",{},j("w:sz",{"w:val":22})))),j("w:style",{"w:type":"paragraph","w:default":"1","w:styleId":"Normal"},j("w:name",{"w:val":"Normal"})),j("w:style",{"w:type":"paragraph","w:styleId":"Heading1"},j("w:name",{"w:val":"heading 1"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":36}))),j("w:style",{"w:type":"paragraph","w:styleId":"Heading2"},j("w:name",{"w:val":"heading 2"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":28}))),j("w:style",{"w:type":"paragraph","w:styleId":"Heading3"},j("w:name",{"w:val":"heading 3"}),j("w:basedOn",{"w:val":"Normal"}),j("w:rPr",{},j("w:b"),j("w:sz",{"w:val":24}))))),l=Ne(j("Types",{xmlns:"http://schemas.openxmlformats.org/package/2006/content-types"},j("Default",{Extension:"rels",ContentType:"application/vnd.openxmlformats-package.relationships+xml"}),j("Default",{Extension:"xml",ContentType:"application/xml"}),j("Default",{Extension:"png",ContentType:"image/png"}),j("Default",{Extension:"jpeg",ContentType:"image/jpeg"}),j("Override",{PartName:"/word/document.xml",ContentType:"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"}),j("Override",{PartName:"/word/styles.xml",ContentType:"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"}))),c=Ne(j("Relationships",{xmlns:"http://schemas.openxmlformats.org/package/2006/relationships"},j("Relationship",{Id:"rId1",Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",Target:"word/document.xml"}))),f=new TextEncoder,g=new Map([["[Content_Types].xml",f.encode(l)],["_rels/.rels",f.encode(c)],["word/document.xml",f.encode(a)],["word/_rels/document.xml.rels",f.encode(s)],["word/styles.xml",f.encode(i)]]);for(let[u,p]of t)g.set(u,p);return{data:kn(g),warnings:e}}function vd(o,e,t,n){let r=[],a=d=>{let h=o.blockProps.find(m=>m.start===d);return h?{kind:h.kind==="p"?"":h.kind==="h1"?"Heading1":h.kind==="h2"?"Heading2":"Heading3",align:h.align}:null},s=(d,h)=>{let m=[],b=o.marks.filter(y=>y.start>=d&&y.end<=h&&y.start<y.end).sort((y,x)=>y.start-x.start||y.end-x.end),v=d,w=[];for(let y of b)y.start>v&&w.push({from:v,to:Math.min(y.start,h),ms:[]}),v=Math.max(v,y.start),y.end<=h&&(w.push({from:y.start,to:y.end,ms:[y]}),v=y.end);v<h&&w.push({from:v,to:h,ms:[]});for(let y of w){let x=o.text.slice(y.from,y.to);if(!x)continue;let k=[];for(let E of y.ms)E.type==="b"?k.push(j("w:b")):E.type==="i"?k.push(j("w:i")):E.type==="u"?k.push(j("w:u")):E.type==="link"&&k.push(j("w:u"),j("w:color",{"w:val":"0563C1"}));m.push(k.length>0?j("w:r",{},j("w:rPr",{},...k),j("w:t",{"xml:space":"preserve"},x)):j("w:r",{},j("w:t",{"xml:space":"preserve"},x)))}return m},i=(d,h,m)=>{let b=a(d),v=[];b&&(b.kind&&v.push(j("w:pStyle",{"w:val":b.kind})),b.align&&v.push(j("w:jc",{"w:val":b.align})));let w=[...s(d,h),...m];return v.length>0?j("w:p",{},j("w:pPr",{},...v),...w):j("w:p",{},...w)},l=0,c=[],f={current:0},g=()=>{if(c.length===0){l<f.current?r.push(i(l,f.current,[])):r.push(i(l,l,[]));return}let d=l,h=[];for(let m of c)m.kind==="block"?(r.push(i(d,m.at,h)),h=[],r.push(m.vnode),d=m.at+1):h.push(m.vnode);r.push(i(d,f.current,h))},u=[...o.embeds].sort((d,h)=>d.at-h.at),p=0;for(;;){let d=o.text.indexOf(`
8
+ `,l),h=d<0?o.text.length:d;for(f.current=h,c.length=0;p<u.length&&u[p].at<h;){let m=u[p],b=xd(m,e,t,n);b&&c.push({at:m.at,kind:m.type==="pre"||m.type==="hr"?"block":"inline",vnode:b}),p++}if(g(),d<0||(l=h+1,l>=o.text.length))break}return r}function xd(o,e,t,n){if(o.type==="img"){let r=/src="data:([^;]+);base64,([^"]+)"/.exec(o.html);if(r){let a=e.size+1,s=`rIdImg${a+1}`,i=r[1].includes("png")?"png":r[1].includes("jpeg")||r[1].includes("jpg")?"jpeg":"png",l=`word/media/image${a}.${i}`;return e.set(l,Ii(r[2])),t.push(j("Relationship",{Id:s,Type:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",Target:`media/image${a}.${i}`})),j("w:r",{},j("w:drawing",{},j("wp:inline",{distT:0,distB:0,distL:0,distR:0},j("wp:extent",{cx:1371600,cy:1371600}),j("wp:docPr",{id:a,name:`image${a}`}),j("a:graphic",{},j("a:graphicData",{uri:"http://schemas.openxmlformats.org/drawingml/2006/picture"},j("pic:pic",{},j("pic:nvPicPr",{},j("pic:cNvPr",{id:a,name:`image${a}`}),j("pic:cNvPicPr")),j("pic:blipFill",{},j("a:blip",{"r:embed":s}),j("a:stretch",{},j("a:fillRect"))),j("pic:spPr",{},j("a:xfrm",{},j("a:off",{x:0,y:0}),j("a:ext",{cx:1371600,cy:1371600})),j("a:prstGeom",{prst:"rect"},j("a:avLst")))))))))}return n.push("\u56FE\u7247 embed \u975E data url\u2014\u2014\u5BFC\u51FA\u88C1\u526A\uFF08http \u56FE\u7247\u9700\u670D\u52A1\u7AEF\u4E0B\u8F7D\uFF09"),j("w:p")}if(o.type==="table")return Cd(o);if(o.type==="hr")return j("w:p",{},j("w:pPr",{},j("w:pBdr",{},j("w:bottom",{"w:val":"single","w:sz":6}))));if(o.type==="pre"){let a=kd(o.html).split(`
9
+ `),s=[];return a.forEach((i,l)=>{l>0&&s.push(j("w:r",{key:`br${l}`},j("w:br"))),s.push(j("w:r",{key:`l${l}`},j("w:t",{"xml:space":"preserve"},i)))}),j("w:p",{key:"pre"},...s)}return n.push(`embed \u7C7B\u578B ${o.type} \u5BFC\u51FA\u88C1\u526A`),j("w:p")}function kd(o){let e=/<pre[^>]*>([\s\S]*)<\/pre>/.exec(o);return e?e[1].replace(/<[^>]+>/g,""):""}function Cd(o){try{let e=pt(o.html),t=pe(e,"tbody")??e;return j("w:tbl",{},j("w:tblPr",{},j("w:tblW",{"w:w":0,"w:type":"auto"})),...Fe(t,"tr").map((n,r)=>j("w:tr",{key:`r${r}`},...Fe(n,"td").map((a,s)=>j("w:tc",{key:`c${s}`},j("w:tcPr",{},j("w:tcW",{"w:w":0,"w:type":"auto"})),j("w:p",{},j("w:r",{},j("w:t",{"xml:space":"preserve"},ft(a)))))))))}catch{return j("w:p",{},j("w:r",{},j("w:t",{},"[\u8868\u683C\uFF08\u5BFC\u51FA\u88C1\u526A\u2014\u2014\u683C\u5F0F\u65E0\u6CD5\u89E3\u6790\uFF09]")))}}var hd,Si,Ti,Vr=Gt(()=>{Io();$o();Ao();_t();hd=o=>o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");Si={Heading1:"h1",Heading2:"h2",Heading3:"h3",heading1:"h1",heading2:"h2",heading3:"h3",title:"h1",Title:"h1"},Ti={center:"center",right:"right",left:"left",both:"left",distribute:"left"}});import{h as ps}from"weifuwu/vdom";var Ha={"chevron-down":["M6 9l6 6 6-6"],"chevron-up":["M6 15l6-6 6 6"],"chevron-left":["M15 18l-6-6 6-6"],"chevron-right":["M9 18l6-6-6-6"],"arrow-left":["M19 12H5","M12 19l-7-7 7-7"],"arrow-up":["M12 19V5","M5 12l7-7 7 7"],"arrow-down":["M12 5v14","M19 12l-7 7-7-7"],"arrow-right":["M5 12h14","M12 5l7 7-7 7"],sort:["M7 15l5 5 5-5","M7 9l5-5 5 5"],"sort-asc":["M12 19V5","M5 12l7-7 7 7"],"sort-desc":["M12 5v14","M19 12l-7 7-7-7"],check:["M20 6L9 17l-5-5"],close:["M18 6L6 18","M6 6l12 12"],alert:["M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z","M12 9v4","M12 17h.01"],info:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 16v-4","M12 8h.01"],warning:["M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z","M12 9v4","M12 17h.01"],pause:["M6 4h4v16H6z","M14 4h4v16h-4z"],settings:["M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z","M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],search:["M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16z","M21 21l-4.35-4.35"],send:["M22 2L11 13","M22 2l-7 20-4-9-9-4 20-7z"],stop:["M6 6h12v12H6z"],retry:["M1 4v6h6","M23 20v-6h-6","M20.49 9A9 9 0 0 0 5.64 5.64L1 10","M3.51 15a9 9 0 0 0 14.85 3.36L23 14"],upload:["M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4","M17 8l-5-5-5 5","M12 3v12"],trash:["M3 6h18","M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2","M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14","M10 11v6","M14 11v6"],edit:["M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7","M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"],plus:["M12 5v14","M5 12h14"],copy:["M20 9h-9a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2-2v-9a2 2 0 0 0-2-2z","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"],eye:["M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z","M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],"eye-off":["M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94","M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19","M14.12 14.12a3 3 0 1 1-4.24-4.24","M1 1l22 22"],star:["M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"],dashboard:["M3 13h8V3H3z","M21 13h-8V9h8z","M21 21h-8v-8h8z","M3 21h8v-8H3z"],grid:["M3 3h7v7H3z","M14 3h7v7h-7z","M14 14h7v7h-7z","M3 14h7v7H3z"],box:["M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z","M3.27 6.96L12 12.01l8.73-5.05","M12 22.08V12"],users:["M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2","M9 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8z","M23 21v-2a4 4 0 0 0-3-3.87","M16 3.13a4 4 0 0 1 0 7.75"],user:["M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2","M12 11a4 4 0 1 0 0-8 4 4 0 0 0 0 8z"],home:["M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M9 22V12h6v10"],folder:["M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"],file:["M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z","M13 2v7h7"],"file-text":["M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z","M13 2v7h7","M9 13h6","M9 17h6"],calendar:["M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M16 3v4","M8 3v4","M3 11h18"],clock:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 6v6l4 2"],bell:["M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9","M13.73 21a2 2 0 0 1-3.46 0"],menu:["M3 12h18","M3 6h18","M3 18h18"],activity:["M22 12h-4l-3 9L9 3l-3 9H2"],"trending-up":["M23 6l-9.5 9.5-5-5L1 18","M17 6h6v6"],"trending-down":["M23 18l-9.5-9.5-5 5L1 6","M17 18h6v-6"],database:["M12 8c4.97 0 9-1.34 9-3s-4.03-3-9-3-9 1.34-9 3 4.03 3 9 3z","M21 12c0 1.66-4.03 3-9 3s-9-1.34-9-3","M3 5v14c0 1.66 4.03 3 9 3s9-1.34 9-3V5"],server:["M20 4H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z","M4 14h16","M20 14a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-4a2 2 0 0 1 2-2","M7 18h.01","M12 18h.01"],heart:["M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"],refresh:["M23 4v6h-6","M1 20v-6h6","M3.51 9a9 9 0 0 1 14.85-3.36L23 10","M20.49 15a9 9 0 0 1-14.85 3.36L1 14"],message:["M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"],inbox:["M22 12h-6l-2 3h-4l-2-3H2","M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"],shield:["M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"],zap:["M13 2L3 14h9l-1 8 10-12h-9l1-8z"],target:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 18a6 6 0 1 0 0-12 6 6 0 0 0 0 12z","M12 14a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"],mail:["M4 4h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z","M22 6l-10 7L2 6"],"external-link":["M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6","M15 3h6v6","M10 14L21 3"],"log-out":["M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4","M16 17l5-5-5-5","M21 12H9"],lock:["M5 11h14a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2z","M7 11V7a5 5 0 0 1 10 0v4"],list:["M8 6h13","M8 12h13","M8 18h13","M3 6h.01","M3 12h.01","M3 18h.01"],"bar-chart":["M12 20V10","M18 20V4","M6 20v-4"],gauge:["M12 15l3.5-3.5","M20.39 18.39A10 10 0 1 0 3.61 18.39","M12 15a2 2 0 1 0 0 4 2 2 0 0 0 0-4z"],paperclip:["M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"],filter:["M22 3H2l8 9.46V19l4 2v-8.54L22 3z"],layers:["M12 2L2 7l10 5 10-5-10-5z","M2 17l10 5 10-5","M2 12l10 5 10-5"],"map-pin":["M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z","M15 10a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"],"book-open":["M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z","M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"],github:["M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"],tag:["M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z","M7 7h.01"],phone:["M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"],"more-vertical":["M12 7a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M12 13.5a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M12 20a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z"],"check-circle":["M22 11.08V12a10 10 0 1 1-5.93-9.14","M22 4L12 14.01l-3-3"],"alert-circle":["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M12 8v4","M12 16h.01"],wifi:["M5 12.55a11 11 0 0 1 14.08 0","M1.42 9a16 16 0 0 1 21.16 0","M8.53 16.11a6 6 0 0 1 6.95 0","M12 20h.01"],cpu:["M9 9h6v6H9z","M9 1v4","M15 1v4","M9 19v4","M15 19v4","M1 9h4","M1 15h4","M19 9h4","M19 15h4","M5 5h14v14H5z"],"hard-drive":["M22 12H2","M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z","M6 16h.01","M10 16h.01"],globe:["M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z","M2 12h20","M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"],briefcase:["M16 20V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16","M2 20h20","M4 4h16a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2z"],layout:["M3 3h18a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1z","M9 3v18","M3 9h18"],camera:["M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z","M12 17a4 4 0 1 0 0-8 4 4 0 0 0 0 8z"],image:["M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z","M8.5 10a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z","M21 15l-5-5L5 21"],share:["M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8","M16 6l-4-4-4 4","M12 2v13"]},O=(o,e)=>t=>{let{name:n,size:r,className:a}=t;return ps("svg",{class:`wf-icon${a?" "+a:""}`,width:r??"1em",height:r??"1em",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":1.8,"stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true",focusable:"false"},(Ha[n]??(globalThis.__WF_DEV__&&globalThis.__iconWarned!==n&&(globalThis.__iconWarned=n,console.warn(`[Icon] \u672A\u77E5\u56FE\u6807\u540D\u300C${n}\u300D\u2014\u2014\u6E32\u67D3\u5360\u4F4D\u5706\u70B9\uFF08PATHS \u672A\u767B\u8BB0\u2014\u2014\u68C0\u67E5 name \u62FC\u5199\u6216\u767B\u8BB0\u65B0\u56FE\u6807\uFF09`)),["M12 12m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0"])).map(s=>ps("path",{d:s})))};import{h as fs}from"weifuwu/vdom";var Ye=(o,e)=>t=>{let{variant:n="primary",size:r="md",block:a,loading:s,disabled:i,type:l,onClick:c,children:f}=t,g=["wf-btn",`wf-btn--${n}`,`wf-btn--${r}`,a&&"wf-btn--block",s&&"wf-btn--loading",t.class].filter(Boolean).join(" "),u=e?.i18n?.components?.Button??{};return fs("button",{id:t.id,title:t.title,class:g,type:l??"button",disabled:i||s||void 0,"aria-busy":s||void 0,"aria-label":t["aria-label"],onClick:c},s?[fs("span",{class:"wf-btn-spinner"}),u.loading??"\u52A0\u8F7D\u4E2D..."]:f)};import{h as rn}from"weifuwu/vdom";var co=o=>e=>{let{label:t,name:n,type:r="text",value:a,placeholder:s,required:i,disabled:l,readonly:c,error:f,hint:g,variant:u="default",onInput:p,onChange:d,...h}=e,m=rn("input",{class:`wf-input${u==="borderless"?" wf-input--borderless":""}`,name:n||void 0,type:r,value:a,placeholder:s,required:i||void 0,disabled:l||void 0,readonly:c||void 0,onInput:p,onChange:d,...h});if(!t&&!f&&!g)return m;let b=[];if(t){let v=[t];i&&v.push(rn("span",{class:"wf-input-req"},"*")),b.push(rn("label",{class:"wf-input-label"},v))}return b.push(m),f&&b.push(rn("div",{class:"wf-input-err"},f)),g&&!f&&b.push(rn("div",{class:"wf-input-hint"},g)),rn("div",{class:`wf-input-wrap${f?" wf-input--err":""}`},b)};import{h as Wt}from"weifuwu/vdom";var Oa=(o,e)=>t=>{let{label:n,value:r,placeholder:a,required:s,disabled:i,error:l,hint:c,rows:f=3,maxLength:g,showCount:u,onInput:p}=t,d=Wt("textarea",{class:"wf-textarea",value:r,placeholder:a,required:s||void 0,disabled:i||void 0,rows:f,maxLength:g,onInput:p}),h=[];if(n){let m=[n];s&&m.push(Wt("span",{class:"wf-textarea-req"},"*")),h.push(Wt("label",{class:"wf-textarea-label"},m))}if(h.push(d),u){let m=(r??"").length,b=g!=null&&m>g;h.push(Wt("div",{class:`wf-textarea-count${b?" wf-textarea-count--over":""}`,"aria-live":"polite"},g!=null?`${m}/${g}`:String(m)))}return l&&h.push(Wt("div",{class:"wf-textarea-err"},l)),c&&!l&&h.push(Wt("div",{class:"wf-textarea-hint"},c)),Wt("div",{class:`wf-textarea-wrap${l?" wf-textarea--err":""}`},h)};import{h as Te}from"weifuwu/vdom";function po(o){return"options"in o&&!("value"in o)}function Wo(o){return o?o.flatMap(e=>po(e)?e.options:[e]):[]}var Ba=(o,e)=>t=>{let{label:n,value:r,options:a,placeholder:s,required:i,disabled:l,error:c,onChange:f,children:g}=t,u=[];if(s&&u.push(Te("option",{value:"",disabled:!0},s)),a)for(let h of a)po(h)?u.push(Te("optgroup",{label:h.label},h.options.map(m=>Te("option",{value:m.value,disabled:m.disabled},m.label)))):u.push(Te("option",{value:h.value,disabled:h.disabled},h.label));let p=Te("select",{class:"wf-select",value:r??"",required:i||void 0,disabled:l||void 0,onChange:h=>f?.(h.target.value)},g??u),d=[];if(n){let h=[n];i&&h.push(Te("span",{class:"wf-select-req"},"*")),d.push(Te("label",{class:"wf-select-label"},h))}return d.push(p),c&&d.push(Te("div",{class:"wf-select-err"},c)),Te("div",{class:`wf-select-wrap${c?" wf-select--err":""}`},d)},Ua=(o,e)=>{let t=!1,n="",r=[],a=-1,s=!1,i;e.ui.useStableRef?.(()=>{},()=>{s=!0,i&&clearTimeout(i)});let l=null,c=null,f=d=>{d&&(l=d)},g=d=>{d&&(c=d)},u=null,p=d=>{t&&!u?u=e.ui.openPopup({key:"wf-select-menu",anchor:()=>l,placement:"bottom",center:!1,gap:4,content:()=>d,onClose:()=>{u=null,t&&(t=!1,e.render())}}):!t&&u?(u.close(),u=null):u&&u.update(d)};return d=>{let{label:h,value:m,options:b=[],placeholder:v,required:w,disabled:y,error:x,onChange:k,onSearch:E,multiple:P}=d,S=!!P,I=S?Array.isArray(m)?m:[]:[m],A=(X,q)=>{if(!q)return X;let Z=q.toLowerCase();return X.flatMap(ee=>{if(po(ee)){let ue=ee.options.filter(ie=>ie.label.toLowerCase().includes(Z));return ue.length?[{label:ee.label,options:ue}]:[]}return ee.label.toLowerCase().includes(Z)?[ee]:[]})},$=n&&E&&r.length>0?r:A(b,n),N=Wo($),B=Wo(b),W=B.find(X=>X.value===m),z=B.filter(X=>I.includes(X.value)),U=async X=>{if(n=X,t=!0,a=0,e.render(),E&&X){let q=await E(X);q&&(r=q,e.render())}},D=X=>{if(!X.disabled)if(S){let q=Array.isArray(m)?[...m]:[],Z=q.indexOf(X.value);Z>=0?q.splice(Z,1):q.push(X.value),k?.(q)}else n="",t=!1,e.render(),k?.(X.value)},C=X=>{if(!S)return;let q=Array.isArray(m)?[...m]:[];k?.(q.filter(Z=>Z!==X))},M=X=>{if(!y)if(X.key==="ArrowDown")X.preventDefault(),t=!0,a=Math.min(a+1,N.length-1),e.render();else if(X.key==="ArrowUp")X.preventDefault(),t=!0,a=Math.max(a-1,0),e.render();else if(X.key==="Enter"){X.preventDefault();let q=N[a];q&&D(q)}else X.key==="Escape"&&(X.preventDefault(),t=!1,n="",e.render())},T=S&&z.length>0?z.map(X=>Te("span",{class:"wf-select-tag",key:X.value},[X.label,Te("button",{type:"button",class:"wf-select-tag-close","aria-label":`\u79FB\u9664 ${X.label}`,onClick:q=>{q.stopPropagation(),C(X.value)}},Te(O,{name:"close",size:10}))])):[],R=S?"":t?n:W?.label??"",L=Te("div",{key:"select-trigger",class:`wf-select-search-trigger${y?" wf-select-search--disabled":""}${x?" wf-select--err":""}`,ref:f,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(t),onClick:y?void 0:()=>{t=!0,e.render(),c?.focus()}},[...T,Te("input",{key:"select-search-input",ref:g,class:"wf-select-search-input",type:"text",value:S?"":t?n:W?.label??"",placeholder:z.length>0?void 0:v??"",disabled:y,readOnly:!t||void 0,onInput:X=>U(X.target.value),onFocus:()=>{y||(t=!0,e.render())},onBlur:()=>{i=setTimeout(()=>{s||(t=!1,n="",e.render())},150)},onKeyDown:M})]),H=[];if(h){let X=[h];w&&X.push(Te("span",{class:"wf-select-req"},"*")),H.push(Te("label",{class:"wf-select-label"},X))}let K=0,Y=(X,q)=>{let Z=S?I.includes(X.value):X.value===m,ee=Te("div",{class:`wf-select-search-opt${Z?" wf-select-search-opt--sel":""}${X.disabled?" wf-select-search-opt--dis":""}${a===q?" wf-select-search-opt--hl":""}`,key:X.value,onMouseDown:ue=>{ue.preventDefault(),D(X)}},X.label);return K++,ee},Q=[];if(N.length>0)for(let X of $)if(po(X)){Q.push(Te("div",{class:"wf-select-search-group",key:`group-${X.label}`},X.label));for(let q of X.options)Q.push(Y(q,K))}else Q.push(Y(X,K));else n&&Q.push(Te("div",{class:"wf-select-search-empty"},"\u65E0\u5339\u914D"));let G=Te("div",{class:"wf-select-search-menu"},Q);return p(G),H.push(Te("div",{class:"wf-select-search"},[L])),x&&H.push(Te("div",{class:"wf-select-err"},x)),Te("div",{class:`wf-select-wrap${x?" wf-select--err":""}`},H)}},fo=(o,e)=>{let t=Ba(o,e),n=Ua(o,e);return r=>r.searchable?n(r):t(r)};import{h as Dn}from"weifuwu/vdom";var qo=(o,e)=>t=>{let{label:n,checked:r,disabled:a,onChange:s}=t,i=Dn("input",{type:"checkbox",class:"wf-checkbox-input",checked:r||void 0,disabled:a||void 0,onChange:s?c=>s(c.target.checked):void 0}),l=Dn("span",{class:"wf-checkbox-visual"});return n?Dn("label",{class:"wf-checkbox"},[i,l,Dn("span",{class:"wf-checkbox-label"},n)]):Dn("label",{class:"wf-checkbox"},[i,l])};import{h as Ln}from"weifuwu/vdom";var uo=(o,e)=>t=>{let{label:n,checked:r,disabled:a,onChange:s}=t,i=Ln("input",{type:"checkbox",class:"wf-switch-input",checked:r||void 0,disabled:a||void 0,role:"switch","aria-checked":String(!!r),onChange:s?f=>s(f.target.checked):void 0}),l=Ln("span",{class:"wf-switch-track"}),c=e?.i18n?.components?.Switch??{};return n?Ln("label",{class:"wf-switch"},[i,l,Ln("span",{class:"wf-switch-label"},n)]):Ln("label",{class:"wf-switch","aria-label":c.ariaLabel??"\u5207\u6362"},[i,l])};import{h as Rn}from"weifuwu/vdom";var za=(o,e)=>t=>{let{name:n,options:r=[],inline:a}=t,s=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"RadioGroup"}),i=c=>{let f=s?.controlled?.value!==void 0;s?.setValue(c),f||t.onChange?.(c)},l=r.map(c=>{let f=Rn("input",{type:"radio",class:"wf-radio-input",name:n??"radio",value:c.value,checked:s?.value===c.value||void 0,disabled:c.disabled||void 0,onChange:()=>i(c.value)}),g=Rn("span",{class:"wf-radio-visual"}),u=Rn("span",{class:"wf-radio-label-text"},c.label);return Rn("label",{class:"wf-radio",key:c.value},[f,g,u])});return Rn("div",{class:`wf-radio-group${a?" wf-radio-group--inline":""}`},l)};import{h as Ie}from"weifuwu/vdom";function _a(o,e,t,n){if(!t||!n)return o;let r=e.find(s=>s.key===t);if(!r||!r.sortable)return o;let a=[...o];return a.sort((s,i)=>{let l=s[t],c=i[t],f=r.sorter?r.sorter(l,c):String(l??"").localeCompare(String(c??""));return n==="desc"?-f:f}),a}var Va=(o,e)=>{let t=null,n={},r=(s,i,l)=>{t={row:s,col:i,value:String(l??"")},e.render()},a=()=>{if(t){let{row:s,col:i,value:l}=t;t=null,e.render(),n.onCellEdit?.(i,s,l,n.data?.[s])}};return s=>{let{data:i=[],columns:l,onRowClick:c,sortKey:f,sortOrder:g,onSort:u,emptyText:p,rowSelection:d}=s;n.data=i,n.onCellEdit=s.onCellEdit;let h=_a(i,l,f,g),m=C=>typeof C=="number"?C:typeof C=="string"&&/^\d+px$/.test(C)?Number(C.slice(0,-2)):140,b=new Map;{let C=0;for(let M of l)M.fixed==="left"&&(M.width===void 0&&console.warn(`[Table] \u56FA\u5B9A\u5217\u300C${M.label}\u300D\u672A\u6307\u5B9A width\u2014\u2014sticky \u504F\u79FB\u6309 140px \u4F30\u7B97\uFF08\u56FA\u5B9A\u5217\u5FC5\u987B\u663E\u5F0F width\uFF09`),b.set(M.key,C),C+=m(M.width))}let v=C=>{if(C.fixed==="left")return{position:"sticky",left:`${b.get(C.key)??0}px`,zIndex:2,background:"var(--wf-color-bg-elevated)"};if(C.fixed==="right")return{position:"sticky",right:"0px",zIndex:2,background:"var(--wf-color-bg-elevated)"}},w=(C,M)=>C[d?.rowKey??"id"]??M,y=d?.selectedRowKeys??[],x=new Set(y.map(String)),k=h.map((C,M)=>String(w(C,M))),E=k.length>0&&k.every(C=>x.has(C)),P=k.some(C=>x.has(C)),S=()=>{if(!d?.onChange)return;let C=E?[]:k.map(M=>h.find((T,R)=>String(w(T,R))===M));d.onChange(E?[]:k,E?[]:C)},I=(C,M)=>{if(!d?.onChange)return;let T=String(w(C,M)),R=x.has(T)?y.filter(H=>String(H)!==T):[...y,T],L=R.map(H=>h.find((K,Y)=>String(w(K,Y))===String(H))).filter(Boolean);d.onChange(R,L)},A=d?Ie("th",{class:"wf-table-th wf-table-th--selection",scope:"col"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:E||void 0,indeterminate:P&&!E?"true":void 0,"aria-label":"\u5168\u9009",onChange:S})):null,$=(C,M)=>d?Ie("td",{class:"wf-table-td wf-table-td--selection"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:x.has(String(w(C,M)))||void 0,"aria-label":"\u9009\u62E9\u884C",onClick:T=>T.stopPropagation(),onChange:()=>I(C,M)})):null,N=l.map(C=>{let M=C.key===f&&g,T=g==="asc",R=C.label,L=C.sortable?Ie(O,{name:M?T?"sort-asc":"sort-desc":"sort",className:`wf-table-sort-icon${M?" wf-table-sort-icon--active":""}`}):null,H=C.sortable&&u?()=>u(C.key,M&&T?"desc":"asc"):void 0;return Ie("th",{class:`wf-table-th${C.sortable?" wf-table-th--sortable":""}${M?" wf-table-th--sorted":""}`,scope:"col",tabindex:C.sortable?0:void 0,style:{...C.width?{width:C.width}:{},...v(C)??{}},onClick:H,onKeyDown:H?K=>{(K.key==="Enter"||K.key===" ")&&(K.preventDefault(),H())}:void 0},[R,L].filter(Boolean))}),B=Ie("tr",{class:"wf-table-tr"},[A,...N].filter(Boolean)),W=Ie("thead",{class:"wf-table-thead"},B),z;if(s.loading){let C=s.loadingRows??3;z=Array.from({length:C},(M,T)=>Ie("tr",{class:"wf-table-tr wf-table-tr--loading",key:`loading-${T}`},l.map((R,L)=>Ie("td",{class:"wf-table-td",key:`${T}-${L}`},Ie("span",{class:"wf-skeleton wf-skeleton--text"})))))}else if(h.length===0&&p){let C=l.length+(d?1:0);z=[Ie("tr",{class:"wf-table-tr"},Ie("td",{class:"wf-table-td wf-table-empty",colspan:C,style:{textAlign:"center"}},p))]}else z=h.map((C,M)=>{let T=l.map(L=>{let H=C[L.key];if(L.editable)return t&&t.row===M&&t.col===L.key?Ie("td",{class:"wf-table-td wf-table-td--editing",key:`${M}-${L.key}`},Ie("input",{class:"wf-input wf-input--table-edit",value:t.value,"data-wf-edit":`${M}:${L.key}`,onInput:Y=>{t.value=Y.target.value},onKeyDown:Y=>{Y.key==="Enter"&&a(),Y.key==="Escape"&&(t=null,e.render())},onBlur:()=>a()})):Ie("td",{class:"wf-table-td wf-table-td--editable",key:`${M}-${L.key}`,style:{cursor:"text",...v(L)??{}},onClick:()=>r(M,L.key,H)},L.render?L.render(H,C,M):String(H??""));let K=L.render?L.render(H,C,M):String(H??"");return Ie("td",{class:"wf-table-td",key:`${M}-${L.key}`,style:v(L)},K)}),R=$(C,M);return Ie("tr",{key:String(w(C,M)),class:"wf-table-tr",onClick:c?()=>c(C,M):void 0,style:c?{cursor:"pointer"}:void 0},[R,...T].filter(Boolean))});let U=Ie("tbody",{class:"wf-table-tbody"},z),D=Ie("table",{class:"wf-table",style:s.minWidth?{minWidth:s.minWidth}:void 0},[W,U]);return Ie("div",{class:"wf-table-wrap"},D)}};import{h as Ot}from"weifuwu/vdom";var Xo=(o,e)=>{let t=!1,n,r=null;return e.ui.useGlobalKey(a=>{a.key==="Escape"&&r?.open&&t&&n?.()}),e.ui.onUnmount?.(()=>{r&&r.close()}),a=>{let{open:s,title:i,onClose:l,children:c,footer:f,width:g,closable:u=!0,maskClosable:p=!0}=a;n=l,t=!!s;let d=e?.i18n?.components?.Modal??{},h=Ot("div",{class:"wf-modal-overlay",onClick:p?l:void 0}),m=u?Ot("button",{class:"wf-modal-close",onClick:l,type:"button","aria-label":d.closeAria??"\u5173\u95ED"},Ot(O,{name:"close"})):null,b=i?Ot("div",{class:"wf-modal-header"},[i,m].filter(Boolean)):null,v=Ot("div",{class:"wf-modal-body"},c),w=f?Ot("div",{class:"wf-modal-footer"},f):null,y=Ot("div",{class:"wf-modal-content",onClick:k=>k.stopPropagation(),style:g?{minWidth:`min(${g}, calc(100vw - 32px))`,maxWidth:`min(${g}, calc(100vw - 32px))`}:void 0},[b,v,w].filter(Boolean)),x=Ot("div",{class:`wf-modal ${s?"wf-modal--enter":"wf-modal--exit"}`,role:"dialog","aria-modal":"true","aria-label":i??d.ariaLabel??"\u5F39\u7A97"},[h,y]);return s&&!r?r=e.ui.openPopup({key:"modal",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>x,onClose:()=>{r=null}}):!s&&r?(r.update(x),r.close(),r=null):r&&r.update(x),null}};import{createClientBrowser as us}from"weifuwu/vdom";import{h as mo}from"weifuwu/vdom";import{renderToStreamV2 as Ka}from"weifuwu/vdom";import{disposeSegment as ja}from"weifuwu/vdom";import{CommandApplier as Fa}from"weifuwu/vdom";import{createComponentRegistry as Ga}from"weifuwu/vdom";var cu=us();function Wa(o,e){return new Promise(t=>{let n=document.createElement("div");document.body.appendChild(n);let r=Ga(),a=new Fa(n,document,r),s=new Map,i=!1,l=g=>{if(!i){i=!0;for(let[u]of[...s])ja(u,s);a.dispose(),n.remove(),t(g)}},c={render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:us()},f=mo(ms,{open:!0,message:o,...e,onConfirm:()=>l(!0),onCancel:()=>l(!1)});Ka(f,c,r,s).pipeTo(new WritableStream({write(g){a.apply(g)}})).catch(()=>l(!1))})}var ms=(o,e)=>t=>{let{open:n=!1,title:r,message:a,confirmText:s,cancelText:i,variant:l="primary",width:c,maskClosable:f=!1,onConfirm:g,onCancel:u}=t,p=e?.i18n?.components?.Confirm??{},d=[mo(Ye,{variant:"secondary",size:"md",onClick:()=>u?.()},i??p.cancelText??"\u53D6\u6D88"),mo(Ye,{variant:l,size:"md",onClick:()=>g?.()},s??p.confirmText??"\u786E\u5B9A")];return mo(Xo,{open:n,title:r,onClose:u??t.onClose,maskClosable:f,footer:d,width:c,closable:!1},a)};import{createClientBrowser as qa}from"weifuwu/vdom";import{h as sn}from"weifuwu/vdom";var yu=qa();function Xa(o){return{"top-right":"wf-toast--tr","top-left":"wf-toast--tl","bottom-right":"wf-toast--br","bottom-left":"wf-toast--bl","top-center":"wf-toast--tc"}[o]??"wf-toast--tr"}var Ya=(o,e)=>{let t=null;return n=>{let{toasts:r=[],onRemove:a,position:s="top-right",duration:i=0,max:l=0}=n,c=l>0&&r.length>l?r.slice(-l):r,f=c.map(u=>sn("div",{class:`wf-toast wf-toast--${u.type}`,key:u.id,role:u.type==="error"?"alert":"status","aria-live":u.type==="error"?"assertive":"polite","data-id":u.id,"data-duration":(u.duration??i)||void 0,onClick:a?()=>a(u.id):void 0},[sn("span",{class:"wf-toast-icon"},sn(O,{name:Za(u.type)})),sn("span",{class:"wf-toast-msg"},u.message),u.action?sn("button",{class:`wf-toast-action wf-toast-action--${u.type}`,type:"button",onClick:p=>{p.stopPropagation(),u.action.onClick()}},u.action.label):null].filter(Boolean))),g=sn("div",{class:`wf-toast-container ${Xa(s)}`,"data-max":l||void 0},f);return c.length>0&&!t?t=e.ui.openPopup({key:"toast",positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>g,onClose:()=>{t=null}}):c.length===0&&t?(t.close(),t=null):t&&t.update(g),null}};function Za(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info";default:return"info"}}import{h as an}from"weifuwu/vdom";var Yo=(o,e)=>t=>{let{variant:n="info",closable:r,onClose:a,children:s}=t;if(!s)return null;let i=an("span",{class:"wf-alert-icon"},an(O,{name:Ja(n)})),l=r?an("button",{class:"wf-alert-close",onClick:a,type:"button","aria-label":"\u5173\u95ED"},an(O,{name:"close"})):null,c=an("span",{class:"wf-alert-msg"},s);return an("div",{class:`wf-alert wf-alert--${n}`,role:"alert"},[i,c,l].filter(Boolean))};function Ja(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info"}}import{h as Zo}from"weifuwu/vdom";var Qa=(o,e)=>t=>{let{text:n="\u52A0\u8F7D\u4E2D..."}=t;return Zo("div",{class:"wf-loading",role:"status","aria-live":"polite"},[Zo("div",{class:"wf-loading-spinner"}),Zo("span",{class:"wf-loading-text"},n)])};import{h as ln}from"weifuwu/vdom";var el=(o,e)=>t=>{let{icon:n=ln(O,{name:"inbox"}),text:r="\u6682\u65E0\u6570\u636E",hint:a,children:s}=t,i=[ln("div",{class:"wf-empty-icon"},n),ln("div",{class:"wf-empty-text"},r)];return a&&i.push(ln("div",{class:"wf-empty-hint"},a)),s&&i.push(ln("div",{class:"wf-empty-action"},s)),ln("div",{class:"wf-empty",role:"status"},i)};import{createClientBrowser as tl}from"weifuwu/vdom";import{h as it}from"weifuwu/vdom";var nl=(o,e)=>{let t=e?.browser??tl(),n=0,r=0,a=null,s=c=>{c&&(n=c.offsetLeft,r=c.offsetWidth,e.render())},i=()=>{a&&s(a.querySelector(".wf-tab--active"))},l=c=>{c&&(a=c,queueMicrotask(i))};return c=>{let{items:f=[],closable:g,onClose:u,addable:p,onAdd:d}=c;if(f.length===0)return null;g&&!u&&console.warn("[Tabs] closable \u672A\u914D onClose\u2014\u2014\u5173\u95ED\u6309\u94AE\u9759\u9ED8\u5931\u6548"),p&&!d&&console.warn("[Tabs] addable \u672A\u914D onAdd\u2014\u2014\u65B0\u589E\u6309\u94AE\u9759\u9ED8\u5931\u6548");let h=e?.ui?.useControlled({value:c.active,onChange:c.onChange,name:"Tabs"}),m=S=>{let I=h?.controlled?.value!==void 0;h?.setValue(S),I||c.onChange?.(S)},b=h?.value??f[0].key,v=(S,I)=>{if(I.stopPropagation(),S===b){let A=f.findIndex(N=>N.key===S),$=f[A+1]??f[A-1];$&&m($.key)}u?.(S)},w=S=>{let I=S.currentTarget,A=Array.from(I.querySelectorAll(".wf-tab")),$=A.indexOf(t?.activeElement()??null);if($<0||!h)return;let N=$;if(S.key==="ArrowRight")N=($+1)%A.length;else if(S.key==="ArrowLeft")N=($-1+A.length)%A.length;else if(S.key==="Home")N=0;else if(S.key==="End")N=A.length-1;else return;S.preventDefault();let B=f[N];B&&B.key!==f[$].key&&(m(B.key),A[N].focus(),s(A[N]))},y=f.map(S=>it("button",{class:`wf-tab${S.key===b?" wf-tab--active":""}`,key:S.key,role:"tab",tabindex:S.key===b?0:-1,"aria-selected":S.key===b?"true":"false",onClick:S.key!==b?(I=>{s(I?.currentTarget),m(S.key)}):void 0},[S.label,g&&S.closable!==!1?it("span",{class:"wf-tab-close",role:"button","aria-label":`\u5173\u95ED ${S.label}`,tabindex:-1,onClick:I=>v(S.key,I)},it("svg",{viewBox:"0 0 24 24",width:12,height:12,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},it("path",{d:"M18 6L6 18M6 6l12 12"}))):null])),x=p?it("button",{key:"wf-tab-add",class:"wf-tab-add",role:"tab","aria-label":"\u65B0\u589E\u6807\u7B7E\u9875",onClick:()=>d?.()},it("svg",{viewBox:"0 0 24 24",width:14,height:14,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},it("path",{d:"M12 5v14M5 12h14"}))):null,k=it("span",{key:"wf-tab-ink",class:"wf-tab-ink",style:{transform:`translateX(${n}px)`,width:`${r}px`},"aria-hidden":"true"}),E=f.find(S=>S.key===b),P=E?.content?it("div",{class:"wf-tab-content",role:"tabpanel"},E.content):null;return it("div",{class:"wf-tabs",role:"tablist",onKeyDown:w},[it("div",{class:"wf-tab-list",ref:l},[...y,x,k]),P].filter(Boolean))}};import{h as cn}from"weifuwu/vdom";var ol=(o,e)=>{let t=null;return n=>{let{items:r,activeKey:a,onChange:s,fixed:i,className:l}=n,c=a!==void 0;c&&!s&&console.warn("[TabBar] activeKey \u53D7\u63A7\u4F20\u5165\u4F46\u672A\u914D onChange\u2014\u2014\u70B9\u51FB\u9759\u9ED8\u5931\u6548");let f=c?a:t??r[0]?.key??null,g=p=>{let d=r.findIndex(w=>w.key===f),h=p.key==="ArrowRight"?1:p.key==="ArrowLeft"?-1:0;if(h===0)return;p.preventDefault();let m=-1;for(let w=1;w<=r.length;w++){let y=(d+h*w+r.length)%r.length;if(!r[y]?.disabled){m=y;break}}if(m===-1)return;let b=r[m];c||(t=b.key),s?.(b.key),e.render(),e.browser?.byId?.(`wf-tab-${b.key}`)?.focus()},u=r.map(p=>{let d=p.key===f,h=typeof p.icon=="string"?cn(O,{name:p.icon,size:20,className:"wf-tab-bar-icon"}):p.icon;return cn("button",{key:p.key,id:`wf-tab-${p.key}`,type:"button",role:"tab",class:["wf-tab-bar-item",d?"wf-tab-bar-item--active":"",p.disabled?"wf-tab-bar-item--disabled":""].filter(Boolean).join(" "),tabindex:d?0:-1,"aria-selected":d?"true":"false",disabled:p.disabled||void 0,onClick:p.disabled?void 0:()=>{c||(t=p.key),s?.(p.key),e.render()}},[cn("span",{class:"wf-tab-bar-icon-wrap"},[h??null,p.badge!==void 0&&p.badge!==null?cn("span",{class:"wf-tab-bar-badge"},String(p.badge)):null]),cn("span",{class:"wf-tab-bar-label"},p.label)])});return cn("nav",{class:["wf-tab-bar",i?"wf-tab-bar--fixed":"",l??""].filter(Boolean).join(" "),role:"tablist","aria-label":"\u5E95\u90E8\u5BFC\u822A",onKeyDown:g},u)}};import{h as ho}from"weifuwu/vdom";var rl=(o,e)=>t=>{let{title:n,left:r,right:a,align:s="center",fixed:i,className:l}=t;return ho("header",{class:["wf-nav-bar",i?"wf-nav-bar--fixed":"",l??""].filter(Boolean).join(" ")},[r?ho("div",{class:"wf-nav-bar-side"},r):null,n!=null?ho("div",{class:`wf-nav-bar-title${s==="left"?" wf-nav-bar-title--left":""}`},n):null,a?ho("div",{class:"wf-nav-bar-side"},a):null].filter(Boolean))};import{h as Pt}from"weifuwu/vdom";var sl=(o,e)=>{let t=!1,n="",r=null;e.ui.onUnmount?.(()=>{r&&r.close()});let a;return e.ui.useGlobalKey(s=>{s.key==="Escape"&&r?.open&&t&&a?.()}),s=>{let{open:i,items:l,onSelect:c,onClose:f,cancelText:g,title:u}=s;t=i,a=f;let p=w=>{let y=l.findIndex(k=>k.key===n),x=w.key==="ArrowDown"?1:w.key==="ArrowUp"?-1:0;if(x!==0){w.preventDefault();let k=-1;for(let P=1;P<=l.length;P++){let S=(y+x*P+l.length)%l.length;if(!l[S]?.disabled){k=S;break}}if(k===-1)return;n=l[k].key,e.render(),document.querySelector(`[data-actionsheet-key="${n}"]`)?.focus();return}if(w.key==="Enter"&&n){let k=l.find(E=>E.key===n);k&&!k.disabled&&(c?.(k.key),f())}};l.some(w=>w.key===n)||(n=l[0]?.key??"");let d=Pt("div",{class:"wf-actionsheet-overlay",onClick:f}),h=l.map(w=>{let y=typeof w.icon=="string"?Pt(O,{name:w.icon,size:18,className:"wf-actionsheet-icon"}):w.icon;return Pt("button",{key:w.key,type:"button",role:"menuitem","data-actionsheet-key":w.key,class:["wf-actionsheet-item",w.danger?"wf-actionsheet-item--danger":"",w.disabled?"wf-actionsheet-item--disabled":""].filter(Boolean).join(" "),disabled:w.disabled||void 0,onClick:w.disabled?void 0:()=>{c?.(w.key),f()}},[y??null,Pt("span",{class:"wf-actionsheet-item-label"},w.label)])}),m=Pt("button",{type:"button",class:"wf-actionsheet-cancel",onClick:f},g??"\u53D6\u6D88"),b=Pt("div",{class:"wf-actionsheet-panel",role:"menu","aria-label":u??"\u64CD\u4F5C\u9762\u677F",onKeyDown:p,onClick:w=>w.stopPropagation()},[u?Pt("div",{class:"wf-actionsheet-title"},u):null,...h,Pt("div",{class:"wf-actionsheet-divider"}),m]),v=Pt("div",{class:`wf-actionsheet ${i?"wf-actionsheet--enter":"wf-actionsheet--exit"}`,role:"dialog","aria-modal":"true","aria-label":u??"\u64CD\u4F5C\u9762\u677F",tabIndex:-1},[d,b]);return i&&!r?r=e.ui.openPopup({key:"actionsheet",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>v,onClose:()=>{r=null}}):!i&&r?(r.update(v),r.close(),r=null):r&&r.update(v),null}};import{h as St}from"weifuwu/vdom";var il=(o,e)=>{let t=null,n=r=>{t=r};return r=>{let{value:a="",onChange:s,variables:i=[],values:l={},readOnly:c,label:f,showPreview:g=!0,className:u}=r,p=v=>{let w=`{{${v}}}`;if(!s)return;let y=t;if(!y){s(a+w);return}let x=y.selectionStart??a.length,k=y.selectionEnd??a.length,E=a.slice(0,x)+w+a.slice(k);s(E),queueMicrotask(()=>{y.focus();let P=x+w.length;y.setSelectionRange(P,P)})},d=a.replace(/\{\{([a-zA-Z0-9_]+)\}\}/g,(v,w)=>l[w]??v),h=i.length>0?St("div",{class:"wf-prompt-chips"},[St("span",{class:"wf-prompt-chips-hint"},"\u63D2\u5165\u53D8\u91CF\uFF1A"),...i.map(v=>St("button",{key:v.name,type:"button",class:"wf-prompt-chip",title:v.description??`{{${v.name}}}`,disabled:c||void 0,onClick:()=>p(v.name)},`{{${v.name}}}`))]):null,m=St("textarea",{class:"wf-prompt-editor",ref:n,value:a,readOnly:c||void 0,placeholder:"\u8F93\u5165\u63D0\u793A\u8BCD\u6A21\u677F\u2026\uFF08\u70B9\u51FB\u4E0A\u65B9\u53D8\u91CF\u63D2\u5165\u5360\u4F4D\uFF09","aria-label":f??"\u63D0\u793A\u8BCD\u6A21\u677F",onInput:s?v=>s(v.target.value):void 0}),b=g&&!c?St("div",{class:"wf-prompt-preview"},[St("div",{class:"wf-prompt-preview-title"},"\u9884\u89C8\uFF08\u53D8\u91CF\u586B\u5145\uFF09"),St("div",{class:"wf-prompt-preview-body"},d||"\uFF08\u7A7A\u6A21\u677F\uFF09")]):null;return St("div",{class:["wf-prompt-template",u??""].filter(Boolean).join(" ")},[f?St("div",{class:"wf-prompt-label"},f):null,h,m,b])}};import{h as Jo}from"weifuwu/vdom";var al=(o,e)=>{let t=null,n=l=>{t=l},r=null,a=null,s=0,i=!1;return e.ui.onUnmount?.(()=>{a&&a.close()}),l=>{let{trigger:c,items:f=[]}=l;r=e.ui.useOpen({open:l.open,onOpenChange:l.onOpenChange,name:"Dropdown"});let g=!!r?.open;g&&!i&&(s=0),i=g;let u=h=>{let m=h.key;if(m==="Escape")return;let b=f.map((y,x)=>y.disabled?-1:x).filter(y=>y>=0);if(!b.length)return;let v=b.indexOf(s),w=v>=0?v:0;if(m==="ArrowDown"||m==="ArrowRight")h.preventDefault(),s=b[Math.min(w+1,b.length-1)],e.render();else if(m==="ArrowUp"||m==="ArrowLeft")h.preventDefault(),s=b[Math.max(w-1,0)],e.render();else if(m==="Home")h.preventDefault(),s=b[0],e.render();else if(m==="End")h.preventDefault(),s=b[b.length-1],e.render();else if(m==="Enter"||m===" "){let y=f[s];y&&!y.disabled&&(h.preventDefault(),y.onClick?.(),r?.setOpen(!1))}},p=f.map((h,m)=>Jo("button",{class:["wf-dropdown-item",h.variant==="danger"?" wf-dropdown-item--danger":"",m===s&&g?" wf-dropdown-item--hl":""].filter(Boolean).join(" "),key:h.value??m,disabled:h.disabled||void 0,role:"menuitem","aria-selected":String(m===s&&g),onClick:h.disabled?void 0:()=>{h.onClick?.()}},h.label)),d=Jo("div",{class:"wf-dropdown-menu",role:"menu",onKeyDown:u},p);return r?.open&&!a?a=e.ui.openPopup({anchor:()=>t,content:()=>d,onClose:()=>{a=null,r?.setOpen(!1)}}):!r?.open&&a?(a.close(),a=null):a&&a.update(d),Jo("div",{class:`wf-dropdown${r?.open?" wf-dropdown--open":""}`,ref:n,onClick:h=>{h.stopPropagation?.(),r?.setOpen(!r.open)},"aria-haspopup":"menu","aria-expanded":String(!!r?.open)},c)}};import{h as qt}from"weifuwu/vdom";var ll=(o,e)=>t=>{let{total:n,pageSize:r=20}=t,a=e?.ui?.useControlled({value:t.page,onChange:t.onChange,name:"Pagination"}),s=a?.value??1,i=u=>{let p=a?.controlled?.value!==void 0;a?.setValue(u),p||t.onChange?.(u)},l=e?.i18n?.components?.Pagination??{},c=Math.max(1,Math.ceil(n/r));if(c<=1)return null;let f=[];f.push(qt("button",{class:`wf-page-btn${s<=1?" wf-page-btn--disabled":""}`,disabled:s<=1,"aria-label":l.prevAria??"\u4E0A\u4E00\u9875",onClick:s>1?()=>i(s-1):void 0},qt(O,{name:"chevron-left"})));let g=cl(s,c);for(let u of g)u==="..."?f.push(qt("span",{class:"wf-page-ellipsis"},"...")):f.push(qt("button",{class:`wf-page-btn${u===s?" wf-page-btn--active":""}`,"aria-current":u===s?"page":void 0,onClick:u!==s?()=>i(u):void 0},String(u)));return f.push(qt("button",{class:`wf-page-btn${s>=c?" wf-page-btn--disabled":""}`,disabled:s>=c,"aria-label":l.nextAria??"\u4E0B\u4E00\u9875",onClick:s<c?()=>i(s+1):void 0},qt(O,{name:"chevron-right"}))),qt("nav",{class:"wf-pagination","aria-label":l.ariaLabel??"\u5206\u9875"},f)};function cl(o,e){if(e<=7)return Array.from({length:e},(a,s)=>s+1);let t=[1];o>3&&t.push("...");let n=Math.max(2,o-1),r=Math.min(e-1,o+1);for(let a=n;a<=r;a++)t.push(a);return o<e-2&&t.push("..."),t.push(e),t}import{h as dl}from"weifuwu/vdom";var Qo=(o,e)=>t=>{let{variant:n="default",padding:r="md",clickable:a,hover:s,active:i,onClick:l,className:c,id:f,style:g,children:u}=t,p=["wf-card",`wf-card--${n}`,`wf-card--pad-${r}`,a&&"wf-card--clickable",s&&"wf-card--hover",i&&"wf-card--active",(a||s)&&"wf-elevate"].filter(Boolean).join(" ");return dl("div",{class:c?`${p} ${c}`:p,id:f,style:g,onClick:l,role:a?"button":void 0,tabindex:a?0:void 0,onKeyDown:a?d=>{(d.key==="Enter"||d.key===" ")&&(d.preventDefault(),l?.())}:void 0},u)};import{h as er}from"weifuwu/vdom";var pl=(o,e)=>t=>{let{variant:n="default",dot:r,children:a,count:s,overflowCount:i=99,showZero:l=!1,...c}=t;if(r)return er("span",{class:`wf-badge-dot wf-badge-dot--${n}`,...c});if(s!=null){if(s===0&&!l)return null;let f=s>i?`${i}+`:String(s);return er("span",{class:`wf-badge wf-badge--count wf-badge--${n}`,"aria-label":`${s>i?`\u8D85\u8FC7 ${i}`:s} \u6761`,...c},f)}return er("span",{class:`wf-badge wf-badge--${n}`,...c},a??"")};import{h as hs}from"weifuwu/vdom";var gs=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899"];function fl(o){let e=0;for(let t=0;t<o.length;t++)e=o.charCodeAt(t)+((e<<5)-e);return gs[Math.abs(e)%gs.length]}var dn=(o,e)=>t=>{let{name:n="",src:r,size:a="md",color:s}=t,i=Array.from(n.trim())[0]?.toUpperCase()??"?";return r?hs("img",{class:`wf-avatar wf-avatar--${a}`,src:r,alt:n}):hs("div",{class:`wf-avatar wf-avatar--${a}`,style:{background:s??fl(n)}},i)};import{h as go}from"weifuwu/vdom";var ul=(o,e)=>t=>{let{closable:n,onClose:r,variant:a="default",children:s}=t,i=n?go("button",{class:"wf-tag-close",onClick:r,type:"button","aria-label":"\u79FB\u9664"},go(O,{name:"close"})):null;return go("span",{class:`wf-tag wf-tag--${a}`},[go("span",{class:"wf-tag-text"},s),i].filter(Boolean))};import{h as Bt}from"weifuwu/vdom";var ml=(o,e)=>{let t=e.ui.useTween(0,{duration:400,ease:"easeOutCubic"}),n=0,r=null,a,s,i=()=>{r&&(clearInterval(r),r=null)},l=()=>{a!==void 0&&(n=Math.max(0,Math.ceil((a-Date.now())/1e3)),n<=0&&(i(),s?.()),e.render())},c=()=>{r||typeof window>"u"||(r=setInterval(l,1e3))};return e.ui.hold(i),o.countdown!==void 0&&queueMicrotask(c),f=>{let{label:g,value:u,trend:p,trendLabel:d,icon:h,onClick:m,animate:b,countdown:v,onFinish:w}=f;s=w;let y=typeof u=="number"?u:0;b&&typeof u=="number"&&t.reset(y),t.value=y,a=v,v!==void 0?(n=Math.max(0,Math.ceil((v-Date.now())/1e3)),r||queueMicrotask(c)):r&&i();let x=v!==void 0?(()=>{let E=Math.floor(n/3600),P=Math.floor(n%3600/60),S=n%60,I=A=>String(A).padStart(2,"0");return E>0?`${I(E)}:${I(P)}:${I(S)}`:`${I(P)}:${I(S)}`})():String(typeof u=="number"?t.value:u??""),k=[];return h&&k.push(Bt("div",{class:"wf-stat-icon"},h)),k.push(Bt("div",{class:"wf-stat-value wf-nums"},x)),k.push(Bt("div",{class:"wf-stat-label"},g)),p&&k.push(Bt("div",{class:`wf-stat-trend wf-stat-trend--${p}`},[Bt("span",{class:"wf-stat-trend-arrow"},Bt(O,{name:p==="up"?"arrow-up":"arrow-down"})),d?Bt("span",{class:"wf-stat-trend-label"},d):null].filter(Boolean))),Bt("div",{class:`wf-stat${m?" wf-stat--clickable":""}${m?" wf-elevate":""}`,onClick:m,role:m?"button":void 0,tabindex:m?0:void 0,onKeyDown:m?E=>{(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),m())}:void 0},k)}};import{h as Ut}from"weifuwu/vdom";var hl=(o,e)=>t=>{let{items:n=[],active:r,current:a=0}=t,s=r??n[a]?.key,i=n.map((l,c)=>{let f=n.findIndex(v=>v.key===s),g=c<f,u=c===f,p=["wf-step",g&&"wf-step--done",u&&"wf-step--current"].filter(Boolean).join(" "),d=g?Ut("span",{class:"wf-step-num"},Ut(O,{name:"check"})):Ut("span",{class:"wf-step-num"},String(c+1)),h=Ut("span",{class:"wf-step-label"},l.label),m=l.description?Ut("span",{class:"wf-step-desc"},l.description):null,b=c<n.length-1?Ut("span",{class:`wf-step-connector${g?" wf-step-connector--done":""}`}):null;return Ut("div",{class:p,key:l.key,role:"listitem","aria-current":u?"step":void 0},[d,h,m,b].filter(Boolean))});return Ut("div",{class:"wf-steps",role:"list"},i)};import{h as gl}from"weifuwu/vdom";async function bl(o,e){let t={};for(let[n,r]of Object.entries(e)){let a=o[n]??"";for(let s of r){if(s.required&&!String(a).trim()){t[n]=s.message;break}if(s.pattern&&!s.pattern.test(String(a))){t[n]=s.message;break}if(s.minLength!=null&&String(a).length<s.minLength){t[n]=s.message;break}if(s.maxLength!=null&&String(a).length>s.maxLength){t[n]=s.message;break}if(s.validator){let i=await s.validator(a);if(i!==!0){t[n]=typeof i=="string"?i:s.message;break}}}}return t}var yl=(o,e)=>t=>{let{validation:n,onSubmit:r,onError:a,children:s}=t;return gl("form",{class:"wf-form",onSubmit:async l=>{l.preventDefault();let c=l.target,f=new FormData(c),g={};for(let[u,p]of f.entries())if(u in g){let d=g[u];g[u]=Array.isArray(d)?[...d,p]:[d,p]}else g[u]=p;if(n){let u=await bl(g,n);if(Object.keys(u).length>0){a?.(u);return}a?.({})}await r?.(g)},noValidate:n?!0:void 0},s)};import{h as Nn}from"weifuwu/vdom";var pn=(o,e)=>t=>{let{label:n,required:r,error:a,hint:s,children:i}=t,l=[];if(n){let c=[n];r&&c.push(Nn("span",{class:"wf-field-req"},"*")),l.push(Nn("label",{class:"wf-field-label"},c))}return l.push(i),a&&l.push(Nn("div",{class:"wf-field-err"},a)),s&&!a&&l.push(Nn("div",{class:"wf-field-hint"},s)),Nn("div",{class:`wf-field${a?" wf-field--err":""}`},l)};import{h as Me}from"weifuwu/vdom";import{createClientBrowser as bs}from"weifuwu/vdom";var wl=(o,e)=>{let t=null,n=null,r=null,a=null,s=!1,i=!1,l=null,c=null,f=w=>{t=w},g=w=>{n=w},u=w=>{r=w},p=()=>{t&&a!==null&&Number(t.value)!==a&&(t.value=String(a))};(e.browser??bs()).onFormRestore?.(p);let h=w=>{s!==w&&(s=w,e.render())},m=null,b=w=>{s&&!m?m=e.ui.openPopup({key:"slider-tooltip",anchor:()=>c==="lo"?n:c==="hi"?r:t,position:()=>l?{x:l.left,y:l.top}:{x:0,y:0},content:()=>w,onClose:()=>{m=null,s&&h(!1)}}):!s&&m?(m.close(),m=null):m&&m.update(w)},v=e.browser??bs();return w=>{let{label:y,value:x=0,min:k=0,max:E=100,step:P=1,onChange:S,onChangeEnd:I,disabled:A,marks:$,range:N,onRangeChange:B,onRangeChangeEnd:W}=w,z=Number(Array.isArray(x)?x[0]:x),U=Array.isArray(x)?[Math.min(Number(x[0]),Number(x[1])),Math.max(Number(x[0]),Number(x[1]))]:[z,z],D=E-k,C=fe=>D>0?Math.min(100,Math.max(0,(fe-k)/D*100)):0,M=C(z),T=C(U[0]),R=C(U[1]),L=D>0&&P>0?P/D*100:1,H=fe=>{let Ae=k+Number(fe)/100*D,Se=P>0?Math.round((Ae-k)/P)*P+k:Ae;return Math.min(E,Math.max(k,Se))};a=M;let K=9,Y=fe=>`calc(${K}px + (100% - ${K*2}px) * ${fe})`,Q=(fe,Ae)=>K+Ae*(fe-K*2),G=`calc(${K}px + (100% - ${K*2}px) * ${M/100})`,X=`linear-gradient(to right, var(--wf-color-primary) ${G}, var(--wf-color-border) ${G})`;if(l=null,s&&!A){let fe=N?c==="lo"?n:r:t,Ae=N?c==="lo"?T:R:M;if(fe){let Se=fe.getBoundingClientRect();Se.width>0&&(l={left:Math.round(Se.left+Q(Se.width,Ae/100)),top:Math.round(Se.top-36)})}}if(N){let fe=Ce=>Math.min(Ce,U[1]-P),Ae=Ce=>Math.max(Ce,U[0]+P),Se=c==="lo"?U[0]:U[1],In=(Ce,io,vt,V)=>Me("input",{type:"range",class:`wf-slider-input ${Ce==="hi"?"wf-slider-input--hi":"wf-slider-input--lo"}`,ref:Ce==="lo"?g:u,value:vt,min:0,max:100,step:L,disabled:A||void 0,autocomplete:"off","aria-label":Ce==="lo"?`${y??"\u8303\u56F4"}\u4E0B\u9650`:`${y??"\u8303\u56F4"}\u4E0A\u9650`,"aria-disabled":A?"true":void 0,onInput:A?void 0:_=>{let J=V(H(Number(_.target.value)));B?.([Ce==="lo"?J:U[0],Ce==="hi"?J:U[1]]),m?.refresh()},onChange:A?void 0:_=>{let J=V(H(Number(_.target.value)));B?.([Ce==="lo"?J:U[0],Ce==="hi"?J:U[1]]),m?.refresh()},onPointerDown:A?void 0:()=>{i=!0,c=Ce,h(!0)},onPointerUp:A?void 0:_=>{i=!1;let J=V(H(Number(_.target.value)));W?.([Ce==="lo"?J:U[0],Ce==="hi"?J:U[1]]),h(!1)},onPointerCancel:A?void 0:()=>{i=!1,h(!1)},onMouseEnter:A?void 0:()=>{c=Ce,h(!0)},onMouseLeave:A?void 0:()=>{i||h(!1)},onFocus:A?void 0:()=>{c=Ce,h(!0)},onBlur:A?void 0:()=>{i||h(!1)}}),yt=`calc((100% - ${K*2}px) * ${(R-T)/100})`,_o=Me("span",{class:"wf-slider-value"},`${U[0]} - ${U[1]}`),wt=A?null:Me("div",{class:"wf-slider-tip"},String(Se)),Vo=$?.length?Me("div",{class:"wf-slider-marks"},$.map(Ce=>{let io=C(Ce.value);return Me("div",{key:`mark-${Ce.value}`,class:"wf-slider-mark",style:{left:Y(io/100)}},[Me("span",{class:"wf-slider-mark-dot"}),Ce.label?Me("span",{class:"wf-slider-mark-label"},Ce.label):null])})):null,Ze=Me("div",{class:"wf-slider-track wf-slider-range"},[Me("div",{class:"wf-slider-range-fill",style:{left:Y(T/100),width:yt}}),In("lo",U[0],T,fe),In("hi",U[1],R,Ae),Vo]),so=Me("div",{class:"wf-slider"},[Ze,_o]);return b(wt),y?Me("div",{class:"wf-slider-wrap"},[Me("label",{class:"wf-slider-label"},y),so]):Me("div",{class:"wf-slider-wrap"},[so])}let q=Me("input",{type:"range",class:["wf-slider-input",A?"wf-slider-input--dis":""].filter(Boolean).join(" "),ref:f,"aria-expanded":String(s),value:M,min:0,max:100,step:L,disabled:A||void 0,autocomplete:"off","aria-label":y,"aria-disabled":A?"true":void 0,style:{background:X},onInput:A||!S?void 0:fe=>{S(H(Number(fe.target.value))),m?.refresh()},onChange:A||!S?void 0:fe=>{S(H(Number(fe.target.value))),m?.refresh()},onPointerDown:A?void 0:()=>{i=!0,h(!0)},onPointerUp:A?void 0:fe=>{i=!1,I?.(H(Number(fe.target.value))),h(!1)},onPointerCancel:A?void 0:()=>{i=!1,h(!1)},onMouseEnter:A?void 0:()=>h(!0),onMouseLeave:A?void 0:()=>{i||h(!1)},onFocus:A?void 0:()=>h(!0),onBlur:A?void 0:()=>{i||h(!1)}}),Z=Me("span",{class:"wf-slider-value"},String(z)),ee=A?null:Me("div",{class:"wf-slider-tip"},String(z)),ue=$?.length?Me("div",{class:"wf-slider-marks"},$.map(fe=>{let Ae=D>0?Math.min(100,Math.max(0,(fe.value-k)/D*100)):0;return Me("div",{key:`mark-${fe.value}`,class:"wf-slider-mark",style:{left:Y(Ae/100)}},[Me("span",{class:"wf-slider-mark-dot"}),fe.label?Me("span",{class:"wf-slider-mark-label"},fe.label):null])})):null,ie=Me("div",{class:"wf-slider-track"},[q,ue]),he=Me("div",{class:"wf-slider"},[ie,Z]);return b(ee),y?Me("div",{class:"wf-slider-wrap"},[Me("label",{class:"wf-slider-label"},y),he]):Me("div",{class:"wf-slider-wrap"},[he])}};import{h as fn}from"weifuwu/vdom";var vl=(o,e)=>{let t=!1;return n=>{let{value:r,placeholder:a="\u641C\u7D22...",onInput:s,onClear:i,disabled:l}=n,c=r!==void 0,f=r??"",g=c&&f&&i?fn("button",{class:"wf-search-clear",type:"button","aria-label":"\u6E05\u9664",onClick:i},fn(O,{name:"close"})):null,u=fn("span",{class:"wf-search-icon"},fn(O,{name:"search"}));return fn("div",{class:g?"wf-search wf-search--has-clear":"wf-search"},[u,fn("input",{class:["wf-search-input",l?"wf-search-input--dis":""].filter(Boolean).join(" "),type:"search",value:c?f:void 0,placeholder:a,disabled:l||void 0,"aria-disabled":l?"true":void 0,onInput:p=>{t||p.isComposing||s?.(p)},onCompositionStart:()=>{t=!0},onCompositionEnd:p=>{t=!1,s?.(p)}}),g].filter(Boolean))}};import{h as ys}from"weifuwu/vdom";var xl=(o,e)=>t=>{let{options:n,size:r="md",block:a,ariaLabel:s}=t,i=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"SegmentedControl"}),l=f=>{let g=i?.controlled?.value!==void 0;i?.setValue(f),g||t.onChange?.(f)},c=["wf-segmented",r==="sm"&&"wf-segmented--sm",a&&"wf-segmented--block"].filter(Boolean).join(" ");return ys("div",{class:c,role:"group","aria-label":s},n.map(f=>ys("button",{type:"button",key:f.value,class:`wf-segmented-option${f.value===i?.value?" wf-segmented-option--active":""}`,"aria-pressed":f.value===i?.value?"true":"false",disabled:f.disabled||void 0,onClick:f.disabled?void 0:()=>l(f.value)},f.label)))};import{h as Hn}from"weifuwu/vdom";var kl=(o,e)=>t=>{let{value:n,max:r=100,label:a,showValue:s,status:i="default",size:l="md"}=t,c=n==null,f=c?0:Math.min(100,Math.max(0,n/r*100)),g=e?.i18n?.components?.ProgressBar??{},u=Hn("div",{class:`wf-progress wf-progress--${l}${c?" wf-progress--indeterminate":""}${i!=="default"?` wf-progress--${i}`:""}`,role:"progressbar","aria-valuenow":c?void 0:Math.round(n),"aria-valuemin":0,"aria-valuemax":Math.round(r),"aria-label":a??g.ariaLabel??"\u8FDB\u5EA6"},[Hn("div",{class:`wf-progress-fill${i!=="default"?` wf-progress-fill--${i}`:""}`,style:c?void 0:{width:`${f}%`}})]);if(!a&&!s)return u;let p=[];return a&&p.push(Hn("span",{class:"wf-progress-label"},a)),p.push(u),s&&!c&&p.push(Hn("span",{class:"wf-progress-value"},`${Math.round(f)}%`)),Hn("div",{class:"wf-progress-wrap"},p)};import{createClientBrowser as Cl}from"weifuwu/vdom";import{h as On}from"weifuwu/vdom";var Ml=(o,e)=>{let t=e.browser??Cl(),n=[],r=[],a=new Map,s=i=>{let l=a.get(i);return l||(l=c=>{c&&(r[i]=c)},a.set(i,l)),l};return i=>{let{items:l=[],active:c,onChange:f,multiple:g=!1}=i;n.length===0&&l.length>0&&(n=l.map(w=>w.key));let u=c!==void 0,p=u?c:n,d=w=>p.includes(w),h=w=>{u?f?.(w):(n=w,e.render())},m=w=>{d(w)?h(p.filter(y=>y!==w)):h(g?[...p,w]:[w])},b=w=>{let y=t?.activeElement()??null,x=r.indexOf(y);if(x<0)return;let k=x;if(w.key==="ArrowDown"||w.key==="ArrowRight")k=(x+1)%l.length;else if(w.key==="ArrowUp"||w.key==="ArrowLeft")k=(x-1+l.length)%l.length;else return;w.preventDefault(),r[k]?.focus()};if(l.length===0)return null;let v=l.map((w,y)=>{let x=d(w.key);return On("div",{class:`wf-accordion-item${x?" wf-accordion-item--open":""}`,key:w.key},[On("button",{type:"button",class:"wf-accordion-summary",ref:s(y),disabled:w.disabled||void 0,"aria-expanded":x?"true":"false",onClick:w.disabled?void 0:()=>m(w.key)},[w.title,On(O,{name:"chevron-down",size:14,className:"wf-accordion-arrow"})]),x&&w.content?On("div",{class:"wf-accordion-content"},w.content):null].filter(Boolean))});return On("div",{class:"wf-accordion",onKeyDown:b},v)}};import{h as Bn}from"weifuwu/vdom";var Pl=(o,e)=>t=>{let{title:n,sub:r,display:a,children:s}=t;return Bn("div",{class:"wf-page-head"},[Bn("div",{class:"wf-page-head-left"},[Bn("h2",{class:`wf-page-title${a?" wf-page-title--display":""}`},n),r?Bn("p",{class:"wf-page-sub"},r):null].filter(Boolean)),s?Bn("div",{class:"wf-page-head-actions"},s):null].filter(Boolean))};import{h as Un}from"weifuwu/vdom";var Sl=(o,e)=>t=>{let{items:n}=t,r=n.flatMap((s,i)=>{let l=i===n.length-1,c=l?Un("span",{class:"wf-breadcrumb-current","aria-current":"page"},s.label):s.href?Un("a",{class:"wf-breadcrumb-link",href:s.href},s.label):Un("span",{class:"wf-breadcrumb-text"},s.label);return l?c:[c,Un("span",{class:"wf-breadcrumb-sep","aria-hidden":"true"},"/")]}),a=e?.i18n?.components?.Breadcrumb??{};return Un("nav",{class:"wf-breadcrumb","aria-label":a.ariaLabel??"\u9762\u5305\u5C51"},r)};import{h as tr}from"weifuwu/vdom";var Tl=(o,e)=>t=>{let{vertical:n,children:r}=t;return n?tr("div",{class:"wf-divider wf-divider--vertical",role:"separator"}):tr("div",{class:r?"wf-divider wf-divider--with-text":"wf-divider",role:"separator"},r?tr("span",{class:"wf-divider-text"},r):void 0)};import{h as Re}from"weifuwu/vdom";function ws(o){return o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}var nr=(o,e)=>{let t=e?.i18n?.components?.FileUpload??{},n=null,r=p=>{p&&(n=p)},a=new Map,s=p=>`${p.name}:${p.size}`,i=p=>{if(!p.type.startsWith("image/"))return;let d=s(p),h=a.get(d);return!h&&typeof URL<"u"&&URL.createObjectURL&&(h=URL.createObjectURL(p),a.set(d,h)),h},l=p=>{if(!p){for(let d of a.values())URL.revokeObjectURL?.(d);a.clear()}},c=!1,f={...o},g=!1,{dropProps:u}=e.ui.useDragDrop({onDrop:p=>{if(g=!1,e.render(),f.disabled)return;let d=Array.from(p.dataTransfer?.files??[]);f.maxSize&&d.filter(m=>m.size>f.maxSize).length>0||f.onChange?.(d)},onDragOver:()=>{g||(g=!0,e.render())},onDragLeave:()=>{g&&(g=!1,e.render())}});return p=>{Object.assign(f,p);let{accept:d,multiple:h,maxSize:m,disabled:b,error:v,hint:w,value:y,onChange:x,children:k,uploading:E,progress:P}=p,S=y??[];y!==void 0&&!x&&!c&&(c=!0,console.warn(`[weifuwu/FileUpload] value \u5DF2\u4F20\uFF08\u53D7\u63A7\uFF09\u4F46\u672A\u63D0\u4F9B onChange\u2014\u2014\u9009\u62E9/\u5220\u9664\u65E0\u6CD5\u751F\u6548\u3002
10
+ \u4F20 onChange \u6216\u7701\u7565 value \u4F7F\u7528\u975E\u53D7\u63A7\u6A21\u5F0F\u3002`));let I=U=>{let D=U.target,C=Array.from(D.files??[]);m&&C.filter(T=>T.size>m).length>0||(x?.(C),D.value="")},A=U=>{let D=S.filter((C,M)=>M!==U);x?.(D)},$=Re("input",{type:"file",class:"wf-upload-input",accept:d||void 0,multiple:h||void 0,disabled:b||void 0,onChange:I,style:{display:"none"},ref:r}),N=Re("div",{class:`wf-upload-zone${b?" wf-upload-zone--disabled":""}${v?" wf-upload-zone--err":""}${g?" wf-upload-zone--drag":""}`,onClick:b?void 0:()=>n?.click(),...u},k??Re("div",{class:"wf-upload-placeholder"},[Re("span",{class:"wf-upload-icon"},"\u{1F4C1}"),Re("span",{class:"wf-upload-text"},t.placeholder??"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u6587\u4EF6"),d?Re("span",{class:"wf-upload-hint"},`${t.supportedFormats??"\u652F\u6301\u683C\u5F0F: "}${d}`):null,m?Re("span",{class:"wf-upload-hint"},`${t.maxSize??"\u6700\u5927 "}${ws(m)}`):null].filter(Boolean))),B=S.length>0?Re("ul",{class:"wf-upload-list"},S.map((U,D)=>{let C=i(U),M=[C?Re("img",{class:"wf-upload-thumb",src:C,alt:U.name}):null,Re("span",{class:"wf-upload-item-info"},[Re("span",{class:"wf-upload-item-name"},U.name),Re("span",{class:"wf-upload-item-size"},ws(U.size))]),Re("button",{class:"wf-upload-item-remove","aria-label":`${t.remove??"\u5220\u9664"} ${U.name}`,onClick:()=>A(D)},Re(O,{name:"trash"}))];return Re("li",{class:"wf-upload-item",key:U.name+U.size},M.filter(Boolean))})):null,W=E?Re("div",{class:"wf-upload-progress",role:"progressbar","aria-valuenow":P??0},Re("div",{class:"wf-upload-progress-fill",style:{width:`${P??0}%`}})):null,z=[$,N,B,W];return v&&z.push(Re("div",{class:"wf-upload-err"},v)),w&&!v&&z.push(Re("div",{class:"wf-upload-hint"},w)),Re("div",{class:"wf-upload",ref:l},z)}};import{h as El}from"weifuwu/vdom";var Il=(o,e)=>{let t=null,n={},r={n:0},a=l=>{t&&(t.style.outline=l?"2px dashed var(--wf-color-primary)":"")},{dropProps:s}=e.ui.useDragDrop({onDragEnter:l=>{n.disabled||(l.preventDefault(),r.n++,r.n===1&&a(!0))},onDragLeave:()=>{n.disabled||(r.n=Math.max(0,r.n-1),r.n===0&&a(!1))},onDrop:l=>{if(n.disabled)return;r.n=0,a(!1);let c=Array.from(l.dataTransfer?.files??[]);c.length>0&&n.onFiles?.(c)}}),i=l=>{t=l};return l=>(Object.assign(n,l),El("div",{class:["wf-drop-zone",l.disabled?"wf-drop-zone--disabled":"",l.className??""].filter(Boolean).join(" "),ref:i,...s},l.children))};import{h as ve}from"weifuwu/vdom";function $l(o){return o===void 0?"":o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}function Al(o){if(!o)return"";try{let e=new Date(o),t=Date.now()-e.getTime();return t<6e4?"\u521A\u521A":t<36e5?`${Math.floor(t/6e4)} \u5206\u949F\u524D`:t<864e5?`${Math.floor(t/36e5)} \u5C0F\u65F6\u524D`:e.toLocaleDateString()}catch{return""}}var Dl=(o,e)=>{let t=null,n=a=>{a&&(t=a)},r=()=>t?.click();return a=>{let{entries:s=[],path:i="/",loading:l=!1,openFile:c=null,editValue:f="",saving:g=!1,emptyText:u="\u7A7A\u76EE\u5F55"}=a,p=i==="/"?[]:i.split("/").filter(Boolean),d=b=>{let v=b.target,w=v.files?.[0];v.value="",w&&a.onUpload?.(w)},h=(b,v)=>ve("button",{type:"button",class:"wf-filetree-crumb",onClick:v},b),m=()=>ve("span",{class:"wf-filetree-sep"},"/");return ve("div",{class:"wf-filetree"},[ve("div",{class:"wf-filetree-toolbar"},[ve("div",{class:"wf-filetree-path"},[h("/",()=>a.onOpenDir?.("/")),...p.map((b,v)=>{let w=p.slice(0,v+1).join("/");return ve("span",{class:"wf-filetree-crumb-wrap"},[m(),h(b,()=>a.onOpenDir?.(w))])})]),ve("div",{class:"wf-filetree-actions"},[...a.onUpload?[ve(Ye,{size:"sm",variant:"ghost",onClick:r},[ve(O,{name:"upload",size:13})," \u4E0A\u4F20"]),ve("input",{ref:n,type:"file",hidden:!0,accept:a.accept,onChange:d})]:[],...a.onRefresh?[ve(Ye,{size:"sm",variant:"ghost",onClick:a.onRefresh},[ve(O,{name:"refresh",size:13})," \u5237\u65B0"])]:[]])]),c?ve("div",{class:"wf-filetree-editor"},[ve("div",{class:"wf-filetree-editor-head"},[a.onBack?ve(Ye,{size:"sm",variant:"ghost",onClick:a.onBack,disabled:g},[ve(O,{name:"arrow-left",size:13})," \u8FD4\u56DE\u5217\u8868"]):null,ve("span",{class:"wf-filetree-filename"},`${c.path}${c.truncated?"\uFF08\u5DF2\u622A\u65AD\uFF09":""}`),a.onSave?ve(Ye,{size:"sm",variant:"primary",disabled:g||a.onEditChange===void 0,onClick:()=>a.onSave?.(f)},g?"\u4FDD\u5B58\u4E2D...":"\u4FDD\u5B58"):null]),a.onEditChange?ve("textarea",{class:"wf-filetree-editor-area",rows:14,value:f,spellcheck:!1,onInput:b=>a.onEditChange?.(b.target.value)}):ve("pre",{class:"wf-filetree-preview"},c.content||"\uFF08\u7A7A\u6587\u4EF6\uFF09")]):ve("div",{class:"wf-filetree-list"},l?ve("div",{class:"wf-filetree-empty wf-text-secondary"},"\u52A0\u8F7D\u4E2D\u2026"):s.length===0?ve("div",{class:"wf-filetree-empty wf-text-secondary"},u):s.map(b=>ve("button",{type:"button",key:b.name,class:"wf-filetree-item",onClick:()=>b.type==="dir"?a.onOpenDir?.(i==="/"?b.name:`${i}/${b.name}`):a.onOpenFile?.(i==="/"?b.name:`${i}/${b.name}`)},[ve(O,{name:b.type==="dir"?"folder":"file",size:14,className:b.type==="dir"?"wf-filetree-dir":"wf-filetree-file"}),ve("span",{class:"wf-filetree-name"},b.name),ve("span",{class:"wf-filetree-meta"},[b.type==="file"&&b.size!==void 0?$l(b.size):"",b.mtime?` \xB7 ${Al(b.mtime)}`:""])])))])}};import{h as xe}from"weifuwu/vdom";import{createClientBrowser as Ll}from"weifuwu/vdom";import{h as He}from"weifuwu/vdom";var or=(o,e)=>{let t=e.browser??Ll(),n=null,r=[],a=!1,s=null,i=null,l=null,c=(u,p,d)=>{p&&!l?l=e.ui.openPopup({key:"menu-popup",anchor:()=>i,placement:"right",gap:6,content:d,onClose:()=>{l=null,s&&(s=null,e.render())}}):l&&p&&l.update(d())},f=u=>{u&&(n=u)},g=u=>{if(!["ArrowDown","ArrowUp","Home","End"].includes(u.key))return;let p=n?Array.from(n.querySelectorAll(".wf-menu-item, .wf-menu-submenu-title")):[],d=p.indexOf(t?.activeElement()??null);if(d<0)return;u.preventDefault();let h=d;u.key==="ArrowDown"?h=(d+1)%p.length:u.key==="ArrowUp"?h=(d-1+p.length)%p.length:u.key==="Home"?h=0:u.key==="End"&&(h=p.length-1),p[h].focus()};return u=>{let{items:p,onSelect:d,activeKey:h,className:m,openKeys:b,onOpenChange:v,collapsible:w,collapsed:y,onCollapseChange:x}=u,k=b!==void 0,E=y!==void 0,P=new Set(k?b:r),S=E?!!y:a,I=C=>{k?v?.(C):(r=C,e.render())},A=(C,M)=>{let T=M!=null?M?[...P,C]:[...P].filter(R=>R!==C):P.has(C)?[...P].filter(R=>R!==C):[...P,C];I([...new Set(T)])},$=()=>{let C=!S;E?x?.(C):(a=C,e.render())},N=C=>{let M=P.has(C.key)&&!S,T=C.active??(h!=null&&C.key===h);if(S){let K=s===C.key,Y=He("div",{"data-key":C.key,class:`wf-menu-submenu-title wf-menu-submenu-title--collapsed${T?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:T?0:-1,"aria-haspopup":"menu","aria-expanded":K?"true":"false",onClick:Q=>{K?(s=null,e.render()):(i=Q.currentTarget,s=C.key,e.render())},onKeyDown:Q=>{Q.key==="Enter"||Q.key===" "||Q.key==="ArrowRight"?(Q.preventDefault(),K||(i=Q.currentTarget,s=C.key,e.render())):Q.key==="Escape"&&(Q.preventDefault(),s=null,e.render())}},[C.icon?He("span",{class:"wf-menu-icon"},C.icon):null].filter(Boolean));return K&&c(C,K,()=>He("div",{class:"wf-menu-popup"},(C.children??[]).map(Q=>B(Q,!0,!0)))),He("div",{key:C.key,"data-key":C.key,class:"wf-menu-submenu wf-menu-submenu--collapsed"},[Y])}let R=[C.icon?He("span",{class:"wf-menu-icon"},C.icon):null,S?null:He("span",{class:"wf-menu-label"},C.label),S?null:He("span",{class:"wf-menu-arrow"},He(O,{name:"chevron-right",size:12}))].filter(Boolean),L=He("div",{"data-key":C.key,class:`wf-menu-submenu-title${T?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:T?0:-1,"aria-expanded":M?"true":"false",onClick:()=>A(C.key),onKeyDown:K=>{K.key==="Enter"||K.key===" "||K.key==="ArrowRight"?(K.preventDefault(),M||A(C.key,!0)):(K.key==="ArrowLeft"||K.key==="Escape")&&M&&(K.preventDefault(),A(C.key,!1))}},R),H=He("div",{class:"wf-menu-submenu-content",role:"group"},(C.children??[]).map(K=>B(K,!0)));return He("div",{key:C.key,"data-key":C.key,class:`wf-menu-submenu${M?" wf-menu-submenu--open":""}`},[L,H])},B=(C,M=!1,T=!1)=>{if(C.children&&C.children.length>0&&!S)return N(C);let R=C.active??(h!=null&&C.key===h);return He("div",{key:C.key,"data-key":C.key,class:`wf-menu-item${R?" wf-menu-item--active":""}${C.danger?" wf-menu-item--danger":""}${M?" wf-menu-item--child":""}`,role:"menuitem",tabIndex:R?0:-1,"aria-current":R?"page":void 0,onClick:()=>{C.onClick?C.onClick():d?.(C.key)},onKeyDown:L=>{if(L.key==="Enter"||L.key===" ")L.preventDefault(),C.onClick?C.onClick():d?.(C.key);else if((L.key==="ArrowLeft"||L.key==="Escape")&&M){L.preventDefault();let H=C._parentKey;H&&P.has(H)&&A(H,!1)}}},[C.icon?He("span",{class:"wf-menu-icon"},C.icon):null,S&&!T?null:He("span",{class:"wf-menu-label"},C.label)].filter(Boolean))},W=[],z;for(let C of p)if(C.group!==z&&(W.push(He("div",{class:"wf-menu-group",key:`g-${C.group}`},C.group)),z=C.group),C.children&&C.children.length>0){let M=N(C);!S&&M.props.children[1]&&(M.props.children[1].props.children=M.props.children[1].props.children.map(T=>T?.props?{...T,props:{...T.props,_parentKey:C.key}}:T)),W.push(M)}else W.push(B(C));let U=["wf-menu",S?"wf-menu--collapsed":"",m??""].filter(Boolean).join(" "),D=[...W,w?He("div",{class:"wf-menu-collapse-btn",role:"button",tabIndex:0,"aria-label":S?"\u5C55\u5F00\u83DC\u5355":"\u6298\u53E0\u83DC\u5355",onClick:$,onKeyDown:C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),$())}},S?He(O,{name:"chevron-right",size:14}):He(O,{name:"chevron-left",size:14})):null].filter(Boolean);return!s&&l&&(l.close(),l=null),He("nav",{class:U,role:"menu",ref:f,onKeyDown:g},D)}};var Rl=(o,e)=>{let t=e||"/";return o.find(r=>r.key==="/"?t==="/":t.startsWith(r.key))?.key??""},Nl=(o,e)=>t=>{let{nav:n=[],path:r="",user:a=null,brand:s={},onNavigate:i,onLogout:l,onSettings:c,loading:f=!1,sidebarWidth:g="240px"}=t,u=n.map(h=>({key:h.key,label:h.label,icon:h.icon,group:h.group})),p=s.name??"App",d=s.subtitle??"";return xe("div",{class:"wf-app-shell",style:{"--wf-sidebar-width":g}},[xe("aside",{class:"wf-sidebar"},[xe("div",{class:"wf-sidebar-header"},[xe(dn,{name:s.logo??p.slice(0,1),size:"lg"}),xe("div",{class:"wf-app-shell-brand-text"},[xe("span",{class:"wf-app-shell-brand-name"},p),d?xe("small",{class:"wf-app-shell-brand-sub"},d):null])]),xe("div",{class:"wf-sidebar-body"},[f?xe("div",{class:"wf-app-shell-skel"}):xe(or,{items:u,activeKey:Rl(n,r),onSelect:h=>i?.(h)})]),t.footer??(f?xe("div",{class:"wf-sidebar-footer"},[xe("div",{class:"wf-app-shell-skel"}),xe("div",{class:"wf-app-shell-skel wf-app-shell-skel--sm"})]):xe("div",{class:"wf-sidebar-footer"},[xe("div",{class:"wf-app-shell-user"},[xe("div",{class:"wf-app-shell-user-info"},[xe(dn,{name:a?.name??"?",size:"sm"}),xe("div",{class:"wf-app-shell-user-meta"},[xe("div",{class:"wf-app-shell-user-name"},a?.name??"\u672A\u767B\u5F55"),a?.email?xe("div",{class:"wf-app-shell-user-mail"},a.email):null])]),xe("div",{class:"wf-app-shell-user-actions"},[c?xe(Ye,{size:"sm",variant:"ghost",title:"\u8BBE\u7F6E",onClick:c},[xe(O,{name:"settings",size:16})]):null,l?xe(Ye,{size:"sm",variant:"ghost",title:"\u9000\u51FA\u767B\u5F55",onClick:l},[xe(O,{name:"log-out",size:16})]):null])])]))]),xe("main",{class:"wf-main"},t.children)])};import{h as Ue}from"weifuwu/vdom";var zn=800,_n=500,vs=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16","#f97316","#14b8a6"],xs=["#94a3b8","#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16"];function Hl(o){let e=0;for(let t=0;t<o.length;t++)e=e*31+o.charCodeAt(t)>>>0;return e}var bo=(o,e,t)=>t?.[o]??e[Hl(o)%e.length];function ks(o){if(o===void 0)return 14;let e=Math.max(1,o);return 12+Math.round(Math.log10(e)*6)}function Ol(o,e){let r=1/0,a=1/0,s=-1/0,i=-1/0;for(let l=0;l<o.length;l++){let c=ks(o[l].weight),f=e[l];r=Math.min(r,f.x-c),a=Math.min(a,f.y-c),s=Math.max(s,f.x+c),i=Math.max(i,f.y+c+(o[l].sublabel?34:0))}return o.length===0?`0 0 ${zn} ${_n}`:`${Math.round(r-28)} ${Math.round(a-28)} ${Math.round(s-r+56)} ${Math.round(i-a+56)}`}function Bl(o,e){let t=o.length;if(t===0)return[];if(e==="ring"){if(t===1)return[{x:zn/2,y:_n/2}];let i=zn/2,l=_n/2,c=Math.min(zn,_n)/2-70;return o.map((f,g)=>{let u=Math.PI*2*g/t-Math.PI/2;return{x:i+c*Math.cos(u),y:l+c*Math.sin(u)}})}let n=Math.max(1,Math.ceil(Math.sqrt(t))),r=Math.ceil(t/n),a=zn-160,s=_n-140;return o.map((i,l)=>({x:80+a*(l%n)/Math.max(1,n-1),y:80+s*Math.floor(l/n)/Math.max(1,r-1)}))}var Ul=(o,e)=>t=>{let{nodes:n=[],edges:r=[],selectedId:a=null,onSelect:s,onNodeClick:i,layout:l="ring",width:c="100%",height:f="480px",showLegend:g=!0,nodeColors:u,edgeColors:p}=t,d=Bl(n,l),h=new Map(n.map((y,x)=>[y.id,{node:y,...d[x]}])),m=Ol(n,d),b=[...new Set(n.map(y=>y.kind??"default"))],v=[...new Set(r.map(y=>y.type??"default"))],w=r.filter(y=>h.has(y.from)&&h.has(y.to)).map(y=>{let x=h.get(y.from),k=h.get(y.to);return{e:y,x1:x.x,y1:x.y,x2:k.x,y2:k.y,color:bo(y.type??"default",xs,p),width:Math.min(5,Math.max(1,y.strength??1.5)),marker:y.directed?"url(#rg-arrow)":void 0}});return Ue("div",{class:"wf-rg"},[Ue("svg",{class:"wf-rg-canvas",width:c,height:f,viewBox:m,preserveAspectRatio:"xMidYMid meet"},[Ue("defs",{},Ue("marker",{id:"rg-arrow",viewBox:"0 0 10 10",refX:22,refY:5,markerWidth:7,markerHeight:7,orient:"auto-start-reverse"},Ue("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"#94a3b8"}))),...w.map(y=>Ue("line",{key:`${y.e.from}-${y.e.to}-${y.e.type??""}`,x1:y.x1,y1:y.y1,x2:y.x2,y2:y.y2,stroke:y.color,"stroke-width":y.width,marker:y.marker,class:"wf-rg-edge",opacity:.75,"pointer-events":"none"})),...n.map(y=>{let x=h.get(y.id),k=ks(y.weight),E=bo(y.kind??"default",vs,u),P=y.id===a;return Ue("g",{key:y.id,class:"wf-rg-node"+(P?" wf-rg-node--selected":""),transform:`translate(${x.x}, ${x.y})`,onClick:()=>{s?.(y.id),i?.(y.id)}},[Ue("title",{},`${y.label}${y.sublabel?`\uFF08${y.sublabel}\uFF09`:""}`),Ue("circle",{r:k+10,fill:"transparent","pointer-events":"all"}),Ue("circle",{r:k,fill:E,opacity:.18,stroke:E,"stroke-width":P?3:1.5}),Ue("text",{class:"wf-rg-label",y:k+16,"text-anchor":"middle"},y.label),y.sublabel?Ue("text",{class:"wf-rg-sublabel",y:k+30,"text-anchor":"middle"},y.sublabel):null])})]),g&&b.length+v.length>0?Ue("div",{class:"wf-rg-legend"},[...b.map(y=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-swatch",style:{background:bo(y,vs,u)}}),y])),...v.map(y=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-line",style:{background:bo(y,xs,p)}}),y]))]):null])};import{h as yo}from"weifuwu/vdom";var zl=(o,e)=>{let t=!1,n="top",r=!1,a=null,s=u=>{u&&(a=u)},i=null,l=null,c=()=>{l!==null&&(clearTimeout(l),l=null)},f=()=>{c(),!r&&(l=setTimeout(()=>{l=null,t||(t=!0,e.render())},0))},g=()=>{c(),l=setTimeout(()=>{l=null,t&&(t=!1,e.render())},0)};return e.ui.onUnmount?.(c),e.ui.onUnmount?.(()=>{i&&i.close()}),u=>{let{content:p,position:d="top",children:h}=u;n=d,r=!!u.disabled;let m=yo("div",{class:`wf-tooltip wf-tooltip--${d}`,role:"tooltip"},[yo("div",{class:"wf-tooltip-arrow"}),yo("div",{class:"wf-tooltip-content"},p)]);return t&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>n,gap:6,content:()=>m,onClose:()=>{i=null,t&&(t=!1,e.render())}}):!t&&i?(i.close(),i=null):i&&i.update(m),yo("div",{class:"wf-tooltip-wrap",ref:s,"aria-haspopup":"tooltip",onMouseEnter:f,onMouseLeave:g,onClick:()=>{t=!t,e.render()}},h)}};import{h as zt}from"weifuwu/vdom";var _l=(o,e)=>{let t=!1,n=null,r;return e.ui.useGlobalKey(a=>{a.key==="Escape"&&n?.open&&t&&r?.()}),e.ui.onUnmount?.(()=>{n&&n.close()}),a=>{let{open:s,title:i,position:l="right",onClose:c,children:f,footer:g,width:u}=a;r=c;let p=e?.i18n?.components?.Drawer??{};t=!!s;let d=zt("div",{class:"wf-drawer-overlay",onClick:c}),h=zt("button",{class:"wf-drawer-close",onClick:c,type:"button","aria-label":p.closeAria??"\u5173\u95ED"},zt(O,{name:"close"})),m=i?zt("div",{class:"wf-drawer-header"},[i,h]):null,b=zt("div",{class:"wf-drawer-body"},f),v=g?zt("div",{class:"wf-drawer-footer"},g):null,w=zt("div",{class:`wf-drawer-panel wf-drawer-panel--${l}`,style:u?{"--wf-drawer-width":u}:void 0,onClick:x=>x.stopPropagation()},[m,b,v].filter(Boolean)),y=zt("div",{class:`wf-drawer wf-drawer--${l} ${s?"wf-drawer--enter":"wf-drawer--exit"}`,role:"dialog","aria-modal":"true","aria-label":i??p.ariaLabel??"\u4FA7\u8FB9\u9762\u677F",tabIndex:-1,onKeyDown:x=>{x.key==="Escape"&&c?.()}},[d,w]);return s&&!n?n=e.ui.openPopup({key:"drawer",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>y,onClose:()=>{n=null}}):!s&&n?(n.update(y),n.close(),n=null):n&&n.update(y),null}};import{h as wo}from"weifuwu/vdom";var Vn=(o,e)=>{let t="bottom",n="click",r=!1,a=null,s=p=>{p&&(a=p)},i=null,l=null,c=null,f=()=>{c!==null&&(clearTimeout(c),c=null)},g=()=>{f(),!r&&(c=setTimeout(()=>{c=null,l?.open||l?.setOpen(!0)},0))},u=()=>{f(),c=setTimeout(()=>{c=null,l?.open&&l?.setOpen(!1)},0)};return e.ui.onUnmount?.(f),e.ui.onUnmount?.(()=>{i&&i.close()}),p=>{let{content:d,position:h="bottom",trigger:m="click",children:b}=p;t=h,n=m,l=e.ui.useOpen({open:p.open,onOpenChange:p.onOpenChange,name:"Popover"}),r=!!p.disabled;let v=wo("div",{class:`wf-popover wf-popover--${h} wf-popover--enter`,role:"tooltip"},[wo("div",{class:"wf-popover-arrow"}),wo("div",{class:"wf-popover-content"},d)]);return l?.open&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:6,content:()=>v,onClose:()=>{i=null,l?.setOpen(!1)}}):!l?.open&&i?(i.close(),i=null):i&&i.update(v),wo("div",{class:`wf-popover-wrap${l?.open?" wf-popover-wrap--open":""}`,ref:s,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onClick:w=>{w.stopPropagation?.(),l?.setOpen(!l.open)},...n==="hover"?{onMouseEnter:g,onMouseLeave:u}:{}},b)}};import{h as un,Fragment as Vl}from"weifuwu/vdom";var Kl=o=>e=>{let{variant:t="text",lines:n=1,cols:r=3,width:a,height:s,className:i}=e,l={};a!==void 0&&(l.width=typeof a=="number"?`${a}px`:a),s!==void 0&&(l.height=typeof s=="number"?`${s}px`:s);let c=["wf-skeleton",`wf-skeleton--${t}`,i].filter(Boolean).join(" ");if(t==="table"){let g=Array.from({length:n},(u,p)=>{let d=Array.from({length:r},(h,m)=>{let b=p===n-1&&m===r-1?"40%":void 0;return un("div",{class:"wf-skeleton wf-skeleton--text",style:b?{width:b}:void 0})});return un("div",{class:"wf-skeleton-row"},d)});return un("div",{class:"wf-skeleton-table"},g)}if(n<=1)return un("div",{class:c,style:Object.keys(l).length?l:void 0});let f=Array.from({length:n},(g,u)=>{let p=u===n-1&&n>1?`${c} wf-skeleton--short`:c;return un("div",{class:p,style:Object.keys(l).length?l:void 0})});return un(Vl,null,f)};import{h as Tt}from"weifuwu/vdom";var jl=(o,e)=>{let t=!1,n=1,r=null,a="",s=!1,i=!1,l=null,c=g=>{t&&!l?l=e.ui.openPopup({key:"img-preview",mask:!0,maskCentered:!0,content:()=>g,onClose:()=>{l=null,t&&(t=!1,n=1,e.render())}}):!t&&l?(l.close(),l=null):l&&l.update(g)},f=g=>{r=g};return g=>{let{alt:u="",fallback:p,loading:d,width:h,height:m,className:b,style:v,preview:w,previewScale:y=1,placeholder:x,placeholderText:k,errorText:E}=g,P=g.src??"";P!==a&&(a=P,s=!1,i=!1);let S=["wf-image-placeholder",b].filter(Boolean).join(" "),I=k??"\u56FE\u7247\u52A0\u8F7D\u4E2D\u2026",A=E??"\u56FE\u7247\u52A0\u8F7D\u5931\u8D25",$=()=>Tt("div",{class:S,style:{width:h,height:m,...v??{}}},[Tt("span",{class:"wf-image-placeholder-text"},P&&i?A:I)]),N=W=>{let z={class:["wf-image",b].filter(Boolean).join(" "),src:P??p??"",alt:u,loading:d??"lazy",onLoad:()=>{s||(s=!0,i=!1,e.render())},onError:U=>{let D=U.currentTarget;if(p&&D.src!==p){D.src=p;return}x&&!i&&(i=!0,e.render())}};return h!==void 0&&(z.width=h),m!==void 0&&(z.height=m),v&&(z.style=v),z};if(x&&(!P||!s||i)){let W=P&&!s?Tt("img",{src:P,style:{display:"none",width:0,height:0},onLoad:()=>{s=!0,i=!1,e.render()},onError:()=>{i=!0,e.render()}}):null;return Tt("div",{style:{display:"contents"}},[$(),W])}if(!w)return Tt("img",N(!1));let B=Tt("img",{class:"wf-img-preview-image",src:P,alt:u,style:{transform:`scale(${n*y})`,maxWidth:"90vw",maxHeight:"90vh"},onClick:W=>{W.stopPropagation(),n=n===1?2:1,e.render()}});return c(B),Tt("div",{class:"wf-img-preview-wrap"},[Tt("button",{type:"button",class:"wf-img-preview-trigger","aria-label":"\u653E\u5927\u9884\u89C8",ref:f,onClick:()=>{t=!0,e.render()}},Tt("img",N(!0)))])}};import{h as vo}from"weifuwu/vdom";var Fl=(o,e)=>{let t=!1,n={once:!0},r=e.ui.useInView({rootMargin:()=>n.rootMargin??"0px",threshold:()=>n.threshold??0}),a=s=>{s?r.observe(s):r.disconnect()};return s=>{if(Object.assign(n,s),r.isIn)return t||(t=!0,s.once!==!1&&r.disconnect(),s.onEnter?.()),vo("div",{class:"wf-inview wf-inview--loaded"},s.children);let i=s.placeholder!==void 0?s.placeholder:vo("div",{class:"wf-inview-placeholder"});return vo("div",{class:"wf-inview wf-inview--pending"},[vo("div",{class:"wf-inview-pending",style:{width:"1px",height:"1px",opacity:0,pointerEvents:"none"},ref:a}),i])}};import{createClientBrowser as ql}from"weifuwu/vdom";import{h as re}from"weifuwu/vdom";var Gl=["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];function xo(){return Gl}function Cs(o,e){return new Date(o,e+1,0).getDate()}function Wl(o,e){return new Date(o,e,1).getDay()}function Kn(o,e){let t=[],n=Cs(o,e),r=Wl(o,e),a=e===0?11:e-1,s=e===0?o-1:o,i=Cs(s,a),l=new Date,c=[];for(let p=r-1;p>=0;p--){let d=i-p;c.push({year:s,month:a,day:d,isOtherMonth:!0,isToday:s===l.getFullYear()&&a===l.getMonth()&&d===l.getDate()})}for(let p=1;p<=n;p++)c.push({year:o,month:e,day:p,isOtherMonth:!1,isToday:o===l.getFullYear()&&e===l.getMonth()&&p===l.getDate()}),c.length===7&&(t.push(c),c=[]);let f=e===11?0:e+1,g=e===11?o+1:o,u=1;for(;t.length<6;){for(;c.length<7;)c.push({year:g,month:f,day:u++,isOtherMonth:!0,isToday:g===l.getFullYear()&&f===l.getMonth()&&u-1===l.getDate()});t.push(c),c=[]}return t}function Et(o,e,t){return`${o}-${String(e+1).padStart(2,"0")}-${String(t).padStart(2,"0")}`}function rr(o,e){return`${String(o).padStart(2,"0")}:${String(e).padStart(2,"0")}`}function Ms(o,e,t,n,r){return`${Et(o,e,t)} ${rr(n,r)}`}function sr(){return Array.from({length:24},(o,e)=>e)}function ir(){return Array.from({length:12},(o,e)=>e*5)}var Xl=(o,e)=>{let t=e.browser??ql(),n=!1,r="",a=new Date,s=a.getFullYear(),i=a.getMonth(),l=a.getHours(),c=Math.round(a.getMinutes()/5)*5,f=a.getFullYear(),g=a.getMonth(),u=a.getDate(),p=null,d=null,h=null,m=y=>{h=y},b="date";e.ui.useGlobalKey(y=>{y.key==="Escape"&&n&&(n=!1,e.render())});let v=null,w=y=>{n&&y&&!v?v=e.ui.openPopup({key:"dp-calendar",mask:!0,maskClosable:!0,closeOnEscape:!1,content:()=>y,position:()=>{let x=h?.getBoundingClientRect();if(!x)return{x:0,y:0};let k=b==="range";return{x:x.left,y:x.bottom+4,width:k?void 0:x.width}},onClose:()=>{v=null,n&&(n=!1,e.render())}}):!n&&v?(v.close(),v=null):v&&v.update(y)};return y=>{let x=e?.i18n?.components?.DatePicker??{},{mode:k="date",value:E,onChange:P,placeholder:S=x.placeholder??"\u9009\u62E9\u65E5\u671F",disabled:I,error:A}=y;b=k;let $=n,N=q=>{n=q,e.render()},B=q=>{I||N(!n)},W=q=>{if(k==="datetime")f=q.year,g=q.month,u=q.day,s=q.year,i=q.month,e.render();else if(k==="range")if(!p||p&&d)p=Et(q.year,q.month,q.day),d=null,e.render();else{d=Et(q.year,q.month,q.day);let Z=p<d?p:d,ee=p<d?d:p;r=`${Z} ~ ${ee}`,P?.(r),N(!1)}else r=Et(q.year,q.month,q.day),P?.(r),N(!1)},z=()=>{i===0?(s--,i=11):i--,e.render()},U=()=>{i===11?(s++,i=0):i++,e.render()},D=()=>{r=rr(l,c),P?.(r),N(!1)},C=()=>{r=Ms(f,g,u,l,c),P?.(r),N(!1)},M=Kn(s,i),T=[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6].some(q=>q)?[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6]:xo(),R=(q,Z,ee)=>re("button",{class:"wf-datepicker-header-btn",type:"button","aria-label":Z,onClick:ee},re(O,{name:q})),L=re("div",{class:"wf-datepicker-header"},[R("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",z),re("span",{class:"wf-datepicker-header-title"},`${s}\u5E74${i+1}\u6708`),R("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",U)]),H=re("div",{class:"wf-datepicker-weekdays"},T.map(q=>re("span",{class:"wf-datepicker-weekday"},q))),K=M.map((q,Z)=>re("div",{class:"wf-datepicker-grid",key:`row-${Z}`},q.map((ee,ue)=>{let ie=["wf-datepicker-cell"];ee.isOtherMonth&&ie.push("wf-datepicker-cell--other-month"),ee.isToday&&ie.push("wf-datepicker-cell--today");let he=Et(ee.year,ee.month,ee.day);return k==="range"?he===p||he===d?ie.push("wf-datepicker-cell--range-edge"):p&&d&&he>p&&he<d&&ie.push("wf-datepicker-cell--in-range"):k==="datetime"?f===ee.year&&g===ee.month&&u===ee.day&&ie.push("wf-datepicker-cell--selected"):he===r&&ie.push("wf-datepicker-cell--selected"),re("button",{class:ie.join(" "),key:`${ee.year}-${ee.month}-${ee.day}`,type:"button",onClick:()=>W(ee)},String(ee.day))}))),Y=re("div",{class:"wf-datepicker-range-panel"},[L,H,...K]),Q=q=>{if(q.key==="Escape"){N(!1);return}if(k==="time"||k==="datetime"||!["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(q.key))return;let Z=q.currentTarget,ee=Array.from(Z.querySelectorAll(".wf-datepicker-cell")),ue=ee.indexOf(t?.activeElement()??null);if(ue<0)return;q.preventDefault();let ie=7,he=ue;q.key==="ArrowLeft"?he--:q.key==="ArrowRight"?he++:q.key==="ArrowUp"?he-=ie:q.key==="ArrowDown"&&(he+=ie),he>=0&&he<ee.length&&ee[he].focus()},G=null;if($)if(k==="time"){let q=sr(),Z=ir();G=re("div",{class:"wf-time-picker",role:"dialog",onKeyDown:Q,onMouseDown:ue=>ue.stopPropagation()},[re("div",{class:"wf-time-body"},[re("div",{class:"wf-time-col"},[re("div",{class:"wf-time-col-label"},x.hour??"\u65F6"),re("div",{class:"wf-time-opt-list"},q.map(ue=>re("button",{class:`wf-time-opt${ue===l?" wf-time-opt--selected":""}`,type:"button",key:ue,onClick:()=>{l=ue,e.render()}},String(ue).padStart(2,"0"))))]),re("div",{class:"wf-time-col"},[re("div",{class:"wf-time-col-label"},x.minute??"\u5206"),re("div",{class:"wf-time-opt-list"},Z.map(ue=>re("button",{class:`wf-time-opt${ue===c?" wf-time-opt--selected":""}`,type:"button",key:ue,onClick:()=>{c=ue,e.render()}},String(ue).padStart(2,"0"))))])]),re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:()=>N(!1)},x.cancel??"\u53D6\u6D88"),re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:D},x.confirm??"\u786E\u5B9A")])])}else if(k==="range"){let q=i===11?0:i+1,Z=i===11?s+1:s,ee=Kn(Z,q);G=re("div",{class:"wf-datepicker-range-wrap",onMouseDown:ie=>ie.stopPropagation()},[re("div",{class:"wf-datepicker-range-panel"},[re("div",{class:"wf-datepicker-header"},[R("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",z),re("span",{class:"wf-datepicker-header-title"},`${s}\u5E74${i+1}\u6708`),re("span",{class:"wf-datepicker-header-title"})]),H,...K]),re("div",{class:"wf-datepicker-range-panel"},[re("div",{class:"wf-datepicker-header"},[re("span",{class:"wf-datepicker-header-title"}),re("span",{class:"wf-datepicker-header-title"},`${Z}\u5E74${q+1}\u6708`),R("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",U)]),re("div",{class:"wf-datepicker-weekdays"},T.map(ie=>re("span",{class:"wf-datepicker-weekday"},ie))),...ee.map((ie,he)=>re("div",{class:"wf-datepicker-grid",key:`row-${he}`},ie.map(fe=>{let Ae=Et(fe.year,fe.month,fe.day),Se=["wf-datepicker-cell"];return fe.isOtherMonth&&Se.push("wf-datepicker-cell--other-month"),fe.isToday&&Se.push("wf-datepicker-cell--today"),Ae===p||Ae===d?Se.push("wf-datepicker-cell--range-edge"):p&&d&&Ae>p&&Ae<d&&Se.push("wf-datepicker-cell--in-range"),re("button",{class:Se.join(" "),key:Ae,type:"button",onClick:()=>W(fe)},String(fe.day))})))])])}else{let q=[Y];k==="datetime"&&(q.push(re("div",{class:"wf-datetime-time"},[re("span",{class:"wf-datetime-time-label"},(x.time??"\u65F6\u95F4")+"\uFF1A"),re("div",{class:"wf-datetime-time-select"},[re("select",{class:"wf-datetime-select",value:l,onChange:ee=>{l=parseInt(ee.target.value),e.render()}},sr().map(ee=>re("option",{value:ee,key:ee},String(ee).padStart(2,"0")))),re("span",{class:"wf-datetime-sep"},":"),re("select",{class:"wf-datetime-select",value:c,onChange:ee=>{c=parseInt(ee.target.value),e.render()}},ir().map(ee=>re("option",{value:ee,key:ee},String(ee).padStart(2,"0"))))])])),q.push(re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:C},x.confirm??"\u786E\u5B9A")]))),G=re("div",{class:"wf-datepicker-dropdown",role:"dialog",onKeyDown:Q,onMouseDown:ee=>ee.stopPropagation()},q)}w($?G:null);let X=E??r??"";return re("div",{class:`wf-datepicker${I?" wf-datepicker--disabled":""}`},[re("input",{class:["wf-datepicker-input",A?" wf-datepicker-input--err":""].filter(Boolean).join(" "),"aria-invalid":A?"true":void 0,type:"text",placeholder:S,value:X||"",ref:m,readonly:!0,disabled:I,role:"combobox","aria-haspopup":"dialog","aria-expanded":String($),onClick:B})])}};import{h as se}from"weifuwu/vdom";function jn(o,e){let t=(n=>{let r=(n-o[0])/(o[1]-o[0]);return e[0]+r*(e[1]-e[0])});return t.domain=o,t.range=e,t.invert=n=>{let r=(n-e[0])/(e[1]-e[0]);return o[0]+r*(o[1]-o[0])},t}function Ss(o,e,t){return o.length===0?"":o.map((n,r)=>{let a=e(r),s=t(n.value);return r===0?`M${a},${s}`:`L${a},${s}`}).join(" ")}function Ts(o,e,t,n){if(o.length===0)return"";let r=o.map((i,l)=>{let c=e(l),f=t(i.value);return`${c},${f}`}),a=e(0),s=e(o.length-1);return`M${a},${n}L${r.join("L")}L${s},${n}Z`}function Es(o,e,t,n){let r=n??Math.max(4,(e.range[1]-e.range[0])/o.length*.6);return o.map((a,s)=>({x:e(s)-r/2,y:t(Math.max(0,a.value)),width:r,height:Math.abs(t(a.value)-t(0)),color:a.color??Xt(s),label:a.label,value:a.value}))}function Is(o,e,t,n){let r=o.reduce((s,i)=>s+Math.abs(i.value),0);if(r===0)return[];let a=-Math.PI/2;return o.map((s,i)=>{let l=Math.abs(s.value)/r*Math.PI*2,c=a+l,f=Yl(e,t,n,a,c),g=a+l/2;return a=c,{d:f,color:s.color??Xt(i),label:s.label,value:s.value,centroid:{x:e+Math.cos(g)*n*.6,y:t+Math.sin(g)*n*.6}}})}function Yl(o,e,t,n,r){let a=o+t*Math.cos(n),s=e+t*Math.sin(n),i=o+t*Math.cos(r),l=e+t*Math.sin(r),c=r-n>Math.PI?1:0;return`M${o},${e}L${a},${s}A${t},${t} 0 ${c} 1 ${i},${l}Z`}var Ps=["#3b82f6","#ef4444","#22c55e","#f59e0b","#8b5cf6","#ec4899","#06b6d4","#84cc16"];function Xt(o){return Ps[o%Ps.length]}function ar(o,e=5){let[t,n]=o.domain,r=(n-t)/e,a=[];for(let s=0;s<=e;s++){let i=t+r*s;a.push({value:i,y:o(i),label:Zl(i)})}return a}function Zl(o){return Math.abs(o)>=1e6?(o/1e6).toFixed(1)+"M":Math.abs(o)>=1e3?(o/1e3).toFixed(1)+"k":String(Math.round(o))}var Jl=(o,e)=>{let t=null,n=null,r=null;return a=>{let{type:s="line",data:i,options:l={},title:c,area:f,className:g}=a,u=l.width??320,p=l.height??200,d=l.padding??32,h=u-d*2,m=p-d*2,b=i.map(B=>B.value),v=Math.min(0,...b),w=Math.max(...b),y=w-v||1,x=()=>{let B=Math.max(1,i.length-1),W=jn([-.5,B+.5],[0,h]),z=jn([v,w],[m,0]),U=ar(z),D=Ss(i,W,z),C=f?Ts(i,W,z,z(0)):null,M=i.map((T,R)=>{let L=W(R)+d,H=z(T.value)+d,K=Q=>{n=Q.target,t={label:T.label,value:T.value,color:T.color??Xt(R)},e.render()},Y=()=>{n=null,t=null,e.render()};return se("g",{key:`dot-${R}`},[se("circle",{cx:L,cy:H,r:3,fill:T.color??Xt(R),style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,"pointer-events":"none"}),se("circle",{cx:L,cy:H,r:9,fill:"transparent",style:{cursor:"pointer"},onMouseEnter:K,onMouseLeave:Y})])});return se("svg",{style:{width:"100%"},height:p,viewBox:`0 0 ${u} ${p}`},[...U.map((T,R)=>se("g",{key:`tick-${R}`},[se("line",{x1:d,y1:T.y+d,x2:u-d,y2:T.y+d,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:d-6,y:T.y+d+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},T.label)])),...C?[se("path",{key:"area",d:C,style:{fill:"var(--wf-color-primary-bg)"},stroke:"none",transform:`translate(${d},${d})`})]:[],se("path",{key:"line",d:D,fill:"none",style:{stroke:"var(--wf-color-primary)"},"stroke-width":2,"stroke-linejoin":"round","stroke-linecap":"round",transform:`translate(${d},${d})`}),...i.map((T,R)=>{let L=W(R)+d;return se("text",{key:`xlabel-${R}`,x:L,y:p-d+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},T.label)}),...M])},k=()=>{let B=Math.max(1,i.length-1),W=jn([-.5,B+.5],[0,h]),z=jn([v,w],[m,0]),U=ar(z),D=Es(i,W,z);return se("svg",{style:{width:"100%"},height:p,viewBox:`0 0 ${u} ${p}`},[...U.map((C,M)=>se("g",{key:`tick-${M}`},[se("line",{x1:d,y1:C.y+d,x2:u-d,y2:C.y+d,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:d-6,y:C.y+d+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},C.label)])),...D.map((C,M)=>se("rect",{key:`bar-${M}`,x:C.x+d,y:C.y+d,width:C.width,height:C.height,fill:C.color,rx:2,onMouseEnter:T=>{n=T.target,t={label:C.label,value:C.value,color:C.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}})),...i.map((C,M)=>{let T=W(M)+d;return se("text",{key:`xlabel-${M}`,x:T,y:p-d+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},C.label)})])},E=()=>{let B=u/2,W=p/2,z=Math.min(h,m)/2-4,U=Is(i,B,W,z);return se("svg",{style:{width:"100%"},height:p,viewBox:`0 0 ${u} ${p}`},[...U.map((D,C)=>se("g",{key:`arc-${C}`},[se("path",{d:D.d,fill:D.color,style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,onMouseEnter:M=>{n=M.target,t={label:D.label,value:D.value,color:D.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}}),...D.value/i.reduce((M,T)=>M+Math.abs(T.value),0)>.05?[se("text",{x:D.centroid.x,y:D.centroid.y+3,"text-anchor":"middle",style:{fill:"var(--wf-color-on-brand)"},"font-size":"11","font-weight":"bold","font-family":"var(--wf-font-sans)","pointer-events":"none"},`${Math.round(D.value/i.reduce((M,T)=>M+Math.abs(T.value),0)*100)}%`)]:[]]))])},P=()=>{let C=Math.max(...i.map(Q=>Math.abs(Q.value)),1),M=i.length,T=Q=>Math.PI*2*Q/M-Math.PI/2,R=(Q,G)=>[150+Math.cos(T(Q))*95*G,140+Math.sin(T(Q))*95*G],L=[.33,.66,1].map(Q=>se("polygon",{key:`ring-${Q}`,points:Array.from({length:M},(G,X)=>R(X,Q).join(",")).join(" "),fill:"none",stroke:"var(--wf-color-border)","stroke-width":1})),H=Array.from({length:M},(Q,G)=>se("line",{key:`spoke-${G}`,x1:150,y1:140,x2:R(G,1)[0],y2:R(G,1)[1],stroke:"var(--wf-color-border)","stroke-width":1})),K=i.map((Q,G)=>R(G,Math.abs(Q.value)/C).join(",")).join(" "),Y=i.map((Q,G)=>{let[X,q]=R(G,1.18);return se("text",{key:`lb-${G}`,x:X,y:q,"text-anchor":"middle","dominant-baseline":"middle",class:"wf-chart-label","font-size":10},Q.label)});return se("svg",{viewBox:"0 0 300 260",class:"wf-chart-svg",role:"img"},[...L,...H,se("polygon",{key:"data",points:K,fill:"var(--wf-color-primary-bg)",stroke:"var(--wf-color-primary)","stroke-width":1.5,opacity:.85}),...Y])},S=()=>{let C=i[0]?.value??0,M=l?.min??0,T=l?.max??100,R=Math.min(Math.max((C-M)/(T-M),0),1),L=(X,q,Z)=>{let ee=Se=>Math.PI*(1-Se),[ue,ie]=[150-Math.cos(ee(q))*X,170-Math.sin(ee(q))*X],[he,fe]=[150-Math.cos(ee(Z))*X,170-Math.sin(ee(Z))*X],Ae=Math.abs(ee(q)-ee(Z))>Math.PI?1:0;return`M ${ue} ${ie} A ${X} ${X} 0 ${Ae} 1 ${he} ${fe}`},H=L(118,0,R),K=L(118,0,1),Y=-Math.PI/2+R*Math.PI,[Q,G]=[150+Math.cos(Y)*100,170+Math.sin(Y)*100];return se("svg",{viewBox:"0 0 300 180",class:"wf-chart-svg",role:"img"},[se("path",{key:"bg",d:K,fill:"none",stroke:"var(--wf-color-border)","stroke-width":12,"stroke-linecap":"round"}),se("path",{key:"val",d:H,fill:"none",stroke:"var(--wf-color-primary)","stroke-width":12,"stroke-linecap":"round"}),se("line",{key:"needle",x1:150,y1:170,x2:Q,y2:G,stroke:"var(--wf-color-text)","stroke-width":3,"stroke-linecap":"round"}),se("text",{key:"val-t",x:150,y:208,"text-anchor":"middle",class:"wf-chart-value","font-size":22,"font-weight":600},`${C}`),se("text",{key:"min",x:24,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${M}`),se("text",{key:"max",x:276,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${T}`)])},I=()=>{let U=Math.max(...i.map(L=>Math.abs(L.value)),1)*1.1,D=Math.max(...i.map(L=>Number(L.label)||0),i.length,1)*1.1,C=L=>34+(Number(i[L]?.label)||L)/D*252,M=L=>186-Math.abs(L)/U*152,T=i.map((L,H)=>se("circle",{key:`dot-${H}`,cx:C(H),cy:M(L.value),r:4.5,fill:L.color??Xt(H),onMouseEnter:()=>{t={label:L.label,value:L.value},e.render()},onMouseLeave:()=>{t=null,e.render()}})),R=[0,.5,1].map(L=>{let H=M(L*U);return se("g",{key:`yt-${L}`},[se("line",{x1:34,y1:H,x2:286,y2:H,stroke:"var(--wf-color-border)","stroke-width":1,"stroke-dasharray":"3 3"}),se("text",{x:28,y:H+3,"text-anchor":"end",class:"wf-chart-label","font-size":10},`${Math.round(L*U)}`)])});return se("svg",{viewBox:"0 0 320 220",class:"wf-chart-svg",role:"img"},[...R,...T])},A;s==="bar"?A=k():s==="pie"?A=E():s==="radar"?A=P():s==="gauge"?A=S():s==="scatter"?A=I():A=x();let $=i.length>1?se("div",{class:"wf-chart-legend"},i.map((B,W)=>se("span",{class:"wf-chart-legend-item",key:`leg-${W}`},[se("span",{class:"wf-chart-legend-dot",style:{background:B.color??Xt(W)}}),se("span",{class:"wf-chart-legend-label"},B.label)]))):null,N=t?se("div",{class:"wf-chart-tooltip"},[se("div",{class:"wf-chart-tooltip-label"},[t.color?se("span",{class:"wf-chart-tooltip-dot",style:{background:t.color}}):null,se("span",{},t.label)]),se("div",{class:"wf-chart-tooltip-value"},String(t.value))]):null;return t&&!r?r=e.ui.openPopup({key:"chart-tooltip",anchor:()=>n,placement:"top",gap:8,content:()=>N,onClose:()=>{r=null,t&&(t=null,n=null,e.render())}}):!t&&r?(r.close(),r=null):r&&r.update(N),se("div",{class:`wf-chart${g?" "+g:""}`,role:"img","aria-expanded":String(!!t),"aria-label":c??e?.i18n?.components?.Chart?.ariaLabel??"\u56FE\u8868"},[c?se("div",{class:"wf-chart-title"},c):null,A,$].filter(Boolean))}};import{createClientBrowser as vc}from"weifuwu/vdom";import{h as ne}from"weifuwu/vdom";import{h as lr}from"weifuwu/vdom";var Rs=["bold","italic","underline","h1","h2","h3","ul","ol","blockquote","alignLeft","alignCenter","alignRight","hr","image","table","link","clear","source"],Ql={bold:"B",italic:"I",underline:"U",h1:"H1",h2:"H2",h3:"H3",ul:"\u25A1",ol:"1.",blockquote:"\u275D",alignLeft:"\u21E4",alignCenter:"\u21D4",alignRight:"\u21E5",hr:"\u2014",image:"\u{1F5BC}",table:"\u229E",link:"\u{1F517}",clear:"\u2715",source:"</>"},$s={bold:"\u52A0\u7C97 (Ctrl+B)",italic:"\u659C\u4F53 (Ctrl+I)",underline:"\u4E0B\u5212\u7EBF (Ctrl+U)",h1:"\u6807\u9898 1",h2:"\u6807\u9898 2",h3:"\u6807\u9898 3",ul:"\u65E0\u5E8F\u5217\u8868",ol:"\u6709\u5E8F\u5217\u8868",blockquote:"\u5F15\u7528",alignLeft:"\u5DE6\u5BF9\u9F50",alignCenter:"\u5C45\u4E2D",alignRight:"\u53F3\u5BF9\u9F50",hr:"\u5206\u5272\u7EBF",image:"\u63D2\u5165\u56FE\u7247",table:"\u63D2\u5165\u8868\u683C",link:"\u63D2\u5165\u94FE\u63A5",clear:"\u6E05\u9664\u683C\u5F0F",source:"\u6E90\u7801"},ec=["bold","italic","underline"],As=["h1","h2","h3"],Ds=["ul","ol"],Ls=["blockquote","alignLeft","alignCenter","alignRight","hr"],tc=["image","table","link","clear"];function nc(o,e){return ec.includes(o)&&As.includes(e)||As.includes(o)&&Ds.includes(e)||Ds.includes(o)&&Ls.includes(e)||Ls.includes(o)&&tc.includes(e)||["link","clear"].includes(o)&&e==="source"}function Ns(o,e,t,n,r,a){let s=o.map(l=>{if(r?.[l])return r[l](l);let g=["wf-editor-tb-btn",(l==="source"?t:!!e[l])&&"wf-editor-tb-btn--active",l==="link"&&"wf-editor-tb-btn--link"].filter(Boolean).join(" ");return lr("button",{key:l,class:g,type:"button",title:$s[l],"aria-label":$s[l],"data-item":l,onClick:u=>n(l,u.currentTarget)},Ql[l])}),i=[];return o.forEach((l,c)=>{c>0&&nc(o[c-1],l)&&i.push(lr("span",{class:"wf-editor-tb-sep",key:`sep-${c}`})),i.push(s[c])}),lr("div",{class:"wf-editor-toolbar",role:"toolbar","aria-label":"\u7F16\u8F91\u683C\u5F0F"},[...i,...a??[]])}import{h as Fn}from"weifuwu/vdom";var Hs=6;function Os(o,e){let t='<table class="wf-editor-table"><tbody>';for(let n=0;n<o;n++){t+="<tr>";for(let r=0;r<e;r++)t+=n===0?'<td style="font-weight:var(--wf-font-weight-semibold,600)">&nbsp;</td>':"<td>&nbsp;</td>";t+="</tr>"}return t+="</tbody></table>",t}function Bs(o,e,t,n,r){let a=Fn("div",{class:"wf-editor-table-grid",onMouseLeave:r},Array.from({length:Hs},(i,l)=>Fn("div",{class:"wf-editor-table-grid-row",key:`r${l}`},Array.from({length:Hs},(c,f)=>{let g=l<=o&&f<=e;return Fn("div",{class:`wf-editor-table-grid-cell${g?" wf-editor-table-grid-cell--active":""}`,key:`${l}-${f}`,onMouseEnter:()=>n(l,f),onClick:()=>t(l+1,f+1)})})))),s=o>=0&&e>=0?`${o+1} \xD7 ${e+1} \u8868\u683C`:"\u9009\u62E9\u8868\u683C\u5927\u5C0F";return Fn("div",{class:"wf-editor-table-picker",onMouseDown:i=>i.stopPropagation()},[a,Fn("div",{class:"wf-editor-table-picker-label"},s)])}_t();import{aiStream as xc}from"weifuwu/vdom";_t();function hn(o){let e=[0];for(let t=0;t<o.length;t++)o[t]===`
11
+ `&&e.push(t+1);return e}function Yt(o,e,t){let n=t??hn(o),r=0,a=n.length-1;for(;r<a;){let s=r+a+1>>1;n[s]<=e?r=s:a=s-1}return n[r]}function Zt(o,e){let t=Yt(o.text,e);for(let n of o.blockProps){if(n.start===t)return n;if(n.start>t)break}return null}function zs(o,e,t){return o.map(n=>n.end<=e?n:n.start>=e?{...n,start:n.start+t,end:n.end+t}:{...n,end:n.end+t}).sort((n,r)=>n.start-r.start||n.end-r.end)}function _s(o,e,t){return o.map(n=>n.at>=e?{...n,at:n.at+t}:n).sort((n,r)=>n.at-r.at)}function dr(o){return{text:o.text,blockProps:o.blockProps.slice(),marks:o.marks.slice(),embeds:o.embeds.slice()}}function pr(o,e,t,n,r){let a=hn(o),s=new Map(e.map(l=>[l.start,l])),i=[];for(let l of hn(t)){let c;l<n?c=l:l<n+r?c=n:c=l-r;let f=Yt(o,c,a),g=s.get(f);g&&i.push({...g,start:l})}return i.sort((l,c)=>l.start-c.start)}function gn(o,e){switch(e.type){case"text-insert":return Us(o,e.at,e.text);case"text-delete":return cr(o,e.at,e.len,e.removedEmbeds,e.removedBlocks);case"mark-apply":return sc(o,e);case"mark-restore":return ic(o,e.mark,e.spans);case"block-set":return Vs(o,e.start,e.kind,e.align??null);case"embed-insert":return ac(o,e.at,e.embed);case"embed-delete":return lc(o,e.at,e.embed);case"ai-apply":{if(o.text.slice(e.start,e.end)!==e.original)throw new Error(`[editor/model] ai-apply original \u4E0E\u6587\u6863\u4E0D\u7B26 (${e.start},${e.end})`);let t=o.embeds.filter(r=>r.at>=e.start&&r.at<e.end);if(t.length!==e.removedEmbeds.length||t.some((r,a)=>r.id!==e.removedEmbeds[a]?.id))throw new Error("[editor/model] ai-apply removedEmbeds \u4E0E\u6587\u6863\u4E0D\u7B26");let n=Us(cr(o,e.start,e.end-e.start,e.removedEmbeds,e.removedBlocks),e.start,e.revised);return oc(n,e.removedBlocks,e.start,e.start+e.revised.length)}}}function oc(o,e,t,n){if(e.length===0)return o;let r=o;for(let a of hn(o.text)){if(a<t||a>=n)continue;let s=e.find(i=>i.start===a);s&&(r=Vs(r,a,s.kind,s.align??null))}return r}function rc(o,e,t){return o.blockProps.filter(n=>n.start>=e&&n.start<=t)}function Us(o,e,t){let n=t.length;if(n===0)return o;if(t.includes(Je))throw new Error("[editor/model] text-insert \u7981\u6B62\u542B\u5D4C\u5165\u5360\u4F4D\u7B26\u2014\u2014\u7528 embed-insert");let r=dr(o);return r.text=o.text.slice(0,e)+t+o.text.slice(e),r.marks=zs(o.marks,e,n),r.embeds=_s(o.embeds,e,n),r.blockProps=pr(o.text,o.blockProps,r.text,e,n),r}function cr(o,e,t,n=[],r=[]){if(t<=0||e<0||e+t>o.text.length)return o;let a=o.embeds.filter(l=>l.at>=e&&l.at<e+t);if(a.length!==n.length||a.some((l,c)=>l.id!==n[c]?.id))throw new Error("[editor/model] text-delete removedEmbeds \u4E0E\u6587\u6863\u4E0D\u7B26");let s=o.blockProps.filter(l=>l.start>=e&&l.start<=e+t);if(s.length!==r.length||s.some((l,c)=>l.start!==r[c]?.start))throw new Error("[editor/model] text-delete removedBlocks \u4E0E\u6587\u6863\u4E0D\u7B26");let i=dr(o);return i.text=o.text.slice(0,e)+o.text.slice(e+t),i.marks=o.marks.flatMap(l=>l.end<=e?[l]:l.start>=e+t?[{...l,start:l.start-t,end:l.end-t}]:l.start<e&&l.end>e+t?[{...l,end:l.end-t}]:l.start<e?[{...l,end:e}]:[{...l,start:e,end:Math.max(e,l.end-t)}]).filter(l=>l.end>l.start).sort((l,c)=>l.start-c.start||l.end-c.end),i.embeds=o.embeds.filter(l=>l.at<e||l.at>=e+t).map(l=>l.at>=e+t?{...l,at:l.at-t}:l).sort((l,c)=>l.at-c.at),i.blockProps=pr(o.text,o.blockProps,i.text,e,-t),i}function sc(o,e){let{start:t,end:n,mark:r,on:a,href:s}=e;if(t>=n)return o;let i=o.marks.filter(g=>g.type===r);if(i.length!==e.prev.length||i.some((g,u)=>g.start!==e.prev[u]?.start||g.end!==e.prev[u]?.end))throw new Error("[editor/model] mark-apply prev \u4E0E\u6587\u6863\u4E0D\u7B26");let l=o.marks.filter(g=>g.type!==r),c=o.marks.filter(g=>g.type===r).flatMap(g=>{if(g.end<=t||g.start>=n)return[g];let u=[];return g.start<t&&u.push({...g,end:t}),g.end>n&&u.push({...g,start:n}),u}),f=a?[...c,{start:t,end:n,type:r,...s?{href:s}:{}}]:c;return{...o,marks:[...l,...f].sort((g,u)=>g.start-u.start||g.end-u.end)}}function ic(o,e,t){let n=o.marks.filter(r=>r.type!==e);return{...o,marks:[...n,...t].sort((r,a)=>r.start-a.start||r.end-a.end)}}function Vs(o,e,t,n){if(Yt(o.text,e)!==e)return o;let a=o.blockProps.filter(l=>l.start!==e),i=t==="p"&&!n?a:[...a,{start:e,kind:t,...n?{align:n}:{}}];return{...o,blockProps:i.sort((l,c)=>l.start-c.start)}}function ac(o,e,t){let n=dr(o);return n.text=o.text.slice(0,e)+Je+o.text.slice(e),n.marks=zs(o.marks,e,1),n.embeds=[..._s(o.embeds,e,1),{...t,at:e}].sort((r,a)=>r.at-a.at),n.blockProps=pr(o.text,o.blockProps,n.text,e,1),n}function lc(o,e,t){if(o.text[e]!==Je)return o;let n=cr(o,e,1,[t],rc(o,e,e+1));return n.embeds=n.embeds.filter(r=>r.id!==t.id),n}function Ks(o=20){return{undoStack:[],redoStack:[]}}function fr(o,e,t=20){e.ts===void 0&&(e.ts=Date.now()),o.undoStack.push(e),o.redoStack=[],o.undoStack.length>t&&o.undoStack.shift()}function ur(o){let e=o.undoStack.pop();return e&&o.redoStack.push(e),e??null}function js(o){let e=o.redoStack.pop();return e&&o.undoStack.push(e),e??null}function Fs(o){return o.undoStack.length>0}function mr(o){return o.redoStack.length>0}_t();var cc=new Set(["P","DIV","H1","H2","H3","BLOCKQUOTE","LI","SECTION","ARTICLE","MAIN","HEADER","FOOTER","ASIDE","PRE","FIGURE","FORM"]),Gs={B:{type:"b"},STRONG:{type:"b"},I:{type:"i"},EM:{type:"i"},U:{type:"u"},A:{type:"link",href:!0}},Ws={IMG:"img",TABLE:"table",HR:"hr",PRE:"pre"},dc=new Set(["SCRIPT","IFRAME","OBJECT","EMBED","LINK","STYLE","META"]);function gr(o,e=!1){let t=typeof o=="string"?o:"",n=t.replace(/[\s\x00-\x1f\x7f]/g,"");if(n==="")return"";let r=/^([a-zA-Z][a-zA-Z0-9+.-]*):/.exec(n);if(!r)return t;let a=r[1].toLowerCase();return a==="http"||a==="https"||a==="mailto"||e&&/^data:image\/(png|jpeg|jpg|gif|webp|bmp)[;,]/.test(n)?n:null}function Ys(o){for(let e of Array.from(o.attributes)){let t=e.name.toLowerCase();if(t.startsWith("on")){o.removeAttribute(e.name);continue}if(t==="href"||t==="src"){let n=gr(e.value,t==="src");n===null?o.removeAttribute(e.name):n!==e.value&&o.setAttribute(e.name,n)}}for(let e of Array.from(o.children)){if(dc.has(e.tagName)){e.remove();continue}Ys(e)}}var qs={"wf-text-center":"center","wf-text-right":"right","wf-text-left":"left"};function pc(o){let e=o.style?.textAlign;if(e)return e;for(let t of o.classList??[])if(qs[t])return qs[t]}var hr=class{text="";marks=[];embeds=[];blockProps=[];embedSeq=0;append(e){this.text+=e}blockBoundary(){this.text.length>0&&this.text[this.text.length-1]!==`
12
12
  `&&(this.text+=`
13
- `)}};function Gn(o,e,t){if(o.nodeType===3){e.append(o.nodeValue??"");return}if(o.nodeType!==1)return;let n=o,r=n.tagName;if(Ws[r]){Ys(n);let a=e.text.length;e.append(Ze),e.embeds.push({id:`p${e.embedSeq++}`,at:a,type:Ws[r],html:n.outerHTML});return}if(r==="UL"||r==="OL"){for(let a of Array.from(n.childNodes))Gn(a,e,r==="UL"?"ul":"ol");return}if(sc.has(r)){e.blockBoundary();let a=e.text.length,s="p";r==="H1"?s="h1":r==="H2"?s="h2":r==="H3"?s="h3":r==="BLOCKQUOTE"?s="quote":r==="LI"&&t&&(s=t);let i=ac(n);(s!=="p"||i)&&e.blockProps.push({start:a,kind:s,...i?{align:i}:{}});for(let l of Array.from(n.childNodes))Gn(l,e,t);return}if(Gs[r]){let{type:a,href:s}=Gs[r],i=e.text.length;for(let c of Array.from(n.childNodes))Gn(c,e,t);let l=e.text.length;l>i&&e.marks.push({start:i,end:l,type:a,...s?{href:gr(n.getAttribute("href")??"")??""}:{}});return}for(let a of Array.from(n.childNodes))Gn(a,e,t)}function ot(o,e){let t=e??(typeof document<"u"?document:null);if(!t)return{text:"",blockProps:[],marks:[],embeds:[]};let n=t.createElement("div");n.innerHTML=o;let r=new hr;for(let a of Array.from(n.childNodes))Gn(a,r,null);return r.marks.sort((a,s)=>a.start-s.start||a.end-s.end),r.blockProps.sort((a,s)=>a.start-s.start),r.embeds.sort((a,s)=>a.at-s.at),r.text.endsWith(`
14
- `)&&(r.text=r.text.slice(0,-1)),{text:r.text,blockProps:r.blockProps,marks:r.marks,embeds:r.embeds}}var lc={b:"b",i:"i",u:"u",link:"a"},Xs={p:"p",h1:"h1",h2:"h2",h3:"h3",quote:"blockquote",ul:"li",ol:"li"};function cc(o,e,t){if(e>=t)return"";let n=new Set([e,t]),r=[];for(let i of o.marks)i.end<=e||i.start>=t||(n.add(Math.max(e,i.start)),n.add(Math.min(t,i.end)),r.push(i));let a=[...n].sort((i,l)=>i-l),s="";for(let i=0;i<a.length-1;i++){let l=a[i],c=a[i+1];if(c<=l)continue;let f=o.text.slice(l,c),g=r.filter(h=>h.start<=l&&h.end>=c),d=["b","i","u","link"].map(h=>g.find(m=>m.type===h)).filter(h=>!!h),p="";for(let h=0;h<f.length;h++){let m=f[h];if(m===Ze){let b=o.embeds.find(v=>v.at===l+h);p+=b?b.html:""}else p+=m}for(let h of d.slice().reverse()){let m=lc[h.type];p=h.type==="link"?`<${m} href="${dc(gr(h.href??"")??"")}">${p}</${m}>`:`<${m}>${p}</${m}>`}s+=p}return s}function dc(o){return o.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;")}function ze(o){if(o.text==="")return"";let e=mn(o.text),t="",n=null;for(let r=0;r<e.length;r++){let a=e[r],s=r+1<e.length?e[r+1]-1:o.text.length,i=Yt(o,a),l=i?.kind??"p",c=i?.align,f=cc(o,a,s),g=c?` style="text-align:${c}"`:"";l==="ul"||l==="ol"?(n!==l&&(n&&(t+=`</${n}>`),n=l,t+=`<${l}>`),t+=`<li${g}>${f}</li>`):(n&&(t+=`</${n}>`,n=null),t+=`<${Xs[l]}${g}>${f}</${Xs[l]}>`)}return n&&(t+=`</${n}>`),t}function pc(o,e){let t=o.length,n=e.length,r=new Uint32Array(n+1),a=new Uint32Array(n+1);for(let g=1;g<=t;g++){let u=g%2===1?r:a,d=g%2===1?a:r;for(let p=1;p<=n;p++)u[p]=o[g-1]===e[p-1]?d[p-1]+1:Math.max(d[p],u[p-1])}let s=[],i=t,l=n,c=g=>g%2===1?r:a;for(;i>0&&l>0;)o[i-1]===e[l-1]?(s.push({type:"equal",text:o[i-1]}),i--,l--):c(i)[l]===c(i-1)[l]?(s.push({type:"delete",text:o[i-1]}),i--):(s.push({type:"insert",text:e[l-1]}),l--);for(;i>0;)s.push({type:"delete",text:o[i-1]}),i--;for(;l>0;)s.push({type:"insert",text:e[l-1]}),l--;let f=[];for(let g=s.length-1;g>=0;g--){let u=s[g],d=f[f.length-1];d&&d.type===u.type?d.text+=u.text:f.push({...u})}return f}function Js(o,e){if(o===e)return[{type:"equal",text:o}];if(o.length+e.length>4e3){let i=[];return o&&i.push({type:"delete",text:o}),e&&i.push({type:"insert",text:e}),i}let t=0;for(;t<o.length&&t<e.length&&o[t]===e[t];)t++;let n=0;for(;n<o.length-t&&n<e.length-t&&o[o.length-1-n]===e[e.length-1-n];)n++;let r=pc(o.slice(t,o.length-n),e.slice(t,e.length-n)),a=[];t>0&&a.push({type:"equal",text:o.slice(0,t)}),a.push(...r),n>0&&a.push({type:"equal",text:o.slice(o.length-n)});let s=[];for(let i of a){let l=s[s.length-1];l&&l.type===i.type?l.text+=i.text:s.push({...i})}return s}function ni(o){let e=o.tagName;return e==="IMG"||e==="TABLE"||e==="HR"||e==="PRE"}var oi=new Set(["P","DIV","H1","H2","H3","BLOCKQUOTE","LI"]);function*ri(o,e){let t=o.ownerDocument.createTreeWalker(o,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT),n=t.nextNode();for(;n;){if(n.nodeType===3){let r=String(n.nodeValue??"");r.length>0&&(e.v=!0,yield{kind:"text",node:n,text:r})}else if(n.nodeType===1){let r=n;ni(r)?(e.v=!0,yield{kind:"embed",node:r}):oi.has(r.tagName)&&e.v&&(yield{kind:"boundary",node:r})}n=t.nextNode()}}function si(o,e){if(o.nodeType===3){let r=String(o.nodeValue??"").length;return r>0&&(e.v=!0),r}if(o.nodeType!==1)return 0;let t=o;if(ni(t))return e.v=!0,1;let n=0;oi.has(t.tagName)&&(e.v&&(n+=1),e.v=!0);for(let r of t.childNodes)n+=si(r,e);return n}function Zs(o,e){let t={v:!1},n=0,r=0;for(let a of o.childNodes){if(r>=e)break;n+=si(a,t),r++}return n}function ii(o,e){return o.kind==="text"?o.text.length:(o.kind==="embed"||(e.current+=1),1)}function Qs(o,e,t){if(e===o)return Zs(o,t);let n={v:!1},r=0;for(let a of ri(o,n)){if(a.node===e)return a.kind==="text"||a.kind==="embed"?r+t:r+Zs(a.node,t);r+=ii(a,{current:0})}return r}function fc(o,e){let t=Qs(o,e.startContainer,e.startOffset),n=Qs(o,e.endContainer,e.endOffset);return{start:t,end:n}}function je(o){if(!o)return null;let e=o.ownerDocument.getSelection();if(!e||e.rangeCount===0)return null;let t=e.getRangeAt(0);return o.contains(t.commonAncestorContainer)?fc(o,t):null}function ei(o,e){let t={v:!1},n=0,r=null;for(let a of ri(o,t)){if(a.kind==="boundary"){if(e===n)return{item:a,off:0};n+=1,r={item:a,off:1};continue}let s=ii(a,{current:0});if(r={item:a,off:s},e<=n+s)return{item:a,off:e-n};n+=s}return r}function uc(o,e,t){let r=o.ownerDocument.createRange(),a=ei(o,Math.max(0,e)),s=ei(o,Math.max(0,t));return!a||!s?null:(ti(r,a.item,a.off,!0),ti(r,s.item,s.off,!1),r)}function ti(o,e,t,n){let r=n?o.setStart.bind(o):o.setEnd.bind(o);e.kind==="text"?r(e.node,Math.min(t,e.text.length)):(e.kind,t<=0?n?o.setStartBefore(e.node):o.setEndBefore(e.node):n?o.setStartAfter(e.node):o.setEndAfter(e.node))}function br(o,e,t){if(!o)return;let n=uc(o,e,t);if(!n)return;let r=o.ownerDocument.getSelection();r&&(o.focus(),r.removeAllRanges(),r.addRange(n))}var yr=[],Wn=0,gn=0,mc=new Set;function le(o,e,t){let n={entity:"edit",action:o,ts:Date.now()};t!=null&&(n.target=t),e!=null&&(n.payload=e),gn<2e3?(yr[(Wn+gn)%2e3]=n,gn++):(yr[Wn]=n,Wn=(Wn+1)%2e3);for(let r of[...mc])try{r(n)}catch{}}function hc(o,e){let t=o??gn,n=[];for(let r=0;r<Math.min(t,gn);r++){let a=yr[(Wn+gn-1-r)%2e3];if(!e){n.push(a);continue}let s=Array.isArray(e.action)?e.action:e.action?[e.action]:null;s&&!s.includes(a.action)||n.push(a)}return n}if(typeof globalThis<"u"){let o=globalThis;o.__edit_tail||(o.__edit_tail=(e=50,t)=>hc(e,t?{action:t}:void 0))}var qn=(o,e)=>{let t=e.browser??gc(),n=null,r=!1,a="",s="rich",i=!1,l="",c=!1,f=!1,g=-1,u=-1,d="",p=un,h=Ks(),m=!1,b=null,v=_=>{_&&(b=_,w())},w=()=>{b&&(p=ot(b.innerHTML))},y=null,x=null,k=()=>{if(x&&(clearTimeout(x),x=null),!y)return;fr(h,{label:"\u8F93\u5165",events:y.events,before:y.startDoc,ts:y.ts}),le("commit",{label:"\u8F93\u5165",count:y.events.length});let _=ze(p);O.current&&O.current(_),G(_),y=null},E=(_,z)=>{y||(y={startDoc:p,events:[],ts:Date.now()}),y.events.push(..._),p=z,G(ze(z)),x&&clearTimeout(x),x=setTimeout(k,1e3)},T=(_,z)=>{let Z=_.text;if(Z===z)return[];let te=0;for(;te<Z.length&&te<z.length&&Z[te]===z[te];)te++;let me=0;for(;me<Z.length-te&&me<z.length-te&&Z[Z.length-1-me]===z[z.length-1-me];)me++;let de=[],nt=Z.length-te-me,Nt=z.slice(te,z.length-me);if(nt>0){let He=te;de.push({type:"text-delete",at:He,len:nt,removed:Z.slice(He,He+nt),removedEmbeds:_.embeds.filter(De=>De.at>=He&&De.at<=He+nt),removedBlocks:_.blockProps.filter(De=>De.start>=He&&De.start<=He+nt)})}Nt.length>0&&de.push({type:"text-insert",at:te,text:Nt});try{let He=_;for(let De of de)He=hn(He,De);if(He.text===z)return de}catch{}return null},P=(_,z)=>{b&&(b.innerHTML=ze(_),z&&br(b,z.start,z.end),m=!1)},I=_=>p.marks.filter(z=>z.type===_),A=(_,z,Z)=>{k();let te=p,me=_.reduce((nt,Nt)=>hn(nt,Nt),te);p=me,fr(h,{label:z,events:_,before:te,caret:Z??void 0}),P(me,Z);let de=ze(me);O.current&&O.current(de),G(de),le("commit",{label:z,count:_.length})},$=()=>{k();let _=ur(h);if(!_)return;p=_.before,P(p,_.caret??null);let z=ze(p);O.current&&O.current(z),G(z),le("undo",{label:_.label})},N=()=>{k();let _=js(h);if(!_)return;let z=_.before;for(let te of _.events)z=hn(z,te);p=z,P(p,_.caret??null);let Z=ze(p);O.current&&O.current(Z),G(Z),le("redo",{label:_.label})},B=_=>{let z=je(b);if(!z||z.start===z.end)return;let Z=!p.marks.some(te=>te.type===_&&te.start<=z.start&&te.end>=z.end);A([{type:"mark-apply",start:z.start,end:z.end,mark:_,on:Z,prev:I(_)}],`mark-${_}`,z)},q=_=>{let z=je(b),Z=z?.start??0,te=Xt(p.text,Z),me=Yt(p,te),de=me?.kind??"p";A([{type:"block-set",start:te,kind:de===_?"p":_,align:null,prev:me}],`block-${_}`,z)},V=_=>{let z=je(b),Z=z?.start??0,te=Xt(p.text,Z),me=Yt(p,te),de=me?.align??null;A([{type:"block-set",start:te,kind:me?.kind??"p",align:de===_?null:_,prev:me}],`align-${_}`,z)},U=(_,z=!1)=>{let Z=je(b);!Z||Z.start===Z.end||A([{type:"mark-apply",start:Z.start,end:Z.end,mark:"link",on:!z,href:_,prev:I("link")}],z?"unlink":"link",Z)},L=(_,z)=>{let Z=je(b),te=Z?.start??p.text.length,me=`e${Date.now()}${Math.floor(Math.random()*1e4)}`,de=Z?{start:te+1,end:te+1}:null;A([{type:"embed-insert",at:te,embed:{id:me,at:te,type:z,html:_}}],`embed-${z}`,de)},C=()=>{let _=je(b);if(!_)return;let z=[];for(let me of["b","i","u","link"])z.push({type:"mark-apply",start:_.start,end:_.end,mark:me,on:!1,prev:I(me)});let Z=Xt(p.text,_.start),te=Yt(p,Z);te&&z.push({type:"block-set",start:Z,kind:"p",align:null,prev:te}),A(z,"clear",_)},M=_=>{let z={};for(let te of p.marks)te.start<=_&&_<te.end&&(te.type==="b"?z.bold=!0:te.type==="i"?z.italic=!0:te.type==="u"?z.underline=!0:te.type==="link"&&(z.link=!0));let Z=Yt(p,_);return Z?.kind==="h1"?z.h1=!0:Z?.kind==="h2"?z.h2=!0:Z?.kind==="h3"?z.h3=!0:Z?.kind==="quote"&&(z.blockquote=!0),Z?.align==="left"?z.alignLeft=!0:Z?.align==="center"?z.alignCenter=!0:Z?.align==="right"&&(z.alignRight=!0),z},S=null,R=()=>{S=je(b)},D=()=>{!b||!S||br(b,S.start,S.end)},O={},K=!0,Y=null,Q=null;e.ui.hold(()=>{x&&(clearTimeout(x),x=null),Y&&(clearTimeout(Y),Y=null)});let G=_=>{Q&&(Y&&clearTimeout(Y),Y=setTimeout(()=>{Y=null;try{t.storageSet(`wf-editor-draft:${Q}`,_)}catch{}},500))},X=()=>{if(!Q)return null;try{return t.storageGet(`wf-editor-draft:${Q}`)??null}catch{return null}},W=[{id:"polish",label:"\u6DA6\u8272",prompt:({selection:_})=>`\u8BF7\u6DA6\u8272\u4EE5\u4E0B\u6587\u672C\uFF0C\u4FDD\u6301\u539F\u610F\uFF0C\u8F93\u51FA\u6DA6\u8272\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
13
+ `)}};function Gn(o,e,t){if(o.nodeType===3){e.append(o.nodeValue??"");return}if(o.nodeType!==1)return;let n=o,r=n.tagName;if(Ws[r]){Ys(n);let a=e.text.length;e.append(Je),e.embeds.push({id:`p${e.embedSeq++}`,at:a,type:Ws[r],html:n.outerHTML});return}if(r==="UL"||r==="OL"){for(let a of Array.from(n.childNodes))Gn(a,e,r==="UL"?"ul":"ol");return}if(cc.has(r)){e.blockBoundary();let a=e.text.length,s="p";r==="H1"?s="h1":r==="H2"?s="h2":r==="H3"?s="h3":r==="BLOCKQUOTE"?s="quote":r==="LI"&&t&&(s=t);let i=pc(n);(s!=="p"||i)&&e.blockProps.push({start:a,kind:s,...i?{align:i}:{}});for(let l of Array.from(n.childNodes))Gn(l,e,t);return}if(Gs[r]){let{type:a,href:s}=Gs[r],i=e.text.length;for(let c of Array.from(n.childNodes))Gn(c,e,t);let l=e.text.length;l>i&&e.marks.push({start:i,end:l,type:a,...s?{href:gr(n.getAttribute("href")??"")??""}:{}});return}for(let a of Array.from(n.childNodes))Gn(a,e,t)}function ot(o,e){let t=e??(typeof document<"u"?document:null);if(!t)return{text:"",blockProps:[],marks:[],embeds:[]};let n=t.createElement("div");n.innerHTML=o;let r=new hr;for(let a of Array.from(n.childNodes))Gn(a,r,null);return r.marks.sort((a,s)=>a.start-s.start||a.end-s.end),r.blockProps.sort((a,s)=>a.start-s.start),r.embeds.sort((a,s)=>a.at-s.at),r.text.endsWith(`
14
+ `)&&(r.text=r.text.slice(0,-1)),{text:r.text,blockProps:r.blockProps,marks:r.marks,embeds:r.embeds}}var fc={b:"b",i:"i",u:"u",link:"a"},Xs={p:"p",h1:"h1",h2:"h2",h3:"h3",quote:"blockquote",ul:"li",ol:"li"};function uc(o,e,t){if(e>=t)return"";let n=new Set([e,t]),r=[];for(let i of o.marks)i.end<=e||i.start>=t||(n.add(Math.max(e,i.start)),n.add(Math.min(t,i.end)),r.push(i));let a=[...n].sort((i,l)=>i-l),s="";for(let i=0;i<a.length-1;i++){let l=a[i],c=a[i+1];if(c<=l)continue;let f=o.text.slice(l,c),g=r.filter(h=>h.start<=l&&h.end>=c),p=["b","i","u","link"].map(h=>g.find(m=>m.type===h)).filter(h=>!!h),d="";for(let h=0;h<f.length;h++){let m=f[h];if(m===Je){let b=o.embeds.find(v=>v.at===l+h);d+=b?b.html:""}else d+=m}for(let h of p.slice().reverse()){let m=fc[h.type];d=h.type==="link"?`<${m} href="${mc(gr(h.href??"")??"")}">${d}</${m}>`:`<${m}>${d}</${m}>`}s+=d}return s}function mc(o){return o.replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;")}function ze(o){if(o.text==="")return"";let e=hn(o.text),t="",n=null;for(let r=0;r<e.length;r++){let a=e[r],s=r+1<e.length?e[r+1]-1:o.text.length,i=Zt(o,a),l=i?.kind??"p",c=i?.align,f=uc(o,a,s),g=c?` style="text-align:${c}"`:"";l==="ul"||l==="ol"?(n!==l&&(n&&(t+=`</${n}>`),n=l,t+=`<${l}>`),t+=`<li${g}>${f}</li>`):(n&&(t+=`</${n}>`,n=null),t+=`<${Xs[l]}${g}>${f}</${Xs[l]}>`)}return n&&(t+=`</${n}>`),t}function hc(o,e){let t=o.length,n=e.length,r=new Uint32Array(n+1),a=new Uint32Array(n+1);for(let g=1;g<=t;g++){let u=g%2===1?r:a,p=g%2===1?a:r;for(let d=1;d<=n;d++)u[d]=o[g-1]===e[d-1]?p[d-1]+1:Math.max(p[d],u[d-1])}let s=[],i=t,l=n,c=g=>g%2===1?r:a;for(;i>0&&l>0;)o[i-1]===e[l-1]?(s.push({type:"equal",text:o[i-1]}),i--,l--):c(i)[l]===c(i-1)[l]?(s.push({type:"delete",text:o[i-1]}),i--):(s.push({type:"insert",text:e[l-1]}),l--);for(;i>0;)s.push({type:"delete",text:o[i-1]}),i--;for(;l>0;)s.push({type:"insert",text:e[l-1]}),l--;let f=[];for(let g=s.length-1;g>=0;g--){let u=s[g],p=f[f.length-1];p&&p.type===u.type?p.text+=u.text:f.push({...u})}return f}function Zs(o,e){if(o===e)return[{type:"equal",text:o}];if(o.length+e.length>4e3){let i=[];return o&&i.push({type:"delete",text:o}),e&&i.push({type:"insert",text:e}),i}let t=0;for(;t<o.length&&t<e.length&&o[t]===e[t];)t++;let n=0;for(;n<o.length-t&&n<e.length-t&&o[o.length-1-n]===e[e.length-1-n];)n++;let r=hc(o.slice(t,o.length-n),e.slice(t,e.length-n)),a=[];t>0&&a.push({type:"equal",text:o.slice(0,t)}),a.push(...r),n>0&&a.push({type:"equal",text:o.slice(o.length-n)});let s=[];for(let i of a){let l=s[s.length-1];l&&l.type===i.type?l.text+=i.text:s.push({...i})}return s}function ni(o){let e=o.tagName;return e==="IMG"||e==="TABLE"||e==="HR"||e==="PRE"}var oi=new Set(["P","DIV","H1","H2","H3","BLOCKQUOTE","LI"]);function*ri(o,e){let t=o.ownerDocument.createTreeWalker(o,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT),n=t.nextNode();for(;n;){if(n.nodeType===3){let r=String(n.nodeValue??"");r.length>0&&(e.v=!0,yield{kind:"text",node:n,text:r})}else if(n.nodeType===1){let r=n;ni(r)?(e.v=!0,yield{kind:"embed",node:r}):oi.has(r.tagName)&&e.v&&(yield{kind:"boundary",node:r})}n=t.nextNode()}}function si(o,e){if(o.nodeType===3){let r=String(o.nodeValue??"").length;return r>0&&(e.v=!0),r}if(o.nodeType!==1)return 0;let t=o;if(ni(t))return e.v=!0,1;let n=0;oi.has(t.tagName)&&(e.v&&(n+=1),e.v=!0);for(let r of t.childNodes)n+=si(r,e);return n}function Js(o,e){let t={v:!1},n=0,r=0;for(let a of o.childNodes){if(r>=e)break;n+=si(a,t),r++}return n}function ii(o,e){return o.kind==="text"?o.text.length:(o.kind==="embed"||(e.current+=1),1)}function Qs(o,e,t){if(e===o)return Js(o,t);let n={v:!1},r=0;for(let a of ri(o,n)){if(a.node===e)return a.kind==="text"||a.kind==="embed"?r+t:r+Js(a.node,t);r+=ii(a,{current:0})}return r}function gc(o,e){let t=Qs(o,e.startContainer,e.startOffset),n=Qs(o,e.endContainer,e.endOffset);return{start:t,end:n}}function je(o){if(!o)return null;let e=o.ownerDocument.getSelection();if(!e||e.rangeCount===0)return null;let t=e.getRangeAt(0);return o.contains(t.commonAncestorContainer)?gc(o,t):null}function ei(o,e){let t={v:!1},n=0,r=null;for(let a of ri(o,t)){if(a.kind==="boundary"){if(e===n)return{item:a,off:0};n+=1,r={item:a,off:1};continue}let s=ii(a,{current:0});if(r={item:a,off:s},e<=n+s)return{item:a,off:e-n};n+=s}return r}function bc(o,e,t){let r=o.ownerDocument.createRange(),a=ei(o,Math.max(0,e)),s=ei(o,Math.max(0,t));return!a||!s?null:(ti(r,a.item,a.off,!0),ti(r,s.item,s.off,!1),r)}function ti(o,e,t,n){let r=n?o.setStart.bind(o):o.setEnd.bind(o);e.kind==="text"?r(e.node,Math.min(t,e.text.length)):(e.kind,t<=0?n?o.setStartBefore(e.node):o.setEndBefore(e.node):n?o.setStartAfter(e.node):o.setEndAfter(e.node))}function br(o,e,t){if(!o)return;let n=bc(o,e,t);if(!n)return;let r=o.ownerDocument.getSelection();r&&(o.focus(),r.removeAllRanges(),r.addRange(n))}var yr=[],Wn=0,bn=0,yc=new Set;function le(o,e,t){let n={entity:"edit",action:o,ts:Date.now()};t!=null&&(n.target=t),e!=null&&(n.payload=e),bn<2e3?(yr[(Wn+bn)%2e3]=n,bn++):(yr[Wn]=n,Wn=(Wn+1)%2e3);for(let r of[...yc])try{r(n)}catch{}}function wc(o,e){let t=o??bn,n=[];for(let r=0;r<Math.min(t,bn);r++){let a=yr[(Wn+bn-1-r)%2e3];if(!e){n.push(a);continue}let s=Array.isArray(e.action)?e.action:e.action?[e.action]:null;s&&!s.includes(a.action)||n.push(a)}return n}if(typeof globalThis<"u"){let o=globalThis;o.__edit_tail||(o.__edit_tail=(e=50,t)=>wc(e,t?{action:t}:void 0))}var qn=(o,e)=>{let t=e.browser??vc(),n=null,r=!1,a="",s="rich",i=!1,l="",c=!1,f=!1,g=-1,u=-1,p="",d=mn,h=Ks(),m=!1,b=null,v=V=>{V&&(b=V,w())},w=()=>{b&&(d=ot(b.innerHTML))},y=null,x=null,k=()=>{if(x&&(clearTimeout(x),x=null),!y)return;fr(h,{label:"\u8F93\u5165",events:y.events,before:y.startDoc,ts:y.ts}),le("commit",{label:"\u8F93\u5165",count:y.events.length});let V=ze(d);H.current&&H.current(V),G(V),y=null},E=(V,_)=>{y||(y={startDoc:d,events:[],ts:Date.now()}),y.events.push(...V),d=_,G(ze(_)),x&&clearTimeout(x),x=setTimeout(k,1e3)},P=(V,_)=>{let J=V.text;if(J===_)return[];let te=0;for(;te<J.length&&te<_.length&&J[te]===_[te];)te++;let me=0;for(;me<J.length-te&&me<_.length-te&&J[J.length-1-me]===_[_.length-1-me];)me++;let de=[],nt=J.length-te-me,Ht=_.slice(te,_.length-me);if(nt>0){let Oe=te;de.push({type:"text-delete",at:Oe,len:nt,removed:J.slice(Oe,Oe+nt),removedEmbeds:V.embeds.filter(De=>De.at>=Oe&&De.at<=Oe+nt),removedBlocks:V.blockProps.filter(De=>De.start>=Oe&&De.start<=Oe+nt)})}Ht.length>0&&de.push({type:"text-insert",at:te,text:Ht});try{let Oe=V;for(let De of de)Oe=gn(Oe,De);if(Oe.text===_)return de}catch{}return null},S=(V,_)=>{b&&(b.innerHTML=ze(V),_&&br(b,_.start,_.end),m=!1)},I=V=>d.marks.filter(_=>_.type===V),A=(V,_,J)=>{k();let te=d,me=V.reduce((nt,Ht)=>gn(nt,Ht),te);d=me,fr(h,{label:_,events:V,before:te,caret:J??void 0}),S(me,J);let de=ze(me);H.current&&H.current(de),G(de),le("commit",{label:_,count:V.length})},$=()=>{k();let V=ur(h);if(!V)return;d=V.before,S(d,V.caret??null);let _=ze(d);H.current&&H.current(_),G(_),le("undo",{label:V.label})},N=()=>{k();let V=js(h);if(!V)return;let _=V.before;for(let te of V.events)_=gn(_,te);d=_,S(d,V.caret??null);let J=ze(d);H.current&&H.current(J),G(J),le("redo",{label:V.label})},B=V=>{let _=je(b);if(!_||_.start===_.end)return;let J=!d.marks.some(te=>te.type===V&&te.start<=_.start&&te.end>=_.end);A([{type:"mark-apply",start:_.start,end:_.end,mark:V,on:J,prev:I(V)}],`mark-${V}`,_)},W=V=>{let _=je(b),J=_?.start??0,te=Yt(d.text,J),me=Zt(d,te),de=me?.kind??"p";A([{type:"block-set",start:te,kind:de===V?"p":V,align:null,prev:me}],`block-${V}`,_)},z=V=>{let _=je(b),J=_?.start??0,te=Yt(d.text,J),me=Zt(d,te),de=me?.align??null;A([{type:"block-set",start:te,kind:me?.kind??"p",align:de===V?null:V,prev:me}],`align-${V}`,_)},U=(V,_=!1)=>{let J=je(b);!J||J.start===J.end||A([{type:"mark-apply",start:J.start,end:J.end,mark:"link",on:!_,href:V,prev:I("link")}],_?"unlink":"link",J)},D=(V,_)=>{let J=je(b),te=J?.start??d.text.length,me=`e${Date.now()}${Math.floor(Math.random()*1e4)}`,de=J?{start:te+1,end:te+1}:null;A([{type:"embed-insert",at:te,embed:{id:me,at:te,type:_,html:V}}],`embed-${_}`,de)},C=()=>{let V=je(b);if(!V)return;let _=[];for(let me of["b","i","u","link"])_.push({type:"mark-apply",start:V.start,end:V.end,mark:me,on:!1,prev:I(me)});let J=Yt(d.text,V.start),te=Zt(d,J);te&&_.push({type:"block-set",start:J,kind:"p",align:null,prev:te}),A(_,"clear",V)},M=V=>{let _={};for(let te of d.marks)te.start<=V&&V<te.end&&(te.type==="b"?_.bold=!0:te.type==="i"?_.italic=!0:te.type==="u"?_.underline=!0:te.type==="link"&&(_.link=!0));let J=Zt(d,V);return J?.kind==="h1"?_.h1=!0:J?.kind==="h2"?_.h2=!0:J?.kind==="h3"?_.h3=!0:J?.kind==="quote"&&(_.blockquote=!0),J?.align==="left"?_.alignLeft=!0:J?.align==="center"?_.alignCenter=!0:J?.align==="right"&&(_.alignRight=!0),_},T=null,R=()=>{T=je(b)},L=()=>{!b||!T||br(b,T.start,T.end)},H={},K=!0,Y=null,Q=null;e.ui.hold(()=>{x&&(clearTimeout(x),x=null),Y&&(clearTimeout(Y),Y=null)});let G=V=>{Q&&(Y&&clearTimeout(Y),Y=setTimeout(()=>{Y=null;try{t.storageSet(`wf-editor-draft:${Q}`,V)}catch{}},500))},X=()=>{if(!Q)return null;try{return t.storageGet(`wf-editor-draft:${Q}`)??null}catch{return null}},q=[{id:"polish",label:"\u6DA6\u8272",prompt:({selection:V})=>`\u8BF7\u6DA6\u8272\u4EE5\u4E0B\u6587\u672C\uFF0C\u4FDD\u6301\u539F\u610F\uFF0C\u8F93\u51FA\u6DA6\u8272\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
15
15
 
16
- ${_}`},{id:"translate",label:"\u7FFB\u8BD1",prompt:({selection:_})=>`\u8BF7\u5C06\u4EE5\u4E0B\u6587\u672C\u7FFB\u8BD1\u6210\u4E2D\u6587\uFF0C\u76F4\u63A5\u8F93\u51FA\u8BD1\u6587\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
16
+ ${V}`},{id:"translate",label:"\u7FFB\u8BD1",prompt:({selection:V})=>`\u8BF7\u5C06\u4EE5\u4E0B\u6587\u672C\u7FFB\u8BD1\u6210\u4E2D\u6587\uFF0C\u76F4\u63A5\u8F93\u51FA\u8BD1\u6587\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
17
17
 
18
- ${_}`},{id:"shorten",label:"\u7F29\u5199",prompt:({selection:_})=>`\u8BF7\u5C06\u4EE5\u4E0B\u6587\u672C\u7F29\u5199\u4E3A\u66F4\u7CBE\u70BC\u7684\u7248\u672C\uFF0C\u4FDD\u7559\u6838\u5FC3\u4FE1\u606F\uFF0C\u76F4\u63A5\u8F93\u51FA\u7ED3\u679C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
18
+ ${V}`},{id:"shorten",label:"\u7F29\u5199",prompt:({selection:V})=>`\u8BF7\u5C06\u4EE5\u4E0B\u6587\u672C\u7F29\u5199\u4E3A\u66F4\u7CBE\u70BC\u7684\u7248\u672C\uFF0C\u4FDD\u7559\u6838\u5FC3\u4FE1\u606F\uFF0C\u76F4\u63A5\u8F93\u51FA\u7ED3\u679C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
19
19
 
20
- ${_}`},{id:"expand",label:"\u6269\u5199",prompt:({selection:_})=>`\u8BF7\u5728\u4FDD\u6301\u539F\u610F\u7684\u57FA\u7840\u4E0A\u6269\u5199\u4EE5\u4E0B\u6587\u672C\uFF0C\u4F7F\u5185\u5BB9\u66F4\u5145\u5B9E\uFF0C\u76F4\u63A5\u8F93\u51FA\u5B8C\u6574\u7ED3\u679C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
20
+ ${V}`},{id:"expand",label:"\u6269\u5199",prompt:({selection:V})=>`\u8BF7\u5728\u4FDD\u6301\u539F\u610F\u7684\u57FA\u7840\u4E0A\u6269\u5199\u4EE5\u4E0B\u6587\u672C\uFF0C\u4F7F\u5185\u5BB9\u66F4\u5145\u5B9E\uFF0C\u76F4\u63A5\u8F93\u51FA\u5B8C\u6574\u7ED3\u679C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
21
21
 
22
- ${_}`},{id:"fix",label:"\u7EA0\u9519",prompt:({selection:_})=>`\u8BF7\u4FEE\u6B63\u4EE5\u4E0B\u6587\u672C\u4E2D\u7684\u9519\u522B\u5B57\u3001\u8BED\u6CD5\u548C\u6807\u70B9\u9519\u8BEF\uFF0C\u76F4\u63A5\u8F93\u51FA\u4FEE\u6B63\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
22
+ ${V}`},{id:"fix",label:"\u7EA0\u9519",prompt:({selection:V})=>`\u8BF7\u4FEE\u6B63\u4EE5\u4E0B\u6587\u672C\u4E2D\u7684\u9519\u522B\u5B57\u3001\u8BED\u6CD5\u548C\u6807\u70B9\u9519\u8BEF\uFF0C\u76F4\u63A5\u8F93\u51FA\u4FEE\u6B63\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\uFF09\uFF1A
23
23
 
24
- ${_}`}],J=null,ee=!1,ue=null,ie=!1,he=null,fe=_=>{ie&&!he?he=e.ui.openPopup({key:"editor-history",anchor:()=>Se,placement:"bottom",gap:8,content:()=>_,onClose:()=>{he=null,ie&&(ie=!1,e.render())}}):!ie&&he?(he.close(),he=null):he&&he.update(_)},Ae=_=>{let z=h.undoStack[_];if(!z)return;let Z=z.before;for(let me of z.events)Z=hn(Z,me);for(;h.undoStack.length>_+1;)ur(h);p=Z,ie=!1,P(p,null);let te=ze(p);O.current&&O.current(te),G(te),le("commit",{label:"time-travel",to:_}),e.render()},Se=null,En=_=>{Se=_},yt=null,_o=_=>{r&&_&&!yt?yt=e.ui.openPopup({key:"editor-link",anchor:()=>Se,placement:"bottom",gap:8,content:()=>_,onClose:()=>{yt=null,r&&(r=!1,e.render())}}):!r&&yt?(yt.close(),yt=null):yt&&_&&yt.update(_)},wt=null,Vo=_=>{i&&_&&!wt?wt=e.ui.openPopup({key:"editor-image",anchor:()=>Se,placement:"bottom",gap:8,content:()=>_,onClose:()=>{wt=null,i&&(i=!1,e.render())}}):!i&&wt?(wt.close(),wt=null):wt&&_&&wt.update(_)},Je=null,so=_=>{ee&&_&&!Je?Je=e.ui.openPopup({key:"editor-ai-panel",anchor:()=>Se,placement:"bottom",gap:8,content:()=>_,onClose:()=>{Je=null,ee&&(ee=!1,J?.handle?.abort(),e.render())}}):!ee&&Je?(Je.close(),Je=null):Je&&_&&Je.update(_)},Ce=(_,z)=>{if(!b)return;let Z=je(b),te=Z?.start??0,me=Z&&Z.start!==Z.end?Z.end:p.text.length,de=p.text.slice(te,me);if(console.log("[runAi] original:",JSON.stringify(de),"start:",te,"end:",me),!de.trim())return;J?.handle?.abort(),ue=_,J={action:_,start:te,end:me,original:de,revised:"",streaming:!0,error:null,handle:null},ee=!0,e.render();let nt=_.prompt({selection:de});le("ai-apply",{action:_.id,status:"start"});let Nt=bc(z.url,{messages:[{role:"user",content:nt}]},{headers:z.headers,onToken:He=>{J&&(J.revised+=He,e.render())},onDone:()=>{J&&(J.streaming=!1,le("ai-apply",{action:_.id,status:"done",chars:J.revised.length}),e.render())},onError:He=>{J&&(J.streaming=!1,J.error=He?.message??"AI \u8BF7\u6C42\u5931\u8D25",le("ai-apply",{action:_.id,status:"error",message:J.error}),e.render())},onEvent:z.onEvent});J&&(J.handle=Nt)},io=_=>{let z=J;if(!z||z.streaming||!z.revised.trim())return;if(ee=!1,J=null,p.text.slice(z.start,z.end)!==z.original){le("ai-apply",{action:z.action.id,status:"rejected",reason:"stale-selection"}),e.render();return}let Z=z.revised.trim();if(!Z){le("ai-apply",{action:z.action.id,status:"rejected",reason:"empty"}),e.render();return}let te=p.embeds.filter(de=>de.at>=z.start&&de.at<z.end),me=p.blockProps.filter(de=>de.start>=z.start&&de.start<=z.end);A([{type:"ai-apply",start:z.start,end:z.end,original:z.original,revised:Z,removedEmbeds:te,removedBlocks:me}],`ai-${z.action.id}`,{start:z.start+Z.length,end:z.start+Z.length}),le("ai-apply",{action:z.action.id,status:"accepted"}),e.render()},vt=(_,z)=>e.i18n?.components?.Editor?.[_]??z;return _=>{let{value:z="",onChange:Z,onUpload:te,placeholder:me="",disabled:de=!1,minHeight:nt="200px",draftKey:Nt}=_,He=_.toolbar??Rs,De=s==="rich";O.current=Z,Q=Nt??null;let ao=F=>{m=!0,Z?.(F)},ba=(F,ce)=>{if(!de){if(ce&&(Se=ce),b?.focus(),F==="source"){De?(d=b?.innerHTML??z,s="source",e.render()):(s="rich",n={},m=!1,p=ot(z),e.render(),Z?.(z));return}if(De){switch(F){case"bold":B("b");break;case"italic":B("i");break;case"underline":B("u");break;case"h1":q("h1");break;case"h2":q("h2");break;case"h3":q("h3");break;case"blockquote":q("quote");break;case"ul":q("ul");break;case"ol":q("ol");break;case"alignLeft":V("left");break;case"alignCenter":V("center");break;case"alignRight":V("right");break;case"hr":L("<hr>","hr");break;case"image":{i=!0,l="",e.render();return}case"link":{R();let we=je(b);if(!we||we.start===we.end){r=!0,a="",e.render();return}p.marks.some(qe=>qe.type==="link"&&qe.start<=we.start&&qe.end>=we.end)?(D(),U("",!0),e.render()):(r=!0,a="",e.render());return}case"clear":C();break;default:return}n=M(je(b)?.start??0),e.render()}}},as=F=>{r=!1,e.render(),F&&(D(),U(F),e.render())},ls=()=>{r=!1,a="",e.render()},ya=async F=>{let ce=F[0];if(ce){c=!0,e.render();try{let we=await te(ce);D(),L(`<img src="${we}" alt="">`,"img"),i=!1,l="",e.render()}catch{}finally{c=!1,e.render()}}},cs=F=>{i=!1,l="",e.render(),D(),L(`<img src="${F}" alt="">`,"img")},ds=()=>{i=!1,l="",e.render()},wa=(F,ce)=>{f=!1,g=-1,u=-1,D(),L(Hs(F,ce),"table"),e.render()},va=(F,ce)=>{g=F,u=ce,e.render()},xa=()=>{g=-1,u=-1,e.render()},ka=ne("button",{key:"table",class:"wf-editor-tb-btn",type:"button",title:"\u63D2\u5165\u8868\u683C","aria-label":"\u63D2\u5165\u8868\u683C","data-item":"table"},"\u229E"),Ca=f?Bs(g,u,wa,va,xa):null,Ma=ne(_n,{key:"table",open:De&&!!f,onOpenChange:F=>{f=F,F&&R(),e.render()},content:Ca},ka),Pa=()=>{if(de)return;let F=b;if(!F)return;let ce=ot(F.innerHTML);if(!(F.textContent??"").trim()&&!(F.querySelector?.("img,table,hr")??null)){if(p.text===""&&ce.text==="")return;k(),p=un,F.innerHTML="",ao("");return}let Le=T(p,ce.text);if(Le===null){k(),p=ce,ao(ze(p));return}if(Le.length===0){let qe=ze(p);p=ce,ze(ce)!==qe&&ao(ze(ce));return}E(Le,ce),ao(ze(ce))},Sa=F=>{let ce=F.target.value;Z?.(ce)},Ta=F=>{let ce=F.ctrlKey||F.metaKey;if(ce&&F.key.toLowerCase()==="z")F.preventDefault(),k(),Fs(h)&&($(),n=M(je(b)?.start??0),e.render());else if(ce&&F.key.toLowerCase()==="y")F.preventDefault(),k(),mr(h)&&(N(),n=M(je(b)?.start??0),e.render());else if(ce&&F.key==="Enter"){let we=_.ai;if(we&&!de&&De){F.preventDefault(),k();let Le=we.actions??W;Ce(ue??Le[0],we)}}},Ea=F=>{if(de||!De)return;if((F.ctrlKey||F.metaKey)&&["b","i","u"].includes(F.key.toLowerCase())){R(),B(F.key.toLowerCase()==="b"?"b":F.key.toLowerCase()==="i"?"i":"u"),n=M(je(b)?.start??0),e.render();return}n=M(je(b)?.start??0),e.render()},Ia=()=>{if(!De)return;R();let F=je(b)?.start??0,ce=M(F);(n===null||!yc(n,ce))&&(n=ce,e.render())},$a=()=>{R();let F=!1;r&&(r=!1,F=!0),i&&(i=!1,F=!0),F&&e.render()};_o(De&&r?ne("div",{class:"wf-editor-link-panel"},[ne("div",{class:"wf-editor-link-panel-title"},vt("linkTitle","\u63D2\u5165\u94FE\u63A5")),ne("input",{type:"url",class:"wf-editor-link-input",placeholder:"https://...",value:a,"data-editor-link-input":!0,onInput:F=>{a=F.target.value,e.render()},onKeyDown:F=>{F.key==="Enter"&&as(F.target.value),F.key==="Escape"&&ls()}}),ne("div",{class:"wf-editor-link-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",onClick:ls},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>as(a)},"\u786E\u5B9A")])]):null);let lo=[];te&&(lo.push(ne(nr,{accept:"image/*",multiple:!1,disabled:c,onChange:ya},ne("div",{class:"wf-editor-img-zone"},[ne("span",{class:"wf-editor-img-zone-icon"},"\u{1F5BC}"),ne("span",{class:"wf-editor-img-zone-text"},c?"\u4E0A\u4F20\u4E2D...":"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u56FE\u7247")]))),lo.push(ne("span",{class:"wf-editor-img-or"},"\u6216"))),lo.push(ne("input",{type:"url",class:"wf-editor-link-input",placeholder:te?"\u7C98\u8D34\u56FE\u7247\u94FE\u63A5":"https://...",value:l,"data-image-input":!0,disabled:c||void 0,onInput:F=>{l=F.target.value,e.render()},onKeyDown:F=>{F.key==="Enter"&&cs(F.target.value),F.key==="Escape"&&ds()}})),Vo(De&&i?ne("div",{class:"wf-editor-link-panel"},[ne("div",{class:"wf-editor-link-panel-title"},vt("imageTitle","\u63D2\u5165\u56FE\u7247")),ne("div",{class:"wf-stack",style:"gap:8px"},lo),ne("div",{class:"wf-editor-link-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",disabled:c||void 0,onClick:ds},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:c||void 0,onClick:()=>cs(l)},te?"\u63D2\u5165":"\u786E\u5B9A")])]):null);let Ko=null;if(De){let F=["wf-editor-content",de&&"wf-editor-content--disabled",me&&"wf-editor-content--has-placeholder"].filter(Boolean).join(" "),ce=m;m&&b&&b.innerHTML===z&&(m=!1);let we=!m&&!ce,Le={class:F,contentEditable:!de,"data-placeholder":me||void 0,style:{minHeight:nt},onInput:Pa,onKeyDown:Ta,onKeyUp:Ea,onMouseUp:Ia,onMouseDown:$a,ref:v};if(we)if(K){K=!1;let qe=z===""?X():null;p=ot(qe??z),Le.innerHTML=ze(p),qe&&(m=!0,Z?.(ze(p)))}else b&&z!==""&&ze(p)!==z&&(p=ot(z),m=!1),Le.innerHTML=ze(p);Ko=ne("div",Le)}else Ko=ne("textarea",{class:"wf-editor-source",value:z,disabled:de,style:{minHeight:nt},onInput:Sa});let Aa={table:()=>Ma},In=_.ai,Da=(In?.actions??W).map(F=>({...F,label:vt(`ai-${F.id}`,F.label)})),jo=null,Fo=null,La=(F,ce)=>{let we=Js(F,ce),Le=[],qe=0;for(let $n of we)$n.type==="equal"?Le.push(ne("span",{key:`e${qe++}`},$n.text)):$n.type==="delete"?Le.push(ne("del",{key:`d${qe++}`,class:"wf-editor-ai-diff-del"},$n.text)):Le.push(ne("ins",{key:`i${qe++}`,class:"wf-editor-ai-diff-ins"},$n.text));return ne("div",{class:"wf-editor-ai-panel-body wf-editor-ai-diff"},Le)};if(!de&&De&&(Fo=ne("button",{key:"hist",class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",ie?"wf-editor-tb-btn--active":""].filter(Boolean).join(" "),type:"button",title:"\u64CD\u4F5C\u5386\u53F2","aria-label":"\u64CD\u4F5C\u5386\u53F2","data-item":"history",onClick:F=>{En(F.currentTarget),ie=!ie,e.render()}},"\u{1F558}"),ie)){let F=[],ce=h.undoStack.slice().reverse();for(let we=0;we<ce.length;we++){let Le=ce[we],qe=h.undoStack.length-1-we;F.push(ne("button",{key:`u-${qe}`,class:["wf-editor-hist-item",we===0?"wf-editor-hist-item--current":""].filter(Boolean).join(" "),type:"button",onClick:()=>Ae(qe)},[ne("span",{class:"wf-editor-hist-label"},Le.label),ne("span",{class:"wf-editor-hist-time"},new Date(Le.ts??Date.now()).toLocaleTimeString())]))}for(let we=h.redoStack.length-1;we>=0;we--){let Le=h.redoStack[we];F.push(ne("button",{key:`r-${we}`,class:"wf-editor-hist-item wf-editor-hist-item--redo",type:"button",onClick:()=>{for(;mr(h)&&h.redoStack.length>we;)N();ie=!1,e.render()}},[ne("span",{class:"wf-editor-hist-label"},`\u21A9 ${Le.label}`)]))}fe(F.length?ne("div",{class:"wf-editor-hist-panel"},F):ne("div",{class:"wf-editor-hist-panel wf-editor-hist-empty"},"\u6682\u65E0\u64CD\u4F5C\u8BB0\u5F55"))}if(In&&!de&&De&&(jo=ne("div",{class:"wf-editor-ai-bar"},[ne("span",{class:"wf-editor-tb-sep",key:"ai-sep"}),...Da.map(F=>ne("button",{key:`ai-${F.id}`,class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",J?.streaming&&J?.action.id===F.id?"wf-editor-tb-btn--active":""].filter(Boolean).join(" "),type:"button",title:F.label,"aria-label":`AI ${F.label}`,"aria-expanded":String(!!ee),"data-ai-item":F.id,disabled:(J?.streaming?!0:void 0)??void 0,onClick:ce=>{En(ce.currentTarget),Ce(F,In)}},F.label))]),ee&&J)){let F=J,ce=ne("div",{class:"wf-editor-ai-panel"},[ne("div",{class:"wf-editor-ai-panel-head"},[ne("span",{},`AI ${F.action.label}`),ne("span",{class:"wf-editor-ai-panel-status"},F.streaming?vt("generating","\u751F\u6210\u4E2D\u2026"):F.error?vt("failed","\u5931\u8D25"):"")]),F.error?ne("div",{class:"wf-editor-ai-panel-error"},F.error):!F.streaming&&F.revised?La(F.original,F.revised):ne("div",{class:"wf-editor-ai-panel-body"},F.revised||"\u2026"),ne("div",{class:"wf-editor-ai-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",onClick:()=>{ee=!1,J=null,e.render()}},vt("reject","\u62D2\u7EDD")),F.error?ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>Ce(F.action,In)},vt("retry","\u91CD\u8BD5")):ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:F.streaming||!F.revised.trim()?!0:void 0,onClick:()=>io(In)},vt("accept","\u63A5\u53D7"))])]);so(ce)}return!ie&&he&&(he.close(),he=null),!ee&&Je&&(Je.close(),Je=null),ne("div",{class:`wf-editor${de?" wf-editor--disabled":""}`},[!de&&He.length>0?Ns(He,n??{},!De,ba,Aa,[...jo?[jo]:[],...Fo?[Fo]:[]]):null,Ko,ne("input",{type:"hidden",value:z,"aria-hidden":"true"})])}};function yc(o,e){if(o===e)return!0;if(!o||!e)return!1;let t=Object.keys(o);if(t.length!==Object.keys(e).length)return!1;for(let n of t)if(o[n]!==e[n])return!1;return!0}import{createClientBrowser as wc}from"weifuwu/vdom";import{h as xo}from"weifuwu/vdom";var Xn=wc(),vc=[{value:"default",label:"\u9ED8\u8BA4"},{value:"minimal",label:"\u6781\u7B80"},{value:"compact",label:"\u7D27\u51D1"},{value:"rounded",label:"\u5706\u6DA6"}],ci="wf_theme",xc="wf_theme_preset";function di(o){let e=Xn?.storageGet(o)??null;return e==="light"||e==="dark"||e==="auto"?e:null}function ai(o,e){Xn?.storageSet(o,e)}function wr(o){let e=Xn?.rootElement();e&&(o==="auto"?e.removeAttribute("data-theme"):e.setAttribute("data-theme",o))}function kc(o){let e=Xn?.storageGet(o)??null;return e==="minimal"||e==="compact"||e==="rounded"||e==="default"?e:null}function li(o){let e=Xn?.rootElement();e&&(o==="default"?e.removeAttribute("data-preset"):e.setAttribute("data-preset",o))}function Cc(){let o=di(ci);return o||"auto"}var Mc=(o,e)=>{let t=o.storageKey??ci,n=o.storageKey?`${o.storageKey}_preset`:xc,r=o.mode??di(t)??"auto",a=o.preset??kc(n)??"default";return wr(r),li(a),s=>{let i=e?.i18n?.components?.ThemeSwitch??{},c=[{value:"auto",label:i.auto??"\u81EA\u52A8"},{value:"light",label:i.light??"\u4EAE\u8272"},{value:"dark",label:i.dark??"\u6697\u8272"}].map(d=>xo("button",{type:"button",class:`wf-theme-seg${r===d.value?" wf-theme-seg--active":""}`,role:"radio","aria-checked":String(r===d.value),"aria-label":d.label,onClick:()=>{r!==d.value&&(r=d.value,wr(r),ai(t,r),s.onChange?.(r),e.render())}},d.label)),f=vc.map(d=>xo("button",{type:"button",class:`wf-theme-seg wf-theme-seg--preset${a===d.value?" wf-theme-seg--active":""}`,role:"radio","aria-checked":String(a===d.value),"aria-label":d.label,onClick:()=>{a!==d.value&&(a=d.value,li(a),ai(n,a),s.onPresetChange?.(a),e.render())}},d.label)),u=s.preset!==void 0||s.onPresetChange!==void 0?[c,xo("div",{class:"wf-theme-preset-row",role:"radiogroup","aria-label":"\u9884\u8BBE\u4E3B\u9898"},f)]:c;return xo("div",{class:"wf-theme-switch",role:"radiogroup","aria-label":i.label??"\u4E3B\u9898\u5207\u6362"},u)}};import{h as at}from"weifuwu/vdom";import{h as oe}from"weifuwu/vdom";function pi(o){return o===null?"wf-json-null":typeof o=="string"?"wf-json-string":typeof o=="number"?"wf-json-number":typeof o=="boolean"?"wf-json-boolean":""}function fi(o){return o===null?"null":typeof o=="string"?JSON.stringify(o):String(o)}var vr=(o,e)=>{let t={},n,r=(s,i)=>{t[s]=i===void 0?!t[s]:!i,e.render()},a=(s,i,l)=>{if(l){l(s,i);return}e.browser?.copyText(`${s} = ${JSON.stringify(i)}`)};return s=>{let{data:i,defaultExpandDepth:l=2,maxKeys:c=100,rootName:f="root",onCopy:g,className:u}=s,d=(m,b,v)=>{a(m,b,g);let y=v.currentTarget?.querySelector("path"),x=y?.getAttribute("d");y&&x&&(y.setAttribute("d","M20 6 9 17l-5-5"),e.browser?.timeout(()=>y.setAttribute("d",x),1e3))},p=(m,b,v,w)=>{if(typeof m=="object"&&m!==null){let y=t[b]===!0||v>=l&&t[b]!==!1;if(y){let P=Array.isArray(m)?`Array(${m.length})`:"Object";return oe("div",{class:"wf-json-row wf-json-collapse","data-path":b,role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:I=>{I.stopPropagation(),r(b,y)}},oe(H,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-summary"},`${P} {\u2026}`),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${b}`,tabIndex:-1,onClick:I=>{I.stopPropagation(),d(b,m,I)}},oe(H,{name:n===b?"check":"copy",size:10}))])}if(Array.isArray(m)){let P=m.map((I,A)=>p(I,`${b}[${A}]`,v+1,String(A)));return oe("div",{class:"wf-json-node","data-path":b},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:I=>{I.stopPropagation(),r(b,y)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-node-summary"},`Array(${m.length})`)]),oe("div",{class:"wf-json-children"},P)])}let x=Object.entries(m),k=x.length>c,T=(k?x.slice(0,c):x).map(([P,I])=>p(I,`${b}.${P}`,v+1,P));return k&&T.push(oe("div",{class:"wf-json-more"},`+${x.length-c} \u9879\uFF08\u61D2\u5C55\u5F00\uFF09`)),oe("div",{class:"wf-json-node","data-path":b},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:P=>{(P.key==="Enter"||P.key===" ")&&(P.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:P=>{P.stopPropagation(),r(b,y)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-node-summary"},`Object(${x.length})`)]),oe("div",{class:"wf-json-children"},T)])}return oe("div",{class:"wf-json-row","data-path":b},[oe("span",{class:"wf-json-toggle-placeholder"}),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:`wf-json-value ${pi(m)}`},fi(m)),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${b}`,tabIndex:-1,onClick:y=>d(b,m,y)},oe(H,{name:"copy",size:10}))])},h;if(typeof i=="object"&&i!==null){let m=t[f]===!0;h=m?oe("div",{class:"wf-json-row wf-json-collapse","data-path":f,role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(H,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-summary"},"Object {\u2026}")]):Array.isArray(i)?oe("div",{class:"wf-json-node","data-path":f},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-node-summary"},`Array(${i.length})`)]),oe("div",{class:"wf-json-children"},i.map((b,v)=>p(b,`${f}[${v}]`,1,String(v))))]):oe("div",{class:"wf-json-node","data-path":f},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${f}:`),oe("span",{class:"wf-json-node-summary"},`Object(${Object.keys(i).length})`)]),oe("div",{class:"wf-json-children"},(()=>{let b=Object.entries(i),v=b.length>c,w=(v?b.slice(0,c):b).map(([y,x])=>p(x,`${f}.${y}`,1,y));return v&&w.push(oe("div",{class:"wf-json-more"},`+${b.length-c} \u9879\uFF08\u61D2\u5C55\u5F00\uFF09`)),w})())])}else h=oe("div",{class:"wf-json-row"},[oe("span",{class:`wf-json-value ${pi(i)}`},fi(i))]);return oe("div",{class:["wf-json-viewer",u].filter(Boolean).join(" ")},[h])}};var Pc={running:"settings",ok:"check",error:"close"},xr=(o,e)=>t=>{let{call:n,progress:r,result:a,renderArgs:s}=t,i=a?a.ok?"ok":"error":"running",l=s?s(n.args):at(vr,{data:n.args,defaultExpandDepth:1,maxKeys:50,rootName:"args"}),c=r?[r.message?at("div",{class:"wf-toolcall-msg"},`${r.message} (${r.step}/${r.total})`):null,at("div",{class:"wf-toolcall-bar",role:"progressbar","aria-valuenow":r.step,"aria-valuemax":r.total},[at("div",{class:"wf-toolcall-bar-fill",style:{width:`${Math.min(100,r.step/Math.max(1,r.total)*100)}%`}})])]:null,f=a&&!a.ok&&a.error?at("div",{class:"wf-toolcall-error"},`${a.error.code}: ${a.error.message}`):null;return at("div",{class:`wf-toolcall wf-toolcall--${i}`},[at("div",{class:"wf-toolcall-header"},[at("span",{class:`wf-toolcall-icon wf-toolcall-icon--${i}`},at(H,{name:Pc[i]})),at("span",{class:"wf-toolcall-name"},n.name)]),at("div",{class:"wf-toolcall-body"},[l,c,f].filter(Boolean))])};import{h as $e}from"weifuwu/vdom";import{h as Pe}from"weifuwu/vdom";import{h as rt}from"weifuwu/vdom";var ko=(o,e)=>{let t,n,r=!1,a=()=>{};e.ui.hold(()=>{clearTimeout(t),clearInterval(n)});let s=l=>{clearTimeout(t),clearInterval(n),r=!1,t=setTimeout(()=>{r=!0,n=setInterval(()=>a(l),60)},500)},i=()=>{clearTimeout(t),clearInterval(n)};return l=>{let{value:c=null,onChange:f,min:g,max:u,step:d=1,precision:p,label:h,name:m,placeholder:b,disabled:v,error:w,hint:y,required:x,className:k}=l,E=U=>{let L=U;return g!=null&&(L=Math.max(g,L)),u!=null&&(L=Math.min(u,L)),p!=null&&(L=Number(L.toFixed(p))),L},T=U=>{if(v)return;f?.(E(Number(((c??0)+U*d).toFixed(10))))};a=T;let P=U=>{if(v)return;let L=U.target.value.trim();if(L===""||L==="-"){f?.(null);return}if(!/^-?\d*\.?\d+$/.test(L))return;let C=Number(L);Number.isNaN(C)||f?.(E(C))},I=c==null?"":String(p!=null?c.toFixed(p):c),A=h?rt("label",{class:"wf-inputnumber-label"},[h,x?rt("span",{class:"wf-inputnumber-req"},"*"):null].filter(Boolean)):null,$=rt("input",{class:"wf-inputnumber-input",type:"text",inputMode:"decimal",value:I,placeholder:b,name:m,disabled:v,onInput:P,onBlur:()=>{c!=null&&f?.(E(c))}}),N=rt("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u589E\u52A0",disabled:v,onClick:()=>{if(r){r=!1;return}T(1)},onPointerDown:()=>s(1),onPointerUp:i,onPointerLeave:i},rt(H,{name:"chevron-up",size:12})),B=rt("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u51CF\u5C11",disabled:v,onClick:()=>{if(r){r=!1;return}T(-1)},onPointerDown:()=>s(-1),onPointerUp:i,onPointerLeave:i},rt(H,{name:"chevron-down",size:12})),q=rt("div",{class:`wf-inputnumber${v?" wf-inputnumber--disabled":""}${w?" wf-inputnumber--err":""}${k?` ${k}`:""}`},[$,rt("div",{class:"wf-inputnumber-btns"},[N,B])]),V=[];return A&&V.push(A),V.push(q),w&&V.push(rt("div",{class:"wf-inputnumber-err"},w)),y&&!w&&V.push(rt("div",{class:"wf-inputnumber-hint"},y)),rt("div",{class:"wf-inputnumber-wrap"},V)}};function kr(o,e){console.warn(`[JsonSchemaForm] \u5B57\u6BB5 "${o}" \u4E0D\u652F\u6301 ${e}\u2014\u2014\u964D\u7EA7\u4E3A\u6587\u672C\u8F93\u5165`)}function Sc(o){return{...o??{}}}function bn(o,e,t){let n=o;for(let r=0;r<e.length-1;r++){let a=e[r];(n[a]==null||typeof n[a]!="object")&&(n[a]={}),n=n[a]}n[e[e.length-1]]=t}function _t(o,e){let t=o;for(let n of e){if(t==null||typeof t!="object")return;t=t[n]}return t}function Co(o,e,t){let n=_t(o,e.slice(0,-1));n&&typeof n=="object"&&(n[e[e.length-1]]=t)}function Tc(o,e,t=!1){if(t&&(e==null||e===""))return"\u5FC5\u586B";if(!(e==null||e==="")){if(o.type==="number"||o.type==="integer"){let n=Number(e);return Number.isNaN(n)?"\u5FC5\u987B\u662F\u6570\u5B57":o.minimum!=null&&n<o.minimum?`\u4E0D\u80FD\u5C0F\u4E8E ${o.minimum}`:o.maximum!=null&&n>o.maximum?`\u4E0D\u80FD\u5927\u4E8E ${o.maximum}`:void 0}if(typeof e=="string"){if(o.minLength!=null&&e.length<o.minLength)return`\u81F3\u5C11 ${o.minLength} \u4E2A\u5B57\u7B26`;if(o.maxLength!=null&&e.length>o.maxLength)return`\u6700\u591A ${o.maxLength} \u4E2A\u5B57\u7B26`}if(o.enum?.length&&!o.enum.includes(e))return"\u4E0D\u5728\u5141\u8BB8\u503C\u8303\u56F4\u5185"}}var Cr=(o,e)=>{let t=Sc(o.value);function n(){e.render(),o.onChange?.(t)}function r(s,i,l,c,f,g=!1){let u=f[l.join(".")],d=i.title??s;if(i.enum?.length){let p=i.enum.map(h=>({value:String(h),label:String(h)}));return Pe(dn,{key:s,label:d,required:g,error:u,hint:i.description},Pe(fo,{value:c==null?void 0:String(c),options:p,error:u,onChange:h=>{bn(t,l,h==null?void 0:i.enum?.find(m=>String(m)===h)),n()}}))}switch(i.type){case"number":case"integer":return Pe(dn,{key:s,label:d,required:g,error:u,hint:i.description},Pe(ko,{value:c==null?null:Number(c),min:i.minimum,max:i.maximum,error:u,onChange:p=>{bn(t,l,p??void 0),n()}}));case"boolean":return Pe(dn,{key:s,label:d,required:g,error:u,hint:i.description},Pe(uo,{checked:!!c,onChange:p=>{bn(t,l,p),n()}}));case"object":return Pe("div",{key:s,class:"wf-jsf-obj"},[Pe("div",{class:"wf-jsf-obj-title"},[d,g?Pe("span",{class:"wf-field-req"},"*"):null]),...Object.entries(i.properties??{}).map(([p,h])=>r(p,h,[...l,p],_t(t,[...l,p]),f,i.required?.includes(p)))]);case"array":{let p=Array.isArray(c)?c:[],h=p.map((m,b)=>{let v=[...l,String(b)];return Pe("div",{key:b,class:"wf-jsf-arr-item"},[a(String(b),i.items??{},v,p[b],f),Pe("button",{type:"button",class:"wf-jsf-arr-del","aria-label":`\u5220\u9664 ${d} \u7B2C ${b+1} \u9879`,onClick:()=>{let w=Array.isArray(_t(t,l))?[..._t(t,l)]:[];w.splice(b,1),bn(t,l,w),n()}},Pe(H,{name:"trash"}))])});return Pe("div",{key:s,class:"wf-jsf-arr"},[Pe("div",{class:"wf-jsf-obj-title"},[d,Pe("span",{class:"wf-jsf-arr-add",role:"button",tabindex:0,"aria-label":`\u6DFB\u52A0 ${d} \u9879`,onClick:()=>{let m=Array.isArray(_t(t,l))?[..._t(t,l)]:[];m.push(void 0),bn(t,l,m),n()},onKeyDown:m=>{(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),m.target.click())}},Pe(H,{name:"plus"}))]),...h])}default:return i.type&&i.type!=="string"&&kr(s,`type "${i.type}"`),i.$ref&&kr(s,`$ref \u5F15\u7528\uFF08${i.$ref}\uFF09`),Pe(dn,{key:s,label:d,required:g,error:u,hint:i.description},Pe(co,{value:c==null?"":String(c),onInput:p=>{bn(t,l,p.target.value),n()}}))}}function a(s,i,l,c,f){if(i.enum?.length){let g=i.enum.map(u=>({value:String(u),label:String(u)}));return Pe(fo,{value:c==null?void 0:String(c),options:g,onChange:u=>{Co(t,l,i.enum?.find(d=>String(d)===u)),n()}})}switch(i.type){case"number":case"integer":return Pe(ko,{value:c==null?null:Number(c),onChange:g=>{Co(t,l,g??void 0),n()}});case"boolean":return Pe(uo,{checked:!!c,onChange:g=>{Co(t,l,g),n()}});case"object":kr(l.join("."),"\u6570\u7EC4\u5BF9\u8C61 items\uFF08\u5BF9\u8C61\u6570\u7EC4\uFF09");break;default:return Pe(co,{value:c==null?"":String(c),onInput:g=>{Co(t,l,g.target.value),n()}})}}return s=>{let i=s.schema,l={};function c(u,d,p=!1){if(u.type==="object"){for(let[m,b]of Object.entries(u.properties??{}))c(b,[...d,m],u.required?.includes(m));return}let h=Tc(u,_t(t,d),p);h&&(l[d.join(".")]=h)}for(let[u,d]of Object.entries(i.properties??{}))c(d,[u],i.required?.includes(u));let f=Object.entries(i.properties??{}).map(([u,d])=>r(u,d,[u],_t(t,[u]),l,i.required?.includes(u))),g=s.onSubmit?Pe("button",{type:"button",class:"wf-btn wf-btn--primary wf-jsf-submit",onClick:()=>{Object.keys(l).length>0||s.onSubmit?.(t)}},s.submitLabel??"\u63D0\u4EA4"):null;return Pe("div",{class:"wf-jsf"},[i.title?Pe("div",{class:"wf-jsf-title"},i.title):null,...f,g])}};var Ec={pending:"\u7B49\u5F85\u5BA1\u6279",approved:"\u5DF2\u6279\u51C6",rejected:"\u5DF2\u62D2\u7EDD",timeout:"\u5BA1\u6279\u8D85\u65F6"},Mr=(o,e)=>{let t="",n=!1,r=!1;return a=>{let{request:s,status:i="pending",onApprove:l,onReject:c,renderDetail:f,loading:g,argsSchema:u}=a,d=f?f(s):[$e("div",{class:"wf-approval-name"},s.name),$e("code",{class:"wf-approval-args"},JSON.stringify(s.args))],p=u&&r?$e("div",{class:"wf-approval-modify"},[$e(Cr,{schema:u,value:s.args,submitLabel:"\u4EE5\u4FEE\u6539\u540E\u53C2\u6570\u6279\u51C6",onSubmit:m=>l?.(m)}),$e("button",{type:"button",class:"wf-approval-modify-cancel wf-btn wf-btn--secondary wf-btn--sm",onClick:()=>{r=!1,e.render()}},"\u53D6\u6D88\u4FEE\u6539")]):null,h=i==="pending"?$e("div",{class:"wf-approval-actions"},[n?$e("div",{class:"wf-approval-note"},[$e("input",{class:"wf-approval-note-input",placeholder:"\u5907\u6CE8\uFF08\u62D2\u7EDD\u539F\u56E0\uFF0C\u5C06\u8FDB\u5165 agent \u4E0A\u4E0B\u6587\uFF09\u2026","aria-label":"\u62D2\u7EDD\u5907\u6CE8",value:t,disabled:g||void 0,onInput:m=>{t=m.target.value}})]):null,$e("div",{class:"wf-approval-btns"},[$e("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:g||void 0,onClick:g?void 0:()=>l?.(void 0)},g?"\u63D0\u4EA4\u4E2D\u2026":"\u5141\u8BB8"),u&&!r?$e("button",{class:"wf-btn wf-btn--secondary wf-btn--sm wf-approval-modify-btn",type:"button",disabled:g||void 0,onClick:g?void 0:()=>{r=!0,e.render()}},"\u4FEE\u6539\u53C2\u6570"):null,$e("button",{class:"wf-btn wf-btn--danger wf-btn--sm",type:"button",disabled:g||void 0,onClick:g?void 0:()=>{if(!n){n=!0,e.render();return}c?.(t)}},n?"\u786E\u8BA4\u62D2\u7EDD":"\u62D2\u7EDD"),n?$e("button",{class:"wf-btn wf-btn--secondary wf-btn--sm",type:"button",disabled:g||void 0,onClick:()=>{n=!1,t="",e.render()}},"\u53D6\u6D88"):null].filter(Boolean))].filter(Boolean)):$e("div",{class:`wf-approval-status wf-approval-status--${i}`},Ec[i]);return $e("div",{class:`wf-approval wf-approval--${i}`},[$e("div",{class:"wf-approval-header"},[$e("span",{class:"wf-approval-icon"},$e(H,{name:i==="pending"?"pause":i==="approved"?"check":"close"})),$e("span",{class:"wf-approval-title"},"\u5DE5\u5177\u5BA1\u6279")]),$e("div",{class:"wf-approval-detail"},d),s.reason?$e("div",{class:"wf-approval-reason"},s.reason):null,h,p])}};import{createClientBrowser as Ic}from"weifuwu/vdom";import{h as Xe}from"weifuwu/vdom";import{h as Jt}from"weifuwu/vdom";var Pr=(o,e)=>{let t=!!o.defaultExpanded;return n=>{let{content:r,streaming:a,label:s="\u5DF2\u601D\u8003"}=n,i=()=>{t=!t,e.render()};return Jt("div",{class:`wf-reasoning${a?" wf-reasoning--streaming":""}`},[Jt("button",{type:"button",class:"wf-reasoning-toggle","aria-expanded":t,onClick:i,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),i())}},[Jt("span",{class:`wf-reasoning-chevron${t?" wf-reasoning-chevron--open":""}`},Jt(H,{name:"chevron-down"})),Jt("span",{class:"wf-reasoning-label"},a?`${s}\u2026`:s),a?Jt("span",{class:"wf-reasoning-dot","aria-hidden":"true"}):null]),Jt("div",{class:`wf-reasoning-body${t?" wf-reasoning-body--open":""}`,hidden:!t},r)])}};import{h as yn}from"weifuwu/vdom";var Sr=(o,e)=>t=>{let n={send:"\u53D1\u9001",stop:"\u505C\u6B62",retry:"\u91CD\u8BD5",placeholder:"\u8F93\u5165\u6D88\u606F\uFF0C\u56DE\u8F66\u53D1\u9001\u2026",...t.labels},r=null,a=e.ui.useControlledInput({value:t.value??"",onChange:t.onChange,name:"ChatInput"});t.onControl&&t.onControl({setKeyword:c=>{a.setKeyword(c)},setValue:c=>{a.setKeyword(c),t.onChange?.(c)}});let s=!1,i=()=>{let c=a.keyword.trim();c&&(a.setKeyword(""),r&&(r.value=""),t.onSend(c))},l={class:"wf-chat-input",value:a.keyword,ref:c=>{r=c},placeholder:n.placeholder,disabled:t.disabled,onInput:c=>{s||c.isComposing||(a.setKeyword(c.target.value),t.onChange?.(c.target.value))},onCompositionStart:()=>{s=!0},onCompositionEnd:c=>{s=!1;let f=c.target?.value??"";a.setKeyword(f),t.onChange?.(f)},onKeyDown:c=>{if(!t.onKeyInterceptFn?.(c)&&c.key==="Enter"&&!(s||c.isComposing)){if(c.ctrlKey||c.metaKey){c.preventDefault(),i();return}t.multiline&&c.shiftKey||(c.preventDefault(),i())}}};return yn("div",{class:"wf-chat-inputbar"},[t.multiline?yn("textarea",{...l,rows:1,style:{resize:"none"}}):yn("input",{...l,type:"text"}),t.actions??null,t.streaming?yn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>t.onStop?.()},n.stop):yn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>i()},n.send),!t.streaming&&t.error?yn("button",{class:"wf-btn wf-btn--danger wf-btn--sm",type:"button",onClick:()=>t.onRetry?.()},n.retry):null])};var $c={send:"\u53D1\u9001",stop:"\u505C\u6B62",retry:"\u91CD\u8BD5",thinking:"\u{1F914} \u601D\u8003\u4E2D\u2026",runningTool:o=>o?`\u6267\u884C\u5DE5\u5177 ${o}`:"\u6267\u884C\u5DE5\u5177\u2026",tokens:o=>`tokens: ${o.prompt_tokens}\u2192${o.completion_tokens}`,error:o=>`${o.code}: ${o.message}`,placeholder:"\u8F93\u5165\u6D88\u606F\uFF0C\u56DE\u8F66\u53D1\u9001\u2026",empty:"\u8F93\u5165\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD\u3002"},Ac=(o,e)=>{let t=e.browser??Ic(),n,r=!0,a=o.chat,s,i=()=>{s?.();let d=a;s=d?.subscribe?d.subscribe(()=>e.render()):void 0};i();let l=d=>{d||(s?.(),s=void 0)},c=e.ui.useVisualViewport(),f=()=>{n&&(n.scrollTop=n.scrollHeight)},g=e.ui.useScrollPosition({getScroller:()=>n??null}),u=d=>{d&&!n?(n=d,g.refresh(),queueMicrotask(f)):!d&&n&&(n=void 0)};return d=>{let{chat:p,raiseOnKeyboard:h=!1}=d,m={...$c,...d.labels};p!==a&&(a=p,i()),n&&(r=n.scrollHeight-g.y-n.clientHeight<48),r&&queueMicrotask(f);let b=p.messages??[],v=[];b.length===0&&v.push(Xe("p",{class:"wf-aichat-empty"},m.empty));for(let w of b)v.push(Dc(w,d,m));return p.step&&v.push(Xe("div",{class:"wf-aichat-status"},p.step.type==="llm"?m.thinking:m.runningTool(p.step.name))),p.usage&&v.push(Xe("div",{class:"wf-aichat-usage"},m.tokens(p.usage))),p.error&&v.push(Xe("div",{class:"wf-aichat-error"},m.error(p.error))),Xe("div",{class:"wf-aichat",ref:l},[Xe("div",{class:"wf-aichat-list",style:{maxHeight:d.maxHeight??"70vh"},ref:u},v),Xe("div",{class:`wf-aichat-inputbar${c.keyboardOpen&&h?" wf-aichat-inputbar--raised":""}`,style:c.keyboardOpen&&h?{position:"fixed",left:"0",right:"0",bottom:`${Math.max(0,t?.viewportHeight()-(c.height+c.offsetTop))+8}px`,zIndex:"var(--wf-z-popover)"}:void 0},[Xe(Sr,{value:p.input??"",onChange:w=>{p.setInput(w)},onSend:w=>{p.setInput(w),p.send()},streaming:p.streaming,onStop:()=>p.stop(),error:p.error?p.error.message:null,onRetry:()=>p.retry(),labels:{send:m.send,stop:m.stop,retry:m.retry,placeholder:m.placeholder}})])])}};function Dc(o,e,t){let n=[];if(o.toolCalls?.length){let r=o.toolCalls.map((a,s)=>Xe(xr,{key:`${o.id}-tool-${s}`,call:a.call,progress:a.progress,result:a.result,renderArgs:e.renderToolArgs}));n.push(Xe("div",{class:"wf-aichat-tools"},r))}if(o.approval){let r=Xe(Mr,{request:o.approval,argsSchema:e.approveSchema?.(o.approval),onApprove:a=>e.chat.approve(a?"modified":"approved",void 0,a),onReject:a=>e.chat.approve("rejected",a??"\u7528\u6237\u62D2\u7EDD")});n.push(Xe("div",{class:"wf-aichat-approval"},r))}return o.reasoning&&n.push(Xe(Pr,{content:o.reasoning,streaming:o.status==="streaming"})),n.push(Xe("div",{class:`wf-aichat-bubble wf-aichat-bubble--${o.role}`},e.renderMessage?e.renderMessage(o):o.content||"\u2026")),Xe("div",{key:o.id,class:`wf-aichat-msg wf-aichat-msg--${o.role}`},n)}import{h as lt}from"weifuwu/vdom";var Lc=o=>e=>lt("div",{class:"wf-center wf-padding-xl wf-bg-secondary",style:{minHeight:"100vh"}},[lt(Qo,{},[lt("div",{class:"wf-stack wf-gap-sm wf-text-center wf-margin-bottom-lg"},[e.logo?lt("div",{class:"wf-center"},e.logo):null,lt("div",{class:"wf-font-2xl wf-semibold"},e.title),e.subtitle?lt("div",{class:"wf-font-sm wf-text-secondary"},e.subtitle):null]),e.error?lt(Yo,{variant:"error"},e.error):null,lt("form",{class:"wf-auth-form",onSubmit:t=>{t.preventDefault(),e.onSubmit?.()}},[lt("div",{class:"wf-stack wf-gap-md"},[e.children,lt(Ye,{type:"submit",variant:"primary",loading:e.loading,disabled:e.loading,block:!0},e.submitLabel)])]),e.footer?lt("div",{class:"wf-text-center wf-margin-top-md wf-font-sm"},e.footer):null])]);import{h as Ee,Fragment as Hc}from"weifuwu/vdom";var Rc=/^https?:\/\//i;function Tr(o){let e=o.trim();return Rc.test(e)?e:null}function _e(o){let e=[],t=0,n="",r=()=>{n&&(e.push({type:"text",text:n}),n="")};for(;t<o.length;){let a=o[t];if(a==="`"){let s=o.indexOf("`",t+1);if(s>t){r(),e.push({type:"code",text:o.slice(t+1,s)}),t=s+1;continue}n+=a,t++;continue}if(a==="*"&&o[t+1]==="*"){let s=o.indexOf("**",t+2);if(s>t){r(),e.push({type:"bold",children:_e(o.slice(t+2,s))}),t=s+2;continue}}if(a==="~"&&o[t+1]==="~"){let s=o.indexOf("~~",t+2);if(s>t){r(),e.push({type:"del",children:_e(o.slice(t+2,s))}),t=s+2;continue}}if(a==="*"){let s=o.indexOf("*",t+1);if(s>t){r(),e.push({type:"italic",children:_e(o.slice(t+1,s))}),t=s+1;continue}}if(a==="["){let s=o.indexOf("]",t+1);if(s>t&&o[s+1]==="("){let i=o.indexOf(")",s+2);if(i>s){let l=o.slice(t+1,s),c=o.slice(s+2,i),f=Tr(c);if(f){r(),e.push({type:"link",href:f,children:_e(l)}),t=i+1;continue}n+=o.slice(t,i+1),t=i+1;continue}}}n+=a,t++}return r(),e}function Yn(o){let e=o.replace(/\r\n/g,`
24
+ ${V}`}],Z=null,ee=!1,ue=null,ie=!1,he=null,fe=V=>{ie&&!he?he=e.ui.openPopup({key:"editor-history",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{he=null,ie&&(ie=!1,e.render())}}):!ie&&he?(he.close(),he=null):he&&he.update(V)},Ae=V=>{let _=h.undoStack[V];if(!_)return;let J=_.before;for(let me of _.events)J=gn(J,me);for(;h.undoStack.length>V+1;)ur(h);d=J,ie=!1,S(d,null);let te=ze(d);H.current&&H.current(te),G(te),le("commit",{label:"time-travel",to:V}),e.render()},Se=null,In=V=>{Se=V},yt=null,_o=V=>{r&&V&&!yt?yt=e.ui.openPopup({key:"editor-link",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{yt=null,r&&(r=!1,e.render())}}):!r&&yt?(yt.close(),yt=null):yt&&V&&yt.update(V)},wt=null,Vo=V=>{i&&V&&!wt?wt=e.ui.openPopup({key:"editor-image",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{wt=null,i&&(i=!1,e.render())}}):!i&&wt?(wt.close(),wt=null):wt&&V&&wt.update(V)},Ze=null,so=V=>{ee&&V&&!Ze?Ze=e.ui.openPopup({key:"editor-ai-panel",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{Ze=null,ee&&(ee=!1,Z?.handle?.abort(),e.render())}}):!ee&&Ze?(Ze.close(),Ze=null):Ze&&V&&Ze.update(V)},Ce=(V,_)=>{if(!b)return;let J=je(b),te=J?.start??0,me=J&&J.start!==J.end?J.end:d.text.length,de=d.text.slice(te,me);if(console.log("[runAi] original:",JSON.stringify(de),"start:",te,"end:",me),!de.trim())return;Z?.handle?.abort(),ue=V,Z={action:V,start:te,end:me,original:de,revised:"",streaming:!0,error:null,handle:null},ee=!0,e.render();let nt=V.prompt({selection:de});le("ai-apply",{action:V.id,status:"start"});let Ht=xc(_.url,{messages:[{role:"user",content:nt}]},{headers:_.headers,onToken:Oe=>{Z&&(Z.revised+=Oe,e.render())},onDone:()=>{Z&&(Z.streaming=!1,le("ai-apply",{action:V.id,status:"done",chars:Z.revised.length}),e.render())},onError:Oe=>{Z&&(Z.streaming=!1,Z.error=Oe?.message??"AI \u8BF7\u6C42\u5931\u8D25",le("ai-apply",{action:V.id,status:"error",message:Z.error}),e.render())},onEvent:_.onEvent});Z&&(Z.handle=Ht)},io=V=>{let _=Z;if(!_||_.streaming||!_.revised.trim())return;if(ee=!1,Z=null,d.text.slice(_.start,_.end)!==_.original){le("ai-apply",{action:_.action.id,status:"rejected",reason:"stale-selection"}),e.render();return}let J=_.revised.trim();if(!J){le("ai-apply",{action:_.action.id,status:"rejected",reason:"empty"}),e.render();return}let te=d.embeds.filter(de=>de.at>=_.start&&de.at<_.end),me=d.blockProps.filter(de=>de.start>=_.start&&de.start<=_.end);A([{type:"ai-apply",start:_.start,end:_.end,original:_.original,revised:J,removedEmbeds:te,removedBlocks:me}],`ai-${_.action.id}`,{start:_.start+J.length,end:_.start+J.length}),le("ai-apply",{action:_.action.id,status:"accepted"}),e.render()},vt=(V,_)=>e.i18n?.components?.Editor?.[V]??_;return V=>{let{value:_="",onChange:J,onUpload:te,placeholder:me="",disabled:de=!1,minHeight:nt="200px",draftKey:Ht}=V,Oe=V.toolbar??Rs,De=s==="rich";H.current=J,Q=Ht??null;let ao=F=>{m=!0,J?.(F)},ya=(F,ce)=>{if(!de){if(ce&&(Se=ce),b?.focus(),F==="source"){De?(p=b?.innerHTML??_,s="source",e.render()):(s="rich",n={},m=!1,d=ot(_),e.render(),J?.(_));return}if(De){switch(F){case"bold":B("b");break;case"italic":B("i");break;case"underline":B("u");break;case"h1":W("h1");break;case"h2":W("h2");break;case"h3":W("h3");break;case"blockquote":W("quote");break;case"ul":W("ul");break;case"ol":W("ol");break;case"alignLeft":z("left");break;case"alignCenter":z("center");break;case"alignRight":z("right");break;case"hr":D("<hr>","hr");break;case"image":{i=!0,l="",e.render();return}case"link":{R();let we=je(b);if(!we||we.start===we.end){r=!0,a="",e.render();return}d.marks.some(qe=>qe.type==="link"&&qe.start<=we.start&&qe.end>=we.end)?(L(),U("",!0),e.render()):(r=!0,a="",e.render());return}case"clear":C();break;default:return}n=M(je(b)?.start??0),e.render()}}},as=F=>{r=!1,e.render(),F&&(L(),U(F),e.render())},ls=()=>{r=!1,a="",e.render()},wa=async F=>{let ce=F[0];if(ce){c=!0,e.render();try{let we=await te(ce);L(),D(`<img src="${we}" alt="">`,"img"),i=!1,l="",e.render()}catch{}finally{c=!1,e.render()}}},cs=F=>{i=!1,l="",e.render(),L(),D(`<img src="${F}" alt="">`,"img")},ds=()=>{i=!1,l="",e.render()},va=(F,ce)=>{f=!1,g=-1,u=-1,L(),D(Os(F,ce),"table"),e.render()},xa=(F,ce)=>{g=F,u=ce,e.render()},ka=()=>{g=-1,u=-1,e.render()},Ca=ne("button",{key:"table",class:"wf-editor-tb-btn",type:"button",title:"\u63D2\u5165\u8868\u683C","aria-label":"\u63D2\u5165\u8868\u683C","data-item":"table"},"\u229E"),Ma=f?Bs(g,u,va,xa,ka):null,Pa=ne(Vn,{key:"table",open:De&&!!f,onOpenChange:F=>{f=F,F&&R(),e.render()},content:Ma},Ca),Sa=()=>{if(de)return;let F=b;if(!F)return;let ce=ot(F.innerHTML);if(!(F.textContent??"").trim()&&!(F.querySelector?.("img,table,hr")??null)){if(d.text===""&&ce.text==="")return;k(),d=mn,F.innerHTML="",ao("");return}let Le=P(d,ce.text);if(Le===null){k(),d=ce,ao(ze(d));return}if(Le.length===0){let qe=ze(d);d=ce,ze(ce)!==qe&&ao(ze(ce));return}E(Le,ce),ao(ze(ce))},Ta=F=>{let ce=F.target.value;J?.(ce)},Ea=F=>{let ce=F.ctrlKey||F.metaKey;if(ce&&F.key.toLowerCase()==="z")F.preventDefault(),k(),Fs(h)&&($(),n=M(je(b)?.start??0),e.render());else if(ce&&F.key.toLowerCase()==="y")F.preventDefault(),k(),mr(h)&&(N(),n=M(je(b)?.start??0),e.render());else if(ce&&F.key==="Enter"){let we=V.ai;if(we&&!de&&De){F.preventDefault(),k();let Le=we.actions??q;Ce(ue??Le[0],we)}}},Ia=F=>{if(de||!De)return;if((F.ctrlKey||F.metaKey)&&["b","i","u"].includes(F.key.toLowerCase())){R(),B(F.key.toLowerCase()==="b"?"b":F.key.toLowerCase()==="i"?"i":"u"),n=M(je(b)?.start??0),e.render();return}n=M(je(b)?.start??0),e.render()},$a=()=>{if(!De)return;R();let F=je(b)?.start??0,ce=M(F);(n===null||!kc(n,ce))&&(n=ce,e.render())},Aa=()=>{R();let F=!1;r&&(r=!1,F=!0),i&&(i=!1,F=!0),F&&e.render()};_o(De&&r?ne("div",{class:"wf-editor-link-panel"},[ne("div",{class:"wf-editor-link-panel-title"},vt("linkTitle","\u63D2\u5165\u94FE\u63A5")),ne("input",{type:"url",class:"wf-editor-link-input",placeholder:"https://...",value:a,"data-editor-link-input":!0,onInput:F=>{a=F.target.value,e.render()},onKeyDown:F=>{F.key==="Enter"&&as(F.target.value),F.key==="Escape"&&ls()}}),ne("div",{class:"wf-editor-link-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",onClick:ls},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>as(a)},"\u786E\u5B9A")])]):null);let lo=[];te&&(lo.push(ne(nr,{accept:"image/*",multiple:!1,disabled:c,onChange:wa},ne("div",{class:"wf-editor-img-zone"},[ne("span",{class:"wf-editor-img-zone-icon"},"\u{1F5BC}"),ne("span",{class:"wf-editor-img-zone-text"},c?"\u4E0A\u4F20\u4E2D...":"\u70B9\u51FB\u6216\u62D6\u62FD\u4E0A\u4F20\u56FE\u7247")]))),lo.push(ne("span",{class:"wf-editor-img-or"},"\u6216"))),lo.push(ne("input",{type:"url",class:"wf-editor-link-input",placeholder:te?"\u7C98\u8D34\u56FE\u7247\u94FE\u63A5":"https://...",value:l,"data-image-input":!0,disabled:c||void 0,onInput:F=>{l=F.target.value,e.render()},onKeyDown:F=>{F.key==="Enter"&&cs(F.target.value),F.key==="Escape"&&ds()}})),Vo(De&&i?ne("div",{class:"wf-editor-link-panel"},[ne("div",{class:"wf-editor-link-panel-title"},vt("imageTitle","\u63D2\u5165\u56FE\u7247")),ne("div",{class:"wf-stack",style:"gap:8px"},lo),ne("div",{class:"wf-editor-link-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",disabled:c||void 0,onClick:ds},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:c||void 0,onClick:()=>cs(l)},te?"\u63D2\u5165":"\u786E\u5B9A")])]):null);let Ko=null;if(De){let F=["wf-editor-content",de&&"wf-editor-content--disabled",me&&"wf-editor-content--has-placeholder"].filter(Boolean).join(" "),ce=m;m&&b&&b.innerHTML===_&&(m=!1);let we=!m&&!ce,Le={class:F,contentEditable:!de,"data-placeholder":me||void 0,style:{minHeight:nt},onInput:Sa,onKeyDown:Ea,onKeyUp:Ia,onMouseUp:$a,onMouseDown:Aa,ref:v};if(we)if(K){K=!1;let qe=_===""?X():null;d=ot(qe??_),Le.innerHTML=ze(d),qe&&(m=!0,J?.(ze(d)))}else b&&_!==""&&ze(d)!==_&&(d=ot(_),m=!1),Le.innerHTML=ze(d);Ko=ne("div",Le)}else Ko=ne("textarea",{class:"wf-editor-source",value:_,disabled:de,style:{minHeight:nt},onInput:Ta});let Da={table:()=>Pa},$n=V.ai,La=($n?.actions??q).map(F=>({...F,label:vt(`ai-${F.id}`,F.label)})),jo=null,Fo=null,Ra=(F,ce)=>{let we=Zs(F,ce),Le=[],qe=0;for(let An of we)An.type==="equal"?Le.push(ne("span",{key:`e${qe++}`},An.text)):An.type==="delete"?Le.push(ne("del",{key:`d${qe++}`,class:"wf-editor-ai-diff-del"},An.text)):Le.push(ne("ins",{key:`i${qe++}`,class:"wf-editor-ai-diff-ins"},An.text));return ne("div",{class:"wf-editor-ai-panel-body wf-editor-ai-diff"},Le)};if(!de&&De&&(Fo=ne("button",{key:"hist",class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",ie?"wf-editor-tb-btn--active":""].filter(Boolean).join(" "),type:"button",title:"\u64CD\u4F5C\u5386\u53F2","aria-label":"\u64CD\u4F5C\u5386\u53F2","data-item":"history",onClick:F=>{In(F.currentTarget),ie=!ie,e.render()}},"\u{1F558}"),ie)){let F=[],ce=h.undoStack.slice().reverse();for(let we=0;we<ce.length;we++){let Le=ce[we],qe=h.undoStack.length-1-we;F.push(ne("button",{key:`u-${qe}`,class:["wf-editor-hist-item",we===0?"wf-editor-hist-item--current":""].filter(Boolean).join(" "),type:"button",onClick:()=>Ae(qe)},[ne("span",{class:"wf-editor-hist-label"},Le.label),ne("span",{class:"wf-editor-hist-time"},new Date(Le.ts??Date.now()).toLocaleTimeString())]))}for(let we=h.redoStack.length-1;we>=0;we--){let Le=h.redoStack[we];F.push(ne("button",{key:`r-${we}`,class:"wf-editor-hist-item wf-editor-hist-item--redo",type:"button",onClick:()=>{for(;mr(h)&&h.redoStack.length>we;)N();ie=!1,e.render()}},[ne("span",{class:"wf-editor-hist-label"},`\u21A9 ${Le.label}`)]))}fe(F.length?ne("div",{class:"wf-editor-hist-panel"},F):ne("div",{class:"wf-editor-hist-panel wf-editor-hist-empty"},"\u6682\u65E0\u64CD\u4F5C\u8BB0\u5F55"))}if($n&&!de&&De&&(jo=ne("div",{class:"wf-editor-ai-bar"},[ne("span",{class:"wf-editor-tb-sep",key:"ai-sep"}),...La.map(F=>ne("button",{key:`ai-${F.id}`,class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",Z?.streaming&&Z?.action.id===F.id?"wf-editor-tb-btn--active":""].filter(Boolean).join(" "),type:"button",title:F.label,"aria-label":`AI ${F.label}`,"aria-expanded":String(!!ee),"data-ai-item":F.id,disabled:(Z?.streaming?!0:void 0)??void 0,onClick:ce=>{In(ce.currentTarget),Ce(F,$n)}},F.label))]),ee&&Z)){let F=Z,ce=ne("div",{class:"wf-editor-ai-panel"},[ne("div",{class:"wf-editor-ai-panel-head"},[ne("span",{},`AI ${F.action.label}`),ne("span",{class:"wf-editor-ai-panel-status"},F.streaming?vt("generating","\u751F\u6210\u4E2D\u2026"):F.error?vt("failed","\u5931\u8D25"):"")]),F.error?ne("div",{class:"wf-editor-ai-panel-error"},F.error):!F.streaming&&F.revised?Ra(F.original,F.revised):ne("div",{class:"wf-editor-ai-panel-body"},F.revised||"\u2026"),ne("div",{class:"wf-editor-ai-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",onClick:()=>{ee=!1,Z=null,e.render()}},vt("reject","\u62D2\u7EDD")),F.error?ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>Ce(F.action,$n)},vt("retry","\u91CD\u8BD5")):ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:F.streaming||!F.revised.trim()?!0:void 0,onClick:()=>io($n)},vt("accept","\u63A5\u53D7"))])]);so(ce)}return!ie&&he&&(he.close(),he=null),!ee&&Ze&&(Ze.close(),Ze=null),ne("div",{class:`wf-editor${de?" wf-editor--disabled":""}`},[!de&&Oe.length>0?Ns(Oe,n??{},!De,ya,Da,[...jo?[jo]:[],...Fo?[Fo]:[]]):null,Ko,ne("input",{type:"hidden",value:_,"aria-hidden":"true"})])}};function kc(o,e){if(o===e)return!0;if(!o||!e)return!1;let t=Object.keys(o);if(t.length!==Object.keys(e).length)return!1;for(let n of t)if(o[n]!==e[n])return!1;return!0}import{createClientBrowser as Cc}from"weifuwu/vdom";import{h as ko}from"weifuwu/vdom";var Xn=Cc(),Mc=[{value:"default",label:"\u9ED8\u8BA4"},{value:"minimal",label:"\u6781\u7B80"},{value:"compact",label:"\u7D27\u51D1"},{value:"rounded",label:"\u5706\u6DA6"}],ci="wf_theme",Pc="wf_theme_preset";function di(o){let e=Xn?.storageGet(o)??null;return e==="light"||e==="dark"||e==="auto"?e:null}function ai(o,e){Xn?.storageSet(o,e)}function wr(o){let e=Xn?.rootElement();e&&(o==="auto"?e.removeAttribute("data-theme"):e.setAttribute("data-theme",o))}function Sc(o){let e=Xn?.storageGet(o)??null;return e==="minimal"||e==="compact"||e==="rounded"||e==="default"?e:null}function li(o){let e=Xn?.rootElement();e&&(o==="default"?e.removeAttribute("data-preset"):e.setAttribute("data-preset",o))}function Tc(){let o=di(ci);return o||"auto"}var Ec=(o,e)=>{let t=o.storageKey??ci,n=o.storageKey?`${o.storageKey}_preset`:Pc,r=o.mode??di(t)??"auto",a=o.preset??Sc(n)??"default";return wr(r),li(a),s=>{let i=e?.i18n?.components?.ThemeSwitch??{},c=[{value:"auto",label:i.auto??"\u81EA\u52A8"},{value:"light",label:i.light??"\u4EAE\u8272"},{value:"dark",label:i.dark??"\u6697\u8272"}].map(p=>ko("button",{type:"button",class:`wf-theme-seg${r===p.value?" wf-theme-seg--active":""}`,role:"radio","aria-checked":String(r===p.value),"aria-label":p.label,onClick:()=>{r!==p.value&&(r=p.value,wr(r),ai(t,r),s.onChange?.(r),e.render())}},p.label)),f=Mc.map(p=>ko("button",{type:"button",class:`wf-theme-seg wf-theme-seg--preset${a===p.value?" wf-theme-seg--active":""}`,role:"radio","aria-checked":String(a===p.value),"aria-label":p.label,onClick:()=>{a!==p.value&&(a=p.value,li(a),ai(n,a),s.onPresetChange?.(a),e.render())}},p.label)),u=s.preset!==void 0||s.onPresetChange!==void 0?[c,ko("div",{class:"wf-theme-preset-row",role:"radiogroup","aria-label":"\u9884\u8BBE\u4E3B\u9898"},f)]:c;return ko("div",{class:"wf-theme-switch",role:"radiogroup","aria-label":i.label??"\u4E3B\u9898\u5207\u6362"},u)}};import{h as at}from"weifuwu/vdom";import{h as oe}from"weifuwu/vdom";function pi(o){return o===null?"wf-json-null":typeof o=="string"?"wf-json-string":typeof o=="number"?"wf-json-number":typeof o=="boolean"?"wf-json-boolean":""}function fi(o){return o===null?"null":typeof o=="string"?JSON.stringify(o):String(o)}var vr=(o,e)=>{let t={},n,r=(s,i)=>{t[s]=i===void 0?!t[s]:!i,e.render()},a=(s,i,l)=>{if(l){l(s,i);return}e.browser?.copyText(`${s} = ${JSON.stringify(i)}`)};return s=>{let{data:i,defaultExpandDepth:l=2,maxKeys:c=100,rootName:f="root",onCopy:g,className:u}=s,p=(m,b,v)=>{a(m,b,g);let y=v.currentTarget?.querySelector("path"),x=y?.getAttribute("d");y&&x&&(y.setAttribute("d","M20 6 9 17l-5-5"),e.browser?.timeout(()=>y.setAttribute("d",x),1e3))},d=(m,b,v,w)=>{if(typeof m=="object"&&m!==null){let y=t[b]===!0||v>=l&&t[b]!==!1;if(y){let S=Array.isArray(m)?`Array(${m.length})`:"Object";return oe("div",{class:"wf-json-row wf-json-collapse","data-path":b,role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:I=>{I.stopPropagation(),r(b,y)}},oe(O,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-summary"},`${S} {\u2026}`),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${b}`,tabIndex:-1,onClick:I=>{I.stopPropagation(),p(b,m,I)}},oe(O,{name:n===b?"check":"copy",size:10}))])}if(Array.isArray(m)){let S=m.map((I,A)=>d(I,`${b}[${A}]`,v+1,String(A)));return oe("div",{class:"wf-json-node","data-path":b},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:I=>{(I.key==="Enter"||I.key===" ")&&(I.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:I=>{I.stopPropagation(),r(b,y)}},oe(O,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-node-summary"},`Array(${m.length})`)]),oe("div",{class:"wf-json-children"},S)])}let x=Object.entries(m),k=x.length>c,P=(k?x.slice(0,c):x).map(([S,I])=>d(I,`${b}.${S}`,v+1,S));return k&&P.push(oe("div",{class:"wf-json-more"},`+${x.length-c} \u9879\uFF08\u61D2\u5C55\u5F00\uFF09`)),oe("div",{class:"wf-json-node","data-path":b},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(b,y),onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),r(b,y))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:S=>{S.stopPropagation(),r(b,y)}},oe(O,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:"wf-json-node-summary"},`Object(${x.length})`)]),oe("div",{class:"wf-json-children"},P)])}return oe("div",{class:"wf-json-row","data-path":b},[oe("span",{class:"wf-json-toggle-placeholder"}),oe("span",{class:"wf-json-key"},`${w}:`),oe("span",{class:`wf-json-value ${pi(m)}`},fi(m)),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${b}`,tabIndex:-1,onClick:y=>p(b,m,y)},oe(O,{name:"copy",size:10}))])},h;if(typeof i=="object"&&i!==null){let m=t[f]===!0;h=m?oe("div",{class:"wf-json-row wf-json-collapse","data-path":f,role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(O,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-summary"},"Object {\u2026}")]):Array.isArray(i)?oe("div",{class:"wf-json-node","data-path":f},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(O,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-node-summary"},`Array(${i.length})`)]),oe("div",{class:"wf-json-children"},i.map((b,v)=>d(b,`${f}[${v}]`,1,String(v))))]):oe("div",{class:"wf-json-node","data-path":f},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabindex:0,tabIndex:0,onClick:()=>r(f,m),onKeyDown:b=>{(b.key==="Enter"||b.key===" ")&&(b.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:b=>{b.stopPropagation(),r(f,m)}},oe(O,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${f}:`),oe("span",{class:"wf-json-node-summary"},`Object(${Object.keys(i).length})`)]),oe("div",{class:"wf-json-children"},(()=>{let b=Object.entries(i),v=b.length>c,w=(v?b.slice(0,c):b).map(([y,x])=>d(x,`${f}.${y}`,1,y));return v&&w.push(oe("div",{class:"wf-json-more"},`+${b.length-c} \u9879\uFF08\u61D2\u5C55\u5F00\uFF09`)),w})())])}else h=oe("div",{class:"wf-json-row"},[oe("span",{class:`wf-json-value ${pi(i)}`},fi(i))]);return oe("div",{class:["wf-json-viewer",u].filter(Boolean).join(" ")},[h])}};var Ic={running:"settings",ok:"check",error:"close"},xr=(o,e)=>t=>{let{call:n,progress:r,result:a,renderArgs:s}=t,i=a?a.ok?"ok":"error":"running",l=s?s(n.args):at(vr,{data:n.args,defaultExpandDepth:1,maxKeys:50,rootName:"args"}),c=r?[r.message?at("div",{class:"wf-toolcall-msg"},`${r.message} (${r.step}/${r.total})`):null,at("div",{class:"wf-toolcall-bar",role:"progressbar","aria-valuenow":r.step,"aria-valuemax":r.total},[at("div",{class:"wf-toolcall-bar-fill",style:{width:`${Math.min(100,r.step/Math.max(1,r.total)*100)}%`}})])]:null,f=a&&!a.ok&&a.error?at("div",{class:"wf-toolcall-error"},`${a.error.code}: ${a.error.message}`):null;return at("div",{class:`wf-toolcall wf-toolcall--${i}`},[at("div",{class:"wf-toolcall-header"},[at("span",{class:`wf-toolcall-icon wf-toolcall-icon--${i}`},at(O,{name:Ic[i]})),at("span",{class:"wf-toolcall-name"},n.name)]),at("div",{class:"wf-toolcall-body"},[l,c,f].filter(Boolean))])};import{h as $e}from"weifuwu/vdom";import{h as Pe}from"weifuwu/vdom";import{h as rt}from"weifuwu/vdom";var Co=(o,e)=>{let t,n,r=!1,a=()=>{};e.ui.hold(()=>{clearTimeout(t),clearInterval(n)});let s=l=>{clearTimeout(t),clearInterval(n),r=!1,t=setTimeout(()=>{r=!0,n=setInterval(()=>a(l),60)},500)},i=()=>{clearTimeout(t),clearInterval(n)};return l=>{let{value:c=null,onChange:f,min:g,max:u,step:p=1,precision:d,label:h,name:m,placeholder:b,disabled:v,error:w,hint:y,required:x,className:k}=l,E=U=>{let D=U;return g!=null&&(D=Math.max(g,D)),u!=null&&(D=Math.min(u,D)),d!=null&&(D=Number(D.toFixed(d))),D},P=U=>{if(v)return;f?.(E(Number(((c??0)+U*p).toFixed(10))))};a=P;let S=U=>{if(v)return;let D=U.target.value.trim();if(D===""||D==="-"){f?.(null);return}if(!/^-?\d*\.?\d+$/.test(D))return;let C=Number(D);Number.isNaN(C)||f?.(E(C))},I=c==null?"":String(d!=null?c.toFixed(d):c),A=h?rt("label",{class:"wf-inputnumber-label"},[h,x?rt("span",{class:"wf-inputnumber-req"},"*"):null].filter(Boolean)):null,$=rt("input",{class:"wf-inputnumber-input",type:"text",inputMode:"decimal",value:I,placeholder:b,name:m,disabled:v,onInput:S,onBlur:()=>{c!=null&&f?.(E(c))}}),N=rt("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u589E\u52A0",disabled:v,onClick:()=>{if(r){r=!1;return}P(1)},onPointerDown:()=>s(1),onPointerUp:i,onPointerLeave:i},rt(O,{name:"chevron-up",size:12})),B=rt("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u51CF\u5C11",disabled:v,onClick:()=>{if(r){r=!1;return}P(-1)},onPointerDown:()=>s(-1),onPointerUp:i,onPointerLeave:i},rt(O,{name:"chevron-down",size:12})),W=rt("div",{class:`wf-inputnumber${v?" wf-inputnumber--disabled":""}${w?" wf-inputnumber--err":""}${k?` ${k}`:""}`},[$,rt("div",{class:"wf-inputnumber-btns"},[N,B])]),z=[];return A&&z.push(A),z.push(W),w&&z.push(rt("div",{class:"wf-inputnumber-err"},w)),y&&!w&&z.push(rt("div",{class:"wf-inputnumber-hint"},y)),rt("div",{class:"wf-inputnumber-wrap"},z)}};function kr(o,e){console.warn(`[JsonSchemaForm] \u5B57\u6BB5 "${o}" \u4E0D\u652F\u6301 ${e}\u2014\u2014\u964D\u7EA7\u4E3A\u6587\u672C\u8F93\u5165`)}function $c(o){return{...o??{}}}function yn(o,e,t){let n=o;for(let r=0;r<e.length-1;r++){let a=e[r];(n[a]==null||typeof n[a]!="object")&&(n[a]={}),n=n[a]}n[e[e.length-1]]=t}function Vt(o,e){let t=o;for(let n of e){if(t==null||typeof t!="object")return;t=t[n]}return t}function Mo(o,e,t){let n=Vt(o,e.slice(0,-1));n&&typeof n=="object"&&(n[e[e.length-1]]=t)}function Ac(o,e,t=!1){if(t&&(e==null||e===""))return"\u5FC5\u586B";if(!(e==null||e==="")){if(o.type==="number"||o.type==="integer"){let n=Number(e);return Number.isNaN(n)?"\u5FC5\u987B\u662F\u6570\u5B57":o.minimum!=null&&n<o.minimum?`\u4E0D\u80FD\u5C0F\u4E8E ${o.minimum}`:o.maximum!=null&&n>o.maximum?`\u4E0D\u80FD\u5927\u4E8E ${o.maximum}`:void 0}if(typeof e=="string"){if(o.minLength!=null&&e.length<o.minLength)return`\u81F3\u5C11 ${o.minLength} \u4E2A\u5B57\u7B26`;if(o.maxLength!=null&&e.length>o.maxLength)return`\u6700\u591A ${o.maxLength} \u4E2A\u5B57\u7B26`}if(o.enum?.length&&!o.enum.includes(e))return"\u4E0D\u5728\u5141\u8BB8\u503C\u8303\u56F4\u5185"}}var Cr=(o,e)=>{let t=$c(o.value);function n(){e.render(),o.onChange?.(t)}function r(s,i,l,c,f,g=!1){let u=f[l.join(".")],p=i.title??s;if(i.enum?.length){let d=i.enum.map(h=>({value:String(h),label:String(h)}));return Pe(pn,{key:s,label:p,required:g,error:u,hint:i.description},Pe(fo,{value:c==null?void 0:String(c),options:d,error:u,onChange:h=>{yn(t,l,h==null?void 0:i.enum?.find(m=>String(m)===h)),n()}}))}switch(i.type){case"number":case"integer":return Pe(pn,{key:s,label:p,required:g,error:u,hint:i.description},Pe(Co,{value:c==null?null:Number(c),min:i.minimum,max:i.maximum,error:u,onChange:d=>{yn(t,l,d??void 0),n()}}));case"boolean":return Pe(pn,{key:s,label:p,required:g,error:u,hint:i.description},Pe(uo,{checked:!!c,onChange:d=>{yn(t,l,d),n()}}));case"object":return Pe("div",{key:s,class:"wf-jsf-obj"},[Pe("div",{class:"wf-jsf-obj-title"},[p,g?Pe("span",{class:"wf-field-req"},"*"):null]),...Object.entries(i.properties??{}).map(([d,h])=>r(d,h,[...l,d],Vt(t,[...l,d]),f,i.required?.includes(d)))]);case"array":{let d=Array.isArray(c)?c:[],h=d.map((m,b)=>{let v=[...l,String(b)];return Pe("div",{key:b,class:"wf-jsf-arr-item"},[a(String(b),i.items??{},v,d[b],f),Pe("button",{type:"button",class:"wf-jsf-arr-del","aria-label":`\u5220\u9664 ${p} \u7B2C ${b+1} \u9879`,onClick:()=>{let w=Array.isArray(Vt(t,l))?[...Vt(t,l)]:[];w.splice(b,1),yn(t,l,w),n()}},Pe(O,{name:"trash"}))])});return Pe("div",{key:s,class:"wf-jsf-arr"},[Pe("div",{class:"wf-jsf-obj-title"},[p,Pe("span",{class:"wf-jsf-arr-add",role:"button",tabindex:0,"aria-label":`\u6DFB\u52A0 ${p} \u9879`,onClick:()=>{let m=Array.isArray(Vt(t,l))?[...Vt(t,l)]:[];m.push(void 0),yn(t,l,m),n()},onKeyDown:m=>{(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),m.target.click())}},Pe(O,{name:"plus"}))]),...h])}default:return i.type&&i.type!=="string"&&kr(s,`type "${i.type}"`),i.$ref&&kr(s,`$ref \u5F15\u7528\uFF08${i.$ref}\uFF09`),Pe(pn,{key:s,label:p,required:g,error:u,hint:i.description},Pe(co,{value:c==null?"":String(c),onInput:d=>{yn(t,l,d.target.value),n()}}))}}function a(s,i,l,c,f){if(i.enum?.length){let g=i.enum.map(u=>({value:String(u),label:String(u)}));return Pe(fo,{value:c==null?void 0:String(c),options:g,onChange:u=>{Mo(t,l,i.enum?.find(p=>String(p)===u)),n()}})}switch(i.type){case"number":case"integer":return Pe(Co,{value:c==null?null:Number(c),onChange:g=>{Mo(t,l,g??void 0),n()}});case"boolean":return Pe(uo,{checked:!!c,onChange:g=>{Mo(t,l,g),n()}});case"object":kr(l.join("."),"\u6570\u7EC4\u5BF9\u8C61 items\uFF08\u5BF9\u8C61\u6570\u7EC4\uFF09");break;default:return Pe(co,{value:c==null?"":String(c),onInput:g=>{Mo(t,l,g.target.value),n()}})}}return s=>{let i=s.schema,l={};function c(u,p,d=!1){if(u.type==="object"){for(let[m,b]of Object.entries(u.properties??{}))c(b,[...p,m],u.required?.includes(m));return}let h=Ac(u,Vt(t,p),d);h&&(l[p.join(".")]=h)}for(let[u,p]of Object.entries(i.properties??{}))c(p,[u],i.required?.includes(u));let f=Object.entries(i.properties??{}).map(([u,p])=>r(u,p,[u],Vt(t,[u]),l,i.required?.includes(u))),g=s.onSubmit?Pe("button",{type:"button",class:"wf-btn wf-btn--primary wf-jsf-submit",onClick:()=>{Object.keys(l).length>0||s.onSubmit?.(t)}},s.submitLabel??"\u63D0\u4EA4"):null;return Pe("div",{class:"wf-jsf"},[i.title?Pe("div",{class:"wf-jsf-title"},i.title):null,...f,g])}};var Dc={pending:"\u7B49\u5F85\u5BA1\u6279",approved:"\u5DF2\u6279\u51C6",rejected:"\u5DF2\u62D2\u7EDD",timeout:"\u5BA1\u6279\u8D85\u65F6"},Mr=(o,e)=>{let t="",n=!1,r=!1;return a=>{let{request:s,status:i="pending",onApprove:l,onReject:c,renderDetail:f,loading:g,argsSchema:u}=a,p=f?f(s):[$e("div",{class:"wf-approval-name"},s.name),$e("code",{class:"wf-approval-args"},JSON.stringify(s.args))],d=u&&r?$e("div",{class:"wf-approval-modify"},[$e(Cr,{schema:u,value:s.args,submitLabel:"\u4EE5\u4FEE\u6539\u540E\u53C2\u6570\u6279\u51C6",onSubmit:m=>l?.(m)}),$e("button",{type:"button",class:"wf-approval-modify-cancel wf-btn wf-btn--secondary wf-btn--sm",onClick:()=>{r=!1,e.render()}},"\u53D6\u6D88\u4FEE\u6539")]):null,h=i==="pending"?$e("div",{class:"wf-approval-actions"},[n?$e("div",{class:"wf-approval-note"},[$e("input",{class:"wf-approval-note-input",placeholder:"\u5907\u6CE8\uFF08\u62D2\u7EDD\u539F\u56E0\uFF0C\u5C06\u8FDB\u5165 agent \u4E0A\u4E0B\u6587\uFF09\u2026","aria-label":"\u62D2\u7EDD\u5907\u6CE8",value:t,disabled:g||void 0,onInput:m=>{t=m.target.value}})]):null,$e("div",{class:"wf-approval-btns"},[$e("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:g||void 0,onClick:g?void 0:()=>l?.(void 0)},g?"\u63D0\u4EA4\u4E2D\u2026":"\u5141\u8BB8"),u&&!r?$e("button",{class:"wf-btn wf-btn--secondary wf-btn--sm wf-approval-modify-btn",type:"button",disabled:g||void 0,onClick:g?void 0:()=>{r=!0,e.render()}},"\u4FEE\u6539\u53C2\u6570"):null,$e("button",{class:"wf-btn wf-btn--danger wf-btn--sm",type:"button",disabled:g||void 0,onClick:g?void 0:()=>{if(!n){n=!0,e.render();return}c?.(t)}},n?"\u786E\u8BA4\u62D2\u7EDD":"\u62D2\u7EDD"),n?$e("button",{class:"wf-btn wf-btn--secondary wf-btn--sm",type:"button",disabled:g||void 0,onClick:()=>{n=!1,t="",e.render()}},"\u53D6\u6D88"):null].filter(Boolean))].filter(Boolean)):$e("div",{class:`wf-approval-status wf-approval-status--${i}`},Dc[i]);return $e("div",{class:`wf-approval wf-approval--${i}`},[$e("div",{class:"wf-approval-header"},[$e("span",{class:"wf-approval-icon"},$e(O,{name:i==="pending"?"pause":i==="approved"?"check":"close"})),$e("span",{class:"wf-approval-title"},"\u5DE5\u5177\u5BA1\u6279")]),$e("div",{class:"wf-approval-detail"},p),s.reason?$e("div",{class:"wf-approval-reason"},s.reason):null,h,d])}};import{createClientBrowser as Lc}from"weifuwu/vdom";import{h as Xe}from"weifuwu/vdom";import{h as Jt}from"weifuwu/vdom";var Pr=(o,e)=>{let t=!!o.defaultExpanded;return n=>{let{content:r,streaming:a,label:s="\u5DF2\u601D\u8003"}=n,i=()=>{t=!t,e.render()};return Jt("div",{class:`wf-reasoning${a?" wf-reasoning--streaming":""}`},[Jt("button",{type:"button",class:"wf-reasoning-toggle","aria-expanded":t,onClick:i,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),i())}},[Jt("span",{class:`wf-reasoning-chevron${t?" wf-reasoning-chevron--open":""}`},Jt(O,{name:"chevron-down"})),Jt("span",{class:"wf-reasoning-label"},a?`${s}\u2026`:s),a?Jt("span",{class:"wf-reasoning-dot","aria-hidden":"true"}):null]),Jt("div",{class:`wf-reasoning-body${t?" wf-reasoning-body--open":""}`,hidden:!t},r)])}};import{h as wn}from"weifuwu/vdom";var Sr=(o,e)=>t=>{let n={send:"\u53D1\u9001",stop:"\u505C\u6B62",retry:"\u91CD\u8BD5",placeholder:"\u8F93\u5165\u6D88\u606F\uFF0C\u56DE\u8F66\u53D1\u9001\u2026",...t.labels},r=null,a=e.ui.useControlledInput({value:t.value??"",onChange:t.onChange,name:"ChatInput"});t.onControl&&t.onControl({setKeyword:c=>{a.setKeyword(c)},setValue:c=>{a.setKeyword(c),t.onChange?.(c)}});let s=!1,i=()=>{let c=a.keyword.trim();c&&(a.setKeyword(""),r&&(r.value=""),t.onSend(c))},l={class:"wf-chat-input",value:a.keyword,ref:c=>{r=c},placeholder:n.placeholder,disabled:t.disabled,onInput:c=>{s||c.isComposing||(a.setKeyword(c.target.value),t.onChange?.(c.target.value))},onCompositionStart:()=>{s=!0},onCompositionEnd:c=>{s=!1;let f=c.target?.value??"";a.setKeyword(f),t.onChange?.(f)},onKeyDown:c=>{if(!t.onKeyInterceptFn?.(c)&&c.key==="Enter"&&!(s||c.isComposing)){if(c.ctrlKey||c.metaKey){c.preventDefault(),i();return}t.multiline&&c.shiftKey||(c.preventDefault(),i())}}};return wn("div",{class:"wf-chat-inputbar"},[t.multiline?wn("textarea",{...l,rows:1,style:{resize:"none"}}):wn("input",{...l,type:"text"}),t.actions??null,t.streaming?wn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>t.onStop?.()},n.stop):wn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>i()},n.send),!t.streaming&&t.error?wn("button",{class:"wf-btn wf-btn--danger wf-btn--sm",type:"button",onClick:()=>t.onRetry?.()},n.retry):null])};var Rc={send:"\u53D1\u9001",stop:"\u505C\u6B62",retry:"\u91CD\u8BD5",thinking:"\u{1F914} \u601D\u8003\u4E2D\u2026",runningTool:o=>o?`\u6267\u884C\u5DE5\u5177 ${o}`:"\u6267\u884C\u5DE5\u5177\u2026",tokens:o=>`tokens: ${o.prompt_tokens}\u2192${o.completion_tokens}`,error:o=>`${o.code}: ${o.message}`,placeholder:"\u8F93\u5165\u6D88\u606F\uFF0C\u56DE\u8F66\u53D1\u9001\u2026",empty:"\u8F93\u5165\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD\u3002"},Nc=(o,e)=>{let t=e.browser??Lc(),n,r=!0,a=o.chat,s,i=()=>{s?.();let p=a;s=p?.subscribe?p.subscribe(()=>e.render()):void 0};i();let l=p=>{p||(s?.(),s=void 0)},c=e.ui.useVisualViewport(),f=()=>{n&&(n.scrollTop=n.scrollHeight)},g=e.ui.useScrollPosition({getScroller:()=>n??null}),u=p=>{p&&!n?(n=p,g.refresh(),queueMicrotask(f)):!p&&n&&(n=void 0)};return p=>{let{chat:d,raiseOnKeyboard:h=!1}=p,m={...Rc,...p.labels};d!==a&&(a=d,i()),n&&(r=n.scrollHeight-g.y-n.clientHeight<48),r&&queueMicrotask(f);let b=d.messages??[],v=[];b.length===0&&v.push(Xe("p",{class:"wf-aichat-empty"},m.empty));for(let w of b)v.push(Hc(w,p,m));return d.step&&v.push(Xe("div",{class:"wf-aichat-status"},d.step.type==="llm"?m.thinking:m.runningTool(d.step.name))),d.usage&&v.push(Xe("div",{class:"wf-aichat-usage"},m.tokens(d.usage))),d.error&&v.push(Xe("div",{class:"wf-aichat-error"},m.error(d.error))),Xe("div",{class:"wf-aichat",ref:l},[Xe("div",{class:"wf-aichat-list",style:{maxHeight:p.maxHeight??"70vh"},ref:u},v),Xe("div",{class:`wf-aichat-inputbar${c.keyboardOpen&&h?" wf-aichat-inputbar--raised":""}`,style:c.keyboardOpen&&h?{position:"fixed",left:"0",right:"0",bottom:`${Math.max(0,t?.viewportHeight()-(c.height+c.offsetTop))+8}px`,zIndex:"var(--wf-z-popover)"}:void 0},[Xe(Sr,{value:d.input??"",onChange:w=>{d.setInput(w)},onSend:w=>{d.setInput(w),d.send()},streaming:d.streaming,onStop:()=>d.stop(),error:d.error?d.error.message:null,onRetry:()=>d.retry(),labels:{send:m.send,stop:m.stop,retry:m.retry,placeholder:m.placeholder}})])])}};function Hc(o,e,t){let n=[];if(o.toolCalls?.length){let r=o.toolCalls.map((a,s)=>Xe(xr,{key:`${o.id}-tool-${s}`,call:a.call,progress:a.progress,result:a.result,renderArgs:e.renderToolArgs}));n.push(Xe("div",{class:"wf-aichat-tools"},r))}if(o.approval){let r=Xe(Mr,{request:o.approval,argsSchema:e.approveSchema?.(o.approval),onApprove:a=>e.chat.approve(a?"modified":"approved",void 0,a),onReject:a=>e.chat.approve("rejected",a??"\u7528\u6237\u62D2\u7EDD")});n.push(Xe("div",{class:"wf-aichat-approval"},r))}return o.reasoning&&n.push(Xe(Pr,{content:o.reasoning,streaming:o.status==="streaming"})),n.push(Xe("div",{class:`wf-aichat-bubble wf-aichat-bubble--${o.role}`},e.renderMessage?e.renderMessage(o):o.content||"\u2026")),Xe("div",{key:o.id,class:`wf-aichat-msg wf-aichat-msg--${o.role}`},n)}import{h as lt}from"weifuwu/vdom";var Oc=o=>e=>lt("div",{class:"wf-center wf-padding-xl wf-bg-secondary",style:{minHeight:"100vh"}},[lt(Qo,{style:{width:"100%",maxWidth:"360px"}},[lt("div",{class:"wf-stack wf-gap-sm wf-text-center wf-margin-bottom-lg"},[e.logo?lt("div",{class:"wf-center"},e.logo):null,lt("div",{class:"wf-font-2xl wf-semibold"},e.title),e.subtitle?lt("div",{class:"wf-font-sm wf-text-secondary"},e.subtitle):null]),e.error?lt(Yo,{variant:"error"},e.error):null,lt("form",{onSubmit:t=>{t.preventDefault(),e.onSubmit?.()}},[lt("div",{class:"wf-stack wf-gap-md"},[e.children,lt(Ye,{type:"submit",variant:"primary",loading:e.loading,disabled:e.loading,block:!0},e.submitLabel)])]),e.footer?lt("div",{class:"wf-text-center wf-margin-top-md wf-font-sm"},e.footer):null])]);import{h as Ee,Fragment as _c}from"weifuwu/vdom";var Bc=/^https?:\/\//i;function Tr(o){let e=o.trim();return Bc.test(e)?e:null}function _e(o){let e=[],t=0,n="",r=()=>{n&&(e.push({type:"text",text:n}),n="")};for(;t<o.length;){let a=o[t];if(a==="`"){let s=o.indexOf("`",t+1);if(s>t){r(),e.push({type:"code",text:o.slice(t+1,s)}),t=s+1;continue}n+=a,t++;continue}if(a==="*"&&o[t+1]==="*"){let s=o.indexOf("**",t+2);if(s>t){r(),e.push({type:"bold",children:_e(o.slice(t+2,s))}),t=s+2;continue}}if(a==="~"&&o[t+1]==="~"){let s=o.indexOf("~~",t+2);if(s>t){r(),e.push({type:"del",children:_e(o.slice(t+2,s))}),t=s+2;continue}}if(a==="*"){let s=o.indexOf("*",t+1);if(s>t){r(),e.push({type:"italic",children:_e(o.slice(t+1,s))}),t=s+1;continue}}if(a==="["){let s=o.indexOf("]",t+1);if(s>t&&o[s+1]==="("){let i=o.indexOf(")",s+2);if(i>s){let l=o.slice(t+1,s),c=o.slice(s+2,i),f=Tr(c);if(f){r(),e.push({type:"link",href:f,children:_e(l)}),t=i+1;continue}n+=o.slice(t,i+1),t=i+1;continue}}}n+=a,t++}return r(),e}function Yn(o){let e=o.replace(/\r\n/g,`
25
25
  `).split(`
26
- `),t=[],n=0,r=a=>{a.type==="paragraph"&&a.inline.length===0||t.push(a)};for(;n<e.length;){let a=e[n];if(/^\s*$/.test(a)){n++;continue}if(/^```/.test(a.trim())){let d=a.trim().slice(3).trim(),p=[];for(n++;n<e.length&&!/^\s*```/.test(e[n]);)p.push(e[n]),n++;n++,r({type:"code",lang:d||void 0,code:p.join(`
27
- `)+(p.length?`
28
- `:"")});continue}let s=a.match(/^(#{1,4})\s+(.+)$/);if(s){r({type:"heading",level:s[1].length,inline:_e(s[2])}),n++;continue}if(/^\s*-{3,}\s*$/.test(a)){r({type:"hr"}),n++;continue}if(/^\s*>/.test(a)){let d=[];for(;n<e.length&&/^\s*>/.test(e[n]);)d.push(e[n].replace(/^\s*>\s?/,"")),n++;r({type:"quote",inline:_e(d.join(`
29
- `))});continue}if(a.match(/^\|(.+)\|\s*$/)&&n+1<e.length&&/^\|?[\s:|-]+\|?[\s:|-]*$/.test(e[n+1])&&e[n+1].includes("-")){let d=b=>b.replace(/^\|/,"").replace(/\|\s*$/,"").split("|").map(v=>v.trim()),p=d(a),h=d(e[n+1]).map(b=>{let v=b.startsWith(":"),w=b.endsWith(":");return v&&w?"center":w?"right":"left"});n+=2;let m=[];for(;n<e.length&&/^\|(.+)\|\s*$/.test(e[n]);)m.push(d(e[n])),n++;r({type:"table",headers:p,rows:m,aligns:h});continue}let l=a.match(/^\s*[-*+]\s+(.+)$/),c=/^\s*[-*+]\s+\[([ xX])]\s+(.+)$/;if(a.match(c)||l){let d=[],p=[],h=m=>{let b=m.match(c);if(b)d.push(_e(b[2])),p.push(b[1].toLowerCase()==="x");else{let v=m.match(/^\s*[-*+]\s+(.+)$/);d.push(_e(v?v[1]:m)),p.push(null)}};for(h(a),n++;n<e.length;)if(e[n].match(c)||e[n].match(/^\s*[-*+]\s+(.+)$/))h(e[n]),n++;else if(/^\s*$/.test(e[n])){n++;break}else if(/^\s{2,}/.test(e[n]))d[d.length-1].push({type:"text",text:" "+e[n].trim()}),n++;else break;r({type:"list",ordered:!1,items:d,checks:p});continue}let g=a.match(/^\s*\d+\.\s+(.+)$/);if(g){let d=[_e(g[1])];for(n++;n<e.length;){let p=e[n].match(/^\s*\d+\.\s+(.+)$/);if(p)d.push(_e(p[1])),n++;else if(/^\s*$/.test(e[n])){n++;break}else break}r({type:"list",ordered:!0,items:d});continue}let u=[a];for(n++;n<e.length&&!/^\s*$/.test(e[n])&&!/^\s*```/.test(e[n])&&!/^\s*#/.test(e[n])&&!/^\s*>/.test(e[n])&&!/^\s*[-*+]\s+/.test(e[n])&&!/^\s*\d+\.\s+/.test(e[n])&&!/^\s*-{3,}\s*$/.test(e[n])&&!/^\|(.+)\|\s*$/.test(e[n]);)u.push(e[n]),n++;r({type:"paragraph",inline:_e(u.join(`
30
- `))})}return t}import{h as ct}from"weifuwu/vdom";var ui=/\b(?:const|let|var|function|return|if|else|for|while|do|switch|case|break|continue|import|export|from|default|async|await|class|new|extends|implements|type|interface|public|private|protected|readonly|static|this|super|true|false|null|undefined|of|in|typeof|instanceof|void|throw|try|catch|finally|yield|as|satisfies)\b/,Nc=/\b(?:if|then|else|fi|for|do|done|while|case|esac|function|echo|cd|ls|mkdir|rm|cp|mv|export|source|sudo|npm|node|docker)\b/;var Ag=new RegExp(["(/\\*[\\s\\S]*?\\*/|//[^\\n]*|#[^\\n]*)","(\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|`(?:[^`\\\\]|\\\\.)*`)","("+ui.source+")","(\\b\\d+(?:\\.\\d+)?(?:px|%|em|rem|vh|vw|fr|ms|s)?\\b)","([A-Za-z_$][\\w$]*(?=\\s*\\())","(<\\/?[A-Za-z][\\w.-]*)","(<=|>=|===|!==|==|!=|=>|\\+\\+|--|&&|\\|\\||\\?\\?|\\??\\.|[{}()\\[\\];,.:=+\\-*/<>!?&|^~%])"].join("|"),"g");function Oc(o){return o==="bash"||o==="sh"||o==="shell"?Nc:ui}function mi(o,e){let t=[],n=Oc(e??""),r=e==="tsx"||e==="jsx"||e==="html"||!e,a=new RegExp(["(/\\*[\\s\\S]*?\\*/|//[^\\n]*|#[^\\n]*)","(\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|`(?:[^`\\\\]|\\\\.)*`)","("+n.source+")","(\\b\\d+(?:\\.\\d+)?(?:px|%|em|rem|vh|vw|fr|ms|s)?\\b)","([A-Za-z_$][\\w$]*(?=\\s*\\())",r?"(<\\/?[A-Za-z][\\w.-]*)":"(?!x)x","(<=|>=|===|!==|==|!=|=>|\\+\\+|--|&&|\\|\\||\\?\\?|\\??\\.|[{}()\\[\\];,.:=+\\-*/<>!?&|^~%])"].join("|"),"g"),s=0,i;for(;(i=a.exec(o))!==null;){i.index>s&&t.push({type:"text",text:o.slice(s,i.index)});let l="operator";for(let c=1;c<=7;c++)if(i[c]!==void 0){l=["comment","string","keyword","number","function","jsx-tag","operator"][c-1];break}t.push({type:l,text:i[0]}),s=i.index+i[0].length,i[0].length===0&&(s++,a.lastIndex=s)}return s<o.length&&t.push({type:"text",text:o.slice(s)}),t}var Er=(o,e)=>{let t=!1,n,r="";e.ui.hold(()=>{n&&clearTimeout(n)});let a=async()=>{await e.browser?.copyText(r),t=!0,e.render(),clearTimeout(n),n=setTimeout(()=>{t=!1,e.render()},1600)};return s=>{let{code:i,lang:l,title:c}=s;r=i;let f=l?ct("span",{class:"wf-codeblock-lang"},[ct("span",{class:"wf-codeblock-dot"}),l]):null,g=ct("button",{class:"wf-codeblock-copy",type:"button","aria-label":"\u590D\u5236",title:"\u590D\u5236\u4EE3\u7801",onClick:a},t?ct(H,{name:"check",size:14}):ct(H,{name:"copy",size:14})),u=ct("div",{class:"wf-codeblock-header"},[ct("span",{class:"wf-codeblock-title"},c??f??"\u4EE3\u7801"),g].filter(Boolean)),d=i&&mi(i,l).map((h,m)=>h.type==="text"?h.text:ct("span",{class:`wf-hl-${h.type}`},h.text)),p=ct("pre",{class:"wf-codeblock-pre"},ct("code",{class:"wf-codeblock-code"},d));return ct("div",{class:"wf-codeblock"},[u,p])}};var Jn=(o,e)=>t=>{let{content:n="",className:r}=t,a=Yn(n);return a.length===0?null:Ee("div",{class:`wf-md${r?` ${r}`:""}`},a.map((s,i)=>Bc(s,i)))};function Bc(o,e){switch(o.type){case"heading":return Ee(`h${o.level}`,{class:`wf-md-h wf-md-h${o.level}`,key:e},dt(o.inline));case"paragraph":return Ee("p",{class:"wf-md-p",key:e},dt(o.inline));case"list":{let t=o.checks?.some(r=>r!==null),n=o.ordered?"ol":"ul";return Ee(n,{class:`wf-md-${o.ordered?"ol":"ul"}${t?" wf-md-task-list":""}`,key:e},o.items.map((r,a)=>{let s=o.checks?.[a];return Ee("li",{class:`wf-md-li${s!=null?" wf-md-task":""}`,key:a},s!=null?[Ee("input",{type:"checkbox",class:"wf-md-task-check",checked:!!s,disabled:!0,key:"c"}),...dt(r)]:dt(r))}))}case"code":return Ee(Er,{key:e,code:o.code??"",lang:o.lang});case"quote":return Ee("blockquote",{class:"wf-md-quote",key:e},dt(o.inline));case"hr":return Ee("hr",{class:"wf-md-hr",key:e});case"table":{let t=n=>o.aligns?.[n]?{textAlign:o.aligns[n]}:void 0;return Ee("div",{class:"wf-md-table-wrap",key:e},Ee("table",{class:"wf-md-table"},[Ee("thead",{key:"h"},Ee("tr",{key:"r"},o.headers.map((n,r)=>Ee("th",{class:"wf-md-th",style:t(r),key:r},dt(_e(n)))))),Ee("tbody",{key:"b"},o.rows.map((n,r)=>Ee("tr",{class:"wf-md-tr",key:r},n.map((a,s)=>Ee("td",{class:"wf-md-td",style:t(s),key:s},dt(_e(a)))))))]))}default:return null}}function dt(o){return o.map((e,t)=>{switch(e.type){case"code":return Ee("code",{class:"wf-md-code",key:t},e.text??"");case"bold":return Ee("strong",{class:"wf-md-strong",key:t},dt(e.children??[]));case"italic":return Ee("em",{class:"wf-md-em",key:t},dt(e.children??[]));case"del":return Ee("del",{class:"wf-md-del",key:t},dt(e.children??[]));case"link":return Ee("a",{class:"wf-md-link",key:t,href:e.href,target:"_blank",rel:"noopener noreferrer"},dt(e.children??[]));default:return Ee(Hc,{key:t},e.text??"")}})}import{h as be}from"weifuwu/vdom";import{h as ye}from"weifuwu/vdom";import{aiStream as jc}from"weifuwu/vdom";zt();function yi(o){let e=/^([A-Z]+)(\d+)$/.exec(o.toUpperCase());if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}function Uc(o,e){let t="",n=e+1;for(;n>0;)t=String.fromCharCode(65+(n-1)%26)+t,n=Math.floor((n-1)/26);return`${t}${o+1}`}function wi(o,e,t,n,r){let{row:a,col:s}=yi(o),i=a>=e?a+n:a,l=s>=t?s+r:s;return i<0||l<0?null:Uc(i,l)}function Zn(o){return{name:o.name,cols:o.cols,cells:new Map(o.cells)}}function zc(o,e){if(e.type==="cell-set"){let a=Zn(o);e.cell===null?a.cells.delete(e.ref.toUpperCase()):a.cells.set(e.ref.toUpperCase(),{...e.cell,style:e.cell.style?{...e.cell.style}:void 0});let{col:s}=yi(e.ref);return s+1>a.cols&&(a.cols=s+1),a}let t=Zn(o),n=e.ref.toUpperCase(),r=t.cells.get(n);return r?t.cells.set(n,{...r,style:e.style?{...e.style}:void 0}):t.cells.set(n,{kind:"s",value:"",style:e.style?{...e.style}:void 0}),t}function hi(o,e,t,n){let r=Zn(o),a=new Map;for(let[s,i]of r.cells){let l=wi(s,e,0,n*t,0);l&&a.set(l,i)}return r.cells=a,r}function gi(o,e,t,n){let r=Zn(o),a=new Map;for(let[s,i]of r.cells){let l=wi(s,0,e,0,n*t);l&&a.set(l,i)}return r.cells=a,r.cols=Math.max(r.cols+n*t,1),r}function Ir(o,e){let t=o.sheets.map(Zn);switch(e.type){case"cell-set":case"range-style":return e.sheet>=t.length?o:(t[e.sheet]=zc(t[e.sheet],e),{...o,sheets:t});case"insert-rows":return e.sheet>=t.length?o:(t[e.sheet]=hi(t[e.sheet],e.at,e.count,1),{...o,sheets:t});case"delete-rows":return e.sheet>=t.length?o:(t[e.sheet]=hi(t[e.sheet],e.at,e.count,-1),{...o,sheets:t});case"insert-cols":return e.sheet>=t.length?o:(t[e.sheet]=gi(t[e.sheet],e.at,e.count,1),{...o,sheets:t});case"delete-cols":return e.sheet>=t.length?o:(t[e.sheet]=gi(t[e.sheet],e.at,e.count,-1),{...o,sheets:t});case"sheet-add":{let n={name:e.name,cols:1,cells:new Map};return{...o,sheets:[...t,n],activeSheet:t.length}}case"sheet-rename":return e.sheet>=t.length?o:(t[e.sheet]={...t[e.sheet],name:e.name},{...o,sheets:t});case"sheet-delete":{if(e.sheet>=t.length)return o;let n=t.filter((r,a)=>a!==e.sheet);return n.length===0&&n.push({name:"Sheet1",cols:1,cells:new Map}),{...o,sheets:n,activeSheet:Math.min(o.activeSheet,n.length-1)}}case"sheet-move":{if(e.sheet>=t.length||e.to>=t.length)return o;let n=[...t],[r]=n.splice(e.sheet,1);return n.splice(e.to,0,r),{...o,sheets:n}}case"sheet-active":return e.sheet<t.length?{...o,activeSheet:e.sheet}:o}}function bi(o){return{...o,props:o.props?{...o.props}:void 0}}function $r(o,e){let t=o.slides.map(n=>({...n,shapes:n.shapes.map(bi)}));switch(e.type){case"slide-add":{let n={shapes:[],layout:e.layout},r=e.at??t.length;return t.splice(Math.min(r,t.length),0,n),{...o,slides:t,activeSlide:Math.min(r,t.length-1)}}case"slide-delete":return e.slide>=t.length?o:(t.splice(e.slide,1),t.length===0&&t.push({shapes:[]}),{...o,slides:t,activeSlide:Math.min(o.activeSlide,t.length-1)});case"slide-move":{if(e.slide>=t.length||e.to>=t.length)return o;let[n]=t.splice(e.slide,1);return t.splice(e.to,0,n),{...o,slides:t}}case"slide-active":return e.slide<t.length?{...o,activeSlide:e.slide}:o;case"shape-add":{if(e.slide>=t.length)return o;let n=[...t[e.slide].shapes,bi(e.shape)];return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-remove":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.filter(r=>r.id!==e.shapeId);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-move":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,x:e.x,y:e.y}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-resize":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,w:e.w,h:e.h}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-set":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,props:{...r.props??{},...e.props}}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}}}function _c(o,e){let n=o.trim().split(`
31
- `).map(i=>i.trim()).filter(Boolean),r=[],a=0,s=!1;for(let i of n){let l=/^([A-Z]+\d+)\s*[:=]\s*(.*)$/.exec(i);if(l){let c=vi(l[2].trim());r.push({type:"cell-set",sheet:a,ref:l[1],cell:c}),s=!0;continue}if(!s&&n.length===1){let c=vi(i);if(c.kind==="s"&&i.length>16)continue;r.push({type:"cell-set",sheet:a,ref:e.ref??"A1",cell:c}),s=!0}}return s?{ops:r}:{ops:[],note:"\u56DE\u590D\u65E0\u6CD5\u89E3\u6790\u4E3A\u5355\u5143\u683C\u5185\u5BB9\uFF08\u671F\u671B\u516C\u5F0F/\u503C\u6216 `A1: \u503C` \u683C\u5F0F\uFF09"}}function vi(o){return o.startsWith("=")?{kind:"f",value:"",formula:o}:/^-?\d+(\.\d+)?$/.test(o)?{kind:"n",value:Number(o)}:o==="true"||o==="false"?{kind:"b",value:o==="true"}:{kind:"s",value:o}}function Vc(o,e){if(!e.shapeId)return{ops:[],note:"\u672A\u9009\u4E2D\u5F62\u72B6\uFF08\u5148\u70B9\u9009\u6587\u672C\u6846\u518D\u89E6\u53D1 AI\uFF09"};let t=o.trim();return t?{ops:[{type:"shape-set",slide:0,shapeId:e.shapeId,props:{text:t}}]}:{ops:[],note:"AI \u56DE\u590D\u4E3A\u7A7A"}}function Kc(o,e){return{ops:[],note:"docx \u6587\u672C AI \u8D70 Editor ai-apply\uFF08\u9009\u533A\u66FF\u6362\u2014\u2014Editor \u5C42\u5904\u7406\uFF09"}}function Mo(o,e){return e.docType==="xlsx"?_c(o,e):e.docType==="pptx"?Vc(o,e):Kc(o,e)}var Ar=o=>{let e="",t=o+1;for(;t>0;)e=String.fromCharCode(65+(t-1)%26)+e,t=Math.floor((t-1)/26);return e},Po=(o,e)=>{let t=e.i18n?.components?.SheetGrid??{},n=o.workbook,r=o.workbook,a=null,s=null,i=null,l=P=>{i=P},c=[],f=null,g=null,u=P=>{g=P},d=null,p=P=>{f&&!d?d=e.ui.openPopup({key:"sheet-ai",anchor:()=>g,placement:"bottom",gap:8,content:()=>P,onClose:()=>{d=null,f&&(f=null,e.render())}}):!f&&d?(d.close(),d=null):d&&P&&d.update(P)},h=(P,I,A)=>{let $=A;for(let N of I)$=Ir($,N);n=$;for(let N of I)le("office",{docType:"xlsx",op:N});c.push({label:P,ops:I,before:A}),e.render(),o.onChange?.(n)},m=(P,I)=>{h(`\u5355\u5143\u683C ${P}`,[{type:"cell-set",sheet:n.activeSheet,ref:P,cell:I}],n)},b=()=>{s=null;let{row:P}=wn(a??"A1");h("\u63D2\u5165\u884C",[{type:"insert-rows",sheet:n.activeSheet,at:P,count:1}],n)},v=()=>{s=null;let{row:P}=wn(a??"A1");h("\u5220\u9664\u884C",[{type:"delete-rows",sheet:n.activeSheet,at:P,count:1}],n)},w=()=>{s=null;let{col:P}=wn(a??"A1");h("\u63D2\u5165\u5217",[{type:"insert-cols",sheet:n.activeSheet,at:P,count:1}],n)},y=()=>{s=null;let{col:P}=wn(a??"A1");h("\u5220\u9664\u5217",[{type:"delete-cols",sheet:n.activeSheet,at:P,count:1}],n)},x=()=>{s=null;let P=c.pop();P&&(n=P.before,le("undo",{entity:"sheet",label:P.label}),e.render(),o.onChange?.(n))},k=()=>{if(!o.ai||!a)return;let P=a,I=n.sheets[n.activeSheet],A=Gc(I,P,8),$=`\u4F60\u662F\u7535\u5B50\u8868\u683C\u52A9\u624B\u3002\u8BF7\u4E3A\u5355\u5143\u683C ${P} \u751F\u6210\u5185\u5BB9\u3002
26
+ `),t=[],n=0,r=a=>{a.type==="paragraph"&&a.inline.length===0||t.push(a)};for(;n<e.length;){let a=e[n];if(/^\s*$/.test(a)){n++;continue}if(/^```/.test(a.trim())){let p=a.trim().slice(3).trim(),d=[];for(n++;n<e.length&&!/^\s*```/.test(e[n]);)d.push(e[n]),n++;n++,r({type:"code",lang:p||void 0,code:d.join(`
27
+ `)+(d.length?`
28
+ `:"")});continue}let s=a.match(/^(#{1,4})\s+(.+)$/);if(s){r({type:"heading",level:s[1].length,inline:_e(s[2])}),n++;continue}if(/^\s*-{3,}\s*$/.test(a)){r({type:"hr"}),n++;continue}if(/^\s*>/.test(a)){let p=[];for(;n<e.length&&/^\s*>/.test(e[n]);)p.push(e[n].replace(/^\s*>\s?/,"")),n++;r({type:"quote",inline:_e(p.join(`
29
+ `))});continue}if(a.match(/^\|(.+)\|\s*$/)&&n+1<e.length&&/^\|?[\s:|-]+\|?[\s:|-]*$/.test(e[n+1])&&e[n+1].includes("-")){let p=b=>b.replace(/^\|/,"").replace(/\|\s*$/,"").split("|").map(v=>v.trim()),d=p(a),h=p(e[n+1]).map(b=>{let v=b.startsWith(":"),w=b.endsWith(":");return v&&w?"center":w?"right":"left"});n+=2;let m=[];for(;n<e.length&&/^\|(.+)\|\s*$/.test(e[n]);)m.push(p(e[n])),n++;r({type:"table",headers:d,rows:m,aligns:h});continue}let l=a.match(/^\s*[-*+]\s+(.+)$/),c=/^\s*[-*+]\s+\[([ xX])]\s+(.+)$/;if(a.match(c)||l){let p=[],d=[],h=m=>{let b=m.match(c);if(b)p.push(_e(b[2])),d.push(b[1].toLowerCase()==="x");else{let v=m.match(/^\s*[-*+]\s+(.+)$/);p.push(_e(v?v[1]:m)),d.push(null)}};for(h(a),n++;n<e.length;)if(e[n].match(c)||e[n].match(/^\s*[-*+]\s+(.+)$/))h(e[n]),n++;else if(/^\s*$/.test(e[n])){n++;break}else if(/^\s{2,}/.test(e[n]))p[p.length-1].push({type:"text",text:" "+e[n].trim()}),n++;else break;r({type:"list",ordered:!1,items:p,checks:d});continue}let g=a.match(/^\s*\d+\.\s+(.+)$/);if(g){let p=[_e(g[1])];for(n++;n<e.length;){let d=e[n].match(/^\s*\d+\.\s+(.+)$/);if(d)p.push(_e(d[1])),n++;else if(/^\s*$/.test(e[n])){n++;break}else break}r({type:"list",ordered:!0,items:p});continue}let u=[a];for(n++;n<e.length&&!/^\s*$/.test(e[n])&&!/^\s*```/.test(e[n])&&!/^\s*#/.test(e[n])&&!/^\s*>/.test(e[n])&&!/^\s*[-*+]\s+/.test(e[n])&&!/^\s*\d+\.\s+/.test(e[n])&&!/^\s*-{3,}\s*$/.test(e[n])&&!/^\|(.+)\|\s*$/.test(e[n]);)u.push(e[n]),n++;r({type:"paragraph",inline:_e(u.join(`
30
+ `))})}return t}import{h as ct}from"weifuwu/vdom";var ui=/\b(?:const|let|var|function|return|if|else|for|while|do|switch|case|break|continue|import|export|from|default|async|await|class|new|extends|implements|type|interface|public|private|protected|readonly|static|this|super|true|false|null|undefined|of|in|typeof|instanceof|void|throw|try|catch|finally|yield|as|satisfies)\b/,Uc=/\b(?:if|then|else|fi|for|do|done|while|case|esac|function|echo|cd|ls|mkdir|rm|cp|mv|export|source|sudo|npm|node|docker)\b/;var Ug=new RegExp(["(/\\*[\\s\\S]*?\\*/|//[^\\n]*|#[^\\n]*)","(\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|`(?:[^`\\\\]|\\\\.)*`)","("+ui.source+")","(\\b\\d+(?:\\.\\d+)?(?:px|%|em|rem|vh|vw|fr|ms|s)?\\b)","([A-Za-z_$][\\w$]*(?=\\s*\\())","(<\\/?[A-Za-z][\\w.-]*)","(<=|>=|===|!==|==|!=|=>|\\+\\+|--|&&|\\|\\||\\?\\?|\\??\\.|[{}()\\[\\];,.:=+\\-*/<>!?&|^~%])"].join("|"),"g");function zc(o){return o==="bash"||o==="sh"||o==="shell"?Uc:ui}function mi(o,e){let t=[],n=zc(e??""),r=e==="tsx"||e==="jsx"||e==="html"||!e,a=new RegExp(["(/\\*[\\s\\S]*?\\*/|//[^\\n]*|#[^\\n]*)","(\"(?:[^\"\\\\]|\\\\.)*\"|'(?:[^'\\\\]|\\\\.)*'|`(?:[^`\\\\]|\\\\.)*`)","("+n.source+")","(\\b\\d+(?:\\.\\d+)?(?:px|%|em|rem|vh|vw|fr|ms|s)?\\b)","([A-Za-z_$][\\w$]*(?=\\s*\\())",r?"(<\\/?[A-Za-z][\\w.-]*)":"(?!x)x","(<=|>=|===|!==|==|!=|=>|\\+\\+|--|&&|\\|\\||\\?\\?|\\??\\.|[{}()\\[\\];,.:=+\\-*/<>!?&|^~%])"].join("|"),"g"),s=0,i;for(;(i=a.exec(o))!==null;){i.index>s&&t.push({type:"text",text:o.slice(s,i.index)});let l="operator";for(let c=1;c<=7;c++)if(i[c]!==void 0){l=["comment","string","keyword","number","function","jsx-tag","operator"][c-1];break}t.push({type:l,text:i[0]}),s=i.index+i[0].length,i[0].length===0&&(s++,a.lastIndex=s)}return s<o.length&&t.push({type:"text",text:o.slice(s)}),t}var Er=(o,e)=>{let t=!1,n,r="";e.ui.hold(()=>{n&&clearTimeout(n)});let a=async()=>{await e.browser?.copyText(r),t=!0,e.render(),clearTimeout(n),n=setTimeout(()=>{t=!1,e.render()},1600)};return s=>{let{code:i,lang:l,title:c}=s;r=i;let f=l?ct("span",{class:"wf-codeblock-lang"},[ct("span",{class:"wf-codeblock-dot"}),l]):null,g=ct("button",{class:"wf-codeblock-copy",type:"button","aria-label":"\u590D\u5236",title:"\u590D\u5236\u4EE3\u7801",onClick:a},t?ct(O,{name:"check",size:14}):ct(O,{name:"copy",size:14})),u=ct("div",{class:"wf-codeblock-header"},[ct("span",{class:"wf-codeblock-title"},c??f??"\u4EE3\u7801"),g].filter(Boolean)),p=i&&mi(i,l).map((h,m)=>h.type==="text"?h.text:ct("span",{class:`wf-hl-${h.type}`},h.text)),d=ct("pre",{class:"wf-codeblock-pre"},ct("code",{class:"wf-codeblock-code"},p));return ct("div",{class:"wf-codeblock"},[u,d])}};var Zn=(o,e)=>t=>{let{content:n="",className:r}=t,a=Yn(n);return a.length===0?null:Ee("div",{class:`wf-md${r?` ${r}`:""}`},a.map((s,i)=>Vc(s,i)))};function Vc(o,e){switch(o.type){case"heading":return Ee(`h${o.level}`,{class:`wf-md-h wf-md-h${o.level}`,key:e},dt(o.inline));case"paragraph":return Ee("p",{class:"wf-md-p",key:e},dt(o.inline));case"list":{let t=o.checks?.some(r=>r!==null),n=o.ordered?"ol":"ul";return Ee(n,{class:`wf-md-${o.ordered?"ol":"ul"}${t?" wf-md-task-list":""}`,key:e},o.items.map((r,a)=>{let s=o.checks?.[a];return Ee("li",{class:`wf-md-li${s!=null?" wf-md-task":""}`,key:a},s!=null?[Ee("input",{type:"checkbox",class:"wf-md-task-check",checked:!!s,disabled:!0,key:"c"}),...dt(r)]:dt(r))}))}case"code":return Ee(Er,{key:e,code:o.code??"",lang:o.lang});case"quote":return Ee("blockquote",{class:"wf-md-quote",key:e},dt(o.inline));case"hr":return Ee("hr",{class:"wf-md-hr",key:e});case"table":{let t=n=>o.aligns?.[n]?{textAlign:o.aligns[n]}:void 0;return Ee("div",{class:"wf-md-table-wrap",key:e},Ee("table",{class:"wf-md-table"},[Ee("thead",{key:"h"},Ee("tr",{key:"r"},o.headers.map((n,r)=>Ee("th",{class:"wf-md-th",style:t(r),key:r},dt(_e(n)))))),Ee("tbody",{key:"b"},o.rows.map((n,r)=>Ee("tr",{class:"wf-md-tr",key:r},n.map((a,s)=>Ee("td",{class:"wf-md-td",style:t(s),key:s},dt(_e(a)))))))]))}default:return null}}function dt(o){return o.map((e,t)=>{switch(e.type){case"code":return Ee("code",{class:"wf-md-code",key:t},e.text??"");case"bold":return Ee("strong",{class:"wf-md-strong",key:t},dt(e.children??[]));case"italic":return Ee("em",{class:"wf-md-em",key:t},dt(e.children??[]));case"del":return Ee("del",{class:"wf-md-del",key:t},dt(e.children??[]));case"link":return Ee("a",{class:"wf-md-link",key:t,href:e.href,target:"_blank",rel:"noopener noreferrer"},dt(e.children??[]));default:return Ee(_c,{key:t},e.text??"")}})}import{h as be}from"weifuwu/vdom";import{h as ye}from"weifuwu/vdom";import{aiStream as qc}from"weifuwu/vdom";_t();function yi(o){let e=/^([A-Z]+)(\d+)$/.exec(o.toUpperCase());if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}function Kc(o,e){let t="",n=e+1;for(;n>0;)t=String.fromCharCode(65+(n-1)%26)+t,n=Math.floor((n-1)/26);return`${t}${o+1}`}function wi(o,e,t,n,r){let{row:a,col:s}=yi(o),i=a>=e?a+n:a,l=s>=t?s+r:s;return i<0||l<0?null:Kc(i,l)}function Jn(o){return{name:o.name,cols:o.cols,cells:new Map(o.cells)}}function jc(o,e){if(e.type==="cell-set"){let a=Jn(o);e.cell===null?a.cells.delete(e.ref.toUpperCase()):a.cells.set(e.ref.toUpperCase(),{...e.cell,style:e.cell.style?{...e.cell.style}:void 0});let{col:s}=yi(e.ref);return s+1>a.cols&&(a.cols=s+1),a}let t=Jn(o),n=e.ref.toUpperCase(),r=t.cells.get(n);return r?t.cells.set(n,{...r,style:e.style?{...e.style}:void 0}):t.cells.set(n,{kind:"s",value:"",style:e.style?{...e.style}:void 0}),t}function hi(o,e,t,n){let r=Jn(o),a=new Map;for(let[s,i]of r.cells){let l=wi(s,e,0,n*t,0);l&&a.set(l,i)}return r.cells=a,r}function gi(o,e,t,n){let r=Jn(o),a=new Map;for(let[s,i]of r.cells){let l=wi(s,0,e,0,n*t);l&&a.set(l,i)}return r.cells=a,r.cols=Math.max(r.cols+n*t,1),r}function Ir(o,e){let t=o.sheets.map(Jn);switch(e.type){case"cell-set":case"range-style":return e.sheet>=t.length?o:(t[e.sheet]=jc(t[e.sheet],e),{...o,sheets:t});case"insert-rows":return e.sheet>=t.length?o:(t[e.sheet]=hi(t[e.sheet],e.at,e.count,1),{...o,sheets:t});case"delete-rows":return e.sheet>=t.length?o:(t[e.sheet]=hi(t[e.sheet],e.at,e.count,-1),{...o,sheets:t});case"insert-cols":return e.sheet>=t.length?o:(t[e.sheet]=gi(t[e.sheet],e.at,e.count,1),{...o,sheets:t});case"delete-cols":return e.sheet>=t.length?o:(t[e.sheet]=gi(t[e.sheet],e.at,e.count,-1),{...o,sheets:t});case"sheet-add":{let n={name:e.name,cols:1,cells:new Map};return{...o,sheets:[...t,n],activeSheet:t.length}}case"sheet-rename":return e.sheet>=t.length?o:(t[e.sheet]={...t[e.sheet],name:e.name},{...o,sheets:t});case"sheet-delete":{if(e.sheet>=t.length)return o;let n=t.filter((r,a)=>a!==e.sheet);return n.length===0&&n.push({name:"Sheet1",cols:1,cells:new Map}),{...o,sheets:n,activeSheet:Math.min(o.activeSheet,n.length-1)}}case"sheet-move":{if(e.sheet>=t.length||e.to>=t.length)return o;let n=[...t],[r]=n.splice(e.sheet,1);return n.splice(e.to,0,r),{...o,sheets:n}}case"sheet-active":return e.sheet<t.length?{...o,activeSheet:e.sheet}:o}}function bi(o){return{...o,props:o.props?{...o.props}:void 0}}function $r(o,e){let t=o.slides.map(n=>({...n,shapes:n.shapes.map(bi)}));switch(e.type){case"slide-add":{let n={shapes:[],layout:e.layout},r=e.at??t.length;return t.splice(Math.min(r,t.length),0,n),{...o,slides:t,activeSlide:Math.min(r,t.length-1)}}case"slide-delete":return e.slide>=t.length?o:(t.splice(e.slide,1),t.length===0&&t.push({shapes:[]}),{...o,slides:t,activeSlide:Math.min(o.activeSlide,t.length-1)});case"slide-move":{if(e.slide>=t.length||e.to>=t.length)return o;let[n]=t.splice(e.slide,1);return t.splice(e.to,0,n),{...o,slides:t}}case"slide-active":return e.slide<t.length?{...o,activeSlide:e.slide}:o;case"shape-add":{if(e.slide>=t.length)return o;let n=[...t[e.slide].shapes,bi(e.shape)];return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-remove":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.filter(r=>r.id!==e.shapeId);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-move":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,x:e.x,y:e.y}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-resize":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,w:e.w,h:e.h}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}case"shape-set":{if(e.slide>=t.length)return o;let n=t[e.slide].shapes.map(r=>r.id===e.shapeId?{...r,props:{...r.props??{},...e.props}}:r);return t[e.slide]={...t[e.slide],shapes:n},{...o,slides:t}}}}function Fc(o,e){let n=o.trim().split(`
31
+ `).map(i=>i.trim()).filter(Boolean),r=[],a=0,s=!1;for(let i of n){let l=/^([A-Z]+\d+)\s*[:=]\s*(.*)$/.exec(i);if(l){let c=vi(l[2].trim());r.push({type:"cell-set",sheet:a,ref:l[1],cell:c}),s=!0;continue}if(!s&&n.length===1){let c=vi(i);if(c.kind==="s"&&i.length>16)continue;r.push({type:"cell-set",sheet:a,ref:e.ref??"A1",cell:c}),s=!0}}return s?{ops:r}:{ops:[],note:"\u56DE\u590D\u65E0\u6CD5\u89E3\u6790\u4E3A\u5355\u5143\u683C\u5185\u5BB9\uFF08\u671F\u671B\u516C\u5F0F/\u503C\u6216 `A1: \u503C` \u683C\u5F0F\uFF09"}}function vi(o){return o.startsWith("=")?{kind:"f",value:"",formula:o}:/^-?\d+(\.\d+)?$/.test(o)?{kind:"n",value:Number(o)}:o==="true"||o==="false"?{kind:"b",value:o==="true"}:{kind:"s",value:o}}function Gc(o,e){if(!e.shapeId)return{ops:[],note:"\u672A\u9009\u4E2D\u5F62\u72B6\uFF08\u5148\u70B9\u9009\u6587\u672C\u6846\u518D\u89E6\u53D1 AI\uFF09"};let t=o.trim();return t?{ops:[{type:"shape-set",slide:0,shapeId:e.shapeId,props:{text:t}}]}:{ops:[],note:"AI \u56DE\u590D\u4E3A\u7A7A"}}function Wc(o,e){return{ops:[],note:"docx \u6587\u672C AI \u8D70 Editor ai-apply\uFF08\u9009\u533A\u66FF\u6362\u2014\u2014Editor \u5C42\u5904\u7406\uFF09"}}function Po(o,e){return e.docType==="xlsx"?Fc(o,e):e.docType==="pptx"?Gc(o,e):Wc(o,e)}var Ar=o=>{let e="",t=o+1;for(;t>0;)e=String.fromCharCode(65+(t-1)%26)+e,t=Math.floor((t-1)/26);return e},So=(o,e)=>{let t=e.i18n?.components?.SheetGrid??{},n=o.workbook,r=o.workbook,a=null,s=null,i=null,l=S=>{i=S},c=[],f=null,g=null,u=S=>{g=S},p=null,d=S=>{f&&!p?p=e.ui.openPopup({key:"sheet-ai",anchor:()=>g,placement:"bottom",gap:8,content:()=>S,onClose:()=>{p=null,f&&(f=null,e.render())}}):!f&&p?(p.close(),p=null):p&&S&&p.update(S)},h=(S,I,A)=>{let $=A;for(let N of I)$=Ir($,N);n=$;for(let N of I)le("office",{docType:"xlsx",op:N});c.push({label:S,ops:I,before:A}),e.render(),o.onChange?.(n)},m=(S,I)=>{h(`\u5355\u5143\u683C ${S}`,[{type:"cell-set",sheet:n.activeSheet,ref:S,cell:I}],n)},b=()=>{s=null;let{row:S}=vn(a??"A1");h("\u63D2\u5165\u884C",[{type:"insert-rows",sheet:n.activeSheet,at:S,count:1}],n)},v=()=>{s=null;let{row:S}=vn(a??"A1");h("\u5220\u9664\u884C",[{type:"delete-rows",sheet:n.activeSheet,at:S,count:1}],n)},w=()=>{s=null;let{col:S}=vn(a??"A1");h("\u63D2\u5165\u5217",[{type:"insert-cols",sheet:n.activeSheet,at:S,count:1}],n)},y=()=>{s=null;let{col:S}=vn(a??"A1");h("\u5220\u9664\u5217",[{type:"delete-cols",sheet:n.activeSheet,at:S,count:1}],n)},x=()=>{s=null;let S=c.pop();S&&(n=S.before,le("undo",{entity:"sheet",label:S.label}),e.render(),o.onChange?.(n))},k=()=>{if(!o.ai||!a)return;let S=a,I=n.sheets[n.activeSheet],A=Yc(I,S,8),$=`\u4F60\u662F\u7535\u5B50\u8868\u683C\u52A9\u624B\u3002\u8BF7\u4E3A\u5355\u5143\u683C ${S} \u751F\u6210\u5185\u5BB9\u3002
32
32
 
33
33
  \u5F53\u524D\u5DE5\u4F5C\u8868\u300C${I.name}\u300D\u9644\u8FD1\u5355\u5143\u683C\u6570\u636E\uFF1A
34
34
  ${A}
@@ -36,22 +36,22 @@ ${A}
36
36
  \u8F93\u51FA\u89C4\u5219\uFF1A
37
37
  - \u82E5\u662F\u516C\u5F0F\uFF1A\u76F4\u63A5\u8F93\u51FA = \u5F00\u5934\u7684\u516C\u5F0F\uFF08\u5982 =SUM(A1:B5)\uFF09\uFF0C\u4E0D\u8981\u89E3\u91CA
38
38
  - \u82E5\u662F\u6570\u503C/\u6587\u672C\uFF1A\u76F4\u63A5\u8F93\u51FA\u503C
39
- - \u82E5\u5355\u5143\u683C\u662F\u8868\u5934/\u6C47\u603B\u7C7B\uFF0C\u8F93\u51FA\u5408\u9002\u7684\u503C\u6216\u516C\u5F0F`;f={revised:"",streaming:!0,error:null,ref:P,messageId:`sheet-ai-${Date.now()}`},e.render(),le("office",{docType:"xlsx",ai:{messageId:f.messageId,status:"suggested"}}),jc(o.ai.url,{messages:[{role:"user",content:$}]},{headers:o.ai.headers,onToken:N=>{f&&(f.revised+=N,e.render())},onDone:()=>{f&&(f.streaming=!1,e.render())},onError:N=>{f&&(f.streaming=!1,f.error=N?.message??"AI \u8BF7\u6C42\u5931\u8D25",e.render())}})},E=()=>{if(!f)return;s=null;let P={docType:"xlsx",ref:f.ref},I=Mo(f.revised,P);if(I.ops.length===0){f.error=I.note??"\u65E0\u6CD5\u89E3\u6790",e.render();return}let A=n,$=A;for(let N of I.ops)$=Ir($,N);n=$;for(let N of I.ops)le("office",{docType:"xlsx",op:N,ai:{messageId:f.messageId,status:"accepted"}},f.messageId);c.push({label:`AI \u516C\u5F0F ${f.ref}`,ops:I.ops,before:A}),f=null,e.render(),o.onChange?.(n)},T=()=>{f&&(s=null,le("office",{docType:"xlsx",ai:{messageId:f.messageId,status:"rejected"}}),f=null,e.render())};return P=>{P.workbook!=null&&P.workbook!==r&&(r=P.workbook,n=P.workbook);let I=n.sheets[Math.min(n.activeSheet,n.sheets.length-1)]??{name:"Sheet1",cols:1,cells:new Map},A=!!P.readonly,$=1,N=I.cols;for(let M of I.cells.keys()){let{row:S,col:R}=wn(M);S+1>$&&($=S+1),R+1>N&&(N=R+1)}$=Math.min($,200),N=Math.min(N,52);let B=M=>{let S=I.cells.get(M);return S?S.kind==="f"?S.formula??"":String(S.value):""},q=[];for(let M=0;M<$;M++){let S=[];for(let R=0;R<N;R++){let D=`${Ar(R)}${M+1}`,O=s?.ref===D,K=a===D;S.push(ye("td",{key:D,class:["wf-sheet-cell",K?"wf-sheet-cell--active":""].filter(Boolean).join(" "),onClick:()=>{A||(a=D,s={ref:D,value:B(D)},e.render())},onKeyDown:Y=>{A||(Y.key==="Enter"&&s?.ref===D&&(Y.preventDefault(),U(),e.render()),Y.key==="Escape"&&s?.ref===D&&(s=null,e.render()))}},O?ye("input",{ref:l,class:"wf-sheet-input",value:s?.value??"",onInput:Y=>{s={ref:D,value:Y.target.value}},onFocusout:()=>{U()},onClick:Y=>Y.stopPropagation()}):B(D)))}q.push(ye("tr",{key:`r${M}`},ye("th",{class:"wf-sheet-rowhead",key:"rh"},String(M+1)),...S))}let V=[];for(let M=0;M<N;M++)V.push(ye("th",{key:`c${M}`,class:"wf-sheet-colhead"},Ar(M)));let U=()=>{if(!s)return;let{ref:M,value:S}=s;s=null;let R=I.cells.get(M),D=Fc(S);R&&R.kind===D?.kind&&R.value===D.value&&R.formula===D.formula||m(M,D)},L=f?ye("div",{class:"wf-sheet-ai-panel"},[ye("div",{class:"wf-sheet-ai-title"},`${t.aiTitle??"AI \u5EFA\u8BAE"} ${f.ref}`),f.error?ye("div",{class:"wf-sheet-ai-error"},f.error):ye("pre",{class:"wf-sheet-ai-body"},f.revised||(f.streaming?t.aiThinking??"\u601D\u8003\u4E2D\u2026":"")),ye("div",{class:"wf-sheet-ai-actions"},[ye("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"ok",disabled:f.streaming,onClick:()=>E()},t.accept??"\u5E94\u7528"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"no",onClick:()=>T()},t.reject??"\u62D2\u7EDD")])]):null,C=ye("div",{class:"wf-sheet",onKeyDown:M=>{(M.ctrlKey||M.metaKey)&&M.key.toLowerCase()==="z"&&(M.preventDefault(),x()),(M.ctrlKey||M.metaKey)&&M.key.toLowerCase()==="enter"&&o.ai&&a&&(M.preventDefault(),k())},style:{height:P.height}},[ye("div",{class:"wf-sheet-toolbar"},[ye("div",{class:"wf-sheet-tabs",key:"tabs"},...n.sheets.map((M,S)=>ye("button",{key:`tab${S}`,class:["wf-sheet-tab",S===n.activeSheet?"wf-sheet-tab--active":""].filter(Boolean).join(" "),type:"button",onClick:()=>{S!==n.activeSheet&&(n={...n,activeSheet:S},e.render())}},M.name))),ye("div",{class:"wf-sheet-tools",key:"tools"},[ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ir",onClick:()=>b(),disabled:A},t.insertRow??"\u63D2\u5165\u884C"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"dr",onClick:()=>v(),disabled:A},t.deleteRow??"\u5220\u9664\u884C"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ic",onClick:()=>w(),disabled:A},t.insertCol??"\u63D2\u5165\u5217"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"dc",onClick:()=>y(),disabled:A},t.deleteCol??"\u5220\u9664\u5217"),...o.ai?[ye("button",{ref:u,class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ai","aria-expanded":String(!!f),disabled:A||!a,onClick:()=>k()},t.aiFormula??"AI \u516C\u5F0F")]:[],ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"undo",onClick:()=>x(),disabled:A||c.length===0},t.undo??"\u64A4\u9500")]),ye("span",{class:"wf-sheet-status",key:"st"},`${t.activeCell??"\u5355\u5143\u683C"}: ${a??"\u2014"}\uFF08Ctrl+Enter AI / Ctrl+Z \u64A4\u9500\uFF09`)]),ye("div",{class:"wf-sheet-scroll",style:{overflow:"auto"}},[ye("table",{class:"wf-sheet-table"},ye("thead",{},ye("tr",{},ye("th",{class:"wf-sheet-corner",key:"corner"}),...V)),ye("tbody",{},...q))])]);return p(L),C}};function wn(o){let e=/^([A-Z]+)(\d+)$/.exec(o.toUpperCase());if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}function Fc(o){let e=o.trim();return e===""?null:e.startsWith("=")?{kind:"f",value:"",formula:e}:/^-?\d+(\.\d+)?$/.test(e)?{kind:"n",value:Number(e)}:e==="true"||e==="false"?{kind:"b",value:e==="true"}:{kind:"s",value:e}}function Gc(o,e,t){let{row:n,col:r}=wn(e),a=[];for(let s=Math.max(0,n-t);s<=n+t;s++)for(let i=Math.max(0,r-t);i<=r+t;i++){let l=`${Ar(i)}${s+1}`,c=o.cells.get(l);c&&a.push(`${l}=${String(c.value)}`)}return a.length>0?a.join(`
40
- `):"\uFF08\u65E0\u76F8\u90BB\u6570\u636E\uFF09"}import{h as ke}from"weifuwu/vdom";import{aiStream as Wc}from"weifuwu/vdom";var xi=960,qc=540,So=(o,e)=>{let t=e.i18n?.components?.SlideCanvas??{},n=o.deck,r=o.deck,a=Math.min(o.deck.activeSlide,o.deck.slides.length-1),s=null,i=null,l=null,c=M=>{l=M},f=M=>{M&&M.focus()},g=.5,u=[],d=null,p=null,h=null,m=M=>{h=M},b=null,v=M=>{p&&M&&!b?b=e.ui.openPopup({key:"slide-ai",anchor:()=>h,placement:"bottom",gap:8,content:()=>M,onClose:()=>{b=null,p&&(p=null,e.render())}}):!p&&b?(b.close(),b=null):b&&M&&b.update(M)},w=(M,S,R)=>{let D=R;for(let O of S)D=$r(D,O);n=D;for(let O of S)le("office",{docType:"pptx",op:O});u.push({label:M,ops:S,before:R}),e.render(),o.onChange?.(n)},y=M=>n.slides[a]?.shapes.find(S=>S.id===M),x=M=>{let S=`s${Date.now()}`,R={id:S,kind:M,x:120,y:120,w:M==="text"?320:160,h:M==="text"?48:120,props:M==="text"?{text:"\u53CC\u51FB\u7F16\u8F91\u6587\u672C"}:{fill:"var(--wf-surface-bg, #dbeafe)"}};s=S,w("\u6DFB\u52A0\u5F62\u72B6",[{type:"shape-add",slide:a,shape:R}],n)},k=()=>{if(!s)return;let M=s;s=null,w("\u5220\u9664\u5F62\u72B6",[{type:"shape-remove",slide:a,shapeId:M}],n)},E=()=>{let M=a+1;w("\u6DFB\u52A0\u5E7B\u706F\u7247",[{type:"slide-add",at:M,layout:"blank"}],n),a=M},T=()=>{n.slides.length<=1||(w("\u5220\u9664\u5E7B\u706F\u7247",[{type:"slide-delete",slide:a}],n),a=Math.max(0,a-1))},P=()=>{i=null;let M=u.pop();M&&(n=M.before,le("undo",{label:M.label}),e.render(),o.onChange?.(n))},I=M=>B(M),A=()=>q(),$=e.browser;$?.addEventListener?.("pointermove",I),$?.addEventListener?.("pointerup",A),e.ui?.hold?.(()=>{$?.removeEventListener?.("pointermove",I),$?.removeEventListener?.("pointerup",A)});let N=(M,S,R)=>{if(o.readonly)return;R.preventDefault(),R.stopPropagation();let D=y(M);D&&(s=M,i=null,d={id:M,mode:S,startX:R.clientX,startY:R.clientY,orig:D},e.render())},B=M=>{if(!d)return;let S=(M.clientX-d.startX)/g,R=(M.clientY-d.startY)/g;if(d.mode==="move"){let D={...d.orig,x:Math.max(0,Math.round(d.orig.x+S)),y:Math.max(0,Math.round(d.orig.y+R))};V(d.id,D)}else{let D={...d.orig,w:Math.max(20,Math.round(d.orig.w+S)),h:Math.max(16,Math.round(d.orig.h+R))};V(d.id,D)}},q=()=>{if(!d)return;let{id:M,orig:S}=d;d=null;let R=y(M);R&&(R.x===S.x&&R.y===S.y&&R.w===S.w&&R.h===S.h||(w("\u79FB\u52A8/\u7F29\u653E",[{type:"shape-move",slide:a,shapeId:M,x:R.x,y:R.y},{type:"shape-resize",slide:a,shapeId:M,w:R.w,h:R.h}],n),e.render()))},V=(M,S)=>{n={...n,slides:n.slides.map((R,D)=>D===a?{...R,shapes:R.shapes.map(O=>O.id===M?S:O)}:R)},e.render()},U=()=>{if(!o.ai||!s)return;let M=y(s);if(!M)return;let S=s,R=`\u8BF7\u6DA6\u8272\u4EE5\u4E0B\u5E7B\u706F\u7247\u6587\u672C\uFF0C\u4FDD\u6301\u539F\u610F\uFF0C\u8F93\u51FA\u6DA6\u8272\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\u3001\u4E0D\u8981\u5F15\u53F7\uFF09\uFF1A
39
+ - \u82E5\u5355\u5143\u683C\u662F\u8868\u5934/\u6C47\u603B\u7C7B\uFF0C\u8F93\u51FA\u5408\u9002\u7684\u503C\u6216\u516C\u5F0F`;f={revised:"",streaming:!0,error:null,ref:S,messageId:`sheet-ai-${Date.now()}`},e.render(),le("office",{docType:"xlsx",ai:{messageId:f.messageId,status:"suggested"}}),qc(o.ai.url,{messages:[{role:"user",content:$}]},{headers:o.ai.headers,onToken:N=>{f&&(f.revised+=N,e.render())},onDone:()=>{f&&(f.streaming=!1,e.render())},onError:N=>{f&&(f.streaming=!1,f.error=N?.message??"AI \u8BF7\u6C42\u5931\u8D25",e.render())}})},E=()=>{if(!f)return;s=null;let S={docType:"xlsx",ref:f.ref},I=Po(f.revised,S);if(I.ops.length===0){f.error=I.note??"\u65E0\u6CD5\u89E3\u6790",e.render();return}let A=n,$=A;for(let N of I.ops)$=Ir($,N);n=$;for(let N of I.ops)le("office",{docType:"xlsx",op:N,ai:{messageId:f.messageId,status:"accepted"}},f.messageId);c.push({label:`AI \u516C\u5F0F ${f.ref}`,ops:I.ops,before:A}),f=null,e.render(),o.onChange?.(n)},P=()=>{f&&(s=null,le("office",{docType:"xlsx",ai:{messageId:f.messageId,status:"rejected"}}),f=null,e.render())};return S=>{S.workbook!=null&&S.workbook!==r&&(r=S.workbook,n=S.workbook);let I=n.sheets[Math.min(n.activeSheet,n.sheets.length-1)]??{name:"Sheet1",cols:1,cells:new Map},A=!!S.readonly,$=1,N=I.cols;for(let M of I.cells.keys()){let{row:T,col:R}=vn(M);T+1>$&&($=T+1),R+1>N&&(N=R+1)}$=Math.min($,200),N=Math.min(N,52);let B=M=>{let T=I.cells.get(M);return T?T.kind==="f"?T.formula??"":String(T.value):""},W=[];for(let M=0;M<$;M++){let T=[];for(let R=0;R<N;R++){let L=`${Ar(R)}${M+1}`,H=s?.ref===L,K=a===L;T.push(ye("td",{key:L,class:["wf-sheet-cell",K?"wf-sheet-cell--active":""].filter(Boolean).join(" "),onClick:()=>{A||(a=L,s={ref:L,value:B(L)},e.render())},onKeyDown:Y=>{A||(Y.key==="Enter"&&s?.ref===L&&(Y.preventDefault(),U(),e.render()),Y.key==="Escape"&&s?.ref===L&&(s=null,e.render()))}},H?ye("input",{ref:l,class:"wf-sheet-input",value:s?.value??"",onInput:Y=>{s={ref:L,value:Y.target.value}},onFocusout:()=>{U()},onClick:Y=>Y.stopPropagation()}):B(L)))}W.push(ye("tr",{key:`r${M}`},ye("th",{class:"wf-sheet-rowhead",key:"rh"},String(M+1)),...T))}let z=[];for(let M=0;M<N;M++)z.push(ye("th",{key:`c${M}`,class:"wf-sheet-colhead"},Ar(M)));let U=()=>{if(!s)return;let{ref:M,value:T}=s;s=null;let R=I.cells.get(M),L=Xc(T);R&&R.kind===L?.kind&&R.value===L.value&&R.formula===L.formula||m(M,L)},D=f?ye("div",{class:"wf-sheet-ai-panel"},[ye("div",{class:"wf-sheet-ai-title"},`${t.aiTitle??"AI \u5EFA\u8BAE"} ${f.ref}`),f.error?ye("div",{class:"wf-sheet-ai-error"},f.error):ye("pre",{class:"wf-sheet-ai-body"},f.revised||(f.streaming?t.aiThinking??"\u601D\u8003\u4E2D\u2026":"")),ye("div",{class:"wf-sheet-ai-actions"},[ye("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"ok",disabled:f.streaming,onClick:()=>E()},t.accept??"\u5E94\u7528"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"no",onClick:()=>P()},t.reject??"\u62D2\u7EDD")])]):null,C=ye("div",{class:"wf-sheet",onKeyDown:M=>{(M.ctrlKey||M.metaKey)&&M.key.toLowerCase()==="z"&&(M.preventDefault(),x()),(M.ctrlKey||M.metaKey)&&M.key.toLowerCase()==="enter"&&o.ai&&a&&(M.preventDefault(),k())},style:{height:S.height}},[ye("div",{class:"wf-sheet-toolbar"},[ye("div",{class:"wf-sheet-tabs",key:"tabs"},...n.sheets.map((M,T)=>ye("button",{key:`tab${T}`,class:["wf-sheet-tab",T===n.activeSheet?"wf-sheet-tab--active":""].filter(Boolean).join(" "),type:"button",onClick:()=>{T!==n.activeSheet&&(n={...n,activeSheet:T},e.render())}},M.name))),ye("div",{class:"wf-sheet-tools",key:"tools"},[ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ir",onClick:()=>b(),disabled:A},t.insertRow??"\u63D2\u5165\u884C"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"dr",onClick:()=>v(),disabled:A},t.deleteRow??"\u5220\u9664\u884C"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ic",onClick:()=>w(),disabled:A},t.insertCol??"\u63D2\u5165\u5217"),ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"dc",onClick:()=>y(),disabled:A},t.deleteCol??"\u5220\u9664\u5217"),...o.ai?[ye("button",{ref:u,class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ai","aria-expanded":String(!!f),disabled:A||!a,onClick:()=>k()},t.aiFormula??"AI \u516C\u5F0F")]:[],ye("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"undo",onClick:()=>x(),disabled:A||c.length===0},t.undo??"\u64A4\u9500")]),ye("span",{class:"wf-sheet-status",key:"st"},`${t.activeCell??"\u5355\u5143\u683C"}: ${a??"\u2014"}\uFF08Ctrl+Enter AI / Ctrl+Z \u64A4\u9500\uFF09`)]),ye("div",{class:"wf-sheet-scroll",style:{overflow:"auto"}},[ye("table",{class:"wf-sheet-table"},ye("thead",{},ye("tr",{},ye("th",{class:"wf-sheet-corner",key:"corner"}),...z)),ye("tbody",{},...W))])]);return d(D),C}};function vn(o){let e=/^([A-Z]+)(\d+)$/.exec(o.toUpperCase());if(!e)return{row:0,col:0};let t=0;for(let n of e[1])t=t*26+(n.charCodeAt(0)-64);return{row:Number(e[2])-1,col:t-1}}function Xc(o){let e=o.trim();return e===""?null:e.startsWith("=")?{kind:"f",value:"",formula:e}:/^-?\d+(\.\d+)?$/.test(e)?{kind:"n",value:Number(e)}:e==="true"||e==="false"?{kind:"b",value:e==="true"}:{kind:"s",value:e}}function Yc(o,e,t){let{row:n,col:r}=vn(e),a=[];for(let s=Math.max(0,n-t);s<=n+t;s++)for(let i=Math.max(0,r-t);i<=r+t;i++){let l=`${Ar(i)}${s+1}`,c=o.cells.get(l);c&&a.push(`${l}=${String(c.value)}`)}return a.length>0?a.join(`
40
+ `):"\uFF08\u65E0\u76F8\u90BB\u6570\u636E\uFF09"}import{h as ke}from"weifuwu/vdom";import{aiStream as Zc}from"weifuwu/vdom";var xi=960,Jc=540,To=(o,e)=>{let t=e.i18n?.components?.SlideCanvas??{},n=o.deck,r=o.deck,a=Math.min(o.deck.activeSlide,o.deck.slides.length-1),s=null,i=null,l=null,c=M=>{l=M},f=M=>{M&&M.focus()},g=.5,u=[],p=null,d=null,h=null,m=M=>{h=M},b=null,v=M=>{d&&M&&!b?b=e.ui.openPopup({key:"slide-ai",anchor:()=>h,placement:"bottom",gap:8,content:()=>M,onClose:()=>{b=null,d&&(d=null,e.render())}}):!d&&b?(b.close(),b=null):b&&M&&b.update(M)},w=(M,T,R)=>{let L=R;for(let H of T)L=$r(L,H);n=L;for(let H of T)le("office",{docType:"pptx",op:H});u.push({label:M,ops:T,before:R}),e.render(),o.onChange?.(n)},y=M=>n.slides[a]?.shapes.find(T=>T.id===M),x=M=>{let T=`s${Date.now()}`,R={id:T,kind:M,x:120,y:120,w:M==="text"?320:160,h:M==="text"?48:120,props:M==="text"?{text:"\u53CC\u51FB\u7F16\u8F91\u6587\u672C"}:{fill:"var(--wf-surface-bg, #dbeafe)"}};s=T,w("\u6DFB\u52A0\u5F62\u72B6",[{type:"shape-add",slide:a,shape:R}],n)},k=()=>{if(!s)return;let M=s;s=null,w("\u5220\u9664\u5F62\u72B6",[{type:"shape-remove",slide:a,shapeId:M}],n)},E=()=>{let M=a+1;w("\u6DFB\u52A0\u5E7B\u706F\u7247",[{type:"slide-add",at:M,layout:"blank"}],n),a=M},P=()=>{n.slides.length<=1||(w("\u5220\u9664\u5E7B\u706F\u7247",[{type:"slide-delete",slide:a}],n),a=Math.max(0,a-1))},S=()=>{i=null;let M=u.pop();M&&(n=M.before,le("undo",{label:M.label}),e.render(),o.onChange?.(n))},I=M=>B(M),A=()=>W(),$=e.browser;$?.addEventListener?.("pointermove",I),$?.addEventListener?.("pointerup",A),e.ui?.hold?.(()=>{$?.removeEventListener?.("pointermove",I),$?.removeEventListener?.("pointerup",A)});let N=(M,T,R)=>{if(o.readonly)return;R.preventDefault(),R.stopPropagation();let L=y(M);L&&(s=M,i=null,p={id:M,mode:T,startX:R.clientX,startY:R.clientY,orig:L},e.render())},B=M=>{if(!p)return;let T=(M.clientX-p.startX)/g,R=(M.clientY-p.startY)/g;if(p.mode==="move"){let L={...p.orig,x:Math.max(0,Math.round(p.orig.x+T)),y:Math.max(0,Math.round(p.orig.y+R))};z(p.id,L)}else{let L={...p.orig,w:Math.max(20,Math.round(p.orig.w+T)),h:Math.max(16,Math.round(p.orig.h+R))};z(p.id,L)}},W=()=>{if(!p)return;let{id:M,orig:T}=p;p=null;let R=y(M);R&&(R.x===T.x&&R.y===T.y&&R.w===T.w&&R.h===T.h||(w("\u79FB\u52A8/\u7F29\u653E",[{type:"shape-move",slide:a,shapeId:M,x:R.x,y:R.y},{type:"shape-resize",slide:a,shapeId:M,w:R.w,h:R.h}],n),e.render()))},z=(M,T)=>{n={...n,slides:n.slides.map((R,L)=>L===a?{...R,shapes:R.shapes.map(H=>H.id===M?T:H)}:R)},e.render()},U=()=>{if(!o.ai||!s)return;let M=y(s);if(!M)return;let T=s,R=`\u8BF7\u6DA6\u8272\u4EE5\u4E0B\u5E7B\u706F\u7247\u6587\u672C\uFF0C\u4FDD\u6301\u539F\u610F\uFF0C\u8F93\u51FA\u6DA6\u8272\u540E\u7684\u5B8C\u6574\u6587\u672C\uFF08\u4E0D\u8981\u989D\u5916\u89E3\u91CA\u3001\u4E0D\u8981\u5F15\u53F7\uFF09\uFF1A
41
41
 
42
- ${M.props?.text??""}`;p={revised:"",streaming:!0,error:null,shapeId:S,messageId:`slide-ai-${Date.now()}`},e.render(),le("office",{docType:"pptx",ai:{messageId:p.messageId,status:"suggested"}}),Wc(o.ai.url,{messages:[{role:"user",content:R}]},{headers:o.ai.headers,onToken:D=>{p&&(p.revised+=D,e.render())},onDone:()=>{p&&(p.streaming=!1,e.render())},onError:D=>{p&&(p.streaming=!1,p.error=D?.message??"AI \u8BF7\u6C42\u5931\u8D25",e.render())}})},L=()=>{if(!p)return;i=null;let M=Mo(p.revised,{docType:"pptx",shapeId:p.shapeId});if(M.ops.length===0){p.error=M.note??"\u65E0\u6CD5\u89E3\u6790",e.render();return}let S=n,R=S;for(let D of M.ops)R=$r(R,D);n=R;for(let D of M.ops)le("office",{docType:"pptx",op:D,ai:{messageId:p.messageId,status:"accepted"}},p.messageId);u.push({label:`AI \u6DA6\u8272 ${p.shapeId}`,ops:M.ops,before:S}),p=null,e.render(),o.onChange?.(n)},C=()=>{p&&(i=null,le("office",{docType:"pptx",ai:{messageId:p.messageId,status:"rejected"}}),p=null,e.render())};return M=>{!d&&M.deck!==r&&(r=M.deck,n=M.deck);let S=!!M.readonly,R=n.slides[Math.min(a,n.slides.length-1)]??{shapes:[]};g=(()=>{let G=l?.clientWidth||640;return Math.min(1,(G-24)/xi)})();let O=R.shapes.map((G,X)=>{let W=s===G.id,J=i?.id===G.id,ee={key:G.id,class:["wf-slide-shape",`wf-slide-shape--${G.kind}`,W?"wf-slide-shape--selected":""].filter(Boolean).join(" "),style:{left:`${G.x}px`,top:`${G.y}px`,width:`${G.w}px`,height:`${G.h}px`,...G.props?.fill?{background:G.props.fill}:{}},onPointerDown:ie=>N(G.id,"move",ie)},ue=[];return J?ue.push(ke("textarea",{ref:f,class:"wf-slide-shape-edit",value:i?.text??"",onInput:ie=>{i={id:G.id,text:ie.target.value}},onFocusout:()=>{K()},onKeyDown:ie=>{ie.key==="Enter"&&!ie.shiftKey&&(ie.preventDefault(),K()),ie.key==="Escape"&&(i=null,e.render())},onPointerDown:ie=>ie.stopPropagation()})):G.kind==="image"?ue.push(ke("div",{class:"wf-slide-shape-image"},"\u{1F5BC}")):G.kind==="line"?ue.push(ke("div",{class:"wf-slide-shape-line"})):ue.push(ke("div",{class:"wf-slide-shape-label"},G.props?.text??"")),ke("div",ee,...ue,W&&!S?ke("div",{class:"wf-slide-shape-resize",onPointerDown:ie=>N(G.id,"resize",ie)}):null)}),K=()=>{if(!i)return;let{id:G,text:X}=i;i=null;let W=y(G);W&&W.props?.text!==X&&w("\u7F16\u8F91\u6587\u672C",[{type:"shape-set",slide:a,shapeId:G,props:{text:X}}],n)},Y=p?ke("div",{class:"wf-slide-ai-panel"},[ke("div",{class:"wf-slide-ai-title"},`${t.aiTitle??"AI \u6DA6\u8272"}`),p.error?ke("div",{class:"wf-slide-ai-error"},p.error):ke("pre",{class:"wf-slide-ai-body"},p.revised||(p.streaming?t.aiThinking??"\u601D\u8003\u4E2D\u2026":"")),ke("div",{class:"wf-slide-ai-actions"},[ke("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"ok",disabled:p.streaming,onClick:()=>L()},t.accept??"\u5E94\u7528"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"no",onClick:()=>C()},t.reject??"\u62D2\u7EDD")])]):null,Q=ke("div",{class:"wf-slide",onKeyDown:G=>{(G.ctrlKey||G.metaKey)&&G.key.toLowerCase()==="z"&&(G.preventDefault(),P()),(G.ctrlKey||G.metaKey)&&G.key.toLowerCase()==="enter"&&o.ai&&s&&(G.preventDefault(),U()),G.key==="Delete"&&s&&!i&&(G.preventDefault(),k())}},[ke("div",{class:"wf-slide-toolbar"},[...n.slides.map((G,X)=>ke("button",{key:`tab${X}`,class:["wf-slide-tab",X===a?"wf-slide-tab--active":""].filter(Boolean).join(" "),type:"button",onClick:()=>{a=X,s=null,i=null,e.render()}},`${t.slide??"\u5E7B\u706F\u7247"} ${X+1}`)),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-slide",onClick:()=>E(),disabled:S},t.addSlide??"+ \u9875"),...S?[]:[ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"del-slide",onClick:()=>T()},t.deleteSlide??"\u5220\u9875"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-text",onClick:()=>x("text")},t.addText??"\u6587\u672C"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-rect",onClick:()=>x("rect")},t.addRect??"\u77E9\u5F62"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"del",onClick:()=>k(),disabled:!s},t.deleteShape??"\u5220\u9664"),...o.ai?[ke("button",{ref:m,class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ai","aria-expanded":String(!!p),disabled:!s,onClick:()=>U()},t.aiPolish??"AI \u6DA6\u8272")]:[]],ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"undo",onClick:()=>P(),disabled:S||u.length===0},t.undo??"\u64A4\u9500")]),ke("div",{class:"wf-slide-canvas-scroll",style:{height:M.height}},[ke("div",{ref:c,class:"wf-slide-canvas",style:{width:`${xi*g}px`,height:`${qc*g}px`}},O.map(G=>ke("div",{key:G.key,style:{transform:`scale(${g})`,transformOrigin:"top left",position:"absolute"},class:"wf-slide-shape-scaler"},G)))])]);return v(Y),Q}};zt();function Et(o){return o.map(e=>{switch(e.type){case"code":return`<code>${To(e.text??"")}</code>`;case"bold":return`<strong>${Et(e.children??[])}</strong>`;case"italic":return`<em>${Et(e.children??[])}</em>`;case"del":return`<del>${Et(e.children??[])}</del>`;case"link":return`<a href="${Qc(e.href??"")}">${Et(e.children??[])}</a>`;default:return To(e.text??"")}}).join("")}function Xc(o){return o.replace(/!\[([^\]]*)\]\(([^)\s]+)\)/g,(e,t,n)=>{let r=Tr(n);return r?`\0IMG:${encodeURIComponent(t)}:${encodeURIComponent(r)}\0`:`![${t}](${n})`})}function Yc(o){return o.replace(/IMG:([^:]+):([^]+)/g,(e,t,n)=>`<img src="${decodeURIComponent(n)}" alt="${decodeURIComponent(t)}">`)}function Dr(o){let e=Yn(Xc(o)),t=[];for(let n of e)switch(n.type){case"heading":t.push(`<h${n.level}>${Et(n.inline??[])}</h${n.level}>`);break;case"paragraph":t.push(`<p>${Et(n.inline??[])}</p>`);break;case"list":{let r=n.ordered?"ol":"ul",a=(n.items??[]).map((s,i)=>{let l=n.checks?.[i],c=Et(s);return`<li>${l!=null?`[${l?"x":" "}] ${c}`:c}</li>`});t.push(`<${r}>${a.join("")}</${r}>`);break}case"code":t.push(`<pre><code>${To(n.code??"")}</code></pre>`);break;case"quote":t.push(`<blockquote>${Et(n.inline??[])}</blockquote>`);break;case"hr":t.push("<hr>");break;case"table":{let r=[n.headers??[],...n.rows??[]];t.push(`<table><tbody>${r.map(a=>`<tr>${a.map(s=>`<td>${Et(_e(s))}</td>`).join("")}</tr>`).join("")}</tbody></table>`);break}default:break}return Yc(t.join(""))}function Jc(o,e,t){let n=new Set([e,t]),r=[];for(let i of o.marks)i.end<=e||i.start>=t||(n.add(Math.max(e,i.start)),n.add(Math.min(t,i.end)),r.push(i));let a=[...n].sort((i,l)=>i-l),s="";for(let i=0;i<a.length-1;i++){let l=a[i],c=a[i+1];if(c<=l)continue;let f=o.text.slice(l,c),g=r.filter(m=>m.start<=l&&m.end>=c),u=g.find(m=>m.type==="b"),d=g.find(m=>m.type==="i"),p=g.find(m=>m.type==="link"),h="";for(let m=0;m<f.length;m++){let b=f[m];if(b===Ze){let v=o.embeds.find(w=>w.at===l+m);if(v)if(v.type==="img"){let w=v.html.match(/src="([^"]*)"/)?.[1]??"",y=v.html.match(/alt="([^"]*)"/)?.[1]??"";h+=`![${y}](${w})`}else if(v.type==="hr")h+=`
42
+ ${M.props?.text??""}`;d={revised:"",streaming:!0,error:null,shapeId:T,messageId:`slide-ai-${Date.now()}`},e.render(),le("office",{docType:"pptx",ai:{messageId:d.messageId,status:"suggested"}}),Zc(o.ai.url,{messages:[{role:"user",content:R}]},{headers:o.ai.headers,onToken:L=>{d&&(d.revised+=L,e.render())},onDone:()=>{d&&(d.streaming=!1,e.render())},onError:L=>{d&&(d.streaming=!1,d.error=L?.message??"AI \u8BF7\u6C42\u5931\u8D25",e.render())}})},D=()=>{if(!d)return;i=null;let M=Po(d.revised,{docType:"pptx",shapeId:d.shapeId});if(M.ops.length===0){d.error=M.note??"\u65E0\u6CD5\u89E3\u6790",e.render();return}let T=n,R=T;for(let L of M.ops)R=$r(R,L);n=R;for(let L of M.ops)le("office",{docType:"pptx",op:L,ai:{messageId:d.messageId,status:"accepted"}},d.messageId);u.push({label:`AI \u6DA6\u8272 ${d.shapeId}`,ops:M.ops,before:T}),d=null,e.render(),o.onChange?.(n)},C=()=>{d&&(i=null,le("office",{docType:"pptx",ai:{messageId:d.messageId,status:"rejected"}}),d=null,e.render())};return M=>{!p&&M.deck!==r&&(r=M.deck,n=M.deck);let T=!!M.readonly,R=n.slides[Math.min(a,n.slides.length-1)]??{shapes:[]};g=(()=>{let G=l?.clientWidth||640;return Math.min(1,(G-24)/xi)})();let H=R.shapes.map((G,X)=>{let q=s===G.id,Z=i?.id===G.id,ee={key:G.id,class:["wf-slide-shape",`wf-slide-shape--${G.kind}`,q?"wf-slide-shape--selected":""].filter(Boolean).join(" "),style:{left:`${G.x}px`,top:`${G.y}px`,width:`${G.w}px`,height:`${G.h}px`,...G.props?.fill?{background:G.props.fill}:{}},onPointerDown:ie=>N(G.id,"move",ie)},ue=[];return Z?ue.push(ke("textarea",{ref:f,class:"wf-slide-shape-edit",value:i?.text??"",onInput:ie=>{i={id:G.id,text:ie.target.value}},onFocusout:()=>{K()},onKeyDown:ie=>{ie.key==="Enter"&&!ie.shiftKey&&(ie.preventDefault(),K()),ie.key==="Escape"&&(i=null,e.render())},onPointerDown:ie=>ie.stopPropagation()})):G.kind==="image"?ue.push(ke("div",{class:"wf-slide-shape-image"},"\u{1F5BC}")):G.kind==="line"?ue.push(ke("div",{class:"wf-slide-shape-line"})):ue.push(ke("div",{class:"wf-slide-shape-label"},G.props?.text??"")),ke("div",ee,...ue,q&&!T?ke("div",{class:"wf-slide-shape-resize",onPointerDown:ie=>N(G.id,"resize",ie)}):null)}),K=()=>{if(!i)return;let{id:G,text:X}=i;i=null;let q=y(G);q&&q.props?.text!==X&&w("\u7F16\u8F91\u6587\u672C",[{type:"shape-set",slide:a,shapeId:G,props:{text:X}}],n)},Y=d?ke("div",{class:"wf-slide-ai-panel"},[ke("div",{class:"wf-slide-ai-title"},`${t.aiTitle??"AI \u6DA6\u8272"}`),d.error?ke("div",{class:"wf-slide-ai-error"},d.error):ke("pre",{class:"wf-slide-ai-body"},d.revised||(d.streaming?t.aiThinking??"\u601D\u8003\u4E2D\u2026":"")),ke("div",{class:"wf-slide-ai-actions"},[ke("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"ok",disabled:d.streaming,onClick:()=>D()},t.accept??"\u5E94\u7528"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"no",onClick:()=>C()},t.reject??"\u62D2\u7EDD")])]):null,Q=ke("div",{class:"wf-slide",onKeyDown:G=>{(G.ctrlKey||G.metaKey)&&G.key.toLowerCase()==="z"&&(G.preventDefault(),S()),(G.ctrlKey||G.metaKey)&&G.key.toLowerCase()==="enter"&&o.ai&&s&&(G.preventDefault(),U()),G.key==="Delete"&&s&&!i&&(G.preventDefault(),k())}},[ke("div",{class:"wf-slide-toolbar"},[...n.slides.map((G,X)=>ke("button",{key:`tab${X}`,class:["wf-slide-tab",X===a?"wf-slide-tab--active":""].filter(Boolean).join(" "),type:"button",onClick:()=>{a=X,s=null,i=null,e.render()}},`${t.slide??"\u5E7B\u706F\u7247"} ${X+1}`)),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-slide",onClick:()=>E(),disabled:T},t.addSlide??"+ \u9875"),...T?[]:[ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"del-slide",onClick:()=>P()},t.deleteSlide??"\u5220\u9875"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-text",onClick:()=>x("text")},t.addText??"\u6587\u672C"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"add-rect",onClick:()=>x("rect")},t.addRect??"\u77E9\u5F62"),ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"del",onClick:()=>k(),disabled:!s},t.deleteShape??"\u5220\u9664"),...o.ai?[ke("button",{ref:m,class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"ai","aria-expanded":String(!!d),disabled:!s,onClick:()=>U()},t.aiPolish??"AI \u6DA6\u8272")]:[]],ke("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"undo",onClick:()=>S(),disabled:T||u.length===0},t.undo??"\u64A4\u9500")]),ke("div",{class:"wf-slide-canvas-scroll",style:{height:M.height}},[ke("div",{ref:c,class:"wf-slide-canvas",style:{width:`${xi*g}px`,height:`${Jc*g}px`}},H.map(G=>ke("div",{key:G.key,style:{transform:`scale(${g})`,transformOrigin:"top left",position:"absolute"},class:"wf-slide-shape-scaler"},G)))])]);return v(Y),Q}};_t();function It(o){return o.map(e=>{switch(e.type){case"code":return`<code>${Eo(e.text??"")}</code>`;case"bold":return`<strong>${It(e.children??[])}</strong>`;case"italic":return`<em>${It(e.children??[])}</em>`;case"del":return`<del>${It(e.children??[])}</del>`;case"link":return`<a href="${od(e.href??"")}">${It(e.children??[])}</a>`;default:return Eo(e.text??"")}}).join("")}function Qc(o){return o.replace(/!\[([^\]]*)\]\(([^)\s]+)\)/g,(e,t,n)=>{let r=Tr(n);return r?`\0IMG:${encodeURIComponent(t)}:${encodeURIComponent(r)}\0`:`![${t}](${n})`})}function ed(o){return o.replace(/IMG:([^:]+):([^]+)/g,(e,t,n)=>`<img src="${decodeURIComponent(n)}" alt="${decodeURIComponent(t)}">`)}function Dr(o){let e=Yn(Qc(o)),t=[];for(let n of e)switch(n.type){case"heading":t.push(`<h${n.level}>${It(n.inline??[])}</h${n.level}>`);break;case"paragraph":t.push(`<p>${It(n.inline??[])}</p>`);break;case"list":{let r=n.ordered?"ol":"ul",a=(n.items??[]).map((s,i)=>{let l=n.checks?.[i],c=It(s);return`<li>${l!=null?`[${l?"x":" "}] ${c}`:c}</li>`});t.push(`<${r}>${a.join("")}</${r}>`);break}case"code":t.push(`<pre><code>${Eo(n.code??"")}</code></pre>`);break;case"quote":t.push(`<blockquote>${It(n.inline??[])}</blockquote>`);break;case"hr":t.push("<hr>");break;case"table":{let r=[n.headers??[],...n.rows??[]];t.push(`<table><tbody>${r.map(a=>`<tr>${a.map(s=>`<td>${It(_e(s))}</td>`).join("")}</tr>`).join("")}</tbody></table>`);break}default:break}return ed(t.join(""))}function td(o,e,t){let n=new Set([e,t]),r=[];for(let i of o.marks)i.end<=e||i.start>=t||(n.add(Math.max(e,i.start)),n.add(Math.min(t,i.end)),r.push(i));let a=[...n].sort((i,l)=>i-l),s="";for(let i=0;i<a.length-1;i++){let l=a[i],c=a[i+1];if(c<=l)continue;let f=o.text.slice(l,c),g=r.filter(m=>m.start<=l&&m.end>=c),u=g.find(m=>m.type==="b"),p=g.find(m=>m.type==="i"),d=g.find(m=>m.type==="link"),h="";for(let m=0;m<f.length;m++){let b=f[m];if(b===Je){let v=o.embeds.find(w=>w.at===l+m);if(v)if(v.type==="img"){let w=v.html.match(/src="([^"]*)"/)?.[1]??"",y=v.html.match(/alt="([^"]*)"/)?.[1]??"";h+=`![${y}](${w})`}else if(v.type==="hr")h+=`
43
43
  ---
44
44
  `;else if(v.type==="pre"){let w=v.html.replace(/^<pre><code>/,"").replace(/<\/code><\/pre>$/,"").replace(/\n$/,"");h+="\n```\n"+w+"\n```"}else if(v.type==="table"){let w=v.html.match(/<tr>.*?<\/tr>/g)??[];h+=`
45
- `+w.map(y=>"| "+Array.from(y.matchAll(/<t[hd]>([\s\S]*?)<\/t[hd]>/g),k=>Zc(k[1])).join(" | ")+" |").join(`
46
- `)}else{let w=v.html.replace(/^<code>/,"").replace(/<\/code>$/,"");h+="`"+w+"`"}}else h+=b}u&&(h=`**${h}**`),d&&(h=`*${h}*`),p&&(h=`[${h}](${p.href??""})`),s+=h}return s}function Qn(o){let e=[0];for(let a=0;a<o.text.length;a++)o.text[a]===`
47
- `&&e.push(a+1);let t=[];for(let a=0;a<e.length;a++){let s=e[a],i=a+1<e.length?e[a+1]-1:o.text.length,l=o.blockProps.find(f=>f.start===s),c=Jc(o,s,i);l?.kind==="h1"?t.push(`# ${c}`):l?.kind==="h2"?t.push(`## ${c}`):l?.kind==="h3"?t.push(`### ${c}`):l?.kind==="quote"?t.push(`> ${c}`):l?.kind==="ul"?t.push(`- ${c}`):l?.kind==="ol"?t.push(`1. ${c}`):t.push(c)}let n=a=>/^(- |1\. )/.test(a),r=[];for(let a=0;a<t.length;a++)a>0&&!(n(t[a-1])&&n(t[a]))&&r.push(""),r.push(t[a]);return r.join(`
48
- `)}function To(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function Zc(o){return o.replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&")}function Qc(o){return To(o).replace(/"/g,"&quot;")}zt();import{createClientBrowser as vd}from"weifuwu/vdom";function xd(o,e){let t=(o||e||"").toLowerCase();return t.endsWith(".md")||t.endsWith(".markdown")?"md":t.endsWith(".txt")?"text":t.endsWith(".html")||t.endsWith(".htm")?"html":t.endsWith(".pdf")?"pdf":/\.(docx?|xlsx?|pptx?|odt|ods|odp)$/.test(t)?"office":"text"}var Di=(o,e)=>{let t=e.browser??vd(),n=un,r=null,a=null,s=null,i=!1,l=!1,c=!1,f=!1,g={status:"idle",content:null,error:null},u=null,d=async p=>{if(!(typeof window>"u")&&u!==p){u=p,g={status:"loading",content:null,error:null},le("preview",{type:"remote",url:p,status:"loading"});try{console.log("[fp-dbg] fetching",p);let h=await fetch(p);if(!h.ok)throw new Error(`HTTP ${h.status}`);let m=await h.text();g={status:"idle",content:m,error:null},le("preview",{type:"remote",url:p,status:"loaded",chars:m.length}),e.render()}catch(h){g={status:"error",content:null,error:h instanceof Error?h.message:String(h)},le("preview",{type:"remote",url:p,status:"error",message:g.error}),e.render()}}};return p=>{let{type:h,content:m="",url:b,fileName:v,editable:w,ai:y,onSave:x,onLoad:k,height:E="400px"}=p,T=h??xd(v,b),P=T==="md"||T==="text",I=m||(g.status==="idle"?g.content??"":"");(T==="md"||T==="html"||T==="text")&&b&&u!==b&&d(b);let A=(L,C)=>{f||(f=!0,le("preview",{type:T,chars:L,blocks:C,status:"loaded"}),k?.({type:T,chars:L,blocks:C}))},$=null;if(T==="md")if(w&&i){c||(c=!0,n=ot(Dr(I)));let L=n.text.replace(/\uFFFC/g,"").length;A(L,n.blockProps.length+n.embeds.length+1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:C=>{n=ot(C),l=!0,e.render()}})}else A(I.length,0),$=be("div",{class:"wf-filepreview-doc",style:{height:E,overflow:"auto"}},[v?be("div",{class:"wf-filepreview-name"},v):null,be(Jn,{key:"md",content:c?Qn(n):I})]);else T==="text"?w&&i?(c||(c=!0,n=ot(`<p>${kd(I)}</p>`)),A(I.length,1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:L=>{n=ot(L),l=!0,e.render()}})):(A(I.length,1),$=be("div",{class:"wf-filepreview-doc",style:{height:E,overflow:"auto"}},[v?be("div",{class:"wf-filepreview-name"},v):null,be("pre",{class:"wf-filepreview-text"},c?n.text:I)])):T==="html"?(A(I.length,0),$=be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",sandbox:"allow-same-origin",srcDoc:I,style:{width:"100%",height:"100%",border:"none"}})])):T==="office"?w&&r?(c||(c=!0,n=r),A(n.text.replace(/\uFFFC/g,"").length,n.blockProps.length+n.embeds.length+1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:L=>{n=ot(L),l=!0,e.render()}})):w&&a?(A(0,0),$=be(Po,{key:"sheet-grid",ai:y?{url:y.url,headers:y.headers}:void 0,height:E,onChange:L=>{a=L}})):w&&s?(A(0,0),$=be(So,{key:"slide-canvas",ai:y?{url:y.url,headers:y.headers}:void 0,height:E,onChange:L=>{s=L}})):w?(A(0,0),$=be("div",{class:"wf-filepreview-empty"},"\u6253\u5F00\u672C\u5730 .docx/.xlsx/.pptx \u6587\u4EF6\uFF08\u524D\u7AEF\u96F6\u4F9D\u8D56\u8F6C\u6362\u2014\u2014\u65E0\u9700\u540E\u7AEF\uFF09")):(A(0,0),$=b?be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",src:b,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):be("div",{class:"wf-filepreview-empty"},"office \u6587\u4EF6\u9700\u8981 URL \u6216\u5F00\u542F editable \u672C\u5730\u5BFC\u5165")):T==="pdf"&&(A(0,0),$=b?be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",src:b,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):be("div",{class:"wf-filepreview-empty"},"\u7F3A\u5C11\u6587\u4EF6 URL"));g.status==="loading"&&(T==="md"||T==="html"||T==="text")?$=be("div",{class:"wf-filepreview-empty"},"\u52A0\u8F7D\u4E2D\u2026"):g.status==="error"&&(T==="md"||T==="html"||T==="text")&&($=be("div",{class:"wf-filepreview-empty wf-filepreview-error"},`\u52A0\u8F7D\u5931\u8D25: ${g.error}`));let N=()=>{if(!x||!P||!w)return;let L=T==="md"?Qn(n):n.text;x(L,T),l=!1,le("preview",{type:T,status:"saved",chars:L.length}),e.render()},B=null,q=()=>{B||(B=t.createElement("input"),B.type="file",B.accept=".docx,.xlsx,.xls,.pptx",B.style.display="none",B.onchange=()=>{let L=B.files?.[0];if(!L)return;let C=/\.xlsx?$/i.test(L.name),M=/\.pptx?$/i.test(L.name);L.arrayBuffer().then(async S=>{try{if(M){let{pptxToDeck:R}=await Promise.resolve().then(()=>(Hr(),Or)),D=await R(new Uint8Array(S));s=D.deck,r=null,a=null,le("preview",{type:"office",status:"imported",docType:"pptx",warnings:D.warnings.length})}else if(C){let{xlsxToWorkbook:R}=await Promise.resolve().then(()=>(zr(),Ur)),D=await R(new Uint8Array(S));a=D.workbook,r=null,s=null,le("preview",{type:"office",status:"imported",docType:"xlsx",warnings:D.warnings.length})}else{let{docxToDoc:R}=await Promise.resolve().then(()=>(Vr(),_r)),D=await R(new Uint8Array(S));r=D.doc,a=null,s=null,n=D.doc,c=!0,i=!0,l=!1,le("preview",{type:"office",status:"imported",docType:"docx",warnings:D.warnings.length})}e.render()}catch(R){le("preview",{type:"office",status:"import-error",message:String(R)})}})},typeof document<"u"&&t.bodyAppend?.(B)),B.click()},V=()=>{if(r)Promise.resolve().then(()=>(Vr(),_r)).then(({docToDocx:L})=>{let C=L(n),M=t.downloadFile(v??"office-doc.docx",C.data,"application/vnd.openxmlformats-officedocument.wordprocessingml.document");le("preview",{type:"office",status:M?"exported":"export-error"})});else if(a){let L=a;Promise.resolve().then(()=>(zr(),Ur)).then(({workbookToXlsx:C})=>{let M=C(L),S=t.downloadFile(v??"sheet.xlsx",M.data,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");le("preview",{type:"office",status:S?"exported":"export-error"})})}else if(s){let L=s;Promise.resolve().then(()=>(Hr(),Or)).then(({deckToPptx:C})=>{let M=C(L),S=t.downloadFile(v??"deck.pptx",M.data,"application/vnd.openxmlformats-officedocument.presentationml.presentation");le("preview",{type:"office",status:S?"exported":"export-error"})})}},U=async()=>{let L=P?i?Qn(n):I:m;await t.copyText(L),le("preview",{type:T,status:"copied",chars:L.length})};return be("div",{class:`wf-filepreview wf-filepreview--${T}`,onKeyDown:L=>{(L.ctrlKey||L.metaKey)&&L.key.toLowerCase()==="s"&&P&&w&&(L.preventDefault(),N())}},[$,P||T==="office"||T==="html"&&m?be("div",{class:"wf-filepreview-actions"},[T==="office"&&w?be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"open","data-open":"true",onClick:()=>q()},r?"\u91CD\u65B0\u6253\u5F00":"\u6253\u5F00 docx"):null,T==="office"&&w&&(r||a||s)?be("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"dl","data-dl":"true",onClick:()=>V()},s?"\u4E0B\u8F7D pptx":a?"\u4E0B\u8F7D xlsx":"\u4E0B\u8F7D docx"):null,P&&w?be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"toggle",onClick:()=>{i=!i,le("preview",{type:T,status:i?"edit-start":"view"}),e.render()}},i?"\u9884\u89C8":"\u7F16\u8F91"):null,be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"copy","data-copy":"true",onClick:()=>{U()}},"\u590D\u5236"),...P&&w&&x&&(i||l)?[l?be("span",{class:"wf-filepreview-dirty",key:"dirty"},"\u672A\u4FDD\u5B58"):null,be("span",{class:"wf-filepreview-actions-hint",key:"hint"},"Ctrl+S \u4FDD\u5B58"),be("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"save",onClick:()=>N()},"\u4FDD\u5B58")]:[]]):null])}};function kd(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}import{h as It}from"weifuwu/vdom";var Cd=(o,e)=>t=>{let{items:n,mode:r="left",reverse:a}=t,i=(a?[...n].reverse():n).map((l,c)=>{let{key:f,title:g,time:u,content:d,status:p="default",dot:h,onClick:m}=l,b=It("div",{class:`wf-timeline-node wf-timeline-node--${p}`},h??null),v=It("div",{class:"wf-timeline-head"},[It("span",{class:"wf-timeline-title"},g),u?It("span",{class:"wf-timeline-time"},u):null].filter(Boolean)),w=d!=null?It("div",{class:"wf-timeline-content"},d):null,y=It("div",{class:"wf-timeline-col"},[v,w].filter(Boolean));if(r==="horizontal")return It("li",{key:f,class:`wf-timeline-item wf-timeline-item--h${m?" wf-timeline-item--clickable":""}`,role:m?"button":void 0,tabIndex:m?0:void 0,onClick:m,onKeyDown:m?k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),m())}:void 0},[b,y]);let x=r==="alternate"?c%2===0?" wf-timeline-item--alt-left":" wf-timeline-item--alt-right":"";return It("li",{key:f,class:`wf-timeline-item${m?" wf-timeline-item--clickable":""}${x}`,role:m?"button":void 0,tabIndex:m?0:void 0,onClick:m,onKeyDown:m?k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),m())}:void 0},[b,y])});return It("ul",{class:`wf-timeline${r==="horizontal"?" wf-timeline--h":""}`},i)};import{h as Ao}from"weifuwu/vdom";var Md=(o,e)=>t=>{let{items:n,column:r=1,bordered:a,size:s="md",className:i}=t,l=n.map((c,f)=>Ao("div",{key:f,class:"wf-descriptions-item",style:c.span&&c.span>1?{gridColumn:`span ${c.span}`}:void 0},[Ao("dt",{class:"wf-descriptions-label"},c.label),Ao("dd",{class:"wf-descriptions-value"},c.value)]));return Ao("dl",{class:`wf-descriptions wf-descriptions--${r} wf-descriptions--${s}${a?" wf-descriptions--bordered":""}${i?` ${i}`:""}`},l)};import{h as Do}from"weifuwu/vdom";var Pd=(o,e)=>t=>{let{items:n,max:r,size:a,className:s}=t;if(!n||n.length===0)return null;let i=r&&n.length>r?n.slice(0,r):n,l=r?Math.max(0,n.length-r):0,c=i.map((g,u)=>Do("span",{key:u,class:"wf-avatar-group-item"},Do(cn,{name:g.name,src:g.src,color:g.color,size:a}))),f=l>0?Do("span",{class:"wf-avatar-group-more",role:"img","aria-label":`\u8FD8\u6709 ${l} \u4EBA`},`+${l}`):null;return Do("div",{class:`wf-avatar-group${s?` ${s}`:""}`},[...c,f].filter(Boolean))};import{h as Lo}from"weifuwu/vdom";var Sd=(o,e)=>t=>{let{content:n,role:r,status:a="complete",actions:s,className:i}=t,l=r==="user"?"wf-bubble--own":"wf-bubble--ai",c=a==="error"?" wf-bubble--error":a==="streaming"?" wf-bubble--streaming":"",f=s?Lo("div",{class:"wf-bubble-body"},[Lo("div",{class:"wf-bubble-text"},n),Lo("div",{class:"wf-bubble-actions"},s)]):n;return Lo("div",{class:`wf-bubble ${l}${c}${i?` ${i}`:""}`,role:a==="error"?"alert":void 0},f)};import{h as $t}from"weifuwu/vdom";var Td=(o,e)=>{let t=!1;return n=>{let{value:r,onInput:a,onChange:s,label:i,name:l,placeholder:c,disabled:f,error:g,hint:u,required:d,autoComplete:p,className:h}=n,m=()=>{f||(t=!t,e.render())},b=i?$t("label",{class:"wf-input-label"},[i,d?$t("span",{class:"wf-input-req"},"*"):null].filter(Boolean)):null,v=$t("input",{class:"wf-input",type:t?"text":"password",value:r,name:l,placeholder:c,disabled:f,autoComplete:p,onInput:a,onChange:s}),w=$t("button",{class:"wf-password-eye",type:"button","aria-label":t?"\u9690\u85CF\u5BC6\u7801":"\u663E\u793A\u5BC6\u7801",tabIndex:-1,onClick:m},$t(H,{name:t?"eye-off":"eye",size:16})),y=$t("div",{class:"wf-input-wrap wf-password"},[v,w]),x=[];return b&&x.push(b),x.push(y),g&&x.push($t("div",{class:"wf-input-err"},g)),u&&!g&&x.push($t("div",{class:"wf-input-hint"},u)),$t("div",{class:`wf-field${h?` ${h}`:""}`},x)}};import{h as xt}from"weifuwu/vdom";var Ed=(o,e)=>{let t=!1;return n=>{let{placeholder:r,maxTags:a,allowDuplicates:s,disabled:i,label:l,error:c,hint:f,className:g}=n,u=e?.ui?.useControlled({value:n.value,onChange:n.onChange,name:"TagsInput"}),d=u?.value??[],p=E=>{let T=u?.controlled?.value!==void 0;u?.setValue(E),T||n.onChange?.(E)},h=E=>{if(i)return;let T=E.trim().replace(/,$/,"");T&&(a!=null&&d.length>=a||!s&&d.includes(T)||p([...d,T]))},m=E=>{i||p(d.filter(T=>T!==E))},b=E=>{let T=E.target;if(E.key==="Enter"||E.key===","){if(E.preventDefault(),t)return;h(T.value),T.value=""}else E.key==="Backspace"&&!T.value&&d.length>0&&m(d[d.length-1])},v=l?xt("label",{class:"wf-input-label"},l):null,w=d.map(E=>xt("span",{key:E,class:"wf-tags-tag"},[xt("span",{class:"wf-tags-text"},E),xt("button",{class:"wf-tags-remove",type:"button","aria-label":`\u79FB\u9664 ${E}`,onClick:()=>m(E)},xt(H,{name:"close",size:12}))])),y=xt("input",{class:"wf-tags-input",type:"text",placeholder:d.length===0?r:void 0,disabled:i,onKeyDown:b,onCompositionStart:()=>{t=!0},onCompositionEnd:()=>{t=!1}}),x=xt("div",{class:`wf-tags${i?" wf-tags--disabled":""}${c?" wf-tags--err":""}${g?` ${g}`:""}`},[...w,y]),k=[];return v&&k.push(v),k.push(x),c&&k.push(xt("div",{class:"wf-input-err"},c)),f&&!c&&k.push(xt("div",{class:"wf-input-hint"},f)),xt("div",{class:"wf-field"},k)}};import{h as Kr}from"weifuwu/vdom";var Id=(o,e)=>t=>{let{text:n,query:r,className:a}=t,s=(Array.isArray(r)?r:r?[r]:[]).filter(Boolean).map(f=>f.toLowerCase());if(s.length===0)return Kr("span",{class:`wf-highlight${a?` ${a}`:""}`},n);let i=[],l=0,c=n.toLowerCase();for(;l<n.length;){let f=null;for(let g of s){let u=c.indexOf(g,l);u>=0&&(!f||u<f.start)&&(f={start:u,end:u+g.length})}if(!f){i.push(n.slice(l));break}f.start>l&&i.push(n.slice(l,f.start)),i.push(Kr("mark",{class:"wf-highlight-mark"},n.slice(f.start,f.end))),l=f.end}return Kr("span",{class:`wf-highlight${a?` ${a}`:""}`},i)};import{h as Zt}from"weifuwu/vdom";var $d=(o,e)=>t=>{let{items:n,renderItem:r,divided:a,header:s,footer:i,emptyText:l="\u6682\u65E0\u6570\u636E",emptyIcon:c,className:f,keyBy:g}=t,u=n.length===0?Zt("div",{class:"wf-list-empty"},[c??null,Zt("span",{},l)].filter(Boolean)):n.map((d,p)=>Zt("li",{key:g?g(d,p):p,class:"wf-list-item"},r(d,p)));return Zt("div",{class:`wf-list${a?" wf-list--divided":""}${f?` ${f}`:""}`},[s?Zt("div",{class:"wf-list-header"},s):null,Zt("ul",{class:"wf-list-body"},u),i?Zt("div",{class:"wf-list-footer"},i):null].filter(Boolean))};import{h as kn}from"weifuwu/vdom";var Ad={success:"check",error:"close",warning:"alert",info:"info"},Dd=(o,e)=>t=>{let{status:n="info",title:r,desc:a,extra:s,className:i}=t;return kn("div",{class:`wf-result wf-result--${n}${i?` ${i}`:""}`},[kn("div",{class:"wf-result-icon","aria-hidden":"true"},kn(H,{name:Ad[n],size:40})),kn("div",{class:"wf-result-title"},r),a?kn("div",{class:"wf-result-desc"},a):null,s?kn("div",{class:"wf-result-extra"},s):null].filter(Boolean))};import{h as Qt}from"weifuwu/vdom";var Ld=(o,e)=>{let t=-1,n=r=>{t!==r&&(t=r,e.render())};return r=>{let{count:a=5,size:s="md",readOnly:i,disabled:l,allowClear:c,allowHalf:f,"aria-label":g}=r,u=i||l,d=e?.ui?.useControlled({value:r.value,onChange:r.onChange,name:u?void 0:"Rate"}),p=d?.value??0,h=x=>{let k=d?.controlled?.value!==void 0;d?.setValue(x),k||r.onChange?.(x)},m=!i&&!l,b=t>=0?t+1:p,v=f?.5:1,w=x=>{if(!m)return;let k=x.key;k==="ArrowRight"?(x.preventDefault(),h(Math.min(p+v,a))):k==="ArrowLeft"?(x.preventDefault(),h(Math.max(p-v,0))):k==="Home"?(x.preventDefault(),h(v)):k==="End"&&(x.preventDefault(),h(a))},y=[];for(let x=0;x<a;x++){let k=x<Math.floor(b),E=f&&x===Math.floor(b)&&b%1>=.5,P={class:`wf-rate-star${k?" wf-rate-star--on":""}${E?" wf-rate-star--half":""}`,"aria-label":`${x+1} \u661F`,key:x};m&&(P.type="button",P.onClick=$=>{if(f){let B=$.currentTarget.getBoundingClientRect(),q=$.clientX-B.left<B.width/2;h(q?x+.5:x+1)}else c&&p===x+1?h(0):h(x+1)},P.onMouseEnter=f?$=>{let B=$.currentTarget.getBoundingClientRect();n($.clientX-B.left<B.width/2?x+.5-1:x)}:()=>n(x),P.onMouseMove=f?$=>{let B=$.currentTarget.getBoundingClientRect();n($.clientX-B.left<B.width/2?x+.5-1:x)}:void 0,P.onMouseLeave=()=>n(-1),P.onFocus=()=>n(x),P.onBlur=()=>n(-1));let I=Qt(H,{name:"star",className:"wf-rate-star-icon"}),A=E?Qt("span",{class:"wf-rate-star-half"},[Qt("span",{class:"wf-rate-star-half-bg"},I),Qt("span",{class:"wf-rate-star-half-fg"},Qt(H,{name:"star",className:"wf-rate-star-icon"}))]):I;y.push(Qt(m?"button":"span",P,A))}return Qt("div",{class:`wf-rate wf-rate--${s}${l?" wf-rate--disabled":""}`,role:m?"radiogroup":void 0,"aria-label":g??"\u8BC4\u5206",onKeyDown:m?w:void 0},y)}};import{h as jr}from"weifuwu/vdom";var Rd=o=>e=>{let{level:t=1,children:n,className:r,style:a,...s}=e;return jr(`h${t}`,{class:["wf-title",`wf-title--${t}`,r].filter(Boolean).join(" "),style:a,...s},n)},Nd=o=>e=>{let{type:t,strong:n,underline:r,strikethrough:a,mark:s,code:i,size:l,children:c,className:f,...g}=e,u=["wf-text"];return t&&u.push(`wf-text--${t}`),n&&u.push("wf-text--strong"),r&&u.push("wf-text--underline"),a&&u.push("wf-text--strike"),s&&u.push("wf-text--mark"),i&&u.push("wf-text--code"),l&&l!=="md"&&u.push(`wf-text--${l}`),f&&u.push(f),jr("span",{class:u.join(" "),...g},c)},Od=o=>e=>{let{type:t,ellipsis:n,children:r,className:a,...s}=e,i=["wf-paragraph"];return t&&i.push(`wf-text--${t}`),n&&i.push("wf-paragraph--ellipsis"),a&&i.push(a),jr("p",{class:i.join(" "),...s},r)};import{h as Li}from"weifuwu/vdom";var Hd=o=>e=>{let{htmlFor:t,required:n,children:r,className:a,...s}=e,i=n?[r,Li("span",{class:"wf-label-req"},"*")]:r;return Li("label",{class:["wf-label",a].filter(Boolean).join(" "),htmlFor:t||void 0,...s},i)};import{h as Bd}from"weifuwu/vdom";var Ud=o=>e=>{let{ratio:t,children:n,className:r,...a}=e;return Bd("div",{class:["wf-aspect-ratio",r].filter(Boolean).join(" "),style:{"--wf-aspect-ratio":t===void 0?"16 / 9":String(t)},...a},n)};import{h as Fr}from"weifuwu/vdom";var Ri=o=>e=>{let{pressed:t,onPressedChange:n,variant:r="default",size:a="md",disabled:s,"aria-label":i,children:l,className:c,...f}=e;return Fr("button",{type:"button",class:["wf-toggle",`wf-toggle--${r}`,`wf-toggle--${a}`,t?"wf-toggle--pressed":"",c].filter(Boolean).join(" "),"aria-pressed":t?"true":"false","aria-label":i||void 0,disabled:s||void 0,onClick:s?void 0:()=>n?.(!t),...f},l)},zd=(o,e)=>t=>{let{type:n="single",options:r=[],size:a="md",disabled:s,"aria-label":i,className:l}=t,c=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"ToggleGroup"}),f=c?.value,g=h=>n==="multiple"?Array.isArray(f)&&f.includes(h):f===h,u=h=>{let m;if(n==="multiple"){let v=Array.isArray(f)?[...f]:[],w=v.indexOf(h);w>=0?v.splice(w,1):v.push(h),m=v}else m=h;let b=c?.controlled?.value!==void 0;c?.setValue(m),b||t.onChange?.(m)},d=h=>{if(s||n!=="single")return;let m=r.findIndex(w=>w.value===f);if(m<0)return;let b=m;if(h.key==="ArrowRight")h.preventDefault(),b=Math.min(m+1,r.length-1);else if(h.key==="ArrowLeft")h.preventDefault(),b=Math.max(m-1,0);else return;let v=r[b];v&&!v.disabled&&u(v.value)},p=r.map(h=>Fr(Ri,{key:h.value,pressed:g(h.value),size:a,disabled:s||h.disabled,"aria-label":h.value,onClick:s||h.disabled?void 0:()=>u(h.value)},h.label??h.value));return Fr("div",{class:["wf-toggle-group",`wf-toggle-group--${a}`,l].filter(Boolean).join(" "),role:n==="single"?"radiogroup":"group","aria-label":i||void 0,onKeyDown:d},p)};import{h as Gr}from"weifuwu/vdom";var _d=(o,e)=>t=>{let{options:n=[],columns:r,size:a="md",disabled:s,label:i,"aria-label":l,className:c}=t,f=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"CheckboxGroup"}),g=f?.value??[],u=(m,b)=>{let v=b?[...new Set([...g,m])]:g.filter(y=>y!==m),w=f?.controlled?.value!==void 0;f?.setValue(v),w||t.onChange?.(v)},d=n.map(m=>Gr(qo,{key:m.value,label:m.desc?`${m.label}\uFF08${m.desc}\uFF09`:m.label,checked:g.includes(m.value),disabled:s||m.disabled,onChange:b=>u(m.value,b)})),p=[];i&&p.push(Gr("div",{class:"wf-checkbox-group-label"},i)),p.push(...d);let h=["wf-checkbox-group",`wf-checkbox-group--${a}`];return r&&h.push(`wf-checkbox-group--cols-${r}`),c&&h.push(c),Gr("div",{class:h.join(" "),role:"group","aria-label":l||i||void 0},p)};import{h as Ni}from"weifuwu/vdom";var Vd=(o,e)=>{let t=[],n=s=>{let i=t[s];i&&(i.focus(),i.select())},r=new Map,a=s=>{let i=r.get(s);return i||(i=l=>{l&&(t[s]=l)},r.set(s,i)),i};return s=>{let{length:i=6,value:l="",onChange:c,type:f="number",size:g="md",disabled:u,"aria-label":d}=s,p=f==="number",h=(w,y)=>{if(u||!c)return;let x=y.slice(-1);if(p&&!/^\d$/.test(x))return;let k=l.split("");for(;k.length<i;)k.push("");k[w]=x,c(k.join("").slice(0,i)),w+1<i&&n(w+1)},m=(w,y)=>{if(u)return;let x=y.key;if(x==="Backspace")if(y.preventDefault(),l[w]){let k=l.split("");k[w]="",c?.(k.join(""))}else w>0&&n(w-1);else x==="ArrowLeft"?(y.preventDefault(),w>0&&n(w-1)):x==="ArrowRight"?(y.preventDefault(),w+1<i&&n(w+1)):x==="Home"?(y.preventDefault(),n(0)):x==="End"&&(y.preventDefault(),n(i-1))},b=w=>{if(u||!c)return;let y=w.clipboardData?.getData("text")??"";if(w.preventDefault(),!y)return;let x=y.slice(0,i);p&&(x=x.replace(/\D/g,"").slice(0,i)),x&&(c(x),n(Math.min(x.length,i-1)))},v=[];for(let w=0;w<i;w++)v.push(Ni("input",{key:w,type:"text",class:"wf-pin-input-cell",value:l[w]??"",maxLength:1,inputMode:p?"numeric":void 0,pattern:p?"[0-9]":void 0,"aria-label":`${d??"\u9A8C\u8BC1\u7801"}\u7B2C ${w+1} \u4F4D`,disabled:u||void 0,ref:a(w),onInput:y=>h(w,y.target.value),onKeyDown:y=>m(w,y),onPaste:b}));return Ni("div",{class:["wf-pin-input",`wf-pin-input--${g}`].join(" "),role:"group","aria-label":d},v)}};import{h as eo}from"weifuwu/vdom";var Kd=(o,e)=>{let t=!1,n;return e.ui.hold(()=>{n&&clearTimeout(n)}),r=>{let{value:a,label:s,size:i="md",variant:l="secondary",iconOnly:c,successText:f="\u5DF2\u590D\u5236",onCopied:g,className:u,...d}=r,p=async()=>{await e.browser?.copyText(a),t=!0,g?.(),e.render(),clearTimeout(n),n=setTimeout(()=>{t=!1,e.render()},2e3)},h=[];return t?(h.push(eo(H,{name:"check",size:14})),c||h.push(eo("span",{class:"wf-copy-btn-text"},f))):(h.push(eo(H,{name:"copy",size:14})),!c&&s&&h.push(eo("span",{class:"wf-copy-btn-text"},s))),eo("button",{type:"button",class:["wf-copy-btn",`wf-copy-btn--${i}`,`wf-copy-btn--${l}`,t?"wf-copy-btn--copied":"",u].filter(Boolean).join(" "),"aria-label":s||"\u590D\u5236",onClick:p,...d},h)}};import{h as At}from"weifuwu/vdom";var jd=["#4f6ef7","#8b5cf6","#ec4899","#ef4444","#f59e0b","#22c55e","#14b8a6","#06b6d4","#64748b","#1e293b"],Fd=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/,Gd=(o,e)=>{let t=!1;return n=>{let{colors:r=jd,size:a="md",disabled:s,showInput:i,"aria-label":l}=n,c=e?.ui?.useControlled({value:n.value,onChange:n.onChange,name:"ColorPicker"}),f=m=>{let b=c?.controlled?.value!==void 0;c?.setValue(m),b||n.onChange?.(m)},g=c?.value??"",u=r.map(m=>{let b=m.toLowerCase()===g.toLowerCase();return At("button",{type:"button",key:m,class:`wf-color-picker-swatch${b?" wf-color-picker-swatch--sel":""}`,style:{background:m},"aria-label":m,"aria-pressed":b?"true":"false",onClick:()=>f(m)},b?At(H,{name:"check",size:14,className:"wf-color-picker-check"}):null)}),d=[At("div",{class:"wf-color-picker-grid"},u)];i&&d.push(At("input",{class:"wf-color-picker-input",type:"text",value:g,placeholder:"#4f6ef7",spellcheck:"false",onInput:m=>{let b=m.target.value.trim();Fd.test(b)&&f(b)}}));let p=At("div",{class:"wf-color-picker-panel"},d),h=At("button",{type:"button",class:`wf-color-picker-trigger wf-color-picker-trigger--${a}${s?" wf-color-picker-trigger--disabled":""}`,disabled:s,"aria-label":l??"\u9009\u62E9\u989C\u8272","aria-disabled":s?"true":void 0,"aria-haspopup":"dialog","aria-expanded":t?"true":"false"},[At("span",{class:"wf-color-picker-swatch",style:{background:g||"var(--wf-color-bg, #fff)"}}),At("span",{class:"wf-color-picker-value"},g||"\u989C\u8272")]);return At(_n,{content:p,position:"bottom",disabled:s,open:t,onOpenChange:m=>{t=m,e.render()}},h)}};import{h as Ro}from"weifuwu/vdom";var Wd=(o,e)=>{let t=null,n={},r=e.ui.useInView({root:()=>n.target?n.target():null,rootMargin:()=>`${n.visibilityHeight??400}px 0px 0px 0px`}),a=s=>{s?(t=s,r.observe(s)):(t=null,r.disconnect())};return s=>{Object.assign(n,s);let{visibilityHeight:i=400,smooth:l=!0,"aria-label":c,children:f,className:g}=s,u=r.ready&&!r.isIn;return Ro("div",{class:"wf-backtop-host"},[Ro("div",{class:"wf-backtop-sentinel",style:{position:"absolute",top:0,left:0,width:"1px",height:"1px",opacity:0,pointerEvents:"none"},ref:a}),Ro("button",{type:"button",class:["wf-backtop",u?"":"wf-backtop--hidden",g].filter(Boolean).join(" "),"aria-label":c??"\u56DE\u5230\u9876\u90E8",onClick:()=>{let d=n.target?n.target():window;l&&"scrollTo"in d?d.scrollTo({top:0,behavior:"smooth"}):"scrollTo"in d?d.scrollTo({top:0,behavior:"smooth"}):d.scrollTop=0}},f??Ro(H,{name:"arrow-up",size:16}))])}};import{h as Wr}from"weifuwu/vdom";var qd=(o,e)=>{let t=null,n=0,r=1/0,a,s={...o},i=()=>s.target?s.target():window,l=e.ui.useScrollPosition({getScroller:i}),c=e.ui.usePopupPosition({el:()=>t,isOpen:()=>!0,compute:g=>{let u=i(),d=u instanceof Window?e.browser?.scrollTop()??0:u.scrollTop??0;return r=g.top+d-(s.offsetTop??0),n=g.width,{top:0,left:0}}}),f=g=>{g?(t=g,queueMicrotask(()=>{c.refresh(),l.refresh()})):t=null};return g=>{Object.assign(s,g);let{offsetTop:u=0,children:d,className:p,...h}=g;if(u!==a&&(a=u,t&&c.refresh()),t){let b=t.getBoundingClientRect(),v=i();if(v instanceof Window)r=b.top+(e.browser?.scrollTop()??0)-u;else{let w=v;r=b.top-w.getBoundingClientRect().top+w.scrollTop-u}n=b.width}let m=l.y>=r;return Wr("div",{class:["wf-affix",p].filter(Boolean).join(" "),...h},[Wr("div",{ref:f,class:["wf-affix-sentinel",m?"wf-affix-sentinel--active":""].join(" ")}),Wr("div",{class:["wf-affix-content",m?"wf-affix-content--fixed":""].filter(Boolean).join(" "),style:m?{position:"fixed",top:`${u}px`,width:`${n}px`}:void 0},d)])}};import{h as Oi}from"weifuwu/vdom";var Xd=(o,e)=>{let t="top",n=!1,r={open:150,close:0},a=null,s=d=>{d&&(a=d)},i=null,l=null,c=null,f=()=>{c!==null&&(clearTimeout(c),c=null)},g=()=>{f(),!n&&(c=setTimeout(()=>{c=null,l?.open||l?.setOpen(!0)},r.open))},u=()=>{f(),c=setTimeout(()=>{c=null,l?.open&&l?.setOpen(!1)},r.close)};return e.ui.onUnmount?.(f),e.ui.onUnmount?.(()=>{i&&i.close()}),d=>{let{content:p,position:h="top",children:m}=d;l=e.ui.useOpen({name:"HoverCard"}),t=h,n=!!d.disabled,r={open:d.openDelay??150,close:d.closeDelay??0};let b=Oi("div",{class:`wf-hover-card wf-hover-card--${h}`,role:"tooltip"},p);return l?.open&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:8,content:()=>b,onClose:()=>{i=null,l?.setOpen(!1)}}):!l?.open&&i?(i.close(),i=null):i&&i.update(b),Oi("div",{class:"wf-hover-card-wrap",ref:s,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onMouseEnter:g,onMouseLeave:u,onClick:()=>{l?.setOpen(!l.open)}},m)}};import{createClientBrowser as Yd}from"weifuwu/vdom";import{h as ut}from"weifuwu/vdom";import{renderV2 as ep}from"weifuwu/vdom";import{diffV2 as tp,disposeSegment as np}from"weifuwu/vdom";import{collectCommands as op}from"weifuwu/vdom";import{CommandApplier as rp}from"weifuwu/vdom";import{createComponentRegistry as sp}from"weifuwu/vdom";var Jd=Yd();function Zd(o){return{"top-right":"wf-notification--tr","top-left":"wf-notification--tl","bottom-right":"wf-notification--br","bottom-left":"wf-notification--bl"}[o]??"wf-notification--tr"}function Qd(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info"}}var Qe=null;function ip(){if(Qe)return Qe;let o=document.createElement("div");o.className="wf-notification-host",document.body.appendChild(o);let e=sp(),t=new rp(o,document,e);return Qe={container:o,applier:t,registry:e,items:[],seq:0,currentTree:null,ctx:{render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:Jd},segments:new Map},Qe}async function qr(o){let e=ut(Ui,{items:o.items,onRemove:r=>{Hi(r)}}),t=o.currentTree?tp(o.currentTree,e,o.ctx,o.segments,o.registry,()=>{}):ep(e,o.ctx,o.registry,o.segments,()=>{}),n=await op(t);for(let r of n)o.applier.apply(r);o.currentTree=e;for(let r of n)r.op==="unmount"&&np(r.compId,o.segments)}async function Hi(o){if(Qe)if(Qe.items=Qe.items.filter(e=>e.id!==o),Qe.items.length===0){try{await qr(Qe)}catch{}Qe.applier.dispose(),Qe.container.remove(),Qe=null}else qr(Qe)}function Cn(o){let e=ip(),t={id:`n${++e.seq}`,...o};e.items=[...e.items,t],qr(e);let n=o.duration??4500;n>0&&setTimeout(()=>Hi(t.id),n)}var Bi=Object.assign((o,e)=>Cn({type:e?.type??"info",title:o,description:e?.description,duration:e?.duration,action:e?.action}),{open:o=>Cn({type:o.type??"info",title:o.title,description:o.description,duration:o.duration,action:o.action}),success:o=>Cn({type:"success",...o}),error:o=>Cn({type:"error",...o}),info:o=>Cn({type:"info",...o}),warning:o=>Cn({type:"warning",...o})});function ap(o){return Object.assign(o,{notification:Bi})}var Ui=(o,e)=>{let t=null;return n=>{let{items:r=[],onRemove:a,position:s="top-right",duration:i=4500,max:l=0}=n,c=l>0&&r.length>l?r.slice(-l):r;if(c.length===0)return t&&(t.close(),t=null),null;let f=c.map(u=>ut("div",{class:`wf-notification wf-notification--${u.type}`,key:u.id,role:u.type==="error"?"alert":"status","aria-live":u.type==="error"?"assertive":"polite","data-id":u.id,"data-duration":(u.duration??i)||void 0},[ut("span",{class:"wf-notification-icon"},ut(H,{name:Qd(u.type)})),ut("div",{class:"wf-notification-body"},[ut("div",{class:"wf-notification-title"},u.title),u.description?ut("div",{class:"wf-notification-desc"},u.description):null,u.action?ut("button",{class:"wf-notification-action",type:"button",onClick:d=>{d.stopPropagation(),u.action.onClick()}},u.action.label):null].filter(Boolean)),ut("button",{type:"button",class:"wf-notification-close","aria-label":"\u5173\u95ED\u901A\u77E5",onClick:()=>a?.(u.id)},ut(H,{name:"close",size:12}))].filter(Boolean))),g=ut("div",{class:`wf-notification-container ${Zd(s)}`,"data-max":l||void 0},f);return t?t.update(g):t=e.ui.openPopup({key:"notification",positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>g,onClose:()=>{t=null}}),null}};import{h as No}from"weifuwu/vdom";var lp=(o,e)=>{let t=!1,n=0,r=null,a=[],s=0,i=0,l=null,c=()=>{t=!1,e.render()};e.ui.onUnmount?.(()=>{l&&l.close()});let f=u=>{r=u},g=u=>{if(u.key==="ArrowDown"){u.preventDefault();for(let d=1;d<=a.length;d++){let p=(n+d)%a.length;if(!a[p].disabled){n=p,e.render();break}}}else if(u.key==="ArrowUp"){u.preventDefault();for(let d=1;d<=a.length;d++){let p=(n-d+a.length)%a.length;if(!a[p].disabled){n=p,e.render();break}}}else if(u.key==="Enter"){u.preventDefault();let d=a[n];d&&!d.disabled&&(d.onClick?.(),c())}else u.key==="Escape"&&c()};return u=>{let{items:d=[],children:p,"aria-label":h,className:m}=u;a=d;let b=a.map((w,y)=>No("button",{type:"button",class:["wf-context-menu-item",w.variant==="danger"?"wf-context-menu-item--danger":"",w.disabled?"wf-context-menu-item--dis":"",n===y?"wf-context-menu-item--hl":""].filter(Boolean).join(" "),key:w.key,role:"menuitem",disabled:w.disabled||void 0,onClick:w.disabled?void 0:()=>{w.onClick?.(),c()},onMouseEnter:()=>{w.disabled||(n=y)}},w.icon?[w.icon,No("span",{},w.label)]:w.label)),v=No("div",{class:"wf-context-menu",role:"menu","aria-label":h,tabindex:-1,onKeyDown:g},b);return t&&!l?l=e.ui.openPopup({position:()=>({x:s,y:i}),content:()=>v,closeOnOutside:!0,closeOnEscape:!0,autoFocus:!0,onClose:()=>{l=null,t&&(t=!1,e.render())}}):!t&&l?(l.close(),l=null):l&&l.update(v),No("div",{class:["wf-context-menu-trigger",m].filter(Boolean).join(" "),ref:f,onContextMenu:w=>{w.preventDefault(),s=w.clientX,i=w.clientY,n=a.findIndex(y=>!y.disabled),t=!0,e.render()}},p)}};import{h as Oo}from"weifuwu/vdom";var cp=(o,e)=>{let t=!1,n="",r=-1,a=0,s=!1,i=null,l=d=>{i=d},c=null,f=null,g=d=>{t&&d&&!f?f=e.ui.openPopup({anchor:()=>i,placement:"bottom",center:!1,gap:4,content:()=>d,onClose:()=>{f=null,t&&(t=!1,e.render())}}):!t&&f?(f.close(),f=null):f&&f.update(d)},u=()=>{t&&(t=!1,e.render())};return d=>{let{options:p=[],prefix:h="@",placeholder:m,rows:b=3,disabled:v,size:w="md"}=d;c=e.ui.useControlledInput({value:d.value,onChange:d.onChange,name:"Mentions"});let y=c.value??"",x=($,N)=>{if(s){u();return}let B=$.slice(0,N),q=B.lastIndexOf(h);if(q===-1){u();return}let V=B.slice(q+1);if(V.includes(" ")){u();return}if(V.length>0&&V.includes(`
49
- `)){u();return}n=V,r=q,a=0,t=!0,e.render()},k=n?p.filter($=>$.value.toLowerCase().includes(n.toLowerCase())):p,E=$=>{let N=y.slice(0,r),B=y.slice(r+1+n.length),q=`${N}${h}${$.value} ${B}`;t=!1;let V=c?.controlled?.value!==void 0;c?.setValue(q),V||d.onChange?.(q)},T=$=>{let N=$.target.value;c?.setValue(N),x(N,$.target.selectionStart??N.length)},P=$=>{if(t)if($.key==="ArrowDown")$.preventDefault(),a=Math.min(a+1,Math.max(k.length-1,0)),e.render();else if($.key==="ArrowUp")$.preventDefault(),a=Math.max(a-1,0),e.render();else if($.key==="Enter"){$.preventDefault();let N=k[a];N&&E(N)}else $.key==="Escape"&&u()},I=t&&k.length>0?Oo("div",{class:"wf-mentions-panel",role:"listbox"},k.map(($,N)=>Oo("button",{type:"button",class:`wf-mentions-option${a===N?" wf-mentions-option--hl":""}`,key:$.value,role:"option",onClick:()=>E($),onMouseEnter:()=>{a=N}},$.label??$.value))):null,A=Oo("textarea",{class:`wf-mentions-input wf-mentions-input--${w}`,rows:b,placeholder:m,value:y,disabled:v||void 0,ref:l,"aria-haspopup":"listbox","aria-expanded":String(t),onInput:T,onKeyDown:P,onCompositionStart:()=>{s=!0,u()},onCompositionEnd:()=>{s=!1}});return g(I),Oo("div",{class:"wf-mentions"},[A])}};import{createClientBrowser as dp}from"weifuwu/vdom";import{h as kt}from"weifuwu/vdom";var pp=(o,e)=>{let t=e.browser??dp(),n=[],r=new Map,a=s=>{let i=r.get(s);return i||(i=l=>{l&&(n[s]=l)},r.set(s,i)),i};return s=>{let{items:i=[],multiple:l=!0,className:c}=s,f=e.ui.useControlled({value:s.active,onChange:s.onChange,name:"Collapse"}),g=f.value??[],u=m=>g.includes(m),d=m=>{f.controlled?.value!==void 0&&!s.onChange||(u(m)?f.setValue(g.filter(b=>b!==m)):f.setValue(l?[...g,m]:[m]))},p=m=>{let b=t?.activeElement()??null,v=n.indexOf(b);if(v<0)return;let w=v;if(m.key==="ArrowDown"||m.key==="ArrowRight")w=(v+1)%i.length;else if(m.key==="ArrowUp"||m.key==="ArrowLeft")w=(v-1+i.length)%i.length;else return;m.preventDefault(),n[w]?.focus()},h=i.map((m,b)=>{let v=u(m.key),w=[kt("span",{class:`wf-collapse-chevron${v?" wf-collapse-chevron--open":""}`},kt(H,{name:"chevron-down",size:14})),m.icon,kt("span",{class:"wf-collapse-title"},m.title)];m.extra&&w.push(kt("span",{class:"wf-collapse-extra"},m.extra));let y=v?kt("div",{class:"wf-collapse-content"},m.loading?kt("div",{class:"wf-collapse-loading"},kt(H,{name:"retry",size:14})):m.content??null):null;return kt("div",{class:`wf-collapse-item${v?" wf-collapse-item--open":""}`,key:m.key},[kt("button",{type:"button",class:"wf-collapse-header",ref:a(b),"aria-expanded":v?"true":"false",onClick:()=>d(m.key)},w),y].filter(Boolean))});return kt("div",{class:["wf-collapse",c].filter(Boolean).join(" "),onKeyDown:p},h)}};import{createClientBrowser as fp}from"weifuwu/vdom";import{h as et}from"weifuwu/vdom";import{h as to}from"weifuwu/vdom";var Xr=(o,e)=>{let t=null,n=e.ui.useScrollPosition({getScroller:()=>t??null}),r=a=>{a?(t=a,n.refresh()):t=null};return a=>{let{items:s=[],height:i=400,itemHeight:l=40,renderItem:c,overscan:f=5,keyBy:g,emptyText:u="\u6682\u65E0\u6570\u636E",className:d}=a;t&&t.scrollTop!==n.y&&n.refresh();let p=s.length,h=Math.max(0,Math.floor(n.y/l)-f),m=Math.min(p,Math.ceil((n.y+i)/l)+f);if(p===0)return to("div",{class:["wf-virtual-list","wf-virtual-list--empty",d].filter(Boolean).join(" "),style:{height:`${i}px`}},u);let b=to("div",{class:"wf-virtual-list-spacer",style:{height:`${p*l}px`}}),v=[];for(let y=h;y<m;y++){let x=s[y];v.push(to("div",{class:"wf-virtual-list-item",style:{position:"absolute",top:`${y*l}px`,left:0,right:0,height:`${l}px`},key:g?g(x,y):y},c?c(x,y):String(x)))}let w=to("div",{class:"wf-virtual-list-window"},v);return to("div",{class:["wf-virtual-list",d].filter(Boolean).join(" "),style:{position:"relative",width:"100%",height:`${i}px`,overflowY:"auto"},ref:r},[b,w])}};function zi(o){return[o.key,...(o.children??[]).flatMap(zi)]}function _i(o,e){let t=[];for(let n of o){let r=n.label.toLowerCase().includes(e),a=n.children?_i(n.children,e):[];(r||a.length)&&t.push({...n,children:a.length?a:n.children})}return t}function Vi(o){let e=[];for(let t of o)t.children?.length&&(e.push(t.key),e.push(...Vi(t.children)));return e}function up(o,e){if(!e)return o;let n=o.toLowerCase().indexOf(e);return n<0?o:[o.slice(0,n),et("mark",{class:"wf-tree-match"},o.slice(n,n+e.length)),o.slice(n+e.length)]}function Ki(o,e,t=null){for(let n of o)e.set(n.key,t),n.children&&Ki(n.children,e,n)}var Yr=(o,e)=>{let t=e.browser??fp(),n=[],r=[],a=[];return s=>{let{data:i=[],expandedKeys:l,onExpand:c,expandOnClick:f,checkable:g,className:u,searchValue:d}=s,p=(d??"").trim().toLowerCase(),h=p?_i(i,p):i,m=p?new Set(Vi(h)):null,b=e?.ui?.useControlled({value:s.selectedKeys,onChange:s.onSelect,name:"Tree"}),v=e?.ui?.useControlled({value:s.checkedKeys,onChange:s.onCheck,name:"Tree"}),w=new Map;Ki(i,w);let y=l!==void 0,x=y?l:n,k=S=>m?m.has(S):x.includes(S),E=S=>{if(y&&!c){console.warn(`[weifuwu/Tree] \u53D7\u63A7\u6A21\u5F0F\uFF08expandedKeys \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onExpand\uFF0C\u5C55\u5F00/\u6298\u53E0\u65E0\u6CD5\u751F\u6548\u3002
50
- \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 expandedKeys\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onExpand={(keys) => setExpanded(keys)}`);return}let R=k(S)?x.filter(D=>D!==S):[...x,S];y?c?.(R):(n=R,e.render())},T=S=>{let D=(b?.value??[]).includes(S)?[]:[S],O=b?.controlled?.value!==void 0;b?.setValue(D),O||s.onSelect?.(D)},P=S=>{let R=new Set(v?.value??[]),D=zi(S);if(R.has(S.key)){for(let K of D)R.delete(K);let O=w.get(S.key);for(;O;)(O.children??[]).some(Q=>R.has(Q.key))||R.delete(O.key),O=w.get(O.key)}else{for(let K of D)R.add(K);let O=w.get(S.key);for(;O;)(O.children??[]).some(Y=>R.has(Y.key))&&R.add(O.key),O=w.get(O.key)}v?.setValue(Array.from(R))},I=S=>{let R=S.children??[],D=v?.value??[];if(!R.length)return D.includes(S.key)?"checked":"unchecked";let O=R.map(I);return O.every(K=>K==="checked")?"checked":O.some(K=>K!=="unchecked")?"half":"unchecked"},A=S=>I(S)==="half",$=[],N=(S,R,D)=>{a[D]||(a[D]=J=>{r[D]=J});let O=!!S.children?.length,K=k(S.key),Y=(b?.value??[]).includes(S.key),Q=I(S)==="checked",G=O?et("button",{type:"button",class:`wf-tree-switcher${K?" wf-tree-switcher--open":""}`,"aria-label":K?"\u6298\u53E0":"\u5C55\u5F00",onClick:J=>{J.stopPropagation(),E(S.key)}},et(H,{name:"chevron-down",size:12})):et("span",{class:"wf-tree-switcher-placeholder"}),X=g?et("button",{type:"button",class:["wf-tree-checkbox",Q?"wf-tree-checkbox--checked":"",A(S)?"wf-tree-checkbox--half":""].filter(Boolean).join(" "),role:"checkbox","aria-checked":A(S)?"mixed":Q?"true":"false",onClick:J=>{J.stopPropagation(),P(S)}}):null,W=[G,X,S.icon,et("span",{class:"wf-tree-label"},up(S.label,p))].filter(Boolean);return et("div",{class:["wf-tree-row",Y?"wf-tree-row--selected":"",S.disabled?"wf-tree-row--disabled":""].filter(Boolean).join(" "),style:{paddingLeft:`${R*20}px`},ref:a[D],tabIndex:S.disabled?void 0:0,"aria-selected":Y?"true":"false",onClick:S.disabled?void 0:()=>{O&&f?E(S.key):T(S.key)},onKeyDown:S.disabled?void 0:J=>{J.key==="Enter"?(J.preventDefault(),T(S.key)):J.key===" "&&g?(J.preventDefault(),P(S)):J.key==="ArrowRight"&&O?(J.preventDefault(),K||E(S.key)):J.key==="ArrowLeft"&&O&&(J.preventDefault(),K&&E(S.key))}},W)},B=(S,R)=>{$.push(S);let D=$.length-1,O=!!S.children?.length,K=k(S.key);return et("div",{class:"wf-tree-node",key:S.key},[N(S,R,D),K&&O?et("div",{class:"wf-tree-children"},S.children.map(Y=>B(Y,R+1))):null].filter(Boolean))},q=(S,R)=>{let D=[],O=(K,Y)=>{for(let Q of K)D.push({node:Q,level:Y}),Q.children?.length&&k(Q.key)&&O(Q.children,Y+1)};return O(S,R),D},V=h.length===0?et("div",{class:"wf-tree-empty"},p?"\u65E0\u5339\u914D\u8282\u70B9":"\u6682\u65E0\u6570\u636E"):null,U=S=>{if(S.key!=="ArrowDown"&&S.key!=="ArrowUp")return;let R=t?.activeElement()??null,D=r.indexOf(R);if(D<0)return;S.preventDefault();let O=S.key==="ArrowDown"?Math.min(D+1,r.length-1):Math.max(D-1,0);r[O]?.focus()};$=[];let{virtual:L,height:C=400}=s;if(L){let S=q(h,0);$=S.map(D=>D.node);let R=S.map((D,O)=>({key:D.node.key,node:D.node,level:D.level,i:O}));return et("div",{class:["wf-tree",u].filter(Boolean).join(" "),role:"tree"},[et(Xr,{items:R,height:C,itemHeight:28,overscan:6,keyBy:D=>D.key,renderItem:D=>N(D.node,D.level,D.i),emptyText:p?"\u65E0\u5339\u914D\u8282\u70B9":"\u6682\u65E0\u6570\u636E"})])}let M=h.map(S=>B(S,0));return et("div",{class:["wf-tree",u].filter(Boolean).join(" "),role:"tree",onKeyDown:U},[V,...M].filter(Boolean))}};import{h as Be}from"weifuwu/vdom";function mp(o,e,t=" / "){let n=o,r=[];for(let a of e){let s=n?.find(i=>i.value===a);if(!s)break;r.push(s.label),n=s.children}return r.join(t)}function ji(o,e=[],t=[]){let n=[];for(let r of o){let a=[...e,r.value],s=[...t,r.label];r.children?.length?n.push(...ji(r.children,a,s)):n.push({path:a,labels:s})}return n}var hp=(o,e)=>{let t=!1,n=[],r="",a=null,s=g=>{a=g},i={col:0,idx:0},l=0,c=null,f=g=>{t&&!c?c=e.ui.openPopup({anchor:()=>a,placement:"bottom",center:!1,gap:6,content:()=>g,onClose:()=>{c=null,t&&(t=!1,e.render())}}):!t&&c?(c.close(),c=null):c&&c.update(g)};return g=>{let{options:u=[],value:d,onChange:p,placeholder:h="\u8BF7\u9009\u62E9",disabled:m,error:b,label:v,showSearch:w,searchPlaceholder:y="\u641C\u7D22\u2026","aria-label":x}=g,k=t?n:[],E=()=>{m||(t=!t,n=Array.isArray(d)?[...d]:[],t&&(i={col:0,idx:0},l=0),e.render())},T=O=>{let K=u;for(let Y of O){let Q=K.find(G=>G.value===Y);if(!Q?.children)return K;K=Q.children}return K},P=(O,K)=>{if(O.disabled)return;let Y=[...K,O.value];O.children?.length?(n=Y,i={col:i.col+1,idx:0},e.render()):(Array.isArray(d)&&!p&&console.warn(`[weifuwu/Cascader] \u53D7\u63A7\u6A21\u5F0F\uFF08value \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onChange\uFF0C\u9009\u62E9\u65E0\u6CD5\u751F\u6548\u3002
51
- \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 value\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onChange={(path) => setPath(path)}`),t=!1,e.render(),p?.(Y))},I=O=>{Array.isArray(d)&&!p&&console.warn("[weifuwu/Cascader] \u53D7\u63A7\u6A21\u5F0F\uFF08value \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onChange\uFF0C\u9009\u62E9\u65E0\u6CD5\u751F\u6548\u3002"),t=!1,r="",e.render(),p?.(O.path)},A=[],$=[],N=[],B=0;for(;;){let O=T(N),K=k[B]?O.find(G=>G.value===k[B]):void 0,Y=[...N];A.push({path:Y,options:O});let Q=i.col===B?Math.min(i.idx,Math.max(O.length-1,0)):-1;if($.push(Be("div",{class:"wf-cascader-col",key:B},O.map((G,X)=>{let W=K?.value===G.value,J=i.col===B&&X===Q;return Be("button",{type:"button",class:["wf-cascader-opt",W?"wf-cascader-opt--active":"",J?"wf-cascader-opt--hl":"",G.disabled?"wf-cascader-opt--dis":""].filter(Boolean).join(" "),key:G.value,"aria-selected":String(J||W),onClick:()=>P(G,Y)},[Be("span",{class:"wf-cascader-opt-label"},G.label),G.children?.length?Be("span",{class:"wf-cascader-opt-arrow"},Be(H,{name:"chevron-right",size:12})):null].filter(Boolean))}))),!K?.children?.length)break;N=[...N,K.value],B++}let q=r.trim().toLowerCase(),V,U=[];w&&q?(U=ji(u).filter(K=>K.labels.some(Y=>Y.toLowerCase().includes(q))),V=U.length===0?Be("div",{class:"wf-cascader-empty"},"\u65E0\u5339\u914D"):Be("div",{class:"wf-cascader-search-results"},U.map(K=>Be("button",{type:"button",class:"wf-cascader-search-item",key:K.path.join("/"),"aria-selected":String(l===U.indexOf(K)),onClick:()=>I(K)},K.labels.join(" / "))))):V=$;let L=w?Be("input",{class:"wf-cascader-search wf-input",type:"text",placeholder:y,value:r,onInput:O=>{r=O.target.value,e.render()}}):null,M=Be("div",{class:"wf-cascader-panel",role:"listbox",onKeyDown:O=>{let K=O.key;if(K==="Escape")return;if(w&&q){let G=U.length;if(!G)return;K==="ArrowDown"?(O.preventDefault(),l=Math.min(l+1,G-1),e.render()):K==="ArrowUp"?(O.preventDefault(),l=Math.max(l-1,0),e.render()):K==="Home"?(O.preventDefault(),l=0,e.render()):K==="End"?(O.preventDefault(),l=G-1,e.render()):K==="Enter"&&U[l]&&(O.preventDefault(),I(U[l]));return}let Y=A[i.col];if(!Y||!Y.options.length)return;let Q=Y.options.length;if(K==="ArrowDown")O.preventDefault(),i={col:i.col,idx:Math.min(i.idx+1,Q-1)},e.render();else if(K==="ArrowUp")O.preventDefault(),i={col:i.col,idx:Math.max(i.idx-1,0)},e.render();else if(K==="Home")O.preventDefault(),i={col:i.col,idx:0},e.render();else if(K==="End")O.preventDefault(),i={col:i.col,idx:Q-1},e.render();else if(K==="ArrowRight"){let G=Y.options[Math.min(i.idx,Q-1)];G?.children?.length&&(O.preventDefault(),n=[...Y.path,G.value],i={col:i.col+1,idx:0},e.render())}else K==="ArrowLeft"?i.col>0&&(O.preventDefault(),n=[...A[i.col-1].path],i={col:i.col-1,idx:0},e.render()):K==="Enter"&&!Y.options[Math.min(i.idx,Q-1)]?.disabled&&(O.preventDefault(),P(Y.options[Math.min(i.idx,Q-1)],Y.path))}},w?[L,V].filter(Boolean):V),S=Array.isArray(d)&&d.length?mp(u,d):h,R=[];v&&R.push(Be("label",{class:"wf-cascader-label"},v));let D=Be("button",{type:"button",class:`wf-cascader-trigger${m?" wf-cascader-trigger--dis":""}${b?" wf-cascader-trigger--err":""}`,"aria-label":x,"aria-haspopup":"listbox","aria-expanded":String(t),ref:s,onClick:m?void 0:E},[Be("span",{class:`wf-cascader-value${d?.length?"":" wf-cascader-value--placeholder"}`},S),Be("span",{class:`wf-cascader-arrow${t?" wf-cascader-arrow--open":""}`},Be(H,{name:"chevron-down",size:12}))]);return f(M),R.push(Be("div",{class:"wf-cascader"},[D])),b&&R.push(Be("div",{class:"wf-cascader-err"},b)),Be("div",{class:"wf-cascader-wrap"},R)}};import{h as st}from"weifuwu/vdom";var gp=(o,e)=>{let t=[],n=[],r="",a="";return s=>{let{data:i=[],targetKeys:l=[],onChange:c,titles:f=["\u6E90\u5217\u8868","\u76EE\u6807\u5217\u8868"],size:g="md",disabled:u,showSearch:d,searchPlaceholder:p="\u641C\u7D22\u2026"}=s,h=i.filter(T=>!l.includes(T.key)),m=i.filter(T=>l.includes(T.key)),b=(T,P)=>{if(u)return;let I=T==="left"?t:n,A=I.includes(P)?I.filter($=>$!==P):[...I,P];T==="left"?t=A:n=A,e.render()},v=()=>{if(!c||t.length===0)return;let T=[...l,...t];t=[],e.render(),c(T)},w=()=>{if(!c||n.length===0)return;let T=l.filter(P=>!n.includes(P));n=[],e.render(),c(T)},y=(T,P)=>{let I=T==="left"?t:n,A=(T==="left"?r:a).toLowerCase(),$=A?P.filter(B=>B.label.toLowerCase().includes(A)):P,N=d?st("input",{class:"wf-transfer-search wf-input",type:"text",placeholder:p,value:T==="left"?r:a,onInput:B=>{T==="left"?r=B.target.value:a=B.target.value,e.render()}}):null;return st("div",{class:`wf-transfer-list wf-transfer-list--${T}`},[st("div",{class:"wf-transfer-title"},f[T==="left"?0:1]),N,st("div",{class:"wf-transfer-body"},$.length===0?[st("div",{class:"wf-transfer-empty"},A?"\u65E0\u5339\u914D":"\u6682\u65E0\u6570\u636E")]:$.map(B=>st("button",{type:"button",class:["wf-transfer-item",I.includes(B.key)?"wf-transfer-item--sel":"",B.disabled?"wf-transfer-item--dis":""].filter(Boolean).join(" "),key:B.key,disabled:B.disabled||void 0,onClick:B.disabled?void 0:()=>b(T,B.key)},B.label)))].filter(Boolean))},x=t.length===0||u,k=n.length===0||u,E=st("div",{class:"wf-transfer-actions"},[st("button",{type:"button",class:"wf-transfer-btn",disabled:k||void 0,"aria-label":"\u79FB\u56DE\u5DE6\u4FA7",onClick:k?void 0:w},st(H,{name:"arrow-left",size:14})),st("button",{type:"button",class:"wf-transfer-btn",disabled:x||void 0,"aria-label":"\u79FB\u81F3\u53F3\u4FA7",onClick:x?void 0:v},st(H,{name:"arrow-right",size:14}))]);return st("div",{class:`wf-transfer wf-transfer--${g}`},[y("left",h),E,y("right",m)])}};import{h as Ct}from"weifuwu/vdom";var bp=(o,e)=>{let t="",n=0,r={},a=l=>{l&&queueMicrotask(()=>l.focus())};e.ui.useGlobalKey(l=>{let c=r.shortcut;if(!c)return;let f=c.split("+"),g=f.includes("mod"),u=f[f.length-1].toLowerCase();(!g||l.ctrlKey||l.metaKey)&&l.key.toLowerCase()===u&&(l.preventDefault(),r.onOpenChange?.(!r.open))});let s=null,i=l=>{r.open&&l&&!s?s=e.ui.openPopup({key:"command",mask:!0,maskCentered:!0,content:()=>l,onClose:()=>{s=null,r.open&&r.onOpenChange?.(!1)}}):!r.open&&s?(s.close(),s=null):s&&s.update(l)};return e.ui.onUnmount?.(()=>{s&&s.close()}),l=>{let{open:c,onOpenChange:f,items:g=[],placeholder:u="\u8F93\u5165\u547D\u4EE4\u6216\u641C\u7D22...",emptyText:d="\u65E0\u5339\u914D\u7ED3\u679C",globalShortcut:p="mod+k"}=l;if(r={open:c,onOpenChange:f,shortcut:p},!c)return i(null),null;let h=t?g.filter(y=>{let x=t.toLowerCase();return y.label.toLowerCase().includes(x)||(y.keywords??[]).some(k=>k.toLowerCase().includes(x))}):g;n>=h.length&&(n=Math.max(0,h.length-1));let m=()=>f?.(!1),b=y=>{if(y.key==="ArrowDown")y.preventDefault(),n=Math.min(n+1,Math.max(h.length-1,0)),e.render();else if(y.key==="ArrowUp")y.preventDefault(),n=Math.max(n-1,0),e.render();else if(y.key==="Enter"){y.preventDefault();let x=h[n];x&&(x.onSelect?.(),m())}else y.key==="Escape"&&m()},v=h.length>0?h.map((y,x)=>Ct("button",{type:"button",class:`wf-command-item${n===x?" wf-command-item--hl":""}`,key:y.key,onClick:()=>{y.onSelect?.(),m()},onMouseEnter:()=>{n=x}},[y.icon??Ct(H,{name:"search",size:14}),Ct("span",{class:"wf-command-item-label"},y.label),y.shortcut?Ct("kbd",{class:"wf-command-shortcut"},y.shortcut):null].filter(Boolean))):[Ct("div",{class:"wf-command-empty"},d)],w=Ct("div",{class:"wf-command-panel",role:"dialog","aria-label":"\u547D\u4EE4\u9762\u677F"},[Ct("div",{class:"wf-command-input-wrap"},[Ct(H,{name:"search",size:14}),Ct("input",{class:"wf-command-input",type:"text",placeholder:u,value:t,onInput:y=>{t=y.target.value,n=0,e.render()},onKeyDown:b,ref:a})]),Ct("div",{class:"wf-command-list"},v)]);return i(w),null}};import{createClientBrowser as yp}from"weifuwu/vdom";import{h as Mn}from"weifuwu/vdom";var wp=(o,e)=>{let t=e.browser??yp(),n=null,r=0,a=[],s=new Map,i=d=>{let p=s.get(d);return p||(p=h=>{h&&(a[d]=h)},s.set(d,p)),p},l=[],c=null,f=d=>{n&&d&&!c?c=e.ui.openPopup({anchor:()=>{let p=l.findIndex(h=>h.key===n);return p>=0?a[p]:null},placement:"bottom",center:!1,gap:4,content:()=>d,onClose:()=>{c=null,n&&g()}}):!n&&c?(c.close(),c=null):c&&c.update(d)},g=()=>{n!==null&&(n=null,e.render())},u=d=>{n=n===d?null:d,r=0,e.render()};return d=>{let{menus:p=[],"aria-label":h}=d;l=p;let m=y=>{if(y.key==="Escape"){g();return}if(y.key!=="ArrowRight"&&y.key!=="ArrowLeft")return;if(n){g();return}let x=t?.activeElement()??null,k=a.indexOf(x);if(k<0)return;y.preventDefault();let E=y.key==="ArrowRight"?(k+1)%l.length:(k-1+l.length)%l.length;a[E]?.focus()},b=l.map((y,x)=>{let k=n===y.key;return Mn("button",{type:"button",class:["wf-menubar-trigger",k?"wf-menubar-trigger--open":"",y.disabled?"wf-menubar-trigger--dis":""].filter(Boolean).join(" "),key:y.key,ref:i(x),"aria-haspopup":"menu","aria-expanded":k?"true":"false",onClick:y.disabled?void 0:()=>u(y.key),onKeyDown:E=>{(E.key==="ArrowDown"||E.key==="Enter")&&(E.preventDefault(),y.disabled||u(y.key))}},y.label)}),v=l.find(y=>y.key===n),w=v?Mn("div",{class:"wf-menubar-panel",role:"menu"},(v.items??[]).map((y,x)=>Mn("button",{type:"button",class:["wf-menubar-item",r===x?"wf-menubar-item--hl":"",y.disabled?"wf-menubar-item--dis":""].filter(Boolean).join(" "),key:y.key,role:"menuitem",onClick:y.disabled?void 0:()=>{y.onSelect?.(),g()},onMouseEnter:()=>{y.disabled||(r=x)}},[Mn("span",{class:"wf-menubar-item-label"},y.label),y.shortcut?Mn("kbd",{class:"wf-menubar-shortcut"},y.shortcut):null].filter(Boolean)))):null;return f(w),Mn("div",{class:"wf-menubar",role:"menubar","aria-label":h,onKeyDown:m},b)}};import{h as Dt}from"weifuwu/vdom";var vp=(o,e)=>{let t=0,n,r=0,a=()=>{},s=!1,i=3e3,l=0,c=()=>{n&&(clearInterval(n),n=void 0)},f=()=>{if(!(typeof window>"u")){if(!s){c();return}n&&l===i||(c(),l=i,n=setInterval(()=>a(t+1),i))}};return e.ui.hold(c),g=>{let{children:u=[],autoplay:d,interval:p=3e3,showArrows:h=!0,showDots:m=!0,loop:b=!0,"aria-label":v,className:w}=g,y=u.length;if(y===0)return c(),null;let x=$=>{let N=b?($+y)%y:Math.max(0,Math.min($,y-1));N!==t&&(t=N,e.render())};a=x,s=!!d,i=p,queueMicrotask(f);let k=()=>x(t+1),E=()=>x(t-1),T={onTouchStart:$=>{r=$.touches[0].clientX},onTouchEnd:$=>{let N=$.changedTouches[0].clientX-r;Math.abs(N)>40&&(N<0?k():E())}},P=Dt("div",{class:"wf-carousel-track",style:{transform:`translateX(-${t*100}%)`}},u),I=h?[Dt("button",{type:"button",class:"wf-carousel-arrow wf-carousel-arrow--prev","aria-label":"\u4E0A\u4E00\u5F20",onClick:E},Dt(H,{name:"chevron-left",size:18})),Dt("button",{type:"button",class:"wf-carousel-arrow wf-carousel-arrow--next","aria-label":"\u4E0B\u4E00\u5F20",onClick:k},Dt(H,{name:"chevron-right",size:18}))]:[],A=m?Dt("div",{class:"wf-carousel-dots"},u.map(($,N)=>Dt("button",{type:"button",class:`wf-carousel-dot${N===t?" wf-carousel-dot--active":""}`,key:N,"aria-label":`\u7B2C ${N+1} \u5F20`,onClick:()=>x(N)}))):null;return Dt("div",{class:["wf-carousel",w].filter(Boolean).join(" "),"aria-label":v,...T},[Dt("div",{class:"wf-carousel-viewport"},P),...I,A].filter(Boolean))}};import{h as Ho}from"weifuwu/vdom";var xp=(o,e)=>{let t=0,n={...o},r=l=>Math.max(n.min??80,Math.min(l,n.max??600)),a=l=>{let c=r(l);c!==t&&(t=c,n.onResize?.(c),e.render())},s=0,i=e.ui.useDrag({onStart:()=>{s=t},onMove:(l,c)=>{let f=n.direction==="horizontal"?c.x:c.y;a(s+f)}});return l=>{let{direction:c="horizontal",defaultSize:f=300,min:g=80,max:u=600,step:d=20,children:p,onResize:h,className:m}=l;Object.assign(n,l,{direction:c,min:g,max:u,step:d,onResize:h}),t===0&&(t=f);let v=Ho("div",{class:"wf-resizable-handle",role:"separator","aria-orientation":c==="horizontal"?"vertical":"horizontal",tabIndex:0,...i,onKeyDown:w=>{let y=c==="horizontal"?w.key==="ArrowRight"?d:w.key==="ArrowLeft"?-d:0:w.key==="ArrowDown"?d:w.key==="ArrowUp"?-d:0;y!==0&&(w.preventDefault(),a(t+y))}});return Ho("div",{class:["wf-resizable",`wf-resizable--${c}`,m].filter(Boolean).join(" ")},[Ho("div",{class:"wf-resizable-panel",style:{flexBasis:`${t}px`}},p[0]),v,Ho("div",{class:"wf-resizable-panel wf-resizable-panel--fill"},p[1])])}};import{h as Ve}from"weifuwu/vdom";var kp=["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],Cp=(o,e)=>{let t=new Date,n=t.getMonth(),r=t.getFullYear();return a=>{let{events:s=[],month:i,year:l,onMonthChange:c,onSelectDate:f,selectedDate:g,"aria-label":u}=a,d=i!==void 0&&l!==void 0,p=d?i:n,h=d?l:r,m=E=>{if(d&&!c){console.warn(`[weifuwu/Calendar] \u53D7\u63A7\u6A21\u5F0F\uFF08month/year \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onMonthChange\uFF0C\u6708\u4EFD\u5207\u6362\u65E0\u6CD5\u751F\u6548\u3002
52
- \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 month/year\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onMonthChange={(m, y) => setView(m, y)}`);return}let T=p+E,P=h;T<0?(T=11,P--):T>11&&(T=0,P++),d?c?.(T,P):(n=T,r=P,e.render())},b=()=>{d?c?.(t.getMonth(),t.getFullYear()):(n=t.getMonth(),r=t.getFullYear(),e.render())},v=Kn(h,p),w=vo(),y=Ve("div",{class:"wf-calendar-header"},[Ve("div",{class:"wf-calendar-title"},`${h} \u5E74 ${kp[p]}`),Ve("div",{class:"wf-calendar-nav"},[Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4E0A\u4E2A\u6708",onClick:()=>m(-1)},Ve(H,{name:"chevron-left",size:14})),Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4ECA\u5929",onClick:b},"\u4ECA\u5929"),Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4E0B\u4E2A\u6708",onClick:()=>m(1)},Ve(H,{name:"chevron-right",size:14}))])]),x=v.map((E,T)=>{let P=E.map(I=>{let A=Tt(I.year,I.month,I.day),$=s.filter(B=>B.date===A),N=g===A;return Ve("div",{class:["wf-calendar-cell",I.isOtherMonth?"wf-calendar-cell--other":"",I.isToday?"wf-calendar-cell--today":"",N?"wf-calendar-cell--selected":""].filter(Boolean).join(" "),key:`${I.year}-${I.month}-${I.day}`,role:"button",tabIndex:0,onClick:()=>f?.(A),onKeyDown:B=>{(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),f?.(A))}},[Ve("span",{class:"wf-calendar-day-num"},String(I.day)),...$.slice(0,3).map(B=>Ve("div",{class:"wf-calendar-event",style:B.color?{"--wf-event-color":B.color}:void 0,key:B.key},B.title)),$.length>3?Ve("div",{class:"wf-calendar-more"},`+${$.length-3} \u66F4\u591A`):null])});return Ve("div",{class:"wf-calendar-week",key:T},P)}),k=Ve("div",{class:"wf-calendar-grid"},[Ve("div",{class:"wf-calendar-weekdays"},w.map((E,T)=>Ve("div",{class:"wf-calendar-weekday",key:T},E))),...x]);return Ve("div",{class:"wf-calendar","aria-label":u},[y,k])}};import{createClientBrowser as Mp}from"weifuwu/vdom";import{h as Fi}from"weifuwu/vdom";var Pp=(o,e)=>{let t=e?.browser??Mp(),n="",r={text:"weifuwu",fontSize:14,color:"currentColor",opacity:.15,rotate:-25,gap:100},a=i=>{i&&!n&&(s(r.text,r.fontSize,r.color,r.opacity,r.rotate,r.gap),n&&(i.style.backgroundImage=`url(${n})`))},s=(i,l,c,f,g,u)=>{let d=t?.createElement("canvas");if(!d)return;let p=d.getContext("2d");if(!p)return;let{width:h}=p.measureText(i),m=Math.max(h+u,u),b=u;d.width=m,d.height=b,p.globalAlpha=f,p.font=`${l}px sans-serif`,p.fillStyle=c,p.translate(m/2,b/2),p.rotate(g*Math.PI/180),p.fillText(i,-h/2,0),n=d.toDataURL()};return i=>{let{text:l="weifuwu",fontSize:c=14,color:f="currentColor",opacity:g=.15,rotate:u=-25,gap:d=100,children:p,className:h}=i;return r={text:l,fontSize:c,color:f,opacity:g,rotate:u,gap:d},Fi("div",{class:["wf-watermark",h].filter(Boolean).join(" ")},[p,Fi("div",{class:"wf-watermark-overlay",style:{pointerEvents:"none",backgroundImage:n?`url(${n})`:void 0},ref:a})])}};import{h as Bo}from"weifuwu/vdom";var Sp=(o,e)=>{let t={},n=e.ui.useInView({rootMargin:()=>`0px 0px ${t.threshold??100}px 0px`,onChange:(r,a)=>{a&&t.hasMore!==!1&&!t.loading&&t.onLoadMore?.()}});return r=>{Object.assign(t,r);let{hasMore:a=!0,loading:s,threshold:i=100,children:l,loadMoreText:c="\u52A0\u8F7D\u4E2D...",endText:f="\u6CA1\u6709\u66F4\u591A\u4E86",className:g}=r,u=null;return s?u=Bo("div",{class:"wf-infinite-scroll-loading"},c):a===!1?u=Bo("div",{class:"wf-infinite-scroll-end"},f):u=Bo("div",{class:"wf-infinite-scroll-sentinel",ref:n.observe}),Bo("div",{class:["wf-infinite-scroll",g].filter(Boolean).join(" ")},[l,u])}};import{h as Ge}from"weifuwu/vdom";function Tp(o,e,t,n){if(!t||!n)return o;let r=e.find(s=>s.key===t);if(!r||!r.sortable)return o;let a=[...o];return a.sort((s,i)=>{let l=s[t],c=i[t],f=r.sorter?r.sorter(l,c):String(l??"").localeCompare(String(c??""));return n==="desc"?-f:f}),a}var Ep=(o,e)=>{let t=null,n=e.ui.useScrollPosition({getScroller:()=>t??null}),r=a=>{a?(t=a,n.refresh()):t=null};return a=>{let{columns:s,data:i=[],height:l=400,rowHeight:c=40,overscan:f=5,sortKey:g,sortOrder:u,onSort:d,emptyText:p="\u6682\u65E0\u6570\u636E",onRowClick:h,rowSelection:m,className:b}=a;t&&t.scrollTop!==n.y&&n.refresh();let v=Tp(i,s,g,u),w=v.length,y=m?.rowKey??"id",x=(V,U)=>V[y]!=null?V[y]:U,k=new Set(m?.selectedRowKeys??[]),E=(V,U)=>{if(!m)return;let L=x(V,U),C=k.has(L)?m.selectedRowKeys.filter(S=>S!==L):[...m.selectedRowKeys,L],M=C.map(S=>v.find((R,D)=>x(R,D)===S)).filter(Boolean);m.onChange?.(C,M)},T=()=>{if(!m)return;if(w>0&&v.every((U,L)=>k.has(x(U,L))))m.onChange?.([],[]);else{let U=v.map((L,C)=>x(L,C));m.onChange?.(U,[...v])}},P=V=>({width:typeof V.width=="number"?`${V.width}px`:V.width,flex:V.width?void 0:"1"}),I=s.map(V=>{let U=g===V.key,L=V.sortable?Ge("span",{class:`wf-virtual-table-sort-icon${U?" wf-virtual-table-sort-icon--active":""}`},U&&u==="desc"?Ge(H,{name:"chevron-down",size:12}):Ge(H,{name:"chevron-up",size:12})):null;return Ge("div",{class:`wf-virtual-table-th${V.sortable?" wf-virtual-table-th--sortable":""}${U?" wf-virtual-table-th--sorted":""}`,style:P(V),role:V.sortable?"button":void 0,tabIndex:V.sortable?0:void 0,onClick:V.sortable?()=>{d&&(g!==V.key?d(V.key,"asc"):d(V.key,u==="asc"?"desc":"asc"))}:void 0,onKeyDown:V.sortable?C=>{if(C.key==="Enter"||C.key===" "){if(C.preventDefault(),!d)return;g!==V.key?d(V.key,"asc"):d(V.key,u==="asc"?"desc":"asc")}}:void 0},[Ge("span",{class:"wf-virtual-table-th-label"},V.label),L].filter(Boolean))}),A=[];if(m){let V=w>0&&v.every((L,C)=>k.has(x(L,C))),U=w>0&&!V&&v.some((L,C)=>k.has(x(L,C)));A.push(Ge("div",{class:"wf-virtual-table-th wf-virtual-table-th--select",style:{width:"40px"}},Ge("input",{type:"checkbox",class:"wf-virtual-table-check",checked:V,indeterminate:U,"aria-label":V?"\u53D6\u6D88\u5168\u9009":"\u5168\u9009","aria-checked":U?"mixed":String(V),onChange:T})))}A.push(...I);let $=Ge("div",{class:"wf-virtual-table-thead"},A),N=Math.max(0,Math.floor(n.y/c)-f),B=Math.min(w,Math.ceil((n.y+l)/c)+f),q;if(w===0)q=Ge("div",{class:"wf-virtual-table-empty"},p);else{let V=Ge("div",{class:"wf-virtual-table-spacer",style:{height:`${w*c}px`}}),U=[];for(let L=N;L<B;L++){let C=v[L],M=[];if(m){let S=k.has(x(C,L));M.push(Ge("div",{class:"wf-virtual-table-td wf-virtual-table-td--select",style:{width:"40px"}},Ge("input",{type:"checkbox",class:"wf-virtual-table-check",checked:S,"aria-label":`\u9009\u62E9\u7B2C ${L+1} \u884C`,onChange:()=>E(C,L),onClick:R=>R.stopPropagation()})))}for(let S of s)M.push(Ge("div",{class:"wf-virtual-table-td",style:P(S)},S.render?S.render(C[S.key],C,L):String(C[S.key]??"")));U.push(Ge("div",{class:"wf-virtual-table-row",style:{position:"absolute",top:`${L*c}px`,left:0,right:0,height:`${c}px`},key:String(C.id??L),onClick:h?()=>h(C,L):void 0},M))}q=Ge("div",{class:"wf-virtual-table-body",style:{position:"relative",width:"100%",height:`${l}px`,overflowY:"auto"},ref:r},[V,...U])}return Ge("div",{class:["wf-virtual-table",b].filter(Boolean).join(" "),style:{width:"100%",minHeight:`${l}px`}},[$,q])}};import{createClientBrowser as Ip}from"weifuwu/vdom";import{h as Gi}from"weifuwu/vdom";var $p=(o,e)=>{let t=e.browser??Ip(),n=null,r,a,s=u=>{u&&(n=u)},i={...o},l=()=>i.container?i.container():window,c=e.ui.useScrollPosition({getScroller:l}),f=(u,d)=>{let p;for(let h of u){let m=h.href.startsWith("#")?e.browser?.byId(h.href.slice(1))??null:null;m&&m.getBoundingClientRect().top<=d&&(p=h.href)}return p??u[0]?.href},g=u=>{if(!["ArrowDown","ArrowUp","Home","End"].includes(u.key))return;let d=n?Array.from(n.querySelectorAll(".wf-anchor-link")):[],p=d.indexOf(t?.activeElement()??null);if(p<0)return;u.preventDefault();let h=p;u.key==="ArrowDown"?h=(p+1)%d.length:u.key==="ArrowUp"?h=(p-1+d.length)%d.length:u.key==="Home"?h=0:u.key==="End"&&(h=d.length-1),d[h].focus()};return u=>{Object.assign(i,u);let{items:d,activeKey:p,onAnchorChange:h,useHash:m,offsetTop:b=80,className:v}=u,w=f(d,b);r!==w&&(r=w,w!==void 0&&w!==a&&(a=w,h?.(w)));let y=p!==void 0?p:r??w,x=E=>T=>{T.preventDefault(),m&&e.browser?.setHash(E),h?.(E),!m&&p===void 0&&(r=E);let P=E.startsWith("#")?e.browser?.byId(E.slice(1))??null:null;P&&typeof P.scrollIntoView=="function"&&P.scrollIntoView({behavior:"smooth",block:"start"})},k=d.map(E=>{let T=y===E.href;return Gi("a",{key:E.href,class:`wf-anchor-link${T?" wf-anchor-link--active":""}`,href:E.href,role:"link",tabIndex:0,"aria-current":T?"true":void 0,onClick:x(E.href),onKeyDown:P=>{(P.key==="Enter"||P.key===" ")&&(P.preventDefault(),x(E.href)(P))}},E.title)});return Gi("nav",{class:["wf-anchor-nav",v].filter(Boolean).join(" "),ref:s,onKeyDown:g,"aria-label":"\u951A\u70B9\u5BFC\u822A"},k)}};import{h as mt}from"weifuwu/vdom";var Wi=/\x1b\[([\d;]*)m/g;function qi(o){let e=[],t=0,n=new Set,r;for(;r=Wi.exec(o);){let s=o.slice(t,r.index);s&&(n.size?e.push(mt("span",{class:[...n].join(" ")},s)):e.push(s));let i=r[1].split(";").filter(Boolean);for(let l of i)l==="0"?n.clear():l==="1"?n.add("wf-log-ansi--bold"):+l>=30&&+l<=37?n.add(`wf-log-ansi--${l}`):+l>=40&&+l<=47&&n.add(`wf-log-ansi--bg${l}`);t=Wi.lastIndex}let a=o.slice(t);return a&&(n.size?e.push(mt("span",{class:[...n].join(" ")},a)):e.push(a)),e}var Ap=(o,e)=>{let t=null,n=0,r=!0,a=e.ui.useScrollPosition({getScroller:()=>t??null}),s=l=>{l?(t=l,a.refresh()):t=null},i=async l=>{await e.browser?.copyText(l.join(`
53
- `))};return l=>{let{lines:c,height:f=400,lineHeight:g=24,overscan:u=5,follow:d=!0,maxLines:p,showCopy:h=!0,showLineNumbers:m=!0,className:b}=l,v=p!=null&&c.length>p?c.length-p:0,w=p!=null&&c.length>p?c.slice(-p):c,y=w.length;d&&c.length!==n?(n=c.length,r&&t&&queueMicrotask(()=>{t&&(t.scrollTop=t.scrollHeight)})):n=c.length;let x=y*g;t&&(r=a.y+f>=x-2);let k=Math.max(0,Math.floor(a.y/g)-u),E=Math.min(y,Math.ceil((a.y+f)/g)+u),T=mt("div",{class:"wf-log-spacer",style:{height:`${x}px`}}),P=[];for(let $=k;$<E;$++){let N=$+v+1;P.push(mt("div",{class:"wf-log-row",style:{position:"absolute",top:`${$*g}px`,left:0,right:0,height:`${g}px`},key:`${N}:${w[$]}`},[m?mt("span",{class:"wf-log-line-no"},String(N)):null,mt("span",{class:"wf-log-line-content"},qi(w[$]))].filter(Boolean)))}let I=h?mt("button",{class:"wf-log-copy","aria-label":"\u590D\u5236\u5168\u90E8\u65E5\u5FD7",onClick:()=>{i(c)}},mt(H,{name:"copy",size:14})):null,A=y===0?mt("div",{class:"wf-log-empty"},"\u6682\u65E0\u65E5\u5FD7"):mt("div",{class:"wf-log-body",style:{position:"relative",width:"100%",height:`${f}px`,overflowY:"auto"},ref:s},[T,...P]);return mt("div",{class:["wf-log-viewer",b].filter(Boolean).join(" "),style:{width:"100%"}},[I,A].filter(Boolean))}};import{h as ts}from"weifuwu/vdom";var Qr=new Array(256),Jr=new Array(256),no=1;for(let o=0;o<255;o++)Qr[o]=no,Jr[no]=o,no<<=1,no&256&&(no^=285);function Xi(o,e){return o===0||e===0?0:Qr[(Jr[o]+Jr[e])%255]}var Zr=[{total:26,ec:[7,10,13,17],blocks:[1,1,1,1]},{total:44,ec:[10,16,22,28],blocks:[1,1,1,1]},{total:70,ec:[15,26,18,22],blocks:[1,1,2,2]},{total:100,ec:[20,18,26,16],blocks:[1,2,2,4]},{total:134,ec:[26,24,18,22],blocks:[1,2,4,4]},{total:172,ec:[18,16,24,28],blocks:[2,4,4,4]}],Dp={L:0,M:1,Q:2,H:3};function Lp(o,e){for(let t=0;t<Zr.length;t++){let n=Zr[t],r=n.total-n.ec[e]*n.blocks[e];if(o<=r)return t+1}throw new Error("\u6570\u636E\u8D85\u51FA QR \u5BB9\u91CF\uFF08\u7248\u672C 1-6\uFF09")}function Rp(o){return Qr[o%255]}function Np(o,e){let t=[1];for(let r=0;r<e;r++){let a=new Array(t.length+1).fill(0);for(let s=0;s<t.length;s++)a[s]^=Xi(t[s],Rp(r)),a[s+1]^=t[s];t=a}let n=[...o,...new Array(e).fill(0)];for(let r=0;r<o.length;r++){let a=n[r];if(a!==0)for(let s=1;s<t.length;s++)n[r+s]^=Xi(t[s],a)}return n.slice(o.length)}function Op(o,e){let t=[],n=(i,l)=>{for(let c=l-1;c>=0;c--)t.push(i>>c&1)};n(4,4),n(o.length,8);for(let i of o)n(i,8);for(n(0,Math.min(4,e*8-t.length));t.length%8!==0;)t.push(0);let r=[];for(let i=0;i<t.length;i+=8){let l=0;for(let c=0;c<8;c++)l=l<<1|t[i+c];r.push(l)}let a=[236,17],s=0;for(;r.length<e;)r.push(a[s++%2]);return r}var Yi={1:[],2:[6,18],3:[6,22],4:[6,26],5:[6,30],6:[6,34]};function Ji(o,e,t,n){let r=17+4*o,a=Array.from({length:r},()=>new Array(r).fill(!1)),s=(d,p,h)=>{d>=0&&d<r&&p>=0&&p<r&&(a[d][p]=h)},i=(d,p)=>{for(let h=-1;h<=7;h++)for(let m=-1;m<=7;m++){let b=d+h,v=p+m;if(b<0||b>=r||v<0||v>=r||!(h>=0&&h<=6&&m>=0&&m<=6))continue;let y=h===0||h===6||m===0||m===6||h>=2&&h<=4&&m>=2&&m<=4;s(b,v,y)}};i(0,0),i(0,r-7),i(r-7,0);for(let d=8;d<r-8;d++)s(6,d,d%2===0),s(d,6,d%2===0);let l=Yi[o];if(l.length>1)for(let d=0;d<l.length;d++)for(let p=0;p<l.length;p++){let h=l[d],m=l[p];if(!(h===6&&m===6||h===6&&m===r-7||h===r-7&&m===6))for(let b=-2;b<=2;b++)for(let v=-2;v<=2;v++)s(h+b,m+v,Math.max(Math.abs(b),Math.abs(v))!==1)}s(r-8,8,!0);let c=[];for(let d of e)for(let p=7;p>=0;p--)c.push((d>>p&1)===1);for(let d of t)for(let p=7;p>=0;p--)c.push((d>>p&1)===1);let f=(d,p)=>{if(d===6||p===6)return!0;for(let[m,b]of[[0,0],[0,r-7],[r-7,0]])if(d>=m-1&&d<=m+7&&p>=b-1&&p<=b+7)return!0;let h=Yi[o];if(h.length>1){for(let m of h)for(let b of h)if(Math.abs(d-m)<=2&&Math.abs(p-b)<=2)return!0}return!1},g=0,u=!0;for(let d=r-1;d>0;d-=2){d===6&&d--;for(let p=0;p<r;p++){let h=u?r-1-p:p;for(let m=0;m<2;m++){let b=d-m;if(!f(h,b)&&g<c.length){let v=c[g++],w=Hp(n,h,b);s(h,b,v!==w)}}}u=!u}return a}function Hp(o,e,t){switch(o){case 0:return(e+t)%2===0;case 1:return e%2===0;case 2:return t%3===0;case 3:return(e+t)%3===0;case 4:return(Math.floor(e/2)+Math.floor(t/3))%2===0;case 5:return e*t%2+e*t%3===0;case 6:return(e*t%2+e*t%3)%2===0;case 7:return((e+t)%2+e*t%3)%2===0;default:return!1}}function Bp(o,e){let n=[1,0,3,2][o]<<3|e,r=n<<10,a=1335;for(;Math.clz32(r)>Math.clz32(a);){let s=Math.clz32(r)-Math.clz32(a);r^=a<<s}r=n<<10;for(let s=14;s>=10;s--)r>>s&1&&(r^=a<<s-10);return(n<<10|r)^21522}function Zi(o,e,t){let n=o.length,r=Bp(e,t),a=l=>(r>>14-l&1)===1;[[8,0],[8,1],[8,2],[8,3],[8,4],[8,5],[8,7],[8,8],[7,8],[5,8],[4,8],[3,8],[2,8],[1,8],[0,8]].forEach(([l,c],f)=>{o[l][c]=a(f)}),[[8,n-8],[8,n-7],[7,n-8],[5,n-8],[4,n-8],[3,n-8],[2,n-8],[1,n-8],[0,n-8],[n-1,8],[n-2,8],[n-3,8],[n-4,8],[n-5,8],[n-6,8],[n-7,8]].forEach(([l,c],f)=>{o[l][c]=a(f)})}function Up(o){let e=o.length,t=0,n=s=>{let i=1;for(let l=1;l<=s.length;l++){if(l<s.length&&s[l]===s[l-1]){i++;continue}i>=5&&(t+=3+(i-5)),i=1}};for(let s=0;s<e;s++)n(o[s]);for(let s=0;s<e;s++)n(o.map(i=>i[s]));for(let s=0;s<e-1;s++)for(let i=0;i<e-1;i++)o[s][i]===o[s][i+1]&&o[s][i]===o[s+1][i]&&o[s][i]===o[s+1][i+1]&&(t+=3);let a=o.flat().filter(Boolean).length*100/(e*e);return t+=Math.floor(Math.abs(a-50)/5)*10,t}function es(o,e="M"){let t=new TextEncoder().encode(o),n=Dp[e],r=Lp(t.length,n),a=Zr[r-1],s=a.ec[n],i=a.blocks[n],l=a.total-s*i,c=Op(t,l),f=Math.floor(c.length/i),g=[],u=[];for(let w=0;w<i;w++){let y=c.slice(w*f,(w+1)*f);g.push(y),u.push(Np(y,s))}let d=[];for(let w=0;w<f;w++)for(let y of g)d.push(y[w]);for(let w=0;w<s;w++)for(let y of u)d.push(y[w]);let p=d.slice(0,l),h=d.slice(l),m=0,b=1/0;for(let w=0;w<8;w++){let y=Ji(r,p,h,w);Zi(y,n,w);let x=Up(y);x<b&&(b=x,m=w)}let v=Ji(r,p,h,m);return Zi(v,n,m),{size:17+4*r,version:r,level:e,mask:m,matrix:v}}var zp=(o,e)=>t=>{let{value:n,ecLevel:r="M",size:a=128,quietZone:s=4,color:i="currentColor",bgColor:l,className:c}=t,f=es(n,r),g=s,u=[];l&&u.push(ts("rect",{class:"wf-qr-bg",x:0,y:0,width:f.size+g*2,height:f.size+g*2,fill:l}));for(let p=0;p<f.size;p++)for(let h=0;h<f.size;h++)f.matrix[p][h]&&u.push(ts("rect",{x:h+g,y:p+g,width:1,height:1,fill:i}));let d=f.size+g*2;return ts("svg",{class:["wf-qr",c].filter(Boolean).join(" "),width:a,height:a,viewBox:`0 0 ${d} ${d}`,role:"img","aria-label":`\u4E8C\u7EF4\u7801\uFF1A${n}`,shapeRendering:"crispEdges"},u)};import{h as ht}from"weifuwu/vdom";function Qi(o,e){let t=o===""?[]:o.split(`
45
+ `+w.map(y=>"| "+Array.from(y.matchAll(/<t[hd]>([\s\S]*?)<\/t[hd]>/g),k=>nd(k[1])).join(" | ")+" |").join(`
46
+ `)}else{let w=v.html.replace(/^<code>/,"").replace(/<\/code>$/,"");h+="`"+w+"`"}}else h+=b}u&&(h=`**${h}**`),p&&(h=`*${h}*`),d&&(h=`[${h}](${d.href??""})`),s+=h}return s}function Qn(o){let e=[0];for(let a=0;a<o.text.length;a++)o.text[a]===`
47
+ `&&e.push(a+1);let t=[];for(let a=0;a<e.length;a++){let s=e[a],i=a+1<e.length?e[a+1]-1:o.text.length,l=o.blockProps.find(f=>f.start===s),c=td(o,s,i);l?.kind==="h1"?t.push(`# ${c}`):l?.kind==="h2"?t.push(`## ${c}`):l?.kind==="h3"?t.push(`### ${c}`):l?.kind==="quote"?t.push(`> ${c}`):l?.kind==="ul"?t.push(`- ${c}`):l?.kind==="ol"?t.push(`1. ${c}`):t.push(c)}let n=a=>/^(- |1\. )/.test(a),r=[];for(let a=0;a<t.length;a++)a>0&&!(n(t[a-1])&&n(t[a]))&&r.push(""),r.push(t[a]);return r.join(`
48
+ `)}function Eo(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function nd(o){return o.replace(/<[^>]*>/g,"").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&")}function od(o){return Eo(o).replace(/"/g,"&quot;")}_t();import{createClientBrowser as Md}from"weifuwu/vdom";function Pd(o,e){let t=(o||e||"").toLowerCase();return t.endsWith(".md")||t.endsWith(".markdown")?"md":t.endsWith(".txt")?"text":t.endsWith(".html")||t.endsWith(".htm")?"html":t.endsWith(".pdf")?"pdf":/\.(docx?|xlsx?|pptx?|odt|ods|odp)$/.test(t)?"office":"text"}var Di=(o,e)=>{let t=e.browser??Md(),n=mn,r=null,a=null,s=null,i=!1,l=!1,c=!1,f=!1,g={status:"idle",content:null,error:null},u=null,p=async d=>{if(!(typeof window>"u")&&u!==d){u=d,g={status:"loading",content:null,error:null},le("preview",{type:"remote",url:d,status:"loading"});try{console.log("[fp-dbg] fetching",d);let h=await fetch(d);if(!h.ok)throw new Error(`HTTP ${h.status}`);let m=await h.text();g={status:"idle",content:m,error:null},le("preview",{type:"remote",url:d,status:"loaded",chars:m.length}),e.render()}catch(h){g={status:"error",content:null,error:h instanceof Error?h.message:String(h)},le("preview",{type:"remote",url:d,status:"error",message:g.error}),e.render()}}};return d=>{let{type:h,content:m="",url:b,fileName:v,editable:w,ai:y,onSave:x,onLoad:k,height:E="400px"}=d,P=h??Pd(v,b),S=P==="md"||P==="text",I=m||(g.status==="idle"?g.content??"":"");(P==="md"||P==="html"||P==="text")&&b&&u!==b&&p(b);let A=(D,C)=>{f||(f=!0,le("preview",{type:P,chars:D,blocks:C,status:"loaded"}),k?.({type:P,chars:D,blocks:C}))},$=null;if(P==="md")if(w&&i){c||(c=!0,n=ot(Dr(I)));let D=n.text.replace(/\uFFFC/g,"").length;A(D,n.blockProps.length+n.embeds.length+1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:C=>{n=ot(C),l=!0,e.render()}})}else A(I.length,0),$=be("div",{class:"wf-filepreview-doc",style:{height:E,overflow:"auto"}},[v?be("div",{class:"wf-filepreview-name"},v):null,be(Zn,{key:"md",content:c?Qn(n):I})]);else P==="text"?w&&i?(c||(c=!0,n=ot(`<p>${Sd(I)}</p>`)),A(I.length,1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:D=>{n=ot(D),l=!0,e.render()}})):(A(I.length,1),$=be("div",{class:"wf-filepreview-doc",style:{height:E,overflow:"auto"}},[v?be("div",{class:"wf-filepreview-name"},v):null,be("pre",{class:"wf-filepreview-text"},c?n.text:I)])):P==="html"?(A(I.length,0),$=be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",sandbox:"allow-same-origin",srcDoc:I,style:{width:"100%",height:"100%",border:"none"}})])):P==="office"?w&&r?(c||(c=!0,n=r),A(n.text.replace(/\uFFFC/g,"").length,n.blockProps.length+n.embeds.length+1),$=be(qn,{key:"editor",minHeight:E,ai:y,onChange:D=>{n=ot(D),l=!0,e.render()}})):w&&a?(A(0,0),$=be(So,{key:"sheet-grid",ai:y?{url:y.url,headers:y.headers}:void 0,height:E,onChange:D=>{a=D}})):w&&s?(A(0,0),$=be(To,{key:"slide-canvas",ai:y?{url:y.url,headers:y.headers}:void 0,height:E,onChange:D=>{s=D}})):w?(A(0,0),$=be("div",{class:"wf-filepreview-empty"},"\u6253\u5F00\u672C\u5730 .docx/.xlsx/.pptx \u6587\u4EF6\uFF08\u524D\u7AEF\u96F6\u4F9D\u8D56\u8F6C\u6362\u2014\u2014\u65E0\u9700\u540E\u7AEF\uFF09")):(A(0,0),$=b?be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",src:b,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):be("div",{class:"wf-filepreview-empty"},"office \u6587\u4EF6\u9700\u8981 URL \u6216\u5F00\u542F editable \u672C\u5730\u5BFC\u5165")):P==="pdf"&&(A(0,0),$=b?be("div",{class:"wf-filepreview-frame",style:{height:E}},[be("iframe",{class:"wf-filepreview-iframe",src:b,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):be("div",{class:"wf-filepreview-empty"},"\u7F3A\u5C11\u6587\u4EF6 URL"));g.status==="loading"&&(P==="md"||P==="html"||P==="text")?$=be("div",{class:"wf-filepreview-empty"},"\u52A0\u8F7D\u4E2D\u2026"):g.status==="error"&&(P==="md"||P==="html"||P==="text")&&($=be("div",{class:"wf-filepreview-empty wf-filepreview-error"},`\u52A0\u8F7D\u5931\u8D25: ${g.error}`));let N=()=>{if(!x||!S||!w)return;let D=P==="md"?Qn(n):n.text;x(D,P),l=!1,le("preview",{type:P,status:"saved",chars:D.length}),e.render()},B=null,W=()=>{B||(B=t.createElement("input"),B.type="file",B.accept=".docx,.xlsx,.xls,.pptx",B.style.display="none",B.onchange=()=>{let D=B.files?.[0];if(!D)return;let C=/\.xlsx?$/i.test(D.name),M=/\.pptx?$/i.test(D.name);D.arrayBuffer().then(async T=>{try{if(M){let{pptxToDeck:R}=await Promise.resolve().then(()=>(Or(),Hr)),L=await R(new Uint8Array(T));s=L.deck,r=null,a=null,le("preview",{type:"office",status:"imported",docType:"pptx",warnings:L.warnings.length})}else if(C){let{xlsxToWorkbook:R}=await Promise.resolve().then(()=>(zr(),Ur)),L=await R(new Uint8Array(T));a=L.workbook,r=null,s=null,le("preview",{type:"office",status:"imported",docType:"xlsx",warnings:L.warnings.length})}else{let{docxToDoc:R}=await Promise.resolve().then(()=>(Vr(),_r)),L=await R(new Uint8Array(T));r=L.doc,a=null,s=null,n=L.doc,c=!0,i=!0,l=!1,le("preview",{type:"office",status:"imported",docType:"docx",warnings:L.warnings.length})}e.render()}catch(R){le("preview",{type:"office",status:"import-error",message:String(R)})}})},typeof document<"u"&&t.bodyAppend?.(B)),B.click()},z=()=>{if(r)Promise.resolve().then(()=>(Vr(),_r)).then(({docToDocx:D})=>{let C=D(n),M=t.downloadFile(v??"office-doc.docx",C.data,"application/vnd.openxmlformats-officedocument.wordprocessingml.document");le("preview",{type:"office",status:M?"exported":"export-error"})});else if(a){let D=a;Promise.resolve().then(()=>(zr(),Ur)).then(({workbookToXlsx:C})=>{let M=C(D),T=t.downloadFile(v??"sheet.xlsx",M.data,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");le("preview",{type:"office",status:T?"exported":"export-error"})})}else if(s){let D=s;Promise.resolve().then(()=>(Or(),Hr)).then(({deckToPptx:C})=>{let M=C(D),T=t.downloadFile(v??"deck.pptx",M.data,"application/vnd.openxmlformats-officedocument.presentationml.presentation");le("preview",{type:"office",status:T?"exported":"export-error"})})}},U=async()=>{let D=S?i?Qn(n):I:m;await t.copyText(D),le("preview",{type:P,status:"copied",chars:D.length})};return be("div",{class:`wf-filepreview wf-filepreview--${P}`,onKeyDown:D=>{(D.ctrlKey||D.metaKey)&&D.key.toLowerCase()==="s"&&S&&w&&(D.preventDefault(),N())}},[$,S||P==="office"||P==="html"&&m?be("div",{class:"wf-filepreview-actions"},[P==="office"&&w?be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"open","data-open":"true",onClick:()=>W()},r?"\u91CD\u65B0\u6253\u5F00":"\u6253\u5F00 docx"):null,P==="office"&&w&&(r||a||s)?be("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"dl","data-dl":"true",onClick:()=>z()},s?"\u4E0B\u8F7D pptx":a?"\u4E0B\u8F7D xlsx":"\u4E0B\u8F7D docx"):null,S&&w?be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"toggle",onClick:()=>{i=!i,le("preview",{type:P,status:i?"edit-start":"view"}),e.render()}},i?"\u9884\u89C8":"\u7F16\u8F91"):null,be("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"copy","data-copy":"true",onClick:()=>{U()}},"\u590D\u5236"),...S&&w&&x&&(i||l)?[l?be("span",{class:"wf-filepreview-dirty",key:"dirty"},"\u672A\u4FDD\u5B58"):null,be("span",{class:"wf-filepreview-actions-hint",key:"hint"},"Ctrl+S \u4FDD\u5B58"),be("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"save",onClick:()=>N()},"\u4FDD\u5B58")]:[]]):null])}};function Sd(o){return o.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}import{h as $t}from"weifuwu/vdom";var Td=(o,e)=>t=>{let{items:n,mode:r="left",reverse:a}=t,i=(a?[...n].reverse():n).map((l,c)=>{let{key:f,title:g,time:u,content:p,status:d="default",dot:h,onClick:m}=l,b=$t("div",{class:`wf-timeline-node wf-timeline-node--${d}`},h??null),v=$t("div",{class:"wf-timeline-head"},[$t("span",{class:"wf-timeline-title"},g),u?$t("span",{class:"wf-timeline-time"},u):null].filter(Boolean)),w=p!=null?$t("div",{class:"wf-timeline-content"},p):null,y=$t("div",{class:"wf-timeline-col"},[v,w].filter(Boolean));if(r==="horizontal")return $t("li",{key:f,class:`wf-timeline-item wf-timeline-item--h${m?" wf-timeline-item--clickable":""}`,role:m?"button":void 0,tabIndex:m?0:void 0,onClick:m,onKeyDown:m?k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),m())}:void 0},[b,y]);let x=r==="alternate"?c%2===0?" wf-timeline-item--alt-left":" wf-timeline-item--alt-right":"";return $t("li",{key:f,class:`wf-timeline-item${m?" wf-timeline-item--clickable":""}${x}`,role:m?"button":void 0,tabIndex:m?0:void 0,onClick:m,onKeyDown:m?k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),m())}:void 0},[b,y])});return $t("ul",{class:`wf-timeline${r==="horizontal"?" wf-timeline--h":""}`},i)};import{h as Do}from"weifuwu/vdom";var Ed=(o,e)=>t=>{let{items:n,column:r=1,bordered:a,size:s="md",className:i}=t,l=n.map((c,f)=>Do("div",{key:f,class:"wf-descriptions-item",style:c.span&&c.span>1?{gridColumn:`span ${c.span}`}:void 0},[Do("dt",{class:"wf-descriptions-label"},c.label),Do("dd",{class:"wf-descriptions-value"},c.value)]));return Do("dl",{class:`wf-descriptions wf-descriptions--${r} wf-descriptions--${s}${a?" wf-descriptions--bordered":""}${i?` ${i}`:""}`},l)};import{h as Lo}from"weifuwu/vdom";var Id=(o,e)=>t=>{let{items:n,max:r,size:a,className:s}=t;if(!n||n.length===0)return null;let i=r&&n.length>r?n.slice(0,r):n,l=r?Math.max(0,n.length-r):0,c=i.map((g,u)=>Lo("span",{key:u,class:"wf-avatar-group-item"},Lo(dn,{name:g.name,src:g.src,color:g.color,size:a}))),f=l>0?Lo("span",{class:"wf-avatar-group-more",role:"img","aria-label":`\u8FD8\u6709 ${l} \u4EBA`},`+${l}`):null;return Lo("div",{class:`wf-avatar-group${s?` ${s}`:""}`},[...c,f].filter(Boolean))};import{h as Ro}from"weifuwu/vdom";var $d=(o,e)=>t=>{let{content:n,role:r,status:a="complete",actions:s,className:i}=t,l=r==="user"?"wf-bubble--own":"wf-bubble--ai",c=a==="error"?" wf-bubble--error":a==="streaming"?" wf-bubble--streaming":"",f=s?Ro("div",{class:"wf-bubble-body"},[Ro("div",{class:"wf-bubble-text"},n),Ro("div",{class:"wf-bubble-actions"},s)]):n;return Ro("div",{class:`wf-bubble ${l}${c}${i?` ${i}`:""}`,role:a==="error"?"alert":void 0},f)};import{h as At}from"weifuwu/vdom";var Ad=(o,e)=>{let t=!1;return n=>{let{value:r,onInput:a,onChange:s,label:i,name:l,placeholder:c,disabled:f,error:g,hint:u,required:p,autoComplete:d,className:h}=n,m=()=>{f||(t=!t,e.render())},b=i?At("label",{class:"wf-input-label"},[i,p?At("span",{class:"wf-input-req"},"*"):null].filter(Boolean)):null,v=At("input",{class:"wf-input",type:t?"text":"password",value:r,name:l,placeholder:c,disabled:f,autoComplete:d,onInput:a,onChange:s}),w=At("button",{class:"wf-password-eye",type:"button","aria-label":t?"\u9690\u85CF\u5BC6\u7801":"\u663E\u793A\u5BC6\u7801",tabIndex:-1,onClick:m},At(O,{name:t?"eye-off":"eye",size:16})),y=At("div",{class:"wf-input-wrap wf-password"},[v,w]),x=[];return b&&x.push(b),x.push(y),g&&x.push(At("div",{class:"wf-input-err"},g)),u&&!g&&x.push(At("div",{class:"wf-input-hint"},u)),At("div",{class:`wf-field${h?` ${h}`:""}`},x)}};import{h as xt}from"weifuwu/vdom";var Dd=(o,e)=>{let t=!1;return n=>{let{placeholder:r,maxTags:a,allowDuplicates:s,disabled:i,label:l,error:c,hint:f,className:g}=n,u=e?.ui?.useControlled({value:n.value,onChange:n.onChange,name:"TagsInput"}),p=u?.value??[],d=E=>{let P=u?.controlled?.value!==void 0;u?.setValue(E),P||n.onChange?.(E)},h=E=>{if(i)return;let P=E.trim().replace(/,$/,"");P&&(a!=null&&p.length>=a||!s&&p.includes(P)||d([...p,P]))},m=E=>{i||d(p.filter(P=>P!==E))},b=E=>{let P=E.target;if(E.key==="Enter"||E.key===","){if(E.preventDefault(),t)return;h(P.value),P.value=""}else E.key==="Backspace"&&!P.value&&p.length>0&&m(p[p.length-1])},v=l?xt("label",{class:"wf-input-label"},l):null,w=p.map(E=>xt("span",{key:E,class:"wf-tags-tag"},[xt("span",{class:"wf-tags-text"},E),xt("button",{class:"wf-tags-remove",type:"button","aria-label":`\u79FB\u9664 ${E}`,onClick:()=>m(E)},xt(O,{name:"close",size:12}))])),y=xt("input",{class:"wf-tags-input",type:"text",placeholder:p.length===0?r:void 0,disabled:i,onKeyDown:b,onCompositionStart:()=>{t=!0},onCompositionEnd:()=>{t=!1}}),x=xt("div",{class:`wf-tags${i?" wf-tags--disabled":""}${c?" wf-tags--err":""}${g?` ${g}`:""}`},[...w,y]),k=[];return v&&k.push(v),k.push(x),c&&k.push(xt("div",{class:"wf-input-err"},c)),f&&!c&&k.push(xt("div",{class:"wf-input-hint"},f)),xt("div",{class:"wf-field"},k)}};import{h as Kr}from"weifuwu/vdom";var Ld=(o,e)=>t=>{let{text:n,query:r,className:a}=t,s=(Array.isArray(r)?r:r?[r]:[]).filter(Boolean).map(f=>f.toLowerCase());if(s.length===0)return Kr("span",{class:`wf-highlight${a?` ${a}`:""}`},n);let i=[],l=0,c=n.toLowerCase();for(;l<n.length;){let f=null;for(let g of s){let u=c.indexOf(g,l);u>=0&&(!f||u<f.start)&&(f={start:u,end:u+g.length})}if(!f){i.push(n.slice(l));break}f.start>l&&i.push(n.slice(l,f.start)),i.push(Kr("mark",{class:"wf-highlight-mark"},n.slice(f.start,f.end))),l=f.end}return Kr("span",{class:`wf-highlight${a?` ${a}`:""}`},i)};import{h as Qt}from"weifuwu/vdom";var Rd=(o,e)=>t=>{let{items:n,renderItem:r,divided:a,header:s,footer:i,emptyText:l="\u6682\u65E0\u6570\u636E",emptyIcon:c,className:f,keyBy:g}=t,u=n.length===0?Qt("div",{class:"wf-list-empty"},[c??null,Qt("span",{},l)].filter(Boolean)):n.map((p,d)=>Qt("li",{key:g?g(p,d):d,class:"wf-list-item"},r(p,d)));return Qt("div",{class:`wf-list${a?" wf-list--divided":""}${f?` ${f}`:""}`},[s?Qt("div",{class:"wf-list-header"},s):null,Qt("ul",{class:"wf-list-body"},u),i?Qt("div",{class:"wf-list-footer"},i):null].filter(Boolean))};import{h as Cn}from"weifuwu/vdom";var Nd={success:"check",error:"close",warning:"alert",info:"info"},Hd=(o,e)=>t=>{let{status:n="info",title:r,desc:a,extra:s,className:i}=t;return Cn("div",{class:`wf-result wf-result--${n}${i?` ${i}`:""}`},[Cn("div",{class:"wf-result-icon","aria-hidden":"true"},Cn(O,{name:Nd[n],size:40})),Cn("div",{class:"wf-result-title"},r),a?Cn("div",{class:"wf-result-desc"},a):null,s?Cn("div",{class:"wf-result-extra"},s):null].filter(Boolean))};import{h as en}from"weifuwu/vdom";var Od=(o,e)=>{let t=-1,n=r=>{t!==r&&(t=r,e.render())};return r=>{let{count:a=5,size:s="md",readOnly:i,disabled:l,allowClear:c,allowHalf:f,"aria-label":g}=r,u=i||l,p=e?.ui?.useControlled({value:r.value,onChange:r.onChange,name:u?void 0:"Rate"}),d=p?.value??0,h=x=>{let k=p?.controlled?.value!==void 0;p?.setValue(x),k||r.onChange?.(x)},m=!i&&!l,b=t>=0?t+1:d,v=f?.5:1,w=x=>{if(!m)return;let k=x.key;k==="ArrowRight"?(x.preventDefault(),h(Math.min(d+v,a))):k==="ArrowLeft"?(x.preventDefault(),h(Math.max(d-v,0))):k==="Home"?(x.preventDefault(),h(v)):k==="End"&&(x.preventDefault(),h(a))},y=[];for(let x=0;x<a;x++){let k=x<Math.floor(b),E=f&&x===Math.floor(b)&&b%1>=.5,S={class:`wf-rate-star${k?" wf-rate-star--on":""}${E?" wf-rate-star--half":""}`,"aria-label":`${x+1} \u661F`,key:x};m&&(S.type="button",S.onClick=$=>{if(f){let B=$.currentTarget.getBoundingClientRect(),W=$.clientX-B.left<B.width/2;h(W?x+.5:x+1)}else c&&d===x+1?h(0):h(x+1)},S.onMouseEnter=f?$=>{let B=$.currentTarget.getBoundingClientRect();n($.clientX-B.left<B.width/2?x+.5-1:x)}:()=>n(x),S.onMouseMove=f?$=>{let B=$.currentTarget.getBoundingClientRect();n($.clientX-B.left<B.width/2?x+.5-1:x)}:void 0,S.onMouseLeave=()=>n(-1),S.onFocus=()=>n(x),S.onBlur=()=>n(-1));let I=en(O,{name:"star",className:"wf-rate-star-icon"}),A=E?en("span",{class:"wf-rate-star-half"},[en("span",{class:"wf-rate-star-half-bg"},I),en("span",{class:"wf-rate-star-half-fg"},en(O,{name:"star",className:"wf-rate-star-icon"}))]):I;y.push(en(m?"button":"span",S,A))}return en("div",{class:`wf-rate wf-rate--${s}${l?" wf-rate--disabled":""}`,role:m?"radiogroup":void 0,"aria-label":g??"\u8BC4\u5206",onKeyDown:m?w:void 0},y)}};import{h as jr}from"weifuwu/vdom";var Bd=o=>e=>{let{level:t=1,children:n,className:r,style:a,...s}=e;return jr(`h${t}`,{class:["wf-title",`wf-title--${t}`,r].filter(Boolean).join(" "),style:a,...s},n)},Ud=o=>e=>{let{type:t,strong:n,underline:r,strikethrough:a,mark:s,code:i,size:l,children:c,className:f,...g}=e,u=["wf-text"];return t&&u.push(`wf-text--${t}`),n&&u.push("wf-text--strong"),r&&u.push("wf-text--underline"),a&&u.push("wf-text--strike"),s&&u.push("wf-text--mark"),i&&u.push("wf-text--code"),l&&l!=="md"&&u.push(`wf-text--${l}`),f&&u.push(f),jr("span",{class:u.join(" "),...g},c)},zd=o=>e=>{let{type:t,ellipsis:n,children:r,className:a,...s}=e,i=["wf-paragraph"];return t&&i.push(`wf-text--${t}`),n&&i.push("wf-paragraph--ellipsis"),a&&i.push(a),jr("p",{class:i.join(" "),...s},r)};import{h as Li}from"weifuwu/vdom";var _d=o=>e=>{let{htmlFor:t,required:n,children:r,className:a,...s}=e,i=n?[r,Li("span",{class:"wf-label-req"},"*")]:r;return Li("label",{class:["wf-label",a].filter(Boolean).join(" "),htmlFor:t||void 0,...s},i)};import{h as Vd}from"weifuwu/vdom";var Kd=o=>e=>{let{ratio:t,children:n,className:r,...a}=e;return Vd("div",{class:["wf-aspect-ratio",r].filter(Boolean).join(" "),style:{"--wf-aspect-ratio":t===void 0?"16 / 9":String(t)},...a},n)};import{h as Fr}from"weifuwu/vdom";var Ri=o=>e=>{let{pressed:t,onPressedChange:n,variant:r="default",size:a="md",disabled:s,"aria-label":i,children:l,className:c,...f}=e;return Fr("button",{type:"button",class:["wf-toggle",`wf-toggle--${r}`,`wf-toggle--${a}`,t?"wf-toggle--pressed":"",c].filter(Boolean).join(" "),"aria-pressed":t?"true":"false","aria-label":i||void 0,disabled:s||void 0,onClick:s?void 0:()=>n?.(!t),...f},l)},jd=(o,e)=>t=>{let{type:n="single",options:r=[],size:a="md",disabled:s,"aria-label":i,className:l}=t,c=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"ToggleGroup"}),f=c?.value,g=h=>n==="multiple"?Array.isArray(f)&&f.includes(h):f===h,u=h=>{let m;if(n==="multiple"){let v=Array.isArray(f)?[...f]:[],w=v.indexOf(h);w>=0?v.splice(w,1):v.push(h),m=v}else m=h;let b=c?.controlled?.value!==void 0;c?.setValue(m),b||t.onChange?.(m)},p=h=>{if(s||n!=="single")return;let m=r.findIndex(w=>w.value===f);if(m<0)return;let b=m;if(h.key==="ArrowRight")h.preventDefault(),b=Math.min(m+1,r.length-1);else if(h.key==="ArrowLeft")h.preventDefault(),b=Math.max(m-1,0);else return;let v=r[b];v&&!v.disabled&&u(v.value)},d=r.map(h=>Fr(Ri,{key:h.value,pressed:g(h.value),size:a,disabled:s||h.disabled,"aria-label":h.value,onClick:s||h.disabled?void 0:()=>u(h.value)},h.label??h.value));return Fr("div",{class:["wf-toggle-group",`wf-toggle-group--${a}`,l].filter(Boolean).join(" "),role:n==="single"?"radiogroup":"group","aria-label":i||void 0,onKeyDown:p},d)};import{h as Gr}from"weifuwu/vdom";var Fd=(o,e)=>t=>{let{options:n=[],columns:r,size:a="md",disabled:s,label:i,"aria-label":l,className:c}=t,f=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"CheckboxGroup"}),g=f?.value??[],u=(m,b)=>{let v=b?[...new Set([...g,m])]:g.filter(y=>y!==m),w=f?.controlled?.value!==void 0;f?.setValue(v),w||t.onChange?.(v)},p=n.map(m=>Gr(qo,{key:m.value,label:m.desc?`${m.label}\uFF08${m.desc}\uFF09`:m.label,checked:g.includes(m.value),disabled:s||m.disabled,onChange:b=>u(m.value,b)})),d=[];i&&d.push(Gr("div",{class:"wf-checkbox-group-label"},i)),d.push(...p);let h=["wf-checkbox-group",`wf-checkbox-group--${a}`];return r&&h.push(`wf-checkbox-group--cols-${r}`),c&&h.push(c),Gr("div",{class:h.join(" "),role:"group","aria-label":l||i||void 0},d)};import{h as Ni}from"weifuwu/vdom";var Gd=(o,e)=>{let t=[],n=s=>{let i=t[s];i&&(i.focus(),i.select())},r=new Map,a=s=>{let i=r.get(s);return i||(i=l=>{l&&(t[s]=l)},r.set(s,i)),i};return s=>{let{length:i=6,value:l="",onChange:c,type:f="number",size:g="md",disabled:u,"aria-label":p}=s,d=f==="number",h=(w,y)=>{if(u||!c)return;let x=y.slice(-1);if(d&&!/^\d$/.test(x))return;let k=l.split("");for(;k.length<i;)k.push("");k[w]=x,c(k.join("").slice(0,i)),w+1<i&&n(w+1)},m=(w,y)=>{if(u)return;let x=y.key;if(x==="Backspace")if(y.preventDefault(),l[w]){let k=l.split("");k[w]="",c?.(k.join(""))}else w>0&&n(w-1);else x==="ArrowLeft"?(y.preventDefault(),w>0&&n(w-1)):x==="ArrowRight"?(y.preventDefault(),w+1<i&&n(w+1)):x==="Home"?(y.preventDefault(),n(0)):x==="End"&&(y.preventDefault(),n(i-1))},b=w=>{if(u||!c)return;let y=w.clipboardData?.getData("text")??"";if(w.preventDefault(),!y)return;let x=y.slice(0,i);d&&(x=x.replace(/\D/g,"").slice(0,i)),x&&(c(x),n(Math.min(x.length,i-1)))},v=[];for(let w=0;w<i;w++)v.push(Ni("input",{key:w,type:"text",class:"wf-pin-input-cell",value:l[w]??"",maxLength:1,inputMode:d?"numeric":void 0,pattern:d?"[0-9]":void 0,"aria-label":`${p??"\u9A8C\u8BC1\u7801"}\u7B2C ${w+1} \u4F4D`,disabled:u||void 0,ref:a(w),onInput:y=>h(w,y.target.value),onKeyDown:y=>m(w,y),onPaste:b}));return Ni("div",{class:["wf-pin-input",`wf-pin-input--${g}`].join(" "),role:"group","aria-label":p},v)}};import{h as eo}from"weifuwu/vdom";var Wd=(o,e)=>{let t=!1,n;return e.ui.hold(()=>{n&&clearTimeout(n)}),r=>{let{value:a,label:s,size:i="md",variant:l="secondary",iconOnly:c,successText:f="\u5DF2\u590D\u5236",onCopied:g,className:u,...p}=r,d=async()=>{await e.browser?.copyText(a),t=!0,g?.(),e.render(),clearTimeout(n),n=setTimeout(()=>{t=!1,e.render()},2e3)},h=[];return t?(h.push(eo(O,{name:"check",size:14})),c||h.push(eo("span",{class:"wf-copy-btn-text"},f))):(h.push(eo(O,{name:"copy",size:14})),!c&&s&&h.push(eo("span",{class:"wf-copy-btn-text"},s))),eo("button",{type:"button",class:["wf-copy-btn",`wf-copy-btn--${i}`,`wf-copy-btn--${l}`,t?"wf-copy-btn--copied":"",u].filter(Boolean).join(" "),"aria-label":s||"\u590D\u5236",onClick:d,...p},h)}};import{h as Dt}from"weifuwu/vdom";var qd=["#4f6ef7","#8b5cf6","#ec4899","#ef4444","#f59e0b","#22c55e","#14b8a6","#06b6d4","#64748b","#1e293b"],Xd=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/,Yd=(o,e)=>{let t=!1;return n=>{let{colors:r=qd,size:a="md",disabled:s,showInput:i,"aria-label":l}=n,c=e?.ui?.useControlled({value:n.value,onChange:n.onChange,name:"ColorPicker"}),f=m=>{let b=c?.controlled?.value!==void 0;c?.setValue(m),b||n.onChange?.(m)},g=c?.value??"",u=r.map(m=>{let b=m.toLowerCase()===g.toLowerCase();return Dt("button",{type:"button",key:m,class:`wf-color-picker-swatch${b?" wf-color-picker-swatch--sel":""}`,style:{background:m},"aria-label":m,"aria-pressed":b?"true":"false",onClick:()=>f(m)},b?Dt(O,{name:"check",size:14,className:"wf-color-picker-check"}):null)}),p=[Dt("div",{class:"wf-color-picker-grid"},u)];i&&p.push(Dt("input",{class:"wf-color-picker-input",type:"text",value:g,placeholder:"#4f6ef7",spellcheck:"false",onInput:m=>{let b=m.target.value.trim();Xd.test(b)&&f(b)}}));let d=Dt("div",{class:"wf-color-picker-panel"},p),h=Dt("button",{type:"button",class:`wf-color-picker-trigger wf-color-picker-trigger--${a}${s?" wf-color-picker-trigger--disabled":""}`,disabled:s,"aria-label":l??"\u9009\u62E9\u989C\u8272","aria-disabled":s?"true":void 0,"aria-haspopup":"dialog","aria-expanded":t?"true":"false"},[Dt("span",{class:"wf-color-picker-swatch",style:{background:g||"var(--wf-color-bg, #fff)"}}),Dt("span",{class:"wf-color-picker-value"},g||"\u989C\u8272")]);return Dt(Vn,{content:d,position:"bottom",disabled:s,open:t,onOpenChange:m=>{t=m,e.render()}},h)}};import{h as Hi}from"weifuwu/vdom";var Zd=(o,e)=>{let t=null,n=!1,r=null,a={},s=()=>{let l=a.visibilityHeight??400,c=t===r?r.scrollY>l:t.scrollHeight-t.scrollTop-t.clientHeight>l;c!==n&&(n=c,e.render())},i=()=>{if(t)return;let l=a.target;l&&!l()||(r=e.browser?.window??null,r&&(t=l?l():r,t.addEventListener("scroll",s,{passive:!0}),s()))};return e.ui.hold(()=>{t?.removeEventListener("scroll",s),t=null}),l=>{Object.assign(a,l),i();let{direction:c="top",smooth:f=!0,"aria-label":g,children:u,className:p,fixed:d=!0}=l,h=c==="bottom",m=()=>t?t===r?r.document.documentElement.scrollHeight:t.scrollHeight:0;return Hi("button",{type:"button",class:["wf-backtop",d?"":"wf-backtop--inline",n?"":"wf-backtop--hidden",p].filter(Boolean).join(" "),"aria-label":g??(h?"\u56DE\u5230\u5E95\u90E8":"\u56DE\u5230\u9876\u90E8"),onClick:()=>{if(!t)return;let b=h?m():0;t.scrollTo({top:b,behavior:f?"smooth":"auto"})}},u??Hi(O,{name:h?"arrow-down":"arrow-up",size:16}))}};import{h as Wr}from"weifuwu/vdom";var Jd=(o,e)=>{let t=null,n=0,r=1/0,a,s={...o},i=()=>s.target?s.target():window,l=e.ui.useScrollPosition({getScroller:i}),c=e.ui.usePopupPosition({el:()=>t,isOpen:()=>!0,compute:g=>{let u=i(),p=u instanceof Window?e.browser?.scrollTop()??0:u.scrollTop??0;return r=g.top+p-(s.offsetTop??0),n=g.width,{top:0,left:0}}}),f=g=>{g?(t=g,queueMicrotask(()=>{c.refresh(),l.refresh()})):t=null};return g=>{Object.assign(s,g);let{offsetTop:u=0,children:p,className:d,...h}=g;if(u!==a&&(a=u,t&&c.refresh()),t){let b=t.getBoundingClientRect(),v=i();if(v instanceof Window)r=b.top+(e.browser?.scrollTop()??0)-u;else{let w=v;r=b.top-w.getBoundingClientRect().top+w.scrollTop-u}n=b.width}let m=l.y>=r;return Wr("div",{class:["wf-affix",d].filter(Boolean).join(" "),...h},[Wr("div",{ref:f,class:["wf-affix-sentinel",m?"wf-affix-sentinel--active":""].join(" ")}),Wr("div",{class:["wf-affix-content",m?"wf-affix-content--fixed":""].filter(Boolean).join(" "),style:m?{position:"fixed",top:`${u}px`,width:`${n}px`}:void 0},p)])}};import{h as Oi}from"weifuwu/vdom";var Qd=(o,e)=>{let t="top",n=!1,r={open:150,close:0},a=null,s=p=>{p&&(a=p)},i=null,l=null,c=null,f=()=>{c!==null&&(clearTimeout(c),c=null)},g=()=>{f(),!n&&(c=setTimeout(()=>{c=null,l?.open||l?.setOpen(!0)},r.open))},u=()=>{f(),c=setTimeout(()=>{c=null,l?.open&&l?.setOpen(!1)},r.close)};return e.ui.onUnmount?.(f),e.ui.onUnmount?.(()=>{i&&i.close()}),p=>{let{content:d,position:h="top",children:m}=p;l=e.ui.useOpen({name:"HoverCard"}),t=h,n=!!p.disabled,r={open:p.openDelay??150,close:p.closeDelay??0};let b=Oi("div",{class:`wf-hover-card wf-hover-card--${h}`,role:"tooltip"},d);return l?.open&&!i?i=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:8,content:()=>b,onClose:()=>{i=null,l?.setOpen(!1)}}):!l?.open&&i?(i.close(),i=null):i&&i.update(b),Oi("div",{class:"wf-hover-card-wrap",ref:s,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onMouseEnter:g,onMouseLeave:u,onClick:()=>{l?.setOpen(!l.open)}},m)}};import{createClientBrowser as ep}from"weifuwu/vdom";import{h as ut}from"weifuwu/vdom";import{renderV2 as rp}from"weifuwu/vdom";import{diffV2 as sp,disposeSegment as ip}from"weifuwu/vdom";import{collectCommands as ap}from"weifuwu/vdom";import{CommandApplier as lp}from"weifuwu/vdom";import{createComponentRegistry as cp}from"weifuwu/vdom";var tp=ep();function np(o){return{"top-right":"wf-notification--tr","top-left":"wf-notification--tl","bottom-right":"wf-notification--br","bottom-left":"wf-notification--bl"}[o]??"wf-notification--tr"}function op(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info"}}var Qe=null;function dp(){if(Qe)return Qe;let o=document.createElement("div");o.className="wf-notification-host",document.body.appendChild(o);let e=cp(),t=new lp(o,document,e);return Qe={container:o,applier:t,registry:e,items:[],seq:0,currentTree:null,ctx:{render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:tp},segments:new Map},Qe}async function qr(o){let e=ut(zi,{items:o.items,onRemove:r=>{Bi(r)}}),t=o.currentTree?sp(o.currentTree,e,o.ctx,o.segments,o.registry,()=>{}):rp(e,o.ctx,o.registry,o.segments,()=>{}),n=await ap(t);for(let r of n)o.applier.apply(r);o.currentTree=e;for(let r of n)r.op==="unmount"&&ip(r.compId,o.segments)}async function Bi(o){if(Qe)if(Qe.items=Qe.items.filter(e=>e.id!==o),Qe.items.length===0){try{await qr(Qe)}catch{}Qe.applier.dispose(),Qe.container.remove(),Qe=null}else qr(Qe)}function Mn(o){let e=dp(),t={id:`n${++e.seq}`,...o};e.items=[...e.items,t],qr(e);let n=o.duration??4500;n>0&&setTimeout(()=>Bi(t.id),n)}var Ui=Object.assign((o,e)=>Mn({type:e?.type??"info",title:o,description:e?.description,duration:e?.duration,action:e?.action}),{open:o=>Mn({type:o.type??"info",title:o.title,description:o.description,duration:o.duration,action:o.action}),success:o=>Mn({type:"success",...o}),error:o=>Mn({type:"error",...o}),info:o=>Mn({type:"info",...o}),warning:o=>Mn({type:"warning",...o})});function pp(o){return Object.assign(o,{notification:Ui})}var zi=(o,e)=>{let t=null;return n=>{let{items:r=[],onRemove:a,position:s="top-right",duration:i=4500,max:l=0}=n,c=l>0&&r.length>l?r.slice(-l):r;if(c.length===0)return t&&(t.close(),t=null),null;let f=c.map(u=>ut("div",{class:`wf-notification wf-notification--${u.type}`,key:u.id,role:u.type==="error"?"alert":"status","aria-live":u.type==="error"?"assertive":"polite","data-id":u.id,"data-duration":(u.duration??i)||void 0},[ut("span",{class:"wf-notification-icon"},ut(O,{name:op(u.type)})),ut("div",{class:"wf-notification-body"},[ut("div",{class:"wf-notification-title"},u.title),u.description?ut("div",{class:"wf-notification-desc"},u.description):null,u.action?ut("button",{class:"wf-notification-action",type:"button",onClick:p=>{p.stopPropagation(),u.action.onClick()}},u.action.label):null].filter(Boolean)),ut("button",{type:"button",class:"wf-notification-close","aria-label":"\u5173\u95ED\u901A\u77E5",onClick:()=>a?.(u.id)},ut(O,{name:"close",size:12}))].filter(Boolean))),g=ut("div",{class:`wf-notification-container ${np(s)}`,"data-max":l||void 0},f);return t?t.update(g):t=e.ui.openPopup({key:"notification",positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>g,onClose:()=>{t=null}}),null}};import{h as No}from"weifuwu/vdom";var fp=(o,e)=>{let t=!1,n=0,r=null,a=[],s=0,i=0,l=null,c=()=>{t=!1,e.render()};e.ui.onUnmount?.(()=>{l&&l.close()});let f=u=>{r=u},g=u=>{if(u.key==="ArrowDown"){u.preventDefault();for(let p=1;p<=a.length;p++){let d=(n+p)%a.length;if(!a[d].disabled){n=d,e.render();break}}}else if(u.key==="ArrowUp"){u.preventDefault();for(let p=1;p<=a.length;p++){let d=(n-p+a.length)%a.length;if(!a[d].disabled){n=d,e.render();break}}}else if(u.key==="Enter"){u.preventDefault();let p=a[n];p&&!p.disabled&&(p.onClick?.(),c())}else u.key==="Escape"&&c()};return u=>{let{items:p=[],children:d,"aria-label":h,className:m}=u;a=p;let b=a.map((w,y)=>No("button",{type:"button",class:["wf-context-menu-item",w.variant==="danger"?"wf-context-menu-item--danger":"",w.disabled?"wf-context-menu-item--dis":"",n===y?"wf-context-menu-item--hl":""].filter(Boolean).join(" "),key:w.key,role:"menuitem",disabled:w.disabled||void 0,onClick:w.disabled?void 0:()=>{w.onClick?.(),c()},onMouseEnter:()=>{w.disabled||(n=y)}},w.icon?[w.icon,No("span",{},w.label)]:w.label)),v=No("div",{class:"wf-context-menu",role:"menu","aria-label":h,tabindex:-1,onKeyDown:g},b);return t&&!l?l=e.ui.openPopup({position:()=>({x:s,y:i}),content:()=>v,closeOnOutside:!0,closeOnEscape:!0,autoFocus:!0,onClose:()=>{l=null,t&&(t=!1,e.render())}}):!t&&l?(l.close(),l=null):l&&l.update(v),No("div",{class:["wf-context-menu-trigger",m].filter(Boolean).join(" "),ref:f,onContextMenu:w=>{w.preventDefault(),s=w.clientX,i=w.clientY,n=a.findIndex(y=>!y.disabled),t=!0,e.render()}},d)}};import{h as Ho}from"weifuwu/vdom";var up=(o,e)=>{let t=!1,n="",r=-1,a=0,s=!1,i=null,l=p=>{i=p},c=null,f=null,g=p=>{t&&p&&!f?f=e.ui.openPopup({anchor:()=>i,placement:"bottom",center:!1,gap:4,content:()=>p,onClose:()=>{f=null,t&&(t=!1,e.render())}}):!t&&f?(f.close(),f=null):f&&f.update(p)},u=()=>{t&&(t=!1,e.render())};return p=>{let{options:d=[],prefix:h="@",placeholder:m,rows:b=3,disabled:v,size:w="md"}=p;c=e.ui.useControlledInput({value:p.value,onChange:p.onChange,name:"Mentions"});let y=c.value??"",x=($,N)=>{if(s){u();return}let B=$.slice(0,N),W=B.lastIndexOf(h);if(W===-1){u();return}let z=B.slice(W+1);if(z.includes(" ")){u();return}if(z.length>0&&z.includes(`
49
+ `)){u();return}n=z,r=W,a=0,t=!0,e.render()},k=n?d.filter($=>$.value.toLowerCase().includes(n.toLowerCase())):d,E=$=>{let N=y.slice(0,r),B=y.slice(r+1+n.length),W=`${N}${h}${$.value} ${B}`;t=!1;let z=c?.controlled?.value!==void 0;c?.setValue(W),z||p.onChange?.(W)},P=$=>{let N=$.target.value;c?.setValue(N),x(N,$.target.selectionStart??N.length)},S=$=>{if(t)if($.key==="ArrowDown")$.preventDefault(),a=Math.min(a+1,Math.max(k.length-1,0)),e.render();else if($.key==="ArrowUp")$.preventDefault(),a=Math.max(a-1,0),e.render();else if($.key==="Enter"){$.preventDefault();let N=k[a];N&&E(N)}else $.key==="Escape"&&u()},I=t&&k.length>0?Ho("div",{class:"wf-mentions-panel",role:"listbox"},k.map(($,N)=>Ho("button",{type:"button",class:`wf-mentions-option${a===N?" wf-mentions-option--hl":""}`,key:$.value,role:"option",onClick:()=>E($),onMouseEnter:()=>{a=N}},$.label??$.value))):null,A=Ho("textarea",{class:`wf-mentions-input wf-mentions-input--${w}`,rows:b,placeholder:m,value:y,disabled:v||void 0,ref:l,"aria-haspopup":"listbox","aria-expanded":String(t),onInput:P,onKeyDown:S,onCompositionStart:()=>{s=!0,u()},onCompositionEnd:()=>{s=!1}});return g(I),Ho("div",{class:"wf-mentions"},[A])}};import{createClientBrowser as mp}from"weifuwu/vdom";import{h as kt}from"weifuwu/vdom";var hp=(o,e)=>{let t=e.browser??mp(),n=[],r=new Map,a=s=>{let i=r.get(s);return i||(i=l=>{l&&(n[s]=l)},r.set(s,i)),i};return s=>{let{items:i=[],multiple:l=!0,className:c}=s,f=e.ui.useControlled({value:s.active,onChange:s.onChange,name:"Collapse"}),g=f.value??[],u=m=>g.includes(m),p=m=>{f.controlled?.value!==void 0&&!s.onChange||(u(m)?f.setValue(g.filter(b=>b!==m)):f.setValue(l?[...g,m]:[m]))},d=m=>{let b=t?.activeElement()??null,v=n.indexOf(b);if(v<0)return;let w=v;if(m.key==="ArrowDown"||m.key==="ArrowRight")w=(v+1)%i.length;else if(m.key==="ArrowUp"||m.key==="ArrowLeft")w=(v-1+i.length)%i.length;else return;m.preventDefault(),n[w]?.focus()},h=i.map((m,b)=>{let v=u(m.key),w=[kt("span",{class:`wf-collapse-chevron${v?" wf-collapse-chevron--open":""}`},kt(O,{name:"chevron-down",size:14})),m.icon,kt("span",{class:"wf-collapse-title"},m.title)];m.extra&&w.push(kt("span",{class:"wf-collapse-extra"},m.extra));let y=v?kt("div",{class:"wf-collapse-content"},m.loading?kt("div",{class:"wf-collapse-loading"},kt(O,{name:"retry",size:14})):m.content??null):null;return kt("div",{class:`wf-collapse-item${v?" wf-collapse-item--open":""}`,key:m.key},[kt("button",{type:"button",class:"wf-collapse-header",ref:a(b),"aria-expanded":v?"true":"false",onClick:()=>p(m.key)},w),y].filter(Boolean))});return kt("div",{class:["wf-collapse",c].filter(Boolean).join(" "),onKeyDown:d},h)}};import{createClientBrowser as gp}from"weifuwu/vdom";import{h as et}from"weifuwu/vdom";import{h as to}from"weifuwu/vdom";var Xr=(o,e)=>{let t=null,n=e.ui.useScrollPosition({getScroller:()=>t??null}),r=a=>{a?(t=a,n.refresh()):t=null};return a=>{let{items:s=[],height:i=400,itemHeight:l=40,renderItem:c,overscan:f=5,keyBy:g,emptyText:u="\u6682\u65E0\u6570\u636E",className:p}=a;t&&t.scrollTop!==n.y&&n.refresh();let d=s.length,h=Math.max(0,Math.floor(n.y/l)-f),m=Math.min(d,Math.ceil((n.y+i)/l)+f);if(d===0)return to("div",{class:["wf-virtual-list","wf-virtual-list--empty",p].filter(Boolean).join(" "),style:{height:`${i}px`}},u);let b=to("div",{class:"wf-virtual-list-spacer",style:{height:`${d*l}px`}}),v=[];for(let y=h;y<m;y++){let x=s[y];v.push(to("div",{class:"wf-virtual-list-item",style:{position:"absolute",top:`${y*l}px`,left:0,right:0,height:`${l}px`},key:g?g(x,y):y},c?c(x,y):String(x)))}let w=to("div",{class:"wf-virtual-list-window"},v);return to("div",{class:["wf-virtual-list",p].filter(Boolean).join(" "),style:{position:"relative",width:"100%",height:`${i}px`,overflowY:"auto"},ref:r},[b,w])}};function _i(o){return[o.key,...(o.children??[]).flatMap(_i)]}function Vi(o,e){let t=[];for(let n of o){let r=n.label.toLowerCase().includes(e),a=n.children?Vi(n.children,e):[];(r||a.length)&&t.push({...n,children:a.length?a:n.children})}return t}function Ki(o){let e=[];for(let t of o)t.children?.length&&(e.push(t.key),e.push(...Ki(t.children)));return e}function bp(o,e){if(!e)return o;let n=o.toLowerCase().indexOf(e);return n<0?o:[o.slice(0,n),et("mark",{class:"wf-tree-match"},o.slice(n,n+e.length)),o.slice(n+e.length)]}function ji(o,e,t=null){for(let n of o)e.set(n.key,t),n.children&&ji(n.children,e,n)}var Yr=(o,e)=>{let t=e.browser??gp(),n=[],r=[],a=[];return s=>{let{data:i=[],expandedKeys:l,onExpand:c,expandOnClick:f,checkable:g,className:u,searchValue:p}=s,d=(p??"").trim().toLowerCase(),h=d?Vi(i,d):i,m=d?new Set(Ki(h)):null,b=e?.ui?.useControlled({value:s.selectedKeys,onChange:s.onSelect,name:"Tree"}),v=e?.ui?.useControlled({value:s.checkedKeys,onChange:s.onCheck,name:"Tree"}),w=new Map;ji(i,w);let y=l!==void 0,x=y?l:n,k=T=>m?m.has(T):x.includes(T),E=T=>{if(y&&!c){console.warn(`[weifuwu/Tree] \u53D7\u63A7\u6A21\u5F0F\uFF08expandedKeys \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onExpand\uFF0C\u5C55\u5F00/\u6298\u53E0\u65E0\u6CD5\u751F\u6548\u3002
50
+ \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 expandedKeys\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onExpand={(keys) => setExpanded(keys)}`);return}let R=k(T)?x.filter(L=>L!==T):[...x,T];y?c?.(R):(n=R,e.render())},P=T=>{let L=(b?.value??[]).includes(T)?[]:[T],H=b?.controlled?.value!==void 0;b?.setValue(L),H||s.onSelect?.(L)},S=T=>{let R=new Set(v?.value??[]),L=_i(T);if(R.has(T.key)){for(let K of L)R.delete(K);let H=w.get(T.key);for(;H;)(H.children??[]).some(Q=>R.has(Q.key))||R.delete(H.key),H=w.get(H.key)}else{for(let K of L)R.add(K);let H=w.get(T.key);for(;H;)(H.children??[]).some(Y=>R.has(Y.key))&&R.add(H.key),H=w.get(H.key)}v?.setValue(Array.from(R))},I=T=>{let R=T.children??[],L=v?.value??[];if(!R.length)return L.includes(T.key)?"checked":"unchecked";let H=R.map(I);return H.every(K=>K==="checked")?"checked":H.some(K=>K!=="unchecked")?"half":"unchecked"},A=T=>I(T)==="half",$=[],N=(T,R,L)=>{a[L]||(a[L]=Z=>{r[L]=Z});let H=!!T.children?.length,K=k(T.key),Y=(b?.value??[]).includes(T.key),Q=I(T)==="checked",G=H?et("button",{type:"button",class:`wf-tree-switcher${K?" wf-tree-switcher--open":""}`,"aria-label":K?"\u6298\u53E0":"\u5C55\u5F00",onClick:Z=>{Z.stopPropagation(),E(T.key)}},et(O,{name:"chevron-down",size:12})):et("span",{class:"wf-tree-switcher-placeholder"}),X=g?et("button",{type:"button",class:["wf-tree-checkbox",Q?"wf-tree-checkbox--checked":"",A(T)?"wf-tree-checkbox--half":""].filter(Boolean).join(" "),role:"checkbox","aria-checked":A(T)?"mixed":Q?"true":"false",onClick:Z=>{Z.stopPropagation(),S(T)}}):null,q=[G,X,T.icon,et("span",{class:"wf-tree-label"},bp(T.label,d))].filter(Boolean);return et("div",{class:["wf-tree-row",Y?"wf-tree-row--selected":"",T.disabled?"wf-tree-row--disabled":""].filter(Boolean).join(" "),style:{paddingLeft:`${R*20}px`},ref:a[L],tabIndex:T.disabled?void 0:0,"aria-selected":Y?"true":"false",onClick:T.disabled?void 0:()=>{H&&f?E(T.key):P(T.key)},onKeyDown:T.disabled?void 0:Z=>{Z.key==="Enter"?(Z.preventDefault(),P(T.key)):Z.key===" "&&g?(Z.preventDefault(),S(T)):Z.key==="ArrowRight"&&H?(Z.preventDefault(),K||E(T.key)):Z.key==="ArrowLeft"&&H&&(Z.preventDefault(),K&&E(T.key))}},q)},B=(T,R)=>{$.push(T);let L=$.length-1,H=!!T.children?.length,K=k(T.key);return et("div",{class:"wf-tree-node",key:T.key},[N(T,R,L),K&&H?et("div",{class:"wf-tree-children"},T.children.map(Y=>B(Y,R+1))):null].filter(Boolean))},W=(T,R)=>{let L=[],H=(K,Y)=>{for(let Q of K)L.push({node:Q,level:Y}),Q.children?.length&&k(Q.key)&&H(Q.children,Y+1)};return H(T,R),L},z=h.length===0?et("div",{class:"wf-tree-empty"},d?"\u65E0\u5339\u914D\u8282\u70B9":"\u6682\u65E0\u6570\u636E"):null,U=T=>{if(T.key!=="ArrowDown"&&T.key!=="ArrowUp")return;let R=t?.activeElement()??null,L=r.indexOf(R);if(L<0)return;T.preventDefault();let H=T.key==="ArrowDown"?Math.min(L+1,r.length-1):Math.max(L-1,0);r[H]?.focus()};$=[];let{virtual:D,height:C=400}=s;if(D){let T=W(h,0);$=T.map(L=>L.node);let R=T.map((L,H)=>({key:L.node.key,node:L.node,level:L.level,i:H}));return et("div",{class:["wf-tree",u].filter(Boolean).join(" "),role:"tree"},[et(Xr,{items:R,height:C,itemHeight:28,overscan:6,keyBy:L=>L.key,renderItem:L=>N(L.node,L.level,L.i),emptyText:d?"\u65E0\u5339\u914D\u8282\u70B9":"\u6682\u65E0\u6570\u636E"})])}let M=h.map(T=>B(T,0));return et("div",{class:["wf-tree",u].filter(Boolean).join(" "),role:"tree",onKeyDown:U},[z,...M].filter(Boolean))}};import{h as Be}from"weifuwu/vdom";function yp(o,e,t=" / "){let n=o,r=[];for(let a of e){let s=n?.find(i=>i.value===a);if(!s)break;r.push(s.label),n=s.children}return r.join(t)}function Fi(o,e=[],t=[]){let n=[];for(let r of o){let a=[...e,r.value],s=[...t,r.label];r.children?.length?n.push(...Fi(r.children,a,s)):n.push({path:a,labels:s})}return n}var wp=(o,e)=>{let t=!1,n=[],r="",a=null,s=g=>{a=g},i={col:0,idx:0},l=0,c=null,f=g=>{t&&!c?c=e.ui.openPopup({anchor:()=>a,placement:"bottom",center:!1,gap:6,content:()=>g,onClose:()=>{c=null,t&&(t=!1,e.render())}}):!t&&c?(c.close(),c=null):c&&c.update(g)};return g=>{let{options:u=[],value:p,onChange:d,placeholder:h="\u8BF7\u9009\u62E9",disabled:m,error:b,label:v,showSearch:w,searchPlaceholder:y="\u641C\u7D22\u2026","aria-label":x}=g,k=t?n:[],E=()=>{m||(t=!t,n=Array.isArray(p)?[...p]:[],t&&(i={col:0,idx:0},l=0),e.render())},P=H=>{let K=u;for(let Y of H){let Q=K.find(G=>G.value===Y);if(!Q?.children)return K;K=Q.children}return K},S=(H,K)=>{if(H.disabled)return;let Y=[...K,H.value];H.children?.length?(n=Y,i={col:i.col+1,idx:0},e.render()):(Array.isArray(p)&&!d&&console.warn(`[weifuwu/Cascader] \u53D7\u63A7\u6A21\u5F0F\uFF08value \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onChange\uFF0C\u9009\u62E9\u65E0\u6CD5\u751F\u6548\u3002
51
+ \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 value\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onChange={(path) => setPath(path)}`),t=!1,e.render(),d?.(Y))},I=H=>{Array.isArray(p)&&!d&&console.warn("[weifuwu/Cascader] \u53D7\u63A7\u6A21\u5F0F\uFF08value \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onChange\uFF0C\u9009\u62E9\u65E0\u6CD5\u751F\u6548\u3002"),t=!1,r="",e.render(),d?.(H.path)},A=[],$=[],N=[],B=0;for(;;){let H=P(N),K=k[B]?H.find(G=>G.value===k[B]):void 0,Y=[...N];A.push({path:Y,options:H});let Q=i.col===B?Math.min(i.idx,Math.max(H.length-1,0)):-1;if($.push(Be("div",{class:"wf-cascader-col",key:B},H.map((G,X)=>{let q=K?.value===G.value,Z=i.col===B&&X===Q;return Be("button",{type:"button",class:["wf-cascader-opt",q?"wf-cascader-opt--active":"",Z?"wf-cascader-opt--hl":"",G.disabled?"wf-cascader-opt--dis":""].filter(Boolean).join(" "),key:G.value,"aria-selected":String(Z||q),onClick:()=>S(G,Y)},[Be("span",{class:"wf-cascader-opt-label"},G.label),G.children?.length?Be("span",{class:"wf-cascader-opt-arrow"},Be(O,{name:"chevron-right",size:12})):null].filter(Boolean))}))),!K?.children?.length)break;N=[...N,K.value],B++}let W=r.trim().toLowerCase(),z,U=[];w&&W?(U=Fi(u).filter(K=>K.labels.some(Y=>Y.toLowerCase().includes(W))),z=U.length===0?Be("div",{class:"wf-cascader-empty"},"\u65E0\u5339\u914D"):Be("div",{class:"wf-cascader-search-results"},U.map(K=>Be("button",{type:"button",class:"wf-cascader-search-item",key:K.path.join("/"),"aria-selected":String(l===U.indexOf(K)),onClick:()=>I(K)},K.labels.join(" / "))))):z=$;let D=w?Be("input",{class:"wf-cascader-search wf-input",type:"text",placeholder:y,value:r,onInput:H=>{r=H.target.value,e.render()}}):null,M=Be("div",{class:"wf-cascader-panel",role:"listbox",onKeyDown:H=>{let K=H.key;if(K==="Escape")return;if(w&&W){let G=U.length;if(!G)return;K==="ArrowDown"?(H.preventDefault(),l=Math.min(l+1,G-1),e.render()):K==="ArrowUp"?(H.preventDefault(),l=Math.max(l-1,0),e.render()):K==="Home"?(H.preventDefault(),l=0,e.render()):K==="End"?(H.preventDefault(),l=G-1,e.render()):K==="Enter"&&U[l]&&(H.preventDefault(),I(U[l]));return}let Y=A[i.col];if(!Y||!Y.options.length)return;let Q=Y.options.length;if(K==="ArrowDown")H.preventDefault(),i={col:i.col,idx:Math.min(i.idx+1,Q-1)},e.render();else if(K==="ArrowUp")H.preventDefault(),i={col:i.col,idx:Math.max(i.idx-1,0)},e.render();else if(K==="Home")H.preventDefault(),i={col:i.col,idx:0},e.render();else if(K==="End")H.preventDefault(),i={col:i.col,idx:Q-1},e.render();else if(K==="ArrowRight"){let G=Y.options[Math.min(i.idx,Q-1)];G?.children?.length&&(H.preventDefault(),n=[...Y.path,G.value],i={col:i.col+1,idx:0},e.render())}else K==="ArrowLeft"?i.col>0&&(H.preventDefault(),n=[...A[i.col-1].path],i={col:i.col-1,idx:0},e.render()):K==="Enter"&&!Y.options[Math.min(i.idx,Q-1)]?.disabled&&(H.preventDefault(),S(Y.options[Math.min(i.idx,Q-1)],Y.path))}},w?[D,z].filter(Boolean):z),T=Array.isArray(p)&&p.length?yp(u,p):h,R=[];v&&R.push(Be("label",{class:"wf-cascader-label"},v));let L=Be("button",{type:"button",class:`wf-cascader-trigger${m?" wf-cascader-trigger--dis":""}${b?" wf-cascader-trigger--err":""}`,"aria-label":x,"aria-haspopup":"listbox","aria-expanded":String(t),ref:s,onClick:m?void 0:E},[Be("span",{class:`wf-cascader-value${p?.length?"":" wf-cascader-value--placeholder"}`},T),Be("span",{class:`wf-cascader-arrow${t?" wf-cascader-arrow--open":""}`},Be(O,{name:"chevron-down",size:12}))]);return f(M),R.push(Be("div",{class:"wf-cascader"},[L])),b&&R.push(Be("div",{class:"wf-cascader-err"},b)),Be("div",{class:"wf-cascader-wrap"},R)}};import{h as st}from"weifuwu/vdom";var vp=(o,e)=>{let t=[],n=[],r="",a="";return s=>{let{data:i=[],targetKeys:l=[],onChange:c,titles:f=["\u6E90\u5217\u8868","\u76EE\u6807\u5217\u8868"],size:g="md",disabled:u,showSearch:p,searchPlaceholder:d="\u641C\u7D22\u2026"}=s,h=i.filter(P=>!l.includes(P.key)),m=i.filter(P=>l.includes(P.key)),b=(P,S)=>{if(u)return;let I=P==="left"?t:n,A=I.includes(S)?I.filter($=>$!==S):[...I,S];P==="left"?t=A:n=A,e.render()},v=()=>{if(!c||t.length===0)return;let P=[...l,...t];t=[],e.render(),c(P)},w=()=>{if(!c||n.length===0)return;let P=l.filter(S=>!n.includes(S));n=[],e.render(),c(P)},y=(P,S)=>{let I=P==="left"?t:n,A=(P==="left"?r:a).toLowerCase(),$=A?S.filter(B=>B.label.toLowerCase().includes(A)):S,N=p?st("input",{class:"wf-transfer-search wf-input",type:"text",placeholder:d,value:P==="left"?r:a,onInput:B=>{P==="left"?r=B.target.value:a=B.target.value,e.render()}}):null;return st("div",{class:`wf-transfer-list wf-transfer-list--${P}`},[st("div",{class:"wf-transfer-title"},f[P==="left"?0:1]),N,st("div",{class:"wf-transfer-body"},$.length===0?[st("div",{class:"wf-transfer-empty"},A?"\u65E0\u5339\u914D":"\u6682\u65E0\u6570\u636E")]:$.map(B=>st("button",{type:"button",class:["wf-transfer-item",I.includes(B.key)?"wf-transfer-item--sel":"",B.disabled?"wf-transfer-item--dis":""].filter(Boolean).join(" "),key:B.key,disabled:B.disabled||void 0,onClick:B.disabled?void 0:()=>b(P,B.key)},B.label)))].filter(Boolean))},x=t.length===0||u,k=n.length===0||u,E=st("div",{class:"wf-transfer-actions"},[st("button",{type:"button",class:"wf-transfer-btn",disabled:k||void 0,"aria-label":"\u79FB\u56DE\u5DE6\u4FA7",onClick:k?void 0:w},st(O,{name:"arrow-left",size:14})),st("button",{type:"button",class:"wf-transfer-btn",disabled:x||void 0,"aria-label":"\u79FB\u81F3\u53F3\u4FA7",onClick:x?void 0:v},st(O,{name:"arrow-right",size:14}))]);return st("div",{class:`wf-transfer wf-transfer--${g}`},[y("left",h),E,y("right",m)])}};import{h as Ct}from"weifuwu/vdom";var xp=(o,e)=>{let t="",n=0,r={},a=l=>{l&&queueMicrotask(()=>l.focus())};e.ui.useGlobalKey(l=>{let c=r.shortcut;if(!c)return;let f=c.split("+"),g=f.includes("mod"),u=f[f.length-1].toLowerCase();(!g||l.ctrlKey||l.metaKey)&&l.key.toLowerCase()===u&&(l.preventDefault(),r.onOpenChange?.(!r.open))});let s=null,i=l=>{r.open&&l&&!s?s=e.ui.openPopup({key:"command",mask:!0,maskCentered:!0,content:()=>l,onClose:()=>{s=null,r.open&&r.onOpenChange?.(!1)}}):!r.open&&s?(s.close(),s=null):s&&s.update(l)};return e.ui.onUnmount?.(()=>{s&&s.close()}),l=>{let{open:c,onOpenChange:f,items:g=[],placeholder:u="\u8F93\u5165\u547D\u4EE4\u6216\u641C\u7D22...",emptyText:p="\u65E0\u5339\u914D\u7ED3\u679C",globalShortcut:d="mod+k"}=l;if(r={open:c,onOpenChange:f,shortcut:d},!c)return i(null),null;let h=t?g.filter(y=>{let x=t.toLowerCase();return y.label.toLowerCase().includes(x)||(y.keywords??[]).some(k=>k.toLowerCase().includes(x))}):g;n>=h.length&&(n=Math.max(0,h.length-1));let m=()=>f?.(!1),b=y=>{if(y.key==="ArrowDown")y.preventDefault(),n=Math.min(n+1,Math.max(h.length-1,0)),e.render();else if(y.key==="ArrowUp")y.preventDefault(),n=Math.max(n-1,0),e.render();else if(y.key==="Enter"){y.preventDefault();let x=h[n];x&&(x.onSelect?.(),m())}else y.key==="Escape"&&m()},v=h.length>0?h.map((y,x)=>Ct("button",{type:"button",class:`wf-command-item${n===x?" wf-command-item--hl":""}`,key:y.key,onClick:()=>{y.onSelect?.(),m()},onMouseEnter:()=>{n=x}},[y.icon??Ct(O,{name:"search",size:14}),Ct("span",{class:"wf-command-item-label"},y.label),y.shortcut?Ct("kbd",{class:"wf-command-shortcut"},y.shortcut):null].filter(Boolean))):[Ct("div",{class:"wf-command-empty"},p)],w=Ct("div",{class:"wf-command-panel",role:"dialog","aria-label":"\u547D\u4EE4\u9762\u677F"},[Ct("div",{class:"wf-command-input-wrap"},[Ct(O,{name:"search",size:14}),Ct("input",{class:"wf-command-input",type:"text",placeholder:u,value:t,onInput:y=>{t=y.target.value,n=0,e.render()},onKeyDown:b,ref:a})]),Ct("div",{class:"wf-command-list"},v)]);return i(w),null}};import{createClientBrowser as kp}from"weifuwu/vdom";import{h as Pn}from"weifuwu/vdom";var Cp=(o,e)=>{let t=e.browser??kp(),n=null,r=0,a=[],s=new Map,i=p=>{let d=s.get(p);return d||(d=h=>{h&&(a[p]=h)},s.set(p,d)),d},l=[],c=null,f=p=>{n&&p&&!c?c=e.ui.openPopup({anchor:()=>{let d=l.findIndex(h=>h.key===n);return d>=0?a[d]:null},placement:"bottom",center:!1,gap:4,content:()=>p,onClose:()=>{c=null,n&&g()}}):!n&&c?(c.close(),c=null):c&&c.update(p)},g=()=>{n!==null&&(n=null,e.render())},u=p=>{n=n===p?null:p,r=0,e.render()};return p=>{let{menus:d=[],"aria-label":h}=p;l=d;let m=y=>{if(y.key==="Escape"){g();return}if(y.key!=="ArrowRight"&&y.key!=="ArrowLeft")return;if(n){g();return}let x=t?.activeElement()??null,k=a.indexOf(x);if(k<0)return;y.preventDefault();let E=y.key==="ArrowRight"?(k+1)%l.length:(k-1+l.length)%l.length;a[E]?.focus()},b=l.map((y,x)=>{let k=n===y.key;return Pn("button",{type:"button",class:["wf-menubar-trigger",k?"wf-menubar-trigger--open":"",y.disabled?"wf-menubar-trigger--dis":""].filter(Boolean).join(" "),key:y.key,ref:i(x),"aria-haspopup":"menu","aria-expanded":k?"true":"false",onClick:y.disabled?void 0:()=>u(y.key),onKeyDown:E=>{(E.key==="ArrowDown"||E.key==="Enter")&&(E.preventDefault(),y.disabled||u(y.key))}},y.label)}),v=l.find(y=>y.key===n),w=v?Pn("div",{class:"wf-menubar-panel",role:"menu"},(v.items??[]).map((y,x)=>Pn("button",{type:"button",class:["wf-menubar-item",r===x?"wf-menubar-item--hl":"",y.disabled?"wf-menubar-item--dis":""].filter(Boolean).join(" "),key:y.key,role:"menuitem",onClick:y.disabled?void 0:()=>{y.onSelect?.(),g()},onMouseEnter:()=>{y.disabled||(r=x)}},[Pn("span",{class:"wf-menubar-item-label"},y.label),y.shortcut?Pn("kbd",{class:"wf-menubar-shortcut"},y.shortcut):null].filter(Boolean)))):null;return f(w),Pn("div",{class:"wf-menubar",role:"menubar","aria-label":h,onKeyDown:m},b)}};import{h as Lt}from"weifuwu/vdom";var Mp=(o,e)=>{let t=0,n,r=0,a=()=>{},s=!1,i=3e3,l=0,c=()=>{n&&(clearInterval(n),n=void 0)},f=()=>{if(!(typeof window>"u")){if(!s){c();return}n&&l===i||(c(),l=i,n=setInterval(()=>a(t+1),i))}};return e.ui.hold(c),g=>{let{children:u=[],autoplay:p,interval:d=3e3,showArrows:h=!0,showDots:m=!0,loop:b=!0,"aria-label":v,className:w}=g,y=u.length;if(y===0)return c(),null;let x=$=>{let N=b?($+y)%y:Math.max(0,Math.min($,y-1));N!==t&&(t=N,e.render())};a=x,s=!!p,i=d,queueMicrotask(f);let k=()=>x(t+1),E=()=>x(t-1),P={onTouchStart:$=>{r=$.touches[0].clientX},onTouchEnd:$=>{let N=$.changedTouches[0].clientX-r;Math.abs(N)>40&&(N<0?k():E())}},S=Lt("div",{class:"wf-carousel-track",style:{transform:`translateX(-${t*100}%)`}},u),I=h?[Lt("button",{type:"button",class:"wf-carousel-arrow wf-carousel-arrow--prev","aria-label":"\u4E0A\u4E00\u5F20",onClick:E},Lt(O,{name:"chevron-left",size:18})),Lt("button",{type:"button",class:"wf-carousel-arrow wf-carousel-arrow--next","aria-label":"\u4E0B\u4E00\u5F20",onClick:k},Lt(O,{name:"chevron-right",size:18}))]:[],A=m?Lt("div",{class:"wf-carousel-dots"},u.map(($,N)=>Lt("button",{type:"button",class:`wf-carousel-dot${N===t?" wf-carousel-dot--active":""}`,key:N,"aria-label":`\u7B2C ${N+1} \u5F20`,onClick:()=>x(N)}))):null;return Lt("div",{class:["wf-carousel",w].filter(Boolean).join(" "),"aria-label":v,...P},[Lt("div",{class:"wf-carousel-viewport"},S),...I,A].filter(Boolean))}};import{h as Oo}from"weifuwu/vdom";var Pp=(o,e)=>{let t=0,n={...o},r=l=>Math.max(n.min??80,Math.min(l,n.max??600)),a=l=>{let c=r(l);c!==t&&(t=c,n.onResize?.(c),e.render())},s=0,i=e.ui.useDrag({onStart:()=>{s=t},onMove:(l,c)=>{let f=n.direction==="horizontal"?c.x:c.y;a(s+f)}});return l=>{let{direction:c="horizontal",defaultSize:f=300,min:g=80,max:u=600,step:p=20,children:d,onResize:h,className:m}=l;Object.assign(n,l,{direction:c,min:g,max:u,step:p,onResize:h}),t===0&&(t=f);let v=Oo("div",{class:"wf-resizable-handle",role:"separator","aria-orientation":c==="horizontal"?"vertical":"horizontal",tabIndex:0,...i,onKeyDown:w=>{let y=c==="horizontal"?w.key==="ArrowRight"?p:w.key==="ArrowLeft"?-p:0:w.key==="ArrowDown"?p:w.key==="ArrowUp"?-p:0;y!==0&&(w.preventDefault(),a(t+y))}});return Oo("div",{class:["wf-resizable",`wf-resizable--${c}`,m].filter(Boolean).join(" ")},[Oo("div",{class:"wf-resizable-panel",style:{flexBasis:`${t}px`}},d[0]),v,Oo("div",{class:"wf-resizable-panel wf-resizable-panel--fill"},d[1])])}};import{h as Ve}from"weifuwu/vdom";var Sp=["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],Tp=(o,e)=>{let t=new Date,n=t.getMonth(),r=t.getFullYear();return a=>{let{events:s=[],month:i,year:l,onMonthChange:c,onSelectDate:f,selectedDate:g,"aria-label":u}=a,p=i!==void 0&&l!==void 0,d=p?i:n,h=p?l:r,m=E=>{if(p&&!c){console.warn(`[weifuwu/Calendar] \u53D7\u63A7\u6A21\u5F0F\uFF08month/year \u5DF2\u4F20\uFF09\u4F46\u672A\u63D0\u4F9B onMonthChange\uFF0C\u6708\u4EFD\u5207\u6362\u65E0\u6CD5\u751F\u6548\u3002
52
+ \u975E\u53D7\u63A7\uFF1A\u53BB\u6389 month/year\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onMonthChange={(m, y) => setView(m, y)}`);return}let P=d+E,S=h;P<0?(P=11,S--):P>11&&(P=0,S++),p?c?.(P,S):(n=P,r=S,e.render())},b=()=>{p?c?.(t.getMonth(),t.getFullYear()):(n=t.getMonth(),r=t.getFullYear(),e.render())},v=Kn(h,d),w=xo(),y=Ve("div",{class:"wf-calendar-header"},[Ve("div",{class:"wf-calendar-title"},`${h} \u5E74 ${Sp[d]}`),Ve("div",{class:"wf-calendar-nav"},[Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4E0A\u4E2A\u6708",onClick:()=>m(-1)},Ve(O,{name:"chevron-left",size:14})),Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4ECA\u5929",onClick:b},"\u4ECA\u5929"),Ve("button",{type:"button",class:"wf-calendar-nav-btn","aria-label":"\u4E0B\u4E2A\u6708",onClick:()=>m(1)},Ve(O,{name:"chevron-right",size:14}))])]),x=v.map((E,P)=>{let S=E.map(I=>{let A=Et(I.year,I.month,I.day),$=s.filter(B=>B.date===A),N=g===A;return Ve("div",{class:["wf-calendar-cell",I.isOtherMonth?"wf-calendar-cell--other":"",I.isToday?"wf-calendar-cell--today":"",N?"wf-calendar-cell--selected":""].filter(Boolean).join(" "),key:`${I.year}-${I.month}-${I.day}`,role:"button",tabIndex:0,onClick:()=>f?.(A),onKeyDown:B=>{(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),f?.(A))}},[Ve("span",{class:"wf-calendar-day-num"},String(I.day)),...$.slice(0,3).map(B=>Ve("div",{class:"wf-calendar-event",style:B.color?{"--wf-event-color":B.color}:void 0,key:B.key},B.title)),$.length>3?Ve("div",{class:"wf-calendar-more"},`+${$.length-3} \u66F4\u591A`):null])});return Ve("div",{class:"wf-calendar-week",key:P},S)}),k=Ve("div",{class:"wf-calendar-grid"},[Ve("div",{class:"wf-calendar-weekdays"},w.map((E,P)=>Ve("div",{class:"wf-calendar-weekday",key:P},E))),...x]);return Ve("div",{class:"wf-calendar","aria-label":u},[y,k])}};import{createClientBrowser as Ep}from"weifuwu/vdom";import{h as Gi}from"weifuwu/vdom";var Ip=(o,e)=>{let t=e?.browser??Ep(),n="",r={text:"weifuwu",fontSize:14,color:"currentColor",opacity:.15,rotate:-25,gap:100},a=i=>{i&&!n&&(s(r.text,r.fontSize,r.color,r.opacity,r.rotate,r.gap),n&&(i.style.backgroundImage=`url(${n})`))},s=(i,l,c,f,g,u)=>{let p=t?.createElement("canvas");if(!p)return;let d=p.getContext("2d");if(!d)return;let{width:h}=d.measureText(i),m=Math.max(h+u,u),b=u;p.width=m,p.height=b,d.globalAlpha=f,d.font=`${l}px sans-serif`,d.fillStyle=c,d.translate(m/2,b/2),d.rotate(g*Math.PI/180),d.fillText(i,-h/2,0),n=p.toDataURL()};return i=>{let{text:l="weifuwu",fontSize:c=14,color:f="currentColor",opacity:g=.15,rotate:u=-25,gap:p=100,children:d,className:h}=i;return r={text:l,fontSize:c,color:f,opacity:g,rotate:u,gap:p},Gi("div",{class:["wf-watermark",h].filter(Boolean).join(" ")},[d,Gi("div",{class:"wf-watermark-overlay",style:{pointerEvents:"none",backgroundImage:n?`url(${n})`:void 0},ref:a})])}};import{h as Bo}from"weifuwu/vdom";var $p=(o,e)=>{let t={},n=e.ui.useInView({rootMargin:()=>`0px 0px ${t.threshold??100}px 0px`,onChange:(r,a)=>{a&&t.hasMore!==!1&&!t.loading&&t.onLoadMore?.()}});return r=>{Object.assign(t,r);let{hasMore:a=!0,loading:s,threshold:i=100,children:l,loadMoreText:c="\u52A0\u8F7D\u4E2D...",endText:f="\u6CA1\u6709\u66F4\u591A\u4E86",className:g}=r,u=null;return s?u=Bo("div",{class:"wf-infinite-scroll-loading"},c):a===!1?u=Bo("div",{class:"wf-infinite-scroll-end"},f):u=Bo("div",{class:"wf-infinite-scroll-sentinel",ref:n.observe}),Bo("div",{class:["wf-infinite-scroll",g].filter(Boolean).join(" ")},[l,u])}};import{h as Ge}from"weifuwu/vdom";function Ap(o,e,t,n){if(!t||!n)return o;let r=e.find(s=>s.key===t);if(!r||!r.sortable)return o;let a=[...o];return a.sort((s,i)=>{let l=s[t],c=i[t],f=r.sorter?r.sorter(l,c):String(l??"").localeCompare(String(c??""));return n==="desc"?-f:f}),a}var Dp=(o,e)=>{let t=null,n=e.ui.useScrollPosition({getScroller:()=>t??null}),r=a=>{a?(t=a,n.refresh()):t=null};return a=>{let{columns:s,data:i=[],height:l=400,rowHeight:c=40,overscan:f=5,sortKey:g,sortOrder:u,onSort:p,emptyText:d="\u6682\u65E0\u6570\u636E",onRowClick:h,rowSelection:m,className:b}=a;t&&t.scrollTop!==n.y&&n.refresh();let v=Ap(i,s,g,u),w=v.length,y=m?.rowKey??"id",x=(z,U)=>z[y]!=null?z[y]:U,k=new Set(m?.selectedRowKeys??[]),E=(z,U)=>{if(!m)return;let D=x(z,U),C=k.has(D)?m.selectedRowKeys.filter(T=>T!==D):[...m.selectedRowKeys,D],M=C.map(T=>v.find((R,L)=>x(R,L)===T)).filter(Boolean);m.onChange?.(C,M)},P=()=>{if(!m)return;if(w>0&&v.every((U,D)=>k.has(x(U,D))))m.onChange?.([],[]);else{let U=v.map((D,C)=>x(D,C));m.onChange?.(U,[...v])}},S=z=>({width:typeof z.width=="number"?`${z.width}px`:z.width,flex:z.width?void 0:"1"}),I=s.map(z=>{let U=g===z.key,D=z.sortable?Ge("span",{class:`wf-virtual-table-sort-icon${U?" wf-virtual-table-sort-icon--active":""}`},U&&u==="desc"?Ge(O,{name:"chevron-down",size:12}):Ge(O,{name:"chevron-up",size:12})):null;return Ge("div",{class:`wf-virtual-table-th${z.sortable?" wf-virtual-table-th--sortable":""}${U?" wf-virtual-table-th--sorted":""}`,style:S(z),role:z.sortable?"button":void 0,tabIndex:z.sortable?0:void 0,onClick:z.sortable?()=>{p&&(g!==z.key?p(z.key,"asc"):p(z.key,u==="asc"?"desc":"asc"))}:void 0,onKeyDown:z.sortable?C=>{if(C.key==="Enter"||C.key===" "){if(C.preventDefault(),!p)return;g!==z.key?p(z.key,"asc"):p(z.key,u==="asc"?"desc":"asc")}}:void 0},[Ge("span",{class:"wf-virtual-table-th-label"},z.label),D].filter(Boolean))}),A=[];if(m){let z=w>0&&v.every((D,C)=>k.has(x(D,C))),U=w>0&&!z&&v.some((D,C)=>k.has(x(D,C)));A.push(Ge("div",{class:"wf-virtual-table-th wf-virtual-table-th--select",style:{width:"40px"}},Ge("input",{type:"checkbox",class:"wf-virtual-table-check",checked:z,indeterminate:U,"aria-label":z?"\u53D6\u6D88\u5168\u9009":"\u5168\u9009","aria-checked":U?"mixed":String(z),onChange:P})))}A.push(...I);let $=Ge("div",{class:"wf-virtual-table-thead"},A),N=Math.max(0,Math.floor(n.y/c)-f),B=Math.min(w,Math.ceil((n.y+l)/c)+f),W;if(w===0)W=Ge("div",{class:"wf-virtual-table-empty"},d);else{let z=Ge("div",{class:"wf-virtual-table-spacer",style:{height:`${w*c}px`}}),U=[];for(let D=N;D<B;D++){let C=v[D],M=[];if(m){let T=k.has(x(C,D));M.push(Ge("div",{class:"wf-virtual-table-td wf-virtual-table-td--select",style:{width:"40px"}},Ge("input",{type:"checkbox",class:"wf-virtual-table-check",checked:T,"aria-label":`\u9009\u62E9\u7B2C ${D+1} \u884C`,onChange:()=>E(C,D),onClick:R=>R.stopPropagation()})))}for(let T of s)M.push(Ge("div",{class:"wf-virtual-table-td",style:S(T)},T.render?T.render(C[T.key],C,D):String(C[T.key]??"")));U.push(Ge("div",{class:"wf-virtual-table-row",style:{position:"absolute",top:`${D*c}px`,left:0,right:0,height:`${c}px`},key:String(C.id??D),onClick:h?()=>h(C,D):void 0},M))}W=Ge("div",{class:"wf-virtual-table-body",style:{position:"relative",width:"100%",height:`${l}px`,overflowY:"auto"},ref:r},[z,...U])}return Ge("div",{class:["wf-virtual-table",b].filter(Boolean).join(" "),style:{width:"100%",minHeight:`${l}px`}},[$,W])}};import{createClientBrowser as Lp}from"weifuwu/vdom";import{h as Wi}from"weifuwu/vdom";var Rp=(o,e)=>{let t=e.browser??Lp(),n=null,r,a,s=u=>{u&&(n=u)},i={...o},l=()=>i.container?i.container():window,c=e.ui.useScrollPosition({getScroller:l}),f=(u,p)=>{let d;for(let h of u){let m=h.href.startsWith("#")?e.browser?.byId(h.href.slice(1))??null:null;m&&m.getBoundingClientRect().top<=p&&(d=h.href)}return d??u[0]?.href},g=u=>{if(!["ArrowDown","ArrowUp","Home","End"].includes(u.key))return;let p=n?Array.from(n.querySelectorAll(".wf-anchor-link")):[],d=p.indexOf(t?.activeElement()??null);if(d<0)return;u.preventDefault();let h=d;u.key==="ArrowDown"?h=(d+1)%p.length:u.key==="ArrowUp"?h=(d-1+p.length)%p.length:u.key==="Home"?h=0:u.key==="End"&&(h=p.length-1),p[h].focus()};return u=>{Object.assign(i,u);let{items:p,activeKey:d,onAnchorChange:h,useHash:m,offsetTop:b=80,className:v}=u,w=f(p,b);r!==w&&(r=w,w!==void 0&&w!==a&&(a=w,h?.(w)));let y=d!==void 0?d:r??w,x=E=>P=>{P.preventDefault(),m&&e.browser?.setHash(E),h?.(E),!m&&d===void 0&&(r=E);let S=E.startsWith("#")?e.browser?.byId(E.slice(1))??null:null;S&&typeof S.scrollIntoView=="function"&&S.scrollIntoView({behavior:"smooth",block:"start"})},k=p.map(E=>{let P=y===E.href;return Wi("a",{key:E.href,class:`wf-anchor-link${P?" wf-anchor-link--active":""}`,href:E.href,role:"link",tabIndex:0,"aria-current":P?"true":void 0,onClick:x(E.href),onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),x(E.href)(S))}},E.title)});return Wi("nav",{class:["wf-anchor-nav",v].filter(Boolean).join(" "),ref:s,onKeyDown:g,"aria-label":"\u951A\u70B9\u5BFC\u822A"},k)}};import{h as mt}from"weifuwu/vdom";var qi=/\x1b\[([\d;]*)m/g;function Xi(o){let e=[],t=0,n=new Set,r;for(;r=qi.exec(o);){let s=o.slice(t,r.index);s&&(n.size?e.push(mt("span",{class:[...n].join(" ")},s)):e.push(s));let i=r[1].split(";").filter(Boolean);for(let l of i)l==="0"?n.clear():l==="1"?n.add("wf-log-ansi--bold"):+l>=30&&+l<=37?n.add(`wf-log-ansi--${l}`):+l>=40&&+l<=47&&n.add(`wf-log-ansi--bg${l}`);t=qi.lastIndex}let a=o.slice(t);return a&&(n.size?e.push(mt("span",{class:[...n].join(" ")},a)):e.push(a)),e}var Np=(o,e)=>{let t=null,n=0,r=!0,a=e.ui.useScrollPosition({getScroller:()=>t??null}),s=l=>{l?(t=l,a.refresh()):t=null},i=async l=>{await e.browser?.copyText(l.join(`
53
+ `))};return l=>{let{lines:c,height:f=400,lineHeight:g=24,overscan:u=5,follow:p=!0,maxLines:d,showCopy:h=!0,showLineNumbers:m=!0,className:b}=l,v=d!=null&&c.length>d?c.length-d:0,w=d!=null&&c.length>d?c.slice(-d):c,y=w.length;p&&c.length!==n?(n=c.length,r&&t&&queueMicrotask(()=>{t&&(t.scrollTop=t.scrollHeight)})):n=c.length;let x=y*g;t&&(r=a.y+f>=x-2);let k=Math.max(0,Math.floor(a.y/g)-u),E=Math.min(y,Math.ceil((a.y+f)/g)+u),P=mt("div",{class:"wf-log-spacer",style:{height:`${x}px`}}),S=[];for(let $=k;$<E;$++){let N=$+v+1;S.push(mt("div",{class:"wf-log-row",style:{position:"absolute",top:`${$*g}px`,left:0,right:0,height:`${g}px`},key:`${N}:${w[$]}`},[m?mt("span",{class:"wf-log-line-no"},String(N)):null,mt("span",{class:"wf-log-line-content"},Xi(w[$]))].filter(Boolean)))}let I=h?mt("button",{class:"wf-log-copy","aria-label":"\u590D\u5236\u5168\u90E8\u65E5\u5FD7",onClick:()=>{i(c)}},mt(O,{name:"copy",size:14})):null,A=y===0?mt("div",{class:"wf-log-empty"},"\u6682\u65E0\u65E5\u5FD7"):mt("div",{class:"wf-log-body",style:{position:"relative",width:"100%",height:`${f}px`,overflowY:"auto"},ref:s},[P,...S]);return mt("div",{class:["wf-log-viewer",b].filter(Boolean).join(" "),style:{width:"100%"}},[I,A].filter(Boolean))}};import{h as ts}from"weifuwu/vdom";var Qr=new Array(256),Zr=new Array(256),no=1;for(let o=0;o<255;o++)Qr[o]=no,Zr[no]=o,no<<=1,no&256&&(no^=285);function Yi(o,e){return o===0||e===0?0:Qr[(Zr[o]+Zr[e])%255]}var Jr=[{total:26,ec:[7,10,13,17],blocks:[1,1,1,1]},{total:44,ec:[10,16,22,28],blocks:[1,1,1,1]},{total:70,ec:[15,26,18,22],blocks:[1,1,2,2]},{total:100,ec:[20,18,26,16],blocks:[1,2,2,4]},{total:134,ec:[26,24,18,22],blocks:[1,2,4,4]},{total:172,ec:[18,16,24,28],blocks:[2,4,4,4]}],Hp={L:0,M:1,Q:2,H:3};function Op(o,e){for(let t=0;t<Jr.length;t++){let n=Jr[t],r=n.total-n.ec[e]*n.blocks[e];if(o<=r)return t+1}throw new Error("\u6570\u636E\u8D85\u51FA QR \u5BB9\u91CF\uFF08\u7248\u672C 1-6\uFF09")}function Bp(o){return Qr[o%255]}function Up(o,e){let t=[1];for(let r=0;r<e;r++){let a=new Array(t.length+1).fill(0);for(let s=0;s<t.length;s++)a[s]^=Yi(t[s],Bp(r)),a[s+1]^=t[s];t=a}let n=[...o,...new Array(e).fill(0)];for(let r=0;r<o.length;r++){let a=n[r];if(a!==0)for(let s=1;s<t.length;s++)n[r+s]^=Yi(t[s],a)}return n.slice(o.length)}function zp(o,e){let t=[],n=(i,l)=>{for(let c=l-1;c>=0;c--)t.push(i>>c&1)};n(4,4),n(o.length,8);for(let i of o)n(i,8);for(n(0,Math.min(4,e*8-t.length));t.length%8!==0;)t.push(0);let r=[];for(let i=0;i<t.length;i+=8){let l=0;for(let c=0;c<8;c++)l=l<<1|t[i+c];r.push(l)}let a=[236,17],s=0;for(;r.length<e;)r.push(a[s++%2]);return r}var Zi={1:[],2:[6,18],3:[6,22],4:[6,26],5:[6,30],6:[6,34]};function Ji(o,e,t,n){let r=17+4*o,a=Array.from({length:r},()=>new Array(r).fill(!1)),s=(p,d,h)=>{p>=0&&p<r&&d>=0&&d<r&&(a[p][d]=h)},i=(p,d)=>{for(let h=-1;h<=7;h++)for(let m=-1;m<=7;m++){let b=p+h,v=d+m;if(b<0||b>=r||v<0||v>=r||!(h>=0&&h<=6&&m>=0&&m<=6))continue;let y=h===0||h===6||m===0||m===6||h>=2&&h<=4&&m>=2&&m<=4;s(b,v,y)}};i(0,0),i(0,r-7),i(r-7,0);for(let p=8;p<r-8;p++)s(6,p,p%2===0),s(p,6,p%2===0);let l=Zi[o];if(l.length>1)for(let p=0;p<l.length;p++)for(let d=0;d<l.length;d++){let h=l[p],m=l[d];if(!(h===6&&m===6||h===6&&m===r-7||h===r-7&&m===6))for(let b=-2;b<=2;b++)for(let v=-2;v<=2;v++)s(h+b,m+v,Math.max(Math.abs(b),Math.abs(v))!==1)}s(r-8,8,!0);let c=[];for(let p of e)for(let d=7;d>=0;d--)c.push((p>>d&1)===1);for(let p of t)for(let d=7;d>=0;d--)c.push((p>>d&1)===1);let f=(p,d)=>{if(p===6||d===6)return!0;for(let[m,b]of[[0,0],[0,r-7],[r-7,0]])if(p>=m-1&&p<=m+7&&d>=b-1&&d<=b+7)return!0;let h=Zi[o];if(h.length>1){for(let m of h)for(let b of h)if(Math.abs(p-m)<=2&&Math.abs(d-b)<=2)return!0}return!1},g=0,u=!0;for(let p=r-1;p>0;p-=2){p===6&&p--;for(let d=0;d<r;d++){let h=u?r-1-d:d;for(let m=0;m<2;m++){let b=p-m;if(!f(h,b)&&g<c.length){let v=c[g++],w=_p(n,h,b);s(h,b,v!==w)}}}u=!u}return a}function _p(o,e,t){switch(o){case 0:return(e+t)%2===0;case 1:return e%2===0;case 2:return t%3===0;case 3:return(e+t)%3===0;case 4:return(Math.floor(e/2)+Math.floor(t/3))%2===0;case 5:return e*t%2+e*t%3===0;case 6:return(e*t%2+e*t%3)%2===0;case 7:return((e+t)%2+e*t%3)%2===0;default:return!1}}function Vp(o,e){let n=[1,0,3,2][o]<<3|e,r=n<<10,a=1335;for(;Math.clz32(r)>Math.clz32(a);){let s=Math.clz32(r)-Math.clz32(a);r^=a<<s}r=n<<10;for(let s=14;s>=10;s--)r>>s&1&&(r^=a<<s-10);return(n<<10|r)^21522}function Qi(o,e,t){let n=o.length,r=Vp(e,t),a=l=>(r>>14-l&1)===1;[[8,0],[8,1],[8,2],[8,3],[8,4],[8,5],[8,7],[8,8],[7,8],[5,8],[4,8],[3,8],[2,8],[1,8],[0,8]].forEach(([l,c],f)=>{o[l][c]=a(f)}),[[8,n-8],[8,n-7],[7,n-8],[5,n-8],[4,n-8],[3,n-8],[2,n-8],[1,n-8],[0,n-8],[n-1,8],[n-2,8],[n-3,8],[n-4,8],[n-5,8],[n-6,8],[n-7,8]].forEach(([l,c],f)=>{o[l][c]=a(f)})}function Kp(o){let e=o.length,t=0,n=s=>{let i=1;for(let l=1;l<=s.length;l++){if(l<s.length&&s[l]===s[l-1]){i++;continue}i>=5&&(t+=3+(i-5)),i=1}};for(let s=0;s<e;s++)n(o[s]);for(let s=0;s<e;s++)n(o.map(i=>i[s]));for(let s=0;s<e-1;s++)for(let i=0;i<e-1;i++)o[s][i]===o[s][i+1]&&o[s][i]===o[s+1][i]&&o[s][i]===o[s+1][i+1]&&(t+=3);let a=o.flat().filter(Boolean).length*100/(e*e);return t+=Math.floor(Math.abs(a-50)/5)*10,t}function es(o,e="M"){let t=new TextEncoder().encode(o),n=Hp[e],r=Op(t.length,n),a=Jr[r-1],s=a.ec[n],i=a.blocks[n],l=a.total-s*i,c=zp(t,l),f=Math.floor(c.length/i),g=[],u=[];for(let w=0;w<i;w++){let y=c.slice(w*f,(w+1)*f);g.push(y),u.push(Up(y,s))}let p=[];for(let w=0;w<f;w++)for(let y of g)p.push(y[w]);for(let w=0;w<s;w++)for(let y of u)p.push(y[w]);let d=p.slice(0,l),h=p.slice(l),m=0,b=1/0;for(let w=0;w<8;w++){let y=Ji(r,d,h,w);Qi(y,n,w);let x=Kp(y);x<b&&(b=x,m=w)}let v=Ji(r,d,h,m);return Qi(v,n,m),{size:17+4*r,version:r,level:e,mask:m,matrix:v}}var jp=(o,e)=>t=>{let{value:n,ecLevel:r="M",size:a=128,quietZone:s=4,color:i="currentColor",bgColor:l,className:c}=t,f=es(n,r),g=s,u=[];l&&u.push(ts("rect",{class:"wf-qr-bg",x:0,y:0,width:f.size+g*2,height:f.size+g*2,fill:l}));for(let d=0;d<f.size;d++)for(let h=0;h<f.size;h++)f.matrix[d][h]&&u.push(ts("rect",{x:h+g,y:d+g,width:1,height:1,fill:i}));let p=f.size+g*2;return ts("svg",{class:["wf-qr",c].filter(Boolean).join(" "),width:a,height:a,viewBox:`0 0 ${p} ${p}`,role:"img","aria-label":`\u4E8C\u7EF4\u7801\uFF1A${n}`,shapeRendering:"crispEdges"},u)};import{h as ht}from"weifuwu/vdom";function ea(o,e){let t=o===""?[]:o.split(`
54
54
  `),n=e===""?[]:e.split(`
55
- `),r=t.length,a=n.length;if(r===0)return n.map(f=>({type:"add",line:f}));if(a===0)return t.map(f=>({type:"remove",line:f}));let s=Array.from({length:r+1},()=>new Array(a+1).fill(0));for(let f=r-1;f>=0;f--)for(let g=a-1;g>=0;g--)t[f]===n[g]?s[f][g]=s[f+1][g+1]+1:s[f][g]=Math.max(s[f+1][g],s[f][g+1]);let i=[],l=0,c=0;for(;l<r&&c<a;)t[l]===n[c]?(i.push({type:"same",line:t[l]}),l++,c++):s[l+1][c]>=s[l][c+1]?(i.push({type:"remove",line:t[l]}),l++):(i.push({type:"add",line:n[c]}),c++);for(;l<r;)i.push({type:"remove",line:t[l]}),l++;for(;c<a;)i.push({type:"add",line:n[c]}),c++;return i}function ea(o){let e=[],t=[],n=()=>{t.length!==0&&(t[0].type==="same"?e.push({kind:"same",sameCount:t.length,lines:t}):e.push({kind:"change",lines:t}),t=[])};for(let r of o){let a=r.type==="same"?"same":"change",s=t.length===0?null:t[0].type==="same"?"same":"change";s!==null&&s!==a&&n(),t.push(r)}return n(),e}var _p=(o,e)=>{let t=new Set;return n=>{let{oldCode:r="",newCode:a="",oldTitle:s="\u65E7\u7248",newTitle:i="\u65B0\u7248",foldThreshold:l=5,maxLines:c=2e3,className:f=""}=n,g=Qi(r,a),u=ea(g),d=(b,v)=>b.kind==="same"&&b.sameCount>l,p=b=>t.has(b),h=[],m=0;for(let b=0;b<u.length;b++){let v=u[b];if(d(v,b)){let w=p(b);if(h.push(ht("div",{class:"wf-diffview-fold",role:"button",tabindex:0,onClick:()=>{t.has(b)?t.delete(b):t.add(b),e.render()},onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),t.has(b)?t.delete(b):t.add(b),e.render())}},w?"\u6536\u8D77\u672A\u53D8\u884C":`\u2195 ${v.sameCount} \u884C\u672A\u53D8`)),w)for(let y of v.lines){if(m>=c)break;m++,h.push(ta(y,m))}}else for(let w of v.lines){if(m>=c)break;m++,h.push(ta(w,m))}}return m>=c&&h.push(ht("div",{class:"wf-diffview-overflow"},`\u2026 diff \u8FC7\u5927\uFF0C\u4EC5\u663E\u793A\u524D ${c} \u884C`)),ht("div",{class:`wf-diffview${f?` ${f}`:""}`},[ht("div",{class:"wf-diffview-header"},[ht("span",{class:"wf-diffview-title wf-diffview-title--old"},s),ht("span",{class:"wf-diffview-arrow"},"\u2192"),ht("span",{class:"wf-diffview-title wf-diffview-title--new"},i)]),ht("div",{class:"wf-diffview-body"},h)])}};function ta(o,e){return ht("div",{class:`wf-diffview-row wf-diffview-row--${o.type}`},[ht("span",{class:"wf-diffview-sign"},o.type==="add"?"+":o.type==="remove"?"-":" "),ht("span",{class:"wf-diffview-line"},o.line===""?" ":o.line)])}import{h as oo}from"weifuwu/vdom";function na(o,e,t,n=2){let r=o.length;if(r===0)return[];let a=Math.min(...o),i=Math.max(...o)-a,l=e-n*2,c=t-n*2;return r===1?[{x:e/2,y:t/2}]:o.map((f,g)=>({x:n+(r===1?0:g/(r-1)*l),y:i===0?t/2:n+(1-(f-a)/i)*c}))}function oa(o){return o.map(e=>`${Math.round(e.x*10)/10},${Math.round(e.y*10)/10}`).join(" ")}function ra(o){if(o.length===0)return"";if(o.length===1)return`M ${o[0].x},${o[0].y}`;let e=`M ${o[0].x},${o[0].y}`;for(let t=0;t<o.length-1;t++){let n=o[t-1]??o[t],r=o[t],a=o[t+1],s=o[t+2]??a,i=r.x+(a.x-n.x)/6,l=r.y+(a.y-n.y)/6,c=a.x-(s.x-r.x)/6,f=a.y-(s.y-r.y)/6;e+=` C ${i},${l} ${c},${f} ${a.x},${a.y}`}return e}var Vp=(o,e)=>t=>{let{data:n,width:r=120,height:a=32,stroke:s="currentColor",fill:i=!1,smooth:l=!1,label:c,className:f=""}=t,g=na(n,r,a,2),u=[];if(g.length>0)if(l){let d=ra(g);i&&u.push(oo("path",{d:`${d} L ${g[g.length-1].x},${a} L ${g[0].x},${a} Z`,fill:s,opacity:.12})),u.push(oo("path",{d,fill:"none",stroke:s,"stroke-width":1.5,"stroke-linecap":"round"}))}else{let d=oa(g);i&&u.push(oo("polygon",{points:`${d} ${r-2},${a} 2,${a}`,fill:s,opacity:.12})),u.push(oo("polyline",{points:d,fill:"none",stroke:s,"stroke-width":1.5,"stroke-linecap":"round","stroke-linejoin":"round"}))}return oo("svg",{class:`wf-sparkline${f?` ${f}`:""}`,viewBox:`0 0 ${r} ${a}`,width:r,height:a,role:c?"img":void 0,"aria-label":c,"aria-hidden":c?void 0:!0},u)};import{h as gt}from"weifuwu/vdom";var Kp=(o,e)=>{let t=0,n=null,r={top:0,left:0,width:0,height:0},a="bottom",s=!1,i={steps:[]},l=null,c=()=>s;e.ui.useGlobalKey?.(p=>{p.key==="Escape"&&c()&&g()});let f=p=>{i.onStepChange?.(p),i.current===void 0&&(t=p,d())},g=()=>{i.onChange?.(!1),i.open===void 0&&(s=!1,e.render())},u=()=>{let p=i.open!==void 0;i.onFinish?.(),(!p||!i.onFinish)&&(i.onChange?.(!1),s=!1,e.render())},d=()=>{n=i.steps[t]?.target?e.browser?.query(i.steps[t].target):null,l?.refresh(),e.render()};return p=>{i=p,s=!!p.open;let h=p.open!==void 0,m=p.current??t;if(a=p.steps[m]?.placement??"bottom",s&&p.steps[m]){let $=e.browser?.query(p.steps[m].target);if($!==n){if(n=$,$)try{$.scrollIntoView({block:"center"})}catch{}l?.refresh()}}if(!s&&!h||!s)return null;let b=p.steps[m];if(!b)return null;if(n){let $=n.getBoundingClientRect();($.width||$.height)&&(r={top:$.top,left:$.left,width:$.width,height:$.height})}let v=m>=p.steps.length-1,w=e.browser?.window,x=a==="top"&&!!w&&r.top<120?"bottom":a,k=sa(r,x),E=k.left,T=k.top,P=gt("div",{class:`wf-tour-bubble wf-tour-bubble--${x}`,style:{left:`${E}px`,top:`${T}px`}},[gt("div",{class:"wf-tour-bubble-header"},[gt("span",{class:"wf-tour-title"},b.title),gt("span",{class:"wf-tour-step"},`${m+1} / ${p.steps.length}`)]),gt("div",{class:"wf-tour-content"},b.content),gt("div",{class:"wf-tour-actions"},[gt("button",{class:"wf-tour-btn wf-tour-btn--ghost",onClick:()=>u()},"\u8DF3\u8FC7"),m>0&&gt("button",{class:"wf-tour-btn wf-tour-btn--ghost",onClick:()=>f(m-1)},"\u4E0A\u4E00\u6B65"),gt("button",{class:"wf-tour-btn wf-tour-btn--primary",onClick:()=>v?u():f(m+1)},v?"\u5B8C\u6210":"\u4E0B\u4E00\u6B65")].filter(Boolean))]),I=gt("div",{class:"wf-tour-highlight",style:{left:`${r.left}px`,top:`${r.top}px`,width:`${r.width}px`,height:`${r.height}px`}}),A=gt("div",{class:"wf-tour-layer"},[I,P]);return s&&!l?l=e.ui.openPopup({key:"tour",mask:!0,maskClosable:!1,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>A,position:()=>{let $=n?.getBoundingClientRect();$&&(r={top:$.top,left:$.left,width:$.width,height:$.height});let N=sa(r,a);return{x:N.left,y:N.top,width:N.width}},onClose:()=>{l=null,s&&g()}}):!s&&l?(l.close(),l=null):l&&l.update(A),null}};function sa(o,e){switch(e){case"top":return{top:o.top-10,left:o.left,width:o.width};case"left":return{top:o.top,left:o.left-10,width:o.width};case"right":return{top:o.top,left:o.left+o.width+10,width:o.width};default:return{top:o.top+o.height+10,left:o.left,width:o.width}}}import{h as Lt}from"weifuwu/vdom";var jp=(o,e)=>{let t=null,{dropProps:n,dragProps:r}=e.ui.useDragDrop({onDragOver:()=>{},onDragEnd:()=>{t=null,e.render()}});return a=>{let{columns:s,onMove:i,className:l=""}=a;i||console.warn("[weifuwu] Kanban: \u4F20\u5165\u4E86\u53D7\u63A7 columns \u4F46\u7F3A\u5C11 onMove \u56DE\u8C03\u2014\u2014\u62D6\u62FD\u5C06\u9759\u9ED8\u5931\u6548");let c=(g,u)=>{!t||!i||(i({columnKey:t.fromColumn,index:t.fromIndex},{columnKey:g,index:u}),t=null,e.render())},f=s.map(g=>Lt("div",{class:"wf-kanban-col",key:g.key,"data-col":g.key,...n,onDrop:d=>{d.preventDefault(),c(g.key,g.items.length)}},[Lt("div",{class:"wf-kanban-col-header"},[Lt("span",{class:"wf-kanban-col-title"},g.title),Lt("span",{class:"wf-kanban-col-count"},String(g.items.length))]),Lt("div",{class:"wf-kanban-col-body"},g.items.map((d,p)=>Lt("div",{class:"wf-kanban-card",key:d.id,"data-item":d.id,draggable:r.draggable,onDragEnd:r.onDragEnd,onDragStart:h=>{h.dataTransfer?.setData("text/plain",d.id),h.dataTransfer&&(h.dataTransfer.effectAllowed="move"),t={itemId:d.id,fromColumn:g.key,fromIndex:p}},onDragOver:h=>h.preventDefault(),onDrop:h=>{h.preventDefault(),h.stopPropagation(),c(g.key,p)}},[d.tag&&Lt("span",{class:"wf-kanban-tag"},d.tag),Lt("span",{class:"wf-kanban-card-title"},d.title)].filter(Boolean))))]));return Lt("div",{class:`wf-kanban${l?` ${l}`:""}`},f)}};import{h as Pn}from"weifuwu/vdom";function ia(o,e){let t=new Map,n=new Map;for(let i of o)t.set(i.id,[]),n.set(i.id,0);for(let i of e)t.get(i.from)?.push(i.to),n.set(i.to,(n.get(i.to)??0)+1);let r=new Map,a=[];for(let i of o)(n.get(i.id)??0)===0&&(a.push(i.id),r.set(i.id,0));let s=0;for(;a.length>0;){let i=a.shift();s++;let l=r.get(i)??0;for(let c of t.get(i)??[])r.set(c,Math.max(r.get(c)??0,l+1)),n.set(c,(n.get(c)??1)-1),(n.get(c)??0)===0&&a.push(c)}for(let i of o)r.has(i.id)||r.set(i.id,s);return r}function ns(o,e){let t=new Map,n=new Map;for(let s of o)t.set(s.id,[]),n.set(s.id,0);for(let s of e)t.get(s.from)?.push(s.to),n.set(s.to,(n.get(s.to)??0)+1);let r=o.filter(s=>(n.get(s.id)??0)===0).map(s=>s.id),a=0;for(;r.length>0;){let s=r.shift();a++;for(let i of t.get(s)??[])n.set(i,(n.get(i)??1)-1),(n.get(i)??0)===0&&r.push(i)}return a<o.length}function os(o,e,t){let{orientation:n,width:r,height:a,nodeW:s=88,nodeH:i=40}=t,l=ia(o,e),c=new Map;for(let p of o){let h=l.get(p.id)??0;c.has(h)||c.set(h,[]),c.get(h).push(p.id)}let f=c.size,g=new Map;for(let[p,h]of c){let m=h.length;h.forEach((b,v)=>{if(n==="vertical"){let w=p===0?i/2:p===f-1?a-i/2:p/(f-1)*a,y=m===1?r/2:v/(m-1)*(r-s)+s/2;g.set(b,{x:y,y:w})}else{let w=p===0?s/2:p===f-1?r-s/2:p/(f-1)*r,y=m===1?a/2:v/(m-1)*(a-i)+i/2;g.set(b,{x:w,y})}})}let u=o.map(p=>{let h=g.get(p.id)??{x:r/2,y:a/2};return{id:p.id,x:h.x,y:h.y}}),d=e.map(p=>{let h=g.get(p.from)??{x:0,y:0},m=g.get(p.to)??{x:0,y:0},b=n==="vertical"?`C ${h.x},${(h.y+m.y)/2} ${m.x},${(h.y+m.y)/2} ${m.x},${m.y}`:`C ${(h.x+m.x)/2},${h.y} ${(h.x+m.x)/2},${m.y} ${m.x},${m.y}`;return{from:p.from,to:p.to,d:`M ${h.x},${h.y} ${b}`}});return{nodes:u,edges:d}}var Fp=(o,e)=>t=>{let{nodes:n,edges:r,orientation:a="vertical",width:s=360,height:i=220,className:l=""}=t,c=ns(n,r),{nodes:f,edges:g}=os(n,r,{orientation:a,width:s,height:i}),u=f.map(p=>{let h=n.find(b=>b.id===p.id),m=h?.status??"default";return Pn("div",{class:`wf-pipeline-node wf-pipeline-node--${m}`,key:p.id,style:{left:`${Math.round(p.x)}px`,top:`${Math.round(p.y)}px`},"data-id":p.id},h?.label??p.id)}),d=g.map((p,h)=>Pn("path",{class:"wf-pipeline-edge",d:p.d,key:`e${h}`}));return Pn("div",{class:`wf-pipeline${l?` ${l}`:""}`},[Pn("svg",{class:"wf-pipeline-svg",width:s,height:i,viewBox:`0 0 ${s} ${i}`,"aria-hidden":!0},d),Pn("div",{class:"wf-pipeline-nodes"},u),c&&Pn("div",{class:"wf-pipeline-warn"},"\u68C0\u6D4B\u5230\u73AF\u4F9D\u8D56\u2014\u2014\u5E03\u5C40\u53EF\u80FD\u4E0D\u51C6\u786E")].filter(Boolean))};import{h as Sn}from"weifuwu/vdom";function Uo(o,e){for(let t of o){if(t.key===e)return t.label;if(t.children){let n=Uo(t.children,e);if(n)return n}}}var Gp=(o,e)=>{let t=!1,n=[],r=null,a=null,s=f=>{t&&!a?a=e.ui.openPopup({key:"treeselect",anchor:()=>r,placement:"bottom",center:!1,gap:4,content:()=>f,onClose:()=>{a=null,t&&(t=!1,e.render())}}):!t&&a?(a.close(),a=null):a&&a.update(f)},i=()=>{t=!t,e.render()},l=(f,g)=>{if(f==null)return"";if(Array.isArray(f)){if(f.length===0)return"";let u=f.map(d=>Uo(g,d)).filter(Boolean);return u.length===0?"":u.length>2?`${u.slice(0,2).join("\u3001")} \u7B49 ${u.length} \u9879`:u.join("\u3001")}return Uo(g,f)??""},c=f=>{r=f,f&&a?.open&&a.refresh()};return f=>{let{options:g,value:u,onChange:d,multiple:p=!1,placeholder:h="\u8BF7\u9009\u62E9",disabled:m,error:b,className:v=""}=f;u!==void 0&&!d&&console.warn("[weifuwu] TreeSelect: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u9009\u62E9\u5C06\u9759\u9ED8\u5931\u6548");let w=l(u,g),y=p&&Array.isArray(u),x=Sn(Yr,{data:g,virtual:f.virtual,height:f.height??320,expandOnClick:!0,selectedKeys:y?void 0:u?[u]:[],onSelect:E=>{E.length!==0&&(d?.(E[0]),t=!1,e.render())},checkable:p||void 0,checkedKeys:y?u:void 0,onCheck:p?E=>{d?.(E)}:void 0,expandedKeys:n,onExpand:E=>{n=E,e.render()}}),k=Sn("div",{class:"wf-treeselect-dropdown"},x);return s(k),Sn("div",{class:`wf-treeselect${v?` ${v}`:""}`},[Sn("div",{class:["wf-treeselect-trigger",t?" wf-treeselect-trigger--open":"",m?" wf-treeselect-trigger--dis":"",b?" wf-treeselect-trigger--err":""].filter(Boolean).join(" "),role:"combobox",tabindex:m?-1:0,"aria-haspopup":"listbox","aria-expanded":String(t),"aria-disabled":m?"true":void 0,ref:c,onClick:m?void 0:i,onKeyDown:E=>{m||(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),i())}},[Sn("span",{class:w?"wf-treeselect-label":"wf-treeselect-placeholder"},w||h),Sn("span",{class:`wf-treeselect-arrow${t?" wf-treeselect-arrow--open":""}`})])])}};import{h as Kt}from"weifuwu/vdom";var Wp=Symbol("LayoutSider"),qp=o=>e=>{let n=(Array.isArray(e.children)?e.children:[e.children]).some(r=>r?.type===rs);return Kt("div",{class:["wf-layout",n?"wf-layout--row":"wf-layout--column",e.className].filter(Boolean).join(" "),style:e.style,"data-layout":n?"row":"column"},e.children)},rs=(o,e)=>{let t=o?.collapsed??!1,n=o?.collapsed,r,a=!1,s=()=>{let i=!n;r?r(i):(t=i,e.render())};return i=>{n=i.collapsed,r=i.onCollapse,a=!!i.collapsible;let l=i.collapsed!==void 0?!!i.collapsed:t,c=l?i.collapsedWidth??"var(--wf-layout-sider-collapsed-width, 64px)":i.width??"var(--wf-layout-sider-width, 240px)",f=[Kt("div",{class:"wf-layout-sider-body"},i.children)];return a&&f.push(Kt("button",{class:"wf-layout-sider-trigger","aria-label":l?"\u5C55\u5F00\u4FA7\u8FB9\u680F":"\u6298\u53E0\u4FA7\u8FB9\u680F",onClick:()=>s()},i.trigger??Kt("span",{class:`wf-layout-sider-trigger-icon${l?" is-collapsed":""}`},"\u25C2"))),Kt("aside",{class:`wf-layout-sider${l?" wf-layout-sider--collapsed":""}`,style:{width:c},"data-collapsed":l?"true":"false"},f)}};rs[Wp]=!0;var Xp=o=>e=>Kt("header",{class:"wf-layout-header",style:e.style},e.children),Yp=o=>e=>Kt("main",{class:"wf-layout-content",style:e.style},e.children),Jp=o=>e=>Kt("footer",{class:"wf-layout-footer",style:e.style},e.children);import{h as Rt}from"weifuwu/vdom";var Zp=(o,e)=>{let t="top",n,r=!1,a=null,s=f=>{f&&(a=f)},i=null,l=null,c=()=>{i?.setOpen(!1)};return f=>{let{title:g,okText:u="\u786E\u5B9A",cancelText:d="\u53D6\u6D88",danger:p,onConfirm:h,onCancel:m,position:b="top",icon:v}=f;t=b,i=e.ui.useOpen({open:f.open,onOpenChange:f.onOpenChange,name:"Popconfirm"}),n=h,r=!!f.disabled;let w=i?.open??!1,y=Rt("div",{class:`wf-popconfirm wf-popconfirm--${b}${w?" wf-popconfirm--enter":" wf-popconfirm--exit"}`,role:"dialog","aria-label":String(g??"\u786E\u8BA4")},[Rt("div",{class:"wf-popconfirm-title"},[Rt("span",{class:"wf-popconfirm-icon"},v??Rt(H,{name:p?"alert":"info"})),Rt("span",{class:"wf-popconfirm-title-text"},g)]),Rt("div",{class:"wf-popconfirm-actions"},[Rt("button",{class:"wf-popconfirm-cancel wf-btn wf-btn--secondary",onClick:x=>{x.stopPropagation(),m?.(),c()}},d),Rt("button",{class:`wf-popconfirm-ok wf-btn${p?" wf-btn--danger":" wf-btn--primary"}`,onClick:x=>{x.stopPropagation(),h?.(),c()}},u)])]);return w&&!l?l=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:8,content:()=>y,onClose:()=>{l=null,i?.setOpen(!1)}}):!w&&l?(l.close(),l=null):l&&l.update(y),Rt("span",{class:"wf-popconfirm-wrap",ref:s,"aria-haspopup":"dialog","aria-expanded":String(w),onClick:x=>{x.stopPropagation?.(),r||i?.setOpen(!i.open)}},f.children)}};import{h as ro}from"weifuwu/vdom";function aa(o,e){let t=e.trim().toLowerCase();return t?o.filter(n=>String(n.label??n.value).toLowerCase().includes(t)||n.value.toLowerCase().includes(t)):o}var Qp=(o,e)=>{let t=o?.open??!1,n=-1,r=o?.value??"",a,s=o?.open,i,l,c=null,f=m=>{m&&(c=m)},g=null,u=m=>{t&&!g?g=e.ui.openPopup({key:"wf-autocomplete",anchor:()=>c,placement:"bottom",center:!1,gap:4,content:()=>m,onClose:()=>{g=null,t&&(t=!1,e.render(),i?.(!1))}}):!t&&g?(g.close(),g=null):g&&g.update(m)},d=m=>{t=m,e.render(),i?.(m)},p=null,h=m=>{p?.setValue(m.value),l?.(m.value,m),p?.setKeyword(""),p?.setSelectedLabel(m.label??m.value),n=-1,d(!1)};return m=>{let{options:b,value:v,placeholder:w="\u8F93\u5165\u641C\u7D22\u2026",disabled:y,error:x,renderOption:k,onSelect:E}=m;p=e.ui.useControlledInput({value:v,onChange:m.onChange,name:"AutoComplete"});let T=p.keyword,P=p.selectedLabel;r=v??"",a=m.onChange,s=m.open,i=m.onOpenChange,l=E,m.open!==void 0&&(t=!!m.open);let I=t&&T||r,A=(m.filter??aa)(b,I);n>=A.length&&(n=-1);let $=!1,N=C=>{if($||C.isComposing)return;let M=C.target.value;p?.setKeyword(M),p?.setValue(M),t?e.render():d(!0),n=-1},B=()=>{$=!0},q=C=>{$=!1;let M=C.target?.value??"";p?.setKeyword(M),p?.setValue(M),t||d(!0)},V=C=>{if(!t&&(C.key==="ArrowDown"||C.key==="ArrowUp")){C.preventDefault(),d(!0),n=C.key==="ArrowDown"?0:A.length-1;return}C.key==="ArrowDown"?(C.preventDefault(),n=(n+1)%A.length,e.render()):C.key==="ArrowUp"?(C.preventDefault(),n=n<=0?A.length-1:n-1,e.render()):C.key==="Enter"?t&&n>=0&&A[n]&&(C.preventDefault(),h(A[n])):C.key==="Escape"&&(C.preventDefault(),d(!1))},U=ro("div",{class:"wf-autocomplete-dropdown"},A.map((C,M)=>ro("div",{class:`wf-autocomplete-option${M===n?" wf-autocomplete-option--active":""}`,key:C.value,onMouseDown:S=>{S.stopPropagation(),C.disabled||h(C)}},k?k(C):C.label??C.value))),L=ro("div",{class:"wf-autocomplete-wrap",ref:f},[ro("input",{class:["wf-autocomplete-input wf-input",x?" wf-autocomplete-input--err":""].filter(Boolean).join(" "),"aria-invalid":x?"true":void 0,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(t),value:t?T:P||I,placeholder:w,disabled:y,onInput:N,onKeyDown:V,onCompositionStart:B,onCompositionEnd:q,onFocus:()=>{t||d(!0)}}),x?ro("div",{class:"wf-input-err"},x):null]);return u(U),L}};import{h as la}from"weifuwu/vdom";var ef=(o,e)=>t=>{let{href:n,variant:r="default",underline:a=!0,disabled:s,target:i,icon:l,onClick:c,children:f}=t,g=["wf-link",`wf-link--${r}`,a===!1&&"wf-link--no-underline",s&&"wf-link--disabled"].filter(Boolean).join(" ");if(l!==void 0){let u=[l];return Array.isArray(f)?u.push(...f):f!==void 0&&u.push(f),la("a",{class:g,href:s?void 0:n,target:i,rel:i==="_blank"?"noopener noreferrer":void 0,"aria-disabled":s?"true":void 0,onClick:s?d=>{d.preventDefault(),d.stopPropagation()}:c},u)}return la("a",{class:g,href:s?void 0:n,target:i,rel:i==="_blank"?"noopener noreferrer":void 0,"aria-disabled":s?"true":void 0,onClick:s?u=>{u.preventDefault(),u.stopPropagation()}:c},f)};import{h as en}from"weifuwu/vdom";var tf=(o,e)=>t=>{let{icon:n,badge:r,position:a="bottom-right",static:s,disabled:i,onClick:l,children:c}=t;return en("button",{class:`wf-float-btn wf-float-btn--${a}${s?" wf-float-btn--static":""}${i?" wf-float-btn--disabled":""}`,style:{position:s?void 0:"fixed"},"aria-label":t["aria-label"],disabled:i,onClick:i?void 0:l},[n,c,r!=null&&en("span",{class:"wf-float-btn-badge"},String(r))].filter(f=>f!=null&&f!==!1))},nf=(o,e)=>{let t=!1;return n=>{let{position:r="bottom-right",children:a}=n,s=Array.isArray(a)?a:[a];return en("div",{class:`wf-float-group wf-float-group--${r}${t?" wf-float-group--open":""}`},[en("div",{class:"wf-float-group-items"},t?s.map((i,l)=>{let c={...i.props??{},static:!0},f=i.type?{...i,props:c}:i;return en("div",{class:"wf-float-group-item",key:l},f)}):[]),en("button",{class:"wf-float-group-main","aria-label":t?"\u6536\u8D77":"\u5C55\u5F00","aria-expanded":t?"true":"false",onClick:()=>{t=!t,e.render()}},en("span",{class:`wf-float-group-icon${t?" is-open":""}`},"+"))])}};import{h as bt}from"weifuwu/vdom";var of=120,rf=(o,e)=>{let t=null,n=null,r=new Map,a=new Map,s=new Map,i=N=>{let B=s.get(N);return B||(B=q=>{q&&r.set(N,q)},s.set(N,B)),B},l=new Map,c=N=>{let B=l.get(N);return B||(B=q=>{q&&a.set(N,q)},l.set(N,B)),B},f=null,g=null,u=null,d,p=N=>{f=N},h=N=>{g=N},m=N=>{u=N},b=N=>{if(!N||typeof N!="object")return!1;let B=N;return!!(f&&f.contains(B)||g&&g.contains(B)||u&&u.contains(B))},v=()=>{clearTimeout(d),d=void 0},w=()=>{d||(d=setTimeout(()=>{d=void 0,(t!==null||n!==null)&&(t=null,n=null,e.render())},of))},y=N=>{b(N?.relatedTarget??null)||w()},x=()=>v();e.ui.onUnmount?.(()=>{clearTimeout(d)});let k=null,E=N=>{t&&!k?k=e.ui.openPopup({key:"wf-navmenu-sub",anchor:()=>t?r.get(t)??null:null,placement:"bottom",center:!1,gap:4,content:()=>N,onClose:()=>{k=null,t&&(t=null,n=null,e.render())}}):k&&k.update(N)},T=null,P=N=>{n&&!T?T=e.ui.openPopup({key:"wf-navmenu-nested",anchor:()=>n?a.get(n)??null:null,placement:"right",center:!1,gap:4,content:()=>N,onClose:()=>{T=null,n&&(n=null,e.render())}}):T&&T.update(N)},I=()=>{!n&&T&&(T.close(),T=null)},A=()=>{!t&&k&&(k.close(),k=null)},$=(N,B,q,V)=>N.map(U=>{let L=!!U.children?.length,C=()=>{U.disabled||(L?(n=n===U.key?null:U.key,e.render()):(q?.(U.key),t=null,n=null,e.render()))},M=[bt("span",{class:"wf-navmenu-sub-label"},U.label),L?bt("span",{class:"wf-navmenu-sub-arrow"},bt(H,{name:"chevron-right"})):null];return n===U.key&&P(bt("div",{class:"wf-navmenu-sub wf-navmenu-sub--nested wf-navmenu-sub--open",role:"menu",ref:m,onMouseEnter:()=>{v(),n!==U.key&&(n=U.key,e.render())},onMouseLeave:y},$(U.children||[],B,q,V+1))),I(),bt("div",{class:`wf-navmenu-sub-item${U.disabled?" wf-navmenu-sub-item--disabled":""}${L&&n===U.key?" wf-navmenu-sub-item--open":""}`,key:U.key,role:"menuitem",tabIndex:U.disabled?void 0:0,"aria-haspopup":L?"menu":void 0,"aria-disabled":U.disabled?"true":void 0,ref:c(U.key),onClick:C,onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault?.(),C())},onMouseEnter:()=>{v(),!U.disabled&&(L?n!==U.key&&(n=U.key,e.render()):n!==null&&(n=null,e.render()))}},M)});return N=>{let{items:B,activeKey:q,onSelect:V}=N,U=bt("nav",{class:"wf-navmenu",role:"navigation","aria-label":"\u4E3B\u5BFC\u822A",ref:p,onMouseLeave:y},B.map(L=>{let C=!!L.children?.length,M=t===L.key,S=[bt("span",{class:"wf-navmenu-label"},L.label),C&&bt("span",{class:"wf-navmenu-arrow"},bt(H,{name:"chevron-down"}))];return M&&E(bt("div",{class:"wf-navmenu-sub wf-navmenu-sub--open",role:"menu",ref:h,onMouseEnter:x,onMouseLeave:y},$(L.children||[],q,V,1))),A(),bt("div",{class:`wf-navmenu-item${L.disabled?" wf-navmenu-item--disabled":""}${q===L.key?" wf-navmenu-item--active":""}`,key:L.key,role:"menuitem","aria-haspopup":C?"menu":void 0,"aria-expanded":C&&M?"true":void 0,ref:i(L.key),tabIndex:L.disabled?void 0:0,onClick:()=>{L.disabled||(C?(t=M?null:L.key,n=null,e.render()):(V?.(L.key),t=null,n=null,e.render()))},onMouseEnter:()=>{v(),!L.disabled&&(C?t!==L.key&&(t=L.key,n=null,e.render()):(t!==null||n!==null)&&(t=null,n=null,e.render()))},onKeyDown:R=>{if(R.key==="Enter"||R.key===" "){if(R.preventDefault?.(),L.disabled)return;C?(t=M?null:L.key,n=null,e.render()):(V?.(L.key),t=null,n=null,e.render())}else R.key==="ArrowRight"&&C?(t=L.key,e.render()):R.key==="Escape"&&(t=null,n=null,e.render())}},S)}));return I(),U}};import{h as ca}from"weifuwu/vdom";var sf={sm:"var(--wf-space-sm, 8px)",md:"var(--wf-space-md, 16px)",lg:"var(--wf-space-lg, 24px)"},af=(o,e)=>t=>{let{size:n="md",direction:r="horizontal",wrap:a,align:s,split:i,children:l}=t,c=typeof n=="number"?`${n}px`:sf[n]??"var(--wf-space-md, 16px)",f=[];if(Array.isArray(l)){if(f=l,i!==void 0){let g=[];l.forEach((u,d)=>{d>0&&g.push(ca("span",{class:"wf-space-split",key:`s${d}`},i)),g.push(u)}),f=g}}else l!==void 0&&(f=[l]);return ca("div",{class:`wf-space${r==="vertical"?" wf-space--vertical":""}`,style:{gap:c,flexWrap:a?"wrap":void 0,alignItems:s==="start"?"flex-start":s==="end"?"flex-end":s}},f)};import{h as ss}from"weifuwu/vdom";import{keyOf as lf}from"weifuwu/vdom";function da(o){return o<=0?"1":`${o/24*100}%`}var cf=(o,e)=>t=>{let{gutter:n,flex:r,gap:a,direction:s="row",align:i,children:l}=t,c=n?n/2:0,f=Array.isArray(l)?l.map(g=>g&&typeof g=="object"&&g.type===is?ss(is,{...g.props,key:lf(g),gutter:n},g.props?.children):g):l;return ss("div",{class:`wf-grid-comp${r?" wf-grid-comp--flex":""}${s==="column"?" wf-grid-comp--column":""}`,style:{margin:c?`0 -${c}px`:void 0,gap:a!==void 0?`${a}px`:void 0,alignItems:i==="start"?"flex-start":i==="end"?"flex-end":i}},f)},is=(o,e)=>t=>{let{span:n=24,gutter:r,children:a}=t,s=r?r/2:0;return ss("div",{class:"wf-col",style:{width:da(n),flex:n<=0?"1":"0 0 auto",padding:s?`0 ${s}px`:void 0}},a)};import{h as df}from"weifuwu/vdom";var pf=(o,e)=>t=>{let{maxHeight:n,height:r,orientation:a="vertical",always:s,children:i,style:l}=t,c=a==="horizontal";return df("div",{class:`wf-scrollbar${s?" wf-scrollbar--always":""}`,style:{...l,maxHeight:n!==void 0?typeof n=="number"?`${n}px`:n:void 0,height:r!==void 0?typeof r=="number"?`${r}px`:r:void 0,overflowY:c?void 0:"auto",overflowX:c?"auto":void 0}},i)};import{h as Mt}from"weifuwu/vdom";var ff=3,uf=(o,e)=>{let t=!1;return n=>{let{items:r,onClose:a}=n,s=r.length>=ff,i=c=>Mt("div",{class:`wf-alertgroup-item wf-alertgroup-item--${c.variant??"info"}`,key:c.id},[Mt("span",{class:"wf-alertgroup-message"},c.message),c.time&&Mt("span",{class:"wf-alertgroup-time"},c.time),a&&Mt("button",{class:"wf-alertgroup-close","aria-label":"\u5173\u95ED",onClick:()=>a(c.id)},Mt(H,{name:"close"}))]),l=s&&!t?r.slice(0,1):r;return Mt("div",{class:"wf-alertgroup",role:"group"},[s&&!t?Mt("button",{class:"wf-alertgroup-summary",onClick:()=>{t=!0,e.render()}},Mt("span",{},`+${r.length} \u6761\u901A\u77E5`)):null,t&&s?Mt("div",{class:"wf-alertgroup-list wf-alertgroup-list--open"},l.map(i)):Mt("div",{class:"wf-alertgroup-list"},l.map(i))])}};import{h as Ke}from"weifuwu/vdom";var mf=(o,e)=>{let t=!!o.defaultExpanded;return n=>{let{items:r,label:a="\u5F15\u7528\u6765\u6E90",maxVisible:s=3,onOpen:i}=n;if(!r?.length)return null;let l=()=>{t=!t,e.render()},c=r.slice(0,s),f=r.length-c.length,g=c.map((u,d)=>{let p=i?{role:"button",tabindex:0,onClick:()=>i(u),onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),i(u))}}:{};return Ke("div",{key:u.id,class:"wf-citation-item",...p},[Ke("span",{class:"wf-citation-idx"},String(d+1)),Ke("div",{class:"wf-citation-content"},[Ke("div",{class:"wf-citation-title"},[u.title,u.source?Ke("span",{class:"wf-citation-source"},u.source):null]),Ke("div",{class:"wf-citation-snippet"},u.snippet)]),u.url?Ke("a",{class:"wf-citation-link",href:u.url,target:"_blank",rel:"noopener"},Ke(H,{name:"external-link"})):i?Ke("span",{class:"wf-citation-link","aria-hidden":"true"},Ke(H,{name:"external-link"})):null])});return f>0&&g.push(Ke("div",{key:"overflow",class:"wf-citation-item wf-citation-more",role:"button",tabindex:0,"aria-label":`\u5C55\u5F00\u5168\u90E8 ${r.length} \u6761\u5F15\u7528`,onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),l())}},`+${f} \u6761\u66F4\u591A`)),Ke("div",{class:"wf-citation"},[Ke("button",{type:"button",class:"wf-citation-toggle","aria-expanded":t?"true":"false",onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),l())}},[Ke("span",{class:`wf-citation-chevron${t?" wf-citation-chevron--open":""}`},Ke(H,{name:"chevron-down"})),Ke("span",{class:"wf-citation-count"},`${a} \xB7 ${r.length} \u6761`)]),Ke("div",{class:`wf-citation-body${t?" wf-citation-body--open":""}`,hidden:!t},g)])}};import{h as We}from"weifuwu/vdom";var hf=24*3600*1e3;function pa(o,e=Date.now()){let t=new Date(e).setHours(0,0,0,0),n=t-hf;return o>=t?"today":o>=n?"yesterday":"earlier"}var gf={today:"\u4ECA\u5929",yesterday:"\u6628\u5929",earlier:"\u66F4\u65E9"},bf=(o,e)=>{let t="",n,r="",a;return s=>{let{sessions:i,activeId:l,onSelect:c,onNew:f,onRename:g,onDelete:u,searchable:d,newLabel:p="\u65B0\u5EFA\u4F1A\u8BDD"}=s,h=t?i.filter(k=>k.title.toLowerCase().includes(t.toLowerCase())):i,m=[];for(let k of h){let E=pa(k.updatedAt??0),T=m.find(P=>P.key===E);T?T.items.push(k):m.push({key:E,items:[k]})}let b=h,v=a?b.findIndex(k=>k.id===a):b.findIndex(k=>k.id===(l??"")),w=k=>{if(b.length===0)return;let E=v>=0?v:0,T=E;if(k.key==="ArrowDown")T=Math.min(E+1,b.length-1);else if(k.key==="ArrowUp")T=Math.max(E-1,0);else return;k.preventDefault(),a=b[T].id,e.render()},y=k=>{let E=k.id===l,T=k.id===a;return k.id===n?We("div",{key:k.id,class:"wf-session-item wf-session-item--rename","data-id":k.id},We("input",{class:"wf-session-rename-input",value:r,"aria-label":"\u91CD\u547D\u540D\u4F1A\u8BDD",onInput:I=>{r=I.target.value},onKeyDown:I=>{if(I.key==="Enter"){I.preventDefault();let A=r.trim();A&&g?.(k.id,A),n=void 0,e.render()}else I.key==="Escape"&&(I.preventDefault(),n=void 0,e.render())},onBlur:()=>{n===k.id&&(n=void 0,e.render())}})):We("div",{key:k.id,class:`wf-session-item${E?" wf-session-item--active":""}${T?" wf-session-item--focus":""}`,"data-id":k.id,role:"option","aria-selected":E?"true":"false",onClick:()=>c?.(k.id),onKeyDown:I=>{I.key==="Enter"&&(I.preventDefault(),c?.(k.id))}},[We("span",{class:"wf-session-title"},k.title),g?We("button",{type:"button",class:"wf-session-rename","aria-label":`\u91CD\u547D\u540D ${k.title}`,onClick:I=>{I.stopPropagation(),n=k.id,r=k.title,e.render()}},We(H,{name:"edit"})):null,u?We("button",{type:"button",class:"wf-session-del","aria-label":`\u5220\u9664 ${k.title}`,onClick:I=>{I.stopPropagation(),u(k.id)}},We(H,{name:"trash"})):null])},x=h.length===0?[We("div",{class:"wf-session-empty"},"\u6682\u65E0\u4F1A\u8BDD")]:m.map(k=>[We("div",{class:"wf-session-group-title",key:`g-${k.key}`},gf[k.key]),...k.items.map(y)]);return We("div",{class:"wf-session"},[d||f?We("div",{class:"wf-session-head"},[d?We("input",{class:"wf-session-search",placeholder:"\u641C\u7D22\u4F1A\u8BDD\u2026","aria-label":"\u641C\u7D22\u4F1A\u8BDD",value:t,onInput:k=>{t=k.target.value,e.render()}}):null,f?We("button",{type:"button",class:"wf-session-new wf-btn wf-btn--primary wf-btn--sm",onClick:()=>f()},We(H,{name:"plus"})):null]):null,We("div",{class:"wf-session-list",role:"listbox","aria-label":"\u4F1A\u8BDD\u5217\u8868",tabindex:c?0:void 0,onKeyDown:w},x)])}};import{h as yf}from"weifuwu/vdom";import{createClientBrowser as wf}from"weifuwu/vdom";var vf=0,xf=(o,e)=>t=>{let{children:n,className:r="",color:a}=t,s=i=>{let l=i.currentTarget,c=l.getBoundingClientRect(),f=Math.max(c.width,c.height)*2,g=i.clientX-c.left-f/2,u=i.clientY-c.top-f/2,d=(e.browser??wf()).createElement("span");d.className="wf-wave-ripple",d.dataset.wid=`wave-${++vf}`,d.style.cssText=`left:${g}px;top:${u}px;width:${f}px;height:${f}px;${a?`background:${a};`:""}`,l.appendChild(d);let p=()=>d.remove();d.addEventListener("animationend",p,{once:!0}),e.browser?.timeout?.(p,600)};return yf("span",{class:`wf-wave${r?` ${r}`:""}`,onClick:i=>{s(i)}},n)};import{h as fa}from"weifuwu/vdom";var kf=(o,e)=>{let t=null,n=null,{dragProps:r}=e.ui.useDragDrop({onDragEnd:()=>{if(t!=null&&n!=null&&t!==n){let s=[...a.items],[i]=s.splice(t,1);s.splice(n,0,i),a.onReorder?.(s)}t=null,n=null,e.render()}}),a={items:[],onReorder:void 0};return s=>{a.items=s.items,a.onReorder=s.onReorder;let{items:i,keyField:l,renderItem:c,draggingClass:f="wf-sortable-dragging",className:g=""}=s;return s.onReorder||console.warn("[weifuwu] SortableList: \u4F20\u5165\u4E86\u53D7\u63A7 items \u4F46\u7F3A\u5C11 onReorder \u56DE\u8C03\u2014\u2014\u62D6\u62FD\u5C06\u9759\u9ED8\u5931\u6548"),fa("div",{class:`wf-sortable wf-stack wf-gap-xs${g?` ${g}`:""}`},i.map((u,d)=>{let p={...r,"data-wf-key":String(u[l]??d),onDragStart:m=>{t=d,m.dataTransfer?.setData("text/plain",String(u[l]??d)),m.dataTransfer.effectAllowed="move",e.render()},onDragOver:m=>{m.preventDefault(),n!==d&&(n=d,e.render())},onDragLeave:()=>{}},h=`wf-sortable-item${t===d?` ${f}`:""}${n===d&&t!==d?" wf-sortable-over":""}`;return fa("div",{key:String(u[l]??d),class:h,...p},c(u,d,p))}))}};import{h as Cf}from"weifuwu/vdom";function ua({data:o,columns:e,format:t}){let n=e?e.map(i=>i.key):o.length?Object.keys(o[0]):[],r=e?e.map(i=>i.label??i.key):n,a=i=>/[",\n]/.test(i)?`"${i.replace(/"/g,'""')}"`:i;return"\uFEFF"+[r,...o.map(i=>n.map(l=>{let c=i[l];return c==null?"":a(String(t?t(c,l):c))}))].map(i=>i.join(",")).join(`
56
- `)}var Mf=(o,e)=>t=>{let{data:n,filename:r="export.csv",columns:a,format:s,children:i,variant:l,size:c,disabled:f,className:g=""}=t,u=()=>{let d=ua({data:n,columns:a,format:s});(e.browser??(typeof window<"u"?window.__wfBrowser:null))?.downloadFile(r,d,"text/csv;charset=utf-8")};return Cf("button",{type:"button",class:`wf-btn wf-btn--${l??"secondary"} wf-btn--${c??"md"}${g?` ${g}`:""}`,disabled:f,onClick:()=>u()},i??"\u5BFC\u51FA CSV")};import{h as jt}from"weifuwu/vdom";var Pf=(o,e)=>{let t="split";return n=>{let{value:r,onChange:a,placeholder:s="\u8F93\u5165 Markdown\u2026",rows:i=12,disabled:l,className:c=""}=n;t=n.mode??t,a===void 0&&!l&&console.warn("[weifuwu] MarkdownEditor: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u7F16\u8F91\u5C06\u9759\u9ED8\u5931\u6548");let g=jt("textarea",{class:"wf-md-editor-textarea wf-input",value:r,placeholder:s,rows:i,disabled:l,"data-wf-role":"md-editor",onInput:d=>{a?.(d.target.value)},onKeyDown:d=>{d.key==="Tab"&&(d.preventDefault(),a?.(r+" "))},style:{fontFamily:"var(--wf-font-mono)",fontSize:13,lineHeight:1.7,resize:"vertical",minHeight:80}}),u=jt("div",{class:"wf-md-editor-preview wf-surface wf-border wf-radius-sm",style:{padding:"10px 14px",minHeight:80,overflow:"auto"}},r?jt(Jn,{content:r}):jt("span",{class:"wf-text-tertiary"},"\u9884\u89C8\u533A\uFF08\u8F93\u5165\u540E\u5B9E\u65F6\u6E32\u67D3\uFF09"));return jt("div",{class:`wf-md-editor wf-stack wf-gap-xs${c?` ${c}`:""}`},[jt("div",{class:"wf-row wf-gap-xs"},[["write","\u7F16\u8F91"],["preview","\u9884\u89C8"],["split","\u5206\u5C4F"]].map(([d,p])=>jt("button",{key:d,type:"button",class:`wf-btn wf-btn--sm${t===d?" wf-btn--primary":""}`,onClick:()=>{t=d,e.render()}},p))),t==="preview"?u:t==="write"?g:jt("div",{class:"wf-grid",style:"--wf-cols:1fr 1fr;--wf-gap:8px"},[g,u])])}};import{h as zo}from"weifuwu/vdom";var Sf=(o,e)=>t=>{let{value:n,onChange:r,lang:a="text",rows:s=10,readOnly:i,placeholder:l,className:c=""}=t;r===void 0&&!i&&console.warn("[weifuwu] CodeEditor: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u7F16\u8F91\u5C06\u9759\u9ED8\u5931\u6548");let f=n.split(`
57
- `).length,g=zo("div",{class:"wf-codeeditor-gutter",style:{fontFamily:"var(--wf-font-mono)",fontSize:12,lineHeight:1.7,padding:"8px 0",textAlign:"right",color:"var(--wf-color-text-tertiary)",userSelect:"none",overflow:"hidden"}},Array.from({length:f},(d,p)=>zo("div",{key:p,style:{paddingRight:8}},String(p+1)))),u=zo("textarea",{class:"wf-codeeditor-area",value:n,rows:s,placeholder:l,readOnly:i,"data-wf-role":"code-editor","data-lang":a,spellcheck:!1,style:{fontFamily:"var(--wf-font-mono)",fontSize:12,lineHeight:1.7,padding:"8px 10px",border:"none",outline:"none",resize:"vertical",flex:1,minWidth:0,background:"transparent"},onInput:d=>{r?.(d.target.value)},onKeyDown:d=>{if(d.key==="Tab"){d.preventDefault();let h=d.target.selectionStart??n.length;r?.(n.slice(0,h)+" "+n.slice(h))}}});return zo("div",{class:`wf-codeeditor wf-row wf-gap-none${c?` ${c}`:""}`,style:{border:"1px solid var(--wf-color-border)",borderRadius:"var(--wf-radius-sm)",overflow:"hidden",background:"var(--wf-color-bg)"}},[g,u])};import{h as Tn}from"weifuwu/vdom";import{createClientBrowser as ma}from"weifuwu/vdom";var Tf=(o,e)=>{let t=null,n=null,r={x:0,y:0,w:100,h:100},a=320,s=240,i=null,l={x:0,y:0},c=()=>{let p=(e.browser??ma()).createElement("img");p.onload=()=>{n=p,a=Math.min(p.naturalWidth,480),s=a/f.aspect,r={x:a*.1,y:s*.1,w:a*.8,h:s*.8},g(),e.render()},p.onerror=()=>f.onError?.(new Error("\u56FE\u7247\u52A0\u8F7D\u5931\u8D25")),p.src=f.src},f={aspect:1,src:"",onError:void 0},g=()=>{if(!t||!n)return;let d=t,p=d.getContext("2d");p&&(d.width=a,d.height=s,p.drawImage(n,0,0,a,s),p.fillStyle="rgba(0,0,0,0.45)",p.fillRect(0,0,a,s),p.clearRect(r.x,r.y,r.w,r.h),p.strokeStyle="#fff",p.lineWidth=2,p.strokeRect(r.x,r.y,r.w,r.h),p.fillStyle="#fff",p.fillRect(r.x+r.w-6,r.y+r.h-6,12,12))},u=()=>{if(!t||!n||!t.getContext("2d"))return;let p=(e.browser??ma()).createElement("canvas");p.width=r.w*2,p.height=r.h*2;let h=p.getContext("2d");h&&(h.drawImage(n,r.x/a*n.naturalWidth,r.y/s*n.naturalHeight,r.w/a*n.naturalWidth,r.h/s*n.naturalHeight,0,0,p.width,p.height),f.onCrop?.(p.toDataURL("image/png")))};return d=>{f.aspect=d.aspect??1,f.src=d.src,f.onError=d.onError;let{onCrop:p,className:h=""}=d;f.onCrop=p;let m=(E,T)=>{r.x=Math.max(0,Math.min(a-r.w,r.x+E)),r.y=Math.max(0,Math.min(s-r.h,r.y+T)),g()},b=(E,T)=>{r.w=Math.max(30,Math.min(a-r.x,r.w+E)),r.h=r.w/f.aspect,g()},v=E=>{let T=t.getBoundingClientRect();return{x:(E.clientX-T.left)*(t.width/T.width),y:(E.clientY-T.top)*(t.height/T.height)}},w=E=>{if(!t)return;let T=v(E),P=T.x>=r.x+r.w-8&&T.y>=r.y+r.h-8,I=T.x>=r.x&&T.x<=r.x+r.w&&T.y>=r.y&&T.y<=r.y+r.h;!P&&!I||(i=P?"se":"move",l=T,t.setPointerCapture(E.pointerId),t.style.cursor=P?"nwse-resize":"move")},y=E=>{if(!i||!t)return;let T=v(E);i==="move"?m(T.x-l.x,T.y-l.y):b(T.x-l.x,T.y-l.y),l=T},x=()=>{i=null,t&&(t.style.cursor="crosshair")},k=E=>{E&&!t&&(t=E.querySelector("canvas"),c())};return Tn("div",{class:`wf-imagecropper wf-stack wf-gap-sm${h?` ${h}`:""}`},[Tn("div",{ref:k,style:{position:"relative",display:"inline-block",cursor:"crosshair"}},[Tn("canvas",{width:320,height:240,style:{maxWidth:"100%",borderRadius:"var(--wf-radius-sm)",display:"block"},onPointerDown:w,onPointerMove:y,onPointerUp:x})]),Tn("div",{class:"wf-row wf-gap-xs"},Tn("button",{type:"button",class:"wf-btn wf-btn--sm wf-btn--primary",disabled:!n,onClick:()=>u()},"\u88C1\u526A"),Tn("button",{type:"button",class:"wf-btn wf-btn--sm",disabled:!n,onClick:()=>{r={x:a*.1,y:s*.1,w:a*.8,h:s*.8},g(),e.render()}},"\u91CD\u7F6E"))])}};import{h as ha}from"weifuwu/vdom";var Ef=(o,e)=>{let t=null,n={src:""},r=a=>{t=a,a&&(a.onplay=()=>n.onPlay?.(),a.onpause=()=>n.onPause?.(),a.onended=()=>n.onEnded?.(),a.onerror=()=>n.onError?.(new Error("\u89C6\u9891\u52A0\u8F7D\u5931\u8D25")),n.muted!==void 0&&(a.muted=n.muted),n.loop!==void 0&&(a.loop=n.loop),n.autoPlay!==void 0&&(a.autoplay=n.autoPlay))};return a=>{n=a;let{src:s,poster:i,aspect:l=16/9,controls:c=!0,autoPlay:f,loop:g,muted:u,className:d=""}=a;return e.afterRender?.(()=>{t&&n.muted!==void 0&&(t.muted=n.muted),t&&n.loop!==void 0&&(t.loop=n.loop),t&&n.autoPlay!==void 0&&(t.autoplay=n.autoPlay)}),ha("div",{class:`wf-videoplayer wf-surface wf-border wf-radius-md wf-overflow-hidden${d?` ${d}`:""}`,style:{aspectRatio:String(l),background:"#000"}},ha("video",{src:s,poster:i,controls:c,autoPlay:f,loop:g,muted:u,playsinline:!0,preload:"metadata",ref:r,style:{width:"100%",height:"100%",display:"block"}}))}};import{h as tt}from"weifuwu/vdom";var ga={alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",theta:"\u03B8",lambda:"\u03BB",mu:"\u03BC",pi:"\u03C0",sigma:"\u03C3",phi:"\u03C6",omega:"\u03C9",tau:"\u03C4",eta:"\u03B7",rho:"\u03C1",Delta:"\u0394",Sigma:"\u03A3",Pi:"\u03A0",Omega:"\u03A9"};function tn(o){let e=[],t=0,n=()=>{if(o[t]==="{"){let a=1,s="";for(t++;t<o.length&&a>0;){if(o[t]==="{"&&a++,o[t]==="}"&&(a--,a===0)){t++;break}s+=o[t],t++}return s}let r=o[t]??"";return t++,r};for(;t<o.length;){let r=o[t];if(r==="^"){t++,e.push({type:"sup",value:n()});continue}if(r==="_"){t++,e.push({type:"sub",value:n()});continue}if(r==="\\"){let a=t;t++;let s="";for(;t<o.length&&/[a-zA-Z]/.test(o[t]);)s+=o[t],t++;if(s==="frac"){let i=n(),l=n();e.push({type:"frac",value:"",num:i,den:l});continue}if(s==="sqrt"){e.push({type:"sqrt",value:n()});continue}if(s==="sum"){t++;let i="";o[t]==="_"&&(t++,i=n()),e.push({type:"sum",value:"",index:i});continue}if(ga[s]){e.push({type:"greek",value:ga[s]});continue}e.push({type:"text",value:o.slice(a,t)});continue}if(r==="{"||r==="}"){t++;continue}e.push({type:"text",value:r}),t++}return e}var If=o=>{switch(o.type){case"sup":return tt("sup",{class:"wf-math-sup"},nn(tn(o.value)));case"sub":return tt("sub",{class:"wf-math-sub"},nn(tn(o.value)));case"greek":return o.value;case"frac":return tt("span",{class:"wf-math-frac"},[tt("span",{class:"wf-math-num"},nn(tn(o.num??""))),tt("span",{class:"wf-math-den"},nn(tn(o.den??"")))]);case"sqrt":return tt("span",{class:"wf-math-sqrt"},[tt("span",{class:"wf-math-sqrt-radical"},"\u221A"),tt("span",{class:"wf-math-sqrt-body",style:{borderTop:"1px solid currentColor"}},nn(tn(o.value)))]);case"sum":return tt("span",{class:"wf-math-sum"},[tt("span",{class:"wf-math-sum-symbol"},"\u03A3"),o.index?tt("sub",{class:"wf-math-sub"},nn(tn(o.index))):null]);default:return o.value}};function nn(o){return o.map((e,t)=>tt("span",{key:t,class:"wf-math-token"},If(e)))}var $f=o=>e=>{let{tex:t,className:n=""}=e;return tt("span",{class:`wf-math${n?` ${n}`:""}`,style:{fontFamily:"var(--wf-font-mono)",whiteSpace:"nowrap"}},nn(tn(t)))};var sx=Object.assign(Di,{Sheet:Po,Slide:So});export{kl as Accordion,ol as ActionSheet,qd as Affix,Ac as AiChat,Yo as Alert,uf as AlertGroup,$p as Anchor,Al as AppShell,Mr as ApprovalCard,Ud as AspectRatio,Lc as AuthPage,Qp as AutoComplete,cn as Avatar,Pd as AvatarGroup,Wd as BackTop,cl as Badge,Ml as Breadcrumb,Ye as Button,Cp as Calendar,Qo as Card,vp as Carousel,hp as Cascader,ql as Chart,Sr as ChatInput,qo as Checkbox,_d as CheckboxGroup,mf as CitationCard,Er as CodeBlock,Sf as CodeEditor,is as Col,pp as Collapse,Gd as ColorPicker,bp as Command,ms as Confirm,lp as ContextMenu,Kd as CopyButton,Fl as DatePicker,Md as Descriptions,_p as DiffView,Pl as Divider,Hl as Drawer,sl as Dropdown,qn as Editor,Qa as EmptyState,Mf as ExportCSV,dn as Field,sx as FilePreview,El as FileTree,nr as FileUpload,tf as FloatButton,nf as FloatButtonGroup,gl as Form,cf as Grid,Id as Highlight,Xd as HoverCard,H as Icon,Tf as ImageCropper,zl as Img,_l as InView,Sp as InfiniteScroll,co as Input,ko as InputNumber,vr as JSONViewer,Cr as JsonSchemaForm,jp as Kanban,Hd as Label,qp as Layout,Yp as LayoutContent,Jp as LayoutFooter,Xp as LayoutHeader,rs as LayoutSider,ef as Link,$d as List,Za as Loading,Ap as LogViewer,Jn as Markdown,Pf as MarkdownEditor,$f as Math,cp as Mentions,or as Menu,wp as Menubar,Sd as MessageBubble,Xo as Modal,rf as NavMenu,Ui as Notification,Cl as PageHeader,il as Pagination,Od as Paragraph,Td as PasswordInput,Vd as PinInput,Fp as Pipeline,Zp as Popconfirm,_n as Popover,vl as ProgressBar,rl as PromptTemplate,zp as QRCode,Ua as RadioGroup,Ld as Rate,Pr as ReasoningBlock,Nl as RelationGraph,xp as Resizable,Dd as Result,pf as Scrollbar,yl as SearchInput,wl as SegmentedControl,fo as Select,bf as SessionList,Po as SheetGrid,Ul as Skeleton,So as SlideCanvas,bl as Slider,kf as SortableList,af as Space,Vp as Sparkline,fl as StatCard,ul as Steps,uo as Switch,nl as TabBar,_a as Table,tl as Tabs,pl as Tag,Ed as TagsInput,Nd as Text,Oa as Textarea,Mc as ThemeSwitch,Cd as Timeline,Rd as Title,Xa as Toast,Ri as Toggle,zd as ToggleGroup,xr as ToolCallCard,Ol as Tooltip,Kp as Tour,gp as Transfer,Yr as Tree,Gp as TreeSelect,Ef as VideoPlayer,Xr as VirtualList,Ep as VirtualTable,Pp as Watermark,xf as Wave,wr as applyTheme,ia as computeLayers,Ga as confirm,ns as detectCycle,aa as filterOptions,Uo as findLabel,Wo as flattenOptions,es as generateQr,Cc as getTheme,da as gridColumns,pa as groupKey,os as layoutGraph,Dr as markdownToHtml,Bi as notification,ap as notificationMiddleware,qi as parseAnsi,_e as parseInline,Yn as parseMarkdown,Qn as serializeMarkdown,ua as toCsv};
55
+ `),r=t.length,a=n.length;if(r===0)return n.map(f=>({type:"add",line:f}));if(a===0)return t.map(f=>({type:"remove",line:f}));let s=Array.from({length:r+1},()=>new Array(a+1).fill(0));for(let f=r-1;f>=0;f--)for(let g=a-1;g>=0;g--)t[f]===n[g]?s[f][g]=s[f+1][g+1]+1:s[f][g]=Math.max(s[f+1][g],s[f][g+1]);let i=[],l=0,c=0;for(;l<r&&c<a;)t[l]===n[c]?(i.push({type:"same",line:t[l]}),l++,c++):s[l+1][c]>=s[l][c+1]?(i.push({type:"remove",line:t[l]}),l++):(i.push({type:"add",line:n[c]}),c++);for(;l<r;)i.push({type:"remove",line:t[l]}),l++;for(;c<a;)i.push({type:"add",line:n[c]}),c++;return i}function ta(o){let e=[],t=[],n=()=>{t.length!==0&&(t[0].type==="same"?e.push({kind:"same",sameCount:t.length,lines:t}):e.push({kind:"change",lines:t}),t=[])};for(let r of o){let a=r.type==="same"?"same":"change",s=t.length===0?null:t[0].type==="same"?"same":"change";s!==null&&s!==a&&n(),t.push(r)}return n(),e}var Fp=(o,e)=>{let t=new Set;return n=>{let{oldCode:r="",newCode:a="",oldTitle:s="\u65E7\u7248",newTitle:i="\u65B0\u7248",foldThreshold:l=5,maxLines:c=2e3,className:f=""}=n,g=ea(r,a),u=ta(g),p=(b,v)=>b.kind==="same"&&b.sameCount>l,d=b=>t.has(b),h=[],m=0;for(let b=0;b<u.length;b++){let v=u[b];if(p(v,b)){let w=d(b);if(h.push(ht("div",{class:"wf-diffview-fold",role:"button",tabindex:0,onClick:()=>{t.has(b)?t.delete(b):t.add(b),e.render()},onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),t.has(b)?t.delete(b):t.add(b),e.render())}},w?"\u6536\u8D77\u672A\u53D8\u884C":`\u2195 ${v.sameCount} \u884C\u672A\u53D8`)),w)for(let y of v.lines){if(m>=c)break;m++,h.push(na(y,m))}}else for(let w of v.lines){if(m>=c)break;m++,h.push(na(w,m))}}return m>=c&&h.push(ht("div",{class:"wf-diffview-overflow"},`\u2026 diff \u8FC7\u5927\uFF0C\u4EC5\u663E\u793A\u524D ${c} \u884C`)),ht("div",{class:`wf-diffview${f?` ${f}`:""}`},[ht("div",{class:"wf-diffview-header"},[ht("span",{class:"wf-diffview-title wf-diffview-title--old"},s),ht("span",{class:"wf-diffview-arrow"},"\u2192"),ht("span",{class:"wf-diffview-title wf-diffview-title--new"},i)]),ht("div",{class:"wf-diffview-body"},h)])}};function na(o,e){return ht("div",{class:`wf-diffview-row wf-diffview-row--${o.type}`},[ht("span",{class:"wf-diffview-sign"},o.type==="add"?"+":o.type==="remove"?"-":" "),ht("span",{class:"wf-diffview-line"},o.line===""?" ":o.line)])}import{h as oo}from"weifuwu/vdom";function oa(o,e,t,n=2){let r=o.length;if(r===0)return[];let a=Math.min(...o),i=Math.max(...o)-a,l=e-n*2,c=t-n*2;return r===1?[{x:e/2,y:t/2}]:o.map((f,g)=>({x:n+(r===1?0:g/(r-1)*l),y:i===0?t/2:n+(1-(f-a)/i)*c}))}function ra(o){return o.map(e=>`${Math.round(e.x*10)/10},${Math.round(e.y*10)/10}`).join(" ")}function sa(o){if(o.length===0)return"";if(o.length===1)return`M ${o[0].x},${o[0].y}`;let e=`M ${o[0].x},${o[0].y}`;for(let t=0;t<o.length-1;t++){let n=o[t-1]??o[t],r=o[t],a=o[t+1],s=o[t+2]??a,i=r.x+(a.x-n.x)/6,l=r.y+(a.y-n.y)/6,c=a.x-(s.x-r.x)/6,f=a.y-(s.y-r.y)/6;e+=` C ${i},${l} ${c},${f} ${a.x},${a.y}`}return e}var Gp=(o,e)=>t=>{let{data:n,width:r=120,height:a=32,stroke:s="currentColor",fill:i=!1,smooth:l=!1,label:c,className:f=""}=t,g=oa(n,r,a,2),u=[];if(g.length>0)if(l){let p=sa(g);i&&u.push(oo("path",{d:`${p} L ${g[g.length-1].x},${a} L ${g[0].x},${a} Z`,fill:s,opacity:.12})),u.push(oo("path",{d:p,fill:"none",stroke:s,"stroke-width":1.5,"stroke-linecap":"round"}))}else{let p=ra(g);i&&u.push(oo("polygon",{points:`${p} ${r-2},${a} 2,${a}`,fill:s,opacity:.12})),u.push(oo("polyline",{points:p,fill:"none",stroke:s,"stroke-width":1.5,"stroke-linecap":"round","stroke-linejoin":"round"}))}return oo("svg",{class:`wf-sparkline${f?` ${f}`:""}`,viewBox:`0 0 ${r} ${a}`,width:r,height:a,role:c?"img":void 0,"aria-label":c,"aria-hidden":c?void 0:!0},u)};import{h as gt}from"weifuwu/vdom";var Wp=(o,e)=>{let t=0,n=null,r={top:0,left:0,width:0,height:0},a="bottom",s=!1,i={steps:[]},l=null,c=()=>s;e.ui.useGlobalKey?.(d=>{d.key==="Escape"&&c()&&g()});let f=d=>{i.onStepChange?.(d),i.current===void 0&&(t=d,p())},g=()=>{i.onChange?.(!1),i.open===void 0&&(s=!1,e.render())},u=()=>{let d=i.open!==void 0;i.onFinish?.(),(!d||!i.onFinish)&&(i.onChange?.(!1),s=!1,e.render())},p=()=>{n=i.steps[t]?.target?e.browser?.query(i.steps[t].target):null,l?.refresh(),e.render()};return d=>{i=d,s=!!d.open;let h=d.open!==void 0,m=d.current??t;if(a=d.steps[m]?.placement??"bottom",s&&d.steps[m]){let $=e.browser?.query(d.steps[m].target);if($!==n){if(n=$,$)try{$.scrollIntoView({block:"center"})}catch{}l?.refresh()}}if(!s&&!h||!s)return null;let b=d.steps[m];if(!b)return null;if(n){let $=n.getBoundingClientRect();($.width||$.height)&&(r={top:$.top,left:$.left,width:$.width,height:$.height})}let v=m>=d.steps.length-1,w=e.browser?.window,x=a==="top"&&!!w&&r.top<120?"bottom":a,k=ia(r,x),E=k.left,P=k.top,S=gt("div",{class:`wf-tour-bubble wf-tour-bubble--${x}`,style:{left:`${E}px`,top:`${P}px`}},[gt("div",{class:"wf-tour-bubble-header"},[gt("span",{class:"wf-tour-title"},b.title),gt("span",{class:"wf-tour-step"},`${m+1} / ${d.steps.length}`)]),gt("div",{class:"wf-tour-content"},b.content),gt("div",{class:"wf-tour-actions"},[gt("button",{class:"wf-tour-btn wf-tour-btn--ghost",onClick:()=>u()},"\u8DF3\u8FC7"),m>0&&gt("button",{class:"wf-tour-btn wf-tour-btn--ghost",onClick:()=>f(m-1)},"\u4E0A\u4E00\u6B65"),gt("button",{class:"wf-tour-btn wf-tour-btn--primary",onClick:()=>v?u():f(m+1)},v?"\u5B8C\u6210":"\u4E0B\u4E00\u6B65")].filter(Boolean))]),I=gt("div",{class:"wf-tour-highlight",style:{left:`${r.left}px`,top:`${r.top}px`,width:`${r.width}px`,height:`${r.height}px`}}),A=gt("div",{class:"wf-tour-layer"},[I,S]);return s&&!l?l=e.ui.openPopup({key:"tour",mask:!0,maskClosable:!1,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>A,position:()=>{let $=n?.getBoundingClientRect();$&&(r={top:$.top,left:$.left,width:$.width,height:$.height});let N=ia(r,a);return{x:N.left,y:N.top,width:N.width}},onClose:()=>{l=null,s&&g()}}):!s&&l?(l.close(),l=null):l&&l.update(A),null}};function ia(o,e){switch(e){case"top":return{top:o.top-10,left:o.left,width:o.width};case"left":return{top:o.top,left:o.left-10,width:o.width};case"right":return{top:o.top,left:o.left+o.width+10,width:o.width};default:return{top:o.top+o.height+10,left:o.left,width:o.width}}}import{h as Rt}from"weifuwu/vdom";var qp=(o,e)=>{let t=null,{dropProps:n,dragProps:r}=e.ui.useDragDrop({onDragOver:()=>{},onDragEnd:()=>{t=null,e.render()}});return a=>{let{columns:s,onMove:i,className:l=""}=a;i||console.warn("[weifuwu] Kanban: \u4F20\u5165\u4E86\u53D7\u63A7 columns \u4F46\u7F3A\u5C11 onMove \u56DE\u8C03\u2014\u2014\u62D6\u62FD\u5C06\u9759\u9ED8\u5931\u6548");let c=(g,u)=>{!t||!i||(i({columnKey:t.fromColumn,index:t.fromIndex},{columnKey:g,index:u}),t=null,e.render())},f=s.map(g=>Rt("div",{class:"wf-kanban-col",key:g.key,"data-col":g.key,...n,onDrop:p=>{p.preventDefault(),c(g.key,g.items.length)}},[Rt("div",{class:"wf-kanban-col-header"},[Rt("span",{class:"wf-kanban-col-title"},g.title),Rt("span",{class:"wf-kanban-col-count"},String(g.items.length))]),Rt("div",{class:"wf-kanban-col-body"},g.items.map((p,d)=>Rt("div",{class:"wf-kanban-card",key:p.id,"data-item":p.id,draggable:r.draggable,onDragEnd:r.onDragEnd,onDragStart:h=>{h.dataTransfer?.setData("text/plain",p.id),h.dataTransfer&&(h.dataTransfer.effectAllowed="move"),t={itemId:p.id,fromColumn:g.key,fromIndex:d}},onDragOver:h=>h.preventDefault(),onDrop:h=>{h.preventDefault(),h.stopPropagation(),c(g.key,d)}},[p.tag&&Rt("span",{class:"wf-kanban-tag"},p.tag),Rt("span",{class:"wf-kanban-card-title"},p.title)].filter(Boolean))))]));return Rt("div",{class:`wf-kanban${l?` ${l}`:""}`},f)}};import{h as Sn}from"weifuwu/vdom";function aa(o,e){let t=new Map,n=new Map;for(let i of o)t.set(i.id,[]),n.set(i.id,0);for(let i of e)t.get(i.from)?.push(i.to),n.set(i.to,(n.get(i.to)??0)+1);let r=new Map,a=[];for(let i of o)(n.get(i.id)??0)===0&&(a.push(i.id),r.set(i.id,0));let s=0;for(;a.length>0;){let i=a.shift();s++;let l=r.get(i)??0;for(let c of t.get(i)??[])r.set(c,Math.max(r.get(c)??0,l+1)),n.set(c,(n.get(c)??1)-1),(n.get(c)??0)===0&&a.push(c)}for(let i of o)r.has(i.id)||r.set(i.id,s);return r}function ns(o,e){let t=new Map,n=new Map;for(let s of o)t.set(s.id,[]),n.set(s.id,0);for(let s of e)t.get(s.from)?.push(s.to),n.set(s.to,(n.get(s.to)??0)+1);let r=o.filter(s=>(n.get(s.id)??0)===0).map(s=>s.id),a=0;for(;r.length>0;){let s=r.shift();a++;for(let i of t.get(s)??[])n.set(i,(n.get(i)??1)-1),(n.get(i)??0)===0&&r.push(i)}return a<o.length}function os(o,e,t){let{orientation:n,width:r,height:a,nodeW:s=88,nodeH:i=40}=t,l=aa(o,e),c=new Map;for(let d of o){let h=l.get(d.id)??0;c.has(h)||c.set(h,[]),c.get(h).push(d.id)}let f=c.size,g=new Map;for(let[d,h]of c){let m=h.length;h.forEach((b,v)=>{if(n==="vertical"){let w=d===0?i/2:d===f-1?a-i/2:d/(f-1)*a,y=m===1?r/2:v/(m-1)*(r-s)+s/2;g.set(b,{x:y,y:w})}else{let w=d===0?s/2:d===f-1?r-s/2:d/(f-1)*r,y=m===1?a/2:v/(m-1)*(a-i)+i/2;g.set(b,{x:w,y})}})}let u=o.map(d=>{let h=g.get(d.id)??{x:r/2,y:a/2};return{id:d.id,x:h.x,y:h.y}}),p=e.map(d=>{let h=g.get(d.from)??{x:0,y:0},m=g.get(d.to)??{x:0,y:0},b=n==="vertical"?`C ${h.x},${(h.y+m.y)/2} ${m.x},${(h.y+m.y)/2} ${m.x},${m.y}`:`C ${(h.x+m.x)/2},${h.y} ${(h.x+m.x)/2},${m.y} ${m.x},${m.y}`;return{from:d.from,to:d.to,d:`M ${h.x},${h.y} ${b}`}});return{nodes:u,edges:p}}var Xp=(o,e)=>t=>{let{nodes:n,edges:r,orientation:a="vertical",width:s=360,height:i=220,className:l=""}=t,c=ns(n,r),{nodes:f,edges:g}=os(n,r,{orientation:a,width:s,height:i}),u=f.map(d=>{let h=n.find(b=>b.id===d.id),m=h?.status??"default";return Sn("div",{class:`wf-pipeline-node wf-pipeline-node--${m}`,key:d.id,style:{left:`${Math.round(d.x)}px`,top:`${Math.round(d.y)}px`},"data-id":d.id},h?.label??d.id)}),p=g.map((d,h)=>Sn("path",{class:"wf-pipeline-edge",d:d.d,key:`e${h}`}));return Sn("div",{class:`wf-pipeline${l?` ${l}`:""}`},[Sn("svg",{class:"wf-pipeline-svg",width:s,height:i,viewBox:`0 0 ${s} ${i}`,"aria-hidden":!0},p),Sn("div",{class:"wf-pipeline-nodes"},u),c&&Sn("div",{class:"wf-pipeline-warn"},"\u68C0\u6D4B\u5230\u73AF\u4F9D\u8D56\u2014\u2014\u5E03\u5C40\u53EF\u80FD\u4E0D\u51C6\u786E")].filter(Boolean))};import{h as Tn}from"weifuwu/vdom";function Uo(o,e){for(let t of o){if(t.key===e)return t.label;if(t.children){let n=Uo(t.children,e);if(n)return n}}}var Yp=(o,e)=>{let t=!1,n=[],r=null,a=null,s=f=>{t&&!a?a=e.ui.openPopup({key:"treeselect",anchor:()=>r,placement:"bottom",center:!1,gap:4,content:()=>f,onClose:()=>{a=null,t&&(t=!1,e.render())}}):!t&&a?(a.close(),a=null):a&&a.update(f)},i=()=>{t=!t,e.render()},l=(f,g)=>{if(f==null)return"";if(Array.isArray(f)){if(f.length===0)return"";let u=f.map(p=>Uo(g,p)).filter(Boolean);return u.length===0?"":u.length>2?`${u.slice(0,2).join("\u3001")} \u7B49 ${u.length} \u9879`:u.join("\u3001")}return Uo(g,f)??""},c=f=>{r=f,f&&a?.open&&a.refresh()};return f=>{let{options:g,value:u,onChange:p,multiple:d=!1,placeholder:h="\u8BF7\u9009\u62E9",disabled:m,error:b,className:v=""}=f;u!==void 0&&!p&&console.warn("[weifuwu] TreeSelect: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u9009\u62E9\u5C06\u9759\u9ED8\u5931\u6548");let w=l(u,g),y=d&&Array.isArray(u),x=Tn(Yr,{data:g,virtual:f.virtual,height:f.height??320,expandOnClick:!0,selectedKeys:y?void 0:u?[u]:[],onSelect:E=>{E.length!==0&&(p?.(E[0]),t=!1,e.render())},checkable:d||void 0,checkedKeys:y?u:void 0,onCheck:d?E=>{p?.(E)}:void 0,expandedKeys:n,onExpand:E=>{n=E,e.render()}}),k=Tn("div",{class:"wf-treeselect-dropdown"},x);return s(k),Tn("div",{class:`wf-treeselect${v?` ${v}`:""}`},[Tn("div",{class:["wf-treeselect-trigger",t?" wf-treeselect-trigger--open":"",m?" wf-treeselect-trigger--dis":"",b?" wf-treeselect-trigger--err":""].filter(Boolean).join(" "),role:"combobox",tabindex:m?-1:0,"aria-haspopup":"listbox","aria-expanded":String(t),"aria-disabled":m?"true":void 0,ref:c,onClick:m?void 0:i,onKeyDown:E=>{m||(E.key==="Enter"||E.key===" ")&&(E.preventDefault(),i())}},[Tn("span",{class:w?"wf-treeselect-label":"wf-treeselect-placeholder"},w||h),Tn("span",{class:`wf-treeselect-arrow${t?" wf-treeselect-arrow--open":""}`})])])}};import{h as jt}from"weifuwu/vdom";var Zp=Symbol("LayoutSider"),Jp=o=>e=>{let n=(Array.isArray(e.children)?e.children:[e.children]).some(r=>r?.type===rs);return jt("div",{class:["wf-layout",n?"wf-layout--row":"wf-layout--column",e.className].filter(Boolean).join(" "),style:e.style,"data-layout":n?"row":"column"},e.children)},rs=(o,e)=>{let t=o?.collapsed??!1,n=o?.collapsed,r,a=!1,s=()=>{let i=!n;r?r(i):(t=i,e.render())};return i=>{n=i.collapsed,r=i.onCollapse,a=!!i.collapsible;let l=i.collapsed!==void 0?!!i.collapsed:t,c=l?i.collapsedWidth??"var(--wf-layout-sider-collapsed-width, 64px)":i.width??"var(--wf-layout-sider-width, 240px)",f=[jt("div",{class:"wf-layout-sider-body"},i.children)];return a&&f.push(jt("button",{class:"wf-layout-sider-trigger","aria-label":l?"\u5C55\u5F00\u4FA7\u8FB9\u680F":"\u6298\u53E0\u4FA7\u8FB9\u680F",onClick:()=>s()},i.trigger??jt("span",{class:`wf-layout-sider-trigger-icon${l?" is-collapsed":""}`},"\u25C2"))),jt("aside",{class:`wf-layout-sider${l?" wf-layout-sider--collapsed":""}`,style:{width:c},"data-collapsed":l?"true":"false"},f)}};rs[Zp]=!0;var Qp=o=>e=>jt("header",{class:"wf-layout-header",style:e.style},e.children),ef=o=>e=>jt("main",{class:"wf-layout-content",style:e.style},e.children),tf=o=>e=>jt("footer",{class:"wf-layout-footer",style:e.style},e.children);import{h as Nt}from"weifuwu/vdom";var nf=(o,e)=>{let t="top",n,r=!1,a=null,s=f=>{f&&(a=f)},i=null,l=null,c=()=>{i?.setOpen(!1)};return f=>{let{title:g,okText:u="\u786E\u5B9A",cancelText:p="\u53D6\u6D88",danger:d,onConfirm:h,onCancel:m,position:b="top",icon:v}=f;t=b,i=e.ui.useOpen({open:f.open,onOpenChange:f.onOpenChange,name:"Popconfirm"}),n=h,r=!!f.disabled;let w=i?.open??!1,y=Nt("div",{class:`wf-popconfirm wf-popconfirm--${b}${w?" wf-popconfirm--enter":" wf-popconfirm--exit"}`,role:"dialog","aria-label":String(g??"\u786E\u8BA4")},[Nt("div",{class:"wf-popconfirm-title"},[Nt("span",{class:"wf-popconfirm-icon"},v??Nt(O,{name:d?"alert":"info"})),Nt("span",{class:"wf-popconfirm-title-text"},g)]),Nt("div",{class:"wf-popconfirm-actions"},[Nt("button",{class:"wf-popconfirm-cancel wf-btn wf-btn--secondary",onClick:x=>{x.stopPropagation(),m?.(),c()}},p),Nt("button",{class:`wf-popconfirm-ok wf-btn${d?" wf-btn--danger":" wf-btn--primary"}`,onClick:x=>{x.stopPropagation(),h?.(),c()}},u)])]);return w&&!l?l=e.ui.openPopup({anchor:()=>a,placement:()=>t,gap:8,content:()=>y,onClose:()=>{l=null,i?.setOpen(!1)}}):!w&&l?(l.close(),l=null):l&&l.update(y),Nt("span",{class:"wf-popconfirm-wrap",ref:s,"aria-haspopup":"dialog","aria-expanded":String(w),onClick:x=>{x.stopPropagation?.(),r||i?.setOpen(!i.open)}},f.children)}};import{h as ro}from"weifuwu/vdom";function la(o,e){let t=e.trim().toLowerCase();return t?o.filter(n=>String(n.label??n.value).toLowerCase().includes(t)||n.value.toLowerCase().includes(t)):o}var of=(o,e)=>{let t=o?.open??!1,n=-1,r=o?.value??"",a,s=o?.open,i,l,c=null,f=m=>{m&&(c=m)},g=null,u=m=>{t&&!g?g=e.ui.openPopup({key:"wf-autocomplete",anchor:()=>c,placement:"bottom",center:!1,gap:4,content:()=>m,onClose:()=>{g=null,t&&(t=!1,e.render(),i?.(!1))}}):!t&&g?(g.close(),g=null):g&&g.update(m)},p=m=>{t=m,e.render(),i?.(m)},d=null,h=m=>{d?.setValue(m.value),l?.(m.value,m),d?.setKeyword(""),d?.setSelectedLabel(m.label??m.value),n=-1,p(!1)};return m=>{let{options:b,value:v,placeholder:w="\u8F93\u5165\u641C\u7D22\u2026",disabled:y,error:x,renderOption:k,onSelect:E}=m;d=e.ui.useControlledInput({value:v,onChange:m.onChange,name:"AutoComplete"});let P=d.keyword,S=d.selectedLabel;r=v??"",a=m.onChange,s=m.open,i=m.onOpenChange,l=E,m.open!==void 0&&(t=!!m.open);let I=t&&P||r,A=(m.filter??la)(b,I);n>=A.length&&(n=-1);let $=!1,N=C=>{if($||C.isComposing)return;let M=C.target.value;d?.setKeyword(M),d?.setValue(M),t?e.render():p(!0),n=-1},B=()=>{$=!0},W=C=>{$=!1;let M=C.target?.value??"";d?.setKeyword(M),d?.setValue(M),t||p(!0)},z=C=>{if(!t&&(C.key==="ArrowDown"||C.key==="ArrowUp")){C.preventDefault(),p(!0),n=C.key==="ArrowDown"?0:A.length-1;return}C.key==="ArrowDown"?(C.preventDefault(),n=(n+1)%A.length,e.render()):C.key==="ArrowUp"?(C.preventDefault(),n=n<=0?A.length-1:n-1,e.render()):C.key==="Enter"?t&&n>=0&&A[n]&&(C.preventDefault(),h(A[n])):C.key==="Escape"&&(C.preventDefault(),p(!1))},U=ro("div",{class:"wf-autocomplete-dropdown"},A.map((C,M)=>ro("div",{class:`wf-autocomplete-option${M===n?" wf-autocomplete-option--active":""}`,key:C.value,onMouseDown:T=>{T.stopPropagation(),C.disabled||h(C)}},k?k(C):C.label??C.value))),D=ro("div",{class:"wf-autocomplete-wrap",ref:f},[ro("input",{class:["wf-autocomplete-input wf-input",x?" wf-autocomplete-input--err":""].filter(Boolean).join(" "),"aria-invalid":x?"true":void 0,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(t),value:t?P:S||I,placeholder:w,disabled:y,onInput:N,onKeyDown:z,onCompositionStart:B,onCompositionEnd:W,onFocus:()=>{t||p(!0)}}),x?ro("div",{class:"wf-input-err"},x):null]);return u(U),D}};import{h as ca}from"weifuwu/vdom";var rf=(o,e)=>t=>{let{href:n,variant:r="default",underline:a=!0,disabled:s,target:i,icon:l,onClick:c,children:f}=t,g=["wf-link",`wf-link--${r}`,a===!1&&"wf-link--no-underline",s&&"wf-link--disabled"].filter(Boolean).join(" ");if(l!==void 0){let u=[l];return Array.isArray(f)?u.push(...f):f!==void 0&&u.push(f),ca("a",{class:g,href:s?void 0:n,target:i,rel:i==="_blank"?"noopener noreferrer":void 0,"aria-disabled":s?"true":void 0,onClick:s?p=>{p.preventDefault(),p.stopPropagation()}:c},u)}return ca("a",{class:g,href:s?void 0:n,target:i,rel:i==="_blank"?"noopener noreferrer":void 0,"aria-disabled":s?"true":void 0,onClick:s?u=>{u.preventDefault(),u.stopPropagation()}:c},f)};import{h as tn}from"weifuwu/vdom";var sf=(o,e)=>t=>{let{icon:n,badge:r,position:a="bottom-right",static:s,disabled:i,onClick:l,children:c}=t;return tn("button",{class:`wf-float-btn wf-float-btn--${a}${s?" wf-float-btn--static":""}${i?" wf-float-btn--disabled":""}`,style:{position:s?void 0:"fixed"},"aria-label":t["aria-label"],disabled:i,onClick:i?void 0:l},[n,c,r!=null&&tn("span",{class:"wf-float-btn-badge"},String(r))].filter(f=>f!=null&&f!==!1))},af=(o,e)=>{let t=!1;return n=>{let{position:r="bottom-right",children:a}=n,s=Array.isArray(a)?a:[a];return tn("div",{class:`wf-float-group wf-float-group--${r}${t?" wf-float-group--open":""}`},[tn("div",{class:"wf-float-group-items"},t?s.map((i,l)=>{let c={...i.props??{},static:!0},f=i.type?{...i,props:c}:i;return tn("div",{class:"wf-float-group-item",key:l},f)}):[]),tn("button",{class:"wf-float-group-main","aria-label":t?"\u6536\u8D77":"\u5C55\u5F00","aria-expanded":t?"true":"false",onClick:()=>{t=!t,e.render()}},tn("span",{class:`wf-float-group-icon${t?" is-open":""}`},"+"))])}};import{h as bt}from"weifuwu/vdom";var lf=120,cf=(o,e)=>{let t=null,n=null,r=new Map,a=new Map,s=new Map,i=N=>{let B=s.get(N);return B||(B=W=>{W&&r.set(N,W)},s.set(N,B)),B},l=new Map,c=N=>{let B=l.get(N);return B||(B=W=>{W&&a.set(N,W)},l.set(N,B)),B},f=null,g=null,u=null,p,d=N=>{f=N},h=N=>{g=N},m=N=>{u=N},b=N=>{if(!N||typeof N!="object")return!1;let B=N;return!!(f&&f.contains(B)||g&&g.contains(B)||u&&u.contains(B))},v=()=>{clearTimeout(p),p=void 0},w=()=>{p||(p=setTimeout(()=>{p=void 0,(t!==null||n!==null)&&(t=null,n=null,e.render())},lf))},y=N=>{b(N?.relatedTarget??null)||w()},x=()=>v();e.ui.onUnmount?.(()=>{clearTimeout(p)});let k=null,E=N=>{t&&!k?k=e.ui.openPopup({key:"wf-navmenu-sub",anchor:()=>t?r.get(t)??null:null,placement:"bottom",center:!1,gap:4,content:()=>N,onClose:()=>{k=null,t&&(t=null,n=null,e.render())}}):k&&k.update(N)},P=null,S=N=>{n&&!P?P=e.ui.openPopup({key:"wf-navmenu-nested",anchor:()=>n?a.get(n)??null:null,placement:"right",center:!1,gap:4,content:()=>N,onClose:()=>{P=null,n&&(n=null,e.render())}}):P&&P.update(N)},I=()=>{!n&&P&&(P.close(),P=null)},A=()=>{!t&&k&&(k.close(),k=null)},$=(N,B,W,z)=>N.map(U=>{let D=!!U.children?.length,C=()=>{U.disabled||(D?(n=n===U.key?null:U.key,e.render()):(W?.(U.key),t=null,n=null,e.render()))},M=[bt("span",{class:"wf-navmenu-sub-label"},U.label),D?bt("span",{class:"wf-navmenu-sub-arrow"},bt(O,{name:"chevron-right"})):null];return n===U.key&&S(bt("div",{class:"wf-navmenu-sub wf-navmenu-sub--nested wf-navmenu-sub--open",role:"menu",ref:m,onMouseEnter:()=>{v(),n!==U.key&&(n=U.key,e.render())},onMouseLeave:y},$(U.children||[],B,W,z+1))),I(),bt("div",{class:`wf-navmenu-sub-item${U.disabled?" wf-navmenu-sub-item--disabled":""}${D&&n===U.key?" wf-navmenu-sub-item--open":""}`,key:U.key,role:"menuitem",tabIndex:U.disabled?void 0:0,"aria-haspopup":D?"menu":void 0,"aria-disabled":U.disabled?"true":void 0,ref:c(U.key),onClick:C,onKeyDown:T=>{(T.key==="Enter"||T.key===" ")&&(T.preventDefault?.(),C())},onMouseEnter:()=>{v(),!U.disabled&&(D?n!==U.key&&(n=U.key,e.render()):n!==null&&(n=null,e.render()))}},M)});return N=>{let{items:B,activeKey:W,onSelect:z}=N,U=bt("nav",{class:"wf-navmenu",role:"navigation","aria-label":"\u4E3B\u5BFC\u822A",ref:d,onMouseLeave:y},B.map(D=>{let C=!!D.children?.length,M=t===D.key,T=[bt("span",{class:"wf-navmenu-label"},D.label),C&&bt("span",{class:"wf-navmenu-arrow"},bt(O,{name:"chevron-down"}))];return M&&E(bt("div",{class:"wf-navmenu-sub wf-navmenu-sub--open",role:"menu",ref:h,onMouseEnter:x,onMouseLeave:y},$(D.children||[],W,z,1))),A(),bt("div",{class:`wf-navmenu-item${D.disabled?" wf-navmenu-item--disabled":""}${W===D.key?" wf-navmenu-item--active":""}`,key:D.key,role:"menuitem","aria-haspopup":C?"menu":void 0,"aria-expanded":C&&M?"true":void 0,ref:i(D.key),tabIndex:D.disabled?void 0:0,onClick:()=>{D.disabled||(C?(t=M?null:D.key,n=null,e.render()):(z?.(D.key),t=null,n=null,e.render()))},onMouseEnter:()=>{v(),!D.disabled&&(C?t!==D.key&&(t=D.key,n=null,e.render()):(t!==null||n!==null)&&(t=null,n=null,e.render()))},onKeyDown:R=>{if(R.key==="Enter"||R.key===" "){if(R.preventDefault?.(),D.disabled)return;C?(t=M?null:D.key,n=null,e.render()):(z?.(D.key),t=null,n=null,e.render())}else R.key==="ArrowRight"&&C?(t=D.key,e.render()):R.key==="Escape"&&(t=null,n=null,e.render())}},T)}));return I(),U}};import{h as da}from"weifuwu/vdom";var df={sm:"var(--wf-space-sm, 8px)",md:"var(--wf-space-md, 16px)",lg:"var(--wf-space-lg, 24px)"},pf=(o,e)=>t=>{let{size:n="md",direction:r="horizontal",wrap:a,align:s,split:i,children:l}=t,c=typeof n=="number"?`${n}px`:df[n]??"var(--wf-space-md, 16px)",f=[];if(Array.isArray(l)){if(f=l,i!==void 0){let g=[];l.forEach((u,p)=>{p>0&&g.push(da("span",{class:"wf-space-split",key:`s${p}`},i)),g.push(u)}),f=g}}else l!==void 0&&(f=[l]);return da("div",{class:`wf-space${r==="vertical"?" wf-space--vertical":""}`,style:{gap:c,flexWrap:a?"wrap":void 0,alignItems:s==="start"?"flex-start":s==="end"?"flex-end":s}},f)};import{h as ss}from"weifuwu/vdom";import{keyOf as ff}from"weifuwu/vdom";function pa(o){return o<=0?"1":`${o/24*100}%`}var uf=(o,e)=>t=>{let{gutter:n,flex:r,gap:a,direction:s="row",align:i,children:l}=t,c=n?n/2:0,f=Array.isArray(l)?l.map(g=>g&&typeof g=="object"&&g.type===is?ss(is,{...g.props,key:ff(g),gutter:n},g.props?.children):g):l;return ss("div",{class:`wf-grid-comp${r?" wf-grid-comp--flex":""}${s==="column"?" wf-grid-comp--column":""}`,style:{margin:c?`0 -${c}px`:void 0,gap:a!==void 0?`${a}px`:void 0,alignItems:i==="start"?"flex-start":i==="end"?"flex-end":i}},f)},is=(o,e)=>t=>{let{span:n=24,gutter:r,children:a}=t,s=r?r/2:0;return ss("div",{class:"wf-col",style:{width:pa(n),flex:n<=0?"1":"0 0 auto",padding:s?`0 ${s}px`:void 0}},a)};import{h as mf}from"weifuwu/vdom";var hf=(o,e)=>t=>{let{maxHeight:n,height:r,orientation:a="vertical",always:s,children:i,style:l}=t,c=a==="horizontal";return mf("div",{class:`wf-scrollbar${s?" wf-scrollbar--always":""}`,style:{...l,maxHeight:n!==void 0?typeof n=="number"?`${n}px`:n:void 0,height:r!==void 0?typeof r=="number"?`${r}px`:r:void 0,overflowY:c?void 0:"auto",overflowX:c?"auto":void 0}},i)};import{h as Mt}from"weifuwu/vdom";var gf=3,bf=(o,e)=>{let t=!1;return n=>{let{items:r,onClose:a}=n,s=r.length>=gf,i=c=>Mt("div",{class:`wf-alertgroup-item wf-alertgroup-item--${c.variant??"info"}`,key:c.id},[Mt("span",{class:"wf-alertgroup-message"},c.message),c.time&&Mt("span",{class:"wf-alertgroup-time"},c.time),a&&Mt("button",{class:"wf-alertgroup-close","aria-label":"\u5173\u95ED",onClick:()=>a(c.id)},Mt(O,{name:"close"}))]),l=s&&!t?r.slice(0,1):r;return Mt("div",{class:"wf-alertgroup",role:"group"},[s&&!t?Mt("button",{class:"wf-alertgroup-summary",onClick:()=>{t=!0,e.render()}},Mt("span",{},`+${r.length} \u6761\u901A\u77E5`)):null,t&&s?Mt("div",{class:"wf-alertgroup-list wf-alertgroup-list--open"},l.map(i)):Mt("div",{class:"wf-alertgroup-list"},l.map(i))])}};import{h as Ke}from"weifuwu/vdom";var yf=(o,e)=>{let t=!!o.defaultExpanded;return n=>{let{items:r,label:a="\u5F15\u7528\u6765\u6E90",maxVisible:s=3,onOpen:i}=n;if(!r?.length)return null;let l=()=>{t=!t,e.render()},c=r.slice(0,s),f=r.length-c.length,g=c.map((u,p)=>{let d=i?{role:"button",tabindex:0,onClick:()=>i(u),onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),i(u))}}:{};return Ke("div",{key:u.id,class:"wf-citation-item",...d},[Ke("span",{class:"wf-citation-idx"},String(p+1)),Ke("div",{class:"wf-citation-content"},[Ke("div",{class:"wf-citation-title"},[u.title,u.source?Ke("span",{class:"wf-citation-source"},u.source):null]),Ke("div",{class:"wf-citation-snippet"},u.snippet)]),u.url?Ke("a",{class:"wf-citation-link",href:u.url,target:"_blank",rel:"noopener"},Ke(O,{name:"external-link"})):i?Ke("span",{class:"wf-citation-link","aria-hidden":"true"},Ke(O,{name:"external-link"})):null])});return f>0&&g.push(Ke("div",{key:"overflow",class:"wf-citation-item wf-citation-more",role:"button",tabindex:0,"aria-label":`\u5C55\u5F00\u5168\u90E8 ${r.length} \u6761\u5F15\u7528`,onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),l())}},`+${f} \u6761\u66F4\u591A`)),Ke("div",{class:"wf-citation"},[Ke("button",{type:"button",class:"wf-citation-toggle","aria-expanded":t?"true":"false",onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),l())}},[Ke("span",{class:`wf-citation-chevron${t?" wf-citation-chevron--open":""}`},Ke(O,{name:"chevron-down"})),Ke("span",{class:"wf-citation-count"},`${a} \xB7 ${r.length} \u6761`)]),Ke("div",{class:`wf-citation-body${t?" wf-citation-body--open":""}`,hidden:!t},g)])}};import{h as We}from"weifuwu/vdom";var wf=24*3600*1e3;function fa(o,e=Date.now()){let t=new Date(e).setHours(0,0,0,0),n=t-wf;return o>=t?"today":o>=n?"yesterday":"earlier"}var vf={today:"\u4ECA\u5929",yesterday:"\u6628\u5929",earlier:"\u66F4\u65E9"},xf=(o,e)=>{let t="",n,r="",a;return s=>{let{sessions:i,activeId:l,onSelect:c,onNew:f,onRename:g,onDelete:u,searchable:p,newLabel:d="\u65B0\u5EFA\u4F1A\u8BDD"}=s,h=t?i.filter(k=>k.title.toLowerCase().includes(t.toLowerCase())):i,m=[];for(let k of h){let E=fa(k.updatedAt??0),P=m.find(S=>S.key===E);P?P.items.push(k):m.push({key:E,items:[k]})}let b=h,v=a?b.findIndex(k=>k.id===a):b.findIndex(k=>k.id===(l??"")),w=k=>{if(b.length===0)return;let E=v>=0?v:0,P=E;if(k.key==="ArrowDown")P=Math.min(E+1,b.length-1);else if(k.key==="ArrowUp")P=Math.max(E-1,0);else return;k.preventDefault(),a=b[P].id,e.render()},y=k=>{let E=k.id===l,P=k.id===a;return k.id===n?We("div",{key:k.id,class:"wf-session-item wf-session-item--rename","data-id":k.id},We("input",{class:"wf-session-rename-input",value:r,"aria-label":"\u91CD\u547D\u540D\u4F1A\u8BDD",onInput:I=>{r=I.target.value},onKeyDown:I=>{if(I.key==="Enter"){I.preventDefault();let A=r.trim();A&&g?.(k.id,A),n=void 0,e.render()}else I.key==="Escape"&&(I.preventDefault(),n=void 0,e.render())},onBlur:()=>{n===k.id&&(n=void 0,e.render())}})):We("div",{key:k.id,class:`wf-session-item${E?" wf-session-item--active":""}${P?" wf-session-item--focus":""}`,"data-id":k.id,role:"option","aria-selected":E?"true":"false",onClick:()=>c?.(k.id),onKeyDown:I=>{I.key==="Enter"&&(I.preventDefault(),c?.(k.id))}},[We("span",{class:"wf-session-title"},k.title),g?We("button",{type:"button",class:"wf-session-rename","aria-label":`\u91CD\u547D\u540D ${k.title}`,onClick:I=>{I.stopPropagation(),n=k.id,r=k.title,e.render()}},We(O,{name:"edit"})):null,u?We("button",{type:"button",class:"wf-session-del","aria-label":`\u5220\u9664 ${k.title}`,onClick:I=>{I.stopPropagation(),u(k.id)}},We(O,{name:"trash"})):null])},x=h.length===0?[We("div",{class:"wf-session-empty"},"\u6682\u65E0\u4F1A\u8BDD")]:m.map(k=>[We("div",{class:"wf-session-group-title",key:`g-${k.key}`},vf[k.key]),...k.items.map(y)]);return We("div",{class:"wf-session"},[p||f?We("div",{class:"wf-session-head"},[p?We("input",{class:"wf-session-search",placeholder:"\u641C\u7D22\u4F1A\u8BDD\u2026","aria-label":"\u641C\u7D22\u4F1A\u8BDD",value:t,onInput:k=>{t=k.target.value,e.render()}}):null,f?We("button",{type:"button",class:"wf-session-new wf-btn wf-btn--primary wf-btn--sm",onClick:()=>f()},We(O,{name:"plus"})):null]):null,We("div",{class:"wf-session-list",role:"listbox","aria-label":"\u4F1A\u8BDD\u5217\u8868",tabindex:c?0:void 0,onKeyDown:w},x)])}};import{h as kf}from"weifuwu/vdom";import{createClientBrowser as Cf}from"weifuwu/vdom";var Mf=0,Pf=(o,e)=>t=>{let{children:n,className:r="",color:a}=t,s=i=>{let l=i.currentTarget,c=l.getBoundingClientRect(),f=Math.max(c.width,c.height)*2,g=i.clientX-c.left-f/2,u=i.clientY-c.top-f/2,p=(e.browser??Cf()).createElement("span");p.className="wf-wave-ripple",p.dataset.wid=`wave-${++Mf}`,p.style.cssText=`left:${g}px;top:${u}px;width:${f}px;height:${f}px;${a?`background:${a};`:""}`,l.appendChild(p);let d=()=>p.remove();p.addEventListener("animationend",d,{once:!0}),e.browser?.timeout?.(d,600)};return kf("span",{class:`wf-wave${r?` ${r}`:""}`,onClick:i=>{s(i)}},n)};import{h as ua}from"weifuwu/vdom";var Sf=(o,e)=>{let t=null,n=null,{dragProps:r}=e.ui.useDragDrop({onDragEnd:()=>{if(t!=null&&n!=null&&t!==n){let s=[...a.items],[i]=s.splice(t,1);s.splice(n,0,i),a.onReorder?.(s)}t=null,n=null,e.render()}}),a={items:[],onReorder:void 0};return s=>{a.items=s.items,a.onReorder=s.onReorder;let{items:i,keyField:l,renderItem:c,draggingClass:f="wf-sortable-dragging",className:g=""}=s;return s.onReorder||console.warn("[weifuwu] SortableList: \u4F20\u5165\u4E86\u53D7\u63A7 items \u4F46\u7F3A\u5C11 onReorder \u56DE\u8C03\u2014\u2014\u62D6\u62FD\u5C06\u9759\u9ED8\u5931\u6548"),ua("div",{class:`wf-sortable wf-stack wf-gap-xs${g?` ${g}`:""}`},i.map((u,p)=>{let d={...r,"data-wf-key":String(u[l]??p),onDragStart:m=>{t=p,m.dataTransfer?.setData("text/plain",String(u[l]??p)),m.dataTransfer.effectAllowed="move",e.render()},onDragOver:m=>{m.preventDefault(),n!==p&&(n=p,e.render())},onDragLeave:()=>{}},h=`wf-sortable-item${t===p?` ${f}`:""}${n===p&&t!==p?" wf-sortable-over":""}`;return ua("div",{key:String(u[l]??p),class:h,...d},c(u,p,d))}))}};import{h as Tf}from"weifuwu/vdom";function ma({data:o,columns:e,format:t}){let n=e?e.map(i=>i.key):o.length?Object.keys(o[0]):[],r=e?e.map(i=>i.label??i.key):n,a=i=>/[",\n]/.test(i)?`"${i.replace(/"/g,'""')}"`:i;return"\uFEFF"+[r,...o.map(i=>n.map(l=>{let c=i[l];return c==null?"":a(String(t?t(c,l):c))}))].map(i=>i.join(",")).join(`
56
+ `)}var Ef=(o,e)=>t=>{let{data:n,filename:r="export.csv",columns:a,format:s,children:i,variant:l,size:c,disabled:f,className:g=""}=t,u=()=>{let p=ma({data:n,columns:a,format:s});(e.browser??(typeof window<"u"?window.__wfBrowser:null))?.downloadFile(r,p,"text/csv;charset=utf-8")};return Tf("button",{type:"button",class:`wf-btn wf-btn--${l??"secondary"} wf-btn--${c??"md"}${g?` ${g}`:""}`,disabled:f,onClick:()=>u()},i??"\u5BFC\u51FA CSV")};import{h as Ft}from"weifuwu/vdom";var If=(o,e)=>{let t="split";return n=>{let{value:r,onChange:a,placeholder:s="\u8F93\u5165 Markdown\u2026",rows:i=12,disabled:l,className:c=""}=n;t=n.mode??t,a===void 0&&!l&&console.warn("[weifuwu] MarkdownEditor: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u7F16\u8F91\u5C06\u9759\u9ED8\u5931\u6548");let g=Ft("textarea",{class:"wf-md-editor-textarea wf-input",value:r,placeholder:s,rows:i,disabled:l,"data-wf-role":"md-editor",onInput:p=>{a?.(p.target.value)},onKeyDown:p=>{p.key==="Tab"&&(p.preventDefault(),a?.(r+" "))},style:{fontFamily:"var(--wf-font-mono)",fontSize:13,lineHeight:1.7,resize:"vertical",minHeight:80}}),u=Ft("div",{class:"wf-md-editor-preview wf-surface wf-border wf-radius-sm",style:{padding:"10px 14px",minHeight:80,overflow:"auto"}},r?Ft(Zn,{content:r}):Ft("span",{class:"wf-text-tertiary"},"\u9884\u89C8\u533A\uFF08\u8F93\u5165\u540E\u5B9E\u65F6\u6E32\u67D3\uFF09"));return Ft("div",{class:`wf-md-editor wf-stack wf-gap-xs${c?` ${c}`:""}`},[Ft("div",{class:"wf-row wf-gap-xs"},[["write","\u7F16\u8F91"],["preview","\u9884\u89C8"],["split","\u5206\u5C4F"]].map(([p,d])=>Ft("button",{key:p,type:"button",class:`wf-btn wf-btn--sm${t===p?" wf-btn--primary":""}`,onClick:()=>{t=p,e.render()}},d))),t==="preview"?u:t==="write"?g:Ft("div",{class:"wf-grid",style:"--wf-cols:1fr 1fr;--wf-gap:8px"},[g,u])])}};import{h as zo}from"weifuwu/vdom";var $f=(o,e)=>t=>{let{value:n,onChange:r,lang:a="text",rows:s=10,readOnly:i,placeholder:l,className:c=""}=t;r===void 0&&!i&&console.warn("[weifuwu] CodeEditor: \u4F20\u5165\u4E86\u53D7\u63A7 value \u4F46\u7F3A\u5C11 onChange \u56DE\u8C03\u2014\u2014\u7F16\u8F91\u5C06\u9759\u9ED8\u5931\u6548");let f=n.split(`
57
+ `).length,g=zo("div",{class:"wf-codeeditor-gutter",style:{fontFamily:"var(--wf-font-mono)",fontSize:12,lineHeight:1.7,padding:"8px 0",textAlign:"right",color:"var(--wf-color-text-tertiary)",userSelect:"none",overflow:"hidden"}},Array.from({length:f},(p,d)=>zo("div",{key:d,style:{paddingRight:8}},String(d+1)))),u=zo("textarea",{class:"wf-codeeditor-area",value:n,rows:s,placeholder:l,readOnly:i,"data-wf-role":"code-editor","data-lang":a,spellcheck:!1,style:{fontFamily:"var(--wf-font-mono)",fontSize:12,lineHeight:1.7,padding:"8px 10px",border:"none",outline:"none",resize:"vertical",flex:1,minWidth:0,background:"transparent"},onInput:p=>{r?.(p.target.value)},onKeyDown:p=>{if(p.key==="Tab"){p.preventDefault();let h=p.target.selectionStart??n.length;r?.(n.slice(0,h)+" "+n.slice(h))}}});return zo("div",{class:`wf-codeeditor wf-row wf-gap-none${c?` ${c}`:""}`,style:{border:"1px solid var(--wf-color-border)",borderRadius:"var(--wf-radius-sm)",overflow:"hidden",background:"var(--wf-color-bg)"}},[g,u])};import{h as En}from"weifuwu/vdom";import{createClientBrowser as ha}from"weifuwu/vdom";var Af=(o,e)=>{let t=null,n=null,r={x:0,y:0,w:100,h:100},a=320,s=240,i=null,l={x:0,y:0},c=()=>{let d=(e.browser??ha()).createElement("img");d.onload=()=>{n=d,a=Math.min(d.naturalWidth,480),s=a/f.aspect,r={x:a*.1,y:s*.1,w:a*.8,h:s*.8},g(),e.render()},d.onerror=()=>f.onError?.(new Error("\u56FE\u7247\u52A0\u8F7D\u5931\u8D25")),d.src=f.src},f={aspect:1,src:"",onError:void 0},g=()=>{if(!t||!n)return;let p=t,d=p.getContext("2d");d&&(p.width=a,p.height=s,d.drawImage(n,0,0,a,s),d.fillStyle="rgba(0,0,0,0.45)",d.fillRect(0,0,a,s),d.clearRect(r.x,r.y,r.w,r.h),d.strokeStyle="#fff",d.lineWidth=2,d.strokeRect(r.x,r.y,r.w,r.h),d.fillStyle="#fff",d.fillRect(r.x+r.w-6,r.y+r.h-6,12,12))},u=()=>{if(!t||!n||!t.getContext("2d"))return;let d=(e.browser??ha()).createElement("canvas");d.width=r.w*2,d.height=r.h*2;let h=d.getContext("2d");h&&(h.drawImage(n,r.x/a*n.naturalWidth,r.y/s*n.naturalHeight,r.w/a*n.naturalWidth,r.h/s*n.naturalHeight,0,0,d.width,d.height),f.onCrop?.(d.toDataURL("image/png")))};return p=>{f.aspect=p.aspect??1,f.src=p.src,f.onError=p.onError;let{onCrop:d,className:h=""}=p;f.onCrop=d;let m=(E,P)=>{r.x=Math.max(0,Math.min(a-r.w,r.x+E)),r.y=Math.max(0,Math.min(s-r.h,r.y+P)),g()},b=(E,P)=>{r.w=Math.max(30,Math.min(a-r.x,r.w+E)),r.h=r.w/f.aspect,g()},v=E=>{let P=t.getBoundingClientRect();return{x:(E.clientX-P.left)*(t.width/P.width),y:(E.clientY-P.top)*(t.height/P.height)}},w=E=>{if(!t)return;let P=v(E),S=P.x>=r.x+r.w-8&&P.y>=r.y+r.h-8,I=P.x>=r.x&&P.x<=r.x+r.w&&P.y>=r.y&&P.y<=r.y+r.h;!S&&!I||(i=S?"se":"move",l=P,t.setPointerCapture(E.pointerId),t.style.cursor=S?"nwse-resize":"move")},y=E=>{if(!i||!t)return;let P=v(E);i==="move"?m(P.x-l.x,P.y-l.y):b(P.x-l.x,P.y-l.y),l=P},x=()=>{i=null,t&&(t.style.cursor="crosshair")},k=E=>{E&&!t&&(t=E.querySelector("canvas"),c())};return En("div",{class:`wf-imagecropper wf-stack wf-gap-sm${h?` ${h}`:""}`},[En("div",{ref:k,style:{position:"relative",display:"inline-block",cursor:"crosshair"}},[En("canvas",{width:320,height:240,style:{maxWidth:"100%",borderRadius:"var(--wf-radius-sm)",display:"block"},onPointerDown:w,onPointerMove:y,onPointerUp:x})]),En("div",{class:"wf-row wf-gap-xs"},En("button",{type:"button",class:"wf-btn wf-btn--sm wf-btn--primary",disabled:!n,onClick:()=>u()},"\u88C1\u526A"),En("button",{type:"button",class:"wf-btn wf-btn--sm",disabled:!n,onClick:()=>{r={x:a*.1,y:s*.1,w:a*.8,h:s*.8},g(),e.render()}},"\u91CD\u7F6E"))])}};import{h as ga}from"weifuwu/vdom";var Df=(o,e)=>{let t=null,n={src:""},r=a=>{t=a,a&&(a.onplay=()=>n.onPlay?.(),a.onpause=()=>n.onPause?.(),a.onended=()=>n.onEnded?.(),a.onerror=()=>n.onError?.(new Error("\u89C6\u9891\u52A0\u8F7D\u5931\u8D25")),n.muted!==void 0&&(a.muted=n.muted),n.loop!==void 0&&(a.loop=n.loop),n.autoPlay!==void 0&&(a.autoplay=n.autoPlay))};return a=>{n=a;let{src:s,poster:i,aspect:l=16/9,controls:c=!0,autoPlay:f,loop:g,muted:u,className:p=""}=a;return e.afterRender?.(()=>{t&&n.muted!==void 0&&(t.muted=n.muted),t&&n.loop!==void 0&&(t.loop=n.loop),t&&n.autoPlay!==void 0&&(t.autoplay=n.autoPlay)}),ga("div",{class:`wf-videoplayer wf-surface wf-border wf-radius-md wf-overflow-hidden${p?` ${p}`:""}`,style:{aspectRatio:String(l),background:"#000"}},ga("video",{src:s,poster:i,controls:c,autoPlay:f,loop:g,muted:u,playsinline:!0,preload:"metadata",ref:r,style:{width:"100%",height:"100%",display:"block"}}))}};import{h as tt}from"weifuwu/vdom";var ba={alpha:"\u03B1",beta:"\u03B2",gamma:"\u03B3",delta:"\u03B4",epsilon:"\u03B5",theta:"\u03B8",lambda:"\u03BB",mu:"\u03BC",pi:"\u03C0",sigma:"\u03C3",phi:"\u03C6",omega:"\u03C9",tau:"\u03C4",eta:"\u03B7",rho:"\u03C1",Delta:"\u0394",Sigma:"\u03A3",Pi:"\u03A0",Omega:"\u03A9"};function nn(o){let e=[],t=0,n=()=>{if(o[t]==="{"){let a=1,s="";for(t++;t<o.length&&a>0;){if(o[t]==="{"&&a++,o[t]==="}"&&(a--,a===0)){t++;break}s+=o[t],t++}return s}let r=o[t]??"";return t++,r};for(;t<o.length;){let r=o[t];if(r==="^"){t++,e.push({type:"sup",value:n()});continue}if(r==="_"){t++,e.push({type:"sub",value:n()});continue}if(r==="\\"){let a=t;t++;let s="";for(;t<o.length&&/[a-zA-Z]/.test(o[t]);)s+=o[t],t++;if(s==="frac"){let i=n(),l=n();e.push({type:"frac",value:"",num:i,den:l});continue}if(s==="sqrt"){e.push({type:"sqrt",value:n()});continue}if(s==="sum"){t++;let i="";o[t]==="_"&&(t++,i=n()),e.push({type:"sum",value:"",index:i});continue}if(ba[s]){e.push({type:"greek",value:ba[s]});continue}e.push({type:"text",value:o.slice(a,t)});continue}if(r==="{"||r==="}"){t++;continue}e.push({type:"text",value:r}),t++}return e}var Lf=o=>{switch(o.type){case"sup":return tt("sup",{class:"wf-math-sup"},on(nn(o.value)));case"sub":return tt("sub",{class:"wf-math-sub"},on(nn(o.value)));case"greek":return o.value;case"frac":return tt("span",{class:"wf-math-frac"},[tt("span",{class:"wf-math-num"},on(nn(o.num??""))),tt("span",{class:"wf-math-den"},on(nn(o.den??"")))]);case"sqrt":return tt("span",{class:"wf-math-sqrt"},[tt("span",{class:"wf-math-sqrt-radical"},"\u221A"),tt("span",{class:"wf-math-sqrt-body",style:{borderTop:"1px solid currentColor"}},on(nn(o.value)))]);case"sum":return tt("span",{class:"wf-math-sum"},[tt("span",{class:"wf-math-sum-symbol"},"\u03A3"),o.index?tt("sub",{class:"wf-math-sub"},on(nn(o.index))):null]);default:return o.value}};function on(o){return o.map((e,t)=>tt("span",{key:t,class:"wf-math-token"},Lf(e)))}var Rf=o=>e=>{let{tex:t,className:n=""}=e;return tt("span",{class:`wf-math${n?` ${n}`:""}`,style:{fontFamily:"var(--wf-font-mono)",whiteSpace:"nowrap"}},on(nn(t)))};var ux=Object.assign(Di,{Sheet:So,Slide:To});export{Ml as Accordion,sl as ActionSheet,Jd as Affix,Nc as AiChat,Yo as Alert,bf as AlertGroup,Rp as Anchor,Nl as AppShell,Mr as ApprovalCard,Kd as AspectRatio,Oc as AuthPage,of as AutoComplete,dn as Avatar,Id as AvatarGroup,Zd as BackTop,pl as Badge,Sl as Breadcrumb,Ye as Button,Tp as Calendar,Qo as Card,Mp as Carousel,wp as Cascader,Jl as Chart,Sr as ChatInput,qo as Checkbox,Fd as CheckboxGroup,yf as CitationCard,Er as CodeBlock,$f as CodeEditor,is as Col,hp as Collapse,Yd as ColorPicker,xp as Command,ms as Confirm,fp as ContextMenu,Wd as CopyButton,Xl as DatePicker,Ed as Descriptions,Fp as DiffView,Tl as Divider,_l as Drawer,Il as DropZone,al as Dropdown,qn as Editor,el as EmptyState,Ef as ExportCSV,pn as Field,ux as FilePreview,Dl as FileTree,nr as FileUpload,sf as FloatButton,af as FloatButtonGroup,yl as Form,uf as Grid,Ld as Highlight,Qd as HoverCard,O as Icon,Af as ImageCropper,jl as Img,Fl as InView,$p as InfiniteScroll,co as Input,Co as InputNumber,vr as JSONViewer,Cr as JsonSchemaForm,qp as Kanban,_d as Label,Jp as Layout,ef as LayoutContent,tf as LayoutFooter,Qp as LayoutHeader,rs as LayoutSider,rf as Link,Rd as List,Qa as Loading,Np as LogViewer,Zn as Markdown,If as MarkdownEditor,Rf as Math,up as Mentions,or as Menu,Cp as Menubar,$d as MessageBubble,Xo as Modal,rl as NavBar,cf as NavMenu,zi as Notification,Pl as PageHeader,ll as Pagination,zd as Paragraph,Ad as PasswordInput,Gd as PinInput,Xp as Pipeline,nf as Popconfirm,Vn as Popover,kl as ProgressBar,il as PromptTemplate,jp as QRCode,za as RadioGroup,Od as Rate,Pr as ReasoningBlock,Ul as RelationGraph,Pp as Resizable,Hd as Result,hf as Scrollbar,vl as SearchInput,xl as SegmentedControl,fo as Select,xf as SessionList,So as SheetGrid,Kl as Skeleton,To as SlideCanvas,wl as Slider,Sf as SortableList,pf as Space,Gp as Sparkline,ml as StatCard,hl as Steps,uo as Switch,ol as TabBar,Va as Table,nl as Tabs,ul as Tag,Dd as TagsInput,Ud as Text,Oa as Textarea,Ec as ThemeSwitch,Td as Timeline,Bd as Title,Ya as Toast,Ri as Toggle,jd as ToggleGroup,xr as ToolCallCard,zl as Tooltip,Wp as Tour,vp as Transfer,Yr as Tree,Yp as TreeSelect,Df as VideoPlayer,Xr as VirtualList,Dp as VirtualTable,Ip as Watermark,Pf as Wave,wr as applyTheme,aa as computeLayers,Wa as confirm,ns as detectCycle,la as filterOptions,Uo as findLabel,Wo as flattenOptions,es as generateQr,Tc as getTheme,pa as gridColumns,fa as groupKey,os as layoutGraph,Dr as markdownToHtml,Ui as notification,pp as notificationMiddleware,Xi as parseAnsi,_e as parseInline,Yn as parseMarkdown,Qn as serializeMarkdown,ma as toCsv};