pivotkit-element 0.0.0-stage → 0.2.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/CHANGELOG.md +143 -0
- package/LICENSE +21 -0
- package/README.md +73 -2
- package/dist/THIRD_PARTY_LICENSES.txt +547 -0
- package/dist/chunks/chunk-BL6ROOK3.js +6 -0
- package/dist/chunks/chunk-CETTRMB6.js +9 -0
- package/dist/chunks/chunk-DCANE7XH.js +1 -0
- package/dist/chunks/chunk-JGSNJX3N.js +1 -0
- package/dist/chunks/chunk-MB64GADT.js +1 -0
- package/dist/chunks/chunk-UTPKLCNX.js +1 -0
- package/dist/chunks/echarts-42T6EZ6B.js +18 -0
- package/dist/chunks/export-EASUJGEK.js +6 -0
- package/dist/chunks/link-52SWRX4P.js +1 -0
- package/dist/chunks/menu-texts-de-TRCAQWTH.js +1 -0
- package/dist/chunks/menus-CRKZQ2O3.js +1 -0
- package/dist/chunks/unused-texts-YTNJCFFC-HJOIWMO6.js +1 -0
- package/dist/chunks/unused-texts-de-SGOHV4N7-LJH5VMQZ.js +1 -0
- package/dist/element.js +1 -0
- package/dist/index.js +1 -0
- package/package.json +72 -4
- package/types/element.d.ts +428 -0
- package/types/events.d.ts +34 -0
- package/types/global.d.ts +33 -0
- package/types/index.d.ts +22 -0
- package/types/jsx.d.ts +25 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var g=Object.create;var e=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var i=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var m=(b,a)=>()=>{try{return a||b((a={exports:{}}).exports,a),a.exports}catch(c){throw a=0,c}},n=(b,a)=>{for(var c in a)e(b,c,{get:a[c],enumerable:!0})},l=(b,a,c,f)=>{if(a&&typeof a=="object"||typeof a=="function")for(let d of i(a))!k.call(b,d)&&d!==c&&e(b,d,{get:()=>a[d],enumerable:!(f=h(a,d))||f.enumerable});return b};var o=(b,a,c)=>(c=b!=null?g(j(b)):{},l(a||!b||!b.__esModule?e(c,"default",{value:b,enumerable:!0}):c,b));export{m as a,n as b,o as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as P,b as W,c as x,d as C,f as oe,g as $,h as se,i as y,j as z,k as A,m as _e,n as Q,o as H,p as je,q as K}from"./chunk-MB64GADT.js";var V=()=>"number",Et=()=>"text";function Dt(e,t){let n=new Float64Array(t);if(!e)return{add:r=>{n[r]++},get:r=>n[r]};let o=e.codes;return{add:(r,s)=>{o[s]!==-1&&n[r]++},get:r=>n[r]}}function Re(e,t){let n=new Array(t),o=e.codes;return{sets:n,add:(r,s)=>{let i=o[s];if(i===-1)return;let a=n[r];a===void 0&&(a=n[r]=new Set),a.add(i)}}}function _t(e,t){let n=new Float64Array(t),o=e.values;return{add:(r,s)=>{let i=o[s];i===i&&(n[r]+=i)},get:r=>n[r]}}function jt(e,t){let n=new Float64Array(t),o=new Float64Array(t),r=e.values;return{add:(s,i)=>{let a=r[i];a===a&&(n[s]+=a,o[s]++)},get:s=>o[s]>0?n[s]/o[s]:null}}function Ue(e){return(t,n)=>{let o=new Float64Array(n).fill(NaN),r=t.values;return{add:(s,i)=>{let a=r[i];a===a&&!(o[s]*e>=a*e)&&(o[s]=a)},get:s=>Number.isNaN(o[s])?null:o[s]}}}function Rt(e,t){let n=new Array(t),o=e.values;return{add:(r,s)=>{let i=o[s];i===i&&(n[r]??=[]).push(i)},get:r=>{let s=n[r];if(!s||s.length===0)return null;let i=Float64Array.from(s).sort(),a=i.length>>1;return i.length%2?i[a]:(i[a-1]+i[a])/2}}}function ie(e,t){return(n,o)=>{let r=new Float64Array(o),s=new Float64Array(o),i=new Float64Array(o),a=n.values;return{add:(l,u)=>{let c=a[u];if(c===c){let f=++r[l],m=c-s[l];s[l]+=m/f,i[l]+=m*(c-s[l])}},get:l=>{let u=r[l],c=e?u-1:u;if(c<=0)return null;let f=Math.max(0,i[l])/c;return t?Math.sqrt(f):f}}}}function Pe(e){return(t,n,o)=>{let r=new Int32Array(n).fill(-1),s=t.codes;return{add:(i,a)=>{let l=s[a];if(l===-1)return;let u=r[i];(u===-1||(e?o[l]>o[u]:o[l]<o[u]))&&(r[i]=l)},get:i=>{let a=r[i];if(a===-1)return null;let l=t.dict[a];return typeof l=="boolean"?String(l):l}}}}var ae=e=>e==="date"?"date":"number",ze=e=>e==="date"?"date":e==="number"?"number":"text",be=Object.freeze({count:{numeric:!1,additive:!0,resultType:V,create:Dt},countUnique:{numeric:!1,keepsValues:!0,resultType:V,create:(e,t)=>{let n=Re(e,t);return{add:n.add,get:o=>n.sets[o]?n.sets[o].size:0}}},listUnique:{numeric:!1,keepsValues:!0,resultType:Et,create:(e,t,n,o)=>{let r=Re(e,t);return{add:r.add,get:s=>{let i=r.sets[s];return i?[...i].sort((a,l)=>n[a]-n[l]).map(o).join(", "):null}}}},sum:{numeric:!0,additive:!0,resultType:V,create:_t},average:{numeric:!0,dates:!0,resultType:ae,create:jt},median:{numeric:!0,dates:!0,keepsValues:!0,resultType:ae,create:Rt},min:{numeric:!0,dates:!0,resultType:ae,create:Ue(-1)},max:{numeric:!0,dates:!0,resultType:ae,create:Ue(1)},stdev:{numeric:!0,resultType:V,create:ie(!0,!0)},stdevp:{numeric:!0,resultType:V,create:ie(!1,!0)},var:{numeric:!0,resultType:V,create:ie(!0,!1)},varp:{numeric:!0,resultType:V,create:ie(!1,!1)},first:{numeric:!1,resultType:ze,create:Pe(!1)},last:{numeric:!1,resultType:ze,create:Pe(!0)}}),Ut=Object.freeze(Object.keys(be));function E(e){return typeof e=="string"&&Object.hasOwn(be,e)?be[e]:null}function we(e,t){let n=E(e);return n?n.numeric?t==="number"||t==="boolean"||t==="null"||t==="date"&&n.dates===!0:!0:!1}function mr(e){return Ut.filter(t=>we(t,e))}var Ne=H(128);function F(e,t={}){return Ne.getOrSet(`n|${e}|${JSON.stringify(t)}`,()=>new Intl.NumberFormat(e,t))}function D(e,t){return Ne.getOrSet(`d|${e}|${JSON.stringify(t)}`,()=>new Intl.DateTimeFormat(e,t))}function Ve(e){return Ne.getOrSet(`c|${e}`,()=>new Intl.Collator(e,{numeric:!0,sensitivity:"base"}))}var Pt={dateStyle:"medium",timeZone:"UTC"},zt={dateStyle:"medium",timeStyle:"short",timeZone:"UTC"},k=Object.freeze({blank:"(blank)",total:"{label} Total",grandTotal:"Grand Total",values:"Values",valueName:"{agg} of {field}",countRows:"Count",true:"true",false:"false",aggregators:Object.freeze({count:"Count",countUnique:"Count Unique",listUnique:"List Unique",sum:"Sum",average:"Average",median:"Median",min:"Min",max:"Max",stdev:"StdDev",stdevp:"StdDevP",var:"Var",varp:"VarP",first:"First",last:"Last"}),showAsName:"{showAs} of {value}",showAs:Object.freeze({percentOfGrandTotal:"% of grand total",percentOfRowTotal:"% of row total",percentOfColumnTotal:"% of column total",percentOfParentRow:"% of parent row",percentOfParentColumn:"% of parent column",differenceFromPrevious:"Difference from previous",percentDifferenceFromPrevious:"% difference from previous",runningTotal:"Running total",percentRunningTotal:"% running total",rankAscending:"Rank (smallest first)",rankDescending:"Rank (largest first)"})});function ee(e,t){let n=t&&t.fields;if(!n||typeof n!="object"||typeof e!="string")return e;let o=i=>typeof n[i]=="string"&&n[i].trim()!=="";if(Object.hasOwn(n,e)&&o(e))return n[e];let r=e.toLowerCase(),s=Object.keys(n).find(i=>i.toLowerCase()===r&&o(i));return s===void 0?e:n[s]}function te(e,t,n,o=k){if(t==null)return o.blank??k.blank;if(e.labeler)return e.labeler(t,n);switch(e.type){case"date":return D(n,e.dateOnly?Pt:zt).format(new Date(Number(t)));case"boolean":return t?o.true??"true":o.false??"false";default:return String(t)}}function Vt(e,t,n){let o=e==null,r=t==null;if(o||r)return o===r?0:o?1:-1;let s=typeof e=="number"||typeof e=="boolean",i=typeof t=="number"||typeof t=="boolean";return s&&i?Number(e)-Number(t):s!==i?s?-1:1:Ve(n).compare(String(e),String(t))}function Oe(e,t,n){return n.getOrSet(`ranks:${e.id}:${t}`,()=>{let o=e.dict.map((s,i)=>i);o.sort((s,i)=>Vt(e.dict[s],e.dict[i],t)||s-i);let r=new Int32Array(o.length);return o.forEach((s,i)=>{r[s]=i}),r})}function le(e,t){return String(e).replace(/\{(\w+)\}/g,(n,o)=>Object.hasOwn(t,o)?String(t[o]):n)}var Or=Object.freeze(["number","integer","currency","percent","percent100","compact","bytes","duration","date","datetime","time","text"]),Zt=20,Ge={ms:.001,s:1,min:60,h:3600,d:86400},Bt=/^(number|integer|currency|percent|percent100|compact|bytes|duration|date|datetime|time|text)(?::([A-Za-z0-9]{1,10}))?$/,Se=new Set(["number","percent","percent100"]),We={date:{dateStyle:"medium",timeZone:"UTC"},datetime:{dateStyle:"medium",timeStyle:"short",timeZone:"UTC"},time:{timeStyle:"short",timeZone:"UTC"}},Jt={signDisplay:"negative"},ue=null;function Gt(e){return ue===null&&(ue=typeof Intl.supportedValuesOf=="function"?new Set(Intl.supportedValuesOf("currency")):!1),ue?ue.has(e.toUpperCase()):/^[a-z]{3}$/i.test(e)}function Y(e){if(typeof e!="string")return null;let t=Bt.exec(e.trim().toLowerCase());if(!t)return null;let[,n,o]=t;return o!==void 0&&(n==="currency"&&!Gt(o)||n==="duration"&&!Object.hasOwn(Ge,o)||Se.has(n)&&!(/^\d{1,2}$/.test(o)&&Number(o)<=Zt)||!["currency","duration",...Se].includes(n))?null:{name:n,arg:o,decimals:Se.has(n)&&o!==void 0?Number(o):void 0}}function Sr(e,t){let n=Y(e)||{name:"number",arg:void 0,decimals:void 0};switch(n.name){case"integer":return 0;case"number":return n.decimals??2;case"percent":case"percent100":return n.decimals??1;case"currency":return F(t,{style:"currency",currency:(n.arg||"EUR").toUpperCase()}).resolvedOptions().maximumFractionDigits??2;default:return null}}function He(e){return Y(e)!==null}function ne(e){return e==null||e===""?NaN:typeof e=="number"?e:Number(e)}var Te=(e,t)=>e===void 0?{maximumFractionDigits:t}:{minimumFractionDigits:e,maximumFractionDigits:e};function Wt(e,t){if(!Number.isFinite(e))return"";let n=e<=-.05?"-":"",o=Math.abs(e);if(o<60)return`${n}${F(t,{maximumFractionDigits:1}).format(o)} s`;let r=[["d",86400],["h",3600],["min",60],["s",1]],s=r.findIndex(([,f])=>o>=f),[i,a]=r[s],l=Math.floor(o/a),u=[`${l} ${i}`],c=r[s+1];if(c){let f=Math.floor((o-l*a)/c[1]);f>0&&u.push(`${f} ${c[0]}`)}return n+u.join(" ")}function Ht(e,t){if(!Number.isFinite(e))return"";let n=["B","KB","MB","GB","TB","PB"],o=Math.abs(e),r=0;for(;o>=1024&&r<n.length-1;)o/=1024,r++;let s=F(t,{maximumFractionDigits:r===0?0:1}).format(o);return`${e<0&&/[1-9]/.test(s)?"-":""}${s} ${n[r]}`}function Ae(e){return e==null?"":String(e)}function ke(e,t){let n=Y(e)||{name:"number",arg:void 0,decimals:void 0},o=r=>{let s=F(t,{...Jt,...r});return i=>{let a=ne(i);return Number.isNaN(a)?Ae(i):s.format(a)}};switch(n.name){case"text":return Ae;case"integer":return o({maximumFractionDigits:0});case"currency":return o({style:"currency",currency:(n.arg||"EUR").toUpperCase()});case"percent":return o({style:"percent",...Te(n.decimals,1)});case"percent100":{let r=o({style:"percent",...Te(n.decimals,1)});return s=>r(ne(s)/100)}case"compact":return o({notation:"compact",maximumFractionDigits:1});case"bytes":return r=>Ht(ne(r),t);case"duration":{let r=Ge[n.arg||"s"];return s=>Wt(ne(s)*r,t)}case"date":case"datetime":case"time":{let r=D(t,We[n.name]);return s=>{let i=ne(s);return Number.isFinite(i)?r.format(new Date(i)):Ae(s)}}default:return o(Te(n.decimals,2))}}function Tr(e,t){return t=$(t,"formatter"),ke(e,K(null,t.locale))}var Ze=H(64),ce=e=>e.replace(/[^ :/-]+/g,t=>`"${t.replace(/"/g,"")}"`),fe=e=>e>0?"."+"0".repeat(e):"";function ve(e,t){if(!Number.isFinite(e)||Math.abs(e)>=1e21)return 0;let n=Math.abs(e).toFixed(t).replace(/0+$/,""),o=n.indexOf(".");return o===-1?0:n.length-o-1}function Be(e,t,n=!0){let o="",r="",s=!1;for(let i of e)i.type==="integer"||i.type==="group"||i.type==="decimal"||i.type==="fraction"||i.type==="minusSign"||i.type==="percentSign"&&n?(o+=ce(r),r="",i.type==="minusSign"?o+="-":i.type==="percentSign"?o+="%":s||(o+=t,s=!0)):r+=i.value;return o+ce(r)}function Ke(e,t,n,o=!0){let r=Be(e.formatToParts(t),n,o),s=Be(e.formatToParts(-t),n,o);return s===`-${r}`?r:`${r};${s}`}function Kt(e,t){let n=F(t,{style:"currency",currency:e});return Ke(n,1234.5,`#,##0${fe(n.resolvedOptions().maximumFractionDigits)}`)}function Je(e,t,n){return Ke(F(t,{style:"percent"}),.5,`#,##0${fe(e)}`,n)}function Yt(e,t){if(!Number.isFinite(e)||e===0)return"#,##0";let n=F(t,{notation:"compact",maximumFractionDigits:1}).formatToParts(Math.abs(e)),o=n.filter(u=>u.type==="integer").map(u=>u.value).join(""),r=n.filter(u=>u.type==="fraction").map(u=>u.value).join(""),s=+`${o}.${r||0}`,i=s>0?Math.round(Math.log10(Math.abs(e)/s)):0;if(i<0||i%3!==0)return"General";let a=n.findIndex(u=>u.type==="integer"),l=n.slice(a).filter(u=>u.type==="compact"||u.type==="literal").map(u=>u.value).join("");return`#,##0${fe(r.length)}${",".repeat(i/3)}${ce(l)}`}function qt(e,t){return D(t,We[e]).formatToParts(new Date(Date.UTC(2026,0,5,3,4))).map(o=>{switch(o.type){case"year":return o.value.length===2?"yy":"yyyy";case"month":return/^\d+$/.test(o.value)?o.value.length===2?"mm":"m":"mmm";case"day":return o.value.length===2?"dd":"d";case"hour":return o.value.length===2?"hh":"h";case"minute":return"mm";case"second":return"ss";case"dayPeriod":return"AM/PM";case"weekday":return"ddd";default:return ce(o.value)}}).join("")}function Ar(e,t,n){let o=Y(e)||{name:"number",arg:void 0,decimals:void 0};switch(o.name){case"integer":return"#,##0";case"number":return`#,##0${fe(o.decimals??ve(t,2))}`;case"percent":return Je(o.decimals??ve(t*100,1),n,!0);case"percent100":return Je(o.decimals??ve(t,1),n,!1);case"currency":return Ze.getOrSet(`${e}|${n}`,()=>Kt((o.arg||"EUR").toUpperCase(),n));case"compact":return Yt(t,n);case"date":case"datetime":case"time":return Ze.getOrSet(`${o.name}|${n}`,()=>qt(o.name,n));case"text":return"@";default:return"General"}}function Ce(e,t){let n=new Int32Array(t.length),o=[];if(e.length===0)return o.push([]),{groupOf:n,paths:o};let r=1;for(let c of e)r*=c.dict.length+1;let s=r<2**52,i=new Map,a=e.length,l=e.map(c=>c.codes),u=e.map(c=>c.dict.length+1);for(let c=0;c<t.length;c++){let f=t[c],m;if(s){m=0;for(let g=0;g<a;g++)m=m*u[g]+l[g][f]+1}else{m="";for(let g=0;g<a;g++)m+=l[g][f]+","}let p=i.get(m);if(p===void 0){p=o.length;let g=new Array(a);for(let d=0;d<a;d++)g[d]=l[d][f];o.push(g),i.set(m,p)}n[c]=p}return{groupOf:n,paths:o}}function Ye(e,t,n,o,r){return{id:e,depth:t,code:n,key:o,path:r?[...r.path,o]:[],parent:r,children:[],index:0}}function $e(e,t,n={max:1/0,used:0}){let{groupOf:o,paths:r}=Ce(e,t);x("groups",n.used+r.length+(e.length>0?1:0),n.max,"groups");let s=Ye(0,0,-2,null,null),i=[s],a=Math.max(1,...e.map(m=>m.dict.length+1)),l=(Number.isFinite(n.max)?n.max:t.length*e.length+1)*a<2**53,u=new Map,c=new Array(r.length);r.forEach((m,p)=>{let g=s;for(let d=0;d<m.length;d++){let h=m[d],S=l?g.id*a+h+1:`${g.id},${h}`,N=u.get(S);if(N===void 0){n.used+i.length>=n.max&&x("groups",n.used+i.length+1,n.max,"groups");let b=h===-1?null:e[d].dict[h];N=Ye(i.length,d+1,h,b,g),i.push(N),u.set(S,N),g.children.push(N)}g=N}c[p]=g});let f=new Int32Array(t.length);for(let m=0;m<t.length;m++)f[m]=c[o[m]].id;return{root:s,nodes:i,leafOf:f,leafCount:r.length}}var Xt=(e,t)=>e===t||e===null&&t===null||typeof e=="number"&&typeof t=="number"&&Number.isNaN(e)&&Number.isNaN(t);function qe(e,t,n){let o=t==="cols"?e.colRoot:e.rowRoot;for(let r of n||[])if(o=o.children.find(s=>Xt(s.key,r)),!o)return null;return o}function $r(e,t){t=$(t,"cellRows");let{row:n=[],col:o=[]}=t,r=Array.isArray(n)?qe(e,"rows",n):n,s=Array.isArray(o)?qe(e,"cols",o):o;if(!r||!s)return new Int32Array(0);let i=(l,u,c)=>{let f=l[u];for(;f&&f.depth>c.depth;)f=f.parent;return f===c},a=[];for(let l=0;l<e.rows.length;l++)i(e.rowNodes,e.rowLeafOf[l],r)&&i(e.colNodes,e.colLeafOf[l],s)&&a.push(e.rows[l]);return Int32Array.from(a)}function Xe(e){return JSON.stringify(e)}function Ie(e,t,n,o,r){let s=new Set(n.map(Xe)),i=[];if(t===0)return i.push({node:e,kind:"leaf"}),i;let a=l=>{if(l.children.length===0){i.push({node:l,kind:"leaf"});return}if(s.has(Xe(l.path))){i.push({node:l,kind:"collapsed"});return}l.children.forEach(a),o&&i.push({node:l,kind:"subtotal"})};return e.children.forEach(a),(r||i.length===0)&&i.push({node:e,kind:"grand"}),i}var xe=Object.freeze({json:5e6,name:256,axisFields:8,values:16,filters:128,items:1e5,derived:64,sort:64,collapsed:1e4,topCount:1e6,rows:1e6,groups:5e5,pivotCells:2e6,work:1e8,cells:2e6,cacheEntries:16}),Me=Object.freeze({groups:2**27}),Qe=10;function j(e){let t=e&&e.limits;if(t==null)return xe;if(typeof t!="object")throw new P("INVALID_OPTION","options.limits must be an object");let n={...xe};for(let o of Object.keys(t)){let r=t[o];if(!Object.hasOwn(xe,o))throw new P("INVALID_OPTION",`unknown limit "${o}"`);if(!Number.isInteger(r)||r<1)throw new P("INVALID_OPTION",`limits.${o} must be a whole number of 1 or more`);if(Object.hasOwn(Me,o)&&r>Me[o])throw new P("INVALID_OPTION",`limits.${o} must be at most ${Me[o]}`);n[o]=r}return Object.freeze(n)}var Le=1e-9;function et(e){let t=new Date(e),n=(t.getUTCDay()+6)%7,o=Date.UTC(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate()-n+3),r=new Date(o).getUTCFullYear(),s=new Date(Date.UTC(r,0,4)),i=s.getTime()+(3-(s.getUTCDay()+6)%7)*C,a=1+Math.round((o-i)/(7*C));return{year:r,week:a}}var Qt=(e,t)=>D(t,{month:"short",timeZone:"UTC"}).format(new Date(Date.UTC(2e3,e-1,1))),en=(e,t)=>D(t,{month:"short",year:"numeric",timeZone:"UTC"}).format(new Date(Date.UTC(Math.floor(e/100),e%100-1,1))),tn=(e,t)=>D(t,{weekday:"short",timeZone:"UTC"}).format(new Date(Date.UTC(2024,0,e))),Dr=Object.freeze(["year","yearQuarter","yearMonth","yearWeek","day"]),_r=Object.freeze(["quarter","month","week","weekday","hour"]),Z=Object.freeze({year:{source:"date",type:"number",value:e=>e.getUTCFullYear(),label:e=>String(e)},quarter:{source:"date",type:"number",value:e=>Math.floor(e.getUTCMonth()/3)+1,label:e=>`Q${e}`},month:{source:"date",type:"number",value:e=>e.getUTCMonth()+1,label:Qt},week:{source:"date",type:"number",value:e=>et(e.getTime()).week,label:e=>`W${oe(e)}`},day:{source:"date",type:"date",value:e=>Math.floor(e.getTime()/C)*C},hour:{source:"date",type:"number",value:e=>e.getUTCHours(),label:e=>`${oe(e)}:00`},weekday:{source:"date",type:"number",value:e=>(e.getUTCDay()+6)%7+1,label:tn},yearQuarter:{source:"date",type:"number",value:e=>e.getUTCFullYear()*10+Math.floor(e.getUTCMonth()/3)+1,label:e=>`Q${e%10} ${Math.floor(e/10)}`},yearMonth:{source:"date",type:"number",value:e=>e.getUTCFullYear()*100+e.getUTCMonth()+1,label:en},yearWeek:{source:"date",type:"number",value:e=>{let t=et(e.getTime());return t.year*100+t.week},label:e=>`${Math.floor(e/100)}-W${oe(e%100)}`},bin:{source:"number",type:"number"}}),jr=Object.freeze(Object.keys(Z)),nn=Object.freeze([{unit:"day",maxDays:62},{unit:"yearMonth",maxDays:2*366},{unit:"yearQuarter",maxDays:6*366},{unit:"year",maxDays:1/0}]);function Rr(e,t){let n=e.column(t);if(!n||n.type!=="date"||n.derived)return null;let o=1/0,r=-1/0;for(let i of n.dict)typeof i=="number"&&(o=Math.min(o,i),r=Math.max(r,i));let s=(r-o)/C;return s>=1?nn.find(i=>s<=i.maxDays).unit:null}function rn(e,t){let n=Math.min(20,Math.max(Q(e),Q(t))),o=10**n,r=Math.round(e*o),s=Math.round(t*o),i=n<=15&&r>0&&Number.isSafeInteger(r)&&Number.isSafeInteger(s),a=l=>{let u=s+l*r;return i&&Number.isSafeInteger(u)?u/o:t+l*e};return{decimals:n,lowerOf(l){let u=Math.floor((l-t)/e);return Number.isSafeInteger(u)?(l>=a(u+1)?u++:l<a(u)&&u--,a(u)):NaN},upperOf(l){return a(Math.round((l-t)/e)+1)}}}function nt(e,t){let n=e.column(t.field),o=Object.hasOwn(Z,t.by)?Z[t.by]:null;if(!n||!n.values||!o||n.type!==o.source)return null;let r=`derived:${n.key}:${t.by}:${t.size??""}:${t.origin??""}`,s=e.cache.getOrSet(r,()=>sn(n,t,o,r));return s.name===t.name?s:{...s,name:t.name,key:t.name.toLowerCase()}}var tt=9999;function on(e,t){return e.decimals>0?!1:t.every(n=>Math.abs(n)<=tt&&Math.abs(e.upperOf(n))<=tt)}function sn(e,t,n,o){let r=e.values.length,s=new Int32Array(r),i=new Float64Array(r),a=[],l=new Map,u=t.by==="bin"?rn(t.size,t.origin??0):null,c=new Date(0);for(let m=0;m<r;m++){let p=e.values[m],g=NaN;if(Number.isNaN(p)||(u?g=u.lowerOf(p):(c.setTime(p),g=n.value(c))),Number.isNaN(g)){s[m]=-1,i[m]=NaN;continue}let d=l.get(g);d===void 0&&(d=a.length,a.push(g),l.set(g,d)),s[m]=d,i[m]=g}let f={name:t.name,key:t.name.toLowerCase(),id:o,type:n.type,codes:s,dict:a,values:i,derived:!0};if(n.type==="date")f.dateOnly=!0;else if(u){let m=!on(u,a);f.labeler=(p,g)=>{let d=F(g,{maximumFractionDigits:u.decimals,signDisplay:"negative",useGrouping:m});return`${d.format(p)} \u2013 ${d.format(u.upperOf(p))}`}}else f.labeler=n.label;return f}var rt="UTC",an=/^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?(Z|[+-]\d{2}(?::?\d{2})?)?)?$/;function ot(e,t,n,o=0,r=0,s=0,i=0){if(e>=100)return Date.UTC(e,t-1,n,o,r,s,i);let a=new Date(Date.UTC(2e3,t-1,n,o,r,s,i));return a.setUTCFullYear(e),a.getTime()}function st(e){let t=an.exec(e.trim());if(!t)return null;let n=t[8],o=+t[1],r=+t[2],s=+t[3],i=t[4]===void 0?0:+t[4],a=t[5]===void 0?0:+t[5],l=t[6]===void 0?0:+t[6],u=t[7];if(r<1||r>12||s<1||i>23||a>59||l>59)return null;let c=ot(o,r,s,i,a,l,u?Math.round(+`0.${u}`*1e3):0);if(new Date(c).getUTCDate()!==s)return null;let f=null;if(n)if(n==="Z")f=0;else{let m=n.slice(1).replace(":",""),p=Number(m.slice(0,2)),g=Number(m.slice(2)||0);if(p>23||g>59)return null;f=(n[0]==="-"?-1:1)*(p*60+g)}return{ms:c,offsetMinutes:f}}function it(e){return st(e)!==null}function at(e){if(e==null)return rt;if(e==="local")return new Intl.DateTimeFormat().resolvedOptions().timeZone??rt;let t=Fe(e);if(!t)throw new P("INVALID_OPTION",`time zone ${JSON.stringify(e)} is not "UTC", "local" or an IANA name`);return t}function Fe(e){if(typeof e!="string"||e.length===0||e.length>64)return null;if(e.toUpperCase()==="UTC")return"UTC";try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).resolvedOptions().timeZone}catch{return null}}function lt(e){if(e==="UTC")return r=>r;let t=new Intl.DateTimeFormat("en-US",{timeZone:e,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),n=r=>{let s={};for(let a of t.formatToParts(new Date(r)))s[a.type]=Number(a.value);let i=r-(r%1e3+1e3)%1e3;return ot(s.year,s.month,s.day,s.hour,s.minute,s.second)-i},o=new Map;return r=>{let s=Math.floor(r/C),i=o.get(s);if(i===void 0){let a=n(s*C),l=n((s+1)*C-1);i=a===l?a:NaN,o.set(s,i)}return r+(Number.isNaN(i)?n(r):i)}}function de(e,t){if(e instanceof Date){let n=e.getTime();return Number.isNaN(n)?NaN:t(n)}if(typeof e=="string"){let n=st(e);return n?n.offsetMinutes===null?n.ms:t(n.ms-n.offsetMinutes*6e4):NaN}return typeof e=="number"&&Number.isFinite(e)?t(e):NaN}var ln=Object.freeze(["string","number","boolean","date"]),un=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,cn=100;function ct(e){let t=e.trim();return t.length<=cn&&un.test(t)}var fn=100,ft=e=>e==null||e===""||typeof e=="function"||typeof e=="symbol";function dn(e,t){if(ft(e))return null;switch(typeof e){case"number":return Number.isFinite(e)?"number":null;case"boolean":return"boolean";case"string":return it(e)?"date":t&&ct(e)?"number":"string";case"bigint":return"number";default:return e instanceof Date?Number.isNaN(e.getTime())?null:"date":"string"}}function ut(e,t){let n=null;for(let o=0;o<e.length;o++){let r=dn(e[o],t);if(r==="string")return"string";if(!(r===null||r===n))if(n===null)n=r;else return"string"}return n??"null"}function mn(e){if(typeof e=="string")return e;if(e instanceof Date)return Number.isNaN(e.getTime())?"":e.toISOString();if(typeof e=="object")try{return JSON.stringify(e)??""}catch{return""}return String(e)}function pn(e){if(typeof e=="number")return Number.isFinite(e)?e:NaN;if(typeof e=="bigint")return Number(e);if(typeof e=="boolean")return e?1:0;if(typeof e=="string"&&ct(e)){let t=Number(e.trim());return Number.isFinite(t)?t:NaN}return NaN}function gn(e){if(typeof e=="boolean")return e;if(typeof e=="number")return Number.isFinite(e)?e!==0:null;if(typeof e=="string"){let t=e.trim().toLowerCase();if(t==="true"||t==="1"||t==="yes")return!0;if(t==="false"||t==="0"||t==="no")return!1}return null}var yn={number:e=>{let t=pn(e);return Number.isNaN(t)?null:t},boolean:gn,date:(e,t)=>{let n=de(e,t);return Number.isNaN(n)?null:n},string:e=>{let t=mn(e);return t===""?null:t},null:()=>null};function hn(e,t,n,o){let r=t.length,s=new Int32Array(r),i=[],a=new Map,l=n==="number"||n==="boolean"||n==="date"?new Float64Array(r):null,u=yn[n],c=!0;for(let p=0;p<r;p++){let g=t[p],d=ft(g)?null:u(g,o);if(d===null){s[p]=-1,l&&(l[p]=NaN);continue}n==="date"&&d%C!==0&&(c=!1);let h=a.get(d);h===void 0&&(h=i.length,i.push(d),a.set(d,h)),s[p]=h,l&&(l[p]=typeof d=="boolean"?d?1:0:d)}let f=e.toLowerCase(),m={name:e,key:f,id:`column:${f}`,type:n,codes:s,dict:i,values:l};return n==="date"&&(m.dateOnly=c),m}function Wr(e,t){t=$(t,"encode"),W(Array.isArray(e),"encode(rows): rows must be an array of objects");let n=j(t);x("rows",e.length,n.rows,"rows");let o=e.length,r=at(t.timeZone),s=lt(r),i=t.inferNumbers===!0,a=Array.isArray(t.columns)?new Set(t.columns.filter(d=>typeof d=="string").map(d=>d.toLowerCase())):null,l=[],u=(d,h)=>{l.length<fn&&l.push({path:d,message:h})},c=new Map;for(let d=0;d<o;d++){let h=e[d];if(h===null||typeof h!="object")continue;let S=new Set;for(let N of Object.keys(h)){let b=N.toLowerCase(),O=c.get(b);if(O===void 0){if(a&&!a.has(b))continue;O={name:N,raw:new Array(o).fill(null),spellings:new Set([N])},c.set(b,O)}else O.spellings.has(N)||(O.spellings.add(N),u(O.name,`"${N}" and "${O.name}" are one column: names match case-insensitively`));S.has(b)&&u(O.name,`row ${d} has "${N}" next to another spelling of it; the later value is used`),S.add(b),O.raw[d]=h[N]}}let f=new Map;if(t.types&&typeof t.types=="object")for(let d of Object.keys(t.types)){let h=t.types[d];ln.includes(h)&&f.set(d.toLowerCase(),h)}let m=a?[...a].filter(d=>c.has(d)):[...c.keys()],p=new Map,g=m.map(d=>{let{name:h,raw:S}=c.get(d),N=ut(S,i),b=N==="string"&&!i?ut(S,!0):N;return p.set(d,b),hn(h,S,f.get(d)??N,s)});return bn(o,g,{timeZone:r,issues:l,detected:p,cacheEntries:n.cacheEntries})}function bn(e,t,n){let o=new Map(t.map(s=>[s.key,s])),r={length:e,columns:t,schema:{fields:t.map(s=>({name:s.name,type:s.type,detected:n.detected.get(s.key)??s.type}))},column:s=>typeof s=="string"?o.get(s.toLowerCase()):void 0,timeZone:n.timeZone,issues:n.issues};return Object.defineProperty(r,"cache",{value:H(n.cacheEntries),enumerable:!1}),r}function dt(e){let t=e;return t!==null&&typeof t=="object"&&Array.isArray(t.columns)&&typeof t.column=="function"&&"cache"in t}var wn=Object.freeze(["equals","notEquals","contains","notContains","beginsWith","endsWith"]),Nn=Object.freeze(["=","!=",">",">=","<","<=","between","notBetween"]),yt=(e,t)=>typeof e=="string"&&t.includes(e)?e:null;function On(e,t,n){let o=t.toLocaleLowerCase(),r=n.toLocaleLowerCase();switch(e){case"equals":return o===r;case"notEquals":return o!==r;case"contains":return o.includes(r);case"notContains":return!o.includes(r);case"beginsWith":return o.startsWith(r);case"endsWith":return o.endsWith(r);default:return!0}}function Sn(e,t){if(typeof t!="number"||Number.isNaN(t))return!1;let n=e.value,o=Math.min(n,e.value2??n),r=Math.max(n,e.value2??n);switch(e.op){case"=":return t===n;case"!=":return t!==n;case">":return t>n;case">=":return t>=n;case"<":return t<n;case"<=":return t<=n;case"between":return t>=o&&t<=r;case"notBetween":return t<o||t>r;default:return!0}}function me(e,t){if(t===null)return null;switch(e){case"number":{let n=typeof t=="number"?t:typeof t=="string"&&t.trim()!==""?Number(t):NaN;return Number.isFinite(n)?n:void 0}case"date":{let n=typeof t=="number"?t:typeof t=="string"?de(t,o=>o):NaN;return Number.isFinite(n)?n:void 0}case"boolean":return typeof t=="boolean"?t:t==="true"?!0:t==="false"?!1:void 0;default:return typeof t=="string"||typeof t=="number"||typeof t=="boolean"?String(t).slice(0,1e4):void 0}}function mt(e,t,n,o,r){let s=y(e,"items");if(!Array.isArray(s))return r.issue(o,"needs a list of items","filterNoItems");s.length>r.limits.items&&r.issue(`${o}.items`,`more than ${r.limits.items} items`,"tooManyItems",{max:r.limits.items}),t.items=[];for(let i of s.slice(0,r.limits.items)){let a=me(n.type,i);a===void 0?r.issue(`${o}.items`,`item ${JSON.stringify(i)} does not fit the ${n.type} field`,"itemType",{value:A(i),type:n.type}):t.items.push(a)}return t}function Tn(e,t,n,o,r){let s=yt(y(e,"op"),wn),i=y(e,"value");return s?typeof i!="string"||i.length>1e3?r.issue(o,"needs a text value","filterText"):Object.assign(t,{op:s,value:i}):r.issue(o,`unknown label operator ${JSON.stringify(y(e,"op"))}`,"filterLabelOp",{value:A(y(e,"op"))})}function ht(e,t,n,o){let r=y(e,"by"),s=r===void 0?n.defaultRef(o):n.valueRef(r,`${t}.by`);return s&&n.resultType(s)!=="number"?(n.issue(`${t}.by`,`${s.agg} gives no number to filter by`,"filterNotNumber",{agg:s.agg}),null):s}function An(e,t,n,o,r,s){let i=ht(e,o,r,s);if(!i)return;let a=z(y(e,"count"));if(a===null||a<1||a>r.limits.topCount||!Number.isInteger(a))return r.issue(o,"needs a whole count of 1 or more","filterCount",{max:r.limits.topCount});let l=y(e,"bottom");return Object.assign(t,{by:i,count:a,bottom:typeof l=="boolean"?l:!1})}function vn(e,t,n,o,r,s){let i=ht(e,o,r,s);if(!i)return;let a=yt(y(e,"op"),Nn),l=z(y(e,"value"));if(!a||l===null)return r.issue(o,"needs an operator and a number","filterValue");if(Object.assign(t,{by:i,op:a,value:l}),a==="between"||a==="notBetween"){let u=z(y(e,"value2"));if(u===null)return r.issue(o,`${a} needs value2`,"filterValue2",{value:a});t.value2=u}return t}function pt(e){return(t,n)=>{let o=new Map(t.dict.map((s,i)=>[s,i])),r=new Uint8Array(t.dict.length+1);for(let s of n.items){let i=s===null?-1:o.get(s);i!==void 0&&(r[i+1]=1)}return e?r:r.map(s=>1-s)}}function kn(e,t,n){let o=new Uint8Array(e.dict.length+1);for(let r=-1;r<e.dict.length;r++){let s=te(e,r===-1?null:e.dict[r],n);o[r+1]=On(t.op,s,t.value)?1:0}return o}function Cn(e,t){return Uint8Array.from(t,n=>Sn(e,n)?1:0)}function $n(e,t,n){let o=new Uint8Array(n.length),r=new Map;n.forEach((s,i)=>{let a=s.slice(0,-1).join(",");r.has(a)||r.set(a,[]),r.get(a).push(i)});for(let s of r.values())s.filter(i=>typeof t[i]=="number").sort((i,a)=>(e.bottom?t[i]-t[a]:t[a]-t[i])||i-a).slice(0,e.count).forEach(i=>{o[i]=1});return o}var B=Object.freeze({include:{stage:"items",normalize:mt,allowed:pt(!0)},exclude:{stage:"items",normalize:mt,allowed:pt(!1)},label:{stage:"items",normalize:Tn,allowed:kn},top:{stage:"values",normalize:An,keep:$n},value:{stage:"values",normalize:vn,keep:Cn}}),Xr=Object.freeze(Object.keys(B));function gt(e,t){let n=0,o=new Int32Array(e.length);for(let r=0;r<e.length;r++)t(e[r],r)&&(o[n++]=e[r]);return o.slice(0,n)}function bt(e,t){let{view:n,columnOf:o,locale:r}=e;for(let a of n.filters){let l=B[a.type],u=o(a.field);if(l.stage!=="items"||!u)continue;let c=l.allowed(u,a,r),f=u.codes;t=gt(t,m=>c[f[m]+1]===1)}let s=a=>{let l=n.rows.indexOf(a);if(l!==-1)return{fields:n.rows.slice(0,l+1),order:l};let u=n.cols.indexOf(a);return u!==-1?{fields:n.cols.slice(0,u+1),order:100+u}:{fields:[a],order:200}},i=n.filters.filter(a=>B[a.type].stage==="values").map((a,l)=>({f:a,i:l,...s(a.field)})).sort((a,l)=>a.order-l.order||a.i-l.i);for(let{f:a,fields:l}of i){let u=l.map(o);if(u.includes(null))continue;let{groupOf:c,paths:f}=e.groupBy(u,t),m=e.aggregateGroups(a.by,t,c,f.length),p=B[a.type].keep(a,m,f);t=gt(t,(g,d)=>p[c[d]]===1)}return t}var J=(e,t)=>e===null||t===null||t===0?null:e/t;function Ee(e){let t=e.axis!=="cols",n=t?e.rowNode:e.colNode;return{node:n,at:r=>t?e.raw(r,e.colNode):e.raw(e.rowNode,r),siblings:n.parent?n.parent.children:[n]}}function wt(e){return(t,n)=>{let{node:o,at:r,siblings:s}=Ee(n);if(!o.parent||o.index===0||t===null)return null;let i=r(s[o.index-1])??0;return e?J(t-i,i):t-i}}function Nt(e){return(t,n)=>{let{node:o,at:r,siblings:s}=Ee(n);if(!o.parent)return e?t===null?null:1:t;let i=0;for(let a=0;a<=o.index;a++)i+=r(s[a])??0;return e?J(i,r(o.parent)):i}}function Ot(e){return(t,n)=>{let{node:o,at:r,siblings:s}=Ee(n);if(!o.parent||t===null)return null;let i=1;for(let a of s){let l=r(a);l!==null&&(e?l>t:l<t)&&i++}return i}}var R=Object.freeze({percentOfGrandTotal:{format:"percent",compute:(e,t)=>J(e,t.raw(t.rowRoot,t.colRoot))},percentOfRowTotal:{format:"percent",compute:(e,t)=>J(e,t.raw(t.rowNode,t.colRoot))},percentOfColumnTotal:{format:"percent",compute:(e,t)=>J(e,t.raw(t.rowRoot,t.colNode))},percentOfParentRow:{format:"percent",compute:(e,t)=>J(e,t.raw(t.rowNode.parent??t.rowNode,t.colNode))},percentOfParentColumn:{format:"percent",compute:(e,t)=>J(e,t.raw(t.rowNode,t.colNode.parent??t.colNode))},differenceFromPrevious:{format:"number",alongAxis:!0,compute:wt(!1)},percentDifferenceFromPrevious:{format:"percent",alongAxis:!0,compute:wt(!0)},runningTotal:{format:"number",alongAxis:!0,additive:!0,compute:Nt(!1)},percentRunningTotal:{format:"percent",alongAxis:!0,additive:!0,compute:Nt(!0)},rankAscending:{format:"integer",alongAxis:!0,compute:Ot(!1)},rankDescending:{format:"integer",alongAxis:!0,compute:Ot(!0)}}),eo=Object.freeze(Object.keys(R));var Tt=1;var In=Object.freeze(["auto","bar","line","area","pie","donut","heatmap"]),co=Object.freeze(["pie","donut"]),xn=Object.freeze(["table","chart"]),fo=Object.freeze(["colorScale","dataBar"]),Mn=Object.freeze(["auto","off","value","percent","both"]),Ln=Object.freeze(["outside","inside"]),Fn=Object.freeze(["auto","bottom","right","off"]),En=Object.freeze(["auto","all","nth"]),Dn=Object.freeze(["auto","on","off"]),St=/^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/;function _n(){return{version:Tt,rows:[],cols:[],values:[],filters:[],derived:[],sort:[],totals:{grandTotalRow:!0,grandTotalColumn:!0,rowSubtotals:!0,colSubtotals:!0},collapsed:{rows:[],cols:[]},display:"table",chart:{type:"auto",stacked:!1,horizontal:!1,valueLabels:"auto",legend:"auto",title:null,smooth:!1,axisLabels:"auto",groupLabels:"auto",labelPosition:"outside"},formatting:{locale:null,timeZone:null}}}var jn=Object.freeze({});function Rn(e){return Un(e,jn,Tt)}function Un(e,t,n){let o=[];if(!se(e))return{view:null,issues:[{path:"",message:"not a view object",code:"notView"}]};let r=y(e,"version")??n;if(!Number.isInteger(r)||r<1)return{view:null,issues:[{path:"version",message:`unknown version ${JSON.stringify(r)}`,code:"badVersion",params:{value:A(r)}}]};if(r>n)return{view:null,issues:[{path:"version",message:`version ${r} is newer than this pivotkit-core reads (${n}); update pivotkit-core`,code:"newerVersion",params:{value:r,max:n}}]};let s=e;for(let i=r;i<n;i++){let a=t[i];if(typeof a!="function")return{view:null,issues:[{path:"version",message:`no migration from version ${i}`,code:"noMigration",params:{value:i}}]};s=a(s)}return{view:{...s,version:n},issues:o}}function re(e,t,n){return typeof e=="string"&&t.includes(e)?e:n}function pe(e,t){return typeof e=="boolean"?e:t}function At(e){return(Array.isArray(e)?e:e&&Array.isArray(e.fields)?e.fields:e&&e.schema?e.schema.fields:[]).filter(n=>n&&typeof n.name=="string").map(n=>({name:n.name,type:typeof n.type=="string"?n.type:"string"}))}function q(e,t,n,o,r){let s=t.split(".").reduce((i,a)=>y(i,a),e);if(s!==void 0){if(!Array.isArray(s)){o.issue(t,"not a list","notList");return}s.slice(0,n).forEach((i,a)=>r(i,`${t}[${a}]`,a)),s.length>n&&o.issue(t,`more than ${n} entries`,"tooMany",{max:n})}}function Pn(e,t,n){q(e,"derived",n.limits.derived,n,(o,r)=>{let s=n.text(y(o,"name")),i=n.fields.get(String(y(o,"field")??"").toLowerCase()),a=y(o,"by"),l=typeof a=="string"&&Object.hasOwn(Z,a)?Z[a]:null;if(!s)return n.issue(r,"needs a name","groupingNoName");if(n.fields.has(s.toLowerCase()))return n.issue(r,`name "${s}" is already a field`,"groupingNameTaken",{field:s});if(!i||i.derived)return n.issue(r,"unknown source field","groupingNoSource",{field:A(y(o,"field"))});if(!l)return n.issue(r,"unknown grouping","groupingUnknown",{value:A(a)});if(i.type!==l.source)return l.source==="number"?n.issue(r,"bins need a number field","binsNeedNumber",{field:i.name}):n.issue(r,"date grouping needs a date field","groupingNeedsDate",{field:i.name});let u={name:s,field:i.name,by:a};if(a==="bin"){let c=z(y(o,"size"));if(c===null||c<Le)return n.issue(r,`bins need a size of at least ${Le}`,"binSize");u.size=c,u.origin=z(y(o,"origin"))??0}t.derived.push(u),n.fields.set(s.toLowerCase(),{name:s,type:l.type,derived:!0})})}function zn(e,t,n){let o=new Set;for(let r of["rows","cols"])q(e,r,n.limits.axisFields,n,(s,i)=>{let a=n.resolve(s);if(!a)return n.issue(i,`unknown field ${JSON.stringify(s)}`,"unknownField",{field:A(s)});if(o.has(a.name))return n.issue(i,`"${a.name}" is already placed`,"placedTwice",{field:a.name});o.add(a.name),t[r].push(a.name)})}function Vn(e,t,n){let o=y(e,"type");if(o==="colorScale"){let r=y(e,"colors"),s=Array.isArray(r)?r.filter(i=>typeof i=="string"&&St.test(i)).slice(0,3):[];return Array.isArray(r)&&r.length>0&&(s.length!==r.length||s.length<2)&&n.issue(`${t}.colors`,"two or three colours as #rgb or #rrggbb","colorScaleColors"),{type:o,colors:s.length>=2?s:[]}}if(o==="dataBar"){let r=y(e,"color"),s=typeof r=="string"&&St.test(r);return r!=null&&!s&&n.issue(`${t}.color`,"a colour as #rgb or #rrggbb","dataBarColor"),{type:o,color:s?r:null}}return n.issue(t,`unknown conditional format ${JSON.stringify(o)}`,"unknownConditional",{value:A(o)}),null}function Zn(e,t,n,o){let r=typeof e=="string"?{type:e}:e,s=y(r,"type"),i=typeof s=="string"&&Object.hasOwn(R,s)?R[s]:null;return i?i.additive&&!E(t.agg).additive?(o.issue(n,`${s} needs an aggregator that adds up (sum or count), not ${t.agg}`,"showAsNotAdditive",{value:s,agg:t.agg}),null):{type:s,axis:re(y(r,"axis"),["rows","cols"],"rows")}:(o.issue(n,`unknown show-as ${JSON.stringify(s)}`,"unknownShowAs",{value:A(s)}),null)}function Bn(e,t,n){q(e,"values",n.limits.values,n,(o,r)=>{let s=n.valueRef(o,r);if(!s)return;let i=n.resultType(s)==="number",a={...s,format:null,label:null,showAs:null,conditional:null},l=y(o,"format");l!=null&&(He(l)?a.format=l.trim().toLowerCase():n.issue(`${r}.format`,`unknown format ${JSON.stringify(l)}`,"unknownFormat",{value:A(l)}));let u=y(o,"label");u!=null&&(a.label=n.text(u),a.label===null&&n.issue(`${r}.label`,`not a text up to ${n.limits.name} characters`,"badLabel",{max:n.limits.name}));let c=y(o,"showAs");c!=null&&(i?a.showAs=Zn(c,s,`${r}.showAs`,n):n.issue(`${r}.showAs`,`${s.agg} has no number to show as ${JSON.stringify(y(c,"type")??c)}`,"showAsNotNumber",{agg:s.agg}));let f=y(o,"conditional");f!=null&&(i?a.conditional=Vn(f,`${r}.conditional`,n):n.issue(`${r}.conditional`,"conditional formatting needs a number value","conditionalNotNumber",{agg:s.agg})),t.values.push(a)})}function Jn(e,t,n){q(e,"filters",n.limits.filters,n,(o,r)=>{let s=n.resolve(y(o,"field")),i=y(o,"type"),a=typeof i=="string"&&Object.hasOwn(B,i)?B[i]:null;if(!s)return n.issue(r,`unknown field ${JSON.stringify(y(o,"field"))}`,"unknownField",{field:A(y(o,"field"))});if(!a)return n.issue(r,`unknown filter type ${JSON.stringify(i)}`,"unknownFilterType",{value:A(i)});let l=a.normalize(o,{field:s.name,type:i},s,r,n,t);l&&t.filters.push(l)})}var Gn=Object.freeze(["label","value","custom"]);function Wn(e,t,n,o){if(!Array.isArray(e))return o.issue(n,"a custom order needs a list of items","sortNoItems"),null;e.length>o.limits.items&&o.issue(n,`more than ${o.limits.items} items`,"tooManyItems",{max:o.limits.items});let r=new Set,s=[];for(let i of e.slice(0,o.limits.items)){let a=me(t.type,i);a===void 0?o.issue(n,`item ${JSON.stringify(i)} does not fit the ${t.type} field`,"itemType",{value:A(i),type:t.type}):r.has(a)||(r.add(a),s.push(a))}return s}function Hn(e,t,n){let o=new Set;q(e,"sort",n.limits.sort,n,(r,s)=>{let i=n.resolve(y(r,"field"));if(!i||o.has(i.name))return i?n.issue(s,`"${i.name}" is sorted twice`,"sortedTwice",{field:i.name}):n.issue(s,`unknown field ${JSON.stringify(y(r,"field"))}`,"unknownField",{field:A(y(r,"field"))});let a=re(y(r,"by"),Gn,"label"),l={field:i.name,by:a,order:re(y(r,"order"),["asc","desc"],"asc")};if(a==="custom"){let u=Wn(y(r,"items"),i,`${s}.items`,n);if(!u)return;l.items=u}if(a==="value"){let u=y(r,"value")===void 0?n.defaultRef(t):n.valueRef(y(r,"value"),`${s}.value`);if(!u)return;l.value=u}o.add(i.name),t.sort.push(l)})}function Kn(e,t,n){let o=y(e,"totals");if(o!==void 0){if(!se(o))return n.issue("totals","not an object","badTotals");for(let r of Object.keys(t.totals))t.totals[r]=pe(y(o,r),t.totals[r])}}function Yn(e,t,n){for(let o of["rows","cols"]){let r=t[o].map(i=>n.fields.get(i.toLowerCase()).type),s=new Set;q(e,`collapsed.${o}`,n.limits.collapsed,n,i=>{if(!Array.isArray(i)||i.length===0||i.length>=r.length)return n.issue(`collapsed.${o}`,`path ${JSON.stringify(i)} does not fit the ${o}`,"collapsedPath");let a=i.map((u,c)=>me(r[c],u));if(a.includes(void 0))return n.issue(`collapsed.${o}`,`path ${JSON.stringify(i)} does not fit the field types`,"collapsedPath");let l=JSON.stringify(a);s.has(l)||(s.add(l),t.collapsed[o].push(a))})}}function qn(e,t,n){let o=y(e,"display");t.display=re(o,xn,t.display),o!==void 0&&t.display!==o&&n.issue("display",`unknown display ${JSON.stringify(o)}`,"unknownSetting",{value:A(o)});let r=y(e,"chart");if(r!==void 0){let s=(a,l,u)=>{let c=y(r,a),f=re(c,l,u);return c!==void 0&&f!==c&&n.issue(`chart.${a}`,`unknown ${a} ${JSON.stringify(c)}`,"unknownSetting",{value:A(c)}),f},i=y(r,"title");t.chart={type:s("type",In,t.chart.type),stacked:pe(y(r,"stacked"),!1),horizontal:pe(y(r,"horizontal"),!1),valueLabels:s("valueLabels",Mn,"auto"),legend:s("legend",Fn,"auto"),title:i==null?null:n.text(i),smooth:pe(y(r,"smooth"),!1),axisLabels:s("axisLabels",En,"auto"),groupLabels:s("groupLabels",Dn,"auto"),labelPosition:s("labelPosition",Ln,"outside")},i!=null&&t.chart.title===null&&!(typeof i=="string"&&i.trim()==="")&&n.issue("chart.title",`not a text up to ${n.limits.name} characters`,"badTitle",{max:n.limits.name})}}function Xn(e,t,n){let o=y(e,"formatting"),r=y(o,"locale");r!=null&&(t.formatting.locale=je(r),t.formatting.locale===null&&n.issue("formatting.locale",`unknown locale ${JSON.stringify(r)}`,"unknownLocale",{value:A(r)}));let s=y(o,"timeZone");s!=null&&(t.formatting.timeZone=Fe(s),t.formatting.timeZone===null&&n.issue("formatting.timeZone",`unknown time zone ${JSON.stringify(s)}`,"unknownTimeZone",{value:A(s)}))}var Qn=[Pn,zn,Bn,Jn,Hn,Kn,Yn,qn,Xn];function er(e,t,n){let o=new Map(At(e).map(s=>[s.name.toLowerCase(),s])),r={limits:t,fields:o,issue:(s,i,a,l)=>{n.push(l?{path:s,message:i,code:a,params:l}:{path:s,message:i,code:a})},text:s=>{if(typeof s!="string")return null;let i=s.trim();return i===""||i.length>t.name?null:i},resolve:s=>typeof s=="string"&&s.length<=t.name?o.get(s.trim().toLowerCase()):void 0,resultType:s=>E(s.agg).resultType(s.field?o.get(s.field.toLowerCase()).type:"number"),defaultRef:s=>s.values.length?{field:s.values[0].field,agg:s.values[0].agg}:{field:null,agg:"count"},valueRef:(s,i)=>{if(!se(s))return r.issue(i,"not a value reference","notValueRef"),null;let a=y(s,"agg"),l=y(s,"field"),u=l==null?null:r.resolve(l);return E(a)?u===void 0?(r.issue(i,`unknown field ${JSON.stringify(l)}`,"unknownField",{field:A(l)}),null):u===null&&a!=="count"?(r.issue(i,`${a} needs a field`,"aggregatorNeedsField",{agg:a}),null):u&&!we(a,u.type)?(r.issue(i,`${a} does not work on the ${u.type} field "${u.name}"`,"aggregatorType",{agg:a,type:u.type,field:u.name}),null):{field:u?u.name:null,agg:a}:(r.issue(i,`unknown aggregator ${JSON.stringify(a)}`,"unknownAggregator",{value:A(a)}),null)}};return r}function vt(e,t,n){n=$(n,"normalize");let o=j(n),r=[],s=_n(),i=(f,m,p,g)=>({view:s,issues:[...r,g?{path:f,message:m,code:p,params:g}:{path:f,message:m,code:p}]}),a;try{let f=typeof e=="string"?e:JSON.stringify(e);if(typeof f!="string")return i("","not a view object","notView");if(f.length>o.json)return i("",`larger than ${o.json} characters`,"tooLarge",{max:o.json});a=JSON.parse(f)}catch{return i("","not valid JSON","notJson")}let l=Rn(a);if(r.push(...l.issues),l.view===null)return{view:s,issues:r};let u=l.view;for(let f of Object.keys(u))Object.hasOwn(s,f)||r.push({path:f.slice(0,100),message:"unknown key",code:"unknownKey"});let c=er(t,o,r);for(let f of Qn)f(u,s,c);return{view:s,issues:r}}function mo(e,t){return At(t).concat((e.derived||[]).map(n=>({name:n.name,type:Z[n.by].type,derived:!0})))}var De=e=>`${e.agg}\0${e.field??""}`;function tr(e,t){let n=new Map(t.derived.map(r=>[r.name.toLowerCase(),r])),o=new Map;return r=>{if(r==null)return null;let s=r.toLowerCase();if(!o.has(s)){let i=n.get(s);o.set(s,i?nt(e,i):e.column(r)??null)}return o.get(s)}}function Ct(e,t,n,o,r){let s=n?Oe(n,r,e.cache):null;return E(t.agg).create(n,o,s,i=>te(n,n.dict[i],r))}function nr(e,t,n,o){let r=n.nodes.length,s=(t.depth+1)*(n.depth+1);x("pivotCells",Math.max(t.leafCount,n.leafCount)*s,o,"pivot cells");let i=p=>{let g=[];for(let d=p;d;d=d.parent)g.push(d.id);return g},a=new Map,l=new Map,u=new Int32Array(e.length),c=new Map,f=[],m=new Map;for(let p=0;p<e.length;p++){let g=t.leafOf[p],d=n.leafOf[p],h=g*r+d,S=c.get(h);if(S===void 0){S=c.size,c.set(h,S),x("pivotCells",f.length+s,o,"pivot cells"),a.has(g)||a.set(g,i(t.nodes[g])),l.has(d)||l.set(d,i(n.nodes[d]));for(let N of a.get(g))for(let b of l.get(d)){let O=N*r+b,v=m.get(O);v===void 0&&(v=m.size,m.set(O,v)),f.push(v)}}u[p]=S}return e.length===0&&m.set(0,0),{cellIndex:m,pairOf:u,cells:f,perPair:s}}function rr(e,t,n,o,r,s,i,a){let l=i.nodes.length,{cellIndex:u,pairOf:c,cells:f,perPair:m}=nr(r,s,i,a),p=u.size,g=t.map(b=>Ct(e,b,b.field?n(b.field):null,p,o));for(let b of g)for(let O=0;O<r.length;O++){let v=c[O]*m,I=r[O];for(let M=v;M<v+m;M++)b.add(f[M],I)}let d=Symbol("unset"),h=t.map(()=>new Array(p).fill(d));return{value:(b,O,v)=>{let I=u.get(b.id*l+O.id);if(I===void 0)return null;let M=h[v][I];return M===d&&(M=h[v][I]=g[v].get(I)),M},has:(b,O)=>r.length>0&&u.has(b.id*l+O.id)}}function kt(e,t,n,o,r,s){let i=a=>{if(a.children.length===0)return;let l=o.get(t[a.depth])??{by:"label",order:"asc"},u=l.order==="desc"?-1:1,c=s(n[a.depth]),f=p=>p.code<0?1/0:c[p.code],m=(p,g)=>{let d=f(p),h=f(g);return d===h?0:d===1/0||h===1/0?d===1/0?1:-1:(d-h)*u};if(l.by==="custom"){let p=new Map(l.items.map((d,h)=>[d,h])),g=d=>p.has(d.key)?p.get(d.key):1/0;a.children.sort((d,h)=>{let S=g(d),N=g(h);return S===1/0&&N===1/0?m(d,h):S===N?0:S===1/0?1:N===1/0?-1:(S-N)*u})}else if(l.by==="value"){let p=new Map(a.children.map(g=>[g,r(g,l.value)]));a.children.sort((g,d)=>{let h=p.get(g),S=p.get(d);return h===null||S===null?h===S?m(g,d):h===null?1:-1:(h-S)*u||m(g,d)})}else a.children.sort(m);a.children.forEach((p,g)=>{p.index=g,i(p)})};i(e.root)}function ko(e,t,n){n=$(n,"computePivot"),W(dt(e),"computePivot(data, view): data must come from encode()");let o=j(n),{view:r,issues:s}=vt(t,e,n),i=K(r.formatting.locale,n.locale);r.formatting.timeZone&&r.formatting.timeZone!==e.timeZone&&s.push({path:"formatting.timeZone",message:`the view was made for ${r.formatting.timeZone}, the data is encoded in ${e.timeZone}; pass timeZone to encode()`,code:"timeZoneMismatch",params:{value:r.formatting.timeZone,zone:e.timeZone}});let a=tr(e,r),l=w=>Oe(w,i,e.cache),u={view:r,locale:i,columnOf:a,groupBy:Ce,aggregateGroups:(w,T,L,_)=>{let X=Ct(e,w,w.field?a(w.field):null,_,i);for(let U=0;U<T.length;U++)X.add(L[U],T[U]);return Array.from({length:_},(U,he)=>X.get(he))}},c=new Int32Array(e.length);for(let w=0;w<c.length;w++)c[w]=w;c=bt(u,c);let f=new Map,m=[],p=w=>{let T=De(w);return f.has(T)||(f.set(T,m.length),m.push({field:w.field,agg:w.agg})),f.get(T)},g=r.values.map(p);for(let w of r.sort)w.by==="value"&&p(w.value);let d=m.reduce((w,T)=>w+(E(T.agg).keepsValues?Qe:1),0);x("work",c.length*(r.rows.length+1)*(r.cols.length+1)*d,o.work,"cell updates");let h=r.rows.map(a),S=r.cols.map(a),N={...$e(h,c,{max:o.groups,used:0}),depth:h.length},b={...$e(S,c,{max:o.groups,used:N.nodes.length}),depth:S.length},{value:O,has:v}=rr(e,m,a,i,c,N,b,o.pivotCells),I=w=>typeof w=="number"?w:null,M=new Map(r.sort.map(w=>[w.field,w]));kt(N,r.rows,h,M,(w,T)=>I(O(w,b.root,f.get(De(T)))),l),kt(b,r.cols,S,M,(w,T)=>I(O(N.root,w,f.get(De(T)))),l);let Lt=r.values.map(w=>{if(w.showAs)return"number";let T=w.field?a(w.field):null;return E(w.agg).resultType(T?T.type:"number")}),ye=(w,T,L)=>O(w,T,g[L]),Ft=(w,T,L)=>{let _=r.values[L],X=ye(w,T,L);return _.showAs?R[_.showAs.type].compute(I(X),{rowNode:w,colNode:T,rowRoot:N.root,colRoot:b.root,raw:(U,he)=>I(ye(U,he,L)),axis:_.showAs.axis}):X};return{view:r,issues:s,locale:i,timeZone:e.timeZone,encoded:e,rows:c,rowFields:r.rows,colFields:r.cols,rowColumns:h,colColumns:S,values:r.values,valueTypes:Lt,rowRoot:N.root,colRoot:b.root,rowNodes:N.nodes,colNodes:b.nodes,rowLeafOf:N.leafOf,colLeafOf:b.leafOf,value:ye,display:Ft,hasRows:v,label:(w,T,L=k)=>{if(!T.parent)return L.grandTotal??k.grandTotal;let _=(w==="cols"?S:h)[T.depth-1];return te(_,T.key,i,L)}}}function $t(e){let t=e;return t!==null&&typeof t=="object"&&typeof t.display=="function"&&t.rowRoot!==void 0}var or=new Set(["average","median","stdev","stdevp","var","varp"]),ge=2;function sr(e,t){let n=t?e.column(t):void 0;return!n||n.type!=="number"?ge:e.cache.getOrSet(`decimals:${n.id}`,()=>{let o=0;for(let r of n.dict)if(typeof r=="number"&&(o=Math.max(o,Q(r)),o>=ge))return ge;return o})}function ir(e,t){let n=e.values[t],o=n.showAs?R[n.showAs.type].format:null;if(o==="percent")return n.format&&Y(n.format).name==="percent"?n.format:"percent:1";if(o==="integer")return"integer";if(n.format)return n.format;let r=e.valueTypes[t];if(r==="text")return"text";if(r==="date"){let s=e.encoded.column(n.field);return s&&s.dateOnly===!1?"datetime":"date"}return n.agg==="count"||n.agg==="countUnique"?"integer":`number:${or.has(n.agg)?ge:sr(e.encoded,n.field)}`}function ar(e,t=k){if(e.label)return e.label;let n;if(!e.field)n=t.countRows??k.countRows;else{let a={...k.aggregators,...t.aggregators||{}},l=Object.hasOwn(a,e.agg)?a[e.agg]:e.agg;n=le(t.valueName??k.valueName,{agg:l,field:ee(e.field,t)})}if(!e.showAs)return n;let o={...k.showAs,...t.showAs||{}},r=e.showAs.type,s=Object.hasOwn(o,r)?o[r]:r,i=e.field&&e.agg==="sum"?ee(e.field,t):n;return le(t.showAsName??k.showAsName,{showAs:s,value:i})}var G=e=>e==="grand"?2:e==="subtotal"?1:0;function lr(e,t){let n=e;for(;n&&n.depth>t;)n=n.parent;return n}function It(e,t,n,o,r,s){for(let i=t;i<o;i++)for(let a=n;a<r;a++){let l=e[i][a];if(!l||l.mergeKey===void 0)continue;let u=l.mergeKey,c=a+1;for(;c<r&&e[i][c]&&e[i][c].mergeKey===u;)c++;let f=i+1;for(;f<o;){let m=!0;for(let p=a;p<c;p++)if(!e[f][p]||e[f][p].mergeKey!==u){m=!1;break}if(!m)break;f++}if(c-a>1||f-i>1){l.colSpan=c-a,l.rowSpan=f-i,s.push({row:i,col:a,rowSpan:f-i,colSpan:c-a});for(let m=i;m<f;m++)for(let p=a;p<c;p++)(m!==i||p!==a)&&(e[m][p]=null)}}}function ur(e,t){let n=e.map(_e),o=n.length===3?t<=.5?0:1:0,r=n.length===3?t<=.5?t*2:(t-.5)*2:t,s=n[o],i=n[o+1];return"#"+s.map((a,l)=>Math.round(a+(i[l]-a)*r).toString(16).padStart(2,"0")).join("")}function _o(e){let t=e;return t!==null&&typeof t=="object"&&Array.isArray(t.rows)&&Array.isArray(t.merges)&&Number.isInteger(t.columnCount)}var xt=(e,t,n)=>({axis:e,path:t.path,collapsed:n});function Mt(e,t,{node:n,kind:o},r){let s=t==="cols"?"colHeader":"rowHeader",i=f=>t==="cols"?{colPath:f.path}:{rowPath:f.path},a=f=>e.result.label(t,f,e.labels),l=o==="grand"?0:n.depth-1;if(o!=="leaf"&&r===l){let m={text:o==="collapsed"?a(n):n.parent?le(e.labels.total,{label:a(n)}):e.labels.grandTotal,value:o==="collapsed"?n.key:null,kind:s,total:G(o),...i(n),mergeKey:`s${n.id}:${o}`};return o==="collapsed"&&(m.toggle=xt(t,n,!0)),m}if(o!=="leaf"&&r>l)return{text:"",value:null,kind:s,total:G(o),mergeKey:`s${n.id}:${o}`};let u=lr(n,r+1),c={text:a(u),value:u.key,kind:s,total:0,...i(u),mergeKey:`n${u.id}`};return u.children.length>0&&(c.toggle=xt(t,u,!1)),c}function cr(e){let{view:t,k:n,h:o,width:r}=e,s=Array.from({length:o},()=>new Array(r).fill(null));for(let a=0;a<o;a++)for(let l=0;l<n;l++)a===o-1?s[a][l]={text:t.rows.length>0?ee(t.rows[l],e.labels):"",value:null,kind:"corner",total:0,field:t.rows.length>0?t.rows[l]:void 0}:l===n-1?s[a][l]={text:ee(t.cols[a],e.labels),value:null,kind:"corner",total:0,field:t.cols[a]}:s[a][l]={text:"",value:null,kind:"corner",total:0,mergeKey:"corner"};let i=t.values.length===1;return e.dataColumns.forEach(({line:a,vi:l},u)=>{let c=n+u;for(let m=0;m<t.cols.length;m++)s[m][c]=Mt(e,"cols",a,m);let f={text:l>=0?e.names[l]:"",value:null,kind:"colHeader",total:i?0:G(a.kind),valueIndex:l>=0?l:void 0,colPath:i?[]:a.node.path};i&&(f.mergeKey="value"),s[o-1][c]=f}),s}function fr(e,t){let{result:n,view:o,k:r,width:s}=e;return t.map(i=>{let{node:a,kind:l}=i,u=new Array(s).fill(null);for(let c=0;c<r;c++)u[c]=o.rows.length===0?{text:o.values.length>0||o.cols.length>0?e.labels.grandTotal:"",value:null,kind:"rowHeader",total:2,rowPath:[]}:Mt(e,"rows",i,c);return e.dataColumns.forEach(({line:c,vi:f},m)=>{let p=Math.max(G(l),G(c.kind)),g=n.hasRows(a,c.node);if(f<0){u[r+m]={text:"",value:null,kind:"value",total:p,rowPath:a.path,colPath:c.node.path,hasRows:g};return}let d=n.display(a,c.node,f);u[r+m]={text:d===null?"":e.formatters[f](d),value:d,kind:"value",total:p,valueType:o.values[f].showAs?"number":n.valueTypes[f],format:e.formats[f],rowPath:a.path,colPath:c.node.path,valueIndex:f,hasRows:g}}),u})}function dr(e,t){e.view.values.forEach((n,o)=>{if(!n.conditional)return;let r=[];for(let a of t)for(let l=e.k;l<e.width;l++){let u=a[l];u&&u.valueIndex===o&&u.total===0&&typeof u.value=="number"&&r.push(u)}if(r.length===0)return;let s=1/0,i=-1/0;for(let a of r)s=Math.min(s,a.value),i=Math.max(i,a.value);for(let a of r)if(n.conditional.type==="colorScale"){let l=i===s?.5:(a.value-s)/(i-s),u=n.conditional.colors;a.style={scale:l,color:u.length>=2?ur(u,l):null}}else{let l=Math.min(0,s),u=Math.max(0,i);a.style={bar:u===l?0:(a.value-l)/(u-l),color:n.conditional.color}}})}function jo(e,t){t=$(t,"toGrid"),W($t(e),"toGrid(result): result must come from computePivot()");let n=j(t),o=e.view,r=K(o.formatting.locale,t.locale??e.locale),s={...k,...t.labels||{}},i=Ie(e.rowRoot,o.rows.length,o.collapsed.rows,o.totals.rowSubtotals,o.totals.grandTotalRow),l=Ie(e.colRoot,o.cols.length,o.collapsed.cols,o.totals.colSubtotals,o.totals.grandTotalColumn).flatMap(b=>o.values.length===0?[{line:b,vi:-1}]:o.values.map((O,v)=>({line:b,vi:v}))),u=Math.max(1,o.rows.length),c=o.cols.length+1,f=u+l.length;x("cells",(c+i.length)*f,n.cells,"grid cells");let m=o.values.map((b,O)=>ir(e,O)),p={result:e,view:o,labels:s,dataColumns:l,k:u,h:c,width:f,formats:m,formatters:m.map(b=>ke(b,r)),names:o.values.map(b=>ar(b,s))},g=cr(p),d=fr(p,i),h=[];It(g,0,0,c,f,h);let S=[];It(d,0,0,d.length,u,S),h.push(...S.map(b=>({...b,row:b.row+c}))),dr(p,d);let N=g.concat(d);for(let b of N)for(let O of b)O&&delete O.mergeKey;return{rows:N,headerRows:c,rowHeaderColumns:u,columnCount:f,merges:h,dataColumns:l.map(({line:b,vi:O})=>({colPath:b.node.path,valueIndex:O,total:G(b.kind)})),bodyRows:i.map(({node:b,kind:O})=>({rowPath:b.path,total:G(O),collapsed:O==="collapsed"})),formats:m,showAs:o.values.map(b=>b.showAs?b.showAs.type:null),valueNames:p.names,conditional:o.values.map(b=>b.conditional),locale:r,timeZone:e.timeZone}}var Uo=Object.freeze({colorScale:Object.freeze(["#f8696b","#ffeb84","#63be7b"]),dataBar:"#638ec6",pieRadius:Object.freeze(["0%","70%"]),donutRadius:Object.freeze(["42%","70%"])});export{xe as a,j as b,ln as c,Wr as d,dt as e,Ut as f,mr as g,F as h,Dr as i,_r as j,jr as k,Rr as l,nt as m,k as n,ee as o,te as p,Oe as q,wn as r,Nn as s,Xr as t,Or as u,Y as v,Sr as w,He as x,ke as y,Tr as z,ve as A,Ar as B,R as C,eo as D,Tt as E,In as F,co as G,xn as H,fo as I,Mn as J,Ln as K,Fn as L,En as M,Dn as N,_n as O,vt as P,mo as Q,qe as R,$r as S,ko as T,$t as U,Ie as V,ir as W,ar as X,_o as Y,jo as Z,Uo as _};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var i=class extends Error{constructor(e,n,r={}){super(n),this.name="PivotkitError",this.code=e,this.details=r}};function l(t,e){if(!t)throw new i("INVALID_ARGUMENT",e)}function p(t,e,n,r){if(e>n)throw new i("LIMIT_EXCEEDED",`${e.toLocaleString("en-US")} ${r} exceed the limit of ${n.toLocaleString("en-US")} (limits.${t})`,{limit:t,value:e,max:n})}var h=864e5,s="en-US",d=(t,e=2)=>String(t).padStart(e,"0");function x(t,e){if(t==null)return{};if(typeof t!="object"||Array.isArray(t))throw new i("INVALID_OPTION",`${e}: options must be an object, got ${JSON.stringify(t)}`);return t}var c=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),O=(t,e)=>c(t)&&Object.hasOwn(t,e)?t[e]:void 0,S=t=>typeof t=="number"&&Number.isFinite(t)?t:null;function m(t){let e;try{e=typeof t=="string"?t:JSON.stringify(t)??String(t)}catch{e=String(t)}return e.length>100?`${e.slice(0,99)}\u2026`:e}function f(t){return t.length===4?t.slice(1).split("").map(e=>e+e).join(""):t.slice(1)}function I(t){let e=f(t);return[0,2,4].map(n=>parseInt(e.slice(n,n+2),16))}function N(t){if(!Number.isFinite(t))return 0;let[e,n]=String(Math.abs(t)).split("e"),r=e.indexOf("."),o=r===-1?0:e.length-r-1;return Math.max(0,o-Number(n??0))}function A(t){let e=new Map;return{limit:t,get size(){return e.size},get(n){if(!e.has(n))return;let r=e.get(n);return e.delete(n),e.set(n,r),r},set(n,r){return e.delete(n),e.set(n,r),e.size>t&&e.delete(e.keys().next().value),r},getOrSet(n,r){let o=this.get(n);return o!==void 0?o:this.set(n,r())}}}function u(t){if(typeof t!="string"||t.length===0||t.length>64)return null;try{return Intl.getCanonicalLocales(t)[0]??null}catch{return null}}function b(t,e){if(t)return t;if(e==null)return s;let n=u(e);if(!n)throw new i("INVALID_OPTION",`options.locale ${JSON.stringify(e)} is not a locale`);return n}export{i as a,l as b,p as c,h as d,s as e,d as f,x as g,c as h,O as i,S as j,m as k,f as l,I as m,N as n,A as o,u as p,b as q};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var x=Uint8Array,V=Uint16Array,Mr=Int32Array,ur=new x([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),lr=new x([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),yr=new x([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Br=function(n,r){for(var t=new V(31),e=0;e<31;++e)t[e]=r+=1<<n[e-1];for(var i=new Mr(t[30]),e=1;e<30;++e)for(var a=t[e];a<t[e+1];++a)i[a]=a-t[e]<<5|e;return{b:t,r:i}},Zr=Br(ur,2),Er=Zr.b,wr=Zr.r;Er[28]=258,wr[258]=28;var Gr=Br(lr,0),$r=Gr.b,Ur=Gr.r,mr=new V(32768);for(y=0;y<32768;++y)Q=(y&43690)>>1|(y&21845)<<1,Q=(Q&52428)>>2|(Q&13107)<<2,Q=(Q&61680)>>4|(Q&3855)<<4,mr[y]=((Q&65280)>>8|(Q&255)<<8)>>1;var Q,y,J=(function(n,r,t){for(var e=n.length,i=0,a=new V(r);i<e;++i)n[i]&&++a[n[i]-1];var f=new V(r);for(i=1;i<r;++i)f[i]=f[i-1]+a[i-1]<<1;var h;if(t){h=new V(1<<r);var c=15-r;for(i=0;i<e;++i)if(n[i])for(var u=i<<4|n[i],s=r-n[i],o=f[n[i]-1]++<<s,l=o|(1<<s)-1;o<=l;++o)h[mr[o]>>c]=u}else for(h=new V(e),i=0;i<e;++i)n[i]&&(h[i]=mr[f[n[i]-1]++]>>15-n[i]);return h}),d=new x(288);for(y=0;y<144;++y)d[y]=8;var y;for(y=144;y<256;++y)d[y]=9;var y;for(y=256;y<280;++y)d[y]=7;var y;for(y=280;y<288;++y)d[y]=8;var y,sr=new x(32);for(y=0;y<32;++y)sr[y]=5;var y,Hr=J(d,9,0),Nr=J(d,9,1),Rr=J(sr,5,0),Vr=J(sr,5,1),cr=function(n){for(var r=n[0],t=1;t<n.length;++t)n[t]>r&&(r=n[t]);return r},Y=function(n,r,t){var e=r/8|0;return(n[e]|n[e+1]<<8)>>(r&7)&t},pr=function(n,r){var t=r/8|0;return(n[t]|n[t+1]<<8|n[t+2]<<16)>>(r&7)},Sr=function(n){return(n+7)/8|0},b=function(n,r,t){return(r==null||r<0)&&(r=0),(t==null||t>n.length)&&(t=n.length),new x(n.subarray(r,t))};var Wr=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],q=function(n,r,t){var e=new Error(r||Wr[n]);if(e.code=n,Error.captureStackTrace&&Error.captureStackTrace(e,q),!t)throw e;return e},Yr=function(n,r,t,e){var i=n.length,a=e?e.length:0;if(!i||r.f&&!r.l)return t||new x(0);var f=!t,h=f||r.i!=2,c=r.i;f&&(t=new x(i*3));var u=function(er){var ir=t.length;if(er>ir){var nr=new x(Math.max(ir*2,er));nr.set(t),t=nr}},s=r.f||0,o=r.p||0,l=r.b||0,g=r.l,m=r.d,w=r.m,F=r.n,L=i*8;do{if(!g){s=Y(n,o,1);var G=Y(n,o+1,3);if(o+=3,G)if(G==1)g=Nr,m=Vr,w=9,F=5;else if(G==2){var C=Y(n,o,31)+257,U=Y(n,o+10,15)+4,p=C+Y(n,o+5,31)+1;o+=14;for(var v=new x(p),I=new x(19),D=0;D<U;++D)I[yr[D]]=Y(n,o+D*3,7);o+=U*3;for(var O=cr(I),k=(1<<O)-1,H=J(I,O,1),D=0;D<p;){var P=H[Y(n,o,k)];o+=P&15;var M=P>>4;if(M<16)v[D++]=M;else{var B=0,z=0;for(M==16?(z=3+Y(n,o,3),o+=2,B=v[D-1]):M==17?(z=3+Y(n,o,7),o+=3):M==18&&(z=11+Y(n,o,127),o+=7);z--;)v[D++]=B}}var $=v.subarray(0,C),Z=v.subarray(C);w=cr($),F=cr(Z),g=J($,w,1),m=J(Z,F,1)}else q(1);else{var M=Sr(o)+4,S=n[M-4]|n[M-3]<<8,T=M+S;if(T>i){c&&q(0);break}h&&u(l+S),t.set(n.subarray(M,T),l),r.b=l+=S,r.p=o=T*8,r.f=s;continue}if(o>L){c&&q(0);break}}h&&u(l+131072);for(var tr=(1<<w)-1,W=(1<<F)-1,K=o;;K=o){var B=g[pr(n,o)&tr],N=B>>4;if(o+=B&15,o>L){c&&q(0);break}if(B||q(2),N<256)t[l++]=N;else if(N==256){K=o,g=null;break}else{var R=N-254;if(N>264){var D=N-257,A=ur[D];R=Y(n,o,(1<<A)-1)+Er[D],o+=A}var j=m[pr(n,o)&W],_=j>>4;j||q(3),o+=j&15;var Z=$r[_];if(_>3){var A=lr[_];Z+=pr(n,o)&(1<<A)-1,o+=A}if(o>L){c&&q(0);break}h&&u(l+131072);var rr=l+R;if(l<Z){var fr=a-Z,hr=Math.min(Z,rr);for(fr+l<0&&q(3);l<hr;++l)t[l]=e[fr+l]}for(;l<rr;++l)t[l]=t[l-Z]}}r.l=g,r.p=K,r.b=l,r.f=s,g&&(s=1,r.m=w,r.d=m,r.n=F)}while(!s);return l!=t.length&&f?b(t,0,l):t.subarray(0,l)},X=function(n,r,t){t<<=r&7;var e=r/8|0;n[e]|=t,n[e+1]|=t>>8},ar=function(n,r,t){t<<=r&7;var e=r/8|0;n[e]|=t,n[e+1]|=t>>8,n[e+2]|=t>>16},gr=function(n,r){for(var t=[],e=0;e<n.length;++e)n[e]&&t.push({s:e,f:n[e]});var i=t.length,a=t.slice();if(!i)return{t:qr,l:0};if(i==1){var f=new x(t[0].s+1);return f[t[0].s]=1,{t:f,l:1}}t.sort(function(T,C){return T.f-C.f}),t.push({s:-1,f:25001});var h=t[0],c=t[1],u=0,s=1,o=2;for(t[0]={s:-1,f:h.f+c.f,l:h,r:c};s!=i-1;)h=t[t[u].f<t[o].f?u++:o++],c=t[u!=s&&t[u].f<t[o].f?u++:o++],t[s++]={s:-1,f:h.f+c.f,l:h,r:c};for(var l=a[0].s,e=1;e<i;++e)a[e].s>l&&(l=a[e].s);var g=new V(l+1),m=xr(t[s-1],g,0);if(m>r){var e=0,w=0,F=m-r,L=1<<F;for(a.sort(function(C,U){return g[U.s]-g[C.s]||C.f-U.f});e<i;++e){var G=a[e].s;if(g[G]>r)w+=L-(1<<m-g[G]),g[G]=r;else break}for(w>>=F;w>0;){var M=a[e].s;g[M]<r?w-=1<<r-g[M]++-1:++e}for(;e>=0&&w;--e){var S=a[e].s;g[S]==r&&(--g[S],++w)}m=r}return{t:new x(g),l:m}},xr=function(n,r,t){return n.s==-1?Math.max(xr(n.l,r,t+1),xr(n.r,r,t+1)):r[n.s]=t},Fr=function(n){for(var r=n.length;r&&!n[--r];);for(var t=new V(++r),e=0,i=n[0],a=1,f=function(c){t[e++]=c},h=1;h<=r;++h)if(n[h]==i&&h!=r)++a;else{if(!i&&a>2){for(;a>138;a-=138)f(32754);a>2&&(f(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(f(i),--a;a>6;a-=6)f(8304);a>2&&(f(a-3<<5|8208),a=0)}for(;a--;)f(i);a=1,i=n[h]}return{c:t.subarray(0,e),n:r}},or=function(n,r){for(var t=0,e=0;e<r.length;++e)t+=n[e]*r[e];return t},Or=function(n,r,t){var e=t.length,i=Sr(r+2);n[i]=e&255,n[i+1]=e>>8,n[i+2]=n[i]^255,n[i+3]=n[i+1]^255;for(var a=0;a<e;++a)n[i+a+4]=t[a];return(i+4+e)*8},Dr=function(n,r,t,e,i,a,f,h,c,u,s){X(r,s++,t),++i[256];for(var o=gr(i,15),l=o.t,g=o.l,m=gr(a,15),w=m.t,F=m.l,L=Fr(l),G=L.c,M=L.n,S=Fr(w),T=S.c,C=S.n,U=new V(19),p=0;p<G.length;++p)++U[G[p]&31];for(var p=0;p<T.length;++p)++U[T[p]&31];for(var v=gr(U,7),I=v.t,D=v.l,O=19;O>4&&!I[yr[O-1]];--O);var k=u+5<<3,H=or(i,d)+or(a,sr)+f,P=or(i,l)+or(a,w)+f+14+3*O+or(U,I)+2*U[16]+3*U[17]+7*U[18];if(c>=0&&k<=H&&k<=P)return Or(r,s,n.subarray(c,c+u));var B,z,$,Z;if(X(r,s,1+(P<H)),s+=2,P<H){B=J(l,g,0),z=l,$=J(w,F,0),Z=w;var tr=J(I,D,0);X(r,s,M-257),X(r,s+5,C-1),X(r,s+10,O-4),s+=14;for(var p=0;p<O;++p)X(r,s+3*p,I[yr[p]]);s+=3*O;for(var W=[G,T],K=0;K<2;++K)for(var N=W[K],p=0;p<N.length;++p){var R=N[p]&31;X(r,s,tr[R]),s+=I[R],R>15&&(X(r,s,N[p]>>5&127),s+=N[p]>>12)}}else B=Hr,z=d,$=Rr,Z=sr;for(var p=0;p<h;++p){var A=e[p];if(A>255){var R=A>>18&31;ar(r,s,B[R+257]),s+=z[R+257],R>7&&(X(r,s,A>>23&31),s+=ur[R]);var j=A&31;ar(r,s,$[j]),s+=Z[j],j>3&&(ar(r,s,A>>5&8191),s+=lr[j])}else ar(r,s,B[A]),s+=z[A]}return ar(r,s,B[256]),s+z[256]},jr=new Mr([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),qr=new x(0),Jr=function(n,r,t,e,i,a){var f=a.z||n.length,h=new x(e+f+5*(1+Math.ceil(f/7e3))+i),c=h.subarray(e,h.length-i),u=a.l,s=(a.r||0)&7;if(r){s&&(c[0]=a.r>>3);for(var o=jr[r-1],l=o>>13,g=o&8191,m=(1<<t)-1,w=a.p||new V(32768),F=a.h||new V(m+1),L=Math.ceil(t/3),G=2*L,M=function(vr){return(n[vr]^n[vr+1]<<L^n[vr+2]<<G)&m},S=new Mr(25e3),T=new V(288),C=new V(32),U=0,p=0,v=a.i||0,I=0,D=a.w||0,O=0;v+2<f;++v){var k=M(v),H=v&32767,P=F[k];if(w[H]=P,F[k]=H,D<=v){var B=f-v;if((U>7e3||I>24576)&&(B>423||!u)){s=Dr(n,c,0,S,T,C,p,I,O,v-O,s),I=U=p=0,O=v;for(var z=0;z<286;++z)T[z]=0;for(var z=0;z<30;++z)C[z]=0}var $=2,Z=0,tr=g,W=H-P&32767;if(B>2&&k==M(v-W))for(var K=Math.min(l,B)-1,N=Math.min(32767,v),R=Math.min(258,B);W<=N&&--tr&&H!=P;){if(n[v+$]==n[v+$-W]){for(var A=0;A<R&&n[v+A]==n[v+A-W];++A);if(A>$){if($=A,Z=W,A>K)break;for(var j=Math.min(W,A-2),_=0,z=0;z<j;++z){var rr=v-W+z&32767,fr=w[rr],hr=rr-fr&32767;hr>_&&(_=hr,P=rr)}}}H=P,P=w[H],W+=H-P&32767}if(Z){S[I++]=268435456|wr[$]<<18|Ur[Z];var er=wr[$]&31,ir=Ur[Z]&31;p+=ur[er]+lr[ir],++T[257+er],++C[ir],D=v+$,++U}else S[I++]=n[v],++T[n[v]]}}for(v=Math.max(v,D);v<f;++v)S[I++]=n[v],++T[n[v]];s=Dr(n,c,u,S,T,C,p,I,O,v-O,s),u||(a.r=s&7|c[s/8|0]<<3,s-=7,a.h=F,a.p=w,a.i=v,a.w=D)}else{for(var v=a.w||0;v<f+u;v+=65535){var nr=v+65535;nr>=f&&(c[s/8|0]=u,nr=f),s=Or(c,s+1,n.subarray(v,nr))}a.i=f}return b(h,0,e+Sr(s)+i)},Kr=(function(){for(var n=new Int32Array(256),r=0;r<256;++r){for(var t=r,e=9;--e;)t=(t&1&&-306674912)^t>>>1;n[r]=t}return n})(),Qr=function(){var n=-1;return{p:function(r){for(var t=n,e=0;e<r.length;++e)t=Kr[t&255^r[e]]^t>>>8;n=t},d:function(){return~n}}};var Xr=function(n,r,t,e,i){if(!i&&(i={l:1},r.dictionary)){var a=r.dictionary.subarray(-32768),f=new x(a.length+n.length);f.set(a),f.set(n,a.length),n=f,i.w=a.length}return Jr(n,r.level==null?6:r.level,r.mem==null?i.l?Math.ceil(Math.max(8,Math.min(13,Math.log(n.length)))*1.5):20:12+r.mem,t,e,i)},Lr=function(n,r){var t={};for(var e in n)t[e]=n[e];for(var e in r)t[e]=r[e];return t};var E=function(n,r,t){for(;t;++r)n[r]=t,t>>>=8};function kr(n,r){return Xr(n,r||{},0,0)}var rn=(function(){function n(r,t){typeof r=="function"&&(t=r,r={}),this.ondata=t;var e=r&&r.dictionary&&r.dictionary.subarray(-32768);this.s={i:0,b:e?e.length:0},this.o=new x(32768),this.p=new x(0),e&&this.o.set(e)}return n.prototype.e=function(r){if(this.ondata||q(5),this.d&&q(4),!this.p.length)this.p=r;else if(r.length){var t=new x(this.p.length+r.length);t.set(this.p),t.set(r,this.p.length),this.p=t}},n.prototype.c=function(r){this.s.i=+(this.d=r||!1);var t=this.s.b,e=Yr(this.p,this.s,this.o);this.ondata(b(e,t,this.s.b),this.d),this.o=b(e,this.s.b-32768),this.s.b=this.o.length,this.p=b(this.p,this.s.p/8|0),this.s.p&=7},n.prototype.push=function(r,t){this.e(r),this.c(t)},n})();var Pr=function(n,r,t,e){for(var i in n){var a=n[i],f=r+i,h=e;Array.isArray(a)&&(h=Lr(e,a[1]),a=a[0]),ArrayBuffer.isView(a)?t[f]=[a,h]:(t[f+="/"]=[new x(0),h],Pr(a,f,t,e))}},Tr=typeof TextEncoder<"u"&&new TextEncoder,zr=typeof TextDecoder<"u"&&new TextDecoder,dr=0;try{zr.decode(qr,{stream:!0}),dr=1}catch{}var br=function(n){for(var r="",t=0;;){var e=n[t++],i=(e>127)+(e>223)+(e>239);if(t+i>n.length)return{s:r,r:b(n,t-1)};i?i==3?(e=((e&15)<<18|(n[t++]&63)<<12|(n[t++]&63)<<6|n[t++]&63)-65536,r+=String.fromCharCode(55296|e>>10,56320|e&1023)):i&1?r+=String.fromCharCode((e&31)<<6|n[t++]&63):r+=String.fromCharCode((e&15)<<12|(n[t++]&63)<<6|n[t++]&63):r+=String.fromCharCode(e)}};function Cr(n,r){if(r){for(var t=new x(n.length),e=0;e<n.length;++e)t[e]=n.charCodeAt(e);return t}if(Tr)return Tr.encode(n);for(var i=n.length,a=new x(n.length+(n.length>>1)),f=0,h=function(s){a[f++]=s},e=0;e<i;++e){if(f+5>a.length){var c=new x(f+8+(i-e<<1));c.set(a),a=c}var u=n.charCodeAt(e);u<128||r?h(u):u<2048?(h(192|u>>6),h(128|u&63)):u>55295&&u<57344?(u=65536+(u&1047552)|n.charCodeAt(++e)&1023,h(240|u>>18),h(128|u>>12&63),h(128|u>>6&63),h(128|u&63)):(h(224|u>>12),h(128|u>>6&63),h(128|u&63))}return b(a,0,f)}function nn(n,r){if(r){for(var t="",e=0;e<n.length;e+=16384)t+=String.fromCharCode.apply(null,n.subarray(e,e+16384));return t}else{if(zr)return zr.decode(n);var i=br(n),a=i.s,t=i.r;return t.length&&q(8),a}}var Ar=function(n){var r=0;if(n)for(var t in n){var e=n[t].length;e>65535&&q(9),r+=e+4}return r},Ir=function(n,r,t,e,i,a,f,h){var c=e.length,u=t.extra,s=h&&h.length,o=Ar(u);E(n,r,f!=null?33639248:67324752),r+=4,f!=null&&(n[r++]=20,n[r++]=t.os),n[r]=20,r+=2,n[r++]=t.flag<<1|(a<0&&8),n[r++]=i&&8,n[r++]=t.compression&255,n[r++]=t.compression>>8;var l=new Date(t.mtime==null?Date.now():t.mtime),g=l.getFullYear()-1980;if((g<0||g>119)&&q(10),E(n,r,g<<25|l.getMonth()+1<<21|l.getDate()<<16|l.getHours()<<11|l.getMinutes()<<5|l.getSeconds()>>1),r+=4,a!=-1&&(E(n,r,t.crc),E(n,r+4,a<0?-a-2:a),E(n,r+8,t.size)),E(n,r+12,c),E(n,r+14,o),r+=16,f!=null&&(E(n,r,s),E(n,r+6,t.attrs),E(n,r+10,f),r+=14),n.set(e,r),r+=c,o)for(var m in u){var w=u[m],F=w.length;E(n,r,+m),E(n,r+2,F),n.set(w,r+4),r+=4+F}return s&&(n.set(h,r),r+=s),r},_r=function(n,r,t,e,i){E(n,r,101010256),E(n,r+8,t),E(n,r+10,t),E(n,r+12,e),E(n,r+16,i)};function tn(n,r){r||(r={});var t={},e=[];Pr(n,"",t,r);var i=0,a=0;for(var f in t){var h=t[f],c=h[0],u=h[1],s=u.level==0?0:8,o=Cr(f),l=o.length,g=u.comment,m=g&&Cr(g),w=m&&m.length,F=Ar(u.extra);l>65535&&q(11);var L=s?kr(c,u):c,G=L.length,M=Qr();M.p(c),e.push(Lr(u,{size:c.length,crc:M.d(),c:L,f:o,m,u:l!=f.length||m&&g.length!=w,o:i,compression:s})),i+=30+l+F+G,a+=76+2*(l+F)+(w||0)+G}for(var S=new x(a+22),T=i,C=a-i,U=0;U<e.length;++U){var o=e[U];Ir(S,o.o,o,o.f,o.u,o.c.length);var p=30+o.f.length+Ar(o.extra);S.set(o.c,o.o+p),Ir(S,i,o,o.f,o.u,o.c.length,o.o,o.m),i+=16+p+(o.m?o.m.length:0)}return _r(S,i,e.length,C,T),S}export{kr as a,rn as b,Cr as c,nn as d,tn as e};
|