@elastic/charts 38.0.1 → 38.1.3

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 (71) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/chart_types/partition_chart/state/chart_state.js +3 -3
  3. package/dist/chart_types/partition_chart/state/chart_state.js.map +1 -1
  4. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.d.ts +2 -0
  5. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.d.ts.map +1 -0
  6. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.js +14 -0
  7. package/dist/chart_types/partition_chart/state/selectors/get_cursor_pointer.js.map +1 -0
  8. package/dist/chart_types/xy_chart/axes/axes_sizes.js +1 -1
  9. package/dist/chart_types/xy_chart/axes/axes_sizes.js.map +1 -1
  10. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.d.ts +2 -0
  11. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.d.ts.map +1 -0
  12. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.js +33 -0
  13. package/dist/chart_types/xy_chart/axes/timeslip/chrono/cached_chrono.js.map +1 -0
  14. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.d.ts +2 -0
  15. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.d.ts.map +1 -0
  16. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.js +18 -0
  17. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono.js.map +1 -0
  18. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.d.ts +2 -0
  19. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.d.ts.map +1 -0
  20. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.js +35 -0
  21. package/dist/chart_types/xy_chart/axes/timeslip/chrono/chrono_luxon/chrono_luxon.js.map +1 -0
  22. package/dist/chart_types/xy_chart/axes/timeslip/rasters.d.ts +2 -0
  23. package/dist/chart_types/xy_chart/axes/timeslip/rasters.d.ts.map +1 -0
  24. package/dist/chart_types/xy_chart/axes/timeslip/rasters.js +708 -0
  25. package/dist/chart_types/xy_chart/axes/timeslip/rasters.js.map +1 -0
  26. package/dist/chart_types/xy_chart/domains/x_domain.js +2 -1
  27. package/dist/chart_types/xy_chart/domains/x_domain.js.map +1 -1
  28. package/dist/chart_types/xy_chart/renderer/canvas/axes/index.js +2 -2
  29. package/dist/chart_types/xy_chart/renderer/canvas/axes/index.js.map +1 -1
  30. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick.js +18 -4
  31. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick.js.map +1 -1
  32. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js +7 -4
  33. package/dist/chart_types/xy_chart/renderer/canvas/axes/tick_label.js.map +1 -1
  34. package/dist/chart_types/xy_chart/renderer/canvas/panels/panels.js +2 -0
  35. package/dist/chart_types/xy_chart/renderer/canvas/panels/panels.js.map +1 -1
  36. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js +2 -2
  37. package/dist/chart_types/xy_chart/renderer/canvas/panels/title.js.map +1 -1
  38. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js +2 -2
  39. package/dist/chart_types/xy_chart/renderer/canvas/renderers.js.map +1 -1
  40. package/dist/chart_types/xy_chart/specs/axis.d.ts.map +1 -1
  41. package/dist/chart_types/xy_chart/specs/axis.js +1 -0
  42. package/dist/chart_types/xy_chart/specs/axis.js.map +1 -1
  43. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js +2 -2
  44. package/dist/chart_types/xy_chart/state/selectors/compute_axis_ticks_dimensions.js.map +1 -1
  45. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js +156 -61
  46. package/dist/chart_types/xy_chart/state/selectors/visible_ticks.js.map +1 -1
  47. package/dist/chart_types/xy_chart/utils/axis_utils.js +4 -6
  48. package/dist/chart_types/xy_chart/utils/axis_utils.js.map +1 -1
  49. package/dist/chart_types/xy_chart/utils/grid_lines.js +48 -27
  50. package/dist/chart_types/xy_chart/utils/grid_lines.js.map +1 -1
  51. package/dist/chart_types/xy_chart/utils/specs.d.ts +7 -0
  52. package/dist/chart_types/xy_chart/utils/specs.d.ts.map +1 -1
  53. package/dist/chart_types/xy_chart/utils/specs.js.map +1 -1
  54. package/dist/index.d.ts +1 -0
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/index.js +1 -0
  57. package/dist/index.js.map +1 -1
  58. package/dist/utils/themes/dark_theme.d.ts.map +1 -1
  59. package/dist/utils/themes/dark_theme.js +1 -0
  60. package/dist/utils/themes/dark_theme.js.map +1 -1
  61. package/dist/utils/themes/light_theme.d.ts.map +1 -1
  62. package/dist/utils/themes/light_theme.js +1 -0
  63. package/dist/utils/themes/light_theme.js.map +1 -1
  64. package/dist/utils/themes/theme.d.ts +1 -0
  65. package/dist/utils/themes/theme.d.ts.map +1 -1
  66. package/dist/utils/themes/theme.js.map +1 -1
  67. package/dist/utils/use_legend_action.d.ts +9 -0
  68. package/dist/utils/use_legend_action.d.ts.map +1 -0
  69. package/dist/utils/use_legend_action.js +15 -0
  70. package/dist/utils/use_legend_action.js.map +1 -0
  71. package/package.json +3 -2
