ad92c196df8a50058bbfc31097594f8d75231434
[e-mobility-charging-stations-simulator.git] / package.json
1 {
2 "$schema": "https://json.schemastore.org/package",
3 "name": "e-mobility-charging-stations-simulator",
4 "version": "2.0.1",
5 "engines": {
6 "node": ">=20.0.0",
7 "pnpm": ">=9.0.0"
8 },
9 "volta": {
10 "node": "22.11.0",
11 "pnpm": "9.14.2"
12 },
13 "packageManager": "pnpm@9.14.2",
14 "repository": {
15 "type": "git",
16 "url": "https://github.com/sap/e-mobility-charging-stations-simulator.git"
17 },
18 "description": "Electric vehicle charging stations simulator",
19 "author": "SAP E-Mobility <e-mobility@sap.com>",
20 "keywords": [
21 "ocpp",
22 "ocpp-j",
23 "ocpp1.6",
24 "ocpp2.0",
25 "charging station",
26 "load testing"
27 ],
28 "contributors": [
29 {
30 "name": "Jérôme Benoit",
31 "email": "jerome.benoit@piment-noir.org",
32 "url": "https://github.com/jerome-benoit"
33 }
34 ],
35 "license": "Apache-2.0",
36 "licenses": [
37 {
38 "type": "Apache-2.0",
39 "url": "http://www.apache.org/licenses/LICENSE-2.0"
40 }
41 ],
42 "type": "module",
43 "exports": "./dist/start.js",
44 "mikro-orm": {
45 "tsConfigPath": "./tsconfig-mikro-orm.json",
46 "useTsNode": true
47 },
48 "scripts": {
49 "prepare": "node scripts/prepare.js",
50 "build-requirements": "node scripts/build-requirements.js",
51 "start": "pnpm build && cross-env NODE_ENV=production node dist/start.js",
52 "start:dev": "pnpm build:dev && cross-env NODE_ENV=development node --enable-source-maps dist/start.js",
53 "start:dev:debug": "pnpm build:dev && cross-env NODE_ENV=development node --enable-source-maps --inspect dist/start.js",
54 "start:prof": "cross-env NODE_ENV=production node --enable-source-maps --prof dist/start.js",
55 "start:doctorprof": "cross-env NODE_ENV=production clinic doctor -- node --enable-source-maps dist/start.js",
56 "start:flameprof": "cross-env NODE_ENV=production clinic flame -- node --enable-source-maps dist/start.js",
57 "start:bubbleprof": "cross-env NODE_ENV=production clinic bubbleprof -- node --enable-source-maps dist/start.js",
58 "start:heapprofiler": "cross-env NODE_ENV=production clinic heapprofiler -- node --enable-source-maps dist/start.js",
59 "esbuild": "pnpm build-requirements && node scripts/bundle.js",
60 "build": "pnpm esbuild",
61 "build:dev": "cross-env BUILD=development pnpm esbuild",
62 "build:cf": "pnpm clean:node_modules && pnpm exec cross-env SKIP_PREINSTALL=1 npm install && pnpm build",
63 "build:cf:dev": "pnpm clean:node_modules && pnpm exec cross-env SKIP_PREINSTALL=1 npm install && pnpm build:dev",
64 "build:entities": "tsc -p tsconfig-mikro-orm.json",
65 "clean:dist": "pnpm exec rimraf dist",
66 "clean:node_modules": "pnpm exec rimraf node_modules",
67 "lint": "cross-env TIMING=1 eslint --cache src tests scripts ./*.js ./*.ts",
68 "lint:fix": "cross-env TIMING=1 eslint --cache --fix src tests scripts ./*.js ./*.ts",
69 "format": "prettier --cache --write .; eslint --cache --fix src tests scripts ./*.js ./*.ts",
70 "test": "glob -c \"c8 node --import tsx --test\" \"tests/**/*.test.ts\"",
71 "test:debug": "glob -c \"node --import tsx --test --inspect\" \"tests/**/*.test.ts\"",
72 "coverage": "c8 report --reporter=lcov",
73 "coverage:html": "c8 report --reporter=html",
74 "clinic:clean": "clinic clean",
75 "sea": "pnpm exec rimraf ./dist/evse-simulator ./dist/evse-simulator.blob && node --experimental-sea-config sea-config.json && pnpm dlx ncp $(volta which node || n which lts || nvm which node || command -v node) ./dist/evse-simulator && pnpm dlx postject ./dist/evse-simulator NODE_SEA_BLOB ./dist/evse-simulator.blob --sentinel-fuse NODE_SEA_FUSE_fce680ab2cc467b6e072b8b5df1996b2 && pnpm exec rimraf ./dist/evse-simulator.blob"
76 },
77 "pnpm": {
78 "overrides": {
79 "cacheable-request": "^10.2.10",
80 "d3-color": "^3.1.0",
81 "ejs": "^3.1.9",
82 "got": "^12.6.1",
83 "semver": "^7.5.3",
84 "uuid": "^9.0.0",
85 "tough-cookie": "^4.1.3"
86 }
87 },
88 "dependencies": {
89 "@mikro-orm/core": "^6.4.0",
90 "@mikro-orm/mariadb": "^6.4.0",
91 "@mikro-orm/reflection": "^6.4.0",
92 "@mikro-orm/sqlite": "^6.4.0",
93 "ajv": "^8.17.1",
94 "ajv-formats": "^3.0.1",
95 "basic-ftp": "^5.0.5",
96 "chalk": "^5.3.0",
97 "date-fns": "^4.1.0",
98 "http-status-codes": "^2.3.0",
99 "logform": "^2.7.0",
100 "mnemonist": "0.40.0-rc1",
101 "mongodb": "^6.11.0",
102 "poolifier": "^4.4.5",
103 "rambda": "^9.4.0",
104 "tar": "^7.4.3",
105 "winston": "^3.17.0",
106 "winston-daily-rotate-file": "^5.0.0",
107 "ws": "^8.18.0"
108 },
109 "optionalDependencies": {
110 "bufferutil": "^4.0.8",
111 "utf-8-validate": "^6.0.5"
112 },
113 "devDependencies": {
114 "@commitlint/cli": "^19.6.0",
115 "@commitlint/config-conventional": "^19.6.0",
116 "@cspell/eslint-plugin": "^8.16.0",
117 "@eslint/js": "^9.15.0",
118 "@mikro-orm/cli": "^6.4.0",
119 "@std/expect": "npm:@jsr/std__expect@^1.0.8",
120 "@types/node": "^22.10.0",
121 "@types/semver": "^7.5.8",
122 "@types/ws": "^8.5.13",
123 "c8": "^10.1.2",
124 "clinic": "^13.0.0",
125 "cross-env": "^7.0.3",
126 "esbuild": "^0.24.0",
127 "esbuild-plugin-clean": "^1.0.1",
128 "esbuild-plugin-copy": "^2.1.1",
129 "eslint": "^9.15.0",
130 "eslint-define-config": "^2.1.0",
131 "eslint-plugin-jsdoc": "^50.5.0",
132 "eslint-plugin-perfectionist": "^4.1.2",
133 "eslint-plugin-vue": "^9.31.0",
134 "glob": "^11.0.0",
135 "husky": "^9.1.7",
136 "lint-staged": "^15.2.10",
137 "neostandard": "^0.11.9",
138 "prettier": "^3.4.0",
139 "rimraf": "^6.0.1",
140 "semver": "^7.6.3",
141 "ts-node": "^10.9.2",
142 "tsx": "^4.19.2",
143 "typescript": "~5.7.2"
144 }
145 }