
- Complete NestJS TypeScript implementation with WebSocket support - Direct messaging (DM) and group chat functionality - End-to-end encryption with AES encryption and key pairs - Media file support (images, videos, audio, documents) up to 100MB - Push notifications with Firebase Cloud Messaging integration - Mention alerts and real-time typing indicators - User authentication with JWT and Passport - SQLite database with TypeORM entities and relationships - Comprehensive API documentation with Swagger/OpenAPI - File upload handling with secure access control - Online/offline status tracking and presence management - Message editing, deletion, and reply functionality - Notification management with automatic cleanup - Health check endpoint for monitoring - CORS configuration for cross-origin requests - Environment-based configuration management - Structured for Flutter SDK integration Features implemented: ✅ Real-time messaging with Socket.IO ✅ User registration and authentication ✅ Direct messages and group chats ✅ Media file uploads and management ✅ End-to-end encryption ✅ Push notifications ✅ Mention alerts ✅ Typing indicators ✅ Message read receipts ✅ Online status tracking ✅ File access control ✅ Comprehensive API documentation Ready for Flutter SDK development and production deployment.
98 lines
3.9 KiB
JSON
98 lines
3.9 KiB
JSON
{
|
|
"name": "@google-cloud/firestore",
|
|
"description": "Firestore Client Library for Node.js",
|
|
"version": "6.8.0",
|
|
"license": "Apache-2.0",
|
|
"author": "Google Inc.",
|
|
"engines": {
|
|
"node": ">=12.0.0"
|
|
},
|
|
"repository": "googleapis/nodejs-firestore",
|
|
"main": "./build/src/index.js",
|
|
"types": "./types/firestore.d.ts",
|
|
"files": [
|
|
"build/protos",
|
|
"build/src",
|
|
"!build/src/**/*.map",
|
|
"types"
|
|
],
|
|
"keywords": [
|
|
"google apis client",
|
|
"google api client",
|
|
"google apis",
|
|
"google api",
|
|
"google",
|
|
"google cloud platform",
|
|
"google cloud",
|
|
"cloud",
|
|
"firestore"
|
|
],
|
|
"scripts": {
|
|
"predocs": "npm run compile",
|
|
"docs": "jsdoc -c .jsdoc.js",
|
|
"system-test:rest": "FIRESTORE_PREFER_REST=true mocha build/system-test --timeout 600000",
|
|
"system-test:named-db:rest": "FIRESTORE_NAMED_DATABASE=test-db FIRESTORE_PREFER_REST=true mocha build/system-test --timeout 600000",
|
|
"system-test:grpc": "mocha build/system-test --timeout 600000",
|
|
"system-test:named-db:grpc": "FIRESTORE_NAMED_DATABASE=test-db mocha build/system-test --timeout 600000",
|
|
"system-test:emulator:rest": "FIRESTORE_EMULATOR_HOST=localhost:8080 FIRESTORE_PREFER_REST=true mocha build/system-test --timeout 600000",
|
|
"system-test:named-db:emulator:rest": "FIRESTORE_NAMED_DATABASE=test-db FIRESTORE_EMULATOR_HOST=localhost:8080 FIRESTORE_PREFER_REST=true mocha build/system-test --timeout 600000",
|
|
"system-test:emulator:grpc": "FIRESTORE_EMULATOR_HOST=localhost:8080 mocha build/system-test --timeout 600000",
|
|
"system-test:named-db:emulator:grpc": "FIRESTORE_NAMED_DATABASE=test-db FIRESTORE_EMULATOR_HOST=localhost:8080 mocha build/system-test --timeout 600000",
|
|
"system-test": "npm run system-test:grpc && npm run system-test:rest && npm run system-test:named-db:grpc && npm run system-test:named-db:rest",
|
|
"system-test:emulator": "npm run system-test:emulator:grpc && npm run system-test:emulator:rest && npm run system-test:named-db:emulator:grpc && npm run system-test:named-db:emulator:rest",
|
|
"presystem-test": "npm run compile",
|
|
"samples-test": "npm link && cd samples/ && npm link ../ && npm test && cd ../",
|
|
"conformance": "mocha build/conformance",
|
|
"preconformance": "npm run compile",
|
|
"test-only": "c8 mocha build/test",
|
|
"pretest-only": "npm run compile",
|
|
"test": "npm run test-only && npm run conformance",
|
|
"lint": "gts check",
|
|
"clean": "gts clean",
|
|
"compile": "tsc -p .",
|
|
"postcompile": "node scripts/init-directories.js && cp -r dev/protos build && cp dev/src/v1beta1/*.json build/src/v1beta1/ && cp dev/src/v1/*.json build/src/v1/ && cp dev/conformance/test-definition.proto build/conformance && cp dev/conformance/conformance-tests/*.json build/conformance/conformance-tests && minifyProtoJson",
|
|
"fix": "gts fix",
|
|
"prepare": "npm run compile",
|
|
"docs-test": "linkinator docs",
|
|
"predocs-test": "npm run docs",
|
|
"prelint": "cd samples; npm link ../; npm install",
|
|
"precompile": "gts clean"
|
|
},
|
|
"dependencies": {
|
|
"fast-deep-equal": "^3.1.1",
|
|
"functional-red-black-tree": "^1.0.1",
|
|
"google-gax": "^3.5.7",
|
|
"protobufjs": "^7.2.5"
|
|
},
|
|
"devDependencies": {
|
|
"@types/assert": "^1.4.0",
|
|
"@types/chai": "^4.2.7",
|
|
"@types/chai-as-promised": "^7.1.2",
|
|
"@types/duplexify": "^3.5.0",
|
|
"@types/extend": "^3.0.0",
|
|
"@types/mocha": "^9.0.0",
|
|
"@types/node": "^18.0.0",
|
|
"@types/sinon": "^10.0.0",
|
|
"@types/through2": "^2.0.34",
|
|
"c8": "^8.0.0",
|
|
"chai": "^4.1.2",
|
|
"chai-as-promised": "^7.1.1",
|
|
"codecov": "^3.6.1",
|
|
"duplexify": "^4.0.0",
|
|
"extend": "^3.0.2",
|
|
"gts": "^3.1.0",
|
|
"jsdoc": "^4.0.0",
|
|
"jsdoc-fresh": "^3.0.0",
|
|
"jsdoc-region-tag": "^3.0.0",
|
|
"length-prefixed-json-stream": "^1.0.1",
|
|
"linkinator": "^5.0.0",
|
|
"mocha": "^9.2.2",
|
|
"protobufjs-cli": "^1.1.2",
|
|
"proxyquire": "^2.1.3",
|
|
"sinon": "^15.0.0",
|
|
"through2": "^4.0.0",
|
|
"ts-node": "^10.0.0",
|
|
"typescript": "~4.7.4"
|
|
}
|
|
}
|