@@ -0,0 +1,708 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __generator = (this && this.__generator) || function (thisArg, body) {
14
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
15
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
16
+ function verb(n) { return function (v) { return step([n, v]); }; }
17
+ function step(op) {
18
+ if (f) throw new TypeError("Generator is already executing.");
19
+ while (_) try {
20
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
21
+ if (y = 0, t) op = [op[0] & 2, t.value];
22
+ switch (op[0]) {
23
+ case 0: case 1: t = op; break;
24
+ case 4: _.label++; return { value: op[1], done: false };
25
+ case 5: _.label++; y = op[1]; op = [0]; continue;
26
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
27
+ default:
28
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
29
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
30
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
31
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
32
+ if (t[2]) _.ops.pop();
33
+ _.trys.pop(); continue;
34
+ }
35
+ op = body.call(thisArg, _);
36
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
37
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
38
+ }
39
+ };
40
+ var __values = (this && this.__values) || function(o) {
41
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
42
+ if (m) return m.call(o);
43
+ if (o && typeof o.length === "number") return {
44
+ next: function () {
45
+ if (o && i >= o.length) o = void 0;
46
+ return { value: o && o[i++], done: !o };
47
+ }
48
+ };
49
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
50
+ };
51
+ var __read = (this && this.__read) || function (o, n) {
52
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
53
+ if (!m) return o;
54
+ var i = m.call(o), r, ar = [], e;
55
+ try {
56
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
57
+ }
58
+ catch (error) { e = { error: error }; }
59
+ finally {
60
+ try {
61
+ if (r && !r.done && (m = i["return"])) m.call(i);
62
+ }
63
+ finally { if (e) throw e.error; }
64
+ }
65
+ return ar;
66
+ };
67
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
68
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
69
+ if (ar || !(i in from)) {
70
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
71
+ ar[i] = from[i];
72
+ }
73
+ }
74
+ return to.concat(ar || Array.prototype.slice.call(from));
75
+ };
76
+ Object.defineProperty(exports, "__esModule", { value: true });
77
+ exports.rasters = void 0;
78
+ var cached_chrono_1 = require("./chrono/cached_chrono");
79
+ var chrono_1 = require("./chrono/chrono");
80
+ var approxWidthsInSeconds = {
81
+ year: 365.25 * 24 * 60 * 60,
82
+ month: (365.25 * 24 * 60 * 60) / 12,
83
+ week: 7 * 24 * 60 * 60,
84
+ day: 24 * 60 * 60,
85
+ hour: 60 * 60,
86
+ minute: 60,
87
+ second: 1,
88
+ millisecond: 0.001,
89
+ };
90
+ var millisecondBinStarts = function (rasterMs) {
91
+ return function (domainFrom, domainTo) {
92
+ var t, timePointSec;
93
+ return __generator(this, function (_a) {
94
+ switch (_a.label) {
95
+ case 0:
96
+ t = Math.floor((domainFrom * 1000) / rasterMs);
97
+ _a.label = 1;
98
+ case 1:
99
+ if (!(t < Math.ceil((domainTo * 1000) / rasterMs))) return [3, 4];
100
+ timePointSec = (t * rasterMs) / 1000;
101
+ return [4, {
102
+ timePointSec: timePointSec,
103
+ nextTimePointSec: timePointSec + rasterMs / 1000,
104
+ }];
105
+ case 2:
106
+ _a.sent();
107
+ _a.label = 3;
108
+ case 3:
109
+ t++;
110
+ return [3, 1];
111
+ case 4: return [2];
112
+ }
113
+ });
114
+ };
115
+ };
116
+ var rasters = function (_a, timeZone) {
117
+ var minimumTickPixelDistance = _a.minimumTickPixelDistance, locale = _a.locale;
118
+ var minorDayFormat = new Intl.DateTimeFormat(locale, { day: 'numeric', timeZone: timeZone }).format;
119
+ var detailedDayFormat = new Intl.DateTimeFormat(locale, {
120
+ year: 'numeric',
121
+ month: 'short',
122
+ day: 'numeric',
123
+ timeZone: timeZone,
124
+ }).format;
125
+ var years = {
126
+ unit: 'year',
127
+ unitMultiplier: 1,
128
+ labeled: true,
129
+ minimumTickPixelDistance: minimumTickPixelDistance * 1.5,
130
+ binStarts: function (domainFrom, domainTo) {
131
+ var fromYear, toYear, year, timePoint, timePointSec, nextTimePointSec;
132
+ return __generator(this, function (_a) {
133
+ switch (_a.label) {
134
+ case 0:
135
+ fromYear = (0, chrono_1.epochInSecondsToYear)(timeZone, domainFrom);
136
+ toYear = (0, chrono_1.epochInSecondsToYear)(timeZone, domainTo);
137
+ year = fromYear;
138
+ _a.label = 1;
139
+ case 1:
140
+ if (!(year <= toYear)) return [3, 4];
141
+ timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)({ timeZone: timeZone, year: year, month: 1, day: 1 });
142
+ timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
143
+ nextTimePointSec = (0, cached_chrono_1.cachedZonedDateTimeFrom)({
144
+ timeZone: timeZone,
145
+ year: year + 1,
146
+ month: 1,
147
+ day: 1,
148
+ })[cached_chrono_1.timeProp.epochSeconds];
149
+ return [4, { year: year, timePointSec: timePointSec, nextTimePointSec: nextTimePointSec }];
150
+ case 2:
151
+ _a.sent();
152
+ _a.label = 3;
153
+ case 3:
154
+ year++;
155
+ return [3, 1];
156
+ case 4: return [2];
157
+ }
158
+ });
159
+ },
160
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, { year: 'numeric', timeZone: timeZone }).format,
161
+ minorTickLabelFormat: new Intl.DateTimeFormat(locale, { year: 'numeric', timeZone: timeZone }).format,
162
+ minimumPixelsPerSecond: NaN,
163
+ approxWidthInMs: NaN,
164
+ };
165
+ var yearsUnlabelled = __assign(__assign({}, years), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
166
+ var decades = {
167
+ unit: 'year',
168
+ unitMultiplier: 10,
169
+ labeled: true,
170
+ minimumTickPixelDistance: minimumTickPixelDistance * 1.5,
171
+ binStarts: function (domainFrom, domainTo) {
172
+ var fromYear, toYear, year, timePoint, timePointSec, nextTimePointSec;
173
+ return __generator(this, function (_a) {
174
+ switch (_a.label) {
175
+ case 0:
176
+ fromYear = (0, chrono_1.epochInSecondsToYear)(timeZone, domainFrom);
177
+ toYear = (0, chrono_1.epochInSecondsToYear)(timeZone, domainTo);
178
+ year = Math.floor(fromYear / 10) * 10;
179
+ _a.label = 1;
180
+ case 1:
181
+ if (!(year <= Math.ceil(toYear / 10) * 10)) return [3, 4];
182
+ timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)({ timeZone: timeZone, year: year, month: 1, day: 1 });
183
+ timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
184
+ nextTimePointSec = (0, cached_chrono_1.cachedZonedDateTimeFrom)({
185
+ timeZone: timeZone,
186
+ year: year + 10,
187
+ month: 1,
188
+ day: 1,
189
+ })[cached_chrono_1.timeProp.epochSeconds];
190
+ return [4, { year: year, timePointSec: timePointSec, nextTimePointSec: nextTimePointSec }];
191
+ case 2:
192
+ _a.sent();
193
+ _a.label = 3;
194
+ case 3:
195
+ year += 10;
196
+ return [3, 1];
197
+ case 4: return [2];
198
+ }
199
+ });
200
+ },
201
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, { year: 'numeric', timeZone: timeZone }).format,
202
+ minorTickLabelFormat: new Intl.DateTimeFormat(locale, { year: 'numeric', timeZone: timeZone }).format,
203
+ minimumPixelsPerSecond: NaN,
204
+ approxWidthInMs: NaN,
205
+ };
206
+ var decadesUnlabelled = __assign(__assign({}, decades), { labeled: false, minimumTickPixelDistance: 1 });
207
+ var months = {
208
+ unit: 'month',
209
+ unitMultiplier: 1,
210
+ labeled: true,
211
+ minimumTickPixelDistance: minimumTickPixelDistance * 3.6,
212
+ binStarts: function (domainFrom, domainTo) {
213
+ var _a, _b, year, month, timePoint, timePointSec, nextTimePointSec, e_1_1;
214
+ var e_1, _c;
215
+ return __generator(this, function (_d) {
216
+ switch (_d.label) {
217
+ case 0:
218
+ _d.trys.push([0, 7, 8, 9]);
219
+ _a = __values(years.binStarts(domainFrom, domainTo)), _b = _a.next();
220
+ _d.label = 1;
221
+ case 1:
222
+ if (!!_b.done) return [3, 6];
223
+ year = _b.value.year;
224
+ month = 1;
225
+ _d.label = 2;
226
+ case 2:
227
+ if (!(month <= 12)) return [3, 5];
228
+ timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)({ timeZone: timeZone, year: year, month: month, day: 1 });
229
+ timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
230
+ nextTimePointSec = (0, cached_chrono_1.cachedZonedDateTimeFrom)({
231
+ timeZone: timeZone,
232
+ year: month < 12 ? year : year + 1,
233
+ month: (month % 12) + 1,
234
+ day: 1,
235
+ })[cached_chrono_1.timeProp.epochSeconds];
236
+ return [4, { year: year, month: month, timePointSec: timePointSec, nextTimePointSec: nextTimePointSec }];
237
+ case 3:
238
+ _d.sent();
239
+ _d.label = 4;
240
+ case 4:
241
+ month++;
242
+ return [3, 2];
243
+ case 5:
244
+ _b = _a.next();
245
+ return [3, 1];
246
+ case 6: return [3, 9];
247
+ case 7:
248
+ e_1_1 = _d.sent();
249
+ e_1 = { error: e_1_1 };
250
+ return [3, 9];
251
+ case 8:
252
+ try {
253
+ if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
254
+ }
255
+ finally { if (e_1) throw e_1.error; }
256
+ return [7];
257
+ case 9: return [2];
258
+ }
259
+ });
260
+ },
261
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, { year: 'numeric', month: 'long', timeZone: timeZone }).format,
262
+ minorTickLabelFormat: new Intl.DateTimeFormat(locale, { month: 'long', timeZone: timeZone }).format,
263
+ minimumPixelsPerSecond: NaN,
264
+ approxWidthInMs: NaN,
265
+ };
266
+ var shortMonths = __assign(__assign({}, months), { minorTickLabelFormat: new Intl.DateTimeFormat(locale, { month: 'short', timeZone: timeZone }).format, minimumTickPixelDistance: minimumTickPixelDistance * 2 });
267
+ var narrowMonths = __assign(__assign({}, months), { minorTickLabelFormat: new Intl.DateTimeFormat(locale, { month: 'narrow', timeZone: timeZone }).format, minimumTickPixelDistance: minimumTickPixelDistance });
268
+ var days = {
269
+ unit: 'day',
270
+ unitMultiplier: 1,
271
+ labeled: true,
272
+ minimumTickPixelDistance: minimumTickPixelDistance * 1.5,
273
+ binStarts: function (domainFrom, domainTo) {
274
+ var _a, _b, _c, year, month, dayOfMonth, temporalArgs, timePoint, dayOfWeek, timePointSec, nextTimePointSec, e_2_1;
275
+ var e_2, _d;
276
+ return __generator(this, function (_e) {
277
+ switch (_e.label) {
278
+ case 0:
279
+ _e.trys.push([0, 7, 8, 9]);
280
+ _a = __values(months.binStarts(domainFrom, domainTo)), _b = _a.next();
281
+ _e.label = 1;
282
+ case 1:
283
+ if (!!_b.done) return [3, 6];
284
+ _c = _b.value, year = _c.year, month = _c.month;
285
+ dayOfMonth = 1;
286
+ _e.label = 2;
287
+ case 2:
288
+ if (!(dayOfMonth <= 31)) return [3, 5];
289
+ temporalArgs = {
290
+ timeZone: timeZone,
291
+ year: year,
292
+ month: month,
293
+ day: dayOfMonth,
294
+ };
295
+ timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)(temporalArgs);
296
+ dayOfWeek = timePoint[cached_chrono_1.timeProp.dayOfWeek];
297
+ timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
298
+ nextTimePointSec = (0, cached_chrono_1.cachedTimeDelta)(temporalArgs, 'days', 1);
299
+ if (!(Number.isFinite(timePointSec) && Number.isFinite(nextTimePointSec))) return [3, 4];
300
+ return [4, {
301
+ year: year,
302
+ month: month,
303
+ dayOfMonth: dayOfMonth,
304
+ dayOfWeek: dayOfWeek,
305
+ timePointSec: timePointSec,
306
+ nextTimePointSec: nextTimePointSec,
307
+ }];
308
+ case 3:
309
+ _e.sent();
310
+ _e.label = 4;
311
+ case 4:
312
+ dayOfMonth++;
313
+ return [3, 2];
314
+ case 5:
315
+ _b = _a.next();
316
+ return [3, 1];
317
+ case 6: return [3, 9];
318
+ case 7:
319
+ e_2_1 = _e.sent();
320
+ e_2 = { error: e_2_1 };
321
+ return [3, 9];
322
+ case 8:
323
+ try {
324
+ if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
325
+ }
326
+ finally { if (e_2) throw e_2.error; }
327
+ return [7];
328
+ case 9: return [2];
329
+ }
330
+ });
331
+ },
332
+ detailedLabelFormat: detailedDayFormat,
333
+ minorTickLabelFormat: function (d) {
334
+ var numberString = minorDayFormat(d);
335
+ var number = Number.parseInt(numberString, 10);
336
+ return locale.substr(0, 2) === 'en'
337
+ ? "" + numberString + (number === 1 || number === 21 || number === 31
338
+ ? 'st'
339
+ : number === 2 || number === 22
340
+ ? 'nd'
341
+ : number === 3 || number === 23
342
+ ? 'rd'
343
+ : 'th')
344
+ : numberString;
345
+ },
346
+ minimumPixelsPerSecond: NaN,
347
+ approxWidthInMs: NaN,
348
+ };
349
+ var weekStartDays = {
350
+ unit: 'week',
351
+ unitMultiplier: 1,
352
+ labeled: true,
353
+ minimumTickPixelDistance: minimumTickPixelDistance,
354
+ binStarts: function (domainFrom, domainTo) {
355
+ var _a, _b, _c, year, month, dayOfMonth, temporalArgs, timePoint, dayOfWeek, timePointSec, e_3_1;
356
+ var e_3, _d;
357
+ return __generator(this, function (_e) {
358
+ switch (_e.label) {
359
+ case 0:
360
+ _e.trys.push([0, 7, 8, 9]);
361
+ _a = __values(months.binStarts(domainFrom, domainTo)), _b = _a.next();
362
+ _e.label = 1;
363
+ case 1:
364
+ if (!!_b.done) return [3, 6];
365
+ _c = _b.value, year = _c.year, month = _c.month;
366
+ dayOfMonth = 1;
367
+ _e.label = 2;
368
+ case 2:
369
+ if (!(dayOfMonth <= 31)) return [3, 5];
370
+ temporalArgs = { timeZone: timeZone, year: year, month: month, day: dayOfMonth };
371
+ timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)(temporalArgs);
372
+ dayOfWeek = timePoint[cached_chrono_1.timeProp.dayOfWeek];
373
+ if (dayOfWeek !== 1)
374
+ return [3, 4];
375
+ timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
376
+ if (!Number.isFinite(timePointSec)) return [3, 4];
377
+ return [4, { dayOfMonth: dayOfMonth, timePointSec: timePointSec, nextTimePointSec: (0, cached_chrono_1.cachedTimeDelta)(temporalArgs, 'days', 7) }];
378
+ case 3:
379
+ _e.sent();
380
+ _e.label = 4;
381
+ case 4:
382
+ dayOfMonth++;
383
+ return [3, 2];
384
+ case 5:
385
+ _b = _a.next();
386
+ return [3, 1];
387
+ case 6: return [3, 9];
388
+ case 7:
389
+ e_3_1 = _e.sent();
390
+ e_3 = { error: e_3_1 };
391
+ return [3, 9];
392
+ case 8:
393
+ try {
394
+ if (_b && !_b.done && (_d = _a.return)) _d.call(_a);
395
+ }
396
+ finally { if (e_3) throw e_3.error; }
397
+ return [7];
398
+ case 9: return [2];
399
+ }
400
+ });
401
+ },
402
+ minorTickLabelFormat: function (d) { return minorDayFormat(d) + "th"; },
403
+ detailedLabelFormat: detailedDayFormat,
404
+ minimumPixelsPerSecond: NaN,
405
+ approxWidthInMs: NaN,
406
+ };
407
+ var daysUnlabelled = __assign(__assign({}, days), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
408
+ var weeksUnlabelled = __assign(__assign({}, weekStartDays), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
409
+ var monthsUnlabelled = __assign(__assign({}, months), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
410
+ var hours = {
411
+ unit: 'hour',
412
+ unitMultiplier: 1,
413
+ labeled: true,
414
+ minimumTickPixelDistance: 2 * minimumTickPixelDistance,
415
+ binStarts: millisecondBinStarts(60 * 60 * 1000),
416
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, {
417
+ year: 'numeric',
418
+ month: 'short',
419
+ day: 'numeric',
420
+ hour: 'numeric',
421
+ timeZone: timeZone,
422
+ }).format,
423
+ minorTickLabelFormat: new Intl.DateTimeFormat(locale, {
424
+ hour: 'numeric',
425
+ timeZone: timeZone,
426
+ }).format,
427
+ minimumPixelsPerSecond: NaN,
428
+ approxWidthInMs: NaN,
429
+ };
430
+ var hoursUnlabelled = __assign(__assign({}, hours), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
431
+ var sixHours = {
432
+ unit: 'hour',
433
+ unitMultiplier: 6,
434
+ labeled: true,
435
+ minimumTickPixelDistance: 2 * minimumTickPixelDistance,
436
+ binStarts: function (domainFrom, domainTo) {
437
+ return __spreadArray([], __read(days.binStarts(domainFrom, domainTo)), false).flatMap(function (_a) {
438
+ var year = _a.year, month = _a.month, dayOfMonth = _a.dayOfMonth, dayOfWeek = _a.dayOfWeek;
439
+ return [0, 6, 12, 18].map(function (hour) {
440
+ var temporalArgs = {
441
+ timeZone: timeZone,
442
+ year: year,
443
+ month: month,
444
+ day: dayOfMonth,
445
+ hour: hour,
446
+ };
447
+ var timePoint = (0, cached_chrono_1.cachedZonedDateTimeFrom)(temporalArgs);
448
+ var timePointSec = timePoint[cached_chrono_1.timeProp.epochSeconds];
449
+ return Number.isNaN(timePointSec)
450
+ ? []
451
+ : {
452
+ dayOfMonth: dayOfMonth,
453
+ dayOfWeek: dayOfWeek,
454
+ hour: hour,
455
+ year: year,
456
+ month: month,
457
+ timePointSec: timePointSec,
458
+ nextTimePointSec: timePointSec + 6 * 60 * 60,
459
+ };
460
+ });
461
+ }).map(function (b, i, a) {
462
+ return Object.assign(b, { nextTimePointSec: i === a.length - 1 ? b.nextTimePointSec : a[i + 1].timePointSec });
463
+ });
464
+ },
465
+ minorTickLabelFormat: new Intl.DateTimeFormat(locale, {
466
+ hour: 'numeric',
467
+ timeZone: timeZone,
468
+ }).format,
469
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, {
470
+ hour: 'numeric',
471
+ timeZone: timeZone,
472
+ }).format,
473
+ minimumPixelsPerSecond: NaN,
474
+ approxWidthInMs: NaN,
475
+ };
476
+ var sixHoursUnlabelled = __assign(__assign({}, sixHours), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
477
+ var minutes = {
478
+ unit: 'minute',
479
+ unitMultiplier: 1,
480
+ labeled: true,
481
+ minimumTickPixelDistance: minimumTickPixelDistance,
482
+ binStarts: millisecondBinStarts(60 * 1000),
483
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, {
484
+ year: 'numeric',
485
+ month: 'short',
486
+ day: 'numeric',
487
+ hour: 'numeric',
488
+ minute: 'numeric',
489
+ timeZone: timeZone,
490
+ }).format,
491
+ minorTickLabelFormat: function (d) {
492
+ return new Intl.DateTimeFormat(locale, {
493
+ minute: 'numeric',
494
+ timeZone: timeZone,
495
+ }).format(d) + "'";
496
+ },
497
+ minimumPixelsPerSecond: NaN,
498
+ approxWidthInMs: NaN,
499
+ };
500
+ var quarterHours = __assign(__assign({}, minutes), { unitMultiplier: 15, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance, binStarts: millisecondBinStarts(15 * 60 * 1000) });
501
+ var quarterHoursUnlabelled = __assign(__assign({}, quarterHours), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
502
+ var fiveMinutes = __assign(__assign({}, minutes), { unitMultiplier: 5, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance, binStarts: millisecondBinStarts(5 * 60 * 1000) });
503
+ var fiveMinutesUnlabelled = __assign(__assign({}, fiveMinutes), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
504
+ var minutesUnlabelled = __assign(__assign({}, minutes), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
505
+ var seconds = {
506
+ unit: 'second',
507
+ unitMultiplier: 1,
508
+ labeled: true,
509
+ minimumTickPixelDistance: minimumTickPixelDistance,
510
+ binStarts: millisecondBinStarts(1000),
511
+ detailedLabelFormat: new Intl.DateTimeFormat(locale, {
512
+ year: 'numeric',
513
+ month: 'short',
514
+ day: 'numeric',
515
+ hour: 'numeric',
516
+ minute: 'numeric',
517
+ second: 'numeric',
518
+ timeZone: timeZone,
519
+ }).format,
520
+ minorTickLabelFormat: function (d) {
521
+ return new Intl.DateTimeFormat(locale, {
522
+ second: 'numeric',
523
+ timeZone: timeZone,
524
+ }).format(d) + "\"";
525
+ },
526
+ minimumPixelsPerSecond: NaN,
527
+ approxWidthInMs: NaN,
528
+ };
529
+ var quarterMinutes = __assign(__assign({}, seconds), { unitMultiplier: 15, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance, binStarts: millisecondBinStarts(15 * 1000) });
530
+ var quarterMinutesUnlabelled = __assign(__assign({}, quarterMinutes), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
531
+ var fiveSeconds = __assign(__assign({}, seconds), { unitMultiplier: 5, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance, binStarts: millisecondBinStarts(5 * 1000) });
532
+ var fiveSecondsUnlabelled = __assign(__assign({}, fiveSeconds), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
533
+ var secondsUnlabelled = __assign(__assign({}, seconds), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
534
+ var milliseconds = {
535
+ unit: 'millisecond',
536
+ unitMultiplier: 1,
537
+ labeled: true,
538
+ minimumTickPixelDistance: minimumTickPixelDistance * 1.8,
539
+ binStarts: millisecondBinStarts(1),
540
+ minorTickLabelFormat: function (d) { return d % 1000 + "ms"; },
541
+ detailedLabelFormat: function (d) { return d % 1000 + "ms"; },
542
+ minimumPixelsPerSecond: NaN,
543
+ approxWidthInMs: NaN,
544
+ };
545
+ var tenMilliseconds = __assign(__assign({}, milliseconds), { unitMultiplier: 10, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance * 1.8, binStarts: millisecondBinStarts(10) });
546
+ var hundredMilliseconds = __assign(__assign({}, milliseconds), { unitMultiplier: 100, labeled: true, minimumTickPixelDistance: minimumTickPixelDistance * 1.8, binStarts: millisecondBinStarts(100) });
547
+ var millisecondsUnlabelled = __assign(__assign({}, milliseconds), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
548
+ var tenMillisecondsUnlabelled = __assign(__assign({}, tenMilliseconds), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
549
+ var hundredMillisecondsUnlabelled = __assign(__assign({}, hundredMilliseconds), { labeled: false, minimumTickPixelDistance: minimumTickPixelDistance / 2 });
550
+ var allRasters = [
551
+ decades,
552
+ yearsUnlabelled,
553
+ years,
554
+ monthsUnlabelled,
555
+ narrowMonths,
556
+ shortMonths,
557
+ months,
558
+ weekStartDays,
559
+ daysUnlabelled,
560
+ days,
561
+ sixHoursUnlabelled,
562
+ sixHours,
563
+ hoursUnlabelled,
564
+ hours,
565
+ quarterHoursUnlabelled,
566
+ quarterHours,
567
+ fiveMinutesUnlabelled,
568
+ fiveMinutes,
569
+ minutesUnlabelled,
570
+ minutes,
571
+ quarterMinutesUnlabelled,
572
+ quarterMinutes,
573
+ fiveSecondsUnlabelled,
574
+ fiveSeconds,
575
+ secondsUnlabelled,
576
+ seconds,
577
+ hundredMillisecondsUnlabelled,
578
+ hundredMilliseconds,
579
+ tenMillisecondsUnlabelled,
580
+ tenMilliseconds,
581
+ millisecondsUnlabelled,
582
+ milliseconds,
583
+ ]
584
+ .map(function (r) {
585
+ return Object.assign(r, {
586
+ approxWidthInMs: approxWidthsInSeconds[r.unit] * r.unitMultiplier * 1000,
587
+ minimumPixelsPerSecond: r.minimumTickPixelDistance / (approxWidthsInSeconds[r.unit] * r.unitMultiplier),
588
+ });
589
+ });
590
+ var replacements = [
591
+ [decadesUnlabelled, new Map([])],
592
+ [decades, new Map([[decadesUnlabelled, []]])],
593
+ [
594
+ years,
595
+ new Map([
596
+ [decades, [decadesUnlabelled]],
597
+ [yearsUnlabelled, []],
598
+ ]),
599
+ ],
600
+ [narrowMonths, new Map([[monthsUnlabelled, []]])],
601
+ [
602
+ shortMonths,
603
+ new Map([
604
+ [monthsUnlabelled, []],
605
+ [narrowMonths, []],
606
+ ]),
607
+ ],
608
+ [
609
+ months,
610
+ new Map([
611
+ [monthsUnlabelled, []],
612
+ [narrowMonths, []],
613
+ [shortMonths, []],
614
+ ]),
615
+ ],
616
+ [
617
+ days,
618
+ new Map([
619
+ [daysUnlabelled, []],
620
+ [weekStartDays, [weeksUnlabelled]],
621
+ ]),
622
+ ],
623
+ [sixHours, new Map([[sixHoursUnlabelled, []]])],
624
+ [
625
+ hours,
626
+ new Map([
627
+ [hoursUnlabelled, []],
628
+ [sixHours, []],
629
+ ]),
630
+ ],
631
+ [quarterHours, new Map([[quarterHoursUnlabelled, []]])],
632
+ [
633
+ fiveMinutes,
634
+ new Map([
635
+ [fiveMinutesUnlabelled, []],
636
+ [quarterHours, [quarterHoursUnlabelled]],
637
+ ]),
638
+ ],
639
+ [
640
+ minutes,
641
+ new Map([
642
+ [minutesUnlabelled, []],
643
+ [quarterHours, [quarterHoursUnlabelled]],
644
+ [fiveMinutes, [fiveMinutesUnlabelled]],
645
+ ]),
646
+ ],
647
+ [quarterMinutes, new Map([[quarterMinutesUnlabelled, []]])],
648
+ [
649
+ fiveSeconds,
650
+ new Map([
651
+ [fiveSecondsUnlabelled, []],
652
+ [quarterMinutes, [quarterMinutesUnlabelled]],
653
+ ]),
654
+ ],
655
+ [
656
+ seconds,
657
+ new Map([
658
+ [secondsUnlabelled, []],
659
+ [quarterMinutes, [quarterMinutesUnlabelled]],
660
+ [fiveSeconds, [fiveSecondsUnlabelled]],
661
+ ]),
662
+ ],
663
+ [hundredMilliseconds, new Map([[hundredMillisecondsUnlabelled, []]])],
664
+ [
665
+ tenMilliseconds,
666
+ new Map([
667
+ [tenMillisecondsUnlabelled, []],
668
+ [hundredMilliseconds, [hundredMillisecondsUnlabelled]],
669
+ ]),
670
+ ],
671
+ [
672
+ milliseconds,
673
+ new Map([
674
+ [millisecondsUnlabelled, []],
675
+ [tenMilliseconds, [tenMillisecondsUnlabelled]],
676
+ [hundredMilliseconds, [hundredMillisecondsUnlabelled]],
677
+ ]),
678
+ ],
679
+ ];
680
+ return function (filter) {
681
+ var e_4, _a;
682
+ var layers = new Set();
683
+ try {
684
+ for (var allRasters_1 = __values(allRasters), allRasters_1_1 = allRasters_1.next(); !allRasters_1_1.done; allRasters_1_1 = allRasters_1.next()) {
685
+ var layer = allRasters_1_1.value;
686
+ if (filter(layer))
687
+ layers.add(layer);
688
+ else
689
+ break;
690
+ }
691
+ }
692
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
693
+ finally {
694
+ try {
695
+ if (allRasters_1_1 && !allRasters_1_1.done && (_a = allRasters_1.return)) _a.call(allRasters_1);
696
+ }
697
+ finally { if (e_4) throw e_4.error; }
698
+ }
699
+ replacements.forEach(function (_a) {
700
+ var _b = __read(_a, 2), key = _b[0], ruleMap = _b[1];
701
+ if (layers.has(key))
702
+ layers = new Set(__spreadArray([], __read(layers), false).flatMap(function (l) { var _a; return (_a = ruleMap.get(l)) !== null && _a !== void 0 ? _a : l; }));
703
+ });
704
+ return __spreadArray([], __read(layers), false).reverse();
705
+ };
706
+ };
707
+ exports.rasters = rasters;
708
+ //# sourceMappingURL=rasters.js.map