mirror of
https://github.com/twentyhq/twenty.git
synced 2024-12-25 13:02:15 +03:00
850eab8f8f
* Add rate limiting in the server using built in Nest.js capability * Generatekey based on ip address when an http request is sent * Update env var types to number for ttl and limit * Remove unused env variables * Use getRequest utility function * fix: remove dist from path * fix: adding .env variables * fix: remove unused functions * feat: throttler plugin * Fix according to review --------- Co-authored-by: Jérémy Magrin <jeremy.magrin@gmail.com> Co-authored-by: Charles Bochet <charles@twenty.com>
130 lines
4.8 KiB
JSON
130 lines
4.8 KiB
JSON
{
|
|
"name": "twenty-server",
|
|
"version": "0.3.0",
|
|
"description": "",
|
|
"author": "",
|
|
"private": true,
|
|
"license": "AGPL-3.0",
|
|
"scripts": {
|
|
"nx": "NX_DEFAULT_PROJECT=twenty-server node ../../node_modules/nx/bin/nx.js",
|
|
"prebuild": "rimraf dist",
|
|
"build": "yarn prebuild && nest build --path ./tsconfig.build.json",
|
|
"format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
|
|
"start": "NODE_ENV=development && nest start",
|
|
"start:dev": "npx nx start --watch",
|
|
"start:debug": "npx nx start:dev --debug",
|
|
"start:prod": "node dist/src/main",
|
|
"lint": "eslint \"src/**/*.ts\" --fix",
|
|
"test": "jest",
|
|
"test:watch": "npx nx test --watch",
|
|
"test:cov": "npx nx test --coverage",
|
|
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register ../../node_modules/.bin/jest --runInBand",
|
|
"test:e2e": "./scripts/run-integration.sh",
|
|
"typeorm": "npx ts-node -r tsconfig-paths/register ../../node_modules/typeorm/cli.js",
|
|
"typeorm:migrate": "yarn typeorm migration:run -d ./src/database/typeorm/metadata/metadata.datasource.ts && yarn typeorm migration:run -d ./src/database/typeorm/core/core.datasource.ts",
|
|
"database:init": "yarn database:setup && yarn database:seed:dev",
|
|
"database:setup": "npx ts-node ./scripts/setup-db.ts && yarn database:migrate",
|
|
"database:setup:prod": "npx ts-node ./scripts/setup-db.ts && yarn typeorm:migrate",
|
|
"database:truncate": "npx ts-node ./scripts/truncate-db.ts",
|
|
"database:migrate": "yarn build && yarn typeorm:migrate",
|
|
"database:seed:dev": "yarn build && yarn command workspace:seed:dev",
|
|
"database:seed:demo": "yarn build && yarn command workspace:seed:demo",
|
|
"database:reset": "yarn database:truncate && yarn database:init",
|
|
"command": "node dist/src/command",
|
|
"queue:work": "node dist/src/queue-worker"
|
|
},
|
|
"dependencies": {
|
|
"@aws-sdk/client-s3": "^3.363.0",
|
|
"@aws-sdk/credential-providers": "^3.363.0",
|
|
"@envelop/on-resolve": "^4.1.0",
|
|
"@graphql-yoga/nestjs": "patch:@graphql-yoga/nestjs@2.1.0#./patches/@graphql-yoga+nestjs+2.1.0.patch",
|
|
"@nestjs/apollo": "^11.0.5",
|
|
"@nestjs/axios": "^3.0.1",
|
|
"@nestjs/cli": "^9.0.0",
|
|
"@nestjs/common": "^9.0.0",
|
|
"@nestjs/config": "^2.3.2",
|
|
"@nestjs/core": "^9.0.0",
|
|
"@nestjs/graphql": "patch:@nestjs/graphql@12.0.8#./patches/@nestjs+graphql+12.0.8.patch",
|
|
"@nestjs/jwt": "^10.0.3",
|
|
"@nestjs/passport": "^9.0.3",
|
|
"@nestjs/platform-express": "^9.0.0",
|
|
"@nestjs/schematics": "^9.0.0",
|
|
"@nestjs/serve-static": "^3.0.0",
|
|
"@nestjs/terminus": "^9.2.2",
|
|
"@nestjs/testing": "^9.0.0",
|
|
"@nestjs/typeorm": "^10.0.0",
|
|
"@ptc-org/nestjs-query-core": "^4.2.0",
|
|
"@ptc-org/nestjs-query-graphql": "patch:@ptc-org/nestjs-query-graphql@4.2.0#./patches/@ptc-org+nestjs-query-graphql+4.2.0.patch",
|
|
"@ptc-org/nestjs-query-typeorm": "4.2.1-alpha.2",
|
|
"@react-email/components": "0.0.12",
|
|
"@react-email/render": "0.0.10",
|
|
"@sentry/node": "^7.98.0",
|
|
"@sentry/profiling-node": "^1.3.4",
|
|
"@sentry/tracing": "^7.98.0",
|
|
"axios": "^1.6.2",
|
|
"bcrypt": "^5.1.1",
|
|
"bullmq": "^4.14.0",
|
|
"class-transformer": "^0.5.1",
|
|
"class-validator": "patch:class-validator@^0.14.0#./patches/class-validator+0.14.0.patch",
|
|
"date-fns": "^2.30.0",
|
|
"file-type": "16.5.4",
|
|
"googleapis": "105",
|
|
"graphql": "^16.8.1",
|
|
"graphql-fields": "^2.0.3",
|
|
"graphql-middleware": "^6.1.35",
|
|
"graphql-rate-limit": "^3.3.0",
|
|
"graphql-subscriptions": "2.0.0",
|
|
"graphql-tag": "^2.12.6",
|
|
"graphql-type-json": "^0.3.2",
|
|
"graphql-upload": "^13.0.0",
|
|
"graphql-yoga": "^4.0.4",
|
|
"lodash.camelcase": "^4.3.0",
|
|
"lodash.isempty": "^4.4.0",
|
|
"lodash.isobject": "^3.0.2",
|
|
"lodash.kebabcase": "^4.1.1",
|
|
"lodash.omit": "^4.5.0",
|
|
"lodash.snakecase": "^4.1.1",
|
|
"lodash.upperfirst": "^4.3.1",
|
|
"mailparser": "^3.6.5",
|
|
"microdiff": "^1.3.2",
|
|
"nest-commander": "^3.12.0",
|
|
"nodemailer": "^6.9.8",
|
|
"openapi-types": "^12.1.3",
|
|
"passport": "^0.6.0",
|
|
"passport-google-oauth20": "^2.0.0",
|
|
"passport-jwt": "^4.0.1",
|
|
"passport-local": "^1.0.0",
|
|
"pg": "^8.11.3",
|
|
"pg-boss": "^9.0.3",
|
|
"planer": "^1.2.0",
|
|
"react": "^18.2.0",
|
|
"rimraf": "^3.0.2",
|
|
"sharp": "^0.32.1",
|
|
"type-fest": "^4.1.0",
|
|
"typeorm": "^0.3.17"
|
|
},
|
|
"devDependencies": {
|
|
"@types/lodash.isempty": "^4.4.7",
|
|
"@types/lodash.isobject": "^3.0.7",
|
|
"@types/lodash.omit": "^4.5.9",
|
|
"@types/lodash.snakecase": "^4.1.7",
|
|
"@types/lodash.upperfirst": "^4.3.7",
|
|
"@types/react": "^18.2.39",
|
|
"jest": "29.7.0"
|
|
},
|
|
"engines": {
|
|
"node": "^18.17.1",
|
|
"npm": "please-use-yarn",
|
|
"yarn": "^4.0.2"
|
|
},
|
|
"nx": {
|
|
"targets": {
|
|
"test:debug": {
|
|
"dependsOn": [
|
|
"^build"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|