@kanunilabs/pivotgrid-core 1.0.6 → 1.1.0
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/LICENSE +3 -2
- package/dist/index.cjs +8 -8
- package/dist/index.d.cts +5 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +8 -8
- package/package.json +2 -1
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import*as Me from'xlsx';import {saveAs}from'file-saver';var
|
|
1
|
+
import*as Me from'xlsx';import {saveAs}from'file-saver';var Te={showColumnGrandTotals:true,showRowGrandTotals:true,showColumnTotals:true,showRowTotals:true,totalsPosition:"bottom",dataFieldPosition:"columns",rowHeaderLayout:"tabular",showFooter:true,showFilterArea:true};var O=67108864;function wr(o,e){return o*67108864+e}function Er(o){return o/67108864|0}function Sr(o){return o%67108864}function j(o,e){let t;if(e.isCalculated&&typeof e.calculateExpression=="function"?t=e.calculateExpression(o):e.dataField&&(t=o[e.dataField]),t==null)return "(Blank)";if(!e.groupInterval)return t;if(e.dataType==="date"&&t instanceof Date)return St(t,e.groupInterval);if(e.dataType==="date"&&typeof t=="string"){let r=new Date(t);if(!isNaN(r.getTime()))return St(r,e.groupInterval)}return e.dataType==="number"&&typeof e.groupInterval=="number"?br(Number(t),e.groupInterval):t}function St(o,e){switch(e){case "year":return o.getFullYear();case "quarter":return `Q${Math.floor(o.getMonth()/3)+1}`;case "month":return o.getMonth()+1;case "day":return o.getDate();case "dayOfWeek":return o.getDay();default:return o.toISOString().split("T")[0]}}function br(o,e){if(isNaN(o)||e<=0)return String(o);let t=Math.floor(o/e)*e,r=t+e-1;return `${t} - ${r}`}function bt(o,e){for(let t of Pr(e))if(o.has(t))return true;return false}function Pr(o){if(o==null||o==="(Blank)"||o==="(Blanks)")return [o,"(Blank)","(Blanks)"];if(o instanceof Date){let e=[o,String(o)];return Number.isNaN(o.getTime())||e.push(o.toISOString()),e}return [o,String(o)]}function ne(o,e,t){let r=e.filter(i=>i.filterValues&&i.filterValues.size>0),u=null;return t&&t.conditions.length>0&&(u=Ye(t,e)),r.length===0&&!u?o:o.filter(i=>{if(u&&!u(i))return false;for(let n of r){let a=j(i,n),s=bt(n.filterValues,a);if(n.filterType==="exclude"){if(s)return false}else if(!s)return false}return true})}var Be=25e3,Dr=()=>typeof MessageChannel<"u"?new Promise(o=>{let e=new MessageChannel;e.port1.onmessage=()=>o(),e.port2.postMessage(null);}):new Promise(o=>setTimeout(o,0));async function Tr(o,e,t){let r=e.filter(a=>a.filterValues&&a.filterValues.size>0),u=null;if(t&&t.conditions.length>0&&(u=Ye(t,e)),r.length===0&&!u)return o;if(o.length<=Be)return ne(o,e,t);let i=r.map(a=>{let s=a.filterType==="exclude",l=a.filterValues;return c=>{let d=j(c,a),p=bt(l,d);return s?!p:p}}),n=[];for(let a=0;a<o.length;a+=Be){let s=Math.min(a+Be,o.length);for(let l=a;l<s;l++){let c=o[l];if(u&&!u(c))continue;let d=true;for(let p=0;p<i.length;p++)if(!i[p](c)){d=false;break}d&&n.push(c);}a+Be<o.length&&await Dr();}return n}function Ye(o,e){if(!o.conditions||o.conditions.length===0)return ()=>true;let t=o.conditions.map(r=>"logicalOperator"in r?Ye(r,e):Br(r,e));return o.logicalOperator==="or"?r=>{for(let u=0;u<t.length;u++)if(t[u](r))return true;return false}:r=>{for(let u=0;u<t.length;u++)if(!t[u](r))return false;return true}}function Br(o,e){let t=e.find(a=>a.id===o.fieldId);if(!t)return ()=>true;let r=o.value,u=String(r??"").toLowerCase(),i=Number(r),n=Array.isArray(r)?new Set(r.map(String)):null;return a=>{let s=j(a,t);switch(o.operator){case "=":return String(s)===String(r);case "<>":return String(s)!==String(r);case ">":return Number(s)>i;case ">=":return Number(s)>=i;case "<":return Number(s)<i;case "<=":return Number(s)<=i;case "contains":return String(s).toLowerCase().includes(u);case "notcontains":return !String(s).toLowerCase().includes(u);case "startswith":return String(s).toLowerCase().startsWith(u);case "endswith":return String(s).toLowerCase().endsWith(u);case "in":return n?n.has(String(s)):true;case "notin":return n?!n.has(String(s)):true;case "isnull":return s==null||s==="";case "isnotnull":return s!=null&&s!=="";default:return true}}}function Re(o){return o.charCodeAt(0)===65279?o.slice(1):o}function ae(o){return typeof o.text=="function"?o.text():new Promise((e,t)=>{let r=new FileReader;r.onload=u=>e(u.target?.result??""),r.onerror=()=>t(new Error("Dosya okuma hatas\u0131.")),r.readAsText(o,"utf-8");})}function Ze(o){let e=[",",";"," ","|"],t=Re(o).split(/\r\n|\r|\n/).filter(i=>i.length>0).slice(0,5);if(t.length===0)return ",";let r=",",u=-1;for(let i of e){let n=t.map(d=>Rr(d,i)),a=n.reduce((d,p)=>d+p,0);if(a===0)continue;let s=n[0],l=n.every(d=>d===s),c=a+(l?100:0)+s*10;c>u&&(u=c,r=i);}return r}function Rr(o,e){let t=0,r=false;for(let u=0;u<o.length;u++){let i=o[u];if(i==='"'){if(r&&o[u+1]==='"'){u++;continue}r=!r;}else !r&&i===e&&t++;}return t}function Dt(o,e,t){let r=Re(o),u=e||Ze(r),i=[],n="",a=[],s=false,l=false,c=r.length,d=t?Math.max(1<<18,Math.ceil(c/100)):0,p=d;for(let m=0;m<r.length;m++){d&&m>=p&&(t(m/c),p+=d);let f=r[m];if(s){f==='"'?r[m+1]==='"'?(n+='"',m++):s=false:n+=f;continue}f==='"'?(s=true,l=true):f===u?(a.push(n),n="",l=true):f===`
|
|
2
2
|
`||f==="\r"?(f==="\r"&&r[m+1]===`
|
|
3
|
-
`&&m++,u.push(a),n.push(u),u=[],a="",l=false):(a+=f,l=true);}return (l||a.length>0||u.length>0)&&(u.push(a),n.push(u)),t&&t(1),n}var Dt=new Set(["true","yes","evet","do\u011Fru","dogru"]),Rt=new Set(["false","no","hay\u0131r","hayir","yanl\u0131\u015F","yanlis"]);function Br(i){let e=i.trim().toLowerCase();return Dt.has(e)||Rt.has(e)}function It(i){if(typeof i=="boolean")return i;let e=String(i).trim().toLowerCase();return Dt.has(e)||e==="1"||e==="y"||e==="on"?true:Rt.has(e)||e==="0"||e==="n"||e==="off"?false:null}function kr(i){return /^0\d+$/.test(i)}var Mr=/[₺$€£¥]/g,Vr=/[\s ]/g;function Ze(i){if(typeof i=="number")return isNaN(i)?null:i;let e=String(i).trim();if(!e)return null;e=e.replace(Vr,"").replace(Mr,"");let t=false;e.endsWith("%")&&(t=true,e=e.slice(0,-1));let r=false;if(/^\(.*\)$/.test(e)&&(r=true,e=e.slice(1,-1)),!/^[+-]?[0-9.,]*[0-9][0-9.,]*$/.test(e))return null;let o=e.includes("."),n=e.includes(",");if(o&&n)e.lastIndexOf(",")>e.lastIndexOf(".")?e=e.replace(/\./g,"").replace(",","."):e=e.replace(/,/g,"");else if(n){let u=e.split(",");u.length===2&&u[1].length!==3?e=e.replace(",","."):e=e.replace(/,/g,"");}else o&&e.split(".").length>2&&(e=e.replace(/\./g,""));let a=Number(e);return isNaN(a)?null:(r&&(a=-a),t&&(a=a/100),a)}var Nr=/^\d{4}-\d{2}-\d{2}([ T]\d{2}:\d{2}(:\d{2})?(\.\d+)?(Z|[+-]\d{2}:?\d{2})?)?$/,Or=/^(\d{4})[/.](\d{1,2})[/.](\d{1,2})$/,Lr=/^(\d{1,2})[/.\-](\d{1,2})[/.\-](\d{4})$/;function qe(i){if(i instanceof Date)return isNaN(i.getTime())?null:i;let e=String(i).trim();if(!e)return null;if(Nr.test(e)){let o=new Date(e.replace(" ","T"));return isNaN(o.getTime())?null:o}let t=Or.exec(e);if(t){let o=new Date(+t[1],+t[2]-1,+t[3]);return Pt(o,+t[1],+t[2],+t[3])?o:null}let r=Lr.exec(e);if(r){let o=+r[1],n=+r[2],a=+r[3],u,s;o>12&&n<=12?(u=o,s=n):n>12&&o<=12?(u=n,s=o):(u=o,s=n);let l=new Date(a,s-1,u);return Pt(l,a,s,u)?l:null}return null}function Pt(i,e,t,r){return !isNaN(i.getTime())&&i.getFullYear()===e&&i.getMonth()===t-1&&i.getDate()===r}function Bt(i){if(i==null||i==="")return "blank";if(typeof i=="boolean")return "boolean";if(typeof i=="number")return isNaN(i)?"blank":"number";if(i instanceof Date)return isNaN(i.getTime())?"blank":"date";let e=String(i).trim();return e===""?"blank":Br(e)?"boolean":kr(e)?"string":qe(e)?"date":Ze(e)!==null?"number":"string"}function fe(i){let e={string:0,number:0,date:0,boolean:0};for(let o of i){let n=Bt(o);n!=="blank"&&e[n]++;}let t="string",r=0;return Object.keys(e).forEach(o=>{e[o]>r&&(r=e[o],t=o);}),t}function he(i,e){if(i==null||i==="")return null;switch(e){case "number":return Ze(i);case "date":return qe(i)??(i instanceof Date?i:null);case "boolean":return It(i);default:return i}}var kt=new Set(["__proto__","constructor","prototype"]);function se(i){return kt.has(i)?`${i}_`:i}function Je(i){let e=false;for(let t of i)if(!(!t||typeof t!="object")){for(let r of Object.keys(t))if(kt.has(r)){e=true;break}if(e)break}return e?i.map(t=>{if(!t||typeof t!="object")return t;let r={};for(let o of Object.keys(t))r[se(o)]=t[o];return r}):i}var Mt=200,Vt=2e4;function Nt(i){let e=new Map;return i.map(t=>{let r=e.get(t)??0;return e.set(t,r+1),se(r===0?t:`${t}_${r+1}`)})}function Qe(i,e){if(i.length===0)return [];let t=[],r=new Set,o=Math.min(i.length,500);for(let u=0;u<o;u++){let s=i[u];if(!(!s||typeof s!="object"))for(let l of Object.keys(s))r.has(l)||(r.add(l),t.push(l));}let n=new Map;for(let u of t){let s=[];for(let l=0;l<i.length&&s.length<Mt;l++){let c=i[l]?.[u];c!=null&&String(c).trim()!==""&&s.push(c);}n.set(u,fe(s));}let a=new Array(i.length);for(let u=0;u<i.length;u++){let s=i[u]||{},l={};for(let c of t){let d=s[c];l[se(c)]=d==null||d===""?null:he(d,n.get(c));}a[u]=l,e&&u>0&&u%Vt===0&&e({phase:"typing",percent:Math.round(u/i.length*100)});}return e&&e({phase:"typing",percent:100}),a}function ge(i,e){let t=Ie(i);if(!t.trim())return [];let r=Xe(t),o=Tt(t,r,e?c=>e({phase:"parsing",percent:Math.round(c*60)}):void 0);if(o.length===0)return [];let n=0;for(;n<o.length&&o[n].every(c=>c.trim()==="");)n++;if(n>=o.length)return [];let a=Nt(o[n].map((c,d)=>c.trim()||`Column${d+1}`)),u=o.slice(n+1).filter(c=>!(c.length===1&&c[0].trim()==="")),s=a.map((c,d)=>{let p=[];for(let m=0;m<u.length&&p.length<Mt;m++){let f=u[m][d];f!==void 0&&f.trim()!==""&&p.push(f);}return fe(p)}),l=new Array(u.length);for(let c=0;c<u.length;c++){let d=u[c],p={};for(let m=0;m<a.length;m++){let f=d[m];p[a[m]]=f===void 0||f===""?null:he(f,s[m]);}l[c]=p,e&&c>0&&c%Vt===0&&e({phase:"typing",percent:60+Math.round(c/u.length*40)});}return e&&e({phase:"typing",percent:100}),l}var Be=class{supports(e){return e.name.endsWith(".json")||e.type==="application/json"}async read(e){let t=await ue(e);try{return JSON.parse(t)}catch(r){throw new Error("JSON parse hatas\u0131: "+r.message)}}};var ke=class{supports(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="xlsx"||t==="xls"||t==="xlsm"||t==="xlsb"}async read(e){return new Promise((t,r)=>{let o=new FileReader;o.onload=n=>{try{let a=new Uint8Array(n.target?.result),u=Me.read(a,{type:"array",cellDates:!0});if(u.SheetNames.length===0){r(new Error("Excel dosyas\u0131nda sayfa bulunamad\u0131."));return}let s=u.SheetNames[0],l=u.Sheets[s],c=Me.utils.sheet_to_json(l,{defval:null,raw:!0});t(c);}catch(a){r(new Error("Excel ayr\u0131\u015Ft\u0131rma hatas\u0131: "+a.message));}},o.onerror=()=>{r(new Error("Dosya okuma hatas\u0131."));},o.readAsArrayBuffer(e);})}};var Ce=class i{supports(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="csv"||t==="tsv"||t==="txt"||e.type==="text/csv"||e.type==="text/tab-separated-values"}async read(e){let t=await ue(e);return i.parse(t)}static parse(e){return ge(e)}};var ye=class i{supports(e){return e.name.split(".").pop()?.toLowerCase()==="xml"||e.type==="application/xml"||e.type==="text/xml"}async read(e){let t=await ue(e);return i.parse(t)}static parse(e){if(!e||!e.trim())return [];let t=zr(e),o=Wr(t).map(_r).filter(n=>Object.keys(n).length>0);return Qe(o)}};function zr(i){let e={tag:"#root",attrs:{},children:[],text:"",parent:null},t=e,r=0,o=i.length;for(;r<o;){let n=i.indexOf("<",r);if(n===-1){t.text+=i.slice(r);break}if(n>r&&(t.text+=i.slice(r,n)),i.startsWith("<!--",n)){let p=i.indexOf("-->",n+4);r=p===-1?o:p+3;continue}if(i.startsWith("<![CDATA[",n)){let p=i.indexOf("]]>",n+9);t.text+=i.slice(n+9,p===-1?o:p),r=p===-1?o:p+3;continue}if(i.startsWith("<?",n)){let p=i.indexOf("?>",n+2);r=p===-1?o:p+2;continue}if(i.startsWith("<!",n)){let p=i.indexOf(">",n+2);r=p===-1?o:p+1;continue}let a=i.indexOf(">",n+1);if(a===-1)break;let u=i.slice(n+1,a).trim();if(u.startsWith("/")){let p=u.slice(1).trim(),m=t;for(;m&&m.tag!==p;)m=m.parent;m&&m.parent&&(t=m.parent),r=a+1;continue}let s=u.endsWith("/");s&&(u=u.slice(0,-1).trim());let{name:l,attrs:c}=Gr(u),d={tag:l,attrs:c,children:[],text:"",parent:t};t.children.push(d),s||(t=d),r=a+1;}return e}var Ot=/([^\s=/]+)\s*=\s*(?:"([^"]*)"|'([^']*)')/g;function Gr(i){let e=i.search(/\s/),t=(e===-1?i:i.slice(0,e)).trim(),r={};if(e!==-1){let o=i.slice(e+1),n;for(Ot.lastIndex=0;(n=Ot.exec(o))!==null;)r[n[1]]=et(n[2]??n[3]??"");}return {name:t,attrs:r}}function Wr(i){let e=i.children[0];if(!e)return [];let t=e.children;return t.length===0?[]:t.some(o=>o.children.length>0||Object.keys(o.attrs).length>0)?t:[e]}function _r(i){let e={},t=new Map,r=(o,n)=>{let a=o||"value",u=t.get(a)??0;t.set(a,u+1),e[se(u===0?a:`${a}_${u+1}`)]=n;};for(let[o,n]of Object.entries(i.attrs))r(o,n);if(i.children.length===0){let o=i.text.trim();o&&r(i.tag,et(o));}else for(let o of i.children)r(o.tag,et(Lt(o).trim()));return e}function Lt(i){if(i.children.length===0)return i.text;let e=i.text;for(let t of i.children)e+=Lt(t);return e}var Hr=/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,Ur={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:"\xA0"};function et(i){return i.indexOf("&")===-1?i:i.replace(Hr,(e,t)=>{if(t[0]==="#"){let r=t[1]==="x"||t[1]==="X"?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Number.isFinite(r)?String.fromCodePoint(r):e}return Ur[t]??e})}var le=class{static validateSnapshot(e){let t={isValid:true,errors:[],warnings:[]};return !e||typeof e!="object"?(t.isValid=false,t.errors.push("Ge\xE7ersiz dosya format\u0131. Snapshot nesnesi bulunamad\u0131."),t):(e.version||t.warnings.push("Snapshot versiyonu eksik. Geriye d\xF6n\xFCk uyumluluk garanti edilemez."),e.type||(t.isValid=false,t.errors.push("Snapshot t\xFCr\xFC (type) belirtilmemi\u015F.")),(e.type==="FULL_SNAPSHOT"||e.type==="LAYOUT_ONLY")&&((!e.fields||!Array.isArray(e.fields))&&(t.isValid=false,t.errors.push('Layout i\xE7in "fields" dizisi bulunamad\u0131.')),e.layout||t.warnings.push('"layout" yap\u0131land\u0131rmas\u0131 eksik, varsay\u0131lan de\u011Ferler kullan\u0131lacak.')),(e.type==="FULL_SNAPSHOT"||e.type==="DATA_ONLY")&&(!e.data||!Array.isArray(e.data))&&(t.isValid=false,t.errors.push('Veri i\xE7eri\u011Fi ("data") bulunamad\u0131 veya ge\xE7ersiz.')),t)}static validateDataAgainstFields(e,t){let r={isValid:true,errors:[],warnings:[]};if(e.length===0)return r.warnings.push("Veri seti bo\u015F."),r;let o=e[0],n=[];return t.forEach(a=>{!a.isCalculated&&a.dataField&&!(a.dataField in o)&&n.push(String(a.dataField));}),n.length>0&&r.warnings.push(`Baz\u0131 alanlar veri setinde bulunamad\u0131: ${n.join(", ")}. E\u015Fle\u015Ftirme (Mapping) gerekebilir.`),r}};var te=class{static extractFieldsFromData(e,t=50){if(!e||e.length===0)return [];let r=[],o=Math.max(t,50),n=this.collectKeys(e,o),a=false,u=false;return n.forEach(s=>{let l=this.inferType(e,s,t),c="chooser";!a&&this.isAutoRowCandidate(e,s,l,o)?(c="row",a=true):!u&&this.isAutoDataCandidate(s,l)&&(c="data",u=true);let d={id:`f_${s}`,dataField:s,caption:this.formatCaption(s),dataType:l,area:c,areaIndex:0};l==="number"?d.summaryType="sum":l==="date"&&(d.groupInterval="month"),r.push(d);}),r}static buildFieldsFromPlan(e,t,r=50){let o=[],n=false,a=false,u=Math.max(r,50);for(let s of e){let l="chooser";!n&&this.isAutoRowCandidate(t,s.dataField,s.dataType,u)?(l="row",n=true):!a&&this.isAutoDataCandidate(s.dataField,s.dataType)&&(l="data",a=true);let c={id:`f_${s.dataField}`,dataField:s.dataField,caption:s.caption,dataType:s.dataType,area:l,areaIndex:0};s.dataType==="number"?c.summaryType="sum":s.dataType==="date"&&(c.groupInterval="month"),o.push(c);}return o}static isAutoRowCandidate(e,t,r,o){return !(t.startsWith("__EMPTY")||r!=="string"&&r!=="date"||this.isIdentifierLikeKey(t)||r==="string"&&e&&this.isHighCardinalityStringColumn(e,t,o))}static isAutoDataCandidate(e,t){return t==="number"&&!e.startsWith("__EMPTY")&&!this.isIdentifierLikeKey(e)}static isHighCardinalityStringColumn(e,t,r){let o=Math.min(e.length,r),n=new Set,a=0;for(let u=0;u<o;u++){let s=e[u]?.[t];s==null||s===""||(a++,n.add(String(s)));}return a<20?false:n.size/a>=.9}static isIdentifierLikeKey(e){let t=e.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase(),r=t.replace(/[^a-z0-9]/g,"");return r==="id"||r==="uuid"||r==="guid"||r==="key"?true:/(^|[\s_.-])(id|uuid|guid|key)($|[\s_.-])/.test(t)}static collectKeys(e,t){let r=[],o=new Set,n=Math.min(e.length,t);for(let a=0;a<n;a++){let u=e[a];if(!(!u||typeof u!="object"))for(let s of Object.keys(u))o.has(s)||(o.add(s),r.push(s));}return r}static inferType(e,t,r){let o=Math.min(e.length,r),n=new Array(o);for(let a=0;a<o;a++)n[a]=e[a]?.[t];return fe(n)}static formatCaption(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,t=>t.toUpperCase()).trim()}};var zt='var J=class{size=1;nodeToParent;nodeToVal;nodeToDepth;nodeChildCount;childrenMap;constructor(e){this.nodeToParent=new Int32Array(e).fill(-1),this.nodeToVal=new Int32Array(e).fill(-1),this.nodeToDepth=new Int32Array(e).fill(0),this.nodeChildCount=new Int32Array(e).fill(0),this.childrenMap=new Map;}expandCapacity(){let e=this.nodeToParent.length*2,n=new Int32Array(e).fill(-1);n.set(this.nodeToParent),this.nodeToParent=n;let t=new Int32Array(e).fill(-1);t.set(this.nodeToVal),this.nodeToVal=t;let r=new Int32Array(e).fill(0);r.set(this.nodeToDepth),this.nodeToDepth=r;let i=new Int32Array(e).fill(0);i.set(this.nodeChildCount),this.nodeChildCount=i;}insert(e,n){let t=0;for(let r=0;r<n;r++){let i=e[r],a=this.childrenMap.get(t);a||(a=new Map,this.childrenMap.set(t,a));let u=a.get(i);u===void 0&&(this.size>=this.nodeToParent.length&&this.expandCapacity(),u=this.size++,this.nodeToParent[u]=t,this.nodeToVal[u]=i,this.nodeToDepth[u]=r+1,this.nodeChildCount[t]++,a.set(i,u)),t=u;}return t}};var ee=class{dictionary=[];rowFields=[];colFields=[];dataFields=[];storedColumns={};storedRowCount=0;lastMask=null;isBuilt=false;buildState=null;incrementalFilters=null;incrementalPrefilter=null;rowTrie;colTrie;cardinalityMap={};rowPathStrs=[];colPathStrs=[];rowIndexMapCache={};columnIndexMapCache={};buildVersion=0;groupCount=0;leafGroupRowIds;leafGroupColIds;leafGroupMeasures;leafGroupCounts;leafGroupMins;leafGroupMaxes;leafGroupDistinctSets=new Map;init(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCount,this.storedColumns={};for(let[n,t]of Object.entries(e.columnarData))t.type==="int32"&&(this.storedColumns[n]={type:"int32",array:new Int32Array(t.buffer)}),t.type==="float64"&&(this.storedColumns[n]={type:"float64",array:new Float64Array(t.buffer)});this.lastMask=null,e.deferBuild?this.isBuilt=false:this.buildFromMask(null);}reconfigure(e){if(this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.dictionaryAppend&&e.dictionaryAppend.length>0)for(let n of e.dictionaryAppend)this.dictionary.push(n);if(e.newColumns)for(let[n,t]of Object.entries(e.newColumns))t.type==="int32"&&(this.storedColumns[n]={type:"int32",array:new Int32Array(t.buffer)}),t.type==="float64"&&(this.storedColumns[n]={type:"float64",array:new Float64Array(t.buffer)});this.buildFromMask(this.lastMask);}initStart(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCountTotal,this.storedColumns={};for(let[n,t]of Object.entries(e.columnTypes))t==="int32"?this.storedColumns[n]={type:"int32",array:new Int32Array(e.rowCountTotal)}:this.storedColumns[n]={type:"float64",array:new Float64Array(e.rowCountTotal)};this.incrementalFilters=e.filters&&e.filters.length>0?e.filters.map(n=>({fieldId:n.fieldId,filterType:n.filterType,ids:new Set,pending:new Set(n.valueStrings)})):null,this.incrementalPrefilter=e.prefilter&&e.prefilter.conditions.length>0?e.prefilter:null,this.lastMask=this.incrementalFilters||this.incrementalPrefilter?new Uint8Array(e.rowCountTotal):null,this.resolveIncrementalFilterStrings(0),this.isBuilt=false,this.beginBuild();}initChunk(e){if(e.dictionaryAppend&&e.dictionaryAppend.length>0){let n=this.dictionary.length;for(let t of e.dictionaryAppend)this.dictionary.push(t);this.resolveIncrementalFilterStrings(n),this.ensureCardCapacity();}for(let[n,t]of Object.entries(e.columns)){let r=this.storedColumns[n];r&&(r.type==="int32"?r.array.set(new Int32Array(t),e.start):r.array.set(new Float64Array(t),e.start));}this.lastMask&&this.computeMaskRange(e.start,e.end),this.processRange(e.start,e.end,this.lastMask);}initEnd(){this.incrementalFilters=null,this.incrementalPrefilter=null,this.finalizeBuild();}resolveIncrementalFilterStrings(e){let n=this.incrementalFilters;if(!n)return;let t=0;for(let r of n)t+=r.pending.size;if(t!==0)for(let r=e;r<this.dictionary.length;r++){let i=this.dictionary[r];for(let a of n)a.pending.delete(i)&&a.ids.add(r);}}computeMaskRange(e,n){let t=this.lastMask;if(t.fill(1,e,n),this.incrementalFilters)for(let r of this.incrementalFilters){let i=this.storedColumns[r.fieldId];if(!i||i.type!=="int32")continue;let a=i.array,u=r.ids;if(r.filterType==="exclude")for(let o=e;o<n;o++)t[o]&&u.has(a[o])&&(t[o]=0);else for(let o=e;o<n;o++)t[o]&&!u.has(a[o])&&(t[o]=0);}if(this.incrementalPrefilter)for(let r=e;r<n;r++)t[r]&&!this.evaluatePrefilterGroup(this.incrementalPrefilter,r)&&(t[r]=0);}applyFilter(e){if(e.filters.length===0&&!e.prefilter){this.lastMask=null,this.buildFromMask(null);return}let n=this.storedRowCount,t=new Uint8Array(n);t.fill(1);for(let r of e.filters){let i=this.storedColumns[r.fieldId];if(!i||i.type!=="int32")continue;let a=i.array,u=new Set(r.dictIds);if(r.filterType==="exclude")for(let o=0;o<n;o++)t[o]&&u.has(a[o])&&(t[o]=0);else for(let o=0;o<n;o++)t[o]&&!u.has(a[o])&&(t[o]=0);}if(e.prefilter&&e.prefilter.conditions.length>0)for(let r=0;r<n;r++)t[r]&&!this.evaluatePrefilterGroup(e.prefilter,r)&&(t[r]=0);this.lastMask=t,this.buildFromMask(t);}evaluatePrefilterGroup(e,n){if(!e.conditions||e.conditions.length===0)return true;if(e.logicalOperator==="and"){for(let t of e.conditions)if("logicalOperator"in t){if(!this.evaluatePrefilterGroup(t,n))return false}else if(!this.evaluatePrefilterCondition(t,n))return false;return true}else {for(let t of e.conditions)if("logicalOperator"in t){if(this.evaluatePrefilterGroup(t,n))return true}else if(this.evaluatePrefilterCondition(t,n))return true;return false}}evaluatePrefilterCondition(e,n){let t=this.storedColumns[e.fieldId];if(!t)return true;if(t.type==="float64"){let u=t.array[n],o=Number(e.value);switch(e.operator){case "=":return u===o;case "<>":return u!==o;case ">":return u>o;case ">=":return u>=o;case "<":return u<o;case "<=":return u<=o;case "isnull":return isNaN(u)||u===0;case "isnotnull":return !isNaN(u)&&u!==0;default:return true}}let r=t.array[n],i=this.dictionary[r]||"",a=String(e.value??"");switch(e.operator){case "=":return i===a;case "<>":return i!==a;case ">":return i>a;case ">=":return i>=a;case "<":return i<a;case "<=":return i<=a;case "contains":return i.toLowerCase().includes(a.toLowerCase());case "notcontains":return !i.toLowerCase().includes(a.toLowerCase());case "startswith":return i.toLowerCase().startsWith(a.toLowerCase());case "endswith":return i.toLowerCase().endsWith(a.toLowerCase());case "isnull":return i===""||i==="(Blank)";case "isnotnull":return i!==""&&i!=="(Blank)";case "in":return Array.isArray(e.value)?e.value.map(String).includes(i):true;case "notin":return Array.isArray(e.value)?!e.value.map(String).includes(i):true;default:return true}}buildFromMask(e){this.beginBuild(),this.processRange(0,this.storedRowCount,e),this.finalizeBuild();}beginBuild(){let e=this.storedRowCount,n=this.storedColumns,t=this.rowFields.length,r=this.colFields.length,i=new Array(t);for(let l=0;l<t;l++)i[l]=n[this.rowFields[l].id].array;let a=new Array(r);for(let l=0;l<r;l++)a[l]=n[this.colFields[l].id].array;let u=this.dictionary.length,o=this.rowFields.map(l=>{let M=n[l.id];return M&&M.type==="int32"?new Uint8Array(u):null}),w=this.colFields.map(l=>{let M=n[l.id];return M&&M.type==="int32"?new Uint8Array(u):null});this.rowTrie=new J(2e5),this.colTrie=new J(2e5);let v=this.dataFields.length,S=this.dataFields.map(l=>l.summaryType||"sum"),h=S.some(l=>l==="count"||l==="avg"),D=S.some(l=>l==="min"),L=S.some(l=>l==="max"),K=S.some(l=>l==="distinct"),_=new Array(v);for(let l=0;l<v;l++)_[l]=n[this.dataFields[l].id].array;let R=Math.min(e,2e5),N=D?new Float64Array(R*v):new Float64Array(0),x=L?new Float64Array(R*v):new Float64Array(0);this.leafGroupDistinctSets=K?new Map:new Map,D&&N.fill(1/0),L&&x.fill(-1/0),this.buildState={rPath:new Int32Array(t),cPath:new Int32Array(r),rowColArrays:i,colColArrays:a,dataColArrays:_,rowCardSeen:o,colCardSeen:w,rowCardCounts:new Int32Array(t),colCardCounts:new Int32Array(r),summaryTypes:S,allSums:S.every(l=>l==="sum"),needsCounts:h,needsMins:D,needsMaxes:L,groupMap:new Map,leafRowIds:new Int32Array(R),leafColIds:new Int32Array(R),leafMeasures:new Float64Array(R*v),leafCounts:h?new Float64Array(R*v):new Float64Array(0),leafMins:N,leafMaxes:x,gCount:0};}ensureCardCapacity(){let e=this.buildState;if(!e)return;let n=this.dictionary.length,t=r=>{if(r===null||r.length>=n)return r;let i=new Uint8Array(Math.max(n,r.length*2));return i.set(r),i};for(let r=0;r<e.rowCardSeen.length;r++)e.rowCardSeen[r]=t(e.rowCardSeen[r]);for(let r=0;r<e.colCardSeen.length;r++)e.colCardSeen[r]=t(e.colCardSeen[r]);}processRange(e,n,t){let r=this.buildState,{rPath:i,cPath:a,rowColArrays:u,colColArrays:o,dataColArrays:w,rowCardSeen:v,colCardSeen:S,rowCardCounts:h,colCardCounts:D,summaryTypes:L,allSums:K,needsCounts:_,needsMins:R,needsMaxes:N,groupMap:x}=r,l=u.length,M=o.length,y=w.length,X=this.rowTrie,V=this.colTrie,C=r.leafRowIds,b=r.leafColIds,k=r.leafMeasures,z=r.leafCounts,U=r.leafMins,E=r.leafMaxes,Q=r.gCount;for(let W=e;W<n;W++){if(t&&!t[W])continue;for(let s=0;s<l;s++){let d=u[s][W];i[s]=d;let f=v[s];f!==null&&f[d]===0&&(f[d]=1,h[s]++);}let Y=X.insert(i,l);for(let s=0;s<M;s++){let d=o[s][W];a[s]=d;let f=S[s];f!==null&&f[d]===0&&(f[d]=1,D[s]++);}let H=V.insert(a,M),Z=Y*67108864+H,G=x.get(Z);if(G===void 0){if(G=Q++,x.set(Z,G),G>=C.length){let s=G*2,d=new Int32Array(s);d.set(C),C=d;let f=new Int32Array(s);f.set(b),b=f;let I=new Float64Array(s*y);if(I.set(k),k=I,_){let p=new Float64Array(s*y);p.set(z),z=p;}if(R){let p=new Float64Array(s*y);p.fill(1/0),p.set(U),U=p;}if(N){let p=new Float64Array(s*y);p.fill(-1/0),p.set(E),E=p;}}C[G]=Y,b[G]=H;}let c=G*y;if(K)for(let s=0;s<y;s++)k[c+s]+=w[s][W];else for(let s=0;s<y;s++){let d=w[s][W],f=c+s;switch(L[s]){case "sum":k[f]+=d;break;case "count":z[f]+=1;break;case "avg":k[f]+=d,z[f]+=1;break;case "min":d<U[f]&&(U[f]=d);break;case "max":d>E[f]&&(E[f]=d);break;case "distinct":{let I=this.leafGroupDistinctSets.get(f);I||(I=new Set,this.leafGroupDistinctSets.set(f,I)),I.add(d);break}default:k[f]+=d;break}}}r.leafRowIds=C,r.leafColIds=b,r.leafMeasures=k,r.leafCounts=z,r.leafMins=U,r.leafMaxes=E,r.gCount=Q;}finalizeBuild(){let e=this.buildState,{needsCounts:n,needsMins:t,needsMaxes:r,gCount:i}=e,a=e.dataColArrays.length,u=e.rowColArrays.length,o=e.colColArrays.length;this.groupCount=i,this.leafGroupRowIds=e.leafRowIds.slice(0,i),this.leafGroupColIds=e.leafColIds.slice(0,i),this.leafGroupMeasures=e.leafMeasures.slice(0,i*a),this.leafGroupCounts=n?e.leafCounts.slice(0,i*a):e.leafCounts,this.leafGroupMins=t?e.leafMins.slice(0,i*a):e.leafMins,this.leafGroupMaxes=r?e.leafMaxes.slice(0,i*a):e.leafMaxes,this.cardinalityMap={};for(let w=0;w<u;w++)e.rowCardSeen[w]!==null&&(this.cardinalityMap[this.rowFields[w].id]=e.rowCardCounts[w]);for(let w=0;w<o;w++)e.colCardSeen[w]!==null&&(this.cardinalityMap[this.colFields[w].id]=e.colCardCounts[w]);this.buildState=null,this.buildVersion++,this.isBuilt=true,this.rowPathStrs=this.buildPathStrs(this.rowTrie),this.colPathStrs=this.buildPathStrs(this.colTrie),this.rowIndexMapCache=this.buildIndexMap(this.rowPathStrs),this.columnIndexMapCache=this.buildIndexMap(this.colPathStrs);}buildPathStrs(e){let n=new Array(e.size);n[0]="";for(let t=1;t<e.size;t++){let r=e.nodeToParent[t],i=this.dictionary[e.nodeToVal[t]],a=n[r];n[t]=a?a+"|"+i:i;}return n}buildIndexMap(e){let n={};for(let t=0;t<e.length;t++)n[e[t]]=t;return n}compute(e){this.isBuilt||this.buildFromMask(this.lastMask);let n=this.rowPathStrs,t=this.colPathStrs,r=new Uint8Array(this.rowTrie.size),i=new Set(e.expandedPaths),a=i.has(".*")||i.has("*");for(let c=0;c<this.rowTrie.size;c++)r[c]=a||i.has(n[c])?1:0;let u=new Uint8Array(this.colTrie.size),o=new Set(e.expandedColPaths),w=o.has(".*")||o.has("*");for(let c=0;c<this.colTrie.size;c++)u[c]=w||o.has(t[c])?1:0;let v=new Uint8Array(this.rowTrie.size);v[0]=1;for(let c=1;c<this.rowTrie.size;c++){let s=this.rowTrie.nodeToParent[c];(s===0||r[s])&&(v[c]=1);}let S=new Uint8Array(this.colTrie.size);S[0]=1;for(let c=1;c<this.colTrie.size;c++){let s=this.colTrie.nodeToParent[c];(s===0||u[s])&&(S[c]=1);}let h=this.dataFields.length,D=this.dataFields.map(c=>c.summaryType||"sum"),L=this.leafGroupMins.length>0,K=this.leafGroupMaxes.length>0,_=this.leafGroupCounts.length>0,R=this.leafGroupDistinctSets.size>0,N=new Map,x=0,l=1e4,M=new Float64Array(l),y=new Float64Array(l*h),X=new Int32Array(l*h),V=_?new Float64Array(l*h):null,C=L?new Float64Array(l*h):null,b=K?new Float64Array(l*h):null,k=R?new Map:new Map;C&&C.fill(1/0),b&&b.fill(-1/0);let z=new Int32Array(this.rowFields.length+1),U=new Int32Array(this.colFields.length+1),E=(c,s,d,f)=>{let I=0,p=c;for(;p!==-1;)d[p]&&(f[I++]=p),p=s.nodeToParent[p];return I};for(let c=0;c<this.groupCount;c++){let s=this.leafGroupRowIds[c],d=this.leafGroupColIds[c],f=E(s,this.rowTrie,v,z),I=E(d,this.colTrie,S,U);for(let p=0;p<f;p++){let $=z[p];for(let B=0;B<I;B++){let q=U[B],j=$*67108864+q,g=N.get(j);if(g===void 0){if(g=x++,N.set(j,g),g>=M.length){let A=g*2,m=new Float64Array(A);m.set(M),M=m;let P=new Float64Array(A*h);P.set(y),y=P;let T=new Int32Array(A*h);if(T.set(X),X=T,V){let F=new Float64Array(A*h);F.set(V),V=F;}if(C){let F=new Float64Array(A*h);F.fill(1/0),F.set(C),C=F;}if(b){let F=new Float64Array(A*h);F.fill(-1/0),F.set(b),b=F;}}M[g]=j;}for(let A=0;A<h;A++){let m=g*h+A,P=c*h+A;switch(D[A]){case "sum":y[m]+=this.leafGroupMeasures[P];break;case "count":y[m]+=this.leafGroupCounts[P];break;case "avg":y[m]+=this.leafGroupMeasures[P],V[m]+=this.leafGroupCounts[P];break;case "min":{let T=this.leafGroupMins[P];T<C[m]&&(C[m]=T);break}case "max":{let T=this.leafGroupMaxes[P];T>b[m]&&(b[m]=T);break}case "distinct":{let T=this.leafGroupDistinctSets.get(P);if(T){let F=k.get(m);F||(F=new Set,k.set(m,F));for(let ie of T)F.add(ie);}break}default:y[m]+=this.leafGroupMeasures[P];break}X[m]+=1;}}}}for(let c=0;c<x;c++)for(let s=0;s<h;s++){let d=c*h+s;switch(D[s]){case "avg":y[d]=V[d]>0?y[d]/V[d]:0;break;case "min":y[d]=C[d]!==1/0?C[d]:0;break;case "max":y[d]=b[d]!==-1/0?b[d]:0;break;case "distinct":{let f=k.get(d);y[d]=f?f.size:0;break}}}let Q=M.slice(0,x),W=y.slice(0,x*h),Y=X.slice(0,x*h),H=(c,s,d,f,I)=>{let p=[];for(let B=0;B<f.length;B++)p[B]=f[B]?.id||"";let $=B=>{let q=c.childrenMap.get(B);if(!q)return [];let j=[];for(let g of q.values())if(s[g]){let A=c.nodeToDepth[g]-1,m=d[g]===1;j.push({key:I[g],value:this.dictionary[c.nodeToVal[g]],fieldId:p[A]||"",children:m?$(g):[],isExpanded:m,isTotal:false,depth:A,hasChildren:c.nodeChildCount[g]>0});}return j};return $(0)},Z=H(this.rowTrie,v,r,this.rowFields,n),G=H(this.colTrie,S,u,this.colFields,t);return {id:e.id,rowTree:Z,colTree:G,cellMatrix:{keys:Q,sums:W,counts:Y},rowIndexMap:this.rowIndexMapCache,columnIndexMap:this.columnIndexMapCache,cardinalityMap:this.cardinalityMap,indexMapsVersion:this.buildVersion}}};var O=new ee,ne=-1;self.onmessage=te=>{let e=te.data;try{if(e.action==="init")O.init(e),self.postMessage({id:e.id,isInitComplete:!0});else if(e.action==="initStart")O.initStart(e);else if(e.action==="initChunk")O.initChunk(e);else if(e.action==="initEnd")O.initEnd(),self.postMessage({id:e.id,isInitComplete:!0});else if(e.action==="filter")O.applyFilter(e),self.postMessage({id:e.id,isFilterComplete:!0});else if(e.action==="reconfigure")O.reconfigure(e),self.postMessage({id:e.id,isReconfigureComplete:!0});else if(e.action==="compute"){let n=O.compute(e),t=[n.cellMatrix.keys.buffer,n.cellMatrix.sums.buffer,n.cellMatrix.counts.buffer];if(n.indexMapsVersion!==void 0&&n.indexMapsVersion===ne){let r={...n,rowIndexMap:void 0,columnIndexMap:void 0,cardinalityMap:void 0,indexMapsOmitted:!0};postMessage(r,t);}else n.indexMapsVersion!==void 0&&(ne=n.indexMapsVersion),postMessage(n,t);}}catch(n){self.postMessage({id:e.id,error:n instanceof Error?n.message:String(n)});}};',Gt='self.onmessage=async n=>{let{type:e,chunkId:c,chunk:s,fields:a,format:t,isFirstChunk:r,isLastChunk:o,locale:i}=n.data;if(e==="process_chunk")try{if(t==="csv"){let l=w(s,a,r,i);self.postMessage({type:"chunk_done",chunkId:c,format:"csv",payload:l});}else if(t==="excel-xml"){let l=T(s,a,r,o,i);self.postMessage({type:"chunk_done",chunkId:c,format:"excel-xml",payload:l});}}catch(l){self.postMessage({type:"error",chunkId:c,error:l instanceof Error?l.message:String(l)});}};var y=new Map,S=new Map;function h(n){if(!n||typeof n!="object")return false;let e=n;return "year"in e||"month"in e||"day"in e||"weekday"in e||"hour"in e||"minute"in e||"second"in e||"dateStyle"in e||"timeStyle"in e}var k={year:"numeric",month:"2-digit",day:"2-digit"};function x(n,e,c){let s=n instanceof Date?n:new Date(n);if(isNaN(s.getTime()))return String(n);try{let a=h(e?.format)?e.format:k,t=JSON.stringify(a)+"_"+c,r=S.get(t);return r||(r=new Intl.DateTimeFormat(c,a),S.set(t,r)),r.format(s)}catch{return String(n)}}function d(n,e,c="tr-TR"){if(n==null)return "";if(e?.dataType==="date"&&n!=="")return x(n,e,c);if(e&&e.format&&typeof n=="number")try{let s=e.format,a=JSON.stringify(s)+"_"+c,t=y.get(a);t||(t=new Intl.NumberFormat(c,s),y.set(a,t));let r=t.format(n);return s.isCustom&&(s.prefix||s.suffix)?`${s.prefix||""}${r}${s.suffix||""}`:r}catch{return String(n)}return String(n)}function w(n,e,c,s){let a="",t=e.map(r=>{let o=r.dataField||r.id;return typeof o=="string"?o:null});if(c){let r=e.map(o=>o.caption||o.id);a+=r.map(F).join(",")+`\n`;}for(let r of n){let o=new Array(t.length);for(let i=0;i<t.length;i++){let l=t[i],f=l?r[l]??"":"",u=d(f,e[i],s);typeof f=="string"&&(u=D(u)),o[i]=u;}a+=o.map(F).join(",")+`\n`;}return a}function D(n){return n.length>0&&/^[=+\\-@\\t\\r]/.test(n)?"\'"+n:n}function F(n){if(n==null)return "";let e=String(n);return e.includes(",")||e.includes(\'"\')||e.includes(`\n`)?`"${e.replace(/"/g,\'""\')}"`:e}function T(n,e,c,s,a){let t="",r=e.map(o=>{let i=o.dataField||o.id;return typeof i=="string"?i:null});c&&(t+=`<?xml version="1.0" encoding="UTF-8"?>\n`,t+=`<?mso-application progid="Excel.Sheet"?>\n`,t+=`<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">\n`,t+=` <Styles>\n`,t+=` <Style ss:ID="HeaderStyle">\n`,t+=` <Font ss:Bold="1" ss:Color="#FFFFFF"/>\n`,t+=` <Interior ss:Color="#4F81BD" ss:Pattern="Solid"/>\n`,t+=` </Style>\n`,t+=` </Styles>\n`,t+=` <Worksheet ss:Name="Data">\n`,t+=` <Table>\n`,t+=` <Row>\n`,e.forEach(o=>{t+=` <Cell ss:StyleID="HeaderStyle"><Data ss:Type="String">${g(o.caption||o.id||"")}</Data></Cell>\n`;}),t+=` </Row>\n`);for(let o of n){t+=` <Row>\n`;for(let i=0;i<r.length;i++){let l=r[i],f=l?o[l]:void 0,u=e[i],m="String",p="";if(f==null||f===""){t+=` <Cell></Cell>\n`;continue}else u?.dataType==="date"?(m="String",p=g(d(f,u,a))):typeof f=="number"?u&&u.format?(p=g(d(f,u,a)),m="String"):(m="Number",p=String(f)):(m="String",p=g(String(f)));t+=` <Cell><Data ss:Type="${m}">${p}</Data></Cell>\n`;}t+=` </Row>\n`;}return s&&(t+=` </Table>\n`,t+=` </Worksheet>\n`,t+="</Workbook>"),t}function g(n){return n?n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/\'/g,"'"):""}',Wt='function T(e){return e.charCodeAt(0)===65279?e.slice(1):e}function S(e){return typeof e.text=="function"?e.text():new Promise((t,n)=>{let r=new FileReader;r.onload=i=>t(i.target?.result??""),r.onerror=()=>n(new Error("Dosya okuma hatas\\u0131.")),r.readAsText(e,"utf-8");})}function N(e){let t=[",",";"," ","|"],n=T(e).split(/\\r\\n|\\r|\\n/).filter(s=>s.length>0).slice(0,5);if(n.length===0)return ",";let r=",",i=-1;for(let s of t){let a=n.map(d=>W(d,s)),o=a.reduce((d,f)=>d+f,0);if(o===0)continue;let l=a[0],u=a.every(d=>d===l),c=o+(u?100:0)+l*10;c>i&&(i=c,r=s);}return r}function W(e,t){let n=0,r=false;for(let i=0;i<e.length;i++){let s=e[i];if(s===\'"\'){if(r&&e[i+1]===\'"\'){i++;continue}r=!r;}else !r&&s===t&&n++;}return n}function L(e,t,n){let r=T(e),i=t||N(r),s=[],a="",o=[],l=false,u=false,c=r.length,d=n?Math.max(1<<18,Math.ceil(c/100)):0,f=d;for(let g=0;g<r.length;g++){d&&g>=f&&(n(g/c),f+=d);let p=r[g];if(l){p===\'"\'?r[g+1]===\'"\'?(a+=\'"\',g++):l=false:a+=p;continue}p===\'"\'?(l=true,u=true):p===i?(o.push(a),a="",u=true):p===`\n`||p==="\\r"?(p==="\\r"&&r[g+1]===`\n`&&g++,o.push(a),s.push(o),o=[],a="",u=false):(a+=p,u=true);}return (u||a.length>0||o.length>0)&&(o.push(a),s.push(o)),n&&n(1),s}var A=new Set(["true","yes","evet","do\\u011Fru","dogru"]),F=new Set(["false","no","hay\\u0131r","hayir","yanl\\u0131\\u015F","yanlis"]);function B(e){let t=e.trim().toLowerCase();return A.has(t)||F.has(t)}function X(e){if(typeof e=="boolean")return e;let t=String(e).trim().toLowerCase();return A.has(t)||t==="1"||t==="y"||t==="on"?true:F.has(t)||t==="0"||t==="n"||t==="off"?false:null}function z(e){return /^0\\d+$/.test(e)}var Y=/[\u20BA$\u20AC\xA3\xA5]/g,K=/[\\s\xA0\u202F]/g;function _(e){if(typeof e=="number")return isNaN(e)?null:e;let t=String(e).trim();if(!t)return null;t=t.replace(K,"").replace(Y,"");let n=false;t.endsWith("%")&&(n=true,t=t.slice(0,-1));let r=false;if(/^\\(.*\\)$/.test(t)&&(r=true,t=t.slice(1,-1)),!/^[+-]?[0-9.,]*[0-9][0-9.,]*$/.test(t))return null;let i=t.includes("."),s=t.includes(",");if(i&&s)t.lastIndexOf(",")>t.lastIndexOf(".")?t=t.replace(/\\./g,"").replace(",","."):t=t.replace(/,/g,"");else if(s){let o=t.split(",");o.length===2&&o[1].length!==3?t=t.replace(",","."):t=t.replace(/,/g,"");}else i&&t.split(".").length>2&&(t=t.replace(/\\./g,""));let a=Number(t);return isNaN(a)?null:(r&&(a=-a),n&&(a=a/100),a)}var H=/^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}(:\\d{2})?(\\.\\d+)?(Z|[+-]\\d{2}:?\\d{2})?)?$/,Z=/^(\\d{4})[/.](\\d{1,2})[/.](\\d{1,2})$/,U=/^(\\d{1,2})[/.\\-](\\d{1,2})[/.\\-](\\d{4})$/;function D(e){if(e instanceof Date)return isNaN(e.getTime())?null:e;let t=String(e).trim();if(!t)return null;if(H.test(t)){let i=new Date(t.replace(" ","T"));return isNaN(i.getTime())?null:i}let n=Z.exec(t);if(n){let i=new Date(+n[1],+n[2]-1,+n[3]);return R(i,+n[1],+n[2],+n[3])?i:null}let r=U.exec(t);if(r){let i=+r[1],s=+r[2],a=+r[3],o,l;i>12&&s<=12?(o=i,l=s):s>12&&i<=12?(o=s,l=i):(o=i,l=s);let u=new Date(a,l-1,o);return R(u,a,l,o)?u:null}return null}function R(e,t,n,r){return !isNaN(e.getTime())&&e.getFullYear()===t&&e.getMonth()===n-1&&e.getDate()===r}function V(e){if(e==null||e==="")return "blank";if(typeof e=="boolean")return "boolean";if(typeof e=="number")return isNaN(e)?"blank":"number";if(e instanceof Date)return isNaN(e.getTime())?"blank":"date";let t=String(e).trim();return t===""?"blank":B(t)?"boolean":z(t)?"string":D(t)?"date":_(t)!==null?"number":"string"}function y(e){let t={string:0,number:0,date:0,boolean:0};for(let i of e){let s=V(i);s!=="blank"&&t[s]++;}let n="string",r=0;return Object.keys(t).forEach(i=>{t[i]>r&&(r=t[i],n=i);}),n}function v(e,t){if(e==null||e==="")return null;switch(t){case "number":return _(e);case "date":return D(e)??(e instanceof Date?e:null);case "boolean":return X(e);default:return e}}var Q=new Set(["__proto__","constructor","prototype"]);function x(e){return Q.has(e)?`${e}_`:e}var E=200,M=2e4;function G(e){let t=new Map;return e.map(n=>{let r=t.get(n)??0;return t.set(n,r+1),x(r===0?n:`${n}_${r+1}`)})}function O(e,t){if(e.length===0)return [];let n=[],r=new Set,i=Math.min(e.length,500);for(let o=0;o<i;o++){let l=e[o];if(!(!l||typeof l!="object"))for(let u of Object.keys(l))r.has(u)||(r.add(u),n.push(u));}let s=new Map;for(let o of n){let l=[];for(let u=0;u<e.length&&l.length<E;u++){let c=e[u]?.[o];c!=null&&String(c).trim()!==""&&l.push(c);}s.set(o,y(l));}let a=new Array(e.length);for(let o=0;o<e.length;o++){let l=e[o]||{},u={};for(let c of n){let d=l[c];u[x(c)]=d==null||d===""?null:v(d,s.get(c));}a[o]=u;}return a}function I(e,t){let n=T(e);if(!n.trim())return [];let r=N(n),i=L(n,r,t?c=>t({phase:"parsing",percent:Math.round(c*60)}):void 0);if(i.length===0)return [];let s=0;for(;s<i.length&&i[s].every(c=>c.trim()==="");)s++;if(s>=i.length)return [];let a=G(i[s].map((c,d)=>c.trim()||`Column${d+1}`)),o=i.slice(s+1).filter(c=>!(c.length===1&&c[0].trim()==="")),l=a.map((c,d)=>{let f=[];for(let g=0;g<o.length&&f.length<E;g++){let p=o[g][d];p!==void 0&&p.trim()!==""&&f.push(p);}return y(f)}),u=new Array(o.length);for(let c=0;c<o.length;c++){let d=o[c],f={};for(let g=0;g<a.length;g++){let p=d[g];f[a[g]]=p===void 0||p===""?null:v(p,l[g]);}u[c]=f,t&&c>0&&c%M===0&&t({phase:"typing",percent:60+Math.round(c/o.length*40)});}return t&&t({phase:"typing",percent:100}),u}var b=class e{supports(t){return t.name.split(".").pop()?.toLowerCase()==="xml"||t.type==="application/xml"||t.type==="text/xml"}async read(t){let n=await S(t);return e.parse(n)}static parse(t){if(!t||!t.trim())return [];let n=q(t),i=tt(n).map(et).filter(s=>Object.keys(s).length>0);return O(i)}};function q(e){let t={tag:"#root",attrs:{},children:[],text:"",parent:null},n=t,r=0,i=e.length;for(;r<i;){let s=e.indexOf("<",r);if(s===-1){n.text+=e.slice(r);break}if(s>r&&(n.text+=e.slice(r,s)),e.startsWith("<!--",s)){let f=e.indexOf("-->",s+4);r=f===-1?i:f+3;continue}if(e.startsWith("<![CDATA[",s)){let f=e.indexOf("]]>",s+9);n.text+=e.slice(s+9,f===-1?i:f),r=f===-1?i:f+3;continue}if(e.startsWith("<?",s)){let f=e.indexOf("?>",s+2);r=f===-1?i:f+2;continue}if(e.startsWith("<!",s)){let f=e.indexOf(">",s+2);r=f===-1?i:f+1;continue}let a=e.indexOf(">",s+1);if(a===-1)break;let o=e.slice(s+1,a).trim();if(o.startsWith("/")){let f=o.slice(1).trim(),g=n;for(;g&&g.tag!==f;)g=g.parent;g&&g.parent&&(n=g.parent),r=a+1;continue}let l=o.endsWith("/");l&&(o=o.slice(0,-1).trim());let{name:u,attrs:c}=J(o),d={tag:u,attrs:c,children:[],text:"",parent:n};n.children.push(d),l||(n=d),r=a+1;}return t}var P=/([^\\s=/]+)\\s*=\\s*(?:"([^"]*)"|\'([^\']*)\')/g;function J(e){let t=e.search(/\\s/),n=(t===-1?e:e.slice(0,t)).trim(),r={};if(t!==-1){let i=e.slice(t+1),s;for(P.lastIndex=0;(s=P.exec(i))!==null;)r[s[1]]=C(s[2]??s[3]??"");}return {name:n,attrs:r}}function tt(e){let t=e.children[0];if(!t)return [];let n=t.children;return n.length===0?[]:n.some(i=>i.children.length>0||Object.keys(i.attrs).length>0)?n:[t]}function et(e){let t={},n=new Map,r=(i,s)=>{let a=i||"value",o=n.get(a)??0;n.set(a,o+1),t[x(o===0?a:`${a}_${o+1}`)]=s;};for(let[i,s]of Object.entries(e.attrs))r(i,s);if(e.children.length===0){let i=e.text.trim();i&&r(e.tag,C(i));}else for(let i of e.children)r(i.tag,C($(i).trim()));return t}function $(e){if(e.children.length===0)return e.text;let t=e.text;for(let n of e.children)t+=$(n);return t}var nt=/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,rt={amp:"&",lt:"<",gt:">",quot:\'"\',apos:"\'",nbsp:"\\xA0"};function C(e){return e.indexOf("&")===-1?e:e.replace(nt,(t,n)=>{if(n[0]==="#"){let r=n[1]==="x"||n[1]==="X"?parseInt(n.slice(2),16):parseInt(n.slice(1),10);return Number.isFinite(r)?String.fromCodePoint(r):t}return rt[n]??t})}var h=class{static extractFieldsFromData(t,n=50){if(!t||t.length===0)return [];let r=[],i=Math.max(n,50),s=this.collectKeys(t,i),a=false,o=false;return s.forEach(l=>{let u=this.inferType(t,l,n),c="chooser";!a&&this.isAutoRowCandidate(t,l,u,i)?(c="row",a=true):!o&&this.isAutoDataCandidate(l,u)&&(c="data",o=true);let d={id:`f_${l}`,dataField:l,caption:this.formatCaption(l),dataType:u,area:c,areaIndex:0};u==="number"?d.summaryType="sum":u==="date"&&(d.groupInterval="month"),r.push(d);}),r}static buildFieldsFromPlan(t,n,r=50){let i=[],s=false,a=false,o=Math.max(r,50);for(let l of t){let u="chooser";!s&&this.isAutoRowCandidate(n,l.dataField,l.dataType,o)?(u="row",s=true):!a&&this.isAutoDataCandidate(l.dataField,l.dataType)&&(u="data",a=true);let c={id:`f_${l.dataField}`,dataField:l.dataField,caption:l.caption,dataType:l.dataType,area:u,areaIndex:0};l.dataType==="number"?c.summaryType="sum":l.dataType==="date"&&(c.groupInterval="month"),i.push(c);}return i}static isAutoRowCandidate(t,n,r,i){return !(n.startsWith("__EMPTY")||r!=="string"&&r!=="date"||this.isIdentifierLikeKey(n)||r==="string"&&t&&this.isHighCardinalityStringColumn(t,n,i))}static isAutoDataCandidate(t,n){return n==="number"&&!t.startsWith("__EMPTY")&&!this.isIdentifierLikeKey(t)}static isHighCardinalityStringColumn(t,n,r){let i=Math.min(t.length,r),s=new Set,a=0;for(let o=0;o<i;o++){let l=t[o]?.[n];l==null||l===""||(a++,s.add(String(l)));}return a<20?false:s.size/a>=.9}static isIdentifierLikeKey(t){let n=t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase(),r=n.replace(/[^a-z0-9]/g,"");return r==="id"||r==="uuid"||r==="guid"||r==="key"?true:/(^|[\\s_.-])(id|uuid|guid|key)($|[\\s_.-])/.test(n)}static collectKeys(t,n){let r=[],i=new Set,s=Math.min(t.length,n);for(let a=0;a<s;a++){let o=t[a];if(!(!o||typeof o!="object"))for(let l of Object.keys(o))i.has(l)||(i.add(l),r.push(l));}return r}static inferType(t,n,r){let i=Math.min(t.length,r),s=new Array(i);for(let a=0;a<i;a++)s[a]=t[a]?.[n];return y(s)}static formatCaption(t){return t.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,n=>n.toUpperCase()).trim()}};var k=self;k.onmessage=async e=>{let t=e.data;if(!t||t.type!=="parse")return;let{jobId:n,kind:r,file:i}=t;try{if(r==="csv"){m(n,"reading",3);let s=await i.text(),a=I(s,l=>{m(n,l.phase,5+Math.round(l.percent*.92));});m(n,"finalizing",98);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});return}if(r==="xml"){m(n,"reading",10);let s=await i.text();m(n,"parsing",50);let a=b.parse(s);m(n,"finalizing",90);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});return}if(r==="json"){m(n,"reading",10);let s=await i.text();m(n,"parsing",45);let a=JSON.parse(s);if(Array.isArray(a)){m(n,"finalizing",90);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});}else w(n,{mode:"raw",value:a});return}j(n,`Desteklenmeyen i\\xE7e aktarma t\\xFCr\\xFC: ${String(r)}`);}catch(s){j(n,s instanceof Error?s.message:String(s));}};function m(e,t,n){k.postMessage({type:"progress",jobId:e,phase:t,percent:n});}function w(e,t){k.postMessage({type:"done",jobId:e,payload:t});}function j(e,t){k.postMessage({type:"error",jobId:e,message:t});}';var Ht={pivot:zt,export:Gt,import:Wt},_t={};function $r(i){return Ht[i].length>0}function Kr(i){let e=_t[i];if(e)return e;if(!$r(i))throw new Error(`[pivotgrid] this build carries no embedded ${i} worker (the build step that inlines it did not run).`);if(typeof Blob>"u"||typeof URL?.createObjectURL!="function")throw new Error("[pivotgrid] Blob URLs are unavailable, so the embedded worker cannot start.");let t=URL.createObjectURL(new Blob([Ht[i]],{type:"text/javascript"}));return _t[i]=t,t}function ce(i,e){try{return new Worker(Kr(i),{type:"module"})}catch{return new Worker(e(),{type:"module"})}}var de=class i{static jobCounter=0;static isSupported(){return typeof Worker<"u"}parseFile(e,t,r={}){let{onProgress:o,signal:n}=r;return new Promise((a,u)=>{let s;try{s=ce("import",()=>{let m=()=>"./import.worker.js";return new URL(m(),import.meta.url)});}catch(m){u(m instanceof Error?m:new Error(String(m)));return}let l=`imp_${++i.jobCounter}`,c=false,d=()=>{try{s.terminate();}catch{}n?.removeEventListener("abort",p);},p=()=>{c||(c=true,d(),u(new DOMException("Import aborted","AbortError")));};if(n){if(n.aborted){p();return}n.addEventListener("abort",p);}s.onmessage=m=>{let f=m.data;if(!(!f||f.jobId!==l)){if(f.type==="progress")o?.({phase:f.phase,percent:f.percent});else if(f.type==="done"){if(c)return;c=true,d(),a(f.payload);}else if(f.type==="error"){if(c)return;c=true,d(),u(new Error(f.message||"Import worker error"));}}},s.onerror=m=>{c||(c=true,d(),u(new Error(`Import worker error: ${m.message||"unknown"}`)));},s.postMessage({type:"parse",jobId:l,kind:t,file:e});})}};var jr=500*1024*1024,Yr={version:"1.0.0",type:"DATA_ONLY",timestamp:"",data:[],fields:[]},ve=class{readers=[new Ce,new Be,new ye,new ke];maxFileSizeBytes;stream=new de;constructor(e){this.maxFileSizeBytes=e?.maxFileSizeBytes??jr;}async processFile(e){this.assertSize(e);let t=this.readers.find(o=>o.supports(e));if(!t)throw new Error("Desteklenmeyen dosya format\u0131.");let r=await t.read(e);return this.buildFromContent(r)}async processFileStreaming(e,t={}){let{onProgress:r,signal:o}=t;if(this.assertSize(e),o?.aborted)return this.cancelledResult();let n=this.workerKind(e);if(n&&de.isSupported())try{let s=await this.stream.parseFile(e,n,{onProgress:r,signal:o});return s.mode==="data"?this.buildDataResult(s.data,s.fields):this.buildFromContent(s.value)}catch(s){return this.isAbort(s)||o?.aborted?this.cancelledResult():this.processFile(e)}r?.({phase:"parsing",percent:10});let a=this.readers.find(s=>s.supports(e));if(!a)throw new Error("Desteklenmeyen dosya format\u0131.");if(o?.aborted)return this.cancelledResult();let u=await a.read(e);return o?.aborted?this.cancelledResult():(r?.({phase:"finalizing",percent:100}),this.buildFromContent(u))}async processFromData(e,t={}){return t.signal?.aborted?this.cancelledResult():(t.onProgress?.({phase:"finalizing",percent:100}),this.buildDataResult(Array.isArray(e)?e:[]))}async processFromText(e,t={}){if(t.signal?.aborted)return this.cancelledResult();t.onProgress?.({phase:"parsing",percent:20});let r=ge(e);return t.signal?.aborted?this.cancelledResult():(t.onProgress?.({phase:"finalizing",percent:100}),this.buildDataResult(r))}async processFromUrl(e,t={}){let{onProgress:r,signal:o,fetchInit:n}=t;if(o?.aborted)return this.cancelledResult();r?.({phase:"reading",percent:2});let a;try{a=await fetch(e,{...n,signal:o});}catch(d){if(this.isAbort(d)||o?.aborted)return this.cancelledResult();throw new Error(`URL getirilemedi: ${d instanceof Error?d.message:String(d)}`)}if(!a.ok)throw new Error(`URL getirilemedi (HTTP ${a.status} ${a.statusText}).`);let u=await a.blob(),s=a.headers.get("content-type")||u.type||"",l=Xr(e,s),c=new File([u],l,{type:u.type||s});return this.processFileStreaming(c,{onProgress:r,signal:o})}async processFiles(e,t={}){let r=Array.from(e);if(r.length===0)return this.buildDataResult([]);if(r.length===1)return this.processFileStreaming(r[0],t);let{onProgress:o,signal:n}=t,a=[],u=new Set;for(let l=0;l<r.length;l++){if(n?.aborted)return this.cancelledResult();let c=await this.processFileStreaming(r[l],{signal:n,onProgress:d=>o?.({phase:d.phase,percent:Math.round((l+d.percent/100)/r.length*100)})});if(c.cancelled)return this.cancelledResult();Array.isArray(c.snapshot?.data)&&a.push(...c.snapshot.data),c.validation.warnings.forEach(d=>u.add(d));}let s=this.buildDataResult(a);return u.forEach(l=>{s.validation.warnings.includes(l)||s.validation.warnings.push(l);}),s}assertSize(e){if(this.maxFileSizeBytes>0&&e.size>this.maxFileSizeBytes){let t=(this.maxFileSizeBytes/1048576).toFixed(0);throw new Error(`Dosya \xE7ok b\xFCy\xFCk (limit: ${t} MB). L\xFCtfen daha k\xFC\xE7\xFCk bir dosya y\xFCkleyin veya limiti art\u0131r\u0131n.`)}}workerKind(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="csv"||t==="tsv"||t==="txt"||e.type==="text/csv"||e.type==="text/tab-separated-values"?"csv":t==="json"||e.type==="application/json"?"json":t==="xml"||e.type==="application/xml"||e.type==="text/xml"?"xml":null}isAbort(e){return e instanceof DOMException&&e.name==="AbortError"}cancelledResult(){return {snapshot:Yr,validation:{isValid:false,errors:[],warnings:[]},cancelled:true}}buildFromContent(e){if(Array.isArray(e))return this.buildDataResult(e);let t=e,r=le.validateSnapshot(t);if(t.data&&t.fields){let o=le.validateDataAgainstFields(t.data,t.fields);r.warnings.push(...o.warnings);}return {snapshot:t,validation:r}}buildDataResult(e,t){let r=Je(e),o=t??te.extractFieldsFromData(r),n={version:"1.0.0",type:"DATA_ONLY",timestamp:new Date().toISOString(),data:r,fields:o},a=le.validateSnapshot(n);return o.some(s=>s.dataField?.toString().startsWith("__EMPTY"))&&a.warnings.push('Bu dosya ham veri (Raw Data) de\u011Fil, g\xF6rsel "Pivot View" format\u0131nda d\u0131\u015Fa aktar\u0131lm\u0131\u015F bir Excel gibi g\xF6r\xFCn\xFCyor. PivotGrid yaln\u0131zca d\xFCz liste (List View) \u015Feklindeki verileri anlamland\u0131rabilir. Bu nedenle veriler bozuk g\xF6r\xFCnebilir.'),{snapshot:n,validation:a}}};function Xr(i,e){let t="download";try{let a=new URL(i,"http://localhost").pathname.split("/").filter(Boolean).pop();a&&(t=a);}catch{}if(/\.(csv|tsv|txt|json|xml|xlsx|xls)$/i.test(t))return t;let r=e.toLowerCase(),o="csv";return r.includes("json")?o="json":r.includes("xml")?o="xml":r.includes("spreadsheet")||r.includes("excel")||r.includes("officedocument")?o="xlsx":r.includes("tab-separated")?o="tsv":r.includes("csv")&&(o="csv"),`${t}.${o}`}function Ne(i,e){return {kind:e,dataField:i.dataField,dataType:i.dataType,groupInterval:i.groupInterval,isCalculated:i.isCalculated,formulaString:i.formulaString,calcExpr:i.calculateExpression}}function Zr(i,e){return i?i.kind===e.kind&&i.dataField===e.dataField&&i.dataType===e.dataType&&i.groupInterval===e.groupInterval&&!!i.isCalculated==!!e.isCalculated&&i.formulaString===e.formulaString&&i.calcExpr===e.calcExpr:false}var re=new Map,oe="default";function rt(i,e){let t=re.get(i);if(t&&t.pendingTermination&&(clearTimeout(t.pendingTermination),t.pendingTermination=null),!t){let r=e?new Worker(e,{type:"module"}):ce("pivot",()=>{let a=()=>"./pivot.worker.js";return new URL(a(),import.meta.url)}),o=new Map,n={worker:r,resolvers:o,messageIdCounter:0,stringToInt:new Map,dictionary:[""],fieldDistinctValues:new Map,encodedColumns:new Map,encodedRowCount:-1,sourceData:null,initInFlight:null,pendingTermination:null,lastRowIndexMap:null,lastColumnIndexMap:null,lastCardinalityMap:null};r.onmessage=a=>{let{id:u,error:s,isInitComplete:l,isFilterComplete:c,isReconfigureComplete:d,rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:y,columnIndexMap:g,cardinalityMap:C,indexMapsOmitted:x}=a.data,w=o.get(u);w&&(s?w.reject(new Error(`Worker Error: ${s}`)):l?w.resolve({isInitComplete:true}):c?w.resolve({isFilterComplete:true}):d?w.resolve({isReconfigureComplete:true}):x?w.resolve({rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:n.lastRowIndexMap||{},columnIndexMap:n.lastColumnIndexMap||{},cardinalityMap:n.lastCardinalityMap||{}}):(n.lastRowIndexMap=y,n.lastColumnIndexMap=g,n.lastCardinalityMap=C,w.resolve({rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:y,columnIndexMap:g,cardinalityMap:C})),o.delete(u));},r.onerror=a=>{let u=a.message||"Worker failed to load or crashed";for(let s of o.values())s.reject(new Error(u));o.clear();},t=n,re.set(i,t);}return t}function ie(i){oe=i;}var qr=5e3;function ot(i){let e=re.get(i);e&&(e.pendingTermination&&clearTimeout(e.pendingTermination),e.pendingTermination=setTimeout(()=>{e.worker.terminate(),e.resolvers.clear(),re.delete(i);},qr));}var Q=5e4,Ut=[],Ve=null;function Oe(){return typeof MessageChannel>"u"?new Promise(i=>setTimeout(i,0)):(Ve||(Ve=new MessageChannel,Ve.port1.onmessage=()=>{Ut.shift()?.();}),new Promise(i=>{Ut.push(i),Ve.port2.postMessage(null);}))}function tt(i,e){return i.isCalculated&&typeof i.calculateExpression=="string"&&e?{...i,calculateExpression:e.resolveSafe(i.calculateExpression,"expression")}:i}async function Jr(i,e,t){let r=e.length,o=r>Q,n=new Int32Array(r),a=new Map;for(let s=0;s<r;s+=Q){let l=Math.min(s+Q,r);for(let c=s;c<l;c++){let d=j(e[c],i),p=String(d);n[c]=t(p),a.has(p)||a.set(p,d);}o&&l<r&&await Oe();}let u=Array.from(a,([s,l])=>({rawStr:s,rawVal:l}));return i.dataType==="number"?u.sort((s,l)=>Number(s.rawVal)-Number(l.rawVal)):u.sort((s,l)=>s.rawStr.localeCompare(l.rawStr)),{array:n,distinct:u}}async function Qr(i,e){let t=e.length,r=t>Q,o=new Float64Array(t);for(let n=0;n<t;n+=Q){let a=Math.min(n+Q,t);for(let u=n;u<a;u++){let s=j(e[u],i);i.isCalculated&&typeof i.calculateExpression=="function"&&(s=i.calculateExpression(e[u])),o[u]=Number(s)||0;}r&&a<t&&await Oe();}return o}function eo(i,e,t){let r=i.map(u=>({field:u,fastPath:!u.isCalculated&&!u.groupInterval&&!!u.dataField,dataField:u.dataField,valCache:new Map,distinctMap:new Map})),o=e.map(u=>({field:u,fastPath:!u.isCalculated&&!u.groupInterval&&!!u.dataField,dataField:u.dataField})),n=r.length,a=o.length;return {async encodeRange(u,s,l){let c=l-s,d=r.map(()=>new Int32Array(c)),p=o.map(()=>new Float64Array(c));for(let m=s;m<l;m+=Q){let f=Math.min(m+Q,l);for(let y=m;y<f;y++){let g=u[y],C=y-s;for(let x=0;x<n;x++){let w=r[x],h;if(w.fastPath){let F=g[w.dataField];h=F??"(Blank)";}else h=j(u[y],w.field);if(typeof h=="object"){let F=String(h);d[x][C]=t(F),w.distinctMap.has(F)||w.distinctMap.set(F,h);}else {let F=w.valCache.get(h);if(F===void 0){let v=String(h);F=t(v),w.valCache.set(h,F),w.distinctMap.has(v)||w.distinctMap.set(v,h);}d[x][C]=F;}}for(let x=0;x<a;x++){let w=o[x];if(w.fastPath){let h=g[w.dataField];p[x][C]=h==null?0:Number(h)||0;}else {let h=j(u[y],w.field);w.field.isCalculated&&typeof w.field.calculateExpression=="function"&&(h=w.field.calculateExpression(u[y])),p[x][C]=Number(h)||0;}}}f<l&&await Oe();}return {groupArrays:d,measureArrays:p}},finalizeDistincts(){let u=new Map;for(let s of r){let l=Array.from(s.distinctMap,([c,d])=>({rawStr:c,rawVal:d}));s.field.dataType==="number"?l.sort((c,d)=>Number(c.rawVal)-Number(d.rawVal)):l.sort((c,d)=>c.rawStr.localeCompare(d.rawStr)),u.set(s.field.id,l);}return u}}}var pe=i=>i.map(e=>({...e,dataField:e.id,calculateExpression:void 0,calculateSummaryExpression:void 0,calculateCustomSummary:void 0,calculateCustomSort:void 0,format:void 0,conditionalFormatting:void 0,cellTemplate:void 0})),$t=25e4;function to(i){let e=[];for(let t of i){if(!t.filterValues||t.filterValues.size===0)continue;let r=new Set,o=[];for(let n of t.filterValues)for(let a of Kt(n))r.has(a)||(r.add(a),o.push(a));e.push({fieldId:t.id,filterType:t.filterType||"include",valueStrings:o});}return e.length>0?e:void 0}async function it(i,e,t,r,o,n,a){let u=re.get(oe);if(u&&(u.pendingTermination&&(clearTimeout(u.pendingTermination),u.pendingTermination=null),!a?.forceReencode&&(u.initInFlight&&u.initInFlight.data===i&&await u.initInFlight.promise.catch(()=>{}),u.sourceData===i&&u.encodedRowCount===i.length&&await Le(i,e,t,r,o))))return {filtersApplied:false};let s=rt(oe,n),l=ro(s,i,e,t,r,o,a?.filterState);s.initInFlight={data:i,promise:l};try{return await l}finally{s.initInFlight&&s.initInFlight.promise===l&&(s.initInFlight=null);}}async function ro(i,e,t,r,o,n,a){let u=[...t,...r],s=e.length,l=new Map,c=[""],d=v=>{let B=l.get(v);return B===void 0&&(B=c.length,l.set(v,B),c.push(v)),B},p=u.map(v=>tt(v,n)),m=o.map(v=>tt(v,n)),f=eo(p,m,d),y=a?to(a.fields):void 0,g=a?.prefilter&&a.prefilter.conditions.length>0?nt(a.prefilter):void 0,C={};for(let v of u)C[v.id]="int32";for(let v of o)C[v.id]="float64";let x=`init_${i.messageIdCounter++}`,w=new Promise((v,B)=>{i.resolvers.set(x,{resolve:v,reject:B});});i.worker.postMessage({action:"initStart",id:x,rowCountTotal:s,columnTypes:C,dictionary:[""],rowFields:pe(t),colFields:pe(r),dataFields:pe(o),filters:y,prefilter:g,workerBootstrap:n?n.getWorkerBootstrapPayload():[]});let h=1;for(let v=0;v<s;v+=$t){let B=Math.min(v+$t,s),{groupArrays:b,measureArrays:R}=await f.encodeRange(e,v,B),A={},P=[];u.forEach((D,M)=>{A[D.id]=b[M].buffer,P.push(b[M].buffer);}),o.forEach((D,M)=>{A[D.id]=R[M].buffer,P.push(R[M].buffer);});let I=h<c.length?c.slice(h):void 0;h=c.length,i.worker.postMessage({action:"initChunk",id:x,start:v,end:B,columns:A,dictionaryAppend:I},P),B<s&&await Oe();}let F=new Map;for(let v of u)F.set(v.id,Ne(v,"int32"));for(let v of o)F.set(v.id,Ne(v,"float64"));return i.stringToInt=l,i.dictionary=c,i.fieldDistinctValues=f.finalizeDistincts(),i.encodedColumns=F,i.encodedRowCount=s,i.sourceData=e,i.worker.postMessage({action:"initEnd",id:x}),await w,{filtersApplied:!!a}}async function Le(i,e,t,r,o){let n=re.get(oe);if(!n||n.encodedRowCount!==i.length||n.encodedRowCount<0)return false;n.pendingTermination&&(clearTimeout(n.pendingTermination),n.pendingTermination=null);let a=[];for(let d of [...e,...t])a.push({field:d,kind:"int32"});for(let d of r)a.push({field:d,kind:"float64"});let u=a.filter(d=>!Zr(n.encodedColumns.get(d.field.id),Ne(d.field,d.kind))),s,l,c=[];if(u.length>0){s={};let d=n.dictionary.length,p=m=>{let f=n.stringToInt.get(m);return f===void 0&&(f=n.dictionary.length,n.stringToInt.set(m,f),n.dictionary.push(m)),f};for(let{field:m,kind:f}of u){let y=tt(m,o);if(f==="int32"){let{array:g,distinct:C}=await Jr(y,i,p);s[m.id]={type:"int32",buffer:g.buffer},c.push(g.buffer),n.fieldDistinctValues.set(m.id,C);}else {let g=await Qr(y,i);s[m.id]={type:"float64",buffer:g.buffer},c.push(g.buffer);}n.encodedColumns.set(m.id,Ne(m,f));}n.dictionary.length>d&&(l=n.dictionary.slice(d));}return new Promise((d,p)=>{let m=`reconfigure_${n.messageIdCounter++}`;n.resolvers.set(m,{resolve:()=>d(true),reject:p}),n.worker.postMessage({action:"reconfigure",id:m,rowFields:pe(e),colFields:pe(t),dataFields:pe(r),newColumns:s,dictionaryAppend:l},c);})}async function Fe(i,e){let t=rt(oe);return new Promise((r,o)=>{let n=[];for(let s of i){if(!s.filterValues||s.filterValues.size===0)continue;let l=[],c=new Set;for(let d of s.filterValues){let p=Kt(d);for(let m of p){let f=t.stringToInt.get(m);f!==void 0&&!c.has(f)&&(c.add(f),l.push(f));}}n.push({fieldId:s.id,filterType:s.filterType||"include",dictIds:l});}let a;e&&e.conditions.length>0&&(a=nt(e));let u=`filter_${t.messageIdCounter++}`;t.resolvers.set(u,{resolve:r,reject:o}),t.worker.postMessage({action:"filter",id:u,filters:n,prefilter:a});})}function Kt(i){if(i==null||i==="(Blank)"||i==="(Blanks)")return ["(Blank)","(Blanks)","null","undefined"];if(i instanceof Date){let e=[String(i)];return Number.isNaN(i.getTime())||e.push(i.toISOString()),e}return [String(i)]}function nt(i){return {logicalOperator:i.logicalOperator||"and",conditions:(i.conditions||[]).map(e=>{if("logicalOperator"in e)return nt(e);let t=e;return {fieldId:t.fieldId,operator:t.operator,value:t.value}})}}async function ze(i,e){let t=rt(oe);return new Promise((r,o)=>{let n=`compute_${t.messageIdCounter++}`;t.resolvers.set(n,{resolve:r,reject:o}),t.worker.postMessage({action:"compute",id:n,expandedPaths:i,expandedColPaths:e});}).then(r=>r)}function oo(i){let e=re.get(oe);return e?e.fieldDistinctValues.get(i)??null:null}function Ge(i,e,t){let{cellMatrix:r}=i,o=e.filter(u=>u.isCalculated&&u.calculateSummaryExpression);if(o.length===0||!r?.keys)return;let n=r.keys.length,a=e.length;for(let u=0;u<n;u++){let s={};for(let l=0;l<a;l++)s[e[l].id]=r.sums[u*a+l];for(let l of o)if(l.calculateSummaryExpression)try{let c=l.calculateSummaryExpression;if(typeof c=="string"&&t&&(c=t.resolveSafe(c,"summary")),typeof c=="function"){let d=c(s),p=e.findIndex(m=>m.id===l.id);p>=0&&(r.sums[u*a+p]=d);}}catch{}}}function We(i,e){let{cellMatrix:t,rowIndexMap:r,columnIndexMap:o,rowTree:n}=i;if(!t?.keys||t.keys.length===0||e.filter(c=>c.summaryDisplayMode&&c.summaryDisplayMode!=="absolute").length===0)return;let u=t.keys.length,s=e.length;t.displaySums=new Float64Array(t.sums);let l=new Map;for(let c=0;c<u;c++)l.set(t.keys[c],c);for(let c=0;c<s;c++){let p=e[c].summaryDisplayMode;if(!(!p||p==="absolute"))switch(p){case "percentOfTotal":io(t,l,u,s,c);break;case "percentOfColumnTotal":no(t,l,u,s,c);break;case "percentOfRowTotal":ao(t,l,u,s,c);break;case "runningTotal":at(t,l,s,c,n,r,o,"runningTotal");break;case "difference":at(t,l,s,c,n,r,o,"difference");break;case "percentDifference":at(t,l,s,c,n,r,o,"percentDifference");break}}}function io(i,e,t,r,o){let n=e.get(0),a=n!==void 0?i.sums[n*r+o]:0;for(let u=0;u<t;u++){let s=i.sums[u*r+o];i.displaySums[u*r+o]=a!==0?s/a*100:0;}}function no(i,e,t,r,o){for(let n=0;n<t;n++){let u=i.keys[n]%67108864,s=e.get(u),l=s!==void 0?i.sums[s*r+o]:0,c=i.sums[n*r+o];i.displaySums[n*r+o]=l!==0?c/l*100:0;}}function ao(i,e,t,r,o){for(let n=0;n<t;n++){let a=i.keys[n],s=Math.floor(a/67108864)*67108864,l=e.get(s),c=l!==void 0?i.sums[l*r+o]:0,d=i.sums[n*r+o];i.displaySums[n*r+o]=c!==0?d/c*100:0;}}function at(i,e,t,r,o,n,a,u){let s=uo(o),l=Object.keys(a);for(let c of l){let d=a[c],p=0,m=null;for(let f of s){let y=n[f];if(y===void 0)continue;let g=y*67108864+d,C=e.get(g);if(C===void 0)continue;let x=i.sums[C*t+r];switch(u){case "runningTotal":p+=x,i.displaySums[C*t+r]=p;break;case "difference":i.displaySums[C*t+r]=m!==null?x-m:x;break;case "percentDifference":i.displaySums[C*t+r]=m!==null&&m!==0?(x-m)/Math.abs(m)*100:0;break}m=x;}}}function uo(i){let e=[],t=r=>{for(let o of r)e.push(o.key),o.children&&o.children.length>0&&t(o.children);};return t(i),e}function ee(i,e,t,r,o,n,a){if(!i||i.length===0)return;let u=e[i[0].depth];if(!u){for(let c of i)ee(c.children,e,t,r,o,n,a);return}let s=u.sortOrder||"asc",l=u.sortBySummaryField;if(l&&!a&&t?.cellMatrix){a=new Map;let c=t.cellMatrix.keys;for(let d=0;d<c.length;d++)a.set(c[d],d);}i.sort((c,d)=>{let p=0;if(l&&a&&t){let m=c.key,f=d.key,y=u.sortBySummaryPath||"",g=o?m:y,C=o?y:m,x=o?f:y,w=o?y:f,h=t.rowIndexMap[g]??0,F=t.columnIndexMap[C]??0,v=t.rowIndexMap[x]??0,B=t.columnIndexMap[w]??0,b=h*67108864+F,R=v*67108864+B,A=a.get(b),P=a.get(R),I=r.findIndex(L=>L.id===l),D=r.length,M=A!==void 0&&I>=0?t.cellMatrix.sums[A*D+I]:0,V=P!==void 0&&I>=0?t.cellMatrix.sums[P*D+I]:0;p=M>V?1:M<V?-1:0;}else if(u.calculateCustomSort)p=u.calculateCustomSort(c.value,d.value);else {let m=c.value,f=d.value;if(typeof m=="number"&&typeof f=="number")p=m-f;else {let y=String(m),g=String(f);p=y.localeCompare(g,n,{numeric:true});}}return s==="asc"?p:-p});for(let c of i)ee(c.children,e,t,r,o,n,a);}var we=class{config;initTimeout=null;computeTimeout=null;progressTimer=null;progressCompletionTimer=null;progressStartedAt=0;progressStartValue=0;progressCap=99;progressEstimateMs=1500;initVersion=0;computeVersion=0;disposed=false;isInitComplete=false;forceNextReencode=false;hashes={dataRef:null,structuralFieldsHash:"",filterHash:"",prefilterRef:null,expandedPathsHash:"",expandedColPathsHash:"",fieldsHash:""};constructor(e){this.config=e;}refresh(){if(this.disposed)return;let e=this.config.getState(),t=this.config.getOptions(),r=this.createStructuralFieldsHash(e.fields),o=this.createFilterHash(e.fields),n=this.createFieldsHash(e.fields),a=this.createSetHash(e.expandedPaths),u=this.createSetHash(e.expandedColPaths),s=this.hashes.fieldsHash,l=this.hashes.dataRef!==t.data,c=this.hashes.structuralFieldsHash!==r,d=this.hashes.filterHash!==o||this.hashes.prefilterRef!==e.layout.prefilter;if(l||c){this.hashes.dataRef=t.data,this.hashes.structuralFieldsHash=r,this.hashes.filterHash=o,this.hashes.prefilterRef=e.layout.prefilter,this.hashes.expandedPathsHash=a,this.hashes.expandedColPathsHash=u,this.hashes.fieldsHash=n,l?this.scheduleInit():this.scheduleReconfigure(d);return}if(d){this.hashes.filterHash=o,this.hashes.prefilterRef=e.layout.prefilter,this.hashes.expandedPathsHash=a,this.hashes.expandedColPathsHash=u,this.hashes.fieldsHash=n,this.scheduleFilter();return}(this.hashes.expandedPathsHash!==a||this.hashes.expandedColPathsHash!==u||s!==n)&&(this.hashes.expandedPathsHash=a,this.hashes.expandedColPathsHash=u,this.hashes.fieldsHash=n,this.scheduleComputeIfReady());}refreshData(){this.forceNextReencode=true,this.hashes.dataRef=null,this.refresh();}computeIfReady(){this.scheduleComputeIfReady();}dispose(){this.disposed=true,this.initTimeout&&clearTimeout(this.initTimeout),this.computeTimeout&&clearTimeout(this.computeTimeout),this.stopBuildProgress(),this.progressCompletionTimer&&clearTimeout(this.progressCompletionTimer),ot(this.config.getOptions().gridId);}scheduleInit(){this.initTimeout&&clearTimeout(this.initTimeout);let e=this.config.getState(),t=this.config.getOptions();if(!t.data||t.data.length===0||!e.fields||e.fields.length===0){this.isInitComplete=false,this.stopBuildProgress(),this.config.setState({engineResult:null,isBuilding:false,buildProgress:0});return}let r=++this.initVersion;this.isInitComplete=false,this.startBuildProgress("init",true),this.config.onEngineStarted({gridId:t.gridId}),this.initTimeout=setTimeout(()=>{this.runInit(r);},50);}async runInit(e){try{let t=this.config.getState(),r=this.config.getOptions(),o=this.config.getAreaFields("row"),n=this.config.getAreaFields("column"),a=this.config.getAreaFields("data");ie(r.gridId);let u=this.forceNextReencode;this.forceNextReencode=!1;let{filtersApplied:s}=await it(r.data,o,n,a,r.registry,r.workerUrl,{forceReencode:u,filterState:{fields:t.fields,prefilter:t.layout.prefilter}});if(this.disposed||e!==this.initVersion)return;if(this.advanceBuildProgress(s?82:74),!s){if(await Fe(t.fields,t.layout.prefilter),this.disposed||e!==this.initVersion)return;this.advanceBuildProgress(84);}this.isInitComplete=!0,this.scheduleComputeIfReady(!1);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleReconfigure(e){if(this.disposed)return;let t=this.config.getState(),r=this.config.getOptions();if(!r.data||r.data.length===0||!t.fields||t.fields.length===0||!this.isInitComplete){this.scheduleInit();return}this.computeTimeout&&clearTimeout(this.computeTimeout);let o=++this.computeVersion;this.startBuildProgress("reconfigure",true),this.computeTimeout=setTimeout(()=>{this.runReconfigure(o,e);},16);}async runReconfigure(e,t){try{let r=this.config.getState(),o=this.config.getOptions();ie(o.gridId);let n=await Le(o.data,this.config.getAreaFields("row"),this.config.getAreaFields("column"),this.config.getAreaFields("data"),o.registry);if(this.disposed||e!==this.computeVersion)return;if(!n){this.scheduleInit();return}if(this.advanceBuildProgress(t?68:78),t){if(await Fe(r.fields,r.layout.prefilter),this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(82);}await this.runCompute(e);}catch(r){this.handleEngineError(r),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleFilter(){if(!this.isInitComplete||this.disposed)return;this.computeTimeout&&clearTimeout(this.computeTimeout);let e=++this.computeVersion;this.startBuildProgress("filter",true),this.computeTimeout=setTimeout(()=>{this.runFilter(e);},50);}async runFilter(e){try{let t=this.config.getState(),r=this.config.getOptions();if(ie(r.gridId),await Fe(t.fields,t.layout.prefilter),this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(82),await this.runCompute(e);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleComputeIfReady(e=true){if(!this.isInitComplete||this.disposed)return;this.computeTimeout&&clearTimeout(this.computeTimeout);let t=++this.computeVersion;this.startBuildProgress("compute",e),this.computeTimeout=setTimeout(()=>{this.runCompute(t);},16);}async runCompute(e){try{let t=this.config.getState(),r=this.config.getOptions();r.onBeforePivotCalculate?.(),ie(r.gridId);let o=await ze(Array.from(t.expandedPaths),Array.from(t.expandedColPaths));if(this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(94);let n=this.config.getAreaFields("data");Ge(o,n,r.registry),ee(o.rowTree,this.config.getAreaFields("row"),o,n,!0,r.locale),ee(o.colTree,this.config.getAreaFields("column"),o,n,!1,r.locale),We(o,n),r.onAfterPivotCalculate?.(o),this.completeBuildProgress(o,e);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}async computeFullyExpandedSnapshot(){let e=this.config.getOptions();ie(e.gridId);let t=await ze(["*"],["*"]),r=this.config.getAreaFields("data");return Ge(t,r,e.registry),ee(t.rowTree,this.config.getAreaFields("row"),t,r,true,e.locale),ee(t.colTree,this.config.getAreaFields("column"),t,r,false,e.locale),We(t,r),t}startBuildProgress(e,t){this.progressCompletionTimer&&(clearTimeout(this.progressCompletionTimer),this.progressCompletionTimer=null);let r=this.config.getState().buildProgress??0,o=this.initialProgressFor(e);this.progressStartValue=Math.min(98,t?o:Math.max(r,o)),this.progressStartedAt=Date.now(),this.progressCap=this.progressCapFor(e),this.progressEstimateMs=this.estimateProgressDuration(e),this.config.setState({isBuilding:true,engineError:null,buildProgress:this.progressStartValue}),this.progressTimer||(this.progressTimer=setInterval(()=>this.tickBuildProgress(),120));}tickBuildProgress(){if(this.disposed)return;let e=this.config.getState().buildProgress??0;if(e>=this.progressCap)return;let t=Math.max(0,Date.now()-this.progressStartedAt),r=1-Math.exp(-t/this.progressEstimateMs),o=Math.floor(this.progressStartValue+(this.progressCap-this.progressStartValue)*r);t>this.progressEstimateMs&&o<=e&&(o=e+1),o=Math.min(this.progressCap,o),o>e&&this.config.setState({buildProgress:o});}advanceBuildProgress(e){let t=this.config.getState().buildProgress??0,r=Math.min(99,Math.max(0,Math.floor(e)));r>t&&this.config.setState({buildProgress:r});}completeBuildProgress(e,t){this.stopBuildProgress(),this.progressCompletionTimer&&clearTimeout(this.progressCompletionTimer),this.config.setState({engineResult:e,isBuilding:true,buildProgress:100,engineError:null}),this.config.onEngineCompleted(e),this.progressCompletionTimer=setTimeout(()=>{this.disposed||t!==this.computeVersion||(this.config.setState({isBuilding:false}),this.progressCompletionTimer=null);},120);}stopBuildProgress(){this.progressTimer&&(clearInterval(this.progressTimer),this.progressTimer=null);}initialProgressFor(e){switch(e){case "init":return 2;case "reconfigure":return 24;case "filter":return 35;case "compute":return 86}}progressCapFor(e){switch(e){case "init":return 92;case "reconfigure":return 95;case "filter":return 96;case "compute":return 99}}estimateProgressDuration(e){let t=this.config.getOptions().data?.length??0;return e==="init"?t>=2e6?7e3:t>=5e5?4200:t>=1e5?2400:1e3:e==="compute"?t>=2e6?2200:t>=5e5?1600:900:t>=5e5?1800:1e3}handleEngineError(e){this.stopBuildProgress(),this.progressCompletionTimer&&(clearTimeout(this.progressCompletionTimer),this.progressCompletionTimer=null);let t=e instanceof Error?e:new Error(String(e));console.error("PivotGrid Engine Error",t),this.config.getOptions().onError?.(t),this.config.setState({engineError:t}),this.config.onEngineError(t);}createStructuralFieldsHash(e){return e.map(t=>[t.id,t.area,t.areaIndex,t.isCalculated?"1":"0",t.dataField??"",t.dataType??"",String(t.groupInterval??""),t.summaryType??"",t.formulaString??""].join(":")).join("|")}createFieldsHash(e){return e.map(t=>[t.id,t.area,t.areaIndex,t.sortOrder,t.sortBySummaryField,t.sortBySummaryPath].join(":")).join("|")}createFilterHash(e){return e.filter(t=>t.filterValues&&t.filterValues.size>0).map(t=>{let r=Array.from(t.filterValues).map(o=>this.serializeFilterValue(o)).sort().join(",");return `${t.id}:${t.filterType||"include"}:${r}`}).sort().join("|")}serializeFilterValue(e){if(e===null)return "null:";if(e===void 0)return "undefined:";if(e instanceof Date)return `date:${Number.isNaN(e.getTime())?"":e.toISOString()}`;let t=typeof e;if(t==="string"||t==="number"||t==="boolean"||t==="bigint")return `${t}:${String(e)}`;try{return `${t}:${JSON.stringify(e)}`}catch{return `${t}:${String(e)}`}}setHashCache=new WeakMap;createSetHash(e){let t=this.setHashCache.get(e);return t===void 0&&(t=Array.from(e).sort().join("|"),this.setHashCache.set(e,t)),t}};var _e=class{handlers={};on(i,e){let t=this.handlers[i]??new Set;return t.add(e),this.handlers[i]=t,()=>this.off(i,e)}off(i,e){this.handlers[i]?.delete(e);}emit(i,e){let t=this.handlers[i];t&&t.forEach(r=>r(e));}clear(){this.handlers={};}},jt=class{plugins=new Map;register(i){this.plugins.has(i.id)&&console.warn(`[PivotGrid Warning]: Plugin '${i.id}' is being overwritten in the registry.`),this.plugins.set(i.id,i);}unregister(i){this.plugins.delete(i);}get(i){return this.plugins.get(i)}getPluginsByType(i){return Array.from(this.plugins.values()).filter(e=>e.type===i)}resolveSafe(i,e){let t=this.plugins.get(i);return !t||!t.execute?(console.warn(`[PivotGrid Warning]: Plugin ID '${i}' not found or missing 'execute' function. Using fallback behavior.`),e==="expression"?()=>0:r=>0):t.execute}getWorkerBootstrapPayload(){let i=[];for(let e of this.plugins.values())e.workerCode&&i.push({id:e.id,type:e.type,workerCode:e.workerCode});return i}registerAggregator(i,e,t){this.register({id:i,type:"aggregator",version:t,aggregate:e,execute:e});}registerExporter(i,e,t){this.register({id:`exporter-${i}`,type:"exporter",version:t,exportFunction:e});}registerCellRenderer(i,e,t){this.register({id:i,type:"cellRender",version:t,renderCell:e});}registerHeaderRenderer(i,e,t){this.register({id:i,type:"headerRender",version:t,renderHeader:e});}getExporters(){return this.getPluginsByType("exporter")}getCellRenderers(){return this.getPluginsByType("cellRender")}getAggregators(){return this.getPluginsByType("aggregator")}getHeaderRenderers(){return this.getPluginsByType("headerRender")}},Yt=class{static start(i,e,t){return {range:{startRow:i,startColumn:e,endRow:i,endColumn:e},isSelecting:true,mode:t}}static extend(i,e,t,r){return !i||!i.isSelecting||i.mode!==r?i:{...i,range:{...i.range,endRow:e,endColumn:t}}}static finish(i){return i?{...i,isSelecting:false}:null}static containsCell(i,e,t){if(!i)return false;let r=this.getBounds(i.range);return e>=r.minRow&&e<=r.maxRow&&t>=r.minColumn&&t<=r.maxColumn}static calculateStats(i,e){if(!i||i.mode!=="data")return null;let t=this.getBounds(i.range),r=0,o=0,n=1/0,a=-1/0;for(let u=t.minRow;u<=t.maxRow;u++)for(let s=t.minColumn;s<=t.maxColumn;s++){let l=e(u,s);typeof l!="number"||Number.isNaN(l)||(r+=l,o++,l<n&&(n=l),l>a&&(a=l));}return o>0?{sum:r,count:o,avg:r/o,min:n,max:a}:null}static toTsv(i,e){if(!i)return "";let t=this.getBounds(i.range),r=[];for(let o=t.minRow;o<=t.maxRow;o++){let n=[];for(let a=t.minColumn;a<=t.maxColumn;a++)n.push(e(o,a).replace(/\n/g," "));r.push(n.join(" "));}return r.length>0?`${r.join(`
|
|
3
|
+
`&&m++,a.push(n),i.push(a),a=[],n="",l=false):(n+=f,l=true);}return (l||n.length>0||a.length>0)&&(a.push(n),i.push(a)),t&&t(1),i}var Tt=new Set(["true","yes","evet","do\u011Fru","dogru"]),Bt=new Set(["false","no","hay\u0131r","hayir","yanl\u0131\u015F","yanlis"]);function Ir(o){let e=o.trim().toLowerCase();return Tt.has(e)||Bt.has(e)}function Rt(o){if(typeof o=="boolean")return o;let e=String(o).trim().toLowerCase();return Tt.has(e)||e==="1"||e==="y"||e==="on"?true:Bt.has(e)||e==="0"||e==="n"||e==="off"?false:null}function kr(o){return /^0\d+$/.test(o)}var Mr=/[₺$€£¥]/g,Nr=/[\s ]/g;function Xe(o){if(typeof o=="number")return isNaN(o)?null:o;let e=String(o).trim();if(!e)return null;e=e.replace(Nr,"").replace(Mr,"");let t=false;e.endsWith("%")&&(t=true,e=e.slice(0,-1));let r=false;if(/^\(.*\)$/.test(e)&&(r=true,e=e.slice(1,-1)),!/^[+-]?[0-9.,]*[0-9][0-9.,]*$/.test(e))return null;let u=e.includes("."),i=e.includes(",");if(u&&i)e.lastIndexOf(",")>e.lastIndexOf(".")?e=e.replace(/\./g,"").replace(",","."):e=e.replace(/,/g,"");else if(i){let a=e.split(",");a.length===2&&a[1].length!==3?e=e.replace(",","."):e=e.replace(/,/g,"");}else u&&e.split(".").length>2&&(e=e.replace(/\./g,""));let n=Number(e);return isNaN(n)?null:(r&&(n=-n),t&&(n=n/100),n)}var Vr=/^\d{4}-\d{2}-\d{2}([ T]\d{2}:\d{2}(:\d{2})?(\.\d+)?(Z|[+-]\d{2}:?\d{2})?)?$/,Or=/^(\d{4})[/.](\d{1,2})[/.](\d{1,2})$/,Lr=/^(\d{1,2})[/.\-](\d{1,2})[/.\-](\d{4})$/;function qe(o){if(o instanceof Date)return isNaN(o.getTime())?null:o;let e=String(o).trim();if(!e)return null;if(Vr.test(e)){let u=new Date(e.replace(" ","T"));return isNaN(u.getTime())?null:u}let t=Or.exec(e);if(t){let u=new Date(+t[1],+t[2]-1,+t[3]);return Pt(u,+t[1],+t[2],+t[3])?u:null}let r=Lr.exec(e);if(r){let u=+r[1],i=+r[2],n=+r[3],a,s;u>12&&i<=12?(a=u,s=i):i>12&&u<=12?(a=i,s=u):(a=u,s=i);let l=new Date(n,s-1,a);return Pt(l,n,s,a)?l:null}return null}function Pt(o,e,t,r){return !isNaN(o.getTime())&&o.getFullYear()===e&&o.getMonth()===t-1&&o.getDate()===r}function It(o){if(o==null||o==="")return "blank";if(typeof o=="boolean")return "boolean";if(typeof o=="number")return isNaN(o)?"blank":"number";if(o instanceof Date)return isNaN(o.getTime())?"blank":"date";let e=String(o).trim();return e===""?"blank":Ir(e)?"boolean":kr(e)?"string":qe(e)?"date":Xe(e)!==null?"number":"string"}function fe(o){let e={string:0,number:0,date:0,boolean:0};for(let u of o){let i=It(u);i!=="blank"&&e[i]++;}let t="string",r=0;return Object.keys(e).forEach(u=>{e[u]>r&&(r=e[u],t=u);}),t}function he(o,e){if(o==null||o==="")return null;switch(e){case "number":return Xe(o);case "date":return qe(o)??(o instanceof Date?o:null);case "boolean":return Rt(o);default:return o}}var kt=new Set(["__proto__","constructor","prototype"]);function se(o){return kt.has(o)?`${o}_`:o}function Je(o){let e=false;for(let t of o)if(!(!t||typeof t!="object")){for(let r of Object.keys(t))if(kt.has(r)){e=true;break}if(e)break}return e?o.map(t=>{if(!t||typeof t!="object")return t;let r={};for(let u of Object.keys(t))r[se(u)]=t[u];return r}):o}var Mt=200,Nt=2e4;function Vt(o){let e=new Map;return o.map(t=>{let r=e.get(t)??0;return e.set(t,r+1),se(r===0?t:`${t}_${r+1}`)})}function Qe(o,e){if(o.length===0)return [];let t=[],r=new Set,u=Math.min(o.length,500);for(let a=0;a<u;a++){let s=o[a];if(!(!s||typeof s!="object"))for(let l of Object.keys(s))r.has(l)||(r.add(l),t.push(l));}let i=new Map;for(let a of t){let s=[];for(let l=0;l<o.length&&s.length<Mt;l++){let c=o[l]?.[a];c!=null&&String(c).trim()!==""&&s.push(c);}i.set(a,fe(s));}let n=new Array(o.length);for(let a=0;a<o.length;a++){let s=o[a]||{},l={};for(let c of t){let d=s[c];l[se(c)]=d==null||d===""?null:he(d,i.get(c));}n[a]=l,e&&a>0&&a%Nt===0&&e({phase:"typing",percent:Math.round(a/o.length*100)});}return e&&e({phase:"typing",percent:100}),n}function ge(o,e){let t=Re(o);if(!t.trim())return [];let r=Ze(t),u=Dt(t,r,e?c=>e({phase:"parsing",percent:Math.round(c*60)}):void 0);if(u.length===0)return [];let i=0;for(;i<u.length&&u[i].every(c=>c.trim()==="");)i++;if(i>=u.length)return [];let n=Vt(u[i].map((c,d)=>c.trim()||`Column${d+1}`)),a=u.slice(i+1).filter(c=>!(c.length===1&&c[0].trim()==="")),s=n.map((c,d)=>{let p=[];for(let m=0;m<a.length&&p.length<Mt;m++){let f=a[m][d];f!==void 0&&f.trim()!==""&&p.push(f);}return fe(p)}),l=new Array(a.length);for(let c=0;c<a.length;c++){let d=a[c],p={};for(let m=0;m<n.length;m++){let f=d[m];p[n[m]]=f===void 0||f===""?null:he(f,s[m]);}l[c]=p,e&&c>0&&c%Nt===0&&e({phase:"typing",percent:60+Math.round(c/a.length*40)});}return e&&e({phase:"typing",percent:100}),l}var Ie=class{supports(e){return e.name.endsWith(".json")||e.type==="application/json"}async read(e){let t=await ae(e);try{return JSON.parse(t)}catch(r){throw new Error("JSON parse hatas\u0131: "+r.message)}}};var ke=class{supports(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="xlsx"||t==="xls"||t==="xlsm"||t==="xlsb"}async read(e){return new Promise((t,r)=>{let u=new FileReader;u.onload=i=>{try{let n=new Uint8Array(i.target?.result),a=Me.read(n,{type:"array",cellDates:!0});if(a.SheetNames.length===0){r(new Error("Excel dosyas\u0131nda sayfa bulunamad\u0131."));return}let s=a.SheetNames[0],l=a.Sheets[s],c=Me.utils.sheet_to_json(l,{defval:null,raw:!0});t(c);}catch(n){r(new Error("Excel ayr\u0131\u015Ft\u0131rma hatas\u0131: "+n.message));}},u.onerror=()=>{r(new Error("Dosya okuma hatas\u0131."));},u.readAsArrayBuffer(e);})}};var Ce=class o{supports(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="csv"||t==="tsv"||t==="txt"||e.type==="text/csv"||e.type==="text/tab-separated-values"}async read(e){let t=await ae(e);return o.parse(t)}static parse(e){return ge(e)}};var ye=class o{supports(e){return e.name.split(".").pop()?.toLowerCase()==="xml"||e.type==="application/xml"||e.type==="text/xml"}async read(e){let t=await ae(e);return o.parse(t)}static parse(e){if(!e||!e.trim())return [];let t=zr(e),u=Gr(t).map(Wr).filter(i=>Object.keys(i).length>0);return Qe(u)}};function zr(o){let e={tag:"#root",attrs:{},children:[],text:"",parent:null},t=e,r=0,u=o.length;for(;r<u;){let i=o.indexOf("<",r);if(i===-1){t.text+=o.slice(r);break}if(i>r&&(t.text+=o.slice(r,i)),o.startsWith("<!--",i)){let p=o.indexOf("-->",i+4);r=p===-1?u:p+3;continue}if(o.startsWith("<![CDATA[",i)){let p=o.indexOf("]]>",i+9);t.text+=o.slice(i+9,p===-1?u:p),r=p===-1?u:p+3;continue}if(o.startsWith("<?",i)){let p=o.indexOf("?>",i+2);r=p===-1?u:p+2;continue}if(o.startsWith("<!",i)){let p=o.indexOf(">",i+2);r=p===-1?u:p+1;continue}let n=o.indexOf(">",i+1);if(n===-1)break;let a=o.slice(i+1,n).trim();if(a.startsWith("/")){let p=a.slice(1).trim(),m=t;for(;m&&m.tag!==p;)m=m.parent;m&&m.parent&&(t=m.parent),r=n+1;continue}let s=a.endsWith("/");s&&(a=a.slice(0,-1).trim());let{name:l,attrs:c}=_r(a),d={tag:l,attrs:c,children:[],text:"",parent:t};t.children.push(d),s||(t=d),r=n+1;}return e}var Ot=/([^\s=/]+)\s*=\s*(?:"([^"]*)"|'([^']*)')/g;function _r(o){let e=o.search(/\s/),t=(e===-1?o:o.slice(0,e)).trim(),r={};if(e!==-1){let u=o.slice(e+1),i;for(Ot.lastIndex=0;(i=Ot.exec(u))!==null;)r[i[1]]=et(i[2]??i[3]??"");}return {name:t,attrs:r}}function Gr(o){let e=o.children[0];if(!e)return [];let t=e.children;return t.length===0?[]:t.some(u=>u.children.length>0||Object.keys(u.attrs).length>0)?t:[e]}function Wr(o){let e={},t=new Map,r=(u,i)=>{let n=u||"value",a=t.get(n)??0;t.set(n,a+1),e[se(a===0?n:`${n}_${a+1}`)]=i;};for(let[u,i]of Object.entries(o.attrs))r(u,i);if(o.children.length===0){let u=o.text.trim();u&&r(o.tag,et(u));}else for(let u of o.children)r(u.tag,et(Lt(u).trim()));return e}function Lt(o){if(o.children.length===0)return o.text;let e=o.text;for(let t of o.children)e+=Lt(t);return e}var Hr=/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,Ur={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:"\xA0"};function et(o){return o.indexOf("&")===-1?o:o.replace(Hr,(e,t)=>{if(t[0]==="#"){let r=t[1]==="x"||t[1]==="X"?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Number.isFinite(r)?String.fromCodePoint(r):e}return Ur[t]??e})}var le=class{static validateSnapshot(e){let t={isValid:true,errors:[],warnings:[]};return !e||typeof e!="object"?(t.isValid=false,t.errors.push("Ge\xE7ersiz dosya format\u0131. Snapshot nesnesi bulunamad\u0131."),t):(e.version||t.warnings.push("Snapshot versiyonu eksik. Geriye d\xF6n\xFCk uyumluluk garanti edilemez."),e.type||(t.isValid=false,t.errors.push("Snapshot t\xFCr\xFC (type) belirtilmemi\u015F.")),(e.type==="FULL_SNAPSHOT"||e.type==="LAYOUT_ONLY")&&((!e.fields||!Array.isArray(e.fields))&&(t.isValid=false,t.errors.push('Layout i\xE7in "fields" dizisi bulunamad\u0131.')),e.layout||t.warnings.push('"layout" yap\u0131land\u0131rmas\u0131 eksik, varsay\u0131lan de\u011Ferler kullan\u0131lacak.')),(e.type==="FULL_SNAPSHOT"||e.type==="DATA_ONLY")&&(!e.data||!Array.isArray(e.data))&&(t.isValid=false,t.errors.push('Veri i\xE7eri\u011Fi ("data") bulunamad\u0131 veya ge\xE7ersiz.')),t)}static validateDataAgainstFields(e,t){let r={isValid:true,errors:[],warnings:[]};if(e.length===0)return r.warnings.push("Veri seti bo\u015F."),r;let u=e[0],i=[];return t.forEach(n=>{!n.isCalculated&&n.dataField&&!(n.dataField in u)&&i.push(String(n.dataField));}),i.length>0&&r.warnings.push(`Baz\u0131 alanlar veri setinde bulunamad\u0131: ${i.join(", ")}. E\u015Fle\u015Ftirme (Mapping) gerekebilir.`),r}};var te=class{static extractFieldsFromData(e,t=50){if(!e||e.length===0)return [];let r=[],u=Math.max(t,50),i=this.collectKeys(e,u),n=false,a=false;return i.forEach(s=>{let l=this.inferType(e,s,t),c="chooser";!n&&this.isAutoRowCandidate(e,s,l,u)?(c="row",n=true):!a&&this.isAutoDataCandidate(s,l)&&(c="data",a=true);let d={id:`f_${s}`,dataField:s,caption:this.formatCaption(s),dataType:l,area:c,areaIndex:0};l==="number"?d.summaryType="sum":l==="date"&&(d.groupInterval="month"),r.push(d);}),r}static buildFieldsFromPlan(e,t,r=50){let u=[],i=false,n=false,a=Math.max(r,50);for(let s of e){let l="chooser";!i&&this.isAutoRowCandidate(t,s.dataField,s.dataType,a)?(l="row",i=true):!n&&this.isAutoDataCandidate(s.dataField,s.dataType)&&(l="data",n=true);let c={id:`f_${s.dataField}`,dataField:s.dataField,caption:s.caption,dataType:s.dataType,area:l,areaIndex:0};s.dataType==="number"?c.summaryType="sum":s.dataType==="date"&&(c.groupInterval="month"),u.push(c);}return u}static isAutoRowCandidate(e,t,r,u){return !(t.startsWith("__EMPTY")||r!=="string"&&r!=="date"||this.isIdentifierLikeKey(t)||r==="string"&&e&&this.isHighCardinalityStringColumn(e,t,u))}static isAutoDataCandidate(e,t){return t==="number"&&!e.startsWith("__EMPTY")&&!this.isIdentifierLikeKey(e)}static isHighCardinalityStringColumn(e,t,r){let u=Math.min(e.length,r),i=new Set,n=0;for(let a=0;a<u;a++){let s=e[a]?.[t];s==null||s===""||(n++,i.add(String(s)));}return n<20?false:i.size/n>=.9}static isIdentifierLikeKey(e){let t=e.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase(),r=t.replace(/[^a-z0-9]/g,"");return r==="id"||r==="uuid"||r==="guid"||r==="key"?true:/(^|[\s_.-])(id|uuid|guid|key)($|[\s_.-])/.test(t)}static collectKeys(e,t){let r=[],u=new Set,i=Math.min(e.length,t);for(let n=0;n<i;n++){let a=e[n];if(!(!a||typeof a!="object"))for(let s of Object.keys(a))u.has(s)||(u.add(s),r.push(s));}return r}static inferType(e,t,r){let u=Math.min(e.length,r),i=new Array(u);for(let n=0;n<u;n++)i[n]=e[n]?.[t];return fe(i)}static formatCaption(e){return e.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,t=>t.toUpperCase()).trim()}};var zt='var J=class{size=1;nodeToParent;nodeToVal;nodeToDepth;nodeChildCount;childrenMap;constructor(e){this.nodeToParent=new Int32Array(e).fill(-1),this.nodeToVal=new Int32Array(e).fill(-1),this.nodeToDepth=new Int32Array(e).fill(0),this.nodeChildCount=new Int32Array(e).fill(0),this.childrenMap=new Map;}expandCapacity(){let e=this.nodeToParent.length*2,n=new Int32Array(e).fill(-1);n.set(this.nodeToParent),this.nodeToParent=n;let t=new Int32Array(e).fill(-1);t.set(this.nodeToVal),this.nodeToVal=t;let r=new Int32Array(e).fill(0);r.set(this.nodeToDepth),this.nodeToDepth=r;let i=new Int32Array(e).fill(0);i.set(this.nodeChildCount),this.nodeChildCount=i;}insert(e,n){let t=0;for(let r=0;r<n;r++){let i=e[r],a=this.childrenMap.get(t);a||(a=new Map,this.childrenMap.set(t,a));let u=a.get(i);u===void 0&&(this.size>=this.nodeToParent.length&&this.expandCapacity(),u=this.size++,this.nodeToParent[u]=t,this.nodeToVal[u]=i,this.nodeToDepth[u]=r+1,this.nodeChildCount[t]++,a.set(i,u)),t=u;}return t}};var ee=class{dictionary=[];rowFields=[];colFields=[];dataFields=[];storedColumns={};storedRowCount=0;lastMask=null;isBuilt=false;buildState=null;incrementalFilters=null;incrementalPrefilter=null;rowTrie;colTrie;cardinalityMap={};rowPathStrs=[];colPathStrs=[];rowIndexMapCache={};columnIndexMapCache={};buildVersion=0;groupCount=0;leafGroupRowIds;leafGroupColIds;leafGroupMeasures;leafGroupCounts;leafGroupMins;leafGroupMaxes;leafGroupDistinctSets=new Map;init(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCount,this.storedColumns={};for(let[n,t]of Object.entries(e.columnarData))t.type==="int32"&&(this.storedColumns[n]={type:"int32",array:new Int32Array(t.buffer)}),t.type==="float64"&&(this.storedColumns[n]={type:"float64",array:new Float64Array(t.buffer)});this.lastMask=null,e.deferBuild?this.isBuilt=false:this.buildFromMask(null);}reconfigure(e){if(this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.dictionaryAppend&&e.dictionaryAppend.length>0)for(let n of e.dictionaryAppend)this.dictionary.push(n);if(e.newColumns)for(let[n,t]of Object.entries(e.newColumns))t.type==="int32"&&(this.storedColumns[n]={type:"int32",array:new Int32Array(t.buffer)}),t.type==="float64"&&(this.storedColumns[n]={type:"float64",array:new Float64Array(t.buffer)});this.buildFromMask(this.lastMask);}initStart(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCountTotal,this.storedColumns={};for(let[n,t]of Object.entries(e.columnTypes))t==="int32"?this.storedColumns[n]={type:"int32",array:new Int32Array(e.rowCountTotal)}:this.storedColumns[n]={type:"float64",array:new Float64Array(e.rowCountTotal)};this.incrementalFilters=e.filters&&e.filters.length>0?e.filters.map(n=>({fieldId:n.fieldId,filterType:n.filterType,ids:new Set,pending:new Set(n.valueStrings)})):null,this.incrementalPrefilter=e.prefilter&&e.prefilter.conditions.length>0?e.prefilter:null,this.lastMask=this.incrementalFilters||this.incrementalPrefilter?new Uint8Array(e.rowCountTotal):null,this.resolveIncrementalFilterStrings(0),this.isBuilt=false,this.beginBuild();}initChunk(e){if(e.dictionaryAppend&&e.dictionaryAppend.length>0){let n=this.dictionary.length;for(let t of e.dictionaryAppend)this.dictionary.push(t);this.resolveIncrementalFilterStrings(n),this.ensureCardCapacity();}for(let[n,t]of Object.entries(e.columns)){let r=this.storedColumns[n];r&&(r.type==="int32"?r.array.set(new Int32Array(t),e.start):r.array.set(new Float64Array(t),e.start));}this.lastMask&&this.computeMaskRange(e.start,e.end),this.processRange(e.start,e.end,this.lastMask);}initEnd(){this.incrementalFilters=null,this.incrementalPrefilter=null,this.finalizeBuild();}resolveIncrementalFilterStrings(e){let n=this.incrementalFilters;if(!n)return;let t=0;for(let r of n)t+=r.pending.size;if(t!==0)for(let r=e;r<this.dictionary.length;r++){let i=this.dictionary[r];for(let a of n)a.pending.delete(i)&&a.ids.add(r);}}computeMaskRange(e,n){let t=this.lastMask;if(t.fill(1,e,n),this.incrementalFilters)for(let r of this.incrementalFilters){let i=this.storedColumns[r.fieldId];if(!i||i.type!=="int32")continue;let a=i.array,u=r.ids;if(r.filterType==="exclude")for(let o=e;o<n;o++)t[o]&&u.has(a[o])&&(t[o]=0);else for(let o=e;o<n;o++)t[o]&&!u.has(a[o])&&(t[o]=0);}if(this.incrementalPrefilter)for(let r=e;r<n;r++)t[r]&&!this.evaluatePrefilterGroup(this.incrementalPrefilter,r)&&(t[r]=0);}applyFilter(e){if(e.filters.length===0&&!e.prefilter){this.lastMask=null,this.buildFromMask(null);return}let n=this.storedRowCount,t=new Uint8Array(n);t.fill(1);for(let r of e.filters){let i=this.storedColumns[r.fieldId];if(!i||i.type!=="int32")continue;let a=i.array,u=new Set(r.dictIds);if(r.filterType==="exclude")for(let o=0;o<n;o++)t[o]&&u.has(a[o])&&(t[o]=0);else for(let o=0;o<n;o++)t[o]&&!u.has(a[o])&&(t[o]=0);}if(e.prefilter&&e.prefilter.conditions.length>0)for(let r=0;r<n;r++)t[r]&&!this.evaluatePrefilterGroup(e.prefilter,r)&&(t[r]=0);this.lastMask=t,this.buildFromMask(t);}evaluatePrefilterGroup(e,n){if(!e.conditions||e.conditions.length===0)return true;if(e.logicalOperator==="and"){for(let t of e.conditions)if("logicalOperator"in t){if(!this.evaluatePrefilterGroup(t,n))return false}else if(!this.evaluatePrefilterCondition(t,n))return false;return true}else {for(let t of e.conditions)if("logicalOperator"in t){if(this.evaluatePrefilterGroup(t,n))return true}else if(this.evaluatePrefilterCondition(t,n))return true;return false}}evaluatePrefilterCondition(e,n){let t=this.storedColumns[e.fieldId];if(!t)return true;if(t.type==="float64"){let u=t.array[n],o=Number(e.value);switch(e.operator){case "=":return u===o;case "<>":return u!==o;case ">":return u>o;case ">=":return u>=o;case "<":return u<o;case "<=":return u<=o;case "isnull":return isNaN(u)||u===0;case "isnotnull":return !isNaN(u)&&u!==0;default:return true}}let r=t.array[n],i=this.dictionary[r]||"",a=String(e.value??"");switch(e.operator){case "=":return i===a;case "<>":return i!==a;case ">":return i>a;case ">=":return i>=a;case "<":return i<a;case "<=":return i<=a;case "contains":return i.toLowerCase().includes(a.toLowerCase());case "notcontains":return !i.toLowerCase().includes(a.toLowerCase());case "startswith":return i.toLowerCase().startsWith(a.toLowerCase());case "endswith":return i.toLowerCase().endsWith(a.toLowerCase());case "isnull":return i===""||i==="(Blank)";case "isnotnull":return i!==""&&i!=="(Blank)";case "in":return Array.isArray(e.value)?e.value.map(String).includes(i):true;case "notin":return Array.isArray(e.value)?!e.value.map(String).includes(i):true;default:return true}}buildFromMask(e){this.beginBuild(),this.processRange(0,this.storedRowCount,e),this.finalizeBuild();}beginBuild(){let e=this.storedRowCount,n=this.storedColumns,t=this.rowFields.length,r=this.colFields.length,i=new Array(t);for(let l=0;l<t;l++)i[l]=n[this.rowFields[l].id].array;let a=new Array(r);for(let l=0;l<r;l++)a[l]=n[this.colFields[l].id].array;let u=this.dictionary.length,o=this.rowFields.map(l=>{let M=n[l.id];return M&&M.type==="int32"?new Uint8Array(u):null}),w=this.colFields.map(l=>{let M=n[l.id];return M&&M.type==="int32"?new Uint8Array(u):null});this.rowTrie=new J(2e5),this.colTrie=new J(2e5);let v=this.dataFields.length,S=this.dataFields.map(l=>l.summaryType||"sum"),h=S.some(l=>l==="count"||l==="avg"),D=S.some(l=>l==="min"),L=S.some(l=>l==="max"),K=S.some(l=>l==="distinct"),_=new Array(v);for(let l=0;l<v;l++)_[l]=n[this.dataFields[l].id].array;let R=Math.min(e,2e5),N=D?new Float64Array(R*v):new Float64Array(0),x=L?new Float64Array(R*v):new Float64Array(0);this.leafGroupDistinctSets=K?new Map:new Map,D&&N.fill(1/0),L&&x.fill(-1/0),this.buildState={rPath:new Int32Array(t),cPath:new Int32Array(r),rowColArrays:i,colColArrays:a,dataColArrays:_,rowCardSeen:o,colCardSeen:w,rowCardCounts:new Int32Array(t),colCardCounts:new Int32Array(r),summaryTypes:S,allSums:S.every(l=>l==="sum"),needsCounts:h,needsMins:D,needsMaxes:L,groupMap:new Map,leafRowIds:new Int32Array(R),leafColIds:new Int32Array(R),leafMeasures:new Float64Array(R*v),leafCounts:h?new Float64Array(R*v):new Float64Array(0),leafMins:N,leafMaxes:x,gCount:0};}ensureCardCapacity(){let e=this.buildState;if(!e)return;let n=this.dictionary.length,t=r=>{if(r===null||r.length>=n)return r;let i=new Uint8Array(Math.max(n,r.length*2));return i.set(r),i};for(let r=0;r<e.rowCardSeen.length;r++)e.rowCardSeen[r]=t(e.rowCardSeen[r]);for(let r=0;r<e.colCardSeen.length;r++)e.colCardSeen[r]=t(e.colCardSeen[r]);}processRange(e,n,t){let r=this.buildState,{rPath:i,cPath:a,rowColArrays:u,colColArrays:o,dataColArrays:w,rowCardSeen:v,colCardSeen:S,rowCardCounts:h,colCardCounts:D,summaryTypes:L,allSums:K,needsCounts:_,needsMins:R,needsMaxes:N,groupMap:x}=r,l=u.length,M=o.length,y=w.length,X=this.rowTrie,V=this.colTrie,C=r.leafRowIds,b=r.leafColIds,k=r.leafMeasures,z=r.leafCounts,U=r.leafMins,E=r.leafMaxes,Q=r.gCount;for(let W=e;W<n;W++){if(t&&!t[W])continue;for(let s=0;s<l;s++){let d=u[s][W];i[s]=d;let f=v[s];f!==null&&f[d]===0&&(f[d]=1,h[s]++);}let Y=X.insert(i,l);for(let s=0;s<M;s++){let d=o[s][W];a[s]=d;let f=S[s];f!==null&&f[d]===0&&(f[d]=1,D[s]++);}let H=V.insert(a,M),Z=Y*67108864+H,G=x.get(Z);if(G===void 0){if(G=Q++,x.set(Z,G),G>=C.length){let s=G*2,d=new Int32Array(s);d.set(C),C=d;let f=new Int32Array(s);f.set(b),b=f;let I=new Float64Array(s*y);if(I.set(k),k=I,_){let p=new Float64Array(s*y);p.set(z),z=p;}if(R){let p=new Float64Array(s*y);p.fill(1/0),p.set(U),U=p;}if(N){let p=new Float64Array(s*y);p.fill(-1/0),p.set(E),E=p;}}C[G]=Y,b[G]=H;}let c=G*y;if(K)for(let s=0;s<y;s++)k[c+s]+=w[s][W];else for(let s=0;s<y;s++){let d=w[s][W],f=c+s;switch(L[s]){case "sum":k[f]+=d;break;case "count":z[f]+=1;break;case "avg":k[f]+=d,z[f]+=1;break;case "min":d<U[f]&&(U[f]=d);break;case "max":d>E[f]&&(E[f]=d);break;case "distinct":{let I=this.leafGroupDistinctSets.get(f);I||(I=new Set,this.leafGroupDistinctSets.set(f,I)),I.add(d);break}default:k[f]+=d;break}}}r.leafRowIds=C,r.leafColIds=b,r.leafMeasures=k,r.leafCounts=z,r.leafMins=U,r.leafMaxes=E,r.gCount=Q;}finalizeBuild(){let e=this.buildState,{needsCounts:n,needsMins:t,needsMaxes:r,gCount:i}=e,a=e.dataColArrays.length,u=e.rowColArrays.length,o=e.colColArrays.length;this.groupCount=i,this.leafGroupRowIds=e.leafRowIds.slice(0,i),this.leafGroupColIds=e.leafColIds.slice(0,i),this.leafGroupMeasures=e.leafMeasures.slice(0,i*a),this.leafGroupCounts=n?e.leafCounts.slice(0,i*a):e.leafCounts,this.leafGroupMins=t?e.leafMins.slice(0,i*a):e.leafMins,this.leafGroupMaxes=r?e.leafMaxes.slice(0,i*a):e.leafMaxes,this.cardinalityMap={};for(let w=0;w<u;w++)e.rowCardSeen[w]!==null&&(this.cardinalityMap[this.rowFields[w].id]=e.rowCardCounts[w]);for(let w=0;w<o;w++)e.colCardSeen[w]!==null&&(this.cardinalityMap[this.colFields[w].id]=e.colCardCounts[w]);this.buildState=null,this.buildVersion++,this.isBuilt=true,this.rowPathStrs=this.buildPathStrs(this.rowTrie),this.colPathStrs=this.buildPathStrs(this.colTrie),this.rowIndexMapCache=this.buildIndexMap(this.rowPathStrs),this.columnIndexMapCache=this.buildIndexMap(this.colPathStrs);}buildPathStrs(e){let n=new Array(e.size);n[0]="";for(let t=1;t<e.size;t++){let r=e.nodeToParent[t],i=this.dictionary[e.nodeToVal[t]],a=n[r];n[t]=a?a+"|"+i:i;}return n}buildIndexMap(e){let n={};for(let t=0;t<e.length;t++)n[e[t]]=t;return n}compute(e){this.isBuilt||this.buildFromMask(this.lastMask);let n=this.rowPathStrs,t=this.colPathStrs,r=new Uint8Array(this.rowTrie.size),i=new Set(e.expandedPaths),a=i.has(".*")||i.has("*");for(let c=0;c<this.rowTrie.size;c++)r[c]=a||i.has(n[c])?1:0;let u=new Uint8Array(this.colTrie.size),o=new Set(e.expandedColPaths),w=o.has(".*")||o.has("*");for(let c=0;c<this.colTrie.size;c++)u[c]=w||o.has(t[c])?1:0;let v=new Uint8Array(this.rowTrie.size);v[0]=1;for(let c=1;c<this.rowTrie.size;c++){let s=this.rowTrie.nodeToParent[c];(s===0||r[s])&&(v[c]=1);}let S=new Uint8Array(this.colTrie.size);S[0]=1;for(let c=1;c<this.colTrie.size;c++){let s=this.colTrie.nodeToParent[c];(s===0||u[s])&&(S[c]=1);}let h=this.dataFields.length,D=this.dataFields.map(c=>c.summaryType||"sum"),L=this.leafGroupMins.length>0,K=this.leafGroupMaxes.length>0,_=this.leafGroupCounts.length>0,R=this.leafGroupDistinctSets.size>0,N=new Map,x=0,l=1e4,M=new Float64Array(l),y=new Float64Array(l*h),X=new Int32Array(l*h),V=_?new Float64Array(l*h):null,C=L?new Float64Array(l*h):null,b=K?new Float64Array(l*h):null,k=R?new Map:new Map;C&&C.fill(1/0),b&&b.fill(-1/0);let z=new Int32Array(this.rowFields.length+1),U=new Int32Array(this.colFields.length+1),E=(c,s,d,f)=>{let I=0,p=c;for(;p!==-1;)d[p]&&(f[I++]=p),p=s.nodeToParent[p];return I};for(let c=0;c<this.groupCount;c++){let s=this.leafGroupRowIds[c],d=this.leafGroupColIds[c],f=E(s,this.rowTrie,v,z),I=E(d,this.colTrie,S,U);for(let p=0;p<f;p++){let $=z[p];for(let B=0;B<I;B++){let q=U[B],j=$*67108864+q,g=N.get(j);if(g===void 0){if(g=x++,N.set(j,g),g>=M.length){let A=g*2,m=new Float64Array(A);m.set(M),M=m;let P=new Float64Array(A*h);P.set(y),y=P;let T=new Int32Array(A*h);if(T.set(X),X=T,V){let F=new Float64Array(A*h);F.set(V),V=F;}if(C){let F=new Float64Array(A*h);F.fill(1/0),F.set(C),C=F;}if(b){let F=new Float64Array(A*h);F.fill(-1/0),F.set(b),b=F;}}M[g]=j;}for(let A=0;A<h;A++){let m=g*h+A,P=c*h+A;switch(D[A]){case "sum":y[m]+=this.leafGroupMeasures[P];break;case "count":y[m]+=this.leafGroupCounts[P];break;case "avg":y[m]+=this.leafGroupMeasures[P],V[m]+=this.leafGroupCounts[P];break;case "min":{let T=this.leafGroupMins[P];T<C[m]&&(C[m]=T);break}case "max":{let T=this.leafGroupMaxes[P];T>b[m]&&(b[m]=T);break}case "distinct":{let T=this.leafGroupDistinctSets.get(P);if(T){let F=k.get(m);F||(F=new Set,k.set(m,F));for(let ie of T)F.add(ie);}break}default:y[m]+=this.leafGroupMeasures[P];break}X[m]+=1;}}}}for(let c=0;c<x;c++)for(let s=0;s<h;s++){let d=c*h+s;switch(D[s]){case "avg":y[d]=V[d]>0?y[d]/V[d]:0;break;case "min":y[d]=C[d]!==1/0?C[d]:0;break;case "max":y[d]=b[d]!==-1/0?b[d]:0;break;case "distinct":{let f=k.get(d);y[d]=f?f.size:0;break}}}let Q=M.slice(0,x),W=y.slice(0,x*h),Y=X.slice(0,x*h),H=(c,s,d,f,I)=>{let p=[];for(let B=0;B<f.length;B++)p[B]=f[B]?.id||"";let $=B=>{let q=c.childrenMap.get(B);if(!q)return [];let j=[];for(let g of q.values())if(s[g]){let A=c.nodeToDepth[g]-1,m=d[g]===1;j.push({key:I[g],value:this.dictionary[c.nodeToVal[g]],fieldId:p[A]||"",children:m?$(g):[],isExpanded:m,isTotal:false,depth:A,hasChildren:c.nodeChildCount[g]>0});}return j};return $(0)},Z=H(this.rowTrie,v,r,this.rowFields,n),G=H(this.colTrie,S,u,this.colFields,t);return {id:e.id,rowTree:Z,colTree:G,cellMatrix:{keys:Q,sums:W,counts:Y},rowIndexMap:this.rowIndexMapCache,columnIndexMap:this.columnIndexMapCache,cardinalityMap:this.cardinalityMap,indexMapsVersion:this.buildVersion}}};var O=new ee,ne=-1;self.onmessage=te=>{let e=te.data;try{if(e.action==="init")O.init(e),self.postMessage({id:e.id,isInitComplete:!0});else if(e.action==="initStart")O.initStart(e);else if(e.action==="initChunk")O.initChunk(e);else if(e.action==="initEnd")O.initEnd(),self.postMessage({id:e.id,isInitComplete:!0});else if(e.action==="filter")O.applyFilter(e),self.postMessage({id:e.id,isFilterComplete:!0});else if(e.action==="reconfigure")O.reconfigure(e),self.postMessage({id:e.id,isReconfigureComplete:!0});else if(e.action==="compute"){let n=O.compute(e),t=[n.cellMatrix.keys.buffer,n.cellMatrix.sums.buffer,n.cellMatrix.counts.buffer];if(n.indexMapsVersion!==void 0&&n.indexMapsVersion===ne){let r={...n,rowIndexMap:void 0,columnIndexMap:void 0,cardinalityMap:void 0,indexMapsOmitted:!0};postMessage(r,t);}else n.indexMapsVersion!==void 0&&(ne=n.indexMapsVersion),postMessage(n,t);}}catch(n){self.postMessage({id:e.id,error:n instanceof Error?n.message:String(n)});}};',_t='self.onmessage=async n=>{let{type:e,chunkId:c,chunk:s,fields:a,format:t,isFirstChunk:r,isLastChunk:o,locale:i}=n.data;if(e==="process_chunk")try{if(t==="csv"){let l=w(s,a,r,i);self.postMessage({type:"chunk_done",chunkId:c,format:"csv",payload:l});}else if(t==="excel-xml"){let l=T(s,a,r,o,i);self.postMessage({type:"chunk_done",chunkId:c,format:"excel-xml",payload:l});}}catch(l){self.postMessage({type:"error",chunkId:c,error:l instanceof Error?l.message:String(l)});}};var y=new Map,S=new Map;function h(n){if(!n||typeof n!="object")return false;let e=n;return "year"in e||"month"in e||"day"in e||"weekday"in e||"hour"in e||"minute"in e||"second"in e||"dateStyle"in e||"timeStyle"in e}var k={year:"numeric",month:"2-digit",day:"2-digit"};function x(n,e,c){let s=n instanceof Date?n:new Date(n);if(isNaN(s.getTime()))return String(n);try{let a=h(e?.format)?e.format:k,t=JSON.stringify(a)+"_"+c,r=S.get(t);return r||(r=new Intl.DateTimeFormat(c,a),S.set(t,r)),r.format(s)}catch{return String(n)}}function d(n,e,c="tr-TR"){if(n==null)return "";if(e?.dataType==="date"&&n!=="")return x(n,e,c);if(e&&e.format&&typeof n=="number")try{let s=e.format,a=JSON.stringify(s)+"_"+c,t=y.get(a);t||(t=new Intl.NumberFormat(c,s),y.set(a,t));let r=t.format(n);return s.isCustom&&(s.prefix||s.suffix)?`${s.prefix||""}${r}${s.suffix||""}`:r}catch{return String(n)}return String(n)}function w(n,e,c,s){let a="",t=e.map(r=>{let o=r.dataField||r.id;return typeof o=="string"?o:null});if(c){let r=e.map(o=>o.caption||o.id);a+=r.map(F).join(",")+`\n`;}for(let r of n){let o=new Array(t.length);for(let i=0;i<t.length;i++){let l=t[i],f=l?r[l]??"":"",u=d(f,e[i],s);typeof f=="string"&&(u=D(u)),o[i]=u;}a+=o.map(F).join(",")+`\n`;}return a}function D(n){return n.length>0&&/^[=+\\-@\\t\\r]/.test(n)?"\'"+n:n}function F(n){if(n==null)return "";let e=String(n);return e.includes(",")||e.includes(\'"\')||e.includes(`\n`)?`"${e.replace(/"/g,\'""\')}"`:e}function T(n,e,c,s,a){let t="",r=e.map(o=>{let i=o.dataField||o.id;return typeof i=="string"?i:null});c&&(t+=`<?xml version="1.0" encoding="UTF-8"?>\n`,t+=`<?mso-application progid="Excel.Sheet"?>\n`,t+=`<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">\n`,t+=` <Styles>\n`,t+=` <Style ss:ID="HeaderStyle">\n`,t+=` <Font ss:Bold="1" ss:Color="#FFFFFF"/>\n`,t+=` <Interior ss:Color="#4F81BD" ss:Pattern="Solid"/>\n`,t+=` </Style>\n`,t+=` </Styles>\n`,t+=` <Worksheet ss:Name="Data">\n`,t+=` <Table>\n`,t+=` <Row>\n`,e.forEach(o=>{t+=` <Cell ss:StyleID="HeaderStyle"><Data ss:Type="String">${g(o.caption||o.id||"")}</Data></Cell>\n`;}),t+=` </Row>\n`);for(let o of n){t+=` <Row>\n`;for(let i=0;i<r.length;i++){let l=r[i],f=l?o[l]:void 0,u=e[i],m="String",p="";if(f==null||f===""){t+=` <Cell></Cell>\n`;continue}else u?.dataType==="date"?(m="String",p=g(d(f,u,a))):typeof f=="number"?u&&u.format?(p=g(d(f,u,a)),m="String"):(m="Number",p=String(f)):(m="String",p=g(String(f)));t+=` <Cell><Data ss:Type="${m}">${p}</Data></Cell>\n`;}t+=` </Row>\n`;}return s&&(t+=` </Table>\n`,t+=` </Worksheet>\n`,t+="</Workbook>"),t}function g(n){return n?n.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/\'/g,"'"):""}',Gt='function T(e){return e.charCodeAt(0)===65279?e.slice(1):e}function S(e){return typeof e.text=="function"?e.text():new Promise((t,n)=>{let r=new FileReader;r.onload=i=>t(i.target?.result??""),r.onerror=()=>n(new Error("Dosya okuma hatas\\u0131.")),r.readAsText(e,"utf-8");})}function N(e){let t=[",",";"," ","|"],n=T(e).split(/\\r\\n|\\r|\\n/).filter(s=>s.length>0).slice(0,5);if(n.length===0)return ",";let r=",",i=-1;for(let s of t){let a=n.map(d=>W(d,s)),o=a.reduce((d,f)=>d+f,0);if(o===0)continue;let l=a[0],u=a.every(d=>d===l),c=o+(u?100:0)+l*10;c>i&&(i=c,r=s);}return r}function W(e,t){let n=0,r=false;for(let i=0;i<e.length;i++){let s=e[i];if(s===\'"\'){if(r&&e[i+1]===\'"\'){i++;continue}r=!r;}else !r&&s===t&&n++;}return n}function L(e,t,n){let r=T(e),i=t||N(r),s=[],a="",o=[],l=false,u=false,c=r.length,d=n?Math.max(1<<18,Math.ceil(c/100)):0,f=d;for(let g=0;g<r.length;g++){d&&g>=f&&(n(g/c),f+=d);let p=r[g];if(l){p===\'"\'?r[g+1]===\'"\'?(a+=\'"\',g++):l=false:a+=p;continue}p===\'"\'?(l=true,u=true):p===i?(o.push(a),a="",u=true):p===`\n`||p==="\\r"?(p==="\\r"&&r[g+1]===`\n`&&g++,o.push(a),s.push(o),o=[],a="",u=false):(a+=p,u=true);}return (u||a.length>0||o.length>0)&&(o.push(a),s.push(o)),n&&n(1),s}var A=new Set(["true","yes","evet","do\\u011Fru","dogru"]),F=new Set(["false","no","hay\\u0131r","hayir","yanl\\u0131\\u015F","yanlis"]);function B(e){let t=e.trim().toLowerCase();return A.has(t)||F.has(t)}function X(e){if(typeof e=="boolean")return e;let t=String(e).trim().toLowerCase();return A.has(t)||t==="1"||t==="y"||t==="on"?true:F.has(t)||t==="0"||t==="n"||t==="off"?false:null}function z(e){return /^0\\d+$/.test(e)}var Y=/[\u20BA$\u20AC\xA3\xA5]/g,K=/[\\s\xA0\u202F]/g;function _(e){if(typeof e=="number")return isNaN(e)?null:e;let t=String(e).trim();if(!t)return null;t=t.replace(K,"").replace(Y,"");let n=false;t.endsWith("%")&&(n=true,t=t.slice(0,-1));let r=false;if(/^\\(.*\\)$/.test(t)&&(r=true,t=t.slice(1,-1)),!/^[+-]?[0-9.,]*[0-9][0-9.,]*$/.test(t))return null;let i=t.includes("."),s=t.includes(",");if(i&&s)t.lastIndexOf(",")>t.lastIndexOf(".")?t=t.replace(/\\./g,"").replace(",","."):t=t.replace(/,/g,"");else if(s){let o=t.split(",");o.length===2&&o[1].length!==3?t=t.replace(",","."):t=t.replace(/,/g,"");}else i&&t.split(".").length>2&&(t=t.replace(/\\./g,""));let a=Number(t);return isNaN(a)?null:(r&&(a=-a),n&&(a=a/100),a)}var H=/^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}(:\\d{2})?(\\.\\d+)?(Z|[+-]\\d{2}:?\\d{2})?)?$/,Z=/^(\\d{4})[/.](\\d{1,2})[/.](\\d{1,2})$/,U=/^(\\d{1,2})[/.\\-](\\d{1,2})[/.\\-](\\d{4})$/;function D(e){if(e instanceof Date)return isNaN(e.getTime())?null:e;let t=String(e).trim();if(!t)return null;if(H.test(t)){let i=new Date(t.replace(" ","T"));return isNaN(i.getTime())?null:i}let n=Z.exec(t);if(n){let i=new Date(+n[1],+n[2]-1,+n[3]);return R(i,+n[1],+n[2],+n[3])?i:null}let r=U.exec(t);if(r){let i=+r[1],s=+r[2],a=+r[3],o,l;i>12&&s<=12?(o=i,l=s):s>12&&i<=12?(o=s,l=i):(o=i,l=s);let u=new Date(a,l-1,o);return R(u,a,l,o)?u:null}return null}function R(e,t,n,r){return !isNaN(e.getTime())&&e.getFullYear()===t&&e.getMonth()===n-1&&e.getDate()===r}function V(e){if(e==null||e==="")return "blank";if(typeof e=="boolean")return "boolean";if(typeof e=="number")return isNaN(e)?"blank":"number";if(e instanceof Date)return isNaN(e.getTime())?"blank":"date";let t=String(e).trim();return t===""?"blank":B(t)?"boolean":z(t)?"string":D(t)?"date":_(t)!==null?"number":"string"}function y(e){let t={string:0,number:0,date:0,boolean:0};for(let i of e){let s=V(i);s!=="blank"&&t[s]++;}let n="string",r=0;return Object.keys(t).forEach(i=>{t[i]>r&&(r=t[i],n=i);}),n}function v(e,t){if(e==null||e==="")return null;switch(t){case "number":return _(e);case "date":return D(e)??(e instanceof Date?e:null);case "boolean":return X(e);default:return e}}var Q=new Set(["__proto__","constructor","prototype"]);function x(e){return Q.has(e)?`${e}_`:e}var E=200,M=2e4;function G(e){let t=new Map;return e.map(n=>{let r=t.get(n)??0;return t.set(n,r+1),x(r===0?n:`${n}_${r+1}`)})}function O(e,t){if(e.length===0)return [];let n=[],r=new Set,i=Math.min(e.length,500);for(let o=0;o<i;o++){let l=e[o];if(!(!l||typeof l!="object"))for(let u of Object.keys(l))r.has(u)||(r.add(u),n.push(u));}let s=new Map;for(let o of n){let l=[];for(let u=0;u<e.length&&l.length<E;u++){let c=e[u]?.[o];c!=null&&String(c).trim()!==""&&l.push(c);}s.set(o,y(l));}let a=new Array(e.length);for(let o=0;o<e.length;o++){let l=e[o]||{},u={};for(let c of n){let d=l[c];u[x(c)]=d==null||d===""?null:v(d,s.get(c));}a[o]=u;}return a}function I(e,t){let n=T(e);if(!n.trim())return [];let r=N(n),i=L(n,r,t?c=>t({phase:"parsing",percent:Math.round(c*60)}):void 0);if(i.length===0)return [];let s=0;for(;s<i.length&&i[s].every(c=>c.trim()==="");)s++;if(s>=i.length)return [];let a=G(i[s].map((c,d)=>c.trim()||`Column${d+1}`)),o=i.slice(s+1).filter(c=>!(c.length===1&&c[0].trim()==="")),l=a.map((c,d)=>{let f=[];for(let g=0;g<o.length&&f.length<E;g++){let p=o[g][d];p!==void 0&&p.trim()!==""&&f.push(p);}return y(f)}),u=new Array(o.length);for(let c=0;c<o.length;c++){let d=o[c],f={};for(let g=0;g<a.length;g++){let p=d[g];f[a[g]]=p===void 0||p===""?null:v(p,l[g]);}u[c]=f,t&&c>0&&c%M===0&&t({phase:"typing",percent:60+Math.round(c/o.length*40)});}return t&&t({phase:"typing",percent:100}),u}var b=class e{supports(t){return t.name.split(".").pop()?.toLowerCase()==="xml"||t.type==="application/xml"||t.type==="text/xml"}async read(t){let n=await S(t);return e.parse(n)}static parse(t){if(!t||!t.trim())return [];let n=q(t),i=tt(n).map(et).filter(s=>Object.keys(s).length>0);return O(i)}};function q(e){let t={tag:"#root",attrs:{},children:[],text:"",parent:null},n=t,r=0,i=e.length;for(;r<i;){let s=e.indexOf("<",r);if(s===-1){n.text+=e.slice(r);break}if(s>r&&(n.text+=e.slice(r,s)),e.startsWith("<!--",s)){let f=e.indexOf("-->",s+4);r=f===-1?i:f+3;continue}if(e.startsWith("<![CDATA[",s)){let f=e.indexOf("]]>",s+9);n.text+=e.slice(s+9,f===-1?i:f),r=f===-1?i:f+3;continue}if(e.startsWith("<?",s)){let f=e.indexOf("?>",s+2);r=f===-1?i:f+2;continue}if(e.startsWith("<!",s)){let f=e.indexOf(">",s+2);r=f===-1?i:f+1;continue}let a=e.indexOf(">",s+1);if(a===-1)break;let o=e.slice(s+1,a).trim();if(o.startsWith("/")){let f=o.slice(1).trim(),g=n;for(;g&&g.tag!==f;)g=g.parent;g&&g.parent&&(n=g.parent),r=a+1;continue}let l=o.endsWith("/");l&&(o=o.slice(0,-1).trim());let{name:u,attrs:c}=J(o),d={tag:u,attrs:c,children:[],text:"",parent:n};n.children.push(d),l||(n=d),r=a+1;}return t}var P=/([^\\s=/]+)\\s*=\\s*(?:"([^"]*)"|\'([^\']*)\')/g;function J(e){let t=e.search(/\\s/),n=(t===-1?e:e.slice(0,t)).trim(),r={};if(t!==-1){let i=e.slice(t+1),s;for(P.lastIndex=0;(s=P.exec(i))!==null;)r[s[1]]=C(s[2]??s[3]??"");}return {name:n,attrs:r}}function tt(e){let t=e.children[0];if(!t)return [];let n=t.children;return n.length===0?[]:n.some(i=>i.children.length>0||Object.keys(i.attrs).length>0)?n:[t]}function et(e){let t={},n=new Map,r=(i,s)=>{let a=i||"value",o=n.get(a)??0;n.set(a,o+1),t[x(o===0?a:`${a}_${o+1}`)]=s;};for(let[i,s]of Object.entries(e.attrs))r(i,s);if(e.children.length===0){let i=e.text.trim();i&&r(e.tag,C(i));}else for(let i of e.children)r(i.tag,C($(i).trim()));return t}function $(e){if(e.children.length===0)return e.text;let t=e.text;for(let n of e.children)t+=$(n);return t}var nt=/&(#x?[0-9a-fA-F]+|[a-zA-Z]+);/g,rt={amp:"&",lt:"<",gt:">",quot:\'"\',apos:"\'",nbsp:"\\xA0"};function C(e){return e.indexOf("&")===-1?e:e.replace(nt,(t,n)=>{if(n[0]==="#"){let r=n[1]==="x"||n[1]==="X"?parseInt(n.slice(2),16):parseInt(n.slice(1),10);return Number.isFinite(r)?String.fromCodePoint(r):t}return rt[n]??t})}var h=class{static extractFieldsFromData(t,n=50){if(!t||t.length===0)return [];let r=[],i=Math.max(n,50),s=this.collectKeys(t,i),a=false,o=false;return s.forEach(l=>{let u=this.inferType(t,l,n),c="chooser";!a&&this.isAutoRowCandidate(t,l,u,i)?(c="row",a=true):!o&&this.isAutoDataCandidate(l,u)&&(c="data",o=true);let d={id:`f_${l}`,dataField:l,caption:this.formatCaption(l),dataType:u,area:c,areaIndex:0};u==="number"?d.summaryType="sum":u==="date"&&(d.groupInterval="month"),r.push(d);}),r}static buildFieldsFromPlan(t,n,r=50){let i=[],s=false,a=false,o=Math.max(r,50);for(let l of t){let u="chooser";!s&&this.isAutoRowCandidate(n,l.dataField,l.dataType,o)?(u="row",s=true):!a&&this.isAutoDataCandidate(l.dataField,l.dataType)&&(u="data",a=true);let c={id:`f_${l.dataField}`,dataField:l.dataField,caption:l.caption,dataType:l.dataType,area:u,areaIndex:0};l.dataType==="number"?c.summaryType="sum":l.dataType==="date"&&(c.groupInterval="month"),i.push(c);}return i}static isAutoRowCandidate(t,n,r,i){return !(n.startsWith("__EMPTY")||r!=="string"&&r!=="date"||this.isIdentifierLikeKey(n)||r==="string"&&t&&this.isHighCardinalityStringColumn(t,n,i))}static isAutoDataCandidate(t,n){return n==="number"&&!t.startsWith("__EMPTY")&&!this.isIdentifierLikeKey(t)}static isHighCardinalityStringColumn(t,n,r){let i=Math.min(t.length,r),s=new Set,a=0;for(let o=0;o<i;o++){let l=t[o]?.[n];l==null||l===""||(a++,s.add(String(l)));}return a<20?false:s.size/a>=.9}static isIdentifierLikeKey(t){let n=t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase(),r=n.replace(/[^a-z0-9]/g,"");return r==="id"||r==="uuid"||r==="guid"||r==="key"?true:/(^|[\\s_.-])(id|uuid|guid|key)($|[\\s_.-])/.test(n)}static collectKeys(t,n){let r=[],i=new Set,s=Math.min(t.length,n);for(let a=0;a<s;a++){let o=t[a];if(!(!o||typeof o!="object"))for(let l of Object.keys(o))i.has(l)||(i.add(l),r.push(l));}return r}static inferType(t,n,r){let i=Math.min(t.length,r),s=new Array(i);for(let a=0;a<i;a++)s[a]=t[a]?.[n];return y(s)}static formatCaption(t){return t.replace(/([A-Z])/g," $1").replace(/_/g," ").replace(/^./,n=>n.toUpperCase()).trim()}};var k=self;k.onmessage=async e=>{let t=e.data;if(!t||t.type!=="parse")return;let{jobId:n,kind:r,file:i}=t;try{if(r==="csv"){m(n,"reading",3);let s=await i.text(),a=I(s,l=>{m(n,l.phase,5+Math.round(l.percent*.92));});m(n,"finalizing",98);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});return}if(r==="xml"){m(n,"reading",10);let s=await i.text();m(n,"parsing",50);let a=b.parse(s);m(n,"finalizing",90);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});return}if(r==="json"){m(n,"reading",10);let s=await i.text();m(n,"parsing",45);let a=JSON.parse(s);if(Array.isArray(a)){m(n,"finalizing",90);let o=h.extractFieldsFromData(a);w(n,{mode:"data",data:a,fields:o});}else w(n,{mode:"raw",value:a});return}j(n,`Desteklenmeyen i\\xE7e aktarma t\\xFCr\\xFC: ${String(r)}`);}catch(s){j(n,s instanceof Error?s.message:String(s));}};function m(e,t,n){k.postMessage({type:"progress",jobId:e,phase:t,percent:n});}function w(e,t){k.postMessage({type:"done",jobId:e,payload:t});}function j(e,t){k.postMessage({type:"error",jobId:e,message:t});}';var Ht={pivot:zt,export:_t,import:Gt},Wt={};function $r(o){return Ht[o].length>0}function Kr(o){let e=Wt[o];if(e)return e;if(!$r(o))throw new Error(`[pivotgrid] this build carries no embedded ${o} worker (the build step that inlines it did not run).`);if(typeof Blob>"u"||typeof URL?.createObjectURL!="function")throw new Error("[pivotgrid] Blob URLs are unavailable, so the embedded worker cannot start.");let t=URL.createObjectURL(new Blob([Ht[o]],{type:"text/javascript"}));return Wt[o]=t,t}function ce(o,e){try{return new Worker(Kr(o),{type:"module"})}catch{return new Worker(e(),{type:"module"})}}var de=class o{static jobCounter=0;static isSupported(){return typeof Worker<"u"}parseFile(e,t,r={}){let{onProgress:u,signal:i}=r;return new Promise((n,a)=>{let s;try{s=ce("import",()=>{let m=()=>"./import.worker.js";return new URL(m(),import.meta.url)});}catch(m){a(m instanceof Error?m:new Error(String(m)));return}let l=`imp_${++o.jobCounter}`,c=false,d=()=>{try{s.terminate();}catch{}i?.removeEventListener("abort",p);},p=()=>{c||(c=true,d(),a(new DOMException("Import aborted","AbortError")));};if(i){if(i.aborted){p();return}i.addEventListener("abort",p);}s.onmessage=m=>{let f=m.data;if(!(!f||f.jobId!==l)){if(f.type==="progress")u?.({phase:f.phase,percent:f.percent});else if(f.type==="done"){if(c)return;c=true,d(),n(f.payload);}else if(f.type==="error"){if(c)return;c=true,d(),a(new Error(f.message||"Import worker error"));}}},s.onerror=m=>{c||(c=true,d(),a(new Error(`Import worker error: ${m.message||"unknown"}`)));},s.postMessage({type:"parse",jobId:l,kind:t,file:e});})}};var jr=500*1024*1024,Yr={version:"1.0.0",type:"DATA_ONLY",timestamp:"",data:[],fields:[]},Fe=class{readers=[new Ce,new Ie,new ye,new ke];maxFileSizeBytes;stream=new de;constructor(e){this.maxFileSizeBytes=e?.maxFileSizeBytes??jr;}async processFile(e){this.assertSize(e);let t=this.readers.find(u=>u.supports(e));if(!t)throw new Error("Desteklenmeyen dosya format\u0131.");let r=await t.read(e);return this.buildFromContent(r)}async processFileStreaming(e,t={}){let{onProgress:r,signal:u}=t;if(this.assertSize(e),u?.aborted)return this.cancelledResult();let i=this.workerKind(e);if(i&&de.isSupported())try{let s=await this.stream.parseFile(e,i,{onProgress:r,signal:u});return s.mode==="data"?this.buildDataResult(s.data,s.fields):this.buildFromContent(s.value)}catch(s){return this.isAbort(s)||u?.aborted?this.cancelledResult():this.processFile(e)}r?.({phase:"parsing",percent:10});let n=this.readers.find(s=>s.supports(e));if(!n)throw new Error("Desteklenmeyen dosya format\u0131.");if(u?.aborted)return this.cancelledResult();let a=await n.read(e);return u?.aborted?this.cancelledResult():(r?.({phase:"finalizing",percent:100}),this.buildFromContent(a))}async processFromData(e,t={}){return t.signal?.aborted?this.cancelledResult():(t.onProgress?.({phase:"finalizing",percent:100}),this.buildDataResult(Array.isArray(e)?e:[]))}async processFromText(e,t={}){if(t.signal?.aborted)return this.cancelledResult();t.onProgress?.({phase:"parsing",percent:20});let r=ge(e);return t.signal?.aborted?this.cancelledResult():(t.onProgress?.({phase:"finalizing",percent:100}),this.buildDataResult(r))}async processFromUrl(e,t={}){let{onProgress:r,signal:u,fetchInit:i}=t;if(u?.aborted)return this.cancelledResult();r?.({phase:"reading",percent:2});let n;try{n=await fetch(e,{...i,signal:u});}catch(d){if(this.isAbort(d)||u?.aborted)return this.cancelledResult();throw new Error(`URL getirilemedi: ${d instanceof Error?d.message:String(d)}`)}if(!n.ok)throw new Error(`URL getirilemedi (HTTP ${n.status} ${n.statusText}).`);let a=await n.blob(),s=n.headers.get("content-type")||a.type||"",l=Zr(e,s),c=new File([a],l,{type:a.type||s});return this.processFileStreaming(c,{onProgress:r,signal:u})}async processFiles(e,t={}){let r=Array.from(e);if(r.length===0)return this.buildDataResult([]);if(r.length===1)return this.processFileStreaming(r[0],t);let{onProgress:u,signal:i}=t,n=[],a=new Set;for(let l=0;l<r.length;l++){if(i?.aborted)return this.cancelledResult();let c=await this.processFileStreaming(r[l],{signal:i,onProgress:d=>u?.({phase:d.phase,percent:Math.round((l+d.percent/100)/r.length*100)})});if(c.cancelled)return this.cancelledResult();Array.isArray(c.snapshot?.data)&&n.push(...c.snapshot.data),c.validation.warnings.forEach(d=>a.add(d));}let s=this.buildDataResult(n);return a.forEach(l=>{s.validation.warnings.includes(l)||s.validation.warnings.push(l);}),s}assertSize(e){if(this.maxFileSizeBytes>0&&e.size>this.maxFileSizeBytes){let t=(this.maxFileSizeBytes/1048576).toFixed(0);throw new Error(`Dosya \xE7ok b\xFCy\xFCk (limit: ${t} MB). L\xFCtfen daha k\xFC\xE7\xFCk bir dosya y\xFCkleyin veya limiti art\u0131r\u0131n.`)}}workerKind(e){let t=e.name.split(".").pop()?.toLowerCase();return t==="csv"||t==="tsv"||t==="txt"||e.type==="text/csv"||e.type==="text/tab-separated-values"?"csv":t==="json"||e.type==="application/json"?"json":t==="xml"||e.type==="application/xml"||e.type==="text/xml"?"xml":null}isAbort(e){return e instanceof DOMException&&e.name==="AbortError"}cancelledResult(){return {snapshot:Yr,validation:{isValid:false,errors:[],warnings:[]},cancelled:true}}buildFromContent(e){if(Array.isArray(e))return this.buildDataResult(e);let t=e,r=le.validateSnapshot(t);if(t.data&&t.fields){let u=le.validateDataAgainstFields(t.data,t.fields);r.warnings.push(...u.warnings);}return {snapshot:t,validation:r}}buildDataResult(e,t){let r=Je(e),u=t??te.extractFieldsFromData(r),i={version:"1.0.0",type:"DATA_ONLY",timestamp:new Date().toISOString(),data:r,fields:u},n=le.validateSnapshot(i);return u.some(s=>s.dataField?.toString().startsWith("__EMPTY"))&&n.warnings.push('Bu dosya ham veri (Raw Data) de\u011Fil, g\xF6rsel "Pivot View" format\u0131nda d\u0131\u015Fa aktar\u0131lm\u0131\u015F bir Excel gibi g\xF6r\xFCn\xFCyor. PivotGrid yaln\u0131zca d\xFCz liste (List View) \u015Feklindeki verileri anlamland\u0131rabilir. Bu nedenle veriler bozuk g\xF6r\xFCnebilir.'),{snapshot:i,validation:n}}};function Zr(o,e){let t="download";try{let n=new URL(o,"http://localhost").pathname.split("/").filter(Boolean).pop();n&&(t=n);}catch{}if(/\.(csv|tsv|txt|json|xml|xlsx|xls)$/i.test(t))return t;let r=e.toLowerCase(),u="csv";return r.includes("json")?u="json":r.includes("xml")?u="xml":r.includes("spreadsheet")||r.includes("excel")||r.includes("officedocument")?u="xlsx":r.includes("tab-separated")?u="tsv":r.includes("csv")&&(u="csv"),`${t}.${u}`}function Ve(o,e){return {kind:e,dataField:o.dataField,dataType:o.dataType,groupInterval:o.groupInterval,isCalculated:o.isCalculated,formulaString:o.formulaString,calcExpr:o.calculateExpression}}function Xr(o,e){return o?o.kind===e.kind&&o.dataField===e.dataField&&o.dataType===e.dataType&&o.groupInterval===e.groupInterval&&!!o.isCalculated==!!e.isCalculated&&o.formulaString===e.formulaString&&o.calcExpr===e.calcExpr:false}var re=new Map,ue="default";function rt(o,e){let t=re.get(o);if(t&&t.pendingTermination&&(clearTimeout(t.pendingTermination),t.pendingTermination=null),!t){let r=e?new Worker(e,{type:"module"}):ce("pivot",()=>{let n=()=>"./pivot.worker.js";return new URL(n(),import.meta.url)}),u=new Map,i={worker:r,resolvers:u,messageIdCounter:0,stringToInt:new Map,dictionary:[""],fieldDistinctValues:new Map,encodedColumns:new Map,encodedRowCount:-1,sourceData:null,initInFlight:null,pendingTermination:null,lastRowIndexMap:null,lastColumnIndexMap:null,lastCardinalityMap:null};r.onmessage=n=>{let{id:a,error:s,isInitComplete:l,isFilterComplete:c,isReconfigureComplete:d,rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:y,columnIndexMap:g,cardinalityMap:C,indexMapsOmitted:x}=n.data,A=u.get(a);A&&(s?A.reject(new Error(`Worker Error: ${s}`)):l?A.resolve({isInitComplete:true}):c?A.resolve({isFilterComplete:true}):d?A.resolve({isReconfigureComplete:true}):x?A.resolve({rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:i.lastRowIndexMap||{},columnIndexMap:i.lastColumnIndexMap||{},cardinalityMap:i.lastCardinalityMap||{}}):(i.lastRowIndexMap=y,i.lastColumnIndexMap=g,i.lastCardinalityMap=C,A.resolve({rowTree:p,colTree:m,cellMatrix:f,rowIndexMap:y,columnIndexMap:g,cardinalityMap:C})),u.delete(a));},r.onerror=n=>{let a=n.message||"Worker failed to load or crashed";for(let s of u.values())s.reject(new Error(a));u.clear();},t=i,re.set(o,t);}return t}function oe(o){ue=o;}var qr=5e3;function ut(o){let e=re.get(o);e&&(e.pendingTermination&&clearTimeout(e.pendingTermination),e.pendingTermination=setTimeout(()=>{e.worker.terminate(),e.resolvers.clear(),re.delete(o);},qr));}var Q=5e4,Ut=[],Ne=null;function Oe(){return typeof MessageChannel>"u"?new Promise(o=>setTimeout(o,0)):(Ne||(Ne=new MessageChannel,Ne.port1.onmessage=()=>{Ut.shift()?.();}),new Promise(o=>{Ut.push(o),Ne.port2.postMessage(null);}))}function tt(o,e){return o.isCalculated&&typeof o.calculateExpression=="string"&&e?{...o,calculateExpression:e.resolveSafe(o.calculateExpression,"expression")}:o}async function Jr(o,e,t){let r=e.length,u=r>Q,i=new Int32Array(r),n=new Map;for(let s=0;s<r;s+=Q){let l=Math.min(s+Q,r);for(let c=s;c<l;c++){let d=j(e[c],o),p=String(d);i[c]=t(p),n.has(p)||n.set(p,d);}u&&l<r&&await Oe();}let a=Array.from(n,([s,l])=>({rawStr:s,rawVal:l}));return o.dataType==="number"?a.sort((s,l)=>Number(s.rawVal)-Number(l.rawVal)):a.sort((s,l)=>s.rawStr.localeCompare(l.rawStr)),{array:i,distinct:a}}async function Qr(o,e){let t=e.length,r=t>Q,u=new Float64Array(t);for(let i=0;i<t;i+=Q){let n=Math.min(i+Q,t);for(let a=i;a<n;a++){let s=j(e[a],o);o.isCalculated&&typeof o.calculateExpression=="function"&&(s=o.calculateExpression(e[a])),u[a]=Number(s)||0;}r&&n<t&&await Oe();}return u}function eu(o,e,t){let r=o.map(a=>({field:a,fastPath:!a.isCalculated&&!a.groupInterval&&!!a.dataField,dataField:a.dataField,valCache:new Map,distinctMap:new Map})),u=e.map(a=>({field:a,fastPath:!a.isCalculated&&!a.groupInterval&&!!a.dataField,dataField:a.dataField})),i=r.length,n=u.length;return {async encodeRange(a,s,l){let c=l-s,d=r.map(()=>new Int32Array(c)),p=u.map(()=>new Float64Array(c));for(let m=s;m<l;m+=Q){let f=Math.min(m+Q,l);for(let y=m;y<f;y++){let g=a[y],C=y-s;for(let x=0;x<i;x++){let A=r[x],h;if(A.fastPath){let v=g[A.dataField];h=v??"(Blank)";}else h=j(a[y],A.field);if(typeof h=="object"){let v=String(h);d[x][C]=t(v),A.distinctMap.has(v)||A.distinctMap.set(v,h);}else {let v=A.valCache.get(h);if(v===void 0){let F=String(h);v=t(F),A.valCache.set(h,v),A.distinctMap.has(F)||A.distinctMap.set(F,h);}d[x][C]=v;}}for(let x=0;x<n;x++){let A=u[x];if(A.fastPath){let h=g[A.dataField];p[x][C]=h==null?0:Number(h)||0;}else {let h=j(a[y],A.field);A.field.isCalculated&&typeof A.field.calculateExpression=="function"&&(h=A.field.calculateExpression(a[y])),p[x][C]=Number(h)||0;}}}f<l&&await Oe();}return {groupArrays:d,measureArrays:p}},finalizeDistincts(){let a=new Map;for(let s of r){let l=Array.from(s.distinctMap,([c,d])=>({rawStr:c,rawVal:d}));s.field.dataType==="number"?l.sort((c,d)=>Number(c.rawVal)-Number(d.rawVal)):l.sort((c,d)=>c.rawStr.localeCompare(d.rawStr)),a.set(s.field.id,l);}return a}}}var pe=o=>o.map(e=>({...e,dataField:e.id,calculateExpression:void 0,calculateSummaryExpression:void 0,calculateCustomSummary:void 0,calculateCustomSort:void 0,format:void 0,conditionalFormatting:void 0,cellTemplate:void 0})),$t=25e4;function tu(o){let e=[];for(let t of o){if(!t.filterValues||t.filterValues.size===0)continue;let r=new Set,u=[];for(let i of t.filterValues)for(let n of Kt(i))r.has(n)||(r.add(n),u.push(n));e.push({fieldId:t.id,filterType:t.filterType||"include",valueStrings:u});}return e.length>0?e:void 0}async function ot(o,e,t,r,u,i,n){let a=re.get(ue);if(a&&(a.pendingTermination&&(clearTimeout(a.pendingTermination),a.pendingTermination=null),!n?.forceReencode&&(a.initInFlight&&a.initInFlight.data===o&&await a.initInFlight.promise.catch(()=>{}),a.sourceData===o&&a.encodedRowCount===o.length&&await Le(o,e,t,r,u))))return {filtersApplied:false};let s=rt(ue,i),l=ru(s,o,e,t,r,u,n?.filterState);s.initInFlight={data:o,promise:l};try{return await l}finally{s.initInFlight&&s.initInFlight.promise===l&&(s.initInFlight=null);}}async function ru(o,e,t,r,u,i,n){let a=[...t,...r],s=e.length,l=new Map,c=[""],d=F=>{let I=l.get(F);return I===void 0&&(I=c.length,l.set(F,I),c.push(F)),I},p=a.map(F=>tt(F,i)),m=u.map(F=>tt(F,i)),f=eu(p,m,d),y=n?tu(n.fields):void 0,g=n?.prefilter&&n.prefilter.conditions.length>0?it(n.prefilter):void 0,C={};for(let F of a)C[F.id]="int32";for(let F of u)C[F.id]="float64";let x=`init_${o.messageIdCounter++}`,A=new Promise((F,I)=>{o.resolvers.set(x,{resolve:F,reject:I});});o.worker.postMessage({action:"initStart",id:x,rowCountTotal:s,columnTypes:C,dictionary:[""],rowFields:pe(t),colFields:pe(r),dataFields:pe(u),filters:y,prefilter:g,workerBootstrap:i?i.getWorkerBootstrapPayload():[]});let h=1;for(let F=0;F<s;F+=$t){let I=Math.min(F+$t,s),{groupArrays:b,measureArrays:B}=await f.encodeRange(e,F,I),w={},P=[];a.forEach((T,M)=>{w[T.id]=b[M].buffer,P.push(b[M].buffer);}),u.forEach((T,M)=>{w[T.id]=B[M].buffer,P.push(B[M].buffer);});let R=h<c.length?c.slice(h):void 0;h=c.length,o.worker.postMessage({action:"initChunk",id:x,start:F,end:I,columns:w,dictionaryAppend:R},P),I<s&&await Oe();}let v=new Map;for(let F of a)v.set(F.id,Ve(F,"int32"));for(let F of u)v.set(F.id,Ve(F,"float64"));return o.stringToInt=l,o.dictionary=c,o.fieldDistinctValues=f.finalizeDistincts(),o.encodedColumns=v,o.encodedRowCount=s,o.sourceData=e,o.worker.postMessage({action:"initEnd",id:x}),await A,{filtersApplied:!!n}}async function Le(o,e,t,r,u){let i=re.get(ue);if(!i||i.encodedRowCount!==o.length||i.encodedRowCount<0)return false;i.pendingTermination&&(clearTimeout(i.pendingTermination),i.pendingTermination=null);let n=[];for(let d of [...e,...t])n.push({field:d,kind:"int32"});for(let d of r)n.push({field:d,kind:"float64"});let a=n.filter(d=>!Xr(i.encodedColumns.get(d.field.id),Ve(d.field,d.kind))),s,l,c=[];if(a.length>0){s={};let d=i.dictionary.length,p=m=>{let f=i.stringToInt.get(m);return f===void 0&&(f=i.dictionary.length,i.stringToInt.set(m,f),i.dictionary.push(m)),f};for(let{field:m,kind:f}of a){let y=tt(m,u);if(f==="int32"){let{array:g,distinct:C}=await Jr(y,o,p);s[m.id]={type:"int32",buffer:g.buffer},c.push(g.buffer),i.fieldDistinctValues.set(m.id,C);}else {let g=await Qr(y,o);s[m.id]={type:"float64",buffer:g.buffer},c.push(g.buffer);}i.encodedColumns.set(m.id,Ve(m,f));}i.dictionary.length>d&&(l=i.dictionary.slice(d));}return new Promise((d,p)=>{let m=`reconfigure_${i.messageIdCounter++}`;i.resolvers.set(m,{resolve:()=>d(true),reject:p}),i.worker.postMessage({action:"reconfigure",id:m,rowFields:pe(e),colFields:pe(t),dataFields:pe(r),newColumns:s,dictionaryAppend:l},c);})}async function ve(o,e){let t=rt(ue);return new Promise((r,u)=>{let i=[];for(let s of o){if(!s.filterValues||s.filterValues.size===0)continue;let l=[],c=new Set;for(let d of s.filterValues){let p=Kt(d);for(let m of p){let f=t.stringToInt.get(m);f!==void 0&&!c.has(f)&&(c.add(f),l.push(f));}}i.push({fieldId:s.id,filterType:s.filterType||"include",dictIds:l});}let n;e&&e.conditions.length>0&&(n=it(e));let a=`filter_${t.messageIdCounter++}`;t.resolvers.set(a,{resolve:r,reject:u}),t.worker.postMessage({action:"filter",id:a,filters:i,prefilter:n});})}function Kt(o){if(o==null||o==="(Blank)"||o==="(Blanks)")return ["(Blank)","(Blanks)","null","undefined"];if(o instanceof Date){let e=[String(o)];return Number.isNaN(o.getTime())||e.push(o.toISOString()),e}return [String(o)]}function it(o){return {logicalOperator:o.logicalOperator||"and",conditions:(o.conditions||[]).map(e=>{if("logicalOperator"in e)return it(e);let t=e;return {fieldId:t.fieldId,operator:t.operator,value:t.value}})}}async function ze(o,e){let t=rt(ue);return new Promise((r,u)=>{let i=`compute_${t.messageIdCounter++}`;t.resolvers.set(i,{resolve:r,reject:u}),t.worker.postMessage({action:"compute",id:i,expandedPaths:o,expandedColPaths:e});}).then(r=>r)}function uu(o){let e=re.get(ue);return e?e.fieldDistinctValues.get(o)??null:null}function _e(o,e,t){let{cellMatrix:r}=o,u=e.filter(a=>a.isCalculated&&a.calculateSummaryExpression);if(u.length===0||!r?.keys)return;let i=r.keys.length,n=e.length;for(let a=0;a<i;a++){let s={};for(let l=0;l<n;l++)s[e[l].id]=r.sums[a*n+l];for(let l of u)if(l.calculateSummaryExpression)try{let c=l.calculateSummaryExpression;if(typeof c=="string"&&t&&(c=t.resolveSafe(c,"summary")),typeof c=="function"){let d=c(s),p=e.findIndex(m=>m.id===l.id);p>=0&&(r.sums[a*n+p]=d);}}catch{}}}function Ge(o,e){let{cellMatrix:t,rowIndexMap:r,columnIndexMap:u,rowTree:i}=o;if(!t?.keys||t.keys.length===0||e.filter(c=>c.summaryDisplayMode&&c.summaryDisplayMode!=="absolute").length===0)return;let a=t.keys.length,s=e.length;t.displaySums=new Float64Array(t.sums);let l=new Map;for(let c=0;c<a;c++)l.set(t.keys[c],c);for(let c=0;c<s;c++){let p=e[c].summaryDisplayMode;if(!(!p||p==="absolute"))switch(p){case "percentOfTotal":ou(t,l,a,s,c);break;case "percentOfColumnTotal":iu(t,l,a,s,c);break;case "percentOfRowTotal":nu(t,l,a,s,c);break;case "runningTotal":nt(t,l,s,c,i,r,u,"runningTotal");break;case "difference":nt(t,l,s,c,i,r,u,"difference");break;case "percentDifference":nt(t,l,s,c,i,r,u,"percentDifference");break}}}function ou(o,e,t,r,u){let i=e.get(0),n=i!==void 0?o.sums[i*r+u]:0;for(let a=0;a<t;a++){let s=o.sums[a*r+u];o.displaySums[a*r+u]=n!==0?s/n*100:0;}}function iu(o,e,t,r,u){for(let i=0;i<t;i++){let a=o.keys[i]%67108864,s=e.get(a),l=s!==void 0?o.sums[s*r+u]:0,c=o.sums[i*r+u];o.displaySums[i*r+u]=l!==0?c/l*100:0;}}function nu(o,e,t,r,u){for(let i=0;i<t;i++){let n=o.keys[i],s=Math.floor(n/67108864)*67108864,l=e.get(s),c=l!==void 0?o.sums[l*r+u]:0,d=o.sums[i*r+u];o.displaySums[i*r+u]=c!==0?d/c*100:0;}}function nt(o,e,t,r,u,i,n,a){let s=au(u),l=Object.keys(n);for(let c of l){let d=n[c],p=0,m=null;for(let f of s){let y=i[f];if(y===void 0)continue;let g=y*67108864+d,C=e.get(g);if(C===void 0)continue;let x=o.sums[C*t+r];switch(a){case "runningTotal":p+=x,o.displaySums[C*t+r]=p;break;case "difference":o.displaySums[C*t+r]=m!==null?x-m:x;break;case "percentDifference":o.displaySums[C*t+r]=m!==null&&m!==0?(x-m)/Math.abs(m)*100:0;break}m=x;}}}function au(o){let e=[],t=r=>{for(let u of r)e.push(u.key),u.children&&u.children.length>0&&t(u.children);};return t(o),e}function ee(o,e,t,r,u,i,n){if(!o||o.length===0)return;let a=e[o[0].depth];if(!a){for(let c of o)ee(c.children,e,t,r,u,i,n);return}let s=a.sortOrder||"asc",l=a.sortBySummaryField;if(l&&!n&&t?.cellMatrix){n=new Map;let c=t.cellMatrix.keys;for(let d=0;d<c.length;d++)n.set(c[d],d);}o.sort((c,d)=>{let p=0;if(l&&n&&t){let m=c.key,f=d.key,y=a.sortBySummaryPath||"",g=u?m:y,C=u?y:m,x=u?f:y,A=u?y:f,h=t.rowIndexMap[g]??0,v=t.columnIndexMap[C]??0,F=t.rowIndexMap[x]??0,I=t.columnIndexMap[A]??0,b=h*67108864+v,B=F*67108864+I,w=n.get(b),P=n.get(B),R=r.findIndex(L=>L.id===l),T=r.length,M=w!==void 0&&R>=0?t.cellMatrix.sums[w*T+R]:0,N=P!==void 0&&R>=0?t.cellMatrix.sums[P*T+R]:0;p=M>N?1:M<N?-1:0;}else if(a.calculateCustomSort)p=a.calculateCustomSort(c.value,d.value);else {let m=c.value,f=d.value;if(typeof m=="number"&&typeof f=="number")p=m-f;else {let y=String(m),g=String(f);p=y.localeCompare(g,i,{numeric:true});}}return s==="asc"?p:-p});for(let c of o)ee(c.children,e,t,r,u,i,n);}var Ae=class{config;initTimeout=null;computeTimeout=null;progressTimer=null;progressCompletionTimer=null;progressStartedAt=0;progressStartValue=0;progressCap=99;progressEstimateMs=1500;initVersion=0;computeVersion=0;disposed=false;isInitComplete=false;forceNextReencode=false;hashes={dataRef:null,structuralFieldsHash:"",filterHash:"",prefilterRef:null,expandedPathsHash:"",expandedColPathsHash:"",fieldsHash:""};constructor(e){this.config=e;}refresh(){if(this.disposed)return;let e=this.config.getState(),t=this.config.getOptions(),r=this.createStructuralFieldsHash(e.fields),u=this.createFilterHash(e.fields),i=this.createFieldsHash(e.fields),n=this.createSetHash(e.expandedPaths),a=this.createSetHash(e.expandedColPaths),s=this.hashes.fieldsHash,l=this.hashes.dataRef!==t.data,c=this.hashes.structuralFieldsHash!==r,d=this.hashes.filterHash!==u||this.hashes.prefilterRef!==e.layout.prefilter;if(l||c){this.hashes.dataRef=t.data,this.hashes.structuralFieldsHash=r,this.hashes.filterHash=u,this.hashes.prefilterRef=e.layout.prefilter,this.hashes.expandedPathsHash=n,this.hashes.expandedColPathsHash=a,this.hashes.fieldsHash=i,l?this.scheduleInit():this.scheduleReconfigure(d);return}if(d){this.hashes.filterHash=u,this.hashes.prefilterRef=e.layout.prefilter,this.hashes.expandedPathsHash=n,this.hashes.expandedColPathsHash=a,this.hashes.fieldsHash=i,this.scheduleFilter();return}(this.hashes.expandedPathsHash!==n||this.hashes.expandedColPathsHash!==a||s!==i)&&(this.hashes.expandedPathsHash=n,this.hashes.expandedColPathsHash=a,this.hashes.fieldsHash=i,this.scheduleComputeIfReady());}refreshData(){this.forceNextReencode=true,this.hashes.dataRef=null,this.refresh();}computeIfReady(){this.scheduleComputeIfReady();}dispose(){this.disposed=true,this.initTimeout&&clearTimeout(this.initTimeout),this.computeTimeout&&clearTimeout(this.computeTimeout),this.stopBuildProgress(),this.progressCompletionTimer&&clearTimeout(this.progressCompletionTimer),ut(this.config.getOptions().gridId);}scheduleInit(){this.initTimeout&&clearTimeout(this.initTimeout);let e=this.config.getState(),t=this.config.getOptions();if(!t.data||t.data.length===0||!e.fields||e.fields.length===0){this.isInitComplete=false,this.stopBuildProgress(),this.config.setState({engineResult:null,isBuilding:false,buildProgress:0});return}let r=++this.initVersion;this.isInitComplete=false,this.startBuildProgress("init",true),this.config.onEngineStarted({gridId:t.gridId}),this.initTimeout=setTimeout(()=>{this.runInit(r);},50);}async runInit(e){try{let t=this.config.getState(),r=this.config.getOptions(),u=this.config.getAreaFields("row"),i=this.config.getAreaFields("column"),n=this.config.getAreaFields("data");oe(r.gridId);let a=this.forceNextReencode;this.forceNextReencode=!1;let{filtersApplied:s}=await ot(r.data,u,i,n,r.registry,r.workerUrl,{forceReencode:a,filterState:{fields:t.fields,prefilter:t.layout.prefilter}});if(this.disposed||e!==this.initVersion)return;if(this.advanceBuildProgress(s?82:74),!s){if(await ve(t.fields,t.layout.prefilter),this.disposed||e!==this.initVersion)return;this.advanceBuildProgress(84);}this.isInitComplete=!0,this.scheduleComputeIfReady(!1);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleReconfigure(e){if(this.disposed)return;let t=this.config.getState(),r=this.config.getOptions();if(!r.data||r.data.length===0||!t.fields||t.fields.length===0||!this.isInitComplete){this.scheduleInit();return}this.computeTimeout&&clearTimeout(this.computeTimeout);let u=++this.computeVersion;this.startBuildProgress("reconfigure",true),this.computeTimeout=setTimeout(()=>{this.runReconfigure(u,e);},16);}async runReconfigure(e,t){try{let r=this.config.getState(),u=this.config.getOptions();oe(u.gridId);let i=await Le(u.data,this.config.getAreaFields("row"),this.config.getAreaFields("column"),this.config.getAreaFields("data"),u.registry);if(this.disposed||e!==this.computeVersion)return;if(!i){this.scheduleInit();return}if(this.advanceBuildProgress(t?68:78),t){if(await ve(r.fields,r.layout.prefilter),this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(82);}await this.runCompute(e);}catch(r){this.handleEngineError(r),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleFilter(){if(!this.isInitComplete||this.disposed)return;this.computeTimeout&&clearTimeout(this.computeTimeout);let e=++this.computeVersion;this.startBuildProgress("filter",true),this.computeTimeout=setTimeout(()=>{this.runFilter(e);},50);}async runFilter(e){try{let t=this.config.getState(),r=this.config.getOptions();if(oe(r.gridId),await ve(t.fields,t.layout.prefilter),this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(82),await this.runCompute(e);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}scheduleComputeIfReady(e=true){if(!this.isInitComplete||this.disposed)return;this.computeTimeout&&clearTimeout(this.computeTimeout);let t=++this.computeVersion;this.startBuildProgress("compute",e),this.computeTimeout=setTimeout(()=>{this.runCompute(t);},16);}async runCompute(e){try{let t=this.config.getState(),r=this.config.getOptions();r.onBeforePivotCalculate?.(),oe(r.gridId);let u=await ze(Array.from(t.expandedPaths),Array.from(t.expandedColPaths));if(this.disposed||e!==this.computeVersion)return;this.advanceBuildProgress(94);let i=this.config.getAreaFields("data");_e(u,i,r.registry),ee(u.rowTree,this.config.getAreaFields("row"),u,i,!0,r.locale),ee(u.colTree,this.config.getAreaFields("column"),u,i,!1,r.locale),Ge(u,i),r.onAfterPivotCalculate?.(u),this.completeBuildProgress(u,e);}catch(t){this.handleEngineError(t),this.config.setState({isBuilding:false,buildProgress:0});}}async computeFullyExpandedSnapshot(){let e=this.config.getOptions();oe(e.gridId);let t=await ze(["*"],["*"]),r=this.config.getAreaFields("data");return _e(t,r,e.registry),ee(t.rowTree,this.config.getAreaFields("row"),t,r,true,e.locale),ee(t.colTree,this.config.getAreaFields("column"),t,r,false,e.locale),Ge(t,r),t}startBuildProgress(e,t){this.progressCompletionTimer&&(clearTimeout(this.progressCompletionTimer),this.progressCompletionTimer=null);let r=this.config.getState().buildProgress??0,u=this.initialProgressFor(e);this.progressStartValue=Math.min(98,t?u:Math.max(r,u)),this.progressStartedAt=Date.now(),this.progressCap=this.progressCapFor(e),this.progressEstimateMs=this.estimateProgressDuration(e),this.config.setState({isBuilding:true,engineError:null,buildProgress:this.progressStartValue}),this.progressTimer||(this.progressTimer=setInterval(()=>this.tickBuildProgress(),120));}tickBuildProgress(){if(this.disposed)return;let e=this.config.getState().buildProgress??0;if(e>=this.progressCap)return;let t=Math.max(0,Date.now()-this.progressStartedAt),r=1-Math.exp(-t/this.progressEstimateMs),u=Math.floor(this.progressStartValue+(this.progressCap-this.progressStartValue)*r);t>this.progressEstimateMs&&u<=e&&(u=e+1),u=Math.min(this.progressCap,u),u>e&&this.config.setState({buildProgress:u});}advanceBuildProgress(e){let t=this.config.getState().buildProgress??0,r=Math.min(99,Math.max(0,Math.floor(e)));r>t&&this.config.setState({buildProgress:r});}completeBuildProgress(e,t){this.stopBuildProgress(),this.progressCompletionTimer&&clearTimeout(this.progressCompletionTimer),this.config.setState({engineResult:e,isBuilding:true,buildProgress:100,engineError:null}),this.config.onEngineCompleted(e),this.progressCompletionTimer=setTimeout(()=>{this.disposed||t!==this.computeVersion||(this.config.setState({isBuilding:false}),this.progressCompletionTimer=null);},120);}stopBuildProgress(){this.progressTimer&&(clearInterval(this.progressTimer),this.progressTimer=null);}initialProgressFor(e){switch(e){case "init":return 2;case "reconfigure":return 24;case "filter":return 35;case "compute":return 86}}progressCapFor(e){switch(e){case "init":return 92;case "reconfigure":return 95;case "filter":return 96;case "compute":return 99}}estimateProgressDuration(e){let t=this.config.getOptions().data?.length??0;return e==="init"?t>=2e6?7e3:t>=5e5?4200:t>=1e5?2400:1e3:e==="compute"?t>=2e6?2200:t>=5e5?1600:900:t>=5e5?1800:1e3}handleEngineError(e){this.stopBuildProgress(),this.progressCompletionTimer&&(clearTimeout(this.progressCompletionTimer),this.progressCompletionTimer=null);let t=e instanceof Error?e:new Error(String(e));console.error("PivotGrid Engine Error",t),this.config.getOptions().onError?.(t),this.config.setState({engineError:t}),this.config.onEngineError(t);}createStructuralFieldsHash(e){return e.map(t=>[t.id,t.area,t.areaIndex,t.isCalculated?"1":"0",t.dataField??"",t.dataType??"",String(t.groupInterval??""),t.summaryType??"",t.formulaString??""].join(":")).join("|")}createFieldsHash(e){return e.map(t=>[t.id,t.area,t.areaIndex,t.sortOrder,t.sortBySummaryField,t.sortBySummaryPath].join(":")).join("|")}createFilterHash(e){return e.filter(t=>t.filterValues&&t.filterValues.size>0).map(t=>{let r=Array.from(t.filterValues).map(u=>this.serializeFilterValue(u)).sort().join(",");return `${t.id}:${t.filterType||"include"}:${r}`}).sort().join("|")}serializeFilterValue(e){if(e===null)return "null:";if(e===void 0)return "undefined:";if(e instanceof Date)return `date:${Number.isNaN(e.getTime())?"":e.toISOString()}`;let t=typeof e;if(t==="string"||t==="number"||t==="boolean"||t==="bigint")return `${t}:${String(e)}`;try{return `${t}:${JSON.stringify(e)}`}catch{return `${t}:${String(e)}`}}setHashCache=new WeakMap;createSetHash(e){let t=this.setHashCache.get(e);return t===void 0&&(t=Array.from(e).sort().join("|"),this.setHashCache.set(e,t)),t}};var We=class{handlers={};on(o,e){let t=this.handlers[o]??new Set;return t.add(e),this.handlers[o]=t,()=>this.off(o,e)}off(o,e){this.handlers[o]?.delete(e);}emit(o,e){let t=this.handlers[o];t&&t.forEach(r=>r(e));}clear(){this.handlers={};}},jt=class{plugins=new Map;register(o){this.plugins.has(o.id)&&console.warn(`[PivotGrid Warning]: Plugin '${o.id}' is being overwritten in the registry.`),this.plugins.set(o.id,o);}unregister(o){this.plugins.delete(o);}get(o){return this.plugins.get(o)}getPluginsByType(o){return Array.from(this.plugins.values()).filter(e=>e.type===o)}resolveSafe(o,e){let t=this.plugins.get(o);return !t||!t.execute?(console.warn(`[PivotGrid Warning]: Plugin ID '${o}' not found or missing 'execute' function. Using fallback behavior.`),e==="expression"?()=>0:r=>0):t.execute}getWorkerBootstrapPayload(){let o=[];for(let e of this.plugins.values())e.workerCode&&o.push({id:e.id,type:e.type,workerCode:e.workerCode});return o}registerAggregator(o,e,t){this.register({id:o,type:"aggregator",version:t,aggregate:e,execute:e});}registerExporter(o,e,t){this.register({id:`exporter-${o}`,type:"exporter",version:t,exportFunction:e});}registerCellRenderer(o,e,t){this.register({id:o,type:"cellRender",version:t,renderCell:e});}registerHeaderRenderer(o,e,t){this.register({id:o,type:"headerRender",version:t,renderHeader:e});}getExporters(){return this.getPluginsByType("exporter")}getCellRenderers(){return this.getPluginsByType("cellRender")}getAggregators(){return this.getPluginsByType("aggregator")}getHeaderRenderers(){return this.getPluginsByType("headerRender")}},Yt=class{static start(o,e,t){return {range:{startRow:o,startColumn:e,endRow:o,endColumn:e},isSelecting:true,mode:t}}static extend(o,e,t,r){return !o||!o.isSelecting||o.mode!==r?o:{...o,range:{...o.range,endRow:e,endColumn:t}}}static finish(o){return o?{...o,isSelecting:false}:null}static containsCell(o,e,t){if(!o)return false;let r=this.getBounds(o.range);return e>=r.minRow&&e<=r.maxRow&&t>=r.minColumn&&t<=r.maxColumn}static calculateStats(o,e){if(!o||o.mode!=="data")return null;let t=this.getBounds(o.range),r=0,u=0,i=1/0,n=-1/0;for(let a=t.minRow;a<=t.maxRow;a++)for(let s=t.minColumn;s<=t.maxColumn;s++){let l=e(a,s);typeof l!="number"||Number.isNaN(l)||(r+=l,u++,l<i&&(i=l),l>n&&(n=l));}return u>0?{sum:r,count:u,avg:r/u,min:i,max:n}:null}static toTsv(o,e){if(!o)return "";let t=this.getBounds(o.range),r=[];for(let u=t.minRow;u<=t.maxRow;u++){let i=[];for(let n=t.minColumn;n<=t.maxColumn;n++)i.push(e(u,n).replace(/\n/g," "));r.push(i.join(" "));}return r.length>0?`${r.join(`
|
|
4
4
|
`)}
|
|
5
|
-
`:""}static getBounds(i){return {minRow:Math.min(i.startRow,i.endRow),maxRow:Math.max(i.startRow,i.endRow),minColumn:Math.min(i.startColumn,i.endColumn),maxColumn:Math.max(i.startColumn,i.endColumn)}}},He=class{static intlCache=new Map;static stringCache=new Map;static format(i,e,t,r){if(i==null||i==="(Blank)")return String(i??"");if(e==="export")return String(i);let o=`${t}_${e}_${i}_${r}`,n=this.stringCache.get(o);if(n)return n;let a=String(i);try{if(r==="year")a=String(i);else if(r==="quarter")a=String(i);else if(r==="month"){let u=parseInt(String(i),10)-1;if(!isNaN(u)&&u>=0&&u<=11){let s=new Date(2e3,u,1),l=e==="chart"?"short":"long",c=`${t}_month_${l}`,d=this.intlCache.get(c);d||(d=new Intl.DateTimeFormat(t,{month:l}),this.intlCache.set(c,d)),a=d.format(s);}}else if(r==="dayOfWeek"){let u=parseInt(String(i),10);if(!isNaN(u)&&u>=0&&u<=6){let s=new Date(2e3,0,2+u),l=e==="chart"?"short":"long",c=`${t}_weekday_${l}`,d=this.intlCache.get(c);d||(d=new Intl.DateTimeFormat(t,{weekday:l}),this.intlCache.set(c,d)),a=d.format(s);}}else if((r==="day"||!r)&&!r&&typeof i=="string"&&i.includes("-")){let u=new Date(i);if(!isNaN(u.getTime())){let s=`${t}_full_${e==="chart"?"short":"long"}`,l=this.intlCache.get(s);if(!l){let c=e==="chart"?{month:"short",day:"numeric"}:{year:"numeric",month:"long",day:"numeric"};l=new Intl.DateTimeFormat(t,c),this.intlCache.set(s,l);}a=l.format(u);}}}catch{a=String(i);}return this.stringCache.set(o,a),a}static clearCache(){this.stringCache.clear(),this.intlCache.clear();}};var Xt={ok:"Tamam",cancel:"\u0130ptal",apply:"Uygula",close:"Kapat",search:"Ara...",selectAll:"T\xFCm\xFCn\xFC Se\xE7",clearAll:"T\xFCm\xFCn\xFC Temizle",show:"G\xF6ster",hide:"Gizle",filterArea:"Filtre Alan\u0131",columnArea:"S\xFCtunlar",rowArea:"Sat\u0131rlar",dataArea:"De\u011Ferler",footerArea:"Alt Bilgi \xC7ubu\u011Fu",allFields:"T\xFCm Alanlar",dropHere:"Buraya B\u0131rak",actions:"Aksiyonlar",saveNewView:"Yeni G\xF6r\xFCn\xFCm Kaydet",saveAsView:"Farkl\u0131 Kaydet (Kopyala)",saveChanges:"De\u011Fi\u015Fiklikleri Kaydet",savedViews:"Kay\u0131tl\u0131 G\xF6r\xFCn\xFCmler",viewOptions:"G\xF6r\xFCn\xFCm Se\xE7enekleri",export:"D\u0131\u015Fa Aktar",importFile:"\u0130\xE7e Aktar",excelExport:"Excel Export",pivotView:"Pivot G\xF6r\xFCn\xFCm",listView:"Liste G\xF6r\xFCn\xFCm\xFC",preservesGridLayout:"Tablo yap\u0131s\u0131n\u0131 korur",rawFlatData:"Ham veri",document:"D\xF6k\xFCman",pdfDocument:"PDF D\xF6k\xFCman",printReadyLayout:"Yazd\u0131rmaya haz\u0131r",fullSnapshot:"Tam Ekran G\xF6r\xFCnt\xFCs\xFC",saveSessionState:"Oturum durumunu kaydet",rawDataFormats:"Ham Veri Formatlar\u0131",importSuccess:"Ba\u015Far\u0131yla \u0130\xE7e Aktar\u0131ld\u0131",importWarning:"Uyar\u0131larla Tamamland\u0131",importError:"\u0130\xE7e Aktarma Ba\u015Far\u0131s\u0131z",importCancelled:"\u0130\xE7e aktarma iptal edildi.",pasteImport:"Panodan \u0130\xE7e Aktar",pasteImportHint:"Sekme veya virg\xFClle ayr\u0131lm\u0131\u015F",importFromFile:"Dosyadan",dropToImport:"Dosyalar\u0131 i\xE7e aktarmak i\xE7in buraya b\u0131rak\u0131n",clipboardEmpty:"Panoda i\xE7e aktar\u0131lacak metin bulunamad\u0131.",clipboardDenied:"Panoya eri\u015Filemedi. L\xFCtfen taray\u0131c\u0131 izinlerini kontrol edin.",importPreviewTitle:"\u0130\xE7e Aktarma \xD6nizlemesi",importPreviewSubtitle:"{rows} sat\u0131r \u2022 {cols} s\xFCtun i\xE7e aktar\u0131lacak",importPreviewFooter:"S\xFCtunlar\u0131 ve tipleri g\xF6zden ge\xE7irip onaylay\u0131n.",columns:"S\xFCtunlar",includeColumn:"Bu s\xFCtunu dahil et",dataPreview:"Veri \xD6nizlemesi",applyImport:"\u0130\xE7e Aktar",type_string:"Metin",type_number:"Say\u0131",type_date:"Tarih",type_boolean:"Mant\u0131ksal",loading:"Y\xFCkleniyor...",initializing:"Y\xFCkleniyor...",emptyData:"Veri Bulunamad\u0131",noItems:"Kay\u0131t bulunamad\u0131",blanks:"(Bo\u015Flar)",loadingData:"L\xFCtfen bekleyin, veriler haz\u0131rlan\u0131yor...",processing:"\u0130\u015Flem yap\u0131l\u0131yor...",reading:"Dosya okunuyor...",parsing:"Ayr\u0131\u015Ft\u0131r\u0131l\u0131yor...",typing:"Tipler belirleniyor...",finalizing:"Tamamlan\u0131yor...",fieldSettings:"Alan Ayarlar\u0131",caption:"Ba\u015Fl\u0131k",summaryType:"\xD6zet T\xFCr\xFC",displayMode:"G\xF6sterim \u015Eekli",groupInterval:"Grup Aral\u0131\u011F\u0131",sum:"Toplam",count:"Say",avg:"Ortalama",min:"Min",max:"Max",grandTotal:"Genel Toplam",subTotal:"Alt Toplam",absoluteValue:"Mutlak De\u011Fer",runningTotal:"Y\xFCr\xFCyen Toplam",difference:"Fark",percentOfTotal:"Genel Toplam Y\xFCzdesi",none:"Yok",year:"Y\u0131l",quarter:"\xC7eyrek",month:"Ay",day:"G\xFCn",and:"Ve",or:"Veya",noConditionsAdded:"Hen\xFCz ko\u015Ful eklenmedi...",calculatedMeasureDesigner:"Hesaplanan \xD6l\xE7\xFC Tasar\u0131mc\u0131s\u0131",createFormulasWithoutCode:"Kod yazmadan yeni form\xFCller ve hesaplamalar olu\u015Fturun.",measureName:"\xD6l\xE7\xFC Ad\u0131",format:"Format",numericStandard:"Say\u0131sal (Standart)",numericDecimal:"Say\u0131sal (Ondal\u0131kl\u0131 1.486,15)",currencyTRY:"Para Birimi (TL)",currencyUSD:"Para Birimi (USD)",percent:"Y\xFCzdelik (%)",measureNamePlaceholder:"\xF6rn. K\xE2r marj\u0131",customFormat:"\xD6zel\u2026",customPrefix:"\xD6n ek",customSuffix:"Son ek",minFraction:"Min ondal\u0131k",maxFraction:"Maks ondal\u0131k",calculationLevel:"Hesaplama d\xFCzeyi",calcRowLevel:"Sat\u0131r d\xFCzeyi (ham veri)",calcSummaryLevel:"\xD6zet d\xFCzeyi (toplula\u015Ft\u0131r\u0131lm\u0131\u015F)",fields:"Alanlar",noFieldsFound:"Bu d\xFCzey i\xE7in uygun alan yok.",deleteCalcField:"Hesaplanan alan\u0131 sil",formula:"Form\xFCl",formulaPlaceholder:"\xF6rn. [Gelir] - [Maliyet]",saveAndAdd:"Kaydet ve Ekle",measureNameEmpty:"\xD6l\xE7\xFC ad\u0131 gerekli.",formulaEmpty:"Form\xFCl gerekli.",formulaError:"Form\xFCl hatas\u0131",expand:"Geni\u015Flet",collapse:"Daralt",expandAll:"T\xFCm\xFCn\xFC Geni\u015Flet",collapseAll:"T\xFCm\xFCn\xFC Daralt",sortByThisColumn:"Bu S\xFCtuna G\xF6re S\u0131rala",sortFieldByThisColumn:'"{0}" Alan\u0131n\u0131 Bu S\xFCtuna G\xF6re S\u0131rala',removeAllSorting:"T\xFCm S\u0131ralamalar\u0131 Kald\u0131r",sortAsc:"A'dan Z'ye S\u0131rala",sortDesc:"Z'den A'ya S\u0131rala",clearSort:"S\u0131ralamay\u0131 Temizle",order:"S\u0131ra",moveToStart:"Ba\u015Fa ta\u015F\u0131",moveToEnd:"Sona ta\u015F\u0131",moveToLeft:"Sola ta\u015F\u0131",moveToRight:"Sa\u011Fa ta\u015F\u0131",showFieldList:"Alan listesini g\xF6ster",editCalculation:"Hesaplamay\u0131 D\xFCzenle",viewsAndReports:"Kay\u0131tl\u0131 G\xF6r\xFCn\xFCmler ve Raporlar",views:"G\xF6r\xFCn\xFCmler",saveChangesOverwrite:"De\u011Fi\u015Fiklikleri Kaydet (\xDCzerine Yaz)",saveAsCopy:"Farkl\u0131 Kaydet (Kopyala)",makeDefault:"Varsay\u0131lan Yap",deleteReport:"Raporu Sil",deleteReportConfirm:"'{0}' raporunu silmek istedi\u011Finize emin misiniz?",customExports:"\xD6zel D\u0131\u015Fa Aktar\u0131mlar",customPlugin:"\xD6zel Eklenti"},Zt={ok:"OK",cancel:"Cancel",apply:"Apply",close:"Close",search:"Search...",selectAll:"Select All",clearAll:"Clear All",show:"Show",hide:"Hide",filterArea:"Filter Area",columnArea:"Columns",rowArea:"Rows",dataArea:"Values",footerArea:"Footer Area",allFields:"All Fields",dropHere:"Drop Here",actions:"Actions",saveNewView:"Save New View",saveAsView:"Save As",saveChanges:"Save Changes",savedViews:"Saved Views",viewOptions:"View Options",export:"Export",importFile:"Import",excelExport:"Excel Export",pivotView:"Pivot View",listView:"List View",preservesGridLayout:"Preserves grid layout",rawFlatData:"Raw flat data",document:"Document",pdfDocument:"PDF Document",printReadyLayout:"Print-ready layout",fullSnapshot:"Full Snapshot",saveSessionState:"Save session state",rawDataFormats:"Raw Data Formats",importSuccess:"Successfully Imported",importWarning:"Completed with Warnings",importError:"Import Failed",importCancelled:"Import cancelled.",pasteImport:"Import from Clipboard",pasteImportHint:"Tab or comma separated",importFromFile:"From File",dropToImport:"Drop files here to import",clipboardEmpty:"No importable text found on the clipboard.",clipboardDenied:"Could not access the clipboard. Please check browser permissions.",importPreviewTitle:"Import Preview",importPreviewSubtitle:"{rows} rows \u2022 {cols} columns will be imported",importPreviewFooter:"Review columns and types, then confirm.",columns:"Columns",includeColumn:"Include this column",dataPreview:"Data Preview",applyImport:"Import",type_string:"Text",type_number:"Number",type_date:"Date",type_boolean:"Boolean",initializing:"Initializing...",emptyData:"No Data Found",noItems:"No items found",blanks:"(Blanks)",loadingData:"Please wait, preparing data...",processing:"Processing...",reading:"Reading file...",parsing:"Parsing...",typing:"Detecting types...",finalizing:"Finalizing...",fieldSettings:"Field Settings",caption:"Caption",summaryType:"Summary Type",displayMode:"Display Mode",groupInterval:"Group Interval",sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max",grandTotal:"Grand Total",subTotal:"Sub Total",absoluteValue:"Absolute Value",runningTotal:"Running Total",difference:"Difference",percentOfTotal:"% of Total",none:"None",year:"Year",quarter:"Quarter",month:"Month",day:"Day",and:"And",or:"Or",noConditionsAdded:"No conditions added...",calculatedMeasureDesigner:"Calculated Measure Designer",createFormulasWithoutCode:"Create formulas and calculations without writing code.",measureName:"Measure Name",format:"Format",numericStandard:"Numeric (Standard)",numericDecimal:"Numeric (Decimal 1,486.15)",currencyTRY:"Currency (TRY)",currencyUSD:"Currency (USD)",percent:"Percent (%)",measureNamePlaceholder:"e.g. Profit margin",customFormat:"Custom\u2026",customPrefix:"Prefix",customSuffix:"Suffix",minFraction:"Min dec.",maxFraction:"Max dec.",calculationLevel:"Calculation level",calcRowLevel:"Row level (raw data)",calcSummaryLevel:"Summary level (aggregated)",fields:"Fields",noFieldsFound:"No eligible fields for this level.",deleteCalcField:"Delete calculated field",formula:"Formula",formulaPlaceholder:"e.g. [Revenue] - [Cost]",saveAndAdd:"Save & add",measureNameEmpty:"Field name is required.",formulaEmpty:"Formula is required.",formulaError:"Formula error",expand:"Expand",collapse:"Collapse",expandAll:"Expand All",collapseAll:"Collapse All",sortByThisColumn:"Sort by This Column",sortFieldByThisColumn:'Sort "{0}" by This Column',removeAllSorting:"Remove All Sorting",sortAsc:"Sort A to Z",sortDesc:"Sort Z to A",clearSort:"Clear Sort",order:"Order",moveToStart:"Move to Start",moveToEnd:"Move to End",moveToLeft:"Move to Left",moveToRight:"Move to Right",showFieldList:"Show Field List",editCalculation:"Edit Calculation",viewsAndReports:"Saved Views and Reports",views:"Views",saveChangesOverwrite:"Save Changes (Overwrite)",saveAsCopy:"Save As (Copy)",makeDefault:"Make Default",deleteReport:"Delete Report",deleteReportConfirm:"Are you sure you want to delete the report '{0}'?",customExports:"Custom Exports",customPlugin:"Custom Plugin"},qt={ok:"OK",cancel:"Abbrechen",apply:"Anwenden",close:"Schlie\xDFen",search:"Suchen...",selectAll:"Alles ausw\xE4hlen",clearAll:"Alles l\xF6schen",show:"Anzeigen",hide:"Verbergen",filterArea:"Filterbereich",columnArea:"Spalten",rowArea:"Zeilen",dataArea:"Werte",footerArea:"Fu\xDFbereich",allFields:"Alle Felder",dropHere:"Hier ablegen",actions:"Aktionen",saveNewView:"Neue Ansicht speichern",saveAsView:"Speichern unter",saveChanges:"\xC4nderungen speichern",savedViews:"Gespeicherte Ansichten",viewOptions:"Ansichtsoptionen",export:"Exportieren",importFile:"Importieren",importFromFile:"Aus Datei",pasteImport:"Aus Zwischenablage importieren",pasteImportHint:"Tabulator- oder kommagetrennt",dropToImport:"Dateien zum Importieren hier ablegen",clipboardEmpty:"Kein importierbarer Text in der Zwischenablage gefunden.",clipboardDenied:"Zugriff auf die Zwischenablage nicht m\xF6glich. Bitte Browser-Berechtigungen pr\xFCfen.",excelExport:"Excel Export",pivotView:"Pivot-Ansicht",listView:"Listenansicht",preservesGridLayout:"Beh\xE4lt das Rasterlayout bei",rawFlatData:"Rohe flache Daten",document:"Dokument",pdfDocument:"PDF-Dokument",printReadyLayout:"Druckfertiges Layout",fullSnapshot:"Vollst\xE4ndiger Schnappschuss",saveSessionState:"Sitzungsstatus speichern",rawDataFormats:"Rohdatenformate",importSuccess:"Erfolgreich importiert",importWarning:"Mit Warnungen abgeschlossen",importError:"Import fehlgeschlagen",initializing:"Initialisierung...",emptyData:"Keine Daten gefunden",noItems:"Keine Elemente gefunden",blanks:"(Leer)",loadingData:"Bitte warten, Daten werden vorbereitet...",processing:"Verarbeitung...",fieldSettings:"Feldeinstellungen",caption:"Beschriftung",summaryType:"Zusammenfassungstyp",displayMode:"Anzeigemodus",groupInterval:"Gruppenintervall",sum:"Summe",count:"Anzahl",avg:"Durchschnitt",min:"Min",max:"Max",grandTotal:"Gesamtsumme",subTotal:"Zwischensumme",absoluteValue:"Absoluter Wert",runningTotal:"Laufende Summe",difference:"Differenz",percentOfTotal:"% des Gesamtwerts",none:"Keine",year:"Jahr",quarter:"Quartal",month:"Monat",day:"Tag",and:"Und",or:"Oder",noConditionsAdded:"Keine Bedingungen hinzugef\xFCgt...",calculatedMeasureDesigner:"Designer f\xFCr berechnete Kennzahlen",createFormulasWithoutCode:"Erstellen Sie Formeln und Berechnungen ohne Code.",measureName:"Kennzahlenname",format:"Format",numericStandard:"Numerisch (Standard)",numericDecimal:"Numerisch (Dezimal 1.486,15)",currencyTRY:"W\xE4hrung (TRY)",currencyUSD:"W\xE4hrung (USD)",percent:"Prozent (%)",expand:"Erweitern",collapse:"Reduzieren",expandAll:"Alle erweitern",collapseAll:"Alle reduzieren",sortByThisColumn:"Nach dieser Spalte sortieren",sortFieldByThisColumn:'"{0}" nach dieser Spalte sortieren',removeAllSorting:"Alle Sortierungen entfernen",sortAsc:"Sortieren A bis Z",sortDesc:"Sortieren Z bis A",clearSort:"Sortierung l\xF6schen",order:"Reihenfolge",moveToStart:"An den Anfang verschieben",moveToEnd:"Ans Ende verschieben",moveToLeft:"Nach links verschieben",moveToRight:"Nach rechts verschieben",showFieldList:"Feldliste anzeigen",editCalculation:"Berechnung bearbeiten",viewsAndReports:"Gespeicherte Ansichten und Berichte",views:"Ansichten",saveChangesOverwrite:"\xC4nderungen speichern (\xDCberschreiben)",saveAsCopy:"Speichern unter (Kopie)",makeDefault:"Als Standard festlegen",deleteReport:"Bericht l\xF6schen",deleteReportConfirm:"M\xF6chten Sie den Bericht '{0}' wirklich l\xF6schen?",customExports:"Benutzerdefinierte Exporte",customPlugin:"Benutzerdefiniertes Plugin"},Jt={ok:"OK",cancel:"Annuler",apply:"Appliquer",close:"Fermer",search:"Rechercher...",selectAll:"Tout s\xE9lectionner",clearAll:"Tout effacer",show:"Afficher",hide:"Masquer",filterArea:"Zone de filtre",columnArea:"Colonnes",rowArea:"Lignes",dataArea:"Valeurs",footerArea:"Pied de page",allFields:"Tous les champs",dropHere:"D\xE9poser ici",actions:"Actions",saveNewView:"Enregistrer la nouvelle vue",saveAsView:"Enregistrer sous",saveChanges:"Enregistrer les modifications",savedViews:"Vues enregistr\xE9es",viewOptions:"Options d'affichage",export:"Exporter",importFile:"Importer",importFromFile:"Depuis un fichier",pasteImport:"Importer depuis le presse-papiers",pasteImportHint:"S\xE9par\xE9 par tabulation ou virgule",dropToImport:"D\xE9posez les fichiers ici pour les importer",clipboardEmpty:"Aucun texte importable trouv\xE9 dans le presse-papiers.",clipboardDenied:"Impossible d\u2019acc\xE9der au presse-papiers. V\xE9rifiez les autorisations du navigateur.",excelExport:"Exportation Excel",pivotView:"Vue Pivot",listView:"Vue Liste",preservesGridLayout:"Pr\xE9serve la disposition de la grille",rawFlatData:"Donn\xE9es brutes plates",document:"Document",pdfDocument:"Document PDF",printReadyLayout:"Mise en page pr\xEAte pour l'impression",fullSnapshot:"Capture compl\xE8te",saveSessionState:"Enregistrer l'\xE9tat de la session",rawDataFormats:"Formats de donn\xE9es brutes",importSuccess:"Importation r\xE9ussie",importWarning:"Termin\xE9 avec des avertissements",importError:"\xC9chec de l'importation",initializing:"Initialisation...",emptyData:"Aucune donn\xE9e trouv\xE9e",noItems:"Aucun \xE9l\xE9ment trouv\xE9",blanks:"(Vides)",loadingData:"Veuillez patienter, pr\xE9paration des donn\xE9es...",processing:"Traitement...",fieldSettings:"Param\xE8tres du champ",caption:"L\xE9gende",summaryType:"Type de r\xE9sum\xE9",displayMode:"Mode d'affichage",groupInterval:"Intervalle de groupe",sum:"Somme",count:"Nombre",avg:"Moyenne",min:"Min",max:"Max",grandTotal:"Total g\xE9n\xE9ral",subTotal:"Sous-total",absoluteValue:"Valeur absolue",runningTotal:"Total cumul\xE9",difference:"Diff\xE9rence",percentOfTotal:"% du total",none:"Aucun",year:"Ann\xE9e",quarter:"Trimestre",month:"Mois",day:"Jour",and:"Et",or:"Ou",noConditionsAdded:"Aucune condition ajout\xE9e...",calculatedMeasureDesigner:"Concepteur de mesures calcul\xE9es",createFormulasWithoutCode:"Cr\xE9ez des formules et des calculs sans \xE9crire de code.",measureName:"Nom de la mesure",format:"Format",numericStandard:"Num\xE9rique (Standard)",numericDecimal:"Num\xE9rique (D\xE9cimal 1.486,15)",currencyTRY:"Devise (TRY)",currencyUSD:"Devise (USD)",percent:"Pourcentage (%)",expand:"D\xE9velopper",collapse:"R\xE9duire",expandAll:"D\xE9velopper tout",collapseAll:"R\xE9duire tout",sortByThisColumn:"Trier par cette colonne",sortFieldByThisColumn:'Trier "{0}" par cette colonne',removeAllSorting:"Supprimer tous les tris",sortAsc:"Trier de A \xE0 Z",sortDesc:"Trier de Z \xE0 A",clearSort:"Effacer le tri",order:"Ordre",moveToStart:"D\xE9placer au d\xE9but",moveToEnd:"D\xE9placer \xE0 la fin",moveToLeft:"D\xE9placer vers la gauche",moveToRight:"D\xE9placer vers la droite",showFieldList:"Afficher la liste des champs",editCalculation:"Modifier le calcul",viewsAndReports:"Vues et rapports enregistr\xE9s",views:"Vues",saveChangesOverwrite:"Enregistrer les modifications (\xC9craser)",saveAsCopy:"Enregistrer sous (Copie)",makeDefault:"D\xE9finir par d\xE9faut",deleteReport:"Supprimer le rapport",deleteReportConfirm:"\xCAtes-vous s\xFBr de vouloir supprimer le rapport '{0}' ?",customExports:"Exportations personnalis\xE9es",customPlugin:"Plugin personnalis\xE9"},Qt={ok:"Aceptar",cancel:"Cancelar",apply:"Aplicar",close:"Cerrar",search:"Buscar...",selectAll:"Seleccionar todo",clearAll:"Borrar todo",show:"Mostrar",hide:"Ocultar",filterArea:"\xC1rea de filtros",columnArea:"Columnas",rowArea:"Filas",dataArea:"Valores",footerArea:"\xC1rea de pie de p\xE1gina",allFields:"Todos los campos",dropHere:"Soltar aqu\xED",actions:"Acciones",saveNewView:"Guardar nueva vista",saveAsView:"Guardar como",saveChanges:"Guardar cambios",savedViews:"Vistas guardadas",viewOptions:"Opciones de vista",export:"Exportar",importFile:"Importar",importFromFile:"Desde archivo",pasteImport:"Importar desde el portapapeles",pasteImportHint:"Separado por tabulaciones o comas",dropToImport:"Suelte los archivos aqu\xED para importar",clipboardEmpty:"No se encontr\xF3 texto importable en el portapapeles.",clipboardDenied:"No se pudo acceder al portapapeles. Compruebe los permisos del navegador.",excelExport:"Exportaci\xF3n a Excel",pivotView:"Vista din\xE1mica",listView:"Vista de lista",preservesGridLayout:"Conserva el dise\xF1o de la cuadr\xEDcula",rawFlatData:"Datos planos sin procesar",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Dise\xF1o listo para imprimir",fullSnapshot:"Instant\xE1nea completa",saveSessionState:"Guardar estado de la sesi\xF3n",rawDataFormats:"Formatos de datos sin procesar",importSuccess:"Importado correctamente",importWarning:"Completado con advertencias",importError:"Error al importar",initializing:"Inicializando...",emptyData:"No se encontraron datos",noItems:"No se encontraron elementos",blanks:"(En blanco)",loadingData:"Por favor espere, preparando datos...",processing:"Procesando...",fieldSettings:"Configuraci\xF3n del campo",caption:"Subt\xEDtulo",summaryType:"Tipo de resumen",displayMode:"Modo de visualizaci\xF3n",groupInterval:"Intervalo de grupo",sum:"Suma",count:"Recuento",avg:"Promedio",min:"M\xEDnimo",max:"M\xE1ximo",grandTotal:"Total general",subTotal:"Subtotal",absoluteValue:"Valor absoluto",runningTotal:"Total acumulado",difference:"Diferencia",percentOfTotal:"% del total",none:"Ninguno",year:"A\xF1o",quarter:"Trimestre",month:"Mes",day:"D\xEDa",and:"Y",or:"O",noConditionsAdded:"No se a\xF1adieron condiciones...",calculatedMeasureDesigner:"Dise\xF1ador de medidas calculadas",createFormulasWithoutCode:"Cree f\xF3rmulas y c\xE1lculos sin escribir c\xF3digo.",measureName:"Nombre de la medida",format:"Formato",numericStandard:"Num\xE9rico (Est\xE1ndar)",numericDecimal:"Num\xE9rico (Decimal 1.486,15)",currencyTRY:"Moneda (TRY)",currencyUSD:"Moneda (USD)",percent:"Porcentaje (%)",expand:"Expandir",collapse:"Contraer",expandAll:"Expandir todo",collapseAll:"Contraer todo",sortByThisColumn:"Ordenar por esta columna",sortFieldByThisColumn:'Ordenar "{0}" por esta columna',removeAllSorting:"Quitar toda la ordenaci\xF3n",sortAsc:"Ordenar de la A a la Z",sortDesc:"Ordenar de la Z a la A",clearSort:"Borrar ordenaci\xF3n",order:"Orden",moveToStart:"Mover al principio",moveToEnd:"Mover al final",moveToLeft:"Mover a la izquierda",moveToRight:"Mover a la derecha",showFieldList:"Mostrar lista de campos",editCalculation:"Editar c\xE1lculo",viewsAndReports:"Vistas y reportes guardados",views:"Vistas",saveChangesOverwrite:"Guardar cambios (Sobrescribir)",saveAsCopy:"Guardar como (Copia)",makeDefault:"Hacer predeterminado",deleteReport:"Eliminar reporte",deleteReportConfirm:"\xBFEst\xE1 seguro de que desea eliminar el reporte '{0}'?",customExports:"Exportaciones personalizadas",customPlugin:"Plugin personalizado"},er={ok:"OK",cancel:"Annulla",apply:"Applica",close:"Chiudi",search:"Cerca...",selectAll:"Seleziona tutto",clearAll:"Cancella tutto",show:"Mostra",hide:"Nascondi",filterArea:"Area filtro",columnArea:"Colonne",rowArea:"Righe",dataArea:"Valori",footerArea:"Area pi\xE8 di pagina",allFields:"Tutti i campi",dropHere:"Rilascia qui",actions:"Azioni",saveNewView:"Salva nuova vista",saveAsView:"Salva con nome",saveChanges:"Salva le modifiche",savedViews:"Viste salvate",viewOptions:"Opzioni vista",export:"Esporta",importFile:"Importa",importFromFile:"Da file",pasteImport:"Importa dagli appunti",pasteImportHint:"Separato da tabulazioni o virgole",dropToImport:"Trascina qui i file per importarli",clipboardEmpty:"Nessun testo importabile trovato negli appunti.",clipboardDenied:"Impossibile accedere agli appunti. Controlla le autorizzazioni del browser.",excelExport:"Esportazione Excel",pivotView:"Vista Pivot",listView:"Vista elenco",preservesGridLayout:"Mantiene il layout della griglia",rawFlatData:"Dati grezzi",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Layout pronto per la stampa",fullSnapshot:"Istantanea completa",saveSessionState:"Salva lo stato della sessione",rawDataFormats:"Formati di dati grezzi",importSuccess:"Importato con successo",importWarning:"Completato con avvisi",importError:"Importazione non riuscita",initializing:"Inizializzazione...",emptyData:"Nessun dato trovato",noItems:"Nessun elemento trovato",blanks:"(Vuoti)",loadingData:"Attendi, preparazione dei dati in corso...",processing:"Elaborazione...",fieldSettings:"Impostazioni campo",caption:"Didascalia",summaryType:"Tipo di riepilogo",displayMode:"Modalit\xE0 di visualizzazione",groupInterval:"Intervallo di gruppo",sum:"Somma",count:"Conteggio",avg:"Media",min:"Min",max:"Max",grandTotal:"Totale complessivo",subTotal:"Totale parziale",absoluteValue:"Valore assoluto",runningTotal:"Totale parziale",difference:"Differenza",percentOfTotal:"% del totale",none:"Nessuno",year:"Anno",quarter:"Trimestre",month:"Mese",day:"Giorno",and:"E",or:"O",noConditionsAdded:"Nessuna condizione aggiunta...",calculatedMeasureDesigner:"Progettazione misure calcolate",createFormulasWithoutCode:"Crea formule e calcoli senza scrivere codice.",measureName:"Nome misura",format:"Formato",numericStandard:"Numerico (Standard)",numericDecimal:"Numerico (Decimale 1.486,15)",currencyTRY:"Valuta (TRY)",currencyUSD:"Valuta (USD)",percent:"Percentuale (%)",expand:"Espandi",collapse:"Comprimi",expandAll:"Espandi tutto",collapseAll:"Comprimi tutto",sortByThisColumn:"Ordina per questa colonna",sortFieldByThisColumn:'Ordina "{0}" per questa colonna',removeAllSorting:"Rimuovi tutti gli ordinamenti",sortAsc:"Ordina dalla A alla Z",sortDesc:"Ordina dalla Z alla A",clearSort:"Cancella ordinamento",order:"Ordine",moveToStart:"Sposta all'inizio",moveToEnd:"Sposta alla fine",moveToLeft:"Sposta a sinistra",moveToRight:"Sposta a destra",showFieldList:"Mostra elenco campi",editCalculation:"Modifica calcolo",viewsAndReports:"Viste e rapporti salvati",views:"Viste",saveChangesOverwrite:"Salva modifiche (Sovrascrivi)",saveAsCopy:"Salva con nome (Copia)",makeDefault:"Rendi predefinito",deleteReport:"Elimina rapporto",deleteReportConfirm:"Sei sicuro di voler eliminare il rapporto '{0}'?",customExports:"Esportazioni personalizzate",customPlugin:"Plugin personalizzato"},tr={ok:"OK",cancel:"Cancelar",apply:"Aplicar",close:"Fechar",search:"Pesquisar...",selectAll:"Selecionar tudo",clearAll:"Limpar tudo",show:"Mostrar",hide:"Ocultar",filterArea:"\xC1rea de filtro",columnArea:"Colunas",rowArea:"Linhas",dataArea:"Valores",footerArea:"\xC1rea do rodap\xE9",allFields:"Todos os campos",dropHere:"Soltar aqui",actions:"A\xE7\xF5es",saveNewView:"Salvar nova exibi\xE7\xE3o",saveAsView:"Salvar como",saveChanges:"Salvar altera\xE7\xF5es",savedViews:"Exibi\xE7\xF5es salvas",viewOptions:"Op\xE7\xF5es de exibi\xE7\xE3o",export:"Exportar",importFile:"Importar",importFromFile:"De arquivo",pasteImport:"Importar da \xE1rea de transfer\xEAncia",pasteImportHint:"Separado por tabula\xE7\xE3o ou v\xEDrgula",dropToImport:"Solte os arquivos aqui para importar",clipboardEmpty:"Nenhum texto import\xE1vel encontrado na \xE1rea de transfer\xEAncia.",clipboardDenied:"N\xE3o foi poss\xEDvel acessar a \xE1rea de transfer\xEAncia. Verifique as permiss\xF5es do navegador.",excelExport:"Exporta\xE7\xE3o para Excel",pivotView:"Exibi\xE7\xE3o din\xE2mica",listView:"Exibi\xE7\xE3o de lista",preservesGridLayout:"Preserva o layout da grade",rawFlatData:"Dados brutos planos",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Layout pronto para impress\xE3o",fullSnapshot:"Instant\xE2neo completo",saveSessionState:"Salvar o estado da sess\xE3o",rawDataFormats:"Formatos de dados brutos",importSuccess:"Importado com sucesso",importWarning:"Conclu\xEDdo com avisos",importError:"Falha na importa\xE7\xE3o",initializing:"Inicializando...",emptyData:"Nenhum dado encontrado",noItems:"Nenhum item encontrado",blanks:"(Em branco)",loadingData:"Por favor, aguarde, preparando dados...",processing:"Processando...",fieldSettings:"Configura\xE7\xF5es do campo",caption:"Legenda",summaryType:"Tipo de resumo",displayMode:"Modo de exibi\xE7\xE3o",groupInterval:"Intervalo de grupo",sum:"Soma",count:"Contagem",avg:"M\xE9dia",min:"M\xEDn",max:"M\xE1x",grandTotal:"Total geral",subTotal:"Subtotal",absoluteValue:"Valor absoluto",runningTotal:"Total acumulado",difference:"Diferen\xE7a",percentOfTotal:"% do total",none:"Nenhum",year:"Ano",quarter:"Trimestre",month:"M\xEAs",day:"Dia",and:"E",or:"Ou",noConditionsAdded:"Nenhuma condi\xE7\xE3o adicionada...",calculatedMeasureDesigner:"Designer de medidas calculadas",createFormulasWithoutCode:"Crie f\xF3rmulas e c\xE1lculos sem escrever c\xF3digo.",measureName:"Nome da medida",format:"Formato",numericStandard:"Num\xE9rico (Padr\xE3o)",numericDecimal:"Num\xE9rico (Decimal 1.486,15)",currencyTRY:"Moeda (TRY)",currencyUSD:"Moeda (USD)",percent:"Porcentagem (%)",expand:"Expandir",collapse:"Recolher",expandAll:"Expandir tudo",collapseAll:"Recolher tudo",sortByThisColumn:"Classificar por esta coluna",sortFieldByThisColumn:'Classificar "{0}" por esta coluna',removeAllSorting:"Remover todas as classifica\xE7\xF5es",sortAsc:"Classificar de A a Z",sortDesc:"Classificar de Z a A",clearSort:"Limpar classifica\xE7\xE3o",order:"Ordem",moveToStart:"Mover para o in\xEDcio",moveToEnd:"Mover para o fim",moveToLeft:"Mover para a esquerda",moveToRight:"Mover para a direita",showFieldList:"Mostrar lista de campos",editCalculation:"Editar c\xE1lculo",viewsAndReports:"Exibi\xE7\xF5es e relat\xF3rios salvos",views:"Exibi\xE7\xF5es",saveChangesOverwrite:"Salvar altera\xE7\xF5es (Substituir)",saveAsCopy:"Salvar como (C\xF3pia)",makeDefault:"Tornar padr\xE3o",deleteReport:"Excluir relat\xF3rio",deleteReportConfirm:"Tem certeza de que deseja excluir o relat\xF3rio '{0}'?",customExports:"Exporta\xE7\xF5es personalizadas",customPlugin:"Plugin personalizado"},rr={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",search:"\u041F\u043E\u0438\u0441\u043A...",selectAll:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435",clearAll:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u0441\u0435",show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",hide:"\u0421\u043A\u0440\u044B\u0442\u044C",filterArea:"\u041E\u0431\u043B\u0430\u0441\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440\u0430",columnArea:"\u041A\u043E\u043B\u043E\u043D\u043A\u0438",rowArea:"\u0421\u0442\u0440\u043E\u043A\u0438",dataArea:"\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F",footerArea:"\u041D\u0438\u0436\u043D\u0438\u0439 \u043A\u043E\u043B\u043E\u043D\u0442\u0438\u0442\u0443\u043B",allFields:"\u0412\u0441\u0435 \u043F\u043E\u043B\u044F",dropHere:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0441\u044E\u0434\u0430",actions:"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044F",saveNewView:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043D\u043E\u0432\u044B\u0439 \u0432\u0438\u0434",saveAsView:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A",saveChanges:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F",savedViews:"\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043D\u044B\u0435 \u0432\u0438\u0434\u044B",viewOptions:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0430",export:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442",importFile:"\u0418\u043C\u043F\u043E\u0440\u0442",importFromFile:"\u0418\u0437 \u0444\u0430\u0439\u043B\u0430",pasteImport:"\u0418\u043C\u043F\u043E\u0440\u0442 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043E\u0431\u043C\u0435\u043D\u0430",pasteImportHint:"\u0421 \u0440\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u0435\u043C \u0442\u0430\u0431\u0443\u043B\u044F\u0446\u0438\u0435\u0439 \u0438\u043B\u0438 \u0437\u0430\u043F\u044F\u0442\u043E\u0439",dropToImport:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0438\u043C\u043F\u043E\u0440\u0442\u0430",clipboardEmpty:"\u0412 \u0431\u0443\u0444\u0435\u0440\u0435 \u043E\u0431\u043C\u0435\u043D\u0430 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u0442\u0435\u043A\u0441\u0442 \u0434\u043B\u044F \u0438\u043C\u043F\u043E\u0440\u0442\u0430.",clipboardDenied:"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u0431\u0443\u0444\u0435\u0440\u0443 \u043E\u0431\u043C\u0435\u043D\u0430. \u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u044F \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430.",excelExport:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u0432 Excel",pivotView:"\u0421\u0432\u043E\u0434\u043D\u044B\u0439 \u0432\u0438\u0434",listView:"\u0412\u0438\u0434 \u0441\u043F\u0438\u0441\u043A\u0430",preservesGridLayout:"\u0421\u043E\u0445\u0440\u0430\u043D\u044F\u0435\u0442 \u043C\u0430\u043A\u0435\u0442 \u0441\u0435\u0442\u043A\u0438",rawFlatData:"\u0421\u044B\u0440\u044B\u0435 \u043F\u043B\u043E\u0441\u043A\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435",document:"\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442",pdfDocument:"PDF-\u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442",printReadyLayout:"\u041C\u0430\u043A\u0435\u0442 \u0434\u043B\u044F \u043F\u0435\u0447\u0430\u0442\u0438",fullSnapshot:"\u041F\u043E\u043B\u043D\u044B\u0439 \u0441\u043D\u0438\u043C\u043E\u043A",saveSessionState:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0441\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u0435 \u0441\u0435\u0430\u043D\u0441\u0430",rawDataFormats:"\u0424\u043E\u0440\u043C\u0430\u0442\u044B \u0441\u044B\u0440\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445",importSuccess:"\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E",importWarning:"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E \u0441 \u043F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u044F\u043C\u0438",importError:"\u041E\u0448\u0438\u0431\u043A\u0430 \u0438\u043C\u043F\u043E\u0440\u0442\u0430",initializing:"\u0418\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F...",emptyData:"\u0414\u0430\u043D\u043D\u044B\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",noItems:"\u042D\u043B\u0435\u043C\u0435\u043D\u0442\u044B \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",blanks:"(\u041F\u0443\u0441\u0442\u043E)",loadingData:"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u0434\u043E\u0436\u0434\u0438\u0442\u0435, \u0434\u0430\u043D\u043D\u044B\u0435 \u043F\u043E\u0434\u0433\u043E\u0442\u0430\u0432\u043B\u0438\u0432\u0430\u044E\u0442\u0441\u044F...",processing:"\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430...",fieldSettings:"\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043F\u043E\u043B\u044F",caption:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A",summaryType:"\u0422\u0438\u043F \u0438\u0442\u043E\u0433\u0430",displayMode:"\u0420\u0435\u0436\u0438\u043C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F",groupInterval:"\u0418\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",sum:"\u0421\u0443\u043C\u043C\u0430",count:"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E",avg:"\u0421\u0440\u0435\u0434\u043D\u0435\u0435",min:"\u041C\u0438\u043D",max:"\u041C\u0430\u043A\u0441",grandTotal:"\u041E\u0431\u0449\u0438\u0439 \u0438\u0442\u043E\u0433",subTotal:"\u041F\u0440\u043E\u043C\u0435\u0436\u0443\u0442\u043E\u0447\u043D\u044B\u0439 \u0438\u0442\u043E\u0433",absoluteValue:"\u0410\u0431\u0441\u043E\u043B\u044E\u0442\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",runningTotal:"\u0422\u0435\u043A\u0443\u0449\u0430\u044F \u0441\u0443\u043C\u043C\u0430",difference:"\u0420\u0430\u0437\u043D\u0438\u0446\u0430",percentOfTotal:"% \u043E\u0442 \u043E\u0431\u0449\u0435\u0433\u043E \u0438\u0442\u043E\u0433\u0430",none:"\u041D\u0435\u0442",year:"\u0413\u043E\u0434",quarter:"\u041A\u0432\u0430\u0440\u0442\u0430\u043B",month:"\u041C\u0435\u0441\u044F\u0446",day:"\u0414\u0435\u043D\u044C",and:"\u0418",or:"\u0418\u043B\u0438",noConditionsAdded:"\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043D\u0435 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B...",calculatedMeasureDesigner:"\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u0432\u044B\u0447\u0438\u0441\u043B\u044F\u0435\u043C\u044B\u0445 \u043C\u0435\u0440",createFormulasWithoutCode:"\u0421\u043E\u0437\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0444\u043E\u0440\u043C\u0443\u043B\u044B \u0438 \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F \u0431\u0435\u0437 \u043D\u0430\u043F\u0438\u0441\u0430\u043D\u0438\u044F \u043A\u043E\u0434\u0430.",measureName:"\u0418\u043C\u044F \u043C\u0435\u0440\u044B",format:"\u0424\u043E\u0440\u043C\u0430\u0442",numericStandard:"\u0427\u0438\u0441\u043B\u043E\u0432\u043E\u0439 (\u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u044B\u0439)",numericDecimal:"\u0427\u0438\u0441\u043B\u043E\u0432\u043E\u0439 (\u0434\u0435\u0441\u044F\u0442\u0438\u0447\u043D\u044B\u0439 1.486,15)",currencyTRY:"\u0412\u0430\u043B\u044E\u0442\u0430 (TRY)",currencyUSD:"\u0412\u0430\u043B\u044E\u0442\u0430 (USD)",percent:"\u041F\u0440\u043E\u0446\u0435\u043D\u0442 (%)",expand:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C",collapse:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C",expandAll:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435",collapseAll:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435",sortByThisColumn:"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443",sortFieldByThisColumn:'\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C "{0}" \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443',removeAllSorting:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0435 \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0438",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",order:"\u041F\u043E\u0440\u044F\u0434\u043E\u043A",moveToStart:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432 \u043D\u0430\u0447\u0430\u043B\u043E",moveToEnd:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432 \u043A\u043E\u043D\u0435\u0446",moveToLeft:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043B\u0435\u0432\u043E",moveToRight:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E",showFieldList:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0441\u043F\u0438\u0441\u043E\u043A \u043F\u043E\u043B\u0435\u0439",editCalculation:"\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u0435",viewsAndReports:"\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043D\u044B\u0435 \u0432\u0438\u0434\u044B \u0438 \u043E\u0442\u0447\u0435\u0442\u044B",views:"\u0412\u0438\u0434\u044B",saveChangesOverwrite:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F (\u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0438\u0441\u0430\u0442\u044C)",saveAsCopy:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A (\u041A\u043E\u043F\u0438\u044F)",makeDefault:"\u0421\u0434\u0435\u043B\u0430\u0442\u044C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E",deleteReport:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043E\u0442\u0447\u0435\u0442",deleteReportConfirm:"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043E\u0442\u0447\u0435\u0442 '{0}'?",customExports:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u044D\u043A\u0441\u043F\u043E\u0440\u0442",customPlugin:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u043F\u043B\u0430\u0433\u0438\u043D"},or={ok:"\u0645\u0648\u0627\u0641\u0642",cancel:"\u0625\u0644\u063A\u0627\u0621",apply:"\u062A\u0637\u0628\u064A\u0642",close:"\u0625\u063A\u0644\u0627\u0642",search:"\u0628\u062D\u062B...",selectAll:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",clearAll:"\u0645\u0633\u062D \u0627\u0644\u0643\u0644",show:"\u0639\u0631\u0636",hide:"\u0625\u062E\u0641\u0627\u0621",filterArea:"\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",columnArea:"\u0627\u0644\u0623\u0639\u0645\u062F\u0629",rowArea:"\u0627\u0644\u0635\u0641\u0648\u0641",dataArea:"\u0627\u0644\u0642\u064A\u0645",footerArea:"\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",allFields:"\u062C\u0645\u064A\u0639 \u0627\u0644\u062D\u0642\u0648\u0644",dropHere:"\u0623\u0641\u0644\u062A \u0647\u0646\u0627",actions:"\u0627\u0644\u0625\u062C\u0631\u0627\u0621\u0627\u062A",saveNewView:"\u062D\u0641\u0638 \u0639\u0631\u0636 \u062C\u062F\u064A\u062F",saveAsView:"\u062D\u0641\u0638 \u0628\u0627\u0633\u0645",saveChanges:"\u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A",savedViews:"\u0627\u0644\u0639\u0631\u0648\u0636 \u0627\u0644\u0645\u062D\u0641\u0648\u0638\u0629",viewOptions:"\u062E\u064A\u0627\u0631\u0627\u062A \u0627\u0644\u0639\u0631\u0636",export:"\u062A\u0635\u062F\u064A\u0631",importFile:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F",importFromFile:"\u0645\u0646 \u0645\u0644\u0641",pasteImport:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0645\u0646 \u0627\u0644\u062D\u0627\u0641\u0638\u0629",pasteImportHint:"\u0645\u0641\u0635\u0648\u0644 \u0628\u0639\u0644\u0627\u0645\u0629 \u062C\u062F\u0648\u0644\u0629 \u0623\u0648 \u0641\u0627\u0635\u0644\u0629",dropToImport:"\u0623\u0641\u0644\u062A \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0647\u0646\u0627 \u0644\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",clipboardEmpty:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0646\u0635 \u0642\u0627\u0628\u0644 \u0644\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0641\u064A \u0627\u0644\u062D\u0627\u0641\u0638\u0629.",clipboardDenied:"\u062A\u0639\u0630\u0631 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u062D\u0627\u0641\u0638\u0629. \u064A\u0631\u062C\u0649 \u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062A\u0635\u0641\u062D.",excelExport:"\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 Excel",pivotView:"\u0639\u0631\u0636 \u0645\u062D\u0648\u0631\u064A",listView:"\u0639\u0631\u0636 \u0627\u0644\u0642\u0627\u0626\u0645\u0629",preservesGridLayout:"\u064A\u062D\u0627\u0641\u0638 \u0639\u0644\u0649 \u062A\u062E\u0637\u064A\u0637 \u0627\u0644\u0634\u0628\u0643\u0629",rawFlatData:"\u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0645",document:"\u0645\u0633\u062A\u0646\u062F",pdfDocument:"\u0645\u0633\u062A\u0646\u062F PDF",printReadyLayout:"\u062A\u062E\u0637\u064A\u0637 \u062C\u0627\u0647\u0632 \u0644\u0644\u0637\u0628\u0627\u0639\u0629",fullSnapshot:"\u0644\u0642\u0637\u0629 \u0643\u0627\u0645\u0644\u0629",saveSessionState:"\u062D\u0641\u0638 \u062D\u0627\u0644\u0629 \u0627\u0644\u062C\u0644\u0633\u0629",rawDataFormats:"\u062A\u0646\u0633\u064A\u0642\u0627\u062A \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0645",importSuccess:"\u062A\u0645 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0628\u0646\u062C\u0627\u062D",importWarning:"\u0627\u0643\u062A\u0645\u0644 \u0645\u0639 \u062A\u062D\u0630\u064A\u0631\u0627\u062A",importError:"\u0641\u0634\u0644 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",initializing:"\u062C\u0627\u0631\u064A \u0627\u0644\u062A\u0647\u064A\u0626\u0629...",emptyData:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0628\u064A\u0627\u0646\u0627\u062A",noItems:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0639\u0646\u0627\u0635\u0631",blanks:"(\u0641\u0627\u0631\u063A)",loadingData:"\u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u0646\u062A\u0638\u0627\u0631\u060C \u062C\u0627\u0631\u064A \u062A\u062D\u0636\u064A\u0631 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A...",processing:"\u062C\u0627\u0631\u064A \u0627\u0644\u0645\u0639\u0627\u0644\u062C\u0629...",fieldSettings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0642\u0644",caption:"\u0627\u0644\u062A\u0633\u0645\u064A\u0629 \u0627\u0644\u062A\u0648\u0636\u064A\u062D\u064A\u0629",summaryType:"\u0646\u0648\u0639 \u0627\u0644\u0645\u0644\u062E\u0635",displayMode:"\u0648\u0636\u0639 \u0627\u0644\u0639\u0631\u0636",groupInterval:"\u0627\u0644\u0641\u0627\u0635\u0644 \u0627\u0644\u0632\u0645\u0646\u064A \u0644\u0644\u0645\u062C\u0645\u0648\u0639\u0629",sum:"\u0645\u062C\u0645\u0648\u0639",count:"\u0627\u0644\u0639\u062F\u062F",avg:"\u0645\u062A\u0648\u0633\u0637",min:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u062F\u0646\u0649",max:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0642\u0635\u0649",grandTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",subTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064A",absoluteValue:"\u0642\u064A\u0645\u0629 \u0645\u0637\u0644\u0642\u0629",runningTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u062A\u0631\u0627\u0643\u0645\u064A",difference:"\u0627\u0644\u0641\u0631\u0642",percentOfTotal:"\u066A \u0645\u0646 \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",none:"\u0628\u0644\u0627",year:"\u0633\u0646\u0629",quarter:"\u0631\u0628\u0639",month:"\u0634\u0647\u0631",day:"\u064A\u0648\u0645",and:"\u0648",or:"\u0623\u0648",noConditionsAdded:"\u0644\u0645 \u064A\u062A\u0645 \u0625\u0636\u0627\u0641\u0629 \u0634\u0631\u0648\u0637...",calculatedMeasureDesigner:"\u0645\u0635\u0645\u0645 \u0627\u0644\u0645\u0642\u0627\u064A\u064A\u0633 \u0627\u0644\u0645\u062D\u0633\u0648\u0628\u0629",createFormulasWithoutCode:"\u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0635\u064A\u063A \u0648\u0627\u0644\u062D\u0633\u0627\u0628\u0627\u062A \u0628\u062F\u0648\u0646 \u0643\u062A\u0627\u0628\u0629 \u0643\u0648\u062F.",measureName:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0642\u064A\u0627\u0633",format:"\u0627\u0644\u062A\u0646\u0633\u064A\u0642",numericStandard:"\u0631\u0642\u0645\u064A (\u0642\u064A\u0627\u0633\u064A)",numericDecimal:"\u0631\u0642\u0645\u064A (\u0639\u0634\u0631\u064A 1,486.15)",currencyTRY:"\u0627\u0644\u0639\u0645\u0644\u0629 (\u0644\u064A\u0631\u0629 \u062A\u0631\u0643\u064A\u0629)",currencyUSD:"\u0627\u0644\u0639\u0645\u0644\u0629 (\u062F\u0648\u0644\u0627\u0631 \u0623\u0645\u0631\u064A\u0643\u064A)",percent:"\u0646\u0633\u0628\u0629 \u0645\u0626\u0648\u064A\u0629 (%)",expand:"\u062A\u0648\u0633\u064A\u0639",collapse:"\u0637\u064A",expandAll:"\u062A\u0648\u0633\u064A\u0639 \u0627\u0644\u0643\u0644",collapseAll:"\u0637\u064A \u0627\u0644\u0643\u0644",sortByThisColumn:"\u0627\u0644\u0641\u0631\u0632 \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",sortFieldByThisColumn:'\u0641\u0631\u0632 "{0}" \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F',removeAllSorting:"\u0625\u0632\u0627\u0644\u0629 \u0643\u0644 \u0627\u0644\u0641\u0631\u0632",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",order:"\u0627\u0644\u062A\u0631\u062A\u064A\u0628",moveToStart:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0628\u062F\u0627\u064A\u0629",moveToEnd:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0646\u0647\u0627\u064A\u0629",moveToLeft:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0633\u0627\u0631",moveToRight:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0645\u064A\u0646",showFieldList:"\u0625\u0638\u0647\u0627\u0631 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062D\u0642\u0648\u0644",editCalculation:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0639\u0645\u0644\u064A\u0629 \u0627\u0644\u062D\u0633\u0627\u0628\u064A\u0629",viewsAndReports:"\u0627\u0644\u0639\u0631\u0648\u0636 \u0648\u0627\u0644\u062A\u0642\u0627\u0631\u064A\u0631 \u0627\u0644\u0645\u062D\u0641\u0648\u0638\u0629",views:"\u0627\u0644\u0639\u0631\u0648\u0636",saveChangesOverwrite:"\u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A (\u0627\u0633\u062A\u0628\u062F\u0627\u0644)",saveAsCopy:"\u062D\u0641\u0638 \u0628\u0627\u0633\u0645 (\u0646\u0633\u062E\u0629)",makeDefault:"\u062A\u0639\u064A\u064A\u0646 \u0643\u0627\u0641\u062A\u0631\u0627\u0636\u064A",deleteReport:"\u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u0631\u064A\u0631",deleteReportConfirm:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F \u0623\u0646\u0643 \u062A\u0631\u064A\u062F \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u0631\u064A\u0631 '{0}'\u061F",customExports:"\u062A\u0635\u062F\u064A\u0631\u0627\u062A \u0645\u062E\u0635\u0635\u0629",customPlugin:"\u0645\u0643\u0648\u0646 \u0625\u0636\u0627\u0641\u064A \u0645\u062E\u0635\u0635"},ir={ok:"\u786E\u5B9A",cancel:"\u53D6\u6D88",apply:"\u5E94\u7528",close:"\u5173\u95ED",search:"\u641C\u7D22...",selectAll:"\u5168\u9009",clearAll:"\u5168\u90E8\u6E05\u9664",show:"\u663E\u793A",hide:"\u9690\u85CF",filterArea:"\u8FC7\u6EE4\u533A\u57DF",columnArea:"\u5217",rowArea:"\u884C",dataArea:"\u503C",footerArea:"\u9875\u811A\u533A\u57DF",allFields:"\u6240\u6709\u5B57\u6BB5",dropHere:"\u62D6\u653E\u5230\u8FD9\u91CC",actions:"\u64CD\u4F5C",saveNewView:"\u4FDD\u5B58\u65B0\u89C6\u56FE",saveAsView:"\u53E6\u5B58\u4E3A",saveChanges:"\u4FDD\u5B58\u66F4\u6539",savedViews:"\u5DF2\u4FDD\u5B58\u7684\u89C6\u56FE",viewOptions:"\u89C6\u56FE\u9009\u9879",export:"\u5BFC\u51FA",importFile:"\u5BFC\u5165",importFromFile:"\u4ECE\u6587\u4EF6",pasteImport:"\u4ECE\u526A\u8D34\u677F\u5BFC\u5165",pasteImportHint:"\u5236\u8868\u7B26\u6216\u9017\u53F7\u5206\u9694",dropToImport:"\u5C06\u6587\u4EF6\u62D6\u653E\u5230\u6B64\u5904\u4EE5\u5BFC\u5165",clipboardEmpty:"\u526A\u8D34\u677F\u4E2D\u672A\u627E\u5230\u53EF\u5BFC\u5165\u7684\u6587\u672C\u3002",clipboardDenied:"\u65E0\u6CD5\u8BBF\u95EE\u526A\u8D34\u677F\u3002\u8BF7\u68C0\u67E5\u6D4F\u89C8\u5668\u6743\u9650\u3002",excelExport:"Excel \u5BFC\u51FA",pivotView:"\u6570\u636E\u900F\u89C6\u89C6\u56FE",listView:"\u5217\u8868\u89C6\u56FE",preservesGridLayout:"\u4FDD\u7559\u7F51\u683C\u5E03\u5C40",rawFlatData:"\u539F\u59CB\u5E73\u9762\u6570\u636E",document:"\u6587\u6863",pdfDocument:"PDF \u6587\u6863",printReadyLayout:"\u6253\u5370\u5C31\u7EEA\u5E03\u5C40",fullSnapshot:"\u5B8C\u6574\u5FEB\u7167",saveSessionState:"\u4FDD\u5B58\u4F1A\u8BDD\u72B6\u6001",rawDataFormats:"\u539F\u59CB\u6570\u636E\u683C\u5F0F",importSuccess:"\u5BFC\u5165\u6210\u529F",importWarning:"\u5DF2\u5B8C\u6210\u5E76\u5E26\u6709\u8B66\u544A",importError:"\u5BFC\u5165\u5931\u8D25",initializing:"\u521D\u59CB\u5316\u4E2D...",emptyData:"\u672A\u627E\u5230\u6570\u636E",noItems:"\u672A\u627E\u5230\u9879\u76EE",blanks:"(\u7A7A\u767D)",loadingData:"\u8BF7\u7A0D\u5019\uFF0C\u6B63\u5728\u51C6\u5907\u6570\u636E...",processing:"\u5904\u7406\u4E2D...",fieldSettings:"\u5B57\u6BB5\u8BBE\u7F6E",caption:"\u6807\u9898",summaryType:"\u6C47\u603B\u7C7B\u578B",displayMode:"\u663E\u793A\u6A21\u5F0F",groupInterval:"\u5206\u7EC4\u95F4\u9694",sum:"\u6C42\u548C",count:"\u8BA1\u6570",avg:"\u5E73\u5747\u503C",min:"\u6700\u5C0F\u503C",max:"\u6700\u5927\u503C",grandTotal:"\u603B\u8BA1",subTotal:"\u5C0F\u8BA1",absoluteValue:"\u7EDD\u5BF9\u503C",runningTotal:"\u8FD0\u884C\u603B\u8BA1",difference:"\u5DEE\u5F02",percentOfTotal:"\u5360\u603B\u8BA1\u7684\u767E\u5206\u6BD4",none:"\u65E0",year:"\u5E74",quarter:"\u5B63\u5EA6",month:"\u6708",day:"\u65E5",and:"\u4E0E",or:"\u6216",noConditionsAdded:"\u672A\u6DFB\u52A0\u6761\u4EF6...",calculatedMeasureDesigner:"\u8BA1\u7B97\u5EA6\u91CF\u8BBE\u8BA1\u5668",createFormulasWithoutCode:"\u65E0\u9700\u7F16\u5199\u4EE3\u7801\u5373\u53EF\u521B\u5EFA\u516C\u5F0F\u548C\u8BA1\u7B97\u3002",measureName:"\u5EA6\u91CF\u540D\u79F0",format:"\u683C\u5F0F",numericStandard:"\u6570\u5B57\uFF08\u6807\u51C6\uFF09",numericDecimal:"\u6570\u5B57\uFF08\u5341\u8FDB\u5236 1,486.15\uFF09",currencyTRY:"\u8D27\u5E01\uFF08TRY\uFF09",currencyUSD:"\u8D27\u5E01\uFF08USD\uFF09",percent:"\u767E\u5206\u6BD4\uFF08%\uFF09",expand:"\u5C55\u5F00",collapse:"\u6298\u53E0",expandAll:"\u5168\u90E8\u5C55\u5F00",collapseAll:"\u5168\u90E8\u6298\u53E0",sortByThisColumn:"\u6309\u6B64\u5217\u6392\u5E8F",sortFieldByThisColumn:'\u6309\u6B64\u5217\u6392\u5E8F "{0}"',removeAllSorting:"\u79FB\u9664\u6240\u6709\u6392\u5E8F",sortAsc:"\u6309 A \u5230 Z \u6392\u5E8F",sortDesc:"\u6309 Z \u5230 A \u6392\u5E8F",clearSort:"\u6E05\u9664\u6392\u5E8F",order:"\u987A\u5E8F",moveToStart:"\u79FB\u5230\u5F00\u5934",moveToEnd:"\u79FB\u5230\u7ED3\u5C3E",moveToLeft:"\u5DE6\u79FB",moveToRight:"\u53F3\u79FB",showFieldList:"\u663E\u793A\u5B57\u6BB5\u5217\u8868",editCalculation:"\u7F16\u8F91\u8BA1\u7B97",viewsAndReports:"\u5DF2\u4FDD\u5B58\u7684\u89C6\u56FE\u548C\u62A5\u544A",views:"\u89C6\u56FE",saveChangesOverwrite:"\u4FDD\u5B58\u66F4\u6539\uFF08\u8986\u76D6\uFF09",saveAsCopy:"\u53E6\u5B58\u4E3A\uFF08\u590D\u5236\uFF09",makeDefault:"\u8BBE\u4E3A\u9ED8\u8BA4",deleteReport:"\u5220\u9664\u62A5\u544A",deleteReportConfirm:"\u786E\u5B9A\u8981\u5220\u9664\u62A5\u544A '{0}' \u5417\uFF1F",customExports:"\u81EA\u5B9A\u4E49\u5BFC\u51FA",customPlugin:"\u81EA\u5B9A\u4E49\u63D2\u4EF6"},nr={ok:"OK",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",apply:"\u9069\u7528",close:"\u9589\u3058\u308B",search:"\u691C\u7D22...",selectAll:"\u3059\u3079\u3066\u9078\u629E",clearAll:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",show:"\u8868\u793A",hide:"\u975E\u8868\u793A",filterArea:"\u30D5\u30A3\u30EB\u30BF\u30FC\u9818\u57DF",columnArea:"\u5217",rowArea:"\u884C",dataArea:"\u5024",footerArea:"\u30D5\u30C3\u30BF\u30FC\u9818\u57DF",allFields:"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9",dropHere:"\u3053\u3053\u306B\u30C9\u30ED\u30C3\u30D7",actions:"\u30A2\u30AF\u30B7\u30E7\u30F3",saveNewView:"\u65B0\u3057\u3044\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58",saveAsView:"\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58",saveChanges:"\u5909\u66F4\u3092\u4FDD\u5B58",savedViews:"\u4FDD\u5B58\u3055\u308C\u305F\u30D3\u30E5\u30FC",viewOptions:"\u30D3\u30E5\u30FC\u30AA\u30D7\u30B7\u30E7\u30F3",export:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",importFile:"\u30A4\u30F3\u30DD\u30FC\u30C8",importFromFile:"\u30D5\u30A1\u30A4\u30EB\u304B\u3089",pasteImport:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u304B\u3089\u30A4\u30F3\u30DD\u30FC\u30C8",pasteImportHint:"\u30BF\u30D6\u307E\u305F\u306F\u30AB\u30F3\u30DE\u533A\u5207\u308A",dropToImport:"\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u3053\u3053\u306B\u30C9\u30ED\u30C3\u30D7",clipboardEmpty:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30A4\u30F3\u30DD\u30FC\u30C8\u53EF\u80FD\u306A\u30C6\u30AD\u30B9\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002",clipboardDenied:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30D6\u30E9\u30A6\u30B6\u306E\u6A29\u9650\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002",excelExport:"Excel \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",pivotView:"\u30D4\u30DC\u30C3\u30C8\u30D3\u30E5\u30FC",listView:"\u30EA\u30B9\u30C8\u30D3\u30E5\u30FC",preservesGridLayout:"\u30B0\u30EA\u30C3\u30C9\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u6301",rawFlatData:"\u30D5\u30E9\u30C3\u30C8\u306A\u751F\u30C7\u30FC\u30BF",document:"\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8",pdfDocument:"PDF \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8",printReadyLayout:"\u5370\u5237\u7528\u30EC\u30A4\u30A2\u30A6\u30C8",fullSnapshot:"\u5B8C\u5168\u306A\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",saveSessionState:"\u30BB\u30C3\u30B7\u30E7\u30F3\u72B6\u614B\u3092\u4FDD\u5B58",rawDataFormats:"\u751F\u30C7\u30FC\u30BF\u5F62\u5F0F",importSuccess:"\u30A4\u30F3\u30DD\u30FC\u30C8\u306B\u6210\u529F\u3057\u307E\u3057\u305F",importWarning:"\u8B66\u544A\u4ED8\u304D\u3067\u5B8C\u4E86\u3057\u307E\u3057\u305F",importError:"\u30A4\u30F3\u30DD\u30FC\u30C8\u306B\u5931\u6557\u3057\u307E\u3057\u305F",initializing:"\u521D\u671F\u5316\u4E2D...",emptyData:"\u30C7\u30FC\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",noItems:"\u30A2\u30A4\u30C6\u30E0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",blanks:"(\u7A7A\u767D)",loadingData:"\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u6E96\u5099\u3057\u3066\u3044\u307E\u3059...",processing:"\u51E6\u7406\u4E2D...",fieldSettings:"\u30D5\u30A3\u30FC\u30EB\u30C9\u8A2D\u5B9A",caption:"\u30AD\u30E3\u30D7\u30B7\u30E7\u30F3",summaryType:"\u96C6\u8A08\u30BF\u30A4\u30D7",displayMode:"\u8868\u793A\u30E2\u30FC\u30C9",groupInterval:"\u30B0\u30EB\u30FC\u30D7\u9593\u9694",sum:"\u5408\u8A08",count:"\u30AB\u30A6\u30F3\u30C8",avg:"\u5E73\u5747",min:"\u6700\u5C0F",max:"\u6700\u5927",grandTotal:"\u7DCF\u8A08",subTotal:"\u5C0F\u8A08",absoluteValue:"\u7D76\u5BFE\u5024",runningTotal:"\u7D2F\u8A08",difference:"\u5DEE\u5206",percentOfTotal:"\u7DCF\u8A08\u306E\u5272\u5408",none:"\u306A\u3057",year:"\u5E74",quarter:"\u56DB\u534A\u671F",month:"\u6708",day:"\u65E5",and:"\u304B\u3064 (And)",or:"\u307E\u305F\u306F (Or)",noConditionsAdded:"\u6761\u4EF6\u304C\u8FFD\u52A0\u3055\u308C\u3066\u3044\u307E\u305B\u3093...",calculatedMeasureDesigner:"\u8A08\u7B97\u30E1\u30B8\u30E3\u30FC\u30C7\u30B6\u30A4\u30CA\u30FC",createFormulasWithoutCode:"\u30B3\u30FC\u30C9\u3092\u8A18\u8FF0\u305B\u305A\u306B\u6570\u5F0F\u3068\u8A08\u7B97\u3092\u4F5C\u6210\u3057\u307E\u3059\u3002",measureName:"\u30E1\u30B8\u30E3\u30FC\u540D",format:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8",numericStandard:"\u6570\u5024\uFF08\u6A19\u6E96\uFF09",numericDecimal:"\u6570\u5024\uFF08\u5C0F\u6570 1,486.15\uFF09",currencyTRY:"\u901A\u8CA8\uFF08TRY\uFF09",currencyUSD:"\u901A\u8CA8\uFF08USD\uFF09",percent:"\u30D1\u30FC\u30BB\u30F3\u30C8\uFF08%\uFF09",expand:"\u5C55\u958B",collapse:"\u6298\u308A\u305F\u305F\u3080",expandAll:"\u3059\u3079\u3066\u5C55\u958B",collapseAll:"\u3059\u3079\u3066\u6298\u308A\u305F\u305F\u3080",sortByThisColumn:"\u3053\u306E\u5217\u3067\u4E26\u3079\u66FF\u3048",sortFieldByThisColumn:'\u3053\u306E\u5217\u3067 "{0}" \u3092\u4E26\u3079\u66FF\u3048',removeAllSorting:"\u3059\u3079\u3066\u306E\u4E26\u3079\u66FF\u3048\u3092\u524A\u9664",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",order:"\u9806\u5E8F",moveToStart:"\u5148\u982D\u306B\u79FB\u52D5",moveToEnd:"\u672B\u5C3E\u306B\u79FB\u52D5",moveToLeft:"\u5DE6\u306B\u79FB\u52D5",moveToRight:"\u53F3\u306B\u79FB\u52D5",showFieldList:"\u30D5\u30A3\u30FC\u30EB\u30C9\u30EA\u30B9\u30C8\u3092\u8868\u793A",editCalculation:"\u8A08\u7B97\u306E\u7DE8\u96C6",viewsAndReports:"\u4FDD\u5B58\u3055\u308C\u305F\u30D3\u30E5\u30FC\u3068\u30EC\u30DD\u30FC\u30C8",views:"\u30D3\u30E5\u30FC",saveChangesOverwrite:"\u5909\u66F4\u3092\u4FDD\u5B58\uFF08\u4E0A\u66F8\u304D\uFF09",saveAsCopy:"\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58\uFF08\u30B3\u30D4\u30FC\uFF09",makeDefault:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A",deleteReport:"\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664",deleteReportConfirm:"\u30EC\u30DD\u30FC\u30C8 '{0}' \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",customExports:"\u30AB\u30B9\u30BF\u30E0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",customPlugin:"\u30AB\u30B9\u30BF\u30E0\u30D7\u30E9\u30B0\u30A4\u30F3"},ar={ok:"\uD655\uC778",cancel:"\uCDE8\uC18C",apply:"\uC801\uC6A9",close:"\uB2EB\uAE30",search:"\uAC80\uC0C9...",selectAll:"\uBAA8\uB450 \uC120\uD0DD",clearAll:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30",show:"\uD45C\uC2DC",hide:"\uC228\uAE30\uAE30",filterArea:"\uD544\uD130 \uC601\uC5ED",columnArea:"\uC5F4",rowArea:"\uD589",dataArea:"\uAC12",footerArea:"\uBC14\uB2E5\uAE00 \uC601\uC5ED",allFields:"\uBAA8\uB4E0 \uD544\uB4DC",dropHere:"\uC5EC\uAE30\uC5D0 \uB193\uAE30",actions:"\uC791\uC5C5",saveNewView:"\uC0C8 \uBDF0 \uC800\uC7A5",saveAsView:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",saveChanges:"\uBCC0\uACBD \uC0AC\uD56D \uC800\uC7A5",savedViews:"\uC800\uC7A5\uB41C \uBDF0",viewOptions:"\uBDF0 \uC635\uC158",export:"\uB0B4\uBCF4\uB0B4\uAE30",importFile:"\uAC00\uC838\uC624\uAE30",importFromFile:"\uD30C\uC77C\uC5D0\uC11C",pasteImport:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uC11C \uAC00\uC838\uC624\uAE30",pasteImportHint:"\uD0ED \uB610\uB294 \uC27C\uD45C\uB85C \uAD6C\uBD84",dropToImport:"\uAC00\uC838\uC62C \uD30C\uC77C\uC744 \uC5EC\uAE30\uC5D0 \uB193\uC73C\uC138\uC694",clipboardEmpty:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uC11C \uAC00\uC838\uC62C \uC218 \uC788\uB294 \uD14D\uC2A4\uD2B8\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",clipboardDenied:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uC811\uADFC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uAD8C\uD55C\uC744 \uD655\uC778\uD558\uC138\uC694.",excelExport:"Excel \uB0B4\uBCF4\uB0B4\uAE30",pivotView:"\uD53C\uBC97 \uBDF0",listView:"\uBAA9\uB85D \uBDF0",preservesGridLayout:"\uADF8\uB9AC\uB4DC \uB808\uC774\uC544\uC6C3 \uC720\uC9C0",rawFlatData:"\uC6D0\uC2DC \uD50C\uB7AB \uB370\uC774\uD130",document:"\uBB38\uC11C",pdfDocument:"PDF \uBB38\uC11C",printReadyLayout:"\uC778\uC1C4 \uC900\uBE44 \uB808\uC774\uC544\uC6C3",fullSnapshot:"\uC804\uCCB4 \uC2A4\uB0C5\uC0F7",saveSessionState:"\uC138\uC158 \uC0C1\uD0DC \uC800\uC7A5",rawDataFormats:"\uC6D0\uC2DC \uB370\uC774\uD130 \uD615\uC2DD",importSuccess:"\uAC00\uC838\uC624\uAE30 \uC131\uACF5",importWarning:"\uACBD\uACE0\uC640 \uD568\uAED8 \uC644\uB8CC",importError:"\uAC00\uC838\uC624\uAE30 \uC2E4\uD328",initializing:"\uCD08\uAE30\uD654 \uC911...",emptyData:"\uB370\uC774\uD130\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",noItems:"\uD56D\uBAA9\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",blanks:"(\uBE44\uC5B4 \uC788\uC74C)",loadingData:"\uC7A0\uC2DC \uAE30\uB2E4\uB824 \uC8FC\uC2ED\uC2DC\uC624. \uB370\uC774\uD130\uB97C \uC900\uBE44\uD558\uB294 \uC911\uC785\uB2C8\uB2E4...",processing:"\uCC98\uB9AC \uC911...",fieldSettings:"\uD544\uB4DC \uC124\uC815",caption:"\uCEA1\uC158",summaryType:"\uC694\uC57D \uC720\uD615",displayMode:"\uD45C\uC2DC \uBAA8\uB4DC",groupInterval:"\uADF8\uB8F9 \uAC04\uACA9",sum:"\uD569\uACC4",count:"\uAC1C\uC218",avg:"\uD3C9\uADE0",min:"\uCD5C\uC18C",max:"\uCD5C\uB300",grandTotal:"\uCD1D\uACC4",subTotal:"\uC18C\uACC4",absoluteValue:"\uC808\uB300\uAC12",runningTotal:"\uB204\uACC4",difference:"\uCC28\uC774",percentOfTotal:"\uCD1D\uACC4\uC758 \uBE44\uC728",none:"\uC5C6\uC74C",year:"\uC5F0\uB3C4",quarter:"\uBD84\uAE30",month:"\uC6D4",day:"\uC77C",and:"\uADF8\uB9AC\uACE0 (And)",or:"\uB610\uB294 (Or)",noConditionsAdded:"\uCD94\uAC00\uB41C \uC870\uAC74\uC774 \uC5C6\uC2B5\uB2C8\uB2E4...",calculatedMeasureDesigner:"\uACC4\uC0B0\uB41C \uCE21\uC815\uAC12 \uB514\uC790\uC774\uB108",createFormulasWithoutCode:"\uCF54\uB4DC \uC791\uC131 \uC5C6\uC774 \uC218\uC2DD \uBC0F \uACC4\uC0B0\uC744 \uB9CC\uB4ED\uB2C8\uB2E4.",measureName:"\uCE21\uC815\uAC12 \uC774\uB984",format:"\uD615\uC2DD",numericStandard:"\uC22B\uC790(\uD45C\uC900)",numericDecimal:"\uC22B\uC790(\uC18C\uC218\uC810 1,486.15)",currencyTRY:"\uD1B5\uD654(TRY)",currencyUSD:"\uD1B5\uD654(USD)",percent:"\uBC31\uBD84\uC728(%)",expand:"\uD655\uC7A5",collapse:"\uCD95\uC18C",expandAll:"\uBAA8\uB450 \uD655\uC7A5",collapseAll:"\uBAA8\uB450 \uCD95\uC18C",sortByThisColumn:"\uC774 \uC5F4\uC744 \uAE30\uC900\uC73C\uB85C \uC815\uB82C",sortFieldByThisColumn:'\uC774 \uC5F4\uC744 \uAE30\uC900\uC73C\uB85C "{0}" \uC815\uB82C',removeAllSorting:"\uBAA8\uB4E0 \uC815\uB82C \uC81C\uAC70",sortAsc:"\uC624\uB984\uCC28\uC21C \uC815\uB82C",sortDesc:"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C",clearSort:"\uC815\uB82C \uC9C0\uC6B0\uAE30",order:"\uC21C\uC11C",moveToStart:"\uC2DC\uC791\uC73C\uB85C \uC774\uB3D9",moveToEnd:"\uB05D\uC73C\uB85C \uC774\uB3D9",moveToLeft:"\uC67C\uCABD\uC73C\uB85C \uC774\uB3D9",moveToRight:"\uC624\uB978\uCABD\uC73C\uB85C \uC774\uB3D9",showFieldList:"\uD544\uB4DC \uBAA9\uB85D \uD45C\uC2DC",editCalculation:"\uACC4\uC0B0 \uD3B8\uC9D1",viewsAndReports:"\uC800\uC7A5\uB41C \uBDF0 \uBC0F \uBCF4\uACE0\uC11C",views:"\uBDF0",saveChangesOverwrite:"\uBCC0\uACBD \uC0AC\uD56D \uC800\uC7A5(\uB36E\uC5B4\uC4F0\uAE30)",saveAsCopy:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5(\uBCF5\uC0AC)",makeDefault:"\uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815",deleteReport:"\uBCF4\uACE0\uC11C \uC0AD\uC81C",deleteReportConfirm:"'{0}' \uBCF4\uACE0\uC11C\uB97C \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",customExports:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uB0B4\uBCF4\uB0B4\uAE30",customPlugin:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD50C\uB7EC\uADF8\uC778"};var ur=null;function so(i){ur=i;}function ut(){return ur}function st(i){let e=new Set,t=i.cellMatrix.keys;for(let o=0;o<t.length;o++)e.add(t[o]);let r=(o,n)=>{let a=[];for(let u of o){let s=n?i.rowIndexMap[u.key]:i.columnIndexMap[u.key];if(s===void 0){a.push(u);continue}if(n?e.has(s*67108864):e.has(s)){let c=u.children&&u.children.length>0?r(u.children,n):[];a.push({...u,children:c});}}return a};return [r(i.rowTree,true),r(i.colTree,false)]}function lt(i,e,t=false){let r=t||e.has(i.key);return !i.children||i.children.length===0||!r?1:i.children.reduce((o,n)=>o+lt(n,e,t),0)}function ct(i,e,t=false){if(!i||i.length===0)return 0;let r=0;for(let o of i){let n=t||e.has(o.key),a=0;n&&o.children&&o.children.length>0&&(a=ct(o.children,e,t)),a>r&&(r=a);}return r+1}function dt(i,e,t=false){let r=[],o=n=>{for(let a of n){let u=t||e.has(a.key);!(a.children&&a.children.length>0)||!u?r.push(a):o(a.children);}};return o(i),r}function pt(i,e,t,r,o=false){let n=ct(i,r,o),a=[],s=e.length>1&&t.dataFieldPosition==="columns",l=s?e.length:1;for(let d=0;d<n;d++)a.push([]);(s||i.length===0)&&a.push([]);let c=(d,p)=>{for(let m of d){let f=o||r.has(m.key),y=m.hasChildren??(m.children&&m.children.length>0),g=!y||!f,C=lt(m,r,o),x={node:m,caption:String(m.value||"(Blank)"),colSpan:C*l,rowSpan:g?n-p:1,isTotal:m.isTotal,fieldId:m.fieldId,colPath:m.key,hasChildren:y,isExpanded:f};if(a[p].push(x),g&&s)for(let w of e)a[n].push({node:null,caption:w.caption,colSpan:1,rowSpan:1,isTotal:false,fieldId:w.id,colPath:m.key});g||c(m.children,p+1);}};if(i.length>0)c(i,0);else if(s)for(let d of e)a[0].push({node:null,caption:d.caption,colSpan:1,rowSpan:1,isTotal:false,fieldId:d.id,colPath:""});if(t.showRowGrandTotals&&i.length>0&&(a[0].push({node:null,caption:"Grand Total",colSpan:l,rowSpan:n,isTotal:true,colPath:""}),s))for(let d of e)a[n].push({node:null,caption:d.caption,colSpan:1,rowSpan:1,isTotal:true,fieldId:d.id,colPath:""});return a.filter(d=>d.length>0)}function lo(i,e,t){let r=[],o=n=>{for(let a of n)r.push(a),(t||e.has(a.key))&&a.children.length>0&&o(a.children);};return o(i),r}function mt(i,e,t,r,o,n){let a=[],u=(l,c,d)=>{for(let p of l){let m=t||e.has(p.key),f=p.hasChildren??(p.children&&p.children.length>0),y=[...c];if(y[d]=String(p.value),!f||!m){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;a.push({pathValues:g,depth:d,key:p.key,isSubtotal:false,hasChildren:f,isExpanded:m,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}else {if(o&&n==="top"&&d<r-1){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;a.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}if(u(p.children,y,d+1),o&&n==="bottom"&&d<r-1){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;a.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}}}},s=new Array(r).fill(null);return u(i,s,0),co(a,r),a}function co(i,e){for(let t=0;t<e;t++){let r=0;for(;r<i.length;){let o=i[r].pathValues[t];if(o===null){i[r].rowSpans[t]=1,i[r].isFirstInGroup[t]=false,r++;continue}let n=r+1;for(;n<i.length&&i[n].pathValues[t]===o;){let u=true;for(let s=0;s<t;s++)if(i[n].pathValues[s]!==i[r].pathValues[s]){u=false;break}if(!u)break;n++;}let a=n-r;i[r].rowSpans[t]=a,i[r].isFirstInGroup[t]=true;for(let u=r+1;u<n;u++)i[u].rowSpans[t]=0,i[u].isFirstInGroup[t]=false;r=n;}}}function ft(i,e,t,r,o,n){let a=[],u=(l,c,d)=>{for(let p of l){let m=t||e.has(p.key),f=p.hasChildren??(p.children&&p.children.length>0),y=[...c];y[d]=String(p.value);let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;a.push({pathValues:g,depth:d,key:p.key,isSubtotal:false,hasChildren:f,isExpanded:m,node:p,rowSpans:[1],isFirstInGroup:[true]}),m&&f&&(u(p.children,y,d+1),o&&n==="bottom"&&a.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:[1],isFirstInGroup:[true]}));}},s=new Array(r).fill(null);return u(i,s,0),a}var xe=class i{worker;static sharedWorker=null;static workerErrorCount=0;static MAX_WORKER_ERRORS=3;static getOrCreateWorker(){if(i.sharedWorker&&i.workerErrorCount>=i.MAX_WORKER_ERRORS){try{i.sharedWorker.terminate();}catch{}i.sharedWorker=null,i.workerErrorCount=0;}return i.sharedWorker||(i.sharedWorker=ce("export",()=>{let e=()=>"./export.worker.js";return new URL(e(),import.meta.url)}),i.workerErrorCount=0,i.sharedWorker.onerror=()=>{i.workerErrorCount++;}),i.sharedWorker}static disposeWorker(){if(i.sharedWorker){try{i.sharedWorker.terminate();}catch{}i.sharedWorker=null,i.workerErrorCount=0;}}constructor(){this.worker=i.getOrCreateWorker();}async streamToCSV(e,t,r,o="tr-TR",n,a){let s=[];s.push(new Blob([new Uint8Array([239,187,191])]));try{for(let c=0;c<e.length;c+=5e3){if(a?.aborted)return;let d=e.slice(c,c+5e3),p=c===0,m=await this.processChunkInWorker(d,t,"csv",p,!1,o);s.push(new Blob([m],{type:"text/csv;charset=utf-8;"})),n?.(Math.min(95,Math.round((c+5e3)/e.length*95))),await new Promise(f=>setTimeout(f,0));}if(a?.aborted)return;let l=new Blob(s,{type:"text/csv;charset=utf-8;"});saveAs(l,`${r}.csv`),n?.(100);}catch(l){throw console.error("Export error",l),l}}async streamToExcelXML(e,t,r,o="tr-TR",n,a){let s=[];s.push(new Blob([new Uint8Array([239,187,191])]));try{for(let c=0;c<e.length;c+=5e3){if(a?.aborted)return;let d=e.slice(c,c+5e3),p=c===0,m=c+5e3>=e.length,f=await this.processChunkInWorker(d,t,"excel-xml",p,m,o);s.push(new Blob([f],{type:"application/vnd.ms-excel;charset=utf-8;"})),n?.(Math.min(95,Math.round((c+5e3)/e.length*95))),await new Promise(y=>setTimeout(y,0));}if(a?.aborted)return;let l=new Blob(s,{type:"application/vnd.ms-excel;charset=utf-8;"});saveAs(l,`${r}.xls`),n?.(100);}catch(l){throw console.error("Export error",l),l}}processChunkInWorker(e,t,r,o,n=false,a="tr-TR"){return new Promise((u,s)=>{let l=Math.random().toString(36).substring(7),c=setTimeout(()=>{this.worker.removeEventListener("message",d),i.workerErrorCount++,s(new Error("Export worker timed out"));},3e4),d=m=>{m.data.chunkId===l&&(clearTimeout(c),this.worker.removeEventListener("message",d),m.data.type==="error"?(i.workerErrorCount++,s(new Error(m.data.error))):u(m.data.payload));};this.worker.addEventListener("message",d);let p=t.map(m=>({id:m.id,caption:m.caption,dataField:m.dataField,format:m.format,dataType:m.dataType}));this.worker.postMessage({type:"process_chunk",chunkId:l,chunk:e,fields:p,format:r,isFirstChunk:o,isLastChunk:n,locale:a});})}};function po(i,e){if(!i||typeof i=="function")return;let t=i;if(t.style==="currency"){let r=t.currency||"TRY",o=t.minimumFractionDigits??2,n=o>0?"."+"0".repeat(o):"",u={TRY:"\u20BA",USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5"}[r]||r;return `#,##0${n} "${u}"`}if(t.style==="percent"){let r=t.minimumFractionDigits??0;return `0${r>0?"."+"0".repeat(r):""}%`}if(t.style==="decimal"||!t.style){let r=t.minimumFractionDigits,o=t.maximumFractionDigits,n=t.useGrouping!==false;if(r!==void 0||o!==void 0){let a=r??o??2,u=a>0?"."+"0".repeat(a):"";return n?`#,##0${u}`:`0${u}`}}if(e==="date")return "dd/mm/yyyy"}function mo(i,e,t="tr-TR"){if(i==null||i==="")return "";if(typeof i=="number"&&e?.format){if(typeof e.format=="function")try{return e.format(i)}catch{return String(i)}try{return new Intl.NumberFormat(t,e.format).format(i)}catch{return String(i)}}return String(i)}var ht=new Map;function Ue(i,e,t="tr-TR"){if(i==null||i==="")return "";if(typeof i=="number"&&e?.format){if(typeof e.format=="function")try{return e.format(i)}catch{return String(i)}try{let r=`${e.id}_${t}`,o=ht.get(r);return o||(o=new Intl.NumberFormat(t,e.format),ht.set(r,o)),o.format(i)}catch{return String(i)}}return String(i)}function fo(i,e){if(!i.formula)return null;try{if(!i.formula(e,{rowPath:[],colPath:[],values:{},displayValues:{},isTotalCell:!1}))return null;let r=i.style||{},o={};return (r.color||r.fontWeight||r.fontSize)&&(o.font={},r.color&&(o.font.color={argb:lr(r.color)}),r.fontWeight==="bold"&&(o.font.bold=!0)),r.backgroundColor&&(o.fill={type:"pattern",pattern:"solid",fgColor:{argb:lr(r.backgroundColor)}}),o}catch{return null}}function lr(i){if(!i)return "FF000000";if(/^[0-9A-Fa-f]{8}$/.test(i))return i;if(i.startsWith("#")){let t=i.slice(1);if(t.length===6)return "FF"+t.toUpperCase();if(t.length===3)return "FF"+t.split("").map(r=>r+r).join("").toUpperCase();if(t.length===8)return t.toUpperCase()}let e=i.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(e){let t=parseInt(e[1]).toString(16).padStart(2,"0"),r=parseInt(e[2]).toString(16).padStart(2,"0"),o=parseInt(e[3]).toString(16).padStart(2,"0");return `FF${t}${r}${o}`.toUpperCase()}return "FF000000"}function ho(){ht.clear();}async function Ct(i,e,t,r,o,n,a,u="PivotExport",s="tr-TR",l){if(!r)return;let c=l?.fileName||u,d=l?.locale||s,p=l?.expandAll??false,m=l?.signal,f=l?.onProgress;if(m?.aborted)return;let y=t.filter(b=>b.area==="row").sort((b,R)=>(b.areaIndex||0)-(R.areaIndex||0)),g=t.filter(b=>b.area==="column").sort((b,R)=>(b.areaIndex||0)-(R.areaIndex||0)),C=t.filter(b=>b.area==="data").sort((b,R)=>(b.areaIndex||0)-(R.areaIndex||0)),x=e,w=l?.includeHiddenFields?t.filter(b=>b.area!=="chooser"):t.filter(b=>b.area==="row"||b.area==="column"||b.area==="data"),h=p?new Set(["*"]):n,F=p?new Set(["*"]):a,v=p,B=o.hideEmptySummaryCells?(()=>{let[b,R]=st(r);return {...r,rowTree:b,colTree:R}})():r;switch(i){case "excel-list":case "excel-pivot":case "pdf":{let b=ut();if(!b){console.warn(`[pivotgrid] "${i}" export is an Enterprise feature \u2014 render EnterprisePivotGrid (or import @kanunilabs/pivotgrid-react-enterprise) to enable styled Excel/PDF export.`);return}await b({format:i,listRecords:x,visibleListFields:w,engineResult:B,rowFields:y,colFields:g,dataFields:C,layout:o,expandedPaths:h,expandedColPaths:F,allExpanded:v,fileName:c,locale:d,signal:m,onProgress:f});break}case "json":cr(x,c+"_List"),f?.(100);break;case "json-pivot":cr(Po(B,C),c+"_Pivot"),f?.(100);break;case "json-snapshot":Co(x,t,o,n,c+"_Snapshot"),f?.(100);break;case "xml":await Fo(x,c,f,m);break;case "csv":{await new xe().streamToCSV(x,w,c,d,f,m),m?.aborted||f?.(100);break}case "print":await Eo(B,y,g,C,o,h,F,v,c,d,m,f);break;case "clipboard":await bo(B,y,g,C,o,h,F,v,d),f?.(100);break}}function cr(i,e){let t=JSON.stringify(i,null,2);pr(t,"application/json",`${e}.json`);}function Co(i,e,t,r,o){let n={version:"1.0.0",type:"FULL_SNAPSHOT",timestamp:new Date().toISOString(),data:i,fields:e,layout:t,expandedPaths:Array.from(r)},a=JSON.stringify(n,null,2);pr(a,"application/json",`${o}.json`);}var yo=4*1024*1024,vo=1e4;async function Fo(i,e,t,r){let o=await wo(i,t,r);!o||r?.aborted||(saveAs(new Blob(o,{type:"application/xml"}),`${e}.xml`),t?.(100));}async function wo(i,e,t){let r=[`<?xml version="1.0" encoding="UTF-8"?>
|
|
5
|
+
`:""}static getBounds(o){return {minRow:Math.min(o.startRow,o.endRow),maxRow:Math.max(o.startRow,o.endRow),minColumn:Math.min(o.startColumn,o.endColumn),maxColumn:Math.max(o.startColumn,o.endColumn)}}},He=class{static intlCache=new Map;static stringCache=new Map;static format(o,e,t,r){if(o==null||o==="(Blank)")return String(o??"");if(e==="export")return String(o);let u=`${t}_${e}_${o}_${r}`,i=this.stringCache.get(u);if(i)return i;let n=String(o);try{if(r==="year")n=String(o);else if(r==="quarter")n=String(o);else if(r==="month"){let a=parseInt(String(o),10)-1;if(!isNaN(a)&&a>=0&&a<=11){let s=new Date(2e3,a,1),l=e==="chart"?"short":"long",c=`${t}_month_${l}`,d=this.intlCache.get(c);d||(d=new Intl.DateTimeFormat(t,{month:l}),this.intlCache.set(c,d)),n=d.format(s);}}else if(r==="dayOfWeek"){let a=parseInt(String(o),10);if(!isNaN(a)&&a>=0&&a<=6){let s=new Date(2e3,0,2+a),l=e==="chart"?"short":"long",c=`${t}_weekday_${l}`,d=this.intlCache.get(c);d||(d=new Intl.DateTimeFormat(t,{weekday:l}),this.intlCache.set(c,d)),n=d.format(s);}}else if((r==="day"||!r)&&!r&&typeof o=="string"&&o.includes("-")){let a=new Date(o);if(!isNaN(a.getTime())){let s=`${t}_full_${e==="chart"?"short":"long"}`,l=this.intlCache.get(s);if(!l){let c=e==="chart"?{month:"short",day:"numeric"}:{year:"numeric",month:"long",day:"numeric"};l=new Intl.DateTimeFormat(t,c),this.intlCache.set(s,l);}n=l.format(a);}}}catch{n=String(o);}return this.stringCache.set(u,n),n}static clearCache(){this.stringCache.clear(),this.intlCache.clear();}};var Zt={ok:"Tamam",cancel:"\u0130ptal",apply:"Uygula",close:"Kapat",search:"Ara...",selectAll:"T\xFCm\xFCn\xFC Se\xE7",clearAll:"T\xFCm\xFCn\xFC Temizle",show:"G\xF6ster",hide:"Gizle",filterArea:"Filtre Alan\u0131",columnArea:"S\xFCtunlar",rowArea:"Sat\u0131rlar",dataArea:"De\u011Ferler",footerArea:"Alt Bilgi \xC7ubu\u011Fu",allFields:"T\xFCm Alanlar",dropHere:"Buraya B\u0131rak",actions:"Aksiyonlar",saveNewView:"Yeni G\xF6r\xFCn\xFCm Kaydet",saveAsView:"Farkl\u0131 Kaydet (Kopyala)",saveChanges:"De\u011Fi\u015Fiklikleri Kaydet",savedViews:"Kay\u0131tl\u0131 G\xF6r\xFCn\xFCmler",viewOptions:"G\xF6r\xFCn\xFCm Se\xE7enekleri",export:"D\u0131\u015Fa Aktar",importFile:"\u0130\xE7e Aktar",excelExport:"Excel Export",pivotView:"Pivot G\xF6r\xFCn\xFCm",listView:"Liste G\xF6r\xFCn\xFCm\xFC",preservesGridLayout:"Tablo yap\u0131s\u0131n\u0131 korur",rawFlatData:"Ham veri",document:"D\xF6k\xFCman",pdfDocument:"PDF D\xF6k\xFCman",printReadyLayout:"Yazd\u0131rmaya haz\u0131r",fullSnapshot:"Tam Ekran G\xF6r\xFCnt\xFCs\xFC",saveSessionState:"Oturum durumunu kaydet",rawDataFormats:"Ham Veri Formatlar\u0131",importSuccess:"Ba\u015Far\u0131yla \u0130\xE7e Aktar\u0131ld\u0131",importWarning:"Uyar\u0131larla Tamamland\u0131",importError:"\u0130\xE7e Aktarma Ba\u015Far\u0131s\u0131z",importCancelled:"\u0130\xE7e aktarma iptal edildi.",pasteImport:"Panodan \u0130\xE7e Aktar",pasteImportHint:"Sekme veya virg\xFClle ayr\u0131lm\u0131\u015F",importFromFile:"Dosyadan",dropToImport:"Dosyalar\u0131 i\xE7e aktarmak i\xE7in buraya b\u0131rak\u0131n",clipboardEmpty:"Panoda i\xE7e aktar\u0131lacak metin bulunamad\u0131.",clipboardDenied:"Panoya eri\u015Filemedi. L\xFCtfen taray\u0131c\u0131 izinlerini kontrol edin.",importPreviewTitle:"\u0130\xE7e Aktarma \xD6nizlemesi",importPreviewSubtitle:"{rows} sat\u0131r \u2022 {cols} s\xFCtun i\xE7e aktar\u0131lacak",importPreviewFooter:"S\xFCtunlar\u0131 ve tipleri g\xF6zden ge\xE7irip onaylay\u0131n.",columns:"S\xFCtunlar",includeColumn:"Bu s\xFCtunu dahil et",dataPreview:"Veri \xD6nizlemesi",applyImport:"\u0130\xE7e Aktar",type_string:"Metin",type_number:"Say\u0131",type_date:"Tarih",type_boolean:"Mant\u0131ksal",loading:"Y\xFCkleniyor...",initializing:"Y\xFCkleniyor...",emptyData:"Veri Bulunamad\u0131",noItems:"Kay\u0131t bulunamad\u0131",blanks:"(Bo\u015Flar)",loadingData:"L\xFCtfen bekleyin, veriler haz\u0131rlan\u0131yor...",processing:"\u0130\u015Flem yap\u0131l\u0131yor...",reading:"Dosya okunuyor...",parsing:"Ayr\u0131\u015Ft\u0131r\u0131l\u0131yor...",typing:"Tipler belirleniyor...",finalizing:"Tamamlan\u0131yor...",fieldSettings:"Alan Ayarlar\u0131",caption:"Ba\u015Fl\u0131k",summaryType:"\xD6zet T\xFCr\xFC",displayMode:"G\xF6sterim \u015Eekli",groupInterval:"Grup Aral\u0131\u011F\u0131",sum:"Toplam",count:"Say",avg:"Ortalama",min:"Min",max:"Max",grandTotal:"Genel Toplam",subTotal:"Alt Toplam",absoluteValue:"Mutlak De\u011Fer",runningTotal:"Y\xFCr\xFCyen Toplam",difference:"Fark",percentOfTotal:"Genel Toplam Y\xFCzdesi",none:"Yok",year:"Y\u0131l",quarter:"\xC7eyrek",month:"Ay",day:"G\xFCn",and:"Ve",or:"Veya",noConditionsAdded:"Hen\xFCz ko\u015Ful eklenmedi...",calculatedMeasureDesigner:"Hesaplanan \xD6l\xE7\xFC Tasar\u0131mc\u0131s\u0131",createFormulasWithoutCode:"Kod yazmadan yeni form\xFCller ve hesaplamalar olu\u015Fturun.",measureName:"\xD6l\xE7\xFC Ad\u0131",format:"Format",numericStandard:"Say\u0131sal (Standart)",numericDecimal:"Say\u0131sal (Ondal\u0131kl\u0131 1.486,15)",currencyTRY:"Para Birimi (TL)",currencyUSD:"Para Birimi (USD)",percent:"Y\xFCzdelik (%)",measureNamePlaceholder:"\xF6rn. K\xE2r marj\u0131",customFormat:"\xD6zel\u2026",customPrefix:"\xD6n ek",customSuffix:"Son ek",minFraction:"Min ondal\u0131k",maxFraction:"Maks ondal\u0131k",calculationLevel:"Hesaplama d\xFCzeyi",calcRowLevel:"Sat\u0131r d\xFCzeyi (ham veri)",calcSummaryLevel:"\xD6zet d\xFCzeyi (toplula\u015Ft\u0131r\u0131lm\u0131\u015F)",fields:"Alanlar",noFieldsFound:"Bu d\xFCzey i\xE7in uygun alan yok.",deleteCalcField:"Hesaplanan alan\u0131 sil",formula:"Form\xFCl",formulaPlaceholder:"\xF6rn. [Gelir] - [Maliyet]",saveAndAdd:"Kaydet ve Ekle",measureNameEmpty:"\xD6l\xE7\xFC ad\u0131 gerekli.",formulaEmpty:"Form\xFCl gerekli.",formulaError:"Form\xFCl hatas\u0131",expand:"Geni\u015Flet",collapse:"Daralt",expandAll:"T\xFCm\xFCn\xFC Geni\u015Flet",refreshData:"Veriyi Yenile",filterBuilder:"Filtre Olu\u015Fturucu",chartToggle:"Grafik g\xF6r\xFCn\xFCm\xFCn\xFC a\xE7/kapat",collapseAll:"T\xFCm\xFCn\xFC Daralt",sortByThisColumn:"Bu S\xFCtuna G\xF6re S\u0131rala",sortFieldByThisColumn:'"{0}" Alan\u0131n\u0131 Bu S\xFCtuna G\xF6re S\u0131rala',removeAllSorting:"T\xFCm S\u0131ralamalar\u0131 Kald\u0131r",sortAsc:"A'dan Z'ye S\u0131rala",sortDesc:"Z'den A'ya S\u0131rala",clearSort:"S\u0131ralamay\u0131 Temizle",order:"S\u0131ra",moveToStart:"Ba\u015Fa ta\u015F\u0131",moveToEnd:"Sona ta\u015F\u0131",moveToLeft:"Sola ta\u015F\u0131",moveToRight:"Sa\u011Fa ta\u015F\u0131",showFieldList:"Alan listesini g\xF6ster",editCalculation:"Hesaplamay\u0131 D\xFCzenle",viewsAndReports:"Kay\u0131tl\u0131 G\xF6r\xFCn\xFCmler ve Raporlar",views:"G\xF6r\xFCn\xFCmler",saveChangesOverwrite:"De\u011Fi\u015Fiklikleri Kaydet (\xDCzerine Yaz)",saveAsCopy:"Farkl\u0131 Kaydet (Kopyala)",makeDefault:"Varsay\u0131lan Yap",deleteReport:"Raporu Sil",deleteReportConfirm:"'{0}' raporunu silmek istedi\u011Finize emin misiniz?",customExports:"\xD6zel D\u0131\u015Fa Aktar\u0131mlar",customPlugin:"\xD6zel Eklenti"},Xt={ok:"OK",cancel:"Cancel",apply:"Apply",close:"Close",search:"Search...",selectAll:"Select All",clearAll:"Clear All",show:"Show",hide:"Hide",filterArea:"Filter Area",columnArea:"Columns",rowArea:"Rows",dataArea:"Values",footerArea:"Footer Area",allFields:"All Fields",dropHere:"Drop Here",actions:"Actions",saveNewView:"Save New View",saveAsView:"Save As",saveChanges:"Save Changes",savedViews:"Saved Views",viewOptions:"View Options",export:"Export",importFile:"Import",excelExport:"Excel Export",pivotView:"Pivot View",listView:"List View",preservesGridLayout:"Preserves grid layout",rawFlatData:"Raw flat data",document:"Document",pdfDocument:"PDF Document",printReadyLayout:"Print-ready layout",fullSnapshot:"Full Snapshot",saveSessionState:"Save session state",rawDataFormats:"Raw Data Formats",importSuccess:"Successfully Imported",importWarning:"Completed with Warnings",importError:"Import Failed",importCancelled:"Import cancelled.",pasteImport:"Import from Clipboard",pasteImportHint:"Tab or comma separated",importFromFile:"From File",dropToImport:"Drop files here to import",clipboardEmpty:"No importable text found on the clipboard.",clipboardDenied:"Could not access the clipboard. Please check browser permissions.",importPreviewTitle:"Import Preview",importPreviewSubtitle:"{rows} rows \u2022 {cols} columns will be imported",importPreviewFooter:"Review columns and types, then confirm.",columns:"Columns",includeColumn:"Include this column",dataPreview:"Data Preview",applyImport:"Import",type_string:"Text",type_number:"Number",type_date:"Date",type_boolean:"Boolean",initializing:"Initializing...",loading:"Loading...",emptyData:"No Data Found",noItems:"No items found",blanks:"(Blanks)",loadingData:"Please wait, preparing data...",processing:"Processing...",reading:"Reading file...",parsing:"Parsing...",typing:"Detecting types...",finalizing:"Finalizing...",fieldSettings:"Field Settings",caption:"Caption",summaryType:"Summary Type",displayMode:"Display Mode",groupInterval:"Group Interval",sum:"Sum",count:"Count",avg:"Average",min:"Min",max:"Max",grandTotal:"Grand Total",subTotal:"Sub Total",absoluteValue:"Absolute Value",runningTotal:"Running Total",difference:"Difference",percentOfTotal:"% of Total",none:"None",year:"Year",quarter:"Quarter",month:"Month",day:"Day",and:"And",or:"Or",noConditionsAdded:"No conditions added...",calculatedMeasureDesigner:"Calculated Measure Designer",createFormulasWithoutCode:"Create formulas and calculations without writing code.",measureName:"Measure Name",format:"Format",numericStandard:"Numeric (Standard)",numericDecimal:"Numeric (Decimal 1,486.15)",currencyTRY:"Currency (TRY)",currencyUSD:"Currency (USD)",percent:"Percent (%)",measureNamePlaceholder:"e.g. Profit margin",customFormat:"Custom\u2026",customPrefix:"Prefix",customSuffix:"Suffix",minFraction:"Min dec.",maxFraction:"Max dec.",calculationLevel:"Calculation level",calcRowLevel:"Row level (raw data)",calcSummaryLevel:"Summary level (aggregated)",fields:"Fields",noFieldsFound:"No eligible fields for this level.",deleteCalcField:"Delete calculated field",formula:"Formula",formulaPlaceholder:"e.g. [Revenue] - [Cost]",saveAndAdd:"Save & add",measureNameEmpty:"Field name is required.",formulaEmpty:"Formula is required.",formulaError:"Formula error",expand:"Expand",collapse:"Collapse",expandAll:"Expand All",refreshData:"Refresh Data",filterBuilder:"Filter Builder",chartToggle:"Toggle Chart View",collapseAll:"Collapse All",sortByThisColumn:"Sort by This Column",sortFieldByThisColumn:'Sort "{0}" by This Column',removeAllSorting:"Remove All Sorting",sortAsc:"Sort A to Z",sortDesc:"Sort Z to A",clearSort:"Clear Sort",order:"Order",moveToStart:"Move to Start",moveToEnd:"Move to End",moveToLeft:"Move to Left",moveToRight:"Move to Right",showFieldList:"Show Field List",editCalculation:"Edit Calculation",viewsAndReports:"Saved Views and Reports",views:"Views",saveChangesOverwrite:"Save Changes (Overwrite)",saveAsCopy:"Save As (Copy)",makeDefault:"Make Default",deleteReport:"Delete Report",deleteReportConfirm:"Are you sure you want to delete the report '{0}'?",customExports:"Custom Exports",customPlugin:"Custom Plugin"},qt={ok:"OK",cancel:"Abbrechen",apply:"Anwenden",close:"Schlie\xDFen",search:"Suchen...",selectAll:"Alles ausw\xE4hlen",clearAll:"Alles l\xF6schen",show:"Anzeigen",hide:"Verbergen",filterArea:"Filterbereich",columnArea:"Spalten",rowArea:"Zeilen",dataArea:"Werte",footerArea:"Fu\xDFbereich",allFields:"Alle Felder",dropHere:"Hier ablegen",actions:"Aktionen",saveNewView:"Neue Ansicht speichern",saveAsView:"Speichern unter",saveChanges:"\xC4nderungen speichern",savedViews:"Gespeicherte Ansichten",viewOptions:"Ansichtsoptionen",export:"Exportieren",importFile:"Importieren",importFromFile:"Aus Datei",pasteImport:"Aus Zwischenablage importieren",pasteImportHint:"Tabulator- oder kommagetrennt",dropToImport:"Dateien zum Importieren hier ablegen",clipboardEmpty:"Kein importierbarer Text in der Zwischenablage gefunden.",clipboardDenied:"Zugriff auf die Zwischenablage nicht m\xF6glich. Bitte Browser-Berechtigungen pr\xFCfen.",excelExport:"Excel Export",pivotView:"Pivot-Ansicht",listView:"Listenansicht",preservesGridLayout:"Beh\xE4lt das Rasterlayout bei",rawFlatData:"Rohe flache Daten",document:"Dokument",pdfDocument:"PDF-Dokument",printReadyLayout:"Druckfertiges Layout",fullSnapshot:"Vollst\xE4ndiger Schnappschuss",saveSessionState:"Sitzungsstatus speichern",rawDataFormats:"Rohdatenformate",importSuccess:"Erfolgreich importiert",importWarning:"Mit Warnungen abgeschlossen",importError:"Import fehlgeschlagen",initializing:"Initialisierung...",loading:"Wird geladen...",emptyData:"Keine Daten gefunden",noItems:"Keine Elemente gefunden",blanks:"(Leer)",loadingData:"Bitte warten, Daten werden vorbereitet...",processing:"Verarbeitung...",fieldSettings:"Feldeinstellungen",caption:"Beschriftung",summaryType:"Zusammenfassungstyp",displayMode:"Anzeigemodus",groupInterval:"Gruppenintervall",sum:"Summe",count:"Anzahl",avg:"Durchschnitt",min:"Min",max:"Max",grandTotal:"Gesamtsumme",subTotal:"Zwischensumme",absoluteValue:"Absoluter Wert",runningTotal:"Laufende Summe",difference:"Differenz",percentOfTotal:"% des Gesamtwerts",none:"Keine",year:"Jahr",quarter:"Quartal",month:"Monat",day:"Tag",and:"Und",or:"Oder",noConditionsAdded:"Keine Bedingungen hinzugef\xFCgt...",calculatedMeasureDesigner:"Designer f\xFCr berechnete Kennzahlen",createFormulasWithoutCode:"Erstellen Sie Formeln und Berechnungen ohne Code.",measureName:"Kennzahlenname",format:"Format",numericStandard:"Numerisch (Standard)",numericDecimal:"Numerisch (Dezimal 1.486,15)",currencyTRY:"W\xE4hrung (TRY)",currencyUSD:"W\xE4hrung (USD)",percent:"Prozent (%)",expand:"Erweitern",collapse:"Reduzieren",expandAll:"Alle erweitern",refreshData:"Daten aktualisieren",filterBuilder:"Filter-Editor",chartToggle:"Diagrammansicht umschalten",collapseAll:"Alle reduzieren",sortByThisColumn:"Nach dieser Spalte sortieren",sortFieldByThisColumn:'"{0}" nach dieser Spalte sortieren',removeAllSorting:"Alle Sortierungen entfernen",sortAsc:"Sortieren A bis Z",sortDesc:"Sortieren Z bis A",clearSort:"Sortierung l\xF6schen",order:"Reihenfolge",moveToStart:"An den Anfang verschieben",moveToEnd:"Ans Ende verschieben",moveToLeft:"Nach links verschieben",moveToRight:"Nach rechts verschieben",showFieldList:"Feldliste anzeigen",editCalculation:"Berechnung bearbeiten",viewsAndReports:"Gespeicherte Ansichten und Berichte",views:"Ansichten",saveChangesOverwrite:"\xC4nderungen speichern (\xDCberschreiben)",saveAsCopy:"Speichern unter (Kopie)",makeDefault:"Als Standard festlegen",deleteReport:"Bericht l\xF6schen",deleteReportConfirm:"M\xF6chten Sie den Bericht '{0}' wirklich l\xF6schen?",customExports:"Benutzerdefinierte Exporte",customPlugin:"Benutzerdefiniertes Plugin",importCancelled:"Import abgebrochen.",importPreviewTitle:"Importvorschau",importPreviewSubtitle:"{rows} Zeilen \u2022 {cols} Spalten werden importiert",importPreviewFooter:"Spalten und Typen pr\xFCfen, dann best\xE4tigen.",columns:"Spalten",includeColumn:"Diese Spalte einbeziehen",dataPreview:"Datenvorschau",applyImport:"Importieren",type_string:"Text",type_number:"Zahl",type_date:"Datum",type_boolean:"Boolesch",reading:"Datei wird gelesen\u2026",parsing:"Wird analysiert\u2026",typing:"Typen werden erkannt\u2026",finalizing:"Wird abgeschlossen\u2026",measureNamePlaceholder:"z. B. Gewinnmarge",customFormat:"Benutzerdefiniert\u2026",customPrefix:"Pr\xE4fix",customSuffix:"Suffix",minFraction:"Min. Dez.",maxFraction:"Max. Dez.",calculationLevel:"Berechnungsebene",calcRowLevel:"Zeilenebene (Rohdaten)",calcSummaryLevel:"Zusammenfassungsebene (aggregiert)",fields:"Felder",noFieldsFound:"Keine geeigneten Felder f\xFCr diese Ebene.",deleteCalcField:"Berechnetes Feld l\xF6schen",formula:"Formel",formulaPlaceholder:"z. B. [Umsatz] - [Kosten]",saveAndAdd:"Speichern & hinzuf\xFCgen",measureNameEmpty:"Feldname ist erforderlich.",formulaEmpty:"Formel ist erforderlich.",formulaError:"Formelfehler"},Jt={ok:"OK",cancel:"Annuler",apply:"Appliquer",close:"Fermer",search:"Rechercher...",selectAll:"Tout s\xE9lectionner",clearAll:"Tout effacer",show:"Afficher",hide:"Masquer",filterArea:"Zone de filtre",columnArea:"Colonnes",rowArea:"Lignes",dataArea:"Valeurs",footerArea:"Pied de page",allFields:"Tous les champs",dropHere:"D\xE9poser ici",actions:"Actions",saveNewView:"Enregistrer la nouvelle vue",saveAsView:"Enregistrer sous",saveChanges:"Enregistrer les modifications",savedViews:"Vues enregistr\xE9es",viewOptions:"Options d'affichage",export:"Exporter",importFile:"Importer",importFromFile:"Depuis un fichier",pasteImport:"Importer depuis le presse-papiers",pasteImportHint:"S\xE9par\xE9 par tabulation ou virgule",dropToImport:"D\xE9posez les fichiers ici pour les importer",clipboardEmpty:"Aucun texte importable trouv\xE9 dans le presse-papiers.",clipboardDenied:"Impossible d\u2019acc\xE9der au presse-papiers. V\xE9rifiez les autorisations du navigateur.",excelExport:"Exportation Excel",pivotView:"Vue Pivot",listView:"Vue Liste",preservesGridLayout:"Pr\xE9serve la disposition de la grille",rawFlatData:"Donn\xE9es brutes plates",document:"Document",pdfDocument:"Document PDF",printReadyLayout:"Mise en page pr\xEAte pour l'impression",fullSnapshot:"Capture compl\xE8te",saveSessionState:"Enregistrer l'\xE9tat de la session",rawDataFormats:"Formats de donn\xE9es brutes",importSuccess:"Importation r\xE9ussie",importWarning:"Termin\xE9 avec des avertissements",importError:"\xC9chec de l'importation",initializing:"Initialisation...",loading:"Chargement...",emptyData:"Aucune donn\xE9e trouv\xE9e",noItems:"Aucun \xE9l\xE9ment trouv\xE9",blanks:"(Vides)",loadingData:"Veuillez patienter, pr\xE9paration des donn\xE9es...",processing:"Traitement...",fieldSettings:"Param\xE8tres du champ",caption:"L\xE9gende",summaryType:"Type de r\xE9sum\xE9",displayMode:"Mode d'affichage",groupInterval:"Intervalle de groupe",sum:"Somme",count:"Nombre",avg:"Moyenne",min:"Min",max:"Max",grandTotal:"Total g\xE9n\xE9ral",subTotal:"Sous-total",absoluteValue:"Valeur absolue",runningTotal:"Total cumul\xE9",difference:"Diff\xE9rence",percentOfTotal:"% du total",none:"Aucun",year:"Ann\xE9e",quarter:"Trimestre",month:"Mois",day:"Jour",and:"Et",or:"Ou",noConditionsAdded:"Aucune condition ajout\xE9e...",calculatedMeasureDesigner:"Concepteur de mesures calcul\xE9es",createFormulasWithoutCode:"Cr\xE9ez des formules et des calculs sans \xE9crire de code.",measureName:"Nom de la mesure",format:"Format",numericStandard:"Num\xE9rique (Standard)",numericDecimal:"Num\xE9rique (D\xE9cimal 1.486,15)",currencyTRY:"Devise (TRY)",currencyUSD:"Devise (USD)",percent:"Pourcentage (%)",expand:"D\xE9velopper",collapse:"R\xE9duire",expandAll:"D\xE9velopper tout",refreshData:"Actualiser les donn\xE9es",filterBuilder:"G\xE9n\xE9rateur de filtres",chartToggle:"Basculer la vue graphique",collapseAll:"R\xE9duire tout",sortByThisColumn:"Trier par cette colonne",sortFieldByThisColumn:'Trier "{0}" par cette colonne',removeAllSorting:"Supprimer tous les tris",sortAsc:"Trier de A \xE0 Z",sortDesc:"Trier de Z \xE0 A",clearSort:"Effacer le tri",order:"Ordre",moveToStart:"D\xE9placer au d\xE9but",moveToEnd:"D\xE9placer \xE0 la fin",moveToLeft:"D\xE9placer vers la gauche",moveToRight:"D\xE9placer vers la droite",showFieldList:"Afficher la liste des champs",editCalculation:"Modifier le calcul",viewsAndReports:"Vues et rapports enregistr\xE9s",views:"Vues",saveChangesOverwrite:"Enregistrer les modifications (\xC9craser)",saveAsCopy:"Enregistrer sous (Copie)",makeDefault:"D\xE9finir par d\xE9faut",deleteReport:"Supprimer le rapport",deleteReportConfirm:"\xCAtes-vous s\xFBr de vouloir supprimer le rapport '{0}' ?",customExports:"Exportations personnalis\xE9es",customPlugin:"Plugin personnalis\xE9",importCancelled:"Importation annul\xE9e.",importPreviewTitle:"Aper\xE7u de l'importation",importPreviewSubtitle:"{rows} lignes \u2022 {cols} colonnes seront import\xE9es",importPreviewFooter:"V\xE9rifiez les colonnes et les types, puis confirmez.",columns:"Colonnes",includeColumn:"Inclure cette colonne",dataPreview:"Aper\xE7u des donn\xE9es",applyImport:"Importer",type_string:"Texte",type_number:"Nombre",type_date:"Date",type_boolean:"Bool\xE9en",reading:"Lecture du fichier\u2026",parsing:"Analyse\u2026",typing:"D\xE9tection des types\u2026",finalizing:"Finalisation\u2026",measureNamePlaceholder:"ex. Marge b\xE9n\xE9ficiaire",customFormat:"Personnalis\xE9\u2026",customPrefix:"Pr\xE9fixe",customSuffix:"Suffixe",minFraction:"D\xE9c. min",maxFraction:"D\xE9c. max",calculationLevel:"Niveau de calcul",calcRowLevel:"Niveau ligne (donn\xE9es brutes)",calcSummaryLevel:"Niveau r\xE9sum\xE9 (agr\xE9g\xE9)",fields:"Champs",noFieldsFound:"Aucun champ \xE9ligible pour ce niveau.",deleteCalcField:"Supprimer le champ calcul\xE9",formula:"Formule",formulaPlaceholder:"ex. [Revenu] - [Co\xFBt]",saveAndAdd:"Enregistrer et ajouter",measureNameEmpty:"Le nom du champ est obligatoire.",formulaEmpty:"La formule est obligatoire.",formulaError:"Erreur de formule"},Qt={ok:"Aceptar",cancel:"Cancelar",apply:"Aplicar",close:"Cerrar",search:"Buscar...",selectAll:"Seleccionar todo",clearAll:"Borrar todo",show:"Mostrar",hide:"Ocultar",filterArea:"\xC1rea de filtros",columnArea:"Columnas",rowArea:"Filas",dataArea:"Valores",footerArea:"\xC1rea de pie de p\xE1gina",allFields:"Todos los campos",dropHere:"Soltar aqu\xED",actions:"Acciones",saveNewView:"Guardar nueva vista",saveAsView:"Guardar como",saveChanges:"Guardar cambios",savedViews:"Vistas guardadas",viewOptions:"Opciones de vista",export:"Exportar",importFile:"Importar",importFromFile:"Desde archivo",pasteImport:"Importar desde el portapapeles",pasteImportHint:"Separado por tabulaciones o comas",dropToImport:"Suelte los archivos aqu\xED para importar",clipboardEmpty:"No se encontr\xF3 texto importable en el portapapeles.",clipboardDenied:"No se pudo acceder al portapapeles. Compruebe los permisos del navegador.",excelExport:"Exportaci\xF3n a Excel",pivotView:"Vista din\xE1mica",listView:"Vista de lista",preservesGridLayout:"Conserva el dise\xF1o de la cuadr\xEDcula",rawFlatData:"Datos planos sin procesar",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Dise\xF1o listo para imprimir",fullSnapshot:"Instant\xE1nea completa",saveSessionState:"Guardar estado de la sesi\xF3n",rawDataFormats:"Formatos de datos sin procesar",importSuccess:"Importado correctamente",importWarning:"Completado con advertencias",importError:"Error al importar",initializing:"Inicializando...",loading:"Cargando...",emptyData:"No se encontraron datos",noItems:"No se encontraron elementos",blanks:"(En blanco)",loadingData:"Por favor espere, preparando datos...",processing:"Procesando...",fieldSettings:"Configuraci\xF3n del campo",caption:"Subt\xEDtulo",summaryType:"Tipo de resumen",displayMode:"Modo de visualizaci\xF3n",groupInterval:"Intervalo de grupo",sum:"Suma",count:"Recuento",avg:"Promedio",min:"M\xEDnimo",max:"M\xE1ximo",grandTotal:"Total general",subTotal:"Subtotal",absoluteValue:"Valor absoluto",runningTotal:"Total acumulado",difference:"Diferencia",percentOfTotal:"% del total",none:"Ninguno",year:"A\xF1o",quarter:"Trimestre",month:"Mes",day:"D\xEDa",and:"Y",or:"O",noConditionsAdded:"No se a\xF1adieron condiciones...",calculatedMeasureDesigner:"Dise\xF1ador de medidas calculadas",createFormulasWithoutCode:"Cree f\xF3rmulas y c\xE1lculos sin escribir c\xF3digo.",measureName:"Nombre de la medida",format:"Formato",numericStandard:"Num\xE9rico (Est\xE1ndar)",numericDecimal:"Num\xE9rico (Decimal 1.486,15)",currencyTRY:"Moneda (TRY)",currencyUSD:"Moneda (USD)",percent:"Porcentaje (%)",expand:"Expandir",collapse:"Contraer",expandAll:"Expandir todo",refreshData:"Actualizar datos",filterBuilder:"Creador de filtros",chartToggle:"Alternar vista de gr\xE1fico",collapseAll:"Contraer todo",sortByThisColumn:"Ordenar por esta columna",sortFieldByThisColumn:'Ordenar "{0}" por esta columna',removeAllSorting:"Quitar toda la ordenaci\xF3n",sortAsc:"Ordenar de la A a la Z",sortDesc:"Ordenar de la Z a la A",clearSort:"Borrar ordenaci\xF3n",order:"Orden",moveToStart:"Mover al principio",moveToEnd:"Mover al final",moveToLeft:"Mover a la izquierda",moveToRight:"Mover a la derecha",showFieldList:"Mostrar lista de campos",editCalculation:"Editar c\xE1lculo",viewsAndReports:"Vistas y reportes guardados",views:"Vistas",saveChangesOverwrite:"Guardar cambios (Sobrescribir)",saveAsCopy:"Guardar como (Copia)",makeDefault:"Hacer predeterminado",deleteReport:"Eliminar reporte",deleteReportConfirm:"\xBFEst\xE1 seguro de que desea eliminar el reporte '{0}'?",customExports:"Exportaciones personalizadas",customPlugin:"Plugin personalizado",importCancelled:"Importaci\xF3n cancelada.",importPreviewTitle:"Vista previa de importaci\xF3n",importPreviewSubtitle:"Se importar\xE1n {rows} filas \u2022 {cols} columnas",importPreviewFooter:"Revise las columnas y los tipos, luego confirme.",columns:"Columnas",includeColumn:"Incluir esta columna",dataPreview:"Vista previa de datos",applyImport:"Importar",type_string:"Texto",type_number:"N\xFAmero",type_date:"Fecha",type_boolean:"Booleano",reading:"Leyendo el archivo\u2026",parsing:"Analizando\u2026",typing:"Detectando tipos\u2026",finalizing:"Finalizando\u2026",measureNamePlaceholder:"p. ej. Margen de beneficio",customFormat:"Personalizado\u2026",customPrefix:"Prefijo",customSuffix:"Sufijo",minFraction:"Dec. m\xEDn.",maxFraction:"Dec. m\xE1x.",calculationLevel:"Nivel de c\xE1lculo",calcRowLevel:"Nivel de fila (datos sin procesar)",calcSummaryLevel:"Nivel de resumen (agregado)",fields:"Campos",noFieldsFound:"No hay campos elegibles para este nivel.",deleteCalcField:"Eliminar campo calculado",formula:"F\xF3rmula",formulaPlaceholder:"p. ej. [Ingresos] - [Costo]",saveAndAdd:"Guardar y agregar",measureNameEmpty:"El nombre del campo es obligatorio.",formulaEmpty:"La f\xF3rmula es obligatoria.",formulaError:"Error de f\xF3rmula"},er={ok:"OK",cancel:"Annulla",apply:"Applica",close:"Chiudi",search:"Cerca...",selectAll:"Seleziona tutto",clearAll:"Cancella tutto",show:"Mostra",hide:"Nascondi",filterArea:"Area filtro",columnArea:"Colonne",rowArea:"Righe",dataArea:"Valori",footerArea:"Area pi\xE8 di pagina",allFields:"Tutti i campi",dropHere:"Rilascia qui",actions:"Azioni",saveNewView:"Salva nuova vista",saveAsView:"Salva con nome",saveChanges:"Salva le modifiche",savedViews:"Viste salvate",viewOptions:"Opzioni vista",export:"Esporta",importFile:"Importa",importFromFile:"Da file",pasteImport:"Importa dagli appunti",pasteImportHint:"Separato da tabulazioni o virgole",dropToImport:"Trascina qui i file per importarli",clipboardEmpty:"Nessun testo importabile trovato negli appunti.",clipboardDenied:"Impossibile accedere agli appunti. Controlla le autorizzazioni del browser.",excelExport:"Esportazione Excel",pivotView:"Vista Pivot",listView:"Vista elenco",preservesGridLayout:"Mantiene il layout della griglia",rawFlatData:"Dati grezzi",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Layout pronto per la stampa",fullSnapshot:"Istantanea completa",saveSessionState:"Salva lo stato della sessione",rawDataFormats:"Formati di dati grezzi",importSuccess:"Importato con successo",importWarning:"Completato con avvisi",importError:"Importazione non riuscita",initializing:"Inizializzazione...",loading:"Caricamento...",emptyData:"Nessun dato trovato",noItems:"Nessun elemento trovato",blanks:"(Vuoti)",loadingData:"Attendi, preparazione dei dati in corso...",processing:"Elaborazione...",fieldSettings:"Impostazioni campo",caption:"Didascalia",summaryType:"Tipo di riepilogo",displayMode:"Modalit\xE0 di visualizzazione",groupInterval:"Intervallo di gruppo",sum:"Somma",count:"Conteggio",avg:"Media",min:"Min",max:"Max",grandTotal:"Totale complessivo",subTotal:"Totale parziale",absoluteValue:"Valore assoluto",runningTotal:"Totale parziale",difference:"Differenza",percentOfTotal:"% del totale",none:"Nessuno",year:"Anno",quarter:"Trimestre",month:"Mese",day:"Giorno",and:"E",or:"O",noConditionsAdded:"Nessuna condizione aggiunta...",calculatedMeasureDesigner:"Progettazione misure calcolate",createFormulasWithoutCode:"Crea formule e calcoli senza scrivere codice.",measureName:"Nome misura",format:"Formato",numericStandard:"Numerico (Standard)",numericDecimal:"Numerico (Decimale 1.486,15)",currencyTRY:"Valuta (TRY)",currencyUSD:"Valuta (USD)",percent:"Percentuale (%)",expand:"Espandi",collapse:"Comprimi",expandAll:"Espandi tutto",refreshData:"Aggiorna dati",filterBuilder:"Generatore di filtri",chartToggle:"Attiva/disattiva vista grafico",collapseAll:"Comprimi tutto",sortByThisColumn:"Ordina per questa colonna",sortFieldByThisColumn:'Ordina "{0}" per questa colonna',removeAllSorting:"Rimuovi tutti gli ordinamenti",sortAsc:"Ordina dalla A alla Z",sortDesc:"Ordina dalla Z alla A",clearSort:"Cancella ordinamento",order:"Ordine",moveToStart:"Sposta all'inizio",moveToEnd:"Sposta alla fine",moveToLeft:"Sposta a sinistra",moveToRight:"Sposta a destra",showFieldList:"Mostra elenco campi",editCalculation:"Modifica calcolo",viewsAndReports:"Viste e rapporti salvati",views:"Viste",saveChangesOverwrite:"Salva modifiche (Sovrascrivi)",saveAsCopy:"Salva con nome (Copia)",makeDefault:"Rendi predefinito",deleteReport:"Elimina rapporto",deleteReportConfirm:"Sei sicuro di voler eliminare il rapporto '{0}'?",customExports:"Esportazioni personalizzate",customPlugin:"Plugin personalizzato",importCancelled:"Importazione annullata.",importPreviewTitle:"Anteprima importazione",importPreviewSubtitle:"Verranno importate {rows} righe \u2022 {cols} colonne",importPreviewFooter:"Controlla colonne e tipi, poi conferma.",columns:"Colonne",includeColumn:"Includi questa colonna",dataPreview:"Anteprima dati",applyImport:"Importa",type_string:"Testo",type_number:"Numero",type_date:"Data",type_boolean:"Booleano",reading:"Lettura del file\u2026",parsing:"Analisi\u2026",typing:"Rilevamento tipi\u2026",finalizing:"Completamento\u2026",measureNamePlaceholder:"es. Margine di profitto",customFormat:"Personalizzato\u2026",customPrefix:"Prefisso",customSuffix:"Suffisso",minFraction:"Dec. min",maxFraction:"Dec. max",calculationLevel:"Livello di calcolo",calcRowLevel:"Livello riga (dati grezzi)",calcSummaryLevel:"Livello riepilogo (aggregato)",fields:"Campi",noFieldsFound:"Nessun campo idoneo per questo livello.",deleteCalcField:"Elimina campo calcolato",formula:"Formula",formulaPlaceholder:"es. [Ricavi] - [Costi]",saveAndAdd:"Salva e aggiungi",measureNameEmpty:"Il nome del campo \xE8 obbligatorio.",formulaEmpty:"La formula \xE8 obbligatoria.",formulaError:"Errore di formula"},tr={ok:"OK",cancel:"Cancelar",apply:"Aplicar",close:"Fechar",search:"Pesquisar...",selectAll:"Selecionar tudo",clearAll:"Limpar tudo",show:"Mostrar",hide:"Ocultar",filterArea:"\xC1rea de filtro",columnArea:"Colunas",rowArea:"Linhas",dataArea:"Valores",footerArea:"\xC1rea do rodap\xE9",allFields:"Todos os campos",dropHere:"Soltar aqui",actions:"A\xE7\xF5es",saveNewView:"Salvar nova exibi\xE7\xE3o",saveAsView:"Salvar como",saveChanges:"Salvar altera\xE7\xF5es",savedViews:"Exibi\xE7\xF5es salvas",viewOptions:"Op\xE7\xF5es de exibi\xE7\xE3o",export:"Exportar",importFile:"Importar",importFromFile:"De arquivo",pasteImport:"Importar da \xE1rea de transfer\xEAncia",pasteImportHint:"Separado por tabula\xE7\xE3o ou v\xEDrgula",dropToImport:"Solte os arquivos aqui para importar",clipboardEmpty:"Nenhum texto import\xE1vel encontrado na \xE1rea de transfer\xEAncia.",clipboardDenied:"N\xE3o foi poss\xEDvel acessar a \xE1rea de transfer\xEAncia. Verifique as permiss\xF5es do navegador.",excelExport:"Exporta\xE7\xE3o para Excel",pivotView:"Exibi\xE7\xE3o din\xE2mica",listView:"Exibi\xE7\xE3o de lista",preservesGridLayout:"Preserva o layout da grade",rawFlatData:"Dados brutos planos",document:"Documento",pdfDocument:"Documento PDF",printReadyLayout:"Layout pronto para impress\xE3o",fullSnapshot:"Instant\xE2neo completo",saveSessionState:"Salvar o estado da sess\xE3o",rawDataFormats:"Formatos de dados brutos",importSuccess:"Importado com sucesso",importWarning:"Conclu\xEDdo com avisos",importError:"Falha na importa\xE7\xE3o",initializing:"Inicializando...",loading:"Carregando...",emptyData:"Nenhum dado encontrado",noItems:"Nenhum item encontrado",blanks:"(Em branco)",loadingData:"Por favor, aguarde, preparando dados...",processing:"Processando...",fieldSettings:"Configura\xE7\xF5es do campo",caption:"Legenda",summaryType:"Tipo de resumo",displayMode:"Modo de exibi\xE7\xE3o",groupInterval:"Intervalo de grupo",sum:"Soma",count:"Contagem",avg:"M\xE9dia",min:"M\xEDn",max:"M\xE1x",grandTotal:"Total geral",subTotal:"Subtotal",absoluteValue:"Valor absoluto",runningTotal:"Total acumulado",difference:"Diferen\xE7a",percentOfTotal:"% do total",none:"Nenhum",year:"Ano",quarter:"Trimestre",month:"M\xEAs",day:"Dia",and:"E",or:"Ou",noConditionsAdded:"Nenhuma condi\xE7\xE3o adicionada...",calculatedMeasureDesigner:"Designer de medidas calculadas",createFormulasWithoutCode:"Crie f\xF3rmulas e c\xE1lculos sem escrever c\xF3digo.",measureName:"Nome da medida",format:"Formato",numericStandard:"Num\xE9rico (Padr\xE3o)",numericDecimal:"Num\xE9rico (Decimal 1.486,15)",currencyTRY:"Moeda (TRY)",currencyUSD:"Moeda (USD)",percent:"Porcentagem (%)",expand:"Expandir",collapse:"Recolher",expandAll:"Expandir tudo",refreshData:"Atualizar dados",filterBuilder:"Construtor de filtros",chartToggle:"Alternar visualiza\xE7\xE3o de gr\xE1fico",collapseAll:"Recolher tudo",sortByThisColumn:"Classificar por esta coluna",sortFieldByThisColumn:'Classificar "{0}" por esta coluna',removeAllSorting:"Remover todas as classifica\xE7\xF5es",sortAsc:"Classificar de A a Z",sortDesc:"Classificar de Z a A",clearSort:"Limpar classifica\xE7\xE3o",order:"Ordem",moveToStart:"Mover para o in\xEDcio",moveToEnd:"Mover para o fim",moveToLeft:"Mover para a esquerda",moveToRight:"Mover para a direita",showFieldList:"Mostrar lista de campos",editCalculation:"Editar c\xE1lculo",viewsAndReports:"Exibi\xE7\xF5es e relat\xF3rios salvos",views:"Exibi\xE7\xF5es",saveChangesOverwrite:"Salvar altera\xE7\xF5es (Substituir)",saveAsCopy:"Salvar como (C\xF3pia)",makeDefault:"Tornar padr\xE3o",deleteReport:"Excluir relat\xF3rio",deleteReportConfirm:"Tem certeza de que deseja excluir o relat\xF3rio '{0}'?",customExports:"Exporta\xE7\xF5es personalizadas",customPlugin:"Plugin personalizado",importCancelled:"Importa\xE7\xE3o cancelada.",importPreviewTitle:"Pr\xE9-visualiza\xE7\xE3o da importa\xE7\xE3o",importPreviewSubtitle:"{rows} linhas \u2022 {cols} colunas ser\xE3o importadas",importPreviewFooter:"Revise as colunas e os tipos e confirme.",columns:"Colunas",includeColumn:"Incluir esta coluna",dataPreview:"Pr\xE9-visualiza\xE7\xE3o dos dados",applyImport:"Importar",type_string:"Texto",type_number:"N\xFAmero",type_date:"Data",type_boolean:"Booleano",reading:"Lendo o arquivo\u2026",parsing:"Analisando\u2026",typing:"Detectando tipos\u2026",finalizing:"Finalizando\u2026",measureNamePlaceholder:"ex.: Margem de lucro",customFormat:"Personalizado\u2026",customPrefix:"Prefixo",customSuffix:"Sufixo",minFraction:"Dec. m\xEDn.",maxFraction:"Dec. m\xE1x.",calculationLevel:"N\xEDvel de c\xE1lculo",calcRowLevel:"N\xEDvel de linha (dados brutos)",calcSummaryLevel:"N\xEDvel de resumo (agregado)",fields:"Campos",noFieldsFound:"Nenhum campo eleg\xEDvel para este n\xEDvel.",deleteCalcField:"Excluir campo calculado",formula:"F\xF3rmula",formulaPlaceholder:"ex.: [Receita] - [Custo]",saveAndAdd:"Salvar e adicionar",measureNameEmpty:"O nome do campo \xE9 obrigat\xF3rio.",formulaEmpty:"A f\xF3rmula \xE9 obrigat\xF3ria.",formulaError:"Erro de f\xF3rmula"},rr={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",search:"\u041F\u043E\u0438\u0441\u043A...",selectAll:"\u0412\u044B\u0431\u0440\u0430\u0442\u044C \u0432\u0441\u0435",clearAll:"\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0432\u0441\u0435",show:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C",hide:"\u0421\u043A\u0440\u044B\u0442\u044C",filterArea:"\u041E\u0431\u043B\u0430\u0441\u0442\u044C \u0444\u0438\u043B\u044C\u0442\u0440\u0430",columnArea:"\u041A\u043E\u043B\u043E\u043D\u043A\u0438",rowArea:"\u0421\u0442\u0440\u043E\u043A\u0438",dataArea:"\u0417\u043D\u0430\u0447\u0435\u043D\u0438\u044F",footerArea:"\u041D\u0438\u0436\u043D\u0438\u0439 \u043A\u043E\u043B\u043E\u043D\u0442\u0438\u0442\u0443\u043B",allFields:"\u0412\u0441\u0435 \u043F\u043E\u043B\u044F",dropHere:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0441\u044E\u0434\u0430",actions:"\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044F",saveNewView:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043D\u043E\u0432\u044B\u0439 \u0432\u0438\u0434",saveAsView:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A",saveChanges:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F",savedViews:"\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043D\u044B\u0435 \u0432\u0438\u0434\u044B",viewOptions:"\u041F\u0430\u0440\u0430\u043C\u0435\u0442\u0440\u044B \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440\u0430",export:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442",importFile:"\u0418\u043C\u043F\u043E\u0440\u0442",importFromFile:"\u0418\u0437 \u0444\u0430\u0439\u043B\u0430",pasteImport:"\u0418\u043C\u043F\u043E\u0440\u0442 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043E\u0431\u043C\u0435\u043D\u0430",pasteImportHint:"\u0421 \u0440\u0430\u0437\u0434\u0435\u043B\u0435\u043D\u0438\u0435\u043C \u0442\u0430\u0431\u0443\u043B\u044F\u0446\u0438\u0435\u0439 \u0438\u043B\u0438 \u0437\u0430\u043F\u044F\u0442\u043E\u0439",dropToImport:"\u041F\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0444\u0430\u0439\u043B\u044B \u0441\u044E\u0434\u0430 \u0434\u043B\u044F \u0438\u043C\u043F\u043E\u0440\u0442\u0430",clipboardEmpty:"\u0412 \u0431\u0443\u0444\u0435\u0440\u0435 \u043E\u0431\u043C\u0435\u043D\u0430 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D \u0442\u0435\u043A\u0441\u0442 \u0434\u043B\u044F \u0438\u043C\u043F\u043E\u0440\u0442\u0430.",clipboardDenied:"\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u043F\u043E\u043B\u0443\u0447\u0438\u0442\u044C \u0434\u043E\u0441\u0442\u0443\u043F \u043A \u0431\u0443\u0444\u0435\u0440\u0443 \u043E\u0431\u043C\u0435\u043D\u0430. \u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043D\u0438\u044F \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430.",excelExport:"\u042D\u043A\u0441\u043F\u043E\u0440\u0442 \u0432 Excel",pivotView:"\u0421\u0432\u043E\u0434\u043D\u044B\u0439 \u0432\u0438\u0434",listView:"\u0412\u0438\u0434 \u0441\u043F\u0438\u0441\u043A\u0430",preservesGridLayout:"\u0421\u043E\u0445\u0440\u0430\u043D\u044F\u0435\u0442 \u043C\u0430\u043A\u0435\u0442 \u0441\u0435\u0442\u043A\u0438",rawFlatData:"\u0421\u044B\u0440\u044B\u0435 \u043F\u043B\u043E\u0441\u043A\u0438\u0435 \u0434\u0430\u043D\u043D\u044B\u0435",document:"\u0414\u043E\u043A\u0443\u043C\u0435\u043D\u0442",pdfDocument:"PDF-\u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442",printReadyLayout:"\u041C\u0430\u043A\u0435\u0442 \u0434\u043B\u044F \u043F\u0435\u0447\u0430\u0442\u0438",fullSnapshot:"\u041F\u043E\u043B\u043D\u044B\u0439 \u0441\u043D\u0438\u043C\u043E\u043A",saveSessionState:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0441\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u0435 \u0441\u0435\u0430\u043D\u0441\u0430",rawDataFormats:"\u0424\u043E\u0440\u043C\u0430\u0442\u044B \u0441\u044B\u0440\u044B\u0445 \u0434\u0430\u043D\u043D\u044B\u0445",importSuccess:"\u0423\u0441\u043F\u0435\u0448\u043D\u043E \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E",importWarning:"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E \u0441 \u043F\u0440\u0435\u0434\u0443\u043F\u0440\u0435\u0436\u0434\u0435\u043D\u0438\u044F\u043C\u0438",importError:"\u041E\u0448\u0438\u0431\u043A\u0430 \u0438\u043C\u043F\u043E\u0440\u0442\u0430",initializing:"\u0418\u043D\u0438\u0446\u0438\u0430\u043B\u0438\u0437\u0430\u0446\u0438\u044F...",loading:"\u0417\u0430\u0433\u0440\u0443\u0437\u043A\u0430...",emptyData:"\u0414\u0430\u043D\u043D\u044B\u0435 \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",noItems:"\u042D\u043B\u0435\u043C\u0435\u043D\u0442\u044B \u043D\u0435 \u043D\u0430\u0439\u0434\u0435\u043D\u044B",blanks:"(\u041F\u0443\u0441\u0442\u043E)",loadingData:"\u041F\u043E\u0436\u0430\u043B\u0443\u0439\u0441\u0442\u0430, \u043F\u043E\u0434\u043E\u0436\u0434\u0438\u0442\u0435, \u0434\u0430\u043D\u043D\u044B\u0435 \u043F\u043E\u0434\u0433\u043E\u0442\u0430\u0432\u043B\u0438\u0432\u0430\u044E\u0442\u0441\u044F...",processing:"\u041E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430...",fieldSettings:"\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043F\u043E\u043B\u044F",caption:"\u0417\u0430\u0433\u043E\u043B\u043E\u0432\u043E\u043A",summaryType:"\u0422\u0438\u043F \u0438\u0442\u043E\u0433\u0430",displayMode:"\u0420\u0435\u0436\u0438\u043C \u043E\u0442\u043E\u0431\u0440\u0430\u0436\u0435\u043D\u0438\u044F",groupInterval:"\u0418\u043D\u0442\u0435\u0440\u0432\u0430\u043B \u0433\u0440\u0443\u043F\u043F\u0438\u0440\u043E\u0432\u043A\u0438",sum:"\u0421\u0443\u043C\u043C\u0430",count:"\u041A\u043E\u043B\u0438\u0447\u0435\u0441\u0442\u0432\u043E",avg:"\u0421\u0440\u0435\u0434\u043D\u0435\u0435",min:"\u041C\u0438\u043D",max:"\u041C\u0430\u043A\u0441",grandTotal:"\u041E\u0431\u0449\u0438\u0439 \u0438\u0442\u043E\u0433",subTotal:"\u041F\u0440\u043E\u043C\u0435\u0436\u0443\u0442\u043E\u0447\u043D\u044B\u0439 \u0438\u0442\u043E\u0433",absoluteValue:"\u0410\u0431\u0441\u043E\u043B\u044E\u0442\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435",runningTotal:"\u0422\u0435\u043A\u0443\u0449\u0430\u044F \u0441\u0443\u043C\u043C\u0430",difference:"\u0420\u0430\u0437\u043D\u0438\u0446\u0430",percentOfTotal:"% \u043E\u0442 \u043E\u0431\u0449\u0435\u0433\u043E \u0438\u0442\u043E\u0433\u0430",none:"\u041D\u0435\u0442",year:"\u0413\u043E\u0434",quarter:"\u041A\u0432\u0430\u0440\u0442\u0430\u043B",month:"\u041C\u0435\u0441\u044F\u0446",day:"\u0414\u0435\u043D\u044C",and:"\u0418",or:"\u0418\u043B\u0438",noConditionsAdded:"\u0423\u0441\u043B\u043E\u0432\u0438\u044F \u043D\u0435 \u0434\u043E\u0431\u0430\u0432\u043B\u0435\u043D\u044B...",calculatedMeasureDesigner:"\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u0432\u044B\u0447\u0438\u0441\u043B\u044F\u0435\u043C\u044B\u0445 \u043C\u0435\u0440",createFormulasWithoutCode:"\u0421\u043E\u0437\u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u0444\u043E\u0440\u043C\u0443\u043B\u044B \u0438 \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F \u0431\u0435\u0437 \u043D\u0430\u043F\u0438\u0441\u0430\u043D\u0438\u044F \u043A\u043E\u0434\u0430.",measureName:"\u0418\u043C\u044F \u043C\u0435\u0440\u044B",format:"\u0424\u043E\u0440\u043C\u0430\u0442",numericStandard:"\u0427\u0438\u0441\u043B\u043E\u0432\u043E\u0439 (\u0441\u0442\u0430\u043D\u0434\u0430\u0440\u0442\u043D\u044B\u0439)",numericDecimal:"\u0427\u0438\u0441\u043B\u043E\u0432\u043E\u0439 (\u0434\u0435\u0441\u044F\u0442\u0438\u0447\u043D\u044B\u0439 1.486,15)",currencyTRY:"\u0412\u0430\u043B\u044E\u0442\u0430 (TRY)",currencyUSD:"\u0412\u0430\u043B\u044E\u0442\u0430 (USD)",percent:"\u041F\u0440\u043E\u0446\u0435\u043D\u0442 (%)",expand:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C",collapse:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C",expandAll:"\u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435",refreshData:"\u041E\u0431\u043D\u043E\u0432\u0438\u0442\u044C \u0434\u0430\u043D\u043D\u044B\u0435",filterBuilder:"\u041A\u043E\u043D\u0441\u0442\u0440\u0443\u043A\u0442\u043E\u0440 \u0444\u0438\u043B\u044C\u0442\u0440\u043E\u0432",chartToggle:"\u041F\u0435\u0440\u0435\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0432\u0438\u0434 \u0434\u0438\u0430\u0433\u0440\u0430\u043C\u043C\u044B",collapseAll:"\u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435",sortByThisColumn:"\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443",sortFieldByThisColumn:'\u0421\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C "{0}" \u043F\u043E \u044D\u0442\u043E\u043C\u0443 \u0441\u0442\u043E\u043B\u0431\u0446\u0443',removeAllSorting:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u0441\u0435 \u0441\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u043A\u0438",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",order:"\u041F\u043E\u0440\u044F\u0434\u043E\u043A",moveToStart:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432 \u043D\u0430\u0447\u0430\u043B\u043E",moveToEnd:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432 \u043A\u043E\u043D\u0435\u0446",moveToLeft:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043B\u0435\u0432\u043E",moveToRight:"\u041F\u0435\u0440\u0435\u043C\u0435\u0441\u0442\u0438\u0442\u044C \u0432\u043F\u0440\u0430\u0432\u043E",showFieldList:"\u041F\u043E\u043A\u0430\u0437\u0430\u0442\u044C \u0441\u043F\u0438\u0441\u043E\u043A \u043F\u043E\u043B\u0435\u0439",editCalculation:"\u0420\u0435\u0434\u0430\u043A\u0442\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u0435",viewsAndReports:"\u0421\u043E\u0445\u0440\u0430\u043D\u0435\u043D\u043D\u044B\u0435 \u0432\u0438\u0434\u044B \u0438 \u043E\u0442\u0447\u0435\u0442\u044B",views:"\u0412\u0438\u0434\u044B",saveChangesOverwrite:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438\u0437\u043C\u0435\u043D\u0435\u043D\u0438\u044F (\u041F\u0435\u0440\u0435\u0437\u0430\u043F\u0438\u0441\u0430\u0442\u044C)",saveAsCopy:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u043A\u0430\u043A (\u041A\u043E\u043F\u0438\u044F)",makeDefault:"\u0421\u0434\u0435\u043B\u0430\u0442\u044C \u043F\u043E \u0443\u043C\u043E\u043B\u0447\u0430\u043D\u0438\u044E",deleteReport:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u043E\u0442\u0447\u0435\u0442",deleteReportConfirm:"\u0412\u044B \u0443\u0432\u0435\u0440\u0435\u043D\u044B, \u0447\u0442\u043E \u0445\u043E\u0442\u0438\u0442\u0435 \u0443\u0434\u0430\u043B\u0438\u0442\u044C \u043E\u0442\u0447\u0435\u0442 '{0}'?",customExports:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u044D\u043A\u0441\u043F\u043E\u0440\u0442",customPlugin:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439 \u043F\u043B\u0430\u0433\u0438\u043D",importCancelled:"\u0418\u043C\u043F\u043E\u0440\u0442 \u043E\u0442\u043C\u0435\u043D\u0451\u043D.",importPreviewTitle:"\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0438\u043C\u043F\u043E\u0440\u0442\u0430",importPreviewSubtitle:"\u0411\u0443\u0434\u0435\u0442 \u0438\u043C\u043F\u043E\u0440\u0442\u0438\u0440\u043E\u0432\u0430\u043D\u043E \u0441\u0442\u0440\u043E\u043A: {rows} \u2022 \u0441\u0442\u043E\u043B\u0431\u0446\u043E\u0432: {cols}",importPreviewFooter:"\u041F\u0440\u043E\u0432\u0435\u0440\u044C\u0442\u0435 \u0441\u0442\u043E\u043B\u0431\u0446\u044B \u0438 \u0442\u0438\u043F\u044B, \u0437\u0430\u0442\u0435\u043C \u043F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u0435.",columns:"\u0421\u0442\u043E\u043B\u0431\u0446\u044B",includeColumn:"\u0412\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u044D\u0442\u043E\u0442 \u0441\u0442\u043E\u043B\u0431\u0435\u0446",dataPreview:"\u041F\u0440\u0435\u0434\u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0434\u0430\u043D\u043D\u044B\u0445",applyImport:"\u0418\u043C\u043F\u043E\u0440\u0442",type_string:"\u0422\u0435\u043A\u0441\u0442",type_number:"\u0427\u0438\u0441\u043B\u043E",type_date:"\u0414\u0430\u0442\u0430",type_boolean:"\u041B\u043E\u0433\u0438\u0447\u0435\u0441\u043A\u0438\u0439",reading:"\u0427\u0442\u0435\u043D\u0438\u0435 \u0444\u0430\u0439\u043B\u0430\u2026",parsing:"\u0420\u0430\u0437\u0431\u043E\u0440\u2026",typing:"\u041E\u043F\u0440\u0435\u0434\u0435\u043B\u0435\u043D\u0438\u0435 \u0442\u0438\u043F\u043E\u0432\u2026",finalizing:"\u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u0435\u2026",measureNamePlaceholder:"\u043D\u0430\u043F\u0440. \u041C\u0430\u0440\u0436\u0430 \u043F\u0440\u0438\u0431\u044B\u043B\u0438",customFormat:"\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C\u0441\u043A\u0438\u0439\u2026",customPrefix:"\u041F\u0440\u0435\u0444\u0438\u043A\u0441",customSuffix:"\u0421\u0443\u0444\u0444\u0438\u043A\u0441",minFraction:"\u041C\u0438\u043D. \u0434\u0440\u043E\u0431.",maxFraction:"\u041C\u0430\u043A\u0441. \u0434\u0440\u043E\u0431.",calculationLevel:"\u0423\u0440\u043E\u0432\u0435\u043D\u044C \u0432\u044B\u0447\u0438\u0441\u043B\u0435\u043D\u0438\u044F",calcRowLevel:"\u0423\u0440\u043E\u0432\u0435\u043D\u044C \u0441\u0442\u0440\u043E\u043A\u0438 (\u0438\u0441\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435)",calcSummaryLevel:"\u0423\u0440\u043E\u0432\u0435\u043D\u044C \u0441\u0432\u043E\u0434\u043A\u0438 (\u0430\u0433\u0440\u0435\u0433\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B\u0435)",fields:"\u041F\u043E\u043B\u044F",noFieldsFound:"\u041D\u0435\u0442 \u043F\u043E\u0434\u0445\u043E\u0434\u044F\u0449\u0438\u0445 \u043F\u043E\u043B\u0435\u0439 \u0434\u043B\u044F \u044D\u0442\u043E\u0433\u043E \u0443\u0440\u043E\u0432\u043D\u044F.",deleteCalcField:"\u0423\u0434\u0430\u043B\u0438\u0442\u044C \u0432\u044B\u0447\u0438\u0441\u043B\u044F\u0435\u043C\u043E\u0435 \u043F\u043E\u043B\u0435",formula:"\u0424\u043E\u0440\u043C\u0443\u043B\u0430",formulaPlaceholder:"\u043D\u0430\u043F\u0440. [\u0412\u044B\u0440\u0443\u0447\u043A\u0430] - [\u0417\u0430\u0442\u0440\u0430\u0442\u044B]",saveAndAdd:"\u0421\u043E\u0445\u0440\u0430\u043D\u0438\u0442\u044C \u0438 \u0434\u043E\u0431\u0430\u0432\u0438\u0442\u044C",measureNameEmpty:"\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u0438\u043C\u044F \u043F\u043E\u043B\u044F.",formulaEmpty:"\u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F \u0444\u043E\u0440\u043C\u0443\u043B\u0430.",formulaError:"\u041E\u0448\u0438\u0431\u043A\u0430 \u0444\u043E\u0440\u043C\u0443\u043B\u044B"},ur={ok:"\u0645\u0648\u0627\u0641\u0642",cancel:"\u0625\u0644\u063A\u0627\u0621",apply:"\u062A\u0637\u0628\u064A\u0642",close:"\u0625\u063A\u0644\u0627\u0642",search:"\u0628\u062D\u062B...",selectAll:"\u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0643\u0644",clearAll:"\u0645\u0633\u062D \u0627\u0644\u0643\u0644",show:"\u0639\u0631\u0636",hide:"\u0625\u062E\u0641\u0627\u0621",filterArea:"\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",columnArea:"\u0627\u0644\u0623\u0639\u0645\u062F\u0629",rowArea:"\u0627\u0644\u0635\u0641\u0648\u0641",dataArea:"\u0627\u0644\u0642\u064A\u0645",footerArea:"\u0645\u0646\u0637\u0642\u0629 \u0627\u0644\u062A\u0630\u064A\u064A\u0644",allFields:"\u062C\u0645\u064A\u0639 \u0627\u0644\u062D\u0642\u0648\u0644",dropHere:"\u0623\u0641\u0644\u062A \u0647\u0646\u0627",actions:"\u0627\u0644\u0625\u062C\u0631\u0627\u0621\u0627\u062A",saveNewView:"\u062D\u0641\u0638 \u0639\u0631\u0636 \u062C\u062F\u064A\u062F",saveAsView:"\u062D\u0641\u0638 \u0628\u0627\u0633\u0645",saveChanges:"\u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A",savedViews:"\u0627\u0644\u0639\u0631\u0648\u0636 \u0627\u0644\u0645\u062D\u0641\u0648\u0638\u0629",viewOptions:"\u062E\u064A\u0627\u0631\u0627\u062A \u0627\u0644\u0639\u0631\u0636",export:"\u062A\u0635\u062F\u064A\u0631",importFile:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F",importFromFile:"\u0645\u0646 \u0645\u0644\u0641",pasteImport:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0645\u0646 \u0627\u0644\u062D\u0627\u0641\u0638\u0629",pasteImportHint:"\u0645\u0641\u0635\u0648\u0644 \u0628\u0639\u0644\u0627\u0645\u0629 \u062C\u062F\u0648\u0644\u0629 \u0623\u0648 \u0641\u0627\u0635\u0644\u0629",dropToImport:"\u0623\u0641\u0644\u062A \u0627\u0644\u0645\u0644\u0641\u0627\u062A \u0647\u0646\u0627 \u0644\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",clipboardEmpty:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0646\u0635 \u0642\u0627\u0628\u0644 \u0644\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0641\u064A \u0627\u0644\u062D\u0627\u0641\u0638\u0629.",clipboardDenied:"\u062A\u0639\u0630\u0631 \u0627\u0644\u0648\u0635\u0648\u0644 \u0625\u0644\u0649 \u0627\u0644\u062D\u0627\u0641\u0638\u0629. \u064A\u0631\u062C\u0649 \u0627\u0644\u062A\u062D\u0642\u0642 \u0645\u0646 \u0623\u0630\u0648\u0646\u0627\u062A \u0627\u0644\u0645\u062A\u0635\u0641\u062D.",excelExport:"\u062A\u0635\u062F\u064A\u0631 \u0625\u0644\u0649 Excel",pivotView:"\u0639\u0631\u0636 \u0645\u062D\u0648\u0631\u064A",listView:"\u0639\u0631\u0636 \u0627\u0644\u0642\u0627\u0626\u0645\u0629",preservesGridLayout:"\u064A\u062D\u0627\u0641\u0638 \u0639\u0644\u0649 \u062A\u062E\u0637\u064A\u0637 \u0627\u0644\u0634\u0628\u0643\u0629",rawFlatData:"\u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0645",document:"\u0645\u0633\u062A\u0646\u062F",pdfDocument:"\u0645\u0633\u062A\u0646\u062F PDF",printReadyLayout:"\u062A\u062E\u0637\u064A\u0637 \u062C\u0627\u0647\u0632 \u0644\u0644\u0637\u0628\u0627\u0639\u0629",fullSnapshot:"\u0644\u0642\u0637\u0629 \u0643\u0627\u0645\u0644\u0629",saveSessionState:"\u062D\u0641\u0638 \u062D\u0627\u0644\u0629 \u0627\u0644\u062C\u0644\u0633\u0629",rawDataFormats:"\u062A\u0646\u0633\u064A\u0642\u0627\u062A \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A \u0627\u0644\u062E\u0627\u0645",importSuccess:"\u062A\u0645 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F \u0628\u0646\u062C\u0627\u062D",importWarning:"\u0627\u0643\u062A\u0645\u0644 \u0645\u0639 \u062A\u062D\u0630\u064A\u0631\u0627\u062A",importError:"\u0641\u0634\u0644 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",initializing:"\u062C\u0627\u0631\u064A \u0627\u0644\u062A\u0647\u064A\u0626\u0629...",loading:"\u062C\u0627\u0631\u064D \u0627\u0644\u062A\u062D\u0645\u064A\u0644...",emptyData:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0628\u064A\u0627\u0646\u0627\u062A",noItems:"\u0644\u0645 \u064A\u062A\u0645 \u0627\u0644\u0639\u062B\u0648\u0631 \u0639\u0644\u0649 \u0639\u0646\u0627\u0635\u0631",blanks:"(\u0641\u0627\u0631\u063A)",loadingData:"\u064A\u0631\u062C\u0649 \u0627\u0644\u0627\u0646\u062A\u0638\u0627\u0631\u060C \u062C\u0627\u0631\u064A \u062A\u062D\u0636\u064A\u0631 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A...",processing:"\u062C\u0627\u0631\u064A \u0627\u0644\u0645\u0639\u0627\u0644\u062C\u0629...",fieldSettings:"\u0625\u0639\u062F\u0627\u062F\u0627\u062A \u0627\u0644\u062D\u0642\u0644",caption:"\u0627\u0644\u062A\u0633\u0645\u064A\u0629 \u0627\u0644\u062A\u0648\u0636\u064A\u062D\u064A\u0629",summaryType:"\u0646\u0648\u0639 \u0627\u0644\u0645\u0644\u062E\u0635",displayMode:"\u0648\u0636\u0639 \u0627\u0644\u0639\u0631\u0636",groupInterval:"\u0627\u0644\u0641\u0627\u0635\u0644 \u0627\u0644\u0632\u0645\u0646\u064A \u0644\u0644\u0645\u062C\u0645\u0648\u0639\u0629",sum:"\u0645\u062C\u0645\u0648\u0639",count:"\u0627\u0644\u0639\u062F\u062F",avg:"\u0645\u062A\u0648\u0633\u0637",min:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u062F\u0646\u0649",max:"\u0627\u0644\u062D\u062F \u0627\u0644\u0623\u0642\u0635\u0649",grandTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",subTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u0641\u0631\u0639\u064A",absoluteValue:"\u0642\u064A\u0645\u0629 \u0645\u0637\u0644\u0642\u0629",runningTotal:"\u0627\u0644\u0645\u062C\u0645\u0648\u0639 \u0627\u0644\u062A\u0631\u0627\u0643\u0645\u064A",difference:"\u0627\u0644\u0641\u0631\u0642",percentOfTotal:"\u066A \u0645\u0646 \u0627\u0644\u0625\u062C\u0645\u0627\u0644\u064A",none:"\u0628\u0644\u0627",year:"\u0633\u0646\u0629",quarter:"\u0631\u0628\u0639",month:"\u0634\u0647\u0631",day:"\u064A\u0648\u0645",and:"\u0648",or:"\u0623\u0648",noConditionsAdded:"\u0644\u0645 \u064A\u062A\u0645 \u0625\u0636\u0627\u0641\u0629 \u0634\u0631\u0648\u0637...",calculatedMeasureDesigner:"\u0645\u0635\u0645\u0645 \u0627\u0644\u0645\u0642\u0627\u064A\u064A\u0633 \u0627\u0644\u0645\u062D\u0633\u0648\u0628\u0629",createFormulasWithoutCode:"\u0625\u0646\u0634\u0627\u0621 \u0627\u0644\u0635\u064A\u063A \u0648\u0627\u0644\u062D\u0633\u0627\u0628\u0627\u062A \u0628\u062F\u0648\u0646 \u0643\u062A\u0627\u0628\u0629 \u0643\u0648\u062F.",measureName:"\u0627\u0633\u0645 \u0627\u0644\u0645\u0642\u064A\u0627\u0633",format:"\u0627\u0644\u062A\u0646\u0633\u064A\u0642",numericStandard:"\u0631\u0642\u0645\u064A (\u0642\u064A\u0627\u0633\u064A)",numericDecimal:"\u0631\u0642\u0645\u064A (\u0639\u0634\u0631\u064A 1,486.15)",currencyTRY:"\u0627\u0644\u0639\u0645\u0644\u0629 (\u0644\u064A\u0631\u0629 \u062A\u0631\u0643\u064A\u0629)",currencyUSD:"\u0627\u0644\u0639\u0645\u0644\u0629 (\u062F\u0648\u0644\u0627\u0631 \u0623\u0645\u0631\u064A\u0643\u064A)",percent:"\u0646\u0633\u0628\u0629 \u0645\u0626\u0648\u064A\u0629 (%)",expand:"\u062A\u0648\u0633\u064A\u0639",collapse:"\u0637\u064A",expandAll:"\u062A\u0648\u0633\u064A\u0639 \u0627\u0644\u0643\u0644",refreshData:"\u062A\u062D\u062F\u064A\u062B \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",filterBuilder:"\u0645\u0646\u0634\u0626 \u0639\u0648\u0627\u0645\u0644 \u0627\u0644\u062A\u0635\u0641\u064A\u0629",chartToggle:"\u062A\u0628\u062F\u064A\u0644 \u0639\u0631\u0636 \u0627\u0644\u0645\u062E\u0637\u0637",collapseAll:"\u0637\u064A \u0627\u0644\u0643\u0644",sortByThisColumn:"\u0627\u0644\u0641\u0631\u0632 \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",sortFieldByThisColumn:'\u0641\u0631\u0632 "{0}" \u062D\u0633\u0628 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F',removeAllSorting:"\u0625\u0632\u0627\u0644\u0629 \u0643\u0644 \u0627\u0644\u0641\u0631\u0632",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",order:"\u0627\u0644\u062A\u0631\u062A\u064A\u0628",moveToStart:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0628\u062F\u0627\u064A\u0629",moveToEnd:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0625\u0644\u0649 \u0627\u0644\u0646\u0647\u0627\u064A\u0629",moveToLeft:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0633\u0627\u0631",moveToRight:"\u0627\u0646\u062A\u0642\u0627\u0644 \u0644\u0644\u064A\u0645\u064A\u0646",showFieldList:"\u0625\u0638\u0647\u0627\u0631 \u0642\u0627\u0626\u0645\u0629 \u0627\u0644\u062D\u0642\u0648\u0644",editCalculation:"\u062A\u0639\u062F\u064A\u0644 \u0627\u0644\u0639\u0645\u0644\u064A\u0629 \u0627\u0644\u062D\u0633\u0627\u0628\u064A\u0629",viewsAndReports:"\u0627\u0644\u0639\u0631\u0648\u0636 \u0648\u0627\u0644\u062A\u0642\u0627\u0631\u064A\u0631 \u0627\u0644\u0645\u062D\u0641\u0648\u0638\u0629",views:"\u0627\u0644\u0639\u0631\u0648\u0636",saveChangesOverwrite:"\u062D\u0641\u0638 \u0627\u0644\u062A\u063A\u064A\u064A\u0631\u0627\u062A (\u0627\u0633\u062A\u0628\u062F\u0627\u0644)",saveAsCopy:"\u062D\u0641\u0638 \u0628\u0627\u0633\u0645 (\u0646\u0633\u062E\u0629)",makeDefault:"\u062A\u0639\u064A\u064A\u0646 \u0643\u0627\u0641\u062A\u0631\u0627\u0636\u064A",deleteReport:"\u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u0631\u064A\u0631",deleteReportConfirm:"\u0647\u0644 \u0623\u0646\u062A \u0645\u062A\u0623\u0643\u062F \u0623\u0646\u0643 \u062A\u0631\u064A\u062F \u062D\u0630\u0641 \u0627\u0644\u062A\u0642\u0631\u064A\u0631 '{0}'\u061F",customExports:"\u062A\u0635\u062F\u064A\u0631\u0627\u062A \u0645\u062E\u0635\u0635\u0629",customPlugin:"\u0645\u0643\u0648\u0646 \u0625\u0636\u0627\u0641\u064A \u0645\u062E\u0635\u0635",importCancelled:"\u062A\u0645 \u0625\u0644\u063A\u0627\u0621 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F.",importPreviewTitle:"\u0645\u0639\u0627\u064A\u0646\u0629 \u0627\u0644\u0627\u0633\u062A\u064A\u0631\u0627\u062F",importPreviewSubtitle:"\u0633\u064A\u062A\u0645 \u0627\u0633\u062A\u064A\u0631\u0627\u062F {rows} \u0635\u0641\u0648\u0641 \u2022 {cols} \u0623\u0639\u0645\u062F\u0629",importPreviewFooter:"\u0631\u0627\u062C\u0639 \u0627\u0644\u0623\u0639\u0645\u062F\u0629 \u0648\u0627\u0644\u0623\u0646\u0648\u0627\u0639 \u062B\u0645 \u0623\u0643\u0651\u062F.",columns:"\u0627\u0644\u0623\u0639\u0645\u062F\u0629",includeColumn:"\u062A\u0636\u0645\u064A\u0646 \u0647\u0630\u0627 \u0627\u0644\u0639\u0645\u0648\u062F",dataPreview:"\u0645\u0639\u0627\u064A\u0646\u0629 \u0627\u0644\u0628\u064A\u0627\u0646\u0627\u062A",applyImport:"\u0627\u0633\u062A\u064A\u0631\u0627\u062F",type_string:"\u0646\u0635",type_number:"\u0631\u0642\u0645",type_date:"\u062A\u0627\u0631\u064A\u062E",type_boolean:"\u0645\u0646\u0637\u0642\u064A",reading:"\u062C\u0627\u0631\u064D \u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u0644\u0641\u2026",parsing:"\u062C\u0627\u0631\u064D \u0627\u0644\u062A\u062D\u0644\u064A\u0644\u2026",typing:"\u062C\u0627\u0631\u064D \u062A\u062D\u062F\u064A\u062F \u0627\u0644\u0623\u0646\u0648\u0627\u0639\u2026",finalizing:"\u062C\u0627\u0631\u064D \u0627\u0644\u0625\u0646\u0647\u0627\u0621\u2026",measureNamePlaceholder:"\u0645\u062B\u0627\u0644: \u0647\u0627\u0645\u0634 \u0627\u0644\u0631\u0628\u062D",customFormat:"\u0645\u062E\u0635\u0635\u2026",customPrefix:"\u0628\u0627\u062F\u0626\u0629",customSuffix:"\u0644\u0627\u062D\u0642\u0629",minFraction:"\u0623\u062F\u0646\u0649 \u0643\u0633\u0648\u0631",maxFraction:"\u0623\u0642\u0635\u0649 \u0643\u0633\u0648\u0631",calculationLevel:"\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u062D\u0633\u0627\u0628",calcRowLevel:"\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u0635\u0641 (\u0628\u064A\u0627\u0646\u0627\u062A \u062E\u0627\u0645)",calcSummaryLevel:"\u0645\u0633\u062A\u0648\u0649 \u0627\u0644\u0645\u0644\u062E\u0635 (\u0645\u062C\u0645\u064E\u0651\u0639)",fields:"\u0627\u0644\u062D\u0642\u0648\u0644",noFieldsFound:"\u0644\u0627 \u062A\u0648\u062C\u062F \u062D\u0642\u0648\u0644 \u0645\u0646\u0627\u0633\u0628\u0629 \u0644\u0647\u0630\u0627 \u0627\u0644\u0645\u0633\u062A\u0648\u0649.",deleteCalcField:"\u062D\u0630\u0641 \u0627\u0644\u062D\u0642\u0644 \u0627\u0644\u0645\u062D\u0633\u0648\u0628",formula:"\u0635\u064A\u063A\u0629",formulaPlaceholder:"\u0645\u062B\u0627\u0644: [\u0627\u0644\u0625\u064A\u0631\u0627\u062F\u0627\u062A] - [\u0627\u0644\u062A\u0643\u0644\u0641\u0629]",saveAndAdd:"\u062D\u0641\u0638 \u0648\u0625\u0636\u0627\u0641\u0629",measureNameEmpty:"\u0627\u0633\u0645 \u0627\u0644\u062D\u0642\u0644 \u0645\u0637\u0644\u0648\u0628.",formulaEmpty:"\u0627\u0644\u0635\u064A\u063A\u0629 \u0645\u0637\u0644\u0648\u0628\u0629.",formulaError:"\u062E\u0637\u0623 \u0641\u064A \u0627\u0644\u0635\u064A\u063A\u0629"},or={ok:"\u786E\u5B9A",cancel:"\u53D6\u6D88",apply:"\u5E94\u7528",close:"\u5173\u95ED",search:"\u641C\u7D22...",selectAll:"\u5168\u9009",clearAll:"\u5168\u90E8\u6E05\u9664",show:"\u663E\u793A",hide:"\u9690\u85CF",filterArea:"\u8FC7\u6EE4\u533A\u57DF",columnArea:"\u5217",rowArea:"\u884C",dataArea:"\u503C",footerArea:"\u9875\u811A\u533A\u57DF",allFields:"\u6240\u6709\u5B57\u6BB5",dropHere:"\u62D6\u653E\u5230\u8FD9\u91CC",actions:"\u64CD\u4F5C",saveNewView:"\u4FDD\u5B58\u65B0\u89C6\u56FE",saveAsView:"\u53E6\u5B58\u4E3A",saveChanges:"\u4FDD\u5B58\u66F4\u6539",savedViews:"\u5DF2\u4FDD\u5B58\u7684\u89C6\u56FE",viewOptions:"\u89C6\u56FE\u9009\u9879",export:"\u5BFC\u51FA",importFile:"\u5BFC\u5165",importFromFile:"\u4ECE\u6587\u4EF6",pasteImport:"\u4ECE\u526A\u8D34\u677F\u5BFC\u5165",pasteImportHint:"\u5236\u8868\u7B26\u6216\u9017\u53F7\u5206\u9694",dropToImport:"\u5C06\u6587\u4EF6\u62D6\u653E\u5230\u6B64\u5904\u4EE5\u5BFC\u5165",clipboardEmpty:"\u526A\u8D34\u677F\u4E2D\u672A\u627E\u5230\u53EF\u5BFC\u5165\u7684\u6587\u672C\u3002",clipboardDenied:"\u65E0\u6CD5\u8BBF\u95EE\u526A\u8D34\u677F\u3002\u8BF7\u68C0\u67E5\u6D4F\u89C8\u5668\u6743\u9650\u3002",excelExport:"Excel \u5BFC\u51FA",pivotView:"\u6570\u636E\u900F\u89C6\u89C6\u56FE",listView:"\u5217\u8868\u89C6\u56FE",preservesGridLayout:"\u4FDD\u7559\u7F51\u683C\u5E03\u5C40",rawFlatData:"\u539F\u59CB\u5E73\u9762\u6570\u636E",document:"\u6587\u6863",pdfDocument:"PDF \u6587\u6863",printReadyLayout:"\u6253\u5370\u5C31\u7EEA\u5E03\u5C40",fullSnapshot:"\u5B8C\u6574\u5FEB\u7167",saveSessionState:"\u4FDD\u5B58\u4F1A\u8BDD\u72B6\u6001",rawDataFormats:"\u539F\u59CB\u6570\u636E\u683C\u5F0F",importSuccess:"\u5BFC\u5165\u6210\u529F",importWarning:"\u5DF2\u5B8C\u6210\u5E76\u5E26\u6709\u8B66\u544A",importError:"\u5BFC\u5165\u5931\u8D25",initializing:"\u521D\u59CB\u5316\u4E2D...",loading:"\u52A0\u8F7D\u4E2D...",emptyData:"\u672A\u627E\u5230\u6570\u636E",noItems:"\u672A\u627E\u5230\u9879\u76EE",blanks:"(\u7A7A\u767D)",loadingData:"\u8BF7\u7A0D\u5019\uFF0C\u6B63\u5728\u51C6\u5907\u6570\u636E...",processing:"\u5904\u7406\u4E2D...",fieldSettings:"\u5B57\u6BB5\u8BBE\u7F6E",caption:"\u6807\u9898",summaryType:"\u6C47\u603B\u7C7B\u578B",displayMode:"\u663E\u793A\u6A21\u5F0F",groupInterval:"\u5206\u7EC4\u95F4\u9694",sum:"\u6C42\u548C",count:"\u8BA1\u6570",avg:"\u5E73\u5747\u503C",min:"\u6700\u5C0F\u503C",max:"\u6700\u5927\u503C",grandTotal:"\u603B\u8BA1",subTotal:"\u5C0F\u8BA1",absoluteValue:"\u7EDD\u5BF9\u503C",runningTotal:"\u8FD0\u884C\u603B\u8BA1",difference:"\u5DEE\u5F02",percentOfTotal:"\u5360\u603B\u8BA1\u7684\u767E\u5206\u6BD4",none:"\u65E0",year:"\u5E74",quarter:"\u5B63\u5EA6",month:"\u6708",day:"\u65E5",and:"\u4E0E",or:"\u6216",noConditionsAdded:"\u672A\u6DFB\u52A0\u6761\u4EF6...",calculatedMeasureDesigner:"\u8BA1\u7B97\u5EA6\u91CF\u8BBE\u8BA1\u5668",createFormulasWithoutCode:"\u65E0\u9700\u7F16\u5199\u4EE3\u7801\u5373\u53EF\u521B\u5EFA\u516C\u5F0F\u548C\u8BA1\u7B97\u3002",measureName:"\u5EA6\u91CF\u540D\u79F0",format:"\u683C\u5F0F",numericStandard:"\u6570\u5B57\uFF08\u6807\u51C6\uFF09",numericDecimal:"\u6570\u5B57\uFF08\u5341\u8FDB\u5236 1,486.15\uFF09",currencyTRY:"\u8D27\u5E01\uFF08TRY\uFF09",currencyUSD:"\u8D27\u5E01\uFF08USD\uFF09",percent:"\u767E\u5206\u6BD4\uFF08%\uFF09",expand:"\u5C55\u5F00",collapse:"\u6298\u53E0",expandAll:"\u5168\u90E8\u5C55\u5F00",refreshData:"\u5237\u65B0\u6570\u636E",filterBuilder:"\u7B5B\u9009\u5668\u751F\u6210\u5668",chartToggle:"\u5207\u6362\u56FE\u8868\u89C6\u56FE",collapseAll:"\u5168\u90E8\u6298\u53E0",sortByThisColumn:"\u6309\u6B64\u5217\u6392\u5E8F",sortFieldByThisColumn:'\u6309\u6B64\u5217\u6392\u5E8F "{0}"',removeAllSorting:"\u79FB\u9664\u6240\u6709\u6392\u5E8F",sortAsc:"\u6309 A \u5230 Z \u6392\u5E8F",sortDesc:"\u6309 Z \u5230 A \u6392\u5E8F",clearSort:"\u6E05\u9664\u6392\u5E8F",order:"\u987A\u5E8F",moveToStart:"\u79FB\u5230\u5F00\u5934",moveToEnd:"\u79FB\u5230\u7ED3\u5C3E",moveToLeft:"\u5DE6\u79FB",moveToRight:"\u53F3\u79FB",showFieldList:"\u663E\u793A\u5B57\u6BB5\u5217\u8868",editCalculation:"\u7F16\u8F91\u8BA1\u7B97",viewsAndReports:"\u5DF2\u4FDD\u5B58\u7684\u89C6\u56FE\u548C\u62A5\u544A",views:"\u89C6\u56FE",saveChangesOverwrite:"\u4FDD\u5B58\u66F4\u6539\uFF08\u8986\u76D6\uFF09",saveAsCopy:"\u53E6\u5B58\u4E3A\uFF08\u590D\u5236\uFF09",makeDefault:"\u8BBE\u4E3A\u9ED8\u8BA4",deleteReport:"\u5220\u9664\u62A5\u544A",deleteReportConfirm:"\u786E\u5B9A\u8981\u5220\u9664\u62A5\u544A '{0}' \u5417\uFF1F",customExports:"\u81EA\u5B9A\u4E49\u5BFC\u51FA",customPlugin:"\u81EA\u5B9A\u4E49\u63D2\u4EF6",importCancelled:"\u5BFC\u5165\u5DF2\u53D6\u6D88\u3002",importPreviewTitle:"\u5BFC\u5165\u9884\u89C8",importPreviewSubtitle:"\u5C06\u5BFC\u5165 {rows} \u884C \u2022 {cols} \u5217",importPreviewFooter:"\u8BF7\u68C0\u67E5\u5217\u548C\u7C7B\u578B\uFF0C\u7136\u540E\u786E\u8BA4\u3002",columns:"\u5217",includeColumn:"\u5305\u542B\u6B64\u5217",dataPreview:"\u6570\u636E\u9884\u89C8",applyImport:"\u5BFC\u5165",type_string:"\u6587\u672C",type_number:"\u6570\u5B57",type_date:"\u65E5\u671F",type_boolean:"\u5E03\u5C14\u503C",reading:"\u6B63\u5728\u8BFB\u53D6\u6587\u4EF6\u2026",parsing:"\u6B63\u5728\u89E3\u6790\u2026",typing:"\u6B63\u5728\u68C0\u6D4B\u7C7B\u578B\u2026",finalizing:"\u6B63\u5728\u5B8C\u6210\u2026",measureNamePlaceholder:"\u4F8B\u5982\uFF1A\u5229\u6DA6\u7387",customFormat:"\u81EA\u5B9A\u4E49\u2026",customPrefix:"\u524D\u7F00",customSuffix:"\u540E\u7F00",minFraction:"\u6700\u5C0F\u5C0F\u6570\u4F4D",maxFraction:"\u6700\u5927\u5C0F\u6570\u4F4D",calculationLevel:"\u8BA1\u7B97\u7EA7\u522B",calcRowLevel:"\u884C\u7EA7\u522B\uFF08\u539F\u59CB\u6570\u636E\uFF09",calcSummaryLevel:"\u6C47\u603B\u7EA7\u522B\uFF08\u5DF2\u805A\u5408\uFF09",fields:"\u5B57\u6BB5",noFieldsFound:"\u6B64\u7EA7\u522B\u6CA1\u6709\u53EF\u7528\u5B57\u6BB5\u3002",deleteCalcField:"\u5220\u9664\u8BA1\u7B97\u5B57\u6BB5",formula:"\u516C\u5F0F",formulaPlaceholder:"\u4F8B\u5982\uFF1A[\u6536\u5165] - [\u6210\u672C]",saveAndAdd:"\u4FDD\u5B58\u5E76\u6DFB\u52A0",measureNameEmpty:"\u8BF7\u8F93\u5165\u5B57\u6BB5\u540D\u79F0\u3002",formulaEmpty:"\u8BF7\u8F93\u5165\u516C\u5F0F\u3002",formulaError:"\u516C\u5F0F\u9519\u8BEF"},ir={ok:"OK",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",apply:"\u9069\u7528",close:"\u9589\u3058\u308B",search:"\u691C\u7D22...",selectAll:"\u3059\u3079\u3066\u9078\u629E",clearAll:"\u3059\u3079\u3066\u30AF\u30EA\u30A2",show:"\u8868\u793A",hide:"\u975E\u8868\u793A",filterArea:"\u30D5\u30A3\u30EB\u30BF\u30FC\u9818\u57DF",columnArea:"\u5217",rowArea:"\u884C",dataArea:"\u5024",footerArea:"\u30D5\u30C3\u30BF\u30FC\u9818\u57DF",allFields:"\u3059\u3079\u3066\u306E\u30D5\u30A3\u30FC\u30EB\u30C9",dropHere:"\u3053\u3053\u306B\u30C9\u30ED\u30C3\u30D7",actions:"\u30A2\u30AF\u30B7\u30E7\u30F3",saveNewView:"\u65B0\u3057\u3044\u30D3\u30E5\u30FC\u3092\u4FDD\u5B58",saveAsView:"\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58",saveChanges:"\u5909\u66F4\u3092\u4FDD\u5B58",savedViews:"\u4FDD\u5B58\u3055\u308C\u305F\u30D3\u30E5\u30FC",viewOptions:"\u30D3\u30E5\u30FC\u30AA\u30D7\u30B7\u30E7\u30F3",export:"\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",importFile:"\u30A4\u30F3\u30DD\u30FC\u30C8",importFromFile:"\u30D5\u30A1\u30A4\u30EB\u304B\u3089",pasteImport:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u304B\u3089\u30A4\u30F3\u30DD\u30FC\u30C8",pasteImportHint:"\u30BF\u30D6\u307E\u305F\u306F\u30AB\u30F3\u30DE\u533A\u5207\u308A",dropToImport:"\u30A4\u30F3\u30DD\u30FC\u30C8\u3059\u308B\u30D5\u30A1\u30A4\u30EB\u3092\u3053\u3053\u306B\u30C9\u30ED\u30C3\u30D7",clipboardEmpty:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30A4\u30F3\u30DD\u30FC\u30C8\u53EF\u80FD\u306A\u30C6\u30AD\u30B9\u30C8\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093\u3002",clipboardDenied:"\u30AF\u30EA\u30C3\u30D7\u30DC\u30FC\u30C9\u306B\u30A2\u30AF\u30BB\u30B9\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002\u30D6\u30E9\u30A6\u30B6\u306E\u6A29\u9650\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002",excelExport:"Excel \u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",pivotView:"\u30D4\u30DC\u30C3\u30C8\u30D3\u30E5\u30FC",listView:"\u30EA\u30B9\u30C8\u30D3\u30E5\u30FC",preservesGridLayout:"\u30B0\u30EA\u30C3\u30C9\u30EC\u30A4\u30A2\u30A6\u30C8\u3092\u4FDD\u6301",rawFlatData:"\u30D5\u30E9\u30C3\u30C8\u306A\u751F\u30C7\u30FC\u30BF",document:"\u30C9\u30AD\u30E5\u30E1\u30F3\u30C8",pdfDocument:"PDF \u30C9\u30AD\u30E5\u30E1\u30F3\u30C8",printReadyLayout:"\u5370\u5237\u7528\u30EC\u30A4\u30A2\u30A6\u30C8",fullSnapshot:"\u5B8C\u5168\u306A\u30B9\u30CA\u30C3\u30D7\u30B7\u30E7\u30C3\u30C8",saveSessionState:"\u30BB\u30C3\u30B7\u30E7\u30F3\u72B6\u614B\u3092\u4FDD\u5B58",rawDataFormats:"\u751F\u30C7\u30FC\u30BF\u5F62\u5F0F",importSuccess:"\u30A4\u30F3\u30DD\u30FC\u30C8\u306B\u6210\u529F\u3057\u307E\u3057\u305F",importWarning:"\u8B66\u544A\u4ED8\u304D\u3067\u5B8C\u4E86\u3057\u307E\u3057\u305F",importError:"\u30A4\u30F3\u30DD\u30FC\u30C8\u306B\u5931\u6557\u3057\u307E\u3057\u305F",initializing:"\u521D\u671F\u5316\u4E2D...",loading:"\u8AAD\u307F\u8FBC\u307F\u4E2D...",emptyData:"\u30C7\u30FC\u30BF\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",noItems:"\u30A2\u30A4\u30C6\u30E0\u304C\u898B\u3064\u304B\u308A\u307E\u305B\u3093",blanks:"(\u7A7A\u767D)",loadingData:"\u304A\u5F85\u3061\u304F\u3060\u3055\u3044\u3002\u30C7\u30FC\u30BF\u3092\u6E96\u5099\u3057\u3066\u3044\u307E\u3059...",processing:"\u51E6\u7406\u4E2D...",fieldSettings:"\u30D5\u30A3\u30FC\u30EB\u30C9\u8A2D\u5B9A",caption:"\u30AD\u30E3\u30D7\u30B7\u30E7\u30F3",summaryType:"\u96C6\u8A08\u30BF\u30A4\u30D7",displayMode:"\u8868\u793A\u30E2\u30FC\u30C9",groupInterval:"\u30B0\u30EB\u30FC\u30D7\u9593\u9694",sum:"\u5408\u8A08",count:"\u30AB\u30A6\u30F3\u30C8",avg:"\u5E73\u5747",min:"\u6700\u5C0F",max:"\u6700\u5927",grandTotal:"\u7DCF\u8A08",subTotal:"\u5C0F\u8A08",absoluteValue:"\u7D76\u5BFE\u5024",runningTotal:"\u7D2F\u8A08",difference:"\u5DEE\u5206",percentOfTotal:"\u7DCF\u8A08\u306E\u5272\u5408",none:"\u306A\u3057",year:"\u5E74",quarter:"\u56DB\u534A\u671F",month:"\u6708",day:"\u65E5",and:"\u304B\u3064 (And)",or:"\u307E\u305F\u306F (Or)",noConditionsAdded:"\u6761\u4EF6\u304C\u8FFD\u52A0\u3055\u308C\u3066\u3044\u307E\u305B\u3093...",calculatedMeasureDesigner:"\u8A08\u7B97\u30E1\u30B8\u30E3\u30FC\u30C7\u30B6\u30A4\u30CA\u30FC",createFormulasWithoutCode:"\u30B3\u30FC\u30C9\u3092\u8A18\u8FF0\u305B\u305A\u306B\u6570\u5F0F\u3068\u8A08\u7B97\u3092\u4F5C\u6210\u3057\u307E\u3059\u3002",measureName:"\u30E1\u30B8\u30E3\u30FC\u540D",format:"\u30D5\u30A9\u30FC\u30DE\u30C3\u30C8",numericStandard:"\u6570\u5024\uFF08\u6A19\u6E96\uFF09",numericDecimal:"\u6570\u5024\uFF08\u5C0F\u6570 1,486.15\uFF09",currencyTRY:"\u901A\u8CA8\uFF08TRY\uFF09",currencyUSD:"\u901A\u8CA8\uFF08USD\uFF09",percent:"\u30D1\u30FC\u30BB\u30F3\u30C8\uFF08%\uFF09",expand:"\u5C55\u958B",collapse:"\u6298\u308A\u305F\u305F\u3080",expandAll:"\u3059\u3079\u3066\u5C55\u958B",refreshData:"\u30C7\u30FC\u30BF\u3092\u66F4\u65B0",filterBuilder:"\u30D5\u30A3\u30EB\u30BF\u30FC\u30D3\u30EB\u30C0\u30FC",chartToggle:"\u30B0\u30E9\u30D5\u8868\u793A\u306E\u5207\u308A\u66FF\u3048",collapseAll:"\u3059\u3079\u3066\u6298\u308A\u305F\u305F\u3080",sortByThisColumn:"\u3053\u306E\u5217\u3067\u4E26\u3079\u66FF\u3048",sortFieldByThisColumn:'\u3053\u306E\u5217\u3067 "{0}" \u3092\u4E26\u3079\u66FF\u3048',removeAllSorting:"\u3059\u3079\u3066\u306E\u4E26\u3079\u66FF\u3048\u3092\u524A\u9664",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",order:"\u9806\u5E8F",moveToStart:"\u5148\u982D\u306B\u79FB\u52D5",moveToEnd:"\u672B\u5C3E\u306B\u79FB\u52D5",moveToLeft:"\u5DE6\u306B\u79FB\u52D5",moveToRight:"\u53F3\u306B\u79FB\u52D5",showFieldList:"\u30D5\u30A3\u30FC\u30EB\u30C9\u30EA\u30B9\u30C8\u3092\u8868\u793A",editCalculation:"\u8A08\u7B97\u306E\u7DE8\u96C6",viewsAndReports:"\u4FDD\u5B58\u3055\u308C\u305F\u30D3\u30E5\u30FC\u3068\u30EC\u30DD\u30FC\u30C8",views:"\u30D3\u30E5\u30FC",saveChangesOverwrite:"\u5909\u66F4\u3092\u4FDD\u5B58\uFF08\u4E0A\u66F8\u304D\uFF09",saveAsCopy:"\u540D\u524D\u3092\u4ED8\u3051\u3066\u4FDD\u5B58\uFF08\u30B3\u30D4\u30FC\uFF09",makeDefault:"\u30C7\u30D5\u30A9\u30EB\u30C8\u306B\u8A2D\u5B9A",deleteReport:"\u30EC\u30DD\u30FC\u30C8\u3092\u524A\u9664",deleteReportConfirm:"\u30EC\u30DD\u30FC\u30C8 '{0}' \u3092\u524A\u9664\u3057\u3066\u3082\u3088\u308D\u3057\u3044\u3067\u3059\u304B\uFF1F",customExports:"\u30AB\u30B9\u30BF\u30E0\u30A8\u30AF\u30B9\u30DD\u30FC\u30C8",customPlugin:"\u30AB\u30B9\u30BF\u30E0\u30D7\u30E9\u30B0\u30A4\u30F3",importCancelled:"\u30A4\u30F3\u30DD\u30FC\u30C8\u3092\u30AD\u30E3\u30F3\u30BB\u30EB\u3057\u307E\u3057\u305F\u3002",importPreviewTitle:"\u30A4\u30F3\u30DD\u30FC\u30C8\u306E\u30D7\u30EC\u30D3\u30E5\u30FC",importPreviewSubtitle:"{rows} \u884C \u2022 {cols} \u5217\u3092\u30A4\u30F3\u30DD\u30FC\u30C8\u3057\u307E\u3059",importPreviewFooter:"\u5217\u3068\u578B\u3092\u78BA\u8A8D\u3057\u3066\u304B\u3089\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002",columns:"\u5217",includeColumn:"\u3053\u306E\u5217\u3092\u542B\u3081\u308B",dataPreview:"\u30C7\u30FC\u30BF\u306E\u30D7\u30EC\u30D3\u30E5\u30FC",applyImport:"\u30A4\u30F3\u30DD\u30FC\u30C8",type_string:"\u30C6\u30AD\u30B9\u30C8",type_number:"\u6570\u5024",type_date:"\u65E5\u4ED8",type_boolean:"\u30D6\u30FC\u30EB\u5024",reading:"\u30D5\u30A1\u30A4\u30EB\u3092\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026",parsing:"\u89E3\u6790\u4E2D\u2026",typing:"\u578B\u3092\u5224\u5B9A\u4E2D\u2026",finalizing:"\u5B8C\u4E86\u51E6\u7406\u4E2D\u2026",measureNamePlaceholder:"\u4F8B: \u5229\u76CA\u7387",customFormat:"\u30AB\u30B9\u30BF\u30E0\u2026",customPrefix:"\u63A5\u982D\u8F9E",customSuffix:"\u63A5\u5C3E\u8F9E",minFraction:"\u6700\u5C0F\u5C0F\u6570\u6841",maxFraction:"\u6700\u5927\u5C0F\u6570\u6841",calculationLevel:"\u8A08\u7B97\u30EC\u30D9\u30EB",calcRowLevel:"\u884C\u30EC\u30D9\u30EB (\u5143\u30C7\u30FC\u30BF)",calcSummaryLevel:"\u96C6\u8A08\u30EC\u30D9\u30EB (\u96C6\u7D04\u6E08\u307F)",fields:"\u30D5\u30A3\u30FC\u30EB\u30C9",noFieldsFound:"\u3053\u306E\u30EC\u30D9\u30EB\u3067\u4F7F\u7528\u3067\u304D\u308B\u30D5\u30A3\u30FC\u30EB\u30C9\u304C\u3042\u308A\u307E\u305B\u3093\u3002",deleteCalcField:"\u8A08\u7B97\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u524A\u9664",formula:"\u6570\u5F0F",formulaPlaceholder:"\u4F8B: [\u58F2\u4E0A] - [\u539F\u4FA1]",saveAndAdd:"\u4FDD\u5B58\u3057\u3066\u8FFD\u52A0",measureNameEmpty:"\u30D5\u30A3\u30FC\u30EB\u30C9\u540D\u306F\u5FC5\u9808\u3067\u3059\u3002",formulaEmpty:"\u6570\u5F0F\u306F\u5FC5\u9808\u3067\u3059\u3002",formulaError:"\u6570\u5F0F\u30A8\u30E9\u30FC"},nr={ok:"\uD655\uC778",cancel:"\uCDE8\uC18C",apply:"\uC801\uC6A9",close:"\uB2EB\uAE30",search:"\uAC80\uC0C9...",selectAll:"\uBAA8\uB450 \uC120\uD0DD",clearAll:"\uBAA8\uB450 \uC9C0\uC6B0\uAE30",show:"\uD45C\uC2DC",hide:"\uC228\uAE30\uAE30",filterArea:"\uD544\uD130 \uC601\uC5ED",columnArea:"\uC5F4",rowArea:"\uD589",dataArea:"\uAC12",footerArea:"\uBC14\uB2E5\uAE00 \uC601\uC5ED",allFields:"\uBAA8\uB4E0 \uD544\uB4DC",dropHere:"\uC5EC\uAE30\uC5D0 \uB193\uAE30",actions:"\uC791\uC5C5",saveNewView:"\uC0C8 \uBDF0 \uC800\uC7A5",saveAsView:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5",saveChanges:"\uBCC0\uACBD \uC0AC\uD56D \uC800\uC7A5",savedViews:"\uC800\uC7A5\uB41C \uBDF0",viewOptions:"\uBDF0 \uC635\uC158",export:"\uB0B4\uBCF4\uB0B4\uAE30",importFile:"\uAC00\uC838\uC624\uAE30",importFromFile:"\uD30C\uC77C\uC5D0\uC11C",pasteImport:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uC11C \uAC00\uC838\uC624\uAE30",pasteImportHint:"\uD0ED \uB610\uB294 \uC27C\uD45C\uB85C \uAD6C\uBD84",dropToImport:"\uAC00\uC838\uC62C \uD30C\uC77C\uC744 \uC5EC\uAE30\uC5D0 \uB193\uC73C\uC138\uC694",clipboardEmpty:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0\uC11C \uAC00\uC838\uC62C \uC218 \uC788\uB294 \uD14D\uC2A4\uD2B8\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.",clipboardDenied:"\uD074\uB9BD\uBCF4\uB4DC\uC5D0 \uC811\uADFC\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. \uBE0C\uB77C\uC6B0\uC800 \uAD8C\uD55C\uC744 \uD655\uC778\uD558\uC138\uC694.",excelExport:"Excel \uB0B4\uBCF4\uB0B4\uAE30",pivotView:"\uD53C\uBC97 \uBDF0",listView:"\uBAA9\uB85D \uBDF0",preservesGridLayout:"\uADF8\uB9AC\uB4DC \uB808\uC774\uC544\uC6C3 \uC720\uC9C0",rawFlatData:"\uC6D0\uC2DC \uD50C\uB7AB \uB370\uC774\uD130",document:"\uBB38\uC11C",pdfDocument:"PDF \uBB38\uC11C",printReadyLayout:"\uC778\uC1C4 \uC900\uBE44 \uB808\uC774\uC544\uC6C3",fullSnapshot:"\uC804\uCCB4 \uC2A4\uB0C5\uC0F7",saveSessionState:"\uC138\uC158 \uC0C1\uD0DC \uC800\uC7A5",rawDataFormats:"\uC6D0\uC2DC \uB370\uC774\uD130 \uD615\uC2DD",importSuccess:"\uAC00\uC838\uC624\uAE30 \uC131\uACF5",importWarning:"\uACBD\uACE0\uC640 \uD568\uAED8 \uC644\uB8CC",importError:"\uAC00\uC838\uC624\uAE30 \uC2E4\uD328",initializing:"\uCD08\uAE30\uD654 \uC911...",loading:"\uB85C\uB529 \uC911...",emptyData:"\uB370\uC774\uD130\uB97C \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",noItems:"\uD56D\uBAA9\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4",blanks:"(\uBE44\uC5B4 \uC788\uC74C)",loadingData:"\uC7A0\uC2DC \uAE30\uB2E4\uB824 \uC8FC\uC2ED\uC2DC\uC624. \uB370\uC774\uD130\uB97C \uC900\uBE44\uD558\uB294 \uC911\uC785\uB2C8\uB2E4...",processing:"\uCC98\uB9AC \uC911...",fieldSettings:"\uD544\uB4DC \uC124\uC815",caption:"\uCEA1\uC158",summaryType:"\uC694\uC57D \uC720\uD615",displayMode:"\uD45C\uC2DC \uBAA8\uB4DC",groupInterval:"\uADF8\uB8F9 \uAC04\uACA9",sum:"\uD569\uACC4",count:"\uAC1C\uC218",avg:"\uD3C9\uADE0",min:"\uCD5C\uC18C",max:"\uCD5C\uB300",grandTotal:"\uCD1D\uACC4",subTotal:"\uC18C\uACC4",absoluteValue:"\uC808\uB300\uAC12",runningTotal:"\uB204\uACC4",difference:"\uCC28\uC774",percentOfTotal:"\uCD1D\uACC4\uC758 \uBE44\uC728",none:"\uC5C6\uC74C",year:"\uC5F0\uB3C4",quarter:"\uBD84\uAE30",month:"\uC6D4",day:"\uC77C",and:"\uADF8\uB9AC\uACE0 (And)",or:"\uB610\uB294 (Or)",noConditionsAdded:"\uCD94\uAC00\uB41C \uC870\uAC74\uC774 \uC5C6\uC2B5\uB2C8\uB2E4...",calculatedMeasureDesigner:"\uACC4\uC0B0\uB41C \uCE21\uC815\uAC12 \uB514\uC790\uC774\uB108",createFormulasWithoutCode:"\uCF54\uB4DC \uC791\uC131 \uC5C6\uC774 \uC218\uC2DD \uBC0F \uACC4\uC0B0\uC744 \uB9CC\uB4ED\uB2C8\uB2E4.",measureName:"\uCE21\uC815\uAC12 \uC774\uB984",format:"\uD615\uC2DD",numericStandard:"\uC22B\uC790(\uD45C\uC900)",numericDecimal:"\uC22B\uC790(\uC18C\uC218\uC810 1,486.15)",currencyTRY:"\uD1B5\uD654(TRY)",currencyUSD:"\uD1B5\uD654(USD)",percent:"\uBC31\uBD84\uC728(%)",expand:"\uD655\uC7A5",collapse:"\uCD95\uC18C",expandAll:"\uBAA8\uB450 \uD655\uC7A5",refreshData:"\uB370\uC774\uD130 \uC0C8\uB85C \uACE0\uCE68",filterBuilder:"\uD544\uD130 \uC791\uC131\uAE30",chartToggle:"\uCC28\uD2B8 \uBCF4\uAE30 \uC804\uD658",collapseAll:"\uBAA8\uB450 \uCD95\uC18C",sortByThisColumn:"\uC774 \uC5F4\uC744 \uAE30\uC900\uC73C\uB85C \uC815\uB82C",sortFieldByThisColumn:'\uC774 \uC5F4\uC744 \uAE30\uC900\uC73C\uB85C "{0}" \uC815\uB82C',removeAllSorting:"\uBAA8\uB4E0 \uC815\uB82C \uC81C\uAC70",sortAsc:"\uC624\uB984\uCC28\uC21C \uC815\uB82C",sortDesc:"\uB0B4\uB9BC\uCC28\uC21C \uC815\uB82C",clearSort:"\uC815\uB82C \uC9C0\uC6B0\uAE30",order:"\uC21C\uC11C",moveToStart:"\uC2DC\uC791\uC73C\uB85C \uC774\uB3D9",moveToEnd:"\uB05D\uC73C\uB85C \uC774\uB3D9",moveToLeft:"\uC67C\uCABD\uC73C\uB85C \uC774\uB3D9",moveToRight:"\uC624\uB978\uCABD\uC73C\uB85C \uC774\uB3D9",showFieldList:"\uD544\uB4DC \uBAA9\uB85D \uD45C\uC2DC",editCalculation:"\uACC4\uC0B0 \uD3B8\uC9D1",viewsAndReports:"\uC800\uC7A5\uB41C \uBDF0 \uBC0F \uBCF4\uACE0\uC11C",views:"\uBDF0",saveChangesOverwrite:"\uBCC0\uACBD \uC0AC\uD56D \uC800\uC7A5(\uB36E\uC5B4\uC4F0\uAE30)",saveAsCopy:"\uB2E4\uB978 \uC774\uB984\uC73C\uB85C \uC800\uC7A5(\uBCF5\uC0AC)",makeDefault:"\uAE30\uBCF8\uAC12\uC73C\uB85C \uC124\uC815",deleteReport:"\uBCF4\uACE0\uC11C \uC0AD\uC81C",deleteReportConfirm:"'{0}' \uBCF4\uACE0\uC11C\uB97C \uC0AD\uC81C\uD558\uC2DC\uACA0\uC2B5\uB2C8\uAE4C?",customExports:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uB0B4\uBCF4\uB0B4\uAE30",customPlugin:"\uC0AC\uC6A9\uC790 \uC9C0\uC815 \uD50C\uB7EC\uADF8\uC778",importCancelled:"\uAC00\uC838\uC624\uAE30\uAC00 \uCDE8\uC18C\uB418\uC5C8\uC2B5\uB2C8\uB2E4.",importPreviewTitle:"\uAC00\uC838\uC624\uAE30 \uBBF8\uB9AC \uBCF4\uAE30",importPreviewSubtitle:"{rows}\uAC1C \uD589 \u2022 {cols}\uAC1C \uC5F4\uC744 \uAC00\uC838\uC635\uB2C8\uB2E4",importPreviewFooter:"\uC5F4\uACFC \uC720\uD615\uC744 \uD655\uC778\uD55C \uD6C4 \uC9C4\uD589\uD558\uC138\uC694.",columns:"\uC5F4",includeColumn:"\uC774 \uC5F4 \uD3EC\uD568",dataPreview:"\uB370\uC774\uD130 \uBBF8\uB9AC \uBCF4\uAE30",applyImport:"\uAC00\uC838\uC624\uAE30",type_string:"\uD14D\uC2A4\uD2B8",type_number:"\uC22B\uC790",type_date:"\uB0A0\uC9DC",type_boolean:"\uBD80\uC6B8",reading:"\uD30C\uC77C \uC77D\uB294 \uC911\u2026",parsing:"\uAD6C\uBB38 \uBD84\uC11D \uC911\u2026",typing:"\uC720\uD615 \uAC10\uC9C0 \uC911\u2026",finalizing:"\uB9C8\uBB34\uB9AC \uC911\u2026",measureNamePlaceholder:"\uC608: \uC774\uC775\uB960",customFormat:"\uC0AC\uC6A9\uC790 \uC9C0\uC815\u2026",customPrefix:"\uC811\uB450\uC0AC",customSuffix:"\uC811\uBBF8\uC0AC",minFraction:"\uCD5C\uC18C \uC18C\uC218 \uC790\uB9BF\uC218",maxFraction:"\uCD5C\uB300 \uC18C\uC218 \uC790\uB9BF\uC218",calculationLevel:"\uACC4\uC0B0 \uC218\uC900",calcRowLevel:"\uD589 \uC218\uC900 (\uC6D0\uBCF8 \uB370\uC774\uD130)",calcSummaryLevel:"\uC694\uC57D \uC218\uC900 (\uC9D1\uACC4\uB428)",fields:"\uD544\uB4DC",noFieldsFound:"\uC774 \uC218\uC900\uC5D0 \uC0AC\uC6A9\uD560 \uC218 \uC788\uB294 \uD544\uB4DC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",deleteCalcField:"\uACC4\uC0B0 \uD544\uB4DC \uC0AD\uC81C",formula:"\uC218\uC2DD",formulaPlaceholder:"\uC608: [\uB9E4\uCD9C] - [\uC6D0\uAC00]",saveAndAdd:"\uC800\uC7A5 \uD6C4 \uCD94\uAC00",measureNameEmpty:"\uD544\uB4DC \uC774\uB984\uC744 \uC785\uB825\uD558\uC138\uC694.",formulaEmpty:"\uC218\uC2DD\uC744 \uC785\uB825\uD558\uC138\uC694.",formulaError:"\uC218\uC2DD \uC624\uB958"};var ar=null;function su(o){ar=o;}function at(){return ar}function st(o){let e=new Set,t=o.cellMatrix.keys;for(let u=0;u<t.length;u++)e.add(t[u]);let r=(u,i)=>{let n=[];for(let a of u){let s=i?o.rowIndexMap[a.key]:o.columnIndexMap[a.key];if(s===void 0){n.push(a);continue}if(i?e.has(s*67108864):e.has(s)){let c=a.children&&a.children.length>0?r(a.children,i):[];n.push({...a,children:c});}}return n};return [r(o.rowTree,true),r(o.colTree,false)]}function lt(o,e,t=false){let r=t||e.has(o.key);return !o.children||o.children.length===0||!r?1:o.children.reduce((u,i)=>u+lt(i,e,t),0)}function ct(o,e,t=false){if(!o||o.length===0)return 0;let r=0;for(let u of o){let i=t||e.has(u.key),n=0;i&&u.children&&u.children.length>0&&(n=ct(u.children,e,t)),n>r&&(r=n);}return r+1}function dt(o,e,t=false){let r=[],u=i=>{for(let n of i){let a=t||e.has(n.key);!(n.children&&n.children.length>0)||!a?r.push(n):u(n.children);}};return u(o),r}function pt(o,e,t,r,u=false){let i=ct(o,r,u),n=[],s=e.length>1&&t.dataFieldPosition==="columns",l=s?e.length:1;for(let d=0;d<i;d++)n.push([]);(s||o.length===0)&&n.push([]);let c=(d,p)=>{for(let m of d){let f=u||r.has(m.key),y=m.hasChildren??(m.children&&m.children.length>0),g=!y||!f,C=lt(m,r,u),x={node:m,caption:String(m.value||"(Blank)"),colSpan:C*l,rowSpan:g?i-p:1,isTotal:m.isTotal,fieldId:m.fieldId,colPath:m.key,hasChildren:y,isExpanded:f};if(n[p].push(x),g&&s)for(let A of e)n[i].push({node:null,caption:A.caption,colSpan:1,rowSpan:1,isTotal:false,fieldId:A.id,colPath:m.key});g||c(m.children,p+1);}};if(o.length>0)c(o,0);else if(s)for(let d of e)n[0].push({node:null,caption:d.caption,colSpan:1,rowSpan:1,isTotal:false,fieldId:d.id,colPath:""});if(t.showRowGrandTotals&&o.length>0&&(n[0].push({node:null,caption:"Grand Total",colSpan:l,rowSpan:i,isTotal:true,colPath:""}),s))for(let d of e)n[i].push({node:null,caption:d.caption,colSpan:1,rowSpan:1,isTotal:true,fieldId:d.id,colPath:""});return n.filter(d=>d.length>0)}function lu(o,e,t){let r=[],u=i=>{for(let n of i)r.push(n),(t||e.has(n.key))&&n.children.length>0&&u(n.children);};return u(o),r}function mt(o,e,t,r,u,i){let n=[],a=(l,c,d)=>{for(let p of l){let m=t||e.has(p.key),f=p.hasChildren??(p.children&&p.children.length>0),y=[...c];if(y[d]=String(p.value),!f||!m){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;n.push({pathValues:g,depth:d,key:p.key,isSubtotal:false,hasChildren:f,isExpanded:m,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}else {if(u&&i==="top"&&d<r-1){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;n.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}if(a(p.children,y,d+1),u&&i==="bottom"&&d<r-1){let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;n.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:new Array(r).fill(1),isFirstInGroup:new Array(r).fill(false)});}}}},s=new Array(r).fill(null);return a(o,s,0),cu(n,r),n}function cu(o,e){for(let t=0;t<e;t++){let r=0;for(;r<o.length;){let u=o[r].pathValues[t];if(u===null){o[r].rowSpans[t]=1,o[r].isFirstInGroup[t]=false,r++;continue}let i=r+1;for(;i<o.length&&o[i].pathValues[t]===u;){let a=true;for(let s=0;s<t;s++)if(o[i].pathValues[s]!==o[r].pathValues[s]){a=false;break}if(!a)break;i++;}let n=i-r;o[r].rowSpans[t]=n,o[r].isFirstInGroup[t]=true;for(let a=r+1;a<i;a++)o[a].rowSpans[t]=0,o[a].isFirstInGroup[t]=false;r=i;}}}function ft(o,e,t,r,u,i){let n=[],a=(l,c,d)=>{for(let p of l){let m=t||e.has(p.key),f=p.hasChildren??(p.children&&p.children.length>0),y=[...c];y[d]=String(p.value);let g=[...y];for(let C=d+1;C<r;C++)g[C]=null;n.push({pathValues:g,depth:d,key:p.key,isSubtotal:false,hasChildren:f,isExpanded:m,node:p,rowSpans:[1],isFirstInGroup:[true]}),m&&f&&(a(p.children,y,d+1),u&&i==="bottom"&&n.push({pathValues:g,depth:d,key:p.key,isSubtotal:true,hasChildren:true,isExpanded:true,node:p,rowSpans:[1],isFirstInGroup:[true]}));}},s=new Array(r).fill(null);return a(o,s,0),n}var xe=class o{worker;static sharedWorker=null;static workerErrorCount=0;static MAX_WORKER_ERRORS=3;static getOrCreateWorker(){if(o.sharedWorker&&o.workerErrorCount>=o.MAX_WORKER_ERRORS){try{o.sharedWorker.terminate();}catch{}o.sharedWorker=null,o.workerErrorCount=0;}return o.sharedWorker||(o.sharedWorker=ce("export",()=>{let e=()=>"./export.worker.js";return new URL(e(),import.meta.url)}),o.workerErrorCount=0,o.sharedWorker.onerror=()=>{o.workerErrorCount++;}),o.sharedWorker}static disposeWorker(){if(o.sharedWorker){try{o.sharedWorker.terminate();}catch{}o.sharedWorker=null,o.workerErrorCount=0;}}constructor(){this.worker=o.getOrCreateWorker();}async streamToCSV(e,t,r,u="tr-TR",i,n){let s=[];s.push(new Blob([new Uint8Array([239,187,191])]));try{for(let c=0;c<e.length;c+=5e3){if(n?.aborted)return;let d=e.slice(c,c+5e3),p=c===0,m=await this.processChunkInWorker(d,t,"csv",p,!1,u);s.push(new Blob([m],{type:"text/csv;charset=utf-8;"})),i?.(Math.min(95,Math.round((c+5e3)/e.length*95))),await new Promise(f=>setTimeout(f,0));}if(n?.aborted)return;let l=new Blob(s,{type:"text/csv;charset=utf-8;"});saveAs(l,`${r}.csv`),i?.(100);}catch(l){throw console.error("Export error",l),l}}async streamToExcelXML(e,t,r,u="tr-TR",i,n){let s=[];s.push(new Blob([new Uint8Array([239,187,191])]));try{for(let c=0;c<e.length;c+=5e3){if(n?.aborted)return;let d=e.slice(c,c+5e3),p=c===0,m=c+5e3>=e.length,f=await this.processChunkInWorker(d,t,"excel-xml",p,m,u);s.push(new Blob([f],{type:"application/vnd.ms-excel;charset=utf-8;"})),i?.(Math.min(95,Math.round((c+5e3)/e.length*95))),await new Promise(y=>setTimeout(y,0));}if(n?.aborted)return;let l=new Blob(s,{type:"application/vnd.ms-excel;charset=utf-8;"});saveAs(l,`${r}.xls`),i?.(100);}catch(l){throw console.error("Export error",l),l}}processChunkInWorker(e,t,r,u,i=false,n="tr-TR"){return new Promise((a,s)=>{let l=Math.random().toString(36).substring(7),c=setTimeout(()=>{this.worker.removeEventListener("message",d),o.workerErrorCount++,s(new Error("Export worker timed out"));},3e4),d=m=>{m.data.chunkId===l&&(clearTimeout(c),this.worker.removeEventListener("message",d),m.data.type==="error"?(o.workerErrorCount++,s(new Error(m.data.error))):a(m.data.payload));};this.worker.addEventListener("message",d);let p=t.map(m=>({id:m.id,caption:m.caption,dataField:m.dataField,format:m.format,dataType:m.dataType}));this.worker.postMessage({type:"process_chunk",chunkId:l,chunk:e,fields:p,format:r,isFirstChunk:u,isLastChunk:i,locale:n});})}};function du(o,e){if(!o||typeof o=="function")return;let t=o;if(t.style==="currency"){let r=t.currency||"TRY",u=t.minimumFractionDigits??2,i=u>0?"."+"0".repeat(u):"",a={TRY:"\u20BA",USD:"$",EUR:"\u20AC",GBP:"\xA3",JPY:"\xA5"}[r]||r;return `#,##0${i} "${a}"`}if(t.style==="percent"){let r=t.minimumFractionDigits??0;return `0${r>0?"."+"0".repeat(r):""}%`}if(t.style==="decimal"||!t.style){let r=t.minimumFractionDigits,u=t.maximumFractionDigits,i=t.useGrouping!==false;if(r!==void 0||u!==void 0){let n=r??u??2,a=n>0?"."+"0".repeat(n):"";return i?`#,##0${a}`:`0${a}`}}if(e==="date")return "dd/mm/yyyy"}function pu(o,e,t="tr-TR"){if(o==null||o==="")return "";if(typeof o=="number"&&e?.format){if(typeof e.format=="function")try{return e.format(o)}catch{return String(o)}try{return new Intl.NumberFormat(t,e.format).format(o)}catch{return String(o)}}return String(o)}var ht=new Map;function Ue(o,e,t="tr-TR"){if(o==null||o==="")return "";if(typeof o=="number"&&e?.format){if(typeof e.format=="function")try{return e.format(o)}catch{return String(o)}try{let r=`${e.id}_${t}`,u=ht.get(r);return u||(u=new Intl.NumberFormat(t,e.format),ht.set(r,u)),u.format(o)}catch{return String(o)}}return String(o)}function mu(o,e){if(!o.formula)return null;try{if(!o.formula(e,{rowPath:[],colPath:[],values:{},displayValues:{},isTotalCell:!1}))return null;let r=o.style||{},u={};return (r.color||r.fontWeight||r.fontSize)&&(u.font={},r.color&&(u.font.color={argb:lr(r.color)}),r.fontWeight==="bold"&&(u.font.bold=!0)),r.backgroundColor&&(u.fill={type:"pattern",pattern:"solid",fgColor:{argb:lr(r.backgroundColor)}}),u}catch{return null}}function lr(o){if(!o)return "FF000000";if(/^[0-9A-Fa-f]{8}$/.test(o))return o;if(o.startsWith("#")){let t=o.slice(1);if(t.length===6)return "FF"+t.toUpperCase();if(t.length===3)return "FF"+t.split("").map(r=>r+r).join("").toUpperCase();if(t.length===8)return t.toUpperCase()}let e=o.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);if(e){let t=parseInt(e[1]).toString(16).padStart(2,"0"),r=parseInt(e[2]).toString(16).padStart(2,"0"),u=parseInt(e[3]).toString(16).padStart(2,"0");return `FF${t}${r}${u}`.toUpperCase()}return "FF000000"}function fu(){ht.clear();}async function Ct(o,e,t,r,u,i,n,a="PivotExport",s="tr-TR",l){if(!r)return;let c=l?.fileName||a,d=l?.locale||s,p=l?.expandAll??false,m=l?.signal,f=l?.onProgress;if(m?.aborted)return;let y=t.filter(b=>b.area==="row").sort((b,B)=>(b.areaIndex||0)-(B.areaIndex||0)),g=t.filter(b=>b.area==="column").sort((b,B)=>(b.areaIndex||0)-(B.areaIndex||0)),C=t.filter(b=>b.area==="data").sort((b,B)=>(b.areaIndex||0)-(B.areaIndex||0)),x=e,A=l?.includeHiddenFields?t.filter(b=>b.area!=="chooser"):t.filter(b=>b.area==="row"||b.area==="column"||b.area==="data"),h=p?new Set(["*"]):i,v=p?new Set(["*"]):n,F=p,I=u.hideEmptySummaryCells?(()=>{let[b,B]=st(r);return {...r,rowTree:b,colTree:B}})():r;switch(o){case "excel-list":case "excel-pivot":case "pdf":{let b=at();if(!b){console.warn(`[pivotgrid] "${o}" export is an Enterprise feature \u2014 render EnterprisePivotGrid (or import @kanunilabs/pivotgrid-react-enterprise) to enable styled Excel/PDF export.`);return}await b({format:o,listRecords:x,visibleListFields:A,engineResult:I,rowFields:y,colFields:g,dataFields:C,layout:u,expandedPaths:h,expandedColPaths:v,allExpanded:F,fileName:c,locale:d,signal:m,onProgress:f});break}case "json":cr(x,c+"_List"),f?.(100);break;case "json-pivot":cr(bu(I,C),c+"_Pivot"),f?.(100);break;case "json-snapshot":gu(x,t,u,i,c+"_Snapshot"),f?.(100);break;case "xml":await Fu(x,c,f,m);break;case "csv":{await new xe().streamToCSV(x,A,c,d,f,m),m?.aborted||f?.(100);break}case "print":await Eu(I,y,g,C,u,h,v,F,c,d,m,f);break;case "clipboard":await Su(I,y,g,C,u,h,v,F,d),f?.(100);break}}function cr(o,e){let t=JSON.stringify(o,null,2);pr(t,"application/json",`${e}.json`);}function gu(o,e,t,r,u){let i={version:"1.0.0",type:"FULL_SNAPSHOT",timestamp:new Date().toISOString(),data:o,fields:e,layout:t,expandedPaths:Array.from(r)},n=JSON.stringify(i,null,2);pr(n,"application/json",`${u}.json`);}var Cu=4*1024*1024,yu=1e4;async function Fu(o,e,t,r){let u=await vu(o,t,r);!u||r?.aborted||(saveAs(new Blob(u,{type:"application/xml"}),`${e}.xml`),t?.(100));}async function vu(o,e,t){let r=[`<?xml version="1.0" encoding="UTF-8"?>
|
|
6
6
|
<Records>
|
|
7
|
-
`],
|
|
8
|
-
`);for(let d of Object.keys(c)){let p=
|
|
7
|
+
`],u="",i=-1,n=false,a=()=>{u&&(r.push(u),u="",n=true);},s=l=>{u.length>0&&u.length+l.length>Cu&&a(),u+=l;};for(let l=0;l<o.length;l++){if(t?.aborted)return null;let c=o[l]??{};s(` <Record>
|
|
8
|
+
`);for(let d of Object.keys(c)){let p=Au(d),m=c[d],f=m==null?"":String(m);s(` <${p}>${dr(f)}</${p}>
|
|
9
9
|
`);}if(s(` </Record>
|
|
10
|
-
`),(l+1)%
|
|
10
|
+
`),(l+1)%yu===0||l===o.length-1){let d=o.length===0?99:Math.min(99,Math.floor((l+1)/o.length*99));d>i&&(i=d,e?.(d));}if(n&&(n=false,await new Promise(d=>setTimeout(d,0)),t?.aborted))return null}return t?.aborted?null:(a(),r.push("</Records>"),r)}function Au(o){let e=String(o).replace(/[^a-zA-Z0-9_.-]/g,"_");return /^[a-zA-Z_]/.test(e)?e:`_${e||"field"}`}function dr(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g,"")}function pr(o,e,t){let r=new Blob([o],{type:e}),u=URL.createObjectURL(r),i=document.createElement("a");i.href=u,i.download=t,i.click(),URL.revokeObjectURL(u);}function Ke(o,e,t,r,u,i,n=true){let a=o.rowIndexMap[e]??-1,s=o.columnIndexMap[t]??-1;if(a!==-1&&s!==-1){let l=a*67108864+s,c=i.get(l);if(c!==void 0){let d=r||u[0]?.id;if(d){let p=u.findIndex(m=>m.id===d);if(p!==-1){let m=o.cellMatrix,f=c*u.length+p;return n&&m.displaySums?m.displaySums[f]:m.sums[f]}}}}return ""}function xu(o,e){if(!e.conditionalFormatting)return null;for(let t of e.conditionalFormatting)if(t.type==="expression"&&t.formula){let r=false;try{r=!!t.formula(o,{rowPath:[],colPath:[],values:{},displayValues:{},isTotalCell:!1});}catch{r=false;}if(r){let u=t.style||{},i=u.fontWeight;return {fillColor:typeof u.backgroundColor=="string"?u.backgroundColor:void 0,textColor:typeof u.color=="string"?u.color:void 0,bold:i==="bold"||i===700||i==="700"||typeof i=="number"&&i>=600}}}return null}function wu(o){if(!o)return null;if(o.startsWith("#")){let t=o.slice(1);if(t.length===3&&(t=t.split("").map(r=>r+r).join("")),t.length===6){let r=parseInt(t,16);return [r>>16&255,r>>8&255,r&255]}}let e=o.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)/);return e?[parseInt(e[1]),parseInt(e[2]),parseInt(e[3])]:null}function yt(o){let e=new Map;if(o?.cellMatrix?.keys){let t=o.cellMatrix.keys;for(let r=0;r<t.length;r++)e.set(t[r],r);}return e}function mr(o,e,t,r,u){let i=[],n=dt(o.colTree,r,u);if(n.length===0)return e.length>0?e.forEach(a=>i.push(["Grand Total",a.id])):i.push(["Grand Total"]),i;for(let a of n)e.length>0?e.forEach(s=>i.push([...a.key.split("|"),s.id])):i.push(a.key.split("|"));return t.showRowGrandTotals&&(e.length>0?e.forEach(a=>i.push(["Grand Total",a.id])):i.push(["Grand Total"])),i}function je(o,e,t){return e&&e.dataType==="date"&&o!==null&&o!==void 0&&o!==""?He.format(o,"grid",t,e.groupInterval):o}function fr(o,e,t,r,u){let i=t.rowHeaderLayout==="tree",n=t.showRowTotals??true,a=t.totalsPosition??"bottom";return i?{flatRows:ft(o.rowTree,r,u,e.length||1,n,a),treeMode:true,rowLabelCols:1}:{flatRows:mt(o.rowTree,r,u,e.length,n,a),treeMode:false,rowLabelCols:Math.max(1,e.length)}}function hr(o,e,t,r,u){if(t){let n=o.depth,a=o.pathValues[n],s=a!=null?je(a,e[n],u):"",l=" ".repeat(n);return [o.isSubtotal?`${l}Total: ${String(s??"")}`:`${l}${String(s??"")}`]}let i=new Array(r).fill("");for(let n=0;n<r;n++)if(o.isFirstInGroup[n]){let a=o.pathValues[n];i[n]=a?je(a,e[n],u):o.isSubtotal?"Total":"";}return i}function gt(o,e){let t=o,r=e.length>0?o[o.length-1]:"";return e.length>0&&(t=o.slice(0,-1)),{cHash:t[0]==="Grand Total"?"":t.join("|"),dfId:r}}var gr=()=>new Promise(o=>setTimeout(o,0)),Cr=2e4;async function Ft(o,e,t,r,u,i,n=false,a="tr-TR",s=false,l=[],c,d){let p=[],m=new Map(l.map(w=>[w.id,w])),{flatRows:f,treeMode:y,rowLabelCols:g}=fr(o,e,r,u,n),C=pt(o.colTree,t,r,i,n),x=C.length,A=g,v=s&&t.some(w=>w.conditionalFormatting&&w.conditionalFormatting.length>0)?[]:null;for(let w=0;w<x;w++){let P=new Array(A).fill("");w===x-1&&(y?P[0]=e.map(R=>R.caption).join(" / "):e.forEach((R,T)=>{P[T]=R.caption;})),C[w].forEach(R=>{let T=R.fieldId?m.get(R.fieldId):void 0,M=R.isTotal?R.caption:je(R.caption,T,a);for(let N=0;N<R.colSpan;N++)P.push(N===0?M:"");}),p.push(P),v&&v.push(new Array(P.length).fill(null));}let F=yt(o),I=mr(o,t,r,i,n),b=new Map(t.map(w=>[w.id,w])),B=f.length;for(let w=0;w<B;w++){let P=f[w],R=hr(P,e,y,g,a),T=v?new Array(A).fill(null):null,N=(P.isSubtotal?P.pathValues.slice(0,P.depth).map(String):P.node.key.split("|")).join("|");for(let L=0;L<I.length;L++){let{cHash:K,dfId:q}=gt(I[L],t),J=Ke(o,N,K,q,t,F),U=b.get(q);if(s&&typeof J=="number"?R.push(Ue(J,U,a)):R.push(J??""),T){let S=Ke(o,N,K,q,t,F,false);T.push(typeof S=="number"&&U?.conditionalFormatting?xu(S,U):null);}}if(p.push(R),v&&T&&v.push(T),(w+1)%Cr===0&&w+1<B){if(c?.aborted)return null;d?.(Math.round((w+1)/B*100)),await gr();}}if(c?.aborted)return null;if(r.showColumnGrandTotals){let w=new Array(A).fill("");w[0]="Grand Total";for(let P=0;P<I.length;P++){let{cHash:R,dfId:T}=gt(I[P],t),M=Ke(o,"",R,T,t,F);if(s&&typeof M=="number"){let N=b.get(T);w.push(Ue(M,N,a));}else w.push(M??"");}p.push(w),v&&v.push(new Array(w.length).fill(null));}return {aoa:p,styles:v}}async function Eu(o,e,t,r,u,i,n,a,s,l="tr-TR",c,d){if(c?.aborted)return;let p=await Ft(o,e,r,u,i,n,a,l,true,t,c,v=>d?.(Math.round(v*.7)));if(!p||c?.aborted)return;let{aoa:m,styles:f}=p,y=Math.max(1,t.length)+(r.length>1&&u.dataFieldPosition==="columns"?1:0),g=`<!DOCTYPE html>
|
|
11
11
|
<html>
|
|
12
12
|
<head>
|
|
13
13
|
<meta charset="utf-8">
|
|
@@ -56,5 +56,5 @@ import*as Me from'xlsx';import {saveAs}from'file-saver';var De={showColumnGrandT
|
|
|
56
56
|
<h1>${$e(s)}</h1>
|
|
57
57
|
<div class="meta">Generated on: ${new Date().toLocaleString()}</div>
|
|
58
58
|
</div>
|
|
59
|
-
<table>`;g+="<thead>";for(let
|
|
60
|
-
`);try{await navigator.clipboard.writeText(c);}catch{let d=document.createElement("textarea");d.value=c,d.style.cssText="position:fixed;left:-9999px;top:-9999px;opacity:0",document.body.appendChild(d),d.select();try{document.execCommand("copy");}catch{}document.body.removeChild(d);}}function Po(i,e){let t=yt(i),r={};if(e&&e.length>0){let o=i.rowIndexMap[""]??-1,n=i.columnIndexMap[""]??-1;if(o!==-1&&n!==-1){let a=o*67108864+n,u=t.get(a);if(u!==void 0)for(let s=0;s<e.length;s++)r[e[s].id]=i.cellMatrix.sums[u*e.length+s];}}return {rowTree:i.rowTree,colTree:i.colTree,grandTotal:r,metadata:{rowCount:Object.keys(i.rowIndexMap).length,colCount:Object.keys(i.columnIndexMap).length,cellCount:i.cellMatrix.keys.length,exportedAt:new Date().toISOString()}}}var Ae=class{static async exportData({format:e,exportOptions:t,controllerOptions:r,state:o,emitExporting:n}){let a={format:e,cancel:false};if(r.onExporting?.(a),n(a),a.cancel)return;let u=o.engineResult||{rowTree:[],colTree:[],cellMatrix:{keys:new Float64Array,sums:new Float64Array,counts:new Int32Array},rowIndexMap:{},columnIndexMap:{},cardinalityMap:{}},s=t?.applyFilters?ae(r.data,o.fields,o.layout.prefilter):r.data,l=r.registry?.getPluginsByType("exporter").find(p=>p.id===e||p.id===`exporter-${e}`);if(l?.exportFunction){l.exportFunction(s,{fields:o.fields,engineResult:u,layout:o.layout,expandedPaths:new Set(o.expandedPaths),expandedColPaths:new Set(o.expandedColPaths)});return}let c=t?.fileName||"PivotExport",d=t?.locale||r.locale||"tr-TR";await Ct(e,s,o.fields,u,o.layout,o.expandedPaths,o.expandedColPaths,c,d,t);}};var yr=["row","column","data","filter","chooser"],G=class{static normalizeAreaIndexes(e){let t=[...e];return yr.forEach(r=>{t.filter(n=>n.area===r).sort((n,a)=>(n.areaIndex||0)-(a.areaIndex||0)).forEach((n,a)=>{let u=t.findIndex(s=>s.id===n.id);u!==-1&&(t[u]={...t[u],areaIndex:a});});}),t}static sortField(e,t,r){return e.map(o=>o.id===t?{...o,sortOrder:r,sortBySummaryField:void 0,sortBySummaryPath:void 0}:o)}static sortFieldBySummary(e,t,r,o){return e.map(n=>n.id===t?{...n,sortOrder:"desc",sortBySummaryField:r,sortBySummaryPath:o}:n)}static clearAllSorting(e){return e.map(t=>({...t,sortOrder:void 0,sortBySummaryField:void 0,sortBySummaryPath:void 0}))}static updateField(e,t){return e.map(r=>r.id===t.id?t:r)}static applyFilter(e,t,r,o){return e.map(n=>n.id===t?{...n,filterValues:r,filterType:o}:n)}static clearFilter(e,t){return e.map(r=>r.id===t?{...r,filterValues:void 0,filterType:void 0}:r)}static removeField(e,t){return this.normalizeAreaIndexes(e.map(r=>r.id===t?{...r,area:"chooser",areaIndex:0}:r))}static deleteField(e,t){return this.normalizeAreaIndexes(e.filter(r=>r.id!==t))}static changeFieldArea(e,t,r){if(!e.find(a=>a.id===t))return e;let n=e.filter(a=>a.area===r).length;return this.normalizeAreaIndexes(e.map(a=>a.id===t?{...a,area:r,areaIndex:n}:a))}static moveFieldByDirection(e,t,r){let o=e.find(c=>c.id===t);if(!o||o.area==="chooser")return e;let n=e.filter(c=>c.area===o.area).sort((c,d)=>(c.areaIndex||0)-(d.areaIndex||0)),a=n.findIndex(c=>c.id===t);if(a===-1)return e;let u=a;if(r==="start"&&(u=0),r==="end"&&(u=n.length-1),r==="left"&&(u=Math.max(0,a-1)),r==="right"&&(u=Math.min(n.length-1,a+1)),u===a)return e;let s=[...n];s.splice(a,1),s.splice(u,0,o);let l=[...e];return s.forEach((c,d)=>{let p=l.findIndex(m=>m.id===c.id);p!==-1&&(l[p]={...c,areaIndex:d});}),l}static async moveFieldFromDrop(e,t){let r=t.fieldId.replace("chooser-",""),o=e.findIndex(l=>l.id===r);if(o===-1||!t.overId)return e;let n=e[o],a=t.dragIntent,u=n.area;if(a.intent==="append"&&a.targetArea)u=a.targetArea.replace("chooser-","");else if(a.targetId&&(a.intent==="before"||a.intent==="after"))u=e.find(l=>l.id===a.targetId)?.area||n.area;else {let l=t.overId.replace("chooser-","");this.isArea(l)&&(u=l);}if(t.validateMove){let l=false,c={fieldId:n.id,sourceArea:n.area||"chooser",targetArea:u||"chooser",newIndex:0,cancel:()=>{l=true;},get isCanceled(){return l},set isCanceled(d){l=d;}};if(await t.validateMove(c),l)return e}let s=[...e];if(a.intent==="append"&&a.targetArea){let l=a.targetArea.replace("chooser-",""),c=s.filter(d=>d.area===l&&d.id!==r);s[o]={...n,area:l,areaIndex:c.length};}else if(a.targetId&&(a.intent==="before"||a.intent==="after")){if(a.targetId===r)return e;let l=e.find(c=>c.id===a.targetId);if(l){let c=l.area;s.splice(o,1);let d=s.filter(m=>m.area===c).sort((m,f)=>(m.areaIndex||0)-(f.areaIndex||0)),p=d.findIndex(m=>m.id===a.targetId);if(p!==-1){let m=a.intent==="before"?p:p+1;d.splice(m,0,{...n,area:c}),d.forEach((f,y)=>{let g={...f,areaIndex:y},C=s.findIndex(x=>x.id===f.id);C!==-1?s[C]=g:s.push(g);});}}}else {let l=t.overId.replace("chooser-","");if(this.isArea(l)){let c=s.filter(d=>d.area===l&&d.id!==r);s[o]={...n,area:l,areaIndex:c.length};}}return this.normalizeAreaIndexes(s)}static calculateDropIntent(e,t,r,o,n,a="horizontal"){let u=a==="horizontal"?r.width:r.height,s=a==="horizontal"?e-r.left:t-r.top,l=Math.min(40,u*.5),c=u-l;return s<=l?"before":s>=c?n?"append":"after":o==="before"||o==="after"?o:s<u/2?"before":"after"}static isArea(e){return yr.includes(e)}};var Ft=1;function vr(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID().replace(/-/g,"").toLowerCase();let i=new Uint8Array(16);return crypto.getRandomValues(i),i[6]=i[6]&15|64,i[8]=i[8]&63|128,Array.from(i,e=>e.toString(16).padStart(2,"0")).join("")}var Se=class{storageKey;constructor(e){this.storageKey=e;}getReports(){try{let e=localStorage.getItem(this.storageKey);if(e)return JSON.parse(e).map(r=>{let o={...r};return o.schemaVersion||(o.schemaVersion=0),o.schemaVersion<1&&(o.state&&o.state.layout&&(o.state.layout.showFilterArea===void 0&&(o.state.layout.showFilterArea=!0),o.state.layout.showFooter===void 0&&(o.state.layout.showFooter=!0)),o.schemaVersion=1),o.schemaVersion=Ft,o.state&&o.state.fields&&(o.state.fields=o.state.fields.map(n=>({...n,filterValues:n.filterValues?new Set(n.filterValues):void 0}))),o.state&&o.state.expandedPaths&&(o.state.expandedPaths=Array.isArray(o.state.expandedPaths)?o.state.expandedPaths:Array.from(o.state.expandedPaths||[])),o.state&&o.state.expandedColPaths&&(o.state.expandedColPaths=Array.isArray(o.state.expandedColPaths)?o.state.expandedColPaths:Array.from(o.state.expandedColPaths||[])),o})}catch(e){console.error("Failed to load pivot reports:",e);}return []}getDefaultReport(){return this.getReports().find(t=>t.isDefault)||null}saveReport(e,t,r=false){let o=this.getReports();r&&o.forEach(a=>a.isDefault=false);let n={id:vr(),name:e,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),isDefault:r,schemaVersion:Ft,state:t};return o.push(n),this.persist(o),n}updateReport(e,t){let r=this.getReports(),o=r.findIndex(n=>n.id===e);return o===-1?null:(r[o]={...r[o],updatedAt:new Date().toISOString(),state:t},this.persist(r),r[o])}saveAs(e,t){let r=this.getReports(),o=r.find(a=>a.id===e);if(!o)return null;let n={...o,id:vr(),name:t,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),isDefault:false,schemaVersion:Ft};return r.push(n),this.persist(r),n}deleteReport(e){let t=this.getReports();t=t.filter(r=>r.id!==e),this.persist(t);}setDefaultReport(e){let t=this.getReports();t.forEach(r=>{r.isDefault=r.id===e;}),this.persist(t);}persist(e){try{let t=e.map(r=>{let o={...r.state,fields:r.state.fields.map(n=>({...n,filterValues:n.filterValues?Array.from(n.filterValues):void 0})),expandedPaths:Array.isArray(r.state.expandedPaths)?r.state.expandedPaths:Array.from(r.state.expandedPaths||[]),expandedColPaths:Array.isArray(r.state.expandedColPaths)?r.state.expandedColPaths:Array.from(r.state.expandedColPaths||[]),chartState:r.state.chartState?{...r.state.chartState,processCell:void 0}:void 0};return {...r,state:o}});localStorage.setItem(this.storageKey,JSON.stringify(t));}catch(t){console.error("Failed to save pivot reports:",t);}}};var Ee=class{manager;constructor(e){this.manager=new Se(e);}getReports(){return this.manager.getReports()}getDefaultReport(){return this.manager.getDefaultReport()}saveReport(e,t,r){return this.manager.saveReport(e,t,r)}updateReport(e,t){return this.manager.updateReport(e,t)}deleteReport(e){return this.manager.deleteReport(e),this.getReports()}setDefaultReport(e){return this.manager.setDefaultReport(e),this.getReports()}};function Fr(i,e){let t=[],r=0;for(;r<i.length;){if(/\s/.test(i[r])){r++;continue}let o=i.slice(r).match(/^__FIELD_(\d+)__/);if(o){let n=parseInt(o[1],10);if(n>=e.length)throw new Error(`Invalid field index: ${n}`);t.push({type:"field",key:e[n]}),r+=o[0].length;continue}if(/\d/.test(i[r])||i[r]==="."&&r+1<i.length&&/\d/.test(i[r+1])){let n="";for(;r<i.length&&/[\d.]/.test(i[r]);)n+=i[r++];t.push({type:"num",value:parseFloat(n)});continue}if("+-*/%".includes(i[r])){t.push({type:"op",value:i[r++]});continue}if(i[r]==="("){t.push({type:"paren",value:"("}),r++;continue}if(i[r]===")"){t.push({type:"paren",value:")"}),r++;continue}throw new Error(`Unexpected character: '${i[r]}'`)}return t}function wr(i){let e=0,t=()=>i[e],r=()=>i[e++];function o(){let c=t();return c?.type==="op"?c.value:null}function n(){let c=a(),d;for(;(d=o())&&(d==="+"||d==="-");){r();let p=a(),m=c,f=p;c=d==="+"?y=>m(y)+f(y):y=>m(y)-f(y);}return c}function a(){let c=u(),d;for(;(d=o())&&"*/%".includes(d);){r();let p=u(),m=c,f=p,y=d;y==="*"?c=g=>m(g)*f(g):y==="/"?c=g=>{let C=f(g);return C!==0?m(g)/C:0}:c=g=>{let C=f(g);return C!==0?m(g)%C:0};}return c}function u(){let c=t();if(c?.type==="op"&&c.value==="-"){r();let d=u();return p=>-d(p)}return c?.type==="op"&&c.value==="+"?(r(),u()):s()}function s(){let c=t();if(!c)throw new Error("Unexpected end of expression");if(c.type==="num"){r();let d=c.value;return ()=>d}if(c.type==="field"){r();let d=c.key;return p=>Number(p[d])||0}if(c.type==="paren"&&c.value==="("){r();let d=n(),p=t();if(!p||p.type!=="paren"||p.value!==")")throw new Error("Missing closing parenthesis");return r(),d}throw new Error(`Unexpected token: ${JSON.stringify(c)}`)}let l=n();if(e<i.length)throw new Error(`Unexpected token after expression: ${JSON.stringify(i[e])}`);return l}function wt(i,e){let t=i,r=[];e.forEach((n,a)=>{let u=a.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),s=new RegExp(`\\[${u}\\]`,"g"),l=`__FIELD_${r.length}__`;r.push(n),t=t.replace(s,l);});let o=t.replace(/__FIELD_\d+__/g,"0");if(!/^[\d\s+\-*/%().]+$/.test(o))return console.warn("[PivotGrid] Unsafe formula rejected:",i),null;try{let n=Fr(t,r),a=wr(n);return a({}),a}catch(n){return console.error("[PivotGrid] Formula compilation error:",i,n),null}}function To(i,e){let t=i,r=[];e.forEach((u,s)=>{let l=s.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),c=new RegExp(`\\[${l}\\]`,"g"),d=`__FIELD_${r.length}__`;r.push(u),t=t.replace(c,d);});let o=t.replace(/__FIELD_\d+__/g,"0");if(!/^[\d\s+\-*/%().]+$/.test(o))throw new Error("Formula contains unsafe characters");let n=Fr(t,r);wr(n)({});}function Do(i){return i.forEach(e=>{if(!e.isCalculated||!e.formulaString||!e.formulaType)return;let t=new Map;i.forEach(o=>{let n=o.caption||"";if(!n)return;let a=e.formulaType==="row"?String(o.dataField||o.id):String(o.id);t.set(n,a);});let r=wt(e.formulaString,t);r&&(e.formulaType==="row"?e.calculateExpression=r:e.calculateSummaryExpression=r);}),i}function Ro(i,e){if(!i)return e;let t=i.map(r=>({...e.find(n=>n.id===r.id)||{},...r,filterValues:r.filterValues?new Set(r.filterValues):void 0}));return Do(t)}function Io(i){return i.map(e=>({id:e.id,area:e.area,areaIndex:e.areaIndex,sortOrder:e.sortOrder,sortBySummaryField:e.sortBySummaryField,sortBySummaryPath:e.sortBySummaryPath,filterValues:e.filterValues?Array.from(e.filterValues):void 0,filterType:e.filterType,summaryType:e.summaryType,isCalculated:e.isCalculated,caption:e.isCalculated?e.caption:void 0,dataType:e.isCalculated?e.dataType:void 0,formulaString:e.isCalculated?e.formulaString:void 0,formulaType:e.isCalculated?e.formulaType:void 0,format:e.isCalculated?e.format:void 0}))}var be=class{snapshot;listeners=new Set;storageKey;persistScheduled=false;constructor(e,t){this.storageKey=`kanunilabs-pivot-${e}`,this.snapshot=this.createInitialSnapshot(e,t);}getSnapshot=()=>this.snapshot;subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));setState(e){this.snapshot={...this.snapshot,...e},this.schedulePersist(),this.listeners.forEach(t=>t());}setFields(e){this.setState({fields:e});}setLayout(e){this.setState({layout:{...this.snapshot.layout,...e}});}setExpandedPaths(e){this.setState({expandedPaths:new Set(e)});}setExpandedColPaths(e){this.setState({expandedColPaths:new Set(e)});}setSelectionStats(e){this.setState({selectionStats:e});}setImportStatus(e){this.setState({importStatus:e});}setImportPreview(e){this.setState({importPreview:e});}createInitialSnapshot(e,t){let r=t,o={...De},n=new Set,a=new Set,u={};try{let s=localStorage.getItem(this.storageKey);if(s){let l=JSON.parse(s);r=Ro(l.fields,t),o={...De,...l.layout||{}},n=l.expandedPaths?new Set(l.expandedPaths):n,a=l.expandedColPaths?new Set(l.expandedColPaths):a,u=l.columnWidths||{};}}catch(s){console.error("Failed to load pivot state:",s);}return {gridId:e,fields:r,layout:o,expandedPaths:n,expandedColPaths:a,columnWidths:u,engineResult:null,isBuilding:false,buildProgress:0,engineError:null,selectionStats:null,reports:[],activeReportId:null,importStatus:{isOpen:false,status:"loading",title:"",messages:[]},importPreview:null,drag:{activeId:null,targetId:null,targetArea:null,intent:null}}}schedulePersist(){if(this.persistScheduled)return;this.persistScheduled=true;let e=()=>{this.persistScheduled=false,this.persist();};typeof requestIdleCallback=="function"?requestIdleCallback(e,{timeout:1e3}):setTimeout(e,200);}persist(){try{let e=this.snapshot;localStorage.setItem(this.storageKey,JSON.stringify({fields:Io(e.fields),layout:e.layout,columnWidths:e.columnWidths,expandedPaths:Array.from(e.expandedPaths),expandedColPaths:Array.from(e.expandedColPaths)}));}catch(e){console.error("Failed to save pivot state:",e);}}};var xt=class{store;events=new _e;options;reportService;engineService;importManager=new ve;importAbort;pendingImportRows=null;disposed=false;constructor(e){this.options=this.normalizeOptions(e),this.store=new be(this.options.gridId,this.options.initialFields),this.reportService=new Ee(this.options.gridId),this.engineService=new we({getOptions:()=>this.options,getState:()=>this.getState(),getAreaFields:o=>this.getAreaFields(o),setState:o=>this.setState(o),onEngineStarted:o=>this.events.emit("engineStarted",o),onEngineCompleted:o=>this.events.emit("engineCompleted",o),onEngineError:o=>this.events.emit("engineError",o)});let t=this.options.controlledFields||this.getState().fields,r=this.options.controlledLayout||this.getState().layout;this.store.setState({fields:t,layout:r,reports:this.reportService.getReports()}),this.loadDefaultReport(),this.engineService.refresh();}subscribe=e=>this.store.subscribe(e);getSnapshot=()=>this.store.getSnapshot();getState(){return this.store.getSnapshot()}on(e,t){return this.events.on(e,t)}updateOptions(e){if(this.disposed)return;let t=this.options;this.options=this.normalizeOptions({...this.options,...e});let r={};this.options.controlledFields&&this.options.controlledFields!==t.controlledFields&&(r.fields=this.options.controlledFields),this.options.controlledLayout&&this.options.controlledLayout!==t.controlledLayout&&(r.layout=this.options.controlledLayout),Object.keys(r).length>0&&this.setState(r),this.engineService.refresh();}setFields(e){this.commitFields(G.normalizeAreaIndexes(e));}updateField(e){this.commitFields(G.updateField(this.getState().fields,e));}deleteField(e){this.commitFields(G.deleteField(this.getState().fields,e));}changeFieldArea(e,t){this.commitFields(G.changeFieldArea(this.getState().fields,e,t));}removeField(e){this.commitFields(G.removeField(this.getState().fields,e));}moveField(e,t){this.commitFields(G.moveFieldByDirection(this.getState().fields,e,t));}sortField(e,t){this.commitFields(G.sortField(this.getState().fields,e,t));}sortFieldBySummary(e,t,r){this.commitFields(G.sortFieldBySummary(this.getState().fields,e,t,r));}clearAllSorting(){this.commitFields(G.clearAllSorting(this.getState().fields));}applyFilter(e,t,r){this.commitFields(G.applyFilter(this.getState().fields,e,t,r));}clearFilter(e){this.commitFields(G.clearFilter(this.getState().fields,e));}setLayout(e){this.store.setLayout(e),this.options.onLayoutChange?.(this.getState().layout),this.emitState(),this.engineService.refresh();}toggleExpanded(e){let t=new Set(this.getState().expandedPaths);t.has(e)?t.delete(e):t.add(e),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}expandPaths(e){let t=new Set(this.getState().expandedPaths);e.forEach(r=>t.add(r)),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}collapsePaths(e){let t=new Set(this.getState().expandedPaths);e.forEach(r=>t.delete(r)),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}setExpandedPaths(e){this.store.setExpandedPaths(e),this.emitState(),this.engineService.computeIfReady();}toggleColExpanded(e){let t=new Set(this.getState().expandedColPaths);t.has(e)?t.delete(e):t.add(e),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}expandColPaths(e){let t=new Set(this.getState().expandedColPaths);e.forEach(r=>t.add(r)),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}collapseColPaths(e){let t=new Set(this.getState().expandedColPaths);e.forEach(r=>t.delete(r)),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}setExpandedColPaths(e){this.store.setExpandedColPaths(e),this.emitState(),this.engineService.computeIfReady();}expandAll(){let{engineResult:e}=this.getState();if(!e){this.store.setState({expandedPaths:new Set(["*"]),expandedColPaths:new Set(["*"])}),this.emitState(),this.engineService.computeIfReady();return}let t=[],r=[];this.collectNodePaths(e.rowTree,t),this.collectNodePaths(e.colTree,r),this.store.setState({expandedPaths:new Set(t),expandedColPaths:new Set(r)}),this.emitState(),this.engineService.computeIfReady();}collapseAll(){this.store.setState({expandedPaths:new Set,expandedColPaths:new Set}),this.emitState(),this.engineService.computeIfReady();}setColumnWidths(e){this.store.setState({columnWidths:e}),this.emitState();}setSelectionStats(e){this.store.setSelectionStats(e),this.emitState();}setDragActive(e){this.setDragState({activeId:e,targetId:null,targetArea:null,intent:null});}setDragIntent(e,t,r){let o=this.getState().drag;o.targetId===e&&o.targetArea===t&&o.intent===r||this.setDragState({...o,targetId:e,targetArea:t,intent:r});}resetDrag(){this.setDragState({activeId:null,targetId:null,targetArea:null,intent:null});}calculateDropIntent(e,t,r,o,n,a){return G.calculateDropIntent(e,t,r,o,n,a)}async commitDrag(e,t){let r=this.getState().drag,o=await G.moveFieldFromDrop(this.getState().fields,{fieldId:e,overId:t,dragIntent:r,validateMove:this.options.onFieldMove});this.resetDrag(),o!==this.getState().fields&&this.commitFields(o);}importFile(e,t){return this.runImport(t,r=>this.importManager.processFileStreaming(e,r))}importFiles(e,t){return this.runImport(t,r=>this.importManager.processFiles(e,r))}importFromUrl(e,t,r){return this.runImport(t,o=>this.importManager.processFromUrl(e,{...o,fetchInit:r}))}importData(e,t){return this.runImport(t,r=>this.importManager.processFromData(e,r))}importText(e,t){return this.runImport(t,r=>this.importManager.processFromText(e,r))}async runImport(e,t){this.importAbort?.abort();let r=new AbortController;this.importAbort=r,this.setImportStatus({isOpen:true,status:"loading",title:e.initializing,messages:[e.processing],progress:0,phase:"reading",cancellable:true});try{let{snapshot:o,validation:n,cancelled:a}=await t({signal:r.signal,onProgress:l=>{if(this.importAbort!==r||r.signal.aborted)return;let c=this.getState().importStatus;this.setImportStatus({...c,progress:l.percent,phase:l.phase});}});if(a||r.signal.aborted){this.showImportCancelled(e);return}if(!n.isValid){this.setImportStatus({isOpen:!0,status:"error",title:e.importError,messages:n.errors,cancellable:!1});return}let u=o.type==="DATA_ONLY"&&Array.isArray(o.data);if(this.options.previewImport&&u&&this.options.onImportData){this.openImportPreview(o.data,o.fields??[],n.warnings);return}o.fields&&this.setFields(o.fields),o.layout&&this.setLayout(o.layout),o.expandedPaths&&this.setExpandedPaths(o.expandedPaths);let s=[...n.warnings];o.data&&(this.options.onImportData?this.options.onImportData(o.data):s.push(e.dataImportUnsupported)),this.setImportStatus({isOpen:!0,status:s.length>0?"warning":"success",title:s.length>0?e.importWarning:e.importSuccess,messages:s.length>0?s:[e.importSuccess],progress:100,cancellable:!1});}catch(o){if(r.signal.aborted){this.showImportCancelled(e);return}this.setImportStatus({isOpen:true,status:"error",title:e.importError,messages:[o.message],cancellable:false});}finally{this.importAbort===r&&(this.importAbort=void 0);}}cancelImport(){this.importAbort?.abort();}showImportStatus(e,t,r){this.setImportStatus({isOpen:true,status:e,title:t,messages:r,cancellable:false});}openImportPreview(e,t,r){this.pendingImportRows=e,this.setImportStatus({isOpen:false,status:"loading",title:"",messages:[]}),this.store.setImportPreview({fields:(t??[]).map(o=>({dataField:String(o.dataField),caption:o.caption??String(o.dataField),dataType:o.dataType??"string"})),sample:e.slice(0,50),rowCount:e.length,warnings:r});}commitImport(e,t){let r=this.pendingImportRows,o=this.getState().importPreview;if(!r||!o)return;let n=r,a=o.fields.map(l=>({...l}));if(e&&e.length){let l=e.filter(p=>p.include!==false),c=new Map(o.fields.map(p=>[p.dataField,p.dataType])),d=l.filter(p=>p.dataType!==c.get(p.dataField));d.length>0&&(n=r.map(p=>{let m={...p};for(let f of d)m[f.dataField]=he(m[f.dataField],f.dataType);return m})),a=l.map(p=>({dataField:p.dataField,caption:p.caption,dataType:p.dataType}));}let u=te.buildFieldsFromPlan(a,n);this.setFields(u),this.options.onImportData?.(n),this.pendingImportRows=null,this.store.setImportPreview(null);let s=o.warnings.length>0;this.setImportStatus({isOpen:true,status:s?"warning":"success",title:s?t.importWarning:t.importSuccess,messages:s?o.warnings:[t.importSuccess],cancellable:false});}cancelImportPreview(){this.pendingImportRows=null,this.store.setImportPreview(null);}showImportCancelled(e){this.setImportStatus({isOpen:true,status:"warning",title:e.importWarning,messages:[e.cancelled??"\u0130\xE7e aktarma iptal edildi."],cancellable:false});}closeImportStatus(){this.importAbort?.abort(),this.setImportStatus({...this.getState().importStatus,isOpen:false});}saveReport(e,t){let r=this.reportService.saveReport(e,this.createReportState(),t);this.store.setState({reports:this.reportService.getReports(),activeReportId:r.id}),this.events.emit("reportChanged",{activeReportId:r.id}),this.emitState();}updateCurrentReport(){let{activeReportId:e}=this.getState();e&&(this.reportService.updateReport(e,this.createReportState()),this.store.setState({reports:this.reportService.getReports()}),this.events.emit("reportChanged",{activeReportId:e}),this.emitState());}loadReport(e){let t=this.getState().reports.find(r=>r.id===e);t&&this.applyReportState(t.state,t.id);}deleteReport(e){let t=this.reportService.deleteReport(e),r=this.getState().activeReportId===e?null:this.getState().activeReportId;this.store.setState({reports:t,activeReportId:r}),this.events.emit("reportChanged",{activeReportId:r}),this.emitState();}setDefaultReport(e){this.store.setState({reports:this.reportService.setDefaultReport(e)}),this.events.emit("reportChanged",{activeReportId:this.getState().activeReportId}),this.emitState();}refreshEngine(){this.options.onRefresh?.(),this.engineService.refreshData();}async exportData(e,t){let r=this.getState();if(t?.expandAll&&r.engineResult)try{let o=await this.engineService.computeFullyExpandedSnapshot();r={...r,engineResult:o,expandedPaths:new Set(["*"]),expandedColPaths:new Set(["*"])};}catch(o){this.options.onError?.(o instanceof Error?o:new Error(String(o)));}await Ae.exportData({format:e,exportOptions:t,controllerOptions:this.options,state:r,emitExporting:o=>this.events.emit("exporting",o)});}getRawData(){return this.options.data}getEngineResult(){return this.getState().engineResult}getCell(e,t){let r=this.getState().engineResult;if(!r)return null;let o=this.getState().fields.filter(p=>p.area==="data").sort((p,m)=>(p.areaIndex||0)-(m.areaIndex||0)),n=e.join("|"),a=t.join("|"),u=r.rowIndexMap[n]??-1,s=r.columnIndexMap[a]??-1;if(u===-1||s===-1)return null;let l=u*67108864+s,c=this.getCellIndexLookup(r).get(l)??-1;if(c===-1)return null;let d={};for(let p=0;p<o.length;p++)d[o[p].id]=r.cellMatrix.sums[c*o.length+p];return {rowPath:e,colPath:t,values:d,displayValues:{},isTotalCell:u===0||s===0}}resolveCellClick(e){let t=this.getState(),r=this.getAreaFields("row"),o=this.getAreaFields("column"),a=ae(this.options.data,t.fields,t.layout.prefilter).filter(s=>{for(let l=0;l<e.rowPath.length;l++)if(String(j(s,r[l]))!==e.rowPath[l])return false;for(let l=0;l<e.colPath.length;l++)if(String(j(s,o[l]))!==e.colPath[l])return false;return true}),u={...e,records:a};return this.events.emit("cellClick",u),u}getAreaFields(e){return this.getState().fields.filter(t=>t.area===e).sort((t,r)=>(t.areaIndex||0)-(r.areaIndex||0))}cellIndexLookups=new WeakMap;getCellIndexLookup(e){let t=e.cellMatrix,r=this.cellIndexLookups.get(t);if(!r){r=new Map;let o=t.keys;for(let n=0;n<o.length;n++)r.set(o[n],n);this.cellIndexLookups.set(t,r);}return r}dispose(){this.disposed=true,this.importAbort?.abort(),this.pendingImportRows=null,this.engineService.dispose(),this.events.clear();}normalizeOptions(e){return {...e,data:e.data||[],initialFields:e.initialFields||[],locale:e.locale||"tr-TR"}}setState(e){this.store.setState(e),this.emitState();}emitState(){this.events.emit("stateChanged",this.getState());}commitFields(e){this.store.setFields(e),this.options.onFieldsChange?.(e),this.emitState(),this.engineService.refresh();}setDragState(e){this.store.setState({drag:e}),this.emitState();}setImportStatus(e){this.store.setImportStatus(e),this.emitState();}loadDefaultReport(){let e=this.reportService.getDefaultReport();e&&this.applyReportState(e.state,e.id);}createReportState(){let e=this.getState();return {fields:e.fields,layout:e.layout,expandedPaths:Array.from(e.expandedPaths),expandedColPaths:Array.from(e.expandedColPaths),chartState:this.options.chartIntegrationOptions?{...this.options.chartIntegrationOptions,processCell:void 0}:void 0}}applyReportState(e,t){this.store.setState({fields:e.fields,layout:e.layout,expandedPaths:new Set(e.expandedPaths),expandedColPaths:new Set(e.expandedColPaths||[]),activeReportId:t}),this.options.onChartStateLoaded&&e.chartState&&this.options.onChartStateLoaded(e.chartState),this.events.emit("reportChanged",{activeReportId:t}),this.emitState(),this.engineService.refresh();}collectNodePaths(e,t){e.forEach(r=>{t.push(r.key),r.children&&this.collectNodePaths(r.children,t);});}};var At=class{accumulators={};dataFields;constructor(e){this.dataFields=e,this.dataFields.forEach(t=>{switch(t.summaryType||"sum"){case "count":this.accumulators[t.id]={count:0};break;case "sum":case "avg":this.accumulators[t.id]={sum:0,count:0};break;case "min":this.accumulators[t.id]={min:Number.POSITIVE_INFINITY};break;case "max":this.accumulators[t.id]={max:Number.NEGATIVE_INFINITY};break;case "distinct":this.accumulators[t.id]=new Set;break;case "custom":if(typeof t.calculateCustomSummary=="function"){this.accumulators[t.id]={totalValue:0};let o={summaryProcess:"start",value:null,totalValue:0};t.calculateCustomSummary(o),this.accumulators[t.id].totalValue=o.totalValue;}break}});}push(e,t,r){this.dataFields.forEach(o=>{let n=o.summaryType||"sum";if(n==="count"){this.accumulators[o.id].count+=1;return}let a=t[o.id];if(!a)return;let u=a.array[e];if(a.type==="int32"&&(u=r[u]||""),u==null)return;let s=typeof u=="number"?u:Number(u);switch(n){case "sum":case "avg":isNaN(s)||(this.accumulators[o.id].sum+=s,this.accumulators[o.id].count+=1);break;case "min":!isNaN(s)&&s<this.accumulators[o.id].min&&(this.accumulators[o.id].min=s);break;case "max":!isNaN(s)&&s>this.accumulators[o.id].max&&(this.accumulators[o.id].max=s);break;case "distinct":this.accumulators[o.id].add(u);break;case "custom":if(typeof o.calculateCustomSummary=="function"){let l={summaryProcess:"calculate",value:u,totalValue:this.accumulators[o.id].totalValue};o.calculateCustomSummary(l),this.accumulators[o.id].totalValue=l.totalValue;}break}});}merge(e){this.dataFields.forEach(t=>{let r=t.summaryType||"sum",o=this.accumulators[t.id],n=e.accumulators[t.id];if(!(!o||!n))switch(r){case "count":o.count+=n.count;break;case "sum":case "avg":o.sum+=n.sum,o.count+=n.count;break;case "min":n.min<o.min&&(o.min=n.min);break;case "max":n.max>o.max&&(o.max=n.max);break;case "distinct":n.forEach(a=>o.add(a));break;case "custom":o.totalValue+=n.totalValue;break}});}finalize(){let e={};return this.dataFields.forEach(t=>{switch(t.summaryType||"sum"){case "count":e[t.id]=this.accumulators[t.id]?.count||0;break;case "sum":e[t.id]=this.accumulators[t.id]?.sum||0;break;case "avg":let o=this.accumulators[t.id];e[t.id]=o&&o.count>0?o.sum/o.count:0;break;case "min":e[t.id]=this.accumulators[t.id]?.min!==Number.POSITIVE_INFINITY?this.accumulators[t.id].min:0;break;case "max":e[t.id]=this.accumulators[t.id]?.max!==Number.NEGATIVE_INFINITY?this.accumulators[t.id].max:0;break;case "distinct":e[t.id]=this.accumulators[t.id]?.size||0;break;case "custom":if(typeof t.calculateCustomSummary=="function"){let n={summaryProcess:"finalize",value:null,totalValue:this.accumulators[t.id].totalValue};t.calculateCustomSummary(n),e[t.id]=n.totalValue??0;}else e[t.id]=0;break}}),e}};var me=class{size=1;nodeToParent;nodeToVal;nodeToDepth;nodeChildCount;childrenMap;constructor(e){this.nodeToParent=new Int32Array(e).fill(-1),this.nodeToVal=new Int32Array(e).fill(-1),this.nodeToDepth=new Int32Array(e).fill(0),this.nodeChildCount=new Int32Array(e).fill(0),this.childrenMap=new Map;}expandCapacity(){let e=this.nodeToParent.length*2,t=new Int32Array(e).fill(-1);t.set(this.nodeToParent),this.nodeToParent=t;let r=new Int32Array(e).fill(-1);r.set(this.nodeToVal),this.nodeToVal=r;let o=new Int32Array(e).fill(0);o.set(this.nodeToDepth),this.nodeToDepth=o;let n=new Int32Array(e).fill(0);n.set(this.nodeChildCount),this.nodeChildCount=n;}insert(e,t){let r=0;for(let o=0;o<t;o++){let n=e[o],a=this.childrenMap.get(r);a||(a=new Map,this.childrenMap.set(r,a));let u=a.get(n);u===void 0&&(this.size>=this.nodeToParent.length&&this.expandCapacity(),u=this.size++,this.nodeToParent[u]=r,this.nodeToVal[u]=n,this.nodeToDepth[u]=o+1,this.nodeChildCount[r]++,a.set(n,u)),r=u;}return r}};var St=class{dictionary=[];rowFields=[];colFields=[];dataFields=[];storedColumns={};storedRowCount=0;lastMask=null;isBuilt=false;buildState=null;incrementalFilters=null;incrementalPrefilter=null;rowTrie;colTrie;cardinalityMap={};rowPathStrs=[];colPathStrs=[];rowIndexMapCache={};columnIndexMapCache={};buildVersion=0;groupCount=0;leafGroupRowIds;leafGroupColIds;leafGroupMeasures;leafGroupCounts;leafGroupMins;leafGroupMaxes;leafGroupDistinctSets=new Map;init(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCount,this.storedColumns={};for(let[t,r]of Object.entries(e.columnarData))r.type==="int32"&&(this.storedColumns[t]={type:"int32",array:new Int32Array(r.buffer)}),r.type==="float64"&&(this.storedColumns[t]={type:"float64",array:new Float64Array(r.buffer)});this.lastMask=null,e.deferBuild?this.isBuilt=false:this.buildFromMask(null);}reconfigure(e){if(this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.dictionaryAppend&&e.dictionaryAppend.length>0)for(let t of e.dictionaryAppend)this.dictionary.push(t);if(e.newColumns)for(let[t,r]of Object.entries(e.newColumns))r.type==="int32"&&(this.storedColumns[t]={type:"int32",array:new Int32Array(r.buffer)}),r.type==="float64"&&(this.storedColumns[t]={type:"float64",array:new Float64Array(r.buffer)});this.buildFromMask(this.lastMask);}initStart(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCountTotal,this.storedColumns={};for(let[t,r]of Object.entries(e.columnTypes))r==="int32"?this.storedColumns[t]={type:"int32",array:new Int32Array(e.rowCountTotal)}:this.storedColumns[t]={type:"float64",array:new Float64Array(e.rowCountTotal)};this.incrementalFilters=e.filters&&e.filters.length>0?e.filters.map(t=>({fieldId:t.fieldId,filterType:t.filterType,ids:new Set,pending:new Set(t.valueStrings)})):null,this.incrementalPrefilter=e.prefilter&&e.prefilter.conditions.length>0?e.prefilter:null,this.lastMask=this.incrementalFilters||this.incrementalPrefilter?new Uint8Array(e.rowCountTotal):null,this.resolveIncrementalFilterStrings(0),this.isBuilt=false,this.beginBuild();}initChunk(e){if(e.dictionaryAppend&&e.dictionaryAppend.length>0){let t=this.dictionary.length;for(let r of e.dictionaryAppend)this.dictionary.push(r);this.resolveIncrementalFilterStrings(t),this.ensureCardCapacity();}for(let[t,r]of Object.entries(e.columns)){let o=this.storedColumns[t];o&&(o.type==="int32"?o.array.set(new Int32Array(r),e.start):o.array.set(new Float64Array(r),e.start));}this.lastMask&&this.computeMaskRange(e.start,e.end),this.processRange(e.start,e.end,this.lastMask);}initEnd(){this.incrementalFilters=null,this.incrementalPrefilter=null,this.finalizeBuild();}resolveIncrementalFilterStrings(e){let t=this.incrementalFilters;if(!t)return;let r=0;for(let o of t)r+=o.pending.size;if(r!==0)for(let o=e;o<this.dictionary.length;o++){let n=this.dictionary[o];for(let a of t)a.pending.delete(n)&&a.ids.add(o);}}computeMaskRange(e,t){let r=this.lastMask;if(r.fill(1,e,t),this.incrementalFilters)for(let o of this.incrementalFilters){let n=this.storedColumns[o.fieldId];if(!n||n.type!=="int32")continue;let a=n.array,u=o.ids;if(o.filterType==="exclude")for(let s=e;s<t;s++)r[s]&&u.has(a[s])&&(r[s]=0);else for(let s=e;s<t;s++)r[s]&&!u.has(a[s])&&(r[s]=0);}if(this.incrementalPrefilter)for(let o=e;o<t;o++)r[o]&&!this.evaluatePrefilterGroup(this.incrementalPrefilter,o)&&(r[o]=0);}applyFilter(e){if(e.filters.length===0&&!e.prefilter){this.lastMask=null,this.buildFromMask(null);return}let t=this.storedRowCount,r=new Uint8Array(t);r.fill(1);for(let o of e.filters){let n=this.storedColumns[o.fieldId];if(!n||n.type!=="int32")continue;let a=n.array,u=new Set(o.dictIds);if(o.filterType==="exclude")for(let s=0;s<t;s++)r[s]&&u.has(a[s])&&(r[s]=0);else for(let s=0;s<t;s++)r[s]&&!u.has(a[s])&&(r[s]=0);}if(e.prefilter&&e.prefilter.conditions.length>0)for(let o=0;o<t;o++)r[o]&&!this.evaluatePrefilterGroup(e.prefilter,o)&&(r[o]=0);this.lastMask=r,this.buildFromMask(r);}evaluatePrefilterGroup(e,t){if(!e.conditions||e.conditions.length===0)return true;if(e.logicalOperator==="and"){for(let r of e.conditions)if("logicalOperator"in r){if(!this.evaluatePrefilterGroup(r,t))return false}else if(!this.evaluatePrefilterCondition(r,t))return false;return true}else {for(let r of e.conditions)if("logicalOperator"in r){if(this.evaluatePrefilterGroup(r,t))return true}else if(this.evaluatePrefilterCondition(r,t))return true;return false}}evaluatePrefilterCondition(e,t){let r=this.storedColumns[e.fieldId];if(!r)return true;if(r.type==="float64"){let u=r.array[t],s=Number(e.value);switch(e.operator){case "=":return u===s;case "<>":return u!==s;case ">":return u>s;case ">=":return u>=s;case "<":return u<s;case "<=":return u<=s;case "isnull":return isNaN(u)||u===0;case "isnotnull":return !isNaN(u)&&u!==0;default:return true}}let o=r.array[t],n=this.dictionary[o]||"",a=String(e.value??"");switch(e.operator){case "=":return n===a;case "<>":return n!==a;case ">":return n>a;case ">=":return n>=a;case "<":return n<a;case "<=":return n<=a;case "contains":return n.toLowerCase().includes(a.toLowerCase());case "notcontains":return !n.toLowerCase().includes(a.toLowerCase());case "startswith":return n.toLowerCase().startsWith(a.toLowerCase());case "endswith":return n.toLowerCase().endsWith(a.toLowerCase());case "isnull":return n===""||n==="(Blank)";case "isnotnull":return n!==""&&n!=="(Blank)";case "in":return Array.isArray(e.value)?e.value.map(String).includes(n):true;case "notin":return Array.isArray(e.value)?!e.value.map(String).includes(n):true;default:return true}}buildFromMask(e){this.beginBuild(),this.processRange(0,this.storedRowCount,e),this.finalizeBuild();}beginBuild(){let e=this.storedRowCount,t=this.storedColumns,r=this.rowFields.length,o=this.colFields.length,n=new Array(r);for(let h=0;h<r;h++)n[h]=t[this.rowFields[h].id].array;let a=new Array(o);for(let h=0;h<o;h++)a[h]=t[this.colFields[h].id].array;let u=this.dictionary.length,s=this.rowFields.map(h=>{let F=t[h.id];return F&&F.type==="int32"?new Uint8Array(u):null}),l=this.colFields.map(h=>{let F=t[h.id];return F&&F.type==="int32"?new Uint8Array(u):null});this.rowTrie=new me(2e5),this.colTrie=new me(2e5);let c=this.dataFields.length,d=this.dataFields.map(h=>h.summaryType||"sum"),p=d.some(h=>h==="count"||h==="avg"),m=d.some(h=>h==="min"),f=d.some(h=>h==="max"),y=d.some(h=>h==="distinct"),g=new Array(c);for(let h=0;h<c;h++)g[h]=t[this.dataFields[h].id].array;let C=Math.min(e,2e5),x=m?new Float64Array(C*c):new Float64Array(0),w=f?new Float64Array(C*c):new Float64Array(0);this.leafGroupDistinctSets=y?new Map:new Map,m&&x.fill(1/0),f&&w.fill(-1/0),this.buildState={rPath:new Int32Array(r),cPath:new Int32Array(o),rowColArrays:n,colColArrays:a,dataColArrays:g,rowCardSeen:s,colCardSeen:l,rowCardCounts:new Int32Array(r),colCardCounts:new Int32Array(o),summaryTypes:d,allSums:d.every(h=>h==="sum"),needsCounts:p,needsMins:m,needsMaxes:f,groupMap:new Map,leafRowIds:new Int32Array(C),leafColIds:new Int32Array(C),leafMeasures:new Float64Array(C*c),leafCounts:p?new Float64Array(C*c):new Float64Array(0),leafMins:x,leafMaxes:w,gCount:0};}ensureCardCapacity(){let e=this.buildState;if(!e)return;let t=this.dictionary.length,r=o=>{if(o===null||o.length>=t)return o;let n=new Uint8Array(Math.max(t,o.length*2));return n.set(o),n};for(let o=0;o<e.rowCardSeen.length;o++)e.rowCardSeen[o]=r(e.rowCardSeen[o]);for(let o=0;o<e.colCardSeen.length;o++)e.colCardSeen[o]=r(e.colCardSeen[o]);}processRange(e,t,r){let o=this.buildState,{rPath:n,cPath:a,rowColArrays:u,colColArrays:s,dataColArrays:l,rowCardSeen:c,colCardSeen:d,rowCardCounts:p,colCardCounts:m,summaryTypes:f,allSums:y,needsCounts:g,needsMins:C,needsMaxes:x,groupMap:w}=o,h=u.length,F=s.length,v=l.length,B=this.rowTrie,b=this.colTrie,R=o.leafRowIds,A=o.leafColIds,P=o.leafMeasures,I=o.leafCounts,D=o.leafMins,M=o.leafMaxes,V=o.gCount;for(let L=e;L<t;L++){if(r&&!r[L])continue;for(let S=0;S<h;S++){let T=u[S][L];n[S]=T;let k=c[S];k!==null&&k[T]===0&&(k[T]=1,p[S]++);}let K=B.insert(n,h);for(let S=0;S<F;S++){let T=s[S][L];a[S]=T;let k=d[S];k!==null&&k[T]===0&&(k[T]=1,m[S]++);}let q=b.insert(a,F),J=K*67108864+q,U=w.get(J);if(U===void 0){if(U=V++,w.set(J,U),U>=R.length){let S=U*2,T=new Int32Array(S);T.set(R),R=T;let k=new Int32Array(S);k.set(A),A=k;let $=new Float64Array(S*v);if($.set(P),P=$,g){let N=new Float64Array(S*v);N.set(I),I=N;}if(C){let N=new Float64Array(S*v);N.fill(1/0),N.set(D),D=N;}if(x){let N=new Float64Array(S*v);N.fill(-1/0),N.set(M),M=N;}}R[U]=K,A[U]=q;}let E=U*v;if(y)for(let S=0;S<v;S++)P[E+S]+=l[S][L];else for(let S=0;S<v;S++){let T=l[S][L],k=E+S;switch(f[S]){case "sum":P[k]+=T;break;case "count":I[k]+=1;break;case "avg":P[k]+=T,I[k]+=1;break;case "min":T<D[k]&&(D[k]=T);break;case "max":T>M[k]&&(M[k]=T);break;case "distinct":{let $=this.leafGroupDistinctSets.get(k);$||($=new Set,this.leafGroupDistinctSets.set(k,$)),$.add(T);break}default:P[k]+=T;break}}}o.leafRowIds=R,o.leafColIds=A,o.leafMeasures=P,o.leafCounts=I,o.leafMins=D,o.leafMaxes=M,o.gCount=V;}finalizeBuild(){let e=this.buildState,{needsCounts:t,needsMins:r,needsMaxes:o,gCount:n}=e,a=e.dataColArrays.length,u=e.rowColArrays.length,s=e.colColArrays.length;this.groupCount=n,this.leafGroupRowIds=e.leafRowIds.slice(0,n),this.leafGroupColIds=e.leafColIds.slice(0,n),this.leafGroupMeasures=e.leafMeasures.slice(0,n*a),this.leafGroupCounts=t?e.leafCounts.slice(0,n*a):e.leafCounts,this.leafGroupMins=r?e.leafMins.slice(0,n*a):e.leafMins,this.leafGroupMaxes=o?e.leafMaxes.slice(0,n*a):e.leafMaxes,this.cardinalityMap={};for(let l=0;l<u;l++)e.rowCardSeen[l]!==null&&(this.cardinalityMap[this.rowFields[l].id]=e.rowCardCounts[l]);for(let l=0;l<s;l++)e.colCardSeen[l]!==null&&(this.cardinalityMap[this.colFields[l].id]=e.colCardCounts[l]);this.buildState=null,this.buildVersion++,this.isBuilt=true,this.rowPathStrs=this.buildPathStrs(this.rowTrie),this.colPathStrs=this.buildPathStrs(this.colTrie),this.rowIndexMapCache=this.buildIndexMap(this.rowPathStrs),this.columnIndexMapCache=this.buildIndexMap(this.colPathStrs);}buildPathStrs(e){let t=new Array(e.size);t[0]="";for(let r=1;r<e.size;r++){let o=e.nodeToParent[r],n=this.dictionary[e.nodeToVal[r]],a=t[o];t[r]=a?a+"|"+n:n;}return t}buildIndexMap(e){let t={};for(let r=0;r<e.length;r++)t[e[r]]=r;return t}compute(e){this.isBuilt||this.buildFromMask(this.lastMask);let t=this.rowPathStrs,r=this.colPathStrs,o=new Uint8Array(this.rowTrie.size),n=new Set(e.expandedPaths),a=n.has(".*")||n.has("*");for(let E=0;E<this.rowTrie.size;E++)o[E]=a||n.has(t[E])?1:0;let u=new Uint8Array(this.colTrie.size),s=new Set(e.expandedColPaths),l=s.has(".*")||s.has("*");for(let E=0;E<this.colTrie.size;E++)u[E]=l||s.has(r[E])?1:0;let c=new Uint8Array(this.rowTrie.size);c[0]=1;for(let E=1;E<this.rowTrie.size;E++){let S=this.rowTrie.nodeToParent[E];(S===0||o[S])&&(c[E]=1);}let d=new Uint8Array(this.colTrie.size);d[0]=1;for(let E=1;E<this.colTrie.size;E++){let S=this.colTrie.nodeToParent[E];(S===0||u[S])&&(d[E]=1);}let p=this.dataFields.length,m=this.dataFields.map(E=>E.summaryType||"sum"),f=this.leafGroupMins.length>0,y=this.leafGroupMaxes.length>0,g=this.leafGroupCounts.length>0,C=this.leafGroupDistinctSets.size>0,x=new Map,w=0,h=1e4,F=new Float64Array(h),v=new Float64Array(h*p),B=new Int32Array(h*p),b=g?new Float64Array(h*p):null,R=f?new Float64Array(h*p):null,A=y?new Float64Array(h*p):null,P=C?new Map:new Map;R&&R.fill(1/0),A&&A.fill(-1/0);let I=new Int32Array(this.rowFields.length+1),D=new Int32Array(this.colFields.length+1),M=(E,S,T,k)=>{let $=0,N=E;for(;N!==-1;)T[N]&&(k[$++]=N),N=S.nodeToParent[N];return $};for(let E=0;E<this.groupCount;E++){let S=this.leafGroupRowIds[E],T=this.leafGroupColIds[E],k=M(S,this.rowTrie,c,I),$=M(T,this.colTrie,d,D);for(let N=0;N<k;N++){let Pe=I[N];for(let Z=0;Z<$;Z++){let Te=D[Z],ne=Pe*67108864+Te,W=x.get(ne);if(W===void 0){if(W=w++,x.set(ne,W),W>=F.length){let _=W*2,z=new Float64Array(_);z.set(F),F=z;let Y=new Float64Array(_*p);Y.set(v),v=Y;let X=new Int32Array(_*p);if(X.set(B),B=X,b){let H=new Float64Array(_*p);H.set(b),b=H;}if(R){let H=new Float64Array(_*p);H.fill(1/0),H.set(R),R=H;}if(A){let H=new Float64Array(_*p);H.fill(-1/0),H.set(A),A=H;}}F[W]=ne;}for(let _=0;_<p;_++){let z=W*p+_,Y=E*p+_;switch(m[_]){case "sum":v[z]+=this.leafGroupMeasures[Y];break;case "count":v[z]+=this.leafGroupCounts[Y];break;case "avg":v[z]+=this.leafGroupMeasures[Y],b[z]+=this.leafGroupCounts[Y];break;case "min":{let X=this.leafGroupMins[Y];X<R[z]&&(R[z]=X);break}case "max":{let X=this.leafGroupMaxes[Y];X>A[z]&&(A[z]=X);break}case "distinct":{let X=this.leafGroupDistinctSets.get(Y);if(X){let H=P.get(z);H||(H=new Set,P.set(z,H));for(let xr of X)H.add(xr);}break}default:v[z]+=this.leafGroupMeasures[Y];break}B[z]+=1;}}}}for(let E=0;E<w;E++)for(let S=0;S<p;S++){let T=E*p+S;switch(m[S]){case "avg":v[T]=b[T]>0?v[T]/b[T]:0;break;case "min":v[T]=R[T]!==1/0?R[T]:0;break;case "max":v[T]=A[T]!==-1/0?A[T]:0;break;case "distinct":{let k=P.get(T);v[T]=k?k.size:0;break}}}let V=F.slice(0,w),L=v.slice(0,w*p),K=B.slice(0,w*p),q=(E,S,T,k,$)=>{let N=[];for(let Z=0;Z<k.length;Z++)N[Z]=k[Z]?.id||"";let Pe=Z=>{let Te=E.childrenMap.get(Z);if(!Te)return [];let ne=[];for(let W of Te.values())if(S[W]){let _=E.nodeToDepth[W]-1,z=T[W]===1;ne.push({key:$[W],value:this.dictionary[E.nodeToVal[W]],fieldId:N[_]||"",children:z?Pe(W):[],isExpanded:z,isTotal:false,depth:_,hasChildren:E.nodeChildCount[W]>0});}return ne};return Pe(0)},J=q(this.rowTrie,c,o,this.rowFields,t),U=q(this.colTrie,d,u,this.colFields,r);return {id:e.id,rowTree:J,colTree:U,cellMatrix:{keys:V,sums:L,counts:K},rowIndexMap:this.rowIndexMapCache,columnIndexMap:this.columnIndexMapCache,cardinalityMap:this.cardinalityMap,indexMapsVersion:this.buildVersion}}};export{Ce as CsvReader,te as DataNormalizer,He as DateFormatter,xe as ExportStreamController,me as FastTrie,St as FlatPivotEngine,ve as ImportManager,de as ImportStreamController,O as MAX_C,At as PivotCellAggregator,xt as PivotController,jt as PivotEngineRegistry,we as PivotEngineService,_e as PivotEventEmitter,Ae as PivotExportService,G as PivotFieldService,Se as PivotReportManager,Ee as PivotReportService,Yt as PivotSelectionModel,be as PivotStateStore,ye as XmlReader,or as ar,yt as buildCellLookup,mr as buildColPathsList,pt as buildColumnHeaders,vt as buildPivotAOA,hr as buildRowLabelCells,Ar as cellHash,Er as cellHashCol,Sr as cellHashRow,Bt as classifyValue,ho as clearFormatCache,Qe as coerceRecords,he as coerceValue,wt as compileSafeFormula,ze as computePivotMatrixAsync,fo as conditionRuleToExcelStyle,So as cssColorToRgb,qt as de,Nt as dedupeHeaders,De as defaultPivotLayout,ot as destroyEngineWorker,Xe as detectDelimiter,Zt as en,Qt as es,dr as escapeXmlText,Ge as executePostAggregationPhase,We as executeSummaryDisplayModesPhase,Ct as exportPivotData,j as extractGroupValue,st as filterEmptySummaryTree,Fe as filterPivotEngineAsync,ae as filterRecords,Dr as filterRecordsAsync,fr as flattenExportRows,lo as flattenRowTree,mt as flattenRowTreeTabular,ft as flattenRowTreeTree,mo as formatCellValue,Ue as formatCellValueCached,je as formatHeaderValue,Jt as fr,ut as getAdvancedExporter,Ke as getCellVal,oo as getFieldDistinctValues,dt as getVisibleColLeaves,lt as getVisibleLeafCount,ct as getVisibleMaxDepth,fe as inferColumnType,it as initPivotEngineAsync,po as intlFormatToExcelNumFmt,er as it,nr as ja,ar as ko,It as parseBoolean,ge as parseCsvToRows,Tt as parseDelimited,qe as parseFlexibleDate,Ze as parseLocaleNumber,tr as pt,Le as reconfigurePivotEngineAsync,so as registerAdvancedExporter,gt as resolveColPath,rr as ru,se as safeKey,Je as sanitizeRows,ie as setActiveEngineGrid,ee as sortPivotTree,Ie as stripBom,To as testSafeFormula,Xt as tr,ir as zhCN};
|
|
59
|
+
<table>`;g+="<thead>";for(let v=0;v<Math.min(y,m.length);v++){g+="<tr>";for(let F of m[v])g+=`<th>${$e(String(F??""))}</th>`;g+="</tr>";}g+="</thead><tbody>";let C=u.rowHeaderLayout==="tree"?1:Math.max(1,e.length),x=[],A=m.length-y;for(let v=y;v<m.length;v++){let F=m[v],I=F[0]==="Grand Total",b=!I&&typeof F[0]=="string"&&F.some((T,M)=>M<C&&typeof T=="string"&&T.includes("Total")),B=f?f[v]:null,P=`<tr${I?' class="grand-total"':b?' class="subtotal"':""}>`;for(let T=0;T<F.length;T++){let M=T>=C?' class="data-cell"':"",N=B?B[T]:null,L="";if(N){let K=[];N.fillColor&&K.push(`background:${N.fillColor}`),N.textColor&&K.push(`color:${N.textColor}`),N.bold&&K.push("font-weight:700"),K.length&&(L=` style="${K.join(";")}"`);}P+=`<td${M}${L}>${$e(String(F[T]??""))}</td>`;}P+="</tr>",x.push(P);let R=v-y+1;if(R%Cr===0&&v+1<m.length){if(c?.aborted)return;d?.(70+Math.round(R/Math.max(1,A)*25)),await gr();}}if(c?.aborted)return;g+=x.join(""),g+="</tbody></table></body></html>",d?.(98);let h=window.open("","_blank","width=900,height=700");h&&(h.document.write(g),h.document.close(),h.focus(),h.onload=()=>{h.print(),h.onafterprint=()=>h.close();},setTimeout(()=>{try{h.print();}catch{}},500));}function $e(o){return o.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""")}async function Su(o,e,t,r,u,i,n,a,s="tr-TR"){let l=await Ft(o,e,r,u,i,n,a,s,true,t);if(!l)return;let c=l.aoa.map(d=>d.map(p=>String(p??"").replace(/\t/g," ").replace(/\n/g," ")).join(" ")).join(`
|
|
60
|
+
`);try{await navigator.clipboard.writeText(c);}catch{let d=document.createElement("textarea");d.value=c,d.style.cssText="position:fixed;left:-9999px;top:-9999px;opacity:0",document.body.appendChild(d),d.select();try{document.execCommand("copy");}catch{}document.body.removeChild(d);}}function bu(o,e){let t=yt(o),r={};if(e&&e.length>0){let u=o.rowIndexMap[""]??-1,i=o.columnIndexMap[""]??-1;if(u!==-1&&i!==-1){let n=u*67108864+i,a=t.get(n);if(a!==void 0)for(let s=0;s<e.length;s++)r[e[s].id]=o.cellMatrix.sums[a*e.length+s];}}return {rowTree:o.rowTree,colTree:o.colTree,grandTotal:r,metadata:{rowCount:Object.keys(o.rowIndexMap).length,colCount:Object.keys(o.columnIndexMap).length,cellCount:o.cellMatrix.keys.length,exportedAt:new Date().toISOString()}}}var we=class{static async exportData({format:e,exportOptions:t,controllerOptions:r,state:u,emitExporting:i}){let n={format:e,cancel:false};if(r.onExporting?.(n),i(n),n.cancel)return;let a=u.engineResult||{rowTree:[],colTree:[],cellMatrix:{keys:new Float64Array,sums:new Float64Array,counts:new Int32Array},rowIndexMap:{},columnIndexMap:{},cardinalityMap:{}},s=t?.applyFilters?ne(r.data,u.fields,u.layout.prefilter):r.data,l=r.registry?.getPluginsByType("exporter").find(p=>p.id===e||p.id===`exporter-${e}`);if(l?.exportFunction){l.exportFunction(s,{fields:u.fields,engineResult:a,layout:u.layout,expandedPaths:new Set(u.expandedPaths),expandedColPaths:new Set(u.expandedColPaths)});return}let c=t?.fileName||"PivotExport",d=t?.locale||r.locale||"tr-TR";await Ct(e,s,u.fields,a,u.layout,u.expandedPaths,u.expandedColPaths,c,d,t);}};var yr=["row","column","data","filter","chooser"],_=class{static normalizeAreaIndexes(e){let t=[...e];return yr.forEach(r=>{t.filter(i=>i.area===r).sort((i,n)=>(i.areaIndex||0)-(n.areaIndex||0)).forEach((i,n)=>{let a=t.findIndex(s=>s.id===i.id);a!==-1&&(t[a]={...t[a],areaIndex:n});});}),t}static sortField(e,t,r){return e.map(u=>u.id===t?{...u,sortOrder:r,sortBySummaryField:void 0,sortBySummaryPath:void 0}:u)}static sortFieldBySummary(e,t,r,u){return e.map(i=>i.id===t?{...i,sortOrder:"desc",sortBySummaryField:r,sortBySummaryPath:u}:i)}static clearAllSorting(e){return e.map(t=>({...t,sortOrder:void 0,sortBySummaryField:void 0,sortBySummaryPath:void 0}))}static updateField(e,t){return e.map(r=>r.id===t.id?t:r)}static applyFilter(e,t,r,u){return e.map(i=>i.id===t?{...i,filterValues:r,filterType:u}:i)}static clearFilter(e,t){return e.map(r=>r.id===t?{...r,filterValues:void 0,filterType:void 0}:r)}static removeField(e,t){return this.normalizeAreaIndexes(e.map(r=>r.id===t?{...r,area:"chooser",areaIndex:0}:r))}static deleteField(e,t){return this.normalizeAreaIndexes(e.filter(r=>r.id!==t))}static changeFieldArea(e,t,r){if(!e.find(n=>n.id===t))return e;let i=e.filter(n=>n.area===r).length;return this.normalizeAreaIndexes(e.map(n=>n.id===t?{...n,area:r,areaIndex:i}:n))}static moveFieldByDirection(e,t,r){let u=e.find(c=>c.id===t);if(!u||u.area==="chooser")return e;let i=e.filter(c=>c.area===u.area).sort((c,d)=>(c.areaIndex||0)-(d.areaIndex||0)),n=i.findIndex(c=>c.id===t);if(n===-1)return e;let a=n;if(r==="start"&&(a=0),r==="end"&&(a=i.length-1),r==="left"&&(a=Math.max(0,n-1)),r==="right"&&(a=Math.min(i.length-1,n+1)),a===n)return e;let s=[...i];s.splice(n,1),s.splice(a,0,u);let l=[...e];return s.forEach((c,d)=>{let p=l.findIndex(m=>m.id===c.id);p!==-1&&(l[p]={...c,areaIndex:d});}),l}static async moveFieldFromDrop(e,t){let r=t.fieldId.replace("chooser-",""),u=e.findIndex(l=>l.id===r);if(u===-1||!t.overId)return e;let i=e[u],n=t.dragIntent,a=i.area;if(n.intent==="append"&&n.targetArea)a=n.targetArea.replace("chooser-","");else if(n.targetId&&(n.intent==="before"||n.intent==="after"))a=e.find(l=>l.id===n.targetId)?.area||i.area;else {let l=t.overId.replace("chooser-","");this.isArea(l)&&(a=l);}if(t.validateMove){let l=false,c={fieldId:i.id,sourceArea:i.area||"chooser",targetArea:a||"chooser",newIndex:0,cancel:()=>{l=true;},get isCanceled(){return l},set isCanceled(d){l=d;}};if(await t.validateMove(c),l)return e}let s=[...e];if(n.intent==="append"&&n.targetArea){let l=n.targetArea.replace("chooser-",""),c=s.filter(d=>d.area===l&&d.id!==r);s[u]={...i,area:l,areaIndex:c.length};}else if(n.targetId&&(n.intent==="before"||n.intent==="after")){if(n.targetId===r)return e;let l=e.find(c=>c.id===n.targetId);if(l){let c=l.area;s.splice(u,1);let d=s.filter(m=>m.area===c).sort((m,f)=>(m.areaIndex||0)-(f.areaIndex||0)),p=d.findIndex(m=>m.id===n.targetId);if(p!==-1){let m=n.intent==="before"?p:p+1;d.splice(m,0,{...i,area:c}),d.forEach((f,y)=>{let g={...f,areaIndex:y},C=s.findIndex(x=>x.id===f.id);C!==-1?s[C]=g:s.push(g);});}}}else {let l=t.overId.replace("chooser-","");if(this.isArea(l)){let c=s.filter(d=>d.area===l&&d.id!==r);s[u]={...i,area:l,areaIndex:c.length};}}return this.normalizeAreaIndexes(s)}static calculateDropIntent(e,t,r,u,i,n="horizontal"){let a=n==="horizontal"?r.width:r.height,s=n==="horizontal"?e-r.left:t-r.top,l=Math.min(40,a*.5),c=a-l;return s<=l?"before":s>=c?i?"append":"after":u==="before"||u==="after"?u:s<a/2?"before":"after"}static isArea(e){return yr.includes(e)}};var vt=1;function Fr(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID().replace(/-/g,"").toLowerCase();let o=new Uint8Array(16);return crypto.getRandomValues(o),o[6]=o[6]&15|64,o[8]=o[8]&63|128,Array.from(o,e=>e.toString(16).padStart(2,"0")).join("")}var Ee=class{storageKey;constructor(e){this.storageKey=e;}getReports(){try{let e=localStorage.getItem(this.storageKey);if(e)return JSON.parse(e).map(r=>{let u={...r};return u.schemaVersion||(u.schemaVersion=0),u.schemaVersion<1&&(u.state&&u.state.layout&&(u.state.layout.showFilterArea===void 0&&(u.state.layout.showFilterArea=!0),u.state.layout.showFooter===void 0&&(u.state.layout.showFooter=!0)),u.schemaVersion=1),u.schemaVersion=vt,u.state&&u.state.fields&&(u.state.fields=u.state.fields.map(i=>({...i,filterValues:i.filterValues?new Set(i.filterValues):void 0}))),u.state&&u.state.expandedPaths&&(u.state.expandedPaths=Array.isArray(u.state.expandedPaths)?u.state.expandedPaths:Array.from(u.state.expandedPaths||[])),u.state&&u.state.expandedColPaths&&(u.state.expandedColPaths=Array.isArray(u.state.expandedColPaths)?u.state.expandedColPaths:Array.from(u.state.expandedColPaths||[])),u})}catch(e){console.error("Failed to load pivot reports:",e);}return []}getDefaultReport(){return this.getReports().find(t=>t.isDefault)||null}saveReport(e,t,r=false){let u=this.getReports();r&&u.forEach(n=>n.isDefault=false);let i={id:Fr(),name:e,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),isDefault:r,schemaVersion:vt,state:t};return u.push(i),this.persist(u),i}updateReport(e,t){let r=this.getReports(),u=r.findIndex(i=>i.id===e);return u===-1?null:(r[u]={...r[u],updatedAt:new Date().toISOString(),state:t},this.persist(r),r[u])}saveAs(e,t){let r=this.getReports(),u=r.find(n=>n.id===e);if(!u)return null;let i={...u,id:Fr(),name:t,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),isDefault:false,schemaVersion:vt};return r.push(i),this.persist(r),i}deleteReport(e){let t=this.getReports();t=t.filter(r=>r.id!==e),this.persist(t);}setDefaultReport(e){let t=this.getReports();t.forEach(r=>{r.isDefault=r.id===e;}),this.persist(t);}persist(e){try{let t=e.map(r=>{let u={...r.state,fields:r.state.fields.map(i=>({...i,filterValues:i.filterValues?Array.from(i.filterValues):void 0})),expandedPaths:Array.isArray(r.state.expandedPaths)?r.state.expandedPaths:Array.from(r.state.expandedPaths||[]),expandedColPaths:Array.isArray(r.state.expandedColPaths)?r.state.expandedColPaths:Array.from(r.state.expandedColPaths||[]),chartState:r.state.chartState?{...r.state.chartState,processCell:void 0}:void 0};return {...r,state:u}});localStorage.setItem(this.storageKey,JSON.stringify(t));}catch(t){console.error("Failed to save pivot reports:",t);}}};var Se=class{manager;constructor(e){this.manager=new Ee(e);}getReports(){return this.manager.getReports()}getDefaultReport(){return this.manager.getDefaultReport()}saveReport(e,t,r){return this.manager.saveReport(e,t,r)}updateReport(e,t){return this.manager.updateReport(e,t)}deleteReport(e){return this.manager.deleteReport(e),this.getReports()}setDefaultReport(e){return this.manager.setDefaultReport(e),this.getReports()}};function vr(o,e){let t=[],r=0;for(;r<o.length;){if(/\s/.test(o[r])){r++;continue}let u=o.slice(r).match(/^__FIELD_(\d+)__/);if(u){let i=parseInt(u[1],10);if(i>=e.length)throw new Error(`Invalid field index: ${i}`);t.push({type:"field",key:e[i]}),r+=u[0].length;continue}if(/\d/.test(o[r])||o[r]==="."&&r+1<o.length&&/\d/.test(o[r+1])){let i="";for(;r<o.length&&/[\d.]/.test(o[r]);)i+=o[r++];t.push({type:"num",value:parseFloat(i)});continue}if("+-*/%".includes(o[r])){t.push({type:"op",value:o[r++]});continue}if(o[r]==="("){t.push({type:"paren",value:"("}),r++;continue}if(o[r]===")"){t.push({type:"paren",value:")"}),r++;continue}throw new Error(`Unexpected character: '${o[r]}'`)}return t}function Ar(o){let e=0,t=()=>o[e],r=()=>o[e++];function u(){let c=t();return c?.type==="op"?c.value:null}function i(){let c=n(),d;for(;(d=u())&&(d==="+"||d==="-");){r();let p=n(),m=c,f=p;c=d==="+"?y=>m(y)+f(y):y=>m(y)-f(y);}return c}function n(){let c=a(),d;for(;(d=u())&&"*/%".includes(d);){r();let p=a(),m=c,f=p,y=d;y==="*"?c=g=>m(g)*f(g):y==="/"?c=g=>{let C=f(g);return C!==0?m(g)/C:0}:c=g=>{let C=f(g);return C!==0?m(g)%C:0};}return c}function a(){let c=t();if(c?.type==="op"&&c.value==="-"){r();let d=a();return p=>-d(p)}return c?.type==="op"&&c.value==="+"?(r(),a()):s()}function s(){let c=t();if(!c)throw new Error("Unexpected end of expression");if(c.type==="num"){r();let d=c.value;return ()=>d}if(c.type==="field"){r();let d=c.key;return p=>Number(p[d])||0}if(c.type==="paren"&&c.value==="("){r();let d=i(),p=t();if(!p||p.type!=="paren"||p.value!==")")throw new Error("Missing closing parenthesis");return r(),d}throw new Error(`Unexpected token: ${JSON.stringify(c)}`)}let l=i();if(e<o.length)throw new Error(`Unexpected token after expression: ${JSON.stringify(o[e])}`);return l}function At(o,e){let t=o,r=[];e.forEach((i,n)=>{let a=n.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),s=new RegExp(`\\[${a}\\]`,"g"),l=`__FIELD_${r.length}__`;r.push(i),t=t.replace(s,l);});let u=t.replace(/__FIELD_\d+__/g,"0");if(!/^[\d\s+\-*/%().]+$/.test(u))return console.warn("[PivotGrid] Unsafe formula rejected:",o),null;try{let i=vr(t,r),n=Ar(i);return n({}),n}catch(i){return console.error("[PivotGrid] Formula compilation error:",o,i),null}}function Pu(o,e){let t=o,r=[];e.forEach((a,s)=>{let l=s.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),c=new RegExp(`\\[${l}\\]`,"g"),d=`__FIELD_${r.length}__`;r.push(a),t=t.replace(c,d);});let u=t.replace(/__FIELD_\d+__/g,"0");if(!/^[\d\s+\-*/%().]+$/.test(u))throw new Error("Formula contains unsafe characters");let i=vr(t,r);Ar(i)({});}function Du(o){return o.forEach(e=>{if(!e.isCalculated||!e.formulaString||!e.formulaType)return;let t=new Map;o.forEach(u=>{let i=u.caption||"";if(!i)return;let n=e.formulaType==="row"?String(u.dataField||u.id):String(u.id);t.set(i,n);});let r=At(e.formulaString,t);r&&(e.formulaType==="row"?e.calculateExpression=r:e.calculateSummaryExpression=r);}),o}function Tu(o,e){if(!o)return e;let t=o.map(r=>({...e.find(i=>i.id===r.id)||{},...r,filterValues:r.filterValues?new Set(r.filterValues):void 0}));return Du(t)}function Bu(o){return o.map(e=>({id:e.id,area:e.area,areaIndex:e.areaIndex,sortOrder:e.sortOrder,sortBySummaryField:e.sortBySummaryField,sortBySummaryPath:e.sortBySummaryPath,filterValues:e.filterValues?Array.from(e.filterValues):void 0,filterType:e.filterType,summaryType:e.summaryType,isCalculated:e.isCalculated,caption:e.isCalculated?e.caption:void 0,dataType:e.isCalculated?e.dataType:void 0,formulaString:e.isCalculated?e.formulaString:void 0,formulaType:e.isCalculated?e.formulaType:void 0,format:e.isCalculated?e.format:void 0}))}var be=class{snapshot;listeners=new Set;storageKey;persistScheduled=false;constructor(e,t){this.storageKey=`kanunilabs-pivot-${e}`,this.snapshot=this.createInitialSnapshot(e,t);}getSnapshot=()=>this.snapshot;subscribe=e=>(this.listeners.add(e),()=>this.listeners.delete(e));setState(e){this.snapshot={...this.snapshot,...e},this.schedulePersist(),this.listeners.forEach(t=>t());}setFields(e){this.setState({fields:e});}setLayout(e){this.setState({layout:{...this.snapshot.layout,...e}});}setExpandedPaths(e){this.setState({expandedPaths:new Set(e)});}setExpandedColPaths(e){this.setState({expandedColPaths:new Set(e)});}setSelectionStats(e){this.setState({selectionStats:e});}setImportStatus(e){this.setState({importStatus:e});}setImportPreview(e){this.setState({importPreview:e});}createInitialSnapshot(e,t){let r=t,u={...Te},i=new Set,n=new Set,a={};try{let s=localStorage.getItem(this.storageKey);if(s){let l=JSON.parse(s);r=Tu(l.fields,t),u={...Te,...l.layout||{}},i=l.expandedPaths?new Set(l.expandedPaths):i,n=l.expandedColPaths?new Set(l.expandedColPaths):n,a=l.columnWidths||{};}}catch(s){console.error("Failed to load pivot state:",s);}return {gridId:e,fields:r,layout:u,expandedPaths:i,expandedColPaths:n,columnWidths:a,engineResult:null,isBuilding:false,buildProgress:0,engineError:null,selectionStats:null,reports:[],activeReportId:null,importStatus:{isOpen:false,status:"loading",title:"",messages:[]},importPreview:null,drag:{activeId:null,targetId:null,targetArea:null,intent:null}}}schedulePersist(){if(this.persistScheduled)return;this.persistScheduled=true;let e=()=>{this.persistScheduled=false,this.persist();};typeof requestIdleCallback=="function"?requestIdleCallback(e,{timeout:1e3}):setTimeout(e,200);}persist(){try{let e=this.snapshot;localStorage.setItem(this.storageKey,JSON.stringify({fields:Bu(e.fields),layout:e.layout,columnWidths:e.columnWidths,expandedPaths:Array.from(e.expandedPaths),expandedColPaths:Array.from(e.expandedColPaths)}));}catch(e){console.error("Failed to save pivot state:",e);}}};var xt=class{store;events=new We;options;reportService;engineService;importManager=new Fe;importAbort;pendingImportRows=null;disposed=false;constructor(e){this.options=this.normalizeOptions(e),this.store=new be(this.options.gridId,this.options.initialFields),this.reportService=new Se(this.options.gridId),this.engineService=new Ae({getOptions:()=>this.options,getState:()=>this.getState(),getAreaFields:u=>this.getAreaFields(u),setState:u=>this.setState(u),onEngineStarted:u=>this.events.emit("engineStarted",u),onEngineCompleted:u=>this.events.emit("engineCompleted",u),onEngineError:u=>this.events.emit("engineError",u)});let t=this.options.controlledFields||this.getState().fields,r=this.options.controlledLayout||this.getState().layout;this.store.setState({fields:t,layout:r,reports:this.reportService.getReports()}),this.loadDefaultReport(),this.engineService.refresh();}subscribe=e=>this.store.subscribe(e);getSnapshot=()=>this.store.getSnapshot();getState(){return this.store.getSnapshot()}on(e,t){return this.events.on(e,t)}updateOptions(e){if(this.disposed)return;let t=this.options;this.options=this.normalizeOptions({...this.options,...e});let r={};this.options.controlledFields&&this.options.controlledFields!==t.controlledFields&&(r.fields=this.options.controlledFields),this.options.controlledLayout&&this.options.controlledLayout!==t.controlledLayout&&(r.layout=this.options.controlledLayout),Object.keys(r).length>0&&this.setState(r),this.engineService.refresh();}setFields(e){this.commitFields(_.normalizeAreaIndexes(e));}updateField(e){this.commitFields(_.updateField(this.getState().fields,e));}deleteField(e){this.commitFields(_.deleteField(this.getState().fields,e));}changeFieldArea(e,t){this.commitFields(_.changeFieldArea(this.getState().fields,e,t));}removeField(e){this.commitFields(_.removeField(this.getState().fields,e));}moveField(e,t){this.commitFields(_.moveFieldByDirection(this.getState().fields,e,t));}sortField(e,t){this.commitFields(_.sortField(this.getState().fields,e,t));}sortFieldBySummary(e,t,r){this.commitFields(_.sortFieldBySummary(this.getState().fields,e,t,r));}clearAllSorting(){this.commitFields(_.clearAllSorting(this.getState().fields));}applyFilter(e,t,r){this.commitFields(_.applyFilter(this.getState().fields,e,t,r));}clearFilter(e){this.commitFields(_.clearFilter(this.getState().fields,e));}setLayout(e){this.store.setLayout(e),this.options.onLayoutChange?.(this.getState().layout),this.emitState(),this.engineService.refresh();}toggleExpanded(e){let t=new Set(this.getState().expandedPaths);t.has(e)?t.delete(e):t.add(e),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}expandPaths(e){let t=new Set(this.getState().expandedPaths);e.forEach(r=>t.add(r)),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}collapsePaths(e){let t=new Set(this.getState().expandedPaths);e.forEach(r=>t.delete(r)),this.store.setExpandedPaths(t),this.emitState(),this.engineService.computeIfReady();}setExpandedPaths(e){this.store.setExpandedPaths(e),this.emitState(),this.engineService.computeIfReady();}toggleColExpanded(e){let t=new Set(this.getState().expandedColPaths);t.has(e)?t.delete(e):t.add(e),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}expandColPaths(e){let t=new Set(this.getState().expandedColPaths);e.forEach(r=>t.add(r)),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}collapseColPaths(e){let t=new Set(this.getState().expandedColPaths);e.forEach(r=>t.delete(r)),this.store.setExpandedColPaths(t),this.emitState(),this.engineService.computeIfReady();}setExpandedColPaths(e){this.store.setExpandedColPaths(e),this.emitState(),this.engineService.computeIfReady();}expandAll(){let{engineResult:e}=this.getState();if(!e){this.store.setState({expandedPaths:new Set(["*"]),expandedColPaths:new Set(["*"])}),this.emitState(),this.engineService.computeIfReady();return}let t=[],r=[];this.collectNodePaths(e.rowTree,t),this.collectNodePaths(e.colTree,r),this.store.setState({expandedPaths:new Set(t),expandedColPaths:new Set(r)}),this.emitState(),this.engineService.computeIfReady();}collapseAll(){this.store.setState({expandedPaths:new Set,expandedColPaths:new Set}),this.emitState(),this.engineService.computeIfReady();}setColumnWidths(e){this.store.setState({columnWidths:e}),this.emitState();}setSelectionStats(e){this.store.setSelectionStats(e),this.emitState();}setDragActive(e){this.setDragState({activeId:e,targetId:null,targetArea:null,intent:null});}setDragIntent(e,t,r){let u=this.getState().drag;u.targetId===e&&u.targetArea===t&&u.intent===r||this.setDragState({...u,targetId:e,targetArea:t,intent:r});}resetDrag(){this.setDragState({activeId:null,targetId:null,targetArea:null,intent:null});}calculateDropIntent(e,t,r,u,i,n){return _.calculateDropIntent(e,t,r,u,i,n)}async commitDrag(e,t){let r=this.getState().drag,u=await _.moveFieldFromDrop(this.getState().fields,{fieldId:e,overId:t,dragIntent:r,validateMove:this.options.onFieldMove});this.resetDrag(),u!==this.getState().fields&&this.commitFields(u);}importFile(e,t){return this.runImport(t,r=>this.importManager.processFileStreaming(e,r))}importFiles(e,t){return this.runImport(t,r=>this.importManager.processFiles(e,r))}importFromUrl(e,t,r){return this.runImport(t,u=>this.importManager.processFromUrl(e,{...u,fetchInit:r}))}importData(e,t){return this.runImport(t,r=>this.importManager.processFromData(e,r))}importText(e,t){return this.runImport(t,r=>this.importManager.processFromText(e,r))}async runImport(e,t){this.importAbort?.abort();let r=new AbortController;this.importAbort=r,this.setImportStatus({isOpen:true,status:"loading",title:e.initializing,messages:[e.processing],progress:0,phase:"reading",cancellable:true});try{let{snapshot:u,validation:i,cancelled:n}=await t({signal:r.signal,onProgress:l=>{if(this.importAbort!==r||r.signal.aborted)return;let c=this.getState().importStatus;this.setImportStatus({...c,progress:l.percent,phase:l.phase});}});if(n||r.signal.aborted){this.showImportCancelled(e);return}if(!i.isValid){this.setImportStatus({isOpen:!0,status:"error",title:e.importError,messages:i.errors,cancellable:!1});return}let a=u.type==="DATA_ONLY"&&Array.isArray(u.data);if(this.options.previewImport&&a&&this.options.onImportData){this.openImportPreview(u.data,u.fields??[],i.warnings);return}u.fields&&this.setFields(u.fields),u.layout&&this.setLayout(u.layout),u.expandedPaths&&this.setExpandedPaths(u.expandedPaths);let s=[...i.warnings];u.data&&(this.options.onImportData?this.options.onImportData(u.data):s.push(e.dataImportUnsupported)),this.setImportStatus({isOpen:!0,status:s.length>0?"warning":"success",title:s.length>0?e.importWarning:e.importSuccess,messages:s.length>0?s:[e.importSuccess],progress:100,cancellable:!1});}catch(u){if(r.signal.aborted){this.showImportCancelled(e);return}this.setImportStatus({isOpen:true,status:"error",title:e.importError,messages:[u.message],cancellable:false});}finally{this.importAbort===r&&(this.importAbort=void 0);}}cancelImport(){this.importAbort?.abort();}showImportStatus(e,t,r){this.setImportStatus({isOpen:true,status:e,title:t,messages:r,cancellable:false});}openImportPreview(e,t,r){this.pendingImportRows=e,this.setImportStatus({isOpen:false,status:"loading",title:"",messages:[]}),this.store.setImportPreview({fields:(t??[]).map(u=>({dataField:String(u.dataField),caption:u.caption??String(u.dataField),dataType:u.dataType??"string"})),sample:e.slice(0,50),rowCount:e.length,warnings:r});}commitImport(e,t){let r=this.pendingImportRows,u=this.getState().importPreview;if(!r||!u)return;let i=r,n=u.fields.map(l=>({...l}));if(e&&e.length){let l=e.filter(p=>p.include!==false),c=new Map(u.fields.map(p=>[p.dataField,p.dataType])),d=l.filter(p=>p.dataType!==c.get(p.dataField));d.length>0&&(i=r.map(p=>{let m={...p};for(let f of d)m[f.dataField]=he(m[f.dataField],f.dataType);return m})),n=l.map(p=>({dataField:p.dataField,caption:p.caption,dataType:p.dataType}));}let a=te.buildFieldsFromPlan(n,i);this.setFields(a),this.options.onImportData?.(i),this.pendingImportRows=null,this.store.setImportPreview(null);let s=u.warnings.length>0;this.setImportStatus({isOpen:true,status:s?"warning":"success",title:s?t.importWarning:t.importSuccess,messages:s?u.warnings:[t.importSuccess],cancellable:false});}cancelImportPreview(){this.pendingImportRows=null,this.store.setImportPreview(null);}showImportCancelled(e){this.setImportStatus({isOpen:true,status:"warning",title:e.importWarning,messages:[e.cancelled??"\u0130\xE7e aktarma iptal edildi."],cancellable:false});}closeImportStatus(){this.importAbort?.abort(),this.setImportStatus({...this.getState().importStatus,isOpen:false});}saveReport(e,t){let r=this.reportService.saveReport(e,this.createReportState(),t);this.store.setState({reports:this.reportService.getReports(),activeReportId:r.id}),this.events.emit("reportChanged",{activeReportId:r.id}),this.emitState();}updateCurrentReport(){let{activeReportId:e}=this.getState();e&&(this.reportService.updateReport(e,this.createReportState()),this.store.setState({reports:this.reportService.getReports()}),this.events.emit("reportChanged",{activeReportId:e}),this.emitState());}loadReport(e){let t=this.getState().reports.find(r=>r.id===e);t&&this.applyReportState(t.state,t.id);}deleteReport(e){let t=this.reportService.deleteReport(e),r=this.getState().activeReportId===e?null:this.getState().activeReportId;this.store.setState({reports:t,activeReportId:r}),this.events.emit("reportChanged",{activeReportId:r}),this.emitState();}setDefaultReport(e){this.store.setState({reports:this.reportService.setDefaultReport(e)}),this.events.emit("reportChanged",{activeReportId:this.getState().activeReportId}),this.emitState();}refreshEngine(){this.options.onRefresh?.(),this.engineService.refreshData();}async exportData(e,t){let r=this.getState();if(t?.expandAll&&r.engineResult)try{let u=await this.engineService.computeFullyExpandedSnapshot();r={...r,engineResult:u,expandedPaths:new Set(["*"]),expandedColPaths:new Set(["*"])};}catch(u){this.options.onError?.(u instanceof Error?u:new Error(String(u)));}await we.exportData({format:e,exportOptions:t,controllerOptions:this.options,state:r,emitExporting:u=>this.events.emit("exporting",u)});}getRawData(){return this.options.data}getEngineResult(){return this.getState().engineResult}getCell(e,t){let r=this.getState().engineResult;if(!r)return null;let u=this.getState().fields.filter(p=>p.area==="data").sort((p,m)=>(p.areaIndex||0)-(m.areaIndex||0)),i=e.join("|"),n=t.join("|"),a=r.rowIndexMap[i]??-1,s=r.columnIndexMap[n]??-1;if(a===-1||s===-1)return null;let l=a*67108864+s,c=this.getCellIndexLookup(r).get(l)??-1;if(c===-1)return null;let d={};for(let p=0;p<u.length;p++)d[u[p].id]=r.cellMatrix.sums[c*u.length+p];return {rowPath:e,colPath:t,values:d,displayValues:{},isTotalCell:a===0||s===0}}resolveCellClick(e){let t=this.getState(),r=this.getAreaFields("row"),u=this.getAreaFields("column"),n=ne(this.options.data,t.fields,t.layout.prefilter).filter(s=>{for(let l=0;l<e.rowPath.length;l++)if(String(j(s,r[l]))!==e.rowPath[l])return false;for(let l=0;l<e.colPath.length;l++)if(String(j(s,u[l]))!==e.colPath[l])return false;return true}),a={...e,records:n};return this.events.emit("cellClick",a),a}getAreaFields(e){return this.getState().fields.filter(t=>t.area===e).sort((t,r)=>(t.areaIndex||0)-(r.areaIndex||0))}cellIndexLookups=new WeakMap;getCellIndexLookup(e){let t=e.cellMatrix,r=this.cellIndexLookups.get(t);if(!r){r=new Map;let u=t.keys;for(let i=0;i<u.length;i++)r.set(u[i],i);this.cellIndexLookups.set(t,r);}return r}dispose(){this.disposed=true,this.importAbort?.abort(),this.pendingImportRows=null,this.engineService.dispose(),this.events.clear();}normalizeOptions(e){return {...e,data:e.data||[],initialFields:e.initialFields||[],locale:e.locale||"tr-TR"}}setState(e){this.store.setState(e),this.emitState();}emitState(){this.events.emit("stateChanged",this.getState());}commitFields(e){this.store.setFields(e),this.options.onFieldsChange?.(e),this.emitState(),this.engineService.refresh();}setDragState(e){this.store.setState({drag:e}),this.emitState();}setImportStatus(e){this.store.setImportStatus(e),this.emitState();}loadDefaultReport(){let e=this.reportService.getDefaultReport();e&&this.applyReportState(e.state,e.id);}createReportState(){let e=this.getState();return {fields:e.fields,layout:e.layout,expandedPaths:Array.from(e.expandedPaths),expandedColPaths:Array.from(e.expandedColPaths),chartState:this.options.chartIntegrationOptions?{...this.options.chartIntegrationOptions,processCell:void 0}:void 0}}applyReportState(e,t){this.store.setState({fields:e.fields,layout:e.layout,expandedPaths:new Set(e.expandedPaths),expandedColPaths:new Set(e.expandedColPaths||[]),activeReportId:t}),this.options.onChartStateLoaded&&e.chartState&&this.options.onChartStateLoaded(e.chartState),this.events.emit("reportChanged",{activeReportId:t}),this.emitState(),this.engineService.refresh();}collectNodePaths(e,t){e.forEach(r=>{t.push(r.key),r.children&&this.collectNodePaths(r.children,t);});}};var wt=class{accumulators={};dataFields;constructor(e){this.dataFields=e,this.dataFields.forEach(t=>{switch(t.summaryType||"sum"){case "count":this.accumulators[t.id]={count:0};break;case "sum":case "avg":this.accumulators[t.id]={sum:0,count:0};break;case "min":this.accumulators[t.id]={min:Number.POSITIVE_INFINITY};break;case "max":this.accumulators[t.id]={max:Number.NEGATIVE_INFINITY};break;case "distinct":this.accumulators[t.id]=new Set;break;case "custom":if(typeof t.calculateCustomSummary=="function"){this.accumulators[t.id]={totalValue:0};let u={summaryProcess:"start",value:null,totalValue:0};t.calculateCustomSummary(u),this.accumulators[t.id].totalValue=u.totalValue;}break}});}push(e,t,r){this.dataFields.forEach(u=>{let i=u.summaryType||"sum";if(i==="count"){this.accumulators[u.id].count+=1;return}let n=t[u.id];if(!n)return;let a=n.array[e];if(n.type==="int32"&&(a=r[a]||""),a==null)return;let s=typeof a=="number"?a:Number(a);switch(i){case "sum":case "avg":isNaN(s)||(this.accumulators[u.id].sum+=s,this.accumulators[u.id].count+=1);break;case "min":!isNaN(s)&&s<this.accumulators[u.id].min&&(this.accumulators[u.id].min=s);break;case "max":!isNaN(s)&&s>this.accumulators[u.id].max&&(this.accumulators[u.id].max=s);break;case "distinct":this.accumulators[u.id].add(a);break;case "custom":if(typeof u.calculateCustomSummary=="function"){let l={summaryProcess:"calculate",value:a,totalValue:this.accumulators[u.id].totalValue};u.calculateCustomSummary(l),this.accumulators[u.id].totalValue=l.totalValue;}break}});}merge(e){this.dataFields.forEach(t=>{let r=t.summaryType||"sum",u=this.accumulators[t.id],i=e.accumulators[t.id];if(!(!u||!i))switch(r){case "count":u.count+=i.count;break;case "sum":case "avg":u.sum+=i.sum,u.count+=i.count;break;case "min":i.min<u.min&&(u.min=i.min);break;case "max":i.max>u.max&&(u.max=i.max);break;case "distinct":i.forEach(n=>u.add(n));break;case "custom":u.totalValue+=i.totalValue;break}});}finalize(){let e={};return this.dataFields.forEach(t=>{switch(t.summaryType||"sum"){case "count":e[t.id]=this.accumulators[t.id]?.count||0;break;case "sum":e[t.id]=this.accumulators[t.id]?.sum||0;break;case "avg":let u=this.accumulators[t.id];e[t.id]=u&&u.count>0?u.sum/u.count:0;break;case "min":e[t.id]=this.accumulators[t.id]?.min!==Number.POSITIVE_INFINITY?this.accumulators[t.id].min:0;break;case "max":e[t.id]=this.accumulators[t.id]?.max!==Number.NEGATIVE_INFINITY?this.accumulators[t.id].max:0;break;case "distinct":e[t.id]=this.accumulators[t.id]?.size||0;break;case "custom":if(typeof t.calculateCustomSummary=="function"){let i={summaryProcess:"finalize",value:null,totalValue:this.accumulators[t.id].totalValue};t.calculateCustomSummary(i),e[t.id]=i.totalValue??0;}else e[t.id]=0;break}}),e}};var me=class{size=1;nodeToParent;nodeToVal;nodeToDepth;nodeChildCount;childrenMap;constructor(e){this.nodeToParent=new Int32Array(e).fill(-1),this.nodeToVal=new Int32Array(e).fill(-1),this.nodeToDepth=new Int32Array(e).fill(0),this.nodeChildCount=new Int32Array(e).fill(0),this.childrenMap=new Map;}expandCapacity(){let e=this.nodeToParent.length*2,t=new Int32Array(e).fill(-1);t.set(this.nodeToParent),this.nodeToParent=t;let r=new Int32Array(e).fill(-1);r.set(this.nodeToVal),this.nodeToVal=r;let u=new Int32Array(e).fill(0);u.set(this.nodeToDepth),this.nodeToDepth=u;let i=new Int32Array(e).fill(0);i.set(this.nodeChildCount),this.nodeChildCount=i;}insert(e,t){let r=0;for(let u=0;u<t;u++){let i=e[u],n=this.childrenMap.get(r);n||(n=new Map,this.childrenMap.set(r,n));let a=n.get(i);a===void 0&&(this.size>=this.nodeToParent.length&&this.expandCapacity(),a=this.size++,this.nodeToParent[a]=r,this.nodeToVal[a]=i,this.nodeToDepth[a]=u+1,this.nodeChildCount[r]++,n.set(i,a)),r=a;}return r}};var Et=class{dictionary=[];rowFields=[];colFields=[];dataFields=[];storedColumns={};storedRowCount=0;lastMask=null;isBuilt=false;buildState=null;incrementalFilters=null;incrementalPrefilter=null;rowTrie;colTrie;cardinalityMap={};rowPathStrs=[];colPathStrs=[];rowIndexMapCache={};columnIndexMapCache={};buildVersion=0;groupCount=0;leafGroupRowIds;leafGroupColIds;leafGroupMeasures;leafGroupCounts;leafGroupMins;leafGroupMaxes;leafGroupDistinctSets=new Map;init(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCount,this.storedColumns={};for(let[t,r]of Object.entries(e.columnarData))r.type==="int32"&&(this.storedColumns[t]={type:"int32",array:new Int32Array(r.buffer)}),r.type==="float64"&&(this.storedColumns[t]={type:"float64",array:new Float64Array(r.buffer)});this.lastMask=null,e.deferBuild?this.isBuilt=false:this.buildFromMask(null);}reconfigure(e){if(this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.dictionaryAppend&&e.dictionaryAppend.length>0)for(let t of e.dictionaryAppend)this.dictionary.push(t);if(e.newColumns)for(let[t,r]of Object.entries(e.newColumns))r.type==="int32"&&(this.storedColumns[t]={type:"int32",array:new Int32Array(r.buffer)}),r.type==="float64"&&(this.storedColumns[t]={type:"float64",array:new Float64Array(r.buffer)});this.buildFromMask(this.lastMask);}initStart(e){this.dictionary=e.dictionary,this.rowFields=e.rowFields,this.colFields=e.colFields,this.dataFields=e.dataFields,e.workerBootstrap&&e.workerBootstrap.length>0&&console.warn("[PivotGrid Worker] workerBootstrap is deprecated for security reasons. All calculations are executed on the main thread."),this.storedRowCount=e.rowCountTotal,this.storedColumns={};for(let[t,r]of Object.entries(e.columnTypes))r==="int32"?this.storedColumns[t]={type:"int32",array:new Int32Array(e.rowCountTotal)}:this.storedColumns[t]={type:"float64",array:new Float64Array(e.rowCountTotal)};this.incrementalFilters=e.filters&&e.filters.length>0?e.filters.map(t=>({fieldId:t.fieldId,filterType:t.filterType,ids:new Set,pending:new Set(t.valueStrings)})):null,this.incrementalPrefilter=e.prefilter&&e.prefilter.conditions.length>0?e.prefilter:null,this.lastMask=this.incrementalFilters||this.incrementalPrefilter?new Uint8Array(e.rowCountTotal):null,this.resolveIncrementalFilterStrings(0),this.isBuilt=false,this.beginBuild();}initChunk(e){if(e.dictionaryAppend&&e.dictionaryAppend.length>0){let t=this.dictionary.length;for(let r of e.dictionaryAppend)this.dictionary.push(r);this.resolveIncrementalFilterStrings(t),this.ensureCardCapacity();}for(let[t,r]of Object.entries(e.columns)){let u=this.storedColumns[t];u&&(u.type==="int32"?u.array.set(new Int32Array(r),e.start):u.array.set(new Float64Array(r),e.start));}this.lastMask&&this.computeMaskRange(e.start,e.end),this.processRange(e.start,e.end,this.lastMask);}initEnd(){this.incrementalFilters=null,this.incrementalPrefilter=null,this.finalizeBuild();}resolveIncrementalFilterStrings(e){let t=this.incrementalFilters;if(!t)return;let r=0;for(let u of t)r+=u.pending.size;if(r!==0)for(let u=e;u<this.dictionary.length;u++){let i=this.dictionary[u];for(let n of t)n.pending.delete(i)&&n.ids.add(u);}}computeMaskRange(e,t){let r=this.lastMask;if(r.fill(1,e,t),this.incrementalFilters)for(let u of this.incrementalFilters){let i=this.storedColumns[u.fieldId];if(!i||i.type!=="int32")continue;let n=i.array,a=u.ids;if(u.filterType==="exclude")for(let s=e;s<t;s++)r[s]&&a.has(n[s])&&(r[s]=0);else for(let s=e;s<t;s++)r[s]&&!a.has(n[s])&&(r[s]=0);}if(this.incrementalPrefilter)for(let u=e;u<t;u++)r[u]&&!this.evaluatePrefilterGroup(this.incrementalPrefilter,u)&&(r[u]=0);}applyFilter(e){if(e.filters.length===0&&!e.prefilter){this.lastMask=null,this.buildFromMask(null);return}let t=this.storedRowCount,r=new Uint8Array(t);r.fill(1);for(let u of e.filters){let i=this.storedColumns[u.fieldId];if(!i||i.type!=="int32")continue;let n=i.array,a=new Set(u.dictIds);if(u.filterType==="exclude")for(let s=0;s<t;s++)r[s]&&a.has(n[s])&&(r[s]=0);else for(let s=0;s<t;s++)r[s]&&!a.has(n[s])&&(r[s]=0);}if(e.prefilter&&e.prefilter.conditions.length>0)for(let u=0;u<t;u++)r[u]&&!this.evaluatePrefilterGroup(e.prefilter,u)&&(r[u]=0);this.lastMask=r,this.buildFromMask(r);}evaluatePrefilterGroup(e,t){if(!e.conditions||e.conditions.length===0)return true;if(e.logicalOperator==="and"){for(let r of e.conditions)if("logicalOperator"in r){if(!this.evaluatePrefilterGroup(r,t))return false}else if(!this.evaluatePrefilterCondition(r,t))return false;return true}else {for(let r of e.conditions)if("logicalOperator"in r){if(this.evaluatePrefilterGroup(r,t))return true}else if(this.evaluatePrefilterCondition(r,t))return true;return false}}evaluatePrefilterCondition(e,t){let r=this.storedColumns[e.fieldId];if(!r)return true;if(r.type==="float64"){let a=r.array[t],s=Number(e.value);switch(e.operator){case "=":return a===s;case "<>":return a!==s;case ">":return a>s;case ">=":return a>=s;case "<":return a<s;case "<=":return a<=s;case "isnull":return isNaN(a)||a===0;case "isnotnull":return !isNaN(a)&&a!==0;default:return true}}let u=r.array[t],i=this.dictionary[u]||"",n=String(e.value??"");switch(e.operator){case "=":return i===n;case "<>":return i!==n;case ">":return i>n;case ">=":return i>=n;case "<":return i<n;case "<=":return i<=n;case "contains":return i.toLowerCase().includes(n.toLowerCase());case "notcontains":return !i.toLowerCase().includes(n.toLowerCase());case "startswith":return i.toLowerCase().startsWith(n.toLowerCase());case "endswith":return i.toLowerCase().endsWith(n.toLowerCase());case "isnull":return i===""||i==="(Blank)";case "isnotnull":return i!==""&&i!=="(Blank)";case "in":return Array.isArray(e.value)?e.value.map(String).includes(i):true;case "notin":return Array.isArray(e.value)?!e.value.map(String).includes(i):true;default:return true}}buildFromMask(e){this.beginBuild(),this.processRange(0,this.storedRowCount,e),this.finalizeBuild();}beginBuild(){let e=this.storedRowCount,t=this.storedColumns,r=this.rowFields.length,u=this.colFields.length,i=new Array(r);for(let h=0;h<r;h++)i[h]=t[this.rowFields[h].id].array;let n=new Array(u);for(let h=0;h<u;h++)n[h]=t[this.colFields[h].id].array;let a=this.dictionary.length,s=this.rowFields.map(h=>{let v=t[h.id];return v&&v.type==="int32"?new Uint8Array(a):null}),l=this.colFields.map(h=>{let v=t[h.id];return v&&v.type==="int32"?new Uint8Array(a):null});this.rowTrie=new me(2e5),this.colTrie=new me(2e5);let c=this.dataFields.length,d=this.dataFields.map(h=>h.summaryType||"sum"),p=d.some(h=>h==="count"||h==="avg"),m=d.some(h=>h==="min"),f=d.some(h=>h==="max"),y=d.some(h=>h==="distinct"),g=new Array(c);for(let h=0;h<c;h++)g[h]=t[this.dataFields[h].id].array;let C=Math.min(e,2e5),x=m?new Float64Array(C*c):new Float64Array(0),A=f?new Float64Array(C*c):new Float64Array(0);this.leafGroupDistinctSets=y?new Map:new Map,m&&x.fill(1/0),f&&A.fill(-1/0),this.buildState={rPath:new Int32Array(r),cPath:new Int32Array(u),rowColArrays:i,colColArrays:n,dataColArrays:g,rowCardSeen:s,colCardSeen:l,rowCardCounts:new Int32Array(r),colCardCounts:new Int32Array(u),summaryTypes:d,allSums:d.every(h=>h==="sum"),needsCounts:p,needsMins:m,needsMaxes:f,groupMap:new Map,leafRowIds:new Int32Array(C),leafColIds:new Int32Array(C),leafMeasures:new Float64Array(C*c),leafCounts:p?new Float64Array(C*c):new Float64Array(0),leafMins:x,leafMaxes:A,gCount:0};}ensureCardCapacity(){let e=this.buildState;if(!e)return;let t=this.dictionary.length,r=u=>{if(u===null||u.length>=t)return u;let i=new Uint8Array(Math.max(t,u.length*2));return i.set(u),i};for(let u=0;u<e.rowCardSeen.length;u++)e.rowCardSeen[u]=r(e.rowCardSeen[u]);for(let u=0;u<e.colCardSeen.length;u++)e.colCardSeen[u]=r(e.colCardSeen[u]);}processRange(e,t,r){let u=this.buildState,{rPath:i,cPath:n,rowColArrays:a,colColArrays:s,dataColArrays:l,rowCardSeen:c,colCardSeen:d,rowCardCounts:p,colCardCounts:m,summaryTypes:f,allSums:y,needsCounts:g,needsMins:C,needsMaxes:x,groupMap:A}=u,h=a.length,v=s.length,F=l.length,I=this.rowTrie,b=this.colTrie,B=u.leafRowIds,w=u.leafColIds,P=u.leafMeasures,R=u.leafCounts,T=u.leafMins,M=u.leafMaxes,N=u.gCount;for(let L=e;L<t;L++){if(r&&!r[L])continue;for(let E=0;E<h;E++){let D=a[E][L];i[E]=D;let k=c[E];k!==null&&k[D]===0&&(k[D]=1,p[E]++);}let K=I.insert(i,h);for(let E=0;E<v;E++){let D=s[E][L];n[E]=D;let k=d[E];k!==null&&k[D]===0&&(k[D]=1,m[E]++);}let q=b.insert(n,v),J=K*67108864+q,U=A.get(J);if(U===void 0){if(U=N++,A.set(J,U),U>=B.length){let E=U*2,D=new Int32Array(E);D.set(B),B=D;let k=new Int32Array(E);k.set(w),w=k;let $=new Float64Array(E*F);if($.set(P),P=$,g){let V=new Float64Array(E*F);V.set(R),R=V;}if(C){let V=new Float64Array(E*F);V.fill(1/0),V.set(T),T=V;}if(x){let V=new Float64Array(E*F);V.fill(-1/0),V.set(M),M=V;}}B[U]=K,w[U]=q;}let S=U*F;if(y)for(let E=0;E<F;E++)P[S+E]+=l[E][L];else for(let E=0;E<F;E++){let D=l[E][L],k=S+E;switch(f[E]){case "sum":P[k]+=D;break;case "count":R[k]+=1;break;case "avg":P[k]+=D,R[k]+=1;break;case "min":D<T[k]&&(T[k]=D);break;case "max":D>M[k]&&(M[k]=D);break;case "distinct":{let $=this.leafGroupDistinctSets.get(k);$||($=new Set,this.leafGroupDistinctSets.set(k,$)),$.add(D);break}default:P[k]+=D;break}}}u.leafRowIds=B,u.leafColIds=w,u.leafMeasures=P,u.leafCounts=R,u.leafMins=T,u.leafMaxes=M,u.gCount=N;}finalizeBuild(){let e=this.buildState,{needsCounts:t,needsMins:r,needsMaxes:u,gCount:i}=e,n=e.dataColArrays.length,a=e.rowColArrays.length,s=e.colColArrays.length;this.groupCount=i,this.leafGroupRowIds=e.leafRowIds.slice(0,i),this.leafGroupColIds=e.leafColIds.slice(0,i),this.leafGroupMeasures=e.leafMeasures.slice(0,i*n),this.leafGroupCounts=t?e.leafCounts.slice(0,i*n):e.leafCounts,this.leafGroupMins=r?e.leafMins.slice(0,i*n):e.leafMins,this.leafGroupMaxes=u?e.leafMaxes.slice(0,i*n):e.leafMaxes,this.cardinalityMap={};for(let l=0;l<a;l++)e.rowCardSeen[l]!==null&&(this.cardinalityMap[this.rowFields[l].id]=e.rowCardCounts[l]);for(let l=0;l<s;l++)e.colCardSeen[l]!==null&&(this.cardinalityMap[this.colFields[l].id]=e.colCardCounts[l]);this.buildState=null,this.buildVersion++,this.isBuilt=true,this.rowPathStrs=this.buildPathStrs(this.rowTrie),this.colPathStrs=this.buildPathStrs(this.colTrie),this.rowIndexMapCache=this.buildIndexMap(this.rowPathStrs),this.columnIndexMapCache=this.buildIndexMap(this.colPathStrs);}buildPathStrs(e){let t=new Array(e.size);t[0]="";for(let r=1;r<e.size;r++){let u=e.nodeToParent[r],i=this.dictionary[e.nodeToVal[r]],n=t[u];t[r]=n?n+"|"+i:i;}return t}buildIndexMap(e){let t={};for(let r=0;r<e.length;r++)t[e[r]]=r;return t}compute(e){this.isBuilt||this.buildFromMask(this.lastMask);let t=this.rowPathStrs,r=this.colPathStrs,u=new Uint8Array(this.rowTrie.size),i=new Set(e.expandedPaths),n=i.has(".*")||i.has("*");for(let S=0;S<this.rowTrie.size;S++)u[S]=n||i.has(t[S])?1:0;let a=new Uint8Array(this.colTrie.size),s=new Set(e.expandedColPaths),l=s.has(".*")||s.has("*");for(let S=0;S<this.colTrie.size;S++)a[S]=l||s.has(r[S])?1:0;let c=new Uint8Array(this.rowTrie.size);c[0]=1;for(let S=1;S<this.rowTrie.size;S++){let E=this.rowTrie.nodeToParent[S];(E===0||u[E])&&(c[S]=1);}let d=new Uint8Array(this.colTrie.size);d[0]=1;for(let S=1;S<this.colTrie.size;S++){let E=this.colTrie.nodeToParent[S];(E===0||a[E])&&(d[S]=1);}let p=this.dataFields.length,m=this.dataFields.map(S=>S.summaryType||"sum"),f=this.leafGroupMins.length>0,y=this.leafGroupMaxes.length>0,g=this.leafGroupCounts.length>0,C=this.leafGroupDistinctSets.size>0,x=new Map,A=0,h=1e4,v=new Float64Array(h),F=new Float64Array(h*p),I=new Int32Array(h*p),b=g?new Float64Array(h*p):null,B=f?new Float64Array(h*p):null,w=y?new Float64Array(h*p):null,P=C?new Map:new Map;B&&B.fill(1/0),w&&w.fill(-1/0);let R=new Int32Array(this.rowFields.length+1),T=new Int32Array(this.colFields.length+1),M=(S,E,D,k)=>{let $=0,V=S;for(;V!==-1;)D[V]&&(k[$++]=V),V=E.nodeToParent[V];return $};for(let S=0;S<this.groupCount;S++){let E=this.leafGroupRowIds[S],D=this.leafGroupColIds[S],k=M(E,this.rowTrie,c,R),$=M(D,this.colTrie,d,T);for(let V=0;V<k;V++){let Pe=R[V];for(let X=0;X<$;X++){let De=T[X],ie=Pe*67108864+De,G=x.get(ie);if(G===void 0){if(G=A++,x.set(ie,G),G>=v.length){let W=G*2,z=new Float64Array(W);z.set(v),v=z;let Y=new Float64Array(W*p);Y.set(F),F=Y;let Z=new Int32Array(W*p);if(Z.set(I),I=Z,b){let H=new Float64Array(W*p);H.set(b),b=H;}if(B){let H=new Float64Array(W*p);H.fill(1/0),H.set(B),B=H;}if(w){let H=new Float64Array(W*p);H.fill(-1/0),H.set(w),w=H;}}v[G]=ie;}for(let W=0;W<p;W++){let z=G*p+W,Y=S*p+W;switch(m[W]){case "sum":F[z]+=this.leafGroupMeasures[Y];break;case "count":F[z]+=this.leafGroupCounts[Y];break;case "avg":F[z]+=this.leafGroupMeasures[Y],b[z]+=this.leafGroupCounts[Y];break;case "min":{let Z=this.leafGroupMins[Y];Z<B[z]&&(B[z]=Z);break}case "max":{let Z=this.leafGroupMaxes[Y];Z>w[z]&&(w[z]=Z);break}case "distinct":{let Z=this.leafGroupDistinctSets.get(Y);if(Z){let H=P.get(z);H||(H=new Set,P.set(z,H));for(let xr of Z)H.add(xr);}break}default:F[z]+=this.leafGroupMeasures[Y];break}I[z]+=1;}}}}for(let S=0;S<A;S++)for(let E=0;E<p;E++){let D=S*p+E;switch(m[E]){case "avg":F[D]=b[D]>0?F[D]/b[D]:0;break;case "min":F[D]=B[D]!==1/0?B[D]:0;break;case "max":F[D]=w[D]!==-1/0?w[D]:0;break;case "distinct":{let k=P.get(D);F[D]=k?k.size:0;break}}}let N=v.slice(0,A),L=F.slice(0,A*p),K=I.slice(0,A*p),q=(S,E,D,k,$)=>{let V=[];for(let X=0;X<k.length;X++)V[X]=k[X]?.id||"";let Pe=X=>{let De=S.childrenMap.get(X);if(!De)return [];let ie=[];for(let G of De.values())if(E[G]){let W=S.nodeToDepth[G]-1,z=D[G]===1;ie.push({key:$[G],value:this.dictionary[S.nodeToVal[G]],fieldId:V[W]||"",children:z?Pe(G):[],isExpanded:z,isTotal:false,depth:W,hasChildren:S.nodeChildCount[G]>0});}return ie};return Pe(0)},J=q(this.rowTrie,c,u,this.rowFields,t),U=q(this.colTrie,d,a,this.colFields,r);return {id:e.id,rowTree:J,colTree:U,cellMatrix:{keys:N,sums:L,counts:K},rowIndexMap:this.rowIndexMapCache,columnIndexMap:this.columnIndexMapCache,cardinalityMap:this.cardinalityMap,indexMapsVersion:this.buildVersion}}};export{Ce as CsvReader,te as DataNormalizer,He as DateFormatter,xe as ExportStreamController,me as FastTrie,Et as FlatPivotEngine,Fe as ImportManager,de as ImportStreamController,O as MAX_C,wt as PivotCellAggregator,xt as PivotController,jt as PivotEngineRegistry,Ae as PivotEngineService,We as PivotEventEmitter,we as PivotExportService,_ as PivotFieldService,Ee as PivotReportManager,Se as PivotReportService,Yt as PivotSelectionModel,be as PivotStateStore,ye as XmlReader,ur as ar,yt as buildCellLookup,mr as buildColPathsList,pt as buildColumnHeaders,Ft as buildPivotAOA,hr as buildRowLabelCells,wr as cellHash,Sr as cellHashCol,Er as cellHashRow,It as classifyValue,fu as clearFormatCache,Qe as coerceRecords,he as coerceValue,At as compileSafeFormula,ze as computePivotMatrixAsync,mu as conditionRuleToExcelStyle,wu as cssColorToRgb,qt as de,Vt as dedupeHeaders,Te as defaultPivotLayout,ut as destroyEngineWorker,Ze as detectDelimiter,Xt as en,Qt as es,dr as escapeXmlText,_e as executePostAggregationPhase,Ge as executeSummaryDisplayModesPhase,Ct as exportPivotData,j as extractGroupValue,st as filterEmptySummaryTree,ve as filterPivotEngineAsync,ne as filterRecords,Tr as filterRecordsAsync,fr as flattenExportRows,lu as flattenRowTree,mt as flattenRowTreeTabular,ft as flattenRowTreeTree,pu as formatCellValue,Ue as formatCellValueCached,je as formatHeaderValue,Jt as fr,at as getAdvancedExporter,Ke as getCellVal,uu as getFieldDistinctValues,dt as getVisibleColLeaves,lt as getVisibleLeafCount,ct as getVisibleMaxDepth,fe as inferColumnType,ot as initPivotEngineAsync,du as intlFormatToExcelNumFmt,er as it,ir as ja,nr as ko,Rt as parseBoolean,ge as parseCsvToRows,Dt as parseDelimited,qe as parseFlexibleDate,Xe as parseLocaleNumber,tr as pt,Le as reconfigurePivotEngineAsync,su as registerAdvancedExporter,gt as resolveColPath,rr as ru,se as safeKey,Je as sanitizeRows,oe as setActiveEngineGrid,ee as sortPivotTree,Re as stripBom,Pu as testSafeFormula,Zt as tr,or as zhCN};
|