@marimo-team/islands 0.23.15-dev55 → 0.23.15-dev58

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.
Files changed (126) hide show
  1. package/dist/{ConnectedDataExplorerComponent-DMcymmpc.js → ConnectedDataExplorerComponent-CJaUI-S-.js} +3 -3
  2. package/dist/{any-language-editor-BfTj3PPF.js → any-language-editor-P9tjkj4n.js} +18 -18
  3. package/dist/{architectureDiagram-VXUJARFQ-B3jN8fkV.js → architectureDiagram-VXUJARFQ-DXwkyAaM.js} +5 -5
  4. package/dist/{blockDiagram-VD42YOAC-Dq_8lAbz.js → blockDiagram-VD42YOAC-CIOjvxeD.js} +5 -5
  5. package/dist/{c4Diagram-YG6GDRKO-BPzX9a9A.js → c4Diagram-YG6GDRKO-B6dZC_oU.js} +4 -4
  6. package/dist/{channel-D_qwSlm9.js → channel-BN070S0F.js} +1 -1
  7. package/dist/{chat-ui-CYGIiYqI.js → chat-ui-BdSDiVjk.js} +79 -74
  8. package/dist/{chunk-ABZYJK2D-CDSMdLBr.js → chunk-ABZYJK2D-BxBDji1u.js} +1 -1
  9. package/dist/{chunk-ATLVNIR6-BAW0e_d_.js → chunk-ATLVNIR6-qFiszptQ.js} +1 -1
  10. package/dist/{chunk-B4BG7PRW-CfEI05WL.js → chunk-B4BG7PRW-B_z2FEHm.js} +4 -4
  11. package/dist/{chunk-DI55MBZ5-CZS7hhjV.js → chunk-DI55MBZ5-D4Y8yV8B.js} +4 -4
  12. package/dist/{chunk-EXTU4WIE-DHwKB8ls.js → chunk-EXTU4WIE-BQPBhApE.js} +1 -1
  13. package/dist/{chunk-JA3XYJ7Z-Cy80gDpz.js → chunk-JA3XYJ7Z-CY4CRbV5.js} +2 -2
  14. package/dist/{chunk-JZLCHNYA-yfXq27Zq.js → chunk-JZLCHNYA-DWIR9m5O.js} +4 -4
  15. package/dist/{chunk-N4CR4FBY-C9D3Wsot.js → chunk-N4CR4FBY-Bw2HcMNc.js} +5 -5
  16. package/dist/{chunk-QN33PNHL-Bh2YDyg7.js → chunk-QN33PNHL-DPBNNzpR.js} +1 -1
  17. package/dist/{chunk-QXUST7PY-kDpsCDoY.js → chunk-QXUST7PY-DtC2t9Mk.js} +5 -5
  18. package/dist/{chunk-S3R3BYOJ-DkY8Kz3y.js → chunk-S3R3BYOJ-BdgLc8AM.js} +1 -1
  19. package/dist/{chunk-TZMSLE5B-CMZoW3vd.js → chunk-TZMSLE5B-BzSHcq-K.js} +1 -1
  20. package/dist/{classDiagram-2ON5EDUG-b2d3ZqfR.js → classDiagram-2ON5EDUG-BiQPjMNY.js} +10 -10
  21. package/dist/{classDiagram-v2-WZHVMYZB-RvnJbJ5M.js → classDiagram-v2-WZHVMYZB-YHdR8fqM.js} +10 -10
  22. package/dist/{code-visibility-6VwDeiPl.js → code-visibility-BwRCU9D5.js} +9 -9
  23. package/dist/{dagre-6UL2VRFP--ruFWg_S.js → dagre-6UL2VRFP-DpYjBqQs.js} +7 -7
  24. package/dist/{diagram-PSM6KHXK-CGakapLj.js → diagram-PSM6KHXK-D4ftnaua.js} +6 -6
  25. package/dist/{diagram-QEK2KX5R-CtqD8u_P.js → diagram-QEK2KX5R-DVlUOgs1.js} +4 -4
  26. package/dist/{diagram-S2PKOQOG-BS1wa35J.js → diagram-S2PKOQOG-CGh4OMEV.js} +4 -4
  27. package/dist/{dist-BGLXXYL4.js → dist-3NCqaWjt.js} +2 -2
  28. package/dist/{dist-95kpvRSY.js → dist-4lVIWUT3.js} +1 -1
  29. package/dist/dist-5o9uz19x.js +5 -0
  30. package/dist/{dist-B1k1NmGB.js → dist-B2jmQKKx.js} +2 -2
  31. package/dist/{dist-kcg3gjx6.js → dist-BCX980mU.js} +2 -2
  32. package/dist/{dist-c6wTyIhD.js → dist-BIEt-mlF.js} +1 -1
  33. package/dist/{dist-tJic1rC-.js → dist-BO5HRiTf.js} +2 -2
  34. package/dist/{dist-3MT9i_N5.js → dist-BOMbzyb3.js} +85 -85
  35. package/dist/{dist-Dx3eDsHX.js → dist-BP39XM8u.js} +1 -1
  36. package/dist/{dist-DijFs2Lk.js → dist-BPF0gTRZ.js} +6 -6
  37. package/dist/{dist-BvCrjp81.js → dist-BTdrwBWP.js} +22 -22
  38. package/dist/{dist-CLBjD8zw.js → dist-BdqCKQ1O.js} +2 -2
  39. package/dist/dist-BpDH0DEP.js +5 -0
  40. package/dist/dist-BpXhbQXO.js +8 -0
  41. package/dist/{dist-DgZczohI.js → dist-BpeiYpG2.js} +2 -2
  42. package/dist/{dist-Db1W16d-.js → dist-BwhXBwMd.js} +1 -1
  43. package/dist/dist-ByadAk_L.js +5 -0
  44. package/dist/{dist-B69xyr_D.js → dist-C18MUWTj.js} +2 -2
  45. package/dist/{dist-DPdzbDlL.js → dist-C2_4pjuS.js} +1 -1
  46. package/dist/{dist-B56Dml3A.js → dist-CFSb_Frm.js} +1 -1
  47. package/dist/dist-CK0g7JvP.js +8 -0
  48. package/dist/{dist-CNXNPADS.js → dist-CRmSjkLP.js} +2 -2
  49. package/dist/{dist-D3T8fCFo.js → dist-CSlJrrAw.js} +86 -81
  50. package/dist/dist-CfzCtiq2.js +5 -0
  51. package/dist/{dist-4-bJUNMb.js → dist-D3bdsa1d.js} +4 -4
  52. package/dist/dist-D8JtVFrW.js +8 -0
  53. package/dist/dist-DK2Oocpu.js +6 -0
  54. package/dist/{dist-DBN2w27P.js → dist-DZwp8lro.js} +3 -3
  55. package/dist/{dist-BFgLBSJb.js → dist-DaXJPX8F.js} +2 -2
  56. package/dist/{dist-U4F-tbMs.js → dist-De-GlSAs.js} +246 -184
  57. package/dist/{dist-DPH6RMhL.js → dist-DgjbnqTg.js} +125 -125
  58. package/dist/dist-DnSu977r.js +5 -0
  59. package/dist/{dist-e29IFSI0.js → dist-DviUBLUp.js} +4 -4
  60. package/dist/{dist-BIdzGb3O.js → dist-DwqBJ014.js} +2 -2
  61. package/dist/{dist-BGj6VvC-.js → dist-JGehap7K.js} +5 -5
  62. package/dist/{dist-BGtkYshf.js → dist-LpLXa9Lb.js} +2 -2
  63. package/dist/dist-UmxJm6sW.js +8 -0
  64. package/dist/dist-aYSBQSyM.js +5 -0
  65. package/dist/dist-kkZ1Ztlh.js +6 -0
  66. package/dist/dist-ngPczwNi.js +5 -0
  67. package/dist/{dist-C-RLuUaE.js → dist-pqIwD8VD.js} +2 -2
  68. package/dist/dist-wQRyxyTV.js +5 -0
  69. package/dist/{dist-DvOfvWFi.js → dist-w_gWE5Wf.js} +1 -1
  70. package/dist/{erDiagram-Q2GNP2WA-DmtIJBsT.js → erDiagram-Q2GNP2WA-BcKAHFqF.js} +10 -10
  71. package/dist/{esm-D6_uCZ4z.js → esm-DKOv6P2M.js} +341 -341
  72. package/dist/esm-k8PIvuZW.js +1180 -0
  73. package/dist/{extends-B88Yrunj.js → extends-Cq2JYHKy.js} +32 -16
  74. package/dist/{flowDiagram-NV44I4VS-DZsgBUcQ.js → flowDiagram-NV44I4VS-BRhSg-ro.js} +10 -10
  75. package/dist/{formats-DSfNdJLH.js → formats-BFhkZJwd.js} +1 -1
  76. package/dist/{ganttDiagram-JELNMOA3-CgFhg_6K.js → ganttDiagram-JELNMOA3-CXXCN7LN.js} +3 -3
  77. package/dist/{gitGraphDiagram-V2S2FVAM-DPInyn1F.js → gitGraphDiagram-V2S2FVAM-BOlkMSqK.js} +3 -3
  78. package/dist/{html-to-image-BoXPmWps.js → html-to-image-DDENewl2.js} +34 -34
  79. package/dist/{infoDiagram-HS3SLOUP-ETAzKIiE.js → infoDiagram-HS3SLOUP-D3TyKnL_.js} +3 -3
  80. package/dist/{journeyDiagram-XKPGCS4Q-Bc94zDj1.js → journeyDiagram-XKPGCS4Q-DEal0aT1.js} +3 -3
  81. package/dist/{kanban-definition-3W4ZIXB7-DSk8Ebci.js → kanban-definition-3W4ZIXB7-Dl90wENN.js} +7 -7
  82. package/dist/{loader-BUGT0KbC.js → loader-CTHCI-qe.js} +7 -7
  83. package/dist/main.js +31 -31
  84. package/dist/{mermaid-CYkbfJHW.js → mermaid-CdSvixW2.js} +36 -36
  85. package/dist/{mindmap-definition-VGOIOE7T-BYoCqVAJ.js → mindmap-definition-VGOIOE7T-CCDupjWW.js} +9 -9
  86. package/dist/{pieDiagram-ADFJNKIX-BaAU79Vb.js → pieDiagram-ADFJNKIX-JvXG_6hk.js} +4 -4
  87. package/dist/{process-output-CbRRhwQo.js → process-output-2QPcgBQg.js} +1 -1
  88. package/dist/purify.es-EnR5yhgI.js +783 -0
  89. package/dist/{quadrantDiagram-AYHSOK5B-BmTWJxzo.js → quadrantDiagram-AYHSOK5B-BqDB9tUC.js} +2 -2
  90. package/dist/{react-vega-DfJOSnj6.js → react-vega-BazDALhI.js} +633 -633
  91. package/dist/{requirementDiagram-UZGBJVZJ-Jrs04ua1.js → requirementDiagram-UZGBJVZJ-KbVt8SPH.js} +9 -9
  92. package/dist/{reveal-component-BF9bUh1w.js → reveal-component-y1Kk4Glg.js} +11 -11
  93. package/dist/{sankeyDiagram-TZEHDZUN-YJnhmG4N.js → sankeyDiagram-TZEHDZUN-DgkF38jx.js} +2 -2
  94. package/dist/{sequenceDiagram-WL72ISMW-D30L51Bn.js → sequenceDiagram-WL72ISMW-BDmx9n95.js} +4 -4
  95. package/dist/{stateDiagram-FKZM4ZOC-C0nZuUP8.js → stateDiagram-FKZM4ZOC-ByOvQf2n.js} +10 -10
  96. package/dist/{stateDiagram-v2-4FDKWEC3-BmovmS-G.js → stateDiagram-v2-4FDKWEC3-C3xqeavR.js} +10 -10
  97. package/dist/style.css +1 -1
  98. package/dist/{timeline-definition-IT6M3QCI-DEoIEWAl.js → timeline-definition-IT6M3QCI-CkD_trIn.js} +2 -2
  99. package/dist/{vega-component-uL9ZaXcH.js → vega-component-CrFoZT1S.js} +4 -4
  100. package/dist/{vega-embed-container-DgZMMVL3.js → vega-embed-container-DAQAMjiO.js} +2 -2
  101. package/dist/vega-loader.browser-DmpxCJqx.js +1353 -0
  102. package/dist/{xychartDiagram-PRI3JC2R-iwKXEnYZ.js → xychartDiagram-PRI3JC2R-BSkNxYNw.js} +5 -5
  103. package/package.json +1 -1
  104. package/src/components/editor/chrome/panels/write-secret-modal.tsx +3 -2
  105. package/src/components/editor/connections/__tests__/secret-combobox.test.ts +134 -0
  106. package/src/components/editor/connections/database/schemas.ts +35 -27
  107. package/src/components/editor/connections/form-renderers.tsx +42 -110
  108. package/src/components/editor/connections/secret-combobox.tsx +253 -0
  109. package/src/components/editor/connections/storage/schemas.ts +12 -6
  110. package/dist/dist-9yiSURLw.js +0 -6
  111. package/dist/dist-9zfbSqew.js +0 -8
  112. package/dist/dist-BZ_VEpg8.js +0 -8
  113. package/dist/dist-BdYVjH1C.js +0 -5
  114. package/dist/dist-BiIoKp92.js +0 -6
  115. package/dist/dist-Bow9AUXt.js +0 -5
  116. package/dist/dist-C8odMDp5.js +0 -8
  117. package/dist/dist-CLgjZx38.js +0 -5
  118. package/dist/dist-CnMOJtGP.js +0 -5
  119. package/dist/dist-D-5m1nDT.js +0 -5
  120. package/dist/dist-D8AXqiCV.js +0 -5
  121. package/dist/dist-DMuf8sZd.js +0 -5
  122. package/dist/dist-DszXOVSb.js +0 -5
  123. package/dist/dist-GW0m0q65.js +0 -8
  124. package/dist/esm-BxhNWHqh.js +0 -1171
  125. package/dist/purify.es-C-fIGuQm.js +0 -557
  126. package/dist/vega-loader.browser-IU8eTDwM.js +0 -1333
