@oneflowui/ui 0.3.0 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{FieldCheckbox-usI8AWEq.js → FieldCheckbox-CV3QtQ4Y.js} +3 -3
- package/dist/{FieldDate-Y4p9eB4O.js → FieldDate-Bljx4jb7.js} +2 -2
- package/dist/{FieldDatetime-CQEfD87W.js → FieldDatetime-B52GfWrK.js} +8 -8
- package/dist/{FieldEmail-BVyzf_fw.js → FieldEmail-UREMoue-.js} +11 -11
- package/dist/{FieldMultiSelect-DuCL06zc.js → FieldMultiSelect-Dlay1Fop.js} +11 -11
- package/dist/{FieldNumber-CuS1g2vn.js → FieldNumber-BjhfFhs6.js} +2 -2
- package/dist/{FieldRating-DVy6dpk7.js → FieldRating-BKHUu-A1.js} +2 -2
- package/dist/{FieldSelect-Bew5uufs.js → FieldSelect-B39Ad8VH.js} +2 -2
- package/dist/{FieldText-Cvk1jnhQ.js → FieldText-Ry7f72Ug.js} +5 -5
- package/dist/{FieldUrl-CCPFbiVm.js → FieldUrl-bv0EB9sh.js} +8 -8
- package/dist/components/base/Accordion.vue.d.ts +2 -2
- package/dist/components/base/Avatar.vue.d.ts +1 -1
- package/dist/components/base/Badge.vue.d.ts +2 -2
- package/dist/components/base/ButtonGroup.vue.d.ts +1 -1
- package/dist/components/base/ChainItem.vue.d.ts +2 -2
- package/dist/components/base/DropdownMenu.vue.d.ts +4 -1
- package/dist/components/base/EmptyState.vue.d.ts +1 -1
- package/dist/components/base/InfoCard.vue.d.ts +2 -2
- package/dist/components/base/MonitorItem.vue.d.ts +1 -1
- package/dist/components/base/PersonaCard.vue.d.ts +2 -2
- package/dist/components/base/ProgressBar.vue.d.ts +2 -2
- package/dist/components/base/RangeSlider.vue.d.ts +1 -16
- package/dist/components/base/SectionBlock.vue.d.ts +6 -4
- package/dist/components/base/SelectBadge.vue.d.ts +2 -2
- package/dist/components/base/StatisticCard.vue.d.ts +1 -14
- package/dist/components/base/StatusIndicator.vue.d.ts +2 -2
- package/dist/components/base/StatusSummary.vue.d.ts +2 -2
- package/dist/components/base/Stepper.vue.d.ts +2 -2
- package/dist/components/base/Switch.vue.d.ts +1 -1
- package/dist/components/base/ToolbarBtn.vue.d.ts +1 -1
- package/dist/components/base/ViewModeGroup.vue.d.ts +1 -1
- package/dist/components/base/ViewSwitcher.vue.d.ts +2 -2
- package/dist/components/base/ViewTab.vue.d.ts +1 -1
- package/dist/components/layout/AppLayout.vue.d.ts +14 -2
- package/dist/components/overlay/Drawer.vue.d.ts +6 -2
- package/dist/components/overlay/Modal.vue.d.ts +6 -2
- package/dist/components/overlay/SidePanel.vue.d.ts +6 -2
- package/dist/components/table/DataTable.vue.d.ts +11 -1
- package/dist/components/table/FieldCell.vue.d.ts +1 -1
- package/dist/components/table/TableColumnManager.vue.d.ts +3 -1
- package/dist/components/table/TableFilterPanel.vue.d.ts +3 -1
- package/dist/composables/useTableGroup.d.ts +2 -2
- package/dist/{index-CLFMyBqX.js → index-DQph5iTq.js} +4262 -3941
- package/dist/index.d.ts +2 -2
- package/dist/oneflow-ui.js +1 -1
- package/dist/oneflow-ui.umd.cjs +10 -10
- package/dist/style.css +1 -1
- package/dist/types/index.d.ts +39 -14
- package/package.json +2 -1
package/dist/oneflow-ui.umd.cjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
(function(B,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):(B=typeof globalThis<"u"?globalThis:B||self,e(B.OneflowUI={},B.Vue,B.LucideVueNext,B.VueDraggablePlus,B.VueQuill,B.echarts,B.marked))})(this,function(B,e,A,ze,$o,xo,Le){"use strict";function yt(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 Do=yt(A),kt=yt(xo),To={class:"of-view-tab"},Vo=["onClick"],Mo={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 s=o;function r(c){s("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=>r(d.key)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a(d.icon)),{class:"of-view-tab__icon",size:14})),e.createElementVNode("span",Mo,e.toDisplayString(d.label),1)],10,Vo))),128))]))}}),w=(t,o)=>{const n=t.__vccOpts||t;for(const[a,s]of o)n[a]=s;return n},ht=w(Ao,[["__scopeId","data-v-e5920621"]]);function Ro(t){return t.split("-").map(o=>o.charAt(0).toUpperCase()+o.slice(1)).join("")+"Icon"}const Fe=new Map;function X(t){if(!t)return;if(typeof t!="string")return t;if(Fe.has(t))return Fe.get(t);const o=Ro(t),n=Do[o];return Fe.set(t,n),n}const Io={class:"of-toolbar-btn__label"},Et=w(e.defineComponent({__name:"ToolbarBtn",props:{icon:{},label:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,s=e.computed(()=>X(n.icon));function r(c){a("click",c)}return(c,l)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["of-toolbar-btn",{"of-toolbar-btn--active":t.active}]),onClick:r},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),{class:"of-toolbar-btn__icon",size:13})),e.createElementVNode("span",Io,e.toDisplayString(t.label),1)],2))}}),[["__scopeId","data-v-a849d0ee"]]),Bt=w(e.defineComponent({__name:"AddViewBtn",emits:["click"],setup(t,{emit:o}){const n=o;function a(s){n("click",s)}return(s,r)=>(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}),r[0]||(r[0]=e.createElementVNode("span",{class:"of-add-view-btn__label"},"添加视图",-1))]))}}),[["__scopeId","data-v-c05e5b5c"]]),Ct=w(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"},s=e.computed(()=>o.priority?a[o.priority]:o.color?o.color in n?o.color:"default":"gray"),r=e.computed(()=>{const c=n[s.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(r.value)},[e.renderSlot(c.$slots,"default",{},void 0,!0)],6))}}),[["__scopeId","data-v-1f109e0a"]]),Oo={class:"of-range-slider"},zo={class:"of-range-slider__label"},Lo=["value","min","max","step"],Fo={key:0,class:"of-range-slider__description"},St=w(e.defineComponent({__name:"RangeSlider",props:{label:{},modelValue:{},min:{},max:{},step:{},description:{}},emits:["update:modelValue"],setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Oo,[e.createElementVNode("label",zo,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,Lo),t.description?(e.openBlock(),e.createElementBlock("p",Fo,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-c8153b6d"]]),Po={class:"of-progress-bar"},Uo={key:0,class:"of-progress-bar__label"},vo={class:"of-progress-bar__slot"},Ko={class:"of-progress-bar__value"},Nt=w(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)"),s=e.computed(()=>({height:`${o.height}px`,backgroundColor:o.bgColor,borderRadius:`${o.borderRadius}px`})),r=e.computed(()=>({width:`${n.value}%`,background:a.value,borderRadius:`${o.borderRadius}px`}));return(c,l)=>(e.openBlock(),e.createElementBlock("div",Po,[e.createElementVNode("div",{class:"of-progress-bar__track pb",style:e.normalizeStyle(s.value)},[e.createElementVNode("div",{class:e.normalizeClass(["of-progress-bar__fill pf",{dn:n.value===100}]),style:e.normalizeStyle(r.value)},null,6)],4),t.showLabel?(e.openBlock(),e.createElementBlock("div",Uo,[e.createElementVNode("div",vo,[e.renderSlot(c.$slots,"default",{},void 0,!0)]),e.createElementVNode("span",Ko,e.toDisplayString(n.value)+"%",1)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-bf7bea30"]]),Go=["onClick"],Ho={key:0,class:"of-button-group__item-content"},Wo={key:1},wt=w(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,s)=>(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,r=>(e.openBlock(),e.createElementBlock("button",{key:r.value,onClick:c=>a.$emit("update:modelValue",r.value),class:e.normalizeClass(["of-button-group__item",t.modelValue===r.value?"of-button-group__item--active":""])},[r.icon?(e.openBlock(),e.createElementBlock("div",Ho,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(r.icon)),{class:"of-button-group__item-icon"})),e.createElementVNode("span",null,e.toDisplayString(r.label),1)])):(e.openBlock(),e.createElementBlock("div",Wo,e.toDisplayString(r.label),1))],10,Go))),128))],2))}}),[["__scopeId","data-v-268db601"]]),qo={class:"of-empty-state"},Yo={class:"of-empty-state__content"},Zo={key:0,class:"of-empty-state__icon"},jo={class:"of-empty-state__title"},Xo={key:1,class:"of-empty-state__description"},$t=w(e.defineComponent({__name:"EmptyState",props:{icon:{},title:{},description:{},action:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",qo,[e.createElementVNode("div",Yo,[t.icon?(e.openBlock(),e.createElementBlock("div",Zo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(t.icon))))])):e.createCommentVNode("",!0),e.createElementVNode("h3",jo,e.toDisplayString(t.title),1),t.description?(e.openBlock(),e.createElementBlock("p",Xo,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-511f1fb8"]]),Qo={class:"of-statistic-card"},Jo={class:"of-statistic-card__content"},ea={class:"of-statistic-card__value"},ta={class:"of-statistic-card__label"},xt=w(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 s=o.iconColor||"blue";return n[s]||n.blue});return(s,r)=>(e.openBlock(),e.createElementBlock("div",Qo,[e.createElementVNode("div",{class:"of-statistic-card__icon-container",style:e.normalizeStyle({backgroundColor:a.value.bg})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(t.icon)),{class:"of-statistic-card__icon",style:e.normalizeStyle({color:a.value.text})},null,8,["style"]))],4),e.createElementVNode("div",Jo,[e.createElementVNode("p",ea,e.toDisplayString(t.value),1),e.createElementVNode("p",ta,e.toDisplayString(t.label),1)])]))}}),[["__scopeId","data-v-1674caed"]]),na={class:"of-dropdown-menu"},oa=["aria-expanded"],aa={key:0,class:"of-dropdown-menu__content",role:"menu"},la=["onClick"],Dt=w(e.defineComponent({__name:"DropdownMenu",props:{items:{}},setup(t){const o=e.ref(!1);function n(r){r.onClick(),o.value=!1}function a(){o.value=!o.value}function s(){o.value=!1}return(r,c)=>(e.openBlock(),e.createElementBlock("div",na,[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,oa),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:s})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"of-dropdown-slide"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",aa,[(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(X)(l.icon)),{key:0,class:"of-dropdown-menu__item-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(l.label),1)],10,la))),128))])):e.createCommentVNode("",!0)]),_:1})]))}}),[["__scopeId","data-v-6c408878"]]),ra={class:"of-status-indicator__label"},Tt=w(e.defineComponent({__name:"StatusIndicator",props:{status:{},label:{default:void 0},size:{default:"md"},color:{default:void 0}},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,s=e.computed(()=>a.status.trim().toLowerCase()),r=e.computed(()=>a.label??a.status),c=e.computed(()=>a.color??o[s.value]??"var(--of-color-gray-300)"),l=e.computed(()=>n[a.size]);return(d,i)=>(e.openBlock(),e.createElementBlock("span",{class:"of-status-indicator",style:e.normalizeStyle({"--of-status-dot-color":c.value})},[e.createElementVNode("span",{class:"of-status-indicator__dot",style:e.normalizeStyle({width:l.value,height:l.value})},null,4),e.renderSlot(d.$slots,"default",{status:t.status,label:r.value,color:c.value},()=>[e.createElementVNode("span",ra,e.toDisplayString(r.value),1)],!0)],4))}}),[["__scopeId","data-v-d8fa5f17"]]),sa=["aria-checked","aria-label","disabled","onKeydown"],ca={key:0,class:"of-switch__label"},Vt=w(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,s=e.computed(()=>`of-switch--${n.size}`);function r(){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",[s.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:r,onKeydown:e.withKeys(e.withModifiers(r,["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",ca,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],42,sa))}}),[["__scopeId","data-v-82d3df10"]]),ia=["aria-current"],da={key:1},ma={class:"of-stepper__content"},fa={class:"of-stepper__label"},ua={key:0,class:"of-stepper__description"},Mt=w(e.defineComponent({__name:"Stepper",props:{steps:{},current:{},direction:{default:"horizontal"}},setup(t){const o=t,n=e.computed(()=>o.direction==="horizontal");function a(r){return r<o.current?"done":r===o.current?"active":"pending"}function s(r){return r<o.current?"done":"pending"}return(r,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",da,e.toDisplayString(d+1),1))],10,ia),e.createElementVNode("div",ma,[e.renderSlot(r.$slots,"step-content",{item:l,index:d,status:a(d)},()=>[e.createElementVNode("p",fa,e.toDisplayString(l.label),1),l.description?(e.openBlock(),e.createElementBlock("p",ua,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--${s(d)}`,n.value?"of-stepper__line--horizontal":"of-stepper__line--vertical"])},null,2)):e.createCommentVNode("",!0)],64))),128))],2))}}),[["__scopeId","data-v-2401f8a3"]]),pa={class:"of-accordion"},ga=["disabled","aria-expanded","aria-controls","onClick"],_a={class:"of-accordion__trigger-text"},ba={class:"of-accordion__title"},ya={key:0,class:"of-accordion__subtitle"},ka={class:"of-accordion__icon","aria-hidden":"true"},ha=["id"],At=w(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,s=e.computed(()=>Array.isArray(n.modelValue)?n.modelValue:typeof n.modelValue=="string"&&n.modelValue.length>0?[n.modelValue]:[]);function r(l){return s.value.includes(l)}function c(l){if(l.disabled)return;const d=r(l.key);if(n.multiple){a("update:modelValue",d?s.value.filter(i=>i!==l.key):[...s.value,l.key]);return}a("update:modelValue",d?"":l.key)}return(l,d)=>(e.openBlock(),e.createElementBlock("div",pa,[(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":r(i.key),"of-accordion__item--disabled":i.disabled}])},[e.createElementVNode("button",{type:"button",class:"of-accordion__trigger",disabled:i.disabled,"aria-expanded":r(i.key),"aria-controls":`of-accordion-panel-${i.key}`,onClick:m=>c(i)},[e.renderSlot(l.$slots,"trigger",{item:i,open:r(i.key)},()=>[e.createElementVNode("span",_a,[e.createElementVNode("span",ba,e.toDisplayString(i.title),1),i.subtitle?(e.openBlock(),e.createElementBlock("span",ya,e.toDisplayString(i.subtitle),1)):e.createCommentVNode("",!0)])],!0),e.createElementVNode("span",ka,e.toDisplayString(r(i.key)?"▲":"▼"),1)],8,ga),!t.lazy||r(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,ha)),[[e.vShow,t.lazy?!0:r(i.key)]]):e.createCommentVNode("",!0)],2))),128))]))}}),[["__scopeId","data-v-ad2d332b"]]),Rt=w(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 s(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 r=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=s(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":r.value.bg,"--one-avatar-color":r.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-96c80616"]]),Ea={class:"one-desc-block"},It=w(e.defineComponent({name:"DescBlock",__name:"DescBlock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Ea,[e.renderSlot(o.$slots,"default",{},void 0,!0)]))}}),[["__scopeId","data-v-223a53b0"]]),Ba={class:"one-view-mode-group"},Ca=["title","onClick"],Ot=w(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(s,r)=>(e.openBlock(),e.createElementBlock("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-mode-group__btn",{"one-view-mode-group__btn--active":t.modelValue===c.value}]),title:c.label,onClick:l=>s.$emit("update:modelValue",c.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(c.icon)),{class:"one-view-mode-group__icon"}))],10,Ca))),128))]))}}),[["__scopeId","data-v-19da7bc8"]]),Sa={class:"one-view-switcher"},Na={class:"one-view-switcher__tabs"},wa=["onClick"],$a={key:3,class:"one-view-switcher__search"},xa=["placeholder"],zt=w(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(s,r)=>(e.openBlock(),e.createElementBlock("div",Sa,[e.createElementVNode("div",Na,[(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=>s.$emit("update:modelValue",c.value)},[c.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(c.icon)),{key:0,class:"one-view-switcher__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(c.label),1)],10,wa))),128))]),r[4]||(r[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:r[0]||(r[0]=c=>s.$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:r[1]||(r[1]=c=>s.$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:r[2]||(r[2]=c=>s.$emit("sort"))},e.toDisplayString(t.sortLabel),1)):e.createCommentVNode("",!0),r[5]||(r[5]=e.createElementVNode("div",{class:"one-view-switcher__spacer"},null,-1)),t.showSearch?(e.openBlock(),e.createElementBlock("div",$a,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)("search")),{class:"one-view-switcher__search-icon"})),e.createElementVNode("input",{class:"one-view-switcher__search-input",placeholder:t.searchPlaceholder,onInput:r[3]||(r[3]=c=>s.$emit("search",c.target.value))},null,40,xa)])):e.createCommentVNode("",!0),e.renderSlot(s.$slots,"default",{},void 0,!0)]))}}),[["__scopeId","data-v-4d546cd8"]]),Da={class:"one-ref-tag__text"},Lt=w(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),s=e.computed(()=>{const c=n.icon??a.value.icon;return X(c)}),r=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(r.value),href:t.href??void 0,target:t.href?"_blank":void 0,rel:t.href?"noopener noreferrer":void 0},{default:e.withCtx(()=>[s.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.value),{key:0,class:"one-ref-tag__icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",Da,[e.renderSlot(c.$slots,"default",{},void 0,!0)])]),_:3},8,["style","href","target","rel"]))}}),[["__scopeId","data-v-2f5b83c0"]]),Ta={class:"one-select-badge__text"},Ft=w(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,s={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)"}},r=e.computed(()=>n.textColor?n.textColor:n.color&&s[n.color]?s[n.color].text:s.gray.text),c=e.computed(()=>n.bgColor?n.bgColor:n.color&&s[n.color]?s[n.color].bg:s.gray.bg),l=e.computed(()=>n.borderColor?n.borderColor:n.color&&s[n.color]?s[n.color].border:s.gray.border),d=e.computed(()=>({"--one-sb-text":r.value,"--one-sb-bg":c.value,"--one-sb-border":l.value})),i=e.computed(()=>({backgroundColor:n.dotColor||r.value})),m=X("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",Ta,[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-242ac85a"]]),Va={class:"one-chain-item__header"},Ma={key:0,class:"one-chain-item__duration"},Pt=w(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"]),s=e.computed(()=>o.color||a.value.color),r=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:r.value,borderColor:c.value})),m=e.computed(()=>({backgroundColor:a.value.avatarBg,color:s.value}));return(f,p)=>(e.openBlock(),e.createElementBlock("div",{class:"one-chain-item",style:e.normalizeStyle(i.value)},[e.createElementVNode("div",Va,[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:s.value})},e.toDisplayString(t.title),5),t.duration?(e.openBlock(),e.createElementBlock("span",Ma,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-3c67aead"]]),Aa={class:"of-section-block__header-left"},Ra={key:0,class:"of-section-block__icon","aria-hidden":"true"},Ia={class:"of-section-block__title"},Oa=["aria-expanded","aria-label"],za={class:"of-section-block__body"},Ut=w(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,s={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)"}},r={pending:"待处理",updating:"更新中",done:"已完成",editing:"编辑中"},c=e.computed(()=>n.status?s[n.status]??null:null),l=e.computed(()=>{var b;return n.status?((b=n.statusLabels)==null?void 0:b[n.status])??r[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 _(){a("save")}return(b,E)=>(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",Aa,[t.icon?(e.openBlock(),e.createElementBlock("span",Ra,e.toDisplayString(t.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Ia,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:E[0]||(E[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:_}," 保存 ")):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,Oa)])]),e.createElementVNode("div",{class:e.normalizeClass(["of-section-block__body-wrapper",{"of-section-block__body-wrapper--collapsed":t.collapsed}])},[e.createElementVNode("div",za,[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-1d36e8cd"]]),La={key:0,class:"of-status-summary__sep","aria-hidden":"true"},Fa={class:"of-status-summary__item"},Pa={key:0,class:"of-status-summary__extra"},vt=w(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 s(c){return c.color??"var(--of-color-gray-300)"}function r(c){return c.highlight?s(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",La)):e.createCommentVNode("",!0),e.createElementVNode("span",Fa,[e.createElementVNode("span",{class:"of-status-summary__dot",style:e.normalizeStyle({width:n.value,height:n.value,backgroundColor:s(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:r(d),fontWeight:d.highlight?"700":"600"})},e.toDisplayString(d.count),5)])],64))),128)),c.$slots.extra?(e.openBlock(),e.createElementBlock("span",Pa,[e.renderSlot(c.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-5622ed06"]]),Ua={key:0,class:"of-info-card__icon-area"},va={class:"of-info-card__body"},Ka={class:"of-info-card__title"},Ga={class:"of-info-card__footer"},Ha={key:1,class:"of-info-card__meta-text"},Wa={key:2,class:"of-info-card__meta-text"},qa={class:"of-info-card__body"},Ya={class:"of-info-card__title"},Za={key:1,class:"of-info-card__notify-meta"},ja={key:0,class:"of-info-card__actions"},Xa={key:0,class:"of-info-card__icon-area"},Qa={class:"of-info-card__body"},Ja={class:"of-info-card__title"},el={key:0,class:"of-info-card__subtitle"},tl={key:1,class:"of-info-card__actions"},Kt=w(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=>({f509db18:m.unread?"var(--of-color-warning-light)":"var(--of-color-bg-elevated)"}));const n=t,a=o,s={模板:"var(--of-color-primary-500)",template:"var(--of-color-primary-500)",会话:"var(--of-color-success)",session:"var(--of-color-success)"},r=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&&s[n.type]?s[n.type]:n.borderColor??"var(--of-color-primary-500)":"transparent"),c=e.computed(()=>{const m={"--of-ic-border":r.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",Ua,[e.renderSlot(m.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",va,[e.createElementVNode("div",Ka,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",Ga,[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",Ha,e.toDisplayString(t.author),1)):e.createCommentVNode("",!0),t.date?(e.openBlock(),e.createElementBlock("span",Wa,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",qa,[e.createElementVNode("div",Ya,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",Za,e.toDisplayString(t.meta),1)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"footer",{},void 0,!0)]),m.$slots.actions?(e.openBlock(),e.createElementBlock("div",ja,[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",Xa,[e.renderSlot(m.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Qa,[e.createElementVNode("div",Ja,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("div",el,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",tl,[e.renderSlot(m.$slots,"actions",{},void 0,!0)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-9adc886b"]]),nl={key:0,class:"of-monitor-item__subtitle"},ol={class:"of-monitor-item__label"},al={class:"of-monitor-item__progress"},ll={class:"of-monitor-item__percentage"},rl={key:1,class:"of-monitor-item__count"},Gt=w(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,s=e.computed(()=>Math.min(100,Math.max(0,n.value))),r=e.computed(()=>s.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:`${s.value}%`,background:r.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",nl,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0),e.createElementVNode("div",ol,e.toDisplayString(t.label),1),e.createElementVNode("div",al,[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",ll,e.toDisplayString(s.value)+"% ",1),t.count!==void 0?(e.openBlock(),e.createElementBlock("div",rl,e.toDisplayString(t.count),1)):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-ebd44412"]]),sl={class:"of-persona-card__body"},cl={class:"of-persona-card__name-row"},il={key:0,class:"of-persona-card__title-badge"},dl={key:1,class:"of-persona-card__tags"},ml={class:"of-persona-card__right"},fl={key:0,class:"of-persona-card__done-mark"},ul={class:"of-persona-card__chevron"},pl={key:0,class:"of-persona-card__detail"},Ht=w(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,s=[{accent:"var(--of-color-warning)",bg:"var(--of-color-warning-light)",border:"var(--of-badge-orange-border)",tagBg:"var(--of-badge-orange-bg)"},{accent:"var(--of-color-primary-500)",bg:"var(--of-color-primary-50)",border:"var(--of-color-primary-200)",tagBg:"var(--of-color-primary-100)"},{accent:"var(--of-role-pm-text)",bg:"var(--of-role-pm-bg)",border:"var(--of-badge-red-border)",tagBg:"var(--of-badge-red-bg)"},{accent:"var(--of-color-success)",bg:"var(--of-color-success-light)",border:"var(--of-badge-green-border)",tagBg:"var(--of-badge-green-bg)"},{accent:"var(--of-color-info)",bg:"var(--of-color-info-light)",border:"var(--of-badge-blue-border)",tagBg:"var(--of-badge-blue-bg)"},{accent:"var(--of-role-arch-text)",bg:"var(--of-role-arch-bg)",border:"var(--of-badge-purple-border)",tagBg:"var(--of-badge-purple-bg)"},{accent:"var(--of-color-error)",bg:"var(--of-color-error-light)",border:"var(--of-badge-red-border)",tagBg:"var(--of-badge-red-bg)"},{accent:"var(--of-role-fe-text)",bg:"var(--of-role-fe-bg)",border:"var(--of-badge-green-border)",tagBg:"var(--of-badge-green-bg)"}];function r(E){let y=0;for(let x=0;x<E.length;x++)y=(y<<5)-y+E.charCodeAt(x),y|=0;return Math.abs(y)}const c=e.computed(()=>{if(n.color){const E=n.color.replace("#","");return{accent:n.color,bg:`#${E}24`,border:`#${E}52`,tagBg:`#${E}1a`}}return s[r(n.name)%s.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 E=n.name.trim();return E?E.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.accent,"--pc-accent-bg":c.value.bg,"--pc-accent-border":c.value.border,"--pc-accent-tag-bg":c.value.tagBg})),_=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(E,y)=>(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(_.value)},e.toDisplayString(f.value),5),e.createElementVNode("div",sl,[e.createElementVNode("div",cl,[e.createElementVNode("span",{class:"of-persona-card__name",style:e.normalizeStyle({fontSize:`${i.value}px`})},e.toDisplayString(t.name),5),e.renderSlot(E.$slots,"badge",{},void 0,!0),t.title?(e.openBlock(),e.createElementBlock("span",il,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",dl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tags,x=>(e.openBlock(),e.createElementBlock("span",{key:x,class:"of-persona-card__tag"},e.toDisplayString(x),1))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",ml,[e.renderSlot(E.$slots,"actions",{},void 0,!0),t.done?(e.openBlock(),e.createElementBlock("span",fl,"✓")):e.createCommentVNode("",!0),e.createElementVNode("span",ul,e.toDisplayString(t.expanded?"▲":"▼"),1)])]),t.expanded?(e.openBlock(),e.createElementBlock("div",pl,[e.renderSlot(E.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)],6))}}),[["__scopeId","data-v-19ca1e67"]]);function gl(){const t=e.ref(!1),o=e.ref(!1);function n(){const a=window.innerWidth;t.value=a<768,o.value=a>=768&&a<1024}return e.onMounted(()=>{n(),window.addEventListener("resize",n,{passive:!0})}),e.onUnmounted(()=>{window.removeEventListener("resize",n)}),{isMobile:t,isTablet:o,isDesktop:e.ref(!0)}}const _l={class:"of-app-layout"},bl={class:"of-app-layout__navbar"},yl={class:"of-app-layout__body"},kl={key:0,class:"of-app-layout__sidebar"},hl={class:"of-app-layout__main"},El={class:"of-app-layout__statusbar"},Wt=w(e.defineComponent({__name:"AppLayout",setup(t){const{isMobile:o,isTablet:n}=gl();return e.provide("isMobile",o),e.provide("isTablet",n),(a,s)=>(e.openBlock(),e.createElementBlock("div",_l,[e.createElementVNode("header",bl,[e.renderSlot(a.$slots,"navbar",{},void 0,!0)]),e.createElementVNode("div",yl,[e.unref(o)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("aside",kl,[e.renderSlot(a.$slots,"sidebar",{},void 0,!0)])),e.createElementVNode("main",hl,[e.renderSlot(a.$slots,"default",{},void 0,!0)])]),e.createElementVNode("footer",El,[e.renderSlot(a.$slots,"statusbar",{},void 0,!0)])]))}}),[["__scopeId","data-v-5b703613"]]),Bl={class:"of-navbar"},Cl={class:"of-navbar__left"},Sl={class:"of-navbar__center"},Nl={class:"of-navbar__search"},wl=["placeholder"],$l={class:"of-navbar__right"},xl={key:0,class:"of-navbar__notify-badge"},qt=w(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,s=e.computed(()=>n.username?n.username.charAt(0).toUpperCase():"U");function r(d){a("search",d.target.value)}function c(){a("notify-click")}function l(){a("avatar-click")}return(d,i)=>(e.openBlock(),e.createElementBlock("nav",Bl,[e.createElementVNode("div",Cl,[e.renderSlot(d.$slots,"logo",{},()=>[i[0]||(i[0]=e.createElementVNode("span",{class:"of-navbar__logo-default"},"OneFlow",-1))],!0)]),e.createElementVNode("div",Sl,[e.createElementVNode("div",Nl,[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:r},null,40,wl)])]),e.createElementVNode("div",$l,[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",xl,e.toDisplayString(t.notifyCount>99?"99+":t.notifyCount),1)):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"of-navbar__avatar",onClick:l},e.toDisplayString(s.value),1)])]))}}),[["__scopeId","data-v-b0de3bfd"]]),Dl={class:"of-sidebar"},Tl={key:0,class:"of-sidebar__header"},Vl={class:"of-sidebar__nav"},Ml=["onClick"],Al={class:"of-sidebar__item-label"},Rl={key:1,class:"of-sidebar__item-badge"},Il={key:0,class:"of-sidebar__children"},Ol=["onClick"],zl={class:"of-sidebar__item-label"},Ll={key:1,class:"of-sidebar__item-badge"},Fl={key:1,class:"of-sidebar__footer"},Yt=w(e.defineComponent({__name:"Sidebar",props:{items:{}},emits:["item-click"],setup(t,{emit:o}){const n=o,a=e.ref(new Set);function s(l){a.value.has(l.id)?a.value.delete(l.id):a.value.add(l.id)}function r(l){l.children&&l.children.length>0&&s(l),n("item-click",l)}function c(l){return a.value.has(l.id)}return(l,d)=>(e.openBlock(),e.createElementBlock("div",Dl,[l.$slots.header?(e.openBlock(),e.createElementBlock("div",Tl,[e.renderSlot(l.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",Vl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,i=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i.id},[e.createElementVNode("button",{class:e.normalizeClass(["of-sidebar__item",{"of-sidebar__item--active":i.active}]),onClick:m=>r(i)},[i.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(i.icon)),{key:0,class:"of-sidebar__item-icon",size:15})):e.createCommentVNode("",!0),e.createElementVNode("span",Al,e.toDisplayString(i.label),1),i.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Rl,e.toDisplayString(i.badge),1)):e.createCommentVNode("",!0),i.children&&i.children.length>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c(i)?e.unref(A.ChevronDownIcon):e.unref(A.ChevronRightIcon)),{key:2,class:"of-sidebar__item-chevron",size:13})):e.createCommentVNode("",!0)],10,Ml),i.children&&i.children.length>0&&c(i)?(e.openBlock(),e.createElementBlock("div",Il,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.children,m=>(e.openBlock(),e.createElementBlock("button",{key:m.id,class:e.normalizeClass(["of-sidebar__item of-sidebar__item--child",{"of-sidebar__item--active":m.active}]),onClick:f=>n("item-click",m)},[m.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(m.icon)),{key:0,class:"of-sidebar__item-icon",size:14})):e.createCommentVNode("",!0),e.createElementVNode("span",zl,e.toDisplayString(m.label),1),m.badge!==void 0?(e.openBlock(),e.createElementBlock("span",Ll,e.toDisplayString(m.badge),1)):e.createCommentVNode("",!0)],10,Ol))),128))])):e.createCommentVNode("",!0)],64))),128))]),l.$slots.footer?(e.openBlock(),e.createElementBlock("div",Fl,[e.renderSlot(l.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-492c0d6a"]]),Pl={class:"of-statusbar"},Ul={class:"of-statusbar__left"},vl={class:"of-statusbar__sync-text"},Kl={class:"of-statusbar__right"},Gl={key:0,class:"of-statusbar__shortcuts"},Hl={class:"of-statusbar__version"},Zt=w(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",Pl,[e.createElementVNode("div",Ul,[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",vl,e.toDisplayString(t.synced?"所有更改已同步":"同步中..."),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"of-statusbar__spacer"},null,-1)),e.createElementVNode("div",Kl,[t.shortcuts?(e.openBlock(),e.createElementBlock("span",Gl,e.toDisplayString(t.shortcuts),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Hl,e.toDisplayString(t.version),1)])]))}}),[["__scopeId","data-v-06dfdfe7"]]),Wl={class:"of-table-header"},ql={key:0,class:"of-th of-th-checkbox"},Yl=["checked","indeterminate"],Zl=["onClick"],jl={class:"of-th-label"},Xl={class:"of-th-sort-icon"},Pe=w(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=o;function a(r){if(r.width==="fill"){const c=`${r.minWidth??220}px`;return{flex:`1 1 ${c}`,minWidth:c}}return{width:`${r.width}px`,flexShrink:"0",flexGrow:"0"}}function s(r){n("sort",r)}return(r,c)=>(e.openBlock(),e.createElementBlock("div",Wl,[t.selectable?(e.openBlock(),e.createElementBlock("div",ql,[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.allSelected,indeterminate:t.indeterminate,onChange:c[0]||(c[0]=l=>n("select-all"))},null,40,Yl)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,l=>(e.openBlock(),e.createElementBlock("div",{key:l.key,class:e.normalizeClass(["of-th",{"of-th--sortable":!0,"of-th--active":t.sortKey===l.key}]),style:e.normalizeStyle(a(l)),onClick:d=>s(l.key)},[e.createElementVNode("span",jl,e.toDisplayString(l.label),1),e.createElementVNode("span",Xl,[t.sortKey===l.key&&t.sortOrder==="asc"?(e.openBlock(),e.createBlock(e.unref(A.ChevronUp),{key:0,size:12,class:"of-sort-icon-active"})):t.sortKey===l.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,Zl))),128))]))}}),[["__scopeId","data-v-38e76ef4"]]),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:"已完成"}},Ql={text:"var(--of-badge-gray-text)",bg:"var(--of-badge-gray-bg)"};function ee(t,o){const n=o[t]??Ql;return{style:{color:n.text,background:n.bg},label:n.label??t,dot:n.dot}}function te(t,o){return o?{...t,...o}:t}function Jl(){return{DEFAULT_PRIORITY_MAP:fe,DEFAULT_STATUS_MAP:ce,resolveBadge:ee,mergeColorMap:te}}const er=["checked"],tr={key:0,class:"of-badge of-badge--role"},nr={key:1,class:"of-td-empty"},or={key:3,class:"of-td-text"},ar={key:4,class:"of-td-id"},lr={key:5,class:"of-td-title"},rr={key:6,class:"of-td-text"},Ee=w(e.defineComponent({__name:"TableDataRow",props:{row:{},rowKey:{default:"id"},selected:{type:Boolean,default:!1},selectable:{type:Boolean,default:!0},columns:{},priorityColorMap:{},statusColorMap:{}},emits:["select","click"],setup(t,{emit:o}){const n=t,a=o;function s(_){if(_.width==="fill"){const b=`${_.minWidth??220}px`;return{flex:`1 1 ${b}`,minWidth:b}}return{width:`${_.width}px`,flexShrink:"0",flexGrow:"0"}}const r=e.computed(()=>te(fe,n.priorityColorMap)),c=e.computed(()=>te(ce,n.statusColorMap));function l(_){return ee(_,r.value)}function d(_){return ee(_,c.value)}function i(_){if(!_)return"-";const b=new Date(_);return isNaN(b.getTime())?_:`${b.getMonth()+1}/${b.getDate()}`}function m(_){return n.row[_.key]}function f(_){const b=m(_);return b!=null?String(b):"-"}function p(_){const b=m(_);return typeof b=="string"?b:""}function u(){const _=n.row[n.rowKey];return _!=null?String(_):""}return(_,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-table-row",{"of-table-row--selected":t.selected}]),onClick:b[2]||(b[2]=E=>a("click",t.row))},[t.selectable?(e.openBlock(),e.createElementBlock("div",{key:0,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]=E=>a("select",u()))},null,40,er)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,E=>(e.openBlock(),e.createElementBlock("div",{key:E.key,class:"of-td",style:e.normalizeStyle(s(E))},[e.renderSlot(_.$slots,"cell",{row:t.row,col:E},()=>[E.key==="status"?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-badge",style:e.normalizeStyle(d(p(E)).style)},e.toDisplayString(d(p(E)).label),5)):E.key==="priority"?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-badge",style:e.normalizeStyle(l(p(E)).style)},e.toDisplayString(l(p(E)).label),5)):E.key==="role"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[p(E)?(e.openBlock(),e.createElementBlock("span",tr,e.toDisplayString(p(E)),1)):(e.openBlock(),e.createElementBlock("span",nr,"-"))],64)):E.key==="updatedAt"?(e.openBlock(),e.createElementBlock("span",or,e.toDisplayString(i(p(E))),1)):E.key==="id"?(e.openBlock(),e.createElementBlock("span",ar,e.toDisplayString(u()),1)):E.key==="title"?(e.openBlock(),e.createElementBlock("span",lr,e.toDisplayString(f(E)),1)):(e.openBlock(),e.createElementBlock("span",rr,e.toDisplayString(f(E)),1))],!0)],4))),128))],2))}}),[["__scopeId","data-v-94af07f7"]]),sr={key:0,class:"of-table-group-row__checkbox-spacer"},cr={key:2,class:"of-table-group-row__label"},ir={class:"of-table-group-row__count"},Be=w(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,s=e.computed(()=>n.colorMap?ee(n.groupKey,n.colorMap):null),r=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",sr)):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["of-table-group-row__chevron",{"of-table-group-row__chevron--collapsed":t.collapsed}])},"▼",2),s.value?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-table-group-row__badge",style:e.normalizeStyle(s.value.style)},[s.value.dot?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-table-group-row__badge-dot",style:e.normalizeStyle({background:s.value.dot})},null,4)):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(s.value.label),1)],4)):(e.openBlock(),e.createElementBlock("span",cr,e.toDisplayString(r.value),1)),e.createElementVNode("span",ir,"("+e.toDisplayString(t.count)+")",1)]))}}),[["__scopeId","data-v-f1df1d4b"]]),Ue=w(e.defineComponent({__name:"NewRowBtn",emits:["click"],setup(t,{emit:o}){const n=o;return(a,s)=>(e.openBlock(),e.createElementBlock("button",{class:"of-new-row-btn",onClick:s[0]||(s[0]=r=>n("click"))},[e.createVNode(e.unref(A.Plus),{size:14,class:"of-new-row-icon"}),s[1]||(s[1]=e.createElementVNode("span",{class:"of-new-row-label"},"新建任务",-1))]))}}),[["__scopeId","data-v-612639d1"]]),re=e.ref(null);function ve(){function t(s,r){re.value={rowId:s,fieldId:r}}function o(s,r,c){var l,d;return((l=re.value)==null?void 0:l.rowId)===s&&((d=re.value)==null?void 0:d.fieldId)===r&&(re.value=null),c}function n(){re.value=null}function a(s,r){var c,l;return((c=re.value)==null?void 0:c.rowId)===s&&((l=re.value)==null?void 0:l.fieldId)===r}return{editingCell:e.readonly(re),activate:t,commit:o,cancel:n,isEditing:a}}const dr={key:1,class:"of-field-cell__display"},Ce=w(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:s,activate:r,commit:c,cancel:l}=ve(),d=e.computed(()=>s(n.rowId,n.field.id)),i=e.computed(()=>n.readonly||n.field.readonly);function m(){i.value||r(n.rowId,n.field.id)}function f(y){c(n.rowId,n.field.id,y),a("commit",n.rowId,n.field.id,y)}function p(){l(),a("cancel")}function u(){a("tabNext")}const _={text:e.defineAsyncComponent(()=>Promise.resolve().then(()=>sf)),number:e.defineAsyncComponent(()=>Promise.resolve().then(()=>cf)),checkbox:e.defineAsyncComponent(()=>Promise.resolve().then(()=>mf)),select:e.defineAsyncComponent(()=>Promise.resolve().then(()=>gf)),multiselect:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Bf)),date:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Cf)),datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Sf)),rating:e.defineAsyncComponent(()=>Promise.resolve().then(()=>wf)),url:e.defineAsyncComponent(()=>Promise.resolve().then(()=>$f)),email:e.defineAsyncComponent(()=>Promise.resolve().then(()=>xf))},b=e.computed(()=>_[n.field.type]),E=e.computed(()=>{const y=n.value;return y==null||y===""?"—":Array.isArray(y)?y.join(", "):typeof y=="boolean"?y?"✓":"—":String(y)});return(y,x)=>(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(()=>[...x[0]||(x[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",dr,e.toDisplayString(E.value),1))],2))}}),[["__scopeId","data-v-67b78f97"]]);function Se({items:t,itemHeight:o,overscan:n=5,containerRef:a}){const s=e.ref(0),r=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 g=new Array(t.value.length+1).fill(0),N=o;for(let D=0;D<t.value.length;D+=1)g[D+1]=g[D]+Math.max(0,N(D));return g}),f=e.computed(()=>c?t.value.length*o:m.value[t.value.length]??0);function p(g){const N=Math.max(0,Math.min(g,t.value.length));return c?N*o:m.value[N]??0}function u(g){if(t.value.length===0)return 0;if(c){const U=o;return Math.max(0,Math.min(t.value.length-1,Math.floor(Math.max(0,g)/U)))}const N=m.value;let D=0,I=t.value.length;for(;D<I;){const U=Math.floor((D+I)/2);N[U+1]<=g?D=U+1:I=U}return Math.max(0,Math.min(D,t.value.length-1))}const _=e.computed(()=>{const g=t.value.length;if(g===0)return{start:0,end:0};if(r.value<=0)return{start:0,end:Math.min(g,l*2+1)};if(c){const v=o,P=Math.floor(s.value/v),Q=Math.ceil(r.value/v),k=Math.max(0,P-l),T=Math.min(g,P+Q+l);return{start:k,end:T}}const N=Math.max(0,s.value),D=N+r.value,I=u(N),U=Math.min(g-1,u(D));return{start:Math.max(0,I-l),end:Math.min(g,U+l+1)}}),b=e.computed(()=>p(_.value.start)),E=e.computed(()=>{const{start:g,end:N}=_.value;return t.value.slice(g,N).map((D,I)=>({data:D,index:g+I}))});function y(g){if(!g){s.value=0,r.value=0;return}s.value=g.scrollTop,r.value=g.clientHeight}function x(){i&&(s.value=i.scrollTop)}function h(){d==null||d.disconnect(),d=null}function C(g){g&&g.removeEventListener("scroll",x)}function S(g){if(!g){i=null,y(null);return}i=g,g.addEventListener("scroll",x,{passive:!0}),y(g),typeof ResizeObserver<"u"&&(d=new ResizeObserver(()=>{y(g)}),d.observe(g))}e.watch(a,(g,N)=>{C(N),h(),S(g)},{immediate:!0}),e.watch(t,()=>{const g=Math.max(0,f.value-r.value);s.value>g&&(s.value=g,i&&(i.scrollTop=g))});function V(g){if(!i||t.value.length===0)return;const N=Math.max(0,Math.min(g,t.value.length-1)),D=p(N);i.scrollTop=D,s.value=D}function G(){if(!i)return;const g=Math.max(0,f.value-i.clientHeight);i.scrollTop=g,s.value=g}return e.onUnmounted(()=>{C(i),h(),i=null}),{visibleItems:E,totalHeight:f,offsetY:b,scrollToIndex:V,scrollToBottom:G}}let jt=!1;function Xt(t={}){const o=e.shallowRef(t.data??[]),n=e.ref(!1),a=e.ref(null),s=e.ref(new Set),r=e.ref({field:null,order:null}),c=e.ref({page:1,pageSize:t.pageSize??20,total:(t.data??[]).length});function l(g){r.value.field===g?(r.value.order=r.value.order==="asc"?"desc":r.value.order==="desc"?null:"asc",r.value.order===null&&(r.value.field=null)):(r.value.field=g,r.value.order="asc"),c.value.page=1,s.value.clear(),t.serverSide&&S()}function d(g,N){r.value={field:g,order:N},c.value.page=1,s.value.clear(),t.serverSide&&S()}function i(g){if(!r.value.field||!r.value.order)return g;const N=r.value.field,D=r.value.order;return[...g].sort((I,U)=>{const v=I[N],P=U[N];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 D==="asc"?v-P:P-v;const Q=String(v),k=String(P);return D==="asc"?Q.localeCompare(k):k.localeCompare(Q)})}function m(g){c.value.page=Math.max(1,Math.min(g,p.value)),t.serverSide&&S()}function f(g){c.value.pageSize=g,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 g=i(o.value);c.value.total=g.length;const{page:N,pageSize:D}=c.value;return g.slice((N-1)*D,N*D)});function _(g,N){const D=g.id;return D==null&&!jt&&(jt=!0,console.warn("[OneUI] DataTable: row is missing an `id` field. Row selection may behave incorrectly after sorting or filtering. Please ensure each row has a unique `id` property.")),D??N}function b(g,N){const D=_(g,N);s.value.has(D)?s.value.delete(D):s.value.add(D)}function E(g){s.value.size===g.length?s.value.clear():g.forEach((N,D)=>s.value.add(_(N,D)))}function y(g,N){return s.value.has(_(g,N))}function x(){s.value.clear()}const h=e.computed(()=>s.value.size),C=e.computed(()=>u.value.length>0&&s.value.size===u.value.length);async function S(){if(t.onFetch){n.value=!0,a.value=null;try{const g=await t.onFetch({page:c.value.page,pageSize:c.value.pageSize,sort:r.value});o.value=g.data,e.triggerRef(o),c.value.total=g.total}catch(g){a.value=g}finally{n.value=!1}}}function V(){t.serverSide?S():c.value.page=1}function G(g){o.value=g,e.triggerRef(o),c.value.page=1,t.serverSide||(c.value.total=g.length)}return{data:u,rawData:e.readonly(o),loading:e.readonly(n),error:e.readonly(a),sort:e.readonly(r),pagination:e.readonly(c),totalPages:p,selectedRows:e.readonly(s),selectedCount:h,isAllSelected:C,toggleSort:l,setSort:d,setPage:m,setPageSize:f,toggleRowSelection:b,toggleSelectAll:E,isRowSelected:y,clearSelection:x,refresh:V,fetchData:S,setData:G}}function mr(t){const o=e.ref(new Set);function n(r){const c=new Set(o.value);c.has(r)?c.delete(r):c.add(r),o.value=c}e.watch(t.groupBy,()=>{o.value=new Set});const a=e.computed(()=>{const r=t.data.value,c=t.groupBy.value;if(!c)return r.map(f=>({...f,__type:"data-row"}));const l=[],d=new Map;for(const f of r){const p=f[c],u=p!=null?String(p):"";d.has(u)||(l.push(u),d.set(u,[])),d.get(u).push(f)}const i=[],m=o.value;for(const f of l){const p=d.get(f);if(i.push({__type:"group-header",__groupKey:f,__groupCount:p.length,id:`__group__${f}`}),!m.has(f))for(const u of p)i.push({...u,__type:"data-row"})}return i});function s(r){return r&&r.__type==="group-header"}return{groupedItems:a,collapsedGroups:o,toggleGroup:n,isGroupHeader:s}}function fr(t){return{rows:e.computed(()=>{var n,a,s;return(a=(n=t.records)==null?void 0:n.value)!=null&&a.length?t.records.value.map(r=>({id:r.id,...r.fields,createdAt:r.createdAt,updatedAt:r.updatedAt,__record:r})):((s=t.tasks)==null?void 0:s.value)??[]})}}const ur=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",minWidth:220,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"}];function pr(t){return t.type==="number"||t.type==="date"?t.type:t.type==="select"?"status":"string"}function gr(t){return{key:t.id,label:t.name,width:t.width,type:pr(t)}}function _r(t){return{columns:e.computed(()=>{var n,a,s,r,c,l,d,i;return(a=(n=t.columns)==null?void 0:n.value)!=null&&a.length?t.columns.value:(c=(r=(s=t.schema)==null?void 0:s.value)==null?void 0:r.fields)!=null&&c.length?((i=(d=(l=t.view)==null?void 0:l.value)==null?void 0:d.visibleFields)!=null&&i.length?t.schema.value.fields.filter(f=>t.view.value.visibleFields.includes(f.id)):t.schema.value.fields).filter(f=>!f.hidden).map(gr):ur})}}const br={class:"of-data-table"},yr=100,kr=36,hr=44,Qt=w(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:{},virtual:{type:Boolean}},emits:["row-click","row-click-record","add-row","selection-change","cell-edit"],setup(t,{emit:o}){const n=t,a=o,{commit:s}=ve(),{rows:r}=fr({tasks:e.toRef(n,"tasks"),records:e.toRef(n,"records")}),{columns:c}=_r({columns:e.toRef(n,"columns"),schema:e.toRef(n,"schema"),view:e.toRef(n,"view")}),{data:l,sort:d,toggleSort:i,selectedRows:m,toggleSelectAll:f,toggleRowSelection:p,isAllSelected:u,setData:_}=Xt({data:r.value,pageSize:999999});e.watch(r,k=>{_(k)},{deep:!1});const{groupedItems:b,collapsedGroups:E,toggleGroup:y,isGroupHeader:x}=mr({data:l,groupBy:e.toRef(n,"groupBy")}),h=e.ref(null),C=e.computed(()=>n.virtual!==void 0?n.virtual:b.value.length>yr),{visibleItems:S,totalHeight:V,offsetY:G}=Se({items:b,itemHeight:k=>{const T=b.value[k];return x(T)?kr:hr},overscan:5,containerRef:h}),g=e.computed(()=>Array.from(m.value)),N=e.computed(()=>m.value.size>0&&!u.value);function D(){f(l.value)}function I(k){const T=l.value.find($=>$[n.rowKey]===k);T&&p(T,0)}e.watch(g,k=>{a("selection-change",k)},{immediate:!1});function U(k){const T=k[n.rowKey];return T!=null?String(T):""}function v(k){var T;return((T=n.fieldDefs)==null?void 0:T.find($=>$.id===k))??{id:k,type:"text",label:k}}function P(k,T,$){s(k,T,$),a("cell-edit",{rowId:k,fieldId:T,value:$})}function Q(k){const T=k;if(T.__record){a("row-click-record",T.__record),a("row-click",T.__record);return}a("row-click",k)}return(k,T)=>(e.openBlock(),e.createElementBlock("div",br,[e.createVNode(Pe,{columns:e.unref(c),selectable:t.selectable,"sort-key":e.unref(d).field??"","sort-order":e.unref(d).order??"asc","all-selected":e.unref(u),indeterminate:N.value,onSort:e.unref(i),onSelectAll:D},null,8,["columns","selectable","sort-key","sort-order","all-selected","indeterminate","onSort"]),e.createElementVNode("div",{ref_key:"scrollContainerRef",ref:h,class:"of-data-table-scroll-container"},[C.value?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle({height:e.unref(V)+"px",position:"relative"})},[e.createElementVNode("div",{style:e.normalizeStyle({transform:`translateY(${e.unref(G)}px)`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(S),({data:$})=>{var O;return e.openBlock(),e.createElementBlock(e.Fragment,{key:$.id},[e.unref(x)($)?(e.openBlock(),e.createBlock(Be,{key:0,"group-key":$.__groupKey,count:$.__groupCount,collapsed:e.unref(E).has($.__groupKey),"color-map":t.groupColorMap,selectable:t.selectable,onToggle:L=>e.unref(y)($.__groupKey)},null,8,["group-key","count","collapsed","color-map","selectable","onToggle"])):(e.openBlock(),e.createBlock(Ee,{key:1,row:$,"row-key":t.rowKey,selected:e.unref(m).has(U($)),selectable:t.selectable,columns:e.unref(c),"priority-color-map":t.priorityColorMap,"status-color-map":t.statusColorMap,onSelect:I,onClick:L=>Q($)},e.createSlots({_:2},[(O=t.fieldDefs)!=null&&O.length?{name:"cell",fn:e.withCtx(({row:L,col:W})=>[e.createVNode(Ce,{"row-id":U(L),field:v(W.key),value:L[W.key],onCommit:P},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1032,["row","row-key","selected","selectable","columns","priority-color-map","status-color-map","onClick"]))],64)}),128))],4)],4)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(b),$=>{var O;return e.openBlock(),e.createElementBlock(e.Fragment,{key:$.id},[e.unref(x)($)?(e.openBlock(),e.createBlock(Be,{key:0,"group-key":$.__groupKey,count:$.__groupCount,collapsed:e.unref(E).has($.__groupKey),"color-map":t.groupColorMap,selectable:t.selectable,onToggle:L=>e.unref(y)($.__groupKey)},null,8,["group-key","count","collapsed","color-map","selectable","onToggle"])):(e.openBlock(),e.createBlock(Ee,{key:1,row:$,"row-key":t.rowKey,selected:e.unref(m).has(U($)),selectable:t.selectable,columns:e.unref(c),"priority-color-map":t.priorityColorMap,"status-color-map":t.statusColorMap,onSelect:I,onClick:L=>Q($)},e.createSlots({_:2},[(O=t.fieldDefs)!=null&&O.length?{name:"cell",fn:e.withCtx(({row:L,col:W})=>[e.createVNode(Ce,{"row-id":U(L),field:v(W.key),value:L[W.key],onCommit:P},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1032,["row","row-key","selected","selectable","columns","priority-color-map","status-color-map","onClick"]))],64)}),128))],512),t.addable?(e.openBlock(),e.createBlock(Ue,{key:0,onClick:T[0]||(T[0]=$=>a("add-row"))})):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-c659dc08"]]),Er={key:0,class:"of-filter-panel"},Br={class:"of-filter-panel__header"},Cr={key:0,class:"of-filter-panel__empty"},Sr={key:1,class:"of-filter-panel__conditions"},Nr={key:0,class:"of-filter-condition__logic-label"},wr={key:1,class:"of-filter-condition__logic-group"},$r=["value","onChange"],xr=["value"],Dr=["value","onChange"],Tr=["value"],Vr=["value","onInput"],Mr={key:3,class:"of-filter-condition__no-value"},Ar=["onClick"],Rr={class:"of-filter-panel__footer"},Jt=w(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,s=[{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 r(i){var m;return(m=n.columns.find(f=>f.key===i))==null?void 0:m.type}function c(i){return r(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:"不为空"}]:s}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",Er,[e.createElementVNode("div",Br,[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",Cr," 暂无筛选条件,点击下方添加 ")):(e.openBlock(),e.createElementBlock("div",Sr,[(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",Nr,"当")):(e.openBlock(),e.createElementBlock("span",wr,[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,xr))),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,Tr))),128))],40,Dr),d(f.operator)?(e.openBlock(),e.createElementBlock("span",Mr)):(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,Vr)),e.createElementVNode("button",{class:"of-filter-condition__remove",onClick:u=>a("remove-condition",f.id)},[e.createVNode(e.unref(A.Trash2),{size:13})],8,Ar)]))),128))])),e.createElementVNode("div",Rr,[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"]]),Ir={key:0,class:"of-col-manager"},Or={class:"of-col-manager__header"},zr={class:"of-col-manager__actions"},Lr={class:"of-col-manager__drag"},Fr=["checked","onChange"],en=w(e.defineComponent({__name:"TableColumnManager",props:{columns:{},visible:{type:Boolean}},emits:["update:columns","close"],setup(t,{emit:o}){const n=t,a=o,s=e.ref([]);e.watch(()=>n.columns,m=>{s.value=m.map(f=>({...f}))},{immediate:!0,deep:!0});function r(){a("update:columns",s.value.map(m=>({...m})))}function c(m){m.hidden=!m.hidden,r()}function l(){s.value.forEach(m=>m.hidden=!1),r()}function d(){s.value.forEach(m=>m.hidden=!0),r()}function i(){r()}return(m,f)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("div",Ir,[e.createElementVNode("div",Or,[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",zr,[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(ze.VueDraggable),{modelValue:s.value,"onUpdate:modelValue":f[1]||(f[1]=p=>s.value=p),handle:".of-col-manager__drag",animation:150,onEnd:i},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,p=>(e.openBlock(),e.createElementBlock("div",{key:p.key,class:"of-col-manager__row"},[e.createElementVNode("span",Lr,[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,Fr),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"]]),Pr=["src"],Ur={class:"gallery-card__body"},vr={class:"gallery-card__title"},Kr={key:0,class:"gallery-card__desc"},Gr={key:1,class:"gallery-card__props"},Hr={class:"gallery-card__prop-key"},Wr={class:"gallery-card__prop-value"},qr={class:"gallery-card__footer"},Yr={class:"gallery-card__task-id"},Zr={class:"gallery-card__date"},Ke=w(e.defineComponent({__name:"GalleryCard",props:{item:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,s=e.computed(()=>n.item.bannerColor??"#BFDBFE"),r=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]=_=>a("click",t.item))},[r.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"gallery-card__cover",src:t.item.cover,alt:""},null,8,Pr)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"gallery-card__banner",style:e.normalizeStyle({backgroundColor:s.value})},null,4)),e.createElementVNode("div",Ur,[e.createElementVNode("div",vr,e.toDisplayString(t.item.title),1),t.item.description?(e.openBlock(),e.createElementBlock("div",Kr,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",Gr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,_=>(e.openBlock(),e.createElementBlock("div",{key:_.key,class:"gallery-card__prop-row"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(_.icon)),{class:"gallery-card__prop-icon",size:12})),e.createElementVNode("span",Hr,e.toDisplayString(_.key),1),u[1]||(u[1]=e.createElementVNode("span",{class:"gallery-card__prop-spacer"},null,-1)),e.createElementVNode("span",Wr,e.toDisplayString(_.value),1)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",qr,[e.createElementVNode("span",Yr,[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",Zr,e.toDisplayString(i.value),1)])])]))}}),[["__scopeId","data-v-9e56eb41"]]);function ye(t){return t.type==="select"||t.type==="multi_select"}function jr(t){return t.type==="formula"}function tn(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 Ge(t){const o=t.fields.status,n=t.fields.priority,a=t.fields.title,s=t.fields.description,r=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 s=="string"?s:void 0,status:typeof o=="string"&&o?o:"todo",priority:typeof n=="string"&&n?n:"P3",assignee:typeof r=="string"?r: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 nn(t,o={}){const n=o.kanbanFieldId??"status",a=new Map;for(const r of t){const c=r.fields[n],l=typeof c=="string"&&c?c:"unassigned",d=a.get(l)??[];d.push(Ge(r)),a.set(l,d)}return(o.laneOrder&&o.laneOrder.length>0?o.laneOrder:Array.from(a.keys())).map(r=>{var c;return{id:r,title:((c=o.laneTitles)==null?void 0:c[r])??r,tasks:a.get(r)??[]}})}function on(t,o={}){const n=o.coverFieldId,a=o.cardFieldIds??[];return t.map(s=>{const r=Ge(s),c=n?s.fields[n]:null,l=typeof c=="string"&&c?c:void 0,d=a.map(i=>{const m=s.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{...r,cover:l,bannerColor:l!=null&&l.startsWith("#")?l:void 0,extraProps:d.length>0?d:void 0}})}const an=w(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,s=e.computed(()=>({"--columns":n.columns})),r=e.computed(()=>n.items.length>0?n.items:n.records.length>0?on(n.records,{coverFieldId:n.coverFieldId||void 0,cardFieldIds:n.cardFieldIds}):[]);return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-view",style:e.normalizeStyle(s.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,d=>(e.openBlock(),e.createBlock(Ke,{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-3e8ae97a"]]),Xr=["aria-busy"],Qr={key:0,class:"of-activity-timeline__skeleton","aria-hidden":"true"},Jr={class:"of-activity-timeline__rail"},es={key:0,class:"of-activity-timeline__line"},ts={class:"of-activity-timeline__rail"},ns={key:0,class:"of-activity-timeline__line"},os={class:"of-activity-timeline__content"},as={class:"of-activity-timeline__header"},ls={class:"of-activity-timeline__action"},rs={key:0,class:"of-activity-timeline__actor"},ss={key:0,class:"of-activity-timeline__detail"},cs={key:1,class:"of-activity-timeline__progress"},is={class:"of-activity-timeline__progress-track"},ds={class:"of-activity-timeline__progress-value"},ms={key:2,class:"of-activity-timeline__time"},ln=w(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 s(c){return c==="done"?"var(--of-color-success)":c==="start"?"var(--of-color-warning)":"var(--of-color-info)"}function r(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",Qr,[(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",Jr,[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",es)):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",ts,[e.createElementVNode("span",{class:"of-activity-timeline__dot",style:e.normalizeStyle({backgroundColor:s(d.status)})},null,4),i<a.value.length-1?(e.openBlock(),e.createElementBlock("span",ns)):e.createCommentVNode("",!0)]),e.createElementVNode("div",os,[e.renderSlot(c.$slots,"item",{item:d,index:i},()=>[e.createElementVNode("div",as,[e.createElementVNode("span",ls,e.toDisplayString(d.action),1),d.actor?(e.openBlock(),e.createElementBlock("span",rs,e.toDisplayString(d.actor),1)):e.createCommentVNode("",!0)]),d.detail?(e.openBlock(),e.createElementBlock("p",ss,e.toDisplayString(d.detail),1)):e.createCommentVNode("",!0),r(d.progress)!==null?(e.openBlock(),e.createElementBlock("div",cs,[e.createElementVNode("div",is,[e.createElementVNode("div",{class:"of-activity-timeline__progress-fill",style:e.normalizeStyle({width:`${r(d.progress)}%`,backgroundColor:s(d.status)})},null,4)]),e.createElementVNode("span",ds,e.toDisplayString(r(d.progress))+"% ",1)])):e.createCommentVNode("",!0),d.time?(e.openBlock(),e.createElementBlock("p",ms,e.toDisplayString(d.time),1)):e.createCommentVNode("",!0)],!0)])]))),128))],8,Xr))}}),[["__scopeId","data-v-a92b88af"]]),fs={class:"gantt-row__label"},us={class:"gantt-row__title"},ps={class:"gantt-row__bar-label"},He=w(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,s=e.ref(!1),r=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(()=>ee(n.item.priority||"",te(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}),_=e.computed(()=>p.value.style),b=e.computed(()=>{const C=ee(n.item.status||"",te(ce,n.statusColorMap));return C.dot??C.style.color}),E=e.computed(()=>{const C=S=>{const V=new Date(`${S}T00:00:00`);return`${String(V.getMonth()+1).padStart(2,"0")}/${String(V.getDate()).padStart(2,"0")}`};return`${C(n.item.startDate)} - ${C(n.item.endDate)}`});function y(C,S){n.readonly||(C.preventDefault(),C.stopPropagation(),s.value=!0,r.value=S,c=C.clientX,l=n.offsetDays,d=n.durationDays,window.addEventListener("mousemove",x),window.addEventListener("mouseup",h))}function x(C){if(!s.value||!r.value)return;const S=Math.round((C.clientX-c)/n.dayWidth);if(r.value==="move"){const g=Math.max(0,Math.min(l+S,n.totalDays-1));a("change",{id:n.item.id,offsetDays:g,durationDays:d,startDate:n.item.startDate,endDate:n.item.endDate});return}const V=Math.max(1,d+S),G=Math.max(1,n.totalDays-n.offsetDays);a("change",{id:n.item.id,offsetDays:n.offsetDays,durationDays:Math.min(V,G),startDate:n.item.startDate,endDate:n.item.endDate})}function h(){s.value=!1,r.value=null,window.removeEventListener("mousemove",x),window.removeEventListener("mouseup",h)}return(C,S)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-row",onClick:S[2]||(S[2]=V=>a("click",t.item))},[e.createElementVNode("div",fs,[e.createElementVNode("span",{class:"gantt-row__dot",style:e.normalizeStyle({backgroundColor:b.value})},null,4),e.createElementVNode("span",us,e.toDisplayString(t.item.title),1),e.createElementVNode("span",{class:"gantt-row__priority",style:e.normalizeStyle(_.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":s.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]=V=>y(V,"move"))},[e.createElementVNode("span",ps,e.toDisplayString(E.value),1),e.createElementVNode("span",{class:"gantt-row__handle",onMousedown:S[0]||(S[0]=V=>y(V,"resize-end"))},null,32)],38)],4)]))}}),[["__scopeId","data-v-c740465f"]]),gs={class:"gantt-timeline__header"},_s={class:"gantt-timeline__rows"},bs={key:0,class:"gantt-timeline__empty"},ue=40,rn=w(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 s(g){return new Date(`${g}T00:00:00`)}function r(g){const N=g.getFullYear(),D=String(g.getMonth()+1).padStart(2,"0"),I=String(g.getDate()).padStart(2,"0");return`${N}-${D}-${I}`}function c(g,N){return Math.round((s(N).getTime()-s(g).getTime())/864e5)}function l(g,N){const D=s(g),I=new Date(D);return I.setDate(D.getDate()+N),r(I)}function d(g){if(typeof g!="string"||!g)return null;const N=g.match(/^(\d{4}-\d{2}-\d{2})/);return N?N[1]:null}function i(){const g=new Date;return`${g.getFullYear()}-${String(g.getMonth()+1).padStart(2,"0")}-01`}const m=e.computed(()=>{var g,N;return(g=n.records)!=null&&g.length?n.records:(N=n.data)!=null&&N.length?n.data.map(tn):[]}),f=e.computed(()=>{var g,N;if((g=n.records)!=null&&g.length||(N=n.data)!=null&&N.length){const D=[];for(const I of m.value){const U=d(I.fields[n.startFieldId]),v=d(I.fields[n.endFieldId]),P=I.fields[n.labelFieldId];!U||!v||D.push({id:I.id,sourceRecordId:I.id,title:typeof P=="string"&&P?P:I.id,status:typeof I.fields.status=="string"?I.fields.status:"",priority:typeof I.fields.priority=="string"?I.fields.priority:"",startDate:U,endDate:v})}return D}return(n.items??[]).map(D=>({id:D.id,title:D.title,status:D.status,priority:D.priority,startDate:D.startDate,endDate:D.endDate,barColor:D.barColor}))}),p=e.computed(()=>{if(!f.value.length)return n.startDate||i();const g=Math.min(...f.value.map(D=>s(D.startDate).getTime())),N=new Date(g);return N.setDate(N.getDate()-1),r(N)}),u=e.computed(()=>{if(!f.value.length)return l(n.startDate||i(),n.days-1);const g=Math.max(...f.value.map(D=>s(D.endDate).getTime())),N=new Date(g);return N.setDate(N.getDate()+1),r(N)}),_=e.computed(()=>n.startDate||p.value),b=e.computed(()=>n.startDate?n.days:Math.max(n.days,c(_.value,u.value)+1)),E=e.computed(()=>{const g=[];for(let N=0;N<b.value;N++)g.push(l(_.value,N));return g}),y=e.ref([]);e.watch(f,g=>{y.value=g.map(N=>({...N}))},{immediate:!0});const x=e.computed(()=>{const g=_.value,N=b.value;return y.value.map(D=>{const I=Math.max(0,c(g,D.startDate)),U=Math.max(I,c(g,D.endDate)),v=Math.max(1,U-I+1);return{row:D,offsetDays:Math.min(I,N-1),durationDays:v}})}),h=r(new Date);function C(g){return g===h}function S(g){const N=s(g);return`${String(N.getMonth()+1).padStart(2,"0")}/${String(N.getDate()).padStart(2,"0")}`}const V=e.computed(()=>{const g=c(_.value,h);return g<0||g>b.value-1?null:g*ue+ue/2});function G(g){const N=y.value.findIndex(P=>P.id===g.id);if(N===-1)return;const D=l(_.value,g.offsetDays),I=l(D,g.durationDays-1);y.value[N]={...y.value[N],startDate:D,endDate:I};const U=y.value[N].sourceRecordId;if(!U)return;a("record-change",{recordId:U,startDate:D,endDate:I});const v=m.value.map(P=>P.id!==U?P:{...P,fields:{...P.fields,[n.startFieldId]:D,[n.endFieldId]:I}});a("update:records",v)}return(g,N)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-timeline",style:e.normalizeStyle({"--day-width":`${ue}px`})},[e.createElementVNode("div",gs,[N[0]||(N[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(E.value,D=>(e.openBlock(),e.createElementBlock("div",{key:D,class:e.normalizeClass(["gantt-timeline__header-cell",{"gantt-timeline__header-cell--today":C(D)}]),style:e.normalizeStyle({width:`${ue}px`})},e.toDisplayString(S(D)),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",_s,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(x.value,D=>(e.openBlock(),e.createBlock(He,{key:D.row.id,item:D.row,"offset-days":D.offsetDays,"duration-days":D.durationDays,"day-width":ue,"total-days":b.value,onChange:G,onClick:I=>a("row-click",D.row)},null,8,["item","offset-days","duration-days","total-days","onClick"]))),128)),x.value.length===0?(e.openBlock(),e.createElementBlock("div",bs,"暂无任务数据")):e.createCommentVNode("",!0)])],4))}}),[["__scopeId","data-v-ea507995"]]),ys=["rows"],ks={key:0,class:"content-block__placeholder"},We=w(e.defineComponent({__name:"ContentBlock",props:{content:{},editable:{type:Boolean,default:!1}},emits:["update:content"],setup(t,{emit:o}){const n=t,a=o,s=e.ref(!1),r=e.ref("");function c(){n.editable&&(r.value=n.content??"",s.value=!0)}function l(){s.value=!1,a("update:content",r.value)}const d=e.computed(()=>n.content?n.content.split(`
|
|
2
|
-
`).filter(i=>i.trim().length>0):[]);return(i,
|
|
3
|
-
`).length),autofocus:"",onBlur:
|
|
4
|
-
`).length),autofocus:"",onBlur:l,onKeydown:e.withKeys(l,["escape"])},null,40,hs)),[[e.vModelText,r.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("p",Es,e.toDisplayString(t.content),1),t.cite?(e.openBlock(),e.createElementBlock("footer",Bs,"— "+e.toDisplayString(t.cite),1)):e.createCommentVNode("",!0)],64))],2))}}),[["__scopeId","data-v-31b9dc83"]]),Cs={class:"code-block"},Ss={class:"code-block__header"},Ns={class:"code-block__lang"},ws=["title"],$s={class:"code-block__copy-label"},xs={class:"code-block__pre"},Ds={class:"code-block__code"},cn=w(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(s,r)=>(e.openBlock(),e.createElementBlock("div",Cs,[e.createElementVNode("div",Ss,[e.createElementVNode("span",Ns,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,ws)):e.createCommentVNode("",!0)]),e.createElementVNode("pre",xs,[e.createElementVNode("code",Ds,e.toDisplayString(t.code),1)])]))}}),[["__scopeId","data-v-5d72fbc6"]]),dn=w(e.defineComponent({__name:"RefLink",props:{refId:{},label:{},href:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,s=e.computed(()=>n.label??n.refId);function r(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:r},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.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-f83e73bd"]]),Ts=["aria-label"],Vs={key:0,class:"of-modal__header"},Ms={key:0,class:"of-modal__title"},As={key:1,class:"of-modal__title-placeholder"},Rs={class:"of-modal__body"},Is={key:1,class:"of-modal__footer"},Ne=w(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 s(){a("update:modelValue",!1)}function r(){n.maskClosable&&s()}function c(l){l.key==="Escape"&&n.modelValue&&s()}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(r,["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",Vs,[e.renderSlot(l.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",Ms,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",As))],!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-modal__close",onClick:s,"aria-label":"关闭",type:"button"},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Rs,[e.renderSlot(l.$slots,"default",{},void 0,!0)]),l.$slots.footer?(e.openBlock(),e.createElementBlock("div",Is,[e.renderSlot(l.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],14,Ts)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-1fd13dbf"]]),pe=e.reactive([]);let Os=0;function we(t,o,n){const a=`toast-${Date.now()}-${Os++}`,s={id:a,type:t,message:o,title:n==null?void 0:n.title,duration:(n==null?void 0:n.duration)??3e3};return pe.push(s),s.duration&&s.duration>0&&setTimeout(()=>mn(a),s.duration),a}function mn(t){const o=pe.findIndex(n=>n.id===t);o!==-1&&pe.splice(o,1)}function qe(){return{toasts:pe,info:(t,o)=>we("info",t,o),success:(t,o)=>we("success",t,o),warning:(t,o)=>we("warning",t,o),error:(t,o)=>we("error",t,o),remove:mn,clear:()=>pe.splice(0,pe.length)}}const zs={class:"of-rich-editor__toolbar-actions"},Ls=["disabled"],Fs=["disabled"],Ps={class:"of-rich-editor__form"},fn=w(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,s=qe(),r=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,E=>{E!==r.value&&(r.value=E)});const f=e.computed(()=>n.editable);function p(E){r.value=E,a("update:modelValue",E),a("change",E)}function u(){var h,C;const E=(C=(h=i.value)==null?void 0:h.getQuill)==null?void 0:C.call(h);if(!E)return;const y=E.getSelection(!0),x=(d.value||"").trim();x&&(l.value.trim()?(E.insertText(y.index,l.value.trim(),"link",x),E.setSelection(y.index+l.value.trim().length,0)):E.format("link",x),c.value=!1,l.value="",d.value="")}function _(){f.value&&(c.value=!0)}function b(){a("save",r.value||""),s.success("内容已保存")}return(E,y)=>(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",zs,[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",disabled:!f.value,onClick:_}," 插入链接 ",8,Ls),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",disabled:!f.value,onClick:b}," 保存 ",8,Fs)]),e.createVNode(e.unref($o.QuillEditor),{ref_key:"editorRef",ref:i,theme:"snow","content-type":"html",content:r.value,options:{readOnly:!f.value,placeholder:t.placeholder,modules:m},"onUpdate:content":p},null,8,["content","options"]),e.createVNode(Ne,{modelValue:c.value,"onUpdate:modelValue":y[3]||(y[3]=x=>c.value=x),title:"插入链接",width:"480px"},{footer:e.withCtx(()=>[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",onClick:y[2]||(y[2]=x=>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",Ps,[y[4]||(y[4]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-text"},"链接文本",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-text","onUpdate:modelValue":y[0]||(y[0]=x=>l.value=x),class:"of-rich-editor__input",placeholder:"请输入链接文本"},null,512),[[e.vModelText,l.value]]),y[5]||(y[5]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-url"},"链接地址",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-url","onUpdate:modelValue":y[1]||(y[1]=x=>d.value=x),class:"of-rich-editor__input",placeholder:"https://example.com"},null,512),[[e.vModelText,d.value]])])]),_:1},8,["modelValue"])],6))}}),[["__scopeId","data-v-e0830c45"]]),Us={class:"of-form-designer"},vs={class:"of-form-designer__header"},Ks={class:"of-form-designer__title"},Gs={class:"of-form-designer__meta"},Hs={class:"of-form-designer__inputs"},Ws=["value","disabled","onInput"],qs=["value","disabled","onChange"],Ys=["value"],Zs={class:"of-form-designer__checkbox-label"},js=["checked","disabled","onChange"],Xs={class:"of-form-designer__checkbox-label"},Qs=["checked","disabled","onChange"],Js=["onClick"],ec={key:1,class:"of-form-designer__options-wrap"},tc=["value","disabled","onChange"],un=w(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,s=o,r=e.ref(l(a.schema));e.watch(()=>a.schema,h=>{r.value=l(h)},{deep:!0});const c=e.computed(()=>`${r.value.fields.length} 个字段`);function l(h){return{...h,fields:h.fields.map(d),views:h.views.map(C=>({...C}))}}function d(h){return ye(h)?{...h,options:h.options.map(C=>({...C}))}:{...h}}function i(){const h=l(r.value);s("update:schema",h),s("change",h)}function m(){return f("text",{id:`field_${Date.now()}`,name:"新字段",required:!1,hidden:!1})}function f(h,C){switch(h){case"text":return{...C,type:h};case"number":return{...C,type:h};case"select":case"multi_select":return{...C,type:h,options:p()};case"date":case"datetime":return{...C,type:h};case"checkbox":return{...C,type:h};case"url":case"email":case"phone":return{...C,type:h};case"rating":return{...C,type:h};case"user":return{...C,type:h};case"attachment":return{...C,type:h};case"relation":return{...C,type:h};case"formula":return{...C,type:h,formula:""}}}function p(){return[{value:"option_1",label:"选项 1"},{value:"option_2",label:"选项 2"}]}function u(){a.readonly||(r.value.fields.push(m()),i())}function _(h){a.readonly||(r.value.fields=r.value.fields.filter(C=>C.id!==h),i())}function b(h,C){const S=r.value.fields.findIndex(G=>G.id===h.id);if(S===-1)return;const V={id:h.id,name:h.name,required:h.required,hidden:h.hidden,width:h.width};r.value.fields[S]=ye(h)&&(C==="select"||C==="multi_select")?{...V,type:C,options:h.options.map(G=>({...G}))}:f(C,V),i()}function E(h,C){if(!ye(h))return;const S=C.split(",").map(V=>V.trim()).filter(Boolean);h.options=S.map(V=>({value:V,label:V})),i()}function y(h){return ye(h)?h.options.map(C=>C.label).join(", "):""}function x(){i()}return(h,C)=>(e.openBlock(),e.createElementBlock("div",Us,[e.createElementVNode("div",vs,[e.createElementVNode("div",null,[e.createElementVNode("h3",Ks,e.toDisplayString(t.title),1),e.createElementVNode("p",Gs,e.toDisplayString(r.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}),C[1]||(C[1]=e.createTextVNode(" 添加字段 ",-1))]))]),e.createVNode(e.unref(ze.VueDraggable),{modelValue:r.value.fields,"onUpdate:modelValue":C[0]||(C[0]=S=>r.value.fields=S),handle:".of-form-designer__drag",disabled:t.readonly,animation:150,onEnd:x},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value.fields,S=>(e.openBlock(),e.createElementBlock("div",{key:S.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",Hs,[e.createElementVNode("input",{value:S.name,class:"of-form-designer__input",placeholder:"字段名称",disabled:t.readonly,onInput:V=>{S.name=String(V.target.value),i()}},null,40,Ws),e.createElementVNode("select",{class:"of-form-designer__select",value:S.type,disabled:t.readonly,onChange:V=>b(S,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,Ys)),64))],40,qs),e.createElementVNode("label",Zs,[e.createElementVNode("input",{type:"checkbox",checked:!!S.required,disabled:t.readonly,onChange:V=>{S.required=V.target.checked,i()}},null,40,js),C[2]||(C[2]=e.createTextVNode(" 必填 ",-1))]),e.createElementVNode("label",Xs,[e.createElementVNode("input",{type:"checkbox",checked:!!S.hidden,disabled:t.readonly,onChange:V=>{S.hidden=V.target.checked,i()}},null,40,Qs),C[3]||(C[3]=e.createTextVNode(" 隐藏 ",-1))])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__remove-btn",onClick:V=>_(S.id)},[e.createVNode(e.unref(A.Trash2),{size:14})],8,Js)),S.type==="select"||S.type==="multi_select"?(e.openBlock(),e.createElementBlock("div",ec,[C[4]||(C[4]=e.createElementVNode("label",{class:"of-form-designer__options-label"},"选项(逗号分隔)",-1)),e.createElementVNode("input",{value:y(S),class:"of-form-designer__input",placeholder:"例如:待办, 进行中, 完成",disabled:t.readonly,onChange:V=>E(S,String(V.target.value))},null,40,tc)])):e.createCommentVNode("",!0)]))),128))]),_:1},8,["modelValue","disabled"])]))}}),[["__scopeId","data-v-4e4c412b"]]),nc={class:"of-color-panel__header"},oc={class:"of-color-panel__label"},ac={class:"of-color-panel__value"},lc={class:"of-color-panel__picker-row"},rc=["disabled"],sc=["disabled"],cc={class:"of-color-panel__presets"},ic=["title","disabled","onClick"],pn=w(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,s=e.computed({get:()=>n.modelValue||"#3b82f6",set:c=>{a("update:modelValue",c),a("change",c)}});function r(c){n.disabled||(s.value=c)}return(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-color-panel",{disabled:t.disabled}])},[e.createElementVNode("div",nc,[e.createElementVNode("span",oc,e.toDisplayString(t.label),1),e.createElementVNode("span",ac,e.toDisplayString(s.value),1)]),e.createElementVNode("div",lc,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":l[0]||(l[0]=d=>s.value=d),class:"of-color-panel__picker",type:"color",disabled:t.disabled},null,8,rc),[[e.vModelText,s.value]]),t.showInput?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":l[1]||(l[1]=d=>s.value=d),class:"of-color-panel__input",type:"text",disabled:t.disabled,placeholder:"#3b82f6"},null,8,sc)),[[e.vModelText,s.value]]):e.createCommentVNode("",!0)]),e.createElementVNode("div",cc,[(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=>r(d)},null,12,ic))),128))])],2))}}),[["__scopeId","data-v-6c54d0c7"]]),dc={class:"of-person-panel__row"},mc=["src","alt"],fc={key:1},uc={key:1,class:"of-person-panel__avatar empty"},pc=["disabled"],gc={value:null},_c=["value"],gn=w(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,s=e.computed({get:()=>n.modelValue,set:l=>{a("update:modelValue",l),a("change",l)}}),r=e.computed(()=>n.people.find(l=>l.id===s.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",dc,[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-person-panel__avatar",style:e.normalizeStyle({background:r.value.color||"var(--of-color-primary-500)"})},[r.value.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:r.value.avatar,alt:r.value.name},null,8,mc)):(e.openBlock(),e.createElementBlock("span",fc,e.toDisplayString(c(r.value.name)),1))],4)):(e.openBlock(),e.createElementBlock("div",uc,"-")),e.withDirectives(e.createElementVNode("select",{"onUpdate:modelValue":d[0]||(d[0]=i=>s.value=i),class:"of-person-panel__select",disabled:t.disabled},[e.createElementVNode("option",gc,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,_c))),128))],8,pc),[[e.vModelSelect,s.value]])])],2))}}),[["__scopeId","data-v-c73d2b9f"]]),bc={class:"of-file-upload"},yc=["multiple","accept","disabled"],kc=["disabled"],hc={key:0,class:"of-file-upload__list"},Ec={class:"of-file-upload__name"},Bc={class:"of-file-upload__size"},Cc=["disabled","onClick"],_n=w(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,s=e.ref(!1),r=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(),s.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=r.value)==null||p.click()}return(p,u)=>(e.openBlock(),e.createElementBlock("div",bc,[e.createElementVNode("input",{ref_key:"fileInput",ref:r,class:"of-file-upload__native",type:"file",multiple:t.multiple,accept:t.accept,disabled:t.disabled,onChange:d},null,40,yc),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["of-file-upload__dropzone",{dragging:s.value,disabled:t.disabled}]),disabled:t.disabled,onClick:f,onDragover:u[0]||(u[0]=e.withModifiers(_=>s.value=!0,["prevent"])),onDragleave:u[1]||(u[1]=e.withModifiers(_=>s.value=!1,["prevent"])),onDrop:i},[e.createVNode(e.unref(A.Upload),{size:16}),e.createElementVNode("span",null,e.toDisplayString(t.hint),1)],42,kc),t.modelValue&&t.modelValue.length?(e.openBlock(),e.createElementBlock("ul",hc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modelValue,(_,b)=>(e.openBlock(),e.createElementBlock("li",{key:`${_.name}-${b}`,class:"of-file-upload__item"},[e.createElementVNode("span",Ec,e.toDisplayString(_.name),1),e.createElementVNode("span",Bc,e.toDisplayString((_.size/1024).toFixed(1))+" KB",1),e.createElementVNode("button",{type:"button",class:"of-file-upload__remove",disabled:t.disabled,onClick:E=>m(b)},[e.createVNode(e.unref(A.X),{size:14})],8,Cc)]))),128))])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-75f8d933"]]),Sc={class:"prop-row"},Nc={class:"prop-row__key"},wc={class:"prop-row__value-area"},$c={key:0,class:"prop-row__plain-text"},Ye=w(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"?ee(o.value,te(ce,o.statusColorMap)):o.type==="priority"?ee(o.value,te(fe,o.priorityColorMap)):o.type==="badge"&&o.customColorMap?ee(o.value,o.customColorMap):null),s=e.computed(()=>a.value?a.value.style:{color:o.valueColor??"var(--of-color-gray-700)",background:o.valueBg??"var(--of-color-gray-100)"}),r=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",Sc,[e.createElementVNode("span",Nc,e.toDisplayString(t.propKey),1),e.createElementVNode("div",wc,[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(s.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(r.value),1)],4))])]))}}),[["__scopeId","data-v-bb8aff62"]]),xc={class:"prop-panel"},Dc={class:"prop-panel__title"},Tc={class:"prop-panel__body"},Vc={key:0,class:"prop-panel__extra"},Ze=w(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(s,r)=>(e.openBlock(),e.createElementBlock("div",xc,[e.createElementVNode("div",{class:e.normalizeClass(["prop-panel__header",{"prop-panel__header--collapsible":t.collapsible}]),onClick:a},[e.createElementVNode("span",Dc,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",Tc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,c=>(e.openBlock(),e.createBlock(Ye,{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)),s.$slots.extra?(e.openBlock(),e.createElementBlock("div",Vc,[e.renderSlot(s.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,!n.value]])]))}}),[["__scopeId","data-v-7cd73233"]]),Mc={class:"comment-item"},Ac={class:"comment-item__content"},Rc={class:"comment-item__header"},Ic={class:"comment-item__author"},Oc={key:0,class:"comment-item__action"},zc={class:"comment-item__time"},Lc={class:"comment-item__text"},je=w(e.defineComponent({__name:"CommentItem",props:{comment:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Mc,[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",Ac,[e.createElementVNode("div",Rc,[e.createElementVNode("span",Ic,e.toDisplayString(t.comment.author),1),t.comment.action?(e.openBlock(),e.createElementBlock("span",Oc,e.toDisplayString(t.comment.action),1)):e.createCommentVNode("",!0),e.createElementVNode("span",zc,e.toDisplayString(t.comment.time),1)]),e.createElementVNode("div",Lc,e.toDisplayString(t.comment.content),1)])]))}}),[["__scopeId","data-v-6050ee55"]]),Fc={class:"detail-layout"},Pc={class:"detail-layout__main"},Uc={class:"detail-layout__title"},vc={class:"detail-layout__meta"},Kc={key:0,class:"detail-layout__badge detail-layout__badge--role"},Gc={key:1,class:"detail-layout__meta-text"},Hc={class:"detail-layout__section"},Wc={class:"detail-layout__description"},qc={key:0,class:"detail-layout__desc-placeholder"},Yc={class:"detail-layout__section"},Zc={class:"detail-layout__comments"},jc={key:0,class:"detail-layout__comment-list"},Xc={key:1,class:"detail-layout__empty-hint"},Qc={class:"detail-layout__sidebar"},bn=w(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,s=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)"}),r=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",Fc,[e.createElementVNode("div",Pc,[e.createElementVNode("h1",Uc,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:s.value.text,backgroundColor:s.value.bg})},e.toDisplayString(c.value),5),e.createElementVNode("span",{class:"detail-layout__badge",style:e.normalizeStyle({color:r.value.text,backgroundColor:r.value.bg})},e.toDisplayString(t.task.priority),5),t.task.role?(e.openBlock(),e.createElementBlock("span",Kc,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0),t.task.assignee?(e.openBlock(),e.createElementBlock("span",Gc,e.toDisplayString(t.task.assignee),1)):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"meta",{},void 0,!0)]),e.createElementVNode("div",Hc,[m[0]||(m[0]=e.createElementVNode("div",{class:"detail-layout__section-title"},"描述",-1)),e.createElementVNode("div",Wc,[e.renderSlot(i.$slots,"description",{},()=>[e.createVNode(e.unref(We),{content:l.value,editable:t.descriptionEditable,"onUpdate:content":d},null,8,["content","editable"]),l.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",qc," 暂无描述 "))],!0)])]),e.createElementVNode("div",Yc,[m[1]||(m[1]=e.createElementVNode("div",{class:"detail-layout__section-title"},"活动记录",-1)),e.createElementVNode("div",Zc,[e.renderSlot(i.$slots,"comments",{},()=>[t.comments&&t.comments.length>0?(e.openBlock(),e.createElementBlock("div",jc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comments,f=>(e.openBlock(),e.createBlock(je,{key:f.id,comment:f},null,8,["comment"]))),128))])):(e.openBlock(),e.createElementBlock("p",Xc,"暂无活动记录"))],!0)])])]),e.createElementVNode("div",Qc,[e.renderSlot(i.$slots,"props",{},()=>[t.propItems&&t.propItems.length>0?(e.openBlock(),e.createBlock(Ze,{key:0,items:t.propItems,title:"属性"},null,8,["items"])):e.createCommentVNode("",!0)],!0)])]))}}),[["__scopeId","data-v-f50548d1"]]),Jc={class:"of-dashboard-chart"},Xe=w(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,s=null;const r=()=>{n.value&&(a||(a=kt.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(()=>{r(),n.value&&(s=new ResizeObserver(()=>a==null?void 0:a.resize()),s.observe(n.value))}),e.onUnmounted(()=>{s==null||s.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.xAxisData,o.seriesName,o.data,o.colors],r,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",Jc,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-69dd32c8"]]),ei={class:"of-dashboard-chart"},$e=w(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,s=null;const r=()=>{n.value&&(a||(a=kt.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(()=>{r(),n.value&&(s=new ResizeObserver(()=>a==null?void 0:a.resize()),s.observe(n.value))}),e.onUnmounted(()=>{s==null||s.disconnect(),a==null||a.dispose()}),e.watch(()=>[o.title,o.data,o.colors,o.doughnut,o.showLegend],r,{deep:!0}),(c,l)=>(e.openBlock(),e.createElementBlock("div",ei,[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($e,{title:t.title,data:t.data,colors:t.colors,"show-legend":t.showLegend,doughnut:""},null,8,["title","data","colors","show-legend"]))}}),ti={class:"of-number-card"},ni={class:"of-number-card__title"},oi={class:"of-number-card__value-row"},ai={key:0,class:"of-number-card__compare"},Je=w(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,s)=>(e.openBlock(),e.createElementBlock("div",ti,[e.createElementVNode("p",ni,e.toDisplayString(t.title),1),e.createElementVNode("div",oi,[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",ai,"环比 "+e.toDisplayString(t.compare),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-c6dc2d84"]]),li={class:"of-table-chart"},ri={key:0,class:"of-table-chart__title"},si={class:"of-table-chart__wrapper"},ci={class:"of-table-chart__table"},et=w(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",li,[t.title?(e.openBlock(),e.createElementBlock("p",ri,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",si,[e.createElementVNode("table",ci,[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,s)=>(e.openBlock(),e.createElementBlock("tr",{key:a.id??s},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,r=>(e.openBlock(),e.createElementBlock("td",{key:r.key,style:e.normalizeStyle({textAlign:r.align??"left"})},e.toDisplayString(a[r.key]??"-"),5))),128))]))),128))])])])]))}}),[["__scopeId","data-v-aacba13e"]]),ii={class:"of-dashboard"},di={class:"of-dashboard__header"},mi={class:"of-dashboard__title"},yn=w(e.defineComponent({__name:"index",props:{title:{default:"Dashboard"},widgets:{default:()=>[]},columns:{default:4},gap:{default:16}},setup(t){const o=t,n={bar:Xe,pie:$e,doughnut:Qe,"number-card":Je,table:et},a=e.computed(()=>({gridTemplateColumns:`repeat(${o.columns}, minmax(0, 1fr))`,gap:`${o.gap}px`})),s=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(r,c)=>(e.openBlock(),e.createElementBlock("section",ii,[e.createElementVNode("header",di,[e.createElementVNode("h3",mi,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(s.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-b4680c55"]]),fi={class:"of-card-title"},ui={class:"of-card-meta"},pi={class:"of-card-id"},gi={key:0,class:"of-card-date"},_i={key:1,class:"of-card-role-badge"},bi={class:"of-card-tags"},xe=w(e.defineComponent({__name:"KanbanCard",props:{task:{},dragging:{type:Boolean,default:!1},priorityColorMap:{},statusColorMap:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,s=e.computed(()=>ee(n.task.priority,te(fe,n.priorityColorMap))),r=e.computed(()=>ee(n.task.status,te(ce,n.statusColorMap))),c=e.computed(()=>s.value.style),l=e.computed(()=>r.value.style),d=e.computed(()=>r.value.label),i=e.computed(()=>s.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]=_=>a("click",t.task))},[e.createElementVNode("div",fi,e.toDisplayString(t.task.title),1),e.createElementVNode("div",ui,[e.createElementVNode("span",pi,e.toDisplayString(t.task.id),1),f.value?(e.openBlock(),e.createElementBlock("span",gi,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",_i,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",bi,[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"]]),yi={class:"of-kanban-column"},ki={class:"of-col-header"},hi={class:"of-col-title"},Ei={class:"of-col-count"},tt=w(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,s=e.ref([...n.column.tasks]);e.watch(()=>n.column.tasks,f=>{f.length===s.value.length&&f.every((u,_)=>{var b;return u.id===((b=s.value[_])==null?void 0:b.id)})||(s.value=[...f])}),e.watch(s,f=>{a("update:column",{...n.column,tasks:f})});const r=e.computed(()=>s.value.length>50),c=e.ref(null),{visibleItems:l,totalHeight:d,offsetY:i}=Se({items:s,itemHeight:120,overscan:3,containerRef:c}),m=e.computed(()=>{if(n.column.color)return n.column.color;const f=te(ce,n.statusColorMap),p=f[n.column.id],u=f[n.column.title],_=p??u;return(_==null?void 0:_.dot)??(_==null?void 0:_.text)??"var(--of-color-gray-400)"});return(f,p)=>(e.openBlock(),e.createElementBlock("div",yi,[e.createElementVNode("div",ki,[e.createElementVNode("span",{class:"of-col-dot",style:e.normalizeStyle({background:m.value})},null,4),e.createElementVNode("span",hi,e.toDisplayString(t.column.title),1),e.createElementVNode("span",Ei,e.toDisplayString(s.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})])]),r.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(xe,{key:u.id,task:u,onClick:p[3]||(p[3]=_=>a("card-click",_))},null,8,["task"]))),128))],4)],4)],512)):(e.openBlock(),e.createBlock(e.unref(ze.VueDraggable),{key:0,modelValue:s.value,"onUpdate:modelValue":p[2]||(p[2]=u=>s.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(s.value,u=>(e.openBlock(),e.createBlock(xe,{key:u.id,task:u,onClick:p[1]||(p[1]=_=>a("card-click",_))},null,8,["task"]))),128))]),_:1},8,["modelValue","ghost-class"]))]))}}),[["__scopeId","data-v-b930d0ab"]]),Bi={class:"of-quick-add"},Ci={class:"of-quick-add-placeholder"},Si=["placeholder"],nt=w(e.defineComponent({__name:"QuickAddRow",props:{placeholder:{default:"快速创建任务,按 Enter 提交"}},emits:["submit","cancel"],setup(t,{emit:o}){const n=o,a=e.ref(!1),s=e.ref(""),r=e.ref(null);async function c(){var m;a.value=!0,await e.nextTick(),(m=r.value)==null||m.focus()}function l(){a.value=!1,s.value=""}function d(m){if(m.key==="Enter"){const f=s.value.trim();f&&(n("submit",f),s.value="",l())}else m.key==="Escape"&&(n("cancel"),l())}function i(){setTimeout(()=>{s.value.trim()||l()},150)}return(m,f)=>(e.openBlock(),e.createElementBlock("div",Bi,[a.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:r,"onUpdate:modelValue":f[0]||(f[0]=p=>s.value=p),type:"text",class:"of-quick-add-input",placeholder:t.placeholder,onKeydown:d,onBlur:i},null,40,Si)),[[e.vModelText,s.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",Ci,e.toDisplayString(t.placeholder),1)]))]))}}),[["__scopeId","data-v-5ebea11d"]]),Ni={class:"of-kanban-board"},wi={class:"of-kanban-inner"},kn=w(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,s=()=>n.columns.length>0?structuredClone(n.columns):n.records.length>0?nn(n.records,{kanbanFieldId:n.kanbanFieldId,laneOrder:n.laneOrder,laneTitles:n.laneTitles}):[],r=e.ref(s());e.watch(()=>[n.columns,n.records,n.kanbanFieldId,n.laneOrder,n.laneTitles],()=>{r.value=s()});function c(i){const m=r.value.findIndex(f=>f.id===i.id);if(m!==-1){const f=i.tasks.map(p=>({...p,status:i.id}));r.value[m]={...i,tasks:f},a("update:columns",structuredClone(r.value))}}function l(i){}function d(i,m){const f=r.value.find(_=>_.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",Ni,[e.createElementVNode("div",wi,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,f=>(e.openBlock(),e.createElementBlock("div",{key:f.id,class:"of-kanban-col-wrapper"},[e.createVNode(tt,{column:f,onAddCard:l,onCardClick:m[0]||(m[0]=p=>a("card-click",p)),"onUpdate:column":c},null,8,["column"]),e.createVNode(nt,{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"]]),ot=w(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"},at=w(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"]]),xi={class:"of-ai-message"},Di={class:"of-ai-message__avatar"},Ti=["src","alt"],Vi={key:1,class:"of-ai-message__avatar-emoji"},Mi={class:"of-ai-message__body"},Ai={key:0,class:"of-ai-message__name"},Ri={class:"of-ai-message__content"},Ii={key:1,class:"of-ai-message__timestamp"},lt=w(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",xi,[e.createElementVNode("div",Di,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:t.name||"AI",class:"of-ai-message__avatar-img"},null,8,Ti)):(e.openBlock(),e.createElementBlock("span",Vi,"🤖"))]),e.createElementVNode("div",Mi,[t.name?(e.openBlock(),e.createElementBlock("div",Ai,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",Ri,e.toDisplayString(t.content),1),t.isStreaming?(e.openBlock(),e.createBlock(at,{key:0})):e.createCommentVNode("",!0)],2),t.timestamp?(e.openBlock(),e.createElementBlock("div",Ii,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-8ed0bf6d"]]),Oi={class:"of-user-message"},zi={class:"of-user-message__body"},Li={class:"of-user-message__bubble"},Fi={key:0,class:"of-user-message__timestamp"},Pi={class:"of-user-message__avatar"},Ui=["src"],vi={key:1,class:"of-user-message__avatar-emoji"},rt=w(e.defineComponent({__name:"UserMessageBubble",props:{content:{},timestamp:{},avatar:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Oi,[e.createElementVNode("div",zi,[e.createElementVNode("div",Li,e.toDisplayString(t.content),1),t.timestamp?(e.openBlock(),e.createElementBlock("div",Fi,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Pi,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:"User",class:"of-user-message__avatar-img"},null,8,Ui)):(e.openBlock(),e.createElementBlock("span",vi,"👤"))])]))}}),[["__scopeId","data-v-0a14f8b1"]]),hn=w(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:s,totalHeight:r,offsetY:c,scrollToBottom:l}=Se({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(r)+"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(s),({data:f})=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:f.id},[f.role==="ai"?(e.openBlock(),e.createBlock(lt,{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(rt,{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(ot,{key:0})):e.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-12ac9a30"]]),Ki={key:0,class:"of-ai-sender__tools"},Gi={class:"of-ai-sender__inner"},Hi={key:0,class:"of-ai-sender__prefix"},Wi=["placeholder","disabled"],qi=["title"],Yi=22,En=w(e.defineComponent({__name:"AiSender",props:{placeholder:{},disabled:{type:Boolean},maxRows:{}},emits:["send","cancel"],setup(t,{emit:o}){const n=t,a=o,s=e.ref(""),r=e.ref(null),c=e.computed(()=>n.maxRows??6);function l(){const u=r.value;if(!u)return;u.style.height="auto";const _=Yi*c.value+16;u.style.height=Math.min(u.scrollHeight,_)+"px"}async function d(){await e.nextTick(),l()}function i(u){u.key==="Enter"&&!u.shiftKey&&(u.preventDefault(),m())}function m(){const u=s.value.trim();!u||n.disabled||(a("send",u),s.value="",e.nextTick(()=>{l()}))}function f(){a("cancel")}function p(){n.disabled?f():m()}return(u,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-sender",{"is-disabled":t.disabled}])},[u.$slots.tools?(e.openBlock(),e.createElementBlock("div",Ki,[e.renderSlot(u.$slots,"tools",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Gi,[u.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Hi,[e.renderSlot(u.$slots,"prefix",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",{ref_key:"textareaRef",ref:r,"onUpdate:modelValue":_[0]||(_[0]=b=>s.value=b),class:"of-ai-sender__textarea",placeholder:t.placeholder??"输入消息...",disabled:t.disabled,rows:"1",onInput:d,onKeydown:i},null,40,Wi),[[e.vModelText,s.value]]),e.createElementVNode("button",{class:e.normalizeClass(["of-ai-sender__action-btn",{"is-stop":t.disabled,"is-empty":!s.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,qi)])],2))}}),[["__scopeId","data-v-2b036e27"]]),Zi={class:"of-dialog"},ji={class:"of-dialog__content"},Xi={class:"of-dialog__title"},Qi={key:0,class:"of-dialog__text"},Ji=["disabled"],ed=["disabled"],Bn=w(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,s={info:A.Info,warning:A.AlertTriangle,danger:A.AlertCircle,success:A.CheckCircle2},r=e.computed(()=>`of-dialog__icon--${n.type}`),c=e.computed(()=>s[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(Ne,{"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,Ji)),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,ed)]),default:e.withCtx(()=>[e.createElementVNode("div",Zi,[e.createElementVNode("div",{class:e.normalizeClass(["of-dialog__icon-wrap",r.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:28}))],2),e.createElementVNode("div",ji,[e.createElementVNode("h3",Xi,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("p",Qi,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-1b14e831"]]),td=["aria-label"],nd={key:0,class:"of-side-panel__header"},od={key:0,class:"of-side-panel__title"},ad={key:1,class:"of-side-panel__title-placeholder"},ld={class:"of-side-panel__body"},rd=["aria-label"],sd={key:0,class:"of-side-panel__header"},cd={key:0,class:"of-side-panel__title"},id={key:1,class:"of-side-panel__title-placeholder"},dd={class:"of-side-panel__body"},Cn=w(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,s=e.computed(()=>({width:`${n.width}px`}));function r(){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(s.value),role:"dialog","aria-modal":"true","aria-label":t.title},[c.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",nd,[e.renderSlot(c.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",od,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",ad))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:r},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",ld,[e.renderSlot(c.$slots,"default",{},void 0,!0)])],12,td)):e.createCommentVNode("",!0)],64)):e.withDirectives((e.openBlock(),e.createElementBlock("aside",{key:1,class:"of-side-panel",style:e.normalizeStyle(s.value),role:"dialog","aria-modal":"true","aria-label":t.title},[c.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",sd,[e.renderSlot(c.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",cd,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",id))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:r},[e.createVNode(e.unref(A.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",dd,[e.renderSlot(c.$slots,"default",{},void 0,!0)])],12,rd)),[[e.vShow,t.modelValue]])]))}}),[["__scopeId","data-v-b4bac850"]]),md=["aria-label"],fd={class:"of-drawer__inner"},ud={key:0,class:"of-drawer__header"},pd={class:"of-drawer__title"},gd={key:0,class:"of-drawer__title-text"},_d={class:"of-drawer__body"},Sn=w(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,s=e.useSlots(),r=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(r.value),onClick:i[0]||(i[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",fd,[e.unref(s).title||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",ud,[e.createElementVNode("div",pd,[e.renderSlot(d.$slots,"title",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",gd,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",_d,[e.renderSlot(d.$slots,"default",{},void 0,!0)])])],12,md)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-9c7b799e"]]),bd=["role","aria-label"],yd={class:"of-toast__icon"},kd={class:"of-toast__content"},hd={key:0,class:"of-toast__title"},Ed={class:"of-toast__message"},st=w(e.defineComponent({__name:"ToastItem",props:{toast:{}},emits:["close"],setup(t,{emit:o}){const n=t,a=o,s={info:A.Info,success:A.CheckCircle2,warning:A.AlertTriangle,error:A.XCircle},r={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(()=>s[n.toast.type]),l=e.computed(()=>r[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",yd,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:20,color:l.value.icon,"aria-hidden":"true"},null,8,["color"]))]),e.createElementVNode("div",kd,[t.toast.title?(e.openBlock(),e.createElementBlock("p",hd,e.toDisplayString(t.toast.title),1)):e.createCommentVNode("",!0),e.createElementVNode("p",Ed,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,bd))}}),[["__scopeId","data-v-f80a8933"]]),Bd={class:"of-toast-container","aria-live":"polite","aria-atomic":"false"},Nn=e.defineComponent({__name:"ToastContainer",setup(t){const{toasts:o,remove:n}=qe();return(a,s)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",Bd,[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),r=>(e.openBlock(),e.createBlock(st,{key:r.id,toast:r,onClose:c=>e.unref(n)(r.id)},null,8,["toast","onClose"]))),128))]),_:1})])]))}}),Cd={class:"of-tabs__nav",role:"tablist","aria-label":"tabs"},Sd=["disabled","id","aria-selected","aria-controls","aria-disabled","tabindex","onClick","onKeydown"],Nd={class:"of-tabs__tab-label"},wd={key:1,class:"of-tabs__badge"},$d={class:"of-tabs__content"},wn=w(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,s=e.ref(n.defaultValue||((d=n.tabs[0])==null?void 0:d.key)||""),r=e.computed({get:()=>n.modelValue??s.value,set:i=>{s.value=i,a("update:modelValue",i),a("change",i)}});function c(i){r.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",r),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",Cd,[(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":r.value===f.key,"of-tabs__tab--disabled":f.disabled}]),disabled:f.disabled,role:"tab",id:`of-tab-${f.key}`,"aria-selected":r.value===f.key,"aria-controls":`of-panel-${f.key}`,"aria-disabled":f.disabled,tabindex:r.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(X)(f.icon)),{key:0,class:"of-tabs__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",Nd,e.toDisplayString(f.label),1),f.badge!=null?(e.openBlock(),e.createElementBlock("span",wd,e.toDisplayString(f.badge),1)):e.createCommentVNode("",!0)],42,Sd))),128))]),e.createElementVNode("div",$d,[e.renderSlot(i.$slots,"default",{},void 0,!0)])],2))}}),[["__scopeId","data-v-dd5210e5"]]),xd=["id","aria-labelledby","hidden"],$n=w(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(s,r)=>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(s.$slots,"default",{},void 0,!0)],8,xd)),[[e.vShow,t.keepAlive?a.value:!0]]):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-5e40c39f"]]),Dd={class:"of-breadcrumb","aria-label":"breadcrumb"},Td={class:"of-breadcrumb__list"},Vd={key:0,class:"of-breadcrumb__separator","aria-hidden":"true"},xn=w(e.defineComponent({__name:"Breadcrumb",props:{items:{},separator:{}},setup(t){function o(n){n.onClick&&n.onClick()}return(n,a)=>(e.openBlock(),e.createElementBlock("nav",Dd,[e.createElementVNode("ol",Td,[t.items&&t.items.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(s,r)=>(e.openBlock(),e.createElementBlock("li",{key:r,class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":r===t.items.length-1}])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.path?"a":"span"),{href:s.path,class:e.normalizeClass(["of-breadcrumb__link",{"of-breadcrumb__link--active":r===t.items.length-1}]),onClick:e.withModifiers(c=>s.onClick?o(s):null,["prevent"])},{default:e.withCtx(()=>[s.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(s.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(s.label),1)]),_:2},1032,["href","class","onClick"])),r<t.items.length-1?(e.openBlock(),e.createElementBlock("span",Vd,[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-460cd1d5"]]),Dn=w(e.defineComponent({__name:"BreadcrumbItem",props:{path:{},icon:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=o;return(a,s)=>(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:s[0]||(s[0]=e.withModifiers(r=>n("click",r),["prevent"]))},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(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-23cd2804"]]),Md={key:0,class:"of-mermaid__loading"},Ad={key:1,class:"of-mermaid__error"},Rd={class:"of-mermaid__error-text"},Tn=w(e.defineComponent({__name:"MermaidChart",props:{code:{},theme:{},width:{}},setup(t){const o=t;let n=0;const a=`of-mermaid-${Date.now()}-${n++}`,s=e.ref(null),r=e.ref(!0),c=e.ref("");async function l(){var d;if(!((d=o.code)!=null&&d.trim())){r.value=!1;return}r.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);s.value&&(s.value.innerHTML=m)}catch(i){c.value=(i==null?void 0:i.message)||"图表渲染失败,请检查 Mermaid 语法"}finally{r.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%"})},[r.value?(e.openBlock(),e.createElementBlock("div",Md,[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",Ad,[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",Rd,e.toDisplayString(c.value),1)],!0)])):(e.openBlock(),e.createElementBlock("div",{key:2,ref_key:"containerRef",ref:s,class:"of-mermaid__container"},null,512))],4))}}),[["__scopeId","data-v-2947d038"]]),Id={class:"of-split-pane__second"},Vn=w(e.defineComponent({__name:"SplitPane",props:{direction:{},defaultSize:{},minSize:{},maxSize:{}},setup(t){const o=t,n=e.ref(o.defaultSize??50),a=e.ref(!1),s=e.ref(null);function r(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||!s.value)return;const m=s.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,_=o.maxSize??90;n.value=Math.min(_,Math.max(u,p))}function l(i){if(!a.value||!s.value)return;i.preventDefault();const m=i.touches[0],f=s.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 _=o.minSize??10,b=o.maxSize??90;n.value=Math.min(b,Math.max(_,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:s,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:r,onTouchstart:e.withModifiers(r,["prevent"])},[...m[0]||(m[0]=[e.createElementVNode("div",{class:"of-split-pane__divider-inner"},null,-1)])],32),e.createElementVNode("div",Id,[e.renderSlot(i.$slots,"second",{},void 0,!0)])],2))}}),[["__scopeId","data-v-860f90a3"]]),Od={key:0,class:"of-context-menu__sep"},zd=["disabled","onClick"],Ld={key:0,class:"of-context-menu__icon"},Fd={class:"of-context-menu__label"},Pd={key:1,class:"of-context-menu__submenu-indicator"},Mn=w(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,s=e.ref(null),r=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;s.value&&p&&!s.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:s,class:"of-context-menu",style:e.normalizeStyle(r.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 _;return e.openBlock(),e.createElementBlock(e.Fragment,{key:u.key},[u.separator?(e.openBlock(),e.createElementBlock("hr",Od)):(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",Ld,e.toDisplayString(u.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Fd,e.toDisplayString(u.label),1),(_=u.children)!=null&&_.length?(e.openBlock(),e.createElementBlock("span",Pd,"›")):e.createCommentVNode("",!0)],10,zd))],64)}),128))],36)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-9c8eb3bc"]]);function An(t={}){const o=e.ref(!1),n=e.ref(!1),a=e.ref(null),s=e.ref(0);let r=null,c="";async function l(i){var E,y,x,h,C,S,V,G,g;n.value=!0,o.value=!1,a.value=null,c="",r=new AbortController;let m=null;t.timeout&&t.timeout>0&&(m=setTimeout(()=>{r==null||r.abort()},t.timeout));let f="",p=[],u=!1;const _=()=>{var N,D;if(f&&((N=t.onChunk)==null||N.call(t,f),f=""),p.length>0){for(const I of p)(D=t.onData)==null||D.call(t,I);p=[]}u=!1},b=()=>{u||(u=!0,requestAnimationFrame(_))};try{const N=i.getReader(),D=new TextDecoder;for(n.value=!1,o.value=!0;;){const{done:I,value:U}=await N.read();if(I)break;const v=D.decode(U,{stream:!0});if(t.mode==="sse"){c+=v;const P=c.split(`
|
|
5
|
-
`);c=P.pop()??"";for(const Q of P){const k=Q.trim();if(!(!k||k.startsWith(":"))&&k.startsWith("data: ")){const T=k.slice(6);if(T==="[DONE]")continue;try{const $=JSON.parse(T);(t.bufferInterval??0)>0?(p.push($),b()):(E=t.onData)==null||E.call(t,$)}catch{(t.bufferInterval??0)>0?(f+=T,b()):(y=t.onChunk)==null||y.call(t,T)}}}}else(t.bufferInterval??0)>0?(f+=v,b()):(x=t.onChunk)==null||x.call(t,v)}_(),(h=t.onDone)==null||h.call(t)}catch(N){if(N.name!=="AbortError"){const D=((C=t.retry)==null?void 0:C.maxRetries)??0;if(s.value<D){const I=((S=t.retry)==null?void 0:S.baseDelay)??1e3,U=((V=t.retry)==null?void 0:V.backoff)==="linear"?I*(s.value+1):I*Math.pow(2,s.value);s.value++,await new Promise(v=>setTimeout(v,U)),(G=t.onRetry)==null||G.call(t,s.value);return}a.value=N,(g=t.onError)==null||g.call(t,N)}}finally{m&&clearTimeout(m),o.value=!1,n.value=!1}}function d(){r==null||r.abort(),o.value=!1,n.value=!1}return{isStreaming:e.readonly(o),isLoading:e.readonly(n),error:e.readonly(a),retryCount:e.readonly(s),start:l,cancel:d}}function Rn(t={}){const o=e.ref(""),n=e.ref(!1);let a="",s=0,r=null,c=null;const l=t.speed??20;function d(){r!==null&&(cancelAnimationFrame(r),r=null),c!==null&&(clearTimeout(c),c=null)}function i(){var _,b;if(s>=a.length){n.value=!1,c=null,(_=t.onComplete)==null||_.call(t);return}o.value=a.slice(0,++s),(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 _=0;function b(E){var y,x;if(_||(_=E),E-_>=l){if(_=E,s>=a.length){n.value=!1,r=null,(y=t.onComplete)==null||y.call(t);return}o.value=a.slice(0,++s),(x=t.onUpdate)==null||x.call(t,o.value)}n.value&&(r=requestAnimationFrame(b))}r=requestAnimationFrame(b)}function f(_){a+=_,n.value||(n.value=!0,m())}function p(){d(),a="",s=0,o.value="",n.value=!1}function u(){var _,b;d(),o.value=a,s=a.length,n.value=!1,(_=t.onUpdate)==null||_.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 In(){return Date.now().toString(36)+Math.random().toString(36).slice(2,6)}function Ud(t){const o=e.shallowRef([]),n=e.ref(!1),a=e.ref(null),s=t.typewriter?Rn({speed:t.typewriterSpeed??15,onUpdate:b=>{if(a.value){const E=o.value.findIndex(y=>y.id===a.value);E!==-1&&(o.value[E].content=b,e.triggerRef(o))}}}):null;function r(b){const E={id:In(),role:"user",content:b,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(E),e.triggerRef(o),E}function c(){const b={id:In(),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,E){const y=o.value.findIndex(x=>x.id===b);y!==-1&&(o.value[y]={...o.value[y],...E},e.triggerRef(o))}function d(b,E){const y=o.value.findIndex(x=>x.id===b);y!==-1&&(o.value[y].content+=E,e.triggerRef(o))}const{start:i,cancel:m,isStreaming:f}=An({mode:t.parseChunk?"sse":"raw",onData:t.parseChunk?b=>{const E=t.parseChunk(b);E&&a.value&&(s?s.append(E):d(a.value,E))}:void 0,onChunk:t.parseChunk?void 0:b=>{a.value&&(s?s.append(b):d(a.value,b))},onDone:()=>{a.value&&(s&&s.flush(),l(a.value,{isStreaming:!1})),n.value=!1,a.value=null},onError:b=>{var E;a.value&&l(a.value,{isStreaming:!1,error:!0,content:`错误:${b.message}`}),n.value=!1,a.value=null,(E=t.onError)==null||E.call(t,b)}});async function p(b){var y;if(n.value||!b.trim())return;r(b);const E=c();n.value=!0,s&&s.reset();try{const x=await t.sendRequest(b,o.value.slice(0,-2)),h=x instanceof Response?x.body:x;await i(h)}catch(x){l(E.id,{isStreaming:!1,error:!0,content:`请求失败:${x.message}`}),n.value=!1,a.value=null,(y=t.onError)==null||y.call(t,x)}}function u(){m(),a.value&&l(a.value,{isStreaming:!1}),n.value=!1,a.value=null}function _(){u(),o.value=[],e.triggerRef(o)}return{messages:e.readonly(o),isGenerating:e.readonly(n),isStreaming:f,send:p,cancel:u,clear:_}}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:"不为空"}],Kd=[{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 Gd(){return Math.random().toString(36).slice(2,8)}function Hd(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 Wd(t={}){const o=e.shallowRef([]),n=e.ref("and"),a=e.computed(()=>o.value.length>0);function s(m){var f,p;o.value.push({id:Gd(),field:m??((p=(f=t.columns)==null?void 0:f[0])==null?void 0:p.key)??"",operator:"contains",value:""}),e.triggerRef(o)}function r(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?Hd(f[u.field],u):!0);return n.value==="and"?p.every(Boolean):p.some(Boolean)}):m}const i=m=>m==="number"?Kd:vd;return{conditions:e.readonly(o),logic:n,isActive:a,addCondition:s,removeCondition:r,updateCondition:c,clearConditions:l,filterData:d,operatorsFor:i}}function qd(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function On(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)&&On(n)}),t}let zn=class{constructor(o){o.data===void 0&&(o.data={}),this.data=o.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function Ln(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}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 s in a)n[s]=a[s]}),n}const Yd="</span>",Fn=t=>!!t.scope,Zd=(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,s)=>`${a}${"_".repeat(s+1)}`)].join(" ")}return`${o}${t}`};class jd{constructor(o,n){this.buffer="",this.classPrefix=n.classPrefix,o.walk(this)}addText(o){this.buffer+=Ln(o)}openNode(o){if(!Fn(o))return;const n=Zd(o.scope,{prefix:this.classPrefix});this.span(n)}closeNode(o){Fn(o)&&(this.buffer+=Yd)}value(){return this.buffer}span(o){this.buffer+=`<span class="${o}">`}}const Pn=(t={})=>{const o={children:[]};return Object.assign(o,t),o};class ct{constructor(){this.rootNode=Pn(),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=Pn({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=>{ct._collapse(n)}))}}class Xd extends ct{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 jd(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ke(t){return t?typeof t=="string"?t:t.source:null}function Un(t){return ie("(?=",t,")")}function Qd(t){return ie("(?:",t,")*")}function Jd(t){return ie("(?:",t,")?")}function ie(...t){return t.map(n=>ke(n)).join("")}function em(t){const o=t[t.length-1];return typeof o=="object"&&o.constructor===Object?(t.splice(t.length-1,1),o):{}}function it(...t){return"("+(em(t).capture?"":"?:")+t.map(a=>ke(a)).join("|")+")"}function vn(t){return new RegExp(t.toString()+"|").exec("").length-1}function tm(t,o){const n=t&&t.exec(o);return n&&n.index===0}const nm=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function dt(t,{joinWith:o}){let n=0;return t.map(a=>{n+=1;const s=n;let r=ke(a),c="";for(;r.length>0;){const l=nm.exec(r);if(!l){c+=r;break}c+=r.substring(0,l.index),r=r.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?c+="\\"+String(Number(l[1])+s):(c+=l[0],l[0]==="("&&n++)}return c}).map(a=>`(${a})`).join(o)}const om=/\b\B/,Kn="[a-zA-Z]\\w*",mt="[a-zA-Z_]\\w*",Gn="\\b\\d+(\\.\\d+)?",Hn="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Wn="\\b(0b[01]+)",am="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",lm=(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},rm={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[he]},sm={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[he]},cm={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/},De=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 s=it("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(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),a},im=De("//","$"),dm=De("/\\*","\\*/"),mm=De("#","$"),fm={scope:"number",begin:Gn,relevance:0},um={scope:"number",begin:Hn,relevance:0},pm={scope:"number",begin:Wn,relevance:0},gm={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[he,{begin:/\[/,end:/\]/,relevance:0,contains:[he]}]},_m={scope:"title",begin:Kn,relevance:0},bm={scope:"title",begin:mt,relevance:0},ym={begin:"\\.\\s*"+mt,relevance:0};var Te=Object.freeze({__proto__:null,APOS_STRING_MODE:rm,BACKSLASH_ESCAPE:he,BINARY_NUMBER_MODE:pm,BINARY_NUMBER_RE:Wn,COMMENT:De,C_BLOCK_COMMENT_MODE:dm,C_LINE_COMMENT_MODE:im,C_NUMBER_MODE:um,C_NUMBER_RE:Hn,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:mm,IDENT_RE:Kn,MATCH_NOTHING_RE:om,METHOD_GUARD:ym,NUMBER_MODE:fm,NUMBER_RE:Gn,PHRASAL_WORDS_MODE:cm,QUOTE_STRING_MODE:sm,REGEXP_MODE:gm,RE_STARTERS_RE:am,SHEBANG:lm,TITLE_MODE:_m,UNDERSCORE_IDENT_RE:mt,UNDERSCORE_TITLE_MODE:bm});function km(t,o){t.input[t.index-1]==="."&&o.ignoreMatch()}function hm(t,o){t.className!==void 0&&(t.scope=t.className,delete t.className)}function Em(t,o){o&&t.beginKeywords&&(t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",t.__beforeBegin=km,t.keywords=t.keywords||t.beginKeywords,delete t.beginKeywords,t.relevance===void 0&&(t.relevance=0))}function Bm(t,o){Array.isArray(t.illegal)&&(t.illegal=it(...t.illegal))}function Cm(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 Sm(t,o){t.relevance===void 0&&(t.relevance=1)}const Nm=(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,Un(n.begin)),t.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},t.relevance=0,delete n.beforeMatch},wm=["of","and","for","in","not","or","if","then","parent","list","value"],$m="keyword";function qn(t,o,n=$m){const a=Object.create(null);return typeof t=="string"?s(n,t.split(" ")):Array.isArray(t)?s(n,t):Object.keys(t).forEach(function(r){Object.assign(a,qn(t[r],o,r))}),a;function s(r,c){o&&(c=c.map(l=>l.toLowerCase())),c.forEach(function(l){const d=l.split("|");a[d[0]]=[r,xm(d[0],d[1])]})}}function xm(t,o){return o?Number(o):Dm(t)?0:1}function Dm(t){return wm.includes(t.toLowerCase())}const Yn={},de=t=>{console.error(t)},Zn=(t,...o)=>{console.log(`WARN: ${t}`,...o)},ge=(t,o)=>{Yn[`${t}/${o}`]||(console.log(`Deprecated as of ${t}. ${o}`),Yn[`${t}/${o}`]=!0)},Ve=new Error;function jn(t,o,{key:n}){let a=0;const s=t[n],r={},c={};for(let l=1;l<=o.length;l++)c[l+a]=s[l],r[l+a]=!0,a+=vn(o[l-1]);t[n]=c,t[n]._emit=r,t[n]._multi=!0}function Tm(t){if(Array.isArray(t.begin)){if(t.skip||t.excludeBegin||t.returnBegin)throw de("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Ve;if(typeof t.beginScope!="object"||t.beginScope===null)throw de("beginScope must be object"),Ve;jn(t,t.begin,{key:"beginScope"}),t.begin=dt(t.begin,{joinWith:""})}}function Vm(t){if(Array.isArray(t.end)){if(t.skip||t.excludeEnd||t.returnEnd)throw de("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Ve;if(typeof t.endScope!="object"||t.endScope===null)throw de("endScope must be object"),Ve;jn(t,t.end,{key:"endScope"}),t.end=dt(t.end,{joinWith:""})}}function Mm(t){t.scope&&typeof t.scope=="object"&&t.scope!==null&&(t.beginScope=t.scope,delete t.scope)}function Am(t){Mm(t),typeof t.beginScope=="string"&&(t.beginScope={_wrap:t.beginScope}),typeof t.endScope=="string"&&(t.endScope={_wrap:t.endScope}),Tm(t),Vm(t)}function Rm(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+=vn(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(d=>d[1]);this.matcherRe=o(dt(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 s(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 r(c,l){const d=c;if(c.isCompiled)return d;[hm,Cm,Am,Nm].forEach(m=>m(c,l)),t.compilerExtensions.forEach(m=>m(c,l)),c.__beforeBegin=null,[Em,Bm,Sm].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=qn(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 Im(m==="self"?c:m)})),c.contains.forEach(function(m){r(m,d)}),c.starts&&r(c.starts,l),d.matcher=s(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||{}),r(t)}function Xn(t){return t?t.endsWithParent||Xn(t.starts):!1}function Im(t){return t.variants&&!t.cachedVariants&&(t.cachedVariants=t.variants.map(function(o){return se(t,{variants:null},o)})),t.cachedVariants?t.cachedVariants:Xn(t)?se(t,{starts:t.starts?se(t.starts):null}):Object.isFrozen(t)?se(t):t}var Om="11.11.1";class zm extends Error{constructor(o,n){super(o),this.name="HTMLInjectionError",this.html=n}}const ft=Ln,Qn=se,Jn=Symbol("nomatch"),Lm=7,eo=function(t){const o=Object.create(null),n=Object.create(null),a=[];let s=!0;const r="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:Xd};function d(k){return l.noHighlightRe.test(k)}function i(k){let T=k.className+" ";T+=k.parentNode?k.parentNode.className:"";const $=l.languageDetectRe.exec(T);if($){const O=g($[1]);return O||(Zn(r.replace("{}",$[1])),Zn("Falling back to no-highlight mode for this block.",k)),O?$[1]:"no-highlight"}return T.split(/\s+/).find(O=>d(O)||g(O))}function m(k,T,$){let O="",L="";typeof T=="object"?(O=k,$=T.ignoreIllegals,L=T.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`),
|
|
7
|
-
`,1;if(_t>1e5&&_t>R.index*3)throw new Error("potential infinite loop, way more iterations than matches");return q+=F,F.length}const ae=g(k);if(!ae)throw de(r.replace("{}",k)),new Error('Unknown language: "'+k+'"');const Af=Rm(ae);let gt="",z=O||Af;const wo={},Y=new l.__emitter(l);Mf();let q="",Oe=0,me=0,_t=0,bt=!1;try{if(ae.__emitTokens)ae.__emitTokens(T,Y);else{for(z.matcher.considerAll();;){_t++,bt?bt=!1:z.matcher.considerAll(),z.matcher.lastIndex=me;const M=z.matcher.exec(T);if(!M)break;const R=T.substring(me,M.index),F=No(R,M);me=M.index+F}No(T.substring(me))}return Y.finalize(),gt=Y.toHTML(),{language:k,value:gt,relevance:Oe,illegal:!1,_emitter:Y,_top:z}}catch(M){if(M.message&&M.message.includes("Illegal"))return{language:k,value:ft(T),illegal:!0,relevance:0,_illegalBy:{message:M.message,index:me,context:T.slice(me-100,me+100),mode:M.mode,resultSoFar:gt},_emitter:Y};if(s)return{language:k,value:ft(T),illegal:!1,relevance:0,errorRaised:M,_emitter:Y,_top:z};throw M}}function p(k){const T={value:ft(k),illegal:!1,relevance:0,_top:c,_emitter:new l.__emitter(l)};return T._emitter.addText(k),T}function u(k,T){T=T||l.languages||Object.keys(o);const $=p(k),O=T.filter(g).filter(D).map(J=>f(J,k,!1));O.unshift($);const L=O.sort((J,oe)=>{if(J.relevance!==oe.relevance)return oe.relevance-J.relevance;if(J.language&&oe.language){if(g(J.language).supersetOf===oe.language)return 1;if(g(oe.language).supersetOf===J.language)return-1}return 0}),[W,Z]=L,ne=W;return ne.secondBest=Z,ne}function _(k,T,$){const O=T&&n[T]||$;k.classList.add("hljs"),k.classList.add(`language-${O}`)}function b(k){let T=null;const $=i(k);if(d($))return;if(P("before:highlightElement",{el:k,language:$}),k.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",k);return}if(k.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(k)),l.throwUnescapedHTML))throw new zm("One of your code blocks includes unescaped HTML.",k.innerHTML);T=k;const O=T.textContent,L=$?m(O,{language:$,ignoreIllegals:!0}):u(O);k.innerHTML=L.value,k.dataset.highlighted="yes",_(k,$,L.language),k.result={language:L.language,re:L.relevance,relevance:L.relevance},L.secondBest&&(k.secondBest={language:L.secondBest.language,relevance:L.secondBest.relevance}),P("after:highlightElement",{el:k,result:L,text:O})}function E(k){l=Qn(l,k)}const y=()=>{C(),ge("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function x(){C(),ge("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let h=!1;function C(){function k(){C()}if(document.readyState==="loading"){h||window.addEventListener("DOMContentLoaded",k,!1),h=!0;return}document.querySelectorAll(l.cssSelector).forEach(b)}function S(k,T){let $=null;try{$=T(t)}catch(O){if(de("Language definition for '{}' could not be registered.".replace("{}",k)),s)de(O);else throw O;$=c}$.name||($.name=k),o[k]=$,$.rawDefinition=T.bind(null,t),$.aliases&&N($.aliases,{languageName:k})}function V(k){delete o[k];for(const T of Object.keys(n))n[T]===k&&delete n[T]}function G(){return Object.keys(o)}function g(k){return k=(k||"").toLowerCase(),o[k]||o[n[k]]}function N(k,{languageName:T}){typeof k=="string"&&(k=[k]),k.forEach($=>{n[$.toLowerCase()]=T})}function D(k){const T=g(k);return T&&!T.disableAutodetect}function I(k){k["before:highlightBlock"]&&!k["before:highlightElement"]&&(k["before:highlightElement"]=T=>{k["before:highlightBlock"](Object.assign({block:T.el},T))}),k["after:highlightBlock"]&&!k["after:highlightElement"]&&(k["after:highlightElement"]=T=>{k["after:highlightBlock"](Object.assign({block:T.el},T))})}function U(k){I(k),a.push(k)}function v(k){const T=a.indexOf(k);T!==-1&&a.splice(T,1)}function P(k,T){const $=k;a.forEach(function(O){O[$]&&O[$](T)})}function Q(k){return ge("10.7.0","highlightBlock will be removed entirely in v12.0"),ge("10.7.0","Please use highlightElement now."),b(k)}Object.assign(t,{highlight:m,highlightAuto:u,highlightAll:C,highlightElement:b,highlightBlock:Q,configure:E,initHighlighting:y,initHighlightingOnLoad:x,registerLanguage:S,unregisterLanguage:V,listLanguages:G,getLanguage:g,registerAliases:N,autoDetection:D,inherit:Qn,addPlugin:U,removePlugin:v}),t.debugMode=function(){s=!1},t.safeMode=function(){s=!0},t.versionString=Om,t.regex={concat:ie,lookahead:Un,either:it,optional:Jd,anyNumberOfTimes:Qd};for(const k in Te)typeof Te[k]=="object"&&On(Te[k]);return Object.assign(t,Te),t},_e=eo({});_e.newInstance=()=>eo({});var Fm=_e;_e.HighlightJS=_e,_e.default=_e;const H=qd(Fm),to="[A-Za-z$_][0-9A-Za-z$_]*",Pm=["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"],Um=["true","false","null","undefined","NaN","Infinity"],no=["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"],oo=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ao=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],vm=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Km=[].concat(ao,no,oo);function lo(t){const o=t.regex,n=($,{after:O})=>{const L="</"+$[0].slice(1);return $.input.indexOf(L,O)!==-1},a=to,s={begin:"<>",end:"</>"},r=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:($,O)=>{const L=$[0].length+$.index,W=$.input[L];if(W==="<"||W===","){O.ignoreMatch();return}W===">"&&(n($,{after:L})||O.ignoreMatch());let Z;const ne=$.input.substring(L);if(Z=ne.match(/^\s*=/)){O.ignoreMatch();return}if((Z=ne.match(/^\s+extends\s+/))&&Z.index===0){O.ignoreMatch();return}}},l={$pattern:to,keyword:Pm,literal:Um,built_in:Km,"variable.language":vm},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"}},_={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"}},E={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},x={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]},h=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,_,b,E,{match:/\$\d+/},f];p.contains=h.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(h)});const C=[].concat(x,p.contains),S=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(C)}]),V={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S},G={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"}}]},g={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:{_:[...no,...oo]}},N={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[V],illegal:/%/},I={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function U($){return o.concat("(?!",$.join("|"),")")}const v={match:o.concat(/\b/,U([...ao,"super","import"].map($=>`${$}\\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},Q={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},V]},k="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",T={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(k)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[V]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:g},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),N,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,_,b,E,x,{match:/\$\d+/},f,g,{scope:"attr",match:a+o.lookahead(":"),relevance:0},T,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[x,t.REGEXP_MODE,{className:"function",begin:k,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:s.begin,end:s.end},{match:r},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},D,{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,I,G,Q,{match:/\$[(.]/}]}}const Me="[A-Za-z$_][0-9A-Za-z$_]*",ro=["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"],so=["true","false","null","undefined","NaN","Infinity"],co=["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"],io=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],mo=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],fo=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],uo=[].concat(mo,co,io);function Gm(t){const o=t.regex,n=($,{after:O})=>{const L="</"+$[0].slice(1);return $.input.indexOf(L,O)!==-1},a=Me,s={begin:"<>",end:"</>"},r=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:($,O)=>{const L=$[0].length+$.index,W=$.input[L];if(W==="<"||W===","){O.ignoreMatch();return}W===">"&&(n($,{after:L})||O.ignoreMatch());let Z;const ne=$.input.substring(L);if(Z=ne.match(/^\s*=/)){O.ignoreMatch();return}if((Z=ne.match(/^\s+extends\s+/))&&Z.index===0){O.ignoreMatch();return}}},l={$pattern:Me,keyword:ro,literal:so,built_in:uo,"variable.language":fo},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"}},_={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"}},E={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,p]},x={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]},h=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,_,b,E,{match:/\$\d+/},f];p.contains=h.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(h)});const C=[].concat(x,p.contains),S=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(C)}]),V={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:S},G={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"}}]},g={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:{_:[...co,...io]}},N={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},D={variants:[{match:[/function/,/\s+/,a,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[V],illegal:/%/},I={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function U($){return o.concat("(?!",$.join("|"),")")}const v={match:o.concat(/\b/,U([...mo,"super","import"].map($=>`${$}\\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},Q={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},V]},k="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",T={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(k)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[V]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:g},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),N,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,u,_,b,E,x,{match:/\$\d+/},f,g,{scope:"attr",match:a+o.lookahead(":"),relevance:0},T,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[x,t.REGEXP_MODE,{className:"function",begin:k,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:s.begin,end:s.end},{match:r},{begin:c.begin,"on:begin":c.isTrulyOpeningTag,end:c.end}],subLanguage:"xml",contains:[{begin:c.begin,end:c.end,skip:!0,contains:["self"]}]}]},D,{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,I,G,Q,{match:/\$[(.]/}]}}function po(t){const o=t.regex,n=Gm(t),a=Me,s=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],r={begin:[/namespace/,/\s+/,t.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},c={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:s},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:Me,keyword:ro.concat(d),literal:so,built_in:uo.concat(s),"variable.language":fo},m={className:"meta",begin:"@"+a},f=(b,E,y)=>{const x=b.contains.findIndex(h=>h.label===E);if(x===-1)throw new Error("can not find mode to replace");b.contains.splice(x,1,y)};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,r,c,u]),f(n,"shebang",t.SHEBANG()),f(n,"use_strict",l);const _=n.contains.find(b=>b.label==="func.def");return _.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function go(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|${a.join("|")}`,b={className:"number",relevance:0,variants:[{begin:`(\\b(${p})|(${u}))[eE][+-]?(${p})[jJ]?(?=${_})`},{begin:`(${u})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${_})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${_})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${_})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${_})`},{begin:`\\b(${p})[jJ](?=${_})`}]},E={className:"comment",begin:o.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},y={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,E,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[y]},{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,y,f]}]}}function ut(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 s={className:"subst",begin:/\$\(/,end:/\)/,contains:[t.BACKSLASH_ESCAPE]},r=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,s]};s.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}),_={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"],E=["true","false"],y={match:/(\/[a-z._-]+)+/},x=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],h=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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:b,literal:E,built_in:[...x,...h,"set","shopt",...C,...S]},contains:[u,t.SHEBANG(),_,f,r,c,y,l,d,i,m,n]}}function Hm(t){const o={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},a=["true","false","null"],s={scope:"literal",beginKeywords:a.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:a},contains:[o,n,t.QUOTE_STRING_MODE,s,t.C_NUMBER_MODE,t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function Wm(t){const o=t.regex,n=t.COMMENT("--","$"),a={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},s={begin:/"/,end:/"/,contains:[{match:/""/}]},r=["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,_=[...i,...d].filter(S=>!m.includes(S)),b={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},E={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},y={match:o.concat(/\b/,o.either(...u),/\s*\(/),relevance:0,keywords:{built_in:u}};function x(S){return o.concat(/\b/,o.either(...S.map(V=>V.replace(/\s+/,"\\s+"))),/\b/)}const h={scope:"keyword",match:x(p),relevance:0};function C(S,{exceptions:V,when:G}={}){const g=G;return V=V||[],S.map(N=>N.match(/\|\d+$/)||V.includes(N)?N:g(N)?`${N}|0`:N)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(_,{when:S=>S.length<3}),literal:r,type:l,built_in:f},contains:[{scope:"type",match:x(c)},h,y,b,a,s,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,n,E]}}function _o(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,s={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},r={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},c=t.inherit(r,{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:[s]},{begin:/'/,end:/'/,contains:[s]},{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:[r,d,l,c,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[r,c,d,l]}]}]},t.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},s,{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 qm=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_-]*/}}),Ym=["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"],Zm=["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"],jm=[...Ym,...Zm],Xm=["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(),Qm=["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(),Jm=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),ef=["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 tf(t){const o=t.regex,n=qm(t),a={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},s="and or not only",r=/@-?\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:":("+Qm.join("|")+")"},{begin:":(:)?("+Jm.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+ef.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:r},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:s,attribute:Xm.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+jm.join("|")+")\\b"}]}}function bo(t){const o=t.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},a={begin:"^[-\\*]{3,}",end:"$"},s={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}]},r={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(y=>{y.contains=y.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,r,i,m,{className:"quote",begin:"^>\\s+",contains:u,end:"$"},s,a,d,c,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function yo(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]|$)/}]},s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},r={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,s]},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},_={begin:/\{/,end:/\}/,contains:[u],illegal:"\\n",relevance:0},b={begin:"\\[",end:"\\]",contains:[u],illegal:"\\n",relevance:0},E=[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,r,c],y=[...E];return y.pop(),y.push(l),u.contains=y,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:E}}var be="[0-9](_*[0-9])*",Ae=`\\.(${be})`,Re="[0-9a-fA-F](_*[0-9a-fA-F])*",ko={className:"number",variants:[{begin:`(\\b(${be})((${Ae})|\\.)?|(${Ae}))[eE][+-]?(${be})[fFdD]?\\b`},{begin:`\\b(${be})((${Ae})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Ae})[fFdD]?\\b`},{begin:`\\b(${be})[fFdD]\\b`},{begin:`\\b0[xX]((${Re})\\.?|(${Re})?\\.(${Re}))[pP][+-]?(${be})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Re})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function ho(t,o,n){return n===-1?"":t.replace(o,a=>ho(t,o,n-1))}function nf(t){const o=t.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",a=n+ho("(?:<"+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,ko,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},ko,i]}}function of(t){const r={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:r,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:r,illegal:/["']/}]}]}}function af(t){const o=t.regex,n=/(r#)?/,a=o.concat(n,t.UNDERSCORE_IDENT_RE),s=o.concat(n,t.IDENT_RE),r={className:"title.function.invoke",relevance:0,begin:o.concat(/\b/,/(?!let|for|while|if|else|match\b)/,s,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:"->"},r]}}function pt(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}H.registerLanguage("plaintext",pt),H.registerLanguage("text",pt),H.registerLanguage("txt",pt),H.registerLanguage("javascript",lo),H.registerLanguage("js",lo),H.registerLanguage("typescript",po),H.registerLanguage("ts",po),H.registerLanguage("python",go),H.registerLanguage("py",go),H.registerLanguage("bash",ut),H.registerLanguage("sh",ut),H.registerLanguage("shell",ut),H.registerLanguage("json",Hm),H.registerLanguage("sql",Wm),H.registerLanguage("xml",_o),H.registerLanguage("html",_o),H.registerLanguage("css",tf),H.registerLanguage("markdown",bo),H.registerLanguage("md",bo),H.registerLanguage("yaml",yo),H.registerLanguage("yml",yo),H.registerLanguage("java",nf),H.registerLanguage("go",of),H.registerLanguage("rust",af);function lf(t={}){const{showCopyButton:o=!1,t:n=r=>r}=t,a=new Le.marked.Renderer;a.code=function(r,c){const l=typeof r=="object"?r.text||"":r,d=typeof r=="object"?r.lang||"":c||"",i=d&&H.getLanguage(d)?d:"plaintext";let m="";try{m=H.highlight(l,{language:i}).value}catch{m=H.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">
|
|
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,M,Le,$o,xo,ze){"use strict";function yt(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 Do=yt(M),kt=yt(xo),To=["onClick"],Vo={class:"of-view-tab__label"},Ao=e.defineComponent({inheritAttrs:!1,__name:"ViewTab",props:{modelValue:{},items:{}},emits:["update:modelValue"],setup(t,{emit:o}){const n={"table-2":M.Table2Icon,kanban:M.KanbanIcon,"layout-grid":M.LayoutGridIcon,"gantt-chart":M.GanttChartIcon};function a(c){return n[c]}const r=o;function l(c){r("update:modelValue",c)}return(c,s)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-view-tab"},c.$attrs),[(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=>l(d.key)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a(d.icon)),{class:"of-view-tab__icon",size:14})),e.createElementVNode("span",Vo,e.toDisplayString(d.label),1)],10,To))),128))],16))}}),N=(t,o)=>{const n=t.__vccOpts||t;for(const[a,r]of o)n[a]=r;return n},ht=N(Ao,[["__scopeId","data-v-9258406d"]]);function Mo(t){return t.split("-").map(o=>o.charAt(0).toUpperCase()+o.slice(1)).join("")+"Icon"}const Pe=new Map;function X(t){if(!t)return;if(typeof t!="string")return t;if(Pe.has(t))return Pe.get(t);const o=Mo(t),n=Do[o];return Pe.set(t,n),n}const Ro={class:"of-toolbar-btn__label"},Et=N(e.defineComponent({inheritAttrs:!1,__name:"ToolbarBtn",props:{icon:{},label:{},active:{type:Boolean}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>X(n.icon));function l(c){a("click",c)}return(c,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({class:["of-toolbar-btn",{"of-toolbar-btn--active":t.active}]},c.$attrs,{onClick:l}),[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{class:"of-toolbar-btn__icon",size:13})),e.createElementVNode("span",Ro,e.toDisplayString(t.label),1)],16))}}),[["__scopeId","data-v-a47e32a0"]]),Bt=N(e.defineComponent({__name:"AddViewBtn",emits:["click"],setup(t,{emit:o}){const n=o;function a(r){n("click",r)}return(r,l)=>(e.openBlock(),e.createElementBlock("button",{class:"of-add-view-btn",onClick:a},[e.createVNode(e.unref(M.PlusIcon),{class:"of-add-view-btn__icon",size:12}),l[0]||(l[0]=e.createElementVNode("span",{class:"of-add-view-btn__label"},"添加视图",-1))]))}}),[["__scopeId","data-v-c05e5b5c"]]),Ct=N(e.defineComponent({inheritAttrs:!1,__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"),l=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,s)=>(e.openBlock(),e.createElementBlock("span",e.mergeProps({class:["one-badge",`one-badge--${t.size}`],style:l.value},c.$attrs),[e.renderSlot(c.$slots,"default",{},void 0,!0)],16))}}),[["__scopeId","data-v-1b71e2f8"]]),Io={class:"of-range-slider__label"},Oo=["value","min","max","step"],Lo={key:0,class:"of-range-slider__description"},St=N(e.defineComponent({inheritAttrs:!1,__name:"RangeSlider",props:{label:{},modelValue:{},min:{},max:{},step:{},description:{}},emits:["update:modelValue"],setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-range-slider"},o.$attrs),[e.createElementVNode("label",Io,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,Oo),t.description?(e.openBlock(),e.createElementBlock("p",Lo,e.toDisplayString(t.description),1)):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-df75159c"]]),zo={key:0,class:"of-progress-bar__label"},Po={class:"of-progress-bar__slot"},Fo={class:"of-progress-bar__value"},wt=N(e.defineComponent({inheritAttrs:!1,__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`})),l=e.computed(()=>({width:`${n.value}%`,background:a.value,borderRadius:`${o.borderRadius}px`}));return(c,s)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-progress-bar"},c.$attrs),[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(l.value)},null,6)],4),t.showLabel?(e.openBlock(),e.createElementBlock("div",zo,[e.createElementVNode("div",Po,[e.renderSlot(c.$slots,"default",{},void 0,!0)]),e.createElementVNode("span",Fo,e.toDisplayString(n.value)+"%",1)])):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-1aeb6aa3"]]),Uo=["onClick"],vo={key:0,class:"of-button-group__item-content"},Ko={key:1},Nt=N(e.defineComponent({inheritAttrs:!1,__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",e.mergeProps({class:["of-button-group",n.value]},a.$attrs),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.options,l=>(e.openBlock(),e.createElementBlock("button",{key:l.value,onClick:c=>a.$emit("update:modelValue",l.value),class:e.normalizeClass(["of-button-group__item",t.modelValue===l.value?"of-button-group__item--active":""])},[l.icon?(e.openBlock(),e.createElementBlock("div",vo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(l.icon)),{class:"of-button-group__item-icon"})),e.createElementVNode("span",null,e.toDisplayString(l.label),1)])):(e.openBlock(),e.createElementBlock("div",Ko,e.toDisplayString(l.label),1))],10,Uo))),128))],16))}}),[["__scopeId","data-v-8fb19680"]]),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"},$t=N(e.defineComponent({inheritAttrs:!1,__name:"EmptyState",props:{icon:{},title:{},description:{},action:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-empty-state"},o.$attrs),[e.createElementVNode("div",Go,[t.icon?(e.openBlock(),e.createElementBlock("div",Ho,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(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)])],16))}}),[["__scopeId","data-v-7d70479e"]]),Yo={class:"of-statistic-card__content"},Zo={class:"of-statistic-card__value"},jo={class:"of-statistic-card__label"},xt=N(e.defineComponent({inheritAttrs:!1,__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,l)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-statistic-card"},r.$attrs),[e.createElementVNode("div",{class:"of-statistic-card__icon-container",style:e.normalizeStyle({backgroundColor:a.value.bg})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(t.icon)),{class:"of-statistic-card__icon",style:e.normalizeStyle({color:a.value.text})},null,8,["style"]))],4),e.createElementVNode("div",Yo,[e.createElementVNode("p",Zo,e.toDisplayString(t.value),1),e.createElementVNode("p",jo,e.toDisplayString(t.label),1)])],16))}}),[["__scopeId","data-v-62284568"]]),Xo=["aria-expanded"],Qo=["onClick"],Dt=N(e.defineComponent({inheritAttrs:!1,__name:"DropdownMenu",props:{items:{}},setup(t){const o=e.ref(!1),n=e.ref(null),a=e.ref(null);function r(d){var i;d.key==="Escape"&&o.value&&(o.value=!1,(i=n.value)==null||i.focus())}e.onMounted(()=>{typeof document>"u"||document.addEventListener("keydown",r)}),e.onBeforeUnmount(()=>{typeof document>"u"||document.removeEventListener("keydown",r)});function l(d){var i;d.onClick(),o.value=!1,(i=n.value)==null||i.focus()}function c(){var d;o.value=!o.value,o.value?e.nextTick(()=>{var f;const i=(f=a.value)==null?void 0:f.querySelector('[role="menuitem"]');i==null||i.focus()}):(d=n.value)==null||d.focus()}function s(){var d;o.value=!1,(d=n.value)==null||d.focus()}return(d,i)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-dropdown-menu"},d.$attrs),[e.createElementVNode("button",{ref_key:"triggerRef",ref:n,class:"of-dropdown-menu__trigger","aria-haspopup":"true","aria-expanded":o.value,"aria-label":"更多操作",onClick:c},[e.createVNode(e.unref(M.MoreHorizontal),{size:18})],8,Xo),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:s})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.Transition,{name:"of-dropdown-slide"},{default:e.withCtx(()=>[o.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"menuRef",ref:a,class:"of-dropdown-menu__content",role:"menu"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,(f,m)=>(e.openBlock(),e.createElementBlock("button",{key:m,onClick:u=>l(f),class:e.normalizeClass(["of-dropdown-menu__item",`of-dropdown-menu__item--${f.variant||"default"}`]),role:"menuitem"},[f.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(f.icon)),{key:0,class:"of-dropdown-menu__item-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(f.label),1)],10,Qo))),128))],512)):e.createCommentVNode("",!0)]),_:1})],16))}}),[["__scopeId","data-v-876336db"]]),Jo={class:"of-status-indicator__label"},Tt=N(e.defineComponent({inheritAttrs:!1,__name:"StatusIndicator",props:{status:{},label:{default:void 0},size:{default:"md"},color:{default:void 0}},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()),l=e.computed(()=>a.label??a.status),c=e.computed(()=>a.color??o[r.value]??"var(--of-color-gray-300)"),s=e.computed(()=>n[a.size]);return(d,i)=>(e.openBlock(),e.createElementBlock("span",e.mergeProps({class:"of-status-indicator",style:{"--of-status-dot-color":c.value}},d.$attrs),[e.createElementVNode("span",{class:"of-status-indicator__dot",style:e.normalizeStyle({width:s.value,height:s.value})},null,4),e.renderSlot(d.$slots,"default",{status:t.status,label:l.value,color:c.value},()=>[e.createElementVNode("span",Jo,e.toDisplayString(l.value),1)],!0)],16))}}),[["__scopeId","data-v-9cd8c7d0"]]),ea=["aria-checked","aria-label","disabled","onKeydown"],ta={key:0,class:"of-switch__label"},Vt=N(e.defineComponent({inheritAttrs:!1,__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 l(){if(n.disabled)return;const c=!n.modelValue;a("update:modelValue",c),a("change",c)}return(c,s)=>(e.openBlock(),e.createElementBlock("button",e.mergeProps({type:"button",class:["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},c.$attrs,{onClick:l,onKeydown:e.withKeys(e.withModifiers(l,["prevent"]),["space"])}),[s[0]||(s[0]=e.createElementVNode("span",{class:"of-switch__track"},[e.createElementVNode("span",{class:"of-switch__thumb"})],-1)),t.label?(e.openBlock(),e.createElementBlock("span",ta,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0)],16,ea))}}),[["__scopeId","data-v-d0f6c434"]]),na=["aria-current"],oa={key:1},aa={class:"of-stepper__content"},la={class:"of-stepper__label"},ra={key:0,class:"of-stepper__description"},At=N(e.defineComponent({inheritAttrs:!1,__name:"Stepper",props:{steps:{},current:{},direction:{default:"horizontal"}},setup(t){const o=t,n=e.computed(()=>o.direction==="horizontal");function a(l){return l<o.current?"done":l===o.current?"active":"pending"}function r(l){return l<o.current?"done":"pending"}return(l,c)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["of-stepper",n.value?"of-stepper--horizontal":"of-stepper--vertical"]},l.$attrs),[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.steps,(s,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:`${s.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(M.Check),{key:0,size:14,"stroke-width":3})):(e.openBlock(),e.createElementBlock("span",oa,e.toDisplayString(d+1),1))],10,na),e.createElementVNode("div",aa,[e.renderSlot(l.$slots,"step-content",{item:s,index:d,status:a(d)},()=>[e.createElementVNode("p",la,e.toDisplayString(s.label),1),s.description?(e.openBlock(),e.createElementBlock("p",ra,e.toDisplayString(s.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))],16))}}),[["__scopeId","data-v-798f19a3"]]),sa=["disabled","aria-expanded","aria-controls","onClick"],ca={class:"of-accordion__trigger-text"},ia={class:"of-accordion__title"},da={key:0,class:"of-accordion__subtitle"},ma={class:"of-accordion__icon","aria-hidden":"true"},fa=["id"],Mt=N(e.defineComponent({inheritAttrs:!1,__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 l(s){return r.value.includes(s)}function c(s){if(s.disabled)return;const d=l(s.key);if(n.multiple){a("update:modelValue",d?r.value.filter(i=>i!==s.key):[...r.value,s.key]);return}a("update:modelValue",d?"":s.key)}return(s,d)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"of-accordion"},s.$attrs),[(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":l(i.key),"of-accordion__item--disabled":i.disabled}])},[e.createElementVNode("button",{type:"button",class:"of-accordion__trigger",disabled:i.disabled,"aria-expanded":l(i.key),"aria-controls":`of-accordion-panel-${i.key}`,onClick:f=>c(i)},[e.renderSlot(s.$slots,"trigger",{item:i,open:l(i.key)},()=>[e.createElementVNode("span",ca,[e.createElementVNode("span",ia,e.toDisplayString(i.title),1),i.subtitle?(e.openBlock(),e.createElementBlock("span",da,e.toDisplayString(i.subtitle),1)):e.createCommentVNode("",!0)])],!0),e.createElementVNode("span",ma,e.toDisplayString(l(i.key)?"▲":"▼"),1)],8,sa),!t.lazy||l(i.key)?e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:0,id:`of-accordion-panel-${i.key}`,class:"of-accordion__panel"},[e.renderSlot(s.$slots,"default",{item:i},void 0,!0)],8,fa)),[[e.vShow,t.lazy?!0:l(i.key)]]):e.createCommentVNode("",!0)],2))),128))],16))}}),[["__scopeId","data-v-2ab50b87"]]),Rt=N(e.defineComponent({name:"Avatar",inheritAttrs:!1,__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 f=0;f<d.length;f++)i=(i<<5)-i+d.charCodeAt(f),i|=0;return Math.abs(i)}const l=e.computed(()=>{var f;if(o.color&&o.bg)return{color:o.color,bg:o.bg};const d=(f=o.role)==null?void 0:f.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():""}),s=e.computed(()=>{const d=o.size,i=Math.round(d*.36);return{"--one-avatar-size":`${d}px`,"--one-avatar-bg":l.value.bg,"--one-avatar-color":l.value.color,"--one-avatar-font-size":`${i}px`}});return(d,i)=>(e.openBlock(),e.createElementBlock("span",e.mergeProps({class:"one-avatar",style:s.value},d.$attrs),e.toDisplayString(c.value),17))}}),[["__scopeId","data-v-5ece2c30"]]),ua={class:"one-desc-block"},It=N(e.defineComponent({name:"DescBlock",__name:"DescBlock",setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",ua,[e.renderSlot(o.$slots,"default",{},void 0,!0)]))}}),[["__scopeId","data-v-3d0716d4"]]),pa=["title","onClick"],Ot=N(e.defineComponent({name:"ViewModeGroup",inheritAttrs:!1,__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,l)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"one-view-mode-group"},r.$attrs),[(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:s=>r.$emit("update:modelValue",c.value)},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(c.icon)),{class:"one-view-mode-group__icon"}))],10,pa))),128))],16))}}),[["__scopeId","data-v-1fa6a5bf"]]),ga={class:"one-view-switcher__tabs"},ba=["onClick"],_a={key:3,class:"one-view-switcher__search"},ya=["placeholder"],Lt=N(e.defineComponent({inheritAttrs:!1,__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,l)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"one-view-switcher"},r.$attrs),[e.createElementVNode("div",ga,[(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:s=>r.$emit("update:modelValue",c.value)},[c.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(c.icon)),{key:0,class:"one-view-switcher__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",null,e.toDisplayString(c.label),1)],10,ba))),128))]),l[4]||(l[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:l[0]||(l[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:l[1]||(l[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:l[2]||(l[2]=c=>r.$emit("sort"))},e.toDisplayString(t.sortLabel),1)):e.createCommentVNode("",!0),l[5]||(l[5]=e.createElementVNode("div",{class:"one-view-switcher__spacer"},null,-1)),t.showSearch?(e.openBlock(),e.createElementBlock("div",_a,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)("search")),{class:"one-view-switcher__search-icon"})),e.createElementVNode("input",{class:"one-view-switcher__search-input",placeholder:t.searchPlaceholder,onInput:l[3]||(l[3]=c=>r.$emit("search",c.target.value))},null,40,ya)])):e.createCommentVNode("",!0),e.renderSlot(r.$slots,"default",{},void 0,!0)],16))}}),[["__scopeId","data-v-e11bb993"]]),ka={class:"one-ref-tag__text"},zt=N(e.defineComponent({name:"RefTag",inheritAttrs:!1,__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 X(c)}),l=e.computed(()=>({"--one-ref-tag-color":n.color??a.value.color,"--one-ref-tag-bg":n.bg??a.value.bg}));return(c,s)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.href?"a":"span"),e.mergeProps({class:"one-ref-tag",style:l.value,href:t.href??void 0,target:t.href?"_blank":void 0,rel:t.href?"noopener noreferrer":void 0},c.$attrs),{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",ka,[e.renderSlot(c.$slots,"default",{},void 0,!0)])]),_:3},16,["style","href","target","rel"]))}}),[["__scopeId","data-v-4b527ca4"]]),ha={class:"one-select-badge__text"},Pt=N(e.defineComponent({inheritAttrs:!1,__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)"}},l=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),s=e.computed(()=>n.borderColor?n.borderColor:n.color&&r[n.color]?r[n.color].border:r.gray.border),d=e.computed(()=>({"--one-sb-text":l.value,"--one-sb-bg":c.value,"--one-sb-border":s.value})),i=e.computed(()=>({backgroundColor:n.dotColor||l.value})),f=X("chevron-down");function m(u){a("click",u)}return(u,p)=>(e.openBlock(),e.createElementBlock("span",e.mergeProps({class:["one-select-badge",{"one-select-badge--clickable":t.clickable}],style:d.value},u.$attrs,{onClick:m}),[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",ha,[e.renderSlot(u.$slots,"default",{},void 0,!0)]),t.clickable&&e.unref(f)?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(f)),{key:1,class:"one-select-badge__arrow"})):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-c58387e0"]]),Ea={class:"one-chain-item__header"},Ba={key:0,class:"one-chain-item__duration"},Ft=N(e.defineComponent({inheritAttrs:!1,__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),l=e.computed(()=>o.bg||a.value.bg),c=e.computed(()=>o.borderColor||a.value.border),s=e.computed(()=>a.value.descColor),d=e.computed(()=>o.avatar||a.value.defaultAvatar),i=e.computed(()=>({background:l.value,borderColor:c.value})),f=e.computed(()=>({backgroundColor:a.value.avatarBg,color:r.value}));return(m,u)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:"one-chain-item",style:i.value},m.$attrs),[e.createElementVNode("div",Ea,[e.createElementVNode("span",{class:"one-chain-item__avatar",style:e.normalizeStyle(f.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",Ba,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:s.value})},e.toDisplayString(t.description),5)):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-85fb8155"]]),Ca={class:"of-section-block__header-left"},Sa={class:"of-section-block__title"},wa=["aria-expanded","aria-label"],Na={class:"of-section-block__body"},Ut=N(e.defineComponent({name:"SectionBlock",inheritAttrs:!1,__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)"}},l={pending:"待处理",updating:"更新中",done:"已完成",editing:"编辑中"},c=e.computed(()=>n.status?r[n.status]??null:null),s=e.computed(()=>{var k;return n.status?((k=n.statusLabels)==null?void 0:k[n.status])??l[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)"}:{}),f=e.computed(()=>n.status==="editing"),m=e.computed(()=>n.editable&&n.status==="done"),u=e.computed(()=>X(n.icon));function p(){a("update:collapsed",!n.collapsed)}function g(){a("edit")}function _(){a("save")}return(k,y)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["of-section-block",{"of-section-block--collapsed":t.collapsed,"of-section-block--editing":f.value,"of-section-block--done":t.status==="done"}],style:i.value},k.$attrs),[e.createElementVNode("div",{class:"of-section-block__header",onClick:p},[e.createElementVNode("div",Ca,[u.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(u.value),{key:0,class:"of-section-block__icon",size:14,"aria-hidden":"true"})):e.createCommentVNode("",!0),e.createElementVNode("span",Sa,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(s.value),5)):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"of-section-block__header-right",onClick:y[0]||(y[0]=e.withModifiers(()=>{},["stop"]))},[e.renderSlot(k.$slots,"header-extra",{},void 0,!0),f.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"of-section-block__action-btn of-section-block__action-btn--save",onClick:_}," 保存 ")):m.value?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"of-section-block__action-btn",onClick:g}," 编辑 ")):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,wa)])]),e.createElementVNode("div",{class:e.normalizeClass(["of-section-block__body-wrapper",{"of-section-block__body-wrapper--collapsed":t.collapsed}])},[e.createElementVNode("div",Na,[f.value?e.renderSlot(k.$slots,"editor",{key:0},void 0,!0):e.renderSlot(k.$slots,"default",{key:1},void 0,!0)])],2)],16))}}),[["__scopeId","data-v-d2c09df0"]]),$a={key:0,class:"of-status-summary__sep","aria-hidden":"true"},xa={class:"of-status-summary__item"},Da={key:0,class:"of-status-summary__extra"},vt=N(e.defineComponent({name:"StatusSummary",inheritAttrs:!1,__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 l(c){return c.highlight?r(c):"var(--of-color-text-primary)"}return(c,s)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["of-status-summary",`of-status-summary--${t.size}`]},c.$attrs),[(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",$a)):e.createCommentVNode("",!0),e.createElementVNode("span",xa,[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:l(d),fontWeight:d.highlight?"700":"600"})},e.toDisplayString(d.count),5)])],64))),128)),c.$slots.extra?(e.openBlock(),e.createElementBlock("span",Da,[e.renderSlot(c.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-bd8acd89"]]),Ta={key:0,class:"of-info-card__icon-area"},Va={class:"of-info-card__body"},Aa={class:"of-info-card__title"},Ma={class:"of-info-card__footer"},Ra={key:1,class:"of-info-card__meta-text"},Ia={key:2,class:"of-info-card__meta-text"},Oa={class:"of-info-card__body"},La={class:"of-info-card__title"},za={key:1,class:"of-info-card__notify-meta"},Pa={key:0,class:"of-info-card__actions"},Fa={key:0,class:"of-info-card__icon-area"},Ua={class:"of-info-card__body"},va={class:"of-info-card__title"},Ka={key:0,class:"of-info-card__subtitle"},Ga={key:1,class:"of-info-card__actions"},Kt=N(e.defineComponent({name:"InfoCard",inheritAttrs:!1,__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(f=>({v4daa9b0a:f.unread?"var(--of-color-warning-light)":"var(--of-color-bg-elevated)"}));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)"},l=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 f={"--of-ic-border":l.value};return n.variant==="notify"&&(f["--of-ic-unread-dot"]=n.unread?"var(--of-color-info)":"var(--of-color-text-tertiary)"),f}),s=e.computed(()=>({"--of-ic-clamp":String(n.contentLines??3)}));function d(f){const m=[{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)"}],u=m[f%m.length];return{"--of-ic-tag-bg":u.bg,"--of-ic-tag-color":u.color,"--of-ic-tag-border":u.border}}function i(f){a("click",f)}return(f,m)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["of-info-card",`of-info-card--${t.variant}`],style:c.value},f.$attrs,{onClick:i}),[t.variant==="memo"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[f.$slots.icon?(e.openBlock(),e.createElementBlock("div",Ta,[e.renderSlot(f.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Va,[e.createElementVNode("div",Aa,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(s.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),e.createElementVNode("div",Ma,[t.tags&&t.tags.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.tags,(u,p)=>(e.openBlock(),e.createElementBlock("span",{key:u,class:"of-info-card__tag",style:e.normalizeStyle(d(p))},e.toDisplayString(u),5))),128)):e.createCommentVNode("",!0),t.author?(e.openBlock(),e.createElementBlock("span",Ra,e.toDisplayString(t.author),1)):e.createCommentVNode("",!0),t.date?(e.openBlock(),e.createElementBlock("span",Ia,e.toDisplayString(t.date),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"footer",{},void 0,!0)])])],64)):t.variant==="notify"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[m[0]||(m[0]=e.createElementVNode("span",{class:"of-info-card__dot"},null,-1)),e.createElementVNode("div",Oa,[e.createElementVNode("div",La,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(s.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),t.meta?(e.openBlock(),e.createElementBlock("div",za,e.toDisplayString(t.meta),1)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"footer",{},void 0,!0)]),f.$slots.actions?(e.openBlock(),e.createElementBlock("div",Pa,[e.renderSlot(f.$slots,"actions",{},void 0,!0)])):e.createCommentVNode("",!0)],64)):t.variant==="history"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[f.$slots.icon?(e.openBlock(),e.createElementBlock("div",Fa,[e.renderSlot(f.$slots,"icon",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ua,[e.createElementVNode("div",va,e.toDisplayString(t.title),1),t.subtitle?(e.openBlock(),e.createElementBlock("div",Ka,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(s.value)},e.toDisplayString(t.content),5)):e.createCommentVNode("",!0),e.renderSlot(f.$slots,"footer",{},void 0,!0)]),f.$slots.actions?(e.openBlock(),e.createElementBlock("div",Ga,[e.renderSlot(f.$slots,"actions",{},void 0,!0)])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-79431801"]]),Ha={key:0,class:"of-monitor-item__subtitle"},qa={class:"of-monitor-item__label"},Wa={class:"of-monitor-item__progress"},Ya={class:"of-monitor-item__percentage"},Za={key:1,class:"of-monitor-item__count"},Gt=N(e.defineComponent({name:"MonitorItem",inheritAttrs:!1,__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))),l=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)"})),s=e.computed(()=>({width:`${r.value}%`,background:l.value}));function d(){n.clickable&&a("click")}return(i,f)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:["of-monitor-item",{"of-monitor-item--clickable":t.clickable}]},i.$attrs,{onClick:d}),[t.subtitle!==void 0?(e.openBlock(),e.createElementBlock("div",Ha,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("",!0),e.createElementVNode("div",qa,e.toDisplayString(t.label),1),e.createElementVNode("div",Wa,[e.createElementVNode("div",{class:"of-monitor-item__track",style:e.normalizeStyle(c.value)},[e.createElementVNode("div",{class:"of-monitor-item__fill",style:e.normalizeStyle(s.value)},null,4)],4)]),e.createElementVNode("div",Ya,e.toDisplayString(r.value)+"%",1),t.count!==void 0?(e.openBlock(),e.createElementBlock("div",Za,e.toDisplayString(t.count),1)):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-ce396706"]]),ja={class:"of-persona-card__body"},Xa={class:"of-persona-card__name-row"},Qa={key:0,class:"of-persona-card__title-badge"},Ja={key:1,class:"of-persona-card__tags"},el={class:"of-persona-card__right"},tl={key:0,class:"of-persona-card__done-mark"},nl={class:"of-persona-card__chevron"},ol={key:0,class:"of-persona-card__detail"},Ht=N(e.defineComponent({name:"PersonaCard",inheritAttrs:!1,__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=[{accent:"var(--of-color-warning)",bg:"var(--of-color-warning-light)",border:"var(--of-badge-orange-border)",tagBg:"var(--of-badge-orange-bg)"},{accent:"var(--of-color-primary-500)",bg:"var(--of-color-primary-50)",border:"var(--of-color-primary-200)",tagBg:"var(--of-color-primary-100)"},{accent:"var(--of-role-pm-text)",bg:"var(--of-role-pm-bg)",border:"var(--of-badge-red-border)",tagBg:"var(--of-badge-red-bg)"},{accent:"var(--of-color-success)",bg:"var(--of-color-success-light)",border:"var(--of-badge-green-border)",tagBg:"var(--of-badge-green-bg)"},{accent:"var(--of-color-info)",bg:"var(--of-color-info-light)",border:"var(--of-badge-blue-border)",tagBg:"var(--of-badge-blue-bg)"},{accent:"var(--of-role-arch-text)",bg:"var(--of-role-arch-bg)",border:"var(--of-badge-purple-border)",tagBg:"var(--of-badge-purple-bg)"},{accent:"var(--of-color-error)",bg:"var(--of-color-error-light)",border:"var(--of-badge-red-border)",tagBg:"var(--of-badge-red-bg)"},{accent:"var(--of-role-fe-text)",bg:"var(--of-role-fe-bg)",border:"var(--of-badge-green-border)",tagBg:"var(--of-badge-green-bg)"}];function l(k){let y=0;for(let $=0;$<k.length;$++)y=(y<<5)-y+k.charCodeAt($),y|=0;return Math.abs(y)}const c=e.computed(()=>{if(n.color){const k=n.color.replace("#","");return{accent:n.color,bg:`#${k}24`,border:`#${k}52`,tagBg:`#${k}1a`}}return r[l(n.name)%r.length]}),s=e.computed(()=>n.size==="sm"?24:32),d=e.computed(()=>n.size==="sm"?12:16),i=e.computed(()=>n.size==="sm"?12:13),f=e.computed(()=>n.size==="sm"?11:12),m=e.computed(()=>{if(n.icon)return n.icon;const k=n.name.trim();return k?k.charAt(0):"?"}),u=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}]),p=e.computed(()=>({"--pc-accent":c.value.accent,"--pc-accent-bg":c.value.bg,"--pc-accent-border":c.value.border,"--pc-accent-tag-bg":c.value.tagBg})),g=e.computed(()=>({width:`${s.value}px`,height:`${s.value}px`,fontSize:`${d.value}px`}));function _(){n.disabled||(a("update:expanded",!n.expanded),a("click"))}return(k,y)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:u.value,style:p.value},k.$attrs),[e.createElementVNode("div",{class:"of-persona-card__header",onClick:_},[e.createElementVNode("span",{class:"of-persona-card__avatar",style:e.normalizeStyle(g.value)},e.toDisplayString(m.value),5),e.createElementVNode("div",ja,[e.createElementVNode("div",Xa,[e.createElementVNode("span",{class:"of-persona-card__name",style:e.normalizeStyle({fontSize:`${i.value}px`})},e.toDisplayString(t.name),5),e.renderSlot(k.$slots,"badge",{},void 0,!0),t.title?(e.openBlock(),e.createElementBlock("span",Qa,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:`${f.value}px`})},e.toDisplayString(t.subtitle),5)):e.createCommentVNode("",!0),t.tags&&t.tags.length>0?(e.openBlock(),e.createElementBlock("div",Ja,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tags,$=>(e.openBlock(),e.createElementBlock("span",{key:$,class:"of-persona-card__tag"},e.toDisplayString($),1))),128))])):e.createCommentVNode("",!0)]),e.createElementVNode("div",el,[e.renderSlot(k.$slots,"actions",{},void 0,!0),t.done?(e.openBlock(),e.createElementBlock("span",tl,"✓")):e.createCommentVNode("",!0),e.createElementVNode("span",nl,e.toDisplayString(t.expanded?"▲":"▼"),1)])]),t.expanded?(e.openBlock(),e.createElementBlock("div",ol,[e.renderSlot(k.$slots,"default",{},void 0,!0)])):e.createCommentVNode("",!0)],16))}}),[["__scopeId","data-v-88e46628"]]);function al(){const t=e.ref(!1),o=e.ref(!1);function n(){const a=window.innerWidth;t.value=a<768,o.value=a>=768&&a<1024}return e.onMounted(()=>{n(),window.addEventListener("resize",n,{passive:!0})}),e.onUnmounted(()=>{window.removeEventListener("resize",n)}),{isMobile:t,isTablet:o,isDesktop:e.ref(!0)}}const ll={class:"of-app-layout__navbar"},rl=["aria-expanded"],sl={class:"of-app-layout__body"},cl={key:0,class:"of-app-layout__sidebar"},il={class:"of-app-layout__main"},dl={class:"of-app-layout__statusbar"},qt=N(e.defineComponent({__name:"AppLayout",props:{density:{default:"comfortable"}},setup(t){const o=t,{isMobile:n,isTablet:a}=al();e.provide("isMobile",n),e.provide("isTablet",a),e.provide("density",e.computed(()=>o.density));const r=e.ref(!1),l=e.ref(null);let c=null;function s(){return l.value?Array.from(l.value.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"]), a[href]')).filter(u=>!u.closest('[aria-hidden="true"]')):[]}function d(u){if(u.key!=="Tab")return;const p=s();if(p.length===0){u.preventDefault();return}const g=p[0],_=p[p.length-1];u.shiftKey?document.activeElement===g&&(u.preventDefault(),_.focus()):document.activeElement===_&&(u.preventDefault(),g.focus())}function i(){const u=!r.value;r.value=u,u?(c=document.activeElement,e.nextTick(()=>{const p=s();p.length&&p[0].focus(),document.addEventListener("keydown",d),document.addEventListener("keydown",m)})):(document.removeEventListener("keydown",d),document.removeEventListener("keydown",m),c==null||c.focus(),c=null)}function f(){r.value=!1,document.removeEventListener("keydown",d),document.removeEventListener("keydown",m),c==null||c.focus(),c=null}function m(u){u.key==="Escape"&&f()}return e.onBeforeUnmount(()=>{document.removeEventListener("keydown",d),document.removeEventListener("keydown",m)}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-app-layout",{"of-density-compact":t.density==="compact"}])},[e.createElementVNode("header",ll,[e.unref(n)?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-app-layout__hamburger","aria-label":"Toggle sidebar","aria-expanded":r.value,onClick:i}," ☰ ",8,rl)):e.createCommentVNode("",!0),e.renderSlot(u.$slots,"navbar",{},void 0,!0)]),e.createElementVNode("div",sl,[e.unref(n)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("aside",cl,[e.renderSlot(u.$slots,"sidebar",{},void 0,!0)])),e.unref(n)?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[r.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-drawer-overlay","aria-hidden":"true",onClick:f})):e.createCommentVNode("",!0),e.createElementVNode("aside",{ref_key:"drawerNavRef",ref:l,class:e.normalizeClass(["of-drawer-sidebar",{"of-drawer-sidebar--open":r.value}]),role:"dialog","aria-modal":"true","aria-label":"导航菜单"},[e.renderSlot(u.$slots,"sidebar",{},void 0,!0)],2)],64)):e.createCommentVNode("",!0),e.createElementVNode("main",il,[e.renderSlot(u.$slots,"default",{},void 0,!0)])]),e.createElementVNode("footer",dl,[e.renderSlot(u.$slots,"statusbar",{},void 0,!0)])],2))}}),[["__scopeId","data-v-4bb400e7"]]),ml={class:"of-navbar__left"},fl={class:"of-navbar__center"},ul={class:"of-navbar__search"},pl=["placeholder"],gl={class:"of-navbar__right"},bl={key:0,class:"of-navbar__notify-badge"},Wt=N(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=e.inject("density"),a=e.computed(()=>(n==null?void 0:n.value)??"comfortable"),r=t,l=o,c=e.computed(()=>r.username?r.username.charAt(0).toUpperCase():"U");function s(f){l("search",f.target.value)}function d(){l("notify-click")}function i(){l("avatar-click")}return(f,m)=>(e.openBlock(),e.createElementBlock("nav",{class:e.normalizeClass(["of-navbar",{"of-navbar--compact":a.value==="compact"}])},[e.createElementVNode("div",ml,[e.renderSlot(f.$slots,"logo",{},()=>[m[0]||(m[0]=e.createElementVNode("span",{class:"of-navbar__logo-default"},"OneFlow",-1))],!0)]),e.createElementVNode("div",fl,[e.createElementVNode("div",ul,[e.createVNode(e.unref(M.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,pl)])]),e.createElementVNode("div",gl,[e.createElementVNode("button",{class:"of-navbar__notify-btn",onClick:d},[e.createVNode(e.unref(M.BellIcon),{class:"of-navbar__notify-icon",size:16}),t.notifyCount&&t.notifyCount>0?(e.openBlock(),e.createElementBlock("span",bl,e.toDisplayString(t.notifyCount>99?"99+":t.notifyCount),1)):e.createCommentVNode("",!0)]),e.createElementVNode("button",{class:"of-navbar__avatar",onClick:i},e.toDisplayString(c.value),1)])],2))}}),[["__scopeId","data-v-7187692f"]]),_l={key:0,class:"of-sidebar__header"},yl={class:"of-sidebar__nav"},kl=["onClick"],hl={class:"of-sidebar__item-label"},El={key:1,class:"of-sidebar__item-badge"},Bl={key:0,class:"of-sidebar__children"},Cl=["onClick"],Sl={class:"of-sidebar__item-label"},wl={key:1,class:"of-sidebar__item-badge"},Nl={key:1,class:"of-sidebar__footer"},Yt=N(e.defineComponent({__name:"Sidebar",props:{items:{}},emits:["item-click"],setup(t,{emit:o}){const n=e.inject("density"),a=e.computed(()=>(n==null?void 0:n.value)??"comfortable"),r=o,l=e.ref(new Set);function c(i){l.value.has(i.id)?l.value.delete(i.id):l.value.add(i.id)}function s(i){i.children&&i.children.length>0&&c(i),r("item-click",i)}function d(i){return l.value.has(i.id)}return(i,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-sidebar",{"of-sidebar--compact":a.value==="compact"}])},[i.$slots.header?(e.openBlock(),e.createElementBlock("div",_l,[e.renderSlot(i.$slots,"header",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("nav",yl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,m=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.id},[e.createElementVNode("button",{class:e.normalizeClass(["of-sidebar__item",{"of-sidebar__item--active":m.active}]),onClick:u=>s(m)},[m.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(m.icon)),{key:0,class:"of-sidebar__item-icon",size:15})):e.createCommentVNode("",!0),e.createElementVNode("span",hl,e.toDisplayString(m.label),1),m.badge!==void 0?(e.openBlock(),e.createElementBlock("span",El,e.toDisplayString(m.badge),1)):e.createCommentVNode("",!0),m.children&&m.children.length>0?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(m)?e.unref(M.ChevronDownIcon):e.unref(M.ChevronRightIcon)),{key:2,class:"of-sidebar__item-chevron",size:13})):e.createCommentVNode("",!0)],10,kl),m.children&&m.children.length>0&&d(m)?(e.openBlock(),e.createElementBlock("div",Bl,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.children,u=>(e.openBlock(),e.createElementBlock("button",{key:u.id,class:e.normalizeClass(["of-sidebar__item of-sidebar__item--child",{"of-sidebar__item--active":u.active}]),onClick:p=>r("item-click",u)},[u.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(u.icon)),{key:0,class:"of-sidebar__item-icon",size:14})):e.createCommentVNode("",!0),e.createElementVNode("span",Sl,e.toDisplayString(u.label),1),u.badge!==void 0?(e.openBlock(),e.createElementBlock("span",wl,e.toDisplayString(u.badge),1)):e.createCommentVNode("",!0)],10,Cl))),128))])):e.createCommentVNode("",!0)],64))),128))]),i.$slots.footer?(e.openBlock(),e.createElementBlock("div",Nl,[e.renderSlot(i.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],2))}}),[["__scopeId","data-v-9dd6ae54"]]),$l={class:"of-statusbar"},xl={class:"of-statusbar__left"},Dl={class:"of-statusbar__sync-text"},Tl={class:"of-statusbar__right"},Vl={key:0,class:"of-statusbar__shortcuts"},Al={class:"of-statusbar__version"},Zt=N(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",$l,[e.createElementVNode("div",xl,[t.synced?(e.openBlock(),e.createBlock(e.unref(M.CircleCheckIcon),{key:0,class:"of-statusbar__sync-icon of-statusbar__sync-icon--ok",size:13})):(e.openBlock(),e.createBlock(e.unref(M.CircleAlertIcon),{key:1,class:"of-statusbar__sync-icon of-statusbar__sync-icon--warn",size:13})),e.createElementVNode("span",Dl,e.toDisplayString(t.synced?"所有更改已同步":"同步中..."),1)]),n[0]||(n[0]=e.createElementVNode("div",{class:"of-statusbar__spacer"},null,-1)),e.createElementVNode("div",Tl,[t.shortcuts?(e.openBlock(),e.createElementBlock("span",Vl,e.toDisplayString(t.shortcuts),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Al,e.toDisplayString(t.version),1)])]))}}),[["__scopeId","data-v-06dfdfe7"]]),Ml={class:"of-table-header"},Rl={key:0,class:"of-th of-th-checkbox"},Il=["checked","indeterminate"],Ol=["aria-sort","onClick"],Ll={class:"of-th-label"},zl={class:"of-th-sort-icon"},Fe=N(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=o;function a(l){if(l.width==="fill"){const c=`${l.minWidth??220}px`;return{flex:`1 1 ${c}`,minWidth:c}}return{width:`${l.width}px`,flexShrink:"0",flexGrow:"0"}}function r(l){n("sort",l)}return(l,c)=>(e.openBlock(),e.createElementBlock("div",Ml,[t.selectable?(e.openBlock(),e.createElementBlock("div",Rl,[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.allSelected,indeterminate:t.indeterminate,onChange:c[0]||(c[0]=s=>n("select-all"))},null,40,Il)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,s=>(e.openBlock(),e.createElementBlock("div",{key:s.key,role:"columnheader",class:e.normalizeClass(["of-th",{"of-th--sortable":!0,"of-th--active":t.sortKey===s.key}]),style:e.normalizeStyle(a(s)),"aria-sort":t.sortKey===s.key?t.sortOrder==="asc"?"ascending":"descending":"none",onClick:d=>r(s.key)},[e.createElementVNode("span",Ll,e.toDisplayString(s.label),1),e.createElementVNode("span",zl,[t.sortKey===s.key&&t.sortOrder==="asc"?(e.openBlock(),e.createBlock(e.unref(M.ChevronUp),{key:0,size:12,class:"of-sort-icon-active"})):t.sortKey===s.key&&t.sortOrder==="desc"?(e.openBlock(),e.createBlock(e.unref(M.ChevronDown),{key:1,size:12,class:"of-sort-icon-active"})):(e.openBlock(),e.createBlock(e.unref(M.ChevronDown),{key:2,size:12,class:"of-sort-icon-idle"}))])],14,Ol))),128))]))}}),[["__scopeId","data-v-5f75e88a"]]),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:"已完成"}},Pl={text:"var(--of-badge-gray-text)",bg:"var(--of-badge-gray-bg)"};function ne(t,o){const n=o[t]??Pl;return{style:{color:n.text,background:n.bg},label:n.label??t,dot:n.dot}}function oe(t,o){return o?{...t,...o}:t}function Fl(){return{DEFAULT_PRIORITY_MAP:fe,DEFAULT_STATUS_MAP:ce,resolveBadge:ne,mergeColorMap:oe}}const Ul=["checked"],vl={key:0,class:"of-badge of-badge--role"},Kl={key:1,class:"of-td-empty"},Gl={key:3,class:"of-td-text"},Hl={key:4,class:"of-td-id"},ql={key:5,class:"of-td-title"},Wl={key:6,class:"of-td-text"},Ee=N(e.defineComponent({__name:"TableDataRow",props:{row:{},rowKey:{default:"id"},selected:{type:Boolean,default:!1},selectable:{type:Boolean,default:!0},columns:{},priorityColorMap:{},statusColorMap:{}},emits:["select","click"],setup(t,{emit:o}){const n=t,a=o;function r(g){if(g.width==="fill"){const _=`${g.minWidth??220}px`;return{flex:`1 1 ${_}`,minWidth:_}}return{width:`${g.width}px`,flexShrink:"0",flexGrow:"0"}}const l=e.computed(()=>oe(fe,n.priorityColorMap)),c=e.computed(()=>oe(ce,n.statusColorMap));function s(g){return ne(g,l.value)}function d(g){return ne(g,c.value)}function i(g){if(!g)return"-";const _=new Date(g);return isNaN(_.getTime())?g:`${_.getMonth()+1}/${_.getDate()}`}function f(g){return n.row[g.key]}function m(g){const _=f(g);return _!=null?String(_):"-"}function u(g){const _=f(g);return typeof _=="string"?_:""}function p(){const g=n.row[n.rowKey];return g!=null?String(g):""}return(g,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-table-row",{"of-table-row--selected":t.selected}]),onClick:_[2]||(_[2]=k=>a("click",t.row))},[t.selectable?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-td of-td-checkbox",onClick:_[1]||(_[1]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("input",{type:"checkbox",class:"of-checkbox",checked:t.selected,onChange:_[0]||(_[0]=k=>a("select",p()))},null,40,Ul)])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,k=>(e.openBlock(),e.createElementBlock("div",{key:k.key,class:"of-td",style:e.normalizeStyle(r(k))},[e.renderSlot(g.$slots,"cell",{row:t.row,col:k},()=>[k.key==="status"?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-badge",style:e.normalizeStyle(d(u(k)).style)},e.toDisplayString(d(u(k)).label),5)):k.key==="priority"?(e.openBlock(),e.createElementBlock("span",{key:1,class:"of-badge",style:e.normalizeStyle(s(u(k)).style)},e.toDisplayString(s(u(k)).label),5)):k.key==="role"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[u(k)?(e.openBlock(),e.createElementBlock("span",vl,e.toDisplayString(u(k)),1)):(e.openBlock(),e.createElementBlock("span",Kl,"-"))],64)):k.key==="updatedAt"?(e.openBlock(),e.createElementBlock("span",Gl,e.toDisplayString(i(u(k))),1)):k.key==="id"?(e.openBlock(),e.createElementBlock("span",Hl,e.toDisplayString(p()),1)):k.key==="title"?(e.openBlock(),e.createElementBlock("span",ql,e.toDisplayString(m(k)),1)):(e.openBlock(),e.createElementBlock("span",Wl,e.toDisplayString(m(k)),1))],!0)],4))),128))],2))}}),[["__scopeId","data-v-fe10199c"]]),Yl={key:0,class:"of-table-group-row__checkbox-spacer"},Zl={key:2,class:"of-table-group-row__label"},jl={class:"of-table-group-row__count"},Be=N(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?ne(n.groupKey,n.colorMap):null),l=e.computed(()=>n.groupKey||"(空)");return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:"of-table-group-row",onClick:s[0]||(s[0]=d=>a("toggle"))},[t.selectable?(e.openBlock(),e.createElementBlock("div",Yl)):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",Zl,e.toDisplayString(l.value),1)),e.createElementVNode("span",jl,"("+e.toDisplayString(t.count)+")",1)]))}}),[["__scopeId","data-v-3d4c6532"]]),Ue=N(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]=l=>n("click"))},[e.createVNode(e.unref(M.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 ve(){function t(r,l){re.value={rowId:r,fieldId:l}}function o(r,l,c){var s,d;return((s=re.value)==null?void 0:s.rowId)===r&&((d=re.value)==null?void 0:d.fieldId)===l&&(re.value=null),c}function n(){re.value=null}function a(r,l){var c,s;return((c=re.value)==null?void 0:c.rowId)===r&&((s=re.value)==null?void 0:s.fieldId)===l}return{editingCell:e.readonly(re),activate:t,commit:o,cancel:n,isEditing:a}}const Xl={key:1,class:"of-field-cell__display"},Ce=N(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:l,commit:c,cancel:s}=ve(),d=e.computed(()=>r(n.rowId,n.field.id)),i=e.computed(()=>n.readonly||n.field.readonly);function f(){i.value||l(n.rowId,n.field.id)}function m(y){c(n.rowId,n.field.id,y),a("commit",n.rowId,n.field.id,y)}function u(){s(),a("cancel")}function p(){a("tabNext")}const g={text:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Wm)),number:e.defineAsyncComponent(()=>Promise.resolve().then(()=>Ym)),checkbox:e.defineAsyncComponent(()=>Promise.resolve().then(()=>jm)),select:e.defineAsyncComponent(()=>Promise.resolve().then(()=>ef)),multiselect:e.defineAsyncComponent(()=>Promise.resolve().then(()=>sf)),date:e.defineAsyncComponent(()=>Promise.resolve().then(()=>cf)),datetime:e.defineAsyncComponent(()=>Promise.resolve().then(()=>df)),rating:e.defineAsyncComponent(()=>Promise.resolve().then(()=>ff)),url:e.defineAsyncComponent(()=>Promise.resolve().then(()=>uf)),email:e.defineAsyncComponent(()=>Promise.resolve().then(()=>pf))},_=e.computed(()=>g[n.field.type]),k=e.computed(()=>{const y=n.value;return y==null||y===""?"—":Array.isArray(y)?y.join(", "):typeof y=="boolean"?y?"✓":"—":String(y)});return(y,$)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-field-cell",{"of-field-cell--editing":d.value,"of-field-cell--readonly":i.value}]),onClick:f},[d.value?(e.openBlock(),e.createBlock(e.Suspense,{key:0},{fallback:e.withCtx(()=>[...$[0]||($[0]=[e.createElementVNode("span",{class:"of-field-cell__loading"},"...",-1)])]),default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_.value),{value:t.value,field:t.field,onCommit:m,onCancel:u,onTabNext:p},null,40,["value","field"]))]),_:1})):(e.openBlock(),e.createElementBlock("span",Xl,e.toDisplayString(k.value),1))],2))}}),[["__scopeId","data-v-f3efd289"]]);function Se({items:t,itemHeight:o,overscan:n=5,containerRef:a}){const r=e.ref(0),l=e.ref(0),c=typeof o=="number",s=Math.max(0,n);let d=null,i=null;const f=e.computed(()=>{if(c)return[];const b=new Array(t.value.length+1).fill(0),w=o;for(let x=0;x<t.value.length;x+=1)b[x+1]=b[x]+Math.max(0,w(x));return b}),m=e.computed(()=>c?t.value.length*o:f.value[t.value.length]??0);function u(b){const w=Math.max(0,Math.min(b,t.value.length));return c?w*o:f.value[w]??0}function p(b){if(t.value.length===0)return 0;if(c){const G=o;return Math.max(0,Math.min(t.value.length-1,Math.floor(Math.max(0,b)/G)))}const w=f.value;let x=0,O=t.value.length;for(;x<O;){const G=Math.floor((x+O)/2);w[G+1]<=b?x=G+1:O=G}return Math.max(0,Math.min(x,t.value.length-1))}const g=e.computed(()=>{const b=t.value.length;if(b===0)return{start:0,end:0};if(l.value<=0)return{start:0,end:Math.min(b,s*2+1)};if(c){const K=o,v=Math.floor(r.value/K),te=Math.ceil(l.value/K),B=Math.max(0,v-s),V=Math.min(b,v+te+s);return{start:B,end:V}}const w=Math.max(0,r.value),x=w+l.value,O=p(w),G=Math.min(b-1,p(x));return{start:Math.max(0,O-s),end:Math.min(b,G+s+1)}}),_=e.computed(()=>u(g.value.start)),k=e.computed(()=>{const{start:b,end:w}=g.value;return t.value.slice(b,w).map((x,O)=>({data:x,index:b+O}))});function y(b){if(!b){r.value=0,l.value=0;return}r.value=b.scrollTop,l.value=b.clientHeight}function $(){i&&(r.value=i.scrollTop)}function h(){d==null||d.disconnect(),d=null}function C(b){b&&b.removeEventListener("scroll",$)}function S(b){if(!b){i=null,y(null);return}i=b,b.addEventListener("scroll",$,{passive:!0}),y(b),typeof ResizeObserver<"u"&&(d=new ResizeObserver(()=>{y(b)}),d.observe(b))}e.watch(a,(b,w)=>{C(w),h(),S(b)},{immediate:!0}),e.watch(t,()=>{const b=Math.max(0,m.value-l.value);r.value>b&&(r.value=b,i&&(i.scrollTop=b))});function D(b){if(!i||t.value.length===0)return;const w=Math.max(0,Math.min(b,t.value.length-1)),x=u(w);i.scrollTop=x,r.value=x}function q(){if(!i)return;const b=Math.max(0,m.value-i.clientHeight);i.scrollTop=b,r.value=b}return e.onUnmounted(()=>{C(i),h(),i=null}),{visibleItems:k,totalHeight:m,offsetY:_,scrollToIndex:D,scrollToBottom:q}}let jt=!1;function Xt(t={}){const o=e.shallowRef(t.data??[]),n=e.ref(!1),a=e.ref(null),r=e.ref(new Set),l=e.ref({field:null,order:null}),c=e.ref({page:1,pageSize:t.pageSize??20,total:(t.data??[]).length});function s(b){l.value.field===b?(l.value.order=l.value.order==="asc"?"desc":l.value.order==="desc"?null:"asc",l.value.order===null&&(l.value.field=null)):(l.value.field=b,l.value.order="asc"),c.value.page=1,r.value.clear(),t.serverSide&&S()}function d(b,w){l.value={field:b,order:w},c.value.page=1,r.value.clear(),t.serverSide&&S()}function i(b){if(!l.value.field||!l.value.order)return b;const w=l.value.field,x=l.value.order;return[...b].sort((O,G)=>{const K=O[w],v=G[w];if(K==null&&v==null)return 0;if(K==null)return 1;if(v==null)return-1;if(typeof K=="number"&&typeof v=="number")return x==="asc"?K-v:v-K;const te=String(K),B=String(v);return x==="asc"?te.localeCompare(B):B.localeCompare(te)})}function f(b){c.value.page=Math.max(1,Math.min(b,u.value)),t.serverSide&&S()}function m(b){c.value.pageSize=b,c.value.page=1,t.serverSide&&S()}const u=e.computed(()=>Math.max(1,Math.ceil(c.value.total/c.value.pageSize))),p=e.computed(()=>{if(t.serverSide)return o.value;const b=i(o.value);c.value.total=b.length;const{page:w,pageSize:x}=c.value;return b.slice((w-1)*x,w*x)});function g(b,w){const x=b.id;return x==null&&!jt&&(jt=!0,console.warn("[OneUI] DataTable: row is missing an `id` field. Row selection may behave incorrectly after sorting or filtering. Please ensure each row has a unique `id` property.")),x??w}function _(b,w){const x=g(b,w);r.value.has(x)?r.value.delete(x):r.value.add(x)}function k(b){r.value.size===b.length?r.value.clear():b.forEach((w,x)=>r.value.add(g(w,x)))}function y(b,w){return r.value.has(g(b,w))}function $(){r.value.clear()}const h=e.computed(()=>r.value.size),C=e.computed(()=>p.value.length>0&&r.value.size===p.value.length);async function S(){if(t.onFetch){n.value=!0,a.value=null;try{const b=await t.onFetch({page:c.value.page,pageSize:c.value.pageSize,sort:l.value});o.value=b.data,e.triggerRef(o),c.value.total=b.total}catch(b){a.value=b}finally{n.value=!1}}}function D(){t.serverSide?S():c.value.page=1}function q(b){o.value=b,e.triggerRef(o),c.value.page=1,t.serverSide||(c.value.total=b.length)}return{data:p,rawData:e.readonly(o),loading:e.readonly(n),error:e.readonly(a),sort:e.readonly(l),pagination:e.readonly(c),totalPages:u,selectedRows:e.readonly(r),selectedCount:h,isAllSelected:C,toggleSort:s,setSort:d,setPage:f,setPageSize:m,toggleRowSelection:_,toggleSelectAll:k,isRowSelected:y,clearSelection:$,refresh:D,fetchData:S,setData:q}}function Ql(t){const o=e.ref(new Set);function n(l){const c=new Set(o.value);c.has(l)?c.delete(l):c.add(l),o.value=c}e.watch(t.groupBy,()=>{o.value=new Set});const a=e.computed(()=>{const l=t.data.value,c=t.groupBy.value;if(!c)return l.map(m=>({...m,__type:"data-row"}));const s=[],d=new Map;for(const m of l){const u=m[c],p=u!=null?String(u):"";d.has(p)||(s.push(p),d.set(p,[])),d.get(p).push(m)}const i=[],f=o.value;for(const m of s){const u=d.get(m);if(i.push({__type:"group-header",__groupKey:m,__groupCount:u.length,id:`__group__${m}`}),!f.has(m))for(const p of u)i.push({...p,__type:"data-row"})}return i});function r(l){return l&&l.__type==="group-header"}return{groupedItems:a,collapsedGroups:o,toggleGroup:n,isGroupHeader:r}}function Jl(t){return{rows:e.computed(()=>{var n,a,r;return(a=(n=t.records)==null?void 0:n.value)!=null&&a.length?t.records.value.map(l=>({id:l.id,...l.fields,createdAt:l.createdAt,updatedAt:l.updatedAt,__record:l})):((r=t.tasks)==null?void 0:r.value)??[]})}}const er=[{key:"id",label:"任务ID",width:100,align:"left"},{key:"title",label:"标题",width:"fill",minWidth:220,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"}];function tr(t){return t.type==="number"||t.type==="date"?t.type:t.type==="select"?"status":"string"}function nr(t){return{key:t.id,label:t.name,width:t.width,type:tr(t)}}function or(t){return{columns:e.computed(()=>{var n,a,r,l,c,s,d,i;return(a=(n=t.columns)==null?void 0:n.value)!=null&&a.length?t.columns.value:(c=(l=(r=t.schema)==null?void 0:r.value)==null?void 0:l.fields)!=null&&c.length?((i=(d=(s=t.view)==null?void 0:s.value)==null?void 0:d.visibleFields)!=null&&i.length?t.schema.value.fields.filter(m=>t.view.value.visibleFields.includes(m.id)):t.schema.value.fields).filter(m=>!m.hidden).map(nr):er})}}const ar={class:"of-data-table",role:"grid"},lr=36,rr=44,Qt=N(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:{},virtual:{type:Boolean},virtualThreshold:{default:100},readonly:{type:Boolean,default:!1}},emits:["row-click","row-click-record","add-row","selection-change","cell-edit"],setup(t,{emit:o}){const n=t,a=o,{commit:r}=ve(),{rows:l}=Jl({tasks:e.toRef(n,"tasks"),records:e.toRef(n,"records")}),{columns:c}=or({columns:e.toRef(n,"columns"),schema:e.toRef(n,"schema"),view:e.toRef(n,"view")}),{data:s,sort:d,toggleSort:i,selectedRows:f,toggleSelectAll:m,toggleRowSelection:u,isAllSelected:p,setData:g}=Xt({data:l.value,pageSize:999999});e.watch(l,R=>{g(R)},{deep:!1});const{groupedItems:_,collapsedGroups:k,toggleGroup:y,isGroupHeader:$}=Ql({data:s,groupBy:e.toRef(n,"groupBy")}),h=e.ref(null),C=e.computed(()=>n.virtual!==void 0?n.virtual:_.value.length>=n.virtualThreshold),{visibleItems:S,totalHeight:D,offsetY:q}=Se({items:_,itemHeight:R=>{const P=_.value[R];return $(P)?lr:rr},overscan:5,containerRef:h}),b=e.computed(()=>n.readonly?!1:n.selectable),w=e.computed(()=>n.readonly?!1:n.addable),x=e.computed(()=>Array.from(f.value)),O=e.computed(()=>f.value.size>0&&!p.value);function G(){m(s.value)}function K(R){const P=s.value.find(U=>U[n.rowKey]===R);P&&u(P,0)}e.watch(x,R=>{a("selection-change",R)},{immediate:!1});function v(R){const P=R[n.rowKey];return P!=null?String(P):""}function te(R){var P;return((P=n.fieldDefs)==null?void 0:P.find(U=>U.id===R))??{id:R,type:"text",label:R}}function B(R,P,U){r(R,P,U),a("cell-edit",{rowId:R,fieldId:P,value:U})}function V(R){const P=R;if(P.__record){a("row-click-record",P.__record),a("row-click",P.__record);return}a("row-click",R)}function A(R){return{groupKey:R.__groupKey,count:R.__groupCount,collapsed:k.value.has(R.__groupKey),colorMap:n.groupColorMap,selectable:b.value}}function L(R){return{row:R,rowKey:n.rowKey,selected:f.value.has(v(R)),selectable:b.value,columns:c.value,priorityColorMap:n.priorityColorMap,statusColorMap:n.statusColorMap}}return(R,P)=>(e.openBlock(),e.createElementBlock("div",ar,[e.createVNode(Fe,{columns:e.unref(c),selectable:b.value,"sort-key":e.unref(d).field??"","sort-order":e.unref(d).order??"asc","all-selected":e.unref(p),indeterminate:O.value,onSort:e.unref(i),onSelectAll:G},null,8,["columns","selectable","sort-key","sort-order","all-selected","indeterminate","onSort"]),e.createElementVNode("div",{ref_key:"scrollContainerRef",ref:h,class:"of-data-table-scroll-container"},[C.value?(e.openBlock(),e.createElementBlock("div",{key:0,style:e.normalizeStyle({height:e.unref(D)+"px",position:"relative"})},[e.createElementVNode("div",{style:e.normalizeStyle({transform:`translateY(${e.unref(q)}px)`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(S),({data:U})=>{var Q;return e.openBlock(),e.createElementBlock(e.Fragment,{key:U.id},[e.unref($)(U)?(e.openBlock(),e.createBlock(Be,e.mergeProps({key:0,ref_for:!0},A(U),{onToggle:Z=>e.unref(y)(U.__groupKey)}),null,16,["onToggle"])):(e.openBlock(),e.createBlock(Ee,e.mergeProps({key:1,ref_for:!0},L(U),{onSelect:K,onClick:Z=>V(U)}),e.createSlots({_:2},[(Q=t.fieldDefs)!=null&&Q.length?{name:"cell",fn:e.withCtx(({row:Z,col:J})=>[e.createVNode(Ce,{"row-id":v(Z),field:te(J.key),value:Z[J.key],onCommit:B},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1040,["onClick"]))],64)}),128))],4)],4)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(_),U=>{var Q;return e.openBlock(),e.createElementBlock(e.Fragment,{key:U.id},[e.unref($)(U)?(e.openBlock(),e.createBlock(Be,e.mergeProps({key:0,ref_for:!0},A(U),{onToggle:Z=>e.unref(y)(U.__groupKey)}),null,16,["onToggle"])):(e.openBlock(),e.createBlock(Ee,e.mergeProps({key:1,ref_for:!0},L(U),{onSelect:K,onClick:Z=>V(U)}),e.createSlots({_:2},[(Q=t.fieldDefs)!=null&&Q.length?{name:"cell",fn:e.withCtx(({row:Z,col:J})=>[e.createVNode(Ce,{"row-id":v(Z),field:te(J.key),value:Z[J.key],onCommit:B},null,8,["row-id","field","value"])]),key:"0"}:void 0]),1040,["onClick"]))],64)}),128))],512),w.value?(e.openBlock(),e.createBlock(Ue,{key:0,onClick:P[0]||(P[0]=U=>a("add-row"))})):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-85a23061"]]),sr={key:0,class:"of-filter-panel"},cr={class:"of-filter-panel__header"},ir={key:0,class:"of-filter-panel__empty"},dr={key:1,class:"of-filter-panel__conditions"},mr={key:0,class:"of-filter-condition__logic-label"},fr={key:1,class:"of-filter-condition__logic-group"},ur=["value","onChange"],pr=["value"],gr=["value","onChange"],br=["value"],_r=["value","onInput"],yr={key:3,class:"of-filter-condition__no-value"},kr=["onClick"],hr={class:"of-filter-panel__footer"},Jt=N(e.defineComponent({__name:"TableFilterPanel",props:{columns:{},conditions:{},logic:{},visible:{type:Boolean,default:!0}},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 l(i){var f;return(f=n.columns.find(m=>m.key===i))==null?void 0:f.type}function c(i){return l(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 s=["is_empty","is_not_empty"];function d(i){return s.includes(i)}return(i,f)=>t.visible?(e.openBlock(),e.createElementBlock("div",sr,[e.createElementVNode("div",cr,[f[5]||(f[5]=e.createElementVNode("span",{class:"of-filter-panel__title"},"筛选",-1)),e.createElementVNode("button",{class:"of-filter-panel__close",onClick:f[0]||(f[0]=m=>a("close"))},[e.createVNode(e.unref(M.X),{size:14})])]),t.conditions.length===0?(e.openBlock(),e.createElementBlock("div",ir," 暂无筛选条件,点击下方添加 ")):(e.openBlock(),e.createElementBlock("div",dr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.conditions,(m,u)=>(e.openBlock(),e.createElementBlock("div",{key:m.id,class:"of-filter-condition"},[u===0?(e.openBlock(),e.createElementBlock("span",mr,"当")):(e.openBlock(),e.createElementBlock("span",fr,[e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="and"}]),onClick:f[1]||(f[1]=p=>a("update:logic","and"))}," 且 ",2),e.createElementVNode("button",{class:e.normalizeClass(["of-filter-condition__logic-btn",{active:t.logic==="or"}]),onClick:f[2]||(f[2]=p=>a("update:logic","or"))}," 或 ",2)])),e.createElementVNode("select",{class:"of-filter-condition__select of-filter-condition__select--field",value:m.field,onChange:p=>a("update-condition",m.id,{field:p.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,p=>(e.openBlock(),e.createElementBlock("option",{key:p.key,value:p.key},e.toDisplayString(p.label),9,pr))),128))],40,ur),e.createElementVNode("select",{class:"of-filter-condition__select",value:m.operator,onChange:p=>a("update-condition",m.id,{operator:p.target.value})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c(m.field),p=>(e.openBlock(),e.createElementBlock("option",{key:p.value,value:p.value},e.toDisplayString(p.label),9,br))),128))],40,gr),d(m.operator)?(e.openBlock(),e.createElementBlock("span",yr)):(e.openBlock(),e.createElementBlock("input",{key:2,class:"of-filter-condition__input",value:m.value,placeholder:"输入值...",onInput:p=>a("update-condition",m.id,{value:p.target.value})},null,40,_r)),e.createElementVNode("button",{class:"of-filter-condition__remove",onClick:p=>a("remove-condition",m.id)},[e.createVNode(e.unref(M.Trash2),{size:13})],8,kr)]))),128))])),e.createElementVNode("div",hr,[e.createElementVNode("button",{class:"of-filter-panel__add-btn",onClick:f[3]||(f[3]=m=>a("add-condition"))},[e.createVNode(e.unref(M.Plus),{size:13}),f[6]||(f[6]=e.createTextVNode(" 添加条件 ",-1))]),t.conditions.length?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-filter-panel__clear",onClick:f[4]||(f[4]=m=>a("clear"))}," 清除全部 ")):e.createCommentVNode("",!0)])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-30556b88"]]),Er={key:0,class:"of-col-manager"},Br={class:"of-col-manager__header"},Cr={class:"of-col-manager__actions"},Sr={class:"of-col-manager__drag"},wr=["checked","onChange"],en=N(e.defineComponent({__name:"TableColumnManager",props:{columns:{},visible:{type:Boolean,default:!0}},emits:["update:columns","close"],setup(t,{emit:o}){const n=t,a=o,r=e.ref([]);e.watch(()=>n.columns,f=>{r.value=f.map(m=>({...m}))},{immediate:!0,deep:!0});function l(){a("update:columns",r.value.map(f=>({...f})))}function c(f){f.hidden=!f.hidden,l()}function s(){r.value.forEach(f=>f.hidden=!1),l()}function d(){r.value.forEach(f=>f.hidden=!0),l()}function i(){l()}return(f,m)=>t.visible?(e.openBlock(),e.createElementBlock("div",Er,[e.createElementVNode("div",Br,[m[2]||(m[2]=e.createElementVNode("span",{class:"of-col-manager__title"},"管理列",-1)),e.createElementVNode("button",{class:"of-col-manager__close",onClick:m[0]||(m[0]=u=>a("close"))},[e.createVNode(e.unref(M.X),{size:14})])]),e.createElementVNode("div",Cr,[e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:s},[e.createVNode(e.unref(M.Eye),{size:12}),m[3]||(m[3]=e.createTextVNode(" 显示全部 ",-1))]),e.createElementVNode("button",{class:"of-col-manager__action-btn",onClick:d},[e.createVNode(e.unref(M.EyeOff),{size:12}),m[4]||(m[4]=e.createTextVNode(" 隐藏全部 ",-1))])]),e.createVNode(e.unref(Le.VueDraggable),{modelValue:r.value,"onUpdate:modelValue":m[1]||(m[1]=u=>r.value=u),handle:".of-col-manager__drag",animation:150,onEnd:i},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,u=>(e.openBlock(),e.createElementBlock("div",{key:u.key,class:"of-col-manager__row"},[e.createElementVNode("span",Sr,[e.createVNode(e.unref(M.GripVertical),{size:14})]),e.createElementVNode("input",{type:"checkbox",class:"of-col-manager__checkbox",checked:!u.hidden,onChange:p=>c(u)},null,40,wr),e.createElementVNode("span",{class:e.normalizeClass(["of-col-manager__label",{dimmed:u.hidden}])},e.toDisplayString(u.label),3)]))),128))]),_:1},8,["modelValue"])])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-785143ae"]]),Nr=["src"],$r={class:"gallery-card__body"},xr={class:"gallery-card__title"},Dr={key:0,class:"gallery-card__desc"},Tr={key:1,class:"gallery-card__props"},Vr={class:"gallery-card__prop-key"},Ar={class:"gallery-card__prop-value"},Mr={class:"gallery-card__footer"},Rr={class:"gallery-card__task-id"},Ir={class:"gallery-card__date"},Ke=N(e.defineComponent({__name:"GalleryCard",props:{item:{}},emits:["click"],setup(t,{emit:o}){const n=t,a=o,r=e.computed(()=>n.item.bannerColor??"#BFDBFE"),l=e.computed(()=>typeof n.item.cover=="string"&&/^https?:\/\//.test(n.item.cover)),c=e.computed(()=>(n.item.extraProps??[]).slice(0,2)),s={tag:M.TagIcon,user:M.UserIcon,calendar:M.CalendarIcon,folder:M.FolderIcon};function d(u){return u?s[u.toLowerCase()]??M.CircleIcon:M.CircleIcon}const i=e.computed(()=>{const u=n.item.updatedAt??n.item.createdAt;if(!u)return"";const p=new Date(u);return`${p.getFullYear()}-${String(p.getMonth()+1).padStart(2,"0")}-${String(p.getDate()).padStart(2,"0")}`}),f={todo:"var(--of-color-gray-400)",in_progress:"var(--of-color-info)",blocked:"var(--of-color-warning)",done:"var(--of-color-success)"},m=e.computed(()=>f[n.item.status]??"var(--of-color-gray-400)");return(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-card",onClick:p[0]||(p[0]=g=>a("click",t.item))},[l.value?(e.openBlock(),e.createElementBlock("img",{key:0,class:"gallery-card__cover",src:t.item.cover,alt:""},null,8,Nr)):(e.openBlock(),e.createElementBlock("div",{key:1,class:"gallery-card__banner",style:e.normalizeStyle({backgroundColor:r.value})},null,4)),e.createElementVNode("div",$r,[e.createElementVNode("div",xr,e.toDisplayString(t.item.title),1),t.item.description?(e.openBlock(),e.createElementBlock("div",Dr,e.toDisplayString(t.item.description),1)):e.createCommentVNode("",!0),p[3]||(p[3]=e.createElementVNode("div",{class:"gallery-card__divider"},null,-1)),c.value.length>0?(e.openBlock(),e.createElementBlock("div",Tr,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,g=>(e.openBlock(),e.createElementBlock("div",{key:g.key,class:"gallery-card__prop-row"},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(d(g.icon)),{class:"gallery-card__prop-icon",size:12})),e.createElementVNode("span",Vr,e.toDisplayString(g.key),1),p[1]||(p[1]=e.createElementVNode("span",{class:"gallery-card__prop-spacer"},null,-1)),e.createElementVNode("span",Ar,e.toDisplayString(g.value),1)]))),128))])):e.createCommentVNode("",!0),e.createElementVNode("div",Mr,[e.createElementVNode("span",Rr,[e.createElementVNode("span",{class:"gallery-card__status-dot",style:e.normalizeStyle({backgroundColor:m.value})},null,4),e.createTextVNode(" "+e.toDisplayString(t.item.id),1)]),p[2]||(p[2]=e.createElementVNode("span",{class:"gallery-card__footer-spacer"},null,-1)),e.createElementVNode("span",Ir,e.toDisplayString(i.value),1)])])]))}}),[["__scopeId","data-v-4b208b49"]]);function ye(t){return t.type==="select"||t.type==="multi_select"}function Or(t){return t.type==="formula"}function tn(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 Ge(t){const o=t.fields.status,n=t.fields.priority,a=t.fields.title,r=t.fields.description,l=t.fields.assignee,c=t.fields.tags,s=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 l=="string"?l:void 0,tags:Array.isArray(c)?c.filter(i=>typeof i=="string"):void 0,startDate:typeof s=="string"?s:void 0,endDate:typeof d=="string"?d:void 0,createdAt:t.createdAt,updatedAt:t.updatedAt}}function nn(t,o={}){const n=o.kanbanFieldId??"status",a=new Map;for(const l of t){const c=l.fields[n],s=typeof c=="string"&&c?c:"unassigned",d=a.get(s)??[];d.push(Ge(l)),a.set(s,d)}return(o.laneOrder&&o.laneOrder.length>0?o.laneOrder:Array.from(a.keys())).map(l=>{var c;return{id:l,title:((c=o.laneTitles)==null?void 0:c[l])??l,tasks:a.get(l)??[]}})}function on(t,o={}){const n=o.coverFieldId,a=o.cardFieldIds??[];return t.map(r=>{const l=Ge(r),c=n?r.fields[n]:null,s=typeof c=="string"&&c?c:void 0,d=a.map(i=>{const f=r.fields[i];return f==null||i===n?null:Array.isArray(f)?{key:i,value:f.join(", ")}:{key:i,value:String(f)}}).filter(i=>i!==null);return{...l,cover:s,bannerColor:s!=null&&s.startsWith("#")?s:void 0,extraProps:d.length>0?d:void 0}})}const an=N(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})),l=e.computed(()=>n.items.length>0?n.items:n.records.length>0?on(n.records,{coverFieldId:n.coverFieldId||void 0,cardFieldIds:n.cardFieldIds}):[]);return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:"gallery-view",style:e.normalizeStyle(r.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,d=>(e.openBlock(),e.createBlock(Ke,{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:s[0]||(s[0]=d=>a("add"))},[e.createVNode(e.unref(M.PlusIcon),{size:18,class:"gallery-view__add-icon"}),s[1]||(s[1]=e.createElementVNode("span",{class:"gallery-view__add-label"},"添加",-1))])):e.createCommentVNode("",!0)],4))}}),[["__scopeId","data-v-3e8ae97a"]]),Lr=["aria-busy"],zr={key:0,class:"of-activity-timeline__skeleton","aria-hidden":"true"},Pr={class:"of-activity-timeline__rail"},Fr={key:0,class:"of-activity-timeline__line"},Ur={class:"of-activity-timeline__rail"},vr={key:0,class:"of-activity-timeline__line"},Kr={class:"of-activity-timeline__content"},Gr={class:"of-activity-timeline__header"},Hr={class:"of-activity-timeline__action"},qr={key:0,class:"of-activity-timeline__actor"},Wr={key:0,class:"of-activity-timeline__detail"},Yr={key:1,class:"of-activity-timeline__progress"},Zr={class:"of-activity-timeline__progress-track"},jr={class:"of-activity-timeline__progress-value"},Xr={key:2,class:"of-activity-timeline__time"},ln=N(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 l(c){return typeof c!="number"||Number.isNaN(c)?null:Math.min(100,Math.max(0,c))}return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:"of-activity-timeline","aria-busy":t.loading},[t.loading?(e.openBlock(),e.createElementBlock("div",zr,[(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",Pr,[s[0]||(s[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",Fr)):e.createCommentVNode("",!0)]),s[1]||(s[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",Ur,[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",vr)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Kr,[e.renderSlot(c.$slots,"item",{item:d,index:i},()=>[e.createElementVNode("div",Gr,[e.createElementVNode("span",Hr,e.toDisplayString(d.action),1),d.actor?(e.openBlock(),e.createElementBlock("span",qr,e.toDisplayString(d.actor),1)):e.createCommentVNode("",!0)]),d.detail?(e.openBlock(),e.createElementBlock("p",Wr,e.toDisplayString(d.detail),1)):e.createCommentVNode("",!0),l(d.progress)!==null?(e.openBlock(),e.createElementBlock("div",Yr,[e.createElementVNode("div",Zr,[e.createElementVNode("div",{class:"of-activity-timeline__progress-fill",style:e.normalizeStyle({width:`${l(d.progress)}%`,backgroundColor:r(d.status)})},null,4)]),e.createElementVNode("span",jr,e.toDisplayString(l(d.progress))+"% ",1)])):e.createCommentVNode("",!0),d.time?(e.openBlock(),e.createElementBlock("p",Xr,e.toDisplayString(d.time),1)):e.createCommentVNode("",!0)],!0)])]))),128))],8,Lr))}}),[["__scopeId","data-v-a9a57957"]]),Qr={class:"gantt-row__label"},Jr={class:"gantt-row__title"},es={class:"gantt-row__bar-label"},He=N(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),l=e.ref(null);let c=0,s=0,d=0;const i=e.computed(()=>n.totalDays*n.dayWidth),f=e.computed(()=>n.offsetDays*n.dayWidth),m=e.computed(()=>Math.max(n.durationDays,1)*n.dayWidth),u=e.computed(()=>ne(n.item.priority||"",oe(fe,n.priorityColorMap))),p=e.computed(()=>n.item.barColor?{background:n.item.barColor,color:"var(--of-color-gray-800)"}:{background:u.value.style.background,color:u.value.style.color}),g=e.computed(()=>u.value.style),_=e.computed(()=>{const C=ne(n.item.status||"",oe(ce,n.statusColorMap));return C.dot??C.style.color}),k=e.computed(()=>{const C=S=>{const D=new Date(`${S}T00:00:00`);return`${String(D.getMonth()+1).padStart(2,"0")}/${String(D.getDate()).padStart(2,"0")}`};return`${C(n.item.startDate)} - ${C(n.item.endDate)}`});function y(C,S){n.readonly||(C.preventDefault(),C.stopPropagation(),r.value=!0,l.value=S,c=C.clientX,s=n.offsetDays,d=n.durationDays,window.addEventListener("mousemove",$),window.addEventListener("mouseup",h))}function $(C){if(!r.value||!l.value)return;const S=Math.round((C.clientX-c)/n.dayWidth);if(l.value==="move"){const b=Math.max(0,Math.min(s+S,n.totalDays-1));a("change",{id:n.item.id,offsetDays:b,durationDays:d,startDate:n.item.startDate,endDate:n.item.endDate});return}const D=Math.max(1,d+S),q=Math.max(1,n.totalDays-n.offsetDays);a("change",{id:n.item.id,offsetDays:n.offsetDays,durationDays:Math.min(D,q),startDate:n.item.startDate,endDate:n.item.endDate})}function h(){r.value=!1,l.value=null,window.removeEventListener("mousemove",$),window.removeEventListener("mouseup",h)}return(C,S)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-row",onClick:S[2]||(S[2]=D=>a("click",t.item))},[e.createElementVNode("div",Qr,[e.createElementVNode("span",{class:"gantt-row__dot",style:e.normalizeStyle({backgroundColor:_.value})},null,4),e.createElementVNode("span",Jr,e.toDisplayString(t.item.title),1),e.createElementVNode("span",{class:"gantt-row__priority",style:e.normalizeStyle(g.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:`${f.value}px`,width:`${m.value}px`,backgroundColor:p.value.background,color:p.value.color}),onMousedown:S[1]||(S[1]=D=>y(D,"move"))},[e.createElementVNode("span",es,e.toDisplayString(k.value),1),e.createElementVNode("span",{class:"gantt-row__handle",onMousedown:S[0]||(S[0]=D=>y(D,"resize-end"))},null,32)],38)],4)]))}}),[["__scopeId","data-v-51311e43"]]),ts={class:"gantt-timeline__header"},ns={class:"gantt-timeline__rows"},os={key:0,class:"gantt-timeline__empty"},ue=40,rn=N(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(b){return new Date(`${b}T00:00:00`)}function l(b){const w=b.getFullYear(),x=String(b.getMonth()+1).padStart(2,"0"),O=String(b.getDate()).padStart(2,"0");return`${w}-${x}-${O}`}function c(b,w){return Math.round((r(w).getTime()-r(b).getTime())/864e5)}function s(b,w){const x=r(b),O=new Date(x);return O.setDate(x.getDate()+w),l(O)}function d(b){if(typeof b!="string"||!b)return null;const w=b.match(/^(\d{4}-\d{2}-\d{2})/);return w?w[1]:null}function i(){const b=new Date;return`${b.getFullYear()}-${String(b.getMonth()+1).padStart(2,"0")}-01`}const f=e.computed(()=>{var b,w;return(b=n.records)!=null&&b.length?n.records:(w=n.data)!=null&&w.length?n.data.map(tn):[]}),m=e.computed(()=>{var b,w;if((b=n.records)!=null&&b.length||(w=n.data)!=null&&w.length){const x=[];for(const O of f.value){const G=d(O.fields[n.startFieldId]),K=d(O.fields[n.endFieldId]),v=O.fields[n.labelFieldId];!G||!K||x.push({id:O.id,sourceRecordId:O.id,title:typeof v=="string"&&v?v:O.id,status:typeof O.fields.status=="string"?O.fields.status:"",priority:typeof O.fields.priority=="string"?O.fields.priority:"",startDate:G,endDate:K})}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}))}),u=e.computed(()=>{if(!m.value.length)return n.startDate||i();const b=Math.min(...m.value.map(x=>r(x.startDate).getTime())),w=new Date(b);return w.setDate(w.getDate()-1),l(w)}),p=e.computed(()=>{if(!m.value.length)return s(n.startDate||i(),n.days-1);const b=Math.max(...m.value.map(x=>r(x.endDate).getTime())),w=new Date(b);return w.setDate(w.getDate()+1),l(w)}),g=e.computed(()=>n.startDate||u.value),_=e.computed(()=>n.startDate?n.days:Math.max(n.days,c(g.value,p.value)+1)),k=e.computed(()=>{const b=[];for(let w=0;w<_.value;w++)b.push(s(g.value,w));return b}),y=e.ref([]);e.watch(m,b=>{y.value=b.map(w=>({...w}))},{immediate:!0});const $=e.computed(()=>{const b=g.value,w=_.value;return y.value.map(x=>{const O=Math.max(0,c(b,x.startDate)),G=Math.max(O,c(b,x.endDate)),K=Math.max(1,G-O+1);return{row:x,offsetDays:Math.min(O,w-1),durationDays:K}})}),h=l(new Date);function C(b){return b===h}function S(b){const w=r(b);return`${String(w.getMonth()+1).padStart(2,"0")}/${String(w.getDate()).padStart(2,"0")}`}const D=e.computed(()=>{const b=c(g.value,h);return b<0||b>_.value-1?null:b*ue+ue/2});function q(b){const w=y.value.findIndex(v=>v.id===b.id);if(w===-1)return;const x=s(g.value,b.offsetDays),O=s(x,b.durationDays-1);y.value[w]={...y.value[w],startDate:x,endDate:O};const G=y.value[w].sourceRecordId;if(!G)return;a("record-change",{recordId:G,startDate:x,endDate:O});const K=f.value.map(v=>v.id!==G?v:{...v,fields:{...v.fields,[n.startFieldId]:x,[n.endFieldId]:O}});a("update:records",K)}return(b,w)=>(e.openBlock(),e.createElementBlock("div",{class:"gantt-timeline",style:e.normalizeStyle({"--day-width":`${ue}px`})},[e.createElementVNode("div",ts,[w[0]||(w[0]=e.createElementVNode("div",{class:"gantt-timeline__header-label"},"任务",-1)),e.createElementVNode("div",{class:"gantt-timeline__header-dates",style:e.normalizeStyle({width:`${_.value*ue}px`})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,x=>(e.openBlock(),e.createElementBlock("div",{key:x,class:e.normalizeClass(["gantt-timeline__header-cell",{"gantt-timeline__header-cell--today":C(x)}]),style:e.normalizeStyle({width:`${ue}px`})},e.toDisplayString(S(x)),7))),128)),D.value!==null?(e.openBlock(),e.createElementBlock("div",{key:0,class:"gantt-timeline__today-line",style:e.normalizeStyle({left:`${D.value}px`})},null,4)):e.createCommentVNode("",!0)],4)]),e.createElementVNode("div",ns,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList($.value,x=>(e.openBlock(),e.createBlock(He,{key:x.row.id,item:x.row,"offset-days":x.offsetDays,"duration-days":x.durationDays,"day-width":ue,"total-days":_.value,onChange:q,onClick:O=>a("row-click",x.row)},null,8,["item","offset-days","duration-days","total-days","onClick"]))),128)),$.value.length===0?(e.openBlock(),e.createElementBlock("div",os,"暂无任务数据")):e.createCommentVNode("",!0)])],4))}}),[["__scopeId","data-v-4c4406f6"]]),as=["rows"],ls={key:0,class:"content-block__placeholder"},qe=N(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),l=e.ref("");function c(){n.editable&&(l.value=n.content??"",r.value=!0)}function s(){r.value=!1,a("update:content",l.value)}const d=e.computed(()=>n.content?n.content.split(`
|
|
2
|
+
`).filter(i=>i.trim().length>0):[]);return(i,f)=>(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":f[0]||(f[0]=m=>l.value=m),class:"content-block__textarea",rows:Math.max(3,l.value.split(`
|
|
3
|
+
`).length),autofocus:"",onBlur:s,onKeydown:e.withKeys(s,["escape"])},null,40,as)),[[e.vModelText,l.value]]):e.renderSlot(i.$slots,"default",{key:1},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(m,u)=>(e.openBlock(),e.createElementBlock("p",{key:u,class:"content-block__para"},e.toDisplayString(m),1))),128)),d.value.length===0?(e.openBlock(),e.createElementBlock("span",ls,e.toDisplayString(t.editable?"点击编辑内容...":""),1)):e.createCommentVNode("",!0)],!0)],2))}}),[["__scopeId","data-v-0c62a5ac"]]),rs=["rows"],ss={class:"block-quote__text"},cs={key:0,class:"block-quote__cite"},sn=N(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),l=e.ref("");function c(){n.editable&&(l.value=n.content,r.value=!0)}function s(){r.value=!1,a("update:content",l.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]=f=>l.value=f),class:"block-quote__textarea",rows:Math.max(2,l.value.split(`
|
|
4
|
+
`).length),autofocus:"",onBlur:s,onKeydown:e.withKeys(s,["escape"])},null,40,rs)),[[e.vModelText,l.value]]):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createElementVNode("p",ss,e.toDisplayString(t.content),1),t.cite?(e.openBlock(),e.createElementBlock("footer",cs,"— "+e.toDisplayString(t.cite),1)):e.createCommentVNode("",!0)],64))],2))}}),[["__scopeId","data-v-31b9dc83"]]),is={class:"code-block"},ds={class:"code-block__header"},ms={class:"code-block__lang"},fs=["title"],us={class:"code-block__copy-label"},ps={class:"code-block__pre"},gs={class:"code-block__code"},cn=N(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,l)=>(e.openBlock(),e.createElementBlock("div",is,[e.createElementVNode("div",ds,[e.createElementVNode("span",ms,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(M.CheckIcon),{key:0,size:13})):(e.openBlock(),e.createBlock(e.unref(M.CopyIcon),{key:1,size:13})),e.createElementVNode("span",us,e.toDisplayString(n.value?"已复制":"复制"),1)],10,fs)):e.createCommentVNode("",!0)]),e.createElementVNode("pre",ps,[e.createElementVNode("code",gs,e.toDisplayString(t.code),1)])]))}}),[["__scopeId","data-v-5d72fbc6"]]),dn=N(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 l(c){n.href||c.preventDefault(),a("click",n.refId)}return(c,s)=>(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:l},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(r.value)+" ",1),t.href?(e.openBlock(),e.createBlock(e.unref(M.ExternalLinkIcon),{key:0,class:"ref-link__icon",size:10})):e.createCommentVNode("",!0)]),_:1},8,["href","target","rel"]))}}),[["__scopeId","data-v-f83e73bd"]]),bs=["aria-label"],_s={key:0,class:"of-modal__header"},ys={key:0,class:"of-modal__title"},ks={key:1,class:"of-modal__title-placeholder"},hs={class:"of-modal__body"},Es={key:1,class:"of-modal__footer"},we=N(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,r=e.ref(null);let l=null;function c(){return r.value?Array.from(r.value.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"]), a[href]')).filter(m=>!m.closest('[aria-hidden="true"]')):[]}function s(m){if(m.key!=="Tab")return;const u=c();if(u.length===0){m.preventDefault();return}const p=u[0],g=u[u.length-1];m.shiftKey?document.activeElement===p&&(m.preventDefault(),g.focus()):document.activeElement===g&&(m.preventDefault(),p.focus())}function d(){a("update:modelValue",!1)}function i(){n.maskClosable&&d()}function f(m){m.key==="Escape"&&n.modelValue&&d()}return e.watch(()=>n.modelValue,m=>{typeof document>"u"||(m?(document.body.style.overflow="hidden",l=document.activeElement,document.addEventListener("keydown",f),e.nextTick(()=>{const u=c();u.length&&u[0].focus(),document.addEventListener("keydown",s)})):(document.body.style.overflow="",document.removeEventListener("keydown",f),document.removeEventListener("keydown",s),l==null||l.focus(),l=null))}),e.onUnmounted(()=>{typeof document>"u"||(document.body.style.overflow="",document.removeEventListener("keydown",f),document.removeEventListener("keydown",s))}),(m,u)=>(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(i,["self"])},[e.createElementVNode("div",{ref_key:"modalRef",ref:r,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},[m.$slots.header||t.title||t.closable?(e.openBlock(),e.createElementBlock("div",_s,[e.renderSlot(m.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",ys,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",ks))],!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-modal__close",onClick:d,"aria-label":"关闭",type:"button"},[e.createVNode(e.unref(M.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",hs,[e.renderSlot(m.$slots,"default",{},void 0,!0)]),m.$slots.footer?(e.openBlock(),e.createElementBlock("div",Es,[e.renderSlot(m.$slots,"footer",{},void 0,!0)])):e.createCommentVNode("",!0)],14,bs)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-4d50e8f4"]]),pe=e.reactive([]);let Bs=0;function Ne(t,o,n){const a=`toast-${Date.now()}-${Bs++}`,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(()=>mn(a),r.duration),a}function mn(t){const o=pe.findIndex(n=>n.id===t);o!==-1&&pe.splice(o,1)}function We(){return{toasts:pe,info:(t,o)=>Ne("info",t,o),success:(t,o)=>Ne("success",t,o),warning:(t,o)=>Ne("warning",t,o),error:(t,o)=>Ne("error",t,o),remove:mn,clear:()=>pe.splice(0,pe.length)}}const Cs={class:"of-rich-editor__toolbar-actions"},Ss=["disabled"],ws=["disabled"],Ns={class:"of-rich-editor__form"},fn=N(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=We(),l=e.ref(n.modelValue),c=e.ref(!1),s=e.ref(""),d=e.ref(""),i=e.ref(null),f={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,k=>{k!==l.value&&(l.value=k)});const m=e.computed(()=>n.editable);function u(k){l.value=k,a("update:modelValue",k),a("change",k)}function p(){var h,C;const k=(C=(h=i.value)==null?void 0:h.getQuill)==null?void 0:C.call(h);if(!k)return;const y=k.getSelection(!0),$=(d.value||"").trim();$&&(s.value.trim()?(k.insertText(y.index,s.value.trim(),"link",$),k.setSelection(y.index+s.value.trim().length,0)):k.format("link",$),c.value=!1,s.value="",d.value="")}function g(){m.value&&(c.value=!0)}function _(){a("save",l.value||""),r.success("内容已保存")}return(k,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-rich-editor",{"is-readonly":!m.value}]),style:e.normalizeStyle({"--of-rich-editor-min-height":`${t.minHeight}px`})},[e.createElementVNode("div",Cs,[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",disabled:!m.value,onClick:g}," 插入链接 ",8,Ss),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",disabled:!m.value,onClick:_}," 保存 ",8,ws)]),e.createVNode(e.unref($o.QuillEditor),{ref_key:"editorRef",ref:i,theme:"snow","content-type":"html",content:l.value,options:{readOnly:!m.value,placeholder:t.placeholder,modules:f},"onUpdate:content":u},null,8,["content","options"]),e.createVNode(we,{modelValue:c.value,"onUpdate:modelValue":y[3]||(y[3]=$=>c.value=$),title:"插入链接",width:"480px"},{footer:e.withCtx(()=>[e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn",onClick:y[2]||(y[2]=$=>c.value=!1)}," 取消 "),e.createElementVNode("button",{type:"button",class:"of-rich-editor__btn of-rich-editor__btn--primary",onClick:p}," 确认 ")]),default:e.withCtx(()=>[e.createElementVNode("div",Ns,[y[4]||(y[4]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-text"},"链接文本",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-text","onUpdate:modelValue":y[0]||(y[0]=$=>s.value=$),class:"of-rich-editor__input",placeholder:"请输入链接文本"},null,512),[[e.vModelText,s.value]]),y[5]||(y[5]=e.createElementVNode("label",{class:"of-rich-editor__label",for:"link-url"},"链接地址",-1)),e.withDirectives(e.createElementVNode("input",{id:"link-url","onUpdate:modelValue":y[1]||(y[1]=$=>d.value=$),class:"of-rich-editor__input",placeholder:"https://example.com"},null,512),[[e.vModelText,d.value]])])]),_:1},8,["modelValue"])],6))}}),[["__scopeId","data-v-7d0c88f1"]]),$s={class:"of-form-designer"},xs={class:"of-form-designer__header"},Ds={class:"of-form-designer__title"},Ts={class:"of-form-designer__meta"},Vs={class:"of-form-designer__inputs"},As=["value","disabled","onInput"],Ms=["value","disabled","onChange"],Rs=["value"],Is={class:"of-form-designer__checkbox-label"},Os=["checked","disabled","onChange"],Ls={class:"of-form-designer__checkbox-label"},zs=["checked","disabled","onChange"],Ps=["onClick"],Fs={key:1,class:"of-form-designer__options-wrap"},Us=["value","disabled","onChange"],un=N(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,l=e.ref(s(a.schema));e.watch(()=>a.schema,h=>{l.value=s(h)},{deep:!0});const c=e.computed(()=>`${l.value.fields.length} 个字段`);function s(h){return{...h,fields:h.fields.map(d),views:h.views.map(C=>({...C}))}}function d(h){return ye(h)?{...h,options:h.options.map(C=>({...C}))}:{...h}}function i(){const h=s(l.value);r("update:schema",h),r("change",h)}function f(){return m("text",{id:`field_${Date.now()}`,name:"新字段",required:!1,hidden:!1})}function m(h,C){switch(h){case"text":return{...C,type:h};case"number":return{...C,type:h};case"select":case"multi_select":return{...C,type:h,options:u()};case"date":case"datetime":return{...C,type:h};case"checkbox":return{...C,type:h};case"url":case"email":case"phone":return{...C,type:h};case"rating":return{...C,type:h};case"user":return{...C,type:h};case"attachment":return{...C,type:h};case"relation":return{...C,type:h};case"formula":return{...C,type:h,formula:""}}}function u(){return[{value:"option_1",label:"选项 1"},{value:"option_2",label:"选项 2"}]}function p(){a.readonly||(l.value.fields.push(f()),i())}function g(h){a.readonly||(l.value.fields=l.value.fields.filter(C=>C.id!==h),i())}function _(h,C){const S=l.value.fields.findIndex(q=>q.id===h.id);if(S===-1)return;const D={id:h.id,name:h.name,required:h.required,hidden:h.hidden,width:h.width};l.value.fields[S]=ye(h)&&(C==="select"||C==="multi_select")?{...D,type:C,options:h.options.map(q=>({...q}))}:m(C,D),i()}function k(h,C){if(!ye(h))return;const S=C.split(",").map(D=>D.trim()).filter(Boolean);h.options=S.map(D=>({value:D,label:D})),i()}function y(h){return ye(h)?h.options.map(C=>C.label).join(", "):""}function $(){i()}return(h,C)=>(e.openBlock(),e.createElementBlock("div",$s,[e.createElementVNode("div",xs,[e.createElementVNode("div",null,[e.createElementVNode("h3",Ds,e.toDisplayString(t.title),1),e.createElementVNode("p",Ts,e.toDisplayString(l.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:p},[e.createVNode(e.unref(M.Plus),{size:14}),C[1]||(C[1]=e.createTextVNode(" 添加字段 ",-1))]))]),e.createVNode(e.unref(Le.VueDraggable),{modelValue:l.value.fields,"onUpdate:modelValue":C[0]||(C[0]=S=>l.value.fields=S),handle:".of-form-designer__drag",disabled:t.readonly,animation:150,onEnd:$},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value.fields,S=>(e.openBlock(),e.createElementBlock("div",{key:S.id,class:"of-form-designer__row"},[e.createElementVNode("span",{class:e.normalizeClass(["of-form-designer__drag",{disabled:t.readonly}])},[e.createVNode(e.unref(M.GripVertical),{size:14})],2),e.createElementVNode("div",Vs,[e.createElementVNode("input",{value:S.name,class:"of-form-designer__input",placeholder:"字段名称",disabled:t.readonly,onInput:D=>{S.name=String(D.target.value),i()}},null,40,As),e.createElementVNode("select",{class:"of-form-designer__select",value:S.type,disabled:t.readonly,onChange:D=>_(S,D.target.value)},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(n,D=>e.createElementVNode("option",{key:D.value,value:D.value},e.toDisplayString(D.label),9,Rs)),64))],40,Ms),e.createElementVNode("label",Is,[e.createElementVNode("input",{type:"checkbox",checked:!!S.required,disabled:t.readonly,onChange:D=>{S.required=D.target.checked,i()}},null,40,Os),C[2]||(C[2]=e.createTextVNode(" 必填 ",-1))]),e.createElementVNode("label",Ls,[e.createElementVNode("input",{type:"checkbox",checked:!!S.hidden,disabled:t.readonly,onChange:D=>{S.hidden=D.target.checked,i()}},null,40,zs),C[3]||(C[3]=e.createTextVNode(" 隐藏 ",-1))])]),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-form-designer__remove-btn",onClick:D=>g(S.id)},[e.createVNode(e.unref(M.Trash2),{size:14})],8,Ps)),S.type==="select"||S.type==="multi_select"?(e.openBlock(),e.createElementBlock("div",Fs,[C[4]||(C[4]=e.createElementVNode("label",{class:"of-form-designer__options-label"},"选项(逗号分隔)",-1)),e.createElementVNode("input",{value:y(S),class:"of-form-designer__input",placeholder:"例如:待办, 进行中, 完成",disabled:t.readonly,onChange:D=>k(S,String(D.target.value))},null,40,Us)])):e.createCommentVNode("",!0)]))),128))]),_:1},8,["modelValue","disabled"])]))}}),[["__scopeId","data-v-7937cb8c"]]),vs={class:"of-color-panel__header"},Ks={class:"of-color-panel__label"},Gs={class:"of-color-panel__value"},Hs={class:"of-color-panel__picker-row"},qs=["disabled"],Ws=["disabled"],Ys={class:"of-color-panel__presets"},Zs=["title","disabled","onClick"],pn=N(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 l(c){n.disabled||(r.value=c)}return(c,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-color-panel",{disabled:t.disabled}])},[e.createElementVNode("div",vs,[e.createElementVNode("span",Ks,e.toDisplayString(t.label),1),e.createElementVNode("span",Gs,e.toDisplayString(r.value),1)]),e.createElementVNode("div",Hs,[e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":s[0]||(s[0]=d=>r.value=d),class:"of-color-panel__picker",type:"color",disabled:t.disabled},null,8,qs),[[e.vModelText,r.value]]),t.showInput?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:0,"onUpdate:modelValue":s[1]||(s[1]=d=>r.value=d),class:"of-color-panel__input",type:"text",disabled:t.disabled,placeholder:"#3b82f6"},null,8,Ws)),[[e.vModelText,r.value]]):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ys,[(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=>l(d)},null,12,Zs))),128))])],2))}}),[["__scopeId","data-v-94d43df3"]]),js={class:"of-person-panel__row"},Xs=["src","alt"],Qs={key:1},Js={key:1,class:"of-person-panel__avatar empty"},ec=["disabled"],tc={value:null},nc=["value"],gn=N(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:s=>{a("update:modelValue",s),a("change",s)}}),l=e.computed(()=>n.people.find(s=>s.id===r.value)??null);function c(s){return(s||"?").trim().slice(0,1).toUpperCase()}return(s,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,[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"of-person-panel__avatar",style:e.normalizeStyle({background:l.value.color||"var(--of-color-primary-500)"})},[l.value.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:l.value.avatar,alt:l.value.name},null,8,Xs)):(e.openBlock(),e.createElementBlock("span",Qs,e.toDisplayString(c(l.value.name)),1))],4)):(e.openBlock(),e.createElementBlock("div",Js,"-")),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",tc,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,nc))),128))],8,ec),[[e.vModelSelect,r.value]])])],2))}}),[["__scopeId","data-v-0693c313"]]),oc={class:"of-file-upload"},ac=["multiple","accept","disabled"],lc=["disabled"],rc={key:0,class:"of-file-upload__list"},sc={class:"of-file-upload__name"},cc={class:"of-file-upload__size"},ic=["disabled","onClick"],bn=N(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),l=e.ref(null);function c(u){if(!u)return n.modelValue??[];const p=Array.from(u);return(n.multiple?[...n.modelValue??[],...p]:p.slice(0,1)).slice(0,Math.max(n.maxCount,1))}function s(u){if(n.disabled)return;const p=c(u);a("update:modelValue",p),a("change",p)}function d(u){s(u.target.files)}function i(u){var p;u.preventDefault(),r.value=!1,s(((p=u.dataTransfer)==null?void 0:p.files)??null)}function f(u){if(n.disabled)return;const p=[...n.modelValue??[]];p.splice(u,1),a("update:modelValue",p),a("change",p)}function m(){var u;n.disabled||(u=l.value)==null||u.click()}return(u,p)=>(e.openBlock(),e.createElementBlock("div",oc,[e.createElementVNode("input",{ref_key:"fileInput",ref:l,class:"of-file-upload__native",type:"file",multiple:t.multiple,accept:t.accept,disabled:t.disabled,onChange:d},null,40,ac),e.createElementVNode("button",{type:"button",class:e.normalizeClass(["of-file-upload__dropzone",{dragging:r.value,disabled:t.disabled}]),disabled:t.disabled,onClick:m,onDragover:p[0]||(p[0]=e.withModifiers(g=>r.value=!0,["prevent"])),onDragleave:p[1]||(p[1]=e.withModifiers(g=>r.value=!1,["prevent"])),onDrop:i},[e.createVNode(e.unref(M.Upload),{size:16}),e.createElementVNode("span",null,e.toDisplayString(t.hint),1)],42,lc),t.modelValue&&t.modelValue.length?(e.openBlock(),e.createElementBlock("ul",rc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.modelValue,(g,_)=>(e.openBlock(),e.createElementBlock("li",{key:`${g.name}-${_}`,class:"of-file-upload__item"},[e.createElementVNode("span",sc,e.toDisplayString(g.name),1),e.createElementVNode("span",cc,e.toDisplayString((g.size/1024).toFixed(1))+" KB",1),e.createElementVNode("button",{type:"button",class:"of-file-upload__remove",disabled:t.disabled,onClick:k=>f(_)},[e.createVNode(e.unref(M.X),{size:14})],8,ic)]))),128))])):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-bb034782"]]),dc={class:"prop-row"},mc={class:"prop-row__key"},fc={class:"prop-row__value-area"},uc={key:0,class:"prop-row__plain-text"},Ye=N(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"?ne(o.value,oe(ce,o.statusColorMap)):o.type==="priority"?ne(o.value,oe(fe,o.priorityColorMap)):o.type==="badge"&&o.customColorMap?ne(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)"}),l=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}),s=e.computed(()=>!!c.value);return(d,i)=>(e.openBlock(),e.createElementBlock("div",dc,[e.createElementVNode("span",mc,e.toDisplayString(t.propKey),1),e.createElementVNode("div",fc,[n.value?(e.openBlock(),e.createElementBlock("span",uc,e.toDisplayString(t.value),1)):(e.openBlock(),e.createElementBlock("span",{key:1,class:"prop-row__badge",style:e.normalizeStyle(r.value)},[s.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(l.value),1)],4))])]))}}),[["__scopeId","data-v-bb8aff62"]]),pc={class:"prop-panel"},gc={class:"prop-panel__title"},bc={class:"prop-panel__body"},_c={key:0,class:"prop-panel__extra"},Ze=N(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,l)=>(e.openBlock(),e.createElementBlock("div",pc,[e.createElementVNode("div",{class:e.normalizeClass(["prop-panel__header",{"prop-panel__header--collapsible":t.collapsible}]),onClick:a},[e.createElementVNode("span",gc,e.toDisplayString(t.title),1),t.collapsible?(e.openBlock(),e.createBlock(e.unref(M.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",bc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,c=>(e.openBlock(),e.createBlock(Ye,{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",_c,[e.renderSlot(r.$slots,"extra",{},void 0,!0)])):e.createCommentVNode("",!0)],512),[[e.vShow,!n.value]])]))}}),[["__scopeId","data-v-7cd73233"]]),yc={class:"comment-item"},kc={class:"comment-item__content"},hc={class:"comment-item__header"},Ec={class:"comment-item__author"},Bc={key:0,class:"comment-item__action"},Cc={class:"comment-item__time"},Sc={class:"comment-item__text"},je=N(e.defineComponent({__name:"CommentItem",props:{comment:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",yc,[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",kc,[e.createElementVNode("div",hc,[e.createElementVNode("span",Ec,e.toDisplayString(t.comment.author),1),t.comment.action?(e.openBlock(),e.createElementBlock("span",Bc,e.toDisplayString(t.comment.action),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Cc,e.toDisplayString(t.comment.time),1)]),e.createElementVNode("div",Sc,e.toDisplayString(t.comment.content),1)])]))}}),[["__scopeId","data-v-6050ee55"]]),wc={class:"detail-layout"},Nc={class:"detail-layout__main"},$c={class:"detail-layout__title"},xc={class:"detail-layout__meta"},Dc={key:0,class:"detail-layout__badge detail-layout__badge--role"},Tc={key:1,class:"detail-layout__meta-text"},Vc={class:"detail-layout__section"},Ac={class:"detail-layout__description"},Mc={key:0,class:"detail-layout__desc-placeholder"},Rc={class:"detail-layout__section"},Ic={class:"detail-layout__comments"},Oc={key:0,class:"detail-layout__comment-list"},Lc={key:1,class:"detail-layout__empty-hint"},zc={class:"detail-layout__sidebar"},_n=N(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)"}),l=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),s=e.computed(()=>n.descriptionContent||n.task.description||"");function d(i){a("update:descriptionContent",i)}return(i,f)=>(e.openBlock(),e.createElementBlock("div",wc,[e.createElementVNode("div",Nc,[e.createElementVNode("h1",$c,e.toDisplayString(t.task.title),1),e.createElementVNode("div",xc,[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:l.value.text,backgroundColor:l.value.bg})},e.toDisplayString(t.task.priority),5),t.task.role?(e.openBlock(),e.createElementBlock("span",Dc,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0),t.task.assignee?(e.openBlock(),e.createElementBlock("span",Tc,e.toDisplayString(t.task.assignee),1)):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"meta",{},void 0,!0)]),e.createElementVNode("div",Vc,[f[0]||(f[0]=e.createElementVNode("div",{class:"detail-layout__section-title"},"描述",-1)),e.createElementVNode("div",Ac,[e.renderSlot(i.$slots,"description",{},()=>[e.createVNode(e.unref(qe),{content:s.value,editable:t.descriptionEditable,"onUpdate:content":d},null,8,["content","editable"]),s.value?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("p",Mc,"暂无描述"))],!0)])]),e.createElementVNode("div",Rc,[f[1]||(f[1]=e.createElementVNode("div",{class:"detail-layout__section-title"},"活动记录",-1)),e.createElementVNode("div",Ic,[e.renderSlot(i.$slots,"comments",{},()=>[t.comments&&t.comments.length>0?(e.openBlock(),e.createElementBlock("div",Oc,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.comments,m=>(e.openBlock(),e.createBlock(je,{key:m.id,comment:m},null,8,["comment"]))),128))])):(e.openBlock(),e.createElementBlock("p",Lc,"暂无活动记录"))],!0)])])]),e.createElementVNode("div",zc,[e.renderSlot(i.$slots,"props",{},()=>[t.propItems&&t.propItems.length>0?(e.openBlock(),e.createBlock(Ze,{key:0,items:t.propItems,title:"属性"},null,8,["items"])):e.createCommentVNode("",!0)],!0)])]))}}),[["__scopeId","data-v-dedb9066"]]),Pc={class:"of-dashboard-chart"},Xe=N(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 l=()=>{n.value&&(a||(a=kt.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(()=>{l(),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],l,{deep:!0}),(c,s)=>(e.openBlock(),e.createElementBlock("div",Pc,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-314d77da"]]),Fc={class:"of-dashboard-chart"},$e=N(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 l=()=>{n.value&&(a||(a=kt.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(()=>{l(),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],l,{deep:!0}),(c,s)=>(e.openBlock(),e.createElementBlock("div",Fc,[e.createElementVNode("div",{ref_key:"chartRef",ref:n,class:"of-dashboard-chart__canvas"},null,512)]))}}),[["__scopeId","data-v-d60e9301"]]),Qe=e.defineComponent({__name:"DoughnutChart",props:{title:{},data:{},colors:{},showLegend:{type:Boolean}},setup(t){return(o,n)=>(e.openBlock(),e.createBlock($e,{title:t.title,data:t.data,colors:t.colors,"show-legend":t.showLegend,doughnut:""},null,8,["title","data","colors","show-legend"]))}}),Uc={class:"of-number-card"},vc={class:"of-number-card__title"},Kc={class:"of-number-card__value-row"},Gc={key:0,class:"of-number-card__compare"},Je=N(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",Uc,[e.createElementVNode("p",vc,e.toDisplayString(t.title),1),e.createElementVNode("div",Kc,[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(M.TrendingUpIcon),{key:0,class:"of-number-card__trend up",size:16})):t.trend==="down"?(e.openBlock(),e.createBlock(e.unref(M.TrendingDownIcon),{key:1,class:"of-number-card__trend down",size:16})):e.createCommentVNode("",!0)]),t.compare?(e.openBlock(),e.createElementBlock("p",Gc,"环比 "+e.toDisplayString(t.compare),1)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-2287094b"]]),Hc={class:"of-table-chart"},qc={key:0,class:"of-table-chart__title"},Wc={class:"of-table-chart__wrapper"},Yc={class:"of-table-chart__table"},et=N(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",Hc,[t.title?(e.openBlock(),e.createElementBlock("p",qc,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",Wc,[e.createElementVNode("table",Yc,[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,l=>(e.openBlock(),e.createElementBlock("td",{key:l.key,style:e.normalizeStyle({textAlign:l.align??"left"})},e.toDisplayString(a[l.key]??"-"),5))),128))]))),128))])])])]))}}),[["__scopeId","data-v-2b60cfd2"]]),Zc={class:"of-dashboard"},jc={class:"of-dashboard__header"},Xc={class:"of-dashboard__title"},yn=N(e.defineComponent({__name:"index",props:{title:{default:"Dashboard"},widgets:{default:()=>[]},columns:{default:4},gap:{default:16}},setup(t){const o=t,n={bar:Xe,pie:$e,doughnut:Qe,"number-card":Je,table:et},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(l,c)=>(e.openBlock(),e.createElementBlock("section",Zc,[e.createElementVNode("header",jc,[e.createElementVNode("h3",Xc,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,s=>(e.openBlock(),e.createElementBlock("article",{key:s.id,class:"of-dashboard__item",style:e.normalizeStyle({gridColumn:`span ${s.colSpan??1}`,gridRow:`span ${s.rowSpan??1}`})},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n[s.type]),e.mergeProps({title:s.title,data:s.data},{ref_for:!0},s.config??{}),null,16,["title","data"]))],4))),128))],4)]))}}),[["__scopeId","data-v-b4680c55"]]),Qc={class:"of-card-title"},Jc={class:"of-card-meta"},ei={class:"of-card-id"},ti={key:0,class:"of-card-date"},ni={key:1,class:"of-card-role-badge"},oi={class:"of-card-tags"},xe=N(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(()=>ne(n.task.priority,oe(fe,n.priorityColorMap))),l=e.computed(()=>ne(n.task.status,oe(ce,n.statusColorMap))),c=e.computed(()=>r.value.style),s=e.computed(()=>l.value.style),d=e.computed(()=>l.value.label),i=e.computed(()=>r.value.label);function f(u){if(!u)return"";const p=new Date(u);return isNaN(p.getTime())?u:`${p.getMonth()+1}/${p.getDate()}`}const m=e.computed(()=>f(n.task.updatedAt??n.task.endDate));return(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-kanban-card",{"of-kanban-card--dragging":t.dragging}]),onClick:p[0]||(p[0]=g=>a("click",t.task))},[e.createElementVNode("div",Qc,e.toDisplayString(t.task.title),1),e.createElementVNode("div",Jc,[e.createElementVNode("span",ei,e.toDisplayString(t.task.id),1),m.value?(e.openBlock(),e.createElementBlock("span",ti,e.toDisplayString(m.value),1)):e.createCommentVNode("",!0),p[1]||(p[1]=e.createElementVNode("span",{class:"of-card-spacer"},null,-1)),t.task.role?(e.openBlock(),e.createElementBlock("span",ni,e.toDisplayString(t.task.role),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",oi,[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(s.value)},e.toDisplayString(d.value),5)])],2))}}),[["__scopeId","data-v-28da7aba"]]),ai={class:"of-kanban-column"},li={class:"of-col-header"},ri={class:"of-col-title"},si={class:"of-col-count"},tt=N(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,m=>{m.length===r.value.length&&m.every((p,g)=>{var _;return p.id===((_=r.value[g])==null?void 0:_.id)})||(r.value=[...m])}),e.watch(r,m=>{a("update:column",{...n.column,tasks:m})});const l=e.computed(()=>r.value.length>50),c=e.ref(null),{visibleItems:s,totalHeight:d,offsetY:i}=Se({items:r,itemHeight:120,overscan:3,containerRef:c}),f=e.computed(()=>{if(n.column.color)return n.column.color;const m=oe(ce,n.statusColorMap),u=m[n.column.id],p=m[n.column.title],g=u??p;return(g==null?void 0:g.dot)??(g==null?void 0:g.text)??"var(--of-color-gray-400)"});return(m,u)=>(e.openBlock(),e.createElementBlock("div",ai,[e.createElementVNode("div",li,[e.createElementVNode("span",{class:"of-col-dot",style:e.normalizeStyle({background:f.value})},null,4),e.createElementVNode("span",ri,e.toDisplayString(t.column.title),1),e.createElementVNode("span",si,e.toDisplayString(r.value.length),1),u[4]||(u[4]=e.createElementVNode("span",{class:"of-col-spacer"},null,-1)),e.createElementVNode("button",{class:"of-col-add-btn",onClick:u[0]||(u[0]=p=>a("add-card",t.column.id))},[e.createVNode(e.unref(M.Plus),{size:14})])]),l.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(s),({data:p})=>(e.openBlock(),e.createBlock(xe,{key:p.id,task:p,onClick:u[3]||(u[3]=g=>a("card-click",g))},null,8,["task"]))),128))],4)],4)],512)):(e.openBlock(),e.createBlock(e.unref(Le.VueDraggable),{key:0,modelValue:r.value,"onUpdate:modelValue":u[2]||(u[2]=p=>r.value=p),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,p=>(e.openBlock(),e.createBlock(xe,{key:p.id,task:p,onClick:u[1]||(u[1]=g=>a("card-click",g))},null,8,["task"]))),128))]),_:1},8,["modelValue","ghost-class"]))]))}}),[["__scopeId","data-v-b930d0ab"]]),ci={class:"of-quick-add"},ii={class:"of-quick-add-placeholder"},di=["placeholder"],nt=N(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(""),l=e.ref(null);async function c(){var f;a.value=!0,await e.nextTick(),(f=l.value)==null||f.focus()}function s(){a.value=!1,r.value=""}function d(f){if(f.key==="Enter"){const m=r.value.trim();m&&(n("submit",m),r.value="",s())}else f.key==="Escape"&&(n("cancel"),s())}function i(){setTimeout(()=>{r.value.trim()||s()},150)}return(f,m)=>(e.openBlock(),e.createElementBlock("div",ci,[a.value?e.withDirectives((e.openBlock(),e.createElementBlock("input",{key:1,ref_key:"inputRef",ref:l,"onUpdate:modelValue":m[0]||(m[0]=u=>r.value=u),type:"text",class:"of-quick-add-input",placeholder:t.placeholder,onKeydown:d,onBlur:i},null,40,di)),[[e.vModelText,r.value]]):(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-quick-add-trigger",onClick:c},[e.createVNode(e.unref(M.Plus),{size:14,class:"of-quick-add-icon"}),e.createElementVNode("span",ii,e.toDisplayString(t.placeholder),1)]))]))}}),[["__scopeId","data-v-5ebea11d"]]),mi={class:"of-kanban-board"},fi={class:"of-kanban-inner"},kn=N(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?nn(n.records,{kanbanFieldId:n.kanbanFieldId,laneOrder:n.laneOrder,laneTitles:n.laneTitles}):[],l=e.ref(r());e.watch(()=>[n.columns,n.records,n.kanbanFieldId,n.laneOrder,n.laneTitles],()=>{l.value=r()});function c(i){const f=l.value.findIndex(m=>m.id===i.id);if(f!==-1){const m=i.tasks.map(u=>({...u,status:i.id}));l.value[f]={...i,tasks:m},a("update:columns",structuredClone(l.value))}}function s(i){}function d(i,f){const m=l.value.find(g=>g.id===i);if(!m)return;const u={id:`TASK-${Date.now()}`,title:f,status:i,priority:"P3"},p={...m,tasks:[...m.tasks,u]};c(p)}return(i,f)=>(e.openBlock(),e.createElementBlock("div",mi,[e.createElementVNode("div",fi,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,m=>(e.openBlock(),e.createElementBlock("div",{key:m.id,class:"of-kanban-col-wrapper"},[e.createVNode(tt,{column:m,onAddCard:s,onCardClick:f[0]||(f[0]=u=>a("card-click",u)),"onUpdate:column":c},null,8,["column"]),e.createVNode(nt,{class:"of-quick-add-below",onSubmit:u=>d(m.id,u)},null,8,["onSubmit"])]))),128)),t.addColumnVisible?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-add-column-btn",onClick:f[1]||(f[1]=m=>a("add-column"))},[e.createVNode(e.unref(M.Plus),{size:16}),f[2]||(f[2]=e.createElementVNode("span",null,"添加列",-1))])):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-210bcfc5"]]),ot=N(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"]]),ui={key:0,class:"of-streaming-cursor"},at=N(e.defineComponent({__name:"AiStreamingCursor",props:{visible:{type:Boolean}},setup(t){return(o,n)=>t.visible!==!1?(e.openBlock(),e.createElementBlock("span",ui)):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-d71a6f39"]]),pi={class:"of-ai-message"},gi={class:"of-ai-message__avatar"},bi=["src","alt"],_i={key:1,class:"of-ai-message__avatar-emoji"},yi={class:"of-ai-message__body"},ki={key:0,class:"of-ai-message__name"},hi={class:"of-ai-message__content"},Ei={key:1,class:"of-ai-message__timestamp"},lt=N(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",pi,[e.createElementVNode("div",gi,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:t.name||"AI",class:"of-ai-message__avatar-img"},null,8,bi)):(e.openBlock(),e.createElementBlock("span",_i,"🤖"))]),e.createElementVNode("div",yi,[t.name?(e.openBlock(),e.createElementBlock("div",ki,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",hi,e.toDisplayString(t.content),1),t.isStreaming?(e.openBlock(),e.createBlock(at,{key:0})):e.createCommentVNode("",!0)],2),t.timestamp?(e.openBlock(),e.createElementBlock("div",Ei,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)])]))}}),[["__scopeId","data-v-8ed0bf6d"]]),Bi={class:"of-user-message"},Ci={class:"of-user-message__body"},Si={class:"of-user-message__bubble"},wi={key:0,class:"of-user-message__timestamp"},Ni={class:"of-user-message__avatar"},$i=["src"],xi={key:1,class:"of-user-message__avatar-emoji"},rt=N(e.defineComponent({__name:"UserMessageBubble",props:{content:{},timestamp:{},avatar:{}},setup(t){return(o,n)=>(e.openBlock(),e.createElementBlock("div",Bi,[e.createElementVNode("div",Ci,[e.createElementVNode("div",Si,e.toDisplayString(t.content),1),t.timestamp?(e.openBlock(),e.createElementBlock("div",wi,e.toDisplayString(t.timestamp),1)):e.createCommentVNode("",!0)]),e.createElementVNode("div",Ni,[t.avatar?(e.openBlock(),e.createElementBlock("img",{key:0,src:t.avatar,alt:"User",class:"of-user-message__avatar-img"},null,8,$i)):(e.openBlock(),e.createElementBlock("span",xi,"👤"))])]))}}),[["__scopeId","data-v-0a14f8b1"]]),hn=N(e.defineComponent({__name:"AiMessageList",props:{messages:{},isThinking:{type:Boolean}},setup(t){const o=t,n=e.ref(null),a=i=>{var u;const f=o.messages[i];if(!f)return 80;if(f.role==="user")return 60;const m=Math.ceil((((u=f.content)==null?void 0:u.length)??0)/60);return Math.max(80,48+m*24)},{visibleItems:r,totalHeight:l,offsetY:c,scrollToBottom:s}=Se({items:e.computed(()=>o.messages),itemHeight:a,overscan:3,containerRef:n});function d(){s()}return e.watch(()=>[o.messages.length,o.isThinking],async()=>{await e.nextTick(),d()},{immediate:!0}),(i,f)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"listRef",ref:n,class:"of-ai-message-list"},[e.createElementVNode("div",{style:e.normalizeStyle({height:e.unref(l)+"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:m})=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:m.id},[m.role==="ai"?(e.openBlock(),e.createBlock(lt,{key:0,content:m.content,"is-streaming":m.isStreaming,"is-error":m.isError,avatar:m.avatar,name:m.name,timestamp:m.timestamp},null,8,["content","is-streaming","is-error","avatar","name","timestamp"])):(e.openBlock(),e.createBlock(rt,{key:1,content:m.content,avatar:m.avatar,timestamp:m.timestamp},null,8,["content","avatar","timestamp"]))],64))),128))],4)],4),t.isThinking?(e.openBlock(),e.createBlock(ot,{key:0})):e.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-d42e9b32"]]),Di={key:0,class:"of-ai-sender__tools"},Ti={class:"of-ai-sender__inner"},Vi={key:0,class:"of-ai-sender__prefix"},Ai=["placeholder","disabled"],Mi=["title"],Ri=22,En=N(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(""),l=e.ref(null),c=e.computed(()=>n.maxRows??6);function s(){const p=l.value;if(!p)return;p.style.height="auto";const g=Ri*c.value+16;p.style.height=Math.min(p.scrollHeight,g)+"px"}async function d(){await e.nextTick(),s()}function i(p){p.key==="Enter"&&!p.shiftKey&&(p.preventDefault(),f())}function f(){const p=r.value.trim();!p||n.disabled||(a("send",p),r.value="",e.nextTick(()=>{s()}))}function m(){a("cancel")}function u(){n.disabled?m():f()}return(p,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-ai-sender",{"is-disabled":t.disabled}])},[p.$slots.tools?(e.openBlock(),e.createElementBlock("div",Di,[e.renderSlot(p.$slots,"tools",{},void 0,!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Ti,[p.$slots.prefix?(e.openBlock(),e.createElementBlock("div",Vi,[e.renderSlot(p.$slots,"prefix",{},void 0,!0)])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("textarea",{ref_key:"textareaRef",ref:l,"onUpdate:modelValue":g[0]||(g[0]=_=>r.value=_),class:"of-ai-sender__textarea",placeholder:t.placeholder??"输入消息...",disabled:t.disabled,rows:"1",onInput:d,onKeydown:i},null,40,Ai),[[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:u},[t.disabled?(e.openBlock(),e.createBlock(e.unref(M.Square),{key:0,size:16})):(e.openBlock(),e.createBlock(e.unref(M.ArrowUp),{key:1,size:16}))],10,Mi)])],2))}}),[["__scopeId","data-v-2b036e27"]]),Ii={class:"of-dialog"},Oi={class:"of-dialog__content"},Li={class:"of-dialog__title"},zi={key:0,class:"of-dialog__text"},Pi=["disabled"],Fi=["disabled"],Bn=N(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:M.Info,warning:M.AlertTriangle,danger:M.AlertCircle,success:M.CheckCircle2},l=e.computed(()=>`of-dialog__icon--${n.type}`),c=e.computed(()=>r[n.type]),s=e.computed(()=>n.type==="danger"?"of-dialog__btn--danger":"of-dialog__btn--primary");function d(m){a("update:modelValue",m)}function i(){n.loading||a("confirm")}function f(){a("cancel"),a("update:modelValue",!1)}return(m,u)=>(e.openBlock(),e.createBlock(we,{"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:f},e.toDisplayString(t.cancelText),9,Pi)),e.createElementVNode("button",{class:e.normalizeClass(["of-dialog__btn",s.value]),disabled:t.loading,type:"button",onClick:i},[t.loading?(e.openBlock(),e.createBlock(e.unref(M.Loader2),{key:0,size:14,class:"of-dialog__spinner"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(t.confirmText),1)],10,Fi)]),default:e.withCtx(()=>[e.createElementVNode("div",Ii,[e.createElementVNode("div",{class:e.normalizeClass(["of-dialog__icon-wrap",l.value])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:28}))],2),e.createElementVNode("div",Oi,[e.createElementVNode("h3",Li,e.toDisplayString(t.title),1),t.content?(e.openBlock(),e.createElementBlock("p",zi,e.toDisplayString(t.content),1)):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"default",{},void 0,!0)])])]),_:3},8,["model-value","width","mask-closable"]))}}),[["__scopeId","data-v-1b14e831"]]),Ui=["aria-label"],vi={key:0,class:"of-side-panel__header"},Ki={key:0,class:"of-side-panel__title"},Gi={key:1,class:"of-side-panel__title-placeholder"},Hi={class:"of-side-panel__body"},qi=["aria-label"],Wi={key:0,class:"of-side-panel__header"},Yi={key:0,class:"of-side-panel__title"},Zi={key:1,class:"of-side-panel__title-placeholder"},ji={class:"of-side-panel__body"},Cn=N(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`})),l=e.ref(null);let c=null;function s(){return l.value?Array.from(l.value.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"]), a[href]')).filter(m=>!m.closest('[aria-hidden="true"]')):[]}function d(m){if(m.key!=="Tab")return;const u=s();if(u.length===0){m.preventDefault();return}const p=u[0],g=u[u.length-1];m.shiftKey?document.activeElement===p&&(m.preventDefault(),g.focus()):document.activeElement===g&&(m.preventDefault(),p.focus())}function i(m){m.key==="Escape"&&n.modelValue&&f()}e.onMounted(()=>{typeof document>"u"||document.addEventListener("keydown",i)}),e.watch(()=>n.modelValue,m=>{typeof document>"u"||(document.body.style.overflow=m?"hidden":"",m?(c=document.activeElement,e.nextTick(()=>{const u=s();u.length&&u[0].focus(),document.addEventListener("keydown",d)})):(document.removeEventListener("keydown",d),c==null||c.focus(),c=null))}),e.onBeforeUnmount(()=>{typeof document>"u"||(document.removeEventListener("keydown",i),document.removeEventListener("keydown",d),document.body.style.overflow="")});function f(){a("update:modelValue",!1)}return(m,u)=>(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,ref_key:"sidePanelRef",ref:l,class:"of-side-panel",style:e.normalizeStyle(r.value),role:"dialog","aria-modal":"true","aria-label":t.title},[m.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",vi,[e.renderSlot(m.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",Ki,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",Gi))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:f},[e.createVNode(e.unref(M.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",Hi,[e.renderSlot(m.$slots,"default",{},void 0,!0)])],12,Ui)):e.createCommentVNode("",!0)],64)):e.withDirectives((e.openBlock(),e.createElementBlock("aside",{key:1,ref_key:"sidePanelRef",ref:l,class:"of-side-panel",style:e.normalizeStyle(r.value),role:"dialog","aria-modal":"true","aria-label":t.title},[m.$slots.header||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",Wi,[e.renderSlot(m.$slots,"header",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",Yi,e.toDisplayString(t.title),1)):(e.openBlock(),e.createElementBlock("div",Zi))],!0),t.showClose?(e.openBlock(),e.createElementBlock("button",{key:0,class:"of-side-panel__close",type:"button","aria-label":"关闭",onClick:f},[e.createVNode(e.unref(M.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",ji,[e.renderSlot(m.$slots,"default",{},void 0,!0)])],12,qi)),[[e.vShow,t.modelValue]])]))}}),[["__scopeId","data-v-a021fd10"]]),Xi=["aria-label"],Qi={class:"of-drawer__inner"},Ji={key:0,class:"of-drawer__header"},ed={class:"of-drawer__title"},td={key:0,class:"of-drawer__title-text"},nd={class:"of-drawer__body"},Sn=N(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(),l=e.computed(()=>({width:`${n.width}px`})),c=e.ref(null);let s=null;function d(){return c.value?Array.from(c.value.querySelectorAll('button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"]), a[href]')).filter(u=>!u.closest('[aria-hidden="true"]')):[]}function i(u){if(u.key!=="Tab")return;const p=d();if(p.length===0){u.preventDefault();return}const g=p[0],_=p[p.length-1];u.shiftKey?document.activeElement===g&&(u.preventDefault(),_.focus()):document.activeElement===_&&(u.preventDefault(),g.focus())}function f(){a("update:modelValue",!1)}function m(u){u.key==="Escape"&&n.modelValue&&f()}return e.onMounted(()=>{typeof document>"u"||document.addEventListener("keydown",m)}),e.watch(()=>n.modelValue,u=>{typeof document>"u"||(document.body.style.overflow=u?"hidden":"",u?(s=document.activeElement,e.nextTick(()=>{const p=d();p.length&&p[0].focus(),document.addEventListener("keydown",i)})):(document.removeEventListener("keydown",i),s==null||s.focus(),s=null))},{immediate:!0}),e.onBeforeUnmount(()=>{typeof document>"u"||(document.removeEventListener("keydown",m),document.removeEventListener("keydown",i),document.body.style.overflow="")}),(u,p)=>(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:p[1]||(p[1]=g=>t.maskClosable&&f())},[e.createElementVNode("aside",{ref_key:"drawerRef",ref:c,class:"of-drawer",role:"dialog","aria-modal":"true","aria-label":t.title,style:e.normalizeStyle(l.value),onClick:p[0]||(p[0]=e.withModifiers(()=>{},["stop"]))},[e.createElementVNode("div",Qi,[e.unref(r).title||t.title||t.showClose?(e.openBlock(),e.createElementBlock("div",Ji,[e.createElementVNode("div",ed,[e.renderSlot(u.$slots,"title",{},()=>[t.title?(e.openBlock(),e.createElementBlock("h3",td,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:f},[e.createVNode(e.unref(M.X),{size:18})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),e.createElementVNode("div",nd,[e.renderSlot(u.$slots,"default",{},void 0,!0)])])],12,Xi)],4)):e.createCommentVNode("",!0)]),_:3})]))}}),[["__scopeId","data-v-1f5095d4"]]),od=["role","aria-label"],ad={class:"of-toast__icon"},ld={class:"of-toast__content"},rd={key:0,class:"of-toast__title"},sd={class:"of-toast__message"},st=N(e.defineComponent({__name:"ToastItem",props:{toast:{}},emits:["close"],setup(t,{emit:o}){const n=t,a=o,r={info:M.Info,success:M.CheckCircle2,warning:M.AlertTriangle,error:M.XCircle},l={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]),s=e.computed(()=>l[n.toast.type]),d=e.computed(()=>n.toast.type==="error"?"alertdialog":"alert");return(i,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-toast",`of-toast--${t.toast.type}`]),style:e.normalizeStyle({borderColor:s.value.border,borderLeftColor:s.value.borderLeft,backgroundColor:s.value.bg}),role:d.value,"aria-label":`${t.toast.type}: ${t.toast.message}`},[e.createElementVNode("div",ad,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.value),{size:20,color:s.value.icon,"aria-hidden":"true"},null,8,["color"]))]),e.createElementVNode("div",ld,[t.toast.title?(e.openBlock(),e.createElementBlock("p",rd,e.toDisplayString(t.toast.title),1)):e.createCommentVNode("",!0),e.createElementVNode("p",sd,e.toDisplayString(t.toast.message),1)]),e.createElementVNode("button",{class:"of-toast__close",type:"button","aria-label":"关闭通知",onClick:f[0]||(f[0]=m=>a("close"))},[e.createVNode(e.unref(M.X),{size:16})])],14,od))}}),[["__scopeId","data-v-83caaa5a"]]),cd={class:"of-toast-container","aria-live":"polite","aria-atomic":"false"},wn=e.defineComponent({__name:"ToastContainer",setup(t){const{toasts:o,remove:n}=We();return(a,r)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.createElementVNode("div",cd,[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),l=>(e.openBlock(),e.createBlock(st,{key:l.id,toast:l,onClose:c=>e.unref(n)(l.id)},null,8,["toast","onClose"]))),128))]),_:1})])]))}}),id={class:"of-tabs__nav",role:"tablist","aria-label":"tabs"},dd=["disabled","id","aria-selected","aria-controls","aria-disabled","tabindex","onClick","onKeydown"],md={class:"of-tabs__tab-label"},fd={key:1,class:"of-tabs__badge"},ud={class:"of-tabs__content"},Nn=N(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)||""),l=e.computed({get:()=>n.modelValue??r.value,set:i=>{r.value=i,a("update:modelValue",i),a("change",i)}});function c(i){l.value=i}function s(i,f){const m=n.tabs.filter(p=>!p.disabled),u=m.findIndex(p=>p.key===f);if(i.key==="ArrowRight"||i.key==="ArrowDown"){i.preventDefault();const p=m[(u+1)%m.length];p&&c(p.key)}else if(i.key==="ArrowLeft"||i.key==="ArrowUp"){i.preventDefault();const p=m[(u-1+m.length)%m.length];p&&c(p.key)}else if(i.key==="Home"){i.preventDefault();const p=m[0];p&&c(p.key)}else if(i.key==="End"){i.preventDefault();const p=m[m.length-1];p&&c(p.key)}}return e.provide("of-tabs-active",l),e.provide("of-tabs-set",c),(i,f)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["of-tabs",[`of-tabs--${t.variant||"line"}`,`of-tabs--${t.size||"md"}`]])},[e.createElementVNode("div",id,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.tabs,m=>(e.openBlock(),e.createElementBlock("button",{key:m.key,class:e.normalizeClass(["of-tabs__tab",{"of-tabs__tab--active":l.value===m.key,"of-tabs__tab--disabled":m.disabled}]),disabled:m.disabled,role:"tab",id:`of-tab-${m.key}`,"aria-selected":l.value===m.key,"aria-controls":`of-panel-${m.key}`,"aria-disabled":m.disabled,tabindex:l.value===m.key?0:-1,onClick:u=>!m.disabled&&c(m.key),onKeydown:u=>s(u,m.key)},[m.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(m.icon)),{key:0,class:"of-tabs__tab-icon"})):e.createCommentVNode("",!0),e.createElementVNode("span",md,e.toDisplayString(m.label),1),m.badge!=null?(e.openBlock(),e.createElementBlock("span",fd,e.toDisplayString(m.badge),1)):e.createCommentVNode("",!0)],42,dd))),128))]),e.createElementVNode("div",ud,[e.renderSlot(i.$slots,"default",{},void 0,!0)])],2))}}),[["__scopeId","data-v-dd5210e5"]]),pd=["id","aria-labelledby","hidden"],$n=N(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,l)=>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,pd)),[[e.vShow,t.keepAlive?a.value:!0]]):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-5e40c39f"]]),gd={class:"of-breadcrumb","aria-label":"breadcrumb"},bd={class:"of-breadcrumb__list"},_d={key:0,class:"of-breadcrumb__separator","aria-hidden":"true"},xn=N(e.defineComponent({__name:"Breadcrumb",props:{items:{},separator:{}},setup(t){function o(n){n.onClick&&n.onClick()}return(n,a)=>(e.openBlock(),e.createElementBlock("nav",gd,[e.createElementVNode("ol",bd,[t.items&&t.items.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.items,(r,l)=>(e.openBlock(),e.createElementBlock("li",{key:l,class:e.normalizeClass(["of-breadcrumb__item",{"of-breadcrumb__item--active":l===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":l===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(X)(r.icon)),{key:0,class:"of-breadcrumb__icon"})):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(r.label),1)]),_:2},1032,["href","class","onClick"])),l<t.items.length-1?(e.openBlock(),e.createElementBlock("span",_d,[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-460cd1d5"]]),Dn=N(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(l=>n("click",l),["prevent"]))},{default:e.withCtx(()=>[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(X)(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-23cd2804"]]),yd={key:0,class:"of-mermaid__loading"},kd={key:1,class:"of-mermaid__error"},hd={class:"of-mermaid__error-text"},Tn=N(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),l=e.ref(!0),c=e.ref("");async function s(){var d;if(!((d=o.code)!=null&&d.trim())){l.value=!1;return}l.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:f}=await i.render(a,o.code);r.value&&(r.value.innerHTML=f)}catch(i){c.value=(i==null?void 0:i.message)||"图表渲染失败,请检查 Mermaid 语法"}finally{l.value=!1}}return e.onMounted(()=>s()),e.watch(()=>[o.code,o.theme],()=>s()),(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-mermaid",style:e.normalizeStyle({width:o.width||"100%"})},[l.value?(e.openBlock(),e.createElementBlock("div",yd,[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",kd,[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",hd,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-2947d038"]]),Ed={class:"of-split-pane__second"},Vn=N(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 l(i){i.preventDefault(),a.value=!0,document.addEventListener("mousemove",c),document.addEventListener("mouseup",d),document.addEventListener("touchmove",s,{passive:!1}),document.addEventListener("touchend",d)}function c(i){if(!a.value||!r.value)return;const f=r.value.getBoundingClientRect(),m=(o.direction||"horizontal")==="horizontal";let u;m?u=(i.clientX-f.left)/f.width*100:u=(i.clientY-f.top)/f.height*100;const p=o.minSize??10,g=o.maxSize??90;n.value=Math.min(g,Math.max(p,u))}function s(i){if(!a.value||!r.value)return;i.preventDefault();const f=i.touches[0],m=r.value.getBoundingClientRect(),u=(o.direction||"horizontal")==="horizontal";let p;u?p=(f.clientX-m.left)/m.width*100:p=(f.clientY-m.top)/m.height*100;const g=o.minSize??10,_=o.maxSize??90;n.value=Math.min(_,Math.max(g,p))}function d(){a.value=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",s),document.removeEventListener("touchend",d)}return e.onUnmounted(()=>{document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d),document.removeEventListener("touchmove",s),document.removeEventListener("touchend",d)}),(i,f)=>(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:l,onTouchstart:e.withModifiers(l,["prevent"])},[...f[0]||(f[0]=[e.createElementVNode("div",{class:"of-split-pane__divider-inner"},null,-1)])],32),e.createElementVNode("div",Ed,[e.renderSlot(i.$slots,"second",{},void 0,!0)])],2))}}),[["__scopeId","data-v-860f90a3"]]),Bd={key:0,class:"of-context-menu__sep"},Cd=["disabled","onClick"],Sd={key:0,class:"of-context-menu__icon"},wd={class:"of-context-menu__label"},Nd={key:1,class:"of-context-menu__submenu-indicator"},An=N(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),l=e.computed(()=>({position:"fixed",left:`${n.x}px`,top:`${n.y}px`}));function c(m){m.disabled||m.separator||(a("select",m.key),a("close"))}function s(m){const u=m.target;r.value&&u&&!r.value.contains(u)&&a("close")}function d(m){m.key==="Escape"&&a("close")}function i(){document.addEventListener("mousedown",s),document.addEventListener("keydown",d)}function f(){document.removeEventListener("mousedown",s),document.removeEventListener("keydown",d)}return e.watch(()=>n.visible,m=>{if(m){i();return}f()},{immediate:!0}),e.onBeforeUnmount(()=>{f()}),(m,u)=>(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(l.value),role:"menu",onMousedown:u[0]||(u[0]=e.withModifiers(()=>{},["stop"]))},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.items,p=>{var g;return e.openBlock(),e.createElementBlock(e.Fragment,{key:p.key},[p.separator?(e.openBlock(),e.createElementBlock("hr",Bd)):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:e.normalizeClass(["of-context-menu__item",{"is-disabled":p.disabled,"is-danger":p.danger}]),disabled:p.disabled,role:"menuitem",onClick:_=>c(p)},[p.icon?(e.openBlock(),e.createElementBlock("span",Sd,e.toDisplayString(p.icon),1)):e.createCommentVNode("",!0),e.createElementVNode("span",wd,e.toDisplayString(p.label),1),(g=p.children)!=null&&g.length?(e.openBlock(),e.createElementBlock("span",Nd,"›")):e.createCommentVNode("",!0)],10,Cd))],64)}),128))],36)):e.createCommentVNode("",!0)]))}}),[["__scopeId","data-v-e1a1d45d"]]);function Mn(t={}){const o=e.ref(!1),n=e.ref(!1),a=e.ref(null),r=e.ref(0);let l=null,c="";async function s(i){var k,y,$,h,C,S,D,q,b;n.value=!0,o.value=!1,a.value=null,c="",l=new AbortController;let f=null;t.timeout&&t.timeout>0&&(f=setTimeout(()=>{l==null||l.abort()},t.timeout));let m="",u=[],p=!1;const g=()=>{var w,x;if(m&&((w=t.onChunk)==null||w.call(t,m),m=""),u.length>0){for(const O of u)(x=t.onData)==null||x.call(t,O);u=[]}p=!1},_=()=>{p||(p=!0,requestAnimationFrame(g))};try{const w=i.getReader(),x=new TextDecoder;for(n.value=!1,o.value=!0;;){const{done:O,value:G}=await w.read();if(O)break;const K=x.decode(G,{stream:!0});if(t.mode==="sse"){c+=K;const v=c.split(`
|
|
5
|
+
`);c=v.pop()??"";for(const te of v){const B=te.trim();if(!(!B||B.startsWith(":"))&&B.startsWith("data: ")){const V=B.slice(6);if(V==="[DONE]")continue;try{const A=JSON.parse(V);(t.bufferInterval??0)>0?(u.push(A),_()):(k=t.onData)==null||k.call(t,A)}catch{(t.bufferInterval??0)>0?(m+=V,_()):(y=t.onChunk)==null||y.call(t,V)}}}}else(t.bufferInterval??0)>0?(m+=K,_()):($=t.onChunk)==null||$.call(t,K)}g(),(h=t.onDone)==null||h.call(t)}catch(w){if(w.name!=="AbortError"){const x=((C=t.retry)==null?void 0:C.maxRetries)??0;if(r.value<x){const O=((S=t.retry)==null?void 0:S.baseDelay)??1e3,G=((D=t.retry)==null?void 0:D.backoff)==="linear"?O*(r.value+1):O*Math.pow(2,r.value);r.value++,await new Promise(K=>setTimeout(K,G)),(q=t.onRetry)==null||q.call(t,r.value);return}a.value=w,(b=t.onError)==null||b.call(t,w)}}finally{f&&clearTimeout(f),o.value=!1,n.value=!1}}function d(){l==null||l.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:s,cancel:d}}function Rn(t={}){const o=e.ref(""),n=e.ref(!1);let a="",r=0,l=null,c=null;const s=t.speed??20;function d(){l!==null&&(cancelAnimationFrame(l),l=null),c!==null&&(clearTimeout(c),c=null)}function i(){var g,_;if(r>=a.length){n.value=!1,c=null,(g=t.onComplete)==null||g.call(t);return}o.value=a.slice(0,++r),(_=t.onUpdate)==null||_.call(t,o.value),n.value&&(c=setTimeout(i,s))}function f(){if(typeof document<"u"&&document.hidden){i();return}let g=0;function _(k){var y,$;if(g||(g=k),k-g>=s){if(g=k,r>=a.length){n.value=!1,l=null,(y=t.onComplete)==null||y.call(t);return}o.value=a.slice(0,++r),($=t.onUpdate)==null||$.call(t,o.value)}n.value&&(l=requestAnimationFrame(_))}l=requestAnimationFrame(_)}function m(g){a+=g,n.value||(n.value=!0,f())}function u(){d(),a="",r=0,o.value="",n.value=!1}function p(){var g,_;d(),o.value=a,r=a.length,n.value=!1,(g=t.onUpdate)==null||g.call(t,o.value),(_=t.onComplete)==null||_.call(t)}return{displayText:e.readonly(o),isTyping:e.readonly(n),append:m,reset:u,flush:p}}function In(){return Date.now().toString(36)+Math.random().toString(36).slice(2,6)}function $d(t){const o=e.shallowRef([]),n=e.ref(!1),a=e.ref(null),r=t.typewriter?Rn({speed:t.typewriterSpeed??15,onUpdate:_=>{if(a.value){const k=o.value.findIndex(y=>y.id===a.value);k!==-1&&(o.value[k].content=_,e.triggerRef(o))}}}):null;function l(_){const k={id:In(),role:"user",content:_,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(k),e.triggerRef(o),k}function c(){const _={id:In(),role:"ai",content:"",isStreaming:!0,timestamp:new Date().toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"})};return o.value.push(_),e.triggerRef(o),a.value=_.id,_}function s(_,k){const y=o.value.findIndex($=>$.id===_);y!==-1&&(o.value[y]={...o.value[y],...k},e.triggerRef(o))}function d(_,k){const y=o.value.findIndex($=>$.id===_);y!==-1&&(o.value[y].content+=k,e.triggerRef(o))}const{start:i,cancel:f,isStreaming:m}=Mn({mode:t.parseChunk?"sse":"raw",onData:t.parseChunk?_=>{const k=t.parseChunk(_);k&&a.value&&(r?r.append(k):d(a.value,k))}:void 0,onChunk:t.parseChunk?void 0:_=>{a.value&&(r?r.append(_):d(a.value,_))},onDone:()=>{a.value&&(r&&r.flush(),s(a.value,{isStreaming:!1})),n.value=!1,a.value=null},onError:_=>{var k;a.value&&s(a.value,{isStreaming:!1,error:!0,content:`错误:${_.message}`}),n.value=!1,a.value=null,(k=t.onError)==null||k.call(t,_)}});async function u(_){var y;if(n.value||!_.trim())return;l(_);const k=c();n.value=!0,r&&r.reset();try{const $=await t.sendRequest(_,o.value.slice(0,-2)),h=$ instanceof Response?$.body:$;await i(h)}catch($){s(k.id,{isStreaming:!1,error:!0,content:`请求失败:${$.message}`}),n.value=!1,a.value=null,(y=t.onError)==null||y.call(t,$)}}function p(){f(),a.value&&s(a.value,{isStreaming:!1}),n.value=!1,a.value=null}function g(){p(),o.value=[],e.triggerRef(o)}return{messages:e.readonly(o),isGenerating:e.readonly(n),isStreaming:m,send:u,cancel:p,clear:g}}const xd=[{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:"不为空"}],Dd=[{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 Td(){return Math.random().toString(36).slice(2,8)}function Vd(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 Ad(t={}){const o=e.shallowRef([]),n=e.ref("and"),a=e.computed(()=>o.value.length>0);function r(f){var m,u;o.value.push({id:Td(),field:f??((u=(m=t.columns)==null?void 0:m[0])==null?void 0:u.key)??"",operator:"contains",value:""}),e.triggerRef(o)}function l(f){o.value=o.value.filter(m=>m.id!==f),e.triggerRef(o)}function c(f,m){const u=o.value.findIndex(p=>p.id===f);u!==-1&&(o.value[u]={...o.value[u],...m},e.triggerRef(o))}function s(){o.value=[],e.triggerRef(o)}function d(f){return o.value.length?f.filter(m=>{const u=o.value.map(p=>p.field?Vd(m[p.field],p):!0);return n.value==="and"?u.every(Boolean):u.some(Boolean)}):f}const i=f=>f==="number"?Dd:xd;return{conditions:e.readonly(o),logic:n,isActive:a,addCondition:r,removeCondition:l,updateCondition:c,clearConditions:s,filterData:d,operatorsFor:i}}function Md(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function On(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)&&On(n)}),t}let Ln=class{constructor(o){o.data===void 0&&(o.data={}),this.data=o.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}};function zn(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}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 Rd="</span>",Pn=t=>!!t.scope,Id=(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 Od{constructor(o,n){this.buffer="",this.classPrefix=n.classPrefix,o.walk(this)}addText(o){this.buffer+=zn(o)}openNode(o){if(!Pn(o))return;const n=Id(o.scope,{prefix:this.classPrefix});this.span(n)}closeNode(o){Pn(o)&&(this.buffer+=Rd)}value(){return this.buffer}span(o){this.buffer+=`<span class="${o}">`}}const Fn=(t={})=>{const o={children:[]};return Object.assign(o,t),o};class ct{constructor(){this.rootNode=Fn(),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=Fn({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=>{ct._collapse(n)}))}}class Ld extends ct{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 Od(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ke(t){return t?typeof t=="string"?t:t.source:null}function Un(t){return ie("(?=",t,")")}function zd(t){return ie("(?:",t,")*")}function Pd(t){return ie("(?:",t,")?")}function ie(...t){return t.map(n=>ke(n)).join("")}function Fd(t){const o=t[t.length-1];return typeof o=="object"&&o.constructor===Object?(t.splice(t.length-1,1),o):{}}function it(...t){return"("+(Fd(t).capture?"":"?:")+t.map(a=>ke(a)).join("|")+")"}function vn(t){return new RegExp(t.toString()+"|").exec("").length-1}function Ud(t,o){const n=t&&t.exec(o);return n&&n.index===0}const vd=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function dt(t,{joinWith:o}){let n=0;return t.map(a=>{n+=1;const r=n;let l=ke(a),c="";for(;l.length>0;){const s=vd.exec(l);if(!s){c+=l;break}c+=l.substring(0,s.index),l=l.substring(s.index+s[0].length),s[0][0]==="\\"&&s[1]?c+="\\"+String(Number(s[1])+r):(c+=s[0],s[0]==="("&&n++)}return c}).map(a=>`(${a})`).join(o)}const Kd=/\b\B/,Kn="[a-zA-Z]\\w*",mt="[a-zA-Z_]\\w*",Gn="\\b\\d+(\\.\\d+)?",Hn="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",qn="\\b(0b[01]+)",Gd="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Hd=(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},qd={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[he]},Wd={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[he]},Yd={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/},De=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=it("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},Zd=De("//","$"),jd=De("/\\*","\\*/"),Xd=De("#","$"),Qd={scope:"number",begin:Gn,relevance:0},Jd={scope:"number",begin:Hn,relevance:0},em={scope:"number",begin:qn,relevance:0},tm={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[he,{begin:/\[/,end:/\]/,relevance:0,contains:[he]}]},nm={scope:"title",begin:Kn,relevance:0},om={scope:"title",begin:mt,relevance:0},am={begin:"\\.\\s*"+mt,relevance:0};var Te=Object.freeze({__proto__:null,APOS_STRING_MODE:qd,BACKSLASH_ESCAPE:he,BINARY_NUMBER_MODE:em,BINARY_NUMBER_RE:qn,COMMENT:De,C_BLOCK_COMMENT_MODE:jd,C_LINE_COMMENT_MODE:Zd,C_NUMBER_MODE:Jd,C_NUMBER_RE:Hn,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:Xd,IDENT_RE:Kn,MATCH_NOTHING_RE:Kd,METHOD_GUARD:am,NUMBER_MODE:Qd,NUMBER_RE:Gn,PHRASAL_WORDS_MODE:Yd,QUOTE_STRING_MODE:Wd,REGEXP_MODE:tm,RE_STARTERS_RE:Gd,SHEBANG:Hd,TITLE_MODE:nm,UNDERSCORE_IDENT_RE:mt,UNDERSCORE_TITLE_MODE:om});function lm(t,o){t.input[t.index-1]==="."&&o.ignoreMatch()}function rm(t,o){t.className!==void 0&&(t.scope=t.className,delete t.className)}function sm(t,o){o&&t.beginKeywords&&(t.begin="\\b("+t.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",t.__beforeBegin=lm,t.keywords=t.keywords||t.beginKeywords,delete t.beginKeywords,t.relevance===void 0&&(t.relevance=0))}function cm(t,o){Array.isArray(t.illegal)&&(t.illegal=it(...t.illegal))}function im(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 dm(t,o){t.relevance===void 0&&(t.relevance=1)}const mm=(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,Un(n.begin)),t.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},t.relevance=0,delete n.beforeMatch},fm=["of","and","for","in","not","or","if","then","parent","list","value"],um="keyword";function Wn(t,o,n=um){const a=Object.create(null);return typeof t=="string"?r(n,t.split(" ")):Array.isArray(t)?r(n,t):Object.keys(t).forEach(function(l){Object.assign(a,Wn(t[l],o,l))}),a;function r(l,c){o&&(c=c.map(s=>s.toLowerCase())),c.forEach(function(s){const d=s.split("|");a[d[0]]=[l,pm(d[0],d[1])]})}}function pm(t,o){return o?Number(o):gm(t)?0:1}function gm(t){return fm.includes(t.toLowerCase())}const Yn={},de=t=>{console.error(t)},Zn=(t,...o)=>{console.log(`WARN: ${t}`,...o)},ge=(t,o)=>{Yn[`${t}/${o}`]||(console.log(`Deprecated as of ${t}. ${o}`),Yn[`${t}/${o}`]=!0)},Ve=new Error;function jn(t,o,{key:n}){let a=0;const r=t[n],l={},c={};for(let s=1;s<=o.length;s++)c[s+a]=r[s],l[s+a]=!0,a+=vn(o[s-1]);t[n]=c,t[n]._emit=l,t[n]._multi=!0}function bm(t){if(Array.isArray(t.begin)){if(t.skip||t.excludeBegin||t.returnBegin)throw de("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),Ve;if(typeof t.beginScope!="object"||t.beginScope===null)throw de("beginScope must be object"),Ve;jn(t,t.begin,{key:"beginScope"}),t.begin=dt(t.begin,{joinWith:""})}}function _m(t){if(Array.isArray(t.end)){if(t.skip||t.excludeEnd||t.returnEnd)throw de("skip, excludeEnd, returnEnd not compatible with endScope: {}"),Ve;if(typeof t.endScope!="object"||t.endScope===null)throw de("endScope must be object"),Ve;jn(t,t.end,{key:"endScope"}),t.end=dt(t.end,{joinWith:""})}}function ym(t){t.scope&&typeof t.scope=="object"&&t.scope!==null&&(t.beginScope=t.scope,delete t.scope)}function km(t){ym(t),typeof t.beginScope=="string"&&(t.beginScope={_wrap:t.beginScope}),typeof t.endScope=="string"&&(t.endScope={_wrap:t.endScope}),bm(t),_m(t)}function hm(t){function o(c,s){return new RegExp(ke(c),"m"+(t.case_insensitive?"i":"")+(t.unicodeRegex?"u":"")+(s?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(s,d){d.position=this.position++,this.matchIndexes[this.matchAt]=d,this.regexes.push([d,s]),this.matchAt+=vn(s)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const s=this.regexes.map(d=>d[1]);this.matcherRe=o(dt(s,{joinWith:"|"}),!0),this.lastIndex=0}exec(s){this.matcherRe.lastIndex=this.lastIndex;const d=this.matcherRe.exec(s);if(!d)return null;const i=d.findIndex((m,u)=>u>0&&m!==void 0),f=this.matchIndexes[i];return d.splice(0,i),Object.assign(d,f)}}class a{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(s){if(this.multiRegexes[s])return this.multiRegexes[s];const d=new n;return this.rules.slice(s).forEach(([i,f])=>d.addRule(i,f)),d.compile(),this.multiRegexes[s]=d,d}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(s,d){this.rules.push([s,d]),d.type==="begin"&&this.count++}exec(s){const d=this.getMatcher(this.regexIndex);d.lastIndex=this.lastIndex;let i=d.exec(s);if(this.resumingScanAtSamePosition()&&!(i&&i.index===this.lastIndex)){const f=this.getMatcher(0);f.lastIndex=this.lastIndex+1,i=f.exec(s)}return i&&(this.regexIndex+=i.position+1,this.regexIndex===this.count&&this.considerAll()),i}}function r(c){const s=new a;return c.contains.forEach(d=>s.addRule(d.begin,{rule:d,type:"begin"})),c.terminatorEnd&&s.addRule(c.terminatorEnd,{type:"end"}),c.illegal&&s.addRule(c.illegal,{type:"illegal"}),s}function l(c,s){const d=c;if(c.isCompiled)return d;[rm,im,km,mm].forEach(f=>f(c,s)),t.compilerExtensions.forEach(f=>f(c,s)),c.__beforeBegin=null,[sm,cm,dm].forEach(f=>f(c,s)),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=Wn(c.keywords,t.case_insensitive)),d.keywordPatternRe=o(i,!0),s&&(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&&s.terminatorEnd&&(d.terminatorEnd+=(c.end?"|":"")+s.terminatorEnd)),c.illegal&&(d.illegalRe=o(c.illegal)),c.contains||(c.contains=[]),c.contains=[].concat(...c.contains.map(function(f){return Em(f==="self"?c:f)})),c.contains.forEach(function(f){l(f,d)}),c.starts&&l(c.starts,s),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||{}),l(t)}function Xn(t){return t?t.endsWithParent||Xn(t.starts):!1}function Em(t){return t.variants&&!t.cachedVariants&&(t.cachedVariants=t.variants.map(function(o){return se(t,{variants:null},o)})),t.cachedVariants?t.cachedVariants:Xn(t)?se(t,{starts:t.starts?se(t.starts):null}):Object.isFrozen(t)?se(t):t}var Bm="11.11.1";class Cm extends Error{constructor(o,n){super(o),this.name="HTMLInjectionError",this.html=n}}const ft=zn,Qn=se,Jn=Symbol("nomatch"),Sm=7,eo=function(t){const o=Object.create(null),n=Object.create(null),a=[];let r=!0;const l="Could not find the language '{}', did you forget to load/include a language module?",c={disableAutodetect:!0,name:"Plain text",contains:[]};let s={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:Ld};function d(B){return s.noHighlightRe.test(B)}function i(B){let V=B.className+" ";V+=B.parentNode?B.parentNode.className:"";const A=s.languageDetectRe.exec(V);if(A){const L=b(A[1]);return L||(Zn(l.replace("{}",A[1])),Zn("Falling back to no-highlight mode for this block.",B)),L?A[1]:"no-highlight"}return V.split(/\s+/).find(L=>d(L)||b(L))}function f(B,V,A){let L="",R="";typeof V=="object"?(L=B,A=V.ignoreIllegals,R=V.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`),R=B,L=V),A===void 0&&(A=!0);const P={code:L,language:R};v("before:highlight",P);const U=P.result?P.result:m(P.language,P.code,A);return U.code=P.code,v("after:highlight",U),U}function m(B,V,A,L){const R=Object.create(null);function P(T,I){return T.keywords[I]}function U(){if(!z.keywords){j.addText(Y);return}let T=0;z.keywordPatternRe.lastIndex=0;let I=z.keywordPatternRe.exec(Y),F="";for(;I;){F+=Y.substring(T,I.index);const H=ae.case_insensitive?I[0].toLowerCase():I[0],ee=P(z,H);if(ee){const[le,hf]=ee;if(j.addText(F),F="",R[H]=(R[H]||0)+1,R[H]<=Sm&&(Oe+=hf),le.startsWith("_"))F+=I[0];else{const Ef=ae.classNameAliases[le]||le;J(I[0],Ef)}}else F+=I[0];T=z.keywordPatternRe.lastIndex,I=z.keywordPatternRe.exec(Y)}F+=Y.substring(T),j.addText(F)}function Q(){if(Y==="")return;let T=null;if(typeof z.subLanguage=="string"){if(!o[z.subLanguage]){j.addText(Y);return}T=m(z.subLanguage,Y,!0,No[z.subLanguage]),No[z.subLanguage]=T._top}else T=p(Y,z.subLanguage.length?z.subLanguage:null);z.relevance>0&&(Oe+=T.relevance),j.__addSublanguage(T._emitter,T.language)}function Z(){z.subLanguage!=null?Q():U(),Y=""}function J(T,I){T!==""&&(j.startScope(I),j.addText(T),j.endScope())}function Bo(T,I){let F=1;const H=I.length-1;for(;F<=H;){if(!T._emit[F]){F++;continue}const ee=ae.classNameAliases[T[F]]||T[F],le=I[F];ee?J(le,ee):(Y=le,U(),Y=""),F++}}function Co(T,I){return T.scope&&typeof T.scope=="string"&&j.openNode(ae.classNameAliases[T.scope]||T.scope),T.beginScope&&(T.beginScope._wrap?(J(Y,ae.classNameAliases[T.beginScope._wrap]||T.beginScope._wrap),Y=""):T.beginScope._multi&&(Bo(T.beginScope,I),Y="")),z=Object.create(T,{parent:{value:z}}),z}function So(T,I,F){let H=Ud(T.endRe,F);if(H){if(T["on:end"]){const ee=new Ln(T);T["on:end"](I,ee),ee.isMatchIgnored&&(H=!1)}if(H){for(;T.endsParent&&T.parent;)T=T.parent;return T}}if(T.endsWithParent)return So(T.parent,I,F)}function gf(T){return z.matcher.regexIndex===0?(Y+=T[0],1):(_t=!0,0)}function bf(T){const I=T[0],F=T.rule,H=new Ln(F),ee=[F.__beforeBegin,F["on:begin"]];for(const le of ee)if(le&&(le(T,H),H.isMatchIgnored))return gf(I);return F.skip?Y+=I:(F.excludeBegin&&(Y+=I),Z(),!F.returnBegin&&!F.excludeBegin&&(Y=I)),Co(F,T),F.returnBegin?0:I.length}function _f(T){const I=T[0],F=V.substring(T.index),H=So(z,T,F);if(!H)return Jn;const ee=z;z.endScope&&z.endScope._wrap?(Z(),J(I,z.endScope._wrap)):z.endScope&&z.endScope._multi?(Z(),Bo(z.endScope,T)):ee.skip?Y+=I:(ee.returnEnd||ee.excludeEnd||(Y+=I),Z(),ee.excludeEnd&&(Y=I));do z.scope&&j.closeNode(),!z.skip&&!z.subLanguage&&(Oe+=z.relevance),z=z.parent;while(z!==H.parent);return H.starts&&Co(H.starts,T),ee.returnEnd?0:I.length}function yf(){const T=[];for(let I=z;I!==ae;I=I.parent)I.scope&&T.unshift(I.scope);T.forEach(I=>j.openNode(I))}let Ie={};function wo(T,I){const F=I&&I[0];if(Y+=T,F==null)return Z(),0;if(Ie.type==="begin"&&I.type==="end"&&Ie.index===I.index&&F===""){if(Y+=V.slice(I.index,I.index+1),!r){const H=new Error(`0 width match regex (${B})`);throw H.languageName=B,H.badRule=Ie.rule,H}return 1}if(Ie=I,I.type==="begin")return bf(I);if(I.type==="illegal"&&!A){const H=new Error('Illegal lexeme "'+F+'" for mode "'+(z.scope||"<unnamed>")+'"');throw H.mode=z,H}else if(I.type==="end"){const H=_f(I);if(H!==Jn)return H}if(I.type==="illegal"&&F==="")return Y+=`
|
|
7
|
+
`,1;if(bt>1e5&&bt>I.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Y+=F,F.length}const ae=b(B);if(!ae)throw de(l.replace("{}",B)),new Error('Unknown language: "'+B+'"');const kf=hm(ae);let gt="",z=L||kf;const No={},j=new s.__emitter(s);yf();let Y="",Oe=0,me=0,bt=0,_t=!1;try{if(ae.__emitTokens)ae.__emitTokens(V,j);else{for(z.matcher.considerAll();;){bt++,_t?_t=!1:z.matcher.considerAll(),z.matcher.lastIndex=me;const T=z.matcher.exec(V);if(!T)break;const I=V.substring(me,T.index),F=wo(I,T);me=T.index+F}wo(V.substring(me))}return j.finalize(),gt=j.toHTML(),{language:B,value:gt,relevance:Oe,illegal:!1,_emitter:j,_top:z}}catch(T){if(T.message&&T.message.includes("Illegal"))return{language:B,value:ft(V),illegal:!0,relevance:0,_illegalBy:{message:T.message,index:me,context:V.slice(me-100,me+100),mode:T.mode,resultSoFar:gt},_emitter:j};if(r)return{language:B,value:ft(V),illegal:!1,relevance:0,errorRaised:T,_emitter:j,_top:z};throw T}}function u(B){const V={value:ft(B),illegal:!1,relevance:0,_top:c,_emitter:new s.__emitter(s)};return V._emitter.addText(B),V}function p(B,V){V=V||s.languages||Object.keys(o);const A=u(B),L=V.filter(b).filter(x).map(Z=>m(Z,B,!1));L.unshift(A);const R=L.sort((Z,J)=>{if(Z.relevance!==J.relevance)return J.relevance-Z.relevance;if(Z.language&&J.language){if(b(Z.language).supersetOf===J.language)return 1;if(b(J.language).supersetOf===Z.language)return-1}return 0}),[P,U]=R,Q=P;return Q.secondBest=U,Q}function g(B,V,A){const L=V&&n[V]||A;B.classList.add("hljs"),B.classList.add(`language-${L}`)}function _(B){let V=null;const A=i(B);if(d(A))return;if(v("before:highlightElement",{el:B,language:A}),B.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",B);return}if(B.children.length>0&&(s.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(B)),s.throwUnescapedHTML))throw new Cm("One of your code blocks includes unescaped HTML.",B.innerHTML);V=B;const L=V.textContent,R=A?f(L,{language:A,ignoreIllegals:!0}):p(L);B.innerHTML=R.value,B.dataset.highlighted="yes",g(B,A,R.language),B.result={language:R.language,re:R.relevance,relevance:R.relevance},R.secondBest&&(B.secondBest={language:R.secondBest.language,relevance:R.secondBest.relevance}),v("after:highlightElement",{el:B,result:R,text:L})}function k(B){s=Qn(s,B)}const y=()=>{C(),ge("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function $(){C(),ge("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let h=!1;function C(){function B(){C()}if(document.readyState==="loading"){h||window.addEventListener("DOMContentLoaded",B,!1),h=!0;return}document.querySelectorAll(s.cssSelector).forEach(_)}function S(B,V){let A=null;try{A=V(t)}catch(L){if(de("Language definition for '{}' could not be registered.".replace("{}",B)),r)de(L);else throw L;A=c}A.name||(A.name=B),o[B]=A,A.rawDefinition=V.bind(null,t),A.aliases&&w(A.aliases,{languageName:B})}function D(B){delete o[B];for(const V of Object.keys(n))n[V]===B&&delete n[V]}function q(){return Object.keys(o)}function b(B){return B=(B||"").toLowerCase(),o[B]||o[n[B]]}function w(B,{languageName:V}){typeof B=="string"&&(B=[B]),B.forEach(A=>{n[A.toLowerCase()]=V})}function x(B){const V=b(B);return V&&!V.disableAutodetect}function O(B){B["before:highlightBlock"]&&!B["before:highlightElement"]&&(B["before:highlightElement"]=V=>{B["before:highlightBlock"](Object.assign({block:V.el},V))}),B["after:highlightBlock"]&&!B["after:highlightElement"]&&(B["after:highlightElement"]=V=>{B["after:highlightBlock"](Object.assign({block:V.el},V))})}function G(B){O(B),a.push(B)}function K(B){const V=a.indexOf(B);V!==-1&&a.splice(V,1)}function v(B,V){const A=B;a.forEach(function(L){L[A]&&L[A](V)})}function te(B){return ge("10.7.0","highlightBlock will be removed entirely in v12.0"),ge("10.7.0","Please use highlightElement now."),_(B)}Object.assign(t,{highlight:f,highlightAuto:p,highlightAll:C,highlightElement:_,highlightBlock:te,configure:k,initHighlighting:y,initHighlightingOnLoad:$,registerLanguage:S,unregisterLanguage:D,listLanguages:q,getLanguage:b,registerAliases:w,autoDetection:x,inherit:Qn,addPlugin:G,removePlugin:K}),t.debugMode=function(){r=!1},t.safeMode=function(){r=!0},t.versionString=Bm,t.regex={concat:ie,lookahead:Un,either:it,optional:Pd,anyNumberOfTimes:zd};for(const B in Te)typeof Te[B]=="object"&&On(Te[B]);return Object.assign(t,Te),t},be=eo({});be.newInstance=()=>eo({});var wm=be;be.HighlightJS=be,be.default=be;const W=Md(wm),to="[A-Za-z$_][0-9A-Za-z$_]*",Nm=["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"],$m=["true","false","null","undefined","NaN","Infinity"],no=["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"],oo=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],ao=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],xm=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Dm=[].concat(ao,no,oo);function lo(t){const o=t.regex,n=(A,{after:L})=>{const R="</"+A[0].slice(1);return A.input.indexOf(R,L)!==-1},a=to,r={begin:"<>",end:"</>"},l=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,L)=>{const R=A[0].length+A.index,P=A.input[R];if(P==="<"||P===","){L.ignoreMatch();return}P===">"&&(n(A,{after:R})||L.ignoreMatch());let U;const Q=A.input.substring(R);if(U=Q.match(/^\s*=/)){L.ignoreMatch();return}if((U=Q.match(/^\s+extends\s+/))&&U.index===0){L.ignoreMatch();return}}},s={$pattern:to,keyword:Nm,literal:$m,built_in:Dm,"variable.language":xm},d="[0-9](_?[0-9])*",i=`\\.(${d})`,f="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${f})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${f})\\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},u={className:"subst",begin:"\\$\\{",end:"\\}",keywords:s,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"css"}},_={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,u]},$={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]},h=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,p,g,_,k,{match:/\$\d+/},m];u.contains=h.concat({begin:/\{/,end:/\}/,keywords:s,contains:["self"].concat(h)});const C=[].concat($,u.contains),S=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:S},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"}}]},b={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:{_:[...no,...oo]}},w={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:[D],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function G(A){return o.concat("(?!",A.join("|"),")")}const K={match:o.concat(/\b/,G([...ao,"super","import"].map(A=>`${A}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},v={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},te={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},B="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",V={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(B)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:s,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:b},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),w,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,p,g,_,k,$,{match:/\$\d+/},m,b,{scope:"attr",match:a+o.lookahead(":"),relevance:0},V,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[$,t.REGEXP_MODE,{className:"function",begin:B,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:s,contains:S}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:l},{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:[D,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},v,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},K,O,q,te,{match:/\$[(.]/}]}}const Ae="[A-Za-z$_][0-9A-Za-z$_]*",ro=["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"],so=["true","false","null","undefined","NaN","Infinity"],co=["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"],io=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],mo=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],fo=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],uo=[].concat(mo,co,io);function Tm(t){const o=t.regex,n=(A,{after:L})=>{const R="</"+A[0].slice(1);return A.input.indexOf(R,L)!==-1},a=Ae,r={begin:"<>",end:"</>"},l=/<[A-Za-z0-9\\._:-]+\s*\/>/,c={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(A,L)=>{const R=A[0].length+A.index,P=A.input[R];if(P==="<"||P===","){L.ignoreMatch();return}P===">"&&(n(A,{after:R})||L.ignoreMatch());let U;const Q=A.input.substring(R);if(U=Q.match(/^\s*=/)){L.ignoreMatch();return}if((U=Q.match(/^\s+extends\s+/))&&U.index===0){L.ignoreMatch();return}}},s={$pattern:Ae,keyword:ro,literal:so,built_in:uo,"variable.language":fo},d="[0-9](_?[0-9])*",i=`\\.(${d})`,f="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",m={className:"number",variants:[{begin:`(\\b(${f})((${i})|\\.)?|(${i}))[eE][+-]?(${d})\\b`},{begin:`\\b(${f})\\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},u={className:"subst",begin:"\\$\\{",end:"\\}",keywords:s,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"css"}},_={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[t.BACKSLASH_ESCAPE,u],subLanguage:"graphql"}},k={className:"string",begin:"`",end:"`",contains:[t.BACKSLASH_ESCAPE,u]},$={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]},h=[t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,p,g,_,k,{match:/\$\d+/},m];u.contains=h.concat({begin:/\{/,end:/\}/,keywords:s,contains:["self"].concat(h)});const C=[].concat($,u.contains),S=C.concat([{begin:/(\s*)\(/,end:/\)/,keywords:s,contains:["self"].concat(C)}]),D={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:S},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"}}]},b={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:{_:[...co,...io]}},w={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:[D],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function G(A){return o.concat("(?!",A.join("|"),")")}const K={match:o.concat(/\b/,G([...mo,"super","import"].map(A=>`${A}\\s*\\(`)),a,o.lookahead(/\s*\(/)),className:"title.function",relevance:0},v={begin:o.concat(/\./,o.lookahead(o.concat(a,/(?![0-9A-Za-z$_(])/))),end:a,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},te={match:[/get|set/,/\s+/,a,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},D]},B="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+t.UNDERSCORE_IDENT_RE+")\\s*=>",V={match:[/const|var|let/,/\s+/,a,/\s*/,/=\s*/,/(async\s*)?/,o.lookahead(B)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[D]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:s,exports:{PARAMS_CONTAINS:S,CLASS_REFERENCE:b},illegal:/#(?![$_A-z])/,contains:[t.SHEBANG({label:"shebang",binary:"node",relevance:5}),w,t.APOS_STRING_MODE,t.QUOTE_STRING_MODE,p,g,_,k,$,{match:/\$\d+/},m,b,{scope:"attr",match:a+o.lookahead(":"),relevance:0},V,{begin:"("+t.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[$,t.REGEXP_MODE,{className:"function",begin:B,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:s,contains:S}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:r.begin,end:r.end},{match:l},{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:[D,t.inherit(t.TITLE_MODE,{begin:a,className:"title.function"})]},{match:/\.\.\./,relevance:0},v,{match:"\\$"+a,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[D]},K,O,q,te,{match:/\$[(.]/}]}}function po(t){const o=t.regex,n=Tm(t),a=Ae,r=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],l={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]},s={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},d=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],i={$pattern:Ae,keyword:ro.concat(d),literal:so,built_in:uo.concat(r),"variable.language":fo},f={className:"meta",begin:"@"+a},m=(_,k,y)=>{const $=_.contains.findIndex(h=>h.label===k);if($===-1)throw new Error("can not find mode to replace");_.contains.splice($,1,y)};Object.assign(n.keywords,i),n.exports.PARAMS_CONTAINS.push(f);const u=n.contains.find(_=>_.scope==="attr"),p=Object.assign({},u,{match:o.concat(a,o.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,u,p]),n.contains=n.contains.concat([f,l,c,p]),m(n,"shebang",t.SHEBANG()),m(n,"use_strict",s);const g=n.contains.find(_=>_.label==="func.def");return g.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function go(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"],s={$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:s,illegal:/#/},f={begin:/\{\{/,relevance:0},m={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,f,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[t.BACKSLASH_ESCAPE,d,f,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,f,i]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,f,i]},t.APOS_STRING_MODE,t.QUOTE_STRING_MODE]},u="[0-9](_?[0-9])*",p=`(\\b(${u}))?\\.(${u})|\\b(${u})\\.`,g=`\\b|${a.join("|")}`,_={className:"number",relevance:0,variants:[{begin:`(\\b(${u})|(${p}))[eE][+-]?(${u})[jJ]?(?=${g})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${u})[jJ](?=${g})`}]},k={className:"comment",begin:o.lookahead(/# type:/),end:/$/,keywords:s,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},y={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,contains:["self",d,_,m,t.HASH_COMMENT_MODE]}]};return i.contains=[m,_,d],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:s,illegal:/(<\/|\?)|=>/,contains:[d,_,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},m,k,t.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[y]},{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:[_,y,m]}]}}function ut(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]},l=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"})]}},s={className:"string",begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE,n,r]};r.contains.push(s);const d={match:/\\"/},i={className:"string",begin:/'/,end:/'/},f={match:/\\'/},m={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},t.NUMBER_MODE,n]},u=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=t.SHEBANG({binary:`(${u.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[t.inherit(t.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},_=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],k=["true","false"],y={match:/(\/[a-z._-]+)+/},$=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],h=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],C=["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:_,literal:k,built_in:[...$,...h,"set","shopt",...C,...S]},contains:[p,t.SHEBANG(),g,m,l,c,y,s,d,i,f,n]}}function Vm(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 Am(t){const o=t.regex,n=t.COMMENT("--","$"),a={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},r={begin:/"/,end:/"/,contains:[{match:/""/}]},l=["true","false","unknown"],c=["double precision","large object","with timezone","without timezone"],s=["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"],f=["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"],m=["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"],u=["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"],p=f,g=[...i,...d].filter(S=>!f.includes(S)),_={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},k={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},y={match:o.concat(/\b/,o.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function $(S){return o.concat(/\b/,o.either(...S.map(D=>D.replace(/\s+/,"\\s+"))),/\b/)}const h={scope:"keyword",match:$(u),relevance:0};function C(S,{exceptions:D,when:q}={}){const b=q;return D=D||[],S.map(w=>w.match(/\|\d+$/)||D.includes(w)?w:b(w)?`${w}|0`:w)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:C(g,{when:S=>S.length<3}),literal:l,type:s,built_in:m},contains:[{scope:"type",match:$(c)},h,y,_,a,r,t.C_NUMBER_MODE,t.C_BLOCK_COMMENT_MODE,n,k]}}function bo(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]+;/},l={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},c=t.inherit(l,{begin:/\(/,end:/\)/}),s=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:[l,d,s,c,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[l,c,d,s]}]}]},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 Mm=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_-]*/}}),Rm=["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"],Im=["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"],Om=[...Rm,...Im],Lm=["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(),zm=["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(),Pm=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Fm=["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 Um(t){const o=t.regex,n=Mm(t),a={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},r="and or not only",l=/@-?\w[\w]*(-\w+)*/,c="[a-zA-Z-][a-zA-Z0-9_-]*",s=[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:":("+zm.join("|")+")"},{begin:":(:)?("+Pm.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Fm.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...s,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...s,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:o.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:l},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:r,attribute:Lm.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...s,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Om.join("|")+")\\b"}]}}function _o(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}]},l={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}]},s=/[A-Za-z][A-Za-z0-9+.-]*/,d={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:o.concat(/\[.+?\]\(/,s,/:\/\/.*?\)/),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}/}]},f={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},m=t.inherit(i,{contains:[]}),u=t.inherit(f,{contains:[]});i.contains.push(u),f.contains.push(m);let p=[n,d];return[i,f,m,u].forEach(y=>{y.contains=y.contains.concat(p)}),p=p.concat(i,f),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,l,i,f,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},r,a,d,c,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function yo(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:/\}/}]},l={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]},s=t.inherit(c,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),u={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"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:o,relevance:0},g={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},_={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},k=[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}},u,{className:"number",begin:t.C_NUMBER_RE+"\\b",relevance:0},g,_,l,c],y=[...k];return y.pop(),y.push(s),p.contains=y,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:k}}var _e="[0-9](_*[0-9])*",Me=`\\.(${_e})`,Re="[0-9a-fA-F](_*[0-9a-fA-F])*",ko={className:"number",variants:[{begin:`(\\b(${_e})((${Me})|\\.)?|(${Me}))[eE][+-]?(${_e})[fFdD]?\\b`},{begin:`\\b(${_e})((${Me})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Me})[fFdD]?\\b`},{begin:`\\b(${_e})[fFdD]\\b`},{begin:`\\b0[xX]((${Re})\\.?|(${Re})?\\.(${Re}))[pP][+-]?(${_e})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Re})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function ho(t,o,n){return n===-1?"":t.replace(o,a=>ho(t,o,n-1))}function vm(t){const o=t.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",a=n+ho("(?:<"+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"]}]},f={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:[f,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,ko,t.C_BLOCK_COMMENT_MODE]},t.C_LINE_COMMENT_MODE,t.C_BLOCK_COMMENT_MODE]},ko,i]}}function Km(t){const l={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:l,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:l,illegal:/["']/}]}]}}function Gm(t){const o=t.regex,n=/(r#)?/,a=o.concat(n,t.UNDERSCORE_IDENT_RE),r=o.concat(n,t.IDENT_RE),l={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))?",s=["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!"],f=["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:f,keyword:s,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:f}},{className:"punctuation",begin:"->"},l]}}function pt(t){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}W.registerLanguage("plaintext",pt),W.registerLanguage("text",pt),W.registerLanguage("txt",pt),W.registerLanguage("javascript",lo),W.registerLanguage("js",lo),W.registerLanguage("typescript",po),W.registerLanguage("ts",po),W.registerLanguage("python",go),W.registerLanguage("py",go),W.registerLanguage("bash",ut),W.registerLanguage("sh",ut),W.registerLanguage("shell",ut),W.registerLanguage("json",Vm),W.registerLanguage("sql",Am),W.registerLanguage("xml",bo),W.registerLanguage("html",bo),W.registerLanguage("css",Um),W.registerLanguage("markdown",_o),W.registerLanguage("md",_o),W.registerLanguage("yaml",yo),W.registerLanguage("yml",yo),W.registerLanguage("java",vm),W.registerLanguage("go",Km),W.registerLanguage("rust",Gm);function Hm(t={}){const{showCopyButton:o=!1,t:n=l=>l}=t,a=new ze.marked.Renderer;a.code=function(l,c){const s=typeof l=="object"?l.text||"":l,d=typeof l=="object"?l.lang||"":c||"",i=d&&W.getLanguage(d)?d:"plaintext";let f="";try{f=W.highlight(s,{language:i}).value}catch{f=W.highlight(s,{language:"plaintext"}).value}const m=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
|
+
${m}
|
|
11
11
|
</div>
|
|
12
|
-
<pre class="of-code-block-pre"><code class="hljs language-${i}">${
|
|
13
|
-
</div>`},Le.marked.use({renderer:a});function s(r){return Le.marked.parse(r)}return{renderMarkdown:s}}const rf=[ht,Et,Bt,Ct,St,Nt,wt,$t,xt,Dt,Tt,Vt,Mt,At,Rt,Wt,qt,Yt,Zt,Qt,Pe,Ee,Be,Ue,Jt,en,Ce,kn,tt,xe,nt,an,Ke,ln,rn,He,We,sn,cn,dn,fn,un,pn,gn,_n,bn,Ze,Ye,je,yn,Xe,$e,Qe,Je,et,ot,at,lt,rt,hn,En,Ne,Bn,Sn,Cn,Nn,st,wn,$n,xn,Dn,Tn,Vn,Lt,It,Ot,zt,Mn,Ft,Pt,Ut,Gt,vt,Kt,Ht],Eo={install(t){rf.forEach(o=>{t.component(o.name||o.__name||"",o)})}},sf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=s.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",r.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",r.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:s,class:"of-field-input",type:"text","onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",r.value))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-14e46c45"]])},Symbol.toStringTag,{value:"Module"})),cf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(n.value===null||n.value===void 0?"":String(n.value));e.onMounted(()=>e.nextTick(()=>{var i;return(i=s.value)==null?void 0:i.focus()}));function c(){if(r.value==="")return null;const i=Number(r.value);return Number.isNaN(i)?null:i}function l(i){const m=r.value===""?0:Number(r.value),f=Number.isNaN(m)?0:m;r.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:s,class:"of-field-input",type:"number","onUpdate:modelValue":m[0]||(m[0]=f=>r.value=f),onKeydown:d,onBlur:m[1]||(m[1]=f=>a("commit",c()))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-81dd7528"]])},Symbol.toStringTag,{value:"Module"})),df={class:"of-field-checkbox__icon"},mf=Object.freeze(Object.defineProperty({__proto__:null,default:w(e.defineComponent({__name:"FieldCheckbox",props:{value:{},field:{}},emits:["commit","cancel","tabNext"],setup(t,{emit:o}){const n=t,a=o,s=e.computed(()=>!!n.value);function r(){a("commit",!s.value)}function c(l){(l.key==="Enter"||l.key===" ")&&(l.preventDefault(),r()),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(r,["stop"]),onKeydown:c},[e.createElementVNode("span",df,e.toDisplayString(s.value?"☑":"☐"),1)],32))}}),[["__scopeId","data-v-e5dffacb"]])},Symbol.toStringTag,{value:"Module"})),ff={key:1,class:"of-field-select__display"},uf=["onMouseenter","onClick"],pf={key:1},gf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=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 y=typeof n.value=="string"?n.value:null;return d.value.findIndex(x=>x.value===y)}),m=e.ref(0);function f(){if(!s.value)return;const y=s.value.getBoundingClientRect();c.value={top:`${y.bottom}px`,left:`${y.left}px`,width:`${Math.max(y.width,160)}px`}}function p(y){l.value=!1,a("commit",y)}function u(){l.value&&(l.value=!1,a("cancel"))}function _(y){var x,h;if(!d.value.length){y.key==="Escape"&&(y.preventDefault(),u());return}if(y.key==="ArrowDown"){y.preventDefault(),m.value=Math.min(m.value+1,d.value.length-1);return}if(y.key==="ArrowUp"){y.preventDefault(),m.value=Math.max(m.value-1,0);return}if(y.key==="Enter"){y.preventDefault(),p(((x=d.value[m.value])==null?void 0:x.value)??null);return}if(y.key==="Escape"){y.preventDefault(),u();return}y.key==="Tab"&&(y.preventDefault(),p(((h=d.value[m.value])==null?void 0:h.value)??null),a("tabNext"))}function b(y){var h,C;const x=y.target;x&&((h=s.value)!=null&&h.contains(x)||(C=r.value)!=null&&C.contains(x)||u())}e.onMounted(()=>{m.value=i.value>=0?i.value:0,e.nextTick(()=>{var y;f(),(y=s.value)==null||y.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,y=>{y>=0&&(m.value=y)});const E=e.computed(()=>{const y=typeof n.value=="string"?n.value:null;return d.value.find(x=>x.value===y)});return(y,x)=>{var h,C;return e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:s,class:"of-field-select",tabindex:"0",onKeydown:_},[(h=E.value)!=null&&h.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:E.value.color})},e.toDisplayString(E.value.label),5)):(e.openBlock(),e.createElementBlock("span",ff,e.toDisplayString(((C=E.value)==null?void 0:C.label)??"—"),1)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:r,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:x[0]||(x[0]=e.withModifiers(S=>p(null),["stop"]))}," — ",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,V)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-select__option",{active:V===m.value,selected:V===i.value}]),onMouseenter:G=>m.value=V,onClick:e.withModifiers(G=>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",pf,e.toDisplayString(S.label),1))],42,uf))),128))],4)):e.createCommentVNode("",!0)]))],544)}}}),[["__scopeId","data-v-736a9686"]])},Symbol.toStringTag,{value:"Module"})),_f={key:0,class:"of-field-multiselect__chips"},bf={key:1,class:"of-field-multiselect__placeholder"},yf=["onMouseenter","onClick"],kf=["checked"],hf={key:1},Ef={class:"of-field-multiselect__actions"},Bf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=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 h=new Set(i.value);return d.value.filter(C=>h.has(C.value))});function p(){i.value=Array.isArray(n.value)?n.value.filter(h=>typeof h=="string"):[]}function u(){if(!s.value)return;const h=s.value.getBoundingClientRect();c.value={top:`${h.bottom}px`,left:`${h.left}px`,width:`${Math.max(h.width,220)}px`}}function _(h){if(i.value.indexOf(h)>=0){i.value=i.value.filter(S=>S!==h);return}i.value=[...i.value,h]}function b(){l.value=!1,a("commit",[...i.value])}function E(){l.value&&(l.value=!1,a("cancel"))}function y(h){if(h.key==="ArrowDown"){h.preventDefault(),m.value=Math.min(m.value+1,Math.max(d.value.length-1,0));return}if(h.key==="ArrowUp"){h.preventDefault(),m.value=Math.max(m.value-1,0);return}if(h.key===" "||h.key==="Enter"){h.preventDefault();const C=d.value[m.value];C&&_(C.value);return}if(h.key==="Escape"){h.preventDefault(),E();return}h.key==="Tab"&&(h.preventDefault(),b(),a("tabNext"))}function x(h){var S,V;const C=h.target;C&&((S=s.value)!=null&&S.contains(C)||(V=r.value)!=null&&V.contains(C)||b())}return e.onMounted(()=>{p(),e.nextTick(()=>{var h;u(),(h=s.value)==null||h.focus()}),window.addEventListener("resize",u),window.addEventListener("scroll",u,!0),window.addEventListener("mousedown",x,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",u),window.removeEventListener("scroll",u,!0),window.removeEventListener("mousedown",x,!0)}),e.watch(()=>n.value,()=>{p()}),(h,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:s,class:"of-field-multiselect",tabindex:"0",onKeydown:y},[f.value.length?(e.openBlock(),e.createElementBlock("div",_f,[(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",bf,"—")),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:r,class:"of-field-multiselect__dropdown",style:e.normalizeStyle(c.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,V)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-multiselect__option",{active:V===m.value,selected:i.value.includes(S.value)}]),onMouseenter:G=>m.value=V,onClick:e.withModifiers(G=>_(S.value),["stop"])},[e.createElementVNode("input",{class:"of-field-multiselect__checkbox",type:"checkbox",tabindex:"-1",checked:i.value.includes(S.value),onChange:C[0]||(C[0]=e.withModifiers(()=>{},["prevent"]))},null,40,kf),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",hf,e.toDisplayString(S.label),1))],42,yf))),128)),e.createElementVNode("div",Ef,[e.createElementVNode("button",{class:"of-field-multiselect__btn",type:"button",onClick:e.withModifiers(E,["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-21240742"]])},Symbol.toStringTag,{value:"Module"})),Cf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=s.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",r.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",r.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:s,"onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),class:"of-field-input",type:"date",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",r.value||null))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-3acdd712"]])},Symbol.toStringTag,{value:"Module"})),Sf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=s.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",r.value||null)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",r.value||null),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:s,"onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),class:"of-field-input",type:"datetime-local",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",r.value||null))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-bedfdcc6"]])},Symbol.toStringTag,{value:"Module"})),Nf=["onMouseenter","onClick"],wf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(0),r=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(r),m=>(e.openBlock(),e.createElementBlock("span",{key:m,class:e.normalizeClass(["of-field-rating__star",{filled:m<=(s.value||e.unref(c))}]),onMouseenter:f=>s.value=m,onMouseleave:i[0]||(i[0]=f=>s.value=0),onClick:e.withModifiers(f=>l(m),["stop"])},"★",42,Nf))),128))],32))}}),[["__scopeId","data-v-ced77f03"]])},Symbol.toStringTag,{value:"Module"})),$f=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=s.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",r.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",r.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:s,class:"of-field-input",type:"url","onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",r.value))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-7c8b4ad8"]])},Symbol.toStringTag,{value:"Module"})),xf=Object.freeze(Object.defineProperty({__proto__:null,default:w(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,s=e.ref(null),r=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var l;return(l=s.value)==null?void 0:l.focus()}));function c(l){l.key==="Enter"&&(l.preventDefault(),a("commit",r.value)),l.key==="Escape"&&(l.preventDefault(),a("cancel")),l.key==="Tab"&&(l.preventDefault(),a("commit",r.value),a("tabNext"))}return(l,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:s,class:"of-field-input",type:"email","onUpdate:modelValue":d[0]||(d[0]=i=>r.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",r.value))},null,544)),[[e.vModelText,r.value]])}}),[["__scopeId","data-v-cdd23fdc"]])},Symbol.toStringTag,{value:"Module"}));B.Accordion=At,B.ActivityTimeline=ln,B.AddViewBtn=Bt,B.AiMessageBubble=lt,B.AiMessageList=hn,B.AiSender=En,B.AiStreamingCursor=at,B.AiThinking=ot,B.AppLayout=Wt,B.Avatar=Rt,B.Badge=Ct,B.BarChart=Xe,B.BlockQuote=sn,B.Breadcrumb=xn,B.BreadcrumbItem=Dn,B.ButtonGroup=wt,B.ChainItem=Pt,B.CodeBlock=cn,B.ColorPanel=pn,B.CommentItem=je,B.ContentBlock=We,B.ContextMenu=Mn,B.DEFAULT_PRIORITY_MAP=fe,B.DEFAULT_STATUS_MAP=ce,B.Dashboard=yn,B.DataTable=Qt,B.DescBlock=It,B.DetailLayout=bn,B.Dialog=Bn,B.DoughnutChart=Qe,B.Drawer=Sn,B.DropdownMenu=Dt,B.EmptyState=$t,B.FieldCell=Ce,B.FileUpload=_n,B.FormDesigner=un,B.GalleryCard=Ke,B.GalleryView=an,B.GanttRow=He,B.GanttTimeline=rn,B.InfoCard=Kt,B.KanbanBoard=kn,B.KanbanCard=xe,B.KanbanColumn=tt,B.MermaidChart=Tn,B.Modal=Ne,B.MonitorItem=Gt,B.Navbar=qt,B.NewRowBtn=Ue,B.NumberCard=Je,B.OneflowUI=Eo,B.PersonPanel=gn,B.PersonaCard=Ht,B.PieChart=$e,B.ProgressBar=Nt,B.PropPanel=Ze,B.PropRow=Ye,B.QuickAddRow=nt,B.RangeSlider=St,B.RefLink=dn,B.RefTag=Lt,B.RichTextEditor=fn,B.SectionBlock=Ut,B.SelectBadge=Ft,B.SidePanel=Cn,B.Sidebar=Yt,B.SplitPane=Vn,B.StatisticCard=xt,B.StatusBar=Zt,B.StatusIndicator=Tt,B.StatusSummary=vt,B.Stepper=Mt,B.Switch=Vt,B.TabPanel=$n,B.TableChart=et,B.TableColumnManager=en,B.TableDataRow=Ee,B.TableFilterPanel=Jt,B.TableGroupRow=Be,B.TableHeaderRow=Pe,B.Tabs=wn,B.ToastContainer=Nn,B.ToastItem=st,B.ToolbarBtn=Et,B.UserMessageBubble=rt,B.ViewModeGroup=Ot,B.ViewSwitcher=zt,B.ViewTab=ht,B.buildGalleryItems=on,B.buildKanbanColumns=nn,B.dataRecordToTask=Ge,B.default=Eo,B.isFormulaField=jr,B.isSelectField=ye,B.mergeColorMap=te,B.resolveBadge=ee,B.taskToDataRecord=tn,B.useAiChat=Ud,B.useBadge=Jl,B.useInlineEdit=ve,B.useMarkdown=lf,B.useStream=An,B.useTable=Xt,B.useTableFilter=Wd,B.useToast=qe,B.useTypewriter=Rn,B.useVirtualList=Se,Object.defineProperties(B,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
12
|
+
<pre class="of-code-block-pre"><code class="hljs language-${i}">${f}</code></pre>
|
|
13
|
+
</div>`},ze.marked.use({renderer:a});function r(l){return ze.marked.parse(l)}return{renderMarkdown:r}}const qm=[ht,Et,Bt,Ct,St,wt,Nt,$t,xt,Dt,Tt,Vt,At,Mt,Rt,qt,Wt,Yt,Zt,Qt,Fe,Ee,Be,Ue,Jt,en,Ce,kn,tt,xe,nt,an,Ke,ln,rn,He,qe,sn,cn,dn,fn,un,pn,gn,bn,_n,Ze,Ye,je,yn,Xe,$e,Qe,Je,et,ot,at,lt,rt,hn,En,we,Bn,Sn,Cn,wn,st,Nn,$n,xn,Dn,Tn,Vn,zt,It,Ot,Lt,An,Pt,Ft,Ut,Gt,vt,Kt,Ht],Eo={install(t){qm.forEach(o=>{t.component(o.name||o.__name||"",o)})}},Wm=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var s;return(s=r.value)==null?void 0:s.focus()}));function c(s){s.key==="Enter"&&(s.preventDefault(),a("commit",l.value)),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("commit",l.value),a("tabNext"))}return(s,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=>l.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",l.value))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-836136e5"]])},Symbol.toStringTag,{value:"Module"})),Ym=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=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(l.value==="")return null;const i=Number(l.value);return Number.isNaN(i)?null:i}function s(i){const f=l.value===""?0:Number(l.value),m=Number.isNaN(f)?0:f;l.value=String(m+i)}function d(i){i.key==="ArrowUp"&&(i.preventDefault(),s(1)),i.key==="ArrowDown"&&(i.preventDefault(),s(-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,f)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,class:"of-field-input",type:"number","onUpdate:modelValue":f[0]||(f[0]=m=>l.value=m),onKeydown:d,onBlur:f[1]||(f[1]=m=>a("commit",c()))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-a09e5dea"]])},Symbol.toStringTag,{value:"Module"})),Zm={class:"of-field-checkbox__icon"},jm=Object.freeze(Object.defineProperty({__proto__:null,default:N(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 l(){a("commit",!r.value)}function c(s){(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),l()),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("tabNext"))}return(s,d)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-checkbox",tabindex:"0",onClick:e.withModifiers(l,["stop"]),onKeydown:c},[e.createElementVNode("span",Zm,e.toDisplayString(r.value?"☑":"☐"),1)],32))}}),[["__scopeId","data-v-85298790"]])},Symbol.toStringTag,{value:"Module"})),Xm={key:1,class:"of-field-select__display"},Qm=["onMouseenter","onClick"],Jm={key:1},ef=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),s=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.computed(()=>{const y=typeof n.value=="string"?n.value:null;return d.value.findIndex($=>$.value===y)}),f=e.ref(0);function m(){if(!r.value)return;const y=r.value.getBoundingClientRect();c.value={top:`${y.bottom}px`,left:`${y.left}px`,width:`${Math.max(y.width,160)}px`}}function u(y){s.value=!1,a("commit",y)}function p(){s.value&&(s.value=!1,a("cancel"))}function g(y){var $,h;if(!d.value.length){y.key==="Escape"&&(y.preventDefault(),p());return}if(y.key==="ArrowDown"){y.preventDefault(),f.value=Math.min(f.value+1,d.value.length-1);return}if(y.key==="ArrowUp"){y.preventDefault(),f.value=Math.max(f.value-1,0);return}if(y.key==="Enter"){y.preventDefault(),u((($=d.value[f.value])==null?void 0:$.value)??null);return}if(y.key==="Escape"){y.preventDefault(),p();return}y.key==="Tab"&&(y.preventDefault(),u(((h=d.value[f.value])==null?void 0:h.value)??null),a("tabNext"))}function _(y){var h,C;const $=y.target;$&&((h=r.value)!=null&&h.contains($)||(C=l.value)!=null&&C.contains($)||p())}e.onMounted(()=>{f.value=i.value>=0?i.value:0,e.nextTick(()=>{var y;m(),(y=r.value)==null||y.focus()}),window.addEventListener("resize",m),window.addEventListener("scroll",m,!0),window.addEventListener("mousedown",_,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",m),window.removeEventListener("scroll",m,!0),window.removeEventListener("mousedown",_,!0)}),e.watch(i,y=>{y>=0&&(f.value=y)});const k=e.computed(()=>{const y=typeof n.value=="string"?n.value:null;return d.value.find($=>$.value===y)});return(y,$)=>{var h,C;return e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-select",tabindex:"0",onKeydown:g},[(h=k.value)!=null&&h.color?(e.openBlock(),e.createElementBlock("span",{key:0,class:"of-field-select__badge",style:e.normalizeStyle({background:k.value.color})},e.toDisplayString(k.value.label),5)):(e.openBlock(),e.createElementBlock("span",Xm,e.toDisplayString(((C=k.value)==null?void 0:C.label)??"—"),1)),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:l,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:f.value===-1,selected:i.value===-1}]),onClick:$[0]||($[0]=e.withModifiers(S=>u(null),["stop"]))}," — ",2),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,D)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-select__option",{active:D===f.value,selected:D===i.value}]),onMouseenter:q=>f.value=D,onClick:e.withModifiers(q=>u(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",Jm,e.toDisplayString(S.label),1))],42,Qm))),128))],4)):e.createCommentVNode("",!0)]))],544)}}}),[["__scopeId","data-v-a280810a"]])},Symbol.toStringTag,{value:"Module"})),tf={key:0,class:"of-field-multiselect__chips"},nf={key:1,class:"of-field-multiselect__placeholder"},of=["onMouseenter","onClick"],af=["checked"],lf={key:1},rf={class:"of-field-multiselect__actions"},sf=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(null),c=e.ref({top:"0px",left:"0px",width:"0px"}),s=e.ref(!0),d=e.computed(()=>n.field.options??[]),i=e.ref([]),f=e.ref(0),m=e.computed(()=>{const h=new Set(i.value);return d.value.filter(C=>h.has(C.value))});function u(){i.value=Array.isArray(n.value)?n.value.filter(h=>typeof h=="string"):[]}function p(){if(!r.value)return;const h=r.value.getBoundingClientRect();c.value={top:`${h.bottom}px`,left:`${h.left}px`,width:`${Math.max(h.width,220)}px`}}function g(h){if(i.value.indexOf(h)>=0){i.value=i.value.filter(S=>S!==h);return}i.value=[...i.value,h]}function _(){s.value=!1,a("commit",[...i.value])}function k(){s.value&&(s.value=!1,a("cancel"))}function y(h){if(h.key==="ArrowDown"){h.preventDefault(),f.value=Math.min(f.value+1,Math.max(d.value.length-1,0));return}if(h.key==="ArrowUp"){h.preventDefault(),f.value=Math.max(f.value-1,0);return}if(h.key===" "||h.key==="Enter"){h.preventDefault();const C=d.value[f.value];C&&g(C.value);return}if(h.key==="Escape"){h.preventDefault(),k();return}h.key==="Tab"&&(h.preventDefault(),_(),a("tabNext"))}function $(h){var S,D;const C=h.target;C&&((S=r.value)!=null&&S.contains(C)||(D=l.value)!=null&&D.contains(C)||_())}return e.onMounted(()=>{u(),e.nextTick(()=>{var h;p(),(h=r.value)==null||h.focus()}),window.addEventListener("resize",p),window.addEventListener("scroll",p,!0),window.addEventListener("mousedown",$,!0)}),e.onBeforeUnmount(()=>{window.removeEventListener("resize",p),window.removeEventListener("scroll",p,!0),window.removeEventListener("mousedown",$,!0)}),e.watch(()=>n.value,()=>{u()}),(h,C)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"triggerRef",ref:r,class:"of-field-multiselect",tabindex:"0",onKeydown:y},[m.value.length?(e.openBlock(),e.createElementBlock("div",tf,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.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",nf,"—")),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[s.value?(e.openBlock(),e.createElementBlock("div",{key:0,ref_key:"dropdownRef",ref:l,class:"of-field-multiselect__dropdown",style:e.normalizeStyle(c.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(d.value,(S,D)=>(e.openBlock(),e.createElementBlock("div",{key:S.value,class:e.normalizeClass(["of-field-multiselect__option",{active:D===f.value,selected:i.value.includes(S.value)}]),onMouseenter:q=>f.value=D,onClick:e.withModifiers(q=>g(S.value),["stop"])},[e.createElementVNode("input",{class:"of-field-multiselect__checkbox",type:"checkbox",tabindex:"-1",checked:i.value.includes(S.value),onChange:C[0]||(C[0]=e.withModifiers(()=>{},["prevent"]))},null,40,af),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",lf,e.toDisplayString(S.label),1))],42,of))),128)),e.createElementVNode("div",rf,[e.createElementVNode("button",{class:"of-field-multiselect__btn",type:"button",onClick:e.withModifiers(k,["stop"])}," 取消 "),e.createElementVNode("button",{class:"of-field-multiselect__btn of-field-multiselect__btn--primary",type:"button",onClick:e.withModifiers(_,["stop"])}," 完成 ")])],4)):e.createCommentVNode("",!0)]))],544))}}),[["__scopeId","data-v-ca07bc35"]])},Symbol.toStringTag,{value:"Module"})),cf=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var s;return(s=r.value)==null?void 0:s.focus()}));function c(s){s.key==="Enter"&&(s.preventDefault(),a("commit",l.value||null)),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("commit",l.value||null),a("tabNext"))}return(s,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>l.value=i),class:"of-field-input",type:"date",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",l.value||null))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-e0c4ed7c"]])},Symbol.toStringTag,{value:"Module"})),df=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var s;return(s=r.value)==null?void 0:s.focus()}));function c(s){s.key==="Enter"&&(s.preventDefault(),a("commit",l.value||null)),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("commit",l.value||null),a("tabNext"))}return(s,d)=>e.withDirectives((e.openBlock(),e.createElementBlock("input",{ref_key:"inputRef",ref:r,"onUpdate:modelValue":d[0]||(d[0]=i=>l.value=i),class:"of-field-input",type:"datetime-local",onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",l.value||null))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-80796d5b"]])},Symbol.toStringTag,{value:"Module"})),mf=["onMouseenter","onClick"],ff=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=n.field.max??5,c=Number(n.value??0);function s(d){a("commit",d)}return(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:"of-field-rating",onKeydown:i[1]||(i[1]=e.withKeys(f=>a("cancel"),["escape"])),tabindex:"0"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),f=>(e.openBlock(),e.createElementBlock("span",{key:f,class:e.normalizeClass(["of-field-rating__star",{filled:f<=(r.value||e.unref(c))}]),onMouseenter:m=>r.value=f,onMouseleave:i[0]||(i[0]=m=>r.value=0),onClick:e.withModifiers(m=>s(f),["stop"])},"★",42,mf))),128))],32))}}),[["__scopeId","data-v-58a68101"]])},Symbol.toStringTag,{value:"Module"})),uf=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var s;return(s=r.value)==null?void 0:s.focus()}));function c(s){s.key==="Enter"&&(s.preventDefault(),a("commit",l.value)),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("commit",l.value),a("tabNext"))}return(s,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=>l.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",l.value))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-8d4527db"]])},Symbol.toStringTag,{value:"Module"})),pf=Object.freeze(Object.defineProperty({__proto__:null,default:N(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),l=e.ref(String(n.value??""));e.onMounted(()=>e.nextTick(()=>{var s;return(s=r.value)==null?void 0:s.focus()}));function c(s){s.key==="Enter"&&(s.preventDefault(),a("commit",l.value)),s.key==="Escape"&&(s.preventDefault(),a("cancel")),s.key==="Tab"&&(s.preventDefault(),a("commit",l.value),a("tabNext"))}return(s,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=>l.value=i),onKeydown:c,onBlur:d[1]||(d[1]=i=>a("commit",l.value))},null,544)),[[e.vModelText,l.value]])}}),[["__scopeId","data-v-57da6247"]])},Symbol.toStringTag,{value:"Module"}));E.Accordion=Mt,E.ActivityTimeline=ln,E.AddViewBtn=Bt,E.AiMessageBubble=lt,E.AiMessageList=hn,E.AiSender=En,E.AiStreamingCursor=at,E.AiThinking=ot,E.AppLayout=qt,E.Avatar=Rt,E.Badge=Ct,E.BarChart=Xe,E.BlockQuote=sn,E.Breadcrumb=xn,E.BreadcrumbItem=Dn,E.ButtonGroup=Nt,E.ChainItem=Ft,E.CodeBlock=cn,E.ColorPanel=pn,E.CommentItem=je,E.ContentBlock=qe,E.ContextMenu=An,E.DEFAULT_PRIORITY_MAP=fe,E.DEFAULT_STATUS_MAP=ce,E.Dashboard=yn,E.DataTable=Qt,E.DescBlock=It,E.DetailLayout=_n,E.Dialog=Bn,E.DoughnutChart=Qe,E.Drawer=Sn,E.DropdownMenu=Dt,E.EmptyState=$t,E.FieldCell=Ce,E.FileUpload=bn,E.FormDesigner=un,E.GalleryCard=Ke,E.GalleryView=an,E.GanttRow=He,E.GanttTimeline=rn,E.InfoCard=Kt,E.KanbanBoard=kn,E.KanbanCard=xe,E.KanbanColumn=tt,E.MermaidChart=Tn,E.Modal=we,E.MonitorItem=Gt,E.Navbar=Wt,E.NewRowBtn=Ue,E.NumberCard=Je,E.OneflowUI=Eo,E.PersonPanel=gn,E.PersonaCard=Ht,E.PieChart=$e,E.ProgressBar=wt,E.PropPanel=Ze,E.PropRow=Ye,E.QuickAddRow=nt,E.RangeSlider=St,E.RefLink=dn,E.RefTag=zt,E.RichTextEditor=fn,E.SectionBlock=Ut,E.SelectBadge=Pt,E.SidePanel=Cn,E.Sidebar=Yt,E.SplitPane=Vn,E.StatisticCard=xt,E.StatusBar=Zt,E.StatusIndicator=Tt,E.StatusSummary=vt,E.Stepper=At,E.Switch=Vt,E.TabPanel=$n,E.TableChart=et,E.TableColumnManager=en,E.TableDataRow=Ee,E.TableFilterPanel=Jt,E.TableGroupRow=Be,E.TableHeaderRow=Fe,E.Tabs=Nn,E.ToastContainer=wn,E.ToastItem=st,E.ToolbarBtn=Et,E.UserMessageBubble=rt,E.ViewModeGroup=Ot,E.ViewSwitcher=Lt,E.ViewTab=ht,E.buildGalleryItems=on,E.buildKanbanColumns=nn,E.dataRecordToTask=Ge,E.default=Eo,E.isFormulaField=Or,E.isSelectField=ye,E.mergeColorMap=oe,E.resolveBadge=ne,E.taskToDataRecord=tn,E.useAiChat=$d,E.useBadge=Fl,E.useInlineEdit=ve,E.useMarkdown=Hm,E.useStream=Mn,E.useTable=Xt,E.useTableFilter=Ad,E.useToast=We,E.useTypewriter=Rn,E.useVirtualList=Se,Object.defineProperties(E,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|