* feat: Add update version button on installable plugin
* use id from update method
* removes redundant check
* use plugin id for fetching files from s3
* fetch latest plugins once updated
* disable update and remove buttons while update in progress
* replace href with link-span cx + send body in patch request
* Added frontend and backend validation
* Ran the linter
* Update server/src/services/folders.service.ts
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
* Minor null check
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
* fix login redirect for subpath
* hardcode login for subpath path as basename is not picked
* fix broken links
* fix google sso link
* remove invalid condition
* displaying user in lecicographic order
* fetch users in lexicographic order (firstName)
* fix: table head ui
Co-authored-by: Amit Kumar Sharma <91947037+amit-2k1@users.noreply.github.com>
* init
* fixes: config-handler clickEvents
* fixes: position attributes for open state modal config handler
* modal body scrollable
* adds loadingState
* adds onOpen and onClose events for modal
* adds visibility property
* open general and layout Options by default
* adds styling options for modal header and body
* adds style options for show button and conditional rendering of button styles
* refactor conditional rendering styles
* clean up
* fixes typos
* remove footer
* modal size
* handles dark theme
* update naming convention for modal: trigger button
* modal size:updates
* updates modal close icon
* adds comments for conditionally rendering style options
* only vertical scrolling inside modals
* clean up
* custom UI for widget config handle for modal
* backfil
* resolves: event should not fire on mount
* modal improvements doc
* hide modal on clicking outside for viewer mode
* Remove unnecessary modification of modal property schema
Co-authored-by: Shubhendra <withshubh@gmail.com>
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* Updated the table UI
* made the search bar in sync with current applied theme in the application
* updated the UI of the table widget
* adjust x axis in the footer
* made the search text vertically center
* Load text color using new api in Table
* Load action buttons data using new api in table
* Revert usage of new api for table actions
* Use new api to load most properties and styles
* Move logic for loading styles and propeties to another file
* Table: Move loading of actions to separate file
* Move functions to expose data to codehinter to Box.jsx
* Table: Get loadingState from new api
* Table: Use reducer for storing table column properties
* Table: minor refactoring on reducer
* Table: Replace the use of internal state variable componentState
* Abstract out Filter as a separate component
* Move table column definitions to a separate file
* Move action column definition to a separate file
* Move IndeterminateCheckbox to a separate file
* Completely remove any requirement of loading from definition inside loadPropertiesAndStyles
* Reduce the use of reducer dispatch calls in Table.jsx
* Remove the usage of __TjDoNotResolve__
* Load actions without new API
* Update migration to make columnSizes follow default format
* Fix migration to restructure table column sizes data
* Do not update columnSizes property if incoming value is empty
* Remove unnecessary code
* Remove unnecessary linting
* Remove unnecessary reducer action
* Remove unnecessary code
* Merge table changeSet data into table details reducer instead of filter reducer
* Make compact and spacious cell sizing work for table
* Remove custom handling of onRowClicked for Table
* Fix issues with table visibility, border radius and disabled state
* Resolve the issue with invalid date crashing the table
* fixes:widget crash is only for those tables which do not have any actions associated with it yet. (#4078)
* Remove unnecessary code
Co-authored-by: Manish Kushare <manish.altcampus@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
* Implemented multiple access token feature
- working on refresh token case
* worked on refresh token flow
* added multiple token ability to openapi plugin too
- fixed some bugs
* changed tokenData to token_data
- fixed some issues
* added user type with user id
* changed user type
* Rewrote some function
- added switch for enabling and disable multi auth
- fixed some bugs
- refactored the code
* fixed view app issue
* Fixed public app issue
* cleaning some code
* (public_app) add a check to avoid oauth login redirect when there is no access token
* reverted all changes of openapi (temporary)
- will add multi token functionality once done with restapi
* fixed a bug
* fixed a bug
* refactored some code
* changed the switch text
* pr changes
* changed token_data back to tokenData
* cleaning code
* removed token data from datasources query
* removed some lines
* added a comment
* Fix: User group permissions error on Openshift platform (#4041)
* update dockerfile for file permissions on root group
* add permissions from the user group on dockerfile
* bump to v1.24.4
* bump to v1.25.0
* [feature] Added pagination and filtering features to users page (#3921)
* added pagination and filtering in backend
* added pagination
- created a seperate component for users table
- added pagination
* Added filter UI
* temporary css fix for pagination footer
* fixed pagination width issue
* now result will also clear when user clicks on clear icon
* Added seperate api for comment mentions
* Now we can search mentions by email, first and last names
* Fixed a bug
- email didn't send for comment mentions
* refactoring the code
* resolved PR changes
* Added isAdmin guard
* adding some checks
* fixed lint errors
* added wild card search
* Added no result found text
* fixed failing test case
* Working on PR changes
* Now users table avatars will load image too
* replaced skeleton classes with skeleton library component
* Completed PR changes
* added orderby
* Fixed some issues
* fixed failed test case
* have fixed some css issues
* replaced query with quersrting package
* fixed minor width issue
* Fixed some css issues
* fixed darkMode issue
* implemented on enter press search
* Refactored the code
* fixed white space issue
* refactored the code
* fixed overlapping issue
* refactored the code
* fixing some issues
* fixes
* removed guard
* code cleanup
* comments notification fix
* fixed conflict issues
* fixed css height issue
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* Remove signup guard from set-password-from-token API (#4050)
* Remove sign up guard set-password-from-token API
* test cases fix
* Bump to v1.25.1
* Feature: Add PG_DB_OWNER env var to disable db and extension creation (#4055)
* add PG_DB_OWNER env var to disable db and extension creation
* update docs
* bump to v1.25.2
Co-authored-by: Akshay <akshaysasidharan93@gmail.com>
Co-authored-by: Muhsin Shah C P <muhsinshah21@gmail.com>
* added pagination and filtering in backend
* added pagination
- created a seperate component for users table
- added pagination
* Added filter UI
* temporary css fix for pagination footer
* fixed pagination width issue
* now result will also clear when user clicks on clear icon
* Added seperate api for comment mentions
* Now we can search mentions by email, first and last names
* Fixed a bug
- email didn't send for comment mentions
* refactoring the code
* resolved PR changes
* Added isAdmin guard
* adding some checks
* fixed lint errors
* added wild card search
* Added no result found text
* fixed failing test case
* Working on PR changes
* Now users table avatars will load image too
* replaced skeleton classes with skeleton library component
* Completed PR changes
* added orderby
* Fixed some issues
* fixed failed test case
* have fixed some css issues
* replaced query with quersrting package
* fixed minor width issue
* Fixed some css issues
* fixed darkMode issue
* implemented on enter press search
* Refactored the code
* fixed white space issue
* refactored the code
* fixed overlapping issue
* refactored the code
* fixing some issues
* fixes
* removed guard
* code cleanup
* comments notification fix
* fixed conflict issues
* fixed css height issue
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* - Added new field under app view permission
- Added new column to appGroupPermission
* added queries for hiding app from dashboard
* changed a column name
* reverse proxy
* reverse proxy
* Fix for yjs
* Fix for ws
* Fixes org switching
* Fixes org creation
* Fixes login logo
* Fixes download icon
* Construct use invite URL from base URI
* Fixes apiUrl if sub path is set
* Remove commented code
* Fix profile link
* invitation url changes
* Fixes dev env
* Use url-join lib to connect urls for goto app and invitation link
* Use useHistory instead of helper to get history for template modal
* Review changes
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* added all the css prop for the text in the styles section of the Text Widget
* removed text shadow prop from inspector, widgetConfig, and Text.jsx Component, fixed es lint error
* removed Accordian folding and unfolding of styles props
* removed console.log and fixed es lint errors
* added migration file for supporting compatibility with existing applications
* revert changes
* adding migration file to support compatibility with existing/old applications
* removed unused groupAction prop from defination.styles in the widgetConfig file
* removed unused lines from Text.jsx
* Changed fontvariant from Boolean type to select type
* updated the migration file for textwidget
* Fixed env vars 404 error while opening public apps
* Resolved the PR changes
- Replaced currentUser with isPublic
- Added a new guard to check if the current app is not public or not
* Refactored some code
* Removed orga variable dependency from org module
* Resolved all PR changes
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* feat: trigger mail when user is mentioned in comment
* reset email service
* fix backspace issue
* open comment on view comment clicked from email
* add helper to highlight user in mail
* reset mentioned input value when value turns empty in parent
* fix test
* use where condition + throw error
* add userId
* feat: add notification center (#3484)
* remove commented code
* Added a feature for update group names
* Fixed issues
- create new group button should not show when update form is visible
- disable save btn when user tries to update with the same name
* Added a spec for update group name feature
* resolved a bug
* resolved a spell error
* Added 2 specs for checking
- default groups are being updated or not
- update a group with existing name
* Fixed a bug
* Fixed trim issue
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
* Added new page for env vars
* Changed a field name
* Added some backend files
- Entity, Dto, services
* Started working with api endpoints
- implmented create
- added ability
* Added fields validation
- Added env variables into module
* Added update, delete, get apis
- Also implemented delete feature in frontend
* Implemented update operation on frontend
- Solved an api problem
* Added encryption
* Added encryption to update operation
- Exposed env vars to editor
- working on viewer
* Exposed env vars in viewer also
- Resolved a bug
* Updated edit & delete icon sizes
* Added specs
- Resolved issues that occurred while testing
* removed logout code
* Changed api endpoint
* splitted page into 3 different parts, Form & table
* Now, non-admin users can see all org env vars
* Resolved divider missing issue
* Added variable_type field
* Now secret server values will be shown as 'SecureValue'
* Now you can't update variable_type
* Now server will resolve the secret env values
* Resolved variable name issue
* Added unique constraints
* Resolved some frontend bugs
* Changed error text
* Fixed failing specs
* Added group permissions for org env vars
* Added permission checking in the backend
* Implemented permission checking in the frontend
* Edited spec for new changes
* Changed some specs and fixed failing specs
* Resolved failing case that showed up after merging with the latest develop
* Added default admin seed permissions
* Refactored some code
* Changed value to organization_id
* Fixed a bug
* Resolved a failing case
* Resolved PR changes
- Changed permission name
- Changed column type to enum
- Fixed some errors
- Refactored the code
* minor code change
* added scope
* Fixed: hide table when 0 no of vars available
* Fixed table dark theme issues
* Fixed encryption switch style
* Fixed failing cases and updated a spec
* Added %% for environment variables
* Added code to resolve single variable
* Fixed multi-variable usage
* resolved an issue
* removed extra divider
* Suggestions will also show up for %% too
* now, suggestions dropdown will only show env variables results
* env vars suggestions will not be included in js search results
* You can't resolve env variables from js code
- Also, we can't resolve js code from env variable enclosures
* added an info text
* Resolved variables issue
* fixed Viewer issue
* Resolved a bug
- client variable was not working on query preview and run actions
* Update error message while using server variable on canvas
* Revert "Update error message while using server variable on canvas"
This reverts commit 081e1c9e29.
* Resolved all PR changes
- removed prefix 'environmentVariable'
- redefined variable evaluation
- removed environmentVariable object from inspector
- fixed a small bug
* Fixed a server side issue
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* Added migration to add forder_delete column
* Added new group permission
* Added deleteFolder ability
* Added delete folder api
* Added menu icon
* Added new defualt permissions of admin
* Implemented folder menu and delete action
* Implemented update folder name in frontend
* Added folder name update feature
* Refactoring code
* Added specs for update and delete apis
- Updated test-helper function with new permissions
* Resolved failing specs
* corrected method name & add count checking to delete spec
* added organizationId scope
* Changed toast and modal texts
* Resolved a mistake
* Added a check box for update permission
* Now, an user can only delete folders, if he has the permission to view all apps
* Edited update and delete spec cases
* Added error toasts
* Refactored code
* Resolved PR changes
- Changed permission name in the frontend
- Refactored the code
* capitalized all toasts
- Changed error message
* Fixed new user permission issue
* Update a spec
Co-authored-by: gsmithun4 <gsmithun4@gmail.com>
* added instruction text property in file pciker to make user unable to provide custom instructions
* Added default instruction text
* made the changes to make sure existing app do not crashes because of instructionText prop
* Solve issue - existing file pickers wont display anything if we don't default to the default instruction text
* changes in operation.json file
* migration script for adding instructionText prop
* removed unwanted operations.json file
Co-authored-by: Kavin Venkatachalam <kavin.saratha@gmail.com>
* fix(group_permission): avoid useage of system defined user group
* test(group_permission): add test to verify the chaanges related to system group names
* fix(group_permission): change error message and fix reserved group list
* fixed addition of application to folder more than once
* Update server/src/services/folder_apps.service.ts
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
* fix(groupPermission): add check for uniqueness before creating the group
* fix(groupPermission): add test for the uniqueness of group permission group name
* Implemented frontend
- icon and confirmation modal
- delete fn in services
* Implemented backend Endpoint
- Changed confirmation modal msg
* Added unit test for delete operation
* Changed the modal msg again
* Fixed delete btn alignment issue
* Resolved a bug
* changed popover width
* Now delete endpoint will only return the status
* Added a new spec to test delete a data-source from a specific version
* Added deleteDataSource ability
* Removed commented code
* Added BadRequestException in else case
* Resolved an error
* Changed confirmation modal
* Implmented toggle and confirmation modal
- Also maintenance state will store in db as a global setting
* Added is_maintenance_on column to apps table
* Now maintenance state will store in app entity
* Lauch btn will be disabled for on-maintenance apps
* Users can't see preview using shared links when app is on maintenance
* Changed toggle name
* Changed maintenance dialog message
- Changed button text
- Fixed some alignment
* add sanitize-html to be used with dto
* add dto for controllers
* add vaalidation to check token not empty
* update test config
* add validation pipe on test setup
* fix spec
* fix params casing
* update dto for empt checks
* update reset password dto
* only check for options to be defined
* update specs
* update dto and spec
* Remove invalid decorator
* update package-lock
* update thread dto
* update user dto
* fix email
* make comment req params attributes as optional
* fix specs
* feat: add realtime collaboration
* reduce delay in debounce
* feat: add realtime cursors
* feat: add realtime avatars
* add current user to the online users list
* add border color to the avatar
* feat: allow multi user to edit multi-versions simultaneously
* add getOne fn for fetching single api + avatar component
* fix: set appDef from api call
* replace webrtc with ws
* move yjs to separate port (temp)
* run on same port
* fix: update ymap when styles have changed
* - Add static list of colors
- Show the username on hover
* fix: cursors not showing up
* fix: review comments
* remove unused vars
* add new cursor style
* - Run yjs connection on a different path
- Add zindex to cursor such that query editor has precedence
* fix: event emitter bug + position bug
* use shorthand
* cursor style changes
* fix cursor positions
* inc zindex
* change max avatars to 3
* Working on refresh token fn
- Added refresh token to options
* Added and tested google oauth refresh token flow
* Working on outlook refresh token code
* Tested refresh token fn with google oauth and outlook
* Resolving a bug
* Added prompt=consent to auth url
* Appended custom params to authUrl
* Resolved a test error
* revise metadata service for telemetry
* send finish installation metric only on prod
* fix endpoint
* keep fetching metadata with an interval
* fix version check error
* remove ip address on telemetry
* fix version creation on empty/invalid version from id
* fix spec
* hotfix: Edited changes not shown when switching versions (#2386)
* fix edited changes not shown when switching versions
* fix version create from not picking editing version
* fix version switch not updated on editing version save
* Reassociate run query events and queries in backfill for new versioning system
* Promote the order of execution for AddApplicationIconColumn
* Do not create application_icon column if it already exists
* Consider table toggle actions while migrating
* Set visibility, loadingState and disabledState of all components to be displayed as UI
* Set fxActive of visibility, loadingState and disabledState of all existing components to true
* Remove unnecessary console.log from migration
* implement google sheet oauh token refresh flow
* format lint
* make use of constructor name as instanceof fails
* remove unused import
* force consent to get refresh token on googlesheets ds
* add plugins to docker compose
* build common
* change cmd
* build:pkgs
* fix'
* temp: add named vol
* update docker-compose for plugins dev
* update seed script to transpile only
* fix ci
* fix ci
Co-authored-by: gandharv <gandharvkumargarg@gmail.com>
* add modal to create init version
* add init version and ability to auto save
* auto save only when editing version is set
* Feature: App version management ui revamp (#1873)
* add modal to create init version
* add init version and ability to auto save
* auto save only when editing version is set
* revamp version switching on editor
* skip save on app definition load
* handle click outside dropdown
* fix remove component and update styling
* fix auto save detail
* change wording of deployed to released
* remove console.log
* add spec for version creation from another version
* update version create model and hide save detail after shown
* add launch icon
* Set categories for app templates
* Display button with dropdown for create new app
* Show modal when "create from template" is chosen
* Implement template selection modal category list
* Filter and list app templates based on selected category
* Display template screenshot on templates modal
* Align template screenshot vertically and horizontally centered
* Deploy template app when deploy button of template modal is clicked
* Display data sources in template preview
* Add search functionality to template modal
* Show "no results" if templates are not found
* Display category counts on template list
* Add styles for darkmode
* Dark mode style updates for template modal
* Add dark mode template screenshots
* Correct template screenshot proportion
* Change text on deploy button of template modal
* Remove links to apps and library from dashboard
* Remove library apps
* Remove unnecessary import of deleted component Library
* Show loading icon when template is being created
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
* feature-842 mongo support
* feature-842 fix
* json parse improvement
* Feature-842 date data type support
* feature-842 fix
* convert ejson to bson on mongo queries
* fix type on parse
* json parsing
* Typo error fix
* Insert Many Fix
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
* add migrations for versioning datasources and dataqueries
* eslint migrations folder
* update ormconfig to use app context in migrations
* make app to make use versioned data sources and queries in editor
* app import should honor data source and query versioning
* register ts-node path on running migrations
* load data queries when finding versions
* update e2e tests
* handle for invalid oauth2 datasources
* update e2e tests
* introduce db migrations access lock to handle concurrent backfill
* scope migrations by missing version id
* fix import export without data source/query versions
* fix import
* fix spec
* handle invalid data on migration
* fix import
* remove console logs
* handle new app imports
* fix version check
* fix async creation
* explicitly add timestamps on version import
* make calendar week date formattable
* update version only if calendar is present
* Fix erroneous date format determination while migrating to custom week view date format
* Add documentation for calendar week view header date format style
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* Install typesense npm package
* Implement CRUD operations using TypeSense
* Add documentation for typesense integration
* Rename apiKey to api_key and make it encrypted for typesense
* Add logo for typesense data source
* Add delete operation to typesense
* Add documentation for delete document
* Make protocol field a dropdown for TypeSense
* Additional documentation for TypeSense data source
* upddated to new api & multiselect labels fixed
* backfill properties
* Expose default value of multiselect once the component is loaded
* Make multiselect reset to empty whenever option set is changed
* Whenever option set of multiselect changes, set it to default value if default value fits inside the new set of options
* Avoid crash in multiselect using ? operator.
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* feat: add restore shortcut when component is deleted
* change toast messages to hot toast from toastify
* change toast messages to hot toast from toastify
* change toast messages to hot toast from toastify
* on key press match clear the pressed keys
* add react hotkeys hook and delete use-shortcuts custom hook
* change toast messages to hot toast from toastify
* add immer lib
* applyPatches from immer + add undo redo on appdefination changes
* remove notification on undo
* add can-undo + can-redo checks
* add missing can-redo to handlePatchAdd
* add component versioning on componentDefinitionChanged
* set default value of loading state to interpolated boolean false for table
* set canUndo on initial load to false
* fix last element not getting removed on undo
* Remove console log
* add migration to change loadingState for existing tables
* set loadingstate value based on the previous value
* fix: app crash on inspector opening
* add check for selectedComponentId inside components def
* update template definitions for loadingState
* fix alert for success, error, info for button notifications
* github actions for PR and push to develop branch
* test workflow
* move to workflows folder
* add setup node action
* modify build
* specify npm version
* config unit test
* specify host postgres
* specify container to run on
* add postgresql dependency
* add specify ws adapter for test
* add e2e test
* fix linting
* only log errors on tests
* update eslint config
* fix linting
* run e2e test in silent mode
* fix library app spec
* dont send email on test env
* fix org scope
* mock env vars
* remove reset modules
* force colors
* explicitly close db connection
* add eslint rule for floating promises
* update workflow
* fix floating promise
* fix lint
* update workflow
* run on all push and pulls
* update lint check files
* simplify workflow
* increase js heap size on env
* separate lint and build
Co-authored-by: arpitnath <arpitnath42@gmail.com>
* migration: add migration for global settings
* add empty check for definition
* update template definitions
* set slug as null on definitions
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
* 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>
* Better canvas
* Better canvas
* Better canvas
* Fix for resize
* Fix for drag
* Fix for drag
* Fix for drag
* Adjust width of components by # of grid lines
* Adjust components to comply with gridline based width
* Fix the width of rigth sidebar
* Fix for subcontainer resize issue
* Fix for dropped widget width (sc)
* Fix subcontainer drag width
* Fix grid for sub container
* Fix viewer
* Fix
* Fix
* Use RnD for dragging within canvas
* bounds for subcontainers
* fix for subcontainers
* Fix for mouseover issue
* Fix
* Fix widget widths
* Fixes chart
* Fixes qr scanner and divider
* Remove scaleValue
* Mmerge fix
* Mmerge fix
* Fix for ormconfig
* Fixes for comments
* Add comment where the user clicked
* Disable dragging on viewer
* Max width for canvas
* Fix for widget click events
* Fix for radio button
* Rebase widget width and left offset for responsive canvas
* Fix
* Fix the width of file picker
* Fix for calendar widget
* Disable zoom selector
* Fixes comment positions
* css fixes
* Fix
* Recompute width and offset of subcontainer widgets based on its parent's width
* Calculate container width separately for modal children while migrating to responsive
* Refactor migration to responsive canvas whereinwhich all mutations are done only after all required changes are computed
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* add ability to list buckets/objects and create signed url fot GET and PUT
* ask to specify region when adding s3 buckets
* add ability to read file contents from s3
* add ability to upload to s3 bucket
* rename s3 dropdown options
* add abilty to read, write, list and generate signed url for gcs
* fix gcs query service
* remove paginated response
* make gcs private key as textarea
* revise gcs upload response
* add ability to list buckets/objects and create signed url fot GET and PUT
* ask to specify region when adding s3 buckets
* add ability to read file contents from s3
* add ability to upload to s3 bucket
* rename s3 dropdown options
* update region dropdown for s3
* 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
* add column app_create to group_permissions table
* add app create column to group permission entity
* backfill app_create permission as true for admin group
* add app delete permissions to group permissions
* update group permissions entity for app delete
* add ability to set group level permission for app creation
* refactor and fix app clone and imports
* fix created by user on homepage
* fix spinner on import
* update seeds service to set group level permission
* fix rollback query
* fix imported/cloned app timestamps
* honor logged in user permissions at UI
* remove console log
* fix data query id being replaced on import
* replace data query id within app versions on import
* Add custom spacing for table cells
* Add migration to set every tables cell spacing compact
* Rename cellSpacing to cellSize
* Add documentation for table cellSize
* add ability to import and export apps
* copy credentials on imports if it already exists
* authorize exports for public apps with only authenticated users
* remove app auth guard for export
* make import as a separate button
* update import button styling
* handle prexisting slug while import
* set file input as null when file has been read
* add fix for slug updation on import
* 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
* Add functionality to highlight selected row
* Add migration to set highlightSelectRow to false for existing tables
* Add documentation for highlighting selected row
* Support highlighting selected row for striped table
* Functional implementation of checkbox selector for table
* Add inspector toggle to display bulk selector checkboxes
* Expose selectedRows variable of Table
* Refactor select-all checkbox into a separate function
* Remove unnecessary import of v4 package
* Add TODO comment for adding checkbox color
* Revert typo that accidentally got committed
* Add explanatory comment in selectedRows data generation code
* Combine original row data and displayed row data for selectedRows
* Show only original data in selectedRows
* Use useRowSelect hook to for implementing table selector
* Show selector column only when it is enable from inspector
* Add migration to set showBulkSelector to false for all tables
* Add documentation for bulk selection
* Set label of toggle that (en/dis)ables bulk selection: 'Bulk selection'
* get queryOptions from param and fill the params tab
* update params tab when url is updated
* gets the params from url and merges with params entered manually
* rolling back restapi/index.jsx
* Add multiple fields for order and orderType in firestore query
* Add support for querying firestore with where, order and limit
* Minor refactoring updates for firestore query operations file
* Minor refactoring for firestore query operations
* Update package-lock.json with npm 7.20.0
* add feature for data query deletion
* fix after query deletion default query selection is not being done
* move delete option and hide option unless mouse is hovered on query
* show dialog box confirmation before query deletion
* 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
* add ability to preview and edit versions
* add specs for get app versions
* create new app versions from prev definition
* fixes
* move default slug creation outside typeorm transaction
* set slug as app id when null
* fix app creation response
* fix entities not loading on test env
* add e2e test for version creation scenarios
Co-authored-by: navaneeth <navaneethpk@outlook.com>
* Add option to enable and disable SSL in Postgres configuration UI
* Connect to postgres with/without SSL based on user's choice
* Add migration to set SSL enabled for every postgres data source
* Fix data source kind name in migration
* Fetch only postgres datasources in migration for turning on SSL
* Add query params option to Go-to-app action
This commit adds support for setting query params for the
go-to-app action. When the new app is launched, the passed in
object will be sent as search query params.
* Allow user to enter URL params in multiple input boxes
* Abstract goto-app action logic to a separate container
* Supply necessary newline
* Set 'type' of 'app' property of go-to-app action to 'text'
* List only those apps that has proper slugs for goto-app action
* Modify goto-app action config panel to support Event Manager
* Use EventManager instead of EventSelector for table action config
* Add data migration to make old apps support multiple event handlers
* Fix UpdateDefinitionsForTableActionEvent migration
This commit ensures that the migration recreates onClick event properly
* Fix bug that caused an 'onBulkUpdate' event to be created during migration
* Remove EventSelector
* Add margin above `remove handler` button on Table actions inspector panel
* Multiple handlers for each events
* Fixes
* Migration
* ormconfig to use entities in migrations
* use connection object to build queries
* fixes for bulk update
* Fix for table action button
* use query runner to wrap migration in same transaction
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
* 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
* Add QR code scanner widget
This commit adds QR code scanner widget which
* Displays a viewfinder that can be activated or deactivated
* Exposes a variable named lastDetectedValue which holds the
data contained in the last QR code it was able to scan
* Defines an event onDetect which is fired whenever a QR code
is successfully scanned
* Add documentation for QR scanner widget
* Supply missing newline
* Supply missing newline for qrscanner.svg
* Supply missing newlines and semicolons
* Update error modal content
* Remove `active` property from QrScanner
* Add blob: to content security policy
* Disable content security policy
* Add content security policy that allows self, unsafe-eval and blob
* update docker-compose and docs for docker dev setup
* specify test environment explicitly on npm scripts
* fix migrations to be picked up from either root or dist folder
* fix default slug update
* Add endpoint to update user first and last name, password
* Add settings page that allows editing user details
* Respond with first and last name when user is updated
* Add 'Settings' item in the drop-down down for user
* Add newline for index.js of settings page
* Supply missing newlines
* Ask for current password inorder to change password
* Add end-point to change password
This commit also adds a Guard to ensure that the user reenters
existing valid password.
* Add e2e test for change_password endpoint
* Copy change for the toast presenting misentered current password while changing password
* Change password when enter key is pressed from 'new password' box
* Add newline and the end of password-revalidate.guard.ts
* Delete 'AppUser's before App is deleted
This commit ensures that all the corresponding entries of AppUser
are deleted before an App is deleted. This is done so to prevent
pre-existing foreign keys from halting the deletion.
* Delete all One-To-Many associated entities when app is deleted
This commit makes the App service's delete action delete all the
related entities of types: FolderApps, DataSources, DataQueries,
AppUsers and AppVersions, before deleting the app itself.
* Set currentVersionId to null before deleting app
* Add end-point that deletes an application
Deleting an application will also delete its corresponding
data sources, data queries and app versions.
* Add unit test for app deletion end-point
* Additional e2e test for delete app end-point
This test ensures that non-admin user cannot delete apps.
* Send invitation tokens with the response to GET:organizations/users
* Add column in users table displaying 'copy invitation' button
This commit also makes the app generate corresponding invitation
URL and copies it to the clipboard.
* Add 'Copy invitation' button next to user's 'invited' status
This commit adds an icon button next to the 'invited' label
of users who are invited. Clicking on the button will copy the
corresponding invitation URL to clipboard, and will also
display a notification that says 'Invitation URL copied to clipboard'
* Remoce unnecessary import of Button
* Remove unnecessary empty line
* Remove unnecessary skeletal line
* Supply a newline at the end of theme.scss
* Show 'Copy invitation' button only for admins
* Send invitation token to front-end only if an admin is logged in
* Show 'copy invitation' button only if invitation token is available
* make nginx config generic
* fixes env substituted
* remove npm script dependencies from dev
* match all nginx location to server
* revert git clone dev branch