@knitify/vue 0.0.9 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/README.md +111 -0
  2. package/dist/index.es.js +4490 -221
  3. package/dist/index.umd.js +1 -1
  4. package/dist/types/components/Accordion/KAccordion.vue.d.ts +11 -0
  5. package/dist/types/components/Accordion/KAccordionItem.vue.d.ts +22 -0
  6. package/dist/types/components/Accordion/keys.d.ts +2 -0
  7. package/dist/types/components/Accordion/types.d.ts +37 -0
  8. package/dist/types/components/Alert/KAlert.vue.d.ts +11 -0
  9. package/dist/types/components/Alert/types.d.ts +18 -0
  10. package/dist/types/components/Avatar/KAvatar.vue.d.ts +15 -0
  11. package/dist/types/components/Avatar/KAvatarGroup.vue.d.ts +11 -0
  12. package/dist/types/components/Avatar/types.d.ts +130 -0
  13. package/dist/types/components/Badge/types.d.ts +2 -0
  14. package/dist/types/components/Breadcrumb/KBreadcrumb.vue.d.ts +11 -0
  15. package/dist/types/components/Breadcrumb/KBreadcrumbItem.vue.d.ts +11 -0
  16. package/dist/types/components/Breadcrumb/types.d.ts +23 -0
  17. package/dist/types/components/Button/types.d.ts +15 -4
  18. package/dist/types/components/Calendar/KCalendar.vue.d.ts +34 -0
  19. package/dist/types/components/Calendar/types.d.ts +26 -0
  20. package/dist/types/components/Card/KCard.vue.d.ts +11 -0
  21. package/dist/types/components/Card/types.d.ts +26 -0
  22. package/dist/types/components/Chat/KChat.vue.d.ts +14 -0
  23. package/dist/types/components/Chat/KChatDivider.vue.d.ts +11 -0
  24. package/dist/types/components/Chat/KChatMessage.vue.d.ts +11 -0
  25. package/dist/types/components/Chat/KChatMessageActions.vue.d.ts +18 -0
  26. package/dist/types/components/Chat/KChatMessages.vue.d.ts +11 -0
  27. package/dist/types/components/Chat/KChatNotice.vue.d.ts +11 -0
  28. package/dist/types/components/Chat/KChatPrompt.vue.d.ts +30 -0
  29. package/dist/types/components/Chat/KChatShimmer.vue.d.ts +11 -0
  30. package/dist/types/components/Chat/keys.d.ts +2 -0
  31. package/dist/types/components/Chat/types.d.ts +140 -0
  32. package/dist/types/components/ChatDock/KChatDock.vue.d.ts +45 -0
  33. package/dist/types/components/ChatDock/KChatDockItem.vue.d.ts +11 -0
  34. package/dist/types/components/ChatDock/KChatDockPanel.vue.d.ts +11 -0
  35. package/dist/types/components/ChatDock/KChatWindow.vue.d.ts +27 -0
  36. package/dist/types/components/ChatDock/KMessenger.vue.d.ts +23 -0
  37. package/dist/types/components/ChatDock/keys.d.ts +98 -0
  38. package/dist/types/components/ChatDock/messenger-types.d.ts +280 -0
  39. package/dist/types/components/ChatDock/store-keys.d.ts +7 -0
  40. package/dist/types/components/ChatDock/types.d.ts +134 -0
  41. package/dist/types/components/ChatDock/useChatDock.d.ts +11 -0
  42. package/dist/types/components/Checkbox/KCheckbox.vue.d.ts +20 -0
  43. package/dist/types/components/Checkbox/types.d.ts +23 -0
  44. package/dist/types/components/Collapse/KCollapse.vue.d.ts +32 -0
  45. package/dist/types/components/Collapse/types.d.ts +32 -0
  46. package/dist/types/components/Collapse/useCollapseSync.d.ts +31 -0
  47. package/dist/types/components/Drawer/KDrawer.vue.d.ts +34 -0
  48. package/dist/types/components/Drawer/types.d.ts +54 -0
  49. package/dist/types/components/Dropdown/KDropdown.vue.d.ts +28 -0
  50. package/dist/types/components/Dropdown/KDropdownItem.vue.d.ts +13 -0
  51. package/dist/types/components/Dropdown/KDropdownMenu.vue.d.ts +13 -0
  52. package/dist/types/components/Dropdown/types.d.ts +34 -0
  53. package/dist/types/components/FileTree/KFileTree.vue.d.ts +34 -0
  54. package/dist/types/components/FileTree/KFileTreeNode.vue.d.ts +20 -0
  55. package/dist/types/components/FileTree/types.d.ts +39 -0
  56. package/dist/types/components/Grid/KGrid.vue.d.ts +11 -0
  57. package/dist/types/components/Grid/KGridColumn.vue.d.ts +11 -0
  58. package/dist/types/components/Grid/KGridRow.vue.d.ts +19 -0
  59. package/dist/types/components/Grid/types.d.ts +41 -0
  60. package/dist/types/components/Grid/useGrid.d.ts +8 -0
  61. package/dist/types/components/Icon/types.d.ts +1 -1
  62. package/dist/types/components/Input/KInput.vue.d.ts +3 -1
  63. package/dist/types/components/Input/types.d.ts +8 -0
  64. package/dist/types/components/MenuList/KMenuList.vue.d.ts +11 -0
  65. package/dist/types/components/MenuList/KMenuListItem.vue.d.ts +11 -0
  66. package/dist/types/components/MenuList/types.d.ts +20 -0
  67. package/dist/types/components/Modal/KModal.vue.d.ts +36 -0
  68. package/dist/types/components/Modal/types.d.ts +57 -0
  69. package/dist/types/components/NotificationList/KNotificationList.vue.d.ts +11 -0
  70. package/dist/types/components/NotificationList/KNotificationListItem.vue.d.ts +11 -0
  71. package/dist/types/components/NotificationList/types.d.ts +36 -0
  72. package/dist/types/components/Popover/KPopover.vue.d.ts +28 -0
  73. package/dist/types/components/Popover/types.d.ts +24 -0
  74. package/dist/types/components/Popover/useOverlaySync.d.ts +49 -0
  75. package/dist/types/components/Progress/KProgress.vue.d.ts +11 -0
  76. package/dist/types/components/Progress/types.d.ts +19 -0
  77. package/dist/types/components/Radio/KRadio.vue.d.ts +20 -0
  78. package/dist/types/components/Radio/types.d.ts +20 -0
  79. package/dist/types/components/Select/KSelect.vue.d.ts +22 -0
  80. package/dist/types/components/Select/types.d.ts +30 -0
  81. package/dist/types/components/Spinner/KSpinner.vue.d.ts +6 -0
  82. package/dist/types/components/Spinner/types.d.ts +13 -0
  83. package/dist/types/components/Table/KTable.vue.d.ts +11 -0
  84. package/dist/types/components/Table/types.d.ts +16 -0
  85. package/dist/types/components/Tabs/KTab.vue.d.ts +13 -0
  86. package/dist/types/components/Tabs/KTabPanel.vue.d.ts +13 -0
  87. package/dist/types/components/Tabs/KTabs.vue.d.ts +25 -0
  88. package/dist/types/components/Tabs/types.d.ts +35 -0
  89. package/dist/types/components/Toast/types.d.ts +20 -0
  90. package/dist/types/components/Toast/useToast.d.ts +20 -0
  91. package/dist/types/components/Toggle/KToggle.vue.d.ts +20 -0
  92. package/dist/types/components/Toggle/types.d.ts +8 -0
  93. package/dist/types/components/Tooltip/KTooltip.vue.d.ts +45 -0
  94. package/dist/types/components/Tooltip/types.d.ts +18 -0
  95. package/dist/types/components/Workspace/KWorkspace.vue.d.ts +30 -0
  96. package/dist/types/components/Workspace/types.d.ts +29 -0
  97. package/dist/types/components/index.d.ts +56 -0
  98. package/dist/types/components/types.d.ts +31 -0
  99. package/dist/types/index.d.ts +1 -0
  100. package/dist/types/types.d.ts +1 -0
  101. package/dist/types/utils/useDocumentEvent.d.ts +19 -0
  102. package/dist/types/utils/useExclusive.d.ts +13 -0
  103. package/dist/types/utils/useTopmost.d.ts +17 -0
  104. package/dist/web-types.json +5107 -0
  105. package/package.json +22 -6
  106. package/dist/types/stories/KBadge.stories.d.ts +0 -104
  107. package/dist/types/stories/KButton.stories.d.ts +0 -117
  108. package/dist/types/stories/KContainer.stories.d.ts +0 -84
  109. package/dist/types/stories/KInput.stories.d.ts +0 -172
  110. package/dist/types/stories/KNavbar.stories.d.ts +0 -67
  111. package/dist/types/stories/KNavbarMenu.stories.d.ts +0 -99
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(l,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router"],e):(l=typeof globalThis<"u"?globalThis:l||self,e(l["knitify-vue"]={},l.Vue,l.vueRouter))})(this,(function(l,e,f){"use strict";function u(t){return t.charAt(0).toUpperCase()+t.slice(1)}const B=e.defineComponent({__name:"KButton",props:{disabled:{type:Boolean,default:!1},expanded:{type:Boolean,default:!1},ghost:{type:Boolean,default:!1},href:{},outline:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},to:{},type:{default:"button"},variant:{}},setup(t){const{href:a,navigate:o}=f.useLink({to:e.computed(()=>t.to??"/")}),r=e.computed(()=>t.to||t.href?"a":"button"),s=e.computed(()=>{if(t.to)return a.value;if(t.href)return t.href}),d=e.computed(()=>["KButton",t.variant?t.ghost?`KButton--ghost${u(t.variant)}`:t.outline?`KButton--outline${u(t.variant)}`:`KButton--${t.variant}`:null,!t.variant&&t.outline&&"KButton--outline",!t.variant&&t.ghost&&"KButton--ghost",t.rounded&&"KButton--rounded",t.expanded&&"KButton--expanded"]);function n(c){t.to&&o(c)}return(c,i)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(r.value),{href:s.value,type:r.value==="button"?t.type:void 0,disabled:r.value==="button"?t.disabled:void 0,class:e.normalizeClass(d.value),onClick:n},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},8,["href","type","disabled","class"]))}}),C=e.defineComponent({__name:"KContainer",props:{glassy:{type:Boolean}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KContainer",t.glassy&&"KContainer--glassy"])},[e.renderSlot(a.$slots,"default")],2))}}),g={class:"KIcon",title:"icon",role:"img"},h=["href"],K=e.defineComponent({__name:"KIcon",props:{href:{default:""}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("svg",g,[e.createElementVNode("use",{href:`#${t.href.replace(/^#/,"")}`},null,8,h)]))}}),k={key:0,class:"KInput-addon"},N=["disabled","placeholder","type"],$={key:1,class:"KInput-addon"},p=e.defineComponent({__name:"KInput",props:e.mergeModels({disabled:{type:Boolean,default:!1},ghost:{type:Boolean,default:!1},placeholder:{},rounded:{type:Boolean,default:!1},sunken:{type:Boolean,default:!1},transparent:{type:Boolean,default:!1},type:{default:"text"}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const a=e.useModel(t,"modelValue"),o=e.useSlots(),r=e.computed(()=>["KInput",t.disabled&&"KInput--disabled",t.ghost&&"KInput--ghost",t.rounded&&"KInput--rounded",t.sunken&&"KInput--sunken",t.transparent&&"KInput--transparent"]);return(s,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(r.value)},[o.prefix?(e.openBlock(),e.createElementBlock("div",k,[e.renderSlot(s.$slots,"prefix")])):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":d[0]||(d[0]=n=>a.value=n),disabled:t.disabled,placeholder:t.placeholder,type:t.type},null,8,N),[[e.vModelDynamic,a.value]]),o.suffix?(e.openBlock(),e.createElementBlock("div",$,[e.renderSlot(s.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}}),V=e.defineComponent({__name:"KBadge",props:{pill:{type:Boolean},size:{},subtle:{type:Boolean},variant:{}},setup(t){return(a,o)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KBadge",t.pill&&"KBadge--pill",t.size&&`KBadge--${t.size}`,t.subtle&&"KBadge--subtle",t.variant&&`KBadge--${t.variant}`])},[e.renderSlot(a.$slots,"default")],2))}}),z={class:"KNavbar-menu"},S=["href","onClick"],E={key:0,class:e.normalizeClass(["KNavbar-caret","KCollapse-toggle"]),"data-kt-collapse-toggle":""},m=e.defineComponent({__name:"KNavbarMenu",props:{items:{default:()=>[]}},setup(t){const a=e.computed(()=>t.items.filter(({hidden:o})=>!o));return(o,r)=>{const s=e.resolveComponent("KIcon"),d=e.resolveComponent("KNavbarMenu",!0);return e.openBlock(),e.createElementBlock("ul",z,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(n,c)=>e.renderSlot(o.$slots,"item",{key:`navbar-menu-item-${c}`,item:n},()=>[e.createVNode(e.unref(f.RouterLink),{to:n.route??"/",custom:""},{default:e.withCtx(({isActive:i,href:x,navigate:M})=>[e.createElementVNode("li",{class:e.normalizeClass(["KNavbar-item","KCollapse is-collapsed",i&&"KNavbar-item-is-active"]),"data-kt-collapse":""},[e.createElementVNode("a",{class:e.normalizeClass(["KNavbar-link"]),href:n.route?x:void 0,onClick:e.withModifiers(j=>n.route?M():n.onClick?.(),["prevent"])},[e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-icon",n.iconClass])},[e.createVNode(s,{href:n.icon},null,8,["href"])],2),n.badge?(e.openBlock(),e.createBlock(V,{key:0,class:e.normalizeClass(["KNavbar-badge",n.badgeClass]),pill:"",size:"sm",variant:"danger"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(n.badge),1)]),_:2},1032,["class"])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-text",n.textClass])},e.toDisplayString(n.text),3)],8,S),n.children?(e.openBlock(),e.createElementBlock("span",E,[e.createVNode(s,{href:"#caretUp"})])):e.createCommentVNode("",!0),n.children?(e.openBlock(),e.createBlock(d,{key:1,items:n.children,class:"KCollapse-content","data-kt-collapse-content":""},null,8,["items"])):e.createCommentVNode("",!0)],2)]),_:2},1032,["to"])])),128))])}}}),b=e.defineComponent({__name:"KNavbar",props:e.mergeModels({items:{},bodyClass:{type:[Boolean,null,String,Object,Array]},brandClass:{type:[Boolean,null,String,Object,Array]},fixed:{type:Boolean,default:!1},footerClass:{type:[Boolean,null,String,Object,Array]},hideToggle:{type:Boolean},innerClass:{type:[Boolean,null,String,Object,Array]},toggleClass:{type:[Boolean,null,String,Object,Array]}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:e.mergeModels(["toggle"],["update:expanded"]),setup(t,{emit:a}){const o=e.useModel(t,"expanded"),r=a,s=e.useSlots(),d=()=>{o.value=!o.value,r("toggle",o.value)};return(n,c)=>{const i=e.resolveComponent("KIcon");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["KNavbar",o.value&&"KNavbar-is-expanded",t.fixed&&"KNavbar-is-fixed"])},[e.createElementVNode("div",{class:e.normalizeClass(["KNavbar-inner",t.innerClass])},[s.brand?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KNavbar-brand",t.brandClass])},[e.renderSlot(n.$slots,"brand")],2)):e.createCommentVNode("",!0),e.createElementVNode("nav",{class:e.normalizeClass(["KNavbar-body",t.bodyClass])},[e.renderSlot(n.$slots,"default",{},()=>[e.createVNode(m,{items:t.items},null,8,["items"])])],2),s.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["KNavbar-footer",t.footerClass])},[e.renderSlot(n.$slots,"footer")],2)):e.createCommentVNode("",!0)],2),t.hideToggle?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:e.normalizeClass(["KNavbar-toggle",t.toggleClass]),onClick:d},[e.createVNode(i,{href:"#caretLeft"})],2))],2)}}}),y=Object.freeze(Object.defineProperty({__proto__:null,KButton:B,KContainer:C,KIcon:K,KInput:p,KNavbar:b,KNavbarMenu:m},Symbol.toStringTag,{value:"Module"})),I={install(t){for(const a in y)t.component(a,y[a])}};l.KButton=B,l.KContainer=C,l.KIcon=K,l.KInput=p,l.KNavbar=b,l.KNavbarMenu=m,l.default=I,Object.defineProperties(l,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
1
+ (function($,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("@knitify/core"),require("vue-router")):typeof define=="function"&&define.amd?define(["exports","vue","@knitify/core","vue-router"],e):($=typeof globalThis<"u"?globalThis:$||self,e($["knitify-vue"]={},$.Vue,$.Knitify,$.vueRouter))})(this,(function($,e,P,v){"use strict";const ee=Symbol("KAccordionGroup"),te=Symbol("KChatBusy"),J=Symbol("KChatDock"),ae=Symbol("KChatDockStore");function ie(t){e.provide(ae,t)}function Ne(){return e.inject(ae,void 0)}let Ve=0,Te=0;function ce(t,s={}){const l=e.reactive({}),a=e.reactive({}),n=e.ref("idle"),i=e.ref(void 0),r=e.ref(""),c={},g={},f=new Set;function d(m){f.forEach(S=>S(m))}function u(m){return l[m]||(l[m]={conversation:{id:m,name:"Conversation"},window:"closed",messages:[],cursor:void 0,loading:"idle",loadingOlder:!1,error:void 0,draft:""}),l[m]}function w(m){m.messages=[],m.cursor=void 0,m.loading="idle",m.loadingOlder=!1,m.error=void 0}const V=e.computed(()=>{const m=Object.values(l).map(L=>L.conversation);return m.every(L=>L.updatedAt)?[...m].sort((L,z)=>String(z.updatedAt).localeCompare(String(L.updatedAt))):m}),T=e.computed(()=>Object.values(l).filter(m=>m.window!=="closed").map(m=>m.conversation.id).sort((m,S)=>(a[S]??0)-(a[m]??0)));async function M(){n.value="loading",i.value=void 0;try{(await t.loadConversations()).forEach(S=>{u(S.id).conversation={...l[S.id].conversation,...S}}),n.value="loaded"}catch(m){n.value="error",i.value=m,d({type:"error",kind:"conversations",error:m})}}function E(m){const S=u(m),L=g[m];if(L)return S.loading="loading",L;const z=(c[m]??0)+1;c[m]=z,S.loading="loading",S.error=void 0;const R=t.loadMessages(m).then(j=>{c[m]===z&&(S.messages=Bt(j.messages),S.cursor=j.nextCursor??null,S.loading="loaded")}).catch(j=>{c[m]===z&&(S.loading="error",S.error=j,d({type:"error",kind:"messages",id:m,error:j}))}).finally(()=>{g[m]===R&&(g[m]=void 0)});return g[m]=R,R}function B(m){const S=u(m);return S.loading==="idle"||S.loading==="error"?E(m):g[m]??Promise.resolve()}async function y(m){const S=u(m);S.window="expanded",Ve+=1,a[m]=Ve,S.conversation.unread=0,d({type:"open",id:m});const L=B(m);t.markRead&&t.markRead(m).catch(()=>{}),await L}async function h(m){u(m).window="expanded",await B(m)}function N(m){u(m).window="railed"}function D(m){const S=u(m);S.window="closed",s.evictOnClose&&(c[m]=(c[m]??0)+1,g[m]=void 0,w(S),S.draft=""),d({type:"close",id:m})}async function p(m){const S=u(m);if(typeof S.cursor!="string"||S.loadingOlder)return;const L=c[m]??0;S.loadingOlder=!0;try{const z=await t.loadMessages(m,S.cursor);if(c[m]!==L)return;const R=new Set(S.messages.map(j=>j.id));S.messages=[...z.messages.filter(j=>!R.has(j.id)),...S.messages],S.cursor=z.nextCursor??null}catch(z){c[m]===L&&d({type:"error",kind:"messages",id:m,error:z})}finally{S.loadingOlder=!1}}async function b(m,S){const L=u(m);try{const z=await t.sendMessage(m,S.text),R=L.messages.findIndex(_=>_.id===S.id),j=L.messages.some(_=>_.id===z.id);if(R===-1)return;j?L.messages.splice(R,1):L.messages.splice(R,1,{...z,pending:!1}),L.conversation.preview=z.text,L.conversation.updatedAt=z.sentAt??L.conversation.updatedAt,d({type:"send",message:z})}catch(z){const R=L.messages.find(j=>j.id===S.id);R&&(R.pending=!1,R.failed=!0),d({type:"error",kind:"send",id:m,error:z})}}async function I(m,S){const L=S.trim();if(!t.sendMessage||!L)return;const z=u(m);Te+=1;const R={id:`local-${Te}`,conversationId:m,text:L,sender:!0,pending:!0};z.messages.push(R),z.draft="",await b(m,R)}async function x(m,S){const z=u(m).messages.find(R=>R.id===S);!z||!z.failed||!t.sendMessage||(z.failed=!1,z.pending=!0,await b(m,z))}async function C(m){const S=u(m);c[m]=(c[m]??0)+1,g[m]=void 0,S.error=void 0,await E(m)}function o(m){const S=u(m.conversationId);S.messages.some(L=>L.id===m.id)||(S.messages.push(m),S.conversation.preview=m.text,S.conversation.updatedAt=m.sentAt??S.conversation.updatedAt,S.window!=="expanded"&&!m.sender&&(S.conversation.unread=(S.conversation.unread??0)+1),d({type:"receive",message:m}))}function K(m,S){u(m).draft=S}function k(m){r.value=m}function A(m){return f.add(m),()=>{f.delete(m)}}return M(),{conversations:V,entries:l,openIds:T,listLoading:n,listError:i,query:r,canSend:!!t.sendMessage,refreshConversations:M,open:y,expand:h,minimize:N,close:D,loadOlder:p,send:I,retry:x,retryLoad:C,receive:o,setDraft:K,setQuery:k,onEvent:A}}function Bt(t){const s=new Set;return t.filter(l=>s.has(l.id)?!1:(s.add(l.id),!0))}const Ae=e.defineComponent({__name:"KAccordion",props:{exclusive:{type:Boolean,default:!1},group:{},ghost:{type:Boolean,default:!1}},setup(t){const s=e.useId(),l=e.computed(()=>t.group?t.group:t.exclusive?`accordion-${s}`:void 0);e.provide(ee,l);const a=e.computed(()=>["KAccordion",t.ghost&&"KAccordion--ghost"]);return(n,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value)},[e.renderSlot(n.$slots,"default")],2))}}),wt=["collapse","collapsed","expand","expanded"];function Me({direction:t,element:s,expanded:l,horizontal:a,onEvent:n}){let i,r=!1;function c(){return!i&&s.value&&(i=new P.modules.Collapse(s.value,{horizontal:a?.()??!1,direction:t?.()??"right"})),i}e.watch(()=>[a?.(),t?.()],()=>{i=void 0}),e.watch(l,d=>{if(d===r)return;const u=c();u&&(r=d,d?u.expand():u.collapse())},{flush:"post"});function g(d){const w=d.target?.closest("[data-kt-collapse-toggle]");!w||w.closest("[data-kt-collapse]")!==s.value||(d.stopPropagation(),l.value=!l.value)}const f=wt.map(d=>{const u=w=>{w.target===s.value&&(d==="expand"&&(r=!0,l.value=!0),d==="collapse"&&(r=!1,l.value=!1),n?.(d))};return[`kt.${d}`,u]});return e.watch(s,(d,u,w)=>{if(i=void 0,!!d){for(const[V,T]of f)d.addEventListener(V,T);d.addEventListener("click",g),r=l.value,d.classList.remove("is-active","is-expanded","is-collapsed"),d.classList.add(...l.value?["is-active","is-expanded"]:["is-collapsed"]),w(()=>{for(const[V,T]of f)d.removeEventListener(V,T);d.removeEventListener("click",g)})}},{flush:"post",immediate:!0}),e.onBeforeUnmount(()=>{i=void 0}),{collapse:()=>{l.value=!1},expand:()=>{l.value=!0},toggle:()=>{l.value=!l.value}}}const Kt=["data-kt-collapse-group"],$t={class:"KCollapse-toggle","data-kt-collapse-toggle":""},St=["aria-expanded"],Et={class:"KAccordion-title",role:"heading","aria-level":"3"},Nt={class:"KAccordion-icon"},Vt={class:"KIcon","aria-hidden":"true"},Tt=["href"],At={class:"KAccordion-content KCollapse-content","data-kt-collapse-content":"",role:"region"},Mt={class:"KAccordion-body"},De=e.defineComponent({__name:"KAccordionItem",props:e.mergeModels({expanded:{type:Boolean},icon:{default:"#arrowDropRight"},title:{}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:["update:expanded"],setup(t,{expose:s}){const l=e.useModel(t,"expanded"),a=e.inject(ee,void 0),n=e.useTemplateRef("root"),{toggle:i}=Me({element:n,expanded:l}),r=e.computed(()=>a?.value);return s({toggle:i}),(c,g)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:n,class:"KAccordion-item KCollapse","data-kt-collapse":"","data-kt-collapse-group":r.value},[e.createElementVNode("div",$t,[e.createElementVNode("div",{class:"KAccordion-button",role:"button",tabindex:"0","aria-expanded":l.value,onKeydown:[g[0]||(g[0]=e.withKeys(e.withModifiers((...f)=>e.unref(i)&&e.unref(i)(...f),["prevent"]),["enter"])),g[1]||(g[1]=e.withKeys(e.withModifiers((...f)=>e.unref(i)&&e.unref(i)(...f),["prevent"]),["space"]))]},[e.createElementVNode("div",Et,[e.renderSlot(c.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])]),e.createElementVNode("div",Nt,[(e.openBlock(),e.createElementBlock("svg",Vt,[e.createElementVNode("use",{href:t.icon},null,8,Tt)]))])],40,St)]),e.createElementVNode("div",At,[e.createElementVNode("div",Mt,[e.renderSlot(c.$slots,"default")])])],8,Kt))}}),Dt={key:0,class:"KAlert-title"},ze=e.defineComponent({__name:"KAlert",props:{title:{},variant:{}},setup(t){const s=e.useSlots(),l=e.computed(()=>["KAlert",t.variant&&`KAlert--${t.variant}`]),a=e.computed(()=>!!(s.title||t.title));return(n,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value),role:"alert"},[a.value?(e.openBlock(),e.createElementBlock("h4",Dt,[e.renderSlot(n.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"default")],2))}}),zt={class:"KAvatar-initials"},It=["src","alt"],Lt={key:1,class:"KIcon KAvatar-icon","aria-hidden":"true"},xt=["href"],Rt=["aria-label","role"],Ot=["aria-label"],Pt={key:5,class:"KAvatar-badge"},jt={key:0,class:"KAvatar-body"},Ut={key:0,class:"KAvatar-text"},Ft={key:1,class:"KAvatar-subtext"},Wt="#user",U=e.defineComponent({__name:"KAvatar",props:{alt:{default:""},badge:{},colorKey:{},icon:{type:[Boolean,String],default:!1},overflow:{type:Boolean,default:!1},removable:{type:Boolean,default:!1},removeLabel:{},size:{},src:{},status:{type:[Boolean,String]},statusLabel:{},subtext:{},text:{},textPosition:{default:"right"},variant:{}},emits:["remove"],setup(t,{emit:s}){const l=s,a=e.useSlots(),n={left:"KAvatar--textLeft",stacked:"KAvatar--stacked"},i=e.computed(()=>t.variant??(t.colorKey!==void 0?P.avatarColor(t.colorKey):void 0)),r=e.computed(()=>["KAvatar",i.value&&`KAvatar--${i.value}`,t.size&&t.size!=="md"&&`KAvatar--${t.size}`,t.textPosition!=="right"&&n[t.textPosition],t.overflow&&"KAvatar--overflow"]),c=e.computed(()=>typeof t.icon=="string"?t.icon:t.icon?Wt:void 0),g=e.computed(()=>!t.src&&!!c.value),f=e.computed(()=>!t.src&&!g.value),d=e.computed(()=>t.status===!0||typeof t.status=="string"),u=e.computed(()=>["KAvatar-status",typeof t.status=="string"&&`is-${t.status}`]),w=e.computed(()=>t.badge!==void 0||!!a.badge),V=e.computed(()=>t.removable||!!a.action),T=e.computed(()=>!!t.text||!!a.text),M=e.computed(()=>!!t.subtext||!!a.subtext),E=e.computed(()=>T.value||M.value);return(B,y)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(r.value)},[e.createElementVNode("span",zt,[t.src?(e.openBlock(),e.createElementBlock("img",{key:0,class:"KAvatar-image",src:t.src,alt:t.alt},null,8,It)):g.value?(e.openBlock(),e.createElementBlock("svg",Lt,[e.createElementVNode("use",{href:c.value},null,8,xt)])):e.createCommentVNode("",!0),f.value?e.renderSlot(B.$slots,"default",{key:2}):e.createCommentVNode("",!0),d.value?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(u.value),"aria-label":t.statusLabel,role:t.statusLabel?"img":void 0},null,10,Rt)):e.createCommentVNode("",!0),V.value?e.renderSlot(B.$slots,"action",{key:4},()=>[e.createElementVNode("button",{type:"button",class:"KAvatar-action","aria-label":t.removeLabel,onClick:y[0]||(y[0]=e.withModifiers(h=>l("remove"),["stop"]))},[...y[1]||(y[1]=[e.createElementVNode("svg",{class:"KIcon","aria-hidden":"true"},[e.createElementVNode("use",{href:"#cross"})],-1)])],8,Ot)]):w.value?(e.openBlock(),e.createElementBlock("span",Pt,[e.renderSlot(B.$slots,"badge",{},()=>[e.createTextVNode(e.toDisplayString(t.badge),1)])])):e.createCommentVNode("",!0)]),E.value?(e.openBlock(),e.createElementBlock("span",jt,[T.value?(e.openBlock(),e.createElementBlock("span",Ut,[e.renderSlot(B.$slots,"text",{},()=>[e.createTextVNode(e.toDisplayString(t.text),1)])])):e.createCommentVNode("",!0),M.value?(e.openBlock(),e.createElementBlock("span",Ft,[e.renderSlot(B.$slots,"subtext",{},()=>[e.createTextVNode(e.toDisplayString(t.subtext),1)])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],2))}}),Gt=["role","aria-label"],Ht=["aria-label","role"],de=e.defineComponent({__name:"KAvatarGroup",props:{diagonal:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!1},label:{},pie:{type:Boolean,default:!1},size:{},status:{type:[Boolean,String]},statusLabel:{}},setup(t){const s=e.computed(()=>["KAvatarGroup",t.diagonal&&"KAvatarGroup--diagonal",t.hoverable&&"KAvatarGroup--hoverable",t.pie&&"KAvatarGroup--pie",t.size&&t.size!=="md"&&`KAvatarGroup--${t.size}`]),l=e.computed(()=>t.status===!0||typeof t.status=="string"),a=e.computed(()=>["KAvatarGroup-status",typeof t.status=="string"&&`is-${t.status}`]);return(n,i)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(s.value),role:t.label?"img":void 0,"aria-label":t.label},[e.renderSlot(n.$slots,"default"),l.value?(e.openBlock(),e.createElementBlock("span",{key:0,class:e.normalizeClass(a.value),"aria-label":t.statusLabel,role:t.statusLabel?"img":void 0},null,10,Ht)):e.createCommentVNode("",!0)],10,Gt))}}),q=e.defineComponent({__name:"KBadge",props:{compact:{type:Boolean},pill:{type:Boolean},size:{},subtle:{type:Boolean},variant:{}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KBadge",t.compact&&"KBadge--compact",t.pill&&"KBadge--pill",t.size&&`KBadge--${t.size}`,t.subtle&&"KBadge--subtle",t.variant&&`KBadge--${t.variant}`])},[e.renderSlot(s.$slots,"default")],2))}}),qt=["aria-label"],Ie=e.defineComponent({__name:"KBreadcrumb",props:{ariaLabel:{default:"breadcrumb"},divider:{}},setup(t){const s=e.computed(()=>t.divider?{"--kt-breadcrumb-divider":`"${t.divider}"`}:void 0);return(l,a)=>(e.openBlock(),e.createElementBlock("nav",{"aria-label":t.ariaLabel},[e.createElementVNode("ol",{class:"KBreadcrumb",style:e.normalizeStyle(s.value)},[e.renderSlot(l.$slots,"default")],4)],8,qt))}}),Qt=["aria-current"],Zt=["href"],Le=e.defineComponent({__name:"KBreadcrumbItem",props:{active:{type:Boolean,default:()=>{}},href:{},to:{}},setup(t){const s=v.useLink({to:e.computed(()=>t.to??"/")}),l=e.computed(()=>t.active??(t.to?s.isActive.value:!1)),a=e.computed(()=>t.to?s.href.value:t.href),n=e.computed(()=>["KBreadcrumb-item",l.value&&"KBreadcrumb-is-active"]);function i(r){t.to&&(r.preventDefault(),s.navigate(r))}return(r,c)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(n.value),"aria-current":l.value?"page":void 0},[!l.value&&a.value?(e.openBlock(),e.createElementBlock("a",{key:0,href:a.value,onClick:i},[e.renderSlot(r.$slots,"default")],8,Zt)):e.renderSlot(r.$slots,"default",{key:1})],10,Qt))}});function xe(t){return t.charAt(0).toUpperCase()+t.slice(1)}const W=e.defineComponent({__name:"KButton",props:{disabled:{type:Boolean,default:!1},expanded:{type:Boolean,default:!1},href:{},icon:{type:Boolean,default:!1},iconCircular:{type:Boolean,default:!1},minimal:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},secondary:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},size:{},to:{},type:{default:"button"},utility:{type:Boolean,default:!1},variant:{}},setup(t){const s=["warning"],l=["warning","affirm"],{href:a,navigate:n}=v.useLink({to:e.computed(()=>t.to??"/")}),i=e.computed(()=>t.to||t.href?"a":"button"),r=e.computed(()=>{if(t.to)return a.value;if(t.href)return t.href}),c=e.computed(()=>t.variant?t.utility&&!s.includes(t.variant)?`KButton--utility${xe(t.variant)}`:t.minimal&&!l.includes(t.variant)?`KButton--minimal${xe(t.variant)}`:`KButton--${t.variant}`:t.utility?"KButton--utility":t.minimal?"KButton--minimal":t.secondary?"KButton--secondary":null),g=e.computed(()=>["KButton",c.value,t.size&&t.size!=="md"&&`KButton--${t.size}`,t.icon&&"KButton--icon",t.iconCircular&&"KButton--iconCircular",t.rounded&&"KButton--rounded",t.expanded&&"KButton--expanded",t.selected&&"KButton--selected"]);function f(d){t.to&&n(d)}return(d,u)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.value),{href:r.value,type:i.value==="button"?t.type:void 0,disabled:i.value==="button"?t.disabled:void 0,class:e.normalizeClass(g.value),onClick:f},{default:e.withCtx(()=>[e.renderSlot(d.$slots,"default")]),_:3},8,["href","type","disabled","class"]))}}),Re=e.defineComponent({__name:"KCalendar",props:e.mergeModels({disabledDates:{},firstDay:{default:0},locale:{default:"en-US"},maxDate:{},minDate:{},mode:{default:"single"}},{modelValue:{default:null},modelModifiers:{},range:{default:null},rangeModifiers:{}}),emits:e.mergeModels(["clear","navigate","rangestart"],["update:modelValue","update:range"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"modelValue"),n=e.useModel(t,"range"),i=l,r=e.useTemplateRef("root");let c,g=null,f=null;const d=h=>h?`${h.start.getTime()}-${h.end.getTime()}`:null,u=h=>h.target===r.value;function w(h){if(!u(h))return;const N=h.detail;N&&(g=N.date.getTime(),a.value=N.date)}function V(h){if(!u(h))return;const N=h.detail;N&&(f=d(N),n.value={start:N.start,end:N.end})}function T(h){if(!u(h))return;const N=h.detail;N&&i("rangestart",N.date)}function M(h){if(!u(h))return;const N=h.detail;N&&i("navigate",N.year,N.month)}function E(h){u(h)&&(g=null,f=null,a.value=null,n.value=null,i("clear"))}const B=[["kt.calendar.select",w],["kt.calendar.rangeselect",V],["kt.calendar.rangestart",T],["kt.calendar.navigate",M],["kt.calendar.clear",E]];function y(h){c?.destroy(),c=new P.modules.Calendar(h,{disabledDates:t.disabledDates,firstDay:t.firstDay,locale:t.locale,maxDate:t.maxDate,minDate:t.minDate,mode:t.mode}),t.mode==="range"&&n.value?(f=d(n.value),c.setRange(n.value.start,n.value.end)):t.mode==="single"&&a.value&&(g=a.value.getTime(),c.setDate(a.value))}return e.watch(r,(h,N,D)=>{if(h){for(const[p,b]of B)h.addEventListener(p,b);y(h),D(()=>{for(const[p,b]of B)h.removeEventListener(p,b)})}},{flush:"post",immediate:!0}),e.watch(()=>[t.mode,t.locale,t.firstDay,t.minDate,t.maxDate,t.disabledDates],()=>{r.value&&y(r.value)},{deep:!0}),e.watch(a,h=>{(h?.getTime()??null)!==g&&(g=h?.getTime()??null,h?c?.setDate(h):c?.clearSelection())}),e.watch(n,h=>{d(h)!==f&&(f=d(h),h?c?.setRange(h.start,h.end):c?.clearSelection())}),e.onBeforeUnmount(()=>{c?.destroy(),c=void 0}),s({clear:()=>c?.clearSelection(),navigateTo:(h,N)=>c?.navigateTo(h,N),next:()=>c?.next(),prev:()=>c?.prev()}),(h,N)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:r,class:"KCalendar","data-kt-calendar":""},null,512))}}),Jt={key:0,class:"KCard-title"},Oe=e.defineComponent({__name:"KCard",props:{accented:{type:Boolean,default:!1},bodyClass:{type:[Boolean,null,String,Object,Array]},borderless:{type:Boolean,default:!1},footerClass:{type:[Boolean,null,String,Object,Array]},flush:{type:Boolean,default:!1},headerClass:{type:[Boolean,null,String,Object,Array]},hoverable:{type:Boolean,default:!1},lifted:{type:Boolean,default:!1},sunken:{type:Boolean,default:!1},title:{}},setup(t){const s=e.useSlots(),l=e.computed(()=>["KCard",t.accented&&"KCard--accented",t.borderless&&"KCard--borderless",t.flush&&"KCard--flush",t.hoverable&&"KCard--hoverable",t.lifted&&"KCard--lifted",t.sunken&&"KCard--sunken"]),a=e.computed(()=>!!(s.title||t.title)),n=e.computed(()=>!!(s.header||a.value));return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KCard-header",t.headerClass])},[e.renderSlot(i.$slots,"header",{},()=>[a.value?(e.openBlock(),e.createElementBlock("h3",Jt,[e.renderSlot(i.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["KCard-body",t.bodyClass])},[e.renderSlot(i.$slots,"default")],2),s.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["KCard-footer",t.footerClass])},[e.renderSlot(i.$slots,"footer")],2)):e.createCommentVNode("",!0)],2))}}),Yt={key:0,class:"KChat-footer"},Xt=48,me=e.defineComponent({__name:"KChat",props:{actionsBottom:{type:Boolean,default:!1},ai:{type:Boolean,default:!1},autoscroll:{type:Boolean,default:!0},busy:{type:Boolean,default:!1},height:{}},setup(t,{expose:s}){const l=e.useSlots();e.provide(te,e.toRef(()=>t.busy));const a=e.useTemplateRef("body");let n,i=!0;const r=e.computed(()=>t.height?{"--kt-chat-height":t.height}:void 0);function c(){const f=a.value;f&&(f.scrollTop=f.scrollHeight)}function g(){const f=a.value;f&&(i=f.scrollHeight-f.scrollTop-f.clientHeight<=Xt)}return e.onMounted(()=>{const f=a.value;f&&(c(),t.autoscroll&&(f.addEventListener("scroll",g,{passive:!0}),n=new MutationObserver(()=>{i&&c()}),n.observe(f,{childList:!0,subtree:!0})))}),e.onUnmounted(()=>{n?.disconnect()}),s({scrollToBottom:c}),(f,d)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KChat",t.actionsBottom&&"KChat--actionsBottom",t.ai&&"KChat--ai"]),style:e.normalizeStyle(r.value)},[e.createElementVNode("div",{ref_key:"body",ref:a,class:"KChat-body"},[e.renderSlot(f.$slots,"default")],512),l.footer?(e.openBlock(),e.createElementBlock("div",Yt,[e.renderSlot(f.$slots,"footer")])):e.createCommentVNode("",!0)],6))}});function G(t,s,l,a={}){let n=!1;function i(){n||(n=!0,document.addEventListener(s,l,a.capture))}function r(){n&&(n=!1,document.removeEventListener(s,l,a.capture))}e.watch(t,c=>{if(!c){r();return}requestAnimationFrame(()=>{t.value&&i()})},{flush:"post",immediate:!0}),e.onBeforeUnmount(r)}const Y=new Map;function Pe(t,s,l){let a=Y.get(t);a||(a=new Set,Y.set(t,a)),a.add(l),e.watch(s,n=>{if(n)for(const i of Y.get(t)??[])i!==l&&i()},{flush:"post"}),e.onBeforeUnmount(()=>{const n=Y.get(t);n?.delete(l),n&&!n.size&&Y.delete(t)})}function je({create:t,element:s,group:l,onEvent:a,open:n}){let i,r=!1;function c(){return!i&&s.value&&(i=t(s.value)),i}e.watch(n,d=>{if(d===r)return;const u=c();u&&(r=d,d?u.show():u.hide())},{flush:"post"});function g(d){return u=>{u.target===s.value&&(r=d==="shown",n.value=r,a?.(d))}}const f=[["kt.shown",g("shown")],["kt.hidden",g("hidden")]];return e.watch(s,(d,u,w)=>{if(i=void 0,!!d){for(const[V,T]of f)d.addEventListener(V,T);n.value&&(c()?.show(),r=!0),w(()=>{for(const[V,T]of f)d.removeEventListener(V,T)})}},{flush:"post",immediate:!0}),e.onBeforeUnmount(()=>{r&&i?.hide(),i=void 0}),G(n,"click",d=>{const u=d.target;u&&(s.value?.contains(u)||i?.getContent?.()?.contains(u)||(n.value=!1))}),l&&Pe(l,n,()=>{n.value=!1}),{getInstance:c,hide:()=>{n.value=!1},show:()=>{n.value=!0},toggle:()=>{n.value=!n.value}}}const _t=["data-kt-popover-placement"],fe=e.defineComponent({__name:"KPopover",props:e.mergeModels({contentClass:{type:[Boolean,null,String,Object,Array]},placement:{default:"bottom-start"},toggleClass:{type:[Boolean,null,String,Object,Array]}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["hidden","shown"],["update:open"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"open"),n=l,i=e.useTemplateRef("root"),{toggle:r}=je({create:c=>new P.modules.Popover(c,{placement:t.placement}),element:i,group:"popover",open:a,onEvent:c=>n(c)});return s({toggle:r,show:()=>a.value=!0,hide:()=>a.value=!1}),(c,g)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:i,class:"KPopover","data-kt-popover":"","data-kt-popover-placement":t.placement},[e.createElementVNode("span",{class:e.normalizeClass(["KPopover-toggle",t.toggleClass]),"data-kt-popover-toggle":"",onClick:g[0]||(g[0]=e.withModifiers((...f)=>e.unref(r)&&e.unref(r)(...f),["stop"]))},[e.renderSlot(c.$slots,"toggle",{open:a.value,toggle:e.unref(r)})],2),e.createElementVNode("div",{class:e.normalizeClass(["KPopover-content",t.contentClass]),"data-kt-popover-content":""},[e.renderSlot(c.$slots,"default")],2)],8,_t))}}),vt=["data-kt-chat-dock-min-windows"],ea={type:"button",class:"KChatDock-launcher","data-kt-chat-dock-launcher":"","aria-label":"Conversations"},oe="data-kt-chat-window",ta="data-kt-chat-window-toggle",aa="data-kt-chat-window-minimize",oa="data-kt-chat-window-close",ne="data-kt-chat-window-head",na="data-kt-chat-window-head-close",Ue="data-kt-chat-window-row",la="data-kt-chat-dock-launcher",sa="data-kt-chat-dock-panel",Fe="data-kt-chat-dock-panel-open",ra="data-kt-chat-dock-panel-close",We="data-kt-chat-dock-item",ia="data-kt-popover-content",ca="is-railed",ue=e.defineComponent({__name:"KChatDock",props:{minWindows:{default:1}},emits:["reflow","launcher","panel","search","select","activate"],setup(t,{expose:s,emit:l}){const a=l,n=e.useTemplateRef("root"),i=e.useTemplateRef("rail"),r=e.useTemplateRef("list"),c=e.useTemplateRef("windows"),g=e.useTemplateRef("overflowPopover");let f;function d(){return!f&&n.value&&(f=new P.modules.ChatDock(n.value,{minWindows:t.minWindows})),f}const u=new Set;function w(C,o){o?u.add(C):u.delete(C)}function V(){u.forEach(C=>{C.isConnected||u.delete(C)})}function T(C){V(),u.forEach(o=>{C.rail(o,{animate:!1})}),u.clear()}let M=!1;function E(C){if(!M)return V(),"deferred";const o=d();return o?(T(o),C(o),"called"):(V(),"unavailable")}function B(){const C=d();C?(T(C),C.init()):V(),M=!0}e.watch(()=>t.minWindows,()=>{f=void 0,E(C=>{C.reflow()})});function y(C){const o=C.getAttribute(oe);o&&a("activate",o)}function h(C){if(C)return Array.from(n.value?.querySelectorAll(`[${oe}]`)??[]).find(o=>o.getAttribute(oe)===C)}function N(C){const o=C.target;if(!o)return;const K=o.closest(`[${na}]`);if(K){C.stopPropagation(),g.value?.hide();const O=K.closest(`[${ne}]`),F=h(O?.getAttribute(ne)??null);F&&E(Bn=>{Bn.close(F)});return}const k=o.closest(`[${ne}]`);if(k){C.stopPropagation(),g.value?.hide();const O=h(k.getAttribute(ne));O&&(E(F=>{F.expand(O)}),y(O));return}const A=o.closest(`[${Ue}]`);if(A){C.stopPropagation();const O=h(A.getAttribute(Ue));O&&(E(F=>{F.expand(O)}),y(O),g.value?.hide());return}if(o.closest(`[${ra}]`)){C.stopPropagation(),E(O=>{O.closePanel()});return}const S=o.closest(`[${We}]`);if(S){C.stopPropagation();const O=S.getAttribute(We);O&&E(F=>{F.select(O)});return}if(o.closest(`[${la}]`)){C.stopPropagation(),g.value?.hide(),a("launcher"),E(O=>{O.togglePanel()});return}const z=o.closest(`[${oe}]`);if(!z)return;const R=o.closest(`[${ta}]`),j=R?null:o.closest(`[${aa}]`),_=R||j?null:o.closest(`[${oa}]`);!R&&!j&&!_||(C.stopPropagation(),g.value?.hide(),E(O=>{R?z.classList.contains(ca)?(O.expand(z),y(z)):O.rail(z):j?O.rail(z):O.close(z)}))}const D={"kt.chatdock.reflow":C=>{C.target===n.value&&a("reflow")},"kt.chatdock.panel":C=>{C.target===n.value&&a("panel",C.detail.open)},"kt.chatdock.search":C=>{C.target===n.value&&a("search",C.detail.query)},"kt.chatdock.select":C=>{if(C.target===n.value){const{id:o,opened:K}=C.detail;a("select",o,K)}}};e.watch(n,(C,o,K)=>{if(f=void 0,!C)return;Object.entries(D).forEach(([S,L])=>{C.addEventListener(S,L)});const k=()=>{E(S=>{S.reflow()})};window.addEventListener("resize",k);const A=S=>{if(S.key!=="Escape"||!C.hasAttribute(Fe))return;C.querySelector(`[${sa}]`)?.contains(document.activeElement)&&E(z=>{z.closePanel()})},m=S=>{const L=S.target;!L||!C.hasAttribute(Fe)||C.contains(L)||L.closest(`[${ia}]`)||E(z=>{z.closePanel()})};document.addEventListener("keydown",A),document.addEventListener("pointerdown",m),K(()=>{Object.entries(D).forEach(([S,L])=>{C.removeEventListener(S,L)}),window.removeEventListener("resize",k),document.removeEventListener("keydown",A),document.removeEventListener("pointerdown",m)})},{immediate:!0}),e.provide(J,{withModule:E,declare:w,rail:i,list:r,panel:c});function p(){E(C=>{C.openPanel()})}function b(){E(C=>{C.closePanel()})}function I(){E(C=>{C.togglePanel()})}function x(){E(C=>{const o=n.value?.querySelector("[data-kt-chat-dock-search]");C.filter(o?.value??"")})}return s({openPanel:p,closePanel:b,togglePanel:I,refilter:x}),e.onMounted(()=>{e.nextTick(B)}),e.onUpdated(()=>{e.nextTick(()=>{E(C=>{C.reflow()})})}),(C,o)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:n,class:"KChatDock","data-kt-chat-dock":"","data-kt-chat-dock-min-windows":t.minWindows,role:"region","aria-label":"Conversations",onClick:N},[e.createElementVNode("div",{ref_key:"windows",ref:c,class:"KChatDock-windows","data-kt-chat-dock-windows":""},[e.renderSlot(C.$slots,"default")],512),e.createElementVNode("div",{ref_key:"rail",ref:i,class:"KChatDock-rail","data-kt-chat-dock-rail":""},[e.createVNode(fe,{ref_key:"overflowPopover",ref:g,class:"KChatDock-overflow is-hidden","data-kt-chat-dock-overflow":"",placement:"left-start"},{toggle:e.withCtx(()=>[...o[0]||(o[0]=[e.createElementVNode("button",{type:"button",class:"KAvatar KAvatar--sm KAvatar--overflow","aria-label":"More conversations"},[e.createElementVNode("span",{class:"KAvatar-initials","data-kt-chat-dock-overflow-count":""}),e.createElementVNode("span",{class:"KChatDock-overflow-dot","data-kt-chat-dock-overflow-dot":"",hidden:""})],-1)])]),default:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"list",ref:r,class:"KChatDock-list","data-kt-chat-dock-overflow-list":"",onClick:N},null,512)]),_:1},512),e.createElementVNode("button",ea,[e.renderSlot(C.$slots,"launcher",{},()=>[o[1]||(o[1]=e.createElementVNode("svg",{class:"KIcon","aria-hidden":"true"},[e.createElementVNode("use",{href:"#chatCircle"})],-1))])])],512)],8,vt))}}),da=["data-kt-chat-dock-item","data-kt-chat-dock-item-name","aria-label"],ma={class:"KChatDockItem-body"},fa={class:"KChatDockItem-name"},ua={key:0,class:"KChatDockItem-preview"},he=e.defineComponent({__name:"KChatDockItem",props:{id:{},name:{},preview:{},unread:{default:0}},setup(t){const s=e.computed(()=>t.name.split(/\s+/).filter(Boolean).slice(0,2).map(a=>a[0].toUpperCase()).join("")),l=e.computed(()=>t.unread>0?`${t.name}, ${t.unread} unread`:t.name);return(a,n)=>(e.openBlock(),e.createElementBlock("button",{type:"button",class:"KChatDockItem","data-kt-chat-dock-item":t.id,"data-kt-chat-dock-item-name":t.name,"aria-label":l.value},[e.renderSlot(a.$slots,"media",{},()=>[e.createVNode(U,{size:"sm"},{default:e.withCtx(()=>[e.renderSlot(a.$slots,"avatar",{},()=>[e.createTextVNode(e.toDisplayString(s.value),1)])]),_:3})]),e.createElementVNode("span",ma,[e.createElementVNode("span",fa,e.toDisplayString(t.name),1),t.preview?(e.openBlock(),e.createElementBlock("span",ua,e.toDisplayString(t.preview),1)):e.createCommentVNode("",!0)]),e.renderSlot(a.$slots,"trailing",{},()=>[t.unread>0?(e.openBlock(),e.createBlock(q,{key:0,compact:"",pill:"",class:"KChatDockItem-badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.unread),1)]),_:1})):e.createCommentVNode("",!0)])],8,da))}}),ha=["aria-label"],ka={class:"KChatDockPanel-header"},ga={class:"KChatDockPanel-title"},ba={key:0,class:"KChatDockPanel-actions"},pa={class:"KChatDockPanel-search"},ya={class:"KInput KInput--rounded KInput--sunken"},Ca=["placeholder"],Ba={class:"KChatDockPanel-list"},wa={class:"KChatDockPanel-empty is-hidden"},ke=e.defineComponent({__name:"KChatDockPanel",props:{title:{default:"Chats"},placeholder:{default:"Search"}},setup(t){const s={withModule:()=>"unavailable",declare:()=>{},rail:e.shallowRef(null),list:e.shallowRef(null),panel:e.shallowRef(null)},l=e.inject(J,s),a=e.useSlots();function n(i){const{value:r}=i.target;l.withModule(c=>{c.filter(r)})}return(i,r)=>e.unref(l).panel.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,defer:"",to:e.unref(l).panel.value},[e.createElementVNode("section",{class:"KChatDockPanel is-hidden","data-kt-chat-dock-panel":"","aria-label":t.title},[e.createElementVNode("header",ka,[e.createElementVNode("h2",ga,e.toDisplayString(t.title),1),e.unref(a).actions?(e.openBlock(),e.createElementBlock("div",ba,[e.renderSlot(i.$slots,"actions")])):e.createCommentVNode("",!0),r[0]||(r[0]=e.createElementVNode("button",{type:"button",class:"KChatDockPanel-close","data-kt-chat-dock-panel-close":"","aria-label":"Close"}," ✕ ",-1))]),e.createElementVNode("div",pa,[e.createElementVNode("div",ya,[r[1]||(r[1]=e.createElementVNode("div",{class:"KInput-addon"},[e.createElementVNode("svg",{class:"KIcon","aria-hidden":"true"},[e.createElementVNode("use",{href:"#search"})])],-1)),e.createElementVNode("input",{type:"search",placeholder:t.placeholder,"aria-label":"Search conversations","data-kt-chat-dock-search":"",onInput:n},null,40,Ca)])]),e.createElementVNode("div",Ba,[e.renderSlot(i.$slots,"default")]),e.createElementVNode("p",wa,[e.renderSlot(i.$slots,"empty",{},()=>[r[2]||(r[2]=e.createTextVNode("No conversations found",-1))])])],8,ha)],8,["to"])):e.createCommentVNode("",!0)}}),Ka={class:"KChat-divider"},$a={key:0,class:"KChat-dividerLabel"},ge=e.defineComponent({__name:"KChatDivider",props:{label:{}},setup(t){const s=e.useSlots();return(l,a)=>(e.openBlock(),e.createElementBlock("li",Ka,[t.label||e.unref(s).default?(e.openBlock(),e.createElementBlock("span",$a,[e.renderSlot(l.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])])):e.createCommentVNode("",!0)]))}}),Sa={key:0,class:"KChat-time"},Ea={class:"KChat-messageRow"},Na={class:"KChat-bubble"},be=e.defineComponent({__name:"KChatMessage",props:{sender:{type:Boolean,default:!1},time:{}},setup(t){const s=e.useSlots(),l=e.computed(()=>!!(t.time||s.time));return(a,n)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(["KChat-message",t.sender&&"is-sender"])},[l.value?(e.openBlock(),e.createElementBlock("span",Sa,[e.renderSlot(a.$slots,"time",{},()=>[e.createTextVNode(e.toDisplayString(t.time),1)])])):e.createCommentVNode("",!0),e.createElementVNode("div",Ea,[e.createElementVNode("div",Na,[e.renderSlot(a.$slots,"default")]),e.renderSlot(a.$slots,"actions")])],2))}}),Va={class:"KChat-messages"},le=e.defineComponent({__name:"KChatMessages",setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("ul",Va,[e.renderSlot(s.$slots,"default")]))}}),Ta={class:"KChat-notice"},pe=e.defineComponent({__name:"KChatNotice",props:{label:{}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("li",Ta,[e.renderSlot(s.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])]))}}),Aa={key:0,class:"KInput-addon"},Ma=["disabled","placeholder","readonly","rows"],Da=["disabled","placeholder","readonly","type"],za={key:3,class:"KInput-addon"},ye=e.defineComponent({inheritAttrs:!1,__name:"KInput",props:e.mergeModels({addonBordered:{type:Boolean,default:!1},autosize:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},ghost:{type:Boolean,default:!1},maxRows:{default:5},placeholder:{},readonly:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},rows:{},sunken:{type:Boolean,default:!1},textarea:{type:Boolean,default:!1},transparent:{type:Boolean,default:!1},type:{default:"text"}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t,{expose:s}){const l=e.useModel(t,"modelValue"),a=e.useSlots(),n=e.useAttrs(),i=e.computed(()=>t.textarea||t.autosize),r=e.useTemplateRef("field"),c=e.computed(()=>["KInput",t.addonBordered&&"KInput--addonBordered",t.autosize&&"KInput--autosize",t.disabled&&"KInput--disabled",t.ghost&&"KInput--ghost",t.rounded&&"KInput--rounded",t.sunken&&"KInput--sunken",t.transparent&&"KInput--transparent"]),g=e.computed(()=>{const{class:V,style:T,...M}=n;return M}),f=e.computed(()=>t.autosize?{"data-kt-input-autosize":"","data-kt-input-max-rows":t.maxRows}:{});let d;e.watch(()=>t.maxRows,()=>{d=void 0}),e.watch(r,()=>{d=void 0});function u(){t.autosize&&(!d&&r.value&&(d=new P.modules.Input(r.value,{maxRows:t.maxRows})),d?.resize())}async function w(){await e.nextTick(),u()}return e.watch(()=>l.value,()=>{t.autosize&&w()}),e.onMounted(()=>{t.autosize&&l.value&&w()}),s({field:r}),(V,T)=>(e.openBlock(),e.createElementBlock("div",e.mergeProps({class:[c.value,e.unref(n).class],style:e.unref(n).style},f.value),[a.prefix?(e.openBlock(),e.createElementBlock("div",Aa,[e.renderSlot(V.$slots,"prefix")])):e.createCommentVNode("",!0),i.value?e.withDirectives((e.openBlock(),e.createElementBlock("textarea",e.mergeProps({key:1,ref_key:"field",ref:r,"onUpdate:modelValue":T[0]||(T[0]=M=>l.value=M)},g.value,{disabled:t.disabled,placeholder:t.placeholder,readonly:t.readonly,rows:t.autosize?1:t.rows,onFocusin:u,onInput:u}),null,16,Ma)),[[e.vModelText,l.value]]):e.withDirectives((e.openBlock(),e.createElementBlock("input",e.mergeProps({key:2,"onUpdate:modelValue":T[1]||(T[1]=M=>l.value=M)},g.value,{disabled:t.disabled,placeholder:t.placeholder,readonly:t.readonly,type:t.type}),null,16,Da)),[[e.vModelDynamic,l.value]]),a.suffix?(e.openBlock(),e.createElementBlock("div",za,[e.renderSlot(V.$slots,"suffix")])):e.createCommentVNode("",!0)],16))}}),Ia={key:0,class:"KIcon",viewBox:"0 0 16 16","aria-hidden":"true"},La={key:1,class:"KIcon","aria-hidden":"true"},Ce=e.defineComponent({__name:"KChatPrompt",props:e.mergeModels({busy:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},maxRows:{default:5},newlineOnEnter:{type:Boolean,default:!1},placeholder:{default:"Write a message"}},{modelValue:{default:""},modelModifiers:{}}),emits:e.mergeModels(["stop","submit"],["update:modelValue"]),setup(t,{emit:s}){const l=e.useModel(t,"modelValue"),a=t,n=s,i=e.inject(te,void 0),r=e.computed(()=>a.busy??i?.value??!1),c=e.computed(()=>!l.value.trim()),g=e.computed(()=>a.disabled||!r.value&&c.value);function f(){if(r.value){n("stop");return}c.value||n("submit",l.value)}function d(u){a.newlineOnEnter||u.isComposing||(u.preventDefault(),f())}return(u,w)=>(e.openBlock(),e.createElementBlock("form",{class:"KChat-prompt",onSubmit:e.withModifiers(f,["prevent"])},[e.createVNode(ye,{modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=V=>l.value=V),autosize:"",rounded:"",disabled:a.disabled||r.value,"max-rows":a.maxRows,placeholder:a.placeholder,onKeydown:e.withKeys(e.withModifiers(d,["exact"]),["enter"])},null,8,["modelValue","disabled","max-rows","placeholder","onKeydown"]),e.renderSlot(u.$slots,"send",{busy:r.value,disabled:g.value},()=>[e.createVNode(W,{"icon-circular":"",type:"submit",disabled:g.value,"aria-label":r.value?"Stop":"Send"},{default:e.withCtx(()=>[r.value?(e.openBlock(),e.createElementBlock("svg",Ia,[...w[1]||(w[1]=[e.createElementVNode("rect",{x:"4",y:"4",width:"8",height:"8",rx:"1.5",fill:"currentColor"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",La,[...w[2]||(w[2]=[e.createElementVNode("use",{href:"#arrowRight"},null,-1)])]))]),_:1},8,["disabled","aria-label"])])],32))}}),xa={class:"KChat-shimmer",role:"status"},Ra={class:"KChat-shimmerStack"},se=e.defineComponent({__name:"KChatShimmer",props:{interval:{default:2e3},text:{default:"Thinking…"},texts:{}},setup(t){const s=e.useSlots(),l=e.ref(0);let a;const n=e.computed(()=>!!(t.texts&&t.texts.length>1)&&!s.default),i=e.computed(()=>t.texts&&t.texts.length?t.texts[l.value%t.texts.length]:t.text);function r(){a&&(clearInterval(a),a=void 0)}function c(){r(),n.value&&(l.value=0,a=setInterval(()=>{l.value+=1},t.interval))}return e.watch([()=>t.texts?.join(" "),()=>t.interval],c,{immediate:!0}),e.onUnmounted(r),(g,f)=>(e.openBlock(),e.createElementBlock("li",xa,[e.createElementVNode("span",Ra,[e.createVNode(e.Transition,{name:"KChat-shimmerText"},{default:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("span",{key:l.value,class:"KChat-shimmerText"},[e.renderSlot(g.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(i.value),1)])]))]),_:3})])]))}}),Be=e.defineComponent({name:"KTooltip",props:{delay:{type:Number,required:!1},label:{type:String,required:!0},placement:{type:String,required:!1}},setup(t,{slots:s}){const{Tooltip:l}=P.modules;function a(f){return f.currentTarget??null}function n(f){const d=a(f),u=f.relatedTarget;!d||u&&d.contains(u)||(f.stopPropagation(),l.scheduleShow(d))}function i(f){const d=a(f),u=f.relatedTarget;!d||u&&d.contains(u)||d.contains(document.activeElement)||(f.stopPropagation(),l.scheduleHide(d))}function r(f){const d=a(f);d&&(f.stopPropagation(),l.scheduleShow(d))}function c(f){const d=a(f);!d||d.matches(":hover")||(f.stopPropagation(),l.scheduleHide(d))}function g(f){f.key==="Escape"&&l.hideAll()}return document.addEventListener("keydown",g),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",g),l.hideAll()}),()=>{const f=s.default?.()??[],d={"data-kt-tooltip":t.label,onFocusin:r,onFocusout:c,onMouseout:i,onMouseover:n};t.placement&&(d["data-kt-tooltip-placement"]=t.placement),t.delay!==void 0&&(d["data-kt-tooltip-delay"]=String(t.delay));const u=f.filter(w=>typeof w=="object"&&w!==null&&"type"in w);return u.length===1?e.cloneVNode(u[0],d):e.h("span",{...d,style:{display:"contents"}},f)}}}),Oa=["data-kt-chat-window","aria-labelledby"],Pa={class:"KChatWindow-header"},ja=["aria-label","aria-expanded"],Ua=["id"],Fa={key:0,class:"KBadge KChatWindow-badge"},Wa={key:0,class:"KChatWindow-actions"},Ga={key:0,type:"button",class:"KChatWindow-action","data-kt-chat-window-minimize":"","aria-label":"Minimize"},Ha={key:1,type:"button",class:"KChatWindow-action","data-kt-chat-window-close":"","aria-label":"Close"},qa={class:"KChatWindow-body"},Qa=["data-kt-chat-window-head"],Za=["aria-label"],Ja=["aria-label"],Ya=["data-kt-chat-window-row"],Xa={class:"KChatDockRow-name"},we=e.defineComponent({inheritAttrs:!1,__name:"KChatWindow",props:e.mergeModels({closable:{type:Boolean,default:!0},minimizable:{type:Boolean,default:!0},title:{},unread:{default:0},id:{}},{state:{default:"expanded"},stateModifiers:{}}),emits:e.mergeModels(["close"],["update:state"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"state"),n=l,i=e.useSlots();function r(o=[]){return o.flatMap(K=>K.type===e.Comment?[]:K.type===e.Text?String(K.children).trim()?[K]:[]:K.type===e.Fragment&&Array.isArray(K.children)?r(K.children):[K])}function c(){let o=r(i.head?.());return o.length||(o=r(i.avatar?.())),o.length===1&&(o[0].type===U||o[0].type===de)}const g=e.useAttrs(),f=e.computed(()=>{const{class:o,style:K,...k}=g;return k}),d=e.useTemplateRef("root"),u=e.useId(),w=e.computed(()=>`${u}-title`),V={withModule:()=>"unavailable",declare:()=>{},rail:e.shallowRef(null),list:e.shallowRef(null),panel:e.shallowRef(null)},T=e.inject(J,V);let M=a.value,E=a.value==="railed"?"expanded":a.value;const B=e.computed(()=>["KChatWindow",a.value==="railed"&&"is-railed"]),y=e.computed(()=>{const o=t.title??"Conversation";return t.unread>0?`${o}, ${t.unread} unread`:o}),h=e.computed(()=>["KChatDockHead"]),N=e.computed(()=>y.value),D=e.computed(()=>`Close conversation with ${t.title??"Conversation"}`),p=o=>o.target===d.value;function b(o){o==="railed"&&M!=="railed"&&(E=M),M=o,a.value=o}const I={"kt.chatdock.expand":o=>{p(o)&&b("expanded")},"kt.chatdock.rail":o=>{p(o)&&b("railed")},"kt.chatdock.unrail":o=>{p(o)&&b(E)},"kt.chatdock.close":o=>{p(o)&&(o.preventDefault(),n("close"))}};e.watch(d,(o,K,k)=>{o&&(Object.entries(I).forEach(([A,m])=>{o.addEventListener(A,m)}),M==="railed"&&T.declare(o,!0),k(()=>{Object.entries(I).forEach(([A,m])=>{o.removeEventListener(A,m)})}))},{immediate:!0}),e.watch(a,o=>{const K=d.value;if(!K||o===M)return;const k=()=>{o==="railed"&&M!=="railed"&&(E=M),M=o};T.withModule(m=>{k(),o==="expanded"?m.expand(K):m.rail(K)})==="deferred"&&(k(),T.declare(K,o==="railed"))});function x(){a.value="expanded"}function C(){a.value="railed"}return s({expand:x,rail:C}),(o,K)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",e.mergeProps({ref_key:"root",ref:d},f.value,{class:[B.value,e.unref(g).class],style:e.unref(g).style,"data-kt-chat-window":t.id??"","aria-labelledby":w.value}),[e.createElementVNode("header",Pa,[e.createElementVNode("button",{type:"button",class:"KChatWindow-toggle","data-kt-chat-window-toggle":"","aria-label":y.value,"aria-expanded":a.value==="expanded"},[e.createElementVNode("span",{id:w.value,class:"KChatWindow-title"},[e.renderSlot(o.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])],8,Ua),t.unread>0?(e.openBlock(),e.createElementBlock("span",Fa,e.toDisplayString(t.unread),1)):e.createCommentVNode("",!0)],8,ja),t.minimizable||t.closable||i.actions?(e.openBlock(),e.createElementBlock("span",Wa,[e.renderSlot(o.$slots,"actions"),t.minimizable?(e.openBlock(),e.createElementBlock("button",Ga," – ")):e.createCommentVNode("",!0),t.closable?(e.openBlock(),e.createElementBlock("button",Ha," ✕ ")):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)]),e.createElementVNode("div",qa,[e.renderSlot(o.$slots,"default")])],16,Oa),t.id&&e.unref(T).rail.value?(e.openBlock(),e.createBlock(e.Teleport,{key:0,defer:"",to:e.unref(T).rail.value},[e.createElementVNode("div",{class:e.normalizeClass(h.value),"data-kt-chat-window-head":t.id},[e.createVNode(Be,{label:t.title??"Conversation",placement:"left"},{default:e.withCtx(()=>[e.createElementVNode("button",{type:"button",class:"KChatDockHead-open","aria-label":N.value},[c()?e.renderSlot(o.$slots,"head",{key:0},()=>[e.renderSlot(o.$slots,"avatar")]):(e.openBlock(),e.createBlock(U,{key:1,size:"sm"},{default:e.withCtx(()=>[e.renderSlot(o.$slots,"head",{},()=>[e.renderSlot(o.$slots,"avatar")])]),_:3}))],8,Za)]),_:3},8,["label"]),t.unread>0?(e.openBlock(),e.createBlock(q,{key:0,compact:"",pill:"",class:"KChatDockHead-badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.unread),1)]),_:1})):e.createCommentVNode("",!0),e.createElementVNode("button",{type:"button",class:"KChatDockHead-close","data-kt-chat-window-head-close":"","aria-label":D.value}," ✕ ",8,Ja)],10,Qa)],8,["to"])):e.createCommentVNode("",!0),t.id&&e.unref(T).list.value?(e.openBlock(),e.createBlock(e.Teleport,{key:1,defer:"",to:e.unref(T).list.value},[e.createElementVNode("button",{type:"button",class:"KChatDockRow is-hidden","data-kt-chat-window-row":t.id},[e.renderSlot(o.$slots,"row",{},()=>[e.renderSlot(o.$slots,"avatar")]),e.createElementVNode("span",Xa,e.toDisplayString(t.title),1),t.unread>0?(e.openBlock(),e.createBlock(q,{key:0,compact:"",pill:"",class:"KChatDockRow-badge"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.unread),1)]),_:1})):e.createCommentVNode("",!0)],8,Ya)],8,["to"])):e.createCommentVNode("",!0)],64))}}),_a={key:1,class:"KMessenger-listError"},va={class:"KMessenger-error"},eo={key:0,"data-kt-messenger-top":"",class:"KMessenger-top","aria-hidden":"true"},to=["onClick"],Ge=e.defineComponent({__name:"KMessenger",props:{loaders:{},store:{},minWindows:{default:1},title:{default:"Chats"},placeholder:{default:"Search"},evictOnClose:{type:Boolean,default:!1},actionsBottom:{type:Boolean,default:!0},dateLabel:{type:Function},noticeLabel:{type:Function}},emits:["open","close","send","receive","error"],setup(t,{expose:s,emit:l}){const a=l,n=(()=>{if(t.store)return t.store;if(!t.loaders)throw new Error("KMessenger needs either `loaders` or `store`.");return ce(t.loaders,{evictOnClose:t.evictOnClose})})();ie(n);const i=n.onEvent(o=>{switch(o.type){case"open":a("open",o.id);break;case"close":a("close",o.id);break;case"send":a("send",o.message);break;case"receive":a("receive",o.message);break;case"error":a("error",o.kind,o.id,o.error);break}});e.onBeforeUnmount(i);const r=e.computed(()=>n.openIds.value.map(o=>n.entries[o]));function c(o){return o.window==="railed"?"railed":"expanded"}function g(o,K){K==="railed"?n.minimize(o.conversation.id):o.window!=="expanded"&&n.expand(o.conversation.id)}function f(o){return o.name.split(/\s+/).filter(Boolean).slice(0,2).map(K=>K[0].toUpperCase()).join("")}function d(o,K){return o instanceof Error&&o.message?o.message:K}const u=e.computed(()=>{const o=new Map;return r.value.forEach(K=>{if(K.window==="railed")return;const k=K.messages;o.set(K.conversation.id,{dividers:k.map((A,m)=>t.dateLabel?.(A,k[m-1])),notices:k.map(A=>t.noticeLabel?.(A))})}),o});function w(o,K){return u.value.get(o)?.dividers[K]}function V(o,K){return u.value.get(o)?.notices[K]}const T=new Map,M=new Map,E=new Map,B=new Map;function y(o){let K=B.get(o);return K||(K=k=>p(o,k),B.set(o,K)),K}function h(o){const K=T.get(o);return K?K.$el:void 0}function N(o){return h(o)?.querySelector(".KChat-body")??null}function D(o,K){const k=M.get(o);if(!k)return;const A=E.get(o);if(!K){A&&(k.unobserve(A),E.delete(o));return}const m=h(o)?.querySelector("[data-kt-messenger-top]")??null;!m||m===A||(A&&k.unobserve(A),k.observe(m),E.set(o,m))}function p(o,K){if(!K){M.get(o)?.disconnect(),M.delete(o),E.delete(o),T.delete(o);return}if(T.get(o)===K&&M.has(o))return;M.get(o)?.disconnect(),M.delete(o),E.delete(o),T.set(o,K);const k=N(o);k&&(M.set(o,new IntersectionObserver(A=>{A.some(m=>m.isIntersecting)&&b(o)},{root:k})),D(o,typeof n.entries[o]?.cursor=="string"))}async function b(o){const K=n.entries[o],k=N(o);if(!k||!K||K.loadingOlder||typeof K.cursor!="string")return;const A=k.scrollHeight,m=k.scrollTop;await n.loadOlder(o),await e.nextTick(),k.scrollTop=m+(k.scrollHeight-A)}e.onBeforeUnmount(()=>{M.forEach(o=>o.disconnect()),M.clear(),E.clear(),T.clear(),B.clear()}),e.watch(()=>r.value.map(o=>[o.conversation.id,typeof o.cursor=="string"]),async o=>{await e.nextTick(),o.forEach(([K,k])=>D(K,k))}),e.watch(()=>n.openIds.value,o=>{const K=new Set(o);B.forEach((k,A)=>{K.has(A)||B.delete(A)})}),e.watch(()=>r.value.map(o=>[o.conversation.id,o.loading]),async(o,K)=>{const k=new Map(K??[]);await e.nextTick(),o.forEach(([A,m])=>{m==="loaded"&&k.get(A)!=="loaded"&&T.get(A)?.scrollToBottom()})});const I=e.useTemplateRef("dock");e.watch(()=>[n.listLoading.value,n.conversations.value.length],async()=>{await e.nextTick(),I.value?.refilter()});function x(o){n.open(o)}function C(o){n.setQuery(o)}return s(n),(o,K)=>(e.openBlock(),e.createBlock(ue,{ref_key:"dock",ref:I,"min-windows":t.minWindows,onSelect:x,onActivate:K[1]||(K[1]=k=>e.unref(n).open(k)),onSearch:C},{launcher:e.withCtx(()=>[e.renderSlot(o.$slots,"launcher")]),default:e.withCtx(()=>[e.createVNode(ke,{title:t.title,placeholder:t.placeholder},e.createSlots({empty:e.withCtx(()=>[e.renderSlot(o.$slots,"empty",{},()=>[K[4]||(K[4]=e.createTextVNode("No conversations found",-1))])]),default:e.withCtx(()=>[e.unref(n).listLoading.value==="loading"&&!e.unref(n).conversations.value.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},e.renderList(3,k=>e.createElementVNode("div",{key:k,class:"KChatDockItem","aria-hidden":"true"},[e.createVNode(U,{size:"sm"}),K[2]||(K[2]=e.createElementVNode("span",{class:"KChatDockItem-body"},[e.createElementVNode("span",{class:"KChatDockItem-name"}," "),e.createElementVNode("span",{class:"KChatDockItem-preview"}," ")],-1))])),64)):e.unref(n).listLoading.value==="error"?(e.openBlock(),e.createElementBlock("div",_a,[e.createTextVNode(e.toDisplayString(d(e.unref(n).listError.value,"Could not load conversations"))+" ",1),e.createVNode(W,{size:"xs",secondary:"",onClick:K[0]||(K[0]=k=>e.unref(n).refreshConversations())},{default:e.withCtx(()=>[...K[3]||(K[3]=[e.createTextVNode(" Retry ",-1)])]),_:1})])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n).conversations.value,k=>e.renderSlot(o.$slots,"item",{key:k.id,conversation:k,entry:e.unref(n).entries[k.id]},()=>[e.createVNode(he,{id:k.id,name:k.name,preview:k.preview,unread:k.unread},{avatar:e.withCtx(()=>[e.renderSlot(o.$slots,"avatar",{conversation:k},()=>[k.avatar?(e.openBlock(),e.createBlock(U,{key:0,size:"sm",src:k.avatar,alt:k.name},null,8,["src","alt"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(f(k)),1)],64))])]),_:2},1032,["id","name","preview","unread"])])),128))]),_:2},[o.$slots["panel-actions"]?{name:"actions",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"panel-actions")]),key:"0"}:void 0]),1032,["title","placeholder"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,k=>(e.openBlock(),e.createBlock(we,{id:k.conversation.id,key:k.conversation.id,title:k.conversation.name,unread:k.conversation.unread,state:c(k),"onUpdate:state":A=>g(k,A),onClose:A=>e.unref(n).close(k.conversation.id)},e.createSlots({avatar:e.withCtx(()=>[e.renderSlot(o.$slots,"avatar",{conversation:k.conversation},()=>[k.conversation.avatar?(e.openBlock(),e.createBlock(U,{key:0,size:"sm",src:k.conversation.avatar,alt:k.conversation.name},null,8,["src","alt"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(f(k.conversation)),1)],64))])]),default:e.withCtx(()=>[k.window!=="railed"?(e.openBlock(),e.createBlock(me,{key:0,ref_for:!0,ref:y(k.conversation.id),"actions-bottom":t.actionsBottom},e.createSlots({default:e.withCtx(()=>[k.loading==="loading"&&!k.messages.length?e.renderSlot(o.$slots,"loading",{key:0,conversation:k.conversation},()=>[e.createVNode(le,null,{default:e.withCtx(()=>[e.createVNode(se,{text:"Loading…"})]),_:1})]):k.loading==="error"&&!k.messages.length?e.renderSlot(o.$slots,"error",{key:1,conversation:k.conversation,error:k.error,retry:()=>e.unref(n).retryLoad(k.conversation.id)},()=>[e.createElementVNode("div",va,[e.createElementVNode("span",null,e.toDisplayString(d(k.error,"Could not load messages")),1),e.createVNode(W,{size:"xs",secondary:"",onClick:A=>e.unref(n).retryLoad(k.conversation.id)},{default:e.withCtx(()=>[...K[5]||(K[5]=[e.createTextVNode(" Retry ",-1)])]),_:1},8,["onClick"])])]):(e.openBlock(),e.createBlock(le,{key:2},{default:e.withCtx(()=>[typeof k.cursor=="string"?(e.openBlock(),e.createElementBlock("li",eo)):e.createCommentVNode("",!0),k.loadingOlder?e.renderSlot(o.$slots,"loading-older",{key:1,conversation:k.conversation},()=>[e.createVNode(se,{text:"Loading older…"})]):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.messages,(A,m)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:A.id},[w(k.conversation.id,m)?e.renderSlot(o.$slots,"divider",{key:0,label:w(k.conversation.id,m),message:A,previous:k.messages[m-1]},()=>[e.createVNode(ge,{label:w(k.conversation.id,m)},null,8,["label"])]):e.createCommentVNode("",!0),V(k.conversation.id,m)?e.renderSlot(o.$slots,"notice",{key:1,label:V(k.conversation.id,m),message:A},()=>[e.createVNode(pe,{label:V(k.conversation.id,m)},null,8,["label"])]):(e.openBlock(),e.createBlock(be,{key:2,sender:A.sender,time:A.time,class:e.normalizeClass({"is-pending":A.pending,"is-failed":A.failed})},e.createSlots({default:e.withCtx(()=>[e.renderSlot(o.$slots,"message",{message:A,conversation:k.conversation},()=>[e.createTextVNode(e.toDisplayString(A.text),1)]),A.failed?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"KMessenger-retry",onClick:S=>e.unref(n).retry(k.conversation.id,A.id)}," Failed · Retry ",8,to)):e.createCommentVNode("",!0)]),_:2},[o.$slots["message-actions"]?{name:"actions",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"message-actions",{message:A,conversation:k.conversation})]),key:"0"}:void 0]),1032,["sender","time","class"]))],64))),128))]),_:2},1024))]),_:2},[e.unref(n).canSend?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"composer",{conversation:k.conversation,draft:k.draft,send:A=>e.unref(n).send(k.conversation.id,A),setDraft:A=>e.unref(n).setDraft(k.conversation.id,A)},()=>[e.createVNode(Ce,{"model-value":k.draft,placeholder:"Write a message","onUpdate:modelValue":A=>e.unref(n).setDraft(k.conversation.id,A),onSubmit:A=>e.unref(n).send(k.conversation.id,A)},null,8,["model-value","onUpdate:modelValue","onSubmit"])])]),key:"0"}:void 0]),1032,["actions-bottom"])):e.createCommentVNode("",!0)]),_:2},[o.$slots["window-title"]?{name:"title",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"window-title",{conversation:k.conversation,entry:k})]),key:"0"}:void 0,o.$slots["window-actions"]?{name:"actions",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"window-actions",{conversation:k.conversation,entry:k})]),key:"1"}:void 0,o.$slots.head?{name:"head",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"head",{conversation:k.conversation,entry:k})]),key:"2"}:void 0,o.$slots.row?{name:"row",fn:e.withCtx(()=>[e.renderSlot(o.$slots,"row",{conversation:k.conversation,entry:k})]),key:"3"}:void 0]),1032,["id","title","unread","state","onUpdate:state","onClose"]))),128))]),_:3},8,["min-windows"]))}}),ao={class:"KIcon",title:"icon",role:"img"},oo=["href"],H=e.defineComponent({__name:"KIcon",props:{href:{default:""}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("svg",ao,[e.createElementVNode("use",{href:`#${t.href.replace(/^#/,"")}`},null,8,oo)]))}}),no=["data-kt-dropdown-placement"],lo="data-kt-dropdown-item",so="is-parent",Ke=e.defineComponent({__name:"KDropdown",props:e.mergeModels({inline:{type:Boolean,default:!1},menuClass:{type:[Boolean,null,String,Object,Array]},placement:{default:"bottom-start"},toggleClass:{type:[Boolean,null,String,Object,Array]}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["hidden","shown"],["update:open"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"open"),n=l,i=e.useTemplateRef("root"),{getInstance:r,toggle:c}=je({create:d=>new P.modules.Dropdown(d,{placement:t.placement}),element:i,group:"dropdown",open:a,onEvent:d=>n(d)});function g(d){const u=d?.closest(`[${lo}]`);return u&&r()?.getMenu()?.contains(u)?u:null}G(a,"click",d=>{g(d.target)&&(a.value=!1)}),G(a,"mouseover",d=>{const u=g(d.target);if(!u||!u.classList.contains(so))return;const w=d.relatedTarget;w&&u.contains(w)||r()?.showSubmenuOf(u)}),G(a,"mouseout",d=>{const u=g(d.target);if(!u)return;let w=d.relatedTarget;for(;w&&w.parentNode&&w.parentNode!==document;){if(w===u||w.parentNode===u)return;w=w.parentNode}r()?.hideSubmenuOf(u)});const f=e.computed(()=>["KDropdown",t.inline&&"KDropdown--inline"]);return s({toggle:c,show:()=>a.value=!0,hide:()=>a.value=!1}),(d,u)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:i,class:e.normalizeClass(f.value),"data-kt-dropdown":"","data-kt-dropdown-placement":t.placement},[e.createElementVNode("span",{class:e.normalizeClass(["KDropdown-toggle",t.toggleClass]),"data-kt-dropdown-toggle":"",onClick:u[0]||(u[0]=e.withModifiers((...w)=>e.unref(c)&&e.unref(c)(...w),["stop"]))},[e.renderSlot(d.$slots,"toggle",{open:a.value,toggle:e.unref(c)})],2),e.renderSlot(d.$slots,"default")],10,no))}}),ro={key:0,class:"KDropdown-text"},$e=e.defineComponent({__name:"KDropdownItem",props:{active:{type:Boolean,default:!1},parent:{type:Boolean,default:!1},text:{type:Boolean,default:!1}},setup(t){const s=e.computed(()=>["KDropdown-item",t.active&&"is-active",t.parent&&"is-parent"]);return(l,a)=>t.text?(e.openBlock(),e.createElementBlock("div",ro,[e.renderSlot(l.$slots,"default")])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(s.value),"data-kt-dropdown-item":""},[e.renderSlot(l.$slots,"default")],2))}}),io={key:0,class:"KDropdown-submenu","data-kt-dropdown-submenu":""},co={key:1,class:"KDropdown-menu","data-kt-dropdown-menu":""},Se=e.defineComponent({__name:"KDropdownMenu",props:{submenu:{type:Boolean,default:!1}},setup(t){return(s,l)=>t.submenu?(e.openBlock(),e.createElementBlock("div",io,[e.renderSlot(s.$slots,"default")])):(e.openBlock(),e.createElementBlock("div",co,[e.renderSlot(s.$slots,"default")]))}}),mo={key:0,class:"KDropdown-divider"},He=e.defineComponent({__name:"KChatMessageActions",props:{actions:{}},emits:["action"],setup(t,{expose:s,emit:l}){const a=[{key:"react",label:"React"},{key:"reply",icon:"reply",label:"Reply"},{key:"more",icon:"meatball",label:"More"}],n=l,i=e.useSlots(),r=e.ref(0),c=()=>{r.value+=1},g=()=>{r.value=Math.max(0,r.value-1)},f=e.reactive(new Set);e.onBeforeUnmount(()=>{r.value=0,f.clear()});const d=e.computed(()=>r.value>0||f.size>0),u=e.computed(()=>t.actions??a),w=e.computed(()=>u.value.filter(B=>B.visible!==!1)),V=e.computed(()=>w.value),T=B=>(B.items??[]).filter(y=>y.visible!==!1),M=B=>!!B.items?.length||B.key==="more"&&!!i.more,E=(B,y)=>{B.disabled||y?.disabled||n("action",B.key,y?.key)};return e.onUpdated(()=>{if(!f.size)return;const B=new Set(i.default?[]:V.value.filter(M).map(({key:y})=>y));for(const y of f)B.has(y)||f.delete(y)}),s({hold:c,release:g}),(B,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KChat-messageActions",d.value&&"is-held"])},[e.renderSlot(B.$slots,"default",{hold:c,release:g},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.value,h=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:h.key},[h.key!=="react"||B.$slots.react?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[h.key==="react"?e.renderSlot(B.$slots,"react",{key:0,hold:c,release:g}):M(h)?(e.openBlock(),e.createBlock(Ke,{key:1,onShown:N=>f.add(h.key),onHidden:N=>f.delete(h.key)},{toggle:e.withCtx(()=>[e.createVNode(W,{"aria-label":h.label,disabled:h.disabled,title:h.label,variant:h.intent,icon:"",minimal:"",size:"sm"},{default:e.withCtx(()=>[e.createVNode(H,{href:h.icon},null,8,["href"])]),_:2},1032,["aria-label","disabled","title","variant"])]),default:e.withCtx(()=>[e.createVNode(Se,null,{default:e.withCtx(()=>[h.key==="more"&&e.unref(i).more?e.renderSlot(B.$slots,"more",{key:0}):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(T(h),(N,D)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:N.divider?`divider-${D}`:N.key},[N.divider?(e.openBlock(),e.createElementBlock("hr",mo)):(e.openBlock(),e.createBlock($e,{key:1,"aria-disabled":N.disabled||void 0,onClick:p=>E(h,N)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(N.label),1)]),_:2},1032,["aria-disabled","onClick"]))],64))),128))]),_:2},1024)]),_:2},1032,["onShown","onHidden"])):(e.openBlock(),e.createBlock(W,{key:2,"aria-label":h.label,disabled:h.disabled,title:h.label,variant:h.intent,icon:"",minimal:"",size:"sm",onClick:N=>E(h)},{default:e.withCtx(()=>[e.createVNode(H,{href:h.icon},null,8,["href"])]),_:2},1032,["aria-label","disabled","title","variant","onClick"]))],64)):e.createCommentVNode("",!0)],64))),128))])],2))}}),fo=["checked","disabled","value"],uo={key:0,class:"KCheckbox-label"},qe=e.defineComponent({inheritAttrs:!1,__name:"KCheckbox",props:e.mergeModels({disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},label:{},value:{}},{modelValue:{type:[Boolean,Array],default:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const s=e.useModel(t,"modelValue"),l=e.useSlots(),a=e.useAttrs(),n=e.useTemplateRef("input"),i=e.computed(()=>Array.isArray(s.value)),r=e.computed(()=>i.value?s.value.includes(t.value):!!s.value),c=e.computed(()=>["KCheckbox",t.disabled&&"KCheckbox--disabled"]),g=e.computed(()=>{const{class:u,style:w,...V}=a;return V});function f(u){const w=u.target.checked;if(!i.value){s.value=w;return}const V=s.value;s.value=w?[...V,t.value]:V.filter(T=>T!==t.value)}function d(){n.value&&(n.value.indeterminate=t.indeterminate)}return e.watch(()=>t.indeterminate,d),e.onMounted(d),(u,w)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([c.value,e.unref(a).class]),style:e.normalizeStyle(e.unref(a).style)},[e.createElementVNode("input",e.mergeProps({ref_key:"input",ref:n,class:"KCheckbox-input",type:"checkbox"},g.value,{checked:r.value,disabled:t.disabled,value:t.value,onChange:f}),null,16,fo),w[0]||(w[0]=e.createElementVNode("span",{class:"KCheckbox-box"},null,-1)),l.default||t.label?(e.openBlock(),e.createElementBlock("span",uo,[e.renderSlot(u.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])])):e.createCommentVNode("",!0)],6))}}),ho={class:"KCollapse-content","data-kt-collapse-content":""},Qe=e.defineComponent({__name:"KCollapse",props:e.mergeModels({direction:{default:"right"},horizontal:{type:Boolean,default:!1},tag:{default:"div"}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:e.mergeModels(["collapse","collapsed","expand","expanded"],["update:expanded"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"expanded"),n=l,i=e.useTemplateRef("root"),{toggle:r}=Me({direction:()=>t.direction,element:i,expanded:a,horizontal:()=>t.horizontal,onEvent:c=>n(c)});return s({toggle:r,expand:()=>a.value=!0,collapse:()=>a.value=!1}),(c,g)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tag),{ref_key:"root",ref:i,class:"KCollapse","data-kt-collapse":"","data-kt-collapse-horizontal":t.horizontal?t.direction==="left"?"left":"true":void 0},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"toggle",{toggle:e.unref(r),expanded:a.value}),e.createElementVNode("div",ho,[e.renderSlot(c.$slots,"default")])]),_:3},8,["data-kt-collapse-horizontal"]))}}),Ze=e.defineComponent({__name:"KContainer",props:{glassy:{type:Boolean}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KContainer",t.glassy&&"KContainer--glassy"])},[e.renderSlot(s.$slots,"default")],2))}}),X=new Map;function Je(t,s,l=()=>0){const a=Symbol("overlay");function n(){let r=X.get(t);return r||(r=[],X.set(t,r)),r}function i(){const r=X.get(t);if(!r)return;const c=r.findIndex(g=>g.id===a);c!==-1&&r.splice(c,1),r.length||X.delete(t)}return e.watch(s,r=>{i(),r&&n().push({id:a,priority:l()})},{flush:"post",immediate:!0}),e.onBeforeUnmount(i),()=>{const r=X.get(t);return r?.length?r.reduce((g,f)=>f.priority>=g.priority?f:g).id===a:!1}}const ko=["data-kt-drawer-id","data-kt-drawer-static-backdrop"],go=["aria-labelledby"],bo=["id"],po="data-kt-drawer-dismiss",yo="data-kt-drawer-panel",Co="data-kt-drawer-toggle",Ye=e.defineComponent({__name:"KDrawer",props:e.mergeModels({bodyClass:{type:[Boolean,null,String,Object,Array]},closable:{type:Boolean,default:!0},contained:{type:Boolean,default:!1},edge:{default:"right"},focus:{type:Boolean,default:!0},footerClass:{type:[Boolean,null,String,Object,Array]},headerClass:{type:[Boolean,null,String,Object,Array]},id:{},keyboard:{type:Boolean,default:!0},noBackdrop:{type:Boolean,default:!1},panelClass:{type:[Boolean,null,String,Object,Array]},size:{},staticBackdrop:{type:Boolean,default:!1},teleport:{type:Boolean,default:()=>{}},title:{}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["hide","hidden","show","shown"],["update:open"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"open"),n=l,i=e.useSlots(),r=e.useTemplateRef("root");let c,g=!1;const f=e.useId(),d=e.computed(()=>t.id??f),u=e.computed(()=>`${d.value}-title`),w=e.computed(()=>t.teleport??!t.contained),V=e.computed(()=>!!(t.title||i.title)),T=e.computed(()=>!!(i.header||V.value||t.closable)),M=e.computed(()=>["KDrawer",t.edge==="left"&&"KDrawer--left",t.size&&t.size!=="md"&&`KDrawer--${t.size}`,t.contained&&"KDrawer--contained",t.noBackdrop&&"KDrawer--noBackdrop"]);function E(){return!c&&r.value&&(c=new P.modules.Drawer(r.value,{focus:t.focus,keyboard:t.keyboard,staticBackdrop:t.staticBackdrop})),c}e.watch(()=>[t.focus,t.keyboard,t.staticBackdrop],()=>{c=void 0}),e.watch(a,p=>{if(p===g)return;const b=E();b&&(g=p,p?b.show():b.hide())},{flush:"post"});const B=p=>p.target===r.value,y={"kt.drawer.show":p=>{B(p)&&(g=!0,a.value=!0,n("show"))},"kt.drawer.shown":p=>{B(p)&&n("shown")},"kt.drawer.hide":p=>{B(p)&&(g=!1,a.value=!1,n("hide"))},"kt.drawer.hidden":p=>{B(p)&&n("hidden")}};e.watch(r,(p,b,I)=>{if(c=void 0,!!p){for(const[x,C]of Object.entries(y))p.addEventListener(x,C);p.setAttribute("aria-hidden","true"),a.value&&E()?.show(),I(()=>{for(const[x,C]of Object.entries(y))p.removeEventListener(x,C)})}},{flush:"post",immediate:!0});const h=Je("drawer",a,()=>t.noBackdrop?0:1);G(a,"keydown",p=>{p.key!=="Escape"||!h()||(p.stopPropagation(),t.keyboard&&D())},{capture:!0});function N(p){const b=p.target;if(!b)return;if(b.closest(`[${po}]`)){p.stopPropagation(),D();return}if(t.staticBackdrop||b.closest(`[${Co}]`))return;const I=r.value?.querySelector(`[${yo}]`);I&&!I.contains(b)&&(p.stopPropagation(),D())}e.onBeforeUnmount(()=>{r.value?.classList.contains("is-active")&&document.body.classList.remove("is-drawer-active")});function D(){a.value=!1}return s({show:()=>a.value=!0,hide:D,toggle:()=>a.value=!a.value}),(p,b)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body",disabled:!w.value},[e.createElementVNode("div",{ref_key:"root",ref:r,class:e.normalizeClass(M.value),"data-kt-drawer-id":d.value,"data-kt-drawer-static-backdrop":t.staticBackdrop?"true":"false","data-kt-drawer":"",tabindex:"-1",onClick:N},[e.createElementVNode("div",{class:e.normalizeClass(["KDrawer-panel",t.panelClass]),"aria-labelledby":V.value?u.value:void 0,"data-kt-drawer-panel":"",role:"dialog"},[T.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KDrawer-header",t.headerClass])},[e.renderSlot(p.$slots,"header",{},()=>[V.value?(e.openBlock(),e.createElementBlock("h5",{key:0,id:u.value,class:"KDrawer-title"},[e.renderSlot(p.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])],8,bo)):e.createCommentVNode("",!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:1,class:"KDrawer-close",type:"button","aria-label":"Close",onClick:e.withModifiers(D,["stop"])},[e.renderSlot(p.$slots,"close",{},()=>[b[0]||(b[0]=e.createTextVNode("✕",-1))])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["KDrawer-body",t.bodyClass])},[e.renderSlot(p.$slots,"default")],2),i.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["KDrawer-footer",t.footerClass])},[e.renderSlot(p.$slots,"footer")],2)):e.createCommentVNode("",!0)],10,go)],10,ko)],8,["disabled"]))}}),Bo={class:"KFileTree-node",role:"none","data-kt-file-tree-node":""},wo=["data-kftree-id","tabindex","aria-expanded","data-kt-file-tree-lazy"],Ko={class:"KFileTree-caret","data-kt-file-tree-caret":"","aria-hidden":"true"},$o={key:0,class:"KIcon","aria-hidden":"true"},So=["href"],Eo={class:"KFileTree-icon","aria-hidden":"true"},No={key:0,class:"KIcon","aria-hidden":"true"},Vo=["href"],To={class:"KFileTree-label"},Ao={key:0,class:"KFileTree-group",role:"group","data-kt-file-tree-group":""},Mo=e.defineComponent({__name:"KFileTreeNode",props:{caretIcon:{default:"#caretRight"},node:{},tabbable:{type:Boolean,default:!1}},setup(t){const s=e.useSlots(),l=e.computed(()=>t.node.id??t.node.label),a=e.computed(()=>Array.isArray(t.node.children)||!!t.node.lazy);return(n,i)=>{const r=e.resolveComponent("KFileTreeNode",!0);return e.openBlock(),e.createElementBlock("li",Bo,[e.createElementVNode("a",{class:"KFileTree-row",role:"treeitem",href:"#","data-kftree-id":l.value,tabindex:t.tabbable?0:-1,"aria-expanded":a.value?t.node.expanded===!0:void 0,"data-kt-file-tree-row":"","data-kt-file-tree-lazy":t.node.lazy?"":void 0},[e.createElementVNode("span",Ko,[a.value?(e.openBlock(),e.createElementBlock("svg",$o,[e.createElementVNode("use",{href:t.caretIcon},null,8,So)])):e.createCommentVNode("",!0)]),e.renderSlot(n.$slots,"label",{node:t.node},()=>[e.createElementVNode("span",Eo,[t.node.icon?(e.openBlock(),e.createElementBlock("svg",No,[e.createElementVNode("use",{href:t.node.icon},null,8,Vo)])):e.createCommentVNode("",!0)]),e.createElementVNode("span",To,e.toDisplayString(t.node.label),1)])],8,wo),t.node.children?(e.openBlock(),e.createElementBlock("ul",Ao,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.node.children,(c,g)=>(e.openBlock(),e.createBlock(r,{key:c.id??`${c.label}-${g}`,"caret-icon":t.caretIcon,node:c},e.createSlots({_:2},[s.label?{name:"label",fn:e.withCtx(f=>[e.renderSlot(n.$slots,"label",e.mergeProps({ref_for:!0},f))]),key:"0"}:void 0]),1032,["caret-icon","node"]))),128))])):e.createCommentVNode("",!0)])}}}),Do=["data-kt-file-tree-activation"],Q="data-kftree-id",zo="data-kt-file-tree-row",Xe=e.defineComponent({__name:"KFileTree",props:e.mergeModels({activation:{default:"row"},caretIcon:{default:"#caretRight"},nodes:{default:()=>[]}},{selected:{default:null},selectedModifiers:{},expanded:{default:()=>[]},expandedModifiers:{}}),emits:e.mergeModels(["collapse","expand","load","select"],["update:selected","update:expanded"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"selected"),n=e.useModel(t,"expanded"),i=l,r=e.useSlots(),c=e.useTemplateRef("root");let g,f=null,d=new Set;function u(){return!g&&c.value&&(g=new P.modules.FileTree(c.value,{activation:t.activation})),g}function w(p){return!p||p.closest("[data-kt-file-tree]")!==c.value?null:p.getAttribute(Q)}function V(p){return c.value?.querySelector(`[${Q}="${CSS.escape(p)}"]`)??null}function T(p){const b=w(p.target.closest(`[${Q}]`));b&&(f=b,a.value=b,i("select",b))}function M(p){const b=w(p.target.closest(`[${Q}]`));!b||d.has(b)||(d.add(b),n.value=[...n.value,b],i("expand",b))}function E(p){const b=w(p.target.closest(`[${Q}]`));!b||!d.has(b)||(d.delete(b),n.value=n.value.filter(I=>I!==b),i("collapse",b))}function B(p){const b=w(p.target.closest(`[${Q}]`));b&&i("load",b)}function y(p){const b=p?.closest(`[${zo}]`);return b&&b.closest("[data-kt-file-tree]")===c.value?b:null}function h(p){const b=y(p.target);b&&(p.stopPropagation(),u()?.handleRowClick(b,p.target)&&p.preventDefault())}function N(p){const b=y(p.target);b&&(p.stopPropagation(),u()?.handleRowKeydown(b,p)&&p.preventDefault())}const D=[["kt.filetree.select",T],["kt.filetree.expand",M],["kt.filetree.collapse",E],["kt.filetree.load",B]];return e.watch(c,(p,b,I)=>{if(g=void 0,!p)return;for(const[C,o]of D)p.addEventListener(C,o);const x=u();d=new Set(n.value);for(const C of n.value){const o=V(C);o&&!x?.isExpanded(o)&&x?.expand(o)}if(a.value){const C=V(a.value);C&&(f=a.value,x?.select(C))}I(()=>{for(const[C,o]of D)p.removeEventListener(C,o)})},{flush:"post",immediate:!0}),e.watch(a,p=>{if(p!==f&&(f=p,p)){const b=V(p);b&&u()?.select(b)}}),e.watch(n,p=>{const b=new Set(p),I=u();if(I){for(const x of b)if(!d.has(x)){const C=V(x);C&&I.expand(C)}for(const x of d)if(!b.has(x)){const C=V(x);C&&I.collapse(C)}d=b}},{deep:!0}),e.onBeforeUnmount(()=>{g=void 0}),s({collapseAll:()=>u()?.collapseAll(),expandAll:()=>u()?.expandAll()}),(p,b)=>(e.openBlock(),e.createElementBlock("ul",{ref_key:"root",ref:c,class:"KFileTree",role:"tree","data-kt-file-tree":"","data-kt-file-tree-activation":t.activation,onClick:h,onKeydown:N},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.nodes,(I,x)=>(e.openBlock(),e.createBlock(Mo,{key:I.id??`${I.label}-${x}`,"caret-icon":t.caretIcon,node:I,tabbable:x===0},e.createSlots({_:2},[r.label?{name:"label",fn:e.withCtx(C=>[e.renderSlot(p.$slots,"label",e.mergeProps({ref_for:!0},C))]),key:"0"}:void 0]),1032,["caret-icon","node","tabbable"]))),128))],40,Do))}});function _e(t,s){return s===void 0?[]:typeof s=="number"?[`is-${t}-${s}`]:Object.entries(s).map(([l,a])=>l==="base"?`is-${t}-${a}`:`is-${t}-${l}-${a}`)}function ve(t,s,l){return[t!==void 0&&`is-gap-${t}`,s!==void 0&&`is-row-gap-${s}`,l!==void 0&&`is-col-gap-${l}`]}const Io=12,et=e.defineComponent({__name:"KGrid",props:{gap:{},colGap:{},rowGap:{},align:{},cols:{},justify:{},rows:{}},setup(t){const s=e.computed(()=>t.cols!==void 0&&t.cols>=1&&t.cols<=Io),l=e.computed(()=>["KGrid",s.value&&`is-cols-${t.cols}`,...ve(t.gap,t.rowGap,t.colGap),t.align&&`is-align-${t.align}`,t.justify&&`is-justify-${t.justify}`]),a=e.computed(()=>{const n={};return t.cols!==void 0&&!s.value&&(n["--kt-grid-columns"]=String(Math.max(1,Math.floor(t.cols)))),t.rows!==void 0&&(n["--kt-grid-rows"]=String(t.rows)),Object.keys(n).length?n:void 0});return(n,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value),style:e.normalizeStyle(a.value)},[e.renderSlot(n.$slots,"default")],6))}}),tt=e.defineComponent({__name:"KGridColumn",props:{alignSelf:{},justifySelf:{},row:{},start:{},span:{}},setup(t){const s=e.computed(()=>["KGrid-column",..._e("column",t.span),..._e("start",t.start),t.row!==void 0&&`is-row-${t.row}`,t.alignSelf&&`is-align-self-${t.alignSelf}`,t.justifySelf&&`is-justify-self-${t.justifySelf}`]);return(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.renderSlot(l.$slots,"default")],2))}}),at=e.defineComponent({__name:"KGridRow",props:{gap:{},colGap:{},rowGap:{}},setup(t){const s=e.computed(()=>["KGrid-row",...ve(t.gap,t.rowGap,t.colGap)]);return(l,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(s.value)},[e.renderSlot(l.$slots,"default")],2))}}),Lo=["aria-label"],xo={class:"KMenuList"},Ro={key:1,class:"KMenuList"},ot=e.defineComponent({__name:"KMenuList",props:{ariaLabel:{}},setup(t){return(s,l)=>t.ariaLabel?(e.openBlock(),e.createElementBlock("nav",{key:0,"aria-label":t.ariaLabel},[e.createElementVNode("ul",xo,[e.renderSlot(s.$slots,"default")])],8,Lo)):(e.openBlock(),e.createElementBlock("ul",Ro,[e.renderSlot(s.$slots,"default")]))}}),Oo={class:"KMenuList-item"},nt=e.defineComponent({__name:"KMenuListItem",props:{active:{type:Boolean,default:()=>{}},disabled:{type:Boolean,default:!1},href:{},to:{}},setup(t){const s=v.useLink({to:e.computed(()=>t.to??"/")}),l=e.computed(()=>t.to||t.href?"a":"button"),a=e.computed(()=>t.to?s.href.value:t.href),n=e.computed(()=>t.active??(t.to?s.isActive.value:!1)),i=e.computed(()=>["KMenuList-link",n.value&&"is-active",t.disabled&&l.value==="a"&&"is-disabled"]);function r(c){if(t.disabled){c.preventDefault();return}t.to&&(c.preventDefault(),s.navigate(c))}return(c,g)=>(e.openBlock(),e.createElementBlock("li",Oo,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(l.value),{class:e.normalizeClass(i.value),href:l.value==="a"?a.value:void 0,type:l.value==="button"?"button":void 0,disabled:l.value==="button"?t.disabled:void 0,"aria-disabled":l.value==="a"&&t.disabled?"true":void 0,"aria-current":n.value?"page":void 0,onClick:r},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},8,["class","href","type","disabled","aria-disabled","aria-current"]))]))}}),Po=["data-kt-modal-id","data-kt-modal-static-backdrop"],jo=["aria-label","aria-labelledby"],Uo=["id"],Fo="data-kt-modal-dismiss",Wo="data-kt-modal-dialog",lt=e.defineComponent({__name:"KModal",props:e.mergeModels({bodyClass:{type:[Boolean,null,String,Object,Array]},centered:{type:Boolean,default:!1},closable:{type:Boolean,default:!0},containerClass:{type:[Boolean,null,String,Object,Array]},dialogClass:{type:[Boolean,null,String,Object,Array]},dialogLabel:{},focus:{type:Boolean,default:!0},footerClass:{type:[Boolean,null,String,Object,Array]},fullscreen:{type:Boolean,default:!1},headerClass:{type:[Boolean,null,String,Object,Array]},id:{},keyboard:{type:Boolean,default:!0},mainClass:{type:[Boolean,null,String,Object,Array]},scrollable:{type:Boolean,default:!1},sidebarClass:{type:[Boolean,null,String,Object,Array]},size:{},staticBackdrop:{type:Boolean,default:!1},title:{},teleport:{type:Boolean,default:!0}},{open:{type:Boolean,default:!1},openModifiers:{}}),emits:e.mergeModels(["hide","hidden","show","shown"],["update:open"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"open"),n=l,i=e.useSlots(),r=e.useTemplateRef("root");let c,g=!1;const f=e.useId(),d=e.computed(()=>t.id??f),u=e.computed(()=>`${d.value}-title`),w=e.computed(()=>!!(t.title||i.title)),V=e.computed(()=>!!(i.header||w.value||t.closable)),T=e.computed(()=>["KModal",t.centered&&"KModal--centered",t.scrollable&&"KModal--scrollable",t.size&&`KModal--${t.size}`,t.fullscreen&&"KModal--fullscreen"]);function M(){return!c&&r.value&&(c=new P.modules.Modal(r.value,{focus:t.focus,keyboard:t.keyboard,staticBackdrop:t.staticBackdrop})),c}e.watch(()=>[t.focus,t.keyboard,t.staticBackdrop],()=>{c=void 0}),e.watch(a,b=>{if(b===g)return;const I=M();I&&(g=b,b?I.show():I.hide())},{flush:"post"});const E=b=>b.target===r.value,B={"kt.modal.show":b=>{E(b)&&(g=!0,a.value=!0,n("show"))},"kt.modal.shown":b=>{E(b)&&n("shown")},"kt.modal.hide":b=>{E(b)&&(g=!1,a.value=!1,n("hide"))},"kt.modal.hidden":b=>{E(b)&&n("hidden")}};e.watch(r,(b,I,x)=>{if(c=void 0,!!b){for(const[C,o]of Object.entries(B))b.addEventListener(C,o);b.setAttribute("aria-hidden","true"),a.value&&M()?.show(),x(()=>{for(const[C,o]of Object.entries(B))b.removeEventListener(C,o)})}},{flush:"post",immediate:!0});const y=Je("modal",a);G(a,"keydown",b=>{b.key!=="Escape"||!y()||(b.stopPropagation(),t.keyboard&&D())},{capture:!0});function h(b){const I=b.target;if(!I)return;if(I.closest(`[${Fo}]`)){b.stopPropagation(),D();return}if(t.staticBackdrop)return;const x=r.value?.querySelector(`[${Wo}]`);x&&!x.contains(I)&&(b.stopPropagation(),D())}e.onBeforeUnmount(()=>{r.value?.classList.contains("is-active")&&document.body.classList.remove("is-modal-active")});function N(){a.value=!0}function D(){a.value=!1}function p(){a.value=!a.value}return s({show:N,hide:D,toggle:p}),(b,I)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body",disabled:!t.teleport},[e.createElementVNode("div",{ref_key:"root",ref:r,class:e.normalizeClass(T.value),"data-kt-modal-id":d.value,"data-kt-modal-static-backdrop":t.staticBackdrop?"true":"false","data-kt-modal":"",tabindex:"-1",onClick:h},[e.createElementVNode("div",{class:e.normalizeClass(["KModal-container",t.containerClass])},[e.createElementVNode("div",{class:e.normalizeClass(["KModal-dialog",t.dialogClass]),"aria-label":t.dialogLabel,"aria-labelledby":!t.dialogLabel&&w.value?u.value:void 0,"data-kt-modal-dialog":"",role:"dialog"},[V.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KModal-header",t.headerClass])},[e.renderSlot(b.$slots,"header",{},()=>[w.value?(e.openBlock(),e.createElementBlock("h5",{key:0,id:u.value,class:"KModal-title"},[e.renderSlot(b.$slots,"title",{},()=>[e.createTextVNode(e.toDisplayString(t.title),1)])],8,Uo)):e.createCommentVNode("",!0),t.closable?(e.openBlock(),e.createElementBlock("button",{key:1,class:"KModal-close",type:"button","aria-label":"Close",onClick:e.withModifiers(D,["stop"])},[e.renderSlot(b.$slots,"close",{},()=>[I[0]||(I[0]=e.createTextVNode("✕",-1))])])):e.createCommentVNode("",!0)])],2)):e.createCommentVNode("",!0),i.sidebar?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["KModal-main",t.mainClass])},[e.createElementVNode("aside",{class:e.normalizeClass(["KModal-sidebar",t.sidebarClass])},[e.renderSlot(b.$slots,"sidebar")],2),e.createElementVNode("div",{class:e.normalizeClass(["KModal-body",t.bodyClass])},[e.renderSlot(b.$slots,"default")],2)],2)):(e.openBlock(),e.createElementBlock("div",{key:2,class:e.normalizeClass(["KModal-body",t.bodyClass])},[e.renderSlot(b.$slots,"default")],2)),i.footer?(e.openBlock(),e.createElementBlock("div",{key:3,class:e.normalizeClass(["KModal-footer",t.footerClass])},[e.renderSlot(b.$slots,"footer")],2)):e.createCommentVNode("",!0)],10,jo)],2)],10,Po)],8,["disabled"]))}}),Go={class:"KNavbar-menu"},Ho=["href","onClick"],qo={key:0,class:e.normalizeClass(["KNavbar-caret","KCollapse-toggle"]),"data-kt-collapse-toggle":""},Ee=e.defineComponent({__name:"KNavbarMenu",props:{items:{default:()=>[]}},setup(t){const s=e.computed(()=>t.items.filter(({hidden:l})=>!l));return(l,a)=>{const n=e.resolveComponent("KNavbarMenu",!0);return e.openBlock(),e.createElementBlock("ul",Go,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,(i,r)=>e.renderSlot(l.$slots,"item",{key:`navbar-menu-item-${r}`,item:i},()=>[e.createVNode(e.unref(v.RouterLink),{to:i.route??"/",custom:""},{default:e.withCtx(({isActive:c,href:g,navigate:f})=>[e.createElementVNode("li",{class:e.normalizeClass(["KNavbar-item","KCollapse is-collapsed",c&&"KNavbar-item-is-active"]),"data-kt-collapse":""},[e.createElementVNode("a",{class:e.normalizeClass(["KNavbar-link"]),href:i.route?g:void 0,onClick:e.withModifiers(d=>i.route?f():i.onClick?.(),["prevent"])},[e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-icon",i.iconClass])},[e.createVNode(H,{href:i.icon},null,8,["href"])],2),i.badge?(e.openBlock(),e.createBlock(q,{key:0,class:e.normalizeClass(["KNavbar-badge",i.badgeClass]),pill:"",size:"sm",variant:"danger"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(i.badge),1)]),_:2},1032,["class"])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["KNavbar-text",i.textClass])},e.toDisplayString(i.text),3)],8,Ho),i.children?(e.openBlock(),e.createElementBlock("span",qo,[e.createVNode(H,{href:"#caretUp"})])):e.createCommentVNode("",!0),i.children?(e.openBlock(),e.createBlock(n,{key:1,items:i.children,class:"KCollapse-content","data-kt-collapse-content":""},null,8,["items"])):e.createCommentVNode("",!0)],2)]),_:2},1032,["to"])])),128))])}}}),st=e.defineComponent({__name:"KNavbar",props:e.mergeModels({items:{},bodyClass:{type:[Boolean,null,String,Object,Array]},brandClass:{type:[Boolean,null,String,Object,Array]},fixed:{type:Boolean,default:!1},footerClass:{type:[Boolean,null,String,Object,Array]},hideToggle:{type:Boolean},innerClass:{type:[Boolean,null,String,Object,Array]},toggleClass:{type:[Boolean,null,String,Object,Array]}},{expanded:{type:Boolean,default:!1},expandedModifiers:{}}),emits:e.mergeModels(["toggle"],["update:expanded"]),setup(t,{emit:s}){const l=e.useModel(t,"expanded"),a=s,n=e.useSlots(),i=()=>{l.value=!l.value,a("toggle",l.value)};return(r,c)=>(e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["KNavbar",l.value&&"KNavbar-is-expanded",t.fixed&&"KNavbar-is-fixed"])},[e.createElementVNode("div",{class:e.normalizeClass(["KNavbar-inner",t.innerClass])},[n.brand?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KNavbar-brand",t.brandClass])},[e.renderSlot(r.$slots,"brand")],2)):e.createCommentVNode("",!0),e.createElementVNode("nav",{class:e.normalizeClass(["KNavbar-body",t.bodyClass])},[e.renderSlot(r.$slots,"default",{},()=>[e.createVNode(Ee,{items:t.items},null,8,["items"])])],2),n.footer?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["KNavbar-footer",t.footerClass])},[e.renderSlot(r.$slots,"footer")],2)):e.createCommentVNode("",!0)],2),t.hideToggle?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:e.normalizeClass(["KNavbar-toggle",t.toggleClass]),onClick:i},[e.createVNode(H,{href:"#caretLeft"})],2))],2))}}),Qo=["aria-label"],rt=e.defineComponent({__name:"KNotificationList",props:{ariaLabel:{}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("ul",{class:"KNotificationList","aria-label":t.ariaLabel},[e.renderSlot(s.$slots,"default")],8,Qo))}}),Zo={key:0,class:"KNotificationList-media"},Jo={class:"KNotificationList-content"},Yo={key:1,class:"KNotificationList-time"},Xo={key:2,class:"KNotificationList-actions"},it=e.defineComponent({__name:"KNotificationListItem",props:{hovered:{type:Boolean,default:!1},time:{},unread:{type:Boolean,default:!1},unreadLabel:{}},setup(t){const s=e.useSlots(),l=e.computed(()=>["KNotificationList-item",t.unread&&"is-active",t.hovered&&"is-hovered"]),a={position:"absolute",width:"1px",height:"1px",overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(50%)",whiteSpace:"nowrap"},n=e.computed(()=>!!(s.time||t.time));return(i,r)=>(e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(l.value)},[s.media?(e.openBlock(),e.createElementBlock("div",Zo,[e.renderSlot(i.$slots,"media")])):e.createCommentVNode("",!0),e.createElementVNode("div",Jo,[t.unread&&t.unreadLabel?(e.openBlock(),e.createElementBlock("span",{key:0,style:a},e.toDisplayString(t.unreadLabel),1)):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"default")]),n.value?(e.openBlock(),e.createElementBlock("div",Yo,[e.renderSlot(i.$slots,"time",{},()=>[e.createTextVNode(e.toDisplayString(t.time),1)])])):e.createCommentVNode("",!0),s.actions?(e.openBlock(),e.createElementBlock("div",Xo,[e.renderSlot(i.$slots,"actions")])):e.createCommentVNode("",!0)],2))}}),_o=["aria-valuenow","aria-valuemax"],vo=["viewBox"],en={key:1,class:"KProgress-fill"},tn={class:"KProgress-label"},ct=e.defineComponent({__name:"KProgress",props:{label:{},max:{default:100},rounded:{type:Boolean,default:!1},shape:{default:"linear"},size:{},value:{default:0}},setup(t){const s=e.computed(()=>t.shape==="circular"||t.shape==="semiCircular"),l=e.computed(()=>!Number.isFinite(t.max)||t.max<=0?0:Math.min(100,Math.max(0,t.value/t.max*100))),a=e.computed(()=>t.label??`${Math.round(l.value)}%`),n=e.computed(()=>["KProgress",t.shape!=="linear"&&`KProgress--${t.shape}`,t.rounded&&"KProgress--rounded",t.size&&t.size!=="md"&&`KProgress--${t.size}`]),i=e.computed(()=>t.shape==="semiCircular"?"0 0 36 20":"0 0 36 36");return(r,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value),style:e.normalizeStyle({"--kt-progress-value":l.value}),"aria-valuenow":t.value,"aria-valuemin":0,"aria-valuemax":t.max,role:"progressbar"},[s.value?(e.openBlock(),e.createElementBlock("svg",{key:0,class:"KProgress-svg",viewBox:i.value,fill:"none",xmlns:"http://www.w3.org/2000/svg"},[...c[0]||(c[0]=[e.createElementVNode("circle",{class:"KProgress-track",cx:"18",cy:"18",r:"15.9"},null,-1),e.createElementVNode("circle",{class:"KProgress-fill",cx:"18",cy:"18",r:"15.9"},null,-1)])],8,vo)):(e.openBlock(),e.createElementBlock("div",en)),e.createElementVNode("span",tn,[e.renderSlot(r.$slots,"label",{},()=>[e.createTextVNode(e.toDisplayString(a.value),1)])])],14,_o))}}),an=["checked","disabled","name"],on={key:0,class:"KRadio-label"},dt=e.defineComponent({inheritAttrs:!1,__name:"KRadio",props:e.mergeModels({disabled:{type:Boolean,default:!1},label:{},name:{},value:{}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const s=e.useModel(t,"modelValue"),l=e.useSlots(),a=e.useAttrs(),n=e.computed(()=>s.value===t.value),i=e.computed(()=>["KRadio",t.disabled&&"KRadio--disabled"]),r=e.computed(()=>{const{class:g,style:f,...d}=a;return d});function c(){s.value=t.value}return(g,f)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([i.value,e.unref(a).class]),style:e.normalizeStyle(e.unref(a).style)},[e.createElementVNode("input",e.mergeProps({class:"KRadio-input",type:"radio"},r.value,{checked:n.value,disabled:t.disabled,name:t.name,onChange:c}),null,16,an),f[0]||(f[0]=e.createElementVNode("span",{class:"KRadio-box"},null,-1)),l.default||t.label?(e.openBlock(),e.createElementBlock("span",on,[e.renderSlot(g.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])])):e.createCommentVNode("",!0)],6))}}),nn=["disabled"],ln={class:"KSelect-caret KIcon","aria-hidden":"true"},sn=["href"],rn=["data-kt-select-value"],cn="data-kt-select-item",mt=e.defineComponent({__name:"KSelect",props:e.mergeModels({disabled:{type:Boolean,default:!1},icon:{default:"#caretDown"},inline:{type:Boolean,default:!1},menuClass:{type:[Boolean,null,String,Object,Array]},options:{default:()=>[]},placeholder:{default:"Select an option"},toggleClass:{type:[Boolean,null,String,Object,Array]}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["change"],["update:modelValue"]),setup(t,{emit:s}){const l=e.useModel(t,"modelValue"),a=s,n=e.useTemplateRef("root");let i,r;const c=e.computed(()=>t.options.map(B=>typeof B=="string"?{label:B,value:B}:B)),g=e.computed(()=>c.value.find(B=>B.value===l.value)?.label);function f(){return!i&&n.value&&(i=new P.modules.Select(n.value)),i}function d(B){const y=n.value;if(!y||B===void 0)return;const h=y.querySelector(`[data-kt-select-item][data-kt-select-value="${CSS.escape(B)}"]`);h&&(r=B,f()?.selectItem(h))}function u(B){B.target===n.value&&(T.value=!0)}function w(B){B.target===n.value&&(T.value=!1)}function V(B){if(B.target!==n.value)return;const y=f()?.getValue()??void 0;y!==void 0&&(r=y,l.value=y,a("change",y))}const T=e.ref(!1);Pe("dropdown",T,()=>f()?.hide());function M(){f()?.toggle()}G(T,"click",B=>{const y=B.target;if(!y)return;const h=f(),N=h?.getMenu(),D=y.closest(`[${cn}]`);if(D&&N?.contains(D)){h?.selectItem(D),h?.hide();return}n.value?.contains(y)||N?.contains(y)||h?.hide()}),e.watch(l,B=>{B!==r&&d(B)},{flush:"post"}),e.watch(n,(B,y,h)=>{i=void 0,B&&(B.addEventListener("kt.select.change",V),B.addEventListener("kt.shown",u),B.addEventListener("kt.hidden",w),l.value!==void 0&&d(l.value),h(()=>{B.removeEventListener("kt.select.change",V),B.removeEventListener("kt.shown",u),B.removeEventListener("kt.hidden",w)}))},{flush:"post",immediate:!0});const E=e.computed(()=>["KSelect",t.inline&&"KSelect--inline",t.disabled&&"KSelect--disabled",t.disabled&&"is-disabled"]);return(B,y)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:n,class:e.normalizeClass(E.value),"data-kt-select":""},[e.createElementVNode("button",{class:e.normalizeClass(["KSelect-toggle",t.toggleClass]),type:"button","data-kt-select-toggle":"",disabled:t.disabled,onClick:e.withModifiers(M,["stop"])},[e.createElementVNode("span",{class:e.normalizeClass(["KSelect-label",!g.value&&"is-placeholder"]),"data-kt-select-label":""},e.toDisplayString(g.value??t.placeholder),3),(e.openBlock(),e.createElementBlock("svg",ln,[e.createElementVNode("use",{href:t.icon},null,8,sn)]))],10,nn),e.createElementVNode("div",{class:e.normalizeClass(["KSelect-menu",t.menuClass]),"data-kt-select-menu":""},[e.renderSlot(B.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,h=>(e.openBlock(),e.createElementBlock("div",{key:h.value,class:"KSelect-item","data-kt-select-item":"","data-kt-select-value":h.value},e.toDisplayString(h.label),9,rn))),128))])],2)],2))}}),dn=["aria-hidden","aria-label","role"],ft=e.defineComponent({__name:"KSpinner",props:{decorative:{type:Boolean},label:{default:"Loading"},size:{},variant:{}},setup(t){return(s,l)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["KSpinner",t.size&&t.size!=="md"&&`KSpinner--${t.size}`,t.variant&&`KSpinner--${t.variant}`]),"aria-hidden":t.decorative?"true":void 0,"aria-label":t.decorative?void 0:t.label,role:t.decorative?void 0:"status"},null,10,dn))}}),re=Symbol("KTabs"),mn=["data-ktab-name","data-kt-tabs-tab","data-kt-tabs-target","aria-controls","disabled"],ut=e.defineComponent({__name:"KTab",props:{disabled:{type:Boolean,default:!1},name:{}},setup(t){const s=e.inject(re,void 0),l=e.computed(()=>s?.panelId(t.name));return(a,n)=>(e.openBlock(),e.createElementBlock("button",{class:"KTabs-tab",type:"button",role:"tab","data-ktab-name":t.name,"data-kt-tabs-tab":t.disabled?void 0:"","data-kt-tabs-target":l.value,"aria-controls":l.value,disabled:t.disabled},[e.renderSlot(a.$slots,"default")],8,mn))}}),ht=e.defineComponent({__name:"KTable",props:{borderless:{type:Boolean,default:!1},hoverable:{type:Boolean,default:!1},size:{},striped:{type:Boolean,default:!1}},setup(t){const s=e.computed(()=>["KTable",t.borderless&&"KTable--borderless",t.hoverable&&"KTable--hoverable",t.striped&&"KTable--striped",t.size&&t.size!=="md"&&`KTable--${t.size}`]);return(l,a)=>(e.openBlock(),e.createElementBlock("table",{class:e.normalizeClass(s.value)},[e.renderSlot(l.$slots,"default")],2))}}),fn=["id"],kt=e.defineComponent({__name:"KTabPanel",props:{name:{}},setup(t){const s=e.inject(re,void 0),l=e.computed(()=>s?.panelId(t.name));return(a,n)=>(e.openBlock(),e.createElementBlock("div",{id:l.value,class:"KTabs-panel",role:"tabpanel","data-kt-tabs-panel":""},[e.renderSlot(a.$slots,"default")],8,fn))}}),un=["aria-label"],hn={class:"KTabs-content"},Z="data-ktab-name",gt=e.defineComponent({__name:"KTabs",props:e.mergeModels({ariaLabel:{default:"Tabs"},variant:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["shown"],["update:modelValue"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"modelValue"),n=l,i=e.useId(),r=e.useTemplateRef("root");let c;const g=y=>`${i}-${y.replace(/[^A-Za-z0-9_]/g,h=>`-${h.charCodeAt(0).toString(16)}-`)}`;e.provide(re,{active:e.computed(()=>a.value),panelId:g});const f=`[${Z}][data-kt-tabs-tab]`;function d(y){return r.value?.querySelector(`[${Z}="${CSS.escape(y)}"][data-kt-tabs-tab]`)??null}function u(y){const h=d(y);h&&(c=y,new P.modules.Tabs(h).show(h))}function w(y){if(y.target!==r.value)return;const N=r.value?.querySelector(`[${Z}].is-active`)?.getAttribute(Z)??void 0;N&&(c=N,a.value=N,n("shown",N))}function V(y){const h=y?.closest("[data-kt-tabs-tab]");return h&&h.closest("[data-kt-tabs]")===r.value?h:null}function T(){const y=r.value?.querySelectorAll(f)??[];return Array.from(y).filter(h=>h.closest("[data-kt-tabs]")===r.value)}function M(y){const h=y.getAttribute(Z);h&&(a.value=h)}function E(y){const h=V(y.target);h&&(y.stopPropagation(),y.preventDefault(),M(h))}function B(y){const h=V(y.target);if(!h)return;const N=T(),D=N.indexOf(h);let p;switch(y.key){case"ArrowRight":p=N[(D+1)%N.length];break;case"ArrowLeft":p=N[(D-1+N.length)%N.length];break;case"Home":p=N[0];break;case"End":p=N[N.length-1];break;case"Enter":case" ":y.stopPropagation(),y.preventDefault(),M(h);return;default:return}p?.focus(),y.stopPropagation(),y.preventDefault()}return e.watch(a,y=>{!y||y===c||u(y)},{flush:"post"}),e.watch(r,(y,h,N)=>{if(!y)return;y.addEventListener("kt.tabs.shown",w);const D=a.value??y.querySelector(f)?.getAttribute(Z)??void 0;D&&(a.value=D,u(D)),N(()=>y.removeEventListener("kt.tabs.shown",w))},{flush:"post",immediate:!0}),s({show:y=>a.value=y}),(y,h)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:r,"data-kt-tabs":"",onClick:E,onKeydown:B},[e.createElementVNode("div",{class:e.normalizeClass(["KTabs",t.variant&&`KTabs--${t.variant}`]),role:"tablist","aria-label":t.ariaLabel},[e.renderSlot(y.$slots,"tabs")],10,un),e.createElementVNode("div",hn,[e.renderSlot(y.$slots,"default")])],544))}}),kn=["disabled"],gn={key:0,class:"KToggle-label"},bt=e.defineComponent({inheritAttrs:!1,__name:"KToggle",props:e.mergeModels({disabled:{type:Boolean,default:!1},label:{}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const s=e.useModel(t,"modelValue"),l=e.useSlots(),a=e.useAttrs(),n=e.computed(()=>["KToggle",t.disabled&&"KToggle--disabled"]),i=e.computed(()=>{const{class:r,style:c,...g}=a;return g});return(r,c)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass([n.value,e.unref(a).class]),style:e.normalizeStyle(e.unref(a).style)},[e.withDirectives(e.createElementVNode("input",e.mergeProps({"onUpdate:modelValue":c[0]||(c[0]=g=>s.value=g),class:"KToggle-input",type:"checkbox"},i.value,{disabled:t.disabled}),null,16,kn),[[e.vModelCheckbox,s.value]]),c[1]||(c[1]=e.createElementVNode("span",{class:"KToggle-track"},[e.createElementVNode("span",{class:"KToggle-thumb"})],-1)),l.default||t.label?(e.openBlock(),e.createElementBlock("span",gn,[e.renderSlot(r.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.label),1)])])):e.createCommentVNode("",!0)],6))}}),bn=["data-kt-collapse-horizontal"],pn=["data-kt-collapse-content"],pt=e.defineComponent({__name:"KWorkspace",props:e.mergeModels({bodyClass:{type:[Boolean,null,String,Object,Array]},bodyContentClass:{type:[Boolean,null,String,Object,Array]},bodySidebarClass:{type:[Boolean,null,String,Object,Array]},bodySidebarSide:{default:"left"},collapsible:{type:Boolean,default:!1},footerClass:{type:[Boolean,null,String,Object,Array]},height:{},mainClass:{type:[Boolean,null,String,Object,Array]},side:{default:"left"},sidebarBodyClass:{type:[Boolean,null,String,Object,Array]},sidebarClass:{type:[Boolean,null,String,Object,Array]},sidebarInnerClass:{type:[Boolean,null,String,Object,Array]},topbarClass:{type:[Boolean,null,String,Object,Array]}},{expanded:{type:Boolean,default:!0},expandedModifiers:{}}),emits:e.mergeModels(["toggle"],["update:expanded"]),setup(t,{expose:s,emit:l}){const a=e.useModel(t,"expanded"),n=l,i=e.useSlots(),r=e.useTemplateRef("sidebar");let c;const g=["is-active","is-collapsed","is-collapsing","is-expanded","is-expanding"],f=e.computed(()=>!!(i.sidebar||i.sidebarHeader||i.sidebarFooter)),d=e.computed(()=>t.height?{"--kt-workspace-height":t.height}:void 0);function u(){return!c&&r.value&&(c=new P.modules.Collapse(r.value,{horizontal:!0,direction:t.side==="right"?"left":"right"})),c}function w(){const E=r.value;E&&(E.classList.remove(...g),a.value?E.classList.add("is-active","is-expanded"):E.classList.add("is-collapsed"))}e.watch(r,()=>{c=void 0,t.collapsible&&w()},{flush:"post",immediate:!0}),e.watch(()=>t.collapsible,E=>{c=void 0,E?w():r.value?.classList.remove(...g)},{flush:"post"}),e.watch(()=>a.value,E=>{if(!t.collapsible)return;const B=u();B&&(E?B.expand():B.collapse())});function V(){a.value=!a.value,n("toggle",a.value)}function T(){a.value||V()}function M(){a.value&&V()}return s({toggle:V,expand:T,collapse:M}),(E,B)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["KWorkspace",t.side==="right"&&"is-side-right"]),style:e.normalizeStyle(d.value)},[f.value?(e.openBlock(),e.createElementBlock("aside",{key:0,ref_key:"sidebar",ref:r,class:e.normalizeClass(["KWorkspace-sidebar",t.collapsible&&"KCollapse",t.sidebarClass]),"data-kt-collapse-horizontal":t.collapsible?t.side==="right"?"left":"true":void 0},[e.createElementVNode("div",{class:e.normalizeClass(["KWorkspace-sidebarInner",t.collapsible&&"KCollapse-content",t.sidebarInnerClass]),"data-kt-collapse-content":t.collapsible?"":void 0},[e.renderSlot(E.$slots,"sidebarHeader"),i.sidebar?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["KWorkspace-sidebarBody",t.sidebarBodyClass])},[e.renderSlot(E.$slots,"sidebar")],2)):e.createCommentVNode("",!0),e.renderSlot(E.$slots,"sidebarFooter")],10,pn)],10,bn)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["KWorkspace-main",t.mainClass])},[i.topbar?(e.openBlock(),e.createElementBlock("header",{key:0,class:e.normalizeClass(["KWorkspace-topbar",t.topbarClass])},[e.renderSlot(E.$slots,"topbar")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["KWorkspace-body",t.bodySidebarSide==="right"&&"is-side-right",t.bodyClass])},[i.bodySidebar?(e.openBlock(),e.createElementBlock("aside",{key:0,class:e.normalizeClass(["KWorkspace-bodySidebar",t.bodySidebarClass])},[e.renderSlot(E.$slots,"bodySidebar")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["KWorkspace-bodyContent",t.bodyContentClass])},[e.renderSlot(E.$slots,"default")],2)],2),i.footer?(e.openBlock(),e.createElementBlock("footer",{key:1,class:e.normalizeClass(["KWorkspace-footer",t.footerClass])},[e.renderSlot(E.$slots,"footer")],2)):e.createCommentVNode("",!0)],2)],6))}});function yt(t={}){return{closeAll(s){P.modules.Toast.prototype.closeAll.call(P.modules.Toast.prototype,s)},show(s){const l=new P.modules.Toast({...t,...s});return{close:()=>l.close(),pause:()=>l.pauseTimer(),resume:()=>l.resumeTimer()}}}}const Ct=Object.freeze(Object.defineProperty({__proto__:null,KAccordion:Ae,KAccordionItem:De,KAlert:ze,KAvatar:U,KAvatarGroup:de,KBadge:q,KBreadcrumb:Ie,KBreadcrumbItem:Le,KButton:W,KCalendar:Re,KCard:Oe,KChat:me,KChatDivider:ge,KChatDock:ue,KChatDockItem:he,KChatDockPanel:ke,KChatMessage:be,KChatMessageActions:He,KChatMessages:le,KChatNotice:pe,KChatPrompt:Ce,KChatShimmer:se,KChatWindow:we,KCheckbox:qe,KCollapse:Qe,KContainer:Ze,KDrawer:Ye,KDropdown:Ke,KDropdownItem:$e,KDropdownMenu:Se,KFileTree:Xe,KGrid:et,KGridColumn:tt,KGridRow:at,KIcon:H,KInput:ye,KMenuList:ot,KMenuListItem:nt,KMessenger:Ge,KModal:lt,KNavbar:st,KNavbarMenu:Ee,KNotificationList:rt,KNotificationListItem:it,KPopover:fe,KProgress:ct,KRadio:dt,KSelect:mt,KSpinner:ft,KTab:ut,KTabPanel:kt,KTable:ht,KTabs:gt,KToggle:bt,KTooltip:Be,KWorkspace:pt,accordionGroupKey:ee,chatBusyKey:te,chatDockKey:J,chatDockStoreKey:ae,injectChatDock:Ne,provideChatDock:ie,useChatDock:ce,useToast:yt},Symbol.toStringTag,{value:"Module"})),yn=t=>/^K[A-Z]/.test(t),Cn={install(t){for(const s in Ct)yn(s)&&t.component(s,Ct[s])}};$.KAccordion=Ae,$.KAccordionItem=De,$.KAlert=ze,$.KAvatar=U,$.KAvatarGroup=de,$.KBadge=q,$.KBreadcrumb=Ie,$.KBreadcrumbItem=Le,$.KButton=W,$.KCalendar=Re,$.KCard=Oe,$.KChat=me,$.KChatDivider=ge,$.KChatDock=ue,$.KChatDockItem=he,$.KChatDockPanel=ke,$.KChatMessage=be,$.KChatMessageActions=He,$.KChatMessages=le,$.KChatNotice=pe,$.KChatPrompt=Ce,$.KChatShimmer=se,$.KChatWindow=we,$.KCheckbox=qe,$.KCollapse=Qe,$.KContainer=Ze,$.KDrawer=Ye,$.KDropdown=Ke,$.KDropdownItem=$e,$.KDropdownMenu=Se,$.KFileTree=Xe,$.KGrid=et,$.KGridColumn=tt,$.KGridRow=at,$.KIcon=H,$.KInput=ye,$.KMenuList=ot,$.KMenuListItem=nt,$.KMessenger=Ge,$.KModal=lt,$.KNavbar=st,$.KNavbarMenu=Ee,$.KNotificationList=rt,$.KNotificationListItem=it,$.KPopover=fe,$.KProgress=ct,$.KRadio=dt,$.KSelect=mt,$.KSpinner=ft,$.KTab=ut,$.KTabPanel=kt,$.KTable=ht,$.KTabs=gt,$.KToggle=bt,$.KTooltip=Be,$.KWorkspace=pt,$.accordionGroupKey=ee,$.chatBusyKey=te,$.chatDockKey=J,$.chatDockStoreKey=ae,$.default=Cn,$.injectChatDock=Ne,$.provideChatDock=ie,$.tabsKey=re,$.useChatDock=ce,$.useToast=yt,Object.defineProperties($,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
@@ -0,0 +1,11 @@
1
+ import type { KAccordionProps, KAccordionSlots } from './types';
2
+ type __VLS_Slots = KAccordionSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KAccordionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KAccordionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ type __VLS_WithSlots<T, S> = T & {
8
+ new (): {
9
+ $slots: S;
10
+ };
11
+ };
@@ -0,0 +1,22 @@
1
+ import type { KAccordionItemProps, KAccordionItemSlots } from './types';
2
+ type __VLS_Props = KAccordionItemProps;
3
+ type __VLS_Slots = KAccordionItemSlots;
4
+ type __VLS_ModelProps = {
5
+ 'expanded'?: boolean;
6
+ };
7
+ type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
8
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
9
+ toggle: () => void;
10
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
11
+ "update:expanded": (value: boolean) => any;
12
+ }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
13
+ "onUpdate:expanded"?: ((value: boolean) => any) | undefined;
14
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
16
+ declare const _default: typeof __VLS_export;
17
+ export default _default;
18
+ type __VLS_WithSlots<T, S> = T & {
19
+ new (): {
20
+ $slots: S;
21
+ };
22
+ };
@@ -0,0 +1,2 @@
1
+ import type { ComputedRef, InjectionKey } from 'vue';
2
+ export declare const accordionGroupKey: InjectionKey<ComputedRef<string | undefined>>;
@@ -0,0 +1,37 @@
1
+ export type KAccordionProps = {
2
+ /**
3
+ * One pane open at a time. The group name is generated, so two accordions
4
+ * both marked exclusive never interfere with each other.
5
+ *
6
+ * Prefer this to `group` unless panes in *different* accordions need to close
7
+ * one another.
8
+ */
9
+ exclusive?: boolean;
10
+ /**
11
+ * Explicit shared name, for making panes across separate accordions mutually
12
+ * exclusive. Core resolves it with a document-wide query, so the name is
13
+ * page-global — anything else carrying it will be collapsed too. `exclusive`
14
+ * avoids that; reach for this only when the cross-instance behaviour is what
15
+ * you want.
16
+ *
17
+ * Takes precedence over `exclusive`. With neither, every pane is independent.
18
+ */
19
+ group?: string;
20
+ /** Drops the item dividers. */
21
+ ghost?: boolean;
22
+ };
23
+ export type KAccordionItemProps = {
24
+ /** Open on first render. */
25
+ expanded?: boolean;
26
+ /** Sprite href for the chevron. */
27
+ icon?: string;
28
+ /** Heading text. The `title` slot overrides it. */
29
+ title?: string;
30
+ };
31
+ export type KAccordionSlots = {
32
+ default?(): any;
33
+ };
34
+ export type KAccordionItemSlots = {
35
+ default?(): any;
36
+ title?(): any;
37
+ };
@@ -0,0 +1,11 @@
1
+ import type { KAlertProps, KAlertSlots } from './types';
2
+ type __VLS_Slots = KAlertSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KAlertProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KAlertProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ type __VLS_WithSlots<T, S> = T & {
8
+ new (): {
9
+ $slots: S;
10
+ };
11
+ };
@@ -0,0 +1,18 @@
1
+ import { Intent } from '../../types';
2
+ /**
3
+ * Core ships no `--edged` modifier — the one in its docs helper does not exist
4
+ * in the stylesheet — so there is deliberately no `edged` prop here.
5
+ *
6
+ * Anchors inside the message need `class="KAlert-link"` to pick up the alert's
7
+ * text colour. That stays the consumer's job: the slot content is arbitrary,
8
+ * so the wrapper has nothing to attach it to.
9
+ */
10
+ export type KAlertProps = {
11
+ /** Bold label above the message. The `title` slot overrides it. */
12
+ title?: string;
13
+ variant?: Intent;
14
+ };
15
+ export type KAlertSlots = {
16
+ default?(): any;
17
+ title?(): any;
18
+ };
@@ -0,0 +1,15 @@
1
+ import type { KAvatarProps, KAvatarSlots } from './types';
2
+ type __VLS_Slots = KAvatarSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KAvatarProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
4
+ remove: () => any;
5
+ }, string, import("vue").PublicProps, Readonly<KAvatarProps> & Readonly<{
6
+ onRemove?: (() => any) | undefined;
7
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
9
+ declare const _default: typeof __VLS_export;
10
+ export default _default;
11
+ type __VLS_WithSlots<T, S> = T & {
12
+ new (): {
13
+ $slots: S;
14
+ };
15
+ };
@@ -0,0 +1,11 @@
1
+ import type { KAvatarGroupProps, KAvatarGroupSlots } from './types';
2
+ type __VLS_Slots = KAvatarGroupSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KAvatarGroupProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KAvatarGroupProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ type __VLS_WithSlots<T, S> = T & {
8
+ new (): {
9
+ $slots: S;
10
+ };
11
+ };
@@ -0,0 +1,130 @@
1
+ import type { AvatarColor, AvatarHue, AvatarShade } from '@knitify/core';
2
+ import { Intent } from '../../types';
3
+ export type KAvatarSize = '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl';
4
+ export type KAvatarTextPosition = 'right' | 'left' | 'stacked';
5
+ export type KAvatarHue = AvatarHue;
6
+ export type KAvatarShade = AvatarShade;
7
+ export type KAvatarColor = AvatarColor;
8
+ export type KAvatarProps = {
9
+ /** Alt text for `src`. Empty by default, which hides a decorative photo. */
10
+ alt?: string;
11
+ /**
12
+ * A count or short label on the circle's top-right, such as `3` or `9+`.
13
+ * The `badge` slot replaces it with richer content.
14
+ */
15
+ badge?: number | string;
16
+ /**
17
+ * Picks a stable hue color from this key, usually a user ID, via core's
18
+ * `avatarColor()`. Ignored when `variant` is set.
19
+ */
20
+ colorKey?: string;
21
+ /**
22
+ * Placeholder glyph, used when there is no `src`. `true` is core's `#user`;
23
+ * a string is any other sprite href.
24
+ */
25
+ icon?: boolean | string;
26
+ /** The muted "+3" tile that closes a truncated group. */
27
+ overflow?: boolean;
28
+ /**
29
+ * A remove button on the circle's top-right, emitting `remove`. It shows on
30
+ * hover and on keyboard focus, and always on touch screens.
31
+ */
32
+ removable?: boolean;
33
+ /**
34
+ * Accessible name for the remove button, such as "Remove Jerome". The
35
+ * button is an icon alone, so give it one whenever `removable` is set.
36
+ */
37
+ removeLabel?: string;
38
+ size?: KAvatarSize;
39
+ src?: string;
40
+ /**
41
+ * Presence dot. Absent or `false` renders none, `true` the grey offline dot,
42
+ * and an intent colours it.
43
+ */
44
+ status?: boolean | Intent;
45
+ /**
46
+ * Accessible name for the status dot. Colour is the only channel the dot
47
+ * uses, so give it one wherever the state carries meaning.
48
+ */
49
+ statusLabel?: string;
50
+ /**
51
+ * Secondary label line, under `text`. Either line on its own is enough to
52
+ * give the avatar a label.
53
+ */
54
+ subtext?: string;
55
+ /**
56
+ * Primary label line beside the avatar. With neither `text` nor `subtext`,
57
+ * `.KAvatar` holds the circle alone and measures exactly as wide as it.
58
+ */
59
+ text?: string;
60
+ /** Which side the label sits on. `right` by default. */
61
+ textPosition?: KAvatarTextPosition;
62
+ /**
63
+ * An intent for a semantic avatar, or a hue color such as `cyan400` to tell
64
+ * participants apart. `colorKey` picks a stable hue instead.
65
+ */
66
+ variant?: Intent | KAvatarColor;
67
+ };
68
+ export type KAvatarEmits = {
69
+ /** The remove button was clicked. The click does not reach the avatar. */
70
+ remove: [];
71
+ };
72
+ export type KAvatarSlots = {
73
+ /**
74
+ * Replaces the remove button with a button of your own. Give it the
75
+ * `KAvatar-action` class, which positions it and hides it until hover.
76
+ */
77
+ action?(): any;
78
+ /** Rich replacement for the `badge` prop. */
79
+ badge?(): any;
80
+ /** The initials inside the circle. */
81
+ default?(): any;
82
+ /** Rich replacement for the `subtext` prop. */
83
+ subtext?(): any;
84
+ /** Rich replacement for the `text` prop. */
85
+ text?(): any;
86
+ };
87
+ export type KAvatarGroupProps = {
88
+ /**
89
+ * Two avatars on a diagonal inside one avatar's footprint. Only the first
90
+ * two children are positioned — a third is not supported, so use an
91
+ * overflow tile instead.
92
+ */
93
+ diagonal?: boolean;
94
+ /**
95
+ * Lifts the avatar under the pointer and brings it to the front. Row groups
96
+ * only; it has no effect with `diagonal`.
97
+ */
98
+ hoverable?: boolean;
99
+ /**
100
+ * Accessible name for the group as a whole, such as "Design team, 6
101
+ * people". With it, the group reads as one image rather than as each
102
+ * avatar's initials in turn. Give it one on a `pie` group.
103
+ */
104
+ label?: string;
105
+ /**
106
+ * One circle cut into a slice per avatar, as in Teams: up to four. For a
107
+ * bigger group, pass three avatars and an `overflow` tile such as "+3".
108
+ * Not combined with `diagonal`.
109
+ */
110
+ pie?: boolean;
111
+ /**
112
+ * On a diagonal group the size belongs here, not on the children. It also
113
+ * sizes `status`, so a row of larger avatars wants it set too.
114
+ */
115
+ size?: KAvatarSize;
116
+ /**
117
+ * One presence dot for the group as a whole, in place of a dot per avatar.
118
+ * Absent or `false` renders none, `true` the grey offline dot, and an intent
119
+ * colours it.
120
+ */
121
+ status?: boolean | Intent;
122
+ /**
123
+ * Accessible name for the status dot. Colour is the only channel the dot
124
+ * uses, so give it one wherever the state carries meaning.
125
+ */
126
+ statusLabel?: string;
127
+ };
128
+ export type KAvatarGroupSlots = {
129
+ default?(): any;
130
+ };
@@ -1,5 +1,7 @@
1
1
  import { Size, Variant } from '../../types';
2
2
  export type KBadgeProps = {
3
+ /** Tighter padding for a badge sitting on an avatar or in a dense list. */
4
+ compact?: boolean;
3
5
  pill?: boolean;
4
6
  size?: Size;
5
7
  subtle?: boolean;
@@ -0,0 +1,11 @@
1
+ import type { KBreadcrumbProps, KBreadcrumbSlots } from './types';
2
+ type __VLS_Slots = KBreadcrumbSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KBreadcrumbProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KBreadcrumbProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ type __VLS_WithSlots<T, S> = T & {
8
+ new (): {
9
+ $slots: S;
10
+ };
11
+ };
@@ -0,0 +1,11 @@
1
+ import type { KBreadcrumbItemProps, KBreadcrumbSlots } from './types';
2
+ type __VLS_Slots = KBreadcrumbSlots;
3
+ declare const __VLS_base: import("vue").DefineComponent<KBreadcrumbItemProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<KBreadcrumbItemProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
4
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
5
+ declare const _default: typeof __VLS_export;
6
+ export default _default;
7
+ type __VLS_WithSlots<T, S> = T & {
8
+ new (): {
9
+ $slots: S;
10
+ };
11
+ };