1import{k as j,y as i,z as s,Q as N,D as J,G as $,K as v,H as k,c as d,r as F,w as Q,A as m,L as w,P as C,B as ie,u as S,C as I,J as K,X as D,N as T,O as A}from"./vendor-misc-5pJBpqhN.js";import{u as se}from"./useBreakpoint-DOQrj9xp.js";import{F as E}from"./FieldLabel-DcFbp3Rs.js";import{C as Z}from"./ChromeButton-DmiFifbd.js";import{_ as q}from"./index-BNPflmqD.js";import{c as M}from"./creatorFieldHelp-BrZsjpkG.js";import{b as oe,a as ue,A as de}from"./arrow-up-8FIemuBW.js";const ce=["aria-label"],me={class:"table-pagination__meta"},ve=j({__name:"TablePagination",props:{page:{},totalPages:{},total:{},itemLabel:{default:"rows"},ariaLabel:{default:"Table pagination"}},emits:["prev","next"],setup(o,{emit:P}){const x=P;return(r,u)=>(i(),s("nav",{class:"table-pagination","aria-label":o.ariaLabel},[N(Z,{variant:"secondary",disabled:o.page<=1,onClick:u[0]||(u[0]=L=>x("prev"))},{default:J(()=>[...u[2]||(u[2]=[$(" Previous ",-1)])]),_:1},8,["disabled"]),v("span",me," Page "+k(o.page)+" of "+k(o.totalPages)+" · "+k(o.total)+" "+k(o.itemLabel),1),N(Z,{variant:"secondary",disabled:o.page>=o.totalPages,onClick:u[1]||(u[1]=L=>x("next"))},{default:J(()=>[...u[3]||(u[3]=[$(" Next ",-1)])]),_:1},8,["disabled"])],8,ce))}}),be=q(ve,[["__scopeId","data-v-86d393f5"]]),ye=["aria-sort","onClick"],fe=["tabindex","role","aria-label","onClick","onKeydown"],ke=["data-label"],pe={key:1,class:"data-table-cards",role:"list"},ge=["tabindex","role","aria-label","onClick","onKeydown"],he={class:"data-table-card__label"},we={class:"data-table-card__value"},Ce={key:0,class:"data-table-card__more"},Se={class:"data-table-card__label"},_e={class:"data-table-card__value"},Ne={key:3,class:"empty"},$e=j({__name:"DataTable",props:{columns:{},rows:{},rowIdKey:{default:"id"},emptyLabel:{default:"No rows"},rowClickable:{type:Boolean,default:!1},rowClickMouseOnly:{type:Boolean},layout:{default:"responsive"},priorityColumns:{},sortable:{type:Boolean,default:!1},defaultSortKey:{},defaultSortDirection:{default:"desc"},pageSize:{},variant:{default:"default"},paginationItemLabel:{default:"rows"},currencyCode:{default:"USD"}},emits:["row-click"],setup(o,{emit:P}){const x=new Set(["actions","action"]),r=o,u=P,{isMobile:L}=se(),V=d(()=>r.sortable||r.variant==="master"),y=d(()=>r.pageSize===0?0:r.pageSize!=null&&r.pageSize>0?r.pageSize:r.variant==="master"?20:0),b=F(r.defaultSortKey??null),p=F(r.defaultSortDirection),f=F(1);Q(()=>r.rows,()=>{f.value=1},{deep:!0}),Q(()=>r.defaultSortKey,t=>{t&&(b.value=t)});const R=d(()=>r.layout==="table"?!1:r.layout==="cards"?!0:L.value),c=d(()=>r.rowClickable&&!r.rowClickMouseOnly),O=d(()=>{var e;if(!((e=r.priorityColumns)!=null&&e.length))return r.columns;const t=new Set(r.priorityColumns),n=r.columns.filter(l=>t.has(l.key));return n.length?n:r.columns.slice(0,3)}),U=d(()=>{var n;if(!((n=r.priorityColumns)!=null&&n.length))return[];const t=new Set(O.value.map(e=>e.key));return r.columns.filter(e=>!t.has(e.key))}),ee=d(()=>U.value.length>0);function _(t){return!(!V.value||t.sortable===!1||!t.label||x.has(t.key))}function te(t){if(b.value===t)p.value=p.value==="asc"?"desc":"asc";else{b.value=t;const n=r.columns.find(l=>l.key===t),e=(n==null?void 0:n.sortType)??((n==null?void 0:n.format)==="currency"||(n==null?void 0:n.format)==="number"?"number":"text");p.value=e==="text"?"asc":"desc"}f.value=1}function ae(t){return b.value!==t?"none":p.value==="asc"?"ascending":"descending"}function G(t,n){const e=n.sortKey??n.key,l=t[e];if((n.sortType??(n.format==="currency"||n.format==="number"?"number":"text"))==="number"){if(l==null||l==="")return Number.NEGATIVE_INFINITY;const h=Number(l);return Number.isFinite(h)?h:Number.NEGATIVE_INFINITY}return l==null?"":String(l).toLowerCase()}const g=d(()=>{const t=[...r.rows];if(!V.value||!b.value)return t;const n=r.columns.find(l=>l.key===b.value);if(!n||!_(n))return t;const e=p.value==="asc"?1:-1;return t.sort((l,a)=>{const h=G(l,n),B=G(a,n);return typeof h=="number"&&typeof B=="number"?e*(h-B):e*String(h).localeCompare(String(B))}),t}),W=d(()=>y.value?Math.max(1,Math.ceil(g.value.length/y.value)):1),ne=d(()=>y.value>0&&g.value.length>y.value),X=d(()=>
1{if(!y.value||g.value.length<=y.value)return g.value;const t=(f.value-1)*y.value;return g.value.slice(t,t+y.value)});function re(){f.value>1&&(f.value-=1)}function le(){f.value<W.value&&(f.value+=1)}function Y(t,n){const e=t[r.rowIdKey];return e!=null?String(e):`row-${n}`}function H(t){const n=r.columns[0];if(n){const e=t[n.key];if(e!=null&&e!=="")return`Row: ${String(e)}`}return"Row"}function z(t,n){if(t==null||t==="")return"â";if(n.format==="currency"||n.format==="number"){const e=typeof t=="number"?t:Number(t);if(!Number.isNaN(e)&&(typeof t=="number"||String(t).trim()!=="")){if(n.format==="currency"){const l=String(r.currencyCode||"USD").trim().toUpperCase();if(l==="MIXED"||!/^[A-Z]{3}$/.test(l)){const a=new Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e);return l==="MIXED"?`${a} (mixed)`:a}try{return new Intl.NumberFormat(void 0,{style:"currency",currency:l}).format(e)}catch{return new Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e)}}return new Intl.NumberFormat().format(e)}}return String(t)}return(t,n)=>(i(),s("div",{class:m(["data-table-wrap",{"data-table-wrap--cards":R.value,"data-table-wrap--master":o.variant==="master"}])},[R.value?(i(),s("ul",pe,[(i(!0),s(w,null,C(X.value,(e,l)=>(i(),s("li",{key:Y(e,l),class:m(["data-table-card",{"data-table-card--clickable":r.rowClickable}]),tabindex:c.value?0:void 0,role:c.value?"button":void 0,"aria-label":c.value?H(e):void 0,onClick:a=>r.rowClickable?u("row-click",e):void 0,onKeydown:[D(T(a=>c.value?u("row-click",e):void 0,["prevent"]),["enter"]),D(T(a=>c.value?u("row-click",e):void 0,["prevent"]),["space"])]},[(i(!0),s(w,null,C(O.value,a=>(i(),s("div",{key:a.key,class:m(["data-table-card__row",{"data-table-card__row--num":a.align==="right"}])},[v("span",he,[N(E,{label:a.label,hint:S(M)(a.key,a.hint),"hint-key":a.hintKey},null,8,["label","hint","hint-key"])]),v("span",we,[A(t.$slots,`cell-${a.key}`,{row:e,value:e[a.key]},()=>[$(k(z(e[a.key],a)),1)],!0)])],2))),128)),ee.value?(i(),s("details",Ce,[n[0]||(n[0]=v("summary",null,"More fields",-1)),(i(!0),s(w,null,C(U.value,a=>(i(),s("div",{key:a.key,class:m(["data-table-card__row",{"data-table-card__row--num":a.align==="right"}])},[v("span",Se,[N(E,{label:a.label,hint:S(M)(a.key,a.hint),"hint-key":a.hintKey},null,8,["label","hint","hint-key"])]),v("span",_e,[A(t.$slots,`cell-${a.key}`,{row:e,value:e[a.key]},()=>[$(k(z(e[a.key],a)),1)],!0)])],2))),128))])):K("",!0)],42,ge))),128))])):(i(),s("table",{key:0,class:m(["data-table",{"data-table--master":o.variant==="master"}])},[v("thead",null,[v("tr",null,[(i(!0),s(w,null,C(o.columns,e=>(i(),s("th",{key:e.key,class:m({num:e.align==="right","sortable-header":_(e),active:b.value===e.key}),style:ie(e.minWidth?{minWidth:e.minWidth}:void 0),"aria-sort":_(e)?ae(e.key):void 0,onClick:l=>_(e)?te(e.key):void 0},[v("span",{class:m(["header-content",{"header-content--end":e.align==="right"}])},[N(E,{label:e.label,hint:S(M)(e.key,e.hint),"hint-key":e.hintKey,"tooltip-position":"top"},null,8,["label","hint","hint-key"]),_(e)?(i(),s("span",{key:0,class:m(["sort-icon",{active:b.value===e.key}])},[b.value!==e.key?(i(),I(S(oe),{key:0,size:14,"aria-hidden":"true"})):p.value==="asc"?(i(),I(S(ue),{key:1,size:14,"aria-hidden":"true"})):(i(),I(S(de),{key:2,size:14,"aria-hidden":"true"}))],2)):K("",!0)],2)],14,ye))),128))])]),v("tbody",null,[(i(!0),s(w,null,C(X.value,(e,l)=>(i(),s("tr",{key:Y(e,l),class:m({"row-clickable":r.rowClickable}),tabindex:c.value?0:void 0,role:c.value?"button":void 0,"aria-label":c.value?H(e):void 0,onClick:a=>r.rowClickable?u("row-click",e):void 0,onKeydown:[D(T(a=>c.value?u("row-click",e):void 0,["prevent"]),["enter"]),D(T(a=>c.value?u("row-click",e):void 0,["prevent"]),["space"])]},[(i(!0),s(w,null,C(o.columns,a=>(i(),s("td",{key:a.key,"data-label":a.label,class:m({num:a.align==="right",revenue:a.emphasis==="revenue"})},[A(t.$slots,`cell-${a.key}`,{row:e,value:e[a.key]},()=>[$(k(z(e[a.key],a)),1)],!0)],10,ke))),128))],42,fe))),128))])],2)),ne.value?(i(),I(be,{key:2,page:f.value,"total-pages":W.value,total:g.value.length,"item-label":o.paginationItemLabel,onPrev:re,onNext:le},null,8,["page","total-pages","total","item-label"])):K("",!0),o.rows.length?K("",!0):(i(),s("p",Ne,k(o.emptyLabel),1))],2))}}),ze=q($e,[["__scopeId","data-v-3bb9f444"]]);export{ze as D};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.