@bicharts/chart-host 0.6.34 → 0.6.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-BQJHYOPP.mjs → chunk-6JAF422N.mjs} +600 -600
- package/dist/index.mjs +1 -1
- package/dist/react.mjs +1 -1
- package/package.json +1 -1
|
@@ -18,30 +18,30 @@ var require_papaparse_min = __commonJS({
|
|
|
18
18
|
https://github.com/mholt/PapaParse
|
|
19
19
|
License: MIT
|
|
20
20
|
*/
|
|
21
|
-
((e,
|
|
22
|
-
"function" == typeof define && define.amd ? define([],
|
|
21
|
+
((e, t) => {
|
|
22
|
+
"function" == typeof define && define.amd ? define([], t) : "object" == typeof module && "undefined" != typeof exports ? module.exports = t() : e.Papa = t();
|
|
23
23
|
})(exports, function r() {
|
|
24
|
-
var
|
|
25
|
-
var d2, s = !
|
|
26
|
-
function
|
|
24
|
+
var n2 = "undefined" != typeof self ? self : "undefined" != typeof window ? window : void 0 !== n2 ? n2 : {};
|
|
25
|
+
var d2, s = !n2.document && !!n2.postMessage, a2 = n2.IS_PAPA_WORKER || false, o2 = {}, h3 = 0, v3 = {};
|
|
26
|
+
function P4(e) {
|
|
27
27
|
return 65279 === e.charCodeAt(0) ? e.slice(1) : e;
|
|
28
28
|
}
|
|
29
29
|
function u2(e) {
|
|
30
30
|
this._handle = null, this._finished = false, this._completed = false, this._halted = false, this._input = null, this._baseIndex = 0, this._partialLine = "", this._rowCount = 0, this._start = 0, this._nextChunk = null, this.isFirstChunk = true, this._completeResults = { data: [], errors: [], meta: {} }, function(e2) {
|
|
31
|
-
var
|
|
32
|
-
|
|
33
|
-
this._handle = new i(
|
|
34
|
-
}.call(this, e), this.parseChunk = function(
|
|
31
|
+
var t = b2(e2);
|
|
32
|
+
t.chunkSize = parseInt(t.chunkSize), e2.step || e2.chunk || (t.chunkSize = null);
|
|
33
|
+
this._handle = new i(t), (this._handle.streamer = this)._config = t;
|
|
34
|
+
}.call(this, e), this.parseChunk = function(t, e2) {
|
|
35
35
|
var i2 = parseInt(this._config.skipFirstNLines) || 0;
|
|
36
36
|
if (this.isFirstChunk && 0 < i2) {
|
|
37
37
|
let e4 = this._config.newline;
|
|
38
|
-
e4 || (r2 = this._config.quoteChar || '"', e4 = this._handle.guessLineEndings(
|
|
38
|
+
e4 || (r2 = this._config.quoteChar || '"', e4 = this._handle.guessLineEndings(t, r2)), t = [...t.split(e4).slice(i2)].join(e4);
|
|
39
39
|
}
|
|
40
|
-
this.isFirstChunk && q2(this._config.beforeFirstChunk) && void 0 !== (r2 = this._config.beforeFirstChunk(
|
|
41
|
-
var i2 = this._partialLine +
|
|
40
|
+
this.isFirstChunk && q2(this._config.beforeFirstChunk) && void 0 !== (r2 = this._config.beforeFirstChunk(t)) && (t = r2), this.isFirstChunk = false, this._halted = false;
|
|
41
|
+
var i2 = this._partialLine + t, r2 = (this._partialLine = "", this._handle.parse(i2, this._baseIndex, !this._finished));
|
|
42
42
|
if (!this._handle.paused() && !this._handle.aborted()) {
|
|
43
|
-
|
|
44
|
-
if (a2)
|
|
43
|
+
t = r2.meta.cursor, i2 = (this._finished || (this._partialLine = i2.substring(t - this._baseIndex), this._baseIndex = t), r2 && r2.data && (this._rowCount += r2.data.length), this._finished || this._config.preview && this._rowCount >= this._config.preview);
|
|
44
|
+
if (a2) n2.postMessage({ results: r2, workerId: v3.WORKER_ID, finished: i2 });
|
|
45
45
|
else if (q2(this._config.chunk) && !e2) {
|
|
46
46
|
if (this._config.chunk(r2, this._handle), this._handle.paused() || this._handle.aborted()) return void (this._halted = true);
|
|
47
47
|
this._completeResults = r2 = void 0;
|
|
@@ -50,7 +50,7 @@ var require_papaparse_min = __commonJS({
|
|
|
50
50
|
}
|
|
51
51
|
this._halted = true;
|
|
52
52
|
}, this._sendError = function(e2) {
|
|
53
|
-
q2(this._config.error) ? this._config.error(e2) : a2 && this._config.error &&
|
|
53
|
+
q2(this._config.error) ? this._config.error(e2) : a2 && this._config.error && n2.postMessage({ workerId: v3.WORKER_ID, error: e2, finished: false });
|
|
54
54
|
};
|
|
55
55
|
}
|
|
56
56
|
function f4(e) {
|
|
@@ -65,8 +65,8 @@ var require_papaparse_min = __commonJS({
|
|
|
65
65
|
if (this._finished) this._chunkLoaded();
|
|
66
66
|
else {
|
|
67
67
|
if (r2 = new XMLHttpRequest(), this._config.withCredentials && (r2.withCredentials = this._config.withCredentials), s || (r2.onload = y4(this._chunkLoaded, this), r2.onerror = y4(this._chunkError, this)), r2.open(this._config.downloadRequestBody ? "POST" : "GET", this._input, !s), this._config.downloadRequestHeaders) {
|
|
68
|
-
var e2,
|
|
69
|
-
for (e2 in
|
|
68
|
+
var e2, t = this._config.downloadRequestHeaders;
|
|
69
|
+
for (e2 in t) r2.setRequestHeader(e2, t[e2]);
|
|
70
70
|
}
|
|
71
71
|
var i2;
|
|
72
72
|
this._config.chunkSize && (i2 = this._start + this._config.chunkSize - 1, r2.setRequestHeader("Range", "bytes=" + this._start + "-" + i2));
|
|
@@ -86,14 +86,14 @@ var require_papaparse_min = __commonJS({
|
|
|
86
86
|
}
|
|
87
87
|
function l(e) {
|
|
88
88
|
(e = e || {}).chunkSize || (e.chunkSize = v3.LocalChunkSize), u2.call(this, e);
|
|
89
|
-
var i2, r2,
|
|
89
|
+
var i2, r2, n4 = "undefined" != typeof FileReader;
|
|
90
90
|
this.stream = function(e2) {
|
|
91
|
-
this._input = e2, r2 = e2.slice || e2.webkitSlice || e2.mozSlice,
|
|
91
|
+
this._input = e2, r2 = e2.slice || e2.webkitSlice || e2.mozSlice, n4 ? ((i2 = new FileReader()).onload = y4(this._chunkLoaded, this), i2.onerror = y4(this._chunkError, this)) : i2 = new FileReaderSync(), this._nextChunk();
|
|
92
92
|
}, this._nextChunk = function() {
|
|
93
93
|
this._finished || this._config.preview && !(this._rowCount < this._config.preview) || this._readChunk();
|
|
94
94
|
}, this._readChunk = function() {
|
|
95
|
-
var e2 = this._input,
|
|
96
|
-
|
|
95
|
+
var e2 = this._input, t = (this._config.chunkSize && (t = Math.min(this._start + this._config.chunkSize, this._input.size), e2 = r2.call(e2, this._start, t)), i2.readAsText(e2, this._config.encoding));
|
|
96
|
+
n4 || this._chunkLoaded({ target: { result: t } });
|
|
97
97
|
}, this._chunkLoaded = function(e2) {
|
|
98
98
|
this._start += this._config.chunkSize, this._finished = !this._config.chunkSize || this._start >= this._input.size, this.parseChunk(e2.target.result);
|
|
99
99
|
}, this._chunkError = function() {
|
|
@@ -105,13 +105,13 @@ var require_papaparse_min = __commonJS({
|
|
|
105
105
|
u2.call(this, e = e || {}), this.stream = function(e2) {
|
|
106
106
|
return i2 = e2, this._nextChunk();
|
|
107
107
|
}, this._nextChunk = function() {
|
|
108
|
-
var e2,
|
|
109
|
-
if (!this._finished) return e2 = this._config.chunkSize, i2 = e2 ? (
|
|
108
|
+
var e2, t;
|
|
109
|
+
if (!this._finished) return e2 = this._config.chunkSize, i2 = e2 ? (t = i2.substring(0, e2), i2.substring(e2)) : (t = i2, ""), this._finished = !i2, this.parseChunk(t);
|
|
110
110
|
};
|
|
111
111
|
}
|
|
112
112
|
function p2(e) {
|
|
113
113
|
u2.call(this, e = e || {});
|
|
114
|
-
var
|
|
114
|
+
var t = [], i2 = true, r2 = false;
|
|
115
115
|
this.pause = function() {
|
|
116
116
|
u2.prototype.pause.apply(this, arguments), this._input.pause();
|
|
117
117
|
}, this.resume = function() {
|
|
@@ -119,12 +119,12 @@ var require_papaparse_min = __commonJS({
|
|
|
119
119
|
}, this.stream = function(e2) {
|
|
120
120
|
this._input = e2, this._input.on("data", this._streamData), this._input.on("end", this._streamEnd), this._input.on("error", this._streamError);
|
|
121
121
|
}, this._checkIsFinished = function() {
|
|
122
|
-
r2 && 1 ===
|
|
122
|
+
r2 && 1 === t.length && (this._finished = true);
|
|
123
123
|
}, this._nextChunk = function() {
|
|
124
|
-
this._checkIsFinished(),
|
|
124
|
+
this._checkIsFinished(), t.length ? this.parseChunk(t.shift()) : i2 = true;
|
|
125
125
|
}, this._streamData = y4(function(e2) {
|
|
126
126
|
try {
|
|
127
|
-
|
|
127
|
+
t.push("string" == typeof e2 ? e2 : e2.toString(this._config.encoding)), i2 && (i2 = false, this._checkIsFinished(), this.parseChunk(t.shift()));
|
|
128
128
|
} catch (e4) {
|
|
129
129
|
this._streamError(e4);
|
|
130
130
|
}
|
|
@@ -137,73 +137,73 @@ var require_papaparse_min = __commonJS({
|
|
|
137
137
|
}, this);
|
|
138
138
|
}
|
|
139
139
|
function i(m4) {
|
|
140
|
-
var
|
|
140
|
+
var n4, s2, a4, t, o4 = Math.pow(2, 53), h4 = -o4, u4 = /^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/, d3 = /^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/, i2 = this, r2 = 0, f5 = 0, l2 = false, e = false, c4 = [], p4 = { data: [], errors: [], meta: {} };
|
|
141
141
|
function y5(e2) {
|
|
142
142
|
return "greedy" === m4.skipEmptyLines ? "" === e2.join("").trim() : 1 === e2.length && 0 === e2[0].length;
|
|
143
143
|
}
|
|
144
144
|
function g4() {
|
|
145
145
|
if (p4 && a4 && (k3("Delimiter", "UndetectableDelimiter", "Unable to auto-detect delimiting character; defaulted to '" + v3.DefaultDelimiter + "'"), a4 = false), m4.skipEmptyLines && (p4.data = p4.data.filter(function(e4) {
|
|
146
146
|
return !y5(e4);
|
|
147
|
-
})),
|
|
148
|
-
let
|
|
149
|
-
e4 =
|
|
147
|
+
})), _5()) {
|
|
148
|
+
let t4 = function(e4, t5) {
|
|
149
|
+
e4 = P4(e4), q2(m4.transformHeader) && (e4 = m4.transformHeader(e4, t5)), c4.push(e4);
|
|
150
150
|
};
|
|
151
|
-
var
|
|
151
|
+
var t2 = t4;
|
|
152
152
|
if (p4) if (Array.isArray(p4.data[0])) {
|
|
153
|
-
for (var e2 = 0;
|
|
153
|
+
for (var e2 = 0; _5() && e2 < p4.data.length; e2++) p4.data[e2].forEach(t4);
|
|
154
154
|
p4.data.splice(0, 1);
|
|
155
|
-
} else p4.data.forEach(
|
|
155
|
+
} else p4.data.forEach(t4);
|
|
156
156
|
}
|
|
157
|
-
function i4(e4,
|
|
157
|
+
function i4(e4, t4) {
|
|
158
158
|
for (var i5 = m4.header ? {} : [], r5 = 0; r5 < e4.length; r5++) {
|
|
159
|
-
var
|
|
159
|
+
var n5 = r5, s4 = e4[r5], s4 = ((e5, t5) => ((e6) => (m4.dynamicTypingFunction && void 0 === m4.dynamicTyping[e6] && (m4.dynamicTyping[e6] = m4.dynamicTypingFunction(e6)), true === (m4.dynamicTyping[e6] || m4.dynamicTyping)))(e5) ? "true" === t5 || "TRUE" === t5 || "false" !== t5 && "FALSE" !== t5 && (((e6) => {
|
|
160
160
|
if (u4.test(e6)) {
|
|
161
161
|
e6 = parseFloat(e6);
|
|
162
162
|
if (h4 < e6 && e6 < o4) return 1;
|
|
163
163
|
}
|
|
164
|
-
})(
|
|
165
|
-
"__parsed_extra" ===
|
|
164
|
+
})(t5) ? parseFloat(t5) : d3.test(t5) ? new Date(t5) : "" === t5 ? null : t5) : t5)(n5 = m4.header ? r5 >= c4.length ? "__parsed_extra" : c4[r5] : n5, s4 = m4.transform ? m4.transform(s4, n5) : s4);
|
|
165
|
+
"__parsed_extra" === n5 ? (i5[n5] = i5[n5] || [], i5[n5].push(s4)) : i5[n5] = s4;
|
|
166
166
|
}
|
|
167
|
-
return m4.header && (r5 > c4.length ? k3("FieldMismatch", "TooManyFields", "Too many fields: expected " + c4.length + " fields but parsed " + r5, f5 +
|
|
167
|
+
return m4.header && (r5 > c4.length ? k3("FieldMismatch", "TooManyFields", "Too many fields: expected " + c4.length + " fields but parsed " + r5, f5 + t4) : r5 < c4.length && k3("FieldMismatch", "TooFewFields", "Too few fields: expected " + c4.length + " fields but parsed " + r5, f5 + t4)), i5;
|
|
168
168
|
}
|
|
169
169
|
var r4;
|
|
170
170
|
p4 && (m4.header || m4.dynamicTyping || m4.transform) && (r4 = 1, !p4.data.length || Array.isArray(p4.data[0]) ? (p4.data = p4.data.map(i4), r4 = p4.data.length) : p4.data = i4(p4.data, 0), m4.header && p4.meta && (p4.meta.fields = c4), f5 += r4);
|
|
171
171
|
}
|
|
172
|
-
function
|
|
172
|
+
function _5() {
|
|
173
173
|
return m4.header && 0 === c4.length;
|
|
174
174
|
}
|
|
175
|
-
function k3(e2,
|
|
176
|
-
e2 = { type: e2, code:
|
|
175
|
+
function k3(e2, t2, i4, r4) {
|
|
176
|
+
e2 = { type: e2, code: t2, message: i4 };
|
|
177
177
|
void 0 !== r4 && (e2.row = r4), p4.errors.push(e2);
|
|
178
178
|
}
|
|
179
|
-
q2(m4.step) && (
|
|
180
|
-
p4 = e2,
|
|
181
|
-
}), this.parse = function(e2,
|
|
182
|
-
var r4 = m4.quoteChar || '"', r4 = (m4.newline || (m4.newline = this.guessLineEndings(e2, r4)), a4 = false, m4.delimiter ? q2(m4.delimiter) && (m4.delimiter = m4.delimiter(e2), p4.meta.delimiter = m4.delimiter) : ((r4 = ((e4,
|
|
179
|
+
q2(m4.step) && (t = m4.step, m4.step = function(e2) {
|
|
180
|
+
p4 = e2, _5() ? g4() : (g4(), 0 !== p4.data.length && (r2 += e2.data.length, m4.preview && r2 > m4.preview ? s2.abort() : (p4.data = p4.data[0], t(p4, i2))));
|
|
181
|
+
}), this.parse = function(e2, t2, i4) {
|
|
182
|
+
var r4 = m4.quoteChar || '"', r4 = (m4.newline || (m4.newline = this.guessLineEndings(e2, r4)), a4 = false, m4.delimiter ? q2(m4.delimiter) && (m4.delimiter = m4.delimiter(e2), p4.meta.delimiter = m4.delimiter) : ((r4 = ((e4, t4, i5, r5, n5) => {
|
|
183
183
|
var s4, a5, o5, h5;
|
|
184
|
-
|
|
185
|
-
for (var u5 = 0; u5 <
|
|
186
|
-
for (var d4, f6 =
|
|
184
|
+
n5 = n5 || [",", " ", "|", ";", v3.RECORD_SEP, v3.UNIT_SEP];
|
|
185
|
+
for (var u5 = 0; u5 < n5.length; u5++) {
|
|
186
|
+
for (var d4, f6 = n5[u5], l3 = 0, c5 = 0, p5 = 0, g5 = (o5 = void 0, new E4({ comments: r5, delimiter: f6, newline: t4, preview: 10 }).parse(e4)), _6 = 0; _6 < g5.data.length; _6++) i5 && y5(g5.data[_6]) ? p5++ : (d4 = g5.data[_6].length, c5 += d4, void 0 === o5 ? o5 = d4 : 0 < d4 && (l3 += Math.abs(d4 - o5), o5 = d4));
|
|
187
187
|
0 < g5.data.length && (c5 /= g5.data.length - p5), (void 0 === a5 || l3 <= a5) && (void 0 === h5 || h5 < c5) && 1.99 < c5 && (a5 = l3, s4 = f6, h5 = c5);
|
|
188
188
|
}
|
|
189
189
|
return { successful: !!(m4.delimiter = s4), bestDelimiter: s4 };
|
|
190
190
|
})(e2, m4.newline, m4.skipEmptyLines, m4.comments, m4.delimitersToGuess)).successful ? m4.delimiter = r4.bestDelimiter : (a4 = true, m4.delimiter = v3.DefaultDelimiter), p4.meta.delimiter = m4.delimiter), b2(m4));
|
|
191
|
-
return m4.preview && m4.header && r4.preview++,
|
|
191
|
+
return m4.preview && m4.header && r4.preview++, n4 = e2, s2 = new E4(r4), p4 = s2.parse(n4, t2, i4), g4(), l2 ? { meta: { paused: true } } : p4 || { meta: { paused: false } };
|
|
192
192
|
}, this.paused = function() {
|
|
193
193
|
return l2;
|
|
194
194
|
}, this.pause = function() {
|
|
195
|
-
l2 = true, s2.abort(),
|
|
195
|
+
l2 = true, s2.abort(), n4 = q2(m4.chunk) ? "" : n4.substring(s2.getCharIndex());
|
|
196
196
|
}, this.resume = function() {
|
|
197
|
-
i2.streamer._halted ? (l2 = false, i2.streamer.parseChunk(
|
|
197
|
+
i2.streamer._halted ? (l2 = false, i2.streamer.parseChunk(n4, true)) : setTimeout(i2.resume, 3);
|
|
198
198
|
}, this.aborted = function() {
|
|
199
199
|
return e;
|
|
200
200
|
}, this.abort = function() {
|
|
201
|
-
e = true, s2.abort(), p4.meta.aborted = true, q2(m4.complete) && m4.complete(p4),
|
|
202
|
-
}, this.guessLineEndings = function(e2,
|
|
201
|
+
e = true, s2.abort(), p4.meta.aborted = true, q2(m4.complete) && m4.complete(p4), n4 = "";
|
|
202
|
+
}, this.guessLineEndings = function(e2, t2) {
|
|
203
203
|
e2 = e2.substring(0, 1048576);
|
|
204
|
-
var
|
|
204
|
+
var t2 = new RegExp(U4(t2) + "([^]*?)" + U4(t2), "gm"), i4 = (e2 = e2.replace(t2, "")).split("\r"), t2 = e2.split("\n"), e2 = 1 < t2.length && t2[0].length < i4[0].length;
|
|
205
205
|
if (1 === i4.length || e2) return "\n";
|
|
206
|
-
for (var r4 = 0,
|
|
206
|
+
for (var r4 = 0, n5 = 0; n5 < i4.length; n5++) "\n" === i4[n5][0] && r4++;
|
|
207
207
|
return r4 >= i4.length / 2 ? "\r\n" : "\r";
|
|
208
208
|
};
|
|
209
209
|
}
|
|
@@ -211,89 +211,89 @@ var require_papaparse_min = __commonJS({
|
|
|
211
211
|
return e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
212
212
|
}
|
|
213
213
|
function E4(C) {
|
|
214
|
-
var S2 = (C = C || {}).delimiter, O3 = C.newline, x3 = C.comments, I2 = C.step, A2 = C.preview, T2 = C.fastMode, D3 = null,
|
|
215
|
-
if (void 0 !== C.escapeChar && (
|
|
214
|
+
var S2 = (C = C || {}).delimiter, O3 = C.newline, x3 = C.comments, I2 = C.step, A2 = C.preview, T2 = C.fastMode, D3 = null, L4 = false, F3 = null == C.quoteChar ? '"' : C.quoteChar, j4 = F3;
|
|
215
|
+
if (void 0 !== C.escapeChar && (j4 = C.escapeChar), ("string" != typeof S2 || -1 < v3.BAD_DELIMITERS.indexOf(S2)) && (S2 = ","), x3 === S2) throw new Error("Comment character same as delimiter");
|
|
216
216
|
true === x3 ? x3 = "#" : ("string" != typeof x3 || -1 < v3.BAD_DELIMITERS.indexOf(x3)) && (x3 = false), "\n" !== O3 && "\r" !== O3 && "\r\n" !== O3 && (O3 = "\n");
|
|
217
217
|
var z3 = 0, M2 = false;
|
|
218
|
-
this.parse = function(i2,
|
|
218
|
+
this.parse = function(i2, t, r2) {
|
|
219
219
|
if ("string" != typeof i2) throw new Error("Input must be a string");
|
|
220
|
-
var
|
|
221
|
-
if (!i2) return
|
|
220
|
+
var n4 = i2.length, e = S2.length, s2 = O3.length, a4 = x3.length, o4 = q2(I2), h4 = [], u4 = [], d3 = [], f5 = z3 = 0;
|
|
221
|
+
if (!i2) return w2();
|
|
222
222
|
if (T2 || false !== T2 && -1 === i2.indexOf(F3)) {
|
|
223
223
|
for (var l2 = i2.split(O3), c4 = 0; c4 < l2.length; c4++) {
|
|
224
224
|
if (d3 = l2[c4], z3 += d3.length, c4 !== l2.length - 1) z3 += O3.length;
|
|
225
|
-
else if (r2) return
|
|
225
|
+
else if (r2) return w2();
|
|
226
226
|
if (!x3 || d3.substring(0, a4) !== x3) {
|
|
227
227
|
if (o4) {
|
|
228
|
-
if (h4 = [], k3(d3.split(S2)), R2(), M2) return
|
|
228
|
+
if (h4 = [], k3(d3.split(S2)), R2(), M2) return w2();
|
|
229
229
|
} else k3(d3.split(S2));
|
|
230
|
-
if (A2 && A2 <= c4) return h4 = h4.slice(0, A2),
|
|
230
|
+
if (A2 && A2 <= c4) return h4 = h4.slice(0, A2), w2(true);
|
|
231
231
|
}
|
|
232
232
|
}
|
|
233
|
-
return
|
|
233
|
+
return w2();
|
|
234
234
|
}
|
|
235
|
-
for (var p4 = i2.indexOf(S2, z3), g4 = i2.indexOf(O3, z3),
|
|
235
|
+
for (var p4 = i2.indexOf(S2, z3), g4 = i2.indexOf(O3, z3), _5 = new RegExp(U4(j4) + U4(F3), "g"), m4 = i2.indexOf(F3, z3); ; ) if (i2[z3] === F3) for (m4 = z3, z3++; ; ) {
|
|
236
236
|
if (-1 === (m4 = i2.indexOf(F3, m4 + 1))) return r2 || u4.push({ type: "Quotes", code: "MissingQuotes", message: "Quoted field unterminated", row: h4.length, index: z3 }), E5();
|
|
237
|
-
if (m4 ===
|
|
238
|
-
if (F3 ===
|
|
239
|
-
else if (F3 ===
|
|
237
|
+
if (m4 === n4 - 1) return E5(i2.substring(z3, m4).replace(_5, F3));
|
|
238
|
+
if (F3 === j4 && i2[m4 + 1] === j4) m4++;
|
|
239
|
+
else if (F3 === j4 || 0 === m4 || i2[m4 - 1] !== j4) {
|
|
240
240
|
-1 !== p4 && p4 < m4 + 1 && (p4 = i2.indexOf(S2, m4 + 1));
|
|
241
241
|
var y5 = v4(-1 === (g4 = -1 !== g4 && g4 < m4 + 1 ? i2.indexOf(O3, m4 + 1) : g4) ? p4 : Math.min(p4, g4));
|
|
242
242
|
if (i2.substr(m4 + 1 + y5, e) === S2) {
|
|
243
|
-
d3.push(i2.substring(z3, m4).replace(
|
|
243
|
+
d3.push(i2.substring(z3, m4).replace(_5, F3)), i2[z3 = m4 + 1 + y5 + e] !== F3 && (m4 = i2.indexOf(F3, z3)), p4 = i2.indexOf(S2, z3), g4 = i2.indexOf(O3, z3);
|
|
244
244
|
break;
|
|
245
245
|
}
|
|
246
246
|
y5 = v4(g4);
|
|
247
247
|
if (i2.substring(m4 + 1 + y5, m4 + 1 + y5 + s2) === O3) {
|
|
248
|
-
if (d3.push(i2.substring(z3, m4).replace(
|
|
249
|
-
if (A2 && h4.length >= A2) return
|
|
248
|
+
if (d3.push(i2.substring(z3, m4).replace(_5, F3)), b4(m4 + 1 + y5 + s2), p4 = i2.indexOf(S2, z3), m4 = i2.indexOf(F3, z3), o4 && (R2(), M2)) return w2();
|
|
249
|
+
if (A2 && h4.length >= A2) return w2(true);
|
|
250
250
|
break;
|
|
251
251
|
}
|
|
252
252
|
u4.push({ type: "Quotes", code: "InvalidQuotes", message: "Trailing quote on quoted field is malformed", row: h4.length, index: z3 }), m4++;
|
|
253
253
|
}
|
|
254
254
|
}
|
|
255
255
|
else if (x3 && 0 === d3.length && i2.substring(z3, z3 + a4) === x3) {
|
|
256
|
-
if (-1 === g4) return
|
|
256
|
+
if (-1 === g4) return w2();
|
|
257
257
|
z3 = g4 + s2, g4 = i2.indexOf(O3, z3), p4 = i2.indexOf(S2, z3);
|
|
258
258
|
} else if (-1 !== p4 && (p4 < g4 || -1 === g4)) d3.push(i2.substring(z3, p4)), z3 = p4 + e, p4 = i2.indexOf(S2, z3);
|
|
259
259
|
else {
|
|
260
260
|
if (-1 === g4) break;
|
|
261
|
-
if (d3.push(i2.substring(z3, g4)), b4(g4 + s2), o4 && (R2(), M2)) return
|
|
262
|
-
if (A2 && h4.length >= A2) return
|
|
261
|
+
if (d3.push(i2.substring(z3, g4)), b4(g4 + s2), o4 && (R2(), M2)) return w2();
|
|
262
|
+
if (A2 && h4.length >= A2) return w2(true);
|
|
263
263
|
}
|
|
264
264
|
return E5();
|
|
265
265
|
function k3(e2) {
|
|
266
266
|
h4.push(e2), f5 = z3;
|
|
267
267
|
}
|
|
268
268
|
function v4(e2) {
|
|
269
|
-
var
|
|
270
|
-
return
|
|
269
|
+
var t2 = 0;
|
|
270
|
+
return t2 = -1 !== e2 && (e2 = i2.substring(m4 + 1, e2)) && "" === e2.trim() ? e2.length : t2;
|
|
271
271
|
}
|
|
272
272
|
function E5(e2) {
|
|
273
|
-
return r2 || (void 0 === e2 && (e2 = i2.substring(z3)), d3.push(e2), z3 =
|
|
273
|
+
return r2 || (void 0 === e2 && (e2 = i2.substring(z3)), d3.push(e2), z3 = n4, k3(d3), o4 && R2()), w2();
|
|
274
274
|
}
|
|
275
275
|
function b4(e2) {
|
|
276
276
|
z3 = e2, k3(d3), d3 = [], g4 = i2.indexOf(O3, z3);
|
|
277
277
|
}
|
|
278
|
-
function
|
|
279
|
-
if (C.header && !
|
|
278
|
+
function w2(e2) {
|
|
279
|
+
if (C.header && !t && h4.length && !L4) {
|
|
280
280
|
var s4 = h4[0], a5 = /* @__PURE__ */ Object.create(null), o5 = new Set(s4);
|
|
281
|
-
let
|
|
281
|
+
let n5 = false;
|
|
282
282
|
for (let r4 = 0; r4 < s4.length; r4++) {
|
|
283
|
-
let i4 =
|
|
283
|
+
let i4 = P4(s4[r4]);
|
|
284
284
|
if (a5[i4 = q2(C.transformHeader) ? C.transformHeader(i4, r4) : i4]) {
|
|
285
|
-
let e4,
|
|
286
|
-
for (; e4 = i4 + "_" +
|
|
287
|
-
o5.add(e4), s4[r4] = e4, a5[i4]++,
|
|
285
|
+
let e4, t2 = a5[i4];
|
|
286
|
+
for (; e4 = i4 + "_" + t2, t2++, o5.has(e4); ) ;
|
|
287
|
+
o5.add(e4), s4[r4] = e4, a5[i4]++, n5 = true, (D3 = null === D3 ? {} : D3)[e4] = i4;
|
|
288
288
|
} else a5[i4] = 1, s4[r4] = i4;
|
|
289
289
|
o5.add(i4);
|
|
290
290
|
}
|
|
291
|
-
|
|
291
|
+
n5 && console.warn("Duplicate headers found and renamed."), L4 = true;
|
|
292
292
|
}
|
|
293
|
-
return { data: h4, errors: u4, meta: { delimiter: S2, linebreak: O3, aborted: M2, truncated: !!e2, cursor: f5 + (
|
|
293
|
+
return { data: h4, errors: u4, meta: { delimiter: S2, linebreak: O3, aborted: M2, truncated: !!e2, cursor: f5 + (t || 0), renamedHeaders: D3 } };
|
|
294
294
|
}
|
|
295
295
|
function R2() {
|
|
296
|
-
I2(
|
|
296
|
+
I2(w2()), h4 = [], u4 = [];
|
|
297
297
|
}
|
|
298
298
|
}, this.abort = function() {
|
|
299
299
|
M2 = true;
|
|
@@ -302,133 +302,133 @@ var require_papaparse_min = __commonJS({
|
|
|
302
302
|
};
|
|
303
303
|
}
|
|
304
304
|
function g3(e) {
|
|
305
|
-
var
|
|
306
|
-
if (
|
|
307
|
-
else if (
|
|
308
|
-
var
|
|
309
|
-
r2 = true,
|
|
305
|
+
var t = e.data, i2 = o2[t.workerId], r2 = false;
|
|
306
|
+
if (t.error) i2.userError(t.error, t.file);
|
|
307
|
+
else if (t.results && t.results.data) {
|
|
308
|
+
var n4 = { abort: function() {
|
|
309
|
+
r2 = true, _4(t.workerId, { data: [], errors: [], meta: { aborted: true } });
|
|
310
310
|
}, pause: m2, resume: m2 };
|
|
311
311
|
if (q2(i2.userStep)) {
|
|
312
|
-
for (var s2 = 0; s2 <
|
|
313
|
-
delete
|
|
314
|
-
} else q2(i2.userChunk) && (i2.userChunk(
|
|
312
|
+
for (var s2 = 0; s2 < t.results.data.length && (i2.userStep({ data: t.results.data[s2], errors: t.results.errors, meta: t.results.meta }, n4), !r2); s2++) ;
|
|
313
|
+
delete t.results;
|
|
314
|
+
} else q2(i2.userChunk) && (i2.userChunk(t.results, n4, t.file), delete t.results);
|
|
315
315
|
}
|
|
316
|
-
|
|
316
|
+
t.finished && !r2 && _4(t.workerId, t.results);
|
|
317
317
|
}
|
|
318
|
-
function
|
|
318
|
+
function _4(e, t) {
|
|
319
319
|
var i2 = o2[e];
|
|
320
|
-
q2(i2.userComplete) && i2.userComplete(
|
|
320
|
+
q2(i2.userComplete) && i2.userComplete(t), i2.terminate(), delete o2[e];
|
|
321
321
|
}
|
|
322
322
|
function m2() {
|
|
323
323
|
throw new Error("Not implemented.");
|
|
324
324
|
}
|
|
325
325
|
function b2(e) {
|
|
326
326
|
if ("object" != typeof e || null === e) return e;
|
|
327
|
-
var
|
|
328
|
-
for (
|
|
327
|
+
var t, i2 = Array.isArray(e) ? [] : {};
|
|
328
|
+
for (t in e) i2[t] = b2(e[t]);
|
|
329
329
|
return i2;
|
|
330
330
|
}
|
|
331
|
-
function y4(e,
|
|
331
|
+
function y4(e, t) {
|
|
332
332
|
return function() {
|
|
333
|
-
e.apply(
|
|
333
|
+
e.apply(t, arguments);
|
|
334
334
|
};
|
|
335
335
|
}
|
|
336
336
|
function q2(e) {
|
|
337
337
|
return "function" == typeof e;
|
|
338
338
|
}
|
|
339
|
-
return v3.parse = function(e,
|
|
340
|
-
var i2 = (
|
|
341
|
-
q2(i2) && (
|
|
342
|
-
if (
|
|
339
|
+
return v3.parse = function(e, t) {
|
|
340
|
+
var i2 = (t = t || {}).dynamicTyping || false;
|
|
341
|
+
q2(i2) && (t.dynamicTypingFunction = i2, i2 = {});
|
|
342
|
+
if (t.dynamicTyping = i2, t.transform = !!q2(t.transform) && t.transform, !t.worker || !v3.WORKERS_SUPPORTED) return i2 = null, v3.NODE_STREAM_INPUT, "string" == typeof e ? (e = P4(e), i2 = new (t.download ? f4 : c2)(t)) : true === e.readable && q2(e.read) && q2(e.on) ? i2 = new p2(t) : (n2.File && e instanceof File || e instanceof Object) && (i2 = new l(t)), i2.stream(e);
|
|
343
343
|
(i2 = (() => {
|
|
344
344
|
var e2;
|
|
345
345
|
return !!v3.WORKERS_SUPPORTED && (e2 = (() => {
|
|
346
|
-
var e4 =
|
|
347
|
-
return v3.BLOB_URL || (v3.BLOB_URL = e4.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ", "(",
|
|
348
|
-
})(), (e2 = new
|
|
349
|
-
})()).userStep =
|
|
350
|
-
}, v3.unparse = function(e,
|
|
351
|
-
var s2 = false,
|
|
352
|
-
if ("object" == typeof
|
|
353
|
-
if ("string" != typeof
|
|
354
|
-
return -1 !==
|
|
355
|
-
}).length || (m4 =
|
|
356
|
-
if (0 ===
|
|
357
|
-
r2 =
|
|
346
|
+
var e4 = n2.URL || n2.webkitURL || null, t2 = r.toString();
|
|
347
|
+
return v3.BLOB_URL || (v3.BLOB_URL = e4.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ", "(", t2, ")();"], { type: "text/javascript" })));
|
|
348
|
+
})(), (e2 = new n2.Worker(e2)).onmessage = g3, e2.id = h3++, o2[e2.id] = e2);
|
|
349
|
+
})()).userStep = t.step, i2.userChunk = t.chunk, i2.userComplete = t.complete, i2.userError = t.error, t.step = q2(t.step), t.chunk = q2(t.chunk), t.complete = q2(t.complete), t.error = q2(t.error), delete t.worker, i2.postMessage({ input: e, config: t, workerId: i2.id });
|
|
350
|
+
}, v3.unparse = function(e, t) {
|
|
351
|
+
var s2 = false, _5 = true, m4 = ",", y5 = "\r\n", a4 = '"', o4 = a4 + a4, i2 = false, r2 = null, h4 = false, u4 = ((() => {
|
|
352
|
+
if ("object" == typeof t) {
|
|
353
|
+
if ("string" != typeof t.delimiter || v3.BAD_DELIMITERS.filter(function(e2) {
|
|
354
|
+
return -1 !== t.delimiter.indexOf(e2);
|
|
355
|
+
}).length || (m4 = t.delimiter), "boolean" != typeof t.quotes && "function" != typeof t.quotes && !Array.isArray(t.quotes) || (s2 = t.quotes), "boolean" != typeof t.skipEmptyLines && "string" != typeof t.skipEmptyLines || (i2 = t.skipEmptyLines), "string" == typeof t.newline && (y5 = t.newline), "string" == typeof t.quoteChar && (a4 = t.quoteChar, o4 = a4 + a4), "boolean" == typeof t.header && (_5 = t.header), Array.isArray(t.columns)) {
|
|
356
|
+
if (0 === t.columns.length) throw new Error("Option columns is empty");
|
|
357
|
+
r2 = t.columns;
|
|
358
358
|
}
|
|
359
|
-
void 0 !==
|
|
359
|
+
void 0 !== t.escapeChar && (o4 = t.escapeChar + a4), t.escapeFormulae instanceof RegExp ? h4 = t.escapeFormulae : "boolean" == typeof t.escapeFormulae && t.escapeFormulae && (h4 = /^[=+\-@\t\r].*$/);
|
|
360
360
|
}
|
|
361
361
|
})(), new RegExp(U4(a4), "g"));
|
|
362
362
|
"string" == typeof e && (e = JSON.parse(e));
|
|
363
363
|
if (Array.isArray(e)) {
|
|
364
|
-
if (!e.length || Array.isArray(e[0])) return
|
|
365
|
-
if ("object" == typeof e[0]) return
|
|
366
|
-
} else if ("object" == typeof e) return "string" == typeof e.data && (e.data = JSON.parse(e.data)), Array.isArray(e.data) && (e.fields || (e.fields = e.meta && e.meta.fields || r2), e.fields || (e.fields = Array.isArray(e.data[0]) ? e.fields : "object" == typeof e.data[0] ? Object.keys(e.data[0]) : []), Array.isArray(e.data[0]) || "object" == typeof e.data[0] || (e.data = [e.data])),
|
|
364
|
+
if (!e.length || Array.isArray(e[0])) return n4(null, e, i2);
|
|
365
|
+
if ("object" == typeof e[0]) return n4(r2 || Object.keys(e[0]), e, i2);
|
|
366
|
+
} else if ("object" == typeof e) return "string" == typeof e.data && (e.data = JSON.parse(e.data)), Array.isArray(e.data) && (e.fields || (e.fields = e.meta && e.meta.fields || r2), e.fields || (e.fields = Array.isArray(e.data[0]) ? e.fields : "object" == typeof e.data[0] ? Object.keys(e.data[0]) : []), Array.isArray(e.data[0]) || "object" == typeof e.data[0] || (e.data = [e.data])), n4(e.fields || [], e.data || [], i2);
|
|
367
367
|
throw new Error("Unable to serialize unrecognized input");
|
|
368
|
-
function
|
|
369
|
-
var r4 = "",
|
|
370
|
-
if (
|
|
368
|
+
function n4(e2, t2, i4) {
|
|
369
|
+
var r4 = "", n5 = ("string" == typeof e2 && (e2 = JSON.parse(e2)), "string" == typeof t2 && (t2 = JSON.parse(t2)), Array.isArray(e2) && 0 < e2.length), s4 = !Array.isArray(t2[0]);
|
|
370
|
+
if (n5 && _5) {
|
|
371
371
|
for (var a5 = 0; a5 < e2.length; a5++) 0 < a5 && (r4 += m4), r4 += k3(e2[a5], a5);
|
|
372
|
-
0 <
|
|
372
|
+
0 < t2.length && (r4 += y5);
|
|
373
373
|
}
|
|
374
|
-
for (var o5 = 0; o5 <
|
|
375
|
-
var h5 = (
|
|
376
|
-
if (i4 && !
|
|
374
|
+
for (var o5 = 0; o5 < t2.length; o5++) {
|
|
375
|
+
var h5 = (n5 ? e2 : t2[o5]).length, u5 = false, d3 = n5 ? 0 === Object.keys(t2[o5]).length : 0 === t2[o5].length;
|
|
376
|
+
if (i4 && !n5 && (u5 = "greedy" === i4 ? "" === t2[o5].join("").trim() : 1 === t2[o5].length && 0 === t2[o5][0].length), "greedy" === i4 && n5) {
|
|
377
377
|
for (var f5 = [], l2 = 0; l2 < h5; l2++) {
|
|
378
378
|
var c4 = s4 ? e2[l2] : l2;
|
|
379
|
-
f5.push(
|
|
379
|
+
f5.push(t2[o5][c4]);
|
|
380
380
|
}
|
|
381
381
|
u5 = "" === f5.join("").trim();
|
|
382
382
|
}
|
|
383
383
|
if (!u5) {
|
|
384
384
|
for (var p4 = 0; p4 < h5; p4++) {
|
|
385
385
|
0 < p4 && !d3 && (r4 += m4);
|
|
386
|
-
var g4 =
|
|
387
|
-
r4 += k3(
|
|
386
|
+
var g4 = n5 && s4 ? e2[p4] : p4;
|
|
387
|
+
r4 += k3(t2[o5][g4], p4);
|
|
388
388
|
}
|
|
389
|
-
o5 <
|
|
389
|
+
o5 < t2.length - 1 && (!i4 || 0 < h5 && !d3) && (r4 += y5);
|
|
390
390
|
}
|
|
391
391
|
}
|
|
392
392
|
return r4;
|
|
393
393
|
}
|
|
394
|
-
function k3(e2,
|
|
395
|
-
var i4, r4,
|
|
396
|
-
return null == e2 ? "" : e2.constructor === Date ? JSON.stringify(e2).slice(1, 25) : (
|
|
397
|
-
for (var i5 = 0; i5 <
|
|
394
|
+
function k3(e2, t2) {
|
|
395
|
+
var i4, r4, n5;
|
|
396
|
+
return null == e2 ? "" : e2.constructor === Date ? JSON.stringify(e2).slice(1, 25) : (n5 = false, h4 && "string" == typeof e2 && h4.test(e2) && (e2 = "'" + e2, n5 = true), r4 = (i4 = e2.toString()).replace(u4, o4), (n5 = n5 || true === s2 || "function" == typeof s2 && s2(e2, t2) || Array.isArray(s2) && s2[t2] || ((e4, t4) => {
|
|
397
|
+
for (var i5 = 0; i5 < t4.length; i5++) if (-1 < e4.indexOf(t4[i5])) return true;
|
|
398
398
|
return false;
|
|
399
399
|
})(r4, v3.BAD_DELIMITERS) || -1 < r4.indexOf(m4) || -1 < i4.indexOf(a4) || " " === r4.charAt(0) || " " === r4.charAt(r4.length - 1)) ? a4 + r4 + a4 : r4);
|
|
400
400
|
}
|
|
401
|
-
}, v3.RECORD_SEP = String.fromCharCode(30), v3.UNIT_SEP = String.fromCharCode(31), v3.BYTE_ORDER_MARK = "\uFEFF", v3.BAD_DELIMITERS = ["\r", "\n", '"', v3.BYTE_ORDER_MARK], v3.WORKERS_SUPPORTED = !s && !!
|
|
401
|
+
}, v3.RECORD_SEP = String.fromCharCode(30), v3.UNIT_SEP = String.fromCharCode(31), v3.BYTE_ORDER_MARK = "\uFEFF", v3.BAD_DELIMITERS = ["\r", "\n", '"', v3.BYTE_ORDER_MARK], v3.WORKERS_SUPPORTED = !s && !!n2.Worker, v3.NODE_STREAM_INPUT = 1, v3.LocalChunkSize = 10485760, v3.RemoteChunkSize = 5242880, v3.DefaultDelimiter = ",", v3.Parser = E4, v3.ParserHandle = i, v3.NetworkStreamer = f4, v3.FileStreamer = l, v3.StringStreamer = c2, v3.ReadableStreamStreamer = p2, n2.jQuery && ((d2 = n2.jQuery).fn.parse = function(o4) {
|
|
402
402
|
var i2 = o4.config || {}, h4 = [];
|
|
403
403
|
return this.each(function(e2) {
|
|
404
|
-
if (!("INPUT" === d2(this).prop("tagName").toUpperCase() && "file" === d2(this).attr("type").toLowerCase() &&
|
|
405
|
-
for (var
|
|
404
|
+
if (!("INPUT" === d2(this).prop("tagName").toUpperCase() && "file" === d2(this).attr("type").toLowerCase() && n2.FileReader) || !this.files || 0 === this.files.length) return true;
|
|
405
|
+
for (var t = 0; t < this.files.length; t++) h4.push({ file: this.files[t], inputElem: this, instanceConfig: d2.extend({}, i2) });
|
|
406
406
|
}), e(), this;
|
|
407
407
|
function e() {
|
|
408
408
|
if (0 === h4.length) q2(o4.complete) && o4.complete();
|
|
409
409
|
else {
|
|
410
|
-
var e2,
|
|
410
|
+
var e2, t, i4, r2, n4 = h4[0];
|
|
411
411
|
if (q2(o4.before)) {
|
|
412
|
-
var s2 = o4.before(
|
|
412
|
+
var s2 = o4.before(n4.file, n4.inputElem);
|
|
413
413
|
if ("object" == typeof s2) {
|
|
414
|
-
if ("abort" === s2.action) return e2 = "AbortError",
|
|
414
|
+
if ("abort" === s2.action) return e2 = "AbortError", t = n4.file, i4 = n4.inputElem, r2 = s2.reason, void (q2(o4.error) && o4.error({ name: e2 }, t, i4, r2));
|
|
415
415
|
if ("skip" === s2.action) return void u4();
|
|
416
|
-
"object" == typeof s2.config && (
|
|
416
|
+
"object" == typeof s2.config && (n4.instanceConfig = d2.extend(n4.instanceConfig, s2.config));
|
|
417
417
|
} else if ("skip" === s2) return void u4();
|
|
418
418
|
}
|
|
419
|
-
var a4 =
|
|
420
|
-
|
|
421
|
-
q2(a4) && a4(e4,
|
|
422
|
-
}, v3.parse(
|
|
419
|
+
var a4 = n4.instanceConfig.complete;
|
|
420
|
+
n4.instanceConfig.complete = function(e4) {
|
|
421
|
+
q2(a4) && a4(e4, n4.file, n4.inputElem), u4();
|
|
422
|
+
}, v3.parse(n4.file, n4.instanceConfig);
|
|
423
423
|
}
|
|
424
424
|
}
|
|
425
425
|
function u4() {
|
|
426
426
|
h4.splice(0, 1), e();
|
|
427
427
|
}
|
|
428
|
-
}), a2 && (
|
|
428
|
+
}), a2 && (n2.onmessage = function(e) {
|
|
429
429
|
e = e.data;
|
|
430
430
|
void 0 === v3.WORKER_ID && e && (v3.WORKER_ID = e.workerId);
|
|
431
|
-
"string" == typeof e.input ?
|
|
431
|
+
"string" == typeof e.input ? n2.postMessage({ workerId: v3.WORKER_ID, results: v3.parse(e.input, e.config), finished: true }) : (n2.File && e.input instanceof File || e.input instanceof Object) && (e = v3.parse(e.input, e.config)) && n2.postMessage({ workerId: v3.WORKER_ID, results: e, finished: true });
|
|
432
432
|
}), (f4.prototype = Object.create(u2.prototype)).constructor = f4, (l.prototype = Object.create(u2.prototype)).constructor = l, (c2.prototype = Object.create(c2.prototype)).constructor = c2, (p2.prototype = Object.create(u2.prototype)).constructor = p2, v3;
|
|
433
433
|
});
|
|
434
434
|
}
|
|
@@ -504,15 +504,15 @@ var Yn = 1;
|
|
|
504
504
|
var Zn = 1.08883;
|
|
505
505
|
var EPS = 216 / 24389;
|
|
506
506
|
var KAPPA = 24389 / 27;
|
|
507
|
-
function f(
|
|
508
|
-
return
|
|
507
|
+
function f(t) {
|
|
508
|
+
return t > EPS ? Math.cbrt(t) : (KAPPA * t + 16) / 116;
|
|
509
509
|
}
|
|
510
510
|
function rgbToLab(r, g3, b2) {
|
|
511
|
-
const R2 = linearise(r), G3 = linearise(g3),
|
|
512
|
-
const
|
|
513
|
-
const
|
|
514
|
-
const
|
|
515
|
-
const fx = f(
|
|
511
|
+
const R2 = linearise(r), G3 = linearise(g3), B3 = linearise(b2);
|
|
512
|
+
const X4 = 0.4124564 * R2 + 0.3575761 * G3 + 0.1804375 * B3;
|
|
513
|
+
const Y4 = 0.2126729 * R2 + 0.7151522 * G3 + 0.072175 * B3;
|
|
514
|
+
const Z3 = 0.0193339 * R2 + 0.119192 * G3 + 0.9503041 * B3;
|
|
515
|
+
const fx = f(X4 / Xn), fy = f(Y4 / Yn), fz = f(Z3 / Zn);
|
|
516
516
|
return { L: 116 * fy - 16, a: 500 * (fx - fy), b: 200 * (fy - fz) };
|
|
517
517
|
}
|
|
518
518
|
function hexToLab(hex2) {
|
|
@@ -562,18 +562,18 @@ function deltaE2000(c1, c2) {
|
|
|
562
562
|
return Math.sqrt(tL * tL + tC * tC + tH * tH + RT * tC * tH);
|
|
563
563
|
}
|
|
564
564
|
function labToHex(lab) {
|
|
565
|
-
const finv = (
|
|
566
|
-
const t32 =
|
|
567
|
-
return t32 > EPS ? t32 : (116 *
|
|
565
|
+
const finv = (t) => {
|
|
566
|
+
const t32 = t * t * t;
|
|
567
|
+
return t32 > EPS ? t32 : (116 * t - 16) / KAPPA;
|
|
568
568
|
};
|
|
569
569
|
const fy = (lab.L + 16) / 116, fx = fy + lab.a / 500, fz = fy - lab.b / 200;
|
|
570
|
-
const
|
|
571
|
-
const
|
|
572
|
-
const
|
|
570
|
+
const X4 = Xn * finv(fx);
|
|
571
|
+
const Y4 = Yn * (lab.L > KAPPA * EPS ? fy * fy * fy : lab.L / KAPPA);
|
|
572
|
+
const Z3 = Zn * finv(fz);
|
|
573
573
|
const lin = [
|
|
574
|
-
3.2404542 *
|
|
575
|
-
-0.969266 *
|
|
576
|
-
0.0556434 *
|
|
574
|
+
3.2404542 * X4 - 1.5371385 * Y4 - 0.4985314 * Z3,
|
|
575
|
+
-0.969266 * X4 + 1.8760108 * Y4 + 0.041556 * Z3,
|
|
576
|
+
0.0556434 * X4 - 0.2040259 * Y4 + 1.0572252 * Z3
|
|
577
577
|
];
|
|
578
578
|
return "#" + lin.map((v3) => {
|
|
579
579
|
const c2 = Math.max(0, Math.min(1, v3));
|
|
@@ -657,8 +657,8 @@ function censusColourSpread(container, doc) {
|
|
|
657
657
|
g3.n++;
|
|
658
658
|
byTag.set(p2.tag, g3);
|
|
659
659
|
}
|
|
660
|
-
const overlays = new Set([...byTag].filter(([, g3]) => g3.fills.size === 1 && g3.n >= MIN_MARKS).map(([
|
|
661
|
-
const restFills = new Set([...byTag].filter(([
|
|
660
|
+
const overlays = new Set([...byTag].filter(([, g3]) => g3.fills.size === 1 && g3.n >= MIN_MARKS).map(([t]) => t));
|
|
661
|
+
const restFills = new Set([...byTag].filter(([t]) => !overlays.has(t)).flatMap(([, g3]) => [...g3.fills]));
|
|
662
662
|
const counted = restFills.size > 1 ? painted.filter((p2) => !overlays.has(p2.tag)) : painted;
|
|
663
663
|
const distinct = /* @__PURE__ */ new Set();
|
|
664
664
|
const cells = /* @__PURE__ */ new Map();
|
|
@@ -678,14 +678,14 @@ function censusColourSpread(container, doc) {
|
|
|
678
678
|
const d2 = cs.map(() => new Array(cs.length).fill(0));
|
|
679
679
|
let span = 0, lo = 0, hi = 1;
|
|
680
680
|
for (let i = 0; i < cs.length; i++) {
|
|
681
|
-
for (let
|
|
682
|
-
const v3 = deltaE2000(cs[i], cs[
|
|
683
|
-
d2[i][
|
|
684
|
-
d2[
|
|
681
|
+
for (let j4 = i + 1; j4 < cs.length; j4++) {
|
|
682
|
+
const v3 = deltaE2000(cs[i], cs[j4]);
|
|
683
|
+
d2[i][j4] = v3;
|
|
684
|
+
d2[j4][i] = v3;
|
|
685
685
|
if (v3 > span) {
|
|
686
686
|
span = v3;
|
|
687
687
|
lo = i;
|
|
688
|
-
hi =
|
|
688
|
+
hi = j4;
|
|
689
689
|
}
|
|
690
690
|
}
|
|
691
691
|
}
|
|
@@ -699,11 +699,11 @@ function censusColourSpread(container, doc) {
|
|
|
699
699
|
if (interior < 2 || slack / interior > RAMP_SLACK_MAX) return EMPTY;
|
|
700
700
|
let crowd = 0;
|
|
701
701
|
for (let i = 0; i < cs.length; i++) {
|
|
702
|
-
let
|
|
703
|
-
for (let
|
|
704
|
-
if (i ===
|
|
702
|
+
let n2 = 0;
|
|
703
|
+
for (let j4 = 0; j4 < cs.length; j4++) {
|
|
704
|
+
if (i === j4 || d2[i][j4] <= SAME_SHADE_DELTA_E) n2 += top[j4].n;
|
|
705
705
|
}
|
|
706
|
-
if (
|
|
706
|
+
if (n2 > crowd) crowd = n2;
|
|
707
707
|
}
|
|
708
708
|
return {
|
|
709
709
|
marks,
|
|
@@ -734,8 +734,8 @@ function normHex(raw) {
|
|
|
734
734
|
const h3 = m2[1].length === 3 ? m2[1].split("").map((c2) => c2 + c2).join("") : m2[1];
|
|
735
735
|
return "#" + h3.toLowerCase();
|
|
736
736
|
}
|
|
737
|
-
function mixLab(a2, b2,
|
|
738
|
-
return { L: a2.L + (b2.L - a2.L) *
|
|
737
|
+
function mixLab(a2, b2, t) {
|
|
738
|
+
return { L: a2.L + (b2.L - a2.L) * t, a: a2.a + (b2.a - a2.a) * t, b: a2.b + (b2.b - a2.b) * t };
|
|
739
739
|
}
|
|
740
740
|
function paintedOver(fg, canvas, alpha) {
|
|
741
741
|
const f4 = [1, 3, 5].map((i) => parseInt(fg.slice(i, i + 2), 16));
|
|
@@ -774,19 +774,19 @@ function resolveAutoColorScale(p2) {
|
|
|
774
774
|
const candidates = p2.isHighContrast ? [normHex(p2.themeAccent), normHex(p2.themeFg)] : [...palette.map(normHex), normHex(p2.themeAccent), normHex(p2.themeFg)];
|
|
775
775
|
const accent = candidates.find(usable) ?? FALLBACK_ACCENT;
|
|
776
776
|
const A2 = hexToLab(accent);
|
|
777
|
-
let
|
|
778
|
-
let low = mixLab(bg, A2,
|
|
779
|
-
while (
|
|
780
|
-
|
|
781
|
-
low = mixLab(bg, A2,
|
|
777
|
+
let t = 0.1;
|
|
778
|
+
let low = mixLab(bg, A2, t);
|
|
779
|
+
while (t < 0.6 && deltaE2000(paintedOver(labToHex(low), canvas, AUTO_RAMP_DRAWN_OPACITY), bg) < SAME_SHADE_DELTA_E) {
|
|
780
|
+
t += 0.02;
|
|
781
|
+
low = mixLab(bg, A2, t);
|
|
782
782
|
}
|
|
783
783
|
const lowHex = labToHex(low);
|
|
784
784
|
let high = { ...A2 };
|
|
785
785
|
let highHex = labToHex(high);
|
|
786
786
|
for (let step = 0; step < 80 && autoRampMinStep(lowHex, highHex, canvas) < AUTO_RAMP_MIN_STEP_DELTA_E; step++) {
|
|
787
|
-
const
|
|
788
|
-
if (
|
|
789
|
-
high = { ...high, L:
|
|
787
|
+
const L4 = Math.max(4, Math.min(98, high.L + (darkCanvas ? 1 : -1)));
|
|
788
|
+
if (L4 === high.L) break;
|
|
789
|
+
high = { ...high, L: L4 };
|
|
790
790
|
highHex = labToHex(high);
|
|
791
791
|
}
|
|
792
792
|
memoKey = key;
|
|
@@ -795,10 +795,10 @@ function resolveAutoColorScale(p2) {
|
|
|
795
795
|
}
|
|
796
796
|
|
|
797
797
|
// src/defaults.ts
|
|
798
|
-
var clamp = (
|
|
798
|
+
var clamp = (n2, lo, hi) => Math.max(lo, Math.min(hi, n2));
|
|
799
799
|
var numberOr = (raw, dflt) => {
|
|
800
|
-
const
|
|
801
|
-
return Number.isFinite(
|
|
800
|
+
const n2 = raw == null || raw === "" ? NaN : Number(raw);
|
|
801
|
+
return Number.isFinite(n2) ? n2 : dflt;
|
|
802
802
|
};
|
|
803
803
|
function resolveOptions(p2) {
|
|
804
804
|
return {
|
|
@@ -825,8 +825,8 @@ function resolveOptions(p2) {
|
|
|
825
825
|
// default here makes the chart and the gate agree in every host. A positive value from
|
|
826
826
|
// the host wins; absent, blank, zero or junk means the shared default.
|
|
827
827
|
maxMapPoints: (() => {
|
|
828
|
-
const
|
|
829
|
-
return
|
|
828
|
+
const n2 = numberOr(p2.maxMapPoints, 0);
|
|
829
|
+
return n2 > 0 ? Math.round(n2) : MAX_MAP_POINTS_DEFAULT;
|
|
830
830
|
})(),
|
|
831
831
|
// FIFTH AND SIXTH OCCURRENCES, and the two that argue hardest for the guard test: both
|
|
832
832
|
// were passed by the visual AND read by the charts, and neither was ever declared here or
|
|
@@ -1038,17 +1038,17 @@ var H = "AB|CA|Alberta|-113.75|52.18,AK|US|Alaska|-148.32|61.29,AL|US|Alabama|-8
|
|
|
1038
1038
|
var X = "006|-66.84|18.26,007|-66.15|18.15,008|-64.74|17.74,009|-66.12|18.37,010|-72.6|42.26,011|-72.53|42.07,012|-73.21|42.37,013|-72.51|42.58,014|-71.81|42.59,015|-71.85|42.23,016|-71.84|42.28,017|-71.44|42.33,018|-71.21|42.64,019|-70.89|42.66,020|-71.28|42.12,021|-71.05|42.31,022|-71.04|42.35,023|-70.86|41.98,024|-71.22|42.37,025|-70.6|41.71,026|-70.2|41.73,027|-71.07|41.77,028|-71.62|41.69,029|-71.47|41.82,030|-71.51|42.9,031|-71.48|43,032|-71.65|43.57,033|-71.58|43.26,034|-72.19|42.91,035|-71.31|44.69,036|-72.32|43.17,037|-72.13|43.69,038|-71.1|43.56,039|-70.76|43.24,040|-70.6|43.78,041|-70.27|43.7,042|-70.49|44.38,043|-69.75|44.3,044|-68.83|45.45,045|-69.57|43.99,046|-67.8|44.79,047|-68.34|46.55,048|-69.17|44.2,049|-69.97|44.99,050|-72.43|43.85,051|-72.65|43.28,052|-73.14|43.03,053|-72.77|42.94,054|-72.98|44.58,056|-72.6|44.35,057|-73.04|43.69,058|-72.12|44.68,059|-71.7|44.79,060|-72.81|41.88,061|-72.69|41.74,062|-72.12|41.81,063|-72.03|41.5,064|-72.61|41.46,065|-72.94|41.36,066|-73.22|41.24,067|-73.24|41.68,068|-73.42|41.28,069|-73.57|41.14,070|-74.28|40.76,071|-74.2|40.74,072|-74.2|40.68,073|-74.08|40.71,074|-74.4|41.09,075|-74.17|40.92,076|-74.01|40.94,077|-74.17|40.28,078|-74.81|40.97,079|-74.55|40.74,080|-74.98|39.78,081|-75.07|39.94,082|-74.68|39.32,083|-75.04|39.45,084|-74.48|39.35,085|-74.62|40.25,086|-74.68|40.23,087|-74.22|39.96,088|-74.72|40.54,089|-74.48|40.45,100|-73.96|40.77,101|-73.95|40.78,102|-74.02|40.72,103|-74.15|40.58,104|-73.85|40.9,105|-73.75|41.27,106|-73.74|41.02,107|-73.84|40.96,108|-73.8|40.95,109|-74.27|41.3,110|-73.69|40.74,111|-73.93|40.76,112|-73.94|40.66,113|-73.84|40.73,114|-73.77|40.69,115|-73.62|40.71,116|-73.88|40.57,117|-73.23|40.82,118|-73.5|40.77,119|-72.53|40.95,120|-74.22|42.92,121|-74.4|43.46,122|-73.81|42.7,123|-73.96|42.82,124|-74.27|42.09,125|-73.7|41.89,126|-73.88|41.69,127|-74.75|41.74,128|-73.91|43.61,129|-74.03|44.53,130|-76.16|43.08,131|-76.46|43.27,132|-76.2|43.03,133|-75.07|43.45,134|-75.35|43.03,135|-75.15|43.14,136|-75.39|44.33,137|-75.2|42.21,138|-75.46|42.43,139|-75.88|42.12,140|-78.48|43.01,141|-78.7|42.49,142|-78.8|42.91,143|-78.96|43.12,144|-77.71|42.96,145|-77.17|43.14,146|-77.65|43.17,147|-78.84|42.21,148|-77.18|42.29,149|-76.78|42.09,150|-80.23|40.56,151|-80.18|40.53,152|-79.97|40.46,153|-80.24|40.01,154|-79.65|39.92,155|-78.8|39.95,156|-79.47|40.33,157|-79.02|40.71,158|-78.66|41.32,159|-78.84|40.35,160|-79.88|40.93,161|-80.3|41.19,162|-79.35|41.08,163|-79.58|41.59,164|-80|41.87,165|-80.04|42.1,166|-78.28|40.48,167|-78.47|41.76,168|-78|40.97,169|-77.37|41.8,170|-77.29|40.44,171|-76.78|40.33,172|-77.81|39.98,173|-76.93|39.89,174|-76.72|39.97,175|-76.24|40.05,176|-76.34|40.05,177|-77.22|41.34,178|-76.77|40.93,179|-76.27|40.69,180|-75.45|40.67,181|-75.47|40.6,182|-75.88|40.9,183|-75.19|41.12,184|-75.38|41.53,185|-75.68|41.37,186|-76.17|41.4,187|-75.86|41.22,188|-76.12|41.82,189|-75.14|40.36,190|-75.37|39.97,191|-75.15|40.01,193|-75.78|39.92,194|-75.46|40.19,195|-75.9|40.42,196|-75.95|40.34,197|-75.68|39.53,198|-75.58|39.77,199|-75.46|38.83,200|-77.02|38.9,201|-77.68|38.9,202|-77.03|38.89,203|-77.01|38.86,204|-77.05|38.89,205|-77.01|38.87,206|-76.76|38.45,207|-76.78|38.88,208|-77.23|39.15,209|-76.99|39.05,210|-76.32|39.53,211|-76.73|39.58,212|-76.58|39.31,214|-76.55|39,215|-79.08|39.56,216|-76.02|38.86,217|-77.5|39.52,218|-75.57|38.27,219|-75.94|39.57,220|-77.25|38.78,221|-77.25|38.92,222|-77.11|38.88,223|-77.13|38.79,224|-77.25|38.22,225|-77.51|38.09,226|-78.25|39.03,227|-78.05|38.49,228|-78.79|38.57,229|-78.55|38.02,230|-78.09|37.66,231|-76.96|37.55,232|-77.46|37.51,233|-76.3|36.68,234|-76.66|36.77,235|-76.26|36.87,236|-76.44|37.12,237|-76.38|36.85,238|-77.41|36.94,239|-78.39|37.03,240|-80.1|37.23,241|-79.89|36.9,242|-82.49|36.83,243|-81.13|36.86,244|-79.51|38.05,245|-79.11|37.15,246|-81.8|37.19,247|-81.14|37.39,248|-81.64|37.47,249|-80.32|37.95,250|-81.45|38.27,251|-81.89|38.64,252|-81.45|38.77,253|-81.64|38.42,254|-78.11|39.45,255|-82.19|38.25,256|-82.08|37.76,257|-82.41|38.4,258|-81.21|37.72,259|-80.89|37.83,260|-80.63|40.05,261|-81.27|39.2,262|-80.02|38.75,263|-80.23|39.27,264|-80.65|39.21,265|-80.05|39.59,266|-80.8|38.48,267|-78.98|39.33,268|-79.12|38.88,270|-80.45|36.24,271|-80.24|36.06,272|-79.82|35.86,273|-79.52|35.55,274|-79.81|36.09,275|-78.54|35.93,276|-78.65|35.81,277|-78.9|35.99,278|-77.32|35.88,279|-76.5|36.19,280|-81.2|35.4,281|-80.41|35.21,282|-80.83|35.22,283|-78.94|34.96,284|-78.23|34.39,285|-77.23|35.06,286|-81.36|36.06,287|-82.78|35.51,288|-82.55|35.6,289|-83.97|35.11,290|-80.88|34.19,291|-80.62|33.71,292|-80.96|34.04,293|-81.86|34.78,294|-80.08|33.05,295|-79.49|34.07,296|-82.57|34.61,297|-80.92|34.83,298|-81.74|33.51,299|-80.96|32.55,300|-84.08|33.85,301|-84.91|34.04,302|-84.55|33.25,303|-84.42|33.77,304|-82.11|32.48,305|-83.81|34.58,306|-83.14|33.86,307|-85.1|34.71,308|-82.34|33.35,309|-82.01|33.4,310|-83.42|32.64,312|-83.64|32.83,313|-81.49|31.68,314|-81.15|32.03,315|-82.21|31.4,316|-83.21|31.02,317|-83.87|31.48,318|-84.69|32.45,319|-84.95|32.47,320|-82.58|30.27,321|-81.48|29.39,322|-81.69|30.3,323|-84.25|30.29,324|-85.58|30.55,325|-87.03|30.76,326|-82.6|29.58,327|-81.28|28.79,328|-81.32|28.47,329|-80.67|27.96,330|-80.58|25.31,331|-80.38|25.74,333|-80.25|26.13,334|-81.01|26.64,335|-82.22|28.19,336|-82.47|28.01,337|-82.73|27.85,338|-81.64|27.72,339|-81.71|26.77,341|-81.32|26.11,342|-82.16|27.29,344|-82.35|29.01,346|-82.52|28.41,347|-81.4|28.29,349|-80.72|27.34,350|-86.8|34.05,351|-86.38|33.43,352|-86.77|33.5,354|-87.86|33.07,355|-87.71|33.96,356|-87.4|34.67,357|-86.26|34.75,358|-86.59|34.69,359|-85.94|34.27,360|-86.09|32.09,361|-86.27|32.31,362|-85.65|33.53,363|-85.56|31.34,364|-86.97|31.38,365|-88.14|31.32,366|-88.19|30.68,367|-87.34|32.33,368|-85.41|32.61,369|-88.25|32.12,370|-87.02|36.12,371|-86.23|35.75,372|-86.83|36.15,373|-85.36|35.32,374|-85.33|35.06,376|-82.3|36.36,377|-84.31|36.27,378|-83.35|36.3,379|-83.97|35.97,380|-89.43|35.55,381|-89.96|35.1,382|-88.68|36.29,383|-88.5|35.61,384|-87.36|35.34,385|-85.34|36.18,386|-89.76|34.57,387|-90.81|33.54,388|-88.63|34.36,389|-89.9|33.77,390|-90|32.53,391|-90.67|32.51,392|-90.22|32.32,393|-88.8|32.42,394|-89.26|31.23,395|-89|30.59,396|-90.67|31.32,397|-88.87|33.53,398|-84.67|31.32,400|-85.29|38.07,401|-86.2|37.85,402|-85.66|38.19,403|-84.2|38.06,404|-84.42|37.53,405|-84.45|38.04,406|-84.87|38.22,407|-84.12|36.95,408|-83.26|36.9,409|-83.74|36.95,410|-84.32|38.64,411|-83.06|38.38,412|-82.67|37.89,413|-83.48|37.58,414|-83.15|37.84,415|-82.39|37.46,416|-82.78|37.54,417|-83.25|37.23,418|-82.88|37.21,420|-88.57|36.9,421|-86.09|36.89,422|-87.11|36.95,423|-87.02|37.52,424|-87.7|37.47,425|-84.71|37.15,426|-84.82|36.81,427|-85.73|37.32,430|-82.9|40.21,431|-82.99|39.69,432|-82.97|39.98,433|-83.38|40.55,434|-83.3|41.42,435|-84.22|41.46,436|-83.54|41.67,437|-81.66|39.85,438|-81.88|40.27,439|-80.9|40.25,440|-80.97|41.64,441|-81.66|41.42,442|-81.6|41.13,443|-81.54|41.07,444|-80.77|41.09,445|-80.64|41.05,446|-81.53|40.65,447|-81.39|40.83,448|-82.77|41.02,449|-82.55|40.74,450|-84.48|39.43,451|-83.84|39.16,452|-84.48|39.18,453|-84.3|39.97,454|-84.18|39.74,455|-83.81|39.94,456|-82.86|38.99,457|-81.78|39.35,458|-84.23|40.83,460|-86.13|40.17,461|-86.18|39.62,462|-86.14|39.79,463|-87.05|41.41,464|-87.34|41.55,465|-86.08|41.44,466|-86.28|41.66,467|-85.21|41.17,468|-85.17|41.09,469|-86.14|40.76,470|-85.08|39.16,471|-86.02|38.43,472|-85.74|39.05,473|-85.15|40.09,474|-86.63|38.99,475|-87.03|38.46,476|-87.53|38.13,477|-87.58|38.03,478|-87.29|39.45,479|-87.11|40.5,480|-82.79|42.83,481|-83.62|42.2,482|-83.1|42.38,483|-83.35|42.66,484|-83.22|43.29,485|-83.69|43.03,486|-84.36|43.99,487|-83.67|44.45,488|-84.67|43.02,489|-84.59|42.74,490|-85.54|42.2,491|-86.36|41.87,492|-84.36|42.06,493|-85.57|43.33,494|-86.14|43.39,495|-85.66|42.96,496|-85.52|44.44,497|-84.37|45.17,498|-86.94|46.17,499|-88.93|46.6,500|-94.77|41.63,501|-92.79|41.84,502|-93.67|42.12,503|-93.63|41.59,504|-93.37|43.17,505|-94.45|42.77,506|-92.45|42.65,507|-92.31|42.49,508|-94.56|40.96,510|-95.91|42.6,511|-96.39|42.52,512|-96.06|43.28,513|-95.16|43.27,514|-95.08|42.11,515|-95.55|41.44,516|-95.37|40.74,520|-90.98|42.46,521|-91.73|43.2,522|-92.31|41.9,523|-91.66|41.87,524|-91.69|41.96,525|-92.46|40.95,526|-91.44|40.88,527|-90.88|41.64,528|-90.61|41.56,530|-88.24|43.51,531|-88.33|42.75,532|-87.98|43.06,534|-87.86|42.74,535|-89.66|42.95,537|-89.38|43.08,538|-90.73|42.88,539|-89.55|43.64,540|-92.46|45.08,541|-88.23|45.09,542|-87.6|44.52,543|-88.01|44.53,544|-89.85|44.93,545|-89.86|45.89,546|-90.87|43.93,547|-91.52|44.85,548|-91.63|46.04,549|-88.96|44.19,550|-92.98|45.17,551|-93.08|44.96,553|-94.06|44.99,554|-93.31|45.01,556|-91.03|47.67,557|-92.68|47.39,558|-92.08|46.96,559|-92.28|43.89,560|-94.04|44.02,561|-95.65|43.92,562|-95.75|45.08,563|-94.59|45.83,564|-94.5|46.63,565|-96.08|46.86,566|-94.31|47.88,567|-96.22|48.39,570|-97.07|43.48,571|-96.76|43.54,572|-97.18|45.04,573|-98.53|43.91,574|-98.93|45.36,575|-100.61|43.86,576|-101.59|45.43,577|-103.11|44.26,580|-97.39|46.66,581|-96.83|46.86,582|-97.72|48.25,583|-99.34|48.32,584|-99.12|46.88,585|-100.98|46.76,586|-102.99|46.75,587|-101.7|48.34,588|-103.48|48.2,590|-108.62|45.98,591|-108.45|45.69,592|-105.6|48.2,593|-105.58|46.4,594|-111.24|47.79,595|-109.12|48.38,596|-111.74|46.65,597|-112.31|45.48,598|-114.25|46.97,599|-114.57|48.37,600|-88.15|42.29,601|-88.47|42.01,602|-87.69|42.04,603|-87.79|41.89,604|-88.09|41.39,605|-88.55|41.69,606|-87.69|41.83,607|-87.82|42.03,608|-87.76|41.84,609|-87.92|40.8,610|-89.56|42.18,611|-89.08|42.28,612|-90.29|41.5,613|-89.16|41.34,614|-90.43|40.82,615|-89.68|40.71,616|-89.61|40.72,617|-88.89|40.52,618|-88.15|40.11,619|-88.19|39.66,620|-90.01|39.13,622|-89.72|38.41,623|-91.02|39.99,624|-88.19|39.04,625|-89.21|39.63,626|-90|39.86,627|-89.66|39.8,628|-88.65|38.35,629|-88.89|37.55,630|-90.83|38.35,631|-90.32|38.64,633|-91.11|39.02,634|-91.78|39.93,635|-92.61|40.2,636|-90.64|37.61,637|-89.81|37.37,638|-89.73|36.55,639|-90.62|36.84,640|-94.1|39.07,641|-94.58|39.14,644|-94.69|40.13,645|-94.83|39.75,646|-93.55|39.89,647|-94.15|38.06,648|-94.35|36.93,650|-92.23|38.45,651|-92.19|38.51,652|-92.38|39.21,653|-93.26|38.71,654|-92.03|37.93,655|-91.92|37.67,656|-93.08|36.76,657|-92.43|37.03,658|-93.3|37.22,660|-95.12|38.84,661|-94.73|39.11,662|-94.72|38.95,664|-96.15|39.64,665|-96.34|39.4,666|-95.76|39.06,667|-95.23|37.64,668|-96.39|38.36,669|-97.86|39.77,670|-98.49|37.33,671|-98.4|37.44,672|-97.33|37.7,673|-95.81|37.23,674|-97.79|38.98,675|-98.99|38.25,676|-99.47|39.34,677|-101.15|39.35,678|-100.82|37.91,679|-101.43|37.18,680|-96.46|41.55,681|-96.05|41.24,683|-96.93|40.39,684|-97.26|40.89,685|-96.69|40.82,686|-97.68|41.55,687|-98.16|42.43,688|-99.15|41.34,689|-98.9|40.34,690|-100.99|40.37,691|-101.59|41.42,692|-100.64|42.67,693|-102.84|42.29,700|-89.93|29.63,701|-89.93|30.02,703|-90.65|29.62,704|-90.27|30.66,705|-92.25|30.2,706|-93.21|30.34,707|-91.2|30.57,708|-91.1|30.45,710|-93.4|32.45,711|-93.75|32.47,712|-91.95|32.56,713|-91.86|31.43,714|-92.84|31.57,716|-91.75|33.61,717|-92.79|33.48,718|-93.84|33.66,719|-93.61|34.4,720|-91.9|34.92,721|-92.56|34.93,722|-92.37|34.7,723|-90.59|35.07,724|-90.76|36.04,725|-91.81|36.01,726|-92.93|36.15,727|-94.05|36.11,728|-93.33|35.3,729|-94.08|35.29,730|-97.83|35.31,731|-97.5|35.43,734|-97.14|34.21,735|-98.81|34.53,736|-99.33|35.52,737|-98.2|36.42,738|-99.54|36.5,739|-101.67|36.74,740|-96.19|36.34,741|-95.96|36.15,743|-95.02|36.55,744|-95.44|35.64,745|-95.65|34.66,746|-97.05|36.71,747|-95.41|34.02,748|-96.66|35.17,749|-94.69|35.23,750|-96.76|33.06,751|-96.32|32.48,752|-96.78|32.79,753|-96.84|32.81,754|-95.67|33.37,755|-94.45|33.3,756|-94.58|32.49,757|-95.37|32.24,758|-95.68|31.44,759|-94.29|31.29,760|-97.54|32.59,761|-97.38|32.77,762|-97.44|33.52,763|-98.87|33.73,764|-98.59|32.61,765|-97.62|31.11,766|-97.06|31.7,767|-97.15|31.57,768|-99.37|31.23,769|-100.88|31.03,770|-95.39|29.79,772|-95.37|29.77,773|-95.24|30.48,774|-96.02|29.38,775|-94.98|29.68,776|-94.16|30.27,777|-94.19|29.96,778|-96.32|30.67,779|-96.95|28.92,780|-99.01|28.67,781|-97.93|29.08,782|-98.53|29.47,783|-98.14|27.63,784|-97.44|27.73,785|-98.19|26.39,786|-98.1|30.27,787|-97.78|30.3,788|-100.26|29.44,789|-96.87|29.92,790|-101.63|35.48,791|-101.85|35.21,792|-100.57|34.25,793|-102.15|33.37,794|-101.88|33.58,795|-100.31|32.7,796|-99.72|32.46,797|-102.22|31.57,798|-104.17|30.53,799|-106.16|31.8,800|-105.11|39.91,801|-104.47|39.51,802|-104.93|39.78,803|-105.31|40.04,804|-106.16|39.98,805|-105.35|40.57,806|-104.49|40.38,807|-103.09|40.4,808|-103.16|39.12,809|-104.67|38.79,810|-103.58|37.77,811|-106.39|37.54,812|-106.39|38.46,813|-108.42|37.49,814|-108.02|38.43,815|-108.7|38.92,816|-107.86|39.99,820|-105.27|41.31,821|-110.51|44.57,822|-104.67|42.39,823|-107.03|41.75,824|-108.65|44.32,825|-108.91|43.14,826|-106.43|43.1,827|-105|44.2,828|-106.71|44.55,829|-109.71|42.82,830|-110.51|43.7,831|-110.53|42.6,832|-112.17|42.66,833|-114.23|42.81,834|-111.63|43.86,835|-115.77|46.07,836|-115.99|44,837|-116.04|43.58,838|-116.47|47.77,840|-110.86|40.53,841|-111.81|40.71,843|-112.18|41.67,844|-112.01|41.23,845|-109.72|38.09,846|-111.68|39.63,847|-112.82|37.61,850|-112.09|33.63,851|-111.41|33,852|-111.69|33.6,853|-113.44|33.49,855|-110.3|33.43,856|-110.59|32,857|-111.09|32.18,859|-109.81|34.23,860|-111.15|35.89,863|-112.57|34.85,864|-113.79|35.66,865|-109.55|36.03,870|-106.9|35.22,871|-106.72|35.12,873|-108.56|35.44,874|-108.23|36.59,875|-106.04|36.27,877|-104.68|36.06,878|-107.94|34,879|-107.48|33.2,880|-108.03|32.37,881|-103.81|34.26,882|-104.07|32.87,883|-105.48|33.62,884|-103.79|35.74,890|-114.84|37,891|-115.42|36.33,893|-116.96|39.5,894|-118.06|41.29,895|-119.72|39.9,897|-119.8|39.18,898|-115.71|40.95,900|-118.32|34.04,902|-118.76|34.07,903|-118.34|33.95,904|-118.48|34.02,905|-118.33|33.83,906|-118.03|33.93,907|-118.45|33.39,908|-118.18|33.8,910|-118.25|34.28,911|-118.13|34.15,912|-118.25|34.19,913|-118.55|34.36,914|-118.47|34.18,915|-118.33|34.19,916|-118.38|34.18,917|-117.78|34.14,918|-118.13|34.09,919|-116.62|32.73,920|-116.7|33.16,921|-117.14|32.85,922|-115.5|33.59,923|-117.14|34.66,924|-117.33|34.17,925|-117.06|33.68,926|-117.73|33.63,927|-117.85|33.74,928|-117.71|33.85,930|-119.12|34.39,931|-119.97|34.48,932|-119.07|35.98,933|-119.01|35.35,934|-120.5|35.38,935|-118.36|37.37,936|-119.72|36.95,937|-119.85|36.71,939|-121.42|36.34,940|-122.31|37.41,941|-122.44|37.77,943|-122.13|37.44,944|-122.32|37.53,945|-122.05|38.09,946|-122.19|37.78,947|-122.26|37.89,948|-122.3|37.97,949|-122.74|38.14,950|-121.42|36.85,951|-121.76|37.33,952|-120.79|38.14,953|-120.56|37.62,954|-123.15|39.08,955|-123.75|40.5,956|-121.34|38.62,957|-120.86|39.13,958|-121.44|38.58,959|-121.73|39.47,960|-122.42|41.06,961|-120.33|40.52,967|-155.53|19.6,968|-157.83|21.34,969|144.77|13.45,970|-121.45|45.3,971|-123.79|45.64,972|-122.74|45.57,973|-123.26|44.68,974|-123.46|43.61,975|-123.06|42.34,976|-120.4|42.67,977|-120.77|44.32,978|-118.59|45.21,979|-117.63|43.34,980|-121.78|47.42,981|-122.32|47.6,982|-121.79|48.39,983|-123.87|47.96,984|-122.46|47.18,985|-123.27|46.94,986|-122.15|45.99,988|-119.91|48,989|-120.57|46.71,990|-117.56|47.62,991|-118.13|47.91,992|-117.4|47.67,993|-118.82|46.4,994|-117.21|46.2,995|-156.93|60.89,996|-151.66|60.82,997|-146.69|65.19,998|-136.2|58.94,999|-131.24|55.86";
|
|
1039
1039
|
var k = "ABW|-70.02|12.54,AFG|68|34.63,AGO|14.24|-9.84,AIA|-63.06|18.22,ALA|19.93|60.1,ALB|19.81|41.14,AND|1.53|42.51,ARE|55.24|24.99,ARG|-61.28|-32.95,ARM|44.52|40.23,ASM|-170.7|-14.28,ATA|21.28|-80.52,ATF|70.22|-49.35,ATG|-61.84|17.12,AUS|144.91|-33.49,AUT|15.51|47.93,AZE|49.02|40.37,BDI|29.49|-3.34,BEL|4.37|50.89,BEN|2.33|7.65,BES|-68.27|12.15,BFA|-2.08|12.15,BGD|90.42|23.65,BGR|24.92|42.71,BHR|50.57|26.18,BHS|-77.34|25.06,BIH|17.97|44.18,BLM|-62.85|17.9,BLR|27.81|53.57,BLZ|-88.41|17.54,BMU|-64.78|32.29,BOL|-65.79|-17.39,BRA|-45.89|-17.51,BRB|-59.62|13.11,BRN|114.74|4.82,BTN|89.69|27.32,BWA|25.99|-23.43,CAF|18.32|4.94,CAN|-79.4|43.71,CCK|96.82|-12.16,CHE|7.96|47.07,CHL|-71.21|-33.72,CHN|114.44|32,CIV|-4.89|6.16,CMR|11.19|5.41,COD|20.23|-4.72,COG|14.18|-4.04,COK|-159.78|-21.21,COL|-74.85|5.93,COM|43.58|-11.89,CPV|-23.87|15.66,CRI|-84.14|9.99,CUB|-80.25|22.21,CUW|-68.88|12.12,CXR|105.68|-10.42,CYM|-81.38|19.32,CYP|33.31|35,CZE|15.44|49.89,DEU|9.65|51.24,DJI|43.15|11.59,DMA|-61.39|15.3,DNK|11.42|55.79,DOM|-70.07|18.75,DZA|3.55|35.62,ECU|-79.29|-1.4,EGY|31.22|29.84,ERI|38.84|15.25,ESH|-13.19|27.14,ESP|-2.91|39.69,EST|25.17|59.29,ETH|39.02|9.26,FIN|24.87|61.26,FJI|178.2|-17.85,FLK|-57.86|-51.69,FRA|2.87|47.28,FRO|-6.77|62.01,FSM|158.16|6.92,GAB|10.22|-0.06,GBR|-1.37|52.49,GEO|43.92|41.84,GGY|-2.54|49.46,GHA|-0.98|6.4,GIB|-5.35|36.14,GIN|-12.8|9.75,GLP|-61.53|16.23,GMB|-16.59|13.41,GNB|-15.48|11.9,GNQ|9.77|1.86,GRC|23.73|37.98,GRD|-61.75|12.05,GRL|-51.72|64.18,GTM|-90.71|14.73,GUF|-52.64|5.04,GUM|144.82|13.5,GUY|-58.11|6.63,HKG|114.15|22.33,HMD|73.5|-53.1,HND|-87.41|14.94,HRV|16.21|45.31,HTI|-72.34|18.54,HUN|19.21|47.39,IDN|106.85|-6.21,IMN|-4.48|54.15,IND|78.36|21,IOT|71.35|-6.19,IRL|-6.87|53.12,IRN|51.6|34.4,IRQ|44.78|33.65,ISL|-21.7|64.22,ISR|34.97|32.07,ITA|12|42.73,JAM|-76.91|18.03,JEY|-2.1|49.19,JOR|35.96|32.03,JPN|137.27|35.53,KAZ|70.17|47.24,KEN|36.81|-0.97,KGZ|73.96|41.94,KHM|104.7|11.75,KIR|172.98|1.33,KNA|-62.72|17.3,KOR|127.51|36.58,KWT|48.06|29.2,Kosovo|20.9|42.58,LAO|102.6|17.97,LBN|35.53|33.87,LBR|-10.39|6.36,LBY|13.19|32.89,LCA|-60.97|14.04,LIE|9.52|47.14,LKA|80.25|7.25,LSO|27.67|-29.38,LTU|24.18|55.04,LUX|6.08|49.56,LVA|24.13|56.85,MAC|113.55|22.19,MAF|-63.08|18.07,MAR|-6.65|33.43,MCO|7.42|43.74,MDA|28.82|47.09,MDG|47.46|-18.89,MDV|73.51|4.18,MEX|-100.65|21.59,MHL|171.38|7.09,MKD|21.47|41.8,MLI|-7.15|12.95,MLT|14.46|35.91,MMR|96.18|18.74,MNE|19.17|42.53,MNG|105.33|47.94,MNP|145.75|15.21,MOZ|32.58|-25.97,MRT|-14.58|18.01,MSR|-62.21|16.79,MTQ|-61.01|14.64,MUS|57.51|-20.23,MWI|34.34|-14.24,MYS|103.35|3.45,MYT|45.23|-12.77,N. Cyprus|33.56|35.27,NAM|17.19|-21.34,NCL|166.47|-22.26,NER|5.05|14.04,NFK|167.97|-29.05,NGA|5.91|7.87,NIC|-86.17|12.33,NIU|-169.92|-19.05,NLD|5.21|52.09,NOR|9.62|60.46,NPL|84.7|27.64,NRU|166.93|-0.55,NZL|174.54|-38.9,OMN|57.69|23.27,PAK|71.47|30.24,PAN|-79.83|8.98,PCN|-130.1|-25.07,PER|-76.4|-11.18,PHL|121.05|14.65,PLW|134.58|7.52,PNG|147.4|-7.71,POL|19.26|51.79,PRI|-66.24|18.35,PRK|126.54|39.52,PRT|-9.08|39.42,PRY|-57.15|-25.27,PSE|35.23|31.78,PYF|-149.59|-17.57,QAT|51.49|25.32,REU|55.45|-21.08,ROU|25.47|45.38,RUS|51.84|54.52,RWA|29.78|-1.98,SAU|43.01|23.76,SDN|31.67|14.67,SEN|-16.73|14.66,SGP|103.85|1.33,SGS|-36.51|-54.28,SHN|-5.72|-15.92,SJM|15.65|78.22,SLB|159.97|-9.44,SLE|-12.4|8.36,SLV|-89.08|13.7,SMR|12.45|43.94,SOM|44.96|4.91,SPM|-56.18|46.78,SRB|20.62|44.5,SSD|29.91|6.61,STP|6.73|0.34,SUR|-55.18|5.84,SVK|18.69|48.55,SVN|14.83|46.16,SWE|16.03|58.86,SWZ|31.28|-26.43,SXM|-63.05|18.03,SYC|55.46|-4.62,SYR|37.18|35.12,Somaliland|46.23|9.76,TCA|-72.1|21.74,TCD|16.57|11.53,TGO|1.16|6.8,THA|100.71|13.71,TJK|69.39|39.08,TKM|59.4|38.74,TLS|125.65|-8.67,TON|-175.2|-21.14,TTO|-61.4|10.5,TUN|10.23|35.87,TUR|32.1|39.5,TUV|179.19|-8.52,TWN|121.06|24.37,TZA|36.11|-5.88,UGA|32.23|0.59,UKR|32.8|48.99,URY|-56.28|-34.1,USA|-93.51|37.4,UZB|69.22|41.26,VAT|12.45|41.9,VCT|-61.21|13.14,VEN|-67.82|9.83,VGB|-64.62|18.43,VIR|-64.8|17.9,VNM|106.63|10.82,VUT|168.31|-17.74,WLF|-176.17|-13.28,WSM|-171.77|-13.83,YEM|44.62|14.36,ZAF|26.96|-28.33,ZMB|28.41|-13.86,ZWE|30.49|-18.56";
|
|
1040
1040
|
var W = { \u00F8: "o", \u0153: "oe", \u00E6: "ae", \u00DF: "ss", \u0142: "l", \u0111: "d", \u00F0: "d", \u00FE: "th", \u0131: "i", \u0127: "h", \u0167: "t", \u014B: "n", \u0138: "k", \u0259: "e", \u01DD: "e", \u0133: "ij", \u0140: "l", \u017F: "s" };
|
|
1041
|
-
function u(
|
|
1042
|
-
return
|
|
1041
|
+
function u(n2) {
|
|
1042
|
+
return n2.normalize("NFD").replace(/\p{Diacritic}/gu, "").toLowerCase().replace(/[øœæßłđðþıħŧŋəĸ]/g, (e) => W[e]).replace(/[^\p{L}\p{Nd}\s]/gu, " ").replace(/\s+/g, " ").trim();
|
|
1043
1043
|
}
|
|
1044
1044
|
var _ = "AD AND,AE ARE,AF AFG,AG ATG,AI AIA,AL ALB,AM ARM,AO AGO,AQ ATA,AR ARG,AS ASM,AT AUT,AU AUS,AW ABW,AX ALA,AZ AZE,BA BIH,BB BRB,BD BGD,BE BEL,BF BFA,BG BGR,BH BHR,BI BDI,BJ BEN,BL BLM,BM BMU,BN BRN,BO BOL,BQ BES,BR BRA,BS BHS,BT BTN,BV BVT,BW BWA,BY BLR,BZ BLZ,CA CAN,CC CCK,CD COD,CF CAF,CG COG,CH CHE,CI CIV,CK COK,CL CHL,CM CMR,CN CHN,CO COL,CR CRI,CU CUB,CV CPV,CW CUW,CX CXR,CY CYP,CZ CZE,DE DEU,DJ DJI,DK DNK,DM DMA,DO DOM,DZ DZA,EC ECU,EE EST,EG EGY,EH ESH,ER ERI,ES ESP,ET ETH,FI FIN,FJ FJI,FK FLK,FM FSM,FO FRO,FR FRA,GA GAB,GB GBR,GD GRD,GE GEO,GF GUF,GG GGY,GH GHA,GI GIB,GL GRL,GM GMB,GN GIN,GP GLP,GQ GNQ,GR GRC,GS SGS,GT GTM,GU GUM,GW GNB,GY GUY,HK HKG,HM HMD,HN HND,HR HRV,HT HTI,HU HUN,ID IDN,IE IRL,IL ISR,IM IMN,IN IND,IO IOT,IQ IRQ,IR IRN,IS ISL,IT ITA,JE JEY,JM JAM,JO JOR,JP JPN,KE KEN,KG KGZ,KH KHM,KI KIR,KM COM,KN KNA,KP PRK,KR KOR,KW KWT,KY CYM,KZ KAZ,LA LAO,LB LBN,LC LCA,LI LIE,LK LKA,LR LBR,LS LSO,LT LTU,LU LUX,LV LVA,LY LBY,MA MAR,MC MCO,MD MDA,ME MNE,MF MAF,MG MDG,MH MHL,MK MKD,ML MLI,MM MMR,MN MNG,MO MAC,MP MNP,MQ MTQ,MR MRT,MS MSR,MT MLT,MU MUS,MV MDV,MW MWI,MX MEX,MY MYS,MZ MOZ,NA NAM,NC NCL,NE NER,NF NFK,NG NGA,NI NIC,NL NLD,NO NOR,NP NPL,NR NRU,NU NIU,NZ NZL,OM OMN,PA PAN,PE PER,PF PYF,PG PNG,PH PHL,PK PAK,PL POL,PM SPM,PN PCN,PR PRI,PS PSE,PT PRT,PW PLW,PY PRY,QA QAT,RE REU,RO ROU,RS SRB,RU RUS,RW RWA,SA SAU,SB SLB,SC SYC,SD SDN,SE SWE,SG SGP,SH SHN,SI SVN,SJ SJM,SK SVK,SL SLE,SM SMR,SN SEN,SO SOM,SR SUR,SS SSD,ST STP,SV SLV,SX SXM,SY SYR,SZ SWZ,TC TCA,TD TCD,TF ATF,TG TGO,TH THA,TJ TJK,TK TKL,TL TLS,TM TKM,TN TUN,TO TON,TR TUR,TT TTO,TV TUV,TW TWN,TZ TZA,UA UKR,UG UGA,UM UMI,US USA,UY URY,UZ UZB,VA VAT,VC VCT,VE VEN,VG VGB,VI VIR,VN VNM,VU VUT,WF WLF,WS WSM,YE YEM,YT MYT,ZA ZAF,ZM ZMB,ZW ZWE";
|
|
1045
1045
|
var N = (() => {
|
|
1046
|
-
let
|
|
1046
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1047
1047
|
for (let e of _.split(",")) {
|
|
1048
|
-
let [
|
|
1049
|
-
|
|
1048
|
+
let [t, o2] = e.split(" ");
|
|
1049
|
+
t && o2 && n2.set(t, o2);
|
|
1050
1050
|
}
|
|
1051
|
-
return
|
|
1051
|
+
return n2;
|
|
1052
1052
|
})();
|
|
1053
1053
|
var z = new Set(N.keys());
|
|
1054
1054
|
var J = new Set(N.values());
|
|
@@ -1057,11 +1057,11 @@ var Q = { usa: "USA", "u.s.": "USA", "u.s.a.": "USA", us: "USA", america: "USA",
|
|
|
1057
1057
|
var b = null;
|
|
1058
1058
|
function j() {
|
|
1059
1059
|
if (b) return b;
|
|
1060
|
-
let
|
|
1061
|
-
for (let
|
|
1060
|
+
let n2 = /* @__PURE__ */ new Map(), e = ["en", ...v.filter((t) => t !== "en")];
|
|
1061
|
+
for (let t of e) {
|
|
1062
1062
|
let o2 = null;
|
|
1063
1063
|
try {
|
|
1064
|
-
o2 = new Intl.DisplayNames([
|
|
1064
|
+
o2 = new Intl.DisplayNames([t], { type: "region" });
|
|
1065
1065
|
} catch {
|
|
1066
1066
|
continue;
|
|
1067
1067
|
}
|
|
@@ -1074,38 +1074,38 @@ function j() {
|
|
|
1074
1074
|
}
|
|
1075
1075
|
if (!a2 || a2 === i) continue;
|
|
1076
1076
|
let s = u(a2);
|
|
1077
|
-
s && !
|
|
1077
|
+
s && !n2.has(s) && n2.set(s, r);
|
|
1078
1078
|
}
|
|
1079
1079
|
}
|
|
1080
|
-
for (let [
|
|
1081
|
-
let i = u(
|
|
1082
|
-
i &&
|
|
1080
|
+
for (let [t, o2] of Object.entries(Q)) {
|
|
1081
|
+
let i = u(t);
|
|
1082
|
+
i && n2.set(i, o2);
|
|
1083
1083
|
}
|
|
1084
|
-
return b =
|
|
1084
|
+
return b = n2, n2;
|
|
1085
1085
|
}
|
|
1086
|
-
function T(
|
|
1087
|
-
return N.get(String(
|
|
1086
|
+
function T(n2) {
|
|
1087
|
+
return N.get(String(n2 || "").trim().toUpperCase()) ?? null;
|
|
1088
1088
|
}
|
|
1089
|
-
function E(
|
|
1090
|
-
if (
|
|
1091
|
-
let e = String(
|
|
1089
|
+
function E(n2) {
|
|
1090
|
+
if (n2 == null) return null;
|
|
1091
|
+
let e = String(n2).trim();
|
|
1092
1092
|
if (!e) return null;
|
|
1093
|
-
let
|
|
1094
|
-
return
|
|
1093
|
+
let t = e.toUpperCase();
|
|
1094
|
+
return t.length === 3 && J.has(t) ? t : t.length === 2 && z.has(t) ? N.get(t) ?? null : j().get(u(e)) ?? null;
|
|
1095
1095
|
}
|
|
1096
1096
|
var $ = /* @__PURE__ */ new Set(["n a", "none", "null", "nil", "unknown", "not applicable", "not available", "not specified", "unspecified", "missing", "blank", "empty", "tbd", "to be determined"]);
|
|
1097
|
-
function V(
|
|
1098
|
-
return
|
|
1097
|
+
function V(n2) {
|
|
1098
|
+
return n2 ? $.has(n2) : true;
|
|
1099
1099
|
}
|
|
1100
1100
|
var m3 = 80;
|
|
1101
1101
|
var q = { "north-america": "N", world: "W" };
|
|
1102
|
-
function F(
|
|
1103
|
-
let
|
|
1104
|
-
return
|
|
1102
|
+
function F(n2, e) {
|
|
1103
|
+
let t = n2.filter((o2) => o2.row.kinds.includes(q[e || "north-america"]));
|
|
1104
|
+
return t.length ? t : (e || "north-america") === "world" ? n2 : t;
|
|
1105
1105
|
}
|
|
1106
1106
|
var P = a;
|
|
1107
|
-
function L3(
|
|
1108
|
-
|
|
1107
|
+
function L3(n2) {
|
|
1108
|
+
n2 !== P && (P = n2 || "", U = null, L = null, I = null);
|
|
1109
1109
|
}
|
|
1110
1110
|
function n3() {
|
|
1111
1111
|
return P.length > 0;
|
|
@@ -1114,10 +1114,10 @@ var t3 = { US: "washington", CA: "ottawa", MX: "mexico city", GB: "london", FR:
|
|
|
1114
1114
|
var U = null;
|
|
1115
1115
|
function y() {
|
|
1116
1116
|
if (U) return U;
|
|
1117
|
-
let
|
|
1117
|
+
let n2 = /* @__PURE__ */ new Map(), e = P, t = (o2, i, r) => {
|
|
1118
1118
|
if (!o2) return;
|
|
1119
|
-
let a2 =
|
|
1120
|
-
a2 ? a2.some((s) => s.row === i) || a2.push({ row: i, primary: r }) :
|
|
1119
|
+
let a2 = n2.get(o2);
|
|
1120
|
+
a2 ? a2.some((s) => s.row === i) || a2.push({ row: i, primary: r }) : n2.set(o2, [{ row: i, primary: r }]);
|
|
1121
1121
|
};
|
|
1122
1122
|
for (let o2 of e.split(",")) {
|
|
1123
1123
|
let i = o2.split("|");
|
|
@@ -1125,120 +1125,120 @@ function y() {
|
|
|
1125
1125
|
let r = { a1: i[1], cc: i[2], lon: +i[3], lat: +i[4], pop: +i[5], kinds: i[6] || "N" };
|
|
1126
1126
|
i.length > 8 && i[8] && (r.tags = i[8].split(";").filter(Boolean));
|
|
1127
1127
|
let a2 = t3[r.cc];
|
|
1128
|
-
if (a2 && u(i[0]) === a2 && (r.tags || (r.tags = []), r.tags.includes("capital") || r.tags.push("capital")),
|
|
1128
|
+
if (a2 && u(i[0]) === a2 && (r.tags || (r.tags = []), r.tags.includes("capital") || r.tags.push("capital")), t(u(i[0]), r, true), i.length > 7 && i[7]) for (let s of i[7].split(";")) t(u(s), r, false);
|
|
1129
1129
|
}
|
|
1130
|
-
for (let o2 of
|
|
1131
|
-
return U =
|
|
1130
|
+
for (let o2 of n2.values()) o2.sort((i, r) => r.row.pop - i.row.pop);
|
|
1131
|
+
return U = n2, n2;
|
|
1132
1132
|
}
|
|
1133
1133
|
var e3 = 200;
|
|
1134
1134
|
var L = null;
|
|
1135
1135
|
function i3() {
|
|
1136
1136
|
if (L) return L;
|
|
1137
|
-
let
|
|
1138
|
-
for (let [e,
|
|
1137
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1138
|
+
for (let [e, t] of y()) {
|
|
1139
1139
|
if (!e.endsWith(" city")) continue;
|
|
1140
1140
|
let o2 = e.slice(0, -5);
|
|
1141
|
-
!o2 || y().get(o2)?.some((i) => i.primary) ||
|
|
1141
|
+
!o2 || y().get(o2)?.some((i) => i.primary) || t[0].row.pop < e3 || n2.set(o2, t);
|
|
1142
1142
|
}
|
|
1143
|
-
return L =
|
|
1143
|
+
return L = n2, n2;
|
|
1144
1144
|
}
|
|
1145
|
-
function O(
|
|
1146
|
-
if (!
|
|
1147
|
-
let e = y().get(
|
|
1145
|
+
function O(n2) {
|
|
1146
|
+
if (!n2) return;
|
|
1147
|
+
let e = y().get(n2);
|
|
1148
1148
|
if (e?.some((i) => i.primary)) return e;
|
|
1149
|
-
let
|
|
1150
|
-
if (!
|
|
1151
|
-
let o2 =
|
|
1149
|
+
let t = i3().get(n2);
|
|
1150
|
+
if (!t) return e;
|
|
1151
|
+
let o2 = t.map((i) => ({ row: i.row, primary: true }));
|
|
1152
1152
|
return e ? [...o2, ...e] : o2;
|
|
1153
1153
|
}
|
|
1154
1154
|
var I = null;
|
|
1155
1155
|
function o3() {
|
|
1156
1156
|
if (I) return I;
|
|
1157
|
-
let
|
|
1158
|
-
for (let
|
|
1159
|
-
let o2 =
|
|
1160
|
-
o2.length < 3 ||
|
|
1157
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1158
|
+
for (let t of k.split(",")) {
|
|
1159
|
+
let o2 = t.split("|");
|
|
1160
|
+
o2.length < 3 || n2.set(o2[0], { lon: +o2[1], lat: +o2[2] });
|
|
1161
1161
|
}
|
|
1162
1162
|
let e = /* @__PURE__ */ new Map();
|
|
1163
|
-
for (let
|
|
1163
|
+
for (let t of y().values()) for (let o2 of t) {
|
|
1164
1164
|
let i = T(o2.row.cc);
|
|
1165
1165
|
if (!i) continue;
|
|
1166
1166
|
let r = e.get(i);
|
|
1167
|
-
(r === void 0 || o2.row.pop > r) && (e.set(i, o2.row.pop),
|
|
1167
|
+
(r === void 0 || o2.row.pop > r) && (e.set(i, o2.row.pop), n2.set(i, { lon: o2.row.lon, lat: o2.row.lat }));
|
|
1168
1168
|
}
|
|
1169
|
-
return I =
|
|
1169
|
+
return I = n2, n2;
|
|
1170
1170
|
}
|
|
1171
1171
|
var h = null;
|
|
1172
1172
|
function D() {
|
|
1173
1173
|
if (h) return h;
|
|
1174
|
-
let
|
|
1174
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1175
1175
|
for (let e of H.split(",")) {
|
|
1176
|
-
let
|
|
1177
|
-
if (
|
|
1178
|
-
let o2 = { key:
|
|
1179
|
-
|
|
1176
|
+
let t = e.split("|");
|
|
1177
|
+
if (t.length < 5) continue;
|
|
1178
|
+
let o2 = { key: t[0], cc: t[1], name: t[2], lon: +t[3], lat: +t[4] };
|
|
1179
|
+
n2.set(u(o2.key), o2);
|
|
1180
1180
|
let i = u(o2.name);
|
|
1181
|
-
i === "mexico" && o2.cc === "MX" ? (
|
|
1181
|
+
i === "mexico" && o2.cc === "MX" ? (n2.set("estado de mexico", o2), n2.set("edomex", o2)) : n2.set(i, o2);
|
|
1182
1182
|
}
|
|
1183
|
-
return h =
|
|
1183
|
+
return h = n2, n2;
|
|
1184
1184
|
}
|
|
1185
1185
|
var B = null;
|
|
1186
1186
|
function a3() {
|
|
1187
1187
|
if (B) return B;
|
|
1188
|
-
let
|
|
1188
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1189
1189
|
for (let e of X.split(",")) {
|
|
1190
|
-
let
|
|
1191
|
-
|
|
1190
|
+
let t = e.split("|");
|
|
1191
|
+
t.length < 3 || n2.set(t[0], { lon: +t[1], lat: +t[2] });
|
|
1192
1192
|
}
|
|
1193
|
-
return B =
|
|
1193
|
+
return B = n2, n2;
|
|
1194
1194
|
}
|
|
1195
1195
|
var r3 = /* @__PURE__ */ new Set(["USA", "PRI", "VIR", "GUM", "ASM", "MNP"]);
|
|
1196
1196
|
var s3 = /* @__PURE__ */ new Set(["USA", "CAN", "MEX"]);
|
|
1197
|
-
function Y(
|
|
1198
|
-
if (
|
|
1199
|
-
let e = u(String(
|
|
1197
|
+
function Y(n2) {
|
|
1198
|
+
if (n2 == null) return null;
|
|
1199
|
+
let e = u(String(n2));
|
|
1200
1200
|
return e ? D().get(e)?.key ?? null : null;
|
|
1201
1201
|
}
|
|
1202
|
-
function u3(
|
|
1203
|
-
return D().get(u(
|
|
1202
|
+
function u3(n2) {
|
|
1203
|
+
return D().get(u(n2))?.cc ?? null;
|
|
1204
1204
|
}
|
|
1205
|
-
function c3(
|
|
1206
|
-
let e = u3(
|
|
1205
|
+
function c3(n2) {
|
|
1206
|
+
let e = u3(n2);
|
|
1207
1207
|
return e ? T(e) : null;
|
|
1208
1208
|
}
|
|
1209
|
-
function M3(
|
|
1210
|
-
if (
|
|
1211
|
-
let e = String(
|
|
1209
|
+
function M3(n2) {
|
|
1210
|
+
if (n2 == null) return null;
|
|
1211
|
+
let e = String(n2).trim().replace(/\.0+$/, "");
|
|
1212
1212
|
if (!e) return null;
|
|
1213
|
-
let
|
|
1214
|
-
return
|
|
1213
|
+
let t = /^(\d{5})(-\d{4})?$/.exec(e);
|
|
1214
|
+
return t ? t[1] : /^\d{3,4}$/.test(e) ? e.padStart(5, "0") : null;
|
|
1215
1215
|
}
|
|
1216
|
-
function Z(
|
|
1217
|
-
if (
|
|
1218
|
-
let e = String(
|
|
1216
|
+
function Z(n2) {
|
|
1217
|
+
if (n2 == null) return [];
|
|
1218
|
+
let e = String(n2).trim().replace(/\.0+$/, "");
|
|
1219
1219
|
if (!e) return [];
|
|
1220
1220
|
if (/^\d{3}$/.test(e)) {
|
|
1221
1221
|
let o2 = e.padStart(5, "0").slice(0, 3);
|
|
1222
1222
|
return o2 === e ? [e] : [e, o2];
|
|
1223
1223
|
}
|
|
1224
|
-
let
|
|
1225
|
-
return
|
|
1224
|
+
let t = M3(e);
|
|
1225
|
+
return t ? [t.slice(0, 3)] : [];
|
|
1226
1226
|
}
|
|
1227
|
-
function S3(
|
|
1228
|
-
return !!
|
|
1227
|
+
function S3(n2) {
|
|
1228
|
+
return !!n2 && n2.ambiguous === true && !("precision" in n2);
|
|
1229
1229
|
}
|
|
1230
|
-
function A3(
|
|
1231
|
-
let e = null,
|
|
1232
|
-
if (
|
|
1233
|
-
let a2 = +
|
|
1230
|
+
function A3(n2) {
|
|
1231
|
+
let e = null, t = typeof n2.lat == "string" ? n2.lat.trim() : n2.lat, o2 = typeof n2.lon == "string" ? n2.lon.trim() : n2.lon;
|
|
1232
|
+
if (t != null && t !== "" && o2 !== void 0 && o2 !== null && o2 !== "") {
|
|
1233
|
+
let a2 = +t, s = +o2;
|
|
1234
1234
|
if (isFinite(a2) && isFinite(s) && a2 >= -90 && a2 <= 90 && s >= -180 && s <= 180) if (a2 === 0 && s === 0) e = { lat: 0, lon: 0, precision: "latlon" };
|
|
1235
1235
|
else return { lat: a2, lon: s, precision: "latlon" };
|
|
1236
1236
|
}
|
|
1237
|
-
let i = E(
|
|
1238
|
-
if (r && i && c3(r) !== i && (r = null),
|
|
1239
|
-
let a2 = u(String(
|
|
1237
|
+
let i = E(n2.country), r = Y(n2.state);
|
|
1238
|
+
if (r && i && c3(r) !== i && (r = null), n2.city !== void 0 && n2.city !== null) {
|
|
1239
|
+
let a2 = u(String(n2.city)), s = O(a2), f4 = s ? F(s, n2.mapKind) : null;
|
|
1240
1240
|
if (f4 && f4.length) {
|
|
1241
|
-
let d2 =
|
|
1241
|
+
let d2 = n2.state === void 0 || n2.state === null ? "" : String(n2.state).trim(), R2 = d2 ? u(d2) : "", g3 = d2 ? Y(d2) : null, S2 = [], m2 = -1;
|
|
1242
1242
|
for (let c2 of f4) {
|
|
1243
1243
|
let l = c2.row, A2 = 0;
|
|
1244
1244
|
if (d2 && l.a1 !== "") if (g3 && l.a1 === g3 || u(l.a1) === R2) A2++;
|
|
@@ -1257,7 +1257,7 @@ function A3(n) {
|
|
|
1257
1257
|
if (p2.size > 1) return { ambiguous: true, matches: p2.size };
|
|
1258
1258
|
}
|
|
1259
1259
|
}
|
|
1260
|
-
if (!i || r3.has(i)) for (let a2 of Z(
|
|
1260
|
+
if (!i || r3.has(i)) for (let a2 of Z(n2.zip)) {
|
|
1261
1261
|
let s = a3().get(a2);
|
|
1262
1262
|
if (s) return { lat: s.lat, lon: s.lon, precision: "zip3" };
|
|
1263
1263
|
}
|
|
@@ -1265,7 +1265,7 @@ function A3(n) {
|
|
|
1265
1265
|
let a2 = D().get(u(r));
|
|
1266
1266
|
if (a2) return { lat: a2.lat, lon: a2.lon, precision: "state" };
|
|
1267
1267
|
}
|
|
1268
|
-
if (i && (
|
|
1268
|
+
if (i && (n2.mapKind !== "north-america" || s3.has(i))) {
|
|
1269
1269
|
let a2 = o3().get(i);
|
|
1270
1270
|
if (a2) return { lat: a2.lat, lon: a2.lon, precision: "country" };
|
|
1271
1271
|
}
|
|
@@ -1273,45 +1273,45 @@ function A3(n) {
|
|
|
1273
1273
|
}
|
|
1274
1274
|
var G = { latlon: 0, city: 1, zip3: 2, state: 3, country: 4 };
|
|
1275
1275
|
var x = 8;
|
|
1276
|
-
function y3(
|
|
1277
|
-
let
|
|
1278
|
-
for (let l = 0; l <
|
|
1279
|
-
let A2 =
|
|
1276
|
+
function y3(n2, e) {
|
|
1277
|
+
let t = new Array(n2.length), o2 = new Array(n2.length), i = new Array(n2.length), r = /* @__PURE__ */ new Set(), a2 = [], s = /* @__PURE__ */ new Set(), f4 = [], d2 = /* @__PURE__ */ new Set(), R2 = [], g3 = { latlon: 0, city: 0, zip3: 0, state: 0, country: 0 }, S2 = 0, m2 = 0, p2 = null;
|
|
1278
|
+
for (let l = 0; l < n2.length; ++l) {
|
|
1279
|
+
let A2 = n2[l], C = A3({ ...A2, mapKind: e });
|
|
1280
1280
|
if (S3(C)) {
|
|
1281
|
-
|
|
1281
|
+
t[l] = null, o2[l] = null, i[l] = null, m2++;
|
|
1282
1282
|
let M2 = K(A2);
|
|
1283
1283
|
M2 && !d2.has(M2.toLowerCase()) && (d2.add(M2.toLowerCase()), R2.length < x && R2.push(M2));
|
|
1284
1284
|
} else if (C) {
|
|
1285
|
-
if (
|
|
1285
|
+
if (t[l] = C.lat, o2[l] = C.lon, i[l] = C.precision, S2++, g3[C.precision]++, (p2 === null || G[C.precision] > G[p2]) && (p2 = C.precision), G[C.precision] > G.city) {
|
|
1286
1286
|
let M2 = K(A2);
|
|
1287
1287
|
M2 && !s.has(M2.toLowerCase()) && (s.add(M2.toLowerCase()), f4.length < x && f4.push(M2));
|
|
1288
1288
|
}
|
|
1289
1289
|
} else {
|
|
1290
|
-
|
|
1290
|
+
t[l] = null, o2[l] = null, i[l] = null;
|
|
1291
1291
|
let M2 = K(A2);
|
|
1292
1292
|
M2 && !r.has(M2.toLowerCase()) && (r.add(M2.toLowerCase()), a2.push(M2));
|
|
1293
1293
|
}
|
|
1294
1294
|
}
|
|
1295
|
-
let c2 = !n3() &&
|
|
1296
|
-
return { lat:
|
|
1295
|
+
let c2 = !n3() && n2.some((l) => l.city !== null && l.city !== void 0 && String(l.city).trim() !== "");
|
|
1296
|
+
return { lat: t, lon: o2, precisions: i, precision: p2, precisionCounts: g3, coarseExamples: f4, unmatched: a2, ambiguousRows: m2, ambiguousExamples: R2, matchedRows: S2, totalRows: n2.length, ...c2 ? { cityTableMissing: true } : {} };
|
|
1297
1297
|
}
|
|
1298
|
-
function K(
|
|
1299
|
-
let e = [
|
|
1300
|
-
return e || (
|
|
1298
|
+
function K(n2) {
|
|
1299
|
+
let e = [n2.city, n2.state, n2.zip, n2.country].filter((t) => t != null && String(t).trim() !== "").map((t) => String(t).trim()).join(", ");
|
|
1300
|
+
return e || (n2.label === null || n2.label === void 0 ? "" : String(n2.label).trim());
|
|
1301
1301
|
}
|
|
1302
|
-
function p3(
|
|
1303
|
-
if (!
|
|
1304
|
-
let
|
|
1305
|
-
return
|
|
1302
|
+
function p3(n2, e) {
|
|
1303
|
+
if (!n2) return false;
|
|
1304
|
+
let t = O(n2);
|
|
1305
|
+
return t ? F(t, e).length > 0 : false;
|
|
1306
1306
|
}
|
|
1307
1307
|
|
|
1308
1308
|
// ../shape-core/dist/chunk-NFSQ4O5R.mjs
|
|
1309
1309
|
/*! @bicharts/shape-core — Apache-2.0. Bundled reference data: GeoNames (https://www.geonames.org/) CC BY 4.0; US Census/TIGER (public domain). Full text: NOTICE in this package. */
|
|
1310
|
-
var o = (e,
|
|
1310
|
+
var o = (e, n2, t, r = {}) => ({ code: e, name: n2, script: t, dir: "ltr", intl: e, aliases: [], wordBreaks: true, compounds: false, gluedPrefixes: [], foldSensitive: false, ...r });
|
|
1311
1311
|
var g = Object.freeze([o("en", "English", "Latn"), o("nl", "Dutch", "Latn", { compounds: true }), o("de", "German", "Latn", { compounds: true }), o("fr", "French", "Latn"), o("es", "Spanish", "Latn"), o("pt", "Portuguese", "Latn"), o("it", "Italian", "Latn"), o("pl", "Polish", "Latn"), o("cs", "Czech", "Latn"), o("sk", "Slovak", "Latn"), o("sv", "Swedish", "Latn", { compounds: true }), o("da", "Danish", "Latn", { compounds: true }), o("nb", "Norwegian Bokmal", "Latn", { compounds: true, aliases: ["no"] }), o("fi", "Finnish", "Latn", { compounds: true }), o("hu", "Hungarian", "Latn", { compounds: true }), o("tr", "Turkish", "Latn"), o("ro", "Romanian", "Latn"), o("hr", "Croatian", "Latn"), o("id", "Indonesian", "Latn", { aliases: ["in"] }), o("vi", "Vietnamese", "Latn", { foldSensitive: true }), o("ru", "Russian", "Cyrl"), o("uk", "Ukrainian", "Cyrl"), o("el", "Greek", "Grek"), o("zh", "Chinese (Simplified)", "Hani", { intl: "zh-Hans", wordBreaks: false }), o("ja", "Japanese", "Jpan", { wordBreaks: false }), o("ko", "Korean", "Hang"), o("ar", "Arabic", "Arab", { dir: "rtl", gluedPrefixes: ["\u0627\u0644", "\u0648\u0627\u0644", "\u0628\u0627\u0644", "\u0641\u0627\u0644", "\u0643\u0627\u0644", "\u0644\u0644", "\u0648", "\u0641", "\u0628", "\u0643", "\u0644"] }), o("he", "Hebrew", "Hebr", { dir: "rtl", aliases: ["iw"], gluedPrefixes: ["\u05D4", "\u05D5", "\u05D1", "\u05DC", "\u05DE", "\u05E9", "\u05DB", "\u05D5\u05D4", "\u05E9\u05D4", "\u05DE\u05D4", "\u05D5\u05D1", "\u05D5\u05DC", "\u05D5\u05DE", "\u05D1\u05D4", "\u05DC\u05D4"] }), o("hi", "Hindi", "Deva"), o("th", "Thai", "Thai", { wordBreaks: false })]);
|
|
1312
1312
|
var m = Object.freeze(g.map((e) => e.code));
|
|
1313
1313
|
var c = new Map(g.map((e) => [e.code, e]));
|
|
1314
|
-
var L2 = new Map(g.flatMap((e) => e.aliases.map((
|
|
1314
|
+
var L2 = new Map(g.flatMap((e) => e.aliases.map((n2) => [n2, e])));
|
|
1315
1315
|
var h2 = Object.freeze([o("fa", "Persian", "Arab", { dir: "rtl" })]);
|
|
1316
1316
|
var j2 = Object.freeze([...m, ...h2.map((e) => e.code)]);
|
|
1317
1317
|
var S = new Map(h2.map((e) => [e.code, e]));
|
|
@@ -1319,47 +1319,47 @@ var N2 = { \u0142: "l", \u0141: "L", \u0131: "i", \u00F8: "o", \u00D8: "O", \u01
|
|
|
1319
1319
|
var D2 = [1632, 1776, 2406, 3664, 65296];
|
|
1320
1320
|
var R = /[\u0300-\u036F]/g;
|
|
1321
1321
|
function E2(e) {
|
|
1322
|
-
let
|
|
1323
|
-
if (
|
|
1324
|
-
let
|
|
1325
|
-
for (let a2 of D2) if (
|
|
1326
|
-
if (
|
|
1322
|
+
let n2 = N2[e];
|
|
1323
|
+
if (n2) return n2;
|
|
1324
|
+
let t = e.codePointAt(0);
|
|
1325
|
+
for (let a2 of D2) if (t >= a2 && t <= a2 + 9) return String.fromCharCode(48 + t - a2);
|
|
1326
|
+
if (t >= 65313 && t <= 65338 || t >= 65345 && t <= 65370) return String.fromCharCode(t - 65248);
|
|
1327
1327
|
let r = e.normalize("NFD").replace(R, "");
|
|
1328
1328
|
return r.length === 1 ? r : e;
|
|
1329
1329
|
}
|
|
1330
1330
|
function f2(e) {
|
|
1331
1331
|
if (!e) return e ?? "";
|
|
1332
|
-
let
|
|
1333
|
-
for (let
|
|
1334
|
-
return
|
|
1332
|
+
let n2 = "";
|
|
1333
|
+
for (let t of e) n2 += E2(t);
|
|
1334
|
+
return n2;
|
|
1335
1335
|
}
|
|
1336
1336
|
var A = /([\p{Ll}\p{Nd}])(\p{Lu})/gu;
|
|
1337
1337
|
var _2 = /[_\-./]+/g;
|
|
1338
1338
|
var M = /[^\p{L}\p{M}\p{N}\x00-\x7F]/gu;
|
|
1339
1339
|
function p(e) {
|
|
1340
|
-
return e ? String(e).normalize("NFC").replace(A, "$1 $2").replace(_2, " ").replace(M, " ").toLowerCase().split(/\s+/).filter((
|
|
1340
|
+
return e ? String(e).normalize("NFC").replace(A, "$1 $2").replace(_2, " ").replace(M, " ").toLowerCase().split(/\s+/).filter((n2) => n2.length > 0) : [];
|
|
1341
1341
|
}
|
|
1342
1342
|
function oe(e) {
|
|
1343
|
-
let
|
|
1344
|
-
if (isNaN(
|
|
1345
|
-
let
|
|
1346
|
-
if (Y2.test(e) || W2.test(e.trim()) || $2.test(e)) return
|
|
1347
|
-
let r = new Date(Date.UTC(
|
|
1343
|
+
let n2 = Date.parse(e);
|
|
1344
|
+
if (isNaN(n2)) return null;
|
|
1345
|
+
let t = new Date(n2);
|
|
1346
|
+
if (Y2.test(e) || W2.test(e.trim()) || $2.test(e)) return t;
|
|
1347
|
+
let r = new Date(Date.UTC(t.getFullYear(), t.getMonth(), t.getDate(), t.getHours(), t.getMinutes(), t.getSeconds(), t.getMilliseconds())), a2 = t.getFullYear();
|
|
1348
1348
|
return a2 >= 0 && a2 < 100 && r.setUTCFullYear(a2), r;
|
|
1349
1349
|
}
|
|
1350
1350
|
function F2(e) {
|
|
1351
1351
|
return !(e instanceof Date) || isNaN(e.getTime()) ? null : e.getUTCHours() === 0 && e.getUTCMinutes() === 0 && e.getUTCSeconds() === 0 && e.getUTCMilliseconds() === 0 ? "utc" : e.getHours() === 0 && e.getMinutes() === 0 && e.getSeconds() === 0 && e.getMilliseconds() === 0 ? "local" : null;
|
|
1352
1352
|
}
|
|
1353
1353
|
function v2(e) {
|
|
1354
|
-
let
|
|
1355
|
-
return
|
|
1354
|
+
let n2 = new Date(Date.UTC(e.getFullYear(), e.getMonth(), e.getDate())), t = e.getFullYear();
|
|
1355
|
+
return t >= 0 && t < 100 && n2.setUTCFullYear(t), n2;
|
|
1356
1356
|
}
|
|
1357
|
-
function B2(e,
|
|
1358
|
-
let
|
|
1357
|
+
function B2(e, n2) {
|
|
1358
|
+
let t = [];
|
|
1359
1359
|
for (let r of e) {
|
|
1360
1360
|
if (!r || !/date|time/i.test(String(r.dataType ?? ""))) continue;
|
|
1361
1361
|
let a2 = 0, i = true;
|
|
1362
|
-
for (let u2 of
|
|
1362
|
+
for (let u2 of n2) {
|
|
1363
1363
|
let s = u2 ? u2[r.name] : void 0;
|
|
1364
1364
|
if (s == null || s === "") continue;
|
|
1365
1365
|
if (!(s instanceof Date)) {
|
|
@@ -1373,21 +1373,21 @@ function B2(e, n) {
|
|
|
1373
1373
|
}
|
|
1374
1374
|
l === "local" && a2++;
|
|
1375
1375
|
}
|
|
1376
|
-
i && a2 > 0 &&
|
|
1376
|
+
i && a2 > 0 && t.push(r.name);
|
|
1377
1377
|
}
|
|
1378
|
-
return
|
|
1378
|
+
return t;
|
|
1379
1379
|
}
|
|
1380
|
-
function se(e,
|
|
1381
|
-
let
|
|
1382
|
-
return
|
|
1380
|
+
function se(e, n2) {
|
|
1381
|
+
let t = B2(e, n2);
|
|
1382
|
+
return t.length === 0 ? { rows: n2, columns: t } : { rows: n2.map((a2) => {
|
|
1383
1383
|
if (!a2) return a2;
|
|
1384
1384
|
let i = { ...a2 };
|
|
1385
|
-
for (let u2 of
|
|
1385
|
+
for (let u2 of t) {
|
|
1386
1386
|
let s = i[u2];
|
|
1387
1387
|
s instanceof Date && F2(s) === "local" && (i[u2] = v2(s));
|
|
1388
1388
|
}
|
|
1389
1389
|
return i;
|
|
1390
|
-
}), columns:
|
|
1390
|
+
}), columns: t };
|
|
1391
1391
|
}
|
|
1392
1392
|
var Y2 = /^\s*\d{4}(-\d{2}(-\d{2})?)?\s*$/;
|
|
1393
1393
|
var W2 = /(?:Z|[+-]\d{2}:?\d{2})$/i;
|
|
@@ -1398,34 +1398,34 @@ var $2 = /\b(?:GMT|UTC)\b/i;
|
|
|
1398
1398
|
var St = "006007008009010011012013014015016017018019020021022023024025026027028029030031032033034035036037038039040041042043044045046047048049050051052053054056057058059060061062063064065066067068069070071072073074075076077078079080081082083084085086087088089100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191193194195196197198199200201202203204205206207208209210211212214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310312313314315316317318319320321322323324325326327328329330331333334335336337338339341342344346347349350351352354355356357358359360361362363364365366367368369370371372373374376377378379380381382383384385386387388389390391392393394395396397398400401402403404405406407408409410411412413414415416417418420421422423424425426427430431432433434435436437438439440441442443444445446447448449450451452453454455456457458460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508510511512513514515516520521522523524525526527528530531532534535537538539540541542543544545546547548549550551553554556557558559560561562563564565566567570571572573574575576577580581582583584585586587588590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620622623624625626627628629630631633634635636637638639640641644645646647648650651652653654655656657658660661662664665666667668669670671672673674675676677678679680681683684685686687688689690691692693700701703704705706707708710711712713714716717718719720721722723724725726727728729730731734735736737738739740741743744745746747748749750751752753754755756757758759760761762763764765766767768769770772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816820821822823824825826827828829830831832833834835836837838840841843844845846847850851852853855856857859860863864865870871873874875877878879880881882883884890891893894895897898900902903904905906907908910911912913914915916917918919920921922923924925926927928930931932933934935936937939940941943944945946947948949950951952953954955956957958959960961967968969970971972973974975976977978979980981982983984985986988989990991992993994995996997998999";
|
|
1399
1399
|
var w = new Set(St.match(/.{3}/g) ?? []);
|
|
1400
1400
|
var at = [["AL", "Alabama"], ["AK", "Alaska"], ["AZ", "Arizona"], ["AR", "Arkansas"], ["CA", "California"], ["CO", "Colorado"], ["CT", "Connecticut"], ["DE", "Delaware"], ["FL", "Florida"], ["GA", "Georgia"], ["HI", "Hawaii"], ["ID", "Idaho"], ["IL", "Illinois"], ["IN", "Indiana"], ["IA", "Iowa"], ["KS", "Kansas"], ["KY", "Kentucky"], ["LA", "Louisiana"], ["ME", "Maine"], ["MD", "Maryland"], ["MA", "Massachusetts"], ["MI", "Michigan"], ["MN", "Minnesota"], ["MS", "Mississippi"], ["MO", "Missouri"], ["MT", "Montana"], ["NE", "Nebraska"], ["NV", "Nevada"], ["NH", "New Hampshire"], ["NJ", "New Jersey"], ["NM", "New Mexico"], ["NY", "New York"], ["NC", "North Carolina"], ["ND", "North Dakota"], ["OH", "Ohio"], ["OK", "Oklahoma"], ["OR", "Oregon"], ["PA", "Pennsylvania"], ["RI", "Rhode Island"], ["SC", "South Carolina"], ["SD", "South Dakota"], ["TN", "Tennessee"], ["TX", "Texas"], ["UT", "Utah"], ["VT", "Vermont"], ["VA", "Virginia"], ["WA", "Washington"], ["WV", "West Virginia"], ["WI", "Wisconsin"], ["WY", "Wyoming"], ["DC", "District of Columbia"], ["PR", "Puerto Rico"], ["GU", "Guam"], ["VI", "U.S. Virgin Islands"], ["AS", "American Samoa"], ["MP", "Northern Mariana Islands"]];
|
|
1401
|
-
var ct = new Set(at.map((
|
|
1401
|
+
var ct = new Set(at.map((n2) => n2[0]));
|
|
1402
1402
|
var yt = { "Ala.": "AL", "Alab.": "AL", "Ariz.": "AZ", "Ark.": "AR", "Calif.": "CA", "Cal.": "CA", "Colo.": "CO", "Col.": "CO", "Conn.": "CT", "Del.": "DE", "Fla.": "FL", "Flor.": "FL", "Ga.": "GA", "Ill.": "IL", "Ind.": "IN", "Kan.": "KS", "Kans.": "KS", "Ky.": "KY", "La.": "LA", "Md.": "MD", "Mass.": "MA", "Mich.": "MI", "Minn.": "MN", "Miss.": "MS", "Mo.": "MO", "Mont.": "MT", "Neb.": "NE", "Nebr.": "NE", "Nev.": "NV", "N.H.": "NH", "N.J.": "NJ", "N.M.": "NM", "N.Mex.": "NM", "N. Mex.": "NM", "N.Y.": "NY", "N.C.": "NC", "N.D.": "ND", "N.Dak.": "ND", "N. Dak.": "ND", "Okla.": "OK", "Ore.": "OR", "Oreg.": "OR", "Pa.": "PA", "Penn.": "PA", "Penna.": "PA", "R.I.": "RI", "S.C.": "SC", "S.D.": "SD", "S.Dak.": "SD", "S. Dak.": "SD", "Tenn.": "TN", "Tex.": "TX", "Vt.": "VT", "Va.": "VA", "Wash.": "WA", "W.Va.": "WV", "W. Va.": "WV", "Wis.": "WI", "Wisc.": "WI", "Wyo.": "WY", "D.C.": "DC", "Wash. D.C.": "DC", "Wash., D.C.": "DC", "P.R.": "PR", "V.I.": "VI" };
|
|
1403
1403
|
var ut = (() => {
|
|
1404
|
-
let
|
|
1405
|
-
for (let [s, i] of at)
|
|
1406
|
-
|
|
1404
|
+
let n2 = /* @__PURE__ */ new Map();
|
|
1405
|
+
for (let [s, i] of at) n2.set(g2(i), s);
|
|
1406
|
+
n2.set(g2("Washington DC"), "DC"), n2.set(g2("Washington D.C."), "DC"), n2.set(g2("US Virgin Islands"), "VI");
|
|
1407
1407
|
for (let [s, i] of Object.entries(yt)) {
|
|
1408
1408
|
let r = g2(s);
|
|
1409
|
-
r && !
|
|
1409
|
+
r && !n2.has(r) && n2.set(r, i);
|
|
1410
1410
|
}
|
|
1411
|
-
return
|
|
1411
|
+
return n2;
|
|
1412
1412
|
})();
|
|
1413
1413
|
var lt = /* @__PURE__ */ new Set(["01", "02", "04", "05", "06", "08", "09", "10", "11", "12", "13", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "44", "45", "46", "47", "48", "49", "50", "51", "53", "54", "55", "56", "60", "66", "69", "72", "78"]);
|
|
1414
|
-
function ft(
|
|
1415
|
-
return
|
|
1414
|
+
function ft(n2) {
|
|
1415
|
+
return n2.trim().toUpperCase();
|
|
1416
1416
|
}
|
|
1417
|
-
function g2(
|
|
1418
|
-
return u(
|
|
1417
|
+
function g2(n2) {
|
|
1418
|
+
return u(n2);
|
|
1419
1419
|
}
|
|
1420
1420
|
var rt = /* @__PURE__ */ new Set(["zip", "zipcode", "postal", "postcode", "plz"]);
|
|
1421
|
-
function y2(
|
|
1422
|
-
if (!
|
|
1423
|
-
for (let i of p(
|
|
1421
|
+
function y2(n2, s) {
|
|
1422
|
+
if (!n2) return false;
|
|
1423
|
+
for (let i of p(n2)) if (s.has(i)) return true;
|
|
1424
1424
|
return false;
|
|
1425
1425
|
}
|
|
1426
|
-
function Mt(
|
|
1427
|
-
if (
|
|
1428
|
-
let i = String(
|
|
1426
|
+
function Mt(n2, s) {
|
|
1427
|
+
if (n2 == null) return null;
|
|
1428
|
+
let i = String(n2).trim();
|
|
1429
1429
|
if (i.length === 0) return null;
|
|
1430
1430
|
switch (s) {
|
|
1431
1431
|
case "country-iso3":
|
|
@@ -1445,8 +1445,8 @@ function Mt(n, s) {
|
|
|
1445
1445
|
return null;
|
|
1446
1446
|
}
|
|
1447
1447
|
}
|
|
1448
|
-
function Gt(
|
|
1449
|
-
switch (
|
|
1448
|
+
function Gt(n2) {
|
|
1449
|
+
switch (n2) {
|
|
1450
1450
|
case "country-iso3":
|
|
1451
1451
|
case "country-iso2":
|
|
1452
1452
|
case "country-name":
|
|
@@ -1459,16 +1459,16 @@ function Gt(n) {
|
|
|
1459
1459
|
return false;
|
|
1460
1460
|
}
|
|
1461
1461
|
}
|
|
1462
|
-
function It(
|
|
1463
|
-
return s === "us-zip5" ? w.has(
|
|
1462
|
+
function It(n2, s) {
|
|
1463
|
+
return s === "us-zip5" ? w.has(n2.slice(0, 3)) : true;
|
|
1464
1464
|
}
|
|
1465
|
-
function Wt(
|
|
1466
|
-
let i = new Array(
|
|
1467
|
-
for (let
|
|
1468
|
-
let I2 = Mt(
|
|
1469
|
-
if (i[
|
|
1465
|
+
function Wt(n2, s) {
|
|
1466
|
+
let i = new Array(n2.length), r = /* @__PURE__ */ new Set(), M2 = [], h3 = 0;
|
|
1467
|
+
for (let N4 = 0; N4 < n2.length; ++N4) {
|
|
1468
|
+
let I2 = Mt(n2[N4], s), O3 = I2 !== null && It(I2, s) ? I2 : null;
|
|
1469
|
+
if (i[N4] = O3, O3 !== null) h3++;
|
|
1470
1470
|
else {
|
|
1471
|
-
let d2 =
|
|
1471
|
+
let d2 = n2[N4];
|
|
1472
1472
|
if (d2 != null) {
|
|
1473
1473
|
let p2 = String(d2).trim();
|
|
1474
1474
|
if (p2.length > 0) {
|
|
@@ -1478,7 +1478,7 @@ function Wt(n, s) {
|
|
|
1478
1478
|
}
|
|
1479
1479
|
}
|
|
1480
1480
|
}
|
|
1481
|
-
return { iso: i, unmatched: M2, matchedRows: h3, totalRows:
|
|
1481
|
+
return { iso: i, unmatched: M2, matchedRows: h3, totalRows: n2.length };
|
|
1482
1482
|
}
|
|
1483
1483
|
|
|
1484
1484
|
// ../shape-core/dist/chunk-KKSQBV76.mjs
|
|
@@ -1486,14 +1486,14 @@ var import_papaparse = __toESM(require_papaparse_min(), 1);
|
|
|
1486
1486
|
/*! @bicharts/shape-core — Apache-2.0. Bundled reference data: GeoNames (https://www.geonames.org/) CC BY 4.0; US Census/TIGER (public domain). Full text: NOTICE in this package. */
|
|
1487
1487
|
var ve = { "north-america": "AG AI AW BB BL BM BQ BS BZ CA CR CU CW DM DO GD GL GP GT HN HT JM KN KY LC MF MQ MS MX NI PA PM PR SV SX TC TT US VC VG VI", "south-america": "AR BO BR CL CO EC FK GF GY PE PY SR UY VE", europe: "AD AL AT AX BA BE BG BY CH CY CZ DE DK EE ES FI FO FR GB GG GI GR HR HU IE IM IS IT JE LI LT LU LV MC MD ME MK MT NL NO PL PT RO RS RU SE SI SJ SK SM UA VA", africa: "AO BF BI BJ BW CD CF CG CI CM CV DJ DZ EG EH ER ET GA GH GM GN GQ GW KE KM LR LS LY MA MG ML MR MU MW MZ NA NE NG RE RW SC SD SH SL SN SO SS ST SZ TD TG TN TZ UG YT ZA ZM ZW", asia: "AE AF AM AZ BD BH BN BT CC CN CX GE HK ID IL IN IO IQ IR JO JP KG KH KP KR KW KZ LA LB LK MM MN MO MV MY NP OM PH PK PS QA SA SG SY TH TJ TL TM TR TW UZ VN YE", oceania: "AS AU CK FJ FM GU KI MH MP NC NF NR NU NZ PF PG PN PW SB TK TO TV UM VU WF WS", antarctica: "AQ BV GS HM TF" };
|
|
1488
1488
|
var J2 = (() => {
|
|
1489
|
-
let
|
|
1490
|
-
for (let e of Object.keys(ve)) for (let
|
|
1491
|
-
return
|
|
1489
|
+
let t = /* @__PURE__ */ new Map();
|
|
1490
|
+
for (let e of Object.keys(ve)) for (let n2 of ve[e].split(/\s+/)) n2 && t.set(n2, e);
|
|
1491
|
+
return t;
|
|
1492
1492
|
})();
|
|
1493
|
-
function at2(
|
|
1494
|
-
for (let [e,
|
|
1493
|
+
function at2(t) {
|
|
1494
|
+
for (let [e, n2] of t) {
|
|
1495
1495
|
let r = J2.get(e);
|
|
1496
|
-
r && !J2.has(
|
|
1496
|
+
r && !J2.has(n2) && J2.set(n2, r);
|
|
1497
1497
|
}
|
|
1498
1498
|
}
|
|
1499
1499
|
at2(N);
|
|
@@ -1501,68 +1501,68 @@ var gt = ["rate", "ratio", "pct", "percent", "percentage", "rating", "share", "s
|
|
|
1501
1501
|
var pt = ["pct", "percent", "percentage", "rate", "ratio", "rating", "share", "score", "index", "nps", "csat", "margin", "yield", "coverage", "utilization", "utilisation", "gpa", "percentile", "quantile", "bmi", "density", "pressure", "humidity", "velocity", "efficiency", "occupancy", "latency", "throughput", "bandwidth", "iops", "ppm", "ppb", "dpmo", "bps"];
|
|
1502
1502
|
var ht = ["latitude", "longitude"];
|
|
1503
1503
|
var bt = ["latitude", "longitude"];
|
|
1504
|
-
function j3(
|
|
1505
|
-
return f2(
|
|
1504
|
+
function j3(t) {
|
|
1505
|
+
return f2(t);
|
|
1506
1506
|
}
|
|
1507
1507
|
var de = ["somme de", "suma de", "soma de", "summe von", "som van", "somma di", "summa av", "sum av", "sum af", "soucet z", "suma z", "totaal van", "total de", "toplam", "osszeg", "nombre de", "recuento de", "contagem de", "anzahl von", "aantal van", "conteggio di", "antal av", "lukumaara", "pocet z"];
|
|
1508
|
-
function yt2(
|
|
1509
|
-
return [...
|
|
1508
|
+
function yt2(t) {
|
|
1509
|
+
return [...t].sort((e, n2) => n2.length - e.length).map((e) => e.replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replace(/\s+/g, "\\s+")).join("|");
|
|
1510
1510
|
}
|
|
1511
1511
|
var ke = new RegExp("^\\s*(?:(?:sum|count|count\\s+distinct|distinct\\s+count)\\s+of\\s+|(?:" + yt2(de) + ")\\s+)", "i");
|
|
1512
1512
|
var St2 = /(?<=[a-z0-9])(?=[A-Z])|(?<=[A-Za-z])(?=[0-9])|(?<=[0-9])(?=[A-Za-z])/g;
|
|
1513
1513
|
var _t = new RegExp("\\b(" + gt.join("|") + ")\\b|(" + pt.join("|") + ")$", "i");
|
|
1514
1514
|
var At = new RegExp("\\b(" + ht.join("|") + ")\\b|(" + bt.join("|") + ")$", "i");
|
|
1515
|
-
function Fe(
|
|
1516
|
-
if (!
|
|
1517
|
-
let e = String(
|
|
1518
|
-
return (
|
|
1515
|
+
function Fe(t) {
|
|
1516
|
+
if (!t) return "";
|
|
1517
|
+
let e = String(t), n2 = ke.exec(j3(e));
|
|
1518
|
+
return (n2 ? e.slice(n2[0].length) : e).trim();
|
|
1519
1519
|
}
|
|
1520
|
-
function Ct(
|
|
1521
|
-
return !!
|
|
1520
|
+
function Ct(t) {
|
|
1521
|
+
return !!t && ke.test(j3(String(t)));
|
|
1522
1522
|
}
|
|
1523
1523
|
var Mt2 = ["count (distinct)", "count distinct", "distinct count", "standard deviation", "average", "variance", "median", "product", "stddev", "std dev", "count", "sum", "avg", "min", "minimum", "max", "maximum", "var"];
|
|
1524
|
-
var Oe = new RegExp("^\\s*(" + [...Mt2].sort((
|
|
1524
|
+
var Oe = new RegExp("^\\s*(" + [...Mt2].sort((t, e) => e.length - t.length).map((t) => t.replace(/[.*+?^${}()|[\]\\]/g, "\\$&").replace(/\s+/g, "\\s+")).join("|") + ")\\s+of\\s+", "i");
|
|
1525
1525
|
var We = { Sum: ["Sum of "], Avg: ["Average of "], Average: ["Average of "], Count: ["Count of "], CountNonNull: ["Count of "], Min: ["Min of ", "First ", "Earliest "], Max: ["Max of ", "Last ", "Latest "], Median: ["Median of "], StandardDeviation: ["Standard deviation of "], Variance: ["Variance of "] };
|
|
1526
1526
|
var xt = new RegExp("^(" + Object.keys(We).join("|") + ")\\((.+)\\)$");
|
|
1527
|
-
function Rt(
|
|
1528
|
-
let e = Fe(
|
|
1527
|
+
function Rt(t) {
|
|
1528
|
+
let e = Fe(t);
|
|
1529
1529
|
return e.length === 0 ? "" : e.replace(St2, " ");
|
|
1530
1530
|
}
|
|
1531
|
-
function ze(
|
|
1531
|
+
function ze(t, e) {
|
|
1532
1532
|
if (!e) return false;
|
|
1533
|
-
let
|
|
1534
|
-
return
|
|
1533
|
+
let n2 = Fe(e);
|
|
1534
|
+
return t.test(j3(Rt(e))) || t.test(j3(n2)) || t.test(j3(p(n2).join(" ")));
|
|
1535
1535
|
}
|
|
1536
|
-
function $e(
|
|
1537
|
-
return ze(At,
|
|
1536
|
+
function $e(t) {
|
|
1537
|
+
return ze(At, t);
|
|
1538
1538
|
}
|
|
1539
|
-
function Tt(
|
|
1540
|
-
return ze(_t,
|
|
1539
|
+
function Tt(t) {
|
|
1540
|
+
return ze(_t, t) || $e(t);
|
|
1541
1541
|
}
|
|
1542
1542
|
var Ue = /int|double|decimal|single|float|number|currency|money/i;
|
|
1543
|
-
function Nt(
|
|
1544
|
-
let e = String(
|
|
1545
|
-
return e === "categorical" ? "Categorical" : e === "ordinal" ? "Ordinal" : e === "continuous" ||
|
|
1543
|
+
function Nt(t) {
|
|
1544
|
+
let e = String(t?.valueNature ?? "").trim().toLowerCase();
|
|
1545
|
+
return e === "categorical" ? "Categorical" : e === "ordinal" ? "Ordinal" : e === "continuous" || t?.isMeasure === true || Ue.test(String(t?.dataType ?? "")) ? "Continuous" : "Categorical";
|
|
1546
1546
|
}
|
|
1547
|
-
function Et(
|
|
1548
|
-
return
|
|
1547
|
+
function Et(t) {
|
|
1548
|
+
return t?.isMeasure === true || Ue.test(String(t?.dataType ?? ""));
|
|
1549
1549
|
}
|
|
1550
|
-
function Ve(
|
|
1551
|
-
let e =
|
|
1552
|
-
if (
|
|
1553
|
-
if ($e(e.name)) return { nature:
|
|
1550
|
+
function Ve(t) {
|
|
1551
|
+
let e = t ?? {}, n2 = Nt(e);
|
|
1552
|
+
if (n2 !== "Continuous") return { nature: n2, additivity: "unknown", basis: "role", suppressed: false };
|
|
1553
|
+
if ($e(e.name)) return { nature: n2, additivity: "positional", basis: "name", suppressed: true };
|
|
1554
1554
|
let r = String(e.additivity ?? "").trim().toLowerCase();
|
|
1555
1555
|
if (!(r === "additive" && Ct(e.name))) {
|
|
1556
|
-
if (r === "additive") return { nature:
|
|
1557
|
-
if (r === "part_of_whole") return { nature:
|
|
1558
|
-
if (r === "intensive_rate") return { nature:
|
|
1556
|
+
if (r === "additive") return { nature: n2, additivity: "additive", basis: "measured", suppressed: false };
|
|
1557
|
+
if (r === "part_of_whole") return { nature: n2, additivity: "part_of_whole", basis: "measured", suppressed: false };
|
|
1558
|
+
if (r === "intensive_rate") return { nature: n2, additivity: "intensive_rate", basis: "measured", suppressed: false };
|
|
1559
1559
|
}
|
|
1560
|
-
return e.discourageAggregationAcrossGroups === true ? { nature:
|
|
1560
|
+
return e.discourageAggregationAcrossGroups === true ? { nature: n2, additivity: "intensive_rate", basis: "host-flag", suppressed: false } : Tt(e.name) ? { nature: n2, additivity: "intensive_rate", basis: "name", suppressed: false } : { nature: n2, additivity: "additive", basis: "default", suppressed: false };
|
|
1561
1561
|
}
|
|
1562
|
-
function Ke(
|
|
1563
|
-
let e = Ve(
|
|
1562
|
+
function Ke(t) {
|
|
1563
|
+
let e = Ve(t), n2 = t ?? {};
|
|
1564
1564
|
if (e.nature === "Categorical") return ["first", "distinctcount", "count"];
|
|
1565
|
-
if (e.nature === "Ordinal") return Et(
|
|
1565
|
+
if (e.nature === "Ordinal") return Et(n2) ? ["median", "average", "min", "max", "first", "distinctcount", "count"] : ["first", "distinctcount", "count"];
|
|
1566
1566
|
switch (e.additivity) {
|
|
1567
1567
|
case "positional":
|
|
1568
1568
|
return ["min", "max", "count", "distinctcount", "first"];
|
|
@@ -1572,167 +1572,167 @@ function Ke(t2) {
|
|
|
1572
1572
|
return ["sum", "average", "median", "min", "max", "count", "distinctcount", "first"];
|
|
1573
1573
|
}
|
|
1574
1574
|
}
|
|
1575
|
-
function Ln(
|
|
1576
|
-
return Ke(
|
|
1575
|
+
function Ln(t) {
|
|
1576
|
+
return Ke(t)[0];
|
|
1577
1577
|
}
|
|
1578
|
-
function On(
|
|
1578
|
+
function On(t, e) {
|
|
1579
1579
|
if (e !== "sum" && e !== "count") return false;
|
|
1580
1580
|
if (e === "count") return true;
|
|
1581
|
-
let
|
|
1582
|
-
return
|
|
1581
|
+
let n2 = Ve(t);
|
|
1582
|
+
return n2.additivity === "additive" || n2.additivity === "part_of_whole" || n2.additivity === "unknown";
|
|
1583
1583
|
}
|
|
1584
1584
|
var wt = new RegExp([String.raw`\bisMeasure\b`, String.raw`\bdataType\b`, String.raw`\bcolumns\s*\[\s*-?\d`, String.raw`\.iloc\s*\[[^\]]*,`, String.raw`\.iat\s*\[`, String.raw`\bselect_dtypes\b`, String.raw`\b_get_numeric_data\b`, String.raw`\bis_numeric_dtype\b`, String.raw`\bfor\s+\w+\s+in\s+(?:list\s*\(\s*)?df\.columns\b`, String.raw`\bdf\.columns\s*\.\s*(?:tolist|to_list|difference|drop)\b`, String.raw`\bdf\.dtypes\b`, String.raw`\bObject\s*\.\s*(?:keys|values|entries)\s*\(\s*(?:rows|data|df)?\s*\[\s*0\s*\]`, String.raw`\b(?:row|rw|r)\s*\[\s*\d+\s*\]`].join("|"));
|
|
1585
1585
|
|
|
1586
1586
|
// ../shape-core/dist/index.mjs
|
|
1587
1587
|
/*! @bicharts/shape-core — Apache-2.0. Bundled reference data: GeoNames (https://www.geonames.org/) CC BY 4.0; US Census/TIGER (public domain). Full text: NOTICE in this package. */
|
|
1588
|
-
var
|
|
1589
|
-
var
|
|
1590
|
-
function
|
|
1591
|
-
return !!E(
|
|
1592
|
-
}
|
|
1593
|
-
function
|
|
1594
|
-
let
|
|
1595
|
-
for (let r of
|
|
1588
|
+
var Y3 = 2;
|
|
1589
|
+
var le = 400;
|
|
1590
|
+
function X3(t) {
|
|
1591
|
+
return !!E(t);
|
|
1592
|
+
}
|
|
1593
|
+
function _3(t) {
|
|
1594
|
+
let e = /* @__PURE__ */ new Set();
|
|
1595
|
+
for (let r of t) {
|
|
1596
1596
|
if (r == null) continue;
|
|
1597
1597
|
let o2 = u(String(r));
|
|
1598
|
-
if (!V(o2) && !
|
|
1598
|
+
if (!V(o2) && !e.has(o2) && (e.add(o2), e.size >= le)) break;
|
|
1599
1599
|
}
|
|
1600
|
-
return Array.from(
|
|
1600
|
+
return Array.from(e);
|
|
1601
1601
|
}
|
|
1602
|
-
function
|
|
1603
|
-
let
|
|
1604
|
-
if (
|
|
1605
|
-
let r =
|
|
1602
|
+
function N3(t) {
|
|
1603
|
+
let e = _3(t);
|
|
1604
|
+
if (e.length === 0 || Z2(t) < 95) return false;
|
|
1605
|
+
let r = e.filter((u2) => X3(u2) && !Y(u2)).length, o2 = e.filter((u2) => !X3(u2) && !!Y(u2)).length;
|
|
1606
1606
|
return r >= 1 && r >= o2;
|
|
1607
1607
|
}
|
|
1608
|
-
function
|
|
1609
|
-
if (!Y(
|
|
1610
|
-
let r = E(
|
|
1611
|
-
return r ?
|
|
1608
|
+
function se2(t, e) {
|
|
1609
|
+
if (!Y(t)) return false;
|
|
1610
|
+
let r = E(t);
|
|
1611
|
+
return r ? e === "world" ? true : s3.has(r) : false;
|
|
1612
1612
|
}
|
|
1613
|
-
function
|
|
1614
|
-
let
|
|
1615
|
-
if (
|
|
1613
|
+
function Z2(t) {
|
|
1614
|
+
let e = _3(t);
|
|
1615
|
+
if (e.length === 0) return 0;
|
|
1616
1616
|
let r = 0;
|
|
1617
|
-
for (let o2 of
|
|
1618
|
-
return Math.round(r /
|
|
1617
|
+
for (let o2 of e) X3(o2) && r++;
|
|
1618
|
+
return Math.round(r / e.length * 1e3) / 10;
|
|
1619
1619
|
}
|
|
1620
|
-
function
|
|
1621
|
-
let
|
|
1622
|
-
if (
|
|
1620
|
+
function U3(t) {
|
|
1621
|
+
let e = _3(t);
|
|
1622
|
+
if (e.length === 0) return 0;
|
|
1623
1623
|
let r = 0;
|
|
1624
|
-
for (let o2 of
|
|
1625
|
-
return Math.round(r /
|
|
1624
|
+
for (let o2 of e) Y(o2) && r++;
|
|
1625
|
+
return Math.round(r / e.length * 1e3) / 10;
|
|
1626
1626
|
}
|
|
1627
|
-
function
|
|
1628
|
-
let
|
|
1629
|
-
for (let r of
|
|
1627
|
+
function ee3(t) {
|
|
1628
|
+
let e = /* @__PURE__ */ new Set();
|
|
1629
|
+
for (let r of t) {
|
|
1630
1630
|
if (r == null) continue;
|
|
1631
1631
|
let o2 = String(r).trim();
|
|
1632
|
-
if (!V(u(o2)) && !
|
|
1632
|
+
if (!V(u(o2)) && !e.has(o2) && (e.add(o2), e.size >= le)) break;
|
|
1633
1633
|
}
|
|
1634
|
-
return Array.from(
|
|
1634
|
+
return Array.from(e);
|
|
1635
1635
|
}
|
|
1636
|
-
function
|
|
1637
|
-
let
|
|
1638
|
-
if (
|
|
1636
|
+
function J3(t) {
|
|
1637
|
+
let e = ee3(t);
|
|
1638
|
+
if (e.length === 0) return 0;
|
|
1639
1639
|
let r = 0;
|
|
1640
|
-
for (let o2 of
|
|
1641
|
-
return Math.round(r /
|
|
1640
|
+
for (let o2 of e) Z(o2).length > 0 && r++;
|
|
1641
|
+
return Math.round(r / e.length * 1e3) / 10;
|
|
1642
1642
|
}
|
|
1643
|
-
function
|
|
1644
|
-
return y2(
|
|
1643
|
+
function ae3(t, e) {
|
|
1644
|
+
return y2(e, rt) ? true : ee3(t).some((r) => /^\d{5}(-\d{4})?$/.test(r.replace(/\.0+$/, "")));
|
|
1645
1645
|
}
|
|
1646
|
-
function
|
|
1647
|
-
let r =
|
|
1646
|
+
function pn(t, e) {
|
|
1647
|
+
let r = _3(t);
|
|
1648
1648
|
if (r.length === 0) return 0;
|
|
1649
1649
|
let o2 = 0;
|
|
1650
|
-
for (let u2 of r) p3(u2,
|
|
1650
|
+
for (let u2 of r) p3(u2, e) && o2++;
|
|
1651
1651
|
return Math.round(o2 / r.length * 1e3) / 10;
|
|
1652
1652
|
}
|
|
1653
|
-
function
|
|
1653
|
+
function Q3(t, e) {
|
|
1654
1654
|
let r = 0;
|
|
1655
|
-
for (let o2 of
|
|
1655
|
+
for (let o2 of _3(t)) e(o2) && r++;
|
|
1656
1656
|
return r;
|
|
1657
1657
|
}
|
|
1658
|
-
function
|
|
1658
|
+
function yn(t, e) {
|
|
1659
1659
|
let r = 0;
|
|
1660
|
-
for (let o2 of
|
|
1660
|
+
for (let o2 of ee3(t)) e(o2) && r++;
|
|
1661
1661
|
return r;
|
|
1662
1662
|
}
|
|
1663
|
-
function
|
|
1664
|
-
let l = [],
|
|
1665
|
-
for (let
|
|
1666
|
-
let c2 = r?.[
|
|
1667
|
-
c2 &&
|
|
1663
|
+
function gn(t, e, r, o2, u2) {
|
|
1664
|
+
let l = [], a2 = [], i = {}, E4 = {}, T2 = new Set(t), C = (s) => e.map((c2) => c2[s]);
|
|
1665
|
+
for (let s of ["city", "country"]) {
|
|
1666
|
+
let c2 = r?.[s];
|
|
1667
|
+
c2 && T2.has(c2) && (i[s] = c2);
|
|
1668
1668
|
}
|
|
1669
|
-
let
|
|
1670
|
-
for (let
|
|
1671
|
-
let c2 = r?.[
|
|
1672
|
-
c2 &&
|
|
1669
|
+
let S2 = new Set(u2 ?? t);
|
|
1670
|
+
for (let s of ["lat", "lon"]) {
|
|
1671
|
+
let c2 = r?.[s];
|
|
1672
|
+
c2 && S2.has(c2) && (i[s] = c2);
|
|
1673
1673
|
}
|
|
1674
|
-
let
|
|
1675
|
-
if (
|
|
1676
|
-
let
|
|
1677
|
-
c2 < 95 ?
|
|
1674
|
+
let y4 = r?.zip;
|
|
1675
|
+
if (y4 && T2.has(y4)) {
|
|
1676
|
+
let s = C(y4), c2 = J3(s);
|
|
1677
|
+
c2 < 95 ? a2.push(`zip=${y4} (only ${c2}% of values read as ZIPs)`) : ae3(s, y4) ? i.zip = y4 : a2.push(`zip=${y4} (all values are 3-4 digits with nothing to say they are postal)`);
|
|
1678
1678
|
}
|
|
1679
|
-
let
|
|
1680
|
-
if (
|
|
1681
|
-
let
|
|
1682
|
-
c2.length > 0 && c2.every((
|
|
1679
|
+
let f4 = r?.state;
|
|
1680
|
+
if (f4 && T2.has(f4)) {
|
|
1681
|
+
let s = C(f4), c2 = _3(s);
|
|
1682
|
+
c2.length > 0 && c2.every((p2) => se2(p2, o2)) ? a2.push(`state=${f4} (every value is "CA", which is both Canada and California)`) : N3(s) ? (a2.push(`state=${f4} (every value is a country, not a state)`), i.country || (i.country = f4)) : U3(s) < 95 ? a2.push(`state=${f4} (only ${U3(s)}% of values are states/provinces)`) : i.state = f4;
|
|
1683
1683
|
}
|
|
1684
|
-
let
|
|
1685
|
-
if (!
|
|
1686
|
-
let
|
|
1687
|
-
for (let c2 of
|
|
1688
|
-
let
|
|
1689
|
-
if (
|
|
1690
|
-
let
|
|
1691
|
-
if (
|
|
1692
|
-
let
|
|
1693
|
-
|
|
1684
|
+
let m2 = new Set(Object.values(i).filter(Boolean)), g3 = t.filter((s) => !m2.has(s) && !s.startsWith("__"));
|
|
1685
|
+
if (!i.state) {
|
|
1686
|
+
let s = null;
|
|
1687
|
+
for (let c2 of g3) {
|
|
1688
|
+
let p2 = C(c2);
|
|
1689
|
+
if (N3(p2)) continue;
|
|
1690
|
+
let v3 = U3(p2);
|
|
1691
|
+
if (v3 < 95) continue;
|
|
1692
|
+
let q2 = Q3(p2, (k3) => !!Y(k3)), Re = Q3(p2, (k3) => !!Y(k3) && !se2(k3, o2));
|
|
1693
|
+
q2 < Y3 && Re < 1 || (!s || v3 > s.pct) && (s = { name: c2, pct: v3 });
|
|
1694
1694
|
}
|
|
1695
|
-
|
|
1695
|
+
s && (i.state = s.name, m2.add(s.name), l.push(`state=${s.name} (${s.pct}% states/provinces)`));
|
|
1696
1696
|
}
|
|
1697
|
-
if (!
|
|
1698
|
-
if (
|
|
1699
|
-
let c2 =
|
|
1700
|
-
if (!(
|
|
1701
|
-
|
|
1697
|
+
if (!i.zip) for (let s of g3) {
|
|
1698
|
+
if (m2.has(s)) continue;
|
|
1699
|
+
let c2 = C(s), p2 = J3(c2);
|
|
1700
|
+
if (!(p2 < 95) && ae3(c2, s) && !(yn(c2, (v3) => Z(v3).length > 0) < Y3)) {
|
|
1701
|
+
i.zip = s, m2.add(s), l.push(`zip=${s} (${p2}% ZIP codes)`);
|
|
1702
1702
|
break;
|
|
1703
1703
|
}
|
|
1704
1704
|
}
|
|
1705
|
-
let
|
|
1706
|
-
if (!
|
|
1707
|
-
let
|
|
1708
|
-
for (let c2 of
|
|
1709
|
-
if (
|
|
1710
|
-
let
|
|
1711
|
-
(!
|
|
1705
|
+
let b2 = i.country;
|
|
1706
|
+
if (!b2 || !N3(C(b2))) {
|
|
1707
|
+
let s = null;
|
|
1708
|
+
for (let c2 of g3) {
|
|
1709
|
+
if (m2.has(c2) || !N3(C(c2))) continue;
|
|
1710
|
+
let p2 = Z2(C(c2));
|
|
1711
|
+
(!s || p2 > s.pct) && (s = { name: c2, pct: p2 });
|
|
1712
1712
|
}
|
|
1713
|
-
|
|
1713
|
+
s && (b2 && (a2.push(`country=${b2} (only ${Z2(C(b2))}% of values are country identifiers; using ${s.name} instead)`), E4.country = b2), i.country = s.name, m2.add(s.name), l.push(`country=${s.name}`));
|
|
1714
1714
|
}
|
|
1715
|
-
if (!
|
|
1716
|
-
let
|
|
1717
|
-
for (let c2 of
|
|
1718
|
-
if (
|
|
1719
|
-
let
|
|
1720
|
-
|
|
1715
|
+
if (!i.city) {
|
|
1716
|
+
let s = null;
|
|
1717
|
+
for (let c2 of g3) {
|
|
1718
|
+
if (m2.has(c2)) continue;
|
|
1719
|
+
let p2 = C(c2), v3 = pn(p2, o2);
|
|
1720
|
+
v3 < m3 || Q3(p2, (q2) => p3(q2, o2)) < Y3 || (!s || v3 > s.pct) && (s = { name: c2, pct: v3 });
|
|
1721
1721
|
}
|
|
1722
|
-
|
|
1722
|
+
s && (i.city = s.name, l.push(`city=${s.name} (${s.pct}% known cities)`));
|
|
1723
1723
|
}
|
|
1724
|
-
let
|
|
1725
|
-
let c2 = +String(i
|
|
1726
|
-
return isFinite(c2) && isFinite(
|
|
1724
|
+
let x3 = i.country ? C(i.country) : [], A2 = !!i.country && N3(x3), I2 = A2 ? new Set(x3.map((s) => E(s == null ? null : String(s))).filter(Boolean)).size : 0, R2 = A2 && I2 >= 2, L4 = !!(i.lat && i.lon) && e.some((s) => {
|
|
1725
|
+
let c2 = +String(s[i.lat] ?? "").trim(), p2 = +String(s[i.lon] ?? "").trim();
|
|
1726
|
+
return isFinite(c2) && isFinite(p2) && c2 >= -90 && c2 <= 90 && p2 >= -180 && p2 <= 180 && String(s[i.lat] ?? "").trim() !== "" && String(s[i.lon] ?? "").trim() !== "";
|
|
1727
1727
|
});
|
|
1728
|
-
return
|
|
1729
|
-
}
|
|
1730
|
-
var
|
|
1731
|
-
var
|
|
1732
|
-
var
|
|
1733
|
-
var
|
|
1734
|
-
var
|
|
1735
|
-
var
|
|
1728
|
+
return i.lat && i.lon && !L4 && a2.push(`lat/lon=${i.lat}/${i.lon} (no row holds a usable coordinate pair)`), i.country && !R2 && !(i.city || i.state || i.zip || L4) && a2.push(A2 ? `country=${i.country} (every row resolves to the same country - nothing to place apart)` : `country=${i.country} (values are not country identifiers)`), { bind: !!(i.city || i.state || i.zip || R2 || L4) ? i : null, backfilled: l, refused: a2, ...Object.keys(E4).length ? { labelFallback: E4 } : {} };
|
|
1729
|
+
}
|
|
1730
|
+
var n = (t, ...e) => ({ part: t, langs: Object.freeze(e) });
|
|
1731
|
+
var te2 = Object.freeze({ jaar: n("year", "nl"), kwartaal: n("quarter", "nl"), maand: n("month", "nl"), dag: n("day", "nl", "sv", "da", "nb"), jahr: n("year", "de"), quartal: n("quarter", "de"), monat: n("month", "de"), tag: n("day", "de"), ann\u00E9e: n("year", "fr"), mois: n("month", "fr"), jour: n("day", "fr"), trimestre: n("quarter", "fr", "es", "pt", "it"), a\u00F1o: n("year", "es"), mes: n("month", "es"), d\u00EDa: n("day", "es"), ano: n("year", "pt"), m\u00EAs: n("month", "pt"), dia: n("day", "pt"), anno: n("year", "it"), mese: n("month", "it"), giorno: n("day", "it"), \u0433\u043E\u0434: n("year", "ru"), \u043C\u0435\u0441\u044F\u0446: n("month", "ru"), \u0440\u0456\u043A: n("year", "uk"), \u043C\u0456\u0441\u044F\u0446\u044C: n("month", "uk"), \u043A\u0432\u0430\u0440\u0442\u0430\u043B: n("quarter", "ru", "uk"), \u0434\u0435\u043D\u044C: n("day", "ru", "uk"), rok: n("year", "pl", "cs", "sk"), kwarta\u0142: n("quarter", "pl"), miesi\u0105c: n("month", "pl"), dzie\u0144: n("day", "pl"), \u010Dtvrtlet\u00ED: n("quarter", "cs"), m\u011Bs\u00EDc: n("month", "cs"), den: n("day", "cs"), \u0161tvr\u0165rok: n("quarter", "sk"), mesiac: n("month", "sk"), de\u0148: n("day", "sk"), \u00E5r: n("year", "sv", "da", "nb"), kvartal: n("quarter", "sv", "da", "nb"), m\u00E5nad: n("month", "sv"), m\u00E5ned: n("month", "da", "nb"), vuosi: n("year", "fi"), vuosinelj\u00E4nnes: n("quarter", "fi"), kuukausi: n("month", "fi"), p\u00E4iv\u00E4: n("day", "fi"), \u00E9v: n("year", "hu"), negyed\u00E9v: n("quarter", "hu"), h\u00F3nap: n("month", "hu"), nap: n("day", "hu"), y\u0131l: n("year", "tr"), \u00E7eyrek: n("quarter", "tr"), ay: n("month", "tr"), g\u00FCn: n("day", "tr"), \u03AD\u03C4\u03BF\u03C2: n("year", "el"), \u03C4\u03C1\u03AF\u03BC\u03B7\u03BD\u03BF: n("quarter", "el"), \u03BC\u03AE\u03BD\u03B1\u03C2: n("month", "el"), \u03B7\u03BC\u03AD\u03C1\u03B1: n("day", "el"), an: n("year", "ro"), trimestru: n("quarter", "ro"), lun\u0103: n("month", "ro"), zi: n("day", "ro"), godina: n("year", "hr"), tromjese\u010Dje: n("quarter", "hr"), mjesec: n("month", "hr"), dan: n("day", "hr"), \u5E74: n("year", "ja", "zh"), \u56DB\u534A\u671F: n("quarter", "ja"), \u5B63\u5EA6: n("quarter", "zh"), \u6708: n("month", "ja", "zh"), \u65E5: n("day", "ja", "zh"), \uC5F0\uB3C4: n("year", "ko"), \uBD84\uAE30: n("quarter", "ko"), \uC6D4: n("month", "ko"), \uC77C: n("day", "ko"), tahun: n("year", "id"), kuartal: n("quarter", "id"), triwulan: n("quarter", "id"), bulan: n("month", "id"), hari: n("day", "id"), n\u0103m: n("year", "vi"), qu\u00FD: n("quarter", "vi"), th\u00E1ng: n("month", "vi"), ng\u00E0y: n("day", "vi"), \u0E1B\u0E35: n("year", "th"), \u0E44\u0E15\u0E23\u0E21\u0E32\u0E2A: n("quarter", "th"), \u0E40\u0E14\u0E37\u0E2D\u0E19: n("month", "th"), \u0E27\u0E31\u0E19: n("day", "th"), \u0627\u0644\u0633\u0646\u0629: n("year", "ar"), \u0633\u0646\u0629: n("year", "ar"), \u0627\u0644\u0639\u0627\u0645: n("year", "ar"), \u0639\u0627\u0645: n("year", "ar"), \u0627\u0644\u0631\u0628\u0639: n("quarter", "ar"), \u0631\u0628\u0639: n("quarter", "ar"), "\u0631\u0628\u0639 \u0627\u0644\u0633\u0646\u0629": n("quarter", "ar"), \u0627\u0644\u0634\u0647\u0631: n("month", "ar"), \u0634\u0647\u0631: n("month", "ar"), \u0627\u0644\u064A\u0648\u0645: n("day", "ar"), \u064A\u0648\u0645: n("day", "ar"), \u05E9\u05E0\u05D4: n("year", "he"), \u05E8\u05D1\u05E2\u05D5\u05DF: n("quarter", "he"), \u05D7\u05D5\u05D3\u05E9: n("month", "he"), \u05D9\u05D5\u05DD: n("day", "he"), \u0935\u0930\u094D\u0937: n("year", "hi"), \u0938\u093E\u0932: n("year", "hi"), \u0924\u093F\u092E\u093E\u0939\u0940: n("quarter", "hi"), \u092E\u0939\u0940\u0928\u093E: n("month", "hi"), \u092E\u093E\u0939: n("month", "hi"), \u0926\u093F\u0928: n("day", "hi"), \u0633\u0627\u0644: n("year", "fa"), \u0645\u0627\u0647: n("month", "fa"), \u0631\u0648\u0632: n("day", "fa") });
|
|
1732
|
+
var hn = Object.freeze(Array.from(new Set(Object.values(te2).flatMap((t) => t.langs))));
|
|
1733
|
+
var ue = Object.freeze(["fa", "ar", "he", "th"]);
|
|
1734
|
+
var In = Object.freeze({ integer: "number", decimal: "number", double: "number", datetime: "date", date: "date", boolean: "boolean", string: "text" });
|
|
1735
|
+
var zn = Object.freeze({ RENDER_START: "render-start", RENDER_OK: "render-ok", RENDER_ERROR: "render-error", VIEW: "view", VIEW_VERDICT: "view-verdict" });
|
|
1736
1736
|
|
|
1737
1737
|
// src/payload.ts
|
|
1738
1738
|
var ROW_IDX_COLUMN = "__rowIdx__";
|
|
@@ -1747,7 +1747,7 @@ function resolvePointChannel(cols, rowObjs, point) {
|
|
|
1747
1747
|
let labelCol;
|
|
1748
1748
|
if (bind) {
|
|
1749
1749
|
const dims = cols.filter((c2) => !c2.isMeasure).map((c2) => c2.name);
|
|
1750
|
-
const res =
|
|
1750
|
+
const res = gn(dims, rowObjs, bind, point?.mapKind, cols.map((c2) => c2.name));
|
|
1751
1751
|
bind = res.bind;
|
|
1752
1752
|
rolesBackfilled = res.backfilled;
|
|
1753
1753
|
rolesRefused = res.refused;
|
|
@@ -1896,7 +1896,7 @@ function buildRenderPayload(cols, rowObjs, geo, point, destination, opts) {
|
|
|
1896
1896
|
// src/codeComments.ts
|
|
1897
1897
|
function stripJsComments(code) {
|
|
1898
1898
|
const src = String(code ?? "");
|
|
1899
|
-
const
|
|
1899
|
+
const n2 = src.length;
|
|
1900
1900
|
let out = "";
|
|
1901
1901
|
let i = 0;
|
|
1902
1902
|
const templates = [];
|
|
@@ -1908,9 +1908,9 @@ function stripJsComments(code) {
|
|
|
1908
1908
|
if ("(,=:[!&|?{};+-*%<>~^".includes(prevSig)) return true;
|
|
1909
1909
|
return /^(return|typeof|instanceof|in|of|new|delete|void|throw|case|do|else|yield|await)$/.test(prevWord);
|
|
1910
1910
|
};
|
|
1911
|
-
while (i <
|
|
1911
|
+
while (i < n2) {
|
|
1912
1912
|
const ch = src[i];
|
|
1913
|
-
const next = i + 1 <
|
|
1913
|
+
const next = i + 1 < n2 ? src[i + 1] : "";
|
|
1914
1914
|
const top = templates.length > 0 ? templates[templates.length - 1] : null;
|
|
1915
1915
|
if (top === -1) {
|
|
1916
1916
|
if (ch === "\\") {
|
|
@@ -1941,10 +1941,10 @@ function stripJsComments(code) {
|
|
|
1941
1941
|
continue;
|
|
1942
1942
|
}
|
|
1943
1943
|
if (ch === "/" && next === "/") {
|
|
1944
|
-
let
|
|
1945
|
-
while (
|
|
1944
|
+
let j4 = i + 2;
|
|
1945
|
+
while (j4 < n2 && src[j4] !== "\n" && src[j4] !== "\r") j4++;
|
|
1946
1946
|
out += " ";
|
|
1947
|
-
i =
|
|
1947
|
+
i = j4;
|
|
1948
1948
|
wordOpen = false;
|
|
1949
1949
|
continue;
|
|
1950
1950
|
}
|
|
@@ -1953,15 +1953,15 @@ function stripJsComments(code) {
|
|
|
1953
1953
|
const body = end < 0 ? src.slice(i + 2) : src.slice(i + 2, end);
|
|
1954
1954
|
const newlines = body.match(/\r\n|\r|\n/g);
|
|
1955
1955
|
out += newlines ? newlines.join("") : " ";
|
|
1956
|
-
i = end < 0 ?
|
|
1956
|
+
i = end < 0 ? n2 : end + 2;
|
|
1957
1957
|
wordOpen = false;
|
|
1958
1958
|
continue;
|
|
1959
1959
|
}
|
|
1960
1960
|
if (ch === "'" || ch === '"') {
|
|
1961
|
-
let
|
|
1962
|
-
while (
|
|
1963
|
-
out += src.slice(i, Math.min(
|
|
1964
|
-
i =
|
|
1961
|
+
let j4 = i + 1;
|
|
1962
|
+
while (j4 < n2 && src[j4] !== ch && src[j4] !== "\n") j4 += src[j4] === "\\" ? 2 : 1;
|
|
1963
|
+
out += src.slice(i, Math.min(j4 + 1, n2));
|
|
1964
|
+
i = j4 + 1;
|
|
1965
1965
|
prevSig = ch;
|
|
1966
1966
|
prevWord = "";
|
|
1967
1967
|
wordOpen = false;
|
|
@@ -1975,23 +1975,23 @@ function stripJsComments(code) {
|
|
|
1975
1975
|
continue;
|
|
1976
1976
|
}
|
|
1977
1977
|
if (ch === "/" && regexMayFollow()) {
|
|
1978
|
-
let
|
|
1979
|
-
while (
|
|
1980
|
-
const c2 = src[
|
|
1978
|
+
let j4 = i + 1, inClass = false;
|
|
1979
|
+
while (j4 < n2 && src[j4] !== "\n") {
|
|
1980
|
+
const c2 = src[j4];
|
|
1981
1981
|
if (c2 === "\\") {
|
|
1982
|
-
|
|
1982
|
+
j4 += 2;
|
|
1983
1983
|
continue;
|
|
1984
1984
|
}
|
|
1985
1985
|
if (c2 === "[") inClass = true;
|
|
1986
1986
|
else if (c2 === "]") inClass = false;
|
|
1987
1987
|
else if (c2 === "/" && !inClass) break;
|
|
1988
|
-
|
|
1988
|
+
j4++;
|
|
1989
1989
|
}
|
|
1990
|
-
if (
|
|
1991
|
-
|
|
1992
|
-
while (
|
|
1993
|
-
out += src.slice(i,
|
|
1994
|
-
i =
|
|
1990
|
+
if (j4 < n2 && src[j4] === "/") {
|
|
1991
|
+
j4++;
|
|
1992
|
+
while (j4 < n2 && /[A-Za-z]/.test(src[j4])) j4++;
|
|
1993
|
+
out += src.slice(i, j4);
|
|
1994
|
+
i = j4;
|
|
1995
1995
|
prevSig = "/";
|
|
1996
1996
|
prevWord = "";
|
|
1997
1997
|
wordOpen = false;
|
|
@@ -2040,15 +2040,15 @@ function isInsideControl(target, container) {
|
|
|
2040
2040
|
}
|
|
2041
2041
|
function createMarkResolver(env) {
|
|
2042
2042
|
const { root, doc, log } = env;
|
|
2043
|
-
const isElement = (
|
|
2043
|
+
const isElement = (t) => {
|
|
2044
2044
|
const E4 = doc?.defaultView?.Element ?? globalThis.Element;
|
|
2045
|
-
if (E4 &&
|
|
2046
|
-
return !!
|
|
2045
|
+
if (E4 && t instanceof E4) return true;
|
|
2046
|
+
return !!t && typeof t.closest === "function" && typeof t.getAttribute === "function";
|
|
2047
2047
|
};
|
|
2048
|
-
const viewStyle = (
|
|
2048
|
+
const viewStyle = (n2) => {
|
|
2049
2049
|
try {
|
|
2050
2050
|
const gcs = doc?.defaultView?.getComputedStyle ?? (typeof getComputedStyle === "function" ? getComputedStyle : null);
|
|
2051
|
-
return gcs ? gcs(
|
|
2051
|
+
return gcs ? gcs(n2).pointerEvents : "";
|
|
2052
2052
|
} catch {
|
|
2053
2053
|
return "";
|
|
2054
2054
|
}
|
|
@@ -2062,16 +2062,16 @@ function createMarkResolver(env) {
|
|
|
2062
2062
|
return s === "transparent" || s === "none" || so <= 0.01;
|
|
2063
2063
|
};
|
|
2064
2064
|
const distToPathCenterline = (el, x3, y4) => {
|
|
2065
|
-
const
|
|
2066
|
-
if (!(
|
|
2065
|
+
const L4 = el.getTotalLength();
|
|
2066
|
+
if (!(L4 > 0)) return Number.MAX_VALUE;
|
|
2067
2067
|
const m2 = el.getScreenCTM();
|
|
2068
2068
|
if (!m2) return Number.MAX_VALUE;
|
|
2069
2069
|
let best = Number.MAX_VALUE;
|
|
2070
|
-
const
|
|
2071
|
-
for (let i = 0; i <=
|
|
2072
|
-
const
|
|
2073
|
-
const dx = m2.a *
|
|
2074
|
-
const dy = m2.b *
|
|
2070
|
+
const N4 = 64;
|
|
2071
|
+
for (let i = 0; i <= N4; i++) {
|
|
2072
|
+
const pt2 = el.getPointAtLength(L4 * i / N4);
|
|
2073
|
+
const dx = m2.a * pt2.x + m2.c * pt2.y + m2.e - x3;
|
|
2074
|
+
const dy = m2.b * pt2.x + m2.d * pt2.y + m2.f - y4;
|
|
2075
2075
|
const d2 = dx * dx + dy * dy;
|
|
2076
2076
|
if (d2 < best) best = d2;
|
|
2077
2077
|
}
|
|
@@ -2126,8 +2126,8 @@ function createMarkResolver(env) {
|
|
|
2126
2126
|
if (!raw) return [];
|
|
2127
2127
|
const out = [];
|
|
2128
2128
|
for (const tok of raw.split(",")) {
|
|
2129
|
-
const
|
|
2130
|
-
if (!isNaN(
|
|
2129
|
+
const n2 = parseInt(tok.trim(), 10);
|
|
2130
|
+
if (!isNaN(n2) && n2 >= 0) out.push(n2);
|
|
2131
2131
|
}
|
|
2132
2132
|
return out;
|
|
2133
2133
|
};
|
|
@@ -2165,10 +2165,10 @@ function createMarkResolver(env) {
|
|
|
2165
2165
|
const hasHittableShape = (node) => {
|
|
2166
2166
|
const SHAPE = /^(rect|circle|ellipse|path|line|polygon|polyline|text|image|use)$/;
|
|
2167
2167
|
const all = [node, ...Array.from(node.querySelectorAll("*"))];
|
|
2168
|
-
for (const
|
|
2169
|
-
const tag = (
|
|
2168
|
+
for (const n2 of all) {
|
|
2169
|
+
const tag = (n2.tagName || "").toLowerCase();
|
|
2170
2170
|
if (!SHAPE.test(tag)) continue;
|
|
2171
|
-
const pe = viewStyle(
|
|
2171
|
+
const pe = viewStyle(n2);
|
|
2172
2172
|
if (pe && pe !== "none") return true;
|
|
2173
2173
|
}
|
|
2174
2174
|
return false;
|
|
@@ -2333,8 +2333,8 @@ function isUnfilled(fill) {
|
|
|
2333
2333
|
function widthPx(raw) {
|
|
2334
2334
|
const m2 = /^(-?\d+(?:\.\d+)?)\s*(px)?$/i.exec(raw);
|
|
2335
2335
|
if (!m2) return NaN;
|
|
2336
|
-
const
|
|
2337
|
-
return isFinite(
|
|
2336
|
+
const n2 = parseFloat(m2[1]);
|
|
2337
|
+
return isFinite(n2) ? n2 : NaN;
|
|
2338
2338
|
}
|
|
2339
2339
|
function censusHitBands(container, doc) {
|
|
2340
2340
|
if (!container || typeof container.querySelectorAll !== "function") return EMPTY3;
|
|
@@ -2351,13 +2351,13 @@ function censusHitBands(container, doc) {
|
|
|
2351
2351
|
if (!OPEN_TAGS.has(tag)) continue;
|
|
2352
2352
|
const cs = styleOf2(el, ownerDoc);
|
|
2353
2353
|
const open = isUnfilled(attrOrComputed(el, "fill", cs));
|
|
2354
|
-
const
|
|
2354
|
+
const w2 = widthPx(attrOrComputed(el, "stroke-width", cs) || "1");
|
|
2355
2355
|
const geom = String(el.getAttribute?.("d") ?? "") || `${tag}#${String(el.getAttribute?.(ROW_IDX_ATTR) ?? "")}`;
|
|
2356
2356
|
const inert = String(cs?.pointerEvents ?? el.style?.pointerEvents ?? "") === "none";
|
|
2357
|
-
rows.push({ el, geom, w:
|
|
2358
|
-
if (isFinite(
|
|
2357
|
+
rows.push({ el, geom, w: w2, open, inert });
|
|
2358
|
+
if (isFinite(w2)) {
|
|
2359
2359
|
const prev = widestByGeom.get(geom);
|
|
2360
|
-
if (prev === void 0 ||
|
|
2360
|
+
if (prev === void 0 || w2 > prev) widestByGeom.set(geom, w2);
|
|
2361
2361
|
}
|
|
2362
2362
|
}
|
|
2363
2363
|
const out = { ...EMPTY3 };
|
|
@@ -2401,10 +2401,10 @@ function median(xs) {
|
|
|
2401
2401
|
return s.length % 2 ? s[m2] : (s[m2 - 1] + s[m2]) / 2;
|
|
2402
2402
|
}
|
|
2403
2403
|
function robustLine(v3, pos) {
|
|
2404
|
-
const
|
|
2405
|
-
const step = Math.max(1, Math.floor(
|
|
2404
|
+
const n2 = v3.length;
|
|
2405
|
+
const step = Math.max(1, Math.floor(n2 / FIT_SAMPLE));
|
|
2406
2406
|
const idx = [];
|
|
2407
|
-
for (let i = 0; i <
|
|
2407
|
+
for (let i = 0; i < n2; i += step) idx.push(i);
|
|
2408
2408
|
const slopes = [];
|
|
2409
2409
|
for (let p2 = 0; p2 < idx.length; p2++) {
|
|
2410
2410
|
for (let q2 = p2 + 1; q2 < idx.length; q2++) {
|
|
@@ -2476,8 +2476,8 @@ function censusValuePlacement(container, data) {
|
|
|
2476
2476
|
const fit = 1 - ssRes / ssTot;
|
|
2477
2477
|
if (fit >= VALUE_AXIS_MIN_FIT && (!best || fit > best.fit)) {
|
|
2478
2478
|
const full = new Array(dots.length).fill(NaN);
|
|
2479
|
-
keep.forEach((k3,
|
|
2480
|
-
full[k3] = res[
|
|
2479
|
+
keep.forEach((k3, j4) => {
|
|
2480
|
+
full[k3] = res[j4];
|
|
2481
2481
|
});
|
|
2482
2482
|
best = { col: c2, axis, fit, res: full, log };
|
|
2483
2483
|
}
|
|
@@ -2528,12 +2528,12 @@ function contentExtentOf(boxes) {
|
|
|
2528
2528
|
if (usable.length === 0) return { w: 0, h: 0, source: "none" };
|
|
2529
2529
|
const inFlow = usable.filter((b2) => !b2.floating);
|
|
2530
2530
|
const counted = inFlow.length > 0 ? inFlow : usable;
|
|
2531
|
-
let
|
|
2531
|
+
let w2 = 0, h3 = 0;
|
|
2532
2532
|
for (const b2 of counted) {
|
|
2533
|
-
if (b2.right >
|
|
2533
|
+
if (b2.right > w2) w2 = b2.right;
|
|
2534
2534
|
if (b2.bottom > h3) h3 = b2.bottom;
|
|
2535
2535
|
}
|
|
2536
|
-
return { w:
|
|
2536
|
+
return { w: w2, h: h3, source: inFlow.length > 0 ? "in-flow" : "all-floating" };
|
|
2537
2537
|
}
|
|
2538
2538
|
function scrollFitFor(contentW, contentH, viewportW, viewportH, slackPx = SCROLL_SLACK_PX) {
|
|
2539
2539
|
return {
|
|
@@ -2543,8 +2543,8 @@ function scrollFitFor(contentW, contentH, viewportW, viewportH, slackPx = SCROLL
|
|
|
2543
2543
|
}
|
|
2544
2544
|
var FIT_CONTENT_SELECTOR = "text, .d3-mark, .d3-legend-mark";
|
|
2545
2545
|
var PHANTOM_FRACTION = 0.95;
|
|
2546
|
-
function isPhantomBox(
|
|
2547
|
-
return
|
|
2546
|
+
function isPhantomBox(w2, h3, refW, refH) {
|
|
2547
|
+
return w2 > refW * PHANTOM_FRACTION || h3 > refH * PHANTOM_FRACTION;
|
|
2548
2548
|
}
|
|
2549
2549
|
var MAX_FRAME_GROW_FACTOR = 20;
|
|
2550
2550
|
function planFrameGrow(inkBottomPx, elHeightPx, viewBoxH, ctmScale, slackPx = SCROLL_SLACK_PX, maxFactor = MAX_FRAME_GROW_FACTOR) {
|
|
@@ -2584,12 +2584,12 @@ function labelBand(boxes, tracks = [], pad = AXIS_PIN_BAND_PAD_PX, trackReach =
|
|
|
2584
2584
|
if (b2.bottom > bottom) bottom = b2.bottom;
|
|
2585
2585
|
}
|
|
2586
2586
|
if (!isFinite(top) || !isFinite(bottom) || bottom <= top) return null;
|
|
2587
|
-
for (const
|
|
2588
|
-
if (!isFinite(
|
|
2589
|
-
const gap =
|
|
2587
|
+
for (const t of tracks || []) {
|
|
2588
|
+
if (!isFinite(t.top) || !isFinite(t.bottom)) continue;
|
|
2589
|
+
const gap = t.bottom < top ? top - t.bottom : t.top > bottom ? t.top - bottom : 0;
|
|
2590
2590
|
if (gap > trackReach) continue;
|
|
2591
|
-
if (
|
|
2592
|
-
if (
|
|
2591
|
+
if (t.top < top) top = t.top;
|
|
2592
|
+
if (t.bottom > bottom) bottom = t.bottom;
|
|
2593
2593
|
}
|
|
2594
2594
|
return { top: top - pad, bottom: bottom + pad };
|
|
2595
2595
|
}
|
|
@@ -2722,10 +2722,10 @@ function unpinScrolledAxis(container) {
|
|
|
2722
2722
|
} catch {
|
|
2723
2723
|
}
|
|
2724
2724
|
}
|
|
2725
|
-
function textHidden(
|
|
2726
|
-
if (
|
|
2725
|
+
function textHidden(t, view) {
|
|
2726
|
+
if (t.getAttribute("display") === "none" || t.getAttribute("visibility") === "hidden") return true;
|
|
2727
2727
|
try {
|
|
2728
|
-
const cs = view.getComputedStyle(
|
|
2728
|
+
const cs = view.getComputedStyle(t);
|
|
2729
2729
|
if (cs && (cs.display === "none" || cs.visibility === "hidden")) return true;
|
|
2730
2730
|
} catch {
|
|
2731
2731
|
}
|
|
@@ -2763,10 +2763,10 @@ function backdropFill(svg, container, view, svgBox) {
|
|
|
2763
2763
|
}
|
|
2764
2764
|
function cloneWithChain(el, svg, root) {
|
|
2765
2765
|
const chain = [];
|
|
2766
|
-
let
|
|
2767
|
-
while (
|
|
2768
|
-
chain.unshift(
|
|
2769
|
-
|
|
2766
|
+
let n2 = el.parentElement;
|
|
2767
|
+
while (n2 && n2 !== svg) {
|
|
2768
|
+
chain.unshift(n2);
|
|
2769
|
+
n2 = n2.parentElement;
|
|
2770
2770
|
}
|
|
2771
2771
|
let parent = root;
|
|
2772
2772
|
for (const anc of chain) {
|
|
@@ -2795,13 +2795,13 @@ function pinScrolledAxis(container, svg) {
|
|
|
2795
2795
|
const ticks = svg.querySelectorAll(".tick");
|
|
2796
2796
|
const byAxis = /* @__PURE__ */ new Map();
|
|
2797
2797
|
for (let i = 0; i < ticks.length; i++) {
|
|
2798
|
-
const
|
|
2799
|
-
if (
|
|
2800
|
-
const p2 =
|
|
2798
|
+
const t = ticks[i];
|
|
2799
|
+
if (t.closest("svg") !== svg) continue;
|
|
2800
|
+
const p2 = t.parentElement;
|
|
2801
2801
|
if (!p2) continue;
|
|
2802
2802
|
const list = byAxis.get(p2);
|
|
2803
|
-
if (list) list.push(
|
|
2804
|
-
else byAxis.set(p2, [
|
|
2803
|
+
if (list) list.push(t);
|
|
2804
|
+
else byAxis.set(p2, [t]);
|
|
2805
2805
|
}
|
|
2806
2806
|
const axes = [];
|
|
2807
2807
|
const cands = [];
|
|
@@ -2833,13 +2833,13 @@ function pinScrolledAxis(container, svg) {
|
|
|
2833
2833
|
const carried = [];
|
|
2834
2834
|
const texts = svg.querySelectorAll("text");
|
|
2835
2835
|
for (let i = 0; i < texts.length && carried.length < AXIS_PIN_MAX_CARRIED; i++) {
|
|
2836
|
-
const
|
|
2837
|
-
if (
|
|
2838
|
-
if (
|
|
2839
|
-
if (axis.contains(
|
|
2840
|
-
const r = rel(
|
|
2836
|
+
const t = texts[i];
|
|
2837
|
+
if (t.closest("svg") !== svg) continue;
|
|
2838
|
+
if (t.closest(".tick") || t.closest(".d3-mark") || t.closest(".d3-legend-mark")) continue;
|
|
2839
|
+
if (axis.contains(t) || textHidden(t, view)) continue;
|
|
2840
|
+
const r = rel(t.getBoundingClientRect());
|
|
2841
2841
|
if (!(r.right > r.left) || !(r.bottom > r.top)) continue;
|
|
2842
|
-
if (r.top >= band.top && r.bottom <= band.bottom) carried.push(
|
|
2842
|
+
if (r.top >= band.top && r.bottom <= band.bottom) carried.push(t);
|
|
2843
2843
|
}
|
|
2844
2844
|
const pinSvg = doc.createElementNS(SVG_NS2, "svg");
|
|
2845
2845
|
for (const a2 of ["font-family", "font-size", "font-weight", "font", "fill", "color", "text-rendering"]) {
|
|
@@ -2865,7 +2865,7 @@ function pinScrolledAxis(container, svg) {
|
|
|
2865
2865
|
back.setAttribute("fill", backdropFill(svg, container, view, svgBox));
|
|
2866
2866
|
pinSvg.appendChild(back);
|
|
2867
2867
|
cloneWithChain(axis, svg, pinSvg);
|
|
2868
|
-
for (const
|
|
2868
|
+
for (const t of carried) cloneWithChain(t, svg, pinSvg);
|
|
2869
2869
|
const overlay = doc.createElement("div");
|
|
2870
2870
|
overlay.setAttribute("data-bic-axis-pin", "1");
|
|
2871
2871
|
const o2 = overlay.style;
|
|
@@ -3111,15 +3111,15 @@ function decideLabelColor(textColor, fill, fillOpacity, pageBg, minContrast = MI
|
|
|
3111
3111
|
return useLight ? { fix: true, color: LIGHT_TEXT, reason: "fixed-light" } : { fix: true, color: DARK_TEXT, reason: "fixed-dark" };
|
|
3112
3112
|
}
|
|
3113
3113
|
var GLYPH_SAMPLE_N = 3;
|
|
3114
|
-
function glyphSampleGrid(box,
|
|
3114
|
+
function glyphSampleGrid(box, n2 = GLYPH_SAMPLE_N) {
|
|
3115
3115
|
const out = [];
|
|
3116
|
-
if (!box || !(box.width > 0) || !(box.height > 0) || !(
|
|
3117
|
-
const k3 = Math.floor(
|
|
3116
|
+
if (!box || !(box.width > 0) || !(box.height > 0) || !(n2 >= 1)) return out;
|
|
3117
|
+
const k3 = Math.floor(n2);
|
|
3118
3118
|
for (let i = 0; i < k3; i++) {
|
|
3119
|
-
for (let
|
|
3119
|
+
for (let j4 = 0; j4 < k3; j4++) {
|
|
3120
3120
|
out.push({
|
|
3121
3121
|
x: box.left + box.width * (i + 0.5) / k3,
|
|
3122
|
-
y: box.top + box.height * (
|
|
3122
|
+
y: box.top + box.height * (j4 + 0.5) / k3
|
|
3123
3123
|
});
|
|
3124
3124
|
}
|
|
3125
3125
|
}
|
|
@@ -3162,9 +3162,9 @@ function backedSamples(el, pts) {
|
|
|
3162
3162
|
var DOC_POSITION_FOLLOWING = 4;
|
|
3163
3163
|
function paintRoot(el, container) {
|
|
3164
3164
|
let root = null;
|
|
3165
|
-
for (let
|
|
3166
|
-
if (String(
|
|
3167
|
-
if (
|
|
3165
|
+
for (let n2 = el.parentElement; n2; n2 = n2.parentElement) {
|
|
3166
|
+
if (String(n2.tagName || "").toLowerCase() === "svg") root = n2;
|
|
3167
|
+
if (n2 === container) break;
|
|
3168
3168
|
}
|
|
3169
3169
|
return root;
|
|
3170
3170
|
}
|
|
@@ -3234,8 +3234,8 @@ function applyLabelContrast(container, opts = {}) {
|
|
|
3234
3234
|
return report;
|
|
3235
3235
|
}
|
|
3236
3236
|
const win = container.ownerDocument?.defaultView;
|
|
3237
|
-
for (let
|
|
3238
|
-
const tx = texts[
|
|
3237
|
+
for (let t = 0; t < texts.length; t++) {
|
|
3238
|
+
const tx = texts[t];
|
|
3239
3239
|
if (tx.getAttribute(LABEL_CONTRAST_DONE_ATTR) === "1") continue;
|
|
3240
3240
|
const tr = tx.getBoundingClientRect();
|
|
3241
3241
|
if (tr.width <= 0 || tr.height <= 0) continue;
|
|
@@ -3343,7 +3343,7 @@ function noopViewStateProvider() {
|
|
|
3343
3343
|
return { load: () => ({}), save: () => {
|
|
3344
3344
|
} };
|
|
3345
3345
|
}
|
|
3346
|
-
var parseRowIdxs = (s) => (s || "").split(",").map((x3) => parseInt(x3, 10)).filter((
|
|
3346
|
+
var parseRowIdxs = (s) => (s || "").split(",").map((x3) => parseInt(x3, 10)).filter((n2) => Number.isFinite(n2));
|
|
3347
3347
|
function assembleD3(base, ...plugins) {
|
|
3348
3348
|
return Object.assign({}, base, ...plugins);
|
|
3349
3349
|
}
|
|
@@ -3561,7 +3561,7 @@ function createChartHost(container, config) {
|
|
|
3561
3561
|
const dim = active && !selectionIsPeriod;
|
|
3562
3562
|
container.classList?.[dim ? "add" : "remove"](SELECTION_ACTIVE_CLASS);
|
|
3563
3563
|
const lit = container.querySelectorAll(`.${ACTIVE_TICK_CLASS}`);
|
|
3564
|
-
for (const
|
|
3564
|
+
for (const t of Array.from(lit)) t.classList?.remove(ACTIVE_TICK_CLASS);
|
|
3565
3565
|
const tickStillDrawn = !!activeTickEl && (typeof container.contains === "function" ? container.contains(activeTickEl) : activeTickEl.isConnected !== false);
|
|
3566
3566
|
if (active && tickStillDrawn) activeTickEl.classList?.add(ACTIVE_TICK_CLASS);
|
|
3567
3567
|
const wanted = new Set(sel ?? []);
|
|
@@ -3906,7 +3906,7 @@ function createChartGroup(columns, rows, opts = {}) {
|
|
|
3906
3906
|
return forId;
|
|
3907
3907
|
};
|
|
3908
3908
|
const payloadFor = (sourceRowIdxs) => {
|
|
3909
|
-
const idxs = sourceRowIdxs ? sourceRowIdxs.slice() : table.map((
|
|
3909
|
+
const idxs = sourceRowIdxs ? sourceRowIdxs.slice() : table.map((_4, i) => i);
|
|
3910
3910
|
const subset = idxs.map((i) => table[i]);
|
|
3911
3911
|
const payload = buildRenderPayload(cols, subset, geo ?? void 0, point ?? void 0);
|
|
3912
3912
|
return { payload, rowMap: idxs };
|