* 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>