* add support for Copilot assistance
* clean up
* fixes workspace settings crash
* refactor and resolved review comments
* api endpoint should be inferred from env
* copilot style fixes
* copilot style fixed
* beta tag fro copilot settings: workspace
* fire toast for unauthorised recommendation request
* include the previous code with the newly generated response
* scoping apikeys to orgs
* controller updates for copilot
* copilot org key updated
* disable toggle for new workspaces
* disable toggle for new workspaces
* fixes: multi-workspace toggle updates
* uninstall unsued packages
* fixes button state for copilot in transformations
* updated the urls
* Updated package.json to support node 18
* Updated package-lock.json with force install
* Updated frontend package.json
* Updated server package.json
* update frontend package-lock.json
* update render dockerfile
* update dockerfiles for node 18
* update node version in actions
* fix setup script for AMI
* install using nvm
* debug
* source bashrc
* change ami os version
* change base ami
* make use of ubuntu focal lts version
* update script
* change branch name
* revert branch name
* update workflow
* node upgrade [plugins] modules updated (#5482)
* modules updated
* adds saphana and oracle package
* adds saphana and oracle package
* eslint rules for -unresolved and resolved properties
---------
Co-authored-by: Akshay Sasidharan <akshaysasidharan93@gmail.com>
Co-authored-by: Arpit <arpitnath42@gmail.com>
* Add routes for multi-page apps
* Modify Editor, Viewer and Inspector to accept new app structure
* Show a page selector on left side bar
* Align component deletion logic with new app schema
* Make subcontainer work with multi-page apps
* Load components state properly in viewer
* Use UUID instead of handle for pages
* Display sidebar on viewer to switch pages
* Add proper URL suffixing for pages in viewer
* Add action to switch page
* Revert translation file back to its pre-existing linting
* Fix bug that caused modal to not open/close
* Add support for query params in page switch
* Fix the issue that caused navigation to fail while accessed via slug
* Add missing SwitchPage file
* Add support for page level variables
* Add migration to convert existing apps to new schema
* Add rollback for converting multi-page definitions back to single-page
* Fix migration for multi-page apps
* Adapt import/export service for multi-pages
* [improvements] Multi-page applications (#4755)
* UI updates for page selector popup card
* delete page
* delete page check: if only one page exits
* switch to home page if the selected page is removed
* adds and switch to new page
* updating page name
* updates to home page and starting page
* handle updating the home page when home page is deleted
* search box for filtering pages and minor style updates for the page handler card
* header search box style fixes
* for creating a new page, page handle needs to be unique
* seperating into smaller components
* updated pinned icon for page selector styles and settinf styles
* Leftsidebar header ui component
* handle dark theme
* page handle ui and dark theme fixes for page menu
* page handler edit modal
* pinned state and update pinned state for menu options triggered
* dark theme fixes for edit modal
* handle on update should not be empty or prev
* page handler updater
* added loading state for saving
* handles cancels
* fixes slug ui
* fixes crash for older app versions
* updates the query params when handle gets an update
* update homePage to homePageId
* removes console.log
* go back to the popover for modal close
* fixes: Difficult to select page
* fixes: Difficult to select the three-dot menu
* fixes: on visiting the root url, navigate to homepage on viewer
* adds tooltip for url
* updates the page selector sidebar with sync with query manager
* refactor and cleanup
* refactor and cleanup
* Compute component state when page is switched
* modal should not close on click outside
* disable save button if there is not change in the page handle input
* should show/hide page menu when hovered
* page icon
* updates delete icon for disabled state
* query manager should always be on top of page selector
* checks if homePage key exists in pages def
* updates page handler menu
* updates the clear icon
* page handler menu position
* page handler menu position
* handle icon
* alert msg
* global settings handler for updating viewer page navigation
* show/hode page navigation for viewer
* info text for toggle
* Multipages:with sortable list [DnD] (#4783)
* applied sortable list
* on sort updates the definitions
* fixies: app crash for dnd
* viwer: canvas width should be 100% when navigation drawer is disbaled
* fixes: homepage/startpage reload
* clean up
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* Multipage UI viewer (#4801)
* new ui changes for viewer pages
* fixes postions for debugger and datasources popover
* removes console.log
* Multipage : hide page and unhide page feature (#4803)
* adds: ability to hide pages
* hides pages in viewer
* unhide page
* hide icon
* allow accessing hidden pages from url
* add: duplicate page (#4802)
* add: duplicate page
* do not copy the same references from the original page
* page name and page handler should be unique for duplicate pages too
* Add support for on-page-load events
* Add icon from page settings menu item
* Convert existing templates to multi-page schema
* error logs for page level and app level errors (#4842)
* Adapt comments feature for multi-pages
* [Bugfix] multipage - page menu interactions (#4844)
* fixes: menu popup interaction
* fixes: on modal input focus, we switch the page
* Adapt multi-player to multi-pages
* Add editingPageId to ymap
* Log self, others and editor props in real-time avatar generation
* Save editing page id to appDef
* Add editingPageId to presence in RealtimeCursors
* adds no results ui for empty search results (#4869)
* page icon updated (#4870)
* fixes:Version switching crashes if the target version does not contain the current page (#4868)
* Remove unnecessary setting of editingPageId on ymap
* Remove unnecessary console.log
* [Bugfix] Multipages: widget inspector event popover unmounts (#4887)
* introduced a local state for events
* cleaned up inspector.jsx
* fixes: table widget inspector event accordion
* Do not run switchPage twice when viewer is loaded
* Preview should open the currently editing page
* Properly place navigation and canvas in viewer
* Update app definition whenever event manager changes are made
* Add support for browser back and forward button in multi-pages
* Rename handleBackButton to handlePageSwitchingBasedOnURLparam
* Add support for cut/copy/paste and clone
* Fix the crash caused by boxShadow
* Add support for background colors in viewer in multi-pages
* Run queries to be run on load on viewer, in multi-pages
* Fix issue that caused inspector popovers to collapse
* resolves workspace vars in viewer mode (#4892)
* Multipage : Navigation for Mobile-ui (#4814)
* refactored to components
* burger menu for mobile ui
* merge conflict fix for hidden pages
* hamburger menu positioned in the header
* viewer header reafctored
* viewer mobile page manu styles
* handles dark theme
* mobile menu with dark mode toggle in the footer
* components are moved to page level, handle for mobile layout
* style fixes
* removing unwanted code block
* dark theme fixes
* style fixes
* fixes: events are sortable (#4895)
* fixes: events are sortable
* Remove uneccesarily repeated call of setEvents in EventManager
Co-authored-by: Sherfin Shamsudeen <sherfin94@gmail.com>
* renamed settings to Event handlers (#4898)
* updates the page setting title to Page Events
* temp commit
* Add support for setting max width in percentage
* fixes: paramUpdates for boxes: 🙌🏻
* [Bugfix] Multipage - viewer canvas dark theme (#4897)
* fixes: darktheme bg for viewer canvas
* reverts canvas size
* Fix for inspector bouncing back to previous values
* resolves pages variables in pythong and js transformation (#4905)
* csa support to event manager for pages (#4907)
* Add support for setting canvas width in percentages
* Persist page level variables across page switches
* latest definitions is merged with the current appdef (#4914)
* latest definitions is merged with the current appdef
* mutating the local obj
* cleanup
* iterate through pages for new versions are created
Co-authored-by: Arpit <arpitnath42@gmail.com>
* 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
* 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
* 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
* 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
* 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>
* 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
* 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>
* 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