{ "name": "box-repo", "version": "1.0.0", "private": true, "scripts": { "build:mgnt": "nest build box-mgnt-api", "build:app": "nest build box-app-api", "build:stats": "nest build box-stats-api", "dev:mgnt": "nest start box-mgnt-api --watch", "dev:app": "dotenv -e .env -- nest start box-app-api --watch", "dev:stats": "dotenv -e .env -- nest start box-stats-api --watch", "start:mgnt": "dotenv -e .env -- node dist/apps/box-mgnt-api/src/main.js", "start:app": "dotenv -e .env -- node dist/apps/box-app-api/src/main.js", "start:stats": "dotenv -e .env -- node dist/apps/box-stats-api/src/main.js", "prisma:migrate:box-admin": "dotenv -e .env -- prisma db push --schema=prisma/mongo/schema", "prisma:migrate:box-stats": "dotenv -e .env -- prisma db push --schema=prisma/mongo-stats/schema", "prisma:generate:box-admin": "dotenv -e .env -- prisma generate --schema=prisma/mongo/schema", "prisma:generate:box-stats": "dotenv -e .env -- prisma generate --schema=prisma/mongo-stats/schema", "prisma:generate": "pnpm prisma:generate:box-admin && pnpm prisma:generate:box-stats", "prisma:seed:box-admin:admin": "dotenv -e .env -- ts-node -P tsconfig.seed.json prisma/mongo/seed-admin.ts", "prisma:seed:box-admin:menus": "dotenv -e .env -- ts-node -P tsconfig.seed.json prisma/mongo/seed-menus.ts", "prisma:seed:box-admin": "dotenv -e .env -- ts-node -P tsconfig.seed.json prisma/mongo/seed.ts", "prisma:seed:box-stats": "dotenv -e .env -- ts-node -P tsconfig.seed.json prisma/mongo-stats/seed.ts", "prisma:seed:box-admin:ads": "dotenv -e .env -- ts-node -T prisma/mongo/seed-ads.ts", "prisma:seed:box-admin:sys-config": "dotenv -e .env -- ts-node -P tsconfig.seed.json prisma/mongo/seed-sys-config.ts", "prisma:seed:box-admin:ads:clean": "dotenv -e .env -- ts-node -T prisma/mongo/seed-ads.ts --clean", "seed:ads": "dotenv -e .env -- ts-node -T prisma/seed-ads.ts", "seed:ads:clean": "dotenv -e .env -- ts-node -T prisma/seed-ads.ts --clean", "typecheck": "tsc --noEmit --project tsconfig.base.json", "typecheck:watch": "tsc --noEmit --watch --project tsconfig.base.json", "lint": "eslint \"{apps,libs}/**/*.ts\" --max-warnings 0", "lint:cachekeys": "bash scripts/check-cachekeys.sh", "lint:fix": "eslint \"{apps,libs}/**/*.ts\" --fix" }, "dependencies": { "@aws-sdk/client-s3": "3.828.0", "@aws-sdk/s3-presigned-post": "3.828.0", "@aws-sdk/s3-request-presigner": "3.828.0", "@fastify/multipart": "^7.7.3", "@fastify/static": "^6.12.0", "@nestjs/axios": "^3.0.2", "@nestjs/cache-manager": "^2.3.0", "@nestjs/common": "^10.3.8", "@nestjs/config": "^3.3.0", "@nestjs/core": "^10.3.8", "@nestjs/devtools-integration": "^0.1.6", "@nestjs/jwt": "^10.2.0", "@nestjs/mapped-types": "^2.0.5", "@nestjs/passport": "^10.0.3", "@nestjs/platform-express": "^10.4.20", "@nestjs/platform-fastify": "^10.3.8", "@nestjs/schedule": "^6.0.1", "@nestjs/swagger": "^7.0.0", "@prisma/client": "^5.15.0", "amqplib": "^0.10.9", "axios": "^1.6.8", "bcrypt": "^5.1.1", "bignumber.js": "^9.1.2", "bowser": "^2.11.0", "bson-objectid": "^2.0.4", "cache-manager": "^5.5.2", "cache-manager-ioredis-yet": "^2.1.2", "class-transformer": "^0.5.1", "class-validator": "^0.14.1", "class-validator-extended": "^4.0.0", "compression": "^1.8.1", "dayjs": "^1.11.11", "dotenv": "^16.5.0", "exceljs": "^4.4.0", "express": "^4.21.2", "fastify": "^4.26.2", "helmet": "^8.1.0", "ioredis": "^5.8.2", "lib-qqwry": "^1.3.4", "lodash": "^4.17.21", "mongodb": "^6.20.0", "multer": "^2.0.0", "nestjs-pino": "^4.0.0", "otplib": "^12.0.1", "passport": "^0.7.0", "passport-jwt": "^4.0.1", "passport-local": "^1.0.0", "path-to-regexp": "^6.2.2", "pino": "^9.0.0", "pino-http": "^9.0.0", "pino-pretty": "^11.0.0", "pinyin-pro": "^3.26.0", "qrcode": "^1.5.4", "reflect-metadata": "^0.2.2", "rxjs": "^7.8.1", "uuid": "^13.0.0", "xlsx": "^0.18.5" }, "devDependencies": { "@nestjs/cli": "^10.3.2", "@nestjs/schematics": "^10.1.1", "@nestjs/testing": "^10.4.20", "@swc/cli": "^0.3.12", "@swc/core": "^1.4.17", "@types/ali-oss": "^6.16.11", "@types/bcrypt": "^5.0.2", "@types/express": "^5.0.2", "@types/jest": "^30.0.0", "@types/lodash": "^4.17.1", "@types/mongodb": "^4.0.7", "@types/multer": "^1.4.12", "@types/node": "^20.12.8", "@types/otplib": "^10.0.0", "@types/passport-jwt": "^4.0.1", "@types/passport-local": "^1.0.38", "@types/supertest": "^6.0.2", "@types/uuid": "^11.0.0", "@types/xlsx": "^0.0.36", "@typescript-eslint/eslint-plugin": "^7.8.0", "@typescript-eslint/parser": "^7.8.0", "dotenv-cli": "^7.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.1.3", "jest": "^30.1.3", "prettier": "^3.2.5", "prisma": "^5.15.0", "source-map-support": "^0.5.21", "supertest": "^7.1.4", "ts-jest": "^29.4.1", "ts-loader": "^9.5.1", "ts-node": "^10.9.2", "tsconfig-paths": "^4.2.0", "tsx": "^4.20.6", "typescript": "^5.4.5" } }