UNPKG

@opencloud-eu/design-system

Version:

OpenCloud Design System is used to design OpenCloud UI components

1 lines 111 kB
"use strict";var lt=Object.create;var me=Object.defineProperty;var st=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var it=Object.getPrototypeOf,ct=Object.prototype.hasOwnProperty;var dt=(t,o,a,s)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of rt(o))!ct.call(t,l)&&l!==a&&me(t,l,{get:()=>o[l],enumerable:!(s=st(o,l))||s.enumerable});return t};var fe=(t,o,a)=>(a=t!=null?lt(it(t)):{},dt(o||!t||!t.__esModule?me(a,"default",{value:t,enumerable:!0}):a,t));const e=require("vue"),O=require("./uniqueId-DWKF6sGt.cjs"),he=require("vue-inline-svg"),P=require("vue3-gettext"),j=require("lodash-es"),X=require("tippy.js"),ut=require("@popperjs/core"),pt=require("deepmerge"),U=require("focus-trap-vue"),ge=require("luxon"),mt=require("portal-vue"),ft=require("fuse.js"),ht=require("./index-DgRHrSdS.cjs"),T=e.defineComponent({__name:"OcIcon",props:{accessibleLabel:{default:""},color:{default:""},fillType:{default:"fill"},name:{default:"info"},size:{default:"medium"},type:{default:"span"}},emits:["loaded"],setup(t,{emit:o}){he.name="inline-svg";const a=o,s=e.computed(()=>O.uniqueId("oc-icon-title-")),l=e.computed(()=>{const i=`${O.getIconUrlPrefix()}icons/`,r=t.fillType.toLowerCase();return r==="none"?`${i}${t.name}.svg`:`${i}${t.name}-${r}.svg`}),n=i=>p(O.getSizeClass(i)),p=i=>{if(i!==null)return`oc-icon-${i}`},c=i=>{if(t.accessibleLabel!==""){const r=document.createElement("title");r.setAttribute("id",s.value),r.appendChild(document.createTextNode(t.accessibleLabel)),i.insertBefore(r,i.firstChild)}return i};return(i,r)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.type),{class:e.normalizeClass([{"oc-button-reset":i.type==="button"},"oc-icon",n(i.size)])},{default:e.withCtx(()=>[e.createVNode(e.unref(he),{src:l.value,"transform-source":c,"aria-hidden":i.accessibleLabel===""?"true":null,"aria-labelledby":i.accessibleLabel===""?null:s.value,focusable:i.accessibleLabel===""?"false":null,style:e.normalizeStyle(i.color!==""?{fill:i.color}:{}),onLoaded:r[0]||(r[0]=b=>a("loaded"))},null,8,["src","aria-hidden","aria-labelledby","focusable","style"])]),_:1},8,["class"]))}}),$e=e.defineComponent({__name:"OcApplicationIcon",props:{icon:{},colorPrimary:{}},setup(t){const o=e.computed(()=>"rgba(255,255,255,0.7)"),a=e.computed(()=>O.getHexFromCssVar(t.colorPrimary||"")),s=e.computed(()=>!!t.colorPrimary),l=e.computed(()=>{const p=O.generateHashedColorForString(t.icon);return O.rgbToHex(O.setDesiredContrastRatio(O.hexToRgb(p),O.hexToRgb("#ffffff"),4))}),n=e.computed(()=>{const p=e.unref(s)?e.unref(a):e.unref(l);return{background:e.unref(p)}});return(p,c)=>(e.openBlock(),e.createElementBlock("div",{class:"oc-application-icon oc-flex-inline oc-flex-middle oc-flex-center",style:e.normalizeStyle(n.value)},[e.createVNode(T,{name:p.icon,color:o.value,size:"medium"},null,8,["name","color"])],4))}}),gt=["src","alt","aria-hidden","title","loading"],_=e.defineComponent({__name:"OcImage",props:{src:{},alt:{default:""},loadingType:{default:"eager"},title:{}},setup(t){const o=e.computed(()=>t.alt.length===0);return(a,s)=>(e.openBlock(),e.createElementBlock("img",{src:a.src,alt:a.alt,"aria-hidden":`${o.value}`,title:a.title,loading:a.loadingType},null,8,gt))}}),bt=t=>t.split(/[ -]/).map(o=>o.replace(/[^\p{L}\p{Nd}]/giu,"")).filter(Boolean).map(o=>o.charAt(0)).slice(0,3).join("").toUpperCase(),yt=["width","aria-label","aria-hidden","focusable","role","data-test-user-name"],J=e.defineComponent({__name:"OcAvatar",props:{accessibleLabel:{default:""},color:{default:"white"},backgroundColor:{},src:{default:""},userName:{default:""},width:{default:50}},setup(t){const o=["#b82015","#c21c53","#9C27B0","#673AB7","#3F51B5","#106892","#055c68","#208377","#1a761d","#476e1a","#636d0b","#8e5c11","#795548","#465a64"],a=e.ref(!1),s=e.computed(()=>!a.value&&!!t.src),l=e.computed(()=>e.unref(t.backgroundColor)?t.backgroundColor:s.value?"":i(t.userName.length,o)),n=e.computed(()=>{const r={width:`${t.width}px`,height:`${t.width}px`,lineHeight:`${t.width}px`},b={backgroundColor:l.value,fontSize:`${Math.floor(t.width/2.5)}px`,fontFamily:"Helvetica, Arial, sans-serif",color:"white"};return Object.assign(r,b),r}),p=e.computed(()=>s.value?"":bt(t.userName)),c=()=>{a.value=!0},i=(r,b)=>b[r%b.length];return(r,b)=>(e.openBlock(),e.createElementBlock("span",{class:"vue-avatar--wrapper oc-avatar",style:e.normalizeStyle(n.value),width:r.width,"aria-label":r.accessibleLabel===""?null:r.accessibleLabel,"aria-hidden":r.accessibleLabel===""?"true":null,focusable:r.accessibleLabel===""?"false":null,role:r.accessibleLabel===""?null:"img","data-test-user-name":r.userName},[s.value?(e.openBlock(),e.createBlock(_,{key:0,"loading-type":"lazy",class:"avatarImg",src:r.src,onError:c},null,8,["src"])):(e.openBlock(),e.createElementBlock("span",{key:1,class:"avatar-initials",style:e.normalizeStyle({color:r.color})},e.toDisplayString(p.value),5))],12,yt))}}),kt=["textContent"],Q=e.defineComponent({__name:"OcAvatarCount",props:{count:{},size:{default:30}},setup(t){const o=e.computed(()=>Math.floor(t.size/2.5)+"px");return(a,s)=>(e.openBlock(),e.createElementBlock("span",{class:"oc-avatar-count",style:e.normalizeStyle({width:a.size+"px",height:a.size+"px",fontSize:o.value}),textContent:e.toDisplayString(`+${a.count}`)},null,12,kt))}}),vt=["data-test-item-name","aria-label","aria-hidden","focusable","role"],F=e.defineComponent({__name:"OcAvatarItem",props:{name:{},accessibleLabel:{default:""},background:{default:"var(--oc-role-secondary)"},icon:{},iconColor:{default:"var(--oc-role-on-secondary)"},iconFillType:{default:"fill"},iconSize:{default:"small"},width:{default:30}},setup(t){const o=e.computed(()=>t.width+"px"),a=e.computed(()=>t.icon!==null),s=e.computed(()=>t.background||l()),l=()=>{const n=["#b82015","#c21c53","#9C27B0","#673AB7","#3F51B5","#106892","#055c68","#208377","#1a761d","#476e1a","#636d0b","#8e5c11","#795548","#465a64"];return n[Math.floor(Math.random()*n.length)]};return(n,p)=>(e.openBlock(),e.createElementBlock("div",{"data-test-item-name":n.name,"aria-label":n.accessibleLabel===""?null:n.accessibleLabel,"aria-hidden":n.accessibleLabel===""?"true":null,focusable:n.accessibleLabel===""?"false":null,role:n.accessibleLabel===""?null:"img"},[e.createElementVNode("span",{class:"oc-avatar-item",style:e.normalizeStyle({backgroundColor:s.value,"--icon-color":n.iconColor,"--width":o.value})},[a.value?(e.openBlock(),e.createBlock(T,{key:0,name:n.icon,size:n.iconSize,"fill-type":n.iconFillType},null,8,["name","size","fill-type"])):e.createCommentVNode("",!0)],4)],8,vt))}}),Y=e.defineComponent({__name:"OcAvatarFederated",props:{name:{},accessibleLabel:{default:""},iconSize:{default:"small"},width:{default:30}},setup(t){return(o,a)=>(e.openBlock(),e.createBlock(F,{width:o.width,"icon-size":o.iconSize,icon:"cloud","icon-fill-type":"line","icon-color":"#5AAB9F",name:o.name,"accessible-label":o.accessibleLabel},null,8,["width","icon-size","name","accessible-label"]))}}),Z=e.defineComponent({__name:"OcAvatarGroup",props:{name:{},accessibleLabel:{default:""},iconSize:{default:"small"},width:{default:30}},setup(t){return(o,a)=>(e.openBlock(),e.createBlock(F,{width:o.width,"icon-size":o.iconSize,icon:"group",name:o.name,"accessible-label":o.accessibleLabel},null,8,["width","icon-size","name","accessible-label"]))}}),ee=e.defineComponent({__name:"OcAvatarGuest",props:{name:{},accessibleLabel:{default:""},iconSize:{default:"small"},width:{default:30}},setup(t){return(o,a)=>(e.openBlock(),e.createBlock(F,{width:o.width,"icon-size":o.iconSize,icon:"global","icon-fill-type":"line","icon-color":"#D78841",name:o.name,"accessible-label":o.accessibleLabel},null,8,["width","icon-size","name","accessible-label"]))}}),te=e.defineComponent({__name:"OcAvatarLink",props:{name:{},accessibleLabel:{default:""},iconSize:{default:"small"},width:{default:30}},setup(t){return(o,a)=>(e.openBlock(),e.createBlock(F,{width:o.width,"icon-size":o.iconSize,icon:"link",name:o.name,"accessible-label":o.accessibleLabel},null,8,["width","icon-size","name","accessible-label"]))}}),Ct=["textContent"],Ve=e.defineComponent({__name:"OcAvatars",props:{items:{},accessibleDescription:{},isTooltipDisplayed:{type:Boolean,default:!1},maxDisplayed:{},stacked:{type:Boolean,default:!1},hoverEffect:{type:Boolean,default:!1},gapSize:{default:"xsmall"},iconSize:{default:"small"},width:{default:30}},setup(t){const o=e.useTemplateRef("avatarsRef"),a=e.computed(()=>t.maxDisplayed&&t.maxDisplayed<t.items.length),s=e.computed(()=>{const r=t.items.filter(b=>b.avatarType==="user");return a.value?r.slice(0,t.maxDisplayed):r}),l=e.computed(()=>{const r=t.items.filter(b=>b.avatarType!=="user");return a.value?t.maxDisplayed<=s.value.length?[]:r.slice(0,t.maxDisplayed-s.value.length):r}),n=e.computed(()=>{if(t.isTooltipDisplayed){const r=s.value.map(h=>h.displayName);l.value.length>0&&r.push(...l.value.map(h=>h.name));let b=r.join(", ");return a.value&&(b+=` +${t.items.length-t.maxDisplayed}`),b}return null}),p=r=>{switch(r.avatarType){case"link":return te;case"remote":return Y;case"group":return Z;case"guest":return ee}},c=e.computed(()=>t.stacked&&t.hoverEffect&&e.unref(t.items).length>1),i=e.computed(()=>[`oc-avatars-gap-${O.getSizeClass(t.gapSize)}`,...t.stacked?["oc-avatars-stacked"]:[],...e.unref(c)?["oc-avatars-hover-effect"]:[]]);return e.onMounted(()=>{if(!e.unref(o)||!e.unref(c))return;Array.from(e.unref(o).children).forEach((b,h)=>{b.style.zIndex=`${900+h}`})}),(r,b)=>{const h=e.resolveDirective("oc-tooltip");return e.openBlock(),e.createElementBlock("span",null,[e.withDirectives((e.openBlock(),e.createElementBlock("span",{ref_key:"avatarsRef",ref:o,class:e.normalizeClass(["oc-avatars",i.value]),"aria-hidden":"true"},[e.renderSlot(r.$slots,"userAvatars",{avatars:s.value,width:r.width},()=>[s.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(s.value,B=>(e.openBlock(),e.createBlock(J,{key:B.username,src:B.avatar,"user-name":B.displayName,width:r.width,"icon-size":r.iconSize},null,8,["src","user-name","width","icon-size"]))),128)):e.createCommentVNode("",!0)]),l.value.length>0?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(l.value,(B,C)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(p(B)),{key:B.name+C,name:B.name,width:r.width,"icon-size":r.iconSize},null,8,["name","width","icon-size"]))),128)):e.createCommentVNode("",!0),a.value?(e.openBlock(),e.createBlock(Q,{key:1,count:r.items.length-r.maxDisplayed},null,8,["count"])):e.createCommentVNode("",!0)],2)),[[h,n.value]]),r.accessibleDescription?(e.openBlock(),e.createElementBlock("span",{key:0,class:"oc-invisible-sr",textContent:e.toDisplayString(r.accessibleDescription)},null,8,Ct)):e.createCommentVNode("",!0)])}}}),M=e.defineComponent({__name:"OcButton",props:{appearance:{default:"outline"},ariaLabel:{},colorRole:{default:"secondary"},disabled:{type:Boolean,default:!1},gapSize:{default:"medium"},href:{},justifyContent:{default:"center"},showSpinner:{type:Boolean,default:!1},size:{default:"medium"},submit:{default:"button"},target:{},to:{},type:{default:"button"},noHover:{type:Boolean,default:!1}},emits:["click"],setup(t,{emit:o}){const a=o,s=e.computed(()=>{const c=["oc-button","oc-rounded",`oc-button-${O.getSizeClass(t.size)}`,`oc-button-justify-content-${t.justifyContent}`,`oc-button-gap-${O.getSizeClass(t.gapSize)}`,`oc-button-${j.kebabCase(t.colorRole)}`,`oc-button-${t.appearance}`,`oc-button-${j.kebabCase(t.colorRole)}-${t.appearance}`];return t.noHover&&c.push("no-hover"),c}),l=e.computed(()=>({...t.href&&{href:t.href},...t.target&&{target:t.target},...t.to&&{to:t.to},...t.type==="button"&&{type:t.submit},...t.type==="button"&&{disabled:t.disabled}})),n=e.computed(()=>({...t.type==="button"&&{click:p}})),p=c=>{a("click",c)};return(c,i)=>{const r=e.resolveComponent("oc-spinner");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(c.type),e.mergeProps(l.value,{"aria-label":c.ariaLabel,class:s.value},e.toHandlers(n.value)),{default:e.withCtx(()=>[c.showSpinner?(e.openBlock(),e.createBlock(r,{key:0,size:"small",class:"spinner"})):e.createCommentVNode("",!0),e.renderSlot(c.$slots,"default")]),_:3},16,["aria-label","class"])}}}),Se={name:"hideOnEsc",defaultValue:!0,fn({hide:t}){const o=a=>{a.code==="Escape"&&t()};return{onShow:()=>{document.addEventListener("keydown",o)},onHide:()=>{document.removeEventListener("keydown",o)}}}},Bt={name:"customProps",defaultValue:!0,fn(t){return{onCreate(){t.popper.setAttribute("aria-hidden","true"),t.popper.classList.add("oc-tooltip")}}}},q=t=>{if(t)try{t.destroy()}catch{}},be=(t,{value:o={}})=>{if(Object.prototype.toString.call(o)!=="[object Object]"&&(o={content:o}),o.content!==0&&!o.content||o.content===""){q(t.tooltip),t.tooltip=null;return}const a=pt.all([{ignoreAttributes:!0,interactive:!1,aria:{content:null,expanded:!1}},o]);if(!t.tooltip){t.tooltip=X(t,{...a,plugins:[Se,Bt]});return}t.tooltip.setProps(a)},wt={name:"OcTooltip",beforeMount:be,updated:be,unmounted:t=>q(t.tooltip)},$t=["id"],H=e.defineComponent({__name:"OcDrop",props:{closeOnClick:{type:Boolean,default:!1},dropId:{default:()=>O.uniqueId("oc-drop-")},isNested:{type:Boolean,default:!1},mode:{default:"click"},offset:{},paddingSize:{default:"medium"},popperOptions:{default:()=>({})},position:{default:"bottom-start"},target:{},toggle:{default:""}},emits:["hideDrop","showDrop"],setup(t,{expose:o,emit:a}){const s=a,l=e.ref(null),n=e.ref(null),p=m=>{var y;(y=e.unref(n))==null||y.show(m)},c=m=>{var y;(y=e.unref(n))==null||y.hide(m)};o({show:p,hide:c,tippy:n});const i=m=>{var w;const y=(w=m.target.closest(".oc-button"))==null?void 0:w.hasAttribute("aria-expanded");t.closeOnClick&&!y&&c()},r=m=>{var g;const y=(g=l.value)==null?void 0:g.closest(".tippy-box");m.relatedTarget&&!(y!=null&&y.contains(m.relatedTarget))&&c()};e.onMounted(()=>{var m;(m=l.value)==null||m.addEventListener("focusout",r)}),e.onBeforeUnmount(()=>{var m;(m=l.value)==null||m.removeEventListener("focusout",r)});const b=()=>{var m,y;return(y=(m=window.matchMedia)==null?void 0:m.call(window,"(hover: none) and (pointer: coarse)"))==null?void 0:y.matches},h=e.computed(()=>({hover:"mouseenter focus"})[e.unref(B)]||e.unref(B)),B=e.computed(()=>b()?"click":t.mode),C=e.computed(()=>`oc-p-${O.getSizeClass(t.paddingSize)}`);return e.watch(()=>t.position,()=>{var m;(m=e.unref(n))==null||m.setProps({placement:t.position})}),e.watch(B,()=>{var m;(m=e.unref(n))==null||m.setProps({trigger:h.value})}),e.onBeforeUnmount(()=>{q(e.unref(n))}),e.onMounted(()=>{var g,$,k;q(e.unref(n));const m=t.target?document.querySelector(t.target):t.toggle?document.querySelector(t.toggle):(g=l.value)==null?void 0:g.previousElementSibling,y=l.value;if(!m||!y)return;const w={trigger:h.value,placement:t.position,arrow:!1,hideOnClick:!(t.isNested&&e.unref(B)==="hover"),interactive:!0,plugins:[Se],theme:"none",maxWidth:416,offset:t.offset??0,...!t.isNested&&{onShow:E=>{s("showDrop"),X.hideAll({exclude:E})},onHide:()=>{s("hideDrop")}},popperOptions:{...t.popperOptions,modifiers:[...($=t.popperOptions)!=null&&$.modifiers?t.popperOptions.modifiers:[],{name:"fixVerticalPosition",enabled:!0,phase:"beforeWrite",requiresIfExists:["offset","preventOverflow","flip"],fn({state:E}){const N=ut.detectOverflow(E),x=E.modifiersData.fullHeight||E.elements.popper.offsetHeight,f=N.top*-1-10,u=f+x+N.bottom*-1,v=u-f,L=u-v;x>v&&x>L&&(E.styles.popper.top=`-${f}px`,E.modifiersData.fullHeight=x),x>u&&(E.styles.popper.maxHeight=`${u-10}px`,E.styles.popper.overflowY="auto",E.styles.popper.overflowX="hidden")}}]},content:y};t.target&&(w.triggerTarget=t.toggle?document.querySelector(t.toggle):(k=l.value)==null?void 0:k.previousElementSibling),n.value=X(m,w)}),(m,y)=>(e.openBlock(),e.createElementBlock("div",{id:m.dropId,ref_key:"drop",ref:l,class:"oc-drop oc-box-shadow-medium oc-rounded",onClick:i},[m.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["oc-card oc-card-body",C.value])},[e.renderSlot(m.$slots,"default")],2)):e.renderSlot(m.$slots,"special",{key:1})],8,$t))}}),Vt=["id","aria-label"],St={class:"oc-breadcrumb-list oc-flex oc-m-rm oc-p-rm"},Ot=["data-key","data-item-id","aria-hidden","onDragenter","onDragleave","onMouseleave","onDrop"],Et={class:"oc-breadcrumb-item-text oc-breadcrumb-item-navigable"},Dt=["textContent"],Nt=["aria-current","textContent"],xt={key:0,class:"oc-breadcrumb-mobile-current"},Tt=["textContent"],Oe=e.defineComponent({__name:"OcBreadcrumb",props:{items:{},contextMenuPadding:{default:"medium"},id:{default:()=>O.uniqueId("oc-breadcrumbs-")},maxWidth:{default:()=>-1},showContextActions:{type:Boolean,default:!1},truncationOffset:{default:2},variation:{default:"default"}},emits:["itemDroppedBreadcrumb"],setup(t,{emit:o}){const a=o,{$gettext:s}=P.useGettext(),l=e.ref([]),n=e.ref([]),p=e.ref([]);p.value=t.items;const c=k=>document.querySelector(`.oc-breadcrumb-list [data-item-id="${k}"]`),i=(k,E)=>!(!k.id||E===e.unref(p).length-1||k.isTruncationPlaceholder||k.isStaticNav),r=(k,E)=>{if(i(k,E)&&typeof k.to=="object"){const N=k.to;N.path=N.path||"/",a(O.EVENT_ITEM_DROPPED_BREADCRUMB,N)}},b=()=>{let k=100;return l.value.forEach(E=>{var f;const N=c(E.id),x=((f=N==null?void 0:N.getBoundingClientRect())==null?void 0:f.width)||0;k+=x}),k},h=k=>{const E=t.maxWidth;if(!E)return;const N=b();if(!(E<N)||l.value.length<=t.truncationOffset+1)return;const f=l.value.splice(k,1);n.value.push(f[0]),h(k)},B=e.computed(()=>n.value.length>=1?e.unref(n)[e.unref(n).length-1]:{to:{}}),C=()=>{p.value=[...t.items],p.value.length>t.truncationOffset-1&&p.value.splice(t.truncationOffset-1,0,{text:"...",allowContextActions:!1,to:{},isTruncationPlaceholder:!0}),l.value=[...p.value],n.value=[],e.nextTick(()=>{h(t.truncationOffset)})};e.watch([()=>t.maxWidth,()=>t.items],C,{immediate:!0});const m=e.computed(()=>{if(!(t.items.length===0||!t.items))return[...t.items].reverse()[0]}),y=e.computed(()=>{var k;return(k=[...t.items].reverse()[1])==null?void 0:k.to}),w=e.computed(()=>s("Show actions for current folder")),g=k=>t.items.length-1===k?"page":null,$=(k,E,N,x)=>{var L,d;if(!i(k,E)||(((L=x.dataTransfer)==null?void 0:L.types)||[]).some(D=>D==="Files")||(d=x.currentTarget)!=null&&d.contains(x.relatedTarget))return;const u=c(k.id).children[0].classList,v="oc-breadcrumb-item-dragover";N?u.remove(v):u.add(v)};return(k,E)=>{const N=e.resolveComponent("router-link"),x=e.resolveDirective("oc-tooltip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("nav",{id:k.id,class:e.normalizeClass(`oc-breadcrumb oc-breadcrumb-${k.variation}`),"aria-label":e.unref(s)("Breadcrumbs")},[e.createElementVNode("ol",St,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(f,u)=>(e.openBlock(),e.createElementBlock("li",{key:u,"data-key":u,"data-item-id":f.id,"aria-hidden":f.isTruncationPlaceholder,class:e.normalizeClass(["oc-breadcrumb-list-item","oc-flex","oc-flex-middle",{"oc-invisible-sr":n.value.indexOf(f)!==-1||f.isTruncationPlaceholder&&n.value.length===0}]),onDragover:E[0]||(E[0]=e.withModifiers(()=>{},["prevent"])),onDragenter:e.withModifiers(v=>$(f,u,!1,v),["prevent"]),onDragleave:e.withModifiers(v=>$(f,u,!0,v),["prevent"]),onMouseleave:v=>$(f,u,!0,v),onDrop:v=>r(f,u)},[f.to?(e.openBlock(),e.createBlock(N,{key:0,"aria-current":g(u),to:f.isTruncationPlaceholder?B.value.to:f.to},{default:e.withCtx(()=>[e.createElementVNode("span",Et,e.toDisplayString(f.text),1)]),_:2},1032,["aria-current","to"])):f.onClick?(e.openBlock(),e.createBlock(M,{key:1,"aria-current":g(u),appearance:"raw",class:"oc-flex","no-hover":"",onClick:f.onClick},{default:e.withCtx(()=>[e.createElementVNode("span",{class:e.normalizeClass(["oc-breadcrumb-item-text","oc-breadcrumb-item-navigable",{"oc-breadcrumb-item-text-last":u===p.value.length-1}]),textContent:e.toDisplayString(f.text)},null,10,Dt)]),_:2},1032,["aria-current","onClick"])):(e.openBlock(),e.createElementBlock("span",{key:2,class:"oc-breadcrumb-item-text","aria-current":g(u),tabindex:"-1",textContent:e.toDisplayString(f.text)},null,8,Nt)),u!==p.value.length-1?(e.openBlock(),e.createBlock(T,{key:3,color:"var(--oc-role-on-surface)",name:"arrow-right-s",class:"oc-mx-xs","fill-type":"line"})):e.createCommentVNode("",!0),k.showContextActions&&u===p.value.length-1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:4},[e.withDirectives((e.openBlock(),e.createBlock(M,{id:"oc-breadcrumb-contextmenu-trigger","aria-label":w.value,appearance:"raw","no-hover":""},{default:e.withCtx(()=>[e.createVNode(T,{name:"more-2",color:"var(--oc-role-on-surface)"})]),_:1},8,["aria-label"])),[[x,w.value]]),e.createVNode(H,{"drop-id":"oc-breadcrumb-contextmenu",toggle:"#oc-breadcrumb-contextmenu-trigger",mode:"click","close-on-click":"","padding-size":k.contextMenuPadding},{default:e.withCtx(()=>[e.renderSlot(k.$slots,"contextMenu")]),_:3},8,["padding-size"])],64)):e.createCommentVNode("",!0)],42,Ot))),128))]),y.value&&p.value.length>1?(e.openBlock(),e.createBlock(M,{key:0,appearance:"raw",type:"router-link","aria-label":e.unref(s)("Navigate one level up"),to:y.value,class:"oc-breadcrumb-mobile-navigation"},{default:e.withCtx(()=>[e.createVNode(T,{name:"arrow-left-s","fill-type":"line",size:"large"})]),_:1},8,["aria-label","to"])):e.createCommentVNode("",!0)],10,Vt),p.value.length>1?(e.openBlock(),e.createElementBlock("div",xt,[e.createElementVNode("span",{class:"oc-text-truncate","aria-current":"page",textContent:e.toDisplayString(m.value.text)},null,8,Tt)])):e.createCommentVNode("",!0)],64)}}}),Mt=["id","value","disabled","aria-label"],zt=["for","textContent"],Ee=e.defineComponent({__name:"OcCheckbox",props:e.mergeModels({label:{},disabled:{type:Boolean,default:!1},id:{default:()=>O.uniqueId("oc-checkbox-")},labelHidden:{type:Boolean,default:!1},option:{},size:{default:"medium"}},{modelValue:{type:[Boolean,Array]},modelModifiers:{}}),emits:e.mergeModels(["click"],["update:modelValue"]),setup(t,{emit:o}){const a=o,s=e.useModel(t,"modelValue"),l=e.computed(()=>["oc-checkbox","oc-rounded","oc-checkbox-"+O.getSizeClass(t.size),{"oc-checkbox-checked":p.value}]),n=e.computed(()=>({"oc-cursor-pointer":!t.disabled})),p=e.computed(()=>{const i=e.unref(s);return Array.isArray(i)?i.some(r=>j.isEqual(r,t.option)):i}),c=i=>{s.value=!s.value,a("click",i)};return(i,r)=>(e.openBlock(),e.createElementBlock("span",{onClick:r[1]||(r[1]=b=>i.$emit("click",b))},[e.withDirectives(e.createElementVNode("input",{id:i.id,"onUpdate:modelValue":r[0]||(r[0]=b=>s.value=b),type:"checkbox",name:"checkbox",class:e.normalizeClass(l.value),value:i.option,disabled:i.disabled,"aria-label":i.labelHidden?i.label:null,onKeydown:e.withKeys(c,["enter"])},null,42,Mt),[[e.vModelCheckbox,s.value]]),i.labelHidden?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("label",{key:0,for:i.id,class:e.normalizeClass(n.value),textContent:e.toDisplayString(i.label)},null,10,zt))]))}}),Lt=["for"],Pt={key:0,class:"oc-text-error","aria-hidden":"true"},It={class:"oc-color-input-wrapper oc-position-relative"},At=["id","aria-invalid","value","disabled"],Ft=["id","textContent"],De=e.defineComponent({inheritAttrs:!1,__name:"OcColorInput",props:{id:{default:()=>O.uniqueId("oc-color-input-")},modelValue:{default:""},clearButtonEnabled:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},label:{},errorMessage:{},fixMessageLine:{type:Boolean,default:!1},descriptionMessage:{},requiredMark:{type:Boolean,default:!1}},emits:["change","update:modelValue"],setup(t,{emit:o}){const a=o,s=e.computed(()=>t.fixMessageLine||!!t.errorMessage||!!t.descriptionMessage),l=e.computed(()=>`${t.id}-message`),n=e.useAttrs(),p=e.computed(()=>{const C={};(t.errorMessage||t.descriptionMessage)&&(C["aria-describedby"]=l.value);const{change:m,input:y,class:w,...g}=n;return{...g,...C}}),c=e.computed(()=>(!!t.errorMessage).toString()),i=e.computed(()=>t.errorMessage?t.errorMessage:t.descriptionMessage),r=e.computed(()=>!t.disabled&&t.clearButtonEnabled&&!!t.modelValue);function b(){B(""),h(null)}const h=C=>{a("change",C)},B=C=>{a("update:modelValue",C)};return(C,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(C.$attrs.class)},[e.renderSlot(C.$slots,"label",{},()=>[e.createElementVNode("label",{class:"oc-label",for:C.id},[e.createTextVNode(e.toDisplayString(C.label)+" ",1),C.requiredMark?(e.openBlock(),e.createElementBlock("span",Pt,"*")):e.createCommentVNode("",!0)],8,Lt)]),e.createElementVNode("div",It,[e.createElementVNode("input",e.mergeProps({id:C.id},p.value,{type:"color","aria-invalid":c.value,class:["oc-color-input oc-input oc-rounded",{"oc-color-input-danger":!!C.errorMessage,"clear-action-visible":r.value}],value:C.modelValue,disabled:C.disabled,onChange:m[0]||(m[0]=y=>h(y.target.value)),onInput:m[1]||(m[1]=y=>B(y.target.value))}),null,16,At),r.value?(e.openBlock(),e.createBlock(M,{key:0,class:"oc-mr-xs oc-position-center-right oc-color-input-btn-clear",appearance:"raw","no-hover":"",onClick:b},{default:e.withCtx(()=>[e.createVNode(T,{name:"close",size:"small"})]),_:1})):e.createCommentVNode("",!0)]),s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["oc-color-input-message oc-text-small",{"oc-color-input-description":!!C.descriptionMessage,"oc-color-input-danger":!!C.errorMessage}])},[C.errorMessage?(e.openBlock(),e.createBlock(T,{key:0,name:"error-warning",size:"small","fill-type":"line","aria-hidden":"true",class:"oc-mr-xs"})):e.createCommentVNode("",!0),e.createElementVNode("span",{id:l.value,class:e.normalizeClass({"oc-color-input-description":!!C.descriptionMessage,"oc-color-input-danger":!!C.errorMessage}),textContent:e.toDisplayString(i.value)},null,10,Ft)],2)):e.createCommentVNode("",!0)],2))}}),Rt={class:"info-drop-content"},Ht={class:"oc-flex oc-flex-between info-header oc-border-b oc-pb-s"},jt=["textContent"],qt=["textContent"],Kt={key:1,class:"info-list"},Ut=["textContent"],Gt={components:{FocusTrap:U.FocusTrap}},oe=e.defineComponent({...Gt,__name:"OcInfoDrop",props:{title:{},dropId:{default:()=>O.uniqueId("oc-info-drop-")},endText:{default:""},list:{default:()=>[]},mode:{default:"click"},readMoreLink:{default:""},text:{default:""},toggle:{default:""}},setup(t){const o=e.ref(!1),a=e.computed(()=>(t.list||[]).filter(s=>!!s.text));return(s,l)=>(e.openBlock(),e.createBlock(H,{ref:"drop",class:"oc-width-1-1 oc-info-drop","drop-id":s.dropId,toggle:s.toggle,mode:s.mode,"close-on-click":"",onHideDrop:l[0]||(l[0]=()=>o.value=!1),onShowDrop:l[1]||(l[1]=()=>o.value=!0)},{default:e.withCtx(()=>[e.createVNode(e.unref(U.FocusTrap),{active:o.value},{default:e.withCtx(()=>[e.createElementVNode("div",Rt,[e.createElementVNode("div",Ht,[e.createElementVNode("h4",{class:"oc-m-rm info-title",textContent:e.toDisplayString(s.$gettext(s.title))},null,8,jt),e.createVNode(M,{appearance:"raw","aria-label":s.$gettext("Close")},{default:e.withCtx(()=>[e.createVNode(T,{name:"close","fill-type":"line",size:"medium"})]),_:1},8,["aria-label"])]),s.text?(e.openBlock(),e.createElementBlock("p",{key:0,class:"info-text",textContent:e.toDisplayString(s.$gettext(s.text))},null,8,qt)):e.createCommentVNode("",!0),a.value.length?(e.openBlock(),e.createElementBlock("dl",Kt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(n,p)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.headline?"dt":"dd"),{key:p},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$gettext(n.text)),1)]),_:2},1024))),128))])):e.createCommentVNode("",!0),s.endText?(e.openBlock(),e.createElementBlock("p",{key:2,class:"info-text-end",textContent:e.toDisplayString(s.$gettext(s.endText))},null,8,Ut)):e.createCommentVNode("",!0),s.readMoreLink?(e.openBlock(),e.createBlock(M,{key:3,type:"a",appearance:"raw",size:"small",class:"info-more-link",href:s.readMoreLink,target:"_blank"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(s.$gettext("Read more")),1)]),_:1},8,["href"])):e.createCommentVNode("",!0)])]),_:1},8,["active"])]),_:1},8,["drop-id","toggle","mode"]))}}),Wt={class:"oc-contextual-helper"},Ne=e.defineComponent({__name:"OcContextualHelper",props:{title:{},endText:{default:""},list:{default:()=>[]},readMoreLink:{default:""},text:{default:""}},setup(t){const o=e.ref(O.uniqueId("oc-contextual-helper-")),a=e.computed(()=>`${o.value}-button`),s=e.computed(()=>`#${a.value}`),l=e.computed(()=>({title:t.title,text:t.text,list:t.list,endText:t.endText,readMoreLink:t.readMoreLink}));return(n,p)=>(e.openBlock(),e.createElementBlock("div",Wt,[e.createVNode(M,{id:a.value,"aria-label":n.$gettext("Show more information"),appearance:"raw","no-hover":""},{default:e.withCtx(()=>[e.createVNode(T,{name:"question","fill-type":"line",size:"small"})]),_:1},8,["id","aria-label"]),e.createVNode(oe,e.mergeProps({"drop-id":o.value,toggle:s.value},l.value),null,16,["drop-id","toggle"])]))}}),xe=e.defineComponent({__name:"OcDatepicker",props:{label:{},currentDate:{},isClearable:{type:Boolean,default:!0},minDate:{}},emits:["dateChanged"],setup(t,{emit:o}){const a=o,{$gettext:s,current:l}=P.useGettext(),n=e.ref(""),p=e.computed(()=>{const r=ge.DateTime.fromISO(e.unref(n)).endOf("day");return r.isValid?r:null}),c=e.computed(()=>!t.minDate||!e.unref(p)?!1:e.unref(p)<t.minDate),i=e.computed(()=>e.unref(c)?s("The date must be after %{date}",{date:t.minDate.minus({day:1}).setLocale(l).toLocaleString(ge.DateTime.DATE_SHORT)}):"");return e.watch(()=>t.currentDate,()=>{if(t.currentDate){n.value=t.currentDate.toISODate();return}n.value=void 0},{immediate:!0}),e.watch(p,()=>{a("dateChanged",{date:e.unref(p),error:e.unref(c)})},{deep:!0}),(r,b)=>{var B;const h=e.resolveComponent("oc-text-input");return e.openBlock(),e.createBlock(h,e.mergeProps({modelValue:n.value,"onUpdate:modelValue":b[0]||(b[0]=C=>n.value=C)},r.$attrs,{label:r.label,type:"date",min:(B=r.minDate)==null?void 0:B.toISODate(),"fix-message-line":!0,"error-message":i.value,"clear-button-enabled":r.isClearable,"clear-button-accessible-label":e.unref(s)("Clear date"),class:"oc-date-picker"}),null,16,["modelValue","label","min","error-message","clear-button-enabled","clear-button-accessible-label"])}}}),Xt={class:"details-list"},Te=e.defineComponent({__name:"OcDefinitionList",props:{items:{}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("dl",Xt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.items,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.term},[e.createElementVNode("dt",null,e.toDisplayString(s.term),1),e.createElementVNode("dd",null,e.toDisplayString(s.definition),1)],64))),128))]))}}),_t={class:"oc-dropzone"},Me=e.defineComponent({name:"OcDropzone",__name:"OcDropzone",setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",_t,[e.renderSlot(o.$slots,"default")]))}}),Jt=["for"],Qt={key:0,class:"oc-text-error","aria-hidden":"true"},Yt={class:"oc-flex oc-flex-middle"},Zt=["id","aria-invalid","multiple","accept"],eo={class:"oc-file-input-files oc-rounded oc-ml-s"},to={key:0,class:"oc-py-xs oc-px-s oc-text-small oc-flex oc-flex-middle"},oo=["id","textContent"],ao=e.defineComponent({inheritAttrs:!1,__name:"OcFileInput",props:{label:{},id:{default:()=>O.uniqueId("oc-fileinput-")},fileTypes:{default:""},multiple:{type:Boolean,default:!1},modelValue:{default:null},clearButtonEnabled:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},errorMessage:{default:""},fixMessageLine:{type:Boolean,default:!1},descriptionMessage:{default:""},requiredMark:{type:Boolean,default:!1}},emits:["update:modelValue","focus"],setup(t,{emit:o}){const a=o,s=e.computed(()=>t.fixMessageLine||!!t.errorMessage||!!t.descriptionMessage),l=e.computed(()=>`${t.id}-message`),n=e.useAttrs(),p=e.computed(()=>{const w={};(t.errorMessage||t.descriptionMessage)&&(w["aria-describedby"]=l.value);const{change:g,input:$,focus:k,class:E,...N}=n;return{...N,...w}}),c=e.computed(()=>(!!t.errorMessage).toString()),i=e.computed(()=>t.errorMessage?t.errorMessage:t.descriptionMessage),r=e.useTemplateRef("inputRef"),b=e.useTemplateRef("inputBtnRef"),h=e.computed(()=>e.unref(t.modelValue)?Array.from(e.unref(r).files).map(g=>g.name).join(", "):""),B=()=>{e.unref(r)&&e.unref(r).click()},C=()=>{a("update:modelValue",null),e.unref(r).value=null},m=()=>{a("update:modelValue",e.unref(r).files)},y=async()=>{await e.nextTick(),e.unref(b).focus(),a("focus",e.unref(b))};return(w,g)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(w.$attrs.class)},[e.renderSlot(w.$slots,"label",{},()=>[e.createElementVNode("label",{class:"oc-label",for:w.id},[e.createTextVNode(e.toDisplayString(w.label)+" ",1),w.requiredMark?(e.openBlock(),e.createElementBlock("span",Qt,"*")):e.createCommentVNode("",!0)],8,Jt)],!0),e.createElementVNode("div",Yt,[e.createElementVNode("input",e.mergeProps({id:w.id},p.value,{ref_key:"inputRef",ref:r,"aria-invalid":c.value,class:"oc-invisible oc-file-input",type:"file",multiple:w.multiple,accept:w.fileTypes,onChange:m,onFocus:y}),null,16,Zt),e.createVNode(M,{ref_key:"inputBtnRef",ref:b,class:e.normalizeClass([{"oc-file-input-danger":!!w.errorMessage},"oc-file-input-button oc-text-input-btn oc-pr-s"]),disabled:w.disabled,"color-role":"secondary",appearance:"outline",onClick:B},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(w.$ngettext("Select file","Select files",w.multiple?2:1)),1)]),_:1},8,["class","disabled"]),e.createElementVNode("div",eo,[h.value?(e.openBlock(),e.createElementBlock("div",to,[e.createTextVNode(e.toDisplayString(h.value)+" ",1),w.clearButtonEnabled&&h.value?(e.openBlock(),e.createBlock(M,{key:0,appearance:"raw",class:"oc-file-input-clear raw-hover-surface oc-p-xs oc-ml-xs","aria-label":w.$gettext("Clear input"),onClick:C},{default:e.withCtx(()=>[e.createVNode(T,{name:"close",size:"small"})]),_:1},8,["aria-label"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]),s.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["oc-file-input-message oc-text-small oc-flex oc-flex-middle",{"oc-file-input-description":!!w.descriptionMessage,"oc-file-input-danger":!!w.errorMessage}])},[w.errorMessage?(e.openBlock(),e.createBlock(T,{key:0,name:"error-warning",size:"small",class:"oc-mr-xs","fill-type":"line","aria-hidden":"true"})):e.createCommentVNode("",!0),e.createElementVNode("span",{id:l.value,class:e.normalizeClass({"oc-file-input-description":!!w.descriptionMessage,"oc-file-input-danger":!!w.errorMessage}),textContent:e.toDisplayString(i.value)},null,10,oo)],2)):e.createCommentVNode("",!0)],2))}}),no=(t,o)=>{const a=t.__vccOpts||t;for(const[s,l]of o)a[s]=l;return a},ze=no(ao,[["__scopeId","data-v-3d9c1e35"]]),lo=["textContent"],so=["textContent"],Le=e.defineComponent({__name:"OcFilterChip",props:{filterLabel:{},closeOnClick:{type:Boolean,default:!1},id:{default:()=>O.uniqueId("oc-filter-chip-")},isToggle:{type:Boolean,default:!1},isToggleActive:{type:Boolean,default:!1},raw:{type:Boolean,default:!1},selectedItemNames:{default:()=>[]}},emits:["clearFilter","hideDrop","showDrop","toggleFilter"],setup(t,{expose:o,emit:a}){const s=a,l=e.useTemplateRef("dropRef"),n=e.computed(()=>t.isToggle?t.isToggleActive:!!t.selectedItemNames.length);return o({hideDrop:()=>{var c;(c=e.unref(l))==null||c.hide()}}),(c,i)=>{const r=e.resolveComponent("oc-icon"),b=e.resolveComponent("oc-button"),h=e.resolveDirective("oc-tooltip");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oc-filter-chip oc-flex",{"oc-filter-chip-toggle":c.isToggle,"oc-filter-chip-raw":c.raw}])},[e.createVNode(b,{id:c.id,class:e.normalizeClass(["oc-filter-chip-button oc-pill",{"oc-filter-chip-button-selected":n.value}]),appearance:"raw-inverse","color-role":"surface",onClick:i[0]||(i[0]=B=>c.isToggle?s("toggleFilter"):!1)},{default:e.withCtx(()=>[e.createVNode(r,{class:e.normalizeClass(n.value?"oc-filter-check-icon-active":"oc-filter-check-icon-inactive"),name:"check",size:"small"},null,8,["class"]),e.createElementVNode("span",{class:"oc-text-truncate oc-filter-chip-label",textContent:e.toDisplayString(c.selectedItemNames.length?c.selectedItemNames[0]:c.filterLabel)},null,8,lo),c.selectedItemNames.length>1?(e.openBlock(),e.createElementBlock("span",{key:0,textContent:e.toDisplayString(` +${c.selectedItemNames.length-1}`)},null,8,so)):e.createCommentVNode("",!0),!n.value&&!c.isToggle?(e.openBlock(),e.createBlock(r,{key:1,name:"arrow-down-s",size:"small"})):e.createCommentVNode("",!0)]),_:1},8,["id","class"]),c.isToggle?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(H,{key:0,ref_key:"dropRef",ref:l,toggle:"#"+c.id,class:"oc-filter-chip-drop",mode:"click","padding-size":"small","close-on-click":c.closeOnClick,onHideDrop:i[1]||(i[1]=B=>s("hideDrop")),onShowDrop:i[2]||(i[2]=B=>s("showDrop"))},{default:e.withCtx(()=>[e.renderSlot(c.$slots,"default")]),_:3},8,["toggle","close-on-click"])),n.value?e.withDirectives((e.openBlock(),e.createBlock(b,{key:1,class:"oc-filter-chip-clear oc-px-xs",appearance:"raw","aria-label":c.$gettext("Clear filter"),onClick:i[3]||(i[3]=B=>s("clearFilter"))},{default:e.withCtx(()=>[e.createVNode(r,{name:"close",size:"small"})]),_:1},8,["aria-label"])),[[h,c.$gettext("Clear filter")]]):e.createCommentVNode("",!0)],2)}}}),ae=e.defineComponent({__name:"OcGrid",props:{direction:{default:"row"},gutter:{default:"collapse"}},setup(t){const o=e.computed(()=>{const a=[];return a.push("oc-grid-"+t.gutter),t.direction==="column"&&(a.push("oc-flex"),a.push("oc-flex-middle")),a});return(a,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(a.$slots,"default")],2))}}),ro=["id","aria-live","textContent"],Pe=e.defineComponent({__name:"OcHiddenAnnouncer",props:{announcement:{},level:{default:"polite"}},setup(t){const o=e.computed(()=>Math.random().toString(36).substring(2,15)+Math.random().toString(36).substring(2,15));return(a,s)=>(e.openBlock(),e.createElementBlock("span",{id:o.value,class:"oc-invisible-sr oc-hidden-announcer","aria-live":a.level,"aria-atomic":"true",textContent:e.toDisplayString(a.announcement)},null,8,ro))}}),Ie=e.defineComponent({__name:"OcList",props:{raw:{type:Boolean,default:!1}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("ul",{class:e.normalizeClass(["oc-list oc-my-rm oc-mx-rm",{"oc-list-raw":o.raw}])},[e.renderSlot(o.$slots,"default")],2))}}),io=["aria-label"],Ae=e.defineComponent({__name:"OcLoader",props:{ariaLabel:{default:"Loading"},flat:{type:Boolean,default:!1}},setup(t){return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["oc-loader",{"oc-loader-flat":o.flat}]),"aria-label":o.ariaLabel},null,10,io))}}),co=["type","disabled"],uo={class:"oc-flex oc-text-small oc-text-input-password-policy-rule-wrapper oc-pt-s"},po=["textContent"],ye="file-copy",mo=e.defineComponent({__name:"OcTextInputPassword",props:{disabled:{type:Boolean,default:!1},generatePasswordMethod:{type:Function},hasError:{type:Boolean,default:!1},passwordPolicy:{},value:{default:""}},emits:["passwordChallengeCompleted","passwordChallengeFailed","passwordGenerated"],setup(t,{expose:o,emit:a}){const s=a,l=e.ref(null),{$gettext:n}=P.useGettext(),p=e.ref(t.value),c=e.ref(!1),i=e.ref(ye),r=e.ref(!1),b=e.computed(()=>{var $;return!!Object.keys((($=t.passwordPolicy)==null?void 0:$.rules)||{}).length}),h=e.computed(()=>{var $;return($=t.passwordPolicy)==null?void 0:$.missing(e.unref(p))}),B=$=>{var E;const k={};for(let N=0;N<$.format.length;N++)k[`param${N+1}`]=(E=$.format[N])==null?void 0:E.toString();return n($.message,k,!0)},C=()=>{navigator.clipboard.writeText(e.unref(p)),i.value="check",setTimeout(()=>i.value=ye,1500)},m=()=>{const $=t.generatePasswordMethod();p.value=$,s("passwordGenerated",p.value)};return o({focus:()=>{e.unref(l).focus()},select:()=>{e.unref(l).select()},setSelectionRange:($,k)=>{e.unref(l).setSelectionRange($,k)}}),e.watch(p,$=>{if(Object.keys(t.passwordPolicy).length){if(!t.passwordPolicy.check($))return s("passwordChallengeFailed");s("passwordChallengeCompleted")}}),($,k)=>{const E=e.resolveComponent("oc-contextual-helper"),N=e.resolveComponent("portal"),x=e.resolveDirective("oc-tooltip");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",{class:e.normalizeClass(["oc-text-input-password-wrapper",{"oc-text-input-password-wrapper-danger":$.hasError,"oc-text-input-password-wrapper-focused":r.value}])},[e.withDirectives(e.createElementVNode("input",e.mergeProps($.$attrs,{ref_key:"passwordInput",ref:l,"onUpdate:modelValue":k[0]||(k[0]=f=>p.value=f),type:c.value?"text":"password",disabled:$.disabled,onFocus:k[1]||(k[1]=f=>r.value=!0),onBlur:k[2]||(k[2]=f=>r.value=!1)}),null,16,co),[[e.vModelDynamic,p.value]]),p.value&&!$.disabled?e.withDirectives((e.openBlock(),e.createBlock(M,{key:0,"aria-label":c.value?e.unref(n)("Hide password"):e.unref(n)("Show password"),class:"oc-text-input-show-password-toggle oc-px-s",appearance:"raw",size:"small",onClick:k[3]||(k[3]=f=>c.value=!c.value)},{default:e.withCtx(()=>[e.createVNode(T,{size:"small",name:c.value?"eye-off":"eye"},null,8,["name"])]),_:1},8,["aria-label"])),[[x,c.value?e.unref(n)("Hide password"):e.unref(n)("Show password")]]):e.createCommentVNode("",!0),p.value&&!$.disabled?e.withDirectives((e.openBlock(),e.createBlock(M,{key:1,"aria-label":e.unref(n)("Copy password"),class:"oc-text-input-copy-password-button oc-px-s",appearance:"raw",size:"small",onClick:C},{default:e.withCtx(()=>[e.createVNode(T,{size:"small",name:i.value},null,8,["name"])]),_:1},8,["aria-label"])),[[x,e.unref(n)("Copy password")]]):e.createCommentVNode("",!0),$.generatePasswordMethod&&!$.disabled?e.withDirectives((e.openBlock(),e.createBlock(M,{key:2,"aria-label":e.unref(n)("Generate password"),class:"oc-text-input-generate-password-button oc-px-s",appearance:"raw",size:"small",onClick:m},{default:e.withCtx(()=>[e.createVNode(T,{size:"small",name:"refresh","fill-type":"line"})]),_:1},8,["aria-label"])),[[x,e.unref(n)("Generate password")]]):e.createCommentVNode("",!0)],2),b.value?(e.openBlock(),e.createBlock(N,{key:0,to:"app.design-system.password-policy"},{default:e.withCtx(()=>[e.createElementVNode("div",uo,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value.rules,(f,u)=>(e.openBlock(),e.createElementBlock("div",{key:u,class:"oc-flex oc-flex-middle oc-text-input-password-policy-rule"},[e.createVNode(T,{size:"small",class:"oc-mr-xs",name:f.verified?"checkbox-circle":"close-circle",color:f.verified?"var(--oc-role-on-surface)":"var(--oc-role-error)"},null,8,["name","color"]),e.createElementVNode("span",{class:e.normalizeClass([{"oc-text-input-danger":!f.verified}]),textContent:e.toDisplayString(B(f))},null,10,po),f.helperMessage?(e.openBlock(),e.createBlock(E,{key:0,text:f.helperMessage,title:e.unref(n)("Password policy")},null,8,["text","title"])):e.createCommentVNode("",!0)]))),128))])]),_:1})):e.createCommentVNode("",!0)],64)}}}),fo=["for"],ho={key:0,class:"oc-text-error","aria-hidden":"true"},go={class:"oc-position-relative"},bo=["id","textContent"],yo=["id","textContent"],ne=e.defineComponent({inheritAttrs:!1,__name:"OcTextInput",props:{id:{default:()=>O.uniqueId("oc-textinput-")},type:{default:"text"},modelValue:{default:""},selectionRange:{},clearButtonEnabled:{type:Boolean,default:!1},clearButtonAccessibleLabel:{default:""},defaultValue:{},disabled:{type:Boolean,default:!1},label:{},errorMessage:{},errorMessageDebouncedTime:{default:500},fixMessageLine:{type:Boolean,default:!1},descriptionMessage:{},readOnly:{type:Boolean,default:!1},requiredMark:{type:Boolean,default:!1},passwordPolicy:{default:()=>({})},generatePasswordMethod:{type:Function}},emits:["change","update:modelValue","focus","passwordChallengeCompleted","passwordChallengeFailed"],setup(t,{expose:o,emit:a}){const s=a,l=e.ref(!1),n=e.computed(()=>!!t.descriptionMessage),p=e.computed(()=>t.fixMessageLine||e.unref(l)||e.unref(n)),c=e.computed(()=>e.unref(l).toString()),i=e.computed(()=>`${t.id}-message`),r=e.computed(()=>t.type==="password"?{passwordGenerated:k}:{}),b=e.useAttrs(),h=e.computed(()=>{const f={};(e.unref(l)||e.unref(n))&&(f["aria-describedby"]=i.value),t.defaultValue&&(f.placeholder=t.defaultValue),t.type==="password"&&(f["password-policy"]=t.passwordPolicy,f["generate-password-method"]=t.generatePasswordMethod,f["has-error"]=e.unref(l));const{change:u,input:v,focus:L,class:d,...D}=b;return{...D,...f}}),B=e.computed(()=>!t.disabled&&t.clearButtonEnabled&&!!t.modelValue),C=e.computed(()=>t.clearButtonAccessibleLabel||"Clear input"),m=e.computed(()=>t.type==="password"?mo:"input"),y=e.useTemplateRef("inputRef"),w=()=>{e.unref(y).focus()};o({focus:w});function g(){w(),k(""),$(null)}const $=f=>{s("change",f)},k=f=>{s("update:modelValue",f)},E=async f=>{await e.nextTick(),e.unref(y).select(),N(),s("focus",f.value)},N=()=>{t.selectionRange&&t.selectionRange.length>1&&e.unref(y).setSelectionRange(t.selectionRange[0],t.selectionRange[1])};e.watch([()=>t.selectionRange,y],async()=>{e.unref(y)&&(await e.nextTick(),N())},{immediate:!0});const x=j.debounce(()=>{l.value=!!t.errorMessage},t.errorMessageDebouncedTime);return e.watch(()=>t.modelValue,()=>{x()}),e.watch(()=>t.errorMessage,()=>{var f;t.errorMessage?x():(l.value=!1,(f=x.cancel)==null||f.call(x))}),(f,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(f.$attrs.class)},[e.renderSlot(f.$slots,"label",{},()=>[e.createElementVNode("label",{class:"oc-label",for:f.id},[e.createTextVNode(e.toDisplayString(f.label)+" ",1),f.requiredMark?(e.openBlock(),e.createElementBlock("span",ho,"*")):e.createCommentVNode("",!0)],8,fo)]),e.createElementVNode("div",go,[f.readOnly?(e.openBlock(),e.createBlock(T,{key:0,name:"lock",size:"small",class:"oc-mt-s oc-ml-s oc-position-absolute"})):e.createCommentVNode("",!0),(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m.value),e.mergeProps({id:f.id},h.value,{ref_key:"inputRef",ref:y,"aria-invalid":c.value,class:["oc-text-input oc-input oc-rounded",{"oc-text-input-danger":!!l.value,"oc-pl-l":!!f.readOnly,"clear-action-visible":B.value}],type:f.type,value:f.modelValue,disabled:f.disabled||f.readOnly},e.toHandlers(r.value),{onChange:u[0]||(u[0]=v=>$(v.target.value)),onInput:u[1]||(u[1]=v=>k(v.target.value)),onPasswordChallengeCompleted:u[2]||(u[2]=v=>f.$emit("passwordChallengeCompleted")),onPasswordChallengeFailed:u[3]||(u[3]=v=>f.$emit("passwordChallengeFailed")),onFocus:u[4]||(u[4]=v=>E(v.target))}),null,16,["id","aria-invalid","class","type","value","disabled"])),B.value?(e.openBlock(),e.createBlock(M,{key:1,"aria-label":C.value,class:"oc-pr-s oc-position-center-right oc-text-input-btn-clear",appearance:"raw","no-hover":"",onClick:g},{default:e.withCtx(()=>[e.createVNode(T,{name:"close",size:"small"})]),_:1},8,["aria-label"])):e.createCommentVNode("",!0)]),p.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["oc-text-input-message oc-text-small",{"oc-text-input-description":n.value,"oc-text-input-danger":l.value}])},[l.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[l.value?(e.openBlock(),e.createBlock(T,{key:0,name:"error-warning",size:"small","fill-type":"line","aria-hidden":"true",class:"oc-mr-xs"})):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("span",{key:1,id:i.value,class:"oc-text-input-danger",textContent:e.toDisplayString(f.errorMessage)},null,8,bo)):e.createCommentVNode("",!0)],64)):n.value?(e.openBlock(),e.createElementBlock("span",{key:1,id:i.value,class:"oc-text-input-description",textContent:e.toDisplayString(f.descriptionMessage)},null,8,yo)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),f.type==="password"?(e.openBlock(),e.createBlock(e.unref(mt.PortalTarget),{key:1,name:"app.design-system.password-policy"})):e.createCommentVNode("",!0)],2))}}),ko={class:"oc-modal-background"},vo=["id"],Co={class:"oc-modal-title"},Bo=["textContent"],wo={class:"oc-modal-body"},$o={key:"modal-slot-content",class:"oc-modal-body-message"},Vo=["textContent"],So=["textContent"],Oo={key:0,class:"oc-modal-body-actions oc-flex oc-flex-right"},Eo={class:"oc-modal-body-actions-grid"},Do={components:{FocusTrap:U.FocusTrap}},Fe=e.defineComponent({...Do,__name:"OcModal",props:{title:{},buttonCancelText:{default:"Cancel"},buttonConfirmDisabled:{type:Boolean,default:!1},buttonConfirmText:{default:"Confirm"},contextualHelperData:{},contextualHelperLabel:{default:""},elementClass:{},elementId:{},focusTrapInitial:{type:[String,Boolean],default:null},hasInput:{type:Boolean,default:!1},hideActions:{type:Boolean,default:!1},hideConfirmButton:{type:Boolean,default:!1},inputDescription:{},inputRequiredMark:{type:Boolean,default:!1},inputError:{},inputLabel:{},inputSelectionRange:{},inputType:{default:"text"},inputValue:{},isLoading:{type:Boolean,default:!1},message:{}},emits:["cancel","confirm","input"],setup(t,{emit:o}){const a=o,{$gettext:s}=P.useGettext(),l=e.ref(!1),n=e.ref(),p=e.ref("filled"),c=e.useTemplateRef("ocModal"),i=e.useTemplateRef("ocModalInput"),r=e.computed(()=>({getShadowRoot:!0})),b=()=>{l.value=!1,p.value="filled"},h=()=>{l.value=!0,p.value="outline"};e.watch(()=>t.isLoading,()=>{if(!t.isLoading)return b();setTimeout(()=>{if(!t.isLoading)return b();h()},700)},{immediate:!0});const B=e.computed(()=>t.focusTrapInitial||t.focusTrapInitial===!1?t.focusTrapInitial:()=>{var g;return((g=e.unref(i))==null?void 0:g.$el)||e.unref(c)||void 0}),C=e.computed(()=>["oc-modal",t.elementClass]);e.watch(()=>t.inputValue,g=>{n.value=g},{immediate:!0});const m=()=>{a("cancel")},y=()=>{t.buttonConfirmDisabled||t.inputError||a("confirm",e.unref(n))},w=g=>{a("input",g)};return(g,$)=>{const k=e.resolveComponent("oc-contextual-helper");return e.openBlock(),e.createElementBlock("div",ko,[e.createVNode(e.unref(U.FocusTrap),{active:!0,"initial-focus":B.value,"tabbable-options":r.value},{default:e.withCtx(()=>[e.createElementVNode("div",{id:g.elementId,ref_key:"ocModal",ref:c,class:e.normalizeClass(C.value),tabindex:"0",role:"dialog","aria-modal":"true","aria-labelledby":"oc-modal-title",onKeydown:e.withKeys(m,["esc"])},[e.createElementVNode("div",Co,[e.createElementVNode(