@oneb/ui-vue 0.3.28 → 0.3.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dropdown/index.cjs +1 -1
- package/dist/dropdown/index.js +1 -1
- package/dist/entityPicker/index.cjs +1 -1
- package/dist/entityPicker/index.js +198 -175
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/modal/index.cjs +1 -1
- package/dist/modal/index.js +2 -2
- package/dist/modal/modal.d.ts +5 -0
- package/dist/periodPicker/index.cjs +1 -1
- package/dist/periodPicker/index.js +1 -1
- package/dist/style.css +1 -1
- package/dist/tailwind.config.cjs +1 -1
- package/dist/tailwind.config.d.ts +0 -4
- package/dist/tailwind.config.js +5 -2
- package/dist/useModal-0c73777f.cjs +1 -0
- package/dist/useModal-7fe9444b.js +194 -0
- package/package.json +1 -1
- package/dist/useModal-85f57682.js +0 -177
- package/dist/useModal-98810f6a.cjs +0 -1
package/dist/dropdown/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("../OneHelpMenu-79b2d83f.cjs"),e=require("vue"),V=require("@floating-ui/dom"),I=require("@floating-ui/vue"),H=require("../_plugin-vue_export-helper-f246444f.cjs"),P=require("../OneAvatar.vue_vue_type_script_setup_true_lang-2d9f44f1.cjs"),G=require("../i18n/index.cjs"),F=require("../useModal-98810f6a.cjs");require("../XMarkIcon-f94baa4c.cjs");require("../ChevronDownIcon-6889ac87.cjs");require("../ChevronRightIcon-7a2f0c20.cjs");require("../button/index.cjs");require("../SpinnerIcon-ccb6f3fc.cjs");require("../SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");const J=["data-opened"],X={key:0,class:"text-sm text-secondary-content px-3 py-2 text-left"},q=e.defineComponent({__name:"OneDropdownAuto",props:h.dropdownProps,emits:["open","close"],setup(C,{emit:m}){const l=C,c=e.ref(!1),u=e.ref(null),f=e.ref(null);let p=null;e.watch(c,i=>{i&&f.value&&u.value?(V.computePosition(f.value,u.value,{placement:l.stick?l.stick:"bottom-start",strategy:"fixed",middleware:[V.offset(5),I.flip(),V.shift({padding:8})]}).then(({x:s,y:b})=>{Object.assign(u.value.style,{left:`${s}px`,top:`${b}px`})}),p=V.autoUpdate(f.value,u.value,()=>{V.computePosition(f.value,u.value,{placement:l.stick?l.stick:"bottom-start",strategy:"fixed",middleware:[V.offset(4),I.flip(),V.shift({padding:8})]}).then(({x:s,y:b})=>{Object.assign(u.value.style,{left:`${s}px`,top:`${b}px`})})})):p&&(p(),p=null)}),e.onBeforeUnmount(()=>{p&&p()});const a=m,y=()=>{c.value=!c.value,c.value?a("open"):a("close")};e.provide("OneDropdown",{onToggle:y});const w=e.computed(()=>["fixed z-[10000] w-fit rounded-md bg-white","py-1 shadow-lg ring-black ring-opacity-5 focus:outline-none","overflow-auto max-h-[540px] min-w-[150px] max-w-[540px]"]);return(i,s)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-block","data-opened":c.value},[e.createElementVNode("div",{ref_key:"buttonRef",ref:f},[e.renderSlot(i.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:y,isExpanded:c.value})))],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed top-0 left-0 w-screen h-screen z-[9999]",onClick:y})):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",{ref_key:"menuRef",ref:u,class:e.normalizeClass(["menu",w.value]),role:"menu","aria-orientation":"vertical",tabindex:"-1",style:{display:"none"}},[i.title?(e.openBlock(),e.createElementBlock("div",X,e.toDisplayString(i.title),1)):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"menu",e.normalizeProps(e.guardReactiveProps({onToggle:y})))],2),[[e.vShow,c.value]])]))],8,J))}}),Y={},Z={class:"border-t border-secondary-stroke my-1"};function Q(C,m){return e.openBlock(),e.createElementBlock("div",Z)}const ee=H._export_sfc(Y,[["render",Q]]),te=["onClick"],oe={class:"grid"},le={class:"font-semibold px-3"},ne={class:"rounded-lg m-3 border"},re={class:"space-x-2 flex items-center px-3 py-2",style:{width:"300px"}},se={class:"flex-shrink-0"},ae={class:"w-full text-left"},ie={class:"flex-shrink-0"},ce={class:"px-3 py-2"},de={class:"text-secondary-content text-left pb-1 text-sm uppercase"},ue={key:0,class:"space-y-2"},pe=["onClick"],me={class:"pl-2"},ke={class:"text-sm mt-1"},ve={class:"text-xs mt-1"},R=3,fe=e.defineComponent({__name:"OneBrowserMenuGrid",props:h.browserMenuProps,setup(C){const m=C,l=()=>{typeof m.onChange=="function"&&m.onChange()},c=e.ref(!1),u=e.computed(()=>m.apps?c.value?m.apps:m.apps.slice(0,R):[]),f=()=>{c.value=!c.value},p=a=>{typeof m.onApp=="function"&&m.onApp(a)};return(a,y)=>(e.openBlock(),e.createBlock(h._sfc_main,{stick:"right"},{button:e.withCtx(({onToggle:w,isExpanded:i})=>[e.createElementVNode("button",{onClick:w,class:e.normalizeClass(["p-1 rounded-md hover:bg-secondary-10",[i?"bg-secondary-25":""]])},[e.createVNode(e.unref(h.render),{class:"text-secondary-base",style:e.normalizeStyle(`width: ${a.iconSize}px; height: ${a.iconSize}px`)},null,8,["style"])],10,te)]),menu:e.withCtx(()=>{var w,i,s,b;return[e.createElementVNode("div",oe,[e.createElementVNode("div",le,e.toDisplayString((w=a.workspace)==null?void 0:w.title),1),e.createElementVNode("div",ne,[e.createElementVNode("div",re,[e.createElementVNode("div",se,[e.createVNode(P._sfc_main,{text:((i=a.workspace)==null?void 0:i.name)||"",src:(s=a.workspace)==null?void 0:s.photo_url,size:44,rounded:!1,class:"mx-auto"},null,8,["text","src"])]),e.createElementVNode("div",ae,e.toDisplayString((b=a.workspace)==null?void 0:b.name),1),e.createElementVNode("div",ie,[e.createElementVNode("button",{class:"text-sm border border-secondary-stroke rounded px-2 py-0.5 text-secondary-content hover:text-primary-content",onClick:l},e.toDisplayString(a.changeLabel),1)])]),y[0]||(y[0]=e.createElementVNode("hr",null,null,-1))])]),e.createElementVNode("div",ce,[e.createElementVNode("div",de,e.toDisplayString(a.appsTitle),1),e.createElementVNode("div",null,[a.apps&&a.apps.length?(e.openBlock(),e.createElementBlock("div",ue,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,x=>(e.openBlock(),e.createElementBlock("div",{key:x.id,onClick:S=>p(x),class:"flex items-center rounded-lg hover:bg-secondary-10 border p-2 bg-[#FAFAFA] cursor-pointer"},[e.createVNode(P._sfc_main,{text:x.name,src:x.photo_url,size:44,rounded:!1},null,8,["text","src"]),e.createElementVNode("div",me,[e.createElementVNode("p",ke,e.toDisplayString(x.name),1),e.createElementVNode("p",ve,e.toDisplayString(x.short),1)])],8,pe))),128))])):e.createCommentVNode("",!0),a.apps&&a.apps.length>R?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:f,class:"mt-2 w-full bg-[#FAFAFA] hover:bg-secondary-10 p-2 rounded-lg mb-5 text-xs"},e.toDisplayString(c.value?"Приховати":"Дивитися всі"),1)):e.createCommentVNode("",!0)])])]}),_:1}))}}),ye=["onClick"],ge=["onKeydown"],he={key:0,class:"text-sm font-medium text-gray-700 px-3 pt-2.5 pb-1.5"},we={key:1,class:"px-3 py-2"},be={class:"relative"},xe=["placeholder"],Be={key:2,class:"border-b border-gray-100"},Ee=["onClick"],Ve={key:3,class:"flex items-center justify-between px-3 py-1.5 border-b border-gray-100"},Ce={key:4,class:"flex justify-center py-4"},Ne=["aria-selected","onClick"],_e={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Se={key:1,class:"w-4 h-4 shrink-0"},$e=["aria-selected","onClick","onMouseenter"],De={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Me={key:1,class:"w-4 h-4 shrink-0"},ze=["aria-selected","onClick","onMouseenter"],Oe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Le={key:1,class:"w-4 h-4 shrink-0"},Ae={key:3,class:"px-3 py-4 text-sm text-gray-500 text-center"},Ke={class:"pb-6"},je={key:0,class:"relative px-3 py-3"},Ie={class:"relative"},Pe=["placeholder"],Fe={key:1,class:"px-3 py-2"},Re={key:2,class:"flex items-center justify-between px-3 py-2 border-b border-gray-100"},qe={key:3,class:"flex justify-center py-8"},Ue={key:4,class:"overflow-auto h-[60dvh] divide-y",role:"listbox"},Te=["aria-selected"],We={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},He={key:1,class:"w-5 h-5 shrink-0"},Ge={key:0,class:"px-3 pt-3 pb-2 text-xs font-semibold text-gray-400 uppercase tracking-wide"},Je=["aria-selected","onClick"],Xe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},Ye={key:1,class:"w-5 h-5 shrink-0"},Ze=["aria-selected","onClick"],Qe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},et={key:1,class:"w-5 h-5 shrink-0"},tt={key:3,class:"px-3 py-8 text-sm text-gray-500 text-center"},ot=e.defineComponent({__name:"OneDropdownSelect",props:h.dropdownSelectProps,emits:["update:modelValue","search","create"],setup(C,{emit:m}){const l=C,c=G.useOnebI18n(),u=m,f=e.ref(!1);let p=null;e.onMounted(()=>{p=window.matchMedia("(max-width: 767px)"),f.value=p.matches;const t=o=>{f.value=o.matches};p.addEventListener("change",t),e.onUnmounted(()=>{p==null||p.removeEventListener("change",t)})});const a=F.useModal(),y=e.ref(null),w=()=>{i.value="",s.value=-1,a.open(),e.nextTick(()=>{var t;(t=y.value)==null||t.focus()})},i=e.ref(""),s=e.ref(-1),b=e.ref(null),x=e.ref(null),S=e.ref({}),$=(t,o)=>{t&&(S.value[o]=t)},N=e.computed(()=>l.allowEmpty?1:0),E=e.computed(()=>{if(!i.value.trim())return l.items;const t=i.value.toLowerCase();return l.items.filter(o=>String(o[l.labelKey]??"").toLowerCase().includes(t))}),M=e.computed(()=>{if(!l.groupKey)return[];const t=[],o=new Map;let r=N.value;for(const n of E.value){const v=String(n[l.groupKey]??"");let d=o.get(v);d||(d={label:v,entries:[]},o.set(v,d),t.push(d)),d.entries.push({item:n,flatIndex:r}),r++}return t}),g=e.computed(()=>l.multiple?(l.modelValue??[]).length>0:l.modelValue!==null&&l.modelValue!==void 0),_=e.computed(()=>{if(l.multiple){const t=l.modelValue??[];return t.length===0?l.placeholder:t.length===1?t[0][l.labelKey]??l.placeholder:`${t[0][l.labelKey]} +${t.length-1}`}return l.modelValue===null||l.modelValue===void 0?l.placeholder:l.modelValue[l.labelKey]??l.placeholder}),k=t=>l.modelValue?l.multiple?l.modelValue.some(r=>r[l.valueKey]===t[l.valueKey]):l.modelValue[l.valueKey]===t[l.valueKey]:!1,z=e.computed(()=>E.value.length+N.value),B=(t,o)=>{if(l.multiple){const r=(l.modelValue??[]).slice();if(t===null){u("update:modelValue",[]);return}const n=r.findIndex(v=>v[l.valueKey]===t[l.valueKey]);n>=0?r.splice(n,1):r.push(t),u("update:modelValue",r);return}u("update:modelValue",t),o()},O=()=>{u("update:modelValue",[...l.items])},L=()=>{u("update:modelValue",[])},A=t=>{u("create",i.value),t()},U=()=>{i.value="",s.value=-1,e.nextTick(()=>{var t;(t=b.value)==null||t.focus()})},T=()=>{i.value="",s.value=-1},K=()=>{s.value=0,u("search",i.value)},j=()=>{e.nextTick(()=>{const t=S.value[s.value];t&&t.scrollIntoView({block:"nearest"})})},W=(t,o)=>{switch(t.key){case"ArrowDown":t.preventDefault(),s.value<z.value-1?s.value++:s.value=0,j();break;case"ArrowUp":t.preventDefault(),s.value>0?s.value--:s.value=z.value-1,j();break;case"Enter":if(t.preventDefault(),s.value>=0)if(l.allowEmpty&&s.value===0)B(null,o);else{const r=s.value-N.value,n=E.value[r];n&&B(n,o)}break;case"Escape":t.preventDefault(),o();break}};return e.watch(i,()=>{s.value=0}),(t,o)=>f.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(t.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:w,isExpanded:e.unref(a).isOpened.value,selectedLabel:_.value})),()=>[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-between gap-2 text-sm transition-colors",[t.view==="pill"?"rounded-full bg-gray-100 px-3.5 py-1.5 hover:bg-gray-200 text-gray-700":"rounded-lg border border-gray-300 bg-white px-3 py-2 hover:bg-gray-50 min-w-[180px]"]]),style:e.normalizeStyle(t.maxWidth?{maxWidth:t.maxWidth}:void 0),onClick:w},[e.createElementVNode("span",{class:e.normalizeClass(["truncate",t.view==="pill"?"":g.value?"text-gray-900":"text-gray-500"])},e.toDisplayString(_.value),3),o[12]||(o[12]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-gray-400 shrink-0"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"})],-1))],6)]),e.unref(a).isOpened.value?(e.openBlock(),e.createBlock(e.unref(F.OneModal),{key:0,useModal:e.unref(a),title:t.title||t.placeholder,size:"sm",classModal:!0,titleCenter:!0},{default:e.withCtx(()=>[e.createElementVNode("div",Ke,[t.searchable?(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("div",Ie,[o[13]||(o[13]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"absolute left-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.withDirectives(e.createElementVNode("input",{ref_key:"mobileSearchInputRef",ref:y,"onUpdate:modelValue":o[2]||(o[2]=r=>i.value=r),type:"text",placeholder:t.searchPlaceholder,class:"w-full rounded-md border border-gray-300 py-2 pl-8 pr-3 text-sm outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent",onInput:K},null,40,Pe),[[e.vModelText,i.value]])])])):e.createCommentVNode("",!0),t.createLabel?(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("button",{class:"w-full flex items-center justify-center gap-2 py-2 text-sm text-blue-700 hover:text-blue-500",onClick:o[3]||(o[3]=r=>A(()=>e.unref(a).close()))},[o[14]||(o[14]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",null,e.toDisplayString(t.createLabel),1)])])):e.createCommentVNode("",!0),t.multiple?(e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800 transition-colors",onClick:O},e.toDisplayString(e.unref(c)("ui.dropdown.selectAll")),1),g.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-sm text-gray-500 hover:text-gray-700 transition-colors",onClick:L},e.toDisplayString(e.unref(c)("ui.dropdown.clear")),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),t.isLoading?(e.openBlock(),e.createElementBlock("div",qe,[...o[15]||(o[15]=[e.createElementVNode("div",{class:"animate-spin w-6 h-6 border-2 border-blue-500 border-t-transparent rounded-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Ue,[t.allowEmpty?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors",g.value?"":"bg-gray-50 font-medium"]),role:"option","aria-selected":!g.value,onClick:o[4]||(o[4]=r=>B(null,()=>e.unref(a).close()))},[g.value?(e.openBlock(),e.createElementBlock("span",He)):(e.openBlock(),e.createElementBlock("svg",We,[...o[16]||(o[16]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(t.emptyLabel??t.placeholder),1)],10,Te)):e.createCommentVNode("",!0),t.groupKey?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(M.value,r=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r.label},[r.label?(e.openBlock(),e.createElementBlock("div",Ge,e.toDisplayString(r.label),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.entries,n=>(e.openBlock(),e.createElementBlock("button",{key:n.item[t.valueKey],class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors break-words",k(n.item)?"bg-gray-50 font-medium":""]),role:"option","aria-selected":k(n.item),onClick:v=>B(n.item,()=>e.unref(a).close())},[k(n.item)?(e.openBlock(),e.createElementBlock("svg",Xe,[...o[17]||(o[17]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Ye)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n.item}),()=>[e.createElementVNode("span",null,e.toDisplayString(n.item[t.labelKey]),1)])],10,Je))),128))],64))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(E.value,r=>(e.openBlock(),e.createElementBlock("button",{key:r[t.valueKey],class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors break-words",k(r)?"bg-gray-50 font-medium":""]),role:"option","aria-selected":k(r),onClick:n=>B(r,()=>e.unref(a).close())},[k(r)?(e.openBlock(),e.createElementBlock("svg",Qe,[...o[18]||(o[18]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",et)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:r}),()=>[e.createElementVNode("span",null,e.toDisplayString(r[t.labelKey]),1)])],10,Ze))),128)),E.value.length===0&&!t.allowEmpty?(e.openBlock(),e.createElementBlock("div",tt,[e.renderSlot(t.$slots,"empty",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("ui.dropdown.nothingFound")),1)])])):e.createCommentVNode("",!0)]))])]),_:3},8,["useModal","title"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(q,{key:0,stick:t.stick,onOpen:U,onClose:T},{button:e.withCtx(({onToggle:r,isExpanded:n})=>[e.renderSlot(t.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:r,isExpanded:n,selectedLabel:_.value})),()=>[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-between gap-2 text-sm transition-colors",[t.view==="pill"?"rounded-full bg-gray-100 px-3.5 py-1.5 hover:bg-gray-200 text-gray-700":"rounded-lg border border-gray-300 bg-white px-3 py-2 hover:bg-gray-50 min-w-[180px]",t.view==="default"&&n?"ring-1 ring-blue-500 border-blue-500":""]]),style:e.normalizeStyle(t.maxWidth?{maxWidth:t.maxWidth}:void 0),onClick:r},[e.createElementVNode("span",{class:e.normalizeClass(["truncate",t.view==="pill"?"":g.value?"text-gray-900":"text-gray-500"])},e.toDisplayString(_.value),3),(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:e.normalizeClass(["w-4 h-4 text-gray-400 transition-transform shrink-0",n?"rotate-180":""])},[...o[5]||(o[5]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"},null,-1)])],2))],14,ye)])]),menu:e.withCtx(({onToggle:r})=>[e.createElementVNode("div",{class:"min-w-[240px] w-full",onKeydown:n=>W(n,r)},[t.title?(e.openBlock(),e.createElementBlock("div",he,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.searchable?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",be,[o[6]||(o[6]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"absolute left-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.withDirectives(e.createElementVNode("input",{ref_key:"searchInputRef",ref:b,"onUpdate:modelValue":o[0]||(o[0]=n=>i.value=n),type:"text",placeholder:t.searchPlaceholder,class:"w-full rounded-md border border-gray-300 py-1.5 pl-8 pr-3 text-sm outline-none focus:ring-1 focus:ring-blue-500 focus:border-blue-500",onInput:K},null,40,xe),[[e.vModelText,i.value]])])])):e.createCommentVNode("",!0),t.createLabel?(e.openBlock(),e.createElementBlock("div",Be,[e.createElementVNode("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-sm text-blue-700 hover:bg-gray-50 transition-colors",onClick:n=>A(r)},[o[7]||(o[7]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",null,e.toDisplayString(t.createLabel),1)],8,Ee)])):e.createCommentVNode("",!0),t.multiple?(e.openBlock(),e.createElementBlock("div",Ve,[e.createElementVNode("button",{class:"text-xs text-blue-600 hover:text-blue-800 transition-colors",onClick:O},e.toDisplayString(e.unref(c)("ui.dropdown.selectAll")),1),g.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-gray-500 hover:text-gray-700 transition-colors",onClick:L},e.toDisplayString(e.unref(c)("ui.dropdown.clear")),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),t.isLoading?(e.openBlock(),e.createElementBlock("div",Ce,[...o[8]||(o[8]=[e.createElementVNode("svg",{class:"animate-spin h-5 w-5 text-gray-400",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})],-1)])])):(e.openBlock(),e.createElementBlock("div",{key:5,ref_key:"listRef",ref:x,class:"max-h-[300px] overflow-y-auto",role:"listbox"},[t.allowEmpty?(e.openBlock(),e.createElementBlock("button",{key:0,ref:n=>$(n,0),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors",[g.value?"hover:bg-gray-50":"bg-gray-100 font-medium",s.value===0?"bg-gray-50":""]]),role:"option","aria-selected":!g.value,onClick:n=>B(null,r),onMouseenter:o[1]||(o[1]=n=>s.value=0)},[g.value?(e.openBlock(),e.createElementBlock("span",Se)):(e.openBlock(),e.createElementBlock("svg",_e,[...o[9]||(o[9]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(t.emptyLabel??t.placeholder),1)],42,Ne)):e.createCommentVNode("",!0),t.groupKey?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(M.value,(n,v)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n.label},[n.label?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["px-3 pt-2 pb-1 text-xs font-semibold text-gray-500 uppercase tracking-wide",v>0?"border-t border-gray-100 mt-1":""])},e.toDisplayString(n.label),3)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.entries,d=>(e.openBlock(),e.createElementBlock("button",{key:d.item[t.valueKey],ref_for:!0,ref:D=>$(D,d.flatIndex),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors break-words",[k(d.item)?"bg-gray-100 font-medium":"hover:bg-gray-50",s.value===d.flatIndex?"bg-gray-50":""]]),role:"option","aria-selected":k(d.item),onClick:D=>B(d.item,r),onMouseenter:D=>s.value=d.flatIndex},[k(d.item)?(e.openBlock(),e.createElementBlock("svg",De,[...o[10]||(o[10]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Me)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:d.item}),()=>[e.createElementVNode("span",null,e.toDisplayString(d.item[t.labelKey]),1)])],42,$e))),128))],64))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(E.value,(n,v)=>(e.openBlock(),e.createElementBlock("button",{key:n[t.valueKey],ref_for:!0,ref:d=>$(d,N.value+v),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors break-words",[k(n)?"bg-gray-100 font-medium":"hover:bg-gray-50",s.value===N.value+v?"bg-gray-50":""]]),role:"option","aria-selected":k(n),onClick:d=>B(n,r),onMouseenter:d=>s.value=N.value+v},[k(n)?(e.openBlock(),e.createElementBlock("svg",Oe,[...o[11]||(o[11]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Le)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n}),()=>[e.createElementVNode("span",null,e.toDisplayString(n[t.labelKey]),1)])],42,ze))),128)),E.value.length===0&&!t.allowEmpty?(e.openBlock(),e.createElementBlock("div",Ae,[e.renderSlot(t.$slots,"empty",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("ui.dropdown.nothingFound")),1)])])):e.createCommentVNode("",!0)],512))],40,ge)]),_:3},8,["stick"]))}});exports.OneBrowserMenu=h.OneBrowserMenu;exports.OneDropdown=h._sfc_main;exports.OneDropdownItem=h._sfc_main$1;exports.OneHelpMenu=h.OneHelpMenu;exports.OneUserMenu=h._sfc_main$2;exports.OneBrowserMenuGrid=fe;exports.OneDropdownAuto=q;exports.OneDropdownDivider=ee;exports.OneDropdownSelect=ot;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("../OneHelpMenu-79b2d83f.cjs"),e=require("vue"),V=require("@floating-ui/dom"),I=require("@floating-ui/vue"),H=require("../_plugin-vue_export-helper-f246444f.cjs"),P=require("../OneAvatar.vue_vue_type_script_setup_true_lang-2d9f44f1.cjs"),G=require("../i18n/index.cjs"),F=require("../useModal-0c73777f.cjs");require("../XMarkIcon-f94baa4c.cjs");require("../ChevronDownIcon-6889ac87.cjs");require("../ChevronRightIcon-7a2f0c20.cjs");require("../button/index.cjs");require("../SpinnerIcon-ccb6f3fc.cjs");require("../SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");const J=["data-opened"],X={key:0,class:"text-sm text-secondary-content px-3 py-2 text-left"},q=e.defineComponent({__name:"OneDropdownAuto",props:h.dropdownProps,emits:["open","close"],setup(C,{emit:m}){const l=C,c=e.ref(!1),u=e.ref(null),f=e.ref(null);let p=null;e.watch(c,i=>{i&&f.value&&u.value?(V.computePosition(f.value,u.value,{placement:l.stick?l.stick:"bottom-start",strategy:"fixed",middleware:[V.offset(5),I.flip(),V.shift({padding:8})]}).then(({x:s,y:b})=>{Object.assign(u.value.style,{left:`${s}px`,top:`${b}px`})}),p=V.autoUpdate(f.value,u.value,()=>{V.computePosition(f.value,u.value,{placement:l.stick?l.stick:"bottom-start",strategy:"fixed",middleware:[V.offset(4),I.flip(),V.shift({padding:8})]}).then(({x:s,y:b})=>{Object.assign(u.value.style,{left:`${s}px`,top:`${b}px`})})})):p&&(p(),p=null)}),e.onBeforeUnmount(()=>{p&&p()});const a=m,y=()=>{c.value=!c.value,c.value?a("open"):a("close")};e.provide("OneDropdown",{onToggle:y});const w=e.computed(()=>["fixed z-[10000] w-fit rounded-md bg-white","py-1 shadow-lg ring-black ring-opacity-5 focus:outline-none","overflow-auto max-h-[540px] min-w-[150px] max-w-[540px]"]);return(i,s)=>(e.openBlock(),e.createElementBlock("div",{class:"relative inline-block","data-opened":c.value},[e.createElementVNode("div",{ref_key:"buttonRef",ref:f},[e.renderSlot(i.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:y,isExpanded:c.value})))],512),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"fixed top-0 left-0 w-screen h-screen z-[9999]",onClick:y})):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("div",{ref_key:"menuRef",ref:u,class:e.normalizeClass(["menu",w.value]),role:"menu","aria-orientation":"vertical",tabindex:"-1",style:{display:"none"}},[i.title?(e.openBlock(),e.createElementBlock("div",X,e.toDisplayString(i.title),1)):e.createCommentVNode("",!0),e.renderSlot(i.$slots,"menu",e.normalizeProps(e.guardReactiveProps({onToggle:y})))],2),[[e.vShow,c.value]])]))],8,J))}}),Y={},Z={class:"border-t border-secondary-stroke my-1"};function Q(C,m){return e.openBlock(),e.createElementBlock("div",Z)}const ee=H._export_sfc(Y,[["render",Q]]),te=["onClick"],oe={class:"grid"},le={class:"font-semibold px-3"},ne={class:"rounded-lg m-3 border"},re={class:"space-x-2 flex items-center px-3 py-2",style:{width:"300px"}},se={class:"flex-shrink-0"},ae={class:"w-full text-left"},ie={class:"flex-shrink-0"},ce={class:"px-3 py-2"},de={class:"text-secondary-content text-left pb-1 text-sm uppercase"},ue={key:0,class:"space-y-2"},pe=["onClick"],me={class:"pl-2"},ke={class:"text-sm mt-1"},ve={class:"text-xs mt-1"},R=3,fe=e.defineComponent({__name:"OneBrowserMenuGrid",props:h.browserMenuProps,setup(C){const m=C,l=()=>{typeof m.onChange=="function"&&m.onChange()},c=e.ref(!1),u=e.computed(()=>m.apps?c.value?m.apps:m.apps.slice(0,R):[]),f=()=>{c.value=!c.value},p=a=>{typeof m.onApp=="function"&&m.onApp(a)};return(a,y)=>(e.openBlock(),e.createBlock(h._sfc_main,{stick:"right"},{button:e.withCtx(({onToggle:w,isExpanded:i})=>[e.createElementVNode("button",{onClick:w,class:e.normalizeClass(["p-1 rounded-md hover:bg-secondary-10",[i?"bg-secondary-25":""]])},[e.createVNode(e.unref(h.render),{class:"text-secondary-base",style:e.normalizeStyle(`width: ${a.iconSize}px; height: ${a.iconSize}px`)},null,8,["style"])],10,te)]),menu:e.withCtx(()=>{var w,i,s,b;return[e.createElementVNode("div",oe,[e.createElementVNode("div",le,e.toDisplayString((w=a.workspace)==null?void 0:w.title),1),e.createElementVNode("div",ne,[e.createElementVNode("div",re,[e.createElementVNode("div",se,[e.createVNode(P._sfc_main,{text:((i=a.workspace)==null?void 0:i.name)||"",src:(s=a.workspace)==null?void 0:s.photo_url,size:44,rounded:!1,class:"mx-auto"},null,8,["text","src"])]),e.createElementVNode("div",ae,e.toDisplayString((b=a.workspace)==null?void 0:b.name),1),e.createElementVNode("div",ie,[e.createElementVNode("button",{class:"text-sm border border-secondary-stroke rounded px-2 py-0.5 text-secondary-content hover:text-primary-content",onClick:l},e.toDisplayString(a.changeLabel),1)])]),y[0]||(y[0]=e.createElementVNode("hr",null,null,-1))])]),e.createElementVNode("div",ce,[e.createElementVNode("div",de,e.toDisplayString(a.appsTitle),1),e.createElementVNode("div",null,[a.apps&&a.apps.length?(e.openBlock(),e.createElementBlock("div",ue,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,x=>(e.openBlock(),e.createElementBlock("div",{key:x.id,onClick:S=>p(x),class:"flex items-center rounded-lg hover:bg-secondary-10 border p-2 bg-[#FAFAFA] cursor-pointer"},[e.createVNode(P._sfc_main,{text:x.name,src:x.photo_url,size:44,rounded:!1},null,8,["text","src"]),e.createElementVNode("div",me,[e.createElementVNode("p",ke,e.toDisplayString(x.name),1),e.createElementVNode("p",ve,e.toDisplayString(x.short),1)])],8,pe))),128))])):e.createCommentVNode("",!0),a.apps&&a.apps.length>R?(e.openBlock(),e.createElementBlock("button",{key:1,onClick:f,class:"mt-2 w-full bg-[#FAFAFA] hover:bg-secondary-10 p-2 rounded-lg mb-5 text-xs"},e.toDisplayString(c.value?"Приховати":"Дивитися всі"),1)):e.createCommentVNode("",!0)])])]}),_:1}))}}),ye=["onClick"],ge=["onKeydown"],he={key:0,class:"text-sm font-medium text-gray-700 px-3 pt-2.5 pb-1.5"},we={key:1,class:"px-3 py-2"},be={class:"relative"},xe=["placeholder"],Be={key:2,class:"border-b border-gray-100"},Ee=["onClick"],Ve={key:3,class:"flex items-center justify-between px-3 py-1.5 border-b border-gray-100"},Ce={key:4,class:"flex justify-center py-4"},Ne=["aria-selected","onClick"],_e={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Se={key:1,class:"w-4 h-4 shrink-0"},$e=["aria-selected","onClick","onMouseenter"],De={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Me={key:1,class:"w-4 h-4 shrink-0"},ze=["aria-selected","onClick","onMouseenter"],Oe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-blue-600 shrink-0"},Le={key:1,class:"w-4 h-4 shrink-0"},Ae={key:3,class:"px-3 py-4 text-sm text-gray-500 text-center"},Ke={class:"pb-6"},je={key:0,class:"relative px-3 py-3"},Ie={class:"relative"},Pe=["placeholder"],Fe={key:1,class:"px-3 py-2"},Re={key:2,class:"flex items-center justify-between px-3 py-2 border-b border-gray-100"},qe={key:3,class:"flex justify-center py-8"},Ue={key:4,class:"overflow-auto h-[60dvh] divide-y",role:"listbox"},Te=["aria-selected"],We={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},He={key:1,class:"w-5 h-5 shrink-0"},Ge={key:0,class:"px-3 pt-3 pb-2 text-xs font-semibold text-gray-400 uppercase tracking-wide"},Je=["aria-selected","onClick"],Xe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},Ye={key:1,class:"w-5 h-5 shrink-0"},Ze=["aria-selected","onClick"],Qe={key:0,xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-5 h-5 text-blue-600 shrink-0"},et={key:1,class:"w-5 h-5 shrink-0"},tt={key:3,class:"px-3 py-8 text-sm text-gray-500 text-center"},ot=e.defineComponent({__name:"OneDropdownSelect",props:h.dropdownSelectProps,emits:["update:modelValue","search","create"],setup(C,{emit:m}){const l=C,c=G.useOnebI18n(),u=m,f=e.ref(!1);let p=null;e.onMounted(()=>{p=window.matchMedia("(max-width: 767px)"),f.value=p.matches;const t=o=>{f.value=o.matches};p.addEventListener("change",t),e.onUnmounted(()=>{p==null||p.removeEventListener("change",t)})});const a=F.useModal(),y=e.ref(null),w=()=>{i.value="",s.value=-1,a.open(),e.nextTick(()=>{var t;(t=y.value)==null||t.focus()})},i=e.ref(""),s=e.ref(-1),b=e.ref(null),x=e.ref(null),S=e.ref({}),$=(t,o)=>{t&&(S.value[o]=t)},N=e.computed(()=>l.allowEmpty?1:0),E=e.computed(()=>{if(!i.value.trim())return l.items;const t=i.value.toLowerCase();return l.items.filter(o=>String(o[l.labelKey]??"").toLowerCase().includes(t))}),M=e.computed(()=>{if(!l.groupKey)return[];const t=[],o=new Map;let r=N.value;for(const n of E.value){const v=String(n[l.groupKey]??"");let d=o.get(v);d||(d={label:v,entries:[]},o.set(v,d),t.push(d)),d.entries.push({item:n,flatIndex:r}),r++}return t}),g=e.computed(()=>l.multiple?(l.modelValue??[]).length>0:l.modelValue!==null&&l.modelValue!==void 0),_=e.computed(()=>{if(l.multiple){const t=l.modelValue??[];return t.length===0?l.placeholder:t.length===1?t[0][l.labelKey]??l.placeholder:`${t[0][l.labelKey]} +${t.length-1}`}return l.modelValue===null||l.modelValue===void 0?l.placeholder:l.modelValue[l.labelKey]??l.placeholder}),k=t=>l.modelValue?l.multiple?l.modelValue.some(r=>r[l.valueKey]===t[l.valueKey]):l.modelValue[l.valueKey]===t[l.valueKey]:!1,z=e.computed(()=>E.value.length+N.value),B=(t,o)=>{if(l.multiple){const r=(l.modelValue??[]).slice();if(t===null){u("update:modelValue",[]);return}const n=r.findIndex(v=>v[l.valueKey]===t[l.valueKey]);n>=0?r.splice(n,1):r.push(t),u("update:modelValue",r);return}u("update:modelValue",t),o()},O=()=>{u("update:modelValue",[...l.items])},L=()=>{u("update:modelValue",[])},A=t=>{u("create",i.value),t()},U=()=>{i.value="",s.value=-1,e.nextTick(()=>{var t;(t=b.value)==null||t.focus()})},T=()=>{i.value="",s.value=-1},K=()=>{s.value=0,u("search",i.value)},j=()=>{e.nextTick(()=>{const t=S.value[s.value];t&&t.scrollIntoView({block:"nearest"})})},W=(t,o)=>{switch(t.key){case"ArrowDown":t.preventDefault(),s.value<z.value-1?s.value++:s.value=0,j();break;case"ArrowUp":t.preventDefault(),s.value>0?s.value--:s.value=z.value-1,j();break;case"Enter":if(t.preventDefault(),s.value>=0)if(l.allowEmpty&&s.value===0)B(null,o);else{const r=s.value-N.value,n=E.value[r];n&&B(n,o)}break;case"Escape":t.preventDefault(),o();break}};return e.watch(i,()=>{s.value=0}),(t,o)=>f.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.renderSlot(t.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:w,isExpanded:e.unref(a).isOpened.value,selectedLabel:_.value})),()=>[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-between gap-2 text-sm transition-colors",[t.view==="pill"?"rounded-full bg-gray-100 px-3.5 py-1.5 hover:bg-gray-200 text-gray-700":"rounded-lg border border-gray-300 bg-white px-3 py-2 hover:bg-gray-50 min-w-[180px]"]]),style:e.normalizeStyle(t.maxWidth?{maxWidth:t.maxWidth}:void 0),onClick:w},[e.createElementVNode("span",{class:e.normalizeClass(["truncate",t.view==="pill"?"":g.value?"text-gray-900":"text-gray-500"])},e.toDisplayString(_.value),3),o[12]||(o[12]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4 text-gray-400 shrink-0"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"})],-1))],6)]),e.unref(a).isOpened.value?(e.openBlock(),e.createBlock(e.unref(F.OneModal),{key:0,useModal:e.unref(a),title:t.title||t.placeholder,size:"sm",classModal:!0,titleCenter:!0},{default:e.withCtx(()=>[e.createElementVNode("div",Ke,[t.searchable?(e.openBlock(),e.createElementBlock("div",je,[e.createElementVNode("div",Ie,[o[13]||(o[13]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"absolute left-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.withDirectives(e.createElementVNode("input",{ref_key:"mobileSearchInputRef",ref:y,"onUpdate:modelValue":o[2]||(o[2]=r=>i.value=r),type:"text",placeholder:t.searchPlaceholder,class:"w-full rounded-md border border-gray-300 py-2 pl-8 pr-3 text-sm outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent",onInput:K},null,40,Pe),[[e.vModelText,i.value]])])])):e.createCommentVNode("",!0),t.createLabel?(e.openBlock(),e.createElementBlock("div",Fe,[e.createElementVNode("button",{class:"w-full flex items-center justify-center gap-2 py-2 text-sm text-blue-700 hover:text-blue-500",onClick:o[3]||(o[3]=r=>A(()=>e.unref(a).close()))},[o[14]||(o[14]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",null,e.toDisplayString(t.createLabel),1)])])):e.createCommentVNode("",!0),t.multiple?(e.openBlock(),e.createElementBlock("div",Re,[e.createElementVNode("button",{class:"text-sm text-blue-600 hover:text-blue-800 transition-colors",onClick:O},e.toDisplayString(e.unref(c)("ui.dropdown.selectAll")),1),g.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-sm text-gray-500 hover:text-gray-700 transition-colors",onClick:L},e.toDisplayString(e.unref(c)("ui.dropdown.clear")),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),t.isLoading?(e.openBlock(),e.createElementBlock("div",qe,[...o[15]||(o[15]=[e.createElementVNode("div",{class:"animate-spin w-6 h-6 border-2 border-blue-500 border-t-transparent rounded-full"},null,-1)])])):(e.openBlock(),e.createElementBlock("div",Ue,[t.allowEmpty?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors",g.value?"":"bg-gray-50 font-medium"]),role:"option","aria-selected":!g.value,onClick:o[4]||(o[4]=r=>B(null,()=>e.unref(a).close()))},[g.value?(e.openBlock(),e.createElementBlock("span",He)):(e.openBlock(),e.createElementBlock("svg",We,[...o[16]||(o[16]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(t.emptyLabel??t.placeholder),1)],10,Te)):e.createCommentVNode("",!0),t.groupKey?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(M.value,r=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:r.label},[r.label?(e.openBlock(),e.createElementBlock("div",Ge,e.toDisplayString(r.label),1)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.entries,n=>(e.openBlock(),e.createElementBlock("button",{key:n.item[t.valueKey],class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors break-words",k(n.item)?"bg-gray-50 font-medium":""]),role:"option","aria-selected":k(n.item),onClick:v=>B(n.item,()=>e.unref(a).close())},[k(n.item)?(e.openBlock(),e.createElementBlock("svg",Xe,[...o[17]||(o[17]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Ye)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n.item}),()=>[e.createElementVNode("span",null,e.toDisplayString(n.item[t.labelKey]),1)])],10,Je))),128))],64))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(E.value,r=>(e.openBlock(),e.createElementBlock("button",{key:r[t.valueKey],class:e.normalizeClass(["flex items-center gap-3 w-full px-3 py-3 text-sm text-left hover:bg-gray-50 transition-colors break-words",k(r)?"bg-gray-50 font-medium":""]),role:"option","aria-selected":k(r),onClick:n=>B(r,()=>e.unref(a).close())},[k(r)?(e.openBlock(),e.createElementBlock("svg",Qe,[...o[18]||(o[18]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",et)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:r}),()=>[e.createElementVNode("span",null,e.toDisplayString(r[t.labelKey]),1)])],10,Ze))),128)),E.value.length===0&&!t.allowEmpty?(e.openBlock(),e.createElementBlock("div",tt,[e.renderSlot(t.$slots,"empty",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("ui.dropdown.nothingFound")),1)])])):e.createCommentVNode("",!0)]))])]),_:3},8,["useModal","title"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(q,{key:0,stick:t.stick,onOpen:U,onClose:T},{button:e.withCtx(({onToggle:r,isExpanded:n})=>[e.renderSlot(t.$slots,"button",e.normalizeProps(e.guardReactiveProps({onToggle:r,isExpanded:n,selectedLabel:_.value})),()=>[e.createElementVNode("button",{class:e.normalizeClass(["inline-flex items-center justify-between gap-2 text-sm transition-colors",[t.view==="pill"?"rounded-full bg-gray-100 px-3.5 py-1.5 hover:bg-gray-200 text-gray-700":"rounded-lg border border-gray-300 bg-white px-3 py-2 hover:bg-gray-50 min-w-[180px]",t.view==="default"&&n?"ring-1 ring-blue-500 border-blue-500":""]]),style:e.normalizeStyle(t.maxWidth?{maxWidth:t.maxWidth}:void 0),onClick:r},[e.createElementVNode("span",{class:e.normalizeClass(["truncate",t.view==="pill"?"":g.value?"text-gray-900":"text-gray-500"])},e.toDisplayString(_.value),3),(e.openBlock(),e.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:e.normalizeClass(["w-4 h-4 text-gray-400 transition-transform shrink-0",n?"rotate-180":""])},[...o[5]||(o[5]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"},null,-1)])],2))],14,ye)])]),menu:e.withCtx(({onToggle:r})=>[e.createElementVNode("div",{class:"min-w-[240px] w-full",onKeydown:n=>W(n,r)},[t.title?(e.openBlock(),e.createElementBlock("div",he,e.toDisplayString(t.title),1)):e.createCommentVNode("",!0),t.searchable?(e.openBlock(),e.createElementBlock("div",we,[e.createElementVNode("div",be,[o[6]||(o[6]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"absolute left-2.5 top-1/2 -translate-y-1/2 w-4 h-4 text-gray-400"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.withDirectives(e.createElementVNode("input",{ref_key:"searchInputRef",ref:b,"onUpdate:modelValue":o[0]||(o[0]=n=>i.value=n),type:"text",placeholder:t.searchPlaceholder,class:"w-full rounded-md border border-gray-300 py-1.5 pl-8 pr-3 text-sm outline-none focus:ring-1 focus:ring-blue-500 focus:border-blue-500",onInput:K},null,40,xe),[[e.vModelText,i.value]])])])):e.createCommentVNode("",!0),t.createLabel?(e.openBlock(),e.createElementBlock("div",Be,[e.createElementVNode("button",{class:"flex items-center gap-2 w-full px-3 py-2 text-sm text-blue-700 hover:bg-gray-50 transition-colors",onClick:n=>A(r)},[o[7]||(o[7]=e.createElementVNode("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor",class:"w-4 h-4"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",null,e.toDisplayString(t.createLabel),1)],8,Ee)])):e.createCommentVNode("",!0),t.multiple?(e.openBlock(),e.createElementBlock("div",Ve,[e.createElementVNode("button",{class:"text-xs text-blue-600 hover:text-blue-800 transition-colors",onClick:O},e.toDisplayString(e.unref(c)("ui.dropdown.selectAll")),1),g.value?(e.openBlock(),e.createElementBlock("button",{key:0,class:"text-xs text-gray-500 hover:text-gray-700 transition-colors",onClick:L},e.toDisplayString(e.unref(c)("ui.dropdown.clear")),1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0),t.isLoading?(e.openBlock(),e.createElementBlock("div",Ce,[...o[8]||(o[8]=[e.createElementVNode("svg",{class:"animate-spin h-5 w-5 text-gray-400",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[e.createElementVNode("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),e.createElementVNode("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})],-1)])])):(e.openBlock(),e.createElementBlock("div",{key:5,ref_key:"listRef",ref:x,class:"max-h-[300px] overflow-y-auto",role:"listbox"},[t.allowEmpty?(e.openBlock(),e.createElementBlock("button",{key:0,ref:n=>$(n,0),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors",[g.value?"hover:bg-gray-50":"bg-gray-100 font-medium",s.value===0?"bg-gray-50":""]]),role:"option","aria-selected":!g.value,onClick:n=>B(null,r),onMouseenter:o[1]||(o[1]=n=>s.value=0)},[g.value?(e.openBlock(),e.createElementBlock("span",Se)):(e.openBlock(),e.createElementBlock("svg",_e,[...o[9]||(o[9]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])),e.createElementVNode("span",null,e.toDisplayString(t.emptyLabel??t.placeholder),1)],42,Ne)):e.createCommentVNode("",!0),t.groupKey?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(M.value,(n,v)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:n.label},[n.label?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["px-3 pt-2 pb-1 text-xs font-semibold text-gray-500 uppercase tracking-wide",v>0?"border-t border-gray-100 mt-1":""])},e.toDisplayString(n.label),3)):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.entries,d=>(e.openBlock(),e.createElementBlock("button",{key:d.item[t.valueKey],ref_for:!0,ref:D=>$(D,d.flatIndex),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors break-words",[k(d.item)?"bg-gray-100 font-medium":"hover:bg-gray-50",s.value===d.flatIndex?"bg-gray-50":""]]),role:"option","aria-selected":k(d.item),onClick:D=>B(d.item,r),onMouseenter:D=>s.value=d.flatIndex},[k(d.item)?(e.openBlock(),e.createElementBlock("svg",De,[...o[10]||(o[10]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Me)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:d.item}),()=>[e.createElementVNode("span",null,e.toDisplayString(d.item[t.labelKey]),1)])],42,$e))),128))],64))),128)):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(E.value,(n,v)=>(e.openBlock(),e.createElementBlock("button",{key:n[t.valueKey],ref_for:!0,ref:d=>$(d,N.value+v),class:e.normalizeClass(["flex items-center gap-2 w-full px-3 py-2 text-sm text-left transition-colors break-words",[k(n)?"bg-gray-100 font-medium":"hover:bg-gray-50",s.value===N.value+v?"bg-gray-50":""]]),role:"option","aria-selected":k(n),onClick:d=>B(n,r),onMouseenter:d=>s.value=N.value+v},[k(n)?(e.openBlock(),e.createElementBlock("svg",Oe,[...o[11]||(o[11]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"},null,-1)])])):(e.openBlock(),e.createElementBlock("span",Le)),e.renderSlot(t.$slots,"item",e.mergeProps({ref_for:!0},{item:n}),()=>[e.createElementVNode("span",null,e.toDisplayString(n[t.labelKey]),1)])],42,ze))),128)),E.value.length===0&&!t.allowEmpty?(e.openBlock(),e.createElementBlock("div",Ae,[e.renderSlot(t.$slots,"empty",{},()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("ui.dropdown.nothingFound")),1)])])):e.createCommentVNode("",!0)],512))],40,ge)]),_:3},8,["stick"]))}});exports.OneBrowserMenu=h.OneBrowserMenu;exports.OneDropdown=h._sfc_main;exports.OneDropdownItem=h._sfc_main$1;exports.OneHelpMenu=h.OneHelpMenu;exports.OneUserMenu=h._sfc_main$2;exports.OneBrowserMenuGrid=fe;exports.OneDropdownAuto=q;exports.OneDropdownDivider=ee;exports.OneDropdownSelect=ot;
|
package/dist/dropdown/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { flip as ue } from "@floating-ui/vue";
|
|
|
6
6
|
import { _ as Ke } from "../_plugin-vue_export-helper-dad06003.js";
|
|
7
7
|
import { _ as de } from "../OneAvatar.vue_vue_type_script_setup_true_lang-08ab80dd.js";
|
|
8
8
|
import { useOnebI18n as Ae } from "../i18n/index.js";
|
|
9
|
-
import { u as Oe, O as je } from "../useModal-
|
|
9
|
+
import { u as Oe, O as je } from "../useModal-7fe9444b.js";
|
|
10
10
|
import "../XMarkIcon-51ef0691.js";
|
|
11
11
|
import "../ChevronDownIcon-6805ce6c.js";
|
|
12
12
|
import "../ChevronRightIcon-4549a26b.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),A=require("../useModal-98810f6a.cjs"),I=require("../OneAvatar.vue_vue_type_script_setup_true_lang-2d9f44f1.cjs");require("vue-markdown-render");require("../OneMarkdown.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");require("../SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");const F=require("../i18n/index.cjs");require("../_plugin-vue_export-helper-f246444f.cjs");const P={key:0,class:"overflow-auto max-h-[85dvh] h-full"},O={key:1,class:"overflow-auto max-h-[85dvh] h-full"},K={key:2,class:"pb-6"},D={key:0,class:"px-2 pt-3"},U=e.defineComponent({__name:"EntityPickerModal",props:{useModal:{type:Object,required:!0},title:{type:String,default:""},titleCenter:{type:Boolean,default:!1},size:{type:String,default:"sm"},mobileView:{type:Boolean,default:!1},view:{type:String,default:"browse"}},setup(t){return(n,l)=>t.useModal.isOpened.value?(e.openBlock(),e.createBlock(e.unref(A.OneModal),{key:0,useModal:t.useModal,title:t.title,size:t.size,classModal:t.mobileView,titleCenter:t.titleCenter},{default:e.withCtx(()=>[t.view==="create"?(e.openBlock(),e.createElementBlock("div",P,[e.renderSlot(n.$slots,"create")])):t.view==="edit"?(e.openBlock(),e.createElementBlock("div",O,[e.renderSlot(n.$slots,"edit")])):(e.openBlock(),e.createElementBlock("div",K,[n.$slots.header?(e.openBlock(),e.createElementBlock("div",D,[e.renderSlot(n.$slots,"header")])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"search"),e.renderSlot(n.$slots,"prepend"),e.renderSlot(n.$slots,"createButton"),e.renderSlot(n.$slots,"list")]))]),_:3},8,["useModal","title","size","classModal","titleCenter"])):e.createCommentVNode("",!0)}}),R={key:0,class:"relative select-none inline-flex items-center gap-3"},G={class:"text-sm font-medium truncate text-inherit"},W=["aria-label"],H={key:0,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},Q={key:1,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},J={key:0},X={class:""},Y={key:0,class:"space-y-1 flex flex-col"},Z={key:0,class:"text-gray-400 text-xs font-light"},_={key:0,class:"text-[10px] text-gray-500 ml-1 py-0.5 rounded-full font-semibold hover:text-info-base"},ee=e.defineComponent({__name:"EntityPickerTrigger",props:{variant:{type:String,default:"default"},modelValue:{type:[Object,null],default:null},icon:{type:[Object,Function,null],default:null},title:{type:String,default:""},labelSelect:{type:String,default:""},labelSelectNote:{type:String,default:""},labelClass:{type:String,default:""},iconClass:{type:String,default:""},iconClassBlock:{type:String,default:""},noIcon:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},tagColor:{type:String,default:"#525B66"},changeLabel:{type:String,default:""},resolvers:{type:Object,required:!0}},emits:["open","clear"],setup(t,{emit:n}){const l=t,a=n,c=()=>a("open"),i=e.computed(()=>l.variant==="compact"||l.variant==="minimal"),u=e.computed(()=>l.variant==="compact"),s=e.computed(()=>l.variant==="pill"),d=e.computed(()=>l.modelValue==null?{}:{backgroundColor:`${l.tagColor}1A`}),v=e.computed(()=>l.modelValue!=null?l.tagColor:"#979CA9");return(o,y)=>t.variant==="tag"?(e.openBlock(),e.createElementBlock("div",R,[e.renderSlot(o.$slots,"button",{title:t.title,modelValue:t.modelValue,openModal:c},()=>[t.title?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(["font-semibold text-black",t.labelClass])},e.toDisplayString(t.title),3)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex items-center gap-2 h-10 px-3 rounded-xl transition-colors",t.readonly?"":"cursor-pointer",t.modelValue==null?"bg-[#FAFAFA] hover:bg-gray-100 text-[#979CA9]":"hover:opacity-90 text-black"]),style:e.normalizeStyle(d.value),onClick:c},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(["w-5 h-5 flex-shrink-0",t.iconClass]),style:e.normalizeStyle({color:v.value})},null,8,["style","class"])):e.createCommentVNode("",!0),e.createElementVNode("span",G,e.toDisplayString(t.modelValue!=null?t.resolvers.getEntityLabel(t.modelValue):t.labelSelect),1),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"text-[#979CA9] hover:text-gray-700 flex-shrink-0 -mr-1","aria-label":t.changeLabel,onClick:y[0]||(y[0]=e.withModifiers(g=>t.modelValue!=null?o.$emit("clear"):c(),["stop"]))},[t.modelValue!=null?(e.openBlock(),e.createElementBlock("svg",H,[...y[2]||(y[2]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",Q,[...y[3]||(y[3]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"},null,-1)])]))],8,W))],6)])])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["relative select-none",i.value?"space-y-1.5":"space-y-3"])},[e.renderSlot(o.$slots,"button",{title:t.title,modelValue:t.modelValue,openModal:c},()=>[t.title?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(["font-semibold pb-0",t.labelClass])},e.toDisplayString(t.title),3)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex justify-between z-10 items-center",[t.readonly?"":"cursor-pointer hover:bg-gray-50",i.value?["rounded-full",u.value?"bg-[#4089E01A]":""]:"border px-3 pr-3 py-3 rounded-lg h-[72px]",s.value?"border-none !py-0 h-max !rounded-full":"",s.value&&t.modelValue!==null?"bg-[#4089E01A]":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center w-full gap-x-3",[i.value?"!gap-x-1 px-0.5 py-0.5":"",s.value?"h-9 p-0":""]]),onClick:c},[!t.noIcon&&(s.value||i.value||t.icon||t.modelValue)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-10 h-10 flex items-center justify-center",t.iconClassBlock])},[s.value?(e.openBlock(),e.createElementBlock("div",J,[t.modelValue==null?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass(["w-3 text-blue-600",t.iconClass]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[...y[4]||(y[4]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"},null,-1)])],2)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:1,class:e.normalizeClass(["w-5",t.iconClass])},null,8,["class"]))])):t.icon!=null&&t.modelValue==null||i.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(i.value?"":"bg-gray-50 p-2.5 rounded-lg")},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{class:e.normalizeClass([["w-5",t.iconClass],"text-gray-600"])},null,8,["class"]))],2)):t.modelValue?(e.openBlock(),e.createBlock(e.unref(I._sfc_main),{key:2,text:t.resolvers.getEntityLabel(t.modelValue),src:t.resolvers.getEntityAvatar(t.modelValue),rounded:!1,size:"40",class:"!rounded-lg"},null,8,["text","src"])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",X,[t.modelValue==null?(e.openBlock(),e.createElementBlock("div",Y,[e.createElementVNode("div",{class:e.normalizeClass(["font-medium text-gray-600 truncate overflow-hidden whitespace-nowrap",[i.value?"text-xs truncate max-w-[120px] text-[#525B66]":"text-sm",s.value?"!text-xs truncate max-w-[120px] text-[#4089E0]":""]])},e.toDisplayString(t.labelSelect),3),t.labelSelectNote&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("span",Z,e.toDisplayString(t.labelSelectNote),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["grid items-center pr-2",i.value?"":"py-1"])},[e.createElementVNode("div",{class:e.normalizeClass(["break-all leading-4 truncate !text-sm",{"text-sm font-medium":t.resolvers.getEntityLabel(t.modelValue).length<20,"text-xs font-semibold":t.resolvers.getEntityLabel(t.modelValue).length>20,"truncate text-[#525B66] text-xs":i.value,"truncate text-xs":s.value}])},[e.createTextVNode(e.toDisplayString(t.resolvers.getEntityLabel(t.modelValue))+" ",1),!t.readonly&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("span",_,e.toDisplayString(t.changeLabel),1)):e.createCommentVNode("",!0)],2),t.resolvers.getEntityAdditional(t.modelValue)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["font-thin leading-3 break-all line-clamp-2 pt-1 truncate !text-xs",{"text-xs":t.resolvers.getEntityAdditional(t.modelValue).length<20,"text-[10px]":t.resolvers.getEntityAdditional(t.modelValue).length>20&&t.resolvers.getEntityAdditional(t.modelValue).length<35,"text-[9px]":t.resolvers.getEntityAdditional(t.modelValue).length>35}])},[e.renderSlot(o.$slots,"entityAdditional",{item:t.modelValue},()=>[e.createTextVNode(e.toDisplayString(t.resolvers.getEntityAdditional(t.modelValue)),1)])],2)):e.createCommentVNode("",!0)],2))])],2),t.modelValue!=null&&!t.readonly?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:e.normalizeClass(["rounded-full hover:text-gray-900 text-gray-500",{"mr-2 text-[#525B66] p-0.5":i.value}]),onClick:y[1]||(y[1]=e.withModifiers(g=>o.$emit("clear"),["stop"]))},[...y[5]||(y[5]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])],2)):!t.readonly&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"py-2.5 text-gray-500",onClick:c},[...y[6]||(y[6]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 4.5l7.5 7.5-7.5 7.5"})],-1)])])):e.createCommentVNode("",!0)],2)])],2))}});function te(t){const n=o=>o?String(o[t.entityLabel]||""):"",l=o=>!o||!t.entityAvatar?"":String(o[t.entityAvatar]||""),a=o=>!o||!t.entityAdditional?"":String(o[t.entityAdditional]||""),c=o=>o?o[t.entityKey]:"",i=o=>o[t.entityListKey];return{getEntityLabel:n,getEntityAvatar:l,getEntityAdditional:a,getEntityKey:c,getEntityListKey:i,getEntityListLabel:o=>String(o[t.entityListLabel]||""),getEntityListAvatar:o=>t.entityListAvatar?String(o[t.entityListAvatar]||""):"",getEntityListAdditional:o=>t.entityListAdditional?String(o[t.entityListAdditional]||""):"",isSelected:o=>c(t.modelValue)===i(o)}}function le(t,n){const l=t.listEntityUse?t.listEntityUse():null,a=l==null?void 0:l.nodes,c=l==null?void 0:l.load,i=l==null?void 0:l.searchTerm,u=l==null?void 0:l.isLoading,s=l==null?void 0:l.isLoad,d=l==null?void 0:l.group,v=e.ref(null),o=e.computed(()=>(d==null?void 0:d.value)??v.value),y=f=>{d?d.value=f:v.value=f},g=e.ref(""),b=e.computed({get:()=>(i==null?void 0:i.value)??g.value,set:f=>{i?i.value=f:g.value=f}}),x=()=>{g.value="",i&&(i.value="")},V=e.computed(()=>(u==null?void 0:u.value)??t.isLoading),E=e.computed(()=>(a==null?void 0:a.value)??t.items),r=e.computed(()=>{const f=E.value;if(t.modelValue==null)return f;const S=n.getEntityKey(t.modelValue);return f.some(k=>n.getEntityListKey(k)===S)?f:[t.modelValue,...f]}),B=e.computed(()=>{if(!b.value)return r.value;const f=b.value.toLowerCase(),S=t.modelValue!=null?n.getEntityKey(t.modelValue):null;return r.value.filter(h=>{if(S!=null&&n.getEntityListKey(h)===S)return!0;const k=n.getEntityListLabel(h).toLowerCase(),w=n.getEntityListAdditional(h).toLowerCase();return k.includes(f)||w.includes(f)})}),N=e.computed(()=>{const f=B.value;if(t.modelValue==null)return f;const S=n.getEntityKey(t.modelValue),h=f.findIndex(L=>n.getEntityListKey(L)===S);if(h<=0)return f;const k=f.slice(),[w]=k.splice(h,1);return k.unshift(w),k});return{load:c,dynamicIsLoad:s,nodes:a,searchTerm:b,clearSearchTerm:x,selectedGroup:o,setSelectedGroup:y,rawItems:E,availableItems:r,filteredItems:B,sortedItems:N,loading:V}}function ne(t,n,l){const a=A.useModal(),c=e.ref(null),i=e.ref(!1),u=e.ref(null),s=e.ref(!1),d=e.ref(t.modalSize),v=e.ref(!1);let o=null;e.onMounted(()=>{o=window.matchMedia("(max-width: 767px)"),v.value=o.matches;const r=B=>{v.value=B.matches};o.addEventListener("change",r),e.onUnmounted(()=>{o==null||o.removeEventListener("change",r)})});const y=()=>{t.readonly||(n.clearSearchTerm(),i.value=!1,u.value=null,s.value=!1,d.value=t.modalSize,a.open(),e.nextTick(()=>{var r;(r=c.value)==null||r.focus()}))},g=r=>{l("update:modelValue",r),a.close()},b=()=>{l("update:modelValue",null)},x=()=>{i.value=!0,d.value=t.sizeModalCreateEntity},V=r=>{u.value=r,d.value=t.sizeModalCreateEntity},E=r=>{i.value=!1,u.value=null,s.value=!1,d.value=t.modalSize,r?(a.close(),l("update:modelValue",r)):!n.loading.value&&n.availableItems.value.length===0&&!n.searchTerm.value&&a.close()};return e.watch(a.isOpened,r=>{r&&n.load&&n.load(),r||(i.value=!1,d.value=t.modalSize)}),e.watch(()=>{var r;return(r=n.dynamicIsLoad)==null?void 0:r.value},()=>{var r;n.dynamicIsLoad&&!n.loading.value&&n.dynamicIsLoad.value&&!n.searchTerm.value&&((r=n.nodes)==null?void 0:r.value.length)===0&&(s.value=!0,d.value=t.sizeModalCreateEntity)}),{modal:a,searchInput:c,creatingEntity:i,editEntity:u,startCreate:s,currentModalSize:d,isMobileView:v,openPicker:y,selectItem:g,onClear:b,onCreateEntity:x,onEditEntity:V,onCloseCreateEntity:E}}const ae={class:"relative px-4 pt-3 pb-2"},ie={class:"relative"},oe=["value","placeholder"],re=e.defineComponent({__name:"EntityPickerSearch",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:""}},emits:["update:modelValue"],setup(t,{expose:n,emit:l}){const a=l,c=e.ref(null),i=u=>{a("update:modelValue",u.target.value)};return n({focus:()=>{var u;return(u=c.value)==null?void 0:u.focus()}}),(u,s)=>(e.openBlock(),e.createElementBlock("div",ae,[e.createElementVNode("div",ie,[s[0]||(s[0]=e.createElementVNode("svg",{class:"absolute left-3 top-1/2 -translate-y-1/2 w-5 h-5 text-[#979CA9]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.createElementVNode("input",{ref_key:"inputRef",ref:c,value:t.modelValue,type:"text",class:"w-full h-10 pl-11 pr-3 border border-[#E2E7EF] rounded-[10px] text-sm placeholder:text-[#979CA9] focus:outline-none focus:ring-2 focus:ring-primary-base focus:border-transparent",placeholder:t.placeholder,onInput:i},null,40,oe)])]))}}),se={class:"px-3 pb-2"},de={class:"text-xs font-semibold tracking-[0.4px]"},ce=e.defineComponent({__name:"EntityPickerCreateButton",props:{label:{type:String,required:!0}},emits:["click"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("button",{type:"button",class:"w-full h-10 flex items-center justify-center gap-2 bg-[#FAFAFA] border border-[#E3ECF2] rounded-[10px] text-[#4089E0] hover:bg-[#F2F4F8] hover:border-[#D6DDE7] transition-colors",onClick:l[0]||(l[0]=a=>n.$emit("click"))},[l[1]||(l[1]=e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",de,e.toDisplayString(t.label),1)])]))}}),ue={key:0,class:"flex items-center justify-center w-8 h-8 flex-shrink-0"},me={key:0,class:"w-5 h-5 rounded-full bg-[#4089E0] flex items-center justify-center"},ye={key:1,class:"w-4 h-4 text-[#525B66]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},fe=e.defineComponent({__name:"EntityPickerIndicator",props:{variant:{type:String,default:"check"},selected:{type:Boolean,default:!1}},setup(t){return(n,l)=>t.variant!=="none"?(e.openBlock(),e.createElementBlock("div",ue,[t.selected?(e.openBlock(),e.createElementBlock("span",me,[...l[0]||(l[0]=[e.createElementVNode("svg",{class:"w-3 h-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"3"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"})],-1)])])):t.variant==="navigation"?(e.openBlock(),e.createElementBlock("svg",ye,[...l[1]||(l[1]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 4.5l7.5 7.5-7.5 7.5"},null,-1)])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}}),ve={class:"flex-1 min-w-0"},ge=e.defineComponent({__name:"EntityPickerListItem",props:{selected:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},avatarText:{type:String,default:""},avatarSrc:{type:String,default:""},avatarSize:{type:[String,Number],default:40},iconWrapperClass:{type:String,default:""},itemClass:{type:String,default:""},titleClass:{type:String,default:""},subtitleClass:{type:String,default:""},indicator:{type:String,default:"check"},showEdit:{type:Boolean,default:!1},editLabel:{type:String,default:""}},emits:["select","edit"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex items-center gap-3 py-3 px-4 hover:bg-secondary-body-hover cursor-pointer",[{"bg-gray-50":t.selected},t.itemClass]]),onClick:l[1]||(l[1]=a=>n.$emit("select"))},[e.createElementVNode("div",{class:e.normalizeClass(["flex-shrink-0",t.iconWrapperClass])},[e.renderSlot(n.$slots,"icon",{},()=>[e.createVNode(e.unref(I._sfc_main),{text:t.avatarText,src:t.avatarSrc,rounded:!1,size:String(t.avatarSize),class:"!rounded-[10px]"},null,8,["text","src","size"])])],2),e.createElementVNode("div",ve,[e.createElementVNode("p",{class:e.normalizeClass(t.titleClass)},e.toDisplayString(t.title),3),t.subtitle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(t.subtitleClass)},[e.renderSlot(n.$slots,"additional",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])],2)):e.createCommentVNode("",!0)]),t.showEdit?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"text-xs font-semibold text-[#4089E0] hover:text-primary-active flex-shrink-0 tracking-[0.4px]",onClick:l[0]||(l[0]=e.withModifiers(a=>n.$emit("edit"),["stop"]))},e.toDisplayString(t.editLabel),1)):e.createCommentVNode("",!0),e.createVNode(fe,{variant:t.indicator,selected:t.selected},null,8,["variant","selected"])],2))}}),ke={key:0,class:"flex items-center justify-center py-8"},he={key:1,class:"relative px-5 py-10 text-center"},Ce={class:"mb-4 text-sm text-gray-500"},Se={key:2,class:"p-3 text-center mt-6"},be={class:"text-xs"},Ee=e.defineComponent({__name:"EntityPickerList",props:{loading:{type:Boolean,default:!1},items:{type:Array,default:()=>[]},searchTerm:{type:String,default:""},scrollHeightClass:{type:[String,Object],default:""},resolvers:{type:Object,required:!0},emptyMessage:{type:String,default:""},notFoundLabel:{type:String,default:""},createWithQueryLabel:{type:String,default:""},canCreate:{type:Boolean,default:!1},itemSize:{type:[String,Number],default:40},itemIconClass:{type:String,default:""},itemTitleClass:{type:String,default:""},itemSubtitleClass:{type:String,default:""},itemIndicator:{type:String,default:"check"},canEdit:{type:Boolean,default:!1},editLabel:{type:String,default:""}},emits:["select","edit","create"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["divide-y divide-[#E3ECF2] overflow-auto",t.scrollHeightClass])},[t.loading?(e.openBlock(),e.createElementBlock("div",ke,[...l[1]||(l[1]=[e.createElementVNode("div",{class:"animate-spin w-6 h-6 border-2 border-primary-base border-t-transparent rounded-full"},null,-1)])])):t.items.length===0&&!t.searchTerm?(e.openBlock(),e.createElementBlock("div",he,[e.renderSlot(n.$slots,"empty",{},()=>[e.createElementVNode("p",Ce,e.toDisplayString(t.emptyMessage),1)])])):t.items.length===0&&t.searchTerm?(e.openBlock(),e.createElementBlock("div",Se,[e.createElementVNode("p",be,[e.createTextVNode(e.toDisplayString(t.notFoundLabel)+" ",1),e.createElementVNode("b",null,e.toDisplayString(t.searchTerm),1)]),t.canCreate?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"w-full text-xs text-blue-400 hover:text-blue-300 mt-2",onClick:l[0]||(l[0]=a=>n.$emit("create"))},e.toDisplayString(t.createWithQueryLabel),1)):e.createCommentVNode("",!0)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:3},e.renderList(t.items,a=>(e.openBlock(),e.createBlock(ge,{key:t.resolvers.getEntityListKey(a),selected:t.resolvers.isSelected(a),title:t.resolvers.getEntityListLabel(a),subtitle:t.resolvers.getEntityListAdditional(a),"avatar-text":t.resolvers.getEntityListLabel(a),"avatar-src":t.resolvers.getEntityListAvatar(a),"avatar-size":t.itemSize,"icon-wrapper-class":t.itemIconClass,"title-class":t.itemTitleClass,"subtitle-class":t.itemSubtitleClass,indicator:t.itemIndicator,"show-edit":t.resolvers.isSelected(a)&&t.canEdit,"edit-label":t.editLabel,onSelect:c=>n.$emit("select",a),onEdit:c=>n.$emit("edit",t.resolvers.getEntityKey(a))},e.createSlots({_:2},[n.$slots.itemIcon?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"itemIcon",{item:a})]),key:"0"}:void 0,n.$slots.itemAdditional?{name:"additional",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"itemAdditional",{item:a})]),key:"1"}:void 0]),1032,["selected","title","subtitle","avatar-text","avatar-src","avatar-size","icon-wrapper-class","title-class","subtitle-class","indicator","show-edit","edit-label","onSelect","onEdit"]))),128))],2))}}),Be={key:0,class:"text-xs px-2 py-1 text-red-600"},xe="text-sm font-semibold text-black truncate leading-5 tracking-[0.4px]",Ve="text-xs text-[#979CA9] font-normal leading-5 truncate tracking-[0.4px]",we=e.defineComponent({__name:"OneEntityPicker",props:{t:{type:Function,required:!1,default:void 0},title:{required:!1,type:String,default:""},icon:{type:[Object,Function,null],default:null},labelSelect:{type:String,default:""},labelClass:{type:String,default:""},iconClass:{type:String,default:""},iconClassBlock:{type:String,default:""},labelSelectNote:{type:String,default:""},labelCreateButton:{type:String,default:""},modelValue:{required:!0,type:[Object,null],default:null},items:{type:Array,default:()=>[]},entityListKey:{required:!1,type:String,default:"id"},entityListLabel:{required:!1,type:String,default:"name"},entityListAvatar:{required:!1,type:String,default:""},entityListAdditional:{required:!1,type:String,default:""},entityKey:{required:!1,type:String,default:"id"},entityAvatar:{required:!1,type:String,default:""},entityLabel:{required:!1,type:String,default:"name"},entityAdditional:{required:!1,type:String,default:""},isLoading:{required:!1,type:Boolean,default:!1},listEntityUse:{required:!1,type:Function,default:null},validation:{required:!1,type:Object,default:null},validationIndex:{required:!1,type:String,default:""},sizeModalCreateEntity:{required:!1,type:String,default:"sm"},readonly:{required:!1,type:Boolean,default:!1},variant:{type:String,default:"default",validator:t=>["default","compact","minimal","pill","tag"].includes(t)},tagColor:{type:String,default:"#525B66"},modalTitle:{required:!1,type:String,default:""},modalTitlePosition:{required:!1,type:String,default:"left",validator:t=>["left","center"].includes(t)},modalSize:{required:!1,type:String,default:"sm"},searchPlaceholder:{required:!1,type:String,default:""},listItemIndicator:{required:!1,type:String,default:"check",validator:t=>["check","navigation","none"].includes(t)},listItemSize:{required:!1,type:[String,Number],default:40},listItemIconClass:{required:!1,type:String,default:""},listItemTitleClass:{required:!1,type:String,default:""},listItemSubtitleClass:{required:!1,type:String,default:""},noCreate:{type:Boolean,default:!1},noEdit:{type:Boolean,default:!1},noSearch:{type:Boolean,default:!1},noIcon:{type:Boolean,default:!1},listEmptyMessage:{type:String,default:""},editButtonLabel:{type:String,default:""}},emits:["update:modelValue","onSetEntity"],setup(t,{emit:n}){const l=F.useOnebI18n(),a=t,c=n,i=e.computed(()=>a.t??l),u=te(a),s=le(a,u),{searchTerm:d,selectedGroup:v,setSelectedGroup:o,sortedItems:y,loading:g}=s,{modal:b,searchInput:x,creatingEntity:V,editEntity:E,startCreate:r,currentModalSize:B,isMobileView:N,openPicker:f,selectItem:S,onClear:h,onCreateEntity:k,onEditEntity:w,onCloseCreateEntity:L}=ne(a,s,c),z=e.computed(()=>a.modalTitle||i.value("ui.entity_picker.Select")),M=e.computed(()=>a.listItemTitleClass||xe),q=e.computed(()=>a.listItemSubtitleClass||Ve),T=e.computed(()=>a.noSearch?"sm:h-[52vh] h-[86dvh] min-h-[300px]":"sm:h-[40vh] h-[60dvh]"),j=e.computed(()=>V.value||r.value?"create":E.value?"edit":"browse"),p=e.computed(()=>{const m=[];return a.validation==null||a.validationIndex==null||Object.keys(a.validation).forEach($=>{$.startsWith(a.validationIndex)&&m.push(...a.validation[$])}),m});return(m,$)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(ee,{variant:t.variant,"model-value":t.modelValue,icon:t.icon,title:t.title,"label-select":t.labelSelect,"label-select-note":t.labelSelectNote,"label-class":t.labelClass,"icon-class":t.iconClass,"icon-class-block":t.iconClassBlock,"no-icon":t.noIcon,readonly:t.readonly,"tag-color":t.tagColor,"change-label":i.value("ui.entity_picker.Change"),resolvers:e.unref(u),onOpen:e.unref(f),onClear:e.unref(h)},e.createSlots({_:2},[m.$slots.button?{name:"button",fn:e.withCtx(C=>[e.renderSlot(m.$slots,"button",e.normalizeProps(e.guardReactiveProps(C)))]),key:"0"}:void 0,m.$slots.entityAdditional?{name:"entityAdditional",fn:e.withCtx(({item:C})=>[e.renderSlot(m.$slots,"entityAdditional",{item:C})]),key:"1"}:void 0]),1032,["variant","model-value","icon","title","label-select","label-select-note","label-class","icon-class","icon-class-block","no-icon","readonly","tag-color","change-label","resolvers","onOpen","onClear"]),e.createVNode(U,{useModal:e.unref(b),title:z.value,"title-center":t.modalTitlePosition==="center",size:e.unref(B),"mobile-view":e.unref(N),view:j.value},e.createSlots({create:e.withCtx(()=>[e.renderSlot(m.$slots,"creating",{onCloseCreateEntity:e.unref(L),find:e.unref(d)})]),edit:e.withCtx(()=>[e.renderSlot(m.$slots,"edit",{onCloseCreateEntity:e.unref(L),editId:e.unref(E)})]),list:e.withCtx(()=>[e.createVNode(Ee,{loading:e.unref(g),items:e.unref(y),"search-term":e.unref(d),"scroll-height-class":T.value,resolvers:e.unref(u),"empty-message":t.listEmptyMessage||i.value("ui.entity_picker.List empty"),"not-found-label":i.value("ui.entity_picker.Nothing found for"),"create-with-query-label":`${t.labelCreateButton} «${e.unref(d)}»`,"can-create":!t.noCreate&&!!t.labelCreateButton,"item-size":t.listItemSize,"item-icon-class":t.listItemIconClass,"item-title-class":M.value,"item-subtitle-class":q.value,"item-indicator":t.listItemIndicator,"can-edit":!!m.$slots.edit&&!t.noEdit,"edit-label":t.editButtonLabel||i.value("ui.entity_picker.Edit"),onSelect:e.unref(S),onEdit:e.unref(w),onCreate:e.unref(k)},e.createSlots({_:2},[m.$slots.creating?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"creating",{onCloseCreateEntity:e.unref(L),find:e.unref(d)})]),key:"0"}:void 0,m.$slots.entityListIcon?{name:"itemIcon",fn:e.withCtx(({item:C})=>[e.renderSlot(m.$slots,"entityListIcon",{item:C})]),key:"1"}:void 0,m.$slots.entityAdditional?{name:"itemAdditional",fn:e.withCtx(({item:C})=>[e.renderSlot(m.$slots,"entityAdditional",{item:C})]),key:"2"}:void 0]),1032,["loading","items","search-term","scroll-height-class","resolvers","empty-message","not-found-label","create-with-query-label","can-create","item-size","item-icon-class","item-title-class","item-subtitle-class","item-indicator","can-edit","edit-label","onSelect","onEdit","onCreate"])]),_:2},[m.$slots.modalHeader?{name:"header",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"modalHeader")]),key:"0"}:void 0,t.noSearch?void 0:{name:"search",fn:e.withCtx(()=>[e.createVNode(re,{ref_key:"searchInput",ref:x,modelValue:e.unref(d),"onUpdate:modelValue":$[0]||($[0]=C=>e.isRef(d)?d.value=C:null),placeholder:t.searchPlaceholder||i.value("ui.entity_picker.Search")},null,8,["modelValue","placeholder"])]),key:"1"},m.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"prepend",{selectedGroup:e.unref(v),setSelectedGroup:e.unref(o)})]),key:"2"}:void 0,!e.unref(g)&&!t.noCreate&&t.labelCreateButton?{name:"createButton",fn:e.withCtx(()=>[e.createVNode(ce,{label:t.labelCreateButton,onClick:e.unref(k)},null,8,["label","onClick"])]),key:"3"}:void 0]),1032,["useModal","title","title-center","size","mobile-view","view"]),p.value.length>0?(e.openBlock(),e.createElementBlock("div",Be,e.toDisplayString(p.value.join(" ")),1)):e.createCommentVNode("",!0)],64))}}),Le={"entity_picker.Loading":"Завантаження...","entity_picker.Select":"Вибір","entity_picker.Search":"Пошук...","entity_picker.Change":"Змінити","entity_picker.Edit":"Редагувати","entity_picker.List empty":"Список порожній","entity_picker.Nothing found for":"За запитом нічого не знайдено:"};exports.OneEntityPicker=we;exports.defaultEntityPickerTranslations=Le;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),A=require("../useModal-0c73777f.cjs"),I=require("../OneAvatar.vue_vue_type_script_setup_true_lang-2d9f44f1.cjs");require("vue-markdown-render");require("../OneMarkdown.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");require("../SpinnerIcon.vue_vue_type_style_index_0_lang-0ea8fbf8.cjs");const F=require("../i18n/index.cjs");require("../_plugin-vue_export-helper-f246444f.cjs");const P={key:0,class:"overflow-auto max-h-[85dvh] h-full"},O={key:1,class:"overflow-auto max-h-[85dvh] h-full"},K={key:2,class:"pb-6"},D={key:0,class:"px-2 pt-3"},U=e.defineComponent({__name:"EntityPickerModal",props:{useModal:{type:Object,required:!0},title:{type:String,default:""},subtitle:{type:String,default:""},titleCenter:{type:Boolean,default:!1},size:{type:String,default:"sm"},mobileView:{type:Boolean,default:!1},view:{type:String,default:"browse"}},setup(t){return(n,l)=>t.useModal.isOpened.value?(e.openBlock(),e.createBlock(e.unref(A.OneModal),{key:0,useModal:t.useModal,title:t.title,subtitle:t.subtitle,size:t.size,classModal:t.mobileView,titleCenter:t.titleCenter},e.createSlots({default:e.withCtx(()=>[t.view==="create"?(e.openBlock(),e.createElementBlock("div",P,[e.renderSlot(n.$slots,"create")])):t.view==="edit"?(e.openBlock(),e.createElementBlock("div",O,[e.renderSlot(n.$slots,"edit")])):(e.openBlock(),e.createElementBlock("div",K,[n.$slots.header?(e.openBlock(),e.createElementBlock("div",D,[e.renderSlot(n.$slots,"header")])):e.createCommentVNode("",!0),e.renderSlot(n.$slots,"search"),e.renderSlot(n.$slots,"prepend"),e.renderSlot(n.$slots,"createButton"),e.renderSlot(n.$slots,"list")]))]),_:2},[n.$slots.subtitle?{name:"subtitle",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"subtitle")]),key:"0"}:void 0]),1032,["useModal","title","subtitle","size","classModal","titleCenter"])):e.createCommentVNode("",!0)}}),R={key:0,class:"relative select-none inline-flex items-center gap-3"},G={class:"text-sm font-medium truncate text-inherit"},W=["aria-label"],H={key:0,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},Q={key:1,class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},J={key:0},X={class:""},Y={key:0,class:"space-y-1 flex flex-col"},Z={key:0,class:"text-gray-400 text-xs font-light"},_={key:0,class:"text-[10px] text-gray-500 ml-1 py-0.5 rounded-full font-semibold hover:text-info-base"},ee=e.defineComponent({__name:"EntityPickerTrigger",props:{variant:{type:String,default:"default"},modelValue:{type:[Object,null],default:null},icon:{type:[Object,Function,null],default:null},title:{type:String,default:""},labelSelect:{type:String,default:""},labelSelectNote:{type:String,default:""},labelClass:{type:String,default:""},iconClass:{type:String,default:""},iconClassBlock:{type:String,default:""},noIcon:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},tagColor:{type:String,default:"#525B66"},changeLabel:{type:String,default:""},resolvers:{type:Object,required:!0}},emits:["open","clear"],setup(t,{emit:n}){const l=t,a=n,u=()=>a("open"),i=e.computed(()=>l.variant==="compact"||l.variant==="minimal"),m=e.computed(()=>l.variant==="compact"),s=e.computed(()=>l.variant==="pill"),d=e.computed(()=>l.modelValue==null?{}:{backgroundColor:`${l.tagColor}1A`}),v=e.computed(()=>l.modelValue!=null?l.tagColor:"#979CA9");return(o,y)=>t.variant==="tag"?(e.openBlock(),e.createElementBlock("div",R,[e.renderSlot(o.$slots,"button",{title:t.title,modelValue:t.modelValue,openModal:u},()=>[t.title?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(["font-semibold text-black",t.labelClass])},e.toDisplayString(t.title),3)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex items-center gap-2 h-10 px-3 rounded-xl transition-colors",t.readonly?"":"cursor-pointer",t.modelValue==null?"bg-[#FAFAFA] hover:bg-gray-100 text-[#979CA9]":"hover:opacity-90 text-black"]),style:e.normalizeStyle(d.value),onClick:u},[t.icon?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:0,class:e.normalizeClass(["w-5 h-5 flex-shrink-0",t.iconClass]),style:e.normalizeStyle({color:v.value})},null,8,["style","class"])):e.createCommentVNode("",!0),e.createElementVNode("span",G,e.toDisplayString(t.modelValue!=null?t.resolvers.getEntityLabel(t.modelValue):t.labelSelect),1),t.readonly?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"text-[#979CA9] hover:text-gray-700 flex-shrink-0 -mr-1","aria-label":t.changeLabel,onClick:y[0]||(y[0]=e.withModifiers(g=>t.modelValue!=null?o.$emit("clear"):u(),["stop"]))},[t.modelValue!=null?(e.openBlock(),e.createElementBlock("svg",H,[...y[2]||(y[2]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"},null,-1)])])):(e.openBlock(),e.createElementBlock("svg",Q,[...y[3]||(y[3]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M19.5 8.25l-7.5 7.5-7.5-7.5"},null,-1)])]))],8,W))],6)])])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["relative select-none",i.value?"space-y-1.5":"space-y-3"])},[e.renderSlot(o.$slots,"button",{title:t.title,modelValue:t.modelValue,openModal:u},()=>[t.title?(e.openBlock(),e.createElementBlock("p",{key:0,class:e.normalizeClass(["font-semibold pb-0",t.labelClass])},e.toDisplayString(t.title),3)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["flex justify-between z-10 items-center",[t.readonly?"":"cursor-pointer hover:bg-gray-50",i.value?["rounded-full",m.value?"bg-[#4089E01A]":""]:"border px-3 pr-3 py-3 rounded-lg h-[72px]",s.value?"border-none !py-0 h-max !rounded-full":"",s.value&&t.modelValue!==null?"bg-[#4089E01A]":""]])},[e.createElementVNode("div",{class:e.normalizeClass(["flex items-center w-full gap-x-3",[i.value?"!gap-x-1 px-0.5 py-0.5":"",s.value?"h-9 p-0":""]]),onClick:u},[!t.noIcon&&(s.value||i.value||t.icon||t.modelValue)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["w-10 h-10 flex items-center justify-center",t.iconClassBlock])},[s.value?(e.openBlock(),e.createElementBlock("div",J,[t.modelValue==null?(e.openBlock(),e.createElementBlock("svg",{key:0,class:e.normalizeClass(["w-3 text-blue-600",t.iconClass]),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[...y[4]||(y[4]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"},null,-1)])],2)):(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{key:1,class:e.normalizeClass(["w-5",t.iconClass])},null,8,["class"]))])):t.icon!=null&&t.modelValue==null||i.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(i.value?"":"bg-gray-50 p-2.5 rounded-lg")},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.icon),{class:e.normalizeClass([["w-5",t.iconClass],"text-gray-600"])},null,8,["class"]))],2)):t.modelValue?(e.openBlock(),e.createBlock(e.unref(I._sfc_main),{key:2,text:t.resolvers.getEntityLabel(t.modelValue),src:t.resolvers.getEntityAvatar(t.modelValue),rounded:!1,size:"40",class:"!rounded-lg"},null,8,["text","src"])):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),e.createElementVNode("div",X,[t.modelValue==null?(e.openBlock(),e.createElementBlock("div",Y,[e.createElementVNode("div",{class:e.normalizeClass(["font-medium text-gray-600 truncate overflow-hidden whitespace-nowrap",[i.value?"text-xs truncate max-w-[120px] text-[#525B66]":"text-sm",s.value?"!text-xs truncate max-w-[120px] text-[#4089E0]":""]])},e.toDisplayString(t.labelSelect),3),t.labelSelectNote&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("span",Z,e.toDisplayString(t.labelSelectNote),1)):e.createCommentVNode("",!0)])):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["grid items-center pr-2",i.value?"":"py-1"])},[e.createElementVNode("div",{class:e.normalizeClass(["break-all leading-4 truncate !text-sm",{"text-sm font-medium":t.resolvers.getEntityLabel(t.modelValue).length<20,"text-xs font-semibold":t.resolvers.getEntityLabel(t.modelValue).length>20,"truncate text-[#525B66] text-xs":i.value,"truncate text-xs":s.value}])},[e.createTextVNode(e.toDisplayString(t.resolvers.getEntityLabel(t.modelValue))+" ",1),!t.readonly&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("span",_,e.toDisplayString(t.changeLabel),1)):e.createCommentVNode("",!0)],2),t.resolvers.getEntityAdditional(t.modelValue)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["font-thin leading-3 break-all line-clamp-2 pt-1 truncate !text-xs",{"text-xs":t.resolvers.getEntityAdditional(t.modelValue).length<20,"text-[10px]":t.resolvers.getEntityAdditional(t.modelValue).length>20&&t.resolvers.getEntityAdditional(t.modelValue).length<35,"text-[9px]":t.resolvers.getEntityAdditional(t.modelValue).length>35}])},[e.renderSlot(o.$slots,"entityAdditional",{item:t.modelValue},()=>[e.createTextVNode(e.toDisplayString(t.resolvers.getEntityAdditional(t.modelValue)),1)])],2)):e.createCommentVNode("",!0)],2))])],2),t.modelValue!=null&&!t.readonly?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:e.normalizeClass(["rounded-full hover:text-gray-900 text-gray-500",{"mr-2 text-[#525B66] p-0.5":i.value}]),onClick:y[1]||(y[1]=e.withModifiers(g=>o.$emit("clear"),["stop"]))},[...y[5]||(y[5]=[e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M6 18L18 6M6 6l12 12"})],-1)])],2)):!t.readonly&&!i.value&&!s.value?(e.openBlock(),e.createElementBlock("button",{key:1,type:"button",class:"py-2.5 text-gray-500",onClick:u},[...y[6]||(y[6]=[e.createElementVNode("svg",{class:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 4.5l7.5 7.5-7.5 7.5"})],-1)])])):e.createCommentVNode("",!0)],2)])],2))}});function te(t){const n=o=>o?String(o[t.entityLabel]||""):"",l=o=>!o||!t.entityAvatar?"":String(o[t.entityAvatar]||""),a=o=>!o||!t.entityAdditional?"":String(o[t.entityAdditional]||""),u=o=>o?o[t.entityKey]:"",i=o=>o[t.entityListKey];return{getEntityLabel:n,getEntityAvatar:l,getEntityAdditional:a,getEntityKey:u,getEntityListKey:i,getEntityListLabel:o=>String(o[t.entityListLabel]||""),getEntityListAvatar:o=>t.entityListAvatar?String(o[t.entityListAvatar]||""):"",getEntityListAdditional:o=>t.entityListAdditional?String(o[t.entityListAdditional]||""):"",isSelected:o=>u(t.modelValue)===i(o)}}function le(t,n){const l=t.listEntityUse?t.listEntityUse():null,a=l==null?void 0:l.nodes,u=l==null?void 0:l.load,i=l==null?void 0:l.searchTerm,m=l==null?void 0:l.isLoading,s=l==null?void 0:l.isLoad,d=l==null?void 0:l.group,v=e.ref(null),o=e.computed(()=>(d==null?void 0:d.value)??v.value),y=f=>{d?d.value=f:v.value=f},g=e.ref(""),S=e.computed({get:()=>(i==null?void 0:i.value)??g.value,set:f=>{i?i.value=f:g.value=f}}),x=()=>{g.value="",i&&(i.value="")},V=e.computed(()=>(m==null?void 0:m.value)??t.isLoading),E=e.computed(()=>(a==null?void 0:a.value)??t.items),r=e.computed(()=>{const f=E.value;if(t.modelValue==null)return f;const C=n.getEntityKey(t.modelValue);return f.some(k=>n.getEntityListKey(k)===C)?f:[t.modelValue,...f]}),B=e.computed(()=>{if(!S.value)return r.value;const f=S.value.toLowerCase(),C=t.modelValue!=null?n.getEntityKey(t.modelValue):null;return r.value.filter(b=>{if(C!=null&&n.getEntityListKey(b)===C)return!0;const k=n.getEntityListLabel(b).toLowerCase(),w=n.getEntityListAdditional(b).toLowerCase();return k.includes(f)||w.includes(f)})}),N=e.computed(()=>{const f=B.value;if(t.modelValue==null)return f;const C=n.getEntityKey(t.modelValue),b=f.findIndex(L=>n.getEntityListKey(L)===C);if(b<=0)return f;const k=f.slice(),[w]=k.splice(b,1);return k.unshift(w),k});return{load:u,dynamicIsLoad:s,nodes:a,searchTerm:S,clearSearchTerm:x,selectedGroup:o,setSelectedGroup:y,rawItems:E,availableItems:r,filteredItems:B,sortedItems:N,loading:V}}function ne(t,n,l){const a=A.useModal(),u=e.ref(null),i=e.ref(!1),m=e.ref(null),s=e.ref(!1),d=e.ref(t.modalSize),v=e.ref(!1);let o=null;e.onMounted(()=>{o=window.matchMedia("(max-width: 767px)"),v.value=o.matches;const r=B=>{v.value=B.matches};o.addEventListener("change",r),e.onUnmounted(()=>{o==null||o.removeEventListener("change",r)})});const y=()=>{t.readonly||(n.clearSearchTerm(),i.value=!1,m.value=null,s.value=!1,d.value=t.modalSize,a.open(),e.nextTick(()=>{var r;(r=u.value)==null||r.focus()}))},g=r=>{l("update:modelValue",r),a.close()},S=()=>{l("update:modelValue",null)},x=()=>{i.value=!0,d.value=t.sizeModalCreateEntity},V=r=>{m.value=r,d.value=t.sizeModalCreateEntity},E=r=>{i.value=!1,m.value=null,s.value=!1,d.value=t.modalSize,r?(a.close(),l("update:modelValue",r)):!n.loading.value&&n.availableItems.value.length===0&&!n.searchTerm.value&&a.close()};return e.watch(a.isOpened,r=>{r&&n.load&&n.load(),r||(i.value=!1,d.value=t.modalSize)}),e.watch(()=>{var r;return(r=n.dynamicIsLoad)==null?void 0:r.value},()=>{var r;n.dynamicIsLoad&&!n.loading.value&&n.dynamicIsLoad.value&&!n.searchTerm.value&&((r=n.nodes)==null?void 0:r.value.length)===0&&(s.value=!0,d.value=t.sizeModalCreateEntity)}),{modal:a,searchInput:u,creatingEntity:i,editEntity:m,startCreate:s,currentModalSize:d,isMobileView:v,openPicker:y,selectItem:g,onClear:S,onCreateEntity:x,onEditEntity:V,onCloseCreateEntity:E}}const ae={class:"relative px-4 pt-3 pb-2"},ie={class:"relative"},oe=["value","placeholder"],re=e.defineComponent({__name:"EntityPickerSearch",props:{modelValue:{type:String,default:""},placeholder:{type:String,default:""}},emits:["update:modelValue"],setup(t,{expose:n,emit:l}){const a=l,u=e.ref(null),i=m=>{a("update:modelValue",m.target.value)};return n({focus:()=>{var m;return(m=u.value)==null?void 0:m.focus()}}),(m,s)=>(e.openBlock(),e.createElementBlock("div",ae,[e.createElementVNode("div",ie,[s[0]||(s[0]=e.createElementVNode("svg",{class:"absolute left-3 top-1/2 -translate-y-1/2 w-5 h-5 text-[#979CA9]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"})],-1)),e.createElementVNode("input",{ref_key:"inputRef",ref:u,value:t.modelValue,type:"text",class:"w-full h-10 pl-11 pr-3 border border-[#E2E7EF] rounded-[10px] text-sm placeholder:text-[#979CA9] focus:outline-none focus:ring-2 focus:ring-primary-base focus:border-transparent",placeholder:t.placeholder,onInput:i},null,40,oe)])]))}}),se={class:"px-3 pb-2"},de={class:"text-xs font-semibold tracking-[0.4px]"},ce=e.defineComponent({__name:"EntityPickerCreateButton",props:{label:{type:String,required:!0}},emits:["click"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("button",{type:"button",class:"w-full h-10 flex items-center justify-center gap-2 bg-[#FAFAFA] border border-[#E3ECF2] rounded-[10px] text-[#4089E0] hover:bg-[#F2F4F8] hover:border-[#D6DDE7] transition-colors",onClick:l[0]||(l[0]=a=>n.$emit("click"))},[l[1]||(l[1]=e.createElementVNode("svg",{class:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M12 4.5v15m7.5-7.5h-15"})],-1)),e.createElementVNode("span",de,e.toDisplayString(t.label),1)])]))}}),ue={key:0,class:"flex items-center justify-center w-8 h-8 flex-shrink-0"},me={key:0,class:"w-5 h-5 rounded-full bg-[#4089E0] flex items-center justify-center"},ye={key:1,class:"w-4 h-4 text-[#525B66]",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"2"},fe=e.defineComponent({__name:"EntityPickerIndicator",props:{variant:{type:String,default:"check"},selected:{type:Boolean,default:!1}},setup(t){return(n,l)=>t.variant!=="none"?(e.openBlock(),e.createElementBlock("div",ue,[t.selected?(e.openBlock(),e.createElementBlock("span",me,[...l[0]||(l[0]=[e.createElementVNode("svg",{class:"w-3 h-3 text-white",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor","stroke-width":"3"},[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M4.5 12.75l6 6 9-13.5"})],-1)])])):t.variant==="navigation"?(e.openBlock(),e.createElementBlock("svg",ye,[...l[1]||(l[1]=[e.createElementVNode("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"M8.25 4.5l7.5 7.5-7.5 7.5"},null,-1)])])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)}}),ve={class:"flex-1 min-w-0"},ge=e.defineComponent({__name:"EntityPickerListItem",props:{selected:{type:Boolean,default:!1},title:{type:String,default:""},subtitle:{type:String,default:""},avatarText:{type:String,default:""},avatarSrc:{type:String,default:""},avatarSize:{type:[String,Number],default:40},iconWrapperClass:{type:String,default:""},itemClass:{type:String,default:""},titleClass:{type:String,default:""},subtitleClass:{type:String,default:""},indicator:{type:String,default:"check"},showEdit:{type:Boolean,default:!1},editLabel:{type:String,default:""}},emits:["select","edit"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["flex items-center gap-3 py-3 px-4 hover:bg-secondary-body-hover cursor-pointer",[{"bg-gray-50":t.selected},t.itemClass]]),onClick:l[1]||(l[1]=a=>n.$emit("select"))},[e.createElementVNode("div",{class:e.normalizeClass(["flex-shrink-0",t.iconWrapperClass])},[e.renderSlot(n.$slots,"icon",{},()=>[e.createVNode(e.unref(I._sfc_main),{text:t.avatarText,src:t.avatarSrc,rounded:!1,size:String(t.avatarSize),class:"!rounded-[10px]"},null,8,["text","src","size"])])],2),e.createElementVNode("div",ve,[e.createElementVNode("p",{class:e.normalizeClass(t.titleClass)},e.toDisplayString(t.title),3),t.subtitle?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(t.subtitleClass)},[e.renderSlot(n.$slots,"additional",{},()=>[e.createTextVNode(e.toDisplayString(t.subtitle),1)])],2)):e.createCommentVNode("",!0)]),t.showEdit?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"text-xs font-semibold text-[#4089E0] hover:text-primary-active flex-shrink-0 tracking-[0.4px]",onClick:l[0]||(l[0]=e.withModifiers(a=>n.$emit("edit"),["stop"]))},e.toDisplayString(t.editLabel),1)):e.createCommentVNode("",!0),e.createVNode(fe,{variant:t.indicator,selected:t.selected},null,8,["variant","selected"])],2))}}),ke={key:0,class:"flex items-center justify-center py-8"},be={key:1,class:"relative px-5 py-10 text-center"},he={class:"mb-4 text-sm text-gray-500"},Ce={key:2,class:"p-3 text-center mt-6"},Se={class:"text-xs"},Ee=e.defineComponent({__name:"EntityPickerList",props:{loading:{type:Boolean,default:!1},items:{type:Array,default:()=>[]},searchTerm:{type:String,default:""},scrollHeightClass:{type:[String,Object],default:""},resolvers:{type:Object,required:!0},emptyMessage:{type:String,default:""},notFoundLabel:{type:String,default:""},createWithQueryLabel:{type:String,default:""},canCreate:{type:Boolean,default:!1},itemSize:{type:[String,Number],default:40},itemIconClass:{type:String,default:""},itemTitleClass:{type:String,default:""},itemSubtitleClass:{type:String,default:""},itemIndicator:{type:String,default:"check"},canEdit:{type:Boolean,default:!1},editLabel:{type:String,default:""}},emits:["select","edit","create"],setup(t){return(n,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["divide-y divide-[#E3ECF2] overflow-auto",t.scrollHeightClass])},[t.loading?(e.openBlock(),e.createElementBlock("div",ke,[...l[1]||(l[1]=[e.createElementVNode("div",{class:"animate-spin w-6 h-6 border-2 border-primary-base border-t-transparent rounded-full"},null,-1)])])):t.items.length===0&&!t.searchTerm?(e.openBlock(),e.createElementBlock("div",be,[e.renderSlot(n.$slots,"empty",{},()=>[e.createElementVNode("p",he,e.toDisplayString(t.emptyMessage),1)])])):t.items.length===0&&t.searchTerm?(e.openBlock(),e.createElementBlock("div",Ce,[e.createElementVNode("p",Se,[e.createTextVNode(e.toDisplayString(t.notFoundLabel)+" ",1),e.createElementVNode("b",null,e.toDisplayString(t.searchTerm),1)]),t.canCreate?(e.openBlock(),e.createElementBlock("button",{key:0,type:"button",class:"w-full text-xs text-blue-400 hover:text-blue-300 mt-2",onClick:l[0]||(l[0]=a=>n.$emit("create"))},e.toDisplayString(t.createWithQueryLabel),1)):e.createCommentVNode("",!0)])):(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:3},e.renderList(t.items,a=>(e.openBlock(),e.createBlock(ge,{key:t.resolvers.getEntityListKey(a),selected:t.resolvers.isSelected(a),title:t.resolvers.getEntityListLabel(a),subtitle:t.resolvers.getEntityListAdditional(a),"avatar-text":t.resolvers.getEntityListLabel(a),"avatar-src":t.resolvers.getEntityListAvatar(a),"avatar-size":t.itemSize,"icon-wrapper-class":t.itemIconClass,"title-class":t.itemTitleClass,"subtitle-class":t.itemSubtitleClass,indicator:t.itemIndicator,"show-edit":t.resolvers.isSelected(a)&&t.canEdit,"edit-label":t.editLabel,onSelect:u=>n.$emit("select",a),onEdit:u=>n.$emit("edit",t.resolvers.getEntityKey(a))},e.createSlots({_:2},[n.$slots.itemIcon?{name:"icon",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"itemIcon",{item:a})]),key:"0"}:void 0,n.$slots.itemAdditional?{name:"additional",fn:e.withCtx(()=>[e.renderSlot(n.$slots,"itemAdditional",{item:a})]),key:"1"}:void 0]),1032,["selected","title","subtitle","avatar-text","avatar-src","avatar-size","icon-wrapper-class","title-class","subtitle-class","indicator","show-edit","edit-label","onSelect","onEdit"]))),128))],2))}}),Be={key:0,class:"text-xs px-2 py-1 text-red-600"},xe="text-sm font-semibold text-black truncate leading-5 tracking-[0.4px]",Ve="text-xs text-[#979CA9] font-normal leading-5 truncate tracking-[0.4px]",we=e.defineComponent({__name:"OneEntityPicker",props:{t:{type:Function,required:!1,default:void 0},title:{required:!1,type:String,default:""},icon:{type:[Object,Function,null],default:null},labelSelect:{type:String,default:""},labelClass:{type:String,default:""},iconClass:{type:String,default:""},iconClassBlock:{type:String,default:""},labelSelectNote:{type:String,default:""},labelCreateButton:{type:String,default:""},modelValue:{required:!0,type:[Object,null],default:null},items:{type:Array,default:()=>[]},entityListKey:{required:!1,type:String,default:"id"},entityListLabel:{required:!1,type:String,default:"name"},entityListAvatar:{required:!1,type:String,default:""},entityListAdditional:{required:!1,type:String,default:""},entityKey:{required:!1,type:String,default:"id"},entityAvatar:{required:!1,type:String,default:""},entityLabel:{required:!1,type:String,default:"name"},entityAdditional:{required:!1,type:String,default:""},isLoading:{required:!1,type:Boolean,default:!1},listEntityUse:{required:!1,type:Function,default:null},validation:{required:!1,type:Object,default:null},validationIndex:{required:!1,type:String,default:""},sizeModalCreateEntity:{required:!1,type:String,default:"sm"},readonly:{required:!1,type:Boolean,default:!1},variant:{type:String,default:"default",validator:t=>["default","compact","minimal","pill","tag"].includes(t)},tagColor:{type:String,default:"#525B66"},modalTitle:{required:!1,type:String,default:""},modalSubtitle:{required:!1,type:String,default:""},modalTitlePosition:{required:!1,type:String,default:"left",validator:t=>["left","center"].includes(t)},modalSize:{required:!1,type:String,default:"sm"},searchPlaceholder:{required:!1,type:String,default:""},listItemIndicator:{required:!1,type:String,default:"check",validator:t=>["check","navigation","none"].includes(t)},listItemSize:{required:!1,type:[String,Number],default:40},listItemIconClass:{required:!1,type:String,default:""},listItemTitleClass:{required:!1,type:String,default:""},listItemSubtitleClass:{required:!1,type:String,default:""},noCreate:{type:Boolean,default:!1},noEdit:{type:Boolean,default:!1},noSearch:{type:Boolean,default:!1},noIcon:{type:Boolean,default:!1},listEmptyMessage:{type:String,default:""},editButtonLabel:{type:String,default:""}},emits:["update:modelValue","onSetEntity"],setup(t,{emit:n}){const l=F.useOnebI18n(),a=t,u=n,i=e.computed(()=>a.t??l),m=te(a),s=le(a,m),{searchTerm:d,selectedGroup:v,setSelectedGroup:o,sortedItems:y,loading:g}=s,{modal:S,searchInput:x,creatingEntity:V,editEntity:E,startCreate:r,currentModalSize:B,isMobileView:N,openPicker:f,selectItem:C,onClear:b,onCreateEntity:k,onEditEntity:w,onCloseCreateEntity:L}=ne(a,s,u),z=e.computed(()=>a.modalTitle||i.value("ui.entity_picker.Select")),M=e.computed(()=>a.listItemTitleClass||xe),q=e.computed(()=>a.listItemSubtitleClass||Ve),T=e.computed(()=>a.noSearch?"sm:h-[52vh] h-[86dvh] min-h-[300px]":"sm:h-[40vh] h-[60dvh]"),j=e.computed(()=>V.value||r.value?"create":E.value?"edit":"browse"),p=e.computed(()=>{const c=[];return a.validation==null||a.validationIndex==null||Object.keys(a.validation).forEach($=>{$.startsWith(a.validationIndex)&&c.push(...a.validation[$])}),c});return(c,$)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(ee,{variant:t.variant,"model-value":t.modelValue,icon:t.icon,title:t.title,"label-select":t.labelSelect,"label-select-note":t.labelSelectNote,"label-class":t.labelClass,"icon-class":t.iconClass,"icon-class-block":t.iconClassBlock,"no-icon":t.noIcon,readonly:t.readonly,"tag-color":t.tagColor,"change-label":i.value("ui.entity_picker.Change"),resolvers:e.unref(m),onOpen:e.unref(f),onClear:e.unref(b)},e.createSlots({_:2},[c.$slots.button?{name:"button",fn:e.withCtx(h=>[e.renderSlot(c.$slots,"button",e.normalizeProps(e.guardReactiveProps(h)))]),key:"0"}:void 0,c.$slots.entityAdditional?{name:"entityAdditional",fn:e.withCtx(({item:h})=>[e.renderSlot(c.$slots,"entityAdditional",{item:h})]),key:"1"}:void 0]),1032,["variant","model-value","icon","title","label-select","label-select-note","label-class","icon-class","icon-class-block","no-icon","readonly","tag-color","change-label","resolvers","onOpen","onClear"]),e.createVNode(U,{useModal:e.unref(S),title:z.value,subtitle:t.modalSubtitle,"title-center":t.modalTitlePosition==="center",size:e.unref(B),"mobile-view":e.unref(N),view:j.value},e.createSlots({create:e.withCtx(()=>[e.renderSlot(c.$slots,"creating",{onCloseCreateEntity:e.unref(L),find:e.unref(d)})]),edit:e.withCtx(()=>[e.renderSlot(c.$slots,"edit",{onCloseCreateEntity:e.unref(L),editId:e.unref(E)})]),list:e.withCtx(()=>[e.createVNode(Ee,{loading:e.unref(g),items:e.unref(y),"search-term":e.unref(d),"scroll-height-class":T.value,resolvers:e.unref(m),"empty-message":t.listEmptyMessage||i.value("ui.entity_picker.List empty"),"not-found-label":i.value("ui.entity_picker.Nothing found for"),"create-with-query-label":`${t.labelCreateButton} «${e.unref(d)}»`,"can-create":!t.noCreate&&!!t.labelCreateButton,"item-size":t.listItemSize,"item-icon-class":t.listItemIconClass,"item-title-class":M.value,"item-subtitle-class":q.value,"item-indicator":t.listItemIndicator,"can-edit":!!c.$slots.edit&&!t.noEdit,"edit-label":t.editButtonLabel||i.value("ui.entity_picker.Edit"),onSelect:e.unref(C),onEdit:e.unref(w),onCreate:e.unref(k)},e.createSlots({_:2},[c.$slots.creating?{name:"empty",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"creating",{onCloseCreateEntity:e.unref(L),find:e.unref(d)})]),key:"0"}:void 0,c.$slots.entityListIcon?{name:"itemIcon",fn:e.withCtx(({item:h})=>[e.renderSlot(c.$slots,"entityListIcon",{item:h})]),key:"1"}:void 0,c.$slots.entityAdditional?{name:"itemAdditional",fn:e.withCtx(({item:h})=>[e.renderSlot(c.$slots,"entityAdditional",{item:h})]),key:"2"}:void 0]),1032,["loading","items","search-term","scroll-height-class","resolvers","empty-message","not-found-label","create-with-query-label","can-create","item-size","item-icon-class","item-title-class","item-subtitle-class","item-indicator","can-edit","edit-label","onSelect","onEdit","onCreate"])]),_:2},[c.$slots.modalSubtitle?{name:"subtitle",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"modalSubtitle")]),key:"0"}:void 0,c.$slots.modalHeader?{name:"header",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"modalHeader")]),key:"1"}:void 0,t.noSearch?void 0:{name:"search",fn:e.withCtx(()=>[e.createVNode(re,{ref_key:"searchInput",ref:x,modelValue:e.unref(d),"onUpdate:modelValue":$[0]||($[0]=h=>e.isRef(d)?d.value=h:null),placeholder:t.searchPlaceholder||i.value("ui.entity_picker.Search")},null,8,["modelValue","placeholder"])]),key:"2"},c.$slots.prepend?{name:"prepend",fn:e.withCtx(()=>[e.renderSlot(c.$slots,"prepend",{selectedGroup:e.unref(v),setSelectedGroup:e.unref(o)})]),key:"3"}:void 0,!e.unref(g)&&!t.noCreate&&t.labelCreateButton?{name:"createButton",fn:e.withCtx(()=>[e.createVNode(ce,{label:t.labelCreateButton,onClick:e.unref(k)},null,8,["label","onClick"])]),key:"4"}:void 0]),1032,["useModal","title","subtitle","title-center","size","mobile-view","view"]),p.value.length>0?(e.openBlock(),e.createElementBlock("div",Be,e.toDisplayString(p.value.join(" ")),1)):e.createCommentVNode("",!0)],64))}}),Le={"entity_picker.Loading":"Завантаження...","entity_picker.Select":"Вибір","entity_picker.Search":"Пошук...","entity_picker.Change":"Змінити","entity_picker.Edit":"Редагувати","entity_picker.List empty":"Список порожній","entity_picker.Nothing found for":"За запитом нічого не знайдено:"};exports.OneEntityPicker=we;exports.defaultEntityPickerTranslations=Le;
|