@revolist/revogrid 4.0.37 → 4.0.39
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/dist/cjs/revo-grid.cjs.entry.js +56 -35
- package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
- package/dist/collection/components/revoGrid/revo-grid.js +56 -35
- package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
- package/dist/esm/revo-grid.entry.js +56 -35
- package/dist/esm/revo-grid.entry.js.map +1 -1
- package/dist/revo-grid/revo-grid.entry.js +1 -1
- package/dist/revo-grid/revo-grid.entry.js.map +1 -1
- package/dist/types/components/revoGrid/revo-grid.d.ts +12 -2
- package/hydrate/index.js +56 -35
- package/hydrate/index.mjs +56 -35
- package/package.json +5 -1
- package/standalone/revo-grid.js +56 -35
- package/standalone/revo-grid.js.map +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* Built by Revolist OU ❤️
|
|
3
3
|
*/
|
|
4
|
-
import{h as e,r as t,c as r,H as i,a as o}from"./index-e661aeb5.js";import{_ as s,n,o as a,q as h,u as l,v as d,w as c,r as g,D as u,b as f,e as v,m as p,s as m,a as w,f as b,j as x,x as C,y,z as S,A as k,l as R,B as j,C as O,g as E,d as L,i as P}from"./dimension.helpers-c0c2888f.js";import{B as z,c as H,r as M,i as I,D}from"./base.plugin-e6e2bac2.js";import{_ as F,c as T}from"./toNumber-8de324a7.js";import{E as N,b as $}from"./selection.helpers-0f3ed629.js";import{d as B}from"./debounce-7781346d.js";import{R as A,t as V,g as U,U as q}from"./index-5a722722.js";import{V as G}from"./viewport.store-2dc172be.js";import{F as X,i as Y}from"./filter.button-f132c10a.js";import{i as W,g as J,G as _,a as K,b as Z,c as Q,P as ee,d as te,e as re,f as ie,h as oe,j as se,k as ne,l as ae,H as he,C as le,F as de,D as ce}from"./column.service-ffe99cfc.js";import{c as ge,g as ue}from"./events-77b43b40.js";import{d as fe}from"./dispatcher-8ea9187d.js";import{O as ve}from"./header-cell-renderer-cac333a3.js";class pe{constructor(){this.defaultRowSize=32}}class me{constructor(){this.defaultRowSize=27}}class we{constructor(){this.defaultRowSize=42}}const be="default";const xe=[be,"material","compact","darkMaterial","darkCompact"];class Ce{get theme(){return this.currentTheme}get rowSize(){return this.customRowSize||this.currentTheme.defaultRowSize}set rowSize(e){this.customRowSize=e}constructor(e){this.customRowSize=0;this.customRowSize=e.rowSize;this.register("default")}register(e){const t=Ce.getTheme(e);switch(t){case"material":case"darkMaterial":this.currentTheme=new we;break;case"compact":case"darkCompact":this.currentTheme=new pe;break;default:this.currentTheme=new me;break}}static getTheme(e){if(xe.indexOf(e)>-1){return e}return be}}var ye=s,Se=n,ke=a;function Re(e){return function(t,r,i){var o=Object(t);if(!Se(t)){var s=ye(r);t=ke(t);r=function(e){return s(o[e],e,o)}}var n=e(t,r,i);return n>-1?o[s?t[n]:n]:undefined}}var je=Re;var Oe=je,Ee=h;var Le=Oe(Ee);var Pe=Le;var ze=l,He=n;function Me(e,t){var r=-1,i=He(e)?Array(e.length):[];ze(e,(function(e,o,s){i[++r]=t(e,o,s)}));return i}var Ie=Me;var De=d,Fe=s,Te=Ie,Ne=c;function $e(e,t){var r=Ne(e)?De:Te;return r(e,Fe(t))}var Be=$e;class Ae extends z{static gatherGroup(e,t,r,i=0){const o=Object.assign(Object.assign({},t),{level:i,ids:[]});for(let t in r.columns){const i=t;const s=e.columns[i];const n=r.columns[i];if(c(s)&&c(n)){s.push(...n);if(n.length){e.columnGrouping[i].push(Object.assign(Object.assign({},o),{ids:Be(n,"prop")}))}}}for(let t in r.columnGrouping){const i=t;const o=r.columnGrouping[i];e.columnGrouping[i].push(...o)}e.maxLevel=Math.max(e.maxLevel,r.maxLevel);e.sort=Object.assign(Object.assign({},e.sort),r.sort);return e}}function Ve(e){return!!e.children}class Ue{get order(){return g(this.sorting,((e,t,r)=>{e[r]=t.order;return e}),{})}get stores(){return this.dataSources}constructor(){this.sorting=null;this.dataSources=g(H,((e,t)=>{e[t]=new u(t);return e}),{})}column(e,t){return this.getColumn(e,t||"rgCol")}getColumn(e,t){return f(this.dataSources[t].store,e)}getRawColumns(){return g(this.dataSources,((e,t,r)=>{e[r]=t.store.get("source");return e}),{rgCol:[],colPinStart:[],colPinEnd:[]})}getColumns(e="all"){if(e!=="all"){return this.dataSources[e].store.get("source")}return H.reduce(((e,t)=>{e.push(...this.dataSources[t].store.get("source"));return e}),[])}getColumnIndexByProp(e,t){return v(this.dataSources[t].store,e)}getColumnByProp(e,t){const r=this.dataSources[t].store.get("source");return Pe(r,{prop:e})}refreshByType(e){this.dataSources[e].refresh()}setColumns(e){H.forEach((t=>{this.dataSources[t].updateData(e.columns[t],{depth:e.maxLevel,groups:e.columnGrouping[t].reduce(((e,t)=>{if(!e[t.level]){e[t.level]=[]}e[t.level].push(t);return e}),{})})}));this.sorting=e.sort;return e}updateColumns(e){const t=e.reduce(((e,t)=>{const r=Ue.getColumnType(t);if(!e[r]){e[r]={}}e[r][t.prop]=t;return e}),{});const r={};p(t,((e,t)=>{const i=this.dataSources[t].store.get("source");r[t]=i.reduce(((t,r,i)=>{const o=e[r.prop];if(o){t[i]=o}return t}),{})}));p(r,((e,t)=>m(this.dataSources[t].store,e)))}updateColumn(e,t){const r=Ue.getColumnType(e);m(this.dataSources[r].store,{[t]:e})}updateColumnSorting(e,t,r,i){if(!i){this.clearSorting()}e.order=r;this.sorting[e.prop]=e;this.updateColumn(e,t);return e}clearSorting(){const e=g(this.sorting,((e,t)=>{const r=Ue.getColumnType(t);e[r]=true;return e}),{});p(e,((e,t)=>{const r=this.dataSources[t].store.get("source");p(r,(e=>e.order=undefined));this.dataSources[t].setData({source:[...r]})}));this.sorting={}}static getSizes(e){return g(e,((e,t,r)=>{if(t.size){e[r]=t.size}return e}),{})}static getColumnByProp(e,t){return Pe(e,(e=>{if(Ve(e)){return Ue.getColumnByProp(e.children,t)}return e.prop===t}))}static getColumns(e,t=0,r){const i={columns:{rgCol:[],colPinStart:[],colPinEnd:[]},columnByProp:{},columnGrouping:{rgCol:[],colPinStart:[],colPinEnd:[]},maxLevel:t,sort:{}};return g(e,((e,i)=>{if(Ve(i)){return Ae.gatherGroup(e,i,Ue.getColumns(i.children,t+1,r),t)}const o=Object.assign(Object.assign({},i.columnType&&r&&r[i.columnType]),i);if(!o.pin){e.columns.rgCol.push(o)}else{e.columns[o.pin].push(o)}if(o.order){e.sort[o.prop]=o}if(!e.columnByProp[o.prop]){e.columnByProp[o.prop]=[]}e.columnByProp[o.prop].push(o);o.beforeSetup&&o.beforeSetup(o);return e}),i)}static getColumnType(e){if(e.pin){return e.pin}return"rgCol"}}class qe{constructor(e){this.dimensionProvider=e;this.stores=g(M,((e,t)=>{e[t]=new u(t);return e}),{})}setData(e,t="rgRow",r=false,i,o=false){this.stores[t].updateData([...e],i,o);const s=t!=="rgRow"||r;this.dimensionProvider.setData(e.length,t,s);return e}getModel(e,t="rgRow"){const r=this.stores[t].store;return f(r,e)}setCellData({type:e,rowIndex:t,prop:r,val:i},o=true){const s=this.getModel(t,e);s[r]=i;m(this.stores[e].store,{[t]:s},o)}setRangeData(e,t){const r={};for(let i in e){const o=r[i]=f(this.stores[t].store,parseInt(i,10));if(!o){continue}for(let t in e[i]){o[t]=e[i][t]}}m(this.stores[t].store,r)}refresh(e="all"){if(I(e)){this.refreshItems(e)}M.forEach((e=>this.refreshItems(e)))}refreshItems(e="rgRow"){const t=this.stores[e].store.get("items");this.stores[e].setData({items:[...t]})}setGrouping({depth:e},t="rgRow"){this.stores[t].setData({groupingDepth:e})}setTrimmed(e,t="rgRow"){const r=this.stores[t];r.addTrimmed(e);this.dimensionProvider.setTrimmed(e,t);if(t==="rgRow"){this.dimensionProvider.setData(w(r.store).length,t)}}}class Ge{constructor(e,t){this.viewports=e;const r=B((e=>t.realSizeChanged(e)),A);this.stores=g([...M,...H],((e,t)=>{e[t]=new D;e[t].store.onChange("realSize",(()=>r(t)));return e}),{})}clearSize(e,t){this.stores[e].drop();this.viewports.stores[e].setOriginalSizes(this.stores[e].store.get("originItemSize"));this.setItemCount(t,e)}setCustomSizes(e,t,r=false){let i=t;if(r){const r=this.stores[e].store.get("sizes");i=Object.assign(Object.assign({},r),t)}this.stores[e].setDimensionSize(i);this.viewports.stores[e].setViewPortDimensionSizes(i,!r?this.stores[e].store.get("originItemSize"):undefined)}setItemCount(e,t){this.viewports.stores[t].setViewport({realCount:e});this.stores[t].setStore({count:e})}setTrimmed(e,t){const r=b(e);const i=this.stores[t];i.setStore({trimmed:r});this.viewports.stores[t].setViewPortDimensionSizes(i.store.get("sizes"))}setData(e,t,r=false){this.setItemCount(e,t);if(r){const e=this.stores[t].getCurrentState();this.viewports.stores[t].setViewport({virtualSize:e.realSize})}this.updateViewport(t)}applyNewColumns(e,t){for(let r of H){this.stores[r].drop();const i=e[r];const o=r!=="rgCol"||t;this.stores[r].setStore({count:i.length});const s=Ue.getSizes(i);this.stores[r].setDimensionSize(s);const n={realCount:i.length};if(o){n.virtualSize=this.stores[r].getCurrentState().realSize}this.viewports.stores[r].setViewport(n);this.setViewPortCoordinate({coordinate:this.viewports.stores[r].lastCoordinate,type:r})}}getFullSize(){var e,t;let r=0;let i=0;for(let t of H){r+=((e=this.stores[t])===null||e===void 0?void 0:e.store.get("realSize"))||0}for(let e of M){i+=((t=this.stores[e])===null||t===void 0?void 0:t.store.get("realSize"))||0}return{y:i,x:r}}updateViewport(e){this.setViewPortCoordinate({coordinate:this.viewports.stores[e].lastCoordinate,type:e})}setViewPortCoordinate({coordinate:e,type:t}){const r=this.stores[t].getCurrentState();this.viewports.stores[t].setViewPortCoordinate(e,r)}getViewPortPos(e){const t=this.stores[e.dimension].getCurrentState();const r=x(t,e.coordinate);return r.start}setSettings(e,t){let r=[];switch(t){case"rgCol":r=H;break;case"rgRow":r=M;break}for(let t of r){this.stores[t].setStore(e)}}}class Xe{constructor(){this.stores=g([...M,...H],((e,t)=>{e[t]=new G(t);return e}),{})}setViewport(e,t){this.stores[e].setViewport(t)}}const Ye=7;var We;(function(e){e["headerClickAutosize"]="headerClickAutoSize";e["autoSizeOnTextOverlap"]="autoSizeOnTextOverlap";e["autoSizeAll"]="autoSizeAll"})(We||(We={}));class Je extends z{constructor(e,t,r){super(e,t);this.providers=t;this.config=r;this.autoSizeColumns=null;this.dataResolve=null;this.dataReject=null;this.letterBlockSize=(r===null||r===void 0?void 0:r.letterBlockSize)||Ye;if(r===null||r===void 0?void 0:r.preciseSize){this.precsizeCalculationArea=this.initiatePresizeElement();e.appendChild(this.precsizeCalculationArea)}const i=({detail:{source:e}})=>{this.setSource(e)};const o=({detail:e})=>{this.afteredit(e)};const s=({detail:e})=>{this.afterEditAll(e)};const n=({detail:{columns:e}})=>{this.columnSet(e)};const a=({detail:e})=>{const t=Ue.getColumnType(e.column);const r=this.getColumnSize(e.index,t);if(r){this.providers.dimension.setCustomSizes(t,{[e.index]:r},true)}};this.addEventListener("beforecolumnsset",n);switch(r===null||r===void 0?void 0:r.mode){case We.autoSizeOnTextOverlap:this.addEventListener("aftersourceset",i);this.addEventListener("afteredit",o);break;case We.autoSizeAll:this.addEventListener("aftersourceset",i);this.addEventListener("afteredit",s);break;default:this.addEventListener("headerdblclick",a);break}}async setSource(e){let t=this.autoSizeColumns;if(this.dataReject){this.dataReject();this.clearPromise()}if(!t){const e=new Promise(((e,t)=>{this.dataResolve=e;this.dataReject=t}));try{t=await e}catch(e){return}}p(t,((r,i)=>{const o={};p(t[i],(t=>{t.size=o[t.index]=e.reduce(((e,r)=>Math.max(e,this.getLength(r[t.prop]))),this.getLength(t.name||""))}));this.providers.dimension.setCustomSizes(i,o,true)}))}getLength(e){var t;const r=15;if(!e){return 0}try{const i=e.toString();if((t=this.config)===null||t===void 0?void 0:t.preciseSize){this.precsizeCalculationArea.innerText=i;return this.precsizeCalculationArea.scrollWidth+r*2}return i.length*this.letterBlockSize+r*2}catch(e){return 0}}afteredit(e){let t;if(this.isRangeEdit(e)){t=e.data}else{t={0:{[e.prop]:e.val}}}p(this.autoSizeColumns,((e,r)=>{const i={};p(e,(e=>{const r=g(t,((t,r)=>{if(typeof r[e.prop]==="undefined"){return t}return Math.max(t||0,this.getLength(r[e.prop]))}),undefined);if(r&&e.size<r){e.size=i[e.index]=r}}));this.providers.dimension.setCustomSizes(r,i,true)}))}afterEditAll(e){const t={};if(this.isRangeEdit(e)){p(e.data,(e=>p(e,((e,r)=>t[r]=true))))}else{t[e.prop]=true}p(this.autoSizeColumns,((e,r)=>{const i={};p(e,(e=>{if(t[e.prop]){const t=this.getColumnSize(e.index,r);if(t){i[e.index]=t}}}));this.providers.dimension.setCustomSizes(r,i,true)}))}getColumnSize(e,t){const r=this.autoSizeColumns[t][e];if(!r){return 0}return g(this.providers.data.stores,((e,t)=>{const i=g(t.store.get("items"),((e,i,o)=>{const s=f(t.store,o);return Math.max(e||0,this.getLength(s[r.prop]))}),0);return Math.max(e,i)}),r.size||0)}columnSet(e){var t;for(let r of H){const i=r;const o=e[i];for(let e in o){if(o[e].autoSize||((t=this.config)===null||t===void 0?void 0:t.allColumns)){if(!this.autoSizeColumns){this.autoSizeColumns={}}if(!this.autoSizeColumns[i]){this.autoSizeColumns[i]={}}this.autoSizeColumns[i][e]=Object.assign(Object.assign({},o[e]),{index:parseInt(e,10)})}}}if(this.dataResolve){this.dataResolve(this.autoSizeColumns);this.clearPromise()}}clearPromise(){this.dataResolve=null;this.dataReject=null}isRangeEdit(e){return!!e.data}initiatePresizeElement(){const e={position:"absolute",fontSize:"14px",height:"0",width:"0",whiteSpace:"nowrap",top:"0",overflowX:"scroll"};const t=document.createElement("div");for(let r in e){t.style[r]=e[r]}t.classList.add("revo-test-container");return t}destroy(){var e;super.destroy();(e=this.precsizeCalculationArea)===null||e===void 0?void 0:e.remove()}}const _e=(e,t)=>{if(typeof e==="undefined"||e===null&&!t){return true}if(typeof e!=="string"){e=JSON.stringify(e)}const r=t.toString().toLocaleLowerCase();if(r.length===0){return true}return e.toLocaleLowerCase()===r};const Ke=(e,t)=>!_e(e,t);Ke.extra="input";_e.extra="input";const Ze=function(e,t){let r;if(typeof e==="number"){r=parseFloat(t===null||t===void 0?void 0:t.toString());return e>r}return false};Ze.extra="input";const Qe=function(e,t){return _e(e,t)||Ze(e,t)};Qe.extra="input";const et=function(e,t){let r;if(typeof e==="number"){r=parseFloat(t===null||t===void 0?void 0:t.toString());return e<r}else{return false}};et.extra="input";const tt=function(e,t){return _e(e,t)||et(e,t)};tt.extra="input";const rt=e=>!(e===""||e===null||e===void 0);const it=e=>!rt(e);const ot=(e,t)=>{if(!e){return false}if(!t){return true}if(typeof e!=="string"){e=JSON.stringify(e)}if(typeof t!=="string"){t=JSON.stringify(t)}return e.toLocaleLowerCase().indexOf(t.toLocaleLowerCase())===0};ot.extra="input";const st=(e,t)=>{if(!t){return true}if(!e){return false}if(t){if(typeof e!=="string"){e=JSON.stringify(e)}return e.toLocaleLowerCase().indexOf(t.toString().toLowerCase())>-1}return true};const nt=(e,t)=>!st(e,t);nt.extra="input";st.extra="input";const at={none:"None",empty:"Not set",notEmpty:"Set",eq:"Equal",notEq:"Not equal",begins:"Begins with",contains:"Contains",notContains:"Does not contain",eqN:"=",neqN:"!=",gt:">",gte:">=",lt:"<",lte:"<="};const ht={none:()=>true,empty:it,notEmpty:rt,eq:_e,notEq:Ke,begins:ot,contains:st,notContains:nt,eqN:_e,neqN:Ke,gt:Ze,gte:Qe,lt:et,lte:tt};const lt={string:["notEmpty","empty","eq","notEq","begins","contains","notContains"],number:["notEmpty","empty","eqN","neqN","gt","gte","lt","lte"]};const dt="filter";const ct="filterconfigchanged";class gt extends z{constructor(t,r,i,o){var s;super(t,r);this.revogrid=t;this.filterCollection={};this.multiFilterItems={};this.possibleFilters=Object.assign({},lt);this.possibleFilterNames=Object.assign({},at);this.possibleFilterEntities=Object.assign({},ht);this.filterProp=X;if(o){this.initConfig(o)}const n=e=>this.headerclick(e);const a=async()=>{const e=Object.keys(this.filterCollection);if(e.length>0){e.forEach(((e,t)=>{if(!this.multiFilterItems[e]){this.multiFilterItems[e]=[{id:t,type:this.filterCollection[e].type,value:this.filterCollection[e].value,relation:"and"}]}}))}await this.runFiltering()};this.addEventListener("headerclick",n);this.addEventListener(ct,(({detail:e})=>{if(!e){this.clearFiltering();return}if(typeof e==="object"){this.initConfig(e)}a()}));this.addEventListener("aftersourceset",a);this.addEventListener("filter",(({detail:e})=>this.onFilterChange(e)));const h=this.revogrid.registerVNode.filter((e=>e.t!=="revogr-filter-panel"));this.revogrid.registerVNode=[...h,e("revogr-filter-panel",{uuid:`filter-${i}`,filterItems:this.multiFilterItems,filterNames:this.possibleFilterNames,filterEntities:this.possibleFilterEntities,filterCaptions:(s=o===null||o===void 0?void 0:o.localization)===null||s===void 0?void 0:s.captions,onFilterChange:e=>this.onFilterChange(e.detail),disableDynamicFiltering:o===null||o===void 0?void 0:o.disableDynamicFiltering,ref:e=>this.pop=e})]}initConfig(e){if(e.multiFilterItems){this.multiFilterItems=Object.assign({},e.multiFilterItems)}if(e.customFilters){for(let t in e.customFilters){const r=e.customFilters[t];if(!this.possibleFilters[r.columnFilterType]){this.possibleFilters[r.columnFilterType]=[]}this.possibleFilters[r.columnFilterType].push(t);this.possibleFilterEntities[t]=r.func;this.possibleFilterNames[t]=r.name}}if(e.filterProp){this.filterProp=e.filterProp}if(e.include){const t={};for(let r in this.possibleFilters){const i=this.possibleFilters[r].filter((t=>e.include.indexOf(t)>-1));if(i.length){t[r]=i}}if(Object.keys(t).length>0){this.possibleFilters=t}}if(e.collection){this.filterCollection=g(e.collection,((e,t,r)=>{if(this.possibleFilterEntities[t.type]){e[r]=t}else{console.warn(`${t.type} type is not found.`)}return e}),{})}if(e.localization){if(e.localization.filterNames){Object.entries(e.localization.filterNames).forEach((([e,t])=>{if(this.possibleFilterNames[e]!=void 0){this.possibleFilterNames[e]=t}}))}}}async headerclick(e){var t;const r=(t=e.detail.originalEvent)===null||t===void 0?void 0:t.target;if(!Y(r)){return}e.preventDefault();const i=await this.pop.getChanges();if(i&&(i===null||i===void 0?void 0:i.prop)===e.detail.prop){this.pop.show();return}const o=this.revogrid.getBoundingClientRect();const s=r.getBoundingClientRect();const n=e.detail.prop;this.pop.filterTypes=this.getColumnFilter(e.detail.filter);this.pop.show(Object.assign(Object.assign({},this.filterCollection[n]),{x:s.x-o.x,y:s.y-o.y+s.height,prop:n}))}getColumnFilter(e){let t="string";if(!e){return{[t]:this.possibleFilters[t]}}if(this.isValidType(e)){t=e}else if(typeof e==="object"&&e.length){return e.reduce(((e,t)=>{if(this.isValidType(t)){e[t]=this.possibleFilters[t]}return e}),{})}return{[t]:this.possibleFilters[t]}}isValidType(e){return!!(typeof e==="string"&&this.possibleFilters[e])}async onFilterChange(e){this.multiFilterItems=e;this.runFiltering()}async doFiltering(e,t,r,i){const o=[];r.forEach((e=>{const t=Object.assign({},e);const r=i[t.prop];if(t[this.filterProp]&&!r){delete t[this.filterProp];o.push(t)}if(!t[this.filterProp]&&r){o.push(t);t[this.filterProp]=true}}));const s=this.getRowFilter(t,i);const{defaultPrevented:n,detail:a}=this.emit("beforefiltertrimmed",{collection:e,itemsToFilter:s,source:t,filterItems:i});if(n){return}const h=await this.revogrid.addTrimmed(a.itemsToFilter,dt);if(h.defaultPrevented){return}await this.revogrid.updateColumns(o);this.emit("afterFilterApply")}async clearFiltering(){this.multiFilterItems={};await this.runFiltering()}async runFiltering(){const e={};const t=Object.keys(this.multiFilterItems);for(const r of t){if(this.multiFilterItems[r].length>0){const t=this.multiFilterItems[r][0];e[r]={filter:ht[t.type],type:t.type,value:t.value}}}this.filterCollection=e;const{source:r,columns:i}=await this.getData();const{defaultPrevented:o,detail:s}=this.emit("beforefilterapply",{collection:this.filterCollection,source:r,columns:i,filterItems:this.multiFilterItems});if(o){return}this.doFiltering(s.collection,s.source,s.columns,s.filterItems)}async getData(){return{source:await this.revogrid.getSource(),columns:await this.revogrid.getColumns()}}getRowFilter(e,t){const r=Object.keys(t);const i={};let o=0;let s=[];e.forEach(((e,n)=>{for(const a of r){const r=t[a];o=0;s=[];for(const[t,i]of r.entries()){const n=this.possibleFilterEntities[i.type];if(i.relation==="or"){s=[];if(n(e[a],i.value)){continue}o++}else{s.push(!n(e[a],i.value));const h=r[t+1];if(!h||h.relation!=="and"){if(s.indexOf(true)===-1){s=[];continue}o+=s.length;s=[]}}}if(o===r.length)i[n]=true}}));return i}}var ut=F,ft=c,vt=T;var pt="[object String]";function mt(e){return typeof e=="string"||!ft(e)&&vt(e)&&ut(e)==pt}var wt=mt;var bt=C;var xt=bt("length");var Ct=xt;var yt="\\ud800-\\udfff",St="\\u0300-\\u036f",kt="\\ufe20-\\ufe2f",Rt="\\u20d0-\\u20ff",jt=St+kt+Rt,Ot="\\ufe0e\\ufe0f";var Et="\\u200d";var Lt=RegExp("["+Et+yt+jt+Ot+"]");function Pt(e){return Lt.test(e)}var zt=Pt;var Ht="\\ud800-\\udfff",Mt="\\u0300-\\u036f",It="\\ufe20-\\ufe2f",Dt="\\u20d0-\\u20ff",Ft=Mt+It+Dt,Tt="\\ufe0e\\ufe0f";var Nt="["+Ht+"]",$t="["+Ft+"]",Bt="\\ud83c[\\udffb-\\udfff]",At="(?:"+$t+"|"+Bt+")",Vt="[^"+Ht+"]",Ut="(?:\\ud83c[\\udde6-\\uddff]){2}",qt="[\\ud800-\\udbff][\\udc00-\\udfff]",Gt="\\u200d";var Xt=At+"?",Yt="["+Tt+"]?",Wt="(?:"+Gt+"(?:"+[Vt,Ut,qt].join("|")+")"+Yt+Xt+")*",Jt=Yt+Xt+Wt,_t="(?:"+[Vt+$t+"?",$t,Ut,qt,Nt].join("|")+")";var Kt=RegExp(Bt+"(?="+Bt+")|"+_t+Jt,"g");function Zt(e){var t=Kt.lastIndex=0;while(Kt.test(e)){++t}return t}var Qt=Zt;var er=Ct,tr=zt,rr=Qt;function ir(e){return tr(e)?rr(e):er(e)}var or=ir;var sr=y,nr=S,ar=n,hr=wt,lr=or;var dr="[object Map]",cr="[object Set]";function gr(e){if(e==null){return 0}if(ar(e)){return hr(e)?lr(e):e.length}var t=nr(e);if(t==dr||t==cr){return e.size}return sr(e).length}var ur=gr;class fr extends z{async runSorting(e,t){var r;await this.sort(e,t);(r=this.sortingPromise)===null||r===void 0?void 0:r.call(this);this.sortingPromise=null}constructor(e,t){super(e,t);this.revogrid=e;this.sorting=null;this.sortingFunc=null;this.sortingPromise=null;this.postponeSort=B((async(e,t)=>this.runSorting(e,t)),50);const r=async({detail:{type:e}})=>{if(!!this.sorting&&this.sortingFunc){const t=this.emit("beforesorting",{type:e});if(t.defaultPrevented){return}this.startSorting(this.sorting,this.sortingFunc)}};const i=async({detail:{order:e}})=>{const t=await this.revogrid.getColumns();const r={};for(let i in e){const o=this.getComparer(Ue.getColumnByProp(t,i),e[i]);r[i]=o}this.runSorting(e,r)};const o=async e=>{var t,r;if(e.defaultPrevented){return}if(!e.detail.column.sortable){return}this.headerclick(e.detail.column,e.detail.index,(r=(t=e.detail)===null||t===void 0?void 0:t.originalEvent)===null||r===void 0?void 0:r.shiftKey)};this.addEventListener("beforeanysource",r);this.addEventListener("aftercolumnsset",i);this.addEventListener("beforeheaderclick",o)}startSorting(e,t){if(!this.sortingPromise){this.revogrid.jobsBeforeRender.push(new Promise((e=>{this.sortingPromise=e})))}this.postponeSort(e,t)}getComparer(e,t){var r;const i=((r=e===null||e===void 0?void 0:e.cellCompare)===null||r===void 0?void 0:r.bind({order:t}))||this.defaultCellCompare;if(t=="asc"){return i}if(t=="desc"){return this.descCellCompare(i)}return undefined}async headerclick(e,t,r){let i=this.getNextOrder(e.order);const o=this.emit("beforesorting",{column:e,order:i,additive:r});if(o.defaultPrevented){return}i=o.detail.order;const s=await this.revogrid.updateColumnSorting(o.detail.column,t,i,r);const n=this.emit("beforesortingapply",{column:s,order:i,additive:r});if(n.defaultPrevented){return}i=n.detail.order;const a=this.getComparer(e,i);if(r&&this.sorting){const t={};const r={};this.sorting=Object.assign(Object.assign({},this.sorting),t);this.sortingFunc=Object.assign(Object.assign({},this.sortingFunc),r);if(e.prop in t&&ur(t)>1&&i===undefined){delete t[e.prop];delete r[e.prop]}else{t[e.prop]=i;r[e.prop]=a}}else{if(i){this.sorting={[e.prop]:i};this.sortingFunc={[e.prop]:a}}else{delete this.sorting[e.prop];delete this.sortingFunc[e.prop]}}this.startSorting(this.sorting,this.sortingFunc)}async sort(e,t,r=["rgRow","rowPinStart","rowPinEnd"]){if(!ur(e)){this.sorting=null;this.sortingFunc=null;for(let e of r){const t=await this.revogrid.getSourceStore(e);const r=t.get("source");const i=k(0,r.length);R(t,{proxyItems:i,source:[...r]})}}else{this.sorting=e;this.sortingFunc=t;for(let e of r){const r=await this.revogrid.getSourceStore(e);const i=r.get("source");const o=r.get("proxyItems");const s=this.sortIndexByItems([...o],i,t);R(r,{proxyItems:s,source:[...i]})}}this.emit("aftersortingapply")}defaultCellCompare(e,t,r){var i,o;const s=(i=t[e])===null||i===void 0?void 0:i.toString().toLowerCase();const n=(o=r[e])===null||o===void 0?void 0:o.toString().toLowerCase();return s==n?0:s>n?1:-1}descCellCompare(e){return(t,r,i)=>-1*e(t,r,i)}sortIndexByItems(e,t,r){if(Object.entries(r).length===0){return[...Array(e.length).keys()]}return e.sort(((e,i)=>{for(const[o,s]of Object.entries(r)){const r=t[e];const n=t[i];const a=s(o,r,n);if(a){return a}}return 0}))}getNextOrder(e){switch(e){case undefined:return"asc";case"asc":return"desc";case"desc":return undefined}}}function vr(e,t,r){if(e===e){if(r!==undefined){e=e<=r?e:r}if(t!==undefined){e=e>=t?e:t}}return e}var pr=vr;var mr=pr,wr=j;var br=4294967295;function xr(e){return e?mr(wr(e),0,br):0}var Cr=xr;var yr=j,Sr=Cr;function kr(e,t,r,i){var o=e.length;r=yr(r);if(r<0){r=-r>o?0:o+r}i=i===undefined||i>o?o:yr(i);if(i<0){i+=o}i=r>i?0:Sr(i);while(r<i){e[r++]=t}return e}var Rr=kr;var jr=Rr,Or=O;function Er(e,t,r,i){var o=e==null?0:e.length;if(!o){return[]}if(r&&typeof r!="number"&&Or(e,t,r)){r=0;i=o}return jr(e,t,r,i)}var Lr=Er;const Pr={mime:"text/csv",fileKind:"csv",bom:true,columnDelimiter:",",rowDelimiter:"\r\n",encoding:""};const zr=String.fromCharCode(13);const Hr=String.fromCharCode(10);const Mr=String.fromCharCode(34);const Ir=String.fromCharCode(65279);const Dr=new RegExp('"',"g");class Fr{constructor(e={}){this.options=Object.assign(Object.assign({},Pr),e)}doExport({data:e,headers:t,props:r}){let i=this.options.bom?Ir:"";if((t===null||t===void 0?void 0:t.length)>0){t.forEach((e=>{if(!e.length){return}i+=this.prepareHeader(e,this.options.columnDelimiter);i+=this.options.rowDelimiter}))}e.forEach(((e,t)=>{if(t>0){i+=this.options.rowDelimiter}if(W(e)){i+=this.parseCell(J(e),this.options.columnDelimiter);return}i+=r.map((t=>this.parseCell(e[t],this.options.columnDelimiter))).join(this.options.columnDelimiter)}));return i}prepareHeader(e,t){let r="";const i=e.map((e=>this.parseCell(e,t,true)));r+=i.join(t);return r}parseCell(e,t,r=false){let i=e;if(typeof e!=="string"){i=JSON.stringify(e)}const o=[zr,Mr,Hr,t];if(typeof i==="undefined"){return""}if(i!==""&&(r||o.some((e=>i.indexOf(e)>=0)))){return`"${i.replace(Dr,'""')}"`}return i}}var Tr;(function(e){e["csv"]="csv"})(Tr||(Tr={}));class Nr extends z{async exportString(e={},t=Tr.csv){const r=await this.beforeexport();if(!r){return null}return this.formatter(t,e).doExport(r)}async exportBlob(e={},t=Tr.csv){return await this.getBlob(this.formatter(t,e))}async exportFile(e={},t=Tr.csv){const r=this.formatter(t,e);const i=await this.getBlob(r);const o=window.URL||window.webkitURL;const s=document.createElement("a");const{filename:n,fileKind:a}=r.options;const h=`${n}.${a}`;const l=o.createObjectURL(i);s.style.display="none";s.setAttribute("href",l);s.setAttribute("download",h);this.revogrid.appendChild(s);s.dispatchEvent(new MouseEvent("click"));this.revogrid.removeChild(s);await V(120);o.revokeObjectURL(l)}async getBlob(e){const t=`${e.options.mime};charset=${e.options.encoding}`;if(typeof Blob!=="undefined"){const r=await this.beforeexport();if(!r){return null}return new Blob([e.doExport(r)],{type:t})}return null}async beforeexport(){let e=await this.getData();const t=this.emit("beforeexport",{data:e});if(t.defaultPrevented){return null}return t.detail.data}async getData(){const e=await this.getSource();const t=[];const r=[];H.forEach(((e,i)=>{r.push(this.getColPerSource(e).then((e=>t[i]=e)))}));await Promise.all(r);const i={headers:[],props:[]};for(let e of t){e.headers.forEach(((e,t)=>{if(!i.headers[t]){i.headers[t]=[]}i.headers[t].push(...e)}));i.props.push(...e.props)}return Object.assign({data:e},i)}async getColPerSource(e){const t=await this.revogrid.getColumnStore(e);const r=t.get("source");const i=t.get("items");const o=t.get("groupingDepth");const s=t.get("groups");const n=[];const a=[];const h=i.reduce(((e,t,i)=>{const o=r[t].prop;n.push(r[t].name||"");a.push(o);e[o]=i;return e}),{});const l=this.getGroupHeaders(o,s,i,h);l.push(n);return{headers:l,props:a}}getGroupHeaders(e,t,r,i){const o=[];const s=Lr(new Array(r.length),"");for(let r=0;r<e;r++){const e=[...s];o.push(e);if(!t[r]){continue}const n=t[r];n.forEach((t=>{const r=this.findGroupStartIndex(t.ids,i);if(typeof r==="number"){e[r]=t.name}}))}return o}findGroupStartIndex(e,t){let r;e.forEach((e=>{const i=t[e];if(typeof i==="number"){if(typeof r!=="number"||r>i){r=i}}}));return r}async getSource(){const e=[];const t=[];M.forEach((r=>{const i=[];e.push(i);const o=this.revogrid.getVisibleSource(r).then((e=>i.push(...e)));t.push(o)}));await Promise.all(t);return e.reduce(((e,t)=>{e.push(...t);return e}),[])}formatter(e,t={}){switch(e){case Tr.csv:return new Fr(t);default:throw new Error("Unknown format")}}}function $r(e,t){const r=t[e];const i=r[ee];const o={};let s=e+1;const n=t.length;while(s<n){const e=t[s];if(W(e)){const t=e[ee];if(!t.length||!t.startsWith(i+",")){break}e[_]=false}o[s++]=true}r[_]=false;return{trimmed:o}}function Br(e,t,r){const i=r[e];const o=t[i];const s=K(o[te]);const n={};if(!s){return{trimmed:n}}const a=[];o[_]=true;let h=i+1;const l=t.length;let d=0;while(h<l){const e=t[h];const r=W(e);if(r){if(!Z(s,o,e)){break}else if(!d){d=e[Q]}}if(!d||r&&d===e[Q]){n[h]=false;a.push(h)}h++}const c={trimmed:n};if(a.length){const t=[...r];t.splice(e+1,0,...a);c.items=t}return c}const Ar="grouping";function Vr(e,t,r){const i={};for(let o in e){if(o===Ar){continue}const s=e[o];const n={};for(let e in s){let a=t[e];if(r){a=r[a]}if(s[e]){n[a]=true;if(a!==parseInt(e,10)){i[o]=n}}}}return i}class Ur extends z{get hasProps(){var e,t,r;return((e=this.options)===null||e===void 0?void 0:e.props)&&((r=(t=this.options)===null||t===void 0?void 0:t.props)===null||r===void 0?void 0:r.length)}get store(){return this.providers.data.stores[re].store}get rowItems(){return this.store.get("items")}get trimmed(){return this.store.get("trimmed")}constructor(e,t){super(e,t);this.revogrid=e;this.providers=t}onFocus(e){if(W(e.detail.model)){e.preventDefault()}}onExpand({virtualIndex:e}){const{source:t}=this.getSource();let r=this.trimmed[Ar];let i=E(this.store,e);const o=t[i];const s=o[_];if(!s){const{trimmed:i,items:o}=Br(e,t,this.rowItems);r=Object.assign(Object.assign({},r),i);if(o){L(this.store,o)}}else{const{trimmed:e}=$r(i,t);r=Object.assign(Object.assign({},r),e);this.revogrid.clearFocus()}this.store.set("source",t);this.revogrid.addTrimmed(r,Ar)}getSource(e=false){const t=this.store.get("source");const r=this.store.get("proxyItems");let i=0;return r.reduce(((r,o)=>{const s=t[o];if(!e){r.source.push(s);return r}if(!W(s)){r.source.push(s);r.oldNewIndexes[o]=i;i++}else{if(s[_]){r.prevExpanded[s[ee]]=true}}return r}),{source:[],prevExpanded:{},oldNewIndexes:{}})}setColumnGrouping(e){if(e===null||e===void 0?void 0:e.length){e[0][ie]=true;return true}return false}setColumns({columns:e}){for(let t of H){if(this.setColumnGrouping(e[t])){break}}}onDrag(e){const{from:t,to:r}=e.detail;const i=r-t>=0;const{source:o}=this.getSource();const s=this.rowItems;let n=i?t:r;const a=i?r:t;for(;n<a;n++){const t=o[s[n]];const r=W(t);if(r){e.preventDefault();return}}}beforeTrimmedApply(e,t){if(t===dt){const t=this.store.get("source");for(let r in e){if(e[r]&&W(t[r])){e[r]=false}}}}subscribe(){this.addEventListener("beforesourceset",(({detail:e})=>this.onDataSet(e)));this.addEventListener("beforecolumnsset",(({detail:e})=>this.setColumns(e)));this.addEventListener("beforetrimmed",(({detail:{trimmed:e,trimmedType:t}})=>this.beforeTrimmedApply(e,t)));this.addEventListener("aftersortingapply",(()=>this.doSourceUpdate(Object.assign({},this.options))));this.addEventListener("beforecellfocus",(e=>this.onFocus(e)));this.addEventListener("roworderchanged",(e=>this.onDrag(e)));this.addEventListener(oe,(({detail:e})=>this.onExpand(e)))}doSourceUpdate(e){var t;if(!this.hasProps){return}const{source:r,prevExpanded:i,oldNewIndexes:o}=this.getSource(true);const{sourceWithGroups:s,depth:n,trimmed:a,oldNewIndexMap:h,childrenByGroup:l}=se(r,((t=this.options)===null||t===void 0?void 0:t.props)||[],Object.assign({prevExpanded:i},e));this.providers.data.setData(s,re,this.revogrid.disableVirtualY,{depth:n,customRenderer:e===null||e===void 0?void 0:e.groupLabelTemplate},true);this.updateTrimmed(a,l,o,h)}onDataSet(e){var t;if(!this.hasProps||!(e===null||e===void 0?void 0:e.source)||!e.source.length){return}const r=e.source.filter((e=>!W(e)));const i=this.revogrid.grouping||{};const{sourceWithGroups:o,depth:s,trimmed:n,oldNewIndexMap:a,childrenByGroup:h}=se(r,((t=this.options)===null||t===void 0?void 0:t.props)||[],Object.assign({},i||{}));e.source=o;this.providers.data.setGrouping({depth:s});this.updateTrimmed(n,h,a)}setGrouping(e){this.clearSubscriptions();this.options=e;if(!e.props||!Object.keys(e.props).length){this.clearGrouping();return}const{source:t}=this.getSource();if(t.length){this.doSourceUpdate(Object.assign({},e))}for(let e of H){if(this.setColumnGrouping(this.providers.column.getColumns(e))){this.providers.column.refreshByType(e);break}}this.subscribe()}clearGrouping(){H.forEach((e=>{const t=this.providers.column.getColumns(e);let r=false;t.forEach((e=>{if(ne(e)){delete e[ie];r=true}}));if(r){this.providers.column.refreshByType(e)}}));const{source:e,oldNewIndexes:t}=this.getSource(true);this.providers.data.setData(e,re,this.revogrid.disableVirtualY,undefined,true);this.updateTrimmed(undefined,undefined,t)}updateTrimmed(e={},t={},r,i){const o=Vr(this.trimmed,r,i);for(let e in o){this.revogrid.addTrimmed(o[e],e)}this.revogrid.addTrimmed(Object.assign({},e),Ar)}}function qr(e){const t=e.dimensions[e.colType].store;const r=t.get("realSize");const i={contentWidth:r,class:e.colType,contentHeight:e.contentHeight,key:e.colType,colType:e.colType,onResizeviewport:e.onResizeviewport,style:e.fixWidth?{minWidth:`${r}px`}:undefined};const o={colData:w(e.colStore),dimensionCol:t,type:e.colType,groups:e.colStore.get("groups"),groupingDepth:e.colStore.get("groupingDepth"),resizeHandler:e.colType==="colPinEnd"?["l"]:undefined,onHeaderresize:e.onHeaderresize};return{prop:i,type:e.colType,position:e.position,headerProp:o,viewportCol:e.viewports[e.colType].store}}class Gr{constructor(e,t){var r,i;this.config=e;(r=this.config.selectionStoreConnector)===null||r===void 0?void 0:r.beforeUpdate();const o=[];let s=0;H.forEach((r=>{const i=e.columnProvider.stores[r].store;if(!i.get("items").length){return}const n={colType:r,position:{x:s,y:1},contentHeight:t,fixWidth:r!=="rgCol",viewports:e.viewportProvider.stores,dimensions:e.dimensionProvider.stores,rowStores:e.dataProvider.stores,colStore:i,onHeaderresize:e=>this.onColumnResize(r,e,i)};if(r==="rgCol"){n.onResizeviewport=t=>{var r;if(e.disableVirtualY&&t.detail.dimension==="rgRow"){return}else if(e.disableVirtualX&&t.detail.dimension==="rgCol"){return}(r=e.viewportProvider)===null||r===void 0?void 0:r.setViewport(t.detail.dimension,{virtualSize:t.detail.size})}}const a=qr(n);const h=this.registerCol(a.position.x,r);const l=this.dataViewPort(n).reduce(((t,r)=>{const i=this.registerSegment(r.position);i.setLastCell(r.lastCell);const o=this.registerRow(r.position.y,r.type);const s=Object.assign(Object.assign({},r),{rowSelectionStore:o,segmentSelectionStore:i.store,ref:t=>e.selectionStoreConnector.registerSection(t),onSetrange:e=>{i.setRangeArea(e.detail)},onSettemprange:e=>{i.setTempArea(e.detail)},onFocuscell:t=>{i.clearFocus();e.selectionStoreConnector.focus(i,t.detail)}});t.push(s);return t}),[]);o.push(Object.assign(Object.assign({},a),{columnSelectionStore:h,dataPorts:l}));s++}));this.columns=o;(i=this.config.scrollingService)===null||i===void 0?void 0:i.unregister()}onColumnResize(e,{detail:t},r){var i;(i=this.config.dimensionProvider)===null||i===void 0?void 0:i.setCustomSizes(e,t,true);const o=g(t||{},((e,t,i)=>{const o=parseInt(i,10);const s=f(r,o);if(s){e[o]=Object.assign(Object.assign({},s),{size:t})}return e}),{});this.config.resize(o)}registerSegment(e){return this.config.selectionStoreConnector.register(e)}registerRow(e,t){return this.config.selectionStoreConnector.registerRow(e,t).store}registerCol(e,t){return this.config.selectionStoreConnector.registerColumn(e,t).store}dataViewPort(e){const t={rowPinStart:he,rgRow:le,rowPinEnd:de};let r=0;return M.reduce(((i,o)=>{const s=e.viewports[o].store.get("realCount")||o==="rgRow";const n=Object.assign(Object.assign({},e),{position:Object.assign(Object.assign({},e.position),{y:s?r:N})});i.push(this.dataPartition(n,o,t[o],o!=="rgRow"));if(s){r++}return i}),[])}dataPartition(e,t,r,i){return{colData:e.colStore,viewportCol:e.viewports[e.colType].store,viewportRow:e.viewports[t].store,lastCell:ae(e,t),slot:r,type:t,canDrag:!i,position:e.position,dataStore:e.rowStores[t].store,dimensionCol:e.dimensions[e.colType].store,dimensionRow:e.dimensions[t].store,style:i?{height:`${e.dimensions[t].store.get("realSize")}px`}:undefined}}scrollToCell(e){for(let t in e){const r=e[t];this.config.scrollingService.proxyScroll({dimension:t==="x"?"rgCol":"rgRow",coordinate:r})}}clearFocused(){this.config.selectionStoreConnector.clearAll()}clearEdit(){this.config.selectionStoreConnector.setEdit(false)}getFocused(){const e=this.config.selectionStoreConnector.focusedStore;if(!e){return null}const t=this.config.selectionStoreConnector.storesXToType[e.position.x];const r=this.config.columnProvider.getColumn(e.cell.x,t);const i=this.config.selectionStoreConnector.storesYToType[e.position.y];const o=this.config.dataProvider.getModel(e.cell.y,i);return{column:r,model:o,cell:e.cell,colType:t,rowType:i}}getStoreCoordinateByType(e,t){const r=this.config.selectionStoreConnector.storesByType;const i={x:r[e],y:r[t]};return i}setFocus(e,t,r,i){var o;(o=this.config.selectionStoreConnector)===null||o===void 0?void 0:o.focusByCell(this.getStoreCoordinateByType(e,t),r,i)}getSelectedRange(){return this.config.selectionStoreConnector.selectedRange}setEdit(e,t,r,i){var o;(o=this.config.selectionStoreConnector)===null||o===void 0?void 0:o.setEditByCell(this.getStoreCoordinateByType(r,i),{x:t,y:e})}}class Xr{constructor(e){this.setViewport=e;this.elements={}}async proxyScroll(e,t){var r;let i;let o=e;for(let o in this.elements){if(e.dimension==="rgCol"&&o==="headerRow"){continue}else if(this.isPinnedColumn(t)&&e.dimension==="rgCol"){if(o===t||!e.delta){continue}for(let t of this.elements[o]){if(t.changeScroll){i=t.changeScroll(e)}}}else{for(let t of this.elements[o]){await((r=t.setScroll)===null||r===void 0?void 0:r.call(t,e))}}}if(i){o=await i}this.setViewport(o)}async scrollSilentService(e,t){var r;for(let i in this.elements){if(i===t){continue}if(H.includes(t)&&(i==="headerRow"||H.includes(i))){for(let t of this.elements[i]){await((r=t.changeScroll)===null||r===void 0?void 0:r.call(t,e,true))}continue}}}isPinnedColumn(e){return["colPinStart","colPinEnd"].indexOf(e)>-1}registerElements(e){this.elements=e}registerElement(e,t){if(!this.elements[t]){this.elements[t]=[]}if(e){this.elements[t].push(e)}else if(this.elements[t]){delete this.elements[t]}}unregister(){delete this.elements;this.elements={}}}class Yr{constructor(){this.parentY=0}start(e,{pos:t,text:r,event:i}){var o;const{top:s}=e.getBoundingClientRect();this.parentY=s;if(this.text){this.text.innerText=r}this.move(t);this.moveTip({x:i.x,y:i.y});(o=this.el)===null||o===void 0?void 0:o.classList.remove("hidden")}end(){var e;(e=this.el)===null||e===void 0?void 0:e.classList.add("hidden")}move(e){this.moveElement(e.end-this.parentY)}moveTip({x:e,y:t}){if(!this.draggable){return}this.draggable.style.left=`${e}px`;this.draggable.style.top=`${t}px`}moveElement(e){if(!this.rgRow){return}this.rgRow.style.transform=`translateY(${e}px)`}}const Wr=({ref:t})=>{const r=new Yr;t(r);return e("div",{class:"draggable-wrapper hidden",ref:e=>r.el=e},e("div",{class:"draggable",ref:e=>r.draggable=e},e("span",{class:"revo-alt-icon"}),e("span",{ref:e=>r.text=e})),e("div",{class:"drag-position",ref:e=>r.rgRow=e}))};class Jr extends z{constructor(e,t){super(e,t);this.providers=t;this.stretchedColumn=null;this.scrollSize=U(document);const r=({detail:{columns:e}})=>this.applyStretch(e);this.addEventListener("beforecolumnapplied",r)}setScroll({type:e,hasScroll:t}){var r;if(e==="rgRow"&&this.stretchedColumn&&((r=this.stretchedColumn)===null||r===void 0?void 0:r.initialSize)===this.stretchedColumn.size){if(t){this.stretchedColumn.size-=this.scrollSize;this.apply();this.dropChanges()}}}activateChanges(){const e=({detail:e})=>this.setScroll(e);this.addEventListener("scrollchange",e)}dropChanges(){this.stretchedColumn=null;this.removeEventListener("scrollchange")}apply(){if(!this.stretchedColumn){return}const e="rgCol";const t=this.providers.dimension.stores[e].store.get("sizes");this.providers.dimension.setCustomSizes(e,Object.assign(Object.assign({},t),{[this.stretchedColumn.index]:this.stretchedColumn.size}),true)}applyStretch(e){this.dropChanges();let t=this.revogrid.clientWidth-1;p(e,((e,r)=>{const i=this.providers.dimension.stores[r].store.get("realSize");t-=i}));if(this.revogrid.rowHeaders){const e=this.providers.data.stores.rgRow.store.get("source").length;const r=this.revogrid.rowHeaders;const i=ge(e,typeof r==="object"?r:undefined);if(i){t-=i}}if(t>0){const r=e.rgCol.length-1;const i=e.rgCol[r];const o=(i===null||i===void 0?void 0:i.size)||this.revogrid.colSize||0;const s=t+o-1;if(i&&!i.autoSize&&o<s){this.stretchedColumn={initialSize:s,index:r,size:s};this.apply();this.activateChanges()}}}}function _r(e){return!!e.applyStretch}const Kr=(e=[])=>g(e,((e,t)=>{if(!e[t.type]){e[t.type]={}}if(t.size){if(!e[t.type].sizes){e[t.type].sizes={}}e[t.type].sizes[t.index]=t.size}return e}),{});const Zr=(e=[])=>g(e,((e,t)=>{if(!e[t.type]){e[t.type]=[]}if(t.size){e[t.type].push(t.index)}return e}),{});const Qr="column-drag-start";class ei{constructor(){this.offset=0}renderAutoscroll(e,t){if(!t){return}this.autoscrollEl=document.createElement("div");this.autoscrollEl.classList.add("drag-auto-scroll-y");t.appendChild(this.autoscrollEl)}autoscroll(e,t,r="translateX"){if(!this.autoscrollEl){return}const i=10;const o=Math.min(e+i,t-3);this.autoscrollEl.style.transform=`${r}(${o}px)`;this.autoscrollEl.scrollIntoView({block:"nearest",inline:"nearest"})}start(e,{dataEl:t,gridRect:r,scrollEl:i,gridEl:o},s="left"){o.classList.add(Qr);const n=i.getBoundingClientRect();if(n){this.offset=n[s]-r[s]}this.renderAutoscroll(e,t)}stop(e){var t;e.classList.remove(Qr);if(this.element){this.element.hidden=true}this.offset=0;(t=this.autoscrollEl)===null||t===void 0?void 0:t.remove();this.autoscrollEl=undefined}showHandler(e,t,r="translateX"){if(!this.element){return}if(this.offset){e=Math.max(e,this.offset)}e=Math.min(e,t);this.element.style.transform=`${r}(${e}px)`;this.element.hidden=false}render(){const e=this.element=document.createElement("div");e.classList.add("drag-position-y");e.hidden=true;return e}}const ti=ve;const ri="columndragmousemove";const ii="columndragend";const oi="beforecolumndragend";const si="columndragstart";class ni extends z{constructor(e,t){super(e,t);this.revogrid=e;this.providers=t;this.moveFunc=B((e=>this.doMove(e)),5);this.staticDragData=null;this.dragData=null;this.localSubscriptions={};this.orderUi=new ei;e.appendChild(this.orderUi.render());e.classList.add("column-draggable");this.localSubscriptions["mouseleave"]={target:document,callback:e=>this.onMouseOut(e)};this.localSubscriptions["mouseup"]={target:document,callback:e=>this.onMouseUp(e)};this.localSubscriptions["mousemove"]={target:document,callback:e=>this.move(e)};this.addEventListener(ti,(({detail:e})=>this.dragStart(e)))}dragStart({event:e,data:t}){if(e.defaultPrevented){return}const{defaultPrevented:r}=fe(this.revogrid,si,t);if(r){return}this.clearOrder();const{mouseleave:i,mouseup:o,mousemove:s}=this.localSubscriptions;i.target.addEventListener("mouseleave",i.callback);o.target.addEventListener("mouseup",o.callback);const n=e.target.closest("revogr-header");const a=e.target.closest("revogr-viewport-scroll");if(!n||!a){return}if(Ve(t)||t.providers.type==="rowHeaders"){return}const h=this.getDimension(t.pin||"rgCol");const l=this.revogrid.getBoundingClientRect();const d=n.getBoundingClientRect();const c=P(h,ai(e.x,l.left,d.left-l.left));this.staticDragData={startPos:e.x,startItem:c,data:t,dataEl:n,scrollEl:a,gridEl:this.revogrid,cols:h};this.dragData=this.getData(this.staticDragData);s.target.addEventListener("mousemove",s.callback);this.orderUi.start(e,Object.assign(Object.assign({},this.dragData),this.staticDragData))}doMove(e){if(!this.staticDragData){return}const t=this.dragData=this.getData(this.staticDragData);if(!t){return}const r=this.staticDragData.startPos;if(Math.abs(r-e.x)>10){const r=ai(e.x,this.dragData.gridRect.left,this.dragData.scrollOffset);const i=P(this.staticDragData.cols,r);this.orderUi.autoscroll(r,t.elRect.width);this.orderUi.showHandler(i.end+t.scrollOffset,t.gridRect.width)}}move(e){fe(this.revogrid,ri,e);this.moveFunc(e)}onMouseOut(e){this.clearOrder()}onMouseUp(e){if(this.dragData){let t=ai(e.x,this.dragData.gridRect.left,this.dragData.scrollOffset);if(t<0){t=0}const r=P(this.staticDragData.cols,t);const i=this.providers.column.stores[this.dragData.type].store;const o=[...i.get("items")];const{defaultPrevented:s}=fe(this.revogrid,oi,Object.assign(Object.assign({},this.staticDragData),{startPosition:this.staticDragData.startItem,newPosition:r,newItem:i.get("source")[o[this.staticDragData.startItem.itemIndex]]}));if(!s){const e=o.splice(this.staticDragData.startItem.itemIndex,1);o.splice(r.itemIndex,0,...e);i.set("items",o)}fe(this.revogrid,ii,this.dragData)}this.clearOrder()}clearLocalSubscriptions(){p(this.localSubscriptions,(({target:e,callback:t},r)=>e.removeEventListener(r,t)))}clearOrder(){this.staticDragData=null;this.dragData=null;this.clearLocalSubscriptions();this.orderUi.stop(this.revogrid)}clearSubscriptions(){super.clearSubscriptions();this.clearLocalSubscriptions()}getData({gridEl:e,dataEl:t,data:r}){const i=e.getBoundingClientRect();const o=t.getBoundingClientRect();const s=o.left-i.left;return{elRect:o,gridRect:i,type:r.pin||"rgCol",scrollOffset:s}}getDimension(e){return this.providers.dimension.stores[e].getCurrentState()}}function ai(e,t,r){return e-t-r}function hi(){return/Mobi/i.test(navigator.userAgent)||/Android/i.test(navigator.userAgent)||navigator.maxTouchPoints>0}const li='.revo-drag-icon{width:11px}.revo-drag-icon::before{content:"::"}.revo-alt-icon{-webkit-mask-image:url("data:image/svg+xml,%3C%3Fxml version=\'1.0\' encoding=\'UTF-8\'%3F%3E%3Csvg viewBox=\'0 0 384 383\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'%3E%3Cg%3E%3Cpath d=\'M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z\'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3C%3Fxml version=\'1.0\' encoding=\'UTF-8\'%3F%3E%3Csvg viewBox=\'0 0 384 383\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'%3E%3Cg%3E%3Cpath d=\'M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z\'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");width:11px;height:11px;background-size:cover;background-repeat:no-repeat}.arrow-down{position:absolute;right:5px;top:0}.arrow-down svg{width:8px;margin-top:5px;margin-left:5px;opacity:0.4}.cell-value-wrapper{margin-right:10px;overflow:hidden;text-overflow:ellipsis}.revo-button{position:relative;overflow:hidden;color:#fff;background-color:#6200ee;height:34px;line-height:34px;padding:0 15px;outline:0;border:0;border-radius:7px;box-sizing:border-box;cursor:pointer}.revo-button.green{background-color:#009037;border:1px solid #00772d}.revo-button.red{background-color:#E0662E;border:1px solid #d55920}.revo-button:disabled,.revo-button[disabled]{cursor:not-allowed !important;filter:opacity(0.35) !important}.revo-button.light{border:1px solid #cedefa;line-height:32px;background:none;color:#000;box-shadow:none}revo-grid[theme=default],revo-grid:not([theme]){border:1px solid #cecece;font-size:12px}revo-grid[theme=default] revogr-header,revo-grid:not([theme]) revogr-header{text-align:center;line-height:30px;background-color:#f8f9fa}revo-grid[theme=default] revogr-header .group-rgRow,revo-grid:not([theme]) revogr-header .group-rgRow{box-shadow:none}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid[theme=default] revogr-header .group-rgRow,revo-grid:not([theme]) revogr-header .header-rgRow,revo-grid:not([theme]) revogr-header .group-rgRow{text-transform:uppercase;font-size:12px;color:#000}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid:not([theme]) revogr-header .header-rgRow{height:30px;box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-header .rgHeaderCell,revo-grid:not([theme]) revogr-header .rgHeaderCell{box-shadow:-1px 0 0 0 #cecece inset, 0 -1px 0 0 #cecece, 0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-header .rgHeaderCell.focused-cell,revo-grid:not([theme]) revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] .rowHeaders,revo-grid:not([theme]) .rowHeaders{background-color:#f8f9fa}revo-grid[theme=default] .rowHeaders revogr-data .rgCell,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell{color:#000}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:first-child,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:first-child{box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:not(:first-child),revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:not(:first-child){box-shadow:0 -1px 0 0 #cecece inset, 1px 0 0 0 #cecece inset}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:last-child,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:last-child{border-right:1px solid #cecece}revo-grid[theme=default] .rowHeaders revogr-data revogr-header,revo-grid:not([theme]) .rowHeaders revogr-data revogr-header{box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child,revo-grid:not([theme]) revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell,revo-grid:not([theme]) revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #cecece inset, -1px 0 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinEnd,revo-grid[theme=default] revogr-viewport-scroll.colPinEnd revogr-header,revo-grid:not([theme]) revogr-viewport-scroll.colPinEnd,revo-grid:not([theme]) revogr-viewport-scroll.colPinEnd revogr-header{box-shadow:1px 0 0 #cecece inset}revo-grid[theme=default] .footer-wrapper revogr-data .rgRow:first-child .rgCell,revo-grid:not([theme]) .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset, 0 -1px 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data,revo-grid:not([theme]) revogr-data{text-align:center}revo-grid[theme=default] revogr-data .revo-draggable,revo-grid:not([theme]) revogr-data .revo-draggable{float:left}revo-grid[theme=default] revogr-data .rgRow,revo-grid:not([theme]) revogr-data .rgRow{line-height:27px}revo-grid[theme=default] revogr-data .rgRow.focused-rgRow,revo-grid:not([theme]) revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] revogr-data .rgCell,revo-grid:not([theme]) revogr-data .rgCell{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgCell.disabled,revo-grid:not([theme]) revogr-data .rgCell.disabled{background-color:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=material]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}revo-grid[theme=material] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=material] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=material] revogr-header .header-rgRow{height:50px}revo-grid[theme=material] revogr-data{text-align:left}revo-grid[theme=material] revogr-data .rgRow{line-height:42px}revo-grid[theme=material] revogr-data .rgCell{padding:0 15px}revo-grid[theme=material] .rowHeaders{background-color:#f7faff}revo-grid[theme=material] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=material] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=material] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=material] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=material] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=material] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=material] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=material] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=darkMaterial]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#d8d8d8}revo-grid[theme=darkMaterial] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkMaterial] revogr-header .header-rgRow{height:50px}revo-grid[theme=darkMaterial] revogr-data{text-align:left}revo-grid[theme=darkMaterial] revogr-data .rgRow{line-height:42px}revo-grid[theme=darkMaterial] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkMaterial] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkMaterial] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkMaterial] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkMaterial] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkMaterial] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=darkCompact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#d8d8d8}revo-grid[theme=darkCompact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkCompact] revogr-header .header-rgRow{height:45px}revo-grid[theme=darkCompact] revogr-data{text-align:left}revo-grid[theme=darkCompact] revogr-data .rgRow{line-height:32px}revo-grid[theme=darkCompact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkCompact] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkCompact] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkCompact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkCompact] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkCompact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkCompact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=compact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}revo-grid[theme=compact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=compact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=compact] revogr-header .header-rgRow{height:45px}revo-grid[theme=compact] revogr-data{text-align:left}revo-grid[theme=compact] revogr-data .rgRow{line-height:32px}revo-grid[theme=compact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=compact] .rowHeaders{background-color:#f7faff}revo-grid[theme=compact] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=compact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=compact] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=compact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=compact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=compact] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=compact] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=compact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=compact] revo-dropdown .rv-dr-root{padding:0px 9px}revo-grid{display:block;height:100%;min-height:300px;font-family:Helvetica, Arial, Sans-Serif, serif;font-size:14px;position:relative;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;width:100%;height:100%}revo-grid .attribution{position:absolute;top:0;left:0;right:0;z-index:100;width:0;height:0;border-left:6px solid #0049cf;border-top:6px solid #0049cf;border-bottom:6px solid transparent;border-right:6px solid transparent;cursor:pointer}revo-grid .attribution .value{position:absolute;top:0;left:0;background-color:rgba(255, 255, 255, 0.9);padding:4px;border-radius:4px;box-shadow:0 1px 10px rgba(0, 0, 0, 0.2);white-space:nowrap;text-decoration:none;color:black;letter-spacing:0.3px;font-size:11px;opacity:0;width:6px;overflow:hidden;transition:opacity 0.5s ease-in-out, width 0.3s ease-in-out}revo-grid .attribution:hover .value{width:63px;opacity:1}revo-grid.column-draggable.column-drag-start:hover,revo-grid.column-draggable.column-drag-start *:hover{cursor:grabbing}revo-grid .footer-wrapper,revo-grid .header-wrapper{width:100%}revo-grid .footer-wrapper revogr-data,revo-grid .header-wrapper revogr-data{z-index:3}revo-grid revo-dropdown{width:100%}revo-grid revo-dropdown .rv-dr-root{max-height:100%}revo-grid revo-dropdown.shrink label{opacity:0}revo-grid .viewports{max-width:100%;display:flex;flex-direction:row;align-items:flex-start;flex-grow:1}revo-grid .main-viewport{flex-grow:1;height:0;display:flex;justify-content:space-between;flex-direction:row}revo-grid .draggable{position:fixed;height:30px;line-height:30px;background:#fff;border-radius:3px;display:block;z-index:100;margin-top:5px;margin-right:-20px;box-shadow:0 4px 20px 0 rgba(0, 0, 0, 0.15);padding-left:20px;padding-right:5px}revo-grid .draggable.hidden{display:none}revo-grid .draggable .revo-alt-icon{background-color:black;position:absolute;left:5px;top:10px}revo-grid .draggable-wrapper.hidden{display:none}revo-grid .drag-position{position:absolute;left:0;right:0;height:1px;z-index:2;background:gray;pointer-events:none}revo-grid .drag-position-y{position:absolute;top:0;left:0;bottom:0;width:1px;z-index:2;background:gray;pointer-events:none}revo-grid .drag-auto-scroll-y{pointer-events:none;position:absolute;left:0;top:0;height:50px;width:1px}revo-grid .clipboard{position:absolute;left:0;top:0}revo-grid revogr-scroll-virtual{position:relative}revo-grid revogr-scroll-virtual.vertical,revo-grid revogr-scroll-virtual.horizontal{z-index:3}';const di=li;const ci=class{constructor(e){t(this,e);this.contentsizechanged=r(this,"contentsizechanged",7);this.beforeedit=r(this,"beforeedit",7);this.beforerangeedit=r(this,"beforerangeedit",7);this.afteredit=r(this,"afteredit",7);this.beforeautofill=r(this,"beforeautofill",7);this.beforeange=r(this,"beforeange",7);this.afterfocus=r(this,"afterfocus",7);this.roworderchanged=r(this,"roworderchanged",7);this.beforesortingapply=r(this,"beforesortingapply",7);this.beforesorting=r(this,"beforesorting",7);this.rowdragstart=r(this,"rowdragstart",7);this.headerclick=r(this,"headerclick",7);this.beforecellfocus=r(this,"beforecellfocus",7);this.beforefocuslost=r(this,"beforefocuslost",7);this.beforesourceset=r(this,"beforesourceset",7);this.beforeanysource=r(this,"beforeanysource",7);this.aftersourceset=r(this,"aftersourceset",7);this.afteranysource=r(this,"afteranysource",7);this.beforecolumnsset=r(this,"beforecolumnsset",7);this.beforecolumnapplied=r(this,"beforecolumnapplied",7);this.aftercolumnsset=r(this,"aftercolumnsset",7);this.beforefilterapply=r(this,"beforefilterapply",7);this.beforefiltertrimmed=r(this,"beforefiltertrimmed",7);this.beforetrimmed=r(this,"beforetrimmed",7);this.aftertrimmed=r(this,"aftertrimmed",7);this.viewportscroll=r(this,"viewportscroll",7);this.beforeexport=r(this,"beforeexport",7);this.beforeeditstart=r(this,"beforeeditstart",7);this.aftercolumnresize=r(this,"aftercolumnresize",7);this.beforerowdefinition=r(this,"beforerowdefinition",7);this.filterconfigchanged=r(this,"filterconfigchanged",7);this.rowheaderschanged=r(this,"rowheaderschanged",7);this.beforegridrender=r(this,"beforegridrender",7);this.aftergridinit=r(this,"aftergridinit",7);this.clickTrackForFocusClear=null;this.extraElements=[];this.uuid=null;this.viewport=null;this.internalPlugins=[];this.rowHeaders=undefined;this.frameSize=1;this.rowSize=0;this.colSize=100;this.range=false;this.readonly=false;this.resize=false;this.canFocus=true;this.useClipboard=true;this.columns=[];this.source=[];this.pinnedTopSource=[];this.pinnedBottomSource=[];this.rowDefinitions=[];this.editors={};this.applyOnClose=false;this.plugins=undefined;this.columnTypes={};this.theme="default";this.rowClass="";this.autoSizeColumn=false;this.filter=false;this.focusTemplate=undefined;this.canMoveColumns=false;this.trimmedRows={};this.exporting=false;this.grouping=undefined;this.stretch=true;this.additionalData={};this.disableVirtualX=false;this.disableVirtualY=false;this.hideAttribution=false;this.jobsBeforeRender=[];this.registerVNode=[]}async refresh(e="all"){this.dataProvider.refresh(e)}async setDataAt(e){const t=this.element.querySelector(`revogr-data[type="${e.rowType}"][col-type="${e.colType}"]`);return t===null||t===void 0?void 0:t.updateCell({row:e.row,col:e.col})}async scrollToRow(e=0){const t=this.dimensionProvider.getViewPortPos({coordinate:e,dimension:"rgRow"});await this.scrollToCoordinate({y:t})}async scrollToColumnIndex(e=0){const t=this.dimensionProvider.getViewPortPos({coordinate:e,dimension:"rgCol"});await this.scrollToCoordinate({x:t})}async scrollToColumnProp(e,t="rgCol"){const r=this.columnProvider.getColumnIndexByProp(e,t);if(r<0){return}const i=this.dimensionProvider.getViewPortPos({coordinate:r,dimension:t});await this.scrollToCoordinate({x:i})}async updateColumns(e){this.columnProvider.updateColumns(e)}async addTrimmed(e,t="external",r="rgRow"){const i=this.beforetrimmed.emit({trimmed:e,trimmedType:t,type:r});if(i.defaultPrevented){return i}this.dataProvider.setTrimmed({[t]:i.detail.trimmed},r);this.aftertrimmed.emit();return i}async scrollToCoordinate(e){var t;(t=this.viewport)===null||t===void 0?void 0:t.scrollToCell(e)}async setCellEdit(e,t,r="rgRow"){var i;const o=Ue.getColumnByProp(this.columns,t);if(!o){return}await V();const s=o.pin||"rgCol";(i=this.viewport)===null||i===void 0?void 0:i.setEdit(e,this.columnProvider.getColumnIndexByProp(t,s),s,r)}async setCellsFocus(e={x:0,y:0},t={x:0,y:0},r="rgCol",i="rgRow"){var o;(o=this.viewport)===null||o===void 0?void 0:o.setFocus(r,i,e,t)}async getSource(e="rgRow"){return this.dataProvider.stores[e].store.get("source")}async getVisibleSource(e="rgRow"){return w(this.dataProvider.stores[e].store)}async getSourceStore(e="rgRow"){return this.dataProvider.stores[e].store}async getColumnStore(e="rgCol"){return this.columnProvider.stores[e].store}async updateColumnSorting(e,t,r,i){return this.columnProvider.updateColumnSorting(e,t,r,i)}async clearSorting(){this.columnProvider.clearSorting()}async getColumns(){return this.columnProvider.getColumns()}async clearFocus(){var e;const t=(e=this.viewport)===null||e===void 0?void 0:e.getFocused();const r=this.beforefocuslost.emit(t);if(r.defaultPrevented){return}this.selectionStoreConnector.clearAll()}async getPlugins(){return[...this.internalPlugins]}async getFocused(){var e;return(e=this.viewport)===null||e===void 0?void 0:e.getFocused()}async getContentSize(){var e;return(e=this.dimensionProvider)===null||e===void 0?void 0:e.getFullSize()}async getSelectedRange(){var e;return(e=this.viewport)===null||e===void 0?void 0:e.getSelectedRange()}mousedownHandle(e){const t=ue(e,"screenX");const r=ue(e,"screenY");if(t===null||r===null){return}this.clickTrackForFocusClear=t+r}mouseupHandle(e){const t=ue(e,"screenX");const r=ue(e,"screenY");if(t===null||r===null){return}if(e.defaultPrevented){return}const i=e.target;const o=t+r;if(Math.abs(this.clickTrackForFocusClear-o)>10){return}if(i===null||i===void 0?void 0:i.closest(`[${q}="${this.uuid}"]`)){return}this.clearFocus()}onRowDragStarted(e){var t;const r=this.rowdragstart.emit(e.detail);if(r.defaultPrevented){e.preventDefault();return}(t=this.orderService)===null||t===void 0?void 0:t.start(this.element,Object.assign(Object.assign({},e.detail),r.detail))}onRowDragEnd(){var e;(e=this.orderService)===null||e===void 0?void 0:e.end()}onRowDrag({detail:e}){var t;(t=this.orderService)===null||t===void 0?void 0:t.move(e)}onRowMouseMove(e){var t;(t=this.orderService)===null||t===void 0?void 0:t.moveTip(e.detail)}async onCellEdit(e){const{defaultPrevented:t,detail:r}=this.beforeedit.emit(e.detail);await V();if(!t){this.dataProvider.setCellData(r);this.afteredit.emit(r)}}onRangeEdit(e){const{defaultPrevented:t,detail:r}=this.beforerangeedit.emit(e.detail);if(t){e.preventDefault();return}this.dataProvider.setRangeData(r.data,r.type);this.afteredit.emit(r)}onRangeChanged(e){const t=this.beforeange.emit(e.detail);if(t.defaultPrevented){e.preventDefault()}const r=this.beforeautofill.emit(t.detail);if(r.defaultPrevented){e.preventDefault()}}onRowDropped(e){const{defaultPrevented:t}=this.roworderchanged.emit(e.detail);if(t){e.preventDefault()}}onHeaderClick(e){const{defaultPrevented:t}=this.headerclick.emit(Object.assign(Object.assign({},e.detail.column),{originalEvent:e.detail.originalEvent}));if(t){e.preventDefault()}}onCellFocus(e){const{defaultPrevented:t}=this.beforecellfocus.emit(e.detail);if(!this.canFocus||t){e.preventDefault()}}columnTypesChanged(){this.columnChanged(this.columns)}columnChanged(e=[]){const t=Ue.getColumns(e,0,this.columnTypes);this.beforecolumnsset.emit(t);this.dimensionProvider.applyNewColumns(t.columns,this.disableVirtualX);this.beforecolumnapplied.emit(t);const r=this.columnProvider.setColumns(t);this.aftercolumnsset.emit({columns:r,order:this.columnProvider.order})}disableVirtualXChanged(e=false,t=false){if(e===t){return}this.columnChanged(this.columns)}rowSizeChanged(e){this.dimensionProvider.setSettings({originItemSize:e},"rgRow");this.rowDefChanged(this.rowDefinitions,this.rowDefinitions)}themeChanged(e,t,r="theme",i=false){this.themeService.register(e);this.dimensionProvider.setSettings({originItemSize:this.themeService.rowSize},"rgRow");this.dimensionProvider.setSettings({originItemSize:this.colSize},"rgCol");if(!i){this.dimensionProvider.setSettings({originItemSize:this.themeService.rowSize},"rgRow");this.rowDefChanged(this.rowDefinitions.length?this.rowDefinitions:[{type:"rgRow",size:this.themeService.rowSize,index:0}],this.rowDefinitions)}}dataSourceChanged(e=[],t,r){let i="rgRow";switch(r){case"pinnedBottomSource":i="rowPinEnd";break;case"pinnedTopSource":i="rowPinStart";break;case"source":i="rgRow";const t=this.beforesourceset.emit({type:i,source:e});e=t.detail.source;break}const o=this.beforeanysource.emit({type:i,source:e});const s=[...o.detail.source];this.dataProvider.setData(s,i,this.disableVirtualY);if(r==="source"){this.aftersourceset.emit({type:i,source:e})}this.afteranysource.emit({type:i,source:e})}disableVirtualYChanged(e=false,t=false){if(e===t){return}this.dataSourceChanged(this.source,this.source,"source")}rowDefChanged(e,t){const{detail:{vals:r,oldVals:i}}=this.beforerowdefinition.emit({vals:e,oldVals:t});const o=Kr(r);if(i){const e=Zr(i);p(e,((e,t)=>{this.dimensionProvider.clearSize(t,this.dataProvider.stores[t].store.get("source").length)}))}if(!r.length){return}p(o,((e,t)=>this.dimensionProvider.setCustomSizes(t,e.sizes||{})))}trimmedRowsChanged(e={}){this.addTrimmed(e)}groupingChanged(e={}){let t;for(let e of this.internalPlugins){const r=e;if(r.setGrouping){t=r;break}}if(!t){return}t.setGrouping(e||{})}applyStretch(e){if(e==="false"){e=false}let t=this.internalPlugins.filter((e=>_r(e)))[0];if(typeof e==="boolean"&&e||e==="true"){if(!t){const e={data:this.dataProvider,column:this.columnProvider,dimension:this.dimensionProvider,viewport:this.viewportProvider,selection:this.selectionStoreConnector};this.internalPlugins.push(new Jr(this.element,e))}else if(_r(t)){t.applyStretch(this.columnProvider.getRawColumns())}}else if(t){const e=this.internalPlugins.indexOf(t);this.internalPlugins.splice(e,1)}}applyFilter(e){this.filterconfigchanged.emit(e)}rowHeadersChange(e){this.rowheaderschanged.emit(e)}registerOutsideVNodes(e=[]){this.extraElements=[...this.extraElements,...e]}componentWillRender(){const e=this.beforegridrender.emit();if(e.defaultPrevented){return false}return Promise.all(this.jobsBeforeRender)}connectedCallback(){this.viewportProvider=new Xe;this.themeService=new Ce({rowSize:this.rowSize});this.dimensionProvider=new Ge(this.viewportProvider,{realSizeChanged:e=>this.contentsizechanged.emit(e)});this.columnProvider=new Ue;this.selectionStoreConnector=new $;this.dataProvider=new qe(this.dimensionProvider);this.uuid=`${(new Date).getTime()}-rvgrid`;this.registerOutsideVNodes(this.registerVNode);const e={data:this.dataProvider,column:this.columnProvider,dimension:this.dimensionProvider,viewport:this.viewportProvider,selection:this.selectionStoreConnector};if(this.autoSizeColumn){this.internalPlugins.push(new Je(this.element,e,typeof this.autoSizeColumn==="object"?this.autoSizeColumn:undefined))}if(this.filter){this.internalPlugins.push(new gt(this.element,e,this.uuid,typeof this.filter==="object"?this.filter:undefined))}if(this.exporting){this.internalPlugins.push(new Nr(this.element,e))}this.internalPlugins.push(new fr(this.element,e));this.internalPlugins.push(new Ur(this.element,e));if(this.canMoveColumns){this.internalPlugins.push(new ni(this.element,e))}if(this.plugins){this.plugins.forEach((t=>{this.internalPlugins.push(new t(this.element,e))}))}this.applyStretch(this.stretch);this.themeChanged(this.theme,undefined,undefined,true);this.columnChanged(this.columns);this.dataSourceChanged(this.source,undefined,"source");this.dataSourceChanged(this.pinnedTopSource,undefined,"pinnedTopSource");this.dataSourceChanged(this.pinnedBottomSource,undefined,"pinnedBottomSource");this.trimmedRowsChanged(this.trimmedRows);this.rowDefChanged(this.rowDefinitions);this.groupingChanged(this.grouping);this.scrollingService=new Xr((e=>{this.dimensionProvider.setViewPortCoordinate({coordinate:e.coordinate,type:e.dimension});this.viewportscroll.emit(e)}));this.aftergridinit.emit()}disconnectedCallback(){this.internalPlugins.forEach((e=>e.destroy()));this.internalPlugins=[]}render(){const t=this.dimensionProvider.stores["rgRow"].store.get("realSize");this.viewport=new Gr({columnProvider:this.columnProvider,dataProvider:this.dataProvider,dimensionProvider:this.dimensionProvider,viewportProvider:this.viewportProvider,scrollingService:this.scrollingService,orderService:this.orderService,selectionStoreConnector:this.selectionStoreConnector,disableVirtualX:this.disableVirtualX,disableVirtualY:this.disableVirtualY,resize:e=>this.aftercolumnresize.emit(e)},t);const r=[];if(this.rowHeaders&&this.viewport.columns.length){const i=this.viewport.columns[0];r.push(e("revogr-row-headers",{additionalData:this.additionalData,height:t,rowClass:this.rowClass,resize:this.resize,dataPorts:i.dataPorts,headerProp:i.headerProp,jobsBeforeRender:this.jobsBeforeRender,rowHeaderColumn:typeof this.rowHeaders==="object"?this.rowHeaders:undefined,onScrollview:({detail:e})=>this.scrollingService.proxyScroll(e,"headerRow"),onRef:({detail:e})=>this.scrollingService.registerElement(e,"headerRow")}))}const o=hi();const s=[];for(let t of this.viewport.columns){const r=Object.assign(Object.assign({},t.headerProp),{type:t.type,additionalData:this.additionalData,viewportCol:t.viewportCol,selectionStore:t.columnSelectionStore,canResize:this.resize,readonly:this.readonly,columnFilter:!!this.filter});const i=[e("revogr-header",Object.assign({key:"b3c3ccd088d6a01511b07f66f7dc937617a4786d"},r,{slot:he}))];t.dataPorts.forEach((r=>{const s=`${r.type}_${t.type}`;const n=e("revogr-overlay-selection",Object.assign({},r,{isMobileDevice:o,selectionStore:r.segmentSelectionStore,onSelectall:()=>this.selectionStoreConnector.selectAll(),editors:this.editors,readonly:this.readonly,range:this.range,useClipboard:this.useClipboard,applyChangesOnClose:this.applyOnClose,additionalData:this.additionalData,slot:r.slot,onCanceledit:()=>this.selectionStoreConnector.setEdit(false),onSetedit:({detail:e})=>{const t=this.beforeeditstart.emit(e);if(!t.defaultPrevented){this.selectionStoreConnector.setEdit(e.val)}}}),e("revogr-data",Object.assign({},r,{colType:t.type,key:s,readonly:this.readonly,range:this.range,rowClass:this.rowClass,rowSelectionStore:r.rowSelectionStore,additionalData:this.additionalData,jobsBeforeRender:this.jobsBeforeRender,slot:ce}),e("slot",{name:`data-${t.type}-${r.type}`})),e("revogr-temp-range",{selectionStore:r.segmentSelectionStore,dimensionRow:r.dimensionRow,dimensionCol:r.dimensionCol}),e("revogr-focus",{colData:r.colData,dataStore:r.dataStore,focusTemplate:this.focusTemplate,rowType:r.type,colType:t.type,selectionStore:r.segmentSelectionStore,dimensionRow:r.dimensionRow,dimensionCol:r.dimensionCol},e("slot",{name:`focus-${t.type}-${r.type}`})));i.push(n)}));s.push(e("revogr-viewport-scroll",Object.assign({},t.prop,{ref:e=>this.scrollingService.registerElement(e,`${t.prop.key}`),onScrollviewport:e=>this.scrollingService.proxyScroll(e.detail,`${t.prop.key}`),onScrollviewportsilent:e=>this.scrollingService.scrollSilentService(e.detail,`${t.prop.key}`)}),i))}r.push(s);const n="rgRow";const a="rgCol";const h=this.viewportProvider.stores;const l=this.dimensionProvider.stores;return e(i,{key:"6c36df93ae796fbfeee95cb5ab789a1f9b0c42f1",[`${q}`]:this.uuid},this.hideAttribution?null:e("revogr-attribution",{class:"attribution"}),e("div",{key:"e5cd68158497d79d98ce4f92f1e816b60acbf6ac",class:"main-viewport",onClick:e=>{if(e.currentTarget===e.target){this.viewport.clearEdit()}}},e("div",{key:"9f121f8e4184f38ad0f086eeabb287434dbae101",class:"viewports"},e("slot",{key:"e234abc3d5a6b1ddbe1fb1da4e415e754444057d",name:"viewport"}),r,e("revogr-scroll-virtual",{key:"c7b915c6117a822cea1fadce5111cd665f5a43d9",class:"vertical",dimension:n,viewportStore:h[n].store,dimensionStore:l[n].store,ref:e=>this.scrollingService.registerElement(e,"rowScroll"),onScrollvirtual:e=>this.scrollingService.proxyScroll(e.detail)}),e(Wr,{key:"5e6c259216474164247f2120eb9a16786ce03e6f",ref:e=>this.orderService=e}))),e("revogr-scroll-virtual",{key:"ce8e46b6e7913e798b8d1bd094a4c61a54b73a0a",class:"horizontal",dimension:a,viewportStore:h[a].store,dimensionStore:l[a].store,ref:e=>this.scrollingService.registerElement(e,"colScroll"),onScrollvirtual:e=>this.scrollingService.proxyScroll(e.detail)}),this.extraElements)}get element(){return o(this)}static get watchers(){return{columnTypes:["columnTypesChanged"],columns:["columnChanged"],disableVirtualX:["disableVirtualXChanged"],rowSize:["rowSizeChanged"],theme:["themeChanged"],source:["dataSourceChanged"],pinnedBottomSource:["dataSourceChanged"],pinnedTopSource:["dataSourceChanged"],disableVirtualY:["disableVirtualYChanged"],rowDefinitions:["rowDefChanged"],trimmedRows:["trimmedRowsChanged"],grouping:["groupingChanged"],stretch:["applyStretch"],filter:["applyFilter"],rowHeaders:["rowHeadersChange"],registerVNode:["registerOutsideVNodes"]}}};ci.style=di;export{ci as revo_grid};
|
|
4
|
+
import{h as e,r as t,c as r,H as i,a as o}from"./index-e661aeb5.js";import{_ as s,n,o as a,q as h,u as l,v as d,w as c,r as g,D as u,b as f,e as v,m as p,s as m,a as w,f as b,j as x,x as C,y,z as S,A as k,l as R,B as j,C as O,g as E,d as L,i as P}from"./dimension.helpers-c0c2888f.js";import{B as z,c as H,r as M,i as I,D}from"./base.plugin-e6e2bac2.js";import{_ as F,c as T}from"./toNumber-8de324a7.js";import{E as N,b as $}from"./selection.helpers-0f3ed629.js";import{d as B}from"./debounce-7781346d.js";import{R as A,t as V,g as U,U as q}from"./index-5a722722.js";import{V as G}from"./viewport.store-2dc172be.js";import{F as X,i as W}from"./filter.button-f132c10a.js";import{i as Y,g as J,G as _,a as K,b as Z,c as Q,P as ee,d as te,e as re,f as ie,h as oe,j as se,k as ne,l as ae,H as he,C as le,F as de,D as ce}from"./column.service-ffe99cfc.js";import{c as ge,g as ue}from"./events-77b43b40.js";import{d as fe}from"./dispatcher-8ea9187d.js";import{O as ve}from"./header-cell-renderer-cac333a3.js";class pe{constructor(){this.defaultRowSize=32}}class me{constructor(){this.defaultRowSize=27}}class we{constructor(){this.defaultRowSize=42}}const be="default";const xe=[be,"material","compact","darkMaterial","darkCompact"];class Ce{get theme(){return this.currentTheme}get rowSize(){return this.customRowSize||this.currentTheme.defaultRowSize}set rowSize(e){this.customRowSize=e}constructor(e){this.customRowSize=0;this.customRowSize=e.rowSize;this.register("default")}register(e){const t=Ce.getTheme(e);switch(t){case"material":case"darkMaterial":this.currentTheme=new we;break;case"compact":case"darkCompact":this.currentTheme=new pe;break;default:this.currentTheme=new me;break}}static getTheme(e){if(xe.indexOf(e)>-1){return e}return be}}var ye=s,Se=n,ke=a;function Re(e){return function(t,r,i){var o=Object(t);if(!Se(t)){var s=ye(r);t=ke(t);r=function(e){return s(o[e],e,o)}}var n=e(t,r,i);return n>-1?o[s?t[n]:n]:undefined}}var je=Re;var Oe=je,Ee=h;var Le=Oe(Ee);var Pe=Le;var ze=l,He=n;function Me(e,t){var r=-1,i=He(e)?Array(e.length):[];ze(e,(function(e,o,s){i[++r]=t(e,o,s)}));return i}var Ie=Me;var De=d,Fe=s,Te=Ie,Ne=c;function $e(e,t){var r=Ne(e)?De:Te;return r(e,Fe(t))}var Be=$e;class Ae extends z{static gatherGroup(e,t,r,i=0){const o=Object.assign(Object.assign({},t),{level:i,ids:[]});for(let t in r.columns){const i=t;const s=e.columns[i];const n=r.columns[i];if(c(s)&&c(n)){s.push(...n);if(n.length){e.columnGrouping[i].push(Object.assign(Object.assign({},o),{ids:Be(n,"prop")}))}}}for(let t in r.columnGrouping){const i=t;const o=r.columnGrouping[i];e.columnGrouping[i].push(...o)}e.maxLevel=Math.max(e.maxLevel,r.maxLevel);e.sort=Object.assign(Object.assign({},e.sort),r.sort);return e}}function Ve(e){return!!e.children}class Ue{get order(){return g(this.sorting,((e,t,r)=>{e[r]=t.order;return e}),{})}get stores(){return this.dataSources}constructor(){this.sorting=null;this.dataSources=g(H,((e,t)=>{e[t]=new u(t);return e}),{})}column(e,t){return this.getColumn(e,t||"rgCol")}getColumn(e,t){return f(this.dataSources[t].store,e)}getRawColumns(){return g(this.dataSources,((e,t,r)=>{e[r]=t.store.get("source");return e}),{rgCol:[],colPinStart:[],colPinEnd:[]})}getColumns(e="all"){if(e!=="all"){return this.dataSources[e].store.get("source")}return H.reduce(((e,t)=>{e.push(...this.dataSources[t].store.get("source"));return e}),[])}getColumnIndexByProp(e,t){return v(this.dataSources[t].store,e)}getColumnByProp(e,t){const r=this.dataSources[t].store.get("source");return Pe(r,{prop:e})}refreshByType(e){this.dataSources[e].refresh()}setColumns(e){H.forEach((t=>{this.dataSources[t].updateData(e.columns[t],{depth:e.maxLevel,groups:e.columnGrouping[t].reduce(((e,t)=>{if(!e[t.level]){e[t.level]=[]}e[t.level].push(t);return e}),{})})}));this.sorting=e.sort;return e}updateColumns(e){const t=e.reduce(((e,t)=>{const r=Ue.getColumnType(t);if(!e[r]){e[r]={}}e[r][t.prop]=t;return e}),{});const r={};p(t,((e,t)=>{const i=this.dataSources[t].store.get("source");r[t]=i.reduce(((t,r,i)=>{const o=e[r.prop];if(o){t[i]=o}return t}),{})}));p(r,((e,t)=>m(this.dataSources[t].store,e)))}updateColumn(e,t){const r=Ue.getColumnType(e);m(this.dataSources[r].store,{[t]:e})}updateColumnSorting(e,t,r,i){if(!i){this.clearSorting()}e.order=r;this.sorting[e.prop]=e;this.updateColumn(e,t);return e}clearSorting(){const e=g(this.sorting,((e,t)=>{const r=Ue.getColumnType(t);e[r]=true;return e}),{});p(e,((e,t)=>{const r=this.dataSources[t].store.get("source");p(r,(e=>e.order=undefined));this.dataSources[t].setData({source:[...r]})}));this.sorting={}}static getSizes(e){return g(e,((e,t,r)=>{if(t.size){e[r]=t.size}return e}),{})}static getColumnByProp(e,t){return Pe(e,(e=>{if(Ve(e)){return Ue.getColumnByProp(e.children,t)}return e.prop===t}))}static getColumns(e,t=0,r){const i={columns:{rgCol:[],colPinStart:[],colPinEnd:[]},columnByProp:{},columnGrouping:{rgCol:[],colPinStart:[],colPinEnd:[]},maxLevel:t,sort:{}};return g(e,((e,i)=>{if(Ve(i)){return Ae.gatherGroup(e,i,Ue.getColumns(i.children,t+1,r),t)}const o=Object.assign(Object.assign({},i.columnType&&r&&r[i.columnType]),i);if(!o.pin){e.columns.rgCol.push(o)}else{e.columns[o.pin].push(o)}if(o.order){e.sort[o.prop]=o}if(!e.columnByProp[o.prop]){e.columnByProp[o.prop]=[]}e.columnByProp[o.prop].push(o);o.beforeSetup&&o.beforeSetup(o);return e}),i)}static getColumnType(e){if(e.pin){return e.pin}return"rgCol"}}class qe{constructor(e){this.dimensionProvider=e;this.stores=g(M,((e,t)=>{e[t]=new u(t);return e}),{})}setData(e,t="rgRow",r=false,i,o=false){this.stores[t].updateData([...e],i,o);const s=t!=="rgRow"||r;this.dimensionProvider.setData(e.length,t,s);return e}getModel(e,t="rgRow"){const r=this.stores[t].store;return f(r,e)}setCellData({type:e,rowIndex:t,prop:r,val:i},o=true){const s=this.getModel(t,e);s[r]=i;m(this.stores[e].store,{[t]:s},o)}setRangeData(e,t){const r={};for(let i in e){const o=r[i]=f(this.stores[t].store,parseInt(i,10));if(!o){continue}for(let t in e[i]){o[t]=e[i][t]}}m(this.stores[t].store,r)}refresh(e="all"){if(I(e)){this.refreshItems(e)}M.forEach((e=>this.refreshItems(e)))}refreshItems(e="rgRow"){const t=this.stores[e].store.get("items");this.stores[e].setData({items:[...t]})}setGrouping({depth:e},t="rgRow"){this.stores[t].setData({groupingDepth:e})}setTrimmed(e,t="rgRow"){const r=this.stores[t];r.addTrimmed(e);this.dimensionProvider.setTrimmed(e,t);if(t==="rgRow"){this.dimensionProvider.setData(w(r.store).length,t)}}}class Ge{constructor(e,t){this.viewports=e;const r=B((e=>t.realSizeChanged(e)),A);this.stores=g([...M,...H],((e,t)=>{e[t]=new D;e[t].store.onChange("realSize",(()=>r(t)));return e}),{})}clearSize(e,t){this.stores[e].drop();this.viewports.stores[e].setOriginalSizes(this.stores[e].store.get("originItemSize"));this.setItemCount(t,e)}setCustomSizes(e,t,r=false){let i=t;if(r){const r=this.stores[e].store.get("sizes");i=Object.assign(Object.assign({},r),t)}this.stores[e].setDimensionSize(i);this.viewports.stores[e].setViewPortDimensionSizes(i,!r?this.stores[e].store.get("originItemSize"):undefined)}setItemCount(e,t){this.viewports.stores[t].setViewport({realCount:e});this.stores[t].setStore({count:e})}setTrimmed(e,t){const r=b(e);const i=this.stores[t];i.setStore({trimmed:r});this.viewports.stores[t].setViewPortDimensionSizes(i.store.get("sizes"))}setData(e,t,r=false){this.setItemCount(e,t);if(r){const e=this.stores[t].getCurrentState();this.viewports.stores[t].setViewport({virtualSize:e.realSize})}this.updateViewport(t)}applyNewColumns(e,t){for(let r of H){this.stores[r].drop();const i=e[r];const o=r!=="rgCol"||t;this.stores[r].setStore({count:i.length});const s=Ue.getSizes(i);this.stores[r].setDimensionSize(s);const n={realCount:i.length};if(o){n.virtualSize=this.stores[r].getCurrentState().realSize}this.viewports.stores[r].setViewport(n);this.setViewPortCoordinate({coordinate:this.viewports.stores[r].lastCoordinate,type:r})}}getFullSize(){var e,t;let r=0;let i=0;for(let t of H){r+=((e=this.stores[t])===null||e===void 0?void 0:e.store.get("realSize"))||0}for(let e of M){i+=((t=this.stores[e])===null||t===void 0?void 0:t.store.get("realSize"))||0}return{y:i,x:r}}updateViewport(e){this.setViewPortCoordinate({coordinate:this.viewports.stores[e].lastCoordinate,type:e})}setViewPortCoordinate({coordinate:e,type:t}){const r=this.stores[t].getCurrentState();this.viewports.stores[t].setViewPortCoordinate(e,r)}getViewPortPos(e){const t=this.stores[e.dimension].getCurrentState();const r=x(t,e.coordinate);return r.start}setSettings(e,t){let r=[];switch(t){case"rgCol":r=H;break;case"rgRow":r=M;break}for(let t of r){this.stores[t].setStore(e)}}}class Xe{constructor(){this.stores=g([...M,...H],((e,t)=>{e[t]=new G(t);return e}),{})}setViewport(e,t){this.stores[e].setViewport(t)}}const We=7;var Ye;(function(e){e["headerClickAutosize"]="headerClickAutoSize";e["autoSizeOnTextOverlap"]="autoSizeOnTextOverlap";e["autoSizeAll"]="autoSizeAll"})(Ye||(Ye={}));class Je extends z{constructor(e,t,r){super(e,t);this.providers=t;this.config=r;this.autoSizeColumns=null;this.dataResolve=null;this.dataReject=null;this.letterBlockSize=(r===null||r===void 0?void 0:r.letterBlockSize)||We;if(r===null||r===void 0?void 0:r.preciseSize){this.precsizeCalculationArea=this.initiatePresizeElement();e.appendChild(this.precsizeCalculationArea)}const i=({detail:{source:e}})=>{this.setSource(e)};const o=({detail:e})=>{this.afteredit(e)};const s=({detail:e})=>{this.afterEditAll(e)};const n=({detail:{columns:e}})=>{this.columnSet(e)};const a=({detail:e})=>{const t=Ue.getColumnType(e.column);const r=this.getColumnSize(e.index,t);if(r){this.providers.dimension.setCustomSizes(t,{[e.index]:r},true)}};this.addEventListener("beforecolumnsset",n);switch(r===null||r===void 0?void 0:r.mode){case Ye.autoSizeOnTextOverlap:this.addEventListener("aftersourceset",i);this.addEventListener("afteredit",o);break;case Ye.autoSizeAll:this.addEventListener("aftersourceset",i);this.addEventListener("afteredit",s);break;default:this.addEventListener("headerdblclick",a);break}}async setSource(e){let t=this.autoSizeColumns;if(this.dataReject){this.dataReject();this.clearPromise()}if(!t){const e=new Promise(((e,t)=>{this.dataResolve=e;this.dataReject=t}));try{t=await e}catch(e){return}}p(t,((r,i)=>{const o={};p(t[i],(t=>{t.size=o[t.index]=e.reduce(((e,r)=>Math.max(e,this.getLength(r[t.prop]))),this.getLength(t.name||""))}));this.providers.dimension.setCustomSizes(i,o,true)}))}getLength(e){var t;const r=15;if(!e){return 0}try{const i=e.toString();if((t=this.config)===null||t===void 0?void 0:t.preciseSize){this.precsizeCalculationArea.innerText=i;return this.precsizeCalculationArea.scrollWidth+r*2}return i.length*this.letterBlockSize+r*2}catch(e){return 0}}afteredit(e){let t;if(this.isRangeEdit(e)){t=e.data}else{t={0:{[e.prop]:e.val}}}p(this.autoSizeColumns,((e,r)=>{const i={};p(e,(e=>{const r=g(t,((t,r)=>{if(typeof r[e.prop]==="undefined"){return t}return Math.max(t||0,this.getLength(r[e.prop]))}),undefined);if(r&&e.size<r){e.size=i[e.index]=r}}));this.providers.dimension.setCustomSizes(r,i,true)}))}afterEditAll(e){const t={};if(this.isRangeEdit(e)){p(e.data,(e=>p(e,((e,r)=>t[r]=true))))}else{t[e.prop]=true}p(this.autoSizeColumns,((e,r)=>{const i={};p(e,(e=>{if(t[e.prop]){const t=this.getColumnSize(e.index,r);if(t){i[e.index]=t}}}));this.providers.dimension.setCustomSizes(r,i,true)}))}getColumnSize(e,t){const r=this.autoSizeColumns[t][e];if(!r){return 0}return g(this.providers.data.stores,((e,t)=>{const i=g(t.store.get("items"),((e,i,o)=>{const s=f(t.store,o);return Math.max(e||0,this.getLength(s[r.prop]))}),0);return Math.max(e,i)}),r.size||0)}columnSet(e){var t;for(let r of H){const i=r;const o=e[i];for(let e in o){if(o[e].autoSize||((t=this.config)===null||t===void 0?void 0:t.allColumns)){if(!this.autoSizeColumns){this.autoSizeColumns={}}if(!this.autoSizeColumns[i]){this.autoSizeColumns[i]={}}this.autoSizeColumns[i][e]=Object.assign(Object.assign({},o[e]),{index:parseInt(e,10)})}}}if(this.dataResolve){this.dataResolve(this.autoSizeColumns);this.clearPromise()}}clearPromise(){this.dataResolve=null;this.dataReject=null}isRangeEdit(e){return!!e.data}initiatePresizeElement(){const e={position:"absolute",fontSize:"14px",height:"0",width:"0",whiteSpace:"nowrap",top:"0",overflowX:"scroll"};const t=document.createElement("div");for(let r in e){t.style[r]=e[r]}t.classList.add("revo-test-container");return t}destroy(){var e;super.destroy();(e=this.precsizeCalculationArea)===null||e===void 0?void 0:e.remove()}}const _e=(e,t)=>{if(typeof e==="undefined"||e===null&&!t){return true}if(typeof e!=="string"){e=JSON.stringify(e)}const r=t.toString().toLocaleLowerCase();if(r.length===0){return true}return e.toLocaleLowerCase()===r};const Ke=(e,t)=>!_e(e,t);Ke.extra="input";_e.extra="input";const Ze=function(e,t){let r;if(typeof e==="number"){r=parseFloat(t===null||t===void 0?void 0:t.toString());return e>r}return false};Ze.extra="input";const Qe=function(e,t){return _e(e,t)||Ze(e,t)};Qe.extra="input";const et=function(e,t){let r;if(typeof e==="number"){r=parseFloat(t===null||t===void 0?void 0:t.toString());return e<r}else{return false}};et.extra="input";const tt=function(e,t){return _e(e,t)||et(e,t)};tt.extra="input";const rt=e=>!(e===""||e===null||e===void 0);const it=e=>!rt(e);const ot=(e,t)=>{if(!e){return false}if(!t){return true}if(typeof e!=="string"){e=JSON.stringify(e)}if(typeof t!=="string"){t=JSON.stringify(t)}return e.toLocaleLowerCase().indexOf(t.toLocaleLowerCase())===0};ot.extra="input";const st=(e,t)=>{if(!t){return true}if(!e){return false}if(t){if(typeof e!=="string"){e=JSON.stringify(e)}return e.toLocaleLowerCase().indexOf(t.toString().toLowerCase())>-1}return true};const nt=(e,t)=>!st(e,t);nt.extra="input";st.extra="input";const at={none:"None",empty:"Not set",notEmpty:"Set",eq:"Equal",notEq:"Not equal",begins:"Begins with",contains:"Contains",notContains:"Does not contain",eqN:"=",neqN:"!=",gt:">",gte:">=",lt:"<",lte:"<="};const ht={none:()=>true,empty:it,notEmpty:rt,eq:_e,notEq:Ke,begins:ot,contains:st,notContains:nt,eqN:_e,neqN:Ke,gt:Ze,gte:Qe,lt:et,lte:tt};const lt={string:["notEmpty","empty","eq","notEq","begins","contains","notContains"],number:["notEmpty","empty","eqN","neqN","gt","gte","lt","lte"]};const dt="filter";const ct="filterconfigchanged";class gt extends z{constructor(t,r,i,o){var s;super(t,r);this.revogrid=t;this.filterCollection={};this.multiFilterItems={};this.possibleFilters=Object.assign({},lt);this.possibleFilterNames=Object.assign({},at);this.possibleFilterEntities=Object.assign({},ht);this.filterProp=X;if(o){this.initConfig(o)}const n=e=>this.headerclick(e);const a=async()=>{const e=Object.keys(this.filterCollection);if(e.length>0){e.forEach(((e,t)=>{if(!this.multiFilterItems[e]){this.multiFilterItems[e]=[{id:t,type:this.filterCollection[e].type,value:this.filterCollection[e].value,relation:"and"}]}}))}await this.runFiltering()};this.addEventListener("headerclick",n);this.addEventListener(ct,(({detail:e})=>{if(!e){this.clearFiltering();return}if(typeof e==="object"){this.initConfig(e)}a()}));this.addEventListener("aftersourceset",a);this.addEventListener("filter",(({detail:e})=>this.onFilterChange(e)));const h=this.revogrid.registerVNode.filter((e=>e.t!=="revogr-filter-panel"));this.revogrid.registerVNode=[...h,e("revogr-filter-panel",{uuid:`filter-${i}`,filterItems:this.multiFilterItems,filterNames:this.possibleFilterNames,filterEntities:this.possibleFilterEntities,filterCaptions:(s=o===null||o===void 0?void 0:o.localization)===null||s===void 0?void 0:s.captions,onFilterChange:e=>this.onFilterChange(e.detail),disableDynamicFiltering:o===null||o===void 0?void 0:o.disableDynamicFiltering,ref:e=>this.pop=e})]}initConfig(e){if(e.multiFilterItems){this.multiFilterItems=Object.assign({},e.multiFilterItems)}if(e.customFilters){for(let t in e.customFilters){const r=e.customFilters[t];if(!this.possibleFilters[r.columnFilterType]){this.possibleFilters[r.columnFilterType]=[]}this.possibleFilters[r.columnFilterType].push(t);this.possibleFilterEntities[t]=r.func;this.possibleFilterNames[t]=r.name}}if(e.filterProp){this.filterProp=e.filterProp}if(e.include){const t={};for(let r in this.possibleFilters){const i=this.possibleFilters[r].filter((t=>e.include.indexOf(t)>-1));if(i.length){t[r]=i}}if(Object.keys(t).length>0){this.possibleFilters=t}}if(e.collection){this.filterCollection=g(e.collection,((e,t,r)=>{if(this.possibleFilterEntities[t.type]){e[r]=t}else{console.warn(`${t.type} type is not found.`)}return e}),{})}if(e.localization){if(e.localization.filterNames){Object.entries(e.localization.filterNames).forEach((([e,t])=>{if(this.possibleFilterNames[e]!=void 0){this.possibleFilterNames[e]=t}}))}}}async headerclick(e){var t;const r=(t=e.detail.originalEvent)===null||t===void 0?void 0:t.target;if(!W(r)){return}e.preventDefault();const i=await this.pop.getChanges();if(i&&(i===null||i===void 0?void 0:i.prop)===e.detail.prop){this.pop.show();return}const o=this.revogrid.getBoundingClientRect();const s=r.getBoundingClientRect();const n=e.detail.prop;this.pop.filterTypes=this.getColumnFilter(e.detail.filter);this.pop.show(Object.assign(Object.assign({},this.filterCollection[n]),{x:s.x-o.x,y:s.y-o.y+s.height,prop:n}))}getColumnFilter(e){let t="string";if(!e){return{[t]:this.possibleFilters[t]}}if(this.isValidType(e)){t=e}else if(typeof e==="object"&&e.length){return e.reduce(((e,t)=>{if(this.isValidType(t)){e[t]=this.possibleFilters[t]}return e}),{})}return{[t]:this.possibleFilters[t]}}isValidType(e){return!!(typeof e==="string"&&this.possibleFilters[e])}async onFilterChange(e){this.multiFilterItems=e;this.runFiltering()}async doFiltering(e,t,r,i){const o=[];r.forEach((e=>{const t=Object.assign({},e);const r=i[t.prop];if(t[this.filterProp]&&!r){delete t[this.filterProp];o.push(t)}if(!t[this.filterProp]&&r){o.push(t);t[this.filterProp]=true}}));const s=this.getRowFilter(t,i);const{defaultPrevented:n,detail:a}=this.emit("beforefiltertrimmed",{collection:e,itemsToFilter:s,source:t,filterItems:i});if(n){return}const h=await this.revogrid.addTrimmed(a.itemsToFilter,dt);if(h.defaultPrevented){return}await this.revogrid.updateColumns(o);this.emit("afterFilterApply")}async clearFiltering(){this.multiFilterItems={};await this.runFiltering()}async runFiltering(){const e={};const t=Object.keys(this.multiFilterItems);for(const r of t){if(this.multiFilterItems[r].length>0){const t=this.multiFilterItems[r][0];e[r]={filter:ht[t.type],type:t.type,value:t.value}}}this.filterCollection=e;const{source:r,columns:i}=await this.getData();const{defaultPrevented:o,detail:s}=this.emit("beforefilterapply",{collection:this.filterCollection,source:r,columns:i,filterItems:this.multiFilterItems});if(o){return}this.doFiltering(s.collection,s.source,s.columns,s.filterItems)}async getData(){return{source:await this.revogrid.getSource(),columns:await this.revogrid.getColumns()}}getRowFilter(e,t){const r=Object.keys(t);const i={};let o=0;let s=[];e.forEach(((e,n)=>{for(const a of r){const r=t[a];o=0;s=[];for(const[t,i]of r.entries()){const n=this.possibleFilterEntities[i.type];if(i.relation==="or"){s=[];if(n(e[a],i.value)){continue}o++}else{s.push(!n(e[a],i.value));const h=r[t+1];if(!h||h.relation!=="and"){if(s.indexOf(true)===-1){s=[];continue}o+=s.length;s=[]}}}if(o===r.length)i[n]=true}}));return i}}var ut=F,ft=c,vt=T;var pt="[object String]";function mt(e){return typeof e=="string"||!ft(e)&&vt(e)&&ut(e)==pt}var wt=mt;var bt=C;var xt=bt("length");var Ct=xt;var yt="\\ud800-\\udfff",St="\\u0300-\\u036f",kt="\\ufe20-\\ufe2f",Rt="\\u20d0-\\u20ff",jt=St+kt+Rt,Ot="\\ufe0e\\ufe0f";var Et="\\u200d";var Lt=RegExp("["+Et+yt+jt+Ot+"]");function Pt(e){return Lt.test(e)}var zt=Pt;var Ht="\\ud800-\\udfff",Mt="\\u0300-\\u036f",It="\\ufe20-\\ufe2f",Dt="\\u20d0-\\u20ff",Ft=Mt+It+Dt,Tt="\\ufe0e\\ufe0f";var Nt="["+Ht+"]",$t="["+Ft+"]",Bt="\\ud83c[\\udffb-\\udfff]",At="(?:"+$t+"|"+Bt+")",Vt="[^"+Ht+"]",Ut="(?:\\ud83c[\\udde6-\\uddff]){2}",qt="[\\ud800-\\udbff][\\udc00-\\udfff]",Gt="\\u200d";var Xt=At+"?",Wt="["+Tt+"]?",Yt="(?:"+Gt+"(?:"+[Vt,Ut,qt].join("|")+")"+Wt+Xt+")*",Jt=Wt+Xt+Yt,_t="(?:"+[Vt+$t+"?",$t,Ut,qt,Nt].join("|")+")";var Kt=RegExp(Bt+"(?="+Bt+")|"+_t+Jt,"g");function Zt(e){var t=Kt.lastIndex=0;while(Kt.test(e)){++t}return t}var Qt=Zt;var er=Ct,tr=zt,rr=Qt;function ir(e){return tr(e)?rr(e):er(e)}var or=ir;var sr=y,nr=S,ar=n,hr=wt,lr=or;var dr="[object Map]",cr="[object Set]";function gr(e){if(e==null){return 0}if(ar(e)){return hr(e)?lr(e):e.length}var t=nr(e);if(t==dr||t==cr){return e.size}return sr(e).length}var ur=gr;class fr extends z{async runSorting(e,t){var r;await this.sort(e,t);(r=this.sortingPromise)===null||r===void 0?void 0:r.call(this);this.sortingPromise=null}constructor(e,t){super(e,t);this.revogrid=e;this.sorting=null;this.sortingFunc=null;this.sortingPromise=null;this.postponeSort=B((async(e,t)=>this.runSorting(e,t)),50);const r=async({detail:{type:e}})=>{if(!!this.sorting&&this.sortingFunc){const t=this.emit("beforesorting",{type:e});if(t.defaultPrevented){return}this.startSorting(this.sorting,this.sortingFunc)}};const i=async({detail:{order:e}})=>{const t=await this.revogrid.getColumns();const r={};for(let i in e){const o=this.getComparer(Ue.getColumnByProp(t,i),e[i]);r[i]=o}this.runSorting(e,r)};const o=async e=>{var t,r;if(e.defaultPrevented){return}if(!e.detail.column.sortable){return}this.headerclick(e.detail.column,e.detail.index,(r=(t=e.detail)===null||t===void 0?void 0:t.originalEvent)===null||r===void 0?void 0:r.shiftKey)};this.addEventListener("beforeanysource",r);this.addEventListener("aftercolumnsset",i);this.addEventListener("beforeheaderclick",o)}startSorting(e,t){if(!this.sortingPromise){this.revogrid.jobsBeforeRender.push(new Promise((e=>{this.sortingPromise=e})))}this.postponeSort(e,t)}getComparer(e,t){var r;const i=((r=e===null||e===void 0?void 0:e.cellCompare)===null||r===void 0?void 0:r.bind({order:t}))||this.defaultCellCompare;if(t=="asc"){return i}if(t=="desc"){return this.descCellCompare(i)}return undefined}async headerclick(e,t,r){let i=this.getNextOrder(e.order);const o=this.emit("beforesorting",{column:e,order:i,additive:r});if(o.defaultPrevented){return}i=o.detail.order;const s=await this.revogrid.updateColumnSorting(o.detail.column,t,i,r);const n=this.emit("beforesortingapply",{column:s,order:i,additive:r});if(n.defaultPrevented){return}i=n.detail.order;const a=this.getComparer(e,i);if(r&&this.sorting){const t={};const r={};this.sorting=Object.assign(Object.assign({},this.sorting),t);this.sortingFunc=Object.assign(Object.assign({},this.sortingFunc),r);if(e.prop in t&&ur(t)>1&&i===undefined){delete t[e.prop];delete r[e.prop]}else{t[e.prop]=i;r[e.prop]=a}}else{if(i){this.sorting={[e.prop]:i};this.sortingFunc={[e.prop]:a}}else{delete this.sorting[e.prop];delete this.sortingFunc[e.prop]}}this.startSorting(this.sorting,this.sortingFunc)}async sort(e,t,r=["rgRow","rowPinStart","rowPinEnd"]){if(!ur(e)){this.sorting=null;this.sortingFunc=null;for(let e of r){const t=await this.revogrid.getSourceStore(e);const r=t.get("source");const i=k(0,r.length);R(t,{proxyItems:i,source:[...r]})}}else{this.sorting=e;this.sortingFunc=t;for(let e of r){const r=await this.revogrid.getSourceStore(e);const i=r.get("source");const o=r.get("proxyItems");const s=this.sortIndexByItems([...o],i,t);R(r,{proxyItems:s,source:[...i]})}}this.emit("aftersortingapply")}defaultCellCompare(e,t,r){var i,o;const s=(i=t[e])===null||i===void 0?void 0:i.toString().toLowerCase();const n=(o=r[e])===null||o===void 0?void 0:o.toString().toLowerCase();return s==n?0:s>n?1:-1}descCellCompare(e){return(t,r,i)=>-1*e(t,r,i)}sortIndexByItems(e,t,r){if(Object.entries(r).length===0){return[...Array(e.length).keys()]}return e.sort(((e,i)=>{for(const[o,s]of Object.entries(r)){const r=t[e];const n=t[i];const a=s(o,r,n);if(a){return a}}return 0}))}getNextOrder(e){switch(e){case undefined:return"asc";case"asc":return"desc";case"desc":return undefined}}}function vr(e,t,r){if(e===e){if(r!==undefined){e=e<=r?e:r}if(t!==undefined){e=e>=t?e:t}}return e}var pr=vr;var mr=pr,wr=j;var br=4294967295;function xr(e){return e?mr(wr(e),0,br):0}var Cr=xr;var yr=j,Sr=Cr;function kr(e,t,r,i){var o=e.length;r=yr(r);if(r<0){r=-r>o?0:o+r}i=i===undefined||i>o?o:yr(i);if(i<0){i+=o}i=r>i?0:Sr(i);while(r<i){e[r++]=t}return e}var Rr=kr;var jr=Rr,Or=O;function Er(e,t,r,i){var o=e==null?0:e.length;if(!o){return[]}if(r&&typeof r!="number"&&Or(e,t,r)){r=0;i=o}return jr(e,t,r,i)}var Lr=Er;const Pr={mime:"text/csv",fileKind:"csv",bom:true,columnDelimiter:",",rowDelimiter:"\r\n",encoding:""};const zr=String.fromCharCode(13);const Hr=String.fromCharCode(10);const Mr=String.fromCharCode(34);const Ir=String.fromCharCode(65279);const Dr=new RegExp('"',"g");class Fr{constructor(e={}){this.options=Object.assign(Object.assign({},Pr),e)}doExport({data:e,headers:t,props:r}){let i=this.options.bom?Ir:"";if((t===null||t===void 0?void 0:t.length)>0){t.forEach((e=>{if(!e.length){return}i+=this.prepareHeader(e,this.options.columnDelimiter);i+=this.options.rowDelimiter}))}e.forEach(((e,t)=>{if(t>0){i+=this.options.rowDelimiter}if(Y(e)){i+=this.parseCell(J(e),this.options.columnDelimiter);return}i+=r.map((t=>this.parseCell(e[t],this.options.columnDelimiter))).join(this.options.columnDelimiter)}));return i}prepareHeader(e,t){let r="";const i=e.map((e=>this.parseCell(e,t,true)));r+=i.join(t);return r}parseCell(e,t,r=false){let i=e;if(typeof e!=="string"){i=JSON.stringify(e)}const o=[zr,Mr,Hr,t];if(typeof i==="undefined"){return""}if(i!==""&&(r||o.some((e=>i.indexOf(e)>=0)))){return`"${i.replace(Dr,'""')}"`}return i}}var Tr;(function(e){e["csv"]="csv"})(Tr||(Tr={}));class Nr extends z{async exportString(e={},t=Tr.csv){const r=await this.beforeexport();if(!r){return null}return this.formatter(t,e).doExport(r)}async exportBlob(e={},t=Tr.csv){return await this.getBlob(this.formatter(t,e))}async exportFile(e={},t=Tr.csv){const r=this.formatter(t,e);const i=await this.getBlob(r);const o=window.URL||window.webkitURL;const s=document.createElement("a");const{filename:n,fileKind:a}=r.options;const h=`${n}.${a}`;const l=o.createObjectURL(i);s.style.display="none";s.setAttribute("href",l);s.setAttribute("download",h);this.revogrid.appendChild(s);s.dispatchEvent(new MouseEvent("click"));this.revogrid.removeChild(s);await V(120);o.revokeObjectURL(l)}async getBlob(e){const t=`${e.options.mime};charset=${e.options.encoding}`;if(typeof Blob!=="undefined"){const r=await this.beforeexport();if(!r){return null}return new Blob([e.doExport(r)],{type:t})}return null}async beforeexport(){let e=await this.getData();const t=this.emit("beforeexport",{data:e});if(t.defaultPrevented){return null}return t.detail.data}async getData(){const e=await this.getSource();const t=[];const r=[];H.forEach(((e,i)=>{r.push(this.getColPerSource(e).then((e=>t[i]=e)))}));await Promise.all(r);const i={headers:[],props:[]};for(let e of t){e.headers.forEach(((e,t)=>{if(!i.headers[t]){i.headers[t]=[]}i.headers[t].push(...e)}));i.props.push(...e.props)}return Object.assign({data:e},i)}async getColPerSource(e){const t=await this.revogrid.getColumnStore(e);const r=t.get("source");const i=t.get("items");const o=t.get("groupingDepth");const s=t.get("groups");const n=[];const a=[];const h=i.reduce(((e,t,i)=>{const o=r[t].prop;n.push(r[t].name||"");a.push(o);e[o]=i;return e}),{});const l=this.getGroupHeaders(o,s,i,h);l.push(n);return{headers:l,props:a}}getGroupHeaders(e,t,r,i){const o=[];const s=Lr(new Array(r.length),"");for(let r=0;r<e;r++){const e=[...s];o.push(e);if(!t[r]){continue}const n=t[r];n.forEach((t=>{const r=this.findGroupStartIndex(t.ids,i);if(typeof r==="number"){e[r]=t.name}}))}return o}findGroupStartIndex(e,t){let r;e.forEach((e=>{const i=t[e];if(typeof i==="number"){if(typeof r!=="number"||r>i){r=i}}}));return r}async getSource(){const e=[];const t=[];M.forEach((r=>{const i=[];e.push(i);const o=this.revogrid.getVisibleSource(r).then((e=>i.push(...e)));t.push(o)}));await Promise.all(t);return e.reduce(((e,t)=>{e.push(...t);return e}),[])}formatter(e,t={}){switch(e){case Tr.csv:return new Fr(t);default:throw new Error("Unknown format")}}}function $r(e,t){const r=t[e];const i=r[ee];const o={};let s=e+1;const n=t.length;while(s<n){const e=t[s];if(Y(e)){const t=e[ee];if(!t.length||!t.startsWith(i+",")){break}e[_]=false}o[s++]=true}r[_]=false;return{trimmed:o}}function Br(e,t,r){const i=r[e];const o=t[i];const s=K(o[te]);const n={};if(!s){return{trimmed:n}}const a=[];o[_]=true;let h=i+1;const l=t.length;let d=0;while(h<l){const e=t[h];const r=Y(e);if(r){if(!Z(s,o,e)){break}else if(!d){d=e[Q]}}if(!d||r&&d===e[Q]){n[h]=false;a.push(h)}h++}const c={trimmed:n};if(a.length){const t=[...r];t.splice(e+1,0,...a);c.items=t}return c}const Ar="grouping";function Vr(e,t,r){const i={};for(let o in e){if(o===Ar){continue}const s=e[o];const n={};for(let e in s){let a=t[e];if(r){a=r[a]}if(s[e]){n[a]=true;if(a!==parseInt(e,10)){i[o]=n}}}}return i}class Ur extends z{get hasProps(){var e,t,r;return((e=this.options)===null||e===void 0?void 0:e.props)&&((r=(t=this.options)===null||t===void 0?void 0:t.props)===null||r===void 0?void 0:r.length)}get store(){return this.providers.data.stores[re].store}get rowItems(){return this.store.get("items")}get trimmed(){return this.store.get("trimmed")}constructor(e,t){super(e,t);this.revogrid=e;this.providers=t}onFocus(e){if(Y(e.detail.model)){e.preventDefault()}}onExpand({virtualIndex:e}){const{source:t}=this.getSource();let r=this.trimmed[Ar];let i=E(this.store,e);const o=t[i];const s=o[_];if(!s){const{trimmed:i,items:o}=Br(e,t,this.rowItems);r=Object.assign(Object.assign({},r),i);if(o){L(this.store,o)}}else{const{trimmed:e}=$r(i,t);r=Object.assign(Object.assign({},r),e);this.revogrid.clearFocus()}this.store.set("source",t);this.revogrid.addTrimmed(r,Ar)}getSource(e=false){const t=this.store.get("source");const r=this.store.get("proxyItems");let i=0;return r.reduce(((r,o)=>{const s=t[o];if(!e){r.source.push(s);return r}if(!Y(s)){r.source.push(s);r.oldNewIndexes[o]=i;i++}else{if(s[_]){r.prevExpanded[s[ee]]=true}}return r}),{source:[],prevExpanded:{},oldNewIndexes:{}})}setColumnGrouping(e){if(e===null||e===void 0?void 0:e.length){e[0][ie]=true;return true}return false}setColumns({columns:e}){for(let t of H){if(this.setColumnGrouping(e[t])){break}}}onDrag(e){const{from:t,to:r}=e.detail;const i=r-t>=0;const{source:o}=this.getSource();const s=this.rowItems;let n=i?t:r;const a=i?r:t;for(;n<a;n++){const t=o[s[n]];const r=Y(t);if(r){e.preventDefault();return}}}beforeTrimmedApply(e,t){if(t===dt){const t=this.store.get("source");for(let r in e){if(e[r]&&Y(t[r])){e[r]=false}}}}subscribe(){this.addEventListener("beforesourceset",(({detail:e})=>this.onDataSet(e)));this.addEventListener("beforecolumnsset",(({detail:e})=>this.setColumns(e)));this.addEventListener("beforetrimmed",(({detail:{trimmed:e,trimmedType:t}})=>this.beforeTrimmedApply(e,t)));this.addEventListener("aftersortingapply",(()=>this.doSourceUpdate(Object.assign({},this.options))));this.addEventListener("beforecellfocus",(e=>this.onFocus(e)));this.addEventListener("roworderchanged",(e=>this.onDrag(e)));this.addEventListener(oe,(({detail:e})=>this.onExpand(e)))}doSourceUpdate(e){var t;if(!this.hasProps){return}const{source:r,prevExpanded:i,oldNewIndexes:o}=this.getSource(true);const{sourceWithGroups:s,depth:n,trimmed:a,oldNewIndexMap:h,childrenByGroup:l}=se(r,((t=this.options)===null||t===void 0?void 0:t.props)||[],Object.assign({prevExpanded:i},e));this.providers.data.setData(s,re,this.revogrid.disableVirtualY,{depth:n,customRenderer:e===null||e===void 0?void 0:e.groupLabelTemplate},true);this.updateTrimmed(a,l,o,h)}onDataSet(e){var t;if(!this.hasProps||!(e===null||e===void 0?void 0:e.source)||!e.source.length){return}const r=e.source.filter((e=>!Y(e)));const i=this.revogrid.grouping||{};const{sourceWithGroups:o,depth:s,trimmed:n,oldNewIndexMap:a,childrenByGroup:h}=se(r,((t=this.options)===null||t===void 0?void 0:t.props)||[],Object.assign({},i||{}));e.source=o;this.providers.data.setGrouping({depth:s});this.updateTrimmed(n,h,a)}setGrouping(e){this.clearSubscriptions();this.options=e;if(!e.props||!Object.keys(e.props).length){this.clearGrouping();return}const{source:t}=this.getSource();if(t.length){this.doSourceUpdate(Object.assign({},e))}for(let e of H){if(this.setColumnGrouping(this.providers.column.getColumns(e))){this.providers.column.refreshByType(e);break}}this.subscribe()}clearGrouping(){H.forEach((e=>{const t=this.providers.column.getColumns(e);let r=false;t.forEach((e=>{if(ne(e)){delete e[ie];r=true}}));if(r){this.providers.column.refreshByType(e)}}));const{source:e,oldNewIndexes:t}=this.getSource(true);this.providers.data.setData(e,re,this.revogrid.disableVirtualY,undefined,true);this.updateTrimmed(undefined,undefined,t)}updateTrimmed(e={},t={},r,i){const o=Vr(this.trimmed,r,i);for(let e in o){this.revogrid.addTrimmed(o[e],e)}this.revogrid.addTrimmed(Object.assign({},e),Ar)}}function qr(e){const t=e.dimensions[e.colType].store;const r=t.get("realSize");const i={contentWidth:r,class:e.colType,contentHeight:e.contentHeight,key:e.colType,colType:e.colType,onResizeviewport:e.onResizeviewport,style:e.fixWidth?{minWidth:`${r}px`}:undefined};const o={colData:w(e.colStore),dimensionCol:t,type:e.colType,groups:e.colStore.get("groups"),groupingDepth:e.colStore.get("groupingDepth"),resizeHandler:e.colType==="colPinEnd"?["l"]:undefined,onHeaderresize:e.onHeaderresize};return{prop:i,type:e.colType,position:e.position,headerProp:o,viewportCol:e.viewports[e.colType].store}}class Gr{constructor(e,t){var r,i;this.config=e;(r=this.config.selectionStoreConnector)===null||r===void 0?void 0:r.beforeUpdate();const o=[];let s=0;H.forEach((r=>{const i=e.columnProvider.stores[r].store;if(!i.get("items").length){return}const n={colType:r,position:{x:s,y:1},contentHeight:t,fixWidth:r!=="rgCol",viewports:e.viewportProvider.stores,dimensions:e.dimensionProvider.stores,rowStores:e.dataProvider.stores,colStore:i,onHeaderresize:e=>this.onColumnResize(r,e,i)};if(r==="rgCol"){n.onResizeviewport=t=>{var r;if(e.disableVirtualY&&t.detail.dimension==="rgRow"){return}else if(e.disableVirtualX&&t.detail.dimension==="rgCol"){return}(r=e.viewportProvider)===null||r===void 0?void 0:r.setViewport(t.detail.dimension,{virtualSize:t.detail.size})}}const a=qr(n);const h=this.registerCol(a.position.x,r);const l=this.dataViewPort(n).reduce(((t,r)=>{const i=this.registerSegment(r.position);i.setLastCell(r.lastCell);const o=this.registerRow(r.position.y,r.type);const s=Object.assign(Object.assign({},r),{rowSelectionStore:o,segmentSelectionStore:i.store,ref:t=>e.selectionStoreConnector.registerSection(t),onSetrange:e=>{i.setRangeArea(e.detail)},onSettemprange:e=>{i.setTempArea(e.detail)},onFocuscell:t=>{i.clearFocus();e.selectionStoreConnector.focus(i,t.detail)}});t.push(s);return t}),[]);o.push(Object.assign(Object.assign({},a),{columnSelectionStore:h,dataPorts:l}));s++}));this.columns=o;(i=this.config.scrollingService)===null||i===void 0?void 0:i.unregister()}onColumnResize(e,{detail:t},r){var i;(i=this.config.dimensionProvider)===null||i===void 0?void 0:i.setCustomSizes(e,t,true);const o=g(t||{},((e,t,i)=>{const o=parseInt(i,10);const s=f(r,o);if(s){e[o]=Object.assign(Object.assign({},s),{size:t})}return e}),{});this.config.resize(o)}registerSegment(e){return this.config.selectionStoreConnector.register(e)}registerRow(e,t){return this.config.selectionStoreConnector.registerRow(e,t).store}registerCol(e,t){return this.config.selectionStoreConnector.registerColumn(e,t).store}dataViewPort(e){const t={rowPinStart:he,rgRow:le,rowPinEnd:de};let r=0;return M.reduce(((i,o)=>{const s=e.viewports[o].store.get("realCount")||o==="rgRow";const n=Object.assign(Object.assign({},e),{position:Object.assign(Object.assign({},e.position),{y:s?r:N})});i.push(this.dataPartition(n,o,t[o],o!=="rgRow"));if(s){r++}return i}),[])}dataPartition(e,t,r,i){return{colData:e.colStore,viewportCol:e.viewports[e.colType].store,viewportRow:e.viewports[t].store,lastCell:ae(e,t),slot:r,type:t,canDrag:!i,position:e.position,dataStore:e.rowStores[t].store,dimensionCol:e.dimensions[e.colType].store,dimensionRow:e.dimensions[t].store,style:i?{height:`${e.dimensions[t].store.get("realSize")}px`}:undefined}}scrollToCell(e){for(let t in e){const r=e[t];this.config.scrollingService.proxyScroll({dimension:t==="x"?"rgCol":"rgRow",coordinate:r})}}clearFocused(){this.config.selectionStoreConnector.clearAll()}clearEdit(){this.config.selectionStoreConnector.setEdit(false)}getFocused(){const e=this.config.selectionStoreConnector.focusedStore;if(!e){return null}const t=this.config.selectionStoreConnector.storesXToType[e.position.x];const r=this.config.columnProvider.getColumn(e.cell.x,t);const i=this.config.selectionStoreConnector.storesYToType[e.position.y];const o=this.config.dataProvider.getModel(e.cell.y,i);return{column:r,model:o,cell:e.cell,colType:t,rowType:i}}getStoreCoordinateByType(e,t){const r=this.config.selectionStoreConnector.storesByType;const i={x:r[e],y:r[t]};return i}setFocus(e,t,r,i){var o;(o=this.config.selectionStoreConnector)===null||o===void 0?void 0:o.focusByCell(this.getStoreCoordinateByType(e,t),r,i)}getSelectedRange(){return this.config.selectionStoreConnector.selectedRange}setEdit(e,t,r,i){var o;(o=this.config.selectionStoreConnector)===null||o===void 0?void 0:o.setEditByCell(this.getStoreCoordinateByType(r,i),{x:t,y:e})}}class Xr{constructor(e){this.setViewport=e;this.elements={}}async proxyScroll(e,t){var r;let i;let o=e;for(let o in this.elements){if(e.dimension==="rgCol"&&o==="headerRow"){continue}else if(this.isPinnedColumn(t)&&e.dimension==="rgCol"){if(o===t||!e.delta){continue}for(let t of this.elements[o]){if(t.changeScroll){i=t.changeScroll(e)}}}else{for(let t of this.elements[o]){await((r=t.setScroll)===null||r===void 0?void 0:r.call(t,e))}}}if(i){o=await i}this.setViewport(o)}async scrollSilentService(e,t){var r;for(let i in this.elements){if(i===t){continue}if(H.includes(t)&&(i==="headerRow"||H.includes(i))){for(let t of this.elements[i]){await((r=t.changeScroll)===null||r===void 0?void 0:r.call(t,e,true))}continue}}}isPinnedColumn(e){return["colPinStart","colPinEnd"].indexOf(e)>-1}registerElements(e){this.elements=e}registerElement(e,t){if(!this.elements[t]){this.elements[t]=[]}if(e){this.elements[t].push(e)}else if(this.elements[t]){delete this.elements[t]}}unregister(){delete this.elements;this.elements={}}}class Wr{constructor(){this.parentY=0}start(e,{pos:t,text:r,event:i}){var o;const{top:s}=e.getBoundingClientRect();this.parentY=s;if(this.text){this.text.innerText=r}this.move(t);this.moveTip({x:i.x,y:i.y});(o=this.el)===null||o===void 0?void 0:o.classList.remove("hidden")}end(){var e;(e=this.el)===null||e===void 0?void 0:e.classList.add("hidden")}move(e){this.moveElement(e.end-this.parentY)}moveTip({x:e,y:t}){if(!this.draggable){return}this.draggable.style.left=`${e}px`;this.draggable.style.top=`${t}px`}moveElement(e){if(!this.rgRow){return}this.rgRow.style.transform=`translateY(${e}px)`}}const Yr=({ref:t})=>{const r=new Wr;t(r);return e("div",{class:"draggable-wrapper hidden",ref:e=>r.el=e},e("div",{class:"draggable",ref:e=>r.draggable=e},e("span",{class:"revo-alt-icon"}),e("span",{ref:e=>r.text=e})),e("div",{class:"drag-position",ref:e=>r.rgRow=e}))};class Jr extends z{constructor(e,t){super(e,t);this.providers=t;this.stretchedColumn=null;this.scrollSize=U(document);const r=({detail:{columns:e}})=>this.applyStretch(e);this.addEventListener("beforecolumnapplied",r)}setScroll({type:e,hasScroll:t}){var r;if(e==="rgRow"&&this.stretchedColumn&&((r=this.stretchedColumn)===null||r===void 0?void 0:r.initialSize)===this.stretchedColumn.size){if(t){this.stretchedColumn.size-=this.scrollSize;this.apply();this.dropChanges()}}}activateChanges(){const e=({detail:e})=>this.setScroll(e);this.addEventListener("scrollchange",e)}dropChanges(){this.stretchedColumn=null;this.removeEventListener("scrollchange")}apply(){if(!this.stretchedColumn){return}const e="rgCol";const t=this.providers.dimension.stores[e].store.get("sizes");this.providers.dimension.setCustomSizes(e,Object.assign(Object.assign({},t),{[this.stretchedColumn.index]:this.stretchedColumn.size}),true)}applyStretch(e){this.dropChanges();let t=this.revogrid.clientWidth-1;p(e,((e,r)=>{const i=this.providers.dimension.stores[r].store.get("realSize");t-=i}));if(this.revogrid.rowHeaders){const e=this.providers.data.stores.rgRow.store.get("source").length;const r=this.revogrid.rowHeaders;const i=ge(e,typeof r==="object"?r:undefined);if(i){t-=i}}if(t>0){const r=e.rgCol.length-1;const i=e.rgCol[r];const o=(i===null||i===void 0?void 0:i.size)||this.revogrid.colSize||0;const s=t+o-1;if(i&&!i.autoSize&&o<s){this.stretchedColumn={initialSize:s,index:r,size:s};this.apply();this.activateChanges()}}}}function _r(e){return!!e.applyStretch}const Kr=(e=[])=>g(e,((e,t)=>{if(!e[t.type]){e[t.type]={}}if(t.size){if(!e[t.type].sizes){e[t.type].sizes={}}e[t.type].sizes[t.index]=t.size}return e}),{});const Zr=(e=[])=>g(e,((e,t)=>{if(!e[t.type]){e[t.type]=[]}if(t.size){e[t.type].push(t.index)}return e}),{});const Qr="column-drag-start";class ei{constructor(){this.offset=0}renderAutoscroll(e,t){if(!t){return}this.autoscrollEl=document.createElement("div");this.autoscrollEl.classList.add("drag-auto-scroll-y");t.appendChild(this.autoscrollEl)}autoscroll(e,t,r="translateX"){if(!this.autoscrollEl){return}const i=10;const o=Math.min(e+i,t-3);this.autoscrollEl.style.transform=`${r}(${o}px)`;this.autoscrollEl.scrollIntoView({block:"nearest",inline:"nearest"})}start(e,{dataEl:t,gridRect:r,scrollEl:i,gridEl:o},s="left"){o.classList.add(Qr);const n=i.getBoundingClientRect();if(n){this.offset=n[s]-r[s]}this.renderAutoscroll(e,t)}stop(e){var t;e.classList.remove(Qr);if(this.element){this.element.hidden=true}this.offset=0;(t=this.autoscrollEl)===null||t===void 0?void 0:t.remove();this.autoscrollEl=undefined}showHandler(e,t,r="translateX"){if(!this.element){return}if(this.offset){e=Math.max(e,this.offset)}e=Math.min(e,t);this.element.style.transform=`${r}(${e}px)`;this.element.hidden=false}render(){const e=this.element=document.createElement("div");e.classList.add("drag-position-y");e.hidden=true;return e}}const ti=ve;const ri="columndragmousemove";const ii="columndragend";const oi="beforecolumndragend";const si="columndragstart";class ni extends z{constructor(e,t){super(e,t);this.revogrid=e;this.providers=t;this.moveFunc=B((e=>this.doMove(e)),5);this.staticDragData=null;this.dragData=null;this.localSubscriptions={};this.orderUi=new ei;e.appendChild(this.orderUi.render());e.classList.add("column-draggable");this.localSubscriptions["mouseleave"]={target:document,callback:e=>this.onMouseOut(e)};this.localSubscriptions["mouseup"]={target:document,callback:e=>this.onMouseUp(e)};this.localSubscriptions["mousemove"]={target:document,callback:e=>this.move(e)};this.addEventListener(ti,(({detail:e})=>this.dragStart(e)))}dragStart({event:e,data:t}){if(e.defaultPrevented){return}const{defaultPrevented:r}=fe(this.revogrid,si,t);if(r){return}this.clearOrder();const{mouseleave:i,mouseup:o,mousemove:s}=this.localSubscriptions;i.target.addEventListener("mouseleave",i.callback);o.target.addEventListener("mouseup",o.callback);const n=e.target.closest("revogr-header");const a=e.target.closest("revogr-viewport-scroll");if(!n||!a){return}if(Ve(t)||t.providers.type==="rowHeaders"){return}const h=this.getDimension(t.pin||"rgCol");const l=this.revogrid.getBoundingClientRect();const d=n.getBoundingClientRect();const c=P(h,ai(e.x,l.left,d.left-l.left));this.staticDragData={startPos:e.x,startItem:c,data:t,dataEl:n,scrollEl:a,gridEl:this.revogrid,cols:h};this.dragData=this.getData(this.staticDragData);s.target.addEventListener("mousemove",s.callback);this.orderUi.start(e,Object.assign(Object.assign({},this.dragData),this.staticDragData))}doMove(e){if(!this.staticDragData){return}const t=this.dragData=this.getData(this.staticDragData);if(!t){return}const r=this.staticDragData.startPos;if(Math.abs(r-e.x)>10){const r=ai(e.x,this.dragData.gridRect.left,this.dragData.scrollOffset);const i=P(this.staticDragData.cols,r);this.orderUi.autoscroll(r,t.elRect.width);this.orderUi.showHandler(i.end+t.scrollOffset,t.gridRect.width)}}move(e){fe(this.revogrid,ri,e);this.moveFunc(e)}onMouseOut(e){this.clearOrder()}onMouseUp(e){if(this.dragData){let t=ai(e.x,this.dragData.gridRect.left,this.dragData.scrollOffset);if(t<0){t=0}const r=P(this.staticDragData.cols,t);const i=this.providers.column.stores[this.dragData.type].store;const o=[...i.get("items")];const{defaultPrevented:s}=fe(this.revogrid,oi,Object.assign(Object.assign({},this.staticDragData),{startPosition:this.staticDragData.startItem,newPosition:r,newItem:i.get("source")[o[this.staticDragData.startItem.itemIndex]]}));if(!s){const e=o.splice(this.staticDragData.startItem.itemIndex,1);o.splice(r.itemIndex,0,...e);i.set("items",o)}fe(this.revogrid,ii,this.dragData)}this.clearOrder()}clearLocalSubscriptions(){p(this.localSubscriptions,(({target:e,callback:t},r)=>e.removeEventListener(r,t)))}clearOrder(){this.staticDragData=null;this.dragData=null;this.clearLocalSubscriptions();this.orderUi.stop(this.revogrid)}clearSubscriptions(){super.clearSubscriptions();this.clearLocalSubscriptions()}getData({gridEl:e,dataEl:t,data:r}){const i=e.getBoundingClientRect();const o=t.getBoundingClientRect();const s=o.left-i.left;return{elRect:o,gridRect:i,type:r.pin||"rgCol",scrollOffset:s}}getDimension(e){return this.providers.dimension.stores[e].getCurrentState()}}function ai(e,t,r){return e-t-r}function hi(){return/Mobi/i.test(navigator.userAgent)||/Android/i.test(navigator.userAgent)||navigator.maxTouchPoints>0}const li='.revo-drag-icon{width:11px}.revo-drag-icon::before{content:"::"}.revo-alt-icon{-webkit-mask-image:url("data:image/svg+xml,%3C%3Fxml version=\'1.0\' encoding=\'UTF-8\'%3F%3E%3Csvg viewBox=\'0 0 384 383\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'%3E%3Cg%3E%3Cpath d=\'M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z\'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3C%3Fxml version=\'1.0\' encoding=\'UTF-8\'%3F%3E%3Csvg viewBox=\'0 0 384 383\' xmlns=\'http://www.w3.org/2000/svg\' xmlns:xlink=\'http://www.w3.org/1999/xlink\'%3E%3Cg%3E%3Cpath d=\'M192.4375,383 C197.424479,383 201.663411,381.254557 205.154297,377.763672 L205.154297,377.763672 L264.25,318.667969 C270.234375,312.683594 271.605794,306.075846 268.364258,298.844727 C265.122721,291.613607 259.51237,287.998047 251.533203,287.998047 L251.533203,287.998047 L213.382812,287.998047 L213.382812,212.445312 L288.935547,212.445312 L288.935547,250.595703 C288.935547,258.57487 292.551107,264.185221 299.782227,267.426758 C307.013346,270.668294 313.621094,269.296875 319.605469,263.3125 L319.605469,263.3125 L378.701172,204.216797 C382.192057,200.725911 383.9375,196.486979 383.9375,191.5 C383.9375,186.513021 382.192057,182.274089 378.701172,178.783203 L378.701172,178.783203 L319.605469,119.6875 C313.621094,114.201823 307.013346,112.955078 299.782227,115.947266 C292.551107,118.939453 288.935547,124.42513 288.935547,132.404297 L288.935547,132.404297 L288.935547,170.554688 L213.382812,170.554688 L213.382812,95.0019531 L251.533203,95.0019531 C259.51237,95.0019531 264.998047,91.3863932 267.990234,84.1552734 C270.982422,76.9241536 269.735677,70.3164062 264.25,64.3320312 L264.25,64.3320312 L205.154297,5.23632812 C201.663411,1.74544271 197.424479,0 192.4375,0 C187.450521,0 183.211589,1.74544271 179.720703,5.23632812 L179.720703,5.23632812 L120.625,64.3320312 C114.640625,70.3164062 113.269206,76.9241536 116.510742,84.1552734 C119.752279,91.3863932 125.36263,95.0019531 133.341797,95.0019531 L133.341797,95.0019531 L171.492188,95.0019531 L171.492188,170.554688 L95.9394531,170.554688 L95.9394531,132.404297 C95.9394531,124.42513 92.3238932,118.814779 85.0927734,115.573242 C77.8616536,112.331706 71.2539062,113.703125 65.2695312,119.6875 L65.2695312,119.6875 L6.17382812,178.783203 C2.68294271,182.274089 0.9375,186.513021 0.9375,191.5 C0.9375,196.486979 2.68294271,200.725911 6.17382812,204.216797 L6.17382812,204.216797 L65.2695312,263.3125 C71.2539062,268.798177 77.8616536,270.044922 85.0927734,267.052734 C92.3238932,264.060547 95.9394531,258.57487 95.9394531,250.595703 L95.9394531,250.595703 L95.9394531,212.445312 L171.492188,212.445312 L171.492188,287.998047 L133.341797,287.998047 C125.36263,287.998047 119.876953,291.613607 116.884766,298.844727 C113.892578,306.075846 115.139323,312.683594 120.625,318.667969 L120.625,318.667969 L179.720703,377.763672 C183.211589,381.254557 187.450521,383 192.4375,383 Z\'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");width:11px;height:11px;background-size:cover;background-repeat:no-repeat}.arrow-down{position:absolute;right:5px;top:0}.arrow-down svg{width:8px;margin-top:5px;margin-left:5px;opacity:0.4}.cell-value-wrapper{margin-right:10px;overflow:hidden;text-overflow:ellipsis}.revo-button{position:relative;overflow:hidden;color:#fff;background-color:#6200ee;height:34px;line-height:34px;padding:0 15px;outline:0;border:0;border-radius:7px;box-sizing:border-box;cursor:pointer}.revo-button.green{background-color:#009037;border:1px solid #00772d}.revo-button.red{background-color:#E0662E;border:1px solid #d55920}.revo-button:disabled,.revo-button[disabled]{cursor:not-allowed !important;filter:opacity(0.35) !important}.revo-button.light{border:1px solid #cedefa;line-height:32px;background:none;color:#000;box-shadow:none}revo-grid[theme=default],revo-grid:not([theme]){border:1px solid #cecece;font-size:12px}revo-grid[theme=default] revogr-header,revo-grid:not([theme]) revogr-header{text-align:center;line-height:30px;background-color:#f8f9fa}revo-grid[theme=default] revogr-header .group-rgRow,revo-grid:not([theme]) revogr-header .group-rgRow{box-shadow:none}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid[theme=default] revogr-header .group-rgRow,revo-grid:not([theme]) revogr-header .header-rgRow,revo-grid:not([theme]) revogr-header .group-rgRow{text-transform:uppercase;font-size:12px;color:#000}revo-grid[theme=default] revogr-header .header-rgRow,revo-grid:not([theme]) revogr-header .header-rgRow{height:30px;box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-header .rgHeaderCell,revo-grid:not([theme]) revogr-header .rgHeaderCell{box-shadow:-1px 0 0 0 #cecece inset, 0 -1px 0 0 #cecece, 0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-header .rgHeaderCell.focused-cell,revo-grid:not([theme]) revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] .rowHeaders,revo-grid:not([theme]) .rowHeaders{background-color:#f8f9fa}revo-grid[theme=default] .rowHeaders revogr-data .rgCell,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell{color:#000}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:first-child,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:first-child{box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:not(:first-child),revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:not(:first-child){box-shadow:0 -1px 0 0 #cecece inset, 1px 0 0 0 #cecece inset}revo-grid[theme=default] .rowHeaders revogr-data .rgCell:last-child,revo-grid:not([theme]) .rowHeaders revogr-data .rgCell:last-child{border-right:1px solid #cecece}revo-grid[theme=default] .rowHeaders revogr-data revogr-header,revo-grid:not([theme]) .rowHeaders revogr-data revogr-header{box-shadow:0 -1px 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child,revo-grid:not([theme]) revogr-viewport-scroll.colPinStart revogr-data .rgRow .rgCell:last-child{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell,revo-grid:not([theme]) revogr-viewport-scroll.colPinStart .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #cecece inset, -1px 0 0 0 #cecece inset}revo-grid[theme=default] revogr-viewport-scroll.colPinEnd,revo-grid[theme=default] revogr-viewport-scroll.colPinEnd revogr-header,revo-grid:not([theme]) revogr-viewport-scroll.colPinEnd,revo-grid:not([theme]) revogr-viewport-scroll.colPinEnd revogr-header{box-shadow:1px 0 0 #cecece inset}revo-grid[theme=default] .footer-wrapper revogr-data .rgRow:first-child .rgCell,revo-grid:not([theme]) .footer-wrapper revogr-data .rgRow:first-child .rgCell{box-shadow:0 1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset, 0 -1px 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data,revo-grid:not([theme]) revogr-data{text-align:center}revo-grid[theme=default] revogr-data .revo-draggable,revo-grid:not([theme]) revogr-data .revo-draggable{float:left}revo-grid[theme=default] revogr-data .rgRow,revo-grid:not([theme]) revogr-data .rgRow{line-height:27px}revo-grid[theme=default] revogr-data .rgRow.focused-rgRow,revo-grid:not([theme]) revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=default] revogr-data .rgCell,revo-grid:not([theme]) revogr-data .rgCell{box-shadow:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=default] revogr-data .rgCell.disabled,revo-grid:not([theme]) revogr-data .rgCell.disabled{background-color:0 -1px 0 0 #e2e3e3 inset, -1px 0 0 0 #e2e3e3 inset}revo-grid[theme=material]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}revo-grid[theme=material] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=material] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=material] revogr-header .header-rgRow{height:50px}revo-grid[theme=material] revogr-data{text-align:left}revo-grid[theme=material] revogr-data .rgRow{line-height:42px}revo-grid[theme=material] revogr-data .rgCell{padding:0 15px}revo-grid[theme=material] .rowHeaders{background-color:#f7faff}revo-grid[theme=material] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=material] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=material] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=material] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=material] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=material] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=material] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=material] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=material] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=material] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=darkMaterial]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#d8d8d8}revo-grid[theme=darkMaterial] revogr-header{line-height:50px;font-weight:600;text-align:left}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkMaterial] revogr-header .header-rgRow{height:50px}revo-grid[theme=darkMaterial] revogr-data{text-align:left}revo-grid[theme=darkMaterial] revogr-data .rgRow{line-height:42px}revo-grid[theme=darkMaterial] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkMaterial] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkMaterial] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkMaterial] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkMaterial] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkMaterial] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkMaterial] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkMaterial] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkMaterial] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=darkCompact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";color:#d8d8d8}revo-grid[theme=darkCompact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=darkCompact] revogr-header .header-rgRow{height:45px}revo-grid[theme=darkCompact] revogr-data{text-align:left}revo-grid[theme=darkCompact] revogr-data .rgRow{line-height:32px}revo-grid[theme=darkCompact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=darkCompact] .rowHeaders{background-color:rgba(40, 39, 43, 0.8)}revo-grid[theme=darkCompact] .rowHeaders revogr-data .rgCell{color:rgba(216, 216, 216, 0.8)}revo-grid[theme=darkCompact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #404040, 0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.sortable:hover{background-color:rgba(64, 64, 64, 0.5)}revo-grid[theme=darkCompact] revogr-header .rgHeaderCell.focused-cell{background:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #404040}revo-grid[theme=darkCompact] revogr-data .rgCell{color:rgba(216, 216, 216, 0.9)}revo-grid[theme=darkCompact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-data .rgRow.focused-rgRow{background-color:rgba(115, 148, 160, 0.15)}revo-grid[theme=darkCompact] revogr-data .revo-draggable>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.5)}revo-grid[theme=darkCompact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:rgba(216, 216, 216, 0.7)}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #404040 inset}revo-grid[theme=darkCompact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #404040}revo-grid[theme=compact]{font-family:Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"}revo-grid[theme=compact] revogr-header{line-height:45px;font-weight:600;text-align:left}revo-grid[theme=compact] revogr-header .rgHeaderCell{padding:0 15px;text-overflow:ellipsis}revo-grid[theme=compact] revogr-header .header-rgRow{height:45px}revo-grid[theme=compact] revogr-data{text-align:left}revo-grid[theme=compact] revogr-data .rgRow{line-height:32px}revo-grid[theme=compact] revogr-data .rgCell{padding:0 15px}revo-grid[theme=compact] .rowHeaders{background-color:#f7faff}revo-grid[theme=compact] .rowHeaders revogr-data .rgCell{color:#757a82}revo-grid[theme=compact] revogr-header .header-rgRow.group{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .header-rgRow:not(.group){box-shadow:0 -1px 0 0 #f1f1f1, 0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-header .rgHeaderCell.sortable:hover{background-color:#f1f1f1}revo-grid[theme=compact] revogr-header .rgHeaderCell.focused-cell{background:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] .footer-wrapper revogr-data{box-shadow:0 -1px 0 #f1f1f1}revo-grid[theme=compact] revogr-viewport-scroll.colPinStart{box-shadow:-1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-viewport-scroll.colPinEnd{box-shadow:-1px 0 0 #f1f1f1}revo-grid[theme=compact] revogr-data .rgRow{box-shadow:0 -1px 0 0 #f1f1f1 inset}revo-grid[theme=compact] revogr-data .rgRow.focused-rgRow{background-color:rgba(233, 234, 237, 0.5)}revo-grid[theme=compact] revogr-data .rgCell{color:rgba(0, 0, 0, 0.87)}revo-grid[theme=compact] revogr-data .rgCell.disabled{background-color:#f7f7f7}revo-grid[theme=compact] revogr-data .revo-draggable>.revo-drag-icon{background-color:#d4d4d4}revo-grid[theme=compact] revogr-data .revo-draggable:hover>.revo-drag-icon{background-color:black}revo-grid[theme=compact] revo-dropdown .rv-dr-root{padding:0px 9px}revo-grid{display:block;height:100%;min-height:300px;font-family:Helvetica, Arial, Sans-Serif, serif;font-size:14px;position:relative;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;width:100%;height:100%}revo-grid .attribution{position:absolute;top:0;left:0;right:0;z-index:100;width:0;height:0;border-left:6px solid #0049cf;border-top:6px solid #0049cf;border-bottom:6px solid transparent;border-right:6px solid transparent;cursor:pointer}revo-grid .attribution .value{position:absolute;top:0;left:0;background-color:rgba(255, 255, 255, 0.9);padding:4px;border-radius:4px;box-shadow:0 1px 10px rgba(0, 0, 0, 0.2);white-space:nowrap;text-decoration:none;color:black;letter-spacing:0.3px;font-size:11px;opacity:0;width:6px;overflow:hidden;transition:opacity 0.5s ease-in-out, width 0.3s ease-in-out}revo-grid .attribution:hover .value{width:63px;opacity:1}revo-grid.column-draggable.column-drag-start:hover,revo-grid.column-draggable.column-drag-start *:hover{cursor:grabbing}revo-grid .footer-wrapper,revo-grid .header-wrapper{width:100%}revo-grid .footer-wrapper revogr-data,revo-grid .header-wrapper revogr-data{z-index:3}revo-grid revo-dropdown{width:100%}revo-grid revo-dropdown .rv-dr-root{max-height:100%}revo-grid revo-dropdown.shrink label{opacity:0}revo-grid .viewports{max-width:100%;display:flex;flex-direction:row;align-items:flex-start;flex-grow:1}revo-grid .main-viewport{flex-grow:1;height:0;display:flex;justify-content:space-between;flex-direction:row}revo-grid .draggable{position:fixed;height:30px;line-height:30px;background:#fff;border-radius:3px;display:block;z-index:100;margin-top:5px;margin-right:-20px;box-shadow:0 4px 20px 0 rgba(0, 0, 0, 0.15);padding-left:20px;padding-right:5px}revo-grid .draggable.hidden{display:none}revo-grid .draggable .revo-alt-icon{background-color:black;position:absolute;left:5px;top:10px}revo-grid .draggable-wrapper.hidden{display:none}revo-grid .drag-position{position:absolute;left:0;right:0;height:1px;z-index:2;background:gray;pointer-events:none}revo-grid .drag-position-y{position:absolute;top:0;left:0;bottom:0;width:1px;z-index:2;background:gray;pointer-events:none}revo-grid .drag-auto-scroll-y{pointer-events:none;position:absolute;left:0;top:0;height:50px;width:1px}revo-grid .clipboard{position:absolute;left:0;top:0}revo-grid revogr-scroll-virtual{position:relative}revo-grid revogr-scroll-virtual.vertical,revo-grid revogr-scroll-virtual.horizontal{z-index:3}';const di=li;const ci=class{constructor(e){t(this,e);this.contentsizechanged=r(this,"contentsizechanged",7);this.beforeedit=r(this,"beforeedit",7);this.beforerangeedit=r(this,"beforerangeedit",7);this.afteredit=r(this,"afteredit",7);this.beforeautofill=r(this,"beforeautofill",7);this.beforeange=r(this,"beforeange",7);this.afterfocus=r(this,"afterfocus",7);this.roworderchanged=r(this,"roworderchanged",7);this.beforesortingapply=r(this,"beforesortingapply",7);this.beforesorting=r(this,"beforesorting",7);this.rowdragstart=r(this,"rowdragstart",7);this.headerclick=r(this,"headerclick",7);this.beforecellfocus=r(this,"beforecellfocus",7);this.beforefocuslost=r(this,"beforefocuslost",7);this.beforesourceset=r(this,"beforesourceset",7);this.beforeanysource=r(this,"beforeanysource",7);this.aftersourceset=r(this,"aftersourceset",7);this.afteranysource=r(this,"afteranysource",7);this.beforecolumnsset=r(this,"beforecolumnsset",7);this.beforecolumnapplied=r(this,"beforecolumnapplied",7);this.aftercolumnsset=r(this,"aftercolumnsset",7);this.beforefilterapply=r(this,"beforefilterapply",7);this.beforefiltertrimmed=r(this,"beforefiltertrimmed",7);this.beforetrimmed=r(this,"beforetrimmed",7);this.aftertrimmed=r(this,"aftertrimmed",7);this.viewportscroll=r(this,"viewportscroll",7);this.beforeexport=r(this,"beforeexport",7);this.beforeeditstart=r(this,"beforeeditstart",7);this.aftercolumnresize=r(this,"aftercolumnresize",7);this.beforerowdefinition=r(this,"beforerowdefinition",7);this.filterconfigchanged=r(this,"filterconfigchanged",7);this.rowheaderschanged=r(this,"rowheaderschanged",7);this.beforegridrender=r(this,"beforegridrender",7);this.aftergridinit=r(this,"aftergridinit",7);this.clickTrackForFocusClear=null;this.extraElements=[];this.uuid=null;this.viewport=null;this.isInited=false;this.internalPlugins=[];this.rowHeaders=undefined;this.frameSize=1;this.rowSize=0;this.colSize=100;this.range=false;this.readonly=false;this.resize=false;this.canFocus=true;this.useClipboard=true;this.columns=[];this.source=[];this.pinnedTopSource=[];this.pinnedBottomSource=[];this.rowDefinitions=[];this.editors={};this.applyOnClose=false;this.plugins=undefined;this.columnTypes={};this.theme="default";this.rowClass="";this.autoSizeColumn=false;this.filter=false;this.focusTemplate=undefined;this.canMoveColumns=false;this.trimmedRows={};this.exporting=false;this.grouping=undefined;this.stretch=true;this.additionalData={};this.disableVirtualX=false;this.disableVirtualY=false;this.hideAttribution=false;this.jobsBeforeRender=[];this.registerVNode=[]}async refresh(e="all"){this.dataProvider.refresh(e)}async setDataAt(e){const t=this.element.querySelector(`revogr-data[type="${e.rowType}"][col-type="${e.colType}"]`);return t===null||t===void 0?void 0:t.updateCell({row:e.row,col:e.col})}async scrollToRow(e=0){const t=this.dimensionProvider.getViewPortPos({coordinate:e,dimension:"rgRow"});await this.scrollToCoordinate({y:t})}async scrollToColumnIndex(e=0){const t=this.dimensionProvider.getViewPortPos({coordinate:e,dimension:"rgCol"});await this.scrollToCoordinate({x:t})}async scrollToColumnProp(e,t="rgCol"){const r=this.columnProvider.getColumnIndexByProp(e,t);if(r<0){return}const i=this.dimensionProvider.getViewPortPos({coordinate:r,dimension:t});await this.scrollToCoordinate({x:i})}async updateColumns(e){this.columnProvider.updateColumns(e)}async addTrimmed(e,t="external",r="rgRow"){const i=this.beforetrimmed.emit({trimmed:e,trimmedType:t,type:r});if(i.defaultPrevented){return i}this.dataProvider.setTrimmed({[t]:i.detail.trimmed},r);this.aftertrimmed.emit();return i}async scrollToCoordinate(e){var t;(t=this.viewport)===null||t===void 0?void 0:t.scrollToCell(e)}async setCellEdit(e,t,r="rgRow"){var i;const o=Ue.getColumnByProp(this.columns,t);if(!o){return}await V();const s=o.pin||"rgCol";(i=this.viewport)===null||i===void 0?void 0:i.setEdit(e,this.columnProvider.getColumnIndexByProp(t,s),s,r)}async setCellsFocus(e={x:0,y:0},t={x:0,y:0},r="rgCol",i="rgRow"){var o;(o=this.viewport)===null||o===void 0?void 0:o.setFocus(r,i,e,t)}async getSource(e="rgRow"){return this.dataProvider.stores[e].store.get("source")}async getVisibleSource(e="rgRow"){return w(this.dataProvider.stores[e].store)}async getSourceStore(e="rgRow"){return this.dataProvider.stores[e].store}async getColumnStore(e="rgCol"){return this.columnProvider.stores[e].store}async updateColumnSorting(e,t,r,i){return this.columnProvider.updateColumnSorting(e,t,r,i)}async clearSorting(){this.columnProvider.clearSorting()}async getColumns(){return this.columnProvider.getColumns()}async clearFocus(){var e;const t=(e=this.viewport)===null||e===void 0?void 0:e.getFocused();const r=this.beforefocuslost.emit(t);if(r.defaultPrevented){return}this.selectionStoreConnector.clearAll()}async getPlugins(){return[...this.internalPlugins]}async getFocused(){var e;return(e=this.viewport)===null||e===void 0?void 0:e.getFocused()}async getContentSize(){var e;return(e=this.dimensionProvider)===null||e===void 0?void 0:e.getFullSize()}async getSelectedRange(){var e;return(e=this.viewport)===null||e===void 0?void 0:e.getSelectedRange()}mousedownHandle(e){const t=ue(e,"screenX");const r=ue(e,"screenY");if(t===null||r===null){return}this.clickTrackForFocusClear=t+r}mouseupHandle(e){const t=ue(e,"screenX");const r=ue(e,"screenY");if(t===null||r===null){return}if(e.defaultPrevented){return}const i=e.target;const o=t+r;if(Math.abs(this.clickTrackForFocusClear-o)>10){return}if(i===null||i===void 0?void 0:i.closest(`[${q}="${this.uuid}"]`)){return}this.clearFocus()}onRowDragStarted(e){var t;const r=this.rowdragstart.emit(e.detail);if(r.defaultPrevented){e.preventDefault();return}(t=this.orderService)===null||t===void 0?void 0:t.start(this.element,Object.assign(Object.assign({},e.detail),r.detail))}onRowDragEnd(){var e;(e=this.orderService)===null||e===void 0?void 0:e.end()}onRowDrag({detail:e}){var t;(t=this.orderService)===null||t===void 0?void 0:t.move(e)}onRowMouseMove(e){var t;(t=this.orderService)===null||t===void 0?void 0:t.moveTip(e.detail)}async onCellEdit(e){const{defaultPrevented:t,detail:r}=this.beforeedit.emit(e.detail);await V();if(!t){this.dataProvider.setCellData(r);this.afteredit.emit(r)}}onRangeEdit(e){const{defaultPrevented:t,detail:r}=this.beforerangeedit.emit(e.detail);if(t){e.preventDefault();return}this.dataProvider.setRangeData(r.data,r.type);this.afteredit.emit(r)}onRangeChanged(e){const t=this.beforeange.emit(e.detail);if(t.defaultPrevented){e.preventDefault()}const r=this.beforeautofill.emit(t.detail);if(r.defaultPrevented){e.preventDefault()}}onRowDropped(e){const{defaultPrevented:t}=this.roworderchanged.emit(e.detail);if(t){e.preventDefault()}}onHeaderClick(e){const{defaultPrevented:t}=this.headerclick.emit(Object.assign(Object.assign({},e.detail.column),{originalEvent:e.detail.originalEvent}));if(t){e.preventDefault()}}onCellFocus(e){const{defaultPrevented:t}=this.beforecellfocus.emit(e.detail);if(!this.canFocus||t){e.preventDefault()}}columnTypesChanged(){this.columnChanged(this.columns)}columnChanged(e=[]){const t=Ue.getColumns(e,0,this.columnTypes);this.beforecolumnsset.emit(t);this.dimensionProvider.applyNewColumns(t.columns,this.disableVirtualX);this.beforecolumnapplied.emit(t);const r=this.columnProvider.setColumns(t);this.aftercolumnsset.emit({columns:r,order:this.columnProvider.order})}disableVirtualXChanged(e=false,t=false){if(e===t){return}this.columnChanged(this.columns)}rowSizeChanged(e){this.dimensionProvider.setSettings({originItemSize:e},"rgRow");this.rowDefChanged(this.rowDefinitions,this.rowDefinitions)}themeChanged(e,t,r="theme",i=false){this.themeService.register(e);this.dimensionProvider.setSettings({originItemSize:this.themeService.rowSize},"rgRow");this.dimensionProvider.setSettings({originItemSize:this.colSize},"rgCol");if(!i){this.dimensionProvider.setSettings({originItemSize:this.themeService.rowSize},"rgRow");this.rowDefChanged(this.rowDefinitions.length?this.rowDefinitions:[{type:"rgRow",size:this.themeService.rowSize,index:0}],this.rowDefinitions)}}dataSourceChanged(e=[],t,r){let i="rgRow";switch(r){case"pinnedBottomSource":i="rowPinEnd";break;case"pinnedTopSource":i="rowPinStart";break;case"source":i="rgRow";const t=this.beforesourceset.emit({type:i,source:e});e=t.detail.source;break}const o=this.beforeanysource.emit({type:i,source:e});const s=[...o.detail.source];this.dataProvider.setData(s,i,this.disableVirtualY);if(r==="source"){this.aftersourceset.emit({type:i,source:e})}this.afteranysource.emit({type:i,source:e})}disableVirtualYChanged(e=false,t=false){if(e===t){return}this.dataSourceChanged(this.source,this.source,"source")}rowDefChanged(e,t){const{detail:{vals:r,oldVals:i}}=this.beforerowdefinition.emit({vals:e,oldVals:t});const o=Kr(r);if(i){const e=Zr(i);p(e,((e,t)=>{this.dimensionProvider.clearSize(t,this.dataProvider.stores[t].store.get("source").length)}))}if(!r.length){return}p(o,((e,t)=>this.dimensionProvider.setCustomSizes(t,e.sizes||{})))}trimmedRowsChanged(e={}){this.addTrimmed(e)}groupingChanged(e={}){let t;for(let e of this.internalPlugins){const r=e;if(r.setGrouping){t=r;break}}if(!t){return}t.setGrouping(e||{})}applyStretch(e){if(e==="false"){e=false}let t=this.internalPlugins.filter((e=>_r(e)))[0];if(typeof e==="boolean"&&e||e==="true"){if(!t){const e={data:this.dataProvider,column:this.columnProvider,dimension:this.dimensionProvider,viewport:this.viewportProvider,selection:this.selectionStoreConnector};this.internalPlugins.push(new Jr(this.element,e))}else if(_r(t)){t.applyStretch(this.columnProvider.getRawColumns())}}else if(t){const e=this.internalPlugins.indexOf(t);this.internalPlugins.splice(e,1)}}applyFilter(e){this.filterconfigchanged.emit(e)}rowHeadersChange(e){this.rowheaderschanged.emit(e)}registerOutsideVNodes(e=[]){this.extraElements=[...this.extraElements,...e]}setPlugins(){var e;this.removePlugins();const t={data:this.dataProvider,column:this.columnProvider,dimension:this.dimensionProvider,viewport:this.viewportProvider,selection:this.selectionStoreConnector};if(this.autoSizeColumn){this.internalPlugins.push(new Je(this.element,t,typeof this.autoSizeColumn==="object"?this.autoSizeColumn:undefined))}if(this.filter){this.internalPlugins.push(new gt(this.element,t,this.uuid,typeof this.filter==="object"?this.filter:undefined))}if(this.exporting){this.internalPlugins.push(new Nr(this.element,t))}this.internalPlugins.push(new fr(this.element,t));this.internalPlugins.push(new Ur(this.element,t));if(this.canMoveColumns){this.internalPlugins.push(new ni(this.element,t))}(e=this.plugins)===null||e===void 0?void 0:e.forEach((e=>this.internalPlugins.push(new e(this.element,t))))}removePlugins(){this.internalPlugins.forEach((e=>e.destroy()));this.internalPlugins=[]}connectedCallback(){if(this.isInited){this.setPlugins()}}componentWillLoad(){this.viewportProvider=new Xe;this.themeService=new Ce({rowSize:this.rowSize});this.dimensionProvider=new Ge(this.viewportProvider,{realSizeChanged:e=>this.contentsizechanged.emit(e)});this.columnProvider=new Ue;this.selectionStoreConnector=new $;this.dataProvider=new qe(this.dimensionProvider);this.uuid=`rv--${Math.random().toString(36).slice(2,6)}-${Date.now()}`;this.registerOutsideVNodes(this.registerVNode);this.setPlugins();this.applyStretch(this.stretch);this.themeChanged(this.theme,undefined,undefined,true);this.columnChanged(this.columns);this.dataSourceChanged(this.source,undefined,"source");this.dataSourceChanged(this.pinnedTopSource,undefined,"pinnedTopSource");this.dataSourceChanged(this.pinnedBottomSource,undefined,"pinnedBottomSource");this.trimmedRowsChanged(this.trimmedRows);this.rowDefChanged(this.rowDefinitions);this.groupingChanged(this.grouping);this.scrollingService=new Xr((e=>{this.dimensionProvider.setViewPortCoordinate({coordinate:e.coordinate,type:e.dimension});this.viewportscroll.emit(e)}));this.aftergridinit.emit();this.isInited=true}componentWillRender(){const e=this.beforegridrender.emit();if(e.defaultPrevented){return false}return Promise.all(this.jobsBeforeRender)}render(){const t=this.dimensionProvider.stores["rgRow"].store.get("realSize");this.viewport=new Gr({columnProvider:this.columnProvider,dataProvider:this.dataProvider,dimensionProvider:this.dimensionProvider,viewportProvider:this.viewportProvider,scrollingService:this.scrollingService,orderService:this.orderService,selectionStoreConnector:this.selectionStoreConnector,disableVirtualX:this.disableVirtualX,disableVirtualY:this.disableVirtualY,resize:e=>this.aftercolumnresize.emit(e)},t);const r=[];if(this.rowHeaders&&this.viewport.columns.length){const i=this.viewport.columns[0];r.push(e("revogr-row-headers",{additionalData:this.additionalData,height:t,rowClass:this.rowClass,resize:this.resize,dataPorts:i.dataPorts,headerProp:i.headerProp,jobsBeforeRender:this.jobsBeforeRender,rowHeaderColumn:typeof this.rowHeaders==="object"?this.rowHeaders:undefined,onScrollview:({detail:e})=>this.scrollingService.proxyScroll(e,"headerRow"),onRef:({detail:e})=>this.scrollingService.registerElement(e,"headerRow")}))}const o=hi();const s=[];for(let t of this.viewport.columns){const r=Object.assign(Object.assign({},t.headerProp),{type:t.type,additionalData:this.additionalData,viewportCol:t.viewportCol,selectionStore:t.columnSelectionStore,canResize:this.resize,readonly:this.readonly,columnFilter:!!this.filter});const i=[e("revogr-header",Object.assign({key:"67b0af56acae99e5b999c0b338a279b076022171"},r,{slot:he}))];t.dataPorts.forEach((r=>{const s=`${r.type}_${t.type}`;const n=e("revogr-overlay-selection",Object.assign({},r,{isMobileDevice:o,selectionStore:r.segmentSelectionStore,onSelectall:()=>this.selectionStoreConnector.selectAll(),editors:this.editors,readonly:this.readonly,range:this.range,useClipboard:this.useClipboard,applyChangesOnClose:this.applyOnClose,additionalData:this.additionalData,slot:r.slot,onCanceledit:()=>this.selectionStoreConnector.setEdit(false),onSetedit:({detail:e})=>{const t=this.beforeeditstart.emit(e);if(!t.defaultPrevented){this.selectionStoreConnector.setEdit(e.val)}}}),e("revogr-data",Object.assign({},r,{colType:t.type,key:s,readonly:this.readonly,range:this.range,rowClass:this.rowClass,rowSelectionStore:r.rowSelectionStore,additionalData:this.additionalData,jobsBeforeRender:this.jobsBeforeRender,slot:ce}),e("slot",{name:`data-${t.type}-${r.type}`})),e("revogr-temp-range",{selectionStore:r.segmentSelectionStore,dimensionRow:r.dimensionRow,dimensionCol:r.dimensionCol}),e("revogr-focus",{colData:r.colData,dataStore:r.dataStore,focusTemplate:this.focusTemplate,rowType:r.type,colType:t.type,selectionStore:r.segmentSelectionStore,dimensionRow:r.dimensionRow,dimensionCol:r.dimensionCol},e("slot",{name:`focus-${t.type}-${r.type}`})));i.push(n)}));s.push(e("revogr-viewport-scroll",Object.assign({},t.prop,{ref:e=>this.scrollingService.registerElement(e,`${t.prop.key}`),onScrollviewport:e=>this.scrollingService.proxyScroll(e.detail,`${t.prop.key}`),onScrollviewportsilent:e=>this.scrollingService.scrollSilentService(e.detail,`${t.prop.key}`)}),i))}r.push(s);const n="rgRow";const a="rgCol";const h=this.viewportProvider.stores;const l=this.dimensionProvider.stores;return e(i,{key:"3837943944ca3c255083a2fa7fa125291442b98a",[`${q}`]:this.uuid},this.hideAttribution?null:e("revogr-attribution",{class:"attribution"}),e("div",{key:"97e0e9cbd158c398945e0d5c0c43a93422c090f9",class:"main-viewport",onClick:e=>{if(e.currentTarget===e.target){this.viewport.clearEdit()}}},e("div",{key:"9c77a61499d749aa2e786f593715d8bcacdb3ad0",class:"viewports"},e("slot",{key:"8af1657ec8ec9b7f56afe957f589d64b55c53bcd",name:"viewport"}),r,e("revogr-scroll-virtual",{key:"1947f0706d5e9e552822a44a55504ae82c603ce7",class:"vertical",dimension:n,viewportStore:h[n].store,dimensionStore:l[n].store,ref:e=>this.scrollingService.registerElement(e,"rowScroll"),onScrollvirtual:e=>this.scrollingService.proxyScroll(e.detail)}),e(Yr,{key:"6cf863db4b189cf9480d5aca1473832f0ee322b5",ref:e=>this.orderService=e}))),e("revogr-scroll-virtual",{key:"542cc17558cc0cfa1def201870e0cac8f83ebd36",class:"horizontal",dimension:a,viewportStore:h[a].store,dimensionStore:l[a].store,ref:e=>this.scrollingService.registerElement(e,"colScroll"),onScrollvirtual:e=>this.scrollingService.proxyScroll(e.detail)}),this.extraElements)}disconnectedCallback(){this.removePlugins()}get element(){return o(this)}static get watchers(){return{columnTypes:["columnTypesChanged"],columns:["columnChanged"],disableVirtualX:["disableVirtualXChanged"],rowSize:["rowSizeChanged"],theme:["themeChanged"],source:["dataSourceChanged"],pinnedBottomSource:["dataSourceChanged"],pinnedTopSource:["dataSourceChanged"],disableVirtualY:["disableVirtualYChanged"],rowDefinitions:["rowDefChanged"],trimmedRows:["trimmedRowsChanged"],grouping:["groupingChanged"],stretch:["applyStretch"],filter:["applyFilter"],rowHeaders:["rowHeadersChange"],registerVNode:["registerOutsideVNodes"]}}};ci.style=di;export{ci as revo_grid};
|
|
5
5
|
//# sourceMappingURL=revo-grid.entry.js.map
|