* init
* footer component with pagintion ui basic styles
* pagination: apply a limit and offset rows through query params
* open create row drawer from footer button
* border color for dark theme footer button
* cleaned
* pagination
* fixes: input value
* moved functions to component level
* adds dto for create and rename tables, renametable service
* adds constraints for psql reserved keyword for column name
* validations for column default value
* initial commit
* multi env changes
* multi-env changes
* entity fixes
* data query changes
* fix
* trying to avoid conflict with EE
* moved version creation to app creation function
* fixing some issues
* execution of data query
* revert options changes
* changed migration
* fixed some migration issues: testing migration
* multi env support
* app import export fix
* fixes
* migration fixes
* removed plugins from data query
* fixing some migration issues
* fixes
* remove console log
* fix
* front end api changes
* backward compatibility for app import
* Fixed a bug
* correcting some mistakes
* Added constraints and fixed some issues
* changes
* fix for data source listing
* fixing version operation issues
* remove kind from data query
* removed kind from data query
* fixes
* fixes
* fix for version creation
* migration fixes
* Fixed preview and run query issues
* Fix: new version and event query id issue
* fixed rest api oauth issue
- next test refresh token
* import export changes
* fixes for app import
* import fix
* added await for for loops
* fix
* fix for migration
* Fixed backend oauth-envId issue
* import export changes
* migration fixes
* fix
* fix
* fix for app import from 0.9.0
* test case fixes
* test case fixes
* making app name mandatory for import
* adding type for options
* fix: imported apps query linking issues
* review changes
* lint issue fixes
* added on delete cascade
Co-authored-by: Muhsin Shah <muhsinshah21@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>
* add ability to export app versions
* remove console.log
* add spec
* [ Enhancement ]: Ability to export versioned apps ( frontend ) (#4271)
* added basic UI and functionality
* added functionality to export all versions or selected versions of app
* added UI
* refactored the code
* refactored code
* use custom hook for checking if component is mounted or not and accessing darkMode from props
* showing current version first
* added spacing between container and input tag and input tag and text
* added cursor pointer on the version container
* removed use mount to avoid extra re-rendering component
* fixed typo request
* update permissions
* fix permissions
Co-authored-by: Manish Kushare <kushare.manish9@gmail.com>
* Added frontend and backend validation
* Added line that got deleted accidentally
* Delete package-lock.json
Did not mean to include
* Minor fixes
* Revert "Delete package-lock.json"
This reverts commit c56f79dfca.
* Reverted package.json
* Ran the linter
* Fixed accidentally changed files
* Ran frontend linter
* Removed changes on frontend json
* Attempting to add newline
* Added missing newline
* Update frontend/src/Editor/AppVersionsManager.jsx
Co-authored-by: Midhun G S <gsmithun4@gmail.com>
* Fixed issue resulting from deleted else
* Attempting to fix lint errors
* Linting fix
Co-authored-by: Midhun G S <gsmithun4@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
* 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