@powercalc/power-router 1.0.39 → 1.0.42

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 (53) hide show
  1. package/README.md +6 -0
  2. package/dist/app.d.ts +1 -1
  3. package/dist/app.js +26 -26
  4. package/dist/config/countrydata.json +265 -265
  5. package/dist/converter.d.ts +8 -8
  6. package/dist/converter.js +56 -59
  7. package/dist/converter.js.map +1 -1
  8. package/dist/genTypes.d.ts +4 -4
  9. package/dist/genTypes.js +53 -53
  10. package/dist/index.d.ts +2 -2
  11. package/dist/index.js +5 -5
  12. package/dist/load.d.ts +7 -7
  13. package/dist/load.js +31 -31
  14. package/dist/router/config/countries.json +194 -0
  15. package/dist/router/config/countrydata.json +266 -0
  16. package/dist/router/config/types.json +333 -0
  17. package/dist/router/controllers/LoadAndParse.d.ts +10 -10
  18. package/dist/router/controllers/LoadAndParse.js +57 -57
  19. package/dist/router/controllers/Router.d.ts +7 -7
  20. package/dist/router/controllers/Router.js +105 -105
  21. package/dist/router/index.d.ts +2 -2
  22. package/dist/router/index.js +5 -5
  23. package/dist/router/interfaces/config.d.ts +5 -5
  24. package/dist/router/interfaces/config.js +2 -2
  25. package/dist/router/interfaces/entsoe.d.ts +50 -50
  26. package/dist/router/interfaces/entsoe.js +2 -2
  27. package/dist/router/interfaces/queryoptions.d.ts +15 -15
  28. package/dist/router/interfaces/queryoptions.js +15 -15
  29. package/dist/router/interfaces/types.d.ts +12 -12
  30. package/dist/router/interfaces/types.js +2 -2
  31. package/dist/router/services/CommonTimestamps.d.ts +15 -15
  32. package/dist/router/services/CommonTimestamps.js +185 -173
  33. package/dist/router/services/CommonTimestamps.js.map +1 -1
  34. package/dist/router/services/Eurostat.d.ts +10 -10
  35. package/dist/router/services/Eurostat.js +72 -72
  36. package/dist/router/services/Eurostat.js.map +1 -1
  37. package/dist/router/services/LoadService.d.ts +27 -27
  38. package/dist/router/services/LoadService.js +82 -82
  39. package/dist/router/services/Loader.d.ts +38 -38
  40. package/dist/router/services/Loader.js +119 -121
  41. package/dist/router/services/Loader.js.map +1 -1
  42. package/dist/router/services/ParseEdifact.d.ts +28 -28
  43. package/dist/router/services/ParseEdifact.js +159 -159
  44. package/dist/router/services/ParseInstalled.d.ts +9 -9
  45. package/dist/router/services/ParseInstalled.js +45 -45
  46. package/dist/router/services/batch/maxHydrofill.d.ts +10 -10
  47. package/dist/router/services/batch/maxHydrofill.js +65 -65
  48. package/package.json +53 -53
  49. package/src/converter.ts +61 -64
  50. package/src/router/config/countrydata.json +265 -265
  51. package/src/router/services/CommonTimestamps.ts +90 -54
  52. package/src/router/services/Eurostat.ts +3 -3
  53. package/src/router/services/Loader.ts +2 -5
