-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
55 lines (55 loc) · 2.4 KB
/
package.json
File metadata and controls
55 lines (55 loc) · 2.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
{
"name": "winbit-app",
"private": true,
"version": "1.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview",
"test": "vitest",
"test:ci": "vitest run",
"test:watch": "vitest --watch",
"test:coverage:raw": "vitest run --coverage",
"test:coverage": "node -e \"const { spawn } = require('child_process'); const cmd = process.platform === 'win32' ? 'npm.cmd' : 'npm'; const p = spawn(cmd, ['run','-s','test:coverage:raw'], { stdio: ['inherit','pipe','pipe'] }); let out=''; const on=(d)=>{ const s=d.toString(); out+=s; process.stdout.write(s); }; const onErr=(d)=>{ const s=d.toString(); out+=s; process.stderr.write(s); }; p.stdout.on('data', on); p.stderr.on('data', onErr); p.on('close', (code)=>{ const m = out.match(/^All files\\s*\\|\\s*([\\d.]+)\\s*\\|\\s*([\\d.]+)\\s*\\|\\s*([\\d.]+)\\s*\\|\\s*([\\d.]+)/m); if (m) { const stmts=m[1], branches=m[2], funcs=m[3], lines=m[4]; console.log('\\n=== Coverage Summary ===\\n' + 'Lines: ' + lines + '% | Stmts: ' + stmts + '% | Branch: ' + branches + '% | Funcs: ' + funcs + '%\\n' + '========================\\n'); } process.exit(code); });\"",
"lint": "eslint . --report-unused-disable-directives --max-warnings 0",
"format": "prettier . --write",
"format:check": "prettier . --check",
"prepush": "npm run lint && npm run format:check && npm run test:ci",
"prepare": "husky"
},
"dependencies": {
"@emailjs/browser": "^3.11.0",
"@tanstack/react-query": "^5.90.17",
"firebase": "^10.7.1",
"lucide-react": "^1.7.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.20.0",
"recharts": "^2.10.3"
},
"devDependencies": {
"@testing-library/jest-dom": "^6.1.5",
"@testing-library/react": "^14.1.2",
"@testing-library/user-event": "^14.5.1",
"@types/react": "^18.2.43",
"@types/react-dom": "^18.2.17",
"@vitejs/plugin-react": "^4.2.1",
"@vitest/coverage-v8": "^1.0.4",
"autoprefixer": "^10.4.16",
"eslint": "^8.55.0",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"eslint-plugin-react-refresh": "^0.4.5",
"husky": "^9.1.7",
"i18next": "^25.7.3",
"jsdom": "^23.0.1",
"postcss": "^8.4.32",
"prettier": "^3.7.4",
"react-i18next": "^16.5.0",
"tailwindcss": "^3.3.6",
"vite": "^5.0.8",
"vite-plugin-pwa": "^0.17.4",
"vitest": "^1.0.4"
}
}