files: [
'src/charging-station/ChargingStation.ts',
'src/charging-station/ocpp/OCPPServiceUtils.ts',
+ 'src/charging-station/ocpp/1.6/OCPP16ResponseService.ts',
'src/performance/PerformanceStatistics.ts',
],
rules: {
"glob": "^11.0.0",
"husky": "^9.0.11",
"lint-staged": "^15.2.7",
- "neostandard": "^0.11.0",
+ "neostandard": "^0.11.1",
"prettier": "^3.3.3",
"rimraf": "^6.0.1",
"semver": "^7.6.2",
specifier: ^15.2.7
version: 15.2.7
neostandard:
- specifier: ^0.11.0
- version: 0.11.0(eslint@9.7.0)(typescript@5.5.3)
+ specifier: ^0.11.1
+ version: 0.11.1(eslint@9.7.0)(typescript@5.5.3)
prettier:
specifier: ^3.3.3
version: 3.3.3
specifier: ^4.0.0
version: 4.0.0(vite@5.3.3(@types/node@20.14.10))(vue@3.4.31(typescript@5.5.3))
'@vitest/coverage-v8':
- specifier: ^2.0.2
- version: 2.0.2(vitest@2.0.2(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)))
+ specifier: ^2.0.3
+ version: 2.0.3(vitest@2.0.3(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)))
'@vue/eslint-config-prettier':
specifier: ^9.0.0
version: 9.0.0(@types/eslint@8.56.10)(eslint@8.57.0)(prettier@3.3.3)
specifier: ^5.3.3
version: 5.3.3(@types/node@20.14.10)
vitest:
- specifier: ^2.0.2
- version: 2.0.2(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))
+ specifier: ^2.0.3
+ version: 2.0.3(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))
packages:
resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==}
engines: {node: '>=6.9.0'}
- '@babel/compat-data@7.24.8':
- resolution: {integrity: sha512-c4IM7OTg6k1Q+AJ153e2mc2QVTezTwnb4VzquwcyiEzGnW0Kedv4do/TrkU98qPeC5LNiMt/QXwIjzYXLBpyZg==}
+ '@babel/compat-data@7.24.9':
+ resolution: {integrity: sha512-e701mcfApCJqMMueQI0Fb68Amflj83+dvAvHawoBpAz+GDjCIyGHzNwnefjsWJ3xiYAqqiQFoWbspGYBdb2/ng==}
engines: {node: '>=6.9.0'}
- '@babel/core@7.24.8':
- resolution: {integrity: sha512-6AWcmZC/MZCO0yKys4uhg5NlxL0ESF3K6IAaoQ+xSXvPyPyxNWRafP+GDbI88Oh68O7QkJgmEtedWPM9U0pZNg==}
+ '@babel/core@7.24.9':
+ resolution: {integrity: sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg==}
engines: {node: '>=6.9.0'}
- '@babel/generator@7.24.8':
- resolution: {integrity: sha512-47DG+6F5SzOi0uEvK4wMShmn5yY0mVjVJoWTphdY2B4Rx9wHgjK7Yhtr0ru6nE+sn0v38mzrWOlah0p/YlHHOQ==}
+ '@babel/generator@7.24.9':
+ resolution: {integrity: sha512-G8v3jRg+z8IwY1jHFxvCNhOPYPterE4XljNgdGTYfSTtzzwjIswIzIaSPSLs3R7yFuqnqNeay5rjICfqVr+/6A==}
engines: {node: '>=6.9.0'}
'@babel/helper-annotate-as-pure@7.24.7':
resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==}
engines: {node: '>=6.9.0'}
- '@babel/helper-module-transforms@7.24.8':
- resolution: {integrity: sha512-m4vWKVqvkVAWLXfHCCfff2luJj86U+J0/x+0N3ArG/tP0Fq7zky2dYwMbtPmkc/oulkkbjdL3uWzuoBwQ8R00Q==}
+ '@babel/helper-module-transforms@7.24.9':
+ resolution: {integrity: sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': ^7.0.0
resolution: {integrity: sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==}
engines: {node: '>=6.9.0'}
- '@babel/types@7.24.8':
- resolution: {integrity: sha512-SkSBEHwwJRU52QEVZBmMBnE5Ux2/6WU1grdYyOhpbCNxbmJrDuDCphBzKZSO3taf0zztp+qkWlymE5tVL5l0TA==}
+ '@babel/types@7.24.9':
+ resolution: {integrity: sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==}
engines: {node: '>=6.9.0'}
'@bcoe/v8-coverage@0.2.3':
typescript:
optional: true
- '@typescript-eslint/eslint-plugin@8.0.0-alpha.42':
- resolution: {integrity: sha512-la2sVBOUd6oKsSXSrLgDTu0+m6+TeA3YodHtPqUY231ETdd835hWbJkyVU893MWRRDuOyC09I528RRiGjBAODA==}
+ '@typescript-eslint/eslint-plugin@8.0.0-alpha.44':
+ resolution: {integrity: sha512-3hqJa/Ak3ahypkcNoNmkkmUg54zV3AWSaalSWAKTQKF5UtXMvRjM5w3nKqS2AQP0dQAkM1u9cXCnOuLeUZr7rw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
typescript:
optional: true
- '@typescript-eslint/parser@8.0.0-alpha.42':
- resolution: {integrity: sha512-lOUDE+wJwQMq+/KJFCNo9SkJvQ1WGyoubucCWtgDHzr2itfmg0c51Z1wZLyeLSVBsHAWSiR+TIsGoCpHy+5D5Q==}
+ '@typescript-eslint/parser@8.0.0-alpha.44':
+ resolution: {integrity: sha512-ho5CiKhp3hDCvkFVpLqiHlMUbgvGELmdVfvpIiKQ1TFGyDcEVpSJUZCDO+gyymgZreJyTfUDHH6eKhF3pgkb0Q==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
resolution: {integrity: sha512-8gVv3kW6n01Q6TrI1cmTZ9YMFi3ucDT7i7aI5lEikk2ebk1AEjrwX8MDTdaX5D7fPXMBLvnsaa0IFTAu+jcfOw==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/scope-manager@8.0.0-alpha.42':
- resolution: {integrity: sha512-3nS6VEzxUPEMvqadRaGkjZuL+fsjNf5lCYbvS0IQYzqJl7338yhxvPCraHmXe/xlB08p+5BAd6JYAbkTeSXxJw==}
+ '@typescript-eslint/scope-manager@8.0.0-alpha.44':
+ resolution: {integrity: sha512-0w0pDILwfwRXSz9lQBXnJmeGaIbSBgl4vAw/lB2kCnOKYl2SXCVbdNOHPwxWigvQ08QVpuaKy+wEjbFKr9Xwfg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/type-utils@7.16.0':
typescript:
optional: true
- '@typescript-eslint/type-utils@8.0.0-alpha.42':
- resolution: {integrity: sha512-vmmJgOHycCTUe/d7DdbBkhz1NAJ08wVptyFP17pcmagIq2oTTan9ffIMbIxCKepGi0l5UzdSGf3l9IYZ+xjD8w==}
+ '@typescript-eslint/type-utils@8.0.0-alpha.44':
+ resolution: {integrity: sha512-52V6rQxNiebKYLxjcRTzIuTMw/wgrCcLncV27u2O142WyD07gLbICGcxtrxurDIQLMwQ/BuStV2x0cypKSwwdw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
resolution: {integrity: sha512-fecuH15Y+TzlUutvUl9Cc2XJxqdLr7+93SQIbcZfd4XRGGKoxyljK27b+kxKamjRkU7FYC6RrbSCg0ALcZn/xw==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/types@8.0.0-alpha.42':
- resolution: {integrity: sha512-cvfuxLiSVi6EfsgE/1A07JD67pnv+Grf9YMhGAKUsokIvsMcusLSI1h2On6qoyZghJuFXkH3hiMsg7DtxZBtsw==}
+ '@typescript-eslint/types@8.0.0-alpha.44':
+ resolution: {integrity: sha512-FNBBUTJBNbIaTJhhBbSNxKv+qS8lrwwnpBg36APp5fhDRu8K/YFQZP/VEa19nKBz+8+QUK7R6wV9DHYjj56S7w==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/typescript-estree@7.16.0':
typescript:
optional: true
- '@typescript-eslint/typescript-estree@8.0.0-alpha.42':
- resolution: {integrity: sha512-rIHLylSgsfY5hTE68hd8UXcacZxOq4DWAitRKF8xs33hEBDyxInj4FtUglYU420HvFqyVFtVdB7WEFY4cFQ+iA==}
+ '@typescript-eslint/typescript-estree@8.0.0-alpha.44':
+ resolution: {integrity: sha512-IyLELYPMFaleWpEVrcYhSfgFXFx4/505P4/vi9Dfp6s6T2xapyAdti6WL9iZbnXk72SL5M0wMp3V73nHn8ce1A==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
peerDependencies:
eslint: ^8.56.0
- '@typescript-eslint/utils@8.0.0-alpha.42':
- resolution: {integrity: sha512-ousp9L07jDosMqnayZNF8QOJB2FDZP7lSN2lUI7BknV5B1beUoPizWZl0yDHxrk64ldZu5JoqkhAbOcbPNJu5Q==}
+ '@typescript-eslint/utils@8.0.0-alpha.44':
+ resolution: {integrity: sha512-gOSA4Yo1jufcOuV68yX3hzpwzufd/Ru6KYL04od1T1c5tt6cvN3i5D5Tc3BBJ3xYFE7ge821mJbUJMTc+BMaWg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
resolution: {integrity: sha512-rMo01uPy9C7XxG7AFsxa8zLnWXTF8N3PYclekWSrurvhwiw1eW88mrKiAYe6s53AUY57nTRz8dJsuuXdkAhzCg==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/visitor-keys@8.0.0-alpha.42':
- resolution: {integrity: sha512-Bf/BObckzDnCS9AslkTsuH1vU+h4rppUrmPbTbhGlPurmss6Lt/Ft9H8vQ8wXeN8rk0drRhML2Feo6aODLeKdA==}
+ '@typescript-eslint/visitor-keys@8.0.0-alpha.44':
+ resolution: {integrity: sha512-geWzLM8S6vYGdhA01mWJyGh2V/7VRzAmsD6ZKuc/rLkeJhYjvkMY0g0uMDw/7wmNLeRrpjHnL8HJklrpAlrb9g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@ungap/structured-clone@1.2.0':
vite: ^5.0.0
vue: ^3.2.25
- '@vitest/coverage-v8@2.0.2':
- resolution: {integrity: sha512-iA8eb4PMid3bMc++gfQSTvYE1QL//fC8pz+rKsTUDBFjdDiy/gH45hvpqyDu5K7FHhvgG0GNNCJzTMMSFKhoxg==}
+ '@vitest/coverage-v8@2.0.3':
+ resolution: {integrity: sha512-53d+6jXFdYbasXBmsL6qaGIfcY5eBQq0sP57AjdasOcSiGNj4qxkkpDKIitUNfjxcfAfUfQ8BD0OR2fSey64+g==}
peerDependencies:
- vitest: 2.0.2
+ vitest: 2.0.3
- '@vitest/expect@2.0.2':
- resolution: {integrity: sha512-nKAvxBYqcDugYZ4nJvnm5OR8eDJdgWjk4XM9owQKUjzW70q0icGV2HVnQOyYsp906xJaBDUXw0+9EHw2T8e0mQ==}
+ '@vitest/expect@2.0.3':
+ resolution: {integrity: sha512-X6AepoOYePM0lDNUPsGXTxgXZAl3EXd0GYe/MZyVE4HzkUqyUVC6S3PrY5mClDJ6/7/7vALLMV3+xD/Ko60Hqg==}
- '@vitest/pretty-format@2.0.2':
- resolution: {integrity: sha512-SBCyOXfGVvddRd9r2PwoVR0fonQjh9BMIcBMlSzbcNwFfGr6ZhOhvBzurjvi2F4ryut2HcqiFhNeDVGwru8tLg==}
+ '@vitest/pretty-format@2.0.3':
+ resolution: {integrity: sha512-URM4GLsB2xD37nnTyvf6kfObFafxmycCL8un3OC9gaCs5cti2u+5rJdIflZ2fUJUen4NbvF6jCufwViAFLvz1g==}
- '@vitest/runner@2.0.2':
- resolution: {integrity: sha512-OCh437Vi8Wdbif1e0OvQcbfM3sW4s2lpmOjAE7qfLrpzJX2M7J1IQlNvEcb/fu6kaIB9n9n35wS0G2Q3en5kHg==}
+ '@vitest/runner@2.0.3':
+ resolution: {integrity: sha512-EmSP4mcjYhAcuBWwqgpjR3FYVeiA4ROzRunqKltWjBfLNs1tnMLtF+qtgd5ClTwkDP6/DGlKJTNa6WxNK0bNYQ==}
- '@vitest/snapshot@2.0.2':
- resolution: {integrity: sha512-Yc2ewhhZhx+0f9cSUdfzPRcsM6PhIb+S43wxE7OG0kTxqgqzo8tHkXFuFlndXeDMp09G3sY/X5OAo/RfYydf1g==}
+ '@vitest/snapshot@2.0.3':
+ resolution: {integrity: sha512-6OyA6v65Oe3tTzoSuRPcU6kh9m+mPL1vQ2jDlPdn9IQoUxl8rXhBnfICNOC+vwxWY684Vt5UPgtcA2aPFBb6wg==}
- '@vitest/spy@2.0.2':
- resolution: {integrity: sha512-MgwJ4AZtCgqyp2d7WcQVE8aNG5vQ9zu9qMPYQHjsld/QVsrvg78beNrXdO4HYkP0lDahCO3P4F27aagIag+SGQ==}
+ '@vitest/spy@2.0.3':
+ resolution: {integrity: sha512-sfqyAw/ypOXlaj4S+w8689qKM1OyPOqnonqOc9T91DsoHbfN5mU7FdifWWv3MtQFf0lEUstEwR9L/q/M390C+A==}
- '@vitest/utils@2.0.2':
- resolution: {integrity: sha512-pxCY1v7kmOCWYWjzc0zfjGTA3Wmn8PKnlPvSrsA643P1NHl1fOyXj2Q9SaNlrlFE+ivCsxM80Ov3AR82RmHCWQ==}
+ '@vitest/utils@2.0.3':
+ resolution: {integrity: sha512-c/UdELMuHitQbbc/EVctlBaxoYAwQPQdSNwv7z/vHyBKy2edYZaFgptE27BRueZB7eW8po+cllotMNTDpL3HWg==}
'@vue/babel-helper-vue-transform-on@1.2.2':
resolution: {integrity: sha512-nOttamHUR3YzdEqdM/XXDyCSdxMA9VizUKoroLX6yTyRtggzQMHXcmwh8a7ZErcJttIBIc9s68a1B8GZ+Dmvsw==}
resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
engines: {node: '>= 0.6'}
- neostandard@0.11.0:
- resolution: {integrity: sha512-20B3IxFDnQf9d9sWdCtiuiArOjtozxt4GF1suatqKk/J1qHdaJSkfnQdfdACi8O21W7yTKmc7jc2wvm0vH7Y2w==}
+ neostandard@0.11.1:
+ resolution: {integrity: sha512-6zZlIPIQG24hNIP9wkisflpSh5U/bMQklXOb99DE3Lrt6MHDvKdmZOrrveefKlougvduSAH+JK0lgAQg8+t9zQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
hasBin: true
peerDependencies:
typedarray@0.0.6:
resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
- typescript-eslint@8.0.0-alpha.42:
- resolution: {integrity: sha512-lD1yEYS0hGOtRheGp7Lyze2r6AQgJeKHjpNyVlXkYEQgDCs9dPlO2VF9/WMvdA1d3TPa24hVGlUcKJ34G5jNKQ==}
+ typescript-eslint@8.0.0-alpha.44:
+ resolution: {integrity: sha512-4oRisGPvIJFnLqpfrpdcFjkFZg4/mhbE+0faGiomEFv9r5ziXETxuGY6VmwACPXHEakp2nDEqnp3ZdU0bsuiHQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==}
engines: {'0': node >=0.6.0}
- vite-node@2.0.2:
- resolution: {integrity: sha512-w4vkSz1Wo+NIQg8pjlEn0jQbcM/0D+xVaYjhw3cvarTanLLBh54oNiRbsT8PNK5GfuST0IlVXjsNRoNlqvY/fw==}
+ vite-node@2.0.3:
+ resolution: {integrity: sha512-14jzwMx7XTcMB+9BhGQyoEAmSl0eOr3nrnn+Z12WNERtOvLN+d2scbRUvyni05rT3997Bg+rZb47NyP4IQPKXg==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
terser:
optional: true
- vitest@2.0.2:
- resolution: {integrity: sha512-WlpZ9neRIjNBIOQwBYfBSr0+of5ZCbxT2TVGKW4Lv0c8+srCFIiRdsP7U009t8mMn821HQ4XKgkx5dVWpyoyLw==}
+ vitest@2.0.3:
+ resolution: {integrity: sha512-o3HRvU93q6qZK4rI2JrhKyZMMuxg/JRt30E6qeQs6ueaiz5hr1cPj+Sk2kATgQzMMqsa2DiNI0TIK++1ULx8Jw==}
engines: {node: ^18.0.0 || >=20.0.0}
hasBin: true
peerDependencies:
'@edge-runtime/vm': '*'
'@types/node': ^18.0.0 || >=20.0.0
- '@vitest/browser': 2.0.2
- '@vitest/ui': 2.0.2
+ '@vitest/browser': 2.0.3
+ '@vitest/ui': 2.0.3
happy-dom: '*'
jsdom: '*'
peerDependenciesMeta:
'@babel/highlight': 7.24.7
picocolors: 1.0.1
- '@babel/compat-data@7.24.8': {}
+ '@babel/compat-data@7.24.9': {}
- '@babel/core@7.24.8':
+ '@babel/core@7.24.9':
dependencies:
'@ampproject/remapping': 2.3.0
'@babel/code-frame': 7.24.7
- '@babel/generator': 7.24.8
+ '@babel/generator': 7.24.9
'@babel/helper-compilation-targets': 7.24.8
- '@babel/helper-module-transforms': 7.24.8(@babel/core@7.24.8)
+ '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9)
'@babel/helpers': 7.24.8
'@babel/parser': 7.24.8
'@babel/template': 7.24.7
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
convert-source-map: 2.0.0
debug: 4.3.5
gensync: 1.0.0-beta.2
transitivePeerDependencies:
- supports-color
- '@babel/generator@7.24.8':
+ '@babel/generator@7.24.9':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@jridgewell/gen-mapping': 0.3.5
'@jridgewell/trace-mapping': 0.3.25
jsesc: 2.5.2
'@babel/helper-annotate-as-pure@7.24.7':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-compilation-targets@7.24.8':
dependencies:
- '@babel/compat-data': 7.24.8
+ '@babel/compat-data': 7.24.9
'@babel/helper-validator-option': 7.24.8
browserslist: 4.23.2
lru-cache: 5.1.1
semver: 7.6.2
- '@babel/helper-create-class-features-plugin@7.24.8(@babel/core@7.24.8)':
+ '@babel/helper-create-class-features-plugin@7.24.8(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-annotate-as-pure': 7.24.7
'@babel/helper-environment-visitor': 7.24.7
'@babel/helper-function-name': 7.24.7
'@babel/helper-member-expression-to-functions': 7.24.8
'@babel/helper-optimise-call-expression': 7.24.7
- '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.8)
+ '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.9)
'@babel/helper-skip-transparent-expression-wrappers': 7.24.7
'@babel/helper-split-export-declaration': 7.24.7
semver: 7.6.2
'@babel/helper-environment-visitor@7.24.7':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-function-name@7.24.7':
dependencies:
'@babel/template': 7.24.7
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-hoist-variables@7.24.7':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-member-expression-to-functions@7.24.8':
dependencies:
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
transitivePeerDependencies:
- supports-color
'@babel/helper-module-imports@7.22.15':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-module-imports@7.24.7':
dependencies:
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
transitivePeerDependencies:
- supports-color
- '@babel/helper-module-transforms@7.24.8(@babel/core@7.24.8)':
+ '@babel/helper-module-transforms@7.24.9(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-environment-visitor': 7.24.7
'@babel/helper-module-imports': 7.24.7
'@babel/helper-simple-access': 7.24.7
'@babel/helper-optimise-call-expression@7.24.7':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-plugin-utils@7.24.8': {}
- '@babel/helper-replace-supers@7.24.7(@babel/core@7.24.8)':
+ '@babel/helper-replace-supers@7.24.7(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-environment-visitor': 7.24.7
'@babel/helper-member-expression-to-functions': 7.24.8
'@babel/helper-optimise-call-expression': 7.24.7
'@babel/helper-simple-access@7.24.7':
dependencies:
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
transitivePeerDependencies:
- supports-color
'@babel/helper-skip-transparent-expression-wrappers@7.24.7':
dependencies:
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
transitivePeerDependencies:
- supports-color
'@babel/helper-split-export-declaration@7.24.7':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/helper-string-parser@7.24.8': {}
'@babel/helpers@7.24.8':
dependencies:
'@babel/template': 7.24.7
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/highlight@7.24.7':
dependencies:
'@babel/parser@7.24.8':
dependencies:
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
- '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.8)':
+ '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.24.8)':
+ '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-transform-typescript@7.24.8(@babel/core@7.24.8)':
+ '@babel/plugin-transform-typescript@7.24.8(@babel/core@7.24.9)':
dependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-annotate-as-pure': 7.24.7
- '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.8)
+ '@babel/helper-create-class-features-plugin': 7.24.8(@babel/core@7.24.9)
'@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.24.8)
+ '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.24.9)
transitivePeerDependencies:
- supports-color
dependencies:
'@babel/code-frame': 7.24.7
'@babel/parser': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@babel/traverse@7.24.8':
dependencies:
'@babel/code-frame': 7.24.7
- '@babel/generator': 7.24.8
+ '@babel/generator': 7.24.9
'@babel/helper-environment-visitor': 7.24.7
'@babel/helper-function-name': 7.24.7
'@babel/helper-hoist-variables': 7.24.7
'@babel/helper-split-export-declaration': 7.24.7
'@babel/parser': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
debug: 4.3.5
globals: 11.12.0
transitivePeerDependencies:
- supports-color
- '@babel/types@7.24.8':
+ '@babel/types@7.24.9':
dependencies:
'@babel/helper-string-parser': 7.24.8
'@babel/helper-validator-identifier': 7.24.7
'@stylistic/eslint-plugin-plus@2.6.0-beta.0(eslint@9.7.0)(typescript@5.5.3)':
dependencies:
'@types/eslint': 8.56.10
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
eslint: 9.7.0
transitivePeerDependencies:
- supports-color
dependencies:
'@stylistic/eslint-plugin-js': 2.6.0-beta.0(eslint@9.7.0)
'@types/eslint': 8.56.10
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
eslint: 9.7.0
transitivePeerDependencies:
- supports-color
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/eslint-plugin@8.0.0-alpha.42(@typescript-eslint/parser@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3))(eslint@9.7.0)(typescript@5.5.3)':
+ '@typescript-eslint/eslint-plugin@8.0.0-alpha.44(@typescript-eslint/parser@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3))(eslint@9.7.0)(typescript@5.5.3)':
dependencies:
'@eslint-community/regexpp': 4.11.0
- '@typescript-eslint/parser': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/scope-manager': 8.0.0-alpha.42
- '@typescript-eslint/type-utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/visitor-keys': 8.0.0-alpha.42
+ '@typescript-eslint/parser': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/scope-manager': 8.0.0-alpha.44
+ '@typescript-eslint/type-utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/visitor-keys': 8.0.0-alpha.44
eslint: 9.7.0
graphemer: 1.4.0
ignore: 5.3.1
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)':
+ '@typescript-eslint/parser@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.0.0-alpha.42
- '@typescript-eslint/types': 8.0.0-alpha.42
- '@typescript-eslint/typescript-estree': 8.0.0-alpha.42(typescript@5.5.3)
- '@typescript-eslint/visitor-keys': 8.0.0-alpha.42
+ '@typescript-eslint/scope-manager': 8.0.0-alpha.44
+ '@typescript-eslint/types': 8.0.0-alpha.44
+ '@typescript-eslint/typescript-estree': 8.0.0-alpha.44(typescript@5.5.3)
+ '@typescript-eslint/visitor-keys': 8.0.0-alpha.44
debug: 4.3.5
eslint: 9.7.0
optionalDependencies:
'@typescript-eslint/types': 7.16.0
'@typescript-eslint/visitor-keys': 7.16.0
- '@typescript-eslint/scope-manager@8.0.0-alpha.42':
+ '@typescript-eslint/scope-manager@8.0.0-alpha.44':
dependencies:
- '@typescript-eslint/types': 8.0.0-alpha.42
- '@typescript-eslint/visitor-keys': 8.0.0-alpha.42
+ '@typescript-eslint/types': 8.0.0-alpha.44
+ '@typescript-eslint/visitor-keys': 8.0.0-alpha.44
'@typescript-eslint/type-utils@7.16.0(eslint@8.57.0)(typescript@5.5.3)':
dependencies:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/type-utils@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)':
+ '@typescript-eslint/type-utils@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)':
dependencies:
- '@typescript-eslint/typescript-estree': 8.0.0-alpha.42(typescript@5.5.3)
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/typescript-estree': 8.0.0-alpha.44(typescript@5.5.3)
+ '@typescript-eslint/utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
debug: 4.3.5
ts-api-utils: 1.3.0(typescript@5.5.3)
optionalDependencies:
'@typescript-eslint/types@7.16.0': {}
- '@typescript-eslint/types@8.0.0-alpha.42': {}
+ '@typescript-eslint/types@8.0.0-alpha.44': {}
'@typescript-eslint/typescript-estree@7.16.0(typescript@5.5.3)':
dependencies:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/typescript-estree@8.0.0-alpha.42(typescript@5.5.3)':
+ '@typescript-eslint/typescript-estree@8.0.0-alpha.44(typescript@5.5.3)':
dependencies:
- '@typescript-eslint/types': 8.0.0-alpha.42
- '@typescript-eslint/visitor-keys': 8.0.0-alpha.42
+ '@typescript-eslint/types': 8.0.0-alpha.44
+ '@typescript-eslint/visitor-keys': 8.0.0-alpha.44
debug: 4.3.5
globby: 11.1.0
is-glob: 4.0.3
- supports-color
- typescript
- '@typescript-eslint/utils@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)':
+ '@typescript-eslint/utils@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)':
dependencies:
'@eslint-community/eslint-utils': 4.4.0(eslint@9.7.0)
- '@typescript-eslint/scope-manager': 8.0.0-alpha.42
- '@typescript-eslint/types': 8.0.0-alpha.42
- '@typescript-eslint/typescript-estree': 8.0.0-alpha.42(typescript@5.5.3)
+ '@typescript-eslint/scope-manager': 8.0.0-alpha.44
+ '@typescript-eslint/types': 8.0.0-alpha.44
+ '@typescript-eslint/typescript-estree': 8.0.0-alpha.44(typescript@5.5.3)
eslint: 9.7.0
transitivePeerDependencies:
- supports-color
'@typescript-eslint/types': 7.16.0
eslint-visitor-keys: 3.4.3
- '@typescript-eslint/visitor-keys@8.0.0-alpha.42':
+ '@typescript-eslint/visitor-keys@8.0.0-alpha.44':
dependencies:
- '@typescript-eslint/types': 8.0.0-alpha.42
+ '@typescript-eslint/types': 8.0.0-alpha.44
eslint-visitor-keys: 3.4.3
'@ungap/structured-clone@1.2.0': {}
'@vitejs/plugin-vue-jsx@4.0.0(vite@5.3.3(@types/node@20.14.10))(vue@3.4.31(typescript@5.5.3))':
dependencies:
- '@babel/core': 7.24.8
- '@babel/plugin-transform-typescript': 7.24.8(@babel/core@7.24.8)
- '@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.24.8)
+ '@babel/core': 7.24.9
+ '@babel/plugin-transform-typescript': 7.24.8(@babel/core@7.24.9)
+ '@vue/babel-plugin-jsx': 1.2.2(@babel/core@7.24.9)
vite: 5.3.3(@types/node@20.14.10)
vue: 3.4.31(typescript@5.5.3)
transitivePeerDependencies:
vite: 5.3.3(@types/node@20.14.10)
vue: 3.4.31(typescript@5.5.3)
- '@vitest/coverage-v8@2.0.2(vitest@2.0.2(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)))':
+ '@vitest/coverage-v8@2.0.3(vitest@2.0.3(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)))':
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 0.2.3
strip-literal: 2.1.0
test-exclude: 7.0.1
tinyrainbow: 1.2.0
- vitest: 2.0.2(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))
+ vitest: 2.0.3(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))
transitivePeerDependencies:
- supports-color
- '@vitest/expect@2.0.2':
+ '@vitest/expect@2.0.3':
dependencies:
- '@vitest/spy': 2.0.2
- '@vitest/utils': 2.0.2
+ '@vitest/spy': 2.0.3
+ '@vitest/utils': 2.0.3
chai: 5.1.1
tinyrainbow: 1.2.0
- '@vitest/pretty-format@2.0.2':
+ '@vitest/pretty-format@2.0.3':
dependencies:
tinyrainbow: 1.2.0
- '@vitest/runner@2.0.2':
+ '@vitest/runner@2.0.3':
dependencies:
- '@vitest/utils': 2.0.2
+ '@vitest/utils': 2.0.3
pathe: 1.1.2
- '@vitest/snapshot@2.0.2':
+ '@vitest/snapshot@2.0.3':
dependencies:
- '@vitest/pretty-format': 2.0.2
+ '@vitest/pretty-format': 2.0.3
magic-string: 0.30.10
pathe: 1.1.2
- '@vitest/spy@2.0.2':
+ '@vitest/spy@2.0.3':
dependencies:
tinyspy: 3.0.0
- '@vitest/utils@2.0.2':
+ '@vitest/utils@2.0.3':
dependencies:
- '@vitest/pretty-format': 2.0.2
+ '@vitest/pretty-format': 2.0.3
estree-walker: 3.0.3
loupe: 3.1.1
tinyrainbow: 1.2.0
'@vue/babel-helper-vue-transform-on@1.2.2': {}
- '@vue/babel-plugin-jsx@1.2.2(@babel/core@7.24.8)':
+ '@vue/babel-plugin-jsx@1.2.2(@babel/core@7.24.9)':
dependencies:
'@babel/helper-module-imports': 7.22.15
'@babel/helper-plugin-utils': 7.24.8
- '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.8)
+ '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.9)
'@babel/template': 7.24.7
'@babel/traverse': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
'@vue/babel-helper-vue-transform-on': 1.2.2
- '@vue/babel-plugin-resolve-type': 1.2.2(@babel/core@7.24.8)
+ '@vue/babel-plugin-resolve-type': 1.2.2(@babel/core@7.24.9)
camelcase: 6.3.0
html-tags: 3.3.1
svg-tags: 1.0.0
optionalDependencies:
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
transitivePeerDependencies:
- supports-color
- '@vue/babel-plugin-resolve-type@1.2.2(@babel/core@7.24.8)':
+ '@vue/babel-plugin-resolve-type@1.2.2(@babel/core@7.24.9)':
dependencies:
'@babel/code-frame': 7.24.7
- '@babel/core': 7.24.8
+ '@babel/core': 7.24.9
'@babel/helper-module-imports': 7.22.15
'@babel/helper-plugin-utils': 7.24.8
'@babel/parser': 7.24.8
magicast@0.3.4:
dependencies:
'@babel/parser': 7.24.8
- '@babel/types': 7.24.8
+ '@babel/types': 7.24.9
source-map-js: 1.2.0
make-dir@3.1.0:
negotiator@0.6.3:
optional: true
- neostandard@0.11.0(eslint@9.7.0)(typescript@5.5.3):
+ neostandard@0.11.1(eslint@9.7.0)(typescript@5.5.3):
dependencies:
'@humanwhocodes/gitignore-to-minimatch': 1.0.2
'@stylistic/eslint-plugin': 2.6.0-beta.0(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ '@types/eslint': 8.56.10
eslint: 9.7.0
eslint-plugin-n: 17.9.0(eslint@9.7.0)
eslint-plugin-promise: 6.4.0(eslint@9.7.0)
find-up: 5.0.0
globals: 15.8.0
peowly: 1.3.2
- typescript-eslint: 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ typescript-eslint: 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
transitivePeerDependencies:
- supports-color
- typescript
typedarray@0.0.6: {}
- typescript-eslint@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3):
+ typescript-eslint@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3):
dependencies:
- '@typescript-eslint/eslint-plugin': 8.0.0-alpha.42(@typescript-eslint/parser@8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3))(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/parser': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
- '@typescript-eslint/utils': 8.0.0-alpha.42(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/eslint-plugin': 8.0.0-alpha.44(@typescript-eslint/parser@8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3))(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/parser': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
+ '@typescript-eslint/utils': 8.0.0-alpha.44(eslint@9.7.0)(typescript@5.5.3)
optionalDependencies:
typescript: 5.5.3
transitivePeerDependencies:
core-util-is: 1.0.2
extsprintf: 1.3.0
- vite-node@2.0.2(@types/node@20.14.10):
+ vite-node@2.0.3(@types/node@20.14.10):
dependencies:
cac: 6.7.14
debug: 4.3.5
'@types/node': 20.14.10
fsevents: 2.3.3
- vitest@2.0.2(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)):
+ vitest@2.0.3(@types/node@20.14.10)(jsdom@24.1.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)):
dependencies:
'@ampproject/remapping': 2.3.0
- '@vitest/expect': 2.0.2
- '@vitest/pretty-format': 2.0.2
- '@vitest/runner': 2.0.2
- '@vitest/snapshot': 2.0.2
- '@vitest/spy': 2.0.2
- '@vitest/utils': 2.0.2
+ '@vitest/expect': 2.0.3
+ '@vitest/pretty-format': 2.0.3
+ '@vitest/runner': 2.0.3
+ '@vitest/snapshot': 2.0.3
+ '@vitest/spy': 2.0.3
+ '@vitest/utils': 2.0.3
chai: 5.1.1
debug: 4.3.5
execa: 8.0.1
tinypool: 1.0.0
tinyrainbow: 1.2.0
vite: 5.3.3(@types/node@20.14.10)
- vite-node: 2.0.2(@types/node@20.14.10)
+ vite-node: 2.0.3(@types/node@20.14.10)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/node': 20.14.10
logger.info(
`${this.logPrefix(connectorId)} transaction started with id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- this.chargingStation.getConnectorStatus(connectorId)?.transactionId?.toString()
- } and will stop in ${formatDurationMilliSeconds(waitTrxEnd)}`
+ this.chargingStation
+ .getConnectorStatus(connectorId)
+ ?.transactionId?.toString()} and will stop in ${formatDurationMilliSeconds(waitTrxEnd)}`
)
await sleep(waitTrxEnd)
await this.stopTransaction(connectorId)
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
++this.connectorsStatus.get(connectorId)!.skippedTransactions
logger.info(
- `${this.logPrefix(connectorId)} skipped consecutively ${
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- this.connectorsStatus.get(connectorId)?.skippedConsecutiveTransactions.toString()
+ `${this.logPrefix(connectorId)} skipped consecutively ${// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ this.connectorsStatus
+ .get(connectorId)
+ ?.skippedConsecutiveTransactions.toString()
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}/${this.connectorsStatus.get(connectorId)?.skippedTransactions.toString()} transaction(s)`
)
logger.info(
`${this.logPrefix(connectorId)} entered in transaction loop while a transaction ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connectorStatus.transactionId?.toString()
- } is already started on connector ${connectorId.toString()}`
+ connectorStatus.transactionId?.toString()} is already started on connector ${connectorId.toString()}`
)
return false
}
logger.info(
`${this.logPrefix(connectorId)} transaction loop waiting for started transaction ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connectorStatus.transactionId?.toString()
- } on connector ${connectorId.toString()} to be stopped`
+ connectorStatus.transactionId?.toString()} on connector ${connectorId.toString()} to be stopped`
)
logged = true
}
let stopResponse: StopTransactionResponse | undefined
if (this.chargingStation.getConnectorStatus(connectorId)?.transactionStarted === true) {
logger.info(
- `${this.logPrefix(connectorId)} stop transaction with id ${
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- this.chargingStation.getConnectorStatus(connectorId)?.transactionId?.toString()
- }`
+ `${this.logPrefix(connectorId)} stop transaction with id ${// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ this.chargingStation.getConnectorStatus(connectorId)?.transactionId?.toString()}`
)
stopResponse = await this.chargingStation.stopTransactionOnConnector(connectorId, reason)
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
)
console.info(
chalk.green(
- `Charging stations simulator ${this.version} started with ${
- this.numberOfConfiguredChargingStations.toString()
- } configured and ${
- this.numberOfProvisionedChargingStations.toString()
- } provisioned charging station(s) from ${
- this.numberOfChargingStationTemplates.toString()
- } charging station template(s) and ${
+ `Charging stations simulator ${this.version} started with ${this.numberOfConfiguredChargingStations.toString()} configured and ${this.numberOfProvisionedChargingStations.toString()} provisioned charging station(s) from ${this.numberOfChargingStationTemplates.toString()} charging station template(s) and ${
+ Configuration.workerDynamicPoolInUse()
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ ? `${workerConfiguration.poolMinSize?.toString()}/`
+ : ''
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- Configuration.workerDynamicPoolInUse() ? `${workerConfiguration.poolMinSize?.toString()}/` : ''
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}${this.workerImplementation?.size.toString()}${
+ Configuration.workerPoolInUse()
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ ? `/${workerConfiguration.poolMaxSize?.toString()}`
+ : ''
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- Configuration.workerPoolInUse() ? `/${workerConfiguration.poolMaxSize?.toString()}` : ''
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
} worker(s) concurrently running in '${workerConfiguration.processType}' mode${
this.workerImplementation?.maxElementsPerWorker != null
? ` (${this.workerImplementation.maxElementsPerWorker.toString()} charging station(s) per worker)`
ChargingStationWorkerMessageEvents.stopped,
this.numberOfStartedChargingStations
)
- .then((events) => {
+ .then(events => {
resolve('Charging stations stopped')
return events
})
`${this.logPrefix()} ${moduleName}.workerEventAdded: Charging station ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
data.stationInfo.chargingStationId
- } (hashId: ${data.stationInfo.hashId}) added (${
- this.numberOfAddedChargingStations.toString()
- } added from ${this.numberOfConfiguredChargingStations.toString()} configured and ${
- this.numberOfProvisionedChargingStations.toString()
- } provisioned charging station(s))`
+ } (hashId: ${data.stationInfo.hashId}) added (${this.numberOfAddedChargingStations.toString()} added from ${this.numberOfConfiguredChargingStations.toString()} configured and ${this.numberOfProvisionedChargingStations.toString()} provisioned charging station(s))`
)
}
`${this.logPrefix()} ${moduleName}.workerEventDeleted: Charging station ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
data.stationInfo.chargingStationId
- } (hashId: ${data.stationInfo.hashId}) deleted (${
- this.numberOfAddedChargingStations.toString()
- } added from ${this.numberOfConfiguredChargingStations.toString()} configured and ${
- this.numberOfProvisionedChargingStations.toString()
- } provisioned charging station(s))`
+ } (hashId: ${data.stationInfo.hashId}) deleted (${this.numberOfAddedChargingStations.toString()} added from ${this.numberOfConfiguredChargingStations.toString()} configured and ${this.numberOfProvisionedChargingStations.toString()} provisioned charging station(s))`
)
}
`${this.logPrefix()} ${moduleName}.workerEventStarted: Charging station ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
data.stationInfo.chargingStationId
- } (hashId: ${data.stationInfo.hashId}) started (${
- this.numberOfStartedChargingStations.toString()
- } started from ${this.numberOfAddedChargingStations.toString()} added charging station(s))`
+ } (hashId: ${data.stationInfo.hashId}) started (${this.numberOfStartedChargingStations.toString()} started from ${this.numberOfAddedChargingStations.toString()} added charging station(s))`
)
}
`${this.logPrefix()} ${moduleName}.workerEventStopped: Charging station ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
data.stationInfo.chargingStationId
- } (hashId: ${data.stationInfo.hashId}) stopped (${
- this.numberOfStartedChargingStations.toString()
- } started from ${this.numberOfAddedChargingStations.toString()} added charging station(s))`
+ } (hashId: ${data.stationInfo.hashId}) stopped (${this.numberOfStartedChargingStations.toString()} started from ${this.numberOfAddedChargingStations.toString()} added charging station(s))`
)
}
return new URL(
`${wsConnectionBaseUrlStr}${
!wsConnectionBaseUrlStr.endsWith('/') ? '/' : ''
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}${this.stationInfo?.chargingStationId}`
)
}
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
isNaN(connectorChargingProfilesLimit!)
? Number.POSITIVE_INFINITY
- : // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- connectorChargingProfilesLimit!
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ : connectorChargingProfilesLimit!
)
}
}
this.stationInfo?.autoRegister === false &&
logger.warn(
- `${this.logPrefix()} Heartbeat interval configuration key not set, using default value: ${
- Constants.DEFAULT_HEARTBEAT_INTERVAL.toString()
- }`
+ `${this.logPrefix()} Heartbeat interval configuration key not set, using default value: ${Constants.DEFAULT_HEARTBEAT_INTERVAL.toString()}`
)
return Constants.DEFAULT_HEARTBEAT_INTERVAL
}
public startMeterValues (connectorId: number, interval: number): void {
if (connectorId === 0) {
- logger.error(`${this.logPrefix()} Trying to start MeterValues on connector id ${connectorId.toString()}`)
+ logger.error(
+ `${this.logPrefix()} Trying to start MeterValues on connector id ${connectorId.toString()}`
+ )
return
}
const connectorStatus = this.getConnectorStatus(connectorId)
}
} else {
for (const connectorId of this.connectors.keys()) {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- connectorsPhaseRotation.push(getPhaseRotationValue(connectorId, this.getNumberOfPhases())!)
+ connectorsPhaseRotation.push(
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
+ getPhaseRotationValue(connectorId, this.getNumberOfPhases())!
+ )
}
}
addConfigurationKey(
}
if (!this.isRegistered()) {
logger.error(
- `${this.logPrefix()} Registration failure: maximum retries reached (${registrationRetryCount.toString()}) or retry disabled (${
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- this.stationInfo?.registrationMaxRetries?.toString()
- })`
+ `${this.logPrefix()} Registration failure: maximum retries reached (${registrationRetryCount.toString()}) or retry disabled (${// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ this.stationInfo?.registrationMaxRetries?.toString()})`
)
}
this.emit(ChargingStationEvents.updated)
logger.warn(
`${logPrefix} Connector id ${connectorId.toString()} at initialization has a transaction started with id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connectors.get(connectorId)?.transactionId?.toString()
- }`
+ connectors.get(connectorId)?.transactionId?.toString()}`
)
}
if (connectorId === 0) {
chargingStation.stationInfo!.maximumPower!
if (limit > chargingStationMaximumPower) {
logger.error(
- `${chargingStation.logPrefix()} ${moduleName}.getChargingStationChargingProfilesLimit: Charging profile id ${
- chargingProfilesLimit.chargingProfile.chargingProfileId.toString()
- } limit ${limit.toString()} is greater than charging station maximum ${chargingStationMaximumPower.toString()}: %j`,
+ `${chargingStation.logPrefix()} ${moduleName}.getChargingStationChargingProfilesLimit: Charging profile id ${chargingProfilesLimit.chargingProfile.chargingProfileId.toString()} limit ${limit.toString()} is greater than charging station maximum ${chargingStationMaximumPower.toString()}: %j`,
chargingProfilesLimit
)
return chargingStationMaximumPower
chargingStation.stationInfo!.maximumPower! / chargingStation.powerDivider!
if (limit > connectorMaximumPower) {
logger.error(
- `${chargingStation.logPrefix()} ${moduleName}.getConnectorChargingProfilesLimit: Charging profile id ${
- chargingProfilesLimit.chargingProfile.chargingProfileId.toString()
- } limit ${limit.toString()} is greater than connector ${connectorId.toString()} maximum ${connectorMaximumPower.toString()}: %j`,
+ `${chargingStation.logPrefix()} ${moduleName}.getConnectorChargingProfilesLimit: Charging profile id ${chargingProfilesLimit.chargingProfile.chargingProfileId.toString()} limit ${limit.toString()} is greater than connector ${connectorId.toString()} maximum ${connectorMaximumPower.toString()}: %j`,
chargingProfilesLimit
)
return connectorMaximumPower
(isValidDate(chargingProfile.validTo) && isAfter(currentDate, chargingProfile.validTo))
) {
logger.debug(
- `${logPrefix} ${moduleName}.canProceedChargingProfile: Charging profile id ${
- chargingProfile.chargingProfileId.toString()
- } is not valid for the current date ${
+ `${logPrefix} ${moduleName}.canProceedChargingProfile: Charging profile id ${chargingProfile.chargingProfileId.toString()} is not valid for the current date ${
isDate(currentDate) ? currentDate.toISOString() : currentDate.toString()
}`
)
logger.warn(
`${logPrefix} ${moduleName}.checkRecurringChargingProfileDuration: Recurring ${
chargingProfile.chargingProfileKind
- } charging profile id ${
- chargingProfile.chargingProfileId.toString()
- } duration is not defined, set it to the recurrency time interval duration ${differenceInSeconds(
+ } charging profile id ${chargingProfile.chargingProfileId.toString()} duration is not defined, set it to the recurrency time interval duration ${differenceInSeconds(
interval.end,
interval.start
).toString()}`
logger.warn(
`${logPrefix} ${moduleName}.checkRecurringChargingProfileDuration: Recurring ${
chargingProfile.chargingProfileKind
- } charging profile id ${chargingProfile.chargingProfileId.toString()} duration ${
- chargingProfile.chargingSchedule.duration.toString()
- } is greater than the recurrency time interval duration ${differenceInSeconds(
+ } charging profile id ${chargingProfile.chargingProfileId.toString()} duration ${chargingProfile.chargingSchedule.duration.toString()} is greater than the recurrency time interval duration ${differenceInSeconds(
interval.end,
interval.start
).toString()}`
await this.chargingStation.ocppRequestService.requestHandler<
StartTransactionRequest,
StartTransactionResponse
- >(this.chargingStation, RequestCommand.START_TRANSACTION, requestPayload as StartTransactionRequest, requestParams),
+ >(
+ this.chargingStation,
+ RequestCommand.START_TRANSACTION,
+ requestPayload as StartTransactionRequest,
+ requestParams
+ ),
],
[
BroadcastChannelProcedureName.STOP_TRANSACTION,
await this.chargingStation.ocppRequestService.requestHandler<
AuthorizeRequest,
AuthorizeResponse
- >(this.chargingStation, RequestCommand.AUTHORIZE, requestPayload as AuthorizeRequest, requestParams),
+ >(
+ this.chargingStation,
+ RequestCommand.AUTHORIZE,
+ requestPayload as AuthorizeRequest,
+ requestParams
+ ),
],
[
BroadcastChannelProcedureName.BOOT_NOTIFICATION,
await this.chargingStation.ocppRequestService.requestHandler<
HeartbeatRequest,
HeartbeatResponse
- >(this.chargingStation, RequestCommand.HEARTBEAT, requestPayload as HeartbeatRequest, requestParams),
+ >(
+ this.chargingStation,
+ RequestCommand.HEARTBEAT,
+ requestPayload as HeartbeatRequest,
+ requestParams
+ ),
],
[
BroadcastChannelProcedureName.METER_VALUES,
await this.chargingStation.ocppRequestService.requestHandler<
DataTransferRequest,
DataTransferResponse
- >(this.chargingStation, RequestCommand.DATA_TRANSFER, requestPayload as DataTransferRequest, requestParams),
+ >(
+ this.chargingStation,
+ RequestCommand.DATA_TRANSFER,
+ requestPayload as DataTransferRequest,
+ requestParams
+ ),
],
[
BroadcastChannelProcedureName.DIAGNOSTICS_STATUS_NOTIFICATION,
case BroadcastChannelProcedureName.START_TRANSACTION:
case BroadcastChannelProcedureName.STOP_TRANSACTION:
case BroadcastChannelProcedureName.AUTHORIZE:
- if ((commandResponse as
- | StartTransactionResponse
- | StopTransactionResponse
- | AuthorizeResponse).idTagInfo?.status === AuthorizationStatus.ACCEPTED) {
+ if (
+ (
+ commandResponse as StartTransactionResponse | StopTransactionResponse | AuthorizeResponse
+ ).idTagInfo?.status === AuthorizationStatus.ACCEPTED
+ ) {
return ResponseStatus.SUCCESS
}
return ResponseStatus.FAILURE
`${chargingStation.logPrefix()} Remote start transaction ACCEPTED on ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
chargingStation.stationInfo?.chargingStationId
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}#${connectorId?.toString()} for idTag '${idTag}'`
)
} else {
`${chargingStation.logPrefix()} Remote start transaction REJECTED on ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
chargingStation.stationInfo?.chargingStationId
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}#${connectorId?.toString()} for idTag '${idTag}'`
)
}
return OCPP16Constants.OCPP_RESPONSE_UNLOCK_NOT_SUPPORTED
}
if (connectorId === 0) {
- logger.error(`${chargingStation.logPrefix()} Trying to unlock connector id ${connectorId.toString()}`)
+ logger.error(
+ `${chargingStation.logPrefix()} Trying to unlock connector id ${connectorId.toString()}`
+ )
return OCPP16Constants.OCPP_RESPONSE_UNLOCK_NOT_SUPPORTED
}
if (chargingStation.getConnectorStatus(connectorId)?.transactionStarted === true) {
logger.error(
`${chargingStation.logPrefix()} Trying to set transaction charging profile(s) on connector ${connectorId.toString()} with a different transaction id ${
csChargingProfiles.transactionId.toString()
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
} than the started transaction id ${connectorStatus.transactionId?.toString()}`
)
return OCPP16Constants.OCPP_SET_CHARGING_PROFILE_RESPONSE_REJECTED
for (const chargingProfile of chargingProfiles) {
if (chargingProfile.chargingSchedule.startSchedule == null) {
logger.debug(
- `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${
- chargingProfile.chargingProfileId.toString()
- } has no startSchedule defined. Trying to set it to the connector current transaction start date`
+ `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${chargingProfile.chargingProfileId.toString()} has no startSchedule defined. Trying to set it to the connector current transaction start date`
)
// OCPP specifies that if startSchedule is not defined, it should be relative to start of the connector transaction
chargingProfile.chargingSchedule.startSchedule = connectorStatus?.transactionStart
}
if (!isDate(chargingProfile.chargingSchedule.startSchedule)) {
logger.warn(
- `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${
- chargingProfile.chargingProfileId.toString()
- } startSchedule property is not a Date instance. Trying to convert it to a Date instance`
+ `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${chargingProfile.chargingProfileId.toString()} startSchedule property is not a Date instance. Trying to convert it to a Date instance`
)
chargingProfile.chargingSchedule.startSchedule = convertToDate(
chargingProfile.chargingSchedule.startSchedule
}
if (chargingProfile.chargingSchedule.duration == null) {
logger.debug(
- `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${
- chargingProfile.chargingProfileId.toString()
- } has no duration defined and will be set to the maximum time allowed`
+ `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${chargingProfile.chargingProfileId.toString()} has no duration defined and will be set to the maximum time allowed`
)
// OCPP specifies that if duration is not defined, it should be infinite
chargingProfile.chargingSchedule.duration = differenceInSeconds(
}#${connectorId.toString()}, idTag '${idTag}', availability '${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
connectorStatus?.availability
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}', status '${connectorStatus?.status}'`
)
return OCPP16Constants.OCPP_RESPONSE_REJECTED
if (accessResponse.code === 220) {
ftpClient.trackProgress(info => {
logger.info(
- `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetDiagnostics: ${
- (info.bytes / 1024).toString()
- } bytes transferred from diagnostics archive ${info.name}`
+ `${chargingStation.logPrefix()} ${moduleName}.handleRequestGetDiagnostics: ${(
+ info.bytes / 1024
+ ).toString()} bytes transferred from diagnostics archive ${info.name}`
)
chargingStation.ocppRequestService
.requestHandler<
}
if (!Number.isSafeInteger(payload.transactionId)) {
logger.warn(
- `${chargingStation.logPrefix()} Trying to start a transaction on connector id ${connectorId.toString()} with a non integer transaction id ${
- payload.transactionId.toString()
- }, converting to integer`
+ `${chargingStation.logPrefix()} Trying to start a transaction on connector id ${connectorId.toString()} with a non integer transaction id ${payload.transactionId.toString()}, converting to integer`
)
payload.transactionId = convertToInt(payload.transactionId)
}
if (reservation != null) {
if (reservation.idTag !== requestPayload.idTag) {
logger.warn(
- `${chargingStation.logPrefix()} Reserved transaction ${
- payload.transactionId.toString()
- } started with a different idTag ${
+ `${chargingStation.logPrefix()} Reserved transaction ${payload.transactionId.toString()} started with a different idTag ${
requestPayload.idTag
} than the reservation one ${reservation.idTag}`
)
}
if (hasReservationExpired(reservation)) {
logger.warn(
- `${chargingStation.logPrefix()} Reserved transaction ${
- payload.transactionId.toString()
- } started with expired reservation ${
- requestPayload.reservationId.toString()
- } (expiry date: ${reservation.expiryDate.toISOString()}))`
+ `${chargingStation.logPrefix()} Reserved transaction ${payload.transactionId.toString()} started with expired reservation ${requestPayload.reservationId.toString()} (expiry date: ${reservation.expiryDate.toISOString()}))`
)
}
await chargingStation.removeReservation(
)
} else {
logger.warn(
- `${chargingStation.logPrefix()} Reserved transaction ${
- payload.transactionId.toString()
- } started with unknown reservation ${requestPayload.reservationId.toString()}`
+ `${chargingStation.logPrefix()} Reserved transaction ${payload.transactionId.toString()} started with unknown reservation ${requestPayload.reservationId.toString()}`
)
}
}
)
} else {
logger.warn(
- `${chargingStation.logPrefix()} Starting transaction with id ${
- payload.transactionId.toString()
- } REJECTED on ${
+ `${chargingStation.logPrefix()} Starting transaction with id ${payload.transactionId.toString()} REJECTED on ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
chargingStation.stationInfo?.chargingStationId
}#${connectorId.toString()} with status '${payload.idTagInfo.status}', idTag '${
requestPayload.idTag
}'${
OCPP16ServiceUtils.hasReservation(chargingStation, connectorId, requestPayload.idTag)
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- ? `, reservationId '${requestPayload.reservationId?.toString()}'`
+ ? // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ `, reservationId '${requestPayload.reservationId?.toString()}'`
: ''
}`
)
)
if (transactionConnectorId == null) {
logger.error(
- `${chargingStation.logPrefix()} Trying to stop a non existing transaction with id ${
- requestPayload.transactionId.toString()
- }`
+ `${chargingStation.logPrefix()} Trying to stop a non existing transaction with id ${requestPayload.transactionId.toString()}`
)
return
}
}
resetConnectorStatus(chargingStation.getConnectorStatus(transactionConnectorId))
chargingStation.stopMeterValues(transactionConnectorId)
- const logMsg = `${chargingStation.logPrefix()} Transaction with id ${
- requestPayload.transactionId.toString()
- } STOPPED on ${
+ const logMsg = `${chargingStation.logPrefix()} Transaction with id ${requestPayload.transactionId.toString()} STOPPED on ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
chargingStation.stationInfo?.chargingStationId
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}#${transactionConnectorId.toString()} with status '${payload.idTagInfo?.status}'`
if (
payload.idTagInfo == null ||
MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
}: connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${socMinimumValue.toString()}/${
+ connector?.transactionId?.toString()}, value: ${socMinimumValue.toString()}/${
meterValue.sampledValue[sampledValuesIndex].value
}/${socMaximumValue.toString()}`
)
checkMeasurandPowerDivider(chargingStation, powerSampledValueTemplate.measurand)
const errMsg = `MeterValues measurand ${
powerSampledValueTemplate.measurand ?? MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}: Unknown ${chargingStation.stationInfo.currentOutType} currentOutType in template file ${
chargingStation.templateFile
}, cannot calculate ${
MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
}: connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${connectorMinimumPowerRounded.toString()}/${
+ connector?.transactionId?.toString()}, value: ${connectorMinimumPowerRounded.toString()}/${
meterValue.sampledValue[sampledValuesIndex].value
}/${connectorMaximumPowerRounded.toString()}`
)
powerPerPhaseSampledValueTemplates[
`L${phase.toString()}` as keyof MeasurandPerPhaseSampledValueTemplates
] ?? powerSampledValueTemplate,
- powerMeasurandValues[`L${phase.toString()}` as keyof MeasurandPerPhaseSampledValueTemplates],
+ powerMeasurandValues[
+ `L${phase.toString()}` as keyof MeasurandPerPhaseSampledValueTemplates
+ ],
undefined,
phaseValue as MeterValuePhase
)
meterValue.sampledValue[sampledValuesPerPhaseIndex].phase
}, connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${connectorMinimumPowerPerPhaseRounded.toString()}/${
+ connector?.transactionId?.toString()}, value: ${connectorMinimumPowerPerPhaseRounded.toString()}/${
meterValue.sampledValue[sampledValuesPerPhaseIndex].value
}/${connectorMaximumPowerPerPhaseRounded.toString()}`
)
checkMeasurandPowerDivider(chargingStation, currentSampledValueTemplate.measurand)
const errMsg = `MeterValues measurand ${
currentSampledValueTemplate.measurand ?? MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}: Unknown ${chargingStation.stationInfo.currentOutType} currentOutType in template file ${
chargingStation.templateFile
}, cannot calculate ${
MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
}: connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${connectorMinimumAmperage.toString()}/${
+ connector?.transactionId?.toString()}, value: ${connectorMinimumAmperage.toString()}/${
meterValue.sampledValue[sampledValuesIndex].value
}/${connectorMaximumAmperage.toString()}`
)
meterValue.sampledValue[sampledValuesPerPhaseIndex].phase
}, connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${connectorMinimumAmperage.toString()}/${
+ connector?.transactionId?.toString()}, value: ${connectorMinimumAmperage.toString()}/${
meterValue.sampledValue[sampledValuesPerPhaseIndex].value
}/${connectorMaximumAmperage.toString()}`
)
MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
}: connector id ${connectorId.toString()}, transaction id ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
- connector?.transactionId?.toString()
- }, value: ${connectorMinimumEnergyRounded.toString()}/${energyValueRounded.toString()}/${connectorMaximumEnergyRounded.toString()}, duration: ${interval.toString()}ms`
+ connector?.transactionId?.toString()}, value: ${connectorMinimumEnergyRounded.toString()}/${energyValueRounded.toString()}/${connectorMaximumEnergyRounded.toString()}, duration: ${interval.toString()}ms`
)
}
}
logger.error(
`${logPrefix(
' UI WebSocket Server |'
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
)} Unsupported protocol: '${protocol}' or protocol version: '${version}'`
)
return false
`${this.logPrefix(
moduleName,
'sendResponse'
- )} Error at sending response id '${responseId}', WebSocket is not open: ${
- ws.readyState.toString()
- }`
+ )} Error at sending response id '${responseId}', WebSocket is not open: ${ws.readyState.toString()}`
)
}
} else {
private handleListChargingStations (): ResponsePayload {
return {
status: ResponseStatus.SUCCESS,
- chargingStations: [...this.uiServer.chargingStations.values()],
+ chargingStations: [...this.uiServer.chargingStations.values()] as JsonType[],
} satisfies ResponsePayload
}
`${this.logPrefix()} storage enabled: type ${
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
performanceStorageConfiguration.type
- // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
+ // eslint-disable-next-line @typescript-eslint/restrict-template-expressions
}, uri: ${performanceStorageConfiguration.uri}`
)
}
ocppConfiguration: ChargingStationOcppConfiguration
supervisionUrl: string
wsState?:
- | typeof WebSocket.CONNECTING
- | typeof WebSocket.OPEN
- | typeof WebSocket.CLOSING
- | typeof WebSocket.CLOSED
+ | typeof WebSocket.CONNECTING
+ | typeof WebSocket.OPEN
+ | typeof WebSocket.CLOSING
+ | typeof WebSocket.CLOSED
bootNotificationResponse?: BootNotificationResponse
automaticTransactionGenerator?: ChargingStationAutomaticTransactionGeneratorConfiguration
}
"@typescript-eslint/parser": "^7.16.0",
"@vitejs/plugin-vue": "^5.0.5",
"@vitejs/plugin-vue-jsx": "^4.0.0",
- "@vitest/coverage-v8": "^2.0.2",
+ "@vitest/coverage-v8": "^2.0.3",
"@vue/eslint-config-prettier": "^9.0.0",
"@vue/eslint-config-typescript": "^13.0.0",
"@vue/test-utils": "^2.4.6",
"rimraf": "^6.0.1",
"typescript": "~5.5.3",
"vite": "^5.3.3",
- "vitest": "^2.0.2"
+ "vitest": "^2.0.3"
}
}