@@ -1,174 +1,186 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CommonTimestamps = void 0;
4
- const luxon_1 = require("luxon");
5
- class CommonTimestamps {
6
- static transform(all, startMonth, endMonth) {
7
- const best = this.bestResolution(all);
8
- const time = this.makeTimeArray(startMonth, endMonth, best);
9
- const result = {
10
- time: time
11
- };
12
- Object.keys(all).forEach(key => {
13
- const item = all[key];
14
- const interpolated = this.makeCommonTimeBase(item, time, best);
15
- if (interpolated) {
16
- result[key] = interpolated;
17
- }
18
- });
19
- return result;
20
- }
21
- static makeCommonTimeBase(all, newTimes, best) {
22
- const haveToMerge = this.shouldMerge(all);
23
- if (haveToMerge) {
24
- const all2 = {};
25
- all2[best] = [];
26
- const keys = Object.keys(all);
27
- keys.forEach(key => {
28
- all2[best] = all2[best].concat(all[key]);
29
- });
30
- all2[best] = all2[best].sort((a, b) => a.time - b.time);
31
- return this.interpolate(all2, newTimes);
32
- }
33
- const data = all[best];
34
- if (data) {
35
- return this.makeNumbers(data, newTimes);
36
- }
37
- else {
38
- return this.interpolate(all, newTimes);
39
- }
40
- }
41
- static shouldMerge(all) {
42
- let start = 0;
43
- let end = 0;
44
- const keys = Object.keys(all);
45
- if (keys.length < 2) {
46
- return false;
47
- }
48
- let shouldMerge = true;
49
- keys.forEach(key => {
50
- const times = all[key].map(item => item.time);
51
- if (start && end && start > times[0] && end < times[times.length - 1]) {
52
- shouldMerge = false;
53
- }
54
- start = times[0];
55
- end = times[times.length - 1];
56
- });
57
- return shouldMerge;
58
- }
59
- static interpolate(all, newTimes) {
60
- const best = this.best(all);
61
- const dur = luxon_1.Duration.fromISO(best).as('milliseconds');
62
- const data = all[best];
63
- const sourceTimes = data.map(item => item.time);
64
- /*
65
- console.log('all', new Date(all[best][0].time))
66
- console.log('data', new Date(data[0].time), new Date(data[data.length -1].time))
67
- console.log('newTimes', new Date(newTimes[0]), new Date(newTimes[newTimes.length -1]))
68
- console.log('sourceTimes', new Date(sourceTimes[0]), new Date(sourceTimes[sourceTimes.length -1]))
69
- */
70
- const result = new Array(newTimes.length);
71
- newTimes.forEach((time, i) => {
72
- if (time > data[data.length - 1].time) {
73
- return true; //break
74
- }
75
- const lohi = this.findTime(sourceTimes, time);
76
- const lo = data[lohi[0]];
77
- const hi = data[lohi[1]];
78
- const delta = hi.value - lo.value;
79
- const timeDelta = hi.time - lo.time;
80
- const timeFactor = (time - lo.time) / timeDelta;
81
- if (timeDelta > 3600000 && dur * 1.5 < timeDelta) { // interpolate everything that's smaller than 61 minutes
82
- result[i] = null;
83
- }
84
- else {
85
- result[i] = lo.value + delta * timeFactor;
86
- }
87
- });
88
- return result;
89
- }
90
- static findTime(arr, num) {
91
- let lo = 0;
92
- let hi = arr.length - 1;
93
- if (arr.length === 1) {
94
- return [0, 0];
95
- }
96
- if (arr[lo] > num) {
97
- return [lo, lo + 1];
98
- }
99
- if (arr[hi] < num) {
100
- return [hi - 1, hi];
101
- }
102
- while (hi - lo > 1) {
103
- const mid = Math.trunc((lo + hi) / 2);
104
- if (arr[mid] < num) {
105
- lo = mid;
106
- }
107
- else {
108
- hi = mid;
109
- }
110
- }
111
- return [lo, hi];
112
- }
113
- static makeNumbers(all, newTimes) {
114
- const result = [];
115
- newTimes.forEach(time => {
116
- var _a;
117
- const num = ((_a = all.find(item => item.time === time)) === null || _a === void 0 ? void 0 : _a.value) || null;
118
- result.push(num);
119
- });
120
- return result;
121
- }
122
- static makeTimeArray(startIsoString, endIsoString, resolution) {
123
- const duration = luxon_1.Duration.fromISO(resolution).toMillis();
124
- const localStartTime = luxon_1.DateTime.fromISO(startIsoString);
125
- const localEndTime = luxon_1.DateTime.fromISO(endIsoString);
126
- // Convert start and end time to UTC time using Luxon
127
- const utcStartTime = localStartTime.toUTC();
128
- const utcEndTime = localEndTime.toUTC();
129
- // Calculate time distance in milliseconds
130
- const timeDistance = utcEndTime.toMillis() - utcStartTime.toMillis();
131
- if (timeDistance < duration) {
132
- console.log('timeDistance', timeDistance, duration, startIsoString, endIsoString);
133
- }
134
- // Create an array with time distance duration in UTC time using Luxon
135
- const timeSteps = [];
136
- for (let i = 0; i <= timeDistance; i += duration) {
137
- const dur = utcStartTime.plus({ milliseconds: i });
138
- timeSteps.push(dur.toUnixInteger() * 1000);
139
- }
140
- if (timeSteps.length > 1) {
141
- timeSteps.pop();
142
- }
143
- return timeSteps;
144
- }
145
- static best(all) {
146
- let min = Infinity;
147
- let minPeriod = '';
148
- const keys = Object.keys(all);
149
- keys.forEach(period => {
150
- const dur = luxon_1.Duration.fromISO(period);
151
- if (dur.as('minutes') < min) {
152
- min = dur.as('minutes');
153
- minPeriod = period;
154
- }
155
- });
156
- return minPeriod;
157
- }
158
- static bestResolution(all) {
159
- let min = Infinity;
160
- let minPeriod = '';
161
- Object.keys(all).forEach((key) => {
162
- Object.keys(all[key]).forEach(period => {
163
- const dur = luxon_1.Duration.fromISO(period);
164
- if (dur.as('minutes') < min) {
165
- min = dur.as('minutes');
166
- minPeriod = period;
167
- }
168
- });
169
- });
170
- return minPeriod;
171
- }
172
- }
173
- exports.CommonTimestamps = CommonTimestamps;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CommonTimestamps = void 0;
4
+ const luxon_1 = require("luxon");
5
+ class CommonTimestamps {
6
+ static transform(all, startMonth, endMonth) {
7
+ const best = this.bestResolution(all);
8
+ const time = this.makeTimeArray(startMonth, endMonth, best);
9
+ const result = {
10
+ time: time,
11
+ };
12
+ Object.keys(all).forEach((key) => {
13
+ const item = all[key];
14
+ const interpolated = this.makeCommonTimeBase(item, time, best);
15
+ if (interpolated) {
16
+ result[key] = interpolated;
17
+ }
18
+ if (key === "price") {
19
+ if (item["PT15M"] && item["PT60M"]) {
20
+ result["price15m"] = result['price'];
21
+ delete item['PT15M'];
22
+ const price60 = this.makeCommonTimeBase(item, time, best);
23
+ if (price60) {
24
+ result['price'] = price60;
25
+ }
26
+ }
27
+ }
28
+ });
29
+ // console.log(Object.keys(result))
30
+ return result;
31
+ }
32
+ static makeCommonTimeBase(all, newTimes, best) {
33
+ const haveToMerge = this.shouldMerge(all);
34
+ if (haveToMerge) {
35
+ const all2 = {};
36
+ all2[best] = [];
37
+ const keys = Object.keys(all);
38
+ keys.forEach((key) => {
39
+ all2[best] = all2[best].concat(all[key]);
40
+ });
41
+ all2[best] = all2[best].sort((a, b) => a.time - b.time);
42
+ return this.interpolate(all2, newTimes);
43
+ }
44
+ const data = all[best];
45
+ if (data) {
46
+ return this.makeNumbers(data, newTimes);
47
+ }
48
+ else {
49
+ return this.interpolate(all, newTimes);
50
+ }
51
+ }
52
+ static shouldMerge(all) {
53
+ let start = 0;
54
+ let end = 0;
55
+ const keys = Object.keys(all);
56
+ if (keys.length < 2) {
57
+ return false;
58
+ }
59
+ let shouldMerge = true;
60
+ keys.forEach((key) => {
61
+ const times = all[key].map((item) => item.time);
62
+ if (start && end && start > times[0] && end < times[times.length - 1]) {
63
+ shouldMerge = false;
64
+ }
65
+ start = times[0];
66
+ end = times[times.length - 1];
67
+ });
68
+ return shouldMerge;
69
+ }
70
+ static interpolate(all, newTimes) {
71
+ const best = this.best(all);
72
+ const dur = luxon_1.Duration.fromISO(best).as("milliseconds");
73
+ const data = all[best];
74
+ const sourceTimes = data.map((item) => item.time);
75
+ /*
76
+ console.log('all', new Date(all[best][0].time))
77
+ console.log('data', new Date(data[0].time), new Date(data[data.length -1].time))
78
+ console.log('newTimes', new Date(newTimes[0]), new Date(newTimes[newTimes.length -1]))
79
+ console.log('sourceTimes', new Date(sourceTimes[0]), new Date(sourceTimes[sourceTimes.length -1]))
80
+ */
81
+ const result = new Array(newTimes.length);
82
+ newTimes.forEach((time, i) => {
83
+ if (time > data[data.length - 1].time) {
84
+ return true; //break
85
+ }
86
+ const lohi = this.findTime(sourceTimes, time);
87
+ const lo = data[lohi[0]];
88
+ const hi = data[lohi[1]];
89
+ const delta = hi.value - lo.value;
90
+ const timeDelta = hi.time - lo.time;
91
+ const timeFactor = (time - lo.time) / timeDelta;
92
+ if (timeDelta > 3600000 && dur * 1.5 < timeDelta) {
93
+ // interpolate everything that's smaller than 61 minutes
94
+ result[i] = null;
95
+ }
96
+ else {
97
+ result[i] = lo.value + delta * timeFactor;
98
+ }
99
+ });
100
+ return result;
101
+ }
102
+ static findTime(arr, num) {
103
+ let lo = 0;
104
+ let hi = arr.length - 1;
105
+ if (arr.length === 1) {
106
+ return [0, 0];
107
+ }
108
+ if (arr[lo] > num) {
109
+ return [lo, lo + 1];
110
+ }
111
+ if (arr[hi] < num) {
112
+ return [hi - 1, hi];
113
+ }
114
+ while (hi - lo > 1) {
115
+ const mid = Math.trunc((lo + hi) / 2);
116
+ if (arr[mid] < num) {
117
+ lo = mid;
118
+ }
119
+ else {
120
+ hi = mid;
121
+ }
122
+ }
123
+ return [lo, hi];
124
+ }
125
+ static makeNumbers(all, newTimes) {
126
+ const result = [];
127
+ newTimes.forEach((time) => {
128
+ var _a;
129
+ const num = ((_a = all.find((item) => item.time === time)) === null || _a === void 0 ? void 0 : _a.value) || null;
130
+ result.push(num);
131
+ });
132
+ return result;
133
+ }
134
+ static makeTimeArray(startIsoString, endIsoString, resolution) {
135
+ const duration = luxon_1.Duration.fromISO(resolution).toMillis();
136
+ const localStartTime = luxon_1.DateTime.fromISO(startIsoString);
137
+ const localEndTime = luxon_1.DateTime.fromISO(endIsoString);
138
+ // Convert start and end time to UTC time using Luxon
139
+ const utcStartTime = localStartTime.toUTC();
140
+ const utcEndTime = localEndTime.toUTC();
141
+ // Calculate time distance in milliseconds
142
+ const timeDistance = utcEndTime.toMillis() - utcStartTime.toMillis();
143
+ if (timeDistance < duration) {
144
+ console.log("timeDistance", timeDistance, duration, startIsoString, endIsoString);
145
+ }
146
+ // Create an array with time distance duration in UTC time using Luxon
147
+ const timeSteps = [];
148
+ for (let i = 0; i <= timeDistance; i += duration) {
149
+ const dur = utcStartTime.plus({ milliseconds: i });
150
+ timeSteps.push(dur.toUnixInteger() * 1000);
151
+ }
152
+ if (timeSteps.length > 1) {
153
+ timeSteps.pop();
154
+ }
155
+ return timeSteps;
156
+ }
157
+ static best(all) {
158
+ let min = Infinity;
159
+ let minPeriod = "";
160
+ const keys = Object.keys(all);
161
+ keys.forEach((period) => {
162
+ const dur = luxon_1.Duration.fromISO(period);
163
+ if (dur.as("minutes") < min) {
164
+ min = dur.as("minutes");
165
+ minPeriod = period;
166
+ }
167
+ });
168
+ return minPeriod;
169
+ }
170
+ static bestResolution(all) {
171
+ let min = Infinity;
172
+ let minPeriod = "";
173
+ Object.keys(all).forEach((key) => {
174
+ Object.keys(all[key]).forEach((period) => {
175
+ const dur = luxon_1.Duration.fromISO(period);
176
+ if (dur.as("minutes") < min) {
177
+ min = dur.as("minutes");
178
+ minPeriod = period;
179
+ }
180
+ });
181
+ });
182
+ return minPeriod;
183
+ }
184
+ }
185
+ exports.CommonTimestamps = CommonTimestamps;
174
186
  //# sourceMappingURL=CommonTimestamps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommonTimestamps.js","sourceRoot":"","sources":["../../../src/router/services/CommonTimestamps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommonTimestamps.js","sourceRoot":"","sources":["../../../src/router/services/CommonTimestamps.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
