pivotkit-element 0.3.0 → 0.5.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 +131 -1
- package/dist/THIRD_PARTY_LICENSES.txt +2 -2
- package/dist/chunks/chunk-4PHDW2LB.js +1 -0
- package/dist/chunks/chunk-5QXN3X2Q.js +1 -0
- package/dist/chunks/chunk-65G326ME.js +1 -0
- package/dist/chunks/chunk-65O4Z5GI.js +1 -0
- package/dist/chunks/chunk-CCL5TDLA.js +6 -0
- package/dist/chunks/chunk-NSPPM3IJ.js +16 -0
- package/dist/chunks/chunk-PJA6QZ4Y.js +2 -0
- package/dist/chunks/chunk-QOKB5RDG.js +6 -0
- package/dist/chunks/chunk-SB3L4HHW.js +1 -0
- package/dist/chunks/chunk-WKVC2RPA.js +1 -0
- package/dist/chunks/chunk-XETFD6GR.js +1 -0
- package/dist/chunks/chunk-XR4CMFGN.js +1 -0
- package/dist/chunks/chunk-YUY4D5MF.js +8 -0
- package/dist/chunks/echarts-4DC3BQOK.js +5 -0
- package/dist/chunks/export-YHS47KGK.js +1 -0
- package/dist/chunks/import-csv-UCA275TR.js +1 -0
- package/dist/chunks/import-json-W4GCIW36.js +1 -0
- package/dist/chunks/import-ui-7XVUBL2H.js +1 -0
- package/dist/chunks/link-45LOEA7H.js +1 -0
- package/dist/chunks/menu-texts-de-74DWTJDI.js +1 -0
- package/dist/chunks/menus-XBN5D32E.js +2 -0
- package/dist/chunks/report-run-BZBFOMPF-4M6ACMUF.js +60 -0
- package/dist/chunks/unused-texts-Y4R67XSN-VYGDYJND.js +1 -0
- package/dist/chunks/unused-texts-de-6YVPTNVS-FL6CDBZX.js +1 -0
- package/dist/element.js +1 -1
- package/dist/import-worker.js +1 -0
- package/dist/index.js +1 -1
- package/package.json +11 -5
- package/types/element.d.ts +80 -93
- package/types/events.d.ts +1 -0
- package/types/global.d.ts +3 -1
- package/types/jsx.d.ts +1 -1
- package/dist/chunks/chunk-FW54TETI.js +0 -9
- package/dist/chunks/chunk-J3NYMXAT.js +0 -6
- package/dist/chunks/chunk-MB64GADT.js +0 -1
- package/dist/chunks/chunk-RXM4LLDS.js +0 -1
- package/dist/chunks/echarts-42T6EZ6B.js +0 -18
- package/dist/chunks/export-GKVGFFWM.js +0 -6
- package/dist/chunks/link-52SWRX4P.js +0 -1
- package/dist/chunks/menu-texts-de-X4IUO7W5.js +0 -1
- package/dist/chunks/menus-SYPZC2NE.js +0 -1
- package/dist/chunks/unused-texts-K3VFH65P-5EAURTYC.js +0 -1
- package/dist/chunks/unused-texts-de-OW4TGIVX-GHETGXFE.js +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{T as w}from"./chunk-4PHDW2LB.js";import{d as b,i as x,n as d}from"./chunk-XR4CMFGN.js";var O=e=>e?`pivot-${e}`:"pivot",E=e=>e?e.split("&"):[],N=(e,t)=>e.startsWith(`${encodeURIComponent(t)}=`);function P(e,t){let n=O(t),s=typeof e=="string"?e.replace(/^#/,""):"",o=E(s).find(l=>N(l,n)),a=o?o.slice(encodeURIComponent(n).length+1):"";return a||null}function T(e,t,n){let s=O(t),o=e.indexOf("#"),a=o===-1?e:e.slice(0,o),l=E(o===-1?"":e.slice(o+1)).filter(r=>!N(r,s)),i=n?[...l,`${encodeURIComponent(s)}=${n}`]:l;return i.length?`${a}#${i.join("&")}`:a}var v="pivotkit-view",h=2,I=Object.freeze([1,2]),k="https://pivotkit.eize.dev/schema/view-file-2.json",m=Object.freeze({text:1e6,name:256,description:2e3,fields:1e3}),j=Object.freeze(["string","number","date","boolean","null"]);function p(e,t){return typeof e!="string"?"":e.replace(/[\u0000-\u001F\u007F]+/g," ").trim().slice(0,t)}var c=(e,t)=>d(e)&&Object.hasOwn(e,t)?e[t]:void 0;function V(e){let t=new Map,n=i=>{let r=c(e,i);return Array.isArray(r)?r:[]};for(let i of n("derived")){let r=c(i,"name"),u=c(i,"field");typeof r=="string"&&typeof u=="string"&&t.set(r.toLowerCase(),u)}let s=[],o=new Set,a=i=>{if(typeof i!="string"||i==="")return;let r=t.get(i.toLowerCase())??i;o.has(r.toLowerCase())||(o.add(r.toLowerCase()),s.push(r))},l=i=>a(c(i,"field"));n("rows").forEach(a),n("cols").forEach(a),n("values").forEach(l);for(let i of n("filters"))a(c(i,"field")),l(c(i,"by"));for(let i of n("sort"))a(c(i,"field")),l(c(i,"value"));return s}function A(e){let t=e&&e.schema&&Array.isArray(e.schema.fields)?e.schema.fields:[];return new Map(t.filter(n=>n&&typeof n.name=="string").map(n=>[n.name.toLowerCase(),n]))}function M(e,t={},n={}){if(!d(e))throw new TypeError("toViewFile(view): view must be an object");let s=p(t.name,m.name),o=p(t.source?.id,m.name),a=o?F(t.source?.params,b,()=>{}):null,l=a&&Object.keys(a).length?{params:a}:{};if(n.link)return{format:v,formatVersion:h,...o?{source:{id:o,...l}}:{},...s?{name:s}:{},view:e};let i=p(t.description,m.description),r=t.createdAt instanceof Date?t.createdAt:typeof t.createdAt=="string"&&t.createdAt?new Date(t.createdAt):null,u=r&&!Number.isNaN(r.getTime())?r.toISOString():null,f=t.generator&&typeof t.generator.name=="string"?{name:p(t.generator.name,m.name),version:p(t.generator.version,m.name)}:null,g=p(t.source?.name,m.name),L=t.schemaUrl===void 0?k:typeof t.schemaUrl=="string"?t.schemaUrl.trim():"",S=A(t.data),$=t.data?V(e).map(y=>S.get(y.toLowerCase())).filter(Boolean).map(y=>({name:y.name,type:typeof y.type=="string"?y.type:"string"})):null;return{...L?{$schema:L}:{},format:v,formatVersion:h,name:s,...i?{description:i}:{},...u?{createdAt:u}:{},...f?{generator:f}:{},source:{...o?{id:o}:{},...g?{name:g}:{},...$?{fields:$}:{},...l},extensions:{},view:e}}function U(e){return`${JSON.stringify(e,null,2)}
|
|
2
|
+
`}function W(e){return`${(typeof e=="string"?e:"").toLowerCase().normalize("NFKD").replace(/[̀-ͯ]/g,"").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,80).replace(/-+$/,"")||"view"}.pivotkit.json`}function B(e,t={}){let n={view:null,envelope:!1,formatVersion:null,name:"",description:"",createdAt:null,generator:null,source:null,failed:null,issues:[]},s=(r,u)=>({...n,failed:r,issues:[...n.issues,{path:"",message:u}]}),o=e;if(typeof e=="string"){if(e.trim()==="")return s("empty","empty text");if(e.length>m.text)return s("tooLarge",`longer than ${m.text} characters`);try{o=JSON.parse(e)}catch{return s("notJson","not valid JSON")}}if(!d(o))return s("notView","not a JSON object");let a=(r,u)=>n.issues.push({path:r,message:u}),l;if(c(o,"format")===v){n.envelope=!0;let r=c(o,"formatVersion");if(r==null)a("formatVersion","missing; read as 1");else if(!I.includes(r))return(typeof r=="number"?r:typeof r=="string"&&r.trim()!==""?Number(r):NaN)>h?s("newerFormat",`format version ${JSON.stringify(r)} is newer than ${h}`):s("notView",`format version ${JSON.stringify(r)} is not one of ${I.join(", ")}`);n.formatVersion=r??1,l=c(o,"view"),n.name=p(c(o,"name"),m.name),n.description=p(c(o,"description"),m.description);let u=c(o,"createdAt");n.createdAt=typeof u=="string"&&!Number.isNaN(Date.parse(u))?u.slice(0,64):null,u!==void 0&&n.createdAt===null&&a("createdAt","not a date and time");let f=c(o,"generator");d(f)&&typeof c(f,"name")=="string"&&(n.generator={name:p(c(f,"name"),m.name),version:p(c(f,"version"),m.name)}),n.source=C(c(o,"source"),a,x(t))}else{let r=c(o,"view");d(r)&&typeof c(o,"name")=="string"?(l=r,n.name=p(c(o,"name"),m.name)):l=o}if(!d(l))return s("notView","no view object");let i=c(l,"version");return typeof i=="number"&&i>w?s("newerView",`view version ${i} is newer than ${w}`):(n.view=l,t.data&&(n.compatible=_(n,t.data,t.sourceId)),n)}function F(e,t,n){if(e==null)return null;if(!d(e))return n("source.params","not an object"),null;let s=Object.create(null),o=Object.keys(e);o.length>t.srcParams&&n("source.params",`more than ${t.srcParams} parameters; the rest left out`);for(let a of o.slice(0,t.srcParams)){let l=c(e,a);a===""||a.length>t.srcParamLength||typeof l!="string"||l.length>t.srcParamLength?n(`source.params.${a.slice(0,100)}`,`a parameter is a name and a text of at most ${t.srcParamLength} characters`):s[a]=l}return{...s}}function C(e,t,n){if(e===void 0)return null;if(!d(e))return t("source","not an object"),null;let s={},o=p(c(e,"id"),m.name),a=p(c(e,"name"),m.name);o&&(s.id=o),a&&(s.name=a);let l=F(c(e,"params"),n,t);l&&Object.keys(l).length&&(s.params=l);let i=c(e,"fields");return i!==void 0&&(Array.isArray(i)?(i.length>m.fields&&t("source.fields",`more than ${m.fields} fields; the rest left out`),s.fields=[],i.slice(0,m.fields).forEach((r,u)=>{let f=p(c(r,"name"),m.name),g=c(r,"type");f?j.includes(g)?s.fields?.push({name:f,type:g}):(t(`source.fields[${u}].type`,`unknown type ${JSON.stringify(g)}`),s.fields?.push({name:f,type:"string"})):t(`source.fields[${u}]`,"no name")})):t("source.fields","not a list")),s}function _(e,t,n){let s=A(t),o=e.source?.fields,a=V(e.view),l=a.filter(f=>!s.has(f.toLowerCase())),i=(o??[]).filter(f=>s.has(f.name.toLowerCase())&&s.get(f.name.toLowerCase()).type!==f.type).map(f=>({name:f.name,type:f.type,dataType:String(s.get(f.name.toLowerCase()).type)})),r=e.source?.id,u=typeof n=="string"&&n&&r?r===n?"same":"other":"unknown";return{ok:u!=="other"&&l.length===0&&i.length===0,source:u,missing:l,changed:i,needs:a}}export{O as a,P as b,T as c,m as d,M as e,U as f,W as g,B as h,F as i};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{c as re,e as se}from"./chunk-UTPKLCNX.js";import{c as J,l as R}from"./chunk-XETFD6GR.js";import{K as Q,L as ee,M as te,N as L,P as oe,Q as O,d as W,j as Z,k as K}from"./chunk-4PHDW2LB.js";import{b as d,c as _,i as z,j as A,k as V,l as F,m as T,r as Y,w as q}from"./chunk-XR4CMFGN.js";import{a as ne}from"./chunk-5QXN3X2Q.js";var B=String.raw`[+\-\u2212]?\p{Sc}?\d[\d.,'\u2019\u00a0\u202f ]*(?:[\u00a0\u202f ]?(?:%|\p{Sc}))?`,Ce=new RegExp(`^${B}$`,"u"),M=/[\u061c\u200e\u200f\u202a-\u202e\u2066-\u2069]/g,Te=/^[\s\u0000-\u001f\u007f-\u009f\u00ad\u061c\u180e\u200b-\u200f\u202a-\u202e\u2060-\u2064\u2066-\u206f\ufeff]+/,le=e=>Se(e.replace(M,"")),ge=new RegExp(`^${B}\\s\u2013\\s${B}$`,"u");function be(e){return me(e)===","?";":","}function me(e){let t=W(e).formatToParts(1.5).find(o=>o.type==="decimal");return t?t.value:"."}function Se(e){if(/^[\t\r]/.test(e))return`'${e}`;let t=e.replace(Te,"");return/^[=@]/.test(t)||/^[+-]/.test(t)&&!Ce.test(t)&&!ge.test(t)?`'${e}`:e}function ue(e){let t=new Date(e),o=`${F(t.getUTCFullYear(),4)}-${F(t.getUTCMonth()+1)}-${F(t.getUTCDate())}`;return e%A===0?o:`${o} ${F(t.getUTCHours())}:${F(t.getUTCMinutes())}:${F(t.getUTCSeconds())}`}function Fe(e,t){let o=String(Number(e.toPrecision(15)));return t==="."?o:o.replace(".",t)}function Ee(e,t){let o=Math.sign(e)*Number(Math.abs(e).toFixed(t));return o===0?0:o}function ke(e,t,o,n,r){let l=Q(t)?.name,i=l==="percent"||l==="percent100",a=n||i?ee(t,r):null,c=l==="percent"?e*100:e,u=Fe(a===null?c:Ee(c,a),o);return i?`${u}%`:u}function X(e,t){let o=new Map;for(let n of e.merges)for(let r=n.row;r<n.row+n.rowSpan;r++)for(let l=n.col;l<n.col+n.colSpan;l++)(r!==n.row||l!==n.col)&&o.set(`${r},${l}`,e.rows[n.row][n.col]);return e.rows.map((n,r)=>n.map((l,i)=>{if(l)return l;let a=o.get(`${r},${i}`);return t&&a&&a.kind==="rowHeader"&&a.total===0&&(a.colSpan??1)===1?a:null}))}var ce=e=>e.kind==="value"&&typeof e.value=="number"&&Number.isFinite(e.value);function ie(e,t){return t=T(t,"toCsv"),d(R(e),"toCsv(grid): grid must come from toGrid()"),N(e,t)}function N(e,t){let o=e.locale??V,n=t.separator??be(o),r=me(o),l=a=>{let c=le(a);return/["\r\n]/.test(c)||c.includes(n)?`"${c.replace(/"/g,'""')}"`:c};return X(e,t.repeatLabels!==!1).map(a=>a.map(c=>{if(!c)return"";if(ce(c)){let u=c.valueIndex!==void 0&&!!e.showAs?.[c.valueIndex];return c.valueType==="date"?ue(c.value):ke(c.value,c.format,r,u,o)}return l(c.text)}).join(n)).join(`\r
|
|
2
|
+
`)+`\r
|
|
3
|
+
`}function ae(e){let t=o=>{let n=le(String(o??""));return/["\t\r\n]/.test(n)?`"${n.replace(/"/g,'""')}"`:n};return e.map(o=>o.map(t).join(" ")).join(`\r
|
|
4
|
+
`)+`\r
|
|
5
|
+
`}function Re(e){return Array.isArray(e)?(d(e.every(Array.isArray),"toTsv(rows): rows must be arrays of texts"),ae(e)):(d(R(e),"toTsv(grid): grid must come from toGrid() or be an array of rows"),ae(X(e,!0).map(t=>t.map(o=>o?o.text:""))))}function De(e){return!e||e.value===null||e.value===void 0?null:ce(e)?e.valueType==="date"?ue(e.value):Number(e.value.toPrecision(15)):typeof e.value=="number"?null:e.value}function _e(e,t){t=T(t,"toJson"),d(R(e),"toJson(grid): grid must come from toGrid()");let o=X(e,!0),n=e.rowHeaderColumns,r=o.slice(0,e.headerRows),l=u=>u?u.text:"",i=r[r.length-1]??[],a=r.map(u=>u.slice());for(let u of e.merges)for(let x=u.row;x<Math.min(u.row+u.rowSpan,e.headerRows);x++)for(let f=u.col;f<u.col+u.colSpan;f++)a[x][f]=e.rows[u.row][u.col];let c={rowHeaders:Array.from({length:n},(u,x)=>l(i[x]??null)),columns:e.dataColumns.map((u,x)=>{let f=n+x,h=[],b=null;for(let D of a){let w=D[f];w&&w!==b&&w.kind!=="corner"&&w.text!==""&&h.push(w.text),b=w}return{labels:h,value:u.valueIndex>=0?e.valueNames[u.valueIndex]??null:null,total:u.total}}),rows:e.bodyRows.map((u,x)=>{let f=o[e.headerRows+x];return{labels:f.slice(0,n).map(l),total:u.total,collapsed:u.collapsed,values:f.slice(n).map(De)}})};return JSON.stringify(c,null,t.space??2)}function Ie(e,t){return t=T(t,"toCsvBytes"),new TextEncoder().encode((t.bom===!1?"":"\uFEFF")+ie(e,t))}var Ae=25569,Le=1048576,Ne=16384,fe=32767,Oe=Date.UTC(1900,0,1),Be=Date.UTC(1900,2,1),Me=Date.UTC(1e4,0,1),Xe=new Set(["history"]);function U(e){return String(e).replace(M,"").replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g,"").replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"")}function E(e,t){let o="",n=e+1;for(;n>0;){let r=(n-1)%26;o=String.fromCharCode(65+r)+o,n=Math.floor((n-1)/26)}return`${o}${t+1}`}function Ue(e){if(!(e>=Oe&&e<Me))return null;let t=e/A+Ae;return e<Be?t-1:t}function pe(e){return`FF${Y(e).toUpperCase()}`}function je(e){let t=String(e??"").replace(/[\u0000-\u001F\u007F\\/?*[\]:]/g," ").replace(/^'+|'+$/g,"").trim().slice(0,31).trim();return Xe.has(t.toLowerCase())?`${t} 1`:t||"Pivot"}function He(e){let t=new Map;for(let[n,r]of e)t.has(r)||t.set(r,[]),t.get(r).push(n);let o=[];for(let[n,r]of[...t.entries()].sort((l,i)=>l[0]-i[0])){r.sort((a,c)=>a-c);let l=r[0],i=r[0];for(let a=1;a<=r.length;a++){if(a<r.length&&r[a]===i+1){i=r[a];continue}o.push(l===i?E(n,l):`${E(n,l)}:${E(n,i)}`),a<r.length&&(l=i=r[a])}}return o.join(" ")}function j(e,t){t=T(t,"toXlsx"),d(R(e),"toXlsx(grid): grid must come from toGrid()"),_("xlsxRows",e.rows.length,Le,"rows (an Excel sheet)"),_("xlsxColumns",e.columnCount,Ne,"columns (an Excel sheet)");let o={...ne,...t.theme||{}},n=e.locale,r=new Map,l=[{fmt:0,bold:!1,top:!1}],i=new Map([["0|false|false",0]]),a=(m,p,$=!1)=>{let v=0;m&&m!=="General"&&(r.has(m)||r.set(m,164+r.size),v=r.get(m));let s=`${v}|${p}|${$}`;return i.has(s)||(i.set(s,l.length),l.push({fmt:v,bold:p,top:$})),i.get(s)},c=(m,p,$,v)=>{let s=p.length>fe?p.slice(0,fe):p;return`<c r="${m}" t="inlineStr" s="${a("General",$,v)}"><is><t xml:space="preserve">${U(s)}</t></is></c>`},u=(m,p,$,v,s)=>`<c r="${m}" s="${a($,v,s)}"><v>${p}</v></c>`,x=new Array(e.columnCount).fill(6),f=new Map,h=e.rows.map((m,p)=>{let $=p<e.headerRows,v=m.map((s,S)=>{if(!s)return"";let y=E(S,p),C=$||s.total>0;if((!s.colSpan||s.colSpan===1)&&(x[S]=Math.max(x[S],Math.min(60,s.text.length+2))),s.kind==="value"&&typeof s.value=="number"&&Number.isFinite(s.value)){if(s.total===0&&s.valueIndex!==void 0&&e.conditional&&e.conditional[s.valueIndex]){let g=f.get(s.valueIndex)??{cells:[],min:1/0,max:-1/0};g.cells.push([p,S]),g.min=Math.min(g.min,s.value),g.max=Math.max(g.max,s.value),f.set(s.valueIndex,g)}if(s.valueType==="date"){let g=Ue(s.value);return g===null?c(y,s.text,C):u(y,g,O(s.format,s.value,n),C)}return u(y,s.value,O(s.format,s.value,n),C)}let I=(s.rowSpan??1)>1;return(s.kind==="rowHeader"||s.kind==="colHeader")&&typeof s.value=="number"&&s.text===String(s.value)?u(y,s.value,"General",C,I):s.text===""?C?`<c r="${y}" s="${a("General",!0)}"/>`:"":c(y,s.text,C,I)});return`<row r="${p+1}">${v.join("")}</row>`}),b=1,D=[...f.entries()].map(([m,{cells:p,min:$,max:v}])=>{let s=e.conditional[m],S;if(s.type==="colorScale"){let y=s.colors.length>=2?s.colors:o.colorScale,C=y.length===3?'<cfvo type="min"/><cfvo type="percentile" val="50"/><cfvo type="max"/>':'<cfvo type="min"/><cfvo type="max"/>';S=`<cfRule type="colorScale" priority="${b++}"><colorScale>${C}${y.map(I=>`<color rgb="${pe(I)}"/>`).join("")}</colorScale></cfRule>`}else{let y=$>0?'<cfvo type="num" val="0"/>':'<cfvo type="min"/>',C=v<0?'<cfvo type="num" val="0"/>':'<cfvo type="max"/>';S=`<cfRule type="dataBar" priority="${b++}"><dataBar>${y}${C}<color rgb="${pe(s.color||o.dataBar)}"/></dataBar></cfRule>`}return`<conditionalFormatting sqref="${He(p)}">${S}</conditionalFormatting>`}),w=e.headerRows>0||e.rowHeaderColumns>0?`<pane${e.rowHeaderColumns?` xSplit="${e.rowHeaderColumns}"`:""}${e.headerRows?` ySplit="${e.headerRows}"`:""} topLeftCell="${E(e.rowHeaderColumns,e.headerRows)}" activePane="${e.rowHeaderColumns&&e.headerRows?"bottomRight":e.headerRows?"bottomLeft":"topRight"}" state="frozen"/>`:"",G=x.map((m,p)=>`<col min="${p+1}" max="${p+1}" width="${m}" customWidth="1"/>`).join(""),he=e.merges.length?`<mergeCells count="${e.merges.length}">${e.merges.map(m=>`<mergeCell ref="${E(m.col,m.row)}:${E(m.col+m.colSpan-1,m.row+m.rowSpan-1)}"/>`).join("")}</mergeCells>`:"",k=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
6
|
+
`,de=`${k}<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><sheetViews><sheetView workbookViewId="0">${w}</sheetView></sheetViews>${G?`<cols>${G}</cols>`:""}<sheetData>${h.join("")}</sheetData>${he}${D.join("")}</worksheet>`,we=[...r.entries()].map(([m,p])=>`<numFmt numFmtId="${p}" formatCode="${U(m)}"/>`).join(""),ve=`${k}<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">${r.size?`<numFmts count="${r.size}">${we}</numFmts>`:""}<fonts count="2"><font><sz val="11"/><name val="Calibri"/></font><font><b/><sz val="11"/><name val="Calibri"/></font></fonts><fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills><borders count="1"><border/></borders><cellStyleXfs count="1"><xf/></cellStyleXfs><cellXfs count="${l.length}">${l.map(m=>`<xf numFmtId="${m.fmt}" fontId="${m.bold?1:0}"${m.fmt?' applyNumberFormat="1"':""}${m.bold?' applyFont="1"':""}${m.top?' applyAlignment="1"><alignment vertical="top"/></xf>':"/>"}`).join("")}</cellXfs><dxfs count="0"/></styleSheet>`,ye=U(je(t.sheetName)),$e={"[Content_Types].xml":`${k}<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/></Types>`,"_rels/.rels":`${k}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>`,"xl/workbook.xml":`${k}<workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"><sheets><sheet name="${ye}" sheetId="1" r:id="rId1"/></sheets></workbook>`,"xl/_rels/workbook.xml.rels":`${k}<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>`,"xl/styles.xml":ve,"xl/worksheets/sheet1.xml":de},P={};for(let[m,p]of Object.entries($e))P[m]=re(p);return se(P,{level:6})}var xe=new Set(["date","datetime","time"]);function Ge(e,t){if(!e||typeof e!="object")return;if(Object.hasOwn(e,t))return e[t];let o=t.toLowerCase(),n=Object.keys(e).find(r=>r.toLowerCase()===o);return n===void 0?void 0:e[n]}function Pe(e,t,o,n){let r=t?t.split(":")[0]:null;if(e.type==="date"){let l=r&&xe.has(r)?t:e.dateOnly?"date":"datetime",i=L(l,o);return a=>({kind:"value",total:0,value:a,valueType:"date",format:l,text:i(a)})}if(e.type==="number"&&r!=="text"){let l=t&&!xe.has(r)?t:null,i=l?L(l,o):null;return a=>{let c=l??`number:${oe(a,6)}`;return{kind:"value",total:0,value:a,valueType:"number",format:c,text:i?i(a):L(c,o)(a)}}}return e.type==="boolean"?l=>({kind:"value",total:0,value:null,valueType:"text",text:l?n.true:n.false}):l=>({kind:"value",total:0,value:null,valueType:"text",text:String(l)})}function H(e,t,o,n){d(J(e),`${n}(data, indices): data must come from encode()`),d(t!==null&&typeof t=="object"&&typeof t.length=="number",`${n}(data, indices): indices must be an array of row positions`);let r=z(o),l=q(null,o.locale),i={...Z,...o.labels||{}},a=e.columns;o.columns!==void 0&&(d(Array.isArray(o.columns),`${n}: options.columns must be an array of field names`),a=o.columns.map(f=>e.column(String(f))).filter(f=>f!==void 0)),_("cells",(t.length+1)*a.length,r.cells,"rows x columns of the rows export");let c=a.map(f=>{let h=Ge(o.formats,f.name);return Pe(f,typeof h=="string"&&te(h)?h.trim().toLowerCase():null,l,i)}),x=[a.map(f=>({kind:"colHeader",total:0,value:f.name,text:K(f.name,i)}))];for(let f=0;f<t.length;f++){let h=t[f];d(Number.isInteger(h)&&h>=0&&h<e.length,`${n}: indices[${f}] is not a row of the data`),x.push(a.map((b,D)=>{let w=b.codes[h];return w<0?null:c[D](b.dict[w])}))}return{rows:x,headerRows:1,rowHeaderColumns:0,columnCount:a.length,merges:[],dataColumns:[],bodyRows:[],formats:[],showAs:[],valueNames:[],conditional:[],locale:l,timeZone:e.timeZone}}function ze(e,t,o){return o=T(o,"rowsToCsv"),N(H(e,t,o,"rowsToCsv"),o)}function Ve(e,t,o){return o=T(o,"rowsToCsvBytes"),new TextEncoder().encode((o.bom===!1?"":"\uFEFF")+N(H(e,t,o,"rowsToCsvBytes"),o))}function Ye(e,t,o){return o=T(o,"rowsToXlsx"),j(H(e,t,o,"rowsToXlsx"),{sheetName:o.sheetName})}export{ie as a,Re as b,_e as c,Ie as d,j as e,ze as f,Ve as g,Ye as h};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as X,d as ce,j as Y,n as fe,r as de,y as f,z as P}from"./chunk-YUY4D5MF.js";import{d as Se,g as Oe}from"./chunk-65O4Z5GI.js";import{e as we}from"./chunk-XETFD6GR.js";import{b as be,c as ke,d as Ce,h as Te}from"./chunk-PJA6QZ4Y.js";import{C as ge,M as ye,c as K,da as ve,h as pe,k as j,r as Q}from"./chunk-4PHDW2LB.js";import{d as me,h as he}from"./chunk-XR4CMFGN.js";import{c as x}from"./chunk-DCANE7XH.js";var D=x(X(),1),p=x(X(),1),qe=x(X(),1);var _=Object.freeze({auto:{chart:{type:"auto",stacked:!1,horizontal:!1},icon:"sparkle",axis:!0},bar:{chart:{type:"bar",stacked:!1,horizontal:!1},icon:"chart",axis:!0},stacked:{chart:{type:"bar",stacked:!0,horizontal:!1},icon:"stacked",axis:!0},horizontal:{chart:{type:"bar",stacked:!1,horizontal:!0},icon:"horizontal",axis:!0},line:{chart:{type:"line",stacked:!1,horizontal:!1},icon:"line",axis:!0},area:{chart:{type:"area",stacked:!1,horizontal:!1},icon:"area",axis:!0},pie:{chart:{type:"pie",stacked:!1,horizontal:!1},icon:"pie",axis:!1},donut:{chart:{type:"donut",stacked:!1,horizontal:!1},icon:"donut",axis:!1},heatmap:{chart:{type:"heatmap",stacked:!1,horizontal:!1},icon:"heatmap",axis:!1}}),Ye=Object.freeze(["pie","donut"]),Le=Object.freeze(Object.keys(_));function Ke(e){let t=Le.find(n=>{let r=_[n].chart;return r.type===e.type&&r.stacked===!!e.stacked&&r.horizontal===!!e.horizontal});return t||(e.type==="bar"?e.horizontal?"horizontal":"stacked":Le.find(n=>_[n].chart.type===e.type)??"bar")}function Qe(e,t){let n=Se(e,t);return{name:Ke(n.chart),...n}}var et=8,Ht=50,Gt=Object.freeze(["filters","cols","rows","values"]),O=e=>JSON.parse(JSON.stringify(e)),z=Object.freeze({"=":"!=",between:"notBetween",equals:"notEquals",contains:"notContains",beginsWith:"notBeginsWith",endsWith:"notEndsWith"}),xt=Object.freeze({text:Object.freeze(["equals","notEquals","contains","notContains","beginsWith","notBeginsWith","endsWith","notEndsWith"]),compare:Object.freeze(["=","!=",">",">=","<","<=","between","notBetween"])}),ie=e=>e.not&&typeof e.op=="string"&&Object.hasOwn(z,e.op)?z[e.op]:String(e.op),tt=e=>!!e.not&&!(typeof e.op=="string"&&Object.hasOwn(z,e.op));function Xt(e){let t=Object.keys(z).find(n=>z[n]===e);return t?{op:t,not:!0}:{op:e,not:!1}}var nt=(e,t)=>({field:e,type:"in",items:t.filter(n=>n!==null),not:!0,blanks:t.includes(null)?"exclude":"include"}),se=e=>nt(e,[]),rt=e=>e.type==="in",ot=e=>rt(e)&&e.not===!0&&e.items.length===0&&e.blanks==="include",m=(e,t)=>typeof e=="string"&&typeof t=="string"&&e.toLowerCase()===t.toLowerCase();function Yt(e,t){let n=Q(t);return n?e.filter(r=>Q(r.label).includes(n)):e}var ne=(e,t)=>Number.isInteger(e)?Math.max(0,Math.min(e,t)):t;function U(e){let t=new Set,n=[];for(let r of e.filters){let i=r.field.toLowerCase();!t.has(i)&&!e.rows.some(o=>m(o,r.field))&&!e.cols.some(o=>m(o,r.field))&&(t.add(i),n.push(r.field))}return n}function Pe(e,t){return e.rows.some(n=>m(n,t))?"rows":e.cols.some(n=>m(n,t))?"cols":null}function it(e,t){return typeof t=="string"&&K(e??"string").includes(t)?t:e==="number"&&K(e).includes("sum")?"sum":"count"}function q(e){let t=new Set([...e.rows,...e.cols,...e.values.map(n=>n.field),...e.filters.map(n=>n.field)].filter(Boolean).map(n=>n.toLowerCase()));return e.derived=e.derived.filter(n=>t.has(n.name.toLowerCase())),e.sort=e.sort.filter(n=>t.has(n.field.toLowerCase())),e}function B(e,t){e.rows=e.rows.filter(n=>!m(n,t)),e.cols=e.cols.filter(n=>!m(n,t))}function $(e,t){for(let n of["rows","cols"])JSON.stringify(t[n])!==JSON.stringify(e[n])&&(e.collapsed[n]=[])}function Kt(e,t){let n=r=>t&&Number.isInteger(t[r])&&t[r]>0?t[r]:me[r];for(let[r,i]of[["rows","axisFields"],["cols","axisFields"],["values","values"]])if((e&&Array.isArray(e[r])?e[r]:[]).length>n(i))return{zone:r,max:n(i)};return null}function Fe(e,t,n,r={}){if(r.dateUnit&&n!=="values"){let o=r.groupName??`${t} (${r.dateUnit})`,s=Fe(st(e,o),t,n,{...r,dateUnit:null,defaults:void 0});return ut(s,t,r.dateUnit,{name:o}).view}let i=O(e);if(n==="rows"||n==="cols"){B(i,t),i[n].splice(ne(r.index,i[n].length),0,t);let o=r.defaults?.order;Array.isArray(o)&&o.length>0&&!i.sort.some(s=>m(s.field,t))&&i.sort.push({field:t,by:"custom",order:"asc",items:[...o]})}else if(n==="values"){let o=r.defaults??{},s=typeof o.format=="string"&&ye(o.format)?o.format:null;i.values.splice(ne(r.index,i.values.length),0,{field:t,agg:it(r.type,o.agg),format:s,label:null,showAs:null,conditional:null})}else n==="filters"&&(B(i,t),i.filters.some(o=>m(o.field,t))||i.filters.push(se(t)));return $(i,e),q(i)}function Qt(e,t,n){let r=O(e);if(t==="values")r.values.splice(n,1);else{let o=(t==="filters"?U(e):e[t])[n];if(o===void 0)return e;B(r,o),r.filters=r.filters.filter(s=>!m(s.field,o))}return $(r,e),q(r)}function st(e,t){if(!Pe(e,t)&&!U(e).some(r=>m(r,t)))return e;let n=O(e);return B(n,t),n.filters=n.filters.filter(r=>!m(r.field,t)),$(n,e),q(n)}function at(e,t,n){return t==="values"?e.values[n]?e.values[n].field:void 0:(t==="filters"?U(e):e[t])[n]}function en(e,t,n,r,i,o={}){if(t===r)return lt(e,t,n,i);let s=at(e,t,n);if(s==null)return e;let a=O(e);return t==="values"?a.values.splice(n,1):r!=="filters"&&(B(a,s),r==="values"&&(a.filters=a.filters.filter(l=>!m(l.field,s)))),a=Fe(a,s,r,{...o,index:i}),$(a,e),q(a)}function lt(e,t,n,r){let i=t==="filters"?null:t==="values"?e.values:e[t];if(!i||n===r||n<0||n>=i.length)return e;let o=O(e),s=o[t],[a]=s.splice(n,1);return s.splice(ne(r,s.length),0,a),$(o,e),o}function tn(e,t){let n=e.column(t);if(!n||n.type!=="number")return null;let r=1/0,i=-1/0;for(let o of n.dict)typeof o=="number"&&Number.isFinite(o)&&(r=Math.min(r,o),i=Math.max(i,o));return r<=i?{min:r,max:i}:null}function nn(e,t){let n=e.column(t);if(!n||n.type!=="date")return null;let r=1/0,i=-1/0;for(let o of n.dict)typeof o=="number"&&(r=Math.min(r,o),i=Math.max(i,o));return r<=i?{min:r,max:i}:null}function ut(e,t,n,r={}){let i=e.derived.find(c=>m(c.name,t)),o=i?i.field:t,s=Pe(e,t),a=O(e),l=o;if(n){l=r.name??`${o} (${n})`;let c=a.derived.find(g=>m(g.name,l)),u=r.origin??(i?.by==="bin"?i.origin??0:0),d=n==="bin"?{name:l,field:o,by:n,size:r.size,origin:u}:{name:l,field:o,by:n};c?Object.assign(c,d):a.derived.push(d)}if(s){let c=s==="rows"?"cols":"rows";if(!m(l,t)&&a[c].some(u=>m(u,l)))a[s]=a[s].filter(u=>!m(u,t));else{let u=new Set;a[s]=a[s].map(d=>m(d,t)?l:d).filter(d=>!u.has(d.toLowerCase())&&u.add(d.toLowerCase()))}}if(!m(l,t)){let c=!s&&U(e).some(u=>m(u,t));a.filters=a.filters.filter(u=>!m(u.field,t)),c&&a.filters.push(se(l))}return a.sort=a.sort.map(c=>m(c.field,t)?{...c,field:l}:c),$(a,e),{view:q(a),field:l}}function ct(e,t){return e.derived.find(n=>m(n.name,t))??null}function ft(e,t){let n=ct(e,t);return n?n.field:t}function rn(e,t,n){let r=O(e);return r.sort=r.sort.filter(i=>!m(i.field,t)),n&&r.sort.push({field:t,...n}),r}function on(e,t){let r=[...e.rows,...e.cols].filter(o=>!e.derived.some(s=>m(s.name,o))&&!e.sort.some(s=>m(s.field,o))).map(o=>({field:o,order:t(o)})).filter(({order:o})=>Array.isArray(o)&&o.length>0);if(!r.length)return e;let i=O(e);for(let{field:o,order:s}of r)i.sort.push({field:o,by:"custom",order:"asc",items:[...s]});return i}function Me(e,t){return e.sort.find(n=>m(n.field,t))??null}function dt(e,t){return e.by==="label"&&e.order==="asc"&&!t?null:e}function sn(e,t,n){if(t.kind==="corner")return t.field&&e.rows.some(i=>m(i,t.field))?{field:t.field}:null;let r=t.kind==="colHeader"&&t.valueIndex!==void 0&&!t.colPath?.length?e.values[t.valueIndex]:void 0;return!r||!e.rows.length||!mt(r,r.field?n(r.field)??"string":"number")?null:{field:e.rows[e.rows.length-1],ref:{field:r.field??null,agg:r.agg}}}function an(e,t){let n=Me(e,t.field),r=i=>i==="desc"?"descending":"ascending";return t.ref?n?.by==="value"&&_e(n.value,t.ref)?{order:r(n.order),chosen:!0}:{order:null,chosen:!1}:n?{order:n.by==="label"?r(n.order):n.by==="custom"?"other":null,chosen:n.by==="label"}:{order:"ascending",chosen:!1}}function ln(e,t,n){let r=Me(e,t.field);if(t.ref){let o=r?.by==="value"&&_e(r.value,t.ref);return o&&r.order==="asc"?null:{by:"value",order:o?"asc":"desc",value:o?r.value:t.ref}}let i=!r||r.by==="label"&&r.order==="asc";return dt({by:"label",order:i?"desc":"asc"},n)}function ae(e,t,n){return e.filters.filter(r=>m(r.field,t)&&(!n||n.includes(r.type)))}function un(e,t,n){let r=n;for(let i of ae(e,t,["in"])){let o=new Set(i.items.map(a=>JSON.stringify(a))),s=i.blanks!=="exclude";r=r.filter(a=>a===null?s:i.blanks!=="only"&&o.has(JSON.stringify(a))!==i.not)}return r}function mt(e,t){return e.agg!=="listUnique"&&!(["first","last"].includes(e.agg)&&t!=="number")&&!(t==="date"&&["average","median","min","max"].includes(e.agg))}function _e(e,t){return!!(e&&t)&&e.agg===t.agg&&(e.field===null||t.field===null?e.field===t.field:m(e.field,t.field))}function ht(e,t){return ae(e,t).some(n=>!ot(n))}function cn(e,t,n){let r=O(e),i=JSON.stringify(n),o=r.collapsed[t],s=o.findIndex(a=>JSON.stringify(a)===i);return s===-1?o.push(n):o.splice(s,1),r}function fn(e,t){let n=new Set(e.collapsed.rows.map(a=>JSON.stringify(a))),r=t.filter(a=>n.has(JSON.stringify(a))).length,i=e.rows.length<2?0:t.length-r,o=e.collapsed.rows.length>0,s=i>0;return{canExpand:o,canCollapse:s,collapsed:e.collapsed.rows.length,open:i,why:{expand:o?null:"expandNothing",collapse:s?null:e.rows.length<2?"collapseNeedsRows":"collapseAllDone"}}}function dn(e,t,n){let r=O(e);return r.collapsed[t]=n||[],r}function mn(e,t,n){let r=O(e);return r.totals[t]=!!n,r}function hn(e,t){let n=O(e);return n.display=t,n}function pn(e,t){let n=O(e);return n.chart={...n.chart,..._[t].chart},n.display="chart",n}function gn(e,t){let n=O(e);return n.chart={...n.chart,...t},n}function yn(e){return e.rows.length===0&&e.cols.length===0&&e.values.length===0}var J=(e,t,n)=>tt(e)?f(n.notRule,{rule:t}):t;function pt(e,t){if(e.label)return e.label;let n=t.core,r;if(!e.field)r=n.countRows;else{let o=Object.hasOwn(n.aggregators,e.agg)?n.aggregators[e.agg]:e.agg;r=f(n.valueName,{agg:o,field:j(e.field,n)})}if(!e.showAs||!n.showAs||!n.showAsName)return r;let i=Object.hasOwn(n.showAs,e.showAs.type)?n.showAs[e.showAs.type]:e.showAs.type;return f(n.showAsName,{showAs:i,value:e.field&&e.agg==="sum"?j(e.field,n):r})}function ze(e,t,n){let r=t?.field??null,i=s=>r===null||s.field===null||s.field===void 0?(s.field??null)===r:s.field.toLowerCase()===r.toLowerCase(),o=t?(e.values??[]).find(s=>s.agg===t.agg&&i(s)):void 0;return!o&&r===null?n.countOfRows:pt({...o??t,showAs:null},n)}function wn(e,t,n){let r=t.order==="desc";return t.by==="value"?f(r?n.sortValueDesc:n.sortValueAsc,{value:ze(e,t.value,n)}):t.by==="custom"?r?n.sortCustomDesc:n.sortCustom:r?n.sortLabelDesc:n.sortLabelAsc}var H=Object.freeze({"=":"=","!=":"\u2260",">":">",">=":"\u2265","<":"<","<=":"\u2264"});function Sn(e,t,n,r){let i=a=>typeof a=="number"?a.toLocaleString(r,{maximumFractionDigits:6}):"",o=ze(e,t.by??(e.values?.[0]?{field:e.values[0].field??null,agg:e.values[0].agg}:null),n),s=ie(t);if(s==="between"||s==="notBetween"){let[a,l]=typeof t.value2=="number"&&t.value2<t.value?[t.value2,t.value]:[t.value,t.value2];return f(n.valueConditions[s],{value:o,from:i(a),to:i(l)})}return J(t,f(n.valueConditions.compare,{value:o,op:Object.hasOwn(H,s)?H[s]:s,number:i(t.value)}),n)}var Be=(e,t)=>new Date(`${e}T00:00Z`).toLocaleDateString(t,{dateStyle:"medium",timeZone:"UTC"}),V=e=>new Date(e).toISOString().slice(0,10),Ee=(e,t=1)=>V(Date.parse(`${e}T00:00Z`)+t*864e5);function gt(e,t,n,r,i={}){let o=Ue(e,t,n,r,i);return o&&o.from!==null?{from:o.from,to:o.to}:null}var Ue=(e,t,n,r,i={})=>ge(e.unit,e.count??1,{timeZone:t,now:n,anchor:e.anchor,latest:r??void 0,first:i.first??void 0,direction:e.direction,calendar:e.calendar,includeCurrent:e.includeCurrent,weekStart:i.weekStart}),yt=e=>["last","this"].includes(e.direction??"last")&&e.calendar!==!1&&(e.anchor===void 0||e.anchor==="today"||e.anchor==="latest")&&["year","quarter","month","week","day"].includes(e.unit);function I(e,t,n){let o=t==="year"?l=>l.slice(0,4):t==="quarter"?l=>`Q${Math.floor((Number(l.slice(5,7))-1)/3)+1} ${l.slice(0,4)}`:t==="month"?l=>new Date(`${l.slice(0,10)}T00:00Z`).toLocaleDateString(n,{month:"short",year:"numeric",timeZone:"UTC"}):l=>Be(l.slice(0,10),n),[s,a]=[o(e.from),o(e.to)];return s===a?s:`${s}\u2013${a}`}function vt(e,t,n,r){let i=t==="quarter"?"month":t==="week"?"day":t;e={from:e.from.slice(0,10),to:e.to.slice(0,10)};let[o,s]=[wt(V(n.min),i),St(V(n.max),i)];if(o<=e.from&&s>=e.to)return null;let a=e.from>o?e.from:o,l=e.to<s?e.to:s;if(a>l)return{none:!0};let c=[],u=0,d=(g,y,h)=>{let v=[],[k,A]=[Number(g.slice(0,4)),Number(y.slice(0,4))];for(let b=k;b<=A;b++)b!==h&&v.push(b);if(v.length&&(c.push(v.length===1?String(v[0]):`${v[0]}\u2013${v[v.length-1]}`),u+=v.length),k<=h&&h<=A){let b=`${String(h).padStart(4,"0")}-01-01`,R=`${String(h).padStart(4,"0")}-12-31`,T={from:g>b?g:b,to:y<R?y:R};c.push(I(T,t,r)),u+=I({from:T.from,to:T.from},t,r)===I({from:T.to,to:T.to},t,r)?1:2}};return e.from<o&&d(e.from,Ee(o,-1),Number(o.slice(0,4))),e.to>s&&d(Ee(s),e.to,Number(s.slice(0,4))),{none:!1,data:I({from:a,to:l},t,r),missing:c,count:u}}var wt=(e,t)=>t==="year"?`${e.slice(0,4)}-01-01`:t==="month"?`${e.slice(0,7)}-01`:e;function St(e,t){if(t==="day")return e;let[n,r]=[Number(e.slice(0,4)),Number(e.slice(5,7))];return V(t==="year"?Date.UTC(n,11,31):Date.UTC(n,r,0))}function Ot(e,t,n,r,i,o,s){if(!yt(e))return bt(e,t,n,r,i,o,s);let a=t.relativeMore,l=e.count??1,c=l===1?e.unit:`${e.unit}s`,u=e.direction==="this"?a.this[e.unit]??e.unit:Object.hasOwn(t.relative,c)?f(t.relative[c],{count:l.toLocaleString(n)}):f(P(a.last[e.unit]??{other:e.unit},l,{lang:t.lang,locale:n}),{count:l.toLocaleString(n)}),d=gt(e,r,i,o?.max,{weekStart:s}),g=e.anchor==="latest";if(e.includeCurrent===!1&&e.direction!=="this"&&!g&&(u=f(a.withoutCurrent,{text:u})),!d)return u;g&&(u=f(t.relativeTo,{text:u,end:I({from:d.to,to:d.to},e.unit,n)}));let y=o?vt(d,e.unit,o,n):null;if(!y)return g?u:f(t.withRange,{text:u,range:I(d,e.unit,n)});let h={lang:t.lang,locale:n};return y.none?f(t.withRange,{text:u,range:f(P(t.noData,1,h),{range:I(d,e.unit,n)})}):f(t.withShare,{text:u,range:y.data,missing:f(P(t.noData,y.count,h),{range:y.missing.join(", ")})})}function bt(e,t,n,r,i,o,s){let a=t.relativeMore,l={lang:t.lang,locale:n},c=e.direction??"last",u=c==="this"?a.this[e.unit]??e.unit:P(a[c]?.[e.unit]??{other:e.unit},e.count??1,l);e.calendar===!1&&c!=="this"?u=f(a.rolling,{text:u}):e.includeCurrent===!1&&c!=="this"&&(u=f(a.withoutCurrent,{text:u})),e.anchor==="latest"?u=f(a.fromLatest,{text:u}):e.anchor==="first"?u=f(a.fromFirst,{text:u}):e.anchor&&e.anchor!=="today"&&(u=f(a.fromDate,{text:u,date:re(e.anchor,n)}));let d=Ue(e,r,i,o?.max,{first:o?.min,weekStart:s});if(!d)return u;let g=(d.from===null||d.from.endsWith("T00:00"))&&d.to.endsWith("T00:00"),y=v=>re(g?v.slice(0,10):v,n),h=y(d.to);return f(t.withRange,{text:u,range:d.from===null?f(a.until,{to:h}):d.from===d.to?h:`${y(d.from)} \u2013 ${h}`})}function kt(e,t,n){if(t==="year"||t==="quarter"||t==="month"){let r=new Date(`${e.slice(0,10)}T00:00Z`);return t==="month"?r.toLocaleDateString(n,{month:"short",year:"numeric",timeZone:"UTC"}):t==="year"?e.slice(0,e.length-6):`Q${Math.floor(r.getUTCMonth()/3)+1} ${e.slice(0,e.length-6)}`}return re(e,n)}var re=(e,t)=>e.length>10?new Date(`${e.slice(0,16)}Z`).toLocaleString(t,{dateStyle:"medium",timeStyle:"short",timeZone:"UTC"}):Be(e,t);function Ct(e,t){return typeof e=="string"&&typeof t=="string"&&/^\d{4}-01-01$/.test(e)&&/^\d{4}-12-31$/.test(t)?[e.slice(0,4),t.slice(0,4)]:null}function Tt(e,t,n,{date:r,labelOf:i}){let o=l=>typeof l=="string"?kt(l,e.precision,n):i?.(l)??(r?String(l):l.toLocaleString(n,{maximumFractionDigits:6})),s=t.compareShort,a=ie(e);if(a==="between"||a==="notBetween"){let[l,c]=e.value2!==void 0&&e.value2<e.value?[e.value2,e.value]:[e.value,e.value2],u=Ct(l,c);return u?u[0]===u[1]?f(s[a==="between"?"=":"!="],{value:u[0]}):f(s[a],{from:u[0],to:u[1]}):f(s[a],{from:o(l),to:o(c)})}return J(e,r&&Object.hasOwn(s,a)?f(s[a],{value:o(e.value)}):`${Object.hasOwn(H,a)?H[a]:a} ${o(e.value)}`,t)}function On(e,t,n,{timeZone:r,date:i,labelOf:o,span:s,weekStart:a}){if(e.type==="relative")return J(e,Ot(e,t,n,r,void 0,s,a),t);if(e.type==="compare")return Tt(e,t,n,{date:i,labelOf:o});let l=ie(e);return J(e,`${Object.hasOwn(t.labelOps,l)?t.labelOps[l]:l} ${f(t.quote,{text:e.value})}`,t)}function bn(e,t,n,r){let i=n.unitInName&&Object.hasOwn(n.unitInName,t)?n.unitInName[t]:n.units[t];return t==="bin"?f(n.binsName,{field:e,size:r}):f(n.derivedName,{field:e,unit:i??t})}var Lt=e=>e==="number"?"values":"rows";function kn(e,t,n,r){let i=Lt(t),o=n.includes(i)?null:i!=="values"&&n.some(l=>l==="cols"||l==="filters")?"move":"add",s=n.length?`${e}, ${f(r.inZone,{zone:n.map(l=>r.zones[l]??l).join(", ")})}`:e,a=o===null?"":f(o==="move"?r.moveTo:r.addTo,{zone:r.zones[i]});return{zone:i,kind:o,name:s,description:a}}var Et=Object.freeze(["rows","cols","values","filters"]);function Cn(e,t){return Et.filter(n=>e[n]&&e[n].length).map(n=>({zone:n,title:t.zones[n],fields:e[n].map(r=>r.text).join(", ")}))}var At=1e3;function Nt(e,t){let n={};for(let r of e.columns){let i=r.codes[t],o=i<0?null:r.dict[i],s=r.type==="date"&&typeof o=="number"?new Date(o).toISOString().replace(/(T00:00:00)?\.000Z$/,"").replace(/:00$/,""):o;Object.defineProperty(n,r.name,{value:s,enumerable:!0,writable:!0,configurable:!0})}return n}function Ln(e,{rowPath:t=[],colPath:n=[],data:r=null,limit:i=At}){let o=we(e,{row:t,col:n}),s=o.slice(0,Math.max(0,i)),a=new Array(s.length);for(let l=0;l<s.length;l++)a[l]=r?r[s[l]]:Nt(e.encoded,s[l]);return{count:o.length,rows:a,indices:s}}function It(e){e.focus({preventScroll:!0});let t;try{e.select();let n=e.ownerDocument;t=typeof n.execCommand=="function"&&n.execCommand("delete")&&e.value===""}catch{t=!1}if(!t){let n=e instanceof HTMLTextAreaElement?HTMLTextAreaElement.prototype:HTMLInputElement.prototype;Object.getOwnPropertyDescriptor(n,"value")?.set?.call(e,""),e.dispatchEvent(new Event("input",{bubbles:!0}))}}function En({value:e,onChange:t,onClear:n,clearLabel:r,multiline:i=!1,className:o,inputRef:s,...a}){let l=(0,D.useRef)(null),c=ce(),u=s??l,d=()=>{u.current&&It(u.current),n?.()},g=h=>{a.onKeyDown?.(h),h.key==="Escape"&&e!==""&&!h.defaultPrevented&&(h.preventDefault(),h.stopPropagation(),d())},y=i?"textarea":"input";return D.default.createElement("span",{className:`pk-clear-input${i?" pk-clear-multi":""}${o?` ${o}`:""}`},D.default.createElement(y,{name:c,...a,ref:u,value:e,onChange:h=>t(h.target.value),onKeyDown:g}),e!==""?D.default.createElement("button",{type:"button",className:"pk-clear-x","aria-label":r,title:r,onPointerDown:h=>h.preventDefault(),onMouseDown:h=>h.preventDefault(),onClick:d,"data-testid":"clear-input"},D.default.createElement(Y,{name:"x",size:14})):null)}var Ae=250,Dt=1500;function Rt({info:e,labels:t,link:n=!0,className:r="pk-field-desc"}){return p.default.createElement("p",{className:r},p.default.createElement("span",null,e.description),n&&e.href?p.default.createElement(p.default.Fragment,null," ",p.default.createElement("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"pk-learn-more"},t.learnMore)):null)}function An({info:e,name:t,labels:n,className:r,testId:i="field-info",label:o,tabIndex:s,slot:a}){let[l,c]=(0,p.useState)(null),u=(0,p.useRef)(null),d=(0,p.useRef)(!1),g=(0,p.useRef)(null),y=(0,p.useId)(),h=(0,p.useId)(),v=(0,p.useRef)(null),k=()=>{g.current&&(clearTimeout(g.current),g.current=null)},A=w=>{let S=u.current,C=S?.getRootNode()??null,L=C&&"getElementById"in C?C.getElementById(y):null;return!!(S?.matches(":hover")||L?.matches(":hover")||w&&S&&L&&fe(S.getBoundingClientRect(),L.getBoundingClientRect(),v.current))},b=()=>{k();let w=Date.now(),S=()=>{if(A(Date.now()-w<Dt)){g.current=setTimeout(S,Ae);return}g.current=null,c(C=>C==="peek"?null:C)};g.current=setTimeout(S,Ae)};(0,p.useEffect)(()=>k,[]),(0,p.useEffect)(()=>{let w=u.current?.ownerDocument;if(l!=="peek"||!w)return;let S=L=>{v.current={x:L.clientX,y:L.clientY}},C=L=>{L.relatedTarget||(v.current=null)};return w.addEventListener("pointermove",S,{capture:!0,passive:!0}),w.addEventListener("pointerout",C,{capture:!0,passive:!0}),()=>{w.removeEventListener("pointermove",S,{capture:!0}),w.removeEventListener("pointerout",C,{capture:!0}),v.current=null}},[l]);let R=(0,p.useCallback)(()=>{d.current=!0,c(null),requestAnimationFrame(()=>{d.current=!1})},[]),T=o??f(n.aboutField,{field:t});return p.default.createElement(p.default.Fragment,null,p.default.createElement("button",{ref:u,type:"button",className:`pk-info${r?` ${r}`:""}`,"aria-label":T,"aria-describedby":h,"aria-expanded":l==="open","aria-controls":l?y:void 0,"aria-haspopup":"dialog",tabIndex:s,"data-pk-slot":a,"data-testid":i,onPointerEnter:w=>{w.pointerType==="mouse"&&(k(),c(S=>S??"peek"))},onPointerLeave:w=>{w.pointerType==="mouse"&&l==="peek"&&b()},onFocus:()=>{l===null&&!d.current&&c("peek")},onBlur:w=>{let S=w.relatedTarget;l==="peek"&&!(S&&S.closest?.(".pk-info-pop"))&&c(null)},onClick:()=>{k(),c(l==="open"?null:"open")}},p.default.createElement(Y,{name:"info",size:14})),p.default.createElement("span",{id:h,hidden:!0},e.description),p.default.createElement(de,{key:l??"closed",open:l!==null,passive:l==="peek",anchor:u,onClose:R,label:T,role:l==="peek"?"tooltip":"dialog",className:"pk-info-pop",id:y,onPointerEnter:k,onPointerLeave:w=>{w.pointerType==="mouse"&&l==="peek"&&b()}},p.default.createElement(Rt,{info:e,labels:n})))}var Nn=(0,qe.createContext)({explain:!0,labels:null}),Ne=null,We=null;function Dn(){return Ne??=import("./link-45LOEA7H.js").then(e=>(We=e,e)),Ne}var Rn=()=>We,$n=(e,t)=>be(e,t),jn=(e,t,n)=>ke(e,t,n);function Pn(e,t){if(e===!0){if(!t)return null;try{let n=new URL(t);return`${n.origin}${n.pathname}${n.hash}`}catch{return null}}return typeof e=="string"&&e.trim()?e.trim():null}var Ze=e=>`pivotkit:view:${e??""}`;function Fn(e,t){if(!t)return null;try{return t.getItem(Ze(e))}catch{return null}}function Mn(e,t,n){if(t)try{t.setItem(Ze(e),JSON.stringify(n))}catch{}}var _n=Ce.text,Ie=(e,t)=>{let n=e.slice(0,5).map(r=>f(t.quote,{text:r.length>60?`${r.slice(0,59)}\u2026`:r})).join(", ");return e.length>5?`${n} \u2026`:n},De=Object.freeze({newerFormat:"newer",newerView:"newer"});function zn(e,t,n={}){return $t(e,t,n)}function $t(e,t,n={}){let r=Te(e,{data:t,sourceId:n.sourceId});if(r.failed||!r.view){let s=r.failed??"notView";return{view:null,issues:r.issues,failed:Object.hasOwn(De,s)?De[s]:s,file:r}}let{view:i,issues:o}=ve(r.view,t,{limits:he(n.limits)});return o.some(s=>s.path==="version")?{view:null,issues:o,failed:"newer",file:r}:{view:i,issues:o,failed:null,file:r}}function Bn(e,t,n=[]){let r=e.file?.compatible;if(!e.view||!r||r.ok)return null;let i=[],o=e.file?.source,s=r.source==="other"&&o?.id?n.find(a=>a&&a.id===o.id):void 0;if(r.source==="other"){let a=s?.name||o?.name||o?.id;i.push(a?f(t.loadCheckSource,{source:a}):t.loadCheckOtherSource)}return r.missing.length&&i.push(f(t.loadCheckMissing,{fields:Ie(r.missing,t)})),r.changed.length&&i.push(f(t.loadCheckChanged,{fields:Ie(r.changed.map(a=>a.name),t)})),{lines:i,switchTo:s?{id:s.id,name:s.name||s.id}:null}}function Un(){try{return typeof window<"u"&&window.localStorage?window.localStorage:null}catch{return null}}function jt(e,t){try{return t?t.getItem(e):null}catch{return null}}var W=new Map;function Pt(e,t){let n=W.get(e)??new Set;n.add(t),W.set(e,n);let r=o=>{(o.key===null||o.key===e)&&t()},i=typeof window<"u"?window:null;return i?.addEventListener("storage",r),()=>{n.delete(t),n.size===0&&W.delete(e),i?.removeEventListener("storage",r)}}function Ft(e,t,n){let r=!1;if(t)try{n===null?t.removeItem(e):t.setItem(e,n),r=!0}catch{}for(let i of[...W.get(e)??[]])i();return r}var Mt=1,N=Object.freeze({dateColumns:12,dateRows:60,manyColumns:20,changesBeforeSave:5,afterDragChanges:3,pieSlices:7}),_t=Object.freeze(["percentOfGrandTotal","percentOfRowTotal","percentOfColumnTotal","percentOfParentRow","percentOfParentColumn","percentRunningTotal","percentDifferenceFromPrevious"]),F=(e,t)=>j(t,{fields:e.fields}),zt=(e,t)=>e.view.derived.find(n=>n.name.toLowerCase()===String(t).toLowerCase())?.by??"",Re=(e,t)=>e.typeOf(t)==="date"&&ft(e.view,t).toLowerCase()===String(t).toLowerCase(),M=e=>!e.failed&&!e.empty&&e.view.display==="table",G=e=>!e.failed&&e.view.display==="chart"&&e.series!==null&&e.view.values.length>0,E=e=>e.series,oe=e=>G(e)&&_[e.chartPlan.name].axis,Z=e=>["line","area"].includes(e.chartPlan.name),$e=e=>G(e)&&Ye.includes(e.chartPlan.name),je=(e,t)=>e.view[t].some(n=>e.typeOf(n)==="date"),ee=e=>oe(e)&&!e.chartPlan.swap&&Z(e)&&je(e,"cols")&&!je(e,"rows"),le=Object.freeze([{id:"filterEmpty",kind:"notice",icon:"filter",action:"removeFilters",when:e=>!e.failed&&!e.empty&&e.dataRows>0&&e.matched===0&&e.view.filters.some(t=>ht(e.view,t.field))?{}:null},{id:"top",kind:"notice",icon:"top",when:e=>{if(e.failed||e.empty)return null;for(let t of[...e.view.rows,...e.view.cols]){let n=ae(e.view,t,["top"])[0];if(n)return{field:F(e,t),count:n.count,bottom:!!n.bottom}}return null}},{id:"chartCapped",kind:"notice",when:e=>G(e)&&E(e).categoryCount>E(e).categories.length?{shown:E(e).categories.length,total:E(e).categoryCount}:null},{id:"showAs",icon:"sigma",when:e=>{if(e.failed||e.empty)return null;let t=e.view.values.find(n=>n.showAs&&_t.includes(n.showAs.type));return t?{type:t.showAs.type}:null}},{id:"colSubtotals",icon:"sigma",action:"colSubtotalsOff",when:e=>M(e)&&e.view.values.length>0&&e.view.totals.colSubtotals&&e.view.cols.length>=2&&e.colSubtotalShown?{}:null},{id:"chartOverTime",icon:"line",action:"auto",when:e=>{if(!G(e)||e.chartPlan.auto||Z(e)||e.chartPlan.name==="heatmap"||Qe({...e.view,chart:{...e.view.chart,type:"auto"}},e.encoded).name!=="line")return null;let t=[...e.view.rows,...e.view.cols].find(n=>e.typeOf(n)==="date"&&!Oe.cyclicUnits.includes(zt(e,n)));return t?{field:F(e,t)}:null}},{id:"pieSlices",icon:"chart",action:"bars",when:e=>$e(e)&&E(e).categories.length>N.pieSlices?{count:E(e).categories.length,max:N.pieSlices}:null},{id:"pieColumns",icon:"info",action:"bars",when:e=>$e(e)&&e.view.cols.length>0?{fields:e.view.cols.map(t=>F(e,t)).join(", ")}:null},{id:"chartDates",action:"swap",when:e=>ee(e)?{}:null},{id:"chartTrend",icon:"chart",action:"bars",when:e=>{if(!oe(e)||e.chartPlan.auto||ee(e)||!Z(e)||e.view.rows.length===0)return null;let t=e.view.rows[e.view.rows.length-1];return["date","number"].includes(e.typeOf(t))||e.view.sort.some(r=>r.by==="custom"&&String(r.field).toLowerCase()===String(t).toLowerCase())?null:{}}},{id:"chartSeries",action:"swap",when:e=>oe(e)&&!ee(e)&&!(e.chartPlan.auto&&Z(e))&&E(e).series.length>et?{count:E(e).series.length}:null},{id:"textValue",icon:"sigma",when:e=>{if(e.failed||e.empty)return null;let t=e.view.values.find(n=>n.field&&!n.label&&["string","boolean"].includes(e.typeOf(n.field)));return t?{field:F(e,t.field)}:null}},{id:"dateUngrouped",icon:"date",action:"groupDate",when:e=>{if(!M(e))return null;let n=(e.colLeaves>N.dateColumns?e.view.cols.find(s=>Re(e,s)):void 0)??(e.rowLeaves>N.dateRows?e.view.rows.find(s=>Re(e,s)):void 0);if(!n)return null;let r=e.encoded.column(n),i=pe(e.encoded,n),o=!i||i==="day"&&r?.dateOnly?"yearMonth":i;return{field:F(e,n),source:n,unit:o}}},{id:"manyColumns",icon:"swap",action:"swap",when:e=>M(e)&&e.view.cols.length>0&&e.colLeaves>N.manyColumns&&e.rowLeaves<e.colLeaves?{count:e.colLeaves}:null},{id:"afterDrag",icon:"undo",when:e=>!e.failed&&e.dragAt!==null&&e.changes-e.dragAt<=N.afterDragChanges?{}:null},{id:"values",icon:"sigma",when:e=>M(e)&&e.view.values.length===0?{}:null},{id:"saveTemplate",icon:"bookmark",action:"saveTemplate",when:e=>e.canSave&&!e.failed&&!e.empty&&e.changes-e.savedAt>=N.changesBeforeSave?{}:null},{id:"menus",icon:"sparkle",when:e=>!e.failed&&e.empty&&e.view.display==="table"&&e.dragAt===null?{}:null},{id:"cells",icon:"info",when:e=>M(e)&&e.tableShown&&e.view.values.length>0&&!e.drilled?{}:null}]),Je=Object.freeze(le.filter(e=>e.kind!=="notice").map(e=>e.id)),Wn=Object.freeze(le.filter(e=>e.kind==="notice").map(e=>e.id)),He="*",Ve="-explanations",Ge="-fields",xe=Object.freeze([He,Ve,Ge]);function Zn(e,t,n){return e??(t==="collapsed"||t==="open"?t==="collapsed":n.includes(Ge))}var Jn=e=>xe.includes(e);function Hn(e,t,n=Ve){return e==="on"||e==="off"?{on:e==="on",user:!1}:{on:!t.includes(n),user:!0}}var Vn=Object.freeze([{keys:["Mod","Z"],text:"undo"},{keys:["Mod","Shift","Z"],text:"redo"},{keys:["Arrow keys"],text:"move"},{keys:["Enter"],text:"open"},{keys:["Space"],text:"drag"},{keys:["Escape"],text:"close"},{keys:["Arrow keys"],text:"fields"},{keys:["Shift","F10"],text:"fieldMenu"}]);function Bt(e,t,n){let r=new Set(n.map(o=>JSON.stringify(o))),i=o=>o.every((s,a)=>!r.has(JSON.stringify(o.slice(0,a+1))));return e.some(o=>o.depth>0&&o.depth<t&&o.children.length>1&&i(o.path))}function Gn({view:e,result:t,encoded:n,failed:r,empty:i,typeOf:o,fields:s,series:a=null,tableShown:l=!1,drilled:c=!1,changes:u=0,dragAt:d=null,canSave:g=!1,savedAt:y=0,chartPlan:h={name:"bar",auto:!0,swap:!1}}){let v=(k,A)=>t&&A>0?k.reduce((b,R)=>b+(R.depth===A?1:0),0):1;return{view:e,empty:i,failed:r||!t,typeOf:o,encoded:n,fields:s,rowLeaves:t?v(t.rowNodes,t.rowFields.length):0,colLeaves:t?v(t.colNodes,t.colFields.length):0,colSubtotalShown:t?Bt(t.colNodes,t.colFields.length,e.collapsed?.cols??[]):!1,matched:t?t.rows.length:0,dataRows:n.length,series:a,tableShown:l,drilled:c,changes:u,dragAt:d,canSave:g,savedAt:y,chartPlan:h}}function xn(e,{allowed:t,dismissed:n,limit:r=Mt}){let i=new Set(n),o=t==="off"||i.has(He),s=[],a=0;for(let l of le){let c=l.kind==="notice";if(!c&&(o||a>=r||Array.isArray(t)&&!t.includes(l.id)||i.has(l.id)))continue;let u=l.when(e);u&&(s.push({id:l.id,params:u,entry:l}),a+=c?0:1)}return s}function Xn(e,t,n,r){let i=n.tips,o=Object.fromEntries(Object.entries(t).map(([s,a])=>[s,typeof a=="number"?a.toLocaleString(r):a]));if(e==="showAs"){let s=i.showAs;return Object.hasOwn(s,t.type)?s[t.type]:""}return e==="top"?f(t.bottom?i.bottom:i.top,o):e==="dateUngrouped"?f(i.dateUngrouped,{...o,unit:n.units[t.unit]??t.unit}):Object.hasOwn(i,e)&&typeof i[e]=="string"?f(i[e],o):""}function Yn(e,t,n){if(!e.action)return"";let r=Object.hasOwn(n.tipActions,e.action)?n.tipActions[e.action]:"";return f(r,{unit:n.units[t.unit]??t.unit??""})}function Kn(e){if(e==="off"||e===!1)return"off";let t=typeof e=="string"&&e.trim()!=="on"&&e.trim()!==""?e.split(","):Array.isArray(e)?e:null;return t?t.map(n=>String(n).trim()).filter(n=>Je.includes(n)):"on"}function Ut(e){return Array.isArray(e)?[...new Set(e.filter(t=>typeof t=="string"&&(xe.includes(t)||Je.includes(t))))]:[]}var ue=e=>`pivotkit:tips:${e}`;function Qn(e,t){return e?jt(ue(e),t):null}function er(e){if(!e)return[];try{return Ut(JSON.parse(e))}catch{return[]}}function tr(e,t){return e?Pt(ue(e),t):()=>{}}function nr(e,t,n){e&&t&&Ft(ue(e),t,n.length?JSON.stringify(n):null)}function rr(e){return{...e,filters:U(e).map(se)}}var te=null,Xe=null;function or(){return te??=import("./import-ui-7XVUBL2H.js").then(e=>Xe=e,e=>{throw te=null,e}),te}var ir=()=>Xe;export{_ as a,Ye as b,Le as c,Ke as d,Qe as e,Ht as f,Gt as g,O as h,xt as i,ie as j,tt as k,Xt as l,nt as m,se as n,ot as o,m as p,Yt as q,U as r,Pe as s,Kt as t,Fe as u,Qt as v,en as w,lt as x,tn as y,nn as z,ut as A,ct as B,ft as C,rn as D,on as E,Me as F,dt as G,sn as H,an as I,ln as J,ae as K,un as L,mt as M,_e as N,cn as O,fn as P,dn as Q,mn as R,hn as S,pn as T,gn as U,yn as V,pt as W,ze as X,wn as Y,Sn as Z,Be as _,V as $,gt as aa,yt as ba,I as ca,vt as da,Ot as ea,Ct as fa,On as ga,bn as ha,kn as ia,Cn as ja,At as ka,Nt as la,Ln as ma,En as na,An as oa,Nn as pa,Dn as qa,Rn as ra,$n as sa,jn as ta,Pn as ua,Fn as va,Mn as wa,zn as xa,$t as ya,Bn as za,Un as Aa,jt as Ba,Pt as Ca,Ft as Da,He as Ea,Ve as Fa,Ge as Ga,Zn as Ha,Jn as Ia,Hn as Ja,Vn as Ka,Gn as La,xn as Ma,Xn as Na,Yn as Oa,Kn as Pa,Ut as Qa,Qn as Ra,er as Sa,tr as Ta,nr as Ua,rr as Va,or as Wa,ir as Xa};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as N,i as U,y as _}from"./chunk-XR4CMFGN.js";var P=Object.freeze(["string","number","date","boolean"]),he=Object.freeze(["ENCODING","SEPARATOR","LINES_SKIPPED","COLUMN_RENAMED","COLUMNS_RENAMED_MORE","COLUMN_DROPPED","COLUMNS_ADDED","ROWS_EMPTY","TEXT_CUT","CHARACTERS_REMOVED","DATE_ORDER","VALUES_NOT_CONVERTED","JSON_PROPERTY","JSON_FLATTENED","SHEET","USED_RANGE","ERROR_CELLS"]),b=20,W=50,pe=16384,S=/[\u0000-\u0008\u000b\u000c\u000e-\u001f\u007f-\u009f\u00ad\u061c\u180e\u200b\u200e-\u200f\u202a-\u202e\u2060-\u2064\u2066-\u206f\ufeff\u{E0000}-\u{E007F}]|[\ud800-\udbff](?![\udc00-\udfff])|(?<![\ud800-\udbff])[\udc00-\udfff]/gu,K=new RegExp(S.source,"u"),B=/[\t\r\n\u2028\u2029]+/g;function ye(e,t,n,r={}){return new N("INVALID_FILE",`"${t}": ${n}`,{reason:e,file:t,...r})}function z(e,t,n,r,o){let i=u=>u.toLocaleString("en-US");return new N("LIMIT_EXCEEDED",`"${r}" has more than ${i(n)} ${o} (limits.${e}): load a smaller extract of it, or a host can raise this limit`,{limit:e,value:t,max:n,file:r})}function O(e,t,n,r,o){if(t>n)throw z(e,t,n,r,o)}function ge(e,t){let n=e&&typeof e=="object"&&typeof e.name=="string"?e.name:"",r=q(String(t?.name??n??"")).slice(0,256);return(new RegExp("\\p{Surrogate}$","u").test(r)?r.slice(0,-1):r)||"file"}async function Oe(e,t,n){if(e instanceof Uint8Array)return O("fileBytes",e.byteLength,t.fileBytes,n,"bytes"),e;if(e instanceof ArrayBuffer)return O("fileBytes",e.byteLength,t.fileBytes,n,"bytes"),new Uint8Array(e);if(typeof Blob<"u"&&e instanceof Blob)return O("fileBytes",e.size,t.fileBytes,n,"bytes"),new Uint8Array(await e.arrayBuffer());throw new N("INVALID_ARGUMENT","read(file): file must be a File, a Blob, an ArrayBuffer or a Uint8Array")}function Te(e){let t=e??{};if(typeof t!="object")throw new N("INVALID_OPTION","read(file, options): options must be an object");return{...t,limits:U(t)}}var De=()=>new Promise(e=>setTimeout(e,0));function Z(e,t){let n=r=>typeof r=="number"?r.toLocaleString("en-US"):r;switch(e){case"ENCODING":return`Read as ${t.encoding}.`;case"SEPARATOR":return`Values separated by ${t.name}.`;case"LINES_SKIPPED":return`${n(t.count)} line(s) above the column names were skipped (a title block).`;case"COLUMN_RENAMED":return t.from===""?`Column ${n(t.position)} has no name; it is named "${t.to}".`:`Column "${t.from}" is named "${t.to}".`;case"COLUMNS_RENAMED_MORE":return`${n(t.count)} more columns were renamed.`;case"COLUMN_DROPPED":return`Column ${n(t.position)} has no name and no values and was left out.`;case"COLUMNS_ADDED":return`${n(t.rows)} row(s) have more values than there are column names; the extra values are in ${n(t.count)} column(s) named "Column \u2026".`;case"ROWS_EMPTY":return`${n(t.count)} empty row(s) were left out.`;case"TEXT_CUT":return`${n(t.count)} value(s) longer than ${n(t.max)} characters were cut.`;case"CHARACTERS_REMOVED":return`Control or text direction characters were removed from ${n(t.count)} value(s).`;case"DATE_ORDER":return`Dates in "${t.column}" were read as ${t.order==="mdy"?"month/day/year":"day/month/year"}; the values fit both.`;case"VALUES_NOT_CONVERTED":return`${n(t.count)} value(s) in "${t.column}" are no ${t.type} and are empty.`;case"JSON_PROPERTY":return`The rows were read from "${t.property}".`;case"JSON_FLATTENED":return`Nested values became columns named with a dot ("${t.example}").`;case"SHEET":return Number(t.count)>1?`Read sheet "${t.sheet}" of ${n(t.count)} sheets.`:`Read sheet "${t.sheet}".`;case"USED_RANGE":return`The sheet's used range reaches row ${n(t.usedRow)}; values end at row ${n(t.lastRow)}, the empty rows below were skipped.`;case"ERROR_CELLS":return`${n(t.count)} cell(s) hold an Excel error (such as #N/A) and are empty.`;default:return e}}function y(e,t={}){let n={};for(let[r,o]of Object.entries(t))n[r]=typeof o=="string"?o.replace(S,"").slice(0,256):o;return{code:e,params:n,message:Z(e,n)}}function q(e){return e.replace(S,"").replace(B," ").trim()}var Q=/^[+-]?(?:\d+(?:\.\d+)?|\.\d+)(?:[eE][+-]?\d+)?$/,v=/^[+-]?(?:\d{1,3}(?:\.\d{3})+|\d+)(?:,\d+)?$/,ee=/^[+-]?0\d/,te=15,k=/^(\d{1,2})\.(\d{1,2})\.(\d{4})(?:[ T,]+(\d{1,2}):(\d{2})(?::(\d{2}))?)?$/,F=/^(\d{1,2})\/(\d{1,2})\/(\d{4})(?:[ T,]+(\d{1,2}):(\d{2})(?::(\d{2}))?)?$/,ne=new Set(["true","wahr"]),re=new Set(["false","falsch"]),R=e=>String(e).padStart(2,"0");function L(e,t,n,r,o,i){if(t<1||t>12||n<1||r>23||o>59||i>59)return null;let u=new Date(Date.UTC(2e3,t-1,n));if(u.setUTCFullYear(e),u.getUTCDate()!==n)return null;let s=`${String(e).padStart(4,"0")}-${R(t)}-${R(n)}`;return r===0&&o===0&&i===0?s:`${s}T${R(r)}:${R(o)}:${R(i)}`}function I(e){return[+e[1],+e[2],+e[3],e[4]===void 0?0:+e[4],e[5]===void 0?0:+e[5],e[6]===void 0?0:+e[6]]}function M(e,t){if(e.length>40)return null;if(_(e)!==null)return e;let n=k.exec(e);if(n){let[r,o,i,u,s,l]=I(n);return L(i,o,r,u,s,l)}if(n=F.exec(e),n){let[r,o,i,u,s,l]=I(n);return t==="mdy"?L(i,r,o,u,s,l):L(i,o,r,u,s,l)}return null}function oe(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r>=48&&r<=57&&t++}return t}function A(e,t){if(e.length>40||!(t===","?v:Q).test(e))return null;let n=Number(t===","?e.replaceAll(".","").replace(",","."):e);return Number.isFinite(n)?n:null}function ue(e){return ee.test(e)?!0:/^[+-]?\d+$/.test(e)&&oe(e)>te}function H(e){let t=e.toLowerCase();return ne.has(t)?!0:re.has(t)?!1:null}var j=864e5,se=Date.UTC(1899,11,30);function w(e){let t=e.getTime();if(!Number.isFinite(t)||Math.abs(t)>864e13)return null;let n=Math.round(t/1e3)*1e3;Math.abs(t-n)<=2&&(t=n);let r=new Date(t).toISOString();return t%j===0?r.slice(0,10):t%1e3===0?r.slice(0,19):r.slice(0,23)}var le={string(e){return typeof e=="string"?e:e instanceof Date?w(e)??void 0:String(e)},number(e,t){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(typeof e=="string")return A(e,t.decimal)??A(e,t.decimal===","?".":",")??void 0},date(e,t){if(e instanceof Date)return w(e)??void 0;if(typeof e=="string")return M(e,t.dateOrder)??void 0;if(typeof e=="number"&&t.serialDates&&e>0&&e<2958466)return w(new Date(Math.round((se+e*j)/1e3)*1e3))??void 0},boolean(e){if(typeof e=="boolean")return e;if(typeof e=="number")return e===1?!0:e===0?!1:void 0;if(typeof e=="string"){let t=H(e);if(t!==null)return t;let n=e.toLowerCase();if(n==="yes"||n==="1")return!0;if(n==="no"||n==="0")return!1}}};function ie(e,t,n){if(t==="string"&&e.every(u=>u===null||typeof u=="string"))return{values:e,failed:0};let r=le[t],o=new Array(e.length),i=0;for(let u=0;u<e.length;u++){let s=e[u];if(s===null){o[u]=null;continue}let l=r(s,n);l===void 0?(o[u]=null,i++):o[u]=l}return{values:o,failed:i}}function X(e,t){let n=0,r=0,o=0,i=0;for(let s of e)s!==null&&(typeof s=="number"?n++:typeof s=="boolean"?r++:s instanceof Date?o++:i++);let u=n+r+o+i;return u===0?{type:"string"}:i===0?n===u?{type:"number"}:r===u?{type:"boolean"}:o===u?{type:"date"}:{type:"string"}:i!==u?n===0&&r===0&&e.every(s=>s===null||s instanceof Date||typeof s=="string"&&_(s)!==null)?{type:"date"}:{type:"string"}:t.textNumbers===!1?{type:e.every(s=>s===null||_(s)!==null)?"date":"string"}:ae(e,t)}function ae(e,t){let n=!0,r=!0,o=!0,i=!0,u=!1,s=!1,l=!0,c=!0;for(let f of e)if(f!==null){if(n&&H(f)===null&&(n=!1),r&&_(f)===null&&(r=!1),o&&(!k.test(f)||M(f,"dmy")===null)&&(o=!1),i){let h=f.length<=40?F.exec(f):null;h?(+h[1]>12&&(u=!0),+h[2]>12&&(s=!0)):i=!1}if((l||c)&&(ue(f)?(l=!1,c=!1):(l&&A(f,".")===null&&(l=!1),c&&A(f,",")===null&&(c=!1))),!n&&!r&&!o&&!i&&!l&&!c)return{type:"string"}}if(n)return{type:"boolean"};if(r||o)return{type:"date"};if(i&&!(u&&s)){let f=u?"dmy":s?"mdy":t.dateOrder;if(e.every(p=>p===null||M(p,f)!==null))return{type:"date",dateOrder:f,ambiguousOrder:!u&&!s}}return l&&c?{type:"number",decimal:t.decimal}:l?{type:"number",decimal:"."}:c?{type:"number",decimal:","}:{type:"string"}}function $(e,t,n){if(e==null)return null;switch(typeof e){case"string":return V(e,t,n);case"number":return Number.isFinite(e)?e:null;case"boolean":return e;case"bigint":return Number.isSafeInteger(Number(e))?Number(e):String(e);case"object":if(e instanceof Date)return Number.isNaN(e.getTime())?null:e;try{return V(JSON.stringify(e)??"",t,n)}catch{return null}default:return null}}function V(e,t,n){let r=e;return K.test(r)&&(r=r.replace(S,""),n.removed++),r=r.replace(B," ").trim(),r.length>t&&(r=r.slice(0,t),n.cut++),r===""?null:r}function Ne(e){let{file:t,limits:n}=e,r={decimal:e.hints?.decimal??".",dateOrder:e.hints?.dateOrder??(!e.locale||/^en-US$/i.test(e.locale)?"mdy":"dmy"),...e.hints?.serialDates?{serialDates:!0}:{},...e.hints?.textNumbers===!1?{textNumbers:!1}:{}},o=[],i={removed:0,cut:0,empty:0,extraRows:0},u=[],s=null,l=0,c=0,f=[],h=()=>{O("columns",u.length+1,n.columns,t,"columns"),u.push(new Array(c).fill(null))},p=a=>{let d=0,E=new Array(a.length);for(let m=0;m<a.length;m++){let C=$(a[m],n.textLength,i);E[m]=C,C!==null&&(d=m+1)}if(d===0){i.empty++;return}for(d>l&&i.extraRows++,d>u.length&&(O("columns",d,n.columns,t,"columns"),O("importCells",(c+1)*d,n.importCells,t,"values (rows x columns)"));u.length<d;)h();c++,O("rows",c,n.rows,t,"rows"),O("importCells",c*u.length,n.importCells,t,"values (rows x columns)");for(let m=0;m<u.length;m++)u[m].push(m<d?E[m]:null)},T=a=>{s=a.map(d=>{let E=$(d,n.name,{removed:0,cut:0});return E===null?null:E instanceof Date?w(E):String(E)}),l=s.length,O("columns",l,n.columns,t,"columns");for(let d=0;d<l;d++)u.push([])},g=()=>{let a=f??[];if(f=null,s===null){let d=0,E=a.map(D=>{let x=0;for(let J of D)$(J,n.textLength,{removed:0,cut:0})!==null&&x++;return x});for(let D of E)d=Math.max(d,D);let m=E.findIndex(D=>D>0&&D*2>=d);m<0&&(m=a.length),E.slice(0,m).filter(D=>D>0).length>0&&o.push(y("LINES_SKIPPED",{count:m})),T(m<a.length?a[m]:[]),a.splice(0,m+1)}for(let d of a)p(d)};return{header(a){T(a)},row(a){if(f!==null&&s===null){f.push(a),f.length>=W&&g();return}f!==null&&g(),p(a)},get rowCount(){return c+(f?.length??0)},note(a,d){o.push(y(a,d))},finish(a){return f!==null&&g(),ce({header:s??[],columns:u,rowCount:c,notes:o,counts:i,hints:r,limits:n,types:a})}}}function fe(e,t,n){let r=[],o=new Set,i=0,u=(l,c,f)=>{i++,i<=b&&n.push(y("COLUMN_RENAMED",{position:l,from:c,to:f}))},s=l=>{let c=l;for(let f=2;o.has(c.toLowerCase());f++)c=`${l} (${f})`;return c};for(let l=0;l<t;l++){let c=l<e.length?e[l]:null,f;c===null||c===""?(f=s(`Column ${l+1}`),l<e.length&&u(l+1,"",f)):(f=s(c),f!==c&&u(l+1,c,f)),o.add(f.toLowerCase()),r.push(f)}return i>b&&n.push(y("COLUMNS_RENAMED_MORE",{count:i-b})),r}function ce({header:e,columns:t,rowCount:n,notes:r,counts:o,hints:i,limits:u,types:s}){let l=[];for(let a=0;a<t.length;a++){if(!(a<e.length&&e[a]!==null&&e[a]!=="")&&t[a].every(E=>E===null)){a<e.length&&r.push(y("COLUMN_DROPPED",{position:a+1}));continue}l.push(a)}let c=l.map(a=>a<e.length?e[a]:null),f=fe(c,l.length,r),h=l.map(a=>t[a]),p=l.filter(a=>a>=e.length).length;o.extraRows>0&&p>0&&r.push(y("COLUMNS_ADDED",{rows:o.extraRows,count:p})),o.empty>0&&r.push(y("ROWS_EMPTY",{count:o.empty})),o.cut>0&&r.push(y("TEXT_CUT",{count:o.cut,max:u.textLength})),o.removed>0&&r.push(y("CHARACTERS_REMOVED",{count:o.removed}));let T={columns:f,types:[],data:[],raw:h,detected:[],rowCount:n,notes:r,hints:i},g=h.map(a=>X(a,i));return T.detected=g.map(a=>a.type),g.forEach((a,d)=>{a.ambiguousOrder&&r.push(y("DATE_ORDER",{column:f[d],order:a.dateOrder}))}),Y(T,s,g)}function Y(e,t,n){let r=G(e.columns,t),o=e.notes.filter(s=>s.code!=="VALUES_NOT_CONVERTED"),i=[],u=[];for(let s=0;s<e.columns.length;s++){let l=n?.[s],c=r[s]??e.detected[s],f=l&&l.type===c?{...e.hints,...l.decimal?{decimal:l.decimal}:{},...l.dateOrder?{dateOrder:l.dateOrder}:{}}:e.hints;if(e.types[s]===c&&e.data[s]!==void 0){i.push(c),u.push(e.data[s]);let T=e.notes.find(g=>g.code==="VALUES_NOT_CONVERTED"&&g.params.column===e.columns[s]);T&&o.push(T);continue}let{values:h,failed:p}=ie(e.raw[s],c,f);p>0&&o.push(y("VALUES_NOT_CONVERTED",{column:e.columns[s],type:c,count:p})),i.push(c),u.push(h)}return{...e,types:i,data:u,notes:o}}function G(e,t){let n=new Array(e.length).fill(void 0);if(Array.isArray(t))for(let r=0;r<e.length;r++)P.includes(t[r])&&(n[r]=t[r]);else if(t&&typeof t=="object"){let r=new Map;for(let o of Object.keys(t))P.includes(t[o])&&r.set(o.toLowerCase(),t[o]);e.forEach((o,i)=>{n[i]=r.get(o.toLowerCase())})}return n}function _e(e,t){if(!e||!Array.isArray(e.columns)||!Array.isArray(e.raw)||e.raw.length!==e.columns.length)throw new N("INVALID_ARGUMENT","retype(table, types): table must be a table read by a reader, with its raw values");let n=G(e.columns,t),r=e.columns.map((i,u)=>n[u]??e.types[u]??e.detected[u]),o=e.raw.map((i,u)=>r[u]===e.detected[u]?X(i,e.hints):void 0);return Y(e,r,o)}export{P as a,pe as b,ye as c,z as d,O as e,ge as f,Oe as g,Te as h,De as i,Ne as j,_e as k};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{D as ce,H as ie,K as ue,N as fe,R as _,U as de,b as F,da as me,i as ae,j as M,k as Z,l as B,m as G,n as K}from"./chunk-4PHDW2LB.js";import{A as re,C as le,D as se,b as O,c as C,e as q,i as T,j as Q,m as R,s as ee,t as te,u as ne,w as j,z as oe}from"./chunk-XR4CMFGN.js";var V=Object.freeze(["string","number","boolean","date"]),Se=/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?$/i,Ie=100;function pe(e){let t=e.trim();return t.length<=Ie&&Se.test(t)}var Re=100,ge=e=>e==null||e===""||typeof e=="function"||typeof e=="symbol";function Ee(e,t){if(ge(e))return null;switch(typeof e){case"number":return Number.isFinite(e)?"number":null;case"boolean":return"boolean";case"string":return oe(e)?"date":t&&pe(e)?"number":"string";case"bigint":return"number";default:return e instanceof Date?Number.isNaN(e.getTime())?null:"date":"string"}}function he(e,t){let n=null;for(let r=0;r<e.length;r++){let o=Ee(e[r],t);if(o==="string")return"string";if(!(o===null||o===n))if(n===null)n=o;else return"string"}return n??"null"}function $e(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 Te(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"&&pe(e)){let t=Number(e.trim());return Number.isFinite(t)?t:NaN}return NaN}function Pe(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 Ze={number:e=>{let t=Te(e);return Number.isNaN(t)?null:t},boolean:Pe,date:(e,t)=>{let n=se(e,t);return Number.isNaN(n)?null:n},string:e=>{let t=$e(e);return t===""?null:t},null:()=>null};function je(e,t,n,r){let o=t.length,c=new Int32Array(o),s=[],l=new Map,a=n==="number"||n==="boolean"||n==="date"?new Float64Array(o):null,i=Ze[n],d=!0;for(let m=0;m<o;m++){let h=t[m],p=ge(h)?null:i(h,r);if(p===null){c[m]=-1,a&&(a[m]=NaN);continue}n==="date"&&p%Q!==0&&(d=!1);let g=l.get(p);g===void 0&&(g=s.length,s.push(p),l.set(p,g)),c[m]=g,a&&(a[m]=typeof p=="boolean"?p?1:0:p)}let u=e.toLowerCase(),f={name:e,key:u,id:`column:${u}`,type:n,codes:c,dict:s,values:a};return n==="date"&&(f.dateOnly=d),f}function Fe(e){let t=e;return t!==null&&typeof t=="object"&&!Array.isArray(t)&&Array.isArray(t.columns)&&Array.isArray(t.data)}var Ke=e=>Array.isArray(e)||ArrayBuffer.isView(e)&&!(e instanceof DataView);function st(e,t){t=R(t,"encode");let n=Fe(e);O(n||Array.isArray(e),"encode(rows): rows must be an array of objects or columnar data { columns, data }");let r=T(t),o=re(t.timeZone),c=le(o),s=t.inferNumbers===!0,l=Array.isArray(t.columns)?new Set(t.columns.filter(g=>typeof g=="string").map(g=>g.toLowerCase())):null,a=[],i=(g,b)=>{a.length<Re&&a.push({path:g,message:b})},{n:d,found:u}=n?Ue(e,l,r,i):_e(e,l,r,i),f=new Map;if(t.types&&typeof t.types=="object")for(let g of Object.keys(t.types)){let b=t.types[g];V.includes(b)&&f.set(g.toLowerCase(),b)}let m=l?[...l].filter(g=>u.has(g)):[...u.keys()],h=new Map,p=m.map(g=>{let{name:b,raw:v,type:x}=u.get(g),y=he(v,s),A=y==="string"&&!s?he(v,!0):y;return h.set(g,A),je(b,v,f.get(g)??x??y,c)});return De(d,p,{timeZone:o,issues:a,detected:h,cacheEntries:r.cacheEntries})}function _e(e,t,n,r){C("rows",e.length,n.rows,"rows");let o=e.length,c=new Map;for(let s=0;s<o;s++){let l=e[s];if(l===null||typeof l!="object")continue;let a=new Set;for(let i of Object.keys(l)){let d=i.toLowerCase(),u=c.get(d);if(u===void 0){if(t&&!t.has(d))continue;u={name:i,raw:new Array(o).fill(null),spellings:new Set([i])},c.set(d,u)}else u.spellings.has(i)||(u.spellings.add(i),r(u.name,`"${i}" and "${u.name}" are one column: names match case-insensitively`));a.has(d)&&r(u.name,`row ${s} has "${i}" next to another spelling of it; the later value is used`),a.add(d),u.raw[s]=l[i]}}return{n:o,found:c}}function Ue(e,t,n,r){let{columns:o,data:c,types:s}=e;O(c.length===o.length,`encode(data): ${o.length} column names but ${c.length} arrays in data`),O(s==null||Array.isArray(s),"encode(data): types must be an array, one entry per column");let l=c.length===0?0:c[0]?.length;for(let i=0;i<c.length;i++)O(Ke(c[i]),`encode(data): data[${i}] must be an array of the values of column ${i}`),O(c[i].length===l,`encode(data): every column must have the same length; data[0] has ${l} values, data[${i}] ${c[i].length}`);C("rows",l,n.rows,"rows");let a=new Map;for(let i=0;i<o.length;i++){let d=o[i];O(typeof d=="string",`encode(data): columns[${i}] must be a string`);let u=d.toLowerCase();if(t&&!t.has(u))continue;let f=a.get(u);if(f!==void 0){r(f.name,`"${d}" and "${f.name}" are one column: names match case-insensitively; the later column is left out`);continue}let m=s?s[i]:void 0;O(m==null||V.includes(m),`encode(data): types[${i}] must be one of ${V.join(", ")}`),a.set(u,{name:d,raw:c[i],type:m??void 0})}return{n:l,found:a}}function De(e,t,n){let r=new Map(t.map(c=>[c.key,c])),o={length:e,columns:t,schema:{fields:t.map(c=>({name:c.name,type:c.type,detected:n.detected.get(c.key)??c.type}))},column:c=>typeof c=="string"?r.get(c.toLowerCase()):void 0,timeZone:n.timeZone,issues:n.issues};return Object.defineProperty(o,"cache",{value:ne(n.cacheEntries),enumerable:!1}),o}function ye(e){let t=e;return t!==null&&typeof t=="object"&&Array.isArray(t.columns)&&typeof t.column=="function"&&"cache"in t}function z(e,t){let n=new Int32Array(t.length),r=[];if(e.length===0)return r.push([]),{groupOf:n,paths:r};let o=1;for(let d of e)o*=d.dict.length+1;let c=o<2**52,s=new Map,l=e.length,a=e.map(d=>d.codes),i=e.map(d=>d.dict.length+1);for(let d=0;d<t.length;d++){let u=t[d],f;if(c){f=0;for(let h=0;h<l;h++)f=f*i[h]+a[h][u]+1}else{f="";for(let h=0;h<l;h++)f+=a[h][u]+","}let m=s.get(f);if(m===void 0){m=r.length;let h=new Array(l);for(let p=0;p<l;p++)h[p]=a[p][u];r.push(h),s.set(f,m)}n[d]=m}return{groupOf:n,paths:r}}function we(e,t,n,r,o){return{id:e,depth:t,code:n,key:r,path:o?[...o.path,r]:[],parent:o,children:[],index:0}}function W(e,t,n={max:1/0,used:0}){let{groupOf:r,paths:o}=z(e,t);C("groups",n.used+o.length+(e.length>0?1:0),n.max,"groups");let c=we(0,0,-2,null,null),s=[c],l=Math.max(1,...e.map(f=>f.dict.length+1)),a=(Number.isFinite(n.max)?n.max:t.length*e.length+1)*l<2**53,i=new Map,d=new Array(o.length);o.forEach((f,m)=>{let h=c;for(let p=0;p<f.length;p++){let g=f[p],b=a?h.id*l+g+1:`${h.id},${g}`,v=i.get(b);if(v===void 0){n.used+s.length>=n.max&&C("groups",n.used+s.length+1,n.max,"groups");let x=g===-1?null:e[p].dict[g];v=we(s.length,p+1,g,x,h),s.push(v),i.set(b,v),h.children.push(v)}h=v}d[m]=h});let u=new Int32Array(t.length);for(let f=0;f<t.length;f++)u[f]=d[r[f]].id;return{root:c,nodes:s,leafOf:u,leafCount:o.length}}var He=(e,t)=>e===t||e===null&&t===null||typeof e=="number"&&typeof t=="number"&&Number.isNaN(e)&&Number.isNaN(t);function be(e,t,n){let r=t==="cols"?e.colRoot:e.rowRoot;for(let o of n||[])if(r=r.children.find(c=>He(c.key,o)),!r)return null;return r}function ut(e,t){t=R(t,"cellRows");let{row:n=[],col:r=[]}=t,o=Array.isArray(n)?be(e,"rows",n):n,c=Array.isArray(r)?be(e,"cols",r):r;if(!o||!c)return new Int32Array(0);let s=(a,i,d)=>{let u=a[i];for(;u&&u.depth>d.depth;)u=u.parent;return u===d},l=[];for(let a=0;a<e.rows.length;a++)s(e.rowNodes,e.rowLeafOf[a],o)&&s(e.colNodes,e.colLeafOf[a],c)&&l.push(e.rows[a]);return Int32Array.from(l)}var X=e=>`${e.agg}\0${e.field??""}`;function Be(e,t){let n=new Map(t.derived.map(o=>[o.name.toLowerCase(),o])),r=new Map;return o=>{if(o==null)return null;let c=o.toLowerCase();if(!r.has(c)){let s=n.get(c);r.set(c,s?ae(e,s):e.column(o)??null)}return r.get(c)}}function ve(e,t,n,r,o){let c=n?G(n,o,e.cache):null;return F(t.agg).create(n,r,c,s=>B(n,n.dict[s],o))}function Ge(e,t,n,r){let o=n.nodes.length,c=(t.depth+1)*(n.depth+1);C("pivotCells",Math.max(t.leafCount,n.leafCount)*c,r,"pivot cells");let s=m=>{let h=[];for(let p=m;p;p=p.parent)h.push(p.id);return h},l=new Map,a=new Map,i=new Int32Array(e.length),d=new Map,u=[],f=new Map;for(let m=0;m<e.length;m++){let h=t.leafOf[m],p=n.leafOf[m],g=h*o+p,b=d.get(g);if(b===void 0){b=d.size,d.set(g,b),C("pivotCells",u.length+c,r,"pivot cells"),l.has(h)||l.set(h,s(t.nodes[h])),a.has(p)||a.set(p,s(n.nodes[p]));for(let v of l.get(h))for(let x of a.get(p)){let y=v*o+x,A=f.get(y);A===void 0&&(A=f.size,f.set(y,A)),u.push(A)}}i[m]=b}return e.length===0&&f.set(0,0),{cellIndex:f,pairOf:i,cells:u,perPair:c}}function Ve(e,t,n,r,o,c,s,l){let a=s.nodes.length,{cellIndex:i,pairOf:d,cells:u,perPair:f}=Ge(o,c,s,l),m=i.size,h=t.map(x=>ve(e,x,x.field?n(x.field):null,m,r));for(let x of h)for(let y=0;y<o.length;y++){let A=d[y]*f,L=o[y];for(let N=A;N<A+f;N++)x.add(u[N],L)}let p=Symbol("unset"),g=t.map(()=>new Array(m).fill(p));return{value:(x,y,A)=>{let L=i.get(x.id*a+y.id);if(L===void 0)return null;let N=g[A][L];return N===p&&(N=g[A][L]=h[A].get(L)),N},has:(x,y)=>o.length>0&&i.has(x.id*a+y.id)}}function Ae(e,t,n,r,o,c){let s=l=>{if(l.children.length===0)return;let a=r.get(t[l.depth])??{by:"label",order:"asc"},i=a.order==="desc"?-1:1,d=c(n[l.depth]),u=m=>m.code<0?1/0:d[m.code],f=(m,h)=>{let p=u(m),g=u(h);return p===g?0:p===1/0||g===1/0?p===1/0?1:-1:(p-g)*i};if(a.by==="custom"){let m=new Map(a.items.map((p,g)=>[p,g])),h=p=>m.has(p.key)?m.get(p.key):1/0;l.children.sort((p,g)=>{let b=h(p),v=h(g);return b===1/0&&v===1/0?f(p,g):b===v?0:b===1/0?1:v===1/0?-1:(b-v)*i})}else if(a.by==="value"){let m=new Map(l.children.map(h=>[h,o(h,a.value)]));l.children.sort((h,p)=>{let g=m.get(h),b=m.get(p);return g===null||b===null?g===b?f(h,p):g===null?1:-1:(g-b)*i||f(h,p)})}else l.children.sort(f);l.children.forEach((m,h)=>{m.index=h,s(m)})};s(e.root)}function kt(e,t,n){n=R(n,"computePivot"),O(ye(e),"computePivot(data, view): data must come from encode()");let r=T(n),{view:o,issues:c}=me(t,e,n),s=j(o.formatting.locale,n.locale);o.formatting.timeZone&&o.formatting.timeZone!==e.timeZone&&c.push(de("formatting.timeZone",`the view was made for ${o.formatting.timeZone}, the data is encoded in ${e.timeZone}; pass timeZone to encode()`,"timeZoneMismatch",{value:o.formatting.timeZone,zone:e.timeZone}));let l=Be(e,o),a=w=>G(w,s,e.cache),i={view:o,locale:s,today:ce(n.now,e.timeZone),columnOf:l,groupBy:z,aggregateGroups:(w,k,S,I)=>{let P=ve(e,w,w.field?l(w.field):null,I,s);for(let E=0;E<k.length;E++)P.add(S[E],k[E]);return Array.from({length:I},(E,H)=>P.get(H))}},d=new Int32Array(e.length);for(let w=0;w<d.length;w++)d[w]=w;let u=o.filters.map(()=>null);d=ie(i,d,u);let f=new Map,m=[],h=w=>{let k=X(w);return f.has(k)||(f.set(k,m.length),m.push({field:w.field,agg:w.agg})),f.get(k)},p=o.values.map(h);for(let w of o.sort)w.by==="value"&&h(w.value);let g=m.reduce((w,k)=>w+(F(k.agg).keepsValues?q:1),0);C("work",d.length*(o.rows.length+1)*(o.cols.length+1)*g,r.work,"cell updates");let b=o.rows.map(l),v=o.cols.map(l),x={...W(b,d,{max:r.groups,used:0}),depth:b.length},y={...W(v,d,{max:r.groups,used:x.nodes.length}),depth:v.length},{value:A,has:L}=Ve(e,m,l,s,d,x,y,r.pivotCells),N=w=>typeof w=="number"?w:null,J=new Map(o.sort.map(w=>[w.field,w]));Ae(x,o.rows,b,J,(w,k)=>N(A(w,y.root,f.get(X(k)))),a),Ae(y,o.cols,v,J,(w,k)=>N(A(x.root,w,f.get(X(k)))),a);let Me=o.values.map(w=>{if(w.showAs)return"number";let k=w.field?l(w.field):null;return F(w.agg).resultType(k?k.type:"number")}),D=(w,k,S)=>A(w,k,p[S]),Le=(w,k,S)=>{let I=o.values[S],P=D(w,k,S);return I.showAs?_[I.showAs.type].compute(N(P),{rowNode:w,colNode:k,rowRoot:x.root,colRoot:y.root,raw:(E,H)=>N(D(E,H,S)),axis:I.showAs.axis}):P};return{view:o,issues:c,locale:s,timeZone:e.timeZone,encoded:e,rows:d,filters:o.filters.map((w,k)=>({field:w.field,type:w.type,kept:u[k]})),rowFields:o.rows,colFields:o.cols,rowColumns:b,colColumns:v,values:o.values,valueTypes:Me,rowRoot:x.root,colRoot:y.root,rowNodes:x.nodes,colNodes:y.nodes,rowLeafOf:x.leafOf,colLeafOf:y.leafOf,value:D,display:Le,hasRows:L,label:(w,k,S=M)=>{if(!k.parent)return S.grandTotal??M.grandTotal;let I=(w==="cols"?v:b)[k.depth-1];return B(I,k.key,s,S)}}}function xe(e){let t=e;return t!==null&&typeof t=="object"&&typeof t.display=="function"&&t.rowRoot!==void 0}function ke(e){return JSON.stringify(e)}function Y(e,t,n,r,o){let c=new Set(n.map(ke)),s=[];if(t===0)return s.push({node:e,kind:"leaf"}),s;let l=a=>{if(a.children.length===0){s.push({node:a,kind:"leaf"});return}if(c.has(ke(a.path))){s.push({node:a,kind:"collapsed"});return}a.children.forEach(l),r&&a.children.length>1&&s.push({node:a,kind:"subtotal"})};return e.children.forEach(l),(o||s.length===0)&&s.push({node:e,kind:"grand"}),s}var ze=new Set(["average","median","stdev","stdevp","var","varp"]),U=2;function We(e,t){let n=t?e.column(t):void 0;return!n||n.type!=="number"?U:e.cache.getOrSet(`decimals:${n.id}`,()=>{let r=0;for(let o of n.dict)if(typeof o=="number"&&(r=Math.max(r,te(o)),r>=U))return U;return r})}function Xe(e,t){let n=e.values[t],r=n.showAs?_[n.showAs.type].format:null;if(r==="percent")return n.format&&ue(n.format).name==="percent"?n.format:"percent:1";if(r==="integer")return"integer";if(n.format)return n.format;let o=e.valueTypes[t];if(o==="text")return"text";if(o==="date"){let c=e.encoded.column(n.field);return c&&c.dateOnly===!1?"datetime":"date"}return n.agg==="count"||n.agg==="countUnique"?"integer":`number:${ze.has(n.agg)?U:We(e.encoded,n.field)}`}function Ye(e,t=M){if(e.label)return e.label;let n;if(!e.field)n=t.countRows??M.countRows;else{let l={...M.aggregators,...t.aggregators||{}},a=Object.hasOwn(l,e.agg)?l[e.agg]:e.agg;n=K(t.valueName??M.valueName,{agg:a,field:Z(e.field,t)})}if(!e.showAs)return n;let r={...M.showAs,...t.showAs||{}},o=e.showAs.type,c=Object.hasOwn(r,o)?r[o]:o,s=e.field&&e.agg==="sum"?Z(e.field,t):n;return K(t.showAsName??M.showAsName,{showAs:c,value:s})}var $=e=>e==="grand"?2:e==="subtotal"?1:0;function Je(e,t){let n=e;for(;n&&n.depth>t;)n=n.parent;return n}function Ne(e,t,n,r,o,c){for(let s=t;s<r;s++)for(let l=n;l<o;l++){let a=e[s][l];if(!a||a.mergeKey===void 0)continue;let i=a.mergeKey,d=l+1;for(;d<o&&e[s][d]&&e[s][d].mergeKey===i;)d++;let u=s+1;for(;u<r;){let f=!0;for(let m=l;m<d;m++)if(!e[u][m]||e[u][m].mergeKey!==i){f=!1;break}if(!f)break;u++}if(d-l>1||u-s>1){a.colSpan=d-l,a.rowSpan=u-s,c.push({row:s,col:l,rowSpan:u-s,colSpan:d-l});for(let f=s;f<u;f++)for(let m=l;m<d;m++)(f!==s||m!==l)&&(e[f][m]=null)}}}function qe(e,t){let n=e.map(ee),r=n.length===3?t<=.5?0:1:0,o=n.length===3?t<=.5?t*2:(t-.5)*2:t,c=n[r],s=n[r+1];return"#"+c.map((l,a)=>Math.round(l+(s[a]-l)*o).toString(16).padStart(2,"0")).join("")}function Tt(e){let t=e;return t!==null&&typeof t=="object"&&Array.isArray(t.rows)&&Array.isArray(t.merges)&&Number.isInteger(t.columnCount)}var Oe=(e,t,n)=>({axis:e,path:t.path,collapsed:n});function Ce(e,t,{node:n,kind:r},o){let c=t==="cols"?"colHeader":"rowHeader",s=u=>t==="cols"?{colPath:u.path}:{rowPath:u.path},l=u=>e.result.label(t,u,e.labels),a=r==="grand"?0:n.depth-1;if(r!=="leaf"&&o===a){let f={text:r==="collapsed"?l(n):n.parent?K(e.labels.total,{label:l(n)}):e.labels.grandTotal,value:r==="collapsed"?n.key:null,kind:c,total:$(r),...s(n),mergeKey:`s${n.id}:${r}`};return r==="collapsed"&&(f.toggle=Oe(t,n,!0)),f}if(r!=="leaf"&&o>a)return{text:"",value:null,kind:c,total:$(r),mergeKey:`s${n.id}:${r}`};let i=Je(n,o+1),d={text:l(i),value:i.key,kind:c,total:0,...s(i),mergeKey:`n${i.id}`};return i.children.length>0&&(d.toggle=Oe(t,i,!1)),d}function Qe(e){let{view:t,k:n,h:r,width:o}=e,c=Array.from({length:r},()=>new Array(o).fill(null));for(let l=0;l<r;l++)for(let a=0;a<n;a++)l===r-1?c[l][a]={text:t.rows.length>0?Z(t.rows[a],e.labels):"",value:null,kind:"corner",total:0,field:t.rows.length>0?t.rows[a]:void 0}:a===n-1?c[l][a]={text:Z(t.cols[l],e.labels),value:null,kind:"corner",total:0,field:t.cols[l]}:c[l][a]={text:"",value:null,kind:"corner",total:0,mergeKey:"corner"};let s=t.values.length===1;return e.dataColumns.forEach(({line:l,vi:a},i)=>{let d=n+i;for(let f=0;f<t.cols.length;f++)c[f][d]=Ce(e,"cols",l,f);let u={text:a>=0?e.names[a]:"",value:null,kind:"colHeader",total:s?0:$(l.kind),valueIndex:a>=0?a:void 0,colPath:s?[]:l.node.path};s&&(u.mergeKey="value"),c[r-1][d]=u}),c}function et(e,t){let{result:n,view:r,k:o,width:c}=e;return t.map(s=>{let{node:l,kind:a}=s,i=new Array(c).fill(null),d=r.values.length>0;for(let u=0;u<o;u++)i[u]=r.rows.length===0?{text:d?e.labels.grandTotal:"",value:null,kind:"rowHeader",total:d?2:0,rowPath:[]}:Ce(e,"rows",s,u);return e.dataColumns.forEach(({line:u,vi:f},m)=>{let h=Math.max($(a),$(u.kind)),p=n.hasRows(l,u.node);if(f<0){i[o+m]={text:"",value:null,kind:"value",total:h,rowPath:l.path,colPath:u.node.path,hasRows:p};return}let g=n.display(l,u.node,f);i[o+m]={text:g===null?"":e.formatters[f](g),value:g,kind:"value",total:h,valueType:r.values[f].showAs?"number":n.valueTypes[f],format:e.formats[f],rowPath:l.path,colPath:u.node.path,valueIndex:f,hasRows:p}}),i})}function tt(e,t){e.view.values.forEach((n,r)=>{if(!n.conditional)return;let o=[];for(let l of t)for(let a=e.k;a<e.width;a++){let i=l[a];i&&i.valueIndex===r&&i.total===0&&typeof i.value=="number"&&o.push(i)}if(o.length===0)return;let c=1/0,s=-1/0;for(let l of o)c=Math.min(c,l.value),s=Math.max(s,l.value);for(let l of o)if(n.conditional.type==="colorScale"){let a=s===c?.5:(l.value-c)/(s-c),i=n.conditional.colors;l.style={scale:a,color:i.length>=2?qe(i,a):null}}else{let a=Math.min(0,c),i=Math.max(0,s);l.style={bar:i===a?0:(l.value-a)/(i-a),color:n.conditional.color}}})}function Pt(e,t){t=R(t,"toGrid"),O(xe(e),"toGrid(result): result must come from computePivot()");let n=T(t),r=e.view,o=j(r.formatting.locale,t.locale??e.locale),c={...M,...t.labels||{}},s=r.values.length>0?r.totals:{grandTotalRow:!1,grandTotalColumn:!1,rowSubtotals:!1,colSubtotals:!1},l=Y(e.rowRoot,r.rows.length,r.collapsed.rows,s.rowSubtotals,s.grandTotalRow),a=Y(e.colRoot,r.cols.length,r.collapsed.cols,s.colSubtotals,s.grandTotalColumn),i=r.values.length>0?a.flatMap(y=>r.values.map((A,L)=>({line:y,vi:L}))):r.cols.length>0?a.map(y=>({line:y,vi:-1})):[],d=Math.max(1,r.rows.length),u=r.cols.length+1,f=d+i.length;C("cells",(u+l.length)*f,n.cells,"grid cells");let m=r.values.map((y,A)=>Xe(e,A)),h={result:e,view:r,labels:c,dataColumns:i,k:d,h:u,width:f,formats:m,formatters:m.map(y=>fe(y,o)),names:r.values.map(y=>Ye(y,c))},p=Qe(h),g=et(h,l),b=[];Ne(p,0,0,u,f,b);let v=[];Ne(g,0,0,g.length,d,v),b.push(...v.map(y=>({...y,row:y.row+u}))),tt(h,g);let x=p.concat(g);for(let y of x)for(let A of y)A&&delete A.mergeKey;return{rows:x,headerRows:u,rowHeaderColumns:d,columnCount:f,merges:b,dataColumns:i.map(({line:y,vi:A})=>({colPath:y.node.path,valueIndex:A,total:$(y.kind)})),bodyRows:l.map(({node:y,kind:A})=>({rowPath:y.path,total:$(A),collapsed:A==="collapsed"})),formats:m,showAs:r.values.map(y=>y.showAs?y.showAs.type:null),valueNames:h.names,conditional:r.values.map(y=>y.conditional),locale:o,timeZone:e.timeZone}}export{V as a,st as b,ye as c,be as d,ut as e,kt as f,xe as g,Y as h,Xe as i,Ye as j,qe as k,Tt as l,Pt as m};
|
|
@@ -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 M(t,e){if(!t)throw new i("INVALID_ARGUMENT",e)}function C(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 m=Object.freeze({json:5e6,name:256,axisFields:8,values:16,filters:128,items:1e5,derived:64,sort:64,collapsed:1e4,topCount:1e6,textValue:1e3,srcParams:16,srcParamLength:256,rows:1e6,groups:5e5,pivotCells:2e6,work:1e8,cells:2e6,cacheEntries:16,fileBytes:104857600,columns:1e3,importCells:1e7,textLength:32767,archiveEntries:1e4,unpackedBytes:524288e3}),p=Object.freeze({groups:2**27}),j=10,b=Object.freeze({filters:50,json:1e6}),$=1e4,z=Object.freeze({perCode:100,total:1e3});function F(t){let e=w({limits:t??void 0}),n={...t??{}};for(let[r,o]of Object.entries(b))n[r]=Math.min(e[r],o);return n}function w(t){let e=t&&t.limits;if(e==null)return m;if(typeof e!="object"||Array.isArray(e))throw new i("INVALID_OPTION","options.limits must be an object");let n={...m};for(let r of Object.keys(e)){let o=e[r];if(!Object.hasOwn(m,r))throw new i("INVALID_OPTION",`unknown limit "${r}"`);if(!Number.isInteger(o)||o<1)throw new i("INVALID_OPTION",`limits.${r} must be a whole number of 1 or more`);if(Object.hasOwn(p,r)&&o>p[r])throw new i("INVALID_OPTION",`limits.${r} must be at most ${p[r]}`);n[r]=o}return Object.freeze(n)}var a=864e5,y="en-US",G=(t,e=2)=>String(t).padStart(e,"0");function J(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 D=t=>t!==null&&typeof t=="object"&&!Array.isArray(t),R=(t,e)=>D(t)&&Object.hasOwn(t,e)?t[e]:void 0,Y=t=>typeof t=="number"&&Number.isFinite(t)?t:null;function B(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 E(t){return t.length===4?t.slice(1).split("").map(e=>e+e).join(""):t.slice(1)}function H(t){let e=E(t);return[0,2,4].map(n=>parseInt(e.slice(n,n+2),16))}function X(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 K(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 S(t){if(typeof t!="string"||t.length===0||t.length>64)return null;try{return Intl.getCanonicalLocales(t)[0]??null}catch{return null}}function q(t,e){if(t)return t;if(e==null)return y;let n=S(e);if(!n)throw new i("INVALID_OPTION",`options.locale ${JSON.stringify(e)} is not a locale`);return n}var x="UTC",O=864e13,Z=t=>typeof t=="number"&&Math.abs(t)<=O,A=/^(\d{4})-(\d{2})-(\d{2})(?:[T ](\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{1,9}))?)?(Z|[+-]\d{2}(?::?\d{2})?)?)?$/;function g(t,e,n,r=0,o=0,s=0,c=0){if(t>=100)return Date.UTC(t,e-1,n,r,o,s,c);let u=new Date(Date.UTC(2e3,e-1,n,r,o,s,c));return u.setUTCFullYear(t),u.getTime()}function T(t){let e=A.exec(t.trim());if(!e)return null;let n=e[8],r=+e[1],o=+e[2],s=+e[3],c=e[4]===void 0?0:+e[4],u=e[5]===void 0?0:+e[5],f=e[6]===void 0?0:+e[6],d=e[7];if(o<1||o>12||s<1||c>23||u>59||f>59)return null;let _=g(r,o,s,c,u,f,d?Math.round(+`0.${d}`*1e3):0);if(new Date(_).getUTCDate()!==s)return null;let l=null;if(n)if(n==="Z")l=0;else{let h=n.slice(1).replace(":",""),N=Number(h.slice(0,2)),I=Number(h.slice(2)||0);if(N>23||I>59)return null;l=(n[0]==="-"?-1:1)*(N*60+I)}return{ms:_,offsetMinutes:l}}function tt(t){return T(t)!==null}function et(t){if(t==null)return x;if(t==="local")return new Intl.DateTimeFormat().resolvedOptions().timeZone??x;let e=L(t);if(!e)throw new i("INVALID_OPTION",`time zone ${JSON.stringify(t)} is not "UTC", "local" or an IANA name`);return e}function L(t){if(typeof t!="string"||t.length===0||t.length>64)return null;if(t.toUpperCase()==="UTC")return"UTC";try{return new Intl.DateTimeFormat("en-US",{timeZone:t}).resolvedOptions().timeZone}catch{return null}}function nt(t){if(t==="UTC")return o=>o;let e=new Intl.DateTimeFormat("en-US",{timeZone:t,hourCycle:"h23",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),n=o=>{let s={};for(let u of e.formatToParts(new Date(o)))s[u.type]=Number(u.value);let c=o-(o%1e3+1e3)%1e3;return g(s.year,s.month,s.day,s.hour,s.minute,s.second)-c},r=new Map;return o=>{let s=Math.floor(o/a),c=r.get(s);if(c===void 0){let u=n(s*a),f=n(Math.min((s+1)*a-1,O));c=u===f?u:NaN,r.set(s,c)}return o+(Number.isNaN(c)?n(o):c)}}function rt(t,e){if(t instanceof Date){let n=t.getTime();return Number.isNaN(n)?NaN:e(n)}if(typeof t=="string"){let n=T(t);return n?n.offsetMinutes===null?n.ms:e(n.ms-n.offsetMinutes*6e4):NaN}return typeof t=="number"&&Number.isFinite(t)?e(t):NaN}export{i as a,M as b,C as c,m as d,j as e,$ as f,z as g,F as h,w as i,a as j,y as k,G as l,J as m,D as n,R as o,Y as p,B as q,E as r,H as s,X as t,K as u,S as v,q as w,Z as x,T as y,tt as z,et as A,L as B,nt as C,rt as D};
|