Commit Graph

9750 Commits

Author SHA1 Message Date
Andrew Kingston 22d81fd858 Clear selected app ID from overview store when unmounting, and avoid sending up 'null' and 'undefined' string app ID headers 2023-04-25 08:35:25 +01:00
Michael Drury 14545729ac Fix for #10403 - when app overview loads, sometimes old store doesn't get a valid app ID. 2023-04-24 20:39:39 +01:00
Budibase Staging Release Bot dfe28d171c v2.5.6-alpha.24 2023-04-24 17:41:06 +00:00
Budibase Staging Release Bot 88a6cd50dd v2.5.6-alpha.23 2023-04-24 16:58:46 +00:00
Budibase Staging Release Bot 19e8836870 v2.5.6-alpha.22 2023-04-24 16:43:56 +00:00
Budibase Staging Release Bot 4786ce58ed v2.5.6-alpha.21 2023-04-24 16:01:58 +00:00
Andrew Kingston 98ca05d97f Merge pull request #10396 from Budibase/grid-tweaks
Grid tweaks
2023-04-24 16:53:46 +01:00
Budibase Staging Release Bot 9ee56025f1 v2.5.6-alpha.20 2023-04-24 12:45:50 +00:00
Budibase Staging Release Bot 360b828e66 v2.5.6-alpha.19 2023-04-24 11:10:02 +00:00
Budibase Staging Release Bot 4a8a6c8bbc v2.5.6-alpha.18 2023-04-24 10:38:25 +00:00
Andrew Kingston 5155727b56 Update grid button text and refactor gutter cell into own component 2023-04-24 11:22:03 +01:00
Budibase Staging Release Bot 548ba5a07a v2.5.6-alpha.17 2023-04-24 08:45:56 +00:00
Rory Powell ec06f13aa6 Per user pricing (#10378)
* Update pro version to 2.4.44-alpha.9 (#10231)

Co-authored-by: Budibase Staging Release Bot <>

* Track installation and unique tenant id on licence activate (#10146)

* changes and exports

* removing the extend

* Lint + tidy

* Update account.ts

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>

* Type updates for loading new plans (#10245)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS` (#10247)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete + migration (#10250)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Lint

* Types and structures for user subscription quantity sync (#10280)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing for licensing (#10346)

* Add new quota for max users on free plan

* Split available vs purchased plan & price type definitions. Update usages of available prices and plans

* Type fixes

* Add types for minimums

* New `PlanModel` type for `PER_USER` and `DAY_PASS`

* Add loadEnvFiles to lerna config for run command to prevent local test failures

* Fix types in license test structure

* Add quotas integration to user create / delete

* Always sync user count from view total_rows value for accuracy

* Add migration to sync users

* Add syncUsers.spec.ts

* Prevent old installs from activating, track install info via get license request instead of on activation.

* Add usesInvoicing to PurchasedPlan

* Add min/max users to PurchasedPlan

* Additional test structures for generating a license, remove maxUsers from PurchasedPlan - this is already present in the license quotas

* Stripe integration for monthly prorations on annual plans

* Integrate annual prorations with test clocks

* Updated types, test utils and date processing

* Lint

* Pricing/billing page (#10353)

* bbui updates for billing page

* Require all PlanTypes in PlanMinimums for compile time safety

* fix test package utils

* Incoming user limits warnings (#10379)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* Types and test updates for subscription quantity changes in account-portal (#10372)

* Add chance extensions for `arrayOf`. Update events spies with license events

* Add generics to doInTenant response

* Update account structure with quota usage

* User count limits (#10385)

* incoming user limits warning

* fix inlinealert button

* add corretc button link and text to user alert

* pr comments

* simplify limit check

* user limit messaging on add users modal

* user limit messaging on import users modal

* update licensing store to be more generic

* some styling updates

* remove console log

* Store tweaks

* Add startDate to Quota type

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>

* Lint

* Support custom lock options

* Reactivity fixes for add user modals

* Update ethereal email creds

* Add warn for getting invite from code error

* Extract disabling user import condition

* Handling unlimited users in modals logic and adding start date processing to store

* Lint

* Integration testing fixes (#10389)

* lint

---------

Co-authored-by: Mateus Badan de Pieri <mateuspieri@gmail.com>
Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
Co-authored-by: Peter Clement <PClmnt@users.noreply.github.com>
2023-04-24 09:31:48 +01:00
Budibase Staging Release Bot b3d989e249 v2.5.6-alpha.16 2023-04-21 13:45:11 +00:00
melohagan 476bf65957 Set default enum values (#10377) 2023-04-21 14:37:15 +01:00
Budibase Staging Release Bot 06e6c20cf1 v2.5.6-alpha.15 2023-04-21 11:43:34 +00:00
Michael Drury 76625cd509 Merge pull request #10363 from Budibase/fix/budi-6900
Removing "export all apps" functionality from cloud
2023-04-21 12:29:07 +01:00
Budibase Staging Release Bot c196fc1f3e v2.5.6-alpha.14 2023-04-21 11:24:59 +00:00
mike12345567 72d1394873 Further linting. 2023-04-21 12:07:28 +01:00
mike12345567 c5e1457b25 Merge branch 'develop' of github.com:Budibase/budibase into fix/budi-6900 2023-04-21 12:06:18 +01:00
Andrew Kingston 943d17966e Remove import button for users table 2023-04-21 10:50:50 +01:00
Budibase Staging Release Bot 91e7fe8ec1 v2.5.6-alpha.13 2023-04-21 07:16:47 +00:00
Budibase Staging Release Bot 269cbc8b2c v2.5.6-alpha.12 2023-04-20 18:35:09 +00:00
adrinr e65225996e Revert https://github.com/Budibase/budibase/pull/10267 2023-04-20 19:04:20 +01:00
mike12345567 2056623897 Fixing linting. 2023-04-20 17:51:43 +01:00
mike12345567 060dc05afa Removing export all apps functionality from cloud - this was a very niche feature and often confusing, now there is a consistent flow for starting out in self host. 2023-04-20 17:19:17 +01:00
Andrew Kingston 55ce83c444 Grid UI in data section (#10329)
* Add WIP spreadsheet

* Add footer and improve styles

* Refactor to use IDs and support changing text values inline

* Add inline editing of options fields

* Add row deletion and fix sizing

* Add ability to add new rows

* Fix z-index issue with option cells

* Remove deletion notification and fix selection

* Add gap between items in an options cell

* Tweak options cell to be pixel perfect

* Fix padding around sheet not working when scrolling

* Add resizable columns and add support for all themes

* Allow multiselect component and field to support text values

* Generate inclusion schema when importing multiselect columns

* Add support for multiselect type

* Add number cell

* Add functional date cell

* Disable editing autocolumns

* Make sticky column the primary display and fix opening options cells

* Improve display of relationship cell and options cell

* Support empty dates and use CSS variables for easier styling

* Use more CSS variables and add utils to spreadsheets

* Add drag and drop column reordering

* Break out reordering logic into new stores

* Rename reordering to reorder

* Break out other components from spreadsheet for cleaner code

* Break out spreadsheet body into its own component

* Split into more modular components and try virtual rendering

* Test absolute positioning

* Optimise virtual rendering for both columns and rows to handle infinitely large datasets

* Optimise scrolling and virtual rendering performance

* Fix columnn reordering

* Migrate sheet to data section, improve reordering and reszing

* Clean up more sheet state and increase performance

* Fix multiple issues with z-index, reordering and resizing

* Fix date cells in sheets

* Separate data fetching logic from main sheet and tidy up

* Add infinite scroll, improve row fetching, add error handling, fix svelte store updates

* Fix overly thin scrollbars in firefox

* Use nicer checkboxes and fix some hover styles

* Fix issue reordering columns in firefox and increase performance

* Tidy up

* Use search endpoint instead of get endpoint to fetch individual rows so that relationship enrichment occurs

* Tidy up

* Fix relationship issues when creating rows

* Optimise resetting data to smoothly transition when changing datasource

* Add WIP virtual dom implementation to massively increase performance

* Refactor spreadsheet into more discreet components

* Fix multiple issues, clean up rendering, improve performance

* Tune cell sizes

* Fix some scroll issues and add shadow to sticky column

* Fix issue when no primary display is set

* Add padding to sheet

* Improve styles

* Allow reordering columns to be the first column after sticky column

* Fix row hover state not being removed

* Update hovered row on wheel

* Update scroll styles and z-index

* Improve scroll logic and handle horizontal wheel events

* Simplify and improve z index styles

* Fix styles when using no sticky columns

* Improve rendering performance

* Improve performance by removing keyed each blocks and fix reorder target styling

* Ensure scroll top is always properly reset and add config store

* Allow configuring selecting rows and adding rows

* Integrate sheet into data section better

* Add back in functional delete row button

* Refactor stores and make state more modular

* Lint and remove unused deps

* Remove add column button

* Fix options cells being unable to scroll

* Add WIP initial multi-user websocket implementation for sheets

* Add WIP multi-user UI for sheet interface

* Fix issues with not disconnecting users when swapping datasource and improve multi-user UI

* Update layout and remove logging

* WIP column popovers for dataspace sheets

* Add popovers to sheet column headers, improve mouse UX

* Tidy reordering stuff

* Refactor resizing logic into store and improve UX around hover events when resizing/reordering

* Add column sorting and reordering via popover

* Handle context menu events in header cells

* Fully integrates sheets with datasection and remove lots of old stuff

* Fix buttons being highlighted when filters are set

* Add flags for controlling editing and adding rows in sheets

* Count context menu clicks when considering the click outside handler

* Prevent adding rows to users table and remove log

* Expose loading state of sheet and improve column highlighting logic

* Small style updates

* Update delete button and allow horizontal scrolling

* Add context menu to sheets with deletion and duplication features

* Improve UX around selecting rows and cells

* Add basic keyboard interactions to dataspaces

* Improve keyboard navigation in sheets

* Remove unnecessary searching through large rows array

* Fix issue with deleting rows and fix relationship cells displaying undefined

* Improve loading state

* Update menu width

* Merge with new shared-core and moved lucene utils

* Improve rendering performance and simplify component props

* Remove new row component and improve mouse interactions

* Tidy up buttons above sheets and add FAB for adding rows

* Optimise sheet data loading and add sort button

* Update sorting and remove logs

* Add sheet button to control column visibilty, improve sorting, improve disabled states

* Fix bug with select placeholders and fix sorting loops causing endless refreshes

* Update filter button to look consistent and add double click to resize columns to default width

* Ensure all derived stores have default values

* Reset scrolling when datasource changes and fix wasted pagination calls

* Improve performance by removing searches through the full row array

* Add advanced key handling for spreadsheets and improve blur and focus UX

* Ensure the selected cell is always visible

* Add icons for all data types

* Add new long form text cell

* Add boolean cell

* Add ability to focus first cell via tab

* Add cells for formulae and JSON

* Remove console logs

* Add attachment cell

* Increase padding to account for attachment dropdown

* Prevent deleting autocolumns via keyboard

* Fix attachments overflowing

* Improve sort button, remove header more icons unless hovered and highlight sorted column

* Add functional relationship cell

* Improve relationship cell

* Fix race conditions and edge cases in relationship cell

* Update user avatar colours

* Improve preservation of column widths in sheets when making schema changes

* Remove redundant sheet schema context and fix issues with mutating table schema

* Disable websocket in sheets

* Rollback state changes when row saving fails

* Fix one-to-many relationships allowing selecting multiple rows on both sides

* Remove log

* Make sheet gutter width customisable

* Allow expanding rows using existing edit row modal

* Fix text cell not using full width

* Sort columns to put autocolumns last

* Add new footer for adding rows, improve store memoization, support inverting all data types

* Improve animations for adding rows and handle add row failure

* Ensure all sheet feature flags work as expected and fix multi row deletion

* Fix options ordering

* Fix add row button not appearing when horizontal scrollbar is hidden

* Fix selecting newly created rows

* Remove log and add notification when creating or editing columns

* Move new row component to top, automatically invert cell renderers when required

* Add resizable rows

* Fix overlapping long form text borders

* Fix scroll not working in new row

* Update new row component, fix z-index issues, improve UX

* Large refactors to row creation, naming and sheet APIs

* Refactor stores to fix dependency issues, use modals for adding rows, simplify sheet

* Fix resize overlays

* Add custom colors for drop shadows and blue-100 to all themes, fix sticky column shadow

* Increase horizontal padding when scrolling to a selected cell

* Add multiple validation improvements

* Add validation to duplicating rows

* Remove log

* Restore missing event handler

* Improve data fetch reset logic, fix issues with stale cache in spreadsheets

* Fix issue with cell colors, improve row API interactions to avoid relationship issues due to API response differences

* Fix filters not working

* Simplify logic for reordering and add new overlay. Simplify sheet cells

* Fix importing and exporting with sheets

* Fix reorder overlay z-index issue

* Fix issue when no display column exists

* Fix issue with display column not being able to be unset

* Add persitence to column size and order in sheets

* Improve sheet integration with data section and add horizontal cell inversion

* Fix double click resizing of sticky column

* Make column visibility persistent and refactor column updating

* Improve sheet loading states

* Add beta button to sheet, tidy up constants

* Work around table API inconsistencies to handle table schema updates

* Add additional reorder options and improve beta button

* Improve sorting

* Add copy and paste to spreadsheet and add immediate editing of cells without additional click

* Remove copy/paste rows, remove move to start/end, improve copy/paste for cell values

* Fix dependency ordering

* Refactor other sheet stores to improve dependency ordering

* Fix errors not showing in sticky column and clear cell value on backspace press

* Rewrite relationship cell and update default column widths

* Ensure dynamic row height is properly accounted for

* Update text cells, number cells, long form field cells and relationship cells to respect row height

* Fix row heights with sticky column

* Update JSON, boolean and date cells to respect row height

* Update attachment cell to respect row height

* Use unique background for focused cell

* Standardise shadows across cell types

* Persist row height as table metadata

* Improve a few design issues

* Clean up

* Fix relationship cells not being readonly

* Lint

* Fix icon padding in relationship picker

* Improve styles in relationship dropdown

* Update shadow

* Update relationship icons

* Update relationship icons

* Update error label max size and position

* Prevent using invalid data types as display columns

* Add menu option to edit rows in modal

* Prevent sheet handling key events sourcing from modals

* Standardise menu overlay shadow and add count to relationship cells when hovering

* Improve relationship cell performance

* Remove spellcheck from text fields

* Fix resize overlay handler height

* Fix reorder overlay height

* Remove unused code and change selected table faster in data section

* Fix table selection not working when on datasource page

* Improve sheet loading state

* Add rowHeight property to table types

* Restore builder middleware

* Remove any naming of dataspaces

* Lint

* Disable row import button for users table and add optional chaining to spreadsheetsocket invocations to fix tests

* Use unique user edit modal for editing users in sheets

* Add schemaOverrides prop to sheet and use it to customise user table schema

* Update number icon

* Fix primary display column not properly disabling certain menu options

* Merge

* Update beta button position slightly

* Update beta button text

* Fix HMR for custom plugins which was broken due to signed minio links

* Add maze link to grid

* Update koa <> socket.io integation to improve fake koa context and allow current app middleware

* Rename sheet to grid

* Fix menu postiion, fix copy and paste in menu not working

* Remove commented out usages of websocket emissions for grid
2023-04-20 15:56:24 +01:00
Andrew Kingston 7afd716e91 Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-04-20 15:24:25 +01:00
Andrew Kingston 6bf6d15849 Rename sheet to grid 2023-04-20 08:17:07 +01:00
Adria Navarro 22d42afe8f Merge pull request #10267 from Budibase/chore/pro_as_submodule
Chore - use pro as submodule
2023-04-19 18:23:28 +02:00
Budibase Staging Release Bot 34b3781b59 v2.5.6-alpha.6 2023-04-19 13:29:39 +00:00
Andrew Kingston 9025e18f15 Misc fixes (#10345)
* Fix some issues with component and screen settings layout

* Fix issue with component setting labels when multi-line

* Remove early termination of form validation when encountering an errored field

* Update free logo badge to be a sticky footer

* Close side panels when clicking on links
2023-04-19 14:21:11 +01:00
adrinr 98b372965c Merge branch 'develop' into chore/pro_as_submodule 2023-04-19 10:22:48 +01:00
Andrew Kingston 9b2b071b88 Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-04-18 21:00:42 +01:00
Budibase Staging Release Bot 06ec04dcec v2.5.6-alpha.5 2023-04-18 16:40:23 +00:00
Michael Drury 42c37eea46 Merge pull request #10276 from Budibase/labday/automation-plugins
Automation step plugins
2023-04-18 17:33:25 +01:00
mike12345567 22dbb8d379 Updating automation action add modal to split out plugins into their own section. 2023-04-18 16:12:08 +01:00
Budibase Staging Release Bot a13cdefd01 v2.5.6-alpha.4 2023-04-18 13:44:25 +00:00
Gerard Burns d36cd3b1f8 Builder Unit Test PoC (#10173)
* wip

* wip
2023-04-18 14:37:29 +01:00
Andrew Kingston 06e1f2954a Add schemaOverrides prop to sheet and use it to customise user table schema 2023-04-18 13:41:17 +01:00
Andrew Kingston a06f584e7d Use unique user edit modal for editing users in sheets 2023-04-18 13:12:20 +01:00
adrinr 37158594f7 Merge branch 'develop' into chore/pro_as_submodule 2023-04-18 12:21:38 +01:00
Andrew Kingston 91ee5be7c5 Disable row import button for users table and add optional chaining to spreadsheetsocket invocations to fix tests 2023-04-18 11:31:19 +01:00
Andrew Kingston 876522bf1e Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-04-18 10:48:53 +01:00
Budibase Staging Release Bot 287ba01691 v2.5.6-alpha.3 2023-04-18 09:44:21 +00:00
Gerard Burns 7e5b99aa84 Fix Help Menu (#10257)
* Fix Help Menu

* PR Feedback

* linting
2023-04-18 10:37:11 +01:00
Andrew Kingston 8aff208acd Improve sheet loading state 2023-04-18 09:08:38 +01:00
Andrew Kingston ffd3e5d008 Fix table selection not working when on datasource page 2023-04-18 08:55:54 +01:00
Andrew Kingston 140729b1d7 Remove unused code and change selected table faster in data section 2023-04-18 08:51:00 +01:00
Andrew Kingston a4515e1162 Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-04-18 08:29:27 +01:00