@kanunilabs/datagrid 1.3.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/datagrid.umd.js +1 -1
- package/package.json +3 -3
package/dist/datagrid.umd.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";var KanuniLabsDataGrid=(()=>{var co=Object.create;var gu=Object.defineProperty;var ho=Object.getOwnPropertyDescriptor;var po=Object.getOwnPropertyNames;var mo=Object.getPrototypeOf,go=Object.prototype.hasOwnProperty;var dr=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,u)=>(typeof require<"u"?require:t)[u]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var fo=(e,t)=>{for(var u in t)gu(e,u,{get:t[u],enumerable:!0})},Xn=(e,t,u,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of po(t))!go.call(e,n)&&n!==u&&gu(e,n,{get:()=>t[n],enumerable:!(r=ho(t,n))||r.enumerable});return e};var cr=(e,t,u)=>(u=e!=null?co(mo(e)):{},Xn(t||!e||!e.__esModule?gu(u,"default",{value:e,enumerable:!0}):u,e)),Co=e=>Xn(gu({},"__esModule",{value:!0}),e);var k0={};fo(k0,{CHECKBOX_COLUMN_WIDTH:()=>Wt,DENSITY_ROW_HEIGHT:()=>Hr,DETAIL_COLUMN_WIDTH:()=>At,PRINT_MAX_ROWS:()=>Zr,ROW_DRAG_MIME:()=>Ut,ROW_NUMBER_COLUMN_WIDTH:()=>Et,THEME_ROW_HEIGHT:()=>Wr,buildHeaderMenu:()=>Ru,createGrid:()=>pa,isPackagedTheme:()=>Kr,measureBestFitWidth:()=>Nu,presetRowHeight:()=>ku});function wo(e){return e.kind==="group"}function at(e){return e.kind==="data"}function yo(e){return!Array.isArray(e)&&typeof e.load=="function"}function Ti(e){return typeof e=="string"||typeof e=="number"}var ei=new WeakMap;function Eo(e){if(typeof e.items=="function"||!Array.isArray(e.items))return null;let t=ei.get(e);if(t)return t;let u=new Map;for(let r of e.items)u.set(r.value,r.label);return ei.set(e,u),u}function wt(e,t){if(!e?.lookup)return null;let u=Eo(e.lookup);if(!u)return null;let r=u.get(t);return r===void 0?null:r}function Ie(e){let t=e?.band;return t==null?[]:typeof t=="string"?t===""?[]:[t]:t.filter(u=>typeof u=="string"&&u!=="")}function Pt(e){return e.join("\0")}function Ao(e,t){let u=e?.bandShow;if(u===void 0)return!1;let r=Ie(e);if(r.length===0)return!1;let n=!1;for(let i=0;i<r.length;i++)if(t.has(Pt(r.slice(0,i+1)))){n=!0;break}return u==="open"?n:!n}function Mi(e){let t=0;for(let u of e){let r=Ie(u.def).length;r>t&&(t=r)}return t}function Ii(e,t){if(t<=0)return[];let u=[];for(let r=0;r<t;r++){let n=[];for(let i of e){let a=Ie(i.def),l=r<a.length?a[r]:"",s=l==="",m=n[n.length-1];m!==void 0&&m.spacer===s&&m.label===l&&(s||bo(e,m.columnIds[0],i.state.id,r))?(m.columnIds.push(i.state.id),m.width+=i.state.width):n.push({label:l,columnIds:[i.state.id],width:i.state.width,level:r,spacer:s})}u.push(n)}return u}function bo(e,t,u,r){if(r===0)return!0;let n=e.find(s=>s.state.id===t),i=e.find(s=>s.state.id===u),a=Ie(n?.def),l=Ie(i?.def);for(let s=0;s<r;s++)if(a[s]!==l[s])return!1;return!0}var vo=/^\d{4}-\d{2}-\d{2}(?:[T ]\d{2}:\d{2}|$)/;function xo(e){return e==null||e===""?null:typeof e=="boolean"?"boolean":typeof e=="number"?Number.isFinite(e)?"number":null:e instanceof Date||typeof e=="string"&&vo.test(e)?"date":"string"}function Do(e){if(/^[A-Z0-9_]+$/.test(e))return e.replace(/_/g," ");let t=e.replace(/[_-]+/g," ").replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").trim().split(/\s+/);if(t.length===0)return e;let u=t.map((r,n)=>r.toLowerCase()==="id"?"ID":n===0||/^[A-Z0-9]+$/.test(r)?r:r.toLowerCase());return u[0]=u[0].charAt(0).toUpperCase()+u[0].slice(1),u.join(" ")}function Li(e,t={}){let{sampleSize:u=50,exclude:r,include:n,humanizeHeaders:i=!0,defaults:a}=t;if(!e||e.length===0)return[];let l=new Set(r??[]),s=Math.min(e.length,Math.max(1,u)),m=new Map;for(let c=0;c<s;c++){let h=e[c];if(!(!h||typeof h!="object"))for(let[w,g]of Object.entries(h)){if(l.has(w))continue;m.get(w)==null&&m.set(w,xo(g))}}return(n?n.filter(c=>m.has(c)&&!l.has(c)):[...m.keys()]).map(c=>({...a,field:c,headerName:i?Do(c):c,...m.get(c)?{dataType:m.get(c)}:{}}))}var ot=(e,t)=>`${e}:${t}`;function Fo(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e instanceof Date)return e.getTime();let t=Number(e);return Number.isNaN(t)?Number.NaN:t}function So(e,t){return t==="date"&&!(e instanceof Date)&&typeof e!="number"?Date.parse(String(e)):Fo(e)}function Mr(e,t,u,r=ot(e,t)){return{key:r,columnId:e,type:t,dataType:u,count:0,numericCount:0,sum:0,min:Number.POSITIVE_INFINITY,max:Number.NEGATIVE_INFINITY,distinct:t==="countDistinct"?new Set:null}}function Bo(e,t){if(e.count+=t.count,e.numericCount+=t.numericCount,e.sum+=t.sum,t.min<e.min&&(e.min=t.min),t.max>e.max&&(e.max=t.max),e.distinct&&t.distinct)for(let u of t.distinct)e.distinct.add(u)}function vu(e,t){let u=t==null;if(e.type==="count"){u||e.count++;return}if(e.distinct){u||e.distinct.add(String(t));return}if(u)return;let r=So(t,e.dataType);Number.isNaN(r)||(e.numericCount++,e.sum+=r,r<e.min&&(e.min=r),r>e.max&&(e.max=r))}function xu(e){switch(e.type){case"count":return e.count;case"countDistinct":return e.distinct?e.distinct.size:0;case"sum":return e.numericCount>0?e.sum:null;case"avg":return e.numericCount>0?e.sum/e.numericCount:null;case"min":return e.numericCount>0?e.min:null;case"max":return e.numericCount>0?e.max:null;default:return null}}function Pi(e,t,u,r,n,i){let a={};if(n.length===0)return a;let l=i?.effectiveValue,s=i?.effectiveRow,m=[];for(let c of n){let h=ot(c.columnId,c.type);if(c.type==="custom"){if(!c.calculate){a[h]=null;continue}let w=[];for(let g=t;g<u;g++){let y=e[g];if(!y||!at(y))continue;let F=r.getCellValue(y.data,c.columnId);w.push({row:s?s(y.key,y.data):y.data,value:l?l(y.key,c.columnId,F):F})}a[h]=c.calculate(w);continue}m.push(Mr(c.columnId,c.type,r.getDataType(c.columnId),h))}if(m.length>0){let c=m.length===1?m[0]:null;for(let h=t;h<u;h++){let w=e[h];if(!w||!at(w))continue;let g=w.data;if(c){let y=r.getCellValue(g,c.columnId);vu(c,l?l(w.key,c.columnId,y):y);continue}for(let y of m){let F=r.getCellValue(g,y.columnId);vu(y,l?l(w.key,y.columnId,F):F)}}for(let h of m)a[h.key]=xu(h)}return a}function ko(e,t,u,r){return Pi(e,0,e.length,t,u,r)}function Ro(e,t,u){let r=u?.effectiveValue,n=u?.effectiveRow,i=[],a=[],l=[];for(let s of t){if(s.type==="custom"){s.calculate?a.push({def:s,cells:[]}):l.push(ot(s.columnId,s.type));continue}i.push(Mr(s.columnId,s.type,e.getDataType(s.columnId)))}return{add(s,m,c){for(let h=m;h<c;h++){let w=s[h];if(!w||!at(w))continue;let g=w.data;for(let y of i){let F=e.getCellValue(g,y.columnId);vu(y,r?r(w.key,y.columnId,F):F)}for(let{def:y,cells:F}of a){let S=e.getCellValue(g,y.columnId);F.push({row:n?n(w.key,g):g,value:r?r(w.key,y.columnId,S):S})}}},finish(){let s={};for(let m of l)s[m]=null;for(let m of i)s[m.key]=xu(m);for(let{def:m,cells:c}of a)s[ot(m.columnId,m.type)]=m.calculate(c);return s}}}var ti=(e,t)=>`${e}::${t}`;function No(e,t,u){let r=u.columnIds,n=u.summaries,i=0,a=(m,c)=>{let h=t.getCellValue(e[m].data,c);return h==null?"":String(h)},l=(m,c,h,w)=>{let g=r[h],y=[],F=m;for(;F<c;){let S=t.getCellValue(e[F].data,g),T=S==null?"":String(S),N=F+1;for(;N<c&&a(N,g)===T;)N++;let V=w?`${w}|${ti(g,T)}`:ti(g,T),K={columnId:g,value:S,label:T,key:V,level:h,from:F,to:N,count:N-F,children:null};n&&n.length>0&&(K.aggregates=Pi(e,F,N,t,n)),i++,h+1<r.length&&(K.children=l(F,N,h+1,V)),y.push(K),F=N}return y},s=r.length===0?[]:l(0,e.length,0,"");return{levels:r,roots:s,totalGroupCount:i,nodes:e}}function To(e,t){let{collapsedKeys:u,collapsedByDefault:r=!1}=t,n=[],i=0,a=l=>{for(let s of l){let m=r?!u.has(s.key):u.has(s.key),c={kind:"group",key:s.key,columnId:s.columnId,value:s.value,label:s.label,count:s.count,level:s.level,expanded:!m};if(s.aggregates&&(c.aggregates=s.aggregates),n.push(c),i++,!m)if(s.children)a(s.children);else for(let h=s.from;h<s.to;h++)n.push(e.nodes[h])}};return a(e.roots),{nodes:n,groupCount:i}}function Mo(e){let t=[],u=r=>{for(let n of r)t.push(n.key),n.children&&u(n.children)};return u(e.roots),t}function hr(e,t){let u=t==null?[]:Array.isArray(t)?[...t]:[t];if(u.length===0)return[...e];let r=u.map(i=>({columnId:i,direction:e.find(a=>a.columnId===i)?.direction??"asc"})),n=e.filter(i=>!u.includes(i.columnId));return[...r,...n]}function Io(e,t){let u=new Map,r=new Map,n=new Set,i,a,l=!1;for(let m of e){if(m.add){for(let c of m.add){let h=t(c);u.set(h,c),r.delete(h)}l||(l=!0,i=m.addPosition,a=m.addBeforeKey)}if(m.update)for(let c of m.update){let h=t(c);if(u.has(h)){u.set(h,c);continue}n.has(h)||r.set(h,c)}if(m.remove)for(let c of m.remove){let h=Ti(c)?c:t(c);if(u.has(h)){u.delete(h),r.delete(h);continue}r.delete(h),n.add(h)}}let s={};return u.size>0&&(s.add=[...u.values()],i!==void 0&&(s.addPosition=i),a!==void 0&&(s.addBeforeKey=a)),r.size>0&&(s.update=[...r.values()]),n.size>0&&(s.remove=[...n]),s}function Lo(e){return!e.add?.length&&!e.update?.length&&!e.remove?.length}function Ir(e){return e.nodes!==void 0}var Gi="row",Lr="set",Vt="__default",Po=/[\u0130\u0131]/,Go=/[\u0130\u0131]/g;function te(e){return Po.test(e)?e.replace(Go,"i").toLowerCase():e.toLowerCase()}var Oo=[{token:"yyyy",kind:"year"},{token:"yy",kind:"year"},{token:"MM",kind:"month"},{token:"dd",kind:"day"}];function Vo(e){let t=[],u="",r=0;for(;r<e.length;){let n=Oo.find(i=>e.startsWith(i.token,r));if(!n){u+=e[r],r+=1;continue}u&&(t.push({kind:"literal",text:u}),u=""),t.push({kind:n.kind,length:n.token.length}),r+=n.token.length}return u&&t.push({kind:"literal",text:u}),t}function zo(e){if(e==null||e==="")return null;if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;if(typeof e=="number"){let n=new Date(e);return Number.isNaN(n.getTime())?null:n}let t=String(e),u=/^(\d{4})-(\d{2})-(\d{2})$/.exec(t);if(u)return new Date(Number(u[1]),Number(u[2])-1,Number(u[3]));let r=new Date(t);return Number.isNaN(r.getTime())?null:r}var fu=new Map;function Ho(e){let t=fu.get(e);return t||(fu.size>=64&&fu.clear(),t=Vo(e),fu.set(e,t)),t}function Pr(e,t){let u=zo(e);if(!u)return"";let r=(n,i)=>String(n).padStart(i,"0");return Ho(t).map(n=>{if(n.kind==="literal")return n.text;if(n.kind==="day")return r(u.getDate(),n.length);if(n.kind==="month")return r(u.getMonth()+1,n.length);let i=u.getFullYear();return n.length>2?r(i,n.length):r(i%100,2)}).join("")}function Du(e,t,u){let r=wt(e,t);if(r!==null)return r;if(e?.valueFormatter&&u!==void 0){let n=e.valueFormatter(t,u);return n==null?"":String(n)}return t==null?"":String(t)}function Oi(e){return e?typeof e.valueFormatter=="function"||!!e.dateFormat&&e.dataType==="date":!1}function Vi(e,t,u){if(!e||wt(e,t)!==null)return null;let r;try{if(typeof e.valueFormatter=="function")r=e.valueFormatter(t,u);else if(e.dateFormat&&e.dataType==="date"&&t!=null)r=Pr(t,e.dateFormat);else return null}catch{return null}return typeof r=="number"?String(r):typeof r=="string"&&r!==""?r:null}var ui=-1,xr="\0display:";function Ko(e){return xr+e}function Gr(e){return e.startsWith(xr)?e.slice(xr.length):null}function zi(e,t,u){return Vi(e.getDef(t),e.getCellValue(u,t),u)}function Fu(e){return e==null||typeof e=="number"&&Number.isNaN(e)}function Hi(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e instanceof Date)return e.getTime();let t=Number(e);return Number.isNaN(t)?Number.NaN:t}function Ki(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;let t=Date.parse(String(e));return Number.isNaN(t)?Number.NaN:t}function Wi(e,t,u,r=!1){let n=e.length,i=0,a=Gr(u),l=a===null?t.getDataType(u):"string",s=a!==null?w=>zi(t,a,w):r?w=>t.getSortValue(w,u):w=>t.getCellValue(w,u);if(l==="number"||l==="boolean"||l==="date"){let w=new Float64Array(n),g=l==="date"?Ki:Hi,y=[],F=new Map,S=new Int32Array(n),T=!0;return{total:n,get done(){return i},step(N){let V=Math.min(n,i+N);for(;i<V;i++){let K=s(e[i]);if(Fu(K)){w[i]=Number.NaN,S[i]=ui;continue}w[i]=g(K),typeof K!="number"&&(T=!1);let Z=String(K),W=F.get(Z);W===void 0&&(W=y.length,y.push(Z),F.set(Z,W)),S[i]=W}return i<n},finish(){return T?{kind:"numeric",values:w}:{kind:"numeric",values:w,searchCodes:S,searchDictionary:y}}}}let m=new Int32Array(n),c=[],h=new Map;return{total:n,get done(){return i},step(w){let g=Math.min(n,i+w);for(;i<g;i++){let y=s(e[i]);if(Fu(y)){m[i]=ui;continue}let F=String(y),S=h.get(F);S===void 0&&(S=c.length,c.push(F),h.set(F,S)),m[i]=S}return i<n},finish(){return{kind:"text",codes:m,dictionary:c}}}}function Wo(e,t,u,r=!1){let n=Wi(e,t,u,r);return n.step(n.total),n.finish()}var ri=new WeakMap;function Uo(e){let t=ri.get(e);if(t!==void 0)return t;let u=$o(e);return ri.set(e,u),u}function $o(e){let t=e.resolvedOptions();if(t.sensitivity!=="base"||t.numeric!==!0||t.ignorePunctuation||t.usage!=="sort"||t.collation!=="default")return!1;let u=[];for(let r=32;r<=126;r++)u.push(String.fromCharCode(r));u.sort(e.compare);for(let r=1;r<u.length;r++)if(e.compare(u[r-1],u[r])===0&&u[r-1].toLowerCase()!==u[r].toLowerCase())return!1;for(let r of u)if(e.compare(r,"")===0)return!1;return!(e.compare("01","1")!==0||e.compare("0","00")!==0||e.compare("a09z","a9z")!==0||e.compare("9","10")>=0)}function ni(e){for(let t=0;t<e.length;t++){let u=e.charCodeAt(t);if(u<32||u>126)return!1}return!0}function qo(e,t){let u=0,r=0,n=e.length,i=t.length;for(;u<n&&r<i;){let a=e.charCodeAt(u),l=t.charCodeAt(r),s=a>=48&&a<=57,m=l>=48&&l<=57;if(s!==m)return!0;if(s){for(;u<n&&e.charCodeAt(u)===48;)u++;for(;r<i&&t.charCodeAt(r)===48;)r++;let c=u,h=r;for(;u<n;){let g=e.charCodeAt(u);if(g<48||g>57)break;u++}for(;r<i;){let g=t.charCodeAt(r);if(g<48||g>57)break;r++}let w=u-c;if(w!==r-h)return!0;for(let g=0;g<w;g++)if(e.charCodeAt(c+g)!==t.charCodeAt(h+g))return!0}else{if(a>=65&&a<=90&&(a+=32),l>=65&&l<=90&&(l+=32),a!==l)return!0;u++,r++}}return u!==n||r!==i}function _o(e,t){let u=e.length,r=new Array(u);for(let m=0;m<u;m++)r[m]=m;r.sort((m,c)=>t.compare(e[m],e[c]));let n=new Int32Array(u);if(u===0)return n;let i=Uo(t)?new Uint8Array(u):null,a=r[0],l=i?ni(e[a])?1:2:0;i&&(i[a]=l);let s=0;n[a]=0;for(let m=1;m<u;m++){let c=r[m],h=e[a],w=e[c],g=0;i&&(g=i[c],g===0&&(g=ni(w)?1:2,i[c]=g)),(l===1&&g===1&&qo(h,w)||t.compare(h,w)!==0)&&s++,n[c]=s,a=c,l=g}return n}function re(e){return e==null}function Me(e){return e==null?"":String(e)}function We(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;let t=Number(e);return Number.isNaN(t)?String(e).toLowerCase():t}function Ct(e,t){let u=We(e),r=We(t);if(typeof u=="number"&&typeof r=="number")return u-r;if(typeof u=="number"&&typeof r=="string"){let a=Date.parse(r);if(!Number.isNaN(a))return u-a}else if(typeof u=="string"&&typeof r=="number"){let a=Date.parse(u);if(!Number.isNaN(a))return a-r}let n=String(u),i=String(r);return n<i?-1:n>i?1:0}var ii=new WeakMap;function jo(e){let t=ii.get(e);if(!t){t=new Set;let u=Array.isArray(e.value)?e.value:[];for(let r of u){if(re(r))continue;let n=We(r);typeof n=="number"&&Number.isNaN(n)||t.add(n)}ii.set(e,t)}return t}function Ui(e,t){switch(t.operator){case"isnull":return re(e);case"isnotnull":return!re(e);case"=":return re(e)||re(t.value)?re(e)&&re(t.value):We(e)===We(t.value);case"<>":return re(e)||re(t.value)?!(re(e)&&re(t.value)):We(e)!==We(t.value);case">":return!re(e)&&Ct(e,t.value)>0;case">=":return!re(e)&&Ct(e,t.value)>=0;case"<":return!re(e)&&Ct(e,t.value)<0;case"<=":return!re(e)&&Ct(e,t.value)<=0;case"contains":return te(Me(e)).includes(te(Me(t.value)));case"notcontains":return!te(Me(e)).includes(te(Me(t.value)));case"startswith":return te(Me(e)).startsWith(te(Me(t.value)));case"endswith":return te(Me(e)).endsWith(te(Me(t.value)));case"in":{if(re(e))return!1;let u=We(e);return typeof u=="number"&&Number.isNaN(u)?!1:jo(t).has(u)}case"between":{if(!Array.isArray(t.value)||t.value.length<2||re(e))return!1;let[u,r]=t.value;return Ct(e,u)>=0&&Ct(e,r)<=0}default:return!0}}function Dr(e,t,u){if(Ir(t))return t.nodes.length===0?!0:t.logic==="or"?t.nodes.some(n=>Dr(e,n,u)):t.nodes.every(n=>Dr(e,n,u));let r=u.getCellValue(e,t.columnId);return Ui(r,t)}function zt(e){return te((e??"").trim())}function Fr(e,t,u){if(u==="")return null;let r=null;for(let n of t){let i=e.getDef(n)?.lookup?.items;if(!Array.isArray(i))continue;let a=null;for(let l of i)te(String(l.label)).includes(u)&&(a??=new Set).add(String(l.value));a&&(r??=new Map).set(n,a)}return r}function Sr(e){let t=e.getOrder().filter(r=>e.getState(r)?.visible),u=t.filter(r=>Oi(e.getDef(r))).map(Ko);return u.length===0?t:[...t,...u]}function ai(e){if(!e||e.size===0)return;let t={};for(let[u,r]of e)t[u]=[...r];return t}function Yo(e,t,u,r,n,i){let a=zt(n),l=!!r,s=a.length>0,m=typeof i=="function";if(!l&&!s&&!m)return e.slice();let c=s?u.getOrder().filter(N=>u.getState(N)?.visible):[],h=s?Fr(u,c,a):null,w=h!==null,g=w?c.map(N=>h.get(N)??null):[],y=s?c.map(N=>{let V=u.getDef(N);return Oi(V)?V:void 0}):[],F=y.some(N=>N!==void 0),S=new Uint32Array(e.length),T=0;for(let N=0;N<e.length;N++){let V=e[N],K=t[V];if(!(l&&!Dr(K,r,u))&&!(m&&!i(K))){if(s){let Z=!1;for(let W=0;W<c.length;W++){let J=u.getCellValue(K,c[W]);if(!re(J)){let fe=Me(J);if(te(fe).includes(a)){Z=!0;break}if(w){let Re=g[W];if(Re!==null&&Re.has(fe)){Z=!0;break}}}if(F){let fe=y[W];if(fe!==void 0){let Re=Vi(fe,J,K);if(Re!==null&&te(Re).includes(a)){Z=!0;break}}}}if(!Z)continue}S[T++]=V}}return T===S.length?S:S.slice(0,T)}var Zo=Ui;function Jo(e){return e==="in"||e==="isnull"}function $i(e){if(!Ir(e))return Jo(e.operator)?[e]:null;if(e.logic!=="or")return null;let t=[];for(let u of e.nodes){let r=$i(u);if(!r)return null;t.push(...r)}return t.length>0?t:null}function qi(e,t){if(!e)return null;let u=$i(e);if(!u)return null;let r=[];for(let n of t)u.some(i=>Zo(n.value,i))&&r.push(n.label);return r.length===t.length?null:r}function Qo(e){return e==null||e===""}function Xo(e,t,u){let r=[],n=-1,i,a,l=s=>{n>=0&&s-n>1&&r.push({start:n,end:s-1,length:s-n}),n=-1,a=void 0};for(let s=0;s<e.length;s++){let m=e[s];if(!m||m.kind!=="data"){l(s);continue}let c=m.data,h=t(c);if(Qo(h)){l(s);continue}n>=0&&a!==void 0&&(u?u({value:h,row:c},{value:i,row:a}):Object.is(h,i))||(l(s),n=s,i=h,a=c)}return l(e.length),r}function el(e,t){let u=0,r=e.length-1;for(;u<=r;){let n=u+r>>1,i=e[n];if(t<i.start)r=n-1;else if(t>i.end)u=n+1;else return i}return null}function _i(e,t,u,r=Number.POSITIVE_INFINITY){let n=el(e,t);if(!n)return null;let i=Math.max(n.start,u);if(t!==i)return{role:"covered"};let a=Math.min(n.end,r);return{role:"draw",span:n,drawStart:i,drawEnd:a,clippedAbove:n.start<i,clippedBelow:n.end>a}}function ji(e,t=globalThis){let u=new Map,r=!1,n=i=>{let a=u.get(i);a!==void 0&&(t.clearTimeout(a),u.delete(i))};return{schedule(i,a){if(!r){if(n(i),e<=0){a();return}u.set(i,t.setTimeout(()=>{u.delete(i),r||a()},e))}},cancel:n,cancelAll(){for(let i of u.values())t.clearTimeout(i);u.clear()},dispose(){r=!0;for(let i of u.values())t.clearTimeout(i);u.clear()},isPending(i){return u.has(i)},get pendingCount(){return u.size}}}var tl=30,oi="Other",ul=1e4;function Yi(e){return!e.series.some(t=>t.aggregate==="custom")}function rl(e){return e==null?"":String(e)}var Ue=864e5,nl=60,il=20,Cu=2e3,pr=["day","week","month","quarter","year"],li={day:Ue,week:7*Ue,month:30.44*Ue,quarter:91.31*Ue,year:365.25*Ue};function si(e,t){let u=new Date(e),r=u.getUTCFullYear(),n=u.getUTCMonth();switch(t){case"day":return Date.UTC(r,n,u.getUTCDate());case"week":{let i=Date.UTC(r,n,u.getUTCDate()),a=(new Date(i).getUTCDay()+6)%7;return i-a*Ue}case"month":return Date.UTC(r,n,1);case"quarter":return Date.UTC(r,Math.floor(n/3)*3,1);default:return Date.UTC(r,0,1)}}function di(e,t){let u=new Date(e),r=u.getUTCFullYear(),n=u.getUTCMonth();switch(t){case"day":return e+Ue;case"week":return e+7*Ue;case"month":return Date.UTC(r,n+1,1);case"quarter":return Date.UTC(r,n+3,1);default:return Date.UTC(r+1,0,1)}}var mr=e=>e<10?`0${e}`:String(e);function al(e,t){let u=new Date(e),r=u.getUTCFullYear();switch(t){case"year":return String(r);case"quarter":return`${r}-Q${Math.floor(u.getUTCMonth()/3)+1}`;case"month":return`${r}-${mr(u.getUTCMonth()+1)}`;default:return`${r}-${mr(u.getUTCMonth()+1)}-${mr(u.getUTCDate())}`}}function ol(e){if(!(e>0)||!Number.isFinite(e))return 1;let t=10**Math.floor(Math.log10(e)),u=e/t;return(u<=1?1:u<=2?2:u<=5?5:10)*t}function ll(e,t,u){let r=Number.isFinite(t)&&Number.isFinite(u)?Math.max(0,u-t):0;if(e.kind==="date"){let l=e.unit??"auto",s,m=!1;if(l==="auto")s=pr.find(c=>r/li[c]+1<=nl)??"year";else for(s=l;r/li[s]+1>Cu;){let c=pr[pr.indexOf(s)+1];if(!c)break;s=c,m=!0}return{info:{kind:"date",unit:s,adjusted:m},keyOf:c=>Number.isFinite(c)?si(c,s):Number.NaN,endOf:c=>di(c,s),labelOf:c=>al(c,s),keys:(c,h)=>{let w=[];if(!Number.isFinite(c)||!Number.isFinite(h))return w;for(let g=si(c,s);g<=h&&w.length<Cu;g=di(g,s))w.push(g);return w}}}let n=e.size&&e.size>0?e.size:ol(r/Math.max(1,e.bins??il));(!(n>0)||!Number.isFinite(n))&&(n=1);let i=!1;for(;r/n+1>Cu;)n*=2,i=!0;let a=n;return{info:{kind:"number",size:a,adjusted:i},keyOf:l=>Number.isFinite(l)?Math.floor(l/a)*a:Number.NaN,endOf:l=>l+a,labelOf:l=>{let s=m=>String(Number(m.toPrecision(12)));return`${s(l)} \u2013 ${s(l+a)}`},keys:(l,s)=>{let m=[];if(!Number.isFinite(l)||!Number.isFinite(s))return m;let c=Math.floor(l/a)*a;for(let h=c;h<=s&&m.length<Cu;h+=a)m.push(h);return m}}}function ci(e,t){if(e==null)return Number.NaN;if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(t==="number")return Number(e);let u=Number(e);return Number.isNaN(u)?Date.parse(String(e)):u}function gr(e,t,u,r={}){let n=Math.max(1,u.maxCategories??tl),i=u.otherBucket!==!1,a=r.effectiveValue,l=u.series.map(O=>t.getDataType(O.columnId)),s=u.series.some(O=>O.aggregate==="custom"),m=new Map,c=null,h=0,w=0,g=!1,y=(O,z=Number.NaN)=>({label:O,accs:u.series.map((Q,j)=>Mr(Q.columnId,Q.aggregate,l[j],`${j}`)),seq:w++,start:z}),F=u.categoryBucket,S=null,T=Number.POSITIVE_INFINITY,N=Number.NEGATIVE_INFINITY;if(F){for(let O=0;O<e.length;O++){let z=e[O];if(!z||!at(z))continue;let Q=t.getCellValue(z.data,u.categoryColumnId),j=ci(a?a(z.key,u.categoryColumnId,Q):Q,F.kind);Number.isFinite(j)&&(j<T&&(T=j),j>N&&(N=j))}S=ll(F,T,N)}let V=s?new Map:null;for(let O=0;O<e.length;O++){let z=e[O];if(!z||!at(z))continue;h++;let Q=t.getCellValue(z.data,u.categoryColumnId),j=a?a(z.key,u.categoryColumnId,Q):Q,xe,qe,be=Number.NaN;S&&F?(be=S.keyOf(ci(j,F.kind)),xe=Number.isNaN(be)?"":be,qe=Number.isNaN(be)?"":S.labelOf(be)):xe=qe=rl(j);let Ce=m.get(xe);Ce||(m.size>=ul?(g=!0,c??=y(u.otherLabel??oi),Ce=c):(Ce=y(qe,be),m.set(xe,Ce)));for(let le=0;le<u.series.length;le++){let ne=u.series[le];if(ne.aggregate==="custom")continue;let ue=t.getCellValue(z.data,ne.columnId);vu(Ce.accs[le],a?a(z.key,ne.columnId,ue):ue)}if(V){let le=V.get(Ce.label);le||(le=u.series.map(()=>[]),V.set(Ce.label,le));for(let ne=0;ne<u.series.length;ne++){let ue=u.series[ne];if(ue.aggregate!=="custom")continue;let _e=t.getCellValue(z.data,ue.columnId);le[ne].push({row:r.effectiveRow?r.effectiveRow(z.key,z.data):z.data,value:a?a(z.key,ue.columnId,_e):_e})}}}let K=[...m.values()],Z=K.length+(c?1:0),W=O=>(u.series.length>0?xu(O.accs[0]):null)??Number.NEGATIVE_INFINITY,J,fe;if(S){J=S.keys(T,N).map(z=>m.get(z)??y(S.labelOf(z),z));let O=m.get("");O&&J.push(O),fe=null}else{let O=K;if(K.length>n){let z=[...K].sort((Q,j)=>W(j)-W(Q));if(O=z.slice(0,n),i){c??=y(u.otherLabel??oi);for(let Q of z.slice(n))for(let j=0;j<u.series.length;j++)Bo(c.accs[j],Q.accs[j])}}switch(u.categoryOrder??"value-desc"){case"category-asc":O=[...O].sort((z,Q)=>z.label.localeCompare(Q.label));break;case"first-seen":O=[...O].sort((z,Q)=>z.seq-Q.seq);break;default:O=[...O].sort((z,Q)=>W(Q)-W(z))}J=c?[...O,c]:O,fe=c?J.length-1:null}let Re=J.map(O=>O.label),bt=u.series.map((O,z)=>{let Q=new Float64Array(J.length);for(let j=0;j<J.length;j++){let xe;if(O.aggregate==="custom"){let qe=V?.get(J[j].label)?.[z]??[];xe=O.calculate?O.calculate(qe):null}else xe=xu(J[j].accs[z]);Q[j]=xe??Number.NaN}return{label:O.label??t.getDef(O.columnId)?.headerName??O.columnId,columnId:O.columnId,aggregate:O.aggregate,values:Q}});return{categories:Re,series:bt,truncated:S?!1:K.length>n||g,otherIndex:fe,rowCount:h,categoryCount:S?J.length:Z,rankingExact:!g,...sl(S,J)}}function sl(e,t){if(!e)return{};let u=new Float64Array(t.length),r=new Float64Array(t.length);for(let n=0;n<t.length;n++){let i=t[n].start;u[n]=i,r[n]=Number.isNaN(i)?Number.NaN:e.endOf(i)}return{bucket:e.info,bucketStarts:u,bucketEnds:r}}function dl(e){if(typeof e=="function")return e;let t=e;return u=>u[t]}function $e(e,t,u){return{kind:"data",key:t,sourceIndex:u,data:e}}var Zi=class{nodes=[];rows=null;invalidate(){this.nodes=[],this.rows=null}invalidateSourceIndex(e){e>=0&&e<this.nodes.length&&(this.nodes[e]=void 0)}rebase(e,t){if(this.rows===null||this.nodes.length!==e.length){this.rows=e,this.nodes=new Array(e.length);return}this.rows=e;for(let u of t)this.invalidateSourceIndex(u)}project(e,t,u){this.rows!==t&&(this.nodes=new Array(t.length),this.rows=t);let r=this.nodes,n=new Array(e.length);for(let i=0;i<e.length;i++){let a=e[i],l=r[a];if(l===void 0){let s=t[a];l=$e(s,u(s),a),r[a]=l}n[i]=l}return n}},cl="\0nil";function hl(e){return e.map(t=>t==null?cl:String(t)).join("")}function hi(){return{key:"",path:[],level:-1,label:"",value:null,count:0,expanded:!0,childCount:0,childCountKnown:!1,blocks:new Map}}function pl(e,t,u){return e.blocks.get(Math.floor(t/u))?.[t%u]}function Su(e,t,u){let r=u?.get(e);if(r!==void 0)return r;let n=e.childCountKnown?e.childCount:1;for(let i of e.blocks.values())for(let a of i)a&&Ot(a)&&a.expanded&&(n+=Su(a,t,u));return u?.set(e,n),n}function Ot(e){return e.kind!=="data"}function pi(e,t){let{blockSize:u,columnIds:r}=t,n=new Map,i=Su(e,u,n),a=t.range?Math.max(0,t.range.start):0,l=t.range?Math.min(i,t.range.end):i,s=new Array(i),m=[],c=new Set,h=0,w=g=>{if(!g.childCountKnown){h>=a&&h<l&&!c.has(`${g.key}@0`)&&(c.add(`${g.key}@0`),m.push({nodeKey:g.key,path:g.path,childIndex:0})),h++;return}for(let y=0;y<g.childCount;y++){if(h>=l)return;let F=pl(g,y,u);if(F===void 0){if(h>=a){let S=`${g.key}@${Math.floor(y/u)}`;c.has(S)||(c.add(S),m.push({nodeKey:g.key,path:g.path,childIndex:y}))}h++;continue}if(!Ot(F)){h>=a&&(s[h]=F),h++;continue}if(h>=a){let S={kind:"group",key:F.key,columnId:r[F.level]??"",value:F.value,label:F.label,count:F.count,level:F.level,expanded:F.expanded,...F.aggregates?{aggregates:F.aggregates}:{}};s[h]=S}if(h++,F.expanded){let S=Su(F,u,n);h+S<=a?h+=S:w(F)}}};return w(e),{nodes:s,pending:m}}var ml=class extends Error{constructor(){super("[datagrid] export cancelled"),this.name="ExportCancelled"}},gl=100,fl=100;function Cl(e,t){return JSON.stringify({sort:e.sort,filter:e.filter,searchText:e.searchText,group:t,summaries:e.summaries})}var mi=class{mode="remote";source;keyGetter;blockSize;maxBlocks;group;groupColumnIds;root=hi();expanded=new Set;onError;debugMode;blocks=new Map;inFlight=new Map;treeInFlight=new Map;currentKey="";generation=0;clock=0;distinctCache=new Map;distinctInFlight=new Map;summaries={};visibleCount=0;totalCount=0;countKnown=!1;disposed=!1;constructor(e,t){this.source=e,this.keyGetter=t.keyGetter,this.blockSize=Math.max(1,t.blockSize??gl),this.maxBlocks=Math.max(1,t.maxBlocks??fl),this.group=t.group,this.groupColumnIds=t.groupColumnIds??[],this.onError=t.onError,this.debugMode=t.debugMode??!1}getTotalCount(){return this.totalCount}invalidate(){this.blocks.clear(),this.inFlight.clear(),this.treeInFlight.clear(),this.resetTree(),this.distinctCache.clear(),this.countKnown=!1,this.generation++}dispose(){this.disposed=!0,this.blocks.clear(),this.inFlight.clear(),this.treeInFlight.clear(),this.distinctCache.clear(),this.distinctInFlight.clear(),this.resetTree()}setGrouping(e,t){this.group=e&&e.length>0?e:void 0,this.groupColumnIds=t,this.resetTree(),this.expanded.clear(),this.generation++}isGrouped(){return(this.group?.length??0)>0}toggleGroupPath(e){let t=this.findNode(e);return t?(t.expanded=!t.expanded,t.expanded?this.expanded.add(e):this.expanded.delete(e),!0):!1}setExpandedPaths(e){this.expanded=new Set(e),this.applyExpansion(this.root)}applyExpansion(e){for(let t of e.blocks.values())for(let u of t)u&&Ot(u)&&(u.expanded=this.expanded.has(u.key),this.applyExpansion(u))}findNode(e,t=this.root){if(t.key===e)return t;for(let u of t.blocks.values())for(let r of u)if(r&&Ot(r)){let n=this.findNode(e,r);if(n)return n}return null}resetTree(){this.root=hi()}async loadAllRows(e,t){if(this.isGrouped())throw new Error("[datagrid] cannot export a server-grouped grid: the rows live in a tree the server expands on demand. Clear the grouping and export the flat result, or produce the file on the server.");let u=[],r=Math.max(1,t.pageSize),n=Number.POSITIVE_INFINITY;for(;u.length<n;){if(t.isCancelled?.()||this.disposed)throw new ml;let i=await this.source.load({skip:u.length,take:r,sort:e.sort,filter:e.filter,searchText:e.searchText});if(n=i.totalCount,n>t.maxRows)throw new Error(`[datagrid] the export would cover ${n.toLocaleString("en-US")} rows, above the ${t.maxRows.toLocaleString("en-US")} limit. Raise \`remote.exportMaxRows\` if the machine can hold that much, narrow the filter, or build the file on the server.`);if(i.rows.length===0)break;for(let a of i.rows)u.push($e(a,this.keyGetter(a),u.length));t.onProgress?.(u.length,n)}return u}patchRows(e){if(e.length===0)return 0;let t=new Map;for(let i of e)t.set(this.keyGetter(i),i);let u=0,r=i=>{for(let a=0;a<i.length;a++){let l=i[a];if(!l)continue;let s=t.get(l.key);s!==void 0&&(i[a]=$e(s,l.key,l.sourceIndex),u++)}};for(let i of this.blocks.values())r(i.nodes);let n=i=>{for(let a of i.blocks.values())for(let l=0;l<a.length;l++){let s=a[l];if(!s)continue;if(Ot(s)){n(s);continue}let m=t.get(s.key);m!==void 0&&(a[l]=$e(m,s.key,s.sourceIndex),u++)}};return n(this.root),u}getSummaries(){return this.summaries}supportsDistinctValues(){return typeof this.source.loadDistinctValues=="function"}async loadDistinctValues(e,t){let u=this.source.loadDistinctValues;if(!u)return[];let r=`${e}@${t}`,n=this.distinctCache.get(r);if(n)return n;let i=this.distinctInFlight.get(r);if(i)return i;let a=this.generation,l=u.call(this.source,{columnId:e,limit:t}).then(s=>(!this.disposed&&a===this.generation&&this.distinctCache.set(r,s),s)).catch(s=>(this.onError?.(s),this.debugMode&&console.error("[datagrid] loadDistinctValues failed",s),[])).finally(()=>{this.distinctInFlight.delete(r)});return this.distinctInFlight.set(r,l),l}async getRows(e,t){let u=Cl(t,this.group);if(u!==this.currentKey&&(this.currentKey=u,this.blocks.clear(),this.inFlight.clear(),this.treeInFlight.clear(),this.resetTree(),this.countKnown=!1,this.summaries={},this.generation++),this.isGrouped())return this.getGroupedRows(t);this.countKnown||await this.fetchBlock(0,t);let r=t.range??{start:0,end:this.blockSize},n=Math.max(0,Math.floor(r.start/this.blockSize)),i=Math.max(n,Math.floor(Math.max(0,r.end-1)/this.blockSize)),a=[];for(let l=n;l<=i;l++)this.blocks.has(l)?this.blocks.get(l).touched=++this.clock:a.push(l);return a.length>0&&await Promise.all(a.map(l=>this.fetchBlock(l,t))),this.snapshot()}async getGroupedRows(e){let t=e.range,u=(this.group?.length??0)+2;for(let i=0;i<u;i++){if(!this.root.childCountKnown){await this.loadChildren(this.root,0,e);continue}let{pending:a}=pi(this.root,{blockSize:this.blockSize,columnIds:this.groupColumnIds,range:t});if(a.length===0)break;await Promise.all(a.map(l=>{let s=this.findNode(l.nodeKey);return s?this.loadChildren(s,l.childIndex,e):Promise.resolve()}))}let{nodes:r}=pi(this.root,{blockSize:this.blockSize,columnIds:this.groupColumnIds,range:t}),n=Su(this.root,this.blockSize);return this.visibleCount=n,{nodes:r,visibleCount:n,totalCount:this.totalCount}}loadChildren(e,t,u){let r=Math.floor(t/this.blockSize);if(e.blocks.has(r))return Promise.resolve();let n=`${e.key}@${r}`,i=this.treeInFlight.get(n);if(i)return i;let a=this.loadChildrenBlock(e,r,u).finally(()=>{this.treeInFlight.get(n)===a&&this.treeInFlight.delete(n)});return this.treeInFlight.set(n,a),a}async loadChildrenBlock(e,t,u){let r=this.generation,n=this.group?.length??0,i=e.path.length>=n,a={skip:t*this.blockSize,take:this.blockSize,sort:u.sort,filter:u.filter,searchText:u.searchText,group:this.group,groupKeys:[...e.path],...e.path.length===0?{summaries:u.summaries}:{}};try{let l=await this.source.load(a);if(this.disposed||r!==this.generation)return;l.summaries&&(this.summaries=l.summaries);let s=t*this.blockSize,m=i?l.rows.map((c,h)=>$e(c,this.keyGetter(c),s+h)):(l.groups??[]).map(c=>{let h=[...e.path,c.value],w=hl(h);return{key:w,path:h,level:e.level+1,label:c.label??(c.value==null?"":String(c.value)),value:c.value,count:c.count,...c.aggregates?{aggregates:c.aggregates}:{},expanded:this.expanded.has(w),childCount:0,childCountKnown:!1,blocks:new Map}});e.blocks.set(t,m),e.childCount=l.totalCount,e.childCountKnown=!0,e===this.root&&(this.totalCount=l.totalCount,this.countKnown=!0)}catch(l){this.debugMode&&console.error("[datagrid] remote group load failed",e.key,l),this.onError?.(l)}}snapshot(){let e=new Array(this.visibleCount);for(let[t,u]of this.blocks){let r=t*this.blockSize;for(let n=0;n<u.nodes.length;n++){let i=r+n;i<this.visibleCount&&(e[i]=u.nodes[n])}}return{nodes:e,visibleCount:this.visibleCount,totalCount:this.totalCount}}fetchBlock(e,t){if(this.disposed||this.blocks.has(e))return Promise.resolve();let u=this.inFlight.get(e);if(u)return u;let r=this.loadBlock(e,t).finally(()=>{this.inFlight.get(e)===r&&this.inFlight.delete(e)});return this.inFlight.set(e,r),r}async loadBlock(e,t){let u=this.generation,r={skip:e*this.blockSize,take:this.blockSize,sort:t.sort,filter:t.filter,searchText:t.searchText,group:this.group,summaries:t.summaries};try{let n=await this.source.load(r);if(this.disposed||u!==this.generation)return;n.summaries&&(this.summaries=n.summaries);let i=e*this.blockSize,a=n.rows.map((l,s)=>$e(l,this.keyGetter(l),i+s));this.blocks.set(e,{nodes:a,touched:++this.clock}),this.evict(),this.visibleCount=n.totalCount,this.totalCount=n.totalCount,this.countKnown=!0}catch(n){this.debugMode&&console.error("[datagrid] remote block load failed",e,n),this.onError?.(n)}}evict(){if(this.blocks.size<=this.maxBlocks)return;let e=[...this.blocks.entries()].sort((u,r)=>u[1].touched-r[1].touched),t=this.blocks.size-this.maxBlocks;for(let u=0;u<t;u++)this.blocks.delete(e[u][0])}};var wl=e=>`__detail__${String(e)}`;function yl(e,t){let{expandedKeys:u,expandedByDefault:r=!1}=t,n=Math.max(1,t.height);if(!r&&u.size===0)return e;let i=r?e.length:u.size,a=new Array(e.length+i),l=0;for(let s of e)a[l++]=s,!(s.kind!=="data"||!(r?!u.has(s.key):u.has(s.key)))&&(a[l++]={kind:"detail",key:wl(s.key),parentKey:s.key,data:s.data,height:n});return a.length=l,a}var gi=e=>e===null?"__editform__new":`__editform__${String(e)}`;function El(e,t){let{rowKey:u,atTop:r=!1}=t;if(u===null)return e;let n=Math.max(1,t.height),i=e.findIndex(s=>s.kind==="data"&&s.key===u);if(r)return[{kind:"editform",key:gi(u),parentKey:u,data:i<0?void 0:e[i].data,height:n},...e];if(i<0)return e;let a={kind:"editform",key:gi(u),parentKey:u,data:e[i].data,height:n},l=new Array(e.length+1);for(let s=0;s<=i;s++)l[s]=e[s];l[i+1]=a;for(let s=i+1;s<e.length;s++)l[s+1]=e[s];return l}var Al=class{base;overrides=new Map;idx=[];size=[];top=[];cum=[];dirty=!1;constructor(e=28){this.base=Math.max(1,e)}isUniform(){return this.overrides.size===0}getBase(){return this.base}setBase(e){let t=Math.max(1,e);return t===this.base?!1:(this.base=t,this.dirty=!0,!0)}setOverrides(e){let t=new Map;if(e)for(let[u,r]of e){if(!Number.isInteger(u)||u<0)continue;let n=Math.max(0,r);n!==this.base&&t.set(u,n)}if(t.size===this.overrides.size){let u=!0;for(let[r,n]of t)if(this.overrides.get(r)!==n){u=!1;break}if(u)return!1}return this.overrides=t,this.dirty=!0,!0}clearOverrides(){return this.setOverrides(null)}getOverrides(){return this.overrides}heightOf(e){return this.overrides.get(e)??this.base}offsetOf(e){let t=Math.max(0,e);if(this.overrides.size===0)return t*this.base;this.rebuild();let u=fi(this.idx,t);return t*this.base+(u===0?0:this.cum[u-1])}totalHeight(e){let t=Math.max(0,e);if(this.overrides.size===0)return t*this.base;this.rebuild();let u=fi(this.idx,t);return t*this.base+(u===0?0:this.cum[u-1])}indexAt(e){let t=Math.max(0,e);if(this.overrides.size===0)return Math.floor(t/this.base);this.rebuild();let u=bl(this.top,t);if(u<0)return Math.floor(t/this.base);let r=this.top[u]+this.size[u];return t<r?this.idx[u]:this.idx[u]+1+Math.floor((t-r)/this.base)}rebuild(){if(!this.dirty)return;this.dirty=!1;let e=this.overrides.size;if(this.idx=new Array(e),this.size=new Array(e),this.top=new Array(e),this.cum=new Array(e),e===0)return;let t=0;for(let r of this.overrides.keys())this.idx[t++]=r;this.idx.sort((r,n)=>r-n);let u=0;for(let r=0;r<e;r++){let n=this.idx[r],i=this.overrides.get(n);this.size[r]=i,this.top[r]=n*this.base+u,u+=i-this.base,this.cum[r]=u}}};function fi(e,t){let u=0,r=e.length;for(;u<r;){let n=u+r>>>1;e[n]<t?u=n+1:r=n}return u}function bl(e,t){let u=0,r=e.length-1,n=-1;for(;u<=r;){let i=u+r>>>1;e[i]<=t?(n=i,u=i+1):r=i-1}return n}var vl=class{handlers={};on(e,t){let u=this.handlers[e]??new Set;return u.add(t),this.handlers[e]=u,()=>this.off(e,t)}off(e,t){this.handlers[e]?.delete(t)}emit(e,t){let u=this.handlers[e];u&&u.forEach(r=>r(t))}clear(){this.handlers={}}};var fr=["tr","en","de","fr","es","it","pt","ru","ar","zh-CN","ja","ko"];function xl(e){if(!e)return;if(fr.includes(e))return e;let t=e.toLowerCase(),u=fr.find(n=>n.toLowerCase()===t);if(u)return u;if(t.startsWith("zh"))return"zh-CN";let r=t.split("-")[0];return fr.find(n=>n.toLowerCase()===r)}function Dl(e,t,u,r){let n=xl(u),i=n?e[n]:void 0;return!i&&!r?t:{...t,...i,...r}}var Ji={ok:"OK",cancel:"Cancel",apply:"Apply",close:"Close",clear:"Clear",save:"Save",search:"Search\u2026",selectAll:"Select all",showAll:"Show all",remove:"Remove",none:"None",toolbarSearch:"Search\u2026",exportMenu:"Export",exportCsv:"Export to CSV",exportExcel:"Export all data to Excel",exportExcelSelected:"Export selected rows to Excel",exportPdf:"Export to PDF",exporting:"Exporting\u2026",columns:"Columns",hiddenColumns:"Hidden columns",noHiddenColumns:"No hidden columns.",sortAsc:"Sort A \u2192 Z",sortDesc:"Sort Z \u2192 A",clearSort:"Clear sorting",groupByColumn:"Group by this column",ungroupColumn:"Remove from grouping",showGroupPanel:"Show group panel",hideGroupPanel:"Hide group panel",showFooter:"Show footer",hideFooter:"Hide footer",showGroupFooters:"Show group footers",hideGroupFooters:"Hide group footers",hideColumn:"Hide this column",fieldChooser:"Field chooser\u2026",bestFit:"Best fit",bestFitAll:"Best fit (all columns)",fixedPosition:"Set fixed position",pinLeft:"Left",pinRight:"Right",pinSticky:"Sticky",unpin:"Unfix",moveLeft:"Move to the left",moveRight:"Move to the right",filterPlaceholder:"Filter\u2026",filterColumnAria:"Filter {column}",filterSelectAll:"Select all",filterBlank:"(Blanks)",filterNoMatch:"No matching values",filterLoading:"Loading values\u2026",filterTruncated:"Showing the first values only \u2014 search to find the rest.",filterRemove:"Remove the filter",filterToggle:"Apply the filter",filterEditBuilder:"Edit the filter",filterNone:"No filter",filterActive:"Filter active",opEquals:"is",opNotEquals:"is not",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"contains",opNotContains:"does not contain",opStartsWith:"starts with",opEndsWith:"ends with",opIsBlank:"is blank",opIsNotBlank:"is not blank",opIsOneOf:"is one of",opIsBetween:"is between",opValuesCount:"{n} values",filterAnd:"AND",filterOr:"OR",builderTitle:"Filter builder",builderCombine:"Combine conditions with",builderAddCondition:"Add condition",builderAddGroup:"Add group",builderRemoveGroup:"Remove group",builderRemoveCondition:"Remove condition",builderEmpty:"No conditions yet.",builderColumn:"Column",builderOperator:"Operator",builderValue:"Value",builderValueFrom:"From",builderValueTo:"To",builderValuePlaceholder:"Enter a value",groupPanelHint:"Drag a column here to group by it",groupAddLevel:"Add grouping level",groupAddLevelButton:"+ Add level\u2026",groupNoGrouping:"(no grouping)",groupLevelAria:"Grouping level {n}",groupRemoveAria:"Remove {column}",pagerFirst:"First page",pagerPrevious:"Previous page",pagerNext:"Next page",pagerLast:"Last page",pagerPage:"Page",pagerOf:"of",pagerRowsPerPage:"Rows per page",pagerAria:"Pagination",selectAllRows:"Select all rows",selectRowAria:"Select row {row}",summaryAria:"Summary",columnTotalsAria:"Column totals",rowActions:"Row actions",detailsAria:"Details",rowNumberAria:"Row number",noteEditorAria:"Cell note",notePlaceholder:"Write a note about this cell\u2026",addNote:"Add note\u2026",editNote:"Edit note\u2026",deleteNote:"Delete note",expandDetails:"Expand details",collapseDetails:"Collapse details",dragToReorder:"Drag to reorder",menuCopy:"Copy",menuCopyWithHeaders:"Copy with headers",menuCopyWithGroupHeaders:"Copy with group headers",menuCut:"Cut",menuPaste:"Paste",menuExport:"Export",menuChartRange:"Chart selected columns",statsSum:"Sum",statsCount:"Count",statsAvg:"Average",statsMin:"Min",statsMax:"Max",statsCells:"Cells",statsTooLarge:"Selection too large to total",statusRows:"Rows",statusFiltered:"Filtered",statusSelected:"Selected",summaryRows:"rows",announceRows:"{n} rows",announceSortedBy:"sorted by {columns}",announceSelected:"{n} selected",announceAscending:"ascending",announceDescending:"descending",sideFilters:"Filters",sideBarAria:"Tool panels",sideClearFilters:"Clear all filters",summarySum:"Sum",summaryAvg:"Avg",summaryMin:"Min",summaryMax:"Max",summaryCount:"Count",summaryDistinct:"Distinct",summaryCustom:"Custom",noTotal:"No total",busy:"Working\u2026",busyLoading:"Loading rows\u2026",busyEncoding:"Preparing data\u2026",busyFiltering:"Filtering rows\u2026",busySorting:"Sorting rows\u2026",busyComputing:"Filtering and sorting\u2026",busyGrouping:"Building groups\u2026",busyAggregating:"Calculating totals\u2026",busyProjecting:"Updating the view\u2026",busyExporting:"Building the file\u2026",noData:"No data",editNewRow:"New row",editSaveChanges:"Save changes",editDiscardChanges:"Discard changes",editRow:"Edit row",editRowMenu:"Edit row\u2026",editDeleteRow:"Delete row",editUndoDelete:"Undo delete",editActions:"Actions",editSaveRow:"Save row",editSaving:"Saving\u2026",editEditingRow:"Editing row {row}",editSaveCount:"Save {n} row(s)",editCannotSave:"Cannot save",editSaveFailed:"Could not save the changes.",editDeleteConfirm:"Delete this row?",editAddRowUndo:"Add row",editDeleteRowUndo:"Delete row",editCellUndo:"Edit {column}",editFillUndo:"Fill {count} cells",editPasteUndo:"Paste {count} cells",editCutUndo:"Cut {count} cells",editNoMatch:"No match",formEditTitle:"Edit row",formAddTitle:"New row",formShortcut:"{key}+Enter to save \xB7 Esc to cancel",validationRequired:"This field is required",validationNumber:"Must be a number",validationFormat:"Invalid format",validationEmail:"Invalid email address",validationInvalid:"Invalid value",dateCalendar:"Calendar",dateOpenCalendar:"Open calendar",datePreviousMonth:"Previous month",dateNextMonth:"Next month",monthJanuary:"January",monthFebruary:"February",monthMarch:"March",monthApril:"April",monthMay:"May",monthJune:"June",monthJuly:"July",monthAugust:"August",monthSeptember:"September",monthOctober:"October",monthNovember:"November",monthDecember:"December",weekStartsOn:"0",weekdaySu:"Su",weekdayMo:"Mo",weekdayTu:"Tu",weekdayWe:"We",weekdayTh:"Th",weekdayFr:"Fr",weekdaySa:"Sa",importTitle:"Import data",importStepSource:"1. Source",importStepMap:"2. Map columns",importFile:"CSV file",importPaste:"\u2026or paste rows",importSeparator:"Separator",importSeparatorAuto:"Detect automatically",importSeparatorComma:"Comma ,",importSeparatorSemicolon:"Semicolon ;",importSeparatorTab:"Tab",importSeparatorPipe:"Pipe |",importFileColumn:"File column",importDetected:"Detected",importGridColumn:"Grid column",importSample:"Sample",importSkip:"\u2014 skip \u2014",importPreview:"Preview",importNoSource:"Choose a file or paste some rows first.",importNoRows:"No data rows were found.",importAction:"Import",exportAborted:"Export aborted",exportSheetName:"Data",chart:"Chart",chartCategory:"Category",chartSeries:"Series",chartAddSeries:"Add series",chartRemoveSeries:"Remove",chartSource:"Data",chartSourceView:"Filtered rows",chartSourceSelection:"Selected rows",chartSourceAll:"All rows",chartClose:"Close chart",chartFullscreen:"Fullscreen",chartExitFullscreen:"Exit fullscreen",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"The chart could not be exported.",chartCrossFiltered:"The grid is filtered to {value}.",chartBlankCategory:"(blank)",chartTruncated:'Showing the top {n} categories; the rest are grouped as "Other".',chartOther:"Other",chartEmpty:"Nothing to chart yet.",chartNeedsRecharts:"Charts need the optional peer `recharts`. Install it to draw them.",chartOnlyOneSeries:"This chart type shows one series.",chartByColumn:"Chart by this column",chartGroupBy:"By",chartGroupNone:"Each value",chartGroupAuto:"Auto",chartGroupDay:"Day",chartGroupWeek:"Week",chartGroupMonth:"Month",chartGroupQuarter:"Quarter",chartGroupYear:"Year",chartGroupBins:"{n} bins",chartBucketAdjusted:"Too many intervals for one axis \u2014 grouped more coarsely.",chartWindowed:"Showing {shown} of {total}.",chartShowAll:"Show all",chartCanvasHint:"Chart. Scroll to zoom, drag to pan, arrow keys to move, 0 to show all.",chartAggSum:"Sum",chartAggAvg:"Average",chartAggMin:"Min",chartAggMax:"Max",chartAggCount:"Count",chartAggDistinct:"Distinct",chartTypeColumn:"Column",chartTypeBar:"Bar",chartTypeLine:"Line",chartTypeArea:"Area",chartTypePie:"Pie",chartTypeDonut:"Donut",licenseMissing:"Unlicensed",licenseExpired:"License expired",licenseReleaseNotCovered:"This version is not covered by the license",licenseDomainMismatch:"License not valid for this domain",licenseRevoked:"License revoked",licenseInvalidFormat:"Malformed license key",licenseInvalidSignature:"Invalid license signature",licenseEngineUnavailable:"Browser cannot verify the license (HTTPS required)"},Fl={ok:"Tamam",cancel:"\u0130ptal",apply:"Uygula",close:"Kapat",clear:"Temizle",save:"Kaydet",search:"Ara...",selectAll:"T\xFCm\xFCn\xFC Se\xE7",showAll:"T\xFCm\xFCn\xFC g\xF6ster",remove:"Kald\u0131r",none:"Yok",toolbarSearch:"Ara...",exportMenu:"D\u0131\u015Fa Aktar",exportCsv:"CSV'ye aktar",exportExcel:"T\xFCm veriyi Excel'e aktar",exportExcelSelected:"Se\xE7ili sat\u0131rlar\u0131 Excel'e aktar",exportPdf:"PDF'e aktar",exporting:"D\u0131\u015Fa aktar\u0131l\u0131yor\u2026",columns:"S\xFCtunlar",hiddenColumns:"Gizli s\xFCtunlar",noHiddenColumns:"Gizli s\xFCtun yok.",sortAsc:"A'dan Z'ye S\u0131rala",sortDesc:"Z'den A'ya S\u0131rala",clearSort:"S\u0131ralamay\u0131 Temizle",groupByColumn:"Bu s\xFCtuna g\xF6re grupla",ungroupColumn:"Gruplamadan \xE7\u0131kar",showGroupPanel:"Gruplama panelini g\xF6ster",hideGroupPanel:"Gruplama panelini gizle",showFooter:"Alt bilgiyi g\xF6ster",hideFooter:"Alt bilgiyi gizle",showGroupFooters:"Grup alt bilgilerini g\xF6ster",hideGroupFooters:"Grup alt bilgilerini gizle",hideColumn:"Bu s\xFCtunu gizle",fieldChooser:"Alan se\xE7ici\u2026",bestFit:"En uygun geni\u015Flik",bestFitAll:"En uygun geni\u015Flik (t\xFCm s\xFCtunlar)",fixedPosition:"Sabit konum ayarla",pinLeft:"Sol",pinRight:"Sa\u011F",pinSticky:"Yap\u0131\u015Fkan",unpin:"Sabitlemeyi kald\u0131r",moveLeft:"Sola ta\u015F\u0131",moveRight:"Sa\u011Fa ta\u015F\u0131",filterPlaceholder:"Filtrele\u2026",filterColumnAria:"{column} filtrele",filterSelectAll:"T\xFCm\xFCn\xFC se\xE7",filterBlank:"(Bo\u015Flar)",filterNoMatch:"E\u015Fle\u015Fen de\u011Fer yok",filterLoading:"De\u011Ferler y\xFCkleniyor\u2026",filterTruncated:"Yaln\u0131zca ilk de\u011Ferler g\xF6steriliyor \u2014 kalan\u0131n\u0131 bulmak i\xE7in aray\u0131n.",filterRemove:"Filtreyi kald\u0131r",filterToggle:"Filtreyi uygula",filterEditBuilder:"Filtreyi d\xFCzenle",filterNone:"Filtre yok",filterActive:"Filtre etkin",opEquals:"e\u015Fittir",opNotEquals:"e\u015Fit de\u011Fildir",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"i\xE7erir",opNotContains:"i\xE7ermez",opStartsWith:"ile ba\u015Flar",opEndsWith:"ile biter",opIsBlank:"bo\u015Ftur",opIsNotBlank:"bo\u015F de\u011Fildir",opIsOneOf:"\u015Funlardan biridir",opIsBetween:"aras\u0131ndad\u0131r",opValuesCount:"{n} de\u011Fer",filterAnd:"VE",filterOr:"VEYA",builderTitle:"Filtre olu\u015Fturucu",builderCombine:"Ko\u015Fullar\u0131 \u015Fununla birle\u015Ftir",builderAddCondition:"Ko\u015Ful ekle",builderAddGroup:"Grup ekle",builderRemoveGroup:"Grubu kald\u0131r",builderRemoveCondition:"Ko\u015Fulu kald\u0131r",builderEmpty:"Hen\xFCz ko\u015Ful yok.",builderColumn:"S\xFCtun",builderOperator:"Operat\xF6r",builderValue:"De\u011Fer",builderValueFrom:"Ba\u015Flang\u0131\xE7",builderValueTo:"Biti\u015F",builderValuePlaceholder:"Bir de\u011Fer girin",groupPanelHint:"Gruplamak i\xE7in buraya bir s\xFCtun s\xFCr\xFCkleyin",groupAddLevel:"Gruplama d\xFCzeyi ekle",groupAddLevelButton:"+ D\xFCzey ekle\u2026",groupNoGrouping:"(gruplama yok)",groupLevelAria:"{n}. gruplama d\xFCzeyi",groupRemoveAria:"{column} kald\u0131r",pagerFirst:"\u0130lk sayfa",pagerPrevious:"\xD6nceki sayfa",pagerNext:"Sonraki sayfa",pagerLast:"Son sayfa",pagerPage:"Sayfa",pagerOf:"/",pagerRowsPerPage:"Sayfa ba\u015F\u0131na sat\u0131r",pagerAria:"Sayfalama",selectAllRows:"T\xFCm sat\u0131rlar\u0131 se\xE7",selectRowAria:"{row} numaral\u0131 sat\u0131r\u0131 se\xE7",summaryAria:"\xD6zet",columnTotalsAria:"S\xFCtun toplamlar\u0131",rowActions:"Sat\u0131r i\u015Flemleri",detailsAria:"Ayr\u0131nt\u0131lar",rowNumberAria:"Sat\u0131r numaras\u0131",noteEditorAria:"H\xFCcre notu",notePlaceholder:"Bu h\xFCcre hakk\u0131nda bir not yaz\u0131n\u2026",addNote:"Not ekle\u2026",editNote:"Notu d\xFCzenle\u2026",deleteNote:"Notu sil",expandDetails:"Ayr\u0131nt\u0131lar\u0131 geni\u015Flet",collapseDetails:"Ayr\u0131nt\u0131lar\u0131 daralt",dragToReorder:"S\u0131ralamak i\xE7in s\xFCr\xFCkleyin",menuCopy:"Kopyala",menuCopyWithHeaders:"Ba\u015Fl\u0131klarla kopyala",menuCopyWithGroupHeaders:"Grup ba\u015Fl\u0131klar\u0131yla kopyala",menuCut:"Kes",menuPaste:"Yap\u0131\u015Ft\u0131r",menuExport:"D\u0131\u015Fa aktar",menuChartRange:"Se\xE7ili s\xFCtunlar\u0131 grafi\u011Fe d\xF6k",statsSum:"Toplam",statsCount:"Say",statsAvg:"Ortalama",statsMin:"Min",statsMax:"Max",statsCells:"H\xFCcre",statsTooLarge:"Se\xE7im toplanamayacak kadar b\xFCy\xFCk",statusRows:"Sat\u0131r",statusFiltered:"Filtreli",statusSelected:"Se\xE7ili",summaryRows:"sat\u0131r",announceRows:"{n} sat\u0131r",announceSortedBy:"{columns} ile s\u0131ral\u0131",announceSelected:"{n} se\xE7ili",announceAscending:"artan",announceDescending:"azalan",sideFilters:"Filtreler",sideBarAria:"Ara\xE7 panelleri",sideClearFilters:"T\xFCm filtreleri temizle",summarySum:"Toplam",summaryAvg:"Ortalama",summaryMin:"Min",summaryMax:"Max",summaryCount:"Say",summaryDistinct:"Benzersiz",summaryCustom:"\xD6zel",noTotal:"Toplam yok",busy:"\xC7al\u0131\u015F\u0131yor\u2026",busyLoading:"Sat\u0131rlar y\xFCkleniyor\u2026",busyEncoding:"Veri haz\u0131rlan\u0131yor\u2026",busyFiltering:"Sat\u0131rlar filtreleniyor\u2026",busySorting:"Sat\u0131rlar s\u0131ralan\u0131yor\u2026",busyComputing:"Filtreleniyor ve s\u0131ralan\u0131yor\u2026",busyGrouping:"Gruplar olu\u015Fturuluyor\u2026",busyAggregating:"Toplamlar hesaplan\u0131yor\u2026",busyProjecting:"G\xF6r\xFCn\xFCm g\xFCncelleniyor\u2026",busyExporting:"Dosya olu\u015Fturuluyor\u2026",noData:"Veri Bulunamad\u0131",editNewRow:"Yeni sat\u0131r",editSaveChanges:"De\u011Fi\u015Fiklikleri kaydet",editDiscardChanges:"De\u011Fi\u015Fiklikleri iptal et",editRow:"Sat\u0131r\u0131 d\xFCzenle",editRowMenu:"Sat\u0131r\u0131 d\xFCzenle\u2026",editDeleteRow:"Sat\u0131r\u0131 sil",editUndoDelete:"Silmeyi geri al",editActions:"Aksiyonlar",editSaveRow:"Sat\u0131r\u0131 kaydet",editSaving:"Kaydediliyor\u2026",editEditingRow:"{row} numaral\u0131 sat\u0131r d\xFCzenleniyor",editSaveCount:"{n} sat\u0131r\u0131 kaydet",editCannotSave:"Kaydedilemiyor",editSaveFailed:"De\u011Fi\u015Fiklikler kaydedilemedi.",editDeleteConfirm:"Bu sat\u0131r silinsin mi?",editAddRowUndo:"Sat\u0131r ekle",editDeleteRowUndo:"Sat\u0131r sil",editCellUndo:"{column} d\xFCzenle",editFillUndo:"{count} h\xFCcre doldur",editPasteUndo:"{count} h\xFCcre yap\u0131\u015Ft\u0131r",editCutUndo:"{count} h\xFCcre kes",editNoMatch:"E\u015Fle\u015Fme yok",formEditTitle:"Sat\u0131r\u0131 d\xFCzenle",formAddTitle:"Yeni sat\u0131r",formShortcut:"Kaydetmek i\xE7in {key}+Enter \xB7 \u0130ptal i\xE7in Esc",validationRequired:"Bu alan zorunludur",validationNumber:"Say\u0131 olmal\u0131d\u0131r",validationFormat:"Ge\xE7ersiz bi\xE7im",validationEmail:"Ge\xE7ersiz e-posta adresi",validationInvalid:"Ge\xE7ersiz de\u011Fer",dateCalendar:"Takvim",dateOpenCalendar:"Takvimi a\xE7",datePreviousMonth:"\xD6nceki ay",dateNextMonth:"Sonraki ay",monthJanuary:"Ocak",monthFebruary:"\u015Eubat",monthMarch:"Mart",monthApril:"Nisan",monthMay:"May\u0131s",monthJune:"Haziran",monthJuly:"Temmuz",monthAugust:"A\u011Fustos",monthSeptember:"Eyl\xFCl",monthOctober:"Ekim",monthNovember:"Kas\u0131m",monthDecember:"Aral\u0131k",weekStartsOn:"1",weekdaySu:"Pz",weekdayMo:"Pt",weekdayTu:"Sa",weekdayWe:"\xC7a",weekdayTh:"Pe",weekdayFr:"Cu",weekdaySa:"Ct",importTitle:"Veri i\xE7e aktar",importStepSource:"1. Kaynak",importStepMap:"2. S\xFCtun e\u015Fleme",importFile:"CSV dosyas\u0131",importPaste:"\u2026veya sat\u0131rlar\u0131 yap\u0131\u015Ft\u0131r\u0131n",importSeparator:"Ay\u0131r\u0131c\u0131",importSeparatorAuto:"Otomatik alg\u0131la",importSeparatorComma:"Virg\xFCl ,",importSeparatorSemicolon:"Noktal\u0131 virg\xFCl ;",importSeparatorTab:"Sekme",importSeparatorPipe:"Dikey \xE7izgi |",importFileColumn:"Dosya s\xFCtunu",importDetected:"Alg\u0131lanan",importGridColumn:"Tablo s\xFCtunu",importSample:"\xD6rnek",importSkip:"\u2014 atla \u2014",importPreview:"\xD6nizleme",importNoSource:"\xD6nce bir dosya se\xE7in veya sat\u0131r yap\u0131\u015Ft\u0131r\u0131n.",importNoRows:"Veri sat\u0131r\u0131 bulunamad\u0131.",importAction:"\u0130\xE7e aktar",exportAborted:"D\u0131\u015Fa aktarma iptal edildi",exportSheetName:"Veri",chart:"Grafik",chartCategory:"Kategori",chartSeries:"Seri",chartAddSeries:"Seri ekle",chartRemoveSeries:"Kald\u0131r",chartSource:"Veri",chartSourceView:"Filtrelenmi\u015F sat\u0131rlar",chartSourceSelection:"Se\xE7ili sat\u0131rlar",chartSourceAll:"T\xFCm sat\u0131rlar",chartClose:"Grafi\u011Fi kapat",chartFullscreen:"Tam ekran",chartExitFullscreen:"Tam ekrandan \xE7\u0131k",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"Grafik d\u0131\u015Fa aktar\u0131lamad\u0131.",chartCrossFiltered:"Tablo {value} de\u011Ferine filtrelendi.",chartBlankCategory:"(bo\u015F)",chartTruncated:'En y\xFCksek {n} kategori g\xF6steriliyor; kalanlar "Di\u011Fer" alt\u0131nda topland\u0131.',chartOther:"Di\u011Fer",chartEmpty:"Hen\xFCz grafi\u011Fe d\xF6k\xFClecek bir \u015Fey yok.",chartNeedsRecharts:"Grafikler iste\u011Fe ba\u011Fl\u0131 `recharts` paketini gerektirir. \xC7izmek i\xE7in kurun.",chartOnlyOneSeries:"Bu grafik t\xFCr\xFC tek seri g\xF6sterir.",chartByColumn:"Bu s\xFCtuna g\xF6re grafik",chartGroupBy:"\u015Euna g\xF6re",chartGroupNone:"Her de\u011Fer",chartGroupAuto:"Otomatik",chartGroupDay:"G\xFCn",chartGroupWeek:"Hafta",chartGroupMonth:"Ay",chartGroupQuarter:"\xC7eyrek",chartGroupYear:"Y\u0131l",chartGroupBins:"{n} aral\u0131k",chartBucketAdjusted:"Bir eksen i\xE7in fazla aral\u0131k \u2014 daha kaba grupland\u0131.",chartWindowed:"{total} i\xE7inden {shown} g\xF6steriliyor.",chartShowAll:"T\xFCm\xFCn\xFC g\xF6ster",chartCanvasHint:"Grafik. Yak\u0131nla\u015Ft\u0131rmak i\xE7in kayd\u0131r\u0131n, kayd\u0131rmak i\xE7in s\xFCr\xFCkleyin, ok tu\u015Flar\u0131yla gezinin, t\xFCm\xFC i\xE7in 0.",chartAggSum:"Toplam",chartAggAvg:"Ortalama",chartAggMin:"Min",chartAggMax:"Max",chartAggCount:"Say",chartAggDistinct:"Benzersiz",chartTypeColumn:"S\xFCtun",chartTypeBar:"\xC7ubuk",chartTypeLine:"\xC7izgi",chartTypeArea:"Alan",chartTypePie:"Pasta",chartTypeDonut:"Halka",licenseMissing:"Lisanss\u0131z",licenseExpired:"Lisans\u0131n s\xFCresi dolmu\u015F",licenseReleaseNotCovered:"Bu s\xFCr\xFCm lisans kapsam\u0131nda de\u011Fil",licenseDomainMismatch:"Lisans bu alan ad\u0131 i\xE7in ge\xE7erli de\u011Fil",licenseRevoked:"Lisans iptal edilmi\u015F",licenseInvalidFormat:"Lisans anahtar\u0131 hatal\u0131",licenseInvalidSignature:"Lisans imzas\u0131 ge\xE7ersiz",licenseEngineUnavailable:"Taray\u0131c\u0131 lisans\u0131 do\u011Frulayam\u0131yor (HTTPS gerekli)"},Sl={ok:"OK",cancel:"Abbrechen",apply:"Anwenden",close:"Schlie\xDFen",clear:"L\xF6schen",save:"Speichern",search:"Suchen...",selectAll:"Alles ausw\xE4hlen",showAll:"Alle anzeigen",remove:"Entfernen",none:"Keine",toolbarSearch:"Suchen...",exportMenu:"Exportieren",exportCsv:"Als CSV exportieren",exportExcel:"Alle Daten nach Excel exportieren",exportExcelSelected:"Ausgew\xE4hlte Zeilen nach Excel exportieren",exportPdf:"Als PDF exportieren",exporting:"Wird exportiert\u2026",columns:"Spalten",hiddenColumns:"Ausgeblendete Spalten",noHiddenColumns:"Keine ausgeblendeten Spalten.",sortAsc:"Sortieren A \u2192 Z",sortDesc:"Sortieren Z \u2192 A",clearSort:"Sortierung l\xF6schen",groupByColumn:"Nach dieser Spalte gruppieren",ungroupColumn:"Aus Gruppierung entfernen",showGroupPanel:"Gruppierungsbereich anzeigen",hideGroupPanel:"Gruppierungsbereich ausblenden",showFooter:"Fu\xDFzeile anzeigen",hideFooter:"Fu\xDFzeile ausblenden",showGroupFooters:"Gruppenfu\xDFzeilen anzeigen",hideGroupFooters:"Gruppenfu\xDFzeilen ausblenden",hideColumn:"Diese Spalte ausblenden",fieldChooser:"Feldauswahl\u2026",bestFit:"Optimale Breite",bestFitAll:"Optimale Breite (alle Spalten)",fixedPosition:"Feste Position festlegen",pinLeft:"Links",pinRight:"Rechts",pinSticky:"Fixiert",unpin:"Fixierung aufheben",moveLeft:"Nach links verschieben",moveRight:"Nach rechts verschieben",filterPlaceholder:"Filtern\u2026",filterColumnAria:"{column} filtern",filterSelectAll:"Alles ausw\xE4hlen",filterBlank:"(Leer)",filterNoMatch:"Keine passenden Werte",filterLoading:"Werte werden geladen\u2026",filterTruncated:"Es werden nur die ersten Werte angezeigt \u2014 suchen Sie nach den \xFCbrigen.",filterRemove:"Filter entfernen",filterToggle:"Filter anwenden",filterEditBuilder:"Filter bearbeiten",filterNone:"Kein Filter",filterActive:"Filter aktiv",opEquals:"ist",opNotEquals:"ist nicht",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"enth\xE4lt",opNotContains:"enth\xE4lt nicht",opStartsWith:"beginnt mit",opEndsWith:"endet mit",opIsBlank:"ist leer",opIsNotBlank:"ist nicht leer",opIsOneOf:"ist eines von",opIsBetween:"liegt zwischen",opValuesCount:"{n} Werte",filterAnd:"UND",filterOr:"ODER",builderTitle:"Filter-Editor",builderCombine:"Bedingungen verkn\xFCpfen mit",builderAddCondition:"Bedingung hinzuf\xFCgen",builderAddGroup:"Gruppe hinzuf\xFCgen",builderRemoveGroup:"Gruppe entfernen",builderRemoveCondition:"Bedingung entfernen",builderEmpty:"Noch keine Bedingungen.",builderColumn:"Spalte",builderOperator:"Operator",builderValue:"Wert",builderValueFrom:"Von",builderValueTo:"Bis",builderValuePlaceholder:"Wert eingeben",groupPanelHint:"Ziehen Sie eine Spalte hierher, um danach zu gruppieren",groupAddLevel:"Gruppierungsebene hinzuf\xFCgen",groupAddLevelButton:"+ Ebene hinzuf\xFCgen\u2026",groupNoGrouping:"(keine Gruppierung)",groupLevelAria:"Gruppierungsebene {n}",groupRemoveAria:"{column} entfernen",pagerFirst:"Erste Seite",pagerPrevious:"Vorherige Seite",pagerNext:"N\xE4chste Seite",pagerLast:"Letzte Seite",pagerPage:"Seite",pagerOf:"von",pagerRowsPerPage:"Zeilen pro Seite",pagerAria:"Seitennavigation",selectAllRows:"Alle Zeilen ausw\xE4hlen",selectRowAria:"Zeile {row} ausw\xE4hlen",summaryAria:"Zusammenfassung",columnTotalsAria:"Spaltensummen",rowActions:"Zeilenaktionen",detailsAria:"Details",rowNumberAria:"Zeilennummer",noteEditorAria:"Zellennotiz",notePlaceholder:"Notiz zu dieser Zelle schreiben\u2026",addNote:"Notiz hinzuf\xFCgen\u2026",editNote:"Notiz bearbeiten\u2026",deleteNote:"Notiz l\xF6schen",expandDetails:"Details erweitern",collapseDetails:"Details reduzieren",dragToReorder:"Zum Umsortieren ziehen",menuCopy:"Kopieren",menuCopyWithHeaders:"Mit Spaltenk\xF6pfen kopieren",menuCopyWithGroupHeaders:"Mit Gruppenk\xF6pfen kopieren",menuCut:"Ausschneiden",menuPaste:"Einf\xFCgen",menuExport:"Exportieren",menuChartRange:"Ausgew\xE4hlte Spalten als Diagramm",statsSum:"Summe",statsCount:"Anzahl",statsAvg:"Durchschnitt",statsMin:"Min",statsMax:"Max",statsCells:"Zellen",statsTooLarge:"Auswahl zu gro\xDF f\xFCr eine Summe",statusRows:"Zeilen",statusFiltered:"Gefiltert",statusSelected:"Ausgew\xE4hlt",summaryRows:"Zeilen",announceRows:"{n} Zeilen",announceSortedBy:"sortiert nach {columns}",announceSelected:"{n} ausgew\xE4hlt",announceAscending:"aufsteigend",announceDescending:"absteigend",sideFilters:"Filter",sideBarAria:"Werkzeugbereiche",sideClearFilters:"Alle Filter l\xF6schen",summarySum:"Summe",summaryAvg:"Durchschnitt",summaryMin:"Min",summaryMax:"Max",summaryCount:"Anzahl",summaryDistinct:"Eindeutig",summaryCustom:"Benutzerdefiniert",noTotal:"Keine Summe",busy:"Wird bearbeitet\u2026",busyLoading:"Zeilen werden geladen\u2026",busyEncoding:"Daten werden vorbereitet\u2026",busyFiltering:"Zeilen werden gefiltert\u2026",busySorting:"Zeilen werden sortiert\u2026",busyComputing:"Filtern und Sortieren\u2026",busyGrouping:"Gruppen werden erstellt\u2026",busyAggregating:"Summen werden berechnet\u2026",busyProjecting:"Ansicht wird aktualisiert\u2026",busyExporting:"Datei wird erstellt\u2026",noData:"Keine Daten gefunden",editNewRow:"Neue Zeile",editSaveChanges:"\xC4nderungen speichern",editDiscardChanges:"\xC4nderungen verwerfen",editRow:"Zeile bearbeiten",editRowMenu:"Zeile bearbeiten\u2026",editDeleteRow:"Zeile l\xF6schen",editUndoDelete:"L\xF6schen r\xFCckg\xE4ngig",editActions:"Aktionen",editSaveRow:"Zeile speichern",editSaving:"Wird gespeichert\u2026",editEditingRow:"Zeile {row} wird bearbeitet",editSaveCount:"{n} Zeile(n) speichern",editCannotSave:"Speichern nicht m\xF6glich",editSaveFailed:"Die \xC4nderungen konnten nicht gespeichert werden.",editDeleteConfirm:"Diese Zeile l\xF6schen?",editAddRowUndo:"Zeile hinzuf\xFCgen",editDeleteRowUndo:"Zeile l\xF6schen",editCellUndo:"{column} bearbeiten",editFillUndo:"{count} Zellen f\xFCllen",editPasteUndo:"{count} Zellen einf\xFCgen",editCutUndo:"{count} Zellen ausschneiden",editNoMatch:"Keine \xDCbereinstimmung",formEditTitle:"Zeile bearbeiten",formAddTitle:"Neue Zeile",formShortcut:"{key}+Enter zum Speichern \xB7 Esc zum Abbrechen",validationRequired:"Dieses Feld ist erforderlich",validationNumber:"Muss eine Zahl sein",validationFormat:"Ung\xFCltiges Format",validationEmail:"Ung\xFCltige E-Mail-Adresse",validationInvalid:"Ung\xFCltiger Wert",dateCalendar:"Kalender",dateOpenCalendar:"Kalender \xF6ffnen",datePreviousMonth:"Vorheriger Monat",dateNextMonth:"N\xE4chster Monat",monthJanuary:"Januar",monthFebruary:"Februar",monthMarch:"M\xE4rz",monthApril:"April",monthMay:"Mai",monthJune:"Juni",monthJuly:"Juli",monthAugust:"August",monthSeptember:"September",monthOctober:"Oktober",monthNovember:"November",monthDecember:"Dezember",weekStartsOn:"1",weekdaySu:"So",weekdayMo:"Mo",weekdayTu:"Di",weekdayWe:"Mi",weekdayTh:"Do",weekdayFr:"Fr",weekdaySa:"Sa",importTitle:"Daten importieren",importStepSource:"1. Quelle",importStepMap:"2. Spalten zuordnen",importFile:"CSV-Datei",importPaste:"\u2026oder Zeilen einf\xFCgen",importSeparator:"Trennzeichen",importSeparatorAuto:"Automatisch erkennen",importSeparatorComma:"Komma ,",importSeparatorSemicolon:"Semikolon ;",importSeparatorTab:"Tabulator",importSeparatorPipe:"Pipe |",importFileColumn:"Dateispalte",importDetected:"Erkannt",importGridColumn:"Tabellenspalte",importSample:"Beispiel",importSkip:"\u2014 \xFCberspringen \u2014",importPreview:"Vorschau",importNoSource:"W\xE4hlen Sie zuerst eine Datei oder f\xFCgen Sie Zeilen ein.",importNoRows:"Es wurden keine Datenzeilen gefunden.",importAction:"Importieren",exportAborted:"Export abgebrochen",exportSheetName:"Daten",chart:"Diagramm",chartCategory:"Kategorie",chartSeries:"Reihe",chartAddSeries:"Reihe hinzuf\xFCgen",chartRemoveSeries:"Entfernen",chartSource:"Daten",chartSourceView:"Gefilterte Zeilen",chartSourceSelection:"Ausgew\xE4hlte Zeilen",chartSourceAll:"Alle Zeilen",chartClose:"Diagramm schlie\xDFen",chartFullscreen:"Vollbild",chartExitFullscreen:"Vollbild beenden",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"Das Diagramm konnte nicht exportiert werden.",chartCrossFiltered:"Die Tabelle ist auf {value} gefiltert.",chartBlankCategory:"(leer)",chartTruncated:"Es werden die obersten {n} Kategorien angezeigt; die \xFCbrigen sind als \u201ESonstige\u201C zusammengefasst.",chartOther:"Sonstige",chartEmpty:"Noch nichts darzustellen.",chartNeedsRecharts:"Diagramme ben\xF6tigen das optionale Paket `recharts`. Installieren Sie es, um sie zu zeichnen.",chartOnlyOneSeries:"Dieser Diagrammtyp zeigt eine Reihe.",chartByColumn:"Diagramm nach dieser Spalte",chartGroupBy:"Nach",chartGroupNone:"Jeder Wert",chartGroupAuto:"Automatisch",chartGroupDay:"Tag",chartGroupWeek:"Woche",chartGroupMonth:"Monat",chartGroupQuarter:"Quartal",chartGroupYear:"Jahr",chartGroupBins:"{n} Klassen",chartBucketAdjusted:"Zu viele Intervalle f\xFCr eine Achse \u2014 gr\xF6ber gruppiert.",chartWindowed:"{shown} von {total} werden angezeigt.",chartShowAll:"Alle anzeigen",chartCanvasHint:"Diagramm. Scrollen zum Zoomen, Ziehen zum Verschieben, Pfeiltasten zum Bewegen, 0 f\xFCr alle.",chartAggSum:"Summe",chartAggAvg:"Durchschnitt",chartAggMin:"Min",chartAggMax:"Max",chartAggCount:"Anzahl",chartAggDistinct:"Eindeutig",chartTypeColumn:"S\xE4ule",chartTypeBar:"Balken",chartTypeLine:"Linie",chartTypeArea:"Fl\xE4che",chartTypePie:"Kreis",chartTypeDonut:"Ring",licenseMissing:"Nicht lizenziert",licenseExpired:"Lizenz abgelaufen",licenseReleaseNotCovered:"Diese Version ist nicht durch die Lizenz abgedeckt",licenseDomainMismatch:"Lizenz gilt nicht f\xFCr diese Domain",licenseRevoked:"Lizenz widerrufen",licenseInvalidFormat:"Lizenzschl\xFCssel fehlerhaft",licenseInvalidSignature:"Ung\xFCltige Lizenzsignatur",licenseEngineUnavailable:"Browser kann die Lizenz nicht pr\xFCfen (HTTPS erforderlich)"},Bl={ok:"OK",cancel:"Annuler",apply:"Appliquer",close:"Fermer",clear:"Effacer",save:"Enregistrer",search:"Rechercher...",selectAll:"Tout s\xE9lectionner",showAll:"Tout afficher",remove:"Supprimer",none:"Aucun",toolbarSearch:"Rechercher...",exportMenu:"Exporter",exportCsv:"Exporter en CSV",exportExcel:"Exporter toutes les donn\xE9es vers Excel",exportExcelSelected:"Exporter les lignes s\xE9lectionn\xE9es vers Excel",exportPdf:"Exporter en PDF",exporting:"Exportation\u2026",columns:"Colonnes",hiddenColumns:"Colonnes masqu\xE9es",noHiddenColumns:"Aucune colonne masqu\xE9e.",sortAsc:"Trier de A \xE0 Z",sortDesc:"Trier de Z \xE0 A",clearSort:"Effacer le tri",groupByColumn:"Grouper par cette colonne",ungroupColumn:"Retirer du groupement",showGroupPanel:"Afficher le panneau de groupement",hideGroupPanel:"Masquer le panneau de groupement",showFooter:"Afficher le pied de tableau",hideFooter:"Masquer le pied de tableau",showGroupFooters:"Afficher les pieds de groupe",hideGroupFooters:"Masquer les pieds de groupe",hideColumn:"Masquer cette colonne",fieldChooser:"S\xE9lecteur de champs\u2026",bestFit:"Ajuster la largeur",bestFitAll:"Ajuster la largeur (toutes les colonnes)",fixedPosition:"D\xE9finir une position fixe",pinLeft:"Gauche",pinRight:"Droite",pinSticky:"Fixe",unpin:"Lib\xE9rer",moveLeft:"D\xE9placer vers la gauche",moveRight:"D\xE9placer vers la droite",filterPlaceholder:"Filtrer\u2026",filterColumnAria:"Filtrer {column}",filterSelectAll:"Tout s\xE9lectionner",filterBlank:"(Vides)",filterNoMatch:"Aucune valeur correspondante",filterLoading:"Chargement des valeurs\u2026",filterTruncated:"Seules les premi\xE8res valeurs sont affich\xE9es \u2014 recherchez pour trouver les autres.",filterRemove:"Supprimer le filtre",filterToggle:"Appliquer le filtre",filterEditBuilder:"Modifier le filtre",filterNone:"Aucun filtre",filterActive:"Filtre actif",opEquals:"est",opNotEquals:"n'est pas",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"contient",opNotContains:"ne contient pas",opStartsWith:"commence par",opEndsWith:"se termine par",opIsBlank:"est vide",opIsNotBlank:"n'est pas vide",opIsOneOf:"fait partie de",opIsBetween:"est entre",opValuesCount:"{n} valeurs",filterAnd:"ET",filterOr:"OU",builderTitle:"G\xE9n\xE9rateur de filtre",builderCombine:"Combiner les conditions avec",builderAddCondition:"Ajouter une condition",builderAddGroup:"Ajouter un groupe",builderRemoveGroup:"Supprimer le groupe",builderRemoveCondition:"Supprimer la condition",builderEmpty:"Aucune condition pour le moment.",builderColumn:"Colonne",builderOperator:"Op\xE9rateur",builderValue:"Valeur",builderValueFrom:"De",builderValueTo:"\xC0",builderValuePlaceholder:"Saisissez une valeur",groupPanelHint:"Faites glisser une colonne ici pour grouper",groupAddLevel:"Ajouter un niveau de groupement",groupAddLevelButton:"+ Ajouter un niveau\u2026",groupNoGrouping:"(aucun groupement)",groupLevelAria:"Niveau de groupement {n}",groupRemoveAria:"Supprimer {column}",pagerFirst:"Premi\xE8re page",pagerPrevious:"Page pr\xE9c\xE9dente",pagerNext:"Page suivante",pagerLast:"Derni\xE8re page",pagerPage:"Page",pagerOf:"sur",pagerRowsPerPage:"Lignes par page",pagerAria:"Pagination",selectAllRows:"S\xE9lectionner toutes les lignes",selectRowAria:"S\xE9lectionner la ligne {row}",summaryAria:"Synth\xE8se",columnTotalsAria:"Totaux des colonnes",rowActions:"Actions de ligne",detailsAria:"D\xE9tails",rowNumberAria:"Num\xE9ro de ligne",noteEditorAria:"Note de cellule",notePlaceholder:"\xC9crivez une note sur cette cellule\u2026",addNote:"Ajouter une note\u2026",editNote:"Modifier la note\u2026",deleteNote:"Supprimer la note",expandDetails:"D\xE9velopper les d\xE9tails",collapseDetails:"R\xE9duire les d\xE9tails",dragToReorder:"Faire glisser pour r\xE9ordonner",menuCopy:"Copier",menuCopyWithHeaders:"Copier avec les en-t\xEAtes",menuCopyWithGroupHeaders:"Copier avec les en-t\xEAtes de groupe",menuCut:"Couper",menuPaste:"Coller",menuExport:"Exporter",menuChartRange:"Graphique des colonnes s\xE9lectionn\xE9es",statsSum:"Somme",statsCount:"Nombre",statsAvg:"Moyenne",statsMin:"Min",statsMax:"Max",statsCells:"Cellules",statsTooLarge:"S\xE9lection trop grande pour \xEAtre totalis\xE9e",statusRows:"Lignes",statusFiltered:"Filtr\xE9es",statusSelected:"S\xE9lectionn\xE9es",summaryRows:"lignes",announceRows:"{n} lignes",announceSortedBy:"tri\xE9 par {columns}",announceSelected:"{n} s\xE9lectionn\xE9es",announceAscending:"croissant",announceDescending:"d\xE9croissant",sideFilters:"Filtres",sideBarAria:"Panneaux d'outils",sideClearFilters:"Effacer tous les filtres",summarySum:"Somme",summaryAvg:"Moyenne",summaryMin:"Min",summaryMax:"Max",summaryCount:"Nombre",summaryDistinct:"Distinct",summaryCustom:"Personnalis\xE9",noTotal:"Aucun total",busy:"En cours\u2026",busyLoading:"Chargement des lignes\u2026",busyEncoding:"Pr\xE9paration des donn\xE9es\u2026",busyFiltering:"Filtrage des lignes\u2026",busySorting:"Tri des lignes\u2026",busyComputing:"Filtrage et tri\u2026",busyGrouping:"Construction des groupes\u2026",busyAggregating:"Calcul des totaux\u2026",busyProjecting:"Mise \xE0 jour de la vue\u2026",busyExporting:"Cr\xE9ation du fichier\u2026",noData:"Aucune donn\xE9e trouv\xE9e",editNewRow:"Nouvelle ligne",editSaveChanges:"Enregistrer les modifications",editDiscardChanges:"Annuler les modifications",editRow:"Modifier la ligne",editRowMenu:"Modifier la ligne\u2026",editDeleteRow:"Supprimer la ligne",editUndoDelete:"Annuler la suppression",editActions:"Actions",editSaveRow:"Enregistrer la ligne",editSaving:"Enregistrement\u2026",editEditingRow:"Modification de la ligne {row}",editSaveCount:"Enregistrer {n} ligne(s)",editCannotSave:"Enregistrement impossible",editSaveFailed:"Les modifications n'ont pas pu \xEAtre enregistr\xE9es.",editDeleteConfirm:"Supprimer cette ligne ?",editAddRowUndo:"Ajouter une ligne",editDeleteRowUndo:"Supprimer la ligne",editCellUndo:"Modifier {column}",editFillUndo:"Remplir {count} cellules",editPasteUndo:"Coller {count} cellules",editCutUndo:"Couper {count} cellules",editNoMatch:"Aucune correspondance",formEditTitle:"Modifier la ligne",formAddTitle:"Nouvelle ligne",formShortcut:"{key}+Entr\xE9e pour enregistrer \xB7 \xC9chap pour annuler",validationRequired:"Ce champ est obligatoire",validationNumber:"Doit \xEAtre un nombre",validationFormat:"Format invalide",validationEmail:"Adresse e-mail invalide",validationInvalid:"Valeur invalide",dateCalendar:"Calendrier",dateOpenCalendar:"Ouvrir le calendrier",datePreviousMonth:"Mois pr\xE9c\xE9dent",dateNextMonth:"Mois suivant",monthJanuary:"Janvier",monthFebruary:"F\xE9vrier",monthMarch:"Mars",monthApril:"Avril",monthMay:"Mai",monthJune:"Juin",monthJuly:"Juillet",monthAugust:"Ao\xFBt",monthSeptember:"Septembre",monthOctober:"Octobre",monthNovember:"Novembre",monthDecember:"D\xE9cembre",weekStartsOn:"1",weekdaySu:"Di",weekdayMo:"Lu",weekdayTu:"Ma",weekdayWe:"Me",weekdayTh:"Je",weekdayFr:"Ve",weekdaySa:"Sa",importTitle:"Importer des donn\xE9es",importStepSource:"1. Source",importStepMap:"2. Associer les colonnes",importFile:"Fichier CSV",importPaste:"\u2026ou collez des lignes",importSeparator:"S\xE9parateur",importSeparatorAuto:"D\xE9tecter automatiquement",importSeparatorComma:"Virgule ,",importSeparatorSemicolon:"Point-virgule ;",importSeparatorTab:"Tabulation",importSeparatorPipe:"Barre verticale |",importFileColumn:"Colonne du fichier",importDetected:"D\xE9tect\xE9",importGridColumn:"Colonne du tableau",importSample:"Exemple",importSkip:"\u2014 ignorer \u2014",importPreview:"Aper\xE7u",importNoSource:"Choisissez d'abord un fichier ou collez des lignes.",importNoRows:"Aucune ligne de donn\xE9es trouv\xE9e.",importAction:"Importer",exportAborted:"Exportation interrompue",exportSheetName:"Donn\xE9es",chart:"Graphique",chartCategory:"Cat\xE9gorie",chartSeries:"S\xE9rie",chartAddSeries:"Ajouter une s\xE9rie",chartRemoveSeries:"Supprimer",chartSource:"Donn\xE9es",chartSourceView:"Lignes filtr\xE9es",chartSourceSelection:"Lignes s\xE9lectionn\xE9es",chartSourceAll:"Toutes les lignes",chartClose:"Fermer le graphique",chartFullscreen:"Plein \xE9cran",chartExitFullscreen:"Quitter le plein \xE9cran",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"Le graphique n'a pas pu \xEAtre export\xE9.",chartCrossFiltered:"Le tableau est filtr\xE9 sur {value}.",chartBlankCategory:"(vide)",chartTruncated:"Affichage des {n} premi\xE8res cat\xE9gories ; les autres sont regroup\xE9es sous \xAB Autres \xBB.",chartOther:"Autres",chartEmpty:"Rien \xE0 repr\xE9senter pour le moment.",chartNeedsRecharts:"Les graphiques n\xE9cessitent le paquet optionnel `recharts`. Installez-le pour les dessiner.",chartOnlyOneSeries:"Ce type de graphique affiche une seule s\xE9rie.",chartByColumn:"Graphique par cette colonne",chartGroupBy:"Par",chartGroupNone:"Chaque valeur",chartGroupAuto:"Automatique",chartGroupDay:"Jour",chartGroupWeek:"Semaine",chartGroupMonth:"Mois",chartGroupQuarter:"Trimestre",chartGroupYear:"Ann\xE9e",chartGroupBins:"{n} classes",chartBucketAdjusted:"Trop d\u2019intervalles pour un axe \u2014 regroupement plus large.",chartWindowed:"Affichage de {shown} sur {total}.",chartShowAll:"Tout afficher",chartCanvasHint:"Graphique. Faites d\xE9filer pour zoomer, glissez pour d\xE9placer, fl\xE8ches pour parcourir, 0 pour tout afficher.",chartAggSum:"Somme",chartAggAvg:"Moyenne",chartAggMin:"Min",chartAggMax:"Max",chartAggCount:"Nombre",chartAggDistinct:"Distinct",chartTypeColumn:"Colonnes",chartTypeBar:"Barres",chartTypeLine:"Courbe",chartTypeArea:"Aires",chartTypePie:"Secteurs",chartTypeDonut:"Anneau",licenseMissing:"Sans licence",licenseExpired:"Licence expir\xE9e",licenseReleaseNotCovered:"Cette version n\u2019est pas couverte par la licence",licenseDomainMismatch:"Licence non valide pour ce domaine",licenseRevoked:"Licence r\xE9voqu\xE9e",licenseInvalidFormat:"Cl\xE9 de licence mal form\xE9e",licenseInvalidSignature:"Signature de licence invalide",licenseEngineUnavailable:"Le navigateur ne peut pas v\xE9rifier la licence (HTTPS requis)"},kl={ok:"Aceptar",cancel:"Cancelar",apply:"Aplicar",close:"Cerrar",clear:"Borrar",save:"Guardar",search:"Buscar...",selectAll:"Seleccionar todo",showAll:"Mostrar todo",remove:"Quitar",none:"Ninguno",toolbarSearch:"Buscar...",exportMenu:"Exportar",exportCsv:"Exportar a CSV",exportExcel:"Exportar todos los datos a Excel",exportExcelSelected:"Exportar las filas seleccionadas a Excel",exportPdf:"Exportar a PDF",exporting:"Exportando\u2026",columns:"Columnas",hiddenColumns:"Columnas ocultas",noHiddenColumns:"No hay columnas ocultas.",sortAsc:"Ordenar de la A a la Z",sortDesc:"Ordenar de la Z a la A",clearSort:"Borrar ordenaci\xF3n",groupByColumn:"Agrupar por esta columna",ungroupColumn:"Quitar de la agrupaci\xF3n",showGroupPanel:"Mostrar panel de agrupaci\xF3n",hideGroupPanel:"Ocultar panel de agrupaci\xF3n",showFooter:"Mostrar pie de tabla",hideFooter:"Ocultar pie de tabla",showGroupFooters:"Mostrar pies de grupo",hideGroupFooters:"Ocultar pies de grupo",hideColumn:"Ocultar esta columna",fieldChooser:"Selector de campos\u2026",bestFit:"Ajustar ancho",bestFitAll:"Ajustar ancho (todas las columnas)",fixedPosition:"Establecer posici\xF3n fija",pinLeft:"Izquierda",pinRight:"Derecha",pinSticky:"Fija",unpin:"Liberar",moveLeft:"Mover a la izquierda",moveRight:"Mover a la derecha",filterPlaceholder:"Filtrar\u2026",filterColumnAria:"Filtrar {column}",filterSelectAll:"Seleccionar todo",filterBlank:"(En blanco)",filterNoMatch:"No hay valores coincidentes",filterLoading:"Cargando valores\u2026",filterTruncated:"Solo se muestran los primeros valores \u2014 busque para encontrar el resto.",filterRemove:"Quitar el filtro",filterToggle:"Aplicar el filtro",filterEditBuilder:"Editar el filtro",filterNone:"Sin filtro",filterActive:"Filtro activo",opEquals:"es",opNotEquals:"no es",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"contiene",opNotContains:"no contiene",opStartsWith:"empieza por",opEndsWith:"termina en",opIsBlank:"est\xE1 en blanco",opIsNotBlank:"no est\xE1 en blanco",opIsOneOf:"es uno de",opIsBetween:"est\xE1 entre",opValuesCount:"{n} valores",filterAnd:"Y",filterOr:"O",builderTitle:"Generador de filtros",builderCombine:"Combinar condiciones con",builderAddCondition:"A\xF1adir condici\xF3n",builderAddGroup:"A\xF1adir grupo",builderRemoveGroup:"Quitar grupo",builderRemoveCondition:"Quitar condici\xF3n",builderEmpty:"Todav\xEDa no hay condiciones.",builderColumn:"Columna",builderOperator:"Operador",builderValue:"Valor",builderValueFrom:"Desde",builderValueTo:"Hasta",builderValuePlaceholder:"Introduzca un valor",groupPanelHint:"Arrastre una columna aqu\xED para agrupar por ella",groupAddLevel:"A\xF1adir nivel de agrupaci\xF3n",groupAddLevelButton:"+ A\xF1adir nivel\u2026",groupNoGrouping:"(sin agrupaci\xF3n)",groupLevelAria:"Nivel de agrupaci\xF3n {n}",groupRemoveAria:"Quitar {column}",pagerFirst:"Primera p\xE1gina",pagerPrevious:"P\xE1gina anterior",pagerNext:"P\xE1gina siguiente",pagerLast:"\xDAltima p\xE1gina",pagerPage:"P\xE1gina",pagerOf:"de",pagerRowsPerPage:"Filas por p\xE1gina",pagerAria:"Paginaci\xF3n",selectAllRows:"Seleccionar todas las filas",selectRowAria:"Seleccionar la fila {row}",summaryAria:"Resumen",columnTotalsAria:"Totales de columna",rowActions:"Acciones de fila",detailsAria:"Detalles",rowNumberAria:"N\xFAmero de fila",noteEditorAria:"Nota de celda",notePlaceholder:"Escriba una nota sobre esta celda\u2026",addNote:"A\xF1adir nota\u2026",editNote:"Editar nota\u2026",deleteNote:"Eliminar nota",expandDetails:"Expandir detalles",collapseDetails:"Contraer detalles",dragToReorder:"Arrastre para reordenar",menuCopy:"Copiar",menuCopyWithHeaders:"Copiar con encabezados",menuCopyWithGroupHeaders:"Copiar con encabezados de grupo",menuCut:"Cortar",menuPaste:"Pegar",menuExport:"Exportar",menuChartRange:"Graficar columnas seleccionadas",statsSum:"Suma",statsCount:"Recuento",statsAvg:"Promedio",statsMin:"M\xEDnimo",statsMax:"M\xE1ximo",statsCells:"Celdas",statsTooLarge:"Selecci\xF3n demasiado grande para sumarla",statusRows:"Filas",statusFiltered:"Filtradas",statusSelected:"Seleccionadas",summaryRows:"filas",announceRows:"{n} filas",announceSortedBy:"ordenado por {columns}",announceSelected:"{n} seleccionadas",announceAscending:"ascendente",announceDescending:"descendente",sideFilters:"Filtros",sideBarAria:"Paneles de herramientas",sideClearFilters:"Borrar todos los filtros",summarySum:"Suma",summaryAvg:"Promedio",summaryMin:"M\xEDnimo",summaryMax:"M\xE1ximo",summaryCount:"Recuento",summaryDistinct:"Distintos",summaryCustom:"Personalizado",noTotal:"Sin total",busy:"Trabajando\u2026",busyLoading:"Cargando filas\u2026",busyEncoding:"Preparando datos\u2026",busyFiltering:"Filtrando filas\u2026",busySorting:"Ordenando filas\u2026",busyComputing:"Filtrando y ordenando\u2026",busyGrouping:"Creando grupos\u2026",busyAggregating:"Calculando totales\u2026",busyProjecting:"Actualizando la vista\u2026",busyExporting:"Creando el archivo\u2026",noData:"No se encontraron datos",editNewRow:"Nueva fila",editSaveChanges:"Guardar cambios",editDiscardChanges:"Descartar cambios",editRow:"Editar fila",editRowMenu:"Editar fila\u2026",editDeleteRow:"Eliminar fila",editUndoDelete:"Deshacer eliminaci\xF3n",editActions:"Acciones",editSaveRow:"Guardar fila",editSaving:"Guardando\u2026",editEditingRow:"Editando la fila {row}",editSaveCount:"Guardar {n} fila(s)",editCannotSave:"No se puede guardar",editSaveFailed:"No se pudieron guardar los cambios.",editDeleteConfirm:"\xBFEliminar esta fila?",editAddRowUndo:"A\xF1adir fila",editDeleteRowUndo:"Eliminar fila",editCellUndo:"Editar {column}",editFillUndo:"Rellenar {count} celdas",editPasteUndo:"Pegar {count} celdas",editCutUndo:"Cortar {count} celdas",editNoMatch:"Sin coincidencias",formEditTitle:"Editar fila",formAddTitle:"Nueva fila",formShortcut:"{key}+Intro para guardar \xB7 Esc para cancelar",validationRequired:"Este campo es obligatorio",validationNumber:"Debe ser un n\xFAmero",validationFormat:"Formato no v\xE1lido",validationEmail:"Direcci\xF3n de correo no v\xE1lida",validationInvalid:"Valor no v\xE1lido",dateCalendar:"Calendario",dateOpenCalendar:"Abrir calendario",datePreviousMonth:"Mes anterior",dateNextMonth:"Mes siguiente",monthJanuary:"Enero",monthFebruary:"Febrero",monthMarch:"Marzo",monthApril:"Abril",monthMay:"Mayo",monthJune:"Junio",monthJuly:"Julio",monthAugust:"Agosto",monthSeptember:"Septiembre",monthOctober:"Octubre",monthNovember:"Noviembre",monthDecember:"Diciembre",weekStartsOn:"1",weekdaySu:"Do",weekdayMo:"Lu",weekdayTu:"Ma",weekdayWe:"Mi",weekdayTh:"Ju",weekdayFr:"Vi",weekdaySa:"S\xE1",importTitle:"Importar datos",importStepSource:"1. Origen",importStepMap:"2. Asignar columnas",importFile:"Archivo CSV",importPaste:"\u2026o pegue filas",importSeparator:"Separador",importSeparatorAuto:"Detectar autom\xE1ticamente",importSeparatorComma:"Coma ,",importSeparatorSemicolon:"Punto y coma ;",importSeparatorTab:"Tabulador",importSeparatorPipe:"Barra vertical |",importFileColumn:"Columna del archivo",importDetected:"Detectado",importGridColumn:"Columna de la tabla",importSample:"Muestra",importSkip:"\u2014 omitir \u2014",importPreview:"Vista previa",importNoSource:"Elija primero un archivo o pegue algunas filas.",importNoRows:"No se encontraron filas de datos.",importAction:"Importar",exportAborted:"Exportaci\xF3n cancelada",exportSheetName:"Datos",chart:"Gr\xE1fico",chartCategory:"Categor\xEDa",chartSeries:"Serie",chartAddSeries:"A\xF1adir serie",chartRemoveSeries:"Quitar",chartSource:"Datos",chartSourceView:"Filas filtradas",chartSourceSelection:"Filas seleccionadas",chartSourceAll:"Todas las filas",chartClose:"Cerrar el gr\xE1fico",chartFullscreen:"Pantalla completa",chartExitFullscreen:"Salir de pantalla completa",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"No se pudo exportar el gr\xE1fico.",chartCrossFiltered:"La tabla est\xE1 filtrada por {value}.",chartBlankCategory:"(en blanco)",chartTruncated:"Se muestran las {n} categor\xEDas principales; el resto se agrupa como \xABOtros\xBB.",chartOther:"Otros",chartEmpty:"Todav\xEDa no hay nada que representar.",chartNeedsRecharts:"Los gr\xE1ficos necesitan el paquete opcional `recharts`. Inst\xE1lelo para dibujarlos.",chartOnlyOneSeries:"Este tipo de gr\xE1fico muestra una serie.",chartByColumn:"Gr\xE1fico por esta columna",chartGroupBy:"Por",chartGroupNone:"Cada valor",chartGroupAuto:"Autom\xE1tico",chartGroupDay:"D\xEDa",chartGroupWeek:"Semana",chartGroupMonth:"Mes",chartGroupQuarter:"Trimestre",chartGroupYear:"A\xF1o",chartGroupBins:"{n} intervalos",chartBucketAdjusted:"Demasiados intervalos para un eje \u2014 se agrup\xF3 de forma m\xE1s amplia.",chartWindowed:"Mostrando {shown} de {total}.",chartShowAll:"Mostrar todo",chartCanvasHint:"Gr\xE1fico. Desplace para acercar, arrastre para mover, flechas para navegar, 0 para verlo todo.",chartAggSum:"Suma",chartAggAvg:"Promedio",chartAggMin:"M\xEDnimo",chartAggMax:"M\xE1ximo",chartAggCount:"Recuento",chartAggDistinct:"Distintos",chartTypeColumn:"Columnas",chartTypeBar:"Barras",chartTypeLine:"L\xEDneas",chartTypeArea:"\xC1reas",chartTypePie:"Circular",chartTypeDonut:"Anillo",licenseMissing:"Sin licencia",licenseExpired:"Licencia caducada",licenseReleaseNotCovered:"Esta versi\xF3n no est\xE1 cubierta por la licencia",licenseDomainMismatch:"Licencia no v\xE1lida para este dominio",licenseRevoked:"Licencia revocada",licenseInvalidFormat:"Clave de licencia mal formada",licenseInvalidSignature:"Firma de licencia no v\xE1lida",licenseEngineUnavailable:"El navegador no puede verificar la licencia (se requiere HTTPS)"},Rl={ok:"OK",cancel:"Annulla",apply:"Applica",close:"Chiudi",clear:"Cancella",save:"Salva",search:"Cerca...",selectAll:"Seleziona tutto",showAll:"Mostra tutto",remove:"Rimuovi",none:"Nessuno",toolbarSearch:"Cerca...",exportMenu:"Esporta",exportCsv:"Esporta in CSV",exportExcel:"Esporta tutti i dati in Excel",exportExcelSelected:"Esporta le righe selezionate in Excel",exportPdf:"Esporta in PDF",exporting:"Esportazione\u2026",columns:"Colonne",hiddenColumns:"Colonne nascoste",noHiddenColumns:"Nessuna colonna nascosta.",sortAsc:"Ordina dalla A alla Z",sortDesc:"Ordina dalla Z alla A",clearSort:"Cancella ordinamento",groupByColumn:"Raggruppa per questa colonna",ungroupColumn:"Rimuovi dal raggruppamento",showGroupPanel:"Mostra pannello di raggruppamento",hideGroupPanel:"Nascondi pannello di raggruppamento",showFooter:"Mostra pi\xE8 di tabella",hideFooter:"Nascondi pi\xE8 di tabella",showGroupFooters:"Mostra pi\xE8 di gruppo",hideGroupFooters:"Nascondi pi\xE8 di gruppo",hideColumn:"Nascondi questa colonna",fieldChooser:"Selettore campi\u2026",bestFit:"Adatta larghezza",bestFitAll:"Adatta larghezza (tutte le colonne)",fixedPosition:"Imposta posizione fissa",pinLeft:"Sinistra",pinRight:"Destra",pinSticky:"Fissa",unpin:"Sblocca",moveLeft:"Sposta a sinistra",moveRight:"Sposta a destra",filterPlaceholder:"Filtra\u2026",filterColumnAria:"Filtra {column}",filterSelectAll:"Seleziona tutto",filterBlank:"(Vuoti)",filterNoMatch:"Nessun valore corrispondente",filterLoading:"Caricamento valori\u2026",filterTruncated:"Vengono mostrati solo i primi valori \u2014 cerca per trovare gli altri.",filterRemove:"Rimuovi il filtro",filterToggle:"Applica il filtro",filterEditBuilder:"Modifica il filtro",filterNone:"Nessun filtro",filterActive:"Filtro attivo",opEquals:"\xE8",opNotEquals:"non \xE8",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"contiene",opNotContains:"non contiene",opStartsWith:"inizia con",opEndsWith:"finisce con",opIsBlank:"\xE8 vuoto",opIsNotBlank:"non \xE8 vuoto",opIsOneOf:"\xE8 uno di",opIsBetween:"\xE8 compreso tra",opValuesCount:"{n} valori",filterAnd:"E",filterOr:"O",builderTitle:"Generatore di filtri",builderCombine:"Combina le condizioni con",builderAddCondition:"Aggiungi condizione",builderAddGroup:"Aggiungi gruppo",builderRemoveGroup:"Rimuovi gruppo",builderRemoveCondition:"Rimuovi condizione",builderEmpty:"Ancora nessuna condizione.",builderColumn:"Colonna",builderOperator:"Operatore",builderValue:"Valore",builderValueFrom:"Da",builderValueTo:"A",builderValuePlaceholder:"Inserisci un valore",groupPanelHint:"Trascina qui una colonna per raggrupparla",groupAddLevel:"Aggiungi livello di raggruppamento",groupAddLevelButton:"+ Aggiungi livello\u2026",groupNoGrouping:"(nessun raggruppamento)",groupLevelAria:"Livello di raggruppamento {n}",groupRemoveAria:"Rimuovi {column}",pagerFirst:"Prima pagina",pagerPrevious:"Pagina precedente",pagerNext:"Pagina successiva",pagerLast:"Ultima pagina",pagerPage:"Pagina",pagerOf:"di",pagerRowsPerPage:"Righe per pagina",pagerAria:"Paginazione",selectAllRows:"Seleziona tutte le righe",selectRowAria:"Seleziona la riga {row}",summaryAria:"Riepilogo",columnTotalsAria:"Totali di colonna",rowActions:"Azioni riga",detailsAria:"Dettagli",rowNumberAria:"Numero di riga",noteEditorAria:"Nota della cella",notePlaceholder:"Scrivi una nota su questa cella\u2026",addNote:"Aggiungi nota\u2026",editNote:"Modifica nota\u2026",deleteNote:"Elimina nota",expandDetails:"Espandi i dettagli",collapseDetails:"Comprimi i dettagli",dragToReorder:"Trascina per riordinare",menuCopy:"Copia",menuCopyWithHeaders:"Copia con intestazioni",menuCopyWithGroupHeaders:"Copia con intestazioni di gruppo",menuCut:"Taglia",menuPaste:"Incolla",menuExport:"Esporta",menuChartRange:"Grafico delle colonne selezionate",statsSum:"Somma",statsCount:"Conteggio",statsAvg:"Media",statsMin:"Min",statsMax:"Max",statsCells:"Celle",statsTooLarge:"Selezione troppo grande per essere totalizzata",statusRows:"Righe",statusFiltered:"Filtrate",statusSelected:"Selezionate",summaryRows:"righe",announceRows:"{n} righe",announceSortedBy:"ordinato per {columns}",announceSelected:"{n} selezionate",announceAscending:"crescente",announceDescending:"decrescente",sideFilters:"Filtri",sideBarAria:"Pannelli degli strumenti",sideClearFilters:"Cancella tutti i filtri",summarySum:"Somma",summaryAvg:"Media",summaryMin:"Min",summaryMax:"Max",summaryCount:"Conteggio",summaryDistinct:"Distinti",summaryCustom:"Personalizzato",noTotal:"Nessun totale",busy:"Elaborazione\u2026",busyLoading:"Caricamento righe\u2026",busyEncoding:"Preparazione dei dati\u2026",busyFiltering:"Filtraggio righe\u2026",busySorting:"Ordinamento righe\u2026",busyComputing:"Filtraggio e ordinamento\u2026",busyGrouping:"Creazione dei gruppi\u2026",busyAggregating:"Calcolo dei totali\u2026",busyProjecting:"Aggiornamento della vista\u2026",busyExporting:"Creazione del file\u2026",noData:"Nessun dato trovato",editNewRow:"Nuova riga",editSaveChanges:"Salva le modifiche",editDiscardChanges:"Annulla le modifiche",editRow:"Modifica riga",editRowMenu:"Modifica riga\u2026",editDeleteRow:"Elimina riga",editUndoDelete:"Annulla eliminazione",editActions:"Azioni",editSaveRow:"Salva riga",editSaving:"Salvataggio\u2026",editEditingRow:"Modifica della riga {row}",editSaveCount:"Salva {n} riga/righe",editCannotSave:"Impossibile salvare",editSaveFailed:"Non \xE8 stato possibile salvare le modifiche.",editDeleteConfirm:"Eliminare questa riga?",editAddRowUndo:"Aggiungi riga",editDeleteRowUndo:"Elimina riga",editCellUndo:"Modifica {column}",editFillUndo:"Riempi {count} celle",editPasteUndo:"Incolla {count} celle",editCutUndo:"Taglia {count} celle",editNoMatch:"Nessuna corrispondenza",formEditTitle:"Modifica riga",formAddTitle:"Nuova riga",formShortcut:"{key}+Invio per salvare \xB7 Esc per annullare",validationRequired:"Questo campo \xE8 obbligatorio",validationNumber:"Deve essere un numero",validationFormat:"Formato non valido",validationEmail:"Indirizzo e-mail non valido",validationInvalid:"Valore non valido",dateCalendar:"Calendario",dateOpenCalendar:"Apri il calendario",datePreviousMonth:"Mese precedente",dateNextMonth:"Mese successivo",monthJanuary:"Gennaio",monthFebruary:"Febbraio",monthMarch:"Marzo",monthApril:"Aprile",monthMay:"Maggio",monthJune:"Giugno",monthJuly:"Luglio",monthAugust:"Agosto",monthSeptember:"Settembre",monthOctober:"Ottobre",monthNovember:"Novembre",monthDecember:"Dicembre",weekStartsOn:"1",weekdaySu:"Do",weekdayMo:"Lu",weekdayTu:"Ma",weekdayWe:"Me",weekdayTh:"Gi",weekdayFr:"Ve",weekdaySa:"Sa",importTitle:"Importa dati",importStepSource:"1. Origine",importStepMap:"2. Associa colonne",importFile:"File CSV",importPaste:"\u2026oppure incolla delle righe",importSeparator:"Separatore",importSeparatorAuto:"Rileva automaticamente",importSeparatorComma:"Virgola ,",importSeparatorSemicolon:"Punto e virgola ;",importSeparatorTab:"Tabulazione",importSeparatorPipe:"Barra verticale |",importFileColumn:"Colonna del file",importDetected:"Rilevato",importGridColumn:"Colonna della tabella",importSample:"Esempio",importSkip:"\u2014 salta \u2014",importPreview:"Anteprima",importNoSource:"Scegli prima un file oppure incolla delle righe.",importNoRows:"Non \xE8 stata trovata alcuna riga di dati.",importAction:"Importa",exportAborted:"Esportazione interrotta",exportSheetName:"Dati",chart:"Grafico",chartCategory:"Categoria",chartSeries:"Serie",chartAddSeries:"Aggiungi serie",chartRemoveSeries:"Rimuovi",chartSource:"Dati",chartSourceView:"Righe filtrate",chartSourceSelection:"Righe selezionate",chartSourceAll:"Tutte le righe",chartClose:"Chiudi il grafico",chartFullscreen:"Schermo intero",chartExitFullscreen:"Esci da schermo intero",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"Non \xE8 stato possibile esportare il grafico.",chartCrossFiltered:"La tabella \xE8 filtrata su {value}.",chartBlankCategory:"(vuoto)",chartTruncated:"Vengono mostrate le prime {n} categorie; le altre sono raggruppate come \xABAltro\xBB.",chartOther:"Altro",chartEmpty:"Non c\u2019\xE8 ancora nulla da rappresentare.",chartNeedsRecharts:"I grafici richiedono il pacchetto opzionale `recharts`. Installalo per disegnarli.",chartOnlyOneSeries:"Questo tipo di grafico mostra una sola serie.",chartByColumn:"Grafico per questa colonna",chartGroupBy:"Per",chartGroupNone:"Ogni valore",chartGroupAuto:"Automatico",chartGroupDay:"Giorno",chartGroupWeek:"Settimana",chartGroupMonth:"Mese",chartGroupQuarter:"Trimestre",chartGroupYear:"Anno",chartGroupBins:"{n} intervalli",chartBucketAdjusted:"Troppi intervalli per un asse \u2014 raggruppati in modo pi\xF9 ampio.",chartWindowed:"Vengono mostrati {shown} di {total}.",chartShowAll:"Mostra tutto",chartCanvasHint:"Grafico. Scorri per ingrandire, trascina per spostare, frecce per navigare, 0 per mostrare tutto.",chartAggSum:"Somma",chartAggAvg:"Media",chartAggMin:"Min",chartAggMax:"Max",chartAggCount:"Conteggio",chartAggDistinct:"Distinti",chartTypeColumn:"Colonne",chartTypeBar:"Barre",chartTypeLine:"Linee",chartTypeArea:"Aree",chartTypePie:"Torta",chartTypeDonut:"Ciambella",licenseMissing:"Senza licenza",licenseExpired:"Licenza scaduta",licenseReleaseNotCovered:"Questa versione non \xE8 coperta dalla licenza",licenseDomainMismatch:"Licenza non valida per questo dominio",licenseRevoked:"Licenza revocata",licenseInvalidFormat:"Chiave di licenza malformata",licenseInvalidSignature:"Firma della licenza non valida",licenseEngineUnavailable:"Il browser non pu\xF2 verificare la licenza (HTTPS richiesto)"},Nl={ok:"OK",cancel:"Cancelar",apply:"Aplicar",close:"Fechar",clear:"Limpar",save:"Guardar",search:"Pesquisar...",selectAll:"Selecionar tudo",showAll:"Mostrar tudo",remove:"Remover",none:"Nenhum",toolbarSearch:"Pesquisar...",exportMenu:"Exportar",exportCsv:"Exportar para CSV",exportExcel:"Exportar todos os dados para Excel",exportExcelSelected:"Exportar as linhas selecionadas para Excel",exportPdf:"Exportar para PDF",exporting:"A exportar\u2026",columns:"Colunas",hiddenColumns:"Colunas ocultas",noHiddenColumns:"Nenhuma coluna oculta.",sortAsc:"Classificar de A a Z",sortDesc:"Classificar de Z a A",clearSort:"Limpar classifica\xE7\xE3o",groupByColumn:"Agrupar por esta coluna",ungroupColumn:"Remover do agrupamento",showGroupPanel:"Mostrar painel de agrupamento",hideGroupPanel:"Ocultar painel de agrupamento",showFooter:"Mostrar rodap\xE9",hideFooter:"Ocultar rodap\xE9",showGroupFooters:"Mostrar rodap\xE9s de grupo",hideGroupFooters:"Ocultar rodap\xE9s de grupo",hideColumn:"Ocultar esta coluna",fieldChooser:"Seletor de campos\u2026",bestFit:"Ajustar largura",bestFitAll:"Ajustar largura (todas as colunas)",fixedPosition:"Definir posi\xE7\xE3o fixa",pinLeft:"Esquerda",pinRight:"Direita",pinSticky:"Fixa",unpin:"Libertar",moveLeft:"Mover para a esquerda",moveRight:"Mover para a direita",filterPlaceholder:"Filtrar\u2026",filterColumnAria:"Filtrar {column}",filterSelectAll:"Selecionar tudo",filterBlank:"(Em branco)",filterNoMatch:"Nenhum valor correspondente",filterLoading:"A carregar valores\u2026",filterTruncated:"S\xE3o mostrados apenas os primeiros valores \u2014 pesquise para encontrar os restantes.",filterRemove:"Remover o filtro",filterToggle:"Aplicar o filtro",filterEditBuilder:"Editar o filtro",filterNone:"Sem filtro",filterActive:"Filtro ativo",opEquals:"\xE9",opNotEquals:"n\xE3o \xE9",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"cont\xE9m",opNotContains:"n\xE3o cont\xE9m",opStartsWith:"come\xE7a por",opEndsWith:"termina em",opIsBlank:"est\xE1 em branco",opIsNotBlank:"n\xE3o est\xE1 em branco",opIsOneOf:"\xE9 um de",opIsBetween:"est\xE1 entre",opValuesCount:"{n} valores",filterAnd:"E",filterOr:"OU",builderTitle:"Construtor de filtros",builderCombine:"Combinar condi\xE7\xF5es com",builderAddCondition:"Adicionar condi\xE7\xE3o",builderAddGroup:"Adicionar grupo",builderRemoveGroup:"Remover grupo",builderRemoveCondition:"Remover condi\xE7\xE3o",builderEmpty:"Ainda n\xE3o h\xE1 condi\xE7\xF5es.",builderColumn:"Coluna",builderOperator:"Operador",builderValue:"Valor",builderValueFrom:"De",builderValueTo:"At\xE9",builderValuePlaceholder:"Introduza um valor",groupPanelHint:"Arraste uma coluna para aqui para agrupar por ela",groupAddLevel:"Adicionar n\xEDvel de agrupamento",groupAddLevelButton:"+ Adicionar n\xEDvel\u2026",groupNoGrouping:"(sem agrupamento)",groupLevelAria:"N\xEDvel de agrupamento {n}",groupRemoveAria:"Remover {column}",pagerFirst:"Primeira p\xE1gina",pagerPrevious:"P\xE1gina anterior",pagerNext:"P\xE1gina seguinte",pagerLast:"\xDAltima p\xE1gina",pagerPage:"P\xE1gina",pagerOf:"de",pagerRowsPerPage:"Linhas por p\xE1gina",pagerAria:"Pagina\xE7\xE3o",selectAllRows:"Selecionar todas as linhas",selectRowAria:"Selecionar a linha {row}",summaryAria:"Resumo",columnTotalsAria:"Totais das colunas",rowActions:"A\xE7\xF5es da linha",detailsAria:"Detalhes",rowNumberAria:"N\xFAmero da linha",noteEditorAria:"Nota da c\xE9lula",notePlaceholder:"Escreva uma nota sobre esta c\xE9lula\u2026",addNote:"Adicionar nota\u2026",editNote:"Editar nota\u2026",deleteNote:"Excluir nota",expandDetails:"Expandir detalhes",collapseDetails:"Recolher detalhes",dragToReorder:"Arraste para reordenar",menuCopy:"Copiar",menuCopyWithHeaders:"Copiar com cabe\xE7alhos",menuCopyWithGroupHeaders:"Copiar com cabe\xE7alhos de grupo",menuCut:"Recortar",menuPaste:"Colar",menuExport:"Exportar",menuChartRange:"Gr\xE1fico das colunas selecionadas",statsSum:"Soma",statsCount:"Contagem",statsAvg:"M\xE9dia",statsMin:"M\xEDn",statsMax:"M\xE1x",statsCells:"C\xE9lulas",statsTooLarge:"Sele\xE7\xE3o demasiado grande para totalizar",statusRows:"Linhas",statusFiltered:"Filtradas",statusSelected:"Selecionadas",summaryRows:"linhas",announceRows:"{n} linhas",announceSortedBy:"ordenado por {columns}",announceSelected:"{n} selecionadas",announceAscending:"crescente",announceDescending:"decrescente",sideFilters:"Filtros",sideBarAria:"Pain\xE9is de ferramentas",sideClearFilters:"Limpar todos os filtros",summarySum:"Soma",summaryAvg:"M\xE9dia",summaryMin:"M\xEDn",summaryMax:"M\xE1x",summaryCount:"Contagem",summaryDistinct:"Distintos",summaryCustom:"Personalizado",noTotal:"Sem total",busy:"A processar\u2026",busyLoading:"A carregar linhas\u2026",busyEncoding:"A preparar os dados\u2026",busyFiltering:"A filtrar linhas\u2026",busySorting:"A classificar linhas\u2026",busyComputing:"A filtrar e classificar\u2026",busyGrouping:"A criar grupos\u2026",busyAggregating:"A calcular totais\u2026",busyProjecting:"A atualizar a vista\u2026",busyExporting:"A criar o ficheiro\u2026",noData:"Nenhum dado encontrado",editNewRow:"Nova linha",editSaveChanges:"Guardar altera\xE7\xF5es",editDiscardChanges:"Descartar altera\xE7\xF5es",editRow:"Editar linha",editRowMenu:"Editar linha\u2026",editDeleteRow:"Eliminar linha",editUndoDelete:"Anular elimina\xE7\xE3o",editActions:"A\xE7\xF5es",editSaveRow:"Guardar linha",editSaving:"A guardar\u2026",editEditingRow:"A editar a linha {row}",editSaveCount:"Guardar {n} linha(s)",editCannotSave:"N\xE3o \xE9 poss\xEDvel guardar",editSaveFailed:"N\xE3o foi poss\xEDvel guardar as altera\xE7\xF5es.",editDeleteConfirm:"Eliminar esta linha?",editAddRowUndo:"Adicionar linha",editDeleteRowUndo:"Eliminar linha",editCellUndo:"Editar {column}",editFillUndo:"Preencher {count} c\xE9lulas",editPasteUndo:"Colar {count} c\xE9lulas",editCutUndo:"Recortar {count} c\xE9lulas",editNoMatch:"Sem correspond\xEAncia",formEditTitle:"Editar linha",formAddTitle:"Nova linha",formShortcut:"{key}+Enter para guardar \xB7 Esc para cancelar",validationRequired:"Este campo \xE9 obrigat\xF3rio",validationNumber:"Tem de ser um n\xFAmero",validationFormat:"Formato inv\xE1lido",validationEmail:"Endere\xE7o de e-mail inv\xE1lido",validationInvalid:"Valor inv\xE1lido",dateCalendar:"Calend\xE1rio",dateOpenCalendar:"Abrir calend\xE1rio",datePreviousMonth:"M\xEAs anterior",dateNextMonth:"M\xEAs seguinte",monthJanuary:"Janeiro",monthFebruary:"Fevereiro",monthMarch:"Mar\xE7o",monthApril:"Abril",monthMay:"Maio",monthJune:"Junho",monthJuly:"Julho",monthAugust:"Agosto",monthSeptember:"Setembro",monthOctober:"Outubro",monthNovember:"Novembro",monthDecember:"Dezembro",weekStartsOn:"1",weekdaySu:"Do",weekdayMo:"Se",weekdayTu:"Te",weekdayWe:"Qa",weekdayTh:"Qi",weekdayFr:"Sx",weekdaySa:"S\xE1",importTitle:"Importar dados",importStepSource:"1. Origem",importStepMap:"2. Mapear colunas",importFile:"Ficheiro CSV",importPaste:"\u2026ou cole linhas",importSeparator:"Separador",importSeparatorAuto:"Detetar automaticamente",importSeparatorComma:"V\xEDrgula ,",importSeparatorSemicolon:"Ponto e v\xEDrgula ;",importSeparatorTab:"Tabula\xE7\xE3o",importSeparatorPipe:"Barra vertical |",importFileColumn:"Coluna do ficheiro",importDetected:"Detetado",importGridColumn:"Coluna da tabela",importSample:"Amostra",importSkip:"\u2014 ignorar \u2014",importPreview:"Pr\xE9-visualiza\xE7\xE3o",importNoSource:"Escolha primeiro um ficheiro ou cole algumas linhas.",importNoRows:"N\xE3o foram encontradas linhas de dados.",importAction:"Importar",exportAborted:"Exporta\xE7\xE3o cancelada",exportSheetName:"Dados",chart:"Gr\xE1fico",chartCategory:"Categoria",chartSeries:"S\xE9rie",chartAddSeries:"Adicionar s\xE9rie",chartRemoveSeries:"Remover",chartSource:"Dados",chartSourceView:"Linhas filtradas",chartSourceSelection:"Linhas selecionadas",chartSourceAll:"Todas as linhas",chartClose:"Fechar o gr\xE1fico",chartFullscreen:"Ecr\xE3 inteiro",chartExitFullscreen:"Sair do ecr\xE3 inteiro",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"N\xE3o foi poss\xEDvel exportar o gr\xE1fico.",chartCrossFiltered:"A tabela est\xE1 filtrada por {value}.",chartBlankCategory:"(em branco)",chartTruncated:"A mostrar as {n} principais categorias; as restantes est\xE3o agrupadas como \xABOutros\xBB.",chartOther:"Outros",chartEmpty:"Ainda n\xE3o h\xE1 nada para representar.",chartNeedsRecharts:"Os gr\xE1ficos precisam do pacote opcional `recharts`. Instale-o para os desenhar.",chartOnlyOneSeries:"Este tipo de gr\xE1fico mostra uma s\xE9rie.",chartByColumn:"Gr\xE1fico por esta coluna",chartGroupBy:"Por",chartGroupNone:"Cada valor",chartGroupAuto:"Autom\xE1tico",chartGroupDay:"Dia",chartGroupWeek:"Semana",chartGroupMonth:"M\xEAs",chartGroupQuarter:"Trimestre",chartGroupYear:"Ano",chartGroupBins:"{n} intervalos",chartBucketAdjusted:"Demasiados intervalos para um eixo \u2014 agrupados de forma mais ampla.",chartWindowed:"A mostrar {shown} de {total}.",chartShowAll:"Mostrar tudo",chartCanvasHint:"Gr\xE1fico. Desloque para ampliar, arraste para mover, setas para navegar, 0 para mostrar tudo.",chartAggSum:"Soma",chartAggAvg:"M\xE9dia",chartAggMin:"M\xEDn",chartAggMax:"M\xE1x",chartAggCount:"Contagem",chartAggDistinct:"Distintos",chartTypeColumn:"Colunas",chartTypeBar:"Barras",chartTypeLine:"Linhas",chartTypeArea:"\xC1reas",chartTypePie:"Circular",chartTypeDonut:"Anel",licenseMissing:"Sem licen\xE7a",licenseExpired:"Licen\xE7a expirada",licenseReleaseNotCovered:"Esta vers\xE3o n\xE3o \xE9 coberta pela licen\xE7a",licenseDomainMismatch:"Licen\xE7a n\xE3o v\xE1lida para este dom\xEDnio",licenseRevoked:"Licen\xE7a revogada",licenseInvalidFormat:"Chave de licen\xE7a malformada",licenseInvalidSignature:"Assinatura da licen\xE7a inv\xE1lida",licenseEngineUnavailable:"O navegador n\xE3o consegue verificar a licen\xE7a (HTTPS necess\xE1rio)"},Tl={ok:"\u041E\u041A",cancel:"\u041E\u0442\u043C\u0435\u043D\u0430",apply:"\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C",close:"\u0417\u0430\u043A\u0440\u044B\u0442\u044C",clear:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C",save:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C",search:"\u041F\u043E\u0438\u0441\u043A...",selectAll:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435",showAll:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435",remove:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",none:"\u041D\u0435\u0442",toolbarSearch:"\u041F\u043E\u0438\u0441\u043A...",exportMenu:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442",exportCsv:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u0432 CSV",exportExcel:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u0441\u0435 \u0434\u0430\u043D\u043D\u044B\u0435 \u0432 Excel",exportExcelSelected:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0441\u0442\u0440\u043E\u043A\u0438 \u0432 Excel",exportPdf:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u0432 PDF",exporting:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442\u2026",columns:"\u0421\u0442\u043E\u043B\u0431\u0446\u044B",hiddenColumns:"\u0421\u043A\u0440\u044B\u0442\u044B\u0435 \u0441\u0442\u043E\u043B\u0431\u0446\u044B",noHiddenColumns:"\u0421\u043A\u0440\u044B\u0442\u044B\u0445 \u0441\u0442\u043E\u043B\u0431\u0446\u043E\u0432 \u043D\u0435\u0442.",sortAsc:"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043E\u0442 \u0410 \u0434\u043E \u042F",sortDesc:"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043E\u0442 \u042F \u0434\u043E \u0410",clearSort:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0443",groupByColumn:"\u0413\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443",ungroupColumn:"\u0423\u0431\u0440\u0430\u0442\u044C \u0438\u0437 \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",showGroupPanel:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u043F\u0430\u043D\u0435\u043B\u044C \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",hideGroupPanel:"\u0421\u043A\u0440\u044B\u0442\u044C \u043F\u0430\u043D\u0435\u043B\u044C \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",showFooter:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0438\u0442\u043E\u0433\u0438",hideFooter:"\u0421\u043A\u0440\u044B\u0442\u044C \u0438\u0442\u043E\u0433\u0438",showGroupFooters:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0438\u0442\u043E\u0433\u0438 \u043F\u043E \u0433\u0440\u0443\u043F\u043F\u0430\u043C",hideGroupFooters:"\u0421\u043A\u0440\u044B\u0442\u044C \u0438\u0442\u043E\u0433\u0438 \u043F\u043E \u0433\u0440\u0443\u043F\u043F\u0430\u043C",hideColumn:"\u0421\u043A\u0440\u044B\u0442\u044C \u044D\u0442\u043E\u0442 \u0441\u0442\u043E\u043B\u0431\u0435\u0446",fieldChooser:"\u0412\u044B\u0431\u043E\u0440 \u043F\u043E\u043B\u0435\u0439\u2026",bestFit:"\u041F\u043E\u0434\u043E\u0431\u0440\u0430\u0442\u044C \u0448\u0438\u0440\u0438\u043D\u0443",bestFitAll:"\u041F\u043E\u0434\u043E\u0431\u0440\u0430\u0442\u044C \u0448\u0438\u0440\u0438\u043D\u0443 (\u0432\u0441\u0435 \u0441\u0442\u043E\u043B\u0431\u0446\u044B)",fixedPosition:"\u0417\u0430\u0434\u0430\u0442\u044C \u0444\u0438\u043A\u0441\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u0443\u044E \u043F\u043E\u0437\u0438\u0446\u0438\u044E",pinLeft:"\u0421\u043B\u0435\u0432\u0430",pinRight:"\u0421\u043F\u0440\u0430\u0432\u0430",pinSticky:"\u0417\u0430\u043A\u0440\u0435\u043F\u043B\u0451\u043D",unpin:"\u041E\u0442\u043A\u0440\u0435\u043F\u0438\u0442\u044C",moveLeft:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043B\u0435\u0432\u043E",moveRight:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E",filterPlaceholder:"\u0424\u0438\u043B\u044C\u0442\u0440\u2026",filterColumnAria:"\u0424\u0438\u043B\u044C\u0442\u0440 \xAB{column}\xBB",filterSelectAll:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435",filterBlank:"(\u041F\u0443\u0441\u0442\u043E)",filterNoMatch:"\u0421\u043E\u0432\u043F\u0430\u0434\u0435\u043D\u0438\u0439 \u043D\u0435\u0442",filterLoading:"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439\u2026",filterTruncated:"\u041F\u043E\u043A\u0430\u0437\u0430\u043D\u044B \u0442\u043E\u043B\u044C\u043A\u043E \u043F\u0435\u0440\u0432\u044B\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u2014 \u0432\u043E\u0441\u043F\u043E\u043B\u044C\u0437\u0443\u0439\u0442\u0435\u0441\u044C \u043F\u043E\u0438\u0441\u043A\u043E\u043C, \u0447\u0442\u043E\u0431\u044B \u043D\u0430\u0439\u0442\u0438 \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u044B\u0435.",filterRemove:"\u0423\u0431\u0440\u0430\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440",filterToggle:"\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440",filterEditBuilder:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440",filterNone:"\u0424\u0438\u043B\u044C\u0442\u0440\u0430 \u043D\u0435\u0442",filterActive:"\u0424\u0438\u043B\u044C\u0442\u0440 \u0430\u043A\u0442\u0438\u0432\u0435\u043D",opEquals:"\u0440\u0430\u0432\u043D\u043E",opNotEquals:"\u043D\u0435 \u0440\u0430\u0432\u043D\u043E",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"\u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442",opNotContains:"\u043D\u0435 \u0441\u043E\u0434\u0435\u0440\u0436\u0438\u0442",opStartsWith:"\u043D\u0430\u0447\u0438\u043D\u0430\u0435\u0442\u0441\u044F \u0441",opEndsWith:"\u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044F \u043D\u0430",opIsBlank:"\u043F\u0443\u0441\u0442\u043E",opIsNotBlank:"\u043D\u0435 \u043F\u0443\u0441\u0442\u043E",opIsOneOf:"\u043E\u0434\u043D\u043E \u0438\u0437",opIsBetween:"\u043C\u0435\u0436\u0434\u0443",opValuesCount:"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0439: {n}",filterAnd:"\u0418",filterOr:"\u0418\u041B\u0418",builderTitle:"\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u0444\u0438\u043B\u044C\u0442\u0440\u0430",builderCombine:"\u041E\u0431\u044A\u0435\u0434\u0438\u043D\u0438\u0442\u044C \u0443\u0441\u043B\u043E\u0432\u0438\u044F \u043E\u043F\u0435\u0440\u0430\u0442\u043E\u0440\u043E\u043C",builderAddCondition:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0443\u0441\u043B\u043E\u0432\u0438\u0435",builderAddGroup:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443",builderRemoveGroup:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0433\u0440\u0443\u043F\u043F\u0443",builderRemoveCondition:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0443\u0441\u043B\u043E\u0432\u0438\u0435",builderEmpty:"\u0423\u0441\u043B\u043E\u0432\u0438\u0439 \u043F\u043E\u043A\u0430 \u043D\u0435\u0442.",builderColumn:"\u0421\u0442\u043E\u043B\u0431\u0435\u0446",builderOperator:"\u041E\u043F\u0435\u0440\u0430\u0442\u043E\u0440",builderValue:"\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u0435",builderValueFrom:"\u041E\u0442",builderValueTo:"\u0414\u043E",builderValuePlaceholder:"\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",groupPanelHint:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0441\u044E\u0434\u0430 \u0441\u0442\u043E\u043B\u0431\u0435\u0446, \u0447\u0442\u043E\u0431\u044B \u0441\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u043D\u0435\u043C\u0443",groupAddLevel:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0443\u0440\u043E\u0432\u0435\u043D\u044C \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",groupAddLevelButton:"+ \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0443\u0440\u043E\u0432\u0435\u043D\u044C\u2026",groupNoGrouping:"(\u0431\u0435\u0437 \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438)",groupLevelAria:"\u0423\u0440\u043E\u0432\u0435\u043D\u044C \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438 {n}",groupRemoveAria:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C {column}",pagerFirst:"\u041F\u0435\u0440\u0432\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430",pagerPrevious:"\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430",pagerNext:"\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0430\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430",pagerLast:"\u041F\u043E\u0441\u043B\u0435\u0434\u043D\u044F\u044F \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0430",pagerPage:"\u0421\u0442\u0440\u0430\u043D\u0438\u0446\u0430",pagerOf:"\u0438\u0437",pagerRowsPerPage:"\u0421\u0442\u0440\u043E\u043A \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0435",pagerAria:"\u041F\u043E\u0441\u0442\u0440\u0430\u043D\u0438\u0447\u043D\u0430\u044F \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F",selectAllRows:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",selectRowAria:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443 {row}",summaryAria:"\u0421\u0432\u043E\u0434\u043A\u0430",columnTotalsAria:"\u0418\u0442\u043E\u0433\u0438 \u043F\u043E \u0441\u0442\u043E\u043B\u0431\u0446\u0430\u043C",rowActions:"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044F \u0441\u043E \u0441\u0442\u0440\u043E\u043A\u043E\u0439",detailsAria:"\u041F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0441\u0442\u0438",rowNumberAria:"\u041D\u043E\u043C\u0435\u0440 \u0441\u0442\u0440\u043E\u043A\u0438",noteEditorAria:"\u041F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435 \u043A \u044F\u0447\u0435\u0439\u043A\u0435",notePlaceholder:"\u041D\u0430\u043F\u0438\u0448\u0438\u0442\u0435 \u043F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435 \u043A \u044D\u0442\u043E\u0439 \u044F\u0447\u0435\u0439\u043A\u0435\u2026",addNote:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u043F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435\u2026",editNote:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435\u2026",deleteNote:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043F\u0440\u0438\u043C\u0435\u0447\u0430\u043D\u0438\u0435",expandDetails:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0441\u0442\u0438",collapseDetails:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u043F\u043E\u0434\u0440\u043E\u0431\u043D\u043E\u0441\u0442\u0438",dragToReorder:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435, \u0447\u0442\u043E\u0431\u044B \u0438\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u043F\u043E\u0440\u044F\u0434\u043E\u043A",menuCopy:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C",menuCopyWithHeaders:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441 \u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043A\u0430\u043C\u0438",menuCopyWithGroupHeaders:"\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0441 \u0437\u0430\u0433\u043E\u043B\u043E\u0432\u043A\u0430\u043C\u0438 \u0433\u0440\u0443\u043F\u043F",menuCut:"\u0412\u044B\u0440\u0435\u0437\u0430\u0442\u044C",menuPaste:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C",menuExport:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442",menuChartRange:"\u0414\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0430 \u043F\u043E \u0432\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u043C \u0441\u0442\u043E\u043B\u0431\u0446\u0430\u043C",statsSum:"\u0421\u0443\u043C\u043C\u0430",statsCount:"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E",statsAvg:"\u0421\u0440\u0435\u0434\u043D\u0435\u0435",statsMin:"\u041C\u0438\u043D",statsMax:"\u041C\u0430\u043A\u0441",statsCells:"\u042F\u0447\u0435\u0439\u043A\u0438",statsTooLarge:"\u0412\u044B\u0434\u0435\u043B\u0435\u043D\u0438\u0435 \u0441\u043B\u0438\u0448\u043A\u043E\u043C \u0432\u0435\u043B\u0438\u043A\u043E \u0434\u043B\u044F \u043F\u043E\u0434\u0441\u0447\u0451\u0442\u0430",statusRows:"\u0421\u0442\u0440\u043E\u043A\u0438",statusFiltered:"\u041E\u0442\u0444\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u043D\u043E",statusSelected:"\u0412\u044B\u0431\u0440\u0430\u043D\u043E",summaryRows:"\u0441\u0442\u0440\u043E\u043A",announceRows:"\u0421\u0442\u0440\u043E\u043A: {n}",announceSortedBy:"\u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430 \u043F\u043E {columns}",announceSelected:"\u0432\u044B\u0431\u0440\u0430\u043D\u043E: {n}",announceAscending:"\u043F\u043E \u0432\u043E\u0437\u0440\u0430\u0441\u0442\u0430\u043D\u0438\u044E",announceDescending:"\u043F\u043E \u0443\u0431\u044B\u0432\u0430\u043D\u0438\u044E",sideFilters:"\u0424\u0438\u043B\u044C\u0442\u0440\u044B",sideBarAria:"\u041F\u0430\u043D\u0435\u043B\u0438 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u043E\u0432",sideClearFilters:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u0441\u0435 \u0444\u0438\u043B\u044C\u0442\u0440\u044B",summarySum:"\u0421\u0443\u043C\u043C\u0430",summaryAvg:"\u0421\u0440\u0435\u0434\u043D\u0435\u0435",summaryMin:"\u041C\u0438\u043D",summaryMax:"\u041C\u0430\u043A\u0441",summaryCount:"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E",summaryDistinct:"\u0423\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u0435",summaryCustom:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439",noTotal:"\u041D\u0435\u0442 \u0438\u0442\u043E\u0433\u0430",busy:"\u0412\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F\u2026",busyLoading:"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430 \u0441\u0442\u0440\u043E\u043A\u2026",busyEncoding:"\u041F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043A\u0430 \u0434\u0430\u043D\u043D\u044B\u0445\u2026",busyFiltering:"\u0424\u0438\u043B\u044C\u0442\u0440\u0430\u0446\u0438\u044F \u0441\u0442\u0440\u043E\u043A\u2026",busySorting:"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430 \u0441\u0442\u0440\u043E\u043A\u2026",busyComputing:"\u0424\u0438\u043B\u044C\u0442\u0440\u0430\u0446\u0438\u044F \u0438 \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0430\u2026",busyGrouping:"\u041F\u043E\u0441\u0442\u0440\u043E\u0435\u043D\u0438\u0435 \u0433\u0440\u0443\u043F\u043F\u2026",busyAggregating:"\u0412\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u0435 \u0438\u0442\u043E\u0433\u043E\u0432\u2026",busyProjecting:"\u041E\u0431\u043D\u043E\u0432\u043B\u0435\u043D\u0438\u0435 \u043F\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u044F\u2026",busyExporting:"\u0421\u043E\u0437\u0434\u0430\u043D\u0438\u0435 \u0444\u0430\u0439\u043B\u0430\u2026",noData:"\u0414\u0430\u043D\u043D\u044B\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",editNewRow:"\u041D\u043E\u0432\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430",editSaveChanges:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F",editDiscardChanges:"\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F",editRow:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443",editRowMenu:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443\u2026",editDeleteRow:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443",editUndoDelete:"\u041E\u0442\u043C\u0435\u043D\u0438\u0442\u044C \u0443\u0434\u0430\u043B\u0435\u043D\u0438\u0435",editActions:"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044F",editSaveRow:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443",editSaving:"\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u0438\u0435\u2026",editEditingRow:"\u0418\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u0435 \u0441\u0442\u0440\u043E\u043A\u0438 {row}",editSaveCount:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A: {n}",editCannotSave:"\u041D\u0435 \u0443\u0434\u0430\u0451\u0442\u0441\u044F \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C",editSaveFailed:"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F.",editDeleteConfirm:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u044D\u0442\u0443 \u0441\u0442\u0440\u043E\u043A\u0443?",editAddRowUndo:"\u0414\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",editDeleteRowUndo:"\u0423\u0434\u0430\u043B\u0435\u043D\u0438\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",editCellUndo:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C {column}",editFillUndo:"\u0417\u0430\u043F\u043E\u043B\u043D\u0438\u0442\u044C {count} \u044F\u0447\u0435\u0435\u043A",editPasteUndo:"\u0412\u0441\u0442\u0430\u0432\u0438\u0442\u044C {count} \u044F\u0447\u0435\u0435\u043A",editCutUndo:"\u0412\u044B\u0440\u0435\u0437\u0430\u0442\u044C {count} \u044F\u0447\u0435\u0435\u043A",editNoMatch:"\u0421\u043E\u0432\u043F\u0430\u0434\u0435\u043D\u0438\u0439 \u043D\u0435\u0442",formEditTitle:"\u0418\u0437\u043C\u0435\u043D\u0438\u0442\u044C \u0441\u0442\u0440\u043E\u043A\u0443",formAddTitle:"\u041D\u043E\u0432\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430",formShortcut:"{key}+Enter \u2014 \u0441\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \xB7 Esc \u2014 \u043E\u0442\u043C\u0435\u043D\u0438\u0442\u044C",validationRequired:"\u042D\u0442\u043E \u043F\u043E\u043B\u0435 \u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u043E",validationNumber:"\u0414\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u0447\u0438\u0441\u043B\u043E\u043C",validationFormat:"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442",validationEmail:"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0430\u0434\u0440\u0435\u0441 \u044D\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0439 \u043F\u043E\u0447\u0442\u044B",validationInvalid:"\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",dateCalendar:"\u041A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C",dateOpenCalendar:"\u041E\u0442\u043A\u0440\u044B\u0442\u044C \u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044C",datePreviousMonth:"\u041F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0438\u0439 \u043C\u0435\u0441\u044F\u0446",dateNextMonth:"\u0421\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439 \u043C\u0435\u0441\u044F\u0446",monthJanuary:"\u042F\u043D\u0432\u0430\u0440\u044C",monthFebruary:"\u0424\u0435\u0432\u0440\u0430\u043B\u044C",monthMarch:"\u041C\u0430\u0440\u0442",monthApril:"\u0410\u043F\u0440\u0435\u043B\u044C",monthMay:"\u041C\u0430\u0439",monthJune:"\u0418\u044E\u043D\u044C",monthJuly:"\u0418\u044E\u043B\u044C",monthAugust:"\u0410\u0432\u0433\u0443\u0441\u0442",monthSeptember:"\u0421\u0435\u043D\u0442\u044F\u0431\u0440\u044C",monthOctober:"\u041E\u043A\u0442\u044F\u0431\u0440\u044C",monthNovember:"\u041D\u043E\u044F\u0431\u0440\u044C",monthDecember:"\u0414\u0435\u043A\u0430\u0431\u0440\u044C",weekStartsOn:"1",weekdaySu:"\u0412\u0441",weekdayMo:"\u041F\u043D",weekdayTu:"\u0412\u0442",weekdayWe:"\u0421\u0440",weekdayTh:"\u0427\u0442",weekdayFr:"\u041F\u0442",weekdaySa:"\u0421\u0431",importTitle:"\u0418\u043C\u043F\u043E\u0440\u0442 \u0434\u0430\u043D\u043D\u044B\u0445",importStepSource:"1. \u0418\u0441\u0442\u043E\u0447\u043D\u0438\u043A",importStepMap:"2. \u0421\u043E\u043F\u043E\u0441\u0442\u0430\u0432\u043B\u0435\u043D\u0438\u0435 \u0441\u0442\u043E\u043B\u0431\u0446\u043E\u0432",importFile:"\u0424\u0430\u0439\u043B CSV",importPaste:"\u2026\u0438\u043B\u0438 \u0432\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",importSeparator:"\u0420\u0430\u0437\u0434\u0435\u043B\u0438\u0442\u0435\u043B\u044C",importSeparatorAuto:"\u041E\u043F\u0440\u0435\u0434\u0435\u043B\u0438\u0442\u044C \u0430\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438",importSeparatorComma:"\u0417\u0430\u043F\u044F\u0442\u0430\u044F ,",importSeparatorSemicolon:"\u0422\u043E\u0447\u043A\u0430 \u0441 \u0437\u0430\u043F\u044F\u0442\u043E\u0439 ;",importSeparatorTab:"\u0422\u0430\u0431\u0443\u043B\u044F\u0446\u0438\u044F",importSeparatorPipe:"\u0412\u0435\u0440\u0442\u0438\u043A\u0430\u043B\u044C\u043D\u0430\u044F \u0447\u0435\u0440\u0442\u0430 |",importFileColumn:"\u0421\u0442\u043E\u043B\u0431\u0435\u0446 \u0444\u0430\u0439\u043B\u0430",importDetected:"\u041E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u043E",importGridColumn:"\u0421\u0442\u043E\u043B\u0431\u0435\u0446 \u0442\u0430\u0431\u043B\u0438\u0446\u044B",importSample:"\u041F\u0440\u0438\u043C\u0435\u0440",importSkip:"\u2014 \u043F\u0440\u043E\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u2014",importPreview:"\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440",importNoSource:"\u0421\u043D\u0430\u0447\u0430\u043B\u0430 \u0432\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043B \u0438\u043B\u0438 \u0432\u0441\u0442\u0430\u0432\u044C\u0442\u0435 \u0441\u0442\u0440\u043E\u043A\u0438.",importNoRows:"\u0421\u0442\u0440\u043E\u043A\u0438 \u0434\u0430\u043D\u043D\u044B\u0445 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B.",importAction:"\u0418\u043C\u043F\u043E\u0440\u0442",exportAborted:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u043F\u0440\u0435\u0440\u0432\u0430\u043D",exportSheetName:"\u0414\u0430\u043D\u043D\u044B\u0435",chart:"\u0414\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0430",chartCategory:"\u041A\u0430\u0442\u0435\u0433\u043E\u0440\u0438\u044F",chartSeries:"\u0420\u044F\u0434",chartAddSeries:"\u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0440\u044F\u0434",chartRemoveSeries:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C",chartSource:"\u0414\u0430\u043D\u043D\u044B\u0435",chartSourceView:"\u041E\u0442\u0444\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",chartSourceSelection:"\u0412\u044B\u0431\u0440\u0430\u043D\u043D\u044B\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",chartSourceAll:"\u0412\u0441\u0435 \u0441\u0442\u0440\u043E\u043A\u0438",chartClose:"\u0417\u0430\u043A\u0440\u044B\u0442\u044C \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0443",chartFullscreen:"\u0412\u043E \u0432\u0435\u0441\u044C \u044D\u043A\u0440\u0430\u043D",chartExitFullscreen:"\u0412\u044B\u0439\u0442\u0438 \u0438\u0437 \u043F\u043E\u043B\u043D\u043E\u044D\u043A\u0440\u0430\u043D\u043D\u043E\u0433\u043E \u0440\u0435\u0436\u0438\u043C\u0430",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u044D\u043A\u0441\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0443.",chartCrossFiltered:"\u0422\u0430\u0431\u043B\u0438\u0446\u0430 \u043E\u0442\u0444\u0438\u043B\u044C\u0442\u0440\u043E\u0432\u0430\u043D\u0430 \u043F\u043E \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044E {value}.",chartBlankCategory:"(\u043F\u0443\u0441\u0442\u043E)",chartTruncated:"\u041F\u043E\u043A\u0430\u0437\u0430\u043D\u044B {n} \u043E\u0441\u043D\u043E\u0432\u043D\u044B\u0445 \u043A\u0430\u0442\u0435\u0433\u043E\u0440\u0438\u0439; \u043E\u0441\u0442\u0430\u043B\u044C\u043D\u044B\u0435 \u043E\u0431\u044A\u0435\u0434\u0438\u043D\u0435\u043D\u044B \u043A\u0430\u043A \xAB\u041F\u0440\u043E\u0447\u0435\u0435\xBB.",chartOther:"\u041F\u0440\u043E\u0447\u0435\u0435",chartEmpty:"\u041F\u043E\u043A\u0430 \u043D\u0435\u0447\u0435\u0433\u043E \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0430\u0442\u044C.",chartNeedsRecharts:"\u0414\u043B\u044F \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u043C \u043D\u0443\u0436\u0435\u043D \u043D\u0435\u043E\u0431\u044F\u0437\u0430\u0442\u0435\u043B\u044C\u043D\u044B\u0439 \u043F\u0430\u043A\u0435\u0442 `recharts`. \u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 \u0435\u0433\u043E, \u0447\u0442\u043E\u0431\u044B \u0438\u0445 \u0440\u0438\u0441\u043E\u0432\u0430\u0442\u044C.",chartOnlyOneSeries:"\u042D\u0442\u043E\u0442 \u0442\u0438\u043F \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u044B \u043F\u043E\u043A\u0430\u0437\u044B\u0432\u0430\u0435\u0442 \u043E\u0434\u0438\u043D \u0440\u044F\u0434.",chartByColumn:"\u0414\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0430 \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443",chartGroupBy:"\u041F\u043E",chartGroupNone:"\u041A\u0430\u0436\u0434\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",chartGroupAuto:"\u0410\u0432\u0442\u043E\u043C\u0430\u0442\u0438\u0447\u0435\u0441\u043A\u0438",chartGroupDay:"\u0414\u0435\u043D\u044C",chartGroupWeek:"\u041D\u0435\u0434\u0435\u043B\u044F",chartGroupMonth:"\u041C\u0435\u0441\u044F\u0446",chartGroupQuarter:"\u041A\u0432\u0430\u0440\u0442\u0430\u043B",chartGroupYear:"\u0413\u043E\u0434",chartGroupBins:"\u0438\u043D\u0442\u0435\u0440\u0432\u0430\u043B\u043E\u0432: {n}",chartBucketAdjusted:"\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u043D\u043E\u0433\u043E \u0438\u043D\u0442\u0435\u0440\u0432\u0430\u043B\u043E\u0432 \u0434\u043B\u044F \u043E\u0434\u043D\u043E\u0439 \u043E\u0441\u0438 \u2014 \u0441\u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u043A\u0440\u0443\u043F\u043D\u0435\u0435.",chartWindowed:"\u041F\u043E\u043A\u0430\u0437\u0430\u043D\u043E {shown} \u0438\u0437 {total}.",chartShowAll:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435",chartCanvasHint:"\u0414\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u0430. \u041F\u0440\u043E\u043A\u0440\u0443\u0442\u043A\u0430 \u2014 \u043C\u0430\u0441\u0448\u0442\u0430\u0431, \u043F\u0435\u0440\u0435\u0442\u0430\u0441\u043A\u0438\u0432\u0430\u043D\u0438\u0435 \u2014 \u0441\u0434\u0432\u0438\u0433, \u0441\u0442\u0440\u0435\u043B\u043A\u0438 \u2014 \u043F\u0435\u0440\u0435\u043C\u0435\u0449\u0435\u043D\u0438\u0435, 0 \u2014 \u043F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0432\u0441\u0435.",chartAggSum:"\u0421\u0443\u043C\u043C\u0430",chartAggAvg:"\u0421\u0440\u0435\u0434\u043D\u0435\u0435",chartAggMin:"\u041C\u0438\u043D",chartAggMax:"\u041C\u0430\u043A\u0441",chartAggCount:"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E",chartAggDistinct:"\u0423\u043D\u0438\u043A\u0430\u043B\u044C\u043D\u044B\u0435",chartTypeColumn:"\u0421\u0442\u043E\u043B\u0431\u0446\u044B",chartTypeBar:"\u041F\u043E\u043B\u043E\u0441\u044B",chartTypeLine:"\u041B\u0438\u043D\u0438\u044F",chartTypeArea:"\u041E\u0431\u043B\u0430\u0441\u0442\u044C",chartTypePie:"\u041A\u0440\u0443\u0433\u043E\u0432\u0430\u044F",chartTypeDonut:"\u041A\u043E\u043B\u044C\u0446\u0435\u0432\u0430\u044F",licenseMissing:"\u0411\u0435\u0437 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438",licenseExpired:"\u0421\u0440\u043E\u043A \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044F \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438 \u0438\u0441\u0442\u0451\u043A",licenseReleaseNotCovered:"\u042D\u0442\u0430 \u0432\u0435\u0440\u0441\u0438\u044F \u043D\u0435 \u043F\u043E\u043A\u0440\u044B\u0432\u0430\u0435\u0442\u0441\u044F \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0435\u0439",licenseDomainMismatch:"\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u044F \u043D\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u0430 \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0434\u043E\u043C\u0435\u043D\u0430",licenseRevoked:"\u041B\u0438\u0446\u0435\u043D\u0437\u0438\u044F \u043E\u0442\u043E\u0437\u0432\u0430\u043D\u0430",licenseInvalidFormat:"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0444\u043E\u0440\u043C\u0430\u0442 \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u043E\u043D\u043D\u043E\u0433\u043E \u043A\u043B\u044E\u0447\u0430",licenseInvalidSignature:"\u041D\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043B\u044C\u043D\u0430\u044F \u043F\u043E\u0434\u043F\u0438\u0441\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u0438",licenseEngineUnavailable:"\u0411\u0440\u0430\u0443\u0437\u0435\u0440 \u043D\u0435 \u043C\u043E\u0436\u0435\u0442 \u043F\u0440\u043E\u0432\u0435\u0440\u0438\u0442\u044C \u043B\u0438\u0446\u0435\u043D\u0437\u0438\u044E (\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F HTTPS)"},Ml={ok:"\u0645\u0648\u0627\u0641\u0642",cancel:"\u0625\u0644\u063A\u0627\u0621",apply:"\u062A\u0637\u0628\u064A\u0642",close:"\u0625\u063A\u0644\u0627\u0642",clear:"\u0645\u0633\u062D",save:"\u062D\u0641\u0638",search:"\u0628\u062D\u062B...",selectAll:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",showAll:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644",remove:"\u0625\u0632\u0627\u0644\u0629",none:"\u0628\u0644\u0627",toolbarSearch:"\u0628\u062D\u062B...",exportMenu:"\u062A\u0635\u062F\u064A\u0631",exportCsv:"\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 CSV",exportExcel:"\u062A\u0635\u062F\u064A\u0631 \u0643\u0644 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0625\u0644\u0649 Excel",exportExcelSelected:"\u062A\u0635\u062F\u064A\u0631 \u0627\u0644\u0635\u0641\u0648\u0641 \u0627\u0644\u0645\u062D\u062F\u062F\u0629 \u0625\u0644\u0649 Excel",exportPdf:"\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 PDF",exporting:"\u062C\u0627\u0631\u064A \u0627\u0644\u062A\u0635\u062F\u064A\u0631\u2026",columns:"\u0627\u0644\u0623\u0639\u0645\u062F\u0629",hiddenColumns:"\u0627\u0644\u0623\u0639\u0645\u062F\u0629 \u0627\u0644\u0645\u062E\u0641\u064A\u0629",noHiddenColumns:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0623\u0639\u0645\u062F\u0629 \u0645\u062E\u0641\u064A\u0629.",sortAsc:"\u0627\u0644\u0641\u0631\u0632 \u0645\u0646 \u0623 \u0625\u0644\u0649 \u064A",sortDesc:"\u0627\u0644\u0641\u0631\u0632 \u0645\u0646 \u064A \u0625\u0644\u0649 \u0623",clearSort:"\u0645\u0633\u062D \u0627\u0644\u0641\u0631\u0632",groupByColumn:"\u062A\u062C\u0645\u064A\u0639 \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",ungroupColumn:"\u0625\u0632\u0627\u0644\u0629 \u0645\u0646 \u0627\u0644\u062A\u062C\u0645\u064A\u0639",showGroupPanel:"\u0639\u0631\u0636 \u0644\u0648\u062D\u0629 \u0627\u0644\u062A\u062C\u0645\u064A\u0639",hideGroupPanel:"\u0625\u062E\u0641\u0627\u0621 \u0644\u0648\u062D\u0629 \u0627\u0644\u062A\u062C\u0645\u064A\u0639",showFooter:"\u0639\u0631\u0636 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",hideFooter:"\u0625\u062E\u0641\u0627\u0621 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",showGroupFooters:"\u0639\u0631\u0636 \u062A\u0630\u064A\u064A\u0644\u0627\u062A \u0627\u0644\u0645\u062C\u0645\u0648\u0639\u0627\u062A",hideGroupFooters:"\u0625\u062E\u0641\u0627\u0621 \u062A\u0630\u064A\u064A\u0644\u0627\u062A \u0627\u0644\u0645\u062C\u0645\u0648\u0639\u0627\u062A",hideColumn:"\u0625\u062E\u0641\u0627\u0621 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",fieldChooser:"\u0645\u062D\u062F\u062F \u0627\u0644\u062D\u0642\u0648\u0644\u2026",bestFit:"\u0623\u0641\u0636\u0644 \u0639\u0631\u0636",bestFitAll:"\u0623\u0641\u0636\u0644 \u0639\u0631\u0636 (\u0643\u0644 \u0627\u0644\u0623\u0639\u0645\u062F\u0629)",fixedPosition:"\u062A\u0639\u064A\u064A\u0646 \u0645\u0648\u0636\u0639 \u062B\u0627\u0628\u062A",pinLeft:"\u064A\u0633\u0627\u0631",pinRight:"\u064A\u0645\u064A\u0646",pinSticky:"\u0645\u062B\u0628\u0651\u062A",unpin:"\u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u062B\u0628\u064A\u062A",moveLeft:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0633\u0627\u0631",moveRight:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0645\u064A\u0646",filterPlaceholder:"\u062A\u0635\u0641\u064A\u0629\u2026",filterColumnAria:"\u062A\u0635\u0641\u064A\u0629 {column}",filterSelectAll:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",filterBlank:"(\u0641\u0627\u0631\u063A)",filterNoMatch:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0642\u064A\u0645 \u0645\u0637\u0627\u0628\u0642\u0629",filterLoading:"\u062C\u0627\u0631\u064A \u062A\u062D\u0645\u064A\u0644 \u0627\u0644\u0642\u064A\u0645\u2026",filterTruncated:"\u062A\u064F\u0639\u0631\u0636 \u0627\u0644\u0642\u064A\u0645 \u0627\u0644\u0623\u0648\u0644\u0649 \u0641\u0642\u0637 \u2014 \u0627\u0633\u062A\u062E\u062F\u0645 \u0627\u0644\u0628\u062D\u062B \u0644\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0627\u0644\u0628\u0642\u064A\u0629.",filterRemove:"\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",filterToggle:"\u062A\u0637\u0628\u064A\u0642 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",filterEditBuilder:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",filterNone:"\u0644\u0627 \u062A\u0648\u062C\u062F \u062A\u0635\u0641\u064A\u0629",filterActive:"\u0627\u0644\u062A\u0635\u0641\u064A\u0629 \u0645\u0641\u0639\u0651\u0644\u0629",opEquals:"\u064A\u0633\u0627\u0648\u064A",opNotEquals:"\u0644\u0627 \u064A\u0633\u0627\u0648\u064A",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"\u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649",opNotContains:"\u0644\u0627 \u064A\u062D\u062A\u0648\u064A \u0639\u0644\u0649",opStartsWith:"\u064A\u0628\u062F\u0623 \u0628\u0640",opEndsWith:"\u064A\u0646\u062A\u0647\u064A \u0628\u0640",opIsBlank:"\u0641\u0627\u0631\u063A",opIsNotBlank:"\u063A\u064A\u0631 \u0641\u0627\u0631\u063A",opIsOneOf:"\u0648\u0627\u062D\u062F \u0645\u0646",opIsBetween:"\u0628\u064A\u0646",opValuesCount:"{n} \u0642\u064A\u0645\u0629",filterAnd:"\u0648",filterOr:"\u0623\u0648",builderTitle:"\u0645\u0646\u0634\u0626 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",builderCombine:"\u062F\u0645\u062C \u0627\u0644\u0634\u0631\u0648\u0637 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645",builderAddCondition:"\u0625\u0636\u0627\u0641\u0629 \u0634\u0631\u0637",builderAddGroup:"\u0625\u0636\u0627\u0641\u0629 \u0645\u062C\u0645\u0648\u0639\u0629",builderRemoveGroup:"\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u0645\u062C\u0645\u0648\u0639\u0629",builderRemoveCondition:"\u0625\u0632\u0627\u0644\u0629 \u0627\u0644\u0634\u0631\u0637",builderEmpty:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0634\u0631\u0648\u0637 \u0628\u0639\u062F.",builderColumn:"\u0627\u0644\u0639\u0645\u0648\u062F",builderOperator:"\u0627\u0644\u0645\u064F\u0639\u0627\u0645\u0644",builderValue:"\u0627\u0644\u0642\u064A\u0645\u0629",builderValueFrom:"\u0645\u0646",builderValueTo:"\u0625\u0644\u0649",builderValuePlaceholder:"\u0623\u062F\u062E\u0644 \u0642\u064A\u0645\u0629",groupPanelHint:"\u0627\u0633\u062D\u0628 \u0639\u0645\u0648\u062F\u064B\u0627 \u0625\u0644\u0649 \u0647\u0646\u0627 \u0644\u0644\u062A\u062C\u0645\u064A\u0639 \u062D\u0633\u0628\u0647",groupAddLevel:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u0648\u0649 \u062A\u062C\u0645\u064A\u0639",groupAddLevelButton:"+ \u0625\u0636\u0627\u0641\u0629 \u0645\u0633\u062A\u0648\u0649\u2026",groupNoGrouping:"(\u0628\u062F\u0648\u0646 \u062A\u062C\u0645\u064A\u0639)",groupLevelAria:"\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062A\u062C\u0645\u064A\u0639 {n}",groupRemoveAria:"\u0625\u0632\u0627\u0644\u0629 {column}",pagerFirst:"\u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0623\u0648\u0644\u0649",pagerPrevious:"\u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0633\u0627\u0628\u0642\u0629",pagerNext:"\u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u062A\u0627\u0644\u064A\u0629",pagerLast:"\u0627\u0644\u0635\u0641\u062D\u0629 \u0627\u0644\u0623\u062E\u064A\u0631\u0629",pagerPage:"\u0635\u0641\u062D\u0629",pagerOf:"\u0645\u0646",pagerRowsPerPage:"\u0635\u0641\u0648\u0641 \u0644\u0643\u0644 \u0635\u0641\u062D\u0629",pagerAria:"\u062A\u0631\u0642\u064A\u0645 \u0627\u0644\u0635\u0641\u062D\u0627\u062A",selectAllRows:"\u062A\u062D\u062F\u064A\u062F \u0643\u0644 \u0627\u0644\u0635\u0641\u0648\u0641",selectRowAria:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0635\u0641 {row}",summaryAria:"\u0645\u0644\u062E\u0635",columnTotalsAria:"\u0625\u062C\u0645\u0627\u0644\u064A\u0627\u062A \u0627\u0644\u0623\u0639\u0645\u062F\u0629",rowActions:"\u0625\u062C\u0631\u0627\u0621\u0627\u062A \u0627\u0644\u0635\u0641",detailsAria:"\u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644",rowNumberAria:"\u0631\u0642\u0645 \u0627\u0644\u0635\u0641",noteEditorAria:"\u0645\u0644\u0627\u062D\u0638\u0629 \u0627\u0644\u062E\u0644\u064A\u0629",notePlaceholder:"\u0627\u0643\u062A\u0628 \u0645\u0644\u0627\u062D\u0638\u0629 \u062D\u0648\u0644 \u0647\u0630\u0647 \u0627\u0644\u062E\u0644\u064A\u0629\u2026",addNote:"\u0625\u0636\u0627\u0641\u0629 \u0645\u0644\u0627\u062D\u0638\u0629\u2026",editNote:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629\u2026",deleteNote:"\u062D\u0630\u0641 \u0627\u0644\u0645\u0644\u0627\u062D\u0638\u0629",expandDetails:"\u062A\u0648\u0633\u064A\u0639 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644",collapseDetails:"\u0637\u064A \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644",dragToReorder:"\u0627\u0633\u062D\u0628 \u0644\u0625\u0639\u0627\u062F\u0629 \u0627\u0644\u062A\u0631\u062A\u064A\u0628",menuCopy:"\u0646\u0633\u062E",menuCopyWithHeaders:"\u0646\u0633\u062E \u0645\u0639 \u0627\u0644\u0639\u0646\u0627\u0648\u064A\u0646",menuCopyWithGroupHeaders:"\u0646\u0633\u062E \u0645\u0639 \u0639\u0646\u0627\u0648\u064A\u0646 \u0627\u0644\u0645\u062C\u0645\u0648\u0639\u0627\u062A",menuCut:"\u0642\u0635",menuPaste:"\u0644\u0635\u0642",menuExport:"\u062A\u0635\u062F\u064A\u0631",menuChartRange:"\u0631\u0633\u0645 \u0628\u064A\u0627\u0646\u064A \u0644\u0644\u0623\u0639\u0645\u062F\u0629 \u0627\u0644\u0645\u062D\u062F\u062F\u0629",statsSum:"\u0645\u062C\u0645\u0648\u0639",statsCount:"\u0627\u0644\u0639\u062F\u062F",statsAvg:"\u0645\u062A\u0648\u0633\u0637",statsMin:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u062F\u0646\u0649",statsMax:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0642\u0635\u0649",statsCells:"\u0627\u0644\u062E\u0644\u0627\u064A\u0627",statsTooLarge:"\u0627\u0644\u062A\u062D\u062F\u064A\u062F \u0623\u0643\u0628\u0631 \u0645\u0646 \u0623\u0646 \u064A\u064F\u062C\u0645\u0639",statusRows:"\u0627\u0644\u0635\u0641\u0648\u0641",statusFiltered:"\u0645\u0635\u0641\u0651\u0649",statusSelected:"\u0645\u062D\u062F\u062F",summaryRows:"\u0635\u0641\u0648\u0641",announceRows:"{n} \u0635\u0641\u0648\u0641",announceSortedBy:"\u0645\u0631\u062A\u0628\u0629 \u062D\u0633\u0628 {columns}",announceSelected:"{n} \u0645\u062D\u062F\u062F\u0629",announceAscending:"\u062A\u0635\u0627\u0639\u062F\u064A",announceDescending:"\u062A\u0646\u0627\u0632\u0644\u064A",sideFilters:"\u0639\u0648\u0627\u0645\u0644 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",sideBarAria:"\u0644\u0648\u062D\u0627\u062A \u0627\u0644\u0623\u062F\u0648\u0627\u062A",sideClearFilters:"\u0645\u0633\u062D \u0643\u0644 \u0639\u0648\u0627\u0645\u0644 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",summarySum:"\u0645\u062C\u0645\u0648\u0639",summaryAvg:"\u0645\u062A\u0648\u0633\u0637",summaryMin:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u062F\u0646\u0649",summaryMax:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0642\u0635\u0649",summaryCount:"\u0627\u0644\u0639\u062F\u062F",summaryDistinct:"\u0627\u0644\u0642\u064A\u0645 \u0627\u0644\u0641\u0631\u064A\u062F\u0629",summaryCustom:"\u0645\u062E\u0635\u0635",noTotal:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0625\u062C\u0645\u0627\u0644\u064A",busy:"\u062C\u0627\u0631\u064A \u0627\u0644\u0639\u0645\u0644\u2026",busyLoading:"\u062C\u0627\u0631\u064A \u062A\u062D\u0645\u064A\u0644 \u0627\u0644\u0635\u0641\u0648\u0641\u2026",busyEncoding:"\u062C\u0627\u0631\u064A \u062A\u062D\u0636\u064A\u0631 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A\u2026",busyFiltering:"\u062C\u0627\u0631\u064A \u062A\u0635\u0641\u064A\u0629 \u0627\u0644\u0635\u0641\u0648\u0641\u2026",busySorting:"\u062C\u0627\u0631\u064A \u0641\u0631\u0632 \u0627\u0644\u0635\u0641\u0648\u0641\u2026",busyComputing:"\u062C\u0627\u0631\u064A \u0627\u0644\u062A\u0635\u0641\u064A\u0629 \u0648\u0627\u0644\u0641\u0631\u0632\u2026",busyGrouping:"\u062C\u0627\u0631\u064A \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u062C\u0645\u0648\u0639\u0627\u062A\u2026",busyAggregating:"\u062C\u0627\u0631\u064A \u062D\u0633\u0627\u0628 \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A\u0627\u062A\u2026",busyProjecting:"\u062C\u0627\u0631\u064A \u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0639\u0631\u0636\u2026",busyExporting:"\u062C\u0627\u0631\u064A \u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0645\u0644\u0641\u2026",noData:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0628\u064A\u0627\u0646\u0627\u062A",editNewRow:"\u0635\u0641 \u062C\u062F\u064A\u062F",editSaveChanges:"\u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A",editDiscardChanges:"\u062A\u062C\u0627\u0647\u0644 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A",editRow:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0635\u0641",editRowMenu:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0635\u0641\u2026",editDeleteRow:"\u062D\u0630\u0641 \u0627\u0644\u0635\u0641",editUndoDelete:"\u062A\u0631\u0627\u062C\u0639 \u0639\u0646 \u0627\u0644\u062D\u0630\u0641",editActions:"\u0627\u0644\u0625\u062C\u0631\u0627\u0621\u0627\u062A",editSaveRow:"\u062D\u0641\u0638 \u0627\u0644\u0635\u0641",editSaving:"\u062C\u0627\u0631\u064A \u0627\u0644\u062D\u0641\u0638\u2026",editEditingRow:"\u062C\u0627\u0631\u064A \u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0635\u0641 {row}",editSaveCount:"\u062D\u0641\u0638 {n} \u0635\u0641",editCannotSave:"\u062A\u0639\u0630\u0651\u0631 \u0627\u0644\u062D\u0641\u0638",editSaveFailed:"\u062A\u0639\u0630\u0651\u0631 \u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A.",editDeleteConfirm:"\u0647\u0644 \u062A\u0631\u064A\u062F \u062D\u0630\u0641 \u0647\u0630\u0627 \u0627\u0644\u0635\u0641\u061F",editAddRowUndo:"\u0625\u0636\u0627\u0641\u0629 \u0635\u0641",editDeleteRowUndo:"\u062D\u0630\u0641 \u0635\u0641",editCellUndo:"\u062A\u062D\u0631\u064A\u0631 {column}",editFillUndo:"\u062A\u0639\u0628\u0626\u0629 {count} \u062E\u0644\u064A\u0629",editPasteUndo:"\u0644\u0635\u0642 {count} \u062E\u0644\u064A\u0629",editCutUndo:"\u0642\u0635 {count} \u062E\u0644\u064A\u0629",editNoMatch:"\u0644\u0627 \u062A\u0648\u062C\u062F \u0645\u0637\u0627\u0628\u0642\u0629",formEditTitle:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0635\u0641",formAddTitle:"\u0635\u0641 \u062C\u062F\u064A\u062F",formShortcut:"{key}+Enter \u0644\u0644\u062D\u0641\u0638 \xB7 Esc \u0644\u0644\u0625\u0644\u063A\u0627\u0621",validationRequired:"\u0647\u0630\u0627 \u0627\u0644\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628",validationNumber:"\u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0631\u0642\u0645\u064B\u0627",validationFormat:"\u062A\u0646\u0633\u064A\u0642 \u063A\u064A\u0631 \u0635\u0627\u0644\u062D",validationEmail:"\u0639\u0646\u0648\u0627\u0646 \u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A \u063A\u064A\u0631 \u0635\u0627\u0644\u062D",validationInvalid:"\u0642\u064A\u0645\u0629 \u063A\u064A\u0631 \u0635\u0627\u0644\u062D\u0629",dateCalendar:"\u0627\u0644\u062A\u0642\u0648\u064A\u0645",dateOpenCalendar:"\u0641\u062A\u062D \u0627\u0644\u062A\u0642\u0648\u064A\u0645",datePreviousMonth:"\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u0633\u0627\u0628\u0642",dateNextMonth:"\u0627\u0644\u0634\u0647\u0631 \u0627\u0644\u062A\u0627\u0644\u064A",monthJanuary:"\u064A\u0646\u0627\u064A\u0631",monthFebruary:"\u0641\u0628\u0631\u0627\u064A\u0631",monthMarch:"\u0645\u0627\u0631\u0633",monthApril:"\u0623\u0628\u0631\u064A\u0644",monthMay:"\u0645\u0627\u064A\u0648",monthJune:"\u064A\u0648\u0646\u064A\u0648",monthJuly:"\u064A\u0648\u0644\u064A\u0648",monthAugust:"\u0623\u063A\u0633\u0637\u0633",monthSeptember:"\u0633\u0628\u062A\u0645\u0628\u0631",monthOctober:"\u0623\u0643\u062A\u0648\u0628\u0631",monthNovember:"\u0646\u0648\u0641\u0645\u0628\u0631",monthDecember:"\u062F\u064A\u0633\u0645\u0628\u0631",weekStartsOn:"6",weekdaySu:"\u0623\u062D\u062F",weekdayMo:"\u0625\u062B\u0646",weekdayTu:"\u062B\u0644\u0627",weekdayWe:"\u0623\u0631\u0628",weekdayTh:"\u062E\u0645\u064A",weekdayFr:"\u062C\u0645\u0639",weekdaySa:"\u0633\u0628\u062A",importTitle:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",importStepSource:"\u0661. \u0627\u0644\u0645\u0635\u062F\u0631",importStepMap:"\u0662. \u0645\u0637\u0627\u0628\u0642\u0629 \u0627\u0644\u0623\u0639\u0645\u062F\u0629",importFile:"\u0645\u0644\u0641 CSV",importPaste:"\u2026\u0623\u0648 \u0627\u0644\u0635\u0642 \u0627\u0644\u0635\u0641\u0648\u0641",importSeparator:"\u0627\u0644\u0641\u0627\u0635\u0644",importSeparatorAuto:"\u0643\u0634\u0641 \u062A\u0644\u0642\u0627\u0626\u064A",importSeparatorComma:"\u0641\u0627\u0635\u0644\u0629 ,",importSeparatorSemicolon:"\u0641\u0627\u0635\u0644\u0629 \u0645\u0646\u0642\u0648\u0637\u0629 ;",importSeparatorTab:"\u0645\u0633\u0627\u0641\u0629 \u062C\u062F\u0648\u0644\u0629",importSeparatorPipe:"\u0634\u0631\u0637\u0629 \u0639\u0645\u0648\u062F\u064A\u0629 |",importFileColumn:"\u0639\u0645\u0648\u062F \u0627\u0644\u0645\u0644\u0641",importDetected:"\u0627\u0644\u0645\u0643\u062A\u0634\u0641",importGridColumn:"\u0639\u0645\u0648\u062F \u0627\u0644\u062C\u062F\u0648\u0644",importSample:"\u0639\u064A\u0646\u0629",importSkip:"\u2014 \u062A\u062E\u0637\u064D \u2014",importPreview:"\u0645\u0639\u0627\u064A\u0646\u0629",importNoSource:"\u0627\u062E\u062A\u0631 \u0645\u0644\u0641\u064B\u0627 \u0623\u0648\u0644\u064B\u0627 \u0623\u0648 \u0627\u0644\u0635\u0642 \u0628\u0639\u0636 \u0627\u0644\u0635\u0641\u0648\u0641.",importNoRows:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0635\u0641\u0648\u0641 \u0628\u064A\u0627\u0646\u0627\u062A.",importAction:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F",exportAborted:"\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u0635\u062F\u064A\u0631",exportSheetName:"\u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",chart:"\u0627\u0644\u0631\u0633\u0645 \u0627\u0644\u0628\u064A\u0627\u0646\u064A",chartCategory:"\u0627\u0644\u0641\u0626\u0629",chartSeries:"\u0627\u0644\u0633\u0644\u0633\u0644\u0629",chartAddSeries:"\u0625\u0636\u0627\u0641\u0629 \u0633\u0644\u0633\u0644\u0629",chartRemoveSeries:"\u0625\u0632\u0627\u0644\u0629",chartSource:"\u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",chartSourceView:"\u0627\u0644\u0635\u0641\u0648\u0641 \u0627\u0644\u0645\u0635\u0641\u0651\u0627\u0629",chartSourceSelection:"\u0627\u0644\u0635\u0641\u0648\u0641 \u0627\u0644\u0645\u062D\u062F\u062F\u0629",chartSourceAll:"\u0643\u0644 \u0627\u0644\u0635\u0641\u0648\u0641",chartClose:"\u0625\u063A\u0644\u0627\u0642 \u0627\u0644\u0631\u0633\u0645 \u0627\u0644\u0628\u064A\u0627\u0646\u064A",chartFullscreen:"\u0645\u0644\u0621 \u0627\u0644\u0634\u0627\u0634\u0629",chartExitFullscreen:"\u0625\u0646\u0647\u0627\u0621 \u0645\u0644\u0621 \u0627\u0644\u0634\u0627\u0634\u0629",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"\u062A\u0639\u0630\u0651\u0631 \u062A\u0635\u062F\u064A\u0631 \u0627\u0644\u0631\u0633\u0645 \u0627\u0644\u0628\u064A\u0627\u0646\u064A.",chartCrossFiltered:"\u062A\u0645\u062A \u062A\u0635\u0641\u064A\u0629 \u0627\u0644\u062C\u062F\u0648\u0644 \u0625\u0644\u0649 {value}.",chartBlankCategory:"(\u0641\u0627\u0631\u063A)",chartTruncated:"\u064A\u062A\u0645 \u0639\u0631\u0636 \u0623\u0639\u0644\u0649 {n} \u0641\u0626\u0629\u061B \u0648\u0627\u0644\u0628\u0627\u0642\u064A \u0645\u062C\u0645\u0651\u0639 \u0636\u0645\u0646 \xAB\u0623\u062E\u0631\u0649\xBB.",chartOther:"\u0623\u062E\u0631\u0649",chartEmpty:"\u0644\u0627 \u064A\u0648\u062C\u062F \u0634\u064A\u0621 \u0644\u0639\u0631\u0636\u0647 \u0628\u0639\u062F.",chartNeedsRecharts:"\u062A\u062D\u062A\u0627\u062C \u0627\u0644\u0631\u0633\u0648\u0645 \u0627\u0644\u0628\u064A\u0627\u0646\u064A\u0629 \u0625\u0644\u0649 \u062D\u0632\u0645\u0629 `recharts` \u0627\u0644\u0627\u062E\u062A\u064A\u0627\u0631\u064A\u0629. \u062B\u0628\u0651\u062A\u0647\u0627 \u0644\u0631\u0633\u0645\u0647\u0627.",chartOnlyOneSeries:"\u0647\u0630\u0627 \u0627\u0644\u0646\u0648\u0639 \u0645\u0646 \u0627\u0644\u0631\u0633\u0648\u0645 \u064A\u0639\u0631\u0636 \u0633\u0644\u0633\u0644\u0629 \u0648\u0627\u062D\u062F\u0629.",chartByColumn:"\u0631\u0633\u0645 \u0628\u064A\u0627\u0646\u064A \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",chartGroupBy:"\u062D\u0633\u0628",chartGroupNone:"\u0643\u0644 \u0642\u064A\u0645\u0629",chartGroupAuto:"\u062A\u0644\u0642\u0627\u0626\u064A",chartGroupDay:"\u064A\u0648\u0645",chartGroupWeek:"\u0623\u0633\u0628\u0648\u0639",chartGroupMonth:"\u0634\u0647\u0631",chartGroupQuarter:"\u0631\u0628\u0639",chartGroupYear:"\u0633\u0646\u0629",chartGroupBins:"{n} \u0641\u0626\u0629",chartBucketAdjusted:"\u0639\u062F\u062F \u0627\u0644\u0641\u0648\u0627\u0635\u0644 \u0623\u0643\u0628\u0631 \u0645\u0646 \u0623\u0646 \u064A\u062A\u0633\u0639 \u0644\u0645\u062D\u0648\u0631 \u0648\u0627\u062D\u062F \u2014 \u062A\u0645 \u0627\u0644\u062A\u062C\u0645\u064A\u0639 \u0628\u0634\u0643\u0644 \u0623\u0648\u0633\u0639.",chartWindowed:"\u064A\u062A\u0645 \u0639\u0631\u0636 {shown} \u0645\u0646 {total}.",chartShowAll:"\u0639\u0631\u0636 \u0627\u0644\u0643\u0644",chartCanvasHint:"\u0631\u0633\u0645 \u0628\u064A\u0627\u0646\u064A. \u0645\u0631\u0651\u0631 \u0644\u0644\u062A\u0643\u0628\u064A\u0631\u060C \u0627\u0633\u062D\u0628 \u0644\u0644\u062A\u062D\u0631\u064A\u0643\u060C \u0627\u0633\u062A\u062E\u062F\u0645 \u0627\u0644\u0623\u0633\u0647\u0645 \u0644\u0644\u062A\u0646\u0642\u0644\u060C \u06480 \u0644\u0639\u0631\u0636 \u0627\u0644\u0643\u0644.",chartAggSum:"\u0645\u062C\u0645\u0648\u0639",chartAggAvg:"\u0645\u062A\u0648\u0633\u0637",chartAggMin:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u062F\u0646\u0649",chartAggMax:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0642\u0635\u0649",chartAggCount:"\u0627\u0644\u0639\u062F\u062F",chartAggDistinct:"\u0627\u0644\u0642\u064A\u0645 \u0627\u0644\u0641\u0631\u064A\u062F\u0629",chartTypeColumn:"\u0623\u0639\u0645\u062F\u0629",chartTypeBar:"\u0623\u0634\u0631\u0637\u0629",chartTypeLine:"\u062E\u0637\u064A",chartTypeArea:"\u0645\u0633\u0627\u062D\u064A",chartTypePie:"\u062F\u0627\u0626\u0631\u064A",chartTypeDonut:"\u062D\u0644\u0642\u064A",licenseMissing:"\u063A\u064A\u0631 \u0645\u0631\u062E\u0651\u0635",licenseExpired:"\u0627\u0646\u062A\u0647\u062A \u0635\u0644\u0627\u062D\u064A\u0629 \u0627\u0644\u062A\u0631\u062E\u064A\u0635",licenseReleaseNotCovered:"\u0647\u0630\u0627 \u0627\u0644\u0625\u0635\u062F\u0627\u0631 \u063A\u064A\u0631 \u0645\u0634\u0645\u0648\u0644 \u0628\u0627\u0644\u062A\u0631\u062E\u064A\u0635",licenseDomainMismatch:"\u0627\u0644\u062A\u0631\u062E\u064A\u0635 \u063A\u064A\u0631 \u0635\u0627\u0644\u062D \u0644\u0647\u0630\u0627 \u0627\u0644\u0646\u0637\u0627\u0642",licenseRevoked:"\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u062A\u0631\u062E\u064A\u0635",licenseInvalidFormat:"\u0635\u064A\u063A\u0629 \u0645\u0641\u062A\u0627\u062D \u0627\u0644\u062A\u0631\u062E\u064A\u0635 \u063A\u064A\u0631 \u0635\u062D\u064A\u062D\u0629",licenseInvalidSignature:"\u062A\u0648\u0642\u064A\u0639 \u0627\u0644\u062A\u0631\u062E\u064A\u0635 \u063A\u064A\u0631 \u0635\u0627\u0644\u062D",licenseEngineUnavailable:"\u0644\u0627 \u064A\u0633\u062A\u0637\u064A\u0639 \u0627\u0644\u0645\u062A\u0635\u0641\u062D \u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646 \u0627\u0644\u062A\u0631\u062E\u064A\u0635 (\u064A\u0644\u0632\u0645 HTTPS)"},Il={ok:"\u786E\u5B9A",cancel:"\u53D6\u6D88",apply:"\u5E94\u7528",close:"\u5173\u95ED",clear:"\u6E05\u9664",save:"\u4FDD\u5B58",search:"\u641C\u7D22...",selectAll:"\u5168\u9009",showAll:"\u663E\u793A\u5168\u90E8",remove:"\u79FB\u9664",none:"\u65E0",toolbarSearch:"\u641C\u7D22...",exportMenu:"\u5BFC\u51FA",exportCsv:"\u5BFC\u51FA\u4E3A CSV",exportExcel:"\u5C06\u5168\u90E8\u6570\u636E\u5BFC\u51FA\u5230 Excel",exportExcelSelected:"\u5C06\u9009\u4E2D\u884C\u5BFC\u51FA\u5230 Excel",exportPdf:"\u5BFC\u51FA\u4E3A PDF",exporting:"\u6B63\u5728\u5BFC\u51FA\u2026",columns:"\u5217",hiddenColumns:"\u9690\u85CF\u7684\u5217",noHiddenColumns:"\u6CA1\u6709\u9690\u85CF\u7684\u5217\u3002",sortAsc:"\u6309 A \u5230 Z \u6392\u5E8F",sortDesc:"\u6309 Z \u5230 A \u6392\u5E8F",clearSort:"\u6E05\u9664\u6392\u5E8F",groupByColumn:"\u6309\u6B64\u5217\u5206\u7EC4",ungroupColumn:"\u4ECE\u5206\u7EC4\u4E2D\u79FB\u9664",showGroupPanel:"\u663E\u793A\u5206\u7EC4\u9762\u677F",hideGroupPanel:"\u9690\u85CF\u5206\u7EC4\u9762\u677F",showFooter:"\u663E\u793A\u6C47\u603B\u680F",hideFooter:"\u9690\u85CF\u6C47\u603B\u680F",showGroupFooters:"\u663E\u793A\u5206\u7EC4\u6C47\u603B",hideGroupFooters:"\u9690\u85CF\u5206\u7EC4\u6C47\u603B",hideColumn:"\u9690\u85CF\u6B64\u5217",fieldChooser:"\u5B57\u6BB5\u9009\u62E9\u5668\u2026",bestFit:"\u6700\u4F73\u5217\u5BBD",bestFitAll:"\u6700\u4F73\u5217\u5BBD\uFF08\u6240\u6709\u5217\uFF09",fixedPosition:"\u8BBE\u7F6E\u56FA\u5B9A\u4F4D\u7F6E",pinLeft:"\u5DE6\u4FA7",pinRight:"\u53F3\u4FA7",pinSticky:"\u5438\u9644",unpin:"\u53D6\u6D88\u56FA\u5B9A",moveLeft:"\u5DE6\u79FB",moveRight:"\u53F3\u79FB",filterPlaceholder:"\u7B5B\u9009\u2026",filterColumnAria:"\u7B5B\u9009{column}",filterSelectAll:"\u5168\u9009",filterBlank:"(\u7A7A\u767D)",filterNoMatch:"\u6CA1\u6709\u5339\u914D\u7684\u503C",filterLoading:"\u6B63\u5728\u52A0\u8F7D\u503C\u2026",filterTruncated:"\u4EC5\u663E\u793A\u524D\u82E5\u5E72\u4E2A\u503C\u2014\u2014\u8BF7\u641C\u7D22\u4EE5\u67E5\u627E\u5176\u4F59\u7684\u503C\u3002",filterRemove:"\u79FB\u9664\u7B5B\u9009",filterToggle:"\u5E94\u7528\u7B5B\u9009",filterEditBuilder:"\u7F16\u8F91\u7B5B\u9009",filterNone:"\u65E0\u7B5B\u9009",filterActive:"\u7B5B\u9009\u5DF2\u542F\u7528",opEquals:"\u7B49\u4E8E",opNotEquals:"\u4E0D\u7B49\u4E8E",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"\u5305\u542B",opNotContains:"\u4E0D\u5305\u542B",opStartsWith:"\u5F00\u5934\u4E3A",opEndsWith:"\u7ED3\u5C3E\u4E3A",opIsBlank:"\u4E3A\u7A7A",opIsNotBlank:"\u4E0D\u4E3A\u7A7A",opIsOneOf:"\u5C5E\u4E8E",opIsBetween:"\u4ECB\u4E8E",opValuesCount:"{n} \u4E2A\u503C",filterAnd:"\u4E0E",filterOr:"\u6216",builderTitle:"\u7B5B\u9009\u751F\u6210\u5668",builderCombine:"\u6761\u4EF6\u7684\u7EC4\u5408\u65B9\u5F0F",builderAddCondition:"\u6DFB\u52A0\u6761\u4EF6",builderAddGroup:"\u6DFB\u52A0\u5206\u7EC4",builderRemoveGroup:"\u79FB\u9664\u5206\u7EC4",builderRemoveCondition:"\u79FB\u9664\u6761\u4EF6",builderEmpty:"\u5C1A\u65E0\u6761\u4EF6\u3002",builderColumn:"\u5217",builderOperator:"\u8FD0\u7B97\u7B26",builderValue:"\u503C",builderValueFrom:"\u4ECE",builderValueTo:"\u5230",builderValuePlaceholder:"\u8BF7\u8F93\u5165\u503C",groupPanelHint:"\u5C06\u5217\u62D6\u5230\u6B64\u5904\u5373\u53EF\u6309\u5176\u5206\u7EC4",groupAddLevel:"\u6DFB\u52A0\u5206\u7EC4\u5C42\u7EA7",groupAddLevelButton:"+ \u6DFB\u52A0\u5C42\u7EA7\u2026",groupNoGrouping:"\uFF08\u65E0\u5206\u7EC4\uFF09",groupLevelAria:"\u7B2C {n} \u7EA7\u5206\u7EC4",groupRemoveAria:"\u79FB\u9664{column}",pagerFirst:"\u9996\u9875",pagerPrevious:"\u4E0A\u4E00\u9875",pagerNext:"\u4E0B\u4E00\u9875",pagerLast:"\u672B\u9875",pagerPage:"\u7B2C",pagerOf:"/",pagerRowsPerPage:"\u6BCF\u9875\u884C\u6570",pagerAria:"\u5206\u9875",selectAllRows:"\u9009\u62E9\u6240\u6709\u884C",selectRowAria:"\u9009\u62E9\u7B2C {row} \u884C",summaryAria:"\u6C47\u603B",columnTotalsAria:"\u5217\u5408\u8BA1",rowActions:"\u884C\u64CD\u4F5C",detailsAria:"\u8BE6\u60C5",rowNumberAria:"\u884C\u53F7",noteEditorAria:"\u5355\u5143\u683C\u6279\u6CE8",notePlaceholder:"\u4E3A\u6B64\u5355\u5143\u683C\u5199\u6279\u6CE8\u2026",addNote:"\u6DFB\u52A0\u6279\u6CE8\u2026",editNote:"\u7F16\u8F91\u6279\u6CE8\u2026",deleteNote:"\u5220\u9664\u6279\u6CE8",expandDetails:"\u5C55\u5F00\u8BE6\u60C5",collapseDetails:"\u6298\u53E0\u8BE6\u60C5",dragToReorder:"\u62D6\u52A8\u4EE5\u91CD\u65B0\u6392\u5E8F",menuCopy:"\u590D\u5236",menuCopyWithHeaders:"\u590D\u5236\uFF08\u542B\u8868\u5934\uFF09",menuCopyWithGroupHeaders:"\u590D\u5236\uFF08\u542B\u5206\u7EC4\u8868\u5934\uFF09",menuCut:"\u526A\u5207",menuPaste:"\u7C98\u8D34",menuExport:"\u5BFC\u51FA",menuChartRange:"\u5C06\u6240\u9009\u5217\u751F\u6210\u56FE\u8868",statsSum:"\u6C42\u548C",statsCount:"\u8BA1\u6570",statsAvg:"\u5E73\u5747\u503C",statsMin:"\u6700\u5C0F\u503C",statsMax:"\u6700\u5927\u503C",statsCells:"\u5355\u5143\u683C",statsTooLarge:"\u6240\u9009\u533A\u57DF\u8FC7\u5927\uFF0C\u65E0\u6CD5\u6C47\u603B",statusRows:"\u884C\u6570",statusFiltered:"\u7B5B\u9009\u540E",statusSelected:"\u5DF2\u9009\u62E9",summaryRows:"\u884C",announceRows:"{n} \u884C",announceSortedBy:"\u6309 {columns} \u6392\u5E8F",announceSelected:"\u5DF2\u9009\u62E9 {n} \u9879",announceAscending:"\u5347\u5E8F",announceDescending:"\u964D\u5E8F",sideFilters:"\u7B5B\u9009\u5668",sideBarAria:"\u5DE5\u5177\u9762\u677F",sideClearFilters:"\u6E05\u9664\u6240\u6709\u7B5B\u9009",summarySum:"\u6C42\u548C",summaryAvg:"\u5E73\u5747\u503C",summaryMin:"\u6700\u5C0F\u503C",summaryMax:"\u6700\u5927\u503C",summaryCount:"\u8BA1\u6570",summaryDistinct:"\u53BB\u91CD\u8BA1\u6570",summaryCustom:"\u81EA\u5B9A\u4E49",noTotal:"\u65E0\u5408\u8BA1",busy:"\u5904\u7406\u4E2D\u2026",busyLoading:"\u6B63\u5728\u52A0\u8F7D\u884C\u2026",busyEncoding:"\u6B63\u5728\u51C6\u5907\u6570\u636E\u2026",busyFiltering:"\u6B63\u5728\u7B5B\u9009\u884C\u2026",busySorting:"\u6B63\u5728\u6392\u5E8F\u884C\u2026",busyComputing:"\u6B63\u5728\u7B5B\u9009\u548C\u6392\u5E8F\u2026",busyGrouping:"\u6B63\u5728\u6784\u5EFA\u5206\u7EC4\u2026",busyAggregating:"\u6B63\u5728\u8BA1\u7B97\u5408\u8BA1\u2026",busyProjecting:"\u6B63\u5728\u66F4\u65B0\u89C6\u56FE\u2026",busyExporting:"\u6B63\u5728\u751F\u6210\u6587\u4EF6\u2026",noData:"\u672A\u627E\u5230\u6570\u636E",editNewRow:"\u65B0\u5EFA\u884C",editSaveChanges:"\u4FDD\u5B58\u66F4\u6539",editDiscardChanges:"\u653E\u5F03\u66F4\u6539",editRow:"\u7F16\u8F91\u884C",editRowMenu:"\u7F16\u8F91\u884C\u2026",editDeleteRow:"\u5220\u9664\u884C",editUndoDelete:"\u64A4\u9500\u5220\u9664",editActions:"\u64CD\u4F5C",editSaveRow:"\u4FDD\u5B58\u6B64\u884C",editSaving:"\u6B63\u5728\u4FDD\u5B58\u2026",editEditingRow:"\u6B63\u5728\u7F16\u8F91\u7B2C {row} \u884C",editSaveCount:"\u4FDD\u5B58 {n} \u884C",editCannotSave:"\u65E0\u6CD5\u4FDD\u5B58",editSaveFailed:"\u672A\u80FD\u4FDD\u5B58\u66F4\u6539\u3002",editDeleteConfirm:"\u8981\u5220\u9664\u6B64\u884C\u5417\uFF1F",editAddRowUndo:"\u6DFB\u52A0\u884C",editDeleteRowUndo:"\u5220\u9664\u884C",editCellUndo:"\u7F16\u8F91 {column}",editFillUndo:"\u586B\u5145 {count} \u4E2A\u5355\u5143\u683C",editPasteUndo:"\u7C98\u8D34 {count} \u4E2A\u5355\u5143\u683C",editCutUndo:"\u526A\u5207 {count} \u4E2A\u5355\u5143\u683C",editNoMatch:"\u65E0\u5339\u914D\u9879",formEditTitle:"\u7F16\u8F91\u884C",formAddTitle:"\u65B0\u5EFA\u884C",formShortcut:"{key}+Enter \u4FDD\u5B58 \xB7 Esc \u53D6\u6D88",validationRequired:"\u6B64\u5B57\u6BB5\u4E3A\u5FC5\u586B\u9879",validationNumber:"\u5FC5\u987B\u4E3A\u6570\u5B57",validationFormat:"\u683C\u5F0F\u65E0\u6548",validationEmail:"\u7535\u5B50\u90AE\u4EF6\u5730\u5740\u65E0\u6548",validationInvalid:"\u503C\u65E0\u6548",dateCalendar:"\u65E5\u5386",dateOpenCalendar:"\u6253\u5F00\u65E5\u5386",datePreviousMonth:"\u4E0A\u4E2A\u6708",dateNextMonth:"\u4E0B\u4E2A\u6708",monthJanuary:"\u4E00\u6708",monthFebruary:"\u4E8C\u6708",monthMarch:"\u4E09\u6708",monthApril:"\u56DB\u6708",monthMay:"\u4E94\u6708",monthJune:"\u516D\u6708",monthJuly:"\u4E03\u6708",monthAugust:"\u516B\u6708",monthSeptember:"\u4E5D\u6708",monthOctober:"\u5341\u6708",monthNovember:"\u5341\u4E00\u6708",monthDecember:"\u5341\u4E8C\u6708",weekStartsOn:"1",weekdaySu:"\u65E5",weekdayMo:"\u4E00",weekdayTu:"\u4E8C",weekdayWe:"\u4E09",weekdayTh:"\u56DB",weekdayFr:"\u4E94",weekdaySa:"\u516D",importTitle:"\u5BFC\u5165\u6570\u636E",importStepSource:"1. \u6570\u636E\u6E90",importStepMap:"2. \u6620\u5C04\u5217",importFile:"CSV \u6587\u4EF6",importPaste:"\u2026\u6216\u7C98\u8D34\u884C",importSeparator:"\u5206\u9694\u7B26",importSeparatorAuto:"\u81EA\u52A8\u68C0\u6D4B",importSeparatorComma:"\u9017\u53F7 ,",importSeparatorSemicolon:"\u5206\u53F7 ;",importSeparatorTab:"\u5236\u8868\u7B26",importSeparatorPipe:"\u7AD6\u7EBF |",importFileColumn:"\u6587\u4EF6\u5217",importDetected:"\u68C0\u6D4B\u7ED3\u679C",importGridColumn:"\u8868\u683C\u5217",importSample:"\u793A\u4F8B",importSkip:"\u2014 \u8DF3\u8FC7 \u2014",importPreview:"\u9884\u89C8",importNoSource:"\u8BF7\u5148\u9009\u62E9\u6587\u4EF6\u6216\u7C98\u8D34\u4E00\u4E9B\u884C\u3002",importNoRows:"\u672A\u627E\u5230\u6570\u636E\u884C\u3002",importAction:"\u5BFC\u5165",exportAborted:"\u5BFC\u51FA\u5DF2\u4E2D\u6B62",exportSheetName:"\u6570\u636E",chart:"\u56FE\u8868",chartCategory:"\u7C7B\u522B",chartSeries:"\u7CFB\u5217",chartAddSeries:"\u6DFB\u52A0\u7CFB\u5217",chartRemoveSeries:"\u79FB\u9664",chartSource:"\u6570\u636E",chartSourceView:"\u7B5B\u9009\u540E\u7684\u884C",chartSourceSelection:"\u9009\u4E2D\u7684\u884C",chartSourceAll:"\u5168\u90E8\u884C",chartClose:"\u5173\u95ED\u56FE\u8868",chartFullscreen:"\u5168\u5C4F",chartExitFullscreen:"\u9000\u51FA\u5168\u5C4F",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"\u56FE\u8868\u5BFC\u51FA\u5931\u8D25\u3002",chartCrossFiltered:"\u8868\u683C\u5DF2\u7B5B\u9009\u4E3A {value}\u3002",chartBlankCategory:"(\u7A7A\u767D)",chartTruncated:"\u663E\u793A\u524D {n} \u4E2A\u7C7B\u522B\uFF1B\u5176\u4F59\u5F52\u5165\u201C\u5176\u4ED6\u201D\u3002",chartOther:"\u5176\u4ED6",chartEmpty:"\u6682\u65E0\u53EF\u7ED8\u5236\u7684\u5185\u5BB9\u3002",chartNeedsRecharts:"\u56FE\u8868\u9700\u8981\u53EF\u9009\u4F9D\u8D56 `recharts`\u3002\u8BF7\u5B89\u88C5\u540E\u518D\u7ED8\u5236\u3002",chartOnlyOneSeries:"\u6B64\u56FE\u8868\u7C7B\u578B\u4EC5\u663E\u793A\u4E00\u4E2A\u7CFB\u5217\u3002",chartByColumn:"\u6309\u6B64\u5217\u7ED8\u5236\u56FE\u8868",chartGroupBy:"\u6309",chartGroupNone:"\u6BCF\u4E2A\u503C",chartGroupAuto:"\u81EA\u52A8",chartGroupDay:"\u65E5",chartGroupWeek:"\u5468",chartGroupMonth:"\u6708",chartGroupQuarter:"\u5B63\u5EA6",chartGroupYear:"\u5E74",chartGroupBins:"{n} \u4E2A\u533A\u95F4",chartBucketAdjusted:"\u5355\u4E2A\u5750\u6807\u8F74\u4E0A\u7684\u533A\u95F4\u8FC7\u591A\u2014\u2014\u5DF2\u6309\u66F4\u7C97\u7684\u7C92\u5EA6\u5206\u7EC4\u3002",chartWindowed:"\u6B63\u5728\u663E\u793A {total} \u4E2A\u4E2D\u7684 {shown} \u4E2A\u3002",chartShowAll:"\u663E\u793A\u5168\u90E8",chartCanvasHint:"\u56FE\u8868\u3002\u6EDA\u52A8\u7F29\u653E\uFF0C\u62D6\u52A8\u5E73\u79FB\uFF0C\u65B9\u5411\u952E\u79FB\u52A8\uFF0C\u6309 0 \u663E\u793A\u5168\u90E8\u3002",chartAggSum:"\u6C42\u548C",chartAggAvg:"\u5E73\u5747\u503C",chartAggMin:"\u6700\u5C0F\u503C",chartAggMax:"\u6700\u5927\u503C",chartAggCount:"\u8BA1\u6570",chartAggDistinct:"\u53BB\u91CD\u8BA1\u6570",chartTypeColumn:"\u67F1\u5F62\u56FE",chartTypeBar:"\u6761\u5F62\u56FE",chartTypeLine:"\u6298\u7EBF\u56FE",chartTypeArea:"\u9762\u79EF\u56FE",chartTypePie:"\u997C\u56FE",chartTypeDonut:"\u73AF\u5F62\u56FE",licenseMissing:"\u672A\u6388\u6743",licenseExpired:"\u8BB8\u53EF\u8BC1\u5DF2\u8FC7\u671F",licenseReleaseNotCovered:"\u6B64\u7248\u672C\u4E0D\u5728\u8BB8\u53EF\u8BC1\u8986\u76D6\u8303\u56F4\u5185",licenseDomainMismatch:"\u8BB8\u53EF\u8BC1\u5BF9\u6B64\u57DF\u540D\u65E0\u6548",licenseRevoked:"\u8BB8\u53EF\u8BC1\u5DF2\u88AB\u540A\u9500",licenseInvalidFormat:"\u8BB8\u53EF\u8BC1\u5BC6\u94A5\u683C\u5F0F\u9519\u8BEF",licenseInvalidSignature:"\u8BB8\u53EF\u8BC1\u7B7E\u540D\u65E0\u6548",licenseEngineUnavailable:"\u6D4F\u89C8\u5668\u65E0\u6CD5\u9A8C\u8BC1\u8BB8\u53EF\u8BC1\uFF08\u9700\u8981 HTTPS\uFF09"},Ll={ok:"OK",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",apply:"\u9069\u7528",close:"\u9589\u3058\u308B",clear:"\u30AF\u30EA\u30A2",save:"\u4FDD\u5B58",search:"\u691C\u7D22...",selectAll:"\u3059\u3079\u3066\u9078\u629E",showAll:"\u3059\u3079\u3066\u8868\u793A",remove:"\u524A\u9664",none:"\u306A\u3057",toolbarSearch:"\u691C\u7D22...",exportMenu:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",exportCsv:"CSV \u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",exportExcel:"\u3059\u3079\u3066\u306E\u30C7\u30FC\u30BF\u3092 Excel \u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",exportExcelSelected:"\u9078\u629E\u3057\u305F\u884C\u3092 Excel \u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",exportPdf:"PDF \u306B\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",exporting:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u4E2D\u2026",columns:"\u5217",hiddenColumns:"\u975E\u8868\u793A\u306E\u5217",noHiddenColumns:"\u975E\u8868\u793A\u306E\u5217\u306F\u3042\u308A\u307E\u305B\u3093\u3002",sortAsc:"\u6607\u9806\u3067\u4E26\u3079\u66FF\u3048",sortDesc:"\u964D\u9806\u3067\u4E26\u3079\u66FF\u3048",clearSort:"\u4E26\u3079\u66FF\u3048\u3092\u30AF\u30EA\u30A2",groupByColumn:"\u3053\u306E\u5217\u3067\u30B0\u30EB\u30FC\u30D7\u5316",ungroupColumn:"\u30B0\u30EB\u30FC\u30D7\u5316\u304B\u3089\u5916\u3059",showGroupPanel:"\u30B0\u30EB\u30FC\u30D7\u30D1\u30CD\u30EB\u3092\u8868\u793A",hideGroupPanel:"\u30B0\u30EB\u30FC\u30D7\u30D1\u30CD\u30EB\u3092\u975E\u8868\u793A",showFooter:"\u30D5\u30C3\u30BF\u30FC\u3092\u8868\u793A",hideFooter:"\u30D5\u30C3\u30BF\u30FC\u3092\u975E\u8868\u793A",showGroupFooters:"\u30B0\u30EB\u30FC\u30D7\u30D5\u30C3\u30BF\u30FC\u3092\u8868\u793A",hideGroupFooters:"\u30B0\u30EB\u30FC\u30D7\u30D5\u30C3\u30BF\u30FC\u3092\u975E\u8868\u793A",hideColumn:"\u3053\u306E\u5217\u3092\u975E\u8868\u793A",fieldChooser:"\u30D5\u30A3\u30FC\u30EB\u30C9\u9078\u629E\u2026",bestFit:"\u5E45\u3092\u81EA\u52D5\u8ABF\u6574",bestFitAll:"\u5E45\u3092\u81EA\u52D5\u8ABF\u6574\uFF08\u3059\u3079\u3066\u306E\u5217\uFF09",fixedPosition:"\u56FA\u5B9A\u4F4D\u7F6E\u3092\u8A2D\u5B9A",pinLeft:"\u5DE6",pinRight:"\u53F3",pinSticky:"\u56FA\u5B9A",unpin:"\u56FA\u5B9A\u3092\u89E3\u9664",moveLeft:"\u5DE6\u306B\u79FB\u52D5",moveRight:"\u53F3\u306B\u79FB\u52D5",filterPlaceholder:"\u30D5\u30A3\u30EB\u30BF\u30FC\u2026",filterColumnAria:"{column} \u3092\u30D5\u30A3\u30EB\u30BF\u30FC",filterSelectAll:"\u3059\u3079\u3066\u9078\u629E",filterBlank:"(\u7A7A\u767D)",filterNoMatch:"\u4E00\u81F4\u3059\u308B\u5024\u304C\u3042\u308A\u307E\u305B\u3093",filterLoading:"\u5024\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026",filterTruncated:"\u5148\u982D\u306E\u5024\u306E\u307F\u8868\u793A\u3057\u3066\u3044\u307E\u3059\u3002\u6B8B\u308A\u306F\u691C\u7D22\u3057\u3066\u304F\u3060\u3055\u3044\u3002",filterRemove:"\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u89E3\u9664",filterToggle:"\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u9069\u7528",filterEditBuilder:"\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u7DE8\u96C6",filterNone:"\u30D5\u30A3\u30EB\u30BF\u30FC\u306A\u3057",filterActive:"\u30D5\u30A3\u30EB\u30BF\u30FC\u9069\u7528\u4E2D",opEquals:"\u304C\u6B21\u3068\u7B49\u3057\u3044",opNotEquals:"\u304C\u6B21\u3068\u7B49\u3057\u304F\u306A\u3044",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"\u3092\u542B\u3080",opNotContains:"\u3092\u542B\u307E\u306A\u3044",opStartsWith:"\u3067\u59CB\u307E\u308B",opEndsWith:"\u3067\u7D42\u308F\u308B",opIsBlank:"\u304C\u7A7A\u767D",opIsNotBlank:"\u304C\u7A7A\u767D\u3067\u306A\u3044",opIsBetween:"\u304C\u6B21\u306E\u7BC4\u56F2\u5185",opIsOneOf:"\u304C\u6B21\u306E\u3044\u305A\u308C\u304B",opValuesCount:"{n} \u4EF6\u306E\u5024",filterAnd:"\u304B\u3064 (And)",filterOr:"\u307E\u305F\u306F (Or)",builderTitle:"\u30D5\u30A3\u30EB\u30BF\u30FC\u30D3\u30EB\u30C0\u30FC",builderCombine:"\u6761\u4EF6\u306E\u7D50\u5408\u65B9\u6CD5",builderAddCondition:"\u6761\u4EF6\u3092\u8FFD\u52A0",builderAddGroup:"\u30B0\u30EB\u30FC\u30D7\u3092\u8FFD\u52A0",builderRemoveGroup:"\u30B0\u30EB\u30FC\u30D7\u3092\u524A\u9664",builderRemoveCondition:"\u6761\u4EF6\u3092\u524A\u9664",builderEmpty:"\u307E\u3060\u6761\u4EF6\u304C\u3042\u308A\u307E\u305B\u3093\u3002",builderColumn:"\u5217",builderOperator:"\u6F14\u7B97\u5B50",builderValue:"\u5024",builderValueFrom:"\u958B\u59CB",builderValueTo:"\u7D42\u4E86",builderValuePlaceholder:"\u5024\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",groupPanelHint:"\u30B0\u30EB\u30FC\u30D7\u5316\u3059\u308B\u5217\u3092\u3053\u3053\u306B\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u304F\u3060\u3055\u3044",groupAddLevel:"\u30B0\u30EB\u30FC\u30D7\u5316\u306E\u30EC\u30D9\u30EB\u3092\u8FFD\u52A0",groupAddLevelButton:"+ \u30EC\u30D9\u30EB\u3092\u8FFD\u52A0\u2026",groupNoGrouping:"\uFF08\u30B0\u30EB\u30FC\u30D7\u5316\u306A\u3057\uFF09",groupLevelAria:"\u30B0\u30EB\u30FC\u30D7\u5316\u30EC\u30D9\u30EB {n}",groupRemoveAria:"{column} \u3092\u524A\u9664",pagerFirst:"\u6700\u521D\u306E\u30DA\u30FC\u30B8",pagerPrevious:"\u524D\u306E\u30DA\u30FC\u30B8",pagerNext:"\u6B21\u306E\u30DA\u30FC\u30B8",pagerLast:"\u6700\u5F8C\u306E\u30DA\u30FC\u30B8",pagerPage:"\u30DA\u30FC\u30B8",pagerOf:"/",pagerRowsPerPage:"1 \u30DA\u30FC\u30B8\u3042\u305F\u308A\u306E\u884C\u6570",pagerAria:"\u30DA\u30FC\u30B8\u9001\u308A",selectAllRows:"\u3059\u3079\u3066\u306E\u884C\u3092\u9078\u629E",selectRowAria:"\u884C {row} \u3092\u9078\u629E",summaryAria:"\u96C6\u8A08",columnTotalsAria:"\u5217\u306E\u5408\u8A08",rowActions:"\u884C\u306E\u64CD\u4F5C",detailsAria:"\u8A73\u7D30",rowNumberAria:"\u884C\u756A\u53F7",noteEditorAria:"\u30BB\u30EB\u306E\u30E1\u30E2",notePlaceholder:"\u3053\u306E\u30BB\u30EB\u306B\u3064\u3044\u3066\u30E1\u30E2\u3092\u66F8\u304F\u2026",addNote:"\u30E1\u30E2\u3092\u8FFD\u52A0\u2026",editNote:"\u30E1\u30E2\u3092\u7DE8\u96C6\u2026",deleteNote:"\u30E1\u30E2\u3092\u524A\u9664",expandDetails:"\u8A73\u7D30\u3092\u5C55\u958B",collapseDetails:"\u8A73\u7D30\u3092\u6298\u308A\u305F\u305F\u3080",dragToReorder:"\u30C9\u30E9\u30C3\u30B0\u3057\u3066\u4E26\u3079\u66FF\u3048",menuCopy:"\u30B3\u30D4\u30FC",menuCopyWithHeaders:"\u898B\u51FA\u3057\u4ED8\u304D\u3067\u30B3\u30D4\u30FC",menuCopyWithGroupHeaders:"\u30B0\u30EB\u30FC\u30D7\u898B\u51FA\u3057\u4ED8\u304D\u3067\u30B3\u30D4\u30FC",menuCut:"\u5207\u308A\u53D6\u308A",menuPaste:"\u8CBC\u308A\u4ED8\u3051",menuExport:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",menuChartRange:"\u9078\u629E\u3057\u305F\u5217\u3092\u30B0\u30E9\u30D5\u5316",statsSum:"\u5408\u8A08",statsCount:"\u30AB\u30A6\u30F3\u30C8",statsAvg:"\u5E73\u5747",statsMin:"\u6700\u5C0F",statsMax:"\u6700\u5927",statsCells:"\u30BB\u30EB",statsTooLarge:"\u9078\u629E\u7BC4\u56F2\u304C\u5927\u304D\u3059\u304E\u3066\u96C6\u8A08\u3067\u304D\u307E\u305B\u3093",statusRows:"\u884C\u6570",statusFiltered:"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C",statusSelected:"\u9078\u629E\u6E08\u307F",summaryRows:"\u884C",announceRows:"{n} \u884C",announceSortedBy:"{columns} \u3067\u4E26\u3079\u66FF\u3048",announceSelected:"{n} \u4EF6\u9078\u629E",announceAscending:"\u6607\u9806",announceDescending:"\u964D\u9806",sideFilters:"\u30D5\u30A3\u30EB\u30BF\u30FC",sideBarAria:"\u30C4\u30FC\u30EB\u30D1\u30CD\u30EB",sideClearFilters:"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u30AF\u30EA\u30A2",summarySum:"\u5408\u8A08",summaryAvg:"\u5E73\u5747",summaryMin:"\u6700\u5C0F",summaryMax:"\u6700\u5927",summaryCount:"\u30AB\u30A6\u30F3\u30C8",summaryDistinct:"\u4E00\u610F\u306E\u6570",summaryCustom:"\u30AB\u30B9\u30BF\u30E0",noTotal:"\u5408\u8A08\u306A\u3057",busy:"\u51E6\u7406\u4E2D\u2026",busyLoading:"\u884C\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026",busyEncoding:"\u30C7\u30FC\u30BF\u3092\u6E96\u5099\u4E2D\u2026",busyFiltering:"\u884C\u3092\u30D5\u30A3\u30EB\u30BF\u30FC\u4E2D\u2026",busySorting:"\u884C\u3092\u4E26\u3079\u66FF\u3048\u4E2D\u2026",busyComputing:"\u30D5\u30A3\u30EB\u30BF\u30FC\u3068\u4E26\u3079\u66FF\u3048\u3092\u5B9F\u884C\u4E2D\u2026",busyGrouping:"\u30B0\u30EB\u30FC\u30D7\u3092\u4F5C\u6210\u4E2D\u2026",busyAggregating:"\u5408\u8A08\u3092\u8A08\u7B97\u4E2D\u2026",busyProjecting:"\u30D3\u30E5\u30FC\u3092\u66F4\u65B0\u4E2D\u2026",busyExporting:"\u30D5\u30A1\u30A4\u30EB\u3092\u4F5C\u6210\u4E2D\u2026",noData:"\u30C7\u30FC\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",editNewRow:"\u65B0\u3057\u3044\u884C",editSaveChanges:"\u5909\u66F4\u3092\u4FDD\u5B58",editDiscardChanges:"\u5909\u66F4\u3092\u7834\u68C4",editRow:"\u884C\u3092\u7DE8\u96C6",editRowMenu:"\u884C\u3092\u7DE8\u96C6\u2026",editDeleteRow:"\u884C\u3092\u524A\u9664",editUndoDelete:"\u524A\u9664\u3092\u5143\u306B\u623B\u3059",editActions:"\u30A2\u30AF\u30B7\u30E7\u30F3",editSaveRow:"\u884C\u3092\u4FDD\u5B58",editSaving:"\u4FDD\u5B58\u4E2D\u2026",editEditingRow:"\u884C {row} \u3092\u7DE8\u96C6\u4E2D",editSaveCount:"{n} \u884C\u3092\u4FDD\u5B58",editCannotSave:"\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093",editSaveFailed:"\u5909\u66F4\u3092\u4FDD\u5B58\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002",editDeleteConfirm:"\u3053\u306E\u884C\u3092\u524A\u9664\u3057\u307E\u3059\u304B\uFF1F",editAddRowUndo:"\u884C\u306E\u8FFD\u52A0",editDeleteRowUndo:"\u884C\u306E\u524A\u9664",editCellUndo:"{column} \u3092\u7DE8\u96C6",editFillUndo:"{count} \u30BB\u30EB\u3092\u30D5\u30A3\u30EB",editPasteUndo:"{count} \u30BB\u30EB\u3092\u8CBC\u308A\u4ED8\u3051",editCutUndo:"{count} \u30BB\u30EB\u3092\u5207\u308A\u53D6\u308A",editNoMatch:"\u4E00\u81F4\u306A\u3057",formEditTitle:"\u884C\u3092\u7DE8\u96C6",formAddTitle:"\u65B0\u3057\u3044\u884C",formShortcut:"{key}+Enter \u3067\u4FDD\u5B58 \xB7 Esc \u3067\u30AD\u30E3\u30F3\u30BB\u30EB",validationRequired:"\u3053\u306E\u9805\u76EE\u306F\u5FC5\u9808\u3067\u3059",validationNumber:"\u6570\u5024\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044",validationFormat:"\u5F62\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",validationEmail:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",validationInvalid:"\u5024\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",dateCalendar:"\u30AB\u30EC\u30F3\u30C0\u30FC",dateOpenCalendar:"\u30AB\u30EC\u30F3\u30C0\u30FC\u3092\u958B\u304F",datePreviousMonth:"\u524D\u306E\u6708",dateNextMonth:"\u6B21\u306E\u6708",monthJanuary:"1\u6708",monthFebruary:"2\u6708",monthMarch:"3\u6708",monthApril:"4\u6708",monthMay:"5\u6708",monthJune:"6\u6708",monthJuly:"7\u6708",monthAugust:"8\u6708",monthSeptember:"9\u6708",monthOctober:"10\u6708",monthNovember:"11\u6708",monthDecember:"12\u6708",weekStartsOn:"0",weekdaySu:"\u65E5",weekdayMo:"\u6708",weekdayTu:"\u706B",weekdayWe:"\u6C34",weekdayTh:"\u6728",weekdayFr:"\u91D1",weekdaySa:"\u571F",importTitle:"\u30C7\u30FC\u30BF\u306E\u30A4\u30F3\u30DD\u30FC\u30C8",importStepSource:"1. \u30BD\u30FC\u30B9",importStepMap:"2. \u5217\u306E\u5BFE\u5FDC\u4ED8\u3051",importFile:"CSV \u30D5\u30A1\u30A4\u30EB",importPaste:"\u2026\u307E\u305F\u306F\u884C\u3092\u8CBC\u308A\u4ED8\u3051",importSeparator:"\u533A\u5207\u308A\u6587\u5B57",importSeparatorAuto:"\u81EA\u52D5\u691C\u51FA",importSeparatorComma:"\u30AB\u30F3\u30DE ,",importSeparatorSemicolon:"\u30BB\u30DF\u30B3\u30ED\u30F3 ;",importSeparatorTab:"\u30BF\u30D6",importSeparatorPipe:"\u30D1\u30A4\u30D7 |",importFileColumn:"\u30D5\u30A1\u30A4\u30EB\u306E\u5217",importDetected:"\u691C\u51FA\u7D50\u679C",importGridColumn:"\u30B0\u30EA\u30C3\u30C9\u306E\u5217",importSample:"\u30B5\u30F3\u30D7\u30EB",importSkip:"\u2014 \u30B9\u30AD\u30C3\u30D7 \u2014",importPreview:"\u30D7\u30EC\u30D3\u30E5\u30FC",importNoSource:"\u307E\u305A\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u3076\u304B\u3001\u884C\u3092\u8CBC\u308A\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044\u3002",importNoRows:"\u30C7\u30FC\u30BF\u884C\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3067\u3057\u305F\u3002",importAction:"\u30A4\u30F3\u30DD\u30FC\u30C8",exportAborted:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3092\u4E2D\u6B62\u3057\u307E\u3057\u305F",exportSheetName:"\u30C7\u30FC\u30BF",chart:"\u30B0\u30E9\u30D5",chartCategory:"\u30AB\u30C6\u30B4\u30EA",chartSeries:"\u7CFB\u5217",chartAddSeries:"\u7CFB\u5217\u3092\u8FFD\u52A0",chartRemoveSeries:"\u524A\u9664",chartSource:"\u30C7\u30FC\u30BF",chartSourceView:"\u30D5\u30A3\u30EB\u30BF\u30FC\u5F8C\u306E\u884C",chartSourceSelection:"\u9078\u629E\u3057\u305F\u884C",chartSourceAll:"\u3059\u3079\u3066\u306E\u884C",chartClose:"\u30B0\u30E9\u30D5\u3092\u9589\u3058\u308B",chartFullscreen:"\u5168\u753B\u9762\u8868\u793A",chartExitFullscreen:"\u5168\u753B\u9762\u8868\u793A\u3092\u7D42\u4E86",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"\u30B0\u30E9\u30D5\u3092\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002",chartCrossFiltered:"\u30B0\u30EA\u30C3\u30C9\u306F {value} \u3067\u7D5E\u308A\u8FBC\u307E\u308C\u3066\u3044\u307E\u3059\u3002",chartBlankCategory:"(\u7A7A\u767D)",chartTruncated:"\u4E0A\u4F4D {n} \u4EF6\u306E\u30AB\u30C6\u30B4\u30EA\u3092\u8868\u793A\u3057\u3066\u3044\u307E\u3059\u3002\u6B8B\u308A\u306F\u300C\u305D\u306E\u4ED6\u300D\u306B\u307E\u3068\u3081\u3089\u308C\u3066\u3044\u307E\u3059\u3002",chartOther:"\u305D\u306E\u4ED6",chartEmpty:"\u307E\u3060\u8868\u793A\u3067\u304D\u308B\u3082\u306E\u304C\u3042\u308A\u307E\u305B\u3093\u3002",chartNeedsRecharts:"\u30B0\u30E9\u30D5\u306B\u306F\u30AA\u30D7\u30B7\u30E7\u30F3\u306E\u30D1\u30C3\u30B1\u30FC\u30B8 `recharts` \u304C\u5FC5\u8981\u3067\u3059\u3002\u63CF\u753B\u3059\u308B\u306B\u306F\u30A4\u30F3\u30B9\u30C8\u30FC\u30EB\u3057\u3066\u304F\u3060\u3055\u3044\u3002",chartOnlyOneSeries:"\u3053\u306E\u30B0\u30E9\u30D5\u306E\u7A2E\u985E\u306F 1 \u7CFB\u5217\u306E\u307F\u8868\u793A\u3057\u307E\u3059\u3002",chartByColumn:"\u3053\u306E\u5217\u3067\u30B0\u30E9\u30D5\u3092\u4F5C\u6210",chartGroupBy:"\u5358\u4F4D",chartGroupNone:"\u5404\u5024",chartGroupAuto:"\u81EA\u52D5",chartGroupDay:"\u65E5",chartGroupWeek:"\u9031",chartGroupMonth:"\u6708",chartGroupQuarter:"\u56DB\u534A\u671F",chartGroupYear:"\u5E74",chartGroupBins:"{n} \u533A\u9593",chartBucketAdjusted:"1 \u3064\u306E\u8EF8\u306B\u306F\u533A\u9593\u304C\u591A\u3059\u304E\u308B\u305F\u3081\u3001\u7C97\u304F\u307E\u3068\u3081\u307E\u3057\u305F\u3002",chartWindowed:"{total} \u4EF6\u4E2D {shown} \u4EF6\u3092\u8868\u793A\u3057\u3066\u3044\u307E\u3059\u3002",chartShowAll:"\u3059\u3079\u3066\u8868\u793A",chartCanvasHint:"\u30B0\u30E9\u30D5\u3002\u30B9\u30AF\u30ED\u30FC\u30EB\u3067\u62E1\u5927\u7E2E\u5C0F\u3001\u30C9\u30E9\u30C3\u30B0\u3067\u79FB\u52D5\u3001\u77E2\u5370\u30AD\u30FC\u3067\u79FB\u52D5\u30010 \u3067\u5168\u4F53\u8868\u793A\u3002",chartAggSum:"\u5408\u8A08",chartAggAvg:"\u5E73\u5747",chartAggMin:"\u6700\u5C0F",chartAggMax:"\u6700\u5927",chartAggCount:"\u30AB\u30A6\u30F3\u30C8",chartAggDistinct:"\u4E00\u610F\u306E\u6570",chartTypeColumn:"\u7E26\u68D2",chartTypeBar:"\u6A2A\u68D2",chartTypeLine:"\u6298\u308C\u7DDA",chartTypeArea:"\u9762",chartTypePie:"\u5186",chartTypeDonut:"\u30C9\u30FC\u30CA\u30C4",licenseMissing:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306A\u3057",licenseExpired:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u6709\u52B9\u671F\u9650\u304C\u5207\u308C\u3066\u3044\u307E\u3059",licenseReleaseNotCovered:"\u3053\u306E\u30D0\u30FC\u30B8\u30E7\u30F3\u306F\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5BFE\u8C61\u5916\u3067\u3059",licenseDomainMismatch:"\u3053\u306E\u30C9\u30E1\u30A4\u30F3\u3067\u306F\u30E9\u30A4\u30BB\u30F3\u30B9\u304C\u7121\u52B9\u3067\u3059",licenseRevoked:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306F\u53D6\u308A\u6D88\u3055\u308C\u307E\u3057\u305F",licenseInvalidFormat:"\u30E9\u30A4\u30BB\u30F3\u30B9\u30AD\u30FC\u306E\u5F62\u5F0F\u304C\u6B63\u3057\u304F\u3042\u308A\u307E\u305B\u3093",licenseInvalidSignature:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u7F72\u540D\u304C\u7121\u52B9\u3067\u3059",licenseEngineUnavailable:"\u30D6\u30E9\u30A6\u30B6\u30FC\u3067\u30E9\u30A4\u30BB\u30F3\u30B9\u3092\u691C\u8A3C\u3067\u304D\u307E\u305B\u3093\uFF08HTTPS \u304C\u5FC5\u8981\u3067\u3059\uFF09"},Pl={ok:"\uD655\uC778",cancel:"\uCDE8\uC18C",apply:"\uC801\uC6A9",close:"\uB2EB\uAE30",clear:"\uC9C0\uC6B0\uAE30",save:"\uC800\uC7A5",search:"\uAC80\uC0C9...",selectAll:"\uBAA8\uB450 \uC120\uD0DD",showAll:"\uBAA8\uB450 \uD45C\uC2DC",remove:"\uC81C\uAC70",none:"\uC5C6\uC74C",toolbarSearch:"\uAC80\uC0C9...",exportMenu:"\uB0B4\uBCF4\uB0B4\uAE30",exportCsv:"CSV\uB85C \uB0B4\uBCF4\uB0B4\uAE30",exportExcel:"\uBAA8\uB4E0 \uB370\uC774\uD130\uB97C Excel\uB85C \uB0B4\uBCF4\uB0B4\uAE30",exportExcelSelected:"\uC120\uD0DD\uD55C \uD589\uC744 Excel\uB85C \uB0B4\uBCF4\uB0B4\uAE30",exportPdf:"PDF\uB85C \uB0B4\uBCF4\uB0B4\uAE30",exporting:"\uB0B4\uBCF4\uB0B4\uB294 \uC911\u2026",columns:"\uC5F4",hiddenColumns:"\uC228\uACA8\uC9C4 \uC5F4",noHiddenColumns:"\uC228\uACA8\uC9C4 \uC5F4\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",sortAsc:"\uC624\uB984\uCC28\uC21C \uC815\uB82C",sortDesc:"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C",clearSort:"\uC815\uB82C \uC9C0\uC6B0\uAE30",groupByColumn:"\uC774 \uC5F4\uB85C \uADF8\uB8F9\uD654",ungroupColumn:"\uADF8\uB8F9\uD654\uC5D0\uC11C \uC81C\uC678",showGroupPanel:"\uADF8\uB8F9 \uD328\uB110 \uD45C\uC2DC",hideGroupPanel:"\uADF8\uB8F9 \uD328\uB110 \uC228\uAE30\uAE30",showFooter:"\uBC14\uB2E5\uAE00 \uD45C\uC2DC",hideFooter:"\uBC14\uB2E5\uAE00 \uC228\uAE30\uAE30",showGroupFooters:"\uADF8\uB8F9 \uBC14\uB2E5\uAE00 \uD45C\uC2DC",hideGroupFooters:"\uADF8\uB8F9 \uBC14\uB2E5\uAE00 \uC228\uAE30\uAE30",hideColumn:"\uC774 \uC5F4 \uC228\uAE30\uAE30",fieldChooser:"\uD544\uB4DC \uC120\uD0DD\uAE30\u2026",bestFit:"\uB108\uBE44 \uC790\uB3D9 \uB9DE\uCDA4",bestFitAll:"\uB108\uBE44 \uC790\uB3D9 \uB9DE\uCDA4(\uBAA8\uB4E0 \uC5F4)",fixedPosition:"\uACE0\uC815 \uC704\uCE58 \uC124\uC815",pinLeft:"\uC67C\uCABD",pinRight:"\uC624\uB978\uCABD",pinSticky:"\uACE0\uC815",unpin:"\uACE0\uC815 \uD574\uC81C",moveLeft:"\uC67C\uCABD\uC73C\uB85C \uC774\uB3D9",moveRight:"\uC624\uB978\uCABD\uC73C\uB85C \uC774\uB3D9",filterPlaceholder:"\uD544\uD130\u2026",filterColumnAria:"{column} \uD544\uD130",filterSelectAll:"\uBAA8\uB450 \uC120\uD0DD",filterBlank:"(\uBE44\uC5B4 \uC788\uC74C)",filterNoMatch:"\uC77C\uCE58\uD558\uB294 \uAC12\uC774 \uC5C6\uC2B5\uB2C8\uB2E4",filterLoading:"\uAC12\uC744 \uBD88\uB7EC\uC624\uB294 \uC911\u2026",filterTruncated:"\uCC98\uC74C \uAC12\uB9CC \uD45C\uC2DC\uB429\uB2C8\uB2E4 \u2014 \uB098\uBA38\uC9C0\uB294 \uAC80\uC0C9\uD574 \uC8FC\uC138\uC694.",filterRemove:"\uD544\uD130 \uC81C\uAC70",filterToggle:"\uD544\uD130 \uC801\uC6A9",filterEditBuilder:"\uD544\uD130 \uD3B8\uC9D1",filterNone:"\uD544\uD130 \uC5C6\uC74C",filterActive:"\uD544\uD130 \uC801\uC6A9 \uC911",opEquals:"\uAC19\uC74C",opNotEquals:"\uAC19\uC9C0 \uC54A\uC74C",opGreater:">",opGreaterOrEqual:"\u2265",opLess:"<",opLessOrEqual:"\u2264",opContains:"\uD3EC\uD568",opNotContains:"\uD3EC\uD568\uD558\uC9C0 \uC54A\uC74C",opStartsWith:"(\uC73C)\uB85C \uC2DC\uC791",opEndsWith:"(\uC73C)\uB85C \uB05D\uB0A8",opIsBlank:"\uBE44\uC5B4 \uC788\uC74C",opIsNotBlank:"\uBE44\uC5B4 \uC788\uC9C0 \uC54A\uC74C",opIsOneOf:"\uB2E4\uC74C \uC911 \uD558\uB098",opIsBetween:"\uC0AC\uC774",opValuesCount:"\uAC12 {n}\uAC1C",filterAnd:"\uADF8\uB9AC\uACE0 (And)",filterOr:"\uB610\uB294 (Or)",builderTitle:"\uD544\uD130 \uC791\uC131\uAE30",builderCombine:"\uC870\uAC74 \uACB0\uD569 \uBC29\uC2DD",builderAddCondition:"\uC870\uAC74 \uCD94\uAC00",builderAddGroup:"\uADF8\uB8F9 \uCD94\uAC00",builderRemoveGroup:"\uADF8\uB8F9 \uC81C\uAC70",builderRemoveCondition:"\uC870\uAC74 \uC81C\uAC70",builderEmpty:"\uC544\uC9C1 \uC870\uAC74\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",builderColumn:"\uC5F4",builderOperator:"\uC5F0\uC0B0\uC790",builderValue:"\uAC12",builderValueFrom:"\uC2DC\uC791",builderValueTo:"\uB05D",builderValuePlaceholder:"\uAC12\uC744 \uC785\uB825\uD558\uC138\uC694",groupPanelHint:"\uADF8\uB8F9\uD654\uD560 \uC5F4\uC744 \uC5EC\uAE30\uB85C \uB04C\uC5B4 \uB193\uC73C\uC138\uC694",groupAddLevel:"\uADF8\uB8F9\uD654 \uC218\uC900 \uCD94\uAC00",groupAddLevelButton:"+ \uC218\uC900 \uCD94\uAC00\u2026",groupNoGrouping:"(\uADF8\uB8F9\uD654 \uC5C6\uC74C)",groupLevelAria:"\uADF8\uB8F9\uD654 \uC218\uC900 {n}",groupRemoveAria:"{column} \uC81C\uAC70",pagerFirst:"\uCCAB \uD398\uC774\uC9C0",pagerPrevious:"\uC774\uC804 \uD398\uC774\uC9C0",pagerNext:"\uB2E4\uC74C \uD398\uC774\uC9C0",pagerLast:"\uB9C8\uC9C0\uB9C9 \uD398\uC774\uC9C0",pagerPage:"\uD398\uC774\uC9C0",pagerOf:"/",pagerRowsPerPage:"\uD398\uC774\uC9C0\uB2F9 \uD589 \uC218",pagerAria:"\uD398\uC774\uC9C0 \uB9E4\uAE40",selectAllRows:"\uBAA8\uB4E0 \uD589 \uC120\uD0DD",selectRowAria:"{row}\uD589 \uC120\uD0DD",summaryAria:"\uC694\uC57D",columnTotalsAria:"\uC5F4 \uD569\uACC4",rowActions:"\uD589 \uC791\uC5C5",detailsAria:"\uC138\uBD80 \uC815\uBCF4",rowNumberAria:"\uD589 \uBC88\uD638",noteEditorAria:"\uC140 \uBA54\uBAA8",notePlaceholder:"\uC774 \uC140\uC5D0 \uB300\uD55C \uBA54\uBAA8 \uC791\uC131\u2026",addNote:"\uBA54\uBAA8 \uCD94\uAC00\u2026",editNote:"\uBA54\uBAA8 \uD3B8\uC9D1\u2026",deleteNote:"\uBA54\uBAA8 \uC0AD\uC81C",expandDetails:"\uC138\uBD80 \uC815\uBCF4 \uD655\uC7A5",collapseDetails:"\uC138\uBD80 \uC815\uBCF4 \uCD95\uC18C",dragToReorder:"\uB04C\uC5B4\uC11C \uC21C\uC11C \uBCC0\uACBD",menuCopy:"\uBCF5\uC0AC",menuCopyWithHeaders:"\uBA38\uB9AC\uAE00 \uD3EC\uD568 \uBCF5\uC0AC",menuCopyWithGroupHeaders:"\uADF8\uB8F9 \uBA38\uB9AC\uAE00 \uD3EC\uD568 \uBCF5\uC0AC",menuCut:"\uC798\uB77C\uB0B4\uAE30",menuPaste:"\uBD99\uC5EC\uB123\uAE30",menuExport:"\uB0B4\uBCF4\uB0B4\uAE30",menuChartRange:"\uC120\uD0DD\uD55C \uC5F4 \uCC28\uD2B8",statsSum:"\uD569\uACC4",statsCount:"\uAC1C\uC218",statsAvg:"\uD3C9\uADE0",statsMin:"\uCD5C\uC18C",statsMax:"\uCD5C\uB300",statsCells:"\uC140",statsTooLarge:"\uC120\uD0DD \uBC94\uC704\uAC00 \uB108\uBB34 \uCEE4\uC11C \uD569\uACC4\uB97C \uB0BC \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",statusRows:"\uD589",statusFiltered:"\uD544\uD130\uB428",statusSelected:"\uC120\uD0DD\uB428",summaryRows:"\uD589",announceRows:"{n}\uAC1C \uD589",announceSortedBy:"{columns} \uAE30\uC900 \uC815\uB82C",announceSelected:"{n}\uAC1C \uC120\uD0DD\uB428",announceAscending:"\uC624\uB984\uCC28\uC21C",announceDescending:"\uB0B4\uB9BC\uCC28\uC21C",sideFilters:"\uD544\uD130",sideBarAria:"\uB3C4\uAD6C \uD328\uB110",sideClearFilters:"\uBAA8\uB4E0 \uD544\uD130 \uC9C0\uC6B0\uAE30",summarySum:"\uD569\uACC4",summaryAvg:"\uD3C9\uADE0",summaryMin:"\uCD5C\uC18C",summaryMax:"\uCD5C\uB300",summaryCount:"\uAC1C\uC218",summaryDistinct:"\uACE0\uC720 \uAC1C\uC218",summaryCustom:"\uC0AC\uC6A9\uC790 \uC9C0\uC815",noTotal:"\uD569\uACC4 \uC5C6\uC74C",busy:"\uCC98\uB9AC \uC911\u2026",busyLoading:"\uD589\uC744 \uBD88\uB7EC\uC624\uB294 \uC911\u2026",busyEncoding:"\uB370\uC774\uD130\uB97C \uC900\uBE44\uD558\uB294 \uC911\u2026",busyFiltering:"\uD589\uC744 \uD544\uD130\uB9C1\uD558\uB294 \uC911\u2026",busySorting:"\uD589\uC744 \uC815\uB82C\uD558\uB294 \uC911\u2026",busyComputing:"\uD544\uD130\uB9C1 \uBC0F \uC815\uB82C \uC911\u2026",busyGrouping:"\uADF8\uB8F9\uC744 \uB9CC\uB4DC\uB294 \uC911\u2026",busyAggregating:"\uD569\uACC4\uB97C \uACC4\uC0B0\uD558\uB294 \uC911\u2026",busyProjecting:"\uBCF4\uAE30\uB97C \uC5C5\uB370\uC774\uD2B8\uD558\uB294 \uC911\u2026",busyExporting:"\uD30C\uC77C\uC744 \uB9CC\uB4DC\uB294 \uC911\u2026",noData:"\uB370\uC774\uD130\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",editNewRow:"\uC0C8 \uD589",editSaveChanges:"\uBCC0\uACBD \uB0B4\uC6A9 \uC800\uC7A5",editDiscardChanges:"\uBCC0\uACBD \uB0B4\uC6A9 \uCDE8\uC18C",editRow:"\uD589 \uD3B8\uC9D1",editRowMenu:"\uD589 \uD3B8\uC9D1\u2026",editDeleteRow:"\uD589 \uC0AD\uC81C",editUndoDelete:"\uC0AD\uC81C \uCDE8\uC18C",editActions:"\uC791\uC5C5",editSaveRow:"\uD589 \uC800\uC7A5",editSaving:"\uC800\uC7A5 \uC911\u2026",editEditingRow:"{row}\uD589 \uD3B8\uC9D1 \uC911",editSaveCount:"{n}\uAC1C \uD589 \uC800\uC7A5",editCannotSave:"\uC800\uC7A5\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",editSaveFailed:"\uBCC0\uACBD \uB0B4\uC6A9\uC744 \uC800\uC7A5\uD558\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",editDeleteConfirm:"\uC774 \uD589\uC744 \uC0AD\uC81C\uD560\uAE4C\uC694?",editAddRowUndo:"\uD589 \uCD94\uAC00",editDeleteRowUndo:"\uD589 \uC0AD\uC81C",editCellUndo:"{column} \uD3B8\uC9D1",editFillUndo:"{count}\uAC1C \uC140 \uCC44\uC6B0\uAE30",editPasteUndo:"{count}\uAC1C \uC140 \uBD99\uC5EC\uB123\uAE30",editCutUndo:"{count}\uAC1C \uC140 \uC798\uB77C\uB0B4\uAE30",editNoMatch:"\uC77C\uCE58 \uD56D\uBAA9 \uC5C6\uC74C",formEditTitle:"\uD589 \uD3B8\uC9D1",formAddTitle:"\uC0C8 \uD589",formShortcut:"{key}+Enter\uB85C \uC800\uC7A5 \xB7 Esc\uB85C \uCDE8\uC18C",validationRequired:"\uD544\uC218 \uD56D\uBAA9\uC785\uB2C8\uB2E4",validationNumber:"\uC22B\uC790\uC5EC\uC57C \uD569\uB2C8\uB2E4",validationFormat:"\uD615\uC2DD\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",validationEmail:"\uC774\uBA54\uC77C \uC8FC\uC18C\uAC00 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",validationInvalid:"\uAC12\uC774 \uC62C\uBC14\uB974\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",dateCalendar:"\uB2EC\uB825",dateOpenCalendar:"\uB2EC\uB825 \uC5F4\uAE30",datePreviousMonth:"\uC774\uC804 \uB2EC",dateNextMonth:"\uB2E4\uC74C \uB2EC",monthJanuary:"1\uC6D4",monthFebruary:"2\uC6D4",monthMarch:"3\uC6D4",monthApril:"4\uC6D4",monthMay:"5\uC6D4",monthJune:"6\uC6D4",monthJuly:"7\uC6D4",monthAugust:"8\uC6D4",monthSeptember:"9\uC6D4",monthOctober:"10\uC6D4",monthNovember:"11\uC6D4",monthDecember:"12\uC6D4",weekStartsOn:"0",weekdaySu:"\uC77C",weekdayMo:"\uC6D4",weekdayTu:"\uD654",weekdayWe:"\uC218",weekdayTh:"\uBAA9",weekdayFr:"\uAE08",weekdaySa:"\uD1A0",importTitle:"\uB370\uC774\uD130 \uAC00\uC838\uC624\uAE30",importStepSource:"1. \uC6D0\uBCF8",importStepMap:"2. \uC5F4 \uB9E4\uD551",importFile:"CSV \uD30C\uC77C",importPaste:"\u2026\uB610\uB294 \uD589 \uBD99\uC5EC\uB123\uAE30",importSeparator:"\uAD6C\uBD84 \uAE30\uD638",importSeparatorAuto:"\uC790\uB3D9 \uAC10\uC9C0",importSeparatorComma:"\uC27C\uD45C ,",importSeparatorSemicolon:"\uC138\uBBF8\uCF5C\uB860 ;",importSeparatorTab:"\uD0ED",importSeparatorPipe:"\uD30C\uC774\uD504 |",importFileColumn:"\uD30C\uC77C \uC5F4",importDetected:"\uAC10\uC9C0\uB428",importGridColumn:"\uADF8\uB9AC\uB4DC \uC5F4",importSample:"\uC608\uC2DC",importSkip:"\u2014 \uAC74\uB108\uB6F0\uAE30 \u2014",importPreview:"\uBBF8\uB9AC \uBCF4\uAE30",importNoSource:"\uBA3C\uC800 \uD30C\uC77C\uC744 \uC120\uD0DD\uD558\uAC70\uB098 \uD589\uC744 \uBD99\uC5EC\uB123\uC73C\uC138\uC694.",importNoRows:"\uB370\uC774\uD130 \uD589\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",importAction:"\uAC00\uC838\uC624\uAE30",exportAborted:"\uB0B4\uBCF4\uB0B4\uAE30\uAC00 \uC911\uB2E8\uB418\uC5C8\uC2B5\uB2C8\uB2E4",exportSheetName:"\uB370\uC774\uD130",chart:"\uCC28\uD2B8",chartCategory:"\uBC94\uC8FC",chartSeries:"\uACC4\uC5F4",chartAddSeries:"\uACC4\uC5F4 \uCD94\uAC00",chartRemoveSeries:"\uC81C\uAC70",chartSource:"\uB370\uC774\uD130",chartSourceView:"\uD544\uD130\uB9C1\uB41C \uD589",chartSourceSelection:"\uC120\uD0DD\uD55C \uD589",chartSourceAll:"\uBAA8\uB4E0 \uD589",chartClose:"\uCC28\uD2B8 \uB2EB\uAE30",chartFullscreen:"\uC804\uCCB4 \uD654\uBA74",chartExitFullscreen:"\uC804\uCCB4 \uD654\uBA74 \uC885\uB8CC",chartExportPng:"PNG",chartExportSvg:"SVG",chartExportFailed:"\uCC28\uD2B8\uB97C \uB0B4\uBCF4\uB0B4\uC9C0 \uBABB\uD588\uC2B5\uB2C8\uB2E4.",chartCrossFiltered:"\uADF8\uB9AC\uB4DC\uAC00 {value}(\uC73C)\uB85C \uD544\uD130\uB9C1\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",chartBlankCategory:"(\uBE44\uC5B4 \uC788\uC74C)",chartTruncated:"\uC0C1\uC704 {n}\uAC1C \uBC94\uC8FC\uB97C \uD45C\uC2DC\uD569\uB2C8\uB2E4. \uB098\uBA38\uC9C0\uB294 \u201C\uAE30\uD0C0\u201D\uB85C \uBB36\uC600\uC2B5\uB2C8\uB2E4.",chartOther:"\uAE30\uD0C0",chartEmpty:"\uC544\uC9C1 \uD45C\uC2DC\uD560 \uB0B4\uC6A9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",chartNeedsRecharts:"\uCC28\uD2B8\uC5D0\uB294 \uC120\uD0DD \uD328\uD0A4\uC9C0 `recharts`\uAC00 \uD544\uC694\uD569\uB2C8\uB2E4. \uC124\uCE58\uD55C \uB4A4 \uC0AC\uC6A9\uD558\uC138\uC694.",chartOnlyOneSeries:"\uC774 \uCC28\uD2B8 \uC720\uD615\uC740 \uACC4\uC5F4 \uD558\uB098\uB9CC \uD45C\uC2DC\uD569\uB2C8\uB2E4.",chartByColumn:"\uC774 \uC5F4\uB85C \uCC28\uD2B8 \uB9CC\uB4E4\uAE30",chartGroupBy:"\uAE30\uC900",chartGroupNone:"\uAC01 \uAC12",chartGroupAuto:"\uC790\uB3D9",chartGroupDay:"\uC77C",chartGroupWeek:"\uC8FC",chartGroupMonth:"\uC6D4",chartGroupQuarter:"\uBD84\uAE30",chartGroupYear:"\uC5F0\uB3C4",chartGroupBins:"\uAD6C\uAC04 {n}\uAC1C",chartBucketAdjusted:"\uCD95 \uD558\uB098\uC5D0 \uD45C\uC2DC\uD558\uAE30\uC5D0 \uAD6C\uAC04\uC774 \uB108\uBB34 \uB9CE\uC544 \uB354 \uD06C\uAC8C \uBB36\uC5C8\uC2B5\uB2C8\uB2E4.",chartWindowed:"{total}\uAC1C \uC911 {shown}\uAC1C\uB97C \uD45C\uC2DC\uD558\uACE0 \uC788\uC2B5\uB2C8\uB2E4.",chartShowAll:"\uBAA8\uB450 \uD45C\uC2DC",chartCanvasHint:"\uCC28\uD2B8. \uC2A4\uD06C\uB864\uD558\uC5EC \uD655\uB300/\uCD95\uC18C, \uB04C\uC5B4\uC11C \uC774\uB3D9, \uD654\uC0B4\uD45C \uD0A4\uB85C \uC774\uB3D9, 0\uC744 \uB20C\uB7EC \uC804\uCCB4 \uBCF4\uAE30.",chartAggSum:"\uD569\uACC4",chartAggAvg:"\uD3C9\uADE0",chartAggMin:"\uCD5C\uC18C",chartAggMax:"\uCD5C\uB300",chartAggCount:"\uAC1C\uC218",chartAggDistinct:"\uACE0\uC720 \uAC1C\uC218",chartTypeColumn:"\uC138\uB85C \uB9C9\uB300",chartTypeBar:"\uAC00\uB85C \uB9C9\uB300",chartTypeLine:"\uC120",chartTypeArea:"\uC601\uC5ED",chartTypePie:"\uC6D0",chartTypeDonut:"\uB3C4\uB11B",licenseMissing:"\uB77C\uC774\uC120\uC2A4 \uC5C6\uC74C",licenseExpired:"\uB77C\uC774\uC120\uC2A4\uAC00 \uB9CC\uB8CC\uB418\uC5C8\uC2B5\uB2C8\uB2E4",licenseReleaseNotCovered:"\uC774 \uBC84\uC804\uC740 \uB77C\uC774\uC120\uC2A4 \uC801\uC6A9 \uB300\uC0C1\uC774 \uC544\uB2D9\uB2C8\uB2E4",licenseDomainMismatch:"\uC774 \uB3C4\uBA54\uC778\uC5D0\uC11C\uB294 \uB77C\uC774\uC120\uC2A4\uAC00 \uC720\uD6A8\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",licenseRevoked:"\uB77C\uC774\uC120\uC2A4\uAC00 \uCDE8\uC18C\uB418\uC5C8\uC2B5\uB2C8\uB2E4",licenseInvalidFormat:"\uB77C\uC774\uC120\uC2A4 \uD0A4 \uD615\uC2DD\uC774 \uC798\uBABB\uB418\uC5C8\uC2B5\uB2C8\uB2E4",licenseInvalidSignature:"\uB77C\uC774\uC120\uC2A4 \uC11C\uBA85\uC774 \uC720\uD6A8\uD558\uC9C0 \uC54A\uC2B5\uB2C8\uB2E4",licenseEngineUnavailable:"\uBE0C\uB77C\uC6B0\uC800\uC5D0\uC11C \uB77C\uC774\uC120\uC2A4\uB97C \uD655\uC778\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4(HTTPS \uD544\uC694)"};function yt(e,t){let u=e;for(let[r,n]of Object.entries(t))u=u.replace(`{${r}}`,String(n));return u}var Gl={tr:Fl,en:Ji,de:Sl,fr:Bl,es:kl,it:Rl,pt:Nl,ru:Tl,ar:Ml,"zh-CN":Il,ja:Ll,ko:Pl};function Ht(e,t){return Dl(Gl,Ji,e,t)}function Ol(e,t,u,r){let n=u.getCellValue(e.data,t);return r?{text:n==null?"":String(n),value:n}:{text:Du(u.getDef(t),n,e.data),value:n}}function Vl({nodes:e,columns:t,options:u,isSelected:r,selectionCount:n=0,summaries:i}){let a=t.runtime(),l=(u.columnIds??a.map(g=>g.state.id)).map(g=>{let y=t.getDef(g),F=t.getState(g),S=y?.dataType==="number";return{id:g,header:y?.headerName??y?.field??g,width:Math.max(8,Math.round((F?.width??100)/7)),isNumeric:S,align:y?.align??(S?"right":"left"),numFmt:y?.excelFormat??zl(y?.dataType)}}),s=!!u.selectedOnly&&n>0&&!!r,m=u.includeGroups!==!1,c=!!u.raw,h=[];for(let g of e)if(g){if(wo(g)){if(!m||s)continue;let y=l.map((F,S)=>S===0?{text:`${g.label===""?"(Blanks)":g.label} (${g.count})`,value:g.label}:{text:"",value:null});h.push({kind:"group",cells:y,level:g.level});continue}at(g)&&(s&&!r(g.key)||h.push({kind:"data",cells:l.map(y=>Ol(g,y.id,t,c)),level:0}))}let w;return i&&i.defs.length>0&&(w=l.map(g=>{let y=i.defs.find(S=>S.columnId===g.id);if(!y)return null;let F=i.values[`${y.columnId}:${y.type}`]??null;return{text:y.valueFormatter?y.valueFormatter(F):F==null?"":String(F),value:F}})),{columns:l,rows:h,totals:w}}function zl(e){if(e==="number")return"#,##0.###";if(e==="date")return"yyyy-mm-dd"}var lt=class extends Error{constructor(){super("Export aborted"),this.name="ExportAbortedError"}},Hl="\uFEFF",Kl=new Set(["tr","de","fr","es","it","pt","ru","ar"]);function Wl(e){let t=(e??"en").split(/[-_]/)[0].toLowerCase();return Kl.has(t)?";":","}function Ci(e,t){return e.includes(t)||e.includes('"')||e.includes(`
|
|
2
2
|
`)||e.includes("\r")||e!==e.trim()?`"${e.replace(/"/g,'""')}"`:e}async function Ul(e,t={}){let u=t.delimiter??",",r=t.newline??`\r
|
|
3
|
-
`,n=[];t.includeHeaders!==!1&&n.push(e.columns.map(l=>Ci(l.header,u)).join(u));let i=e.rows.length;for(let l=0;l<i;l++){if(t.signal?.aborted)throw new lt;let s=e.rows[l];n.push(s.cells.map(m=>Ci(m.text,u)).join(u)),(l+1)%5e3===0&&(t.onProgress?.((l+1)/i),await new Promise(m=>setTimeout(m,0)))}t.onProgress?.(1);let a=n.join(r);return t.bom===!1?a:Hl+a}async function $l(e,t={}){let u=await Ul(e,t);return new Blob([u],{type:"text/csv;charset=utf-8;"})}var ql="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",wi="FFF1F5F9",_l="FFFAFAFA",yi="FFE2E8F0";async function jl(){let e;try{e=await import("exceljs")}catch{throw new Error('[datagrid] Excel export needs the "exceljs" package. Install it with: npm i exceljs')}let t=e,u=t.Workbook?t:t.default;if(!u?.Workbook)throw new Error('[datagrid] Excel export needs the "exceljs" package, and what loaded exposes no Workbook \u2014 it is either not installed (npm i exceljs) or a version this writer does not understand.');return u}function Qi(e,t,u){e.columns=t.columns.map(r=>({key:r.id,width:r.width,style:u?{alignment:{horizontal:r.align},...r.numFmt?{numFmt:r.numFmt}:{}}:void 0}))}function Yl(e){let t=e,u="";for(;t>0;){let r=(t-1)%26;u=String.fromCharCode(65+r)+u,t=Math.floor((t-1)/26)}return u||"A"}function Xi(e,t){if(t&&(t.value!==void 0&&(e.value=t.value),t.font&&(e.font={...e.font,...t.font,...t.font.color?{color:{argb:t.font.color}}:{}}),t.fill&&(e.fill={type:"pattern",pattern:"solid",fgColor:{argb:t.fill}}),t.numFmt&&(e.numFmt=t.numFmt),t.alignment&&(e.alignment={...e.alignment,...t.alignment}),t.border)){let u={style:"thin",color:{argb:t.border}};e.border={top:u,left:u,bottom:u,right:u}}}function Gt(e,t,u,r,n){let i=t.customizeCell;i&&e.eachCell((a,l)=>{let s=r?.columns[l-1],m=i({kind:u,columnId:s?.id??null,value:a.value,text:a.value==null?"":String(a.value),rowNumber:e.number,colNumber:l,rowIndex:n});Xi(a,m)})}function Bu(e,t,u,r){if(t?.length)for(let n of t){let i=e.addRow(n.cells);n.height&&(i.height=n.height),n.style&&i.eachCell(a=>Xi(a,n.style)),n.merge&&u>1&&e.mergeCells(`A${i.number}:${Yl(u)}${i.number}`),Gt(i,r,"band",null,-1)}}async function Ei(e,t,u,r,n){let i=null;if(r&&t.columns.length>0){let h=e.addRow(t.columns.map(w=>w.header));h.font={bold:!0},h.fill={type:"pattern",pattern:"solid",fgColor:{argb:wi}},n&&(h.alignment={horizontal:"left",vertical:"middle"},h.border={bottom:{style:"thin",color:{argb:yi}}}),Gt(h,u,"header",t,-1),i=h.number}let a=t.rows.length,l=i===null?0:i+1,s=i??0,m=0,c=-1;for(let h=0;h<a;h++){if(u.signal?.aborted)throw new lt;let w=t.rows[h],g=w.cells.map(F=>u.raw||typeof F.value=="number"||F.value instanceof Date?F.value:F.text),y=e.addRow(g);h===0&&(l=y.number),s=y.number,w.kind==="group"?(c=w.level,y.font={bold:!0},y.getCell(1).alignment={indent:w.level,horizontal:"left"},n&&(y.fill={type:"pattern",pattern:"solid",fgColor:{argb:wi}},y.outlineLevel=w.level),m=0,Gt(y,u,"group",t,h)):(n&&(c>=0&&(y.outlineLevel=c+1),m%2===1&&(y.fill={type:"pattern",pattern:"solid",fgColor:{argb:_l}})),m++,Gt(y,u,"data",t,h)),(h+1)%5e3===0&&(u.onProgress?.((h+1)/a),await new Promise(F=>setTimeout(F,0)))}if(n&&u.totalsRow!==!1&&t.totals){let h=e.addRow(t.totals.map(w=>w==null?"":typeof w.value=="number"?w.value:w.text));h.font={bold:!0},h.border={top:{style:"double",color:{argb:yi}}},Gt(h,u,"totals",t,-1),s=h.number}return{headerRow:i,firstDataRow:l,lastRow:s}}function Zl(e,t,u){if(u?.length)for(let r of u){let n=e.addImage({...typeof r.data=="string"?{base64:r.data}:{buffer:r.data},extension:r.extension}),i=r.position??{col:0,row:0,width:160,height:48};t.addImage(n,{tl:{col:i.col,row:i.row},ext:{width:i.width,height:i.height}})}}async function Jl(e,t={}){let u=await jl(),r=t.styled===!0,n=t.includeHeaders!==!1,i=new u.Workbook,a=h=>i.addWorksheet(h),l=a(t.sheetName??"Data");r&&(l.properties.outlineProperties={summaryBelow:!1,summaryRight:!1}),Qi(l,e,r),Zl(i,l,t.images),Bu(l,t.headerBlock,e.columns.length,t);let s=await Ei(l,e,t,n,r);t.onProgress?.(1),t.autoFilter!==!1&&s.headerRow!==null&&e.columns.length>0&&(l.autoFilter={from:{row:s.headerRow,column:1},to:{row:s.headerRow,column:e.columns.length}}),t.freezeHeader!==!1&&s.headerRow!==null&&(l.views=[{state:"frozen",ySplit:s.headerRow}]);let m=l;for(let h of t.additionalGrids??[])m=Ql(a,m,h,t,r),await Ei(m,h.model,t,h.includeHeaders!==!1,r);Bu(l,t.footerBlock,e.columns.length,t);let c=await i.xlsx.writeBuffer();return new Blob([c],{type:ql})}function Ql(e,t,u,r,n){if(u.sheetName){let a=e(u.sheetName);return Qi(a,u.model,n),u.title&&Bu(a,[{cells:[u.title],merge:!0,style:{font:{bold:!0,size:13}}}],u.model.columns.length,r),a}let i=u.gap??2;for(let a=0;a<i;a++)t.addRow([]);return u.title&&Bu(t,[{cells:[u.title],merge:!0,style:{font:{bold:!0,size:13}}}],u.model.columns.length,r),t}var Xl="application/pdf",Cr=[241,245,249],es=[250,250,250],ke=[30,41,59];async function ts(){let e=new Error('[datagrid] PDF export needs "jspdf" and "jspdf-autotable". Install them with: npm i jspdf jspdf-autotable'),t;try{let[u,r]=await Promise.all([import("jspdf"),import("jspdf-autotable")]);t={jsPDF:u.jsPDF??u.default,autoTable:r.default??r}}catch{throw e}if(typeof t.jsPDF!="function"||typeof t.autoTable!="function")throw e;return t}var Or="helvetica",us=/[^\u0000-\u00ff\u0152\u0153\u0160\u0161\u0178\u017d\u017e\u0192\u02c6\u02dc\u2013\u2014\u2018\u2019\u201a\u201c\u201d\u201e\u2020\u2021\u2022\u2026\u2030\u2039\u203a\u20ac\u2122]/u;function rs(e,t){let u=function*(){for(let r of t.headerBlock??[])yield r.text;for(let r of t.footerBlock??[])yield r.text;for(let r of[{model:e,title:void 0},...t.additionalGrids??[]]){r.title&&(yield r.title);for(let n of r.model.columns)yield n.header;for(let n of r.model.rows)for(let i of n.cells)yield i.text;for(let n of r.model.totals??[])n&&(yield n.text)}};for(let r of u()){let n=us.exec(r);if(n)return n[0]}return null}function ns(e,t,u){let r,n;if(typeof e=="string")r=atob(e.slice(0,8)),n=e;else{let i=e instanceof Uint8Array?e:new Uint8Array(e),a=[];for(let l=0;l<i.length;l+=32768)a.push(String.fromCharCode.apply(null,i.subarray(l,l+32768)));n=a.join(""),r=n.slice(0,4)}if(!r.startsWith("\0\0\0")){let i=r.startsWith("OTTO")?" (it is OpenType-CFF, .otf)":r.startsWith("wOF")?" (it is WOFF)":"";throw new Error(`[datagrid] PDF export: font "${t}" (${u}) is not a TrueType .ttf file${i}. jsPDF embeds TrueType only.`)}return n}function is(e,t){let u=[["normal",t.normal],["bold",t.bold??t.normal],["italic",t.italic??t.normal],["bolditalic",t.boldItalic??t.bold??t.italic??t.normal]];for(let[r,n]of u){let i=`${t.family}-${r}.ttf`;e.addFileToVFS(i,ns(n,t.family,r)),e.addFont(i,t.family,r)}return t.family}function Br(e,t,u,r,n){if(!t?.length)return u;let i=e.internal.pageSize.getWidth(),a=u;for(let l of t){let s=l.fontSize??10;e.setFontSize(s),e.setFont(n,l.fontStyle??"normal");let m=l.color??ke;e.setTextColor(m[0],m[1],m[2]);let c=l.align??"left",h=c==="center"?i/2:c==="right"?i-r:r;a+=s*.353,e.text(l.text,h,a,{align:c}),a+=l.spacing??2}return e.setTextColor(ke[0],ke[1],ke[2]),a}function as(e,t){t&&(t.text!==void 0&&(e.text=[t.text]),t.fillColor&&(e.styles.fillColor=t.fillColor),t.textColor&&(e.styles.textColor=t.textColor),t.fontStyle&&(e.styles.fontStyle=t.fontStyle),t.fontSize&&(e.styles.fontSize=t.fontSize),t.halign&&(e.styles.halign=t.halign))}function Vr(e,t,u,r,n,i,a){let l=r.styled!==!1,s=r.margin??14,m=a?.from??0,c=a?.to??u.rows.length,h=u.rows.slice(m,c).map(g=>g.cells.map(y=>y.text)),w=l&&r.totalsRow!==!1&&u.totals&&(!a||a.withTotals)?[u.totals.map(g=>g?.text??"")]:void 0;return t(e,{startY:n,margin:{left:s,right:s},head:i&&u.columns.length>0?[u.columns.map(g=>g.header)]:void 0,body:h,foot:w,theme:l?"grid":"plain",showHead:r.repeatHeaders===!1?"firstPage":"everyPage",showFoot:w?"lastPage":"never",styles:{...r.font?{font:r.font.family}:{},fontSize:8,cellPadding:2,textColor:ke},headStyles:{fillColor:Cr,textColor:ke,fontStyle:"bold"},footStyles:{fillColor:Cr,textColor:ke,fontStyle:"bold"},alternateRowStyles:l?{fillColor:es}:void 0,columnStyles:l?Object.fromEntries(u.columns.map((g,y)=>[y,{halign:g.align}])):void 0,didParseCell:g=>{let y,F=-1;g.section==="head"?y="header":g.section==="foot"?y="totals":(F=m+g.row.index,y=u.rows[F]?.kind==="group"?"group":"data"),y==="group"&&(g.cell.styles.fontStyle="bold",g.cell.styles.fillColor=Cr,g.column.index===0&&(g.cell.styles.cellPadding={top:2,right:2,bottom:2,left:2+(u.rows[F]?.level??0)*4}));let S=r.customizeCell;if(!S)return;let T=u.columns[g.column.index],N=F>=0?u.rows[F]?.cells[g.column.index]:void 0;as(g.cell,S({kind:y,columnId:T?.id??null,text:Array.isArray(g.cell.text)?g.cell.text.join(" "):String(g.cell.text),value:N?.value,rowIndex:F,columnIndex:g.column.index}))}}),e.lastAutoTable?.finalY??n}function os(e,t){t?.length&&t.forEach((u,r)=>{try{e.addImage(u.data,u.format,u.x,u.y,u.width,u.height)}catch(n){let i=n instanceof Error?n.message:String(n);throw new Error(`[datagrid] PDF export could not decode images[${r}] (format: ${u.format}). The data is not a valid ${u.format} \u2014 check that it is a complete file, base64-encoded, and that \`format\` matches it. Underlying error: ${i}`)}})}function ls(e,t){let u=t.pageNumbers;if(!u)return;let r=t.margin??14,n=e.getNumberOfPages(),i=e.internal.pageSize.getWidth(),a=e.internal.pageSize.getHeight();for(let l=1;l<=n;l++){e.setPage(l),e.setFontSize(8),e.setFont(t.font?.family??Or,"normal"),e.setTextColor(148,163,184);let s=typeof u=="function"?u(l,n):`${l} / ${n}`;e.text(s,i-r,a-8,{align:"right"})}e.setTextColor(ke[0],ke[1],ke[2])}var ss=400,ds=1e3;async function cs(e,t,u,r,n,i,a){let l=u.rows.length,s=Math.max(1,r.sliceRows||ds),m=n,c=0;for(;c<l;){if(r.signal?.aborted)throw new lt;let h=Math.min(l,c+s);c>0&&e.addPage(),m=Vr(e,t,u,r,c===0?n:a,i,{from:c,to:h,withTotals:h>=l}),c=h,r.onProgress?.(c/l),c<l&&await new Promise(w=>setTimeout(w,0))}return m}async function hs(e,t={}){if(t.signal?.aborted)throw new lt;let{jsPDF:u,autoTable:r}=await ts(),n=t.margin??14,i=new u({orientation:t.orientation??"landscape",unit:"mm",format:t.pageSize??"a4"}),a=t.font?is(i,t.font):Or;if(!t.font){let m=rs(e,t);if(m!==null){let c=m.codePointAt(0).toString(16).toUpperCase().padStart(4,"0");console.warn(`[datagrid] PDF export: "${m}" (U+${c}) cannot be drawn by the built-in PDF font and will come out as the wrong character. Pass \`font\` (a TrueType .ttf covering your language) in the PDF export options \u2014 see PdfExportOptions.font.`)}}os(i,t.images);let l=n;l=Br(i,t.headerBlock,l,n,a),l=t.sliceRows!==0&&e.rows.length>ss?await cs(i,r,e,t,l+2,t.includeHeaders!==!1,n):Vr(i,r,e,t,l+2,t.includeHeaders!==!1);for(let m of t.additionalGrids??[]){if(t.signal?.aborted)throw new lt;l=ps(i,r,m,t,l,n)}if(t.onProgress?.(1),t.footerBlock?.length){let m=t.footerBlock.reduce((c,h)=>c+(h.fontSize??10)*.353+(h.spacing??2),4);l+m>i.internal.pageSize.getHeight()-n&&(i.addPage(),l=n),Br(i,t.footerBlock,l+4,n,a)}ls(i,t);let s=i.output("arraybuffer");return new Blob([s],{type:Xl})}function ps(e,t,u,r,n,i){let a=n;return u.pageBreak?(e.addPage(),a=i):a+=8,u.title&&(a=Br(e,[{text:u.title,fontSize:12,fontStyle:"bold"}],a,i,r.font?.family??Or)),Vr(e,t,u.model,r,a+2,u.includeHeaders!==!1)}function ea(e,t){if(typeof document>"u")throw new Error("[datagrid] downloadBlob requires a browser document.");let u=URL.createObjectURL(e),r=document.createElement("a");r.href=u,r.download=t,r.style.display="none",document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(u),0)}function zr(e){return{"=":e.opEquals,"<>":e.opNotEquals,">":e.opGreater,">=":e.opGreaterOrEqual,"<":e.opLess,"<=":e.opLessOrEqual,contains:e.opContains,notcontains:e.opNotContains,startswith:e.opStartsWith,endswith:e.opEndsWith,isnull:e.opIsBlank,isnotnull:e.opIsNotBlank,in:e.opIsOneOf,between:e.opIsBetween,and:e.filterAnd.toLocaleLowerCase(),or:e.filterOr.toLocaleLowerCase(),blank:e.chartBlankCategory,listSeparator:", ",ofN:e.opValuesCount}}var ms=zr(Ht("en"));function ta(e,t,u={}){if(!e)return null;let r={...ms,...u.labels},n=u.maxListValues??3,i=m=>{let c=t.getDef(m);return c?.headerName??c?.field??m},a=(m,c)=>{if(c==null||c==="")return r.blank;let h=wt(t.getDef(m),c);return h!==null?h:c instanceof Date?c.toLocaleDateString():String(c)},l=(m,c)=>{if(Ir(m)){let g=m.nodes.map(F=>l(F,c+1)).filter(Boolean);if(g.length===0)return"";let y=g.join(` ${r[m.logic]} `);return c>0&&g.length>1?`(${y})`:y}let h=i(m.columnId),w=r[m.operator];switch(m.operator){case"isnull":case"isnotnull":return`${h} ${w}`;case"in":{let g=Array.isArray(m.value)?m.value:[m.value];return g.length>n?`${h} ${w} ${r.ofN.replace("{n}",String(g.length))}`:`${h} ${w} ${g.map(y=>a(m.columnId,y)).join(r.listSeparator)}`}case"between":{let[g,y]=Array.isArray(m.value)?m.value:[void 0,void 0];return`${h} ${w} ${a(m.columnId,g)} \u2013 ${a(m.columnId,y)}`}default:return`${h} ${w} ${a(m.columnId,m.value)}`}},s=l(e,0);return s===""?null:s}function gs(e,t,u,r,n){let i=e,a=i.findIndex(c=>n(c)===t);if(a<0)return{rows:i,moved:!1,fromIndex:-1,toIndex:-1};let l;if(u===null)l=i.length;else{let c=i.findIndex(h=>n(h)===u);if(c<0)return{rows:i,moved:!1,fromIndex:a,toIndex:-1};if(c===a)return{rows:i,moved:!1,fromIndex:a,toIndex:a};l=r==="before"?c:c+1}if(l>a&&(l-=1),l===a)return{rows:i,moved:!1,fromIndex:a,toIndex:a};let s=i.slice(),[m]=s.splice(a,1);return s.splice(l,0,m),{rows:s,moved:!0,fromIndex:a,toIndex:l}}var fs=["columnStateChanged","sortChanged","filterChanged","groupChanged"];function Ai(e){try{return globalThis[e]??null}catch{return null}}function ua(e,t){if(!t.enabled)return()=>{};let u=t.storageKey??`kanuni-datagrid-${e.gridId}`,r=t.type??"localStorage",n=t.saveDelay??500,i=!1,a=h=>{if(!(i||!h))try{e.applyViewState(h)}catch{}};if(r==="custom"){let h=null;try{h=t.customLoad?.()??null}catch{h=null}h&&typeof h.then=="function"?h.then(a,()=>{}):a(h)}else{let h=Ai(r);if(h){let w=null,g=!0;try{w=h.getItem(u)}catch{g=!1}if(g&&w)try{a(JSON.parse(w))}catch{try{h.removeItem(u)}catch{}}}}let l,s=()=>{let h=e.getViewState();if(r==="custom"){try{Promise.resolve(t.customSave?.(h)).catch(()=>{})}catch{}return}let w=Ai(r);if(w)try{w.setItem(u,JSON.stringify(h))}catch{}},m=()=>{l!==void 0&&clearTimeout(l),l=setTimeout(s,n)},c=fs.map(h=>e.events.on(h,m));return()=>{i=!0,c.forEach(h=>h()),l!==void 0&&(clearTimeout(l),l=void 0,s())}}var bi=150,wu=40;function Cs(e,t){return e.id?e.id:e.field?e.field:`col_${t}`}function It(e,t,u){let r=Math.max(e,t);return u!=null&&(r=Math.min(r,u)),r}var ws=class{defs=[];defsById=new Map;states=new Map;orderIds=[];version=0;collapsedBands=new Set;options;constructor(e,t={}){this.options=t,this.setColumns(e)}getVersion(){return this.version}setColumns(e){let t=this.defsById,u=this.states,r=new Set;this.defs=e.map((n,i)=>{let a={...this.options.defaultColumnDef,...n},l=Cs(a,i);if(r.has(l)){let s=`[datagrid] duplicate column id "${l}" \u2014 set an explicit \`id\` on one of the columns.`;this.options.debugMode?console.error(s):console.warn(s)}return r.add(l),a.id=l,a}),this.states=new Map,this.defsById=new Map,this.orderIds=[],this.defs.forEach((n,i)=>{let a=n.id;this.defsById.has(a)||this.defsById.set(a,n);let l=n.minWidth??wu,s=t.get(a),m=u.get(a),c=h=>m!==void 0&&s!==void 0&&s[h]===n[h];this.states.set(a,{id:a,width:c("width")?It(m.width,l,n.maxWidth):It(n.width??bi,l,n.maxWidth),pinned:c("pin")?m.pinned:n.pin??null,visible:c("visible")?m.visible:n.visible!==!1,order:m!==void 0?m.order:i}),this.orderIds.push(a)}),this.orderIds.sort((n,i)=>(this.states.get(n)?.order??0)-(this.states.get(i)?.order??0)),this.version++}resetColumnStates(){this.orderIds=this.defs.map(e=>e.id),this.defs.forEach((e,t)=>{let u=this.states.get(e.id);if(!u)return;let r=e.minWidth??wu;u.width=It(e.width??bi,r,e.maxWidth),u.pinned=e.pin??null,u.visible=e.visible!==!1,u.order=t}),this.version++}getDef(e){return this.defsById.get(e)}getState(e){return this.states.get(e)}getOrder(){return[...this.orderIds]}getColumnStates(){return this.orderIds.map(e=>({...this.states.get(e)}))}runtime(){let e={left:[],center:[],right:[]};for(let t of this.orderIds){let u=this.states.get(t),r=this.getDef(t);if(!u||!r||!u.visible||Ao(r,this.collapsedBands))continue;let n=u.pinned??"center";e[n==="left"?"left":n==="right"?"right":"center"].push({def:r,state:u})}return[...e.left,...e.center,...e.right]}isBandCollapsed(e){return this.collapsedBands.has(Pt(e))}setBandCollapsed(e,t){if(e.length===0)return!1;let u=Pt(e);return this.collapsedBands.has(u)===t?!1:(t?this.collapsedBands.add(u):this.collapsedBands.delete(u),this.version++,!0)}getCollapsedBands(){return[...this.collapsedBands]}setCollapsedBands(e){this.collapsedBands=new Set(e),this.version++}isBandCollapsible(e){if(e.length===0)return!1;let t=Pt(e),u=!1,r=!1;for(let n of this.orderIds){let i=this.getDef(n),a=this.states.get(n);if(!i||!a?.visible)continue;let l=Ie(i);l.length<e.length||Pt(l.slice(0,e.length))===t&&(i.bandShow==="open"?u=!0:r=!0)}return u&&r}setWidth(e,t){let u=this.states.get(e),r=this.getDef(e);!u||!r||(u.width=It(t,r.minWidth??wu,r.maxWidth),this.version++)}setPinned(e,t){let u=this.states.get(e);u&&(u.pinned=t,this.version++)}setVisible(e,t){let u=this.states.get(e);u&&(u.visible=t,this.version++)}moveColumn(e,t){let u=this.orderIds.indexOf(e);if(u===-1)return;this.orderIds.splice(u,1);let r=t?this.orderIds.indexOf(t):this.orderIds.length;this.orderIds.splice(r===-1?this.orderIds.length:r,0,e),this.orderIds.forEach((n,i)=>{let a=this.states.get(n);a&&(a.order=i)}),this.version++}applyColumnStates(e){let t=e.filter(n=>this.states.has(n.id)).slice().sort((n,i)=>n.order-i.order);for(let n of t){let i=this.getDef(n.id),a=this.states.get(n.id);!i||!a||(a.width=It(n.width,i.minWidth??wu,i.maxWidth),a.pinned=n.pinned,a.visible=n.visible)}let u=t.map(n=>n.id),r=this.orderIds.filter(n=>!u.includes(n));this.orderIds=[...u,...r],this.orderIds.forEach((n,i)=>{let a=this.states.get(n);a&&(a.order=i)}),this.version++}getCellValue(e,t){let u=this.getDef(t);if(u){if(u.valueGetter)return u.valueGetter(e);if(u.field)return e[u.field]}}getSortValue(e,t){let u=this.defsById.get(t);if(u){if(u.calculateSortValue)return u.calculateSortValue(e);if(u.valueGetter)return u.valueGetter(e);if(u.field)return e[u.field]}}getDataType(e){return this.getDef(e)?.dataType??"string"}};function ys(e,t,u){let r=e.length,n=new Uint32Array(r),i=new Uint32Array(r),a=0,l=0;for(let S=0;S<r;S++){let T=e[S];Number.isNaN(t[T])?i[l++]=T:n[a++]=T}let s=new Uint32Array(a),m=new Uint32Array(a),c=new Float64Array(1),h=new Uint32Array(c.buffer);for(let S=0;S<a;S++){let T=t[n[S]];c[0]=T===0?0:T;let N=h[0],V=h[1];V&2147483648?(N=~N>>>0,V=~V>>>0):V=(V^2147483648)>>>0,u&&(N=~N>>>0,V=~V>>>0),s[S]=N,m[S]=V}let w=new Uint32Array(a);for(let S=0;S<a;S++)w[S]=S;let g=new Uint32Array(a),y=new Uint32Array(256);for(let S=0;S<8;S++){let T=S>=4,N=(S&3)*8,V=T?m:s;y.fill(0);for(let W=0;W<a;W++)y[V[w[W]]>>>N&255]++;if(y[V[w[0]]>>>N&255]===a)continue;let K=0;for(let W=0;W<256;W++){let J=y[W];y[W]=K,K+=J}for(let W=0;W<a;W++){let J=w[W];g[y[V[J]>>>N&255]++]=J}let Z=w;w=g,g=Z}let F=new Uint32Array(r);for(let S=0;S<a;S++)F[S]=n[w[S]];for(let S=0;S<l;S++)F[a+S]=i[S];return F}var vi=new Map;function Es(e){let t=vi.get(e);return t||(t=new Intl.Collator(e,{numeric:!0,sensitivity:"base"}),vi.set(e,t)),t}function xi(e){return e==null||typeof e=="number"&&Number.isNaN(e)}function As(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e instanceof Date)return e.getTime();let t=Number(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function bs(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;let t=Date.parse(String(e));return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function vs(e,t){for(let u of t)if(e.getDef(u.columnId)?.comparator)return!0;return!1}function xs(e,t,u,r){let n=e.length,i=r.columnId,a=r.direction==="desc"?-1:1,l=u.getDataType(i),s=u.getDef(i)?.comparator;if(s){let h=new Array(n),w=new Array(n);for(let g=0;g<n;g++){let y=t[e[g]];h[g]=u.getSortValue(y,i),w[g]=y}return{dir:a,numeric:null,strings:null,values:h,valueRows:w,comparator:s}}if(l==="string"||l==="lookup"){let h=new Array(n);for(let w=0;w<n;w++){let g=u.getSortValue(t[e[w]],i);h[w]=xi(g)?null:String(g)}return{dir:a,numeric:null,strings:h,values:null,valueRows:null,comparator:null}}let m=new Float64Array(n),c=l==="date"?bs:As;for(let h=0;h<n;h++){let w=u.getSortValue(t[e[h]],i);m[h]=xi(w)?Number.NaN:c(w)}return{dir:a,numeric:m,strings:null,values:null,valueRows:null,comparator:null}}function Ds(e,t){let u=e.length,r=[],n=new Map,i=new Int32Array(u);for(let s=0;s<u;s++){let m=e[s];if(m===null){i[s]=-1;continue}let c=n.get(m);c===void 0&&(c=r.length,r.push(m),n.set(m,c)),i[s]=c}let a=_o(r,t),l=new Float64Array(u);for(let s=0;s<u;s++)l[s]=i[s]===-1?Number.NaN:a[i[s]];return l}function Fs(e,t,u,r,n={}){if(r.length===0)return e.slice();let i=Es(n.locale??"en"),a=r.map(h=>xs(e,t,u,h)),l=a.length,s=new Array(e.length),m=!0;for(let h=0;h<e.length;h++)s[h]=h,h>0&&e[h]<e[h-1]&&(m=!1);if(!a.some(h=>h.comparator!==null)&&m&&e.length>=5e4){let h=a.map(y=>y.numeric?y.numeric:Ds(y.strings,i)),w=Uint32Array.from(s);for(let y=l-1;y>=0;y--)w=ys(w,h[y],a[y].dir===-1);let g=new Uint32Array(e.length);for(let y=0;y<w.length;y++)g[y]=e[w[y]];return g}s.sort((h,w)=>{for(let g=0;g<l;g++){let y=a[g];if(y.comparator){let F=y.values,S=y.valueRows,T=y.comparator(F[h],F[w],S[h],S[w],y.dir===-1);if(T!==0)return T*y.dir}else if(y.numeric){let F=y.numeric[h],S=y.numeric[w],T=Number.isNaN(F),N=Number.isNaN(S);if(T||N){if(T&&N)continue;return T?1:-1}if(F!==S)return(F<S?-1:1)*y.dir}else{let F=y.strings[h],S=y.strings[w];if(F===null||S===null){if(F===null&&S===null)continue;return F===null?1:-1}let T=i.compare(F,S);if(T!==0)return T*y.dir}}return e[h]-e[w]});let c=new Uint32Array(e.length);for(let h=0;h<s.length;h++)c[h]=e[s[h]];return c}var Ss=class{mode="client";rows;keyGetter;locale;nodeCache;constructor(e,t){this.rows=e,this.keyGetter=t.keyGetter,this.locale=t.locale??"en",this.nodeCache=t.nodeCache??new Zi}getTotalCount(){return this.rows.length}setData(e){this.rows=e,this.nodeCache.invalidate()}patchData(e,t,u){this.rows=e,this.nodeCache.rebase(e,t)}getSourceRows(){return this.rows}compute(e,t){let u=this.rows.length,r=new Uint32Array(u);for(let a=0;a<u;a++)r[a]=a;let n=Yo(r,this.rows,e,t.filter,t.searchText,t.externalFilter),i=Fs(n,this.rows,e,t.sort,{locale:this.locale});return{nodes:this.nodeCache.project(i,this.rows,this.keyGetter),visibleCount:i.length,totalCount:u}}async getRows(e,t){return this.compute(e,t)}},ra='var De=/[\\u0130\\u0131]/,Fe=/[\\u0130\\u0131]/g;function G(e){return De.test(e)?e.replace(Fe,"i").toLowerCase():e.toLowerCase()}var M=-1;var ue=new WeakMap;function Re(e){let t=ue.get(e);if(t!==void 0)return t;let n=Me(e);return ue.set(e,n),n}function Me(e){let t=e.resolvedOptions();if(t.sensitivity!=="base"||t.numeric!==true||t.ignorePunctuation||t.usage!=="sort"||t.collation!=="default")return false;let n=[];for(let r=32;r<=126;r++)n.push(String.fromCharCode(r));n.sort(e.compare);for(let r=1;r<n.length;r++)if(e.compare(n[r-1],n[r])===0&&n[r-1].toLowerCase()!==n[r].toLowerCase())return false;for(let r of n)if(e.compare(r,"")===0)return false;return !(e.compare("01","1")!==0||e.compare("0","00")!==0||e.compare("a09z","a9z")!==0||e.compare("9","10")>=0)}function le(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<32||n>126)return false}return true}function Ue(e,t){let n=0,r=0,o=e.length,l=t.length;for(;n<o&&r<l;){let s=e.charCodeAt(n),f=t.charCodeAt(r),a=s>=48&&s<=57,d=f>=48&&f<=57;if(a!==d)return true;if(a){for(;n<o&&e.charCodeAt(n)===48;)n++;for(;r<l&&t.charCodeAt(r)===48;)r++;let b=n,g=r;for(;n<o;){let k=e.charCodeAt(n);if(k<48||k>57)break;n++;}for(;r<l;){let k=t.charCodeAt(r);if(k<48||k>57)break;r++;}let N=n-b;if(N!==r-g)return true;for(let k=0;k<N;k++)if(e.charCodeAt(b+k)!==t.charCodeAt(g+k))return true}else {if(s>=65&&s<=90&&(s+=32),f>=65&&f<=90&&(f+=32),s!==f)return true;n++,r++;}}return n!==o||r!==l}function ce(e,t){let n=e.length,r=new Array(n);for(let b=0;b<n;b++)r[b]=b;r.sort((b,g)=>t.compare(e[b],e[g]));let o=new Int32Array(n);if(n===0)return o;let s=Re(t)?new Uint8Array(n):null,f=r[0],a=s?le(e[f])?1:2:0;s&&(s[f]=a);let d=0;o[f]=0;for(let b=1;b<n;b++){let g=r[b],N=e[f],k=e[g],m=0;s&&(m=s[g],m===0&&(m=le(k)?1:2,s[g]=m)),(a===1&&m===1&&Ue(N,k)||t.compare(N,k)!==0)&&d++,o[g]=d,f=g,a=m;}return o}function de(e,t,n){let r=e.length,o=new Uint32Array(r),l=new Uint32Array(r),s=0,f=0;for(let i=0;i<r;i++){let C=e[i];Number.isNaN(t[C])?l[f++]=C:o[s++]=C;}let a=new Uint32Array(s),d=new Uint32Array(s),b=new Float64Array(1),g=new Uint32Array(b.buffer);for(let i=0;i<s;i++){let C=t[o[i]];b[0]=C===0?0:C;let h=g[0],p=g[1];p&2147483648?(h=~h>>>0,p=~p>>>0):p=(p^2147483648)>>>0,n&&(h=~h>>>0,p=~p>>>0),a[i]=h,d[i]=p;}let N=new Uint32Array(s);for(let i=0;i<s;i++)N[i]=i;let k=new Uint32Array(s),m=new Uint32Array(256);for(let i=0;i<8;i++){let C=i>=4,h=(i&3)*8,p=C?d:a;m.fill(0);for(let T=0;T<s;T++)m[p[N[T]]>>>h&255]++;if(m[p[N[0]]>>>h&255]===s)continue;let w=0;for(let T=0;T<256;T++){let E=m[T];m[T]=w,w+=E;}for(let T=0;T<s;T++){let E=N[T];k[m[p[E]>>>h&255]++]=E;}let F=N;N=k,k=F;}let I=new Uint32Array(r);for(let i=0;i<s;i++)I[i]=o[N[i]];for(let i=0;i<f;i++)I[s+i]=l[i];return I}function fe(e){return e.nodes!==void 0}var me=new Map;function ve(e){let t=me.get(e);return t||(t=new Intl.Collator(e,{numeric:true,sensitivity:"base"}),me.set(e,t)),t}var ge=new WeakMap;function Oe(e,t,n){let r=ge.get(e);r||(r=new Map,ge.set(e,r));let o=r.get(n);return (!o||o.length!==t.length)&&(o=ce(t,ve(n)),r.set(n,o)),o}var be=new WeakMap;function he(e,t){let n=be.get(e);if(!n)n=t.map(G),be.set(e,n);else for(let r=n.length;r<t.length;r++)n.push(G(t[r]));return n}function U(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e==null)return Number.NaN;let t=Number(e);if(!Number.isNaN(t))return t;let n=Date.parse(String(e));return Number.isNaN(n)?Number.NaN:n}function _e(e,t){let n=e.dictionary,r=new Uint8Array(n.length),o=false,l=t.operator;if(l==="isnull")return {mask:r,nilPasses:true};if(l==="isnotnull")return r.fill(1),{mask:r,nilPasses:false};let s=he(e,n),f=t.value==null?"":G(String(t.value));switch(l){case "=":case "<>":{let a=t.value===null||t.value===void 0;for(let d=0;d<n.length;d++){let b=a?false:Le(n[d],t.value);r[d]=(l==="="?b:!b)?1:0;}o=l==="="?a:!a;break}case "contains":for(let a=0;a<n.length;a++)r[a]=s[a].includes(f)?1:0;break;case "notcontains":for(let a=0;a<n.length;a++)r[a]=s[a].includes(f)?0:1;o=true,f===""&&(o=false);break;case "startswith":for(let a=0;a<n.length;a++)r[a]=s[a].startsWith(f)?1:0;break;case "endswith":for(let a=0;a<n.length;a++)r[a]=s[a].endsWith(f)?1:0;break;case "in":{let a=Ve(t.value);for(let d=0;d<n.length;d++)r[d]=a.has($(n[d]))?1:0;break}case ">":case ">=":case "<":case "<=":{for(let a=0;a<n.length;a++){let d=X(n[a],t.value);r[a]=l===">"&&d>0||l===">="&&d>=0||l==="<"&&d<0||l==="<="&&d<=0?1:0;}break}case "between":{if(!Array.isArray(t.value)||t.value.length<2)break;let[a,d]=t.value;for(let b=0;b<n.length;b++)r[b]=X(n[b],a)>=0&&X(n[b],d)<=0?1:0;break}default:r.fill(1),o=true;}return {mask:r,nilPasses:o}}function $(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;let t=Number(e);return Number.isNaN(t)?String(e).toLowerCase():t}function Le(e,t){return $(e)===$(t)}function Ve(e){let t=new Set,n=Array.isArray(e)?e:[];for(let r of n){if(r==null)continue;let o=$(r);typeof o=="number"&&Number.isNaN(o)||t.add(o);}return t}function qe(e){let t=new Set,n=Array.isArray(e)?e:[];for(let r of n){let o=U(r);Number.isNaN(o)||t.add(o);}return t}var j=new WeakMap;function Ge(e){let t=j.get(e);return t||(t=qe(e.value),j.set(e,t)),t}function X(e,t){let n=U(e),r=U(t);if(!Number.isNaN(n)&&!Number.isNaN(r))return n-r;let o=String(e).toLowerCase(),l=String(t).toLowerCase();return o<l?-1:o>l?1:0}function Pe(e,t){if(t.operator==="in")return !Number.isNaN(e)&&Ge(t).has(e);let n=Number.isNaN(e);switch(t.operator){case "isnull":return n;case "isnotnull":return !n;case "=":return !n&&e===U(t.value);case "<>":return n||e!==U(t.value);case ">":return !n&&e>U(t.value);case ">=":return !n&&e>=U(t.value);case "<":return !n&&e<U(t.value);case "<=":return !n&&e<=U(t.value);case "between":return n||!Array.isArray(t.value)||t.value.length<2?false:e>=U(t.value[0])&&e<=U(t.value[1]);case "contains":case "notcontains":case "startswith":case "endswith":{let r=n?"":String(e),o=t.value==null?"":G(String(t.value)),l=r.toLowerCase();return t.operator==="contains"?l.includes(o):t.operator==="notcontains"?!l.includes(o):t.operator==="startswith"?l.startsWith(o):l.endsWith(o)}default:return true}}function Q(e,t,n){if(fe(e))return e.nodes.length===0?true:e.logic==="or"?e.nodes.some(f=>Q(f,t,n)):e.nodes.every(f=>Q(f,t,n));let r=t.columns[e.columnId];if(!r)return true;if(r.kind==="numeric")return Pe(r.values[n],e);let o=J.get(e),l=o??_e(r,e);o||J.set(e,l);let s=r.codes[n];return s===M?l.nilPasses:l.mask[s]===1}var J=new WeakMap,Ke=65535;function Z(e,t){J=new WeakMap,j=new WeakMap;let{rowCount:n}=e,r=t.locale??"en",o=G(t.searchText.trim()),l=!!t.filter,s=o.length>0,f=[];if(s){let m=/^[0-9.+\\-einftya]*$/.test(o),I=(C,h,p)=>{let w=he(h,C),F=new Uint8Array(C.length),T=false;for(let E=0;E<w.length;E++)(w[E].includes(o)||p!==void 0&&p.has(C[E]))&&(F[E]=1,T=true);return T?F:null},i=new Map;if(t.searchLabelHits)for(let[C,h]of Object.entries(t.searchLabelHits))i.set(C,new Set(h));for(let C of t.searchColumns){let h=e.columns[C];if(!h)continue;let p=i.get(C);if(h.kind==="text"){let w=I(h.dictionary,h,p);w&&f.push({codes:h.codes,mask:w,values:null,numberHits:null,scanText:true});}else if(h.searchDictionary&&h.searchCodes){let w=I(h.searchDictionary,h,p);w&&f.push({codes:h.searchCodes,mask:w,values:null,numberHits:null,scanText:true});}else {let w=null;if(p)for(let F of p){let T=Number(F);Number.isNaN(T)||(w??=new Set).add(T);}(m||w)&&f.push({codes:null,mask:null,values:h.values,numberHits:w,scanText:m});}}}let a=t.onProgress,d=t.isCancelled,b={order:new Uint32Array(0),cancelled:true},g;if(!l&&!s){g=new Uint32Array(n);for(let m=0;m<n;m++)g[m]=m;}else {let m=new Uint32Array(n),I=0;for(let i=0;i<n;i++){if((i&Ke)===0){if(d?.())return b;a?.("filtering",n===0?1:i/n);}if(!(l&&!Q(t.filter,e,i))){if(s){let C=false;for(let h of f)if(h.codes&&h.mask){let p=h.codes[i];if(p!==M&&h.mask[p]===1){C=true;break}}else if(h.values){let p=h.values[i];if(!Number.isNaN(p)){if(h.numberHits!==null&&h.numberHits.has(p)){C=true;break}if(h.scanText&&String(p).toLowerCase().includes(o)){C=true;break}}}if(!C)continue}m[I++]=i;}}g=m.subarray(0,I),a?.("filtering",1);}if(t.sort.length===0)return {order:g.slice()};if(d?.())return b;let N=[];for(let m of t.sort){let I=e.columns[m.columnId];if(!I)continue;let i=m.direction==="desc"?-1:1;I.kind==="numeric"?N.push({dir:i,numeric:I.values,codes:null,ranks:null}):N.push({dir:i,numeric:null,codes:I.codes,ranks:Oe(I,I.dictionary,r)});}if(N.length===0)return {order:g.slice()};if(g.length>=5e4){let m=[];for(let i of N){if(i.numeric){m.push(i.numeric);continue}let C=i.codes,h=i.ranks,p=new Float64Array(n);for(let w=0;w<n;w++){let F=C[w];p[w]=F===M?Number.NaN:h[F];}m.push(p);}let I=g;for(let i=N.length-1;i>=0;i--){if(d?.())return b;a?.("sorting",(N.length-1-i)/N.length),I=de(I,m[i],N[i].dir===-1);}return a?.("sorting",1),{order:I===g?g.slice():I}}a?.("sorting",null);let k=Array.from(g);return k.sort((m,I)=>{for(let i of N)if(i.numeric){let C=i.numeric[m],h=i.numeric[I],p=Number.isNaN(C),w=Number.isNaN(h);if(p||w){if(p&&w)continue;return p?1:-1}if(C!==h)return (C<h?-1:1)*i.dir}else {let C=i.codes[m],h=i.codes[I];if(C===M||h===M){if(C===M&&h===M)continue;return C===M?1:-1}let p=i.ranks[C],w=i.ranks[h];if(p!==w)return (p<w?-1:1)*i.dir}return m-I}),{order:Uint32Array.from(k)}}var We=30,ye="Other",ze=1e4;var _=864e5,He=60,$e=20,Y=2e3,ee=["day","week","month","quarter","year"],Ce={day:_,week:7*_,month:30.44*_,quarter:91.31*_,year:365.25*_};function pe(e,t){let n=new Date(e),r=n.getUTCFullYear(),o=n.getUTCMonth();switch(t){case "day":return Date.UTC(r,o,n.getUTCDate());case "week":{let l=Date.UTC(r,o,n.getUTCDate()),s=(new Date(l).getUTCDay()+6)%7;return l-s*_}case "month":return Date.UTC(r,o,1);case "quarter":return Date.UTC(r,Math.floor(o/3)*3,1);default:return Date.UTC(r,0,1)}}function Ne(e,t){let n=new Date(e),r=n.getUTCFullYear(),o=n.getUTCMonth();switch(t){case "day":return e+_;case "week":return e+7*_;case "month":return Date.UTC(r,o+1,1);case "quarter":return Date.UTC(r,o+3,1);default:return Date.UTC(r+1,0,1)}}var te=e=>e<10?`0${e}`:String(e);function Ye(e,t){let n=new Date(e),r=n.getUTCFullYear();switch(t){case "year":return String(r);case "quarter":return `${r}-Q${Math.floor(n.getUTCMonth()/3)+1}`;case "month":return `${r}-${te(n.getUTCMonth()+1)}`;default:return `${r}-${te(n.getUTCMonth()+1)}-${te(n.getUTCDate())}`}}function Xe(e){if(!(e>0)||!Number.isFinite(e))return 1;let n=10**Math.floor(Math.log10(e)),r=e/n;return (r<=1?1:r<=2?2:r<=5?5:10)*n}function je(e,t,n){let r=Number.isFinite(t)&&Number.isFinite(n)?Math.max(0,n-t):0;if(e.kind==="date"){let a=e.unit??"auto",d,b=false;if(a==="auto")d=ee.find(g=>r/Ce[g]+1<=He)??"year";else for(d=a;r/Ce[d]+1>Y;){let g=ee[ee.indexOf(d)+1];if(!g)break;d=g,b=true;}return {info:{kind:"date",unit:d,adjusted:b},keyOf:g=>Number.isFinite(g)?pe(g,d):Number.NaN,endOf:g=>Ne(g,d),labelOf:g=>Ye(g,d),keys:(g,N)=>{let k=[];if(!Number.isFinite(g)||!Number.isFinite(N))return k;for(let m=pe(g,d);m<=N&&k.length<Y;m=Ne(m,d))k.push(m);return k}}}let o=e.size&&e.size>0?e.size:Xe(r/Math.max(1,e.bins??$e));(!(o>0)||!Number.isFinite(o))&&(o=1);let l=false;for(;r/o+1>Y;)o*=2,l=true;let s=o;return {info:{kind:"number",size:s,adjusted:l},keyOf:a=>Number.isFinite(a)?Math.floor(a/s)*s:Number.NaN,endOf:a=>a+s,labelOf:a=>{let d=b=>String(Number(b.toPrecision(12)));return `${d(a)} \\u2013 ${d(a+s)}`},keys:(a,d)=>{let b=[];if(!Number.isFinite(a)||!Number.isFinite(d))return b;let g=Math.floor(a/s)*s;for(let N=g;N<=d&&b.length<Y;N+=s)b.push(N);return b}}}function Qe(e,t){if(e==null)return Number.NaN;if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(t==="number")return Number(e);let n=Number(e);return Number.isNaN(n)?Date.parse(String(e)):n}function Je(e,t){if(!e)return {};let n=new Float64Array(t.length),r=new Float64Array(t.length);for(let o=0;o<t.length;o++){let l=t[o].start;n[o]=l,r[o]=Number.isNaN(l)?Number.NaN:e.endOf(l);}return {bucket:e.info,bucketStarts:n,bucketEnds:r}}var z=-1;function ke(e,t,n,r){let o=Math.max(1,n.maxCategories??We),l=n.otherBucket!==false,s=n.series.length,f=e[n.categoryColumnId],a=n.series.map(u=>e[u.columnId]),d=n.series.map(u=>u.aggregate==="countDistinct"),b=new Map,g=null,N=0,k=false,m=(u,c=Number.NaN)=>({label:u,sum:new Float64Array(s),numericCount:new Float64Array(s),count:new Float64Array(s),min:new Float64Array(s).fill(Number.POSITIVE_INFINITY),max:new Float64Array(s).fill(Number.NEGATIVE_INFINITY),distinct:d.map(y=>y?new Set:null),seq:N++,start:c}),I=(u,c)=>{if(!f)return Number.NaN;if(f.kind==="numeric")return f.values[u];let y=f.codes[u];return y===z?Number.NaN:Qe(f.dictionary[y],c)},i=n.categoryBucket,C=null,h=Number.POSITIVE_INFINITY,p=Number.NEGATIVE_INFINITY;if(i){for(let u=0;u<t.length;u++){let c=I(t[u],i.kind);Number.isFinite(c)&&(c<h&&(h=c),c>p&&(p=c));}C=je(i,h,p);}let w=0,F=1,T=2,E=new Uint8Array(s),re=new Array(s).fill(null),oe=new Array(s).fill(null),ae=new Array(s).fill(null);for(let u=0;u<s;u++){let c=n.series[u].aggregate;E[u]=c==="count"?w:d[u]?F:T;let y=a[u];if(!y)continue;if(y.kind==="numeric"){re[u]=y.values;continue}oe[u]=y.codes;let x=y.dictionary,R=new Float64Array(x.length);for(let S=0;S<x.length;S++){let A=x[S],W=A===""?Number.NaN:Number(A);R[S]=Number.isFinite(W)?W:Number.NaN;}ae[u]=R;}for(let u=0;u<t.length;u++){let c=t[u],y,x,R=Number.NaN;if(C&&i)R=C.keyOf(I(c,i.kind)),y=Number.isNaN(R)?"":R,x=Number.isNaN(R)?"":C.labelOf(R);else if(!f)y=x="";else if(f.kind==="text"){let A=f.codes[c];y=x=A===z?"":f.dictionary[A];}else {let A=f.values[c];y=x=Number.isNaN(A)?"":String(A);}let S=b.get(y);S||(b.size>=ze?(k=true,g??=m(n.otherLabel??ye),S=g):(S=m(x,R),b.set(y,S)));for(let A=0;A<s;A++){let W=E[A],L=re[A],V=oe[A];if(W===w){(L!==null?!Number.isNaN(L[c]):V!==null&&V[c]!==z)&&S.count[A]++;continue}if(W===F){let q=S.distinct[A];if(q)if(V!==null){let ie=V[c];ie!==z&&q.add(ie);}else L!==null&&!Number.isNaN(L[c])&&q.add(L[c]);continue}let O;if(L!==null)O=L[c];else if(V!==null){let q=V[c];O=q===z?Number.NaN:ae[A][q];}else O=Number.NaN;Number.isNaN(O)||(S.numericCount[A]++,S.sum[A]+=O,O<S.min[A]&&(S.min[A]=O),O>S.max[A]&&(S.max[A]=O));}}let Se=(u,c)=>{for(let y=0;y<s;y++){u.sum[y]+=c.sum[y],u.numericCount[y]+=c.numericCount[y],u.count[y]+=c.count[y],c.min[y]<u.min[y]&&(u.min[y]=c.min[y]),c.max[y]>u.max[y]&&(u.max[y]=c.max[y]);let x=u.distinct[y],R=c.distinct[y];if(x&&R)for(let S of R)x.add(S);}},se=(u,c)=>{switch(n.series[c].aggregate){case "count":return u.count[c];case "countDistinct":return u.distinct[c]?.size??0;case "sum":return u.numericCount[c]>0?u.sum[c]:Number.NaN;case "avg":return u.numericCount[c]>0?u.sum[c]/u.numericCount[c]:Number.NaN;case "min":return u.numericCount[c]>0?u.min[c]:Number.NaN;case "max":return u.numericCount[c]>0?u.max[c]:Number.NaN;default:return Number.NaN}},K=[...b.values()],Ee=K.length+(g?1:0),H=u=>{if(s===0)return Number.NEGATIVE_INFINITY;let c=se(u,0);return Number.isNaN(c)?Number.NEGATIVE_INFINITY:c},v;if(C){v=C.keys(h,p).map(c=>b.get(c)??m(C.labelOf(c),c));let u=b.get("");u&&v.push(u);}else {let u=K;if(K.length>o){let c=[...K].sort((y,x)=>H(x)-H(y));if(u=c.slice(0,o),l){g??=m(n.otherLabel??ye);for(let y of c.slice(o))Se(g,y);}}switch(n.categoryOrder??"value-desc"){case "category-asc":u=[...u].sort((c,y)=>c.label.localeCompare(y.label));break;case "first-seen":u=[...u].sort((c,y)=>c.seq-y.seq);break;default:u=[...u].sort((c,y)=>H(y)-H(c));}v=g?[...u,g]:u;}return {categories:v.map(u=>u.label),series:n.series.map((u,c)=>{let y=new Float64Array(v.length);for(let x=0;x<v.length;x++)y[x]=se(v[x],c);return {label:u.label??r.series[c]??u.columnId,columnId:u.columnId,aggregate:u.aggregate,values:y}}),truncated:C?false:K.length>o||k,otherIndex:C?null:g?v.length-1:null,rowCount:t.length,categoryCount:C?v.length:Ee,rankingExact:!k,...Je(C,v)}}function we(){let e=new WeakMap;return {get(t){let n=e.get(t);if(n===void 0){n=new Map;let r=t.kind==="text"?t.dictionary:t.searchDictionary??[];for(let o=0;o<r.length;o++)n.set(r[o],o);e.set(t,n);}return n}}}function Ie(e,t,n){let r=n.get(e);return r===void 0&&(r=t.length,t.push(e),n.set(e,r)),r}function Ae(e,t,n){for(let r of t){let o=e[r.columnId];if(!o)continue;let{indices:l}=r;if(o.kind==="numeric"){let s=r.numbers??[];for(let f=0;f<l.length;f++)o.values[l[f]]=s[f];if(o.searchCodes&&o.searchDictionary&&r.labels){let f=n.get(o);for(let a=0;a<l.length;a++){let d=r.labels[a];o.searchCodes[l[a]]=d===null?M:Ie(d,o.searchDictionary,f);}}}else {let s=r.labels??[],f=n.get(o);for(let a=0;a<l.length;a++){let d=s[a];o.codes[l[a]]=d===null?M:Ie(d,o.dictionary,f);}}}}var Te=self,P=new Map;function B(e,t){Te.postMessage(e,t??[]);}function xe(e,t){for(let n of e)if(n.kind==="numeric"){let r={kind:"numeric",values:new Float64Array(n.buffer)};n.searchBuffer&&n.searchDictionary&&(r.searchCodes=new Int32Array(n.searchBuffer),r.searchDictionary=n.searchDictionary),t[n.columnId]=r;}else t[n.columnId]={kind:"text",codes:new Int32Array(n.buffer),dictionary:n.dictionary??[]};}function Ze(e){let t={};xe(e.columns,t),P.set(e.gridId,{dataVersion:e.dataVersion,table:{rowCount:e.rowCount,columns:t}}),B({action:"ready",gridId:e.gridId,dataVersion:e.dataVersion});}function et(e){let t=P.get(e.gridId);!t||t.dataVersion!==e.dataVersion||(xe(e.columns,t.table.columns),B({action:"ready",gridId:e.gridId,dataVersion:e.dataVersion}));}var D=new Set,ne=(e,t)=>`${e}:${t}`;function tt(e){let t=P.get(e.gridId);if(!t||t.dataVersion!==e.dataVersion)return;let n=ne(e.gridId,e.requestId),r=`${e.gridId}:*`,o=()=>D.has(n)||D.has(r);if(o()){D.delete(n),B({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}try{let{order:l,cancelled:s}=Z(t.table,{sort:e.sort,filter:e.filter,searchText:e.searchText,searchColumns:e.searchColumns,searchLabelHits:e.searchLabelHits,locale:e.locale,onProgress:(f,a)=>B({action:"progress",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,phase:f,fraction:a}),isCancelled:o});if(s){D.delete(n),B({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}B({action:"result",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,order:l.buffer,visibleCount:l.length},[l.buffer]),D.delete(n);}catch(l){B({action:"error",gridId:e.gridId,requestId:e.requestId,message:l instanceof Error?l.message:String(l)});}}function nt(e){let t=P.get(e.gridId);if(!t||t.dataVersion!==e.dataVersion)return;let n=ne(e.gridId,e.requestId),r=`${e.gridId}:*`,o=()=>D.has(n)||D.has(r);if(o()){D.delete(n),B({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}try{let{order:l,cancelled:s}=Z(t.table,{sort:[],filter:e.filter,searchText:e.searchText,searchColumns:e.searchColumns,searchLabelHits:e.searchLabelHits,locale:e.locale,isCancelled:o});if(s){D.delete(n),B({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}let f={categoryColumnId:e.categoryColumnId,series:e.series,maxCategories:e.maxCategories,otherBucket:e.otherBucket,categoryOrder:e.categoryOrder,categoryBucket:e.categoryBucket,otherLabel:e.otherLabel},a=ke(t.table.columns,l,f,{series:e.series.map(m=>m.label??m.columnId)}),d=a.categories.length,b=new Float64Array(a.series.length*d);for(let m=0;m<a.series.length;m++)b.set(a.series[m].values,m*d);let g=a.bucketStarts,N=a.bucketEnds,k=[b.buffer];g&&N&&k.push(g.buffer,N.buffer),B({action:"aggregated",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,categories:a.categories,values:b.buffer,seriesLabels:a.series.map(m=>m.label),truncated:a.truncated,otherIndex:a.otherIndex,rowCount:a.rowCount,categoryCount:a.categoryCount,rankingExact:a.rankingExact,bucket:a.bucket,bucketStarts:g?.buffer,bucketEnds:N?.buffer},k),D.delete(n);}catch(l){B({action:"error",gridId:e.gridId,requestId:e.requestId,message:l instanceof Error?l.message:String(l)});}}var rt=we();function ot(e){let t=P.get(e.gridId);!t||t.dataVersion!==e.fromVersion||(Ae(t.table.columns,e.patches,rt),t.dataVersion=e.toVersion);}Te.onmessage=e=>{let t=e.data;switch(t.action){case "init":Ze(t);break;case "addColumns":et(t);break;case "patchRows":ot(t);break;case "compute":tt(t);break;case "aggregate":nt(t);break;case "cancel":D.add(t.requestId===void 0?`${t.gridId}:*`:ne(t.gridId,t.requestId));break;case "dispose":P.delete(t.gridId);for(let n of D)n.startsWith(`${t.gridId}:`)&&D.delete(n);break}};',yu=null;function Bs(){return ra.length>0}function ks(){if(yu)return yu;if(!Bs())throw new Error("[datagrid] this build carries no embedded worker (the build step that inlines it did not run). Pass `worker={{ url }}` to point at a copy of datagrid.worker.js instead.");if(typeof Blob>"u"||typeof URL?.createObjectURL!="function")throw new Error("[datagrid] Blob URLs are unavailable, so the embedded worker cannot start.");return yu=URL.createObjectURL(new Blob([ra],{type:"text/javascript"})),yu}var Rs=2e4,Di=!1;function Ns(e,t){typeof process<"u"&&process.env&&!t||Di&&!t||(Di=!0,console.warn(`[datagrid] the Web Worker could not be started, so filtering and sorting are running on the main thread. The grid still works \u2014 it is just slower on large data.
|
|
3
|
+
`,n=[];t.includeHeaders!==!1&&n.push(e.columns.map(l=>Ci(l.header,u)).join(u));let i=e.rows.length;for(let l=0;l<i;l++){if(t.signal?.aborted)throw new lt;let s=e.rows[l];n.push(s.cells.map(m=>Ci(m.text,u)).join(u)),(l+1)%5e3===0&&(t.onProgress?.((l+1)/i),await new Promise(m=>setTimeout(m,0)))}t.onProgress?.(1);let a=n.join(r);return t.bom===!1?a:Hl+a}async function $l(e,t={}){let u=await Ul(e,t);return new Blob([u],{type:"text/csv;charset=utf-8;"})}var ql="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",wi="FFF1F5F9",_l="FFFAFAFA",yi="FFE2E8F0";async function jl(){let e;try{e=await import("exceljs")}catch{throw new Error('[datagrid] Excel export needs the "exceljs" package. Install it with: npm i exceljs')}let t=e,u=t.Workbook?t:t.default;if(!u?.Workbook)throw new Error('[datagrid] Excel export needs the "exceljs" package, and what loaded exposes no Workbook \u2014 it is either not installed (npm i exceljs) or a version this writer does not understand.');return u}function Qi(e,t,u){e.columns=t.columns.map(r=>({key:r.id,width:r.width,style:u?{alignment:{horizontal:r.align},...r.numFmt?{numFmt:r.numFmt}:{}}:void 0}))}function Yl(e){let t=e,u="";for(;t>0;){let r=(t-1)%26;u=String.fromCharCode(65+r)+u,t=Math.floor((t-1)/26)}return u||"A"}function Xi(e,t){if(t&&(t.value!==void 0&&(e.value=t.value),t.font&&(e.font={...e.font,...t.font,...t.font.color?{color:{argb:t.font.color}}:{}}),t.fill&&(e.fill={type:"pattern",pattern:"solid",fgColor:{argb:t.fill}}),t.numFmt&&(e.numFmt=t.numFmt),t.alignment&&(e.alignment={...e.alignment,...t.alignment}),t.border)){let u={style:"thin",color:{argb:t.border}};e.border={top:u,left:u,bottom:u,right:u}}}function Gt(e,t,u,r,n){let i=t.customizeCell;i&&e.eachCell((a,l)=>{let s=r?.columns[l-1],m=i({kind:u,columnId:s?.id??null,value:a.value,text:a.value==null?"":String(a.value),rowNumber:e.number,colNumber:l,rowIndex:n});Xi(a,m)})}function Bu(e,t,u,r){if(t?.length)for(let n of t){let i=e.addRow(n.cells);n.height&&(i.height=n.height),n.style&&i.eachCell(a=>Xi(a,n.style)),n.merge&&u>1&&e.mergeCells(`A${i.number}:${Yl(u)}${i.number}`),Gt(i,r,"band",null,-1)}}async function Ei(e,t,u,r,n){let i=null;if(r&&t.columns.length>0){let h=e.addRow(t.columns.map(w=>w.header));h.font={bold:!0},h.fill={type:"pattern",pattern:"solid",fgColor:{argb:wi}},n&&(h.alignment={horizontal:"left",vertical:"middle"},h.border={bottom:{style:"thin",color:{argb:yi}}}),Gt(h,u,"header",t,-1),i=h.number}let a=t.rows.length,l=i===null?0:i+1,s=i??0,m=0,c=-1;for(let h=0;h<a;h++){if(u.signal?.aborted)throw new lt;let w=t.rows[h],g=w.cells.map(F=>u.raw||typeof F.value=="number"||F.value instanceof Date?F.value:F.text),y=e.addRow(g);h===0&&(l=y.number),s=y.number,w.kind==="group"?(c=w.level,y.font={bold:!0},y.getCell(1).alignment={indent:w.level,horizontal:"left"},n&&(y.fill={type:"pattern",pattern:"solid",fgColor:{argb:wi}},y.outlineLevel=w.level),m=0,Gt(y,u,"group",t,h)):(n&&(c>=0&&(y.outlineLevel=c+1),m%2===1&&(y.fill={type:"pattern",pattern:"solid",fgColor:{argb:_l}})),m++,Gt(y,u,"data",t,h)),(h+1)%5e3===0&&(u.onProgress?.((h+1)/a),await new Promise(F=>setTimeout(F,0)))}if(n&&u.totalsRow!==!1&&t.totals){let h=e.addRow(t.totals.map(w=>w==null?"":typeof w.value=="number"?w.value:w.text));h.font={bold:!0},h.border={top:{style:"double",color:{argb:yi}}},Gt(h,u,"totals",t,-1),s=h.number}return{headerRow:i,firstDataRow:l,lastRow:s}}function Zl(e,t,u){if(u?.length)for(let r of u){let n=e.addImage({...typeof r.data=="string"?{base64:r.data}:{buffer:r.data},extension:r.extension}),i=r.position??{col:0,row:0,width:160,height:48};t.addImage(n,{tl:{col:i.col,row:i.row},ext:{width:i.width,height:i.height}})}}async function Jl(e,t={}){let u=await jl(),r=t.styled===!0,n=t.includeHeaders!==!1,i=new u.Workbook,a=h=>i.addWorksheet(h),l=a(t.sheetName??"Data");r&&(l.properties.outlineProperties={summaryBelow:!1,summaryRight:!1}),Qi(l,e,r),Zl(i,l,t.images),Bu(l,t.headerBlock,e.columns.length,t);let s=await Ei(l,e,t,n,r);t.onProgress?.(1),t.autoFilter!==!1&&s.headerRow!==null&&e.columns.length>0&&(l.autoFilter={from:{row:s.headerRow,column:1},to:{row:s.headerRow,column:e.columns.length}}),t.freezeHeader!==!1&&s.headerRow!==null&&(l.views=[{state:"frozen",ySplit:s.headerRow}]);let m=l;for(let h of t.additionalGrids??[])m=Ql(a,m,h,t,r),await Ei(m,h.model,t,h.includeHeaders!==!1,r);Bu(l,t.footerBlock,e.columns.length,t);let c=await i.xlsx.writeBuffer();return new Blob([c],{type:ql})}function Ql(e,t,u,r,n){if(u.sheetName){let a=e(u.sheetName);return Qi(a,u.model,n),u.title&&Bu(a,[{cells:[u.title],merge:!0,style:{font:{bold:!0,size:13}}}],u.model.columns.length,r),a}let i=u.gap??2;for(let a=0;a<i;a++)t.addRow([]);return u.title&&Bu(t,[{cells:[u.title],merge:!0,style:{font:{bold:!0,size:13}}}],u.model.columns.length,r),t}var Xl="application/pdf",Cr=[241,245,249],es=[250,250,250],ke=[30,41,59];async function ts(){let e=new Error('[datagrid] PDF export needs "jspdf" and "jspdf-autotable". Install them with: npm i jspdf jspdf-autotable'),t;try{let[u,r]=await Promise.all([import("jspdf"),import("jspdf-autotable")]);t={jsPDF:u.jsPDF??u.default,autoTable:r.default??r}}catch{throw e}if(typeof t.jsPDF!="function"||typeof t.autoTable!="function")throw e;return t}var Or="helvetica",us=/[^\u0000-\u00ff\u0152\u0153\u0160\u0161\u0178\u017d\u017e\u0192\u02c6\u02dc\u2013\u2014\u2018\u2019\u201a\u201c\u201d\u201e\u2020\u2021\u2022\u2026\u2030\u2039\u203a\u20ac\u2122]/u;function rs(e,t){let u=function*(){for(let r of t.headerBlock??[])yield r.text;for(let r of t.footerBlock??[])yield r.text;for(let r of[{model:e,title:void 0},...t.additionalGrids??[]]){r.title&&(yield r.title);for(let n of r.model.columns)yield n.header;for(let n of r.model.rows)for(let i of n.cells)yield i.text;for(let n of r.model.totals??[])n&&(yield n.text)}};for(let r of u()){let n=us.exec(r);if(n)return n[0]}return null}function ns(e,t,u){let r,n;if(typeof e=="string")r=atob(e.slice(0,8)),n=e;else{let i=e instanceof Uint8Array?e:new Uint8Array(e),a=[];for(let l=0;l<i.length;l+=32768)a.push(String.fromCharCode.apply(null,i.subarray(l,l+32768)));n=a.join(""),r=n.slice(0,4)}if(!r.startsWith("\0\0\0")){let i=r.startsWith("OTTO")?" (it is OpenType-CFF, .otf)":r.startsWith("wOF")?" (it is WOFF)":"";throw new Error(`[datagrid] PDF export: font "${t}" (${u}) is not a TrueType .ttf file${i}. jsPDF embeds TrueType only.`)}return n}function is(e,t){let u=[["normal",t.normal],["bold",t.bold??t.normal],["italic",t.italic??t.normal],["bolditalic",t.boldItalic??t.bold??t.italic??t.normal]];for(let[r,n]of u){let i=`${t.family}-${r}.ttf`;e.addFileToVFS(i,ns(n,t.family,r)),e.addFont(i,t.family,r)}return t.family}function Br(e,t,u,r,n){if(!t?.length)return u;let i=e.internal.pageSize.getWidth(),a=u;for(let l of t){let s=l.fontSize??10;e.setFontSize(s),e.setFont(n,l.fontStyle??"normal");let m=l.color??ke;e.setTextColor(m[0],m[1],m[2]);let c=l.align??"left",h=c==="center"?i/2:c==="right"?i-r:r;a+=s*.353,e.text(l.text,h,a,{align:c}),a+=l.spacing??2}return e.setTextColor(ke[0],ke[1],ke[2]),a}function as(e,t){t&&(t.text!==void 0&&(e.text=[t.text]),t.fillColor&&(e.styles.fillColor=t.fillColor),t.textColor&&(e.styles.textColor=t.textColor),t.fontStyle&&(e.styles.fontStyle=t.fontStyle),t.fontSize&&(e.styles.fontSize=t.fontSize),t.halign&&(e.styles.halign=t.halign))}function Vr(e,t,u,r,n,i,a){let l=r.styled!==!1,s=r.margin??14,m=a?.from??0,c=a?.to??u.rows.length,h=u.rows.slice(m,c).map(g=>g.cells.map(y=>y.text)),w=l&&r.totalsRow!==!1&&u.totals&&(!a||a.withTotals)?[u.totals.map(g=>g?.text??"")]:void 0;return t(e,{startY:n,margin:{left:s,right:s},head:i&&u.columns.length>0?[u.columns.map(g=>g.header)]:void 0,body:h,foot:w,theme:l?"grid":"plain",showHead:r.repeatHeaders===!1?"firstPage":"everyPage",showFoot:w?"lastPage":"never",styles:{...r.font?{font:r.font.family}:{},fontSize:8,cellPadding:2,textColor:ke},headStyles:{fillColor:Cr,textColor:ke,fontStyle:"bold"},footStyles:{fillColor:Cr,textColor:ke,fontStyle:"bold"},alternateRowStyles:l?{fillColor:es}:void 0,columnStyles:l?Object.fromEntries(u.columns.map((g,y)=>[y,{halign:g.align}])):void 0,didParseCell:g=>{let y,F=-1;g.section==="head"?y="header":g.section==="foot"?y="totals":(F=m+g.row.index,y=u.rows[F]?.kind==="group"?"group":"data"),y==="group"&&(g.cell.styles.fontStyle="bold",g.cell.styles.fillColor=Cr,g.column.index===0&&(g.cell.styles.cellPadding={top:2,right:2,bottom:2,left:2+(u.rows[F]?.level??0)*4}));let S=r.customizeCell;if(!S)return;let T=u.columns[g.column.index],N=F>=0?u.rows[F]?.cells[g.column.index]:void 0;as(g.cell,S({kind:y,columnId:T?.id??null,text:Array.isArray(g.cell.text)?g.cell.text.join(" "):String(g.cell.text),value:N?.value,rowIndex:F,columnIndex:g.column.index}))}}),e.lastAutoTable?.finalY??n}function os(e,t){t?.length&&t.forEach((u,r)=>{try{e.addImage(u.data,u.format,u.x,u.y,u.width,u.height)}catch(n){let i=n instanceof Error?n.message:String(n);throw new Error(`[datagrid] PDF export could not decode images[${r}] (format: ${u.format}). The data is not a valid ${u.format} \u2014 check that it is a complete file, base64-encoded, and that \`format\` matches it. Underlying error: ${i}`)}})}function ls(e,t){let u=t.pageNumbers;if(!u)return;let r=t.margin??14,n=e.getNumberOfPages(),i=e.internal.pageSize.getWidth(),a=e.internal.pageSize.getHeight();for(let l=1;l<=n;l++){e.setPage(l),e.setFontSize(8),e.setFont(t.font?.family??Or,"normal"),e.setTextColor(148,163,184);let s=typeof u=="function"?u(l,n):`${l} / ${n}`;e.text(s,i-r,a-8,{align:"right"})}e.setTextColor(ke[0],ke[1],ke[2])}var ss=400,ds=1e3;async function cs(e,t,u,r,n,i,a){let l=u.rows.length,s=Math.max(1,r.sliceRows||ds),m=n,c=0;for(;c<l;){if(r.signal?.aborted)throw new lt;let h=Math.min(l,c+s);c>0&&e.addPage(),m=Vr(e,t,u,r,c===0?n:a,i,{from:c,to:h,withTotals:h>=l}),c=h,r.onProgress?.(c/l),c<l&&await new Promise(w=>setTimeout(w,0))}return m}async function hs(e,t={}){if(t.signal?.aborted)throw new lt;let{jsPDF:u,autoTable:r}=await ts(),n=t.margin??14,i=new u({orientation:t.orientation??"landscape",unit:"mm",format:t.pageSize??"a4"}),a=t.font?is(i,t.font):Or;if(!t.font){let m=rs(e,t);if(m!==null){let c=m.codePointAt(0).toString(16).toUpperCase().padStart(4,"0");console.warn(`[datagrid] PDF export: "${m}" (U+${c}) cannot be drawn by the built-in PDF font and will come out as the wrong character. Pass \`font\` (a TrueType .ttf covering your language) in the PDF export options \u2014 see PdfExportOptions.font.`)}}os(i,t.images);let l=n;l=Br(i,t.headerBlock,l,n,a),l=t.sliceRows!==0&&e.rows.length>ss?await cs(i,r,e,t,l+2,t.includeHeaders!==!1,n):Vr(i,r,e,t,l+2,t.includeHeaders!==!1);for(let m of t.additionalGrids??[]){if(t.signal?.aborted)throw new lt;l=ps(i,r,m,t,l,n)}if(t.onProgress?.(1),t.footerBlock?.length){let m=t.footerBlock.reduce((c,h)=>c+(h.fontSize??10)*.353+(h.spacing??2),4);l+m>i.internal.pageSize.getHeight()-n&&(i.addPage(),l=n),Br(i,t.footerBlock,l+4,n,a)}ls(i,t);let s=i.output("arraybuffer");return new Blob([s],{type:Xl})}function ps(e,t,u,r,n,i){let a=n;return u.pageBreak?(e.addPage(),a=i):a+=8,u.title&&(a=Br(e,[{text:u.title,fontSize:12,fontStyle:"bold"}],a,i,r.font?.family??Or)),Vr(e,t,u.model,r,a+2,u.includeHeaders!==!1)}function ea(e,t){if(typeof document>"u")throw new Error("[datagrid] downloadBlob requires a browser document.");let u=URL.createObjectURL(e),r=document.createElement("a");r.href=u,r.download=t,r.style.display="none",document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(u),0)}function zr(e){return{"=":e.opEquals,"<>":e.opNotEquals,">":e.opGreater,">=":e.opGreaterOrEqual,"<":e.opLess,"<=":e.opLessOrEqual,contains:e.opContains,notcontains:e.opNotContains,startswith:e.opStartsWith,endswith:e.opEndsWith,isnull:e.opIsBlank,isnotnull:e.opIsNotBlank,in:e.opIsOneOf,between:e.opIsBetween,and:e.filterAnd.toLocaleLowerCase(),or:e.filterOr.toLocaleLowerCase(),blank:e.chartBlankCategory,listSeparator:", ",ofN:e.opValuesCount}}var ms=zr(Ht("en"));function ta(e,t,u={}){if(!e)return null;let r={...ms,...u.labels},n=u.maxListValues??3,i=m=>{let c=t.getDef(m);return c?.headerName??c?.field??m},a=(m,c)=>{if(c==null||c==="")return r.blank;let h=wt(t.getDef(m),c);return h!==null?h:c instanceof Date?c.toLocaleDateString():String(c)},l=(m,c)=>{if(Ir(m)){let g=m.nodes.map(F=>l(F,c+1)).filter(Boolean);if(g.length===0)return"";let y=g.join(` ${r[m.logic]} `);return c>0&&g.length>1?`(${y})`:y}let h=i(m.columnId),w=r[m.operator];switch(m.operator){case"isnull":case"isnotnull":return`${h} ${w}`;case"in":{let g=Array.isArray(m.value)?m.value:[m.value];return g.length>n?`${h} ${w} ${r.ofN.replace("{n}",String(g.length))}`:`${h} ${w} ${g.map(y=>a(m.columnId,y)).join(r.listSeparator)}`}case"between":{let[g,y]=Array.isArray(m.value)?m.value:[void 0,void 0];return`${h} ${w} ${a(m.columnId,g)} \u2013 ${a(m.columnId,y)}`}default:return`${h} ${w} ${a(m.columnId,m.value)}`}},s=l(e,0);return s===""?null:s}function gs(e,t,u,r,n){let i=e,a=i.findIndex(c=>n(c)===t);if(a<0)return{rows:i,moved:!1,fromIndex:-1,toIndex:-1};let l;if(u===null)l=i.length;else{let c=i.findIndex(h=>n(h)===u);if(c<0)return{rows:i,moved:!1,fromIndex:a,toIndex:-1};if(c===a)return{rows:i,moved:!1,fromIndex:a,toIndex:a};l=r==="before"?c:c+1}if(l>a&&(l-=1),l===a)return{rows:i,moved:!1,fromIndex:a,toIndex:a};let s=i.slice(),[m]=s.splice(a,1);return s.splice(l,0,m),{rows:s,moved:!0,fromIndex:a,toIndex:l}}var fs=["columnStateChanged","sortChanged","filterChanged","groupChanged"];function Ai(e){try{return globalThis[e]??null}catch{return null}}function ua(e,t){if(!t.enabled)return()=>{};let u=t.storageKey??`kanuni-datagrid-${e.gridId}`,r=t.type??"localStorage",n=t.saveDelay??500,i=!1,a=h=>{if(!(i||!h))try{e.applyViewState(h)}catch{}};if(r==="custom"){let h=null;try{h=t.customLoad?.()??null}catch{h=null}h&&typeof h.then=="function"?h.then(a,()=>{}):a(h)}else{let h=Ai(r);if(h){let w=null,g=!0;try{w=h.getItem(u)}catch{g=!1}if(g&&w)try{a(JSON.parse(w))}catch{try{h.removeItem(u)}catch{}}}}let l,s=()=>{let h=e.getViewState();if(r==="custom"){try{Promise.resolve(t.customSave?.(h)).catch(()=>{})}catch{}return}let w=Ai(r);if(w)try{w.setItem(u,JSON.stringify(h))}catch{}},m=()=>{l!==void 0&&clearTimeout(l),l=setTimeout(s,n)},c=fs.map(h=>e.events.on(h,m));return()=>{i=!0,c.forEach(h=>h()),l!==void 0&&(clearTimeout(l),l=void 0,s())}}var bi=150,wu=40;function Cs(e,t){return e.id?e.id:e.field?e.field:`col_${t}`}function It(e,t,u){let r=Math.max(e,t);return u!=null&&(r=Math.min(r,u)),r}var ws=class{defs=[];defsById=new Map;states=new Map;orderIds=[];version=0;collapsedBands=new Set;options;constructor(e,t={}){this.options=t,this.setColumns(e)}getVersion(){return this.version}setColumns(e){let t=this.defsById,u=this.states,r=new Set;this.defs=e.map((n,i)=>{let a={...this.options.defaultColumnDef,...n},l=Cs(a,i);if(r.has(l)){let s=`[datagrid] duplicate column id "${l}" \u2014 set an explicit \`id\` on one of the columns.`;this.options.debugMode?console.error(s):console.warn(s)}return r.add(l),a.id=l,a}),this.states=new Map,this.defsById=new Map,this.orderIds=[],this.defs.forEach((n,i)=>{let a=n.id;this.defsById.has(a)||this.defsById.set(a,n);let l=n.minWidth??wu,s=t.get(a),m=u.get(a),c=h=>m!==void 0&&s!==void 0&&s[h]===n[h];this.states.set(a,{id:a,width:c("width")?It(m.width,l,n.maxWidth):It(n.width??bi,l,n.maxWidth),pinned:c("pin")?m.pinned:n.pin??null,visible:c("visible")?m.visible:n.visible!==!1,order:m!==void 0?m.order:i}),this.orderIds.push(a)}),this.orderIds.sort((n,i)=>(this.states.get(n)?.order??0)-(this.states.get(i)?.order??0)),this.version++}resetColumnStates(){this.orderIds=this.defs.map(e=>e.id),this.defs.forEach((e,t)=>{let u=this.states.get(e.id);if(!u)return;let r=e.minWidth??wu;u.width=It(e.width??bi,r,e.maxWidth),u.pinned=e.pin??null,u.visible=e.visible!==!1,u.order=t}),this.version++}getDef(e){return this.defsById.get(e)}getState(e){return this.states.get(e)}getOrder(){return[...this.orderIds]}getColumnStates(){return this.orderIds.map(e=>({...this.states.get(e)}))}runtime(){let e={left:[],center:[],right:[]};for(let t of this.orderIds){let u=this.states.get(t),r=this.getDef(t);if(!u||!r||!u.visible||Ao(r,this.collapsedBands))continue;let n=u.pinned??"center";e[n==="left"?"left":n==="right"?"right":"center"].push({def:r,state:u})}return[...e.left,...e.center,...e.right]}isBandCollapsed(e){return this.collapsedBands.has(Pt(e))}setBandCollapsed(e,t){if(e.length===0)return!1;let u=Pt(e);return this.collapsedBands.has(u)===t?!1:(t?this.collapsedBands.add(u):this.collapsedBands.delete(u),this.version++,!0)}getCollapsedBands(){return[...this.collapsedBands]}setCollapsedBands(e){this.collapsedBands=new Set(e),this.version++}isBandCollapsible(e){if(e.length===0)return!1;let t=Pt(e),u=!1,r=!1;for(let n of this.orderIds){let i=this.getDef(n),a=this.states.get(n);if(!i||!a?.visible)continue;let l=Ie(i);l.length<e.length||Pt(l.slice(0,e.length))===t&&(i.bandShow==="open"?u=!0:r=!0)}return u&&r}setWidth(e,t){let u=this.states.get(e),r=this.getDef(e);!u||!r||(u.width=It(t,r.minWidth??wu,r.maxWidth),this.version++)}setPinned(e,t){let u=this.states.get(e);u&&(u.pinned=t,this.version++)}setVisible(e,t){let u=this.states.get(e);u&&(u.visible=t,this.version++)}moveColumn(e,t){let u=this.orderIds.indexOf(e);if(u===-1)return;this.orderIds.splice(u,1);let r=t?this.orderIds.indexOf(t):this.orderIds.length;this.orderIds.splice(r===-1?this.orderIds.length:r,0,e),this.orderIds.forEach((n,i)=>{let a=this.states.get(n);a&&(a.order=i)}),this.version++}applyColumnStates(e){let t=e.filter(n=>this.states.has(n.id)).slice().sort((n,i)=>n.order-i.order);for(let n of t){let i=this.getDef(n.id),a=this.states.get(n.id);!i||!a||(a.width=It(n.width,i.minWidth??wu,i.maxWidth),a.pinned=n.pinned,a.visible=n.visible)}let u=t.map(n=>n.id),r=this.orderIds.filter(n=>!u.includes(n));this.orderIds=[...u,...r],this.orderIds.forEach((n,i)=>{let a=this.states.get(n);a&&(a.order=i)}),this.version++}getCellValue(e,t){let u=this.getDef(t);if(u){if(u.valueGetter)return u.valueGetter(e);if(u.field)return e[u.field]}}getSortValue(e,t){let u=this.defsById.get(t);if(u){if(u.calculateSortValue)return u.calculateSortValue(e);if(u.valueGetter)return u.valueGetter(e);if(u.field)return e[u.field]}}getDataType(e){return this.getDef(e)?.dataType??"string"}};function ys(e,t,u){let r=e.length,n=new Uint32Array(r),i=new Uint32Array(r),a=0,l=0;for(let S=0;S<r;S++){let T=e[S];Number.isNaN(t[T])?i[l++]=T:n[a++]=T}let s=new Uint32Array(a),m=new Uint32Array(a),c=new Float64Array(1),h=new Uint32Array(c.buffer);for(let S=0;S<a;S++){let T=t[n[S]];c[0]=T===0?0:T;let N=h[0],V=h[1];V&2147483648?(N=~N>>>0,V=~V>>>0):V=(V^2147483648)>>>0,u&&(N=~N>>>0,V=~V>>>0),s[S]=N,m[S]=V}let w=new Uint32Array(a);for(let S=0;S<a;S++)w[S]=S;let g=new Uint32Array(a),y=new Uint32Array(256);for(let S=0;S<8;S++){let T=S>=4,N=(S&3)*8,V=T?m:s;y.fill(0);for(let W=0;W<a;W++)y[V[w[W]]>>>N&255]++;if(y[V[w[0]]>>>N&255]===a)continue;let K=0;for(let W=0;W<256;W++){let J=y[W];y[W]=K,K+=J}for(let W=0;W<a;W++){let J=w[W];g[y[V[J]>>>N&255]++]=J}let Z=w;w=g,g=Z}let F=new Uint32Array(r);for(let S=0;S<a;S++)F[S]=n[w[S]];for(let S=0;S<l;S++)F[a+S]=i[S];return F}var vi=new Map;function Es(e){let t=vi.get(e);return t||(t=new Intl.Collator(e,{numeric:!0,sensitivity:"base"}),vi.set(e,t)),t}function xi(e){return e==null||typeof e=="number"&&Number.isNaN(e)}function As(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e instanceof Date)return e.getTime();let t=Number(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function bs(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;let t=Date.parse(String(e));return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function vs(e,t){for(let u of t)if(e.getDef(u.columnId)?.comparator)return!0;return!1}function xs(e,t,u,r){let n=e.length,i=r.columnId,a=r.direction==="desc"?-1:1,l=u.getDataType(i),s=u.getDef(i)?.comparator;if(s){let h=new Array(n),w=new Array(n);for(let g=0;g<n;g++){let y=t[e[g]];h[g]=u.getSortValue(y,i),w[g]=y}return{dir:a,numeric:null,strings:null,values:h,valueRows:w,comparator:s}}if(l==="string"||l==="lookup"){let h=new Array(n);for(let w=0;w<n;w++){let g=u.getSortValue(t[e[w]],i);h[w]=xi(g)?null:String(g)}return{dir:a,numeric:null,strings:h,values:null,valueRows:null,comparator:null}}let m=new Float64Array(n),c=l==="date"?bs:As;for(let h=0;h<n;h++){let w=u.getSortValue(t[e[h]],i);m[h]=xi(w)?Number.NaN:c(w)}return{dir:a,numeric:m,strings:null,values:null,valueRows:null,comparator:null}}function Ds(e,t){let u=e.length,r=[],n=new Map,i=new Int32Array(u);for(let s=0;s<u;s++){let m=e[s];if(m===null){i[s]=-1;continue}let c=n.get(m);c===void 0&&(c=r.length,r.push(m),n.set(m,c)),i[s]=c}let a=_o(r,t),l=new Float64Array(u);for(let s=0;s<u;s++)l[s]=i[s]===-1?Number.NaN:a[i[s]];return l}function Fs(e,t,u,r,n={}){if(r.length===0)return e.slice();let i=Es(n.locale??"en"),a=r.map(h=>xs(e,t,u,h)),l=a.length,s=new Array(e.length),m=!0;for(let h=0;h<e.length;h++)s[h]=h,h>0&&e[h]<e[h-1]&&(m=!1);if(!a.some(h=>h.comparator!==null)&&m&&e.length>=5e4){let h=a.map(y=>y.numeric?y.numeric:Ds(y.strings,i)),w=Uint32Array.from(s);for(let y=l-1;y>=0;y--)w=ys(w,h[y],a[y].dir===-1);let g=new Uint32Array(e.length);for(let y=0;y<w.length;y++)g[y]=e[w[y]];return g}s.sort((h,w)=>{for(let g=0;g<l;g++){let y=a[g];if(y.comparator){let F=y.values,S=y.valueRows,T=y.comparator(F[h],F[w],S[h],S[w],y.dir===-1);if(T!==0)return T*y.dir}else if(y.numeric){let F=y.numeric[h],S=y.numeric[w],T=Number.isNaN(F),N=Number.isNaN(S);if(T||N){if(T&&N)continue;return T?1:-1}if(F!==S)return(F<S?-1:1)*y.dir}else{let F=y.strings[h],S=y.strings[w];if(F===null||S===null){if(F===null&&S===null)continue;return F===null?1:-1}let T=i.compare(F,S);if(T!==0)return T*y.dir}}return e[h]-e[w]});let c=new Uint32Array(e.length);for(let h=0;h<s.length;h++)c[h]=e[s[h]];return c}var Ss=class{mode="client";rows;keyGetter;locale;nodeCache;constructor(e,t){this.rows=e,this.keyGetter=t.keyGetter,this.locale=t.locale??"en",this.nodeCache=t.nodeCache??new Zi}getTotalCount(){return this.rows.length}setData(e){this.rows=e,this.nodeCache.invalidate()}patchData(e,t,u){this.rows=e,this.nodeCache.rebase(e,t)}getSourceRows(){return this.rows}compute(e,t){let u=this.rows.length,r=new Uint32Array(u);for(let a=0;a<u;a++)r[a]=a;let n=Yo(r,this.rows,e,t.filter,t.searchText,t.externalFilter),i=Fs(n,this.rows,e,t.sort,{locale:this.locale});return{nodes:this.nodeCache.project(i,this.rows,this.keyGetter),visibleCount:i.length,totalCount:u}}async getRows(e,t){return this.compute(e,t)}},ra='var Ue=/[\\u0130\\u0131]/,ve=/[\\u0130\\u0131]/g;function G(e){return Ue.test(e)?e.replace(ve,"i").toLowerCase():e.toLowerCase()}var M=-1;var ce=new WeakMap;function Be(e){let t=ce.get(e);if(t!==void 0)return t;let n=Oe(e);return ce.set(e,n),n}function Oe(e){let t=e.resolvedOptions();if(t.sensitivity!=="base"||t.numeric!==true||t.ignorePunctuation||t.usage!=="sort"||t.collation!=="default")return false;let n=[];for(let r=32;r<=126;r++)n.push(String.fromCharCode(r));n.sort(e.compare);for(let r=1;r<n.length;r++)if(e.compare(n[r-1],n[r])===0&&n[r-1].toLowerCase()!==n[r].toLowerCase())return false;for(let r of n)if(e.compare(r,"")===0)return false;return !(e.compare("01","1")!==0||e.compare("0","00")!==0||e.compare("a09z","a9z")!==0||e.compare("9","10")>=0)}function de(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(n<32||n>126)return false}return true}function _e(e,t){let n=0,r=0,o=e.length,f=t.length;for(;n<o&&r<f;){let s=e.charCodeAt(n),l=t.charCodeAt(r),a=s>=48&&s<=57,d=l>=48&&l<=57;if(a!==d)return true;if(a){for(;n<o&&e.charCodeAt(n)===48;)n++;for(;r<f&&t.charCodeAt(r)===48;)r++;let g=n,m=r;for(;n<o;){let N=e.charCodeAt(n);if(N<48||N>57)break;n++;}for(;r<f;){let N=t.charCodeAt(r);if(N<48||N>57)break;r++;}let k=n-g;if(k!==r-m)return true;for(let N=0;N<k;N++)if(e.charCodeAt(g+N)!==t.charCodeAt(m+N))return true}else {if(s>=65&&s<=90&&(s+=32),l>=65&&l<=90&&(l+=32),s!==l)return true;n++,r++;}}return n!==o||r!==f}function fe(e,t){let n=e.length,r=new Array(n);for(let g=0;g<n;g++)r[g]=g;r.sort((g,m)=>t.compare(e[g],e[m]));let o=new Int32Array(n);if(n===0)return o;let s=Be(t)?new Uint8Array(n):null,l=r[0],a=s?de(e[l])?1:2:0;s&&(s[l]=a);let d=0;o[l]=0;for(let g=1;g<n;g++){let m=r[g],k=e[l],N=e[m],y=0;s&&(y=s[m],y===0&&(y=de(N)?1:2,s[m]=y)),(a===1&&y===1&&_e(k,N)||t.compare(k,N)!==0)&&d++,o[m]=d,l=m,a=y;}return o}function me(e,t,n){let r=e.length,o=new Uint32Array(r),f=new Uint32Array(r),s=0,l=0;for(let i=0;i<r;i++){let C=e[i];Number.isNaN(t[C])?f[l++]=C:o[s++]=C;}let a=new Uint32Array(s),d=new Uint32Array(s),g=new Float64Array(1),m=new Uint32Array(g.buffer);for(let i=0;i<s;i++){let C=t[o[i]];g[0]=C===0?0:C;let b=m[0],p=m[1];p&2147483648?(b=~b>>>0,p=~p>>>0):p=(p^2147483648)>>>0,n&&(b=~b>>>0,p=~p>>>0),a[i]=b,d[i]=p;}let k=new Uint32Array(s);for(let i=0;i<s;i++)k[i]=i;let N=new Uint32Array(s),y=new Uint32Array(256);for(let i=0;i<8;i++){let C=i>=4,b=(i&3)*8,p=C?d:a;y.fill(0);for(let T=0;T<s;T++)y[p[k[T]]>>>b&255]++;if(y[p[k[0]]>>>b&255]===s)continue;let w=0;for(let T=0;T<256;T++){let E=y[T];y[T]=w,w+=E;}for(let T=0;T<s;T++){let E=k[T];N[y[p[E]>>>b&255]++]=E;}let D=k;k=N,N=D;}let I=new Uint32Array(r);for(let i=0;i<s;i++)I[i]=o[k[i]];for(let i=0;i<l;i++)I[s+i]=f[i];return I}function ge(e){return e.nodes!==void 0}var be=new Map;function Ve(e){let t=be.get(e);return t||(t=new Intl.Collator(e,{numeric:true,sensitivity:"base"}),be.set(e,t)),t}var he=new WeakMap;function qe(e,t,n){let r=he.get(e);r||(r=new Map,he.set(e,r));let o=r.get(n);return (!o||o.length!==t.length)&&(o=fe(t,Ve(n)),r.set(n,o)),o}var ye=new WeakMap;function Ce(e,t){let n=ye.get(e);if(!n)n=t.map(G),ye.set(e,n);else for(let r=n.length;r<t.length;r++)n.push(G(t[r]));return n}function R(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(e==null)return Number.NaN;let t=Number(e);if(!Number.isNaN(t))return t;let n=Date.parse(String(e));return Number.isNaN(n)?Number.NaN:n}function Ge(e,t){let n=e.dictionary,r=new Uint8Array(n.length),o=false,f=t.operator;if(f==="isnull")return {mask:r,nilPasses:true};if(f==="isnotnull")return r.fill(1),{mask:r,nilPasses:false};let s=Ce(e,n),l=t.value==null?"":G(String(t.value));switch(f){case "=":case "<>":{let a=t.value===null||t.value===void 0;for(let d=0;d<n.length;d++){let g=a?false:Pe(n[d],t.value);r[d]=(f==="="?g:!g)?1:0;}o=f==="="?a:!a;break}case "contains":for(let a=0;a<n.length;a++)r[a]=s[a].includes(l)?1:0;break;case "notcontains":for(let a=0;a<n.length;a++)r[a]=s[a].includes(l)?0:1;o=true,l===""&&(o=false);break;case "startswith":for(let a=0;a<n.length;a++)r[a]=s[a].startsWith(l)?1:0;break;case "endswith":for(let a=0;a<n.length;a++)r[a]=s[a].endsWith(l)?1:0;break;case "in":{let a=Ke(t.value);for(let d=0;d<n.length;d++)r[d]=a.has(Y(n[d]))?1:0;break}case ">":case ">=":case "<":case "<=":{for(let a=0;a<n.length;a++){let d=Q(n[a],t.value);r[a]=f===">"&&d>0||f===">="&&d>=0||f==="<"&&d<0||f==="<="&&d<=0?1:0;}break}case "between":{if(!Array.isArray(t.value)||t.value.length<2)break;let[a,d]=t.value;for(let g=0;g<n.length;g++)r[g]=Q(n[g],a)>=0&&Q(n[g],d)<=0?1:0;break}default:r.fill(1),o=true;}return {mask:r,nilPasses:o}}function Y(e){if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;let t=Number(e);return Number.isNaN(t)?String(e).toLowerCase():t}function Pe(e,t){return Y(e)===Y(t)}function Ke(e){let t=new Set,n=Array.isArray(e)?e:[];for(let r of n){if(r==null)continue;let o=Y(r);typeof o=="number"&&Number.isNaN(o)||t.add(o);}return t}function We(e){let t=new Set,n=Array.isArray(e)?e:[];for(let r of n){let o=R(r);Number.isNaN(o)||t.add(o);}return t}var J=new WeakMap;function ze(e){let t=J.get(e);return t||(t=We(e.value),J.set(e,t)),t}function Q(e,t){let n=R(e),r=R(t);if(!Number.isNaN(n)&&!Number.isNaN(r))return n-r;let o=String(e).toLowerCase(),f=String(t).toLowerCase();return o<f?-1:o>f?1:0}function He(e,t){if(t.operator==="in")return !Number.isNaN(e)&&ze(t).has(e);let n=Number.isNaN(e);switch(t.operator){case "isnull":return n;case "isnotnull":return !n;case "=":return !n&&e===R(t.value);case "<>":return n||e!==R(t.value);case ">":return !n&&e>R(t.value);case ">=":return !n&&e>=R(t.value);case "<":return !n&&e<R(t.value);case "<=":return !n&&e<=R(t.value);case "between":return n||!Array.isArray(t.value)||t.value.length<2?false:e>=R(t.value[0])&&e<=R(t.value[1]);case "contains":case "notcontains":case "startswith":case "endswith":{let r=n?"":String(e),o=t.value==null?"":G(String(t.value)),f=r.toLowerCase();return t.operator==="contains"?f.includes(o):t.operator==="notcontains"?!f.includes(o):t.operator==="startswith"?f.startsWith(o):f.endsWith(o)}default:return true}}function Z(e,t,n){if(ge(e))return e.nodes.length===0?true:e.logic==="or"?e.nodes.some(l=>Z(l,t,n)):e.nodes.every(l=>Z(l,t,n));let r=t.columns[e.columnId];if(!r)return true;if(r.kind==="numeric")return He(r.values[n],e);let o=ee.get(e),f=o??Ge(r,e);o||ee.set(e,f);let s=r.codes[n];return s===M?f.nilPasses:f.mask[s]===1}var ee=new WeakMap,Ye=65535;function te(e,t){ee=new WeakMap,J=new WeakMap;let{rowCount:n}=e,r=t.locale??"en",o=G(t.searchText.trim()),f=!!t.filter,s=o.length>0,l=[];if(s){let y=/^[0-9.+\\-einftya]*$/.test(o),I=(C,b,p)=>{let w=Ce(b,C),D=new Uint8Array(C.length),T=false;for(let E=0;E<w.length;E++)(w[E].includes(o)||p!==void 0&&p.has(C[E]))&&(D[E]=1,T=true);return T?D:null},i=new Map;if(t.searchLabelHits)for(let[C,b]of Object.entries(t.searchLabelHits))i.set(C,new Set(b));for(let C of t.searchColumns){let b=e.columns[C];if(!b)continue;let p=i.get(C);if(b.kind==="text"){let w=I(b.dictionary,b,p);w&&l.push({codes:b.codes,mask:w,values:null,numberHits:null,scanText:true});}else if(b.searchDictionary&&b.searchCodes){let w=I(b.searchDictionary,b,p);w&&l.push({codes:b.searchCodes,mask:w,values:null,numberHits:null,scanText:true});}else {let w=null;if(p)for(let D of p){let T=Number(D);Number.isNaN(T)||(w??=new Set).add(T);}(y||w)&&l.push({codes:null,mask:null,values:b.values,numberHits:w,scanText:y});}}}let a=t.onProgress,d=t.isCancelled,g={order:new Uint32Array(0),cancelled:true},m;if(!f&&!s){m=new Uint32Array(n);for(let y=0;y<n;y++)m[y]=y;}else {let y=new Uint32Array(n),I=0;for(let i=0;i<n;i++){if((i&Ye)===0){if(d?.())return g;a?.("filtering",n===0?1:i/n);}if(!(f&&!Z(t.filter,e,i))){if(s){let C=false;for(let b of l)if(b.codes&&b.mask){let p=b.codes[i];if(p!==M&&b.mask[p]===1){C=true;break}}else if(b.values){let p=b.values[i];if(!Number.isNaN(p)){if(b.numberHits!==null&&b.numberHits.has(p)){C=true;break}if(b.scanText&&String(p).toLowerCase().includes(o)){C=true;break}}}if(!C)continue}y[I++]=i;}}m=y.subarray(0,I),a?.("filtering",1);}if(t.sort.length===0)return {order:m.slice()};if(d?.())return g;let k=[];for(let y of t.sort){let I=e.columns[y.columnId];if(!I)continue;let i=y.direction==="desc"?-1:1;I.kind==="numeric"?k.push({dir:i,numeric:I.values,codes:null,ranks:null}):k.push({dir:i,numeric:null,codes:I.codes,ranks:qe(I,I.dictionary,r)});}if(k.length===0)return {order:m.slice()};if(m.length>=5e4){let y=[];for(let i of k){if(i.numeric){y.push(i.numeric);continue}let C=i.codes,b=i.ranks,p=new Float64Array(n);for(let w=0;w<n;w++){let D=C[w];p[w]=D===M?Number.NaN:b[D];}y.push(p);}let I=m;for(let i=k.length-1;i>=0;i--){if(d?.())return g;a?.("sorting",(k.length-1-i)/k.length),I=me(I,y[i],k[i].dir===-1);}return a?.("sorting",1),{order:I===m?m.slice():I}}a?.("sorting",null);let N=Array.from(m);return N.sort((y,I)=>{for(let i of k)if(i.numeric){let C=i.numeric[y],b=i.numeric[I],p=Number.isNaN(C),w=Number.isNaN(b);if(p||w){if(p&&w)continue;return p?1:-1}if(C!==b)return (C<b?-1:1)*i.dir}else {let C=i.codes[y],b=i.codes[I];if(C===M||b===M){if(C===M&&b===M)continue;return C===M?1:-1}let p=i.ranks[C],w=i.ranks[b];if(p!==w)return (p<w?-1:1)*i.dir}return y-I}),{order:Uint32Array.from(N)}}var $e=30,pe="Other",Xe=1e4;var _=864e5,je=60,Qe=20,$=2e3,ne=["day","week","month","quarter","year"],Ne={day:_,week:7*_,month:30.44*_,quarter:91.31*_,year:365.25*_};function ke(e,t){let n=new Date(e),r=n.getUTCFullYear(),o=n.getUTCMonth();switch(t){case "day":return Date.UTC(r,o,n.getUTCDate());case "week":{let f=Date.UTC(r,o,n.getUTCDate()),s=(new Date(f).getUTCDay()+6)%7;return f-s*_}case "month":return Date.UTC(r,o,1);case "quarter":return Date.UTC(r,Math.floor(o/3)*3,1);default:return Date.UTC(r,0,1)}}function Ie(e,t){let n=new Date(e),r=n.getUTCFullYear(),o=n.getUTCMonth();switch(t){case "day":return e+_;case "week":return e+7*_;case "month":return Date.UTC(r,o+1,1);case "quarter":return Date.UTC(r,o+3,1);default:return Date.UTC(r+1,0,1)}}var re=e=>e<10?`0${e}`:String(e);function Je(e,t){let n=new Date(e),r=n.getUTCFullYear();switch(t){case "year":return String(r);case "quarter":return `${r}-Q${Math.floor(n.getUTCMonth()/3)+1}`;case "month":return `${r}-${re(n.getUTCMonth()+1)}`;default:return `${r}-${re(n.getUTCMonth()+1)}-${re(n.getUTCDate())}`}}function Ze(e){if(!(e>0)||!Number.isFinite(e))return 1;let n=10**Math.floor(Math.log10(e)),r=e/n;return (r<=1?1:r<=2?2:r<=5?5:10)*n}function et(e,t,n){let r=Number.isFinite(t)&&Number.isFinite(n)?Math.max(0,n-t):0;if(e.kind==="date"){let a=e.unit??"auto",d,g=false;if(a==="auto")d=ne.find(m=>r/Ne[m]+1<=je)??"year";else for(d=a;r/Ne[d]+1>$;){let m=ne[ne.indexOf(d)+1];if(!m)break;d=m,g=true;}return {info:{kind:"date",unit:d,adjusted:g},keyOf:m=>Number.isFinite(m)?ke(m,d):Number.NaN,endOf:m=>Ie(m,d),labelOf:m=>Je(m,d),keys:(m,k)=>{let N=[];if(!Number.isFinite(m)||!Number.isFinite(k))return N;for(let y=ke(m,d);y<=k&&N.length<$;y=Ie(y,d))N.push(y);return N}}}let o=e.size&&e.size>0?e.size:Ze(r/Math.max(1,e.bins??Qe));(!(o>0)||!Number.isFinite(o))&&(o=1);let f=false;for(;r/o+1>$;)o*=2,f=true;let s=o;return {info:{kind:"number",size:s,adjusted:f},keyOf:a=>Number.isFinite(a)?Math.floor(a/s)*s:Number.NaN,endOf:a=>a+s,labelOf:a=>{let d=g=>String(Number(g.toPrecision(12)));return `${d(a)} \\u2013 ${d(a+s)}`},keys:(a,d)=>{let g=[];if(!Number.isFinite(a)||!Number.isFinite(d))return g;let m=Math.floor(a/s)*s;for(let k=m;k<=d&&g.length<$;k+=s)g.push(k);return g}}}function tt(e,t){if(e==null)return Number.NaN;if(e instanceof Date)return e.getTime();if(typeof e=="number")return e;if(t==="number")return Number(e);let n=Number(e);return Number.isNaN(n)?Date.parse(String(e)):n}function nt(e,t){if(!e)return {};let n=new Float64Array(t.length),r=new Float64Array(t.length);for(let o=0;o<t.length;o++){let f=t[o].start;n[o]=f,r[o]=Number.isNaN(f)?Number.NaN:e.endOf(f);}return {bucket:e.info,bucketStarts:n,bucketEnds:r}}var z=-1;function we(e,t,n,r){let o=Math.max(1,n.maxCategories??$e),f=n.otherBucket!==false,s=n.series.length,l=e[n.categoryColumnId],a=n.series.map(u=>e[u.columnId]),d=n.series.map(u=>u.aggregate==="countDistinct"),g=new Map,m=null,k=0,N=false,y=(u,c=Number.NaN)=>({label:u,sum:new Float64Array(s),numericCount:new Float64Array(s),count:new Float64Array(s),min:new Float64Array(s).fill(Number.POSITIVE_INFINITY),max:new Float64Array(s).fill(Number.NEGATIVE_INFINITY),distinct:d.map(h=>h?new Set:null),seq:k++,start:c}),I=(u,c)=>{if(!l)return Number.NaN;if(l.kind==="numeric")return l.values[u];let h=l.codes[u];return h===z?Number.NaN:tt(l.dictionary[h],c)},i=n.categoryBucket,C=null,b=Number.POSITIVE_INFINITY,p=Number.NEGATIVE_INFINITY;if(i){for(let u=0;u<t.length;u++){let c=I(t[u],i.kind);Number.isFinite(c)&&(c<b&&(b=c),c>p&&(p=c));}C=et(i,b,p);}let w=0,D=1,T=2,E=new Uint8Array(s),ae=new Array(s).fill(null),se=new Array(s).fill(null),ie=new Array(s).fill(null);for(let u=0;u<s;u++){let c=n.series[u].aggregate;E[u]=c==="count"?w:d[u]?D:T;let h=a[u];if(!h)continue;if(h.kind==="numeric"){ae[u]=h.values;continue}se[u]=h.codes;let x=h.dictionary,F=new Float64Array(x.length);for(let S=0;S<x.length;S++){let A=x[S],W=A===""?Number.NaN:Number(A);F[S]=Number.isFinite(W)?W:Number.NaN;}ie[u]=F;}for(let u=0;u<t.length;u++){let c=t[u],h,x,F=Number.NaN;if(C&&i)F=C.keyOf(I(c,i.kind)),h=Number.isNaN(F)?"":F,x=Number.isNaN(F)?"":C.labelOf(F);else if(!l)h=x="";else if(l.kind==="text"){let A=l.codes[c];h=x=A===z?"":l.dictionary[A];}else {let A=l.values[c];h=x=Number.isNaN(A)?"":String(A);}let S=g.get(h);S||(g.size>=Xe?(N=true,m??=y(n.otherLabel??pe),S=m):(S=y(x,F),g.set(h,S)));for(let A=0;A<s;A++){let W=E[A],L=ae[A],V=se[A];if(W===w){(L!==null?!Number.isNaN(L[c]):V!==null&&V[c]!==z)&&S.count[A]++;continue}if(W===D){let q=S.distinct[A];if(q)if(V!==null){let le=V[c];le!==z&&q.add(le);}else L!==null&&!Number.isNaN(L[c])&&q.add(L[c]);continue}let O;if(L!==null)O=L[c];else if(V!==null){let q=V[c];O=q===z?Number.NaN:ie[A][q];}else O=Number.NaN;Number.isNaN(O)||(S.numericCount[A]++,S.sum[A]+=O,O<S.min[A]&&(S.min[A]=O),O>S.max[A]&&(S.max[A]=O));}}let Me=(u,c)=>{for(let h=0;h<s;h++){u.sum[h]+=c.sum[h],u.numericCount[h]+=c.numericCount[h],u.count[h]+=c.count[h],c.min[h]<u.min[h]&&(u.min[h]=c.min[h]),c.max[h]>u.max[h]&&(u.max[h]=c.max[h]);let x=u.distinct[h],F=c.distinct[h];if(x&&F)for(let S of F)x.add(S);}},ue=(u,c)=>{switch(n.series[c].aggregate){case "count":return u.count[c];case "countDistinct":return u.distinct[c]?.size??0;case "sum":return u.numericCount[c]>0?u.sum[c]:Number.NaN;case "avg":return u.numericCount[c]>0?u.sum[c]/u.numericCount[c]:Number.NaN;case "min":return u.numericCount[c]>0?u.min[c]:Number.NaN;case "max":return u.numericCount[c]>0?u.max[c]:Number.NaN;default:return Number.NaN}},K=[...g.values()],Re=K.length+(m?1:0),H=u=>{if(s===0)return Number.NEGATIVE_INFINITY;let c=ue(u,0);return Number.isNaN(c)?Number.NEGATIVE_INFINITY:c},v;if(C){v=C.keys(b,p).map(c=>g.get(c)??y(C.labelOf(c),c));let u=g.get("");u&&v.push(u);}else {let u=K;if(K.length>o){let c=[...K].sort((h,x)=>H(x)-H(h));if(u=c.slice(0,o),f){m??=y(n.otherLabel??pe);for(let h of c.slice(o))Me(m,h);}}switch(n.categoryOrder??"value-desc"){case "category-asc":u=[...u].sort((c,h)=>c.label.localeCompare(h.label));break;case "first-seen":u=[...u].sort((c,h)=>c.seq-h.seq);break;default:u=[...u].sort((c,h)=>H(h)-H(c));}v=m?[...u,m]:u;}return {categories:v.map(u=>u.label),series:n.series.map((u,c)=>{let h=new Float64Array(v.length);for(let x=0;x<v.length;x++)h[x]=ue(v[x],c);return {label:u.label??r.series[c]??u.columnId,columnId:u.columnId,aggregate:u.aggregate,values:h}}),truncated:C?false:K.length>o||N,otherIndex:C?null:m?v.length-1:null,rowCount:t.length,categoryCount:C?v.length:Re,rankingExact:!N,...nt(C,v)}}function Te(){let e=new WeakMap;return {get(t){let n=e.get(t);if(n===void 0){n=new Map;let r=t.kind==="text"?t.dictionary:t.searchDictionary??[];for(let o=0;o<r.length;o++)n.set(r[o],o);e.set(t,n);}return n}}}function Ae(e,t,n){let r=n.get(e);return r===void 0&&(r=t.length,t.push(e),n.set(e,r)),r}function xe(e,t,n){for(let r of t){let o=e[r.columnId];if(!o)continue;let{indices:f}=r;if(o.kind==="numeric"){let s=r.numbers??[];for(let l=0;l<f.length;l++)o.values[f[l]]=s[l];if(o.searchCodes&&o.searchDictionary&&r.labels){let l=n.get(o);for(let a=0;a<f.length;a++){let d=r.labels[a];o.searchCodes[f[a]]=d===null?M:Ae(d,o.searchDictionary,l);}}}else {let s=r.labels??[],l=n.get(o);for(let a=0;a<f.length;a++){let d=s[a];o.codes[f[a]]=d===null?M:Ae(d,o.dictionary,l);}}}}var Se=self,P=new Map;function U(e,t){Se.postMessage(e,t??[]);}function Ee(e,t){for(let n of e)if(n.kind==="numeric"){let r={kind:"numeric",values:new Float64Array(n.buffer)};n.searchBuffer&&n.searchDictionary&&(r.searchCodes=new Int32Array(n.searchBuffer),r.searchDictionary=n.searchDictionary),t[n.columnId]=r;}else t[n.columnId]={kind:"text",codes:new Int32Array(n.buffer),dictionary:n.dictionary??[]};}function rt(e){let t={};Ee(e.columns,t),P.set(e.gridId,{dataVersion:e.dataVersion,table:{rowCount:e.rowCount,columns:t}}),U({action:"ready",gridId:e.gridId,dataVersion:e.dataVersion});}function ot(e){let t=P.get(e.gridId);!t||t.dataVersion!==e.dataVersion||(Ee(e.columns,t.table.columns),U({action:"ready",gridId:e.gridId,dataVersion:e.dataVersion}));}var B=new Set,j=(e,t)=>`${e}:${t}`,X=new Map,oe=new Map;function De(e,t){t>(X.get(e)??0)&&X.set(e,t);}function Fe(e,t){let n=j(e,t);return ()=>B.has(n)||t<=(oe.get(e)??0)}function at(e){De(e.gridId,e.requestId);let t=P.get(e.gridId);if(!t||t.dataVersion!==e.dataVersion)return;let n=j(e.gridId,e.requestId),r=Fe(e.gridId,e.requestId);if(r()){B.delete(n),U({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}try{let{order:o,cancelled:f}=te(t.table,{sort:e.sort,filter:e.filter,searchText:e.searchText,searchColumns:e.searchColumns,searchLabelHits:e.searchLabelHits,locale:e.locale,onProgress:(s,l)=>U({action:"progress",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,phase:s,fraction:l}),isCancelled:r});if(f){B.delete(n),U({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}U({action:"result",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,order:o.buffer,visibleCount:o.length},[o.buffer]),B.delete(n);}catch(o){U({action:"error",gridId:e.gridId,requestId:e.requestId,message:o instanceof Error?o.message:String(o)});}}function st(e){De(e.gridId,e.requestId);let t=P.get(e.gridId);if(!t||t.dataVersion!==e.dataVersion)return;let n=j(e.gridId,e.requestId),r=Fe(e.gridId,e.requestId);if(r()){B.delete(n),U({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}try{let{order:o,cancelled:f}=te(t.table,{sort:[],filter:e.filter,searchText:e.searchText,searchColumns:e.searchColumns,searchLabelHits:e.searchLabelHits,locale:e.locale,isCancelled:r});if(f){B.delete(n),U({action:"cancelled",gridId:e.gridId,requestId:e.requestId});return}let s={categoryColumnId:e.categoryColumnId,series:e.series,maxCategories:e.maxCategories,otherBucket:e.otherBucket,categoryOrder:e.categoryOrder,categoryBucket:e.categoryBucket,otherLabel:e.otherLabel},l=we(t.table.columns,o,s,{series:e.series.map(N=>N.label??N.columnId)}),a=l.categories.length,d=new Float64Array(l.series.length*a);for(let N=0;N<l.series.length;N++)d.set(l.series[N].values,N*a);let g=l.bucketStarts,m=l.bucketEnds,k=[d.buffer];g&&m&&k.push(g.buffer,m.buffer),U({action:"aggregated",gridId:e.gridId,dataVersion:e.dataVersion,requestId:e.requestId,categories:l.categories,values:d.buffer,seriesLabels:l.series.map(N=>N.label),truncated:l.truncated,otherIndex:l.otherIndex,rowCount:l.rowCount,categoryCount:l.categoryCount,rankingExact:l.rankingExact,bucket:l.bucket,bucketStarts:g?.buffer,bucketEnds:m?.buffer},k),B.delete(n);}catch(o){U({action:"error",gridId:e.gridId,requestId:e.requestId,message:o instanceof Error?o.message:String(o)});}}var it=Te();function ut(e){let t=P.get(e.gridId);!t||t.dataVersion!==e.fromVersion||(xe(t.table.columns,e.patches,it),t.dataVersion=e.toVersion);}Se.onmessage=e=>{let t=e.data;switch(t.action){case "init":rt(t);break;case "addColumns":ot(t);break;case "patchRows":ut(t);break;case "compute":at(t);break;case "aggregate":st(t);break;case "cancel":t.requestId===void 0?oe.set(t.gridId,X.get(t.gridId)??0):B.add(j(t.gridId,t.requestId));break;case "dispose":P.delete(t.gridId),X.delete(t.gridId),oe.delete(t.gridId);for(let n of B)n.startsWith(`${t.gridId}:`)&&B.delete(n);break}};',yu=null;function Bs(){return ra.length>0}function ks(){if(yu)return yu;if(!Bs())throw new Error("[datagrid] this build carries no embedded worker (the build step that inlines it did not run). Pass `worker={{ url }}` to point at a copy of datagrid.worker.js instead.");if(typeof Blob>"u"||typeof URL?.createObjectURL!="function")throw new Error("[datagrid] Blob URLs are unavailable, so the embedded worker cannot start.");return yu=URL.createObjectURL(new Blob([ra],{type:"text/javascript"})),yu}var Rs=2e4,Di=!1;function Ns(e,t){typeof process<"u"&&process.env&&!t||Di&&!t||(Di=!0,console.warn(`[datagrid] the Web Worker could not be started, so filtering and sorting are running on the main thread. The grid still works \u2014 it is just slower on large data.
|
|
4
4
|
The worker ships inside the package and starts from a Blob URL, so this is almost always a Content-Security-Policy. Either allow it:
|
|
5
5
|
Content-Security-Policy: worker-src 'self' blob:
|
|
6
6
|
or serve the worker as a file and point at it:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kanunilabs/datagrid",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.1",
|
|
4
4
|
"description": "High-performance data grid for vanilla JavaScript — no framework required. Virtualized rows and columns, a Web Worker pipeline, sorting, filtering, grouping and theming, with a UMD build for script-tag use.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"data-grid",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"access": "public"
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@kanunilabs/datagrid-core": "1.
|
|
62
|
+
"@kanunilabs/datagrid-core": "1.4.0"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
65
|
"jsdom": "^30.0.1",
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"react-dom": "^19.0.0",
|
|
68
68
|
"@types/node": "^22.0.0",
|
|
69
69
|
"esbuild": "^0.27.7",
|
|
70
|
-
"@kanunilabs/datagrid-react": "1.2.
|
|
70
|
+
"@kanunilabs/datagrid-react": "1.2.1"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"build": "tsup && node scripts/build-css.mjs && node scripts/build-umd.mjs",
|