ToolJet/server/package.json
Sherfin Shamsudeen d88139d5b7
Feature/merge google sso to community edition (#1420)
* SSO 🔥 (#2)

* Add rough implementation of google SSO

* Use env variables for storing Google Oauth client id

* Set organization user to active when a new user is created via sso

This commit also fetches first name and last name from the payload
received from google.
Also adds some refactoring.

* Apply proper styles to google login button

* Refactor oauth controller

* Move google specific logic to a separate service

* Fail sign-in if google could not verify idToken

* Refactoring update for GoogleOAuthService

* Change env variable name for google sso client id

* Show Google sign-in button only if client id env variable is given

* Add SSO_GOOGLE_OAUTH2_CLIENT_ID to app.json

* Whitelist apis.google.com in CSP

* Add accounts.google.com to CSP

* Add documentation for Google SSO

* Add e2e tests for Google SSO

* Resolve minor linting issues

* Avoid use of raw query in migration for SSO ID

This commit also adds an index for SSO ID

* Verify domain of user's email id for single sign on

* Add documentation for RESTRICTED_DOMAIN env variable in SSO

* Move SSO controllers and services to ee folder

* Move GoogleLoginButton to ee folder

* Test the restricted domain verification for Google SSO

* Remove unnecessary console.log

* Apply better styles to Sign in with google button

* Remove documentation for Google SSO

This will be added to the community edition repo

* Remove unnecessary static images

* Fetch Google OAuth2 client id from server instead of client env (#3)

* Check for existing email when signing in via SSO (#4)

* hotfix oauth service return type

* hotfix sso user creation

* Allow disabling sign-up via SSO (#5)

* hotfix file input change on import/export

* Align SSO button on login box center (#6)

* Fix: group permission not being set on sso (#7)

* fixes group permission not being set on sso

* update specs for sso

* lint fix

* add user id on login response

* decamelize keys on login response

* fix specs

Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: navaneeth <navaneethpk@outlook.com>
2021-11-17 16:51:50 +05:30

110 lines
3.5 KiB
JSON

{
"name": "server",
"version": "0.0.1",
"description": "",
"author": "",
"private": true,
"license": "UNLICENSED",
"scripts": {
"prebuild": "rimraf dist",
"build": "nest build",
"lint": "eslint . '**/*.ts'",
"format": "eslint . --fix '**/*.ts'",
"start": "nest start",
"start:dev": "NODE_ENV=development nest start --watch",
"start:debug": "nest start --debug --watch",
"start:prod": "NODE_ENV=production node dist/src/main",
"test": "NODE_ENV=test jest",
"test:watch": "NODE_ENV=test jest --watch",
"test:cov": "NODE_ENV=test jest --coverage",
"test:debug": "NODE_ENV=test node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
"test:e2e": "NODE_ENV=test jest --runInBand --config ./test/jest-e2e.json ",
"db:create": "ts-node ./scripts/create-database.ts",
"db:drop": "ts-node ./scripts/drop-database.ts",
"db:migrate": "npm run typeorm migration:run",
"db:seed": "ts-node -r tsconfig-paths/register ./scripts/seeds.ts",
"db:reset": "npm run db:drop && npm run db:create && npm run db:migrate",
"typeorm": "node --require ts-node/register ./node_modules/typeorm/cli.js --config ormconfig.ts"
},
"dependencies": {
"@aws-sdk/client-s3": "^3.38.0",
"@aws-sdk/s3-request-presigner": "^3.39.0",
"@casl/ability": "^5.3.1",
"@elastic/elasticsearch": "^7.13.0",
"@google-cloud/firestore": "^4.15.1",
"@google-cloud/storage": "^5.15.4",
"@nestjs/common": "^8.0.0",
"@nestjs/config": "^1.0.0",
"@nestjs/core": "^8.0.0",
"@nestjs/jwt": "^8.0.0",
"@nestjs/passport": "^7.1.6",
"@nestjs/platform-express": "^8.0.0",
"@nestjs/platform-ws": "^8.0.10",
"@nestjs/serve-static": "^2.2.2",
"@nestjs/typeorm": "^8.0.0",
"@nestjs/websockets": "^8.0.10",
"@sentry/node": "^6.12.0",
"@sentry/tracing": "^6.12.0",
"@types/got": "^9.6.12",
"@types/humps": "^2.0.1",
"@types/nodemailer": "^6.4.4",
"@types/ws": "^8.2.0",
"aws-sdk": "^2.947.0",
"bcrypt": "^5.0.1",
"class-validator": "^0.13.1",
"dotenv": "^10.0.0",
"futoin-hkdf": "^1.4.2",
"google-auth-library": "^7.9.2",
"got": "^11.8.2",
"helmet": "^4.6.0",
"humps": "^2.0.1",
"ioredis": "^4.27.6",
"joi": "^17.4.1",
"knex": "^0.95.7",
"mongodb": "^4.0.0",
"mysql": "^2.18.1",
"nestjs-pino": "^1.4.0",
"nodemailer": "^6.6.3",
"passport": "^0.4.1",
"passport-jwt": "^4.0.0",
"pg": "^8.7.1",
"preview-email": "^3.0.4",
"reflect-metadata": "^0.1.13",
"rimraf": "^3.0.2",
"rxjs": "^7.2.0",
"semver": "^7.3.5",
"tedious": "^11.2.0",
"ts-node": "^10.0.0",
"tsconfig-paths": "^3.10.1",
"typeorm": "^0.2.38",
"typescript": "^4.3.5",
"ws": "^7.5.5"
},
"devDependencies": {
"@nestjs/cli": "^8.0.0",
"@nestjs/schematics": "^8.0.0",
"@nestjs/testing": "^8.0.0",
"@types/express": "^4.17.13",
"@types/jest": "^26.0.24",
"@types/node": "^16.0.0",
"@types/passport-jwt": "^3.0.6",
"@types/supertest": "^2.0.11",
"@typescript-eslint/eslint-plugin": "^4.31.1",
"@typescript-eslint/parser": "^4.31.1",
"eslint": "^7.32.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-cypress": "^2.12.1",
"eslint-plugin-jest": "^24.4.2",
"eslint-plugin-prettier": "^3.4.1",
"jest": "^27.0.6",
"pino-pretty": "^6.0.0",
"prettier": "^2.3.2",
"supertest": "^6.1.3",
"ts-jest": "^27.0.3",
"ts-loader": "^9.2.3"
},
"engines": {
"node": ">=14.17.3",
"npm": "<=7.20.0"
}
}