* 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 <[email protected]>
* 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 <[email protected]>
* 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 <[email protected]>
* Add and modify data-cy for widgets
* Add selectors
* Add constant texts and methods
* Add common widget operations
* Add momet to Cypress
* Add common utils and optimized commands
* Add methods specific for Datepicker
* Add spec datePickerHappyPath
* Minor selector modification
* Add verification of value from inspector
* Updated cypress test for button widget
* Updated the custom command for create app
* Added data-cy attributes for elements
* Updated common selectors file
* JSON Tree Viewer component: init
* JSON Node indicator
* Node indicator and NodeString
* function to get current node type and render component accordingly
* Handles Object, Array, String type
* Show/hide node identifier for only array and object with more than 0 items
* adds option to render node icons
* inspector json-tree: queries icons
* inspector json-tree: component icons
* fixes min/max width for the inspector popup card
* renames node details: keys to entries
* fixes getting the type of the currentNode
* inspector styes and style fixes for string, bools and number
* handles styles for undefined and null type
* removes type label for null and undefined
* fixes node margins
* adds option to use indentation node block (css border for node groups)
* improvement: update pinned icon as per pinned state
* fixes expanding and flatenning the first element of a nested list
* fixes length label displays false, should always be number.
* handles function type
* fixes margin for String nodes
* inspector styles
* updates hexacode for selected node bg
* styles fixes
* adds copy-to-clipboard for each nodes
* show hide buttons for actions on mouse enter
* adds: delete widget from inspector popup
* adds: widget selector action
* tooltip for showHide options action buttons
* refactor
* adds: runQuery action for queries
* removes icons for root nodes for inspector
* Toggle icon (NodeIndicator) should should be displayed for Object and array type (0 length)
* hide node indicator for functions
* removes hover for nodes
* styles fixes
* on hover icons are not visible for expanded items
* style updates: selectable node
* adds onSelect callback option on lables
* adds: on expand with onclick lables props
* fixes cursor styles on Mouse enter
* fixes copy to clipboard action: from value to path
* fixes currentPath
* copy path to clipboard, return absolute path
* fixes broken widget icons
* selecting a widget in editor, selects the component/node in the tree
* fixes app crash when adding runjs queries to the json-vieweer
* fixes text-transformation to active nodes
* fixes with selectedWidget in the editor, expandable node was alwasys the widget node
* adds: dark theme
* clean up
* error boundary
* fixes: current node and hovered node update callback on mouse enter
* fixes options alignmeny
* adds more actions menu option popover
* refactored
* fixes reverse selection fo widget and node
* fixes radio button svg icon
* fixes: two child nodes of different parent get the active class
* fixes popover menu options
* fixes selected node display:hidden
* clean up
* toggle icon should not expand if empty
* adds tooltip for more actions
* spliting into different files
* minor improvements: toggling icon should select the label node, selected node if string should not updated to the last selected widget node
* resolves lifecycle method changes
* resolves changes
* resolves changes
* revert lock file changes
* Revert "revert lock file changes"
This reverts commit 10de6accf7.
* fixes: app crash, undoing one widget from canvas
* adds a comment for expand with labels
* minor enhancement:onMouseEnter updates the current hovered node
* minor enhancement: differentiate hovered node
* 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
* setting minimum width for left sidebar
* updated left sidebar width
* left-sidebar width updation and including label
* adjusting margin for changed width
* bugfix darkmode
* fixing bug in margin of sidebar
* updating icon for inspect
* aligning canvas for changed width
* adjusting margin of sidebar popovers for changed sidebar width
* margin bugfix
* 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
* 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 <[email protected]>
* 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
* feat: add left sidebar new ui ❇️
* new: add svg spring motion dark mode icons
* - add tooltip
- reduce icon size to 20px h&w
- fix indentation
* remove logs
* fix: typo
* fix: on click of arrow the ref was not captured, react repo has reference to this issue at : https://github.com/facebook/react/issues/20325
* css fixes
* color changes for moon icon
* revert css'
* fix back button not working due to incorrect clean up function
* feat: add use-router hook component
* - make sun svg have a white circle inside
- fix the alignment of darkmode toggle on homepage
* fix: pkg lock after fresh install with 7.20.x