@powercalc/power-router 1.0.44 → 1.0.45

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 (83) hide show
  1. package/dist/autoloader/index.d.ts +6 -0
  2. package/dist/autoloader/index.js +30 -0
  3. package/dist/autoloader/index.js.map +1 -0
  4. package/dist/{router/controllers → controllers}/LoadAndParse.js +10 -14
  5. package/dist/controllers/LoadAndParse.js.map +1 -0
  6. package/dist/{router/controllers → controllers}/Router.js +20 -23
  7. package/dist/controllers/Router.js.map +1 -0
  8. package/dist/index.d.ts +2 -2
  9. package/dist/index.js +1 -5
  10. package/dist/index.js.map +1 -1
  11. package/dist/interfaces/config.js +2 -0
  12. package/dist/{router/interfaces → interfaces}/config.js.map +1 -1
  13. package/dist/interfaces/entsoe.js +2 -0
  14. package/dist/{router/interfaces → interfaces}/entsoe.js.map +1 -1
  15. package/dist/interfaces/queryoptions.js +13 -0
  16. package/dist/interfaces/queryoptions.js.map +1 -0
  17. package/dist/interfaces/types.js +2 -0
  18. package/dist/{router/interfaces → interfaces}/types.js.map +1 -1
  19. package/dist/router/config/types.json +2 -2
  20. package/dist/{router/services → services}/CommonTimestamps.js +8 -21
  21. package/dist/services/CommonTimestamps.js.map +1 -0
  22. package/dist/{router/services → services}/Eurostat.js +5 -13
  23. package/dist/services/Eurostat.js.map +1 -0
  24. package/dist/{router/services → services}/LoadService.js +19 -23
  25. package/dist/services/LoadService.js.map +1 -0
  26. package/dist/{router/services → services}/Loader.js +16 -20
  27. package/dist/services/Loader.js.map +1 -0
  28. package/dist/{router/services → services}/ParseEdifact.js +5 -10
  29. package/dist/services/ParseEdifact.js.map +1 -0
  30. package/dist/{router/services → services}/ParseInstalled.js +1 -5
  31. package/dist/services/ParseInstalled.js.map +1 -0
  32. package/dist/{router/services → services}/batch/maxHydrofill.js +9 -13
  33. package/dist/services/batch/maxHydrofill.js.map +1 -0
  34. package/package.json +3 -1
  35. package/src/app.ts +24 -16
  36. package/src/router/autoloader/index.ts +31 -0
  37. package/src/router/controllers/Router.ts +2 -2
  38. package/src/router/services/Loader.ts +1 -1
  39. package/dist/app.d.ts +0 -1
  40. package/dist/app.js +0 -27
  41. package/dist/app.js.map +0 -1
  42. package/dist/converter.d.ts +0 -8
  43. package/dist/converter.js +0 -57
  44. package/dist/converter.js.map +0 -1
  45. package/dist/genTypes.d.ts +0 -4
  46. package/dist/genTypes.js +0 -54
  47. package/dist/genTypes.js.map +0 -1
  48. package/dist/load.d.ts +0 -7
  49. package/dist/load.js +0 -32
  50. package/dist/load.js.map +0 -1
  51. package/dist/router/controllers/LoadAndParse.js.map +0 -1
  52. package/dist/router/controllers/Router.js.map +0 -1
  53. package/dist/router/index.d.ts +0 -2
  54. package/dist/router/index.js +0 -6
  55. package/dist/router/index.js.map +0 -1
  56. package/dist/router/interfaces/config.js +0 -3
  57. package/dist/router/interfaces/entsoe.js +0 -3
  58. package/dist/router/interfaces/queryoptions.js +0 -16
  59. package/dist/router/interfaces/queryoptions.js.map +0 -1
  60. package/dist/router/interfaces/types.js +0 -3
  61. package/dist/router/services/CommonTimestamps.js.map +0 -1
  62. package/dist/router/services/Eurostat.js.map +0 -1
  63. package/dist/router/services/LoadService.js.map +0 -1
  64. package/dist/router/services/Loader.js.map +0 -1
  65. package/dist/router/services/ParseEdifact.js.map +0 -1
  66. package/dist/router/services/ParseInstalled.js.map +0 -1
  67. package/dist/router/services/batch/maxHydrofill.js.map +0 -1
  68. /package/dist/{router/controllers → controllers}/LoadAndParse.d.ts +0 -0
  69. /package/dist/{router/controllers → controllers}/Router.d.ts +0 -0
  70. /package/dist/{router/interfaces → interfaces}/config.d.ts +0 -0
  71. /package/dist/{router/interfaces → interfaces}/entsoe.d.ts +0 -0
  72. /package/dist/{router/interfaces → interfaces}/queryoptions.d.ts +0 -0
  73. /package/dist/{router/interfaces → interfaces}/types.d.ts +0 -0
  74. /package/dist/{config → router}/countries.json +0 -0
  75. /package/dist/{config → router}/countrydata.json +0 -0
  76. /package/dist/{config → router}/types.json +0 -0
  77. /package/dist/{router/services → services}/CommonTimestamps.d.ts +0 -0
  78. /package/dist/{router/services → services}/Eurostat.d.ts +0 -0
  79. /package/dist/{router/services → services}/LoadService.d.ts +0 -0
  80. /package/dist/{router/services → services}/Loader.d.ts +0 -0
  81. /package/dist/{router/services → services}/ParseEdifact.d.ts +0 -0
  82. /package/dist/{router/services → services}/ParseInstalled.d.ts +0 -0
  83. /package/dist/{router/services → services}/batch/maxHydrofill.d.ts +0 -0
