aboutsummaryrefslogtreecommitdiffstats
path: root/resources/lib/codex/modules
diff options
context:
space:
mode:
authorVolker E. <volker.e@wikimedia.org>2024-07-11 14:30:44 +0200
committerVolker E. <volker.e@wikimedia.org>2024-07-11 15:30:46 +0200
commit5cb441e49c2d4f0b3f52dc5f07d9f5570a246f35 (patch)
tree197d2c49b6fadab34775ab371c587eb1955f23b2 /resources/lib/codex/modules
parentac634435f4821d026b60abc756524242f189fa00 (diff)
downloadmediawikicore-5cb441e49c2d4f0b3f52dc5f07d9f5570a246f35.tar.gz
mediawikicore-5cb441e49c2d4f0b3f52dc5f07d9f5570a246f35.zip
Update Codex from 1.8.0 to 1.9.0
Bug: T358246 Bug: T363940 Bug: T366129 Bug: T367467 Bug: T367762 Bug: T367792 Bug: T368442 Bug: T368443 Bug: T369529 Depends-On: Ie642f038ef4b143166a574248ac936c78adae23e Change-Id: Ib1dc0dabdfbd1b92efdd723c0c2f2d625aeb6e7a
Diffstat (limited to 'resources/lib/codex/modules')
-rw-r--r--resources/lib/codex/modules/CdxChipInput.cjs2
-rw-r--r--resources/lib/codex/modules/CdxDialog.cjs2
-rw-r--r--resources/lib/codex/modules/CdxField.cjs2
-rw-r--r--resources/lib/codex/modules/CdxLabel.cjs2
-rw-r--r--resources/lib/codex/modules/CdxMessage.cjs2
-rw-r--r--resources/lib/codex/modules/CdxSearchInput.cjs2
-rw-r--r--resources/lib/codex/modules/CdxTable.cjs2
-rw-r--r--resources/lib/codex/modules/CdxTypeaheadSearch.cjs2
-rw-r--r--resources/lib/codex/modules/manifest-rtl.json13
-rw-r--r--resources/lib/codex/modules/manifest.json13
-rw-r--r--resources/lib/codex/modules/useI18n.cjs1
11 files changed, 35 insertions, 8 deletions
diff --git a/resources/lib/codex/modules/CdxChipInput.cjs b/resources/lib/codex/modules/CdxChipInput.cjs
index 115829bc59c2..16842e2d5551 100644
--- a/resources/lib/codex/modules/CdxChipInput.cjs
+++ b/resources/lib/codex/modules/CdxChipInput.cjs
@@ -1 +1 @@
-"use strict";var g=(e,n,c)=>new Promise((v,d)=>{var r=u=>{try{o(c.next(u))}catch(a){d(a)}},s=u=>{try{o(c.throw(u))}catch(a){d(a)}},o=u=>u.done?v(u.value):Promise.resolve(u.value).then(r,s);o((c=c.apply(e,n)).next())});const t=require("vue"),T=require("./CdxButton.cjs"),w=require("./Icon.js"),I=require("./_plugin-vue_export-helper.js"),y=require("./constants.js"),z=require("./useSplitAttributes.cjs"),L=require("./useFieldData.cjs"),O=require("./useComputedDirection.cjs"),M=t.defineComponent({name:"CdxInputChip",components:{CdxButton:T,CdxIcon:w.CdxIcon},props:{icon:{type:[String,Object],default:null},disabled:{type:Boolean,default:!1},chipAriaDescription:{type:String,default:"Press Enter to edit or Delete to remove"}},expose:["focus"],emits:["remove-chip","click-chip","arrow-left","arrow-right"],setup(e,{emit:n}){const c=t.ref(),v=t.computed(()=>({"cdx-input-chip--disabled":e.disabled}));function d(r){var s;switch(r.key){case"Enter":n("click-chip"),r.preventDefault(),r.stopPropagation();break;case"Escape":(s=c.value)==null||s.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:c,rootClasses:v,onKeydown:d,cdxIconClose:w.X3}},methods:{focus(){this.$refs.rootElement.focus()}}}),U=["aria-description"],j={class:"cdx-input-chip__text"};function H(e,n,c,v,d,r){const s=t.resolveComponent("cdx-icon"),o=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",{ref:"rootElement",class:t.normalizeClass(["cdx-input-chip",e.rootClasses]),tabindex:"0",role:"option","aria-description":e.chipAriaDescription,onKeydown:n[1]||(n[1]=(...u)=>e.onKeydown&&e.onKeydown(...u)),onClick:n[2]||(n[2]=u=>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",j,[t.renderSlot(e.$slots,"default")]),t.createVNode(o,{class:"cdx-input-chip__button",weight:"quiet",tabindex:"-1","aria-hidden":"true",disabled:e.disabled,onClick:n[0]||(n[0]=t.withModifiers(u=>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,U)}const X=I._export_sfc(M,[["render",H]]),G=y.makeStringTypeValidator(y.ValidationStatusTypes),J=t.defineComponent({name:"CdxChipInput",components:{CdxInputChip:X},inheritAttrs:!1,props:{inputChips:{type:Array,required:!0},separateInput:{type:Boolean,default:!1},status:{type:String,default:"default",validator:G},disabled:{type:Boolean,default:!1},chipAriaDescription:{type:String,default:"Press Enter to edit or Delete to remove"}},emits:["update:input-chips"],setup(e,{emit:n,attrs:c}){const v=t.ref(),d=O(v),r=t.ref(),s=t.ref(""),o=t.ref("default"),u=t.computed(()=>o.value==="error"||e.status==="error"?"error":"default"),{computedDisabled:a,computedStatus:D}=L(t.toRef(e,"disabled"),u),C=t.ref(!1),B=t.computed(()=>({"cdx-chip-input--has-separate-input":e.separateInput,["cdx-chip-input--status-".concat(D.value)]:!0,"cdx-chip-input--focused":C.value,"cdx-chip-input--disabled":a.value})),{rootClasses:$,rootStyle:E,otherAttrs:V}=z(c,B),m=[];function A(i,l){i!==null&&(m[l]=i)}const h=()=>{r.value.focus()};function k(){e.inputChips.find(i=>i.value===s.value)?o.value="error":s.value.length>0&&(n("update:input-chips",e.inputChips.concat({value:s.value})),s.value="")}function b(i){n("update:input-chips",e.inputChips.filter(l=>l.value!==i.value))}function F(i,l){const f=d.value==="ltr"&&i==="left"||d.value==="rtl"&&i==="right"?-1:1,p=l+f;if(!(p<0)){if(p>=e.inputChips.length){h();return}m[p].focus()}}function S(i){return g(this,null,function*(){k(),yield t.nextTick(),b(i),s.value=i.value,h()})}function R(i,l,f){if(f==="button")h();else if(f==="Backspace"){const p=l===0?1:l-1;p<e.inputChips.length?m[p].focus():h()}else if(f==="Delete"){const p=l+1;p<e.inputChips.length?m[p].focus():h()}b(i)}function P(i){var f,p;const l=d.value==="rtl"?"ArrowRight":"ArrowLeft";switch(i.key){case"Enter":if(s.value.length>0){k(),i.preventDefault(),i.stopPropagation();return}break;case"Escape":(f=r.value)==null||f.blur(),i.preventDefault(),i.stopPropagation();return;case"Backspace":case l:if(((p=r.value)==null?void 0:p.selectionStart)===0&&r.value.selectionEnd===0&&e.inputChips.length>0){m[e.inputChips.length-1].focus(),i.preventDefault(),i.stopPropagation();return}break}}function K(){C.value=!0}function q(){C.value=!1}function N(i){v.value.contains(i.relatedTarget)||k()}return t.watch(t.toRef(e,"inputChips"),i=>{const l=i.find(f=>f.value===s.value);o.value=l?"error":"default"}),t.watch(s,()=>{o.value==="error"&&(o.value="default")}),{rootElement:v,input:r,inputValue:s,rootClasses:$,rootStyle:E,otherAttrs:V,assignChipTemplateRef:A,handleChipClick:S,handleChipRemove:R,moveChipFocus:F,onInputKeydown:P,focusInput:h,onInputFocus:K,onInputBlur:q,onFocusOut:N,computedDisabled:a}}}),Q={class:"cdx-chip-input__chips",role:"listbox","aria-orientation":"horizontal"},W=["disabled"],Y={key:0,class:"cdx-chip-input__separate-input"},Z=["disabled"];function x(e,n,c,v,d,r){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]=(...o)=>e.focusInput&&e.focusInput(...o)),onFocusout:n[9]||(n[9]=(...o)=>e.onFocusOut&&e.onFocusOut(...o))},[t.createElementVNode("div",Q,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.inputChips,(o,u)=>(t.openBlock(),t.createBlock(s,{key:o.value,ref_for:!0,ref:a=>e.assignChipTemplateRef(a,u),class:"cdx-chip-input__item","chip-aria-description":e.chipAriaDescription,icon:o.icon,disabled:e.computedDisabled,onClickChip:a=>e.handleChipClick(o),onRemoveChip:a=>e.handleChipRemove(o,u,a),onArrowLeft:a=>e.moveChipFocus("left",u),onArrowRight:a=>e.moveChipFocus("right",u)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(o.value),1)]),_:2},1032,["chip-aria-description","icon","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]=o=>e.inputValue=o),class:"cdx-chip-input__input",disabled:e.computedDisabled},e.otherAttrs,{onBlur:n[1]||(n[1]=(...o)=>e.onInputBlur&&e.onInputBlur(...o)),onFocus:n[2]||(n[2]=(...o)=>e.onInputFocus&&e.onInputFocus(...o)),onKeydown:n[3]||(n[3]=(...o)=>e.onInputKeydown&&e.onInputKeydown(...o))}),null,16,W)),[[t.vModelDynamic,e.inputValue]])]),e.separateInput?(t.openBlock(),t.createElementBlock("div",Y,[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref:"input","onUpdate:modelValue":n[4]||(n[4]=o=>e.inputValue=o),class:"cdx-chip-input__input",disabled:e.computedDisabled},e.otherAttrs,{onBlur:n[5]||(n[5]=(...o)=>e.onInputBlur&&e.onInputBlur(...o)),onFocus:n[6]||(n[6]=(...o)=>e.onInputFocus&&e.onInputFocus(...o)),onKeydown:n[7]||(n[7]=(...o)=>e.onInputKeydown&&e.onInputKeydown(...o))}),null,16,Z),[[t.vModelDynamic,e.inputValue]])])):t.createCommentVNode("v-if",!0)],38)}const _=I._export_sfc(J,[["render",x]]);module.exports=_;
+"use strict";var w=(e,o,p)=>new Promise((v,d)=>{var c=u=>{try{n(p.next(u))}catch(r){d(r)}},i=u=>{try{n(p.throw(u))}catch(r){d(r)}},n=u=>u.done?v(u.value):Promise.resolve(u.value).then(c,i);n((p=p.apply(e,o)).next())});const t=require("vue"),T=require("./CdxButton.cjs"),g=require("./Icon.js"),z=require("./useI18n.cjs"),I=require("./_plugin-vue_export-helper.js"),y=require("./constants.js"),L=require("./useSplitAttributes.cjs"),O=require("./useFieldData.cjs"),M=require("./useComputedDirection.cjs"),U=t.defineComponent({name:"CdxInputChip",components:{CdxButton:T,CdxIcon:g.CdxIcon},props:{icon:{type:[String,Object],default:null},disabled:{type:Boolean,default:!1}},expose:["focus"],emits:["remove-chip","click-chip","arrow-left","arrow-right"],setup(e,{emit:o}){const p=t.ref(),v=t.computed(()=>({"cdx-input-chip--disabled":e.disabled})),d=z("cdx-input-chip-aria-description","Press Enter to edit or Delete to remove");function c(i){var n;switch(i.key){case"Enter":o("click-chip"),i.preventDefault(),i.stopPropagation();break;case"Escape":(n=p.value)==null||n.blur(),i.preventDefault(),i.stopPropagation();break;case"Backspace":case"Delete":o("remove-chip",i.key),i.preventDefault(),i.stopPropagation();break;case"ArrowLeft":o("arrow-left"),i.preventDefault(),i.stopPropagation();break;case"ArrowRight":o("arrow-right"),i.preventDefault(),i.stopPropagation();break}}return{rootElement:p,rootClasses:v,ariaDescription:d,onKeydown:c,cdxIconClose:g.X3}},methods:{focus(){this.$refs.rootElement.focus()}}}),j=["aria-description"],H={class:"cdx-input-chip__text"};function X(e,o,p,v,d,c){const i=t.resolveComponent("cdx-icon"),n=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",{ref:"rootElement",class:t.normalizeClass(["cdx-input-chip",e.rootClasses]),tabindex:"0",role:"option","aria-description":e.ariaDescription,onKeydown:o[1]||(o[1]=(...u)=>e.onKeydown&&e.onKeydown(...u)),onClick:o[2]||(o[2]=u=>e.$emit("click-chip"))},[e.icon?(t.openBlock(),t.createBlock(i,{key:0,icon:e.icon,size:"small"},null,8,["icon"])):t.createCommentVNode("v-if",!0),t.createElementVNode("span",H,[t.renderSlot(e.$slots,"default")]),t.createVNode(n,{class:"cdx-input-chip__button",weight:"quiet",tabindex:"-1","aria-hidden":"true",disabled:e.disabled,onClick:o[0]||(o[0]=t.withModifiers(u=>e.$emit("remove-chip","button"),["stop"]))},{default:t.withCtx(()=>[t.createVNode(i,{icon:e.cdxIconClose,size:"x-small"},null,8,["icon"])]),_:1},8,["disabled"])],42,j)}const G=I._export_sfc(U,[["render",X]]),J=y.makeStringTypeValidator(y.ValidationStatusTypes),Q=t.defineComponent({name:"CdxChipInput",components:{CdxInputChip:G},inheritAttrs:!1,props:{inputChips:{type:Array,required:!0},separateInput:{type:Boolean,default:!1},status:{type:String,default:"default",validator:J},disabled:{type:Boolean,default:!1}},emits:["update:input-chips"],setup(e,{emit:o,attrs:p}){const v=t.ref(),d=M(v),c=t.ref(),i=t.ref(""),n=t.ref("default"),u=t.computed(()=>n.value==="error"||e.status==="error"?"error":"default"),{computedDisabled:r,computedStatus:B}=O(t.toRef(e,"disabled"),u),C=t.ref(!1),D=t.computed(()=>({"cdx-chip-input--has-separate-input":e.separateInput,["cdx-chip-input--status-".concat(B.value)]:!0,"cdx-chip-input--focused":C.value,"cdx-chip-input--disabled":r.value})),{rootClasses:$,rootStyle:V,otherAttrs:E}=L(p,D),m=[];function F(s,a){s!==null&&(m[a]=s)}const h=()=>{c.value.focus()};function k(){e.inputChips.find(s=>s.value===i.value)?n.value="error":i.value.length>0&&(o("update:input-chips",e.inputChips.concat({value:i.value})),i.value="")}function b(s){o("update:input-chips",e.inputChips.filter(a=>a.value!==s.value))}function A(s,a){const f=d.value==="ltr"&&s==="left"||d.value==="rtl"&&s==="right"?-1:1,l=a+f;if(!(l<0)){if(l>=e.inputChips.length){h();return}m[l].focus()}}function S(s){return w(this,null,function*(){k(),yield t.nextTick(),b(s),i.value=s.value,h()})}function R(s,a,f){if(f==="button")h();else if(f==="Backspace"){const l=a===0?1:a-1;l<e.inputChips.length?m[l].focus():h()}else if(f==="Delete"){const l=a+1;l<e.inputChips.length?m[l].focus():h()}b(s)}function q(s){var f,l;const a=d.value==="rtl"?"ArrowRight":"ArrowLeft";switch(s.key){case"Enter":if(i.value.length>0){k(),s.preventDefault(),s.stopPropagation();return}break;case"Escape":(f=c.value)==null||f.blur(),s.preventDefault(),s.stopPropagation();return;case"Backspace":case a:if(((l=c.value)==null?void 0:l.selectionStart)===0&&c.value.selectionEnd===0&&e.inputChips.length>0){m[e.inputChips.length-1].focus(),s.preventDefault(),s.stopPropagation();return}break}}function K(){C.value=!0}function P(){C.value=!1}function N(s){v.value.contains(s.relatedTarget)||k()}return t.watch(t.toRef(e,"inputChips"),s=>{const a=s.find(f=>f.value===i.value);n.value=a?"error":"default"}),t.watch(i,()=>{n.value==="error"&&(n.value="default")}),{rootElement:v,input:c,inputValue:i,rootClasses:$,rootStyle:V,otherAttrs:E,assignChipTemplateRef:F,handleChipClick:S,handleChipRemove:R,moveChipFocus:A,onInputKeydown:q,focusInput:h,onInputFocus:K,onInputBlur:P,onFocusOut:N,computedDisabled:r}}}),W={class:"cdx-chip-input__chips",role:"listbox","aria-orientation":"horizontal"},Y=["disabled"],Z={key:0,class:"cdx-chip-input__separate-input"},x=["disabled"];function _(e,o,p,v,d,c){const i=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:o[8]||(o[8]=(...n)=>e.focusInput&&e.focusInput(...n)),onFocusout:o[9]||(o[9]=(...n)=>e.onFocusOut&&e.onFocusOut(...n))},[t.createElementVNode("div",W,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(e.inputChips,(n,u)=>(t.openBlock(),t.createBlock(i,{key:n.value,ref_for:!0,ref:r=>e.assignChipTemplateRef(r,u),class:"cdx-chip-input__item",icon:n.icon,disabled:e.computedDisabled,onClickChip:r=>e.handleChipClick(n),onRemoveChip:r=>e.handleChipRemove(n,u,r),onArrowLeft:r=>e.moveChipFocus("left",u),onArrowRight:r=>e.moveChipFocus("right",u)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(n.value),1)]),_:2},1032,["icon","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":o[0]||(o[0]=n=>e.inputValue=n),class:"cdx-chip-input__input",disabled:e.computedDisabled},e.otherAttrs,{onBlur:o[1]||(o[1]=(...n)=>e.onInputBlur&&e.onInputBlur(...n)),onFocus:o[2]||(o[2]=(...n)=>e.onInputFocus&&e.onInputFocus(...n)),onKeydown:o[3]||(o[3]=(...n)=>e.onInputKeydown&&e.onInputKeydown(...n))}),null,16,Y)),[[t.vModelDynamic,e.inputValue]])]),e.separateInput?(t.openBlock(),t.createElementBlock("div",Z,[t.withDirectives(t.createElementVNode("input",t.mergeProps({ref:"input","onUpdate:modelValue":o[4]||(o[4]=n=>e.inputValue=n),class:"cdx-chip-input__input",disabled:e.computedDisabled},e.otherAttrs,{onBlur:o[5]||(o[5]=(...n)=>e.onInputBlur&&e.onInputBlur(...n)),onFocus:o[6]||(o[6]=(...n)=>e.onInputFocus&&e.onInputFocus(...n)),onKeydown:o[7]||(o[7]=(...n)=>e.onInputKeydown&&e.onInputKeydown(...n))}),null,16,x),[[t.vModelDynamic,e.inputValue]])])):t.createCommentVNode("v-if",!0)],38)}const ee=I._export_sfc(Q,[["render",_]]);module.exports=ee;
diff --git a/resources/lib/codex/modules/CdxDialog.cjs b/resources/lib/codex/modules/CdxDialog.cjs
index 4ef0948a0fa5..c8271cb67a21 100644
--- a/resources/lib/codex/modules/CdxDialog.cjs
+++ b/resources/lib/codex/modules/CdxDialog.cjs
@@ -1 +1 @@
-"use strict";var B=(o,n,d)=>new Promise((u,s)=>{var i=l=>{try{r(d.next(l))}catch(f){s(f)}},c=l=>{try{r(d.throw(l))}catch(f){s(f)}},r=l=>l.done?u(l.value):Promise.resolve(l.value).then(i,c);r((d=d.apply(o,n)).next())});const e=require("vue"),q=require("./CdxButton.cjs"),A=require("./Icon.js"),L=require("./useGeneratedId.cjs"),_=require("./useResizeObserver.cjs"),P=require("./_plugin-vue_export-helper.js"),z=e.defineComponent({name:"CdxDialog",components:{CdxButton:q,CdxIcon:A.CdxIcon},inheritAttrs:!1,props:{open:{type:Boolean,default:!1},title:{type:String,required:!0},subtitle:{type:String,required:!1,default:null},hideTitle:{type:Boolean,default:!1},closeButtonLabel:{type:String,default:""},primaryAction:{type:Object,default:null},defaultAction:{type:Object,default:null},stackedActions:{type:Boolean,default:!1},target:{type:String,default:null},renderInPlace:{type:Boolean,default:!1}},emits:["update:open","primary","default"],setup(o,{emit:n}){const d=L("dialog-label"),u=e.ref(),s=e.ref(),i=e.ref(),c=e.ref(),r=e.ref(),l=e.ref(),f=e.computed(()=>!o.hideTitle||!!o.closeButtonLabel),E=e.computed(()=>!!o.primaryAction||!!o.defaultAction),$=_(i),w=e.computed(()=>{var t;return(t=$.value.height)!=null?t:0}),y=e.ref(!1),N=e.computed(()=>({"cdx-dialog--vertical-actions":o.stackedActions,"cdx-dialog--horizontal-actions":!o.stackedActions,"cdx-dialog--dividers":y.value})),T=e.inject("CdxTeleportTarget",void 0),V=e.computed(()=>{var t,a;return(a=(t=o.target)!=null?t:T)!=null?a:"body"}),h=e.ref(0);function S(){n("update:open",!1)}function I(){m(s.value)}function H(){m(s.value,!0)}function m(t,a=!1){let g=Array.from(t.querySelectorAll('\n input, select, textarea, button, object, a, area,\n [contenteditable], [tabindex]:not([tabindex^="-"])\n '));a&&(g=g.reverse());for(const C of g)if(C.focus(),document.activeElement===C)return!0;return!1}let p=[],b=[];function D(){let t=u.value;for(;t.parentElement&&t.nodeName!=="BODY";){for(const a of Array.from(t.parentElement.children))a===t||a.nodeName==="SCRIPT"||(a.hasAttribute("aria-hidden")||(a.setAttribute("aria-hidden","true"),p.push(a)),a.hasAttribute("inert")||(a.setAttribute("inert",""),b.push(a)));t=t.parentElement}}function F(){for(const t of p)t.removeAttribute("aria-hidden");for(const t of b)t.removeAttribute("inert");p=[],b=[]}function v(){return B(this,null,function*(){var t;yield e.nextTick(),h.value=window.innerWidth-document.documentElement.clientWidth,document.documentElement.style.setProperty("margin-right","".concat(h.value,"px")),document.body.classList.add("cdx-dialog-open"),D(),m(i.value)||(t=c.value)==null||t.focus()})}function k(){document.body.classList.remove("cdx-dialog-open"),document.documentElement.style.removeProperty("margin-right"),F()}return e.onMounted(()=>{o.open&&v()}),e.onUnmounted(()=>{o.open&&k()}),e.watch(e.toRef(o,"open"),t=>{t?v():k()}),e.watch(w,()=>{i.value&&(y.value=i.value.clientHeight<i.value.scrollHeight)}),{close:S,cdxIconClose:A.X3,labelId:d,rootClasses:N,backdrop:u,dialogElement:s,focusTrapStart:r,focusTrapEnd:l,focusFirst:I,focusLast:H,dialogBody:i,focusHolder:c,showHeader:f,showFooterActions:E,computedTarget:V}}}),O=["aria-label","aria-labelledby"],j={key:0,class:"cdx-dialog__header__title-group"},x=["id"],R={key:0,class:"cdx-dialog__header__subtitle"},W={ref:"focusHolder",class:"cdx-dialog-focus-trap",tabindex:"-1"},K={key:0,class:"cdx-dialog__footer__text"},M={key:1,class:"cdx-dialog__footer__actions"};function G(o,n,d,u,s,i){const c=e.resolveComponent("cdx-icon"),r=e.resolveComponent("cdx-button");return e.openBlock(),e.createBlock(e.Teleport,{to:o.computedTarget,disabled:o.renderInPlace},[e.createVNode(e.Transition,{name:"cdx-dialog-fade",appear:""},{default:e.withCtx(()=>[o.open?(e.openBlock(),e.createElementBlock("div",{key:0,ref:"backdrop",class:"cdx-dialog-backdrop",onClick:n[5]||(n[5]=(...l)=>o.close&&o.close(...l)),onKeyup:n[6]||(n[6]=e.withKeys((...l)=>o.close&&o.close(...l),["escape"]))},[e.createElementVNode("div",{ref:"focusTrapStart",tabindex:"0",onFocus:n[0]||(n[0]=(...l)=>o.focusLast&&o.focusLast(...l))},null,544),e.createElementVNode("div",e.mergeProps({ref:"dialogElement",class:["cdx-dialog",o.rootClasses],role:"dialog"},o.$attrs,{"aria-label":o.$slots.header||o.hideTitle?o.title:void 0,"aria-labelledby":!o.$slots.header&&!o.hideTitle?o.labelId:void 0,"aria-modal":"true",onClick:n[3]||(n[3]=e.withModifiers(()=>{},["stop"]))}),[o.showHeader||o.$slots.header?(e.openBlock(),e.createElementBlock("header",{key:0,class:e.normalizeClass(["cdx-dialog__header",{"cdx-dialog__header--default":!o.$slots.header}])},[e.renderSlot(o.$slots,"header",{},()=>[o.hideTitle?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",j,[e.createElementVNode("h2",{id:o.labelId,class:"cdx-dialog__header__title"},e.toDisplayString(o.title),9,x),o.subtitle?(e.openBlock(),e.createElementBlock("p",R,e.toDisplayString(o.subtitle),1)):e.createCommentVNode("v-if",!0)])),o.closeButtonLabel?(e.openBlock(),e.createBlock(r,{key:1,class:"cdx-dialog__header__close-button",weight:"quiet",type:"button","aria-label":o.closeButtonLabel,onClick:o.close},{default:e.withCtx(()=>[e.createVNode(c,{icon:o.cdxIconClose,"icon-label":o.closeButtonLabel},null,8,["icon","icon-label"])]),_:1},8,["aria-label","onClick"])):e.createCommentVNode("v-if",!0)])],2)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",W,null,512),e.createElementVNode("div",{ref:"dialogBody",class:e.normalizeClass(["cdx-dialog__body",{"cdx-dialog__body--no-header":!(o.showHeader||o.$slots.header),"cdx-dialog__body--no-footer":!(o.showFooterActions||o.$slots.footer||o.$slots["footer-text"])}])},[e.renderSlot(o.$slots,"default")],2),o.showFooterActions||o.$slots.footer||o.$slots["footer-text"]?(e.openBlock(),e.createElementBlock("footer",{key:1,class:e.normalizeClass(["cdx-dialog__footer",{"cdx-dialog__footer--default":!o.$slots.footer}])},[e.renderSlot(o.$slots,"footer",{},()=>[o.$slots["footer-text"]?(e.openBlock(),e.createElementBlock("p",K,[e.renderSlot(o.$slots,"footer-text")])):e.createCommentVNode("v-if",!0),o.showFooterActions?(e.openBlock(),e.createElementBlock("div",M,[o.primaryAction?(e.openBlock(),e.createBlock(r,{key:0,class:"cdx-dialog__footer__primary-action",weight:"primary",action:o.primaryAction.actionType,disabled:o.primaryAction.disabled,onClick:n[1]||(n[1]=l=>o.$emit("primary"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.primaryAction.label),1)]),_:1},8,["action","disabled"])):e.createCommentVNode("v-if",!0),o.defaultAction?(e.openBlock(),e.createBlock(r,{key:1,class:"cdx-dialog__footer__default-action",disabled:o.defaultAction.disabled,onClick:n[2]||(n[2]=l=>o.$emit("default"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.defaultAction.label),1)]),_:1},8,["disabled"])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0)])],2)):e.createCommentVNode("v-if",!0)],16,O),e.createElementVNode("div",{ref:"focusTrapEnd",tabindex:"0",onFocus:n[4]||(n[4]=(...l)=>o.focusFirst&&o.focusFirst(...l))},null,544)],544)):e.createCommentVNode("v-if",!0)]),_:3})],8,["to","disabled"])}const U=P._export_sfc(z,[["render",G]]);module.exports=U;
+"use strict";var B=(t,n,d)=>new Promise((f,s)=>{var i=l=>{try{r(d.next(l))}catch(u){s(u)}},c=l=>{try{r(d.throw(l))}catch(u){s(u)}},r=l=>l.done?f(l.value):Promise.resolve(l.value).then(i,c);r((d=d.apply(t,n)).next())});const e=require("vue"),_=require("./CdxButton.cjs"),A=require("./Icon.js"),O=require("./useGeneratedId.cjs"),P=require("./useI18n.cjs"),x=require("./useResizeObserver.cjs"),z=require("./_plugin-vue_export-helper.js"),j=e.defineComponent({name:"CdxDialog",components:{CdxButton:_,CdxIcon:A.CdxIcon},inheritAttrs:!1,props:{open:{type:Boolean,default:!1},title:{type:String,required:!0},subtitle:{type:String,required:!1,default:null},hideTitle:{type:Boolean,default:!1},useCloseButton:{type:Boolean,default:!1},closeButtonLabel:{type:String,default:""},primaryAction:{type:Object,default:null},defaultAction:{type:Object,default:null},stackedActions:{type:Boolean,default:!1},target:{type:String,default:null},renderInPlace:{type:Boolean,default:!1}},emits:["update:open","primary","default"],setup(t,{emit:n}){const d=O("dialog-label"),f=e.ref(),s=e.ref(),i=e.ref(),c=e.ref(),r=e.ref(),l=e.ref(),u=e.computed(()=>t.useCloseButton||t.closeButtonLabel.length>0),E=P("cdx-dialog-close-button-label",()=>t.closeButtonLabel||"Close"),$=e.computed(()=>!t.hideTitle||u.value),w=e.computed(()=>!!t.primaryAction||!!t.defaultAction),N=x(i),T=e.computed(()=>{var o;return(o=N.value.height)!=null?o:0}),y=e.ref(!1),V=e.computed(()=>({"cdx-dialog--vertical-actions":t.stackedActions,"cdx-dialog--horizontal-actions":!t.stackedActions,"cdx-dialog--dividers":y.value})),S=e.inject("CdxTeleportTarget",void 0),I=e.computed(()=>{var o,a;return(a=(o=t.target)!=null?o:S)!=null?a:"body"}),h=e.ref(0);function H(){n("update:open",!1)}function L(){m(s.value)}function q(){m(s.value,!0)}function m(o,a=!1){let g=Array.from(o.querySelectorAll('\n input, select, textarea, button, object, a, area,\n [contenteditable], [tabindex]:not([tabindex^="-"])\n '));a&&(g=g.reverse());for(const C of g)if(C.focus(),document.activeElement===C)return!0;return!1}let p=[],b=[];function D(){let o=f.value;for(;o.parentElement&&o.nodeName!=="BODY";){for(const a of Array.from(o.parentElement.children))a===o||a.nodeName==="SCRIPT"||(a.hasAttribute("aria-hidden")||(a.setAttribute("aria-hidden","true"),p.push(a)),a.hasAttribute("inert")||(a.setAttribute("inert",""),b.push(a)));o=o.parentElement}}function F(){for(const o of p)o.removeAttribute("aria-hidden");for(const o of b)o.removeAttribute("inert");p=[],b=[]}function v(){return B(this,null,function*(){var o;yield e.nextTick(),h.value=window.innerWidth-document.documentElement.clientWidth,document.documentElement.style.setProperty("margin-right","".concat(h.value,"px")),document.body.classList.add("cdx-dialog-open"),D(),m(i.value)||(o=c.value)==null||o.focus()})}function k(){document.body.classList.remove("cdx-dialog-open"),document.documentElement.style.removeProperty("margin-right"),F()}return e.onMounted(()=>{t.open&&v()}),e.onUnmounted(()=>{t.open&&k()}),e.watch(e.toRef(t,"open"),o=>{o?v():k()}),e.watch(T,()=>{i.value&&(y.value=i.value.clientHeight<i.value.scrollHeight)}),{close:H,cdxIconClose:A.X3,labelId:d,rootClasses:V,backdrop:f,dialogElement:s,focusTrapStart:r,focusTrapEnd:l,focusFirst:L,focusLast:q,dialogBody:i,focusHolder:c,showHeader:$,showFooterActions:w,useCloseButtonOrLabel:u,translatedCloseButtonLabel:E,computedTarget:I}}}),R=["aria-label","aria-labelledby"],W={key:0,class:"cdx-dialog__header__title-group"},K=["id"],M={key:0,class:"cdx-dialog__header__subtitle"},G={ref:"focusHolder",class:"cdx-dialog-focus-trap",tabindex:"-1"},U={key:0,class:"cdx-dialog__footer__text"},X={key:1,class:"cdx-dialog__footer__actions"};function Y(t,n,d,f,s,i){const c=e.resolveComponent("cdx-icon"),r=e.resolveComponent("cdx-button");return e.openBlock(),e.createBlock(e.Teleport,{to:t.computedTarget,disabled:t.renderInPlace},[e.createVNode(e.Transition,{name:"cdx-dialog-fade",appear:""},{default:e.withCtx(()=>[t.open?(e.openBlock(),e.createElementBlock("div",{key:0,ref:"backdrop",class:"cdx-dialog-backdrop",onClick:n[5]||(n[5]=(...l)=>t.close&&t.close(...l)),onKeyup:n[6]||(n[6]=e.withKeys((...l)=>t.close&&t.close(...l),["escape"]))},[e.createElementVNode("div",{ref:"focusTrapStart",tabindex:"0",onFocus:n[0]||(n[0]=(...l)=>t.focusLast&&t.focusLast(...l))},null,544),e.createElementVNode("div",e.mergeProps({ref:"dialogElement",class:["cdx-dialog",t.rootClasses],role:"dialog"},t.$attrs,{"aria-label":t.$slots.header||t.hideTitle?t.title:void 0,"aria-labelledby":!t.$slots.header&&!t.hideTitle?t.labelId:void 0,"aria-modal":"true",onClick:n[3]||(n[3]=e.withModifiers(()=>{},["stop"]))}),[t.showHeader||t.$slots.header?(e.openBlock(),e.createElementBlock("header",{key:0,class:e.normalizeClass(["cdx-dialog__header",{"cdx-dialog__header--default":!t.$slots.header}])},[e.renderSlot(t.$slots,"header",{},()=>[t.hideTitle?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock("div",W,[e.createElementVNode("h2",{id:t.labelId,class:"cdx-dialog__header__title"},e.toDisplayString(t.title),9,K),t.subtitle?(e.openBlock(),e.createElementBlock("p",M,e.toDisplayString(t.subtitle),1)):e.createCommentVNode("v-if",!0)])),t.useCloseButtonOrLabel?(e.openBlock(),e.createBlock(r,{key:1,class:"cdx-dialog__header__close-button",weight:"quiet",type:"button","aria-label":t.translatedCloseButtonLabel,onClick:t.close},{default:e.withCtx(()=>[e.createVNode(c,{icon:t.cdxIconClose},null,8,["icon"])]),_:1},8,["aria-label","onClick"])):e.createCommentVNode("v-if",!0)])],2)):e.createCommentVNode("v-if",!0),e.createElementVNode("div",G,null,512),e.createElementVNode("div",{ref:"dialogBody",class:e.normalizeClass(["cdx-dialog__body",{"cdx-dialog__body--no-header":!(t.showHeader||t.$slots.header),"cdx-dialog__body--no-footer":!(t.showFooterActions||t.$slots.footer||t.$slots["footer-text"])}])},[e.renderSlot(t.$slots,"default")],2),t.showFooterActions||t.$slots.footer||t.$slots["footer-text"]?(e.openBlock(),e.createElementBlock("footer",{key:1,class:e.normalizeClass(["cdx-dialog__footer",{"cdx-dialog__footer--default":!t.$slots.footer}])},[e.renderSlot(t.$slots,"footer",{},()=>[t.$slots["footer-text"]?(e.openBlock(),e.createElementBlock("p",U,[e.renderSlot(t.$slots,"footer-text")])):e.createCommentVNode("v-if",!0),t.showFooterActions?(e.openBlock(),e.createElementBlock("div",X,[t.primaryAction?(e.openBlock(),e.createBlock(r,{key:0,class:"cdx-dialog__footer__primary-action",weight:"primary",action:t.primaryAction.actionType,disabled:t.primaryAction.disabled,onClick:n[1]||(n[1]=l=>t.$emit("primary"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.primaryAction.label),1)]),_:1},8,["action","disabled"])):e.createCommentVNode("v-if",!0),t.defaultAction?(e.openBlock(),e.createBlock(r,{key:1,class:"cdx-dialog__footer__default-action",disabled:t.defaultAction.disabled,onClick:n[2]||(n[2]=l=>t.$emit("default"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.defaultAction.label),1)]),_:1},8,["disabled"])):e.createCommentVNode("v-if",!0)])):e.createCommentVNode("v-if",!0)])],2)):e.createCommentVNode("v-if",!0)],16,R),e.createElementVNode("div",{ref:"focusTrapEnd",tabindex:"0",onFocus:n[4]||(n[4]=(...l)=>t.focusFirst&&t.focusFirst(...l))},null,544)],544)):e.createCommentVNode("v-if",!0)]),_:3})],8,["to","disabled"])}const J=z._export_sfc(j,[["render",Y]]);module.exports=J;
diff --git a/resources/lib/codex/modules/CdxField.cjs b/resources/lib/codex/modules/CdxField.cjs
index fa735fa161c0..1481fd379265 100644
--- a/resources/lib/codex/modules/CdxField.cjs
+++ b/resources/lib/codex/modules/CdxField.cjs
@@ -1 +1 @@
-"use strict";const e=require("vue"),g=require("./CdxLabel.cjs"),y=require("./CdxMessage.cjs"),s=require("./constants.js"),a=require("./useGeneratedId.cjs"),C=require("./useComputedDisabled.cjs"),h=require("./_plugin-vue_export-helper.js"),I=s.makeStringTypeValidator(s.ValidationStatusTypes),F=e.defineComponent({name:"CdxField",components:{CdxLabel:g,CdxMessage:y},props:{labelIcon:{type:[String,Object],default:""},optionalFlag:{type:String,default:""},hideLabel:{type:Boolean,default:!1},isFieldset:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},status:{type:String,default:"default",validator:I},messages:{type:Object,default:()=>({})}},setup(t,{slots:n}){const{disabled:r,status:c,isFieldset:d}=e.toRefs(t),i=C(r),o=e.computed(()=>({"cdx-field--disabled":i.value,"cdx-field--is-fieldset":d.value})),l=a("label"),u=a("description"),p=a("input"),m=e.computed(()=>d.value?void 0:p);e.provide(s.FieldInputIdKey,m);const f=e.computed(()=>!d.value&&n.description?u:void 0);e.provide(s.FieldDescriptionIdKey,f),e.provide(s.DisabledKey,i),e.provide(s.FieldStatusKey,c);const v=e.computed(()=>t.status!=="default"&&t.status in t.messages?t.messages[t.status]:""),b=e.computed(()=>t.status==="default"?"notice":t.status);return{rootClasses:o,computedDisabled:i,labelId:l,descriptionId:u,inputId:p,validationMessage:v,validationMessageType:b}}}),S={class:"cdx-field__control"},D={class:"cdx-field__help-text"},V={key:0,class:"cdx-field__validation-message"};function $(t,n,r,c,d,i){const o=e.resolveComponent("cdx-label"),l=e.resolveComponent("cdx-message");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.isFieldset?"fieldset":"div"),{class:e.normalizeClass(["cdx-field",t.rootClasses]),"aria-disabled":!t.isFieldset&&t.computedDisabled?!0:void 0,disabled:t.isFieldset&&t.computedDisabled?!0:void 0},{default:e.withCtx(()=>[e.createVNode(o,{id:t.labelId,icon:t.labelIcon,"visually-hidden":t.hideLabel,"optional-flag":t.optionalFlag,"input-id":t.inputId,"description-id":t.descriptionId,disabled:t.computedDisabled,"is-legend":t.isFieldset},e.createSlots({default:e.withCtx(()=>[e.renderSlot(t.$slots,"label")]),_:2},[t.$slots.description&&t.$slots.description().length>0?{name:"description",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"description")]),key:"0"}:void 0]),1032,["id","icon","visually-hidden","optional-flag","input-id","description-id","disabled","is-legend"]),e.createElementVNode("div",S,[e.renderSlot(t.$slots,"default")]),e.createElementVNode("div",D,[e.renderSlot(t.$slots,"help-text")]),!t.computedDisabled&&t.validationMessage?(e.openBlock(),e.createElementBlock("div",V,[e.createVNode(l,{type:t.validationMessageType,inline:!0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.validationMessage),1)]),_:1},8,["type"])])):e.createCommentVNode("v-if",!0)]),_:3},8,["class","aria-disabled","disabled"])}const k=h._export_sfc(F,[["render",$]]);module.exports=k;
+"use strict";const e=require("vue"),g=require("./CdxLabel.cjs"),y=require("./CdxMessage.cjs"),s=require("./constants.js"),a=require("./useGeneratedId.cjs"),C=require("./useComputedDisabled.cjs"),h=require("./_plugin-vue_export-helper.js"),I=s.makeStringTypeValidator(s.ValidationStatusTypes),F=e.defineComponent({name:"CdxField",components:{CdxLabel:g,CdxMessage:y},props:{labelIcon:{type:[String,Object],default:""},optional:{type:Boolean,default:!1},optionalFlag:{type:String,default:""},hideLabel:{type:Boolean,default:!1},isFieldset:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},status:{type:String,default:"default",validator:I},messages:{type:Object,default:()=>({})}},setup(t,{slots:n}){const{disabled:r,status:u,isFieldset:d}=e.toRefs(t),i=C(r),o=e.computed(()=>({"cdx-field--disabled":i.value,"cdx-field--is-fieldset":d.value})),l=a("label"),c=a("description"),p=a("input"),f=e.computed(()=>d.value?void 0:p);e.provide(s.FieldInputIdKey,f);const m=e.computed(()=>!d.value&&n.description?c:void 0);e.provide(s.FieldDescriptionIdKey,m),e.provide(s.DisabledKey,i),e.provide(s.FieldStatusKey,u);const v=e.computed(()=>t.status!=="default"&&t.status in t.messages?t.messages[t.status]:""),b=e.computed(()=>t.status==="default"?"notice":t.status);return{rootClasses:o,computedDisabled:i,labelId:l,descriptionId:c,inputId:p,validationMessage:v,validationMessageType:b}}}),S={class:"cdx-field__control"},D={class:"cdx-field__help-text"},V={key:0,class:"cdx-field__validation-message"};function $(t,n,r,u,d,i){const o=e.resolveComponent("cdx-label"),l=e.resolveComponent("cdx-message");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.isFieldset?"fieldset":"div"),{class:e.normalizeClass(["cdx-field",t.rootClasses]),"aria-disabled":!t.isFieldset&&t.computedDisabled?!0:void 0,disabled:t.isFieldset&&t.computedDisabled?!0:void 0},{default:e.withCtx(()=>[e.createVNode(o,{id:t.labelId,icon:t.labelIcon,"visually-hidden":t.hideLabel,optional:t.optional,"optional-flag":t.optionalFlag,"input-id":t.inputId,"description-id":t.descriptionId,disabled:t.computedDisabled,"is-legend":t.isFieldset},e.createSlots({default:e.withCtx(()=>[e.renderSlot(t.$slots,"label")]),_:2},[t.$slots.description&&t.$slots.description().length>0?{name:"description",fn:e.withCtx(()=>[e.renderSlot(t.$slots,"description")]),key:"0"}:void 0]),1032,["id","icon","visually-hidden","optional","optional-flag","input-id","description-id","disabled","is-legend"]),e.createElementVNode("div",S,[e.renderSlot(t.$slots,"default")]),e.createElementVNode("div",D,[e.renderSlot(t.$slots,"help-text")]),!t.computedDisabled&&t.validationMessage?(e.openBlock(),e.createElementBlock("div",V,[e.createVNode(l,{type:t.validationMessageType,inline:!0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.validationMessage),1)]),_:1},8,["type"])])):e.createCommentVNode("v-if",!0)]),_:3},8,["class","aria-disabled","disabled"])}const B=h._export_sfc(F,[["render",$]]);module.exports=B;
diff --git a/resources/lib/codex/modules/CdxLabel.cjs b/resources/lib/codex/modules/CdxLabel.cjs
index 181f1e189f17..a044de5d7b5d 100644
--- a/resources/lib/codex/modules/CdxLabel.cjs
+++ b/resources/lib/codex/modules/CdxLabel.cjs
@@ -1 +1 @@
-"use strict";const e=require("vue"),r=require("./Icon.js"),d=require("./useFieldData.cjs"),c=require("./useSplitAttributes.cjs"),p=require("./_plugin-vue_export-helper.js"),u=e.defineComponent({name:"CdxLabel",components:{CdxIcon:r.CdxIcon},inheritAttrs:!1,props:{icon:{type:[String,Object],default:null},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(l,{attrs:t}){const{computedDisabled:s}=d(e.toRef(l,"disabled")),n=e.computed(()=>({"cdx-label--visually-hidden":l.visuallyHidden,"cdx-label--disabled":s.value})),{rootClasses:a,rootStyle:i,otherAttrs:o}=c(t,n);return{rootClasses:a,rootStyle:i,otherAttrs:o}}}),_=["for"],m={class:"cdx-label__label__text"},b={key:1,class:"cdx-label__label__optional-flag"},f=["id"],y={class:"cdx-label__label"},k={class:"cdx-label__label__text"},g={key:1,class:"cdx-label__label__optional-flag"},B={key:0,class:"cdx-label__description"};function C(l,t,s,n,a,i){const o=e.resolveComponent("cdx-icon");return l.isLegend?(e.openBlock(),e.createElementBlock("legend",e.mergeProps({key:1,class:["cdx-label",l.rootClasses],style:l.rootStyle},l.otherAttrs),[e.createElementVNode("span",y,[l.icon?(e.openBlock(),e.createBlock(o,{key:0,icon:l.icon,class:"cdx-label__label__icon"},null,8,["icon"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",k,[e.renderSlot(l.$slots,"default")]),l.optionalFlag?(e.openBlock(),e.createElementBlock("span",g,e.toDisplayString(" ")+" "+e.toDisplayString(l.optionalFlag),1)):e.createCommentVNode("v-if",!0)]),l.$slots.description&&l.$slots.description().length>0?(e.openBlock(),e.createElementBlock("span",B,[e.renderSlot(l.$slots,"description")])):e.createCommentVNode("v-if",!0)],16)):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["cdx-label",l.rootClasses]),style:e.normalizeStyle(l.rootStyle)},[e.createElementVNode("label",e.mergeProps({class:"cdx-label__label",for:l.inputId?l.inputId:void 0},l.otherAttrs),[l.icon?(e.openBlock(),e.createBlock(o,{key:0,icon:l.icon,class:"cdx-label__label__icon"},null,8,["icon"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",m,[e.renderSlot(l.$slots,"default")]),l.optionalFlag?(e.openBlock(),e.createElementBlock("span",b,e.toDisplayString(" ")+" "+e.toDisplayString(l.optionalFlag),1)):e.createCommentVNode("v-if",!0)],16,_),l.$slots.description&&l.$slots.description().length>0?(e.openBlock(),e.createElementBlock("span",{key:0,id:l.descriptionId||void 0,class:"cdx-label__description"},[e.renderSlot(l.$slots,"description")],8,f)):e.createCommentVNode("v-if",!0)],6))}const S=p._export_sfc(u,[["render",C]]);module.exports=S;
+"use strict";const e=require("vue"),d=require("./Icon.js"),c=require("./useFieldData.cjs"),p=require("./useSplitAttributes.cjs"),u=require("./useI18n.cjs"),m=require("./_plugin-vue_export-helper.js"),_=e.defineComponent({name:"CdxLabel",components:{CdxIcon:d.CdxIcon},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(l,{attrs:t}){const{computedDisabled:n}=c(e.toRef(l,"disabled")),s=e.computed(()=>({"cdx-label--visually-hidden":l.visuallyHidden,"cdx-label--disabled":n.value})),{rootClasses:a,rootStyle:i,otherAttrs:o}=p(t,s),r=u("cdx-label-optional-flag",()=>l.optionalFlag||"(optional)");return{rootClasses:a,rootStyle:i,otherAttrs:o,translatedOptionalFlag:r}}}),b=["for"],f={class:"cdx-label__label__text"},y={key:1,class:"cdx-label__label__optional-flag"},g=["id"],k={class:"cdx-label__label"},B={class:"cdx-label__label__text"},C={key:1,class:"cdx-label__label__optional-flag"},S={key:0,class:"cdx-label__description"};function h(l,t,n,s,a,i){const o=e.resolveComponent("cdx-icon");return l.isLegend?(e.openBlock(),e.createElementBlock("legend",e.mergeProps({key:1,class:["cdx-label",l.rootClasses],style:l.rootStyle},l.otherAttrs),[e.createElementVNode("span",k,[l.icon?(e.openBlock(),e.createBlock(o,{key:0,icon:l.icon,class:"cdx-label__label__icon"},null,8,["icon"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",B,[e.renderSlot(l.$slots,"default")]),l.optionalFlag||l.optional?(e.openBlock(),e.createElementBlock("span",C,e.toDisplayString(" ")+" "+e.toDisplayString(l.translatedOptionalFlag),1)):e.createCommentVNode("v-if",!0)]),l.$slots.description&&l.$slots.description().length>0?(e.openBlock(),e.createElementBlock("span",S,[e.renderSlot(l.$slots,"description")])):e.createCommentVNode("v-if",!0)],16)):(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["cdx-label",l.rootClasses]),style:e.normalizeStyle(l.rootStyle)},[e.createElementVNode("label",e.mergeProps({class:"cdx-label__label",for:l.inputId?l.inputId:void 0},l.otherAttrs),[l.icon?(e.openBlock(),e.createBlock(o,{key:0,icon:l.icon,class:"cdx-label__label__icon"},null,8,["icon"])):e.createCommentVNode("v-if",!0),e.createElementVNode("span",f,[e.renderSlot(l.$slots,"default")]),l.optionalFlag||l.optional?(e.openBlock(),e.createElementBlock("span",y,e.toDisplayString(" ")+" "+e.toDisplayString(l.translatedOptionalFlag),1)):e.createCommentVNode("v-if",!0)],16,b),l.$slots.description&&l.$slots.description().length>0?(e.openBlock(),e.createElementBlock("span",{key:0,id:l.descriptionId||void 0,class:"cdx-label__description"},[e.renderSlot(l.$slots,"description")],8,g)):e.createCommentVNode("v-if",!0)],6))}const v=m._export_sfc(_,[["render",h]]);module.exports=v;
diff --git a/resources/lib/codex/modules/CdxMessage.cjs b/resources/lib/codex/modules/CdxMessage.cjs
index b12e533370d4..e5bb53e4068d 100644
--- a/resources/lib/codex/modules/CdxMessage.cjs
+++ b/resources/lib/codex/modules/CdxMessage.cjs
@@ -1 +1 @@
-"use strict";const s=require("vue"),t=require("./Icon.js"),m=require("./CdxButton.cjs"),f=require("./constants.js"),v=require("./_plugin-vue_export-helper.js"),p={notice:t.Y4,error:t.i4,warning:t.M3,success:t.O7},y=s.defineComponent({name:"CdxMessage",components:{CdxButton:m,CdxIcon:t.CdxIcon},props:{type:{type:String,default:"notice",validator:f.statusTypeValidator},inline:{type:Boolean,default:!1},icon:{type:[String,Object],default:null},fadeIn:{type:Boolean,default:!1},dismissButtonLabel:{type:String,default:""},autoDismiss:{type:[Boolean,Number],default:!1,validator:e=>typeof e=="boolean"||typeof e=="number"&&e>0}},emits:["user-dismissed","auto-dismissed"],setup(e,{emit:o}){const i=s.ref(!1),l=s.computed(()=>e.inline===!1&&e.dismissButtonLabel.length>0),c=s.computed(()=>e.autoDismiss===!1||e.type==="error"?!1:e.autoDismiss===!0?4e3:e.autoDismiss),d=s.computed(()=>({"cdx-message--inline":e.inline,"cdx-message--block":!e.inline,"cdx-message--user-dismissable":l.value,["cdx-message--".concat(e.type)]:!0})),n=s.computed(()=>e.icon&&e.type==="notice"?e.icon:p[e.type]),a=s.ref("");function r(u){i.value||(a.value=u==="user-dismissed"?"cdx-message-leave-active-user":"cdx-message-leave-active-system",i.value=!0,o(u))}return s.onMounted(()=>{e.type==="error"&&e.autoDismiss!==!1?s.warn('CdxMessage: Message with type="error" cannot use auto-dismiss'):c.value&&setTimeout(()=>r("auto-dismissed"),c.value)}),{dismissed:i,userDismissable:l,rootClasses:d,leaveActiveClass:a,computedIcon:n,onDismiss:r,cdxIconClose:t.X3}}}),g=["aria-live","role"],C={class:"cdx-message__content"};function b(e,o,i,l,c,d){const n=s.resolveComponent("cdx-icon"),a=s.resolveComponent("cdx-button");return s.openBlock(),s.createBlock(s.Transition,{name:"cdx-message",appear:e.fadeIn,"leave-active-class":e.leaveActiveClass},{default:s.withCtx(()=>[e.dismissed?s.createCommentVNode("v-if",!0):(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass(["cdx-message",e.rootClasses]),"aria-live":e.type!=="error"?"polite":void 0,role:e.type==="error"?"alert":void 0},[s.createVNode(n,{class:"cdx-message__icon--vue",icon:e.computedIcon},null,8,["icon"]),s.createElementVNode("div",C,[s.renderSlot(e.$slots,"default")]),e.userDismissable?(s.openBlock(),s.createBlock(a,{key:0,class:"cdx-message__dismiss-button",weight:"quiet",type:"button","aria-label":e.dismissButtonLabel,onClick:o[0]||(o[0]=r=>e.onDismiss("user-dismissed"))},{default:s.withCtx(()=>[s.createVNode(n,{icon:e.cdxIconClose,"icon-label":e.dismissButtonLabel},null,8,["icon","icon-label"])]),_:1},8,["aria-label"])):s.createCommentVNode("v-if",!0)],10,g))]),_:3},8,["appear","leave-active-class"])}const x=v._export_sfc(y,[["render",b]]);module.exports=x;
+"use strict";const s=require("vue"),t=require("./Icon.js"),f=require("./CdxButton.cjs"),v=require("./constants.js"),y=require("./useI18n.cjs"),g=require("./_plugin-vue_export-helper.js"),C={notice:t.Y4,error:t.i4,warning:t.M3,success:t.O7},p=s.defineComponent({name:"CdxMessage",components:{CdxButton:f,CdxIcon:t.CdxIcon},props:{type:{type:String,default:"notice",validator:v.statusTypeValidator},inline:{type:Boolean,default:!1},icon:{type:[String,Object],default:null},fadeIn:{type:Boolean,default:!1},allowUserDismiss:{type:Boolean,default:!1},dismissButtonLabel:{type:String,default:""},autoDismiss:{type:[Boolean,Number],default:!1,validator:e=>typeof e=="boolean"||typeof e=="number"&&e>0}},emits:["user-dismissed","auto-dismissed"],setup(e,{emit:o}){const i=s.ref(!1),a=s.computed(()=>e.inline===!1&&(e.dismissButtonLabel.length>0||e.allowUserDismiss)),d=y("cdx-message-dismiss-button-label",()=>e.dismissButtonLabel||"Close"),l=s.computed(()=>e.autoDismiss===!1||e.type==="error"?!1:e.autoDismiss===!0?4e3:e.autoDismiss),n=s.computed(()=>({"cdx-message--inline":e.inline,"cdx-message--block":!e.inline,"cdx-message--user-dismissable":a.value,["cdx-message--".concat(e.type)]:!0})),c=s.computed(()=>e.icon&&e.type==="notice"?e.icon:C[e.type]),r=s.ref("");function u(m){i.value||(r.value=m==="user-dismissed"?"cdx-message-leave-active-user":"cdx-message-leave-active-system",i.value=!0,o(m))}return s.onMounted(()=>{e.type==="error"&&e.autoDismiss!==!1?s.warn('CdxMessage: Message with type="error" cannot use auto-dismiss'):l.value&&setTimeout(()=>u("auto-dismissed"),l.value)}),{dismissed:i,userDismissable:a,translatedDismissButtonLabel:d,rootClasses:n,leaveActiveClass:r,computedIcon:c,onDismiss:u,cdxIconClose:t.X3}}}),b=["aria-live","role"],x={class:"cdx-message__content"};function B(e,o,i,a,d,l){const n=s.resolveComponent("cdx-icon"),c=s.resolveComponent("cdx-button");return s.openBlock(),s.createBlock(s.Transition,{name:"cdx-message",appear:e.fadeIn,"leave-active-class":e.leaveActiveClass},{default:s.withCtx(()=>[e.dismissed?s.createCommentVNode("v-if",!0):(s.openBlock(),s.createElementBlock("div",{key:0,class:s.normalizeClass(["cdx-message",e.rootClasses]),"aria-live":e.type!=="error"?"polite":void 0,role:e.type==="error"?"alert":void 0},[s.createVNode(n,{class:"cdx-message__icon--vue",icon:e.computedIcon},null,8,["icon"]),s.createElementVNode("div",x,[s.renderSlot(e.$slots,"default")]),e.userDismissable?(s.openBlock(),s.createBlock(c,{key:0,class:"cdx-message__dismiss-button",weight:"quiet",type:"button","aria-label":e.translatedDismissButtonLabel,onClick:o[0]||(o[0]=r=>e.onDismiss("user-dismissed"))},{default:s.withCtx(()=>[s.createVNode(n,{icon:e.cdxIconClose},null,8,["icon"])]),_:1},8,["aria-label"])):s.createCommentVNode("v-if",!0)],10,b))]),_:3},8,["appear","leave-active-class"])}const _=g._export_sfc(p,[["render",B]]);module.exports=_;
diff --git a/resources/lib/codex/modules/CdxSearchInput.cjs b/resources/lib/codex/modules/CdxSearchInput.cjs
index 1d3b7e36d27a..8918379a9fc7 100644
--- a/resources/lib/codex/modules/CdxSearchInput.cjs
+++ b/resources/lib/codex/modules/CdxSearchInput.cjs
@@ -1 +1 @@
-"use strict";const t=require("vue"),p=require("./Icon.js"),c=require("./CdxButton.cjs"),m=require("./CdxTextInput.cjs"),b=require("./useModelWrapper.cjs"),f=require("./useSplitAttributes.cjs"),h=require("./useFieldData.cjs"),i=require("./constants.js"),C=require("./_plugin-vue_export-helper.js"),S=i.makeStringTypeValidator(i.ValidationStatusTypes),y=t.defineComponent({name:"CdxSearchInput",components:{CdxButton:c,CdxTextInput:m},inheritAttrs:!1,props:{modelValue:{type:[String,Number],default:""},buttonLabel:{type:String,default:""},disabled:{type:Boolean,default:!1},status:{type:String,default:"default",validator:S}},emits:["update:modelValue","submit-click","input","change","focus","blur"],setup(e,{emit:o,attrs:a}){const s=b(t.toRef(e,"modelValue"),o),{computedDisabled:l}=h(t.toRef(e,"disabled")),d=t.computed(()=>({"cdx-search-input--has-end-button":!!e.buttonLabel})),{rootClasses:r,rootStyle:u,otherAttrs:n}=f(a,d);return{wrappedModel:s,computedDisabled:l,rootClasses:r,rootStyle:u,otherAttrs:n,handleSubmit:()=>{o("submit-click",s.value)},searchIcon:p.A7}},methods:{focus(){this.$refs.textInput.focus()}}}),V={class:"cdx-search-input__input-wrapper"};function I(e,o,a,s,l,d){const r=t.resolveComponent("cdx-text-input"),u=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-search-input",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("div",V,[t.createVNode(r,t.mergeProps({ref:"textInput",modelValue:e.wrappedModel,"onUpdate:modelValue":o[0]||(o[0]=n=>e.wrappedModel=n),class:"cdx-search-input__text-input","input-type":"search","start-icon":e.searchIcon,disabled:e.computedDisabled,status:e.status},e.otherAttrs,{onKeydown:t.withKeys(e.handleSubmit,["enter"]),onInput:o[1]||(o[1]=n=>e.$emit("input",n)),onChange:o[2]||(o[2]=n=>e.$emit("change",n)),onFocus:o[3]||(o[3]=n=>e.$emit("focus",n)),onBlur:o[4]||(o[4]=n=>e.$emit("blur",n))}),null,16,["modelValue","start-icon","disabled","status","onKeydown"]),t.renderSlot(e.$slots,"default")]),e.buttonLabel?(t.openBlock(),t.createBlock(u,{key:0,class:"cdx-search-input__end-button",disabled:e.computedDisabled,onClick:e.handleSubmit},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.buttonLabel),1)]),_:1},8,["disabled","onClick"])):t.createCommentVNode("v-if",!0)],6)}const g=C._export_sfc(y,[["render",I]]);module.exports=g;
+"use strict";const t=require("vue"),m=require("./Icon.js"),b=require("./CdxButton.cjs"),f=require("./CdxTextInput.cjs"),h=require("./useModelWrapper.cjs"),S=require("./useSplitAttributes.cjs"),y=require("./useFieldData.cjs"),C=require("./useI18n.cjs"),i=require("./constants.js"),B=require("./_plugin-vue_export-helper.js"),V=i.makeStringTypeValidator(i.ValidationStatusTypes),I=t.defineComponent({name:"CdxSearchInput",components:{CdxButton:b,CdxTextInput:f},inheritAttrs:!1,props:{modelValue:{type:[String,Number],default:""},useButton:{type:Boolean,default:!1},buttonLabel:{type:String,default:""},disabled:{type:Boolean,default:!1},status:{type:String,default:"default",validator:V}},emits:["update:modelValue","submit-click","input","change","focus","blur"],setup(e,{emit:n,attrs:r}){const s=h(t.toRef(e,"modelValue"),n),{computedDisabled:l}=y(t.toRef(e,"disabled")),d=t.computed(()=>({"cdx-search-input--has-end-button":!!e.buttonLabel||e.useButton})),{rootClasses:u,rootStyle:a,otherAttrs:o}=S(r,d),c=C("cdx-search-input-search-button-label",()=>e.buttonLabel||"Search"),p=t.computed(()=>e.useButton||e.buttonLabel.length>0);return{wrappedModel:s,computedDisabled:l,rootClasses:u,rootStyle:a,otherAttrs:o,handleSubmit:()=>{n("submit-click",s.value)},searchIcon:m.A7,translatedSearchButtonLabel:c,useButtonOrLabel:p}},methods:{focus(){this.$refs.textInput.focus()}}}),g={class:"cdx-search-input__input-wrapper"};function x(e,n,r,s,l,d){const u=t.resolveComponent("cdx-text-input"),a=t.resolveComponent("cdx-button");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-search-input",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("div",g,[t.createVNode(u,t.mergeProps({ref:"textInput",modelValue:e.wrappedModel,"onUpdate:modelValue":n[0]||(n[0]=o=>e.wrappedModel=o),class:"cdx-search-input__text-input","input-type":"search","start-icon":e.searchIcon,disabled:e.computedDisabled,status:e.status},e.otherAttrs,{onKeydown:t.withKeys(e.handleSubmit,["enter"]),onInput:n[1]||(n[1]=o=>e.$emit("input",o)),onChange:n[2]||(n[2]=o=>e.$emit("change",o)),onFocus:n[3]||(n[3]=o=>e.$emit("focus",o)),onBlur:n[4]||(n[4]=o=>e.$emit("blur",o))}),null,16,["modelValue","start-icon","disabled","status","onKeydown"]),t.renderSlot(e.$slots,"default")]),e.useButtonOrLabel?(t.openBlock(),t.createBlock(a,{key:0,class:"cdx-search-input__end-button",disabled:e.computedDisabled,onClick:e.handleSubmit},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.translatedSearchButtonLabel),1)]),_:1},8,["disabled","onClick"])):t.createCommentVNode("v-if",!0)],6)}const k=B._export_sfc(I,[["render",x]]);module.exports=k;
diff --git a/resources/lib/codex/modules/CdxTable.cjs b/resources/lib/codex/modules/CdxTable.cjs
index 7800964ef236..ac38cd644cb0 100644
--- a/resources/lib/codex/modules/CdxTable.cjs
+++ b/resources/lib/codex/modules/CdxTable.cjs
@@ -1 +1 @@
-"use strict";const e=require("vue"),h=require("./constants.js"),V=require("./useModelWrapper.cjs"),E=require("./CdxCheckbox.cjs"),p=require("./Icon.js"),R=require("./_plugin-vue_export-helper.js"),N=h.makeStringTypeValidator(h.TableTextAlignments),$={none:p.T7,asc:p.x8,desc:p.l4},A={none:"none",asc:"ascending",desc:"descending"},T=e.defineComponent({name:"CdxTable",components:{CdxCheckbox:E,CdxIcon:p.CdxIcon},props:{caption:{type:String,required:!0},hideCaption:{type:Boolean,default:!1},columns:{type:Array,default:()=>[],validator:t=>{const a=t.map(c=>c.id);return new Set(a).size===a.length?!0:(console.warn('Each column in the "columns" prop of CdxTable must have a unique "id".'),!1)}},data:{type:Array,default:()=>[],validator:(t,a)=>{if(!Array.isArray(a.columns)||a.columns.length===0||t.length===0)return!0;const i=a.columns.some(d=>"allowSort"in d),c=t.every(d=>h.TableRowIdentifier in d);return i&&a.useRowSelection&&!c?(console.warn('For CdxTables with sorting and row selection, each row in the "data" prop must have a "TableRowIdentifier".'),!1):!0}},useRowHeaders:{type:Boolean,default:!1},showVerticalBorders:{type:Boolean,default:!1},useRowSelection:{type:Boolean,default:!1},selectedRows:{type:Array,default:()=>[]},selectAllLabel:{type:String,default:"Select all rows"},selectRowLabel:{type:Function,default:(t,a)=>"Select row ".concat(t," of ").concat(a)},sort:{type:Object,default:()=>({})},sortCaption:{type:String,default:", column headers with buttons are sortable."}},emits:["update:selectedRows","update:sort"],setup(t,{emit:a}){const i=V(e.toRef(t,"selectedRows"),a,"update:selectedRows"),c=e.ref(t.data.length===i.value.length),d=e.ref(!1),g=e.computed(()=>Object.keys(t.sort)[0]),f=e.computed(()=>t.columns.some(o=>o.allowSort)),b=e.computed(()=>{var n;return{"cdx-table__table--layout-fixed":(n=t.columns)==null?void 0:n.some(r=>"width"in r||"minWidth"in r),"cdx-table__table--borders-vertical":t.showVerticalBorders}});function l(o,n){return h.TableRowIdentifier in o?o[h.TableRowIdentifier]:n}function u(o,n){const r=l(o,n);return{"cdx-table__row--selected":i.value.indexOf(r)!==-1}}function s(o){const n=t.columns[0].id;if(t.useRowHeaders===!0&&o===n)return"row"}function y(o){const n=t.columns[0].id;return t.useRowHeaders&&o===n?"th":"td"}function k(o,n=!1){if("textAlign"in o&&!N(o.textAlign)){console.warn("Invalid value for TableColumn textAlign property.");return}return{["cdx-table__table__cell--align-".concat(o.textAlign)]:"textAlign"in o&&o.textAlign!=="start","cdx-table__table__cell--has-sort":n}}function S(o){const n={};return"width"in o&&(n.width=o.width),"minWidth"in o&&(n.minWidth=o.minWidth),n}function C(o){if(t.data.length===o.length){c.value=!0,d.value=!1;return}c.value=!1,t.data.length>o.length&&(d.value=!0),o.length===0&&(d.value=!1)}function w(o){d.value=!1,o?i.value=t.data.map((n,r)=>l(n,r)):i.value=[]}function _(o){var m;const n=(m=t.sort[o])!=null?m:"none";let r="asc";n==="asc"&&(r="desc"),n==="desc"&&(r="none"),a("update:sort",{[o]:r})}function v(o){var r;const n=(r=t.sort[o])!=null?r:"none";return $[n]}function B(o,n=!1){var r;if(n){const m=(r=t.sort[o])!=null?r:"none";return m==="none"?void 0:A[m]}}return{wrappedSelectedRows:i,selectAll:c,selectAllIndeterminate:d,activeSortColumn:g,hasSortableColumns:f,tableClasses:b,getRowKey:l,getRowClass:u,getRowHeaderScope:s,getCellElement:y,getCellClass:k,getCellStyle:S,handleRowSelection:C,handleSelectAll:w,handleSort:_,getSortIcon:v,getSortOrder:B}}}),I={class:"cdx-table",tabindex:"0"},q={key:0,class:"cdx-table__header"},D=["aria-hidden"],F={class:"cdx-table__header__content"},L={class:"cdx-table__table-wrapper"},O={key:0},z={key:0},H={key:0,class:"cdx-table__table__select-rows"},U=["aria-sort"],x=["aria-selected","onClick"],W={key:0},K={key:0},M={key:1},j={class:"cdx-table__table__empty-state"},G={class:"cdx-table__table__empty-state-content"},J={key:1,class:"cdx-table__footer"};function P(t,a,i,c,d,g){const f=e.resolveComponent("cdx-checkbox"),b=e.resolveComponent("cdx-icon");return e.openBlock(),e.createElementBlock("div",I,[!t.hideCaption||t.$slots.header&&t.$slots.header().length>0?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",{class:"cdx-table__header__caption","aria-hidden":t.$slots.header&&t.$slots.header().length>0?void 0:!0},[t.hideCaption?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(t.caption),1)],64))],8,D),e.createElementVNode("div",F,[e.renderSlot(t.$slots,"header")])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",L,[e.createElementVNode("table",{class:e.normalizeClass(["cdx-table__table",t.tableClasses])},[e.createElementVNode("caption",null,[e.createTextVNode(e.toDisplayString(t.caption)+" ",1),t.hasSortableColumns?(e.openBlock(),e.createElementBlock("span",O,e.toDisplayString(t.sortCaption),1)):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"thead",{},()=>[t.columns.length>0?(e.openBlock(),e.createElementBlock("thead",z,[e.createElementVNode("tr",null,[t.useRowSelection?(e.openBlock(),e.createElementBlock("th",H,[e.createVNode(f,{modelValue:t.selectAll,"onUpdate:modelValue":[a[0]||(a[0]=l=>t.selectAll=l),t.handleSelectAll],"hide-label":!0,indeterminate:t.selectAllIndeterminate},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.selectAllLabel),1)]),_:1},8,["modelValue","indeterminate","onUpdate:modelValue"])])):e.createCommentVNode("v-if",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,l=>(e.openBlock(),e.createElementBlock("th",{key:l.id,scope:"col",class:e.normalizeClass(t.getCellClass(l,l.allowSort)),"aria-sort":t.getSortOrder(l.id,l.allowSort),style:e.normalizeStyle(t.getCellStyle(l))},[l.allowSort?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-selected":l.id===t.activeSortColumn,class:"cdx-table__table__sort-button",onClick:u=>t.handleSort(l.id)},[e.createTextVNode(e.toDisplayString(l.label)+" ",1),e.createVNode(b,{icon:t.getSortIcon(l.id),size:"small",class:"cdx-table__table__sort-icon","aria-hidden":"true"},null,8,["icon"])],8,x)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(l.label),1)],64))],14,U))),128))])])):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"tbody",{},()=>[t.data.length>0?(e.openBlock(),e.createElementBlock("tbody",W,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(l,u)=>(e.openBlock(),e.createElementBlock("tr",{key:t.getRowKey(l,u),class:e.normalizeClass(t.getRowClass(l,u))},[t.useRowSelection?(e.openBlock(),e.createElementBlock("td",K,[e.createVNode(f,{modelValue:t.wrappedSelectedRows,"onUpdate:modelValue":[a[1]||(a[1]=s=>t.wrappedSelectedRows=s),t.handleRowSelection],"input-value":t.getRowKey(l,u),"hide-label":!0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.selectRowLabel(u+1,t.data.length)),1)]),_:2},1032,["modelValue","input-value","onUpdate:modelValue"])])):e.createCommentVNode("v-if",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,s=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.getCellElement(s.id)),{key:s.id,scope:t.getRowHeaderScope(s.id),class:e.normalizeClass(t.getCellClass(s))},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"item-"+s.id,{item:l[s.id],row:l},()=>[e.createTextVNode(e.toDisplayString(l[s.id]),1)])]),_:2},1032,["scope","class"]))),128))],2))),128))])):t.$slots["empty-state"]&&t.$slots["empty-state"]().length>0?(e.openBlock(),e.createElementBlock("tbody",M,[e.createElementVNode("tr",j,[e.createElementVNode("td",G,[e.renderSlot(t.$slots,"empty-state")])])])):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"tfoot")],2)]),t.$slots.footer&&t.$slots.footer().length>0?(e.openBlock(),e.createElementBlock("div",J,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0)])}const Q=R._export_sfc(T,[["render",P]]);module.exports=Q;
+"use strict";const e=require("vue"),h=require("./constants.js"),$=require("./useModelWrapper.cjs"),A=require("./CdxCheckbox.cjs"),p=require("./Icon.js"),y=require("./useI18n.cjs"),T=require("./_plugin-vue_export-helper.js"),I=h.makeStringTypeValidator(h.TableTextAlignments),q={none:p.T7,asc:p.x8,desc:p.l4},D={none:"none",asc:"ascending",desc:"descending"},F=e.defineComponent({name:"CdxTable",components:{CdxCheckbox:A,CdxIcon:p.CdxIcon},props:{caption:{type:String,required:!0},hideCaption:{type:Boolean,default:!1},columns:{type:Array,default:()=>[],validator:t=>{const r=t.map(c=>c.id);return new Set(r).size===r.length?!0:(console.warn('Each column in the "columns" prop of CdxTable must have a unique "id".'),!1)}},data:{type:Array,default:()=>[],validator:(t,r)=>{if(!Array.isArray(r.columns)||r.columns.length===0||t.length===0)return!0;const i=r.columns.some(d=>"allowSort"in d),c=t.every(d=>h.TableRowIdentifier in d);return i&&r.useRowSelection&&!c?(console.warn('For CdxTables with sorting and row selection, each row in the "data" prop must have a "TableRowIdentifier".'),!1):!0}},useRowHeaders:{type:Boolean,default:!1},showVerticalBorders:{type:Boolean,default:!1},useRowSelection:{type:Boolean,default:!1},selectedRows:{type:Array,default:()=>[]},sort:{type:Object,default:()=>({})}},emits:["update:selectedRows","update:sort"],setup(t,{emit:r}){const i=$(e.toRef(t,"selectedRows"),r,"update:selectedRows"),c=e.ref(t.data.length===i.value.length),d=e.ref(!1),k=e.computed(()=>Object.keys(t.sort)[0]),f=e.computed(()=>t.columns.some(l=>l.allowSort)),b=e.computed(()=>{var o;return{"cdx-table__table--layout-fixed":(o=t.columns)==null?void 0:o.some(a=>"width"in a||"minWidth"in a),"cdx-table__table--borders-vertical":t.showVerticalBorders}}),n=y("cdx-table-sort-caption",l=>"".concat(l,", column headers with buttons are sortable."),[e.toRef(t,"caption")]),u=(l,o)=>y("cdx-table-select-row-label",(a,m)=>"Select row ".concat(a," of ").concat(m),[l,o]).value,s=y("cdx-table-select-all-label","Select all rows");function g(l,o){return h.TableRowIdentifier in l?l[h.TableRowIdentifier]:o}function S(l,o){const a=g(l,o);return{"cdx-table__row--selected":i.value.indexOf(a)!==-1}}function C(l){const o=t.columns[0].id;if(t.useRowHeaders===!0&&l===o)return"row"}function w(l){const o=t.columns[0].id;return t.useRowHeaders&&l===o?"th":"td"}function v(l,o=!1){if("textAlign"in l&&!I(l.textAlign)){console.warn("Invalid value for TableColumn textAlign property.");return}return{["cdx-table__table__cell--align-".concat(l.textAlign)]:"textAlign"in l&&l.textAlign!=="start","cdx-table__table__cell--has-sort":o}}function B(l){const o={};return"width"in l&&(o.width=l.width),"minWidth"in l&&(o.minWidth=l.minWidth),o}function _(l){if(t.data.length===l.length){c.value=!0,d.value=!1;return}c.value=!1,t.data.length>l.length&&(d.value=!0),l.length===0&&(d.value=!1)}function V(l){d.value=!1,l?i.value=t.data.map((o,a)=>g(o,a)):i.value=[]}function E(l){var m;const o=(m=t.sort[l])!=null?m:"none";let a="asc";o==="asc"&&(a="desc"),o==="desc"&&(a="none"),r("update:sort",{[l]:a})}function R(l){var a;const o=(a=t.sort[l])!=null?a:"none";return q[o]}function N(l,o=!1){var a;if(o){const m=(a=t.sort[l])!=null?a:"none";return m==="none"?void 0:D[m]}}return{wrappedSelectedRows:i,selectAll:c,selectAllIndeterminate:d,activeSortColumn:k,hasSortableColumns:f,tableClasses:b,getRowKey:g,getRowClass:S,getRowHeaderScope:C,getCellElement:w,getCellClass:v,getCellStyle:B,handleRowSelection:_,handleSelectAll:V,handleSort:E,getSortIcon:R,getSortOrder:N,translatedSortCaption:n,translatedSelectRowLabel:u,translatedSelectAllLabel:s}}}),x={class:"cdx-table",tabindex:"0"},L={key:0,class:"cdx-table__header"},O=["aria-hidden"],z={class:"cdx-table__header__content"},H={class:"cdx-table__table-wrapper"},U={key:0},W={key:0,class:"cdx-table__table__select-rows"},K=["aria-sort"],M=["aria-selected","onClick"],j={key:0},G={key:0},J={key:1},P={class:"cdx-table__table__empty-state"},Q={class:"cdx-table__table__empty-state-content"},X={key:1,class:"cdx-table__footer"};function Y(t,r,i,c,d,k){const f=e.resolveComponent("cdx-checkbox"),b=e.resolveComponent("cdx-icon");return e.openBlock(),e.createElementBlock("div",x,[!t.hideCaption||t.$slots.header&&t.$slots.header().length>0?(e.openBlock(),e.createElementBlock("div",L,[e.createElementVNode("div",{class:"cdx-table__header__caption","aria-hidden":t.$slots.header&&t.$slots.header().length>0?void 0:!0},[t.hideCaption?e.createCommentVNode("v-if",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(t.caption),1)],64))],8,O),e.createElementVNode("div",z,[e.renderSlot(t.$slots,"header")])])):e.createCommentVNode("v-if",!0),e.createElementVNode("div",H,[e.createElementVNode("table",{class:e.normalizeClass(["cdx-table__table",t.tableClasses])},[e.createElementVNode("caption",null,[t.hasSortableColumns?(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(t.translatedSortCaption),1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(e.toDisplayString(t.caption),1)],64))]),e.renderSlot(t.$slots,"thead",{},()=>[t.columns.length>0?(e.openBlock(),e.createElementBlock("thead",U,[e.createElementVNode("tr",null,[t.useRowSelection?(e.openBlock(),e.createElementBlock("th",W,[e.createVNode(f,{modelValue:t.selectAll,"onUpdate:modelValue":[r[0]||(r[0]=n=>t.selectAll=n),t.handleSelectAll],"hide-label":!0,indeterminate:t.selectAllIndeterminate},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.translatedSelectAllLabel),1)]),_:1},8,["modelValue","indeterminate","onUpdate:modelValue"])])):e.createCommentVNode("v-if",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,n=>(e.openBlock(),e.createElementBlock("th",{key:n.id,scope:"col",class:e.normalizeClass(t.getCellClass(n,n.allowSort)),"aria-sort":t.getSortOrder(n.id,n.allowSort),style:e.normalizeStyle(t.getCellStyle(n))},[n.allowSort?(e.openBlock(),e.createElementBlock("button",{key:0,"aria-selected":n.id===t.activeSortColumn,class:"cdx-table__table__sort-button",onClick:u=>t.handleSort(n.id)},[e.createTextVNode(e.toDisplayString(n.label)+" ",1),e.createVNode(b,{icon:t.getSortIcon(n.id),size:"small",class:"cdx-table__table__sort-icon","aria-hidden":"true"},null,8,["icon"])],8,M)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(n.label),1)],64))],14,K))),128))])])):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"tbody",{},()=>[t.data.length>0?(e.openBlock(),e.createElementBlock("tbody",j,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.data,(n,u)=>(e.openBlock(),e.createElementBlock("tr",{key:t.getRowKey(n,u),class:e.normalizeClass(t.getRowClass(n,u))},[t.useRowSelection?(e.openBlock(),e.createElementBlock("td",G,[e.createVNode(f,{modelValue:t.wrappedSelectedRows,"onUpdate:modelValue":[r[1]||(r[1]=s=>t.wrappedSelectedRows=s),t.handleRowSelection],"input-value":t.getRowKey(n,u),"hide-label":!0},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(t.translatedSelectRowLabel(u+1,t.data.length)),1)]),_:2},1032,["modelValue","input-value","onUpdate:modelValue"])])):e.createCommentVNode("v-if",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.columns,s=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.getCellElement(s.id)),{key:s.id,scope:t.getRowHeaderScope(s.id),class:e.normalizeClass(t.getCellClass(s))},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"item-"+s.id,{item:n[s.id],row:n},()=>[e.createTextVNode(e.toDisplayString(n[s.id]),1)])]),_:2},1032,["scope","class"]))),128))],2))),128))])):t.$slots["empty-state"]&&t.$slots["empty-state"]().length>0?(e.openBlock(),e.createElementBlock("tbody",J,[e.createElementVNode("tr",P,[e.createElementVNode("td",Q,[e.renderSlot(t.$slots,"empty-state")])])])):e.createCommentVNode("v-if",!0)]),e.renderSlot(t.$slots,"tfoot")],2)]),t.$slots.footer&&t.$slots.footer().length>0?(e.openBlock(),e.createElementBlock("div",X,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("v-if",!0)])}const Z=T._export_sfc(F,[["render",Y]]);module.exports=Z;
diff --git a/resources/lib/codex/modules/CdxTypeaheadSearch.cjs b/resources/lib/codex/modules/CdxTypeaheadSearch.cjs
index 619ebe9c7f8d..1273b35ea3e6 100644
--- a/resources/lib/codex/modules/CdxTypeaheadSearch.cjs
+++ b/resources/lib/codex/modules/CdxTypeaheadSearch.cjs
@@ -1 +1 @@
-"use strict";var k=Object.getOwnPropertySymbols;var H=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable;var M=(e,o)=>{var r={};for(var s in e)H.call(e,s)&&o.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&k)for(var s of k(e))o.indexOf(s)<0&&O.call(e,s)&&(r[s]=e[s]);return r};const t=require("vue"),_=require("./Icon.js"),W=require("./CdxMenu.cjs"),G=require("./CdxSearchInput.cjs"),j=require("./useGeneratedId.cjs"),J=require("./useSplitAttributes.cjs"),h=require("./constants.js"),X=require("./_plugin-vue_export-helper.js"),Y=t.defineComponent({name:"CdxTypeaheadSearch",components:{CdxIcon:_.CdxIcon,CdxMenu:W,CdxSearchInput:G},inheritAttrs:!1,props:{id:{type:String,required:!0},formAction:{type:String,required:!0},searchResultsLabel:{type:String,required:!0},searchResults:{type:Array,required:!0},buttonLabel:{type:String,default:""},initialInputValue:{type:String,default:""},searchFooterUrl:{type:String,default:""},debounceInterval:{type:Number,default:h.DebounceInterval},highlightQuery:{type:Boolean,default:!1},showThumbnail:{type:Boolean,default:!1},autoExpandWidth:{type:Boolean,default:!1},visibleItemLimit:{type:Number,default:null}},emits:["input","search-result-click","submit","load-more"],setup(e,{attrs:o,emit:r,slots:s}){const S=t.ref(),i=t.ref(),C=j("typeahead-search-menu"),u=t.ref(!1),g=t.ref(!1),l=t.ref(!1),p=t.ref(!1),m=t.ref(e.initialInputValue),f=t.ref(""),N=t.computed(()=>{var a,n;return(n=(a=i.value)==null?void 0:a.getHighlightedMenuItem())==null?void 0:n.id}),y=t.ref(null),x=t.computed(()=>({"cdx-typeahead-search__menu-message--has-thumbnail":e.showThumbnail})),d=t.computed(()=>e.searchResults.find(a=>a.value===y.value)),F=t.computed(()=>e.searchFooterUrl?{value:h.MenuFooterValue,url:e.searchFooterUrl}:void 0),q=t.computed(()=>({"cdx-typeahead-search--show-thumbnail":e.showThumbnail,"cdx-typeahead-search--expanded":u.value,"cdx-typeahead-search--auto-expand-width":e.showThumbnail&&e.autoExpandWidth})),{rootClasses:U,rootStyle:E,otherAttrs:T}=J(o,q);function $(a){return a}const K=t.computed(()=>({visibleItemLimit:e.visibleItemLimit,showThumbnail:e.showThumbnail,boldLabel:!0,hideDescriptionOverflow:!0}));let b,v;function I(a,n=!1){d.value&&d.value.label!==a&&d.value.value!==a&&(y.value=null),v!==void 0&&(clearTimeout(v),v=void 0),a===""?u.value=!1:(g.value=!0,s["search-results-pending"]&&(v=setTimeout(()=>{p.value&&(u.value=!0),l.value=!0},h.PendingDelay))),b!==void 0&&(clearTimeout(b),b=void 0);const c=()=>{r("input",a)};n?c():b=setTimeout(()=>{c()},e.debounceInterval)}function B(a){var n;if(a===h.MenuFooterValue){y.value=null,m.value=f.value;return}y.value=a,a!==null&&(m.value=d.value?(n=d.value.label)!=null?n:String(d.value.value):"")}function A(){p.value=!0,(f.value||l.value)&&(u.value=!0)}function L(){p.value=!1,u.value=!1}function V(a){const w=a,{id:n}=w,c=M(w,["id"]);if(c.value===h.MenuFooterValue){r("search-result-click",{searchResult:null,index:e.searchResults.length,numberOfResults:e.searchResults.length});return}R(c)}function R(a){const n={searchResult:a,index:e.searchResults.findIndex(c=>c.value===a.value),numberOfResults:e.searchResults.length};r("search-result-click",n)}function Q(a){var n;if(a.value===h.MenuFooterValue){m.value=f.value;return}m.value=a.value?(n=a.label)!=null?n:String(a.value):""}function D(a){var n;u.value=!1,(n=i.value)==null||n.clearActive(),V(a)}function P(a){if(d.value)R(d.value),a.stopPropagation(),window.location.assign(d.value.url),a.preventDefault();else{const n={searchResult:null,index:-1,numberOfResults:e.searchResults.length};r("submit",n)}}function z(a){if(!i.value||!f.value||a.key===" ")return;const n=i.value.getHighlightedMenuItem(),c=i.value.getHighlightedViaKeyboard();switch(a.key){case"Enter":n&&(n.value===h.MenuFooterValue&&c?window.location.assign(e.searchFooterUrl):i.value.delegateKeyNavigation(a,{prevent:!1})),u.value=!1;break;case"Tab":u.value=!1;break;default:i.value.delegateKeyNavigation(a);break}}return t.onMounted(()=>{e.initialInputValue&&I(e.initialInputValue,!0)}),t.watch(t.toRef(e,"searchResults"),()=>{f.value=m.value.trim(),p.value&&g.value&&f.value.length>0&&(u.value=!0),v!==void 0&&(clearTimeout(v),v=void 0),g.value=!1,l.value=!1}),{form:S,menu:i,menuId:C,highlightedId:N,selection:y,menuMessageClass:x,footer:F,asSearchResult:$,inputValue:m,searchQuery:f,expanded:u,showPending:l,rootClasses:U,rootStyle:E,otherAttrs:T,menuConfig:K,onUpdateInputValue:I,onUpdateMenuSelection:B,onFocus:A,onBlur:L,onSearchResultClick:V,onSearchResultKeyboardNavigation:Q,onSearchFooterClick:D,onSubmit:P,onKeydown:z,MenuFooterValue:h.MenuFooterValue,articleIcon:_.S3}},methods:{focus(){this.$refs.searchInput.focus()}}}),Z=["id","action"],ee={class:"cdx-typeahead-search__menu-message__text"},te={class:"cdx-typeahead-search__menu-message__text"},ae=["href","onClickCapture"],ne={class:"cdx-menu-item__text cdx-typeahead-search__search-footer__text"},le={class:"cdx-typeahead-search__search-footer__query"};function oe(e,o,r,s,S,i){const C=t.resolveComponent("cdx-icon"),u=t.resolveComponent("cdx-menu"),g=t.resolveComponent("cdx-search-input");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-typeahead-search",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("form",{id:e.id,ref:"form",class:"cdx-typeahead-search__form",action:e.formAction,onSubmit:o[4]||(o[4]=(...l)=>e.onSubmit&&e.onSubmit(...l))},[t.createVNode(g,t.mergeProps({ref:"searchInput",modelValue:e.inputValue,"onUpdate:modelValue":o[3]||(o[3]=l=>e.inputValue=l),"button-label":e.buttonLabel},e.otherAttrs,{class:"cdx-typeahead-search__input",name:"search",role:"combobox",autocomplete:"off","aria-autocomplete":"list","aria-controls":e.menuId,"aria-expanded":e.expanded,"aria-activedescendant":e.highlightedId,"onUpdate:modelValue":e.onUpdateInputValue,onFocus:e.onFocus,onBlur:e.onBlur,onKeydown:e.onKeydown}),{default:t.withCtx(()=>[t.createVNode(u,t.mergeProps({id:e.menuId,ref:"menu",expanded:e.expanded,"onUpdate:expanded":o[0]||(o[0]=l=>e.expanded=l),class:"cdx-typeahead-search__menu","show-pending":e.showPending,selected:e.selection,"menu-items":e.searchResults,footer:e.footer,"search-query":e.highlightQuery?e.searchQuery:"","show-no-results-slot":e.searchQuery.length>0&&e.searchResults.length===0&&e.$slots["search-no-results-text"]&&e.$slots["search-no-results-text"]().length>0},e.menuConfig,{"aria-label":e.searchResultsLabel,"onUpdate:selected":e.onUpdateMenuSelection,onMenuItemClick:o[1]||(o[1]=l=>e.onSearchResultClick(e.asSearchResult(l))),onMenuItemKeyboardNavigation:e.onSearchResultKeyboardNavigation,onLoadMore:o[2]||(o[2]=l=>e.$emit("load-more"))}),{pending:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__menu-message",e.menuMessageClass])},[t.createElementVNode("span",ee,[t.renderSlot(e.$slots,"search-results-pending")])],2)]),"no-results":t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__menu-message",e.menuMessageClass])},[t.createElementVNode("span",te,[t.renderSlot(e.$slots,"search-no-results-text")])],2)]),default:t.withCtx(({menuItem:l,active:p})=>[l.value===e.MenuFooterValue?(t.openBlock(),t.createElementBlock("a",{key:0,class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__search-footer",{"cdx-typeahead-search__search-footer__active":p}]),href:e.asSearchResult(l).url,onClickCapture:t.withModifiers(m=>e.onSearchFooterClick(e.asSearchResult(l)),["stop"])},[t.createVNode(C,{class:"cdx-menu-item__thumbnail cdx-typeahead-search__search-footer__icon",icon:e.articleIcon},null,8,["icon"]),t.createElementVNode("span",ne,[t.renderSlot(e.$slots,"search-footer-text",{searchQuery:e.searchQuery},()=>[t.createElementVNode("strong",le,t.toDisplayString(e.searchQuery),1)])])],42,ae)):t.createCommentVNode("v-if",!0)]),_:3},16,["id","expanded","show-pending","selected","menu-items","footer","search-query","show-no-results-slot","aria-label","onUpdate:selected","onMenuItemKeyboardNavigation"])]),_:3},16,["modelValue","button-label","aria-controls","aria-expanded","aria-activedescendant","onUpdate:modelValue","onFocus","onBlur","onKeydown"]),t.renderSlot(e.$slots,"default")],40,Z)],6)}const se=X._export_sfc(Y,[["render",oe]]);module.exports=se;
+"use strict";var M=Object.getOwnPropertySymbols;var O=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var _=(e,o)=>{var r={};for(var s in e)O.call(e,s)&&o.indexOf(s)<0&&(r[s]=e[s]);if(e!=null&&M)for(var s of M(e))o.indexOf(s)<0&&W.call(e,s)&&(r[s]=e[s]);return r};const t=require("vue"),N=require("./Icon.js"),G=require("./CdxMenu.cjs"),j=require("./CdxSearchInput.cjs"),J=require("./useGeneratedId.cjs"),X=require("./useSplitAttributes.cjs"),Y=require("./useI18n.cjs"),h=require("./constants.js"),Z=require("./_plugin-vue_export-helper.js"),ee=t.defineComponent({name:"CdxTypeaheadSearch",components:{CdxIcon:N.CdxIcon,CdxMenu:G,CdxSearchInput:j},inheritAttrs:!1,props:{id:{type:String,required:!0},formAction:{type:String,required:!0},searchResults:{type:Array,required:!0},useButton:{type:Boolean,default:!1},buttonLabel:{type:String,default:""},initialInputValue:{type:String,default:""},searchFooterUrl:{type:String,default:""},debounceInterval:{type:Number,default:h.DebounceInterval},highlightQuery:{type:Boolean,default:!1},showThumbnail:{type:Boolean,default:!1},autoExpandWidth:{type:Boolean,default:!1},visibleItemLimit:{type:Number,default:null}},emits:["input","search-result-click","submit","load-more"],setup(e,{attrs:o,emit:r,slots:s}){const I=t.ref(),i=t.ref(),S=J("typeahead-search-menu"),C=Y("cdx-typeahead-search-search-results-label","Search results"),u=t.ref(!1),l=t.ref(!1),v=t.ref(!1),g=t.ref(!1),p=t.ref(e.initialInputValue),m=t.ref(""),x=t.computed(()=>{var a,n;return(n=(a=i.value)==null?void 0:a.getHighlightedMenuItem())==null?void 0:n.id}),y=t.ref(null),F=t.computed(()=>({"cdx-typeahead-search__menu-message--has-thumbnail":e.showThumbnail})),d=t.computed(()=>e.searchResults.find(a=>a.value===y.value)),q=t.computed(()=>e.searchFooterUrl?{value:h.MenuFooterValue,url:e.searchFooterUrl}:void 0),U=t.computed(()=>({"cdx-typeahead-search--show-thumbnail":e.showThumbnail,"cdx-typeahead-search--expanded":u.value,"cdx-typeahead-search--auto-expand-width":e.showThumbnail&&e.autoExpandWidth})),{rootClasses:B,rootStyle:E,otherAttrs:T}=X(o,U);function $(a){return a}const K=t.computed(()=>({visibleItemLimit:e.visibleItemLimit,showThumbnail:e.showThumbnail,boldLabel:!0,hideDescriptionOverflow:!0}));let b,f;function V(a,n=!1){d.value&&d.value.label!==a&&d.value.value!==a&&(y.value=null),f!==void 0&&(clearTimeout(f),f=void 0),a===""?u.value=!1:(l.value=!0,s["search-results-pending"]&&(f=setTimeout(()=>{g.value&&(u.value=!0),v.value=!0},h.PendingDelay))),b!==void 0&&(clearTimeout(b),b=void 0);const c=()=>{r("input",a)};n?c():b=setTimeout(()=>{c()},e.debounceInterval)}function A(a){var n;if(a===h.MenuFooterValue){y.value=null,p.value=m.value;return}y.value=a,a!==null&&(p.value=d.value?(n=d.value.label)!=null?n:String(d.value.value):"")}function L(){g.value=!0,(m.value||v.value)&&(u.value=!0)}function Q(){g.value=!1,u.value=!1}function R(a){const k=a,{id:n}=k,c=_(k,["id"]);if(c.value===h.MenuFooterValue){r("search-result-click",{searchResult:null,index:e.searchResults.length,numberOfResults:e.searchResults.length});return}w(c)}function w(a){const n={searchResult:a,index:e.searchResults.findIndex(c=>c.value===a.value),numberOfResults:e.searchResults.length};r("search-result-click",n)}function D(a){var n;if(a.value===h.MenuFooterValue){p.value=m.value;return}p.value=a.value?(n=a.label)!=null?n:String(a.value):""}function P(a){var n;u.value=!1,(n=i.value)==null||n.clearActive(),R(a)}function z(a){if(d.value)w(d.value),a.stopPropagation(),window.location.assign(d.value.url),a.preventDefault();else{const n={searchResult:null,index:-1,numberOfResults:e.searchResults.length};r("submit",n)}}function H(a){if(!i.value||!m.value||a.key===" ")return;const n=i.value.getHighlightedMenuItem(),c=i.value.getHighlightedViaKeyboard();switch(a.key){case"Enter":n&&(n.value===h.MenuFooterValue&&c?window.location.assign(e.searchFooterUrl):i.value.delegateKeyNavigation(a,{prevent:!1})),u.value=!1;break;case"Tab":u.value=!1;break;default:i.value.delegateKeyNavigation(a);break}}return t.onMounted(()=>{e.initialInputValue&&V(e.initialInputValue,!0)}),t.watch(t.toRef(e,"searchResults"),()=>{m.value=p.value.trim(),g.value&&l.value&&m.value.length>0&&(u.value=!0),f!==void 0&&(clearTimeout(f),f=void 0),l.value=!1,v.value=!1}),{form:I,menu:i,menuId:S,highlightedId:x,selection:y,menuMessageClass:F,footer:q,asSearchResult:$,inputValue:p,searchQuery:m,expanded:u,showPending:v,rootClasses:B,rootStyle:E,otherAttrs:T,menuConfig:K,onUpdateInputValue:V,onUpdateMenuSelection:A,onFocus:L,onBlur:Q,onSearchResultClick:R,onSearchResultKeyboardNavigation:D,onSearchFooterClick:P,onSubmit:z,onKeydown:H,MenuFooterValue:h.MenuFooterValue,articleIcon:N.S3,translatedSearchResultsLabel:C}},methods:{focus(){this.$refs.searchInput.focus()}}}),te=["id","action"],ae={class:"cdx-typeahead-search__menu-message__text"},ne={class:"cdx-typeahead-search__menu-message__text"},le=["href","onClickCapture"],oe={class:"cdx-menu-item__text cdx-typeahead-search__search-footer__text"},se={class:"cdx-typeahead-search__search-footer__query"};function ue(e,o,r,s,I,i){const S=t.resolveComponent("cdx-icon"),C=t.resolveComponent("cdx-menu"),u=t.resolveComponent("cdx-search-input");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["cdx-typeahead-search",e.rootClasses]),style:t.normalizeStyle(e.rootStyle)},[t.createElementVNode("form",{id:e.id,ref:"form",class:"cdx-typeahead-search__form",action:e.formAction,onSubmit:o[4]||(o[4]=(...l)=>e.onSubmit&&e.onSubmit(...l))},[t.createVNode(u,t.mergeProps({ref:"searchInput",modelValue:e.inputValue,"onUpdate:modelValue":o[3]||(o[3]=l=>e.inputValue=l),"button-label":e.buttonLabel,"use-button":e.useButton},e.otherAttrs,{class:"cdx-typeahead-search__input",name:"search",role:"combobox",autocomplete:"off","aria-autocomplete":"list","aria-controls":e.menuId,"aria-expanded":e.expanded,"aria-activedescendant":e.highlightedId,"onUpdate:modelValue":e.onUpdateInputValue,onFocus:e.onFocus,onBlur:e.onBlur,onKeydown:e.onKeydown}),{default:t.withCtx(()=>[t.createVNode(C,t.mergeProps({id:e.menuId,ref:"menu",expanded:e.expanded,"onUpdate:expanded":o[0]||(o[0]=l=>e.expanded=l),class:"cdx-typeahead-search__menu","show-pending":e.showPending,selected:e.selection,"menu-items":e.searchResults,footer:e.footer,"search-query":e.highlightQuery?e.searchQuery:"","show-no-results-slot":e.searchQuery.length>0&&e.searchResults.length===0&&e.$slots["search-no-results-text"]&&e.$slots["search-no-results-text"]().length>0},e.menuConfig,{"aria-label":e.translatedSearchResultsLabel,"onUpdate:selected":e.onUpdateMenuSelection,onMenuItemClick:o[1]||(o[1]=l=>e.onSearchResultClick(e.asSearchResult(l))),onMenuItemKeyboardNavigation:e.onSearchResultKeyboardNavigation,onLoadMore:o[2]||(o[2]=l=>e.$emit("load-more"))}),{pending:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__menu-message",e.menuMessageClass])},[t.createElementVNode("span",ae,[t.renderSlot(e.$slots,"search-results-pending")])],2)]),"no-results":t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__menu-message",e.menuMessageClass])},[t.createElementVNode("span",ne,[t.renderSlot(e.$slots,"search-no-results-text")])],2)]),default:t.withCtx(({menuItem:l,active:v})=>[l.value===e.MenuFooterValue?(t.openBlock(),t.createElementBlock("a",{key:0,class:t.normalizeClass(["cdx-menu-item__content cdx-typeahead-search__search-footer",{"cdx-typeahead-search__search-footer__active":v}]),href:e.asSearchResult(l).url,onClickCapture:t.withModifiers(g=>e.onSearchFooterClick(e.asSearchResult(l)),["stop"])},[t.createVNode(S,{class:"cdx-menu-item__thumbnail cdx-typeahead-search__search-footer__icon",icon:e.articleIcon},null,8,["icon"]),t.createElementVNode("span",oe,[t.renderSlot(e.$slots,"search-footer-text",{searchQuery:e.searchQuery},()=>[t.createElementVNode("strong",se,t.toDisplayString(e.searchQuery),1)])])],42,le)):t.createCommentVNode("v-if",!0)]),_:3},16,["id","expanded","show-pending","selected","menu-items","footer","search-query","show-no-results-slot","aria-label","onUpdate:selected","onMenuItemKeyboardNavigation"])]),_:3},16,["modelValue","button-label","use-button","aria-controls","aria-expanded","aria-activedescendant","onUpdate:modelValue","onFocus","onBlur","onKeydown"]),t.renderSlot(e.$slots,"default")],40,te)],6)}const re=Z._export_sfc(ee,[["render",ue]]);module.exports=re;
diff --git a/resources/lib/codex/modules/manifest-rtl.json b/resources/lib/codex/modules/manifest-rtl.json
index 85966cf3ecd4..864914b09200 100644
--- a/resources/lib/codex/modules/manifest-rtl.json
+++ b/resources/lib/codex/modules/manifest-rtl.json
@@ -131,6 +131,7 @@
"imports": [
"src/components/button/Button.vue",
"_Icon.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js",
"_constants.js",
"src/composables/useSplitAttributes.ts",
@@ -172,6 +173,7 @@
"src/components/button/Button.vue",
"_Icon.js",
"src/composables/useGeneratedId.ts",
+ "src/composables/useI18n.ts",
"src/composables/useResizeObserver.ts",
"__plugin-vue_export-helper.js"
],
@@ -229,6 +231,7 @@
"_Icon.js",
"src/composables/useFieldData.ts",
"src/composables/useSplitAttributes.ts",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -315,6 +318,7 @@
"_Icon.js",
"src/components/button/Button.vue",
"_constants.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -363,6 +367,7 @@
"src/composables/useModelWrapper.ts",
"src/composables/useSplitAttributes.ts",
"src/composables/useFieldData.ts",
+ "src/composables/useI18n.ts",
"_constants.js",
"__plugin-vue_export-helper.js"
],
@@ -425,6 +430,7 @@
"src/composables/useModelWrapper.ts",
"src/components/checkbox/Checkbox.vue",
"_Icon.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -570,6 +576,7 @@
"src/components/search-input/SearchInput.vue",
"src/composables/useGeneratedId.ts",
"src/composables/useSplitAttributes.ts",
+ "src/composables/useI18n.ts",
"_constants.js",
"__plugin-vue_export-helper.js"
],
@@ -626,6 +633,12 @@
"_constants.js"
]
},
+ "src/composables/useI18n.ts": {
+ "file": "useI18n.cjs",
+ "name": "useI18n",
+ "src": "src/composables/useI18n.ts",
+ "isEntry": true
+ },
"src/composables/useIntersectionObserver.ts": {
"file": "useIntersectionObserver.cjs",
"name": "useIntersectionObserver",
diff --git a/resources/lib/codex/modules/manifest.json b/resources/lib/codex/modules/manifest.json
index 5d5ed9300420..7f1593f6288e 100644
--- a/resources/lib/codex/modules/manifest.json
+++ b/resources/lib/codex/modules/manifest.json
@@ -131,6 +131,7 @@
"imports": [
"src/components/button/Button.vue",
"_Icon.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js",
"_constants.js",
"src/composables/useSplitAttributes.ts",
@@ -172,6 +173,7 @@
"src/components/button/Button.vue",
"_Icon.js",
"src/composables/useGeneratedId.ts",
+ "src/composables/useI18n.ts",
"src/composables/useResizeObserver.ts",
"__plugin-vue_export-helper.js"
],
@@ -229,6 +231,7 @@
"_Icon.js",
"src/composables/useFieldData.ts",
"src/composables/useSplitAttributes.ts",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -315,6 +318,7 @@
"_Icon.js",
"src/components/button/Button.vue",
"_constants.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -363,6 +367,7 @@
"src/composables/useModelWrapper.ts",
"src/composables/useSplitAttributes.ts",
"src/composables/useFieldData.ts",
+ "src/composables/useI18n.ts",
"_constants.js",
"__plugin-vue_export-helper.js"
],
@@ -425,6 +430,7 @@
"src/composables/useModelWrapper.ts",
"src/components/checkbox/Checkbox.vue",
"_Icon.js",
+ "src/composables/useI18n.ts",
"__plugin-vue_export-helper.js"
],
"css": [
@@ -570,6 +576,7 @@
"src/components/search-input/SearchInput.vue",
"src/composables/useGeneratedId.ts",
"src/composables/useSplitAttributes.ts",
+ "src/composables/useI18n.ts",
"_constants.js",
"__plugin-vue_export-helper.js"
],
@@ -626,6 +633,12 @@
"_constants.js"
]
},
+ "src/composables/useI18n.ts": {
+ "file": "useI18n.cjs",
+ "name": "useI18n",
+ "src": "src/composables/useI18n.ts",
+ "isEntry": true
+ },
"src/composables/useIntersectionObserver.ts": {
"file": "useIntersectionObserver.cjs",
"name": "useIntersectionObserver",
diff --git a/resources/lib/codex/modules/useI18n.cjs b/resources/lib/codex/modules/useI18n.cjs
new file mode 100644
index 000000000000..63bed45f5bd1
--- /dev/null
+++ b/resources/lib/codex/modules/useI18n.cjs
@@ -0,0 +1 @@
+"use strict";const o=require("vue");function i(e,n,u=[]){const r=o.inject("CdxI18nFunction",void 0);return o.computed(()=>{const c=u.map(o.unref),t=r==null?void 0:r(e,...c);return t!=null?t:typeof n=="function"?n(...c):n})}module.exports=i;