UNPKG

@wikimedia/codex

Version:

Codex Design System for Wikimedia

2 lines (1 loc) 23.1 kB
var ie=Object.getOwnPropertySymbols;var Ae=Object.prototype.hasOwnProperty,xe=Object.prototype.propertyIsEnumerable;var de=(e,t)=>{var s={};for(var n in e)Ae.call(e,n)&&t.indexOf(n)<0&&(s[n]=e[n]);if(e!=null&&ie)for(var n of ie(e))t.indexOf(n)<0&&xe.call(e,n)&&(s[n]=e[n]);return s};import{d as T,U as Be,a5 as _e,x as le,t as x,c as f,r as D,s as z,v as K,B as Q,V as re,_ as q,a as M,o as d,b as g,e as v,a6 as ue,b6 as Ve,f as O,a2 as Ne,w,g as S,k,n as B,C as G,O as Re,ad as Fe,G as Oe,P as ze,Q as Te,R as qe,S as Ue,aQ as Ke,ao as We,y as ce,i as $,D as H,E as oe,J as Ee,$ as je,A as He,p as V,q as C,aj as I,af as Qe,ag as Ge,b7 as Je,b8 as Xe,b3 as ne,z as Ye,b9 as Ze,ba as et,bb as tt,bc as at,bd as nt,F,m as se,h as st}from"./DemoBaseLayout.vue_vue_type_style_index_0_lang-Gun7AocI.js";import{C as lt}from"./Tooltip-CCipLun0.js";/* empty css */import{a as pe,u as be,g as ot}from"./useFloatingMenu-Bo0Whnuc.js";import{C as it}from"./Button-DppTSLoT.js";const dt=Q(re),rt=T({name:"CdxCheckbox",components:{CdxLabel:Be},props:{modelValue:{type:[Boolean,Array],default:!1},inputValue:{type:[String,Number,Boolean],default:!1},name:{type:String,default:null},disabled:{type:Boolean,default:!1},indeterminate:{type:Boolean,default:!1},inline:{type:Boolean,default:!1},hideLabel:{type:Boolean,default:!1},status:{type:String,default:"default",validator:dt}},emits:["update:modelValue"],setup(e,{emit:t,slots:s,attrs:n}){var y;_e((y=s.default)==null?void 0:y.call(s),n);const{computedDisabled:u,computedStatus:p}=le(x(e,"disabled"),x(e,"status")),c=f(()=>({"cdx-checkbox--inline":e.inline,["cdx-checkbox--status-".concat(p.value)]:!0})),r=f(()=>({"cdx-checkbox__custom-input--inline":e.inline})),l=D(),b=z(),o=z(),P=K(x(e,"modelValue"),t);return{rootClasses:c,computedDisabled:u,input:l,checkboxId:b,descriptionId:o,wrappedModel:P,customInputClasses:r}}}),ut={class:"cdx-checkbox__wrapper"},ct=["id","aria-describedby","value","name","disabled",".indeterminate"];function pt(e,t,s,n,u,p){const c=M("cdx-label");return d(),g("div",{class:B(["cdx-checkbox",e.rootClasses])},[v("div",ut,[ue(v("input",{id:e.checkboxId,ref:"input","onUpdate:modelValue":t[0]||(t[0]=r=>e.wrappedModel=r),class:"cdx-checkbox__input",type:"checkbox","aria-describedby":e.$slots.description&&e.$slots.description().length>0?e.descriptionId:void 0,value:e.inputValue,name:e.name,disabled:e.computedDisabled,".indeterminate":e.indeterminate},null,40,ct),[[Ve,e.wrappedModel]]),t[1]||(t[1]=v("span",{class:"cdx-checkbox__icon"},null,-1)),e.$slots.default&&e.$slots.default().length?(d(),O(c,{key:0,class:"cdx-checkbox__label","input-id":e.checkboxId,"description-id":e.$slots.description&&e.$slots.description().length>0?e.descriptionId:void 0,disabled:e.computedDisabled,"visually-hidden":e.hideLabel},Ne({default:w(()=>[S(e.$slots,"default")]),_:2},[e.$slots.description&&e.$slots.description().length>0?{name:"description",fn:w(()=>[S(e.$slots,"description")]),key:"0"}:void 0]),1032,["input-id","description-id","disabled","visually-hidden"])):k("v-if",!0)]),e.$slots["custom-input"]?(d(),g("div",{key:0,class:B(["cdx-checkbox__custom-input",e.customInputClasses])},[S(e.$slots,"custom-input")],2)):k("v-if",!0)],2)}const bt=q(rt,[["render",pt]]),gt={notice:ze,error:Te,warning:qe,success:Ue},ft=T({name:"CdxInfoChip",components:{CdxIcon:G},directives:{tooltip:lt},props:{status:{type:String,default:"notice",validator:Re},icon:{type:[String,Object],default:null}},setup(e,{slots:t}){const s=f(()=>({["cdx-info-chip--".concat(e.status)]:!0})),n=f(()=>e.status==="notice"?e.icon:gt[e.status]),u=D(),p=D(!1),c=f(()=>p.value&&u.value&&u.value.scrollWidth>u.value.clientWidth?Fe(t==null?void 0:t.default)[0]:null);return Oe(()=>{p.value=!0}),{rootClasses:s,computedIcon:n,tooltipContent:c,textElement:u}}}),mt={ref:"textElement",class:"cdx-info-chip__text"};function vt(e,t,s,n,u,p){const c=M("cdx-icon"),r=Ke("tooltip");return ue((d(),g("div",{class:B(["cdx-info-chip",e.rootClasses])},[e.computedIcon?(d(),O(c,{key:0,class:"cdx-info-chip__icon--vue",icon:e.computedIcon},null,8,["icon"])):k("v-if",!0),v("span",mt,[S(e.$slots,"default")],512)],2)),[[r,e.tooltipContent]])}const ga=q(ft,[["render",vt]]),ht=T({name:"CdxMenuButton",components:{CdxToggleButton:We,CdxMenu:pe},inheritAttrs:!1,props:{selected:{type:[String,Number,null],required:!0},menuItems:{type:Array,required:!0},menuConfig:{type:Object,default:()=>({})},disabled:{type:Boolean,default:!1},footer:{type:Object,default:null}},emits:["update:selected"],setup(e,{emit:t,attrs:s}){const n=D(),u=D(),p=x(e,"selected"),c=K(p,t,"update:selected"),r=D(!1),l=z(),b=z(),{computedDisabled:o}=le(x(e,"disabled")),{rootClasses:P,rootStyle:y,otherAttrs:L}=ce(s);function U(N){!n.value||o.value||e.menuItems.length===0||N.key===" "||n.value.delegateKeyNavigation(N)}return be(u,n,{useAvailableWidth:!0,placement:"bottom-start",offset:4}),{computedDisabled:o,expanded:r,menu:n,menuId:b,modelWrapper:c,onKeydown:U,toggle:u,toggleId:l,rootClasses:P,rootStyle:y,otherAttrs:L}}}),yt={class:"cdx-menu-button__menu-wrapper"};function $t(e,t,s,n,u,p){const c=M("cdx-toggle-button"),r=M("cdx-menu");return d(),g("div",{class:B(["cdx-menu-button",e.rootClasses]),style:oe(e.rootStyle)},[$(c,H({id:e.toggleId,ref:"toggle"},e.otherAttrs,{modelValue:e.expanded,"onUpdate:modelValue":t[0]||(t[0]=l=>e.expanded=l),disabled:e.computedDisabled,quiet:"","aria-haspopup":"menu","aria-controls":e.menuId,"aria-expanded":e.expanded,onBlur:t[1]||(t[1]=l=>e.expanded=!1),onKeydown:e.onKeydown}),{default:w(()=>[S(e.$slots,"default")]),_:3},16,["id","modelValue","disabled","aria-controls","aria-expanded","onKeydown"]),v("div",yt,[$(r,H({id:e.menuId,ref:"menu",selected:e.modelWrapper,"onUpdate:selected":t[2]||(t[2]=l=>e.modelWrapper=l),expanded:e.expanded,"onUpdate:expanded":t[3]||(t[3]=l=>e.expanded=l),"menu-items":e.menuItems},e.menuConfig,{role:"menu","aria-labelledby":e.toggleId,footer:e.footer}),{default:w(({menuItem:l})=>[S(e.$slots,"menu-item",{menuItem:l})]),_:3},16,["id","selected","expanded","menu-items","aria-labelledby","footer"])])],6)}const fa=q(ht,[["render",$t]]),St=Q(re),Ct=T({name:"CdxSelect",components:{CdxIcon:G,CdxMenu:pe},inheritAttrs:!1,props:{menuItems:{type:Array,required:!0},selected:{type:[String,Number,null],required:!0},defaultLabel:{type:String,default:""},disabled:{type:Boolean,default:!1},menuConfig:{type:Object,default:()=>({})},defaultIcon:{type:[String,Object],default:void 0},status:{type:String,default:"default",validator:St}},emits:["update:selected","load-more"],setup(e,{emit:t,attrs:s}){const n=D(),u=D(),p=Ee(je,void 0),c=z(),r=D(!1),l=s.id||z(),{computedDisabled:b,computedStatus:o,computedInputId:P}=le(x(e,"disabled"),x(e,"status"),l),y=K(x(e,"selected"),t,"update:selected"),L=f(()=>{var m;return(m=u.value)==null?void 0:m.getComputedMenuItems().find(A=>A.value===e.selected)}),U=f(()=>{var m;return L.value?(m=L.value.label)!=null?m:L.value.value:e.defaultLabel}),N=f(()=>{var m;if(e.defaultIcon&&!L.value)return e.defaultIcon;if((m=L.value)!=null&&m.icon)return L.value.icon}),J=f(()=>({"cdx-select-vue--enabled":!b.value,"cdx-select-vue--disabled":b.value,"cdx-select-vue--expanded":r.value,"cdx-select-vue--value-selected":!!L.value,"cdx-select-vue--no-selections":!L.value,"cdx-select-vue--has-start-icon":!!N.value,["cdx-select-vue--status-".concat(o.value)]:!0})),{rootClasses:W,rootStyle:E,otherAttrs:X}=ce(s,J),Y=f(()=>{const _=X.value,{id:m}=_;return de(_,["id"])}),Z=f(()=>{var m,A;return(A=(m=u.value)==null?void 0:m.getHighlightedMenuItem())==null?void 0:A.id});function ee(){r.value=!1}function j(){var m;b.value||(r.value=!r.value,(m=n.value)==null||m.focus())}function te(m){var A;b.value||(A=u.value)==null||A.delegateKeyNavigation(m,{characterNavigation:!0})}return be(n,u),{handle:n,menu:u,computedHandleId:P,descriptionId:p,menuId:c,modelWrapper:y,selectedMenuItem:L,highlightedId:Z,expanded:r,computedDisabled:b,onBlur:ee,currentLabel:U,rootClasses:W,rootStyle:E,otherAttrsMinusId:Y,onClick:j,onKeydown:te,startIcon:N,cdxIconExpand:He}}}),It=["aria-disabled"],wt=["id","aria-controls","aria-activedescendant","aria-expanded","aria-describedby"];function kt(e,t,s,n,u,p){const c=M("cdx-icon"),r=M("cdx-menu");return d(),g("div",{class:B(["cdx-select-vue",e.rootClasses]),style:oe(e.rootStyle),"aria-disabled":e.computedDisabled},[v("div",H({id:e.computedHandleId,ref:"handle",class:"cdx-select-vue__handle"},e.otherAttrsMinusId,{tabindex:"0",role:"combobox","aria-controls":e.menuId,"aria-activedescendant":e.highlightedId,"aria-expanded":e.expanded,"aria-describedby":e.descriptionId,onClick:t[0]||(t[0]=(...l)=>e.onClick&&e.onClick(...l)),onBlur:t[1]||(t[1]=(...l)=>e.onBlur&&e.onBlur(...l)),onKeydown:t[2]||(t[2]=(...l)=>e.onKeydown&&e.onKeydown(...l))}),[S(e.$slots,"label",{selectedMenuItem:e.selectedMenuItem,defaultLabel:e.defaultLabel},()=>[V(C(e.currentLabel),1)]),e.startIcon?(d(),O(c,{key:0,icon:e.startIcon,class:"cdx-select-vue__start-icon"},null,8,["icon"])):k("v-if",!0),$(c,{icon:e.cdxIconExpand,class:"cdx-select-vue__indicator"},null,8,["icon"])],16,wt),$(r,H({id:e.menuId,ref:"menu",selected:e.modelWrapper,"onUpdate:selected":t[3]||(t[3]=l=>e.modelWrapper=l),expanded:e.expanded,"onUpdate:expanded":t[4]||(t[4]=l=>e.expanded=l),"menu-items":e.menuItems},e.menuConfig,{onLoadMore:t[5]||(t[5]=l=>e.$emit("load-more"))}),{default:w(({menuItem:l})=>[S(e.$slots,"menu-item",{menuItem:l})]),_:3},16,["id","selected","expanded","menu-items"])],14,It)}const Pt=q(Ct,[["render",kt]]),Lt=T({name:"CdxTablePager",components:{CdxButton:it,CdxIcon:G,CdxSelect:Pt},props:{paginationSizeOptions:{type:Array,required:!0},itemsPerPage:{type:Number,required:!0},nextDisabled:{type:Boolean,default:!1},prevDisabled:{type:Boolean,default:!1},lastDisabled:{type:Boolean,default:!1}},emits:["update:itemsPerPage","first","last","next","prev"],setup(e,{emit:t}){const s=K(x(e,"itemsPerPage"),t,"update:itemsPerPage"),n=I("cdx-table-pager-items-per-page-default","Results per page"),u=I("cdx-table-pager-items-per-page-current",b=>"".concat(b," rows"),[s]),p=I("cdx-table-pager-button-first-page","First page"),c=I("cdx-table-pager-button-next-page","Next page"),r=I("cdx-table-pager-button-prev-page","Previous page"),l=I("cdx-table-pager-button-last-page","Last page");return{defaultItemsPerPageLabel:n,currentItemsPerPageLabel:u,btnLabelFirst:p,btnLabelNext:c,btnLabelPrev:r,btnLabelLast:l,wrappedItemsPerPage:s,cdxIconPrevious:Qe,cdxIconNext:Ge,cdxIconMoveFirst:Je,cdxIconMoveLast:Xe}}}),Dt={class:"cdx-table-pager"},Mt={class:"cdx-table-pager__start"},At={key:0},xt={key:1},Bt={class:"cdx-table-pager__center"},_t={class:"cdx-table-pager__end"};function Vt(e,t,s,n,u,p){const c=M("cdx-select"),r=M("cdx-icon"),l=M("cdx-button");return d(),g("div",Dt,[v("div",Mt,[$(c,{selected:e.wrappedItemsPerPage,"onUpdate:selected":t[0]||(t[0]=b=>e.wrappedItemsPerPage=b),"default-label":e.defaultItemsPerPageLabel,"menu-items":e.paginationSizeOptions},{label:w(({selectedMenuItem:b,defaultLabel:o})=>[b?(d(),g("span",At,[v("span",null,C(e.currentItemsPerPageLabel),1)])):(d(),g("span",xt,C(o),1))]),_:1},8,["selected","default-label","menu-items"])]),v("div",Bt,[S(e.$slots,"default")]),v("div",_t,[$(l,{disabled:e.prevDisabled,class:"cdx-table-pager__button-first",weight:"quiet","aria-label":e.btnLabelFirst,onClick:t[1]||(t[1]=b=>e.$emit("first"))},{default:w(()=>[$(r,{icon:e.cdxIconMoveFirst},null,8,["icon"])]),_:1},8,["disabled","aria-label"]),$(l,{disabled:e.prevDisabled,class:"cdx-table-pager__button-prev",weight:"quiet","aria-label":e.btnLabelPrev,onClick:t[2]||(t[2]=b=>e.$emit("prev"))},{default:w(()=>[$(r,{icon:e.cdxIconPrevious},null,8,["icon"])]),_:1},8,["disabled","aria-label"]),$(l,{disabled:e.nextDisabled,class:"cdx-table-pager__button-next",weight:"quiet","aria-label":e.btnLabelNext,onClick:t[3]||(t[3]=b=>e.$emit("next"))},{default:w(()=>[$(r,{icon:e.cdxIconNext},null,8,["icon"])]),_:1},8,["disabled","aria-label"]),$(l,{disabled:e.nextDisabled||e.lastDisabled,class:"cdx-table-pager__button-last",weight:"quiet","aria-label":e.btnLabelLast,onClick:t[4]||(t[4]=b=>e.$emit("last"))},{default:w(()=>[$(r,{icon:e.cdxIconMoveLast},null,8,["icon"])]),_:1},8,["disabled","aria-label"])])])}const Nt=q(Lt,[["render",Vt]]),Rt=Q(et),Ft=Q(Ze),Ot={none:tt,asc:at,desc:nt},zt={none:"none",asc:"ascending",desc:"descending"},Tt=T({name:"CdxTable",components:{CdxCheckbox:bt,CdxIcon:G,CdxTablePager:Nt,CdxProgressBar:ot},props:{caption:{type:String,required:!0},hideCaption:{type:Boolean,default:!1},columns:{type:Array,default:()=>[],validator:e=>{const t=e.map(n=>n.id);return new Set(t).size===t.length?!0:(console.warn('[CdxTable]: Each column in the "columns" prop must have a unique "id".'),!1)}},data:{type:Array,default:()=>[],validator:(e,t)=>{if(!Array.isArray(t.columns)||t.columns.length===0||e.length===0)return!0;const s=t.columns.some(u=>"allowSort"in u),n=e.every(u=>ne in u);return s&&t.useRowSelection&&!n?(console.warn('[CdxTable]: 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:()=>({})},pending:{type:Boolean,default:!1},paginate:{type:Boolean,default:!1},serverPagination:{type:Boolean,default:!1},totalRows:{type:Number,default:NaN},paginationPosition:{type:String,default:"bottom",validator:Ft},paginationSizeOptions:{type:Array,default:()=>[{value:10},{value:20},{value:50}],validator:e=>{const t=s=>typeof s.value=="number";return e.every(t)?!0:(console.warn('[CdxTable]: "value" property of all menu items in PaginationOptions must be a number.'),!1)}},paginationSizeDefault:{type:Number,default:e=>e.paginate&&e.serverPagination?e.data.length:e.paginationSizeOptions[0].value}},emits:["update:selectedRows","update:sort","load-more","last"],setup(e,{emit:t}){const s=D(0),n=D(e.paginationSizeDefault),u=f(()=>e.serverPagination&&e.paginate?e.data:e.paginate?e.data.slice(s.value,n.value+s.value):e.data),p=f(()=>{var a;return e.serverPagination?(a=e.totalRows)!=null?a:NaN:e.data.length}),c=f(()=>isNaN(p.value)),r=f(()=>u.value.length),l=f(()=>s.value+1),b=f(()=>s.value+r.value),o=f(()=>c.value),P=f(()=>s.value<=0),y=f(()=>c.value?r.value<n.value:s.value+n.value>=p.value),L=I("cdx-table-pagination-status-message-determinate-short",(a,i,h)=>"".concat(a,"–").concat(i," of ").concat(h),[l,b,p]),U=I("cdx-table-pagination-status-message-determinate-long",(a,i,h)=>"Showing results ".concat(a,"–").concat(i," of ").concat(h),[l,b,p]),N=I("cdx-table-pagination-status-message-indeterminate-short",(a,i)=>"".concat(a,"–").concat(i," of many"),[l,b]),J=I("cdx-table-pagination-status-message-indeterminate-long",(a,i)=>"Showing results ".concat(a,"–").concat(i," of many"),[l,b]),W=I("cdx-table-pagination-status-message-indeterminate-final",a=>"Showing the last ".concat(a," results"),[r]),E=I("cdx-table-pagination-status-message-pending","Loading results..."),X=f(()=>e.pending?E.value:c.value&&y.value?W.value:c.value?N.value:L.value),Y=f(()=>e.pending?E.value:c.value&&y.value?W.value:c.value?J.value:U.value);function Z(){s.value+=n.value,e.serverPagination&&t("load-more",s.value,n.value)}function ee(){s.value-n.value<1?j():(s.value-=n.value,e.serverPagination&&t("load-more",s.value,n.value))}function j(){s.value=0,e.serverPagination&&t("load-more",s.value,n.value)}function te(){p.value%n.value===0?(s.value=p.value-n.value,t("load-more",s.value,n.value)):(s.value=Math.floor(p.value/n.value)*n.value,t("load-more",s.value,n.value))}Ye(n,a=>{e.serverPagination&&t("load-more",s.value,a)});const m=K(x(e,"selectedRows"),t,"update:selectedRows"),A=D(p.value===m.value.length),_=D(!1),ge=f(()=>Object.keys(e.sort)[0]),fe=f(()=>e.columns.some(a=>a.allowSort)),me=f(()=>{var i;return{"cdx-table__table--layout-fixed":(i=e.columns)==null?void 0:i.some(h=>"width"in h||"minWidth"in h),"cdx-table__table--borders-vertical":e.showVerticalBorders}}),ve=I("cdx-table-sort-caption",a=>"".concat(a," (column headers with buttons are sortable)."),[x(e,"caption")]),he=(a,i)=>I("cdx-table-select-row-label",(h,R)=>"Select row ".concat(h," of ").concat(R),[()=>a,()=>i]).value,ye=I("cdx-table-select-all-label","Select all rows");function ae(a,i){return ne in a?a[ne]:i}function $e(a,i){const h=ae(a,i);return{"cdx-table__row--selected":m.value.includes(h)}}function Se(a){const i=e.columns[0].id;if(e.useRowHeaders&&a===i)return"row"}function Ce(a){const i=e.columns[0].id;return e.useRowHeaders&&a===i?"th":"td"}function Ie(a,i=!1){if("textAlign"in a&&!Rt(a.textAlign)){console.warn('[CdxTable]: Invalid value for TableColumn "textAlign" property.');return}return{["cdx-table__table__cell--align-".concat(a.textAlign)]:"textAlign"in a&&a.textAlign!=="start","cdx-table__table__cell--has-sort":i}}function we(a){const i={};return"width"in a&&(i.width=a.width),"minWidth"in a&&(i.minWidth=a.minWidth),i}function ke(a){if(p.value===a.length){A.value=!0,_.value=!1;return}A.value=!1,p.value>a.length&&(_.value=!0),a.length===0&&(_.value=!1)}function Pe(a){_.value=!1,a?m.value=e.data.map((i,h)=>ae(i,h)):m.value=[]}function Le(a){var R;const i=(R=e.sort[a])!=null?R:"none";let h="asc";i==="asc"&&(h="desc"),i==="desc"&&(h="none"),t("update:sort",{[a]:h})}function De(a){var h;const i=(h=e.sort[a])!=null?h:"none";return Ot[i]}function Me(a,i=!1){var h;if(i){const R=(h=e.sort[a])!=null?h:"none";return R==="none"?void 0:zt[R]}}return{dataForDisplay:u,pageSize:n,onNext:Z,onPrev:ee,onFirst:j,onLast:te,nextDisabled:y,prevDisabled:P,lastDisabled:o,paginationStatusMessageShort:X,paginationStatusMessageLong:Y,wrappedSelectedRows:m,selectAll:A,selectAllIndeterminate:_,activeSortColumn:ge,hasSortableColumns:fe,tableClasses:me,getRowKey:ae,getRowClass:$e,getRowHeaderScope:Se,getCellElement:Ce,getCellClass:Ie,getCellStyle:we,handleRowSelection:ke,handleSelectAll:Pe,handleSort:Le,getSortIcon:De,getSortOrder:Me,translatedSortCaption:ve,translatedSelectRowLabel:he,translatedSelectAllLabel:ye}}}),qt={class:"cdx-table",tabindex:"0"},Ut={key:0,class:"cdx-table__header"},Kt=["aria-hidden"],Wt={class:"cdx-table__header__content"},Et={class:"cdx-table__pagination-status--long"},jt={class:"cdx-table__pagination-status--short"},Ht={class:"cdx-table__table-wrapper"},Qt={key:0},Gt={key:0,class:"cdx-table__table__select-rows"},Jt=["aria-sort"],Xt=["aria-selected","onClick"],Yt={class:"cdx-table__table__sort-label"},Zt={key:0},ea={key:0},ta={key:1},aa={class:"cdx-table__table__empty-state"},na=["colspan"],sa={class:"cdx-table__pagination-status--long"},la={class:"cdx-table__pagination-status--short"},oa={key:3,class:"cdx-table__footer"};function ia(e,t,s,n,u,p){const c=M("cdx-table-pager"),r=M("cdx-checkbox"),l=M("cdx-icon"),b=M("cdx-progress-bar");return d(),g("div",qt,[!e.hideCaption||e.$slots.header&&e.$slots.header().length>0?(d(),g("div",Ut,[v("div",{class:"cdx-table__header__caption","aria-hidden":e.$slots.header&&e.$slots.header().length>0?void 0:!0},[e.hideCaption?k("v-if",!0):(d(),g(F,{key:0},[V(C(e.caption),1)],64))],8,Kt),v("div",Wt,[S(e.$slots,"header")])])):k("v-if",!0),e.paginate&&(e.paginationPosition==="top"||e.paginationPosition==="both")?(d(),O(c,{key:1,"items-per-page":e.pageSize,"onUpdate:itemsPerPage":t[0]||(t[0]=o=>e.pageSize=o),class:"cdx-table__pagination--top","pagination-size-options":e.paginationSizeOptions,"prev-disabled":e.prevDisabled,"next-disabled":e.nextDisabled,"last-disabled":e.lastDisabled,onNext:e.onNext,onPrev:e.onPrev,onFirst:e.onFirst,onLast:e.onLast},{default:w(()=>[v("span",Et,C(e.paginationStatusMessageLong),1),v("span",jt,C(e.paginationStatusMessageShort),1)]),_:1},8,["items-per-page","pagination-size-options","prev-disabled","next-disabled","last-disabled","onNext","onPrev","onFirst","onLast"])):k("v-if",!0),v("div",Ht,[v("table",{class:B(["cdx-table__table",e.tableClasses])},[v("caption",null,[e.hasSortableColumns?(d(),g(F,{key:1},[V(C(e.translatedSortCaption),1)],64)):(d(),g(F,{key:0},[V(C(e.caption),1)],64))]),S(e.$slots,"thead",{},()=>[e.columns.length>0?(d(),g("thead",Qt,[v("tr",null,[e.useRowSelection?(d(),g("th",Gt,[$(r,{modelValue:e.selectAll,"onUpdate:modelValue":[t[1]||(t[1]=o=>e.selectAll=o),e.handleSelectAll],"hide-label":!0,indeterminate:e.selectAllIndeterminate},{default:w(()=>[V(C(e.translatedSelectAllLabel),1)]),_:1},8,["modelValue","indeterminate","onUpdate:modelValue"])])):k("v-if",!0),(d(!0),g(F,null,se(e.columns,o=>(d(),g("th",{key:o.id,scope:"col",class:B(e.getCellClass(o,o.allowSort)),"aria-sort":e.getSortOrder(o.id,o.allowSort),style:oe(e.getCellStyle(o))},[o.allowSort?(d(),g("button",{key:0,"aria-selected":o.id===e.activeSortColumn,class:"cdx-table__table__sort-button",onClick:P=>e.handleSort(o.id)},[v("span",Yt,C(o.label),1),$(l,{icon:e.getSortIcon(o.id),size:"small",class:"cdx-table__table__sort-icon--vue","aria-hidden":"true"},null,8,["icon"])],8,Xt)):(d(),g(F,{key:1},[V(C(o.label),1)],64))],14,Jt))),128))])])):k("v-if",!0)]),e.pending?(d(),O(b,{key:0,inline:!0,class:"cdx-table__pending-indicator"})):k("v-if",!0),S(e.$slots,"tbody",{},()=>[e.dataForDisplay.length>0?(d(),g("tbody",Zt,[(d(!0),g(F,null,se(e.dataForDisplay,(o,P)=>(d(),g("tr",{key:e.getRowKey(o,P),class:B(e.getRowClass(o,P))},[e.useRowSelection?(d(),g("td",ea,[$(r,{modelValue:e.wrappedSelectedRows,"onUpdate:modelValue":[t[2]||(t[2]=y=>e.wrappedSelectedRows=y),e.handleRowSelection],"input-value":e.getRowKey(o,P),"hide-label":!0},{default:w(()=>[V(C(e.translatedSelectRowLabel(P+1,e.dataForDisplay.length)),1)]),_:2},1032,["modelValue","input-value","onUpdate:modelValue"])])):k("v-if",!0),(d(!0),g(F,null,se(e.columns,y=>(d(),O(st(e.getCellElement(y.id)),{key:y.id,scope:e.getRowHeaderScope(y.id),class:B(e.getCellClass(y))},{default:w(()=>[S(e.$slots,"item-"+y.id,{item:o[y.id],row:o},()=>[V(C(o[y.id]),1)])]),_:2},1032,["scope","class"]))),128))],2))),128))])):e.$slots["empty-state"]&&e.$slots["empty-state"]().length>0?(d(),g("tbody",ta,[v("tr",aa,[v("td",{colspan:e.columns.length,class:"cdx-table__table__empty-state-content"},[S(e.$slots,"empty-state")],8,na)])])):k("v-if",!0)]),S(e.$slots,"tfoot")],2)]),e.paginate&&(e.paginationPosition==="bottom"||e.paginationPosition==="both")?(d(),O(c,{key:2,"items-per-page":e.pageSize,"onUpdate:itemsPerPage":t[3]||(t[3]=o=>e.pageSize=o),class:"cdx-table__pagination--bottom","pagination-size-options":e.paginationSizeOptions,"prev-disabled":e.prevDisabled,"next-disabled":e.nextDisabled,"last-disabled":e.lastDisabled,onNext:e.onNext,onPrev:e.onPrev,onFirst:e.onFirst,onLast:e.onLast},{default:w(()=>[v("span",sa,C(e.paginationStatusMessageLong),1),v("span",la,C(e.paginationStatusMessageShort),1)]),_:1},8,["items-per-page","pagination-size-options","prev-disabled","next-disabled","last-disabled","onNext","onPrev","onFirst","onLast"])):k("v-if",!0),e.$slots.footer&&e.$slots.footer().length>0?(d(),g("div",oa,[S(e.$slots,"footer")])):k("v-if",!0)])}const ma=q(Tt,[["render",ia]]);export{bt as C,Pt as a,ga as b,fa as c,ma as d};