@@ -0,0 +1,1353 @@
1
+ import { t as Objects } from "./objects-De59twF-.js";
2
+ import { a as tickStep, n as precisionPrefix_default, r as precisionFixed_default, s as bisector, t as precisionRound_default } from "./precisionRound-CnHPY_5v.js";
3
+ import { i as formatSpecifier, n as formatPrefix, r as locale_default, t as format$1 } from "./defaultLocale-BpsHxBd7.js";
4
+ import { C as timeMinute, N as millisecond, S as utcHour, T as second, _ as utcSunday, a as formatLocale, b as utcDay, c as timeMonth, i as utcParse, l as utcMonth, n as timeParse, o as timeYear, p as timeSunday, r as utcFormat, s as utcYear, t as timeFormat, v as timeDay, w as utcMinute, x as timeHour } from "./defaultLocale-DoeErsX2.js";
5
+ function accessor(o, F, I) {
6
+ return Object.assign(o, {
7
+ fields: F || [],
8
+ fname: I
9
+ });
10
+ }
11
+ function accessorName(o) {
12
+ return o == null ? null : o.fname;
13
+ }
14
+ function accessorFields(o) {
15
+ return o == null ? null : o.fields;
16
+ }
17
+ function getter(o) {
18
+ return o.length === 1 ? get1(o[0]) : getN(o);
19
+ }
20
+ var get1 = (o) => function(F) {
21
+ return F[o];
22
+ }, getN = (o) => {
23
+ let F = o.length;
24
+ return function(I) {
25
+ for (let L = 0; L < F; ++L) I = I[o[L]];
26
+ return I;
27
+ };
28
+ };
29
+ function error(o) {
30
+ throw Error(o);
31
+ }
32
+ function splitAccessPath(o) {
33
+ let F = [], I = o.length, L = null, R = 0, z = "", B, V, H;
34
+ o += "";
35
+ function U() {
36
+ F.push(z + o.substring(B, V)), z = "", B = V + 1;
37
+ }
38
+ for (B = V = 0; V < I; ++V) if (H = o[V], H === "\\") z += o.substring(B, V++), B = V;
39
+ else if (H === L) U(), L = null, R = -1;
40
+ else if (L) continue;
41
+ else B === R && H === '"' || B === R && H === "'" ? (B = V + 1, L = H) : H === "." && !R ? V > B ? U() : B = V + 1 : H === "[" ? (V > B && U(), R = B = V + 1) : H === "]" && (R || error("Access path missing open bracket: " + o), R > 0 && U(), R = 0, B = V + 1);
42
+ return R && error("Access path missing closing bracket: " + o), L && error("Access path missing closing quote: " + o), V > B && (V++, U()), F;
43
+ }
44
+ function field(o, F, I) {
45
+ let L = splitAccessPath(o), R = L.length === 1 ? L[0] : o;
46
+ return accessor((I && I.get || getter)(L), [R], F || R);
47
+ }
48
+ const id = field("id"), identity = accessor((o) => o, [], "identity"), zero = accessor(() => 0, [], "zero"), one = accessor(() => 1, [], "one"), truthy = accessor(() => true, [], "true"), falsy = accessor(() => false, [], "false"), DisallowedObjectProperties = /* @__PURE__ */ new Set([...Object.getOwnPropertyNames(Object.prototype).filter((o) => typeof Object.prototype[o] == "function"), "__proto__"]);
49
+ function log$1(o, F, I) {
50
+ let L = [F, ...I];
51
+ console[o](...L);
52
+ }
53
+ const None = 0, Error$1 = 1, Warn = 2, Info = 3, Debug = 4;
54
+ function logger_default(o, F, I = log$1) {
55
+ let L = o || 0;
56
+ return {
57
+ level(o2) {
58
+ return arguments.length ? (L = +o2, this) : L;
59
+ },
60
+ error(...o2) {
61
+ return L >= 1 && I(F || "error", "ERROR", o2), this;
62
+ },
63
+ warn(...o2) {
64
+ return L >= 2 && I(F || "warn", "WARN", o2), this;
65
+ },
66
+ info(...o2) {
67
+ return L >= 3 && I(F || "log", "INFO", o2), this;
68
+ },
69
+ debug(...o2) {
70
+ return L >= 4 && I(F || "log", "DEBUG", o2), this;
71
+ }
72
+ };
73
+ }
74
+ const isArray = Array.isArray;
75
+ function isObject(o) {
76
+ return o === Object(o);
77
+ }
78
+ var isLegalKey = (o) => o !== "__proto__" && o !== "constructor" && o !== "prototype";
79
+ function mergeConfig(...o) {
80
+ return o.reduce((o2, F) => {
81
+ for (let I in F) if (I === "signals") o2.signals = mergeNamed(o2.signals, F.signals);
82
+ else {
83
+ let L = I === "legend" ? { layout: 1 } : I === "style" ? true : null;
84
+ writeConfig(o2, I, F[I], L);
85
+ }
86
+ return o2;
87
+ }, {});
88
+ }
89
+ function writeConfig(o, F, I, L) {
90
+ if (!isLegalKey(F)) return;
91
+ let R, z;
92
+ if (isObject(I) && !isArray(I)) {
93
+ let B = I;
94
+ for (R in z = isObject(o[F]) ? o[F] : o[F] = {}, B) L && (L === true || L[R]) ? writeConfig(z, R, B[R]) : isLegalKey(R) && (z[R] = B[R]);
95
+ } else o[F] = I;
96
+ }
97
+ function mergeNamed(o, F) {
98
+ if (o == null) return F;
99
+ if (F == null) return o;
100
+ let I = {}, L = [];
101
+ function R(o2) {
102
+ I[o2.name] || (I[o2.name] = 1, L.push(o2));
103
+ }
104
+ return F.forEach(R), o.forEach(R), L;
105
+ }
106
+ function peek(o) {
107
+ return o[o.length - 1];
108
+ }
109
+ function toNumber(o) {
110
+ return o == null || o === "" ? null : +o;
111
+ }
112
+ function isNonEmpty(o) {
113
+ return o.length > 0;
114
+ }
115
+ var exp = (o) => (F) => o * Math.exp(F), log = (o) => (F) => Math.log(o * F), symlog = (o) => (F) => Math.sign(F) * Math.log1p(Math.abs(F / o)), symexp = (o) => (F) => Math.sign(F) * Math.expm1(Math.abs(F)) * o, pow = (o) => (F) => F < 0 ? -((-F) ** +o) : F ** +o, coerceNumber = (o) => toNumber(o) ?? 0, identity$1 = (o) => o;
116
+ function pan(o, F, I, L) {
117
+ isNonEmpty(o) || error("Domain array must not be empty");
118
+ let R = I(o[0]), z = I(peek(o)), B = (z - R) * F;
119
+ return [L(R - B), L(z - B)];
120
+ }
121
+ function panLinear(o, F) {
122
+ return pan(o, F, coerceNumber, identity$1);
123
+ }
124
+ function panLog(o, F) {
125
+ let I = Math.sign(o[0]);
126
+ return pan(o, F, log(I), exp(I));
127
+ }
128
+ function panPow(o, F, I) {
129
+ return pan(o, F, pow(I), pow(1 / I));
130
+ }
131
+ function panSymlog(o, F, I) {
132
+ return pan(o, F, symlog(I), symexp(I));
133
+ }
134
+ function zoom(o, F, I, L, R) {
135
+ isNonEmpty(o) || error("Domain array must not be empty");
136
+ let z = L(o[0]), B = L(peek(o)), V = F == null ? (z + B) / 2 : L(F);
137
+ return [R(V + (z - V) * I), R(V + (B - V) * I)];
138
+ }
139
+ function zoomLinear(o, F, I) {
140
+ return zoom(o, F, I, coerceNumber, identity$1);
141
+ }
142
+ function zoomLog(o, F, I) {
143
+ let L = Math.sign(o[0]);
144
+ return zoom(o, F, I, log(L), exp(L));
145
+ }
146
+ function zoomPow(o, F, I, L) {
147
+ return zoom(o, F, I, pow(L), pow(1 / L));
148
+ }
149
+ function zoomSymlog(o, F, I, L) {
150
+ return zoom(o, F, I, symlog(L), symexp(L));
151
+ }
152
+ function quarter(o) {
153
+ return 1 + ~~(new Date(o).getMonth() / 3);
154
+ }
155
+ function utcquarter(o) {
156
+ return 1 + ~~(new Date(o).getUTCMonth() / 3);
157
+ }
158
+ function array_default(o) {
159
+ return o == null ? [] : isArray(o) ? o : [o];
160
+ }
161
+ function clampRange(o, F, I) {
162
+ let L = o[0], R = o[1], z;
163
+ return R < L && (z = R, R = L, L = z), z = R - L, z >= I - F ? [F, I] : [L = Math.min(Math.max(L, F), I - z), L + z];
164
+ }
165
+ function isFunction(o) {
166
+ return typeof o == "function";
167
+ }
168
+ var DESCENDING = "descending";
169
+ function compare(o, F, I) {
170
+ let L = I || {}, R = array_default(F) || [], z = [], B = [], V = {}, H = L.comparator || comparator;
171
+ return array_default(o).forEach((o2, F2) => {
172
+ if (o2 == null) return;
173
+ z.push(R[F2] === DESCENDING ? -1 : 1);
174
+ let I2 = isFunction(o2) ? o2 : field(o2, void 0, L);
175
+ B.push(I2), (accessorFields(I2) || []).forEach((o3) => V[o3] = 1);
176
+ }), B.length === 0 ? null : accessor(H(B, z), Object.keys(V));
177
+ }
178
+ const ascending = (o, F) => {
179
+ let I = o, L = F;
180
+ return (I < L || I == null) && L != null ? -1 : (I > L || L == null) && I != null ? 1 : (L = L instanceof Date ? +L : L, I = I instanceof Date ? +I : I) !== I && L === L ? -1 : L !== L && I === I ? 1 : 0;
181
+ };
182
+ var comparator = (o, F) => o.length === 1 ? compare1(o[0], F[0]) : compareN(o, F, o.length), compare1 = (o, F) => function(I, L) {
183
+ return ascending(o(I), o(L)) * F;
184
+ }, compareN = (o, F, I) => (F.push(0), function(L, R) {
185
+ let z, B = 0, V = -1;
186
+ for (; B === 0 && ++V < I; ) z = o[V], B = ascending(z(L), z(R));
187
+ return B * F[V];
188
+ });
189
+ function constant_default(o) {
190
+ return isFunction(o) ? o : () => o;
191
+ }
192
+ function debounce(o, F) {
193
+ let I = null;
194
+ return (L) => {
195
+ I && clearTimeout(I), I = setTimeout(() => (F(L), I = null), o);
196
+ };
197
+ }
198
+ function extend(o, ...F) {
199
+ for (let I of F) for (let F2 in I) o[F2] = I[F2];
200
+ return o;
201
+ }
202
+ function extent(o, F) {
203
+ let I = 0, L, R, z, B;
204
+ if (o && (L = o.length)) if (F == null) {
205
+ for (R = o[I]; I < L && (R == null || R !== R); R = o[++I]) ;
206
+ for (z = B = R; I < L; ++I) R = o[I], R != null && (R < z && (z = R), R > B && (B = R));
207
+ } else {
208
+ for (R = F(o[I]); I < L && (R == null || R !== R); R = F(o[++I])) ;
209
+ for (z = B = R; I < L; ++I) R = F(o[I]), R != null && (R < z && (z = R), R > B && (B = R));
210
+ }
211
+ return [z, B];
212
+ }
213
+ function extentIndex(o, F) {
214
+ let I = o.length, L = -1, R, z, B, V, H;
215
+ if (F == null) {
216
+ for (; ++L < I; ) if (V = o[L], V != null && V >= V) {
217
+ B = H = V;
218
+ break;
219
+ }
220
+ if (L === I) return [-1, -1];
221
+ for (R = z = L; ++L < I; ) V = o[L], V != null && (B > V && (B = V, R = L), H < V && (H = V, z = L));
222
+ } else {
223
+ for (; ++L < I; ) if (V = F(o[L], L, o), V != null && V >= V) {
224
+ B = H = V;
225
+ break;
226
+ }
227
+ if (L === I) return [-1, -1];
228
+ for (R = z = L; ++L < I; ) V = F(o[L], L, o), V != null && (B > V && (B = V, R = L), H < V && (H = V, z = L));
229
+ }
230
+ return [R, z];
231
+ }
232
+ function hasOwnProperty(o, F) {
233
+ return Object.hasOwn(o, F);
234
+ }
235
+ var NULL = {};
236
+ function fastmap(o) {
237
+ let F = {}, I;
238
+ function L(o2) {
239
+ return hasOwnProperty(F, o2) && F[o2] !== NULL;
240
+ }
241
+ let R = {
242
+ size: 0,
243
+ empty: 0,
244
+ object: F,
245
+ has: L,
246
+ get(o2) {
247
+ return L(o2) ? F[o2] : void 0;
248
+ },
249
+ set(o2, I2) {
250
+ return L(o2) || (++R.size, F[o2] === NULL && --R.empty), F[o2] = I2, this;
251
+ },
252
+ delete(o2) {
253
+ return L(o2) && (--R.size, ++R.empty, F[o2] = NULL), this;
254
+ },
255
+ clear() {
256
+ R.size = R.empty = 0, R.object = F = {};
257
+ },
258
+ test(o2) {
259
+ return arguments.length ? (I = o2, R) : I;
260
+ },
261
+ clean() {
262
+ let o2 = {}, L2 = 0;
263
+ for (let R2 in F) {
264
+ let z = F[R2];
265
+ z !== NULL && (!I || !I(z)) && (o2[R2] = z, ++L2);
266
+ }
267
+ R.size = L2, R.empty = 0, R.object = F = o2;
268
+ }
269
+ };
270
+ return o && Object.keys(o).forEach((F2) => {
271
+ R.set(F2, o[F2]);
272
+ }), R;
273
+ }
274
+ function flush_default(o, F, I, L, R, z) {
275
+ if (!I && I !== 0) return z;
276
+ let B = +I, V = o[0], H = peek(o), U;
277
+ if (H === void 0) return z;
278
+ H < V && (U = V, V = H, H = U), U = Math.abs(F - V);
279
+ let W = Math.abs(H - F);
280
+ return U < W && U <= B ? L : W <= B ? R : z;
281
+ }
282
+ function inherits_default(o, F, I) {
283
+ let L = o.prototype = Object.create(F.prototype);
284
+ return Object.defineProperty(L, "constructor", {
285
+ value: o,
286
+ writable: true,
287
+ enumerable: true,
288
+ configurable: true
289
+ }), extend(L, I);
290
+ }
291
+ function inrange(o, F, I, L) {
292
+ let R = F[0], z = F[F.length - 1], B;
293
+ return R > z && (B = R, R = z, z = B), I = I === void 0 || I, L = L === void 0 || L, (I ? R <= o : R < o) && (L ? o <= z : o < z);
294
+ }
295
+ function isBoolean$1(o) {
296
+ return typeof o == "boolean";
297
+ }
298
+ function isDate$1(o) {
299
+ return Object.prototype.toString.call(o) === "[object Date]";
300
+ }
301
+ function isIterable(o) {
302
+ return o != null && isFunction(o[Symbol.iterator]);
303
+ }
304
+ function isNumber$1(o) {
305
+ return typeof o == "number";
306
+ }
307
+ function isRegExp(o) {
308
+ return Object.prototype.toString.call(o) === "[object RegExp]";
309
+ }
310
+ function isString(o) {
311
+ return typeof o == "string";
312
+ }
313
+ function key(o, F, I) {
314
+ let L = o ? F ? array_default(o).map((o2) => o2.replace(/\\(.)/g, "$1")) : array_default(o) : void 0, R = L == null ? void 0 : L.length, z = I && I.get || getter, B = (o2) => z(F ? [o2] : splitAccessPath(o2)), V;
315
+ if (!R || !L) V = function() {
316
+ return "";
317
+ };
318
+ else if (R === 1) {
319
+ let o2 = B(L[0]);
320
+ V = function(F2) {
321
+ return "" + o2(F2);
322
+ };
323
+ } else {
324
+ let o2 = L.map(B);
325
+ V = function(F2) {
326
+ let I2 = "" + o2[0](F2), L2 = 0;
327
+ for (; ++L2 < R; ) I2 += "|" + o2[L2](F2);
328
+ return I2;
329
+ };
330
+ }
331
+ return accessor(V, L, "key");
332
+ }
333
+ function lerp_default(o, F) {
334
+ let I = o[0], L = peek(o), R = +F;
335
+ return L === void 0 ? I : R ? R === 1 ? L : I + R * (L - I) : I;
336
+ }
337
+ var DEFAULT_MAX_SIZE = 1e4;
338
+ function lruCache_default(o) {
339
+ o = +o || DEFAULT_MAX_SIZE;
340
+ let F, I, L, R = () => {
341
+ F = {}, I = {}, L = 0;
342
+ }, z = (R2, z2) => (++L > o && (I = F, F = {}, L = 1), F[R2] = z2);
343
+ return R(), {
344
+ clear: R,
345
+ has: (o2) => hasOwnProperty(F, o2) || hasOwnProperty(I, o2),
346
+ get: (o2) => hasOwnProperty(F, o2) ? F[o2] : hasOwnProperty(I, o2) ? z(o2, I[o2]) : void 0,
347
+ set: (o2, I2) => hasOwnProperty(F, o2) ? F[o2] = I2 : z(o2, I2)
348
+ };
349
+ }
350
+ function isArrayConstructor(o) {
351
+ return o === Array || typeof o == "function" && o.prototype && ArrayBuffer.isView(o.prototype);
352
+ }
353
+ function merge(o, F, I, L) {
354
+ let R = F.length, z = I.length;
355
+ if (!z) return F;
356
+ if (!R) return I;
357
+ let B = F.constructor, V = L || (isArrayConstructor(B) ? new B(R + z) : Array(R + z)), H = 0, U = 0, W = 0;
358
+ for (; H < R && U < z; ++W) V[W] = o(F[H], I[U]) > 0 ? I[U++] : F[H++];
359
+ for (; H < R; ++H, ++W) V[W] = F[H];
360
+ for (; U < z; ++U, ++W) V[W] = I[U];
361
+ return V;
362
+ }
363
+ function repeat(o, F) {
364
+ let I = "";
365
+ for (; --F >= 0; ) I += o;
366
+ return I;
367
+ }
368
+ function pad$1(o, F, I, L) {
369
+ let R = I || " ", z = o + "", B = F - z.length;
370
+ return B <= 0 ? z : L === "left" ? repeat(R, B) + z : L === "center" ? repeat(R, ~~(B / 2)) + z + repeat(R, Math.ceil(B / 2)) : z + repeat(R, B);
371
+ }
372
+ function span_default(o) {
373
+ return o && peek(o) - o[0] || 0;
374
+ }
375
+ function stringValue(o) {
376
+ return isArray(o) ? `[${o.map((o2) => o2 === null ? "null" : stringValue(o2))}]` : isObject(o) || isString(o) ? JSON.stringify(o).replaceAll("\u2028", "\\u2028").replaceAll("\u2029", "\\u2029") : o;
377
+ }
378
+ function toBoolean(o) {
379
+ return o == null || o === "" ? null : !o || o === "false" || o === "0" ? false : !!o;
380
+ }
381
+ var defaultParser = (o) => isNumber$1(o) || isDate$1(o) ? o : Date.parse(o);
382
+ function toDate(o, F) {
383
+ return F || (F = defaultParser), o == null || o === "" ? null : F(o);
384
+ }
385
+ function toString(o) {
386
+ return o == null || o === "" ? null : o + "";
387
+ }
388
+ function toSet(o) {
389
+ let F = {}, I = o.length;
390
+ for (let L = 0; L < I; ++L) F[o[L] + ""] = true;
391
+ return F;
392
+ }
393
+ function truncate(o, F, I, L) {
394
+ let R = L ?? "\u2026", z = o + "", B = z.length, V = Math.max(0, F - R.length);
395
+ return B <= F ? z : I === "left" ? R + z.slice(B - V) : I === "center" ? z.slice(0, Math.ceil(V / 2)) + R + z.slice(B - ~~(V / 2)) : z.slice(0, V) + R;
396
+ }
397
+ function visitArray(o, F, I) {
398
+ if (o) if (F) {
399
+ let L = o.length;
400
+ for (let R = 0; R < L; ++R) {
401
+ let L2 = F(o[R]);
402
+ L2 && I(L2, R, o);
403
+ }
404
+ } else o.forEach(I);
405
+ }
406
+ function getContainerWidth(o) {
407
+ if (typeof o == "object" && o) {
408
+ if ("width" in o) return o.width;
409
+ if ("spec" in o) return getContainerWidth(o.spec);
410
+ }
411
+ }
412
+ function getVegaFieldTypes(F) {
413
+ return !F || Object.keys(F).length === 0 ? "auto" : Objects.mapValues(F, (o) => o === "date" || o === "time" ? "string" : o === "datetime" ? "date" : o);
414
+ }
415
+ var EOL = {}, EOF = {}, QUOTE = 34, NEWLINE = 10, RETURN = 13;
416
+ function objectConverter(o) {
417
+ return Function("d", "return {" + o.map(function(o2, F) {
418
+ return JSON.stringify(o2) + ": d[" + F + '] || ""';
419
+ }).join(",") + "}");
420
+ }
421
+ function customConverter(o, F) {
422
+ var I = objectConverter(o);
423
+ return function(L, R) {
424
+ return F(I(L), R, o);
425
+ };
426
+ }
427
+ function inferColumns(o) {
428
+ var F = /* @__PURE__ */ Object.create(null), I = [];
429
+ return o.forEach(function(o2) {
430
+ for (var L in o2) L in F || I.push(F[L] = L);
431
+ }), I;
432
+ }
433
+ function pad(o, F) {
434
+ var I = o + "", L = I.length;
435
+ return L < F ? Array(F - L + 1).join(0) + I : I;
436
+ }
437
+ function formatYear(o) {
438
+ return o < 0 ? "-" + pad(-o, 6) : o > 9999 ? "+" + pad(o, 6) : pad(o, 4);
439
+ }
440
+ function formatDate(o) {
441
+ var F = o.getUTCHours(), I = o.getUTCMinutes(), L = o.getUTCSeconds(), R = o.getUTCMilliseconds();
442
+ return isNaN(o) ? "Invalid Date" : formatYear(o.getUTCFullYear(), 4) + "-" + pad(o.getUTCMonth() + 1, 2) + "-" + pad(o.getUTCDate(), 2) + (R ? "T" + pad(F, 2) + ":" + pad(I, 2) + ":" + pad(L, 2) + "." + pad(R, 3) + "Z" : L ? "T" + pad(F, 2) + ":" + pad(I, 2) + ":" + pad(L, 2) + "Z" : I || F ? "T" + pad(F, 2) + ":" + pad(I, 2) + "Z" : "");
443
+ }
444
+ function dsv_default(o) {
445
+ var F = /* @__PURE__ */ RegExp('["' + o + "\n\r]"), I = o.charCodeAt(0);
446
+ function L(o2, F2) {
447
+ var I2, L2, z2 = R(o2, function(o3, R2) {
448
+ if (I2) return I2(o3, R2 - 1);
449
+ L2 = o3, I2 = F2 ? customConverter(o3, F2) : objectConverter(o3);
450
+ });
451
+ return z2.columns = L2 || [], z2;
452
+ }
453
+ function R(o2, F2) {
454
+ var L2 = [], R2 = o2.length, z2 = 0, B2 = 0, V2, H2 = R2 <= 0, U2 = false;
455
+ o2.charCodeAt(R2 - 1) === NEWLINE && --R2, o2.charCodeAt(R2 - 1) === RETURN && --R2;
456
+ function W2() {
457
+ if (H2) return EOF;
458
+ if (U2) return U2 = false, EOL;
459
+ var F3, L3 = z2, B3;
460
+ if (o2.charCodeAt(L3) === QUOTE) {
461
+ for (; z2++ < R2 && o2.charCodeAt(z2) !== QUOTE || o2.charCodeAt(++z2) === QUOTE; ) ;
462
+ return (F3 = z2) >= R2 ? H2 = true : (B3 = o2.charCodeAt(z2++)) === NEWLINE ? U2 = true : B3 === RETURN && (U2 = true, o2.charCodeAt(z2) === NEWLINE && ++z2), o2.slice(L3 + 1, F3 - 1).replace(/""/g, '"');
463
+ }
464
+ for (; z2 < R2; ) {
465
+ if ((B3 = o2.charCodeAt(F3 = z2++)) === NEWLINE) U2 = true;
466
+ else if (B3 === RETURN) U2 = true, o2.charCodeAt(z2) === NEWLINE && ++z2;
467
+ else if (B3 !== I) continue;
468
+ return o2.slice(L3, F3);
469
+ }
470
+ return H2 = true, o2.slice(L3, R2);
471
+ }
472
+ for (; (V2 = W2()) !== EOF; ) {
473
+ for (var G = []; V2 !== EOL && V2 !== EOF; ) G.push(V2), V2 = W2();
474
+ F2 && (G = F2(G, B2++)) == null || L2.push(G);
475
+ }
476
+ return L2;
477
+ }
478
+ function z(F2, I2) {
479
+ return F2.map(function(F3) {
480
+ return I2.map(function(o2) {
481
+ return W(F3[o2]);
482
+ }).join(o);
483
+ });
484
+ }
485
+ function B(F2, I2) {
486
+ return I2 ?? (I2 = inferColumns(F2)), [I2.map(W).join(o)].concat(z(F2, I2)).join("\n");
487
+ }
488
+ function V(o2, F2) {
489
+ return F2 ?? (F2 = inferColumns(o2)), z(o2, F2).join("\n");
490
+ }
491
+ function H(o2) {
492
+ return o2.map(U).join("\n");
493
+ }
494
+ function U(F2) {
495
+ return F2.map(W).join(o);
496
+ }
497
+ function W(o2) {
498
+ return o2 == null ? "" : o2 instanceof Date ? formatDate(o2) : F.test(o2 += "") ? '"' + o2.replace(/"/g, '""') + '"' : o2;
499
+ }
500
+ return {
501
+ parse: L,
502
+ parseRows: R,
503
+ format: B,
504
+ formatBody: V,
505
+ formatRows: H,
506
+ formatRow: U,
507
+ formatValue: W
508
+ };
509
+ }
510
+ function identity_default(o) {
511
+ return o;
512
+ }
513
+ function transform_default(o) {
514
+ if (o == null) return identity_default;
515
+ var F, I, L = o.scale[0], R = o.scale[1], z = o.translate[0], B = o.translate[1];
516
+ return function(o2, V) {
517
+ V || (F = I = 0);
518
+ var H = 2, U = o2.length, W = Array(U);
519
+ for (W[0] = (F += o2[0]) * L + z, W[1] = (I += o2[1]) * R + B; H < U; ) W[H] = o2[H], ++H;
520
+ return W;
521
+ };
522
+ }
523
+ function reverse_default(o, F) {
524
+ for (var I, L = o.length, R = L - F; R < --L; ) I = o[R], o[R++] = o[L], o[L] = I;
525
+ }
526
+ function feature_default(o, F) {
527
+ return typeof F == "string" && (F = o.objects[F]), F.type === "GeometryCollection" ? {
528
+ type: "FeatureCollection",
529
+ features: F.geometries.map(function(F2) {
530
+ return feature(o, F2);
531
+ })
532
+ } : feature(o, F);
533
+ }
534
+ function feature(o, F) {
535
+ var I = F.id, L = F.bbox, R = F.properties == null ? {} : F.properties, z = object(o, F);
536
+ return I == null && L == null ? {
537
+ type: "Feature",
538
+ properties: R,
539
+ geometry: z
540
+ } : L == null ? {
541
+ type: "Feature",
542
+ id: I,
543
+ properties: R,
544
+ geometry: z
545
+ } : {
546
+ type: "Feature",
547
+ id: I,
548
+ bbox: L,
549
+ properties: R,
550
+ geometry: z
551
+ };
552
+ }
553
+ function object(o, F) {
554
+ var I = transform_default(o.transform), L = o.arcs;
555
+ function R(o2, F2) {
556
+ F2.length && F2.pop();
557
+ for (var R2 = L[o2 < 0 ? ~o2 : o2], z2 = 0, B2 = R2.length; z2 < B2; ++z2) F2.push(I(R2[z2], z2));
558
+ o2 < 0 && reverse_default(F2, B2);
559
+ }
560
+ function z(o2) {
561
+ return I(o2);
562
+ }
563
+ function B(o2) {
564
+ for (var F2 = [], I2 = 0, L2 = o2.length; I2 < L2; ++I2) R(o2[I2], F2);
565
+ return F2.length < 2 && F2.push(F2[0]), F2;
566
+ }
567
+ function V(o2) {
568
+ for (var F2 = B(o2); F2.length < 4; ) F2.push(F2[0]);
569
+ return F2;
570
+ }
571
+ function H(o2) {
572
+ return o2.map(V);
573
+ }
574
+ function U(o2) {
575
+ var F2 = o2.type, I2;
576
+ switch (F2) {
577
+ case "GeometryCollection":
578
+ return {
579
+ type: F2,
580
+ geometries: o2.geometries.map(U)
581
+ };
582
+ case "Point":
583
+ I2 = z(o2.coordinates);
584
+ break;
585
+ case "MultiPoint":
586
+ I2 = o2.coordinates.map(z);
587
+ break;
588
+ case "LineString":
589
+ I2 = B(o2.arcs);
590
+ break;
591
+ case "MultiLineString":
592
+ I2 = o2.arcs.map(B);
593
+ break;
594
+ case "Polygon":
595
+ I2 = H(o2.arcs);
596
+ break;
597
+ case "MultiPolygon":
598
+ I2 = o2.arcs.map(H);
599
+ break;
600
+ default:
601
+ return null;
602
+ }
603
+ return {
604
+ type: F2,
605
+ coordinates: I2
606
+ };
607
+ }
608
+ return U(F);
609
+ }
610
+ function stitch_default(o, F) {
611
+ var I = {}, L = {}, R = {}, z = [], B = -1;
612
+ F.forEach(function(I2, L2) {
613
+ var R2 = o.arcs[I2 < 0 ? ~I2 : I2], z2;
614
+ R2.length < 3 && !R2[1][0] && !R2[1][1] && (z2 = F[++B], F[B] = I2, F[L2] = z2);
615
+ }), F.forEach(function(o2) {
616
+ var F2 = V(o2), I2 = F2[0], z2 = F2[1], B2, H2;
617
+ if (B2 = R[I2]) if (delete R[B2.end], B2.push(o2), B2.end = z2, H2 = L[z2]) {
618
+ delete L[H2.start];
619
+ var U = H2 === B2 ? B2 : B2.concat(H2);
620
+ L[U.start = B2.start] = R[U.end = H2.end] = U;
621
+ } else L[B2.start] = R[B2.end] = B2;
622
+ else if (B2 = L[z2]) if (delete L[B2.start], B2.unshift(o2), B2.start = I2, H2 = R[I2]) {
623
+ delete R[H2.end];
624
+ var W = H2 === B2 ? B2 : H2.concat(B2);
625
+ L[W.start = H2.start] = R[W.end = B2.end] = W;
626
+ } else L[B2.start] = R[B2.end] = B2;
627
+ else B2 = [o2], L[B2.start = I2] = R[B2.end = z2] = B2;
628
+ });
629
+ function V(F2) {
630
+ var I2 = o.arcs[F2 < 0 ? ~F2 : F2], L2 = I2[0], R2;
631
+ return o.transform ? (R2 = [0, 0], I2.forEach(function(o2) {
632
+ R2[0] += o2[0], R2[1] += o2[1];
633
+ })) : R2 = I2[I2.length - 1], F2 < 0 ? [R2, L2] : [L2, R2];
634
+ }
635
+ function H(o2, F2) {
636
+ for (var L2 in o2) {
637
+ var R2 = o2[L2];
638
+ delete F2[R2.start], delete R2.start, delete R2.end, R2.forEach(function(o3) {
639
+ I[o3 < 0 ? ~o3 : o3] = 1;
640
+ }), z.push(R2);
641
+ }
642
+ }
643
+ return H(R, L), H(L, R), F.forEach(function(o2) {
644
+ I[o2 < 0 ? ~o2 : o2] || z.push([o2]);
645
+ }), z;
646
+ }
647
+ function mesh_default(o) {
648
+ return object(o, meshArcs.apply(this, arguments));
649
+ }
650
+ function meshArcs(o, F, I) {
651
+ var L, R, z;
652
+ if (arguments.length > 1) L = extractArcs(o, F, I);
653
+ else for (R = 0, L = Array(z = o.arcs.length); R < z; ++R) L[R] = R;
654
+ return {
655
+ type: "MultiLineString",
656
+ arcs: stitch_default(o, L)
657
+ };
658
+ }
659
+ function extractArcs(o, F, I) {
660
+ var L = [], R = [], z;
661
+ function B(o2) {
662
+ var F2 = o2 < 0 ? ~o2 : o2;
663
+ (R[F2] || (R[F2] = [])).push({
664
+ i: o2,
665
+ g: z
666
+ });
667
+ }
668
+ function V(o2) {
669
+ o2.forEach(B);
670
+ }
671
+ function H(o2) {
672
+ o2.forEach(V);
673
+ }
674
+ function U(o2) {
675
+ o2.forEach(H);
676
+ }
677
+ function W(o2) {
678
+ switch (z = o2, o2.type) {
679
+ case "GeometryCollection":
680
+ o2.geometries.forEach(W);
681
+ break;
682
+ case "LineString":
683
+ V(o2.arcs);
684
+ break;
685
+ case "MultiLineString":
686
+ case "Polygon":
687
+ H(o2.arcs);
688
+ break;
689
+ case "MultiPolygon":
690
+ U(o2.arcs);
691
+ break;
692
+ }
693
+ }
694
+ return W(F), R.forEach(I == null ? function(o2) {
695
+ L.push(o2[0].i);
696
+ } : function(o2) {
697
+ I(o2[0].g, o2[o2.length - 1].g) && L.push(o2[0].i);
698
+ }), L;
699
+ }
700
+ var YEAR = "year", QUARTER = "quarter", MONTH = "month", WEEK = "week", DATE = "date", DAY = "day", DAYOFYEAR = "dayofyear", HOURS = "hours", MINUTES = "minutes", SECONDS = "seconds", MILLISECONDS = "milliseconds", TIME_UNITS = [
701
+ YEAR,
702
+ QUARTER,
703
+ MONTH,
704
+ WEEK,
705
+ DATE,
706
+ "day",
707
+ DAYOFYEAR,
708
+ HOURS,
709
+ MINUTES,
710
+ SECONDS,
711
+ MILLISECONDS
712
+ ], UNITS = TIME_UNITS.reduce((o, F, I) => (o[F] = 1 + I, o), {});
713
+ function timeUnits(o) {
714
+ let F = array_default(o).slice(), I = {};
715
+ return F.length || error("Missing time unit."), F.forEach((o2) => {
716
+ hasOwnProperty(UNITS, o2) ? I[o2] = 1 : error(`Invalid time unit: ${o2}.`);
717
+ }), (I.week || I.day ? 1 : 0) + (I.quarter || I.month || I.date ? 1 : 0) + (I.dayofyear ? 1 : 0) > 1 && error(`Incompatible time units: ${o}`), F.sort((o2, F2) => UNITS[o2] - UNITS[F2]), F;
718
+ }
719
+ var defaultSpecifiers = {
720
+ [YEAR]: "%Y ",
721
+ [QUARTER]: "Q%q ",
722
+ [MONTH]: "%b ",
723
+ [DATE]: "%d ",
724
+ [WEEK]: "W%U ",
725
+ day: "%a ",
726
+ [DAYOFYEAR]: "%j ",
727
+ [HOURS]: "%H:00",
728
+ [MINUTES]: "00:%M",
729
+ [SECONDS]: ":%S",
730
+ [MILLISECONDS]: ".%L",
731
+ [`${YEAR}-${MONTH}`]: "%Y-%m ",
732
+ [`${YEAR}-${MONTH}-${DATE}`]: "%Y-%m-%d ",
733
+ [`${HOURS}-${MINUTES}`]: "%H:%M"
734
+ };
735
+ function timeUnitSpecifier(o, F) {
736
+ let I = extend({}, defaultSpecifiers, F), L = timeUnits(o), R = L.length, z = "", B = 0, V, H;
737
+ for (B = 0; B < R; ) for (V = L.length; V > B; --V) if (H = L.slice(B, V).join("-"), I[H] != null) {
738
+ z += I[H], B = V;
739
+ break;
740
+ }
741
+ return z.trim();
742
+ }
743
+ var t0 = /* @__PURE__ */ new Date();
744
+ function localYear(o) {
745
+ return t0.setFullYear(o), t0.setMonth(0), t0.setDate(1), t0.setHours(0, 0, 0, 0), t0;
746
+ }
747
+ function dayofyear(o) {
748
+ return localDayOfYear(new Date(o));
749
+ }
750
+ function week(o) {
751
+ return localWeekNum(new Date(o));
752
+ }
753
+ function localDayOfYear(o) {
754
+ return timeDay.count(localYear(o.getFullYear()) - 1, o);
755
+ }
756
+ function localWeekNum(o) {
757
+ return timeSunday.count(localYear(o.getFullYear()) - 1, o);
758
+ }
759
+ function localFirst(o) {
760
+ return localYear(o).getDay();
761
+ }
762
+ function localDate(o, F, I, L, R, z, B) {
763
+ if (0 <= o && o < 100) {
764
+ let V = new Date(-1, F, I, L, R, z, B);
765
+ return V.setFullYear(o), V;
766
+ }
767
+ return new Date(o, F, I, L, R, z, B);
768
+ }
769
+ function utcdayofyear(o) {
770
+ return utcDayOfYear(new Date(o));
771
+ }
772
+ function utcweek(o) {
773
+ return utcWeekNum(new Date(o));
774
+ }
775
+ function utcDayOfYear(o) {
776
+ let F = Date.UTC(o.getUTCFullYear(), 0, 1);
777
+ return utcDay.count(F - 1, o);
778
+ }
779
+ function utcWeekNum(o) {
780
+ let F = Date.UTC(o.getUTCFullYear(), 0, 1);
781
+ return utcSunday.count(F - 1, o);
782
+ }
783
+ function utcFirst(o) {
784
+ return t0.setTime(Date.UTC(o, 0, 1)), t0.getUTCDay();
785
+ }
786
+ function utcDate(o, F, I, L, R, z, B) {
787
+ if (0 <= o && o < 100) {
788
+ let o2 = new Date(Date.UTC(-1, F, I, L, R, z, B));
789
+ return o2.setUTCFullYear(I.y), o2;
790
+ }
791
+ return new Date(Date.UTC(o, F, I, L, R, z, B));
792
+ }
793
+ function floor(o, F, I, L, R) {
794
+ let z = F || 1, B = peek(o), V = (o2, F2, R2) => (R2 || (R2 = o2), getUnit(I[R2], L[R2], o2 === B && z, F2)), H = /* @__PURE__ */ new Date(), U = toSet(o), W = U.year ? V(YEAR) : constant_default(2012), G = U.month ? V(MONTH) : U.quarter ? V(QUARTER) : zero, K = U.week && U.day ? V("day", 1, WEEK + "day") : U.week ? V(WEEK, 1) : U.day ? V("day", 1) : U.date ? V(DATE, 1) : U.dayofyear ? V(DAYOFYEAR, 1) : one, q = U.hours ? V(HOURS) : zero, J = U.minutes ? V(MINUTES) : zero, Y = U.seconds ? V(SECONDS) : zero, X = U.milliseconds ? V(MILLISECONDS) : zero;
795
+ return function(o2) {
796
+ H.setTime(+o2);
797
+ let F2 = W(H);
798
+ return R(F2, G(H), K(H, F2), q(H), J(H), Y(H), X(H));
799
+ };
800
+ }
801
+ function getUnit(o, F, I, L) {
802
+ let R = I <= 1 ? o : L ? (F2, R2) => L + I * Math.floor((o(F2, R2) - L) / I) : (F2, L2) => I * Math.floor(o(F2, L2) / I);
803
+ return F ? (o2, I2) => F(R(o2, I2), I2) : R;
804
+ }
805
+ function weekday(o, F, I) {
806
+ return F + o * 7 - (I + 6) % 7;
807
+ }
808
+ var localGet = {
809
+ [YEAR]: (o) => o.getFullYear(),
810
+ [QUARTER]: (o) => Math.floor(o.getMonth() / 3),
811
+ [MONTH]: (o) => o.getMonth(),
812
+ [DATE]: (o) => o.getDate(),
813
+ [HOURS]: (o) => o.getHours(),
814
+ [MINUTES]: (o) => o.getMinutes(),
815
+ [SECONDS]: (o) => o.getSeconds(),
816
+ [MILLISECONDS]: (o) => o.getMilliseconds(),
817
+ [DAYOFYEAR]: (o) => localDayOfYear(o),
818
+ [WEEK]: (o) => localWeekNum(o),
819
+ [WEEK + "day"]: (o, F) => weekday(localWeekNum(o), o.getDay(), localFirst(F)),
820
+ day: (o, F) => weekday(1, o.getDay(), localFirst(F))
821
+ }, localInv = {
822
+ [QUARTER]: (o) => 3 * o,
823
+ [WEEK]: (o, F) => weekday(o, 0, localFirst(F))
824
+ };
825
+ function timeFloor(o, F) {
826
+ return floor(o, F || 1, localGet, localInv, localDate);
827
+ }
828
+ var utcGet = {
829
+ [YEAR]: (o) => o.getUTCFullYear(),
830
+ [QUARTER]: (o) => Math.floor(o.getUTCMonth() / 3),
831
+ [MONTH]: (o) => o.getUTCMonth(),
832
+ [DATE]: (o) => o.getUTCDate(),
833
+ [HOURS]: (o) => o.getUTCHours(),
834
+ [MINUTES]: (o) => o.getUTCMinutes(),
835
+ [SECONDS]: (o) => o.getUTCSeconds(),
836
+ [MILLISECONDS]: (o) => o.getUTCMilliseconds(),
837
+ [DAYOFYEAR]: (o) => utcDayOfYear(o),
838
+ [WEEK]: (o) => utcWeekNum(o),
839
+ day: (o, F) => weekday(1, o.getUTCDay(), utcFirst(F)),
840
+ [WEEK + "day"]: (o, F) => weekday(utcWeekNum(o), o.getUTCDay(), utcFirst(F))
841
+ }, utcInv = {
842
+ [QUARTER]: (o) => 3 * o,
843
+ [WEEK]: (o, F) => weekday(o, 0, utcFirst(F))
844
+ };
845
+ function utcFloor(o, F) {
846
+ return floor(o, F || 1, utcGet, utcInv, utcDate);
847
+ }
848
+ var timeIntervals = {
849
+ [YEAR]: timeYear,
850
+ [QUARTER]: timeMonth.every(3),
851
+ [MONTH]: timeMonth,
852
+ [WEEK]: timeSunday,
853
+ [DATE]: timeDay,
854
+ day: timeDay,
855
+ [DAYOFYEAR]: timeDay,
856
+ [HOURS]: timeHour,
857
+ [MINUTES]: timeMinute,
858
+ [SECONDS]: second,
859
+ [MILLISECONDS]: millisecond
860
+ }, utcIntervals = {
861
+ [YEAR]: utcYear,
862
+ [QUARTER]: utcMonth.every(3),
863
+ [MONTH]: utcMonth,
864
+ [WEEK]: utcSunday,
865
+ [DATE]: utcDay,
866
+ day: utcDay,
867
+ [DAYOFYEAR]: utcDay,
868
+ [HOURS]: utcHour,
869
+ [MINUTES]: utcMinute,
870
+ [SECONDS]: second,
871
+ [MILLISECONDS]: millisecond
872
+ };
873
+ function timeInterval(o) {
874
+ return timeIntervals[o];
875
+ }
876
+ function utcInterval(o) {
877
+ return utcIntervals[o];
878
+ }
879
+ function offset(o, F, I) {
880
+ return o ? o.offset(F, I) : void 0;
881
+ }
882
+ function timeOffset(o, F, I) {
883
+ return offset(timeInterval(o), F, I);
884
+ }
885
+ function utcOffset(o, F, I) {
886
+ return offset(utcInterval(o), F, I);
887
+ }
888
+ function sequence(o, F, I, L) {
889
+ return o ? o.range(F, I, L) : void 0;
890
+ }
891
+ function timeSequence(o, F, I, L) {
892
+ return sequence(timeInterval(o), F, I, L);
893
+ }
894
+ function utcSequence(o, F, I, L) {
895
+ return sequence(utcInterval(o), F, I, L);
896
+ }
897
+ var durationSecond = 1e3, durationMinute = durationSecond * 60, durationHour = durationMinute * 60, durationDay = durationHour * 24, durationWeek = durationDay * 7, durationMonth = durationDay * 30, durationYear = durationDay * 365, Milli = [
898
+ YEAR,
899
+ MONTH,
900
+ DATE,
901
+ HOURS,
902
+ MINUTES,
903
+ SECONDS,
904
+ MILLISECONDS
905
+ ], Seconds = Milli.slice(0, -1), Minutes = Seconds.slice(0, -1), Hours = Minutes.slice(0, -1), Day = Hours.slice(0, -1), Week = [YEAR, WEEK], Month = [YEAR, MONTH], Year = [YEAR], intervals = [
906
+ [
907
+ Seconds,
908
+ 1,
909
+ durationSecond
910
+ ],
911
+ [
912
+ Seconds,
913
+ 5,
914
+ 5 * durationSecond
915
+ ],
916
+ [
917
+ Seconds,
918
+ 15,
919
+ 15 * durationSecond
920
+ ],
921
+ [
922
+ Seconds,
923
+ 30,
924
+ 30 * durationSecond
925
+ ],
926
+ [
927
+ Minutes,
928
+ 1,
929
+ durationMinute
930
+ ],
931
+ [
932
+ Minutes,
933
+ 5,
934
+ 5 * durationMinute
935
+ ],
936
+ [
937
+ Minutes,
938
+ 15,
939
+ 15 * durationMinute
940
+ ],
941
+ [
942
+ Minutes,
943
+ 30,
944
+ 30 * durationMinute
945
+ ],
946
+ [
947
+ Hours,
948
+ 1,
949
+ durationHour
950
+ ],
951
+ [
952
+ Hours,
953
+ 3,
954
+ 3 * durationHour
955
+ ],
956
+ [
957
+ Hours,
958
+ 6,
959
+ 6 * durationHour
960
+ ],
961
+ [
962
+ Hours,
963
+ 12,
964
+ 12 * durationHour
965
+ ],
966
+ [
967
+ Day,
968
+ 1,
969
+ durationDay
970
+ ],
971
+ [
972
+ Week,
973
+ 1,
974
+ durationWeek
975
+ ],
976
+ [
977
+ Month,
978
+ 1,
979
+ durationMonth
980
+ ],
981
+ [
982
+ Month,
983
+ 3,
984
+ 3 * durationMonth
985
+ ],
986
+ [
987
+ Year,
988
+ 1,
989
+ durationYear
990
+ ]
991
+ ];
992
+ function bin(o) {
993
+ let I = o.extent, L = o.maxbins || 40, z = Math.abs(span_default(I)) / L, B = bisector((o2) => o2[2]).right(intervals, z), V, H;
994
+ return B === intervals.length ? (V = Year, H = tickStep(I[0] / durationYear, I[1] / durationYear, L)) : B ? (B = intervals[z / intervals[B - 1][2] < intervals[B][2] / z ? B - 1 : B], V = B[0], H = B[1]) : (V = Milli, H = Math.max(tickStep(I[0], I[1], L), 1)), {
995
+ units: V,
996
+ step: H
997
+ };
998
+ }
999
+ function memoize(o) {
1000
+ let F = {};
1001
+ return (I) => F[I] || (F[I] = o(I));
1002
+ }
1003
+ function trimZeroes(o, F) {
1004
+ return (I) => {
1005
+ let L = o(I), R = L.indexOf(F);
1006
+ if (R < 0) return L;
1007
+ let z = rightmostDigit(L, R), B = z < L.length ? L.slice(z) : "";
1008
+ for (; --z > R; ) if (L[z] !== "0") {
1009
+ ++z;
1010
+ break;
1011
+ }
1012
+ return L.slice(0, z) + B;
1013
+ };
1014
+ }
1015
+ function rightmostDigit(o, F) {
1016
+ let I = o.lastIndexOf("e"), L;
1017
+ if (I > 0) return I;
1018
+ for (I = o.length; --I > F; ) if (L = o.charCodeAt(I), L >= 48 && L <= 57) return I + 1;
1019
+ }
1020
+ function numberLocale(o) {
1021
+ let R = memoize(o.format), V = o.formatPrefix;
1022
+ return {
1023
+ format: R,
1024
+ formatPrefix: V,
1025
+ formatFloat(o2) {
1026
+ let F = formatSpecifier(o2 || ",");
1027
+ if (F.precision == null) {
1028
+ switch (F.precision = 12, F.type) {
1029
+ case "%":
1030
+ F.precision -= 2;
1031
+ break;
1032
+ case "e":
1033
+ --F.precision;
1034
+ break;
1035
+ }
1036
+ return trimZeroes(R(F), R(".1f")(1)[1]);
1037
+ } else return R(F);
1038
+ },
1039
+ formatSpan(o2, H, U, W) {
1040
+ W = formatSpecifier(W ?? ",f");
1041
+ let G = tickStep(o2, H, U), K = Math.max(Math.abs(o2), Math.abs(H)), q;
1042
+ if (W.precision == null) switch (W.type) {
1043
+ case "s":
1044
+ return isNaN(q = precisionPrefix_default(G, K)) || (W.precision = q), V(W, K);
1045
+ case "":
1046
+ case "e":
1047
+ case "g":
1048
+ case "p":
1049
+ case "r":
1050
+ isNaN(q = precisionRound_default(G, K)) || (W.precision = q - (W.type === "e"));
1051
+ break;
1052
+ case "f":
1053
+ case "%":
1054
+ isNaN(q = precisionFixed_default(G)) || (W.precision = q - (W.type === "%") * 2);
1055
+ break;
1056
+ }
1057
+ return R(W);
1058
+ }
1059
+ };
1060
+ }
1061
+ var defaultNumberLocale;
1062
+ resetNumberFormatDefaultLocale();
1063
+ function resetNumberFormatDefaultLocale() {
1064
+ return defaultNumberLocale = numberLocale({
1065
+ format: format$1,
1066
+ formatPrefix
1067
+ });
1068
+ }
1069
+ function numberFormatLocale(o) {
1070
+ return numberLocale(locale_default(o));
1071
+ }
1072
+ function numberFormatDefaultLocale(o) {
1073
+ return arguments.length ? defaultNumberLocale = numberFormatLocale(o) : defaultNumberLocale;
1074
+ }
1075
+ function timeMultiFormat(o, F, I) {
1076
+ I || (I = {}), isObject(I) || error(`Invalid time multi-format specifier: ${I}`);
1077
+ let L = F(SECONDS), R = F(MINUTES), z = F(HOURS), B = F(DATE), V = F(WEEK), H = F(MONTH), U = F(QUARTER), W = F(YEAR), G = o(I.milliseconds || ".%L"), K = o(I.seconds || ":%S"), q = o(I.minutes || "%I:%M"), J = o(I.hours || "%I %p"), Y = o(I.date || I.day || "%a %d"), X = o(I.week || "%b %d"), Z = o(I.month || "%B"), Q = o(I.quarter || "%B"), $ = o(I.year || "%Y");
1078
+ return (o2) => (L(o2) < o2 ? G : R(o2) < o2 ? K : z(o2) < o2 ? q : B(o2) < o2 ? J : H(o2) < o2 ? V(o2) < o2 ? Y : X : W(o2) < o2 ? U(o2) < o2 ? Z : Q : $)(o2);
1079
+ }
1080
+ function timeLocale(o) {
1081
+ let F = memoize(o.format), I = memoize(o.utcFormat);
1082
+ return {
1083
+ timeFormat: (o2) => isString(o2) ? F(o2) : timeMultiFormat(F, timeInterval, o2),
1084
+ utcFormat: (o2) => isString(o2) ? I(o2) : timeMultiFormat(I, utcInterval, o2),
1085
+ timeParse: memoize(o.parse),
1086
+ utcParse: memoize(o.utcParse)
1087
+ };
1088
+ }
1089
+ var defaultTimeLocale;
1090
+ resetTimeFormatDefaultLocale();
1091
+ function resetTimeFormatDefaultLocale() {
1092
+ return defaultTimeLocale = timeLocale({
1093
+ format: timeFormat,
1094
+ parse: timeParse,
1095
+ utcFormat,
1096
+ utcParse
1097
+ });
1098
+ }
1099
+ function timeFormatLocale(o) {
1100
+ return timeLocale(formatLocale(o));
1101
+ }
1102
+ function timeFormatDefaultLocale(o) {
1103
+ return arguments.length ? defaultTimeLocale = timeFormatLocale(o) : defaultTimeLocale;
1104
+ }
1105
+ var createLocale = (o, F) => extend({}, o, F);
1106
+ function locale(o, F) {
1107
+ return createLocale(o ? numberFormatLocale(o) : numberFormatDefaultLocale(), F ? timeFormatLocale(F) : timeFormatDefaultLocale());
1108
+ }
1109
+ function defaultLocale(o, F) {
1110
+ let I = arguments.length;
1111
+ return I && I !== 2 && error("defaultLocale expects either zero or two arguments."), I ? createLocale(numberFormatDefaultLocale(o), timeFormatDefaultLocale(F)) : createLocale(numberFormatDefaultLocale(), timeFormatDefaultLocale());
1112
+ }
1113
+ function resetDefaultLocale() {
1114
+ return resetNumberFormatDefaultLocale(), resetTimeFormatDefaultLocale(), defaultLocale();
1115
+ }
1116
+ var protocol_re = /^(data:|([A-Za-z]+:)?\/\/)/, allowed_re = /^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i, whitespace_re = /[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g, fileProtocol = "file://";
1117
+ function loaderFactory(o) {
1118
+ return (o2) => ({
1119
+ options: o2 || {},
1120
+ sanitize,
1121
+ load,
1122
+ fileAccess: false,
1123
+ file: fileLoader(),
1124
+ http: httpLoader
1125
+ });
1126
+ }
1127
+ async function load(o, F) {
1128
+ let I = await this.sanitize(o, F), L = I.href;
1129
+ return I.localFile ? this.file(L) : this.http(L, F == null ? void 0 : F.http);
1130
+ }
1131
+ async function sanitize(o, F) {
1132
+ F = extend({}, this.options, F);
1133
+ let I = this.fileAccess, L = { href: null }, R, z, B, V = allowed_re.test(o.replace(whitespace_re, ""));
1134
+ (o == null || typeof o != "string" || !V) && error("Sanitize failure, invalid URI: " + stringValue(o));
1135
+ let H = protocol_re.test(o);
1136
+ return (B = F.baseURL) && !H && (!o.startsWith("/") && !B.endsWith("/") && (o = "/" + o), o = B + o), z = (R = o.startsWith(fileProtocol)) || F.mode === "file" || F.mode !== "http" && !H && I, R ? o = o.slice(7) : o.startsWith("//") && (F.defaultProtocol === "file" ? (o = o.slice(2), z = true) : o = (F.defaultProtocol || "http") + ":" + o), Object.defineProperty(L, "localFile", { value: !!z }), L.href = o, F.target && (L.target = F.target + ""), F.rel && (L.rel = F.rel + ""), F.context === "image" && F.crossOrigin && (L.crossOrigin = F.crossOrigin + ""), L;
1137
+ }
1138
+ function fileLoader(o) {
1139
+ return fileReject;
1140
+ }
1141
+ async function fileReject() {
1142
+ error("No file system access.");
1143
+ }
1144
+ async function httpLoader(o, F) {
1145
+ let I = extend({}, this.options.http, F), L = F && F.response, R = await fetch(o, I);
1146
+ return R.ok ? isFunction(R[L]) ? R[L]() : R.text() : error(R.status + "" + R.statusText);
1147
+ }
1148
+ var isValid = (o) => o != null && o === o, isBoolean = (o) => o === "true" || o === "false" || o === true || o === false, isDate = (o) => !Number.isNaN(Date.parse(o)), isNumber = (o) => !Number.isNaN(+o) && !(o instanceof Date), isInteger = (o) => isNumber(o) && Number.isInteger(+o), typeParsers = {
1149
+ boolean: toBoolean,
1150
+ integer: toNumber,
1151
+ number: toNumber,
1152
+ date: toDate,
1153
+ string: toString,
1154
+ unknown: identity
1155
+ }, typeTests = [
1156
+ isBoolean,
1157
+ isInteger,
1158
+ isNumber,
1159
+ isDate
1160
+ ], typeList = [
1161
+ "boolean",
1162
+ "integer",
1163
+ "number",
1164
+ "date"
1165
+ ];
1166
+ function inferType(o, F) {
1167
+ if (!o || !o.length) return "unknown";
1168
+ let I = o.length, L = typeTests.length, R = typeTests.map((o2, F2) => F2 + 1);
1169
+ for (let z = 0, B = 0, V, H; z < I; ++z) for (H = F ? o[z][F] : o[z], V = 0; V < L; ++V) if (R[V] && isValid(H) && !typeTests[V](H) && (R[V] = 0, ++B, B === typeTests.length)) return "string";
1170
+ return typeList[R.reduce((o2, F2) => o2 === 0 ? F2 : o2, 0) - 1];
1171
+ }
1172
+ function inferTypes(o, F) {
1173
+ return F.reduce((F2, I) => (F2[I] = inferType(o, I), F2), {});
1174
+ }
1175
+ function delimitedFormat(o) {
1176
+ let F = function(F2, I) {
1177
+ let L = { delimiter: o };
1178
+ return dsv(F2, I ? extend(I, L) : L);
1179
+ };
1180
+ return F.responseType = "text", F;
1181
+ }
1182
+ function dsv(o, F) {
1183
+ return F.header && (o = F.header.map(stringValue).join(F.delimiter) + "\n" + o), dsv_default(F.delimiter).parse(o + "");
1184
+ }
1185
+ dsv.responseType = "text";
1186
+ function isBuffer(o) {
1187
+ return typeof Buffer == "function" && isFunction(Buffer.isBuffer) ? Buffer.isBuffer(o) : false;
1188
+ }
1189
+ function json(o, F) {
1190
+ let I = F && F.property ? field(F.property) : identity;
1191
+ return isObject(o) && !isBuffer(o) ? parseJSON(I(o), F) : I(JSON.parse(o));
1192
+ }
1193
+ json.responseType = "json";
1194
+ function parseJSON(o, F) {
1195
+ return !isArray(o) && isIterable(o) && (o = [...o]), F && F.copy ? JSON.parse(JSON.stringify(o)) : o;
1196
+ }
1197
+ var filters = {
1198
+ interior: (o, F) => o !== F,
1199
+ exterior: (o, F) => o === F
1200
+ };
1201
+ function topojson(o, F) {
1202
+ let I, L, R, z;
1203
+ return o = json(o, F), F && F.feature ? (I = feature_default, R = F.feature) : F && F.mesh ? (I = mesh_default, R = F.mesh, z = filters[F.filter]) : error("Missing TopoJSON feature or mesh parameter."), L = (L = o.objects[R]) ? I(o, L, z) : error("Invalid TopoJSON object: " + R), L && L.features || [L];
1204
+ }
1205
+ topojson.responseType = "json";
1206
+ var format = {
1207
+ dsv,
1208
+ csv: delimitedFormat(","),
1209
+ tsv: delimitedFormat(" "),
1210
+ json,
1211
+ topojson
1212
+ };
1213
+ function formats(o, F) {
1214
+ return arguments.length > 1 ? (format[o] = F, this) : hasOwnProperty(format, o) ? format[o] : null;
1215
+ }
1216
+ function responseType(o) {
1217
+ let F = formats(o);
1218
+ return F && F.responseType || "text";
1219
+ }
1220
+ function read(o, F, I, L) {
1221
+ F || (F = {});
1222
+ let R = formats(F.type || "json");
1223
+ return R || error("Unknown data format type: " + F.type), o = R(o, F), F.parse && parse(o, F.parse, I, L), hasOwnProperty(o, "columns") && delete o.columns, o;
1224
+ }
1225
+ function parse(o, F, I, L) {
1226
+ if (!o.length) return;
1227
+ let R = timeFormatDefaultLocale();
1228
+ I || (I = R.timeParse), L || (L = R.utcParse);
1229
+ let z = o.columns || Object.keys(o[0]), B, V, H, U, W, G;
1230
+ F === "auto" && (F = inferTypes(o, z)), z = Object.keys(F);
1231
+ let K = z.map((o2) => {
1232
+ let R2 = F[o2], z2, B2;
1233
+ if (R2 && (R2.startsWith("date:") || R2.startsWith("utc:"))) return z2 = R2.split(/:(.+)?/, 2), B2 = z2[1], (B2[0] === "'" && B2[B2.length - 1] === "'" || B2[0] === '"' && B2[B2.length - 1] === '"') && (B2 = B2.slice(1, -1)), (z2[0] === "utc" ? L : I)(B2);
1234
+ if (!typeParsers[R2]) throw Error("Illegal format pattern: " + o2 + ":" + R2);
1235
+ return typeParsers[R2];
1236
+ });
1237
+ for (H = 0, W = o.length, G = z.length; H < W; ++H) for (B = o[H], U = 0; U < G; ++U) V = z[U], B[V] = K[U](B[V]);
1238
+ }
1239
+ var loader = loaderFactory();
1240
+ export {
1241
+ merge as $,
1242
+ field as $t,
1243
+ timeOffset as A,
1244
+ zoomLinear as At,
1245
+ week as B,
1246
+ Debug as Bt,
1247
+ TIME_UNITS as C,
1248
+ array_default as Ct,
1249
+ dayofyear as D,
1250
+ panLog as Dt,
1251
+ bin as E,
1252
+ panLinear as Et,
1253
+ utcInterval as F,
1254
+ peek as Ft,
1255
+ toSet as G,
1256
+ logger_default as Gt,
1257
+ getVegaFieldTypes as H,
1258
+ Info as Ht,
1259
+ utcOffset as I,
1260
+ mergeConfig as It,
1261
+ toBoolean as J,
1262
+ id as Jt,
1263
+ toString as K,
1264
+ DisallowedObjectProperties as Kt,
1265
+ utcSequence as L,
1266
+ writeConfig as Lt,
1267
+ timeUnitSpecifier as M,
1268
+ zoomPow as Mt,
1269
+ timeUnits as N,
1270
+ zoomSymlog as Nt,
1271
+ timeFloor as O,
1272
+ panPow as Ot,
1273
+ utcFloor as P,
1274
+ toNumber as Pt,
1275
+ repeat as Q,
1276
+ zero as Qt,
1277
+ utcdayofyear as R,
1278
+ isObject as Rt,
1279
+ SECONDS as S,
1280
+ clampRange as St,
1281
+ YEAR as T,
1282
+ utcquarter as Tt,
1283
+ visitArray as U,
1284
+ None as Ut,
1285
+ getContainerWidth as V,
1286
+ Error$1 as Vt,
1287
+ truncate as W,
1288
+ Warn as Wt,
1289
+ span_default as X,
1290
+ one as Xt,
1291
+ stringValue as Y,
1292
+ identity as Yt,
1293
+ pad$1 as Z,
1294
+ truthy as Zt,
1295
+ HOURS as _,
1296
+ debounce as _t,
1297
+ loader as a,
1298
+ isNumber$1 as at,
1299
+ MONTH as b,
1300
+ compare as bt,
1301
+ typeParsers as c,
1302
+ isBoolean$1 as ct,
1303
+ numberFormatDefaultLocale as d,
1304
+ flush_default as dt,
1305
+ splitAccessPath as en,
1306
+ lruCache_default as et,
1307
+ resetDefaultLocale as f,
1308
+ fastmap as ft,
1309
+ DAYOFYEAR as g,
1310
+ extend as gt,
1311
+ DAY as h,
1312
+ extent as ht,
1313
+ inferTypes as i,
1314
+ accessorName as in,
1315
+ isRegExp as it,
1316
+ timeSequence as j,
1317
+ zoomLog as jt,
1318
+ timeInterval as k,
1319
+ panSymlog as kt,
1320
+ defaultLocale as l,
1321
+ inrange as lt,
1322
+ DATE as m,
1323
+ extentIndex as mt,
1324
+ formats as n,
1325
+ accessor as nn,
1326
+ key as nt,
1327
+ read as o,
1328
+ isIterable as ot,
1329
+ timeFormatDefaultLocale as p,
1330
+ hasOwnProperty as pt,
1331
+ toDate as q,
1332
+ falsy as qt,
1333
+ inferType as r,
1334
+ accessorFields as rn,
1335
+ isString as rt,
1336
+ responseType as s,
1337
+ isDate$1 as st,
1338
+ format as t,
1339
+ error as tn,
1340
+ lerp_default as tt,
1341
+ locale as u,
1342
+ inherits_default as ut,
1343
+ MILLISECONDS as v,
1344
+ constant_default as vt,
1345
+ WEEK as w,
1346
+ quarter as wt,
1347
+ QUARTER as x,
1348
+ isFunction as xt,
1349
+ MINUTES as y,
1350
+ ascending as yt,
1351
+ utcweek as z,
1352
+ isArray as zt
1353
+ };