UNPKG

@wikimedia/codex

Version:

Codex Design System for Wikimedia

1 lines 164 kB
"use strict";var Fn=Object.defineProperty,Pn=Object.defineProperties;var _n=Object.getOwnPropertyDescriptors;var ze=Object.getOwnPropertySymbols;var At=Object.prototype.hasOwnProperty,Dt=Object.prototype.propertyIsEnumerable;var dt=(e,n,o)=>n in e?Fn(e,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[n]=o,Y=(e,n)=>{for(var o in n||(n={}))At.call(n,o)&&dt(e,o,n[o]);if(ze)for(var o of ze(n))Dt.call(n,o)&&dt(e,o,n[o]);return e},ae=(e,n)=>Pn(e,_n(n));var de=(e,n)=>{var o={};for(var l in e)At.call(e,l)&&n.indexOf(l)<0&&(o[l]=e[l]);if(e!=null&&ze)for(var l of ze(e))n.indexOf(l)<0&&Dt.call(e,l)&&(o[l]=e[l]);return o};var me=(e,n,o)=>dt(e,typeof n!="symbol"?n+"":n,o);var J=(e,n,o)=>new Promise((l,i)=>{var d=a=>{try{r(o.next(a))}catch(u){i(u)}},s=a=>{try{r(o.throw(a))}catch(u){i(u)}},r=a=>a.done?l(a.value):Promise.resolve(a.value).then(d,s);r((o=o.apply(e,n)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),zn='<path d="M11.53 2.3A1.85 1.85 0 0010 1.21 1.85 1.85 0 008.48 2.3L.36 16.36C-.48 17.81.21 19 1.88 19h16.24c1.67 0 2.36-1.19 1.52-2.64zM11 16H9v-2h2zm0-4H9V6h2z"/>',Kn='<path d="M12.43 14.34A5 5 0 0110 15a5 5 0 113.95-2L17 16.09V3a2 2 0 00-2-2H5a2 2 0 00-2 2v14a2 2 0 002 2h10a2 2 0 001.45-.63z"/><circle cx="10" cy="10" r="3"/>',Hn='<path d="M7 14.17 2.83 10l-1.41 1.41L7 17 19 5l-1.41-1.42z"/>',Un='<path d="M10 0a10 10 0 1010 10A10 10 0 0010 0m5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z"/>',jn='<path d="m4.34 2.93 12.73 12.73-1.41 1.41L2.93 4.35z"/><path d="M17.07 4.34 4.34 17.07l-1.41-1.41L15.66 2.93z"/>',Wn='<path d="M10 15 2 5h16z"/>',qn='<path d="M13.728 1H6.272L1 6.272v7.456L6.272 19h7.456L19 13.728V6.272zM11 15H9v-2h2zm0-4H9V5h2z"/>',Qn='<path d="m17.5 4.75-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z"/>',Gn='<path d="M19 3H1v14h18zM3 14l3.5-4.5 2.5 3L12.5 8l4.5 6z"/><path d="M19 5H1V3h18zm0 12H1v-2h18z"/>',Yn='<path d="M8 19a1 1 0 001 1h2a1 1 0 001-1v-1H8zm9-12a7 7 0 10-12 4.9S7 14 7 15v1a1 1 0 001 1h4a1 1 0 001-1v-1c0-1 2-3.1 2-3.1A7 7 0 0017 7"/>',Xn='<path d="M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0M9 5h2v2H9zm0 4h2v6H9z"/>',Zn='<path d="M3 1h2v18H3zm13.5 1.5L15 1l-9 9 9 9 1.5-1.5L9 10z"/>',Jn='<path d="M15 1h2v18h-2zM3.5 2.5 11 10l-7.5 7.5L5 19l9-9-9-9z"/>',eo='<path d="M7 1 5.6 2.5 13 10l-7.4 7.5L7 19l9-9z"/>',to='<path d="m4 10 9 9 1.4-1.5L7 10l7.4-7.5L13 1z"/>',no='<path d="M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4zM3 8a5 5 0 1010 0A5 5 0 003 8"/>',oo='<path d="M10 0 3 8h14zm0 18-7-8h14z"/>',lo='<path d="M10 20a10 10 0 010-20 10 10 0 110 20m-2-5 9-8.5L15.5 5 8 12 4.5 8.5 3 10z"/>',ao='<path d="m10 5 8 10H2z"/>',Kt=zn,so=Kn,io=Hn,ro=Un,Ge=jn,uo=Wn,Ht=qn,Ut=Qn,co=Gn,jt={langCodeMap:{ar:Yn},default:Xn},po={ltr:Zn,shouldFlip:!0},fo={ltr:Jn,shouldFlip:!0},Wt={ltr:eo,shouldFlip:!0},qt={ltr:to,shouldFlip:!0},mo=no,ho=oo,Qt=lo,vo=ao;function go(e,n,o){if(typeof e=="string"||"path"in e)return e;if("shouldFlip"in e)return e.ltr;if("rtl"in e)return o==="rtl"?e.rtl:e.ltr;const l=n in e.langCodeMap?e.langCodeMap[n]:e.default;return typeof l=="string"||"path"in l?l:l.ltr}function bo(e,n){if(typeof e=="string")return!1;if("langCodeMap"in e){const o=n in e.langCodeMap?e.langCodeMap[n]:e.default;if(typeof o=="string")return!1;e=o}if("shouldFlipExceptions"in e&&Array.isArray(e.shouldFlipExceptions)){const o=e.shouldFlipExceptions.indexOf(n);return o===void 0||o===-1}return"shouldFlip"in e?e.shouldFlip:!1}function Fe(e){const n=t.ref(null);return t.onMounted(()=>{const o=window.getComputedStyle(e.value).direction;n.value=o==="ltr"||o==="rtl"?o:null}),n}function Gt(e){const n=t.ref("");return t.onMounted(()=>{let o=e.value;for(;o&&o.lang==="";)o=o.parentElement;n.value=o?o.lang:null}),n}function ee(e){return n=>typeof n=="string"&&e.includes(n)}const Te="cdx",yo=["default","progressive","destructive"],Co=["normal","primary","quiet"],wo=["medium","large"],ko=["x-small","small","medium"],$o=["notice","warning","error","success"],Yt=ee($o),Bo=["text","search","number","email","month","password","tel","url","week","date","datetime-local","time"],pe=["default","warning","error","success"],So=["start","center","end","number"],Io=120,xo=500,Ve="cdx-menu-footer-item",Xt=Symbol("CdxTabs"),Zt=Symbol("CdxActiveTab"),Jt=Symbol("CdxAllowArbitrary"),en=Symbol("CdxFieldInputId"),Ye=Symbol("CdxFieldDescriptionId"),tn=Symbol("CdxFieldStatus"),nn=Symbol("CdxDisabled"),Vo="".concat(Te,"-no-invert"),Ue=Symbol("CdxTableRowIdentifier"),Eo=["top","bottom","both"],on={left:"right","left-start":"right","left-end":"right",top:"bottom","top-start":"bottom","top-end":"bottom",bottom:"top","bottom-start":"top","bottom-end":"top",right:"left","right-start":"left","right-end":"left"},No=ee(ko),Ao=t.defineComponent({name:"CdxIcon",props:{icon:{type:[String,Object],required:!0},iconLabel:{type:String,default:""},lang:{type:String,default:null},dir:{type:String,default:null},size:{type:String,default:"medium",validator:No}},setup(e){const n=t.ref(),o=Fe(n),l=Gt(n),i=t.computed(()=>{var c;return(c=e.dir)!=null?c:o.value}),d=t.computed(()=>{var c;return(c=e.lang)!=null?c:l.value}),s=t.computed(()=>({"cdx-icon--flipped":i.value==="rtl"&&d.value!==null&&bo(e.icon,d.value),["cdx-icon--".concat(e.size)]:!0})),r=t.computed(()=>{var c,p;return go(e.icon,(c=d.value)!=null?c:"",(p=i.value)!=null?p:"ltr")}),a=t.computed(()=>typeof r.value=="string"?r.value:""),u=t.computed(()=>typeof r.value!="string"?r.value.path:"");return{rootElement:n,rootClasses:s,iconSvg:a,iconPath:u}}}),_=(e,n)=>{const o=e.__vccOpts||e;for(const[l,i]of n)o[l]=i;return o},Do=["aria-hidden"],Mo={key:0},Lo=["innerHTML"],To=["d"];function Ro(e,n,o,l,i,d){return t.openBlock(),t.createElementBlock("span",{ref:"rootElement",class:t.normalizeClass(["cdx-icon",e.rootClasses])},[(t.openBlock(),t.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20","aria-hidden":e.iconLabel?void 0:!0},[e.iconLabel?(t.openBlock(),t.createElementBlock("title",Mo,t.toDisplayString(e.iconLabel),1)):t.createCommentVNode("v-if",!0),e.iconSvg?(t.openBlock(),t.createElementBlock("g",{key:1,innerHTML:e.iconSvg},null,8,Lo)):(t.openBlock(),t.createElementBlock("path",{key:2,d:e.iconPath},null,8,To))],8,Do))],2)}const G=_(Ao,[["render",Ro]]);function ln(e){const n=[];for(const o of e)typeof o.type=="string"||typeof o.type=="object"?n.push(o):o.type!==t.Comment&&(typeof o.children=="string"&&o.children.trim()!==""?n.push(o.children):Array.isArray(o.children)&&n.push(...ln(o.children)));return n}function an(e,n){return typeof e.type=="object"&&"name"in e.type?n!==void 0?e.type.name===n:!0:!1}function Oo(e,n){return typeof e.type=="string"?e.type===n.toLowerCase():!1}function Xe(e){const n=typeof e=="function"?e():e;return n?ln(n):[]}function Ze(e,n){if(e()){t.warn(n);return}const o=t.watch(e,l=>{l&&(t.warn(n),o())})}function sn(e,n,o){const l=t.computed(()=>{const i=Xe(e);if(i.length!==1)return!1;const d=i[0];return!!(typeof d=="object"&&(an(d,"CdxIcon")||Oo(d,"svg")))});return Ze(()=>l.value&&!n["aria-label"]&&!n["aria-hidden"],"".concat(o,": Icon-only buttons require one of the following attributes: aria-label or aria-hidden. See documentation at https://doc.wikimedia.org/codex/latest/components/demos/button.html#icon-only-button")),l}const Fo=ee(yo),Po=ee(Co),_o=ee(wo),zo=t.defineComponent({name:"CdxButton",props:{action:{type:String,default:"default",validator:Fo},weight:{type:String,default:"normal",validator:Po},size:{type:String,default:"medium",validator:_o}},emits:["click"],setup(e,{emit:n,slots:o,attrs:l}){const i=t.ref(),d=sn(o.default,l,"CdxButton"),s=t.ref(!1),r=t.computed(()=>({["cdx-button--action-".concat(e.action)]:!0,["cdx-button--weight-".concat(e.weight)]:!0,["cdx-button--size-".concat(e.size)]:!0,"cdx-button--framed":e.weight!=="quiet","cdx-button--icon-only":d.value,"cdx-button--is-active":s.value})),a=f=>{n("click",f)},u=f=>{s.value=f};function c(){u(!0)}function p(){var f;u(!1),(f=i.value)==null||f.click()}return{button:i,rootClasses:r,onClick:a,onKeyDown:c,onKeyUp:p}}});function Ko(e,n,o,l,i,d){return t.openBlock(),t.createElementBlock("button",{ref:"button",class:t.normalizeClass(["cdx-button",e.rootClasses]),onKeydown:n[0]||(n[0]=t.withKeys(t.withModifiers((...s)=>e.onKeyDown&&e.onKeyDown(...s),["prevent"]),["space","enter"])),onKeyup:n[1]||(n[1]=t.withKeys((...s)=>e.onKeyUp&&e.onKeyUp(...s),["space","enter"])),onClick:n[2]||(n[2]=(...s)=>e.onClick&&e.onClick(...s))},[t.renderSlot(e.$slots,"default")],34)}const fe=_(zo,[["render",Ko]]),Ho=t.defineComponent({name:"CdxAccordion",components:{CdxButton:fe,CdxIcon:G},props:{actionAlwaysVisible:{type:Boolean,default:!1},actionIcon:{type:[String,Object],default:null},actionButtonLabel:{type:String,default:""},headingLevel:{type:String,default:"h3"}},emits:["action-button-click"],setup(e,{attrs:n,emit:o}){const l=t.ref("open"in n),i=()=>{o("action-button-click")},d=a=>{l.value=a.newState==="open"},s=t.computed(()=>e.actionIcon&&(l.value||e.actionAlwaysVisible)),r=t.computed(()=>({"cdx-accordion--has-icon":s.value}));return{emitActionButtonClick:i,rootClasses:r,shouldShowActionButton:s,onToggle:d}}}),Uo={class:"cdx-accordion__header__title"},jo={class:"cdx-accordion__header__description"};function Wo(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon"),r=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("details",{class:t.normalizeClass(["cdx-accordion",e.rootClasses]),onToggle:n[1]||(n[1]=(...a)=>e.onToggle&&e.onToggle(...a))},[t.createElementVNode("summary",null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.headingLevel),{class:"cdx-accordion__header"},{default:t.withCtx(()=>[t.createElementVNode("span",Uo,[t.renderSlot(e.$slots,"title")]),t.createElementVNode("span",jo,[t.renderSlot(e.$slots,"description")])]),_:3})),e.shouldShowActionButton?(t.openBlock(),t.createBlock(r,{key:0,class:"cdx-accordion__action","aria-label":e.actionButtonLabel,type:"button",weight:"quiet",onClick:t.withModifiers(e.emitActionButtonClick,["stop"])},{default:t.withCtx(()=>[t.createVNode(s,{icon:e.actionIcon,"icon-label":e.actionButtonLabel,size:"medium"},null,8,["icon","icon-label"])]),_:1},8,["aria-label","onClick"])):t.createCommentVNode("v-if",!0)]),t.createElementVNode("div",{class:"cdx-accordion__content",onClick:n[0]||(n[0]=t.withModifiers(()=>{},["stop"]))},[t.renderSlot(e.$slots,"default")])],34)}const qo=_(Ho,[["render",Wo]]);function rn(e){return e.label===void 0?e.value:e.label===null?"":e.label}function dn(e){const n=t.ref(),o=t.ref(),l=t.ref(new Map),i=Fe(n);function d(h,v){const g=h;g&&l.value.set(v,g)}function s(h){o.value=h}function r(){o.value=void 0}function a(h,v){var B;const g=h+v,C=e.value[g];if(C)if(C.disabled)a(g,v);else{const S=(B=l.value.get(g))==null?void 0:B.$el;S==null||S.focus()}}function u(){var h;a((h=o.value)!=null?h:-1,1)}function c(){var h;a((h=o.value)!=null?h:e.value.length,-1)}function p(){i.value==="rtl"?c():u()}function f(){i.value==="rtl"?u():c()}function m(h){switch(h.key){case"ArrowRight":h.preventDefault(),p();break;case"ArrowLeft":h.preventDefault(),f();break;case"ArrowDown":h.preventDefault(),u();break;case"ArrowUp":h.preventDefault(),c();break}}return{rootElement:n,assignTemplateRef:d,onFocus:s,onBlur:r,onKeydown:m}}const Qo=t.defineComponent({name:"CdxButtonGroup",components:{CdxButton:fe,CdxIcon:G},props:{buttons:{type:Array,required:!0,validator:e=>Array.isArray(e)&&e.length>=1},disabled:{type:Boolean,default:!1}},emits:["click"],setup(e){const{rootElement:n,assignTemplateRef:o,onFocus:l,onBlur:i,onKeydown:d}=dn(t.toRef(e,"buttons"));return{rootElement:n,assignTemplateRef:o,onFocus:l,onBlur:i,onKeydown:d,getButtonLabel:rn}}}),Go={ref:"rootElement",class:"cdx-button-group"};function Yo(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon"),r=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",Go,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.buttons,(a,u)=>(t.openBlock(),t.createBlock(r,{key:a.value,ref_for:!0,ref:c=>e.assignTemplateRef(c,u),disabled:a.disabled||e.disabled,"aria-label":a.ariaLabel,onClick:c=>e.$emit("click",a.value),onFocus:c=>e.onFocus(u),onBlur:e.onBlur,onKeydown:e.onKeydown},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",{button:a},()=>[a.icon?(t.openBlock(),t.createBlock(s,{key:0,icon:a.icon},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createTextVNode(" "+t.toDisplayString(e.getButtonLabel(a)),1)])]),_:2},1032,["disabled","aria-label","onClick","onFocus","onBlur","onKeydown"]))),128))],512)}const Xo=_(Qo,[["render",Yo]]),Zo=t.defineComponent({name:"CdxThumbnail",components:{CdxIcon:G},props:{thumbnail:{type:[Object,null],default:null},placeholderIcon:{type:[String,Object],default:co}},setup:e=>{const n=t.ref(!1),o=t.ref({}),l=i=>{const d=i.replace(/([\\"\n])/g,"\\$1"),s=new Image;s.onload=()=>{o.value={backgroundImage:'url("'.concat(d,'")')},n.value=!0},s.onerror=()=>{n.value=!1},s.src=d};return t.onMounted(()=>{var i;(i=e.thumbnail)!=null&&i.url&&l(e.thumbnail.url)}),t.watch(t.toRef(e,"thumbnail"),(i,d)=>{if(!(i!=null&&i.url)){n.value=!1,o.value={};return}(d==null?void 0:d.url)!==i.url&&(n.value=!1,l(i.url))},{deep:!0}),{thumbnailStyle:o,thumbnailLoaded:n,NoInvertClass:Vo}}}),Jo={class:"cdx-thumbnail"},el={key:0,class:"cdx-thumbnail__placeholder"};function tl(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon");return t.openBlock(),t.createElementBlock("span",Jo,[e.thumbnailLoaded?t.createCommentVNode("v-if",!0):(t.openBlock(),t.createElementBlock("span",el,[t.createVNode(s,{icon:e.placeholderIcon,class:"cdx-thumbnail__placeholder__icon--vue"},null,8,["icon"])])),t.createVNode(t.Transition,{name:"cdx-thumbnail__image"},{default:t.withCtx(()=>[e.thumbnailLoaded?(t.openBlock(),t.createElementBlock("span",{key:0,style:t.normalizeStyle(e.thumbnailStyle),class:t.normalizeClass([e.NoInvertClass,"cdx-thumbnail__image"])},null,6)):t.createCommentVNode("v-if",!0)]),_:1})])}const gt=_(Zo,[["render",tl]]),nl=t.defineComponent({name:"CdxCard",components:{CdxIcon:G,CdxThumbnail:gt},props:{url:{type:String,default:""},icon:{type:[String,Object],default:""},thumbnail:{type:[Object,null],default:null},forceThumbnail:{type:Boolean,default:!1},customPlaceholderIcon:{type:[String,Object],default:void 0}},setup(e){const n=t.computed(()=>!!e.url),o=t.computed(()=>n.value?"a":"span"),l=t.computed(()=>n.value?e.url:void 0);return{isLink:n,contentTag:o,cardLink:l}}}),ol={class:"cdx-card__text"},ll={class:"cdx-card__text__title"},al={key:0,class:"cdx-card__text__description"},sl={key:1,class:"cdx-card__text__supporting-text"};function il(e,n,o,l,i,d){const s=t.resolveComponent("cdx-thumbnail"),r=t.resolveComponent("cdx-icon");return t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.contentTag),{href:e.cardLink,class:t.normalizeClass(["cdx-card",{"cdx-card--is-link":e.isLink,"cdx-card--title-only":!e.$slots.description&&!e.$slots["supporting-text"]}])},{default:t.withCtx(()=>[e.thumbnail||e.forceThumbnail?(t.openBlock(),t.createBlock(s,{key:0,thumbnail:e.thumbnail,"placeholder-icon":e.customPlaceholderIcon,class:"cdx-card__thumbnail"},null,8,["thumbnail","placeholder-icon"])):e.icon?(t.openBlock(),t.createBlock(r,{key:1,icon:e.icon,class:"cdx-card__icon"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",ol,[t.createElementVNode("span",ll,[t.renderSlot(e.$slots,"title")]),e.$slots.description?(t.openBlock(),t.createElementBlock("span",al,[t.renderSlot(e.$slots,"description")])):t.createCommentVNode("v-if",!0),e.$slots["supporting-text"]?(t.openBlock(),t.createElementBlock("span",sl,[t.renderSlot(e.$slots,"supporting-text")])):t.createCommentVNode("v-if",!0)])]),_:3},8,["href","class"])}const rl=_(nl,[["render",il]]);function bt(e){const n=t.inject(nn,t.ref(!1));return t.computed(()=>n.value||e.value)}function se(e,n,o){const l=bt(e),i=t.inject(tn,t.ref("default")),d=t.computed(()=>n!=null&&n.value&&n.value!=="default"?n.value:i.value),s=t.inject(en,void 0),r=t.computed(()=>{var a;return(a=s==null?void 0:s.value)!=null?a:o});return{computedDisabled:l,computedStatus:d,computedInputId:r}}function le(e,n=t.computed(()=>({}))){const o=t.computed(()=>{const d=de(n.value,[]);return e.class&&e.class.split(" ").forEach(r=>{d[r]=!0}),d}),l=t.computed(()=>{if("style"in e)return e.style}),i=t.computed(()=>{const a=e,{class:d,style:s}=a;return de(a,["class","style"])});return{rootClasses:o,rootStyle:l,otherAttrs:i}}function X(e,n,o=[]){const l=t.inject("CdxI18nFunction",void 0);return t.computed(()=>{const i=o.map(s=>typeof s=="function"?s():s.value),d=l==null?void 0:l(e,...i);return d!=null?d:typeof n=="function"?n(...i):n})}function Pe(e,n,o,l=[]){const i=X(n,o,l);return t.computed(()=>e.value||i.value)}const dl=t.defineComponent({name:"CdxLabel",components:{CdxIcon:G},inheritAttrs:!1,props:{icon:{type:[String,Object],default:null},optional:{type:Boolean,default:!1},optionalFlag:{type:String,default:""},visuallyHidden:{type:Boolean,default:!1},isLegend:{type:Boolean,default:!1},inputId:{type:String,default:""},descriptionId:{type:String,default:""},disabled:{type:Boolean,default:!1}},setup(e,{attrs:n}){const{computedDisabled:o}=se(t.toRef(e,"disabled")),l=t.computed(()=>({"cdx-label--visually-hidden":e.visuallyHidden,"cdx-label--disabled":o.value})),{rootClasses:i,rootStyle:d,otherAttrs:s}=le(n,l),r=Pe(t.toRef(e,"optionalFlag"),"cdx-label-optional-flag","(optional)");return{rootClasses:i,rootStyle:d,otherAttrs:s,translatedOptionalFlag:r}}}),ul=["for"],cl={class:"cdx-label__label__text"},pl={key:1,class:"cdx-label__label__optional-flag"},fl=["id"],ml={class:"cdx-label__label"},hl={class:"cdx-label__label__text"},vl={key:1,class:"cdx-label__label__optional-flag"},gl={key:0,class:"cdx-label__description"};function bl(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon");return e.isLegend?(t.openBlock(),t.createElementBlock("legend",t.mergeProps({key:1,class:["cdx-label",e.rootClasses],style:e.rootStyle},e.otherAttrs),[t.createElementVNode("span",ml,[e.icon?(t.openBlock(),t.createBlock(s,{key:0,icon:e.icon,class:"cdx-label__label__icon"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",hl,[t.renderSlot(e.$slots,"default")]),e.optionalFlag||e.optional?(t.openBlock(),t.createElementBlock("span",vl,t.toDisplayString(" ")+" "+t.toDisplayString(e.translatedOptionalFlag),1)):t.createCommentVNode("v-if",!0)]),e.$slots.description&&e.$slots.description().length>0?(t.openBlock(),t.createElementBlock("span",gl,[t.renderSlot(e.$slots,"description")])):t.createCommentVNode("v-if",!0)],16)):(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["cdx-label",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("label",t.mergeProps({class:"cdx-label__label",for:e.inputId?e.inputId:void 0},e.otherAttrs),[e.icon?(t.openBlock(),t.createBlock(s,{key:0,icon:e.icon,class:"cdx-label__label__icon"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",cl,[t.renderSlot(e.$slots,"default")]),e.optionalFlag||e.optional?(t.openBlock(),t.createElementBlock("span",pl,t.toDisplayString(" ")+" "+t.toDisplayString(e.translatedOptionalFlag),1)):t.createCommentVNode("v-if",!0)],16,ul),e.$slots.description&&e.$slots.description().length>0?(t.openBlock(),t.createElementBlock("span",{key:0,id:e.descriptionId||void 0,class:"cdx-label__description"},[t.renderSlot(e.$slots,"description")],8,fl)):t.createCommentVNode("v-if",!0)],6))}const Ae=_(dl,[["render",bl]]);function Je(e,n,o){Ze(()=>Xe(e).length===0&&!(n!=null&&n["aria-label"])&&!(n!=null&&n["aria-labelledby"]),"".concat(o,": Inputs must have an associated label. Provide one of the following:\n - A label via the appropriate slot\n - An `aria-label` attribute set to the label text\n - An `aria-labelledby` attribute set to the ID of the label element"))}function oe(e,n,o){return t.computed({get:()=>e.value,set:l=>n(o||"update:modelValue",l)})}const yl=ee(pe),Cl=t.defineComponent({name:"CdxCheckbox",components:{CdxLabel:Ae},props:{modelValue:{type:[Boolean,Array],default:!1},inputValue:{type:[String,Number,Boolean],default:!1},name:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},hideLabel:{type:Boolean,default:!1},status:{type:String,default:"default",validator:yl}},emits:["update:modelValue"],setup(e,{emit:n,slots:o,attrs:l}){var f;Je((f=o.default)==null?void 0:f.call(o),l,"CdxCheckbox");const{computedDisabled:i,computedStatus:d}=se(t.toRef(e,"disabled"),t.toRef(e,"status")),s=t.computed(()=>({"cdx-checkbox--inline":e.inline,["cdx-checkbox--status-".concat(d.value)]:!0})),r=t.computed(()=>({"cdx-checkbox__custom-input--inline":e.inline})),a=t.ref(),u=t.useId(),c=t.useId(),p=oe(t.toRef(e,"modelValue"),n);return{rootClasses:s,computedDisabled:i,input:a,checkboxId:u,descriptionId:c,wrappedModel:p,customInputClasses:r}}}),wl={class:"cdx-checkbox__wrapper"},kl=["id","aria-describedby","value","name","disabled",".indeterminate"];function $l(e,n,o,l,i,d){const s=t.resolveComponent("cdx-label");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-checkbox",e.rootClasses])},[t.createElementVNode("div",wl,[t.withDirectives(t.createElementVNode("input",{id:e.checkboxId,ref:"input","onUpdate:modelValue":n[0]||(n[0]=r=>e.wrappedModel=r),class:"cdx-checkbox__input",type:"checkbox","aria-describedby":e.$slots.description&&e.$slots.description().length>0?e.descriptionId:void 0,value:e.inputValue,name:e.name,disabled:e.computedDisabled,".indeterminate":e.indeterminate},null,40,kl),[[t.vModelCheckbox,e.wrappedModel]]),n[1]||(n[1]=t.createElementVNode("span",{class:"cdx-checkbox__icon"},null,-1)),e.$slots.default&&e.$slots.default().length?(t.openBlock(),t.createBlock(s,{key:0,class:"cdx-checkbox__label","input-id":e.checkboxId,"description-id":e.$slots.description&&e.$slots.description().length>0?e.descriptionId:void 0,disabled:e.computedDisabled,"visually-hidden":e.hideLabel},t.createSlots({default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:2},[e.$slots.description&&e.$slots.description().length>0?{name:"description",fn:t.withCtx(()=>[t.renderSlot(e.$slots,"description")]),key:"0"}:void 0]),1032,["input-id","description-id","disabled","visually-hidden"])):t.createCommentVNode("v-if",!0)]),e.$slots["custom-input"]?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["cdx-checkbox__custom-input",e.customInputClasses])},[t.renderSlot(e.$slots,"custom-input")],2)):t.createCommentVNode("v-if",!0)],2)}const un=_(Cl,[["render",$l]]),Bl=t.defineComponent({name:"CdxInputChip",components:{CdxButton:fe,CdxIcon:G},props:{icon:{type:[String,Object],default:null},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},className:{type:String,default:""}},emits:["remove-chip","click-chip","arrow-left","arrow-right"],setup(e,{emit:n}){const o=t.computed(()=>e.disabled?-1:0),l=t.ref(),i=t.computed(()=>({"cdx-input-chip--disabled":e.disabled,"cdx-input-chip--readonly":e.readonly,[e.className]:e.className.length>0})),d=X("cdx-input-chip-aria-description","Press Enter to edit or Delete to remove");function s(r){var a;switch(r.key){case"Enter":n("click-chip"),r.preventDefault(),r.stopPropagation();break;case"Escape":(a=l.value)==null||a.blur(),r.preventDefault(),r.stopPropagation();break;case"Backspace":case"Delete":n("remove-chip",r.key),r.preventDefault(),r.stopPropagation();break;case"ArrowLeft":n("arrow-left"),r.preventDefault(),r.stopPropagation();break;case"ArrowRight":n("arrow-right"),r.preventDefault(),r.stopPropagation();break}}return{rootElement:l,rootClasses:i,ariaDescription:d,onKeydown:s,cdxIconClose:Ge,tabIndex:o}},methods:{focus(){this.$refs.rootElement.focus()}}}),Sl=["tabindex","aria-description"],Il={class:"cdx-input-chip__text"};function xl(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon"),r=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",{ref:"rootElement",class:t.normalizeClass(["cdx-input-chip",e.rootClasses]),tabindex:e.tabIndex,role:"option","aria-description":e.ariaDescription,onKeydown:n[1]||(n[1]=(...a)=>e.onKeydown&&e.onKeydown(...a)),onClick:n[2]||(n[2]=a=>e.$emit("click-chip"))},[e.icon?(t.openBlock(),t.createBlock(s,{key:0,icon:e.icon,size:"small"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",Il,[t.renderSlot(e.$slots,"default")]),t.createVNode(r,{class:"cdx-input-chip__button",weight:"quiet",tabindex:"-1","aria-hidden":"true",disabled:e.disabled||e.readonly,onClick:n[0]||(n[0]=t.withModifiers(a=>e.$emit("remove-chip","button"),["stop"]))},{default:t.withCtx(()=>[t.createVNode(s,{icon:e.cdxIconClose,size:"x-small"},null,8,["icon"])]),_:1},8,["disabled"])],42,Sl)}const Vl=_(Bl,[["render",xl]]);function et(e,n,o,l){return t.computed({get:()=>{var i;return(i=n.value)!=null?i:e.value},set:i=>{n.value!==null?o(l||"update:modelValue",i):e.value=i}})}const El=ee(pe),Nl=t.defineComponent({name:"CdxChipInput",components:{CdxInputChip:Vl},inheritAttrs:!1,props:{inputChips:{type:Array,required:!0},inputValue:{type:[String,Number],default:null},separateInput:{type:Boolean,default:!1},status:{type:String,default:"default",validator:El},chipValidator:{type:Function,default:e=>!0},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1}},emits:["update:input-chips","update:input-value","chip-click"],setup(e,{emit:n,attrs:o}){const l=t.ref(),i=t.ref(),d=t.ref(),s=t.ref(""),r=Fe(l),a=t.ref(),u=t.inject(Jt,t.ref(!0)),c=t.ref(""),p=et(c,t.toRef(e,"inputValue"),n,"update:input-value"),f=t.ref("default"),m=t.computed(()=>f.value==="error"||e.status==="error"?"error":"default"),{computedDisabled:h,computedStatus:v}=se(t.toRef(e,"disabled"),m),g=t.ref(!1),C=t.computed(()=>({"cdx-chip-input--has-separate-input":e.separateInput,["cdx-chip-input--status-".concat(v.value)]:!0,"cdx-chip-input--focused":g.value,"cdx-chip-input--disabled":h.value,"cdx-chip-input--readonly":e.readonly})),{rootClasses:B,rootStyle:S,otherAttrs:E}=le(o,C),V=[],D=t.ref(null),A=t.computed(()=>D.value?D.value.value:""),$=X("cdx-chip-input-chip-added",y=>"Chip ".concat(y," was added."),[p]),b=X("cdx-chip-input-chip-removed",y=>"Chip ".concat(y," was removed."),[A]);function k(y,T){y!==null&&(V[T]=y)}const I=()=>{a.value.focus()};function x(){e.inputChips.find(y=>y.value===p.value)||!e.chipValidator(p.value)?f.value="error":p.value.toString().length>0&&(s.value=$.value,n("update:input-chips",e.inputChips.concat({value:p.value})),p.value="")}function R(y){e.readonly||h.value||n("update:input-chips",e.inputChips.filter(T=>T.value!==y.value))}function K(y,T){const W=r.value==="ltr"&&y==="left"||r.value==="rtl"&&y==="right"?-1:1,Z=T+W;if(!(Z<0)){if(Z>=e.inputChips.length){I();return}V[Z].focus()}}function z(y){return J(this,null,function*(){var T;n("chip-click",y),!(e.readonly||h.value||!u.value)&&(x(),yield t.nextTick(),R(y),p.value=(T=y.label)!=null?T:y.value,I())})}function O(y,T,W){if(D.value=y,s.value=b.value,W==="button")I();else if(W==="Backspace"){const Z=T===0?1:T-1;Z<e.inputChips.length?V[Z].focus():I()}else if(W==="Delete"){const Z=T+1;Z<e.inputChips.length?V[Z].focus():I()}R(y)}function U(y){var W,Z;const T=r.value==="rtl"?"ArrowRight":"ArrowLeft";switch(y.key){case"Enter":if(p.value.toString().length>0&&u.value){x(),y.preventDefault(),y.stopPropagation();return}break;case"Escape":(W=a.value)==null||W.blur(),y.preventDefault(),y.stopPropagation();return;case"Backspace":case T:if(((Z=a.value)==null?void 0:Z.selectionStart)===0&&a.value.selectionEnd===0&&e.inputChips.length>0){V[e.inputChips.length-1].focus(),y.preventDefault(),y.stopPropagation();return}break}}function L(){g.value=!0}function H(){g.value=!1}function q(y){var T;!((T=l.value)!=null&&T.contains(y.relatedTarget))&&u.value&&x()}return t.watch(t.toRef(e,"inputChips"),y=>{const T=y.find(W=>W.value===p.value);f.value=T?"error":"default"}),t.watch(p,()=>{f.value==="error"&&(f.value="default")}),{rootElement:l,chipsContainer:i,separateInputWrapper:d,input:a,computedInputValue:p,rootClasses:B,rootStyle:S,otherAttrs:E,assignChipTemplateRef:k,handleChipClick:z,handleChipRemove:O,moveChipFocus:K,onInputKeydown:U,focusInput:I,onInputFocus:L,onInputBlur:H,onFocusOut:q,computedDisabled:h,statusMessageContent:s}}}),Al={ref:"chipsContainer",class:"cdx-chip-input__chips",role:"listbox","aria-orientation":"horizontal"},Dl=["readonly","disabled"],Ml={key:0,ref:"separateInputWrapper",class:"cdx-chip-input__separate-input"},Ll=["readonly","disabled"],Tl={class:"cdx-chip-input__aria-status",role:"status","aria-live":"polite"};function Rl(e,n,o,l,i,d){const s=t.resolveComponent("cdx-input-chip");return t.openBlock(),t.createElementBlock("div",{ref:"rootElement",class:t.normalizeClass(["cdx-chip-input",e.rootClasses]),style:t.normalizeStyle(e.rootStyle),onClick:n[8]||(n[8]=r=>e.disabled||e.readonly?null:e.focusInput),onFocusout:n[9]||(n[9]=(...r)=>e.onFocusOut&&e.onFocusOut(...r))},[t.createElementVNode("div",Al,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.inputChips,(r,a)=>(t.openBlock(),t.createBlock(s,{key:r.value,ref_for:!0,ref:u=>e.assignChipTemplateRef(u,a),class:t.normalizeClass(["cdx-chip-input__item",r.className]),icon:r.icon,readonly:e.readonly,disabled:e.computedDisabled,onClickChip:u=>e.handleChipClick(r),onRemoveChip:u=>e.handleChipRemove(r,a,u),onArrowLeft:u=>e.moveChipFocus("left",a),onArrowRight:u=>e.moveChipFocus("right",a)},{default:t.withCtx(()=>{var u;return[t.createTextVNode(t.toDisplayString((u=r.label)!=null?u:r.value),1)]}),_:2},1032,["class","icon","readonly","disabled","onClickChip","onRemoveChip","onArrowLeft","onArrowRight"]))),128)),e.separateInput?t.createCommentVNode("v-if",!0):t.withDirectives((t.openBlock(),t.createElementBlock("input",t.mergeProps({key:0,ref:"input","onUpdate:modelValue":n[0]||(n[0]=r=>e.computedInputValue=r),class:"cdx-chip-input__input",readonly:e.readonly,disabled:e.computedDisabled},e.otherAttrs,{onBlur:n[1]||(n[1]=(...r)=>e.onInputBlur&&e.onInputBlur(...r)),onFocus:n[2]||(n[2]=(...r)=>e.onInputFocus&&e.onInputFocus(...r)),onKeydown:n[3]||(n[3]=(...r)=>e.onInputKeydown&&e.onInputKeydown(...r))}),null,16,Dl)),[[t.vModelDynamic,e.computedInputValue]])],512),e.separateInput?(t.openBlock(),t.createElementBlock("div",Ml,[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref:"input","onUpdate:modelValue":n[4]||(n[4]=r=>e.computedInputValue=r),class:"cdx-chip-input__input",readonly:e.readonly,disabled:e.computedDisabled},e.otherAttrs,{onBlur:n[5]||(n[5]=(...r)=>e.onInputBlur&&e.onInputBlur(...r)),onFocus:n[6]||(n[6]=(...r)=>e.onInputFocus&&e.onInputFocus(...r)),onKeydown:n[7]||(n[7]=(...r)=>e.onInputKeydown&&e.onInputKeydown(...r))}),null,16,Ll),[[t.vModelDynamic,e.computedInputValue]])],512)):t.createCommentVNode("v-if",!0),t.createElementVNode("div",Tl,t.toDisplayString(e.statusMessageContent),1)],38)}const cn=_(Nl,[["render",Rl]]);function pn(e){return e.replace(/([\\{}()|.?*+\-^$[\]])/g,"\\$1")}const Ol="[̀-ͯ҃-҉֑-ׇֽֿׁׂׅׄؐ-ًؚ-ٰٟۖ-ۜ۟-۪ۤۧۨ-ܑۭܰ-݊ަ-ް߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛࣓-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣঁ-ঃ়া-ৄেৈো-্ৗৢৣ৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑੰੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣஂா-ூெ-ைொ-்ௗఀ-ఄా-ౄె-ైొ-్ౕౖౢౣಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣංඃ්ා-ුූෘ-ෟෲෳัิ-ฺ็-๎ັິ-ູົຼ່-ໍ༹༘༙༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏႚ-ႝ፝-፟ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝᠋-᠍ᢅᢆᢩᤠ-ᤫᤰ-᤻ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼᪰-᪾ᬀ-ᬄ᬴-᭄᭫-᭳ᮀ-ᮂᮡ-ᮭ᯦-᯳ᰤ-᰷᳐-᳔᳒-᳨᳭ᳲ-᳴᳷-᳹᷀-᷹᷻-᷿⃐-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꙯-꙲ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣠-꣱ꣿꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀ꧥꨩ-ꨶꩃꩌꩍꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭ﬞ︀-️︠-︯]";function fn(e,n){if(!e)return[n,"",""];const o=pn(e),l=new RegExp(o+Ol+"*","i").exec(n);if(!l||l.index===void 0)return[n,"",""];const i=l.index,d=i+l[0].length,s=n.slice(i,d),r=n.slice(0,i),a=n.slice(d,n.length);return[r,s,a]}const Fl=Object.freeze(Object.defineProperty({__proto__:null,regExpEscape:pn,splitStringAtMatch:fn},Symbol.toStringTag,{value:"Module"})),Pl=t.defineComponent({name:"CdxSearchResultTitle",props:{title:{type:String,required:!0},searchQuery:{type:String,default:""}},setup:e=>({titleChunks:t.computed(()=>fn(e.searchQuery,String(e.title)))})}),_l={class:"cdx-search-result-title"},zl={class:"cdx-search-result-title__match"};function Kl(e,n,o,l,i,d){return t.openBlock(),t.createElementBlock("span",_l,[t.createElementVNode("bdi",null,[t.createTextVNode(t.toDisplayString(e.titleChunks[0]),1),t.createElementVNode("span",zl,t.toDisplayString(e.titleChunks[1]),1),t.createTextVNode(t.toDisplayString(e.titleChunks[2]),1)])])}const mn=_(Pl,[["render",Kl]]),Hl=t.defineComponent({name:"CdxMenuItem",components:{CdxIcon:G,CdxThumbnail:gt,CdxSearchResultTitle:mn},props:{id:{type:String,required:!0},value:{type:[String,Number],required:!0},disabled:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},active:{type:Boolean,default:!1},highlighted:{type:Boolean,default:!1},label:{type:String,default:""},match:{type:String,default:""},supportingText:{type:String,default:""},url:{type:String,default:""},icon:{type:[String,Object],default:""},showThumbnail:{type:Boolean,default:!1},thumbnail:{type:[Object,null],default:null},description:{type:[String,null],default:""},searchQuery:{type:String,default:""},boldLabel:{type:Boolean,default:!1},hideDescriptionOverflow:{type:Boolean,default:!1},language:{type:Object,default:()=>({})},action:{type:String,default:"default"},multiselect:{type:Boolean,default:!1}},emits:["change"],setup:(e,{emit:n})=>{const o=()=>{e.highlighted||n("change","highlighted",!0)},l=()=>{n("change","highlighted",!1)},i=c=>{c.button===0&&n("change","active",!0)},d=()=>{n("change","selected",!0)},s=t.computed(()=>e.searchQuery.length>0),r=t.computed(()=>({"cdx-menu-item--selected":e.selected,"cdx-menu-item--active":e.active&&e.highlighted,"cdx-menu-item--highlighted":e.highlighted,"cdx-menu-item--destructive":e.action&&e.action==="destructive","cdx-menu-item--enabled":!e.disabled,"cdx-menu-item--disabled":e.disabled,"cdx-menu-item--highlight-query":s.value,"cdx-menu-item--bold-label":e.boldLabel,"cdx-menu-item--has-description":!!e.description,"cdx-menu-item--hide-description-overflow":e.hideDescriptionOverflow})),a=t.computed(()=>e.url?"a":"span"),u=t.computed(()=>e.label||String(e.value));return{onMouseMove:o,onMouseLeave:l,onMouseDown:i,onClick:d,highlightQuery:s,rootClasses:r,contentTag:a,title:u,cdxIconCheck:io}}}),Ul=["id","aria-disabled","aria-selected","aria-checked"],jl={class:"cdx-menu-item__text"},Wl=["lang"],ql=["lang"],Ql=["lang"],Gl=["lang"];function Yl(e,n,o,l,i,d){const s=t.resolveComponent("cdx-thumbnail"),r=t.resolveComponent("cdx-icon"),a=t.resolveComponent("cdx-search-result-title");return t.openBlock(),t.createElementBlock("li",{id:e.id,role:"option",class:t.normalizeClass(["cdx-menu-item",e.rootClasses]),"aria-disabled":e.disabled,"aria-selected":e.selected&&!e.multiselect?!0:void 0,"aria-checked":e.selected&&e.multiselect?!0:void 0,onMousemove:n[0]||(n[0]=(...u)=>e.onMouseMove&&e.onMouseMove(...u)),onMouseleave:n[1]||(n[1]=(...u)=>e.onMouseLeave&&e.onMouseLeave(...u)),onMousedown:n[2]||(n[2]=t.withModifiers((...u)=>e.onMouseDown&&e.onMouseDown(...u),["prevent"])),onClick:n[3]||(n[3]=(...u)=>e.onClick&&e.onClick(...u))},[t.renderSlot(e.$slots,"default",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.contentTag),{href:e.url?e.url:void 0,class:"cdx-menu-item__content"},{default:t.withCtx(()=>{var u,c,p,f,m,h;return[e.showThumbnail?(t.openBlock(),t.createBlock(s,{key:0,thumbnail:e.thumbnail,class:"cdx-menu-item__thumbnail"},null,8,["thumbnail"])):e.icon?(t.openBlock(),t.createBlock(r,{key:1,icon:e.icon,class:"cdx-menu-item__icon"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",jl,[e.highlightQuery?(t.openBlock(),t.createBlock(a,{key:0,title:e.title,"search-query":e.searchQuery,lang:(u=e.language)==null?void 0:u.label},null,8,["title","search-query","lang"])):(t.openBlock(),t.createElementBlock("span",{key:1,class:"cdx-menu-item__text__label",lang:(c=e.language)==null?void 0:c.label},[t.createElementVNode("bdi",null,t.toDisplayString(e.title),1)],8,Wl)),e.match?(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[n[4]||(n[4]=t.createTextVNode(t.toDisplayString(" ")+" ")),e.highlightQuery?(t.openBlock(),t.createBlock(a,{key:0,title:e.match,"search-query":e.searchQuery,lang:(p=e.language)==null?void 0:p.match},null,8,["title","search-query","lang"])):(t.openBlock(),t.createElementBlock("span",{key:1,class:"cdx-menu-item__text__match",lang:(f=e.language)==null?void 0:f.match},[t.createElementVNode("bdi",null,t.toDisplayString(e.match),1)],8,ql))],64)):t.createCommentVNode("v-if",!0),e.supportingText?(t.openBlock(),t.createElementBlock(t.Fragment,{key:3},[n[5]||(n[5]=t.createTextVNode(t.toDisplayString(" ")+" ")),t.createElementVNode("span",{class:"cdx-menu-item__text__supporting-text",lang:(m=e.language)==null?void 0:m.supportingText},[t.createElementVNode("bdi",null,t.toDisplayString(e.supportingText),1)],8,Ql)],64)):t.createCommentVNode("v-if",!0),e.description?(t.openBlock(),t.createElementBlock("span",{key:4,class:"cdx-menu-item__text__description",lang:(h=e.language)==null?void 0:h.description},[t.createElementVNode("bdi",null,t.toDisplayString(e.description),1)],8,Gl)):t.createCommentVNode("v-if",!0)]),e.multiselect&&e.selected?(t.openBlock(),t.createBlock(r,{key:2,icon:e.cdxIconCheck,size:"small",class:"cdx-menu-item__selected-icon"},null,8,["icon"])):t.createCommentVNode("v-if",!0)]}),_:1},8,["href"]))])],42,Ul)}const hn=_(Hl,[["render",Yl]]),Xl=t.defineComponent({name:"CdxProgressBar",props:{inline:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},setup(e,{attrs:n}){Ze(()=>!e.inline&&!n["aria-label"]&&!n["aria-hidden"],"CdxProgressBar: Progress bars require one of the following attribute, aria-label or aria-hidden. See documentation on https://doc.wikimedia.org/codex/latest/components/demos/progressbar.html");const o=t.computed(()=>({"cdx-progress-bar--block":!e.inline,"cdx-progress-bar--inline":e.inline,"cdx-progress-bar--enabled":!e.disabled,"cdx-progress-bar--disabled":e.disabled})),l=t.computed(()=>e.inline?"true":void 0);return{rootClasses:o,computedAriaHidden:l}}}),Zl=["aria-hidden","aria-disabled"];function Jl(e,n,o,l,i,d){return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-progress-bar",e.rootClasses]),role:"progressbar","aria-hidden":e.computedAriaHidden,"aria-disabled":e.disabled},n[0]||(n[0]=[t.createElementVNode("div",{class:"cdx-progress-bar__bar"},null,-1)]),10,Zl)}const yt=_(Xl,[["render",Jl]]);function je(e,n){const o=t.ref(!1);let l=!1;if(typeof window!="object"||!("IntersectionObserver"in window&&"IntersectionObserverEntry"in window&&"intersectionRatio"in window.IntersectionObserverEntry.prototype))return o;const i=new window.IntersectionObserver(d=>{const s=d[0];s&&(o.value=s.isIntersecting)},n);return t.onMounted(()=>{l=!0,e.value&&i.observe(e.value)}),t.onUnmounted(()=>{l=!1,i.disconnect()}),t.watch(e,d=>{l&&(i.disconnect(),o.value=!1,d&&i.observe(d))}),o}function Ke(e){return e!==null&&Array.isArray(e)}function Le(e){return"items"in e}const ea=t.defineComponent({name:"CdxMenu",components:{CdxMenuItem:hn,CdxIcon:G,CdxProgressBar:yt},inheritAttrs:!1,props:{menuItems:{type:Array,required:!0},footer:{type:Object,default:null},selected:{type:[String,Number,Array,null],required:!0},expanded:{type:Boolean,required:!0},showPending:{type:Boolean,default:!1},visibleItemLimit:{type:Number,default:null},showThumbnail:{type:Boolean,default:!1},boldLabel:{type:Boolean,default:!1},hideDescriptionOverflow:{type:Boolean,default:!1},searchQuery:{type:String,default:""},showNoResultsSlot:{type:Boolean,default:null}},emits:["update:selected","update:expanded","menu-item-click","menu-item-keyboard-navigation","load-more"],setup(e,{emit:n,slots:o,attrs:l}){const i=t.useId();let d=0;const s=new Map;function r(){return d+=1,"".concat(i,"-").concat(d)}function a(w){w.forEach(N=>{if(Le(N)){const F="group-".concat(N.label);s.has(F)||s.set(F,r()),N.items.forEach(j=>{s.has(j.value)||s.set(j.value,r())})}else s.has(N.value)||s.set(N.value,r())})}t.watch(t.toRef(e,"menuItems"),w=>{function N(j){const ne=new Set;return j.forEach(te=>{Le(te)?(ne.add("group-".concat(te.label)),te.items.forEach(xe=>ne.add(xe.value))):ne.add(te.value)}),ne}const F=N(w);s.forEach((j,ne)=>{F.has(ne)||s.delete(ne)})},{deep:!0});const u=t.computed(()=>{a(e.menuItems),e.footer&&a([e.footer]);const w=e.footer&&e.menuItems?[...e.menuItems,e.footer]:e.menuItems;function N(F){const j=s.get(F.value);if(!j)throw new Error("No ID found for menu item with value ".concat(F.value));return ae(Y({},F),{id:j})}return w.map(F=>{if(Le(F)){const j=s.get("group-".concat(F.label));if(!j)throw new Error("No ID found for menu item with value group-".concat(F.label));return ae(Y({},F),{id:j,items:F.items.map(ne=>N(ne))})}else return N(F)})}),c=t.computed(()=>{const w=[];return u.value.forEach(N=>{Le(N)?w.push(...N.items):w.push(N)}),w}),p=t.computed(()=>o["no-results"]?e.showNoResultsSlot!==null?e.showNoResultsSlot:c.value.length===0:!1),f=t.ref(null),m=t.ref(!1),h=t.ref(null),v="additions removals";let g="",C=null;function B(){g="",C!==null&&(clearTimeout(C),C=null)}function S(){C!==null&&clearTimeout(C),C=setTimeout(B,1500)}function E(){var w;return(w=c.value.find(N=>Ke(e.selected)?e.selected.includes(N.value):N.value===e.selected))!=null?w:null}const V=t.computed(()=>Ke(e.selected));function D(w){return Ke(e.selected)?e.selected.includes(w):w===e.selected}function A(w){if(Ke(e.selected)){const N=e.selected.includes(w)?e.selected.filter(F=>F!==w):e.selected.concat(w);n("update:selected",N)}else n("update:selected",w)}function $(w,N){if(!(N!=null&&N.disabled))switch(w){case"selected":N&&A(N.value),V.value||n("update:expanded",!1),h.value=null;break;case"highlighted":f.value=N!=null?N:null,m.value=!1;break;case"highlightedViaKeyboard":f.value=N!=null?N:null,m.value=!0;break;case"active":h.value=N!=null?N:null;break}}const b=t.computed(()=>{if(f.value!==null)return c.value.findIndex(w=>w.value===f.value.value)});function k(w){w&&($("highlightedViaKeyboard",w),n("menu-item-keyboard-navigation",w))}function I(w){var j;const N=ne=>{for(let te=ne-1;te>=0;te--)if(!c.value[te].disabled)return c.value[te]};w=w!=null?w:c.value.length;const F=(j=N(w))!=null?j:N(c.value.length);k(F)}function x(w){var j;const N=ne=>c.value.find((te,xe)=>!te.disabled&&xe>ne);w=w!=null?w:-1;const F=(j=N(w))!=null?j:N(-1);k(F)}function R(w){if(w.key==="Clear")return B(),!0;if(w.key==="Backspace")return g=g.slice(0,-1),S(),!0;if(w.key.length===1&&!w.metaKey&&!w.ctrlKey&&!w.altKey){if(e.expanded||n("update:expanded",!0),w.key===" "&&g.length<1)return!1;g+=w.key.toLowerCase();const N=g.length>1&&g.split("").every(te=>te===g[0]);let F=c.value,j=g;N&&b.value!==void 0&&(F=F.slice(b.value+1).concat(F.slice(0,b.value)),j=g[0]);const ne=F.find(te=>{var xe;return!te.disabled&&String((xe=te.label)!=null?xe:te.value).toLowerCase().startsWith(j)});return ne&&($("highlightedViaKeyboard",ne),y()),S(),!0}return!1}function K(w,{prevent:N=!0,characterNavigation:F=!1}={}){if(F){if(R(w))return w.preventDefault(),!0;B()}function j(){N&&(w.preventDefault(),w.stopPropagation())}switch(w.key){case"Enter":case" ":return j(),e.expanded?(f.value&&m.value&&A(f.value.value),V.value||n("update:expanded",!1)):n("update:expanded",!0),!0;case"Tab":return e.expanded&&f.value&&m.value&&!V.value&&(A(f.value.value),n("update:expanded",!1)),!0;case"ArrowUp":return j(),e.expanded?(f.value===null&&$("highlightedViaKeyboard",E()),I(b.value)):n("update:expanded",!0),y(),!0;case"ArrowDown":return j(),e.expanded?(f.value===null&&$("highlightedViaKeyboard",E()),x(b.value)):n("update:expanded",!0),y(),!0;case"Home":return j(),e.expanded?(f.value===null&&$("highlightedViaKeyboard",E()),x()):n("update:expanded",!0),y(),!0;case"End":return j(),e.expanded?(f.value===null&&$("highlightedViaKeyboard",E()),I()):n("update:expanded",!0),y(),!0;case"Escape":return j(),n("update:expanded",!1),!0;default:return!1}}function z(){$("active",null)}const O=[],U=t.ref(void 0),L=je(U,{threshold:.8});t.watch(L,w=>{w&&n("load-more")});function H(w,N){if(w){O[N]=w.$el;const F=e.visibleItemLimit;if(!F||e.menuItems.length<F)return;const j=Math.min(F,Math.max(2,Math.floor(.2*e.menuItems.length)));N===e.menuItems.length-j&&(U.value=w.$el)}}const q=t.ref();function y(){const w=q.value&&q.value.scrollHeight>q.value.clientHeight;if(b.value===void 0||!w)return;const N=b.value>=0?b.value:0;O[N].scrollIntoView({behavior:"smooth",block:"nearest"})}const T=t.ref(null),W=t.ref(null);function Z(){return J(this,null,function*(){yield t.nextTick(),at(),st(),yield t.nextTick(),y()})}function at(){if(e.footer){const w=O[O.length-1];W.value=w.scrollHeight}else W.value=null}function st(){if(!e.visibleItemLimit||O.length<=e.visibleItemLimit){T.value=null;return}const w=O[0].getBoundingClientRect().top,N=O[e.visibleItemLimit].getBoundingClientRect().top;T.value=N-w+2}function it(w){return{"cdx-menu__group-wrapper--hide-label":!!w.hideLabel}}function rt(w){return c.value.indexOf(w)}function M(w){var N,F;return Y({selected:D(w.value),active:w.value===((N=h.value)==null?void 0:N.value),highlighted:w.value===((F=f.value)==null?void 0:F.value),showThumbnail:e.showThumbnail,boldLabel:e.boldLabel,hideDescriptionOverflow:e.hideDescriptionOverflow,searchQuery:e.searchQuery,multiselect:V.value},w)}function P(w){return{change:(N,F)=>$(N,F?w:null),click:()=>n("menu-item-click",w)}}function Q(w){var N,F;return{menuItem:w,active:w.value===((N=h.value)==null?void 0:N.value)&&w.value===((F=f.value)==null?void 0:F.value)}}t.onMounted(()=>{document.addEventListener("mouseup",z)}),t.onUnmounted(()=>{document.removeEventListener("mouseup",z)}),t.watch(t.toRef(e,"expanded"),w=>J(this,null,function*(){if(w){const N=E();N&&!f.value&&$("highlighted",N),yield Z()}else $("highlighted",null)})),t.watch(t.toRef(e,"menuItems"),w=>J(this,null,function*(){w.length<O.length&&(O.length=w.length),e.expanded&&(yield Z())}),{deep:!0});const be=t.computed(()=>({"max-height":T.value?"".concat(T.value,"px"):void 0,"margin-bottom":W.value?"".concat(W.value,"px"):void 0})),Ln=t.computed(()=>({"cdx-menu--has-footer":!!e.footer})),{rootClasses:Tn,rootStyle:Rn,otherAttrs:On}=le(l,Ln);return{listBoxStyle:be,rootClasses:Tn,rootStyle:Rn,otherAttrs:On,assignTemplateRef:H,computedMenuEntries:u,computedMenuItems:c,computedShowNoResultsSlot:p,highlightedMenuItem:f,highlightedViaKeyboard:m,handleMenuItemChange:$,handleKeyNavigation:K,ariaRelevant:v,isMultiselect:V,menuListbox:q,getGroupWrapperClasses:it,getMenuItemIndex:rt,getMenuItemBindings:M,getMenuItemHandlers:P,getSlotBindings:Q,isMenuGroupData:Le}},methods:{isExpanded(){return this.expanded},getHighlightedMenuItem(){return this.expanded?this.highlightedMenuItem:null},getHighlightedViaKeyboard(){return this.highlightedViaKeyboard},getComputedMenuItems(){return this.computedMenuItems},clearActive(){this.handleMenuItemChange("active",null)},delegateKeyNavigation(e,{prevent:n=!0,characterNavigation:o=!1}={}){return this.handleKeyNavigation(e,{prevent:n,characterNavigation:o})}}}),ta=["aria-live","aria-relevant","aria-multiselectable"],na={key:0,class:"cdx-menu__pending cdx-menu-item"},oa={key:1,class:"cdx-menu__no-results cdx-menu-item",role:"option"},la=["aria-labelledby","aria-describedby"],aa={class:"cdx-menu__group__meta"},sa={class:"cdx-menu__group__meta__text"},ia=["id"],ra=["id"];function da(e,n,o,l,i,d){const s=t.resolveComponent("cdx-icon"),r=t.resolveComponent("cdx-menu-item"),a=t.resolveComponent("cdx-progress-bar");return t.withDirectives((t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-menu",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("ul",t.mergeProps({ref:"menuListbox",class:"cdx-menu__listbox",role:"listbox",tabindex:"-1",style:e.listBoxStyle,"aria-live":e.showPending?"polite":void 0,"aria-relevant":e.showPending?e.ariaRelevant:void 0,"aria-multiselectable":e.isMultiselect?!0:void 0},e.otherAttrs),[e.showPending&&e.computedMenuItems.length===0&&e.$slots.pending?(t.openBlock(),t.createElementBlock("li",na,[t.renderSlot(e.$slots,"pending")])):t.createCommentVNode("v-if",!0),e.computedShowNoResultsSlot?(t.openBlock(),t.createElementBlock("li",oa,[t.renderSlot(e.$slots,"no-results")])):t.createCommentVNode("v-if",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.computedMenuEntries,(u,c)=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:c},[e.isMenuGroupData(u)?(t.openBlock(),t.createElementBlock("li",{key:0,class:t.normalizeClass(["cdx-menu__group-wrapper",e.getGroupWrapperClasses(u)])},[t.createElementVNode("ul",{class:"cdx-menu__group",role:"group","aria-labelledby":u.id+"-label","aria-describedby":u.id+"-description"},[t.createElementVNode("span",aa,[u.icon?(t.openBlock(),t.createBlock(s,{key:0,class:"cdx-menu__group__icon",icon:u.icon},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",sa,[t.createElementVNode("span",{id:u.id+"-label",class:"cdx-menu__group__label"},t.toDisplayString(u.label),9,ia),u.description?(t.openBlock(),t.createElementBlock("span",{key:0,id:u.id+"-description",class:"cdx-menu__group__description"},t.toDisplayString(u.description),9,ra)):t.createCommentVNode("v-if",!0)])]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.items,p=>(t.openBlock(),t.createBlock(r,t.mergeProps({key:p.value,ref_for:!0,ref:f=>e.assignTemplateRef(f,e.getMenuItemIndex(p)),class:"cdx-menu__group__item"},e.getMenuItemBindings(p),t.toHandlers(e.getMenuItemHandlers(p))),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",t.mergeProps({ref_for:!0},e.getSlotBindings(p)))]),_:2},1040))),128))],8,la)],2)):(t.openBlock(),t.createBlock(r,t.mergeProps({key:1,ref_for:!0,ref:p=>e.assignTemplateRef(p,e.getMenuItemIndex(u))},e.getMenuItemBindings(u),t.toHandlers(e.getMenuItemHandlers(u))),{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default",t.mergeProps({ref_for:!0},e.getSlotBindings(u)))]),_:2},1040))],64))),1