* command palette E2E
* tidy up
* Improve theming with spectrum badges and dedupe spectrum label usage
* Update data section nav to match designs and use panel component
* Fix main content layout in data section
* Update data section routing for tables
* Improve data section routing for tables to account for edge cases
* Update internal and sample datasource routing
* Update external datasource routing
* Update routing for queries and make a top level concept like everything else
* Update routing for views
* Fix undefined reference when deleting datasource
* Reduce network calls and fix issues with stale datasourcenavigator state
* Update routing for REST queries and unify routes for normal queries and REST queries
* Lint
* Fix links for queries from datasource details page
* Remove redundant API calls and improve table deletion logic
* Improve data entity deletion logic and redirection and fix query details keying
* Improve determination of selected item in datasource tree
* Update command palette to support new data routes
* Update command palette, fix keybind issues and updating loading state
* Lint
* Fix publish command and fix preview published app URL
* Fix BBUI import
* Lint
* Fix datasource navigator selected state not working for internal DB or sample data
* Update command palette to use ctr+k/cmd+k
* Update command palette to match new designs and add visible categories
* Restore missing styles£
* Use proper theme constants for changing theme in command palette
* Add command palette action for inviting users
---------
Co-authored-by: Martin McKeaveney <martinmckeaveney@gmail.com>
* Added tabs to the component settings section in the builder
* Review updates
* Update setting tab buttons to be size M and use a lighter font color when selected
---------
Co-authored-by: Andrew Kingston <andrew@kingston.dev>
* Add ENFORCEABLE_SSO feature flag
* First draft of enforce sso configuration / show single sign on url
* Reading and writing isSSOEnforced + integration with login page
* Enable CI + lint
* Set correct base branch for CI
* Test fix for expected string changed
* Use tenant aware platform url as SSO link
* Bring in latest pro changes
* Lint
* Add useEnforceableSSO mock helper function
* Update configs.spec.ts with coverage for public settings
* Update users.spec.ts with additional tests for isPreventPasswordActions
* Lint
* Update refresh OAuthToken to use correct enum and add case statement
* Add full undo/redo support for screens
* Add loading states to disable spamming undo/redo
* Add keyboard shortcuts for undo and redo
* Fix modals not closing in design section when escape is pressed
* Remove log
* Add smart metadata saving to undo/redo
* Add error handling to undo/redo
* Add active state to hoverable icons
* Fix screen deletion
* Always attempt to get latest doc version before deleting in case rev has changed
* Move undo listener top level, hide controls when on certain tabs, and improve selection state
* Add tooltips to undo/redo control
* Update automation section nav to match other sections
* Fix automation list padding
* Fix some styles in create automation modal
* Improve automation section styles and add undo/redo
* Update styles in add action modal
* Fix button size when creating admin user
* Fix styles in add automation step modal
* Fix issue selecting disabled automation steps
* Reset automation history store when changing app
* Reduce spammy unnecessary API calls when editing cron trigger
* WIP automation refactor
* Rewrite most automation state
* Rewrite most of the rest of automation state
* Finish refactor of automation state
* Fix selection state when selecting new doc after history recreates it
* Prune nullish or empty block inputs from automations and avoid sending API requests when no changes have been made
* Fix animation issues with automations
* Sort automations and refetch list when adding or deleting
* Fix formatting
* Add back in ability to swap between values and bindings for block inputs
* Lint
* Format
* Fix potential issue in design section when selected screen is unset
* Fix automation arrow directions everywhere, tidy up logic and fix crash when using invalid looping
* Lint
* Fix more cases of automation errors
* Fix implicity any TS error
* Respect _id specified when creating automations
* Fix crash in history store when reverting a change on a doc whose ID has changed
* Lint
* Ensure cloneDeep helper doesn't crash when a nullish value is passed in
* Remove deprecated frontend automation test
---------
Co-authored-by: Rory Powell <rory.codes@gmail.com>
* Prevent SSO users from setting / resetting a password
* Add support for ENABLE_SSO_MAINTENANCE_MODE
* Add typing to self api and build out user update sdk
* Integrate sso checks with user sdk. Integrate user sdk with self api
* Test fixes
* Move self update into SDK
* Lock down maintenance mode to admin user
* Fix typo
* Add health status response and return type signature to accounts.getStatus
* Remove some unnecessary comments
* Make sso save user function non optional
* Remove redundant check on sso auth details provider
* Update syncProfilePicture function name to getProfilePictureUrl
* Update packages/worker/src/sdk/users/events.ts
Co-authored-by: Adria Navarro <adria@revityapp.com>
* Add ENABLE_EMAIL_TEST_MODE flag
* Fix for logging in as sso user when existing user has password already
* Hide password update and force reset from ui for sso users
* Always disable sso maintenance mode in cloud
---------
Co-authored-by: Adria Navarro <adria@revityapp.com>
* Fix options inclusion constrant not being generated when creating a table from file upload
* Fix 0 being treated as null when specifying min and max constraints for number fields
* Sort newly generated option field inclusion constraints
* Revert previous solution and fix problem by removing incorrect local assignment statement
* Rewrite position dropdown helper to properly work as a svelte action, improve performance and fix bugs
* Update action button styles
* Update spacing on some onboarding pages and update background gradient
* Prevent special characters in first app name
* Fix type in onboarding tour
* Default first app name and url to having a value
* Update text in first app onboarding file upload
* Fix double mounting of apps page causing issues and templates error
* Fix null app ID when creating your first app using data upload
* Fix app deletion not causing app list to be refreshed
* Ensure update state actions have a binding for their own key
* Make own binding generation more futureproof
* Refactor array.find to array.some
* Move state binding generation up a level to account for all actions needing to be able to reference newly created state bindings
* New App Onboarding
* Lint
* Move app creation onboarding into its own route
* Fix quiet action button variant
* Fix alt attribute background image flashing
* Update routing logic and redirects to show app creation onboarding
* Navigate to data rather than design upon initial app creation to allow tour to function properly
* Tidy up popover logic and remove tip functionality
* Fix binding popovers
* Lint
* Silence spammy warnings from the builder
* Exclude SVG files from rollup plugin image to fix spectrum icons
* Fix help menu icon colours not working in light themes
* Tweak help menu styles
---------
Co-authored-by: Andrew Kingston <andrew@kingston.dev>
* New Help Menu
* design PR feedback
* Feedback updates
* Feedback updates, font awesome enhancement, upgrade button hidden if licensing is disabled
---------
Co-authored-by: Dean <deanhannigan@gmail.com>
* Add padding to text field input
* Apply padding to modal binding input
* Support relationships in automation bindings
* Trim automation field keys
* Trim automation field name
* Empty string check
* Add checkbox for clearing relationships update row
* Added state for automation field metadata
* clearRelationships updateRow check
* Padding tweak
* Added fields for tls certificate files
* lint
* Only include cert fields if SELF_HOSTED
* lint
* Refactor getSchema function
* Add datasource field group with accordion
* Handle no display column on fieldGroup field
* Override text transform accordian header
* Renamed from TLS to SSL in UI config
* readable flag
* Add accordion component
* Refactor
* Update BB logo to black
* Update top nav bar and core layout
* Add redesign for apps pages
* Update user and groups pages
* More WIP portal redesign!
* Fix top nav colours and fix selected tab not updating
* Remove log
* Update copy on settings pages
* Update and standardise page headers and subtitles, and remove side nav titles
* Update font styles to allow for easy customisation
* Update button styles to always use newStyles, update auth page styles
* Update settings pages to new designs
* Update structure for account pages
* Add initial rewrite of app overview section
* Update config checklist to properly center
* Update app overview version and name/url screens
* Add tooltip to explain why URL cannot be changed until unpublishing
* Update overview automation history tab
* Update overview backups page
* Rewrite app overview access tab
* Update table hover colours
* Remove scrolling from tables when not required and stop selects from updating their own state locally
* Update table styles to support flexible column widths much better
* Fix extremely long strings in breadcrumbs not wrapping
* Fix multiple issues with long text overflow
* Fix flashing in version settings page
* Fix loading bugs in app backups page
* Add sidebar for portal and use it for automation history. Fix multiple overflow and scrolling issues
* Tidy up
* Update user details page to use tables and match designs
* Update users detail page
* Update user and group details pages with new tables
* Fix automation error linking from apps page and improve automation fetching logic in automation history
* Move theme and API key into user profile dropdown instead of settings
* Move settings before account and show plugins for devs
* Convert plugins page to table and update components and modals
* Update links when going back from the builder
* Update plugin search placeholder
* Fix URLs in app overview
* Properly handle text overflow in plugins table
* Remove getting started checklist
* Fix checklist removal and fix profile modal
* Update email details page to match new designs
* Cleanup
* Add licensing and env logic to determine which account links to show
* Update upgrade button URL for cloud accounts
* Update app list to use a more compact style
* Make core page layout responsive and update apps list to be responsive
* Update mobile design of apps page
* Update more pages to be responsive and add mobile specific components
* Refactor main portal page into multiple components
* Update multiple pages to be responsive and improve loading experience
* Make automation history page responsive
* Update backups page to be responsive
* Update pickers to use absolutely positioned root popover so that overflow does not matter
* Fix some responsive styles
* Fix update link in app overview
* Improve dropdown logic
* Lint
* Update click outside handler to handle modals properly
* Remove log
* Fix mobile menu upgrade button not closing menu
* Hide groups page if disabled at tenant level
* Centralise menu logic and show full menu on mobile
* Update app access assignment and fix backups table
* Ensure avatars cannot be squished
* Standardise disabled field text colour
* Allow developer users to access users, groups and usage pages
* Allow readonly access to users and groups for developer users
* Remove logs
* Improve users page loading experience
* Improve responsiveness on apps list page and fix discussions link styles
* Update spacing on user and group detail page and fix usage page showing wrong copy
* Fix logo override not working
* Pin minio version to an old one that supports the fs backend in dev
* Shrink upgrade button
* Shrink user dropdown
* Update assignment modal text
* Remove clickable visual styles from plugins
* Always show groups section in app access page
* Update app overview button styles to include more CTAs
* Hide edit and view links in more menu on overview page unless on mobile
* Make usage stats responsive and fix layout issues
* Add core page layout for onboarding to frontend-core
* Add initial work on fancy form components for onboarding
* Add checkbox component and add error handling to fancy form fields
* Add fancy select and improve other fancy components
* Update fancy components and fix select rounded corners
* Fix mobile styles for split pages
* Revert google button
* Fix links not working with click handlers
* Fix label animation
* Improve styles of fancy components
* Improve mobile compatibility with fancy button radio
* Revert changes to builder files for testing
* Tidy up small UI issues
* Improve some minor design issues
* Fix issue with scroll padding not being applied
* Ensure unauthorised users cannot view pages they should not be able to
* Lint
Commands
- Updating commands
- UpdateUserInformation, deleteApp, searchForApplication, applicationInAppTable
CreateApp
- Skipping Templates tests
- Updates for tests which utilise user info
AppOverview
- Skipping these tests
UserSettings
- Skipping one test -> allow for copy of API key (will be covered elsewhere
- Updates applied to the remaining tests
Authentication
- Skipping these tests
* Mark filters as nested settings to support persisting bindings post block ejection
* Add support for searching on linked fields in blocks
* Fix multi-select pickers closing on every click
* Target spectrum root element by default when rendering popovers, and allow customisation via context for client library
* Don't send up invalid HBS expressions when filtering on dates in blocks with empty date value
* Move profile above theme in user dropdown
* Shrink cloud upgrade button to proper size
* Add brackets to fix operator precedence when ejecting blocks to prevent undefined custom CSS
* Prevent relationship fields in forms from being used as datasources
* Remove extraneous navigation when adding a component which caused next navigation to fail
* Improve form logic concerning when to fully remount itself to fix issues with stale schema being passed in
* Update BB logo to black
* Update top nav bar and core layout
* Add redesign for apps pages
* Update user and groups pages
* More WIP portal redesign!
* Fix top nav colours and fix selected tab not updating
* Remove log
* Update copy on settings pages
* Update and standardise page headers and subtitles, and remove side nav titles
* Update font styles to allow for easy customisation
* Update button styles to always use newStyles, update auth page styles
* Update settings pages to new designs
* Update structure for account pages
* Add initial rewrite of app overview section
* Update config checklist to properly center
* Update app overview version and name/url screens
* Add tooltip to explain why URL cannot be changed until unpublishing
* Update overview automation history tab
* Update overview backups page
* Rewrite app overview access tab
* Update table hover colours
* Remove scrolling from tables when not required and stop selects from updating their own state locally
* Update table styles to support flexible column widths much better
* Fix extremely long strings in breadcrumbs not wrapping
* Fix multiple issues with long text overflow
* Fix flashing in version settings page
* Fix loading bugs in app backups page
* Add sidebar for portal and use it for automation history. Fix multiple overflow and scrolling issues
* Tidy up
* Update user details page to use tables and match designs
* Update users detail page
* Update user and group details pages with new tables
* Fix automation error linking from apps page and improve automation fetching logic in automation history
* Move theme and API key into user profile dropdown instead of settings
* Move settings before account and show plugins for devs
* Convert plugins page to table and update components and modals
* Update links when going back from the builder
* Update plugin search placeholder
* Fix URLs in app overview
* Properly handle text overflow in plugins table
* Remove getting started checklist
* Fix checklist removal and fix profile modal
* Update email details page to match new designs
* Cleanup
* Add licensing and env logic to determine which account links to show
* Update upgrade button URL for cloud accounts
* Update app list to use a more compact style
* Make core page layout responsive and update apps list to be responsive
* Update mobile design of apps page
* Update more pages to be responsive and add mobile specific components
* Refactor main portal page into multiple components
* Update multiple pages to be responsive and improve loading experience
* Make automation history page responsive
* Update backups page to be responsive
* Update pickers to use absolutely positioned root popover so that overflow does not matter
* Fix some responsive styles
* Fix update link in app overview
* Improve dropdown logic
* Lint
* Update click outside handler to handle modals properly
* Remove log
* Fix mobile menu upgrade button not closing menu
* Hide groups page if disabled at tenant level
* Centralise menu logic and show full menu on mobile
* Update app access assignment and fix backups table
* Ensure avatars cannot be squished
* Standardise disabled field text colour
* Allow developer users to access users, groups and usage pages
* Allow readonly access to users and groups for developer users
* Remove logs
* Improve users page loading experience
* Improve responsiveness on apps list page and fix discussions link styles
* Update spacing on user and group detail page and fix usage page showing wrong copy
* Fix logo override not working
* Pin minio version to an old one that supports the fs backend in dev
* Shrink upgrade button
* Shrink user dropdown
* Update assignment modal text
* Remove clickable visual styles from plugins
* Always show groups section in app access page
* Update app overview button styles to include more CTAs
* Hide edit and view links in more menu on overview page unless on mobile
* Make usage stats responsive and fix layout issues
* Add comment to docker-compose config
- Add swc dependencies
- Add transform change to jest.config.ts
- Replace `export =` with `export default` in src code to enable code coverage to work with swc transformer
- Restructure backend-core errors package to allow for exporting error classes with ESM syntax
- Update backend-core to no longer use `export =`, export individual packages instead of replacing with `export default` for backwards compatibility
- Update event publishers to use `export default` - this was required for the `jest.spyOn` usage inside backend-core common mocks
- Restructure some jest.mock usages where declaring the jest.fn as a variable outside of the package mock threw an error
* Treat empty string default values as nullish when considering whether field default values should be applied to the real field value
* Add flag to allow not loading data immediately upon creation of a data fetch object
* Use loading context inside forms to avoid wasted renders while form schema are loading
* Wait for parent data providers to finish loading before loading their own data
* Optimise data provider to reduce updates as much as possible
* Allow forms to render content immediately again, but use the loading context to inform data providers to wait for them
* Remove fetchOnCreation flag for data fetches as now redundant
* Fix issue with deleting the selected button action when the next action has no parameters
* Lint
The following files now have tests skipped:
- accountPortal (Completely skipped)
- appPublishWorkflow (Some tests skipped)
- createView (Completely Skipped)
Increased timeout values within the following commands:
- applicationInAppTable
- createTable
These will assist with the createApp tests that failed due to timing issues on the CI run
Updating a couple of tests within createView
- Timing issues
- Ensuring we get the correct element for testing
Also updated QueryLevelTransformers test
- Timing issue
- I've extended the timeout value for when checking the nav item content (passes locally but timed out on the CI run)
Updated selectExternalDatasource command
Altered Query Level Transformers to include a page reload. Not having this reload was occasionally affecting the test run
Skipping Cypress tests associated with the following:
- Account Portals
- App Overview
- Create Automation
We now have E2E coverage of these tests via QA Wolf
* fixes for google sheets, admin checklist, and deleting an app from API
* code review
* splitting unpublish endpoint, moving deploy endpoint to applications controller. Still to do public API work and move deployment controller into application controller
* updating REST method for unpublish in API test
* unpublish and publish endpoint on public API, delete endpoint unpublishes and deletes app
* removing skip_setup from prodAppDb call
* removing commented code
* unit tests and open API spec updates
* unpublish, publish unit tests - delete still in progress
* remove line updating app name in API test
* unit tests
* v2.1.46
* Update pro version to 2.1.46
* v2.2.0
* Update pro version to 2.2.0
* Fix for budibase plugin skeleton, which utilises the old import style.
* Fix side nav styles
* v2.2.1
* Update pro version to 2.2.1
* using dist folder to allow importing constants for openAPI specs
* v2.2.2
* Update pro version to 2.2.2
* Fix for user enrichment call (updating to @budibase/nano fork) (#9038)
* Fix for #9029 - this should fix the issue users have been experiencing with user enrichment calls in apps, essentially it utilises a fork of the nano library we use to interact with CouchDB, which has been updated to use a POST request rather than a GET request as it supports a larger set of data being sent as query parameters.
* Incrementing Nano version to attempt to fix yarn registry issues.
* v2.2.3
* Update pro version to 2.2.3
* Fix SQL table `_id` filtering (#9030)
* Re-add support for filtering on _id using external SQL tables and fix filter key prefixes not working with _id field
* Remove like operator from internal tables and only allow basic operators on SQL table _id column
* Update data section filtering to respect new rules
* Update automation section filtering to respect new rules
* Update dynamic filter component to respect new rules
* v2.2.4
* Update pro version to 2.2.4
* lock changes (#9047)
* v2.2.5
* Update pro version to 2.2.5
* Make looping arrow point in right direction (#9053)
* v2.2.6
* Update pro version to 2.2.6
* Types/attaching license to account (#9065)
* adding license type to account
* removing planDuration
* v2.2.7
* Update pro version to 2.2.7
* Environment variable type coercion fix (#9074)
* Environment variable type coercion fix
* Update .gitignore
* v2.2.8
* Update pro version to 2.2.8
* tests passing
* all tests passing, updates to public API response
* update unpublish call to return 204, openAPI spec and unit
* fixing API tests
Co-authored-by: Budibase Release Bot <>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Andrew Kingston <andrew@kingston.dev>
Co-authored-by: melohagan <101575380+melohagan@users.noreply.github.com>
Co-authored-by: Rory Powell <rory.codes@gmail.com>
* Improve theming with spectrum badges and dedupe spectrum label usage
* Update data section nav to match designs and use panel component
* Fix main content layout in data section
* Update data section routing for tables
* Improve data section routing for tables to account for edge cases
* Update internal and sample datasource routing
* Update external datasource routing
* Update routing for queries and make a top level concept like everything else
* Update routing for views
* Fix undefined reference when deleting datasource
* Reduce network calls and fix issues with stale datasourcenavigator state
* Update routing for REST queries and unify routes for normal queries and REST queries
* Lint
* Fix links for queries from datasource details page
* Remove redundant API calls and improve table deletion logic
* Improve data entity deletion logic and redirection and fix query details keying
* Improve determination of selected item in datasource tree
* Lint
* Fix BBUI import
* Fix datasource navigator selected state not working for internal DB or sample data
* Commit for enhancement #7762
Added Question option for buttons which acts as a dialog prompting the user to confirm or cancel before continuing.
* Fixes
* Made changes to allow custom modal title
Changed Question to User Prompt
Allows custom title
* Revert "Made changes to allow custom modal title"
This reverts commit 42a43bef4914cd52b07a2b6964bf78aa50eb2707.
* Revert "Fixes"
This reverts commit 915a8718e5ac6dd32a6c3d377d5edb02fc8a3138.
* Adds custom title
Adds custom title
* Wrong version of buttonActions was commited
* Delete index.js
* refactor
* lint
Co-authored-by: Mel O'Hagan <mel@budibase.com>
* v2.1.46
* Update pro version to 2.1.46
* v2.2.0
* Update pro version to 2.2.0
* Fix for budibase plugin skeleton, which utilises the old import style.
* Fix side nav styles
* v2.2.1
* Update pro version to 2.2.1
* using dist folder to allow importing constants for openAPI specs
* v2.2.2
* Update pro version to 2.2.2
* Fix for user enrichment call (updating to @budibase/nano fork) (#9038)
* Fix for #9029 - this should fix the issue users have been experiencing with user enrichment calls in apps, essentially it utilises a fork of the nano library we use to interact with CouchDB, which has been updated to use a POST request rather than a GET request as it supports a larger set of data being sent as query parameters.
* Incrementing Nano version to attempt to fix yarn registry issues.
* v2.2.3
* Update pro version to 2.2.3
* Fix SQL table `_id` filtering (#9030)
* Re-add support for filtering on _id using external SQL tables and fix filter key prefixes not working with _id field
* Remove like operator from internal tables and only allow basic operators on SQL table _id column
* Update data section filtering to respect new rules
* Update automation section filtering to respect new rules
* Update dynamic filter component to respect new rules
Co-authored-by: Martin McKeaveney <martin@budibase.com>
Co-authored-by: Budibase Release Bot <>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Martin McKeaveney <martinmckeaveney@gmail.com>
* file auth wip
* Private plugin bucket wip
* Add etag to logo request, fix circular dependency
* Resolve cyclic dependency
* Ensure browser doesn't cache custom component
* Global file fixes
* File fixes / remove permaUrl
* Add ctx local storage
* Enable presigned url to work from any host
* Test fix
* Self hosting w/ S3 + other fixes
* Fix for serving dev app in multi tenant
* Fix backup restore and import attachment url processing, never store attachment urls
* Test fixes
* Unit tests WIP
* Replace file path with base64 encoded private key
* Multi tenancy tests for files
* Environment files fixes
* Post-merge build and test fixes
* Add debug conditional to all jest logging and revert/fix prod minio proxy_pass
* Re-add default '/' minio route :(
* Rename iconFile -> iconFileName
* Add cloudfront vars to k8s templates
* Remove public bucket policy
* Remove duplicated test
* Re-add support for filtering on _id using external SQL tables and fix filter key prefixes not working with _id field
* Remove like operator from internal tables and only allow basic operators on SQL table _id column
* Update data section filtering to respect new rules
* Update automation section filtering to respect new rules
* Update dynamic filter component to respect new rules