@shineuix/ssr 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/THIRD-PARTY-NOTICES.md +15 -15
- package/dist/components/index.js +1 -1
- package/dist/components/p-0NNDSmh0.js +1 -0
- package/dist/components/{p-CDJMRbCX.js → p-2OGp7Y2F.js} +1 -1
- package/dist/components/{p-D0KZcTn9.js → p-3rGcn3Dk.js} +1 -1
- package/dist/components/{p-Hej7hALV.js → p-B1-k9bVs.js} +1 -1
- package/dist/components/{p-BmmgLDk2.js → p-B3hr5-fa.js} +1 -1
- package/dist/components/{p-vN2wl76B.js → p-BB3IbuND.js} +1 -1
- package/dist/components/{p-eoxRNwfF.js → p-BBNN1byS.js} +1 -1
- package/dist/components/p-BJYToX7G.js +1 -0
- package/dist/components/{p-Bv5xqCDb.js → p-BLK-elHV.js} +1 -1
- package/dist/components/{p-iKk1YZ0M.js → p-BLxI_QCP.js} +1 -1
- package/dist/components/p-BQJXtvhG.js +1 -0
- package/dist/components/{p-8BHOb7Dy.js → p-BglXr2C4.js} +1 -1
- package/dist/components/{p-CYZG3LOZ.js → p-BkdpcGfq.js} +1 -1
- package/dist/components/{p-DhYPkfV2.js → p-Bpr2o3vT.js} +1 -1
- package/dist/components/{p-C6T8Kp68.js → p-BtgC2u2Q.js} +1 -1
- package/dist/components/{p-DNgqy3W8.js → p-BwHBOv1l.js} +1 -1
- package/dist/components/{p-B0NNDkks.js → p-BwkaZsaT.js} +1 -1
- package/dist/components/{p-l4ru8vIR.js → p-C-tuu2jV.js} +1 -1
- package/dist/components/p-C5TSOOMd.js +1 -0
- package/dist/components/{p-5IOXzr3D.js → p-C6J9xhWE.js} +1 -1
- package/dist/components/{p-DSNURte-.js → p-CBiEHE-i.js} +1 -1
- package/dist/components/p-CDaU9b47.js +1 -0
- package/dist/components/p-CDiy2nTd.js +1 -0
- package/dist/components/{p-DtI1DFsR.js → p-CFn_q23Q.js} +1 -1
- package/dist/components/{p-pJYXPDB_.js → p-CUB_NKYi.js} +1 -1
- package/dist/components/p-CaekSnKG.js +1 -0
- package/dist/components/{p-D9rbC_yY.js → p-Cb1wtfPJ.js} +1 -1
- package/dist/components/{p-CyBxJm67.js → p-Cb50ss23.js} +1 -1
- package/dist/components/{p-CT6aJe8X.js → p-Cbd6cMaD.js} +1 -1
- package/dist/components/{p-NpX9eEW0.js → p-CiFpI_XW.js} +1 -1
- package/dist/components/{p-Ds9HpZbg.js → p-CmEfiaNv.js} +1 -1
- package/dist/components/{p-C6DEF4nA.js → p-CqvOA-0K.js} +1 -1
- package/dist/components/p-D00-pPuH.js +1 -0
- package/dist/components/{p-Deadvw27.js → p-D0BIoHLP.js} +1 -1
- package/dist/components/{p-C0MrkGLb.js → p-D0WdoZzs.js} +1 -1
- package/dist/components/{p-DSjolNQa.js → p-D1HckqwW.js} +1 -1
- package/dist/components/{p-Dgl_qIYT.js → p-D3Vt3xcn.js} +1 -1
- package/dist/components/{p-mdFjb4l0.js → p-DDyzuLfq.js} +1 -1
- package/dist/components/p-DW6x7zfX.js +1 -0
- package/dist/components/p-DWqzHMCu.js +1 -0
- package/dist/components/p-DX9wgxoJ.js +1 -0
- package/dist/components/{p-BJXb6pu9.js → p-Dh0O8nfH.js} +1 -1
- package/dist/components/{p-BEa7fx4d.js → p-DpbLhd6d.js} +1 -1
- package/dist/components/p-DquILvXX.js +1 -0
- package/dist/components/{p-CN5x4MC8.js → p-DsHK25q3.js} +1 -1
- package/dist/components/{p-D31mbQ3e.js → p-DthM6mDw.js} +1 -1
- package/dist/components/p-DuYxgKgU.js +1 -0
- package/dist/components/p-FKYMQPFB.js +1 -0
- package/dist/components/{p-CCVYcPwO.js → p-G2jDNXXR.js} +1 -1
- package/dist/components/p-VFpQ6hXH.js +1 -0
- package/dist/components/{p-v0MrzKlW.js → p-b5Ks_pUg.js} +1 -1
- package/dist/components/{p-CjVByuTx.js → p-czkAmPgI.js} +1 -1
- package/dist/components/{p-DuJmXwMk.js → p-hbVWBG4S.js} +1 -1
- package/dist/components/{p--YwzuGO4.js → p-kDhmjEYc.js} +1 -1
- package/dist/components/{p-BPGiU7Vj.js → p-lu4HWrMJ.js} +1 -1
- package/dist/components/{p-CR0heQtR.js → p-mEOcDy5S.js} +1 -1
- package/dist/components/{p-TBwsYzWO.js → p-piEUki9n.js} +1 -1
- package/dist/components/{p-D7L5Nhsy.js → p-qtQ1008P.js} +1 -1
- package/dist/components/p-qut9RP2y.js +1 -0
- package/dist/components/p-wknHx00K.js +1 -0
- package/dist/components/sui-accordion-item.js +1 -1
- package/dist/components/sui-accordion.js +1 -1
- package/dist/components/sui-anchor.js +1 -1
- package/dist/components/sui-auto-complete.js +1 -1
- package/dist/components/sui-avatar-group.js +1 -1
- package/dist/components/sui-avatar.js +1 -1
- package/dist/components/sui-block-ui.js +1 -1
- package/dist/components/sui-board.js +1 -1
- package/dist/components/sui-bottom-nav.js +1 -1
- package/dist/components/sui-breadcrumb.js +1 -1
- package/dist/components/sui-button-group.js +1 -1
- package/dist/components/sui-button.js +1 -1
- package/dist/components/sui-calendar.js +1 -1
- package/dist/components/sui-card.js +1 -1
- package/dist/components/sui-carousel.js +1 -1
- package/dist/components/sui-cascade-select.js +1 -1
- package/dist/components/sui-chart-bar.js +1 -1
- package/dist/components/sui-chart-candlestick.js +1 -1
- package/dist/components/sui-chart-combo.js +1 -1
- package/dist/components/sui-chart-gauge.js +1 -1
- package/dist/components/sui-chart-heatmap.js +1 -1
- package/dist/components/sui-chart-line.js +1 -1
- package/dist/components/sui-chart-navigator.js +1 -1
- package/dist/components/sui-chart-pie.js +1 -1
- package/dist/components/sui-chart-radar.js +1 -1
- package/dist/components/sui-chart-scatter.js +1 -1
- package/dist/components/sui-chart-synced.js +1 -1
- package/dist/components/sui-chart-treemap.js +1 -1
- package/dist/components/sui-chart-waterfall.js +1 -1
- package/dist/components/sui-checkbox-group.js +1 -1
- package/dist/components/sui-checkbox.js +1 -1
- package/dist/components/sui-chip.js +1 -1
- package/dist/components/sui-choice-cards.js +1 -1
- package/dist/components/sui-code-block.js +1 -1
- package/dist/components/sui-color-editor.js +1 -1
- package/dist/components/sui-color-picker.js +1 -1
- package/dist/components/sui-command-palette.js +1 -1
- package/dist/components/sui-config-list.js +1 -1
- package/dist/components/sui-config-row.js +1 -1
- package/dist/components/sui-confirm-dialog.js +1 -1
- package/dist/components/sui-confirm-popup.js +1 -1
- package/dist/components/sui-context-menu.js +1 -1
- package/dist/components/sui-copy-button.js +1 -1
- package/dist/components/sui-data-grid.js +1 -1
- package/dist/components/sui-data-table.js +1 -1
- package/dist/components/sui-data-view.js +1 -1
- package/dist/components/sui-date-picker.js +1 -1
- package/dist/components/sui-description-list.js +1 -1
- package/dist/components/sui-dialog.js +1 -1
- package/dist/components/sui-divider.js +1 -1
- package/dist/components/sui-dock.js +1 -1
- package/dist/components/sui-drawer.js +1 -1
- package/dist/components/sui-edit-box.js +1 -1
- package/dist/components/sui-empty-state.js +1 -1
- package/dist/components/sui-fieldset.js +1 -1
- package/dist/components/sui-file-upload.js +1 -1
- package/dist/components/sui-filter-builder.js +1 -1
- package/dist/components/sui-filter-panel.js +1 -1
- package/dist/components/sui-float-label.js +1 -1
- package/dist/components/sui-fluid.js +1 -1
- package/dist/components/sui-form-actions.js +1 -1
- package/dist/components/sui-form-layout.js +1 -1
- package/dist/components/sui-form.js +1 -1
- package/dist/components/sui-galleria.js +1 -1
- package/dist/components/sui-icon-button.js +1 -1
- package/dist/components/sui-icon-field.js +1 -1
- package/dist/components/sui-ifta-label.js +1 -1
- package/dist/components/sui-image-compare.js +1 -1
- package/dist/components/sui-image.js +1 -1
- package/dist/components/sui-inplace.js +1 -1
- package/dist/components/sui-input-group-addon.js +1 -1
- package/dist/components/sui-input-group.js +1 -1
- package/dist/components/sui-input-mask.js +1 -1
- package/dist/components/sui-input-number.js +1 -1
- package/dist/components/sui-input-otp.js +1 -1
- package/dist/components/sui-input-tags.js +1 -1
- package/dist/components/sui-input-text.js +1 -1
- package/dist/components/sui-kbd.js +1 -1
- package/dist/components/sui-knob.js +1 -1
- package/dist/components/sui-list.js +1 -1
- package/dist/components/sui-listbox.js +1 -1
- package/dist/components/sui-mega-menu.js +1 -1
- package/dist/components/sui-menu.js +1 -1
- package/dist/components/sui-menubar.js +1 -1
- package/dist/components/sui-message.js +1 -1
- package/dist/components/sui-meter-group.js +1 -1
- package/dist/components/sui-mini-toolbar.js +1 -1
- package/dist/components/sui-multi-select.js +1 -1
- package/dist/components/sui-notification-center.js +1 -1
- package/dist/components/sui-order-list.js +1 -1
- package/dist/components/sui-org-chart.js +1 -1
- package/dist/components/sui-page-header.js +1 -1
- package/dist/components/sui-paginator.js +1 -1
- package/dist/components/sui-panel-menu.js +1 -1
- package/dist/components/sui-panel.js +1 -1
- package/dist/components/sui-password.js +1 -1
- package/dist/components/sui-persona.js +1 -1
- package/dist/components/sui-pick-list.js +1 -1
- package/dist/components/sui-popover.js +1 -1
- package/dist/components/sui-progress-bar.js +1 -1
- package/dist/components/sui-progress-ring.js +1 -1
- package/dist/components/sui-progress-spinner.js +1 -1
- package/dist/components/sui-qr-code.js +1 -1
- package/dist/components/sui-radio-button.js +1 -1
- package/dist/components/sui-radio-group.js +1 -1
- package/dist/components/sui-rating.js +1 -1
- package/dist/components/sui-rich-text-editor.js +1 -1
- package/dist/components/sui-save-status.js +1 -1
- package/dist/components/sui-scheduler-builder.js +1 -1
- package/dist/components/sui-scroll-panel.js +1 -1
- package/dist/components/sui-scroll-top.js +1 -1
- package/dist/components/sui-select-button.js +1 -1
- package/dist/components/sui-select.js +1 -1
- package/dist/components/sui-side-nav.js +1 -1
- package/dist/components/sui-skeleton-card.js +1 -1
- package/dist/components/sui-skeleton.js +1 -1
- package/dist/components/sui-slider.js +1 -1
- package/dist/components/sui-sparkline.js +1 -1
- package/dist/components/sui-speed-dial.js +1 -1
- package/dist/components/sui-split-button.js +1 -1
- package/dist/components/sui-splitter.js +1 -1
- package/dist/components/sui-spoiler.js +1 -1
- package/dist/components/sui-stat-card.js +1 -1
- package/dist/components/sui-stepper.js +1 -1
- package/dist/components/sui-tab.js +1 -1
- package/dist/components/sui-tabs.js +1 -1
- package/dist/components/sui-tag.js +1 -1
- package/dist/components/sui-terminal.js +1 -1
- package/dist/components/sui-textarea.js +1 -1
- package/dist/components/sui-theme-picker.js +1 -1
- package/dist/components/sui-tiered-menu.js +1 -1
- package/dist/components/sui-time-picker.js +1 -1
- package/dist/components/sui-timeline.js +1 -1
- package/dist/components/sui-toast-host.js +1 -1
- package/dist/components/sui-toggle-button.js +1 -1
- package/dist/components/sui-toggle-switch.js +1 -1
- package/dist/components/sui-toolbar.js +1 -1
- package/dist/components/sui-tooltip.js +1 -1
- package/dist/components/sui-tour.js +1 -1
- package/dist/components/sui-tree-select.js +1 -1
- package/dist/components/sui-tree-table.js +1 -1
- package/dist/components/sui-tree.js +1 -1
- package/dist/components/sui-trend.js +1 -1
- package/dist/components/sui-virtual-scroller.js +1 -1
- package/dist/hydrate/index.js +1 -1
- package/dist/hydrate/index.mjs +1 -1
- package/package.json +8 -3
- package/dist/components/p-7Ti-Ht9x.js +0 -1
- package/dist/components/p-9ma1-eiT.js +0 -1
- package/dist/components/p-BiSaIyr0.js +0 -1
- package/dist/components/p-BioVIgkG.js +0 -1
- package/dist/components/p-CAeBVGwP.js +0 -1
- package/dist/components/p-COO9uV7W.js +0 -1
- package/dist/components/p-CbnOosJi.js +0 -1
- package/dist/components/p-CekHtBpA.js +0 -1
- package/dist/components/p-Cs2X0Kih.js +0 -1
- package/dist/components/p-D_hGdmbW.js +0 -1
- package/dist/components/p-DgXzRiP4.js +0 -1
- package/dist/components/p-DgiZgZCh.js +0 -1
- package/dist/components/p-DskQyZoR.js +0 -1
- package/dist/components/p-Dxh8L0dt.js +0 -1
- package/dist/components/p-RwPlJzMY.js +0 -1
- package/dist/components/p-mF7K10Wh.js +0 -1
- package/dist/components/p-n4-59tbj.js +0 -1
- /package/dist/components/{p-DdsE4HI6.js → p-BeYfX4rQ.js} +0 -0
- /package/dist/components/{p-DXIDl7cw.js → p-CZ4DDtn8.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as i,H as t,c as s,h as e,t as r}from"./p-CeVlau-G.js";import{S as o,s as a,r as n,g as d,D as l,u as h,E as u,l as c,m as g,n as p,t as f,h as v,j as m,k as x,i as b,e as w,o as y,q as k,G as C,M,H as z}from"./p-mF7K10Wh.js";import{u as F,b as S,w as D,S as E,e as A,x as T,f as j,g as R,h as H,y as K,z as $,A as L,B as N,k as O,l as P,j as B,C as I,m as V,o as W,D as G,v as Y,E as U,F as X,G as _,H as q,I as J,i as Z,J as Q,q as ii}from"./p-D_hGdmbW.js";import{o as ti,a as si,b as ei,c as ri,g as oi,m as ai,l as ni,p as di,t as li,r as hi,i as ui}from"./p-CN5x4MC8.js";import{h as ci}from"./p-Hej7hALV.js";import{c as gi,m as pi}from"./p-q0JbXN8q.js";import{s as fi,a as vi,i as mi}from"./p-GAnFXayY.js";import{a as xi,l as bi}from"./p-BuyjS5bS.js";import{u as wi}from"./p-U06fVoGD.js";import{i as yi,a as ki}from"./p-Cs2X0Kih.js";import{d as Ci}from"./p-BHB1Wprj.js";import{o as Mi,a as zi}from"./p-BWkzTEZX.js";import{G as Fi,N as Si,F as Di,h as Ei,j as Ai,M as Ti}from"./p-DdsE4HI6.js";const ji=/^-?\d+(?:\.\d+)?$/,Ri=/^(.*?)(\d+)$/,Hi=/^(\d{4})-(\d{2})-(\d{2})$/;function Ki(i){if(i.length<2)return null;const t=i[1]-i[0];for(let s=2;s<i.length;s++)if(Math.abs(i[s]-i[s-1]-t)>Math.max(1e-9,1e-9*Math.abs(t)))return null;return t}function $i(i){const t=Hi.exec(i.trim());if(!t)return null;const s=Date.UTC(Number(t[1]),Number(t[2])-1,Number(t[3]));return Number.isNaN(s)?null:Math.round(s/864e5)}function Li(i){const t=new Date(864e5*i),s=i=>(i+"").padStart(2,"0");return`${t.getUTCFullYear()}-${s(t.getUTCMonth()+1)}-${s(t.getUTCDate())}`}function Ni(i,t){const s=t.indexOf("."),e=s<0?0:t.length-s-1;return e>0?i.toFixed(e):Math.round(i)+""}function Oi(i,t,s="forward"){const e=Math.max(0,Math.floor(t)||0);if(0===e||0===i.length)return[];const r="backward"===s,o=function(i,t){const s=[],e=function(i){const t=[];for(const s of i){if(!ji.test(s.trim()))return null;t.push(Number(s.trim()))}const s=Ki(t);return null==s?null:{values:t,step:s}}(i);if(e){const r=e.values[e.values.length-1],o=i[i.length-1].trim();for(let i=1;i<=t;i++)s.push(Ni(r+e.step*i,o));return s}const r=i.map($i);if(r.every((i=>null!=i))){const i=r,e=i.length>=2?Ki(i):1;if(null!=e){const r=i[i.length-1];for(let i=1;i<=t;i++)s.push(Li(r+e*i));return s}}const o=i.map((i=>Ri.exec(i)));if(o.every((i=>null!=i))){const i=o,e=i[0][1];if(""!==e&&"-"!==e&&i.every((i=>i[1]===e))){const r=i.map((i=>Number(i[2]))),o=i.length>=2?Ki(r):1;if(null!=o){const a=r[r.length-1],n=i[i.length-1][2].length;for(let i=1;i<=t;i++){const t=a+o*i;s.push(e+(t<0?"-"+(Math.abs(t)+"").padStart(n,"0"):(t+"").padStart(n,"0")))}return s}}}for(let e=0;e<t;e++)s.push(i[e%i.length]);return s}(r?i.slice().reverse():i.slice(),e);return r?o.reverse():o}const Pi={compact:30,standard:36,comfortable:44},Bi="__sui-select",Ii="__sui-rownum",Vi=new Set([Bi,Ii]),Wi=i(class extends t{constructor(i){super(),!1!==i&&this.__registerHost(),this.suiViewport=s(this,"suiViewport",3),this.suiCellFocus=s(this,"suiCellFocus",3),this.suiCellActivate=s(this,"suiCellActivate",7),this.suiSort=s(this,"suiSort",3),this.suiRangeChange=s(this,"suiRangeChange",3),this.suiCellEdit=s(this,"suiCellEdit",7),this.suiSelectionChange=s(this,"suiSelectionChange",3),this.suiColumnLayoutChange=s(this,"suiColumnLayoutChange",3),this.suiFilter=s(this,"suiFilter",3),this.suiCellContextMenu=s(this,"suiCellContextMenu",7),this.suiCut=s(this,"suiCut",7),this.suiCopy=s(this,"suiCopy",7),this.suiCopyError=s(this,"suiCopyError",7),this.suiFill=s(this,"suiFill",7),this.suiPaste=s(this,"suiPaste",7)}get host(){return this}columns=[];rows=[];rowKey;density="standard";hideSelectionBar=!1;rowHeights;overscan=6;emptyMessage;emptyFilterMessage;focusedCell;sorts=[];sortMode="single";sortIndicator="sorted";nullOrder="last";filterModel;columnLayout={};selectionMode="none";selection=S();rangeSelection=!1;copyFormulas=!1;editMode="none";loading=!1;stateKey;stateStorage="session";pinnedTop;pinnedBottom;footerTotals;rowClass;reorderableColumns=!1;showColumnToggle=!1;rowNumbers=!1;filterDisplay="none";suiViewport;suiCellFocus;suiCellActivate;suiSort;suiRangeChange;suiCellEdit;suiSelectionChange;suiColumnLayoutChange;suiFilter;suiCellContextMenu;suiCut;suiCopy;suiCopyError;suiFill;suiPaste;windowRevision=0;viewportWidth=0;viewportHeight=0;focusRevision=0;headerCol=-1;dragAnchor;ranges=D();editingCell;resizing=!1;fillRow;fillCol;viewportEl;layerEl;headerH=0;footerH=0;originY=0;pendingMeasure=!1;renderedBase=0;renderedStart=0;renderedEnd=0;resizeObserver;clipAt="";viewTop=0;viewStart=0;lastViewTop=0;lastScrollAt=0;velocity=0;rowGeometry=new o;scrollSpace=new E;colModel;colWidthAt=-1;colCountAt=-1;colLayoutAt=-1;colModeAt="";augmented;layoutRev=0;selectionRev=0;rowWin={start:0,end:0};colWin={start:0,end:0};reported;pendingFocus=!1;selectAnchor;focusedKey;pendingEditor;editingValue="";guideEl;resizeKey;undoStack=[];redoStack=[];sourceMap;pasteFallback;dragKey;dropKey;columnsMenuOpen=!1;filterUi;listUi;menuTicket=0;filterMenuKey;filterDraftState;filterSearch="";menuClosing=!1;hasHeaderSlot=!1;stopSlots;hostLabel;hostLabelledby;stopHostLabel;stopHostLabelledby;modeMenuKey;rowModes={};rowTimers=new Map;loaded=!1;menuAnchor;menuEl;menuFocusPending=!1;stopOutside;stopReposition;stopEscape;demoteMenu;menuExit=ti((()=>this.finishMenu()));menuId=wi("sui-dg-menu");resizeFromX=0;resizeFromW=0;resizeFrameX=0;resizeSign=1;fillFrom;fillAnchor;fillRanges;fillBodyY=0;fillPointerId;fillClientX=0;fillClientY=0;fillListening=!1;fillHandleAt=null;pendingEditorSelectAll=!1;editorEl;customEditorEl;editWrap;editorFocus=ci({parts:()=>[this.editWrap],leave:()=>{this.editingCell&&this.endEdit(!0)}});editError;rowSlots=0;colSlots=0;rowSlotKeys=[];colSlotKeys=[];pinStartKeys=[];pinEndKeys=[];cellCache=new Map;connectedCallback(){this.stopSlots?.(),this.stopSlots=Mi(this.host,(()=>this.readHeaderSlot()),{childList:!0}),this.stopHostLabel?.(),this.stopHostLabel=yi(this.host,(i=>{this.hostLabel=i})),this.stopHostLabelledby?.(),this.stopHostLabelledby=ki(this.host,(i=>{this.hostLabelledby=i})),Ci(this.host,(()=>this.tabStop())),this.loaded&&this.watchViewport(!0)}componentWillLoad(){if(this.restoreState(),this.readHeaderSlot(),"row"===this.filterDisplay)return this.loadFilterUi().then((()=>{}),(()=>{}))}loadFilterUi(){return Promise.all([import("./p-5IOXzr3D.js"),A()]).then((([i])=>this.filterUi=i))}loadColumnList(){return Promise.all([import("./p-5IOXzr3D.js"),T()]).then((([i])=>this.listUi=i))}preloadFilterUi=()=>{this.filterUi||this.loadFilterUi().catch((()=>{}))};preloadColumnList=()=>{this.listUi||this.loadColumnList().catch((()=>{}))};componentDidLoad(){this.loaded=!0,this.watchViewport(),this.measure()}readHeaderSlot(){this.hasHeaderSlot=zi(this.host,"header").length>0}watchViewport(i=!1){this.resizeObserver?.disconnect(),this.resizeObserver=void 0,"undefined"!=typeof ResizeObserver&&this.viewportEl&&(this.resizeObserver=new ResizeObserver((()=>this.measure())),this.resizeObserver.observe(this.viewportEl)),i&&Promise.resolve().then((()=>{this.host.isConnected&&(this.readHeaderSlot(),this.measure(),this.flushRowValues())}))}flushRowValues(){Array.from(this.rowTimers.values()).forEach((i=>{clearTimeout(i.timer),i.write()}))}componentDidRender(){if(this.pendingMeasure&&(this.pendingMeasure=!1,this.measure()),this.viewportEl&&(this.originY=this.viewportEl.getBoundingClientRect().top),this.applyLayer(this.renderedBase,!0),this.keepFocusInGrid(),this.settleMenu(),this.editorEl&&null!=this.pendingEditor){const i=this.pendingEditor,t=this.pendingEditorSelectAll;if(this.pendingEditor=void 0,this.editorEl.value=i,this.editorEl.focus(),"function"==typeof this.editorEl.setSelectionRange)try{this.editorEl.setSelectionRange(t?0:i.length,i.length)}catch{}}this.pendingFocus&&(this.pendingFocus=!1,this.focusedEl()?.focus()),this.commitWindowedEdit();const i={rowStart:this.rowWin.start,rowEnd:this.rowWin.end,colStart:this.colWin.start,colEnd:this.colWin.end},t=this.reported;t&&t.rowStart===i.rowStart&&t.rowEnd===i.rowEnd&&t.colStart===i.colStart&&t.colEnd===i.colEnd||(this.reported=i,this.suiViewport.emit(i))}disconnectedCallback(){this.editorFocus.reset(),void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),this.pasteFallback=void 0,this.stopSlots?.(),this.stopSlots=void 0,this.stopHostLabel?.(),this.stopHostLabel=void 0,this.stopHostLabelledby?.(),this.stopHostLabelledby=void 0,this.disarmMenu(),this.menuOpen&&this.finishMenu(),this.rowTimers.forEach((i=>clearTimeout(i.timer))),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.cellCache.clear(),this.endRangeDrag(),this.abortFillDrag()}get editing(){return"cell"===this.editMode}onModelChange(){this.cellCache.clear(),this.colCountAt=-1}onChromeChange(){this.pendingMeasure=!0,this.filterMenuKey&&"menu"!==this.filterDisplay&&this.requestCloseMenu(!1)}onFilterDisplayChange(){"row"===this.filterDisplay&&this.preloadFilterUi()}onLayoutChange(){this.layoutRev++,this.colCountAt=-1}onOrderChange(){this.rowKey||this.cellCache.clear(),this.ranges.ranges.length&&this.setRanges(D());const i=this.focusedKey,t=this.focusedCell;if(!t)return;if(null==i)return void(this.focusedCell=void 0);const s=this.viewRows();let e=-1;for(let t=0;t<s.length;t++)if(this.keyOf(s[t],t)===i){e=t;break}if(e<0)return this.focusedCell=void 0,void(this.focusedKey=void 0);e!==t.row&&(this.focusedCell={row:e,col:t.col})}async scrollToRow(i,t="auto"){this.syncGeometry();const s=a(this.rowGeometry,this.metrics(),i,t);null!=s&&this.viewportEl&&(this.viewportEl.scrollTop=this.scrollSpace.toPhysical(s))}async focusCell(i,t){this.moveFocus(i,t)}async setFocus(){this.tabStop()?.focus()}tabStop(){return this.focusedEl()||this.viewportEl}async exportCsv(i="export.csv"){this.syncGeometry();const t=(this.colModel?this.colModel.all:[]).filter((i=>!Vi.has(i.key)));return j(R(this.viewRows(),t.length?t:this.columns||[]),i)}async getViewport(){return{rowStart:this.rowWin.start,rowEnd:this.rowWin.end,colStart:this.colWin.start,colEnd:this.colWin.end}}keepFocusInGrid(){if(!this.focusedCell&&this.headerCol<0||!this.viewportEl||"undefined"==typeof document)return;if(this.focusedEl())return;const i=document.activeElement;(!i||i===document.body||!i.isConnected||this.viewportEl.contains(i)&&i.matches(".sui-dg-cell, .sui-dg-hcell")&&"0"!==i.getAttribute("tabindex"))&&this.viewportEl.focus({preventScroll:!0})}commitWindowedEdit(){const i=this.editingCell;i&&void 0===this.pendingEditor&&this.viewportEl&&(this.viewportEl.querySelector(".sui-dg-cell.editing")||Promise.resolve().then((()=>{this.editingCell===i&&this.endEdit(!0)})))}focusedEl(){return this.viewportEl?this.headerCol>=0?this.viewportEl.querySelector('.sui-dg-hcell[tabindex="0"]'):this.focusedCell?this.viewportEl.querySelector('.sui-dg-cell[tabindex="0"]'):null:null}measure(){const i=this.viewportEl;if(!i)return;this.originY=i.getBoundingClientRect().top;const t=i.querySelector(".sui-dg-head");t&&(this.headerH=t.getBoundingClientRect().height||0);const s=i.querySelector(".sui-dg-foot");this.footerH=s&&s.getBoundingClientRect().height||0;const e=i.clientWidth||0,r=i.clientHeight||0;e===this.viewportWidth&&r===this.viewportHeight||(this.viewportWidth=e,this.viewportHeight=r,this.colCountAt=-1)}rowHeight(){return Pi[this.density]||Pi.standard}rowBand(){return Math.max(0,this.viewportHeight-this.headerH-this.footerH)}metrics(){return{rowHeight:this.rowHeight(),viewport:this.rowBand(),scrollTop:this.scrollSpace.toLogical(this.viewTop),overscan:Math.max(8,this.overscan||1),velocity:this.velocity,block:8}}syncGeometry(){const i=this.viewRows();this.rowGeometry.set(i.length,this.rowHeight(),this.rowHeights),this.scrollSpace.set(this.rowGeometry.extent,this.rowBand());const t=this.columnLayout||{},s=this.columns||[];this.colModel&&this.colWidthAt===this.viewportWidth&&this.colCountAt===s.length&&this.colLayoutAt===this.layoutRev&&this.colModeAt===this.selectionMode||(this.colWidthAt=this.viewportWidth,this.colCountAt=s.length,this.colLayoutAt=this.layoutRev,this.colModeAt=this.selectionMode,this.colModel=n(this.gridColumns(),{viewport:this.viewportWidth,order:t.order,hidden:t.hidden?new Set(t.hidden):void 0,resized:t.widths?new Map(Object.entries(t.widths)):void 0}))}onScroll=i=>{const t=i.target;this.viewTop=t.scrollTop||0,this.viewStart=fi(t),this.applyLayer(this.renderedBase);const s=i.timeStamp||Date.now(),e=s-this.lastScrollAt,r=this.viewTop-this.lastViewTop;this.velocity=Math.abs(r)>Math.max(1,this.viewportHeight)?0:e>0&&e<250?.6*this.velocity+r/e*1e3*.4:0,this.lastScrollAt=s,this.lastViewTop=this.viewTop,this.syncGeometry(),this.updateWindow()&&this.windowRevision++,this.fillListening&&this.trackFill(this.fillClientX,this.fillClientY)};updateWindow(){const i=d(this.rowGeometry,this.metrics()),t=this.colModel?l(this.colModel,this.viewStart,this.viewportWidth,4,4):{start:0,end:0};return(i.start!==this.rowWin.start||i.end!==this.rowWin.end||t.start!==this.colWin.start||t.end!==this.colWin.end)&&(this.rowWin=i,this.colWin=t,!0)}rowBase(){return this.rowGeometry.offsetOf(this.rowWin.start)}layerY(i){return this.headerH-Math.max(0,this.headerH-this.viewTop)+i-this.scrollSpace.toLogical(this.viewTop)}applyLayer(i,t=!1){const s=this.layerEl;if(!s)return;if(this.clipRows(),!t&&!this.renderedCovers())return;const e=Math.max(0,this.headerH-this.viewTop);s.style.transform=`translate3d(0, ${h(this.layerY(i),this.originY+e)}px, 0)`}clipRows(){const i=this.layerEl?.parentElement;if(!i||this.viewportHeight<=0)return;const t=u(z(this.headerH,this.footerH,this.viewTop,this.viewportHeight));t!==this.clipAt&&(this.clipAt=t,i.style.clipPath=t)}renderedCovers(){if(this.renderedEnd<=this.renderedStart)return!0;const i=this.rowGeometry.offsetOf(this.renderedStart),t=this.rowGeometry.offsetOf(this.renderedEnd),s=this.scrollSpace.toLogical(this.viewTop),e=this.rowBand(),r=this.rowHeight();return i<=Math.max(0,s-r)&&t>=Math.min(this.rowGeometry.extent,s+e+r)}viewRows(){return H(this.rows||[],{columns:this.columns||[],filter:this.filterModel,sorts:this.sorts,nullOrder:this.nullOrder}).rows}emptyText(){return(this.rows||[]).length>0&&0===this.viewRows().length?""===this.emptyFilterMessage?"":xi(void 0,"data-grid.emptyFilter",this.emptyFilterMessage,"No matches."):""===this.emptyMessage?"":xi(void 0,"data-grid.empty",this.emptyMessage,"Nothing here yet.")}gridColumns(){const i=this.columns||[],t=this.rowNumbers?this.rowNumberWidth():0,s=this.hasSelectColumn();if(!t&&!s)return i;const e=this.augmented;if(e&&e.from===i&&e.mode===this.selectionMode&&e.numbers===t)return e.out;const r=[];return t&&r.push({key:Ii,header:"",width:t,minWidth:t,pin:"start",align:"center"}),s&&r.push({key:Bi,header:"",width:48,minWidth:48,pin:"start",align:"center"}),r.push(...i),this.augmented={from:i,mode:this.selectionMode,numbers:t,out:r},r}rowNumberWidth(){return Math.max(44,20+8*(Math.max(1,(this.rows||[]).length)+"").length)}minCol(){return this.colModel?.all[0]?.key===Ii?1:0}dataStart(){const i=this.colModel?.all||[];let t=0;for(;t<i.length&&Vi.has(i[t].key);)t++;return t}dataCell(i){const t=this.dataStart();return i.col<t?{row:i.row,col:t}:i}isGutter(i){const t=this.colModel?.all[i]?.key;return null!=t&&Vi.has(t)}pickRowFromNumber(i,t){const s=this.colModel,e=this.dataStart(),r=(s?.all.length||0)-1;if(s&&!(r<e)){if(this.rangeSelection){const s=t.shiftKey&&this.ranges.anchor?this.ranges.anchor.row:i,o={r1:Math.min(s,i),c1:e,r2:Math.max(s,i),c2:r};this.setRanges(K(t.ctrlKey||t.metaKey?this.ranges:D(),o,{row:s,col:e}))}t.shiftKey||this.moveFocus(i,e)}}selectAllCells(){const i=this.viewRows(),t=this.dataStart(),s=(this.colModel?.all.length||0)-1;!this.rangeSelection||0===i.length||s<t||this.setRanges(K(D(),{r1:0,c1:t,r2:i.length-1,c2:s},{row:0,col:t}))}keyOf(i,t){return this.rowKey?this.rowKey(i,t):t}cellText(i,t){return c(i.column,t)}moveFocus(i,t){const s=this.colModel,e=this.viewRows();if(!s||0===e.length||0===s.all.length)return;const r=Math.max(0,Math.min(e.length-1,i)),o=Math.max(this.minCol(),Math.min(s.all.length-1,t)),a=this.focusedCell,n=this.headerCol>=0;this.headerCol=-1,a&&a.row===r&&a.col===o?n&&(this.pendingFocus=!0,this.focusRevision++):(this.focusedCell={row:r,col:o},this.focusedKey=this.keyOf(e[r],r),this.pendingFocus=!0,this.focusRevision++,this.revealCell(r,o),this.suiCellFocus.emit({row:r,col:o}))}focusHeader(i){const t=this.colModel;if(!t||0===t.all.length)return;const s=Math.max(this.minCol(),Math.min(t.all.length-1,i));this.headerCol=s,this.pendingFocus=!0,this.focusRevision++,this.revealColumn(s)}activateHeader(i){const t=this.colModel?.all[i];t&&(t.key!==Bi?t.column.sortable&&this.sortBy(t.key,!1):this.toggleSelectAll())}revealCell(i,t){const s=this.viewportEl;if(!s)return;const e=a(this.rowGeometry,this.metrics(),i,"auto");null!=e&&(s.scrollTop=this.scrollSpace.toPhysical(e),this.viewTop=s.scrollTop),this.revealColumn(t)}revealColumn(i){const t=this.viewportEl,s=this.colModel;if(!t||!s)return;const e=s.all[i];if(!e||e.pin)return;const r=s.startWidth+e.offset,o=r+e.width,a=this.viewStart+this.viewportWidth-s.endWidth;r<this.viewStart+s.startWidth?vi(t,r-s.startWidth):o>a&&vi(t,o-this.viewportWidth+s.endWidth),this.viewStart=fi(t)}cellAt(i){const t=i.target.closest(".sui-dg-cell"),s=t?.closest(".sui-dg-row");if(!t||!s||!this.colModel)return null;const e=Number(s.dataset.index),r=this.colModel.byKey.get(t.dataset.col||"");return Number.isFinite(e)&&r&&!Vi.has(r.key)?{row:e,col:r.index}:null}onPointerDown=i=>{if(i.target.closest(".sui-dg-fill, .sui-dg-resizer"))return;this.fillFrom&&this.abortFillDrag();const t=i.target.closest(".sui-dg-cell"),s=t?.closest(".sui-dg-row");if(!t||!s||!this.colModel)return;const e=Number(s.dataset.index),r=this.colModel.byKey.get(t.dataset.col||"");if(Number.isFinite(e)&&r){if(r.key===Ii)return i.preventDefault(),void this.pickRowFromNumber(e,i);if(r.key===Bi)return i.preventDefault(),this.selectRow(e,i),void this.moveFocus(e,r.index);if("single"!==this.selectionMode&&"multiple"!==this.selectionMode||this.selectRow(e,i),this.rangeSelection){i.shiftKey&&i.preventDefault();const t={row:e,col:r.index},s=this.ranges.anchor||(this.focusedCell?this.dataCell(this.focusedCell):t);i.shiftKey?this.setRanges(K(D(),L(s,t),s)):i.ctrlKey||i.metaKey?this.setRanges(K(this.ranges,L(t,t),t)):(this.setRanges(K(D(),L(t,t),t)),this.beginRangeDrag(t))}this.moveFocus(e,r.index)}};beginRangeDrag(i){"undefined"!=typeof document&&(this.dragAnchor=i,document.addEventListener("mousemove",this.onRangeDrag),document.addEventListener("mouseup",this.endRangeDrag))}onRangeDrag=i=>{const t=this.dragAnchor;if(!t)return;const s=this.cellAt(i);if(!s)return;const e=L(t,s),r=$(this.ranges);r&&r.r1===e.r1&&r.c1===e.c1&&r.r2===e.r2&&r.c2===e.c2||this.setRanges(K(D(),e,t))};endRangeDrag=()=>{this.dragAnchor&&(this.dragAnchor=void 0,"undefined"!=typeof document&&(document.removeEventListener("mousemove",this.onRangeDrag),document.removeEventListener("mouseup",this.endRangeDrag)))};onContextMenu=i=>{const t=this.cellAt(i);t&&(i.preventDefault(),N(this.ranges,t.row,t.col)&&this.focusedCell||this.moveFocus(t.row,t.col),this.emitContextMenu(t.row,t.col,i.clientX,i.clientY))};emitContextMenu(i,t,s,e){const r=this.colModel?.all[t]?.key;if(null==r||Vi.has(r))return;let o=s,a=e;if(null==o||null==a){const t=this.viewportEl?.querySelector(`.sui-dg-row[data-index="${i}"] .sui-dg-cell[data-col="${r}"]`),s=t?.getBoundingClientRect();o=s?mi(this.host)?s.right-8:s.left+8:0,a=s?s.bottom:0}this.suiCellContextMenu.emit({row:i,col:t,key:r,clientX:o,clientY:a,...this.recordAt(i)})}onResizerDblClick=i=>{const t=i.target.dataset.col;t&&(i.preventDefault(),i.stopPropagation(),this.autosizeColumn(t))};onDblClick=()=>{const i=this.focusedCell;i&&(this.editing&&this.canEdit(i.col)?this.beginEdit(i):this.suiCellActivate.emit({...i}))};hasSelectColumn(){return"checkbox"===this.selectionMode}setSelection(i){this.selection=i,this.selectionRev++,this.suiSelectionChange.emit(i)}selectRow(i,t){const s=this.selectionMode;if("none"===s)return;const e=this.viewRows(),r=e[i];if(!r)return;const o=this.keyOf(r,i),a="single"!==s,n=a&&(t.ctrlKey||t.metaKey);if(a&&t.shiftKey&&null!=this.selectAnchor){const t=Math.min(this.selectAnchor,i),s=Math.max(this.selectAnchor,i),r=[];for(let i=t;i<=s;i++)r.push(this.keyOf(e[i],i));this.setSelection(O(n?this.selection:S(),r,!0))}else this.selectAnchor=i,this.setSelection("single"===s||!n&&"checkbox"!==s?O(S(),[o],!0):P(this.selection,o))}toggleSelectAll=()=>{const i=this.viewRows().length,t=Q(this.selection,i);this.setSelection(null!=t&&t>=i&&i>0?S():B())};fillSource(){const i=$(this.ranges);if(i)return i;const t=this.focusedCell;return t?{r1:t.row,c1:t.col,r2:t.row,c2:t.col}:null}onFillPointerDown=i=>{const t=this.fillSource();t&&this.viewportEl&&(i.preventDefault(),i.stopPropagation(),this.armFill(t,i))};armFill(i,t){const s=this.viewportEl;if(!s)return;this.releaseFillPointer();const e=s.querySelector(".sui-dg-head"),r=s.getBoundingClientRect().top,o=e?e.offsetHeight:0;this.fillBodyY=(Number.isFinite(r)?r:0)+(Number.isFinite(o)?o:0),this.fillFrom=i,this.fillAnchor=this.ranges.anchor&&I(i,this.ranges.anchor.row,this.ranges.anchor.col)?this.ranges.anchor:{row:i.r1,col:i.c1},this.fillRanges=this.ranges,this.fillRow=i.r2,this.fillCol=i.c2,this.fillClientX=t.clientX,this.fillClientY=t.clientY,this.fillPointerId=t.pointerId,this.fillListening=!0;try{s.setPointerCapture(t.pointerId)}catch{}document.addEventListener("pointermove",this.onFillMove),document.addEventListener("pointerup",this.onFillEnd)}columnAtClient(i){const t=this.colModel;if(!t?.all.length)return 0;const s=this.viewportEl?.getBoundingClientRect(),e=mi(this.host),r=e?s?.right:s?.left,o=Number.isFinite(r)?r:0,a=e?o-i:i-o;if(!Number.isFinite(a))return t.all[0].index;const n=(i,t)=>{for(const s of i){const i=t+s.offset;if(a>=i&&a<i+s.width)return s.index}return-1};let d=n(t.start,0);return d<0&&t.end.length&&(d=n(t.end,Math.max(0,this.viewportWidth-t.endWidth))),d<0&&(d=n(t.center,t.startWidth-this.viewStart)),d>=0?d:a<=0?t.all[0].index:t.all[t.all.length-1].index}trackFill(i,t){const s=this.fillAnchor;if(!this.fillFrom||!s)return;this.fillClientX=i,this.fillClientY=t;const e=this.viewRows();if(!e.length||!this.colModel?.all.length)return;const r=this.scrollSpace.toLogical(this.viewTop)+(t-this.fillBodyY);if(!Number.isFinite(r))return;const o=Math.max(0,Math.min(e.length-1,this.rowGeometry.indexAt(r))),a=this.columnAtClient(i);if(!Number.isFinite(o)||!Number.isFinite(a))return;if(o===this.fillRow&&a===this.fillCol)return;if(this.fillRow=o,this.fillCol=a,!this.rangeSelection)return;const n=L(s,{row:o,col:a}),d=1===this.ranges.ranges.length?this.ranges.ranges[0]:null;d&&d.r1===n.r1&&d.c1===n.c1&&d.r2===n.r2&&d.c2===n.c2&&this.ranges.anchor?.row===s.row&&this.ranges.anchor?.col===s.col||this.setRanges(K(D(),n,s))}onFillMove=i=>{this.fillListening&&(0!==i.buttons?this.trackFill(i.clientX,i.clientY):this.onFillEnd())};releaseFillPointer(){this.fillListening&&(document.removeEventListener("pointermove",this.onFillMove),document.removeEventListener("pointerup",this.onFillEnd)),this.fillListening=!1;const i=this.viewportEl;if(i&&null!=this.fillPointerId)try{i.releasePointerCapture(this.fillPointerId)}catch{}this.fillPointerId=void 0}abortFillDrag(){const i=this.fillRanges;this.releaseFillPointer(),this.fillFrom=void 0,this.fillRow=void 0,this.fillCol=void 0,this.fillAnchor=void 0,this.fillRanges=void 0,i&&i!==this.ranges&&this.setRanges(i)}onFillEnd=()=>{const i=this.fillFrom,t=this.fillAnchor,s=this.fillRow,e=this.fillCol;if(this.releaseFillPointer(),this.fillFrom=void 0,this.fillRow=void 0,this.fillCol=void 0,this.fillAnchor=void 0,this.fillRanges=void 0,!i||!t||null==s||null==e)return;const r=L(t,{row:s,col:e}),o=[];for(let t=i.r1;t<=i.r2;t++){const s=[];for(let e=i.c1;e<=i.c2;e++)s.push(this.textAt(t,e));o.push(s)}const a=function(i,t,s){const e=F(t,s);if(!e)return null;const r=new Map;for(let s=t.c1;s<=t.c2;s++){const o=[];for(let e=t.r1;e<=t.r2;e++)o.push(i[e-t.r1]?.[s-t.c1]??"");const a=t.r1>e.r1?Oi(o,t.r1-e.r1,"backward"):[],n=e.r2>t.r2?Oi(o,e.r2-t.r2):[],d=[];for(let i=e.r1;i<=e.r2;i++)d.push(i<t.r1?a[i-e.r1]??"":i>t.r2?n[i-t.r2-1]??"":o[i-t.r1]??"");r.set(s,d)}const o=[];for(let i=e.r1;i<=e.r2;i++){const s=i-e.r1,a=[];for(let i=t.c1;i<=t.c2;i++)a.push(r.get(i)?.[s]??"");const n=t.c1>e.c1?Oi(a,t.c1-e.c1,"backward"):[],d=e.c2>t.c2?Oi(a,e.c2-t.c2):[],l=[];for(let i=e.c1;i<=e.c2;i++)l.push(i<t.c1?n[i-e.c1]??"":i>t.c2?d[i-t.c2-1]??"":a[i-t.c1]??"");o.push(l)}return{target:e,values:o}}(o,i,r);a&&(this.pushUndo(this.blockEdits(a.target,a.values)),this.suiFill.emit({source:i,target:a.target,values:a.values,...this.rangeRecords(a.target)}),this.rangeSelection&&this.setRanges(K(D(),r,t)))};onHeaderPointerDown=i=>{const t=i.target.closest(".sui-dg-resizer"),s=t?.dataset.col,e=s&&this.colModel?this.colModel.byKey.get(s):void 0;if(!t||!e)return;i.preventDefault(),this.resizeKey=e.key,this.resizeFromX=i.clientX,this.resizeFromW=e.width,this.resizeSign=mi(this.host)?-1:1;const r=this.viewportEl;this.resizeFrameX=r?r.getBoundingClientRect().left+(r.clientLeft||0):0,this.resizing=!0,t.setPointerCapture?.(i.pointerId),t.addEventListener("pointermove",this.onResizeMove),t.addEventListener("pointerup",this.onResizeEnd,{once:!0}),t.addEventListener("pointercancel",this.onResizeEnd,{once:!0}),this.moveGuide(i.clientX)};moveGuide(i){const t=this.guideEl;t&&this.resizeKey&&(t.style.left=h(this.resizeFromX-this.resizeFrameX+this.resizeSign*(this.clampedWidth(i)-this.resizeFromW))+"px")}async autosizeColumn(i){const t=this.colModel?.byKey.get(i),s=this.viewportEl;if(!t||!s||Vi.has(i))return null;let e=0;for(const t of Array.from(s.querySelectorAll(`.sui-dg-cell[data-col="${i}"], .sui-dg-hcell[data-col="${i}"]`))){if(!t.firstChild)continue;const i=t.style.width;t.style.width="max-content",e=Math.max(e,t.getBoundingClientRect().width),t.style.width=i}if(e<=0)return null;const r=Math.round(this.clampWidthFor(t,e+1));return this.writeLayout({widths:{...this.columnLayout?.widths||{},[i]:r}}),r}clampWidthFor(i,t){return Math.max(Math.max(M,i.column.minWidth||0),Math.min(i.column.maxWidth||1/0,t))}clampedWidth(i){const t=this.colModel?.byKey.get(this.resizeKey||""),s=t?.column,e=Math.max(M,s?.minWidth||0);return Math.min(s?.maxWidth&&s.maxWidth>e?s.maxWidth:1/0,Math.max(e,this.resizeFromW+this.resizeSign*(i-this.resizeFromX)))}onResizeMove=i=>{this.moveGuide(i.clientX)};onResizeEnd=i=>{const t=this.resizeKey,s=i.currentTarget;s?.removeEventListener("pointermove",this.onResizeMove),this.resizing=!1;const e=t?Math.round(this.clampedWidth(i.clientX)):0;this.resizeKey=void 0,t&&(this.columnLayout={...this.columnLayout,widths:{...this.columnLayout?.widths||{},[t]:e}},this.layoutRev++,this.colCountAt=-1,this.suiColumnLayoutChange.emit(this.columnLayout))};onHeadDragStart=i=>{if(!this.reorderableColumns)return;if(i.target.closest(".sui-dg-resizer"))return void i.preventDefault();const t=i.target.closest(".sui-dg-hcell")?.dataset.col;t&&!Vi.has(t)&&(this.dragKey=t,i.dataTransfer?.setData("text/plain",t),i.dataTransfer&&(i.dataTransfer.effectAllowed="move"))};onHeadDragOver=i=>{if(!this.dragKey)return;i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect="move");const t=i.target.closest(".sui-dg-hcell")?.dataset.col,s=t&&t!==this.dragKey&&!Vi.has(t)?t:void 0;s!==this.dropKey&&(this.dropKey=s)};onHeadDragLeave=i=>{const t=i.currentTarget,s=i.relatedTarget;s&&t.contains(s)||this.dropKey===t.dataset.col&&(this.dropKey=void 0)};onHeadDragEnd=()=>{this.dragKey=void 0,this.dropKey=void 0};onHeadDrop=i=>{const t=i.target.closest(".sui-dg-hcell")?.dataset.col,s=this.dragKey;if(this.dragKey=void 0,this.dropKey=void 0,!t||!s||t===s||Vi.has(t))return;i.preventDefault();const e=(this.colModel?.all||[]).map((i=>i.key)).filter((i=>!Vi.has(i)));this.writeLayout({order:g(e,s,t)})};writeLayout(i){this.columnLayout={...this.columnLayout,...i},this.layoutRev++,this.colCountAt=-1,this.saveState(),this.suiColumnLayoutChange.emit(this.columnLayout)}saveState(){this.stateKey&&V(this.stateKey,{sorts:this.sorts,filter:this.filterModel,layout:this.columnLayout,nullOrder:this.nullOrder},ii(this.stateStorage))}restoreState(){if(!this.stateKey)return;const i=W(this.stateKey,ii(this.stateStorage));i&&(i.sorts&&(this.sorts=i.sorts),i.filter&&(this.filterModel=i.filter),i.layout&&(this.columnLayout=i.layout),i.nullOrder&&(this.nullOrder=i.nullOrder))}get menuOpen(){return this.columnsMenuOpen||!!this.filterMenuKey||!!this.modeMenuKey}openMenu(i,t,s,e=!1){const r=++this.menuTicket;if(!(t?this.listUi:this.filterUi))return void(t?this.loadColumnList():this.loadFilterUi()).then((()=>{r===this.menuTicket&&i.isConnected&&this.openMenu(i,t,s,e)}),(()=>{}));this.menuOpen&&(this.disarmMenu(),this.finishMenu());const o=s&&this.colModel?this.colModel.byKey.get(s):void 0;(t||o)&&(this.menuAnchor=i,this.columnsMenuOpen=t,this.filterMenuKey=t||e?void 0:s,this.modeMenuKey=e?s:void 0,this.filterDraftState=o&&!e?p(this.ruleFor(o.key),o.column):void 0,this.filterSearch="",this.stopOutside=si((()=>[this.menuEl,this.menuAnchor]),(i=>{const t=i?.target;t&&this.menuEl&&ui(this.menuEl,t)||this.requestCloseMenu(!1)})),this.stopReposition=ei((()=>this.placeMenu())),this.stopEscape=ri((()=>this.requestCloseMenu(!0))),this.menuFocusPending=!0)}disarmMenu(){this.stopOutside?.(),this.stopOutside=void 0,this.stopReposition?.(),this.stopReposition=void 0,this.stopEscape?.(),this.stopEscape=void 0,this.menuFocusPending=!1}requestCloseMenu(i){if(!this.menuOpen||this.menuClosing)return;const t=this.menuAnchor,s=this.menuEl;this.disarmMenu(),s&&oi(s),i&&t?.focus({preventScroll:!0}),this.menuClosing=this.menuExit.begin(s),this.menuClosing||this.finishMenu()}finishMenu(){this.menuExit.cancel(),this.demoteMenu?.(),this.demoteMenu=void 0,this.columnsMenuOpen=!1,this.filterMenuKey=void 0,this.modeMenuKey=void 0,this.filterDraftState=void 0,this.filterSearch="",this.menuClosing=!1,this.menuAnchor=void 0,this.menuEl=void 0}placeMenu(){const i=this.menuEl,t=this.menuAnchor;if(!i||!t)return;const s=t.getBoundingClientRect(),e=this.host.getBoundingClientRect(),r=this.columnsMenuOpen||this.modeMenuKey?"end":s.left+s.width/2<e.left+e.width/2!==mi(t)?"start":"end";ai(i,ni(t,i,"bottom",10,r))}settleMenu(){const i=this.menuEl;if(!i||this.menuClosing)return;if(this.demoteMenu||(this.demoteMenu=di(i)),this.placeMenu(),!this.menuFocusPending)return;this.menuFocusPending=!1;let t=0;const s=()=>{if(this.menuEl!==i||this.menuClosing)return;const e=i.querySelector('[role="menuitemradio"][aria-checked="true"]')||i.querySelector(".sui-cf-search input, sui-input-text.sui-cf-value input, sui-input-number.sui-cf-value input")||i.querySelector('sui-checkbox input, sui-select button, sui-select [tabindex="0"], input, button');e?.focus?.({preventScroll:!0}),e&&document.activeElement!==e&&t++<5&&"function"==typeof requestAnimationFrame&&requestAnimationFrame(s)},e=Array.from(i.querySelectorAll("sui-input-text, sui-input-number, sui-select, sui-checkbox, sui-menu")).map((i=>"function"==typeof i.componentOnReady?i.componentOnReady():void 0)).filter(Boolean);e.length?Promise.all(e).then(s,s):s()}onMenuKeyDown=i=>{if(li(i,this.menuEl,(()=>this.requestCloseMenu(!0))))return;if("Enter"!==i.key||i.defaultPrevented||!this.filterMenuKey)return;const t=i.target;t&&"INPUT"===t.tagName&&"checkbox"!==t.type&&!t.closest("sui-date-picker")&&(i.preventDefault(),this.applyFilter())};onAnchorKeyDown=i=>{"Enter"!==i.key&&" "!==i.key&&"Spacebar"!==i.key?"Escape"===i.key&&this.menuOpen&&(i.stopPropagation(),i.preventDefault(),this.requestCloseMenu(!1)):i.stopPropagation()};onColumnsButton=i=>{!this.columnsMenuOpen||this.menuClosing?this.openMenu(i.currentTarget,!0):this.requestCloseMenu(!1)};onFilterButton=i=>{i.stopPropagation();const t=i.currentTarget,s=t.dataset.col;if(!s)return;if(this.filterMenuKey===s&&!this.menuClosing)return void this.requestCloseMenu(!1);const e=this.colModel?this.colModel.all.findIndex((i=>i.key===s)):-1;this.headerCol>=0&&e>=0&&(this.headerCol=e),this.openMenu(t,!1,s)};openHeaderFilter(i){const t=this.colModel?.all[i];if(!t||"menu"!==this.filterDisplay||!t.column.filter)return!1;const s=(this.viewportEl?Array.from(this.viewportEl.querySelectorAll(".sui-cf-funnel")):[]).find((i=>i.dataset.col===t.key));return!!s&&(s.focus({preventScroll:!0}),this.openMenu(s,!1,t.key),!0)}onColumnToggle=i=>{const t=i.target.dataset.col;t&&(i.stopPropagation(),this.writeLayout({hidden:f(this.columnLayout.hidden,t)}))};ruleFor(i){return this.filterModel?.rules?.[i]}setRule(i,t,s){this.filterModel=v(this.filterModel,i,t,s),this.saveState(),this.suiFilter.emit(this.filterModel)}async setFilter(i){this.filterModel=i,this.saveState(),this.suiFilter.emit(i)}writeColumnFilter(i,t){this.filterModel=m(this.filterModel,i,t),this.saveState(),this.suiFilter.emit(this.filterModel)}applyFilter=()=>{const i=this.filterMenuKey,t=i&&this.colModel?this.colModel.byKey.get(i):void 0,s=this.filterDraftState;i&&t&&s&&!this.menuClosing&&(this.writeColumnFilter(i,x(s,i,t.column)),this.requestCloseMenu(!0))};clearFilter=()=>{const i=this.filterMenuKey;i&&!this.menuClosing&&(this.writeColumnFilter(i,void 0),this.requestCloseMenu(!0))};rowMode(i){const t=this.ruleFor(i.key)?.constraints?.[0]?.matchMode;return t||this.rowModes[i.key]||b(i)}onRowValue(i,t,s){const e=this.colModel?.byKey.get(i);if(!e)return;const r=this.rowMode(e.column),o=this.rowTimers.get(i);if(void 0!==o&&clearTimeout(o.timer),this.rowTimers.delete(i),s)return void this.setRule(i,t,r);const a=()=>{this.rowTimers.delete(i),this.setRule(i,t,this.rowMode(e.column))};this.rowTimers.set(i,{timer:setTimeout(a,180),write:a})}onRowModeButton(i,t){this.modeMenuKey!==t||this.menuClosing?this.openMenu(i,!1,t,!0):this.requestCloseMenu(!1)}pickRowMode(i,t){const s=this.colModel?.byKey.get(i),e=this.filterUi;if(!s||!e)return;const r=this.ruleFor(i)?.constraints?.[0],o={matchMode:this.rowMode(s.column),value:r?.value};this.rowModes={...this.rowModes,[i]:t};const a=e.carryValue(o,t);(r||void 0!==a||"empty"===t||"notEmpty"===t)&&this.setRule(i,a??"",t),this.requestCloseMenu(!0)}rowText(i){return{valueFor:bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i}),modeFor:t=>bi(void 0,"data-grid.filterModeCurrent",void 0,"Filter mode for {column}: {mode}",{column:i,mode:t}),from:xi(void 0,"data-grid.from",void 0,"From"),to:xi(void 0,"data-grid.to",void 0,"To"),yes:xi(void 0,"data-grid.yes",void 0,"Yes"),no:xi(void 0,"data-grid.no",void 0,"No")}}onHeaderClick=i=>{if(i.target.closest(".sui-dg-resizer"))return;const t=i.target.closest(".sui-dg-hcell");if(t?.dataset.col===Bi)return void this.toggleSelectAll();if(t?.dataset.col===Ii)return void this.selectAllCells();const s=t?.dataset.col,e=s&&this.colModel?this.colModel.byKey.get(s):void 0;e&&e.column.sortable&&this.sortBy(e.key,"multiple"===this.sortMode&&(i.shiftKey||i.metaKey||i.ctrlKey))};sortBy(i,t){const s=this.sorts||[],e=s.findIndex((t=>t.key===i)),r=e>=0?s[e]:void 0,o=t?s.slice():[];if(r)if("asc"===r.dir){const i={key:r.key,dir:"desc"};t?o[e]=i:o.push(i)}else t&&o.splice(e,1);else o.push({key:i,dir:"asc"});this.sorts=o,this.saveState(),this.suiSort.emit(o)}sourceIndexOf(i){if(!i)return-1;const t=this.rows||[];if(!this.sourceMap||this.sourceMap.rows!==t){const i=new Map;for(let s=0;s<t.length;s++)t[s]&&!i.has(t[s])&&i.set(t[s],s);this.sourceMap={rows:t,map:i}}return this.sourceMap.map.get(i)??-1}recordAt(i,t=this.viewRows()){const s=t[i]||{},e={data:s,sourceIndex:this.sourceIndexOf(t[i])};return this.rowKey&&t[i]&&(e.rowKey=this.rowKey(s,i)),e}rangeRecords(i){const t=this.viewRows(),s=this.colModel?.all||[],e=[];for(let t=i.c1;t<=i.c2&&t<s.length;t++)e.push(s[t].key);const r=[],o=[];for(let s=i.r1;s<=i.r2&&s<t.length;s++)r.push(t[s]),o.push(this.sourceIndexOf(t[s]));return{keys:e,data:r,sourceIndexes:o}}editAt(i,t,s,e,r=this.viewRows()){const o=r[i]||{};return{data:o,rowKey:this.keyOf(o,i),sourceIndex:this.sourceIndexOf(r[i]),rowIndex:i,columnKey:t,value:s,previous:e}}blockEdits(i,t){const s=this.viewRows(),e=this.colModel?.all||[],r=[];for(let o=i.r1;o<=i.r2&&o<s.length;o++)for(let a=i.c1;a<=i.c2&&a<e.length;a++){const n=e[a];if(Vi.has(n.key))continue;const d=t[o-i.r1]?.[a-i.c1]??"",l=this.textAt(o,a);d!==l&&r.push(this.editAt(o,n.key,d,l,s))}return r}pushUndo(i){i.length&&(this.undoStack.push(i),this.redoStack=[])}locate(i){const t=this.viewRows();if(this.rowKey){for(let s=0;s<t.length;s++)if(t[s]&&this.rowKey(t[s],s)===i.rowKey)return{...i,rowIndex:s,data:t[s],sourceIndex:this.sourceIndexOf(t[s])};const s=this.rows||[];for(let t=0;t<s.length;t++)if(s[t]&&this.rowKey(s[t],t)===i.rowKey)return{...i,rowIndex:-1,data:s[t],sourceIndex:t}}const s=i.sourceIndex>=0?(this.rows||[])[i.sourceIndex]:void 0;if(!s)return i;const e=t.indexOf(s);return{...i,rowIndex:e,data:s,rowKey:e>=0?this.keyOf(s,e):i.rowKey}}focusEdit(i){const t=i?this.colModel?.byKey.get(i.columnKey)?.index:void 0;i&&i.rowIndex>=0&&null!=t&&this.focusCellAt(i.rowIndex,t)}textAt(i,t){const s=this.colModel,e=this.viewRows(),r=s?.all[t],o=e[i];return r&&o?this.cellText(r,o):""}setRanges(i){this.ranges=i,this.suiRangeChange.emit(G(i))}canEdit(i){const t=this.colModel?.all[i];return!(!this.editing||!t||Vi.has(t.key)||!1===t.column.editable||t.column.render)}beginEdit(i,t){this.canEdit(i.col)&&(this.abortFillDrag(),this.pendingEditorSelectAll=null==t,this.focusedCell||(this.focusedCell={row:i.row,col:i.col},this.suiCellFocus.emit({row:i.row,col:i.col})),this.pendingEditor=t??this.textAt(i.row,i.col),this.editingValue=this.pendingEditor,this.editError=void 0,this.editingCell={row:i.row,col:i.col})}endEdit(i){const t=this.editingCell;if(!t)return;const s=this.colModel?.all[t.col],e=s?.column.editor;let r=this.editingValue;if(e&&this.customEditorEl&&this.customEditorEl.isConnected?r=e.read(this.customEditorEl):this.editorEl&&this.editorEl.isConnected&&(r=this.editorEl.value),i&&s){const i=this.viewRows(),e=Y(r,i[t.row]||{},s.column,s.column.validator);if(e)return void(this.editError=e)}const o=this.textAt(t.row,t.col);if(this.editorFocus.reset(),this.editingCell=void 0,this.pendingEditor=void 0,this.editingValue="",this.editError=void 0,this.editorEl=void 0,this.customEditorEl=void 0,this.pendingFocus=!0,i&&s&&r!==o){const i=this.editAt(t.row,s.key,r,o);this.pushUndo([i]),this.suiCellEdit.emit(i)}}mountEditor(i,t,s){const e=t.column.editor;if(!i||!e)return;if(this.customEditorEl&&i.contains(this.customEditorEl))return;const r=this.viewRows()[s]||{},o=e.mount({value:w(r,t.column),text:this.textAt(s,t.index),column:t.column,row:r,seed:this.pendingEditor});i.textContent="",i.appendChild(o);const a=i.classList;if(a)for(let i=0;i<a.length;i++){const t=a.item(i);t&&t.startsWith("sc-")&&o.classList.add(t)}this.customEditorEl=o,this.pendingEditor=void 0,o.focus()}onEditorFocusIn=i=>{this.editorFocus.focusin(i)};onEditorFocusOut=i=>{this.editorFocus.focusout(i)};onEditorBlur=()=>{const i=this.editingCell;Promise.resolve().then((()=>{i&&this.editingCell===i&&this.endEdit(!0)}))};onEditorKeyDown=i=>{if(i.stopPropagation(),i.defaultPrevented&&this.editWrap&&hi(this.editWrap))return;const t=this.editingCell?this.colModel?.all[this.editingCell.col]?.column.editor:void 0;if(!(t?.handlesKey&&this.customEditorEl&&t.handlesKey(i,this.customEditorEl)))if("Escape"===i.key)i.preventDefault(),this.endEdit(!1);else if("Enter"===i.key||"Tab"===i.key){i.preventDefault();const t=this.editingCell;this.endEdit(!0),t&&("Enter"===i.key?this.moveFocus(t.row+(i.shiftKey?-1:1),t.col):this.moveFocus(t.row,t.col+(i.shiftKey?-1:1)))}};pasteText(i){const t=this.focusedCell;if(!t||!i)return!1;const s=U(i);if(!s.length)return!1;const e=s.reduce(((i,t)=>Math.max(i,t.length)),0),r={r1:t.row,c1:t.col,r2:t.row+s.length-1,c2:t.col+Math.max(e,1)-1};return this.pushUndo(this.blockEdits(r,s)),this.suiPaste.emit({row:t.row,col:t.col,target:r,values:s,...this.rangeRecords(r)}),!0}onNativePaste=i=>{if(this.editingCell)return;const t=i.clipboardData?.getData("text/plain");null!=t&&(i.preventDefault(),void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),this.pasteFallback=void 0,this.pasteText(X(t,i.clipboardData?.getData(_))))};async paste(){if(!this.focusedCell||"undefined"==typeof navigator||!navigator.clipboard?.readText)return!1;try{return this.pasteText(X(await navigator.clipboard.readText()))}catch{return!1}}async copy(i=!1){const t=this.copyBox();return!!t&&this.writeClipboard(this.boxText(t,i))}async writeClipboard(i){const{text:t,ok:s}=await q(i,this.copyFormulas?"preserve":"escape",this.host);return s?this.suiCopy.emit(t):this.suiCopyError.emit(t),s}async undo(){const i=this.undoStack.pop();if(!i)return!1;let t;this.redoStack.push(i);for(let s=i.length-1;s>=0;s--){const e=this.locate(i[s]);t=e,this.suiCellEdit.emit({...e,value:e.previous,previous:e.value,source:"undo"})}return this.focusEdit(t),!0}async redo(){const i=this.redoStack.pop();if(!i)return!1;let t;this.undoStack.push(i);for(const s of i){const i=this.locate(s);t=t||i,this.suiCellEdit.emit({...i,source:"redo"})}return this.focusEdit(t),!0}focusCellAt(i,t){const s=this.viewRows();i<0||i>=s.length||t<0||t>=(this.colModel?.all.length||0)||this.moveFocus(i,t)}copyBox(){const i=$(this.ranges);if(i)return i;const t=this.focusedCell;return t?{r1:t.row,c1:t.col,r2:t.row,c2:t.col}:null}boxText(i,t){const s=[];if(t){const t=this.colModel?.all||[],e=[];for(let s=i.c1;s<=i.c2;s++)e.push(t[s]?.column.header??"");s.push(e)}for(let t=i.r1;t<=i.r2;t++){const e=[];for(let s=i.c1;s<=i.c2;s++)e.push(this.textAt(t,s));s.push(e)}return s}async cut(){if(!this.editing)return!1;const i=this.copyBox();if(!i)return!1;if(!await this.writeClipboard(this.boxText(i,!1)))return!1;const t=i.c2-i.c1+1,s=Array.from({length:i.r2-i.r1+1},(()=>Array(t).fill("")));return this.pushUndo(this.blockEdits(i,s)),this.suiCut.emit({source:i,target:i,values:s,...this.rangeRecords(i)}),!0}onHeaderKey(i,t){const s=mi(this.host)?"ArrowLeft":"ArrowRight",e=this.headerCol;switch(i.key){case"ArrowRight":case"ArrowLeft":return i.preventDefault(),void this.focusHeader(i.key===s?Math.min(t,e+1):Math.max(0,e-1));case"Home":return i.preventDefault(),void this.focusHeader(0);case"End":return i.preventDefault(),void this.focusHeader(t);case"ArrowDown":if(i.preventDefault(),i.altKey&&this.openHeaderFilter(e))return;return void this.moveFocus(0,e);case"Enter":case" ":case"Spacebar":return i.preventDefault(),void this.activateHeader(e)}}onKeyDown=i=>{const t=this.colModel,s=this.viewRows();if(!t||0===t.all.length)return;const e=t.all.length-1;if(this.headerCol>=0)return void this.onHeaderKey(i,e);if(0===s.length)return;const r=this.focusedCell||{row:this.rowWin.start,col:this.minCol()},o=s.length-1,a=Math.max(1,Math.floor(this.rowBand()/this.rowHeight())-1),n=i.ctrlKey||i.metaKey;if(n&&("c"===i.key||"C"===i.key))return i.preventDefault(),void this.copy(i.shiftKey);if(n&&("x"===i.key||"X"===i.key))return i.preventDefault(),void this.cut();if(n&&("z"===i.key||"Z"===i.key))return i.preventDefault(),void(i.shiftKey?this.redo():this.undo());if(n&&("y"===i.key||"Y"===i.key))return i.preventDefault(),void this.redo();if("ContextMenu"===i.key||i.shiftKey&&"F10"===i.key)return i.preventDefault(),void this.emitContextMenu(r.row,r.col);if(n&&("v"===i.key||"V"===i.key))return void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),void(this.pasteFallback=setTimeout((()=>{this.pasteFallback=void 0,this.paste()}),80));if(this.editing&&!this.editingCell){if("F2"===i.key)return i.preventDefault(),void this.beginEdit(r);if(!n&&!i.altKey&&1===i.key.length&&!this.isGutter(r.col))return i.preventDefault(),void this.beginEdit(r,i.key)}if(this.rangeSelection&&n&&("a"===i.key||"A"===i.key))return i.preventDefault(),void this.selectAllCells();if("none"!==this.selectionMode&&(" "===i.key||"Spacebar"===i.key))return i.preventDefault(),void this.selectRow(r.row,{shiftKey:i.shiftKey&&!i.ctrlKey,ctrlKey:i.ctrlKey||i.metaKey});let d=r.row,l=r.col;const h=mi(this.host)?"ArrowLeft":"ArrowRight";switch(i.key){case"ArrowDown":d=Math.min(o,d+1);break;case"ArrowUp":if(0===d&&!i.shiftKey)return i.preventDefault(),void this.focusHeader(l);d=Math.max(0,d-1);break;case"ArrowRight":case"ArrowLeft":l=i.key===h?Math.min(e,l+1):Math.max(0,l-1);break;case"Home":l=0,(i.ctrlKey||i.metaKey)&&(d=0);break;case"End":l=e,(i.ctrlKey||i.metaKey)&&(d=o);break;case"PageDown":d=Math.min(o,d+a);break;case"PageUp":d=Math.max(0,d-a);break;case"Enter":return i.preventDefault(),void(this.isGutter(l)?this.selectRow(d,{}):this.editing&&this.canEdit(l)?this.beginEdit({row:d,col:l}):this.suiCellActivate.emit({row:d,col:l}));default:return}if(i.preventDefault(),this.rangeSelection&&i.shiftKey){const i=this.dataCell({row:d,col:l}),t=this.ranges.anchor||this.dataCell(r);this.setRanges(this.ranges.ranges.length?J(this.ranges,i):K(D(),L(t,i),t)),l=i.col}else this.rangeSelection&&this.setRanges(D());this.moveFocus(d,l)};cell(i,t,s,r,o,a,n){const d=i.column;if(i.key===Ii){const t=this.focusedCell?.row===s,r=this.ranges.ranges.some((i=>s>=Math.min(i.r1,i.r2)&&s<=Math.max(i.r1,i.r2)));return e("div",{class:`${i.cellClass} sui-dg-rownum${t?" cur":""}${r?" on":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle},s+1+"")}if(i.key===Bi){const t=Z(this.selection,r),a=this.focusedCell,n=!!a&&a.row===s&&a.col===i.index;return e("div",{class:`${i.cellClass}${n?" focus":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle,tabindex:n?0:void 0},e("span",{class:t?"sui-dg-box on":"sui-dg-box",role:"checkbox","aria-checked":t?"true":"false","aria-label":xi(void 0,"data-grid.selectRow",void 0,"Select row")}))}const l=`${r}\0${i.key}`;let h=null,u="";d.render?(h=a.has(l)?a.get(l):gi(d.render,[t,r],y(d,t)),n.set(l,h)):u=y(i.column,t);const c=i.column.cellClass?i.column.cellClass(w(t,i.column),t,s):void 0,g=this.focusedCell,p=!!g&&g.row===s&&g.col===i.index,f=this.rangeSelection&&N(this.ranges,s,i.index),v=this.editingCell,m=!!v&&v.row===s&&v.col===i.index,x=this.fillHandleAt,b=!!x&&x.r2===s&&x.c2===i.index,k=this.inFillPreview(s,i.index);return e("div",{class:`${i.cellClass}${c?" "+c:""}${p?" focus":""}${f?" sel":""}${m?" editing":""}${k?" fill":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"aria-selected":f?"true":void 0,"aria-readonly":this.editing&&!this.canEdit(i.index)?"true":void 0,"data-col":i.key,style:i.cellStyle,tabindex:p&&!m?0:void 0,title:d.nowrap&&!d.render?u:void 0,ref:d.render&&!m?i=>pi(i,h):void 0},b?e("span",{class:"sui-dg-fill","aria-hidden":"true",onPointerDown:this.onFillPointerDown}):null,m&&i.column.editor?e("div",{class:"sui-dg-editwrap",ref:t=>{this.editWrap=t||void 0,this.mountEditor(t,i,s)},onKeyDown:this.onEditorKeyDown,onFocusin:this.onEditorFocusIn,onFocusout:this.onEditorFocusOut}):m?e("input",{class:"sui-dg-editor",type:"text","aria-label":i.column.header,"aria-invalid":this.editError?"true":void 0,ref:i=>this.editorEl=i,onKeyDown:this.onEditorKeyDown,onInput:i=>this.editingValue=i.target.value,onBlur:this.onEditorBlur}):d.render?null:u,m&&this.editError?e("span",{class:"sui-dg-editerr",role:"alert"},this.editError):null)}fillDestination(){const i=this.fillAnchor;return this.fillFrom&&i&&null!=this.fillRow&&null!=this.fillCol?L(i,{row:this.fillRow,col:this.fillCol}):null}inFillPreview(i,t){const s=this.fillFrom,e=this.fillDestination();return!(!s||!e||i<e.r1||i>e.r2||t<e.c1||t>e.c2||I(s,i,t))}fillPreviewFrame(i){const t=this.fillFrom,s=this.fillDestination(),e=this.colModel,r=t&&s?F(t,s):null;if(!r||!e)return null;const o=r.r1,a=r.r2,n=e.all[r.c1],d=e.all[r.c2];if(!n||!d)return null;const l=i=>"end"===i?e.startWidth+e.centerWidth:"start"===i?0:e.startWidth,h=l(n.pin)+n.offset,u=l(d.pin)+d.offset+d.width,c=this.rowGeometry,g=c.offsetOf(o)-i,p=c.offsetOf(a)+c.sizeOf(a)-i-g;return p<=0||u<=h?null:{inset:h,top:g,width:u-h,height:p}}filterText(i){return{title:bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i}),valueFor:bi(void 0,"data-grid.filterValueFor",void 0,"Filter value for {column}",{column:i}),apply:xi(void 0,"data-grid.apply",void 0,"Apply"),clear:xi(void 0,"data-grid.clear",void 0,"Clear"),addCondition:xi(void 0,"data-grid.addCondition",void 0,"Add condition"),removeCondition:xi(void 0,"data-grid.removeCondition",void 0,"Remove condition"),where:xi(void 0,"data-grid.where",void 0,"Where"),and:xi(void 0,"data-grid.and",void 0,"And"),or:xi(void 0,"data-grid.or",void 0,"Or"),match:xi(void 0,"data-grid.matchConditions",void 0,"How the conditions combine"),selectAll:xi(void 0,"data-grid.selectAll",void 0,"Select all"),searchValues:xi(void 0,"data-grid.searchValues",void 0,"Search values"),noValues:xi(void 0,"data-grid.noValues",void 0,"No values match."),value:xi(void 0,"data-grid.valuePlaceholder",void 0,"Value"),from:xi(void 0,"data-grid.from",void 0,"From"),to:xi(void 0,"data-grid.to",void 0,"To"),yes:xi(void 0,"data-grid.yes",void 0,"Yes"),no:xi(void 0,"data-grid.no",void 0,"No")}}renderMenus(i){const t={id:this.menuId,closing:this.menuClosing,menuRef:i=>this.menuEl=i,onKeyDown:this.onMenuKeyDown},s=this.listUi;if(this.columnsMenuOpen)return s?e(s.ColumnList,{...t,title:xi(void 0,"data-grid.columns",void 0,"Columns"),columns:(this.columns||[]).filter((i=>!i.hidden)),hidden:new Set(this.columnLayout.hidden||[]),onToggle:this.onColumnToggle}):null;const r=this.filterUi;if(!r)return null;if(this.modeMenuKey){const s=i.byKey.get(this.modeMenuKey);if(!s)return null;const o=s.key;return e(r.ModeMenu,{...t,column:s.column,current:this.rowMode(s.column),label:bi(void 0,"data-grid.filterModeFor",void 0,"Filter mode for {column}",{column:s.column.header}),onPick:i=>this.pickRowMode(o,i)})}const o=this.filterMenuKey,a=this.filterDraftState;if(!o||!a)return null;const n=i.byKey.get(o);return n?e(r.ColumnFilterMenu,{id:this.menuId,column:n.column,draft:a,search:this.filterSearch,text:this.filterText(n.column.header),closing:this.menuClosing,menuRef:i=>this.menuEl=i,onDraft:i=>this.filterDraftState=i,onSearch:i=>this.filterSearch=i,onApply:this.applyFilter,onClear:this.clearFilter,onKeyDown:this.onMenuKeyDown,note:k(this.filterModel?.tree).has(o)?xi(void 0,"data-grid.alsoFiltered",void 0,"The advanced filter also uses this column."):void 0}):null}render(){this.syncGeometry();const i=this.colModel,t=this.viewRows(),s=this.rowGeometry,r=new Map((this.sorts||[]).map(((i,t)=>[i.key,{dir:i.dir,at:t}]))),o=Math.ceil(this.rowBand()/this.rowHeight())+1,a=C(this.metrics(),o);a!==this.rowSlots&&(this.rowSlots=a,this.rowSlotKeys=Array.from({length:a},((i,t)=>"r"+t)));const n=0===i.center.length?0:Math.min(i.center.length,this.colWin.end-this.colWin.start+8);n!==this.colSlots&&(this.colSlots=n,this.colSlotKeys=Array.from({length:n},((i,t)=>"c"+t))),this.pinStartKeys.length!==i.start.length&&(this.pinStartKeys=i.start.map((i=>"s-"+i.key))),this.pinEndKeys.length!==i.end.length&&(this.pinEndKeys=i.end.map((i=>"e-"+i.key)));let d=this.rowSlots;const{colSlotKeys:l,pinStartKeys:h,pinEndKeys:u}=this;this.updateWindow();const c=Math.max(i.totalWidth,this.viewportWidth);this.fillHandleAt=this.editingCell?null:this.editing||this.rangeSelection?this.fillSource():null;const g=this.rowWin.end-this.rowWin.start;g>this.rowSlots&&(this.rowSlots=g,this.rowSlotKeys=Array.from({length:g},((i,t)=>"r"+t)),d=g);const p=this.focusedCell;let f=!1;if(p&&p.row>=this.rowWin.start&&p.row<this.rowWin.end&&p.row<t.length){const t=i.all[p.col];if(t)if(t.pin)f=!0;else{const s=i.center.indexOf(t);f=s>=this.colWin.start&&s<this.colWin.end}}const v="row"===this.filterDisplay&&i.all.some((i=>i.column.filter)),m=this.pinnedTop?.length||0,x=this.pinnedBottom?.length||0,w=1+m+(v?1:0),M=w+1,z=M+t.length,F=w+t.length+x+(this.footerTotals?1:0),S="none"!==this.selectionMode,D=this.rowBase(),E=this.fillPreviewFrame(D);this.renderedBase=D,this.renderedStart=this.rowWin.start,this.renderedEnd=Math.min(this.rowWin.end,t.length);const A=this.cellCache,T=new Map,j=i.start.length>0,R=i.end.length>0,H=Array(d).fill(null),K=this.loading?[0,1,2,3].map((t=>e("div",{class:"sui-dg-row pending",key:"wait"+t,role:"row","aria-rowindex":M+t,"data-index":t,style:{transform:`translateY(${t*this.rowHeight()}px)`,height:this.rowHeight()+"px",width:c+"px"}},e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},e("div",{class:"sui-dg-skel",role:"gridcell","aria-colindex":1,style:{insetInlineEnd:20+12*t+"%"}}))))):null;for(let r=this.rowWin.start;!K&&r<this.rowWin.end&&r<t.length;r++){const o=this.rowSlots>0?r%this.rowSlots:0,a=t[r];if(!a){H[o]=e("div",{class:"sui-dg-row pending",key:this.rowSlotKeys[o],role:"row","aria-rowindex":M+r,"aria-busy":"true","data-index":r,style:{transform:`translateY(${s.offsetOf(r)-D}px)`,height:s.sizeOf(r)+"px",width:c+"px"}},e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},e("div",{class:"sui-dg-skel",role:"gridcell","aria-colindex":1})));continue}const n=this.keyOf(a,r),d=j?i.start.map(((i,t)=>this.cell(i,a,r,n,h[t],A,T))):null,g=Array(this.colSlots).fill(null);let p=0;for(let t=this.colWin.start;t<this.colWin.end&&t<i.center.length;t++)g[p++]=this.cell(i.center[t],a,r,n,l[this.colSlots>0?t%this.colSlots:0],A,T);const f=R?i.end.map(((i,t)=>this.cell(i,a,r,n,u[t],A,T))):null,v=this.rowClass?this.rowClass(a,r):void 0;H[o]=e("div",{class:`sui-dg-row${r%2==1?" odd":""}${S&&Z(this.selection,n)?" picked":""}${v?" "+v:""}`,key:this.rowSlotKeys[o],role:"row","aria-rowindex":M+r,"aria-selected":S?Z(this.selection,n)?"true":"false":void 0,"data-index":r,style:{transform:`translateY(${s.offsetOf(r)-D}px)`,height:s.sizeOf(r)+"px",width:c+"px"}},d?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},d):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},g),f?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},f):null)}this.cellCache=T;const $=this.filterUi,L=i=>i.map((i=>{if(!$||!i.column.filter||Vi.has(i.key))return e("div",{class:"sui-dg-fcell",key:i.key,role:"gridcell","aria-colindex":i.index+1,style:i.headerStyle});const t=this.rowMode(i.column),s=this.ruleFor(i.key)?.constraints?.[0]?.value,r=i.key;return e("div",{class:"sui-dg-fcell",key:i.key,role:"gridcell","aria-colindex":i.index+1,style:i.headerStyle},e($.RowFilterCell,{column:i.column,colKey:r,matchMode:t,value:s,changed:t!==b(i.column),open:this.modeMenuKey===r&&!this.menuClosing,text:this.rowText(i.column.header),onValue:(i,t)=>this.onRowValue(r,i,t),onModeButton:i=>this.onRowModeButton(i,r)}))})),N=(i,t,s)=>i.map((i=>e("div",{class:`${i.cellClass} ${s}`,key:i.key,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle},Vi.has(i.key)?null:t(i)))),O=(t,s,r)=>(t||[]).map(((t,o)=>e("div",{class:"sui-dg-row sui-dg-static "+s,key:`${s}-${o}`,role:"row","aria-rowindex":r+o,style:{height:this.rowHeight()+"px",width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},N(i.start,(i=>y(i.column,t)),s)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},N(i.center,(i=>y(i.column,t)),s)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},N(i.end,(i=>y(i.column,t)),s)):null))),P=k(this.filterModel?.tree),B=i=>i.map((i=>{const s=r.get(i.key);if(i.key===Ii)return e("div",{class:i.headerClass+" sui-dg-rownum",key:i.key,role:"columnheader","aria-colindex":i.index+1,"data-col":i.key,style:i.headerStyle},e("span",{class:"sui-dg-sr"},xi(void 0,"data-grid.rowNumber",void 0,"Row number")));if(i.key===Bi){const s=t.length,r=Q(this.selection,s),o=s>0&&null!=r&&r>=s,a=!o&&(null!=r&&r>0||"exclude"===this.selection.mode&&s>0),n=this.headerCol===i.index;return e("div",{class:n?i.headerClass+" focus":i.headerClass,key:i.key,role:"columnheader","aria-colindex":i.index+1,"data-col":i.key,style:i.headerStyle,tabindex:n?0:void 0},e("span",{class:o?"sui-dg-box on":a?"sui-dg-box some":"sui-dg-box",role:"checkbox","aria-checked":o?"true":a?"mixed":"false","aria-label":xi(void 0,"data-grid.selectAllRows",void 0,"Select all rows")}))}const o=!!this.ruleFor(i.key)||P.has(i.key),a=this.headerCol===i.index;return e("div",{class:`${i.headerClass}${s?" sorted":""}${a?" focus":""}${this.dragKey===i.key?" dragging":""}${this.dropKey===i.key?" drop-before":""}`,key:i.key,role:"columnheader","aria-colindex":i.index+1,"aria-sort":s?"asc"===s.dir?"ascending":"descending":i.column.sortable?"none":void 0,"data-col":i.key,title:i.column.headerTitle,style:i.headerStyle,tabindex:a?0:void 0,draggable:this.reorderableColumns,onDragStart:this.reorderableColumns?this.onHeadDragStart:void 0,onDragOver:this.reorderableColumns?this.onHeadDragOver:void 0,onDragLeave:this.reorderableColumns?this.onHeadDragLeave:void 0,onDragEnd:this.reorderableColumns?this.onHeadDragEnd:void 0,onDrop:this.reorderableColumns?this.onHeadDrop:void 0},e("span",{class:"sui-dg-hlabel"},e("span",{class:"hd"},i.column.header),s?e(Fi,{glyph:"asc"===s.dir?Ei:Ai,class:"arrow"}):null,!s&&i.column.sortable?e(Fi,{glyph:Ti,class:"rest"}):null,s&&(this.sorts||[]).length>1?e("span",{class:"ord"},s.at+1):null),"menu"===this.filterDisplay&&i.column.filter?e("button",{type:"button",class:{"sui-cf-funnel":!0,on:o},"data-col":i.key,"aria-haspopup":"dialog","aria-expanded":this.filterMenuKey!==i.key||this.menuClosing?"false":"true","aria-controls":this.filterMenuKey===i.key?this.menuId:void 0,"aria-label":o?bi(void 0,"data-grid.filterActive",void 0,"Filter {column}, filtered",{column:i.column.header}):bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i.column.header}),onClick:this.onFilterButton,onKeyDown:this.onAnchorKeyDown},e(Fi,{glyph:Di})):null,i.column.resizable?e("span",{class:"sui-dg-resizer","data-col":i.key,"aria-hidden":"true",onPointerDown:this.onHeaderPointerDown,onDblClick:this.onResizerDblClick}):null)})),I=0===t.length&&!this.loading;return e("div",{class:{"sui-dg":!0,"selection-bar":!this.hideSelectionBar,vacant:I}},this.showColumnToggle||this.hasHeaderSlot?e("div",{class:"sui-dg-bar"},e("div",{class:"sui-dg-bar-slot"},e("slot",{name:"header"})),this.showColumnToggle?e("button",{type:"button",class:"sui-dg-colbtn","aria-haspopup":"dialog","aria-expanded":this.columnsMenuOpen&&!this.menuClosing?"true":"false","aria-controls":this.columnsMenuOpen?this.menuId:void 0,onClick:this.onColumnsButton,onKeyDown:this.onAnchorKeyDown,onPointerEnter:this.listUi?void 0:this.preloadColumnList,onFocus:this.listUi?void 0:this.preloadColumnList},e(Fi,{glyph:Si}),e("span",null,xi(void 0,"data-grid.columns",void 0,"Columns"))):null):null,e("div",{class:"sui-dg-viewport",role:"grid","aria-label":this.hostLabel,"aria-labelledby":this.hostLabelledby,"aria-rowcount":F,"aria-colcount":i.all.length,"aria-busy":this.loading?"true":void 0,tabindex:f||this.headerCol>=0?-1:0,ref:i=>this.viewportEl=i,onScroll:this.onScroll,onMouseDown:this.onPointerDown,onContextMenu:this.onContextMenu,onPaste:this.onNativePaste,onDblClick:this.onDblClick,onKeyDown:this.onKeyDown},e("div",{class:"sui-dg-head",role:"rowgroup",style:{width:c+"px"},onClick:this.onHeaderClick,onPointerEnter:"menu"!==this.filterDisplay||$?void 0:this.preloadFilterUi,onFocusin:"menu"!==this.filterDisplay||$?void 0:this.preloadFilterUi},e("div",{class:"sui-dg-hrow",role:"row","aria-rowindex":1,style:{width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},B(i.start)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},B(i.center)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},B(i.end)):null),this.pinnedTop?.length?e("div",{class:"sui-dg-pinned top",role:"none"},O(this.pinnedTop,"pinned",2)):null,v?e("div",{class:"sui-dg-frow",role:"row","aria-rowindex":w,style:{width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},L(i.start)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},L(i.center)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},L(i.end)):null):null),e("div",{class:"sui-dg-sticky",role:I?"presentation":"rowgroup"},e("div",{class:"sui-dg-layer",role:"presentation",ref:i=>this.layerEl=i,style:{width:c+"px"}},K||H,E?e("div",{class:"sui-dg-fillbox",style:{insetInlineStart:E.inset+"px",top:E.top+"px",width:E.width+"px",height:E.height+"px"}}):null)),e("div",{class:"sui-dg-body",role:"presentation",style:{width:c+"px",height:this.scrollSpace.physicalExtent+"px"}}),this.pinnedBottom?.length||this.footerTotals?e("div",{class:"sui-dg-foot",role:"rowgroup",style:{width:c+"px"}},O(this.pinnedBottom,"pinned",z),(t=>{const s=this.footerTotals;if(!s)return null;const r=i=>s[i.key]||"";return e("div",{class:"sui-dg-row sui-dg-static total",role:"row","aria-rowindex":t,style:{height:this.rowHeight()+"px",width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},N(i.start,r,"total")):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},N(i.center,r,"total")),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},N(i.end,r,"total")):null)})(z+x)):null,e("div",{class:{"sui-dg-guide":!0,on:this.resizing},ref:i=>this.guideEl=i,"aria-hidden":"true"})),e("div",{key:"status",class:"sui-dg-status",role:"status"},this.loading?e("span",{class:"sui-dg-sr"},xi(void 0,"data-grid.loading",void 0,"Loading")):null,I?e("div",{class:"sui-dg-empty"},e("slot",{name:"empty"},this.emptyText())):null),this.renderMenus(i))}static get watchers(){return{columns:[{onModelChange:0}],density:[{onModelChange:0}],rows:[{onModelChange:0}],pinnedTop:[{onChromeChange:0}],pinnedBottom:[{onChromeChange:0}],footerTotals:[{onChromeChange:0}],filterDisplay:[{onChromeChange:0},{onFilterDisplayChange:0}],columnLayout:[{onLayoutChange:0}],sorts:[{onOrderChange:0}],filterModel:[{onOrderChange:0}],nullOrder:[{onOrderChange:0}]}}static get style(){return".sc-sui-data-grid-h{display:block;min-width:0;height:100%;min-height:0;font-family:var(--font-sans);color:var(--ink)}.sui-dg.sc-sui-data-grid{--dg-cell-x:var(--table-cell-x);--dg-flip:1;height:100%;min-height:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}[density='compact'].sc-sui-data-grid-h .sui-dg.sc-sui-data-grid{--dg-cell-x:var(--space-2)}.sc-sui-data-grid-h:dir(rtl) .sui-dg.sc-sui-data-grid{--dg-flip:-1}.sui-dg-viewport.sc-sui-data-grid{position:relative;user-select:none;flex:1;min-height:0;overflow:auto;overflow-anchor:none;overscroll-behavior-x:contain}.sui-dg-viewport.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.sui-dg-head.sc-sui-data-grid{position:sticky;top:0;z-index:4;background:var(--surface-sunken);border-bottom:1px solid var(--border)}.sui-dg-hrow.sc-sui-data-grid{position:relative;display:flex;height:var(--sui-dg-header-h, 34px)}.sui-dg-pane.sc-sui-data-grid{position:relative;flex:0 0 auto;height:100%}.sui-dg-pane.pin-start.sc-sui-data-grid{position:sticky;inset-inline-start:0;z-index:1;background:inherit}.sui-dg-pane.pin-end.sc-sui-data-grid{position:sticky;inset-inline-end:0;z-index:1;background:inherit}.sui-dg-pane.pin-start.sc-sui-data-grid::after,.sui-dg-pane.pin-end.sc-sui-data-grid::before{content:'';position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}.sui-dg-pane.pin-start.sc-sui-data-grid::after{inset-inline-end:0}.sui-dg-pane.pin-end.sc-sui-data-grid::before{inset-inline-start:0}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.pin-start.sc-sui-data-grid::after{box-shadow:calc(3px * var(--dg-flip)) 0 6px -3px color-mix(in srgb, var(--ink) 22%, transparent)}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.pin-end.sc-sui-data-grid::before{box-shadow:calc(-3px * var(--dg-flip)) 0 6px -3px color-mix(in srgb, var(--ink) 22%, transparent)}.sui-dg-hcell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 var(--dg-cell-x);box-sizing:border-box;font-size:11px;font-weight:650;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;overflow:hidden;user-select:none}.sui-dg-hcell.sc-sui-data-grid::after{content:'';position:absolute;inset-inline-end:0;top:6px;bottom:6px;width:1px;background:var(--border)}.sui-dg-hcell.sc-sui-data-grid:last-child::after{display:none}.sui-dg-hcell.dragging.sc-sui-data-grid{opacity:0.5}.sui-dg-hcell.drop-before.sc-sui-data-grid::before{content:'';position:absolute;inset-block:4px;inset-inline-start:0;width:2px;border-radius:1px;background:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-ink) 25%, transparent);pointer-events:none}.sui-dg-hlabel.sc-sui-data-grid{display:flex;align-items:center;flex:1 1 auto;min-width:0;height:100%}.sui-dg-hcell.sc-sui-data-grid .hd.sc-sui-data-grid{min-width:0;overflow:hidden;text-overflow:ellipsis}.sui-dg-hcell.al-right.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid,.sui-dg-hcell.al-end.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-end}.sui-dg-hcell.al-center.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:center}.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-right.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-start}.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-left.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-end}.sui-dg-hcell.sc-sui-data-grid .sui-cf-funnel.sc-sui-data-grid{margin-inline-end:min(0px, calc(8px - var(--dg-cell-x)))}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid,.sui-dg-hcell.sc-sui-data-grid .sui-glyph.arrow.sc-sui-data-grid{flex-shrink:0;margin-inline-start:5px;font-size:9px;transition:color var(--duration-fast) var(--ease-out)}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid{visibility:hidden;color:var(--border-strong);transform:rotate(90deg)}.sui-dg-hcell.sc-sui-data-grid:hover .sui-glyph.rest.sc-sui-data-grid,[sort-indicator='all'].sc-sui-data-grid-h .sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid{visibility:visible}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.arrow.sc-sui-data-grid{color:var(--ink-muted)}.sui-dg-hcell.sc-sui-data-grid .ord.sc-sui-data-grid{flex-shrink:0;min-width:14px;margin-inline-start:4px;padding:0 3px;border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-soft-ink);font-size:9.5px;line-height:14px;text-align:center}.sui-dg-body.sc-sui-data-grid{position:relative;pointer-events:none}.sui-dg-sticky.sc-sui-data-grid{position:sticky;top:0;height:0;overflow:visible;z-index:1;isolation:isolate}.sui-dg-layer.sc-sui-data-grid{position:absolute;top:0;inset-inline-start:0}.sui-dg-row.sc-sui-data-grid{position:absolute;top:0;inset-inline-start:0;display:flex;box-sizing:border-box;background:var(--surface);contain:layout style}.sui-dg-row.sc-sui-data-grid::after{content:'';position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--hairline);pointer-events:none}.sui-dg-row.odd.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-row.sc-sui-data-grid:hover{background:color-mix(in srgb, var(--surface-sunken) 70%, var(--brand-soft))}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-cell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;padding:0 var(--dg-cell-x);font-size:var(--text-md);font-weight:460;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sui-dg-cell.al-right.sc-sui-data-grid,.sui-dg-hcell.al-right.sc-sui-data-grid{justify-content:flex-end;text-align:right}.sui-dg-cell.al-end.sc-sui-data-grid,.sui-dg-hcell.al-end.sc-sui-data-grid{justify-content:flex-end;text-align:end}.sui-dg-cell.al-center.sc-sui-data-grid,.sui-dg-hcell.al-center.sc-sui-data-grid{justify-content:center;text-align:center}.sc-sui-data-grid-h:dir(rtl) .sui-dg-cell.al-right.sc-sui-data-grid,.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-right.sc-sui-data-grid{justify-content:flex-start}.sc-sui-data-grid-h:dir(rtl) .sui-dg-cell.al-left.sc-sui-data-grid,.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-left.sc-sui-data-grid{justify-content:flex-end;text-align:left}.sui-dg-cell.money.sc-sui-data-grid{font-weight:640}.sui-dg-cell.num.sc-sui-data-grid{font-feature-settings:var(--numeric-tabular)}.sui-dg-cell.muted.sc-sui-data-grid{color:var(--ink-muted)}.sui-dg-cell.focus.sc-sui-data-grid{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0;z-index:1}.sui-dg-cell.sc-sui-data-grid:focus{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0}.sui-dg-hcell.focus.sc-sui-data-grid,.sui-dg-hcell.sc-sui-data-grid:focus{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0;z-index:1}.sui-dg-sr.sc-sui-data-grid{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.sui-dg-status.sc-sui-data-grid{position:relative;flex:none}.sui-dg.vacant.sc-sui-data-grid .sui-dg-viewport.sc-sui-data-grid{flex:none}.sui-dg.vacant.sc-sui-data-grid .sui-dg-status.sc-sui-data-grid{flex:1;min-height:0;overflow:auto}.sui-dg-empty.sc-sui-data-grid{padding:40px 16px;text-align:center;font-size:var(--text-md);font-weight:620;color:var(--ink-muted)}[density='compact'].sc-sui-data-grid-h .sui-dg-cell.sc-sui-data-grid{font-size:13px}[density='comfortable'].sc-sui-data-grid-h .sui-dg-hrow.sc-sui-data-grid{height:40px}.sui-dg-cell.editing.sc-sui-data-grid{padding:0;overflow:hidden;z-index:2}.sui-dg-cell.editing.sc-sui-data-grid:has(.sui-dg-editerr){overflow:visible}.sui-dg-editor.sc-sui-data-grid{user-select:text;width:100%;height:100%;box-sizing:border-box;margin:0;padding:0 var(--dg-cell-x);border:0;border-radius:0;background:transparent;color:inherit;font:inherit;font-feature-settings:inherit;box-shadow:none;outline:none}.sui-dg-editor.sc-sui-data-grid:not([type='date']){appearance:none;-webkit-appearance:none}.sui-dg-editor.sc-sui-data-grid::-webkit-outer-spin-button,.sui-dg-editor.sc-sui-data-grid::-webkit-inner-spin-button{appearance:none;margin:0}.sui-dg-editor[type='number'].sc-sui-data-grid{-moz-appearance:textfield}.sui-dg-cell.al-right.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:right}.sui-dg-cell.al-left.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:left}.sui-dg-cell.al-end.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:end}.sui-dg-cell.al-center.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:center}.sui-dg-editwrap.sc-sui-data-grid{display:block;width:100%;height:100%}.sui-dg-editerr.sc-sui-data-grid{position:absolute;top:100%;inset-inline-start:0;z-index:3;max-width:320px;margin-top:2px;padding:4px var(--dg-cell-x);border-radius:var(--radius-sm);background:var(--danger);color:var(--on-danger);font-size:var(--text-xs);line-height:var(--leading-snug);box-shadow:var(--shadow-pop);white-space:normal}.sui-dg-cell.sel.sc-sui-data-grid{background:var(--brand-soft)}.sui-dg-resizer.sc-sui-data-grid{position:absolute;top:0;bottom:0;inset-inline-end:0;width:8px;cursor:col-resize;z-index:2;touch-action:none}.sui-dg-resizer.sc-sui-data-grid:hover::after{content:'';position:absolute;top:4px;bottom:4px;inset-inline-end:0;width:1px;background:var(--accent)}.sui-dg-guide.sc-sui-data-grid{position:absolute;top:0;bottom:0;width:1px;background:var(--accent);pointer-events:none;display:none;z-index:4}.sui-dg-guide.on.sc-sui-data-grid{display:block}.sui-dg-row.pending.sc-sui-data-grid{pointer-events:none}.sui-dg-skel.sc-sui-data-grid{position:absolute;top:50%;inset-inline:var(--dg-cell-x);height:11px;margin-top:-5.5px;border-radius:4px;background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-dg-skel.sc-sui-data-grid{animation-duration:3s}}.sui-dg-row.sc-sui-data-grid:has(.sui-dg-fill){z-index:1}.sui-dg-cell.sc-sui-data-grid:has(.sui-dg-fill){overflow:visible;z-index:2}.sui-dg-fill.sc-sui-data-grid{position:absolute;inset-inline-end:-2px;bottom:-1px;width:7px;height:7px;background:var(--accent);border:1px solid var(--surface);border-radius:1px;cursor:crosshair;z-index:3;touch-action:none}.sui-dg-cell.fill.sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 55%, transparent)}.sui-dg-fillbox.sc-sui-data-grid{position:absolute;box-sizing:border-box;border:2px dashed var(--accent);pointer-events:none;z-index:2}.sui-dg-box.sc-sui-data-grid{width:18px;height:18px;border:1.5px solid color-mix(in srgb, var(--control-border) 75%, var(--ink));border-radius:var(--radius-xs);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out)}.sui-dg-box.on.sc-sui-data-grid,.sui-dg-box.some.sc-sui-data-grid{background:var(--brand);border-color:var(--brand)}.sui-dg-box.on.sc-sui-data-grid::after{content:'';width:4px;height:8px;margin-top:-2px;border:solid var(--brand-contrast);border-width:0 2px 2px 0;transform:rotate(45deg)}.sui-dg-box.some.sc-sui-data-grid::after{content:'';width:8px;height:2px;background:var(--brand-contrast)}.sui-dg-hcell.sc-sui-data-grid .sui-dg-box.sc-sui-data-grid{cursor:pointer}.sui-dg-cell[data-col='__sui-select'].sc-sui-data-grid{cursor:pointer}.sui-dg-hcell[data-col='__sui-select'].sc-sui-data-grid{cursor:pointer}.sui-dg-hcell[data-col='__sui-select'].sc-sui-data-grid::after{display:none}.sui-dg-cell.sui-dg-rownum.sc-sui-data-grid{justify-content:center;padding:0 6px;background:var(--surface-sunken);color:var(--ink-faint);font-size:var(--text-xs);font-weight:500;font-feature-settings:var(--numeric-tabular);box-shadow:inset calc(-1px * var(--dg-flip)) 0 0 var(--border);cursor:default}.sui-dg-cell.sui-dg-rownum.cur.sc-sui-data-grid{color:var(--ink);font-weight:650}.sui-dg-cell.sui-dg-rownum.on.sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 75%, var(--surface-sunken));color:var(--ink)}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{cursor:default}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid::after{display:none}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{box-shadow:inset calc(-1px * var(--dg-flip)) 0 0 var(--border)}.sui-dg-row.picked.sc-sui-data-grid{--ink-muted:var(--ink-muted-on-wash);--ink-faint:var(--ink-muted);background:linear-gradient(var(--surface-selected) 0 0) var(--surface)}.sui-dg-row.picked.sc-sui-data-grid:hover{--ink-faint:var(--ink-muted);background:linear-gradient(var(--surface-hover) 0 0), linear-gradient(var(--surface-selected) 0 0) var(--surface)}.selection-bar.sc-sui-data-grid .sui-dg-row.picked.sc-sui-data-grid>.sui-dg-pane.sc-sui-data-grid:first-child::before{content:'';position:absolute;inset-block:0;inset-inline-start:0;width:3px;z-index:2;background:var(--accent);pointer-events:none}.sui-dg-bar.sc-sui-data-grid{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-bar-slot.sc-sui-data-grid{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.sui-dg-colbtn.sc-sui-data-grid{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;height:var(--control-sm);padding:0 10px;border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:600 12.5px var(--font-sans);cursor:pointer}.sui-dg-colbtn.sc-sui-data-grid:hover{border-color:color-mix(in srgb, var(--ink) 30%, var(--control-border));background:var(--brand-soft)}.sui-dg-colbtn[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 84%, var(--ink))}.sui-dg-colbtn.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.sui-dg-colbtn.sc-sui-data-grid .sui-glyph.sc-sui-data-grid{font-size:11px;color:var(--icon-color)}.sui-dg-frow.sc-sui-data-grid{display:flex;height:calc(var(--control-sm) + 8px);box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-fcell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;padding:4px var(--dg-cell-x)}.sui-dg-fcell.sc-sui-data-grid .sui-cf-rowgroup.sc-sui-data-grid{user-select:text}.sui-dg-static.sc-sui-data-grid{position:relative;display:flex;background:var(--surface)}.sui-dg-static.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{position:absolute;top:0;bottom:0}.sui-dg-pinned.top.sc-sui-data-grid{box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-static.pinned.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-foot.sc-sui-data-grid{position:sticky;bottom:0;z-index:4;background:var(--surface);box-shadow:inset 0 1px 0 var(--hairline)}.sui-dg-static.total.sc-sui-data-grid{background:var(--surface);font-weight:650}.sui-dg-static.total.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{color:var(--ink)}@media (forced-colors: active){.sui-dg-hcell.drop-before.sc-sui-data-grid::before{forced-color-adjust:none;background:Highlight}.sui-dg-pane.pin-start.sc-sui-data-grid::after,.sui-dg-pane.pin-end.sc-sui-data-grid::before{background:CanvasText}.sui-dg-hcell.sc-sui-data-grid::after{background:CanvasText}.sui-dg-hcell.sc-sui-data-grid .ord.sc-sui-data-grid{border:1px solid CanvasText}.sui-dg-row.sc-sui-data-grid::after{background:CanvasText}.sui-dg-editerr.sc-sui-data-grid{border:1px solid CanvasText}.sui-dg-cell.sel.sc-sui-data-grid{outline:2px solid Highlight;outline-offset:-4px}.sui-dg-cell.sel.focus.sc-sui-data-grid,.sui-dg-cell.sel.sc-sui-data-grid:focus{outline-color:CanvasText}.sui-dg-resizer.sc-sui-data-grid:hover::after{background:CanvasText}.sui-dg-guide.sc-sui-data-grid{background:Highlight}.sui-dg-skel.sc-sui-data-grid{box-sizing:border-box;border:1px solid GrayText}.sui-dg-fill.sc-sui-data-grid{background:Highlight;border-color:Canvas}.sui-dg-fillbox.sc-sui-data-grid{border-color:Highlight}.sui-dg-box.some.sc-sui-data-grid::after{background:CanvasText}.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{outline:2px solid Highlight;outline-offset:-4px}.selection-bar.sc-sui-data-grid .sui-dg-row.picked.sc-sui-data-grid>.sui-dg-pane.sc-sui-data-grid:first-child::before{forced-color-adjust:none;background:Highlight}.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.focus.sc-sui-data-grid,.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid:focus{outline-color:CanvasText}.sui-dg-bar.sc-sui-data-grid,.sui-dg-frow.sc-sui-data-grid{border-bottom:1px solid CanvasText}.sui-dg-foot.sc-sui-data-grid{border-top:1px solid CanvasText}.sui-dg-cell.sui-dg-rownum.sc-sui-data-grid,.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{box-shadow:none;border-inline-end:1px solid CanvasText}}.sui-cf.sc-sui-data-grid{position:fixed;top:0;left:0;z-index:var(--z-dropdown);box-sizing:border-box;width:280px;max-width:calc(100vw - 16px);max-height:min(78vh, 560px);overflow:auto;overscroll-behavior:contain;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-pop);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-md);font-weight:460;letter-spacing:normal;text-transform:none;text-align:start;white-space:normal;user-select:text;cursor:auto;animation:sui-cf-in var(--duration-overlay) var(--ease-out)}.sui-cf[data-side='top'].sc-sui-data-grid{animation-name:sui-cf-in-top}.sui-cf.closing.sc-sui-data-grid{animation:sui-cf-out var(--duration-fast) var(--ease-out) forwards;pointer-events:none}@keyframes sui-cf-in{from{opacity:0;margin-top:-4px}}@keyframes sui-cf-in-top{from{opacity:0;margin-top:4px}}@keyframes sui-cf-out{to{opacity:0}}.sui-cf-body.sc-sui-data-grid{display:flex;flex-direction:column;gap:10px}.sui-cf-note.sc-sui-data-grid{margin:-6px 0 12px;font-size:12px;line-height:1.4;color:var(--ink-muted)}.sui-cf-title.sc-sui-data-grid{margin-bottom:12px;font-size:13px;font-weight:650;line-height:1.3;color:var(--ink)}.sui-cf.sui-cf-menu.sc-sui-data-grid{width:440px}.sui-cf-rows.sc-sui-data-grid{display:flex;flex-direction:column;gap:8px}.sui-cf-row.sc-sui-data-grid{display:grid;grid-template-columns:68px minmax(0, 132px) minmax(0, 1fr) 28px;align-items:center;gap:6px;min-width:0}.sui-cf-join.sc-sui-data-grid{display:flex;align-items:center;min-width:0;font-size:12.5px;font-weight:600;color:var(--ink-muted)}.sui-cf-join.muted.sc-sui-data-grid{font-weight:500;color:var(--ink-muted);padding-inline-start:11px}.sui-cf-joinsel.sc-sui-data-grid{width:100%}.sui-cf-val.sc-sui-data-grid{min-width:0}.sui-cf-val.sc-sui-data-grid>*.sc-sui-data-grid{width:100%}.sui-cf-value.sc-sui-data-grid{min-inline-size:0}.sui-cf-pair.sc-sui-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.sui-cf-remove.sc-sui-data-grid,.sui-cf-remove-slot.sc-sui-data-grid{justify-self:end}.sui-cf-remove-slot.sc-sui-data-grid{width:28px}.sui-cf-add.sc-sui-data-grid{align-self:flex-start;margin-inline-start:-8px}.sui-cf-add-glyph.sc-sui-data-grid{order:-1;font-size:11px}@media (max-width: 480px){.sui-cf-row.sc-sui-data-grid{grid-template-columns:60px minmax(0, 1fr) 28px;grid-template-areas:'join mode remove' '. val .';row-gap:6px}.sui-cf-row.sc-sui-data-grid>.sui-cf-join.sc-sui-data-grid{grid-area:join}.sui-cf-row.sc-sui-data-grid>.sui-cf-mode.sc-sui-data-grid{grid-area:mode}.sui-cf-row.sc-sui-data-grid>.sui-cf-val.sc-sui-data-grid{grid-area:val}.sui-cf-row.sc-sui-data-grid>.sui-cf-remove.sc-sui-data-grid,.sui-cf-row.sc-sui-data-grid>.sui-cf-remove-slot.sc-sui-data-grid{grid-area:remove}}.sui-cf-all.sc-sui-data-grid{align-self:stretch;padding-bottom:8px;border-bottom:1px solid var(--hairline)}.sui-cf-opt.sc-sui-data-grid{align-self:flex-start}.sui-cf-list.sc-sui-data-grid{display:flex;flex-direction:column;gap:8px;max-height:232px;overflow:auto;margin-inline:-4px;padding:2px 4px}.sui-cf-body.sc-sui-data-grid>.sui-cf-all.sc-sui-data-grid+.sui-cf-list.sc-sui-data-grid{margin-top:-2px}.sui-cf-none.sc-sui-data-grid{padding:6px 0;font-size:12.5px;color:var(--ink-faint)}.sui-cf-bar.sc-sui-data-grid{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:11px;border-top:1px solid var(--border)}.sui-cf-clear.sc-sui-data-grid{appearance:none;margin:0;padding:0;border:0;background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:12.5px;font-weight:620;color:var(--ink-muted)}.sui-cf-clear.sc-sui-data-grid:hover{color:var(--ink)}.sui-cf-clear.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow);border-radius:var(--radius-xs)}.sui-cf-rowgroup.sc-sui-data-grid{display:block;width:100%;min-width:0;--sui-field-chevron:none}.sui-cf-rowbox.sc-sui-data-grid{min-width:0;padding-inline:8px;text-overflow:ellipsis}.sui-cf-rowbox.sc-sui-data-grid::placeholder{color:var(--ink-placeholder)}.sui-cf-rowbox.sc-sui-data-grid:disabled{background:var(--disabled-bg)}.sui-cf-rowpick.sc-sui-data-grid{min-width:0}.sui-cf-modebtn.sc-sui-data-grid{flex:none;color:var(--ink-faint)}.sui-cf-token.sc-sui-data-grid{font-size:15px;font-weight:600;line-height:1;white-space:nowrap;color:var(--ink-muted)}.sui-cf-token.word.sc-sui-data-grid{font-size:11px;font-weight:650;letter-spacing:-0.01em}.sui-cf-modebtn.on.sc-sui-data-grid{background:var(--accent-soft)}.sui-cf-modebtn.on.sc-sui-data-grid .sui-cf-token.sc-sui-data-grid{color:var(--accent-soft-ink)}.sui-cf.sui-cf-modes.sc-sui-data-grid{width:auto;min-width:190px;padding:4px}.sui-cf-funnel.sc-sui-data-grid{flex:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:22px;height:22px;margin:0;margin-inline-start:4px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-faint);font-size:10px;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out)}.sui-cf-funnel.sc-sui-data-grid:hover{background:var(--surface-hover);color:var(--ink)}.sui-cf-funnel[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--ink) 9%, transparent);color:var(--ink)}.sui-cf-funnel.on.sc-sui-data-grid{background:var(--accent-soft);color:var(--accent-mark)}.sui-cf-funnel.on.sc-sui-data-grid:hover,.sui-cf-funnel.on[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--accent-soft) 80%, var(--accent-mark));color:var(--accent-mark)}.sui-cf-funnel.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}@media (forced-colors: active){.sui-cf.sc-sui-data-grid{border:1px solid CanvasText}.sui-cf-bar.sc-sui-data-grid,.sui-cf-all.sc-sui-data-grid{border-color:CanvasText}.sui-cf-funnel.on.sc-sui-data-grid{forced-color-adjust:none;background:Highlight;color:HighlightText}.sui-cf-funnel.on.sc-sui-data-grid:focus-visible{outline-color:CanvasText}.sui-cf-modebtn.on.sc-sui-data-grid{forced-color-adjust:none;background:Highlight}.sui-cf-modebtn.on.sc-sui-data-grid .sui-cf-token.sc-sui-data-grid{color:HighlightText}}"}},[774,"sui-data-grid",{columns:[16],rows:[16],rowKey:[16],density:[513],hideSelectionBar:[516,"hide-selection-bar"],rowHeights:[16],overscan:[2],emptyMessage:[1,"empty-message"],emptyFilterMessage:[1,"empty-filter-message"],focusedCell:[1040],sorts:[1040],sortMode:[513,"sort-mode"],sortIndicator:[513,"sort-indicator"],nullOrder:[1537,"null-order"],filterModel:[1040],columnLayout:[1040],selectionMode:[513,"selection-mode"],selection:[1040],rangeSelection:[516,"range-selection"],copyFormulas:[516,"copy-formulas"],editMode:[513,"edit-mode"],loading:[516],stateKey:[1,"state-key"],stateStorage:[513,"state-storage"],pinnedTop:[16],pinnedBottom:[16],footerTotals:[16],rowClass:[16],reorderableColumns:[516,"reorderable-columns"],showColumnToggle:[516,"show-column-toggle"],rowNumbers:[516,"row-numbers"],filterDisplay:[513,"filter-display"],windowRevision:[32],viewportWidth:[32],viewportHeight:[32],focusRevision:[32],headerCol:[32],ranges:[32],editingCell:[32],resizing:[32],fillRow:[32],fillCol:[32],selectionRev:[32],dragKey:[32],dropKey:[32],columnsMenuOpen:[32],filterUi:[32],listUi:[32],filterMenuKey:[32],filterDraftState:[32],filterSearch:[32],menuClosing:[32],hasHeaderSlot:[32],hostLabel:[32],hostLabelledby:[32],modeMenuKey:[32],rowModes:[32],editError:[32],scrollToRow:[64],focusCell:[64],setFocus:[64],exportCsv:[64],getViewport:[64],autosizeColumn:[64],setFilter:[64],paste:[64],copy:[64],undo:[64],redo:[64],cut:[64]},void 0,{columns:[{onModelChange:0}],density:[{onModelChange:0}],rows:[{onModelChange:0}],pinnedTop:[{onChromeChange:0}],pinnedBottom:[{onChromeChange:0}],footerTotals:[{onChromeChange:0}],filterDisplay:[{onChromeChange:0},{onFilterDisplayChange:0}],columnLayout:[{onLayoutChange:0}],sorts:[{onOrderChange:0}],filterModel:[{onOrderChange:0}],nullOrder:[{onOrderChange:0}]}]),Gi=Wi,Yi=function(){"undefined"!=typeof customElements&&["sui-data-grid"].forEach((i=>{"sui-data-grid"===i&&(customElements.get(r(i))||customElements.define(r(i),Wi))}))};export{Gi as SuiDataGrid,Yi as defineCustomElement}
|
|
1
|
+
import{p as i,H as t,c as s,h as e,t as r}from"./p-CeVlau-G.js";import{S as o,s as a,r as n,g as d,D as l,u as h,E as u,l as c,m as g,n as p,t as f,h as v,j as m,k as x,i as b,e as w,o as y,q as k,G as C,M,H as z}from"./p-CaekSnKG.js";import{u as F,b as S,w as E,S as A,e as D,x as T,f as j,g as R,h as H,y as K,z as $,A as L,B as N,k as O,l as P,j as B,C as I,m as V,o as W,D as G,v as Y,E as U,F as _,G as X,H as q,I as J,i as Z,J as Q,q as ii}from"./p-C5TSOOMd.js";import{o as ti,a as si,b as ei,c as ri,g as oi,m as ai,l as ni,p as di,t as li,r as hi,i as ui}from"./p-DsHK25q3.js";import{h as ci}from"./p-B1-k9bVs.js";import{c as gi,m as pi}from"./p-q0JbXN8q.js";import{s as fi,a as vi,i as mi}from"./p-GAnFXayY.js";import{a as xi,l as bi}from"./p-BuyjS5bS.js";import{u as wi}from"./p-U06fVoGD.js";import{i as yi,a as ki}from"./p-wknHx00K.js";import{d as Ci}from"./p-BHB1Wprj.js";import{o as Mi,a as zi}from"./p-BWkzTEZX.js";import{G as Fi,N as Si,F as Ei,h as Ai,j as Di,M as Ti}from"./p-BeYfX4rQ.js";const ji=/^-?\d+(?:\.\d+)?$/,Ri=/^(.*?)(\d+)$/,Hi=/^(\d{4})-(\d{2})-(\d{2})$/;function Ki(i){if(i.length<2)return null;const t=i[1]-i[0];for(let s=2;s<i.length;s++)if(Math.abs(i[s]-i[s-1]-t)>Math.max(1e-9,1e-9*Math.abs(t)))return null;return t}function $i(i){const t=Hi.exec(i.trim());if(!t)return null;const s=Date.UTC(Number(t[1]),Number(t[2])-1,Number(t[3]));return Number.isNaN(s)?null:Math.round(s/864e5)}function Li(i){const t=new Date(864e5*i),s=i=>(i+"").padStart(2,"0");return`${t.getUTCFullYear()}-${s(t.getUTCMonth()+1)}-${s(t.getUTCDate())}`}function Ni(i,t){const s=t.indexOf("."),e=s<0?0:t.length-s-1;return e>0?i.toFixed(e):Math.round(i)+""}function Oi(i,t,s="forward"){const e=Math.max(0,Math.floor(t)||0);if(0===e||0===i.length)return[];const r="backward"===s,o=function(i,t){const s=[],e=function(i){const t=[];for(const s of i){if(!ji.test(s.trim()))return null;t.push(Number(s.trim()))}const s=Ki(t);return null==s?null:{values:t,step:s}}(i);if(e){const r=e.values[e.values.length-1],o=i[i.length-1].trim();for(let i=1;i<=t;i++)s.push(Ni(r+e.step*i,o));return s}const r=i.map($i);if(r.every((i=>null!=i))){const i=r,e=i.length>=2?Ki(i):1;if(null!=e){const r=i[i.length-1];for(let i=1;i<=t;i++)s.push(Li(r+e*i));return s}}const o=i.map((i=>Ri.exec(i)));if(o.every((i=>null!=i))){const i=o,e=i[0][1];if(""!==e&&"-"!==e&&i.every((i=>i[1]===e))){const r=i.map((i=>Number(i[2]))),o=i.length>=2?Ki(r):1;if(null!=o){const a=r[r.length-1],n=i[i.length-1][2].length;for(let i=1;i<=t;i++){const t=a+o*i;s.push(e+(t<0?"-"+(Math.abs(t)+"").padStart(n,"0"):(t+"").padStart(n,"0")))}return s}}}for(let e=0;e<t;e++)s.push(i[e%i.length]);return s}(r?i.slice().reverse():i.slice(),e);return r?o.reverse():o}const Pi={compact:30,standard:36,comfortable:44},Bi="__sui-select",Ii="__sui-rownum",Vi=new Set([Bi,Ii]),Wi=i(class extends t{constructor(i){super(),!1!==i&&this.__registerHost(),this.suiViewport=s(this,"suiViewport",3),this.suiCellFocus=s(this,"suiCellFocus",3),this.suiCellActivate=s(this,"suiCellActivate",7),this.suiSort=s(this,"suiSort",3),this.suiRangeChange=s(this,"suiRangeChange",3),this.suiCellEdit=s(this,"suiCellEdit",7),this.suiSelectionChange=s(this,"suiSelectionChange",3),this.suiColumnLayoutChange=s(this,"suiColumnLayoutChange",3),this.suiFilter=s(this,"suiFilter",3),this.suiCellContextMenu=s(this,"suiCellContextMenu",7),this.suiCut=s(this,"suiCut",7),this.suiCopy=s(this,"suiCopy",7),this.suiCopyError=s(this,"suiCopyError",7),this.suiFill=s(this,"suiFill",7),this.suiPaste=s(this,"suiPaste",7)}get host(){return this}columns=[];rows=[];rowKey;density="standard";hideSelectionBar=!1;rowHeights;overscan=6;emptyMessage;emptyFilterMessage;focusedCell;sorts=[];sortMode="single";sortIndicator="sorted";nullOrder="last";filterModel;columnLayout={};selectionMode="none";selection=S();rangeSelection=!1;copyFormulas=!1;editMode="none";loading=!1;stateKey;stateStorage="session";pinnedTop;pinnedBottom;footerTotals;rowClass;reorderableColumns=!1;showColumnToggle=!1;rowNumbers=!1;filterDisplay="none";suiViewport;suiCellFocus;suiCellActivate;suiSort;suiRangeChange;suiCellEdit;suiSelectionChange;suiColumnLayoutChange;suiFilter;suiCellContextMenu;suiCut;suiCopy;suiCopyError;suiFill;suiPaste;windowRevision=0;viewportWidth=0;viewportHeight=0;focusRevision=0;headerCol=-1;dragAnchor;ranges=E();editingCell;resizing=!1;fillRow;fillCol;viewportEl;layerEl;headerH=0;footerH=0;originY=0;pendingMeasure=!1;renderedBase=0;renderedStart=0;renderedEnd=0;resizeObserver;clipAt="";viewTop=0;viewStart=0;lastViewTop=0;lastScrollAt=0;velocity=0;rowGeometry=new o;scrollSpace=new A;colModel;colWidthAt=-1;colCountAt=-1;colLayoutAt=-1;colModeAt="";augmented;layoutRev=0;selectionRev=0;rowWin={start:0,end:0};colWin={start:0,end:0};reported;pendingFocus=!1;selectAnchor;focusedKey;pendingEditor;editingValue="";guideEl;resizeKey;undoStack=[];redoStack=[];sourceMap;pasteFallback;dragKey;dropKey;columnsMenuOpen=!1;filterUi;listUi;menuTicket=0;filterMenuKey;filterDraftState;filterSearch="";menuClosing=!1;hasHeaderSlot=!1;stopSlots;hostLabel;hostLabelledby;stopHostLabel;stopHostLabelledby;modeMenuKey;rowModes={};rowTimers=new Map;loaded=!1;menuAnchor;menuEl;menuFocusPending=!1;stopOutside;stopReposition;stopEscape;demoteMenu;menuExit=ti((()=>this.finishMenu()));menuId=wi("sui-dg-menu");resizeFromX=0;resizeFromW=0;resizeFrameX=0;resizeSign=1;fillFrom;fillAnchor;fillRanges;fillBodyY=0;fillPointerId;fillClientX=0;fillClientY=0;fillListening=!1;fillHandleAt=null;pendingEditorSelectAll=!1;editorEl;customEditorEl;editWrap;editorFocus=ci({parts:()=>[this.editWrap],leave:()=>{this.editingCell&&this.endEdit(!0)}});editError;rowSlots=0;colSlots=0;rowSlotKeys=[];colSlotKeys=[];pinStartKeys=[];pinEndKeys=[];cellCache=new Map;connectedCallback(){this.stopSlots?.(),this.stopSlots=Mi(this.host,(()=>this.readHeaderSlot()),{childList:!0}),this.stopHostLabel?.(),this.stopHostLabel=yi(this.host,(i=>{this.hostLabel=i})),this.stopHostLabelledby?.(),this.stopHostLabelledby=ki(this.host,(i=>{this.hostLabelledby=i})),Ci(this.host,(()=>this.tabStop())),this.loaded&&this.watchViewport(!0)}componentWillLoad(){if(this.restoreState(),this.readHeaderSlot(),"row"===this.filterDisplay)return this.loadFilterUi().then((()=>{}),(()=>{}))}loadFilterUi(){return Promise.all([import("./p-C6J9xhWE.js"),D()]).then((([i])=>this.filterUi=i))}loadColumnList(){return Promise.all([import("./p-C6J9xhWE.js"),T()]).then((([i])=>this.listUi=i))}preloadFilterUi=()=>{this.filterUi||this.loadFilterUi().catch((()=>{}))};preloadColumnList=()=>{this.listUi||this.loadColumnList().catch((()=>{}))};componentDidLoad(){this.loaded=!0,this.watchViewport(),this.measure()}readHeaderSlot(){this.hasHeaderSlot=zi(this.host,"header").length>0}watchViewport(i=!1){this.resizeObserver?.disconnect(),this.resizeObserver=void 0,"undefined"!=typeof ResizeObserver&&this.viewportEl&&(this.resizeObserver=new ResizeObserver((()=>this.measure())),this.resizeObserver.observe(this.viewportEl)),i&&Promise.resolve().then((()=>{this.host.isConnected&&(this.readHeaderSlot(),this.measure(),this.flushRowValues())}))}flushRowValues(){Array.from(this.rowTimers.values()).forEach((i=>{clearTimeout(i.timer),i.write()}))}componentDidRender(){if(this.pendingMeasure&&(this.pendingMeasure=!1,this.measure()),this.viewportEl&&(this.originY=this.viewportEl.getBoundingClientRect().top),this.applyLayer(this.renderedBase,!0),this.keepFocusInGrid(),this.settleMenu(),this.editorEl&&null!=this.pendingEditor){const i=this.pendingEditor,t=this.pendingEditorSelectAll;if(this.pendingEditor=void 0,this.editorEl.value=i,this.editorEl.focus(),"function"==typeof this.editorEl.setSelectionRange)try{this.editorEl.setSelectionRange(t?0:i.length,i.length)}catch{}}this.pendingFocus&&(this.pendingFocus=!1,this.focusedEl()?.focus()),this.commitWindowedEdit();const i={rowStart:this.rowWin.start,rowEnd:this.rowWin.end,colStart:this.colWin.start,colEnd:this.colWin.end},t=this.reported;t&&t.rowStart===i.rowStart&&t.rowEnd===i.rowEnd&&t.colStart===i.colStart&&t.colEnd===i.colEnd||(this.reported=i,this.suiViewport.emit(i))}disconnectedCallback(){this.editorFocus.reset(),void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),this.pasteFallback=void 0,this.stopSlots?.(),this.stopSlots=void 0,this.stopHostLabel?.(),this.stopHostLabel=void 0,this.stopHostLabelledby?.(),this.stopHostLabelledby=void 0,this.disarmMenu(),this.menuOpen&&this.finishMenu(),this.rowTimers.forEach((i=>clearTimeout(i.timer))),this.resizeObserver?.disconnect(),this.resizeObserver=void 0,this.cellCache.clear(),this.endRangeDrag(),this.abortFillDrag()}get editing(){return"cell"===this.editMode}onModelChange(){this.cellCache.clear(),this.colCountAt=-1}onChromeChange(){this.pendingMeasure=!0,this.filterMenuKey&&"menu"!==this.filterDisplay&&this.requestCloseMenu(!1)}onFilterDisplayChange(){"row"===this.filterDisplay&&this.preloadFilterUi()}onLayoutChange(){this.layoutRev++,this.colCountAt=-1}onOrderChange(){this.rowKey||this.cellCache.clear(),this.ranges.ranges.length&&this.setRanges(E());const i=this.focusedKey,t=this.focusedCell;if(!t)return;if(null==i)return void(this.focusedCell=void 0);const s=this.viewRows();let e=-1;for(let t=0;t<s.length;t++)if(this.keyOf(s[t],t)===i){e=t;break}if(e<0)return this.focusedCell=void 0,void(this.focusedKey=void 0);e!==t.row&&(this.focusedCell={row:e,col:t.col})}async scrollToRow(i,t="auto"){this.syncGeometry();const s=a(this.rowGeometry,this.metrics(),i,t);null!=s&&this.viewportEl&&(this.viewportEl.scrollTop=this.scrollSpace.toPhysical(s))}async focusCell(i,t){this.moveFocus(i,t)}async setFocus(){this.tabStop()?.focus()}tabStop(){return this.focusedEl()||this.viewportEl}async exportCsv(i="export.csv"){this.syncGeometry();const t=(this.colModel?this.colModel.all:[]).filter((i=>!Vi.has(i.key)));return j(R(this.viewRows(),t.length?t:this.columns||[]),i)}async getViewport(){return{rowStart:this.rowWin.start,rowEnd:this.rowWin.end,colStart:this.colWin.start,colEnd:this.colWin.end}}keepFocusInGrid(){if(!this.focusedCell&&this.headerCol<0||!this.viewportEl||"undefined"==typeof document)return;if(this.focusedEl())return;const i=document.activeElement;(!i||i===document.body||!i.isConnected||this.viewportEl.contains(i)&&i.matches(".sui-dg-cell, .sui-dg-hcell")&&"0"!==i.getAttribute("tabindex"))&&this.viewportEl.focus({preventScroll:!0})}commitWindowedEdit(){const i=this.editingCell;i&&void 0===this.pendingEditor&&this.viewportEl&&(this.viewportEl.querySelector(".sui-dg-cell.editing")||Promise.resolve().then((()=>{this.editingCell===i&&this.endEdit(!0)})))}focusedEl(){return this.viewportEl?this.headerCol>=0?this.viewportEl.querySelector('.sui-dg-hcell[tabindex="0"]'):this.focusedCell?this.viewportEl.querySelector('.sui-dg-cell[tabindex="0"]'):null:null}measure(){const i=this.viewportEl;if(!i)return;this.originY=i.getBoundingClientRect().top;const t=i.querySelector(".sui-dg-head");t&&(this.headerH=t.getBoundingClientRect().height||0);const s=i.querySelector(".sui-dg-foot");this.footerH=s&&s.getBoundingClientRect().height||0;const e=i.clientWidth||0,r=i.clientHeight||0;e===this.viewportWidth&&r===this.viewportHeight||(this.viewportWidth=e,this.viewportHeight=r,this.colCountAt=-1)}rowHeight(){return Pi[this.density]||Pi.standard}rowBand(){return Math.max(0,this.viewportHeight-this.headerH-this.footerH)}metrics(){return{rowHeight:this.rowHeight(),viewport:this.rowBand(),scrollTop:this.scrollSpace.toLogical(this.viewTop),overscan:Math.max(8,this.overscan||1),velocity:this.velocity,block:8}}syncGeometry(){const i=this.viewRows();this.rowGeometry.set(i.length,this.rowHeight(),this.rowHeights),this.scrollSpace.set(this.rowGeometry.extent,this.rowBand());const t=this.columnLayout||{},s=this.columns||[];this.colModel&&this.colWidthAt===this.viewportWidth&&this.colCountAt===s.length&&this.colLayoutAt===this.layoutRev&&this.colModeAt===this.selectionMode||(this.colWidthAt=this.viewportWidth,this.colCountAt=s.length,this.colLayoutAt=this.layoutRev,this.colModeAt=this.selectionMode,this.colModel=n(this.gridColumns(),{viewport:this.viewportWidth,order:t.order,hidden:t.hidden?new Set(t.hidden):void 0,resized:t.widths?new Map(Object.entries(t.widths)):void 0}))}onScroll=i=>{const t=i.target;this.viewTop=t.scrollTop||0,this.viewStart=fi(t),this.applyLayer(this.renderedBase);const s=i.timeStamp||Date.now(),e=s-this.lastScrollAt,r=this.viewTop-this.lastViewTop;this.velocity=Math.abs(r)>Math.max(1,this.viewportHeight)?0:e>0&&e<250?.6*this.velocity+r/e*1e3*.4:0,this.lastScrollAt=s,this.lastViewTop=this.viewTop,this.syncGeometry(),this.updateWindow()&&this.windowRevision++,this.fillListening&&this.trackFill(this.fillClientX,this.fillClientY)};updateWindow(){const i=d(this.rowGeometry,this.metrics()),t=this.colModel?l(this.colModel,this.viewStart,this.viewportWidth,4,4):{start:0,end:0};return(i.start!==this.rowWin.start||i.end!==this.rowWin.end||t.start!==this.colWin.start||t.end!==this.colWin.end)&&(this.rowWin=i,this.colWin=t,!0)}rowBase(){return this.rowGeometry.offsetOf(this.rowWin.start)}layerY(i){return this.headerH-Math.max(0,this.headerH-this.viewTop)+i-this.scrollSpace.toLogical(this.viewTop)}applyLayer(i,t=!1){const s=this.layerEl;if(!s)return;if(this.clipRows(),!t&&!this.renderedCovers())return;const e=Math.max(0,this.headerH-this.viewTop);s.style.transform=`translate3d(0, ${h(this.layerY(i),this.originY+e)}px, 0)`}clipRows(){const i=this.layerEl?.parentElement;if(!i||this.viewportHeight<=0)return;const t=u(z(this.headerH,this.footerH,this.viewTop,this.viewportHeight));t!==this.clipAt&&(this.clipAt=t,i.style.clipPath=t)}renderedCovers(){if(this.renderedEnd<=this.renderedStart)return!0;const i=this.rowGeometry.offsetOf(this.renderedStart),t=this.rowGeometry.offsetOf(this.renderedEnd),s=this.scrollSpace.toLogical(this.viewTop),e=this.rowBand(),r=this.rowHeight();return i<=Math.max(0,s-r)&&t>=Math.min(this.rowGeometry.extent,s+e+r)}viewRows(){return H(this.rows||[],{columns:this.columns||[],filter:this.filterModel,sorts:this.sorts,nullOrder:this.nullOrder}).rows}emptyText(){return(this.rows||[]).length>0&&0===this.viewRows().length?""===this.emptyFilterMessage?"":xi(void 0,"data-grid.emptyFilter",this.emptyFilterMessage,"No matches."):""===this.emptyMessage?"":xi(void 0,"data-grid.empty",this.emptyMessage,"Nothing here yet.")}gridColumns(){const i=this.columns||[],t=this.rowNumbers?this.rowNumberWidth():0,s=this.hasSelectColumn();if(!t&&!s)return i;const e=this.augmented;if(e&&e.from===i&&e.mode===this.selectionMode&&e.numbers===t)return e.out;const r=[];return t&&r.push({key:Ii,header:"",width:t,minWidth:t,pin:"start",align:"center"}),s&&r.push({key:Bi,header:"",width:48,minWidth:48,pin:"start",align:"center"}),r.push(...i),this.augmented={from:i,mode:this.selectionMode,numbers:t,out:r},r}rowNumberWidth(){return Math.max(44,20+8*(Math.max(1,(this.rows||[]).length)+"").length)}minCol(){return this.colModel?.all[0]?.key===Ii?1:0}dataStart(){const i=this.colModel?.all||[];let t=0;for(;t<i.length&&Vi.has(i[t].key);)t++;return t}dataCell(i){const t=this.dataStart();return i.col<t?{row:i.row,col:t}:i}isGutter(i){const t=this.colModel?.all[i]?.key;return null!=t&&Vi.has(t)}pickRowFromNumber(i,t){const s=this.colModel,e=this.dataStart(),r=(s?.all.length||0)-1;if(s&&!(r<e)){if(this.rangeSelection){const s=t.shiftKey&&this.ranges.anchor?this.ranges.anchor.row:i,o={r1:Math.min(s,i),c1:e,r2:Math.max(s,i),c2:r};this.setRanges(K(t.ctrlKey||t.metaKey?this.ranges:E(),o,{row:s,col:e}))}t.shiftKey||this.moveFocus(i,e)}}selectAllCells(){const i=this.viewRows(),t=this.dataStart(),s=(this.colModel?.all.length||0)-1;!this.rangeSelection||0===i.length||s<t||this.setRanges(K(E(),{r1:0,c1:t,r2:i.length-1,c2:s},{row:0,col:t}))}keyOf(i,t){return this.rowKey?this.rowKey(i,t):t}cellText(i,t){return c(i.column,t)}moveFocus(i,t){const s=this.colModel,e=this.viewRows();if(!s||0===e.length||0===s.all.length)return;const r=Math.max(0,Math.min(e.length-1,i)),o=Math.max(this.minCol(),Math.min(s.all.length-1,t)),a=this.focusedCell,n=this.headerCol>=0;this.headerCol=-1,a&&a.row===r&&a.col===o?n&&(this.pendingFocus=!0,this.focusRevision++):(this.focusedCell={row:r,col:o},this.focusedKey=this.keyOf(e[r],r),this.pendingFocus=!0,this.focusRevision++,this.revealCell(r,o),this.suiCellFocus.emit({row:r,col:o}))}focusHeader(i){const t=this.colModel;if(!t||0===t.all.length)return;const s=Math.max(this.minCol(),Math.min(t.all.length-1,i));this.headerCol=s,this.pendingFocus=!0,this.focusRevision++,this.revealColumn(s)}activateHeader(i){const t=this.colModel?.all[i];t&&(t.key!==Bi?t.column.sortable&&this.sortBy(t.key,!1):this.toggleSelectAll())}revealCell(i,t){const s=this.viewportEl;if(!s)return;const e=a(this.rowGeometry,this.metrics(),i,"auto");null!=e&&(s.scrollTop=this.scrollSpace.toPhysical(e),this.viewTop=s.scrollTop),this.revealColumn(t)}revealColumn(i){const t=this.viewportEl,s=this.colModel;if(!t||!s)return;const e=s.all[i];if(!e||e.pin)return;const r=s.startWidth+e.offset,o=r+e.width,a=this.viewStart+this.viewportWidth-s.endWidth;r<this.viewStart+s.startWidth?vi(t,r-s.startWidth):o>a&&vi(t,o-this.viewportWidth+s.endWidth),this.viewStart=fi(t)}cellAt(i){const t=i.target.closest(".sui-dg-cell"),s=t?.closest(".sui-dg-row");if(!t||!s||!this.colModel)return null;const e=Number(s.dataset.index),r=this.colModel.byKey.get(t.dataset.col||"");return Number.isFinite(e)&&r&&!Vi.has(r.key)?{row:e,col:r.index}:null}onPointerDown=i=>{if(i.target.closest(".sui-dg-fill, .sui-dg-resizer"))return;this.fillFrom&&this.abortFillDrag();const t=i.target.closest(".sui-dg-cell"),s=t?.closest(".sui-dg-row");if(!t||!s||!this.colModel)return;const e=Number(s.dataset.index),r=this.colModel.byKey.get(t.dataset.col||"");if(Number.isFinite(e)&&r){if(r.key===Ii)return i.preventDefault(),void this.pickRowFromNumber(e,i);if(r.key===Bi)return i.preventDefault(),this.selectRow(e,i),void this.moveFocus(e,r.index);if("single"!==this.selectionMode&&"multiple"!==this.selectionMode||this.selectRow(e,i),this.rangeSelection){i.shiftKey&&i.preventDefault();const t={row:e,col:r.index},s=this.ranges.anchor||(this.focusedCell?this.dataCell(this.focusedCell):t);i.shiftKey?this.setRanges(K(E(),L(s,t),s)):i.ctrlKey||i.metaKey?this.setRanges(K(this.ranges,L(t,t),t)):(this.setRanges(K(E(),L(t,t),t)),this.beginRangeDrag(t))}this.moveFocus(e,r.index)}};beginRangeDrag(i){"undefined"!=typeof document&&(this.dragAnchor=i,document.addEventListener("mousemove",this.onRangeDrag),document.addEventListener("mouseup",this.endRangeDrag))}onRangeDrag=i=>{const t=this.dragAnchor;if(!t)return;const s=this.cellAt(i);if(!s)return;const e=L(t,s),r=$(this.ranges);r&&r.r1===e.r1&&r.c1===e.c1&&r.r2===e.r2&&r.c2===e.c2||this.setRanges(K(E(),e,t))};endRangeDrag=()=>{this.dragAnchor&&(this.dragAnchor=void 0,"undefined"!=typeof document&&(document.removeEventListener("mousemove",this.onRangeDrag),document.removeEventListener("mouseup",this.endRangeDrag)))};onContextMenu=i=>{const t=this.cellAt(i);t&&(i.preventDefault(),N(this.ranges,t.row,t.col)&&this.focusedCell||this.moveFocus(t.row,t.col),this.emitContextMenu(t.row,t.col,i.clientX,i.clientY))};emitContextMenu(i,t,s,e){const r=this.colModel?.all[t]?.key;if(null==r||Vi.has(r))return;let o=s,a=e;if(null==o||null==a){const t=this.viewportEl?.querySelector(`.sui-dg-row[data-index="${i}"] .sui-dg-cell[data-col="${r}"]`),s=t?.getBoundingClientRect();o=s?mi(this.host)?s.right-8:s.left+8:0,a=s?s.bottom:0}this.suiCellContextMenu.emit({row:i,col:t,key:r,clientX:o,clientY:a,...this.recordAt(i)})}onResizerDblClick=i=>{const t=i.target.dataset.col;t&&(i.preventDefault(),i.stopPropagation(),this.autosizeColumn(t))};onDblClick=()=>{const i=this.focusedCell;i&&(this.editing&&this.canEdit(i.col)?this.beginEdit(i):this.suiCellActivate.emit({...i}))};hasSelectColumn(){return"checkbox"===this.selectionMode}setSelection(i){this.selection=i,this.selectionRev++,this.suiSelectionChange.emit(i)}selectRow(i,t){const s=this.selectionMode;if("none"===s)return;const e=this.viewRows(),r=e[i];if(!r)return;const o=this.keyOf(r,i),a="single"!==s,n=a&&(t.ctrlKey||t.metaKey);if(a&&t.shiftKey&&null!=this.selectAnchor){const t=Math.min(this.selectAnchor,i),s=Math.max(this.selectAnchor,i),r=[];for(let i=t;i<=s;i++)r.push(this.keyOf(e[i],i));this.setSelection(O(n?this.selection:S(),r,!0))}else this.selectAnchor=i,this.setSelection("single"===s||!n&&"checkbox"!==s?O(S(),[o],!0):P(this.selection,o))}toggleSelectAll=()=>{const i=this.viewRows().length,t=Q(this.selection,i);this.setSelection(null!=t&&t>=i&&i>0?S():B())};fillSource(){const i=$(this.ranges);if(i)return i;const t=this.focusedCell;return t?{r1:t.row,c1:t.col,r2:t.row,c2:t.col}:null}onFillPointerDown=i=>{const t=this.fillSource();t&&this.viewportEl&&(i.preventDefault(),i.stopPropagation(),this.armFill(t,i))};armFill(i,t){const s=this.viewportEl;if(!s)return;this.releaseFillPointer();const e=s.querySelector(".sui-dg-head"),r=s.getBoundingClientRect().top,o=e?e.offsetHeight:0;this.fillBodyY=(Number.isFinite(r)?r:0)+(Number.isFinite(o)?o:0),this.fillFrom=i,this.fillAnchor=this.ranges.anchor&&I(i,this.ranges.anchor.row,this.ranges.anchor.col)?this.ranges.anchor:{row:i.r1,col:i.c1},this.fillRanges=this.ranges,this.fillRow=i.r2,this.fillCol=i.c2,this.fillClientX=t.clientX,this.fillClientY=t.clientY,this.fillPointerId=t.pointerId,this.fillListening=!0;try{s.setPointerCapture(t.pointerId)}catch{}document.addEventListener("pointermove",this.onFillMove),document.addEventListener("pointerup",this.onFillEnd)}columnAtClient(i){const t=this.colModel;if(!t?.all.length)return 0;const s=this.viewportEl?.getBoundingClientRect(),e=mi(this.host),r=e?s?.right:s?.left,o=Number.isFinite(r)?r:0,a=e?o-i:i-o;if(!Number.isFinite(a))return t.all[0].index;const n=(i,t)=>{for(const s of i){const i=t+s.offset;if(a>=i&&a<i+s.width)return s.index}return-1};let d=n(t.start,0);return d<0&&t.end.length&&(d=n(t.end,Math.max(0,this.viewportWidth-t.endWidth))),d<0&&(d=n(t.center,t.startWidth-this.viewStart)),d>=0?d:a<=0?t.all[0].index:t.all[t.all.length-1].index}trackFill(i,t){const s=this.fillAnchor;if(!this.fillFrom||!s)return;this.fillClientX=i,this.fillClientY=t;const e=this.viewRows();if(!e.length||!this.colModel?.all.length)return;const r=this.scrollSpace.toLogical(this.viewTop)+(t-this.fillBodyY);if(!Number.isFinite(r))return;const o=Math.max(0,Math.min(e.length-1,this.rowGeometry.indexAt(r))),a=this.columnAtClient(i);if(!Number.isFinite(o)||!Number.isFinite(a))return;if(o===this.fillRow&&a===this.fillCol)return;if(this.fillRow=o,this.fillCol=a,!this.rangeSelection)return;const n=L(s,{row:o,col:a}),d=1===this.ranges.ranges.length?this.ranges.ranges[0]:null;d&&d.r1===n.r1&&d.c1===n.c1&&d.r2===n.r2&&d.c2===n.c2&&this.ranges.anchor?.row===s.row&&this.ranges.anchor?.col===s.col||this.setRanges(K(E(),n,s))}onFillMove=i=>{this.fillListening&&(0!==i.buttons?this.trackFill(i.clientX,i.clientY):this.onFillEnd())};releaseFillPointer(){this.fillListening&&(document.removeEventListener("pointermove",this.onFillMove),document.removeEventListener("pointerup",this.onFillEnd)),this.fillListening=!1;const i=this.viewportEl;if(i&&null!=this.fillPointerId)try{i.releasePointerCapture(this.fillPointerId)}catch{}this.fillPointerId=void 0}abortFillDrag(){const i=this.fillRanges;this.releaseFillPointer(),this.fillFrom=void 0,this.fillRow=void 0,this.fillCol=void 0,this.fillAnchor=void 0,this.fillRanges=void 0,i&&i!==this.ranges&&this.setRanges(i)}onFillEnd=()=>{const i=this.fillFrom,t=this.fillAnchor,s=this.fillRow,e=this.fillCol;if(this.releaseFillPointer(),this.fillFrom=void 0,this.fillRow=void 0,this.fillCol=void 0,this.fillAnchor=void 0,this.fillRanges=void 0,!i||!t||null==s||null==e)return;const r=L(t,{row:s,col:e}),o=[];for(let t=i.r1;t<=i.r2;t++){const s=[];for(let e=i.c1;e<=i.c2;e++)s.push(this.textAt(t,e));o.push(s)}const a=function(i,t,s){const e=F(t,s);if(!e)return null;const r=new Map;for(let s=t.c1;s<=t.c2;s++){const o=[];for(let e=t.r1;e<=t.r2;e++)o.push(i[e-t.r1]?.[s-t.c1]??"");const a=t.r1>e.r1?Oi(o,t.r1-e.r1,"backward"):[],n=e.r2>t.r2?Oi(o,e.r2-t.r2):[],d=[];for(let i=e.r1;i<=e.r2;i++)d.push(i<t.r1?a[i-e.r1]??"":i>t.r2?n[i-t.r2-1]??"":o[i-t.r1]??"");r.set(s,d)}const o=[];for(let i=e.r1;i<=e.r2;i++){const s=i-e.r1,a=[];for(let i=t.c1;i<=t.c2;i++)a.push(r.get(i)?.[s]??"");const n=t.c1>e.c1?Oi(a,t.c1-e.c1,"backward"):[],d=e.c2>t.c2?Oi(a,e.c2-t.c2):[],l=[];for(let i=e.c1;i<=e.c2;i++)l.push(i<t.c1?n[i-e.c1]??"":i>t.c2?d[i-t.c2-1]??"":a[i-t.c1]??"");o.push(l)}return{target:e,values:o}}(o,i,r);a&&(this.pushUndo(this.blockEdits(a.target,a.values)),this.suiFill.emit({source:i,target:a.target,values:a.values,...this.rangeRecords(a.target)}),this.rangeSelection&&this.setRanges(K(E(),r,t)))};onHeaderPointerDown=i=>{const t=i.target.closest(".sui-dg-resizer"),s=t?.dataset.col,e=s&&this.colModel?this.colModel.byKey.get(s):void 0;if(!t||!e)return;i.preventDefault(),this.resizeKey=e.key,this.resizeFromX=i.clientX,this.resizeFromW=e.width,this.resizeSign=mi(this.host)?-1:1;const r=this.viewportEl;this.resizeFrameX=r?r.getBoundingClientRect().left+(r.clientLeft||0):0,this.resizing=!0,t.setPointerCapture?.(i.pointerId),t.addEventListener("pointermove",this.onResizeMove),t.addEventListener("pointerup",this.onResizeEnd,{once:!0}),t.addEventListener("pointercancel",this.onResizeEnd,{once:!0}),this.moveGuide(i.clientX)};moveGuide(i){const t=this.guideEl;t&&this.resizeKey&&(t.style.left=h(this.resizeFromX-this.resizeFrameX+this.resizeSign*(this.clampedWidth(i)-this.resizeFromW))+"px")}async autosizeColumn(i){const t=this.colModel?.byKey.get(i),s=this.viewportEl;if(!t||!s||Vi.has(i))return null;let e=0;for(const t of Array.from(s.querySelectorAll(`.sui-dg-cell[data-col="${i}"], .sui-dg-hcell[data-col="${i}"]`))){if(!t.firstChild)continue;const i=t.style.width;t.style.width="max-content",e=Math.max(e,t.getBoundingClientRect().width),t.style.width=i}if(e<=0)return null;const r=Math.round(this.clampWidthFor(t,e+1));return this.writeLayout({widths:{...this.columnLayout?.widths||{},[i]:r}}),r}clampWidthFor(i,t){return Math.max(Math.max(M,i.column.minWidth||0),Math.min(i.column.maxWidth||1/0,t))}clampedWidth(i){const t=this.colModel?.byKey.get(this.resizeKey||""),s=t?.column,e=Math.max(M,s?.minWidth||0);return Math.min(s?.maxWidth&&s.maxWidth>e?s.maxWidth:1/0,Math.max(e,this.resizeFromW+this.resizeSign*(i-this.resizeFromX)))}onResizeMove=i=>{this.moveGuide(i.clientX)};onResizeEnd=i=>{const t=this.resizeKey,s=i.currentTarget;s?.removeEventListener("pointermove",this.onResizeMove),this.resizing=!1;const e=t?Math.round(this.clampedWidth(i.clientX)):0;this.resizeKey=void 0,t&&(this.columnLayout={...this.columnLayout,widths:{...this.columnLayout?.widths||{},[t]:e}},this.layoutRev++,this.colCountAt=-1,this.suiColumnLayoutChange.emit(this.columnLayout))};onHeadDragStart=i=>{if(!this.reorderableColumns)return;if(i.target.closest(".sui-dg-resizer"))return void i.preventDefault();const t=i.target.closest(".sui-dg-hcell")?.dataset.col;t&&!Vi.has(t)&&(this.dragKey=t,i.dataTransfer?.setData("text/plain",t),i.dataTransfer&&(i.dataTransfer.effectAllowed="move"))};onHeadDragOver=i=>{if(!this.dragKey)return;i.preventDefault(),i.dataTransfer&&(i.dataTransfer.dropEffect="move");const t=i.target.closest(".sui-dg-hcell")?.dataset.col,s=t&&t!==this.dragKey&&!Vi.has(t)?t:void 0;s!==this.dropKey&&(this.dropKey=s)};onHeadDragLeave=i=>{const t=i.currentTarget,s=i.relatedTarget;s&&t.contains(s)||this.dropKey===t.dataset.col&&(this.dropKey=void 0)};onHeadDragEnd=()=>{this.dragKey=void 0,this.dropKey=void 0};onHeadDrop=i=>{const t=i.target.closest(".sui-dg-hcell")?.dataset.col,s=this.dragKey;if(this.dragKey=void 0,this.dropKey=void 0,!t||!s||t===s||Vi.has(t))return;i.preventDefault();const e=(this.colModel?.all||[]).map((i=>i.key)).filter((i=>!Vi.has(i)));this.writeLayout({order:g(e,s,t)})};writeLayout(i){this.columnLayout={...this.columnLayout,...i},this.layoutRev++,this.colCountAt=-1,this.saveState(),this.suiColumnLayoutChange.emit(this.columnLayout)}saveState(){this.stateKey&&V(this.stateKey,{sorts:this.sorts,filter:this.filterModel,layout:this.columnLayout,nullOrder:this.nullOrder},ii(this.stateStorage))}restoreState(){if(!this.stateKey)return;const i=W(this.stateKey,ii(this.stateStorage));i&&(i.sorts&&(this.sorts=i.sorts),i.filter&&(this.filterModel=i.filter),i.layout&&(this.columnLayout=i.layout),i.nullOrder&&(this.nullOrder=i.nullOrder))}get menuOpen(){return this.columnsMenuOpen||!!this.filterMenuKey||!!this.modeMenuKey}openMenu(i,t,s,e=!1){const r=++this.menuTicket;if(!(t?this.listUi:this.filterUi))return void(t?this.loadColumnList():this.loadFilterUi()).then((()=>{r===this.menuTicket&&i.isConnected&&this.openMenu(i,t,s,e)}),(()=>{}));this.menuOpen&&(this.disarmMenu(),this.finishMenu());const o=s&&this.colModel?this.colModel.byKey.get(s):void 0;(t||o)&&(this.menuAnchor=i,this.columnsMenuOpen=t,this.filterMenuKey=t||e?void 0:s,this.modeMenuKey=e?s:void 0,this.filterDraftState=o&&!e?p(this.ruleFor(o.key),o.column):void 0,this.filterSearch="",this.stopOutside=si((()=>[this.menuEl,this.menuAnchor]),(i=>{const t=i?.target;t&&this.menuEl&&ui(this.menuEl,t)||this.requestCloseMenu(!1)})),this.stopReposition=ei((()=>this.placeMenu())),this.stopEscape=ri((()=>this.requestCloseMenu(!0))),this.menuFocusPending=!0)}disarmMenu(){this.stopOutside?.(),this.stopOutside=void 0,this.stopReposition?.(),this.stopReposition=void 0,this.stopEscape?.(),this.stopEscape=void 0,this.menuFocusPending=!1}requestCloseMenu(i){if(!this.menuOpen||this.menuClosing)return;const t=this.menuAnchor,s=this.menuEl;this.disarmMenu(),s&&oi(s),i&&t?.focus({preventScroll:!0}),this.menuClosing=this.menuExit.begin(s),this.menuClosing||this.finishMenu()}finishMenu(){this.menuExit.cancel(),this.demoteMenu?.(),this.demoteMenu=void 0,this.columnsMenuOpen=!1,this.filterMenuKey=void 0,this.modeMenuKey=void 0,this.filterDraftState=void 0,this.filterSearch="",this.menuClosing=!1,this.menuAnchor=void 0,this.menuEl=void 0}placeMenu(){const i=this.menuEl,t=this.menuAnchor;if(!i||!t)return;const s=t.getBoundingClientRect(),e=this.host.getBoundingClientRect(),r=this.columnsMenuOpen||this.modeMenuKey?"end":s.left+s.width/2<e.left+e.width/2!==mi(t)?"start":"end";ai(i,ni(t,i,"bottom",10,r))}settleMenu(){const i=this.menuEl;if(!i||this.menuClosing)return;if(this.demoteMenu||(this.demoteMenu=di(i)),this.placeMenu(),!this.menuFocusPending)return;this.menuFocusPending=!1;let t=0;const s=()=>{if(this.menuEl!==i||this.menuClosing)return;const e=i.querySelector('[role="menuitemradio"][aria-checked="true"]')||i.querySelector(".sui-cf-search input, sui-input-text.sui-cf-value input, sui-input-number.sui-cf-value input")||i.querySelector('sui-checkbox input, sui-select button, sui-select [tabindex="0"], input, button');e?.focus?.({preventScroll:!0}),e&&document.activeElement!==e&&t++<5&&"function"==typeof requestAnimationFrame&&requestAnimationFrame(s)},e=Array.from(i.querySelectorAll("sui-input-text, sui-input-number, sui-select, sui-checkbox, sui-menu")).map((i=>"function"==typeof i.componentOnReady?i.componentOnReady():void 0)).filter(Boolean);e.length?Promise.all(e).then(s,s):s()}onMenuKeyDown=i=>{if(li(i,this.menuEl,(()=>this.requestCloseMenu(!0))))return;if("Enter"!==i.key||i.defaultPrevented||!this.filterMenuKey)return;const t=i.target;t&&"INPUT"===t.tagName&&"checkbox"!==t.type&&!t.closest("sui-date-picker")&&(i.preventDefault(),this.applyFilter())};onAnchorKeyDown=i=>{"Enter"!==i.key&&" "!==i.key&&"Spacebar"!==i.key?"Escape"===i.key&&this.menuOpen&&(i.stopPropagation(),i.preventDefault(),this.requestCloseMenu(!1)):i.stopPropagation()};onColumnsButton=i=>{!this.columnsMenuOpen||this.menuClosing?this.openMenu(i.currentTarget,!0):this.requestCloseMenu(!1)};onFilterButton=i=>{i.stopPropagation();const t=i.currentTarget,s=t.dataset.col;if(!s)return;if(this.filterMenuKey===s&&!this.menuClosing)return void this.requestCloseMenu(!1);const e=this.colModel?this.colModel.all.findIndex((i=>i.key===s)):-1;this.headerCol>=0&&e>=0&&(this.headerCol=e),this.openMenu(t,!1,s)};openHeaderFilter(i){const t=this.colModel?.all[i];if(!t||"menu"!==this.filterDisplay||!t.column.filter)return!1;const s=(this.viewportEl?Array.from(this.viewportEl.querySelectorAll(".sui-cf-funnel")):[]).find((i=>i.dataset.col===t.key));return!!s&&(s.focus({preventScroll:!0}),this.openMenu(s,!1,t.key),!0)}onColumnToggle=i=>{const t=i.target.dataset.col;t&&(i.stopPropagation(),this.writeLayout({hidden:f(this.columnLayout.hidden,t)}))};ruleFor(i){return this.filterModel?.rules?.[i]}setRule(i,t,s){this.filterModel=v(this.filterModel,i,t,s),this.saveState(),this.suiFilter.emit(this.filterModel)}async setFilter(i){this.filterModel=i,this.saveState(),this.suiFilter.emit(i)}writeColumnFilter(i,t){this.filterModel=m(this.filterModel,i,t),this.saveState(),this.suiFilter.emit(this.filterModel)}applyFilter=()=>{const i=this.filterMenuKey,t=i&&this.colModel?this.colModel.byKey.get(i):void 0,s=this.filterDraftState;i&&t&&s&&!this.menuClosing&&(this.writeColumnFilter(i,x(s,i,t.column)),this.requestCloseMenu(!0))};clearFilter=()=>{const i=this.filterMenuKey;i&&!this.menuClosing&&(this.writeColumnFilter(i,void 0),this.requestCloseMenu(!0))};rowMode(i){const t=this.ruleFor(i.key)?.constraints?.[0]?.matchMode;return t||this.rowModes[i.key]||b(i)}onRowValue(i,t,s){const e=this.colModel?.byKey.get(i);if(!e)return;const r=this.rowMode(e.column),o=this.rowTimers.get(i);if(void 0!==o&&clearTimeout(o.timer),this.rowTimers.delete(i),s)return void this.setRule(i,t,r);const a=()=>{this.rowTimers.delete(i),this.setRule(i,t,this.rowMode(e.column))};this.rowTimers.set(i,{timer:setTimeout(a,180),write:a})}onRowModeButton(i,t){this.modeMenuKey!==t||this.menuClosing?this.openMenu(i,!1,t,!0):this.requestCloseMenu(!1)}pickRowMode(i,t){const s=this.colModel?.byKey.get(i),e=this.filterUi;if(!s||!e)return;const r=this.ruleFor(i)?.constraints?.[0],o={matchMode:this.rowMode(s.column),value:r?.value};this.rowModes={...this.rowModes,[i]:t};const a=e.carryValue(o,t);(r||void 0!==a||"empty"===t||"notEmpty"===t)&&this.setRule(i,a??"",t),this.requestCloseMenu(!0)}rowText(i){return{valueFor:bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i}),modeFor:t=>bi(void 0,"data-grid.filterModeCurrent",void 0,"Filter mode for {column}: {mode}",{column:i,mode:t}),from:xi(void 0,"data-grid.from",void 0,"From"),to:xi(void 0,"data-grid.to",void 0,"To"),yes:xi(void 0,"data-grid.yes",void 0,"Yes"),no:xi(void 0,"data-grid.no",void 0,"No")}}onHeaderClick=i=>{if(i.target.closest(".sui-dg-resizer"))return;const t=i.target.closest(".sui-dg-hcell");if(t?.dataset.col===Bi)return void this.toggleSelectAll();if(t?.dataset.col===Ii)return void this.selectAllCells();const s=t?.dataset.col,e=s&&this.colModel?this.colModel.byKey.get(s):void 0;e&&e.column.sortable&&this.sortBy(e.key,"multiple"===this.sortMode&&(i.shiftKey||i.metaKey||i.ctrlKey))};sortBy(i,t){const s=this.sorts||[],e=s.findIndex((t=>t.key===i)),r=e>=0?s[e]:void 0,o=t?s.slice():[];if(r)if("asc"===r.dir){const i={key:r.key,dir:"desc"};t?o[e]=i:o.push(i)}else t&&o.splice(e,1);else o.push({key:i,dir:"asc"});this.sorts=o,this.saveState(),this.suiSort.emit(o)}sourceIndexOf(i){if(!i)return-1;const t=this.rows||[];if(!this.sourceMap||this.sourceMap.rows!==t){const i=new Map;for(let s=0;s<t.length;s++)t[s]&&!i.has(t[s])&&i.set(t[s],s);this.sourceMap={rows:t,map:i}}return this.sourceMap.map.get(i)??-1}recordAt(i,t=this.viewRows()){const s=t[i]||{},e={data:s,sourceIndex:this.sourceIndexOf(t[i])};return this.rowKey&&t[i]&&(e.rowKey=this.rowKey(s,i)),e}rangeRecords(i){const t=this.viewRows(),s=this.colModel?.all||[],e=[];for(let t=i.c1;t<=i.c2&&t<s.length;t++)e.push(s[t].key);const r=[],o=[];for(let s=i.r1;s<=i.r2&&s<t.length;s++)r.push(t[s]),o.push(this.sourceIndexOf(t[s]));return{keys:e,data:r,sourceIndexes:o}}editAt(i,t,s,e,r=this.viewRows()){const o=r[i]||{};return{data:o,rowKey:this.keyOf(o,i),sourceIndex:this.sourceIndexOf(r[i]),rowIndex:i,columnKey:t,value:s,previous:e}}blockEdits(i,t){const s=this.viewRows(),e=this.colModel?.all||[],r=[];for(let o=i.r1;o<=i.r2&&o<s.length;o++)for(let a=i.c1;a<=i.c2&&a<e.length;a++){const n=e[a];if(Vi.has(n.key))continue;const d=t[o-i.r1]?.[a-i.c1]??"",l=this.textAt(o,a);d!==l&&r.push(this.editAt(o,n.key,d,l,s))}return r}pushUndo(i){i.length&&(this.undoStack.push(i),this.redoStack=[])}locate(i){const t=this.viewRows();if(this.rowKey){for(let s=0;s<t.length;s++)if(t[s]&&this.rowKey(t[s],s)===i.rowKey)return{...i,rowIndex:s,data:t[s],sourceIndex:this.sourceIndexOf(t[s])};const s=this.rows||[];for(let t=0;t<s.length;t++)if(s[t]&&this.rowKey(s[t],t)===i.rowKey)return{...i,rowIndex:-1,data:s[t],sourceIndex:t}}const s=i.sourceIndex>=0?(this.rows||[])[i.sourceIndex]:void 0;if(!s)return i;const e=t.indexOf(s);return{...i,rowIndex:e,data:s,rowKey:e>=0?this.keyOf(s,e):i.rowKey}}focusEdit(i){const t=i?this.colModel?.byKey.get(i.columnKey)?.index:void 0;i&&i.rowIndex>=0&&null!=t&&this.focusCellAt(i.rowIndex,t)}textAt(i,t){const s=this.colModel,e=this.viewRows(),r=s?.all[t],o=e[i];return r&&o?this.cellText(r,o):""}setRanges(i){this.ranges=i,this.suiRangeChange.emit(G(i))}canEdit(i){const t=this.colModel?.all[i];return!(!this.editing||!t||Vi.has(t.key)||!1===t.column.editable||t.column.render)}beginEdit(i,t){this.canEdit(i.col)&&(this.abortFillDrag(),this.pendingEditorSelectAll=null==t,this.focusedCell||(this.focusedCell={row:i.row,col:i.col},this.suiCellFocus.emit({row:i.row,col:i.col})),this.pendingEditor=t??this.textAt(i.row,i.col),this.editingValue=this.pendingEditor,this.editError=void 0,this.editingCell={row:i.row,col:i.col})}endEdit(i){const t=this.editingCell;if(!t)return;const s=this.colModel?.all[t.col],e=s?.column.editor;let r=this.editingValue;if(e&&this.customEditorEl&&this.customEditorEl.isConnected?r=e.read(this.customEditorEl):this.editorEl&&this.editorEl.isConnected&&(r=this.editorEl.value),i&&s){const i=this.viewRows(),e=Y(r,i[t.row]||{},s.column,s.column.validator);if(e)return void(this.editError=e)}const o=this.textAt(t.row,t.col);if(this.editorFocus.reset(),this.editingCell=void 0,this.pendingEditor=void 0,this.editingValue="",this.editError=void 0,this.editorEl=void 0,this.customEditorEl=void 0,this.pendingFocus=!0,i&&s&&r!==o){const i=this.editAt(t.row,s.key,r,o);this.pushUndo([i]),this.suiCellEdit.emit(i)}}mountEditor(i,t,s){const e=t.column.editor;if(!i||!e)return;if(this.customEditorEl&&i.contains(this.customEditorEl))return;const r=this.viewRows()[s]||{},o=e.mount({value:w(r,t.column),text:this.textAt(s,t.index),column:t.column,row:r,seed:this.pendingEditor});i.textContent="",i.appendChild(o);const a=i.classList;if(a)for(let i=0;i<a.length;i++){const t=a.item(i);t&&t.startsWith("sc-")&&o.classList.add(t)}this.customEditorEl=o,this.pendingEditor=void 0,o.focus()}onEditorFocusIn=i=>{this.editorFocus.focusin(i)};onEditorFocusOut=i=>{this.editorFocus.focusout(i)};onEditorBlur=()=>{const i=this.editingCell;Promise.resolve().then((()=>{i&&this.editingCell===i&&this.endEdit(!0)}))};onEditorKeyDown=i=>{if(i.stopPropagation(),i.defaultPrevented&&this.editWrap&&hi(this.editWrap))return;const t=this.editingCell?this.colModel?.all[this.editingCell.col]?.column.editor:void 0;if(!(t?.handlesKey&&this.customEditorEl&&t.handlesKey(i,this.customEditorEl)))if("Escape"===i.key)i.preventDefault(),this.endEdit(!1);else if("Enter"===i.key||"Tab"===i.key){i.preventDefault();const t=this.editingCell;this.endEdit(!0),t&&("Enter"===i.key?this.moveFocus(t.row+(i.shiftKey?-1:1),t.col):this.moveFocus(t.row,t.col+(i.shiftKey?-1:1)))}};pasteText(i){const t=this.focusedCell;if(!t||!i)return!1;const s=U(i);if(!s.length)return!1;const e=s.reduce(((i,t)=>Math.max(i,t.length)),0),r={r1:t.row,c1:t.col,r2:t.row+s.length-1,c2:t.col+Math.max(e,1)-1};return this.pushUndo(this.blockEdits(r,s)),this.suiPaste.emit({row:t.row,col:t.col,target:r,values:s,...this.rangeRecords(r)}),!0}onNativePaste=i=>{if(this.editingCell)return;const t=i.clipboardData?.getData("text/plain");null!=t&&(i.preventDefault(),void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),this.pasteFallback=void 0,this.pasteText(_(t,i.clipboardData?.getData(X))))};async paste(){if(!this.focusedCell||"undefined"==typeof navigator||!navigator.clipboard?.readText)return!1;try{return this.pasteText(_(await navigator.clipboard.readText()))}catch{return!1}}async copy(i=!1){const t=this.copyBox();return!!t&&this.writeClipboard(this.boxText(t,i))}async writeClipboard(i){const{text:t,ok:s}=await q(i,this.copyFormulas?"preserve":"escape",this.host);return s?this.suiCopy.emit(t):this.suiCopyError.emit(t),s}async undo(){const i=this.undoStack.pop();if(!i)return!1;let t;this.redoStack.push(i);for(let s=i.length-1;s>=0;s--){const e=this.locate(i[s]);t=e,this.suiCellEdit.emit({...e,value:e.previous,previous:e.value,source:"undo"})}return this.focusEdit(t),!0}async redo(){const i=this.redoStack.pop();if(!i)return!1;let t;this.undoStack.push(i);for(const s of i){const i=this.locate(s);t=t||i,this.suiCellEdit.emit({...i,source:"redo"})}return this.focusEdit(t),!0}focusCellAt(i,t){const s=this.viewRows();i<0||i>=s.length||t<0||t>=(this.colModel?.all.length||0)||this.moveFocus(i,t)}copyBox(){const i=$(this.ranges);if(i)return i;const t=this.focusedCell;return t?{r1:t.row,c1:t.col,r2:t.row,c2:t.col}:null}boxText(i,t){const s=[];if(t){const t=this.colModel?.all||[],e=[];for(let s=i.c1;s<=i.c2;s++)e.push(t[s]?.column.header??"");s.push(e)}for(let t=i.r1;t<=i.r2;t++){const e=[];for(let s=i.c1;s<=i.c2;s++)e.push(this.textAt(t,s));s.push(e)}return s}async cut(){if(!this.editing)return!1;const i=this.copyBox();if(!i)return!1;if(!await this.writeClipboard(this.boxText(i,!1)))return!1;const t=i.c2-i.c1+1,s=Array.from({length:i.r2-i.r1+1},(()=>Array(t).fill("")));return this.pushUndo(this.blockEdits(i,s)),this.suiCut.emit({source:i,target:i,values:s,...this.rangeRecords(i)}),!0}onHeaderKey(i,t){const s=mi(this.host)?"ArrowLeft":"ArrowRight",e=this.headerCol;switch(i.key){case"ArrowRight":case"ArrowLeft":return i.preventDefault(),void this.focusHeader(i.key===s?Math.min(t,e+1):Math.max(0,e-1));case"Home":return i.preventDefault(),void this.focusHeader(0);case"End":return i.preventDefault(),void this.focusHeader(t);case"ArrowDown":if(i.preventDefault(),i.altKey&&this.openHeaderFilter(e))return;return void this.moveFocus(0,e);case"Enter":case" ":case"Spacebar":return i.preventDefault(),void this.activateHeader(e)}}onKeyDown=i=>{const t=this.colModel,s=this.viewRows();if(!t||0===t.all.length)return;const e=t.all.length-1;if(this.headerCol>=0)return void this.onHeaderKey(i,e);if(0===s.length)return;const r=this.focusedCell||{row:this.rowWin.start,col:this.minCol()},o=s.length-1,a=Math.max(1,Math.floor(this.rowBand()/this.rowHeight())-1),n=i.ctrlKey||i.metaKey;if(n&&("c"===i.key||"C"===i.key))return i.preventDefault(),void this.copy(i.shiftKey);if(n&&("x"===i.key||"X"===i.key))return i.preventDefault(),void this.cut();if(n&&("z"===i.key||"Z"===i.key))return i.preventDefault(),void(i.shiftKey?this.redo():this.undo());if(n&&("y"===i.key||"Y"===i.key))return i.preventDefault(),void this.redo();if("ContextMenu"===i.key||i.shiftKey&&"F10"===i.key)return i.preventDefault(),void this.emitContextMenu(r.row,r.col);if(n&&("v"===i.key||"V"===i.key))return void 0!==this.pasteFallback&&clearTimeout(this.pasteFallback),void(this.pasteFallback=setTimeout((()=>{this.pasteFallback=void 0,this.paste()}),80));if(this.editing&&!this.editingCell){if("F2"===i.key)return i.preventDefault(),void this.beginEdit(r);if(!n&&!i.altKey&&1===i.key.length&&!this.isGutter(r.col))return i.preventDefault(),void this.beginEdit(r,i.key)}if(this.rangeSelection&&n&&("a"===i.key||"A"===i.key))return i.preventDefault(),void this.selectAllCells();if("none"!==this.selectionMode&&(" "===i.key||"Spacebar"===i.key))return i.preventDefault(),void this.selectRow(r.row,{shiftKey:i.shiftKey&&!i.ctrlKey,ctrlKey:i.ctrlKey||i.metaKey});let d=r.row,l=r.col;const h=mi(this.host)?"ArrowLeft":"ArrowRight";switch(i.key){case"ArrowDown":d=Math.min(o,d+1);break;case"ArrowUp":if(0===d&&!i.shiftKey)return i.preventDefault(),void this.focusHeader(l);d=Math.max(0,d-1);break;case"ArrowRight":case"ArrowLeft":l=i.key===h?Math.min(e,l+1):Math.max(0,l-1);break;case"Home":l=0,(i.ctrlKey||i.metaKey)&&(d=0);break;case"End":l=e,(i.ctrlKey||i.metaKey)&&(d=o);break;case"PageDown":d=Math.min(o,d+a);break;case"PageUp":d=Math.max(0,d-a);break;case"Enter":return i.preventDefault(),void(this.isGutter(l)?this.selectRow(d,{}):this.editing&&this.canEdit(l)?this.beginEdit({row:d,col:l}):this.suiCellActivate.emit({row:d,col:l}));default:return}if(i.preventDefault(),this.rangeSelection&&i.shiftKey){const i=this.dataCell({row:d,col:l}),t=this.ranges.anchor||this.dataCell(r);this.setRanges(this.ranges.ranges.length?J(this.ranges,i):K(E(),L(t,i),t)),l=i.col}else this.rangeSelection&&this.setRanges(E());this.moveFocus(d,l)};cell(i,t,s,r,o,a,n){const d=i.column;if(i.key===Ii){const t=this.focusedCell?.row===s,r=this.ranges.ranges.some((i=>s>=Math.min(i.r1,i.r2)&&s<=Math.max(i.r1,i.r2)));return e("div",{class:`${i.cellClass} sui-dg-rownum${t?" cur":""}${r?" on":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle},s+1+"")}if(i.key===Bi){const t=Z(this.selection,r),a=this.focusedCell,n=!!a&&a.row===s&&a.col===i.index;return e("div",{class:`${i.cellClass}${n?" focus":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle,tabindex:n?0:void 0},e("span",{class:t?"sui-dg-box on":"sui-dg-box",role:"checkbox","aria-checked":t?"true":"false","aria-label":xi(void 0,"data-grid.selectRow",void 0,"Select row")}))}const l=`${r}\0${i.key}`;let h=null,u="";d.render?(h=a.has(l)?a.get(l):gi(d.render,[t,r],y(d,t)),n.set(l,h)):u=y(i.column,t);const c=i.column.cellClass?i.column.cellClass(w(t,i.column),t,s):void 0,g=this.focusedCell,p=!!g&&g.row===s&&g.col===i.index,f=this.rangeSelection&&N(this.ranges,s,i.index),v=this.editingCell,m=!!v&&v.row===s&&v.col===i.index,x=this.fillHandleAt,b=!!x&&x.r2===s&&x.c2===i.index,k=this.inFillPreview(s,i.index);return e("div",{class:`${i.cellClass}${c?" "+c:""}${p?" focus":""}${f?" sel":""}${m?" editing":""}${k?" fill":""}`,key:o,role:"gridcell","aria-colindex":i.index+1,"aria-selected":f?"true":void 0,"aria-readonly":this.editing&&!this.canEdit(i.index)?"true":void 0,"data-col":i.key,style:i.cellStyle,tabindex:p&&!m?0:void 0,title:d.nowrap&&!d.render?u:void 0,ref:d.render&&!m?i=>pi(i,h):void 0},b?e("span",{class:"sui-dg-fill","aria-hidden":"true",onPointerDown:this.onFillPointerDown}):null,m&&i.column.editor?e("div",{class:"sui-dg-editwrap",ref:t=>{this.editWrap=t||void 0,this.mountEditor(t,i,s)},onKeyDown:this.onEditorKeyDown,onFocusin:this.onEditorFocusIn,onFocusout:this.onEditorFocusOut}):m?e("input",{class:"sui-dg-editor",type:"text","aria-label":i.column.header,"aria-invalid":this.editError?"true":void 0,ref:i=>this.editorEl=i,onKeyDown:this.onEditorKeyDown,onInput:i=>this.editingValue=i.target.value,onBlur:this.onEditorBlur}):d.render?null:u,m&&this.editError?e("span",{class:"sui-dg-editerr",role:"alert"},this.editError):null)}fillDestination(){const i=this.fillAnchor;return this.fillFrom&&i&&null!=this.fillRow&&null!=this.fillCol?L(i,{row:this.fillRow,col:this.fillCol}):null}inFillPreview(i,t){const s=this.fillFrom,e=this.fillDestination();return!(!s||!e||i<e.r1||i>e.r2||t<e.c1||t>e.c2||I(s,i,t))}fillPreviewFrame(i){const t=this.fillFrom,s=this.fillDestination(),e=this.colModel,r=t&&s?F(t,s):null;if(!r||!e)return null;const o=r.r1,a=r.r2,n=e.all[r.c1],d=e.all[r.c2];if(!n||!d)return null;const l=i=>"end"===i?e.startWidth+e.centerWidth:"start"===i?0:e.startWidth,h=l(n.pin)+n.offset,u=l(d.pin)+d.offset+d.width,c=this.rowGeometry,g=c.offsetOf(o)-i,p=c.offsetOf(a)+c.sizeOf(a)-i-g;return p<=0||u<=h?null:{inset:h,top:g,width:u-h,height:p}}filterText(i){return{title:bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i}),valueFor:bi(void 0,"data-grid.filterValueFor",void 0,"Filter value for {column}",{column:i}),apply:xi(void 0,"data-grid.apply",void 0,"Apply"),clear:xi(void 0,"data-grid.clear",void 0,"Clear"),addCondition:xi(void 0,"data-grid.addCondition",void 0,"Add condition"),removeCondition:xi(void 0,"data-grid.removeCondition",void 0,"Remove condition"),where:xi(void 0,"data-grid.where",void 0,"Where"),and:xi(void 0,"data-grid.and",void 0,"And"),or:xi(void 0,"data-grid.or",void 0,"Or"),match:xi(void 0,"data-grid.matchConditions",void 0,"How the conditions combine"),selectAll:xi(void 0,"data-grid.selectAll",void 0,"Select all"),searchValues:xi(void 0,"data-grid.searchValues",void 0,"Search values"),noValues:xi(void 0,"data-grid.noValues",void 0,"No values match."),value:xi(void 0,"data-grid.valuePlaceholder",void 0,"Value"),from:xi(void 0,"data-grid.from",void 0,"From"),to:xi(void 0,"data-grid.to",void 0,"To"),yes:xi(void 0,"data-grid.yes",void 0,"Yes"),no:xi(void 0,"data-grid.no",void 0,"No")}}renderMenus(i){const t={id:this.menuId,closing:this.menuClosing,menuRef:i=>this.menuEl=i,onKeyDown:this.onMenuKeyDown},s=this.listUi;if(this.columnsMenuOpen)return s?e(s.ColumnList,{...t,title:xi(void 0,"data-grid.columns",void 0,"Columns"),columns:(this.columns||[]).filter((i=>!i.hidden)),hidden:new Set(this.columnLayout.hidden||[]),onToggle:this.onColumnToggle}):null;const r=this.filterUi;if(!r)return null;if(this.modeMenuKey){const s=i.byKey.get(this.modeMenuKey);if(!s)return null;const o=s.key;return e(r.ModeMenu,{...t,column:s.column,current:this.rowMode(s.column),label:bi(void 0,"data-grid.filterModeFor",void 0,"Filter mode for {column}",{column:s.column.header}),onPick:i=>this.pickRowMode(o,i)})}const o=this.filterMenuKey,a=this.filterDraftState;if(!o||!a)return null;const n=i.byKey.get(o);return n?e(r.ColumnFilterMenu,{id:this.menuId,column:n.column,draft:a,search:this.filterSearch,text:this.filterText(n.column.header),closing:this.menuClosing,menuRef:i=>this.menuEl=i,onDraft:i=>this.filterDraftState=i,onSearch:i=>this.filterSearch=i,onApply:this.applyFilter,onClear:this.clearFilter,onKeyDown:this.onMenuKeyDown,note:k(this.filterModel?.tree).has(o)?xi(void 0,"data-grid.alsoFiltered",void 0,"The advanced filter also uses this column."):void 0}):null}render(){this.syncGeometry();const i=this.colModel,t=this.viewRows(),s=this.rowGeometry,r=new Map((this.sorts||[]).map(((i,t)=>[i.key,{dir:i.dir,at:t}]))),o=Math.ceil(this.rowBand()/this.rowHeight())+1,a=C(this.metrics(),o);a!==this.rowSlots&&(this.rowSlots=a,this.rowSlotKeys=Array.from({length:a},((i,t)=>"r"+t)));const n=0===i.center.length?0:Math.min(i.center.length,this.colWin.end-this.colWin.start+8);n!==this.colSlots&&(this.colSlots=n,this.colSlotKeys=Array.from({length:n},((i,t)=>"c"+t))),this.pinStartKeys.length!==i.start.length&&(this.pinStartKeys=i.start.map((i=>"s-"+i.key))),this.pinEndKeys.length!==i.end.length&&(this.pinEndKeys=i.end.map((i=>"e-"+i.key)));let d=this.rowSlots;const{colSlotKeys:l,pinStartKeys:h,pinEndKeys:u}=this;this.updateWindow();const c=Math.max(i.totalWidth,this.viewportWidth);this.fillHandleAt=this.editingCell?null:this.editing||this.rangeSelection?this.fillSource():null;const g=this.rowWin.end-this.rowWin.start;g>this.rowSlots&&(this.rowSlots=g,this.rowSlotKeys=Array.from({length:g},((i,t)=>"r"+t)),d=g);const p=this.focusedCell;let f=!1;if(p&&p.row>=this.rowWin.start&&p.row<this.rowWin.end&&p.row<t.length){const t=i.all[p.col];if(t)if(t.pin)f=!0;else{const s=i.center.indexOf(t);f=s>=this.colWin.start&&s<this.colWin.end}}const v="row"===this.filterDisplay&&i.all.some((i=>i.column.filter)),m=this.pinnedTop?.length||0,x=this.pinnedBottom?.length||0,w=1+m+(v?1:0),M=w+1,z=M+t.length,F=w+t.length+x+(this.footerTotals?1:0),S="none"!==this.selectionMode,E=this.rowBase(),A=this.fillPreviewFrame(E);this.renderedBase=E,this.renderedStart=this.rowWin.start,this.renderedEnd=Math.min(this.rowWin.end,t.length);const D=this.cellCache,T=new Map,j=i.start.length>0,R=i.end.length>0,H=Array(d).fill(null),K=this.loading?[0,1,2,3].map((t=>e("div",{class:"sui-dg-row pending",key:"wait"+t,role:"row","aria-rowindex":M+t,"data-index":t,style:{transform:`translateY(${t*this.rowHeight()}px)`,height:this.rowHeight()+"px",width:c+"px"}},e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},e("div",{class:"sui-dg-skel",role:"gridcell","aria-colindex":1,style:{insetInlineEnd:20+12*t+"%"}}))))):null;for(let r=this.rowWin.start;!K&&r<this.rowWin.end&&r<t.length;r++){const o=this.rowSlots>0?r%this.rowSlots:0,a=t[r];if(!a){H[o]=e("div",{class:"sui-dg-row pending",key:this.rowSlotKeys[o],role:"row","aria-rowindex":M+r,"aria-busy":"true","data-index":r,style:{transform:`translateY(${s.offsetOf(r)-E}px)`,height:s.sizeOf(r)+"px",width:c+"px"}},e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},e("div",{class:"sui-dg-skel",role:"gridcell","aria-colindex":1})));continue}const n=this.keyOf(a,r),d=j?i.start.map(((i,t)=>this.cell(i,a,r,n,h[t],D,T))):null,g=Array(this.colSlots).fill(null);let p=0;for(let t=this.colWin.start;t<this.colWin.end&&t<i.center.length;t++)g[p++]=this.cell(i.center[t],a,r,n,l[this.colSlots>0?t%this.colSlots:0],D,T);const f=R?i.end.map(((i,t)=>this.cell(i,a,r,n,u[t],D,T))):null,v=this.rowClass?this.rowClass(a,r):void 0;H[o]=e("div",{class:`sui-dg-row${r%2==1?" odd":""}${S&&Z(this.selection,n)?" picked":""}${v?" "+v:""}`,key:this.rowSlotKeys[o],role:"row","aria-rowindex":M+r,"aria-selected":S?Z(this.selection,n)?"true":"false":void 0,"data-index":r,style:{transform:`translateY(${s.offsetOf(r)-E}px)`,height:s.sizeOf(r)+"px",width:c+"px"}},d?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},d):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},g),f?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},f):null)}this.cellCache=T;const $=this.filterUi,L=i=>i.map((i=>{if(!$||!i.column.filter||Vi.has(i.key))return e("div",{class:"sui-dg-fcell",key:i.key,role:"gridcell","aria-colindex":i.index+1,style:i.headerStyle});const t=this.rowMode(i.column),s=this.ruleFor(i.key)?.constraints?.[0]?.value,r=i.key;return e("div",{class:"sui-dg-fcell",key:i.key,role:"gridcell","aria-colindex":i.index+1,style:i.headerStyle},e($.RowFilterCell,{column:i.column,colKey:r,matchMode:t,value:s,changed:t!==b(i.column),open:this.modeMenuKey===r&&!this.menuClosing,text:this.rowText(i.column.header),onValue:(i,t)=>this.onRowValue(r,i,t),onModeButton:i=>this.onRowModeButton(i,r)}))})),N=(i,t,s)=>i.map((i=>e("div",{class:`${i.cellClass} ${s}`,key:i.key,role:"gridcell","aria-colindex":i.index+1,"data-col":i.key,style:i.cellStyle},Vi.has(i.key)?null:t(i)))),O=(t,s,r)=>(t||[]).map(((t,o)=>e("div",{class:"sui-dg-row sui-dg-static "+s,key:`${s}-${o}`,role:"row","aria-rowindex":r+o,style:{height:this.rowHeight()+"px",width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},N(i.start,(i=>y(i.column,t)),s)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},N(i.center,(i=>y(i.column,t)),s)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},N(i.end,(i=>y(i.column,t)),s)):null))),P=k(this.filterModel?.tree),B=i=>i.map((i=>{const s=r.get(i.key);if(i.key===Ii)return e("div",{class:i.headerClass+" sui-dg-rownum",key:i.key,role:"columnheader","aria-colindex":i.index+1,"data-col":i.key,style:i.headerStyle},e("span",{class:"sui-dg-sr"},xi(void 0,"data-grid.rowNumber",void 0,"Row number")));if(i.key===Bi){const s=t.length,r=Q(this.selection,s),o=s>0&&null!=r&&r>=s,a=!o&&(null!=r&&r>0||"exclude"===this.selection.mode&&s>0),n=this.headerCol===i.index;return e("div",{class:n?i.headerClass+" focus":i.headerClass,key:i.key,role:"columnheader","aria-colindex":i.index+1,"data-col":i.key,style:i.headerStyle,tabindex:n?0:void 0},e("span",{class:o?"sui-dg-box on":a?"sui-dg-box some":"sui-dg-box",role:"checkbox","aria-checked":o?"true":a?"mixed":"false","aria-label":xi(void 0,"data-grid.selectAllRows",void 0,"Select all rows")}))}const o=!!this.ruleFor(i.key)||P.has(i.key),a=this.headerCol===i.index;return e("div",{class:`${i.headerClass}${s?" sorted":""}${a?" focus":""}${this.dragKey===i.key?" dragging":""}${this.dropKey===i.key?" drop-before":""}`,key:i.key,role:"columnheader","aria-colindex":i.index+1,"aria-sort":s?"asc"===s.dir?"ascending":"descending":i.column.sortable?"none":void 0,"data-col":i.key,title:i.column.headerTitle,style:i.headerStyle,tabindex:a?0:void 0,draggable:this.reorderableColumns,onDragStart:this.reorderableColumns?this.onHeadDragStart:void 0,onDragOver:this.reorderableColumns?this.onHeadDragOver:void 0,onDragLeave:this.reorderableColumns?this.onHeadDragLeave:void 0,onDragEnd:this.reorderableColumns?this.onHeadDragEnd:void 0,onDrop:this.reorderableColumns?this.onHeadDrop:void 0},e("span",{class:"sui-dg-hlabel"},e("span",{class:"hd"},i.column.header),s?e(Fi,{glyph:"asc"===s.dir?Ai:Di,class:"arrow"}):null,!s&&i.column.sortable?e(Fi,{glyph:Ti,class:"rest"}):null,s&&(this.sorts||[]).length>1?e("span",{class:"ord"},s.at+1):null),"menu"===this.filterDisplay&&i.column.filter?e("button",{type:"button",class:{"sui-cf-funnel":!0,on:o},"data-col":i.key,"aria-haspopup":"dialog","aria-expanded":this.filterMenuKey!==i.key||this.menuClosing?"false":"true","aria-controls":this.filterMenuKey===i.key?this.menuId:void 0,"aria-label":o?bi(void 0,"data-grid.filterActive",void 0,"Filter {column}, filtered",{column:i.column.header}):bi(void 0,"data-grid.filter",void 0,"Filter {column}",{column:i.column.header}),onClick:this.onFilterButton,onKeyDown:this.onAnchorKeyDown},e(Fi,{glyph:Ei})):null,i.column.resizable?e("span",{class:"sui-dg-resizer","data-col":i.key,"aria-hidden":"true",onPointerDown:this.onHeaderPointerDown,onDblClick:this.onResizerDblClick}):null)})),I=0===t.length&&!this.loading;return e("div",{class:{"sui-dg":!0,"selection-bar":!this.hideSelectionBar,vacant:I}},this.showColumnToggle||this.hasHeaderSlot?e("div",{class:"sui-dg-bar"},e("div",{class:"sui-dg-bar-slot"},e("slot",{name:"header"})),this.showColumnToggle?e("button",{type:"button",class:"sui-dg-colbtn","aria-haspopup":"dialog","aria-expanded":this.columnsMenuOpen&&!this.menuClosing?"true":"false","aria-controls":this.columnsMenuOpen?this.menuId:void 0,onClick:this.onColumnsButton,onKeyDown:this.onAnchorKeyDown,onPointerEnter:this.listUi?void 0:this.preloadColumnList,onFocus:this.listUi?void 0:this.preloadColumnList},e(Fi,{glyph:Si}),e("span",null,xi(void 0,"data-grid.columns",void 0,"Columns"))):null):null,e("div",{class:"sui-dg-viewport",role:"grid","aria-label":this.hostLabel,"aria-labelledby":this.hostLabelledby,"aria-rowcount":F,"aria-colcount":i.all.length,"aria-busy":this.loading?"true":void 0,tabindex:f||this.headerCol>=0?-1:0,ref:i=>this.viewportEl=i,onScroll:this.onScroll,onMouseDown:this.onPointerDown,onContextMenu:this.onContextMenu,onPaste:this.onNativePaste,onDblClick:this.onDblClick,onKeyDown:this.onKeyDown},e("div",{class:"sui-dg-head",role:"rowgroup",style:{width:c+"px"},onClick:this.onHeaderClick,onPointerEnter:"menu"!==this.filterDisplay||$?void 0:this.preloadFilterUi,onFocusin:"menu"!==this.filterDisplay||$?void 0:this.preloadFilterUi},e("div",{class:"sui-dg-hrow",role:"row","aria-rowindex":1,style:{width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},B(i.start)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},B(i.center)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},B(i.end)):null),this.pinnedTop?.length?e("div",{class:"sui-dg-pinned top",role:"none"},O(this.pinnedTop,"pinned",2)):null,v?e("div",{class:"sui-dg-frow",role:"row","aria-rowindex":w,style:{width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},L(i.start)):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},L(i.center)),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},L(i.end)):null):null),e("div",{class:"sui-dg-sticky",role:I?"presentation":"rowgroup"},e("div",{class:"sui-dg-layer",role:"presentation",ref:i=>this.layerEl=i,style:{width:c+"px"}},K||H,A?e("div",{class:"sui-dg-fillbox",style:{insetInlineStart:A.inset+"px",top:A.top+"px",width:A.width+"px",height:A.height+"px"}}):null)),e("div",{class:"sui-dg-body",role:"presentation",style:{width:c+"px",height:this.scrollSpace.physicalExtent+"px"}}),this.pinnedBottom?.length||this.footerTotals?e("div",{class:"sui-dg-foot",role:"rowgroup",style:{width:c+"px"}},O(this.pinnedBottom,"pinned",z),(t=>{const s=this.footerTotals;if(!s)return null;const r=i=>s[i.key]||"";return e("div",{class:"sui-dg-row sui-dg-static total",role:"row","aria-rowindex":t,style:{height:this.rowHeight()+"px",width:c+"px"}},j?e("div",{class:"sui-dg-pane pin-start",role:"none",style:{width:i.startWidth+"px"}},N(i.start,r,"total")):null,e("div",{class:"sui-dg-pane center",role:"none",style:{width:i.centerWidth+"px"}},N(i.center,r,"total")),R?e("div",{class:"sui-dg-pane pin-end",role:"none",style:{width:i.endWidth+"px"}},N(i.end,r,"total")):null)})(z+x)):null,e("div",{class:{"sui-dg-guide":!0,on:this.resizing},ref:i=>this.guideEl=i,"aria-hidden":"true"})),e("div",{key:"status",class:"sui-dg-status",role:"status"},this.loading?e("span",{class:"sui-dg-sr"},xi(void 0,"data-grid.loading",void 0,"Loading")):null,I?e("div",{class:"sui-dg-empty"},e("slot",{name:"empty"},this.emptyText())):null),this.renderMenus(i))}static get watchers(){return{columns:[{onModelChange:0}],density:[{onModelChange:0}],rows:[{onModelChange:0}],pinnedTop:[{onChromeChange:0}],pinnedBottom:[{onChromeChange:0}],footerTotals:[{onChromeChange:0}],filterDisplay:[{onChromeChange:0},{onFilterDisplayChange:0}],columnLayout:[{onLayoutChange:0}],sorts:[{onOrderChange:0}],filterModel:[{onOrderChange:0}],nullOrder:[{onOrderChange:0}]}}static get style(){return".sc-sui-data-grid-h{display:block;min-width:0;height:100%;min-height:0;font-family:var(--font-sans);color:var(--ink)}.sui-dg.sc-sui-data-grid{--dg-cell-x:var(--table-cell-x);--dg-flip:1;height:100%;min-height:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}[density='compact'].sc-sui-data-grid-h .sui-dg.sc-sui-data-grid{--dg-cell-x:var(--space-2)}.sc-sui-data-grid-h:dir(rtl) .sui-dg.sc-sui-data-grid{--dg-flip:-1}.sui-dg-viewport.sc-sui-data-grid{position:relative;user-select:none;flex:1;min-height:0;overflow:auto;overflow-anchor:none;overscroll-behavior-x:contain}.sui-dg-viewport.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.sui-dg-head.sc-sui-data-grid{position:sticky;top:0;z-index:4;background:var(--surface-sunken);border-bottom:1px solid var(--border)}.sui-dg-hrow.sc-sui-data-grid{position:relative;display:flex;height:var(--sui-dg-header-h, 34px)}.sui-dg-pane.sc-sui-data-grid{position:relative;flex:0 0 auto;height:100%}.sui-dg-pane.pin-start.sc-sui-data-grid{position:sticky;inset-inline-start:0;z-index:1;background:inherit}.sui-dg-pane.pin-end.sc-sui-data-grid{position:sticky;inset-inline-end:0;z-index:1;background:inherit}.sui-dg-pane.pin-start.sc-sui-data-grid::after,.sui-dg-pane.pin-end.sc-sui-data-grid::before{content:'';position:absolute;top:0;bottom:0;width:1px;background:var(--border);pointer-events:none}.sui-dg-pane.pin-start.sc-sui-data-grid::after{inset-inline-end:0}.sui-dg-pane.pin-end.sc-sui-data-grid::before{inset-inline-start:0}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.pin-start.sc-sui-data-grid::after{box-shadow:calc(3px * var(--dg-flip)) 0 6px -3px color-mix(in srgb, var(--ink) 22%, transparent)}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.pin-end.sc-sui-data-grid::before{box-shadow:calc(-3px * var(--dg-flip)) 0 6px -3px color-mix(in srgb, var(--ink) 22%, transparent)}.sui-dg-hcell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;padding:0 var(--dg-cell-x);box-sizing:border-box;font-size:11px;font-weight:650;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;overflow:hidden;user-select:none}.sui-dg-hcell.sc-sui-data-grid::after{content:'';position:absolute;inset-inline-end:0;top:6px;bottom:6px;width:1px;background:var(--border)}.sui-dg-hcell.sc-sui-data-grid:last-child::after{display:none}.sui-dg-hcell.dragging.sc-sui-data-grid{opacity:0.5}.sui-dg-hcell.drop-before.sc-sui-data-grid::before{content:'';position:absolute;inset-block:4px;inset-inline-start:0;width:2px;border-radius:1px;background:var(--accent-ink);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-ink) 25%, transparent);pointer-events:none}.sui-dg-hlabel.sc-sui-data-grid{display:flex;align-items:center;flex:1 1 auto;min-width:0;height:100%}.sui-dg-hcell.sc-sui-data-grid .hd.sc-sui-data-grid{min-width:0;overflow:hidden;text-overflow:ellipsis}.sui-dg-hcell.al-right.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid,.sui-dg-hcell.al-end.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-end}.sui-dg-hcell.al-center.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:center}.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-right.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-start}.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-left.sc-sui-data-grid .sui-dg-hlabel.sc-sui-data-grid{justify-content:flex-end}.sui-dg-hcell.sc-sui-data-grid .sui-cf-funnel.sc-sui-data-grid{margin-inline-end:min(0px, calc(8px - var(--dg-cell-x)))}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid,.sui-dg-hcell.sc-sui-data-grid .sui-glyph.arrow.sc-sui-data-grid{flex-shrink:0;margin-inline-start:5px;font-size:9px;transition:color var(--duration-fast) var(--ease-out)}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid{visibility:hidden;color:var(--border-strong);transform:rotate(90deg)}.sui-dg-hcell.sc-sui-data-grid:hover .sui-glyph.rest.sc-sui-data-grid,[sort-indicator='all'].sc-sui-data-grid-h .sui-dg-hcell.sc-sui-data-grid .sui-glyph.rest.sc-sui-data-grid{visibility:visible}.sui-dg-hcell.sc-sui-data-grid .sui-glyph.arrow.sc-sui-data-grid{color:var(--ink-muted)}.sui-dg-hcell.sc-sui-data-grid .ord.sc-sui-data-grid{flex-shrink:0;min-width:14px;margin-inline-start:4px;padding:0 3px;border-radius:var(--radius-pill);background:var(--brand-soft);color:var(--brand-soft-ink);font-size:9.5px;line-height:14px;text-align:center}.sui-dg-body.sc-sui-data-grid{position:relative;pointer-events:none}.sui-dg-sticky.sc-sui-data-grid{position:sticky;top:0;height:0;overflow:visible;z-index:1;isolation:isolate}.sui-dg-layer.sc-sui-data-grid{position:absolute;top:0;inset-inline-start:0}.sui-dg-row.sc-sui-data-grid{position:absolute;top:0;inset-inline-start:0;display:flex;box-sizing:border-box;background:var(--surface);contain:layout style}.sui-dg-row.sc-sui-data-grid::after{content:'';position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--hairline);pointer-events:none}.sui-dg-row.odd.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-row.sc-sui-data-grid:hover{background:color-mix(in srgb, var(--surface-sunken) 70%, var(--brand-soft))}.sui-dg-head.sc-sui-data-grid .sui-dg-pane.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-cell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;padding:0 var(--dg-cell-x);font-size:var(--text-md);font-weight:460;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sui-dg-cell.al-right.sc-sui-data-grid,.sui-dg-hcell.al-right.sc-sui-data-grid{justify-content:flex-end;text-align:right}.sui-dg-cell.al-end.sc-sui-data-grid,.sui-dg-hcell.al-end.sc-sui-data-grid{justify-content:flex-end;text-align:end}.sui-dg-cell.al-center.sc-sui-data-grid,.sui-dg-hcell.al-center.sc-sui-data-grid{justify-content:center;text-align:center}.sc-sui-data-grid-h:dir(rtl) .sui-dg-cell.al-right.sc-sui-data-grid,.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-right.sc-sui-data-grid{justify-content:flex-start}.sc-sui-data-grid-h:dir(rtl) .sui-dg-cell.al-left.sc-sui-data-grid,.sc-sui-data-grid-h:dir(rtl) .sui-dg-hcell.al-left.sc-sui-data-grid{justify-content:flex-end;text-align:left}.sui-dg-cell.money.sc-sui-data-grid{font-weight:640}.sui-dg-cell.num.sc-sui-data-grid{font-feature-settings:var(--numeric-tabular)}.sui-dg-cell.muted.sc-sui-data-grid{color:var(--ink-muted)}.sui-dg-cell.focus.sc-sui-data-grid{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0;z-index:1}.sui-dg-cell.sc-sui-data-grid:focus{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0}.sui-dg-hcell.focus.sc-sui-data-grid,.sui-dg-hcell.sc-sui-data-grid:focus{outline:2px solid var(--focus-ring);outline-offset:-2px;border-radius:0;z-index:1}.sui-dg-sr.sc-sui-data-grid{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.sui-dg-status.sc-sui-data-grid{position:relative;flex:none}.sui-dg.vacant.sc-sui-data-grid .sui-dg-viewport.sc-sui-data-grid{flex:none}.sui-dg.vacant.sc-sui-data-grid .sui-dg-status.sc-sui-data-grid{flex:1;min-height:0;overflow:auto}.sui-dg-empty.sc-sui-data-grid{padding:40px 16px;text-align:center;font-size:var(--text-md);font-weight:620;color:var(--ink-muted)}[density='compact'].sc-sui-data-grid-h .sui-dg-cell.sc-sui-data-grid{font-size:13px}[density='comfortable'].sc-sui-data-grid-h .sui-dg-hrow.sc-sui-data-grid{height:40px}.sui-dg-cell.editing.sc-sui-data-grid{padding:0;overflow:hidden;z-index:2}.sui-dg-cell.editing.sc-sui-data-grid:has(.sui-dg-editerr){overflow:visible}.sui-dg-editor.sc-sui-data-grid{user-select:text;width:100%;height:100%;box-sizing:border-box;margin:0;padding:0 var(--dg-cell-x);border:0;border-radius:0;background:transparent;color:inherit;font:inherit;font-feature-settings:inherit;box-shadow:none;outline:none}.sui-dg-editor.sc-sui-data-grid:not([type='date']){appearance:none;-webkit-appearance:none}.sui-dg-editor.sc-sui-data-grid::-webkit-outer-spin-button,.sui-dg-editor.sc-sui-data-grid::-webkit-inner-spin-button{appearance:none;margin:0}.sui-dg-editor[type='number'].sc-sui-data-grid{-moz-appearance:textfield}.sui-dg-cell.al-right.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:right}.sui-dg-cell.al-left.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:left}.sui-dg-cell.al-end.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:end}.sui-dg-cell.al-center.sc-sui-data-grid .sui-dg-editor.sc-sui-data-grid{text-align:center}.sui-dg-editwrap.sc-sui-data-grid{display:block;width:100%;height:100%}.sui-dg-editerr.sc-sui-data-grid{position:absolute;top:100%;inset-inline-start:0;z-index:3;max-width:320px;margin-top:2px;padding:4px var(--dg-cell-x);border-radius:var(--radius-sm);background:var(--danger);color:var(--on-danger);font-size:var(--text-xs);line-height:var(--leading-snug);box-shadow:var(--shadow-pop);white-space:normal}.sui-dg-cell.sel.sc-sui-data-grid{background:var(--brand-soft)}.sui-dg-resizer.sc-sui-data-grid{position:absolute;top:0;bottom:0;inset-inline-end:0;width:8px;cursor:col-resize;z-index:2;touch-action:none}.sui-dg-resizer.sc-sui-data-grid:hover::after{content:'';position:absolute;top:4px;bottom:4px;inset-inline-end:0;width:1px;background:var(--accent)}.sui-dg-guide.sc-sui-data-grid{position:absolute;top:0;bottom:0;width:1px;background:var(--accent);pointer-events:none;display:none;z-index:4}.sui-dg-guide.on.sc-sui-data-grid{display:block}.sui-dg-row.pending.sc-sui-data-grid{pointer-events:none}.sui-dg-skel.sc-sui-data-grid{position:absolute;top:50%;inset-inline:var(--dg-cell-x);height:11px;margin-top:-5.5px;border-radius:4px;background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.sui-dg-skel.sc-sui-data-grid{animation-duration:3s}}.sui-dg-row.sc-sui-data-grid:has(.sui-dg-fill){z-index:1}.sui-dg-cell.sc-sui-data-grid:has(.sui-dg-fill){overflow:visible;z-index:2}.sui-dg-fill.sc-sui-data-grid{position:absolute;inset-inline-end:-2px;bottom:-1px;width:7px;height:7px;background:var(--accent);border:1px solid var(--surface);border-radius:1px;cursor:crosshair;z-index:3;touch-action:none}.sui-dg-cell.fill.sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 55%, transparent)}.sui-dg-fillbox.sc-sui-data-grid{position:absolute;box-sizing:border-box;border:2px dashed var(--accent);pointer-events:none;z-index:2}.sui-dg-box.sc-sui-data-grid{width:18px;height:18px;border:1.5px solid color-mix(in srgb, var(--control-border) 75%, var(--ink));border-radius:var(--radius-xs);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;transition:background var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out)}.sui-dg-box.on.sc-sui-data-grid,.sui-dg-box.some.sc-sui-data-grid{background:var(--brand);border-color:var(--brand)}.sui-dg-box.on.sc-sui-data-grid::after{content:'';width:4px;height:8px;margin-top:-2px;border:solid var(--brand-contrast);border-width:0 2px 2px 0;transform:rotate(45deg)}.sui-dg-box.some.sc-sui-data-grid::after{content:'';width:8px;height:2px;background:var(--brand-contrast)}.sui-dg-hcell.sc-sui-data-grid .sui-dg-box.sc-sui-data-grid{cursor:pointer}.sui-dg-cell[data-col='__sui-select'].sc-sui-data-grid{cursor:pointer}.sui-dg-hcell[data-col='__sui-select'].sc-sui-data-grid{cursor:pointer}.sui-dg-hcell[data-col='__sui-select'].sc-sui-data-grid::after{display:none}.sui-dg-cell.sui-dg-rownum.sc-sui-data-grid{justify-content:center;padding:0 6px;background:var(--surface-sunken);color:var(--ink-faint);font-size:var(--text-xs);font-weight:500;font-feature-settings:var(--numeric-tabular);box-shadow:inset calc(-1px * var(--dg-flip)) 0 0 var(--border);cursor:default}.sui-dg-cell.sui-dg-rownum.cur.sc-sui-data-grid{color:var(--ink);font-weight:650}.sui-dg-cell.sui-dg-rownum.on.sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 75%, var(--surface-sunken));color:var(--ink)}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{cursor:default}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid::after{display:none}.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{box-shadow:inset calc(-1px * var(--dg-flip)) 0 0 var(--border)}.sui-dg-row.picked.sc-sui-data-grid{--ink-muted:var(--ink-muted-on-wash);--ink-faint:var(--ink-muted);background:linear-gradient(var(--surface-selected) 0 0) var(--surface)}.sui-dg-row.picked.sc-sui-data-grid:hover{--ink-faint:var(--ink-muted);background:linear-gradient(var(--surface-hover) 0 0), linear-gradient(var(--surface-selected) 0 0) var(--surface)}.selection-bar.sc-sui-data-grid .sui-dg-row.picked.sc-sui-data-grid>.sui-dg-pane.sc-sui-data-grid:first-child::before{content:'';position:absolute;inset-block:0;inset-inline-start:0;width:3px;z-index:2;background:var(--accent);pointer-events:none}.sui-dg-bar.sc-sui-data-grid{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-bar-slot.sc-sui-data-grid{display:flex;align-items:center;gap:var(--space-2);flex:1;min-width:0}.sui-dg-colbtn.sc-sui-data-grid{margin-inline-start:auto;display:inline-flex;align-items:center;gap:6px;height:var(--control-sm);padding:0 10px;border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font:600 12.5px var(--font-sans);cursor:pointer}.sui-dg-colbtn.sc-sui-data-grid:hover{border-color:color-mix(in srgb, var(--ink) 30%, var(--control-border));background:var(--brand-soft)}.sui-dg-colbtn[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--brand-soft) 84%, var(--ink))}.sui-dg-colbtn.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.sui-dg-colbtn.sc-sui-data-grid .sui-glyph.sc-sui-data-grid{font-size:11px;color:var(--icon-color)}.sui-dg-frow.sc-sui-data-grid{display:flex;height:calc(var(--control-sm) + 8px);box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-fcell.sc-sui-data-grid{position:absolute;top:0;bottom:0;display:flex;align-items:center;box-sizing:border-box;padding:4px var(--dg-cell-x)}.sui-dg-fcell.sc-sui-data-grid .sui-cf-rowgroup.sc-sui-data-grid{user-select:text}.sui-dg-static.sc-sui-data-grid{position:relative;display:flex;background:var(--surface)}.sui-dg-static.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{position:absolute;top:0;bottom:0}.sui-dg-pinned.top.sc-sui-data-grid{box-shadow:inset 0 -1px 0 var(--hairline)}.sui-dg-static.pinned.sc-sui-data-grid{background:var(--surface-sunken)}.sui-dg-foot.sc-sui-data-grid{position:sticky;bottom:0;z-index:4;background:var(--surface);box-shadow:inset 0 1px 0 var(--hairline)}.sui-dg-static.total.sc-sui-data-grid{background:var(--surface);font-weight:650}.sui-dg-static.total.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{color:var(--ink)}@media (forced-colors: active){.sui-dg-hcell.drop-before.sc-sui-data-grid::before{forced-color-adjust:none;background:Highlight}.sui-dg-pane.pin-start.sc-sui-data-grid::after,.sui-dg-pane.pin-end.sc-sui-data-grid::before{background:CanvasText}.sui-dg-hcell.sc-sui-data-grid::after{background:CanvasText}.sui-dg-hcell.sc-sui-data-grid .ord.sc-sui-data-grid{border:1px solid CanvasText}.sui-dg-row.sc-sui-data-grid::after{background:CanvasText}.sui-dg-editerr.sc-sui-data-grid{border:1px solid CanvasText}.sui-dg-cell.sel.sc-sui-data-grid{outline:2px solid Highlight;outline-offset:-4px}.sui-dg-cell.sel.focus.sc-sui-data-grid,.sui-dg-cell.sel.sc-sui-data-grid:focus{outline-color:CanvasText}.sui-dg-resizer.sc-sui-data-grid:hover::after{background:CanvasText}.sui-dg-guide.sc-sui-data-grid{background:Highlight}.sui-dg-skel.sc-sui-data-grid{box-sizing:border-box;border:1px solid GrayText}.sui-dg-fill.sc-sui-data-grid{background:Highlight;border-color:Canvas}.sui-dg-fillbox.sc-sui-data-grid{border-color:Highlight}.sui-dg-box.some.sc-sui-data-grid::after{background:CanvasText}.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid{outline:2px solid Highlight;outline-offset:-4px}.selection-bar.sc-sui-data-grid .sui-dg-row.picked.sc-sui-data-grid>.sui-dg-pane.sc-sui-data-grid:first-child::before{forced-color-adjust:none;background:Highlight}.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.focus.sc-sui-data-grid,.sui-dg-row.picked.sc-sui-data-grid .sui-dg-cell.sc-sui-data-grid:focus{outline-color:CanvasText}.sui-dg-bar.sc-sui-data-grid,.sui-dg-frow.sc-sui-data-grid{border-bottom:1px solid CanvasText}.sui-dg-foot.sc-sui-data-grid{border-top:1px solid CanvasText}.sui-dg-cell.sui-dg-rownum.sc-sui-data-grid,.sui-dg-hcell.sui-dg-rownum.sc-sui-data-grid{box-shadow:none;border-inline-end:1px solid CanvasText}}.sui-cf.sc-sui-data-grid{position:fixed;top:0;left:0;z-index:var(--z-dropdown);box-sizing:border-box;width:280px;max-width:calc(100vw - 16px);max-height:min(78vh, 560px);overflow:auto;overscroll-behavior:contain;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-raised);box-shadow:var(--shadow-pop);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-md);font-weight:460;letter-spacing:normal;text-transform:none;text-align:start;white-space:normal;user-select:text;cursor:auto;animation:sui-cf-in var(--duration-overlay) var(--ease-out)}.sui-cf[data-side='top'].sc-sui-data-grid{animation-name:sui-cf-in-top}.sui-cf.closing.sc-sui-data-grid{animation:sui-cf-out var(--duration-fast) var(--ease-out) forwards;pointer-events:none}@keyframes sui-cf-in{from{opacity:0;margin-top:-4px}}@keyframes sui-cf-in-top{from{opacity:0;margin-top:4px}}@keyframes sui-cf-out{to{opacity:0}}.sui-cf-body.sc-sui-data-grid{display:flex;flex-direction:column;gap:10px}.sui-cf-note.sc-sui-data-grid{margin:-6px 0 12px;font-size:12px;line-height:1.4;color:var(--ink-muted)}.sui-cf-title.sc-sui-data-grid{margin-bottom:12px;font-size:13px;font-weight:650;line-height:1.3;color:var(--ink)}.sui-cf.sui-cf-menu.sc-sui-data-grid{width:440px}.sui-cf-rows.sc-sui-data-grid{display:flex;flex-direction:column;gap:8px}.sui-cf-row.sc-sui-data-grid{display:grid;grid-template-columns:68px minmax(0, 132px) minmax(0, 1fr) 28px;align-items:center;gap:6px;min-width:0}.sui-cf-join.sc-sui-data-grid{display:flex;align-items:center;min-width:0;font-size:12.5px;font-weight:600;color:var(--ink-muted)}.sui-cf-join.muted.sc-sui-data-grid{font-weight:500;color:var(--ink-muted);padding-inline-start:11px}.sui-cf-joinsel.sc-sui-data-grid{width:100%}.sui-cf-val.sc-sui-data-grid{min-width:0}.sui-cf-val.sc-sui-data-grid>*.sc-sui-data-grid{width:100%}.sui-cf-value.sc-sui-data-grid{min-inline-size:0}.sui-cf-pair.sc-sui-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.sui-cf-remove.sc-sui-data-grid,.sui-cf-remove-slot.sc-sui-data-grid{justify-self:end}.sui-cf-remove-slot.sc-sui-data-grid{width:28px}.sui-cf-add.sc-sui-data-grid{align-self:flex-start;margin-inline-start:-8px}.sui-cf-add-glyph.sc-sui-data-grid{order:-1;font-size:11px}@media (max-width: 480px){.sui-cf-row.sc-sui-data-grid{grid-template-columns:60px minmax(0, 1fr) 28px;grid-template-areas:'join mode remove' '. val .';row-gap:6px}.sui-cf-row.sc-sui-data-grid>.sui-cf-join.sc-sui-data-grid{grid-area:join}.sui-cf-row.sc-sui-data-grid>.sui-cf-mode.sc-sui-data-grid{grid-area:mode}.sui-cf-row.sc-sui-data-grid>.sui-cf-val.sc-sui-data-grid{grid-area:val}.sui-cf-row.sc-sui-data-grid>.sui-cf-remove.sc-sui-data-grid,.sui-cf-row.sc-sui-data-grid>.sui-cf-remove-slot.sc-sui-data-grid{grid-area:remove}}.sui-cf-all.sc-sui-data-grid{align-self:stretch;padding-bottom:8px;border-bottom:1px solid var(--hairline)}.sui-cf-opt.sc-sui-data-grid{align-self:flex-start}.sui-cf-list.sc-sui-data-grid{display:flex;flex-direction:column;gap:8px;max-height:232px;overflow:auto;margin-inline:-4px;padding:2px 4px}.sui-cf-body.sc-sui-data-grid>.sui-cf-all.sc-sui-data-grid+.sui-cf-list.sc-sui-data-grid{margin-top:-2px}.sui-cf-none.sc-sui-data-grid{padding:6px 0;font-size:12.5px;color:var(--ink-faint)}.sui-cf-bar.sc-sui-data-grid{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:14px;padding-top:11px;border-top:1px solid var(--border)}.sui-cf-clear.sc-sui-data-grid{appearance:none;margin:0;padding:0;border:0;background:transparent;cursor:pointer;font-family:var(--font-sans);font-size:12.5px;font-weight:620;color:var(--ink-muted)}.sui-cf-clear.sc-sui-data-grid:hover{color:var(--ink)}.sui-cf-clear.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow);border-radius:var(--radius-xs)}.sui-cf-rowgroup.sc-sui-data-grid{display:block;width:100%;min-width:0;--sui-field-chevron:none}.sui-cf-rowbox.sc-sui-data-grid{min-width:0;padding-inline:8px;text-overflow:ellipsis}.sui-cf-rowbox.sc-sui-data-grid::placeholder{color:var(--ink-placeholder)}.sui-cf-rowbox.sc-sui-data-grid:disabled{background:var(--disabled-bg)}.sui-cf-rowpick.sc-sui-data-grid{min-width:0}.sui-cf-modebtn.sc-sui-data-grid{flex:none;color:var(--ink-faint)}.sui-cf-token.sc-sui-data-grid{font-size:15px;font-weight:600;line-height:1;white-space:nowrap;color:var(--ink-muted)}.sui-cf-token.word.sc-sui-data-grid{font-size:11px;font-weight:650;letter-spacing:-0.01em}.sui-cf-modebtn.on.sc-sui-data-grid{background:var(--accent-soft)}.sui-cf-modebtn.on.sc-sui-data-grid .sui-cf-token.sc-sui-data-grid{color:var(--accent-soft-ink)}.sui-cf.sui-cf-modes.sc-sui-data-grid{width:auto;min-width:190px;padding:4px}.sui-cf-funnel.sc-sui-data-grid{flex:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:22px;height:22px;margin:0;margin-inline-start:4px;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ink-faint);font-size:10px;cursor:pointer;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out)}.sui-cf-funnel.sc-sui-data-grid:hover{background:var(--surface-hover);color:var(--ink)}.sui-cf-funnel[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--ink) 9%, transparent);color:var(--ink)}.sui-cf-funnel.on.sc-sui-data-grid{background:var(--accent-soft);color:var(--accent-mark)}.sui-cf-funnel.on.sc-sui-data-grid:hover,.sui-cf-funnel.on[aria-expanded='true'].sc-sui-data-grid{background:color-mix(in srgb, var(--accent-soft) 80%, var(--accent-mark));color:var(--accent-mark)}.sui-cf-funnel.sc-sui-data-grid:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}@media (forced-colors: active){.sui-cf.sc-sui-data-grid{border:1px solid CanvasText}.sui-cf-bar.sc-sui-data-grid,.sui-cf-all.sc-sui-data-grid{border-color:CanvasText}.sui-cf-funnel.on.sc-sui-data-grid{forced-color-adjust:none;background:Highlight;color:HighlightText}.sui-cf-funnel.on.sc-sui-data-grid:focus-visible{outline-color:CanvasText}.sui-cf-modebtn.on.sc-sui-data-grid{forced-color-adjust:none;background:Highlight}.sui-cf-modebtn.on.sc-sui-data-grid .sui-cf-token.sc-sui-data-grid{color:HighlightText}}"}},[774,"sui-data-grid",{columns:[16],rows:[16],rowKey:[16],density:[513],hideSelectionBar:[516,"hide-selection-bar"],rowHeights:[16],overscan:[2],emptyMessage:[1,"empty-message"],emptyFilterMessage:[1,"empty-filter-message"],focusedCell:[1040],sorts:[1040],sortMode:[513,"sort-mode"],sortIndicator:[513,"sort-indicator"],nullOrder:[1537,"null-order"],filterModel:[1040],columnLayout:[1040],selectionMode:[513,"selection-mode"],selection:[1040],rangeSelection:[516,"range-selection"],copyFormulas:[516,"copy-formulas"],editMode:[513,"edit-mode"],loading:[516],stateKey:[1,"state-key"],stateStorage:[513,"state-storage"],pinnedTop:[16],pinnedBottom:[16],footerTotals:[16],rowClass:[16],reorderableColumns:[516,"reorderable-columns"],showColumnToggle:[516,"show-column-toggle"],rowNumbers:[516,"row-numbers"],filterDisplay:[513,"filter-display"],windowRevision:[32],viewportWidth:[32],viewportHeight:[32],focusRevision:[32],headerCol:[32],ranges:[32],editingCell:[32],resizing:[32],fillRow:[32],fillCol:[32],selectionRev:[32],dragKey:[32],dropKey:[32],columnsMenuOpen:[32],filterUi:[32],listUi:[32],filterMenuKey:[32],filterDraftState:[32],filterSearch:[32],menuClosing:[32],hasHeaderSlot:[32],hostLabel:[32],hostLabelledby:[32],modeMenuKey:[32],rowModes:[32],editError:[32],scrollToRow:[64],focusCell:[64],setFocus:[64],exportCsv:[64],getViewport:[64],autosizeColumn:[64],setFilter:[64],paste:[64],copy:[64],undo:[64],redo:[64],cut:[64]},void 0,{columns:[{onModelChange:0}],density:[{onModelChange:0}],rows:[{onModelChange:0}],pinnedTop:[{onChromeChange:0}],pinnedBottom:[{onChromeChange:0}],footerTotals:[{onChromeChange:0}],filterDisplay:[{onChromeChange:0},{onFilterDisplayChange:0}],columnLayout:[{onLayoutChange:0}],sorts:[{onOrderChange:0}],filterModel:[{onOrderChange:0}],nullOrder:[{onOrderChange:0}]}]),Gi=Wi,Yi=function(){"undefined"!=typeof customElements&&["sui-data-grid"].forEach((i=>{"sui-data-grid"===i&&(customElements.get(r(i))||customElements.define(r(i),Wi))}))};export{Gi as SuiDataGrid,Yi as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as s,d as
|
|
1
|
+
import{S as s,d as a}from"./p-BwkaZsaT.js";const o=s,p=a;export{o as SuiDataTable,p as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as s,H as i,c as a,h as t,t as e}from"./p-CeVlau-G.js";import{c as r}from"./p-COO9uV7W.js";import{d as o}from"./p-BHB1Wprj.js";import{c as n,m as d}from"./p-q0JbXN8q.js";import{a as u}from"./p-BWkzTEZX.js";import{p as l}from"./p-DNXYH-fW.js";import{a as c}from"./p-BuyjS5bS.js";import{G as h,B as p,C as g}from"./p-DdsE4HI6.js";import{d as v}from"./p-DskQyZoR.js";import{defineCustomElement as m}from"./p-DgiZgZCh.js";import{d as f}from"./p-D31mbQ3e.js";const w=Symbol("sui-data-view-render-failed"),b=s(class extends i{constructor(s){super(),!1!==s&&this.__registerHost(),this.suiLayoutChange=a(this,"suiLayoutChange",3),this.suiPageChange=a(this,"suiPageChange",3),this.suiPageSizeChange=a(this,"suiPageSizeChange",3)}get host(){return this}items=[];layout="grid";hideToggle=!1;columns=3;itemRender;paginator=!1;page=1;pageSize=12;pageSizes=[12,24,48];totalRecords;loading=!1;emptyMessage;suiLayoutChange;suiPageChange;suiPageSizeChange;hasHeader=!1;stacked=!1;disposeChildren;resizeObserver;clampPending=!1;loaded=!1;connectedCallback(){o(this.host,(()=>this.tabStop())),this.loaded&&this.watch(!0)}async setFocus(){this.tabStop()?.focus()}tabStop(){const s=s=>Array.from(this.host.querySelectorAll(s)).find((s=>s.closest("sui-data-view")===this.host))||null;return s('.toolbar .tg[aria-pressed="true"]')||s(".pager > sui-paginator")}componentWillLoad(){this.syncHeader()}onBounds(){this.clampPending=!0}componentWillRender(){if(!this.clampPending)return;if(this.clampPending=!1,!this.paginator)return;const s=r(this.page||1,1,this.pages());s!==this.page&&(this.page=s,this.suiPageChange.emit(s))}componentDidLoad(){this.loaded=!0,this.watch(),this.measure()}watch(s=!1){this.disposeChildren?.(),this.resizeObserver?.disconnect(),this.disposeChildren=this.observeHeader(),this.resizeObserver="undefined"!=typeof ResizeObserver?new ResizeObserver((()=>this.measure())):void 0,this.resizeObserver?.observe(this.host),s&&Promise.resolve().then((()=>{this.host.isConnected&&(this.syncHeader(),this.measure())}))}measure(){const s=this.host.clientWidth||0;if(!s)return;const i=s<520;i!==this.stacked&&(this.stacked=i)}observeHeader(){if("undefined"==typeof MutationObserver)return()=>{};const s=s=>1===s.nodeType&&s.hasAttribute("slot"),i=i=>Array.from(i.addedNodes).some(s)||Array.from(i.removedNodes).some(s),a=new MutationObserver((s=>{s&&0!==s.length&&!s.some(i)||this.syncHeader()}));return a.observe(this.host,{childList:!0,subtree:!0}),()=>a.disconnect()}gridTrack(){const s="var(--sui-data-view-card-min, 200px)",i=this.columns;if(!i||i<1)return`repeat(auto-fill, minmax(min(100%, ${s}), 1fr))`;const a=Math.floor(i);return`repeat(auto-fill, minmax(min(100%, max(${s}, calc((100% - ${a-1} * var(--gap-grid)) / ${a}))), 1fr))`}disconnectedCallback(){this.disposeChildren?.(),this.disposeChildren=void 0,this.resizeObserver?.disconnect(),this.resizeObserver=void 0}syncHeader(){this.hasHeader=u(this.host,"header").length>0}onToggle=s=>{const i=s.target.closest("button[data-layout]");if(!i)return;const a=i.getAttribute("data-layout");a!==this.layout&&(this.layout=a,this.suiLayoutChange.emit(a))};onPage=s=>{const i=s.target,a=Number(i.page)||1,t=Number(i.pageSize)||this.pageSize,e=t!==this.pageSize,r=a!==this.page;(e||r)&&(this.page=a,this.pageSize=t,e&&this.suiPageSizeChange.emit(t),r&&this.suiPageChange.emit(a))};custom(s,i,a){return n(this.itemRender,[s,i,a],w)}total(){const s=this.items||[];return"number"==typeof this.totalRecords?Math.max(0,this.totalRecords):s.length}pages(){return Math.max(1,Math.ceil(this.total()/Math.max(1,this.pageSize||1)))}offset(s){return this.paginator&&"number"!=typeof this.totalRecords?(s-1)*Math.max(1,this.pageSize||1):0}pageItems(s){const i=this.items||[];if(!this.paginator||"number"==typeof this.totalRecords)return i;const a=Math.max(1,this.pageSize||1),t=this.offset(s);return i.slice(t,t+a)}pill(s){if(!s)return null;if(s.severity)return t("sui-tag",{class:"pill-tag",size:"sm",severity:s.severity,label:s.label});const i={};return s.bg&&(i.background=s.bg),s.color&&(i.color=s.color),t("span",{class:"pill",style:i},s.label)}defaultGrid(s){return[t("div",{class:"g-head"},t("div",{class:"g-title"},s.title),this.pill(s.pill)),s.subtitle?t("div",{class:"g-sub"},s.subtitle):null,t("div",{class:"g-foot"},t("span",{class:"g-meta"},s.meta),t("span",{class:"g-amount"},t("span",{class:"figure"},s.amount)))]}defaultRow(s){return[t("div",{class:"r-main"},t("div",{class:"r-title"},s.title),t("div",{class:"r-sub"},s.subtitle)),t("div",{class:"r-end"},t("span",{class:"r-meta"},s.meta),t("span",{class:"r-amount"},t("span",{class:"figure"},s.amount)),this.pill(s.pill))]}skeleton(s){return Array.from({length:s?Math.max(1,this.columns||1):4},((i,a)=>t("div",{class:{[s?"card":"row"]:!0,skel:!0},key:"sk"+a},t("div",{class:"skel-bar",style:{width:85-a%4*12+"%"}}))))}render(){const s="list"!==this.layout,i=!!this.itemRender,a=!this.hideToggle||this.hasHeader,e=this.total(),o=r(this.page||1,1,this.pages()),n=this.pageItems(o),u=this.offset(o),v=!this.loading&&0===n.length;return t("div",{key:"14ed7e85e647df7194d7db241f2683bb577ffe8b",class:"sui-dv"},a?t("div",{class:{toolbar:!0,"with-head":this.hasHeader}},this.hasHeader?t("div",{class:"head"},t("slot",{name:"header"})):null,this.hideToggle?null:t("div",{class:"toggle",role:"group","aria-label":c(void 0,"data-view.layout",void 0,"Layout"),onClick:this.onToggle},t("button",{type:"button",class:{tg:!0,on:s},"data-layout":"grid","aria-label":c(void 0,"data-view.gridLayout",void 0,"Grid layout"),"aria-pressed":s?"true":"false"},t(h,{glyph:p})),t("button",{type:"button",class:{tg:!0,on:!s},"data-layout":"list","aria-label":c(void 0,"data-view.listLayout",void 0,"List layout"),"aria-pressed":s?"false":"true"},t(h,{glyph:g})))):null,v?t("div",{class:"empty",role:"status"},c(void 0,"data-view.empty",this.emptyMessage,"Nothing here yet.")):s?t("div",{class:"grid","aria-busy":this.loading?"true":null,style:{gridTemplateColumns:this.gridTrack()}},this.loading?this.skeleton(!0):n.map(((s,a)=>{const e=i?this.custom(s,"grid",u+a):w;return e!==w?t("div",{class:"card",key:"c"+(u+a),ref:s=>d(s,e)}):t("div",{class:"card",key:"d"+(u+a)},this.defaultGrid(s))}))):t("div",{class:{list:!0,stacked:this.stacked},"aria-busy":this.loading?"true":null},this.loading?this.skeleton(!1):n.map(((s,a)=>{const e=i?this.custom(s,"list",u+a):w;return e!==w?t("div",{class:"row",key:"c"+(u+a),ref:s=>d(s,e)}):t("div",{class:"row",key:"d"+(u+a)},this.defaultRow(s))}))),this.paginator&&!l(e,this.pageSize,this.pageSizes,!1,!1)?t("div",{class:"pager"},t("sui-paginator",{totalRecords:e,page:o,pageSize:this.pageSize,pageSizes:this.pageSizes,onSuiPageChange:this.onPage,onSuiPageSizeChange:this.onPage})):null)}static get watchers(){return{items:[{onBounds:0}],totalRecords:[{onBounds:0}],pageSize:[{onBounds:0}],page:[{onBounds:0}]}}static get style(){return".sc-sui-data-view-h{display:block;min-width:0;font-family:var(--font-sans);color:var(--ink)}.toolbar.sc-sui-data-view{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:10px}.toolbar.with-head.sc-sui-data-view{justify-content:space-between}.head.sc-sui-data-view{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.toggle.sc-sui-data-view{display:inline-flex;gap:2px;padding:2px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-md)}.tg.sc-sui-data-view{width:30px;height:26px;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ink-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out)}.tg.sc-sui-data-view .sui-glyph.sc-sui-data-view{font-size:11px}.tg.sc-sui-data-view:hover:not(.on){color:var(--ink)}.tg.on.sc-sui-data-view{background:var(--brand);color:var(--brand-contrast)}.tg.sc-sui-data-view:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.grid.sc-sui-data-view{display:grid;gap:var(--gap-grid)}.card.sc-sui-data-view{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-pad-tight);box-shadow:none;transition:box-shadow var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out)}.card.sc-sui-data-view:hover{border-color:var(--border-strong);box-shadow:var(--shadow-raised)}.g-head.sc-sui-data-view{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.g-title.sc-sui-data-view{font-size:13.5px;font-weight:700}.g-sub.sc-sui-data-view{font-size:12px;color:var(--ink-faint);margin-top:2px}.g-foot.sc-sui-data-view{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px}.g-meta.sc-sui-data-view{font-size:11.5px;color:var(--ink-muted)}.g-amount.sc-sui-data-view{font-size:15px;font-weight:720;font-feature-settings:'tnum'}.list.sc-sui-data-view{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.row.sc-sui-data-view{display:flex;align-items:center;gap:14px;padding:11px 16px;background:transparent;border-top:1px solid var(--hairline);transition:background var(--duration-fast) var(--ease-out)}.row.sc-sui-data-view:first-child{border-top:none}.row.sc-sui-data-view:hover{--ink-faint:var(--ink-muted);background:var(--surface-hover)}.r-main.sc-sui-data-view{flex:1;min-width:0}.r-end.sc-sui-data-view{display:flex;align-items:center;gap:14px}.list.stacked.sc-sui-data-view .row.sc-sui-data-view:has(.r-end){display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:4px 14px;align-items:start}.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view{display:contents}.list.stacked.sc-sui-data-view .r-main.sc-sui-data-view{grid-area:1 / 1}.list.stacked.sc-sui-data-view .r-amount.sc-sui-data-view{grid-area:1 / 2}.list.stacked.sc-sui-data-view .r-meta.sc-sui-data-view{grid-area:2 / 1;align-self:center}.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view .pill.sc-sui-data-view,.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view .pill-tag.sc-sui-data-view{grid-area:2 / 2;align-self:center;justify-self:end}.r-title.sc-sui-data-view{font-size:13.5px;font-weight:650}.r-sub.sc-sui-data-view{font-size:12px;color:var(--ink-faint)}.r-meta.sc-sui-data-view{font-size:12px;color:var(--ink-muted)}.r-amount.sc-sui-data-view{font-size:13.5px;font-weight:700;font-feature-settings:'tnum';min-width:90px;text-align:end}.figure.sc-sui-data-view{direction:ltr;unicode-bidi:plaintext}.empty.sc-sui-data-view{padding:36px 16px;text-align:center;font-size:13.5px;font-weight:620;color:var(--ink-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.card.skel.sc-sui-data-view,.row.skel.sc-sui-data-view{display:flex;align-items:center}.card.skel.sc-sui-data-view{min-height:72px}.skel-bar.sc-sui-data-view{height:13px;border-radius:4px;width:100%;background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.skel-bar.sc-sui-data-view{animation-duration:3s}}.card.skel.sc-sui-data-view:hover{border-color:var(--border);box-shadow:none}.row.skel.sc-sui-data-view:hover{background:transparent}.pager.sc-sui-data-view{margin-top:10px}.pill.sc-sui-data-view{display:inline-block;padding:2px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:650;background:var(--brand-soft);color:var(--brand-soft-ink);white-space:nowrap}@media (forced-colors: active){.tg.on.sc-sui-data-view{forced-color-adjust:none;background:Highlight;color:HighlightText}.tg.on.sc-sui-data-view:focus-visible{outline-color:CanvasText;box-shadow:none}.skel-bar.sc-sui-data-view{box-sizing:border-box;border:1px solid GrayText}.pill.sc-sui-data-view{border:1px solid CanvasText}}"}},[774,"sui-data-view",{items:[16],layout:[1537],hideToggle:[516,"hide-toggle"],columns:[2],itemRender:[16],paginator:[516],page:[1026],pageSize:[1026,"page-size"],pageSizes:[16],totalRecords:[2,"total-records"],loading:[516],emptyMessage:[1,"empty-message"],hasHeader:[32],stacked:[32],setFocus:[64]},void 0,{items:[{onBounds:0}],totalRecords:[{onBounds:0}],pageSize:[{onBounds:0}],page:[{onBounds:0}]}]),x=b,y=function(){"undefined"!=typeof customElements&&["sui-data-view","sui-paginator","sui-select","sui-tag"].forEach((s=>{switch(s){case"sui-data-view":customElements.get(e(s))||customElements.define(e(s),b);break;case"sui-paginator":customElements.get(e(s))||v();break;case"sui-select":customElements.get(e(s))||m();break;case"sui-tag":customElements.get(e(s))||f()}}))};export{x as SuiDataView,y as defineCustomElement}
|
|
1
|
+
import{p as s,H as i,c as a,h as t,t as e}from"./p-CeVlau-G.js";import{c as r}from"./p-qut9RP2y.js";import{d as o}from"./p-BHB1Wprj.js";import{c as n,m as d}from"./p-q0JbXN8q.js";import{a as u}from"./p-BWkzTEZX.js";import{p as l}from"./p-DNXYH-fW.js";import{a as c}from"./p-BuyjS5bS.js";import{G as h,B as p,C as g}from"./p-BeYfX4rQ.js";import{d as v}from"./p-DWqzHMCu.js";import{defineCustomElement as f}from"./p-CDiy2nTd.js";import{d as m}from"./p-DthM6mDw.js";const w=Symbol("sui-data-view-render-failed"),b=s(class extends i{constructor(s){super(),!1!==s&&this.__registerHost(),this.suiLayoutChange=a(this,"suiLayoutChange",3),this.suiPageChange=a(this,"suiPageChange",3),this.suiPageSizeChange=a(this,"suiPageSizeChange",3)}get host(){return this}items=[];layout="grid";hideToggle=!1;columns=3;itemRender;paginator=!1;page=1;pageSize=12;pageSizes=[12,24,48];totalRecords;loading=!1;emptyMessage;suiLayoutChange;suiPageChange;suiPageSizeChange;hasHeader=!1;stacked=!1;disposeChildren;resizeObserver;clampPending=!1;loaded=!1;connectedCallback(){o(this.host,(()=>this.tabStop())),this.loaded&&this.watch(!0)}async setFocus(){this.tabStop()?.focus()}tabStop(){const s=s=>Array.from(this.host.querySelectorAll(s)).find((s=>s.closest("sui-data-view")===this.host))||null;return s('.toolbar .tg[aria-pressed="true"]')||s(".pager > sui-paginator")}componentWillLoad(){this.syncHeader()}onBounds(){this.clampPending=!0}componentWillRender(){if(!this.clampPending)return;if(this.clampPending=!1,!this.paginator)return;const s=r(this.page||1,1,this.pages());s!==this.page&&(this.page=s,this.suiPageChange.emit(s))}componentDidLoad(){this.loaded=!0,this.watch(),this.measure()}watch(s=!1){this.disposeChildren?.(),this.resizeObserver?.disconnect(),this.disposeChildren=this.observeHeader(),this.resizeObserver="undefined"!=typeof ResizeObserver?new ResizeObserver((()=>this.measure())):void 0,this.resizeObserver?.observe(this.host),s&&Promise.resolve().then((()=>{this.host.isConnected&&(this.syncHeader(),this.measure())}))}measure(){const s=this.host.clientWidth||0;if(!s)return;const i=s<520;i!==this.stacked&&(this.stacked=i)}observeHeader(){if("undefined"==typeof MutationObserver)return()=>{};const s=s=>1===s.nodeType&&s.hasAttribute("slot"),i=i=>Array.from(i.addedNodes).some(s)||Array.from(i.removedNodes).some(s),a=new MutationObserver((s=>{s&&0!==s.length&&!s.some(i)||this.syncHeader()}));return a.observe(this.host,{childList:!0,subtree:!0}),()=>a.disconnect()}gridTrack(){const s="var(--sui-data-view-card-min, 200px)",i=this.columns;if(!i||i<1)return`repeat(auto-fill, minmax(min(100%, ${s}), 1fr))`;const a=Math.floor(i);return`repeat(auto-fill, minmax(min(100%, max(${s}, calc((100% - ${a-1} * var(--gap-grid)) / ${a}))), 1fr))`}disconnectedCallback(){this.disposeChildren?.(),this.disposeChildren=void 0,this.resizeObserver?.disconnect(),this.resizeObserver=void 0}syncHeader(){this.hasHeader=u(this.host,"header").length>0}onToggle=s=>{const i=s.target.closest("button[data-layout]");if(!i)return;const a=i.getAttribute("data-layout");a!==this.layout&&(this.layout=a,this.suiLayoutChange.emit(a))};onPage=s=>{const i=s.target,a=Number(i.page)||1,t=Number(i.pageSize)||this.pageSize,e=t!==this.pageSize,r=a!==this.page;(e||r)&&(this.page=a,this.pageSize=t,e&&this.suiPageSizeChange.emit(t),r&&this.suiPageChange.emit(a))};custom(s,i,a){return n(this.itemRender,[s,i,a],w)}total(){const s=this.items||[];return"number"==typeof this.totalRecords?Math.max(0,this.totalRecords):s.length}pages(){return Math.max(1,Math.ceil(this.total()/Math.max(1,this.pageSize||1)))}offset(s){return this.paginator&&"number"!=typeof this.totalRecords?(s-1)*Math.max(1,this.pageSize||1):0}pageItems(s){const i=this.items||[];if(!this.paginator||"number"==typeof this.totalRecords)return i;const a=Math.max(1,this.pageSize||1),t=this.offset(s);return i.slice(t,t+a)}pill(s){if(!s)return null;if(s.severity)return t("sui-tag",{class:"pill-tag",size:"sm",severity:s.severity,label:s.label});const i={};return s.bg&&(i.background=s.bg),s.color&&(i.color=s.color),t("span",{class:"pill",style:i},s.label)}defaultGrid(s){return[t("div",{class:"g-head"},t("div",{class:"g-title"},s.title),this.pill(s.pill)),s.subtitle?t("div",{class:"g-sub"},s.subtitle):null,t("div",{class:"g-foot"},t("span",{class:"g-meta"},s.meta),t("span",{class:"g-amount"},t("span",{class:"figure"},s.amount)))]}defaultRow(s){return[t("div",{class:"r-main"},t("div",{class:"r-title"},s.title),t("div",{class:"r-sub"},s.subtitle)),t("div",{class:"r-end"},t("span",{class:"r-meta"},s.meta),t("span",{class:"r-amount"},t("span",{class:"figure"},s.amount)),this.pill(s.pill))]}skeleton(s){return Array.from({length:s?Math.max(1,this.columns||1):4},((i,a)=>t("div",{class:{[s?"card":"row"]:!0,skel:!0},key:"sk"+a},t("div",{class:"skel-bar",style:{width:85-a%4*12+"%"}}))))}render(){const s="list"!==this.layout,i=!!this.itemRender,a=!this.hideToggle||this.hasHeader,e=this.total(),o=r(this.page||1,1,this.pages()),n=this.pageItems(o),u=this.offset(o),v=!this.loading&&0===n.length;return t("div",{key:"14ed7e85e647df7194d7db241f2683bb577ffe8b",class:"sui-dv"},a?t("div",{class:{toolbar:!0,"with-head":this.hasHeader}},this.hasHeader?t("div",{class:"head"},t("slot",{name:"header"})):null,this.hideToggle?null:t("div",{class:"toggle",role:"group","aria-label":c(void 0,"data-view.layout",void 0,"Layout"),onClick:this.onToggle},t("button",{type:"button",class:{tg:!0,on:s},"data-layout":"grid","aria-label":c(void 0,"data-view.gridLayout",void 0,"Grid layout"),"aria-pressed":s?"true":"false"},t(h,{glyph:p})),t("button",{type:"button",class:{tg:!0,on:!s},"data-layout":"list","aria-label":c(void 0,"data-view.listLayout",void 0,"List layout"),"aria-pressed":s?"false":"true"},t(h,{glyph:g})))):null,v?t("div",{class:"empty",role:"status"},c(void 0,"data-view.empty",this.emptyMessage,"Nothing here yet.")):s?t("div",{class:"grid","aria-busy":this.loading?"true":null,style:{gridTemplateColumns:this.gridTrack()}},this.loading?this.skeleton(!0):n.map(((s,a)=>{const e=i?this.custom(s,"grid",u+a):w;return e!==w?t("div",{class:"card",key:"c"+(u+a),ref:s=>d(s,e)}):t("div",{class:"card",key:"d"+(u+a)},this.defaultGrid(s))}))):t("div",{class:{list:!0,stacked:this.stacked},"aria-busy":this.loading?"true":null},this.loading?this.skeleton(!1):n.map(((s,a)=>{const e=i?this.custom(s,"list",u+a):w;return e!==w?t("div",{class:"row",key:"c"+(u+a),ref:s=>d(s,e)}):t("div",{class:"row",key:"d"+(u+a)},this.defaultRow(s))}))),this.paginator&&!l(e,this.pageSize,this.pageSizes,!1,!1)?t("div",{class:"pager"},t("sui-paginator",{totalRecords:e,page:o,pageSize:this.pageSize,pageSizes:this.pageSizes,onSuiPageChange:this.onPage,onSuiPageSizeChange:this.onPage})):null)}static get watchers(){return{items:[{onBounds:0}],totalRecords:[{onBounds:0}],pageSize:[{onBounds:0}],page:[{onBounds:0}]}}static get style(){return".sc-sui-data-view-h{display:block;min-width:0;font-family:var(--font-sans);color:var(--ink)}.toolbar.sc-sui-data-view{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:10px}.toolbar.with-head.sc-sui-data-view{justify-content:space-between}.head.sc-sui-data-view{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.toggle.sc-sui-data-view{display:inline-flex;gap:2px;padding:2px;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius-md)}.tg.sc-sui-data-view{width:30px;height:26px;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--ink-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out)}.tg.sc-sui-data-view .sui-glyph.sc-sui-data-view{font-size:11px}.tg.sc-sui-data-view:hover:not(.on){color:var(--ink)}.tg.on.sc-sui-data-view{background:var(--brand);color:var(--brand-contrast)}.tg.sc-sui-data-view:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.grid.sc-sui-data-view{display:grid;gap:var(--gap-grid)}.card.sc-sui-data-view{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--card-pad-tight);box-shadow:none;transition:box-shadow var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out)}.card.sc-sui-data-view:hover{border-color:var(--border-strong);box-shadow:var(--shadow-raised)}.g-head.sc-sui-data-view{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.g-title.sc-sui-data-view{font-size:13.5px;font-weight:700}.g-sub.sc-sui-data-view{font-size:12px;color:var(--ink-faint);margin-top:2px}.g-foot.sc-sui-data-view{display:flex;justify-content:space-between;align-items:baseline;margin-top:12px}.g-meta.sc-sui-data-view{font-size:11.5px;color:var(--ink-muted)}.g-amount.sc-sui-data-view{font-size:15px;font-weight:720;font-feature-settings:'tnum'}.list.sc-sui-data-view{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.row.sc-sui-data-view{display:flex;align-items:center;gap:14px;padding:11px 16px;background:transparent;border-top:1px solid var(--hairline);transition:background var(--duration-fast) var(--ease-out)}.row.sc-sui-data-view:first-child{border-top:none}.row.sc-sui-data-view:hover{--ink-faint:var(--ink-muted);background:var(--surface-hover)}.r-main.sc-sui-data-view{flex:1;min-width:0}.r-end.sc-sui-data-view{display:flex;align-items:center;gap:14px}.list.stacked.sc-sui-data-view .row.sc-sui-data-view:has(.r-end){display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:4px 14px;align-items:start}.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view{display:contents}.list.stacked.sc-sui-data-view .r-main.sc-sui-data-view{grid-area:1 / 1}.list.stacked.sc-sui-data-view .r-amount.sc-sui-data-view{grid-area:1 / 2}.list.stacked.sc-sui-data-view .r-meta.sc-sui-data-view{grid-area:2 / 1;align-self:center}.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view .pill.sc-sui-data-view,.list.stacked.sc-sui-data-view .r-end.sc-sui-data-view .pill-tag.sc-sui-data-view{grid-area:2 / 2;align-self:center;justify-self:end}.r-title.sc-sui-data-view{font-size:13.5px;font-weight:650}.r-sub.sc-sui-data-view{font-size:12px;color:var(--ink-faint)}.r-meta.sc-sui-data-view{font-size:12px;color:var(--ink-muted)}.r-amount.sc-sui-data-view{font-size:13.5px;font-weight:700;font-feature-settings:'tnum';min-width:90px;text-align:end}.figure.sc-sui-data-view{direction:ltr;unicode-bidi:plaintext}.empty.sc-sui-data-view{padding:36px 16px;text-align:center;font-size:13.5px;font-weight:620;color:var(--ink-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.card.skel.sc-sui-data-view,.row.skel.sc-sui-data-view{display:flex;align-items:center}.card.skel.sc-sui-data-view{min-height:72px}.skel-bar.sc-sui-data-view{height:13px;border-radius:4px;width:100%;background:linear-gradient(90deg, var(--surface-sunken) 25%, var(--brand-soft) 50%, var(--surface-sunken) 75%);background-size:300% 100%;animation:sb-shimmer 1.4s infinite linear}@media (prefers-reduced-motion: reduce){.skel-bar.sc-sui-data-view{animation-duration:3s}}.card.skel.sc-sui-data-view:hover{border-color:var(--border);box-shadow:none}.row.skel.sc-sui-data-view:hover{background:transparent}.pager.sc-sui-data-view{margin-top:10px}.pill.sc-sui-data-view{display:inline-block;padding:2px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:650;background:var(--brand-soft);color:var(--brand-soft-ink);white-space:nowrap}@media (forced-colors: active){.tg.on.sc-sui-data-view{forced-color-adjust:none;background:Highlight;color:HighlightText}.tg.on.sc-sui-data-view:focus-visible{outline-color:CanvasText;box-shadow:none}.skel-bar.sc-sui-data-view{box-sizing:border-box;border:1px solid GrayText}.pill.sc-sui-data-view{border:1px solid CanvasText}}"}},[774,"sui-data-view",{items:[16],layout:[1537],hideToggle:[516,"hide-toggle"],columns:[2],itemRender:[16],paginator:[516],page:[1026],pageSize:[1026,"page-size"],pageSizes:[16],totalRecords:[2,"total-records"],loading:[516],emptyMessage:[1,"empty-message"],hasHeader:[32],stacked:[32],setFocus:[64]},void 0,{items:[{onBounds:0}],totalRecords:[{onBounds:0}],pageSize:[{onBounds:0}],page:[{onBounds:0}]}]),x=b,y=function(){"undefined"!=typeof customElements&&["sui-data-view","sui-paginator","sui-select","sui-tag"].forEach((s=>{switch(s){case"sui-data-view":customElements.get(e(s))||customElements.define(e(s),b);break;case"sui-paginator":customElements.get(e(s))||v();break;case"sui-select":customElements.get(e(s))||f();break;case"sui-tag":customElements.get(e(s))||m()}}))};export{x as SuiDataView,y as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{SuiDatePicker as e,defineCustomElement as
|
|
1
|
+
import{SuiDatePicker as e,defineCustomElement as i}from"./p-CBiEHE-i.js";const t=e,o=i;export{t as SuiDatePicker,o as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as i,H as s,c as t,h as
|
|
1
|
+
import{p as i,H as s,c as t,h as e,a as o,t as n}from"./p-CeVlau-G.js";import{m as r}from"./p-q0JbXN8q.js";import{c as a}from"./p-C-6_KLLy.js";import{l as c,a as d}from"./p-BuyjS5bS.js";import{G as l,k as p,l as u}from"./p-BeYfX4rQ.js";import{d as m}from"./p-b5Ks_pUg.js";const f=i(class extends s{constructor(i){super(),!1!==i&&this.__registerHost(),this.suiCopy=t(this,"suiCopy",7),this.suiCopyError=t(this,"suiCopyError",7)}get host(){return this}items=[];layout="rows";columns=2;termWidth=150;align="start";suiCopy;suiCopyError;copiedIdx=-1;copiedTimer;disconnectedCallback(){clearTimeout(this.copiedTimer),this.copiedIdx=-1}textOf(i){const s=i.detail;return null==s?"":"object"==typeof s?s.textContent||"":s+""}async copy(i,s){const t=this.textOf(i),e=await a(t);this.host.isConnected&&(e?(clearTimeout(this.copiedTimer),this.copiedIdx=s,this.copiedTimer=setTimeout((()=>this.copiedIdx=-1),1400),this.suiCopy.emit(t)):this.suiCopyError.emit(t))}renderCopy(i,s){const t=this.copiedIdx===s;return e("sui-tooltip",{content:t?d(void 0,"description-list.copied",void 0,"Copied"):d(void 0,"description-list.copy",void 0,"Copy"),position:"top",open:t},e("button",{type:"button",class:{copy:!0,done:t},"aria-label":c(void 0,"description-list.copyName",void 0,"Copy {name}",{name:i.term}),onClick:()=>{this.copy(i,s)}},e(l,{glyph:t?p:u})))}render(){const i="rows"===this.layout,s=this.items||[];return e(o,{key:"a1e220243fe7d55656465055ea99c5fd4f16b8b3"},e("dl",{key:"40d4ded095fd72700df4e5b8eae9e2042f575d6f",class:{"sui-dl":!0,rows:i,columns:!i,end:"end"===this.align},style:i?void 0:{gridTemplateColumns:`repeat(${Math.max(1,0|this.columns)}, 1fr)`}},s.map(((s,t)=>e("div",{class:"item",key:t},e("dt",{class:"term",style:i?{width:this.termWidth+"px"}:void 0},s.term),e("dd",{class:{detail:!0,strong:!!s.strong}},e("span",{class:"value",ref:i=>r(i,s.detail)}),s.copy?this.renderCopy(s,t):null))))),e("span",{key:"6699245bda7806c9309dff4c92aaa7c2aab1f61a",class:"sr-status",role:"status","aria-live":"polite"},this.copiedIdx>=0?d(void 0,"description-list.copied",void 0,"Copied"):""))}static get style(){return".sc-sui-description-list-h{display:block;font-family:var(--font-sans);color:var(--ink)}[align].sc-sui-description-list-h{text-align:inherit}.sui-dl.sc-sui-description-list{margin:0;padding:0}.sui-dl.columns.sc-sui-description-list{display:grid;gap:8px}.rows.sc-sui-description-list .item.sc-sui-description-list{display:flex;gap:14px;padding:8px 0;border-bottom:1px solid var(--hairline);align-items:baseline}.rows.sc-sui-description-list .term.sc-sui-description-list{flex-shrink:0;margin:0;font-size:12.5px;font-weight:550;color:var(--ink-muted)}.columns.sc-sui-description-list .item.sc-sui-description-list{display:flex;flex-direction:column;gap:3px;padding:10px 12px;background:var(--surface-sunken);border-radius:var(--radius-md);min-width:0}.columns.sc-sui-description-list .term.sc-sui-description-list{width:auto;margin:0;font-size:10.5px;font-weight:650;color:var(--ink-muted);text-transform:uppercase;letter-spacing:0.06em}.detail.sc-sui-description-list{flex:1;margin:0;min-width:0;display:flex;align-items:center;gap:6px;font-size:13.5px;font-weight:550;color:var(--ink);font-feature-settings:'tnum'}.detail.strong.sc-sui-description-list{font-weight:700}.value.sc-sui-description-list{min-width:0;overflow-wrap:anywhere}.end.sc-sui-description-list .detail.sc-sui-description-list{justify-content:flex-end;text-align:end}.columns.end.sc-sui-description-list .item.sc-sui-description-list{align-items:flex-end;text-align:end}.copy.sc-sui-description-list{appearance:none;display:inline-flex;align-items:center;justify-content:center;margin:0;padding:2px;border:0;background:transparent;border-radius:var(--radius-xs);font-size:10.5px;line-height:1;color:var(--ink-faint);cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.copy.sc-sui-description-list:hover{color:var(--ink)}.copy.done.sc-sui-description-list{background:var(--brand-soft);color:var(--brand-soft-ink)}.copy.sc-sui-description-list:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px;box-shadow:var(--focus-shadow)}.sr-status.sc-sui-description-list{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}"}},[514,"sui-description-list",{items:[16],layout:[513],columns:[2],termWidth:[2,"term-width"],align:[513],copiedIdx:[32]}]),h=f,g=function(){"undefined"!=typeof customElements&&["sui-description-list","sui-tooltip"].forEach((i=>{switch(i){case"sui-description-list":customElements.get(n(i))||customElements.define(n(i),f);break;case"sui-tooltip":customElements.get(n(i))||m()}}))};export{h as SuiDescriptionList,g as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{S as o,d as s}from"./p-
|
|
1
|
+
import{S as o,d as s}from"./p-BB3IbuND.js";const p=o,r=s;export{p as SuiDialog,r as defineCustomElement}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as i,H as e,h as s,a as r,t}from"./p-CeVlau-G.js";const d=i(class extends e{constructor(i){super(),!1!==i&&this.__registerHost()}label;orientation="horizontal";strong=!1;dashed=!1;height=24;spacing=14;render(){const i="vertical"===this.orientation,e=!i&&!!this.label;return s(r,{key:"
|
|
1
|
+
import{p as i,H as e,h as s,a as r,t}from"./p-CeVlau-G.js";const d=i(class extends e{constructor(i){super(),!1!==i&&this.__registerHost()}label;orientation="horizontal";strong=!1;dashed=!1;height=24;spacing=14;render(){const i="vertical"===this.orientation,e=!i&&!!this.label;return s(r,{key:"74bbb0a2dc9ef0693f9516d0dbdd927e7804337f",role:"separator","aria-orientation":i?"vertical":"horizontal",class:{labeled:e,strong:this.strong,dashed:this.dashed},style:i?{minHeight:this.height+"px",margin:`0 ${this.spacing}px`}:{margin:this.spacing+"px 0"}},e?[s("span",{class:"line"}),s("span",{class:"label"},this.label),s("span",{class:"line"})]:null)}static get style(){return'.sc-sui-divider-h{--sui-divider-color:var(--hairline);--sui-divider-style:solid;display:block;box-sizing:border-box;font-family:var(--font-sans);border:0 var(--sui-divider-style) var(--sui-divider-color);border-top-width:1px}.strong.sc-sui-divider-h{--sui-divider-color:var(--border-strong)}.dashed.sc-sui-divider-h{--sui-divider-style:dashed}[orientation="vertical"].sc-sui-divider-h{display:inline-block;align-self:stretch;border-top-width:0;border-inline-start-width:1px}.labeled.sc-sui-divider-h{display:flex;align-items:center;gap:12px;border-top-width:0}.line.sc-sui-divider{flex:1;border-top:1px var(--sui-divider-style) var(--sui-divider-color)}.label.sc-sui-divider{font-size:11px;font-weight:650;letter-spacing:0.08em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap}'}},[514,"sui-divider",{label:[1],orientation:[513],strong:[516],dashed:[516],height:[2],spacing:[2]}]),a=d,o=function(){"undefined"!=typeof customElements&&["sui-divider"].forEach((i=>{"sui-divider"===i&&(customElements.get(t(i))||customElements.define(t(i),d))}))};export{a as SuiDivider,o as defineCustomElement}
|