Commit graph

31 commits

Author SHA1 Message Date
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
alammoiz
b23746084b
Refactoring: added missing return type (#1014) 2021-10-14 16:47:05 +05:30
Akshay
7023f72d1d
Feature: User access management 🔥 (#918)
* create migrations for group permissions setup

* define new entities and relationships

* revise migrations

* rename columns

* add migration to populate permission groups for existing users

* Feature: User access permission group usage (#883)

* create migrations for group permissions setup

* define new entities and relationships

* revise migrations

* rename columns

* add migration to populate permission groups for existing users

* revise migrations

* hide roles usage

* setup group permissions for apps and users

* fix defaultChecked

* fix update permission checkbox

* fix casl ability check to have params passed

* fix casl apps abilities to check with app specific permission

* add ability to delete groups

* conditionally render edit and delete options for all and admin users

* fix user role to group migration

* revise group management pages to disallow updating default group

* move manage users and groups to navbar dropdown

* show only addable apps and users on dropdowns

* rename header as profile settings

* scope addable apps and users by organization

* scope viewable apps on homepage

* hide manage groups link from non admins

* make permissions to be used with radio input

* add loading state for add apps/users buttons

* revise unit tests

* revise migrations

* fix e2e tests

* comment out dead code

* fix seeds script

* handle folder count

* captalize error toast

* hide manage users dropdown for non admins

* show fobidden error on blank homepage

* fix folder app count

* fix invalid state set

* make group name clickable for edit instead

* users with edit permission can deploy apps

* not show edit link on homepage if user dont have update permission

* remove unused entity from merge

* remove roles usage from manage org users page

* fix folder count and blank slate on homepage

* disable add buttons if there is no selections

* humanize default groups on view

* make app added onto groups have read permission by default

* not show app menu if user is not admin

* remove admin users from group user addition dropdown

* create default permissions for app cloned

* fix querying index page without page params

* fix admin scoped out from group add

* remove apps from header

* fix invitation url not shown

* scope admin deletion check by org

* scope public apps by organization

* add specs for group permissions e2e

* removed unused entity and add group permissions spec

* remove console logs

* remove unused permission

* scope public app count by org

* remove console log

* refactor manage group permission resources component

* update group permssion in org scope
2021-10-11 20:45:58 +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
Akshay
f4af291b6f
Chore: Application monitoring support with sentry (#702)
* setup sentry for server

* setup sentry for client

* update docs for sentry dns

* explicitly specify apm vendor

* add module for sentry

* revise directory struct and make sentry debuggable

* setup csp and trace headers for sentry

* whitelist csp for all sentry urls

* change senrty error sample rate to 50%

* make sentry send all errors from backend
2021-09-09 22:14:34 +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
Akshay
7967e517be
Chore: Revise log setup (#687)
* ignore /health endpoints to be logged

* buffer logs till logs are flushed and throw exception on server exit
2021-09-06 20:08:09 +05:30
Akshay
e4bcf80af2
Application logger using pino (#600)
* setup application logger with pino

* remove console.log
2021-08-25 22:13:18 +05:30
Sherfin Shamsudeen
1f0ff9ecf8
Add functionality to decide whether front-end should be served from server (#547)
* Add functionality to decide whether front-end should be served from server

This commit makes the server allow flag `--serve-frontend`, providing
which, will make the server serve the front-end at route '/'. Otherwise
it won't serve the front-end.

* Use env variable to enable serving client from a server end-point

* Add documentation for SERVE_CLIENT env var
2021-08-20 09:25:34 +05:30
Akshay Sasidharan
2779ea24e8 setup database seed 2021-08-03 09:41:39 +05:30
navaneeth
8b778cc1aa Heroku stuffs 2021-07-30 09:21:18 +05:30
navaneeth
ac1865280e Feature: Check for updates 2021-07-26 22:44:14 +05:30
navaneeth
ce1555ee7f Feature: Invitation email for new organization users 2021-07-26 20:10:32 +05:30
navaneeth
50ef839c8b Auto-load plugins from plugins directory 2021-07-25 11:39:34 +05:30
navaneeth
7745e4e460 Set up CASL abilities 2021-07-21 22:27:04 +05:30
Akshay Sasidharan
4c868259d0 setup connection options using ormconfig.ts 2021-07-21 18:49:32 +05:30
Akshay Sasidharan
61a9eb6b1b reuse env files from root directory instead 2021-07-21 18:49:32 +05:30
Akshay Sasidharan
c0ef4a738a make configService to load values based on app env 2021-07-21 18:49:32 +05:30
navaneeth
95ebbcb8f5 Endpoint to set password from invitation token 2021-07-19 12:21:21 +05:30
navaneeth
49a7a7451b endpoint for app data sources 2021-07-11 14:09:25 +05:30
navaneeth
facf757371 Endpoint to fetch data queries for a specific app 2021-07-11 14:02:06 +05:30
navaneeth
e537b6073f Move app module to modules folder 2021-07-11 11:11:45 +05:30
navaneeth
e6361ce49e Organise modules, controllers & services 2021-07-11 11:09:55 +05:30
navaneeth
0aec2f705d Endpoint: add apps to folder 2021-07-11 10:43:51 +05:30
navaneeth
34a7d31818 Endpoint: list all folders 2021-07-10 20:26:24 +05:30
navaneeth
ef58c918aa Apps endpoint with pagination 2021-07-10 19:24:32 +05:30
navaneeth
5d1ee49940 Chore: autoload typeorm entities 2021-07-10 12:22:41 +05:30
navaneeth
0041201f8a Improvements for migrations 2021-07-09 16:22:03 +05:30
navaneeth
1a6e53fcf1 Migration for users table 2021-07-09 14:35:56 +05:30
navaneeth
8121fa5faa Set up typeORM & JWT authentication 2021-07-08 13:09:07 +05:30
navaneeth
b68c56a16e Initial commit for nestjs 2021-07-08 11:10:27 +05:30