workspace/projects/gamilit/apps/backend/package.json
rckrdmrd 49155822ae fix: Resolve TypeScript compilation errors across all projects
Platform Marketing Content:
- Add PaginationParams, PaginationMeta, PaginatedResponse interfaces
- Fix JwtAuthGuard import paths (common/guards instead of modules/auth)
- Add missing fields to CRM interfaces (address, keywords, features, benefits)
- Install @nestjs/throttler dependency

ERP Suite - Construccion:
- Create tsconfig.node.json for web frontend
- Add vite-env.d.ts for Vite types
- Fix implicit return errors in Express controllers
- Prefix unused parameters with underscore

ERP Suite - ERP Core:
- Export PoolClient type from database config
- Fix invoice type comparison (customer/supplier vs out_invoice)
- Refactor base.service.ts query handling for proper type inference
- Rename Role type to RoleType to avoid conflict with entity
- Fix ProtectedRoute to use role?.name instead of roles array

ERP Suite - POS Micro:
- Add vite-env.d.ts for Vite types
- Fix Sale property names (discountAmount, changeAmount)
- Export TodaySummary interface from sales service

All projects now pass npm install and npm run build successfully.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-08 22:35:55 -06:00

96 lines
2.9 KiB
JSON

{
"name": "@gamilit/backend",
"version": "1.0.0",
"description": "GAMILIT Backend - Educational Gamification Platform",
"main": "dist/main.js",
"scripts": {
"build": "tsc",
"start": "node -r tsconfig-paths/register dist/main.js",
"dev": "ts-node-dev --respawn --transpile-only -r tsconfig-paths/register src/main.ts",
"prod": "NODE_ENV=production node -r tsconfig-paths/register dist/main.js",
"test": "jest",
"test:watch": "jest --watch",
"test:cov": "jest --coverage",
"lint": "eslint \"{src,__tests__}/**/*.ts\"",
"format": "prettier --write \"src/**/*.ts\" \"__tests__/**/*.ts\"",
"generate:vapid": "node scripts/generate-vapid-keys.js"
},
"dependencies": {
"@nestjs/cache-manager": "^3.0.1",
"@nestjs/common": "^11.1.8",
"@nestjs/config": "^4.0.2",
"@nestjs/core": "^11.1.8",
"@nestjs/jwt": "^11.0.1",
"@nestjs/passport": "^11.0.5",
"@nestjs/platform-express": "^11.1.8",
"@nestjs/platform-socket.io": "^11.1.8",
"@nestjs/schedule": "^6.0.1",
"@nestjs/swagger": "^11.2.1",
"@nestjs/terminus": "^11.0.0",
"@nestjs/throttler": "^6.0.0",
"@nestjs/typeorm": "^11.0.0",
"@nestjs/websockets": "^11.1.8",
"@types/nodemailer": "^7.0.4",
"bcrypt": "^5.1.1",
"cache-manager": "^6.0.0",
"class-transformer": "^0.5.1",
"class-validator": "^0.14.2",
"compression": "^1.7.4",
"cors": "^2.8.5",
"dotenv": "^16.4.7",
"express": "^4.18.2",
"express-rate-limit": "^7.5.0",
"helmet": "^8.1.0",
"joi": "^18.0.1",
"jsonwebtoken": "^9.0.2",
"nodemailer": "^7.0.11",
"passport": "^0.7.0",
"passport-jwt": "^4.0.1",
"passport-local": "^1.0.0",
"pg": "^8.11.3",
"reflect-metadata": "^0.1.14",
"rxjs": "^7.8.1",
"sanitize-html": "^2.11.0",
"socket.io": "^4.8.1",
"typeorm": "^0.3.22",
"web-push": "^3.6.7",
"winston": "^3.18.3"
},
"devDependencies": {
"@faker-js/faker": "^9.3.0",
"@nestjs/testing": "^11.1.8",
"@types/bcrypt": "^6.0.0",
"@types/cache-manager": "^4.0.6",
"@types/compression": "^1.7.5",
"@types/cors": "^2.8.17",
"@types/express": "^4.17.21",
"@types/jest": "^29.5.11",
"@types/jsonwebtoken": "^9.0.5",
"@types/node": "^24.7.2",
"@types/passport": "^1.0.17",
"@types/passport-jwt": "^4.0.1",
"@types/passport-local": "^1.0.38",
"@types/pg": "^8.10.9",
"@types/sanitize-html": "^2.9.5",
"@eslint/js": "^9.17.0",
"typescript-eslint": "^8.18.0",
"eslint": "^9.17.0",
"eslint-plugin-import": "^2.32.0",
"globals": "^15.14.0",
"factory.ts": "^1.4.0",
"jest": "^29.7.0",
"jest-mock-extended": "^3.0.5",
"prettier": "^3.2.4",
"supertest": "^6.3.3",
"ts-jest": "^29.1.1",
"ts-node": "^10.9.2",
"ts-node-dev": "^2.0.0",
"tsconfig-paths": "^3.15.0",
"typescript": "^5.9.3"
},
"engines": {
"node": ">=18.0.0",
"npm": ">=9.0.0"
}
}