@oneflowui/ui 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.en.md +215 -0
  2. package/README.md +142 -85
  3. package/dist/{FieldCheckbox-B1eVag_x.js → FieldCheckbox-6JDYTsHs.js} +1 -1
  4. package/dist/{FieldDate-BCitHPQn.js → FieldDate-cdYgLrho.js} +1 -1
  5. package/dist/{FieldDatetime-BGeyZJl-.js → FieldDatetime-pAXjbyWM.js} +1 -1
  6. package/dist/{FieldEmail-Ds8lTvNh.js → FieldEmail-JHD3hxeh.js} +1 -1
  7. package/dist/{FieldMultiSelect-_cY4aZuE.js → FieldMultiSelect-T2Y_QR8E.js} +2 -2
  8. package/dist/{FieldNumber-DayaF31C.js → FieldNumber-CLDK-7Qo.js} +1 -1
  9. package/dist/{FieldRating-Dw9rvhUe.js → FieldRating-FqV5Q8Gx.js} +6 -6
  10. package/dist/{FieldSelect-DEVkjnNY.js → FieldSelect-DpdguTLS.js} +2 -2
  11. package/dist/{FieldText-LzCqM7jk.js → FieldText-DlH9Yu2e.js} +1 -1
  12. package/dist/{FieldUrl-zqYEJCPK.js → FieldUrl-BZNZRB4_.js} +1 -1
  13. package/dist/components/base/Accordion.vue.d.ts +51 -0
  14. package/dist/components/base/Avatar.vue.d.ts +11 -0
  15. package/dist/components/base/Badge.vue.d.ts +28 -0
  16. package/dist/components/base/ChainItem.vue.d.ts +14 -0
  17. package/dist/components/base/DescBlock.vue.d.ts +17 -0
  18. package/dist/components/base/InfoCard.vue.d.ts +49 -0
  19. package/dist/components/base/MonitorItem.vue.d.ts +19 -0
  20. package/dist/components/base/PersonaCard.vue.d.ts +44 -0
  21. package/dist/components/base/ProgressBar.vue.d.ts +33 -0
  22. package/dist/components/base/RefTag.vue.d.ts +29 -0
  23. package/dist/components/base/SectionBlock.vue.d.ts +45 -0
  24. package/dist/components/base/SelectBadge.vue.d.ts +36 -0
  25. package/dist/components/base/StatusIndicator.vue.d.ts +29 -0
  26. package/dist/components/base/StatusSummary.vue.d.ts +35 -0
  27. package/dist/components/base/Stepper.vue.d.ts +39 -0
  28. package/dist/components/base/Switch.vue.d.ts +18 -0
  29. package/dist/components/base/ViewModeGroup.vue.d.ts +17 -0
  30. package/dist/components/base/ViewSwitcher.vue.d.ts +57 -0
  31. package/dist/components/base/index.d.ts +35 -0
  32. package/dist/components/kanban/KanbanColumn.vue.d.ts +3 -1
  33. package/dist/components/layout/Navbar.vue.d.ts +1 -1
  34. package/dist/components/overlay/Dialog.vue.d.ts +1 -1
  35. package/dist/components/overlay/Drawer.vue.d.ts +27 -0
  36. package/dist/components/overlay/SidePanel.vue.d.ts +37 -0
  37. package/dist/components/overlay/index.d.ts +2 -0
  38. package/dist/components/table/DataTable.vue.d.ts +7 -1
  39. package/dist/components/table/TableGroupRow.vue.d.ts +17 -0
  40. package/dist/components/table/index.d.ts +1 -0
  41. package/dist/components/timeline/ActivityTimeline.vue.d.ts +40 -0
  42. package/dist/components/timeline/index.d.ts +2 -0
  43. package/dist/composables/index.d.ts +3 -1
  44. package/dist/composables/useStream.d.ts +13 -0
  45. package/dist/composables/useTable.d.ts +1 -1
  46. package/dist/composables/useTypewriter.d.ts +1 -0
  47. package/dist/composables/useVirtualList.d.ts +18 -0
  48. package/dist/index-D0oD-xsj.js +12472 -0
  49. package/dist/index.d.ts +11 -8
  50. package/dist/oneflow-ui.js +107 -82
  51. package/dist/oneflow-ui.umd.cjs +7 -7
  52. package/dist/style.css +1 -1
  53. package/dist/tests/drawer.integration.spec.d.ts +1 -0
  54. package/dist/tests/fielddef.integration.spec.d.ts +1 -0
  55. package/dist/tests/shallowRef.integration.spec.d.ts +1 -0
  56. package/dist/tests/useStream.integration.spec.d.ts +1 -0
  57. package/dist/tests/useTypewriter.integration.spec.d.ts +1 -0
  58. package/dist/tests/useVirtualList.integration.spec.d.ts +1 -0
  59. package/dist/types/index.d.ts +43 -4
  60. package/package.json +1 -1
  61. package/dist/index-B9LF7Kv4.js +0 -10661
@@ -1,13 +1,13 @@
1
- (function(N,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("lucide-vue-next"),require("vue-draggable-plus"),require("@vueup/vue-quill"),require("echarts"),require("marked")):typeof define=="function"&&define.amd?define(["exports","vue","lucide-vue-next","vue-draggable-plus","@vueup/vue-quill","echarts","marked"],e):(N=typeof globalThis<"u"?globalThis:N||self,e(N.OneflowUI={},N.Vue,N.LucideVueNext,N.VueDraggablePlus,N.VueQuill,N.echarts,N.marked))})(this,function(N,e,A,Ae,Jn,eo,Me){"use strict";function ut(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(o,n,a.get?a:{enumerable:!0,get:()=>t[n]})}}return o.default=t,Object.freeze(o)}const Re=ut(A),pt=ut(eo),to={class:"of-view-tab"},no=["onClick"],oo={class:"of-view-tab__label"},ao=e.defineComponent({__name:"ViewTab",props:{modelValue:{},items:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n={"table-2":A.Table2Icon,kanban:A.KanbanIcon,"layout-grid":A.LayoutGridIcon,"gantt-chart":A.GanttChartIcon};function a(c){return n[c]}const r=o;function s(c){r("update:modelValue",c)}return(c,l)=>(e.openBlock(),e.createElementBlock("div",to,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,d=>(e.openBlock(),e.createElementBlock("button",{key:d.key,class:e.normalizeClass(["of-view-tab__item",{"of-view-tab__item--active":t.modelValue===d.key}]),onClick:i=>s(d.key)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a(d.icon)),{class:"of-view-tab__icon",size:14})),e.createElementVNode("span",oo,e.toDisplayString(d.label),1)],10,no))),128))]))}}),x=(t,o)=>{const n=t.__vccOpts||t;for(const[a,r]of o)n[a]=r;return n},gt=x(ao,[["__scopeId","data-v-404dc0e5"]]),lo={class:"of-toolbar-btn__label"},_t=x(e.defineComponent({__name:"ToolbarBtn",props:{icon:{},label:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o;function r(l){return l.split("-").map(d=>d.charAt(0).toUpperCase()+d.slice(1)).join("")+"Icon"}const s=e.computed(()=>{const l=r(n.icon);return Re[l]});function c(l){a("click",l)}return(l,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["of-toolbar-btn",{"of-toolbar-btn--active":t.active}]),onClick:c},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),{class:"of-toolbar-btn__icon",size:13})),e.createElementVNode("span",lo,e.toDisplayString(t.label),1)],2))}}),[["__scopeId","data-v-613d169c"]]),bt=x(e.defineComponent({__name:"AddViewBtn",emits:["click"],setup(t,{emit:o}){const n=o;function a(r){n("click",r)}return(r,s)=>(e.openBlock(),e.createElementBlock("button",{class:"of-add-view-btn",onClick:a},[e.createVNode(e.unref(A.PlusIcon),{class:"of-add-view-btn__icon",size:12}),s[0]||(s[0]=e.createElementVNode("span",{class:"of-add-view-btn__label"},"添加视图",-1))]))}}),[["__scopeId","data-v-03f9744d"]]),ro={class:"of-range-slider"},so={class:"of-range-slider__label"},io=["value","min","max","step"],co={key:0,class:"of-range-slider__description"},yt=x(e.defineComponent({__name:"RangeSlider",props:{label:{},modelValue:{},min:{},max:{},step:{},description:{}},emits:["update:modelValue"],setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",ro,[e.createElementVNode("label",so,e.toDisplayString(t.label),1),e.createElementVNode("input",{value:t.modelValue,onInput:n[0]||(n[0]=a=>o.$emit("update:modelValue",Number(a.target.value))),type:"range",min:t.min,max:t.max,step:t.step??1,class:"of-range-slider__input"},null,40,io),t.description?(e.openBlock(),e.createElementBlock("p",co,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-415d850b"]]);function mo(t){return t.split("-").map(o=>o.charAt(0).toUpperCase()+o.slice(1)).join("")+"Icon"}function se(t){if(!t)return;if(typeof t!="string")return t;const o=mo(t);return Re[o]}const fo=["onClick"],uo={key:0,class:"of-button-group__item-content"},po={key:1},kt=x(e.defineComponent({__name:"ButtonGroup",props:{options:{},modelValue:{}},emits:["update:modelValue"],setup(t){const o=t,n=e.computed(()=>{const a=o.options.length;return a<=2?"of-button-group--cols-2":a<=3?"of-button-group--cols-3":"of-button-group--cols-4"});return(a,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-button-group",n.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,s=>(e.openBlock(),e.createElementBlock("button",{key:s.value,onClick:c=>a.$emit("update:modelValue",s.value),class:e.normalizeClass(["of-button-group__item",t.modelValue===s.value?"of-button-group__item--active":""])},[s.icon?(e.openBlock(),e.createElementBlock("div",uo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(s.icon)),{class:"of-button-group__item-icon"})),e.createElementVNode("span",null,e.toDisplayString(s.label),1)])):(e.openBlock(),e.createElementBlock("div",po,e.toDisplayString(s.label),1))],10,fo))),128))],2))}}),[["__scopeId","data-v-57b85c27"]]),go={class:"of-empty-state"},_o={class:"of-empty-state__content"},bo={key:0,class:"of-empty-state__icon"},yo={class:"of-empty-state__title"},ko={key:1,class:"of-empty-state__description"},ht=x(e.defineComponent({__name:"EmptyState",props:{icon:{},title:{},description:{},action:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",go,[e.createElementVNode("div",_o,[t.icon?(e.openBlock(),e.createElementBlock("div",bo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(t.icon))))])):e.createCommentVNode("",!0),e.createElementVNode("h3",yo,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",ko,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),t.action?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:n[0]||(n[0]=(...a)=>t.action.onClick&&t.action.onClick(...a)),class:"of-empty-state__action"},e.toDisplayString(t.action.label),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-943933a7"]]),ho={class:"of-statistic-card"},Eo={class:"of-statistic-card__content"},Bo={class:"of-statistic-card__value"},No={class:"of-statistic-card__label"},Et=x(e.defineComponent({__name:"StatisticCard",props:{icon:{},iconColor:{},value:{},label:{}},setup(t){const o=t,n={blue:{bg:"var(--of-color-blue-50)",text:"var(--of-color-blue-600)"},green:{bg:"var(--of-color-green-50)",text:"var(--of-color-green-600)"},orange:{bg:"var(--of-color-orange-50)",text:"var(--of-color-orange-600)"},red:{bg:"var(--of-color-red-50)",text:"var(--of-color-red-600)"},purple:{bg:"var(--of-color-purple-50)",text:"var(--of-color-purple-600)"}},a=e.computed(()=>{const r=o.iconColor||"blue";return n[r]||n.blue});return(r,s)=>(e.openBlock(),e.createElementBlock("div",ho,[e.createElementVNode("div",{class:"of-statistic-card__icon-container",style:e.normalizeStyle({backgroundColor:a.value.bg})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(t.icon)),{class:"of-statistic-card__icon",style:e.normalizeStyle({color:a.value.text})},null,8,["style"]))],4),e.createElementVNode("div",Eo,[e.createElementVNode("p",Bo,e.toDisplayString(t.value),1),e.createElementVNode("p",No,e.toDisplayString(t.label),1)])]))}}),[["__scopeId","data-v-d71c0c27"]]),Co={class:"of-dropdown-menu"},So=["aria-expanded"],wo={key:0,class:"of-dropdown-menu__content",role:"menu"},$o=["onClick"],Bt=x(e.defineComponent({__name:"DropdownMenu",props:{items:{}},setup(t){const o=e.ref(!1);function n(s){s.onClick(),o.value=!1}function a(){o.value=!o.value}function r(){o.value=!1}return(s,c)=>(e.openBlock(),e.createElementBlock("div",Co,[e.createElementVNode("button",{class:"of-dropdown-menu__trigger",onClick:a,"aria-haspopup":"true","aria-expanded":o.value,"aria-label":"更多操作"},[e.createVNode(e.unref(A.MoreHorizontal),{size:18})],8,So),e.createVNode(e.Transition,{name:"of-dropdown-fade"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-dropdown-menu__backdrop",onClick:r})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"of-dropdown-slide"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,d)=>(e.openBlock(),e.createElementBlock("button",{key:d,onClick:i=>n(l),class:e.normalizeClass(["of-dropdown-menu__item",`of-dropdown-menu__item--${l.variant||"default"}`]),role:"menuitem"},[l.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(l.icon)),{key:0,class:"of-dropdown-menu__item-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(l.label),1)],10,$o))),128))])):e.createCommentVNode("",!0)]),_:1})]))}}),[["__scopeId","data-v-04523ff0"]]),xo={class:"of-app-layout"},Do={class:"of-app-layout__navbar"},To={class:"of-app-layout__body"},Ao={class:"of-app-layout__sidebar"},Mo={class:"of-app-layout__main"},Ro={class:"of-app-layout__statusbar"},Nt=x(e.defineComponent({__name:"AppLayout",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",xo,[e.createElementVNode("header",Do,[e.renderSlot(o.$slots,"navbar",{},void 0,!0)]),e.createElementVNode("div",To,[e.createElementVNode("aside",Ao,[e.renderSlot(o.$slots,"sidebar",{},void 0,!0)]),e.createElementVNode("main",Mo,[e.renderSlot(o.$slots,"default",{},void 0,!0)])]),e.createElementVNode("footer",Ro,[e.renderSlot(o.$slots,"statusbar",{},void 0,!0)])]))}}),[["__scopeId","data-v-4280504b"]]),Io={class:"of-navbar"},Vo={class:"of-navbar__left"},Oo={class:"of-navbar__center"},Lo={class:"of-navbar__search"},zo=["placeholder"],Fo={class:"of-navbar__right"},Po={key:0,class:"of-navbar__notify-badge"},Ct=x(e.defineComponent({__name:"Navbar",props:{username:{default:"U"},searchPlaceholder:{default:"⌘K 搜索..."},notifyCount:{default:0}},emits:["search","notify-click","avatar-click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.username?n.username.charAt(0).toUpperCase():"U");function s(d){a("search",d.target.value)}function c(){a("notify-click")}function l(){a("avatar-click")}return(d,i)=>(e.openBlock(),e.createElementBlock("nav",Io,[e.createElementVNode("div",Vo,[e.renderSlot(d.$slots,"logo",{},()=>[i[0]||(i[0]=e.createElementVNode("span",{class:"of-navbar__logo-default"},"OneFlow",-1))],!0)]),e.createElementVNode("div",Oo,[e.createElementVNode("div",Lo,[e.createVNode(e.unref(A.SearchIcon),{class:"of-navbar__search-icon",size:14}),e.createElementVNode("input",{class:"of-navbar__search-input",type:"text",placeholder:t.searchPlaceholder,onInput:s},null,40,zo)])]),e.createElementVNode("div",Fo,[e.createElementVNode("button",{class:"of-navbar__notify-btn",onClick:c},[e.createVNode(e.unref(A.BellIcon),{class:"of-navbar__notify-icon",size:16}),t.notifyCount&&t.notifyCount>0?(e.openBlock(),e.createElementBlock("span",Po,e.toDisplayString(t.notifyCount>99?"99+":t.notifyCount),1)):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"of-navbar__avatar",onClick:l},e.toDisplayString(r.value),1)])]))}}),[["__scopeId","data-v-7cbf1731"]]),Uo={class:"of-sidebar"},vo={key:0,class:"of-sidebar__header"},Ko={class:"of-sidebar__nav"},Go=["onClick"],Ho={class:"of-sidebar__item-label"},Wo={key:1,class:"of-sidebar__item-badge"},qo={key:0,class:"of-sidebar__children"},Zo=["onClick"],jo={class:"of-sidebar__item-label"},Yo={key:1,class:"of-sidebar__item-badge"},Xo={key:1,class:"of-sidebar__footer"},St=x(e.defineComponent({__name:"Sidebar",props:{items:{}},emits:["item-click"],setup(t,{emit:o}){const n=o,a=e.ref(new Set);function r(i){return i.split("-").map(m=>m.charAt(0).toUpperCase()+m.slice(1)).join("")+"Icon"}function s(i){if(!i)return;const m=r(i);return Re[m]}function c(i){a.value.has(i.id)?a.value.delete(i.id):a.value.add(i.id)}function l(i){i.children&&i.children.length>0&&c(i),n("item-click",i)}function d(i){return a.value.has(i.id)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",Uo,[i.$slots.header?(e.openBlock(),e.createElementBlock("div",vo,[e.renderSlot(i.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",Ko,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.id},[e.createElementVNode("button",{class:e.normalizeClass(["of-sidebar__item",{"of-sidebar__item--active":f.active}]),onClick:p=>l(f)},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s(f.icon)),{key:0,class:"of-sidebar__item-icon",size:15})):e.createCommentVNode("",!0),e.createElementVNode("span",Ho,e.toDisplayString(f.label),1),f.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Wo,e.toDisplayString(f.badge),1)):e.createCommentVNode("",!0),f.children&&f.children.length>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(f)?e.unref(A.ChevronDownIcon):e.unref(A.ChevronRightIcon)),{key:2,class:"of-sidebar__item-chevron",size:13})):e.createCommentVNode("",!0)],10,Go),f.children&&f.children.length>0&&d(f)?(e.openBlock(),e.createElementBlock("div",qo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.children,p=>(e.openBlock(),e.createElementBlock("button",{key:p.id,class:e.normalizeClass(["of-sidebar__item of-sidebar__item--child",{"of-sidebar__item--active":p.active}]),onClick:u=>n("item-click",p)},[p.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s(p.icon)),{key:0,class:"of-sidebar__item-icon",size:14})):e.createCommentVNode("",!0),e.createElementVNode("span",jo,e.toDisplayString(p.label),1),p.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Yo,e.toDisplayString(p.badge),1)):e.createCommentVNode("",!0)],10,Zo))),128))])):e.createCommentVNode("",!0)],64))),128))]),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",Xo,[e.renderSlot(i.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-32a85d66"]]),Qo={class:"of-statusbar"},Jo={class:"of-statusbar__left"},ea={class:"of-statusbar__sync-text"},ta={class:"of-statusbar__right"},na={key:0,class:"of-statusbar__shortcuts"},oa={class:"of-statusbar__version"},wt=x(e.defineComponent({__name:"StatusBar",props:{synced:{type:Boolean,default:!0},shortcuts:{default:""},version:{default:"v1.0.0"}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",Jo,[t.synced?(e.openBlock(),e.createBlock(e.unref(A.CircleCheckIcon),{key:0,class:"of-statusbar__sync-icon of-statusbar__sync-icon--ok",size:13})):(e.openBlock(),e.createBlock(e.unref(A.CircleAlertIcon),{key:1,class:"of-statusbar__sync-icon of-statusbar__sync-icon--warn",size:13})),e.createElementVNode("span",ea,e.toDisplayString(t.synced?"所有更改已同步":"同步中..."),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"of-statusbar__spacer"},null,-1)),e.createElementVNode("div",ta,[t.shortcuts?(e.openBlock(),e.createElementBlock("span",na,e.toDisplayString(t.shortcuts),1)):e.createCommentVNode("",!0),e.createElementVNode("span",oa,e.toDisplayString(t.version),1)])]))}}),[["__scopeId","data-v-7f81a511"]]),aa={class:"of-table-header"},la={key:0,class:"of-th of-th-checkbox"},ra=["checked","indeterminate"],sa=["onClick"],ia={class:"of-th-label"},ca={class:"of-th-sort-icon"},Ie=x(e.defineComponent({__name:"TableHeaderRow",props:{columns:{},selectable:{type:Boolean,default:!0},sortKey:{default:""},sortOrder:{default:"asc"},allSelected:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1}},emits:["sort","select-all"],setup(t,{emit:o}){const n=t,a=o,r=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],s=e.computed(()=>n.columns??r);function c(d){return d.width==="fill"?{flex:"1 1 0"}:{width:`${d.width}px`,flexShrink:"0",flexGrow:"0"}}function l(d){a("sort",d)}return(d,i)=>(e.openBlock(),e.createElementBlock("div",aa,[t.selectable?(e.openBlock(),e.createElementBlock("div",la,[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.allSelected,indeterminate:t.indeterminate,onChange:i[0]||(i[0]=m=>a("select-all"))},null,40,ra)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,m=>(e.openBlock(),e.createElementBlock("div",{key:m.key,class:e.normalizeClass(["of-th",{"of-th--sortable":!0,"of-th--active":t.sortKey===m.key}]),style:e.normalizeStyle(c(m)),onClick:f=>l(m.key)},[e.createElementVNode("span",ia,e.toDisplayString(m.label),1),e.createElementVNode("span",ca,[t.sortKey===m.key&&t.sortOrder==="asc"?(e.openBlock(),e.createBlock(e.unref(A.ChevronUp),{key:0,size:12,class:"of-sort-icon-active"})):t.sortKey===m.key&&t.sortOrder==="desc"?(e.openBlock(),e.createBlock(e.unref(A.ChevronDown),{key:1,size:12,class:"of-sort-icon-active"})):(e.openBlock(),e.createBlock(e.unref(A.ChevronDown),{key:2,size:12,class:"of-sort-icon-idle"}))])],14,sa))),128))]))}}),[["__scopeId","data-v-8f437bc6"]]),fe={P0:{text:"#DC2626",bg:"#FEE2E2",label:"P0"},P1:{text:"#D97706",bg:"#FEF3C7",label:"P1"},P2:{text:"#2563EB",bg:"#DBEAFE",label:"P2"},P3:{text:"#64748B",bg:"#F1F5F9",label:"P3"}},ie={todo:{text:"#64748B",bg:"#F1F5F9",label:"待处理"},in_progress:{text:"#2563EB",bg:"#DBEAFE",label:"进行中"},blocked:{text:"#D97706",bg:"#FEF3C7",label:"已阻塞",dot:"#D97706"},done:{text:"#22C55E",bg:"#DCFCE7",label:"已完成"},pending:{text:"#64748B",bg:"#F1F5F9",label:"Pending"},open:{text:"#2563EB",bg:"#DBEAFE",label:"Open"},closed:{text:"#22C55E",bg:"#DCFCE7",label:"Closed"},cancelled:{text:"#94A3B8",bg:"#F8FAFC",label:"Cancelled"},待处理:{text:"#64748B",bg:"#F1F5F9",label:"待处理"},进行中:{text:"#2563EB",bg:"#DBEAFE",label:"进行中"},已阻塞:{text:"#D97706",bg:"#FEF3C7",label:"已阻塞",dot:"#D97706"},已完成:{text:"#22C55E",bg:"#DCFCE7",label:"已完成"}},da={text:"#64748B",bg:"#F1F5F9"};function Q(t,o){const n=o[t]??da;return{style:{color:n.text,background:n.bg},label:n.label??t,dot:n.dot}}function J(t,o){return o?{...t,...o}:t}function ma(){return{DEFAULT_PRIORITY_MAP:fe,DEFAULT_STATUS_MAP:ie,resolveBadge:Q,mergeColorMap:J}}const fa=["checked"],ua={key:0,class:"of-badge of-badge--role"},pa={key:1,class:"of-td-empty"},ga={key:3,class:"of-td-text"},_a={key:4,class:"of-td-id"},ba={key:5,class:"of-td-title"},ya={key:6,class:"of-td-text"},Ve=x(e.defineComponent({__name:"TableDataRow",props:{row:{},rowKey:{default:"id"},selected:{type:Boolean,default:!1},columns:{},priorityColorMap:{},statusColorMap:{}},emits:["select","click"],setup(t,{emit:o}){const n=t,a=o,r=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],s=e.computed(()=>n.columns??r);function c(y){return y.width==="fill"?{flex:"1 1 0"}:{width:`${y.width}px`,flexShrink:"0",flexGrow:"0"}}const l=e.computed(()=>J(fe,n.priorityColorMap)),d=e.computed(()=>J(ie,n.statusColorMap));function i(y){return Q(y,l.value)}function m(y){return Q(y,d.value)}function f(y){if(!y)return"-";const g=new Date(y);return isNaN(g.getTime())?y:`${g.getMonth()+1}/${g.getDate()}`}function p(y){return n.row[y.key]}function u(y){const g=p(y);return g!=null?String(g):"-"}function B(y){const g=p(y);return typeof g=="string"?g:""}function C(){const y=n.row[n.rowKey];return y!=null?String(y):""}return(y,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-table-row",{"of-table-row--selected":t.selected}]),onClick:g[2]||(g[2]=b=>a("click",t.row))},[e.createElementVNode("div",{class:"of-td of-td-checkbox",onClick:g[1]||(g[1]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.selected,onChange:g[0]||(g[0]=b=>a("select",C()))},null,40,fa)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,b=>(e.openBlock(),e.createElementBlock("div",{key:b.key,class:"of-td",style:e.normalizeStyle(c(b))},[e.renderSlot(y.$slots,"cell",{row:t.row,col:b},()=>[b.key==="status"?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-badge",style:e.normalizeStyle(m(B(b)).style)},e.toDisplayString(m(B(b)).label),5)):b.key==="priority"?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-badge",style:e.normalizeStyle(i(B(b)).style)},e.toDisplayString(i(B(b)).label),5)):b.key==="role"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[B(b)?(e.openBlock(),e.createElementBlock("span",ua,e.toDisplayString(B(b)),1)):(e.openBlock(),e.createElementBlock("span",pa,"-"))],64)):b.key==="updatedAt"?(e.openBlock(),e.createElementBlock("span",ga,e.toDisplayString(f(B(b))),1)):b.key==="id"?(e.openBlock(),e.createElementBlock("span",_a,e.toDisplayString(C()),1)):b.key==="title"?(e.openBlock(),e.createElementBlock("span",ba,e.toDisplayString(u(b)),1)):(e.openBlock(),e.createElementBlock("span",ya,e.toDisplayString(u(b)),1))],!0)],4))),128))],2))}}),[["__scopeId","data-v-b0c14740"]]),Oe=x(e.defineComponent({__name:"NewRowBtn",emits:["click"],setup(t,{emit:o}){const n=o;return(a,r)=>(e.openBlock(),e.createElementBlock("button",{class:"of-new-row-btn",onClick:r[0]||(r[0]=s=>n("click"))},[e.createVNode(e.unref(A.Plus),{size:14,class:"of-new-row-icon"}),r[1]||(r[1]=e.createElementVNode("span",{class:"of-new-row-label"},"新建任务",-1))]))}}),[["__scopeId","data-v-612639d1"]]),le=e.ref(null);function $t(){function t(r,s){le.value={rowId:r,fieldId:s}}function o(r,s,c){var l,d;return((l=le.value)==null?void 0:l.rowId)===r&&((d=le.value)==null?void 0:d.fieldId)===s&&(le.value=null),c}function n(){le.value=null}function a(r,s){var c,l;return((c=le.value)==null?void 0:c.rowId)===r&&((l=le.value)==null?void 0:l.fieldId)===s}return{editingCell:e.readonly(le),activate:t,commit:o,cancel:n,isEditing:a}}const ka={key:1,class:"of-field-cell__display"},Le=x(e.defineComponent({__name:"FieldCell",props:{rowId:{},field:{},value:{type:[String,Number,Boolean,Array,null]},readonly:{type:Boolean,default:!1}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,{isEditing:r,activate:s,commit:c,cancel:l}=$t(),d=e.computed(()=>r(n.rowId,n.field.id)),i=e.computed(()=>n.readonly||n.field.readonly);function m(){i.value||s(n.rowId,n.field.id)}function f(g){c(n.rowId,n.field.id,g),a("commit",n.rowId,n.field.id,g)}function p(){l(),a("cancel")}function u(){a("tabNext")}const B={text:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Tc)),number:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Ac)),checkbox:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Rc)),select:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Lc)),multiselect:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Gc)),date:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Hc)),datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Wc)),rating:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Zc)),url:e.defineAsyncComponent(()=>Promise.resolve().then(()=>jc)),email:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Yc))},C=e.computed(()=>B[n.field.type]),y=e.computed(()=>{const g=n.value;return g==null||g===""?"—":Array.isArray(g)?g.join(", "):typeof g=="boolean"?g?"✓":"—":String(g)});return(g,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-field-cell",{"of-field-cell--editing":d.value,"of-field-cell--readonly":i.value}]),onClick:m},[d.value?(e.openBlock(),e.createBlock(e.Suspense,{key:0},{fallback:e.withCtx(()=>[...b[0]||(b[0]=[e.createElementVNode("span",{class:"of-field-cell__loading"},"...",-1)])]),default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.value),{value:t.value,field:t.field,onCommit:f,onCancel:p,onTabNext:u},null,40,["value","field"]))]),_:1})):(e.openBlock(),e.createElementBlock("span",ka,e.toDisplayString(y.value),1))],2))}}),[["__scopeId","data-v-e995b67a"]]),ha={class:"of-data-table"},xt=x(e.defineComponent({__name:"DataTable",props:{tasks:{},records:{},schema:{},view:{},columns:{},fieldDefs:{},rowKey:{default:"id"},selectable:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},priorityColorMap:{},statusColorMap:{}},emits:["row-click","row-click-record","add-row","selection-change","cell-edit"],setup(t,{emit:o}){const n=t,a=o,{commit:r}=$t();function s(_){return _.type==="number"||_.type==="date"?_.type:_.type==="select"?"status":"string"}function c(_){return{key:_.id,label:_.name,width:_.width,type:s(_)}}const l=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],d=e.computed(()=>{var _,h,w,O,H;return(_=n.columns)!=null&&_.length?n.columns:(w=(h=n.schema)==null?void 0:h.fields)!=null&&w.length?((H=(O=n.view)==null?void 0:O.visibleFields)!=null&&H.length?n.schema.fields.filter(F=>{var ee;return(ee=n.view)==null?void 0:ee.visibleFields.includes(F.id)}):n.schema.fields).filter(F=>!F.hidden).map(c):l}),i=e.computed(()=>{var _;return(_=n.records)!=null&&_.length?n.records.map(h=>({id:h.id,...h.fields,createdAt:h.createdAt,updatedAt:h.updatedAt,__record:h})):n.tasks??[]}),m=e.ref(""),f=e.ref("asc");function p(_){m.value===_?f.value=f.value==="asc"?"desc":"asc":(m.value=_,f.value="asc")}const u=e.computed(()=>m.value?[...i.value].sort((_,h)=>{const w=_[m.value],O=h[m.value],H=w!=null?String(w):"",K=O!=null?String(O):"",F=H.localeCompare(K,"zh-CN");return f.value==="asc"?F:-F}):i.value);function B(_){const h=_[n.rowKey];return h!=null?String(h):""}function C(_){var h;return((h=n.fieldDefs)==null?void 0:h.find(w=>w.id===_))??{id:_,type:"text",label:_}}function y(_,h,w){r(_,h,w),a("cell-edit",{rowId:_,fieldId:h,value:w})}function g(_,h){return _[h]}const b=e.ref([]),k=e.computed(()=>i.value.length>0&&b.value.length===i.value.length),T=e.computed(()=>b.value.length>0&&b.value.length<i.value.length);function S(){k.value?b.value=[]:b.value=i.value.map(_=>B(_))}function I(_){b.value.indexOf(_)===-1?b.value=[...b.value,_]:b.value=b.value.filter(w=>w!==_)}e.watch(b,_=>{a("selection-change",_)},{deep:!0});function W(_){if(_.__record){a("row-click-record",_.__record),a("row-click",_.__record);return}a("row-click",_)}return(_,h)=>(e.openBlock(),e.createElementBlock("div",ha,[e.createVNode(Ie,{columns:d.value,selectable:t.selectable,"sort-key":m.value,"sort-order":f.value,"all-selected":k.value,indeterminate:T.value,onSort:p,onSelectAll:S},null,8,["columns","selectable","sort-key","sort-order","all-selected","indeterminate"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,w=>{var O;return e.openBlock(),e.createBlock(Ve,{key:B(w),row:w,"row-key":t.rowKey,selected:b.value.includes(B(w)),columns:d.value,"priority-color-map":t.priorityColorMap,"status-color-map":t.statusColorMap,onSelect:I,onClick:W},e.createSlots({_:2},[(O=t.fieldDefs)!=null&&O.length?{name:"cell",fn:e.withCtx(({row:H,col:K})=>[e.createVNode(Le,{"row-id":String(H[t.rowKey]),field:C(K.key),value:g(H,K.key),onCommit:y},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1032,["row","row-key","selected","columns","priority-color-map","status-color-map"])}),128)),t.addable?(e.openBlock(),e.createBlock(Oe,{key:0,onClick:h[0]||(h[0]=w=>a("add-row"))})):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-b0c01be6"]]),Ea={key:0,class:"of-filter-panel"},Ba={class:"of-filter-panel__header"},Na={key:0,class:"of-filter-panel__empty"},Ca={key:1,class:"of-filter-panel__conditions"},Sa={key:0,class:"of-filter-condition__logic-label"},wa={key:1,class:"of-filter-condition__logic-group"},$a=["value","onChange"],xa=["value"],Da=["value","onChange"],Ta=["value"],Aa=["value","onInput"],Ma={key:3,class:"of-filter-condition__no-value"},Ra=["onClick"],Ia={class:"of-filter-panel__footer"},Dt=x(e.defineComponent({__name:"TableFilterPanel",props:{columns:{},conditions:{},logic:{},visible:{type:Boolean}},emits:["add-condition","remove-condition","update-condition","update:logic","clear","close"],setup(t,{emit:o}){const n=t,a=o,r=[{value:"contains",label:"包含"},{value:"not_contains",label:"不包含"},{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"starts_with",label:"开头是"},{value:"ends_with",label:"结尾是"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}];function s(i){var m;return(m=n.columns.find(f=>f.key===i))==null?void 0:m.type}function c(i){return s(i)==="number"?[{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"gt",label:"大于"},{value:"gte",label:"大于等于"},{value:"lt",label:"小于"},{value:"lte",label:"小于等于"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}]:r}const l=["is_empty","is_not_empty"];function d(i){return l.includes(i)}return(i,m)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("div",Ea,[e.createElementVNode("div",Ba,[m[5]||(m[5]=e.createElementVNode("span",{class:"of-filter-panel__title"},"筛选",-1)),e.createElementVNode("button",{class:"of-filter-panel__close",onClick:m[0]||(m[0]=f=>a("close"))},[e.createVNode(e.unref(A.X),{size:14})])]),t.conditions.length===0?(e.openBlock(),e.createElementBlock("div",Na," 暂无筛选条件,点击下方添加 ")):(e.openBlock(),e.createElementBlock("div",Ca,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.conditions,(f,p)=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"of-filter-condition"},[p===0?(e.openBlock(),e.createElementBlock("span",Sa,"当")):(e.openBlock(),e.createElementBlock("span",wa,[e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="and"}]),onClick:m[1]||(m[1]=u=>a("update:logic","and"))}," 且 ",2),e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="or"}]),onClick:m[2]||(m[2]=u=>a("update:logic","or"))}," 或 ",2)])),e.createElementVNode("select",{class:"of-filter-condition__select of-filter-condition__select--field",value:f.field,onChange:u=>a("update-condition",f.id,{field:u.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,u=>(e.openBlock(),e.createElementBlock("option",{key:u.key,value:u.key},e.toDisplayString(u.label),9,xa))),128))],40,$a),e.createElementVNode("select",{class:"of-filter-condition__select",value:f.operator,onChange:u=>a("update-condition",f.id,{operator:u.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c(f.field),u=>(e.openBlock(),e.createElementBlock("option",{key:u.value,value:u.value},e.toDisplayString(u.label),9,Ta))),128))],40,Da),d(f.operator)?(e.openBlock(),e.createElementBlock("span",Ma)):(e.openBlock(),e.createElementBlock("input",{key:2,class:"of-filter-condition__input",value:f.value,placeholder:"输入值...",onInput:u=>a("update-condition",f.id,{value:u.target.value})},null,40,Aa)),e.createElementVNode("button",{class:"of-filter-condition__remove",onClick:u=>a("remove-condition",f.id)},[e.createVNode(e.unref(A.Trash2),{size:13})],8,Ra)]))),128))])),e.createElementVNode("div",Ia,[e.createElementVNode("button",{class:"of-filter-panel__add-btn",onClick:m[3]||(m[3]=f=>a("add-condition"))},[e.createVNode(e.unref(A.Plus),{size:13}),m[6]||(m[6]=e.createTextVNode(" 添加条件 ",-1))]),t.conditions.length?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-filter-panel__clear",onClick:m[4]||(m[4]=f=>a("clear"))}," 清除全部 ")):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-320dd0e4"]]),Va={key:0,class:"of-col-manager"},Oa={class:"of-col-manager__header"},La={class:"of-col-manager__actions"},za={class:"of-col-manager__drag"},Fa=["checked","onChange"],Tt=x(e.defineComponent({__name:"TableColumnManager",props:{columns:{},visible:{type:Boolean}},emits:["update:columns","close"],setup(t,{emit:o}){const n=t,a=o,r=e.ref([]);e.watch(()=>n.columns,m=>{r.value=m.map(f=>({...f}))},{immediate:!0,deep:!0});function s(){a("update:columns",r.value.map(m=>({...m})))}function c(m){m.hidden=!m.hidden,s()}function l(){r.value.forEach(m=>m.hidden=!1),s()}function d(){r.value.forEach(m=>m.hidden=!0),s()}function i(){s()}return(m,f)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("div",Va,[e.createElementVNode("div",Oa,[f[2]||(f[2]=e.createElementVNode("span",{class:"of-col-manager__title"},"管理列",-1)),e.createElementVNode("button",{class:"of-col-manager__close",onClick:f[0]||(f[0]=p=>a("close"))},[e.createVNode(e.unref(A.X),{size:14})])]),e.createElementVNode("div",La,[e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:l},[e.createVNode(e.unref(A.Eye),{size:12}),f[3]||(f[3]=e.createTextVNode(" 显示全部 ",-1))]),e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:d},[e.createVNode(e.unref(A.EyeOff),{size:12}),f[4]||(f[4]=e.createTextVNode(" 隐藏全部 ",-1))])]),e.createVNode(e.unref(Ae.VueDraggable),{modelValue:r.value,"onUpdate:modelValue":f[1]||(f[1]=p=>r.value=p),handle:".of-col-manager__drag",animation:150,onEnd:i},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,p=>(e.openBlock(),e.createElementBlock("div",{key:p.key,class:"of-col-manager__row"},[e.createElementVNode("span",za,[e.createVNode(e.unref(A.GripVertical),{size:14})]),e.createElementVNode("input",{type:"checkbox",class:"of-col-manager__checkbox",checked:!p.hidden,onChange:u=>c(p)},null,40,Fa),e.createElementVNode("span",{class:e.normalizeClass(["of-col-manager__label",{dimmed:p.hidden}])},e.toDisplayString(p.label),3)]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-95b7ae58"]]),Pa=["src"],Ua={class:"gallery-card__body"},va={class:"gallery-card__title"},Ka={key:0,class:"gallery-card__desc"},Ga={key:1,class:"gallery-card__props"},Ha={class:"gallery-card__prop-key"},Wa={class:"gallery-card__prop-value"},qa={class:"gallery-card__footer"},Za={class:"gallery-card__task-id"},ja={class:"gallery-card__date"},ze=x(e.defineComponent({__name:"GalleryCard",props:{item:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.item.bannerColor??"#BFDBFE"),s=e.computed(()=>typeof n.item.cover=="string"&&/^https?:\/\//.test(n.item.cover)),c=e.computed(()=>(n.item.extraProps??[]).slice(0,2)),l={tag:A.TagIcon,user:A.UserIcon,calendar:A.CalendarIcon,folder:A.FolderIcon};function d(p){return p?l[p.toLowerCase()]??A.CircleIcon:A.CircleIcon}const i=e.computed(()=>{const p=n.item.updatedAt??n.item.createdAt;if(!p)return"";const u=new Date(p);return`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`}),m={todo:"var(--of-color-gray-400)",in_progress:"var(--of-color-info)",blocked:"var(--of-color-warning)",done:"var(--of-color-success)"},f=e.computed(()=>m[n.item.status]??"var(--of-color-gray-400)");return(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-card",onClick:u[0]||(u[0]=B=>a("click",t.item))},[s.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"gallery-card__cover",src:t.item.cover,alt:""},null,8,Pa)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"gallery-card__banner",style:e.normalizeStyle({backgroundColor:r.value})},null,4)),e.createElementVNode("div",Ua,[e.createElementVNode("div",va,e.toDisplayString(t.item.title),1),t.item.description?(e.openBlock(),e.createElementBlock("div",Ka,e.toDisplayString(t.item.description),1)):e.createCommentVNode("",!0),u[3]||(u[3]=e.createElementVNode("div",{class:"gallery-card__divider"},null,-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("div",Ga,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,B=>(e.openBlock(),e.createElementBlock("div",{key:B.key,class:"gallery-card__prop-row"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(B.icon)),{class:"gallery-card__prop-icon",size:12})),e.createElementVNode("span",Ha,e.toDisplayString(B.key),1),u[1]||(u[1]=e.createElementVNode("span",{class:"gallery-card__prop-spacer"},null,-1)),e.createElementVNode("span",Wa,e.toDisplayString(B.value),1)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",qa,[e.createElementVNode("span",Za,[e.createElementVNode("span",{class:"gallery-card__status-dot",style:e.normalizeStyle({backgroundColor:f.value})},null,4),e.createTextVNode(" "+e.toDisplayString(t.item.id),1)]),u[2]||(u[2]=e.createElementVNode("span",{class:"gallery-card__footer-spacer"},null,-1)),e.createElementVNode("span",ja,e.toDisplayString(i.value),1)])])]))}}),[["__scopeId","data-v-0988fa59"]]);function At(t){return{id:t.id,fields:{title:t.title,description:t.description??"",status:t.status,priority:t.priority,assignee:t.assignee??"",startDate:t.startDate??"",endDate:t.endDate??"",tags:t.tags??[]},createdAt:t.createdAt,updatedAt:t.updatedAt}}function Fe(t){const o=t.fields.status,n=t.fields.priority,a=t.fields.title,r=t.fields.description,s=t.fields.assignee,c=t.fields.tags,l=t.fields.startDate,d=t.fields.endDate;return{id:t.id,title:typeof a=="string"&&a?a:t.id,description:typeof r=="string"?r:void 0,status:typeof o=="string"&&o?o:"todo",priority:typeof n=="string"&&n?n:"P3",assignee:typeof s=="string"?s:void 0,tags:Array.isArray(c)?c.filter(i=>typeof i=="string"):void 0,startDate:typeof l=="string"?l:void 0,endDate:typeof d=="string"?d:void 0,createdAt:t.createdAt,updatedAt:t.updatedAt}}function Mt(t,o={}){const n=o.kanbanFieldId??"status",a=new Map;for(const s of t){const c=s.fields[n],l=typeof c=="string"&&c?c:"unassigned",d=a.get(l)??[];d.push(Fe(s)),a.set(l,d)}return(o.laneOrder&&o.laneOrder.length>0?o.laneOrder:Array.from(a.keys())).map(s=>{var c;return{id:s,title:((c=o.laneTitles)==null?void 0:c[s])??s,tasks:a.get(s)??[]}})}function Rt(t,o={}){const n=o.coverFieldId,a=o.cardFieldIds??[];return t.map(r=>{const s=Fe(r),c=n?r.fields[n]:null,l=typeof c=="string"&&c?c:void 0,d=a.map(i=>{const m=r.fields[i];return m==null||i===n?null:Array.isArray(m)?{key:i,value:m.join(", ")}:{key:i,value:String(m)}}).filter(i=>i!==null);return{...s,cover:l,bannerColor:l!=null&&l.startsWith("#")?l:void 0,extraProps:d.length>0?d:void 0}})}const It=x(e.defineComponent({__name:"GalleryView",props:{items:{default:()=>[]},records:{default:()=>[]},coverFieldId:{default:""},cardFieldIds:{default:()=>[]},columns:{default:4},addable:{type:Boolean,default:!0}},emits:["card-click","add"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>({"--columns":n.columns})),s=e.computed(()=>n.items.length>0?n.items:n.records.length>0?Rt(n.records,{coverFieldId:n.coverFieldId||void 0,cardFieldIds:n.cardFieldIds}):[]);return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-view",style:e.normalizeStyle(r.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,d=>(e.openBlock(),e.createBlock(ze,{key:d.id,item:d,onClick:i=>a("card-click",d)},null,8,["item","onClick"]))),128)),t.addable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"gallery-view__add-btn",onClick:l[0]||(l[0]=d=>a("add"))},[e.createVNode(e.unref(A.PlusIcon),{size:18,class:"gallery-view__add-icon"}),l[1]||(l[1]=e.createElementVNode("span",{class:"gallery-view__add-label"},"添加",-1))])):e.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-d1d1b9bb"]]),Ya={class:"gantt-row__label"},Xa={class:"gantt-row__title"},Qa={class:"gantt-row__bar-label"},Pe=x(e.defineComponent({__name:"GanttRow",props:{item:{},dayWidth:{},offsetDays:{},durationDays:{},totalDays:{},readonly:{type:Boolean,default:!1},priorityColorMap:{},statusColorMap:{}},emits:["click","change"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref(null);let c=0,l=0,d=0;const i=e.computed(()=>n.totalDays*n.dayWidth),m=e.computed(()=>n.offsetDays*n.dayWidth),f=e.computed(()=>Math.max(n.durationDays,1)*n.dayWidth),p=e.computed(()=>Q(n.item.priority||"",J(fe,n.priorityColorMap))),u=e.computed(()=>n.item.barColor?{background:n.item.barColor,color:"#1E293B"}:{background:p.value.style.background,color:p.value.style.color}),B=e.computed(()=>p.value.style),C=e.computed(()=>{const T=Q(n.item.status||"",J(ie,n.statusColorMap));return T.dot??T.style.color}),y=e.computed(()=>{const T=S=>{const I=new Date(`${S}T00:00:00`);return`${String(I.getMonth()+1).padStart(2,"0")}/${String(I.getDate()).padStart(2,"0")}`};return`${T(n.item.startDate)} - ${T(n.item.endDate)}`});function g(T,S){n.readonly||(T.preventDefault(),T.stopPropagation(),r.value=!0,s.value=S,c=T.clientX,l=n.offsetDays,d=n.durationDays,window.addEventListener("mousemove",b),window.addEventListener("mouseup",k))}function b(T){if(!r.value||!s.value)return;const S=Math.round((T.clientX-c)/n.dayWidth);if(s.value==="move"){const _=Math.max(0,Math.min(l+S,n.totalDays-1));a("change",{id:n.item.id,offsetDays:_,durationDays:d,startDate:n.item.startDate,endDate:n.item.endDate});return}const I=Math.max(1,d+S),W=Math.max(1,n.totalDays-n.offsetDays);a("change",{id:n.item.id,offsetDays:n.offsetDays,durationDays:Math.min(I,W),startDate:n.item.startDate,endDate:n.item.endDate})}function k(){r.value=!1,s.value=null,window.removeEventListener("mousemove",b),window.removeEventListener("mouseup",k)}return(T,S)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-row",onClick:S[2]||(S[2]=I=>a("click",t.item))},[e.createElementVNode("div",Ya,[e.createElementVNode("span",{class:"gantt-row__dot",style:e.normalizeStyle({backgroundColor:C.value})},null,4),e.createElementVNode("span",Xa,e.toDisplayString(t.item.title),1),e.createElementVNode("span",{class:"gantt-row__priority",style:e.normalizeStyle(B.value)},e.toDisplayString(t.item.priority),5)]),e.createElementVNode("div",{class:"gantt-row__chart",style:e.normalizeStyle({width:`${i.value}px`})},[e.createElementVNode("div",{class:e.normalizeClass(["gantt-row__bar",{"gantt-row__bar--dragging":r.value}]),style:e.normalizeStyle({left:`${m.value}px`,width:`${f.value}px`,backgroundColor:u.value.background,color:u.value.color}),onMousedown:S[1]||(S[1]=I=>g(I,"move"))},[e.createElementVNode("span",Qa,e.toDisplayString(y.value),1),e.createElementVNode("span",{class:"gantt-row__handle",onMousedown:S[0]||(S[0]=I=>g(I,"resize-end"))},null,32)],38)],4)]))}}),[["__scopeId","data-v-8367e4c4"]]),Ja={class:"gantt-timeline__header"},el={class:"gantt-timeline__rows"},tl={key:0,class:"gantt-timeline__empty"},ue=40,Vt=x(e.defineComponent({__name:"GanttTimeline",props:{records:{},schema:{},viewConfig:{},startFieldId:{default:"startDate"},endFieldId:{default:"endDate"},labelFieldId:{default:"title"},items:{},data:{},startDate:{},days:{default:30}},emits:["row-click","record-change","update:records"],setup(t,{emit:o}){const n=t,a=o;function r(_){return new Date(`${_}T00:00:00`)}function s(_){const h=_.getFullYear(),w=String(_.getMonth()+1).padStart(2,"0"),O=String(_.getDate()).padStart(2,"0");return`${h}-${w}-${O}`}function c(_,h){return Math.round((r(h).getTime()-r(_).getTime())/864e5)}function l(_,h){const w=r(_),O=new Date(w);return O.setDate(w.getDate()+h),s(O)}function d(_){if(typeof _!="string"||!_)return null;const h=_.match(/^(\d{4}-\d{2}-\d{2})/);return h?h[1]:null}function i(){const _=new Date;return`${_.getFullYear()}-${String(_.getMonth()+1).padStart(2,"0")}-01`}const m=e.computed(()=>{var _,h;return(_=n.records)!=null&&_.length?n.records:(h=n.data)!=null&&h.length?n.data.map(At):[]}),f=e.computed(()=>{var _,h;if((_=n.records)!=null&&_.length||(h=n.data)!=null&&h.length){const w=[];for(const O of m.value){const H=d(O.fields[n.startFieldId]),K=d(O.fields[n.endFieldId]),F=O.fields[n.labelFieldId];!H||!K||w.push({id:O.id,sourceRecordId:O.id,title:typeof F=="string"&&F?F:O.id,status:typeof O.fields.status=="string"?O.fields.status:"",priority:typeof O.fields.priority=="string"?O.fields.priority:"",startDate:H,endDate:K})}return w}return(n.items??[]).map(w=>({id:w.id,title:w.title,status:w.status,priority:w.priority,startDate:w.startDate,endDate:w.endDate,barColor:w.barColor}))}),p=e.computed(()=>{if(!f.value.length)return n.startDate||i();const _=Math.min(...f.value.map(w=>r(w.startDate).getTime())),h=new Date(_);return h.setDate(h.getDate()-1),s(h)}),u=e.computed(()=>{if(!f.value.length)return l(n.startDate||i(),n.days-1);const _=Math.max(...f.value.map(w=>r(w.endDate).getTime())),h=new Date(_);return h.setDate(h.getDate()+1),s(h)}),B=e.computed(()=>n.startDate||p.value),C=e.computed(()=>n.startDate?n.days:Math.max(n.days,c(B.value,u.value)+1)),y=e.computed(()=>{const _=[];for(let h=0;h<C.value;h++)_.push(l(B.value,h));return _}),g=e.ref([]);e.watch(f,_=>{g.value=_.map(h=>({...h}))},{immediate:!0});const b=e.computed(()=>{const _=B.value,h=C.value;return g.value.map(w=>{const O=Math.max(0,c(_,w.startDate)),H=Math.max(O,c(_,w.endDate)),K=Math.max(1,H-O+1);return{row:w,offsetDays:Math.min(O,h-1),durationDays:K}})}),k=s(new Date);function T(_){return _===k}function S(_){const h=r(_);return`${String(h.getMonth()+1).padStart(2,"0")}/${String(h.getDate()).padStart(2,"0")}`}const I=e.computed(()=>{const _=c(B.value,k);return _<0||_>C.value-1?null:_*ue+ue/2});function W(_){const h=g.value.findIndex(F=>F.id===_.id);if(h===-1)return;const w=l(B.value,_.offsetDays),O=l(w,_.durationDays-1);g.value[h]={...g.value[h],startDate:w,endDate:O};const H=g.value[h].sourceRecordId;if(!H)return;a("record-change",{recordId:H,startDate:w,endDate:O});const K=m.value.map(F=>F.id!==H?F:{...F,fields:{...F.fields,[n.startFieldId]:w,[n.endFieldId]:O}});a("update:records",K)}return(_,h)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-timeline",style:e.normalizeStyle({"--day-width":`${ue}px`})},[e.createElementVNode("div",Ja,[h[0]||(h[0]=e.createElementVNode("div",{class:"gantt-timeline__header-label"},"任务",-1)),e.createElementVNode("div",{class:"gantt-timeline__header-dates",style:e.normalizeStyle({width:`${C.value*ue}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(y.value,w=>(e.openBlock(),e.createElementBlock("div",{key:w,class:e.normalizeClass(["gantt-timeline__header-cell",{"gantt-timeline__header-cell--today":T(w)}]),style:e.normalizeStyle({width:`${ue}px`})},e.toDisplayString(S(w)),7))),128)),I.value!==null?(e.openBlock(),e.createElementBlock("div",{key:0,class:"gantt-timeline__today-line",style:e.normalizeStyle({left:`${I.value}px`})},null,4)):e.createCommentVNode("",!0)],4)]),e.createElementVNode("div",el,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,w=>(e.openBlock(),e.createBlock(Pe,{key:w.row.id,item:w.row,"offset-days":w.offsetDays,"duration-days":w.durationDays,"day-width":ue,"total-days":C.value,onChange:W,onClick:O=>a("row-click",w.row)},null,8,["item","offset-days","duration-days","total-days","onClick"]))),128)),b.value.length===0?(e.openBlock(),e.createElementBlock("div",tl,"暂无任务数据")):e.createCommentVNode("",!0)])],4))}}),[["__scopeId","data-v-d0e74d5c"]]),nl=["rows"],ol={key:0,class:"content-block__placeholder"},Ue=x(e.defineComponent({__name:"ContentBlock",props:{content:{},editable:{type:Boolean,default:!1}},emits:["update:content"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref("");function c(){n.editable&&(s.value=n.content??"",r.value=!0)}function l(){r.value=!1,a("update:content",s.value)}const d=e.computed(()=>n.content?n.content.split(`
1
+ (function(E,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("lucide-vue-next"),require("vue-draggable-plus"),require("@vueup/vue-quill"),require("echarts"),require("marked")):typeof define=="function"&&define.amd?define(["exports","vue","lucide-vue-next","vue-draggable-plus","@vueup/vue-quill","echarts","marked"],e):(E=typeof globalThis<"u"?globalThis:E||self,e(E.OneflowUI={},E.Vue,E.LucideVueNext,E.VueDraggablePlus,E.VueQuill,E.echarts,E.marked))})(this,function(E,e,A,Re,So,No,Ie){"use strict";function _t(t){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const a=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(o,n,a.get?a:{enumerable:!0,get:()=>t[n]})}}return o.default=t,Object.freeze(o)}const Oe=_t(A),bt=_t(No),wo={class:"of-view-tab"},$o=["onClick"],xo={class:"of-view-tab__label"},Do=e.defineComponent({__name:"ViewTab",props:{modelValue:{},items:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n={"table-2":A.Table2Icon,kanban:A.KanbanIcon,"layout-grid":A.LayoutGridIcon,"gantt-chart":A.GanttChartIcon};function a(c){return n[c]}const r=o;function s(c){r("update:modelValue",c)}return(c,l)=>(e.openBlock(),e.createElementBlock("div",wo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,d=>(e.openBlock(),e.createElementBlock("button",{key:d.key,class:e.normalizeClass(["of-view-tab__item",{"of-view-tab__item--active":t.modelValue===d.key}]),onClick:i=>s(d.key)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a(d.icon)),{class:"of-view-tab__icon",size:14})),e.createElementVNode("span",xo,e.toDisplayString(d.label),1)],10,$o))),128))]))}}),D=(t,o)=>{const n=t.__vccOpts||t;for(const[a,r]of o)n[a]=r;return n},yt=D(Do,[["__scopeId","data-v-404dc0e5"]]),To={class:"of-toolbar-btn__label"},kt=D(e.defineComponent({__name:"ToolbarBtn",props:{icon:{},label:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o;function r(l){return l.split("-").map(d=>d.charAt(0).toUpperCase()+d.slice(1)).join("")+"Icon"}const s=e.computed(()=>{const l=r(n.icon);return Oe[l]});function c(l){a("click",l)}return(l,d)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["of-toolbar-btn",{"of-toolbar-btn--active":t.active}]),onClick:c},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),{class:"of-toolbar-btn__icon",size:13})),e.createElementVNode("span",To,e.toDisplayString(t.label),1)],2))}}),[["__scopeId","data-v-613d169c"]]),ht=D(e.defineComponent({__name:"AddViewBtn",emits:["click"],setup(t,{emit:o}){const n=o;function a(r){n("click",r)}return(r,s)=>(e.openBlock(),e.createElementBlock("button",{class:"of-add-view-btn",onClick:a},[e.createVNode(e.unref(A.PlusIcon),{class:"of-add-view-btn__icon",size:12}),s[0]||(s[0]=e.createElementVNode("span",{class:"of-add-view-btn__label"},"添加视图",-1))]))}}),[["__scopeId","data-v-03f9744d"]]),Et=D(e.defineComponent({__name:"Badge",props:{color:{},priority:{},size:{default:"md"}},setup(t){const o=t,n={default:{background:"var(--of-badge-gray-bg)",text:"var(--of-badge-gray-text)",border:"var(--of-badge-gray-border)"},blue:{background:"var(--of-badge-blue-bg)",text:"var(--of-badge-blue-text)",border:"var(--of-badge-blue-border)"},green:{background:"var(--of-badge-green-bg)",text:"var(--of-badge-green-text)",border:"var(--of-badge-green-border)"},orange:{background:"var(--of-badge-orange-bg)",text:"var(--of-badge-orange-text)",border:"var(--of-badge-orange-border)"},red:{background:"var(--of-badge-red-bg)",text:"var(--of-badge-red-text)",border:"var(--of-badge-red-border)"},purple:{background:"var(--of-badge-purple-bg)",text:"var(--of-badge-purple-text)",border:"var(--of-badge-purple-border)"},gray:{background:"var(--of-badge-gray-bg)",text:"var(--of-badge-gray-text)",border:"var(--of-badge-gray-border)"}},a={P0:"red",P1:"orange",P2:"blue",P3:"green"},r=e.computed(()=>o.priority?a[o.priority]:o.color?o.color in n?o.color:"default":"gray"),s=e.computed(()=>{const c=n[r.value];return{"--one-badge-bg":c.background,"--one-badge-color":c.text,"--one-badge-border":c.border}});return(c,l)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["one-badge",`one-badge--${t.size}`]),style:e.normalizeStyle(s.value)},[e.renderSlot(c.$slots,"default",{},void 0,!0)],6))}}),[["__scopeId","data-v-f06697e7"]]),Vo={class:"of-range-slider"},Mo={class:"of-range-slider__label"},Ao=["value","min","max","step"],Ro={key:0,class:"of-range-slider__description"},Bt=D(e.defineComponent({__name:"RangeSlider",props:{label:{},modelValue:{},min:{},max:{},step:{},description:{}},emits:["update:modelValue"],setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Vo,[e.createElementVNode("label",Mo,e.toDisplayString(t.label),1),e.createElementVNode("input",{value:t.modelValue,onInput:n[0]||(n[0]=a=>o.$emit("update:modelValue",Number(a.target.value))),type:"range",min:t.min,max:t.max,step:t.step??1,class:"of-range-slider__input"},null,40,Ao),t.description?(e.openBlock(),e.createElementBlock("p",Ro,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-7150e51c"]]),Io={class:"of-progress-bar"},Oo={key:0,class:"of-progress-bar__label"},zo={class:"of-progress-bar__slot"},Lo={class:"of-progress-bar__value"},Ct=D(e.defineComponent({__name:"ProgressBar",props:{value:{},height:{default:4},color:{},bgColor:{default:"var(--of-color-gray-100)"},showLabel:{type:Boolean,default:!1},borderRadius:{default:2}},setup(t){const o=t,n=e.computed(()=>Math.min(100,Math.max(0,o.value))),a=e.computed(()=>n.value===100?"var(--of-color-success)":o.color??"var(--of-color-primary-500)"),r=e.computed(()=>({height:`${o.height}px`,backgroundColor:o.bgColor,borderRadius:`${o.borderRadius}px`})),s=e.computed(()=>({width:`${n.value}%`,background:a.value,borderRadius:`${o.borderRadius}px`}));return(c,l)=>(e.openBlock(),e.createElementBlock("div",Io,[e.createElementVNode("div",{class:"of-progress-bar__track pb",style:e.normalizeStyle(r.value)},[e.createElementVNode("div",{class:e.normalizeClass(["of-progress-bar__fill pf",{dn:n.value===100}]),style:e.normalizeStyle(s.value)},null,6)],4),t.showLabel?(e.openBlock(),e.createElementBlock("div",Oo,[e.createElementVNode("div",zo,[e.renderSlot(c.$slots,"default",{},void 0,!0)]),e.createElementVNode("span",Lo,e.toDisplayString(n.value)+"%",1)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-6c595571"]]);function Fo(t){return t.split("-").map(o=>o.charAt(0).toUpperCase()+o.slice(1)).join("")+"Icon"}function ee(t){if(!t)return;if(typeof t!="string")return t;const o=Fo(t);return Oe[o]}const Po=["onClick"],Uo={key:0,class:"of-button-group__item-content"},vo={key:1},St=D(e.defineComponent({__name:"ButtonGroup",props:{options:{},modelValue:{}},emits:["update:modelValue"],setup(t){const o=t,n=e.computed(()=>{const a=o.options.length;return a<=2?"of-button-group--cols-2":a<=3?"of-button-group--cols-3":"of-button-group--cols-4"});return(a,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-button-group",n.value])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,s=>(e.openBlock(),e.createElementBlock("button",{key:s.value,onClick:c=>a.$emit("update:modelValue",s.value),class:e.normalizeClass(["of-button-group__item",t.modelValue===s.value?"of-button-group__item--active":""])},[s.icon?(e.openBlock(),e.createElementBlock("div",Uo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(s.icon)),{class:"of-button-group__item-icon"})),e.createElementVNode("span",null,e.toDisplayString(s.label),1)])):(e.openBlock(),e.createElementBlock("div",vo,e.toDisplayString(s.label),1))],10,Po))),128))],2))}}),[["__scopeId","data-v-57b85c27"]]),Ko={class:"of-empty-state"},Go={class:"of-empty-state__content"},Ho={key:0,class:"of-empty-state__icon"},qo={class:"of-empty-state__title"},Wo={key:1,class:"of-empty-state__description"},Nt=D(e.defineComponent({__name:"EmptyState",props:{icon:{},title:{},description:{},action:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Ko,[e.createElementVNode("div",Go,[t.icon?(e.openBlock(),e.createElementBlock("div",Ho,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(t.icon))))])):e.createCommentVNode("",!0),e.createElementVNode("h3",qo,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",Wo,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0),t.action?(e.openBlock(),e.createElementBlock("button",{key:2,onClick:n[0]||(n[0]=(...a)=>t.action.onClick&&t.action.onClick(...a)),class:"of-empty-state__action"},e.toDisplayString(t.action.label),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-943933a7"]]),Yo={class:"of-statistic-card"},Zo={class:"of-statistic-card__content"},jo={class:"of-statistic-card__value"},Xo={class:"of-statistic-card__label"},wt=D(e.defineComponent({__name:"StatisticCard",props:{icon:{},iconColor:{},value:{},label:{}},setup(t){const o=t,n={blue:{bg:"var(--of-color-blue-50)",text:"var(--of-color-blue-600)"},green:{bg:"var(--of-color-green-50)",text:"var(--of-color-green-600)"},orange:{bg:"var(--of-color-orange-50)",text:"var(--of-color-orange-600)"},red:{bg:"var(--of-color-red-50)",text:"var(--of-color-red-600)"},purple:{bg:"var(--of-color-purple-50)",text:"var(--of-color-purple-600)"}},a=e.computed(()=>{const r=o.iconColor||"blue";return n[r]||n.blue});return(r,s)=>(e.openBlock(),e.createElementBlock("div",Yo,[e.createElementVNode("div",{class:"of-statistic-card__icon-container",style:e.normalizeStyle({backgroundColor:a.value.bg})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(t.icon)),{class:"of-statistic-card__icon",style:e.normalizeStyle({color:a.value.text})},null,8,["style"]))],4),e.createElementVNode("div",Zo,[e.createElementVNode("p",jo,e.toDisplayString(t.value),1),e.createElementVNode("p",Xo,e.toDisplayString(t.label),1)])]))}}),[["__scopeId","data-v-d71c0c27"]]),Qo={class:"of-dropdown-menu"},Jo=["aria-expanded"],ea={key:0,class:"of-dropdown-menu__content",role:"menu"},ta=["onClick"],$t=D(e.defineComponent({__name:"DropdownMenu",props:{items:{}},setup(t){const o=e.ref(!1);function n(s){s.onClick(),o.value=!1}function a(){o.value=!o.value}function r(){o.value=!1}return(s,c)=>(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("button",{class:"of-dropdown-menu__trigger",onClick:a,"aria-haspopup":"true","aria-expanded":o.value,"aria-label":"更多操作"},[e.createVNode(e.unref(A.MoreHorizontal),{size:18})],8,Jo),e.createVNode(e.Transition,{name:"of-dropdown-fade"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-dropdown-menu__backdrop",onClick:r})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"of-dropdown-slide"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",ea,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(l,d)=>(e.openBlock(),e.createElementBlock("button",{key:d,onClick:i=>n(l),class:e.normalizeClass(["of-dropdown-menu__item",`of-dropdown-menu__item--${l.variant||"default"}`]),role:"menuitem"},[l.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(l.icon)),{key:0,class:"of-dropdown-menu__item-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(l.label),1)],10,ta))),128))])):e.createCommentVNode("",!0)]),_:1})]))}}),[["__scopeId","data-v-d0113d34"]]),na={class:"of-status-indicator"},oa={class:"of-status-indicator__label"},xt=D(e.defineComponent({__name:"StatusIndicator",props:{status:{},label:{default:void 0},size:{default:"md"}},setup(t){const o={in_progress:"var(--of-color-info)",executing:"var(--of-color-info)",analysing:"var(--of-color-info)",completed:"var(--of-color-success)",resolved:"var(--of-color-success)",closed:"var(--of-color-success)",reviewing:"var(--of-color-warning)",blocked:"var(--of-color-error)",cancelled:"var(--of-color-error)",open:"var(--of-color-gray-300)",idle:"var(--of-color-gray-400)",draft:"var(--of-color-gray-400)"},n={sm:"6px",md:"8px"},a=t,r=e.computed(()=>a.status.trim().toLowerCase()),s=e.computed(()=>a.label??a.status),c=e.computed(()=>o[r.value]??"var(--of-color-gray-300)"),l=e.computed(()=>n[a.size]);return(d,i)=>(e.openBlock(),e.createElementBlock("span",na,[e.createElementVNode("span",{class:"of-status-indicator__dot",style:e.normalizeStyle({width:l.value,height:l.value,backgroundColor:c.value})},null,4),e.renderSlot(d.$slots,"default",{status:t.status,label:s.value,color:c.value},()=>[e.createElementVNode("span",oa,e.toDisplayString(s.value),1)],!0)]))}}),[["__scopeId","data-v-4066cfea"]]),aa=["aria-checked","aria-label","disabled","onKeydown"],la={key:0,class:"of-switch__label"},Dt=D(e.defineComponent({__name:"Switch",props:{modelValue:{type:Boolean},disabled:{type:Boolean,default:!1},size:{default:"md"},label:{default:void 0}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>`of-switch--${n.size}`);function s(){if(n.disabled)return;const c=!n.modelValue;a("update:modelValue",c),a("change",c)}return(c,l)=>(e.openBlock(),e.createElementBlock("button",{type:"button",class:e.normalizeClass(["of-switch",[r.value,{"of-switch--checked":t.modelValue,"of-switch--disabled":t.disabled}]]),role:"switch","aria-checked":t.modelValue,"aria-label":t.label,disabled:t.disabled,onClick:s,onKeydown:e.withKeys(e.withModifiers(s,["prevent"]),["space"])},[l[0]||(l[0]=e.createElementVNode("span",{class:"of-switch__track"},[e.createElementVNode("span",{class:"of-switch__thumb"})],-1)),t.label?(e.openBlock(),e.createElementBlock("span",la,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],42,aa))}}),[["__scopeId","data-v-e642330a"]]),ra=["aria-current"],sa={key:1},ca={class:"of-stepper__content"},ia={class:"of-stepper__label"},da={key:0,class:"of-stepper__description"},Tt=D(e.defineComponent({__name:"Stepper",props:{steps:{},current:{},direction:{default:"horizontal"}},setup(t){const o=t,n=e.computed(()=>o.direction==="horizontal");function a(s){return s<o.current?"done":s===o.current?"active":"pending"}function r(s){return s<o.current?"done":"pending"}return(s,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-stepper",n.value?"of-stepper--horizontal":"of-stepper--vertical"])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(l,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`${l.label}-${d}`},[e.createElementVNode("div",{class:e.normalizeClass(["of-stepper__step",`of-stepper__step--${a(d)}`,n.value?"of-stepper__step--horizontal":"of-stepper__step--vertical"])},[e.createElementVNode("div",{class:e.normalizeClass(["of-stepper__indicator",`of-stepper__indicator--${a(d)}`]),"aria-current":a(d)==="active"?"step":void 0},[a(d)==="done"?(e.openBlock(),e.createBlock(e.unref(A.Check),{key:0,size:14,"stroke-width":3})):(e.openBlock(),e.createElementBlock("span",sa,e.toDisplayString(d+1),1))],10,ra),e.createElementVNode("div",ca,[e.renderSlot(s.$slots,"step-content",{item:l,index:d,status:a(d)},()=>[e.createElementVNode("p",ia,e.toDisplayString(l.label),1),l.description?(e.openBlock(),e.createElementBlock("p",da,e.toDisplayString(l.description),1)):e.createCommentVNode("",!0)],!0)])],2),d<t.steps.length-1?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["of-stepper__line",`of-stepper__line--${r(d)}`,n.value?"of-stepper__line--horizontal":"of-stepper__line--vertical"])},null,2)):e.createCommentVNode("",!0)],64))),128))],2))}}),[["__scopeId","data-v-b5d87bb4"]]),ma={class:"of-accordion"},fa=["disabled","aria-expanded","aria-controls","onClick"],ua={class:"of-accordion__trigger-text"},pa={class:"of-accordion__title"},ga={key:0,class:"of-accordion__subtitle"},_a={class:"of-accordion__icon","aria-hidden":"true"},ba=["id"],Vt=D(e.defineComponent({__name:"Accordion",props:{items:{},modelValue:{default:void 0},multiple:{type:Boolean,default:!1},lazy:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>Array.isArray(n.modelValue)?n.modelValue:typeof n.modelValue=="string"&&n.modelValue.length>0?[n.modelValue]:[]);function s(l){return r.value.includes(l)}function c(l){if(l.disabled)return;const d=s(l.key);if(n.multiple){a("update:modelValue",d?r.value.filter(i=>i!==l.key):[...r.value,l.key]);return}a("update:modelValue",d?"":l.key)}return(l,d)=>(e.openBlock(),e.createElementBlock("div",ma,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,i=>(e.openBlock(),e.createElementBlock("section",{key:i.key,class:e.normalizeClass(["of-accordion__item",{"of-accordion__item--open":s(i.key),"of-accordion__item--disabled":i.disabled}])},[e.createElementVNode("button",{type:"button",class:"of-accordion__trigger",disabled:i.disabled,"aria-expanded":s(i.key),"aria-controls":`of-accordion-panel-${i.key}`,onClick:m=>c(i)},[e.renderSlot(l.$slots,"trigger",{item:i,open:s(i.key)},()=>[e.createElementVNode("span",ua,[e.createElementVNode("span",pa,e.toDisplayString(i.title),1),i.subtitle?(e.openBlock(),e.createElementBlock("span",ga,e.toDisplayString(i.subtitle),1)):e.createCommentVNode("",!0)])],!0),e.createElementVNode("span",_a,e.toDisplayString(s(i.key)?"▲":"▼"),1)],8,fa),!t.lazy||s(i.key)?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,id:`of-accordion-panel-${i.key}`,class:"of-accordion__panel"},[e.renderSlot(l.$slots,"default",{item:i},void 0,!0)],8,ba)),[[e.vShow,t.lazy?!0:s(i.key)]]):e.createCommentVNode("",!0)],2))),128))]))}}),[["__scopeId","data-v-19e13c19"]]),Mt=D(e.defineComponent({name:"Avatar",__name:"Avatar",props:{name:{},size:{default:28},color:{},bg:{},role:{}},setup(t){const o=t,n={BE:{color:"var(--of-role-be-text, #4F46E5)",bg:"var(--of-role-be-bg, #EEF2FF)"},FE:{color:"var(--of-role-fe-text, #059669)",bg:"var(--of-role-fe-bg, #ECFDF5)"},PM:{color:"var(--of-role-pm-text, #db2777)",bg:"var(--of-role-pm-bg, #fce7f3)"},DBA:{color:"var(--of-role-dba-text, #c2410c)",bg:"var(--of-role-dba-bg, #fff7ed)"},ARCH:{color:"var(--of-role-arch-text, #7C3AED)",bg:"var(--of-role-arch-bg, #F5F3FF)"},OPM:{color:"var(--of-role-pm-text, #db2777)",bg:"var(--of-role-pm-bg, #fce7f3)"}},a=[{color:"var(--of-role-be-text, #4F46E5)",bg:"var(--of-role-be-bg, #EEF2FF)"},{color:"var(--of-role-fe-text, #059669)",bg:"var(--of-role-fe-bg, #ECFDF5)"},{color:"var(--of-role-pm-text, #db2777)",bg:"var(--of-role-pm-bg, #fce7f3)"},{color:"var(--of-role-dba-text, #c2410c)",bg:"var(--of-role-dba-bg, #fff7ed)"},{color:"var(--of-role-arch-text, #7C3AED)",bg:"var(--of-role-arch-bg, #F5F3FF)"},{color:"var(--of-role-pm-text, #db2777)",bg:"var(--of-role-pm-bg, #fce7f3)"}];function r(d){let i=0;for(let m=0;m<d.length;m++)i=(i<<5)-i+d.charCodeAt(m),i|=0;return Math.abs(i)}const s=e.computed(()=>{var m;if(o.color&&o.bg)return{color:o.color,bg:o.bg};const d=(m=o.role)==null?void 0:m.toUpperCase();if(d&&n[d])return{color:o.color||n[d].color,bg:o.bg||n[d].bg};const i=r(o.name)%a.length;return{color:o.color||a[i].color,bg:o.bg||a[i].bg}}),c=e.computed(()=>{if(o.role)return o.role.slice(0,2).toUpperCase();const d=o.name.trim();return d?/[\u4e00-\u9fff]/.test(d.charAt(0))?d.charAt(0):d.replace(/[^a-zA-Z]/g,"").slice(0,2).toUpperCase():""}),l=e.computed(()=>{const d=o.size,i=Math.round(d*.36);return{"--one-avatar-size":`${d}px`,"--one-avatar-bg":s.value.bg,"--one-avatar-color":s.value.color,"--one-avatar-font-size":`${i}px`}});return(d,i)=>(e.openBlock(),e.createElementBlock("span",{class:"one-avatar",style:e.normalizeStyle(l.value)},e.toDisplayString(c.value),5))}}),[["__scopeId","data-v-92f8e311"]]),ya={class:"one-desc-block"},At=D(e.defineComponent({name:"DescBlock",__name:"DescBlock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",ya,[e.renderSlot(o.$slots,"default",{},void 0,!0)]))}}),[["__scopeId","data-v-aef4d04c"]]),ka={class:"one-view-mode-group"},ha=["title","onClick"],Rt=D(e.defineComponent({name:"ViewModeGroup",__name:"ViewModeGroup",props:{options:{default:void 0},modelValue:{}},emits:["update:modelValue"],setup(t){const o=[{value:"side",icon:"panel-right",label:"侧边面板"},{value:"modal",icon:"maximize-2",label:"弹窗"},{value:"fullscreen",icon:"maximize",label:"全屏"}],n=t,a=e.computed(()=>n.options??o);return(r,s)=>(e.openBlock(),e.createElementBlock("div",ka,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,c=>(e.openBlock(),e.createElementBlock("button",{key:c.value,class:e.normalizeClass(["one-view-mode-group__btn",{"one-view-mode-group__btn--active":t.modelValue===c.value}]),title:c.label,onClick:l=>r.$emit("update:modelValue",c.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(c.icon)),{class:"one-view-mode-group__icon"}))],10,ha))),128))]))}}),[["__scopeId","data-v-bff9f21a"]]),Ea={class:"one-view-switcher"},Ba={class:"one-view-switcher__tabs"},Ca=["onClick"],Sa={key:3,class:"one-view-switcher__search"},Na=["placeholder"],It=D(e.defineComponent({__name:"ViewSwitcher",props:{tabs:{default:void 0},modelValue:{default:"table"},showFilter:{type:Boolean,default:!0},showGroup:{type:Boolean,default:!0},showSort:{type:Boolean,default:!0},showSearch:{type:Boolean,default:!0},filterLabel:{default:"筛选"},groupLabel:{default:"分组"},sortLabel:{default:"排序"},searchPlaceholder:{default:"搜索..."}},emits:["update:modelValue","filter","group","sort","search"],setup(t){const o=[{value:"table",label:"表格",icon:"table-2"},{value:"kanban",label:"看板",icon:"columns-3"},{value:"timeline",label:"时间线",icon:"calendar"}],n=t,a=e.computed(()=>n.tabs??o);return(r,s)=>(e.openBlock(),e.createElementBlock("div",Ea,[e.createElementVNode("div",Ba,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,c=>(e.openBlock(),e.createElementBlock("button",{key:c.value,class:e.normalizeClass(["one-view-switcher__tab",{"one-view-switcher__tab--active":t.modelValue===c.value}]),onClick:l=>r.$emit("update:modelValue",c.value)},[c.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(c.icon)),{key:0,class:"one-view-switcher__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(c.label),1)],10,Ca))),128))]),s[4]||(s[4]=e.createElementVNode("div",{class:"one-view-switcher__sep"},null,-1)),t.showFilter?(e.openBlock(),e.createElementBlock("button",{key:0,class:"one-view-switcher__tool-btn",onClick:s[0]||(s[0]=c=>r.$emit("filter"))},e.toDisplayString(t.filterLabel),1)):e.createCommentVNode("",!0),t.showGroup?(e.openBlock(),e.createElementBlock("button",{key:1,class:"one-view-switcher__tool-btn",onClick:s[1]||(s[1]=c=>r.$emit("group"))},e.toDisplayString(t.groupLabel),1)):e.createCommentVNode("",!0),t.showSort?(e.openBlock(),e.createElementBlock("button",{key:2,class:"one-view-switcher__tool-btn",onClick:s[2]||(s[2]=c=>r.$emit("sort"))},e.toDisplayString(t.sortLabel),1)):e.createCommentVNode("",!0),s[5]||(s[5]=e.createElementVNode("div",{class:"one-view-switcher__spacer"},null,-1)),t.showSearch?(e.openBlock(),e.createElementBlock("div",Sa,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)("search")),{class:"one-view-switcher__search-icon"})),e.createElementVNode("input",{class:"one-view-switcher__search-input",placeholder:t.searchPlaceholder,onInput:s[3]||(s[3]=c=>r.$emit("search",c.target.value))},null,40,Na)])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default",{},void 0,!0)]))}}),[["__scopeId","data-v-48712aee"]]),wa={class:"one-ref-tag__text"},Ot=D(e.defineComponent({name:"RefTag",__name:"RefTag",props:{type:{default:"spec"},icon:{},color:{},bg:{},href:{}},setup(t){const o={spec:{icon:"file-text",color:"var(--of-color-primary-700)",bg:"var(--of-color-primary-50)"},wiki:{icon:"book-open",color:"var(--of-color-green-600)",bg:"var(--of-color-green-50)"},task:{icon:"link",color:"var(--of-color-orange-600)",bg:"var(--of-color-orange-50)"}},n=t,a=e.computed(()=>o[n.type??""]??o.spec),r=e.computed(()=>{const c=n.icon??a.value.icon;return ee(c)}),s=e.computed(()=>({"--one-ref-tag-color":n.color??a.value.color,"--one-ref-tag-bg":n.bg??a.value.bg}));return(c,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"span"),{class:"one-ref-tag",style:e.normalizeStyle(s.value),href:t.href??void 0,target:t.href?"_blank":void 0,rel:t.href?"noopener noreferrer":void 0},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{key:0,class:"one-ref-tag__icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",wa,[e.renderSlot(c.$slots,"default",{},void 0,!0)])]),_:3},8,["style","href","target","rel"]))}}),[["__scopeId","data-v-84d9f479"]]),$a={class:"one-select-badge__text"},zt=D(e.defineComponent({__name:"SelectBadge",props:{color:{},dot:{type:Boolean,default:!1},dotColor:{},textColor:{},bgColor:{},borderColor:{},clickable:{type:Boolean,default:!0}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r={red:{text:"var(--of-badge-red-text)",bg:"var(--of-badge-red-bg)",border:"var(--of-badge-red-border)"},orange:{text:"var(--of-badge-orange-text)",bg:"var(--of-badge-orange-bg)",border:"var(--of-badge-orange-border)"},green:{text:"var(--of-badge-green-text)",bg:"var(--of-badge-green-bg)",border:"var(--of-badge-green-border)"},blue:{text:"var(--of-badge-blue-text)",bg:"var(--of-badge-blue-bg)",border:"var(--of-badge-blue-border)"},purple:{text:"var(--of-badge-purple-text)",bg:"var(--of-badge-purple-bg)",border:"var(--of-badge-purple-border)"},gray:{text:"var(--of-badge-gray-text)",bg:"var(--of-badge-gray-bg)",border:"var(--of-badge-gray-border)"}},s=e.computed(()=>n.textColor?n.textColor:n.color&&r[n.color]?r[n.color].text:r.gray.text),c=e.computed(()=>n.bgColor?n.bgColor:n.color&&r[n.color]?r[n.color].bg:r.gray.bg),l=e.computed(()=>n.borderColor?n.borderColor:n.color&&r[n.color]?r[n.color].border:r.gray.border),d=e.computed(()=>({"--one-sb-text":s.value,"--one-sb-bg":c.value,"--one-sb-border":l.value})),i=e.computed(()=>({backgroundColor:n.dotColor||s.value})),m=ee("chevron-down");function f(p){a("click",p)}return(p,u)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["one-select-badge",{"one-select-badge--clickable":t.clickable}]),style:e.normalizeStyle(d.value),onClick:f},[t.dot?(e.openBlock(),e.createElementBlock("span",{key:0,class:"one-select-badge__dot",style:e.normalizeStyle(i.value)},null,4)):e.createCommentVNode("",!0),e.createElementVNode("span",$a,[e.renderSlot(p.$slots,"default",{},void 0,!0)]),t.clickable&&e.unref(m)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),{key:1,class:"one-select-badge__arrow"})):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-4568faa4"]]),xa={class:"one-chain-item__header"},Da={key:0,class:"one-chain-item__duration"},Lt=D(e.defineComponent({__name:"ChainItem",props:{type:{default:"source"},title:{},description:{},avatar:{},duration:{},color:{},bg:{},borderColor:{}},setup(t){const o=t,n={source:{color:"var(--of-badge-purple-text, #7C3AED)",bg:"var(--of-badge-purple-bg, #F9F0FF)",border:"var(--of-badge-purple-border, #E9D5FF)",avatarBg:"var(--of-badge-purple-border, #E9D5FF)",descColor:"var(--of-badge-purple-text, #6B21A8)",defaultAvatar:"A"},result:{color:"var(--of-color-success, #22C55E)",bg:"var(--of-color-success-light, #F6FFED)",border:"var(--of-color-success-border, #B7EB8F)",avatarBg:"var(--of-color-success-border, #B7EB8F)",descColor:"var(--of-color-success-dark, #165E26)",defaultAvatar:"✓"}},a=e.computed(()=>n[o.type||"source"]),r=e.computed(()=>o.color||a.value.color),s=e.computed(()=>o.bg||a.value.bg),c=e.computed(()=>o.borderColor||a.value.border),l=e.computed(()=>a.value.descColor),d=e.computed(()=>o.avatar||a.value.defaultAvatar),i=e.computed(()=>({background:s.value,borderColor:c.value})),m=e.computed(()=>({backgroundColor:a.value.avatarBg,color:r.value}));return(f,p)=>(e.openBlock(),e.createElementBlock("div",{class:"one-chain-item",style:e.normalizeStyle(i.value)},[e.createElementVNode("div",xa,[e.createElementVNode("span",{class:"one-chain-item__avatar",style:e.normalizeStyle(m.value)},e.toDisplayString(d.value),5),e.createElementVNode("span",{class:"one-chain-item__title",style:e.normalizeStyle({color:r.value})},e.toDisplayString(t.title),5),t.duration?(e.openBlock(),e.createElementBlock("span",Da,e.toDisplayString(t.duration),1)):e.createCommentVNode("",!0)]),t.description?(e.openBlock(),e.createElementBlock("div",{key:0,class:"one-chain-item__desc",style:e.normalizeStyle({color:l.value})},e.toDisplayString(t.description),5)):e.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-004352ed"]]),Ta={class:"of-section-block__header-left"},Va={key:0,class:"of-section-block__icon","aria-hidden":"true"},Ma={class:"of-section-block__title"},Aa=["aria-expanded","aria-label"],Ra={class:"of-section-block__body"},Ft=D(e.defineComponent({name:"SectionBlock",__name:"SectionBlock",props:{title:{},icon:{default:void 0},status:{default:void 0},collapsed:{type:Boolean,default:!1},editable:{type:Boolean,default:!1},statusLabels:{default:void 0}},emits:["update:collapsed","edit","save"],setup(t,{emit:o}){const n=t,a=o,r={pending:{background:"var(--of-color-gray-100)",text:"var(--of-color-gray-400)"},updating:{background:"var(--of-color-primary-50)",text:"var(--of-color-primary-500)"},done:{background:"var(--of-color-success-light)",text:"var(--of-badge-green-text)"},editing:{background:"var(--of-color-primary-50)",text:"var(--of-color-primary-500)"}},s={pending:"待处理",updating:"更新中",done:"已完成",editing:"编辑中"},c=e.computed(()=>n.status?r[n.status]??null:null),l=e.computed(()=>{var B;return n.status?((B=n.statusLabels)==null?void 0:B[n.status])??s[n.status]??n.status:null}),d=e.computed(()=>c.value?{backgroundColor:c.value.background,color:c.value.text}:{}),i=e.computed(()=>n.status==="editing"?{borderColor:"var(--of-color-primary-500)",boxShadow:"0 0 0 3px color-mix(in srgb, var(--of-color-primary-500) 8%, transparent)"}:n.status==="done"?{borderColor:"var(--of-color-success-light)"}:{}),m=e.computed(()=>n.status==="editing"),f=e.computed(()=>n.editable&&n.status==="done");function p(){a("update:collapsed",!n.collapsed)}function u(){a("edit")}function y(){a("save")}return(B,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-section-block",{"of-section-block--collapsed":t.collapsed,"of-section-block--editing":m.value,"of-section-block--done":t.status==="done"}]),style:e.normalizeStyle(i.value)},[e.createElementVNode("div",{class:"of-section-block__header",onClick:p},[e.createElementVNode("div",Ta,[t.icon?(e.openBlock(),e.createElementBlock("span",Va,e.toDisplayString(t.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Ma,e.toDisplayString(t.title),1),t.status?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-section-block__status-badge",style:e.normalizeStyle(d.value)},e.toDisplayString(l.value),5)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"of-section-block__header-right",onClick:h[0]||(h[0]=e.withModifiers(()=>{},["stop"]))},[e.renderSlot(B.$slots,"header-extra",{},void 0,!0),m.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"of-section-block__action-btn of-section-block__action-btn--save",onClick:y}," 保存 ")):f.value?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"of-section-block__action-btn",onClick:u}," 编辑 ")):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"of-section-block__collapse-btn","aria-expanded":!t.collapsed,"aria-label":t.collapsed?"展开":"折叠",onClick:p},[e.createElementVNode("span",{class:e.normalizeClass(["of-section-block__collapse-icon",{"of-section-block__collapse-icon--collapsed":t.collapsed}]),"aria-hidden":"true"},"▾",2)],8,Aa)])]),e.createElementVNode("div",{class:e.normalizeClass(["of-section-block__body-wrapper",{"of-section-block__body-wrapper--collapsed":t.collapsed}])},[e.createElementVNode("div",Ra,[m.value?e.renderSlot(B.$slots,"editor",{key:0},void 0,!0):e.renderSlot(B.$slots,"default",{key:1},void 0,!0)])],2)],6))}}),[["__scopeId","data-v-4340b240"]]),Ia={key:0,class:"of-status-summary__sep","aria-hidden":"true"},Oa={class:"of-status-summary__item"},za={key:0,class:"of-status-summary__extra"},Pt=D(e.defineComponent({name:"StatusSummary",__name:"StatusSummary",props:{items:{},size:{default:"md"},separator:{type:Boolean,default:!1}},setup(t){const o=t,n=e.computed(()=>o.size==="sm"?"6px":"7px"),a=e.computed(()=>o.size==="sm"?"10px":"11px");function r(c){return c.color??"var(--of-color-gray-300)"}function s(c){return c.highlight?r(c):"var(--of-color-text-primary)"}return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-status-summary",`of-status-summary--${t.size}`])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(d,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d.key},[t.separator&&i>0?(e.openBlock(),e.createElementBlock("span",Ia)):e.createCommentVNode("",!0),e.createElementVNode("span",Oa,[e.createElementVNode("span",{class:"of-status-summary__dot",style:e.normalizeStyle({width:n.value,height:n.value,backgroundColor:r(d)})},null,4),e.createElementVNode("span",{class:"of-status-summary__label",style:e.normalizeStyle({fontSize:a.value})},e.toDisplayString(d.label),5),e.createElementVNode("span",{class:"of-status-summary__count",style:e.normalizeStyle({fontSize:a.value,color:s(d),fontWeight:d.highlight?"700":"600"})},e.toDisplayString(d.count),5)])],64))),128)),c.$slots.extra?(e.openBlock(),e.createElementBlock("span",za,[e.renderSlot(c.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-4d752b7b"]]),La={key:0,class:"of-info-card__icon-area"},Fa={class:"of-info-card__body"},Pa={class:"of-info-card__title"},Ua={class:"of-info-card__footer"},va={key:1,class:"of-info-card__meta-text"},Ka={key:2,class:"of-info-card__meta-text"},Ga={class:"of-info-card__body"},Ha={class:"of-info-card__title"},qa={key:1,class:"of-info-card__notify-meta"},Wa={key:0,class:"of-info-card__actions"},Ya={key:0,class:"of-info-card__icon-area"},Za={class:"of-info-card__body"},ja={class:"of-info-card__title"},Xa={key:0,class:"of-info-card__subtitle"},Qa={key:1,class:"of-info-card__actions"},Ut=D(e.defineComponent({name:"InfoCard",__name:"InfoCard",props:{variant:{default:"memo"},title:{},content:{},contentLines:{default:3},borderColor:{},tags:{},importance:{default:"normal"},author:{},date:{},unread:{type:Boolean,default:!1},meta:{},subtitle:{},type:{},typeColor:{}},emits:["click"],setup(t,{emit:o}){e.useCssVars(m=>({v577e4ada:m.unread?"var(--of-color-warning-light, #fffbe6)":"var(--of-color-bg-primary, #fff)"}));const n=t,a=o,r={模板:"var(--of-color-primary-500)",template:"var(--of-color-primary-500)",会话:"var(--of-color-success)",session:"var(--of-color-success)"},s=e.computed(()=>n.variant==="memo"?n.importance==="high"?"var(--of-color-error)":n.borderColor??"var(--of-color-info)":n.variant==="history"?n.typeColor?n.typeColor:n.type&&r[n.type]?r[n.type]:n.borderColor??"var(--of-color-primary-500)":"transparent"),c=e.computed(()=>{const m={"--of-ic-border":s.value};return n.variant==="notify"&&(m["--of-ic-unread-dot"]=n.unread?"var(--of-color-info)":"var(--of-color-text-tertiary)"),m}),l=e.computed(()=>({"--of-ic-clamp":String(n.contentLines??3)}));function d(m){const f=[{bg:"var(--of-badge-blue-bg)",color:"var(--of-badge-blue-text)",border:"var(--of-badge-blue-border)"},{bg:"var(--of-badge-green-bg)",color:"var(--of-badge-green-text)",border:"var(--of-badge-green-border)"},{bg:"var(--of-badge-orange-bg)",color:"var(--of-badge-orange-text)",border:"var(--of-badge-orange-border)"},{bg:"var(--of-badge-purple-bg)",color:"var(--of-badge-purple-text)",border:"var(--of-badge-purple-border)"},{bg:"var(--of-badge-gray-bg)",color:"var(--of-badge-gray-text)",border:"var(--of-badge-gray-border)"}],p=f[m%f.length];return{"--of-ic-tag-bg":p.bg,"--of-ic-tag-color":p.color,"--of-ic-tag-border":p.border}}function i(m){a("click",m)}return(m,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-info-card",`of-info-card--${t.variant}`]),style:e.normalizeStyle(c.value),onClick:i},[t.variant==="memo"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[m.$slots.icon?(e.openBlock(),e.createElementBlock("div",La,[e.renderSlot(m.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Fa,[e.createElementVNode("div",Pa,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-info-card__content of-info-card__content--clamp",style:e.normalizeStyle(l.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),e.createElementVNode("div",Ua,[t.tags&&t.tags.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.tags,(p,u)=>(e.openBlock(),e.createElementBlock("span",{key:p,class:"of-info-card__tag",style:e.normalizeStyle(d(u))},e.toDisplayString(p),5))),128)):e.createCommentVNode("",!0),t.author?(e.openBlock(),e.createElementBlock("span",va,e.toDisplayString(t.author),1)):e.createCommentVNode("",!0),t.date?(e.openBlock(),e.createElementBlock("span",Ka,e.toDisplayString(t.date),1)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"footer",{},void 0,!0)])])],64)):t.variant==="notify"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[f[0]||(f[0]=e.createElementVNode("span",{class:"of-info-card__dot"},null,-1)),e.createElementVNode("div",Ga,[e.createElementVNode("div",Ha,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-info-card__content of-info-card__content--clamp",style:e.normalizeStyle(l.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),t.meta?(e.openBlock(),e.createElementBlock("div",qa,e.toDisplayString(t.meta),1)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"footer",{},void 0,!0)]),m.$slots.actions?(e.openBlock(),e.createElementBlock("div",Wa,[e.renderSlot(m.$slots,"actions",{},void 0,!0)])):e.createCommentVNode("",!0)],64)):t.variant==="history"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[m.$slots.icon?(e.openBlock(),e.createElementBlock("div",Ya,[e.renderSlot(m.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Za,[e.createElementVNode("div",ja,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("div",Xa,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0),t.content?(e.openBlock(),e.createElementBlock("div",{key:1,class:"of-info-card__content of-info-card__content--clamp",style:e.normalizeStyle(l.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"footer",{},void 0,!0)]),m.$slots.actions?(e.openBlock(),e.createElementBlock("div",Qa,[e.renderSlot(m.$slots,"actions",{},void 0,!0)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-2e387295"]]),Ja={key:0,class:"of-monitor-item__subtitle"},el={class:"of-monitor-item__label"},tl={class:"of-monitor-item__progress"},nl={class:"of-monitor-item__percentage"},ol={key:1,class:"of-monitor-item__count"},vt=D(e.defineComponent({name:"MonitorItem",__name:"MonitorItem",props:{label:{},subtitle:{default:void 0},value:{},count:{default:void 0},color:{default:void 0},clickable:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>Math.min(100,Math.max(0,n.value))),s=e.computed(()=>r.value===100?"var(--of-color-success)":n.color??"var(--of-color-primary-500)"),c=e.computed(()=>({backgroundColor:"var(--of-color-gray-100)"})),l=e.computed(()=>({width:`${r.value}%`,background:s.value}));function d(){n.clickable&&a("click")}return(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-monitor-item",{"of-monitor-item--clickable":t.clickable}]),onClick:d},[t.subtitle!==void 0?(e.openBlock(),e.createElementBlock("div",Ja,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0),e.createElementVNode("div",el,e.toDisplayString(t.label),1),e.createElementVNode("div",tl,[e.createElementVNode("div",{class:"of-monitor-item__track",style:e.normalizeStyle(c.value)},[e.createElementVNode("div",{class:"of-monitor-item__fill",style:e.normalizeStyle(l.value)},null,4)],4)]),e.createElementVNode("div",nl,e.toDisplayString(r.value)+"% ",1),t.count!==void 0?(e.openBlock(),e.createElementBlock("div",ol,e.toDisplayString(t.count),1)):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-6c77021b"]]),al={class:"of-persona-card__body"},ll={class:"of-persona-card__name-row"},rl={key:0,class:"of-persona-card__title-badge"},sl={key:1,class:"of-persona-card__tags"},cl={class:"of-persona-card__right"},il={key:0,class:"of-persona-card__done-mark"},dl={class:"of-persona-card__chevron"},ml={key:0,class:"of-persona-card__detail"},Kt=D(e.defineComponent({name:"PersonaCard",__name:"PersonaCard",props:{name:{},title:{},icon:{},color:{},subtitle:{},tags:{},expanded:{type:Boolean,default:!1},active:{type:Boolean,default:!1},done:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},size:{default:"md"}},emits:["update:expanded","click"],setup(t,{emit:o}){const n=t,a=o,r=["#f59e0b","#6366f1","#ec4899","#10b981","#3b82f6","#8b5cf6","#ef4444","#14b8a6"];function s(h){let b=0;for(let C=0;C<h.length;C++)b=(b<<5)-b+h.charCodeAt(C),b|=0;return Math.abs(b)}const c=e.computed(()=>n.color?n.color:r[s(n.name)%r.length]),l=e.computed(()=>n.size==="sm"?24:32),d=e.computed(()=>n.size==="sm"?12:16),i=e.computed(()=>n.size==="sm"?12:13),m=e.computed(()=>n.size==="sm"?11:12),f=e.computed(()=>{if(n.icon)return n.icon;const h=n.name.trim();return h?h.charAt(0):"?"}),p=e.computed(()=>["of-persona-card",`of-persona-card--${n.size}`,{"of-persona-card--active":n.active,"of-persona-card--done":n.done,"of-persona-card--disabled":n.disabled,"of-persona-card--expanded":n.expanded}]),u=e.computed(()=>({"--pc-accent":c.value,"--pc-accent-bg":c.value+"22","--pc-accent-border":c.value+"55","--pc-accent-tag-bg":c.value+"15"})),y=e.computed(()=>({width:`${l.value}px`,height:`${l.value}px`,fontSize:`${d.value}px`}));function B(){n.disabled||(a("update:expanded",!n.expanded),a("click"))}return(h,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value),style:e.normalizeStyle(u.value)},[e.createElementVNode("div",{class:"of-persona-card__header",onClick:B},[e.createElementVNode("span",{class:"of-persona-card__avatar",style:e.normalizeStyle(y.value)},e.toDisplayString(f.value),5),e.createElementVNode("div",al,[e.createElementVNode("div",ll,[e.createElementVNode("span",{class:"of-persona-card__name",style:e.normalizeStyle({fontSize:`${i.value}px`})},e.toDisplayString(t.name),5),e.renderSlot(h.$slots,"badge",{},void 0,!0),t.title?(e.openBlock(),e.createElementBlock("span",rl,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0)]),t.subtitle?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-persona-card__subtitle",style:e.normalizeStyle({fontSize:`${m.value}px`})},e.toDisplayString(t.subtitle),5)):e.createCommentVNode("",!0),t.tags&&t.tags.length>0?(e.openBlock(),e.createElementBlock("div",sl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tags,C=>(e.openBlock(),e.createElementBlock("span",{key:C,class:"of-persona-card__tag"},e.toDisplayString(C),1))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",cl,[e.renderSlot(h.$slots,"actions",{},void 0,!0),t.done?(e.openBlock(),e.createElementBlock("span",il,"✓")):e.createCommentVNode("",!0),e.createElementVNode("span",dl,e.toDisplayString(t.expanded?"▲":"▼"),1)])]),t.expanded?(e.openBlock(),e.createElementBlock("div",ml,[e.renderSlot(h.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-3416d5b4"]]),fl={class:"of-app-layout"},ul={class:"of-app-layout__navbar"},pl={class:"of-app-layout__body"},gl={class:"of-app-layout__sidebar"},_l={class:"of-app-layout__main"},bl={class:"of-app-layout__statusbar"},Gt=D(e.defineComponent({__name:"AppLayout",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",fl,[e.createElementVNode("header",ul,[e.renderSlot(o.$slots,"navbar",{},void 0,!0)]),e.createElementVNode("div",pl,[e.createElementVNode("aside",gl,[e.renderSlot(o.$slots,"sidebar",{},void 0,!0)]),e.createElementVNode("main",_l,[e.renderSlot(o.$slots,"default",{},void 0,!0)])]),e.createElementVNode("footer",bl,[e.renderSlot(o.$slots,"statusbar",{},void 0,!0)])]))}}),[["__scopeId","data-v-4280504b"]]),yl={class:"of-navbar"},kl={class:"of-navbar__left"},hl={class:"of-navbar__center"},El={class:"of-navbar__search"},Bl=["placeholder"],Cl={class:"of-navbar__right"},Sl={key:0,class:"of-navbar__notify-badge"},Ht=D(e.defineComponent({__name:"Navbar",props:{username:{default:"U"},searchPlaceholder:{default:"⌘K 搜索..."},notifyCount:{default:0}},emits:["search","notify-click","avatar-click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.username?n.username.charAt(0).toUpperCase():"U");function s(d){a("search",d.target.value)}function c(){a("notify-click")}function l(){a("avatar-click")}return(d,i)=>(e.openBlock(),e.createElementBlock("nav",yl,[e.createElementVNode("div",kl,[e.renderSlot(d.$slots,"logo",{},()=>[i[0]||(i[0]=e.createElementVNode("span",{class:"of-navbar__logo-default"},"OneFlow",-1))],!0)]),e.createElementVNode("div",hl,[e.createElementVNode("div",El,[e.createVNode(e.unref(A.SearchIcon),{class:"of-navbar__search-icon",size:14}),e.createElementVNode("input",{class:"of-navbar__search-input",type:"text",placeholder:t.searchPlaceholder,onInput:s},null,40,Bl)])]),e.createElementVNode("div",Cl,[e.createElementVNode("button",{class:"of-navbar__notify-btn",onClick:c},[e.createVNode(e.unref(A.BellIcon),{class:"of-navbar__notify-icon",size:16}),t.notifyCount&&t.notifyCount>0?(e.openBlock(),e.createElementBlock("span",Sl,e.toDisplayString(t.notifyCount>99?"99+":t.notifyCount),1)):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"of-navbar__avatar",onClick:l},e.toDisplayString(r.value),1)])]))}}),[["__scopeId","data-v-6508e645"]]),Nl={class:"of-sidebar"},wl={key:0,class:"of-sidebar__header"},$l={class:"of-sidebar__nav"},xl=["onClick"],Dl={class:"of-sidebar__item-label"},Tl={key:1,class:"of-sidebar__item-badge"},Vl={key:0,class:"of-sidebar__children"},Ml=["onClick"],Al={class:"of-sidebar__item-label"},Rl={key:1,class:"of-sidebar__item-badge"},Il={key:1,class:"of-sidebar__footer"},qt=D(e.defineComponent({__name:"Sidebar",props:{items:{}},emits:["item-click"],setup(t,{emit:o}){const n=o,a=e.ref(new Set);function r(i){return i.split("-").map(m=>m.charAt(0).toUpperCase()+m.slice(1)).join("")+"Icon"}function s(i){if(!i)return;const m=r(i);return Oe[m]}function c(i){a.value.has(i.id)?a.value.delete(i.id):a.value.add(i.id)}function l(i){i.children&&i.children.length>0&&c(i),n("item-click",i)}function d(i){return a.value.has(i.id)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",Nl,[i.$slots.header?(e.openBlock(),e.createElementBlock("div",wl,[e.renderSlot(i.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",$l,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,f=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.id},[e.createElementVNode("button",{class:e.normalizeClass(["of-sidebar__item",{"of-sidebar__item--active":f.active}]),onClick:p=>l(f)},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s(f.icon)),{key:0,class:"of-sidebar__item-icon",size:15})):e.createCommentVNode("",!0),e.createElementVNode("span",Dl,e.toDisplayString(f.label),1),f.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Tl,e.toDisplayString(f.badge),1)):e.createCommentVNode("",!0),f.children&&f.children.length>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(f)?e.unref(A.ChevronDownIcon):e.unref(A.ChevronRightIcon)),{key:2,class:"of-sidebar__item-chevron",size:13})):e.createCommentVNode("",!0)],10,xl),f.children&&f.children.length>0&&d(f)?(e.openBlock(),e.createElementBlock("div",Vl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.children,p=>(e.openBlock(),e.createElementBlock("button",{key:p.id,class:e.normalizeClass(["of-sidebar__item of-sidebar__item--child",{"of-sidebar__item--active":p.active}]),onClick:u=>n("item-click",p)},[p.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s(p.icon)),{key:0,class:"of-sidebar__item-icon",size:14})):e.createCommentVNode("",!0),e.createElementVNode("span",Al,e.toDisplayString(p.label),1),p.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Rl,e.toDisplayString(p.badge),1)):e.createCommentVNode("",!0)],10,Ml))),128))])):e.createCommentVNode("",!0)],64))),128))]),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",Il,[e.renderSlot(i.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-32a85d66"]]),Ol={class:"of-statusbar"},zl={class:"of-statusbar__left"},Ll={class:"of-statusbar__sync-text"},Fl={class:"of-statusbar__right"},Pl={key:0,class:"of-statusbar__shortcuts"},Ul={class:"of-statusbar__version"},Wt=D(e.defineComponent({__name:"StatusBar",props:{synced:{type:Boolean,default:!0},shortcuts:{default:""},version:{default:"v1.0.0"}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Ol,[e.createElementVNode("div",zl,[t.synced?(e.openBlock(),e.createBlock(e.unref(A.CircleCheckIcon),{key:0,class:"of-statusbar__sync-icon of-statusbar__sync-icon--ok",size:13})):(e.openBlock(),e.createBlock(e.unref(A.CircleAlertIcon),{key:1,class:"of-statusbar__sync-icon of-statusbar__sync-icon--warn",size:13})),e.createElementVNode("span",Ll,e.toDisplayString(t.synced?"所有更改已同步":"同步中..."),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"of-statusbar__spacer"},null,-1)),e.createElementVNode("div",Fl,[t.shortcuts?(e.openBlock(),e.createElementBlock("span",Pl,e.toDisplayString(t.shortcuts),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Ul,e.toDisplayString(t.version),1)])]))}}),[["__scopeId","data-v-7f81a511"]]),vl={class:"of-table-header"},Kl={key:0,class:"of-th of-th-checkbox"},Gl=["checked","indeterminate"],Hl=["onClick"],ql={class:"of-th-label"},Wl={class:"of-th-sort-icon"},ze=D(e.defineComponent({__name:"TableHeaderRow",props:{columns:{},selectable:{type:Boolean,default:!0},sortKey:{default:""},sortOrder:{default:"asc"},allSelected:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1}},emits:["sort","select-all"],setup(t,{emit:o}){const n=t,a=o,r=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],s=e.computed(()=>n.columns??r);function c(d){return d.width==="fill"?{flex:"1 1 0"}:{width:`${d.width}px`,flexShrink:"0",flexGrow:"0"}}function l(d){a("sort",d)}return(d,i)=>(e.openBlock(),e.createElementBlock("div",vl,[t.selectable?(e.openBlock(),e.createElementBlock("div",Kl,[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.allSelected,indeterminate:t.indeterminate,onChange:i[0]||(i[0]=m=>a("select-all"))},null,40,Gl)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,m=>(e.openBlock(),e.createElementBlock("div",{key:m.key,class:e.normalizeClass(["of-th",{"of-th--sortable":!0,"of-th--active":t.sortKey===m.key}]),style:e.normalizeStyle(c(m)),onClick:f=>l(m.key)},[e.createElementVNode("span",ql,e.toDisplayString(m.label),1),e.createElementVNode("span",Wl,[t.sortKey===m.key&&t.sortOrder==="asc"?(e.openBlock(),e.createBlock(e.unref(A.ChevronUp),{key:0,size:12,class:"of-sort-icon-active"})):t.sortKey===m.key&&t.sortOrder==="desc"?(e.openBlock(),e.createBlock(e.unref(A.ChevronDown),{key:1,size:12,class:"of-sort-icon-active"})):(e.openBlock(),e.createBlock(e.unref(A.ChevronDown),{key:2,size:12,class:"of-sort-icon-idle"}))])],14,Hl))),128))]))}}),[["__scopeId","data-v-8f437bc6"]]),fe={P0:{text:"var(--of-priority-p0-text)",bg:"var(--of-priority-p0-bg)",label:"P0"},P1:{text:"var(--of-priority-p1-text)",bg:"var(--of-priority-p1-bg)",label:"P1"},P2:{text:"var(--of-priority-p2-text)",bg:"var(--of-priority-p2-bg)",label:"P2"},P3:{text:"var(--of-priority-p3-text)",bg:"var(--of-priority-p3-bg)",label:"P3"}},ce={todo:{text:"var(--of-status-todo-text)",bg:"var(--of-status-todo-bg)",label:"待处理"},in_progress:{text:"var(--of-status-in-progress-text)",bg:"var(--of-status-in-progress-bg)",label:"进行中"},blocked:{text:"var(--of-status-blocked-text)",bg:"var(--of-status-blocked-bg)",label:"已阻塞",dot:"var(--of-status-blocked-text)"},done:{text:"var(--of-status-done-text)",bg:"var(--of-status-done-bg)",label:"已完成"},pending:{text:"var(--of-status-todo-text)",bg:"var(--of-status-todo-bg)",label:"Pending"},open:{text:"var(--of-status-in-progress-text)",bg:"var(--of-status-in-progress-bg)",label:"Open"},closed:{text:"var(--of-status-done-text)",bg:"var(--of-status-done-bg)",label:"Closed"},cancelled:{text:"var(--of-status-cancelled-text)",bg:"var(--of-status-cancelled-bg)",label:"Cancelled"},待处理:{text:"var(--of-status-todo-text)",bg:"var(--of-status-todo-bg)",label:"待处理"},进行中:{text:"var(--of-status-in-progress-text)",bg:"var(--of-status-in-progress-bg)",label:"进行中"},已阻塞:{text:"var(--of-status-blocked-text)",bg:"var(--of-status-blocked-bg)",label:"已阻塞",dot:"var(--of-status-blocked-text)"},已完成:{text:"var(--of-status-done-text)",bg:"var(--of-status-done-bg)",label:"已完成"}},Yl={text:"var(--of-badge-gray-text)",bg:"var(--of-badge-gray-bg)"};function te(t,o){const n=o[t]??Yl;return{style:{color:n.text,background:n.bg},label:n.label??t,dot:n.dot}}function ne(t,o){return o?{...t,...o}:t}function Zl(){return{DEFAULT_PRIORITY_MAP:fe,DEFAULT_STATUS_MAP:ce,resolveBadge:te,mergeColorMap:ne}}const jl=["checked"],Xl={key:0,class:"of-badge of-badge--role"},Ql={key:1,class:"of-td-empty"},Jl={key:3,class:"of-td-text"},er={key:4,class:"of-td-id"},tr={key:5,class:"of-td-title"},nr={key:6,class:"of-td-text"},Le=D(e.defineComponent({__name:"TableDataRow",props:{row:{},rowKey:{default:"id"},selected:{type:Boolean,default:!1},columns:{},priorityColorMap:{},statusColorMap:{}},emits:["select","click"],setup(t,{emit:o}){const n=t,a=o,r=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],s=e.computed(()=>n.columns??r);function c(h){return h.width==="fill"?{flex:"1 1 0"}:{width:`${h.width}px`,flexShrink:"0",flexGrow:"0"}}const l=e.computed(()=>ne(fe,n.priorityColorMap)),d=e.computed(()=>ne(ce,n.statusColorMap));function i(h){return te(h,l.value)}function m(h){return te(h,d.value)}function f(h){if(!h)return"-";const b=new Date(h);return isNaN(b.getTime())?h:`${b.getMonth()+1}/${b.getDate()}`}function p(h){return n.row[h.key]}function u(h){const b=p(h);return b!=null?String(b):"-"}function y(h){const b=p(h);return typeof b=="string"?b:""}function B(){const h=n.row[n.rowKey];return h!=null?String(h):""}return(h,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-table-row",{"of-table-row--selected":t.selected}]),onClick:b[2]||(b[2]=C=>a("click",t.row))},[e.createElementVNode("div",{class:"of-td of-td-checkbox",onClick:b[1]||(b[1]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.selected,onChange:b[0]||(b[0]=C=>a("select",B()))},null,40,jl)]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,C=>(e.openBlock(),e.createElementBlock("div",{key:C.key,class:"of-td",style:e.normalizeStyle(c(C))},[e.renderSlot(h.$slots,"cell",{row:t.row,col:C},()=>[C.key==="status"?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-badge",style:e.normalizeStyle(m(y(C)).style)},e.toDisplayString(m(y(C)).label),5)):C.key==="priority"?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-badge",style:e.normalizeStyle(i(y(C)).style)},e.toDisplayString(i(y(C)).label),5)):C.key==="role"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[y(C)?(e.openBlock(),e.createElementBlock("span",Xl,e.toDisplayString(y(C)),1)):(e.openBlock(),e.createElementBlock("span",Ql,"-"))],64)):C.key==="updatedAt"?(e.openBlock(),e.createElementBlock("span",Jl,e.toDisplayString(f(y(C))),1)):C.key==="id"?(e.openBlock(),e.createElementBlock("span",er,e.toDisplayString(B()),1)):C.key==="title"?(e.openBlock(),e.createElementBlock("span",tr,e.toDisplayString(u(C)),1)):(e.openBlock(),e.createElementBlock("span",nr,e.toDisplayString(u(C)),1))],!0)],4))),128))],2))}}),[["__scopeId","data-v-b0c14740"]]),or={key:0,class:"of-table-group-row__checkbox-spacer"},ar={key:2,class:"of-table-group-row__label"},lr={class:"of-table-group-row__count"},Fe=D(e.defineComponent({name:"TableGroupRow",__name:"TableGroupRow",props:{groupKey:{},count:{},collapsed:{type:Boolean,default:!1},colorMap:{},selectable:{type:Boolean,default:!0}},emits:["toggle"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.colorMap?te(n.groupKey,n.colorMap):null),s=e.computed(()=>n.groupKey||"(空)");return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:"of-table-group-row",onClick:l[0]||(l[0]=d=>a("toggle"))},[t.selectable?(e.openBlock(),e.createElementBlock("div",or)):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["of-table-group-row__chevron",{"of-table-group-row__chevron--collapsed":t.collapsed}])},"▼",2),r.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-table-group-row__badge",style:e.normalizeStyle(r.value.style)},[r.value.dot?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-table-group-row__badge-dot",style:e.normalizeStyle({background:r.value.dot})},null,4)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(r.value.label),1)],4)):(e.openBlock(),e.createElementBlock("span",ar,e.toDisplayString(s.value),1)),e.createElementVNode("span",lr,"("+e.toDisplayString(t.count)+")",1)]))}}),[["__scopeId","data-v-ffd80703"]]),Pe=D(e.defineComponent({__name:"NewRowBtn",emits:["click"],setup(t,{emit:o}){const n=o;return(a,r)=>(e.openBlock(),e.createElementBlock("button",{class:"of-new-row-btn",onClick:r[0]||(r[0]=s=>n("click"))},[e.createVNode(e.unref(A.Plus),{size:14,class:"of-new-row-icon"}),r[1]||(r[1]=e.createElementVNode("span",{class:"of-new-row-label"},"新建任务",-1))]))}}),[["__scopeId","data-v-612639d1"]]),re=e.ref(null);function Yt(){function t(r,s){re.value={rowId:r,fieldId:s}}function o(r,s,c){var l,d;return((l=re.value)==null?void 0:l.rowId)===r&&((d=re.value)==null?void 0:d.fieldId)===s&&(re.value=null),c}function n(){re.value=null}function a(r,s){var c,l;return((c=re.value)==null?void 0:c.rowId)===r&&((l=re.value)==null?void 0:l.fieldId)===s}return{editingCell:e.readonly(re),activate:t,commit:o,cancel:n,isEditing:a}}const rr={key:1,class:"of-field-cell__display"},Ue=D(e.defineComponent({__name:"FieldCell",props:{rowId:{},field:{},value:{type:[String,Number,Boolean,Array,null]},readonly:{type:Boolean,default:!1}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,{isEditing:r,activate:s,commit:c,cancel:l}=Yt(),d=e.computed(()=>r(n.rowId,n.field.id)),i=e.computed(()=>n.readonly||n.field.readonly);function m(){i.value||s(n.rowId,n.field.id)}function f(b){c(n.rowId,n.field.id,b),a("commit",n.rowId,n.field.id,b)}function p(){l(),a("cancel")}function u(){a("tabNext")}const y={text:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Xm)),number:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Qm)),checkbox:e.defineAsyncComponent(()=>Promise.resolve().then(()=>ef)),select:e.defineAsyncComponent(()=>Promise.resolve().then(()=>af)),multiselect:e.defineAsyncComponent(()=>Promise.resolve().then(()=>ff)),date:e.defineAsyncComponent(()=>Promise.resolve().then(()=>uf)),datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>pf)),rating:e.defineAsyncComponent(()=>Promise.resolve().then(()=>_f)),url:e.defineAsyncComponent(()=>Promise.resolve().then(()=>bf)),email:e.defineAsyncComponent(()=>Promise.resolve().then(()=>yf))},B=e.computed(()=>y[n.field.type]),h=e.computed(()=>{const b=n.value;return b==null||b===""?"—":Array.isArray(b)?b.join(", "):typeof b=="boolean"?b?"✓":"—":String(b)});return(b,C)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-field-cell",{"of-field-cell--editing":d.value,"of-field-cell--readonly":i.value}]),onClick:m},[d.value?(e.openBlock(),e.createBlock(e.Suspense,{key:0},{fallback:e.withCtx(()=>[...C[0]||(C[0]=[e.createElementVNode("span",{class:"of-field-cell__loading"},"...",-1)])]),default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(B.value),{value:t.value,field:t.field,onCommit:f,onCancel:p,onTabNext:u},null,40,["value","field"]))]),_:1})):(e.openBlock(),e.createElementBlock("span",rr,e.toDisplayString(h.value),1))],2))}}),[["__scopeId","data-v-552e3939"]]);function Ee({items:t,itemHeight:o,overscan:n=5,containerRef:a}){const r=e.ref(0),s=e.ref(0),c=typeof o=="number",l=Math.max(0,n);let d=null,i=null;const m=e.computed(()=>{if(c)return[];const _=new Array(t.value.length+1).fill(0),$=o;for(let x=0;x<t.value.length;x+=1)_[x+1]=_[x]+Math.max(0,$(x));return _}),f=e.computed(()=>c?t.value.length*o:m.value[t.value.length]??0);function p(_){const $=Math.max(0,Math.min(_,t.value.length));return c?$*o:m.value[$]??0}function u(_){if(t.value.length===0)return 0;if(c){const K=o;return Math.max(0,Math.min(t.value.length-1,Math.floor(Math.max(0,_)/K)))}const $=m.value;let x=0,O=t.value.length;for(;x<O;){const K=Math.floor((x+O)/2);$[K+1]<=_?x=K+1:O=K}return Math.max(0,Math.min(x,t.value.length-1))}const y=e.computed(()=>{const _=t.value.length;if(_===0)return{start:0,end:0};if(s.value<=0)return{start:0,end:Math.min(_,l*2+1)};if(c){const v=o,P=Math.floor(r.value/v),J=Math.ceil(s.value/v),g=Math.max(0,P-l),S=Math.min(_,P+J+l);return{start:g,end:S}}const $=Math.max(0,r.value),x=$+s.value,O=u($),K=Math.min(_-1,u(x));return{start:Math.max(0,O-l),end:Math.min(_,K+l+1)}}),B=e.computed(()=>p(y.value.start)),h=e.computed(()=>{const{start:_,end:$}=y.value;return t.value.slice(_,$).map((x,O)=>({data:x,index:_+O}))});function b(_){if(!_){r.value=0,s.value=0;return}r.value=_.scrollTop,s.value=_.clientHeight}function C(){i&&(r.value=i.scrollTop)}function k(){d==null||d.disconnect(),d=null}function N(_){_&&_.removeEventListener("scroll",C)}function w(_){if(!_){i=null,b(null);return}i=_,_.addEventListener("scroll",C,{passive:!0}),b(_),typeof ResizeObserver<"u"&&(d=new ResizeObserver(()=>{b(_)}),d.observe(_))}e.watch(a,(_,$)=>{N($),k(),w(_)},{immediate:!0}),e.watch(t,()=>{const _=Math.max(0,f.value-s.value);r.value>_&&(r.value=_,i&&(i.scrollTop=_))});function V(_){if(!i||t.value.length===0)return;const $=Math.max(0,Math.min(_,t.value.length-1)),x=p($);i.scrollTop=x,r.value=x}function q(){if(!i)return;const _=Math.max(0,f.value-i.clientHeight);i.scrollTop=_,r.value=_}return e.onUnmounted(()=>{N(i),k(),i=null}),{visibleItems:h,totalHeight:f,offsetY:B,scrollToIndex:V,scrollToBottom:q}}const sr={class:"of-data-table"},cr=36,ir=44,Zt=D(e.defineComponent({__name:"DataTable",props:{tasks:{},records:{},schema:{},view:{},columns:{},fieldDefs:{},rowKey:{default:"id"},selectable:{type:Boolean,default:!0},addable:{type:Boolean,default:!0},priorityColorMap:{},statusColorMap:{},groupBy:{},groupColorMap:{}},emits:["row-click","row-click-record","add-row","selection-change","cell-edit"],setup(t,{emit:o}){const n=t,a=o,{commit:r}=Yt();function s(g){return g.type==="number"||g.type==="date"?g.type:g.type==="select"?"status":"string"}function c(g){return{key:g.id,label:g.name,width:g.width,type:s(g)}}const l=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",align:"left"},{key:"status",label:"状态",width:90,align:"left"},{key:"role",label:"负责角色",width:90,align:"left"},{key:"priority",label:"优先级",width:70,align:"left"},{key:"updatedAt",label:"更新时间",width:100,align:"left"}],d=e.computed(()=>{var g,S,T,I,z;return(g=n.columns)!=null&&g.length?n.columns:(T=(S=n.schema)==null?void 0:S.fields)!=null&&T.length?((z=(I=n.view)==null?void 0:I.visibleFields)!=null&&z.length?n.schema.fields.filter(U=>{var j;return(j=n.view)==null?void 0:j.visibleFields.includes(U.id)}):n.schema.fields).filter(U=>!U.hidden).map(c):l}),i=e.computed(()=>{var g;return(g=n.records)!=null&&g.length?n.records.map(S=>({id:S.id,...S.fields,createdAt:S.createdAt,updatedAt:S.updatedAt,__record:S})):n.tasks??[]}),m=e.ref(""),f=e.ref("asc");function p(g){m.value===g?f.value=f.value==="asc"?"desc":"asc":(m.value=g,f.value="asc")}const u=e.computed(()=>m.value?[...i.value].sort((g,S)=>{const T=g[m.value],I=S[m.value],z=T!=null?String(T):"",G=I!=null?String(I):"",U=z.localeCompare(G,"zh-CN");return f.value==="asc"?U:-U}):i.value),y=e.ref(new Set);function B(g){const S=new Set(y.value);S.has(g)?S.delete(g):S.add(g),y.value=S}e.watch(()=>n.groupBy,()=>{y.value=new Set});const h=e.computed(()=>{const g=u.value,S=n.groupBy;if(!S)return g.map(U=>({...U,__type:"data-row"}));const T=[],I=new Map;for(const U of g){const j=U[S],Z=j!=null?String(j):"";I.has(Z)||(T.push(Z),I.set(Z,[])),I.get(Z).push(U)}const z=[],G=y.value;for(const U of T){const j=I.get(U);if(z.push({__type:"group-header",__groupKey:U,__groupCount:j.length,id:`__group__${U}`}),!G.has(U))for(const Z of j)z.push({...Z,__type:"data-row"})}return z});function b(g){return g.__type==="group-header"}const C=e.ref(null),{visibleItems:k,totalHeight:N,offsetY:w}=Ee({items:h,itemHeight:g=>{const S=h.value[g];return(S==null?void 0:S.__type)==="group-header"?cr:ir},overscan:5,containerRef:C});function V(g){const S=g[n.rowKey];return S!=null?String(S):""}function q(g){var S;return((S=n.fieldDefs)==null?void 0:S.find(T=>T.id===g))??{id:g,type:"text",label:g}}function _(g,S,T){r(g,S,T),a("cell-edit",{rowId:g,fieldId:S,value:T})}function $(g,S){return g[S]}const x=e.ref([]),O=e.computed(()=>i.value.length>0&&x.value.length===i.value.length),K=e.computed(()=>x.value.length>0&&x.value.length<i.value.length);function v(){O.value?x.value=[]:x.value=i.value.map(g=>V(g))}function P(g){x.value.indexOf(g)===-1?x.value=[...x.value,g]:x.value=x.value.filter(T=>T!==g)}e.watch(x,g=>{a("selection-change",g)},{deep:!0});function J(g){if(g.__record){a("row-click-record",g.__record),a("row-click",g.__record);return}a("row-click",g)}return(g,S)=>(e.openBlock(),e.createElementBlock("div",sr,[e.createVNode(ze,{columns:d.value,selectable:t.selectable,"sort-key":m.value,"sort-order":f.value,"all-selected":O.value,indeterminate:K.value,onSort:p,onSelectAll:v},null,8,["columns","selectable","sort-key","sort-order","all-selected","indeterminate"]),e.createElementVNode("div",{ref_key:"scrollContainerRef",ref:C,class:"of-data-table-scroll-container"},[e.createElementVNode("div",{style:e.normalizeStyle({height:e.unref(N)+"px",position:"relative"})},[e.createElementVNode("div",{style:e.normalizeStyle({transform:`translateY(${e.unref(w)}px)`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(k),({data:T})=>{var I;return e.openBlock(),e.createElementBlock(e.Fragment,{key:T.id},[b(T)?(e.openBlock(),e.createBlock(Fe,{key:0,"group-key":T.__groupKey,count:T.__groupCount,collapsed:y.value.has(T.__groupKey),"color-map":t.groupColorMap,selectable:t.selectable,onToggle:z=>B(T.__groupKey)},null,8,["group-key","count","collapsed","color-map","selectable","onToggle"])):(e.openBlock(),e.createBlock(Le,{key:1,row:T,"row-key":t.rowKey,selected:x.value.includes(V(T)),columns:d.value,"priority-color-map":t.priorityColorMap,"status-color-map":t.statusColorMap,onSelect:P,onClick:z=>J(T)},e.createSlots({_:2},[(I=t.fieldDefs)!=null&&I.length?{name:"cell",fn:e.withCtx(({row:z,col:G})=>[e.createVNode(Ue,{"row-id":String(z[t.rowKey]),field:q(G.key),value:$(z,G.key),onCommit:_},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1032,["row","row-key","selected","columns","priority-color-map","status-color-map","onClick"]))],64)}),128))],4)],4)],512),t.addable?(e.openBlock(),e.createBlock(Pe,{key:0,onClick:S[0]||(S[0]=T=>a("add-row"))})):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-cbe5607b"]]),dr={key:0,class:"of-filter-panel"},mr={class:"of-filter-panel__header"},fr={key:0,class:"of-filter-panel__empty"},ur={key:1,class:"of-filter-panel__conditions"},pr={key:0,class:"of-filter-condition__logic-label"},gr={key:1,class:"of-filter-condition__logic-group"},_r=["value","onChange"],br=["value"],yr=["value","onChange"],kr=["value"],hr=["value","onInput"],Er={key:3,class:"of-filter-condition__no-value"},Br=["onClick"],Cr={class:"of-filter-panel__footer"},jt=D(e.defineComponent({__name:"TableFilterPanel",props:{columns:{},conditions:{},logic:{},visible:{type:Boolean}},emits:["add-condition","remove-condition","update-condition","update:logic","clear","close"],setup(t,{emit:o}){const n=t,a=o,r=[{value:"contains",label:"包含"},{value:"not_contains",label:"不包含"},{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"starts_with",label:"开头是"},{value:"ends_with",label:"结尾是"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}];function s(i){var m;return(m=n.columns.find(f=>f.key===i))==null?void 0:m.type}function c(i){return s(i)==="number"?[{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"gt",label:"大于"},{value:"gte",label:"大于等于"},{value:"lt",label:"小于"},{value:"lte",label:"小于等于"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}]:r}const l=["is_empty","is_not_empty"];function d(i){return l.includes(i)}return(i,m)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("div",dr,[e.createElementVNode("div",mr,[m[5]||(m[5]=e.createElementVNode("span",{class:"of-filter-panel__title"},"筛选",-1)),e.createElementVNode("button",{class:"of-filter-panel__close",onClick:m[0]||(m[0]=f=>a("close"))},[e.createVNode(e.unref(A.X),{size:14})])]),t.conditions.length===0?(e.openBlock(),e.createElementBlock("div",fr," 暂无筛选条件,点击下方添加 ")):(e.openBlock(),e.createElementBlock("div",ur,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.conditions,(f,p)=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"of-filter-condition"},[p===0?(e.openBlock(),e.createElementBlock("span",pr,"当")):(e.openBlock(),e.createElementBlock("span",gr,[e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="and"}]),onClick:m[1]||(m[1]=u=>a("update:logic","and"))}," 且 ",2),e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="or"}]),onClick:m[2]||(m[2]=u=>a("update:logic","or"))}," 或 ",2)])),e.createElementVNode("select",{class:"of-filter-condition__select of-filter-condition__select--field",value:f.field,onChange:u=>a("update-condition",f.id,{field:u.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,u=>(e.openBlock(),e.createElementBlock("option",{key:u.key,value:u.key},e.toDisplayString(u.label),9,br))),128))],40,_r),e.createElementVNode("select",{class:"of-filter-condition__select",value:f.operator,onChange:u=>a("update-condition",f.id,{operator:u.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c(f.field),u=>(e.openBlock(),e.createElementBlock("option",{key:u.value,value:u.value},e.toDisplayString(u.label),9,kr))),128))],40,yr),d(f.operator)?(e.openBlock(),e.createElementBlock("span",Er)):(e.openBlock(),e.createElementBlock("input",{key:2,class:"of-filter-condition__input",value:f.value,placeholder:"输入值...",onInput:u=>a("update-condition",f.id,{value:u.target.value})},null,40,hr)),e.createElementVNode("button",{class:"of-filter-condition__remove",onClick:u=>a("remove-condition",f.id)},[e.createVNode(e.unref(A.Trash2),{size:13})],8,Br)]))),128))])),e.createElementVNode("div",Cr,[e.createElementVNode("button",{class:"of-filter-panel__add-btn",onClick:m[3]||(m[3]=f=>a("add-condition"))},[e.createVNode(e.unref(A.Plus),{size:13}),m[6]||(m[6]=e.createTextVNode(" 添加条件 ",-1))]),t.conditions.length?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-filter-panel__clear",onClick:m[4]||(m[4]=f=>a("clear"))}," 清除全部 ")):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-fb534624"]]),Sr={key:0,class:"of-col-manager"},Nr={class:"of-col-manager__header"},wr={class:"of-col-manager__actions"},$r={class:"of-col-manager__drag"},xr=["checked","onChange"],Xt=D(e.defineComponent({__name:"TableColumnManager",props:{columns:{},visible:{type:Boolean}},emits:["update:columns","close"],setup(t,{emit:o}){const n=t,a=o,r=e.ref([]);e.watch(()=>n.columns,m=>{r.value=m.map(f=>({...f}))},{immediate:!0,deep:!0});function s(){a("update:columns",r.value.map(m=>({...m})))}function c(m){m.hidden=!m.hidden,s()}function l(){r.value.forEach(m=>m.hidden=!1),s()}function d(){r.value.forEach(m=>m.hidden=!0),s()}function i(){s()}return(m,f)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("div",Sr,[e.createElementVNode("div",Nr,[f[2]||(f[2]=e.createElementVNode("span",{class:"of-col-manager__title"},"管理列",-1)),e.createElementVNode("button",{class:"of-col-manager__close",onClick:f[0]||(f[0]=p=>a("close"))},[e.createVNode(e.unref(A.X),{size:14})])]),e.createElementVNode("div",wr,[e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:l},[e.createVNode(e.unref(A.Eye),{size:12}),f[3]||(f[3]=e.createTextVNode(" 显示全部 ",-1))]),e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:d},[e.createVNode(e.unref(A.EyeOff),{size:12}),f[4]||(f[4]=e.createTextVNode(" 隐藏全部 ",-1))])]),e.createVNode(e.unref(Re.VueDraggable),{modelValue:r.value,"onUpdate:modelValue":f[1]||(f[1]=p=>r.value=p),handle:".of-col-manager__drag",animation:150,onEnd:i},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,p=>(e.openBlock(),e.createElementBlock("div",{key:p.key,class:"of-col-manager__row"},[e.createElementVNode("span",$r,[e.createVNode(e.unref(A.GripVertical),{size:14})]),e.createElementVNode("input",{type:"checkbox",class:"of-col-manager__checkbox",checked:!p.hidden,onChange:u=>c(p)},null,40,xr),e.createElementVNode("span",{class:e.normalizeClass(["of-col-manager__label",{dimmed:p.hidden}])},e.toDisplayString(p.label),3)]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-9e57b361"]]),Dr=["src"],Tr={class:"gallery-card__body"},Vr={class:"gallery-card__title"},Mr={key:0,class:"gallery-card__desc"},Ar={key:1,class:"gallery-card__props"},Rr={class:"gallery-card__prop-key"},Ir={class:"gallery-card__prop-value"},Or={class:"gallery-card__footer"},zr={class:"gallery-card__task-id"},Lr={class:"gallery-card__date"},ve=D(e.defineComponent({__name:"GalleryCard",props:{item:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.item.bannerColor??"#BFDBFE"),s=e.computed(()=>typeof n.item.cover=="string"&&/^https?:\/\//.test(n.item.cover)),c=e.computed(()=>(n.item.extraProps??[]).slice(0,2)),l={tag:A.TagIcon,user:A.UserIcon,calendar:A.CalendarIcon,folder:A.FolderIcon};function d(p){return p?l[p.toLowerCase()]??A.CircleIcon:A.CircleIcon}const i=e.computed(()=>{const p=n.item.updatedAt??n.item.createdAt;if(!p)return"";const u=new Date(p);return`${u.getFullYear()}-${String(u.getMonth()+1).padStart(2,"0")}-${String(u.getDate()).padStart(2,"0")}`}),m={todo:"var(--of-color-gray-400)",in_progress:"var(--of-color-info)",blocked:"var(--of-color-warning)",done:"var(--of-color-success)"},f=e.computed(()=>m[n.item.status]??"var(--of-color-gray-400)");return(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-card",onClick:u[0]||(u[0]=y=>a("click",t.item))},[s.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"gallery-card__cover",src:t.item.cover,alt:""},null,8,Dr)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"gallery-card__banner",style:e.normalizeStyle({backgroundColor:r.value})},null,4)),e.createElementVNode("div",Tr,[e.createElementVNode("div",Vr,e.toDisplayString(t.item.title),1),t.item.description?(e.openBlock(),e.createElementBlock("div",Mr,e.toDisplayString(t.item.description),1)):e.createCommentVNode("",!0),u[3]||(u[3]=e.createElementVNode("div",{class:"gallery-card__divider"},null,-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("div",Ar,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,y=>(e.openBlock(),e.createElementBlock("div",{key:y.key,class:"gallery-card__prop-row"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(y.icon)),{class:"gallery-card__prop-icon",size:12})),e.createElementVNode("span",Rr,e.toDisplayString(y.key),1),u[1]||(u[1]=e.createElementVNode("span",{class:"gallery-card__prop-spacer"},null,-1)),e.createElementVNode("span",Ir,e.toDisplayString(y.value),1)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",Or,[e.createElementVNode("span",zr,[e.createElementVNode("span",{class:"gallery-card__status-dot",style:e.normalizeStyle({backgroundColor:f.value})},null,4),e.createTextVNode(" "+e.toDisplayString(t.item.id),1)]),u[2]||(u[2]=e.createElementVNode("span",{class:"gallery-card__footer-spacer"},null,-1)),e.createElementVNode("span",Lr,e.toDisplayString(i.value),1)])])]))}}),[["__scopeId","data-v-0988fa59"]]);function ye(t){return t.type==="select"||t.type==="multi_select"}function Fr(t){return t.type==="formula"}function Qt(t){return{id:t.id,fields:{title:t.title,description:t.description??"",status:t.status,priority:t.priority,assignee:t.assignee??"",startDate:t.startDate??"",endDate:t.endDate??"",tags:t.tags??[]},createdAt:t.createdAt,updatedAt:t.updatedAt}}function Ke(t){const o=t.fields.status,n=t.fields.priority,a=t.fields.title,r=t.fields.description,s=t.fields.assignee,c=t.fields.tags,l=t.fields.startDate,d=t.fields.endDate;return{id:t.id,title:typeof a=="string"&&a?a:t.id,description:typeof r=="string"?r:void 0,status:typeof o=="string"&&o?o:"todo",priority:typeof n=="string"&&n?n:"P3",assignee:typeof s=="string"?s:void 0,tags:Array.isArray(c)?c.filter(i=>typeof i=="string"):void 0,startDate:typeof l=="string"?l:void 0,endDate:typeof d=="string"?d:void 0,createdAt:t.createdAt,updatedAt:t.updatedAt}}function Jt(t,o={}){const n=o.kanbanFieldId??"status",a=new Map;for(const s of t){const c=s.fields[n],l=typeof c=="string"&&c?c:"unassigned",d=a.get(l)??[];d.push(Ke(s)),a.set(l,d)}return(o.laneOrder&&o.laneOrder.length>0?o.laneOrder:Array.from(a.keys())).map(s=>{var c;return{id:s,title:((c=o.laneTitles)==null?void 0:c[s])??s,tasks:a.get(s)??[]}})}function en(t,o={}){const n=o.coverFieldId,a=o.cardFieldIds??[];return t.map(r=>{const s=Ke(r),c=n?r.fields[n]:null,l=typeof c=="string"&&c?c:void 0,d=a.map(i=>{const m=r.fields[i];return m==null||i===n?null:Array.isArray(m)?{key:i,value:m.join(", ")}:{key:i,value:String(m)}}).filter(i=>i!==null);return{...s,cover:l,bannerColor:l!=null&&l.startsWith("#")?l:void 0,extraProps:d.length>0?d:void 0}})}const tn=D(e.defineComponent({__name:"GalleryView",props:{items:{default:()=>[]},records:{default:()=>[]},coverFieldId:{default:""},cardFieldIds:{default:()=>[]},columns:{default:4},addable:{type:Boolean,default:!0}},emits:["card-click","add"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>({"--columns":n.columns})),s=e.computed(()=>n.items.length>0?n.items:n.records.length>0?en(n.records,{coverFieldId:n.coverFieldId||void 0,cardFieldIds:n.cardFieldIds}):[]);return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-view",style:e.normalizeStyle(r.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,d=>(e.openBlock(),e.createBlock(ve,{key:d.id,item:d,onClick:i=>a("card-click",d)},null,8,["item","onClick"]))),128)),t.addable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"gallery-view__add-btn",onClick:l[0]||(l[0]=d=>a("add"))},[e.createVNode(e.unref(A.PlusIcon),{size:18,class:"gallery-view__add-icon"}),l[1]||(l[1]=e.createElementVNode("span",{class:"gallery-view__add-label"},"添加",-1))])):e.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-d1d1b9bb"]]),Pr=["aria-busy"],Ur={key:0,class:"of-activity-timeline__skeleton","aria-hidden":"true"},vr={class:"of-activity-timeline__rail"},Kr={key:0,class:"of-activity-timeline__line"},Gr={class:"of-activity-timeline__rail"},Hr={key:0,class:"of-activity-timeline__line"},qr={class:"of-activity-timeline__content"},Wr={class:"of-activity-timeline__header"},Yr={class:"of-activity-timeline__action"},Zr={key:0,class:"of-activity-timeline__actor"},jr={key:0,class:"of-activity-timeline__detail"},Xr={key:1,class:"of-activity-timeline__progress"},Qr={class:"of-activity-timeline__progress-track"},Jr={class:"of-activity-timeline__progress-value"},es={key:2,class:"of-activity-timeline__time"},nn=D(e.defineComponent({__name:"ActivityTimeline",props:{items:{},loading:{type:Boolean,default:!1}},setup(t){const o=t,n=[0,1,2],a=e.computed(()=>o.items.map(c=>({...c,status:c.status??"default"})));function r(c){return c==="done"?"var(--of-color-success)":c==="start"?"var(--of-color-warning)":"var(--of-color-info)"}function s(c){return typeof c!="number"||Number.isNaN(c)?null:Math.min(100,Math.max(0,c))}return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:"of-activity-timeline","aria-busy":t.loading},[t.loading?(e.openBlock(),e.createElementBlock("div",Ur,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,d=>e.createElementVNode("div",{key:d,class:"of-activity-timeline__item of-activity-timeline__item--skeleton"},[e.createElementVNode("div",vr,[l[0]||(l[0]=e.createElementVNode("span",{class:"of-activity-timeline__dot of-activity-timeline__dot--skeleton"},null,-1)),d<n.length-1?(e.openBlock(),e.createElementBlock("span",Kr)):e.createCommentVNode("",!0)]),l[1]||(l[1]=e.createElementVNode("div",{class:"of-activity-timeline__content"},[e.createElementVNode("span",{class:"of-activity-timeline__skeleton-bar of-activity-timeline__skeleton-bar--lg"}),e.createElementVNode("span",{class:"of-activity-timeline__skeleton-bar of-activity-timeline__skeleton-bar--md"}),e.createElementVNode("span",{class:"of-activity-timeline__skeleton-bar of-activity-timeline__skeleton-bar--sm"})],-1))])),64))])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(a.value,(d,i)=>(e.openBlock(),e.createElementBlock("div",{key:`${d.action}-${d.time??i}-${i}`,class:"of-activity-timeline__item"},[e.createElementVNode("div",Gr,[e.createElementVNode("span",{class:"of-activity-timeline__dot",style:e.normalizeStyle({backgroundColor:r(d.status)})},null,4),i<a.value.length-1?(e.openBlock(),e.createElementBlock("span",Hr)):e.createCommentVNode("",!0)]),e.createElementVNode("div",qr,[e.renderSlot(c.$slots,"item",{item:d,index:i},()=>[e.createElementVNode("div",Wr,[e.createElementVNode("span",Yr,e.toDisplayString(d.action),1),d.actor?(e.openBlock(),e.createElementBlock("span",Zr,e.toDisplayString(d.actor),1)):e.createCommentVNode("",!0)]),d.detail?(e.openBlock(),e.createElementBlock("p",jr,e.toDisplayString(d.detail),1)):e.createCommentVNode("",!0),s(d.progress)!==null?(e.openBlock(),e.createElementBlock("div",Xr,[e.createElementVNode("div",Qr,[e.createElementVNode("div",{class:"of-activity-timeline__progress-fill",style:e.normalizeStyle({width:`${s(d.progress)}%`,backgroundColor:r(d.status)})},null,4)]),e.createElementVNode("span",Jr,e.toDisplayString(s(d.progress))+"% ",1)])):e.createCommentVNode("",!0),d.time?(e.openBlock(),e.createElementBlock("p",es,e.toDisplayString(d.time),1)):e.createCommentVNode("",!0)],!0)])]))),128))],8,Pr))}}),[["__scopeId","data-v-d07baaeb"]]),ts={class:"gantt-row__label"},ns={class:"gantt-row__title"},os={class:"gantt-row__bar-label"},Ge=D(e.defineComponent({__name:"GanttRow",props:{item:{},dayWidth:{},offsetDays:{},durationDays:{},totalDays:{},readonly:{type:Boolean,default:!1},priorityColorMap:{},statusColorMap:{}},emits:["click","change"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref(null);let c=0,l=0,d=0;const i=e.computed(()=>n.totalDays*n.dayWidth),m=e.computed(()=>n.offsetDays*n.dayWidth),f=e.computed(()=>Math.max(n.durationDays,1)*n.dayWidth),p=e.computed(()=>te(n.item.priority||"",ne(fe,n.priorityColorMap))),u=e.computed(()=>n.item.barColor?{background:n.item.barColor,color:"var(--of-color-gray-800)"}:{background:p.value.style.background,color:p.value.style.color}),y=e.computed(()=>p.value.style),B=e.computed(()=>{const N=te(n.item.status||"",ne(ce,n.statusColorMap));return N.dot??N.style.color}),h=e.computed(()=>{const N=w=>{const V=new Date(`${w}T00:00:00`);return`${String(V.getMonth()+1).padStart(2,"0")}/${String(V.getDate()).padStart(2,"0")}`};return`${N(n.item.startDate)} - ${N(n.item.endDate)}`});function b(N,w){n.readonly||(N.preventDefault(),N.stopPropagation(),r.value=!0,s.value=w,c=N.clientX,l=n.offsetDays,d=n.durationDays,window.addEventListener("mousemove",C),window.addEventListener("mouseup",k))}function C(N){if(!r.value||!s.value)return;const w=Math.round((N.clientX-c)/n.dayWidth);if(s.value==="move"){const _=Math.max(0,Math.min(l+w,n.totalDays-1));a("change",{id:n.item.id,offsetDays:_,durationDays:d,startDate:n.item.startDate,endDate:n.item.endDate});return}const V=Math.max(1,d+w),q=Math.max(1,n.totalDays-n.offsetDays);a("change",{id:n.item.id,offsetDays:n.offsetDays,durationDays:Math.min(V,q),startDate:n.item.startDate,endDate:n.item.endDate})}function k(){r.value=!1,s.value=null,window.removeEventListener("mousemove",C),window.removeEventListener("mouseup",k)}return(N,w)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-row",onClick:w[2]||(w[2]=V=>a("click",t.item))},[e.createElementVNode("div",ts,[e.createElementVNode("span",{class:"gantt-row__dot",style:e.normalizeStyle({backgroundColor:B.value})},null,4),e.createElementVNode("span",ns,e.toDisplayString(t.item.title),1),e.createElementVNode("span",{class:"gantt-row__priority",style:e.normalizeStyle(y.value)},e.toDisplayString(t.item.priority),5)]),e.createElementVNode("div",{class:"gantt-row__chart",style:e.normalizeStyle({width:`${i.value}px`})},[e.createElementVNode("div",{class:e.normalizeClass(["gantt-row__bar",{"gantt-row__bar--dragging":r.value}]),style:e.normalizeStyle({left:`${m.value}px`,width:`${f.value}px`,backgroundColor:u.value.background,color:u.value.color}),onMousedown:w[1]||(w[1]=V=>b(V,"move"))},[e.createElementVNode("span",os,e.toDisplayString(h.value),1),e.createElementVNode("span",{class:"gantt-row__handle",onMousedown:w[0]||(w[0]=V=>b(V,"resize-end"))},null,32)],38)],4)]))}}),[["__scopeId","data-v-d085f196"]]),as={class:"gantt-timeline__header"},ls={class:"gantt-timeline__rows"},rs={key:0,class:"gantt-timeline__empty"},ue=40,on=D(e.defineComponent({__name:"GanttTimeline",props:{records:{},schema:{},viewConfig:{},startFieldId:{default:"startDate"},endFieldId:{default:"endDate"},labelFieldId:{default:"title"},items:{},data:{},startDate:{},days:{default:30}},emits:["row-click","record-change","update:records"],setup(t,{emit:o}){const n=t,a=o;function r(_){return new Date(`${_}T00:00:00`)}function s(_){const $=_.getFullYear(),x=String(_.getMonth()+1).padStart(2,"0"),O=String(_.getDate()).padStart(2,"0");return`${$}-${x}-${O}`}function c(_,$){return Math.round((r($).getTime()-r(_).getTime())/864e5)}function l(_,$){const x=r(_),O=new Date(x);return O.setDate(x.getDate()+$),s(O)}function d(_){if(typeof _!="string"||!_)return null;const $=_.match(/^(\d{4}-\d{2}-\d{2})/);return $?$[1]:null}function i(){const _=new Date;return`${_.getFullYear()}-${String(_.getMonth()+1).padStart(2,"0")}-01`}const m=e.computed(()=>{var _,$;return(_=n.records)!=null&&_.length?n.records:($=n.data)!=null&&$.length?n.data.map(Qt):[]}),f=e.computed(()=>{var _,$;if((_=n.records)!=null&&_.length||($=n.data)!=null&&$.length){const x=[];for(const O of m.value){const K=d(O.fields[n.startFieldId]),v=d(O.fields[n.endFieldId]),P=O.fields[n.labelFieldId];!K||!v||x.push({id:O.id,sourceRecordId:O.id,title:typeof P=="string"&&P?P:O.id,status:typeof O.fields.status=="string"?O.fields.status:"",priority:typeof O.fields.priority=="string"?O.fields.priority:"",startDate:K,endDate:v})}return x}return(n.items??[]).map(x=>({id:x.id,title:x.title,status:x.status,priority:x.priority,startDate:x.startDate,endDate:x.endDate,barColor:x.barColor}))}),p=e.computed(()=>{if(!f.value.length)return n.startDate||i();const _=Math.min(...f.value.map(x=>r(x.startDate).getTime())),$=new Date(_);return $.setDate($.getDate()-1),s($)}),u=e.computed(()=>{if(!f.value.length)return l(n.startDate||i(),n.days-1);const _=Math.max(...f.value.map(x=>r(x.endDate).getTime())),$=new Date(_);return $.setDate($.getDate()+1),s($)}),y=e.computed(()=>n.startDate||p.value),B=e.computed(()=>n.startDate?n.days:Math.max(n.days,c(y.value,u.value)+1)),h=e.computed(()=>{const _=[];for(let $=0;$<B.value;$++)_.push(l(y.value,$));return _}),b=e.ref([]);e.watch(f,_=>{b.value=_.map($=>({...$}))},{immediate:!0});const C=e.computed(()=>{const _=y.value,$=B.value;return b.value.map(x=>{const O=Math.max(0,c(_,x.startDate)),K=Math.max(O,c(_,x.endDate)),v=Math.max(1,K-O+1);return{row:x,offsetDays:Math.min(O,$-1),durationDays:v}})}),k=s(new Date);function N(_){return _===k}function w(_){const $=r(_);return`${String($.getMonth()+1).padStart(2,"0")}/${String($.getDate()).padStart(2,"0")}`}const V=e.computed(()=>{const _=c(y.value,k);return _<0||_>B.value-1?null:_*ue+ue/2});function q(_){const $=b.value.findIndex(P=>P.id===_.id);if($===-1)return;const x=l(y.value,_.offsetDays),O=l(x,_.durationDays-1);b.value[$]={...b.value[$],startDate:x,endDate:O};const K=b.value[$].sourceRecordId;if(!K)return;a("record-change",{recordId:K,startDate:x,endDate:O});const v=m.value.map(P=>P.id!==K?P:{...P,fields:{...P.fields,[n.startFieldId]:x,[n.endFieldId]:O}});a("update:records",v)}return(_,$)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-timeline",style:e.normalizeStyle({"--day-width":`${ue}px`})},[e.createElementVNode("div",as,[$[0]||($[0]=e.createElementVNode("div",{class:"gantt-timeline__header-label"},"任务",-1)),e.createElementVNode("div",{class:"gantt-timeline__header-dates",style:e.normalizeStyle({width:`${B.value*ue}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,x=>(e.openBlock(),e.createElementBlock("div",{key:x,class:e.normalizeClass(["gantt-timeline__header-cell",{"gantt-timeline__header-cell--today":N(x)}]),style:e.normalizeStyle({width:`${ue}px`})},e.toDisplayString(w(x)),7))),128)),V.value!==null?(e.openBlock(),e.createElementBlock("div",{key:0,class:"gantt-timeline__today-line",style:e.normalizeStyle({left:`${V.value}px`})},null,4)):e.createCommentVNode("",!0)],4)]),e.createElementVNode("div",ls,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,x=>(e.openBlock(),e.createBlock(Ge,{key:x.row.id,item:x.row,"offset-days":x.offsetDays,"duration-days":x.durationDays,"day-width":ue,"total-days":B.value,onChange:q,onClick:O=>a("row-click",x.row)},null,8,["item","offset-days","duration-days","total-days","onClick"]))),128)),C.value.length===0?(e.openBlock(),e.createElementBlock("div",rs,"暂无任务数据")):e.createCommentVNode("",!0)])],4))}}),[["__scopeId","data-v-d0e74d5c"]]),ss=["rows"],cs={key:0,class:"content-block__placeholder"},He=D(e.defineComponent({__name:"ContentBlock",props:{content:{},editable:{type:Boolean,default:!1}},emits:["update:content"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref("");function c(){n.editable&&(s.value=n.content??"",r.value=!0)}function l(){r.value=!1,a("update:content",s.value)}const d=e.computed(()=>n.content?n.content.split(`
2
2
  `).filter(i=>i.trim().length>0):[]);return(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["content-block",{"content-block--editable":t.editable}]),onClick:c},[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("textarea",{key:0,"onUpdate:modelValue":m[0]||(m[0]=f=>s.value=f),class:"content-block__textarea",rows:Math.max(3,s.value.split(`
3
- `).length),autofocus:"",onBlur:l,onKeydown:e.withKeys(l,["escape"])},null,40,nl)),[[e.vModelText,s.value]]):e.renderSlot(i.$slots,"default",{key:1},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(f,p)=>(e.openBlock(),e.createElementBlock("p",{key:p,class:"content-block__para"},e.toDisplayString(f),1))),128)),d.value.length===0?(e.openBlock(),e.createElementBlock("span",ol,e.toDisplayString(t.editable?"点击编辑内容...":""),1)):e.createCommentVNode("",!0)],!0)],2))}}),[["__scopeId","data-v-26ff5a15"]]),al=["rows"],ll={class:"block-quote__text"},rl={key:0,class:"block-quote__cite"},Ot=x(e.defineComponent({__name:"BlockQuote",props:{content:{},cite:{},editable:{type:Boolean,default:!1}},emits:["update:content"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref("");function c(){n.editable&&(s.value=n.content,r.value=!0)}function l(){r.value=!1,a("update:content",s.value)}return(d,i)=>(e.openBlock(),e.createElementBlock("blockquote",{class:e.normalizeClass(["block-quote",{"block-quote--editable":t.editable}]),onClick:c},[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("textarea",{key:0,"onUpdate:modelValue":i[0]||(i[0]=m=>s.value=m),class:"block-quote__textarea",rows:Math.max(2,s.value.split(`
4
- `).length),autofocus:"",onBlur:l,onKeydown:e.withKeys(l,["escape"])},null,40,al)),[[e.vModelText,s.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("p",ll,e.toDisplayString(t.content),1),t.cite?(e.openBlock(),e.createElementBlock("footer",rl,"— "+e.toDisplayString(t.cite),1)):e.createCommentVNode("",!0)],64))],2))}}),[["__scopeId","data-v-b9688689"]]),sl={class:"code-block"},il={class:"code-block__header"},cl={class:"code-block__lang"},dl=["title"],ml={class:"code-block__copy-label"},fl={class:"code-block__pre"},ul={class:"code-block__code"},Lt=x(e.defineComponent({__name:"CodeBlock",props:{code:{},language:{default:"bash"},copyable:{type:Boolean,default:!0}},setup(t){const o=t,n=e.ref(!1);async function a(){if(!n.value)try{await navigator.clipboard.writeText(o.code),n.value=!0,setTimeout(()=>{n.value=!1},2e3)}catch{}}return(r,s)=>(e.openBlock(),e.createElementBlock("div",sl,[e.createElementVNode("div",il,[e.createElementVNode("span",cl,e.toDisplayString(t.language),1),t.copyable?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["code-block__copy-btn",{"code-block__copy-btn--copied":n.value}]),title:n.value?"已复制":"复制代码",onClick:a},[n.value?(e.openBlock(),e.createBlock(e.unref(A.CheckIcon),{key:0,size:13})):(e.openBlock(),e.createBlock(e.unref(A.CopyIcon),{key:1,size:13})),e.createElementVNode("span",ml,e.toDisplayString(n.value?"已复制":"复制"),1)],10,dl)):e.createCommentVNode("",!0)]),e.createElementVNode("pre",fl,[e.createElementVNode("code",ul,e.toDisplayString(t.code),1)])]))}}),[["__scopeId","data-v-0a994fa2"]]),zt=x(e.defineComponent({__name:"RefLink",props:{refId:{},label:{},href:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.label??n.refId);function s(c){n.href||c.preventDefault(),a("click",n.refId)}return(c,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"span"),{class:"ref-link",href:t.href,target:t.href?"_blank":void 0,rel:t.href?"noopener noreferrer":void 0,onClick:s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value)+" ",1),t.href?(e.openBlock(),e.createBlock(e.unref(A.ExternalLinkIcon),{key:0,class:"ref-link__icon",size:10})):e.createCommentVNode("",!0)]),_:1},8,["href","target","rel"]))}}),[["__scopeId","data-v-90da10b6"]]),pl=["aria-label"],gl={key:0,class:"of-modal__header"},_l={key:0,class:"of-modal__title"},bl={key:1,class:"of-modal__title-placeholder"},yl={class:"of-modal__body"},kl={key:1,class:"of-modal__footer"},he=x(e.defineComponent({inheritAttrs:!1,__name:"Modal",props:{modelValue:{type:Boolean},width:{default:"500px"},title:{},closable:{type:Boolean,default:!0},maskClosable:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},zIndex:{default:1e3}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,a=o;function r(){a("update:modelValue",!1)}function s(){n.maskClosable&&r()}function c(l){l.key==="Escape"&&n.modelValue&&r()}return e.watch(()=>n.modelValue,l=>{typeof document>"u"||(l?(document.body.style.overflow="hidden",document.addEventListener("keydown",c)):(document.body.style.overflow="",document.removeEventListener("keydown",c)))}),e.onBeforeUnmount(()=>{typeof document>"u"||(document.body.style.overflow="",document.removeEventListener("keydown",c))}),(l,d)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"of-modal"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-modal-backdrop",style:e.normalizeStyle({zIndex:t.zIndex}),onClick:e.withModifiers(s,["self"])},[e.createElementVNode("div",{class:e.normalizeClass(["of-modal",{"of-modal--centered":t.centered}]),style:e.normalizeStyle({width:t.width,maxWidth:"90vw"}),role:"dialog","aria-modal":"true","aria-label":t.title},[l.$slots.header||t.title||t.closable?(e.openBlock(),e.createElementBlock("div",gl,[e.renderSlot(l.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",_l,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",bl))],!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-modal__close",onClick:r,"aria-label":"关闭",type:"button"},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",yl,[e.renderSlot(l.$slots,"default",{},void 0,!0)]),l.$slots.footer?(e.openBlock(),e.createElementBlock("div",kl,[e.renderSlot(l.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],14,pl)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-e0e0e570"]]),pe=e.reactive([]);let hl=0;function Ee(t,o,n){const a=`toast-${Date.now()}-${hl++}`,r={id:a,type:t,message:o,title:n==null?void 0:n.title,duration:(n==null?void 0:n.duration)??3e3};return pe.push(r),r.duration&&r.duration>0&&setTimeout(()=>Ft(a),r.duration),a}function Ft(t){const o=pe.findIndex(n=>n.id===t);o!==-1&&pe.splice(o,1)}function ve(){return{toasts:pe,info:(t,o)=>Ee("info",t,o),success:(t,o)=>Ee("success",t,o),warning:(t,o)=>Ee("warning",t,o),error:(t,o)=>Ee("error",t,o),remove:Ft,clear:()=>pe.splice(0,pe.length)}}const El={class:"of-rich-editor__toolbar-actions"},Bl=["disabled"],Nl=["disabled"],Cl={class:"of-rich-editor__form"},Pt=x(e.defineComponent({__name:"RichTextEditor",props:{modelValue:{default:""},placeholder:{default:"请输入内容..."},editable:{type:Boolean,default:!0},minHeight:{default:220}},emits:["update:modelValue","change","save"],setup(t,{emit:o}){const n=t,a=o,r=ve(),s=e.ref(n.modelValue),c=e.ref(!1),l=e.ref(""),d=e.ref(""),i=e.ref(null),m={toolbar:{container:[["bold","italic","underline","strike"],[{header:[1,2,3,!1]}],[{list:"ordered"},{list:"bullet"}],[{align:[]}],["blockquote","code-block"],["link","image"],["clean"]]}};e.watch(()=>n.modelValue,y=>{y!==s.value&&(s.value=y)});const f=e.computed(()=>n.editable);function p(y){s.value=y,a("update:modelValue",y),a("change",y)}function u(){var k,T;const y=(T=(k=i.value)==null?void 0:k.getQuill)==null?void 0:T.call(k);if(!y)return;const g=y.getSelection(!0),b=(d.value||"").trim();b&&(l.value.trim()?(y.insertText(g.index,l.value.trim(),"link",b),y.setSelection(g.index+l.value.trim().length,0)):y.format("link",b),c.value=!1,l.value="",d.value="")}function B(){f.value&&(c.value=!0)}function C(){a("save",s.value||""),r.success("内容已保存")}return(y,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-rich-editor",{"is-readonly":!f.value}]),style:e.normalizeStyle({"--of-rich-editor-min-height":`${t.minHeight}px`})},[e.createElementVNode("div",El,[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",disabled:!f.value,onClick:B}," 插入链接 ",8,Bl),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",disabled:!f.value,onClick:C}," 保存 ",8,Nl)]),e.createVNode(e.unref(Jn.QuillEditor),{ref_key:"editorRef",ref:i,theme:"snow","content-type":"html",content:s.value,options:{readOnly:!f.value,placeholder:t.placeholder,modules:m},"onUpdate:content":p},null,8,["content","options"]),e.createVNode(he,{modelValue:c.value,"onUpdate:modelValue":g[3]||(g[3]=b=>c.value=b),title:"插入链接",width:"480px"},{footer:e.withCtx(()=>[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",onClick:g[2]||(g[2]=b=>c.value=!1)},"取消"),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",onClick:u}," 确认 ")]),default:e.withCtx(()=>[e.createElementVNode("div",Cl,[g[4]||(g[4]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-text"},"链接文本",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-text","onUpdate:modelValue":g[0]||(g[0]=b=>l.value=b),class:"of-rich-editor__input",placeholder:"请输入链接文本"},null,512),[[e.vModelText,l.value]]),g[5]||(g[5]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-url"},"链接地址",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-url","onUpdate:modelValue":g[1]||(g[1]=b=>d.value=b),class:"of-rich-editor__input",placeholder:"https://example.com"},null,512),[[e.vModelText,d.value]])])]),_:1},8,["modelValue"])],6))}}),[["__scopeId","data-v-84eb371d"]]),Sl={class:"of-form-designer"},wl={class:"of-form-designer__header"},$l={class:"of-form-designer__title"},xl={class:"of-form-designer__meta"},Dl={class:"of-form-designer__inputs"},Tl=["value","disabled","onInput"],Al=["value","disabled","onChange"],Ml=["value"],Rl={class:"of-form-designer__checkbox-label"},Il=["checked","disabled","onChange"],Vl={class:"of-form-designer__checkbox-label"},Ol=["checked","disabled","onChange"],Ll=["onClick"],zl={key:1,class:"of-form-designer__options-wrap"},Fl=["value","disabled","onChange"],Ut=x(e.defineComponent({__name:"FormDesigner",props:{schema:{},title:{default:"Form Designer"},readonly:{type:Boolean,default:!1}},emits:["update:schema","change"],setup(t,{emit:o}){const n=[{value:"text",label:"文本"},{value:"number",label:"数字"},{value:"select",label:"单选"},{value:"multi_select",label:"多选"},{value:"date",label:"日期"},{value:"datetime",label:"日期时间"},{value:"checkbox",label:"勾选"},{value:"url",label:"链接"},{value:"email",label:"邮箱"},{value:"phone",label:"电话"},{value:"rating",label:"评分"},{value:"user",label:"用户"},{value:"attachment",label:"附件"},{value:"relation",label:"关联"},{value:"formula",label:"公式"}],a=t,r=o,s=e.ref(l(a.schema));e.watch(()=>a.schema,y=>{s.value=l(y)},{deep:!0});const c=e.computed(()=>`${s.value.fields.length} 个字段`);function l(y){return{...y,fields:y.fields.map(g=>{var b;return{...g,options:(b=g.options)==null?void 0:b.map(k=>({...k}))}}),views:y.views.map(g=>({...g}))}}function d(){const y=l(s.value);r("update:schema",y),r("change",y)}function i(){return{id:`field_${Date.now()}`,name:"新字段",type:"text",required:!1,hidden:!1}}function m(){a.readonly||(s.value.fields.push(i()),d())}function f(y){a.readonly||(s.value.fields=s.value.fields.filter(g=>g.id!==y),d())}function p(y,g){var b;y.type=g,g==="select"||g==="multi_select"?y.options=(b=y.options)!=null&&b.length?y.options:[{value:"option_1",label:"选项 1"},{value:"option_2",label:"选项 2"}]:delete y.options,d()}function u(y,g){const b=g.split(",").map(k=>k.trim()).filter(Boolean);y.options=b.map(k=>({value:k,label:k})),d()}function B(y){var g;return((g=y.options)==null?void 0:g.map(b=>b.label).join(", "))??""}function C(){d()}return(y,g)=>(e.openBlock(),e.createElementBlock("div",Sl,[e.createElementVNode("div",wl,[e.createElementVNode("div",null,[e.createElementVNode("h3",$l,e.toDisplayString(t.title),1),e.createElementVNode("p",xl,e.toDisplayString(s.value.name)+" · "+e.toDisplayString(c.value),1)]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__add-btn",onClick:m},[e.createVNode(e.unref(A.Plus),{size:14}),g[1]||(g[1]=e.createTextVNode(" 添加字段 ",-1))]))]),e.createVNode(e.unref(Ae.VueDraggable),{modelValue:s.value.fields,"onUpdate:modelValue":g[0]||(g[0]=b=>s.value.fields=b),handle:".of-form-designer__drag",disabled:t.readonly,animation:150,onEnd:C},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value.fields,b=>(e.openBlock(),e.createElementBlock("div",{key:b.id,class:"of-form-designer__row"},[e.createElementVNode("span",{class:e.normalizeClass(["of-form-designer__drag",{disabled:t.readonly}])},[e.createVNode(e.unref(A.GripVertical),{size:14})],2),e.createElementVNode("div",Dl,[e.createElementVNode("input",{value:b.name,class:"of-form-designer__input",placeholder:"字段名称",disabled:t.readonly,onInput:k=>{b.name=String(k.target.value),d()}},null,40,Tl),e.createElementVNode("select",{class:"of-form-designer__select",value:b.type,disabled:t.readonly,onChange:k=>p(b,k.target.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,k=>e.createElementVNode("option",{key:k.value,value:k.value},e.toDisplayString(k.label),9,Ml)),64))],40,Al),e.createElementVNode("label",Rl,[e.createElementVNode("input",{type:"checkbox",checked:!!b.required,disabled:t.readonly,onChange:k=>{b.required=k.target.checked,d()}},null,40,Il),g[2]||(g[2]=e.createTextVNode(" 必填 ",-1))]),e.createElementVNode("label",Vl,[e.createElementVNode("input",{type:"checkbox",checked:!!b.hidden,disabled:t.readonly,onChange:k=>{b.hidden=k.target.checked,d()}},null,40,Ol),g[3]||(g[3]=e.createTextVNode(" 隐藏 ",-1))])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__remove-btn",onClick:k=>f(b.id)},[e.createVNode(e.unref(A.Trash2),{size:14})],8,Ll)),b.type==="select"||b.type==="multi_select"?(e.openBlock(),e.createElementBlock("div",zl,[g[4]||(g[4]=e.createElementVNode("label",{class:"of-form-designer__options-label"},"选项(逗号分隔)",-1)),e.createElementVNode("input",{value:B(b),class:"of-form-designer__input",placeholder:"例如:待办, 进行中, 完成",disabled:t.readonly,onChange:k=>u(b,String(k.target.value))},null,40,Fl)])):e.createCommentVNode("",!0)]))),128))]),_:1},8,["modelValue","disabled"])]))}}),[["__scopeId","data-v-8aed52c2"]]),Pl={class:"of-color-panel__header"},Ul={class:"of-color-panel__label"},vl={class:"of-color-panel__value"},Kl={class:"of-color-panel__picker-row"},Gl=["disabled"],Hl=["disabled"],Wl={class:"of-color-panel__presets"},ql=["title","disabled","onClick"],vt=x(e.defineComponent({__name:"ColorPanel",props:{modelValue:{},presets:{default:()=>["#3b82f6","#10b981","#f59e0b","#ef4444","#8b5cf6","#06b6d4"]},showInput:{type:Boolean,default:!0},disabled:{type:Boolean},label:{default:"颜色"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.computed({get:()=>n.modelValue||"#3b82f6",set:c=>{a("update:modelValue",c),a("change",c)}});function s(c){n.disabled||(r.value=c)}return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-color-panel",{disabled:t.disabled}])},[e.createElementVNode("div",Pl,[e.createElementVNode("span",Ul,e.toDisplayString(t.label),1),e.createElementVNode("span",vl,e.toDisplayString(r.value),1)]),e.createElementVNode("div",Kl,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":l[0]||(l[0]=d=>r.value=d),class:"of-color-panel__picker",type:"color",disabled:t.disabled},null,8,Gl),[[e.vModelText,r.value]]),t.showInput?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":l[1]||(l[1]=d=>r.value=d),class:"of-color-panel__input",type:"text",disabled:t.disabled,placeholder:"#3b82f6"},null,8,Hl)),[[e.vModelText,r.value]]):e.createCommentVNode("",!0)]),e.createElementVNode("div",Wl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.presets,d=>(e.openBlock(),e.createElementBlock("button",{key:d,type:"button",class:"of-color-panel__preset",title:d,style:e.normalizeStyle({backgroundColor:d}),disabled:t.disabled,onClick:i=>s(d)},null,12,ql))),128))])],2))}}),[["__scopeId","data-v-6c54d0c7"]]),Zl={class:"of-person-panel__row"},jl=["src","alt"],Yl={key:1},Xl={key:1,class:"of-person-panel__avatar empty"},Ql=["disabled"],Jl={value:null},er=["value"],Kt=x(e.defineComponent({__name:"PersonPanel",props:{modelValue:{default:null},people:{},placeholder:{default:"请选择负责人"},disabled:{type:Boolean}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.computed({get:()=>n.modelValue,set:l=>{a("update:modelValue",l),a("change",l)}}),s=e.computed(()=>n.people.find(l=>l.id===r.value)??null);function c(l){return(l||"?").trim().slice(0,1).toUpperCase()}return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-person-panel",{disabled:t.disabled}])},[d[1]||(d[1]=e.createElementVNode("label",{class:"of-person-panel__label"},"负责人",-1)),e.createElementVNode("div",Zl,[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-person-panel__avatar",style:e.normalizeStyle({background:s.value.color||"var(--of-color-primary-500)"})},[s.value.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:s.value.avatar,alt:s.value.name},null,8,jl)):(e.openBlock(),e.createElementBlock("span",Yl,e.toDisplayString(c(s.value.name)),1))],4)):(e.openBlock(),e.createElementBlock("div",Xl,"-")),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),class:"of-person-panel__select",disabled:t.disabled},[e.createElementVNode("option",Jl,e.toDisplayString(t.placeholder),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.people,i=>(e.openBlock(),e.createElementBlock("option",{key:i.id,value:i.id},[e.createTextVNode(e.toDisplayString(i.name),1),i.title?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" · "+e.toDisplayString(i.title),1)],64)):e.createCommentVNode("",!0)],8,er))),128))],8,Ql),[[e.vModelSelect,r.value]])])],2))}}),[["__scopeId","data-v-671e95f5"]]),tr={class:"of-file-upload"},nr=["multiple","accept","disabled"],or=["disabled"],ar={key:0,class:"of-file-upload__list"},lr={class:"of-file-upload__name"},rr={class:"of-file-upload__size"},sr=["disabled","onClick"],Gt=x(e.defineComponent({__name:"FileUpload",props:{modelValue:{default:()=>[]},multiple:{type:Boolean,default:!1},accept:{default:""},maxCount:{default:1},disabled:{type:Boolean},hint:{default:"点击或拖拽文件到此处上传"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref(null);function c(p){if(!p)return n.modelValue??[];const u=Array.from(p);return(n.multiple?[...n.modelValue??[],...u]:u.slice(0,1)).slice(0,Math.max(n.maxCount,1))}function l(p){if(n.disabled)return;const u=c(p);a("update:modelValue",u),a("change",u)}function d(p){l(p.target.files)}function i(p){var u;p.preventDefault(),r.value=!1,l(((u=p.dataTransfer)==null?void 0:u.files)??null)}function m(p){if(n.disabled)return;const u=[...n.modelValue??[]];u.splice(p,1),a("update:modelValue",u),a("change",u)}function f(){var p;n.disabled||(p=s.value)==null||p.click()}return(p,u)=>(e.openBlock(),e.createElementBlock("div",tr,[e.createElementVNode("input",{ref_key:"fileInput",ref:s,class:"of-file-upload__native",type:"file",multiple:t.multiple,accept:t.accept,disabled:t.disabled,onChange:d},null,40,nr),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["of-file-upload__dropzone",{dragging:r.value,disabled:t.disabled}]),disabled:t.disabled,onClick:f,onDragover:u[0]||(u[0]=e.withModifiers(B=>r.value=!0,["prevent"])),onDragleave:u[1]||(u[1]=e.withModifiers(B=>r.value=!1,["prevent"])),onDrop:i},[e.createVNode(e.unref(A.Upload),{size:16}),e.createElementVNode("span",null,e.toDisplayString(t.hint),1)],42,or),t.modelValue&&t.modelValue.length?(e.openBlock(),e.createElementBlock("ul",ar,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modelValue,(B,C)=>(e.openBlock(),e.createElementBlock("li",{key:`${B.name}-${C}`,class:"of-file-upload__item"},[e.createElementVNode("span",lr,e.toDisplayString(B.name),1),e.createElementVNode("span",rr,e.toDisplayString((B.size/1024).toFixed(1))+" KB",1),e.createElementVNode("button",{type:"button",class:"of-file-upload__remove",disabled:t.disabled,onClick:y=>m(C)},[e.createVNode(e.unref(A.X),{size:14})],8,sr)]))),128))])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-75f8d933"]]),ir={class:"prop-row"},cr={class:"prop-row__key"},dr={class:"prop-row__value-area"},mr={key:0,class:"prop-row__plain-text"},Ke=x(e.defineComponent({__name:"PropRow",props:{propKey:{},value:{},type:{default:"text"},statusColorMap:{},priorityColorMap:{},customColorMap:{},valueColor:{},valueBg:{},dotColor:{}},setup(t){const o=t,n=e.computed(()=>!o.type||o.type==="date"||o.type==="text"),a=e.computed(()=>n.value?null:o.type==="status"?Q(o.value,J(ie,o.statusColorMap)):o.type==="priority"?Q(o.value,J(fe,o.priorityColorMap)):o.type==="badge"&&o.customColorMap?Q(o.value,o.customColorMap):null),r=e.computed(()=>a.value?a.value.style:{color:o.valueColor??"var(--of-color-gray-700)",background:o.valueBg??"var(--of-color-gray-100)"}),s=e.computed(()=>{var d;return((d=a.value)==null?void 0:d.label)??o.value}),c=e.computed(()=>{var d;return((d=a.value)==null?void 0:d.dot)??o.dotColor}),l=e.computed(()=>!!c.value);return(d,i)=>(e.openBlock(),e.createElementBlock("div",ir,[e.createElementVNode("span",cr,e.toDisplayString(t.propKey),1),e.createElementVNode("div",dr,[n.value?(e.openBlock(),e.createElementBlock("span",mr,e.toDisplayString(t.value),1)):(e.openBlock(),e.createElementBlock("span",{key:1,class:"prop-row__badge",style:e.normalizeStyle(r.value)},[l.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"prop-row__dot",style:e.normalizeStyle({backgroundColor:c.value})},null,4)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(s.value),1)],4))])]))}}),[["__scopeId","data-v-ef40ebd2"]]),fr={class:"prop-panel"},ur={class:"prop-panel__title"},pr={class:"prop-panel__body"},gr={key:0,class:"prop-panel__extra"},Ge=x(e.defineComponent({__name:"PropPanel",props:{items:{},title:{default:"属性"},collapsible:{type:Boolean,default:!1}},setup(t){const o=t,n=e.ref(!1);function a(){o.collapsible&&(n.value=!n.value)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",fr,[e.createElementVNode("div",{class:e.normalizeClass(["prop-panel__header",{"prop-panel__header--collapsible":t.collapsible}]),onClick:a},[e.createElementVNode("span",ur,e.toDisplayString(t.title),1),t.collapsible?(e.openBlock(),e.createBlock(e.unref(A.ChevronDownIcon),{key:0,class:e.normalizeClass(["prop-panel__chevron",{"prop-panel__chevron--up":!n.value}]),size:14},null,8,["class"])):e.createCommentVNode("",!0)],2),e.withDirectives(e.createElementVNode("div",pr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,c=>(e.openBlock(),e.createBlock(Ke,{key:c.key,"prop-key":c.key,value:c.value,"value-color":c.valueColor,"value-bg":c.valueBg,"dot-color":c.dotColor},null,8,["prop-key","value","value-color","value-bg","dot-color"]))),128)),r.$slots.extra?(e.openBlock(),e.createElementBlock("div",gr,[e.renderSlot(r.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,!n.value]])]))}}),[["__scopeId","data-v-3fe44a05"]]),_r={class:"comment-item"},br={class:"comment-item__content"},yr={class:"comment-item__header"},kr={class:"comment-item__author"},hr={key:0,class:"comment-item__action"},Er={class:"comment-item__time"},Br={class:"comment-item__text"},He=x(e.defineComponent({__name:"CommentItem",props:{comment:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",_r,[e.createElementVNode("div",{class:"comment-item__avatar",style:e.normalizeStyle({backgroundColor:t.comment.avatarColor??"var(--of-color-primary-500)"})},e.toDisplayString(t.comment.authorInitial),5),e.createElementVNode("div",br,[e.createElementVNode("div",yr,[e.createElementVNode("span",kr,e.toDisplayString(t.comment.author),1),t.comment.action?(e.openBlock(),e.createElementBlock("span",hr,e.toDisplayString(t.comment.action),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Er,e.toDisplayString(t.comment.time),1)]),e.createElementVNode("div",Br,e.toDisplayString(t.comment.content),1)])]))}}),[["__scopeId","data-v-daea61a3"]]),Nr={class:"detail-layout"},Cr={class:"detail-layout__main"},Sr={class:"detail-layout__title"},wr={class:"detail-layout__meta"},$r={key:0,class:"detail-layout__badge detail-layout__badge--role"},xr={key:1,class:"detail-layout__meta-text"},Dr={class:"detail-layout__section"},Tr={class:"detail-layout__description"},Ar={key:0,class:"detail-layout__desc-placeholder"},Mr={class:"detail-layout__section"},Rr={class:"detail-layout__comments"},Ir={key:0,class:"detail-layout__comment-list"},Vr={key:1,class:"detail-layout__empty-hint"},Or={class:"detail-layout__sidebar"},Ht=x(e.defineComponent({__name:"DetailLayout",props:{task:{},comments:{default:()=>[]},propItems:{default:()=>[]},descriptionContent:{default:""},descriptionEditable:{type:Boolean,default:!1}},emits:["update:descriptionContent"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>({todo:{text:"#64748B",bg:"#F1F5F9"},in_progress:{text:"#2563EB",bg:"#DBEAFE"},blocked:{text:"#D97706",bg:"#FEF3C7"},done:{text:"#22C55E",bg:"#DCFCE7"}})[n.task.status]??{text:"#64748B",bg:"#F1F5F9"}),s=e.computed(()=>({P0:{text:"#DC2626",bg:"#FEE2E2"},P1:{text:"#D97706",bg:"#FEF3C7"},P2:{text:"#2563EB",bg:"#DBEAFE"},P3:{text:"#64748B",bg:"#F1F5F9"}})[n.task.priority]??{text:"#64748B",bg:"#F1F5F9"}),c=e.computed(()=>({todo:"待处理",in_progress:"进行中",blocked:"阻塞",done:"已完成"})[n.task.status]??n.task.status),l=e.computed(()=>n.descriptionContent||n.task.description||"");function d(i){a("update:descriptionContent",i)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",Nr,[e.createElementVNode("div",Cr,[e.createElementVNode("h1",Sr,e.toDisplayString(t.task.title),1),e.createElementVNode("div",wr,[i.$slots.meta?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:"detail-layout__badge",style:e.normalizeStyle({color:r.value.text,backgroundColor:r.value.bg})},e.toDisplayString(c.value),5),e.createElementVNode("span",{class:"detail-layout__badge",style:e.normalizeStyle({color:s.value.text,backgroundColor:s.value.bg})},e.toDisplayString(t.task.priority),5),t.task.role?(e.openBlock(),e.createElementBlock("span",$r,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0),t.task.assignee?(e.openBlock(),e.createElementBlock("span",xr,e.toDisplayString(t.task.assignee),1)):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"meta",{},void 0,!0)]),e.createElementVNode("div",Dr,[m[0]||(m[0]=e.createElementVNode("div",{class:"detail-layout__section-title"},"描述",-1)),e.createElementVNode("div",Tr,[e.renderSlot(i.$slots,"description",{},()=>[e.createVNode(e.unref(Ue),{content:l.value,editable:t.descriptionEditable,"onUpdate:content":d},null,8,["content","editable"]),l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",Ar," 暂无描述 "))],!0)])]),e.createElementVNode("div",Mr,[m[1]||(m[1]=e.createElementVNode("div",{class:"detail-layout__section-title"},"活动记录",-1)),e.createElementVNode("div",Rr,[e.renderSlot(i.$slots,"comments",{},()=>[t.comments&&t.comments.length>0?(e.openBlock(),e.createElementBlock("div",Ir,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comments,f=>(e.openBlock(),e.createBlock(He,{key:f.id,comment:f},null,8,["comment"]))),128))])):(e.openBlock(),e.createElementBlock("p",Vr,"暂无活动记录"))],!0)])])]),e.createElementVNode("div",Or,[e.renderSlot(i.$slots,"props",{},()=>[t.propItems&&t.propItems.length>0?(e.openBlock(),e.createBlock(Ge,{key:0,items:t.propItems,title:"属性"},null,8,["items"])):e.createCommentVNode("",!0)],!0)])]))}}),[["__scopeId","data-v-6c57954d"]]),Lr={class:"of-dashboard-chart"},We=x(e.defineComponent({__name:"BarChart",props:{title:{default:""},xAxisData:{default:()=>["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]},seriesName:{default:"Value"},data:{default:()=>[120,200,150,80,70,110,130]},colors:{default:()=>["#3b82f6"]}},setup(t){const o=t,n=e.ref(null);let a=null,r=null;const s=()=>{n.value&&(a||(a=pt.init(n.value)),a.setOption({color:o.colors,title:o.title?{text:o.title,left:"center",textStyle:{fontSize:14,fontWeight:600}}:void 0,tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},grid:{left:12,right:12,top:o.title?42:16,bottom:8,containLabel:!0},xAxis:{type:"category",data:o.xAxisData},yAxis:{type:"value"},series:[{name:o.seriesName,type:"bar",barMaxWidth:36,data:o.data}]}))};return e.onMounted(()=>{s(),n.value&&(r=new ResizeObserver(()=>a==null?void 0:a.resize()),r.observe(n.value))}),e.onUnmounted(()=>{r==null||r.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.xAxisData,o.seriesName,o.data,o.colors],s,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",Lr,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-69dd32c8"]]),zr={class:"of-dashboard-chart"},Be=x(e.defineComponent({__name:"PieChart",props:{title:{default:""},data:{default:()=>[{name:"Todo",value:12},{name:"In Progress",value:9},{name:"Done",value:18}]},colors:{default:()=>["#3b82f6","#10b981","#f59e0b","#8b5cf6","#ef4444"]},doughnut:{type:Boolean,default:!1},showLegend:{type:Boolean,default:!0}},setup(t){const o=t,n=e.ref(null);let a=null,r=null;const s=()=>{n.value&&(a||(a=pt.init(n.value)),a.setOption({color:o.colors,title:o.title?{text:o.title,left:"center",textStyle:{fontSize:14,fontWeight:600}}:void 0,tooltip:{trigger:"item"},legend:o.showLegend?{bottom:0}:void 0,series:[{type:"pie",radius:o.doughnut?["45%","70%"]:"65%",center:["50%",o.showLegend?"45%":"50%"],data:o.data,label:{formatter:"{b}: {d}%"}}]}))};return e.onMounted(()=>{s(),n.value&&(r=new ResizeObserver(()=>a==null?void 0:a.resize()),r.observe(n.value))}),e.onUnmounted(()=>{r==null||r.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.data,o.colors,o.doughnut,o.showLegend],s,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",zr,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-b2ae9f47"]]),qe=e.defineComponent({__name:"DoughnutChart",props:{title:{},data:{},colors:{},showLegend:{type:Boolean}},setup(t){return(o,n)=>(e.openBlock(),e.createBlock(Be,{title:t.title,data:t.data,colors:t.colors,"show-legend":t.showLegend,doughnut:""},null,8,["title","data","colors","show-legend"]))}}),Fr={class:"of-number-card"},Pr={class:"of-number-card__title"},Ur={class:"of-number-card__value-row"},vr={key:0,class:"of-number-card__compare"},Ze=x(e.defineComponent({__name:"NumberCard",props:{title:{default:"Metric"},value:{default:0},unit:{default:""},compare:{default:""},trend:{default:void 0},color:{default:"var(--of-color-blue-600)"}},setup(t){const o=t,n=e.computed(()=>o.value>=1e4?`${(o.value/1e4).toFixed(1)}w${o.unit}`:`${o.value}${o.unit}`);return(a,r)=>(e.openBlock(),e.createElementBlock("div",Fr,[e.createElementVNode("p",Pr,e.toDisplayString(t.title),1),e.createElementVNode("div",Ur,[e.createElementVNode("p",{class:"of-number-card__value",style:e.normalizeStyle({color:t.color})},e.toDisplayString(n.value),5),t.trend==="up"?(e.openBlock(),e.createBlock(e.unref(A.TrendingUpIcon),{key:0,class:"of-number-card__trend up",size:16})):t.trend==="down"?(e.openBlock(),e.createBlock(e.unref(A.TrendingDownIcon),{key:1,class:"of-number-card__trend down",size:16})):e.createCommentVNode("",!0)]),t.compare?(e.openBlock(),e.createElementBlock("p",vr,"环比 "+e.toDisplayString(t.compare),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-c6dc2d84"]]),Kr={class:"of-table-chart"},Gr={key:0,class:"of-table-chart__title"},Hr={class:"of-table-chart__wrapper"},Wr={class:"of-table-chart__table"},je=x(e.defineComponent({__name:"TableChart",props:{title:{default:""},columns:{default:()=>[{key:"name",label:"Name"},{key:"status",label:"Status",align:"center"},{key:"value",label:"Value",align:"right"}]},rows:{default:()=>[{id:1,name:"Alpha",status:"In Progress",value:120},{id:2,name:"Beta",status:"Done",value:86},{id:3,name:"Gamma",status:"Todo",value:42}]}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Kr,[t.title?(e.openBlock(),e.createElementBlock("p",Gr,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Hr,[e.createElementVNode("table",Wr,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,a=>(e.openBlock(),e.createElementBlock("th",{key:a.key,style:e.normalizeStyle({textAlign:a.align??"left"})},e.toDisplayString(a.label),5))),128))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.rows,(a,r)=>(e.openBlock(),e.createElementBlock("tr",{key:a.id??r},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,s=>(e.openBlock(),e.createElementBlock("td",{key:s.key,style:e.normalizeStyle({textAlign:s.align??"left"})},e.toDisplayString(a[s.key]??"-"),5))),128))]))),128))])])])]))}}),[["__scopeId","data-v-aacba13e"]]),qr={class:"of-dashboard"},Zr={class:"of-dashboard__header"},jr={class:"of-dashboard__title"},Wt=x(e.defineComponent({__name:"index",props:{title:{default:"Dashboard"},widgets:{default:()=>[]},columns:{default:4},gap:{default:16}},setup(t){const o=t,n={bar:We,pie:Be,doughnut:qe,"number-card":Ze,table:je},a=e.computed(()=>({gridTemplateColumns:`repeat(${o.columns}, minmax(0, 1fr))`,gap:`${o.gap}px`})),r=e.computed(()=>o.widgets.length>0?o.widgets:[{id:"metric-1",type:"number-card",title:"总任务",data:{value:128,trend:"up",compare:"+12%"},colSpan:1},{id:"metric-2",type:"number-card",title:"已完成",data:{value:84,trend:"up",compare:"+8%"},colSpan:1},{id:"bar-1",type:"bar",title:"周趋势",data:[12,17,14,20,23,16,19],colSpan:2},{id:"pie-1",type:"pie",title:"状态分布",data:[{name:"Todo",value:34},{name:"In Progress",value:52},{name:"Done",value:42}],colSpan:2},{id:"table-1",type:"table",title:"关键任务",data:{columns:[{key:"name",label:"任务"},{key:"owner",label:"负责人"},{key:"status",label:"状态"}],rows:[{name:"Migrate Dashboard",owner:"FE",status:"In Progress"},{name:"Type Definition",owner:"FE",status:"Done"},{name:"Integrate RichText",owner:"FE",status:"Todo"}]},colSpan:4}]);return(s,c)=>(e.openBlock(),e.createElementBlock("section",qr,[e.createElementVNode("header",Zr,[e.createElementVNode("h3",jr,e.toDisplayString(t.title),1)]),e.createElementVNode("div",{class:"of-dashboard__grid",style:e.normalizeStyle(a.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,l=>(e.openBlock(),e.createElementBlock("article",{key:l.id,class:"of-dashboard__item",style:e.normalizeStyle({gridColumn:`span ${l.colSpan??1}`,gridRow:`span ${l.rowSpan??1}`})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n[l.type]),e.mergeProps({title:l.title,data:l.data},{ref_for:!0},l.config??{}),null,16,["title","data"]))],4))),128))],4)]))}}),[["__scopeId","data-v-07a2e2ae"]]),Yr={class:"of-card-title"},Xr={class:"of-card-meta"},Qr={class:"of-card-id"},Jr={key:0,class:"of-card-date"},es={key:1,class:"of-card-role-badge"},ts={class:"of-card-tags"},Ye=x(e.defineComponent({__name:"KanbanCard",props:{task:{},dragging:{type:Boolean,default:!1},priorityColorMap:{},statusColorMap:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>Q(n.task.priority,J(fe,n.priorityColorMap))),s=e.computed(()=>Q(n.task.status,J(ie,n.statusColorMap))),c=e.computed(()=>r.value.style),l=e.computed(()=>s.value.style),d=e.computed(()=>s.value.label),i=e.computed(()=>r.value.label);function m(p){if(!p)return"";const u=new Date(p);return isNaN(u.getTime())?p:`${u.getMonth()+1}/${u.getDate()}`}const f=e.computed(()=>m(n.task.updatedAt??n.task.endDate));return(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-kanban-card",{"of-kanban-card--dragging":t.dragging}]),onClick:u[0]||(u[0]=B=>a("click",t.task))},[e.createElementVNode("div",Yr,e.toDisplayString(t.task.title),1),e.createElementVNode("div",Xr,[e.createElementVNode("span",Qr,e.toDisplayString(t.task.id),1),f.value?(e.openBlock(),e.createElementBlock("span",Jr,e.toDisplayString(f.value),1)):e.createCommentVNode("",!0),u[1]||(u[1]=e.createElementVNode("span",{class:"of-card-spacer"},null,-1)),t.task.role?(e.openBlock(),e.createElementBlock("span",es,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ts,[e.createElementVNode("span",{class:"of-badge",style:e.normalizeStyle(c.value)},e.toDisplayString(i.value),5),e.createElementVNode("span",{class:"of-badge",style:e.normalizeStyle(l.value)},e.toDisplayString(d.value),5)])],2))}}),[["__scopeId","data-v-28da7aba"]]),ns={class:"of-kanban-column"},os={class:"of-col-header"},as={class:"of-col-title"},ls={class:"of-col-count"},Xe=x(e.defineComponent({__name:"KanbanColumn",props:{column:{},ghostClass:{default:"of-ghost"},priorityColorMap:{},statusColorMap:{}},emits:["add-card","card-click","update:column"],setup(t,{emit:o}){const n=t,a=o,r=e.ref([...n.column.tasks]);e.watch(()=>n.column.tasks,c=>{c.length===r.value.length&&c.every((d,i)=>{var m;return d.id===((m=r.value[i])==null?void 0:m.id)})||(r.value=[...c])}),e.watch(r,c=>{a("update:column",{...n.column,tasks:c})});const s=e.computed(()=>{if(n.column.color)return n.column.color;const c=J(ie,n.statusColorMap),l=c[n.column.id],d=c[n.column.title],i=l??d;return(i==null?void 0:i.dot)??(i==null?void 0:i.text)??"var(--of-color-gray-400)"});return(c,l)=>(e.openBlock(),e.createElementBlock("div",ns,[e.createElementVNode("div",os,[e.createElementVNode("span",{class:"of-col-dot",style:e.normalizeStyle({background:s.value})},null,4),e.createElementVNode("span",as,e.toDisplayString(t.column.title),1),e.createElementVNode("span",ls,e.toDisplayString(r.value.length),1),l[3]||(l[3]=e.createElementVNode("span",{class:"of-col-spacer"},null,-1)),e.createElementVNode("button",{class:"of-col-add-btn",onClick:l[0]||(l[0]=d=>a("add-card",t.column.id))},[e.createVNode(e.unref(A.Plus),{size:14})])]),e.createVNode(e.unref(Ae.VueDraggable),{modelValue:r.value,"onUpdate:modelValue":l[2]||(l[2]=d=>r.value=d),group:{name:"kanban",pull:!0,put:!0},"item-key":"id","ghost-class":t.ghostClass,"chosen-class":"of-chosen",animation:200,class:"of-col-cards"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,d=>(e.openBlock(),e.createBlock(Ye,{key:d.id,task:d,onClick:l[1]||(l[1]=i=>a("card-click",i))},null,8,["task"]))),128))]),_:1},8,["modelValue","ghost-class"])]))}}),[["__scopeId","data-v-b8bee7d5"]]),rs={class:"of-quick-add"},ss={class:"of-quick-add-placeholder"},is=["placeholder"],Qe=x(e.defineComponent({__name:"QuickAddRow",props:{placeholder:{default:"快速创建任务,按 Enter 提交"}},emits:["submit","cancel"],setup(t,{emit:o}){const n=o,a=e.ref(!1),r=e.ref(""),s=e.ref(null);async function c(){var m;a.value=!0,await e.nextTick(),(m=s.value)==null||m.focus()}function l(){a.value=!1,r.value=""}function d(m){if(m.key==="Enter"){const f=r.value.trim();f&&(n("submit",f),r.value="",l())}else m.key==="Escape"&&(n("cancel"),l())}function i(){setTimeout(()=>{r.value.trim()||l()},150)}return(m,f)=>(e.openBlock(),e.createElementBlock("div",rs,[a.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:s,"onUpdate:modelValue":f[0]||(f[0]=p=>r.value=p),type:"text",class:"of-quick-add-input",placeholder:t.placeholder,onKeydown:d,onBlur:i},null,40,is)),[[e.vModelText,r.value]]):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-quick-add-trigger",onClick:c},[e.createVNode(e.unref(A.Plus),{size:14,class:"of-quick-add-icon"}),e.createElementVNode("span",ss,e.toDisplayString(t.placeholder),1)]))]))}}),[["__scopeId","data-v-6ff7d429"]]),cs={class:"of-kanban-board"},ds={class:"of-kanban-inner"},qt=x(e.defineComponent({__name:"KanbanBoard",props:{columns:{default:()=>[]},records:{default:()=>[]},kanbanFieldId:{default:"status"},laneOrder:{default:()=>[]},laneTitles:{default:()=>({})},addColumnVisible:{type:Boolean,default:!1}},emits:["update:columns","add-column","card-click"],setup(t,{emit:o}){const n=t,a=o,r=()=>n.columns.length>0?JSON.parse(JSON.stringify(n.columns)):n.records.length>0?Mt(n.records,{kanbanFieldId:n.kanbanFieldId,laneOrder:n.laneOrder,laneTitles:n.laneTitles}):[],s=e.ref(r());e.watch(()=>[n.columns,n.records,n.kanbanFieldId,n.laneOrder,n.laneTitles],()=>{s.value=r()});function c(i){const m=s.value.findIndex(f=>f.id===i.id);if(m!==-1){const f=i.tasks.map(p=>({...p,status:i.id}));s.value[m]={...i,tasks:f},a("update:columns",JSON.parse(JSON.stringify(s.value)))}}function l(i){}function d(i,m){const f=s.value.find(B=>B.id===i);if(!f)return;const p={id:`TASK-${Date.now()}`,title:m,status:i,priority:"P3"},u={...f,tasks:[...f.tasks,p]};c(u)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",cs,[e.createElementVNode("div",ds,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,f=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"of-kanban-col-wrapper"},[e.createVNode(Xe,{column:f,onAddCard:l,onCardClick:m[0]||(m[0]=p=>a("card-click",p)),"onUpdate:column":c},null,8,["column"]),e.createVNode(Qe,{class:"of-quick-add-below",onSubmit:p=>d(f.id,p)},null,8,["onSubmit"])]))),128)),t.addColumnVisible?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-add-column-btn",onClick:m[1]||(m[1]=f=>a("add-column"))},[e.createVNode(e.unref(A.Plus),{size:16}),m[2]||(m[2]=e.createElementVNode("span",null,"添加列",-1))])):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-7761813f"]]),Je=x(e.defineComponent({__name:"AiThinking",props:{size:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-thinking",t.size])},[...n[0]||(n[0]=[e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1),e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1),e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1)])],2))}}),[["__scopeId","data-v-f40004bf"]]),ms={key:0,class:"of-streaming-cursor"},et=x(e.defineComponent({__name:"AiStreamingCursor",props:{visible:{type:Boolean}},setup(t){return(o,n)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("span",ms)):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-d71a6f39"]]),fs={class:"of-ai-message"},us={class:"of-ai-message__avatar"},ps=["src","alt"],gs={key:1,class:"of-ai-message__avatar-emoji"},_s={class:"of-ai-message__body"},bs={key:0,class:"of-ai-message__name"},ys={class:"of-ai-message__content"},ks={key:1,class:"of-ai-message__timestamp"},tt=x(e.defineComponent({__name:"AiMessageBubble",props:{content:{},isStreaming:{type:Boolean},isError:{type:Boolean},avatar:{},name:{},timestamp:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",fs,[e.createElementVNode("div",us,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:t.name||"AI",class:"of-ai-message__avatar-img"},null,8,ps)):(e.openBlock(),e.createElementBlock("span",gs,"🤖"))]),e.createElementVNode("div",_s,[t.name?(e.openBlock(),e.createElementBlock("div",bs,e.toDisplayString(t.name),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["of-ai-message__bubble",{"of-ai-message__bubble--error":t.isError}])},[e.createElementVNode("span",ys,e.toDisplayString(t.content),1),t.isStreaming?(e.openBlock(),e.createBlock(et,{key:0})):e.createCommentVNode("",!0)],2),t.timestamp?(e.openBlock(),e.createElementBlock("div",ks,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-e6ecc3e3"]]),hs={class:"of-user-message"},Es={class:"of-user-message__body"},Bs={class:"of-user-message__bubble"},Ns={key:0,class:"of-user-message__timestamp"},Cs={class:"of-user-message__avatar"},Ss=["src"],ws={key:1,class:"of-user-message__avatar-emoji"},nt=x(e.defineComponent({__name:"UserMessageBubble",props:{content:{},timestamp:{},avatar:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",hs,[e.createElementVNode("div",Es,[e.createElementVNode("div",Bs,e.toDisplayString(t.content),1),t.timestamp?(e.openBlock(),e.createElementBlock("div",Ns,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Cs,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:"User",class:"of-user-message__avatar-img"},null,8,Ss)):(e.openBlock(),e.createElementBlock("span",ws,"👤"))])]))}}),[["__scopeId","data-v-ffc1f282"]]),Zt=x(e.defineComponent({__name:"AiMessageList",props:{messages:{},isThinking:{type:Boolean}},setup(t){const o=t,n=e.ref(null);function a(){n.value&&(n.value.scrollTop=n.value.scrollHeight)}return e.watch(()=>[o.messages.length,o.isThinking],async()=>{await e.nextTick(),a()},{immediate:!0}),(r,s)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"listRef",ref:n,class:"of-ai-message-list"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.messages,c=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:c.id},[c.role==="ai"?(e.openBlock(),e.createBlock(tt,{key:0,content:c.content,"is-streaming":c.isStreaming,"is-error":c.isError,avatar:c.avatar,name:c.name,timestamp:c.timestamp},null,8,["content","is-streaming","is-error","avatar","name","timestamp"])):(e.openBlock(),e.createBlock(nt,{key:1,content:c.content,avatar:c.avatar,timestamp:c.timestamp},null,8,["content","avatar","timestamp"]))],64))),128)),t.isThinking?(e.openBlock(),e.createBlock(Je,{key:0})):e.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-d9eafb87"]]),$s={key:0,class:"of-ai-sender__tools"},xs={class:"of-ai-sender__inner"},Ds={key:0,class:"of-ai-sender__prefix"},Ts=["placeholder","disabled"],As=["title"],Ms=22,jt=x(e.defineComponent({__name:"AiSender",props:{placeholder:{},disabled:{type:Boolean},maxRows:{}},emits:["send","cancel"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(""),s=e.ref(null),c=e.computed(()=>n.maxRows??6);function l(){const u=s.value;if(!u)return;u.style.height="auto";const B=Ms*c.value+16;u.style.height=Math.min(u.scrollHeight,B)+"px"}async function d(){await e.nextTick(),l()}function i(u){u.key==="Enter"&&!u.shiftKey&&(u.preventDefault(),m())}function m(){const u=r.value.trim();!u||n.disabled||(a("send",u),r.value="",e.nextTick(()=>{l()}))}function f(){a("cancel")}function p(){n.disabled?f():m()}return(u,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-sender",{"is-disabled":t.disabled}])},[u.$slots.tools?(e.openBlock(),e.createElementBlock("div",$s,[e.renderSlot(u.$slots,"tools",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",xs,[u.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Ds,[e.renderSlot(u.$slots,"prefix",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":B[0]||(B[0]=C=>r.value=C),class:"of-ai-sender__textarea",placeholder:t.placeholder??"输入消息...",disabled:t.disabled,rows:"1",onInput:d,onKeydown:i},null,40,Ts),[[e.vModelText,r.value]]),e.createElementVNode("button",{class:e.normalizeClass(["of-ai-sender__action-btn",{"is-stop":t.disabled,"is-empty":!r.value.trim()&&!t.disabled}]),title:t.disabled?"停止":"发送",onClick:p},[t.disabled?(e.openBlock(),e.createBlock(e.unref(A.Square),{key:0,size:16})):(e.openBlock(),e.createBlock(e.unref(A.ArrowUp),{key:1,size:16}))],10,As)])],2))}}),[["__scopeId","data-v-8a02332b"]]),Rs={class:"of-dialog"},Is={class:"of-dialog__content"},Vs={class:"of-dialog__title"},Os={key:0,class:"of-dialog__text"},Ls=["disabled"],zs=["disabled"],Yt=x(e.defineComponent({__name:"Dialog",props:{modelValue:{type:Boolean},title:{default:"提示"},content:{},confirmText:{default:"确认"},cancelText:{default:"取消"},type:{default:"info"},loading:{type:Boolean,default:!1},width:{default:"420px"},hideCancel:{type:Boolean,default:!1}},emits:["update:modelValue","confirm","cancel"],setup(t,{emit:o}){const n=t,a=o,r={info:A.Info,warning:A.AlertTriangle,danger:A.AlertCircle,success:A.CheckCircle2},s=e.computed(()=>`of-dialog__icon--${n.type}`),c=e.computed(()=>r[n.type]),l=e.computed(()=>n.type==="danger"?"of-dialog__btn--danger":"of-dialog__btn--primary");function d(f){a("update:modelValue",f)}function i(){n.loading||a("confirm")}function m(){a("cancel"),a("update:modelValue",!1)}return(f,p)=>(e.openBlock(),e.createBlock(he,{"model-value":t.modelValue,width:t.width,closable:!1,"mask-closable":!t.loading,class:"of-dialog-modal","onUpdate:modelValue":d},{footer:e.withCtx(()=>[t.hideCancel?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-dialog__btn of-dialog__btn--cancel",disabled:t.loading,type:"button",onClick:m},e.toDisplayString(t.cancelText),9,Ls)),e.createElementVNode("button",{class:e.normalizeClass(["of-dialog__btn",l.value]),disabled:t.loading,type:"button",onClick:i},[t.loading?(e.openBlock(),e.createBlock(e.unref(A.Loader2),{key:0,size:14,class:"of-dialog__spinner"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.confirmText),1)],10,zs)]),default:e.withCtx(()=>[e.createElementVNode("div",Rs,[e.createElementVNode("div",{class:e.normalizeClass(["of-dialog__icon-wrap",s.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:28}))],2),e.createElementVNode("div",Is,[e.createElementVNode("h3",Vs,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("p",Os,e.toDisplayString(t.content),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default",{},void 0,!0)])])]),_:3},8,["model-value","width","mask-closable"]))}}),[["__scopeId","data-v-22950faf"]]),Fs=["role","aria-label"],Ps={class:"of-toast__icon"},Us={class:"of-toast__content"},vs={key:0,class:"of-toast__title"},Ks={class:"of-toast__message"},ot=x(e.defineComponent({__name:"ToastItem",props:{toast:{}},emits:["close"],setup(t,{emit:o}){const n=t,a=o,r={info:A.Info,success:A.CheckCircle2,warning:A.AlertTriangle,error:A.XCircle},s={info:{icon:"var(--of-color-blue-500, #3b82f6)",border:"var(--of-color-blue-200, #bfdbfe)",borderLeft:"var(--of-color-blue-500, #3b82f6)",bg:"var(--of-color-blue-50, #eff6ff)"},success:{icon:"var(--of-color-green-500, #22c55e)",border:"var(--of-color-green-200, #bbf7d0)",borderLeft:"var(--of-color-green-500, #22c55e)",bg:"var(--of-color-green-50, #f0fdf4)"},warning:{icon:"var(--of-color-orange-500, #f97316)",border:"var(--of-color-orange-200, #fed7aa)",borderLeft:"var(--of-color-orange-500, #f97316)",bg:"var(--of-color-orange-50, #fff7ed)"},error:{icon:"var(--of-color-red-500, #ef4444)",border:"var(--of-color-red-200, #fecaca)",borderLeft:"var(--of-color-red-500, #ef4444)",bg:"var(--of-color-red-50, #fef2f2)"}},c=e.computed(()=>r[n.toast.type]),l=e.computed(()=>s[n.toast.type]),d=e.computed(()=>n.toast.type==="error"?"alertdialog":"alert");return(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-toast",`of-toast--${t.toast.type}`]),style:e.normalizeStyle({borderColor:l.value.border,borderLeftColor:l.value.borderLeft,backgroundColor:l.value.bg}),role:d.value,"aria-label":`${t.toast.type}: ${t.toast.message}`},[e.createElementVNode("div",Ps,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:20,color:l.value.icon,"aria-hidden":"true"},null,8,["color"]))]),e.createElementVNode("div",Us,[t.toast.title?(e.openBlock(),e.createElementBlock("p",vs,e.toDisplayString(t.toast.title),1)):e.createCommentVNode("",!0),e.createElementVNode("p",Ks,e.toDisplayString(t.toast.message),1)]),e.createElementVNode("button",{class:"of-toast__close",type:"button","aria-label":"关闭通知",onClick:m[0]||(m[0]=f=>a("close"))},[e.createVNode(e.unref(A.X),{size:16})])],14,Fs))}}),[["__scopeId","data-v-3daf12bd"]]),Gs={class:"of-toast-container","aria-live":"polite","aria-atomic":"false"},Xt=e.defineComponent({__name:"ToastContainer",setup(t){const{toasts:o,remove:n}=ve();return(a,r)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",Gs,[e.createVNode(e.TransitionGroup,{name:"of-toast",tag:"div",class:"of-toast-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),s=>(e.openBlock(),e.createBlock(ot,{key:s.id,toast:s,onClose:c=>e.unref(n)(s.id)},null,8,["toast","onClose"]))),128))]),_:1})])]))}}),Hs={class:"of-tabs__nav",role:"tablist","aria-label":"tabs"},Ws=["disabled","id","aria-selected","aria-controls","aria-disabled","tabindex","onClick","onKeydown"],qs={class:"of-tabs__tab-label"},Zs={key:1,class:"of-tabs__badge"},js={class:"of-tabs__content"},Qt=x(e.defineComponent({__name:"Tabs",props:{modelValue:{},defaultValue:{},variant:{},size:{},tabs:{}},emits:["update:modelValue","change"],setup(t,{emit:o}){var d;const n=t,a=o,r=e.ref(n.defaultValue||((d=n.tabs[0])==null?void 0:d.key)||""),s=e.computed({get:()=>n.modelValue??r.value,set:i=>{r.value=i,a("update:modelValue",i),a("change",i)}});function c(i){s.value=i}function l(i,m){const f=n.tabs.filter(u=>!u.disabled),p=f.findIndex(u=>u.key===m);if(i.key==="ArrowRight"||i.key==="ArrowDown"){i.preventDefault();const u=f[(p+1)%f.length];u&&c(u.key)}else if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault();const u=f[(p-1+f.length)%f.length];u&&c(u.key)}else if(i.key==="Home"){i.preventDefault();const u=f[0];u&&c(u.key)}else if(i.key==="End"){i.preventDefault();const u=f[f.length-1];u&&c(u.key)}}return e.provide("of-tabs-active",s),e.provide("of-tabs-set",c),(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-tabs",[`of-tabs--${t.variant||"line"}`,`of-tabs--${t.size||"md"}`]])},[e.createElementVNode("div",Hs,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,f=>(e.openBlock(),e.createElementBlock("button",{key:f.key,class:e.normalizeClass(["of-tabs__tab",{"of-tabs__tab--active":s.value===f.key,"of-tabs__tab--disabled":f.disabled}]),disabled:f.disabled,role:"tab",id:`of-tab-${f.key}`,"aria-selected":s.value===f.key,"aria-controls":`of-panel-${f.key}`,"aria-disabled":f.disabled,tabindex:s.value===f.key?0:-1,onClick:p=>!f.disabled&&c(f.key),onKeydown:p=>l(p,f.key)},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(f.icon)),{key:0,class:"of-tabs__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",qs,e.toDisplayString(f.label),1),f.badge!=null?(e.openBlock(),e.createElementBlock("span",Zs,e.toDisplayString(f.badge),1)):e.createCommentVNode("",!0)],42,Ws))),128))]),e.createElementVNode("div",js,[e.renderSlot(i.$slots,"default",{},void 0,!0)])],2))}}),[["__scopeId","data-v-2c91bd27"]]),Ys=["id","aria-labelledby","hidden"],Jt=x(e.defineComponent({__name:"TabPanel",props:{name:{},keepAlive:{type:Boolean}},setup(t){const o=t,n=e.inject("of-tabs-active"),a=e.computed(()=>(n==null?void 0:n.value)===o.name);return(r,s)=>t.keepAlive||a.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:"of-tab-panel",role:"tabpanel",id:`of-panel-${t.name}`,"aria-labelledby":`of-tab-${t.name}`,hidden:t.keepAlive&&!a.value?!0:void 0},[e.renderSlot(r.$slots,"default",{},void 0,!0)],8,Ys)),[[e.vShow,t.keepAlive?a.value:!0]]):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-ad9a1dee"]]),Xs={class:"of-breadcrumb","aria-label":"breadcrumb"},Qs={class:"of-breadcrumb__list"},Js={key:0,class:"of-breadcrumb__separator","aria-hidden":"true"},en=x(e.defineComponent({__name:"Breadcrumb",props:{items:{},separator:{}},setup(t){function o(n){n.onClick&&n.onClick()}return(n,a)=>(e.openBlock(),e.createElementBlock("nav",Xs,[e.createElementVNode("ol",Qs,[t.items&&t.items.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(r,s)=>(e.openBlock(),e.createElementBlock("li",{key:s,class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":s===t.items.length-1}])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.path?"a":"span"),{href:r.path,class:e.normalizeClass(["of-breadcrumb__link",{"of-breadcrumb__link--active":s===t.items.length-1}]),onClick:e.withModifiers(c=>r.onClick?o(r):null,["prevent"])},{default:e.withCtx(()=>[r.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(r.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(r.label),1)]),_:2},1032,["href","class","onClick"])),s<t.items.length-1?(e.openBlock(),e.createElementBlock("span",Js,[e.renderSlot(n.$slots,"separator",{},()=>[e.createTextVNode(e.toDisplayString(t.separator||"/"),1)],!0)])):e.createCommentVNode("",!0)],2))),128)):e.renderSlot(n.$slots,"default",{key:1},void 0,!0)])]))}}),[["__scopeId","data-v-c83773fb"]]),tn=x(e.defineComponent({__name:"BreadcrumbItem",props:{path:{},icon:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=o;return(a,r)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":t.active}])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.path?"a":"span"),{href:t.path,class:e.normalizeClass(["of-breadcrumb__link",{"of-breadcrumb__link--active":t.active}]),onClick:r[0]||(r[0]=e.withModifiers(s=>n("click",s),["prevent"]))},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(se)(t.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default",{},void 0,!0)]),_:3},8,["href","class"]))],2))}}),[["__scopeId","data-v-bc3caff3"]]),ei={key:0,class:"of-mermaid__loading"},ti={key:1,class:"of-mermaid__error"},ni={class:"of-mermaid__error-text"},nn=x(e.defineComponent({__name:"MermaidChart",props:{code:{},theme:{},width:{}},setup(t){const o=t;let n=0;const a=`of-mermaid-${Date.now()}-${n++}`,r=e.ref(null),s=e.ref(!0),c=e.ref("");async function l(){var d;if(!((d=o.code)!=null&&d.trim())){s.value=!1;return}s.value=!0,c.value="";try{let i=window.mermaid;i||(i=(await import("mermaid")).default),i.initialize({startOnLoad:!1,theme:o.theme||"default",securityLevel:"loose"}),await e.nextTick();const{svg:m}=await i.render(a,o.code);r.value&&(r.value.innerHTML=m)}catch(i){c.value=(i==null?void 0:i.message)||"图表渲染失败,请检查 Mermaid 语法"}finally{s.value=!1}}return e.onMounted(()=>l()),e.watch(()=>[o.code,o.theme],()=>l()),(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-mermaid",style:e.normalizeStyle({width:o.width||"100%"})},[s.value?(e.openBlock(),e.createElementBlock("div",ei,[e.renderSlot(d.$slots,"loading",{},()=>[i[0]||(i[0]=e.createElementVNode("span",{class:"of-mermaid__spinner","aria-hidden":"true"},null,-1)),i[1]||(i[1]=e.createElementVNode("span",{class:"of-mermaid__loading-text"},"图表加载中...",-1))],!0)])):c.value?(e.openBlock(),e.createElementBlock("div",ti,[e.renderSlot(d.$slots,"error",{message:c.value},()=>[i[2]||(i[2]=e.createElementVNode("span",{class:"of-mermaid__error-icon","aria-hidden":"true"},"!",-1)),e.createElementVNode("span",ni,e.toDisplayString(c.value),1)],!0)])):(e.openBlock(),e.createElementBlock("div",{key:2,ref_key:"containerRef",ref:r,class:"of-mermaid__container"},null,512))],4))}}),[["__scopeId","data-v-f79fd70a"]]),oi={class:"of-split-pane__second"},on=x(e.defineComponent({__name:"SplitPane",props:{direction:{},defaultSize:{},minSize:{},maxSize:{}},setup(t){const o=t,n=e.ref(o.defaultSize??50),a=e.ref(!1),r=e.ref(null);function s(i){i.preventDefault(),a.value=!0,document.addEventListener("mousemove",c),document.addEventListener("mouseup",d),document.addEventListener("touchmove",l,{passive:!1}),document.addEventListener("touchend",d)}function c(i){if(!a.value||!r.value)return;const m=r.value.getBoundingClientRect(),f=(o.direction||"horizontal")==="horizontal";let p;f?p=(i.clientX-m.left)/m.width*100:p=(i.clientY-m.top)/m.height*100;const u=o.minSize??10,B=o.maxSize??90;n.value=Math.min(B,Math.max(u,p))}function l(i){if(!a.value||!r.value)return;i.preventDefault();const m=i.touches[0],f=r.value.getBoundingClientRect(),p=(o.direction||"horizontal")==="horizontal";let u;p?u=(m.clientX-f.left)/f.width*100:u=(m.clientY-f.top)/f.height*100;const B=o.minSize??10,C=o.maxSize??90;n.value=Math.min(C,Math.max(B,u))}function d(){a.value=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",l),document.removeEventListener("touchend",d)}return e.onUnmounted(()=>{document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",l),document.removeEventListener("touchend",d)}),(i,m)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:r,class:e.normalizeClass(["of-split-pane",[`of-split-pane--${t.direction||"horizontal"}`,{"of-split-pane--dragging":a.value}]])},[e.createElementVNode("div",{class:"of-split-pane__first",style:e.normalizeStyle((t.direction||"horizontal")==="vertical"?{height:n.value+"%"}:{width:n.value+"%"})},[e.renderSlot(i.$slots,"first",{},void 0,!0)],4),e.createElementVNode("div",{class:"of-split-pane__divider",onMousedown:s,onTouchstart:e.withModifiers(s,["prevent"])},[...m[0]||(m[0]=[e.createElementVNode("div",{class:"of-split-pane__divider-inner"},null,-1)])],32),e.createElementVNode("div",oi,[e.renderSlot(i.$slots,"second",{},void 0,!0)])],2))}}),[["__scopeId","data-v-04056d0e"]]),ai={key:0,class:"of-context-menu__sep"},li=["disabled","onClick"],ri={key:0,class:"of-context-menu__icon"},si={class:"of-context-menu__label"},ii={key:1,class:"of-context-menu__submenu-indicator"},an=x(e.defineComponent({name:"ContextMenu",__name:"index",props:{x:{},y:{},items:{},visible:{type:Boolean,default:!0}},emits:["select","close"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.computed(()=>({position:"fixed",left:`${n.x}px`,top:`${n.y}px`}));function c(f){f.disabled||f.separator||(a("select",f.key),a("close"))}function l(f){const p=f.target;r.value&&p&&!r.value.contains(p)&&a("close")}function d(f){f.key==="Escape"&&a("close")}function i(){document.addEventListener("mousedown",l),document.addEventListener("keydown",d)}function m(){document.removeEventListener("mousedown",l),document.removeEventListener("keydown",d)}return e.watch(()=>n.visible,f=>{if(f){i();return}m()},{immediate:!0}),e.onBeforeUnmount(()=>{m()}),(f,p)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.visible?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"menuRef",ref:r,class:"of-context-menu",style:e.normalizeStyle(s.value),role:"menu",onMousedown:p[0]||(p[0]=e.withModifiers(()=>{},["stop"]))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,u=>{var B;return e.openBlock(),e.createElementBlock(e.Fragment,{key:u.key},[u.separator?(e.openBlock(),e.createElementBlock("hr",ai)):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(["of-context-menu__item",{"is-disabled":u.disabled,"is-danger":u.danger}]),disabled:u.disabled,role:"menuitem",onClick:C=>c(u)},[u.icon?(e.openBlock(),e.createElementBlock("span",ri,e.toDisplayString(u.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",si,e.toDisplayString(u.label),1),(B=u.children)!=null&&B.length?(e.openBlock(),e.createElementBlock("span",ii,"›")):e.createCommentVNode("",!0)],10,li))],64)}),128))],36)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-6d794358"]]);function ln(t={}){const o=e.ref(!1),n=e.ref(!1),a=e.ref(null);let r=null,s="";async function c(d){var i,m,f,p,u;n.value=!0,o.value=!1,a.value=null,s="",r=new AbortController;try{const B=d.getReader(),C=new TextDecoder;for(n.value=!1,o.value=!0;;){const{done:y,value:g}=await B.read();if(y)break;const b=C.decode(g,{stream:!0});if(t.mode==="sse"){s+=b;const k=s.split(`
5
- `);s=k.pop()??"";for(const T of k){const S=T.trim();if(!(!S||S.startsWith(":"))&&S.startsWith("data: ")){const I=S.slice(6);if(I==="[DONE]")continue;try{const W=JSON.parse(I);(i=t.onData)==null||i.call(t,W)}catch{(m=t.onChunk)==null||m.call(t,I)}}}}else(f=t.onChunk)==null||f.call(t,b)}(p=t.onDone)==null||p.call(t)}catch(B){B.name!=="AbortError"&&(a.value=B,(u=t.onError)==null||u.call(t,B))}finally{o.value=!1,n.value=!1}}function l(){r==null||r.abort(),o.value=!1,n.value=!1}return{isStreaming:e.readonly(o),isLoading:e.readonly(n),error:e.readonly(a),start:c,cancel:l}}function rn(t={}){const o=e.ref(""),n=e.ref(!1);let a="",r=0,s=null;const c=t.speed??20;function l(){var f;if(r>=a.length){n.value=!1,(f=t.onComplete)==null||f.call(t);return}o.value=a.slice(0,++r),s=setTimeout(l,c)}function d(f){a+=f,n.value||(n.value=!0,l())}function i(){s&&clearTimeout(s),a="",r=0,o.value="",n.value=!1}function m(){var f;s&&clearTimeout(s),o.value=a,r=a.length,n.value=!1,(f=t.onComplete)==null||f.call(t)}return{displayText:e.readonly(o),isTyping:e.readonly(n),append:d,reset:i,flush:m}}function sn(){return Date.now().toString(36)+Math.random().toString(36).slice(2,6)}function ci(t){const o=e.ref([]),n=e.ref(!1),a=e.ref(null),r=t.typewriter?rn({speed:t.typewriterSpeed??15}):null;function s(C){const y={id:sn(),role:"user",content:C,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(y),y}function c(){const C={id:sn(),role:"ai",content:"",isStreaming:!0,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(C),a.value=C.id,C}function l(C,y){const g=o.value.findIndex(b=>b.id===C);g!==-1&&(o.value[g]={...o.value[g],...y})}function d(C,y){const g=o.value.findIndex(b=>b.id===C);g!==-1&&(o.value[g].content+=y)}const{start:i,cancel:m,isStreaming:f}=ln({mode:t.parseChunk?"sse":"raw",onData:t.parseChunk?C=>{const y=t.parseChunk(C);y&&a.value&&(r?r.append(y):d(a.value,y))}:void 0,onChunk:t.parseChunk?void 0:C=>{a.value&&(r?r.append(C):d(a.value,C))},onDone:()=>{a.value&&(r&&r.flush(),l(a.value,{isStreaming:!1})),n.value=!1,a.value=null},onError:C=>{var y;a.value&&l(a.value,{isStreaming:!1,error:!0,content:`错误:${C.message}`}),n.value=!1,a.value=null,(y=t.onError)==null||y.call(t,C)}});async function p(C){var g;if(n.value||!C.trim())return;s(C);const y=c();if(n.value=!0,r&&r.reset(),r){const b=setInterval(()=>{const k=o.value.findIndex(T=>T.id===y.id);k!==-1&&(o.value[k].content=r.displayText.value),!r.isTyping.value&&!f.value&&clearInterval(b)},30)}try{const b=await t.sendRequest(C,o.value.slice(0,-2)),k=b instanceof Response?b.body:b;await i(k)}catch(b){l(y.id,{isStreaming:!1,error:!0,content:`请求失败:${b.message}`}),n.value=!1,a.value=null,(g=t.onError)==null||g.call(t,b)}}function u(){m(),a.value&&l(a.value,{isStreaming:!1}),n.value=!1,a.value=null}function B(){u(),o.value=[]}return{messages:e.readonly(o),isGenerating:e.readonly(n),isStreaming:f,send:p,cancel:u,clear:B}}const di=[{value:"contains",label:"包含"},{value:"not_contains",label:"不包含"},{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"starts_with",label:"开头是"},{value:"ends_with",label:"结尾是"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}],mi=[{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"gt",label:"大于"},{value:"gte",label:"大于等于"},{value:"lt",label:"小于"},{value:"lte",label:"小于等于"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}];function fi(){return Math.random().toString(36).slice(2,8)}function ui(t,o){const n=String(t??"").toLowerCase(),a=o.value.toLowerCase();switch(o.operator){case"equals":return n===a;case"not_equals":return n!==a;case"contains":return n.includes(a);case"not_contains":return!n.includes(a);case"starts_with":return n.startsWith(a);case"ends_with":return n.endsWith(a);case"is_empty":return n===""||t==null;case"is_not_empty":return n!==""&&t!=null;case"gt":return Number(t)>Number(o.value);case"gte":return Number(t)>=Number(o.value);case"lt":return Number(t)<Number(o.value);case"lte":return Number(t)<=Number(o.value);default:return!0}}function pi(t={}){const o=e.ref([]),n=e.ref("and"),a=e.computed(()=>o.value.length>0);function r(m){var f,p;o.value.push({id:fi(),field:m??((p=(f=t.columns)==null?void 0:f[0])==null?void 0:p.key)??"",operator:"contains",value:""})}function s(m){o.value=o.value.filter(f=>f.id!==m)}function c(m,f){const p=o.value.findIndex(u=>u.id===m);p!==-1&&(o.value[p]={...o.value[p],...f})}function l(){o.value=[]}function d(m){return o.value.length?m.filter(f=>{const p=o.value.map(u=>u.field?ui(f[u.field],u):!0);return n.value==="and"?p.every(Boolean):p.some(Boolean)}):m}const i=m=>m==="number"?mi:di;return{conditions:e.readonly(o),logic:n,isActive:a,addCondition:r,removeCondition:s,updateCondition:c,clearConditions:l,filterData:d,operatorsFor:i}}function gi(t={}){const o=e.ref(t.data??[]),n=e.ref(!1),a=e.ref(null),r=e.ref(new Set),s=e.ref({field:null,order:null}),c=e.ref({page:1,pageSize:t.pageSize??20,total:(t.data??[]).length});function l(_){s.value.field===_?(s.value.order=s.value.order==="asc"?"desc":s.value.order==="desc"?null:"asc",s.value.order===null&&(s.value.field=null)):(s.value.field=_,s.value.order="asc"),c.value.page=1,t.serverSide&&S()}function d(_,h){s.value={field:_,order:h},c.value.page=1,t.serverSide&&S()}function i(_){if(!s.value.field||!s.value.order)return _;const h=s.value.field,w=s.value.order;return[..._].sort((O,H)=>{const K=O[h],F=H[h];if(K==null&&F==null)return 0;if(K==null)return 1;if(F==null)return-1;if(typeof K=="number"&&typeof F=="number")return w==="asc"?K-F:F-K;const ee=String(K),E=String(F);return w==="asc"?ee.localeCompare(E):E.localeCompare(ee)})}function m(_){c.value.page=Math.max(1,Math.min(_,p.value)),t.serverSide&&S()}function f(_){c.value.pageSize=_,c.value.page=1,t.serverSide&&S()}const p=e.computed(()=>Math.max(1,Math.ceil(c.value.total/c.value.pageSize))),u=e.computed(()=>{if(t.serverSide)return o.value;const _=i(o.value);c.value.total=_.length;const{page:h,pageSize:w}=c.value;return _.slice((h-1)*w,h*w)});function B(_,h){return _.id??h}function C(_,h){const w=B(_,h);r.value.has(w)?r.value.delete(w):r.value.add(w)}function y(_){r.value.size===_.length?r.value.clear():_.forEach((h,w)=>r.value.add(B(h,w)))}function g(_,h){return r.value.has(B(_,h))}function b(){r.value.clear()}const k=e.computed(()=>r.value.size),T=e.computed(()=>u.value.length>0&&r.value.size===u.value.length);async function S(){if(t.onFetch){n.value=!0,a.value=null;try{const _=await t.onFetch({page:c.value.page,pageSize:c.value.pageSize,sort:s.value});o.value=_.data,c.value.total=_.total}catch(_){a.value=_}finally{n.value=!1}}}function I(){t.serverSide?S():c.value.page=1}function W(_){o.value=_,c.value.page=1,t.serverSide||(c.value.total=_.length)}return{data:u,rawData:e.readonly(o),loading:e.readonly(n),error:e.readonly(a),sort:e.readonly(s),pagination:e.readonly(c),totalPages:p,selectedRows:e.readonly(r),selectedCount:k,isAllSelected:T,toggleSort:l,setSort:d,setPage:m,setPageSize:f,toggleRowSelection:C,toggleSelectAll:y,isRowSelected:g,clearSelection:b,refresh:I,fetchData:S,setData:W}}function _i(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function cn(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach(o=>{const n=t[o],a=typeof n;(a==="object"||a==="function")&&!Object.isFrozen(n)&&cn(n)}),t}let dn=class{constructor(o){o.data===void 0&&(o.data={}),this.data=o.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function mn(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function re(t,...o){const n=Object.create(null);for(const a in t)n[a]=t[a];return o.forEach(function(a){for(const r in a)n[r]=a[r]}),n}const bi="</span>",fn=t=>!!t.scope,yi=(t,{prefix:o})=>{if(t.startsWith("language:"))return t.replace("language:","language-");if(t.includes(".")){const n=t.split(".");return[`${o}${n.shift()}`,...n.map((a,r)=>`${a}${"_".repeat(r+1)}`)].join(" ")}return`${o}${t}`};class ki{constructor(o,n){this.buffer="",this.classPrefix=n.classPrefix,o.walk(this)}addText(o){this.buffer+=mn(o)}openNode(o){if(!fn(o))return;const n=yi(o.scope,{prefix:this.classPrefix});this.span(n)}closeNode(o){fn(o)&&(this.buffer+=bi)}value(){return this.buffer}span(o){this.buffer+=`<span class="${o}">`}}const un=(t={})=>{const o={children:[]};return Object.assign(o,t),o};class at{constructor(){this.rootNode=un(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(o){this.top.children.push(o)}openNode(o){const n=un({scope:o});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(o){return this.constructor._walk(o,this.rootNode)}static _walk(o,n){return typeof n=="string"?o.addText(n):n.children&&(o.openNode(n),n.children.forEach(a=>this._walk(o,a)),o.closeNode(n)),o}static _collapse(o){typeof o!="string"&&o.children&&(o.children.every(n=>typeof n=="string")?o.children=[o.children.join("")]:o.children.forEach(n=>{at._collapse(n)}))}}class hi extends at{constructor(o){super(),this.options=o}addText(o){o!==""&&this.add(o)}startScope(o){this.openNode(o)}endScope(){this.closeNode()}__addSublanguage(o,n){const a=o.root;n&&(a.scope=`language:${n}`),this.add(a)}toHTML(){return new ki(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ye(t){return t?typeof t=="string"?t:t.source:null}function pn(t){return ce("(?=",t,")")}function Ei(t){return ce("(?:",t,")*")}function Bi(t){return ce("(?:",t,")?")}function ce(...t){return t.map(n=>ye(n)).join("")}function Ni(t){const o=t[t.length-1];return typeof o=="object"&&o.constructor===Object?(t.splice(t.length-1,1),o):{}}function lt(...t){return"("+(Ni(t).capture?"":"?:")+t.map(a=>ye(a)).join("|")+")"}function gn(t){return new RegExp(t.toString()+"|").exec("").length-1}function Ci(t,o){const n=t&&t.exec(o);return n&&n.index===0}const Si=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function rt(t,{joinWith:o}){let n=0;return t.map(a=>{n+=1;const r=n;let s=ye(a),c="";for(;s.length>0;){const l=Si.exec(s);if(!l){c+=s;break}c+=s.substring(0,l.index),s=s.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?c+="\\"+String(Number(l[1])+r):(c+=l[0],l[0]==="("&&n++)}return c}).map(a=>`(${a})`).join(o)}const wi=/\b\B/,_n="[a-zA-Z]\\w*",st="[a-zA-Z_]\\w*",bn="\\b\\d+(\\.\\d+)?",yn="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",kn="\\b(0b[01]+)",$i="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",xi=(t={})=>{const o=/^#![ ]*\//;return t.binary&&(t.begin=ce(o,/.*\b/,t.binary,/\b.*/)),re({scope:"meta",begin:o,end:/$/,relevance:0,"on:begin":(n,a)=>{n.index!==0&&a.ignoreMatch()}},t)},ke={begin:"\\\\[\\s\\S]",relevance:0},Di={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ke]},Ti={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ke]},Ai={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Ne=function(t,o,n={}){const a=re({scope:"comment",begin:t,end:o,contains:[]},n);a.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const r=lt("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return a.contains.push({begin:ce(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a},Mi=Ne("//","$"),Ri=Ne("/\\*","\\*/"),Ii=Ne("#","$"),Vi={scope:"number",begin:bn,relevance:0},Oi={scope:"number",begin:yn,relevance:0},Li={scope:"number",begin:kn,relevance:0},zi={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[ke,{begin:/\[/,end:/\]/,relevance:0,contains:[ke]}]},Fi={scope:"title",begin:_n,relevance:0},Pi={scope:"title",begin:st,relevance:0},Ui={begin:"\\.\\s*"+st,relevance:0};var Ce=Object.freeze({__proto__:null,APOS_STRING_MODE:Di,BACKSLASH_ESCAPE:ke,BINARY_NUMBER_MODE:Li,BINARY_NUMBER_RE:kn,COMMENT:Ne,C_BLOCK_COMMENT_MODE:Ri,C_LINE_COMMENT_MODE:Mi,C_NUMBER_MODE:Oi,C_NUMBER_RE:yn,END_SAME_AS_BEGIN:function(t){return Object.assign(t,{"on:begin":(o,n)=>{n.data._beginMatch=o[1]},"on:end":(o,n)=>{n.data._beginMatch!==o[1]&&n.ignoreMatch()}})},HASH_COMMENT_MODE:Ii,IDENT_RE:_n,MATCH_NOTHING_RE:wi,METHOD_GUARD:Ui,NUMBER_MODE:Vi,NUMBER_RE:bn,PHRASAL_WORDS_MODE:Ai,QUOTE_STRING_MODE:Ti,REGEXP_MODE:zi,RE_STARTERS_RE:$i,SHEBANG:xi,TITLE_MODE:Fi,UNDERSCORE_IDENT_RE:st,UNDERSCORE_TITLE_MODE:Pi});function vi(t,o){t.input[t.index-1]==="."&&o.ignoreMatch()}function Ki(t,o){t.className!==void 0&&(t.scope=t.className,delete t.className)}function Gi(t,o){o&&t.beginKeywords&&(t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",t.__beforeBegin=vi,t.keywords=t.keywords||t.beginKeywords,delete t.beginKeywords,t.relevance===void 0&&(t.relevance=0))}function Hi(t,o){Array.isArray(t.illegal)&&(t.illegal=lt(...t.illegal))}function Wi(t,o){if(t.match){if(t.begin||t.end)throw new Error("begin & end are not supported with match");t.begin=t.match,delete t.match}}function qi(t,o){t.relevance===void 0&&(t.relevance=1)}const Zi=(t,o)=>{if(!t.beforeMatch)return;if(t.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},t);Object.keys(t).forEach(a=>{delete t[a]}),t.keywords=n.keywords,t.begin=ce(n.beforeMatch,pn(n.begin)),t.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},t.relevance=0,delete n.beforeMatch},ji=["of","and","for","in","not","or","if","then","parent","list","value"],Yi="keyword";function hn(t,o,n=Yi){const a=Object.create(null);return typeof t=="string"?r(n,t.split(" ")):Array.isArray(t)?r(n,t):Object.keys(t).forEach(function(s){Object.assign(a,hn(t[s],o,s))}),a;function r(s,c){o&&(c=c.map(l=>l.toLowerCase())),c.forEach(function(l){const d=l.split("|");a[d[0]]=[s,Xi(d[0],d[1])]})}}function Xi(t,o){return o?Number(o):Qi(t)?0:1}function Qi(t){return ji.includes(t.toLowerCase())}const En={},de=t=>{console.error(t)},Bn=(t,...o)=>{console.log(`WARN: ${t}`,...o)},ge=(t,o)=>{En[`${t}/${o}`]||(console.log(`Deprecated as of ${t}. ${o}`),En[`${t}/${o}`]=!0)},Se=new Error;function Nn(t,o,{key:n}){let a=0;const r=t[n],s={},c={};for(let l=1;l<=o.length;l++)c[l+a]=r[l],s[l+a]=!0,a+=gn(o[l-1]);t[n]=c,t[n]._emit=s,t[n]._multi=!0}function Ji(t){if(Array.isArray(t.begin)){if(t.skip||t.excludeBegin||t.returnBegin)throw de("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Se;if(typeof t.beginScope!="object"||t.beginScope===null)throw de("beginScope must be object"),Se;Nn(t,t.begin,{key:"beginScope"}),t.begin=rt(t.begin,{joinWith:""})}}function ec(t){if(Array.isArray(t.end)){if(t.skip||t.excludeEnd||t.returnEnd)throw de("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Se;if(typeof t.endScope!="object"||t.endScope===null)throw de("endScope must be object"),Se;Nn(t,t.end,{key:"endScope"}),t.end=rt(t.end,{joinWith:""})}}function tc(t){t.scope&&typeof t.scope=="object"&&t.scope!==null&&(t.beginScope=t.scope,delete t.scope)}function nc(t){tc(t),typeof t.beginScope=="string"&&(t.beginScope={_wrap:t.beginScope}),typeof t.endScope=="string"&&(t.endScope={_wrap:t.endScope}),Ji(t),ec(t)}function oc(t){function o(c,l){return new RegExp(ye(c),"m"+(t.case_insensitive?"i":"")+(t.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,d){d.position=this.position++,this.matchIndexes[this.matchAt]=d,this.regexes.push([d,l]),this.matchAt+=gn(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(d=>d[1]);this.matcherRe=o(rt(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const d=this.matcherRe.exec(l);if(!d)return null;const i=d.findIndex((f,p)=>p>0&&f!==void 0),m=this.matchIndexes[i];return d.splice(0,i),Object.assign(d,m)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const d=new n;return this.rules.slice(l).forEach(([i,m])=>d.addRule(i,m)),d.compile(),this.multiRegexes[l]=d,d}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,d){this.rules.push([l,d]),d.type==="begin"&&this.count++}exec(l){const d=this.getMatcher(this.regexIndex);d.lastIndex=this.lastIndex;let i=d.exec(l);if(this.resumingScanAtSamePosition()&&!(i&&i.index===this.lastIndex)){const m=this.getMatcher(0);m.lastIndex=this.lastIndex+1,i=m.exec(l)}return i&&(this.regexIndex+=i.position+1,this.regexIndex===this.count&&this.considerAll()),i}}function r(c){const l=new a;return c.contains.forEach(d=>l.addRule(d.begin,{rule:d,type:"begin"})),c.terminatorEnd&&l.addRule(c.terminatorEnd,{type:"end"}),c.illegal&&l.addRule(c.illegal,{type:"illegal"}),l}function s(c,l){const d=c;if(c.isCompiled)return d;[Ki,Wi,nc,Zi].forEach(m=>m(c,l)),t.compilerExtensions.forEach(m=>m(c,l)),c.__beforeBegin=null,[Gi,Hi,qi].forEach(m=>m(c,l)),c.isCompiled=!0;let i=null;return typeof c.keywords=="object"&&c.keywords.$pattern&&(c.keywords=Object.assign({},c.keywords),i=c.keywords.$pattern,delete c.keywords.$pattern),i=i||/\w+/,c.keywords&&(c.keywords=hn(c.keywords,t.case_insensitive)),d.keywordPatternRe=o(i,!0),l&&(c.begin||(c.begin=/\B|\b/),d.beginRe=o(d.begin),!c.end&&!c.endsWithParent&&(c.end=/\B|\b/),c.end&&(d.endRe=o(d.end)),d.terminatorEnd=ye(d.end)||"",c.endsWithParent&&l.terminatorEnd&&(d.terminatorEnd+=(c.end?"|":"")+l.terminatorEnd)),c.illegal&&(d.illegalRe=o(c.illegal)),c.contains||(c.contains=[]),c.contains=[].concat(...c.contains.map(function(m){return ac(m==="self"?c:m)})),c.contains.forEach(function(m){s(m,d)}),c.starts&&s(c.starts,l),d.matcher=r(d),d}if(t.compilerExtensions||(t.compilerExtensions=[]),t.contains&&t.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return t.classNameAliases=re(t.classNameAliases||{}),s(t)}function Cn(t){return t?t.endsWithParent||Cn(t.starts):!1}function ac(t){return t.variants&&!t.cachedVariants&&(t.cachedVariants=t.variants.map(function(o){return re(t,{variants:null},o)})),t.cachedVariants?t.cachedVariants:Cn(t)?re(t,{starts:t.starts?re(t.starts):null}):Object.isFrozen(t)?re(t):t}var lc="11.11.1";class rc extends Error{constructor(o,n){super(o),this.name="HTMLInjectionError",this.html=n}}const it=mn,Sn=re,wn=Symbol("nomatch"),sc=7,$n=function(t){const o=Object.create(null),n=Object.create(null),a=[];let r=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:hi};function d(E){return l.noHighlightRe.test(E)}function i(E){let M=E.className+" ";M+=E.parentNode?E.parentNode.className:"";const D=l.languageDetectRe.exec(M);if(D){const L=_(D[1]);return L||(Bn(s.replace("{}",D[1])),Bn("Falling back to no-highlight mode for this block.",E)),L?D[1]:"no-highlight"}return M.split(/\s+/).find(L=>d(L)||_(L))}function m(E,M,D){let L="",P="";typeof M=="object"?(L=E,D=M.ignoreIllegals,P=M.language):(ge("10.7.0","highlight(lang, code, ...args) has been deprecated."),ge("10.7.0",`Please use highlight(code, options) instead.
6
- https://github.com/highlightjs/highlight.js/issues/2277`),P=E,L=M),D===void 0&&(D=!0);const q={code:L,language:P};F("before:highlight",q);const j=q.result?q.result:f(q.language,q.code,D);return j.code=q.code,F("after:highlight",j),j}function f(E,M,D,L){const P=Object.create(null);function q($,R){return $.keywords[R]}function j(){if(!V.keywords){Z.addText(v);return}let $=0;V.keywordPatternRe.lastIndex=0;let R=V.keywordPatternRe.exec(v),z="";for(;R;){z+=v.substring($,R.index);const U=oe.case_insensitive?R[0].toLowerCase():R[0],Y=q(V,U);if(Y){const[ae,nd]=Y;if(Z.addText(z),z="",P[U]=(P[U]||0)+1,P[U]<=sc&&(Te+=nd),ae.startsWith("_"))z+=R[0];else{const od=oe.classNameAliases[ae]||ae;ne(R[0],od)}}else z+=R[0];$=V.keywordPatternRe.lastIndex,R=V.keywordPatternRe.exec(v)}z+=v.substring($),Z.addText(z)}function te(){if(v==="")return;let $=null;if(typeof V.subLanguage=="string"){if(!o[V.subLanguage]){Z.addText(v);return}$=f(V.subLanguage,v,!0,Qn[V.subLanguage]),Qn[V.subLanguage]=$._top}else $=u(v,V.subLanguage.length?V.subLanguage:null);V.relevance>0&&(Te+=$.relevance),Z.__addSublanguage($._emitter,$.language)}function X(){V.subLanguage!=null?te():j(),v=""}function ne($,R){$!==""&&(Z.startScope(R),Z.addText($),Z.endScope())}function Zn($,R){let z=1;const U=R.length-1;for(;z<=U;){if(!$._emit[z]){z++;continue}const Y=oe.classNameAliases[$[z]]||$[z],ae=R[z];Y?ne(ae,Y):(v=ae,j(),v=""),z++}}function jn($,R){return $.scope&&typeof $.scope=="string"&&Z.openNode(oe.classNameAliases[$.scope]||$.scope),$.beginScope&&($.beginScope._wrap?(ne(v,oe.classNameAliases[$.beginScope._wrap]||$.beginScope._wrap),v=""):$.beginScope._multi&&(Zn($.beginScope,R),v="")),V=Object.create($,{parent:{value:V}}),V}function Yn($,R,z){let U=Ci($.endRe,z);if(U){if($["on:end"]){const Y=new dn($);$["on:end"](R,Y),Y.isMatchIgnored&&(U=!1)}if(U){for(;$.endsParent&&$.parent;)$=$.parent;return $}}if($.endsWithParent)return Yn($.parent,R,z)}function Xc($){return V.matcher.regexIndex===0?(v+=$[0],1):(ft=!0,0)}function Qc($){const R=$[0],z=$.rule,U=new dn(z),Y=[z.__beforeBegin,z["on:begin"]];for(const ae of Y)if(ae&&(ae($,U),U.isMatchIgnored))return Xc(R);return z.skip?v+=R:(z.excludeBegin&&(v+=R),X(),!z.returnBegin&&!z.excludeBegin&&(v=R)),jn(z,$),z.returnBegin?0:R.length}function Jc($){const R=$[0],z=M.substring($.index),U=Yn(V,$,z);if(!U)return wn;const Y=V;V.endScope&&V.endScope._wrap?(X(),ne(R,V.endScope._wrap)):V.endScope&&V.endScope._multi?(X(),Zn(V.endScope,$)):Y.skip?v+=R:(Y.returnEnd||Y.excludeEnd||(v+=R),X(),Y.excludeEnd&&(v=R));do V.scope&&Z.closeNode(),!V.skip&&!V.subLanguage&&(Te+=V.relevance),V=V.parent;while(V!==U.parent);return U.starts&&jn(U.starts,$),Y.returnEnd?0:R.length}function ed(){const $=[];for(let R=V;R!==oe;R=R.parent)R.scope&&$.unshift(R.scope);$.forEach(R=>Z.openNode(R))}let De={};function Xn($,R){const z=R&&R[0];if(v+=$,z==null)return X(),0;if(De.type==="begin"&&R.type==="end"&&De.index===R.index&&z===""){if(v+=M.slice(R.index,R.index+1),!r){const U=new Error(`0 width match regex (${E})`);throw U.languageName=E,U.badRule=De.rule,U}return 1}if(De=R,R.type==="begin")return Qc(R);if(R.type==="illegal"&&!D){const U=new Error('Illegal lexeme "'+z+'" for mode "'+(V.scope||"<unnamed>")+'"');throw U.mode=V,U}else if(R.type==="end"){const U=Jc(R);if(U!==wn)return U}if(R.type==="illegal"&&z==="")return v+=`
7
- `,1;if(mt>1e5&&mt>R.index*3)throw new Error("potential infinite loop, way more iterations than matches");return v+=z,z.length}const oe=_(E);if(!oe)throw de(s.replace("{}",E)),new Error('Unknown language: "'+E+'"');const td=oc(oe);let dt="",V=L||td;const Qn={},Z=new l.__emitter(l);ed();let v="",Te=0,me=0,mt=0,ft=!1;try{if(oe.__emitTokens)oe.__emitTokens(M,Z);else{for(V.matcher.considerAll();;){mt++,ft?ft=!1:V.matcher.considerAll(),V.matcher.lastIndex=me;const $=V.matcher.exec(M);if(!$)break;const R=M.substring(me,$.index),z=Xn(R,$);me=$.index+z}Xn(M.substring(me))}return Z.finalize(),dt=Z.toHTML(),{language:E,value:dt,relevance:Te,illegal:!1,_emitter:Z,_top:V}}catch($){if($.message&&$.message.includes("Illegal"))return{language:E,value:it(M),illegal:!0,relevance:0,_illegalBy:{message:$.message,index:me,context:M.slice(me-100,me+100),mode:$.mode,resultSoFar:dt},_emitter:Z};if(r)return{language:E,value:it(M),illegal:!1,relevance:0,errorRaised:$,_emitter:Z,_top:V};throw $}}function p(E){const M={value:it(E),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return M._emitter.addText(E),M}function u(E,M){M=M||l.languages||Object.keys(o);const D=p(E),L=M.filter(_).filter(w).map(X=>f(X,E,!1));L.unshift(D);const P=L.sort((X,ne)=>{if(X.relevance!==ne.relevance)return ne.relevance-X.relevance;if(X.language&&ne.language){if(_(X.language).supersetOf===ne.language)return 1;if(_(ne.language).supersetOf===X.language)return-1}return 0}),[q,j]=P,te=q;return te.secondBest=j,te}function B(E,M,D){const L=M&&n[M]||D;E.classList.add("hljs"),E.classList.add(`language-${L}`)}function C(E){let M=null;const D=i(E);if(d(D))return;if(F("before:highlightElement",{el:E,language:D}),E.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",E);return}if(E.children.length>0&&(l.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(E)),l.throwUnescapedHTML))throw new rc("One of your code blocks includes unescaped HTML.",E.innerHTML);M=E;const L=M.textContent,P=D?m(L,{language:D,ignoreIllegals:!0}):u(L);E.innerHTML=P.value,E.dataset.highlighted="yes",B(E,D,P.language),E.result={language:P.language,re:P.relevance,relevance:P.relevance},P.secondBest&&(E.secondBest={language:P.secondBest.language,relevance:P.secondBest.relevance}),F("after:highlightElement",{el:E,result:P,text:L})}function y(E){l=Sn(l,E)}const g=()=>{T(),ge("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function b(){T(),ge("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let k=!1;function T(){function E(){T()}if(document.readyState==="loading"){k||window.addEventListener("DOMContentLoaded",E,!1),k=!0;return}document.querySelectorAll(l.cssSelector).forEach(C)}function S(E,M){let D=null;try{D=M(t)}catch(L){if(de("Language definition for '{}' could not be registered.".replace("{}",E)),r)de(L);else throw L;D=c}D.name||(D.name=E),o[E]=D,D.rawDefinition=M.bind(null,t),D.aliases&&h(D.aliases,{languageName:E})}function I(E){delete o[E];for(const M of Object.keys(n))n[M]===E&&delete n[M]}function W(){return Object.keys(o)}function _(E){return E=(E||"").toLowerCase(),o[E]||o[n[E]]}function h(E,{languageName:M}){typeof E=="string"&&(E=[E]),E.forEach(D=>{n[D.toLowerCase()]=M})}function w(E){const M=_(E);return M&&!M.disableAutodetect}function O(E){E["before:highlightBlock"]&&!E["before:highlightElement"]&&(E["before:highlightElement"]=M=>{E["before:highlightBlock"](Object.assign({block:M.el},M))}),E["after:highlightBlock"]&&!E["after:highlightElement"]&&(E["after:highlightElement"]=M=>{E["after:highlightBlock"](Object.assign({block:M.el},M))})}function H(E){O(E),a.push(E)}function K(E){const M=a.indexOf(E);M!==-1&&a.splice(M,1)}function F(E,M){const D=E;a.forEach(function(L){L[D]&&L[D](M)})}function ee(E){return ge("10.7.0","highlightBlock will be removed entirely in v12.0"),ge("10.7.0","Please use highlightElement now."),C(E)}Object.assign(t,{highlight:m,highlightAuto:u,highlightAll:T,highlightElement:C,highlightBlock:ee,configure:y,initHighlighting:g,initHighlightingOnLoad:b,registerLanguage:S,unregisterLanguage:I,listLanguages:W,getLanguage:_,registerAliases:h,autoDetection:w,inherit:Sn,addPlugin:H,removePlugin:K}),t.debugMode=function(){r=!1},t.safeMode=function(){r=!0},t.versionString=lc,t.regex={concat:ce,lookahead:pn,either:lt,optional:Bi,anyNumberOfTimes:Ei};for(const E in Ce)typeof Ce[E]=="object"&&cn(Ce[E]);return Object.assign(t,Ce),t},_e=$n({});_e.newInstance=()=>$n({});var ic=_e;_e.HighlightJS=_e,_e.default=_e;const G=_i(ic),xn="[A-Za-z$_][0-9A-Za-z$_]*",cc=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],dc=["true","false","null","undefined","NaN","Infinity"],Dn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Tn=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],An=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],mc=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fc=[].concat(An,Dn,Tn);function Mn(t){const o=t.regex,n=(D,{after:L})=>{const P="</"+D[0].slice(1);return D.input.indexOf(P,L)!==-1},a=xn,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(D,L)=>{const P=D[0].length+D.index,q=D.input[P];if(q==="<"||q===","){L.ignoreMatch();return}q===">"&&(n(D,{after:P})||L.ignoreMatch());let j;const te=D.input.substring(P);if(j=te.match(/^\s*=/)){L.ignoreMatch();return}if((j=te.match(/^\s+extends\s+/))&&j.index===0){L.ignoreMatch();return}}},l={$pattern:xn,keyword:cc,literal:dc,built_in:fc,"variable.language":mc},d="[0-9](_?[0-9])*",i=`\\.(${d})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${m})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${m})\\b((${i})\\b|\\.)?|(${i})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},u={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},B={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"css"}},C={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},b={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:a+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},k=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,B,C,y,{match:/\$\d+/},f];p.contains=k.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(k)});const T=[].concat(b,p.contains),S=T.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(T)}]),I={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S},W={variants:[{match:[/class/,/\s+/,a,/\s+/,/extends/,/\s+/,o.concat(a,"(",o.concat(/\./,a),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,a],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:o.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Dn,...Tn]}},h={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},w={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[I],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function H(D){return o.concat("(?!",D.join("|"),")")}const K={match:o.concat(/\b/,H([...An,"super","import"].map(D=>`${D}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},F={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ee={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},I]},E="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",M={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(E)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[I]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),h,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,B,C,y,b,{match:/\$\d+/},f,_,{scope:"attr",match:a+o.lookahead(":"),relevance:0},M,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[b,t.REGEXP_MODE,{className:"function",begin:E,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},w,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[I,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},F,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[I]},K,O,W,ee,{match:/\$[(.]/}]}}const we="[A-Za-z$_][0-9A-Za-z$_]*",Rn=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],In=["true","false","null","undefined","NaN","Infinity"],Vn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],On=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Ln=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],zn=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Fn=[].concat(Ln,Vn,On);function uc(t){const o=t.regex,n=(D,{after:L})=>{const P="</"+D[0].slice(1);return D.input.indexOf(P,L)!==-1},a=we,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(D,L)=>{const P=D[0].length+D.index,q=D.input[P];if(q==="<"||q===","){L.ignoreMatch();return}q===">"&&(n(D,{after:P})||L.ignoreMatch());let j;const te=D.input.substring(P);if(j=te.match(/^\s*=/)){L.ignoreMatch();return}if((j=te.match(/^\s+extends\s+/))&&j.index===0){L.ignoreMatch();return}}},l={$pattern:we,keyword:Rn,literal:In,built_in:Fn,"variable.language":zn},d="[0-9](_?[0-9])*",i=`\\.(${d})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${m})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${m})\\b((${i})\\b|\\.)?|(${i})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},u={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},B={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"css"}},C={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},b={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:a+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},k=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,B,C,y,{match:/\$\d+/},f];p.contains=k.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(k)});const T=[].concat(b,p.contains),S=T.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(T)}]),I={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S},W={variants:[{match:[/class/,/\s+/,a,/\s+/,/extends/,/\s+/,o.concat(a,"(",o.concat(/\./,a),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,a],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:o.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Vn,...On]}},h={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},w={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[I],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function H(D){return o.concat("(?!",D.join("|"),")")}const K={match:o.concat(/\b/,H([...Ln,"super","import"].map(D=>`${D}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},F={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},ee={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},I]},E="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",M={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(E)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[I]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),h,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,B,C,y,b,{match:/\$\d+/},f,_,{scope:"attr",match:a+o.lookahead(":"),relevance:0},M,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[b,t.REGEXP_MODE,{className:"function",begin:E,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},w,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[I,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},F,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[I]},K,O,W,ee,{match:/\$[(.]/}]}}function Pn(t){const o=t.regex,n=uc(t),a=we,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,t.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},c={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},d=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],i={$pattern:we,keyword:Rn.concat(d),literal:In,built_in:Fn.concat(r),"variable.language":zn},m={className:"meta",begin:"@"+a},f=(C,y,g)=>{const b=C.contains.findIndex(k=>k.label===y);if(b===-1)throw new Error("can not find mode to replace");C.contains.splice(b,1,g)};Object.assign(n.keywords,i),n.exports.PARAMS_CONTAINS.push(m);const p=n.contains.find(C=>C.scope==="attr"),u=Object.assign({},p,{match:o.concat(a,o.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,p,u]),n.contains=n.contains.concat([m,s,c,u]),f(n,"shebang",t.SHEBANG()),f(n,"use_strict",l);const B=n.contains.find(C=>C.label==="func.def");return B.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function Un(t){const o=t.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),a=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:a,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},d={className:"meta",begin:/^(>>>|\.\.\.) /},i={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},m={begin:/\{\{/,relevance:0},f={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d,m,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d,m,i]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[t.BACKSLASH_ESCAPE,m,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,m,i]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",u=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,B=`\\b|${a.join("|")}`,C={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${u}))[eE][+-]?(${p})[jJ]?(?=${B})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${B})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${B})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${B})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${B})`},{begin:`\\b(${p})[jJ](?=${B})`}]},y={className:"comment",begin:o.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},g={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",d,C,f,t.HASH_COMMENT_MODE]}]};return i.contains=[f,C,d],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[d,C,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,y,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[g]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[C,g,f]}]}}function ct(t){const o=t.regex,n={},a={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:o.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const r={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},s=t.inherit(t.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),c={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,n,r]};r.contains.push(l);const d={match:/\\"/},i={className:"string",begin:/'/,end:/'/},m={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,n]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],u=t.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),B={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},C=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],g={match:/(\/[a-z._-]+)+/},b=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],k=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],T=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],S=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:C,literal:y,built_in:[...b,...k,"set","shopt",...T,...S]},contains:[u,t.SHEBANG(),B,f,s,c,g,l,d,i,m,n]}}function pc(t){const o={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},a=["true","false","null"],r={scope:"literal",beginKeywords:a.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:a},contains:[o,n,t.QUOTE_STRING_MODE,r,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function gc(t){const o=t.regex,n=t.COMMENT("--","$"),a={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],c=["double precision","large object","with timezone","without timezone"],l=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],d=["add","asc","collation","desc","final","first","last","view"],i=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],m=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],f=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],p=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],u=m,B=[...i,...d].filter(S=>!m.includes(S)),C={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},g={match:o.concat(/\b/,o.either(...u),/\s*\(/),relevance:0,keywords:{built_in:u}};function b(S){return o.concat(/\b/,o.either(...S.map(I=>I.replace(/\s+/,"\\s+"))),/\b/)}const k={scope:"keyword",match:b(p),relevance:0};function T(S,{exceptions:I,when:W}={}){const _=W;return I=I||[],S.map(h=>h.match(/\|\d+$/)||I.includes(h)?h:_(h)?`${h}|0`:h)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:T(B,{when:S=>S.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:b(c)},k,g,C,a,r,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,n,y]}}function vn(t){const o=t.regex,n=o.concat(/[\p{L}_]/u,o.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),a=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},c=t.inherit(s,{begin:/\(/,end:/\)/}),l=t.inherit(t.APOS_STRING_MODE,{className:"string"}),d=t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),i={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:a,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[r]},{begin:/'/,end:/'/,contains:[r]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,d,l,c,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,c,d,l]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[d]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[i],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[i],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:o.concat(/</,o.lookahead(o.concat(n,o.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:i}]},{className:"tag",begin:o.concat(/<\//,o.lookahead(o.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const _c=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),bc=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],yc=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],kc=[...bc,...yc],hc=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Ec=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Bc=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Nc=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Cc(t){const o=t.regex,n=_c(t),a={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",s=/@-?\w[\w]*(-\w+)*/,c="[a-zA-Z-][a-zA-Z0-9_-]*",l=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,a,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+c,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Ec.join("|")+")"},{begin:":(:)?("+Bc.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Nc.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:o.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:hc.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+kc.join("|")+")\\b"}]}}function Kn(t){const o=t.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},a={begin:"^[-\\*]{3,}",end:"$"},r={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},c={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:o.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},i={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},m={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=t.inherit(i,{contains:[]}),p=t.inherit(m,{contains:[]});i.contains.push(p),m.contains.push(f);let u=[n,d];return[i,m,f,p].forEach(g=>{g.contains=g.contains.concat(u)}),u=u.concat(i,m),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:u},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:u}]}]},n,s,i,m,{className:"quote",begin:"^>\\s+",contains:u,end:"$"},r,a,d,c,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function Gn(t){const o="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},c={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,r]},l=t.inherit(c,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},u={end:",",endsWithParent:!0,excludeEnd:!0,keywords:o,relevance:0},B={begin:/\{/,end:/\}/,contains:[u],illegal:"\\n",relevance:0},C={begin:"\\[",end:"\\]",contains:[u],illegal:"\\n",relevance:0},y=[a,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:o,keywords:{literal:o}},p,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},B,C,s,c],g=[...y];return g.pop(),g.push(l),u.contains=g,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}var be="[0-9](_*[0-9])*",$e=`\\.(${be})`,xe="[0-9a-fA-F](_*[0-9a-fA-F])*",Hn={className:"number",variants:[{begin:`(\\b(${be})((${$e})|\\.)?|(${$e}))[eE][+-]?(${be})[fFdD]?\\b`},{begin:`\\b(${be})((${$e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${$e})[fFdD]?\\b`},{begin:`\\b(${be})[fFdD]\\b`},{begin:`\\b0[xX]((${xe})\\.?|(${xe})?\\.(${xe}))[pP][+-]?(${be})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${xe})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Wn(t,o,n){return n===-1?"":t.replace(o,a=>Wn(t,o,n-1))}function Sc(t){const o=t.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",a=n+Wn("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),d={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},i={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},m={className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[t.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:d,illegal:/<\/|#/,contains:[t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[t.BACKSLASH_ESCAPE]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[o.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[m,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+a+"\\s+)",t.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:d,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[i,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,Hn,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},Hn,i]}}function wc(t){const s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"string",variants:[t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[t.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,illegal:/["']/}]}]}}function $c(t){const o=t.regex,n=/(r#)?/,a=o.concat(n,t.UNDERSCORE_IDENT_RE),r=o.concat(n,t.IDENT_RE),s={className:"title.function.invoke",relevance:0,begin:o.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,o.lookahead(/\s*\(/))},c="([ui](8|16|32|64|128|size)|f(32|64))?",l=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],d=["true","false","Some","None","Ok","Err"],i=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],m=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:t.IDENT_RE+"!?",type:m,keyword:l,literal:d,built_in:i},illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*","\\*/",{contains:["self"]}),t.inherit(t.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+c},{begin:"\\b0o([0-7_]+)"+c},{begin:"\\b0x([A-Fa-f0-9_]+)"+c},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+c}],relevance:0},{begin:[/fn/,/\s+/,a],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,a],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,a,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,a],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,a],className:{1:"keyword",3:"title.class"}},{begin:t.IDENT_RE+"::",keywords:{keyword:"Self",built_in:i,type:m}},{className:"punctuation",begin:"->"},s]}}G.registerLanguage("javascript",Mn),G.registerLanguage("js",Mn),G.registerLanguage("typescript",Pn),G.registerLanguage("ts",Pn),G.registerLanguage("python",Un),G.registerLanguage("py",Un),G.registerLanguage("bash",ct),G.registerLanguage("sh",ct),G.registerLanguage("shell",ct),G.registerLanguage("json",pc),G.registerLanguage("sql",gc),G.registerLanguage("xml",vn),G.registerLanguage("html",vn),G.registerLanguage("css",Cc),G.registerLanguage("markdown",Kn),G.registerLanguage("md",Kn),G.registerLanguage("yaml",Gn),G.registerLanguage("yml",Gn),G.registerLanguage("java",Sc),G.registerLanguage("go",wc),G.registerLanguage("rust",$c);function xc(t={}){const{showCopyButton:o=!1,t:n=s=>s}=t,a=new Me.marked.Renderer;a.code=function(s,c){const l=typeof s=="object"?s.text||"":s,d=typeof s=="object"?s.lang||"":c||"",i=d&&G.getLanguage(d)?d:"plaintext";let m="";try{m=G.highlight(l,{language:i}).value}catch{m=G.highlight(l,{language:"plaintext"}).value}const f=o?`<button onclick="navigator.clipboard.writeText(this.parentElement.nextElementSibling.innerText)" class="of-markdown-copy-btn">${n("common.copy")}</button>`:"";return`<div class="of-code-block-wrapper">
3
+ `).length),autofocus:"",onBlur:l,onKeydown:e.withKeys(l,["escape"])},null,40,ss)),[[e.vModelText,s.value]]):e.renderSlot(i.$slots,"default",{key:1},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(f,p)=>(e.openBlock(),e.createElementBlock("p",{key:p,class:"content-block__para"},e.toDisplayString(f),1))),128)),d.value.length===0?(e.openBlock(),e.createElementBlock("span",cs,e.toDisplayString(t.editable?"点击编辑内容...":""),1)):e.createCommentVNode("",!0)],!0)],2))}}),[["__scopeId","data-v-26ff5a15"]]),is=["rows"],ds={class:"block-quote__text"},ms={key:0,class:"block-quote__cite"},an=D(e.defineComponent({__name:"BlockQuote",props:{content:{},cite:{},editable:{type:Boolean,default:!1}},emits:["update:content"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref("");function c(){n.editable&&(s.value=n.content,r.value=!0)}function l(){r.value=!1,a("update:content",s.value)}return(d,i)=>(e.openBlock(),e.createElementBlock("blockquote",{class:e.normalizeClass(["block-quote",{"block-quote--editable":t.editable}]),onClick:c},[r.value?e.withDirectives((e.openBlock(),e.createElementBlock("textarea",{key:0,"onUpdate:modelValue":i[0]||(i[0]=m=>s.value=m),class:"block-quote__textarea",rows:Math.max(2,s.value.split(`
4
+ `).length),autofocus:"",onBlur:l,onKeydown:e.withKeys(l,["escape"])},null,40,is)),[[e.vModelText,s.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("p",ds,e.toDisplayString(t.content),1),t.cite?(e.openBlock(),e.createElementBlock("footer",ms,"— "+e.toDisplayString(t.cite),1)):e.createCommentVNode("",!0)],64))],2))}}),[["__scopeId","data-v-eee9a32f"]]),fs={class:"code-block"},us={class:"code-block__header"},ps={class:"code-block__lang"},gs=["title"],_s={class:"code-block__copy-label"},bs={class:"code-block__pre"},ys={class:"code-block__code"},ln=D(e.defineComponent({__name:"CodeBlock",props:{code:{},language:{default:"bash"},copyable:{type:Boolean,default:!0}},setup(t){const o=t,n=e.ref(!1);async function a(){if(!n.value)try{await navigator.clipboard.writeText(o.code),n.value=!0,setTimeout(()=>{n.value=!1},2e3)}catch{}}return(r,s)=>(e.openBlock(),e.createElementBlock("div",fs,[e.createElementVNode("div",us,[e.createElementVNode("span",ps,e.toDisplayString(t.language),1),t.copyable?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["code-block__copy-btn",{"code-block__copy-btn--copied":n.value}]),title:n.value?"已复制":"复制代码",onClick:a},[n.value?(e.openBlock(),e.createBlock(e.unref(A.CheckIcon),{key:0,size:13})):(e.openBlock(),e.createBlock(e.unref(A.CopyIcon),{key:1,size:13})),e.createElementVNode("span",_s,e.toDisplayString(n.value?"已复制":"复制"),1)],10,gs)):e.createCommentVNode("",!0)]),e.createElementVNode("pre",bs,[e.createElementVNode("code",ys,e.toDisplayString(t.code),1)])]))}}),[["__scopeId","data-v-0697edd4"]]),rn=D(e.defineComponent({__name:"RefLink",props:{refId:{},label:{},href:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.label??n.refId);function s(c){n.href||c.preventDefault(),a("click",n.refId)}return(c,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"span"),{class:"ref-link",href:t.href,target:t.href?"_blank":void 0,rel:t.href?"noopener noreferrer":void 0,onClick:s},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value)+" ",1),t.href?(e.openBlock(),e.createBlock(e.unref(A.ExternalLinkIcon),{key:0,class:"ref-link__icon",size:10})):e.createCommentVNode("",!0)]),_:1},8,["href","target","rel"]))}}),[["__scopeId","data-v-6fdf4ff8"]]),ks=["aria-label"],hs={key:0,class:"of-modal__header"},Es={key:0,class:"of-modal__title"},Bs={key:1,class:"of-modal__title-placeholder"},Cs={class:"of-modal__body"},Ss={key:1,class:"of-modal__footer"},Be=D(e.defineComponent({inheritAttrs:!1,__name:"Modal",props:{modelValue:{type:Boolean},width:{default:"500px"},title:{},closable:{type:Boolean,default:!0},maskClosable:{type:Boolean,default:!0},centered:{type:Boolean,default:!0},zIndex:{default:1e3}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,a=o;function r(){a("update:modelValue",!1)}function s(){n.maskClosable&&r()}function c(l){l.key==="Escape"&&n.modelValue&&r()}return e.watch(()=>n.modelValue,l=>{typeof document>"u"||(l?(document.body.style.overflow="hidden",document.addEventListener("keydown",c)):(document.body.style.overflow="",document.removeEventListener("keydown",c)))}),e.onBeforeUnmount(()=>{typeof document>"u"||(document.body.style.overflow="",document.removeEventListener("keydown",c))}),(l,d)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"of-modal"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-modal-backdrop",style:e.normalizeStyle({zIndex:t.zIndex}),onClick:e.withModifiers(s,["self"])},[e.createElementVNode("div",{class:e.normalizeClass(["of-modal",{"of-modal--centered":t.centered}]),style:e.normalizeStyle({width:t.width,maxWidth:"90vw"}),role:"dialog","aria-modal":"true","aria-label":t.title},[l.$slots.header||t.title||t.closable?(e.openBlock(),e.createElementBlock("div",hs,[e.renderSlot(l.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",Es,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",Bs))],!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-modal__close",onClick:r,"aria-label":"关闭",type:"button"},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Cs,[e.renderSlot(l.$slots,"default",{},void 0,!0)]),l.$slots.footer?(e.openBlock(),e.createElementBlock("div",Ss,[e.renderSlot(l.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],14,ks)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-e0e0e570"]]),pe=e.reactive([]);let Ns=0;function Ce(t,o,n){const a=`toast-${Date.now()}-${Ns++}`,r={id:a,type:t,message:o,title:n==null?void 0:n.title,duration:(n==null?void 0:n.duration)??3e3};return pe.push(r),r.duration&&r.duration>0&&setTimeout(()=>sn(a),r.duration),a}function sn(t){const o=pe.findIndex(n=>n.id===t);o!==-1&&pe.splice(o,1)}function qe(){return{toasts:pe,info:(t,o)=>Ce("info",t,o),success:(t,o)=>Ce("success",t,o),warning:(t,o)=>Ce("warning",t,o),error:(t,o)=>Ce("error",t,o),remove:sn,clear:()=>pe.splice(0,pe.length)}}const ws={class:"of-rich-editor__toolbar-actions"},$s=["disabled"],xs=["disabled"],Ds={class:"of-rich-editor__form"},cn=D(e.defineComponent({__name:"RichTextEditor",props:{modelValue:{default:""},placeholder:{default:"请输入内容..."},editable:{type:Boolean,default:!0},minHeight:{default:220}},emits:["update:modelValue","change","save"],setup(t,{emit:o}){const n=t,a=o,r=qe(),s=e.ref(n.modelValue),c=e.ref(!1),l=e.ref(""),d=e.ref(""),i=e.ref(null),m={toolbar:{container:[["bold","italic","underline","strike"],[{header:[1,2,3,!1]}],[{list:"ordered"},{list:"bullet"}],[{align:[]}],["blockquote","code-block"],["link","image"],["clean"]]}};e.watch(()=>n.modelValue,h=>{h!==s.value&&(s.value=h)});const f=e.computed(()=>n.editable);function p(h){s.value=h,a("update:modelValue",h),a("change",h)}function u(){var k,N;const h=(N=(k=i.value)==null?void 0:k.getQuill)==null?void 0:N.call(k);if(!h)return;const b=h.getSelection(!0),C=(d.value||"").trim();C&&(l.value.trim()?(h.insertText(b.index,l.value.trim(),"link",C),h.setSelection(b.index+l.value.trim().length,0)):h.format("link",C),c.value=!1,l.value="",d.value="")}function y(){f.value&&(c.value=!0)}function B(){a("save",s.value||""),r.success("内容已保存")}return(h,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-rich-editor",{"is-readonly":!f.value}]),style:e.normalizeStyle({"--of-rich-editor-min-height":`${t.minHeight}px`})},[e.createElementVNode("div",ws,[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",disabled:!f.value,onClick:y}," 插入链接 ",8,$s),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",disabled:!f.value,onClick:B}," 保存 ",8,xs)]),e.createVNode(e.unref(So.QuillEditor),{ref_key:"editorRef",ref:i,theme:"snow","content-type":"html",content:s.value,options:{readOnly:!f.value,placeholder:t.placeholder,modules:m},"onUpdate:content":p},null,8,["content","options"]),e.createVNode(Be,{modelValue:c.value,"onUpdate:modelValue":b[3]||(b[3]=C=>c.value=C),title:"插入链接",width:"480px"},{footer:e.withCtx(()=>[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",onClick:b[2]||(b[2]=C=>c.value=!1)},"取消"),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",onClick:u}," 确认 ")]),default:e.withCtx(()=>[e.createElementVNode("div",Ds,[b[4]||(b[4]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-text"},"链接文本",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-text","onUpdate:modelValue":b[0]||(b[0]=C=>l.value=C),class:"of-rich-editor__input",placeholder:"请输入链接文本"},null,512),[[e.vModelText,l.value]]),b[5]||(b[5]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-url"},"链接地址",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-url","onUpdate:modelValue":b[1]||(b[1]=C=>d.value=C),class:"of-rich-editor__input",placeholder:"https://example.com"},null,512),[[e.vModelText,d.value]])])]),_:1},8,["modelValue"])],6))}}),[["__scopeId","data-v-e0830c45"]]),Ts={class:"of-form-designer"},Vs={class:"of-form-designer__header"},Ms={class:"of-form-designer__title"},As={class:"of-form-designer__meta"},Rs={class:"of-form-designer__inputs"},Is=["value","disabled","onInput"],Os=["value","disabled","onChange"],zs=["value"],Ls={class:"of-form-designer__checkbox-label"},Fs=["checked","disabled","onChange"],Ps={class:"of-form-designer__checkbox-label"},Us=["checked","disabled","onChange"],vs=["onClick"],Ks={key:1,class:"of-form-designer__options-wrap"},Gs=["value","disabled","onChange"],dn=D(e.defineComponent({__name:"FormDesigner",props:{schema:{},title:{default:"Form Designer"},readonly:{type:Boolean,default:!1}},emits:["update:schema","change"],setup(t,{emit:o}){const n=[{value:"text",label:"文本"},{value:"number",label:"数字"},{value:"select",label:"单选"},{value:"multi_select",label:"多选"},{value:"date",label:"日期"},{value:"datetime",label:"日期时间"},{value:"checkbox",label:"勾选"},{value:"url",label:"链接"},{value:"email",label:"邮箱"},{value:"phone",label:"电话"},{value:"rating",label:"评分"},{value:"user",label:"用户"},{value:"attachment",label:"附件"},{value:"relation",label:"关联"},{value:"formula",label:"公式"}],a=t,r=o,s=e.ref(l(a.schema));e.watch(()=>a.schema,k=>{s.value=l(k)},{deep:!0});const c=e.computed(()=>`${s.value.fields.length} 个字段`);function l(k){return{...k,fields:k.fields.map(d),views:k.views.map(N=>({...N}))}}function d(k){return ye(k)?{...k,options:k.options.map(N=>({...N}))}:{...k}}function i(){const k=l(s.value);r("update:schema",k),r("change",k)}function m(){return f("text",{id:`field_${Date.now()}`,name:"新字段",required:!1,hidden:!1})}function f(k,N){switch(k){case"text":return{...N,type:k};case"number":return{...N,type:k};case"select":case"multi_select":return{...N,type:k,options:p()};case"date":case"datetime":return{...N,type:k};case"checkbox":return{...N,type:k};case"url":case"email":case"phone":return{...N,type:k};case"rating":return{...N,type:k};case"user":return{...N,type:k};case"attachment":return{...N,type:k};case"relation":return{...N,type:k};case"formula":return{...N,type:k,formula:""}}}function p(){return[{value:"option_1",label:"选项 1"},{value:"option_2",label:"选项 2"}]}function u(){a.readonly||(s.value.fields.push(m()),i())}function y(k){a.readonly||(s.value.fields=s.value.fields.filter(N=>N.id!==k),i())}function B(k,N){const w=s.value.fields.findIndex(q=>q.id===k.id);if(w===-1)return;const V={id:k.id,name:k.name,required:k.required,hidden:k.hidden,width:k.width};s.value.fields[w]=ye(k)&&(N==="select"||N==="multi_select")?{...V,type:N,options:k.options.map(q=>({...q}))}:f(N,V),i()}function h(k,N){if(!ye(k))return;const w=N.split(",").map(V=>V.trim()).filter(Boolean);k.options=w.map(V=>({value:V,label:V})),i()}function b(k){return ye(k)?k.options.map(N=>N.label).join(", "):""}function C(){i()}return(k,N)=>(e.openBlock(),e.createElementBlock("div",Ts,[e.createElementVNode("div",Vs,[e.createElementVNode("div",null,[e.createElementVNode("h3",Ms,e.toDisplayString(t.title),1),e.createElementVNode("p",As,e.toDisplayString(s.value.name)+" · "+e.toDisplayString(c.value),1)]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__add-btn",onClick:u},[e.createVNode(e.unref(A.Plus),{size:14}),N[1]||(N[1]=e.createTextVNode(" 添加字段 ",-1))]))]),e.createVNode(e.unref(Re.VueDraggable),{modelValue:s.value.fields,"onUpdate:modelValue":N[0]||(N[0]=w=>s.value.fields=w),handle:".of-form-designer__drag",disabled:t.readonly,animation:150,onEnd:C},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value.fields,w=>(e.openBlock(),e.createElementBlock("div",{key:w.id,class:"of-form-designer__row"},[e.createElementVNode("span",{class:e.normalizeClass(["of-form-designer__drag",{disabled:t.readonly}])},[e.createVNode(e.unref(A.GripVertical),{size:14})],2),e.createElementVNode("div",Rs,[e.createElementVNode("input",{value:w.name,class:"of-form-designer__input",placeholder:"字段名称",disabled:t.readonly,onInput:V=>{w.name=String(V.target.value),i()}},null,40,Is),e.createElementVNode("select",{class:"of-form-designer__select",value:w.type,disabled:t.readonly,onChange:V=>B(w,V.target.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,V=>e.createElementVNode("option",{key:V.value,value:V.value},e.toDisplayString(V.label),9,zs)),64))],40,Os),e.createElementVNode("label",Ls,[e.createElementVNode("input",{type:"checkbox",checked:!!w.required,disabled:t.readonly,onChange:V=>{w.required=V.target.checked,i()}},null,40,Fs),N[2]||(N[2]=e.createTextVNode(" 必填 ",-1))]),e.createElementVNode("label",Ps,[e.createElementVNode("input",{type:"checkbox",checked:!!w.hidden,disabled:t.readonly,onChange:V=>{w.hidden=V.target.checked,i()}},null,40,Us),N[3]||(N[3]=e.createTextVNode(" 隐藏 ",-1))])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__remove-btn",onClick:V=>y(w.id)},[e.createVNode(e.unref(A.Trash2),{size:14})],8,vs)),w.type==="select"||w.type==="multi_select"?(e.openBlock(),e.createElementBlock("div",Ks,[N[4]||(N[4]=e.createElementVNode("label",{class:"of-form-designer__options-label"},"选项(逗号分隔)",-1)),e.createElementVNode("input",{value:b(w),class:"of-form-designer__input",placeholder:"例如:待办, 进行中, 完成",disabled:t.readonly,onChange:V=>h(w,String(V.target.value))},null,40,Gs)])):e.createCommentVNode("",!0)]))),128))]),_:1},8,["modelValue","disabled"])]))}}),[["__scopeId","data-v-4e4c412b"]]),Hs={class:"of-color-panel__header"},qs={class:"of-color-panel__label"},Ws={class:"of-color-panel__value"},Ys={class:"of-color-panel__picker-row"},Zs=["disabled"],js=["disabled"],Xs={class:"of-color-panel__presets"},Qs=["title","disabled","onClick"],mn=D(e.defineComponent({__name:"ColorPanel",props:{modelValue:{},presets:{default:()=>["#3b82f6","#10b981","#f59e0b","#ef4444","#8b5cf6","#06b6d4"]},showInput:{type:Boolean,default:!0},disabled:{type:Boolean},label:{default:"颜色"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.computed({get:()=>n.modelValue||"#3b82f6",set:c=>{a("update:modelValue",c),a("change",c)}});function s(c){n.disabled||(r.value=c)}return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-color-panel",{disabled:t.disabled}])},[e.createElementVNode("div",Hs,[e.createElementVNode("span",qs,e.toDisplayString(t.label),1),e.createElementVNode("span",Ws,e.toDisplayString(r.value),1)]),e.createElementVNode("div",Ys,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":l[0]||(l[0]=d=>r.value=d),class:"of-color-panel__picker",type:"color",disabled:t.disabled},null,8,Zs),[[e.vModelText,r.value]]),t.showInput?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":l[1]||(l[1]=d=>r.value=d),class:"of-color-panel__input",type:"text",disabled:t.disabled,placeholder:"#3b82f6"},null,8,js)),[[e.vModelText,r.value]]):e.createCommentVNode("",!0)]),e.createElementVNode("div",Xs,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.presets,d=>(e.openBlock(),e.createElementBlock("button",{key:d,type:"button",class:"of-color-panel__preset",title:d,style:e.normalizeStyle({backgroundColor:d}),disabled:t.disabled,onClick:i=>s(d)},null,12,Qs))),128))])],2))}}),[["__scopeId","data-v-6c54d0c7"]]),Js={class:"of-person-panel__row"},ec=["src","alt"],tc={key:1},nc={key:1,class:"of-person-panel__avatar empty"},oc=["disabled"],ac={value:null},lc=["value"],fn=D(e.defineComponent({__name:"PersonPanel",props:{modelValue:{default:null},people:{},placeholder:{default:"请选择负责人"},disabled:{type:Boolean}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.computed({get:()=>n.modelValue,set:l=>{a("update:modelValue",l),a("change",l)}}),s=e.computed(()=>n.people.find(l=>l.id===r.value)??null);function c(l){return(l||"?").trim().slice(0,1).toUpperCase()}return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-person-panel",{disabled:t.disabled}])},[d[1]||(d[1]=e.createElementVNode("label",{class:"of-person-panel__label"},"负责人",-1)),e.createElementVNode("div",Js,[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-person-panel__avatar",style:e.normalizeStyle({background:s.value.color||"var(--of-color-primary-500)"})},[s.value.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:s.value.avatar,alt:s.value.name},null,8,ec)):(e.openBlock(),e.createElementBlock("span",tc,e.toDisplayString(c(s.value.name)),1))],4)):(e.openBlock(),e.createElementBlock("div",nc,"-")),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),class:"of-person-panel__select",disabled:t.disabled},[e.createElementVNode("option",ac,e.toDisplayString(t.placeholder),1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.people,i=>(e.openBlock(),e.createElementBlock("option",{key:i.id,value:i.id},[e.createTextVNode(e.toDisplayString(i.name),1),i.title?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" · "+e.toDisplayString(i.title),1)],64)):e.createCommentVNode("",!0)],8,lc))),128))],8,oc),[[e.vModelSelect,r.value]])])],2))}}),[["__scopeId","data-v-c73d2b9f"]]),rc={class:"of-file-upload"},sc=["multiple","accept","disabled"],cc=["disabled"],ic={key:0,class:"of-file-upload__list"},dc={class:"of-file-upload__name"},mc={class:"of-file-upload__size"},fc=["disabled","onClick"],un=D(e.defineComponent({__name:"FileUpload",props:{modelValue:{default:()=>[]},multiple:{type:Boolean,default:!1},accept:{default:""},maxCount:{default:1},disabled:{type:Boolean},hint:{default:"点击或拖拽文件到此处上传"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(!1),s=e.ref(null);function c(p){if(!p)return n.modelValue??[];const u=Array.from(p);return(n.multiple?[...n.modelValue??[],...u]:u.slice(0,1)).slice(0,Math.max(n.maxCount,1))}function l(p){if(n.disabled)return;const u=c(p);a("update:modelValue",u),a("change",u)}function d(p){l(p.target.files)}function i(p){var u;p.preventDefault(),r.value=!1,l(((u=p.dataTransfer)==null?void 0:u.files)??null)}function m(p){if(n.disabled)return;const u=[...n.modelValue??[]];u.splice(p,1),a("update:modelValue",u),a("change",u)}function f(){var p;n.disabled||(p=s.value)==null||p.click()}return(p,u)=>(e.openBlock(),e.createElementBlock("div",rc,[e.createElementVNode("input",{ref_key:"fileInput",ref:s,class:"of-file-upload__native",type:"file",multiple:t.multiple,accept:t.accept,disabled:t.disabled,onChange:d},null,40,sc),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["of-file-upload__dropzone",{dragging:r.value,disabled:t.disabled}]),disabled:t.disabled,onClick:f,onDragover:u[0]||(u[0]=e.withModifiers(y=>r.value=!0,["prevent"])),onDragleave:u[1]||(u[1]=e.withModifiers(y=>r.value=!1,["prevent"])),onDrop:i},[e.createVNode(e.unref(A.Upload),{size:16}),e.createElementVNode("span",null,e.toDisplayString(t.hint),1)],42,cc),t.modelValue&&t.modelValue.length?(e.openBlock(),e.createElementBlock("ul",ic,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modelValue,(y,B)=>(e.openBlock(),e.createElementBlock("li",{key:`${y.name}-${B}`,class:"of-file-upload__item"},[e.createElementVNode("span",dc,e.toDisplayString(y.name),1),e.createElementVNode("span",mc,e.toDisplayString((y.size/1024).toFixed(1))+" KB",1),e.createElementVNode("button",{type:"button",class:"of-file-upload__remove",disabled:t.disabled,onClick:h=>m(B)},[e.createVNode(e.unref(A.X),{size:14})],8,fc)]))),128))])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-75f8d933"]]),uc={class:"prop-row"},pc={class:"prop-row__key"},gc={class:"prop-row__value-area"},_c={key:0,class:"prop-row__plain-text"},We=D(e.defineComponent({__name:"PropRow",props:{propKey:{},value:{},type:{default:"text"},statusColorMap:{},priorityColorMap:{},customColorMap:{},valueColor:{},valueBg:{},dotColor:{}},setup(t){const o=t,n=e.computed(()=>!o.type||o.type==="date"||o.type==="text"),a=e.computed(()=>n.value?null:o.type==="status"?te(o.value,ne(ce,o.statusColorMap)):o.type==="priority"?te(o.value,ne(fe,o.priorityColorMap)):o.type==="badge"&&o.customColorMap?te(o.value,o.customColorMap):null),r=e.computed(()=>a.value?a.value.style:{color:o.valueColor??"var(--of-color-gray-700)",background:o.valueBg??"var(--of-color-gray-100)"}),s=e.computed(()=>{var d;return((d=a.value)==null?void 0:d.label)??o.value}),c=e.computed(()=>{var d;return((d=a.value)==null?void 0:d.dot)??o.dotColor}),l=e.computed(()=>!!c.value);return(d,i)=>(e.openBlock(),e.createElementBlock("div",uc,[e.createElementVNode("span",pc,e.toDisplayString(t.propKey),1),e.createElementVNode("div",gc,[n.value?(e.openBlock(),e.createElementBlock("span",_c,e.toDisplayString(t.value),1)):(e.openBlock(),e.createElementBlock("span",{key:1,class:"prop-row__badge",style:e.normalizeStyle(r.value)},[l.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:"prop-row__dot",style:e.normalizeStyle({backgroundColor:c.value})},null,4)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(s.value),1)],4))])]))}}),[["__scopeId","data-v-ef40ebd2"]]),bc={class:"prop-panel"},yc={class:"prop-panel__title"},kc={class:"prop-panel__body"},hc={key:0,class:"prop-panel__extra"},Ye=D(e.defineComponent({__name:"PropPanel",props:{items:{},title:{default:"属性"},collapsible:{type:Boolean,default:!1}},setup(t){const o=t,n=e.ref(!1);function a(){o.collapsible&&(n.value=!n.value)}return(r,s)=>(e.openBlock(),e.createElementBlock("div",bc,[e.createElementVNode("div",{class:e.normalizeClass(["prop-panel__header",{"prop-panel__header--collapsible":t.collapsible}]),onClick:a},[e.createElementVNode("span",yc,e.toDisplayString(t.title),1),t.collapsible?(e.openBlock(),e.createBlock(e.unref(A.ChevronDownIcon),{key:0,class:e.normalizeClass(["prop-panel__chevron",{"prop-panel__chevron--up":!n.value}]),size:14},null,8,["class"])):e.createCommentVNode("",!0)],2),e.withDirectives(e.createElementVNode("div",kc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,c=>(e.openBlock(),e.createBlock(We,{key:c.key,"prop-key":c.key,value:c.value,"value-color":c.valueColor,"value-bg":c.valueBg,"dot-color":c.dotColor},null,8,["prop-key","value","value-color","value-bg","dot-color"]))),128)),r.$slots.extra?(e.openBlock(),e.createElementBlock("div",hc,[e.renderSlot(r.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,!n.value]])]))}}),[["__scopeId","data-v-3fe44a05"]]),Ec={class:"comment-item"},Bc={class:"comment-item__content"},Cc={class:"comment-item__header"},Sc={class:"comment-item__author"},Nc={key:0,class:"comment-item__action"},wc={class:"comment-item__time"},$c={class:"comment-item__text"},Ze=D(e.defineComponent({__name:"CommentItem",props:{comment:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Ec,[e.createElementVNode("div",{class:"comment-item__avatar",style:e.normalizeStyle({backgroundColor:t.comment.avatarColor??"var(--of-color-primary-500)"})},e.toDisplayString(t.comment.authorInitial),5),e.createElementVNode("div",Bc,[e.createElementVNode("div",Cc,[e.createElementVNode("span",Sc,e.toDisplayString(t.comment.author),1),t.comment.action?(e.openBlock(),e.createElementBlock("span",Nc,e.toDisplayString(t.comment.action),1)):e.createCommentVNode("",!0),e.createElementVNode("span",wc,e.toDisplayString(t.comment.time),1)]),e.createElementVNode("div",$c,e.toDisplayString(t.comment.content),1)])]))}}),[["__scopeId","data-v-b3c37688"]]),xc={class:"detail-layout"},Dc={class:"detail-layout__main"},Tc={class:"detail-layout__title"},Vc={class:"detail-layout__meta"},Mc={key:0,class:"detail-layout__badge detail-layout__badge--role"},Ac={key:1,class:"detail-layout__meta-text"},Rc={class:"detail-layout__section"},Ic={class:"detail-layout__description"},Oc={key:0,class:"detail-layout__desc-placeholder"},zc={class:"detail-layout__section"},Lc={class:"detail-layout__comments"},Fc={key:0,class:"detail-layout__comment-list"},Pc={key:1,class:"detail-layout__empty-hint"},Uc={class:"detail-layout__sidebar"},pn=D(e.defineComponent({__name:"DetailLayout",props:{task:{},comments:{default:()=>[]},propItems:{default:()=>[]},descriptionContent:{default:""},descriptionEditable:{type:Boolean,default:!1}},emits:["update:descriptionContent"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>({todo:{text:"var(--of-status-todo-text)",bg:"var(--of-status-todo-bg)"},in_progress:{text:"var(--of-status-in-progress-text)",bg:"var(--of-status-in-progress-bg)"},blocked:{text:"var(--of-status-blocked-text)",bg:"var(--of-status-blocked-bg)"},done:{text:"var(--of-status-done-text)",bg:"var(--of-status-done-bg)"}})[n.task.status]??{text:"var(--of-color-text-secondary)",bg:"var(--of-color-gray-100)"}),s=e.computed(()=>({P0:{text:"var(--of-priority-p0-text)",bg:"var(--of-priority-p0-bg)"},P1:{text:"var(--of-priority-p1-text)",bg:"var(--of-priority-p1-bg)"},P2:{text:"var(--of-priority-p2-text)",bg:"var(--of-priority-p2-bg)"},P3:{text:"var(--of-priority-p3-text)",bg:"var(--of-priority-p3-bg)"}})[n.task.priority]??{text:"var(--of-color-text-secondary)",bg:"var(--of-color-gray-100)"}),c=e.computed(()=>({todo:"待处理",in_progress:"进行中",blocked:"阻塞",done:"已完成"})[n.task.status]??n.task.status),l=e.computed(()=>n.descriptionContent||n.task.description||"");function d(i){a("update:descriptionContent",i)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",xc,[e.createElementVNode("div",Dc,[e.createElementVNode("h1",Tc,e.toDisplayString(t.task.title),1),e.createElementVNode("div",Vc,[i.$slots.meta?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("span",{class:"detail-layout__badge",style:e.normalizeStyle({color:r.value.text,backgroundColor:r.value.bg})},e.toDisplayString(c.value),5),e.createElementVNode("span",{class:"detail-layout__badge",style:e.normalizeStyle({color:s.value.text,backgroundColor:s.value.bg})},e.toDisplayString(t.task.priority),5),t.task.role?(e.openBlock(),e.createElementBlock("span",Mc,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0),t.task.assignee?(e.openBlock(),e.createElementBlock("span",Ac,e.toDisplayString(t.task.assignee),1)):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"meta",{},void 0,!0)]),e.createElementVNode("div",Rc,[m[0]||(m[0]=e.createElementVNode("div",{class:"detail-layout__section-title"},"描述",-1)),e.createElementVNode("div",Ic,[e.renderSlot(i.$slots,"description",{},()=>[e.createVNode(e.unref(He),{content:l.value,editable:t.descriptionEditable,"onUpdate:content":d},null,8,["content","editable"]),l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",Oc," 暂无描述 "))],!0)])]),e.createElementVNode("div",zc,[m[1]||(m[1]=e.createElementVNode("div",{class:"detail-layout__section-title"},"活动记录",-1)),e.createElementVNode("div",Lc,[e.renderSlot(i.$slots,"comments",{},()=>[t.comments&&t.comments.length>0?(e.openBlock(),e.createElementBlock("div",Fc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comments,f=>(e.openBlock(),e.createBlock(Ze,{key:f.id,comment:f},null,8,["comment"]))),128))])):(e.openBlock(),e.createElementBlock("p",Pc,"暂无活动记录"))],!0)])])]),e.createElementVNode("div",Uc,[e.renderSlot(i.$slots,"props",{},()=>[t.propItems&&t.propItems.length>0?(e.openBlock(),e.createBlock(Ye,{key:0,items:t.propItems,title:"属性"},null,8,["items"])):e.createCommentVNode("",!0)],!0)])]))}}),[["__scopeId","data-v-02cd0381"]]),vc={class:"of-dashboard-chart"},je=D(e.defineComponent({__name:"BarChart",props:{title:{default:""},xAxisData:{default:()=>["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]},seriesName:{default:"Value"},data:{default:()=>[120,200,150,80,70,110,130]},colors:{default:()=>["#3b82f6"]}},setup(t){const o=t,n=e.ref(null);let a=null,r=null;const s=()=>{n.value&&(a||(a=bt.init(n.value)),a.setOption({color:o.colors,title:o.title?{text:o.title,left:"center",textStyle:{fontSize:14,fontWeight:600}}:void 0,tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},grid:{left:12,right:12,top:o.title?42:16,bottom:8,containLabel:!0},xAxis:{type:"category",data:o.xAxisData},yAxis:{type:"value"},series:[{name:o.seriesName,type:"bar",barMaxWidth:36,data:o.data}]}))};return e.onMounted(()=>{s(),n.value&&(r=new ResizeObserver(()=>a==null?void 0:a.resize()),r.observe(n.value))}),e.onUnmounted(()=>{r==null||r.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.xAxisData,o.seriesName,o.data,o.colors],s,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",vc,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-69dd32c8"]]),Kc={class:"of-dashboard-chart"},Se=D(e.defineComponent({__name:"PieChart",props:{title:{default:""},data:{default:()=>[{name:"Todo",value:12},{name:"In Progress",value:9},{name:"Done",value:18}]},colors:{default:()=>["#3b82f6","#10b981","#f59e0b","#8b5cf6","#ef4444"]},doughnut:{type:Boolean,default:!1},showLegend:{type:Boolean,default:!0}},setup(t){const o=t,n=e.ref(null);let a=null,r=null;const s=()=>{n.value&&(a||(a=bt.init(n.value)),a.setOption({color:o.colors,title:o.title?{text:o.title,left:"center",textStyle:{fontSize:14,fontWeight:600}}:void 0,tooltip:{trigger:"item"},legend:o.showLegend?{bottom:0}:void 0,series:[{type:"pie",radius:o.doughnut?["45%","70%"]:"65%",center:["50%",o.showLegend?"45%":"50%"],data:o.data,label:{formatter:"{b}: {d}%"}}]}))};return e.onMounted(()=>{s(),n.value&&(r=new ResizeObserver(()=>a==null?void 0:a.resize()),r.observe(n.value))}),e.onUnmounted(()=>{r==null||r.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.data,o.colors,o.doughnut,o.showLegend],s,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",Kc,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-b2ae9f47"]]),Xe=e.defineComponent({__name:"DoughnutChart",props:{title:{},data:{},colors:{},showLegend:{type:Boolean}},setup(t){return(o,n)=>(e.openBlock(),e.createBlock(Se,{title:t.title,data:t.data,colors:t.colors,"show-legend":t.showLegend,doughnut:""},null,8,["title","data","colors","show-legend"]))}}),Gc={class:"of-number-card"},Hc={class:"of-number-card__title"},qc={class:"of-number-card__value-row"},Wc={key:0,class:"of-number-card__compare"},Qe=D(e.defineComponent({__name:"NumberCard",props:{title:{default:"Metric"},value:{default:0},unit:{default:""},compare:{default:""},trend:{default:void 0},color:{default:"var(--of-color-blue-600)"}},setup(t){const o=t,n=e.computed(()=>o.value>=1e4?`${(o.value/1e4).toFixed(1)}w${o.unit}`:`${o.value}${o.unit}`);return(a,r)=>(e.openBlock(),e.createElementBlock("div",Gc,[e.createElementVNode("p",Hc,e.toDisplayString(t.title),1),e.createElementVNode("div",qc,[e.createElementVNode("p",{class:"of-number-card__value",style:e.normalizeStyle({color:t.color})},e.toDisplayString(n.value),5),t.trend==="up"?(e.openBlock(),e.createBlock(e.unref(A.TrendingUpIcon),{key:0,class:"of-number-card__trend up",size:16})):t.trend==="down"?(e.openBlock(),e.createBlock(e.unref(A.TrendingDownIcon),{key:1,class:"of-number-card__trend down",size:16})):e.createCommentVNode("",!0)]),t.compare?(e.openBlock(),e.createElementBlock("p",Wc,"环比 "+e.toDisplayString(t.compare),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-c6dc2d84"]]),Yc={class:"of-table-chart"},Zc={key:0,class:"of-table-chart__title"},jc={class:"of-table-chart__wrapper"},Xc={class:"of-table-chart__table"},Je=D(e.defineComponent({__name:"TableChart",props:{title:{default:""},columns:{default:()=>[{key:"name",label:"Name"},{key:"status",label:"Status",align:"center"},{key:"value",label:"Value",align:"right"}]},rows:{default:()=>[{id:1,name:"Alpha",status:"In Progress",value:120},{id:2,name:"Beta",status:"Done",value:86},{id:3,name:"Gamma",status:"Todo",value:42}]}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Yc,[t.title?(e.openBlock(),e.createElementBlock("p",Zc,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",jc,[e.createElementVNode("table",Xc,[e.createElementVNode("thead",null,[e.createElementVNode("tr",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,a=>(e.openBlock(),e.createElementBlock("th",{key:a.key,style:e.normalizeStyle({textAlign:a.align??"left"})},e.toDisplayString(a.label),5))),128))])]),e.createElementVNode("tbody",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.rows,(a,r)=>(e.openBlock(),e.createElementBlock("tr",{key:a.id??r},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,s=>(e.openBlock(),e.createElementBlock("td",{key:s.key,style:e.normalizeStyle({textAlign:s.align??"left"})},e.toDisplayString(a[s.key]??"-"),5))),128))]))),128))])])])]))}}),[["__scopeId","data-v-aacba13e"]]),Qc={class:"of-dashboard"},Jc={class:"of-dashboard__header"},ei={class:"of-dashboard__title"},gn=D(e.defineComponent({__name:"index",props:{title:{default:"Dashboard"},widgets:{default:()=>[]},columns:{default:4},gap:{default:16}},setup(t){const o=t,n={bar:je,pie:Se,doughnut:Xe,"number-card":Qe,table:Je},a=e.computed(()=>({gridTemplateColumns:`repeat(${o.columns}, minmax(0, 1fr))`,gap:`${o.gap}px`})),r=e.computed(()=>o.widgets.length>0?o.widgets:[{id:"metric-1",type:"number-card",title:"总任务",data:{value:128,trend:"up",compare:"+12%"},colSpan:1},{id:"metric-2",type:"number-card",title:"已完成",data:{value:84,trend:"up",compare:"+8%"},colSpan:1},{id:"bar-1",type:"bar",title:"周趋势",data:[12,17,14,20,23,16,19],colSpan:2},{id:"pie-1",type:"pie",title:"状态分布",data:[{name:"Todo",value:34},{name:"In Progress",value:52},{name:"Done",value:42}],colSpan:2},{id:"table-1",type:"table",title:"关键任务",data:{columns:[{key:"name",label:"任务"},{key:"owner",label:"负责人"},{key:"status",label:"状态"}],rows:[{name:"Migrate Dashboard",owner:"FE",status:"In Progress"},{name:"Type Definition",owner:"FE",status:"Done"},{name:"Integrate RichText",owner:"FE",status:"Todo"}]},colSpan:4}]);return(s,c)=>(e.openBlock(),e.createElementBlock("section",Qc,[e.createElementVNode("header",Jc,[e.createElementVNode("h3",ei,e.toDisplayString(t.title),1)]),e.createElementVNode("div",{class:"of-dashboard__grid",style:e.normalizeStyle(a.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,l=>(e.openBlock(),e.createElementBlock("article",{key:l.id,class:"of-dashboard__item",style:e.normalizeStyle({gridColumn:`span ${l.colSpan??1}`,gridRow:`span ${l.rowSpan??1}`})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n[l.type]),e.mergeProps({title:l.title,data:l.data},{ref_for:!0},l.config??{}),null,16,["title","data"]))],4))),128))],4)]))}}),[["__scopeId","data-v-07a2e2ae"]]),ti={class:"of-card-title"},ni={class:"of-card-meta"},oi={class:"of-card-id"},ai={key:0,class:"of-card-date"},li={key:1,class:"of-card-role-badge"},ri={class:"of-card-tags"},Ne=D(e.defineComponent({__name:"KanbanCard",props:{task:{},dragging:{type:Boolean,default:!1},priorityColorMap:{},statusColorMap:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>te(n.task.priority,ne(fe,n.priorityColorMap))),s=e.computed(()=>te(n.task.status,ne(ce,n.statusColorMap))),c=e.computed(()=>r.value.style),l=e.computed(()=>s.value.style),d=e.computed(()=>s.value.label),i=e.computed(()=>r.value.label);function m(p){if(!p)return"";const u=new Date(p);return isNaN(u.getTime())?p:`${u.getMonth()+1}/${u.getDate()}`}const f=e.computed(()=>m(n.task.updatedAt??n.task.endDate));return(p,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-kanban-card",{"of-kanban-card--dragging":t.dragging}]),onClick:u[0]||(u[0]=y=>a("click",t.task))},[e.createElementVNode("div",ti,e.toDisplayString(t.task.title),1),e.createElementVNode("div",ni,[e.createElementVNode("span",oi,e.toDisplayString(t.task.id),1),f.value?(e.openBlock(),e.createElementBlock("span",ai,e.toDisplayString(f.value),1)):e.createCommentVNode("",!0),u[1]||(u[1]=e.createElementVNode("span",{class:"of-card-spacer"},null,-1)),t.task.role?(e.openBlock(),e.createElementBlock("span",li,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",ri,[e.createElementVNode("span",{class:"of-badge",style:e.normalizeStyle(c.value)},e.toDisplayString(i.value),5),e.createElementVNode("span",{class:"of-badge",style:e.normalizeStyle(l.value)},e.toDisplayString(d.value),5)])],2))}}),[["__scopeId","data-v-28da7aba"]]),si={class:"of-kanban-column"},ci={class:"of-col-header"},ii={class:"of-col-title"},di={class:"of-col-count"},et=D(e.defineComponent({__name:"KanbanColumn",props:{column:{},ghostClass:{default:"of-ghost"},priorityColorMap:{},statusColorMap:{}},emits:["add-card","card-click","update:column"],setup(t,{emit:o}){const n=t,a=o,r=e.ref([...n.column.tasks]);e.watch(()=>n.column.tasks,f=>{f.length===r.value.length&&f.every((u,y)=>{var B;return u.id===((B=r.value[y])==null?void 0:B.id)})||(r.value=[...f])}),e.watch(r,f=>{a("update:column",{...n.column,tasks:f})});const s=e.computed(()=>r.value.length>50),c=e.ref(null),{visibleItems:l,totalHeight:d,offsetY:i}=Ee({items:r,itemHeight:120,overscan:3,containerRef:c}),m=e.computed(()=>{if(n.column.color)return n.column.color;const f=ne(ce,n.statusColorMap),p=f[n.column.id],u=f[n.column.title],y=p??u;return(y==null?void 0:y.dot)??(y==null?void 0:y.text)??"var(--of-color-gray-400)"});return(f,p)=>(e.openBlock(),e.createElementBlock("div",si,[e.createElementVNode("div",ci,[e.createElementVNode("span",{class:"of-col-dot",style:e.normalizeStyle({background:m.value})},null,4),e.createElementVNode("span",ii,e.toDisplayString(t.column.title),1),e.createElementVNode("span",di,e.toDisplayString(r.value.length),1),p[4]||(p[4]=e.createElementVNode("span",{class:"of-col-spacer"},null,-1)),e.createElementVNode("button",{class:"of-col-add-btn",onClick:p[0]||(p[0]=u=>a("add-card",t.column.id))},[e.createVNode(e.unref(A.Plus),{size:14})])]),s.value?(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"cardContainerRef",ref:c,class:"of-col-cards of-col-cards-virtual"},[e.createElementVNode("div",{style:e.normalizeStyle({height:e.unref(d)+"px",position:"relative"})},[e.createElementVNode("div",{style:e.normalizeStyle({transform:`translateY(${e.unref(i)}px)`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),({data:u})=>(e.openBlock(),e.createBlock(Ne,{key:u.id,task:u,onClick:p[3]||(p[3]=y=>a("card-click",y))},null,8,["task"]))),128))],4)],4)],512)):(e.openBlock(),e.createBlock(e.unref(Re.VueDraggable),{key:0,modelValue:r.value,"onUpdate:modelValue":p[2]||(p[2]=u=>r.value=u),group:{name:"kanban",pull:!0,put:!0},"item-key":"id","ghost-class":t.ghostClass,"chosen-class":"of-chosen",animation:200,class:"of-col-cards"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,u=>(e.openBlock(),e.createBlock(Ne,{key:u.id,task:u,onClick:p[1]||(p[1]=y=>a("card-click",y))},null,8,["task"]))),128))]),_:1},8,["modelValue","ghost-class"]))]))}}),[["__scopeId","data-v-b930d0ab"]]),mi={class:"of-quick-add"},fi={class:"of-quick-add-placeholder"},ui=["placeholder"],tt=D(e.defineComponent({__name:"QuickAddRow",props:{placeholder:{default:"快速创建任务,按 Enter 提交"}},emits:["submit","cancel"],setup(t,{emit:o}){const n=o,a=e.ref(!1),r=e.ref(""),s=e.ref(null);async function c(){var m;a.value=!0,await e.nextTick(),(m=s.value)==null||m.focus()}function l(){a.value=!1,r.value=""}function d(m){if(m.key==="Enter"){const f=r.value.trim();f&&(n("submit",f),r.value="",l())}else m.key==="Escape"&&(n("cancel"),l())}function i(){setTimeout(()=>{r.value.trim()||l()},150)}return(m,f)=>(e.openBlock(),e.createElementBlock("div",mi,[a.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:s,"onUpdate:modelValue":f[0]||(f[0]=p=>r.value=p),type:"text",class:"of-quick-add-input",placeholder:t.placeholder,onKeydown:d,onBlur:i},null,40,ui)),[[e.vModelText,r.value]]):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-quick-add-trigger",onClick:c},[e.createVNode(e.unref(A.Plus),{size:14,class:"of-quick-add-icon"}),e.createElementVNode("span",fi,e.toDisplayString(t.placeholder),1)]))]))}}),[["__scopeId","data-v-5ebea11d"]]),pi={class:"of-kanban-board"},gi={class:"of-kanban-inner"},_n=D(e.defineComponent({__name:"KanbanBoard",props:{columns:{default:()=>[]},records:{default:()=>[]},kanbanFieldId:{default:"status"},laneOrder:{default:()=>[]},laneTitles:{default:()=>({})},addColumnVisible:{type:Boolean,default:!1}},emits:["update:columns","add-column","card-click"],setup(t,{emit:o}){const n=t,a=o,r=()=>n.columns.length>0?structuredClone(n.columns):n.records.length>0?Jt(n.records,{kanbanFieldId:n.kanbanFieldId,laneOrder:n.laneOrder,laneTitles:n.laneTitles}):[],s=e.ref(r());e.watch(()=>[n.columns,n.records,n.kanbanFieldId,n.laneOrder,n.laneTitles],()=>{s.value=r()});function c(i){const m=s.value.findIndex(f=>f.id===i.id);if(m!==-1){const f=i.tasks.map(p=>({...p,status:i.id}));s.value[m]={...i,tasks:f},a("update:columns",structuredClone(s.value))}}function l(i){}function d(i,m){const f=s.value.find(y=>y.id===i);if(!f)return;const p={id:`TASK-${Date.now()}`,title:m,status:i,priority:"P3"},u={...f,tasks:[...f.tasks,p]};c(u)}return(i,m)=>(e.openBlock(),e.createElementBlock("div",pi,[e.createElementVNode("div",gi,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,f=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"of-kanban-col-wrapper"},[e.createVNode(et,{column:f,onAddCard:l,onCardClick:m[0]||(m[0]=p=>a("card-click",p)),"onUpdate:column":c},null,8,["column"]),e.createVNode(tt,{class:"of-quick-add-below",onSubmit:p=>d(f.id,p)},null,8,["onSubmit"])]))),128)),t.addColumnVisible?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-add-column-btn",onClick:m[1]||(m[1]=f=>a("add-column"))},[e.createVNode(e.unref(A.Plus),{size:16}),m[2]||(m[2]=e.createElementVNode("span",null,"添加列",-1))])):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-210bcfc5"]]),nt=D(e.defineComponent({__name:"AiThinking",props:{size:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-thinking",t.size])},[...n[0]||(n[0]=[e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1),e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1),e.createElementVNode("span",{class:"of-ai-thinking__dot"},null,-1)])],2))}}),[["__scopeId","data-v-f40004bf"]]),_i={key:0,class:"of-streaming-cursor"},ot=D(e.defineComponent({__name:"AiStreamingCursor",props:{visible:{type:Boolean}},setup(t){return(o,n)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("span",_i)):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-d71a6f39"]]),bi={class:"of-ai-message"},yi={class:"of-ai-message__avatar"},ki=["src","alt"],hi={key:1,class:"of-ai-message__avatar-emoji"},Ei={class:"of-ai-message__body"},Bi={key:0,class:"of-ai-message__name"},Ci={class:"of-ai-message__content"},Si={key:1,class:"of-ai-message__timestamp"},at=D(e.defineComponent({__name:"AiMessageBubble",props:{content:{},isStreaming:{type:Boolean},isError:{type:Boolean},avatar:{},name:{},timestamp:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",bi,[e.createElementVNode("div",yi,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:t.name||"AI",class:"of-ai-message__avatar-img"},null,8,ki)):(e.openBlock(),e.createElementBlock("span",hi,"🤖"))]),e.createElementVNode("div",Ei,[t.name?(e.openBlock(),e.createElementBlock("div",Bi,e.toDisplayString(t.name),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["of-ai-message__bubble",{"of-ai-message__bubble--error":t.isError}])},[e.createElementVNode("span",Ci,e.toDisplayString(t.content),1),t.isStreaming?(e.openBlock(),e.createBlock(ot,{key:0})):e.createCommentVNode("",!0)],2),t.timestamp?(e.openBlock(),e.createElementBlock("div",Si,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-ada31b88"]]),Ni={class:"of-user-message"},wi={class:"of-user-message__body"},$i={class:"of-user-message__bubble"},xi={key:0,class:"of-user-message__timestamp"},Di={class:"of-user-message__avatar"},Ti=["src"],Vi={key:1,class:"of-user-message__avatar-emoji"},lt=D(e.defineComponent({__name:"UserMessageBubble",props:{content:{},timestamp:{},avatar:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Ni,[e.createElementVNode("div",wi,[e.createElementVNode("div",$i,e.toDisplayString(t.content),1),t.timestamp?(e.openBlock(),e.createElementBlock("div",xi,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Di,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:"User",class:"of-user-message__avatar-img"},null,8,Ti)):(e.openBlock(),e.createElementBlock("span",Vi,"👤"))])]))}}),[["__scopeId","data-v-0a14f8b1"]]),bn=D(e.defineComponent({__name:"AiMessageList",props:{messages:{},isThinking:{type:Boolean}},setup(t){const o=t,n=e.ref(null),a=i=>{var p;const m=o.messages[i];if(!m)return 80;if(m.role==="user")return 60;const f=Math.ceil((((p=m.content)==null?void 0:p.length)??0)/60);return Math.max(80,48+f*24)},{visibleItems:r,totalHeight:s,offsetY:c,scrollToBottom:l}=Ee({items:e.computed(()=>o.messages),itemHeight:a,overscan:3,containerRef:n});function d(){l()}return e.watch(()=>[o.messages.length,o.isThinking],async()=>{await e.nextTick(),d()},{immediate:!0}),(i,m)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"listRef",ref:n,class:"of-ai-message-list"},[e.createElementVNode("div",{style:e.normalizeStyle({height:e.unref(s)+"px",position:"relative"})},[e.createElementVNode("div",{class:"of-ai-message-list-inner",style:e.normalizeStyle({transform:`translateY(${e.unref(c)}px)`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),({data:f})=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.id},[f.role==="ai"?(e.openBlock(),e.createBlock(at,{key:0,content:f.content,"is-streaming":f.isStreaming,"is-error":f.isError,avatar:f.avatar,name:f.name,timestamp:f.timestamp},null,8,["content","is-streaming","is-error","avatar","name","timestamp"])):(e.openBlock(),e.createBlock(lt,{key:1,content:f.content,avatar:f.avatar,timestamp:f.timestamp},null,8,["content","avatar","timestamp"]))],64))),128))],4)],4),t.isThinking?(e.openBlock(),e.createBlock(nt,{key:0})):e.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-12ac9a30"]]),Mi={key:0,class:"of-ai-sender__tools"},Ai={class:"of-ai-sender__inner"},Ri={key:0,class:"of-ai-sender__prefix"},Ii=["placeholder","disabled"],Oi=["title"],zi=22,yn=D(e.defineComponent({__name:"AiSender",props:{placeholder:{},disabled:{type:Boolean},maxRows:{}},emits:["send","cancel"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(""),s=e.ref(null),c=e.computed(()=>n.maxRows??6);function l(){const u=s.value;if(!u)return;u.style.height="auto";const y=zi*c.value+16;u.style.height=Math.min(u.scrollHeight,y)+"px"}async function d(){await e.nextTick(),l()}function i(u){u.key==="Enter"&&!u.shiftKey&&(u.preventDefault(),m())}function m(){const u=r.value.trim();!u||n.disabled||(a("send",u),r.value="",e.nextTick(()=>{l()}))}function f(){a("cancel")}function p(){n.disabled?f():m()}return(u,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-sender",{"is-disabled":t.disabled}])},[u.$slots.tools?(e.openBlock(),e.createElementBlock("div",Mi,[e.renderSlot(u.$slots,"tools",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ai,[u.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Ri,[e.renderSlot(u.$slots,"prefix",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",{ref_key:"textareaRef",ref:s,"onUpdate:modelValue":y[0]||(y[0]=B=>r.value=B),class:"of-ai-sender__textarea",placeholder:t.placeholder??"输入消息...",disabled:t.disabled,rows:"1",onInput:d,onKeydown:i},null,40,Ii),[[e.vModelText,r.value]]),e.createElementVNode("button",{class:e.normalizeClass(["of-ai-sender__action-btn",{"is-stop":t.disabled,"is-empty":!r.value.trim()&&!t.disabled}]),title:t.disabled?"停止":"发送",onClick:p},[t.disabled?(e.openBlock(),e.createBlock(e.unref(A.Square),{key:0,size:16})):(e.openBlock(),e.createBlock(e.unref(A.ArrowUp),{key:1,size:16}))],10,Oi)])],2))}}),[["__scopeId","data-v-2b036e27"]]),Li={class:"of-dialog"},Fi={class:"of-dialog__content"},Pi={class:"of-dialog__title"},Ui={key:0,class:"of-dialog__text"},vi=["disabled"],Ki=["disabled"],kn=D(e.defineComponent({__name:"Dialog",props:{modelValue:{type:Boolean},title:{default:"提示"},content:{},confirmText:{default:"确认"},cancelText:{default:"取消"},type:{default:"info"},loading:{type:Boolean,default:!1},width:{default:"420px"},hideCancel:{type:Boolean,default:!1}},emits:["update:modelValue","confirm","cancel"],setup(t,{emit:o}){const n=t,a=o,r={info:A.Info,warning:A.AlertTriangle,danger:A.AlertCircle,success:A.CheckCircle2},s=e.computed(()=>`of-dialog__icon--${n.type}`),c=e.computed(()=>r[n.type]),l=e.computed(()=>n.type==="danger"?"of-dialog__btn--danger":"of-dialog__btn--primary");function d(f){a("update:modelValue",f)}function i(){n.loading||a("confirm")}function m(){a("cancel"),a("update:modelValue",!1)}return(f,p)=>(e.openBlock(),e.createBlock(Be,{"model-value":t.modelValue,width:t.width,closable:!1,"mask-closable":!t.loading,class:"of-dialog-modal","onUpdate:modelValue":d},{footer:e.withCtx(()=>[t.hideCancel?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-dialog__btn of-dialog__btn--cancel",disabled:t.loading,type:"button",onClick:m},e.toDisplayString(t.cancelText),9,vi)),e.createElementVNode("button",{class:e.normalizeClass(["of-dialog__btn",l.value]),disabled:t.loading,type:"button",onClick:i},[t.loading?(e.openBlock(),e.createBlock(e.unref(A.Loader2),{key:0,size:14,class:"of-dialog__spinner"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.confirmText),1)],10,Ki)]),default:e.withCtx(()=>[e.createElementVNode("div",Li,[e.createElementVNode("div",{class:e.normalizeClass(["of-dialog__icon-wrap",s.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:28}))],2),e.createElementVNode("div",Fi,[e.createElementVNode("h3",Pi,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("p",Ui,e.toDisplayString(t.content),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"default",{},void 0,!0)])])]),_:3},8,["model-value","width","mask-closable"]))}}),[["__scopeId","data-v-46706de8"]]),Gi=["aria-label"],Hi={key:0,class:"of-side-panel__header"},qi={key:0,class:"of-side-panel__title"},Wi={key:1,class:"of-side-panel__title-placeholder"},Yi={class:"of-side-panel__body"},Zi=["aria-label"],ji={key:0,class:"of-side-panel__header"},Xi={key:0,class:"of-side-panel__title"},Qi={key:1,class:"of-side-panel__title-placeholder"},Ji={class:"of-side-panel__body"},hn=D(e.defineComponent({__name:"SidePanel",props:{modelValue:{type:Boolean},width:{default:500},title:{},showClose:{type:Boolean,default:!0},mode:{default:"persistent"}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>({width:`${n.width}px`}));function s(){a("update:modelValue",!1)}return(c,l)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.mode==="lazy"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[t.modelValue?(e.openBlock(),e.createElementBlock("aside",{key:0,class:"of-side-panel",style:e.normalizeStyle(r.value),role:"dialog","aria-modal":"true","aria-label":t.title},[c.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",Hi,[e.renderSlot(c.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",qi,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",Wi))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:s},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Yi,[e.renderSlot(c.$slots,"default",{},void 0,!0)])],12,Gi)):e.createCommentVNode("",!0)],64)):e.withDirectives((e.openBlock(),e.createElementBlock("aside",{key:1,class:"of-side-panel",style:e.normalizeStyle(r.value),role:"dialog","aria-modal":"true","aria-label":t.title},[c.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",ji,[e.renderSlot(c.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",Xi,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",Qi))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:s},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ji,[e.renderSlot(c.$slots,"default",{},void 0,!0)])],12,Zi)),[[e.vShow,t.modelValue]])]))}}),[["__scopeId","data-v-f4efa314"]]),ed=["aria-label"],td={class:"of-drawer__inner"},nd={key:0,class:"of-drawer__header"},od={class:"of-drawer__title"},ad={key:0,class:"of-drawer__title-text"},ld={class:"of-drawer__body"},En=D(e.defineComponent({__name:"Drawer",props:{modelValue:{type:Boolean},width:{default:390},title:{},showClose:{type:Boolean,default:!0},maskClosable:{type:Boolean,default:!0},zIndex:{default:1e3}},emits:["update:modelValue"],setup(t,{emit:o}){const n=t,a=o,r=e.useSlots(),s=e.computed(()=>({width:`${n.width}px`}));function c(){a("update:modelValue",!1)}function l(d){d.key==="Escape"&&n.modelValue&&c()}return e.onMounted(()=>{typeof document>"u"||document.addEventListener("keydown",l)}),e.watch(()=>n.modelValue,d=>{typeof document>"u"||(document.body.style.overflow=d?"hidden":"")},{immediate:!0}),e.onBeforeUnmount(()=>{typeof document>"u"||(document.removeEventListener("keydown",l),document.body.style.overflow="")}),(d,i)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createVNode(e.Transition,{name:"of-drawer"},{default:e.withCtx(()=>[t.modelValue?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-drawer-overlay",style:e.normalizeStyle({zIndex:t.zIndex}),onClick:i[1]||(i[1]=m=>t.maskClosable&&c())},[e.createElementVNode("aside",{class:"of-drawer",role:"dialog","aria-modal":"true","aria-label":t.title,style:e.normalizeStyle(s.value),onClick:i[0]||(i[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",td,[e.unref(r).title||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",nd,[e.createElementVNode("div",od,[e.renderSlot(d.$slots,"title",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",ad,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0)],!0)]),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-drawer__close",type:"button","aria-label":"关闭",onClick:c},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",ld,[e.renderSlot(d.$slots,"default",{},void 0,!0)])])],12,ed)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-e8781c55"]]),rd=["role","aria-label"],sd={class:"of-toast__icon"},cd={class:"of-toast__content"},id={key:0,class:"of-toast__title"},dd={class:"of-toast__message"},rt=D(e.defineComponent({__name:"ToastItem",props:{toast:{}},emits:["close"],setup(t,{emit:o}){const n=t,a=o,r={info:A.Info,success:A.CheckCircle2,warning:A.AlertTriangle,error:A.XCircle},s={info:{icon:"var(--of-color-blue-500, #3b82f6)",border:"var(--of-color-blue-200, #bfdbfe)",borderLeft:"var(--of-color-blue-500, #3b82f6)",bg:"var(--of-color-blue-50, #eff6ff)"},success:{icon:"var(--of-color-green-500, #22c55e)",border:"var(--of-color-green-200, #bbf7d0)",borderLeft:"var(--of-color-green-500, #22c55e)",bg:"var(--of-color-green-50, #f0fdf4)"},warning:{icon:"var(--of-color-orange-500, #f97316)",border:"var(--of-color-orange-200, #fed7aa)",borderLeft:"var(--of-color-orange-500, #f97316)",bg:"var(--of-color-orange-50, #fff7ed)"},error:{icon:"var(--of-color-red-500, #ef4444)",border:"var(--of-color-red-200, #fecaca)",borderLeft:"var(--of-color-red-500, #ef4444)",bg:"var(--of-color-red-50, #fef2f2)"}},c=e.computed(()=>r[n.toast.type]),l=e.computed(()=>s[n.toast.type]),d=e.computed(()=>n.toast.type==="error"?"alertdialog":"alert");return(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-toast",`of-toast--${t.toast.type}`]),style:e.normalizeStyle({borderColor:l.value.border,borderLeftColor:l.value.borderLeft,backgroundColor:l.value.bg}),role:d.value,"aria-label":`${t.toast.type}: ${t.toast.message}`},[e.createElementVNode("div",sd,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:20,color:l.value.icon,"aria-hidden":"true"},null,8,["color"]))]),e.createElementVNode("div",cd,[t.toast.title?(e.openBlock(),e.createElementBlock("p",id,e.toDisplayString(t.toast.title),1)):e.createCommentVNode("",!0),e.createElementVNode("p",dd,e.toDisplayString(t.toast.message),1)]),e.createElementVNode("button",{class:"of-toast__close",type:"button","aria-label":"关闭通知",onClick:m[0]||(m[0]=f=>a("close"))},[e.createVNode(e.unref(A.X),{size:16})])],14,rd))}}),[["__scopeId","data-v-3daf12bd"]]),md={class:"of-toast-container","aria-live":"polite","aria-atomic":"false"},Bn=e.defineComponent({__name:"ToastContainer",setup(t){const{toasts:o,remove:n}=qe();return(a,r)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",md,[e.createVNode(e.TransitionGroup,{name:"of-toast",tag:"div",class:"of-toast-list"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),s=>(e.openBlock(),e.createBlock(rt,{key:s.id,toast:s,onClose:c=>e.unref(n)(s.id)},null,8,["toast","onClose"]))),128))]),_:1})])]))}}),fd={class:"of-tabs__nav",role:"tablist","aria-label":"tabs"},ud=["disabled","id","aria-selected","aria-controls","aria-disabled","tabindex","onClick","onKeydown"],pd={class:"of-tabs__tab-label"},gd={key:1,class:"of-tabs__badge"},_d={class:"of-tabs__content"},Cn=D(e.defineComponent({__name:"Tabs",props:{modelValue:{},defaultValue:{},variant:{},size:{},tabs:{}},emits:["update:modelValue","change"],setup(t,{emit:o}){var d;const n=t,a=o,r=e.ref(n.defaultValue||((d=n.tabs[0])==null?void 0:d.key)||""),s=e.computed({get:()=>n.modelValue??r.value,set:i=>{r.value=i,a("update:modelValue",i),a("change",i)}});function c(i){s.value=i}function l(i,m){const f=n.tabs.filter(u=>!u.disabled),p=f.findIndex(u=>u.key===m);if(i.key==="ArrowRight"||i.key==="ArrowDown"){i.preventDefault();const u=f[(p+1)%f.length];u&&c(u.key)}else if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault();const u=f[(p-1+f.length)%f.length];u&&c(u.key)}else if(i.key==="Home"){i.preventDefault();const u=f[0];u&&c(u.key)}else if(i.key==="End"){i.preventDefault();const u=f[f.length-1];u&&c(u.key)}}return e.provide("of-tabs-active",s),e.provide("of-tabs-set",c),(i,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-tabs",[`of-tabs--${t.variant||"line"}`,`of-tabs--${t.size||"md"}`]])},[e.createElementVNode("div",fd,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,f=>(e.openBlock(),e.createElementBlock("button",{key:f.key,class:e.normalizeClass(["of-tabs__tab",{"of-tabs__tab--active":s.value===f.key,"of-tabs__tab--disabled":f.disabled}]),disabled:f.disabled,role:"tab",id:`of-tab-${f.key}`,"aria-selected":s.value===f.key,"aria-controls":`of-panel-${f.key}`,"aria-disabled":f.disabled,tabindex:s.value===f.key?0:-1,onClick:p=>!f.disabled&&c(f.key),onKeydown:p=>l(p,f.key)},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(f.icon)),{key:0,class:"of-tabs__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",pd,e.toDisplayString(f.label),1),f.badge!=null?(e.openBlock(),e.createElementBlock("span",gd,e.toDisplayString(f.badge),1)):e.createCommentVNode("",!0)],42,ud))),128))]),e.createElementVNode("div",_d,[e.renderSlot(i.$slots,"default",{},void 0,!0)])],2))}}),[["__scopeId","data-v-2c91bd27"]]),bd=["id","aria-labelledby","hidden"],Sn=D(e.defineComponent({__name:"TabPanel",props:{name:{},keepAlive:{type:Boolean}},setup(t){const o=t,n=e.inject("of-tabs-active"),a=e.computed(()=>(n==null?void 0:n.value)===o.name);return(r,s)=>t.keepAlive||a.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,class:"of-tab-panel",role:"tabpanel",id:`of-panel-${t.name}`,"aria-labelledby":`of-tab-${t.name}`,hidden:t.keepAlive&&!a.value?!0:void 0},[e.renderSlot(r.$slots,"default",{},void 0,!0)],8,bd)),[[e.vShow,t.keepAlive?a.value:!0]]):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-ad9a1dee"]]),yd={class:"of-breadcrumb","aria-label":"breadcrumb"},kd={class:"of-breadcrumb__list"},hd={key:0,class:"of-breadcrumb__separator","aria-hidden":"true"},Nn=D(e.defineComponent({__name:"Breadcrumb",props:{items:{},separator:{}},setup(t){function o(n){n.onClick&&n.onClick()}return(n,a)=>(e.openBlock(),e.createElementBlock("nav",yd,[e.createElementVNode("ol",kd,[t.items&&t.items.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(r,s)=>(e.openBlock(),e.createElementBlock("li",{key:s,class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":s===t.items.length-1}])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.path?"a":"span"),{href:r.path,class:e.normalizeClass(["of-breadcrumb__link",{"of-breadcrumb__link--active":s===t.items.length-1}]),onClick:e.withModifiers(c=>r.onClick?o(r):null,["prevent"])},{default:e.withCtx(()=>[r.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(r.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(r.label),1)]),_:2},1032,["href","class","onClick"])),s<t.items.length-1?(e.openBlock(),e.createElementBlock("span",hd,[e.renderSlot(n.$slots,"separator",{},()=>[e.createTextVNode(e.toDisplayString(t.separator||"/"),1)],!0)])):e.createCommentVNode("",!0)],2))),128)):e.renderSlot(n.$slots,"default",{key:1},void 0,!0)])]))}}),[["__scopeId","data-v-c83773fb"]]),wn=D(e.defineComponent({__name:"BreadcrumbItem",props:{path:{},icon:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=o;return(a,r)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":t.active}])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.path?"a":"span"),{href:t.path,class:e.normalizeClass(["of-breadcrumb__link",{"of-breadcrumb__link--active":t.active}]),onClick:r[0]||(r[0]=e.withModifiers(s=>n("click",s),["prevent"]))},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(ee)(t.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.renderSlot(a.$slots,"default",{},void 0,!0)]),_:3},8,["href","class"]))],2))}}),[["__scopeId","data-v-bc3caff3"]]),Ed={key:0,class:"of-mermaid__loading"},Bd={key:1,class:"of-mermaid__error"},Cd={class:"of-mermaid__error-text"},$n=D(e.defineComponent({__name:"MermaidChart",props:{code:{},theme:{},width:{}},setup(t){const o=t;let n=0;const a=`of-mermaid-${Date.now()}-${n++}`,r=e.ref(null),s=e.ref(!0),c=e.ref("");async function l(){var d;if(!((d=o.code)!=null&&d.trim())){s.value=!1;return}s.value=!0,c.value="";try{let i=window.mermaid;i||(i=(await import("mermaid")).default),i.initialize({startOnLoad:!1,theme:o.theme||"default",securityLevel:"loose"}),await e.nextTick();const{svg:m}=await i.render(a,o.code);r.value&&(r.value.innerHTML=m)}catch(i){c.value=(i==null?void 0:i.message)||"图表渲染失败,请检查 Mermaid 语法"}finally{s.value=!1}}return e.onMounted(()=>l()),e.watch(()=>[o.code,o.theme],()=>l()),(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-mermaid",style:e.normalizeStyle({width:o.width||"100%"})},[s.value?(e.openBlock(),e.createElementBlock("div",Ed,[e.renderSlot(d.$slots,"loading",{},()=>[i[0]||(i[0]=e.createElementVNode("span",{class:"of-mermaid__spinner","aria-hidden":"true"},null,-1)),i[1]||(i[1]=e.createElementVNode("span",{class:"of-mermaid__loading-text"},"图表加载中...",-1))],!0)])):c.value?(e.openBlock(),e.createElementBlock("div",Bd,[e.renderSlot(d.$slots,"error",{message:c.value},()=>[i[2]||(i[2]=e.createElementVNode("span",{class:"of-mermaid__error-icon","aria-hidden":"true"},"!",-1)),e.createElementVNode("span",Cd,e.toDisplayString(c.value),1)],!0)])):(e.openBlock(),e.createElementBlock("div",{key:2,ref_key:"containerRef",ref:r,class:"of-mermaid__container"},null,512))],4))}}),[["__scopeId","data-v-6ca25a76"]]),Sd={class:"of-split-pane__second"},xn=D(e.defineComponent({__name:"SplitPane",props:{direction:{},defaultSize:{},minSize:{},maxSize:{}},setup(t){const o=t,n=e.ref(o.defaultSize??50),a=e.ref(!1),r=e.ref(null);function s(i){i.preventDefault(),a.value=!0,document.addEventListener("mousemove",c),document.addEventListener("mouseup",d),document.addEventListener("touchmove",l,{passive:!1}),document.addEventListener("touchend",d)}function c(i){if(!a.value||!r.value)return;const m=r.value.getBoundingClientRect(),f=(o.direction||"horizontal")==="horizontal";let p;f?p=(i.clientX-m.left)/m.width*100:p=(i.clientY-m.top)/m.height*100;const u=o.minSize??10,y=o.maxSize??90;n.value=Math.min(y,Math.max(u,p))}function l(i){if(!a.value||!r.value)return;i.preventDefault();const m=i.touches[0],f=r.value.getBoundingClientRect(),p=(o.direction||"horizontal")==="horizontal";let u;p?u=(m.clientX-f.left)/f.width*100:u=(m.clientY-f.top)/f.height*100;const y=o.minSize??10,B=o.maxSize??90;n.value=Math.min(B,Math.max(y,u))}function d(){a.value=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",l),document.removeEventListener("touchend",d)}return e.onUnmounted(()=>{document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",l),document.removeEventListener("touchend",d)}),(i,m)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"containerRef",ref:r,class:e.normalizeClass(["of-split-pane",[`of-split-pane--${t.direction||"horizontal"}`,{"of-split-pane--dragging":a.value}]])},[e.createElementVNode("div",{class:"of-split-pane__first",style:e.normalizeStyle((t.direction||"horizontal")==="vertical"?{height:n.value+"%"}:{width:n.value+"%"})},[e.renderSlot(i.$slots,"first",{},void 0,!0)],4),e.createElementVNode("div",{class:"of-split-pane__divider",onMousedown:s,onTouchstart:e.withModifiers(s,["prevent"])},[...m[0]||(m[0]=[e.createElementVNode("div",{class:"of-split-pane__divider-inner"},null,-1)])],32),e.createElementVNode("div",Sd,[e.renderSlot(i.$slots,"second",{},void 0,!0)])],2))}}),[["__scopeId","data-v-04056d0e"]]),Nd={key:0,class:"of-context-menu__sep"},wd=["disabled","onClick"],$d={key:0,class:"of-context-menu__icon"},xd={class:"of-context-menu__label"},Dd={key:1,class:"of-context-menu__submenu-indicator"},Dn=D(e.defineComponent({name:"ContextMenu",__name:"index",props:{x:{},y:{},items:{},visible:{type:Boolean,default:!0}},emits:["select","close"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.computed(()=>({position:"fixed",left:`${n.x}px`,top:`${n.y}px`}));function c(f){f.disabled||f.separator||(a("select",f.key),a("close"))}function l(f){const p=f.target;r.value&&p&&!r.value.contains(p)&&a("close")}function d(f){f.key==="Escape"&&a("close")}function i(){document.addEventListener("mousedown",l),document.addEventListener("keydown",d)}function m(){document.removeEventListener("mousedown",l),document.removeEventListener("keydown",d)}return e.watch(()=>n.visible,f=>{if(f){i();return}m()},{immediate:!0}),e.onBeforeUnmount(()=>{m()}),(f,p)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[t.visible?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"menuRef",ref:r,class:"of-context-menu",style:e.normalizeStyle(s.value),role:"menu",onMousedown:p[0]||(p[0]=e.withModifiers(()=>{},["stop"]))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,u=>{var y;return e.openBlock(),e.createElementBlock(e.Fragment,{key:u.key},[u.separator?(e.openBlock(),e.createElementBlock("hr",Nd)):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(["of-context-menu__item",{"is-disabled":u.disabled,"is-danger":u.danger}]),disabled:u.disabled,role:"menuitem",onClick:B=>c(u)},[u.icon?(e.openBlock(),e.createElementBlock("span",$d,e.toDisplayString(u.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",xd,e.toDisplayString(u.label),1),(y=u.children)!=null&&y.length?(e.openBlock(),e.createElementBlock("span",Dd,"›")):e.createCommentVNode("",!0)],10,wd))],64)}),128))],36)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-85fd808a"]]);function Tn(t={}){const o=e.ref(!1),n=e.ref(!1),a=e.ref(null),r=e.ref(0);let s=null,c="";async function l(i){var h,b,C,k,N,w,V,q,_;n.value=!0,o.value=!1,a.value=null,c="",s=new AbortController;let m=null;t.timeout&&t.timeout>0&&(m=setTimeout(()=>{s==null||s.abort()},t.timeout));let f="",p=[],u=!1;const y=()=>{var $,x;if(f&&(($=t.onChunk)==null||$.call(t,f),f=""),p.length>0){for(const O of p)(x=t.onData)==null||x.call(t,O);p=[]}u=!1},B=()=>{u||(u=!0,requestAnimationFrame(y))};try{const $=i.getReader(),x=new TextDecoder;for(n.value=!1,o.value=!0;;){const{done:O,value:K}=await $.read();if(O)break;const v=x.decode(K,{stream:!0});if(t.mode==="sse"){c+=v;const P=c.split(`
5
+ `);c=P.pop()??"";for(const J of P){const g=J.trim();if(!(!g||g.startsWith(":"))&&g.startsWith("data: ")){const S=g.slice(6);if(S==="[DONE]")continue;try{const T=JSON.parse(S);(t.bufferInterval??0)>0?(p.push(T),B()):(h=t.onData)==null||h.call(t,T)}catch{(t.bufferInterval??0)>0?(f+=S,B()):(b=t.onChunk)==null||b.call(t,S)}}}}else(t.bufferInterval??0)>0?(f+=v,B()):(C=t.onChunk)==null||C.call(t,v)}y(),(k=t.onDone)==null||k.call(t)}catch($){if($.name!=="AbortError"){const x=((N=t.retry)==null?void 0:N.maxRetries)??0;if(r.value<x){const O=((w=t.retry)==null?void 0:w.baseDelay)??1e3,K=((V=t.retry)==null?void 0:V.backoff)==="linear"?O*(r.value+1):O*Math.pow(2,r.value);r.value++,await new Promise(v=>setTimeout(v,K)),(q=t.onRetry)==null||q.call(t,r.value);return}a.value=$,(_=t.onError)==null||_.call(t,$)}}finally{m&&clearTimeout(m),o.value=!1,n.value=!1}}function d(){s==null||s.abort(),o.value=!1,n.value=!1}return{isStreaming:e.readonly(o),isLoading:e.readonly(n),error:e.readonly(a),retryCount:e.readonly(r),start:l,cancel:d}}function Vn(t={}){const o=e.ref(""),n=e.ref(!1);let a="",r=0,s=null,c=null;const l=t.speed??20;function d(){s!==null&&(cancelAnimationFrame(s),s=null),c!==null&&(clearTimeout(c),c=null)}function i(){var y,B;if(r>=a.length){n.value=!1,c=null,(y=t.onComplete)==null||y.call(t);return}o.value=a.slice(0,++r),(B=t.onUpdate)==null||B.call(t,o.value),n.value&&(c=setTimeout(i,l))}function m(){if(typeof document<"u"&&document.hidden){i();return}let y=0;function B(h){var b,C;if(y||(y=h),h-y>=l){if(y=h,r>=a.length){n.value=!1,s=null,(b=t.onComplete)==null||b.call(t);return}o.value=a.slice(0,++r),(C=t.onUpdate)==null||C.call(t,o.value)}n.value&&(s=requestAnimationFrame(B))}s=requestAnimationFrame(B)}function f(y){a+=y,n.value||(n.value=!0,m())}function p(){d(),a="",r=0,o.value="",n.value=!1}function u(){var y,B;d(),o.value=a,r=a.length,n.value=!1,(y=t.onUpdate)==null||y.call(t,o.value),(B=t.onComplete)==null||B.call(t)}return{displayText:e.readonly(o),isTyping:e.readonly(n),append:f,reset:p,flush:u}}function Mn(){return Date.now().toString(36)+Math.random().toString(36).slice(2,6)}function Td(t){const o=e.shallowRef([]),n=e.ref(!1),a=e.ref(null),r=t.typewriter?Vn({speed:t.typewriterSpeed??15,onUpdate:B=>{if(a.value){const h=o.value.findIndex(b=>b.id===a.value);h!==-1&&(o.value[h].content=B,e.triggerRef(o))}}}):null;function s(B){const h={id:Mn(),role:"user",content:B,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(h),e.triggerRef(o),h}function c(){const B={id:Mn(),role:"ai",content:"",isStreaming:!0,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(B),e.triggerRef(o),a.value=B.id,B}function l(B,h){const b=o.value.findIndex(C=>C.id===B);b!==-1&&(o.value[b]={...o.value[b],...h},e.triggerRef(o))}function d(B,h){const b=o.value.findIndex(C=>C.id===B);b!==-1&&(o.value[b].content+=h,e.triggerRef(o))}const{start:i,cancel:m,isStreaming:f}=Tn({mode:t.parseChunk?"sse":"raw",onData:t.parseChunk?B=>{const h=t.parseChunk(B);h&&a.value&&(r?r.append(h):d(a.value,h))}:void 0,onChunk:t.parseChunk?void 0:B=>{a.value&&(r?r.append(B):d(a.value,B))},onDone:()=>{a.value&&(r&&r.flush(),l(a.value,{isStreaming:!1})),n.value=!1,a.value=null},onError:B=>{var h;a.value&&l(a.value,{isStreaming:!1,error:!0,content:`错误:${B.message}`}),n.value=!1,a.value=null,(h=t.onError)==null||h.call(t,B)}});async function p(B){var b;if(n.value||!B.trim())return;s(B);const h=c();n.value=!0,r&&r.reset();try{const C=await t.sendRequest(B,o.value.slice(0,-2)),k=C instanceof Response?C.body:C;await i(k)}catch(C){l(h.id,{isStreaming:!1,error:!0,content:`请求失败:${C.message}`}),n.value=!1,a.value=null,(b=t.onError)==null||b.call(t,C)}}function u(){m(),a.value&&l(a.value,{isStreaming:!1}),n.value=!1,a.value=null}function y(){u(),o.value=[],e.triggerRef(o)}return{messages:e.readonly(o),isGenerating:e.readonly(n),isStreaming:f,send:p,cancel:u,clear:y}}const Vd=[{value:"contains",label:"包含"},{value:"not_contains",label:"不包含"},{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"starts_with",label:"开头是"},{value:"ends_with",label:"结尾是"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}],Md=[{value:"equals",label:"等于"},{value:"not_equals",label:"不等于"},{value:"gt",label:"大于"},{value:"gte",label:"大于等于"},{value:"lt",label:"小于"},{value:"lte",label:"小于等于"},{value:"is_empty",label:"为空"},{value:"is_not_empty",label:"不为空"}];function Ad(){return Math.random().toString(36).slice(2,8)}function Rd(t,o){const n=String(t??"").toLowerCase(),a=o.value.toLowerCase();switch(o.operator){case"equals":return n===a;case"not_equals":return n!==a;case"contains":return n.includes(a);case"not_contains":return!n.includes(a);case"starts_with":return n.startsWith(a);case"ends_with":return n.endsWith(a);case"is_empty":return n===""||t==null;case"is_not_empty":return n!==""&&t!=null;case"gt":return Number(t)>Number(o.value);case"gte":return Number(t)>=Number(o.value);case"lt":return Number(t)<Number(o.value);case"lte":return Number(t)<=Number(o.value);default:return!0}}function Id(t={}){const o=e.shallowRef([]),n=e.ref("and"),a=e.computed(()=>o.value.length>0);function r(m){var f,p;o.value.push({id:Ad(),field:m??((p=(f=t.columns)==null?void 0:f[0])==null?void 0:p.key)??"",operator:"contains",value:""}),e.triggerRef(o)}function s(m){o.value=o.value.filter(f=>f.id!==m),e.triggerRef(o)}function c(m,f){const p=o.value.findIndex(u=>u.id===m);p!==-1&&(o.value[p]={...o.value[p],...f},e.triggerRef(o))}function l(){o.value=[],e.triggerRef(o)}function d(m){return o.value.length?m.filter(f=>{const p=o.value.map(u=>u.field?Rd(f[u.field],u):!0);return n.value==="and"?p.every(Boolean):p.some(Boolean)}):m}const i=m=>m==="number"?Md:Vd;return{conditions:e.readonly(o),logic:n,isActive:a,addCondition:r,removeCondition:s,updateCondition:c,clearConditions:l,filterData:d,operatorsFor:i}}function Od(t={}){const o=e.shallowRef(t.data??[]),n=e.ref(!1),a=e.ref(null),r=e.ref(new Set),s=e.ref({field:null,order:null}),c=e.ref({page:1,pageSize:t.pageSize??20,total:(t.data??[]).length});function l(_){s.value.field===_?(s.value.order=s.value.order==="asc"?"desc":s.value.order==="desc"?null:"asc",s.value.order===null&&(s.value.field=null)):(s.value.field=_,s.value.order="asc"),c.value.page=1,t.serverSide&&w()}function d(_,$){s.value={field:_,order:$},c.value.page=1,t.serverSide&&w()}function i(_){if(!s.value.field||!s.value.order)return _;const $=s.value.field,x=s.value.order;return[..._].sort((O,K)=>{const v=O[$],P=K[$];if(v==null&&P==null)return 0;if(v==null)return 1;if(P==null)return-1;if(typeof v=="number"&&typeof P=="number")return x==="asc"?v-P:P-v;const J=String(v),g=String(P);return x==="asc"?J.localeCompare(g):g.localeCompare(J)})}function m(_){c.value.page=Math.max(1,Math.min(_,p.value)),t.serverSide&&w()}function f(_){c.value.pageSize=_,c.value.page=1,t.serverSide&&w()}const p=e.computed(()=>Math.max(1,Math.ceil(c.value.total/c.value.pageSize))),u=e.computed(()=>{if(t.serverSide)return o.value;const _=i(o.value);c.value.total=_.length;const{page:$,pageSize:x}=c.value;return _.slice(($-1)*x,$*x)});function y(_,$){return _.id??$}function B(_,$){const x=y(_,$);r.value.has(x)?r.value.delete(x):r.value.add(x)}function h(_){r.value.size===_.length?r.value.clear():_.forEach(($,x)=>r.value.add(y($,x)))}function b(_,$){return r.value.has(y(_,$))}function C(){r.value.clear()}const k=e.computed(()=>r.value.size),N=e.computed(()=>u.value.length>0&&r.value.size===u.value.length);async function w(){if(t.onFetch){n.value=!0,a.value=null;try{const _=await t.onFetch({page:c.value.page,pageSize:c.value.pageSize,sort:s.value});o.value=_.data,e.triggerRef(o),c.value.total=_.total}catch(_){a.value=_}finally{n.value=!1}}}function V(){t.serverSide?w():c.value.page=1}function q(_){o.value=_,e.triggerRef(o),c.value.page=1,t.serverSide||(c.value.total=_.length)}return{data:u,rawData:e.readonly(o),loading:e.readonly(n),error:e.readonly(a),sort:e.readonly(s),pagination:e.readonly(c),totalPages:p,selectedRows:e.readonly(r),selectedCount:k,isAllSelected:N,toggleSort:l,setSort:d,setPage:m,setPageSize:f,toggleRowSelection:B,toggleSelectAll:h,isRowSelected:b,clearSelection:C,refresh:V,fetchData:w,setData:q}}function zd(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function An(t){return t instanceof Map?t.clear=t.delete=t.set=function(){throw new Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=function(){throw new Error("set is read-only")}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach(o=>{const n=t[o],a=typeof n;(a==="object"||a==="function")&&!Object.isFrozen(n)&&An(n)}),t}let Rn=class{constructor(o){o.data===void 0&&(o.data={}),this.data=o.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function In(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function se(t,...o){const n=Object.create(null);for(const a in t)n[a]=t[a];return o.forEach(function(a){for(const r in a)n[r]=a[r]}),n}const Ld="</span>",On=t=>!!t.scope,Fd=(t,{prefix:o})=>{if(t.startsWith("language:"))return t.replace("language:","language-");if(t.includes(".")){const n=t.split(".");return[`${o}${n.shift()}`,...n.map((a,r)=>`${a}${"_".repeat(r+1)}`)].join(" ")}return`${o}${t}`};class Pd{constructor(o,n){this.buffer="",this.classPrefix=n.classPrefix,o.walk(this)}addText(o){this.buffer+=In(o)}openNode(o){if(!On(o))return;const n=Fd(o.scope,{prefix:this.classPrefix});this.span(n)}closeNode(o){On(o)&&(this.buffer+=Ld)}value(){return this.buffer}span(o){this.buffer+=`<span class="${o}">`}}const zn=(t={})=>{const o={children:[]};return Object.assign(o,t),o};class st{constructor(){this.rootNode=zn(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(o){this.top.children.push(o)}openNode(o){const n=zn({scope:o});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(o){return this.constructor._walk(o,this.rootNode)}static _walk(o,n){return typeof n=="string"?o.addText(n):n.children&&(o.openNode(n),n.children.forEach(a=>this._walk(o,a)),o.closeNode(n)),o}static _collapse(o){typeof o!="string"&&o.children&&(o.children.every(n=>typeof n=="string")?o.children=[o.children.join("")]:o.children.forEach(n=>{st._collapse(n)}))}}class Ud extends st{constructor(o){super(),this.options=o}addText(o){o!==""&&this.add(o)}startScope(o){this.openNode(o)}endScope(){this.closeNode()}__addSublanguage(o,n){const a=o.root;n&&(a.scope=`language:${n}`),this.add(a)}toHTML(){return new Pd(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ke(t){return t?typeof t=="string"?t:t.source:null}function Ln(t){return ie("(?=",t,")")}function vd(t){return ie("(?:",t,")*")}function Kd(t){return ie("(?:",t,")?")}function ie(...t){return t.map(n=>ke(n)).join("")}function Gd(t){const o=t[t.length-1];return typeof o=="object"&&o.constructor===Object?(t.splice(t.length-1,1),o):{}}function ct(...t){return"("+(Gd(t).capture?"":"?:")+t.map(a=>ke(a)).join("|")+")"}function Fn(t){return new RegExp(t.toString()+"|").exec("").length-1}function Hd(t,o){const n=t&&t.exec(o);return n&&n.index===0}const qd=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function it(t,{joinWith:o}){let n=0;return t.map(a=>{n+=1;const r=n;let s=ke(a),c="";for(;s.length>0;){const l=qd.exec(s);if(!l){c+=s;break}c+=s.substring(0,l.index),s=s.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?c+="\\"+String(Number(l[1])+r):(c+=l[0],l[0]==="("&&n++)}return c}).map(a=>`(${a})`).join(o)}const Wd=/\b\B/,Pn="[a-zA-Z]\\w*",dt="[a-zA-Z_]\\w*",Un="\\b\\d+(\\.\\d+)?",vn="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Kn="\\b(0b[01]+)",Yd="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Zd=(t={})=>{const o=/^#![ ]*\//;return t.binary&&(t.begin=ie(o,/.*\b/,t.binary,/\b.*/)),se({scope:"meta",begin:o,end:/$/,relevance:0,"on:begin":(n,a)=>{n.index!==0&&a.ignoreMatch()}},t)},he={begin:"\\\\[\\s\\S]",relevance:0},jd={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[he]},Xd={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[he]},Qd={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},we=function(t,o,n={}){const a=se({scope:"comment",begin:t,end:o,contains:[]},n);a.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const r=ct("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return a.contains.push({begin:ie(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a},Jd=we("//","$"),em=we("/\\*","\\*/"),tm=we("#","$"),nm={scope:"number",begin:Un,relevance:0},om={scope:"number",begin:vn,relevance:0},am={scope:"number",begin:Kn,relevance:0},lm={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[he,{begin:/\[/,end:/\]/,relevance:0,contains:[he]}]},rm={scope:"title",begin:Pn,relevance:0},sm={scope:"title",begin:dt,relevance:0},cm={begin:"\\.\\s*"+dt,relevance:0};var $e=Object.freeze({__proto__:null,APOS_STRING_MODE:jd,BACKSLASH_ESCAPE:he,BINARY_NUMBER_MODE:am,BINARY_NUMBER_RE:Kn,COMMENT:we,C_BLOCK_COMMENT_MODE:em,C_LINE_COMMENT_MODE:Jd,C_NUMBER_MODE:om,C_NUMBER_RE:vn,END_SAME_AS_BEGIN:function(t){return Object.assign(t,{"on:begin":(o,n)=>{n.data._beginMatch=o[1]},"on:end":(o,n)=>{n.data._beginMatch!==o[1]&&n.ignoreMatch()}})},HASH_COMMENT_MODE:tm,IDENT_RE:Pn,MATCH_NOTHING_RE:Wd,METHOD_GUARD:cm,NUMBER_MODE:nm,NUMBER_RE:Un,PHRASAL_WORDS_MODE:Qd,QUOTE_STRING_MODE:Xd,REGEXP_MODE:lm,RE_STARTERS_RE:Yd,SHEBANG:Zd,TITLE_MODE:rm,UNDERSCORE_IDENT_RE:dt,UNDERSCORE_TITLE_MODE:sm});function im(t,o){t.input[t.index-1]==="."&&o.ignoreMatch()}function dm(t,o){t.className!==void 0&&(t.scope=t.className,delete t.className)}function mm(t,o){o&&t.beginKeywords&&(t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",t.__beforeBegin=im,t.keywords=t.keywords||t.beginKeywords,delete t.beginKeywords,t.relevance===void 0&&(t.relevance=0))}function fm(t,o){Array.isArray(t.illegal)&&(t.illegal=ct(...t.illegal))}function um(t,o){if(t.match){if(t.begin||t.end)throw new Error("begin & end are not supported with match");t.begin=t.match,delete t.match}}function pm(t,o){t.relevance===void 0&&(t.relevance=1)}const gm=(t,o)=>{if(!t.beforeMatch)return;if(t.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},t);Object.keys(t).forEach(a=>{delete t[a]}),t.keywords=n.keywords,t.begin=ie(n.beforeMatch,Ln(n.begin)),t.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},t.relevance=0,delete n.beforeMatch},_m=["of","and","for","in","not","or","if","then","parent","list","value"],bm="keyword";function Gn(t,o,n=bm){const a=Object.create(null);return typeof t=="string"?r(n,t.split(" ")):Array.isArray(t)?r(n,t):Object.keys(t).forEach(function(s){Object.assign(a,Gn(t[s],o,s))}),a;function r(s,c){o&&(c=c.map(l=>l.toLowerCase())),c.forEach(function(l){const d=l.split("|");a[d[0]]=[s,ym(d[0],d[1])]})}}function ym(t,o){return o?Number(o):km(t)?0:1}function km(t){return _m.includes(t.toLowerCase())}const Hn={},de=t=>{console.error(t)},qn=(t,...o)=>{console.log(`WARN: ${t}`,...o)},ge=(t,o)=>{Hn[`${t}/${o}`]||(console.log(`Deprecated as of ${t}. ${o}`),Hn[`${t}/${o}`]=!0)},xe=new Error;function Wn(t,o,{key:n}){let a=0;const r=t[n],s={},c={};for(let l=1;l<=o.length;l++)c[l+a]=r[l],s[l+a]=!0,a+=Fn(o[l-1]);t[n]=c,t[n]._emit=s,t[n]._multi=!0}function hm(t){if(Array.isArray(t.begin)){if(t.skip||t.excludeBegin||t.returnBegin)throw de("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),xe;if(typeof t.beginScope!="object"||t.beginScope===null)throw de("beginScope must be object"),xe;Wn(t,t.begin,{key:"beginScope"}),t.begin=it(t.begin,{joinWith:""})}}function Em(t){if(Array.isArray(t.end)){if(t.skip||t.excludeEnd||t.returnEnd)throw de("skip, excludeEnd, returnEnd not compatible with endScope: {}"),xe;if(typeof t.endScope!="object"||t.endScope===null)throw de("endScope must be object"),xe;Wn(t,t.end,{key:"endScope"}),t.end=it(t.end,{joinWith:""})}}function Bm(t){t.scope&&typeof t.scope=="object"&&t.scope!==null&&(t.beginScope=t.scope,delete t.scope)}function Cm(t){Bm(t),typeof t.beginScope=="string"&&(t.beginScope={_wrap:t.beginScope}),typeof t.endScope=="string"&&(t.endScope={_wrap:t.endScope}),hm(t),Em(t)}function Sm(t){function o(c,l){return new RegExp(ke(c),"m"+(t.case_insensitive?"i":"")+(t.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,d){d.position=this.position++,this.matchIndexes[this.matchAt]=d,this.regexes.push([d,l]),this.matchAt+=Fn(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(d=>d[1]);this.matcherRe=o(it(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const d=this.matcherRe.exec(l);if(!d)return null;const i=d.findIndex((f,p)=>p>0&&f!==void 0),m=this.matchIndexes[i];return d.splice(0,i),Object.assign(d,m)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const d=new n;return this.rules.slice(l).forEach(([i,m])=>d.addRule(i,m)),d.compile(),this.multiRegexes[l]=d,d}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,d){this.rules.push([l,d]),d.type==="begin"&&this.count++}exec(l){const d=this.getMatcher(this.regexIndex);d.lastIndex=this.lastIndex;let i=d.exec(l);if(this.resumingScanAtSamePosition()&&!(i&&i.index===this.lastIndex)){const m=this.getMatcher(0);m.lastIndex=this.lastIndex+1,i=m.exec(l)}return i&&(this.regexIndex+=i.position+1,this.regexIndex===this.count&&this.considerAll()),i}}function r(c){const l=new a;return c.contains.forEach(d=>l.addRule(d.begin,{rule:d,type:"begin"})),c.terminatorEnd&&l.addRule(c.terminatorEnd,{type:"end"}),c.illegal&&l.addRule(c.illegal,{type:"illegal"}),l}function s(c,l){const d=c;if(c.isCompiled)return d;[dm,um,Cm,gm].forEach(m=>m(c,l)),t.compilerExtensions.forEach(m=>m(c,l)),c.__beforeBegin=null,[mm,fm,pm].forEach(m=>m(c,l)),c.isCompiled=!0;let i=null;return typeof c.keywords=="object"&&c.keywords.$pattern&&(c.keywords=Object.assign({},c.keywords),i=c.keywords.$pattern,delete c.keywords.$pattern),i=i||/\w+/,c.keywords&&(c.keywords=Gn(c.keywords,t.case_insensitive)),d.keywordPatternRe=o(i,!0),l&&(c.begin||(c.begin=/\B|\b/),d.beginRe=o(d.begin),!c.end&&!c.endsWithParent&&(c.end=/\B|\b/),c.end&&(d.endRe=o(d.end)),d.terminatorEnd=ke(d.end)||"",c.endsWithParent&&l.terminatorEnd&&(d.terminatorEnd+=(c.end?"|":"")+l.terminatorEnd)),c.illegal&&(d.illegalRe=o(c.illegal)),c.contains||(c.contains=[]),c.contains=[].concat(...c.contains.map(function(m){return Nm(m==="self"?c:m)})),c.contains.forEach(function(m){s(m,d)}),c.starts&&s(c.starts,l),d.matcher=r(d),d}if(t.compilerExtensions||(t.compilerExtensions=[]),t.contains&&t.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return t.classNameAliases=se(t.classNameAliases||{}),s(t)}function Yn(t){return t?t.endsWithParent||Yn(t.starts):!1}function Nm(t){return t.variants&&!t.cachedVariants&&(t.cachedVariants=t.variants.map(function(o){return se(t,{variants:null},o)})),t.cachedVariants?t.cachedVariants:Yn(t)?se(t,{starts:t.starts?se(t.starts):null}):Object.isFrozen(t)?se(t):t}var wm="11.11.1";class $m extends Error{constructor(o,n){super(o),this.name="HTMLInjectionError",this.html=n}}const mt=In,Zn=se,jn=Symbol("nomatch"),xm=7,Xn=function(t){const o=Object.create(null),n=Object.create(null),a=[];let r=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Ud};function d(g){return l.noHighlightRe.test(g)}function i(g){let S=g.className+" ";S+=g.parentNode?g.parentNode.className:"";const T=l.languageDetectRe.exec(S);if(T){const I=_(T[1]);return I||(qn(s.replace("{}",T[1])),qn("Falling back to no-highlight mode for this block.",g)),I?T[1]:"no-highlight"}return S.split(/\s+/).find(I=>d(I)||_(I))}function m(g,S,T){let I="",z="";typeof S=="object"?(I=g,T=S.ignoreIllegals,z=S.language):(ge("10.7.0","highlight(lang, code, ...args) has been deprecated."),ge("10.7.0",`Please use highlight(code, options) instead.
6
+ https://github.com/highlightjs/highlight.js/issues/2277`),z=g,I=S),T===void 0&&(T=!0);const G={code:I,language:z};P("before:highlight",G);const U=G.result?G.result:f(G.language,G.code,T);return U.code=G.code,P("after:highlight",U),U}function f(g,S,T,I){const z=Object.create(null);function G(M,R){return M.keywords[R]}function U(){if(!L.keywords){X.addText(W);return}let M=0;L.keywordPatternRe.lastIndex=0;let R=L.keywordPatternRe.exec(W),F="";for(;R;){F+=W.substring(M,R.index);const H=ae.case_insensitive?R[0].toLowerCase():R[0],Q=G(L,H);if(Q){const[le,Sf]=Q;if(X.addText(F),F="",z[H]=(z[H]||0)+1,z[H]<=xm&&(Ae+=Sf),le.startsWith("_"))F+=R[0];else{const Nf=ae.classNameAliases[le]||le;oe(R[0],Nf)}}else F+=R[0];M=L.keywordPatternRe.lastIndex,R=L.keywordPatternRe.exec(W)}F+=W.substring(M),X.addText(F)}function j(){if(W==="")return;let M=null;if(typeof L.subLanguage=="string"){if(!o[L.subLanguage]){X.addText(W);return}M=f(L.subLanguage,W,!0,Co[L.subLanguage]),Co[L.subLanguage]=M._top}else M=u(W,L.subLanguage.length?L.subLanguage:null);L.relevance>0&&(Ae+=M.relevance),X.__addSublanguage(M._emitter,M.language)}function Z(){L.subLanguage!=null?j():U(),W=""}function oe(M,R){M!==""&&(X.startScope(R),X.addText(M),X.endScope())}function ko(M,R){let F=1;const H=R.length-1;for(;F<=H;){if(!M._emit[F]){F++;continue}const Q=ae.classNameAliases[M[F]]||M[F],le=R[F];Q?oe(le,Q):(W=le,U(),W=""),F++}}function ho(M,R){return M.scope&&typeof M.scope=="string"&&X.openNode(ae.classNameAliases[M.scope]||M.scope),M.beginScope&&(M.beginScope._wrap?(oe(W,ae.classNameAliases[M.beginScope._wrap]||M.beginScope._wrap),W=""):M.beginScope._multi&&(ko(M.beginScope,R),W="")),L=Object.create(M,{parent:{value:L}}),L}function Eo(M,R,F){let H=Hd(M.endRe,F);if(H){if(M["on:end"]){const Q=new Rn(M);M["on:end"](R,Q),Q.isMatchIgnored&&(H=!1)}if(H){for(;M.endsParent&&M.parent;)M=M.parent;return M}}if(M.endsWithParent)return Eo(M.parent,R,F)}function kf(M){return L.matcher.regexIndex===0?(W+=M[0],1):(gt=!0,0)}function hf(M){const R=M[0],F=M.rule,H=new Rn(F),Q=[F.__beforeBegin,F["on:begin"]];for(const le of Q)if(le&&(le(M,H),H.isMatchIgnored))return kf(R);return F.skip?W+=R:(F.excludeBegin&&(W+=R),Z(),!F.returnBegin&&!F.excludeBegin&&(W=R)),ho(F,M),F.returnBegin?0:R.length}function Ef(M){const R=M[0],F=S.substring(M.index),H=Eo(L,M,F);if(!H)return jn;const Q=L;L.endScope&&L.endScope._wrap?(Z(),oe(R,L.endScope._wrap)):L.endScope&&L.endScope._multi?(Z(),ko(L.endScope,M)):Q.skip?W+=R:(Q.returnEnd||Q.excludeEnd||(W+=R),Z(),Q.excludeEnd&&(W=R));do L.scope&&X.closeNode(),!L.skip&&!L.subLanguage&&(Ae+=L.relevance),L=L.parent;while(L!==H.parent);return H.starts&&ho(H.starts,M),Q.returnEnd?0:R.length}function Bf(){const M=[];for(let R=L;R!==ae;R=R.parent)R.scope&&M.unshift(R.scope);M.forEach(R=>X.openNode(R))}let Me={};function Bo(M,R){const F=R&&R[0];if(W+=M,F==null)return Z(),0;if(Me.type==="begin"&&R.type==="end"&&Me.index===R.index&&F===""){if(W+=S.slice(R.index,R.index+1),!r){const H=new Error(`0 width match regex (${g})`);throw H.languageName=g,H.badRule=Me.rule,H}return 1}if(Me=R,R.type==="begin")return hf(R);if(R.type==="illegal"&&!T){const H=new Error('Illegal lexeme "'+F+'" for mode "'+(L.scope||"<unnamed>")+'"');throw H.mode=L,H}else if(R.type==="end"){const H=Ef(R);if(H!==jn)return H}if(R.type==="illegal"&&F==="")return W+=`
7
+ `,1;if(pt>1e5&&pt>R.index*3)throw new Error("potential infinite loop, way more iterations than matches");return W+=F,F.length}const ae=_(g);if(!ae)throw de(s.replace("{}",g)),new Error('Unknown language: "'+g+'"');const Cf=Sm(ae);let ut="",L=I||Cf;const Co={},X=new l.__emitter(l);Bf();let W="",Ae=0,me=0,pt=0,gt=!1;try{if(ae.__emitTokens)ae.__emitTokens(S,X);else{for(L.matcher.considerAll();;){pt++,gt?gt=!1:L.matcher.considerAll(),L.matcher.lastIndex=me;const M=L.matcher.exec(S);if(!M)break;const R=S.substring(me,M.index),F=Bo(R,M);me=M.index+F}Bo(S.substring(me))}return X.finalize(),ut=X.toHTML(),{language:g,value:ut,relevance:Ae,illegal:!1,_emitter:X,_top:L}}catch(M){if(M.message&&M.message.includes("Illegal"))return{language:g,value:mt(S),illegal:!0,relevance:0,_illegalBy:{message:M.message,index:me,context:S.slice(me-100,me+100),mode:M.mode,resultSoFar:ut},_emitter:X};if(r)return{language:g,value:mt(S),illegal:!1,relevance:0,errorRaised:M,_emitter:X,_top:L};throw M}}function p(g){const S={value:mt(g),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return S._emitter.addText(g),S}function u(g,S){S=S||l.languages||Object.keys(o);const T=p(g),I=S.filter(_).filter(x).map(Z=>f(Z,g,!1));I.unshift(T);const z=I.sort((Z,oe)=>{if(Z.relevance!==oe.relevance)return oe.relevance-Z.relevance;if(Z.language&&oe.language){if(_(Z.language).supersetOf===oe.language)return 1;if(_(oe.language).supersetOf===Z.language)return-1}return 0}),[G,U]=z,j=G;return j.secondBest=U,j}function y(g,S,T){const I=S&&n[S]||T;g.classList.add("hljs"),g.classList.add(`language-${I}`)}function B(g){let S=null;const T=i(g);if(d(T))return;if(P("before:highlightElement",{el:g,language:T}),g.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",g);return}if(g.children.length>0&&(l.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(g)),l.throwUnescapedHTML))throw new $m("One of your code blocks includes unescaped HTML.",g.innerHTML);S=g;const I=S.textContent,z=T?m(I,{language:T,ignoreIllegals:!0}):u(I);g.innerHTML=z.value,g.dataset.highlighted="yes",y(g,T,z.language),g.result={language:z.language,re:z.relevance,relevance:z.relevance},z.secondBest&&(g.secondBest={language:z.secondBest.language,relevance:z.secondBest.relevance}),P("after:highlightElement",{el:g,result:z,text:I})}function h(g){l=Zn(l,g)}const b=()=>{N(),ge("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function C(){N(),ge("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let k=!1;function N(){function g(){N()}if(document.readyState==="loading"){k||window.addEventListener("DOMContentLoaded",g,!1),k=!0;return}document.querySelectorAll(l.cssSelector).forEach(B)}function w(g,S){let T=null;try{T=S(t)}catch(I){if(de("Language definition for '{}' could not be registered.".replace("{}",g)),r)de(I);else throw I;T=c}T.name||(T.name=g),o[g]=T,T.rawDefinition=S.bind(null,t),T.aliases&&$(T.aliases,{languageName:g})}function V(g){delete o[g];for(const S of Object.keys(n))n[S]===g&&delete n[S]}function q(){return Object.keys(o)}function _(g){return g=(g||"").toLowerCase(),o[g]||o[n[g]]}function $(g,{languageName:S}){typeof g=="string"&&(g=[g]),g.forEach(T=>{n[T.toLowerCase()]=S})}function x(g){const S=_(g);return S&&!S.disableAutodetect}function O(g){g["before:highlightBlock"]&&!g["before:highlightElement"]&&(g["before:highlightElement"]=S=>{g["before:highlightBlock"](Object.assign({block:S.el},S))}),g["after:highlightBlock"]&&!g["after:highlightElement"]&&(g["after:highlightElement"]=S=>{g["after:highlightBlock"](Object.assign({block:S.el},S))})}function K(g){O(g),a.push(g)}function v(g){const S=a.indexOf(g);S!==-1&&a.splice(S,1)}function P(g,S){const T=g;a.forEach(function(I){I[T]&&I[T](S)})}function J(g){return ge("10.7.0","highlightBlock will be removed entirely in v12.0"),ge("10.7.0","Please use highlightElement now."),B(g)}Object.assign(t,{highlight:m,highlightAuto:u,highlightAll:N,highlightElement:B,highlightBlock:J,configure:h,initHighlighting:b,initHighlightingOnLoad:C,registerLanguage:w,unregisterLanguage:V,listLanguages:q,getLanguage:_,registerAliases:$,autoDetection:x,inherit:Zn,addPlugin:K,removePlugin:v}),t.debugMode=function(){r=!1},t.safeMode=function(){r=!0},t.versionString=wm,t.regex={concat:ie,lookahead:Ln,either:ct,optional:Kd,anyNumberOfTimes:vd};for(const g in $e)typeof $e[g]=="object"&&An($e[g]);return Object.assign(t,$e),t},_e=Xn({});_e.newInstance=()=>Xn({});var Dm=_e;_e.HighlightJS=_e,_e.default=_e;const Y=zd(Dm),Qn="[A-Za-z$_][0-9A-Za-z$_]*",Tm=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Vm=["true","false","null","undefined","NaN","Infinity"],Jn=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],eo=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],to=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Mm=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Am=[].concat(to,Jn,eo);function no(t){const o=t.regex,n=(T,{after:I})=>{const z="</"+T[0].slice(1);return T.input.indexOf(z,I)!==-1},a=Qn,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(T,I)=>{const z=T[0].length+T.index,G=T.input[z];if(G==="<"||G===","){I.ignoreMatch();return}G===">"&&(n(T,{after:z})||I.ignoreMatch());let U;const j=T.input.substring(z);if(U=j.match(/^\s*=/)){I.ignoreMatch();return}if((U=j.match(/^\s+extends\s+/))&&U.index===0){I.ignoreMatch();return}}},l={$pattern:Qn,keyword:Tm,literal:Vm,built_in:Am,"variable.language":Mm},d="[0-9](_?[0-9])*",i=`\\.(${d})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${m})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${m})\\b((${i})\\b|\\.)?|(${i})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},u={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},y={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"css"}},B={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},h={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},C={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:a+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},k=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,y,B,h,{match:/\$\d+/},f];p.contains=k.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(k)});const N=[].concat(C,p.contains),w=N.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(N)}]),V={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},q={variants:[{match:[/class/,/\s+/,a,/\s+/,/extends/,/\s+/,o.concat(a,"(",o.concat(/\./,a),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,a],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:o.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Jn,...eo]}},$={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},x={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[V],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function K(T){return o.concat("(?!",T.join("|"),")")}const v={match:o.concat(/\b/,K([...to,"super","import"].map(T=>`${T}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},P={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},J={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},V]},g="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(g)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[V]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),$,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,y,B,h,C,{match:/\$\d+/},f,_,{scope:"attr",match:a+o.lookahead(":"),relevance:0},S,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[C,t.REGEXP_MODE,{className:"function",begin:g,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},x,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[V,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},P,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[V]},v,O,q,J,{match:/\$[(.]/}]}}const De="[A-Za-z$_][0-9A-Za-z$_]*",oo=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],ao=["true","false","null","undefined","NaN","Infinity"],lo=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],ro=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],so=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],co=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],io=[].concat(so,lo,ro);function Rm(t){const o=t.regex,n=(T,{after:I})=>{const z="</"+T[0].slice(1);return T.input.indexOf(z,I)!==-1},a=De,r={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(T,I)=>{const z=T[0].length+T.index,G=T.input[z];if(G==="<"||G===","){I.ignoreMatch();return}G===">"&&(n(T,{after:z})||I.ignoreMatch());let U;const j=T.input.substring(z);if(U=j.match(/^\s*=/)){I.ignoreMatch();return}if((U=j.match(/^\s+extends\s+/))&&U.index===0){I.ignoreMatch();return}}},l={$pattern:De,keyword:oo,literal:ao,built_in:io,"variable.language":co},d="[0-9](_?[0-9])*",i=`\\.(${d})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${m})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${m})\\b((${i})\\b|\\.)?|(${i})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},p={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},u={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"xml"}},y={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"css"}},B={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,p],subLanguage:"graphql"}},h={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},C={className:"comment",variants:[t.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:a+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),t.C_BLOCK_COMMENT_MODE,t.C_LINE_COMMENT_MODE]},k=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,y,B,h,{match:/\$\d+/},f];p.contains=k.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(k)});const N=[].concat(C,p.contains),w=N.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(N)}]),V={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w},q={variants:[{match:[/class/,/\s+/,a,/\s+/,/extends/,/\s+/,o.concat(a,"(",o.concat(/\./,a),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,a],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:o.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...lo,...ro]}},$={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},x={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[V],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function K(T){return o.concat("(?!",T.join("|"),")")}const v={match:o.concat(/\b/,K([...so,"super","import"].map(T=>`${T}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},P={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},J={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},V]},g="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",S={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(g)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[V]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:w,CLASS_REFERENCE:_},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),$,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,y,B,h,C,{match:/\$\d+/},f,_,{scope:"attr",match:a+o.lookahead(":"),relevance:0},S,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[C,t.REGEXP_MODE,{className:"function",begin:g,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:w}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:s},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},x,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[V,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},P,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[V]},v,O,q,J,{match:/\$[(.]/}]}}function mo(t){const o=t.regex,n=Rm(t),a=De,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,t.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},c={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:r},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},d=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],i={$pattern:De,keyword:oo.concat(d),literal:ao,built_in:io.concat(r),"variable.language":co},m={className:"meta",begin:"@"+a},f=(B,h,b)=>{const C=B.contains.findIndex(k=>k.label===h);if(C===-1)throw new Error("can not find mode to replace");B.contains.splice(C,1,b)};Object.assign(n.keywords,i),n.exports.PARAMS_CONTAINS.push(m);const p=n.contains.find(B=>B.scope==="attr"),u=Object.assign({},p,{match:o.concat(a,o.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,p,u]),n.contains=n.contains.concat([m,s,c,u]),f(n,"shebang",t.SHEBANG()),f(n,"use_strict",l);const y=n.contains.find(B=>B.label==="func.def");return y.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function fo(t){const o=t.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),a=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:a,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},d={className:"meta",begin:/^(>>>|\.\.\.) /},i={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},m={begin:/\{\{/,relevance:0},f={className:"string",contains:[t.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[t.BACKSLASH_ESCAPE,d,m,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d,m,i]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[t.BACKSLASH_ESCAPE,m,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,m,i]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},p="[0-9](_?[0-9])*",u=`(\\b(${p}))?\\.(${p})|\\b(${p})\\.`,y=`\\b|${a.join("|")}`,B={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${u}))[eE][+-]?(${p})[jJ]?(?=${y})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${y})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${y})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${y})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${y})`},{begin:`\\b(${p})[jJ](?=${y})`}]},h={className:"comment",begin:o.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},b={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",d,B,f,t.HASH_COMMENT_MODE]}]};return i.contains=[f,B,d],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[d,B,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,h,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[b]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[B,b,f]}]}}function ft(t){const o=t.regex,n={},a={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:o.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},a]});const r={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},s=t.inherit(t.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),c={begin:/<<-?\s*(?=\w+)/,starts:{contains:[t.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,n,r]};r.contains.push(l);const d={match:/\\"/},i={className:"string",begin:/'/,end:/'/},m={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,n]},p=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],u=t.SHEBANG({binary:`(${p.join("|")})`,relevance:10}),y={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},B=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],h=["true","false"],b={match:/(\/[a-z._-]+)+/},C=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],k=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],N=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],w=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:B,literal:h,built_in:[...C,...k,"set","shopt",...N,...w]},contains:[u,t.SHEBANG(),y,f,s,c,b,l,d,i,m,n]}}function Im(t){const o={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},a=["true","false","null"],r={scope:"literal",beginKeywords:a.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:a},contains:[o,n,t.QUOTE_STRING_MODE,r,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Om(t){const o=t.regex,n=t.COMMENT("--","$"),a={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],c=["double precision","large object","with timezone","without timezone"],l=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],d=["add","asc","collation","desc","final","first","last","view"],i=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],m=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],f=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],p=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],u=m,y=[...i,...d].filter(w=>!m.includes(w)),B={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},h={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},b={match:o.concat(/\b/,o.either(...u),/\s*\(/),relevance:0,keywords:{built_in:u}};function C(w){return o.concat(/\b/,o.either(...w.map(V=>V.replace(/\s+/,"\\s+"))),/\b/)}const k={scope:"keyword",match:C(p),relevance:0};function N(w,{exceptions:V,when:q}={}){const _=q;return V=V||[],w.map($=>$.match(/\|\d+$/)||V.includes($)?$:_($)?`${$}|0`:$)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:N(y,{when:w=>w.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:C(c)},k,b,B,a,r,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,n,h]}}function uo(t){const o=t.regex,n=o.concat(/[\p{L}_]/u,o.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),a=/[\p{L}0-9._:-]+/u,r={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},c=t.inherit(s,{begin:/\(/,end:/\)/}),l=t.inherit(t.APOS_STRING_MODE,{className:"string"}),d=t.inherit(t.QUOTE_STRING_MODE,{className:"string"}),i={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:a,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[r]},{begin:/'/,end:/'/,contains:[r]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,d,l,c,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,c,d,l]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},r,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[d]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[i],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[i],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:o.concat(/</,o.lookahead(o.concat(n,o.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:i}]},{className:"tag",begin:o.concat(/<\//,o.lookahead(o.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const zm=t=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:t.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:t.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),Lm=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Fm=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Pm=[...Lm,...Fm],Um=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),vm=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Km=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Gm=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Hm(t){const o=t.regex,n=zm(t),a={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",s=/@-?\w[\w]*(-\w+)*/,c="[a-zA-Z-][a-zA-Z0-9_-]*",l=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,a,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+c,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+vm.join("|")+")"},{begin:":(:)?("+Km.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Gm.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:o.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:Um.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Pm.join("|")+")\\b"}]}}function po(t){const o=t.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},a={begin:"^[-\\*]{3,}",end:"$"},r={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},c={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:o.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},i={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},m={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=t.inherit(i,{contains:[]}),p=t.inherit(m,{contains:[]});i.contains.push(p),m.contains.push(f);let u=[n,d];return[i,m,f,p].forEach(b=>{b.contains=b.contains.concat(u)}),u=u.concat(i,m),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:u},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:u}]}]},n,s,i,m,{className:"quote",begin:"^>\\s+",contains:u,end:"$"},r,a,d,c,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function go(t){const o="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",a={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},r={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},c={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[t.BACKSLASH_ESCAPE,r]},l=t.inherit(c,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),p={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},u={end:",",endsWithParent:!0,excludeEnd:!0,keywords:o,relevance:0},y={begin:/\{/,end:/\}/,contains:[u],illegal:"\\n",relevance:0},B={begin:"\\[",end:"\\]",contains:[u],illegal:"\\n",relevance:0},h=[a,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+t.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+t.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},t.HASH_COMMENT_MODE,{beginKeywords:o,keywords:{literal:o}},p,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},y,B,s,c],b=[...h];return b.pop(),b.push(l),u.contains=b,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:h}}var be="[0-9](_*[0-9])*",Te=`\\.(${be})`,Ve="[0-9a-fA-F](_*[0-9a-fA-F])*",_o={className:"number",variants:[{begin:`(\\b(${be})((${Te})|\\.)?|(${Te}))[eE][+-]?(${be})[fFdD]?\\b`},{begin:`\\b(${be})((${Te})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Te})[fFdD]?\\b`},{begin:`\\b(${be})[fFdD]\\b`},{begin:`\\b0[xX]((${Ve})\\.?|(${Ve})?\\.(${Ve}))[pP][+-]?(${be})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Ve})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function bo(t,o,n){return n===-1?"":t.replace(o,a=>bo(t,o,n-1))}function qm(t){const o=t.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",a=n+bo("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),d={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},i={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},m={className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[t.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:d,illegal:/<\/|#/,contains:[t.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[t.BACKSLASH_ESCAPE]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[o.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[m,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+a+"\\s+)",t.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:d,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:d,relevance:0,contains:[i,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,_o,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},_o,i]}}function Wm(t){const s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE,{className:"string",variants:[t.QUOTE_STRING_MODE,t.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[t.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,illegal:/["']/}]}]}}function Ym(t){const o=t.regex,n=/(r#)?/,a=o.concat(n,t.UNDERSCORE_IDENT_RE),r=o.concat(n,t.IDENT_RE),s={className:"title.function.invoke",relevance:0,begin:o.concat(/\b/,/(?!let|for|while|if|else|match\b)/,r,o.lookahead(/\s*\(/))},c="([ui](8|16|32|64|128|size)|f(32|64))?",l=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],d=["true","false","Some","None","Ok","Err"],i=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],m=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:t.IDENT_RE+"!?",type:m,keyword:l,literal:d,built_in:i},illegal:"</",contains:[t.C_LINE_COMMENT_MODE,t.COMMENT("/\\*","\\*/",{contains:["self"]}),t.inherit(t.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+c},{begin:"\\b0o([0-7_]+)"+c},{begin:"\\b0x([A-Fa-f0-9_]+)"+c},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+c}],relevance:0},{begin:[/fn/,/\s+/,a],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,a],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,a,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,a],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,a],className:{1:"keyword",3:"title.class"}},{begin:t.IDENT_RE+"::",keywords:{keyword:"Self",built_in:i,type:m}},{className:"punctuation",begin:"->"},s]}}Y.registerLanguage("javascript",no),Y.registerLanguage("js",no),Y.registerLanguage("typescript",mo),Y.registerLanguage("ts",mo),Y.registerLanguage("python",fo),Y.registerLanguage("py",fo),Y.registerLanguage("bash",ft),Y.registerLanguage("sh",ft),Y.registerLanguage("shell",ft),Y.registerLanguage("json",Im),Y.registerLanguage("sql",Om),Y.registerLanguage("xml",uo),Y.registerLanguage("html",uo),Y.registerLanguage("css",Hm),Y.registerLanguage("markdown",po),Y.registerLanguage("md",po),Y.registerLanguage("yaml",go),Y.registerLanguage("yml",go),Y.registerLanguage("java",qm),Y.registerLanguage("go",Wm),Y.registerLanguage("rust",Ym);function Zm(t={}){const{showCopyButton:o=!1,t:n=s=>s}=t,a=new Ie.marked.Renderer;a.code=function(s,c){const l=typeof s=="object"?s.text||"":s,d=typeof s=="object"?s.lang||"":c||"",i=d&&Y.getLanguage(d)?d:"plaintext";let m="";try{m=Y.highlight(l,{language:i}).value}catch{m=Y.highlight(l,{language:"plaintext"}).value}const f=o?`<button onclick="navigator.clipboard.writeText(this.parentElement.nextElementSibling.innerText)" class="of-markdown-copy-btn">${n("common.copy")}</button>`:"";return`<div class="of-code-block-wrapper">
8
8
  <div class="of-code-block-header">
9
9
  <span class="of-code-block-lang">${i}</span>
10
10
  ${f}
11
11
  </div>
12
12
  <pre class="of-code-block-pre"><code class="hljs language-${i}">${m}</code></pre>
13
- </div>`},Me.marked.use({renderer:a});function r(s){return Me.marked.parse(s)}return{renderMarkdown:r}}const Dc=[gt,_t,bt,yt,kt,ht,Et,Bt,Nt,Ct,St,wt,xt,Ie,Ve,Oe,Dt,Tt,Le,qt,Xe,Ye,Qe,It,ze,Vt,Pe,Ue,Ot,Lt,zt,Pt,Ut,vt,Kt,Gt,Ht,Ge,Ke,He,Wt,We,Be,qe,Ze,je,Je,et,tt,nt,Zt,jt,he,Yt,Xt,ot,Qt,Jt,en,tn,nn,on,an],qn={install(t){Dc.forEach(o=>{t.component(o.name||o.__name||"",o)})}},Tc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldText",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"text","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-14e46c45"]])},Symbol.toStringTag,{value:"Module"})),Ac=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldNumber",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(n.value===null||n.value===void 0?"":String(n.value));e.onMounted(()=>e.nextTick(()=>{var i;return(i=r.value)==null?void 0:i.focus()}));function c(){if(s.value==="")return null;const i=Number(s.value);return Number.isNaN(i)?null:i}function l(i){const m=s.value===""?0:Number(s.value),f=Number.isNaN(m)?0:m;s.value=String(f+i)}function d(i){i.key==="ArrowUp"&&(i.preventDefault(),l(1)),i.key==="ArrowDown"&&(i.preventDefault(),l(-1)),i.key==="Enter"&&(i.preventDefault(),a("commit",c())),i.key==="Escape"&&(i.preventDefault(),a("cancel")),i.key==="Tab"&&(i.preventDefault(),a("commit",c()),a("tabNext"))}return(i,m)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"number","onUpdate:modelValue":m[0]||(m[0]=f=>s.value=f),onKeydown:d,onBlur:m[1]||(m[1]=f=>a("commit",c()))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-81dd7528"]])},Symbol.toStringTag,{value:"Module"})),Mc={class:"of-field-checkbox__icon"},Rc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldCheckbox",props:{value:{},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>!!n.value);function s(){a("commit",!r.value)}function c(l){(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),s()),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("tabNext"))}return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-checkbox",tabindex:"0",onClick:e.withModifiers(s,["stop"]),onKeydown:c},[e.createElementVNode("span",Mc,e.toDisplayString(r.value?"☑":"☐"),1)],32))}}),[["__scopeId","data-v-e5dffacb"]])},Symbol.toStringTag,{value:"Module"})),Ic={key:1,class:"of-field-select__display"},Vc=["onMouseenter","onClick"],Oc={key:1},Lc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldSelect",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),l=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.computed(()=>{const g=typeof n.value=="string"?n.value:null;return d.value.findIndex(b=>b.value===g)}),m=e.ref(0);function f(){if(!r.value)return;const g=r.value.getBoundingClientRect();c.value={top:`${g.bottom}px`,left:`${g.left}px`,width:`${Math.max(g.width,160)}px`}}function p(g){l.value=!1,a("commit",g)}function u(){l.value&&(l.value=!1,a("cancel"))}function B(g){var b,k;if(!d.value.length){g.key==="Escape"&&(g.preventDefault(),u());return}if(g.key==="ArrowDown"){g.preventDefault(),m.value=Math.min(m.value+1,d.value.length-1);return}if(g.key==="ArrowUp"){g.preventDefault(),m.value=Math.max(m.value-1,0);return}if(g.key==="Enter"){g.preventDefault(),p(((b=d.value[m.value])==null?void 0:b.value)??null);return}if(g.key==="Escape"){g.preventDefault(),u();return}g.key==="Tab"&&(g.preventDefault(),p(((k=d.value[m.value])==null?void 0:k.value)??null),a("tabNext"))}function C(g){var k,T;const b=g.target;b&&((k=r.value)!=null&&k.contains(b)||(T=s.value)!=null&&T.contains(b)||u())}e.onMounted(()=>{m.value=i.value>=0?i.value:0,e.nextTick(()=>{var g;f(),(g=r.value)==null||g.focus()}),window.addEventListener("resize",f),window.addEventListener("scroll",f,!0),window.addEventListener("mousedown",C,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",f),window.removeEventListener("scroll",f,!0),window.removeEventListener("mousedown",C,!0)}),e.watch(i,g=>{g>=0&&(m.value=g)});const y=e.computed(()=>{const g=typeof n.value=="string"?n.value:null;return d.value.find(b=>b.value===g)});return(g,b)=>{var k,T;return e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-select",tabindex:"0",onKeydown:B},[(k=y.value)!=null&&k.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:y.value.color})},e.toDisplayString(y.value.label),5)):(e.openBlock(),e.createElementBlock("span",Ic,e.toDisplayString(((T=y.value)==null?void 0:T.label)??"—"),1)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:s,class:"of-field-select__dropdown",style:e.normalizeStyle(c.value)},[e.createElementVNode("div",{class:e.normalizeClass(["of-field-select__option of-field-select__option--clear",{active:m.value===-1,selected:i.value===-1}]),onClick:b[0]||(b[0]=e.withModifiers(S=>p(null),["stop"]))}," — ",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,I)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-select__option",{active:I===m.value,selected:I===i.value}]),onMouseenter:W=>m.value=I,onClick:e.withModifiers(W=>p(S.value),["stop"])},[S.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:S.color})},e.toDisplayString(S.label),5)):(e.openBlock(),e.createElementBlock("span",Oc,e.toDisplayString(S.label),1))],42,Vc))),128))],4)):e.createCommentVNode("",!0)]))],544)}}}),[["__scopeId","data-v-7a426fe0"]])},Symbol.toStringTag,{value:"Module"})),zc={key:0,class:"of-field-multiselect__chips"},Fc={key:1,class:"of-field-multiselect__placeholder"},Pc=["onMouseenter","onClick"],Uc=["checked"],vc={key:1},Kc={class:"of-field-multiselect__actions"},Gc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldMultiSelect",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),l=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.ref([]),m=e.ref(0),f=e.computed(()=>{const k=new Set(i.value);return d.value.filter(T=>k.has(T.value))});function p(){i.value=Array.isArray(n.value)?n.value.filter(k=>typeof k=="string"):[]}function u(){if(!r.value)return;const k=r.value.getBoundingClientRect();c.value={top:`${k.bottom}px`,left:`${k.left}px`,width:`${Math.max(k.width,220)}px`}}function B(k){if(i.value.indexOf(k)>=0){i.value=i.value.filter(S=>S!==k);return}i.value=[...i.value,k]}function C(){l.value=!1,a("commit",[...i.value])}function y(){l.value&&(l.value=!1,a("cancel"))}function g(k){if(k.key==="ArrowDown"){k.preventDefault(),m.value=Math.min(m.value+1,Math.max(d.value.length-1,0));return}if(k.key==="ArrowUp"){k.preventDefault(),m.value=Math.max(m.value-1,0);return}if(k.key===" "||k.key==="Enter"){k.preventDefault();const T=d.value[m.value];T&&B(T.value);return}if(k.key==="Escape"){k.preventDefault(),y();return}k.key==="Tab"&&(k.preventDefault(),C(),a("tabNext"))}function b(k){var S,I;const T=k.target;T&&((S=r.value)!=null&&S.contains(T)||(I=s.value)!=null&&I.contains(T)||C())}return e.onMounted(()=>{p(),e.nextTick(()=>{var k;u(),(k=r.value)==null||k.focus()}),window.addEventListener("resize",u),window.addEventListener("scroll",u,!0),window.addEventListener("mousedown",b,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",u),window.removeEventListener("scroll",u,!0),window.removeEventListener("mousedown",b,!0)}),e.watch(()=>n.value,()=>{p()}),(k,T)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-multiselect",tabindex:"0",onKeydown:g},[f.value.length?(e.openBlock(),e.createElementBlock("div",zc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,S=>(e.openBlock(),e.createElementBlock("span",{key:S.value,class:"of-field-multiselect__badge",style:e.normalizeStyle(S.color?{background:S.color}:void 0)},e.toDisplayString(S.label),5))),128))])):(e.openBlock(),e.createElementBlock("span",Fc,"—")),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:s,class:"of-field-multiselect__dropdown",style:e.normalizeStyle(c.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,I)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-multiselect__option",{active:I===m.value,selected:i.value.includes(S.value)}]),onMouseenter:W=>m.value=I,onClick:e.withModifiers(W=>B(S.value),["stop"])},[e.createElementVNode("input",{class:"of-field-multiselect__checkbox",type:"checkbox",tabindex:"-1",checked:i.value.includes(S.value),onChange:T[0]||(T[0]=e.withModifiers(()=>{},["prevent"]))},null,40,Uc),S.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-multiselect__badge",style:e.normalizeStyle({background:S.color})},e.toDisplayString(S.label),5)):(e.openBlock(),e.createElementBlock("span",vc,e.toDisplayString(S.label),1))],42,Pc))),128)),e.createElementVNode("div",Kc,[e.createElementVNode("button",{class:"of-field-multiselect__btn",type:"button",onClick:e.withModifiers(y,["stop"])},"取消"),e.createElementVNode("button",{class:"of-field-multiselect__btn of-field-multiselect__btn--primary",type:"button",onClick:e.withModifiers(C,["stop"])},"完成")])],4)):e.createCommentVNode("",!0)]))],544))}}),[["__scopeId","data-v-8e54ce8e"]])},Symbol.toStringTag,{value:"Module"})),Hc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldDate",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),class:"of-field-input",type:"date",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value||null))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-3acdd712"]])},Symbol.toStringTag,{value:"Module"})),Wc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldDatetime",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),class:"of-field-input",type:"datetime-local",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value||null))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-bedfdcc6"]])},Symbol.toStringTag,{value:"Module"})),qc=["onMouseenter","onClick"],Zc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldRating",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(0),s=n.field.max??5,c=Number(n.value??0);function l(d){a("commit",d)}return(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-rating",onKeydown:i[1]||(i[1]=e.withKeys(m=>a("cancel"),["escape"])),tabindex:"0"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),m=>(e.openBlock(),e.createElementBlock("span",{key:m,class:e.normalizeClass(["of-field-rating__star",{filled:m<=(r.value||e.unref(c))}]),onMouseenter:f=>r.value=m,onMouseleave:i[0]||(i[0]=f=>r.value=0),onClick:e.withModifiers(f=>l(m),["stop"])},"★",42,qc))),128))],32))}}),[["__scopeId","data-v-80c63bd9"]])},Symbol.toStringTag,{value:"Module"})),jc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldUrl",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"url","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-7c8b4ad8"]])},Symbol.toStringTag,{value:"Module"})),Yc=Object.freeze(Object.defineProperty({__proto__:null,default:x(e.defineComponent({__name:"FieldEmail",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"email","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-cdd23fdc"]])},Symbol.toStringTag,{value:"Module"}));N.AddViewBtn=bt,N.AiMessageBubble=tt,N.AiMessageList=Zt,N.AiSender=jt,N.AiStreamingCursor=et,N.AiThinking=Je,N.AppLayout=Nt,N.BarChart=We,N.BlockQuote=Ot,N.Breadcrumb=en,N.BreadcrumbItem=tn,N.ButtonGroup=kt,N.CodeBlock=Lt,N.ColorPanel=vt,N.CommentItem=He,N.ContentBlock=Ue,N.ContextMenu=an,N.DEFAULT_PRIORITY_MAP=fe,N.DEFAULT_STATUS_MAP=ie,N.Dashboard=Wt,N.DataTable=xt,N.DetailLayout=Ht,N.Dialog=Yt,N.DoughnutChart=qe,N.DropdownMenu=Bt,N.EmptyState=ht,N.FieldCell=Le,N.FileUpload=Gt,N.FormDesigner=Ut,N.GalleryCard=ze,N.GalleryView=It,N.GanttRow=Pe,N.GanttTimeline=Vt,N.KanbanBoard=qt,N.KanbanCard=Ye,N.KanbanColumn=Xe,N.MermaidChart=nn,N.Modal=he,N.Navbar=Ct,N.NewRowBtn=Oe,N.NumberCard=Ze,N.OneflowUI=qn,N.PersonPanel=Kt,N.PieChart=Be,N.PropPanel=Ge,N.PropRow=Ke,N.QuickAddRow=Qe,N.RangeSlider=yt,N.RefLink=zt,N.RichTextEditor=Pt,N.Sidebar=St,N.SplitPane=on,N.StatisticCard=Et,N.StatusBar=wt,N.TabPanel=Jt,N.TableChart=je,N.TableColumnManager=Tt,N.TableDataRow=Ve,N.TableFilterPanel=Dt,N.TableHeaderRow=Ie,N.Tabs=Qt,N.ToastContainer=Xt,N.ToastItem=ot,N.ToolbarBtn=_t,N.UserMessageBubble=nt,N.ViewTab=gt,N.buildGalleryItems=Rt,N.buildKanbanColumns=Mt,N.dataRecordToTask=Fe,N.default=qn,N.mergeColorMap=J,N.resolveBadge=Q,N.taskToDataRecord=At,N.useAiChat=ci,N.useBadge=ma,N.useMarkdown=xc,N.useStream=ln,N.useTable=gi,N.useTableFilter=pi,N.useToast=ve,N.useTypewriter=rn,Object.defineProperties(N,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
13
+ </div>`},Ie.marked.use({renderer:a});function r(s){return Ie.marked.parse(s)}return{renderMarkdown:r}}const jm=[yt,kt,ht,Et,Bt,Ct,St,Nt,wt,$t,xt,Dt,Tt,Vt,Mt,Gt,Ht,qt,Wt,Zt,ze,Le,Fe,Pe,jt,Xt,Ue,_n,et,Ne,tt,tn,ve,nn,on,Ge,He,an,ln,rn,cn,dn,mn,fn,un,pn,Ye,We,Ze,gn,je,Se,Xe,Qe,Je,nt,ot,at,lt,bn,yn,Be,kn,En,hn,Bn,rt,Cn,Sn,Nn,wn,$n,xn,Ot,At,Rt,It,Dn,zt,Lt,Ft,vt,Pt,Ut,Kt],yo={install(t){jm.forEach(o=>{t.component(o.name||o.__name||"",o)})}},Xm=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldText",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"text","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-14e46c45"]])},Symbol.toStringTag,{value:"Module"})),Qm=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldNumber",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(n.value===null||n.value===void 0?"":String(n.value));e.onMounted(()=>e.nextTick(()=>{var i;return(i=r.value)==null?void 0:i.focus()}));function c(){if(s.value==="")return null;const i=Number(s.value);return Number.isNaN(i)?null:i}function l(i){const m=s.value===""?0:Number(s.value),f=Number.isNaN(m)?0:m;s.value=String(f+i)}function d(i){i.key==="ArrowUp"&&(i.preventDefault(),l(1)),i.key==="ArrowDown"&&(i.preventDefault(),l(-1)),i.key==="Enter"&&(i.preventDefault(),a("commit",c())),i.key==="Escape"&&(i.preventDefault(),a("cancel")),i.key==="Tab"&&(i.preventDefault(),a("commit",c()),a("tabNext"))}return(i,m)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"number","onUpdate:modelValue":m[0]||(m[0]=f=>s.value=f),onKeydown:d,onBlur:m[1]||(m[1]=f=>a("commit",c()))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-81dd7528"]])},Symbol.toStringTag,{value:"Module"})),Jm={class:"of-field-checkbox__icon"},ef=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldCheckbox",props:{value:{},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>!!n.value);function s(){a("commit",!r.value)}function c(l){(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),s()),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("tabNext"))}return(l,d)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-checkbox",tabindex:"0",onClick:e.withModifiers(s,["stop"]),onKeydown:c},[e.createElementVNode("span",Jm,e.toDisplayString(r.value?"☑":"☐"),1)],32))}}),[["__scopeId","data-v-e5dffacb"]])},Symbol.toStringTag,{value:"Module"})),tf={key:1,class:"of-field-select__display"},nf=["onMouseenter","onClick"],of={key:1},af=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldSelect",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),l=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.computed(()=>{const b=typeof n.value=="string"?n.value:null;return d.value.findIndex(C=>C.value===b)}),m=e.ref(0);function f(){if(!r.value)return;const b=r.value.getBoundingClientRect();c.value={top:`${b.bottom}px`,left:`${b.left}px`,width:`${Math.max(b.width,160)}px`}}function p(b){l.value=!1,a("commit",b)}function u(){l.value&&(l.value=!1,a("cancel"))}function y(b){var C,k;if(!d.value.length){b.key==="Escape"&&(b.preventDefault(),u());return}if(b.key==="ArrowDown"){b.preventDefault(),m.value=Math.min(m.value+1,d.value.length-1);return}if(b.key==="ArrowUp"){b.preventDefault(),m.value=Math.max(m.value-1,0);return}if(b.key==="Enter"){b.preventDefault(),p(((C=d.value[m.value])==null?void 0:C.value)??null);return}if(b.key==="Escape"){b.preventDefault(),u();return}b.key==="Tab"&&(b.preventDefault(),p(((k=d.value[m.value])==null?void 0:k.value)??null),a("tabNext"))}function B(b){var k,N;const C=b.target;C&&((k=r.value)!=null&&k.contains(C)||(N=s.value)!=null&&N.contains(C)||u())}e.onMounted(()=>{m.value=i.value>=0?i.value:0,e.nextTick(()=>{var b;f(),(b=r.value)==null||b.focus()}),window.addEventListener("resize",f),window.addEventListener("scroll",f,!0),window.addEventListener("mousedown",B,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",f),window.removeEventListener("scroll",f,!0),window.removeEventListener("mousedown",B,!0)}),e.watch(i,b=>{b>=0&&(m.value=b)});const h=e.computed(()=>{const b=typeof n.value=="string"?n.value:null;return d.value.find(C=>C.value===b)});return(b,C)=>{var k,N;return e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-select",tabindex:"0",onKeydown:y},[(k=h.value)!=null&&k.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:h.value.color})},e.toDisplayString(h.value.label),5)):(e.openBlock(),e.createElementBlock("span",tf,e.toDisplayString(((N=h.value)==null?void 0:N.label)??"—"),1)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:s,class:"of-field-select__dropdown",style:e.normalizeStyle(c.value)},[e.createElementVNode("div",{class:e.normalizeClass(["of-field-select__option of-field-select__option--clear",{active:m.value===-1,selected:i.value===-1}]),onClick:C[0]||(C[0]=e.withModifiers(w=>p(null),["stop"]))}," — ",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(w,V)=>(e.openBlock(),e.createElementBlock("div",{key:w.value,class:e.normalizeClass(["of-field-select__option",{active:V===m.value,selected:V===i.value}]),onMouseenter:q=>m.value=V,onClick:e.withModifiers(q=>p(w.value),["stop"])},[w.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:w.color})},e.toDisplayString(w.label),5)):(e.openBlock(),e.createElementBlock("span",of,e.toDisplayString(w.label),1))],42,nf))),128))],4)):e.createCommentVNode("",!0)]))],544)}}}),[["__scopeId","data-v-fc270aec"]])},Symbol.toStringTag,{value:"Module"})),lf={key:0,class:"of-field-multiselect__chips"},rf={key:1,class:"of-field-multiselect__placeholder"},sf=["onMouseenter","onClick"],cf=["checked"],df={key:1},mf={class:"of-field-multiselect__actions"},ff=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldMultiSelect",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),l=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.ref([]),m=e.ref(0),f=e.computed(()=>{const k=new Set(i.value);return d.value.filter(N=>k.has(N.value))});function p(){i.value=Array.isArray(n.value)?n.value.filter(k=>typeof k=="string"):[]}function u(){if(!r.value)return;const k=r.value.getBoundingClientRect();c.value={top:`${k.bottom}px`,left:`${k.left}px`,width:`${Math.max(k.width,220)}px`}}function y(k){if(i.value.indexOf(k)>=0){i.value=i.value.filter(w=>w!==k);return}i.value=[...i.value,k]}function B(){l.value=!1,a("commit",[...i.value])}function h(){l.value&&(l.value=!1,a("cancel"))}function b(k){if(k.key==="ArrowDown"){k.preventDefault(),m.value=Math.min(m.value+1,Math.max(d.value.length-1,0));return}if(k.key==="ArrowUp"){k.preventDefault(),m.value=Math.max(m.value-1,0);return}if(k.key===" "||k.key==="Enter"){k.preventDefault();const N=d.value[m.value];N&&y(N.value);return}if(k.key==="Escape"){k.preventDefault(),h();return}k.key==="Tab"&&(k.preventDefault(),B(),a("tabNext"))}function C(k){var w,V;const N=k.target;N&&((w=r.value)!=null&&w.contains(N)||(V=s.value)!=null&&V.contains(N)||B())}return e.onMounted(()=>{p(),e.nextTick(()=>{var k;u(),(k=r.value)==null||k.focus()}),window.addEventListener("resize",u),window.addEventListener("scroll",u,!0),window.addEventListener("mousedown",C,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",u),window.removeEventListener("scroll",u,!0),window.removeEventListener("mousedown",C,!0)}),e.watch(()=>n.value,()=>{p()}),(k,N)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-multiselect",tabindex:"0",onKeydown:b},[f.value.length?(e.openBlock(),e.createElementBlock("div",lf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,w=>(e.openBlock(),e.createElementBlock("span",{key:w.value,class:"of-field-multiselect__badge",style:e.normalizeStyle(w.color?{background:w.color}:void 0)},e.toDisplayString(w.label),5))),128))])):(e.openBlock(),e.createElementBlock("span",rf,"—")),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:s,class:"of-field-multiselect__dropdown",style:e.normalizeStyle(c.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(w,V)=>(e.openBlock(),e.createElementBlock("div",{key:w.value,class:e.normalizeClass(["of-field-multiselect__option",{active:V===m.value,selected:i.value.includes(w.value)}]),onMouseenter:q=>m.value=V,onClick:e.withModifiers(q=>y(w.value),["stop"])},[e.createElementVNode("input",{class:"of-field-multiselect__checkbox",type:"checkbox",tabindex:"-1",checked:i.value.includes(w.value),onChange:N[0]||(N[0]=e.withModifiers(()=>{},["prevent"]))},null,40,cf),w.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-multiselect__badge",style:e.normalizeStyle({background:w.color})},e.toDisplayString(w.label),5)):(e.openBlock(),e.createElementBlock("span",df,e.toDisplayString(w.label),1))],42,sf))),128)),e.createElementVNode("div",mf,[e.createElementVNode("button",{class:"of-field-multiselect__btn",type:"button",onClick:e.withModifiers(h,["stop"])},"取消"),e.createElementVNode("button",{class:"of-field-multiselect__btn of-field-multiselect__btn--primary",type:"button",onClick:e.withModifiers(B,["stop"])},"完成")])],4)):e.createCommentVNode("",!0)]))],544))}}),[["__scopeId","data-v-08942f77"]])},Symbol.toStringTag,{value:"Module"})),uf=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldDate",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),class:"of-field-input",type:"date",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value||null))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-3acdd712"]])},Symbol.toStringTag,{value:"Module"})),pf=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldDatetime",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),class:"of-field-input",type:"datetime-local",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value||null))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-bedfdcc6"]])},Symbol.toStringTag,{value:"Module"})),gf=["onMouseenter","onClick"],_f=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldRating",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(0),s=n.field.max??5,c=Number(n.value??0);function l(d){a("commit",d)}return(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-rating",onKeydown:i[1]||(i[1]=e.withKeys(m=>a("cancel"),["escape"])),tabindex:"0"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),m=>(e.openBlock(),e.createElementBlock("span",{key:m,class:e.normalizeClass(["of-field-rating__star",{filled:m<=(r.value||e.unref(c))}]),onMouseenter:f=>r.value=m,onMouseleave:i[0]||(i[0]=f=>r.value=0),onClick:e.withModifiers(f=>l(m),["stop"])},"★",42,gf))),128))],32))}}),[["__scopeId","data-v-ced77f03"]])},Symbol.toStringTag,{value:"Module"})),bf=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldUrl",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"url","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-7c8b4ad8"]])},Symbol.toStringTag,{value:"Module"})),yf=Object.freeze(Object.defineProperty({__proto__:null,default:D(e.defineComponent({__name:"FieldEmail",props:{value:{type:[String,Number,Boolean,Array,null]},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,r=e.ref(null),s=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=r.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",s.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",s.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"email","onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",s.value))},null,544)),[[e.vModelText,s.value]])}}),[["__scopeId","data-v-cdd23fdc"]])},Symbol.toStringTag,{value:"Module"}));E.Accordion=Vt,E.ActivityTimeline=nn,E.AddViewBtn=ht,E.AiMessageBubble=at,E.AiMessageList=bn,E.AiSender=yn,E.AiStreamingCursor=ot,E.AiThinking=nt,E.AppLayout=Gt,E.Avatar=Mt,E.Badge=Et,E.BarChart=je,E.BlockQuote=an,E.Breadcrumb=Nn,E.BreadcrumbItem=wn,E.ButtonGroup=St,E.ChainItem=Lt,E.CodeBlock=ln,E.ColorPanel=mn,E.CommentItem=Ze,E.ContentBlock=He,E.ContextMenu=Dn,E.DEFAULT_PRIORITY_MAP=fe,E.DEFAULT_STATUS_MAP=ce,E.Dashboard=gn,E.DataTable=Zt,E.DescBlock=At,E.DetailLayout=pn,E.Dialog=kn,E.DoughnutChart=Xe,E.Drawer=En,E.DropdownMenu=$t,E.EmptyState=Nt,E.FieldCell=Ue,E.FileUpload=un,E.FormDesigner=dn,E.GalleryCard=ve,E.GalleryView=tn,E.GanttRow=Ge,E.GanttTimeline=on,E.InfoCard=Ut,E.KanbanBoard=_n,E.KanbanCard=Ne,E.KanbanColumn=et,E.MermaidChart=$n,E.Modal=Be,E.MonitorItem=vt,E.Navbar=Ht,E.NewRowBtn=Pe,E.NumberCard=Qe,E.OneflowUI=yo,E.PersonPanel=fn,E.PersonaCard=Kt,E.PieChart=Se,E.ProgressBar=Ct,E.PropPanel=Ye,E.PropRow=We,E.QuickAddRow=tt,E.RangeSlider=Bt,E.RefLink=rn,E.RefTag=Ot,E.RichTextEditor=cn,E.SectionBlock=Ft,E.SelectBadge=zt,E.SidePanel=hn,E.Sidebar=qt,E.SplitPane=xn,E.StatisticCard=wt,E.StatusBar=Wt,E.StatusIndicator=xt,E.StatusSummary=Pt,E.Stepper=Tt,E.Switch=Dt,E.TabPanel=Sn,E.TableChart=Je,E.TableColumnManager=Xt,E.TableDataRow=Le,E.TableFilterPanel=jt,E.TableGroupRow=Fe,E.TableHeaderRow=ze,E.Tabs=Cn,E.ToastContainer=Bn,E.ToastItem=rt,E.ToolbarBtn=kt,E.UserMessageBubble=lt,E.ViewModeGroup=Rt,E.ViewSwitcher=It,E.ViewTab=yt,E.buildGalleryItems=en,E.buildKanbanColumns=Jt,E.dataRecordToTask=Ke,E.default=yo,E.isFormulaField=Fr,E.isSelectField=ye,E.mergeColorMap=ne,E.resolveBadge=te,E.taskToDataRecord=Qt,E.useAiChat=Td,E.useBadge=Zl,E.useMarkdown=Zm,E.useStream=Tn,E.useTable=Od,E.useTableFilter=Id,E.useToast=qe,E.useTypewriter=Vn,E.useVirtualList=Ee,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});