raain-ui 2.3.7 → 2.3.9

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.
@@ -0,0 +1,66 @@
1
+ import { DateRange } from './Tools';
2
+ export declare class DateStatusUtils {
3
+ /**
4
+ * Gets the number of days in a month for a given date
5
+ */
6
+ static getDaysInMonth(date: Date): number;
7
+ /**
8
+ * Filters data points based on the focus date and range
9
+ */
10
+ static filterFocus(mapToFilter: Array<{
11
+ date: Date;
12
+ value: number;
13
+ }>, focusDate: Date, focusRange: DateRange): Array<{
14
+ date: Date;
15
+ value: number;
16
+ }>;
17
+ /**
18
+ * Groups data points based on the focus date and range
19
+ */
20
+ static groupFocus(mapToFilter: Array<{
21
+ date: Date;
22
+ value: number;
23
+ }>, focusDate: Date, focusRange: DateRange, min: Date, max: Date): number[];
24
+ /**
25
+ * Generates labels for the chart based on the focus date and range
26
+ */
27
+ static focusLabels(focusDate: Date, focusRange: DateRange, min: Date, max: Date, data: {
28
+ label: string;
29
+ style: string;
30
+ values: {
31
+ date: Date;
32
+ value: number;
33
+ }[];
34
+ }[]): string[];
35
+ /**
36
+ * Gets the focus date and title for a given index
37
+ */
38
+ static getFocusDateAndTitle(oldFocusDate: Date, focusRange: DateRange, index: number, min: Date, max: Date): {
39
+ newFocusDate: Date;
40
+ newTitle: string;
41
+ };
42
+ /**
43
+ * Builds a label for a date
44
+ */
45
+ static buildLabel(date: Date): string;
46
+ /**
47
+ * Builds a label for a year
48
+ */
49
+ static buildLabelYear(date: Date, year: number): string;
50
+ /**
51
+ * Builds a label for a month
52
+ */
53
+ static buildLabelMonth(date: Date, month: number): string;
54
+ /**
55
+ * Builds a label for a day
56
+ */
57
+ static buildLabelDate(date: Date, dateNumber: number): string;
58
+ /**
59
+ * Builds a label for an hour
60
+ */
61
+ static buildLabelHour(date: Date, hour: number, withLocal?: boolean): string;
62
+ /**
63
+ * Builds a label for a minute
64
+ */
65
+ static buildLabelMinute(date: Date, minute: number, withLocal?: boolean): string;
66
+ }
@@ -0,0 +1,257 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DateStatusUtils = void 0;
4
+ const Tools_1 = require("./Tools");
5
+ class DateStatusUtils {
6
+ /**
7
+ * Gets the number of days in a month for a given date
8
+ */
9
+ static getDaysInMonth(date) {
10
+ // Create a new date for the first day of the next month, then get the day before (0th day)
11
+ // This gives us the last day of the current month, which is the number of days in the month
12
+ return new Date(Date.UTC(date.getUTCFullYear(), date.getUTCMonth() + 1, 0)).getDate();
13
+ }
14
+ /**
15
+ * Filters data points based on the focus date and range
16
+ */
17
+ static filterFocus(mapToFilter, focusDate, focusRange) {
18
+ return mapToFilter
19
+ .filter(e => {
20
+ let isIn = true;
21
+ if (isIn && focusRange >= Tools_1.DateRange.YEAR) {
22
+ isIn = e.date.getUTCFullYear() === focusDate.getUTCFullYear();
23
+ }
24
+ if (isIn && focusRange >= Tools_1.DateRange.MONTH) {
25
+ isIn = e.date.getUTCMonth() === focusDate.getUTCMonth();
26
+ }
27
+ if (isIn && focusRange >= Tools_1.DateRange.DAY) {
28
+ isIn = e.date.getUTCDate() === focusDate.getUTCDate();
29
+ }
30
+ if (isIn && focusRange >= Tools_1.DateRange.HOUR) {
31
+ isIn = e.date.getUTCHours() === focusDate.getUTCHours();
32
+ }
33
+ if (isIn && focusRange >= Tools_1.DateRange.MINUTE) {
34
+ isIn = e.date.getUTCMinutes() === focusDate.getUTCMinutes();
35
+ }
36
+ return isIn;
37
+ })
38
+ .sort((a, b) => a.date.getTime() - b.date.getTime());
39
+ }
40
+ /**
41
+ * Groups data points based on the focus date and range
42
+ */
43
+ static groupFocus(mapToFilter, focusDate, focusRange, min, max) {
44
+ const filteredAndSorted = DateStatusUtils.filterFocus(mapToFilter, focusDate, focusRange);
45
+ if (focusRange === Tools_1.DateRange.CENTURY) {
46
+ const groupedByYear = [];
47
+ for (let i = min.getUTCFullYear(); i <= max.getUTCFullYear(); i++) {
48
+ const yearDate = new Date(focusDate);
49
+ yearDate.setUTCFullYear(i);
50
+ const sum = DateStatusUtils.filterFocus(filteredAndSorted, yearDate, Tools_1.DateRange.YEAR)
51
+ .reduce((partialSum, a) => partialSum + a.value, 0);
52
+ groupedByYear.push(sum);
53
+ }
54
+ return groupedByYear;
55
+ }
56
+ if (focusRange === Tools_1.DateRange.YEAR) {
57
+ const groupedByMonth = [];
58
+ for (let i = 0; i < 12; i++) {
59
+ const monthDate = new Date(focusDate);
60
+ monthDate.setUTCMonth(i);
61
+ const sum = DateStatusUtils.filterFocus(filteredAndSorted, monthDate, Tools_1.DateRange.MONTH)
62
+ .reduce((partialSum, a) => partialSum + a.value, 0);
63
+ groupedByMonth.push(sum);
64
+ }
65
+ return groupedByMonth;
66
+ }
67
+ if (focusRange === Tools_1.DateRange.MONTH) {
68
+ const groupedByDay = [];
69
+ const daysInMonth = DateStatusUtils.getDaysInMonth(focusDate);
70
+ for (let i = 1; i <= daysInMonth; i++) {
71
+ const dayDate = new Date(focusDate);
72
+ dayDate.setUTCDate(i);
73
+ const sum = DateStatusUtils.filterFocus(filteredAndSorted, dayDate, Tools_1.DateRange.DAY)
74
+ .reduce((partialSum, a) => partialSum + a.value, 0);
75
+ groupedByDay.push(sum);
76
+ }
77
+ return groupedByDay;
78
+ }
79
+ if (focusRange === Tools_1.DateRange.DAY) {
80
+ const groupedByHour = [];
81
+ for (let i = 0; i < 24; i++) {
82
+ const hourDate = new Date(focusDate);
83
+ hourDate.setUTCHours(i);
84
+ const sum = DateStatusUtils.filterFocus(filteredAndSorted, hourDate, Tools_1.DateRange.HOUR)
85
+ .reduce((partialSum, a) => partialSum + a.value, 0);
86
+ groupedByHour.push(sum);
87
+ }
88
+ return groupedByHour;
89
+ }
90
+ if (focusRange === Tools_1.DateRange.HOUR) {
91
+ const groupedByMinutes = [];
92
+ for (let i = 0; i < 60; i++) {
93
+ const minuteDate = new Date(focusDate);
94
+ minuteDate.setUTCMinutes(i);
95
+ const sum = DateStatusUtils.filterFocus(filteredAndSorted, minuteDate, Tools_1.DateRange.MINUTE)
96
+ .reduce((partialSum, a) => partialSum + a.value, 0);
97
+ groupedByMinutes.push(sum);
98
+ }
99
+ return groupedByMinutes;
100
+ }
101
+ return filteredAndSorted.map(e => e.value);
102
+ }
103
+ /**
104
+ * Generates labels for the chart based on the focus date and range
105
+ */
106
+ static focusLabels(focusDate, focusRange, min, max, data) {
107
+ if (focusRange === Tools_1.DateRange.CENTURY) {
108
+ const groupedByYear = [];
109
+ for (let i = min.getUTCFullYear(); i <= max.getUTCFullYear(); i++) {
110
+ groupedByYear.push(DateStatusUtils.buildLabelYear(new Date(focusDate), i));
111
+ }
112
+ return groupedByYear;
113
+ }
114
+ else if (focusRange === Tools_1.DateRange.YEAR) {
115
+ const groupedByMonth = [];
116
+ for (let i = 0; i < 12; i++) {
117
+ groupedByMonth.push(DateStatusUtils.buildLabelMonth(new Date(focusDate), i));
118
+ }
119
+ return groupedByMonth;
120
+ }
121
+ else if (focusRange === Tools_1.DateRange.MONTH) {
122
+ const groupedByDay = [];
123
+ const daysInMonth = DateStatusUtils.getDaysInMonth(focusDate);
124
+ for (let i = 1; i <= daysInMonth; i++) {
125
+ groupedByDay.push(DateStatusUtils.buildLabelDate(new Date(focusDate), i));
126
+ }
127
+ return groupedByDay;
128
+ }
129
+ else if (focusRange === Tools_1.DateRange.DAY) {
130
+ const groupedByHour = [];
131
+ for (let i = 0; i < 24; i++) {
132
+ groupedByHour.push(DateStatusUtils.buildLabelHour(new Date(focusDate), i));
133
+ }
134
+ return groupedByHour;
135
+ }
136
+ else if (focusRange === Tools_1.DateRange.HOUR) {
137
+ const groupedByMinutes = [];
138
+ for (let i = 0; i < 60; i++) {
139
+ groupedByMinutes.push(DateStatusUtils.buildLabelMinute(new Date(focusDate), i));
140
+ }
141
+ return groupedByMinutes;
142
+ }
143
+ // all elements that are in the current minute
144
+ let allDates = [];
145
+ data.forEach(d => {
146
+ allDates = allDates.concat(d.values);
147
+ });
148
+ const filteredDates = DateStatusUtils.filterFocus(allDates, focusDate, Tools_1.DateRange.MINUTE);
149
+ const filteredDatesISO = filteredDates
150
+ .map(v => DateStatusUtils.buildLabel(v.date));
151
+ return filteredDatesISO.filter((item, pos, self) => {
152
+ return self.indexOf(item) === pos;
153
+ });
154
+ }
155
+ /**
156
+ * Gets the focus date and title for a given index
157
+ */
158
+ static getFocusDateAndTitle(oldFocusDate, focusRange, index, min, max) {
159
+ const newFocusDate = new Date(oldFocusDate);
160
+ let newTitle = '...';
161
+ if (focusRange === Tools_1.DateRange.YEAR) {
162
+ newTitle = DateStatusUtils.buildLabelYear(newFocusDate, min.getUTCFullYear() + index);
163
+ }
164
+ else if (focusRange === Tools_1.DateRange.MONTH) {
165
+ newTitle = DateStatusUtils.buildLabelMonth(newFocusDate, index);
166
+ }
167
+ else if (focusRange === Tools_1.DateRange.DAY) {
168
+ newTitle = DateStatusUtils.buildLabelDate(newFocusDate, index + 1);
169
+ }
170
+ else if (focusRange === Tools_1.DateRange.HOUR) {
171
+ newTitle = DateStatusUtils.buildLabelHour(newFocusDate, index, true);
172
+ }
173
+ else if (focusRange === Tools_1.DateRange.MINUTE) {
174
+ newTitle = DateStatusUtils.buildLabel(newFocusDate);
175
+ }
176
+ return { newFocusDate, newTitle };
177
+ }
178
+ /**
179
+ * Builds a label for a date
180
+ */
181
+ static buildLabel(date) {
182
+ // "2024-03-28 13:02:48 CET" l=23
183
+ return Tools_1.Tools.formatDate(date, Tools_1.DateRange.MINUTE);
184
+ }
185
+ /**
186
+ * Builds a label for a year
187
+ */
188
+ static buildLabelYear(date, year) {
189
+ date.setUTCFullYear(year);
190
+ date.setUTCMonth(0);
191
+ date.setUTCDate(1);
192
+ date.setUTCHours(0);
193
+ date.setUTCMinutes(0);
194
+ date.setUTCSeconds(0);
195
+ return Tools_1.Tools.formatDate(date, Tools_1.DateRange.YEAR);
196
+ }
197
+ /**
198
+ * Builds a label for a month
199
+ */
200
+ static buildLabelMonth(date, month) {
201
+ date.setUTCMonth(month);
202
+ date.setUTCDate(1);
203
+ date.setUTCHours(0);
204
+ date.setUTCMinutes(0);
205
+ date.setUTCSeconds(0);
206
+ return Tools_1.Tools.formatDate(date, Tools_1.DateRange.MONTH);
207
+ }
208
+ /**
209
+ * Builds a label for a day
210
+ */
211
+ static buildLabelDate(date, dateNumber) {
212
+ date.setUTCDate(dateNumber);
213
+ date.setUTCHours(0);
214
+ date.setUTCMinutes(0);
215
+ date.setUTCSeconds(0);
216
+ return Tools_1.Tools.formatDate(date, Tools_1.DateRange.DAY);
217
+ }
218
+ /**
219
+ * Builds a label for an hour
220
+ */
221
+ static buildLabelHour(date, hour, withLocal = false) {
222
+ date.setUTCHours(hour);
223
+ date.setUTCMinutes(0);
224
+ date.setUTCSeconds(0);
225
+ const utcFormatted = Tools_1.Tools.formatDate(date, Tools_1.DateRange.HOUR);
226
+ const local = new Date();
227
+ const userTimezoneOffset = local.getTimezoneOffset() * 60000;
228
+ const localDate = new Date(date.getTime() - userTimezoneOffset);
229
+ const localFormatted = Tools_1.Tools.formatDate(localDate, Tools_1.DateRange.HOUR);
230
+ if (withLocal) {
231
+ return `UTC ${utcFormatted} - Local ${localFormatted}`;
232
+ }
233
+ else {
234
+ return `UTC ${utcFormatted}`;
235
+ }
236
+ }
237
+ /**
238
+ * Builds a label for a minute
239
+ */
240
+ static buildLabelMinute(date, minute, withLocal = false) {
241
+ date.setUTCMinutes(minute);
242
+ date.setUTCSeconds(0);
243
+ const utcFormatted = Tools_1.Tools.formatDate(date, Tools_1.DateRange.MINUTE);
244
+ const local = new Date();
245
+ const userTimezoneOffset = local.getTimezoneOffset() * 60000;
246
+ const localDate = new Date(date.getTime() - userTimezoneOffset);
247
+ const localFormatted = Tools_1.Tools.formatDate(localDate, Tools_1.DateRange.MINUTE);
248
+ if (withLocal) {
249
+ return `UTC ${utcFormatted} - Local ${localFormatted}`;
250
+ }
251
+ else {
252
+ return `UTC ${utcFormatted}`;
253
+ }
254
+ }
255
+ }
256
+ exports.DateStatusUtils = DateStatusUtils;
257
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGF0ZVN0YXR1c1V0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZhY3Rvcmllcy9EYXRlU3RhdHVzVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQXlDO0FBRXpDLE1BQWEsZUFBZTtJQUN4Qjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBVTtRQUNuQywyRkFBMkY7UUFDM0YsNEZBQTRGO1FBQzVGLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzFGLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxXQUFXLENBQUMsV0FBaUQsRUFBRSxTQUFlLEVBQUUsVUFBcUI7UUFJL0csT0FBTyxXQUFXO2FBQ2IsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1IsSUFBSSxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2hCLElBQUksSUFBSSxJQUFJLFVBQVUsSUFBSSxpQkFBUyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN2QyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsS0FBSyxTQUFTLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDbEUsQ0FBQztZQUNELElBQUksSUFBSSxJQUFJLFVBQVUsSUFBSSxpQkFBUyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUN4QyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDNUQsQ0FBQztZQUNELElBQUksSUFBSSxJQUFJLFVBQVUsSUFBSSxpQkFBUyxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUN0QyxJQUFJLEdBQUcsQ0FBQyxDQUFDLElBQUks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
@@ -0,0 +1,49 @@
1
+ import { DateRange } from './Tools';
2
+ import { DateStatusElement, DateStatusElementInput } from './DateStatusElement';
3
+ export declare class DynamicDateStatusElementInput extends DateStatusElementInput {
4
+ fetchDataFn: (focusDate: Date, focusRange: DateRange) => Promise<{
5
+ label: string;
6
+ style: string;
7
+ values: {
8
+ date: Date;
9
+ value: number;
10
+ }[];
11
+ }[]>;
12
+ options: {
13
+ dataLength?: number;
14
+ focusDate?: Date;
15
+ focusRange?: DateRange;
16
+ chartMinValue?: number;
17
+ chartMaxValue?: number;
18
+ };
19
+ constructor(fetchDataFn: (focusDate: Date, focusRange: DateRange) => Promise<{
20
+ label: string;
21
+ style: string;
22
+ values: {
23
+ date: Date;
24
+ value: number;
25
+ }[];
26
+ }[]>, options?: {
27
+ dataLength?: number;
28
+ focusDate?: Date;
29
+ focusRange?: DateRange;
30
+ chartMinValue?: number;
31
+ chartMaxValue?: number;
32
+ });
33
+ }
34
+ export declare class DynamicDateStatusElement extends DateStatusElement {
35
+ protected element: HTMLCanvasElement;
36
+ protected inputs: DynamicDateStatusElementInput;
37
+ protected fetchDataFn: (focusDate: Date, focusRange: DateRange) => Promise<{
38
+ label: string;
39
+ style: string;
40
+ values: {
41
+ date: Date;
42
+ value: number;
43
+ }[];
44
+ }[]>;
45
+ constructor(addSomeDebugInfos?: boolean);
46
+ build(element: HTMLCanvasElement, inputs: DynamicDateStatusElementInput): void;
47
+ private overrideFocusMethods;
48
+ private setLoadingState;
49
+ }
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamicDateStatusElement = exports.DynamicDateStatusElementInput = void 0;
4
+ const Tools_1 = require("./Tools");
5
+ const DateStatusElement_1 = require("./DateStatusElement");
6
+ const DateStatusUtils_1 = require("./DateStatusUtils");
7
+ class DynamicDateStatusElementInput extends DateStatusElement_1.DateStatusElementInput {
8
+ constructor(fetchDataFn, options = {
9
+ dataLength: 1,
10
+ focusDate: new Date(),
11
+ focusRange: Tools_1.DateRange.YEAR,
12
+ chartMinValue: 0,
13
+ chartMaxValue: 100,
14
+ }) {
15
+ var _a, _b;
16
+ super([{ label: '...', style: 'bar', values: [] }], (_a = options.focusDate) !== null && _a !== void 0 ? _a : new Date(), (_b = options.focusRange) !== null && _b !== void 0 ? _b : Tools_1.DateRange.YEAR, options.chartMinValue, options.chartMaxValue);
17
+ this.fetchDataFn = fetchDataFn;
18
+ this.options = options;
19
+ }
20
+ }
21
+ exports.DynamicDateStatusElementInput = DynamicDateStatusElementInput;
22
+ class DynamicDateStatusElement extends DateStatusElement_1.DateStatusElement {
23
+ constructor(addSomeDebugInfos = false) {
24
+ super(addSomeDebugInfos);
25
+ }
26
+ build(element, inputs) {
27
+ console.log('DynamicDateStatusElement.build');
28
+ this.element = element;
29
+ this.inputs = inputs;
30
+ this.fetchDataFn = this.inputs.fetchDataFn;
31
+ // Call the parent build method with the fetched data
32
+ super.build(element, this.inputs);
33
+ // Override focus methods to fetch data asynchronously
34
+ this.overrideFocusMethods();
35
+ this.focusReset().then();
36
+ }
37
+ overrideFocusMethods() {
38
+ // Store original methods
39
+ const originalFocusReset = this.focusReset;
40
+ const originalFocusNext = this.focusNext;
41
+ const originalFocusPrevious = this.focusPrevious;
42
+ const originalFocusClick = this.focusClick;
43
+ // Override focusReset
44
+ this.focusReset = async () => {
45
+ // Show loading state
46
+ this.setLoadingState(true);
47
+ // Reset to top view
48
+ this.focusPos = 0;
49
+ this.focusDate = new Date(this.inputs.focusDate);
50
+ this.focusRange = this.inputs.focusRange;
51
+ try {
52
+ this.setOfData = await this.fetchDataFn(this.focusDate, this.focusRange);
53
+ const dataPoints = this.buildDateTimeSeries(this.inputs.focusDate, this.inputs.focusRange);
54
+ await originalFocusReset(dataPoints);
55
+ }
56
+ catch (error) {
57
+ if (!document || !document['mocked']) {
58
+ console.error('Error fetching data and focus reset:', error);
59
+ }
60
+ }
61
+ finally {
62
+ this.setLoadingState(false);
63
+ }
64
+ };
65
+ // Override focusNext
66
+ this.focusNext = async () => {
67
+ // Show loading state
68
+ this.setLoadingState(true);
69
+ const eFocusRange = this.focusRange;
70
+ const { pos, newFocusDate } = this.getFocusPosAdded(1, this.focusDate, eFocusRange);
71
+ try {
72
+ // Fetch new data
73
+ this.setOfData = await this.fetchDataFn(newFocusDate, eFocusRange);
74
+ // Call original's method
75
+ await originalFocusNext();
76
+ }
77
+ catch (error) {
78
+ console.error('Error fetching data:', error);
79
+ // Handle error state
80
+ }
81
+ finally {
82
+ // Hide loading state
83
+ this.setLoadingState(false);
84
+ }
85
+ };
86
+ // Override focusPrevious
87
+ this.focusPrevious = async () => {
88
+ // Show loading state
89
+ this.setLoadingState(true);
90
+ const eFocusRange = this.focusRange;
91
+ const { pos, newFocusDate } = this.getFocusPosAdded(-1, this.focusDate, eFocusRange);
92
+ try {
93
+ // Fetch new data
94
+ this.setOfData = await this.fetchDataFn(newFocusDate, eFocusRange);
95
+ // Call original's method
96
+ await originalFocusPrevious();
97
+ }
98
+ catch (error) {
99
+ console.error('Error fetching data:', error);
100
+ // Handle error state
101
+ }
102
+ finally {
103
+ // Hide loading state
104
+ this.setLoadingState(false);
105
+ }
106
+ };
107
+ // Override focusClick
108
+ this.focusClick = async (e) => {
109
+ if (this.focusRange >= Tools_1.DateRange.HOUR) {
110
+ return;
111
+ }
112
+ // Show loading state
113
+ this.setLoadingState(true);
114
+ try {
115
+ // Fetch new data
116
+ const focusPos = this.getFocusPosRelative(e, this.chart);
117
+ const { newFocusDate } = DateStatusUtils_1.DateStatusUtils.getFocusDateAndTitle(this.focusDate, this.focusRange + 1, focusPos, this.minDate, this.maxDate);
118
+ this.setOfData = await this.fetchDataFn(newFocusDate, this.focusRange + 1);
119
+ // Call original's method
120
+ await originalFocusClick(e);
121
+ }
122
+ catch (error) {
123
+ console.error('Error fetching data:', error);
124
+ // Handle error state
125
+ }
126
+ finally {
127
+ // Hide loading state
128
+ this.setLoadingState(false);
129
+ }
130
+ };
131
+ }
132
+ setLoadingState(isLoading) {
133
+ if (this.chart && (!document || !document['mocked'])) {
134
+ // Update chart title to show loading state
135
+ if (isLoading) {
136
+ this.updateChartTitle('Loading...');
137
+ this.chart.update();
138
+ }
139
+ }
140
+ }
141
+ }
142
+ exports.DynamicDateStatusElement = DynamicDateStatusElement;
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRHluYW1pY0RhdGVTdGF0dXNFbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZhY3Rvcmllcy9EeW5hbWljRGF0ZVN0YXR1c0VsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQWtDO0FBQ2xDLDJEQUE4RTtBQUM5RSx1REFBa0Q7QUFFbEQsTUFBYSw2QkFBOEIsU0FBUSwwQ0FBc0I7SUFDckUsWUFDVyxXQUlILEVBQ0csVUFNSDtRQUNBLFVBQVUsRUFBRSxDQUFDO1FBQ2IsU0FBUyxFQUFFLElBQUksSUFBSSxFQUFFO1FBQ3JCLFVBQVUsRUFBRSxpQkFBUyxDQUFDLElBQUk7UUFDMUIsYUFBYSxFQUFFLENBQUM7UUFDaEIsYUFBYSxFQUFFLEdBQUc7S0FDckI7O1FBRUQsS0FBSyxDQUNELENBQUMsRUFBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBQyxDQUFDLEVBQzFDLE1BQUEsT0FBTyxDQUFDLFNBQVMsbUNBQUksSUFBSSxJQUFJLEVBQUUsRUFDL0IsTUFBQSxPQUFPLENBQUMsVUFBVSxtQ0FBSSxpQkFBUyxDQUFDLElBQUksRUFDcEMsT0FBTyxDQUFDLGFBQWEsRUFDckIsT0FBTyxDQUFDLGFBQWEsQ0FDeEIsQ0FBQztRQXpCSyxnQkFBVyxHQUFYLFdBQVcsQ0FJZDtRQUNHLFlBQU8sR0FBUCxPQUFPLENBWWI7SUFTTCxDQUFDO0NBQ0o7QUE3QkQsc0VBNkJDO0FBRUQsTUFBYSx3QkFBeUIsU0FBUSxxQ0FBaUI7SUFTM0QsWUFBWSxpQkFBaUIsR0FBRyxLQUFLO1FBQ2pDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFTSxLQUFLLENBQUMsT0FBMEIsRUFBRSxNQUFxQztRQUMxRSxPQUFPLENBQUMsR0FBRyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7UUFDOUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxP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
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Class for Earth map configuration
3
+ */
4
+ export declare class EarthMapElementInput {
5
+ accessToken: string;
6
+ constructor(accessToken: string);
7
+ }
8
+ /**
9
+ * Factory class for creating interactive Earth maps
10
+ */
11
+ export declare class EarthMapElement {
12
+ protected addSomeDebugInfos: boolean;
13
+ constructor(addSomeDebugInfos?: boolean);
14
+ /**
15
+ * Creates and initializes an interactive 3D Earth map
16
+ * @param element - HTML element to render the map
17
+ * @param inputs - Map configuration options
18
+ */
19
+ build(element: HTMLElement, inputs: EarthMapElementInput): void;
20
+ }
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ // The URL on your server where CesiumJS's static files are hosted.
3
+ // (window as any).CESIUM_BASE_URL = '/';
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.EarthMapElement = exports.EarthMapElementInput = void 0;
6
+ // import {Ion, Terrain, Viewer} from 'cesium';
7
+ // import 'cesium/Build/Cesium/Widgets/widgets.css';
8
+ // Your access token can be found at: https://ion.cesium.com/tokens.
9
+ // Replace `your_access_token` with your Cesium ion access token.
10
+ const main_1 = require("../globe/main");
11
+ /**
12
+ * Class for Earth map configuration
13
+ */
14
+ class EarthMapElementInput {
15
+ constructor(accessToken) {
16
+ this.accessToken = accessToken;
17
+ }
18
+ }
19
+ exports.EarthMapElementInput = EarthMapElementInput;
20
+ /**
21
+ * Factory class for creating interactive Earth maps
22
+ */
23
+ class EarthMapElement {
24
+ constructor(addSomeDebugInfos = false) {
25
+ this.addSomeDebugInfos = addSomeDebugInfos;
26
+ }
27
+ /**
28
+ * Creates and initializes an interactive 3D Earth map
29
+ * @param element - HTML element to render the map
30
+ * @param inputs - Map configuration options
31
+ */
32
+ build(element, inputs) {
33
+ if (!element) {
34
+ throw new Error('Container element is required');
35
+ }
36
+ const params = {
37
+ container: element,
38
+ center: [-100, 38.5],
39
+ altitude: 6280,
40
+ };
41
+ (0, main_1.initGlobe)(params).then(globe => {
42
+ let spot;
43
+ let requestID = requestAnimationFrame(animate);
44
+ function animate(time) {
45
+ if (spot) {
46
+ globe.removeMarker(spot);
47
+ }
48
+ globe.update(time);
49
+ // Check for a mountain under the cursor
50
+ const mountain = globe.select('mountains', 12);
51
+ if (mountain) {
52
+ const position = mountain.geometry.coordinates;
53
+ spot = globe.addMarker({ position, type: 'spot' });
54
+ }
55
+ requestID = requestAnimationFrame(animate);
56
+ }
57
+ }).catch(console.log);
58
+ }
59
+ }
60
+ exports.EarthMapElement = EarthMapElement;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWFydGhNYXBFbGVtZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZhY3Rvcmllcy9FYXJ0aE1hcEVsZW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLG1FQUFtRTtBQUNuRSx5Q0FBeUM7OztBQUV6QywrQ0FBK0M7QUFDL0Msb0RBQW9EO0FBRXBELG9FQUFvRTtBQUNwRSxpRUFBaUU7QUFHakUsd0NBQXdDO0FBRXhDOztHQUVHO0FBQ0gsTUFBYSxvQkFBb0I7SUFDN0IsWUFDVyxXQUFtQjtRQUFuQixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtJQUU5QixDQUFDO0NBQ0o7QUFMRCxvREFLQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBRXhCLFlBQXNCLG9CQUFvQixLQUFLO1FBQXpCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBUTtJQUMvQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxPQUFvQixFQUFFLE1BQTRCO1FBQzNELElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE1BQU0sSUFBSSxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBRUQsTUFBTSxNQUFNLEdBQUc7WUFDWCxTQUFTLEVBQUUsT0FBTztZQUNsQixNQUFNLEVBQUUsQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUM7WUFDcEIsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQztRQUVGLElBQUEsZ0JBQVMsRUFBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0IsSUFBSSxJQUFJLENBQUM7WUFDVCxJQUFJLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUUvQyxTQUFTLE9BQU8sQ0FBQyxJQUFJO2dCQUNqQixJQUFJLElBQUksRUFBRSxDQUFDO29CQUNQLEtBQUssQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzdCLENBQUM7Z0JBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFFbkIsd0NBQXdDO2dCQUN4QyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDL0MsSUFBSSxRQUFRLEVBQUUsQ0FBQztvQkFDWCxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQztvQkFDL0MsSUFBSSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUM7Z0JBQ3JELENBQUM7Z0JBRUQsU0FBUyxHQUFHLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQy9DLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRTFCLENBQUM7Q0FFSjtBQTVDRCwwQ0E0Q0MifQ==
@@ -3,10 +3,12 @@ import { MapElement, MapElementInput } from './MapElement';
3
3
  import { CompareElement, CompareElementInput } from './CompareElement';
