Commit graph

24 commits

Author SHA1 Message Date
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 <[email protected]>
Co-authored-by: navaneeth <[email protected]>
2021-11-17 16:51:50 +05:30
Gandharv
22bce1f4fb
Feature: Collaboration ( realtime comments for canvas ) 🔥 (#810)
* feat: initial commit for collaboration feature

* add dnd to comments

* add positions endpoint

* feat: encapsulate all http common logic in http-client

* segregate sections and transfer responsibility of state

* feat: use-spring to add fade effect 

* fix: open in right

* fix: left-right position css

* add footer for message

* integrate getcomment endpoint

* use fromnow for date ago

* add dnd

* - Add data trasfer object for comment
- Add class-validator package to check the response type from client
- Add comment repository class for persistance layer
- Add comment service with std. http methods
- Update controller with all http methods
- Update comment module
- Fix http-client bug when error is thrown

* fix http client bug when error is thrown

* feat: add entity thread

* feat: add migrations for thread and comment

* update entitites

* add tid to migration

* filter comments by tid(thread_id)

* fix: comment migration, add missing column comment

* feat: integrate in ui

* feat: split comments based on app_id

* fix: dnd to correct position

* package json engines

* engines update

* update npm

* npm 6 to 7

* fix: add user initials to thread

* fix: add firtname lastname to the comments

* - Return user object when save thread called
- Hide password field from user response
- Fix created_at date typo
- Instead of fetch all threads on new thread added, add the response to array of existing threads

* feat: update ui components

* change icon on comments view

* ui fixes

* fix: close icon close the popover

* temp: comment select: false

* use currentUser from localStorage

* fix: on click outside if comment is open, dont hit addThread

* fix: auth token issue in http-client

* on drag hide the comment if open

* add jwt auth

* spec: add test for comment & thread

* cleanup: remove console.log

* feat: add comment actions

* feat: add edit, delete, resolve options

* feat: add mentions component

* feat: add nestjs websockets

* temp

* websocket: establish client-server communication

* ws: add message listner to comments module in ui

* feat: add broadcast method to broadcast new events to all clients 💣

* ws: cleanup 🤙

* fix: remove max height from comment actions

* feat: add user mentions, emoji support

* fix: add static list of users - temp

* update and delete iterations

* - Rename comment, thread to comments, threads
- Add conditional actions
  - Show edit, delete only if he is comment owner
  - Show resolve only if he is thread owner

* reset engines

* move svgr webpack to deps

* fix: ui issues

* remove log stmt

* refactor: move resolved icon to comment-header

* feat: allow comments to be added on top of widgets

* feat: add keyboard shortcut

* scroll to bottom on comment add

* ui fixes

* feat: add react toast for notification display

* feat: add comment badge

* fix: ws connection

* fix: ws

* remove rvrse

* feat: add comment sidebar

* feat: add comment right sidebar

* fix: add missing foreign key elements

* - upgrade typeorm to 0.2.38
- comment sidebar ui
- added filter ui

* feat: on click of right sidebar notificaiton open the comment box

* reset engines

* fix: add organization id to the comment and thread module

* fix: add current version id

* add currentversion id

* disable comments if no id present

* temp:checking for heroku deploy

* fetch app on edit and deploy version

* rename current_version_id to app_versions_id

* ui fixes

* show mentioned user in blue color

* add ui changes

* add authorization for create thread

* change color to blue on click of comment, add auth for other endpoints of thread

* update threads, notifications using socket

* add auth for comments

* remove events spec file

* fix duplicate key error

* fix notificaitons updation on edit, delete, resolve buttons clicked

* update notifications for edit

* feature toggle changes for frontend

* add check for comments server

* add emoji mart package for emoji

* add reply count in comment sidebar

* subtract 1 from count in comment sidebar

* change empty text when no comments available
2021-11-01 12:58:03 +05:30
Akshay
78c2520aa8
Chore: Make public asset path configurable (#1147)
* make public asset path configurable

* fix doc formatting
2021-10-20 07:50:26 +05:30
febinsathar
4fae0f979f
migrated webpack v4 to v5 (#873)
* migrated wbpack v4 to v5

* updated to npm 7

Co-authored-by: Febin Sathar <[email protected]>
2021-10-02 11:22:02 +05:30
Arpit
26c9cc655c
Fix linting errors across the app (#785)
* eslint-setup: rules for frontend and server

* setup pre-commit:hook

* frontend:eslint fixes

* frontend eslint errors and warning fixed

* eslint:fix for ./server

* fix server/test: expectatin string lint/error

* pre-commit:updated

* removed unwanted install cmd from docker file

* recommended settings and extension for vscode

* husky prepare script added

* updated extension recommendations

* added prettier as recommended extension

* added pre-commit to package.json

* remove .prettierrc file

* resolve changes

* resolve changes
2021-09-21 19:18:28 +05:30
Gandharv
8c4cb66865
Add devTool only in development for webpack (#774)
* add devTool only in development

* remove console log
2021-09-17 19:34:15 +05:30
Gandharv
7b00423096
Adds tree shaking for lodash (#706) 2021-09-15 21:22:53 +05:30
Akshay
6bd08608ad
Feature: Client fetches public config from server (#713)
* add /api/config endpoint to serve public config

* client requests public config before app render

* update default public config for whitelist
2021-09-09 21:38:07 +05:30
Gandharv
761d2e412a
Quick win slash 700kb by using only en locale (#707) 2021-09-08 23:54:58 +05:30
Gandharv
274b6488f9
Add source map for debugging (#674)
When webpack bundles your source code, it can become difficult to track down errors and warnings to their original location. For example, if you bundle three source files (a.js, b.js, and c.js) into one bundle (bundle.js) and one of the source files contains an error, the stack trace will point to bundle.js. This isn't always helpful as you probably want to know exactly which source file the error came from.

In order to make it easier to track down errors and warnings, JavaScript offers source maps, which map your compiled code back to your original source code. If an error originates from b.js, the source map will tell you exactly that.

more info: https://webpack.js.org/guides/development/#using-source-maps
2021-09-02 22:12:46 +05:30
Gandharv
365e9e3cb3
Redesigned Rest api query builder 🎉 (#612)
* feat: add rest api new design

* fix page break on create/save query

* remove console.log

* align the i/p fields

* rename files

* remove border from i/p

* remove hover styles

* fix: filter empty headers, url_params, body

* fix when editmode headers empty

* fix the options on preview getting null

* fix navlink color on dark mode

* add color for non active tab in dark mode
2021-08-30 16:55:27 +05:30
Gandharv
64131825d9
Feature: Star rating widget ️ (#535)
* feat: add star rating widget

* add events, properties

* add the number of stars as variable

* fix animation

* add half star logic, properties, definations

* add hover index property

* on dismiss show star outline

* show tooltip on hover + fix half icon display on click

* make text inline

* feat: add import svg as react component

* update star rating component for managing color change

* fix: conflicts

* Delete half-star.svg

* Delete star.svg

* change default color to gold

* fix widget settings events

* add default selection of stars

* change default selection to 5

* css changes

* add star rating onchange fix
2021-08-25 20:44:55 +05:30
Akshay
57a10398f2
Packer setup for nest server (#463) 2021-08-06 19:37:45 +05:30
navaneeth
1f8fe20264 Merge branch 'develop' into feature/nest-server 2021-07-31 20:28:32 +05:30
navaneeth
d3ecd25e9a Dockerize for production 2021-07-31 14:18:56 +05:30
navaneeth
8b778cc1aa Heroku stuffs 2021-07-30 09:21:18 +05:30
Ashish
2c59616b70
Feature: docker-compose deployment (#388)
* separate dockerfile for tooljet client in development mode

* production dockerfile for tooljet client

* reference the tooljet clients dev dockerfile in the docker-compose file

* use a fallback url for API_URL in cases where TOOLJET_SERVER_URL is not defined

* nginx config file for the front-end

* docker-compose file for production deploys

* dont run postgres inside docker-compose

* use an entrypoint script for setting the server host for nginx

* separate volume for fallback certs

* add docs for docker-compose deployment

* add required database keys in the .env.example file

* address review comments
2021-07-12 14:45:42 +05:30
Navaneeth Pk
1babb13d7e
Change webpack config to support Heroku hosts (#182)
* Change webpack config to support Heroku hosts

* Update app.json for better instructions

* Correction
2021-06-05 15:19:32 +05:30
navaneeth
c906ddbf67 Feature: Display static IP of the server to be white-listed 2021-05-23 19:05:31 +05:30
navaneeth
17c0864a2f Update heroku server URL 2021-05-21 11:08:09 +05:30
navaneeth
49edc3cc92 Feature: Maps widget 2021-05-16 10:56:31 +05:30
Navaneeth Pk
8b481ae9f4
ESLint fixes (#138)
* ESLint fixes

* Eslinted
2021-04-30 13:40:57 +05:30
navaneeth
2f01a36a9e Frontend changes for deploying to firebase 2021-04-16 12:25:40 +05:30
navaneeth
ffa2fb03d1 Initial commit for react app 2021-03-31 19:31:01 +05:30