iobroker.teslafi 0.1.2 → 0.1.4
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.
- package/README.md +10 -0
- package/admin/jsonConfig.json +14 -2
- package/build/lib/teslafiAPICaller.js +9 -70
- package/build/lib/teslafiAPICaller.js.map +1 -1
- package/io-package.json +27 -1
- package/package.json +6 -6
package/README.md
CHANGED
|
@@ -45,6 +45,16 @@ If you enjoyed this project — or just feeling generous, consider buying me a b
|
|
|
45
45
|
|
|
46
46
|
## Changelog
|
|
47
47
|
|
|
48
|
+
### 0.1.4 (2024-11-01)
|
|
49
|
+
|
|
50
|
+
- (hombach) fix conversion error
|
|
51
|
+
|
|
52
|
+
### 0.1.3 (2024-10-30)
|
|
53
|
+
|
|
54
|
+
- (hombach) fix typo in error text
|
|
55
|
+
- (hombach) optimize responsive design
|
|
56
|
+
- (hombach) bump dependencies
|
|
57
|
+
|
|
48
58
|
### 0.1.2 (2024-10-28)
|
|
49
59
|
|
|
50
60
|
- (hombach) introduce to ioBroker latest repo
|
package/admin/jsonConfig.json
CHANGED
|
@@ -75,9 +75,11 @@
|
|
|
75
75
|
"type": "header",
|
|
76
76
|
"text": "",
|
|
77
77
|
"noTranslation": true,
|
|
78
|
+
"xs": 12,
|
|
78
79
|
"sm": 12,
|
|
79
80
|
"md": 12,
|
|
80
81
|
"lg": 12,
|
|
82
|
+
"xl": 12,
|
|
81
83
|
"size": 3
|
|
82
84
|
},
|
|
83
85
|
"_helpLink": {
|
|
@@ -110,7 +112,12 @@
|
|
|
110
112
|
"_divider0": {
|
|
111
113
|
"newLine": true,
|
|
112
114
|
"type": "divider",
|
|
113
|
-
"color": "primary"
|
|
115
|
+
"color": "primary",
|
|
116
|
+
"xs": 12,
|
|
117
|
+
"sm": 12,
|
|
118
|
+
"md": 12,
|
|
119
|
+
"lg": 12,
|
|
120
|
+
"xl": 12
|
|
114
121
|
},
|
|
115
122
|
|
|
116
123
|
"_donate": {
|
|
@@ -140,7 +147,12 @@
|
|
|
140
147
|
"pl": "Jeśli spodobał ci się ten projekt — lub po prostu czujesz się hojny, rozważ kupienie mi piwa. Na zdrowie! 🍻",
|
|
141
148
|
"uk": "Якщо вам сподобався цей проект — або ви просто хочете зробити приємне, подумайте про те, щоб купити мені пиво. Ура! 🍻",
|
|
142
149
|
"zh-cn": "如果你喜欢这个项目,或者只是觉得慷慨,请考虑请我喝一杯啤酒。干杯!🍻"
|
|
143
|
-
}
|
|
150
|
+
},
|
|
151
|
+
"xs": 12,
|
|
152
|
+
"sm": 12,
|
|
153
|
+
"md": 12,
|
|
154
|
+
"lg": 12,
|
|
155
|
+
"xl": 12
|
|
144
156
|
}
|
|
145
157
|
}
|
|
146
158
|
}
|
|
@@ -33,7 +33,7 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
33
33
|
const result = JSON.parse(response.data);
|
|
34
34
|
// Check if the response indicates an unauthorized access {"response":{"reason":"","result":"unauthorized"}}
|
|
35
35
|
if (result.response?.result === "unauthorized") {
|
|
36
|
-
this.adapter.log.warn(`TeslaFI data read - unauthorized access detected - please verify your API
|
|
36
|
+
this.adapter.log.warn(`TeslaFI data read - unauthorized access detected - please verify your API Token`);
|
|
37
37
|
return false;
|
|
38
38
|
}
|
|
39
39
|
else {
|
|
@@ -73,7 +73,7 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
73
73
|
break;
|
|
74
74
|
case "est_battery_range": //"208.25"
|
|
75
75
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `estimated battery range`, "mi");
|
|
76
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}_km`,
|
|
76
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}_km`, Math.round(value * 160.934) / 100, `estimated battery range`, "km");
|
|
77
77
|
break;
|
|
78
78
|
case "inside_temp": //"15.8"
|
|
79
79
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `inside temperature in your Tesla`, "°C");
|
|
@@ -85,14 +85,14 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
85
85
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Current position latitude of your Tesla`);
|
|
86
86
|
break;
|
|
87
87
|
case "speed": //null
|
|
88
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}`,
|
|
88
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current speed of your Tesla`, "km/h");
|
|
89
89
|
break;
|
|
90
90
|
case "outside_temp": //"14.0"
|
|
91
91
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `outside temperature near your Tesla`, "°C");
|
|
92
92
|
break;
|
|
93
93
|
case "odometer": // "16434.079511"
|
|
94
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}`,
|
|
95
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}_km`,
|
|
94
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current odometer level of your Tesla`, "mi");
|
|
95
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}_km`, Math.round(value * 160.934) / 100, `current odometer level of your Tesla`, "km");
|
|
96
96
|
break;
|
|
97
97
|
case "car_version": //"2024.32.7 3f0d0fff88"
|
|
98
98
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Current software version`);
|
|
@@ -476,67 +476,6 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
476
476
|
await resolveAfterXSeconds(2);
|
|
477
477
|
return true;
|
|
478
478
|
} // END ReadTeslaFi
|
|
479
|
-
/**
|
|
480
|
-
* updates list of tomorrows prices of one home
|
|
481
|
-
*
|
|
482
|
-
* @param homeId - homeId string
|
|
483
|
-
* @param forceUpdate - OPTIONAL: force mode, without verification if existing data is fitting to current date, default: false
|
|
484
|
-
* @returns okprice - got new data
|
|
485
|
-
*/
|
|
486
|
-
/*
|
|
487
|
-
private async updatePricesTomorrow(homeId: string, forceUpdate = false): Promise<boolean> {
|
|
488
|
-
try {
|
|
489
|
-
let exDate: Date | null = null;
|
|
490
|
-
let exPricesTomorrow: IPrice[] = [];
|
|
491
|
-
if (!forceUpdate) {
|
|
492
|
-
exPricesTomorrow = JSON.parse(await this.getStateValue(`Homes.${homeId}.PricesTomorrow.json`));
|
|
493
|
-
}
|
|
494
|
-
if (Array.isArray(exPricesTomorrow) && exPricesTomorrow[2] && exPricesTomorrow[2].startsAt) {
|
|
495
|
-
exDate = new Date(exPricesTomorrow[2].startsAt);
|
|
496
|
-
}
|
|
497
|
-
const morgen = new Date();
|
|
498
|
-
morgen.setDate(morgen.getDate() + 1);
|
|
499
|
-
morgen.setHours(0, 0, 0, 0); // sets clock to 0:00
|
|
500
|
-
if (!exDate || exDate < morgen || forceUpdate) {
|
|
501
|
-
const pricesTomorrow = await this.tibberQuery.getTomorrowsEnergyPrices(homeId);
|
|
502
|
-
this.adapter.log.debug(`Got prices tomorrow from tibber api: ${JSON.stringify(pricesTomorrow)} Force: ${forceUpdate}`);
|
|
503
|
-
this.checkAndSetValue(this.getStatePrefix(homeId, "PricesTomorrow", "json"), JSON.stringify(pricesTomorrow), "The prices tomorrow as json"); // write also it might be empty
|
|
504
|
-
if (pricesTomorrow.length === 0) {
|
|
505
|
-
// pricing not known, before about 13:00 - delete all the states
|
|
506
|
-
this.adapter.log.debug(`Emptying prices tomorrow and average cause existing ones are obsolete...`);
|
|
507
|
-
this.emptyingPriceAverage(homeId, `PricesTomorrow.average`);
|
|
508
|
-
this.checkAndSetValue(
|
|
509
|
-
this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"),
|
|
510
|
-
JSON.stringify(pricesTomorrow),
|
|
511
|
-
"prices sorted by cost ascending as json",
|
|
512
|
-
);
|
|
513
|
-
return false;
|
|
514
|
-
} else if (Array.isArray(pricesTomorrow)) {
|
|
515
|
-
// pricing known, after about 13:00 - write the states
|
|
516
|
-
this.checkAndSetValue(
|
|
517
|
-
this.getStatePrefix(homeId, "PricesTomorrow", "jsonBYpriceASC"),
|
|
518
|
-
JSON.stringify(pricesTomorrow.sort((a, b) => a.total - b.total)),
|
|
519
|
-
"prices sorted by cost ascending as json",
|
|
520
|
-
);
|
|
521
|
-
exDate = new Date(pricesTomorrow[2].startsAt);
|
|
522
|
-
if (exDate && exDate >= morgen) {
|
|
523
|
-
return true;
|
|
524
|
-
} else {
|
|
525
|
-
return false;
|
|
526
|
-
}
|
|
527
|
-
}
|
|
528
|
-
} else if (exDate && exDate >= morgen) {
|
|
529
|
-
this.adapter.log.debug(`Existing date (${exDate}) of price info is already the tomorrow date, polling of prices tomorrow from Tibber skipped`);
|
|
530
|
-
return true;
|
|
531
|
-
}
|
|
532
|
-
return false;
|
|
533
|
-
} catch (error: any) {
|
|
534
|
-
if (forceUpdate) this.adapter.log.error(this.generateErrorMessage(error, `force pull of prices tomorrow`));
|
|
535
|
-
else this.adapter.log.warn(this.generateErrorMessage(error, `pull of prices tomorrow`));
|
|
536
|
-
return false;
|
|
537
|
-
}
|
|
538
|
-
}
|
|
539
|
-
*/
|
|
540
479
|
/*****************************************************************************************/
|
|
541
480
|
async HandleConnectionError(stError, sOccasion, sErrorOccInt) {
|
|
542
481
|
if (stError.response) {
|
|
@@ -558,22 +497,22 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
558
497
|
switch (stError.code) {
|
|
559
498
|
case "ETIMEDOUT":
|
|
560
499
|
this.adapter.log.warn(`Connection timeout error when calling ${sOccasion}`);
|
|
561
|
-
this.adapter.log.warn(`Please verify the API Token or adapt
|
|
500
|
+
this.adapter.log.warn(`Please verify the API Token or adapt your poll interval, (e${sErrorOccInt}.2)`);
|
|
562
501
|
break;
|
|
563
502
|
case "EHOSTUNREACH":
|
|
564
503
|
this.adapter.log.warn(`TeslaFi not reachable error when calling ${sOccasion}`);
|
|
565
|
-
this.adapter.log.warn(`Please verify
|
|
504
|
+
this.adapter.log.warn(`Please verify your network environment, (e${sErrorOccInt}.2)`);
|
|
566
505
|
break;
|
|
567
506
|
case "ENETUNREACH":
|
|
568
507
|
this.adapter.log.warn(`Inverter network not reachable error when calling ${sOccasion}`);
|
|
569
|
-
this.adapter.log.warn(`Please verify
|
|
508
|
+
this.adapter.log.warn(`Please verify your network environment, (e${sErrorOccInt}.2)`);
|
|
570
509
|
break;
|
|
571
510
|
}
|
|
572
511
|
// errors: 'Unexpected end of JSON input' 'read ECONNRESET' 'connect ECONNREFUSED 192.168.0.1:80'
|
|
573
512
|
}
|
|
574
513
|
else {
|
|
575
514
|
this.adapter.log.error(`Unknown error when calling ${sOccasion}: ${stError.message}`);
|
|
576
|
-
this.adapter.log.error(`Please verify the API Token or adapt
|
|
515
|
+
this.adapter.log.error(`Please verify the API Token or adapt your poll interval, (e${sErrorOccInt}.3)`);
|
|
577
516
|
if (this.adapter.supportsFeature && this.adapter.supportsFeature("PLUGINS")) {
|
|
578
517
|
// send Sentry error
|
|
579
518
|
const sentryInstance = this.adapter.getPluginInstance("sentry");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teslafiAPICaller.js","sourceRoot":"","sources":["../../src/lib/teslafiAPICaller.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0C;AAC1C,mDAAgD;AAChD,6DAA6D;AAE7D,SAAS,oBAAoB,CAAC,CAAS;IACtC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC9B,UAAU,CAAC,GAAG,EAAE;YACf,OAAO,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACd,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,MAAa,gBAAiB,SAAQ,6BAAa;IAClD,QAAQ,GAAG,EAAE,CAAC;IACd,YAAY,OAA8B;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,QAAQ,GAAG,yCAAyC,CAAC;IAC3D,CAAC;IAED;8FAC0F;IAC1F,KAAK,CAAC,WAAW;QAChB,MAAM,eAAK;aACT,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,WAAW,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;aACvG,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;YAClB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC/C,CAAC;YACD,iFAAiF;YACjF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEzC,6GAA6G;YAC7G,IAAI,MAAM,CAAC,QAAQ,EAAE,MAAM,KAAK,cAAc,EAAE,CAAC;gBAChD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;gBACzG,OAAO,KAAK,CAAC;YACd,CAAC;iBAAM,CAAC;gBACP,gFAAgF;gBAChF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;wBACpB,QAAQ,GAAG,EAAE,CAAC;4BACb,KAAK,MAAM,EAAE,uBAAuB;gCACnC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,EAAE,EAAE,KAAe,EAAE,+BAA+B,CAAC,CAAC;gCAC/F,MAAM;4BACP,KAAK,cAAc,EAAE,gBAAgB;gCACpC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,EAAE,EAAE,KAAe,EAAE,oBAAoB,CAAC,CAAC;gCACpF,MAAM;4BACP,KAAK,KAAK,EAAE,qBAAqB;gCAChC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,EAAE,EAAE,KAAe,EAAE,mBAAmB,CAAC,CAAC;gCACnF,MAAM;4BACP,KAAK,OAAO,EAAE,UAAU;gCACvB,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,EAAE,EAAE,KAAe,EAAE,qBAAqB,CAAC,CAAC;gCACrF,MAAM;4BACP,KAAK,qBAAqB,EAAE,OAAO;gCAClC,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,GAAG,EAAE,EAAE,KAAe,EAAE,qBAAqB,CAAC,CAAC;gCACrF,MAAM;4BACP,KAAK,wBAAwB,EAAE,MAAM;gCACpC,IAAI,CAAC,sBAAsB,CAC1B,gBAAgB,GAAG,EAAE,EACrB,UAAU,CAAC,KAAe,CAAC,EAC3B,sCAAsC,EACtC,GAAG,CACH,CAAC;gCACF,MAAM;4BACP,KAAK,eAAe,EAAE,KAAK;gCAC1B,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,GAAG,EAAE,EAAE,UAAU,CAAC,KAAe,CAAC,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC;gCAC9G,MAAM;4BACP,KAAK,kBAAkB,EAAE,MAAM;gCAC9B,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,GAAG,EAAE,EAAE,UAAU,CAAC,KAAe,CAAC,EAAE,oCAAoC,EAAE,GAAG,CAAC,CAAC;gCAC3H,MAAM;4BACP,KAAK,sBAAsB,EAAE,MAAM;gCAClC,IAAI,CAAC,sBAAsB,CAC1B,gBAAgB,GAAG,EAAE,EACrB,UAAU,CAAC,KAAe,CAAC,EAC3B,mDAAmD,EACnD,GAAG,CACH,CAAC;gCACF,MAAM;4BACP,KAAK,eAAe,EAAE,MAAM;gCAC3B,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,GAAG,EAAE,EAAE,UAAU,CAAC,KAAe,CAAC,EAAE,2BAA2B,EAAE,GAAG,CAAC,CAAC;gCAClH,MAAM;4BACP,KAAK,mBAAmB,EAAE,UAAU;gCACnC,IAAI,CAAC,sBAAsB,CAAC,gBAAgB,GAAG,EAAE,EAAE,UAAU,CAAC,KAAe,CAAC,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;gCACjH,IAAI,CAAC,sBAAsB,CAC1B,gBAAgB,GAAG,KAAK,EACxB,
|
|
1
|
+
{"version":3,"file":"teslafiAPICaller.js","sourceRoot":"","sources":["../../src/lib/teslafiAPICaller.ts"],"names":[],"mappings":"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"}
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "teslafi",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.4",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.1.4": {
|
|
7
|
+
"en": "Fix conversion error",
|
|
8
|
+
"de": "Fehler bei der Umwandlung beheben",
|
|
9
|
+
"ru": "Исправить ошибку преобразования",
|
|
10
|
+
"pt": "Corrigir erro de conversão",
|
|
11
|
+
"nl": "Fout in conversie oplossen",
|
|
12
|
+
"fr": "Correction de l'erreur de conversion",
|
|
13
|
+
"it": "Correggi errore di conversione",
|
|
14
|
+
"es": "Corregir error de conversión",
|
|
15
|
+
"pl": "Napraw błąd konwersji",
|
|
16
|
+
"uk": "Виправити помилку перетворення",
|
|
17
|
+
"zh-cn": "修复转换错误"
|
|
18
|
+
},
|
|
19
|
+
"0.1.3": {
|
|
20
|
+
"en": "Fix typo in error text\nOptimize responsive design\nBump dependencies",
|
|
21
|
+
"de": "Tippfehler im Fehlermeldungstext korrigieren\nResponsives Design optimieren\nAbhängigkeiten aktualisieren",
|
|
22
|
+
"ru": "Исправить опечатку в тексте ошибки\nОптимизировать адаптивный дизайн\nОбновить зависимости",
|
|
23
|
+
"pt": "Corrigir erro de digitação no texto de erro\nOtimizar design responsivo\nAtualizar dependências",
|
|
24
|
+
"nl": "Typfout in fouttekst corrigeren\nResponsief ontwerp optimaliseren\nAfhankelijkheden bijwerken",
|
|
25
|
+
"fr": "Corriger la faute de frappe dans le texte d'erreur\nOptimiser le design adaptatif\nMettre à jour les dépendances",
|
|
26
|
+
"it": "Correggi errore di battitura nel testo di errore\nOttimizza il design responsivo\nAggiorna le dipendenze",
|
|
27
|
+
"es": "Corregir error tipográfico en el texto de error\nOptimizar diseño responsivo\nActualizar dependencias",
|
|
28
|
+
"pl": "Popraw błąd w tekście błędu\nOptymalizuj responsywny design\nAktualizuj zależności",
|
|
29
|
+
"uk": "Виправити помилку у тексті помилки\nОптимізувати адаптивний дизайн\nОновити залежності",
|
|
30
|
+
"zh-cn": "修正错误文本中的拼写错误\n优化响应式设计\n更新依赖项"
|
|
31
|
+
},
|
|
6
32
|
"0.1.2": {
|
|
7
33
|
"en": "Introduce to ioBroker latest repo\nBump dependencies",
|
|
8
34
|
"de": "In ioBroker-Latest-Repo einführen\nAbhängigkeiten aktualisieren",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.teslafi",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"description": "Adapter to poll TeslaFi data of your car",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hombach",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@iobroker/adapter-core": "^3.2.2",
|
|
27
27
|
"axios": "^1.7.7",
|
|
28
|
-
"cron": "^3.1.
|
|
28
|
+
"cron": "^3.1.8"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@alcalzone/pak": "^0.11.0",
|
|
@@ -38,25 +38,25 @@
|
|
|
38
38
|
"@types/eslint__eslintrc": "^2.1.2",
|
|
39
39
|
"@types/eslint__js": "^8.42.3",
|
|
40
40
|
"@types/mocha": "^10.0.9",
|
|
41
|
-
"@types/node": "^22.8.
|
|
41
|
+
"@types/node": "^22.8.4",
|
|
42
42
|
"@types/proxyquire": "^1.3.31",
|
|
43
43
|
"@types/sinon": "^17.0.3",
|
|
44
44
|
"@types/sinon-chai": "^3.2.12",
|
|
45
|
-
"@typescript-eslint/eslint-plugin": "^8.12.
|
|
45
|
+
"@typescript-eslint/eslint-plugin": "^8.12.2",
|
|
46
46
|
"@typescript-eslint/parser": "^8.12.0",
|
|
47
47
|
"chai": "^4.5.0",
|
|
48
48
|
"chai-as-promised": "^7.1.2",
|
|
49
49
|
"eslint": "^9.13.0",
|
|
50
50
|
"eslint-config-prettier": "^9.1.0",
|
|
51
51
|
"eslint-plugin-prettier": "^5.2.1",
|
|
52
|
-
"mocha": "^10.
|
|
52
|
+
"mocha": "^10.8.1",
|
|
53
53
|
"prettier": "^3.3.3",
|
|
54
54
|
"proxyquire": "^2.1.3",
|
|
55
55
|
"sinon": "^19.0.2",
|
|
56
56
|
"sinon-chai": "^3.7.0",
|
|
57
57
|
"ts-node": "^10.9.2",
|
|
58
58
|
"typescript": "~5.6.3",
|
|
59
|
-
"typescript-eslint": "^8.12.
|
|
59
|
+
"typescript-eslint": "^8.12.2"
|
|
60
60
|
},
|
|
61
61
|
"main": "build/main.js",
|
|
62
62
|
"files": [
|