chatlab-cli 0.24.0 → 0.24.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -2
- package/dist/{chunk-KCBIBRHL.mjs → chunk-43XWYC3M.mjs} +2 -2
- package/dist/{chunk-A6JCL4PT.mjs → chunk-CIIQ3S2X.mjs} +24 -10
- package/dist/chunk-CIIQ3S2X.mjs.map +1 -0
- package/dist/{chunk-XJJXSOLO.mjs → chunk-N5DGZQB4.mjs} +172 -41
- package/dist/chunk-N5DGZQB4.mjs.map +1 -0
- package/dist/{chunk-RLCFXTTS.mjs → chunk-QJI6AOAT.mjs} +2 -2
- package/dist/{chunk-36W2HWQN.mjs → chunk-QY6P2YS7.mjs} +2 -2
- package/dist/{chunk-NE4A6PND.mjs → chunk-ZL322NVL.mjs} +23 -26
- package/dist/chunk-ZL322NVL.mjs.map +1 -0
- package/dist/cli.mjs +2 -2
- package/dist/{http-OPQ352FZ.mjs → http-TPX74BLK.mjs} +6 -6
- package/dist/{import-GZMDLK2E.mjs → import-B745DRHD.mjs} +4 -4
- package/dist/index.mjs +6 -6
- package/dist/{mcp-SHZ2CVXY.mjs → mcp-YWAVG5XW.mjs} +3 -3
- package/dist/{stream-import-RDDB3N7B.mjs → stream-import-OPALPVWF.mjs} +3 -3
- package/dist/{update-checker-JG5K67O2.mjs → update-checker-JIBA7T4U.mjs} +24 -21
- package/dist/update-checker-JIBA7T4U.mjs.map +1 -0
- package/dist-web/assets/{DebugToolsPanel.vue_vue_type_script_setup_true_lang-_gbTn1ha.js → DebugToolsPanel.vue_vue_type_script_setup_true_lang-BBDrsJfe.js} +9 -9
- package/dist-web/assets/MessageExportModal-CSfaY25B.js +1 -0
- package/dist-web/assets/{electron-BIWBW8k_.js → electron-BUeXfvxT.js} +1 -1
- package/dist-web/assets/electron-BynNUuEA.js +1 -0
- package/dist-web/assets/{fetch-BhsrPRzn.js → fetch-B2q6973s.js} +1 -1
- package/dist-web/assets/{fetch-CnyupWWc.js → fetch-BGMRmQx0.js} +2 -2
- package/dist-web/assets/{fetch-ClDGP9DK.js → fetch-BneHn5qk.js} +1 -1
- package/dist-web/assets/{fetch-DwPB8NOH.js → fetch-BohUj3CQ.js} +1 -1
- package/dist-web/assets/{fetch-BOevuRK_.js → fetch-BtHwWs8A.js} +1 -1
- package/dist-web/assets/{fetch-DFWZ48Xw.js → fetch-CARsBVl0.js} +1 -1
- package/dist-web/assets/{fetch-CvaXKzA-.js → fetch-Ck3tjoLa.js} +1 -1
- package/dist-web/assets/{fetch-DKD1bKt2.js → fetch-DypPduyQ.js} +1 -1
- package/dist-web/assets/{fetch-ChECfwh7.js → fetch-DzNuFdFM.js} +1 -1
- package/dist-web/assets/{fetch-D1_jL6PO.js → fetch-RDFt3hmp.js} +1 -1
- package/dist-web/assets/index-BRwEubUe.js +173 -0
- package/dist-web/assets/{index-Bzg8BftZ.js → index-BvaWRM6_.js} +1 -1
- package/dist-web/assets/{index-BVQsKKwg.js → index-Bvlj3dMn.js} +1 -1
- package/dist-web/assets/{index-D6ga3hbF.js → index-C5LrQG3N.js} +3 -3
- package/dist-web/assets/index-DB-iqXzV.css +1 -0
- package/dist-web/assets/index-DCWvD-4L.js +2 -0
- package/dist-web/assets/index-DS1rzk1I.js +8 -0
- package/dist-web/assets/{vendor-nuxt-ui-BLMzqeB8.js → vendor-nuxt-ui-BYU7dz8t.js} +1 -1
- package/dist-web/assets/{web-DtlveK3q.js → web-CXPkmhis.js} +1 -1
- package/dist-web/index.html +3 -3
- package/package.json +1 -1
- package/dist/chunk-A6JCL4PT.mjs.map +0 -1
- package/dist/chunk-NE4A6PND.mjs.map +0 -1
- package/dist/chunk-XJJXSOLO.mjs.map +0 -1
- package/dist/update-checker-JG5K67O2.mjs.map +0 -1
- package/dist-web/assets/MessageExportModal-n4JgNg_F.js +0 -1
- package/dist-web/assets/electron-Bt9dK4Sr.js +0 -1
- package/dist-web/assets/index-BN79SJSr.js +0 -173
- package/dist-web/assets/index-C-5bP7_E.js +0 -2
- package/dist-web/assets/index-ESCx9pRR.js +0 -8
- package/dist-web/assets/index-JbR9Q-bb.css +0 -1
- package/dist-web/assets/model-catalog-DUuKjIVU.js +0 -1
- /package/dist/{chunk-KCBIBRHL.mjs.map → chunk-43XWYC3M.mjs.map} +0 -0
- /package/dist/{chunk-RLCFXTTS.mjs.map → chunk-QJI6AOAT.mjs.map} +0 -0
- /package/dist/{chunk-36W2HWQN.mjs.map → chunk-QY6P2YS7.mjs.map} +0 -0
- /package/dist/{http-OPQ352FZ.mjs.map → http-TPX74BLK.mjs.map} +0 -0
- /package/dist/{import-GZMDLK2E.mjs.map → import-B745DRHD.mjs.map} +0 -0
- /package/dist/{mcp-SHZ2CVXY.mjs.map → mcp-YWAVG5XW.mjs.map} +0 -0
- /package/dist/{stream-import-RDDB3N7B.mjs.map → stream-import-OPALPVWF.mjs.map} +0 -0
|
@@ -12,4 +12,4 @@ import{e as ps,i as Ut,r as Pt,u as o,g as Mi,o as vs,t as he,a as Di,c as ms,b
|
|
|
12
12
|
${Object.keys(i).map(s=>Li(s,400)).join(`
|
|
13
13
|
`)}
|
|
14
14
|
}
|
|
15
|
-
}`}),a={style:[{innerHTML:()=>t.value,tagPriority:-2,id:"nuxt-ui-colors"}]};{const n=document.createElement("style");n.innerHTML=t.value,n.setAttribute("data-nuxt-ui-colors",""),document.head.appendChild(n),a.script=[{innerHTML:"document.head.removeChild(document.querySelector('[data-nuxt-ui-colors]'))"}]}ec(a)}),bp={install(){bo()}},Dg={slots:{root:"",wrapper:"",labelWrapper:"flex content-center items-center justify-between gap-1",label:"block font-medium text-default",container:"relative",description:"text-muted",error:"mt-2 text-error",hint:"text-muted",help:"mt-2 text-muted"},variants:{size:{xs:{root:"text-xs"},sm:{root:"text-xs"},md:{root:"text-sm"},lg:{root:"text-sm"},xl:{root:"text-base"}},required:{true:{label:"after:content-['*'] after:ms-0.5 after:text-error"}},orientation:{vertical:{container:"mt-1"},horizontal:{root:"flex justify-between place-items-baseline gap-2"}}},defaultVariants:{size:"md",orientation:"vertical"}},Vg=["id"],jg=["id"],Fg=["id"],Hg=["id"],yp={__name:"FormField",props:{as:{type:null,required:!1},name:{type:String,required:!1},errorPattern:{type:null,required:!1},label:{type:String,required:!1},description:{type:String,required:!1},help:{type:String,required:!1},error:{type:[Boolean,String],required:!1,default:void 0},hint:{type:String,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},eagerValidation:{type:Boolean,required:!1},validateOnInputDelay:{type:Number,required:!1},orientation:{type:null,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(e){const t=e,a=Be(),n=we(),i=T(()=>X({extend:X(Dg),...n.ui?.formField||{}})({size:t.size,required:t.required,orientation:t.orientation})),r=Le(zf,null),s=T(()=>t.error||r?.value?.find(p=>p.name===t.name||t.errorPattern&&p.name?.match(t.errorPattern))?.message),l=ie(Ta()),c=l.value,d=Le(kf,void 0);return Ge(l,()=>{d&&t.name&&(d.value[t.name]={id:l.value,pattern:t.errorPattern})},{immediate:!0}),nt(as,l),nt(hn,T(()=>({error:s.value,name:t.name,size:t.size,eagerValidation:t.eagerValidation,validateOnInputDelay:t.validateOnInputDelay,errorPattern:t.errorPattern,hint:t.hint,description:t.description,help:t.help,ariaId:c}))),(p,f)=>(m(),z(o(Xe),{as:e.as,"data-orientation":e.orientation,"data-slot":"root",class:w(i.value.root({class:[t.ui?.root,t.class]}))},{default:q(()=>[$e("div",{"data-slot":"wrapper",class:w(i.value.wrapper({class:t.ui?.wrapper}))},[e.label||a.label?(m(),j("div",{key:0,"data-slot":"labelWrapper",class:w(i.value.labelWrapper({class:t.ui?.labelWrapper}))},[F(o(ya),{for:l.value,"data-slot":"label",class:w(i.value.label({class:t.ui?.label}))},{default:q(()=>[A(p.$slots,"label",{label:e.label},()=>[ce(ee(e.label),1)])]),_:3},8,["for","class"]),e.hint||a.hint?(m(),j("span",{key:0,id:`${o(c)}-hint`,"data-slot":"hint",class:w(i.value.hint({class:t.ui?.hint}))},[A(p.$slots,"hint",{hint:e.hint},()=>[ce(ee(e.hint),1)])],10,Vg)):P("",!0)],2)):P("",!0),e.description||a.description?(m(),j("p",{key:1,id:`${o(c)}-description`,"data-slot":"description",class:w(i.value.description({class:t.ui?.description}))},[A(p.$slots,"description",{description:e.description},()=>[ce(ee(e.description),1)])],10,jg)):P("",!0)],2),$e("div",{class:w([(e.label||!!a.label||e.description||!!a.description)&&i.value.container({class:t.ui?.container})])},[A(p.$slots,"default",{error:s.value}),t.error!==!1&&(typeof s.value=="string"&&s.value||a.error)?(m(),j("div",{key:0,id:`${o(c)}-error`,"data-slot":"error",class:w(i.value.error({class:t.ui?.error}))},[A(p.$slots,"error",{error:s.value},()=>[ce(ee(s.value),1)])],10,Fg)):e.help||a.help?(m(),j("div",{key:1,id:`${o(c)}-help`,"data-slot":"help",class:w(i.value.help({class:t.ui?.help}))},[A(p.$slots,"help",{help:e.help},()=>[ce(ee(e.help),1)])],10,Hg)):P("",!0)],2)]),_:3},8,["as","data-orientation","class"]))}},Gg={slots:{root:"relative inline-flex items-center",base:["w-full rounded-md border-0 appearance-none placeholder:text-dimmed focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute start-0 flex items-start",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute end-0 flex items-start",trailingIcon:"shrink-0 text-dimmed"},variants:{fieldGroup:{horizontal:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-e-none group-not-only:group-last:rounded-s-none group-not-last:group-not-first:rounded-none"},vertical:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-b-none group-not-only:group-last:rounded-t-none group-not-last:group-not-first:rounded-none"}},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2 inset-y-1",trailing:"pe-2 inset-y-1",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5 inset-y-1.5",trailing:"pe-2.5 inset-y-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5 inset-y-1.5",trailing:"pe-2.5 inset-y-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3 inset-y-2",trailing:"pe-3 inset-y-2",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3 inset-y-2",trailing:"pe-3 inset-y-2",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},autoresize:{true:{base:"resize-none"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},Kg=["id","value","name","rows","placeholder","disabled","required"],xp=Object.assign({inheritAttrs:!1},{__name:"Textarea",props:{as:{type:null,required:!1},id:{type:String,required:!1},name:{type:String,required:!1},placeholder:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},autoresize:{type:Boolean,required:!1},autoresizeDelay:{type:Number,required:!1,default:0},disabled:{type:Boolean,required:!1},rows:{type:Number,required:!1,default:3},maxrows:{type:Number,required:!1,default:0},highlight:{type:Boolean,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},emits:["update:modelValue","blur","change"],setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=Sn(n,"modelValue",i,{defaultValue:n.defaultValue}),l=we(),{emitFormFocus:c,emitFormBlur:d,emitFormInput:p,emitFormChange:f,size:u,color:g,id:h,name:v,highlight:b,disabled:x,ariaAttrs:y}=gt(n,{deferInputValidation:!0}),{isLeading:k,isTrailing:S,leadingIconName:O,trailingIconName:R}=qt(n),N=T(()=>X({extend:X(Gg),...l.ui?.textarea||{}})({color:g.value,variant:n.variant,size:u?.value,loading:n.loading,highlight:b.value,autoresize:n.autoresize,leading:k.value||!!n.avatar||!!r.leading,trailing:S.value||!!r.trailing})),D=ft("textareaRef");function Z(L){n.modelModifiers?.trim&&(L=L?.trim()??null),n.modelModifiers?.number&&(L=Oa(L)),n.modelModifiers?.nullable&&(L||=null),n.modelModifiers?.optional&&(L||=void 0),s.value=L,p()}function U(L){M(),n.modelModifiers?.lazy||Z(L.target.value)}function le(L){const $=L.target.value;n.modelModifiers?.lazy&&Z($),n.modelModifiers?.trim&&(L.target.value=$.trim()),f(),i("change",L)}function ne(L){d(),i("blur",L)}function Y(){n.autofocus&&D.value?.focus()}function M(){if(n.autoresize&&D.value){D.value.rows=n.rows;const L=D.value.style.overflow;D.value.style.overflow="hidden";const $=window.getComputedStyle(D.value),W=Number.parseInt($.paddingTop),E=Number.parseInt($.paddingBottom),pe=W+E,be=Number.parseInt($.lineHeight),{scrollHeight:ue}=D.value,xe=(ue-pe)/be;xe>n.rows&&(D.value.rows=n.maxrows?Math.min(xe,n.maxrows):xe),D.value.style.overflow=L}}return Ge(s,()=>{rt(M)}),Je(()=>{setTimeout(()=>{Y()},n.autofocusDelay),setTimeout(()=>{M()},n.autoresizeDelay)}),t({textareaRef:D}),(L,$)=>(m(),z(o(Xe),{as:e.as,"data-slot":"root",class:w(N.value.root({class:[n.ui?.root,n.class]}))},{default:q(()=>[$e("textarea",H({id:o(h),ref_key:"textareaRef",ref:D,value:o(s),name:o(v),rows:e.rows,placeholder:e.placeholder,"data-slot":"base",class:N.value.base({class:n.ui?.base}),disabled:o(x),required:e.required},{...L.$attrs,...o(y)},{onInput:U,onBlur:ne,onChange:le,onFocus:$[0]||($[0]=(...W)=>o(c)&&o(c)(...W))}),null,16,Kg),A(L.$slots,"default",{ui:N.value}),o(k)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(N.value.leading({class:n.ui?.leading}))},[A(L.$slots,"leading",{ui:N.value},()=>[o(k)&&o(O)?(m(),z(ye,{key:0,name:o(O),"data-slot":"leadingIcon",class:w(N.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.leadingAvatarSize||N.value.leadingAvatarSize()},e.avatar,{"data-slot":"leadingAvatar",class:N.value.leadingAvatar({class:n.ui?.leadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),o(S)||r.trailing?(m(),j("span",{key:1,"data-slot":"trailing",class:w(N.value.trailing({class:n.ui?.trailing}))},[A(L.$slots,"trailing",{ui:N.value},()=>[o(R)?(m(),z(ye,{key:0,name:o(R),"data-slot":"trailingIcon",class:w(N.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:3},8,["as","class"]))}});function Wg(e,t){if(typeof e!="object"||e===null)return!1;const a=ke(e,t);return a!=null&&a!==""}function Ni(e,t){return t?{xs:44,sm:48,md:52,lg:56,xl:60}[e]:{xs:24,sm:28,md:32,lg:36,xl:40}[e]}function Ug(e,t,a,n){const i=Ni(t,!0),r=Ni(t,!1);return n?()=>i:a?s=>Wg(e[s],a)?i:r:()=>r}const Yg={slots:{base:["relative group rounded-md inline-flex items-center focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",value:"truncate pointer-events-none",placeholder:"truncate text-dimmed",arrow:"fill-default",content:["max-h-60 w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-select-content-transform-origin) pointer-events-auto flex flex-col","origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)"],viewport:"relative scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",empty:"text-center text-muted",label:"font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:["group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default","transition-colors"],itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemLeadingChip:"shrink-0",itemLeadingChipSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemWrapper:"flex-1 flex flex-col min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",input:"border-b border-default",focusScope:"flex flex-col min-h-0",trailingClear:"p-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1 text-[10px]/3 gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1 text-xs"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1.5 text-[10px]/3 gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1.5 text-xs"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-1.5 text-sm"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-2 text-xs gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-2 text-sm"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",label:"p-2 text-sm gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemLeadingChip:"size-6",itemLeadingChipSize:"lg",itemTrailingIcon:"size-6",empty:"p-2 text-base"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},virtualize:{true:{viewport:"p-1 isolate"},false:{viewport:"divide-y divide-default"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},kp=Object.assign({inheritAttrs:!1},{__name:"SelectMenu",props:dt({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},clear:{type:[Boolean,Object],required:!1},clearIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:null,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},resetModelValueOnClear:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:""},searchTermModifiers:{}}),emits:dt(["update:open","change","blur","focus","create","clear","highlight","update:modelValue"],["update:searchTerm"]),setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=Xt(e,"searchTerm",{type:String,default:""}),{t:l}=bt(),c=we(),{contains:d}=Rl({sensitivity:"base"}),p=Ke(je(n,"modelValue","defaultValue","open","defaultOpen","required","multiple","resetSearchTermOnBlur","resetSearchTermOnSelect","resetModelValueOnClear","highlightOnHover","by"),i),f=yt(he(()=>n.portal)),u=he(()=>Ze(n.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),g=he(()=>n.arrow),h=T(()=>typeof n.clear=="object"?n.clear:{}),v=he(()=>n.virtualize?Ze(typeof n.virtualize=="boolean"?{}:n.virtualize,{estimateSize:Ug(K.value,E.value||"md",n.descriptionKey,!!r["item-description"])}):!1),b=he(()=>Ze(n.searchInput,{placeholder:l("selectMenu.search"),variant:"none"})),{emitFormBlur:x,emitFormFocus:y,emitFormInput:k,emitFormChange:S,size:O,color:R,id:N,name:D,highlight:Z,disabled:U,ariaAttrs:le}=gt(n),{orientation:ne,size:Y}=It(n),{isLeading:M,isTrailing:L,leadingIconName:$,trailingIconName:W}=qt(he(()=>Ze(n,{trailingIcon:c.ui.icons.chevronDown}))),E=T(()=>Y.value||O.value),[pe,be]=xa(),[ue,xe]=xa({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),B=T(()=>X({extend:X(Yg),...c.ui?.selectMenu||{}})({color:R.value,variant:n.variant,size:E?.value,loading:n.loading,highlight:Z.value,leading:M.value||!!n.avatar||!!r.leading,trailing:L.value||!!r.trailing,fieldGroup:ne.value,virtualize:!!n.virtualize}));function de(G){if(n.multiple&&Array.isArray(G)){const oe=G.map(V=>ka(Te.value,V,{labelKey:n.labelKey,valueKey:n.valueKey,by:n.by})).filter(V=>V!=null&&V!=="");return oe.length>0?oe.join(", "):void 0}return ka(Te.value,G,{labelKey:n.labelKey,valueKey:n.valueKey,by:n.by})}const ve=T(()=>n.items?.length?qn(n.items)?n.items:[n.items]:[]),Te=T(()=>ve.value.flatMap(G=>G)),I=T(()=>{if(n.ignoreFilter||!s.value)return ve.value;const G=Array.isArray(n.filterFields)?n.filterFields:[n.labelKey];return ve.value.map(oe=>oe.filter(V=>V==null?!1:typeof V!="object"?d(String(V),s.value):V.type&&["label","separator"].includes(V.type)?!0:G.some(Ce=>{const qe=ke(V,Ce);return qe!=null&&d(String(qe),s.value)}))).filter(oe=>oe.filter(V=>!me(V)||!V.type||!["label","separator"].includes(V.type)).length>0)}),K=T(()=>I.value.flatMap(G=>G)),C=T(()=>{if(!n.createItem||!s.value)return!1;const G=n.valueKey?{[n.valueKey]:s.value}:s.value;return typeof n.createItem=="object"&&n.createItem.when==="always"||n.createItem==="always"?!K.value.find(oe=>rr(oe,G,n.by??n.valueKey)):!K.value.length}),_=T(()=>typeof n.createItem=="object"?n.createItem.position:"bottom"),ae=ft("triggerRef");function ze(){n.autofocus&&ae.value?.$el?.focus({focusVisible:!0})}Je(()=>{setTimeout(()=>{ze()},n.autofocusDelay)});function re(G){if(Qi(n.modelValue)===G)return;n.modelModifiers?.trim&&(G=G?.trim()??null),n.modelModifiers?.number&&(G=Oa(G)),n.modelModifiers?.nullable&&(G??=null),n.modelModifiers?.optional&&(G??=void 0);const oe=new Event("change",{target:{value:G}});i("change",oe),S(),k(),n.resetSearchTermOnSelect&&(s.value="")}function se(G){let oe;if(G){const V=new FocusEvent("focus");i("focus",V),y(),clearTimeout(oe)}else{const V=new FocusEvent("blur");i("blur",V),x(),n.resetSearchTermOnBlur&&(oe=setTimeout(()=>{s.value=""},100))}}function Ae(G){G.preventDefault(),G.stopPropagation(),i("create",s.value)}function st(G,oe){if(me(oe)){if(oe.disabled){G.preventDefault();return}oe.onSelect?.(G)}}function me(G){return typeof G=="object"&&G!==null}function te(G){return n.multiple&&Array.isArray(G)?G.length===0:G==null||G===""}function Oe(){i("clear")}const Re=ft("viewportRef");return t({triggerRef:he(()=>ae.value?.$el),viewportRef:he(()=>Re.value)}),(G,oe)=>(m(),j(ge,null,[F(o(pe),null,{default:q(()=>[F(o(Mn),{"data-slot":"item",class:w(B.value.item({class:n.ui?.item})),value:s.value,onSelect:Ae},{default:q(()=>[$e("span",{"data-slot":"itemLabel",class:w(B.value.itemLabel({class:n.ui?.itemLabel}))},[A(G.$slots,"create-item-label",{item:s.value},()=>[ce(ee(o(l)("selectMenu.create",{label:s.value})),1)])],2)]),_:3},8,["class","value"])]),_:3}),F(o(ue),null,{default:q(({item:V,index:Ce})=>[me(V)&&V.type==="label"?(m(),z(o(yl),{key:0,"data-slot":"label",class:w(B.value.label({class:[n.ui?.label,V.ui?.label,V.class]}))},{default:q(()=>[ce(ee(o(ke)(V,n.labelKey)),1)]),_:2},1032,["class"])):me(V)&&V.type==="separator"?(m(),z(o(xl),{key:1,"data-slot":"separator",class:w(B.value.separator({class:[n.ui?.separator,V.ui?.separator,V.class]}))},null,8,["class"])):(m(),z(o(Mn),{key:2,"data-slot":"item",class:w(B.value.item({class:[n.ui?.item,me(V)&&V.ui?.item,me(V)&&V.class]})),disabled:me(V)&&V.disabled,value:n.valueKey&&me(V)?o(ke)(V,n.valueKey):V,onSelect:qe=>st(qe,V)},{default:q(()=>[A(G.$slots,"item",{item:V,index:Ce,ui:B.value},()=>[A(G.$slots,"item-leading",{item:V,index:Ce,ui:B.value},()=>[me(V)&&V.icon?(m(),z(ye,{key:0,name:V.icon,"data-slot":"itemLeadingIcon",class:w(B.value.itemLeadingIcon({class:[n.ui?.itemLeadingIcon,V.ui?.itemLeadingIcon]}))},null,8,["name","class"])):me(V)&&V.avatar?(m(),z(Qe,H({key:1,size:V.ui?.itemLeadingAvatarSize||n.ui?.itemLeadingAvatarSize||B.value.itemLeadingAvatarSize()},V.avatar,{"data-slot":"itemLeadingAvatar",class:B.value.itemLeadingAvatar({class:[n.ui?.itemLeadingAvatar,V.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):me(V)&&V.chip?(m(),z($n,H({key:2,size:n.ui?.itemLeadingChipSize||B.value.itemLeadingChipSize(),inset:"",standalone:""},V.chip,{"data-slot":"itemLeadingChip",class:B.value.itemLeadingChip({class:[n.ui?.itemLeadingChip,V.ui?.itemLeadingChip]})}),null,16,["size","class"])):P("",!0)]),$e("span",{"data-slot":"itemWrapper",class:w(B.value.itemWrapper({class:[n.ui?.itemWrapper,me(V)&&V.ui?.itemWrapper]}))},[$e("span",{"data-slot":"itemLabel",class:w(B.value.itemLabel({class:[n.ui?.itemLabel,me(V)&&V.ui?.itemLabel]}))},[A(G.$slots,"item-label",{item:V,index:Ce},()=>[ce(ee(me(V)?o(ke)(V,n.labelKey):V),1)])],2),me(V)&&(o(ke)(V,n.descriptionKey)||r["item-description"])?(m(),j("span",{key:0,"data-slot":"itemDescription",class:w(B.value.itemDescription({class:[n.ui?.itemDescription,me(V)&&V.ui?.itemDescription]}))},[A(G.$slots,"item-description",{item:V,index:Ce},()=>[ce(ee(o(ke)(V,n.descriptionKey)),1)])],2)):P("",!0)],2),$e("span",{"data-slot":"itemTrailing",class:w(B.value.itemTrailing({class:[n.ui?.itemTrailing,me(V)&&V.ui?.itemTrailing]}))},[A(G.$slots,"item-trailing",{item:V,index:Ce,ui:B.value}),F(o(kl),{"as-child":""},{default:q(()=>[F(ye,{name:e.selectedIcon||o(c).ui.icons.check,"data-slot":"itemTrailingIcon",class:w(B.value.itemTrailingIcon({class:[n.ui?.itemTrailingIcon,me(V)&&V.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))]),_:3}),F(o($l),H({id:o(N)},{...o(p),...G.$attrs,...o(le)},{"ignore-filter":"","as-child":"",name:o(D),disabled:o(U),"onUpdate:modelValue":re,"onUpdate:open":se}),{default:q(({modelValue:V,open:Ce})=>[F(o(wl),{"as-child":""},{default:q(()=>[F(o(zl),{ref_key:"triggerRef",ref:ae,"data-slot":"base",class:w(B.value.base({class:[n.ui?.base,n.class]})),tabindex:"0"},{default:q(()=>[o(M)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(B.value.leading({class:n.ui?.leading}))},[A(G.$slots,"leading",{modelValue:V,open:Ce,ui:B.value},()=>[o(M)&&o($)?(m(),z(ye,{key:0,name:o($),"data-slot":"leadingIcon",class:w(B.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.itemLeadingAvatarSize||B.value.itemLeadingAvatarSize()},e.avatar,{"data-slot":"itemLeadingAvatar",class:B.value.itemLeadingAvatar({class:n.ui?.itemLeadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),A(G.$slots,"default",{modelValue:V,open:Ce,ui:B.value},()=>[(m(!0),j(ge,null,Ie([de(V)],qe=>(m(),j(ge,{key:qe},[qe!=null?(m(),j("span",{key:0,"data-slot":"value",class:w(B.value.value({class:n.ui?.value}))},ee(qe),3)):(m(),j("span",{key:1,"data-slot":"placeholder",class:w(B.value.placeholder({class:n.ui?.placeholder}))},ee(e.placeholder??" "),3))],64))),128))]),o(L)||r.trailing||e.clear?(m(),j("span",{key:1,"data-slot":"trailing",class:w(B.value.trailing({class:n.ui?.trailing}))},[A(G.$slots,"trailing",{modelValue:V,open:Ce,ui:B.value},()=>[e.clear&&!te(V)?(m(),z(o(Sl),{key:0,"as-child":""},{default:q(()=>[F(Ye,H({as:"span",icon:e.clearIcon||o(c).ui.icons.close,variant:"link",color:"neutral",tabindex:"-1"},h.value,{"data-slot":"trailingClear",class:B.value.trailingClear({class:n.ui?.trailingClear}),onClick:Ot(Oe,["stop"])}),null,16,["icon","class"])]),_:1})):o(W)?(m(),z(ye,{key:1,name:o(W),"data-slot":"trailingIcon",class:w(B.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:2},1032,["class"])]),_:2},1024),F(o(ql),Ne(He(o(f))),{default:q(()=>[F(o(Il),H({"data-slot":"content",class:B.value.content({class:n.ui?.content})},u.value),{default:q(()=>[F(o(Cl),{trapped:"","data-slot":"focusScope",class:w(B.value.focusScope({class:n.ui?.focusScope}))},{default:q(()=>[A(G.$slots,"content-top"),e.searchInput?(m(),z(o(Tl),{key:0,modelValue:s.value,"onUpdate:modelValue":oe[1]||(oe[1]=qe=>s.value=qe),"display-value":()=>s.value,"as-child":""},{default:q(()=>[F(Yf,H({autofocus:"",autocomplete:"off",size:e.size},b.value,{"data-slot":"input",class:B.value.input({class:n.ui?.input}),onChange:oe[0]||(oe[0]=Ot(()=>{},["stop"]))}),null,16,["size","class"])]),_:1},8,["modelValue","display-value"])):P("",!0),F(o(Al),{"data-slot":"empty",class:w(B.value.empty({class:n.ui?.empty}))},{default:q(()=>[A(G.$slots,"empty",{searchTerm:s.value},()=>[ce(ee(s.value?o(l)("selectMenu.noMatch",{searchTerm:s.value}):o(l)("selectMenu.noData")),1)])]),_:3},8,["class"]),$e("div",{ref_key:"viewportRef",ref:Re,role:"presentation","data-slot":"viewport",class:w(B.value.viewport({class:n.ui?.viewport}))},[e.virtualize?(m(),j(ge,{key:0},[C.value&&_.value==="top"?(m(),z(o(be),{key:0})):P("",!0),F(o(Ol),H({options:K.value,"text-content":qe=>me(qe)?o(ke)(qe,n.labelKey):String(qe)},v.value),{default:q(({option:qe,virtualItem:lt})=>[F(o(xe),{item:qe,index:lt.index},null,8,["item","index"])]),_:1},16,["options","text-content"]),C.value&&_.value==="bottom"?(m(),z(o(be),{key:1})):P("",!0)],64)):(m(),j(ge,{key:1},[C.value&&_.value==="top"?(m(),z(o(La),{key:0,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[F(o(be))]),_:1},8,["class"])):P("",!0),(m(!0),j(ge,null,Ie(I.value,(qe,lt)=>(m(),z(o(La),{key:`group-${lt}`,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[(m(!0),j(ge,null,Ie(qe,(Ct,Dt)=>(m(),z(o(xe),{key:`group-${lt}-${Dt}`,item:Ct,index:Dt},null,8,["item","index"]))),128))]),_:2},1032,["class"]))),128)),C.value&&_.value==="bottom"?(m(),z(o(La),{key:1,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[F(o(be))]),_:1},8,["class"])):P("",!0)],64))],2),A(G.$slots,"content-bottom")]),_:3},8,["class"]),e.arrow?(m(),z(o(Pl),H({key:0},g.value,{"data-slot":"arrow",class:B.value.arrow({class:n.ui?.arrow})}),null,16,["class"])):P("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["id","name","disabled"])],64))}}),_g={slots:{root:["relative inline-flex items-center","flex-wrap"],base:["rounded-md","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",item:'px-1.5 py-0.5 rounded-sm font-medium inline-flex items-center gap-0.5 ring ring-inset ring-accented bg-elevated text-default data-disabled:cursor-not-allowed data-disabled:opacity-75 wrap-anywhere data-[state="active"]:bg-accented',itemText:"",itemDelete:["inline-flex items-center rounded-xs text-dimmed hover:text-default hover:bg-accented/75 disabled:pointer-events-none","transition-colors"],itemDeleteIcon:"shrink-0",input:"flex-1 border-0 bg-transparent placeholder:text-dimmed focus:outline-none disabled:cursor-not-allowed disabled:opacity-75"},variants:{fieldGroup:{horizontal:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-e-none group-not-only:group-last:rounded-s-none group-not-last:group-not-first:rounded-none"},vertical:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-b-none group-not-only:group-last:rounded-t-none group-not-last:group-not-first:rounded-none"}},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",item:"text-[10px]/3",itemDeleteIcon:"size-3"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",item:"text-[10px]/3",itemDeleteIcon:"size-3"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",item:"text-xs",itemDeleteIcon:"size-3.5"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",item:"text-xs",itemDeleteIcon:"size-3.5"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",item:"text-sm",itemDeleteIcon:"size-4"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated has-focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated has-focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},wp=Object.assign({inheritAttrs:!1},{__name:"InputTags",props:{as:{type:null,required:!1},placeholder:{type:String,required:!1},maxLength:{type:Number,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},deleteIcon:{type:null,required:!1},highlight:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},modelValue:{type:[Array,null],required:!1},defaultValue:{type:Array,required:!1},addOnPaste:{type:Boolean,required:!1},addOnTab:{type:Boolean,required:!1},addOnBlur:{type:Boolean,required:!1},duplicate:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},delimiter:{type:null,required:!1},max:{type:Number,required:!1},id:{type:String,required:!1},convertValue:{type:Function,required:!1},displayValue:{type:Function,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},emits:["change","blur","focus","update:modelValue","invalid","addTag","removeTag"],setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=we(),l=Ke(je(n,"as","addOnPaste","addOnTab","addOnBlur","duplicate","delimiter","max","convertValue","displayValue","required"),i),{emitFormBlur:c,emitFormFocus:d,emitFormChange:p,emitFormInput:f,size:u,color:g,id:h,name:v,highlight:b,disabled:x,ariaAttrs:y}=gt(n),{orientation:k,size:S}=It(n),{isLeading:O,isTrailing:R,leadingIconName:N,trailingIconName:D}=qt(n),Z=T(()=>S.value||u.value),U=T(()=>X({extend:X(_g),...s.ui?.inputTags||{}})({color:g.value,variant:n.variant,size:Z?.value,loading:n.loading,highlight:b.value,leading:O.value||!!n.avatar||!!r.leading,trailing:R.value||!!r.trailing,fieldGroup:k.value})),le=ft("inputRef");function ne(){n.autofocus&&le.value?.$el?.focus()}Je(()=>{setTimeout(()=>{ne()},n.autofocusDelay)});function Y($){if(Qi(n.modelValue)===$)return;const W=new Event("change",{target:{value:$}});i("change",W),p(),f()}function M($){i("blur",$),c()}function L($){i("focus",$),d()}return t({inputRef:he(()=>le.value?.$el)}),($,W)=>(m(),z(o(Ml),H({id:o(h),"model-value":e.modelValue,"default-value":e.defaultValue,"data-slot":"root",class:U.value.root({class:[U.value.base({class:n.ui?.base}),n.ui?.root,n.class]})},o(l),{name:o(v),disabled:o(x),"onUpdate:modelValue":Y}),{default:q(({modelValue:E})=>[(m(!0),j(ge,null,Ie(E,(pe,be)=>(m(),z(o(El),{key:be,value:pe,"data-slot":"item",class:w(U.value.item({class:[n.ui?.item]}))},{default:q(()=>[F(o(Bl),{"data-slot":"itemText",class:w(U.value.itemText({class:[n.ui?.itemText]}))},{default:q(()=>[r["item-text"]?A($.$slots,"item-text",{key:0,item:pe,index:be,ui:U.value}):P("",!0)]),_:2},1032,["class"]),F(o(Ll),{"data-slot":"itemDelete",class:w(U.value.itemDelete({class:[n.ui?.itemDelete]})),disabled:o(x)},{default:q(()=>[A($.$slots,"item-delete",{item:pe,index:be,ui:U.value},()=>[F(ye,{name:e.deleteIcon||o(s).ui.icons.close,"data-slot":"itemDeleteIcon",class:w(U.value.itemDeleteIcon({class:[n.ui?.itemDeleteIcon]}))},null,8,["name","class"])])]),_:2},1032,["class","disabled"])]),_:2},1032,["value","class"]))),128)),F(o(Nl),H({ref_key:"inputRef",ref:le},{...$.$attrs,...o(y)},{placeholder:e.placeholder,"max-length":e.maxLength,"data-slot":"input",class:U.value.input({class:n.ui?.input}),onBlur:M,onFocus:L}),null,16,["placeholder","max-length","class"]),A($.$slots,"default",{ui:U.value}),o(O)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(U.value.leading({class:n.ui?.leading}))},[A($.$slots,"leading",{ui:U.value},()=>[o(O)&&o(N)?(m(),z(ye,{key:0,name:o(N),"data-slot":"leadingIcon",class:w(U.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.leadingAvatarSize||U.value.leadingAvatarSize()},e.avatar,{"data-slot":"leadingAvatar",class:U.value.leadingAvatar({class:n.ui?.leadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),o(R)||r.trailing?(m(),j("span",{key:1,"data-slot":"trailing",class:w(U.value.trailing({class:n.ui?.trailing}))},[A($.$slots,"trailing",{ui:U.value},()=>[o(D)?(m(),z(ye,{key:0,name:o(D),"data-slot":"trailingIcon",class:w(U.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:3},16,["id","model-value","default-value","class","name","disabled"]))}});export{hp as A,bp as B,yp as C,wp as D,xp as E,kp as F,Qf as _,ye as a,Ye as b,ip as c,ep as d,Yf as e,np as f,ap as g,rp as h,sp as i,Zf as j,lp as k,cp as l,op as m,Rf as n,gu as o,up as p,dp as q,gp as r,pp as s,fp as t,fu as u,tp as v,Zg as w,Xg as x,vp as y,mp as z};
|
|
15
|
+
}`}),a={style:[{innerHTML:()=>t.value,tagPriority:-2,id:"nuxt-ui-colors"}]};{const n=document.createElement("style");n.innerHTML=t.value,n.setAttribute("data-nuxt-ui-colors",""),document.head.appendChild(n),a.script=[{innerHTML:"document.head.removeChild(document.querySelector('[data-nuxt-ui-colors]'))"}]}ec(a)}),bp={install(){bo()}},Dg={slots:{root:"",wrapper:"",labelWrapper:"flex content-center items-center justify-between gap-1",label:"block font-medium text-default",container:"relative",description:"text-muted",error:"mt-2 text-error",hint:"text-muted",help:"mt-2 text-muted"},variants:{size:{xs:{root:"text-xs"},sm:{root:"text-xs"},md:{root:"text-sm"},lg:{root:"text-sm"},xl:{root:"text-base"}},required:{true:{label:"after:content-['*'] after:ms-0.5 after:text-error"}},orientation:{vertical:{container:"mt-1"},horizontal:{root:"flex justify-between place-items-baseline gap-2"}}},defaultVariants:{size:"md",orientation:"vertical"}},Vg=["id"],jg=["id"],Fg=["id"],Hg=["id"],yp={__name:"FormField",props:{as:{type:null,required:!1},name:{type:String,required:!1},errorPattern:{type:null,required:!1},label:{type:String,required:!1},description:{type:String,required:!1},help:{type:String,required:!1},error:{type:[Boolean,String],required:!1,default:void 0},hint:{type:String,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},eagerValidation:{type:Boolean,required:!1},validateOnInputDelay:{type:Number,required:!1},orientation:{type:null,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1}},setup(e){const t=e,a=Be(),n=we(),i=T(()=>X({extend:X(Dg),...n.ui?.formField||{}})({size:t.size,required:t.required,orientation:t.orientation})),r=Le(zf,null),s=T(()=>t.error||r?.value?.find(p=>p.name===t.name||t.errorPattern&&p.name?.match(t.errorPattern))?.message),l=ie(Ta()),c=l.value,d=Le(kf,void 0);return Ge(l,()=>{d&&t.name&&(d.value[t.name]={id:l.value,pattern:t.errorPattern})},{immediate:!0}),nt(as,l),nt(hn,T(()=>({error:s.value,name:t.name,size:t.size,eagerValidation:t.eagerValidation,validateOnInputDelay:t.validateOnInputDelay,errorPattern:t.errorPattern,hint:t.hint,description:t.description,help:t.help,ariaId:c}))),(p,f)=>(m(),z(o(Xe),{as:e.as,"data-orientation":e.orientation,"data-slot":"root",class:w(i.value.root({class:[t.ui?.root,t.class]}))},{default:q(()=>[$e("div",{"data-slot":"wrapper",class:w(i.value.wrapper({class:t.ui?.wrapper}))},[e.label||a.label?(m(),j("div",{key:0,"data-slot":"labelWrapper",class:w(i.value.labelWrapper({class:t.ui?.labelWrapper}))},[F(o(ya),{for:l.value,"data-slot":"label",class:w(i.value.label({class:t.ui?.label}))},{default:q(()=>[A(p.$slots,"label",{label:e.label},()=>[ce(ee(e.label),1)])]),_:3},8,["for","class"]),e.hint||a.hint?(m(),j("span",{key:0,id:`${o(c)}-hint`,"data-slot":"hint",class:w(i.value.hint({class:t.ui?.hint}))},[A(p.$slots,"hint",{hint:e.hint},()=>[ce(ee(e.hint),1)])],10,Vg)):P("",!0)],2)):P("",!0),e.description||a.description?(m(),j("p",{key:1,id:`${o(c)}-description`,"data-slot":"description",class:w(i.value.description({class:t.ui?.description}))},[A(p.$slots,"description",{description:e.description},()=>[ce(ee(e.description),1)])],10,jg)):P("",!0)],2),$e("div",{class:w([(e.label||!!a.label||e.description||!!a.description)&&i.value.container({class:t.ui?.container})])},[A(p.$slots,"default",{error:s.value}),t.error!==!1&&(typeof s.value=="string"&&s.value||a.error)?(m(),j("div",{key:0,id:`${o(c)}-error`,"data-slot":"error",class:w(i.value.error({class:t.ui?.error}))},[A(p.$slots,"error",{error:s.value},()=>[ce(ee(s.value),1)])],10,Fg)):e.help||a.help?(m(),j("div",{key:1,id:`${o(c)}-help`,"data-slot":"help",class:w(i.value.help({class:t.ui?.help}))},[A(p.$slots,"help",{help:e.help},()=>[ce(ee(e.help),1)])],10,Hg)):P("",!0)],2)]),_:3},8,["as","data-orientation","class"]))}},Gg={slots:{root:"relative inline-flex items-center",base:["w-full rounded-md border-0 appearance-none placeholder:text-dimmed focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute start-0 flex items-start",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute end-0 flex items-start",trailingIcon:"shrink-0 text-dimmed"},variants:{fieldGroup:{horizontal:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-e-none group-not-only:group-last:rounded-s-none group-not-last:group-not-first:rounded-none"},vertical:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-b-none group-not-only:group-last:rounded-t-none group-not-last:group-not-first:rounded-none"}},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2 inset-y-1",trailing:"pe-2 inset-y-1",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5 inset-y-1.5",trailing:"pe-2.5 inset-y-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5 inset-y-1.5",trailing:"pe-2.5 inset-y-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3 inset-y-2",trailing:"pe-3 inset-y-2",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3 inset-y-2",trailing:"pe-3 inset-y-2",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},autoresize:{true:{base:"resize-none"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},Kg=["id","value","name","rows","placeholder","disabled","required"],xp=Object.assign({inheritAttrs:!1},{__name:"Textarea",props:{as:{type:null,required:!1},id:{type:String,required:!1},name:{type:String,required:!1},placeholder:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},autoresize:{type:Boolean,required:!1},autoresizeDelay:{type:Number,required:!1,default:0},disabled:{type:Boolean,required:!1},rows:{type:Number,required:!1,default:3},maxrows:{type:Number,required:!1,default:0},highlight:{type:Boolean,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},emits:["update:modelValue","blur","change"],setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=Sn(n,"modelValue",i,{defaultValue:n.defaultValue}),l=we(),{emitFormFocus:c,emitFormBlur:d,emitFormInput:p,emitFormChange:f,size:u,color:g,id:h,name:v,highlight:b,disabled:x,ariaAttrs:y}=gt(n,{deferInputValidation:!0}),{isLeading:k,isTrailing:S,leadingIconName:O,trailingIconName:R}=qt(n),N=T(()=>X({extend:X(Gg),...l.ui?.textarea||{}})({color:g.value,variant:n.variant,size:u?.value,loading:n.loading,highlight:b.value,autoresize:n.autoresize,leading:k.value||!!n.avatar||!!r.leading,trailing:S.value||!!r.trailing})),D=ft("textareaRef");function Z(L){n.modelModifiers?.trim&&(L=L?.trim()??null),n.modelModifiers?.number&&(L=Oa(L)),n.modelModifiers?.nullable&&(L||=null),n.modelModifiers?.optional&&(L||=void 0),s.value=L,p()}function U(L){M(),n.modelModifiers?.lazy||Z(L.target.value)}function le(L){const $=L.target.value;n.modelModifiers?.lazy&&Z($),n.modelModifiers?.trim&&(L.target.value=$.trim()),f(),i("change",L)}function ne(L){d(),i("blur",L)}function Y(){n.autofocus&&D.value?.focus()}function M(){if(n.autoresize&&D.value){D.value.rows=n.rows;const L=D.value.style.overflow;D.value.style.overflow="hidden";const $=window.getComputedStyle(D.value),W=Number.parseInt($.paddingTop),E=Number.parseInt($.paddingBottom),pe=W+E,be=Number.parseInt($.lineHeight),{scrollHeight:ue}=D.value,xe=(ue-pe)/be;xe>n.rows&&(D.value.rows=n.maxrows?Math.min(xe,n.maxrows):xe),D.value.style.overflow=L}}return Ge(s,()=>{rt(M)}),Je(()=>{setTimeout(()=>{Y()},n.autofocusDelay),setTimeout(()=>{M()},n.autoresizeDelay)}),t({textareaRef:D}),(L,$)=>(m(),z(o(Xe),{as:e.as,"data-slot":"root",class:w(N.value.root({class:[n.ui?.root,n.class]}))},{default:q(()=>[$e("textarea",H({id:o(h),ref_key:"textareaRef",ref:D,value:o(s),name:o(v),rows:e.rows,placeholder:e.placeholder,"data-slot":"base",class:N.value.base({class:n.ui?.base}),disabled:o(x),required:e.required},{...L.$attrs,...o(y)},{onInput:U,onBlur:ne,onChange:le,onFocus:$[0]||($[0]=(...W)=>o(c)&&o(c)(...W))}),null,16,Kg),A(L.$slots,"default",{ui:N.value}),o(k)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(N.value.leading({class:n.ui?.leading}))},[A(L.$slots,"leading",{ui:N.value},()=>[o(k)&&o(O)?(m(),z(ye,{key:0,name:o(O),"data-slot":"leadingIcon",class:w(N.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.leadingAvatarSize||N.value.leadingAvatarSize()},e.avatar,{"data-slot":"leadingAvatar",class:N.value.leadingAvatar({class:n.ui?.leadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),o(S)||r.trailing?(m(),j("span",{key:1,"data-slot":"trailing",class:w(N.value.trailing({class:n.ui?.trailing}))},[A(L.$slots,"trailing",{ui:N.value},()=>[o(R)?(m(),z(ye,{key:0,name:o(R),"data-slot":"trailingIcon",class:w(N.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:3},8,["as","class"]))}});function Wg(e,t){if(typeof e!="object"||e===null)return!1;const a=ke(e,t);return a!=null&&a!==""}function Ni(e,t){return t?{xs:44,sm:48,md:52,lg:56,xl:60}[e]:{xs:24,sm:28,md:32,lg:36,xl:40}[e]}function Ug(e,t,a,n){const i=Ni(t,!0),r=Ni(t,!1);return n?()=>i:a?s=>Wg(e[s],a)?i:r:()=>r}const Yg={slots:{base:["relative group rounded-md inline-flex items-center focus:outline-none disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",value:"truncate pointer-events-none",placeholder:"truncate text-dimmed",arrow:"fill-default",content:["max-h-60 w-(--reka-select-trigger-width) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-select-content-transform-origin) pointer-events-auto flex flex-col","origin-(--reka-combobox-content-transform-origin) w-(--reka-combobox-trigger-width)"],viewport:"relative scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",empty:"text-center text-muted",label:"font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:["group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75 text-default data-highlighted:not-data-disabled:text-highlighted data-highlighted:not-data-disabled:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["shrink-0 text-dimmed group-data-highlighted:not-group-data-disabled:text-default","transition-colors"],itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemLeadingChip:"shrink-0",itemLeadingChipSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemWrapper:"flex-1 flex flex-col min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",input:"border-b border-default",focusScope:"flex flex-col min-h-0",trailingClear:"p-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1 text-[10px]/3 gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1 text-xs"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",label:"p-1.5 text-[10px]/3 gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemLeadingChip:"size-4",itemLeadingChipSize:"sm",itemTrailingIcon:"size-4",empty:"p-1.5 text-xs"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-1.5 text-sm"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",label:"p-2 text-xs gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemLeadingChip:"size-5",itemLeadingChipSize:"md",itemTrailingIcon:"size-5",empty:"p-2 text-sm"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",label:"p-2 text-sm gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemLeadingChip:"size-6",itemLeadingChipSize:"lg",itemTrailingIcon:"size-6",empty:"p-2 text-base"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"},virtualize:{true:{viewport:"p-1 isolate"},false:{viewport:"divide-y divide-default"}}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},kp=Object.assign({inheritAttrs:!1},{__name:"SelectMenu",props:dt({id:{type:String,required:!1},placeholder:{type:String,required:!1},searchInput:{type:[Boolean,Object],required:!1,default:!0},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},selectedIcon:{type:null,required:!1},clear:{type:[Boolean,Object],required:!1},clearIcon:{type:null,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},virtualize:{type:[Boolean,Object],required:!1,default:!1},valueKey:{type:null,required:!1},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},items:{type:null,required:!1},defaultValue:{type:null,required:!1},modelValue:{type:null,required:!1},modelModifiers:{type:Object,required:!1},multiple:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},createItem:{type:[Boolean,String,Object],required:!1},filterFields:{type:Array,required:!1},ignoreFilter:{type:Boolean,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},class:{type:null,required:!1},ui:{type:null,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},name:{type:String,required:!1},resetSearchTermOnBlur:{type:Boolean,required:!1,default:!0},resetSearchTermOnSelect:{type:Boolean,required:!1,default:!0},resetModelValueOnClear:{type:Boolean,required:!1,default:!0},highlightOnHover:{type:Boolean,required:!1},by:{type:[String,Function],required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},{searchTerm:{type:String,default:""},searchTermModifiers:{}}),emits:dt(["update:open","change","blur","focus","create","clear","highlight","update:modelValue"],["update:searchTerm"]),setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=Xt(e,"searchTerm",{type:String,default:""}),{t:l}=bt(),c=we(),{contains:d}=Rl({sensitivity:"base"}),p=Ke(je(n,"modelValue","defaultValue","open","defaultOpen","required","multiple","resetSearchTermOnBlur","resetSearchTermOnSelect","resetModelValueOnClear","highlightOnHover","by"),i),f=yt(he(()=>n.portal)),u=he(()=>Ze(n.content,{side:"bottom",sideOffset:8,collisionPadding:8,position:"popper"})),g=he(()=>n.arrow),h=T(()=>typeof n.clear=="object"?n.clear:{}),v=he(()=>n.virtualize?Ze(typeof n.virtualize=="boolean"?{}:n.virtualize,{estimateSize:Ug(K.value,E.value||"md",n.descriptionKey,!!r["item-description"])}):!1),b=he(()=>Ze(n.searchInput,{placeholder:l("selectMenu.search"),variant:"none"})),{emitFormBlur:x,emitFormFocus:y,emitFormInput:k,emitFormChange:S,size:O,color:R,id:N,name:D,highlight:Z,disabled:U,ariaAttrs:le}=gt(n),{orientation:ne,size:Y}=It(n),{isLeading:M,isTrailing:L,leadingIconName:$,trailingIconName:W}=qt(he(()=>Ze(n,{trailingIcon:c.ui.icons.chevronDown}))),E=T(()=>Y.value||O.value),[pe,be]=xa(),[ue,xe]=xa({props:{item:{type:[Object,String,Number,Boolean],required:!0},index:{type:Number,required:!1}}}),B=T(()=>X({extend:X(Yg),...c.ui?.selectMenu||{}})({color:R.value,variant:n.variant,size:E?.value,loading:n.loading,highlight:Z.value,leading:M.value||!!n.avatar||!!r.leading,trailing:L.value||!!r.trailing,fieldGroup:ne.value,virtualize:!!n.virtualize}));function de(G){if(n.multiple&&Array.isArray(G)){const oe=G.map(V=>ka(Te.value,V,{labelKey:n.labelKey,valueKey:n.valueKey,by:n.by})).filter(V=>V!=null&&V!=="");return oe.length>0?oe.join(", "):void 0}return ka(Te.value,G,{labelKey:n.labelKey,valueKey:n.valueKey,by:n.by})}const ve=T(()=>n.items?.length?qn(n.items)?n.items:[n.items]:[]),Te=T(()=>ve.value.flatMap(G=>G)),I=T(()=>{if(n.ignoreFilter||!s.value)return ve.value;const G=Array.isArray(n.filterFields)?n.filterFields:[n.labelKey];return ve.value.map(oe=>oe.filter(V=>V==null?!1:typeof V!="object"?d(String(V),s.value):V.type&&["label","separator"].includes(V.type)?!0:G.some(Ce=>{const qe=ke(V,Ce);return qe!=null&&d(String(qe),s.value)}))).filter(oe=>oe.filter(V=>!me(V)||!V.type||!["label","separator"].includes(V.type)).length>0)}),K=T(()=>I.value.flatMap(G=>G)),C=T(()=>{if(!n.createItem||!s.value)return!1;const G=n.valueKey?{[n.valueKey]:s.value}:s.value;return typeof n.createItem=="object"&&n.createItem.when==="always"||n.createItem==="always"?!K.value.find(oe=>rr(oe,G,n.by??n.valueKey)):!K.value.length}),_=T(()=>typeof n.createItem=="object"?n.createItem.position:"bottom"),ae=ft("triggerRef");function ze(){n.autofocus&&ae.value?.$el?.focus({focusVisible:!0})}Je(()=>{setTimeout(()=>{ze()},n.autofocusDelay)});function re(G){if(Qi(n.modelValue)===G)return;n.modelModifiers?.trim&&(G=G?.trim()??null),n.modelModifiers?.number&&(G=Oa(G)),n.modelModifiers?.nullable&&(G??=null),n.modelModifiers?.optional&&(G??=void 0);const oe=new Event("change",{target:{value:G}});i("change",oe),S(),k(),n.resetSearchTermOnSelect&&(s.value="")}function se(G){let oe;if(G){const V=new FocusEvent("focus");i("focus",V),y(),clearTimeout(oe)}else{const V=new FocusEvent("blur");i("blur",V),x(),n.resetSearchTermOnBlur&&(oe=setTimeout(()=>{s.value=""},100))}}function Ae(G){G.preventDefault(),G.stopPropagation(),i("create",s.value)}function st(G,oe){if(me(oe)){if(oe.disabled){G.preventDefault();return}oe.onSelect?.(G)}}function me(G){return typeof G=="object"&&G!==null}function te(G){return n.multiple&&Array.isArray(G)?G.length===0:G==null||G===""}function Oe(){i("clear")}const Re=ft("viewportRef");return t({triggerRef:he(()=>ae.value?.$el),viewportRef:he(()=>Re.value)}),(G,oe)=>(m(),j(ge,null,[F(o(pe),null,{default:q(()=>[F(o(Mn),{"data-slot":"item",class:w(B.value.item({class:n.ui?.item})),value:s.value,onSelect:Ae},{default:q(()=>[$e("span",{"data-slot":"itemLabel",class:w(B.value.itemLabel({class:n.ui?.itemLabel}))},[A(G.$slots,"create-item-label",{item:s.value},()=>[ce(ee(o(l)("selectMenu.create",{label:s.value})),1)])],2)]),_:3},8,["class","value"])]),_:3}),F(o(ue),null,{default:q(({item:V,index:Ce})=>[me(V)&&V.type==="label"?(m(),z(o(yl),{key:0,"data-slot":"label",class:w(B.value.label({class:[n.ui?.label,V.ui?.label,V.class]}))},{default:q(()=>[ce(ee(o(ke)(V,n.labelKey)),1)]),_:2},1032,["class"])):me(V)&&V.type==="separator"?(m(),z(o(xl),{key:1,"data-slot":"separator",class:w(B.value.separator({class:[n.ui?.separator,V.ui?.separator,V.class]}))},null,8,["class"])):(m(),z(o(Mn),{key:2,"data-slot":"item",class:w(B.value.item({class:[n.ui?.item,me(V)&&V.ui?.item,me(V)&&V.class]})),disabled:me(V)&&V.disabled,value:n.valueKey&&me(V)?o(ke)(V,n.valueKey):V,onSelect:qe=>st(qe,V)},{default:q(()=>[A(G.$slots,"item",{item:V,index:Ce,ui:B.value},()=>[A(G.$slots,"item-leading",{item:V,index:Ce,ui:B.value},()=>[me(V)&&V.icon?(m(),z(ye,{key:0,name:V.icon,"data-slot":"itemLeadingIcon",class:w(B.value.itemLeadingIcon({class:[n.ui?.itemLeadingIcon,V.ui?.itemLeadingIcon]}))},null,8,["name","class"])):me(V)&&V.avatar?(m(),z(Qe,H({key:1,size:V.ui?.itemLeadingAvatarSize||n.ui?.itemLeadingAvatarSize||B.value.itemLeadingAvatarSize()},V.avatar,{"data-slot":"itemLeadingAvatar",class:B.value.itemLeadingAvatar({class:[n.ui?.itemLeadingAvatar,V.ui?.itemLeadingAvatar]})}),null,16,["size","class"])):me(V)&&V.chip?(m(),z($n,H({key:2,size:n.ui?.itemLeadingChipSize||B.value.itemLeadingChipSize(),inset:"",standalone:""},V.chip,{"data-slot":"itemLeadingChip",class:B.value.itemLeadingChip({class:[n.ui?.itemLeadingChip,V.ui?.itemLeadingChip]})}),null,16,["size","class"])):P("",!0)]),$e("span",{"data-slot":"itemWrapper",class:w(B.value.itemWrapper({class:[n.ui?.itemWrapper,me(V)&&V.ui?.itemWrapper]}))},[$e("span",{"data-slot":"itemLabel",class:w(B.value.itemLabel({class:[n.ui?.itemLabel,me(V)&&V.ui?.itemLabel]}))},[A(G.$slots,"item-label",{item:V,index:Ce},()=>[ce(ee(me(V)?o(ke)(V,n.labelKey):V),1)])],2),me(V)&&(o(ke)(V,n.descriptionKey)||r["item-description"])?(m(),j("span",{key:0,"data-slot":"itemDescription",class:w(B.value.itemDescription({class:[n.ui?.itemDescription,me(V)&&V.ui?.itemDescription]}))},[A(G.$slots,"item-description",{item:V,index:Ce},()=>[ce(ee(o(ke)(V,n.descriptionKey)),1)])],2)):P("",!0)],2),$e("span",{"data-slot":"itemTrailing",class:w(B.value.itemTrailing({class:[n.ui?.itemTrailing,me(V)&&V.ui?.itemTrailing]}))},[A(G.$slots,"item-trailing",{item:V,index:Ce,ui:B.value}),F(o(kl),{"as-child":""},{default:q(()=>[F(ye,{name:e.selectedIcon||o(c).ui.icons.check,"data-slot":"itemTrailingIcon",class:w(B.value.itemTrailingIcon({class:[n.ui?.itemTrailingIcon,me(V)&&V.ui?.itemTrailingIcon]}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:2},1032,["class","disabled","value","onSelect"]))]),_:3}),F(o($l),H({id:o(N)},{...o(p),...G.$attrs,...o(le)},{"ignore-filter":"","as-child":"",name:o(D),disabled:o(U),"onUpdate:modelValue":re,"onUpdate:open":se}),{default:q(({modelValue:V,open:Ce})=>[F(o(wl),{"as-child":""},{default:q(()=>[F(o(zl),{ref_key:"triggerRef",ref:ae,"data-slot":"base",class:w(B.value.base({class:[n.ui?.base,n.class]})),tabindex:"0"},{default:q(()=>[o(M)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(B.value.leading({class:n.ui?.leading}))},[A(G.$slots,"leading",{modelValue:V,open:Ce,ui:B.value},()=>[o(M)&&o($)?(m(),z(ye,{key:0,name:o($),"data-slot":"leadingIcon",class:w(B.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.itemLeadingAvatarSize||B.value.itemLeadingAvatarSize()},e.avatar,{"data-slot":"itemLeadingAvatar",class:B.value.itemLeadingAvatar({class:n.ui?.itemLeadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),A(G.$slots,"default",{modelValue:V,open:Ce,ui:B.value},()=>[(m(!0),j(ge,null,Ie([de(V)],qe=>(m(),j(ge,{key:qe},[qe!=null?(m(),j("span",{key:0,"data-slot":"value",class:w(B.value.value({class:n.ui?.value}))},ee(qe),3)):(m(),j("span",{key:1,"data-slot":"placeholder",class:w(B.value.placeholder({class:n.ui?.placeholder}))},ee(e.placeholder??" "),3))],64))),128))]),o(L)||r.trailing||e.clear?(m(),j("span",{key:1,"data-slot":"trailing",class:w(B.value.trailing({class:n.ui?.trailing}))},[A(G.$slots,"trailing",{modelValue:V,open:Ce,ui:B.value},()=>[e.clear&&!te(V)?(m(),z(o(Sl),{key:0,"as-child":""},{default:q(()=>[F(Ye,H({as:"span",icon:e.clearIcon||o(c).ui.icons.close,variant:"link",color:"neutral",tabindex:"-1"},h.value,{"data-slot":"trailingClear",class:B.value.trailingClear({class:n.ui?.trailingClear}),onClick:Ot(Oe,["stop"])}),null,16,["icon","class"])]),_:1})):o(W)?(m(),z(ye,{key:1,name:o(W),"data-slot":"trailingIcon",class:w(B.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:2},1032,["class"])]),_:2},1024),F(o(ql),Ne(He(o(f))),{default:q(()=>[F(o(Il),H({"data-slot":"content",class:B.value.content({class:n.ui?.content})},u.value),{default:q(()=>[F(o(Cl),{trapped:"","data-slot":"focusScope",class:w(B.value.focusScope({class:n.ui?.focusScope}))},{default:q(()=>[A(G.$slots,"content-top"),e.searchInput?(m(),z(o(Tl),{key:0,modelValue:s.value,"onUpdate:modelValue":oe[1]||(oe[1]=qe=>s.value=qe),"display-value":()=>s.value,"as-child":""},{default:q(()=>[F(Yf,H({autofocus:"",autocomplete:"off",size:e.size},b.value,{"data-slot":"input",class:B.value.input({class:n.ui?.input}),onChange:oe[0]||(oe[0]=Ot(()=>{},["stop"]))}),null,16,["size","class"])]),_:1},8,["modelValue","display-value"])):P("",!0),F(o(Al),{"data-slot":"empty",class:w(B.value.empty({class:n.ui?.empty}))},{default:q(()=>[A(G.$slots,"empty",{searchTerm:s.value},()=>[ce(ee(s.value?o(l)("selectMenu.noMatch",{searchTerm:s.value}):o(l)("selectMenu.noData")),1)])]),_:3},8,["class"]),$e("div",{ref_key:"viewportRef",ref:Re,role:"presentation","data-slot":"viewport",class:w(B.value.viewport({class:n.ui?.viewport}))},[e.virtualize?(m(),j(ge,{key:0},[C.value&&_.value==="top"?(m(),z(o(be),{key:0})):P("",!0),F(o(Ol),H({options:K.value,"text-content":qe=>me(qe)?o(ke)(qe,n.labelKey):String(qe)},v.value),{default:q(({option:qe,virtualItem:lt})=>[F(o(xe),{item:qe,index:lt.index},null,8,["item","index"])]),_:1},16,["options","text-content"]),C.value&&_.value==="bottom"?(m(),z(o(be),{key:1})):P("",!0)],64)):(m(),j(ge,{key:1},[C.value&&_.value==="top"?(m(),z(o(La),{key:0,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[F(o(be))]),_:1},8,["class"])):P("",!0),(m(!0),j(ge,null,Ie(I.value,(qe,lt)=>(m(),z(o(La),{key:`group-${lt}`,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[(m(!0),j(ge,null,Ie(qe,(Ct,Dt)=>(m(),z(o(xe),{key:`group-${lt}-${Dt}`,item:Ct,index:Dt},null,8,["item","index"]))),128))]),_:2},1032,["class"]))),128)),C.value&&_.value==="bottom"?(m(),z(o(La),{key:1,"data-slot":"group",class:w(B.value.group({class:n.ui?.group}))},{default:q(()=>[F(o(be))]),_:1},8,["class"])):P("",!0)],64))],2),A(G.$slots,"content-bottom")]),_:3},8,["class"]),e.arrow?(m(),z(o(Pl),H({key:0},g.value,{"data-slot":"arrow",class:B.value.arrow({class:n.ui?.arrow})}),null,16,["class"])):P("",!0)]),_:3},16,["class"])]),_:3},16)]),_:3},16,["id","name","disabled"])],64))}}),_g={slots:{root:["relative inline-flex items-center","flex-wrap"],base:["rounded-md","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed",item:'px-1.5 py-0.5 rounded-sm font-medium inline-flex items-center gap-0.5 ring ring-inset ring-accented bg-elevated text-default data-disabled:cursor-not-allowed data-disabled:opacity-75 wrap-anywhere data-[state="active"]:bg-accented',itemText:"",itemDelete:["inline-flex items-center rounded-xs text-dimmed hover:text-default hover:bg-accented/75 disabled:pointer-events-none","transition-colors"],itemDeleteIcon:"shrink-0",input:"flex-1 border-0 bg-transparent placeholder:text-dimmed focus:outline-none disabled:cursor-not-allowed disabled:opacity-75"},variants:{fieldGroup:{horizontal:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-e-none group-not-only:group-last:rounded-s-none group-not-last:group-not-first:rounded-none"},vertical:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-b-none group-not-only:group-last:rounded-t-none group-not-last:group-not-first:rounded-none"}},size:{xs:{base:"px-2 py-1 text-xs gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",item:"text-[10px]/3",itemDeleteIcon:"size-3"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4",item:"text-[10px]/3",itemDeleteIcon:"size-3"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",item:"text-xs",itemDeleteIcon:"size-3.5"},lg:{base:"px-3 py-2 text-sm gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5",item:"text-xs",itemDeleteIcon:"size-3.5"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6",item:"text-sm",itemDeleteIcon:"size-4"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated has-focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated has-focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-error"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"has-focus-visible:ring-2 has-focus-visible:ring-inset has-focus-visible:ring-inverted"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},wp=Object.assign({inheritAttrs:!1},{__name:"InputTags",props:{as:{type:null,required:!1},placeholder:{type:String,required:!1},maxLength:{type:Number,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},deleteIcon:{type:null,required:!1},highlight:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:null,required:!1},modelValue:{type:[Array,null],required:!1},defaultValue:{type:Array,required:!1},addOnPaste:{type:Boolean,required:!1},addOnTab:{type:Boolean,required:!1},addOnBlur:{type:Boolean,required:!1},duplicate:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},delimiter:{type:null,required:!1},max:{type:Number,required:!1},id:{type:String,required:!1},convertValue:{type:Function,required:!1},displayValue:{type:Function,required:!1},name:{type:String,required:!1},required:{type:Boolean,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},emits:["change","blur","focus","update:modelValue","invalid","addTag","removeTag"],setup(e,{expose:t,emit:a}){const n=e,i=a,r=Be(),s=we(),l=Ke(je(n,"as","addOnPaste","addOnTab","addOnBlur","duplicate","delimiter","max","convertValue","displayValue","required"),i),{emitFormBlur:c,emitFormFocus:d,emitFormChange:p,emitFormInput:f,size:u,color:g,id:h,name:v,highlight:b,disabled:x,ariaAttrs:y}=gt(n),{orientation:k,size:S}=It(n),{isLeading:O,isTrailing:R,leadingIconName:N,trailingIconName:D}=qt(n),Z=T(()=>S.value||u.value),U=T(()=>X({extend:X(_g),...s.ui?.inputTags||{}})({color:g.value,variant:n.variant,size:Z?.value,loading:n.loading,highlight:b.value,leading:O.value||!!n.avatar||!!r.leading,trailing:R.value||!!r.trailing,fieldGroup:k.value})),le=ft("inputRef");function ne(){n.autofocus&&le.value?.$el?.focus()}Je(()=>{setTimeout(()=>{ne()},n.autofocusDelay)});function Y($){if(Qi(n.modelValue)===$)return;const W=new Event("change",{target:{value:$}});i("change",W),p(),f()}function M($){i("blur",$),c()}function L($){i("focus",$),d()}return t({inputRef:he(()=>le.value?.$el)}),($,W)=>(m(),z(o(Ml),H({id:o(h),"model-value":e.modelValue,"default-value":e.defaultValue,"data-slot":"root",class:U.value.root({class:[U.value.base({class:n.ui?.base}),n.ui?.root,n.class]})},o(l),{name:o(v),disabled:o(x),"onUpdate:modelValue":Y}),{default:q(({modelValue:E})=>[(m(!0),j(ge,null,Ie(E,(pe,be)=>(m(),z(o(El),{key:be,value:pe,"data-slot":"item",class:w(U.value.item({class:[n.ui?.item]}))},{default:q(()=>[F(o(Bl),{"data-slot":"itemText",class:w(U.value.itemText({class:[n.ui?.itemText]}))},{default:q(()=>[r["item-text"]?A($.$slots,"item-text",{key:0,item:pe,index:be,ui:U.value}):P("",!0)]),_:2},1032,["class"]),F(o(Ll),{"data-slot":"itemDelete",class:w(U.value.itemDelete({class:[n.ui?.itemDelete]})),disabled:o(x)},{default:q(()=>[A($.$slots,"item-delete",{item:pe,index:be,ui:U.value},()=>[F(ye,{name:e.deleteIcon||o(s).ui.icons.close,"data-slot":"itemDeleteIcon",class:w(U.value.itemDeleteIcon({class:[n.ui?.itemDeleteIcon]}))},null,8,["name","class"])])]),_:2},1032,["class","disabled"])]),_:2},1032,["value","class"]))),128)),F(o(Nl),H({ref_key:"inputRef",ref:le},{...$.$attrs,...o(y)},{placeholder:e.placeholder,"max-length":e.maxLength,"data-slot":"input",class:U.value.input({class:n.ui?.input}),onBlur:M,onFocus:L}),null,16,["placeholder","max-length","class"]),A($.$slots,"default",{ui:U.value}),o(O)||e.avatar||r.leading?(m(),j("span",{key:0,"data-slot":"leading",class:w(U.value.leading({class:n.ui?.leading}))},[A($.$slots,"leading",{ui:U.value},()=>[o(O)&&o(N)?(m(),z(ye,{key:0,name:o(N),"data-slot":"leadingIcon",class:w(U.value.leadingIcon({class:n.ui?.leadingIcon}))},null,8,["name","class"])):e.avatar?(m(),z(Qe,H({key:1,size:n.ui?.leadingAvatarSize||U.value.leadingAvatarSize()},e.avatar,{"data-slot":"leadingAvatar",class:U.value.leadingAvatar({class:n.ui?.leadingAvatar})}),null,16,["size","class"])):P("",!0)])],2)):P("",!0),o(R)||r.trailing?(m(),j("span",{key:1,"data-slot":"trailing",class:w(U.value.trailing({class:n.ui?.trailing}))},[A($.$slots,"trailing",{ui:U.value},()=>[o(D)?(m(),z(ye,{key:0,name:o(D),"data-slot":"trailingIcon",class:w(U.value.trailingIcon({class:n.ui?.trailingIcon}))},null,8,["name","class"])):P("",!0)])],2)):P("",!0)]),_:3},16,["id","model-value","default-value","class","name","disabled"]))}});export{hp as A,bp as B,yp as C,wp as D,xp as E,kp as F,Qf as _,ye as a,Ye as b,ip as c,ep as d,Yf as e,np as f,ap as g,rp as h,sp as i,Zf as j,lp as k,cp as l,op as m,up as n,Rf as o,gu as p,dp as q,gp as r,pp as s,fp as t,fu as u,tp as v,Zg as w,Xg as x,vp as y,mp as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as a}from"./index-
|
|
1
|
+
import{N as a}from"./index-DS1rzk1I.js";import"./vendor-reka-ui-CnB0mMNX.js";import"./vendor-nuxt-ui-BYU7dz8t.js";import"./vendor-snapdom-XnBoh1gd.js";class u{async getVersion(){return"0.24.1"}async fetchRemoteConfig(e){try{const r=await fetch(e);return r.ok?{success:!0,data:await r.json()}:{success:!1,error:`HTTP ${r.status}`}}catch(r){return{success:!1,error:String(r)}}}setThemeSource(e){}async getOpenAtLogin(){return!1}async setOpenAtLogin(e){return{success:!1,error:"Not available in web mode"}}async getAnalyticsEnabled(){return!1}async setAnalyticsEnabled(e){return{success:!1}}async showOpenDialog(e){return{canceled:!0,filePaths:[]}}async copyImageToClipboard(e){return{success:!1,error:"Not available in web mode"}}async checkUpdate(){try{return await(await a("/_web/system/check-update")).json()}catch(e){return{hasUpdate:!1,currentVersion:"unknown",error:e instanceof Error?e.message:String(e)}}}async performUpdate(){return{success:!1,error:"Web update is unavailable. Run clb update in your terminal."}}async relaunch(){window.location.reload()}}export{u as WebPlatformAdapter};
|
package/dist-web/index.html
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
<title>ChatLab</title>
|
|
6
6
|
<!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
|
|
7
7
|
<link rel="icon" href="/assets/imgs/favicon.ico" />
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-DS1rzk1I.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/vendor-reka-ui-CnB0mMNX.js">
|
|
10
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-nuxt-ui-
|
|
10
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-nuxt-ui-BYU7dz8t.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/vendor-snapdom-XnBoh1gd.js">
|
|
12
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
12
|
+
<link rel="stylesheet" crossorigin href="/assets/index-DB-iqXzV.css">
|
|
13
13
|
</head>
|
|
14
14
|
|
|
15
15
|
<body>
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/cli.ts","../src/http/port.ts"],"sourcesContent":["/**\n * ChatLab CLI entry point\n *\n * Dev: pnpm --filter chatlab-cli run cli -- sessions\n */\n\nimport * as fs from 'fs'\nimport { execSync } from 'child_process'\nimport { Command } from 'commander'\nimport { DEFAULT_API_PORT, loadConfig, getConfigPath } from '@openchatlab/config'\nimport {\n NodePathProvider,\n DatabaseManager,\n applyPendingNodeDataDirMigrationIfNeeded,\n hasPendingElectronDataWarning,\n verifyCliDataPath,\n} from '@openchatlab/node-runtime'\nimport {\n getSessionMeta,\n getSessionOverview,\n getMemberActivity,\n searchMessagesLike,\n getMembers,\n executeReadonlySql,\n} from '@openchatlab/core'\nimport { getVersion } from './version'\nimport { resolveCliPath } from './paths'\nimport { isPortAvailable, formatPortInUseError } from './http/port'\n\nconst program = new Command()\n\nprogram.name('chatlab').description('ChatLab - Chat history analysis tool').version(getVersion(), '-v, --version')\n\nprogram.hook('preAction', async () => {\n const { checkForUpdatesInteractive } = await import('./update-checker')\n await checkForUpdatesInteractive()\n})\n\nprogram\n .command('sessions')\n .description('List all imported chat sessions')\n .option('--format <format>', 'Output format (table|json)', 'table')\n .action((options) => {\n const { dbManager } = initRuntime()\n const sessionIds = dbManager.listSessionIds()\n\n if (sessionIds.length === 0) {\n console.log('No chat sessions found.')\n console.log(`Data directory: ${dbManager['pathProvider'].getUserDataDir()}`)\n dbManager.closeAll()\n return\n }\n\n const sessions = sessionIds\n .map((id) => {\n const db = dbManager.open(id)\n if (!db) return null\n const meta = getSessionMeta(db)\n if (!meta) return null\n const overview = getSessionOverview(db)\n return { id, ...meta, ...overview }\n })\n .filter(Boolean)\n\n if (options.format === 'json') {\n console.log(JSON.stringify(sessions, null, 2))\n } else {\n console.log(`${sessions.length} session(s) found:\\n`)\n for (const s of sessions) {\n if (!s) continue\n const timeRange = formatTimeRange(s.firstMessageTs, s.lastMessageTs)\n console.log(` ${s.name}`)\n console.log(` ID: ${s.id}`)\n console.log(\n ` Platform: ${s.platform} | Type: ${s.type} | Members: ${s.totalMembers} | Messages: ${s.totalMessages}`\n )\n if (timeRange) console.log(` Range: ${timeRange}`)\n console.log()\n }\n }\n\n dbManager.closeAll()\n })\n\nprogram\n .command('stats <session-id>')\n .description('Show session statistics overview')\n .option('--format <format>', 'Output format (table|json)', 'table')\n .option('--top <n>', 'Show top N active members', '10')\n .action((sessionId, options) => {\n const { dbManager } = initRuntime()\n const db = dbManager.open(sessionId)\n if (!db) {\n console.error(`Session ${sessionId} not found`)\n process.exit(1)\n }\n\n const meta = getSessionMeta(db)\n const overview = getSessionOverview(db)\n const topMembers = getMemberActivity(db).slice(0, parseInt(options.top))\n\n if (options.format === 'json') {\n console.log(JSON.stringify({ meta, overview, topMembers }, null, 2))\n } else {\n console.log(`\\nSession: ${meta?.name}`)\n console.log(`Platform: ${meta?.platform} | Type: ${meta?.type}`)\n console.log(`Total messages: ${overview.totalMessages}`)\n console.log(`Total members: ${overview.totalMembers}`)\n console.log(`Time range: ${formatTimeRange(overview.firstMessageTs, overview.lastMessageTs)}`)\n\n if (topMembers.length > 0) {\n console.log(`\\nActivity ranking (Top ${options.top}):`)\n for (const [i, m] of topMembers.entries()) {\n console.log(` ${i + 1}. ${m.name} - ${m.messageCount} messages (${m.percentage}%)`)\n }\n }\n }\n\n dbManager.closeAll()\n })\n\nprogram\n .command('search <session-id> <keyword>')\n .description('Search messages by keyword')\n .option('--limit <n>', 'Max results to return', '20')\n .option('--format <format>', 'Output format (table|json)', 'table')\n .action((sessionId, keyword, options) => {\n const { dbManager } = initRuntime()\n const db = dbManager.open(sessionId)\n if (!db) {\n console.error(`Session ${sessionId} not found`)\n process.exit(1)\n }\n\n const limit = parseInt(options.limit)\n const result = searchMessagesLike(db, keyword, { limit })\n\n if (options.format === 'json') {\n console.log(JSON.stringify(result, null, 2))\n } else {\n console.log(\n `Search \"${keyword}\" - ${result.total} result(s)${result.hasMore ? ' (showing first ' + limit + ')' : ''}:\\n`\n )\n for (const msg of result.messages) {\n const time = new Date(msg.timestamp * 1000).toLocaleString()\n console.log(` [${time}] ${msg.senderName}: ${msg.content}`)\n }\n }\n\n dbManager.closeAll()\n })\n\nprogram\n .command('members <session-id>')\n .description('List session members')\n .option('--format <format>', 'Output format (table|json)', 'table')\n .action((sessionId, options) => {\n const { dbManager } = initRuntime()\n const db = dbManager.open(sessionId)\n if (!db) {\n console.error(`Session ${sessionId} not found`)\n process.exit(1)\n }\n\n const members = getMembers(db)\n\n if (options.format === 'json') {\n console.log(JSON.stringify(members, null, 2))\n } else {\n console.log(`${members.length} member(s):\\n`)\n for (const [i, m] of members.entries()) {\n console.log(` ${i + 1}. ${m.name} (${m.platformId}) - ${m.messageCount} messages`)\n }\n }\n\n dbManager.closeAll()\n })\n\nprogram\n .command('query <session-id>')\n .description('Execute a read-only SQL query on a session database')\n .requiredOption('--sql <sql>', 'SQL query statement')\n .option('--format <format>', 'Output format (table|json)', 'table')\n .action((sessionId, options) => {\n const { dbManager } = initRuntime()\n const db = dbManager.open(sessionId)\n if (!db) {\n console.error(`Session ${sessionId} not found`)\n process.exit(1)\n }\n\n try {\n const result = executeReadonlySql(db, options.sql)\n if (options.format === 'json') {\n console.log(JSON.stringify(result, null, 2))\n } else {\n if (result.rows.length === 0) {\n console.log('No results.')\n } else {\n printTable(result.columns, result.rows)\n console.log(`\\n${result.rowCount} row(s)${result.truncated ? ' (truncated)' : ''}`)\n }\n }\n } catch (err) {\n console.error(`SQL error: ${err instanceof Error ? err.message : err}`)\n process.exit(1)\n }\n\n dbManager.closeAll()\n })\n\nprogram\n .command('import <file>')\n .description('Import a chat history file (14+ formats: QQ/WeChat/Telegram/WhatsApp/LINE/Discord/Instagram, etc.)')\n .option('--session-id <id>', 'Specify session ID (auto-generated if omitted)')\n .option('--format <id>', 'Specify format ID (skip auto-detection)')\n .action(async (file, options) => {\n if (!fs.existsSync(file)) {\n console.error(`File not found: ${file}`)\n process.exit(1)\n }\n\n const { streamImport, detectFormat } = await import('./import')\n const { dbManager } = initRuntime()\n const nativeBinding = resolveNativeBinding()\n\n const format = detectFormat(file)\n if (!format && !options.format) {\n console.error(`Unrecognized file format: ${file}`)\n console.error('Use --format <id> to specify manually, or run \"chatlab formats\" to see supported formats')\n process.exit(1)\n }\n\n console.log(`Importing: ${file}`)\n if (format) console.log(` Format: ${format.name} (${format.platform})`)\n\n try {\n const result = await streamImport(dbManager, file, {\n formatId: options.format,\n nativeBinding,\n onProgress: (p) => {\n process.stdout.write(`\\r ${p.stage}: ${p.progress}%`)\n },\n })\n\n if (result.success) {\n console.log(`\\n\\nImport succeeded!`)\n console.log(` Session ID: ${result.sessionId}`)\n console.log(` Messages written: ${result.diagnostics?.messagesWritten ?? 0}`)\n console.log(` Messages skipped: ${result.diagnostics?.messagesSkipped ?? 0}`)\n } else {\n console.error(`\\n\\nImport failed: ${result.error}`)\n process.exit(1)\n }\n } catch (err) {\n console.error(`\\n\\nImport error: ${err instanceof Error ? err.message : err}`)\n process.exit(1)\n } finally {\n dbManager.closeAll()\n }\n })\n\nprogram\n .command('formats')\n .description('List all supported chat history formats')\n .action(async () => {\n const { getSupportedFormats } = await import('./import')\n const formats = getSupportedFormats()\n console.log(`${formats.length} supported format(s):\\n`)\n for (const f of formats) {\n console.log(` ${f.id.padEnd(30)} ${f.name} (${f.platform}) [${f.extensions.join(', ')}]`)\n }\n })\n\nprogram\n .command('mcp')\n .description('Start MCP Server (stdio transport, for ClaudeCode / Cursor / AI agents)')\n .action(async () => {\n const { startCliMcpServer } = await import('./mcp')\n await startCliMcpServer()\n })\n\nprogram\n .command('start')\n .description('Start ChatLab (HTTP API + Web UI)')\n .option('--port <port>', 'Server port', String(DEFAULT_API_PORT))\n .option('--host <host>', 'Listen address', '127.0.0.1')\n .option('--token <token>', 'Custom Bearer Token (reads from config or auto-generates if omitted)')\n .option('--headless', 'API-only mode, do not serve the Web UI')\n .option('--require-auth', 'Require Bearer token for all routes including /_web/*')\n .option('--no-open', 'Do not auto-open the browser')\n .option('--daemon', 'Run as a resident system service (auto-start on login, macOS/Linux)')\n .action(async (options) => {\n // --daemon: install as system service and exit\n if (options.daemon) {\n const { serviceInstall } = await import('./daemon/service')\n serviceInstall({\n port: parseInt(options.port, 10),\n host: options.host,\n token: options.token || undefined,\n headless: options.headless,\n requireAuth: options.requireAuth || undefined,\n })\n return\n }\n\n const { startHttpServer } = await import('./http')\n const port = parseInt(options.port, 10)\n\n let webRoot: string | undefined\n if (!options.headless) {\n const webDir = resolveCliPath('dist-web')\n if (fs.existsSync(webDir)) {\n webRoot = webDir\n } else {\n console.warn('Warning: dist-web/ not found, starting in API-only mode')\n }\n }\n\n try {\n // 启动前预检端口,快速失败,避免无谓的初始化后再报 EADDRINUSE;\n // 置于 try 内确保非 EADDRINUSE 错误(EACCES/EADDRNOTAVAIL 等)\n // 也能走到统一的 Startup failed 错误处理路径。\n if (!(await isPortAvailable(port, options.host))) {\n console.error(formatPortInUseError(port))\n process.exit(1)\n }\n\n const info = await startHttpServer({\n port,\n host: options.host,\n token: options.token || undefined,\n webRoot,\n requireAuth: options.requireAuth || undefined,\n })\n\n const { startPeriodicUpdateCheck } = await import('./update-checker')\n startPeriodicUpdateCheck()\n\n const displayHost = info.host === '0.0.0.0' ? '127.0.0.1' : info.host\n const url = `http://${displayHost}:${info.port}`\n\n console.log(`\\nChatLab v${getVersion()}`)\n if (webRoot) console.log(` Web UI: ${url}/`)\n console.log(` API: ${url}`)\n console.log(` Token: ${info.token}`)\n console.log(`\\nExample:`)\n console.log(` curl -H \"Authorization: Bearer ${info.token}\" ${url}/api/v1/status`)\n\n if (webRoot && options.open) {\n openBrowser(url)\n console.log(`\\nBrowser opened. Press Ctrl+C to stop.\\n`)\n } else {\n console.log(`\\nPress Ctrl+C to stop.\\n`)\n }\n\n const shutdown = async () => {\n console.log('\\nShutting down...')\n const { stopHttpServer } = await import('./http')\n await stopHttpServer()\n process.exit(0)\n }\n\n process.on('SIGINT', shutdown)\n process.on('SIGTERM', shutdown)\n } catch (err: unknown) {\n const message = err instanceof Error ? err.message : String(err)\n if (message.includes('EADDRINUSE')) {\n // 极低概率的 TOCTOU 竞态(预检通过后端口被占),复用统一文案\n console.error(formatPortInUseError(port))\n } else {\n console.error(`Startup failed: ${message}`)\n }\n process.exit(1)\n }\n })\n\nconst configCmd = program.command('config').description('Configuration management')\n\nconfigCmd\n .command('path')\n .description('Show config file path')\n .action(() => {\n console.log(getConfigPath())\n })\n\nconfigCmd\n .command('show')\n .description('Show current configuration')\n .action(() => {\n const config = loadConfig()\n console.log(JSON.stringify(config, null, 2))\n })\n\nprogram\n .command('stop')\n .description('Stop the resident service and remove auto-start (reverse of start --daemon)')\n .action(async () => {\n const { serviceUninstall } = await import('./daemon/service')\n serviceUninstall()\n })\n\nprogram\n .command('status')\n .description('Show resident service status')\n .action(async () => {\n const { getServiceStatus } = await import('./daemon/service')\n const svc = getServiceStatus()\n\n console.log('\\nChatLab Status')\n console.log('─'.repeat(36))\n\n if (svc.installed) {\n const portStr = svc.port ? `http://${svc.host ?? '127.0.0.1'}:${svc.port}` : ''\n console.log(` Service: ${svc.running ? 'running' : 'installed (not running)'}`)\n if (portStr) console.log(` Address: ${portStr}`)\n console.log(` Auto-start: enabled`)\n console.log(`\\n Use \\`chatlab stop\\` to remove the service.\\n`)\n } else {\n console.log(` Service: not installed`)\n console.log(` Auto-start: disabled`)\n console.log(`\\n Use \\`chatlab start --daemon\\` to install as a system service.\\n`)\n }\n })\n\n// --- 工具函数 ---\n\nfunction openBrowser(url: string): void {\n try {\n const cmd =\n process.platform === 'darwin'\n ? `open \"${url}\"`\n : process.platform === 'win32'\n ? `start \"\" \"${url}\"`\n : `xdg-open \"${url}\"`\n execSync(cmd, { stdio: 'ignore' })\n } catch {\n console.log(` Open manually: ${url}`)\n }\n}\n\n/**\n * Resolve standalone better-sqlite3 native module path.\n * Used in non-Electron environments to avoid electron-rebuild conflicts.\n */\nfunction resolveNativeBinding(): string | undefined {\n if (process.versions.electron) return undefined\n const nativePath = resolveCliPath('native/better_sqlite3.node')\n if (fs.existsSync(nativePath)) return nativePath\n return undefined\n}\n\nfunction initRuntime() {\n let config = loadConfig()\n const pendingMigration = applyPendingNodeDataDirMigrationIfNeeded()\n if (!pendingMigration.skipped) {\n if (pendingMigration.success) {\n console.log('[Migration] Pending data directory migration completed')\n config = loadConfig()\n } else {\n console.error('[Migration] Pending data directory migration failed:', pendingMigration.error)\n }\n }\n const userDataDir = config.data.user_data_dir || undefined\n const pathProvider = new NodePathProvider(userDataDir)\n pathProvider.ensureAllDirs()\n\n if (hasPendingElectronDataWarning() || !verifyCliDataPath(pathProvider.getDatabaseDir())) {\n printElectronDataError()\n process.exit(1)\n }\n\n const nativeBinding = resolveNativeBinding()\n const dbManager = new DatabaseManager(pathProvider, { nativeBinding })\n return { config, pathProvider, dbManager }\n}\n\nfunction printElectronDataError(): void {\n console.error('\\n' + '='.repeat(68))\n console.error(' ChatLab: Electron desktop data not found')\n console.error('='.repeat(68))\n console.error('')\n console.error(' Detected that ChatLab desktop app was installed on this machine,')\n console.error(' but could not locate your chat databases.')\n console.error('')\n console.error(' This usually means you changed the data directory in desktop settings.')\n console.error('')\n console.error(' To fix this, choose one of:')\n console.error('')\n console.error(' 1. Open ChatLab desktop app — it will auto-migrate your data')\n console.error(' 2. Set the data directory manually:')\n console.error(' export CHATLAB_DATA_DIR=\"/path/to/your/data\"')\n console.error(' 3. Edit ~/.chatlab/config.toml:')\n console.error(' [data]')\n console.error(' user_data_dir = \"/path/to/your/data\"')\n console.error('')\n console.error('='.repeat(68) + '\\n')\n}\n\nfunction formatTimeRange(first: number | null, last: number | null): string {\n if (!first || !last) return 'Unknown'\n const from = new Date(first * 1000).toLocaleDateString()\n const to = new Date(last * 1000).toLocaleDateString()\n return `${from} ~ ${to}`\n}\n\nfunction printTable(columns: string[], rows: Record<string, unknown>[]): void {\n const widths = columns.map((col) => {\n const maxData = rows.reduce((max, row) => {\n const val = String(row[col] ?? '')\n return Math.max(max, val.length)\n }, 0)\n return Math.max(col.length, Math.min(maxData, 40))\n })\n\n const header = columns.map((col, i) => col.padEnd(widths[i])).join(' | ')\n const separator = widths.map((w) => '-'.repeat(w)).join('-+-')\n console.log(header)\n console.log(separator)\n\n for (const row of rows) {\n const line = columns\n .map((col, i) => {\n const val = String(row[col] ?? '')\n return val.length > 40 ? val.slice(0, 37) + '...' : val.padEnd(widths[i])\n })\n .join(' | ')\n console.log(line)\n }\n}\n\n/** CLI entry function */\nexport function run(argv?: string[]): void {\n program.parse(argv)\n}\n\n// Auto-execute when run directly as a script\nconst isDirectRun = process.argv[1]?.endsWith('cli.ts') || process.argv[1]?.endsWith('cli.js')\nif (isDirectRun) {\n run()\n}\n","/**\n * 端口可用性检测与错误文案\n */\n\nimport * as net from 'net'\n\n/**\n * 检测指定端口在给定 host 上是否可用。\n * 使用 net.createServer() 试探性绑定,无副作用(成功后立即释放)。\n */\nexport function isPortAvailable(port: number, host: string): Promise<boolean> {\n return new Promise((resolve, reject) => {\n const server = net.createServer()\n server.once('error', (err: NodeJS.ErrnoException) => {\n if (err.code === 'EADDRINUSE') {\n resolve(false)\n } else {\n reject(err)\n }\n })\n server.once('listening', () => server.close(() => resolve(true)))\n server.listen(port, host)\n })\n}\n\n/**\n * 返回端口被占用时统一的友好报错文案。\n */\nexport function formatPortInUseError(port: number): string {\n return [\n ``,\n ` ✖ Error: port ${port} is already in use.`,\n ``,\n ` Another process (possibly a ChatLab instance) is using this port. You can:`,\n ` • Use another port: chatlab start --port <port>`,\n ` • Find the process: lsof -iTCP:${port} -sTCP:LISTEN`,\n ``,\n ].join('\\n')\n}\n"],"mappings":"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","names":[]}
|