- import { Country } from "./Loader";
2
- export declare class EurostatAPI {
3
- countries: Country[];
4
- constructor();
5
- private fuels;
6
- private energyConversionFactors;
7
- convertToMWh(value: number, unit: string): number;
8
- private fetchData;
9
- load(countryCode: string): Promise<any>;
10
- }
1
+ import { Country } from "./Loader";
2
+ export declare class EurostatAPI {
3
+ countries: Country[];
4
+ constructor();
5
+ private fuels;
6
+ private energyConversionFactors;
7
+ convertToMWh(value: number, unit: string): number;
8
+ private fetchData;
9
+ load(countryCode: string): Promise<any>;
10
+ }
@@ -1,73 +1,73 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EurostatAPI = void 0;
4
- const fs_1 = require("fs");
5
- const path_1 = require("path");
6
- process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = '0';
7
- class EurostatAPI {
8
- constructor() {
9
- this.countries = [];
10
- this.fuels = {
11
- gas: { chartType: 'NRG_CB_GASM', siec: 'G3000', nrg_bal: 'IC_OBS', unit: 'TJ_GCV', freq: 'M' },
12
- gas4electricity: { chartType: 'NRG_CB_GASM', siec: 'G3000', nrg_bal: 'TI_EHG_MAP', unit: 'TJ_GCV', freq: 'M' },
13
- gasoline: { chartType: 'NRG_CB_OILM', siec: 'O4652', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' },
14
- diesel: { chartType: 'NRG_CB_OILM', siec: 'O46711', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' },
15
- kerosin: { chartType: 'NRG_CB_OILM', siec: 'O4661', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' }
16
- };
17
- this.energyConversionFactors = new Map([
18
- ['KG_EQ', 12988.48],
19
- ['TJ_GCV', 10 ** 12],
20
- ['THS_T', 41868000000000], // joules per thousand metric tons of oil equivalent
21
- ]);
22
- const countryPath = (0, path_1.join)(__dirname, '..', 'config/countries.json');
23
- const countriesString = (0, fs_1.readFileSync)(countryPath, 'utf-8');
24
- this.countries = JSON.parse(countriesString);
25
- }
26
- convertToMWh(value, unit) {
27
- const MWh = value * (this.energyConversionFactors.get(unit) || 0) / 3600 / 10 ** 6;
28
- return Math.round(MWh);
29
- }
30
- async fetchData(url, type, unit) {
31
- const response = await fetch(url);
32
- const data = await response.json();
33
- console.log(data, type, unit);
34
- try {
35
- const time = Object.keys(data.dimension.time.category.index);
36
- return {
37
- time: time.map(item => new Date(item).getTime()),
38
- [type]: Object.values(data.value).map((item) => this.convertToMWh(item, unit))
39
- };
40
- }
41
- catch (e) {
42
- return {
43
- [type]: [],
44
- time: []
45
- };
46
- }
47
- }
48
- async load(countryCode) {
49
- var _a;
50
- const countryShort = (_a = this.countries.find(item => item.code === countryCode)) === null || _a === void 0 ? void 0 : _a.short;
51
- const baseUrl = 'https://ec.europa.eu/eurostat/api/dissemination/sdmx/2.1/data/';
52
- const geo = `.${countryShort}`;
53
- const promises = [];
54
- for (const [type, fuel] of Object.entries(this.fuels)) {
55
- const { chartType, siec, nrg_bal, unit, freq } = fuel;
56
- const select = `${chartType}/${freq}.${nrg_bal}.${siec}.${unit}`;
57
- const rest = `?format=JSON&lang=en&startPeriod=2015-01&endPeriod=2050-12`;
58
- const url = `${baseUrl}${select}${geo}${rest}`;
59
- console.log(url);
60
- promises.push(this.fetchData(url, type, unit));
61
- }
62
- const res = await Promise.all(promises);
63
- console.log('---res---', res);
64
- let merged = {};
65
- res.forEach(item => {
66
- merged = { ...merged, ...item };
67
- });
68
- console.log('---merged----', merged);
69
- return merged; // this.removeElGas(merged);
70
- }
71
- }
72
- exports.EurostatAPI = EurostatAPI;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EurostatAPI = void 0;
4
+ const fs_1 = require("fs");
5
+ const path_1 = require("path");
6
+ process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = '0';
7
+ class EurostatAPI {
8
+ constructor() {
9
+ this.countries = [];
10
+ this.fuels = {
11
+ gas: { chartType: 'NRG_CB_GASM', siec: 'G3000', nrg_bal: 'IC_OBS', unit: 'TJ_GCV', freq: 'M' },
12
+ gas4electricity: { chartType: 'NRG_CB_GASM', siec: 'G3000', nrg_bal: 'TI_EHG_MAP', unit: 'TJ_GCV', freq: 'M' },
13
+ gasoline: { chartType: 'NRG_CB_OILM', siec: 'O4652', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' },
14
+ diesel: { chartType: 'NRG_CB_OILM', siec: 'O46711', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' },
15
+ kerosin: { chartType: 'NRG_CB_OILM', siec: 'O4661', nrg_bal: 'GID_OBS', unit: 'THS_T', freq: 'M' }
16
+ };
17
+ this.energyConversionFactors = new Map([
18
+ ['KG_EQ', 12988.48],
19
+ ['TJ_GCV', 10 ** 12],
20
+ ['THS_T', 41868000000000], // joules per thousand metric tons of oil equivalent
21
+ ]);
22
+ const countryPath = (0, path_1.join)(__dirname, '..', 'config/countries.json');
23
+ const countriesString = (0, fs_1.readFileSync)(countryPath, 'utf-8');
24
+ this.countries = JSON.parse(countriesString);
25
+ }
26
+ convertToMWh(value, unit) {
27
+ const MWh = value * (this.energyConversionFactors.get(unit) || 0) / 3600 / 10 ** 6;
28
+ return Math.round(MWh);
29
+ }
30
+ async fetchData(url, type, unit) {
31
+ const response = await fetch(url);
32
+ const data = await response.json();
33
+ console.log(data, type, unit);
34
+ try {
35
+ const time = Object.keys(data.dimension.time.category.index);
36
+ return {
37
+ time: time.map(item => new Date(item).getTime()),
38
+ [type]: Object.values(data.value).map((item) => this.convertToMWh(item, unit))
39
+ };
40
+ }
41
+ catch (e) {
42
+ return {
43
+ [type]: [],
44
+ time: []
45
+ };
46
+ }
47
+ }
48
+ async load(countryCode) {
49
+ var _a;
50
+ const countryShort = (_a = this.countries.find(item => item.code === countryCode)) === null || _a === void 0 ? void 0 : _a.short;
51
+ const baseUrl = 'https://ec.europa.eu/eurostat/api/dissemination/sdmx/2.1/data/';
52
+ const geo = `.${countryShort}`;
53
+ const promises = [];
54
+ for (const [type, fuel] of Object.entries(this.fuels)) {
55
+ const { chartType, siec, nrg_bal, unit, freq } = fuel;
56
+ const select = `${chartType}/${freq}.${nrg_bal}.${siec}.${unit}`;
57
+ const rest = `?format=JSON&lang=en&startPeriod=2015-01&endPeriod=2050-12`;
58
+ const url = `${baseUrl}${select}${geo}${rest}`;
59
+ // console.log(url)
60
+ promises.push(this.fetchData(url, type, unit));
61
+ }
62
+ const res = await Promise.all(promises);
63
+ // console.log('---res---', res)
64
+ let merged = {};
65
+ res.forEach(item => {
66
+ merged = { ...merged, ...item };
67
+ });
68
+ // console.log('---merged----', merged)
69
+ return merged; // this.removeElGas(merged);
70
+ }
71
+ }
72
+ exports.EurostatAPI = EurostatAPI;
73
73
  //# sourceMappingURL=Eurostat.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Eurostat.js","sourceRoot":"","sources":["../../../src/router/services/Eurostat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Eurostat.js","sourceRoot":"","sources":["../../../src/router/services/Eurostat.ts"],"names":[],"mappings":"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"}