4
4
  import { ConfigurationElement, ConfigurationElementInput } from './ConfigurationElement';
5
5
  import { DateStatusElement, DateStatusElementInput } from './DateStatusElement';
6
+ import { DynamicDateStatusElement, DynamicDateStatusElementInput } from './DynamicDateStatusElement';
6
7
  import { SpeedMatrixElement, SpeedMatrixElementInput } from './SpeedMatrixElement';
7
8
  import { MonitoringBarsElement, MonitoringBarsElementInput } from './MonitoringBarsElement';
8
9
  import { MonitoringLinesElement, MonitoringLinesElementInput } from './MonitoringLinesElement';
9
10
  import { ScaleElement, ScaleElementInput } from './ScaleElement';
11
+ import { EarthMapElement, EarthMapElementInput } from './EarthMapElement';
10
12
  export declare class ElementsFactory {
11
13
  center: MapLatLng | {
12
14
  lat: number;
@@ -31,4 +33,6 @@ export declare class ElementsFactory {
31
33
  createMonitoringBars(element: HTMLCanvasElement, inputs: MonitoringBarsElementInput): MonitoringBarsElement;
32
34
  createMonitoringLines(element: HTMLCanvasElement, inputs: MonitoringLinesElementInput): MonitoringLinesElement;
33
35
  createScale(element: HTMLCanvasElement, inputs: ScaleElementInput): ScaleElement;
36
+ createEarthMap(element: HTMLElement, inputs: EarthMapElementInput): EarthMapElement;
37
+ createDynamicDateStatus(element: HTMLCanvasElement, inputs: DynamicDateStatusElementInput): DynamicDateStatusElement;
34
38
  }