@@ -0,0 +1,6 @@
1
+ export declare class Autoload {
2
+ baseUrl: string;
3
+ init(): void;
4
+ iterateCountries(): Promise<void>;
5
+ loadContry(country: string): Promise<void>;
6
+ }
@@ -0,0 +1,30 @@
1
+ export class Autoload {
2
+ constructor() {
3
+ this.baseUrl = "http://3.71.38.118/";
4
+ }
5
+ init() {
6
+ this.iterateCountries();
7
+ }
8
+ async iterateCountries() {
9
+ const response = await fetch(`${this.baseUrl}/entsoe/coutries`);
10
+ const json = await response.json();
11
+ const countryList = json.map((item) => item.name);
12
+ for (let c = 0; c < countryList.length; c++) {
13
+ await this.loadContry(countryList[c]);
14
+ }
15
+ }
16
+ async loadContry(country) {
17
+ const minYear = 2015;
18
+ const maxYear = 2023;
19
+ for (let year = minYear; year <= maxYear; year++) {
20
+ for (let month = 1; month <= 12; month++) {
21
+ const url = `${this.baseUrl}/entsoe/${country}/${year}/${month}`;
22
+ console.log(url);
23
+ const response = await fetch(url);
24
+ const json = await response.json();
25
+ console.log(json);
26
+ }
27
+ }
28
+ }
29
+ }
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/router/autoloader/index.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,QAAQ;IAArB;QACE,YAAO,GAAG,qBAAqB,CAAC;IA2BlC,CAAC;IA1BC,IAAI;QACF,IAAI,CAAC,gBAAgB,EAAE,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,gBAAgB;QACZ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,kBAAkB,CAAC,CAAC;QAChE,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAe,CAAC;QAChD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,KAAI,IAAI,CAAC,GAAC,CAAC,EAAC,CAAC,GAAC,WAAW,CAAC,MAAM,EAAC,CAAC,EAAE,EAAC;YACjC,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;SACxC;IAEX,CAAC;IACD,KAAK,CAAC,UAAU,CAAC,OAAc;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC;QACrB,KAAK,IAAI,IAAI,GAAG,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE;YAChD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE;gBACxC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,WAAW,OAAO,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;gBACjE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACnC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACnB;SACF;IACH,CAAC;CACF"}
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LoadAndParse = void 0;
4
- const path_1 = require("path");
5
- const fs_1 = require("fs");
6
- const LoadService_1 = require("../services/LoadService");
7
- const queryoptions_1 = require("../interfaces/queryoptions");
8
- class LoadAndParse {
1
+ import { join } from 'path';
2
+ import { readFileSync } from 'fs';
3
+ import { LoadService } from '../services/LoadService';
4
+ import { Format, PosNeg } from '../interfaces/queryoptions';
5
+ export class LoadAndParse {
9
6
  constructor(config) {
10
7
  this.country = '';
11
- const countriesFile = (0, path_1.join)(__dirname, '../config/countries.json'); // Set the path to your config file
12
- this.countries = JSON.parse((0, fs_1.readFileSync)(countriesFile, 'utf8')); // Read the config file from disk
13
- this.loadService = new LoadService_1.LoadService(config);
8
+ const countriesFile = join(__dirname, '../config/countries.json'); // Set the path to your config file
9
+ this.countries = JSON.parse(readFileSync(countriesFile, 'utf8')); // Read the config file from disk
10
+ this.loadService = new LoadService(config);
14
11
  }
15
12
  async get(req, chartType) {
16
13
  var _a;
@@ -22,10 +19,10 @@ class LoadAndParse {
22
19
  const queryOptions = {};
23
20
  const year = parseInt(req.params.year);
24
21
  const month = parseInt(req.params.month);
25
- if (req.query.posneg === queryoptions_1.PosNeg.POS || req.query.posneg === queryoptions_1.PosNeg.NEG) {
22
+ if (req.query.posneg === PosNeg.POS || req.query.posneg === PosNeg.NEG) {
26
23
  queryOptions.posneg = req.query.posneg;
27
24
  }
28
- if (typeof (req.query.format) === 'string' && Object.values(queryoptions_1.Format).includes(req.query.format)) {
25
+ if (typeof (req.query.format) === 'string' && Object.values(Format).includes(req.query.format)) {
29
26
  queryOptions.format = req.query.format;
30
27
  }
31
28
  let reload = false;
@@ -54,5 +51,4 @@ class LoadAndParse {
54
51
  }
55
52
  }
56
53
  }
57
- exports.LoadAndParse = LoadAndParse;
58
54
  //# sourceMappingURL=LoadAndParse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadAndParse.js","sourceRoot":"","sources":["../../src/router/controllers/LoadAndParse.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PowerRouter = void 0;
4
- const express_1 = require("express");
5
- const crypto_1 = require("crypto");
6
- const promises_1 = require("fs/promises");
7
- const zlib_1 = require("zlib");
8
- const node_buffer_1 = require("node:buffer");
9
- const fs_1 = require("fs");
10
- const LoadAndParse_1 = require("./LoadAndParse");
11
- const path_1 = require("path");
12
- class PowerRouter {
1
+ import { Router } from 'express';
2
+ import { createHash } from 'crypto';
3
+ import { stat, writeFile } from 'fs/promises';
4
+ import { gzipSync } from 'zlib';
5
+ import { Buffer } from 'node:buffer';
6
+ import { createReadStream } from 'fs';
7
+ import { LoadAndParse } from './LoadAndParse';
8
+ import { join } from 'path';
9
+ export class PowerRouter {
13
10
  static init(config) {
14
11
  console.log('init', config);
15
- const router = (0, express_1.Router)();
12
+ const router = Router();
16
13
  router.get(`/:country/:year/:month`, async (req, res) => {
17
14
  await this.load(config, req, res, 'power');
18
15
  });
@@ -29,19 +26,19 @@ class PowerRouter {
29
26
  await this.load(config, req, res, 'countrydata');
30
27
  });
31
28
  router.get('/types', async (req, res) => {
32
- const filePath = (0, path_1.join)(__dirname, '..', 'config', 'types.json');
29
+ const filePath = join(__dirname, '..', 'config', 'types.json');
33
30
  res.set({ 'Cache-Control': 'max-age=86400' });
34
31
  res.sendFile(filePath);
35
32
  });
36
33
  router.get('/countries', async (req, res) => {
37
- const filePath = (0, path_1.join)(__dirname, '..', 'config', 'countrydata.json');
34
+ const filePath = join(__dirname, '..', 'config', 'countrydata.json');
38
35
  res.set({ 'Cache-Control': 'max-age=86400' });
39
36
  res.sendFile(filePath);
40
37
  });
41
38
  return router;
42
39
  }
43
40
  static async load(config, req, res, type) {
44
- const entsoeLoader = new LoadAndParse_1.LoadAndParse(config);
41
+ const entsoeLoader = new LoadAndParse(config);
45
42
  const cacheTime = this.calcCacheTime(req);
46
43
  const successHeaders = {
47
44
  'Cache-Control': `public, max-age=${cacheTime}`,
@@ -51,11 +48,11 @@ class PowerRouter {
51
48
  try {
52
49
  let cacheData;
53
50
  const cacheKey = req.url;
54
- const cacheFilePath = `${config.cacheDir}/${(0, crypto_1.createHash)('md5').update(cacheKey).digest('hex')}.json.gz`;
51
+ const cacheFilePath = `${config.cacheDir}/json.gz/${createHash('md5').update(cacheKey).digest('hex')}.json.gz`;
55
52
  if (!(req.headers['reload'] === 'full')) {
56
53
  // check if there is a cache file for this request
57
54
  try {
58
- const stats = await (0, promises_1.stat)(cacheFilePath);
55
+ const stats = await stat(cacheFilePath);
59
56
  const modtime = stats.mtime.getTime();
60
57
  // Check if the If-Modified-Since header matches the last modified date
61
58
  const ifModifiedSince = req.headers['if-modified-since'];
@@ -66,7 +63,7 @@ class PowerRouter {
66
63
  res.setHeader('Last-Modified', (new Date(modtime)).toUTCString());
67
64
  res.set(successHeaders);
68
65
  console.log('cached');
69
- (0, fs_1.createReadStream)(cacheFilePath)
66
+ createReadStream(cacheFilePath)
70
67
  .pipe(res);
71
68
  return;
72
69
  }
@@ -78,9 +75,10 @@ class PowerRouter {
78
75
  if (!cacheData) {
79
76
  // LOAD THE DATA FROM SOURCE
80
77
  const body = await entsoeLoader.get(req, type);
81
- const buf = node_buffer_1.Buffer.from(JSON.stringify(body), 'utf-8');
82
- const cacheDataBuffer = (0, zlib_1.gzipSync)(buf);
83
- await (0, promises_1.writeFile)(cacheFilePath, cacheDataBuffer, 'utf-8');
78
+ const buf = Buffer.from(JSON.stringify(body), 'utf-8');
79
+ const cacheDataBuffer = gzipSync(buf);
80
+ //await mkdir(basename(cacheFilePath), {recursive:true});
81
+ await writeFile(cacheFilePath, cacheDataBuffer, 'utf-8');
84
82
  res.setHeader('Last-Modified', (new Date()).toUTCString());
85
83
  res.set(successHeaders);
86
84
  res.send(cacheDataBuffer);
@@ -102,5 +100,4 @@ class PowerRouter {
102
100
  }
103
101
  }
104
102
  }
105
- exports.PowerRouter = PowerRouter;
106
103
  //# sourceMappingURL=Router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Router.js","sourceRoot":"","sources":["../../src/router/controllers/Router.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { Config } from './router/interfaces/config';
2
- export { PowerRouter } from './router/controllers/Router';
1
+ export { PowerRouter } from './controllers/Router';
2
+ export { Config } from './interfaces/config';
package/dist/index.js CHANGED
@@ -1,6 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PowerRouter = void 0;
4
- var Router_1 = require("./router/controllers/Router");
5
- Object.defineProperty(exports, "PowerRouter", { enumerable: true, get: function () { return Router_1.PowerRouter; } });
1
+ export { PowerRouter } from './controllers/Router';
6
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AACA,sDAA0D;AAAjD,qGAAA,WAAW,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/router/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/router/interfaces/config.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/router/interfaces/config.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=entsoe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entsoe.js","sourceRoot":"","sources":["../../../src/router/interfaces/entsoe.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"entsoe.js","sourceRoot":"","sources":["../../src/router/interfaces/entsoe.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ export var Format;
2
+ (function (Format) {
3
+ Format["EDIFACT"] = "edifact";
4
+ Format["EDIJSON"] = "edijson";
5
+ Format["SOURCES"] = "sources";
6
+ Format["KEYVALUE"] = "keyvalue";
7
+ })(Format || (Format = {}));
8
+ export var PosNeg;
9
+ (function (PosNeg) {
10
+ PosNeg["POS"] = "pos";
11
+ PosNeg["NEG"] = "neg";
12
+ })(PosNeg || (PosNeg = {}));
13
+ //# sourceMappingURL=queryoptions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryoptions.js","sourceRoot":"","sources":["../../src/router/interfaces/queryoptions.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,MAKX;AALD,WAAY,MAAM;IACd,6BAAmB,CAAA;IACnB,6BAAmB,CAAA;IACnB,6BAAmB,CAAA;IACnB,+BAAqB,CAAA;AACzB,CAAC,EALW,MAAM,KAAN,MAAM,QAKjB;AACD,MAAM,CAAN,IAAY,MAGX;AAHD,WAAY,MAAM;IACd,qBAAW,CAAA;IACX,qBAAW,CAAA;AACf,CAAC,EAHW,MAAM,KAAN,MAAM,QAGjB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/router/interfaces/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/router/interfaces/types.ts"],"names":[],"mappings":""}
@@ -204,7 +204,7 @@
204
204
  "hydroPumpedStorage": {
205
205
  "name": "Hydro Pumped Storage",
206
206
  "psrType": "B10",
207
- "co2Footprint": 1,
207
+ "co2Footprint": null,
208
208
  "color": "blue",
209
209
  "abbr": "HP",
210
210
  "type": "dispatchablegreen"
@@ -269,7 +269,7 @@
269
269
  "hydroFill": {
270
270
  "name": "Hydro Fill",
271
271
  "psrType": "H99",
272
- "co2Footprint": 0,
272
+ "co2Footprint": null,
273
273
  "color": "darkblue",
274
274
  "abbr": "HF",
275
275
  "type": "storage",
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CommonTimestamps = void 0;
4
- const luxon_1 = require("luxon");
5
- class CommonTimestamps {
1
+ import { DateTime, Duration } from "luxon";
2
+ export class CommonTimestamps {
6
3
  static transform(all, startMonth, endMonth) {
7
4
  const best = this.bestResolution(all);
8
5
  const time = this.makeTimeArray(startMonth, endMonth, best);
@@ -69,15 +66,9 @@ class CommonTimestamps {
69
66
  }
70
67
  static interpolate(all, newTimes) {
71
68
  const best = this.best(all);
72
- const dur = luxon_1.Duration.fromISO(best).as("milliseconds");
69
+ const dur = Duration.fromISO(best).as("milliseconds");
73
70
  const data = all[best];
74
71
  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
72
  const result = new Array(newTimes.length);
82
73
  newTimes.forEach((time, i) => {
83
74
  if (time > data[data.length - 1].time) {
@@ -132,17 +123,14 @@ class CommonTimestamps {
132
123
  return result;
133
124
  }
134
125
  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);
126
+ const duration = Duration.fromISO(resolution).toMillis();
127
+ const localStartTime = DateTime.fromISO(startIsoString);
128
+ const localEndTime = DateTime.fromISO(endIsoString);
138
129
  // Convert start and end time to UTC time using Luxon
139
130
  const utcStartTime = localStartTime.toUTC();
140
131
  const utcEndTime = localEndTime.toUTC();
141
132
  // Calculate time distance in milliseconds
142
133
  const timeDistance = utcEndTime.toMillis() - utcStartTime.toMillis();
143
- if (timeDistance < duration) {
144
- console.log("timeDistance", timeDistance, duration, startIsoString, endIsoString);
145
- }
146
134
  // Create an array with time distance duration in UTC time using Luxon
147
135
  const timeSteps = [];
148
136
  for (let i = 0; i <= timeDistance; i += duration) {
@@ -159,7 +147,7 @@ class CommonTimestamps {
159
147
  let minPeriod = "";
160
148
  const keys = Object.keys(all);
161
149
  keys.forEach((period) => {
162
- const dur = luxon_1.Duration.fromISO(period);
150
+ const dur = Duration.fromISO(period);
163
151
  if (dur.as("minutes") < min) {
164
152
  min = dur.as("minutes");
165
153
  minPeriod = period;
@@ -172,7 +160,7 @@ class CommonTimestamps {
172
160
  let minPeriod = "";
173
161
  Object.keys(all).forEach((key) => {
174
162
  Object.keys(all[key]).forEach((period) => {
175
- const dur = luxon_1.Duration.fromISO(period);
163
+ const dur = Duration.fromISO(period);
176
164
  if (dur.as("minutes") < min) {
177
165
  min = dur.as("minutes");
178
166
  minPeriod = period;
@@ -182,5 +170,4 @@ class CommonTimestamps {
182
170
  return minPeriod;
183
171
  }
184
172
  }
185
- exports.CommonTimestamps = CommonTimestamps;
186
173
  //# sourceMappingURL=CommonTimestamps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CommonTimestamps.js","sourceRoot":"","sources":["../../src/router/services/CommonTimestamps.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,7 @@
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");
1
+ import { readFileSync } from "fs";
2
+ import { join } from "path";
6
3
  process.env["NODE_TLS_REJECT_UNAUTHORIZED"] = '0';
7
- class EurostatAPI {
4
+ export class EurostatAPI {
8
5
  constructor() {
9
6
  this.countries = [];
10
7
  this.fuels = {
@@ -19,8 +16,8 @@ class EurostatAPI {
19
16
  ['TJ_GCV', 10 ** 12],
20
17
  ['THS_T', 41868000000000], // joules per thousand metric tons of oil equivalent
21
18
  ]);
22
- const countryPath = (0, path_1.join)(__dirname, '..', 'config/countries.json');
23
- const countriesString = (0, fs_1.readFileSync)(countryPath, 'utf-8');
19
+ const countryPath = join(__dirname, '..', 'config/countries.json');
20
+ const countriesString = readFileSync(countryPath, 'utf-8');
24
21
  this.countries = JSON.parse(countriesString);
25
22
  }
26
23
  convertToMWh(value, unit) {
@@ -30,7 +27,6 @@ class EurostatAPI {
30
27
  async fetchData(url, type, unit) {
31
28
  const response = await fetch(url);
32
29
  const data = await response.json();
33
- console.log(data, type, unit);
34
30
  try {
35
31
  const time = Object.keys(data.dimension.time.category.index);
36
32
  return {
@@ -56,18 +52,14 @@ class EurostatAPI {
56
52
  const select = `${chartType}/${freq}.${nrg_bal}.${siec}.${unit}`;
57
53
  const rest = `?format=JSON&lang=en&startPeriod=2015-01&endPeriod=2050-12`;
58
54
  const url = `${baseUrl}${select}${geo}${rest}`;
59
- // console.log(url)
60
55
  promises.push(this.fetchData(url, type, unit));
61
56
  }
62
57
  const res = await Promise.all(promises);
63
- // console.log('---res---', res)
64
58
  let merged = {};
65
59
  res.forEach(item => {
66
60
  merged = { ...merged, ...item };
67
61
  });
68
- // console.log('---merged----', merged)
69
62
  return merged; // this.removeElGas(merged);
70
63
  }
71
64
  }
72
- exports.EurostatAPI = EurostatAPI;
73
65
  //# sourceMappingURL=Eurostat.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Eurostat.js","sourceRoot":"","sources":["../../src/router/services/Eurostat.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,37 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LoadService = void 0;
4
- const fs_1 = require("fs");
5
- const path_1 = require("path");
6
- const Loader_1 = require("./Loader");
7
- const ParseEdifact_1 = require("./ParseEdifact");
8
- const ParseInstalled_1 = require("./ParseInstalled");
9
- const CommonTimestamps_1 = require("./CommonTimestamps");
10
- const Eurostat_1 = require("./Eurostat");
11
- const queryoptions_1 = require("../interfaces/queryoptions");
12
- class LoadService {
1
+ import { readFileSync } from "fs";
2
+ import { join } from "path";
3
+ import { EntsoeLoader } from "./Loader";
4
+ import { EdifactParser } from "./ParseEdifact";
5
+ import { ParseInstalled } from "./ParseInstalled";
6
+ import { CommonTimestamps } from "./CommonTimestamps";
7
+ import { EurostatAPI } from "./Eurostat";
8
+ import { Format } from "../interfaces/queryoptions";
9
+ export class LoadService {
13
10
  constructor(loaderConfig) {
14
11
  this.loaderConfig = loaderConfig;
15
12
  this.country = '';
16
- const typesPath = (0, path_1.join)(__dirname, '../config/types.json'); // Set the path to your config file
17
- const types = JSON.parse((0, fs_1.readFileSync)(typesPath, 'utf8')); // Read the config file from disk
18
- this.loader = new Loader_1.EntsoeLoader(loaderConfig);
19
- this.parser = new ParseEdifact_1.EdifactParser(types);
20
- this.parseInstalled = new ParseInstalled_1.ParseInstalled(types);
13
+ const typesPath = join(__dirname, '../config/types.json'); // Set the path to your config file
14
+ const types = JSON.parse(readFileSync(typesPath, 'utf8')); // Read the config file from disk
15
+ this.loader = new EntsoeLoader(loaderConfig);
16
+ this.parser = new EdifactParser(types);
17
+ this.parseInstalled = new ParseInstalled(types);
21
18
  }
22
19
  async getPower(countryCode, year, month, queryOptions) {
23
20
  const wanted = ['generation', 'price', 'consumption'];
24
- if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === queryoptions_1.Format.SOURCES) {
21
+ if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === Format.SOURCES) {
25
22
  return this.loader.makeUrls(wanted, countryCode, year, month);
26
23
  }
27
24
  const edifactAsJson = await this.loader.load(wanted, countryCode, year, month, queryOptions);
28
- if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === queryoptions_1.Format.EDIJSON) {
25
+ if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === Format.EDIJSON) {
29
26
  return edifactAsJson;
30
27
  }
31
28
  const parsed = await this.parser.parseAll(edifactAsJson);
32
- if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === queryoptions_1.Format.KEYVALUE) {
29
+ if ((queryOptions === null || queryOptions === void 0 ? void 0 : queryOptions.format) === Format.KEYVALUE) {
33
30
  return parsed;
34
31
  }
35
32
  const startMonth = (new Date(Date.UTC(year, month - 1))).toISOString();
36
33
  const endMonth = (new Date(Date.UTC(year, month))).toISOString();
37
- const ready = CommonTimestamps_1.CommonTimestamps.transform(parsed, startMonth, endMonth);
34
+ const ready = CommonTimestamps.transform(parsed, startMonth, endMonth);
38
35
  return ready;
39
36
  }
40
37
  async getInstalled(countryCode, reload) {
@@ -67,7 +64,7 @@ class LoadService {
67
64
  };
68
65
  }
69
66
  async getFossil(country) {
70
- const eurostat = new Eurostat_1.EurostatAPI();
67
+ const eurostat = new EurostatAPI();
71
68
  return await eurostat.load(country);
72
69
  }
73
70
  async getCountrydata(country, reload) {
@@ -79,5 +76,4 @@ class LoadService {
79
76
  };
80
77
  }
81
78
  }
82
- exports.LoadService = LoadService;
83
79
  //# sourceMappingURL=LoadService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoadService.js","sourceRoot":"","sources":["../../src/router/services/LoadService.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntsoeLoader = void 0;
4
- const xml2js_1 = require("xml2js");
5
- const promises_1 = require("node:fs/promises");
6
- const node_path_1 = require("node:path");
7
- const date_fns_1 = require("date-fns");
8
- class EntsoeLoader {
1
+ import { parseStringPromise } from 'xml2js';
2
+ import { readFile, writeFile } from 'node:fs/promises';
3
+ import { join } from 'node:path';
4
+ import { add, format, sub } from 'date-fns';
5
+ export class EntsoeLoader {
9
6
  constructor(loaderConfig) {
10
7
  this.loaderConfig = loaderConfig;
11
8
  this.config = loaderConfig;
@@ -23,14 +20,14 @@ class EntsoeLoader {
23
20
  }
24
21
  makeUrls(wanted, countryCode, year, month) {
25
22
  let start = new Date(Date.UTC(year, month - 1));
26
- start = (0, date_fns_1.sub)(start, { hours: 3 });
23
+ start = sub(start, { hours: 3 });
27
24
  let end = new Date(Date.UTC(year, month));
28
- end = (0, date_fns_1.add)(end, { hours: 3 });
29
- const periodStart = (0, date_fns_1.format)(start, 'yyyyMMddHHmm');
30
- const periodEnd = (0, date_fns_1.format)(end, 'yyyyMMddHHmm');
31
- const hydroStart = (0, date_fns_1.sub)(start, { days: 7 });
32
- const hydroPeriodStart = (0, date_fns_1.format)(hydroStart, 'yyyyMMddHHmm');
33
- const hydroPeriodEnd = (0, date_fns_1.format)((0, date_fns_1.add)(hydroStart, { days: 380 }), 'yyyyMMddHHmm');
25
+ end = add(end, { hours: 3 });
26
+ const periodStart = format(start, 'yyyyMMddHHmm');
27
+ const periodEnd = format(end, 'yyyyMMddHHmm');
28
+ const hydroStart = sub(start, { days: 7 });
29
+ const hydroPeriodStart = format(hydroStart, 'yyyyMMddHHmm');
30
+ const hydroPeriodEnd = format(add(hydroStart, { days: 380 }), 'yyyyMMddHHmm');
34
31
  let priceCountryCode = countryCode;
35
32
  //germany luxemburg
36
33
  if (countryCode === '10Y1001A1001A83F' || countryCode === '10YLU-CEGEDEL-NQ') {
@@ -86,13 +83,13 @@ class EntsoeLoader {
86
83
  const simpleUrl = url.replace(/[\W_]+/g, "_");
87
84
  let filename;
88
85
  if (this.config.cacheDir) {
89
- filename = (0, node_path_1.join)(this.config.cacheDir, simpleUrl + '.json');
86
+ filename = join(this.config.cacheDir, 'entsoe', simpleUrl + '.json');
90
87
  }
91
88
  try {
92
89
  if (reload || !filename) {
93
90
  throw Error('go for full reload');
94
91
  }
95
- const jsonString = await (0, promises_1.readFile)(filename, 'utf-8');
92
+ const jsonString = await readFile(filename, 'utf-8');
96
93
  return JSON.parse(jsonString);
97
94
  }
98
95
  catch (e) {
@@ -102,9 +99,9 @@ class EntsoeLoader {
102
99
  return Promise.reject(new Error(`${response.status} ${response.statusText}`));
103
100
  }
104
101
  const data = await response.text();
105
- const json = await (0, xml2js_1.parseStringPromise)(data);
102
+ const json = await parseStringPromise(data);
106
103
  if (filename) {
107
- (0, promises_1.writeFile)(filename, JSON.stringify(json), 'utf-8');
104
+ writeFile(filename, JSON.stringify(json), 'utf-8');
108
105
  }
109
106
  return json;
110
107
  }
@@ -116,5 +113,4 @@ class EntsoeLoader {
116
113
  }, {});
117
114
  }
118
115
  }
119
- exports.EntsoeLoader = EntsoeLoader;
120
116
  //# sourceMappingURL=Loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../src/router/services/Loader.ts"],"names":[],"mappings":"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"}