- new NestJS service on port 3011/gRPC 50059 (ADR-026) - owns 6 config_ tables (plugin/role-mapping/role-layout/layout-tpl/user-override/outbox) - GraphQL Federation 2 subgraph with DataLoader + RouterAuthGuard - gRPC ConfigService + admin REST CRUD + user REST API - three-layer merge: registry.defaultProps + roleMapping.widget_props + userOverride.props - Redis cache with 5min TTL - registered in apollo-router supergraph + docker-compose + port-allocation Implements M3 of v2.1 migration plan.
52 lines
1.4 KiB
JSON
52 lines
1.4 KiB
JSON
{
|
|
"name": "@edu/config-service",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "nest start --watch",
|
|
"build": "nest build",
|
|
"start": "node dist/main.js",
|
|
"test": "vitest run",
|
|
"lint": "eslint src",
|
|
"typecheck": "tsc --noEmit"
|
|
},
|
|
"dependencies": {
|
|
"@apollo/subgraph": "^2.2.3",
|
|
"@edu/shared-ts": "workspace:*",
|
|
"@grpc/grpc-js": "^1.12.0",
|
|
"@grpc/proto-loader": "^0.7.13",
|
|
"@nestjs/apollo": "^12.2.0",
|
|
"@nestjs/common": "^10.4.0",
|
|
"@nestjs/core": "^10.4.0",
|
|
"@nestjs/graphql": "^12.2.0",
|
|
"@nestjs/microservices": "^10.4.0",
|
|
"@nestjs/platform-express": "^10.4.0",
|
|
"@opentelemetry/api": "^1.9.0",
|
|
"@opentelemetry/auto-instrumentations-node": "^0.50.0",
|
|
"@opentelemetry/exporter-trace-otlp-http": "^0.53.0",
|
|
"@opentelemetry/sdk-node": "^0.53.0",
|
|
"dataloader": "^2.2.2",
|
|
"drizzle-orm": "^0.31.0",
|
|
"graphql": "^16.9.0",
|
|
"ioredis": "^5.4.0",
|
|
"kafkajs": "^2.2.4",
|
|
"mysql2": "^3.11.0",
|
|
"pino": "^9.4.0",
|
|
"prom-client": "^15.1.0",
|
|
"reflect-metadata": "^0.2.2",
|
|
"rxjs": "^7.8.0",
|
|
"uuid": "^10.0.0",
|
|
"zod": "^3.23.0"
|
|
},
|
|
"devDependencies": {
|
|
"@nestjs/cli": "^10.4.0",
|
|
"@types/express": "^4.17.0",
|
|
"@types/node": "^22.0.0",
|
|
"@types/uuid": "^10.0.0",
|
|
"eslint": "^9.10.0",
|
|
"typescript": "^5.6.0",
|
|
"vitest": "^2.1.0"
|
|
}
|
|
}
|