weifuwu 0.87.0 → 0.89.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +111 -135
- package/dist/client/components/ActionSheet/ActionSheet.d.ts +1 -1
- package/dist/client/components/AiChat/AiChat.d.ts +3 -4
- package/dist/client/components/ChatInput/ChatInput.d.ts +5 -0
- package/dist/client/components/CitationCard/CitationCard.d.ts +1 -1
- package/dist/client/components/Command/Command.d.ts +1 -1
- package/dist/client/components/ContextMenu/ContextMenu.d.ts +1 -1
- package/dist/client/components/DatePicker/DatePicker.d.ts +1 -1
- package/dist/client/components/Dropdown/Dropdown.d.ts +1 -1
- package/dist/client/components/Editor/model/html.d.ts +10 -0
- package/dist/client/components/ImageCropper/ImageCropper.d.ts +6 -2
- package/dist/client/components/Menu/Menu.d.ts +1 -1
- package/dist/client/components/NavMenu/NavMenu.d.ts +1 -1
- package/dist/client/components/Popconfirm/Popconfirm.d.ts +1 -1
- package/dist/client/components/SlideCanvas/SlideCanvas.d.ts +1 -1
- package/dist/client/components/Tour/Tour.d.ts +1 -1
- package/dist/client/components/TreeSelect/TreeSelect.d.ts +1 -1
- package/dist/client/components/index.js +41 -41
- package/dist/client/components/style.css +298 -644
- package/dist/client/layout/weifuwu-layout.css +286 -640
- package/dist/client/vdom/browser/Browser.d.ts +2 -0
- package/dist/client/vdom/commands.d.ts +4 -1
- package/dist/client/vdom/context/UIContext.d.ts +8 -0
- package/dist/client/vdom/core/diff/attrs.d.ts +10 -2
- package/dist/client/vdom/core/field/attributes.d.ts +12 -0
- package/dist/client/vdom/core/field/events.d.ts +8 -0
- package/dist/client/vdom/core/field/input-sync.d.ts +14 -0
- package/dist/client/vdom/core/field/key.d.ts +3 -0
- package/dist/client/vdom/core/field/props.d.ts +13 -1
- package/dist/client/vdom/core/field/ref.d.ts +6 -0
- package/dist/client/vdom/core/field/style.d.ts +7 -1
- package/dist/client/vdom/core/node/component.d.ts +3 -4
- package/dist/client/vdom/core/node/native.d.ts +6 -1
- package/dist/client/vdom/core/patch/index.d.ts +24 -1
- package/dist/client/vdom/core/patch/processors.d.ts +8 -1
- package/dist/client/vdom/core/protocol.d.ts +45 -0
- package/dist/client/vdom/core/router.d.ts +7 -0
- package/dist/client/vdom/core/ssr/absorb.d.ts +31 -4
- package/dist/client/vdom/core/transform/index.d.ts +6 -6
- package/dist/client/vdom/core/v2/cycle.d.ts +54 -0
- package/dist/client/vdom/core/v2/diff.d.ts +80 -0
- package/dist/client/vdom/core/v2/integrate.d.ts +24 -0
- package/dist/client/vdom/core/v2/render.d.ts +28 -0
- package/dist/client/vdom/core/v2/schedule.d.ts +33 -0
- package/dist/client/vdom/core/v2/serve.d.ts +4 -0
- package/dist/client/vdom/core/v2/spy.d.ts +21 -0
- package/dist/client/vdom/core/v2/ssr.d.ts +14 -0
- package/dist/client/vdom/core/vnode.d.ts +9 -6
- package/dist/client/vdom/dev/error-counter.d.ts +27 -0
- package/dist/client/vdom/dev/render-health.d.ts +60 -0
- package/dist/client/vdom/hooks/chat.d.ts +32 -5
- package/dist/client/vdom/hooks/drag-media.d.ts +3 -1
- package/dist/client/vdom/hooks/env.d.ts +32 -0
- package/dist/client/vdom/hooks/popup-manager.d.ts +21 -0
- package/dist/client/vdom/hooks/popup.d.ts +4 -1
- package/dist/client/vdom/hooks/stable.d.ts +4 -0
- package/dist/client/vdom/hooks/use-observable.d.ts +13 -0
- package/dist/client/vdom/index.d.ts +14 -6
- package/dist/client/vdom/index.js +4 -7
- package/dist/client/vdom/jsx-runtime.js +1 -1
- package/dist/client/vdom/middlewares/api.d.ts +8 -0
- package/dist/client/vdom/middlewares/auth-i18n.d.ts +7 -0
- package/dist/client/vdom/middlewares/ws.d.ts +41 -1
- package/dist/client/vdom/observable/index.d.ts +13 -0
- package/dist/client/vdom/observable/observable.d.ts +26 -0
- package/dist/client/vdom/observable/operators.d.ts +76 -0
- package/dist/client/vdom/observable/sources.d.ts +54 -0
- package/dist/client/vdom/observable/types.d.ts +45 -0
- package/dist/client/vdom/store.d.ts +17 -2
- package/dist/client/vdom/testing.js +2 -2
- package/dist/server/ai/agent.d.ts +18 -0
- package/dist/server/ai/client.d.ts +14 -2
- package/dist/server/ai/contracts.d.ts +2 -2
- package/dist/server/ai/sse.d.ts +6 -0
- package/dist/server/core/collect.d.ts +31 -0
- package/dist/server/core/error-counter.d.ts +11 -0
- package/dist/server/core/hub.d.ts +2 -0
- package/dist/server/core/router.d.ts +12 -9
- package/dist/server/db/contracts.d.ts +24 -0
- package/dist/server/db/memory-redis.d.ts +3 -4
- package/dist/server/db/memory-sql.d.ts +20 -4
- package/dist/server/db/postgres-server.d.ts +2 -0
- package/dist/server/db/query.d.ts +21 -0
- package/dist/server/db/redis-server.d.ts +4 -2
- package/dist/server/db/sql-parser.d.ts +2 -1
- package/dist/server/email/index.d.ts +2 -0
- package/dist/server/index.d.ts +4 -1
- package/dist/server/index.js +3927 -1982
- package/dist/server/messager/index.d.ts +21 -2
- package/dist/server/middleware/compress.d.ts +25 -0
- package/dist/server/ui/index.d.ts +8 -1
- package/dist/server/user/index.d.ts +4 -0
- package/dist/shared/router/chain.d.ts +9 -0
- package/dist/shared/router/context.d.ts +35 -0
- package/dist/shared/router/ctx-fields.d.ts +20 -0
- package/dist/shared/router/pipeline.d.ts +70 -0
- package/dist/shared/router/trie.d.ts +11 -3
- package/dist/shared/router/types.d.ts +23 -0
- package/docs/style-guide.md +44 -41
- package/package.json +13 -10
- package/content/apps/admin.md +0 -55
- package/content/apps/agent-platform.md +0 -35
- package/content/apps/auth.md +0 -49
- package/content/apps/multi.md +0 -44
- package/content/apps/todo.md +0 -51
- package/content/backend/ai.md +0 -28
- package/content/backend/auth.md +0 -20
- package/content/backend/email.md +0 -23
- package/content/backend/graphql.md +0 -23
- package/content/backend/http.md +0 -23
- package/content/backend/limit.md +0 -23
- package/content/backend/middleware.md +0 -17
- package/content/backend/queue.md +0 -23
- package/content/backend/redis.md +0 -26
- package/content/backend/router.md +0 -23
- package/content/backend/schedule.md +0 -23
- package/content/backend/sql.md +0 -27
- package/content/backend/sse.md +0 -26
- package/content/backend/ws.md +0 -26
- package/content/capabilities/app-node.md +0 -21
- package/content/capabilities/data.md +0 -21
- package/content/capabilities/events.md +0 -21
- package/content/capabilities/hooks.md +0 -22
- package/content/capabilities/i18n.md +0 -21
- package/content/capabilities/popup.md +0 -21
- package/content/capabilities/render-only.md +0 -23
- package/content/capabilities/router.md +0 -22
- package/content/capabilities/self-id.md +0 -21
- package/content/capabilities/store.md +0 -21
- package/content/capabilities/theme.md +0 -21
- package/content/capabilities/two-phase.md +0 -21
- package/content/components/accordion.md +0 -50
- package/content/components/actionsheet.md +0 -46
- package/content/components/affix.md +0 -51
- package/content/components/aichat.md +0 -57
- package/content/components/alert.md +0 -52
- package/content/components/alertgroup.md +0 -45
- package/content/components/anchor.md +0 -52
- package/content/components/app.md +0 -37
- package/content/components/approvalcard.md +0 -56
- package/content/components/appshell.md +0 -50
- package/content/components/aspectratio.md +0 -47
- package/content/components/authpage.md +0 -61
- package/content/components/autocomplete-v2.md +0 -40
- package/content/components/autocomplete.md +0 -56
- package/content/components/avatar.md +0 -51
- package/content/components/avatargroup.md +0 -47
- package/content/components/backtop.md +0 -53
- package/content/components/badge.md +0 -55
- package/content/components/breadcrumb.md +0 -49
- package/content/components/button.md +0 -63
- package/content/components/calendar-v2.md +0 -40
- package/content/components/calendar.md +0 -50
- package/content/components/card.md +0 -58
- package/content/components/carousel.md +0 -52
- package/content/components/cascader-v2.md +0 -39
- package/content/components/cascader.md +0 -54
- package/content/components/chart.md +0 -53
- package/content/components/chatinput.md +0 -63
- package/content/components/checkbox.md +0 -51
- package/content/components/checkboxgroup.md +0 -52
- package/content/components/citationcard.md +0 -48
- package/content/components/codeblock.md +0 -48
- package/content/components/codeeditor.md +0 -47
- package/content/components/collapse.md +0 -49
- package/content/components/colorpicker.md +0 -50
- package/content/components/command.md +0 -50
- package/content/components/confirm.md +0 -57
- package/content/components/contextmenu.md +0 -48
- package/content/components/copybutton.md +0 -51
- package/content/components/datepicker.md +0 -52
- package/content/components/descriptions-v2.md +0 -39
- package/content/components/descriptions.md +0 -52
- package/content/components/diffview-v2.md +0 -39
- package/content/components/diffview.md +0 -50
- package/content/components/divider.md +0 -48
- package/content/components/drawer.md +0 -55
- package/content/components/dropdown.md +0 -53
- package/content/components/editor.md +0 -49
- package/content/components/emptystate.md +0 -51
- package/content/components/exportcsv.md +0 -38
- package/content/components/field.md +0 -54
- package/content/components/filepreview-office.md +0 -37
- package/content/components/filepreview.md +0 -49
- package/content/components/filetree.md +0 -56
- package/content/components/fileupload-v2.md +0 -39
- package/content/components/fileupload.md +0 -57
- package/content/components/floatbutton.md +0 -52
- package/content/components/form-v2.md +0 -41
- package/content/components/form.md +0 -60
- package/content/components/grid.md +0 -51
- package/content/components/highlight-v2.md +0 -39
- package/content/components/highlight.md +0 -46
- package/content/components/hovercard.md +0 -51
- package/content/components/icon.md +0 -50
- package/content/components/imagecropper.md +0 -45
- package/content/components/img.md +0 -56
- package/content/components/infinitescroll-v2.md +0 -40
- package/content/components/infinitescroll.md +0 -54
- package/content/components/input.md +0 -65
- package/content/components/inputnumber.md +0 -58
- package/content/components/inview.md +0 -56
- package/content/components/jsonschemaform.md +0 -53
- package/content/components/jsonviewer-v2.md +0 -39
- package/content/components/jsonviewer.md +0 -49
- package/content/components/kanban.md +0 -46
- package/content/components/label.md +0 -48
- package/content/components/layout.md +0 -54
- package/content/components/layoutcontent.md +0 -43
- package/content/components/layoutheader.md +0 -43
- package/content/components/layoutsider.md +0 -43
- package/content/components/link.md +0 -52
- package/content/components/list.md +0 -44
- package/content/components/loading.md +0 -45
- package/content/components/logviewer-v2.md +0 -39
- package/content/components/logviewer.md +0 -53
- package/content/components/markdown.md +0 -51
- package/content/components/markdowneditor.md +0 -47
- package/content/components/math.md +0 -42
- package/content/components/mentions-v2.md +0 -39
- package/content/components/mentions.md +0 -52
- package/content/components/menu.md +0 -56
- package/content/components/menubar.md +0 -44
- package/content/components/messagebubble.md +0 -50
- package/content/components/modal.md +0 -59
- package/content/components/navmenu.md +0 -47
- package/content/components/notification.md +0 -51
- package/content/components/pageheader.md +0 -53
- package/content/components/pagination.md +0 -49
- package/content/components/paragraph.md +0 -45
- package/content/components/passwordinput.md +0 -57
- package/content/components/pininput-v2.md +0 -39
- package/content/components/pininput.md +0 -50
- package/content/components/pipeline.md +0 -49
- package/content/components/popconfirm.md +0 -58
- package/content/components/popover.md +0 -61
- package/content/components/progressbar.md +0 -50
- package/content/components/prompttemplate.md +0 -49
- package/content/components/qrcode.md +0 -50
- package/content/components/radiogroup.md +0 -53
- package/content/components/rate.md +0 -53
- package/content/components/reasoningblock.md +0 -47
- package/content/components/relationgraph.md +0 -52
- package/content/components/resizable.md +0 -53
- package/content/components/result.md +0 -49
- package/content/components/scrollbar.md +0 -49
- package/content/components/searchinput.md +0 -51
- package/content/components/segmentedcontrol.md +0 -59
- package/content/components/select-searchable.md +0 -47
- package/content/components/select.md +0 -66
- package/content/components/sessionlist.md +0 -52
- package/content/components/sheetgrid.md +0 -44
- package/content/components/skeleton.md +0 -55
- package/content/components/slidecanvas.md +0 -44
- package/content/components/slider.md +0 -62
- package/content/components/sortablelist.md +0 -39
- package/content/components/space.md +0 -52
- package/content/components/sparkline.md +0 -52
- package/content/components/statcard-countdown.md +0 -39
- package/content/components/statcard.md +0 -56
- package/content/components/steps.md +0 -48
- package/content/components/switch.md +0 -50
- package/content/components/tabbar.md +0 -45
- package/content/components/table-v2.md +0 -40
- package/content/components/table.md +0 -66
- package/content/components/tabs.md +0 -56
- package/content/components/tag.md +0 -51
- package/content/components/tagsinput-v2.md +0 -39
- package/content/components/tagsinput.md +0 -54
- package/content/components/text.md +0 -45
- package/content/components/textarea.md +0 -57
- package/content/components/themeswitch.md +0 -69
- package/content/components/timeline.md +0 -50
- package/content/components/title.md +0 -45
- package/content/components/toast.md +0 -52
- package/content/components/toggle-togglegroup.md +0 -52
- package/content/components/togglegroup.md +0 -47
- package/content/components/toolcallcard.md +0 -51
- package/content/components/tooltip.md +0 -50
- package/content/components/tour.md +0 -50
- package/content/components/transfer.md +0 -52
- package/content/components/tree-v2.md +0 -39
- package/content/components/tree.md +0 -59
- package/content/components/treeselect.md +0 -54
- package/content/components/typography.md +0 -51
- package/content/components/videoplayer.md +0 -52
- package/content/components/virtuallist.md +0 -52
- package/content/components/virtualtable-v2.md +0 -39
- package/content/components/virtualtable.md +0 -55
- package/content/components/watermark.md +0 -53
- package/content/components/wave.md +0 -43
- package/content/guides/ai-chat-family.md +0 -24
- package/content/guides/choose.md +0 -67
- package/content/guides/component-model.md +0 -32
- package/content/guides/component-standards.md +0 -123
- package/content/guides/components-guide.md +0 -813
- package/content/guides/custom-component.md +0 -321
- package/content/guides/data-guide.md +0 -281
- package/content/guides/file-preview-family.md +0 -18
- package/content/guides/frontend.md +0 -968
- package/content/guides/layout-choice.md +0 -64
- package/content/guides/layout-guide.md +0 -241
- package/content/guides/middleware.md +0 -459
- package/content/guides/mobile-guide.md +0 -105
- package/content/guides/page-building.md +0 -98
- package/content/guides/production.md +0 -37
- package/content/guides/quality.md +0 -60
- package/content/guides/realtime-guide.md +0 -296
- package/content/guides/render-only.md +0 -44
- package/content/guides/saas-guide.md +0 -253
- package/content/guides/server-guide.md +0 -359
- package/content/guides/start.md +0 -41
- package/content/guides/styling.md +0 -154
- package/content/guides/ui-dom-guide.md +0 -157
- package/content/index.json +0 -4344
- package/content/index.md +0 -181
- package/content/layout/align.md +0 -20
- package/content/layout/anchor.md +0 -19
- package/content/layout/app-shell.md +0 -23
- package/content/layout/border.md +0 -20
- package/content/layout/center.md +0 -19
- package/content/layout/cluster.md +0 -19
- package/content/layout/container.md +0 -19
- package/content/layout/fill.md +0 -19
- package/content/layout/grid.md +0 -19
- package/content/layout/hidden.md +0 -22
- package/content/layout/layer.md +0 -19
- package/content/layout/position.md +0 -22
- package/content/layout/row.md +0 -23
- package/content/layout/safe-area.md +0 -20
- package/content/layout/scroll.md +0 -21
- package/content/layout/spacing.md +0 -22
- package/content/layout/split.md +0 -19
- package/content/layout/stack.md +0 -19
- package/content/layout/surface.md +0 -23
- package/content/layout/text.md +0 -22
- package/content/patterns/app-shell.md +0 -34
- package/content/patterns/dashboard.md +0 -36
- package/content/patterns/data-screen.md +0 -30
- package/content/patterns/detail-page.md +0 -31
- package/content/patterns/docs.md +0 -34
- package/content/patterns/focus-task.md +0 -34
- package/content/patterns/landing.md +0 -35
- package/content/patterns/list-page.md +0 -32
- package/content/patterns/mobile.md +0 -31
- package/content/patterns/settings-page.md +0 -33
- package/content/patterns/workspace.md +0 -32
- package/dist/cli/content-sync.test.d.ts +0 -1
- package/dist/cli/docs-cli.test.d.ts +0 -1
- package/dist/cli/docs.d.ts +0 -2
- package/dist/cli/docs.mjs +0 -10961
- package/dist/client/vdom/core/build.d.ts +0 -36
- package/dist/client/vdom/core/diff/children.d.ts +0 -29
- package/dist/client/vdom/core/diff/index.d.ts +0 -22
- package/dist/client/vdom/core/diff/output.d.ts +0 -30
- package/dist/client/vdom/core/diff/same.d.ts +0 -22
- package/dist/client/vdom/core/serve.d.ts +0 -75
- package/dist/client/vdom/core/ssr/index.d.ts +0 -25
- package/examples/apps/admin/README.md +0 -23
- package/examples/apps/admin/api.ts +0 -27
- package/examples/apps/admin/app.tsx +0 -144
- package/examples/apps/admin/main.tsx +0 -8
- package/examples/apps/admin/server.ts +0 -37
- package/examples/apps/auth/README.md +0 -23
- package/examples/apps/auth/api.ts +0 -49
- package/examples/apps/auth/app.tsx +0 -137
- package/examples/apps/auth/main.tsx +0 -8
- package/examples/apps/auth/server.ts +0 -37
- package/examples/apps/multi/README.md +0 -23
- package/examples/apps/multi/app.tsx +0 -83
- package/examples/apps/multi/main.tsx +0 -8
- package/examples/apps/multi/server.ts +0 -33
- package/examples/apps/todo/README.md +0 -23
- package/examples/apps/todo/api.ts +0 -26
- package/examples/apps/todo/app.tsx +0 -128
- package/examples/apps/todo/main.tsx +0 -9
- package/examples/apps/todo/server.ts +0 -39
- package/examples/hello-world/README.md +0 -9
- package/examples/hello-world/client.ts +0 -14
- package/examples/hello-world/routes.tsx +0 -26
- package/examples/hello-world/server.ts +0 -46
- package/examples/patterns/AppShell.tsx +0 -224
- package/examples/patterns/Dashboard.tsx +0 -153
- package/examples/patterns/DataScreen.tsx +0 -104
- package/examples/patterns/DetailPage.tsx +0 -79
- package/examples/patterns/Docs.tsx +0 -105
- package/examples/patterns/FocusTask.tsx +0 -67
- package/examples/patterns/Landing.tsx +0 -90
- package/examples/patterns/ListPage.tsx +0 -77
- package/examples/patterns/Mobile.tsx +0 -154
- package/examples/patterns/SettingsPage.tsx +0 -98
- package/examples/patterns/SplitWorkspace.tsx +0 -113
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
var
|
|
2
|
-
${t}`:t}var
|
|
3
|
-
`).trim()),{id:String(n),kind:r,...e,props:c?{text:c}:void 0}}function
|
|
4
|
-
`).map((
|
|
5
|
-
`);let
|
|
6
|
-
`),h||m){let
|
|
7
|
-
`)}else p.name;return{doc:{text:l,blockProps:c,marks:f,embeds:g},warnings:t}}function
|
|
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],
|
|
9
|
-
`),a=[];return i.forEach((s,l)=>{l>0&&a.push(j("w:r",{key:`br${l}`},j("w:br"))),a.push(j("w:r",{key:`l${l}`},j("w:t",{"xml:space":"preserve"},s)))}),j("w:p",{key:"pre"},...a)}return n.push(`embed \u7C7B\u578B ${o.type} \u5BFC\u51FA\u88C1\u526A`),j("w:p")}function md(o){let e=/<pre[^>]*>([\s\S]*)<\/pre>/.exec(o);return e?e[1].replace(/<[^>]+>/g,""):""}function hd(o){try{let e=pt(o.html),t=de(e,"tbody")??e;return j("w:tbl",{},j("w:tblPr",{},j("w:tblW",{"w:w":0,"w:type":"auto"})),...je(t,"tr").map((n,r)=>j("w:tr",{key:`r${r}`},...je(n,"td").map((i,a)=>j("w:tc",{key:`c${a}`},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(i)))))))))}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 id,Ca,Ma,Vr=Ft(()=>{To();Eo();Io();zt();id=o=>o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""");Ca={Heading1:"h1",Heading2:"h2",Heading3:"h3",heading1:"h1",heading2:"h2",heading3:"h3",title:"h1",Title:"h1"},Ma={center:"center",right:"right",left:"left",both:"left",distribute:"left"}});import{h as cs}from"weifuwu/vdom";var Li={"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=async(o,e)=>async t=>{let{name:n,size:r,className:i}=t;return cs("svg",{class:`wf-icon${i?" "+i:""}`,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"},Li[n].map(a=>cs("path",{d:a})))};import{h as ds}from"weifuwu/vdom";var Ye=async(o,e)=>async t=>{let{variant:n="primary",size:r="md",block:i,loading:a,disabled:s,type:l,onClick:c,children:f}=t,g=["wf-btn",`wf-btn--${n}`,`wf-btn--${r}`,i&&"wf-btn--block",a&&"wf-btn--loading"].filter(Boolean).join(" "),u=e?.i18n?.components?.Button??{};return ds("button",{id:t.id,title:t.title,class:g,type:l??"button",disabled:s||a||void 0,"aria-busy":a||void 0,onClick:c},a?[ds("span",{class:"wf-btn-spinner"}),u.loading??"\u52A0\u8F7D\u4E2D..."]:f)};import{h as on}from"weifuwu/vdom";var lo=async o=>async e=>{let{label:t,name:n,type:r="text",value:i,placeholder:a,required:s,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:i??"",placeholder:a,required:s||void 0,disabled:l||void 0,readonly:c||void 0,onInput:d,onChange:p,...h});if(!t&&!f&&!g)return m;let y=[];if(t){let v=[t];s&&v.push(on("span",{class:"wf-input-req"},"*")),y.push(on("label",{class:"wf-input-label"},v))}return y.push(m),f&&y.push(on("div",{class:"wf-input-err"},f)),g&&!f&&y.push(on("div",{class:"wf-input-hint"},g)),on("div",{class:`wf-input-wrap${f?" wf-input--err":""}`},y)};import{h as Gt}from"weifuwu/vdom";var Ri=async(o,e)=>async t=>{let{label:n,value:r,placeholder:i,required:a,disabled:s,error:l,hint:c,rows:f=3,maxLength:g,showCount:u,onInput:d}=t,p=Gt("textarea",{class:"wf-textarea",value:r??"",placeholder:i,required:a||void 0,disabled:s||void 0,rows:f,maxLength:g,onInput:d}),h=[];if(n){let m=[n];a&&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,y=g!=null&&m>g;h.push(Gt("div",{class:`wf-textarea-count${y?" 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 co(o){return"options"in o&&!("value"in o)}function Wo(o){return o?o.flatMap(e=>co(e)?e.options:[e]):[]}var Ni=async(o,e)=>async t=>{let{label:n,value:r,options:i,placeholder:a,required:s,disabled:l,error:c,onChange:f,children:g}=t,u=[];if(a&&u.push(Te("option",{value:"",disabled:!0},a)),i)for(let h of i)co(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:s||void 0,disabled:l||void 0,onChange:h=>f?.(h.target.value)},g??u),p=[];if(n){let h=[n];s&&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)},Oi=async(o,e)=>{let t=!1,n="",r=[],i=-1,a=!1,s;e.ui.useStableRef?.(()=>{},()=>{a=!0,s&&clearTimeout(s)});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 async p=>{let{label:h,value:m,options:y=[],placeholder:v,required:b,disabled:w,error:x,onChange:C,onSearch:$,multiple:T}=p,M=!!T,A=M?Array.isArray(m)?m:[]:[m],D=(J,G)=>{if(!G)return J;let q=G.toLowerCase();return J.flatMap(Q=>{if(co(Q)){let be=Q.options.filter(fe=>fe.label.toLowerCase().includes(q));return be.length?[{label:Q.label,options:be}]:[]}return Q.label.toLowerCase().includes(q)?[Q]:[]})},L=n&&$&&r.length>0?r:D(y,n),O=Wo(L),B=Wo(y),W=B.find(J=>J.value===m),K=B.filter(J=>A.includes(J.value)),I=async J=>{if(n=J,t=!0,i=0,e.render(),$&&J){let G=await $(J);G&&(r=G,e.render())}},S=J=>{if(!J.disabled)if(M){let G=Array.isArray(m)?[...m]:[],q=G.indexOf(J.value);q>=0?G.splice(q,1):G.push(J.value),C?.(G)}else n="",t=!1,e.render(),C?.(J.value)},k=J=>{if(!M)return;let G=Array.isArray(m)?[...m]:[];C?.(G.filter(q=>q!==J))},E=J=>{if(!w)if(J.key==="ArrowDown")J.preventDefault(),t=!0,i=Math.min(i+1,O.length-1),e.render();else if(J.key==="ArrowUp")J.preventDefault(),t=!0,i=Math.max(i-1,0),e.render();else if(J.key==="Enter"){J.preventDefault();let G=O[i];G&&S(G)}else J.key==="Escape"&&(J.preventDefault(),t=!1,n="",e.render())},P=M&&K.length>0?K.map(J=>Te("span",{class:"wf-select-tag",key:J.value},[J.label,Te("button",{type:"button",class:"wf-select-tag-close","aria-label":`\u79FB\u9664 ${J.label}`,onClick:G=>{G.stopPropagation(),k(J.value)}},Te(H,{name:"close",size:10}))])):[],z=M?"":t?n:W?.label??"",N=Te("div",{key:"select-trigger",class:`wf-select-search-trigger${w?" wf-select-search--disabled":""}${x?" wf-select--err":""}`,ref:f,role:"combobox","aria-haspopup":"listbox","aria-expanded":String(t),onClick:w?void 0:()=>{t=!0,e.render(),c?.focus()}},[...P,Te("input",{key:"select-search-input",ref:g,class:"wf-select-search-input",type:"text",value:M?"":t?n:W?.label??"",placeholder:K.length>0?void 0:v??"",disabled:w,readOnly:!t||void 0,onInput:J=>I(J.target.value),onFocus:()=>{w||(t=!0,e.render())},onBlur:()=>{s=setTimeout(()=>{a||(t=!1,n="",e.render())},150)},onKeyDown:E})]),U=[];if(h){let J=[h];b&&J.push(Te("span",{class:"wf-select-req"},"*")),U.push(Te("label",{class:"wf-select-label"},J))}let R=0,X=(J,G)=>{let q=M?A.includes(J.value):J.value===m,Q=Te("div",{class:`wf-select-search-opt${q?" wf-select-search-opt--sel":""}${J.disabled?" wf-select-search-opt--dis":""}${i===G?" wf-select-search-opt--hl":""}`,key:J.value,onMouseDown:be=>{be.preventDefault(),S(J)}},J.label);return R++,Q},Y=[];if(O.length>0)for(let J of L)if(co(J)){Y.push(Te("div",{class:"wf-select-search-group",key:`group-${J.label}`},J.label));for(let G of J.options)Y.push(X(G,R))}else Y.push(X(J,R));else n&&Y.push(Te("div",{class:"wf-select-search-empty"},"\u65E0\u5339\u914D"));let te=Te("div",{class:"wf-select-search-menu"},Y);return d(te),U.push(Te("div",{class:"wf-select-search"},[N])),x&&U.push(Te("div",{class:"wf-select-err"},x)),Te("div",{class:`wf-select-wrap${x?" wf-select--err":""}`},U)}},po=async(o,e)=>{let t=await Ni(o,e),n=await Oi(o,e);return r=>r.searchable?n(r):t(r)};import{h as An}from"weifuwu/vdom";var qo=async(o,e)=>async t=>{let{label:n,checked:r,disabled:i,onChange:a}=t,s=An("input",{type:"checkbox",class:"wf-checkbox-input",checked:r||void 0,disabled:i||void 0,onChange:a?c=>a(c.target.checked):void 0}),l=An("span",{class:"wf-checkbox-visual"});return n?An("label",{class:"wf-checkbox"},[s,l,An("span",{class:"wf-checkbox-label"},n)]):An("label",{class:"wf-checkbox"},[s,l])};import{h as Dn}from"weifuwu/vdom";var fo=async(o,e)=>async t=>{let{label:n,checked:r,disabled:i,onChange:a}=t,s=Dn("input",{type:"checkbox",class:"wf-switch-input",checked:r||void 0,disabled:i||void 0,role:"switch","aria-checked":String(!!r),onChange:a?f=>a(f.target.checked):void 0}),l=Dn("span",{class:"wf-switch-track"}),c=e?.i18n?.components?.Switch??{};return n?Dn("label",{class:"wf-switch"},[s,l,Dn("span",{class:"wf-switch-label"},n)]):Dn("label",{class:"wf-switch","aria-label":c.ariaLabel??"\u5207\u6362"},[s,l])};import{h as Ln}from"weifuwu/vdom";var Hi=async(o,e)=>async t=>{let{name:n,options:r=[],inline:i}=t,a=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"RadioGroup"}),s=c=>{let f=a?.controlled?.value!==void 0;a?.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:a?.value===c.value||void 0,disabled:c.disabled||void 0,onChange:()=>s(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${i?" wf-radio-group--inline":""}`},l)};import{h as Ie}from"weifuwu/vdom";function Bi(o,e,t,n){if(!t||!n)return o;let r=e.find(a=>a.key===t);if(!r||!r.sortable)return o;let i=[...o];return i.sort((a,s)=>{let l=a[t],c=s[t],f=r.sorter?r.sorter(l,c):String(l??"").localeCompare(String(c??""));return n==="desc"?-f:f}),i}var Ui=async(o,e)=>{let t=null,n={},r=(a,s,l)=>{t={row:a,col:s,value:String(l??"")},e.render()},i=()=>{if(t){let{row:a,col:s,value:l}=t;t=null,e.render(),n.onCellEdit?.(s,a,l,n.data?.[a])}};return async a=>{let{data:s=[],columns:l,onRowClick:c,sortKey:f,sortOrder:g,onSort:u,emptyText:d,rowSelection:p}=a;n.data=s,n.onCellEdit=a.onCellEdit;let h=Bi(s,l,f,g),m=k=>typeof k=="number"?k:typeof k=="string"&&/^\d+px$/.test(k)?Number(k.slice(0,-2)):140,y=new Map;{let k=0;for(let E of l)E.fixed==="left"&&(E.width===void 0&&console.warn(`[Table] \u56FA\u5B9A\u5217\u300C${E.label}\u300D\u672A\u6307\u5B9A width\u2014\u2014sticky \u504F\u79FB\u6309 140px \u4F30\u7B97\uFF08\u56FA\u5B9A\u5217\u5FC5\u987B\u663E\u5F0F width\uFF09`),y.set(E.key,k),k+=m(E.width))}let v=k=>{if(k.fixed==="left")return{position:"sticky",left:`${y.get(k.key)??0}px`,zIndex:2,background:"var(--wf-color-bg-elevated)"};if(k.fixed==="right")return{position:"sticky",right:"0px",zIndex:2,background:"var(--wf-color-bg-elevated)"}},b=(k,E)=>k[p?.rowKey??"id"]??E,w=p?.selectedRowKeys??[],x=new Set(w.map(String)),C=h.map((k,E)=>String(b(k,E))),$=C.length>0&&C.every(k=>x.has(k)),T=C.some(k=>x.has(k)),M=()=>{if(!p?.onChange)return;let k=$?[]:C.map(E=>h.find((P,z)=>String(b(P,z))===E));p.onChange($?[]:C,$?[]:k)},A=(k,E)=>{if(!p?.onChange)return;let P=String(b(k,E)),z=x.has(P)?w.filter(U=>String(U)!==P):[...w,P],N=z.map(U=>h.find((R,X)=>String(b(R,X))===String(U))).filter(Boolean);p.onChange(z,N)},D=p?Ie("th",{class:"wf-table-th wf-table-th--selection",scope:"col"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:$||void 0,indeterminate:T&&!$?"true":void 0,"aria-label":"\u5168\u9009",onChange:M})):null,L=(k,E)=>p?Ie("td",{class:"wf-table-td wf-table-td--selection"},Ie("input",{type:"checkbox",class:"wf-table-checkbox",checked:x.has(String(b(k,E)))||void 0,"aria-label":"\u9009\u62E9\u884C",onClick:P=>P.stopPropagation(),onChange:()=>A(k,E)})):null,O=l.map(k=>{let E=k.key===f&&g,P=g==="asc",z=k.label,N=k.sortable?Ie(H,{name:E?P?"sort-asc":"sort-desc":"sort",className:`wf-table-sort-icon${E?" wf-table-sort-icon--active":""}`}):null,U=k.sortable&&u?()=>u(k.key,E&&P?"desc":"asc"):void 0;return Ie("th",{class:`wf-table-th${k.sortable?" wf-table-th--sortable":""}${E?" wf-table-th--sorted":""}`,scope:"col",tabindex:k.sortable?0:void 0,style:{...k.width?{width:k.width}:{},...v(k)??{}},onClick:U,onKeyDown:U?R=>{(R.key==="Enter"||R.key===" ")&&(R.preventDefault(),U())}:void 0},[z,N].filter(Boolean))}),B=Ie("tr",{class:"wf-table-tr"},[D,...O].filter(Boolean)),W=Ie("thead",{class:"wf-table-thead"},B),K;if(a.loading){let k=a.loadingRows??3;K=Array.from({length:k},(E,P)=>Ie("tr",{class:"wf-table-tr wf-table-tr--loading",key:`loading-${P}`},l.map((z,N)=>Ie("td",{class:"wf-table-td",key:`${P}-${N}`},Ie("span",{class:"wf-skeleton wf-skeleton--text"})))))}else if(h.length===0&&d){let k=l.length+(p?1:0);K=[Ie("tr",{class:"wf-table-tr"},Ie("td",{class:"wf-table-td wf-table-empty",colspan:k,style:{textAlign:"center"}},d))]}else K=h.map((k,E)=>{let P=l.map(N=>{let U=k[N.key];if(N.editable)return t&&t.row===E&&t.col===N.key?Ie("td",{class:"wf-table-td wf-table-td--editing",key:`${E}-${N.key}`},Ie("input",{class:"wf-input wf-input--table-edit",value:t.value,"data-wf-edit":`${E}:${N.key}`,onInput:X=>{t.value=X.target.value},onKeyDown:X=>{X.key==="Enter"&&i(),X.key==="Escape"&&(t=null,e.render())},onBlur:()=>i()})):Ie("td",{class:"wf-table-td wf-table-td--editable",key:`${E}-${N.key}`,style:{cursor:"text",...v(N)??{}},onClick:()=>r(E,N.key,U)},N.render?N.render(U,k,E):String(U??""));let R=N.render?N.render(U,k,E):String(U??"");return Ie("td",{class:"wf-table-td",key:`${E}-${N.key}`,style:v(N)},R)}),z=L(k,E);return Ie("tr",{class:"wf-table-tr",onClick:c?()=>c(k,E):void 0,style:c?{cursor:"pointer"}:void 0},[z,...P].filter(Boolean))});let I=Ie("tbody",{class:"wf-table-tbody"},K),S=Ie("table",{class:"wf-table",style:a.minWidth?{minWidth:a.minWidth}:void 0},[W,I]);return Ie("div",{class:"wf-table-wrap"},S)}};import{h as Ot}from"weifuwu/vdom";var Xo=async(o,e)=>{let t=!1,n,r=null;return e.ui.useGlobalKey(i=>{i.key==="Escape"&&r?.open&&t&&n?.()}),e.ui.onUnmount?.(()=>{r&&r.close()}),async i=>{let{open:a,title:s,onClose:l,children:c,footer:f,width:g,closable:u=!0,maskClosable:d=!0}=i;n=l,t=!!a;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,y=s?Ot("div",{class:"wf-modal-header"},[s,m].filter(Boolean)):null,v=Ot("div",{class:"wf-modal-body"},c),b=f?Ot("div",{class:"wf-modal-footer"},f):null,w=Ot("div",{class:"wf-modal-content",onClick:C=>C.stopPropagation(),style:g?{minWidth:`min(${g}, calc(100vw - 32px))`,maxWidth:`min(${g}, calc(100vw - 32px))`}:void 0},[y,v,b].filter(Boolean)),x=Ot("div",{class:`wf-modal ${a?"wf-modal--enter":"wf-modal--exit"}`,role:"dialog","aria-modal":"true","aria-label":s??p.ariaLabel??"\u5F39\u7A97"},[h,w]);return a&&!r?r=e.ui.openPopup({key:"modal",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>x,onClose:()=>{r=null}}):!a&&r?(r.update(x),r.close(),r=null):r&&r.update(x),null}};import{createClientBrowser as ps}from"weifuwu/vdom";import{h as uo}from"weifuwu/vdom";import{renderToStream as zi}from"weifuwu/vdom";import{CommandApplier as Vi}from"weifuwu/vdom";import{createComponentRegistry as _i}from"weifuwu/vdom";var eu=ps();function Ki(o,e){return new Promise(t=>{let n=document.createElement("div");document.body.appendChild(n);let r=_i(),i=new Vi(n,document,r),a=!1,s=f=>{a||(a=!0,i.dispose(),n.remove(),t(f))},l={render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:ps()},c=uo(fs,{open:!0,message:o,...e,onConfirm:()=>s(!0),onCancel:()=>s(!1)});zi(c,l,r).pipeTo(new WritableStream({write(f){i.apply(f)}})).catch(()=>s(!1))})}var fs=async(o,e)=>async t=>{let{open:n=!1,title:r,message:i,confirmText:a,cancelText:s,variant:l="primary",width:c,maskClosable:f=!1,onConfirm:g,onCancel:u}=t,d=e?.i18n?.components?.Confirm??{},p=[uo(Ye,{variant:"secondary",size:"md",onClick:()=>u?.()},s??d.cancelText??"\u53D6\u6D88"),uo(Ye,{variant:l,size:"md",onClick:()=>g?.()},a??d.confirmText??"\u786E\u5B9A")];return uo(Xo,{open:n,title:r,onClose:u??t.onClose,maskClosable:f,footer:p,width:c,closable:!1},i)};import{createClientBrowser as ji}from"weifuwu/vdom";import{h as rn}from"weifuwu/vdom";var lu=ji();function Fi(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 Gi=async(o,e)=>{let t=null;return async n=>{let{toasts:r=[],onRemove:i,position:a="top-right",duration:s=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??s)||void 0,onClick:i?()=>i(u.id):void 0},[rn("span",{class:"wf-toast-icon"},rn(H,{name:Wi(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 ${Fi(a)}`,"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 Wi(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=async(o,e)=>async t=>{let{variant:n="info",closable:r,onClose:i,children:a}=t;if(!a)return null;let s=sn("span",{class:"wf-alert-icon"},sn(H,{name:qi(n)})),l=r?sn("button",{class:"wf-alert-close",onClick:i,type:"button","aria-label":"\u5173\u95ED"},sn(H,{name:"close"})):null,c=sn("span",{class:"wf-alert-msg"},a);return sn("div",{class:`wf-alert wf-alert--${n}`,role:"alert"},[s,c,l].filter(Boolean))};function qi(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 Xi=async(o,e)=>async 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 Yi=async(o,e)=>async t=>{let{icon:n=an(H,{name:"inbox"}),text:r="\u6682\u65E0\u6570\u636E",hint:i,children:a}=t,s=[an("div",{class:"wf-empty-icon"},n),an("div",{class:"wf-empty-text"},r)];return i&&s.push(an("div",{class:"wf-empty-hint"},i)),a&&s.push(an("div",{class:"wf-empty-action"},a)),an("div",{class:"wf-empty",role:"status"},s)};import{createClientBrowser as Ji}from"weifuwu/vdom";import{h as at}from"weifuwu/vdom";var Zi=async(o,e)=>{let t=e?.browser??Ji(),n=0,r=0,i=null,a=c=>{c&&(n=c.offsetLeft,r=c.offsetWidth,e.render())},s=()=>{i&&a(i.querySelector(".wf-tab--active"))},l=c=>{c&&(i=c,queueMicrotask(s))};return async 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=M=>{let A=h?.controlled?.value!==void 0;h?.setValue(M),A||c.onChange?.(M)},y=h?.value??f[0].key,v=(M,A)=>{if(A.stopPropagation(),M===y){let D=f.findIndex(O=>O.key===M),L=f[D+1]??f[D-1];L&&m(L.key)}u?.(M)},b=M=>{let A=M.currentTarget,D=Array.from(A.querySelectorAll(".wf-tab")),L=D.indexOf(t?.activeElement()??null);if(L<0||!h)return;let O=L;if(M.key==="ArrowRight")O=(L+1)%D.length;else if(M.key==="ArrowLeft")O=(L-1+D.length)%D.length;else if(M.key==="Home")O=0;else if(M.key==="End")O=D.length-1;else return;M.preventDefault();let B=f[O];B&&B.key!==f[L].key&&(m(B.key),D[O].focus(),a(D[O]))},w=f.map(M=>at("button",{class:`wf-tab${M.key===y?" wf-tab--active":""}`,key:M.key,role:"tab",tabindex:M.key===y?0:-1,"aria-selected":M.key===y?"true":"false",onClick:M.key!==y?(A=>{a(A?.currentTarget),m(M.key)}):void 0},[M.label,g&&M.closable!==!1?at("span",{class:"wf-tab-close",role:"button","aria-label":`\u5173\u95ED ${M.label}`,tabindex:-1,onClick:A=>v(M.key,A)},at("svg",{viewBox:"0 0 24 24",width:12,height:12,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},at("path",{d:"M18 6L6 18M6 6l12 12"}))):null])),x=d?at("button",{key:"wf-tab-add",class:"wf-tab-add",role:"tab","aria-label":"\u65B0\u589E\u6807\u7B7E\u9875",onClick:()=>p?.()},at("svg",{viewBox:"0 0 24 24",width:14,height:14,fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","aria-hidden":"true"},at("path",{d:"M12 5v14M5 12h14"}))):null,C=at("span",{key:"wf-tab-ink",class:"wf-tab-ink",style:{transform:`translateX(${n}px)`,width:`${r}px`},"aria-hidden":"true"}),$=f.find(M=>M.key===y),T=$?.content?at("div",{class:"wf-tab-content",role:"tabpanel"},$.content):null;return at("div",{class:"wf-tabs",role:"tablist",onKeyDown:b},[at("div",{class:"wf-tab-list",ref:l},[...w,x,C]),T].filter(Boolean))}};import{h as ln}from"weifuwu/vdom";var Qi=async(o,e)=>{let t=null;return async n=>{let{items:r,activeKey:i,onChange:a,fixed:s,className:l}=n,c=i!==void 0;c&&!a&&console.warn("[TabBar] activeKey \u53D7\u63A7\u4F20\u5165\u4F46\u672A\u914D onChange\u2014\u2014\u70B9\u51FB\u9759\u9ED8\u5931\u6548");let f=c?i:t??r[0]?.key??null,g=d=>{let p=r.findIndex(b=>b.key===f),h=d.key==="ArrowRight"?1:d.key==="ArrowLeft"?-1:0;if(h===0)return;d.preventDefault();let m=-1;for(let b=1;b<=r.length;b++){let w=(p+h*b+r.length)%r.length;if(!r[w]?.disabled){m=w;break}}if(m===-1)return;let y=r[m];c||(t=y.key),a?.(y.key),e.render(),e.browser?.byId?.(`wf-tab-${y.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),a?.(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",s?"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 el=async(o,e)=>{let t=!1,n="",r=null;e.ui.onUnmount?.(()=>{r&&r.close()});let i;return e.ui.useGlobalKey(a=>{a.key==="Escape"&&r?.open&&t&&i?.()}),async a=>{let{open:s,items:l,onSelect:c,onClose:f,cancelText:g,title:u}=a;t=s,i=f;let d=b=>{let w=l.findIndex(C=>C.key===n),x=b.key==="ArrowDown"?1:b.key==="ArrowUp"?-1:0;if(x!==0){b.preventDefault();let C=-1;for(let $=1;$<=l.length;$++){let T=(w+x*$+l.length)%l.length;if(!l[T]?.disabled){C=T;break}}if(C===-1)return;n=l[C].key,e.render();return}if(b.key==="Enter"&&n){let C=l.find($=>$.key===n);C&&!C.disabled&&(c?.(C.key),f())}};l.some(b=>b.key===n)||(n=l[0]?.key??"");let p=Pt("div",{class:"wf-actionsheet-overlay",onClick:f}),h=l.map(b=>{let w=typeof b.icon=="string"?Pt(H,{name:b.icon,size:18,className:"wf-actionsheet-icon"}):b.icon;return Pt("button",{key:b.key,type:"button",role:"menuitem",class:["wf-actionsheet-item",b.danger?"wf-actionsheet-item--danger":"",b.disabled?"wf-actionsheet-item--disabled":""].filter(Boolean).join(" "),disabled:b.disabled||void 0,onClick:b.disabled?void 0:()=>{c?.(b.key),f()}},[w??null,Pt("span",{class:"wf-actionsheet-item-label"},b.label)])}),m=Pt("button",{type:"button",class:"wf-actionsheet-cancel",onClick:f},g??"\u53D6\u6D88"),y=Pt("div",{class:"wf-actionsheet-panel",role:"menu","aria-label":u??"\u64CD\u4F5C\u9762\u677F",onKeyDown:d,onClick:b=>b.stopPropagation()},[u?Pt("div",{class:"wf-actionsheet-title"},u):null,...h,Pt("div",{class:"wf-actionsheet-divider"}),m]),v=Pt("div",{class:`wf-actionsheet ${s?"wf-actionsheet--enter":"wf-actionsheet--exit"}`,role:"dialog","aria-modal":"true","aria-label":u??"\u64CD\u4F5C\u9762\u677F",tabIndex:-1},[p,y]);return s&&!r?r=e.ui.openPopup({key:"actionsheet",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>v,onClose:()=>{r=null}}):!s&&r?(r.update(v),r.close(),r=null):r&&r.update(v),null}};import{h as St}from"weifuwu/vdom";var tl=async(o,e)=>{let t=null,n=r=>{t=r};return async r=>{let{value:i="",onChange:a,variables:s=[],values:l={},readOnly:c,label:f,showPreview:g=!0,className:u}=r,d=v=>{let b=`{{${v}}}`;if(!a)return;let w=t;if(!w){a(i+b);return}let x=w.selectionStart??i.length,C=w.selectionEnd??i.length,$=i.slice(0,x)+b+i.slice(C);a($),queueMicrotask(()=>{w.focus();let T=x+b.length;w.setSelectionRange(T,T)})},p=i.replace(/\{\{([a-zA-Z0-9_]+)\}\}/g,(v,b)=>l[b]??v),h=s.length>0?St("div",{class:"wf-prompt-chips"},[St("span",{class:"wf-prompt-chips-hint"},"\u63D2\u5165\u53D8\u91CF\uFF1A"),...s.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:i,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:a?v=>a(v.target.value):void 0}),y=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,y])}};import{h as Zo}from"weifuwu/vdom";var nl=async(o,e)=>{let t=null,n=l=>{t=l},r=null,i=null,a=0,s=!1;return e.ui.onUnmount?.(()=>{i&&i.close()}),async l=>{let{trigger:c,items:f=[]}=l;r=e.ui.useOpen({open:l.open,onOpenChange:l.onOpenChange,name:"Dropdown"});let g=!!r?.open;g&&!s&&(a=0),s=g;let u=h=>{let m=h.key;if(m==="Escape")return;let y=f.map((w,x)=>w.disabled?-1:x).filter(w=>w>=0);if(!y.length)return;let v=y.indexOf(a),b=v>=0?v:0;if(m==="ArrowDown"||m==="ArrowRight")h.preventDefault(),a=y[Math.min(b+1,y.length-1)],e.render();else if(m==="ArrowUp"||m==="ArrowLeft")h.preventDefault(),a=y[Math.max(b-1,0)],e.render();else if(m==="Home")h.preventDefault(),a=y[0],e.render();else if(m==="End")h.preventDefault(),a=y[y.length-1],e.render();else if(m==="Enter"||m===" "){let w=f[a];w&&!w.disabled&&(h.preventDefault(),w.onClick?.(),r?.setOpen(!1))}},d=f.map((h,m)=>Zo("button",{class:["wf-dropdown-item",h.variant==="danger"?" wf-dropdown-item--danger":"",m===a&&g?" wf-dropdown-item--hl":""].filter(Boolean).join(" "),key:h.value??m,disabled:h.disabled||void 0,role:"menuitem","aria-selected":String(m===a&&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&&!i?i=e.ui.openPopup({anchor:()=>t,content:()=>p,onClose:()=>{i=null,r?.setOpen(!1)}}):!r?.open&&i?(i.close(),i=null):i&&i.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 ol=async(o,e)=>async t=>{let{total:n,pageSize:r=20}=t,i=e?.ui?.useControlled({value:t.page,onChange:t.onChange,name:"Pagination"}),a=i?.value??1,s=u=>{let d=i?.controlled?.value!==void 0;i?.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${a<=1?" wf-page-btn--disabled":""}`,disabled:a<=1,"aria-label":l.prevAria??"\u4E0A\u4E00\u9875",onClick:a>1?()=>s(a-1):void 0},Wt(H,{name:"chevron-left"})));let g=rl(a,c);for(let u of g)u==="..."?f.push(Wt("span",{class:"wf-page-ellipsis"},"...")):f.push(Wt("button",{class:`wf-page-btn${u===a?" wf-page-btn--active":""}`,"aria-current":u===a?"page":void 0,onClick:u!==a?()=>s(u):void 0},String(u)));return f.push(Wt("button",{class:`wf-page-btn${a>=c?" wf-page-btn--disabled":""}`,disabled:a>=c,"aria-label":l.nextAria??"\u4E0B\u4E00\u9875",onClick:a<c?()=>s(a+1):void 0},Wt(H,{name:"chevron-right"}))),Wt("nav",{class:"wf-pagination","aria-label":l.ariaLabel??"\u5206\u9875"},f)};function rl(o,e){if(e<=7)return Array.from({length:e},(i,a)=>a+1);let t=[1];o>3&&t.push("...");let n=Math.max(2,o-1),r=Math.min(e-1,o+1);for(let i=n;i<=r;i++)t.push(i);return o<e-2&&t.push("..."),t.push(e),t}import{h as sl}from"weifuwu/vdom";var Qo=async(o,e)=>async t=>{let{variant:n="default",padding:r="md",clickable:i,hover:a,active:s,onClick:l,className:c,id:f,style:g,children:u}=t,d=["wf-card",`wf-card--${n}`,`wf-card--pad-${r}`,i&&"wf-card--clickable",a&&"wf-card--hover",s&&"wf-card--active",(i||a)&&"wf-elevate"].filter(Boolean).join(" ");return sl("div",{class:c?`${d} ${c}`:d,id:f,style:g,onClick:l,role:i?"button":void 0,tabindex:i?0:void 0,onKeyDown:i?p=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),l?.())}:void 0},u)};import{h as er}from"weifuwu/vdom";var al=async(o,e)=>async t=>{let{variant:n="default",dot:r,children:i,count:a,overflowCount:s=99,showZero:l=!1}=t;if(r)return er("span",{class:`wf-badge-dot wf-badge-dot--${n}`});if(a!=null){if(a===0&&!l)return null;let c=a>s?`${s}+`:String(a);return er("span",{class:`wf-badge wf-badge--count wf-badge--${n}`,"aria-label":`${a>s?`\u8D85\u8FC7 ${s}`:a} \u6761`},c)}return er("span",{class:`wf-badge wf-badge--${n}`},i??"")};import{h as us}from"weifuwu/vdom";var ms=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899"];function il(o){let e=0;for(let t=0;t<o.length;t++)e=o.charCodeAt(t)+((e<<5)-e);return ms[Math.abs(e)%ms.length]}var cn=async(o,e)=>async t=>{let{name:n="",src:r,size:i="md",color:a}=t,s=Array.from(n.trim())[0]?.toUpperCase()??"?";return r?us("img",{class:`wf-avatar wf-avatar--${i}`,src:r,alt:n}):us("div",{class:`wf-avatar wf-avatar--${i}`,style:{background:a??il(n)}},s)};import{h as mo}from"weifuwu/vdom";var ll=async(o,e)=>async t=>{let{closable:n,onClose:r,variant:i="default",children:a}=t,s=n?mo("button",{class:"wf-tag-close",onClick:r,type:"button","aria-label":"\u79FB\u9664"},mo(H,{name:"close"})):null;return mo("span",{class:`wf-tag wf-tag--${i}`},[mo("span",{class:"wf-tag-text"},a),s].filter(Boolean))};import{h as Ht}from"weifuwu/vdom";var cl=async(o,e)=>{let t=e.ui.useTween(0,{duration:400,ease:"easeOutCubic"}),n=0,r=null,i,a=()=>{r&&(clearInterval(r),r=null)};return async s=>{let{label:l,value:c,trend:f,trendLabel:g,icon:u,onClick:d,animate:p,countdown:h,onFinish:m}=s;i=m;let y=typeof c=="number"?c:0;p&&typeof c=="number"?t.reset(y):t.value=y,h!==void 0?(n=Math.max(0,Math.ceil((h-Date.now())/1e3)),r||(r=setInterval(()=>{n=Math.max(0,Math.ceil((h-Date.now())/1e3)),n<=0&&(a(),i?.()),e.render()},1e3))):r&&a();let v=h!==void 0?(()=>{let w=Math.floor(n/3600),x=Math.floor(n%3600/60),C=n%60,$=T=>String(T).padStart(2,"0");return w>0?`${$(w)}:${$(x)}:${$(C)}`:`${$(x)}:${$(C)}`})():String(typeof c=="number"?t.value:c??""),b=[];return u&&b.push(Ht("div",{class:"wf-stat-icon"},u)),b.push(Ht("div",{class:"wf-stat-value wf-nums"},v)),b.push(Ht("div",{class:"wf-stat-label"},l)),f&&b.push(Ht("div",{class:`wf-stat-trend wf-stat-trend--${f}`},[Ht("span",{class:"wf-stat-trend-arrow"},Ht(H,{name:f==="up"?"arrow-up":"arrow-down"})),g?Ht("span",{class:"wf-stat-trend-label"},g):null].filter(Boolean))),Ht("div",{class:`wf-stat${d?" wf-stat--clickable":""}${d?" wf-elevate":""}`,onClick:d,role:d?"button":void 0,tabindex:d?0:void 0,onKeyDown:d?w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),d())}:void 0},b)}};import{h as Bt}from"weifuwu/vdom";var dl=async(o,e)=>async t=>{let{items:n=[],active:r,current:i=0}=t,a=r??n[i]?.key,s=n.map((l,c)=>{let f=n.findIndex(v=>v.key===a),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,y=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,y].filter(Boolean))});return Bt("div",{class:"wf-steps",role:"list"},s)};import{h as pl}from"weifuwu/vdom";async function fl(o,e){let t={};for(let[n,r]of Object.entries(e)){let i=o[n]??"";for(let a of r){if(a.required&&!String(i).trim()){t[n]=a.message;break}if(a.pattern&&!a.pattern.test(String(i))){t[n]=a.message;break}if(a.minLength!=null&&String(i).length<a.minLength){t[n]=a.message;break}if(a.maxLength!=null&&String(i).length>a.maxLength){t[n]=a.message;break}if(a.validator){let s=await a.validator(i);if(s!==!0){t[n]=typeof s=="string"?s:a.message;break}}}}return t}var ul=async(o,e)=>async t=>{let{validation:n,onSubmit:r,onError:i,children:a}=t;return pl("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 fl(g,n);if(Object.keys(u).length>0){i?.(u);return}i?.({})}await r?.(g)},noValidate:n?!0:void 0},a)};import{h as Rn}from"weifuwu/vdom";var dn=async(o,e)=>async t=>{let{label:n,required:r,error:i,hint:a,children:s}=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(s),i&&l.push(Rn("div",{class:"wf-field-err"},i)),a&&!i&&l.push(Rn("div",{class:"wf-field-hint"},a)),Rn("div",{class:`wf-field${i?" wf-field--err":""}`},l)};import{h as Ce}from"weifuwu/vdom";import{createClientBrowser as hs}from"weifuwu/vdom";var ml=async(o,e)=>{let t=null,n=null,r=null,i=null,a=!1,s=!1,l=null,c=null,f=b=>{t=b},g=b=>{n=b},u=b=>{r=b},d=()=>{t&&i!==null&&Number(t.value)!==i&&(t.value=String(i))};(e.browser??hs()).onFormRestore?.(d);let h=b=>{a!==b&&(a=b,e.render())},m=null,y=b=>{a&&!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:()=>b,onClose:()=>{m=null,a&&h(!1)}}):!a&&m?(m.close(),m=null):m&&m.update(b)},v=e.browser??hs();return async b=>{let{label:w,value:x=0,min:C=0,max:$=100,step:T=1,onChange:M,onChangeEnd:A,disabled:D,marks:L,range:O,onRangeChange:B,onRangeChangeEnd:W}=b,K=Number(Array.isArray(x)?x[0]:x),I=Array.isArray(x)?[Math.min(Number(x[0]),Number(x[1])),Math.max(Number(x[0]),Number(x[1]))]:[K,K],S=$-C,k=pe=>S>0?Math.min(100,Math.max(0,(pe-C)/S*100)):0,E=k(K),P=k(I[0]),z=k(I[1]),N=S>0&&T>0?T/S*100:1,U=pe=>{let Ae=C+Number(pe)/100*S,Se=T>0?Math.round((Ae-C)/T)*T+C:Ae;return Math.min($,Math.max(C,Se))};i=E;let R=9,X=pe=>`calc(${R}px + (100% - ${R*2}px) * ${pe})`,Y=(pe,Ae)=>R+Ae*(pe-R*2),te=`calc(${R}px + (100% - ${R*2}px) * ${E/100})`,J=`linear-gradient(to right, var(--wf-color-primary) ${te}, var(--wf-color-border) ${te})`;if(l=null,a&&!D){let pe=O?c==="lo"?n:r:t,Ae=O?c==="lo"?P:z:E;if(pe){let Se=pe.getBoundingClientRect();Se.width>0&&(l={left:Math.round(Se.left+Y(Se.width,Ae/100)),top:Math.round(Se.top-36)})}}if(O){let pe=ke=>Math.min(ke,I[1]-T),Ae=ke=>Math.max(ke,I[0]+T),Se=c==="lo"?I[0]:I[1],En=(ke,so,vt,V)=>Ce("input",{type:"range",class:`wf-slider-input ${ke==="hi"?"wf-slider-input--hi":"wf-slider-input--lo"}`,ref:ke==="lo"?g:u,value:vt,min:0,max:100,step:N,disabled:D||void 0,autocomplete:"off","aria-label":ke==="lo"?`${w??"\u8303\u56F4"}\u4E0B\u9650`:`${w??"\u8303\u56F4"}\u4E0A\u9650`,"aria-disabled":D?"true":void 0,onInput:D?void 0:_=>{let Z=V(U(Number(_.target.value)));B?.([ke==="lo"?Z:I[0],ke==="hi"?Z:I[1]]),m?.refresh()},onChange:D?void 0:_=>{let Z=V(U(Number(_.target.value)));B?.([ke==="lo"?Z:I[0],ke==="hi"?Z:I[1]]),m?.refresh()},onPointerDown:D?void 0:()=>{s=!0,c=ke,h(!0)},onPointerUp:D?void 0:_=>{s=!1;let Z=V(U(Number(_.target.value)));W?.([ke==="lo"?Z:I[0],ke==="hi"?Z:I[1]]),h(!1)},onPointerCancel:D?void 0:()=>{s=!1,h(!1)},onMouseEnter:D?void 0:()=>{c=ke,h(!0)},onMouseLeave:D?void 0:()=>{s||h(!1)},onFocus:D?void 0:()=>{c=ke,h(!0)},onBlur:D?void 0:()=>{s||h(!1)}}),bt=`calc((100% - ${R*2}px) * ${(z-P)/100})`,Vo=Ce("span",{class:"wf-slider-value"},`${I[0]} - ${I[1]}`),wt=D?null:Ce("div",{class:"wf-slider-tip"},String(Se)),_o=L?.length?Ce("div",{class:"wf-slider-marks"},L.map(ke=>{let so=k(ke.value);return Ce("div",{key:`mark-${ke.value}`,class:"wf-slider-mark",style:{left:X(so/100)}},[Ce("span",{class:"wf-slider-mark-dot"}),ke.label?Ce("span",{class:"wf-slider-mark-label"},ke.label):null])})):null,Je=Ce("div",{class:"wf-slider-track wf-slider-range"},[Ce("div",{class:"wf-slider-range-fill",style:{left:X(P/100),width:bt}}),En("lo",I[0],P,pe),En("hi",I[1],z,Ae),_o]),ro=Ce("div",{class:"wf-slider"},[Je,Vo]);return y(wt),w?Ce("div",{class:"wf-slider-wrap"},[Ce("label",{class:"wf-slider-label"},w),ro]):Ce("div",{class:"wf-slider-wrap"},[ro])}let G=Ce("input",{type:"range",class:["wf-slider-input",D?"wf-slider-input--dis":""].filter(Boolean).join(" "),ref:f,"aria-expanded":String(a),value:E,min:0,max:100,step:N,disabled:D||void 0,autocomplete:"off","aria-label":w,"aria-disabled":D?"true":void 0,style:{background:J},onInput:D||!M?void 0:pe=>{M(U(Number(pe.target.value))),m?.refresh()},onChange:D||!M?void 0:pe=>{M(U(Number(pe.target.value))),m?.refresh()},onPointerDown:D?void 0:()=>{s=!0,h(!0)},onPointerUp:D?void 0:pe=>{s=!1,A?.(U(Number(pe.target.value))),h(!1)},onPointerCancel:D?void 0:()=>{s=!1,h(!1)},onMouseEnter:D?void 0:()=>h(!0),onMouseLeave:D?void 0:()=>{s||h(!1)},onFocus:D?void 0:()=>h(!0),onBlur:D?void 0:()=>{s||h(!1)}}),q=Ce("span",{class:"wf-slider-value"},String(K)),Q=D?null:Ce("div",{class:"wf-slider-tip"},String(K)),be=L?.length?Ce("div",{class:"wf-slider-marks"},L.map(pe=>{let Ae=S>0?Math.min(100,Math.max(0,(pe.value-C)/S*100)):0;return Ce("div",{key:`mark-${pe.value}`,class:"wf-slider-mark",style:{left:X(Ae/100)}},[Ce("span",{class:"wf-slider-mark-dot"}),pe.label?Ce("span",{class:"wf-slider-mark-label"},pe.label):null])})):null,fe=Ce("div",{class:"wf-slider-track"},[G,be]),me=Ce("div",{class:"wf-slider"},[fe,q]);return y(Q),w?Ce("div",{class:"wf-slider-wrap"},[Ce("label",{class:"wf-slider-label"},w),me]):Ce("div",{class:"wf-slider-wrap"},[me])}};import{h as pn}from"weifuwu/vdom";var hl=async(o,e)=>{let t=!1;return async n=>{let{value:r,placeholder:i="\u641C\u7D22...",onInput:a,onClear:s,disabled:l}=n,c=r!==void 0,f=r??"",g=c&&f&&s?pn("button",{class:"wf-search-clear",type:"button","aria-label":"\u6E05\u9664",onClick:s},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:i,disabled:l||void 0,"aria-disabled":l?"true":void 0,onInput:d=>{t||d.isComposing||a?.(d)},onCompositionStart:()=>{t=!0},onCompositionEnd:d=>{t=!1,a?.(d)}}),g].filter(Boolean))}};import{h as gs}from"weifuwu/vdom";var gl=async(o,e)=>async t=>{let{options:n,size:r="md",block:i,ariaLabel:a}=t,s=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"SegmentedControl"}),l=f=>{let g=s?.controlled?.value!==void 0;s?.setValue(f),g||t.onChange?.(f)},c=["wf-segmented",r==="sm"&&"wf-segmented--sm",i&&"wf-segmented--block"].filter(Boolean).join(" ");return gs("div",{class:c,role:"group","aria-label":a},n.map(f=>gs("button",{type:"button",class:`wf-segmented-option${f.value===s?.value?" wf-segmented-option--active":""}`,"aria-pressed":f.value===s?.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 yl=async(o,e)=>async t=>{let{value:n,max:r=100,label:i,showValue:a,status:s="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":""}${s!=="default"?` wf-progress--${s}`:""}`,role:"progressbar","aria-valuenow":c?void 0:Math.round(n),"aria-valuemin":0,"aria-valuemax":Math.round(r),"aria-label":i??g.ariaLabel??"\u8FDB\u5EA6"},[Nn("div",{class:`wf-progress-fill${s!=="default"?` wf-progress-fill--${s}`:""}`,style:c?void 0:{width:`${f}%`}})]);if(!i&&!a)return u;let d=[];return i&&d.push(Nn("span",{class:"wf-progress-label"},i)),d.push(u),a&&!c&&d.push(Nn("span",{class:"wf-progress-value"},`${Math.round(f)}%`)),Nn("div",{class:"wf-progress-wrap"},d)};import{createClientBrowser as bl}from"weifuwu/vdom";import{h as On}from"weifuwu/vdom";var wl=async(o,e)=>{let t=e.browser??bl(),n=[],r=[],i=new Map,a=s=>{let l=i.get(s);return l||(l=c=>{c&&(r[s]=c)},i.set(s,l)),l};return async s=>{let{items:l=[],active:c,onChange:f,multiple:g=!1}=s;n.length===0&&l.length>0&&(n=l.map(b=>b.key));let u=c!==void 0,d=u?c:n,p=b=>d.includes(b),h=b=>{u?f?.(b):(n=b,e.render())},m=b=>{p(b)?h(d.filter(w=>w!==b)):h(g?[...d,b]:[b])},y=b=>{let w=t?.activeElement()??null,x=r.indexOf(w);if(x<0)return;let C=x;if(b.key==="ArrowDown"||b.key==="ArrowRight")C=(x+1)%l.length;else if(b.key==="ArrowUp"||b.key==="ArrowLeft")C=(x-1+l.length)%l.length;else return;b.preventDefault(),r[C]?.focus()};if(l.length===0)return null;let v=l.map((b,w)=>{let x=p(b.key);return On("div",{class:`wf-accordion-item${x?" wf-accordion-item--open":""}`,key:b.key},[On("button",{type:"button",class:"wf-accordion-summary",ref:a(w),disabled:b.disabled||void 0,"aria-expanded":x?"true":"false",onClick:b.disabled?void 0:()=>m(b.key)},[b.title,On(H,{name:"chevron-down",size:14,className:"wf-accordion-arrow"})]),x&&b.content?On("div",{class:"wf-accordion-content"},b.content):null].filter(Boolean))});return On("div",{class:"wf-accordion",onKeyDown:y},v)}};import{h as Hn}from"weifuwu/vdom";var vl=async(o,e)=>async t=>{let{title:n,sub:r,display:i,children:a}=t;return Hn("div",{class:"wf-page-head"},[Hn("div",{class:"wf-page-head-left"},[Hn("h2",{class:`wf-page-title${i?" wf-page-title--display":""}`},n),r?Hn("p",{class:"wf-page-sub"},r):null].filter(Boolean)),a?Hn("div",{class:"wf-page-head-actions"},a):null].filter(Boolean))};import{h as Bn}from"weifuwu/vdom";var xl=async(o,e)=>async t=>{let{items:n}=t,r=n.flatMap((a,s)=>{let l=s===n.length-1,c=l?Bn("span",{class:"wf-breadcrumb-current","aria-current":"page"},a.label):a.href?Bn("a",{class:"wf-breadcrumb-link",href:a.href},a.label):Bn("span",{class:"wf-breadcrumb-text"},a.label);return l?c:[c,Bn("span",{class:"wf-breadcrumb-sep","aria-hidden":"true"},"/")]}),i=e?.i18n?.components?.Breadcrumb??{};return Bn("nav",{class:"wf-breadcrumb","aria-label":i.ariaLabel??"\u9762\u5305\u5C51"},r)};import{h as tr}from"weifuwu/vdom";var kl=async(o,e)=>async 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 ys(o){return o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}var nr=async(o,e)=>{let t=e?.i18n?.components?.FileUpload??{},n=null,r=d=>{d&&(n=d)},i=new Map,a=d=>`${d.name}:${d.size}`,s=d=>{if(!d.type.startsWith("image/"))return;let p=a(d),h=i.get(p);return!h&&typeof URL<"u"&&URL.createObjectURL&&(h=URL.createObjectURL(d),i.set(p,h)),h},l=d=>{if(!d){for(let p of i.values())URL.revokeObjectURL?.(p);i.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 async d=>{Object.assign(f,d);let{accept:p,multiple:h,maxSize:m,disabled:y,error:v,hint:b,value:w,onChange:x,children:C,uploading:$,progress:T}=d,M=w??[];w!==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 A=I=>{let S=I.target,k=Array.from(S.files??[]);m&&k.filter(P=>P.size>m).length>0||(x?.(k),S.value="")},D=I=>{let S=M.filter((k,E)=>E!==I);x?.(S)},L=Re("input",{type:"file",class:"wf-upload-input",accept:p||void 0,multiple:h||void 0,disabled:y||void 0,onChange:A,style:{display:"none"},ref:r}),O=Re("div",{class:`wf-upload-zone${y?" wf-upload-zone--disabled":""}${v?" wf-upload-zone--err":""}${g?" wf-upload-zone--drag":""}`,onClick:y?void 0:()=>n?.click(),...u},C??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 "}${ys(m)}`):null].filter(Boolean))),B=M.length>0?Re("ul",{class:"wf-upload-list"},M.map((I,S)=>{let k=s(I),E=[k?Re("img",{class:"wf-upload-thumb",src:k,alt:I.name}):null,Re("span",{class:"wf-upload-item-info"},[Re("span",{class:"wf-upload-item-name"},I.name),Re("span",{class:"wf-upload-item-size"},ys(I.size))]),Re("button",{class:"wf-upload-item-remove","aria-label":`${t.remove??"\u5220\u9664"} ${I.name}`,onClick:()=>D(S)},Re(H,{name:"trash"}))];return Re("li",{class:"wf-upload-item",key:I.name+I.size},E.filter(Boolean))})):null,W=$?Re("div",{class:"wf-upload-progress",role:"progressbar","aria-valuenow":T??0},Re("div",{class:"wf-upload-progress-fill",style:{width:`${T??0}%`}})):null,K=[L,O,B,W];return v&&K.push(Re("div",{class:"wf-upload-err"},v)),b&&!v&&K.push(Re("div",{class:"wf-upload-hint"},b)),Re("div",{class:"wf-upload",ref:l},K)}};import{h as ve}from"weifuwu/vdom";function Cl(o){return o===void 0?"":o<1024?`${o}B`:o<1024*1024?`${(o/1024).toFixed(1)}KB`:`${(o/(1024*1024)).toFixed(1)}MB`}function Ml(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 Pl=async(o,e)=>{let t=null,n=i=>{i&&(t=i)},r=()=>t?.click();return async i=>{let{entries:a=[],path:s="/",loading:l=!1,openFile:c=null,editValue:f="",saving:g=!1,emptyText:u="\u7A7A\u76EE\u5F55"}=i,d=s==="/"?[]:s.split("/").filter(Boolean),p=y=>{let v=y.target,b=v.files?.[0];v.value="",b&&i.onUpload?.(b)},h=(y,v)=>ve("button",{type:"button",class:"wf-filetree-crumb",onClick:v},y),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("/",()=>i.onOpenDir?.("/")),...d.map((y,v)=>{let b=d.slice(0,v+1).join("/");return ve("span",{class:"wf-filetree-crumb-wrap"},[m(),h(y,()=>i.onOpenDir?.(b))])})]),ve("div",{class:"wf-filetree-actions"},[...i.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:i.accept,onChange:p})]:[],...i.onRefresh?[ve(Ye,{size:"sm",variant:"ghost",onClick:i.onRefresh},[ve(H,{name:"refresh",size:13})," \u5237\u65B0"])]:[]])]),c?ve("div",{class:"wf-filetree-editor"},[ve("div",{class:"wf-filetree-editor-head"},[i.onBack?ve(Ye,{size:"sm",variant:"ghost",onClick:i.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":""}`),i.onSave?ve(Ye,{size:"sm",variant:"primary",disabled:g||i.onEditChange===void 0,onClick:()=>i.onSave?.(f)},g?"\u4FDD\u5B58\u4E2D...":"\u4FDD\u5B58"):null]),i.onEditChange?ve("textarea",{class:"wf-filetree-editor-area",rows:14,value:f,spellcheck:!1,onInput:y=>i.onEditChange?.(y.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"):a.length===0?ve("div",{class:"wf-filetree-empty wf-text-secondary"},u):a.map(y=>ve("button",{type:"button",key:y.name,class:"wf-filetree-item",onClick:()=>y.type==="dir"?i.onOpenDir?.(s==="/"?y.name:`${s}/${y.name}`):i.onOpenFile?.(s==="/"?y.name:`${s}/${y.name}`)},[ve(H,{name:y.type==="dir"?"folder":"file",size:14,className:y.type==="dir"?"wf-filetree-dir":"wf-filetree-file"}),ve("span",{class:"wf-filetree-name"},y.name),ve("span",{class:"wf-filetree-meta"},[y.type==="file"&&y.size!==void 0?Cl(y.size):"",y.mtime?` \xB7 ${Ml(y.mtime)}`:""])])))])}};import{h as Me}from"weifuwu/vdom";import{createClientBrowser as Sl}from"weifuwu/vdom";import{h as Oe}from"weifuwu/vdom";var or=async(o,e)=>{let t=e.browser??Sl(),n=null,r=[],i=!1,a=null,s=null,l=null,c=(u,d,p)=>{d&&!l?l=e.ui.openPopup({key:"menu-popup",anchor:()=>s,placement:"right",gap:6,content:p,onClose:()=>{l=null,a&&(a=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 async u=>{let{items:d,onSelect:p,activeKey:h,className:m,openKeys:y,onOpenChange:v,collapsible:b,collapsed:w,onCollapseChange:x}=u,C=y!==void 0,$=w!==void 0,T=new Set(C?y:r),M=$?!!w:i,A=k=>{C?v?.(k):(r=k,e.render())},D=(k,E)=>{let P=E!=null?E?[...T,k]:[...T].filter(z=>z!==k):T.has(k)?[...T].filter(z=>z!==k):[...T,k];A([...new Set(P)])},L=()=>{let k=!M;$?x?.(k):(i=k,e.render())},O=k=>{let E=T.has(k.key)&&!M,P=k.active??(h!=null&&k.key===h);if(M){let R=a===k.key,X=Oe("div",{"data-key":k.key,class:`wf-menu-submenu-title wf-menu-submenu-title--collapsed${P?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:P?0:-1,"aria-haspopup":"menu","aria-expanded":R?"true":"false",onClick:Y=>{R?(a=null,e.render()):(s=Y.currentTarget,a=k.key,e.render())},onKeyDown:Y=>{Y.key==="Enter"||Y.key===" "||Y.key==="ArrowRight"?(Y.preventDefault(),R||(s=Y.currentTarget,a=k.key,e.render())):Y.key==="Escape"&&(Y.preventDefault(),a=null,e.render())}},[k.icon?Oe("span",{class:"wf-menu-icon"},k.icon):null].filter(Boolean));return R&&c(k,R,()=>Oe("div",{class:"wf-menu-popup"},(k.children??[]).map(Y=>B(Y,!0,!0)))),Oe("div",{key:k.key,"data-key":k.key,class:"wf-menu-submenu wf-menu-submenu--collapsed"},[X])}let z=[k.icon?Oe("span",{class:"wf-menu-icon"},k.icon):null,M?null:Oe("span",{class:"wf-menu-label"},k.label),M?null:Oe("span",{class:"wf-menu-arrow"},Oe(H,{name:"chevron-right",size:12}))].filter(Boolean),N=Oe("div",{"data-key":k.key,class:`wf-menu-submenu-title${P?" wf-menu-submenu-title--active":""}`,role:"menuitem",tabIndex:P?0:-1,"aria-expanded":E?"true":"false",onClick:()=>D(k.key),onKeyDown:R=>{R.key==="Enter"||R.key===" "||R.key==="ArrowRight"?(R.preventDefault(),E||D(k.key,!0)):(R.key==="ArrowLeft"||R.key==="Escape")&&E&&(R.preventDefault(),D(k.key,!1))}},z),U=Oe("div",{class:"wf-menu-submenu-content",role:"group"},(k.children??[]).map(R=>B(R,!0)));return Oe("div",{key:k.key,"data-key":k.key,class:`wf-menu-submenu${E?" wf-menu-submenu--open":""}`},[N,U])},B=(k,E=!1,P=!1)=>{if(k.children&&k.children.length>0&&!M)return O(k);let z=k.active??(h!=null&&k.key===h);return Oe("div",{key:k.key,"data-key":k.key,class:`wf-menu-item${z?" wf-menu-item--active":""}${k.danger?" wf-menu-item--danger":""}${E?" wf-menu-item--child":""}`,role:"menuitem",tabIndex:z?0:-1,"aria-current":z?"page":void 0,onClick:()=>{k.onClick?k.onClick():p?.(k.key)},onKeyDown:N=>{if(N.key==="Enter"||N.key===" ")N.preventDefault(),k.onClick?k.onClick():p?.(k.key);else if((N.key==="ArrowLeft"||N.key==="Escape")&&E){N.preventDefault();let U=k._parentKey;U&&T.has(U)&&D(U,!1)}}},[k.icon?Oe("span",{class:"wf-menu-icon"},k.icon):null,M&&!P?null:Oe("span",{class:"wf-menu-label"},k.label)].filter(Boolean))},W=[],K;for(let k of d)if(k.group!==K&&(W.push(Oe("div",{class:"wf-menu-group",key:`g-${k.group}`},k.group)),K=k.group),k.children&&k.children.length>0){let E=O(k);!M&&E.props.children[1]&&(E.props.children[1].props.children=E.props.children[1].props.children.map(P=>P?.props?{...P,props:{...P.props,_parentKey:k.key}}:P)),W.push(E)}else W.push(B(k));let I=["wf-menu",M?"wf-menu--collapsed":"",m??""].filter(Boolean).join(" "),S=[...W,b?Oe("div",{class:"wf-menu-collapse-btn",role:"button",tabIndex:0,"aria-label":M?"\u5C55\u5F00\u83DC\u5355":"\u6298\u53E0\u83DC\u5355",onClick:L,onKeyDown:k=>{(k.key==="Enter"||k.key===" ")&&(k.preventDefault(),L())}},M?Oe(H,{name:"chevron-right",size:14}):Oe(H,{name:"chevron-left",size:14})):null].filter(Boolean);return!a&&l&&(l.close(),l=null),Oe("nav",{class:I,role:"menu",ref:f,onKeyDown:g},S)}};var Tl=(o,e)=>{let t=e||"/";return o.find(r=>r.key==="/"?t==="/":t.startsWith(r.key))?.key??""},El=async(o,e)=>async t=>{let{nav:n=[],path:r="",user:i=null,brand:a={},onNavigate:s,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=a.name??"App",p=a.subtitle??"";return Me("div",{class:"wf-app-shell",style:{"--wf-sidebar-width":g}},[Me("aside",{class:"wf-sidebar"},[Me("div",{class:"wf-sidebar-header"},[Me(cn,{name:a.logo??d.slice(0,1),size:"lg"}),Me("div",{class:"wf-app-shell-brand-text"},[Me("span",{class:"wf-app-shell-brand-name"},d),p?Me("small",{class:"wf-app-shell-brand-sub"},p):null])]),Me("div",{class:"wf-sidebar-body"},[Me(or,{items:u,activeKey:Tl(n,r),onSelect:h=>s?.(h)})]),t.footer??(f?Me("div",{class:"wf-sidebar-footer"},[Me("div",{class:"wf-app-shell-skel"}),Me("div",{class:"wf-app-shell-skel wf-app-shell-skel--sm"})]):Me("div",{class:"wf-sidebar-footer"},[Me("div",{class:"wf-app-shell-user"},[Me("div",{class:"wf-app-shell-user-info"},[Me(cn,{name:i?.name??"?",size:"sm"}),Me("div",{class:"wf-app-shell-user-meta"},[Me("div",{class:"wf-app-shell-user-name"},i?.name??"\u672A\u767B\u5F55"),i?.email?Me("div",{class:"wf-app-shell-user-mail"},i.email):null])]),Me("div",{class:"wf-app-shell-user-actions"},[c?Me(Ye,{size:"sm",variant:"ghost",title:"\u8BBE\u7F6E",onClick:c},[Me(H,{name:"settings",size:16})]):null,l?Me(Ye,{size:"sm",variant:"ghost",title:"\u9000\u51FA\u767B\u5F55",onClick:l},[Me(H,{name:"log-out",size:16})]):null])])]))]),Me("main",{class:"wf-main"},t.children)])};import{h as Ue}from"weifuwu/vdom";var Un=800,zn=500,bs=["#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16","#f97316","#14b8a6"],ws=["#94a3b8","#4f6ef7","#22c55e","#f59e0b","#ef4444","#8b5cf6","#06b6d4","#ec4899","#84cc16"];function Il(o){let e=0;for(let t=0;t<o.length;t++)e=e*31+o.charCodeAt(t)>>>0;return e}var ho=(o,e,t)=>t?.[o]??e[Il(o)%e.length];function vs(o){if(o===void 0)return 14;let e=Math.max(1,o);return 12+Math.round(Math.log10(e)*6)}function $l(o,e){let r=1/0,i=1/0,a=-1/0,s=-1/0;for(let l=0;l<o.length;l++){let c=vs(o[l].weight),f=e[l];r=Math.min(r,f.x-c),i=Math.min(i,f.y-c),a=Math.max(a,f.x+c),s=Math.max(s,f.y+c+(o[l].sublabel?34:0))}return o.length===0?`0 0 ${Un} ${zn}`:`${Math.round(r-28)} ${Math.round(i-28)} ${Math.round(a-r+56)} ${Math.round(s-i+56)}`}function Al(o,e){let t=o.length;if(t===0)return[];if(e==="ring"){if(t===1)return[{x:Un/2,y:zn/2}];let s=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:s+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),i=Un-160,a=zn-140;return o.map((s,l)=>({x:80+i*(l%n)/Math.max(1,n-1),y:80+a*Math.floor(l/n)/Math.max(1,r-1)}))}var Dl=async(o,e)=>async t=>{let{nodes:n=[],edges:r=[],selectedId:i=null,onSelect:a,onNodeClick:s,layout:l="ring",width:c="100%",height:f="480px",showLegend:g=!0,nodeColors:u,edgeColors:d}=t,p=Al(n,l),h=new Map(n.map((w,x)=>[w.id,{node:w,...p[x]}])),m=$l(n,p),y=[...new Set(n.map(w=>w.kind??"default"))],v=[...new Set(r.map(w=>w.type??"default"))],b=r.filter(w=>h.has(w.from)&&h.has(w.to)).map(w=>{let x=h.get(w.from),C=h.get(w.to);return{e:w,x1:x.x,y1:x.y,x2:C.x,y2:C.y,color:ho(w.type??"default",ws,d),width:Math.min(5,Math.max(1,w.strength??1.5)),marker:w.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"}))),...b.map(w=>Ue("line",{key:`${w.e.from}-${w.e.to}-${w.e.type??""}`,x1:w.x1,y1:w.y1,x2:w.x2,y2:w.y2,stroke:w.color,"stroke-width":w.width,marker:w.marker,class:"wf-rg-edge",opacity:.75,"pointer-events":"none"})),...n.map(w=>{let x=h.get(w.id),C=vs(w.weight),$=ho(w.kind??"default",bs,u),T=w.id===i;return Ue("g",{key:w.id,class:"wf-rg-node"+(T?" wf-rg-node--selected":""),transform:`translate(${x.x}, ${x.y})`,onClick:()=>{a?.(w.id),s?.(w.id)}},[Ue("title",{},`${w.label}${w.sublabel?`\uFF08${w.sublabel}\uFF09`:""}`),Ue("circle",{r:C+10,fill:"transparent","pointer-events":"all"}),Ue("circle",{r:C,fill:$,opacity:.18,stroke:$,"stroke-width":T?3:1.5}),Ue("text",{class:"wf-rg-label",y:C+16,"text-anchor":"middle"},w.label),w.sublabel?Ue("text",{class:"wf-rg-sublabel",y:C+30,"text-anchor":"middle"},w.sublabel):null])})]),g&&y.length+v.length>0?Ue("div",{class:"wf-rg-legend"},[...y.map(w=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-swatch",style:{background:ho(w,bs,u)}}),w])),...v.map(w=>Ue("span",{class:"wf-rg-legend-item"},[Ue("span",{class:"wf-rg-line",style:{background:ho(w,ws,d)}}),w]))]):null])};import{h as go}from"weifuwu/vdom";var Ll=async(o,e)=>{let t=!1,n="top",r=!1,i=null,a=u=>{u&&(i=u)},s=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?.(()=>{s&&s.close()}),async u=>{let{content:d,position:p="top",children:h}=u;n=p,r=!!u.disabled;let m=go("div",{class:`wf-tooltip wf-tooltip--${p}`,role:"tooltip"},[go("div",{class:"wf-tooltip-arrow"}),go("div",{class:"wf-tooltip-content"},d)]);return t&&!s?s=e.ui.openPopup({anchor:()=>i,placement:()=>n,gap:6,content:()=>m,onClose:()=>{s=null,t&&(t=!1,e.render())}}):!t&&s?(s.close(),s=null):s&&s.update(m),go("div",{class:"wf-tooltip-wrap",ref:a,"aria-haspopup":"tooltip",onMouseEnter:f,onMouseLeave:g,onClick:()=>{t=!t,e.render()}},h)}};import{h as Ut}from"weifuwu/vdom";var Rl=async(o,e)=>{let t=!1,n=null,r;return e.ui.useGlobalKey(i=>{i.key==="Escape"&&n?.open&&t&&r?.()}),e.ui.onUnmount?.(()=>{n&&n.close()}),async i=>{let{open:a,title:s,position:l="right",onClose:c,children:f,footer:g,width:u}=i;r=c;let d=e?.i18n?.components?.Drawer??{};t=!!a;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=s?Ut("div",{class:"wf-drawer-header"},[s,h]):null,y=Ut("div",{class:"wf-drawer-body"},f),v=g?Ut("div",{class:"wf-drawer-footer"},g):null,b=Ut("div",{class:`wf-drawer-panel wf-drawer-panel--${l}`,style:u?{"--wf-drawer-width":u}:void 0,onClick:x=>x.stopPropagation()},[m,y,v].filter(Boolean)),w=Ut("div",{class:`wf-drawer wf-drawer--${l} ${a?"wf-drawer--enter":"wf-drawer--exit"}`,role:"dialog","aria-modal":"true","aria-label":s??d.ariaLabel??"\u4FA7\u8FB9\u9762\u677F",tabIndex:-1,onKeyDown:x=>{x.key==="Escape"&&c?.()}},[p,b]);return a&&!n?n=e.ui.openPopup({key:"drawer",presence:!0,trapFocus:!0,lockScroll:!0,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>w,onClose:()=>{n=null}}):!a&&n?(n.update(w),n.close(),n=null):n&&n.update(w),null}};import{h as yo}from"weifuwu/vdom";var Vn=async(o,e)=>{let t="bottom",n="click",r=!1,i=null,a=d=>{d&&(i=d)},s=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?.(()=>{s&&s.close()}),async d=>{let{content:p,position:h="bottom",trigger:m="click",children:y}=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&&!s?s=e.ui.openPopup({anchor:()=>i,placement:()=>t,gap:6,content:()=>v,onClose:()=>{s=null,l?.setOpen(!1)}}):!l?.open&&s?(s.close(),s=null):s&&s.update(v),yo("div",{class:`wf-popover-wrap${l?.open?" wf-popover-wrap--open":""}`,ref:a,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onClick:b=>{b.stopPropagation?.(),l?.setOpen(!l.open)},...n==="hover"?{onMouseEnter:g,onMouseLeave:u}:{}},y)}};import{h as fn,Fragment as Nl}from"weifuwu/vdom";var Ol=async o=>async e=>{let{variant:t="text",lines:n=1,cols:r=3,width:i,height:a,className:s}=e,l={};i!==void 0&&(l.width=typeof i=="number"?`${i}px`:i),a!==void 0&&(l.height=typeof a=="number"?`${a}px`:a);let c=["wf-skeleton",`wf-skeleton--${t}`,s].filter(Boolean).join(" ");if(t==="table"){let g=Array.from({length:n},(u,d)=>{let p=Array.from({length:r},(h,m)=>{let y=d===n-1&&m===r-1?"40%":void 0;return fn("div",{class:"wf-skeleton wf-skeleton--text",style:y?{width:y}: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(Nl,null,f)};import{h as _n}from"weifuwu/vdom";var Hl=async(o,e)=>{let t=!1,n=1,r=null,i=null,a=l=>{t&&!i?i=e.ui.openPopup({key:"img-preview",mask:!0,maskCentered:!0,content:()=>l,onClose:()=>{i=null,t&&(t=!1,n=1,e.render())}}):!t&&i?(i.close(),i=null):i&&i.update(l)},s=l=>{r=l};return async l=>{let{src:c,alt:f="",fallback:g,loading:u,width:d,height:p,className:h,style:m,preview:y,previewScale:v=1}=l,b={class:["wf-image",h].filter(Boolean).join(" "),src:c??g??"",alt:f,loading:u??"lazy"};if(d!==void 0&&(b.width=d),p!==void 0&&(b.height=p),m&&(b.style=m),g&&(b.onError=x=>{let C=x.currentTarget;C.src!==g&&(C.src=g)}),!y)return _n("img",b);let w=_n("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 a(w),_n("div",{class:"wf-img-preview-wrap"},[_n("button",{type:"button",class:"wf-img-preview-trigger","aria-label":"\u653E\u5927\u9884\u89C8",ref:s,onClick:()=>{t=!0,e.render()}},_n("img",b))])}};import{h as bo}from"weifuwu/vdom";var Bl=async(o,e)=>{let t=!1,n={once:!0},r=e.ui.useInView({rootMargin:()=>n.rootMargin??"0px",threshold:()=>n.threshold??0}),i=a=>{a?r.observe(a):r.disconnect()};return async a=>{if(Object.assign(n,a),r.isIn)return t||(t=!0,a.once!==!1&&r.disconnect(),a.onEnter?.()),bo("div",{class:"wf-inview wf-inview--loaded"},a.children);let s=a.placeholder!==void 0?a.placeholder:bo("div",{class:"wf-inview-placeholder"});return bo("div",{class:"wf-inview wf-inview--pending"},[bo("div",{class:"wf-inview-pending",style:{width:"1px",height:"1px",opacity:0,pointerEvents:"none"},ref:i}),s])}};import{createClientBrowser as Vl}from"weifuwu/vdom";import{h as re}from"weifuwu/vdom";var Ul=["\u65E5","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D"];function wo(){return Ul}function xs(o,e){return new Date(o,e+1,0).getDate()}function zl(o,e){return new Date(o,e,1).getDay()}function Kn(o,e){let t=[],n=xs(o,e),r=zl(o,e),i=e===0?11:e-1,a=e===0?o-1:o,s=xs(a,i),l=new Date,c=[];for(let d=r-1;d>=0;d--){let p=s-d;c.push({year:a,month:i,day:p,isOtherMonth:!0,isToday:a===l.getFullYear()&&i===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 ks(o,e,t,n,r){return`${Tt(o,e,t)} ${rr(n,r)}`}function sr(){return Array.from({length:24},(o,e)=>e)}function ar(){return Array.from({length:12},(o,e)=>e*5)}var _l=async(o,e)=>{let t=e.browser??Vl(),n=!1,r="",i=new Date,a=i.getFullYear(),s=i.getMonth(),l=i.getHours(),c=Math.round(i.getMinutes()/5)*5,f=i.getFullYear(),g=i.getMonth(),u=i.getDate(),d=null,p=null,h=null,m=w=>{h=w},y="date";e.ui.useGlobalKey(w=>{w.key==="Escape"&&n&&(n=!1,e.render())});let v=null,b=w=>{n&&w&&!v?v=e.ui.openPopup({key:"dp-calendar",mask:!0,maskClosable:!0,closeOnEscape:!1,content:()=>w,position:()=>{let x=h?.getBoundingClientRect();if(!x)return{x:0,y:0};let C=y==="range";return{x:x.left,y:x.bottom+4,width:C?void 0:x.width}},onClose:()=>{v=null,n&&(n=!1,e.render())}}):!n&&v?(v.close(),v=null):v&&v.update(w)};return async w=>{let x=e?.i18n?.components?.DatePicker??{},{mode:C="date",value:$,onChange:T,placeholder:M=x.placeholder??"\u9009\u62E9\u65E5\u671F",disabled:A,error:D}=w;y=C;let L=n,O=G=>{n=G,e.render()},B=G=>{A||O(!n)},W=G=>{if(C==="datetime")f=G.year,g=G.month,u=G.day,a=G.year,s=G.month,e.render();else if(C==="range")if(!d||d&&p)d=Tt(G.year,G.month,G.day),p=null,e.render();else{p=Tt(G.year,G.month,G.day);let q=d<p?d:p,Q=d<p?p:d;r=`${q} ~ ${Q}`,T?.(r),O(!1)}else r=Tt(G.year,G.month,G.day),T?.(r),O(!1)},K=()=>{s===0?(a--,s=11):s--,e.render()},I=()=>{s===11?(a++,s=0):s++,e.render()},S=()=>{r=rr(l,c),T?.(r),O(!1)},k=()=>{r=ks(f,g,u,l,c),T?.(r),O(!1)},E=Kn(a,s),P=[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6].some(G=>G)?[x.w0,x.w1,x.w2,x.w3,x.w4,x.w5,x.w6]:wo(),z=(G,q,Q)=>re("button",{class:"wf-datepicker-header-btn",type:"button","aria-label":q,onClick:Q},re(H,{name:G})),N=re("div",{class:"wf-datepicker-header"},[z("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",K),re("span",{class:"wf-datepicker-header-title"},`${a}\u5E74${s+1}\u6708`),z("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",I)]),U=re("div",{class:"wf-datepicker-weekdays"},P.map(G=>re("span",{class:"wf-datepicker-weekday"},G))),R=E.map((G,q)=>re("div",{class:"wf-datepicker-grid",key:`row-${q}`},G.map((Q,be)=>{let fe=["wf-datepicker-cell"];Q.isOtherMonth&&fe.push("wf-datepicker-cell--other-month"),Q.isToday&&fe.push("wf-datepicker-cell--today");let me=Tt(Q.year,Q.month,Q.day);return C==="range"?me===d||me===p?fe.push("wf-datepicker-cell--range-edge"):d&&p&&me>d&&me<p&&fe.push("wf-datepicker-cell--in-range"):C==="datetime"?f===Q.year&&g===Q.month&&u===Q.day&&fe.push("wf-datepicker-cell--selected"):me===r&&fe.push("wf-datepicker-cell--selected"),re("button",{class:fe.join(" "),key:`${Q.year}-${Q.month}-${Q.day}`,type:"button",onClick:()=>W(Q)},String(Q.day))}))),X=re("div",{class:"wf-datepicker-range-panel"},[N,U,...R]),Y=G=>{if(G.key==="Escape"){O(!1);return}if(C==="time"||C==="datetime"||!["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(G.key))return;let q=G.currentTarget,Q=Array.from(q.querySelectorAll(".wf-datepicker-cell")),be=Q.indexOf(t?.activeElement()??null);if(be<0)return;G.preventDefault();let fe=7,me=be;G.key==="ArrowLeft"?me--:G.key==="ArrowRight"?me++:G.key==="ArrowUp"?me-=fe:G.key==="ArrowDown"&&(me+=fe),me>=0&&me<Q.length&&Q[me].focus()},te=null;if(L)if(C==="time"){let G=sr(),q=ar();te=re("div",{class:"wf-time-picker",role:"dialog",onKeyDown:Y,onMouseDown:be=>be.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"},G.map(be=>re("button",{class:`wf-time-opt${be===l?" wf-time-opt--selected":""}`,type:"button",key:be,onClick:()=>{l=be,e.render()}},String(be).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"},q.map(be=>re("button",{class:`wf-time-opt${be===c?" wf-time-opt--selected":""}`,type:"button",key:be,onClick:()=>{c=be,e.render()}},String(be).padStart(2,"0"))))])]),re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:()=>O(!1)},x.cancel??"\u53D6\u6D88"),re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:S},x.confirm??"\u786E\u5B9A")])])}else if(C==="range"){let G=s===11?0:s+1,q=s===11?a+1:a,Q=Kn(q,G);te=re("div",{class:"wf-datepicker-range-wrap",onMouseDown:fe=>fe.stopPropagation()},[re("div",{class:"wf-datepicker-range-panel"},[re("div",{class:"wf-datepicker-header"},[z("chevron-left",x.prevMonth??"\u4E0A\u4E2A\u6708",K),re("span",{class:"wf-datepicker-header-title"},`${a}\u5E74${s+1}\u6708`),re("span",{class:"wf-datepicker-header-title"})]),U,...R]),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"},`${q}\u5E74${G+1}\u6708`),z("chevron-right",x.nextMonth??"\u4E0B\u4E2A\u6708",I)]),re("div",{class:"wf-datepicker-weekdays"},P.map(fe=>re("span",{class:"wf-datepicker-weekday"},fe))),...Q.map((fe,me)=>re("div",{class:"wf-datepicker-grid",key:`row-${me}`},fe.map(pe=>{let Ae=Tt(pe.year,pe.month,pe.day),Se=["wf-datepicker-cell"];return pe.isOtherMonth&&Se.push("wf-datepicker-cell--other-month"),pe.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:()=>W(pe)},String(pe.day))})))])])}else{let G=[X];C==="datetime"&&(G.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:Q=>{l=parseInt(Q.target.value),e.render()}},sr().map(Q=>re("option",{value:Q,key:Q},String(Q).padStart(2,"0")))),re("span",{class:"wf-datetime-sep"},":"),re("select",{class:"wf-datetime-select",value:c,onChange:Q=>{c=parseInt(Q.target.value),e.render()}},ar().map(Q=>re("option",{value:Q,key:Q},String(Q).padStart(2,"0"))))])])),G.push(re("div",{class:"wf-time-footer"},[re("button",{class:"wf-datepicker-footer-btn",type:"button",onClick:k},x.confirm??"\u786E\u5B9A")]))),te=re("div",{class:"wf-datepicker-dropdown",role:"dialog",onKeyDown:Y,onMouseDown:Q=>Q.stopPropagation()},G)}b(L?te:null);let J=$??r??"";return re("div",{class:`wf-datepicker${A?" wf-datepicker--disabled":""}`},[re("input",{class:["wf-datepicker-input",D?" wf-datepicker-input--err":""].filter(Boolean).join(" "),"aria-invalid":D?"true":void 0,type:"text",placeholder:M,value:J||"",ref:m,readonly:!0,disabled:A,role:"combobox","aria-haspopup":"dialog","aria-expanded":String(L),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 Ms(o,e,t){return o.length===0?"":o.map((n,r)=>{let i=e(r),a=t(n.value);return r===0?`M${i},${a}`:`L${i},${a}`}).join(" ")}function Ps(o,e,t,n){if(o.length===0)return"";let r=o.map((s,l)=>{let c=e(l),f=t(s.value);return`${c},${f}`}),i=e(0),a=e(o.length-1);return`M${i},${n}L${r.join("L")}L${a},${n}Z`}function Ss(o,e,t,n){let r=n??Math.max(4,(e.range[1]-e.range[0])/o.length*.6);return o.map((i,a)=>({x:e(a)-r/2,y:t(Math.max(0,i.value)),width:r,height:Math.abs(t(i.value)-t(0)),color:i.color??qt(a),label:i.label,value:i.value}))}function Ts(o,e,t,n){let r=o.reduce((a,s)=>a+Math.abs(s.value),0);if(r===0)return[];let i=-Math.PI/2;return o.map((a,s)=>{let l=Math.abs(a.value)/r*Math.PI*2,c=i+l,f=Kl(e,t,n,i,c),g=i+l/2;return i=c,{d:f,color:a.color??qt(s),label:a.label,value:a.value,centroid:{x:e+Math.cos(g)*n*.6,y:t+Math.sin(g)*n*.6}}})}function Kl(o,e,t,n,r){let i=o+t*Math.cos(n),a=e+t*Math.sin(n),s=o+t*Math.cos(r),l=e+t*Math.sin(r),c=r-n>Math.PI?1:0;return`M${o},${e}L${i},${a}A${t},${t} 0 ${c} 1 ${s},${l}Z`}var Cs=["#3b82f6","#ef4444","#22c55e","#f59e0b","#8b5cf6","#ec4899","#06b6d4","#84cc16"];function qt(o){return Cs[o%Cs.length]}function ir(o,e=5){let[t,n]=o.domain,r=(n-t)/e,i=[];for(let a=0;a<=e;a++){let s=t+r*a;i.push({value:s,y:o(s),label:jl(s)})}return i}function jl(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 Fl=async(o,e)=>{let t=null,n=null,r=null;return async i=>{let{type:a="line",data:s,options:l={},title:c,area:f,className:g}=i,u=l.width??320,d=l.height??200,p=l.padding??32,h=u-p*2,m=d-p*2,y=s.map(B=>B.value),v=Math.min(0,...y),b=Math.max(...y),w=b-v||1,x=()=>{let B=Math.max(1,s.length-1),W=jn([-.5,B+.5],[0,h]),K=jn([v,b],[m,0]),I=ir(K),S=Ms(s,W,K),k=f?Ps(s,W,K,K(0)):null,E=s.map((P,z)=>{let N=W(z)+p,U=K(P.value)+p,R=Y=>{n=Y.target,t={label:P.label,value:P.value,color:P.color??qt(z)},e.render()},X=()=>{n=null,t=null,e.render()};return se("g",{key:`dot-${z}`},[se("circle",{cx:N,cy:U,r:3,fill:P.color??qt(z),style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,"pointer-events":"none"}),se("circle",{cx:N,cy:U,r:9,fill:"transparent",style:{cursor:"pointer"},onMouseEnter:R,onMouseLeave:X})])});return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...I.map((P,z)=>se("g",{key:`tick-${z}`},[se("line",{x1:p,y1:P.y+p,x2:u-p,y2:P.y+p,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:p-6,y:P.y+p+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},P.label)])),...k?[se("path",{key:"area",d:k,style:{fill:"var(--wf-color-primary-bg)"},stroke:"none",transform:`translate(${p},${p})`})]:[],se("path",{key:"line",d:S,fill:"none",style:{stroke:"var(--wf-color-primary)"},"stroke-width":2,"stroke-linejoin":"round","stroke-linecap":"round",transform:`translate(${p},${p})`}),...s.map((P,z)=>{let N=W(z)+p;return se("text",{key:`xlabel-${z}`,x:N,y:d-p+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},P.label)}),...E])},C=()=>{let B=Math.max(1,s.length-1),W=jn([-.5,B+.5],[0,h]),K=jn([v,b],[m,0]),I=ir(K),S=Ss(s,W,K);return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...I.map((k,E)=>se("g",{key:`tick-${E}`},[se("line",{x1:p,y1:k.y+p,x2:u-p,y2:k.y+p,style:{stroke:"var(--wf-color-border)"},"stroke-width":1}),se("text",{x:p-6,y:k.y+p+4,"text-anchor":"end",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"11","font-family":"var(--wf-font-sans)"},k.label)])),...S.map((k,E)=>se("rect",{key:`bar-${E}`,x:k.x+p,y:k.y+p,width:k.width,height:k.height,fill:k.color,rx:2,onMouseEnter:P=>{n=P.target,t={label:k.label,value:k.value,color:k.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}})),...s.map((k,E)=>{let P=W(E)+p;return se("text",{key:`xlabel-${E}`,x:P,y:d-p+14,"text-anchor":"middle",style:{fill:"var(--wf-color-text-tertiary)"},"font-size":"10","font-family":"var(--wf-font-sans)"},k.label)})])},$=()=>{let B=u/2,W=d/2,K=Math.min(h,m)/2-4,I=Ts(s,B,W,K);return se("svg",{style:{width:"100%"},height:d,viewBox:`0 0 ${u} ${d}`},[...I.map((S,k)=>se("g",{key:`arc-${k}`},[se("path",{d:S.d,fill:S.color,style:{stroke:"var(--wf-color-bg)"},"stroke-width":1.5,onMouseEnter:E=>{n=E.target,t={label:S.label,value:S.value,color:S.color},e.render()},onMouseLeave:()=>{n=null,t=null,e.render()}}),...S.value/s.reduce((E,P)=>E+Math.abs(P.value),0)>.05?[se("text",{x:S.centroid.x,y:S.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(S.value/s.reduce((E,P)=>E+Math.abs(P.value),0)*100)}%`)]:[]]))])},T=()=>{let k=Math.max(...s.map(Y=>Math.abs(Y.value)),1),E=s.length,P=Y=>Math.PI*2*Y/E-Math.PI/2,z=(Y,te)=>[150+Math.cos(P(Y))*95*te,140+Math.sin(P(Y))*95*te],N=[.33,.66,1].map(Y=>se("polygon",{key:`ring-${Y}`,points:Array.from({length:E},(te,J)=>z(J,Y).join(",")).join(" "),fill:"none",stroke:"var(--wf-color-border)","stroke-width":1})),U=Array.from({length:E},(Y,te)=>se("line",{key:`spoke-${te}`,x1:150,y1:140,x2:z(te,1)[0],y2:z(te,1)[1],stroke:"var(--wf-color-border)","stroke-width":1})),R=s.map((Y,te)=>z(te,Math.abs(Y.value)/k).join(",")).join(" "),X=s.map((Y,te)=>{let[J,G]=z(te,1.18);return se("text",{key:`lb-${te}`,x:J,y:G,"text-anchor":"middle","dominant-baseline":"middle",class:"wf-chart-label","font-size":10},Y.label)});return se("svg",{viewBox:"0 0 300 260",class:"wf-chart-svg",role:"img"},[...N,...U,se("polygon",{key:"data",points:R,fill:"var(--wf-color-primary-bg)",stroke:"var(--wf-color-primary)","stroke-width":1.5,opacity:.85}),...X])},M=()=>{let k=s[0]?.value??0,E=l?.min??0,P=l?.max??100,z=Math.min(Math.max((k-E)/(P-E),0),1),N=(J,G,q)=>{let Q=Se=>Math.PI*(1-Se),[be,fe]=[150-Math.cos(Q(G))*J,170-Math.sin(Q(G))*J],[me,pe]=[150-Math.cos(Q(q))*J,170-Math.sin(Q(q))*J],Ae=Math.abs(Q(G)-Q(q))>Math.PI?1:0;return`M ${be} ${fe} A ${J} ${J} 0 ${Ae} 1 ${me} ${pe}`},U=N(118,0,z),R=N(118,0,1),X=-Math.PI/2+z*Math.PI,[Y,te]=[150+Math.cos(X)*100,170+Math.sin(X)*100];return se("svg",{viewBox:"0 0 300 180",class:"wf-chart-svg",role:"img"},[se("path",{key:"bg",d:R,fill:"none",stroke:"var(--wf-color-border)","stroke-width":12,"stroke-linecap":"round"}),se("path",{key:"val",d:U,fill:"none",stroke:"var(--wf-color-primary)","stroke-width":12,"stroke-linecap":"round"}),se("line",{key:"needle",x1:150,y1:170,x2:Y,y2:te,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},`${k}`),se("text",{key:"min",x:24,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${E}`),se("text",{key:"max",x:276,y:164,"text-anchor":"middle",class:"wf-chart-label","font-size":10},`${P}`)])},A=()=>{let I=Math.max(...s.map(N=>Math.abs(N.value)),1)*1.1,S=Math.max(...s.map(N=>Number(N.label)||0),s.length,1)*1.1,k=N=>34+(Number(s[N]?.label)||N)/S*252,E=N=>186-Math.abs(N)/I*152,P=s.map((N,U)=>se("circle",{key:`dot-${U}`,cx:k(U),cy:E(N.value),r:4.5,fill:N.color??qt(U),onMouseEnter:()=>{t={label:N.label,value:N.value},e.render()},onMouseLeave:()=>{t=null,e.render()}})),z=[0,.5,1].map(N=>{let U=E(N*I);return se("g",{key:`yt-${N}`},[se("line",{x1:34,y1:U,x2:286,y2:U,stroke:"var(--wf-color-border)","stroke-width":1,"stroke-dasharray":"3 3"}),se("text",{x:28,y:U+3,"text-anchor":"end",class:"wf-chart-label","font-size":10},`${Math.round(N*I)}`)])});return se("svg",{viewBox:"0 0 320 220",class:"wf-chart-svg",role:"img"},[...z,...P])},D;a==="bar"?D=C():a==="pie"?D=$():a==="radar"?D=T():a==="gauge"?D=M():a==="scatter"?D=A():D=x();let L=s.length>1?se("div",{class:"wf-chart-legend"},s.map((B,W)=>se("span",{class:"wf-chart-legend-item",key:`leg-${W}`},[se("span",{class:"wf-chart-legend-dot",style:{background:B.color??qt(W)}}),se("span",{class:"wf-chart-legend-label"},B.label)]))):null,O=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:()=>O,onClose:()=>{r=null,t&&(t=null,n=null,e.render())}}):!t&&r?(r.close(),r=null):r&&r.update(O),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,D,L].filter(Boolean))}};import{createClientBrowser as fc}from"weifuwu/vdom";import{h as ne}from"weifuwu/vdom";import{h as lr}from"weifuwu/vdom";var Ds=["bold","italic","underline","h1","h2","h3","ul","ol","blockquote","alignLeft","alignCenter","alignRight","hr","image","table","link","clear","source"],Gl={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:"</>"},Es={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"},Wl=["bold","italic","underline"],Is=["h1","h2","h3"],$s=["ul","ol"],As=["blockquote","alignLeft","alignCenter","alignRight","hr"],ql=["image","table","link","clear"];function Xl(o,e){return Wl.includes(o)&&Is.includes(e)||Is.includes(o)&&$s.includes(e)||$s.includes(o)&&As.includes(e)||As.includes(o)&&ql.includes(e)||["link","clear"].includes(o)&&e==="source"}function Ls(o,e,t,n,r,i){let a=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:Es[l],"aria-label":Es[l],"data-item":l,onClick:u=>n(l,u.currentTarget)},Gl[l])}),s=[];return o.forEach((l,c)=>{c>0&&Xl(o[c-1],l)&&s.push(lr("span",{class:"wf-editor-tb-sep",key:`sep-${c}`})),s.push(a[c])}),lr("div",{class:"wf-editor-toolbar",role:"toolbar","aria-label":"\u7F16\u8F91\u683C\u5F0F"},[...s,...i??[]])}import{h as Fn}from"weifuwu/vdom";var Rs=6;function Ns(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)"> </td>':"<td> </td>";t+="</tr>"}return t+="</tbody></table>",t}function Os(o,e,t,n,r){let i=Fn("div",{class:"wf-editor-table-grid",onMouseLeave:r},Array.from({length:Rs},(s,l)=>Fn("div",{class:"wf-editor-table-grid-row",key:`r${l}`},Array.from({length:Rs},(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)})})))),a=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:s=>s.stopPropagation()},[i,Fn("div",{class:"wf-editor-table-picker-label"},a)])}zt();import{aiStream as uc}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,
|
|
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(/</g,"<").replace(/>/g,">").replace(/"/g,'"').replace(/'/g,"'").replace(/&/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,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'"),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,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""");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)"> </td>':"<td> </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]!==`
|
|
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(
|
|
14
|
-
`)&&(r.text=r.text.slice(0,-1)),{text:r.text,blockProps:r.blockProps,marks:r.marks,embeds:r.embeds}}var
|
|
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,"&").replace(/"/g,""").replace(/</g,"<")}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
|
|
15
15
|
|
|
16
|
-
${
|
|
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
|
|
17
17
|
|
|
18
|
-
${
|
|
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
|
|
19
19
|
|
|
20
|
-
${
|
|
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
|
|
21
21
|
|
|
22
|
-
${
|
|
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
|
|
23
23
|
|
|
24
|
-
${V}`}],q=null,Q=!1,be=null,fe=!1,me=null,pe=V=>{fe&&!me?me=e.ui.openPopup({key:"editor-history",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{me=null,fe&&(fe=!1,e.render())}}):!fe&&me?(me.close(),me=null):me&&me.update(V)},Ae=V=>{let _=h.undoStack[V];if(!_)return;let Z=_.before;for(let ue of _.events)Z=hn(Z,ue);for(;h.undoStack.length>V+1;)ur(h);p=Z,fe=!1,M(p,null);let ee=ze(p);U.current&&U.current(ee),te(ee),ie("commit",{label:"time-travel",to:V}),e.render()},Se=null,En=V=>{Se=V},bt=null,Vo=V=>{r&&V&&!bt?bt=e.ui.openPopup({key:"editor-link",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{bt=null,r&&(r=!1,e.render())}}):!r&&bt?(bt.close(),bt=null):bt&&V&&bt.update(V)},wt=null,_o=V=>{s&&V&&!wt?wt=e.ui.openPopup({key:"editor-image",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{wt=null,s&&(s=!1,e.render())}}):!s&&wt?(wt.close(),wt=null):wt&&V&&wt.update(V)},Je=null,ro=V=>{Q&&V&&!Je?Je=e.ui.openPopup({key:"editor-ai-panel",anchor:()=>Se,placement:"bottom",gap:8,content:()=>V,onClose:()=>{Je=null,Q&&(Q=!1,q?.handle?.abort(),e.render())}}):!Q&&Je?(Je.close(),Je=null):Je&&V&&Je.update(V)},ke=(V,_)=>{if(!y)return;let Z=Ke(y),ee=Z?.start??0,ue=Z&&Z.start!==Z.end?Z.end:p.text.length,ce=p.text.slice(ee,ue);if(console.log("[runAi] original:",JSON.stringify(ce),"start:",ee,"end:",ue),!ce.trim())return;q?.handle?.abort(),be=V,q={action:V,start:ee,end:ue,original:ce,revised:"",streaming:!0,error:null,handle:null},Q=!0,e.render();let nt=V.prompt({selection:ce});ie("ai-apply",{action:V.id,status:"start"});let Nt=uc(_.url,{messages:[{role:"user",content:nt}]},{headers:_.headers,onToken:He=>{q&&(q.revised+=He,e.render())},onDone:()=>{q&&(q.streaming=!1,ie("ai-apply",{action:V.id,status:"done",chars:q.revised.length}),e.render())},onError:He=>{q&&(q.streaming=!1,q.error=He?.message??"AI \u8BF7\u6C42\u5931\u8D25",ie("ai-apply",{action:V.id,status:"error",message:q.error}),e.render())},onEvent:_.onEvent});q&&(q.handle=Nt)},so=V=>{let _=q;if(!_||_.streaming||!_.revised.trim())return;if(Q=!1,q=null,p.text.slice(_.start,_.end)!==_.original){ie("ai-apply",{action:_.action.id,status:"rejected",reason:"stale-selection"}),e.render();return}let Z=_.revised.trim();if(!Z){ie("ai-apply",{action:_.action.id,status:"rejected",reason:"empty"}),e.render();return}let ee=p.embeds.filter(ce=>ce.at>=_.start&&ce.at<_.end),ue=p.blockProps.filter(ce=>ce.start>=_.start&&ce.start<=_.end);D([{type:"ai-apply",start:_.start,end:_.end,original:_.original,revised:Z,removedEmbeds:ee,removedBlocks:ue}],`ai-${_.action.id}`,{start:_.start+Z.length,end:_.start+Z.length}),ie("ai-apply",{action:_.action.id,status:"accepted"}),e.render()},vt=(V,_)=>e.i18n?.components?.Editor?.[V]??_;return async V=>{let{value:_="",onChange:Z,onUpload:ee,placeholder:ue="",disabled:ce=!1,minHeight:nt="200px",draftKey:Nt}=V,He=V.toolbar??Ds,De=a==="rich";U.current=Z,Y=Nt??null;let ao=F=>{m=!0,Z?.(F)},hi=(F,le)=>{if(!ce){if(le&&(Se=le),y?.focus(),F==="source"){De?(d=y?.innerHTML??_,a="source",e.render()):(a="rich",n={},m=!1,p=Qe(_),e.render(),Z?.(_));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":K("left");break;case"alignCenter":K("center");break;case"alignRight":K("right");break;case"hr":S("<hr>","hr");break;case"image":{s=!0,l="",e.render();return}case"link":{z();let we=Ke(y);if(!we||we.start===we.end){r=!0,i="",e.render();return}p.marks.some(We=>We.type==="link"&&We.start<=we.start&&We.end>=we.end)?(N(),I("",!0),e.render()):(r=!0,i="",e.render());return}case"clear":k();break;default:return}n=E(Ke(y)?.start??0),e.render()}}},ss=F=>{r=!1,e.render(),F&&(N(),I(F),e.render())},as=()=>{r=!1,i="",e.render()},gi=async F=>{let le=F[0];if(le){c=!0,e.render();try{let we=await ee(le);N(),S(`<img src="${we}" alt="">`,"img"),s=!1,l="",e.render()}catch{}finally{c=!1,e.render()}}},is=F=>{s=!1,l="",e.render(),N(),S(`<img src="${F}" alt="">`,"img")},ls=()=>{s=!1,l="",e.render()},yi=(F,le)=>{f=!1,g=-1,u=-1,N(),S(Ns(F,le),"table"),e.render()},bi=(F,le)=>{g=F,u=le,e.render()},wi=()=>{g=-1,u=-1,e.render()},vi=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"),xi=f?Os(g,u,yi,bi,wi):null,ki=ne(Vn,{key:"table",open:De&&!!f,onOpenChange:F=>{f=F,F&&z(),e.render()},content:xi},vi),Ci=()=>{if(ce)return;let F=y;if(!F)return;let le=Qe(F.innerHTML);if(!(F.textContent??"").trim()&&!(F.querySelector?.("img,table,hr")??null)){if(p.text===""&&le.text==="")return;C(),p=un,F.innerHTML="",ao("");return}let Le=T(p,le.text);if(Le===null){C(),p=le,ao(ze(p));return}if(Le.length===0){let We=ze(p);p=le,ze(le)!==We&&ao(ze(le));return}$(Le,le),ao(ze(le))},Mi=F=>{let le=F.target.value;Z?.(le)},Pi=F=>{let le=F.ctrlKey||F.metaKey;if(le&&F.key.toLowerCase()==="z")F.preventDefault(),C(),Ks(h)&&(L(),n=E(Ke(y)?.start??0),e.render());else if(le&&F.key.toLowerCase()==="y")F.preventDefault(),C(),mr(h)&&(O(),n=E(Ke(y)?.start??0),e.render());else if(le&&F.key==="Enter"){let we=V.ai;if(we&&!ce&&De){F.preventDefault(),C();let Le=we.actions??G;ke(be??Le[0],we)}}},Si=F=>{if(ce||!De)return;if((F.ctrlKey||F.metaKey)&&["b","i","u"].includes(F.key.toLowerCase())){z(),B(F.key.toLowerCase()==="b"?"b":F.key.toLowerCase()==="i"?"i":"u"),n=E(Ke(y)?.start??0),e.render();return}n=E(Ke(y)?.start??0),e.render()},Ti=()=>{if(!De)return;z();let F=Ke(y)?.start??0,le=E(F);(n===null||!mc(n,le))&&(n=le,e.render())},Ei=()=>{z();let F=!1;r&&(r=!1,F=!0),s&&(s=!1,F=!0),F&&e.render()};Vo(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:i,"data-editor-link-input":!0,onInput:F=>{i=F.target.value,e.render()},onKeyDown:F=>{F.key==="Enter"&&ss(F.target.value),F.key==="Escape"&&as()}}),ne("div",{class:"wf-editor-link-panel-actions"},[ne("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",onClick:as},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>ss(i)},"\u786E\u5B9A")])]):null);let io=[];ee&&(io.push(ne(nr,{accept:"image/*",multiple:!1,disabled:c,onChange:gi},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")]))),io.push(ne("span",{class:"wf-editor-img-or"},"\u6216"))),io.push(ne("input",{type:"url",class:"wf-editor-link-input",placeholder:ee?"\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"&&is(F.target.value),F.key==="Escape"&&ls()}})),_o(De&&s?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"},io),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:ls},"\u53D6\u6D88"),ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:c||void 0,onClick:()=>is(l)},ee?"\u63D2\u5165":"\u786E\u5B9A")])]):null);let Ko=null;if(De){let F=["wf-editor-content",ce&&"wf-editor-content--disabled",ue&&"wf-editor-content--has-placeholder"].filter(Boolean).join(" "),le=m;m&&y&&y.innerHTML===_&&(m=!1);let we=!m&&!le,Le={class:F,contentEditable:!ce,"data-placeholder":ue||void 0,style:{minHeight:nt},onInput:Ci,onKeyDown:Pi,onKeyUp:Si,onMouseUp:Ti,onMouseDown:Ei,ref:v};if(we)if(R){R=!1;let We=_===""?J():null;p=Qe(We??_),Le.innerHTML=ze(p),We&&(m=!0,Z?.(ze(p)))}else y&&_!==""&&ze(p)!==_&&(p=Qe(_),m=!1),Le.innerHTML=ze(p);Ko=ne("div",Le)}else Ko=ne("textarea",{class:"wf-editor-source",value:_,disabled:ce,style:{minHeight:nt},onInput:Mi});let Ii={table:()=>ki},In=V.ai,$i=(In?.actions??G).map(F=>({...F,label:vt(`ai-${F.id}`,F.label)})),jo=null,Pf=null,Fo=null,Ai=(F,le)=>{let we=qs(F,le),Le=[],We=0;for(let $n of we)$n.type==="equal"?Le.push(ne("span",{key:`e${We++}`},$n.text)):$n.type==="delete"?Le.push(ne("del",{key:`d${We++}`,class:"wf-editor-ai-diff-del"},$n.text)):Le.push(ne("ins",{key:`i${We++}`,class:"wf-editor-ai-diff-ins"},$n.text));return ne("div",{class:"wf-editor-ai-panel-body wf-editor-ai-diff"},Le)};if(!ce&&De&&(Fo=ne("button",{key:"hist",class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",fe?"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),fe=!fe,e.render()}},"\u{1F558}"),fe)){let F=[],le=h.undoStack.slice().reverse();for(let we=0;we<le.length;we++){let Le=le[we],We=h.undoStack.length-1-we;F.push(ne("button",{key:`u-${We}`,class:["wf-editor-hist-item",we===0?"wf-editor-hist-item--current":""].filter(Boolean).join(" "),type:"button",onClick:()=>Ae(We)},[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;)O();fe=!1,e.render()}},[ne("span",{class:"wf-editor-hist-label"},`\u21A9 ${Le.label}`)]))}pe(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&&!ce&&De&&(jo=ne("div",{class:"wf-editor-ai-bar"},[ne("span",{class:"wf-editor-tb-sep",key:"ai-sep"}),...$i.map(F=>ne("button",{key:`ai-${F.id}`,class:["wf-editor-tb-btn","wf-editor-tb-btn--ai",q?.streaming&&q?.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(!!Q),"data-ai-item":F.id,disabled:(q?.streaming?!0:void 0)??void 0,onClick:le=>{En(le.currentTarget),ke(F,In)}},F.label))]),Q&&q)){let F=q,le=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?Ai(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:()=>{Q=!1,q=null,e.render()}},vt("reject","\u62D2\u7EDD")),F.error?ne("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",onClick:()=>ke(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:()=>so(In)},vt("accept","\u63A5\u53D7"))])]);ro(le)}return!fe&&me&&(me.close(),me=null),!Q&&Je&&(Je.close(),Je=null),ne("div",{class:`wf-editor${ce?" wf-editor--disabled":""}`},[!ce&&He.length>0?Ls(He,n??{},!De,hi,Ii,[...jo?[jo]:[],...Fo?[Fo]:[]]):null,Ko,ne("input",{type:"hidden",value:_,"aria-hidden":"true"})])}};function mc(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 hc}from"weifuwu/vdom";import{h as vo}from"weifuwu/vdom";var Xn=hc(),gc=[{value:"default",label:"\u9ED8\u8BA4"},{value:"minimal",label:"\u6781\u7B80"},{value:"compact",label:"\u7D27\u51D1"},{value:"rounded",label:"\u5706\u6DA6"}],aa="wf_theme",yc="wf_theme_preset";function ia(o){let e=Xn?.storageGet(o)??null;return e==="light"||e==="dark"||e==="auto"?e:null}function ra(o,e){Xn?.storageSet(o,e)}function br(o){let e=Xn?.rootElement();e&&(o==="auto"?e.removeAttribute("data-theme"):e.setAttribute("data-theme",o))}function bc(o){let e=Xn?.storageGet(o)??null;return e==="minimal"||e==="compact"||e==="rounded"||e==="default"?e:null}function sa(o){let e=Xn?.rootElement();e&&(o==="default"?e.removeAttribute("data-preset"):e.setAttribute("data-preset",o))}function wc(){let o=ia(aa);return o||"auto"}var vc=async(o,e)=>{let t=o.storageKey??aa,n=o.storageKey?`${o.storageKey}_preset`:yc,r=o.mode??ia(t)??"auto",i=o.preset??bc(n)??"default";return br(r),sa(i),async a=>{let s=e?.i18n?.components?.ThemeSwitch??{},c=[{value:"auto",label:s.auto??"\u81EA\u52A8"},{value:"light",label:s.light??"\u4EAE\u8272"},{value:"dark",label:s.dark??"\u6697\u8272"}].map(d=>vo("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,br(r),ra(t,r),a.onChange?.(r),e.render())}},d.label)),f=gc.map(d=>vo("button",{type:"button",class:`wf-theme-seg wf-theme-seg--preset${i===d.value?" wf-theme-seg--active":""}`,role:"radio","aria-checked":String(i===d.value),"aria-label":d.label,onClick:()=>{i!==d.value&&(i=d.value,sa(i),ra(n,i),a.onPresetChange?.(i),e.render())}},d.label)),u=a.preset!==void 0||a.onPresetChange!==void 0?[c,vo("div",{class:"wf-theme-preset-row",role:"radiogroup","aria-label":"\u9884\u8BBE\u4E3B\u9898"},f)]:c;return vo("div",{class:"wf-theme-switch",role:"radiogroup","aria-label":s.label??"\u4E3B\u9898\u5207\u6362"},u)}};import{h as it}from"weifuwu/vdom";import{h as oe}from"weifuwu/vdom";function la(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 ca(o){return o===null?"null":typeof o=="string"?JSON.stringify(o):String(o)}var wr=async(o,e)=>{let t={},n,r=(a,s)=>{t[a]=s===void 0?!t[a]:!s,e.render()},i=(a,s,l)=>{if(l){l(a,s);return}e.browser?.copyText(`${a} = ${JSON.stringify(s)}`)};return async a=>{let{data:s,defaultExpandDepth:l=2,maxKeys:c=100,rootName:f="root",onCopy:g,className:u}=a,d=(m,y,v)=>{i(m,y,g);let w=v.currentTarget?.querySelector("path"),x=w?.getAttribute("d");w&&x&&(w.setAttribute("d","M20 6 9 17l-5-5"),e.browser?.timeout(()=>w.setAttribute("d",x),1e3))},p=(m,y,v,b)=>{if(typeof m=="object"&&m!==null){let w=t[y]===!0||v>=l&&t[y]!==!1;if(w){let M=Array.isArray(m)?`Array(${m.length})`:"Object";return oe("div",{class:"wf-json-row wf-json-collapse","data-path":y,role:"button",tabIndex:0,onClick:()=>r(y,w),onKeyDown:A=>{(A.key==="Enter"||A.key===" ")&&(A.preventDefault(),r(y,w))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:A=>{A.stopPropagation(),r(y,w)}},oe(H,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-key"},`${b}:`),oe("span",{class:"wf-json-summary"},`${M} {\u2026}`),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${y}`,tabIndex:-1,onClick:A=>{A.stopPropagation(),d(y,m,A)}},oe(H,{name:n===y?"check":"copy",size:10}))])}if(Array.isArray(m)){let M=m.map((A,D)=>p(A,`${y}[${D}]`,v+1,String(D)));return oe("div",{class:"wf-json-node","data-path":y},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabIndex:0,onClick:()=>r(y,w),onKeyDown:A=>{(A.key==="Enter"||A.key===" ")&&(A.preventDefault(),r(y,w))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:A=>{A.stopPropagation(),r(y,w)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${b}:`),oe("span",{class:"wf-json-node-summary"},`Array(${m.length})`)]),oe("div",{class:"wf-json-children"},M)])}let x=Object.entries(m),C=x.length>c,T=(C?x.slice(0,c):x).map(([M,A])=>p(A,`${y}.${M}`,v+1,M));return C&&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":y},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabIndex:0,onClick:()=>r(y,w),onKeyDown:M=>{(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),r(y,w))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:M=>{M.stopPropagation(),r(y,w)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-key"},`${b}:`),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":y},[oe("span",{class:"wf-json-toggle-placeholder"}),oe("span",{class:"wf-json-key"},`${b}:`),oe("span",{class:`wf-json-value ${la(m)}`},ca(m)),oe("button",{class:"wf-json-copy","aria-label":`\u590D\u5236 ${y}`,tabIndex:-1,onClick:w=>d(y,m,w)},oe(H,{name:"copy",size:10}))])},h;if(typeof s=="object"&&s!==null){let m=t[f]===!0;h=m?oe("div",{class:"wf-json-row wf-json-collapse","data-path":f,role:"button",tabIndex:0,onClick:()=>r(f,m),onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u5C55\u5F00",tabIndex:-1,onClick:y=>{y.stopPropagation(),r(f,m)}},oe(H,{name:"chevron-right",size:10})),oe("span",{class:"wf-json-summary"},"Object {\u2026}")]):Array.isArray(s)?oe("div",{class:"wf-json-node","data-path":f},[oe("div",{class:"wf-json-row wf-json-row--header",role:"button",tabIndex:0,onClick:()=>r(f,m),onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:y=>{y.stopPropagation(),r(f,m)}},oe(H,{name:"chevron-down",size:10})),oe("span",{class:"wf-json-node-summary"},`Array(${s.length})`)]),oe("div",{class:"wf-json-children"},s.map((y,v)=>p(y,`${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,onClick:()=>r(f,m),onKeyDown:y=>{(y.key==="Enter"||y.key===" ")&&(y.preventDefault(),r(f,m))}},[oe("button",{class:"wf-json-toggle","aria-label":"\u6536\u8D77",tabIndex:-1,onClick:y=>{y.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(s).length})`)]),oe("div",{class:"wf-json-children"},(()=>{let y=Object.entries(s),v=y.length>c,b=(v?y.slice(0,c):y).map(([w,x])=>p(x,`${f}.${w}`,1,w));return v&&b.push(oe("div",{class:"wf-json-more"},`+${y.length-c} \u9879\uFF08\u61D2\u5C55\u5F00\uFF09`)),b})())])}else h=oe("div",{class:"wf-json-row"},[oe("span",{class:`wf-json-value ${la(s)}`},ca(s))]);return oe("div",{class:["wf-json-viewer",u].filter(Boolean).join(" ")},[h])}};var xc={running:"settings",ok:"check",error:"close"},vr=async(o,e)=>async t=>{let{call:n,progress:r,result:i,renderArgs:a}=t,s=i?i.ok?"ok":"error":"running",l=a?a(n.args):it(wr,{data:n.args,defaultExpandDepth:1,maxKeys:50,rootName:"args"}),c=r?[r.message?it("div",{class:"wf-toolcall-msg"},`${r.message} (${r.step}/${r.total})`):null,it("div",{class:"wf-toolcall-bar",role:"progressbar","aria-valuenow":r.step,"aria-valuemax":r.total},[it("div",{class:"wf-toolcall-bar-fill",style:{width:`${Math.min(100,r.step/Math.max(1,r.total)*100)}%`}})])]:null,f=i&&!i.ok&&i.error?it("div",{class:"wf-toolcall-error"},`${i.error.code}: ${i.error.message}`):null;return it("div",{class:`wf-toolcall wf-toolcall--${s}`},[it("div",{class:"wf-toolcall-header"},[it("span",{class:`wf-toolcall-icon wf-toolcall-icon--${s}`},it(H,{name:xc[s]})),it("span",{class:"wf-toolcall-name"},n.name)]),it("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 ot}from"weifuwu/vdom";var xo=async(o,e)=>{let t,n,r=!1,i=()=>{};e.ui.hold(()=>{clearTimeout(t),clearInterval(n)});let a=l=>{clearTimeout(t),clearInterval(n),r=!1,t=setTimeout(()=>{r=!0,n=setInterval(()=>i(l),60)},500)},s=()=>{clearTimeout(t),clearInterval(n)};return async l=>{let{value:c=null,onChange:f,min:g,max:u,step:d=1,precision:p,label:h,name:m,placeholder:y,disabled:v,error:b,hint:w,required:x,className:C}=l,$=I=>{let S=I;return g!=null&&(S=Math.max(g,S)),u!=null&&(S=Math.min(u,S)),p!=null&&(S=Number(S.toFixed(p))),S},T=I=>{if(v)return;f?.($(Number(((c??0)+I*d).toFixed(10))))};i=T;let M=I=>{if(v)return;let S=I.target.value.trim();if(S===""||S==="-"){f?.(null);return}if(!/^-?\d*\.?\d+$/.test(S))return;let k=Number(S);Number.isNaN(k)||f?.($(k))},A=c==null?"":String(p!=null?c.toFixed(p):c),D=h?ot("label",{class:"wf-inputnumber-label"},[h,x?ot("span",{class:"wf-inputnumber-req"},"*"):null].filter(Boolean)):null,L=ot("input",{class:"wf-inputnumber-input",type:"text",inputMode:"decimal",value:A,placeholder:y,name:m,disabled:v,onInput:M,onBlur:()=>{c!=null&&f?.($(c))}}),O=ot("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u589E\u52A0",disabled:v,onClick:()=>{if(r){r=!1;return}T(1)},onPointerDown:()=>a(1),onPointerUp:s,onPointerLeave:s},ot(H,{name:"chevron-up",size:12})),B=ot("button",{class:"wf-inputnumber-btn",type:"button","aria-label":"\u51CF\u5C11",disabled:v,onClick:()=>{if(r){r=!1;return}T(-1)},onPointerDown:()=>a(-1),onPointerUp:s,onPointerLeave:s},ot(H,{name:"chevron-down",size:12})),W=ot("div",{class:`wf-inputnumber${v?" wf-inputnumber--disabled":""}${b?" wf-inputnumber--err":""}${C?` ${C}`:""}`},[L,ot("div",{class:"wf-inputnumber-btns"},[O,B])]),K=[];return D&&K.push(D),K.push(W),b&&K.push(ot("div",{class:"wf-inputnumber-err"},b)),w&&!b&&K.push(ot("div",{class:"wf-inputnumber-hint"},w)),ot("div",{class:"wf-inputnumber-wrap"},K)}};function xr(o,e){console.warn(`[JsonSchemaForm] \u5B57\u6BB5 "${o}" \u4E0D\u652F\u6301 ${e}\u2014\u2014\u964D\u7EA7\u4E3A\u6587\u672C\u8F93\u5165`)}function kc(o){return{...o??{}}}function yn(o,e,t){let n=o;for(let r=0;r<e.length-1;r++){let i=e[r];(n[i]==null||typeof n[i]!="object")&&(n[i]={}),n=n[i]}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 ko(o,e,t){let n=Vt(o,e.slice(0,-1));n&&typeof n=="object"&&(n[e[e.length-1]]=t)}function Cc(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 kr=async(o,e)=>{let t=kc(o.value);function n(){e.render(),o.onChange?.(t)}function r(a,s,l,c,f,g=!1){let u=f[l.join(".")],d=s.title??a;if(s.enum?.length){let p=s.enum.map(h=>({value:String(h),label:String(h)}));return Pe(dn,{key:a,label:d,required:g,error:u,hint:s.description},Pe(po,{value:c==null?void 0:String(c),options:p,error:u,onChange:h=>{yn(t,l,h==null?void 0:s.enum?.find(m=>String(m)===h)),n()}}))}switch(s.type){case"number":case"integer":return Pe(dn,{key:a,label:d,required:g,error:u,hint:s.description},Pe(xo,{value:c==null?null:Number(c),min:s.minimum,max:s.maximum,error:u,onChange:p=>{yn(t,l,p??void 0),n()}}));case"boolean":return Pe(dn,{key:a,label:d,required:g,error:u,hint:s.description},Pe(fo,{checked:!!c,onChange:p=>{yn(t,l,p),n()}}));case"object":return Pe("div",{key:a,class:"wf-jsf-obj"},[Pe("div",{class:"wf-jsf-obj-title"},[d,g?Pe("span",{class:"wf-field-req"},"*"):null]),...Object.entries(s.properties??{}).map(([p,h])=>r(p,h,[...l,p],Vt(t,[...l,p]),f,s.required?.includes(p)))]);case"array":{let p=Array.isArray(c)?c:[],h=p.map((m,y)=>{let v=[...l,String(y)];return Pe("div",{key:y,class:"wf-jsf-arr-item"},[i(String(y),s.items??{},v,p[y],f),Pe("button",{type:"button",class:"wf-jsf-arr-del","aria-label":`\u5220\u9664 ${d} \u7B2C ${y+1} \u9879`,onClick:()=>{let b=Array.isArray(Vt(t,l))?[...Vt(t,l)]:[];b.splice(y,1),yn(t,l,b),n()}},Pe(H,{name:"trash"}))])});return Pe("div",{key:a,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(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(H,{name:"plus"}))]),...h])}default:return s.type&&s.type!=="string"&&xr(a,`type "${s.type}"`),s.$ref&&xr(a,`$ref \u5F15\u7528\uFF08${s.$ref}\uFF09`),Pe(dn,{key:a,label:d,required:g,error:u,hint:s.description},Pe(lo,{value:c==null?"":String(c),onInput:p=>{yn(t,l,p.target.value),n()}}))}}function i(a,s,l,c,f){if(s.enum?.length){let g=s.enum.map(u=>({value:String(u),label:String(u)}));return Pe(po,{value:c==null?void 0:String(c),options:g,onChange:u=>{ko(t,l,s.enum?.find(d=>String(d)===u)),n()}})}switch(s.type){case"number":case"integer":return Pe(xo,{value:c==null?null:Number(c),onChange:g=>{ko(t,l,g??void 0),n()}});case"boolean":return Pe(fo,{checked:!!c,onChange:g=>{ko(t,l,g),n()}});case"object":xr(l.join("."),"\u6570\u7EC4\u5BF9\u8C61 items\uFF08\u5BF9\u8C61\u6570\u7EC4\uFF09");break;default:return Pe(lo,{value:c==null?"":String(c),onInput:g=>{ko(t,l,g.target.value),n()}})}}return async a=>{let s=a.schema,l={};function c(u,d,p=!1){if(u.type==="object"){for(let[m,y]of Object.entries(u.properties??{}))c(y,[...d,m],u.required?.includes(m));return}let h=Cc(u,Vt(t,d),p);h&&(l[d.join(".")]=h)}for(let[u,d]of Object.entries(s.properties??{}))c(d,[u],s.required?.includes(u));let f=Object.entries(s.properties??{}).map(([u,d])=>r(u,d,[u],Vt(t,[u]),l,s.required?.includes(u))),g=a.onSubmit?Pe("button",{type:"button",class:"wf-btn wf-btn--primary wf-jsf-submit",onClick:()=>{Object.keys(l).length>0||a.onSubmit?.(t)}},a.submitLabel??"\u63D0\u4EA4"):null;return Pe("div",{class:"wf-jsf"},[s.title?Pe("div",{class:"wf-jsf-title"},s.title):null,...f,g])}};var Mc={pending:"\u7B49\u5F85\u5BA1\u6279",approved:"\u5DF2\u6279\u51C6",rejected:"\u5DF2\u62D2\u7EDD",timeout:"\u5BA1\u6279\u8D85\u65F6"},Cr=async(o,e)=>{let t="",n=!1,r=!1;return async i=>{let{request:a,status:s="pending",onApprove:l,onReject:c,renderDetail:f,loading:g,argsSchema:u}=i,d=f?f(a):[$e("div",{class:"wf-approval-name"},a.name),$e("code",{class:"wf-approval-args"},JSON.stringify(a.args))],p=u&&r?$e("div",{class:"wf-approval-modify"},[$e(kr,{schema:u,value:a.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=s==="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--${s}`},Mc[s]);return $e("div",{class:`wf-approval wf-approval--${s}`},[$e("div",{class:"wf-approval-header"},[$e("span",{class:"wf-approval-icon"},$e(H,{name:s==="pending"?"pause":s==="approved"?"check":"close"})),$e("span",{class:"wf-approval-title"},"\u5DE5\u5177\u5BA1\u6279")]),$e("div",{class:"wf-approval-detail"},d),a.reason?$e("div",{class:"wf-approval-reason"},a.reason):null,h,p])}};import{createClientBrowser as Pc}from"weifuwu/vdom";import{h as qe}from"weifuwu/vdom";import{h as Jt}from"weifuwu/vdom";var Mr=async(o,e)=>{let t=!!o.defaultExpanded;return async n=>{let{content:r,streaming:i,label:a="\u5DF2\u601D\u8003"}=n,s=()=>{t=!t,e.render()};return Jt("div",{class:`wf-reasoning${i?" wf-reasoning--streaming":""}`},[Jt("button",{type:"button",class:"wf-reasoning-toggle","aria-expanded":t,onClick:s,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),s())}},[Jt("span",{class:`wf-reasoning-chevron${t?" wf-reasoning-chevron--open":""}`},Jt(H,{name:"chevron-down"})),Jt("span",{class:"wf-reasoning-label"},i?`${a}\u2026`:a),i?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 bn}from"weifuwu/vdom";var Pr=async(o,e)=>async 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=e.ui.useControlledInput({value:t.value??"",onChange:t.onChange,name:"ChatInput"});t.onControl&&t.onControl({setKeyword:l=>{r.setKeyword(l)},setValue:l=>{r.setKeyword(l),t.onChange?.(l)}});let i=!1,a=()=>{let l=r.keyword.trim();l&&(r.setKeyword(""),t.onSend(l))},s={class:"wf-chat-input",value:r.keyword,placeholder:n.placeholder,disabled:t.disabled,onInput:l=>{i||l.isComposing||(r.setKeyword(l.target.value),t.onChange?.(l.target.value))},onCompositionStart:()=>{i=!0},onCompositionEnd:l=>{i=!1;let c=l.target?.value??"";r.setKeyword(c),t.onChange?.(c)},onKeyDown:l=>{if(l.key==="Enter"&&!(i||l.isComposing)){if(l.ctrlKey||l.metaKey){l.preventDefault(),a();return}t.multiline&&l.shiftKey||(l.preventDefault(),a())}}};return bn("div",{class:"wf-chat-inputbar"},[t.multiline?bn("textarea",{...s,rows:1,style:{resize:"none"}}):bn("input",{...s,type:"text"}),t.actions??null,t.streaming?bn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>t.onStop?.()},n.stop):bn("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",disabled:t.disabled,onClick:()=>a()},n.send),!t.streaming&&t.error?bn("button",{class:"wf-btn wf-btn--danger wf-btn--sm",type:"button",onClick:()=>t.onRetry?.()},n.retry):null])};var Sc={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"},Tc=async(o,e)=>{let t=e.browser??Pc(),n,r=!0,i=o.chat,a,s=()=>{a?.();let d=i;a=d?.subscribe?d.subscribe(()=>e.render()):void 0};s();let l=d=>{d||(a?.(),a=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 async d=>{let{chat:p,raiseOnKeyboard:h=!1}=d,m={...Sc,...d.labels};p!==i&&(i=p,s()),n&&(r=n.scrollHeight-g.y-n.clientHeight<48),r&&queueMicrotask(f);let y=p.messages??[],v=[];y.length===0&&v.push(qe("p",{class:"wf-aichat-empty"},m.empty));for(let b of y)v.push(Ec(b,d,m));return p.step&&v.push(qe("div",{class:"wf-aichat-status"},p.step.type==="llm"?m.thinking:m.runningTool(p.step.name))),p.usage&&v.push(qe("div",{class:"wf-aichat-usage"},m.tokens(p.usage))),p.error&&v.push(qe("div",{class:"wf-aichat-error"},m.error(p.error))),qe("div",{class:"wf-aichat",ref:l},[qe("div",{class:"wf-aichat-list",style:{maxHeight:d.maxHeight??"70vh"},ref:u},v),qe("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},[qe(Pr,{value:p.input??"",onChange:b=>{p.setInput(b)},onSend:b=>{p.setInput(b),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 Ec(o,e,t){let n=[];if(o.toolCalls?.length){let r=o.toolCalls.map((i,a)=>qe(vr,{key:`${o.id}-tool-${a}`,call:i.call,progress:i.progress,result:i.result,renderArgs:e.renderToolArgs}));n.push(qe("div",{class:"wf-aichat-tools"},r))}if(o.approval){let r=qe(Cr,{request:o.approval,argsSchema:e.approveSchema?.(o.approval),onApprove:i=>e.chat.approve(i?"modified":"approved",void 0,i),onReject:i=>e.chat.approve("rejected",i??"\u7528\u6237\u62D2\u7EDD")});n.push(qe("div",{class:"wf-aichat-approval"},r))}return o.reasoning&&n.push(qe(Mr,{content:o.reasoning,streaming:o.status==="streaming"})),n.push(qe("div",{class:`wf-aichat-bubble wf-aichat-bubble--${o.role}`},e.renderMessage?e.renderMessage(o):o.content||"\u2026")),qe("div",{key:o.id,class:`wf-aichat-msg wf-aichat-msg--${o.role}`},n)}import{h as lt}from"weifuwu/vdom";var Ic=async o=>async e=>lt("div",{class:"wf-center wf-p-xl wf-bg-secondary",style:{minHeight:"100vh"}},[lt(Qo,{},[lt("div",{class:"wf-stack wf-gap-sm wf-text-center wf-mb-lg"},[e.logo?lt("div",{class:"wf-center"},e.logo):null,lt("div",{class:"wf-text-2xl wf-text-semibold"},e.title),e.subtitle?lt("div",{class:"wf-text-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-mt-md wf-text-sm"},e.footer):null])]);import{h as Ee,Fragment as Lc}from"weifuwu/vdom";var $c=/^https?:\/\//i;function Sr(o){let e=o.trim();return $c.test(e)?e:null}function Ve(o){let e=[],t=0,n="",r=()=>{n&&(e.push({type:"text",text:n}),n="")};for(;t<o.length;){let i=o[t];if(i==="`"){let a=o.indexOf("`",t+1);if(a>t){r(),e.push({type:"code",text:o.slice(t+1,a)}),t=a+1;continue}n+=i,t++;continue}if(i==="*"&&o[t+1]==="*"){let a=o.indexOf("**",t+2);if(a>t){r(),e.push({type:"bold",children:Ve(o.slice(t+2,a))}),t=a+2;continue}}if(i==="~"&&o[t+1]==="~"){let a=o.indexOf("~~",t+2);if(a>t){r(),e.push({type:"del",children:Ve(o.slice(t+2,a))}),t=a+2;continue}}if(i==="*"){let a=o.indexOf("*",t+1);if(a>t){r(),e.push({type:"italic",children:Ve(o.slice(t+1,a))}),t=a+1;continue}}if(i==="["){let a=o.indexOf("]",t+1);if(a>t&&o[a+1]==="("){let s=o.indexOf(")",a+2);if(s>a){let l=o.slice(t+1,a),c=o.slice(a+2,s),f=Sr(c);if(f){r(),e.push({type:"link",href:f,children:Ve(l)}),t=s+1;continue}n+=o.slice(t,s+1),t=s+1;continue}}}n+=i,t++}return r(),e}function Yn(o){let e=o.replace(/\r\n/g,`
|
|
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,`
|
|
25
25
|
`).split(`
|
|
26
|
-
`),t=[],n=0,r=
|
|
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
27
|
`)+(p.length?`
|
|
28
|
-
`:"")});continue}let a
|
|
29
|
-
`))});continue}if(
|
|
30
|
-
`))})}return t}import{h as ct}from"weifuwu/vdom";var
|
|
31
|
-
`).map(
|
|
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
|
|
32
32
|
|
|
33
|
-
\u5F53\u524D\u5DE5\u4F5C\u8868\u300C${
|
|
34
|
-
${
|
|
33
|
+
\u5F53\u524D\u5DE5\u4F5C\u8868\u300C${I.name}\u300D\u9644\u8FD1\u5355\u5143\u683C\u6570\u636E\uFF1A
|
|
34
|
+
${A}
|
|
35
35
|
|
|
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:
|
|
40
|
-
`):"\uFF08\u65E0\u76F8\u90BB\u6570\u636E\uFF09"}import{h as
|
|
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
|
|
41
41
|
|
|
42
|
-
${
|
|
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`:``})}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+=``}else if(v.type==="hr")h+=`
|
|
43
43
|
---
|
|
44
|
-
`;else if(v.type==="pre"){let
|
|
45
|
-
`+
|
|
46
|
-
`)}else{let
|
|
47
|
-
`&&e.push(
|
|
48
|
-
`)}function So(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function qc(o){return o.replace(/<[^>]*>/g,"").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}function Xc(o){return So(o).replace(/"/g,""")}zt();import{createClientBrowser as gd}from"weifuwu/vdom";function yd(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 Ia=async(o,e)=>{let t=e.browser??gd(),n=un,r=null,i=null,a=null,s=!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},ie("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},ie("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)},ie("preview",{type:"remote",url:p,status:"error",message:g.error}),e.render()}}};return async p=>{let{type:h,content:m="",url:y,fileName:v,editable:b,ai:w,onSave:x,onLoad:C,height:$="400px"}=p,T=h??yd(v,y),M=T==="md"||T==="text",A=m||(g.status==="idle"?g.content??"":"");(T==="md"||T==="html"||T==="text")&&y&&u!==y&&d(y);let D=(S,k)=>{f||(f=!0,ie("preview",{type:T,chars:S,blocks:k,status:"loaded"}),C?.({type:T,chars:S,blocks:k}))},L=null;if(T==="md")if(b&&s){c||(c=!0,n=Qe(Ar(A)));let S=n.text.replace(/\uFFFC/g,"").length;D(S,n.blockProps.length+n.embeds.length+1),L=ge(qn,{key:"editor",minHeight:$,ai:w,onChange:k=>{n=Qe(k),l=!0,e.render()}})}else D(A.length,0),L=ge("div",{class:"wf-filepreview-doc",style:{height:$,overflow:"auto"}},[v?ge("div",{class:"wf-filepreview-name"},v):null,ge(Jn,{key:"md",content:c?Qn(n):A})]);else T==="text"?b&&s?(c||(c=!0,n=Qe(`<p>${bd(A)}</p>`)),D(A.length,1),L=ge(qn,{key:"editor",minHeight:$,ai:w,onChange:S=>{n=Qe(S),l=!0,e.render()}})):(D(A.length,1),L=ge("div",{class:"wf-filepreview-doc",style:{height:$,overflow:"auto"}},[v?ge("div",{class:"wf-filepreview-name"},v):null,ge("pre",{class:"wf-filepreview-text"},c?n.text:A)])):T==="html"?(D(A.length,0),L=ge("div",{class:"wf-filepreview-frame",style:{height:$}},[ge("iframe",{class:"wf-filepreview-iframe",sandbox:"allow-same-origin",srcDoc:A,style:{width:"100%",height:"100%",border:"none"}})])):T==="office"?b&&r?(c||(c=!0,n=r),D(n.text.replace(/\uFFFC/g,"").length,n.blockProps.length+n.embeds.length+1),L=ge(qn,{key:"editor",minHeight:$,ai:w,onChange:S=>{n=Qe(S),l=!0,e.render()}})):b&&i?(D(0,0),L=ge(Mo,{key:"sheet-grid",ai:w?{url:w.url,headers:w.headers}:void 0,height:$,onChange:S=>{i=S}})):b&&a?(D(0,0),L=ge(Po,{key:"slide-canvas",ai:w?{url:w.url,headers:w.headers}:void 0,height:$,onChange:S=>{a=S}})):b?(D(0,0),L=ge("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")):(D(0,0),L=y?ge("div",{class:"wf-filepreview-frame",style:{height:$}},[ge("iframe",{class:"wf-filepreview-iframe",src:y,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):ge("div",{class:"wf-filepreview-empty"},"office \u6587\u4EF6\u9700\u8981 URL \u6216\u5F00\u542F editable \u672C\u5730\u5BFC\u5165")):T==="pdf"&&(D(0,0),L=y?ge("div",{class:"wf-filepreview-frame",style:{height:$}},[ge("iframe",{class:"wf-filepreview-iframe",src:y,sandbox:"allow-same-origin",style:{width:"100%",height:"100%",border:"none"}})]):ge("div",{class:"wf-filepreview-empty"},"\u7F3A\u5C11\u6587\u4EF6 URL"));g.status==="loading"&&(T==="md"||T==="html"||T==="text")?L=ge("div",{class:"wf-filepreview-empty"},"\u52A0\u8F7D\u4E2D\u2026"):g.status==="error"&&(T==="md"||T==="html"||T==="text")&&(L=ge("div",{class:"wf-filepreview-empty wf-filepreview-error"},`\u52A0\u8F7D\u5931\u8D25: ${g.error}`));let O=()=>{if(!x||!M||!b)return;let S=T==="md"?Qn(n):n.text;x(S,T),l=!1,ie("preview",{type:T,status:"saved",chars:S.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 S=B.files?.[0];if(!S)return;let k=/\.xlsx?$/i.test(S.name),E=/\.pptx?$/i.test(S.name);S.arrayBuffer().then(async P=>{try{if(E){let{pptxToDeck:z}=await Promise.resolve().then(()=>(Or(),Nr)),N=await z(new Uint8Array(P));a=N.deck,r=null,i=null,ie("preview",{type:"office",status:"imported",docType:"pptx",warnings:N.warnings.length})}else if(k){let{xlsxToWorkbook:z}=await Promise.resolve().then(()=>(Ur(),Br)),N=await z(new Uint8Array(P));i=N.workbook,r=null,a=null,ie("preview",{type:"office",status:"imported",docType:"xlsx",warnings:N.warnings.length})}else{let{docxToDoc:z}=await Promise.resolve().then(()=>(Vr(),zr)),N=await z(new Uint8Array(P));r=N.doc,i=null,a=null,n=N.doc,c=!0,s=!0,l=!1,ie("preview",{type:"office",status:"imported",docType:"docx",warnings:N.warnings.length})}e.render()}catch(z){ie("preview",{type:"office",status:"import-error",message:String(z)})}})},typeof document<"u"&&t.bodyAppend?.(B)),B.click()},K=()=>{if(r)Promise.resolve().then(()=>(Vr(),zr)).then(({docToDocx:S})=>{let k=S(n),E=t.downloadFile(v??"office-doc.docx",k.data,"application/vnd.openxmlformats-officedocument.wordprocessingml.document");ie("preview",{type:"office",status:E?"exported":"export-error"})});else if(i){let S=i;Promise.resolve().then(()=>(Ur(),Br)).then(({workbookToXlsx:k})=>{let E=k(S),P=t.downloadFile(v??"sheet.xlsx",E.data,"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");ie("preview",{type:"office",status:P?"exported":"export-error"})})}else if(a){let S=a;Promise.resolve().then(()=>(Or(),Nr)).then(({deckToPptx:k})=>{let E=k(S),P=t.downloadFile(v??"deck.pptx",E.data,"application/vnd.openxmlformats-officedocument.presentationml.presentation");ie("preview",{type:"office",status:P?"exported":"export-error"})})}},I=async()=>{let S=M?s?Qn(n):A:m;await t.copyText(S),ie("preview",{type:T,status:"copied",chars:S.length})};return ge("div",{class:`wf-filepreview wf-filepreview--${T}`,onKeyDown:S=>{(S.ctrlKey||S.metaKey)&&S.key.toLowerCase()==="s"&&M&&b&&(S.preventDefault(),O())}},[L,M||T==="office"||T==="html"&&m?ge("div",{class:"wf-filepreview-actions"},[T==="office"&&b?ge("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,T==="office"&&b&&(r||i||a)?ge("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"dl","data-dl":"true",onClick:()=>K()},a?"\u4E0B\u8F7D pptx":i?"\u4E0B\u8F7D xlsx":"\u4E0B\u8F7D docx"):null,M&&b?ge("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"toggle",onClick:()=>{s=!s,ie("preview",{type:T,status:s?"edit-start":"view"}),e.render()}},s?"\u9884\u89C8":"\u7F16\u8F91"):null,ge("button",{class:"wf-btn wf-btn--ghost wf-btn--sm",type:"button",key:"copy","data-copy":"true",onClick:()=>{I()}},"\u590D\u5236"),...M&&b&&x&&(s||l)?[l?ge("span",{class:"wf-filepreview-dirty",key:"dirty"},"\u672A\u4FDD\u5B58"):null,ge("span",{class:"wf-filepreview-actions-hint",key:"hint"},"Ctrl+S \u4FDD\u5B58"),ge("button",{class:"wf-btn wf-btn--primary wf-btn--sm",type:"button",key:"save",onClick:()=>O()},"\u4FDD\u5B58")]:[]]):null])}};function bd(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}import{h as It}from"weifuwu/vdom";var wd=async(o,e)=>async t=>{let{items:n,mode:r="left",reverse:i}=t,s=(i?[...n].reverse():n).map((l,c)=>{let{key:f,title:g,time:u,content:d,status:p="default",dot:h,onClick:m}=l,y=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)),b=d!=null?It("div",{class:"wf-timeline-content"},d):null,w=It("div",{class:"wf-timeline-col"},[v,b].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?C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())}:void 0},[y,w]);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?C=>{(C.key==="Enter"||C.key===" ")&&(C.preventDefault(),m())}:void 0},[y,w])});return It("ul",{class:`wf-timeline${r==="horizontal"?" wf-timeline--h":""}`},s)};import{h as $o}from"weifuwu/vdom";var vd=async(o,e)=>async t=>{let{items:n,column:r=1,bordered:i,size:a="md",className:s}=t,l=n.map((c,f)=>$o("div",{key:f,class:"wf-descriptions-item",style:c.span&&c.span>1?{gridColumn:`span ${c.span}`}:void 0},[$o("dt",{class:"wf-descriptions-label"},c.label),$o("dd",{class:"wf-descriptions-value"},c.value)]));return $o("dl",{class:`wf-descriptions wf-descriptions--${r} wf-descriptions--${a}${i?" wf-descriptions--bordered":""}${s?` ${s}`:""}`},l)};import{h as Ao}from"weifuwu/vdom";var xd=async(o,e)=>async t=>{let{items:n,max:r,size:i,className:a}=t;if(!n||n.length===0)return null;let s=r&&n.length>r?n.slice(0,r):n,l=r?Math.max(0,n.length-r):0,c=s.map((g,u)=>Ao("span",{key:u,class:"wf-avatar-group-item"},Ao(cn,{name:g.name,src:g.src,color:g.color,size:i}))),f=l>0?Ao("span",{class:"wf-avatar-group-more",role:"img","aria-label":`\u8FD8\u6709 ${l} \u4EBA`},`+${l}`):null;return Ao("div",{class:`wf-avatar-group${a?` ${a}`:""}`},[...c,f].filter(Boolean))};import{h as Do}from"weifuwu/vdom";var kd=async(o,e)=>async t=>{let{content:n,role:r,status:i="complete",actions:a,className:s}=t,l=r==="user"?"wf-bubble--own":"wf-bubble--ai",c=i==="error"?" wf-bubble--error":i==="streaming"?" wf-bubble--streaming":"",f=a?Do("div",{class:"wf-bubble-body"},[Do("div",{class:"wf-bubble-text"},n),Do("div",{class:"wf-bubble-actions"},a)]):n;return Do("div",{class:`wf-bubble ${l}${c}${s?` ${s}`:""}`,role:i==="error"?"alert":void 0},f)};import{h as $t}from"weifuwu/vdom";var Cd=async(o,e)=>{let t=!1;return async n=>{let{value:r,onInput:i,onChange:a,label:s,name:l,placeholder:c,disabled:f,error:g,hint:u,required:d,autoComplete:p,className:h}=n,m=()=>{f||(t=!t,e.render())},y=s?$t("label",{class:"wf-input-label"},[s,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:i,onChange:a}),b=$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})),w=$t("div",{class:"wf-input-wrap wf-password"},[v,b]),x=[];return y&&x.push(y),x.push(w),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 Md=async(o,e)=>{let t=!1;return async n=>{let{placeholder:r,maxTags:i,allowDuplicates:a,disabled:s,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=$=>{let T=u?.controlled?.value!==void 0;u?.setValue($),T||n.onChange?.($)},h=$=>{if(s)return;let T=$.trim().replace(/,$/,"");T&&(i!=null&&d.length>=i||!a&&d.includes(T)||p([...d,T]))},m=$=>{s||p(d.filter(T=>T!==$))},y=$=>{let T=$.target;if($.key==="Enter"||$.key===","){if($.preventDefault(),t)return;h(T.value),T.value=""}else $.key==="Backspace"&&!T.value&&d.length>0&&m(d[d.length-1])},v=l?xt("label",{class:"wf-input-label"},l):null,b=d.map($=>xt("span",{key:$,class:"wf-tags-tag"},[xt("span",{class:"wf-tags-text"},$),xt("button",{class:"wf-tags-remove",type:"button","aria-label":`\u79FB\u9664 ${$}`,onClick:()=>m($)},xt(H,{name:"close",size:12}))])),w=xt("input",{class:"wf-tags-input",type:"text",placeholder:d.length===0?r:void 0,disabled:s,onKeyDown:y,onCompositionStart:()=>{t=!0},onCompositionEnd:()=>{t=!1}}),x=xt("div",{class:`wf-tags${s?" wf-tags--disabled":""}${c?" wf-tags--err":""}${g?` ${g}`:""}`},[...b,w]),C=[];return v&&C.push(v),C.push(x),c&&C.push(xt("div",{class:"wf-input-err"},c)),f&&!c&&C.push(xt("div",{class:"wf-input-hint"},f)),xt("div",{class:"wf-field"},C)}};import{h as _r}from"weifuwu/vdom";var Pd=async(o,e)=>async t=>{let{text:n,query:r,className:i}=t,a=(Array.isArray(r)?r:r?[r]:[]).filter(Boolean).map(f=>f.toLowerCase());if(a.length===0)return _r("span",{class:`wf-highlight${i?` ${i}`:""}`},n);let s=[],l=0,c=n.toLowerCase();for(;l<n.length;){let f=null;for(let g of a){let u=c.indexOf(g,l);u>=0&&(!f||u<f.start)&&(f={start:u,end:u+g.length})}if(!f){s.push(n.slice(l));break}f.start>l&&s.push(n.slice(l,f.start)),s.push(_r("mark",{class:"wf-highlight-mark"},n.slice(f.start,f.end))),l=f.end}return _r("span",{class:`wf-highlight${i?` ${i}`:""}`},s)};import{h as Zt}from"weifuwu/vdom";var Sd=async(o,e)=>async t=>{let{items:n,renderItem:r,divided:i,header:a,footer:s,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${i?" wf-list--divided":""}${f?` ${f}`:""}`},[a?Zt("div",{class:"wf-list-header"},a):null,Zt("ul",{class:"wf-list-body"},u),s?Zt("div",{class:"wf-list-footer"},s):null].filter(Boolean))};import{h as kn}from"weifuwu/vdom";var Td={success:"check",error:"close",warning:"alert",info:"info"},Ed=async(o,e)=>async t=>{let{status:n="info",title:r,desc:i,extra:a,className:s}=t;return kn("div",{class:`wf-result wf-result--${n}${s?` ${s}`:""}`},[kn("div",{class:"wf-result-icon","aria-hidden":"true"},kn(H,{name:Td[n],size:40})),kn("div",{class:"wf-result-title"},r),i?kn("div",{class:"wf-result-desc"},i):null,a?kn("div",{class:"wf-result-extra"},a):null].filter(Boolean))};import{h as Qt}from"weifuwu/vdom";var Id=async(o,e)=>{let t=-1,n=r=>{t!==r&&(t=r,e.render())};return async r=>{let{count:i=5,size:a="md",readOnly:s,disabled:l,allowClear:c,allowHalf:f,"aria-label":g}=r,u=s||l,d=e?.ui?.useControlled({value:r.value,onChange:r.onChange,name:u?void 0:"Rate"}),p=d?.value??0,h=x=>{let C=d?.controlled?.value!==void 0;d?.setValue(x),C||r.onChange?.(x)},m=!s&&!l,y=t>=0?t+1:p,v=f?.5:1,b=x=>{if(!m)return;let C=x.key;C==="ArrowRight"?(x.preventDefault(),h(Math.min(p+v,i))):C==="ArrowLeft"?(x.preventDefault(),h(Math.max(p-v,0))):C==="Home"?(x.preventDefault(),h(v)):C==="End"&&(x.preventDefault(),h(i))},w=[];for(let x=0;x<i;x++){let C=x<Math.floor(y),$=f&&x===Math.floor(y)&&y%1>=.5,M={class:`wf-rate-star${C?" wf-rate-star--on":""}${$?" wf-rate-star--half":""}`,"aria-label":`${x+1} \u661F`,key:x};m&&(M.type="button",M.onClick=L=>{if(f){let B=L.currentTarget.getBoundingClientRect(),W=L.clientX-B.left<B.width/2;h(W?x+.5:x+1)}else c&&p===x+1?h(0):h(x+1)},M.onMouseEnter=f?L=>{let B=L.currentTarget.getBoundingClientRect();n(L.clientX-B.left<B.width/2?x+.5-1:x)}:()=>n(x),M.onMouseMove=f?L=>{let B=L.currentTarget.getBoundingClientRect();n(L.clientX-B.left<B.width/2?x+.5-1:x)}:void 0,M.onMouseLeave=()=>n(-1),M.onFocus=()=>n(x),M.onBlur=()=>n(-1));let A=Qt(H,{name:"star",className:"wf-rate-star-icon"}),D=$?Qt("span",{class:"wf-rate-star-half"},[Qt("span",{class:"wf-rate-star-half-bg"},A),Qt("span",{class:"wf-rate-star-half-fg"},Qt(H,{name:"star",className:"wf-rate-star-icon"}))]):A;w.push(Qt(m?"button":"span",M,D))}return Qt("div",{class:`wf-rate wf-rate--${a}${l?" wf-rate--disabled":""}`,role:m?"radiogroup":void 0,"aria-label":g??"\u8BC4\u5206",onKeyDown:m?b:void 0},w)}};import{h as Kr}from"weifuwu/vdom";var $d=async o=>async e=>{let{level:t=1,children:n,className:r,style:i,...a}=e;return Kr(`h${t}`,{class:["wf-title",`wf-title--${t}`,r].filter(Boolean).join(" "),style:i,...a},n)},Ad=async o=>async e=>{let{type:t,strong:n,underline:r,strikethrough:i,mark:a,code:s,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"),i&&u.push("wf-text--strike"),a&&u.push("wf-text--mark"),s&&u.push("wf-text--code"),l&&l!=="md"&&u.push(`wf-text--${l}`),f&&u.push(f),Kr("span",{class:u.join(" "),...g},c)},Dd=async o=>async e=>{let{type:t,ellipsis:n,children:r,className:i,...a}=e,s=["wf-paragraph"];return t&&s.push(`wf-text--${t}`),n&&s.push("wf-paragraph--ellipsis"),i&&s.push(i),Kr("p",{class:s.join(" "),...a},r)};import{h as $a}from"weifuwu/vdom";var Ld=async o=>async e=>{let{htmlFor:t,required:n,children:r,className:i,...a}=e,s=n?[r,$a("span",{class:"wf-label-req"},"*")]:r;return $a("label",{class:["wf-label",i].filter(Boolean).join(" "),htmlFor:t||void 0,...a},s)};import{h as Rd}from"weifuwu/vdom";var Nd=async o=>async e=>{let{ratio:t,children:n,className:r,...i}=e;return Rd("div",{class:["wf-aspect-ratio",r].filter(Boolean).join(" "),style:{"--wf-aspect-ratio":t===void 0?"16 / 9":String(t)},...i},n)};import{h as jr}from"weifuwu/vdom";var Aa=async o=>async e=>{let{pressed:t,onPressedChange:n,variant:r="default",size:i="md",disabled:a,"aria-label":s,children:l,className:c,...f}=e;return jr("button",{type:"button",class:["wf-toggle",`wf-toggle--${r}`,`wf-toggle--${i}`,t?"wf-toggle--pressed":"",c].filter(Boolean).join(" "),"aria-pressed":t?"true":"false","aria-label":s||void 0,disabled:a||void 0,onClick:a?void 0:()=>n?.(!t),...f},l)},Od=async(o,e)=>async t=>{let{type:n="single",options:r=[],size:i="md",disabled:a,"aria-label":s,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]:[],b=v.indexOf(h);b>=0?v.splice(b,1):v.push(h),m=v}else m=h;let y=c?.controlled?.value!==void 0;c?.setValue(m),y||t.onChange?.(m)},d=h=>{if(a||n!=="single")return;let m=r.findIndex(b=>b.value===f);if(m<0)return;let y=m;if(h.key==="ArrowRight")h.preventDefault(),y=Math.min(m+1,r.length-1);else if(h.key==="ArrowLeft")h.preventDefault(),y=Math.max(m-1,0);else return;let v=r[y];v&&!v.disabled&&u(v.value)},p=r.map(h=>jr(Aa,{key:h.value,pressed:g(h.value),size:i,disabled:a||h.disabled,"aria-label":h.value,onClick:a||h.disabled?void 0:()=>u(h.value)},h.label??h.value));return jr("div",{class:["wf-toggle-group",`wf-toggle-group--${i}`,l].filter(Boolean).join(" "),role:n==="single"?"radiogroup":"group","aria-label":s||void 0,onKeyDown:d},p)};import{h as Fr}from"weifuwu/vdom";var Hd=async(o,e)=>async t=>{let{options:n=[],columns:r,size:i="md",disabled:a,label:s,"aria-label":l,className:c}=t,f=e?.ui?.useControlled({value:t.value,onChange:t.onChange,name:"CheckboxGroup"}),g=f?.value??[],u=(m,y)=>{let v=y?[...new Set([...g,m])]:g.filter(w=>w!==m),b=f?.controlled?.value!==void 0;f?.setValue(v),b||t.onChange?.(v)},d=n.map(m=>Fr(qo,{key:m.value,label:m.desc?`${m.label}\uFF08${m.desc}\uFF09`:m.label,checked:g.includes(m.value),disabled:a||m.disabled,onChange:y=>u(m.value,y)})),p=[];s&&p.push(Fr("div",{class:"wf-checkbox-group-label"},s)),p.push(...d);let h=["wf-checkbox-group",`wf-checkbox-group--${i}`];return r&&h.push(`wf-checkbox-group--cols-${r}`),c&&h.push(c),Fr("div",{class:h.join(" "),role:"group","aria-label":l||s||void 0},p)};import{h as Da}from"weifuwu/vdom";var Bd=async(o,e)=>{let t=[],n=a=>{let s=t[a];s&&(s.focus(),s.select())},r=new Map,i=a=>{let s=r.get(a);return s||(s=l=>{l&&(t[a]=l)},r.set(a,s)),s};return async a=>{let{length:s=6,value:l="",onChange:c,type:f="number",size:g="md",disabled:u,"aria-label":d}=a,p=f==="number",h=(b,w)=>{if(u||!c)return;let x=w.slice(-1);if(p&&!/^\d$/.test(x))return;let C=l.split("");for(;C.length<s;)C.push("");C[b]=x,c(C.join("").slice(0,s)),b+1<s&&n(b+1)},m=(b,w)=>{if(u)return;let x=w.key;if(x==="Backspace")if(w.preventDefault(),l[b]){let C=l.split("");C[b]="",c?.(C.join(""))}else b>0&&n(b-1);else x==="ArrowLeft"?(w.preventDefault(),b>0&&n(b-1)):x==="ArrowRight"?(w.preventDefault(),b+1<s&&n(b+1)):x==="Home"?(w.preventDefault(),n(0)):x==="End"&&(w.preventDefault(),n(s-1))},y=b=>{if(u||!c)return;let w=b.clipboardData?.getData("text")??"";if(b.preventDefault(),!w)return;let x=w.slice(0,s);p&&(x=x.replace(/\D/g,"").slice(0,s)),x&&(c(x),n(Math.min(x.length,s-1)))},v=[];for(let b=0;b<s;b++)v.push(Da("input",{key:b,type:"text",class:"wf-pin-input-cell",value:l[b]??"",maxLength:1,inputMode:p?"numeric":void 0,pattern:p?"[0-9]":void 0,"aria-label":`${d??"\u9A8C\u8BC1\u7801"}\u7B2C ${b+1} \u4F4D`,disabled:u||void 0,ref:i(b),onInput:w=>h(b,w.target.value),onKeyDown:w=>m(b,w),onPaste:y}));return Da("div",{class:["wf-pin-input",`wf-pin-input--${g}`].join(" "),role:"group","aria-label":d},v)}};import{h as eo}from"weifuwu/vdom";var Ud=async(o,e)=>{let t=!1,n;return async r=>{let{value:i,label:a,size:s="md",variant:l="secondary",iconOnly:c,successText:f="\u5DF2\u590D\u5236",onCopied:g,className:u,...d}=r,p=async()=>{await e.browser?.copyText(i),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&&a&&h.push(eo("span",{class:"wf-copy-btn-text"},a))),eo("button",{type:"button",class:["wf-copy-btn",`wf-copy-btn--${s}`,`wf-copy-btn--${l}`,t?"wf-copy-btn--copied":"",u].filter(Boolean).join(" "),"aria-label":a||"\u590D\u5236",onClick:p,...d},h)}};import{h as At}from"weifuwu/vdom";var zd=["#4f6ef7","#8b5cf6","#ec4899","#ef4444","#f59e0b","#22c55e","#14b8a6","#06b6d4","#64748b","#1e293b"],Vd=/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/,_d=async(o,e)=>{let t=!1;return async n=>{let{colors:r=zd,size:i="md",disabled:a,showInput:s,"aria-label":l}=n,c=e?.ui?.useControlled({value:n.value,onChange:n.onChange,name:"ColorPicker"}),f=m=>{let y=c?.controlled?.value!==void 0;c?.setValue(m),y||n.onChange?.(m)},g=c?.value??"",u=r.map(m=>{let y=m.toLowerCase()===g.toLowerCase();return At("button",{type:"button",class:`wf-color-picker-swatch${y?" wf-color-picker-swatch--sel":""}`,style:{background:m},"aria-label":m,"aria-pressed":y?"true":"false",onClick:()=>f(m)},y?At(H,{name:"check",size:14,className:"wf-color-picker-check"}):null)}),d=[At("div",{class:"wf-color-picker-grid"},u)];s&&d.push(At("input",{class:"wf-color-picker-input",type:"text",value:g,placeholder:"#4f6ef7",spellcheck:"false",onInput:m=>{let y=m.target.value.trim();Vd.test(y)&&f(y)}}));let p=At("div",{class:"wf-color-picker-panel"},d),h=At("button",{type:"button",class:`wf-color-picker-trigger wf-color-picker-trigger--${i}${a?" wf-color-picker-trigger--disabled":""}`,disabled:a,"aria-label":l??"\u9009\u62E9\u989C\u8272","aria-disabled":a?"true":void 0,"aria-haspopup":"dialog","aria-expanded":t?"true":"false"},[At("span",{class:"wf-color-picker-swatch",style:{background:g||"#fff"}}),At("span",{class:"wf-color-picker-value"},g||"\u989C\u8272")]);return At(Vn,{content:p,position:"bottom",disabled:a,open:t,onOpenChange:m=>{t=m,e.render()}},h)}};import{h as Lo}from"weifuwu/vdom";var Kd=async(o,e)=>{let t=null,n={},r=e.ui.useInView({root:()=>n.target?n.target():null,rootMargin:()=>`${n.visibilityHeight??400}px 0px 0px 0px`}),i=a=>{a?(t=a,r.observe(a)):(t=null,r.disconnect())};return async a=>{Object.assign(n,a);let{visibilityHeight:s=400,smooth:l=!0,"aria-label":c,children:f,className:g}=a,u=r.ready&&!r.isIn;return Lo("div",{class:"wf-backtop-host"},[Lo("div",{class:"wf-backtop-sentinel",style:{position:"absolute",top:0,left:0,width:"1px",height:"1px",opacity:0,pointerEvents:"none"},ref:i}),Lo("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??Lo(H,{name:"arrow-up",size:16}))])}};import{h as Gr}from"weifuwu/vdom";var jd=async(o,e)=>{let t=null,n=0,r=1/0,i,a={...o},s=()=>a.target?a.target():window,l=e.ui.useScrollPosition({getScroller:s}),c=e.ui.usePopupPosition({el:()=>t,isOpen:()=>!0,compute:g=>{let u=s(),d=u instanceof Window?e.browser?.scrollTop()??0:u.scrollTop??0;return r=g.top+d-(a.offsetTop??0),n=g.width,{top:0,left:0}}}),f=g=>{g?(t=g,queueMicrotask(()=>{c.refresh(),l.refresh()})):t=null};return async g=>{Object.assign(a,g);let{offsetTop:u=0,children:d,className:p,...h}=g;u!==i&&(i=u,t&&c.refresh());let m=l.y>=r;return Gr("div",{class:["wf-affix",p].filter(Boolean).join(" "),...h},[Gr("div",{ref:f,class:["wf-affix-sentinel",m?"wf-affix-sentinel--active":""].join(" ")}),Gr("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 La}from"weifuwu/vdom";var Fd=async(o,e)=>{let t="top",n=!1,r={open:150,close:0},i=null,a=d=>{d&&(i=d)},s=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?.(()=>{s&&s.close()}),async 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 y=La("div",{class:`wf-hover-card wf-hover-card--${h}`,role:"tooltip"},p);return l?.open&&!s?s=e.ui.openPopup({anchor:()=>i,placement:()=>t,gap:8,content:()=>y,onClose:()=>{s=null,l?.setOpen(!1)}}):!l?.open&&s?(s.close(),s=null):s&&s.update(y),La("div",{class:"wf-hover-card-wrap",ref:a,"aria-haspopup":"dialog","aria-expanded":String(!!l?.open),onMouseEnter:g,onMouseLeave:u,onClick:()=>{l?.setOpen(!l.open)}},m)}};import{createClientBrowser as Gd}from"weifuwu/vdom";import{h as ut}from"weifuwu/vdom";import{renderToStream as Yd}from"weifuwu/vdom";import{diffStream as Jd}from"weifuwu/vdom";import{CommandApplier as Zd}from"weifuwu/vdom";import{createComponentRegistry as Qd}from"weifuwu/vdom";var Wd=Gd();function qd(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 Xd(o){switch(o){case"success":return"check";case"error":return"close";case"warning":return"alert";case"info":return"info"}}var rt=null;function ep(){if(rt)return rt;let o=document.createElement("div");o.className="wf-notification-host",document.body.appendChild(o);let e=Qd(),t=new Zd(o,document,e);return rt={container:o,applier:t,registry:e,items:[],seq:0,currentTree:null,ctx:{render:async()=>{},onUnmount:()=>{},data:{get:async()=>{},set:()=>{},has:()=>!1},browser:Wd}},rt}function Ra(o){let e=ut(Ha,{items:o.items,onRemove:n=>{Na(n)}}),t=o.currentTree?Jd(o.currentTree,e,o.ctx,o.registry):Yd(e,o.ctx,o.registry);o.currentTree=e,t.pipeTo(new WritableStream({write(n){o.applier.apply(n)}})).catch(()=>{})}function Na(o){rt&&(rt.items=rt.items.filter(e=>e.id!==o),rt.items.length===0?(rt.applier.dispose(),rt.container.remove(),rt=null):Ra(rt))}function Cn(o){let e=ep(),t={id:`n${++e.seq}`,...o};e.items=[...e.items,t],Ra(e);let n=o.duration??4500;n>0&&setTimeout(()=>Na(t.id),n)}var Oa=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 tp(o){return Object.assign(o,{notification:Oa})}var Ha=async(o,e)=>{let t=null;return async n=>{let{items:r=[],onRemove:i,position:a="top-right",duration:s=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??s)||void 0},[ut("span",{class:"wf-notification-icon"},ut(H,{name:Xd(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:()=>i?.(u.id)},ut(H,{name:"close",size:12}))].filter(Boolean))),g=ut("div",{class:`wf-notification-container ${qd(a)}`,"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 Ro}from"weifuwu/vdom";var np=async(o,e)=>{let t=!1,n=0,r=null,i=[],a=0,s=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<=i.length;d++){let p=(n+d)%i.length;if(!i[p].disabled){n=p,e.render();break}}}else if(u.key==="ArrowUp"){u.preventDefault();for(let d=1;d<=i.length;d++){let p=(n-d+i.length)%i.length;if(!i[p].disabled){n=p,e.render();break}}}else if(u.key==="Enter"){u.preventDefault();let d=i[n];d&&!d.disabled&&(d.onClick?.(),c())}else u.key==="Escape"&&c()};return async u=>{let{items:d=[],children:p,"aria-label":h,className:m}=u;i=d;let y=i.map((b,w)=>Ro("button",{type:"button",class:["wf-context-menu-item",b.variant==="danger"?"wf-context-menu-item--danger":"",b.disabled?"wf-context-menu-item--dis":"",n===w?"wf-context-menu-item--hl":""].filter(Boolean).join(" "),key:b.key,role:"menuitem",disabled:b.disabled||void 0,onClick:b.disabled?void 0:()=>{b.onClick?.(),c()},onMouseEnter:()=>{b.disabled||(n=w)}},b.icon?[b.icon,Ro("span",{},b.label)]:b.label)),v=Ro("div",{class:"wf-context-menu",role:"menu","aria-label":h,onKeyDown:g},y);return t&&!l?l=e.ui.openPopup({position:()=>({x:a,y:s}),content:()=>v,closeOnOutside:!0,closeOnEscape:!0,onClose:()=>{l=null,t&&(t=!1,e.render())}}):!t&&l?(l.close(),l=null):l&&l.update(v),Ro("div",{class:["wf-context-menu-trigger",m].filter(Boolean).join(" "),ref:f,onContextMenu:b=>{b.preventDefault(),a=b.clientX,s=b.clientY,n=i.findIndex(w=>!w.disabled),t=!0,e.render()}},p)}};import{h as No}from"weifuwu/vdom";var op=async(o,e)=>{let t=!1,n="",r=-1,i=0,a=!1,s=null,l=d=>{s=d},c=null,f=null,g=d=>{t&&d&&!f?f=e.ui.openPopup({anchor:()=>s,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 async d=>{let{options:p=[],prefix:h="@",placeholder:m,rows:y=3,disabled:v,size:b="md"}=d;c=e.ui.useControlledInput({value:d.value,onChange:d.onChange,name:"Mentions"});let w=c.value??"",x=(L,O)=>{if(a){u();return}let B=L.slice(0,O),W=B.lastIndexOf(h);if(W===-1){u();return}let K=B.slice(W+1);if(K.includes(" ")){u();return}if(K.length>0&&K.includes(`
|
|
49
|
-
`)){u();return}n=
|
|
50
|
-
\u975E\u53D7\u63A7\uFF1A\u53BB\u6389 expandedKeys\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onExpand={(keys) => setExpanded(keys)}`);return}let
|
|
51
|
-
\u975E\u53D7\u63A7\uFF1A\u53BB\u6389 value\uFF1B\u53D7\u63A7\uFF1A\u4F20\u5165 onChange={(path) => setPath(path)}`),t=!1,e.render(),p?.(X))},A=U=>{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?.(U.path)},D=[],L=[],O=[],B=0;for(;;){let U=T(O),R=C[B]?U.find(te=>te.value===C[B]):void 0,X=[...O];D.push({path:X,options:U});let Y=s.col===B?Math.min(s.idx,Math.max(U.length-1,0)):-1;if(L.push(Be("div",{class:"wf-cascader-col",key:B},U.map((te,J)=>{let G=R?.value===te.value,q=s.col===B&&J===Y;return Be("button",{type:"button",class:["wf-cascader-opt",G?"wf-cascader-opt--active":"",q?"wf-cascader-opt--hl":"",te.disabled?"wf-cascader-opt--dis":""].filter(Boolean).join(" "),key:te.value,"aria-selected":String(q||G),onClick:()=>M(te,X)},[Be("span",{class:"wf-cascader-opt-label"},te.label),te.children?.length?Be("span",{class:"wf-cascader-opt-arrow"},Be(H,{name:"chevron-right",size:12})):null].filter(Boolean))}))),!R?.children?.length)break;O=[...O,R.value],B++}let W=r.trim().toLowerCase(),K,I=[];b&&W?(I=_a(u).filter(R=>R.labels.some(X=>X.toLowerCase().includes(W))),K=I.length===0?Be("div",{class:"wf-cascader-empty"},"\u65E0\u5339\u914D"):Be("div",{class:"wf-cascader-search-results"},I.map(R=>Be("button",{type:"button",class:"wf-cascader-search-item",key:R.path.join("/"),"aria-selected":String(l===I.indexOf(R)),onClick:()=>A(R)},R.labels.join(" / "))))):K=L;let S=b?Be("input",{class:"wf-cascader-search wf-input",type:"text",placeholder:w,value:r,onInput:U=>{r=U.target.value,e.render()}}):null,E=Be("div",{class:"wf-cascader-panel",role:"listbox",onKeyDown:U=>{let R=U.key;if(R==="Escape")return;if(b&&W){let te=I.length;if(!te)return;R==="ArrowDown"?(U.preventDefault(),l=Math.min(l+1,te-1),e.render()):R==="ArrowUp"?(U.preventDefault(),l=Math.max(l-1,0),e.render()):R==="Home"?(U.preventDefault(),l=0,e.render()):R==="End"?(U.preventDefault(),l=te-1,e.render()):R==="Enter"&&I[l]&&(U.preventDefault(),A(I[l]));return}let X=D[s.col];if(!X||!X.options.length)return;let Y=X.options.length;if(R==="ArrowDown")U.preventDefault(),s={col:s.col,idx:Math.min(s.idx+1,Y-1)},e.render();else if(R==="ArrowUp")U.preventDefault(),s={col:s.col,idx:Math.max(s.idx-1,0)},e.render();else if(R==="Home")U.preventDefault(),s={col:s.col,idx:0},e.render();else if(R==="End")U.preventDefault(),s={col:s.col,idx:Y-1},e.render();else if(R==="ArrowRight"){let te=X.options[Math.min(s.idx,Y-1)];te?.children?.length&&(U.preventDefault(),n=[...X.path,te.value],s={col:s.col+1,idx:0},e.render())}else R==="ArrowLeft"?s.col>0&&(U.preventDefault(),n=[...D[s.col-1].path],s={col:s.col-1,idx:0},e.render()):R==="Enter"&&!X.options[Math.min(s.idx,Y-1)]?.disabled&&(U.preventDefault(),M(X.options[Math.min(s.idx,Y-1)],X.path))}},b?[S,K].filter(Boolean):K),P=Array.isArray(d)&&d.length?lp(u,d):h,z=[];v&&z.push(Be("label",{class:"wf-cascader-label"},v));let N=Be("button",{type:"button",class:`wf-cascader-trigger${m?" wf-cascader-trigger--dis":""}${y?" wf-cascader-trigger--err":""}`,"aria-label":x,"aria-haspopup":"listbox","aria-expanded":String(t),ref:a,onClick:m?void 0:$},[Be("span",{class:`wf-cascader-value${d?.length?"":" wf-cascader-value--placeholder"}`},P),Be("span",{class:`wf-cascader-arrow${t?" wf-cascader-arrow--open":""}`},Be(H,{name:"chevron-down",size:12}))]);return f(E),z.push(Be("div",{class:"wf-cascader"},[N])),y&&z.push(Be("div",{class:"wf-cascader-err"},y)),Be("div",{class:"wf-cascader-wrap"},z)}};import{h as st}from"weifuwu/vdom";var dp=async(o,e)=>{let t=[],n=[],r="",i="";return async a=>{let{data:s=[],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"}=a,h=s.filter(T=>!l.includes(T.key)),m=s.filter(T=>l.includes(T.key)),y=(T,M)=>{if(u)return;let A=T==="left"?t:n,D=A.includes(M)?A.filter(L=>L!==M):[...A,M];T==="left"?t=D:n=D,e.render()},v=()=>{if(!c||t.length===0)return;let T=[...l,...t];t=[],e.render(),c(T)},b=()=>{if(!c||n.length===0)return;let T=l.filter(M=>!n.includes(M));n=[],e.render(),c(T)},w=(T,M)=>{let A=T==="left"?t:n,D=(T==="left"?r:i).toLowerCase(),L=D?M.filter(B=>B.label.toLowerCase().includes(D)):M,O=d?st("input",{class:"wf-transfer-search wf-input",type:"text",placeholder:p,value:T==="left"?r:i,onInput:B=>{T==="left"?r=B.target.value:i=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]),O,st("div",{class:"wf-transfer-body"},L.length===0?[st("div",{class:"wf-transfer-empty"},D?"\u65E0\u5339\u914D":"\u6682\u65E0\u6570\u636E")]:L.map(B=>st("button",{type:"button",class:["wf-transfer-item",A.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:()=>y(T,B.key)},B.label)))].filter(Boolean))},x=t.length===0||u,C=n.length===0||u,$=st("div",{class:"wf-transfer-actions"},[st("button",{type:"button",class:"wf-transfer-btn",disabled:C||void 0,"aria-label":"\u79FB\u56DE\u5DE6\u4FA7",onClick:C?void 0:b},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}`},[w("left",h),$,w("right",m)])}};import{h as Ct}from"weifuwu/vdom";var pp=async(o,e)=>{let t="",n=0,r={},i=c=>{c&&queueMicrotask(()=>c.focus())};e.ui.useGlobalKey(c=>{let f=r.shortcut;if(!f)return;let g=f.split("+"),u=g.includes("mod"),d=g[g.length-1].toLowerCase();(!u||c.ctrlKey||c.metaKey)&&c.key.toLowerCase()===d&&(c.preventDefault(),r.onOpenChange?.(!r.open))});let a=c=>{},s=null,l=c=>{r.open&&c&&!s?s=e.ui.openPopup({key:"command",mask:!0,maskCentered:!0,content:()=>c,onClose:()=>{s=null,r.open&&r.onOpenChange?.(!1)}}):!r.open&&s?(s.close(),s=null):s&&s.update(c)};return e.ui.onUnmount?.(()=>{s&&s.close()}),async c=>{let{open:f,onOpenChange:g,items:u=[],placeholder:d="\u8F93\u5165\u547D\u4EE4\u6216\u641C\u7D22...",emptyText:p="\u65E0\u5339\u914D\u7ED3\u679C",globalShortcut:h="mod+k"}=c;if(r={open:f,onOpenChange:g,shortcut:h},!f)return l(null),null;let m=t?u.filter(x=>{let C=t.toLowerCase();return x.label.toLowerCase().includes(C)||(x.keywords??[]).some($=>$.toLowerCase().includes(C))}):u;n>=m.length&&(n=Math.max(0,m.length-1));let y=()=>g?.(!1),v=x=>{if(x.key==="ArrowDown")x.preventDefault(),n=Math.min(n+1,Math.max(m.length-1,0)),e.render();else if(x.key==="ArrowUp")x.preventDefault(),n=Math.max(n-1,0),e.render();else if(x.key==="Enter"){x.preventDefault();let C=m[n];C&&(C.onSelect?.(),y())}else x.key==="Escape"&&y()},b=m.length>0?m.map((x,C)=>Ct("button",{type:"button",class:`wf-command-item${n===C?" wf-command-item--hl":""}`,key:x.key,onClick:()=>{x.onSelect?.(),y()},onMouseEnter:()=>{n=C}},[x.icon??Ct(H,{name:"search",size:14}),Ct("span",{class:"wf-command-item-label"},x.label),x.shortcut?Ct("kbd",{class:"wf-command-shortcut"},x.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(H,{name:"search",size:14}),Ct("input",{class:"wf-command-input",type:"text",placeholder:d,value:t,onInput:x=>{t=x.target.value,n=0,e.render()},onKeyDown:v,ref:i})]),Ct("div",{class:"wf-command-list"},b)]);return l(w),null}};import{createClientBrowser as fp}from"weifuwu/vdom";import{h as Mn}from"weifuwu/vdom";var up=async(o,e)=>{let t=e.browser??fp(),n=null,r=0,i=[],a=new Map,s=d=>{let p=a.get(d);return p||(p=h=>{h&&(i[d]=h)},a.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?i[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 async d=>{let{menus:p=[],"aria-label":h}=d;l=p;let m=w=>{if(w.key==="Escape"){g();return}if(w.key!=="ArrowRight"&&w.key!=="ArrowLeft")return;if(n){g();return}let x=t?.activeElement()??null,C=i.indexOf(x);if(C<0)return;w.preventDefault();let $=w.key==="ArrowRight"?(C+1)%l.length:(C-1+l.length)%l.length;i[$]?.focus()},y=l.map((w,x)=>{let C=n===w.key;return Mn("button",{type:"button",class:["wf-menubar-trigger",C?"wf-menubar-trigger--open":"",w.disabled?"wf-menubar-trigger--dis":""].filter(Boolean).join(" "),key:w.key,ref:s(x),"aria-haspopup":"menu","aria-expanded":C?"true":"false",onClick:w.disabled?void 0:()=>u(w.key),onKeyDown:$=>{($.key==="ArrowDown"||$.key==="Enter")&&($.preventDefault(),w.disabled||u(w.key))}},w.label)}),v=l.find(w=>w.key===n),b=v?Mn("div",{class:"wf-menubar-panel",role:"menu"},(v.items??[]).map((w,x)=>Mn("button",{type:"button",class:["wf-menubar-item",r===x?"wf-menubar-item--hl":"",w.disabled?"wf-menubar-item--dis":""].filter(Boolean).join(" "),key:w.key,role:"menuitem",onClick:w.disabled?void 0:()=>{w.onSelect?.(),g()},onMouseEnter:()=>{w.disabled||(r=x)}},[Mn("span",{class:"wf-menubar-item-label"},w.label),w.shortcut?Mn("kbd",{class:"wf-menubar-shortcut"},w.shortcut):null].filter(Boolean)))):null;return f(b),Mn("div",{class:"wf-menubar",role:"menubar","aria-label":h,onKeyDown:m},y)}};import{h as Dt}from"weifuwu/vdom";var mp=async(o,e)=>{let t=0,n,r=0,i=()=>{},a=!1,s=3e3,l=c=>{c?a&&(clearInterval(n),n=setInterval(()=>i(t+1),s)):(clearInterval(n),n=void 0)};return async c=>{let{children:f=[],autoplay:g,interval:u=3e3,showArrows:d=!0,showDots:p=!0,loop:h=!0,"aria-label":m,className:y}=c,v=f.length;if(v===0)return null;let b=A=>{let D=h?(A+v)%v:Math.max(0,Math.min(A,v-1));D!==t&&(t=D,e.render())};i=b,a=!!g,s=u;let w=()=>b(t+1),x=()=>b(t-1),C={onTouchStart:A=>{r=A.touches[0].clientX},onTouchEnd:A=>{let D=A.changedTouches[0].clientX-r;Math.abs(D)>40&&(D<0?w():x())}},$=Dt("div",{class:"wf-carousel-track",style:{transform:`translateX(-${t*100}%)`}},f),T=d?[Dt("button",{type:"button",class:"wf-carousel-arrow wf-carousel-arrow--prev","aria-label":"\u4E0A\u4E00\u5F20",onClick:x},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:w},Dt(H,{name:"chevron-right",size:18}))]:[],M=p?Dt("div",{class:"wf-carousel-dots"},f.map((A,D)=>Dt("button",{type:"button",class:`wf-carousel-dot${D===t?" wf-carousel-dot--active":""}`,key:D,"aria-label":`\u7B2C ${D+1} \u5F20`,onClick:()=>b(D)}))):null;return Dt("div",{class:["wf-carousel",y].filter(Boolean).join(" "),"aria-label":m,ref:l,...C},[Dt("div",{class:"wf-carousel-viewport"},$),...T,M].filter(Boolean))}};import{h as Oo}from"weifuwu/vdom";var hp=async(o,e)=>{let t=0,n={...o},r=l=>Math.max(n.min??80,Math.min(l,n.max??600)),i=l=>{let c=r(l);c!==t&&(t=c,n.onResize?.(c),e.render())},a=0,s=e.ui.useDrag({onStart:()=>{a=t},onMove:(l,c)=>{let f=n.direction==="horizontal"?c.x:c.y;i(a+f)}});return async 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=Oo("div",{class:"wf-resizable-handle",role:"separator","aria-orientation":c==="horizontal"?"vertical":"horizontal",tabIndex:0,...s,onKeyDown:b=>{let w=c==="horizontal"?b.key==="ArrowRight"?d:b.key==="ArrowLeft"?-d:0:b.key==="ArrowDown"?d:b.key==="ArrowUp"?-d:0;w!==0&&(b.preventDefault(),i(t+w))}});return Oo("div",{class:["wf-resizable",`wf-resizable--${c}`,m].filter(Boolean).join(" ")},[Oo("div",{class:"wf-resizable-panel",style:{flexBasis:`${t}px`}},p[0]),v,Oo("div",{class:"wf-resizable-panel wf-resizable-panel--fill"},p[1])])}};import{h as _e}from"weifuwu/vdom";var gp=["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],yp=async(o,e)=>{let t=new Date,n=t.getMonth(),r=t.getFullYear();return async i=>{let{events:a=[],month:s,year:l,onMonthChange:c,onSelectDate:f,selectedDate:g,"aria-label":u}=i,d=s!==void 0&&l!==void 0,p=d?s:n,h=d?l:r,m=$=>{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
|
|
53
|
-
`))};return
|
|
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,"&").replace(/</g,"<").replace(/>/g,">")}function Zc(o){return o.replace(/<[^>]*>/g,"").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}function Qc(o){return To(o).replace(/"/g,""")}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,"&").replace(/</g,"<").replace(/>/g,">")}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(`
|
|
54
54
|
`),n=e===""?[]:e.split(`
|
|
55
|
-
`),r=t.length,i=n.length;if(r===0)return n.map(f=>({type:"add",line:f}));if(i===0)return t.map(f=>({type:"remove",line:f}));let a=Array.from({length:r+1},()=>new Array(i+1).fill(0));for(let f=r-1;f>=0;f--)for(let g=i-1;g>=0;g--)t[f]===n[g]?a[f][g]=a[f+1][g+1]+1:a[f][g]=Math.max(a[f+1][g],a[f][g+1]);let s=[],l=0,c=0;for(;l<r&&c<i;)t[l]===n[c]?(s.push({type:"same",line:t[l]}),l++,c++):a[l+1][c]>=a[l][c+1]?(s.push({type:"remove",line:t[l]}),l++):(s.push({type:"add",line:n[c]}),c++);for(;l<r;)s.push({type:"remove",line:t[l]}),l++;for(;c<i;)s.push({type:"add",line:n[c]}),c++;return s}function Za(o){let e=[],t=[],n=0,r=()=>{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 i of o)i.type==="same"?(n++,t.push(i)):(n=0,t.push(i));return r(),e}var Np=async(o,e)=>{let t=new Set;return async n=>{let{oldCode:r="",newCode:i="",oldTitle:a="\u65E7\u7248",newTitle:s="\u65B0\u7248",foldThreshold:l=5,maxLines:c=2e3,className:f=""}=n,g=Ja(r,i),u=Za(g),d=(y,v)=>y.kind==="same"&&y.sameCount>l,p=y=>t.has(y),h=[],m=0;for(let y=0;y<u.length;y++){let v=u[y];if(d(v,y)){let b=p(y);if(h.push(ht("div",{class:"wf-diffview-fold",role:"button",tabindex:0,onClick:()=>{t.has(y)?t.delete(y):t.add(y),e.render()},onKeyDown:w=>{(w.key==="Enter"||w.key===" ")&&(w.preventDefault(),t.has(y)?t.delete(y):t.add(y),e.render())}},b?"\u5C55\u5F00\u4E2D":`\u2195 ${v.sameCount} \u884C\u672A\u53D8`)),t)for(let w of v.lines){if(m>=c)break;m++,h.push(Qa(w,m))}}else for(let b of v.lines){if(m>=c)break;m++,h.push(Qa(b,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"},a),ht("span",{class:"wf-diffview-arrow"},"\u2192"),ht("span",{class:"wf-diffview-title wf-diffview-title--new"},s)]),ht("div",{class:"wf-diffview-body"},h)])}};function Qa(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 ei(o,e,t,n=2){let r=o.length;if(r===0)return[];let i=Math.min(...o),s=Math.max(...o)-i,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:s===0?t/2:n+(1-(f-i)/s)*c}))}function ti(o){return o.map(e=>`${Math.round(e.x*10)/10},${Math.round(e.y*10)/10}`).join(" ")}function ni(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],i=o[t+1],a=o[t+2]??i,s=r.x+(i.x-n.x)/6,l=r.y+(i.y-n.y)/6,c=i.x-(a.x-r.x)/6,f=i.y-(a.y-r.y)/6;e+=` C ${s},${l} ${c},${f} ${i.x},${i.y}`}return e}var Op=async(o,e)=>async t=>{let{data:n,width:r=120,height:i=32,stroke:a="currentColor",fill:s=!1,smooth:l=!1,label:c,className:f=""}=t,g=ei(n,r,i,2),u=[];if(g.length>0)if(l){let d=ni(g);s&&u.push(oo("path",{d:`${d} L ${g[g.length-1].x},${i} L ${g[0].x},${i} Z`,fill:a,opacity:.12})),u.push(oo("path",{d,fill:"none",stroke:a,"stroke-width":1.5,"stroke-linecap":"round"}))}else{let d=ti(g);s&&u.push(oo("polygon",{points:`${d} ${r-2},${i} 2,${i}`,fill:a,opacity:.12})),u.push(oo("polyline",{points:d,fill:"none",stroke:a,"stroke-width":1.5,"stroke-linecap":"round","stroke-linejoin":"round"}))}return oo("svg",{class:`wf-sparkline${f?` ${f}`:""}`,viewBox:`0 0 ${r} ${i}`,width:r,height:i,role:c?"img":void 0,"aria-label":c,"aria-hidden":c?void 0:!0},u)};import{h as gt}from"weifuwu/vdom";var Hp=async(o,e)=>{let t=0,n=null,r={top:0,left:0,width:0,height:0},i="bottom",a=!1,s={steps:[]},l=null,c=()=>a;e.ui.useGlobalKey?.(p=>{p.key==="Escape"&&c()&&g()});let f=p=>{s.onStepChange?.(p),s.current===void 0&&(t=p,d())},g=()=>{s.onChange?.(!1),s.open===void 0&&(a=!1,e.render())},u=()=>{let p=s.open!==void 0;s.onFinish?.(),(!p||!s.onFinish)&&(s.onChange?.(!1),a=!1,e.render())},d=()=>{n=s.steps[t]?.target?e.browser?.query(s.steps[t].target):null,l?.refresh(),e.render()};return async p=>{s=p,a=!!p.open;let h=p.open!==void 0,m=p.current??t;if(i=p.steps[m]?.placement??"bottom",a&&p.steps[m]){let L=e.browser?.query(p.steps[m].target);if(L!==n){if(n=L,L)try{L.scrollIntoView({block:"center"})}catch{}l?.refresh()}}if(!a&&!h||!a)return null;let y=p.steps[m];if(!y)return null;if(n){let L=n.getBoundingClientRect();(L.width||L.height)&&(r={top:L.top,left:L.left,width:L.width,height:L.height})}let v=m>=p.steps.length-1,b=e.browser?.window,x=i==="top"&&!!b&&r.top<120?"bottom":i,C=oi(r,x),$=C.left,T=C.top,M=gt("div",{class:`wf-tour-bubble wf-tour-bubble--${x}`,style:{left:`${$}px`,top:`${T}px`}},[gt("div",{class:"wf-tour-bubble-header"},[gt("span",{class:"wf-tour-title"},y.title),gt("span",{class:"wf-tour-step"},`${m+1} / ${p.steps.length}`)]),gt("div",{class:"wf-tour-content"},y.content),gt("div",{class:"wf-tour-actions"},[gt("button",{class:"wf-tour-btn wf-tour-btn--ghost",onClick:()=>u()},"\u8DF3\u8FC7"),m>0&>("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))]),A=gt("div",{class:"wf-tour-highlight",style:{left:`${r.left}px`,top:`${r.top}px`,width:`${r.width}px`,height:`${r.height}px`}}),D=gt("div",{class:"wf-tour-layer"},[A,M]);return a&&!l?l=e.ui.openPopup({key:"tour",mask:!0,maskClosable:!1,positioning:"none",closeOnOutside:!1,closeOnEscape:!1,content:()=>D,position:()=>{let L=n?.getBoundingClientRect();L&&(r={top:L.top,left:L.left,width:L.width,height:L.height});let O=oi(r,i);return{x:O.left,y:O.top,width:O.width}},onClose:()=>{l=null,a&&g()}}):!a&&l?(l.close(),l=null):l&&l.update(D),null}};function oi(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 Bp=async(o,e)=>{let t=null,{dropProps:n,dragProps:r}=e.ui.useDragDrop({onDragOver:()=>{},onDragEnd:()=>{t=null,e.render()}});return async i=>{let{columns:a,onMove:s,className:l=""}=i;s||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||!s||(s({columnKey:t.fromColumn,index:t.fromIndex},{columnKey:g,index:u}),t=null,e.render())},f=a.map(g=>Lt("div",{class:"wf-kanban-col","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","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 ri(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=new Map,i=[];for(let s of o)(n.get(s.id)??0)===0&&(i.push(s.id),r.set(s.id,0));let a=0;for(;i.length>0;){let s=i.shift();a++;let l=r.get(s)??0;for(let c of t.get(s)??[])r.set(c,Math.max(r.get(c)??0,l+1)),n.set(c,(n.get(c)??1)-1),(n.get(c)??0)===0&&i.push(c)}for(let s of o)r.has(s.id)||r.set(s.id,a);return r}function es(o,e){let t=new Map,n=new Map;for(let a of o)t.set(a.id,[]),n.set(a.id,0);for(let a of e)t.get(a.from)?.push(a.to),n.set(a.to,(n.get(a.to)??0)+1);let r=o.filter(a=>(n.get(a.id)??0)===0).map(a=>a.id),i=0;for(;r.length>0;){let a=r.shift();i++;for(let s of t.get(a)??[])n.set(s,(n.get(s)??1)-1),(n.get(s)??0)===0&&r.push(s)}return i<o.length}function ts(o,e,t){let{orientation:n,width:r,height:i,nodeW:a=88,nodeH:s=40}=t,l=ri(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((y,v)=>{if(n==="vertical"){let b=p===0?s/2:p===f-1?i-s/2:p/(f-1)*i,w=m===1?r/2:v/(m-1)*(r-a)+a/2;g.set(y,{x:w,y:b})}else{let b=p===0?a/2:p===f-1?r-a/2:p/(f-1)*r,w=m===1?i/2:v/(m-1)*(i-s)+s/2;g.set(y,{x:b,y:w})}})}let u=o.map(p=>{let h=g.get(p.id)??{x:r/2,y:i/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},y=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} ${y}`}});return{nodes:u,edges:d}}var Up=async(o,e)=>async t=>{let{nodes:n,edges:r,orientation:i="vertical",width:a=360,height:s=220,className:l=""}=t,c=es(n,r),{nodes:f,edges:g}=ts(n,r,{orientation:i,width:a,height:s}),u=f.map(p=>{let h=n.find(y=>y.id===p.id),m=h?.status??"default";return Pn("div",{class:`wf-pipeline-node wf-pipeline-node--${m}`,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:a,height:s,viewBox:`0 0 ${a} ${s}`,"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 Bo(o,e){for(let t of o){if(t.key===e)return t.label;if(t.children){let n=Bo(t.children,e);if(n)return n}}}var zp=async(o,e)=>{let t=!1,n=[],r=null,i=null,a=f=>{t&&!i?i=e.ui.openPopup({key:"treeselect",anchor:()=>r,placement:"bottom",center:!1,gap:4,content:()=>f,onClose:()=>{i=null,t&&(t=!1,e.render())}}):!t&&i?(i.close(),i=null):i&&i.update(f)},s=()=>{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=>Bo(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 Bo(g,f)??""},c=f=>{r=f,f&&i?.open&&i.refresh()};return async f=>{let{options:g,value:u,onChange:d,multiple:p=!1,placeholder:h="\u8BF7\u9009\u62E9",disabled:m,error:y,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 b=l(u,g),w=p&&Array.isArray(u),x=Sn(qr,{data:g,virtual:f.virtual,height:f.height??320,expandOnClick:!0,selectedKeys:w?void 0:u?[u]:[],onSelect:$=>{$.length!==0&&(d?.($[0]),t=!1,e.render())},checkable:p||void 0,checkedKeys:w?u:void 0,onCheck:p?$=>{d?.($)}:void 0,expandedKeys:n,onExpand:$=>{n=$,e.render()}}),C=Sn("div",{class:"wf-treeselect-dropdown"},x);return a(C),Sn("div",{class:`wf-treeselect${v?` ${v}`:""}`},[Sn("div",{class:["wf-treeselect-trigger",t?" wf-treeselect-trigger--open":"",m?" wf-treeselect-trigger--dis":"",y?" 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:s,onKeyDown:$=>{m||($.key==="Enter"||$.key===" ")&&($.preventDefault(),s())}},[Sn("span",{class:b?"wf-treeselect-label":"wf-treeselect-placeholder"},b||h),Sn("span",{class:`wf-treeselect-arrow${t?" wf-treeselect-arrow--open":""}`})])])}};import{h as Kt}from"weifuwu/vdom";var Vp=Symbol("LayoutSider"),_p=async o=>async e=>{let n=(Array.isArray(e.children)?e.children:[e.children]).some(r=>r?.type===ns);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)},ns=async(o,e)=>{let t=o?.collapsed??!1,n=o?.collapsed,r,i=!1,a=()=>{let s=!n;r?r(s):(t=s,e.render())};return async s=>{n=s.collapsed,r=s.onCollapse,i=!!s.collapsible;let l=s.collapsed!==void 0?!!s.collapsed:t,c=l?s.collapsedWidth??"var(--wf-layout-sider-collapsed-width, 64px)":s.width??"var(--wf-layout-sider-width, 240px)",f=[Kt("div",{class:"wf-layout-sider-body"},s.children)];return i&&f.push(Kt("button",{class:"wf-layout-sider-trigger","aria-label":l?"\u5C55\u5F00\u4FA7\u8FB9\u680F":"\u6298\u53E0\u4FA7\u8FB9\u680F",onClick:()=>a()},s.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)}};ns[Vp]=!0;var Kp=async o=>async e=>Kt("header",{class:"wf-layout-header",style:e.style},e.children),jp=async o=>async e=>Kt("main",{class:"wf-layout-content",style:e.style},e.children),Fp=async o=>async e=>Kt("footer",{class:"wf-layout-footer",style:e.style},e.children);import{h as Rt}from"weifuwu/vdom";var Gp=async(o,e)=>{let t="top",n,r=!1,i=null,a=f=>{f&&(i=f)},s=null,l=null,c=()=>{s?.setOpen(!1)};return async f=>{let{title:g,okText:u="\u786E\u5B9A",cancelText:d="\u53D6\u6D88",danger:p,onConfirm:h,onCancel:m,position:y="top",icon:v}=f;t=y,s=e.ui.useOpen({open:f.open,onOpenChange:f.onOpenChange,name:"Popconfirm"}),n=h,r=!!f.disabled;let b=s?.open??!1,w=Rt("div",{class:`wf-popconfirm wf-popconfirm--${y}${b?" 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 b&&!l?l=e.ui.openPopup({anchor:()=>i,placement:()=>t,gap:8,content:()=>w,onClose:()=>{l=null,s?.setOpen(!1)}}):!b&&l?(l.close(),l=null):l&&l.update(w),Rt("span",{class:"wf-popconfirm-wrap",ref:a,"aria-haspopup":"dialog","aria-expanded":String(b),onClick:x=>{x.stopPropagation?.(),r||s?.setOpen(!s.open)}},f.children)}};import{h as Uo}from"weifuwu/vdom";function si(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 Wp=async(o,e)=>{let t=o?.open??!1,n=-1,r=o?.value??"",i,a=o?.open,s,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(),s?.(!1))}}):!t&&g?(g.close(),g=null):g&&g.update(m)},d=m=>{t=m,e.render(),s?.(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 async m=>{let{options:y,value:v,placeholder:b="\u8F93\u5165\u641C\u7D22\u2026",disabled:w,error:x,renderOption:C,onSelect:$}=m;p=e.ui.useControlledInput({value:v,onChange:m.onChange,name:"AutoComplete"});let T=p.keyword,M=p.selectedLabel;r=v??"",i=m.onChange,a=m.open,s=m.onOpenChange,l=$,m.open!==void 0&&(t=!!m.open);let A=t&&T||r,D=(m.filter??si)(y,A);n>=D.length&&(n=-1);let L=!1,O=k=>{if(L||k.isComposing)return;let E=k.target.value;p?.setKeyword(E),p?.setValue(E),t||d(!0),n=-1},B=()=>{L=!0},W=k=>{L=!1;let E=k.target?.value??"";p?.setKeyword(E),p?.setValue(E),t||d(!0)},K=k=>{if(!t&&(k.key==="ArrowDown"||k.key==="ArrowUp")){k.preventDefault(),d(!0),n=k.key==="ArrowDown"?0:D.length-1;return}k.key==="ArrowDown"?(k.preventDefault(),n=(n+1)%D.length,e.render()):k.key==="ArrowUp"?(k.preventDefault(),n=n<=0?D.length-1:n-1,e.render()):k.key==="Enter"?t&&n>=0&&D[n]&&(k.preventDefault(),h(D[n])):k.key==="Escape"&&(k.preventDefault(),d(!1))},I=Uo("div",{class:"wf-autocomplete-dropdown"},D.map((k,E)=>Uo("div",{class:`wf-autocomplete-option${E===n?" wf-autocomplete-option--active":""}`,key:k.value,onMouseDown:P=>{P.stopPropagation(),k.disabled||h(k)}},C?C(k):k.label??k.value))),S=Uo("div",{class:"wf-autocomplete-wrap",ref:f},[Uo("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:M||A,placeholder:b,disabled:w,onInput:O,onKeyDown:K,onCompositionStart:B,onCompositionEnd:W,onFocus:()=>{t||d(!0)}})]);return u(I),S}};import{h as ai}from"weifuwu/vdom";var qp=async(o,e)=>async t=>{let{href:n,variant:r="default",underline:i=!0,disabled:a,target:s,icon:l,onClick:c,children:f}=t,g=["wf-link",`wf-link--${r}`,i===!1&&"wf-link--no-underline",a&&"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),ai("a",{class:g,href:a?void 0:n,target:s,rel:s==="_blank"?"noopener noreferrer":void 0,"aria-disabled":a?"true":void 0,onClick:a?d=>{d.preventDefault(),d.stopPropagation()}:c},u)}return ai("a",{class:g,href:a?void 0:n,target:s,rel:s==="_blank"?"noopener noreferrer":void 0,"aria-disabled":a?"true":void 0,onClick:a?u=>{u.preventDefault(),u.stopPropagation()}:c},f)};import{h as en}from"weifuwu/vdom";var Xp=async(o,e)=>async t=>{let{icon:n,badge:r,position:i="bottom-right",static:a,disabled:s,onClick:l,children:c}=t;return en("button",{class:`wf-float-btn wf-float-btn--${i}${a?" wf-float-btn--static":""}${s?" wf-float-btn--disabled":""}`,style:{position:a?void 0:"fixed"},"aria-label":t["aria-label"],disabled:s,onClick:s?void 0:l},[n,c,r!=null&&en("span",{class:"wf-float-btn-badge"},String(r))].filter(f=>f!=null&&f!==!1))},Yp=async(o,e)=>{let t=!1;return async n=>{let{position:r="bottom-right",children:i}=n,a=Array.isArray(i)?i:[i];return en("div",{class:`wf-float-group wf-float-group--${r}${t?" wf-float-group--open":""}`},[en("div",{class:"wf-float-group-items"},t?a.map((s,l)=>{let c={...s.props??{},static:!0},f=s.type?{...s,props:c}:s;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 yt}from"weifuwu/vdom";var Jp=120,Zp=async(o,e)=>{let t=null,n=null,r=new Map,i=new Map,a=new Map,s=O=>{let B=a.get(O);return B||(B=W=>{W&&r.set(O,W)},a.set(O,B)),B},l=new Map,c=O=>{let B=l.get(O);return B||(B=W=>{W&&i.set(O,W)},l.set(O,B)),B},f=null,g=null,u=null,d,p=O=>{f=O},h=O=>{g=O},m=O=>{u=O},y=O=>{if(!O||typeof O!="object")return!1;let B=O;return!!(f&&f.contains(B)||g&&g.contains(B)||u&&u.contains(B))},v=()=>{clearTimeout(d),d=void 0},b=()=>{d||(d=setTimeout(()=>{d=void 0,(t!==null||n!==null)&&(t=null,n=null,e.render())},Jp))},w=O=>{y(O?.relatedTarget??null)||b()},x=()=>v();e.ui.onUnmount?.(()=>{clearTimeout(d)});let C=null,$=O=>{t&&!C?C=e.ui.openPopup({key:"wf-navmenu-sub",anchor:()=>t?r.get(t)??null:null,placement:"bottom",center:!1,gap:4,content:()=>O,onClose:()=>{C=null,t&&(t=null,n=null,e.render())}}):C&&C.update(O)},T=null,M=O=>{n&&!T?T=e.ui.openPopup({key:"wf-navmenu-nested",anchor:()=>n?i.get(n)??null:null,placement:"right",center:!1,gap:4,content:()=>O,onClose:()=>{T=null,n&&(n=null,e.render())}}):T&&T.update(O)},A=()=>{!n&&T&&(T.close(),T=null)},D=()=>{!t&&C&&(C.close(),C=null)},L=(O,B,W,K)=>O.map(I=>{let S=!!I.children?.length,k=()=>{I.disabled||(S?(n=n===I.key?null:I.key,e.render()):(W?.(I.key),t=null,n=null,e.render()))},E=[yt("span",{class:"wf-navmenu-sub-label"},I.label),S?yt("span",{class:"wf-navmenu-sub-arrow"},yt(H,{name:"chevron-right"})):null];return n===I.key&&M(yt("div",{class:"wf-navmenu-sub wf-navmenu-sub--nested wf-navmenu-sub--open",role:"menu",ref:m,onMouseEnter:()=>{v(),n!==I.key&&(n=I.key,e.render())},onMouseLeave:w},L(I.children||[],B,W,K+1))),A(),yt("div",{class:`wf-navmenu-sub-item${I.disabled?" wf-navmenu-sub-item--disabled":""}${S&&n===I.key?" wf-navmenu-sub-item--open":""}`,key:I.key,role:"menuitem",tabIndex:I.disabled?void 0:0,"aria-haspopup":S?"menu":void 0,"aria-disabled":I.disabled?"true":void 0,ref:c(I.key),onClick:k,onKeyDown:P=>{(P.key==="Enter"||P.key===" ")&&(P.preventDefault?.(),k())},onMouseEnter:()=>{v(),!I.disabled&&(S?n!==I.key&&(n=I.key,e.render()):n!==null&&(n=null,e.render()))}},E)});return async O=>{let{items:B,activeKey:W,onSelect:K}=O,I=yt("nav",{class:"wf-navmenu",role:"navigation","aria-label":"\u4E3B\u5BFC\u822A",ref:p,onMouseLeave:w},B.map(S=>{let k=!!S.children?.length,E=t===S.key,P=[yt("span",{class:"wf-navmenu-label"},S.label),k&&yt("span",{class:"wf-navmenu-arrow"},yt(H,{name:"chevron-down"}))];return E&&$(yt("div",{class:"wf-navmenu-sub wf-navmenu-sub--open",role:"menu",ref:h,onMouseEnter:x,onMouseLeave:w},L(S.children||[],W,K,1))),D(),yt("div",{class:`wf-navmenu-item${S.disabled?" wf-navmenu-item--disabled":""}${W===S.key?" wf-navmenu-item--active":""}`,key:S.key,role:"menuitem","aria-haspopup":k?"menu":void 0,"aria-expanded":k&&E?"true":void 0,ref:s(S.key),tabIndex:S.disabled?void 0:0,onClick:()=>{S.disabled||(k?(t=E?null:S.key,n=null,e.render()):(K?.(S.key),t=null,n=null,e.render()))},onMouseEnter:()=>{v(),!S.disabled&&(k?t!==S.key&&(t=S.key,n=null,e.render()):(t!==null||n!==null)&&(t=null,n=null,e.render()))},onKeyDown:z=>{if(z.key==="Enter"||z.key===" "){if(z.preventDefault?.(),S.disabled)return;k?(t=E?null:S.key,n=null,e.render()):(K?.(S.key),t=null,n=null,e.render())}else z.key==="ArrowRight"&&k?(t=S.key,e.render()):z.key==="Escape"&&(t=null,n=null,e.render())}},P)}));return A(),I}};import{h as ii}from"weifuwu/vdom";var Qp={sm:"var(--wf-space-sm, 8px)",md:"var(--wf-space-md, 16px)",lg:"var(--wf-space-lg, 24px)"},ef=async(o,e)=>async t=>{let{size:n="md",direction:r="horizontal",wrap:i,align:a,split:s,children:l}=t,c=typeof n=="number"?`${n}px`:Qp[n]??"var(--wf-space-md, 16px)",f=[];if(Array.isArray(l)){if(f=l,s!==void 0){let g=[];l.forEach((u,d)=>{d>0&&g.push(ii("span",{class:"wf-space-split",key:`s${d}`},s)),g.push(u)}),f=g}}else l!==void 0&&(f=[l]);return ii("div",{class:`wf-space${r==="vertical"?" wf-space--vertical":""}`,style:{gap:c,flexWrap:i?"wrap":void 0,alignItems:a==="start"?"flex-start":a==="end"?"flex-end":a}},f)};import{h as os}from"weifuwu/vdom";import{keyOf as tf}from"weifuwu/vdom";function li(o){return o<=0?"1":`${o/24*100}%`}var nf=async(o,e)=>async t=>{let{gutter:n,flex:r,gap:i,direction:a="row",align:s,children:l}=t,c=n?n/2:0,f=Array.isArray(l)?l.map(g=>g&&typeof g=="object"&&g.type===rs?os(rs,{...g.props,key:tf(g),gutter:n},g.props?.children):g):l;return os("div",{class:`wf-grid-comp${r?" wf-grid-comp--flex":""}${a==="column"?" wf-grid-comp--column":""}`,style:{margin:c?`0 -${c}px`:void 0,gap:i!==void 0?`${i}px`:void 0,alignItems:s==="start"?"flex-start":s==="end"?"flex-end":s}},f)},rs=async(o,e)=>async t=>{let{span:n=24,gutter:r,children:i}=t,a=r?r/2:0;return os("div",{class:"wf-col",style:{width:li(n),flex:n<=0?"1":"0 0 auto",padding:a?`0 ${a}px`:void 0}},i)};import{h as of}from"weifuwu/vdom";var rf=async(o,e)=>async t=>{let{maxHeight:n,height:r,orientation:i="vertical",always:a,children:s,style:l}=t,c=i==="horizontal";return of("div",{class:`wf-scrollbar${a?" 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}},s)};import{h as Mt}from"weifuwu/vdom";var sf=3,af=async(o,e)=>{let t=!1;return async n=>{let{items:r,onClose:i}=n,a=r.length>=sf,s=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),i&&Mt("button",{class:"wf-alertgroup-close","aria-label":"\u5173\u95ED",onClick:()=>i(c.id)},Mt(H,{name:"close"}))]),l=a&&!t?r.slice(0,1):r;return Mt("div",{class:"wf-alertgroup",role:"group"},[a&&!t?Mt("button",{class:"wf-alertgroup-summary",onClick:()=>{t=!0,e.render()}},Mt("span",{},`+${r.length} \u6761\u901A\u77E5`)):null,t&&a?Mt("div",{class:"wf-alertgroup-list wf-alertgroup-list--open"},l.map(s)):Mt("div",{class:"wf-alertgroup-list"},l.map(s))])}};import{h as Xe}from"weifuwu/vdom";var lf=async(o,e)=>{let t=!!o.defaultExpanded;return async n=>{let{items:r,label:i="\u5F15\u7528\u6765\u6E90",maxVisible:a=3,onOpen:s}=n;if(!r?.length)return null;let l=()=>{t=!t,e.render()},c=r.slice(0,a),f=r.length-c.length,g=c.map((u,d)=>{let p=s?{role:"button",tabindex:0,onClick:()=>s(u),onKeyDown:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),s(u))}}:u.url?{href:u.url,target:"_blank",rel:"noopener"}:{};return Xe("div",{key:u.id,class:"wf-citation-item"},[Xe("span",{class:"wf-citation-idx"},String(d+1)),Xe("div",{class:"wf-citation-content"},[Xe("div",{class:"wf-citation-title"},[u.title,u.source?Xe("span",{class:"wf-citation-source"},u.source):null]),Xe("div",{class:"wf-citation-snippet"},u.snippet)]),s||u.url?Xe("a",{class:"wf-citation-link",...p},Xe(H,{name:"external-link"})):null])});return f>0&&g.push(Xe("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`)),Xe("div",{class:"wf-citation"},[Xe("button",{type:"button",class:"wf-citation-toggle","aria-expanded":t,onClick:l,onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&(u.preventDefault(),l())}},[Xe("span",{class:`wf-citation-chevron${t?" wf-citation-chevron--open":""}`},Xe(H,{name:"chevron-down"})),Xe("span",{class:"wf-citation-count"},`${i} \xB7 ${r.length} \u6761`)]),Xe("div",{class:`wf-citation-body${t?" wf-citation-body--open":""}`,hidden:!t},g)])}};import{h as Ge}from"weifuwu/vdom";var cf=24*3600*1e3;function ci(o,e=Date.now()){let t=new Date(e).setHours(0,0,0,0),n=t-cf;return o>=t?"today":o>=n?"yesterday":"earlier"}var df={today:"\u4ECA\u5929",yesterday:"\u6628\u5929",earlier:"\u66F4\u65E9"},pf=async(o,e)=>{let t="",n,r="",i;return async a=>{let{sessions:s,activeId:l,onSelect:c,onNew:f,onRename:g,onDelete:u,searchable:d,newLabel:p="\u65B0\u5EFA\u4F1A\u8BDD"}=a,h=t?s.filter(C=>C.title.toLowerCase().includes(t.toLowerCase())):s,m=[];for(let C of h){let $=ci(C.updatedAt??0),T=m.find(M=>M.key===$);T?T.items.push(C):m.push({key:$,items:[C]})}let y=h,v=i?y.findIndex(C=>C.id===i):y.findIndex(C=>C.id===(l??"")),b=C=>{if(y.length===0)return;let $=v>=0?v:0,T=$;if(C.key==="ArrowDown")T=Math.min($+1,y.length-1);else if(C.key==="ArrowUp")T=Math.max($-1,0);else return;C.preventDefault(),i=y[T].id,e.render()},w=C=>{let $=C.id===l,T=C.id===i;return C.id===n?Ge("div",{key:C.id,class:"wf-session-item wf-session-item--rename","data-id":C.id},Ge("input",{class:"wf-session-rename-input",value:r,"aria-label":"\u91CD\u547D\u540D\u4F1A\u8BDD",onInput:A=>{r=A.target.value},onKeyDown:A=>{if(A.key==="Enter"){A.preventDefault();let D=r.trim();D&&g?.(C.id,D),n=void 0,e.render()}else A.key==="Escape"&&(A.preventDefault(),n=void 0,e.render())},onBlur:()=>{n===C.id&&(n=void 0,e.render())}})):Ge("div",{key:C.id,class:`wf-session-item${$?" wf-session-item--active":""}${T?" wf-session-item--focus":""}`,"data-id":C.id,role:"option","aria-selected":$?"true":"false",onClick:()=>c?.(C.id),onKeyDown:A=>{A.key==="Enter"&&(A.preventDefault(),c?.(C.id))}},[Ge("span",{class:"wf-session-title"},C.title),g?Ge("button",{type:"button",class:"wf-session-rename","aria-label":`\u91CD\u547D\u540D ${C.title}`,onClick:A=>{A.stopPropagation(),n=C.id,r=C.title,e.render()}},Ge(H,{name:"edit"})):null,u?Ge("button",{type:"button",class:"wf-session-del","aria-label":`\u5220\u9664 ${C.title}`,onClick:A=>{A.stopPropagation(),u(C.id)}},Ge(H,{name:"trash"})):null])},x=h.length===0?[Ge("div",{class:"wf-session-empty"},"\u6682\u65E0\u4F1A\u8BDD")]:m.map(C=>[Ge("div",{class:"wf-session-group-title",key:`g-${C.key}`},df[C.key]),...C.items.map(w)]);return Ge("div",{class:"wf-session"},[d||f?Ge("div",{class:"wf-session-head"},[d?Ge("input",{class:"wf-session-search",placeholder:"\u641C\u7D22\u4F1A\u8BDD\u2026","aria-label":"\u641C\u7D22\u4F1A\u8BDD",value:t,onInput:C=>{t=C.target.value,e.render()}}):null,f?Ge("button",{type:"button",class:"wf-session-new wf-btn wf-btn--primary wf-btn--sm",onClick:()=>f()},Ge(H,{name:"plus"})):null]):null,Ge("div",{class:"wf-session-list",role:"listbox","aria-label":"\u4F1A\u8BDD\u5217\u8868",tabindex:c?0:void 0,onKeyDown:b},x)])}};import{h as ff}from"weifuwu/vdom";import{createClientBrowser as uf}from"weifuwu/vdom";var mf=0,hf=async(o,e)=>async t=>{let{children:n,className:r="",color:i}=t,a=s=>{let l=s.currentTarget,c=l.getBoundingClientRect(),f=Math.max(c.width,c.height)*2,g=s.clientX-c.left-f/2,u=s.clientY-c.top-f/2,d=(e.browser??uf()).createElement("span");d.className="wf-wave-ripple",d.dataset.wid=`wave-${++mf}`,d.style.cssText=`left:${g}px;top:${u}px;width:${f}px;height:${f}px;${i?`background:${i};`:""}`,l.appendChild(d);let p=()=>d.remove();d.addEventListener("animationend",p,{once:!0}),e.browser?.timeout?.(p,600)};return ff("span",{class:`wf-wave${r?` ${r}`:""}`,onClick:s=>{a(s)}},n)};import{h as di}from"weifuwu/vdom";var gf=async(o,e)=>{let t=null,n=null,{dragProps:r}=e.ui.useDragDrop({onDragEnd:()=>{if(t!=null&&n!=null&&t!==n){let a=[...i.items],[s]=a.splice(t,1);a.splice(n,0,s),i.onReorder?.(a)}t=null,n=null,e.render()}}),i={items:[],onReorder:void 0};return async a=>{i.items=a.items,i.onReorder=a.onReorder;let{items:s,keyField:l,renderItem:c,draggingClass:f="wf-sortable-dragging",className:g=""}=a;return a.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"),di("div",{class:`wf-sortable wf-stack wf-gap-xs${g?` ${g}`:""}`},s.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 di("div",{key:String(u[l]??d),class:h,...p},c(u,d,p))}))}};import{h as yf}from"weifuwu/vdom";function pi({data:o,columns:e,format:t}){let n=e?e.map(s=>s.key):o.length?Object.keys(o[0]):[],r=e?e.map(s=>s.label??s.key):n,i=s=>/[",\n]/.test(s)?`"${s.replace(/"/g,'""')}"`:s;return"\uFEFF"+[r,...o.map(s=>n.map(l=>{let c=s[l];return c==null?"":i(String(t?t(c,l):c))}))].map(s=>s.join(",")).join(`
|
|
56
|
-
`)}var
|
|
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:
|
|
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&>("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};
|