Commit Graph

1009 Commits

Author SHA1 Message Date
Andrew Kingston 70eda7ff81 Merge branch 'develop' of github.com:Budibase/budibase into grid-block 2023-06-16 10:02:42 +01:00
Andrew Kingston 86265a90e0 Only respect keyboard events in grids when the mouse is over them 2023-06-15 15:25:05 +01:00
Andrew Kingston 73cae6198f Improve grid logic around vertically inverting row popovers 2023-06-15 14:23:33 +01:00
Andrew Kingston 99a8fc7c12 Revert websocket changes and just fetch datasources constantly 2023-06-15 09:27:45 +01:00
Jonny McCullagh 757ca6a166 Merge master develop (#10897)
* Binding drawer fixes

* Added missing headless flag for the bindable combobox

* Fix for QueryEditor width

* Fix svelte transitions in grid new row component breaking routify

* Bump version to 2.7.7

* fix REST connector failure to save

* Bump version to 2.7.8

* Bump version to 2.7.9

* Unexpected token when export data (#10721)

* Tidy ID string for JSON parse

* Display error for composite keys

* Unit test WIP

* directly assign the mock function on the datasource

* Unit tests for exportRows ID handling

---------

Co-authored-by: Martin McKeaveney <martinmckeaveney@gmail.com>

* Return all rows if oneOf value is falsey (#10638)

* Bump version to 2.7.10

* Make sure divider fields are left-most (#10627)

* Make sure divider fields are left most

* Refactor

* Bump version to 2.7.11

* Temporarily remove the focus store update as it triggers a full redraw of the component settings

* Linting

* Removed commented out code

* Bump version to 2.7.12

* Bump version to 2.7.13

* Do not show Business tag for Email action (#10867)

* Bump version to 2.7.14

* new deploy trigger (#10892)

* point the deploys at the new env

* Bump version to 2.7.15

---------

Co-authored-by: Dean <deanhannigan@gmail.com>
Co-authored-by: Andrew Kingston <andrew@kingston.dev>
Co-authored-by: Budibase Staging Release Bot <>
Co-authored-by: Martin McKeaveney <martinmckeaveney@gmail.com>
Co-authored-by: Martin McKeaveney <martin@budibase.com>
Co-authored-by: melohagan <101575380+melohagan@users.noreply.github.com>
Co-authored-by: Adria Navarro <adria@budibase.com>
2023-06-14 16:18:09 +01:00
Andrew Kingston 328336463c Standardise usage of CSS variables to work inside client and builder 2023-06-14 09:19:11 +01:00
Andrew Kingston ed9065aae3 Hide add row FAB when selecting rows 2023-06-14 09:10:09 +01:00
Andrew Kingston f56bd3ad13 Fix grid loading overlay color in client apps 2023-06-13 17:19:12 +01:00
Andrew Kingston 0ab1346577 Add settings to grid block for controlling CRUD 2023-06-13 17:17:29 +01:00
Andrew Kingston 0dbd709438 Merge branch 'develop' of github.com:Budibase/budibase into grid-block 2023-06-13 15:15:41 +01:00
Martin McKeaveney 7e45773d02 diagnostics panel 2023-06-10 16:16:52 +01:00
Andrew Kingston 1040407068 Reset rows and tick before updating schema when swapping table ID in grids 2023-06-09 13:11:18 +01:00
Martin McKeaveney 746afaf573 initial work on debug panel 2023-06-08 19:50:29 +01:00
Andrew Kingston 5820996e4d Update grid flags to allow readonly modifications of schema 2023-06-08 08:35:36 +01:00
Andrew Kingston f9a8be507d Undo hardcoded disabling of row expansion 2023-06-07 15:51:27 +01:00
Andrew Kingston 752dd93d84 Add initial grid block, and update grid to keep indentation consistent when row expansion is disabled 2023-06-07 15:50:38 +01:00
Andrew Kingston 61a143628b Revert tableType flag and derive from table instead 2023-06-07 10:48:08 +01:00
Andrew Kingston 4d013056aa Fix svelte transitions in grid new row component breaking routify 2023-06-07 10:24:16 +01:00
mike12345567 dab1db2271 Updating datasource save API to allow specifying a filter for which tables to fetch and then linking this up with the new frontend. 2023-06-06 18:27:03 +01:00
mike12345567 b7fd069d00 Fixing endpoint to info from tables for datasource fetching. 2023-06-06 13:49:11 +01:00
Michael Drury 465856e8c9 Merge branch 'develop' of github.com:Budibase/budibase into feature/table-fetching-frontend 2023-06-06 10:09:50 +01:00
mike12345567 96f44c0a86 Reworking implementation to a single modal, that changes content rather than progressing to a new modal. 2023-06-05 17:40:12 +01:00
Andrew Kingston 4a0e23a171 Transfer lock to next oldest session when disconnecting from the builder 2023-06-05 13:54:17 +01:00
Andrew Kingston 920fea7b1f Remove beta button from grid, add feedback button to data section linking to collaboration maze 2023-06-05 08:48:02 +01:00
Andrew Kingston 4f176b3edd Increase padding around the grid 2023-06-05 08:30:53 +01:00
Andrew Kingston 0582dd40b2 Ensue table schema change made via grids are properly synced with backend stores, given absence of websocket events for own events 2023-06-02 15:28:48 +01:00
Andrew Kingston dab3263569 Fix losing cell focus when another user makes changes while you're adding a row 2023-06-02 08:58:32 +01:00
Andrew Kingston b4def3675a Remove manual refresh of row after creation 2023-06-02 08:53:47 +01:00
Andrew Kingston d8d3d71523 Update websocket logic to ignore events trigger by API requests originating from the same session 2023-06-01 17:14:32 +01:00
Andrew Kingston 680e609b52 Remove plural forms of enums and use TS enum rather than JS const 2023-05-31 17:03:14 +01:00
Andrew Kingston ffbbf04e86 Lint 2023-05-31 16:08:35 +01:00
Andrew Kingston a7c6298d1f Ensure socket pruning due to redis TTL expiry works as expected 2023-05-31 15:37:39 +01:00
Andrew Kingston 7a307e3de8 Remove logs 2023-05-31 15:14:33 +01:00
Andrew Kingston 05e34076f7 Fully rewrite websocket redis integration to use individual keys per session, enable TTLs on sesisons, prune sessions when users connect and add a heartbeat to sockets 2023-05-31 15:13:22 +01:00
Andrew Kingston d3fdb52bf5 Store all socket users in redis to allow all server instances to be aware of all users 2023-05-31 10:21:50 +01:00
Gerard Burns 23ee9f4af8 Post Sign Up Onboarding Changes (#10701)
* wip

* PR Feedback

* Fixes

* PR Feedback

* PR Feedback

* PR Feedback
2023-05-30 12:54:57 +01:00
Andrew Kingston 5f63183235 Lint 2023-05-30 12:36:23 +01:00
Andrew Kingston d57c774a30 Disable HTTP polling for websockets and rely on websocket connection only 2023-05-30 11:15:51 +01:00
Andrew Kingston be40d72f55 Merge pull request #10712 from Budibase/data-section-multidev
Multiple user collaboration for data section
2023-05-30 09:08:14 +01:00
mike12345567 7ba21d836b Merge branch 'develop' of github.com:Budibase/budibase into feature/sync-automations 2023-05-26 16:42:01 +01:00
Andrew Kingston 7c2d15be8d Handle users tables edges cases when working with grids 2023-05-26 11:39:20 +01:00
Andrew Kingston 25f469dc28 Close context menu on escape keypress 2023-05-26 10:43:25 +01:00
Andrew Kingston 852df16448 Lint 2023-05-26 10:29:03 +01:00
Adria Navarro 77a619945b Merge pull request #10680 from Budibase/budi-6933-verify-data-source-connection-during
Verify data source connection before saves
2023-05-26 10:47:42 +02:00
Andrew Kingston 520158c8f9 Merge branch 'develop' of github.com:Budibase/budibase into data-section-multidev 2023-05-26 09:39:06 +01:00
Andrew Kingston 3a672b3660 Merge pull request #10695 from Budibase/grid-feedback
Grid enhancements from user feedback
2023-05-26 09:36:04 +01:00
Peter Clement 70dfd9e8e5 Merge remote-tracking branch 'origin/develop' into feature/sync-automations 2023-05-26 09:26:51 +01:00
Andrew Kingston cc7df474c9 Standardise usage of user avatars and colours across the entire platform 2023-05-26 09:24:53 +01:00
melohagan b5c98871ad Update table data via CSV import (#10313)
* Add identifierFields select for import

* Update rows on import (Internal DB)

* Only allow internal DB to upsert import CSV

* Clear identifierFields when turning off update

* Passing table instead of tableId

* Pass table

* Pass tableType
2023-05-25 18:05:07 +01:00
Andrew Kingston d491a24d3e Merge branch 'develop' of github.com:Budibase/budibase into grid-v2 2023-05-25 10:45:35 +01:00
Andrew Kingston b29ea61203 Ensure text cells account for being used for number cells too 2023-05-25 08:51:32 +01:00
Andrew Kingston 183fb3d29b Fix issue with schema mutation in grids. Use displayName to represent grid column labels. Allow deletion of duplicated user columns 2023-05-25 08:51:24 +01:00
Peter Clement a9bb534cdf set flag in automation orchestrator 2023-05-24 14:41:58 +01:00
Adria Navarro 886b726627 Verify datasouce before saving 2023-05-24 10:03:49 +02:00
Andrew Kingston cfa07a68ae Handle table, query and datasource events using builder socket 2023-05-22 15:59:44 +01:00
Peter Clement d271bbdadb rename syncWebHooks to syncAutomations 2023-05-19 10:07:02 +01:00
Peter Clement f680fbd822 Merge remote-tracking branch 'origin/develop' into feature/sync-automations 2023-05-18 11:35:25 +01:00
Andrew Kingston 3794d8e204 Simplify websocket comms for grid and improve builder socket 2023-05-18 08:57:20 +01:00
Andrew Kingston 0bebacc741 Merge branch 'develop' of github.com:Budibase/budibase into data-section-multidev 2023-05-17 16:38:01 +01:00
Andrew Kingston 14bfa907a2 Merge pull request #10612 from Budibase/fix-trashcan-flatpickr
Revert flatpickr version to fix bug in 3.3.2
2023-05-17 11:01:03 +01:00
Gerard Burns 28f4736e98 Onboarding Improvements (#10540)
* Onboarding Improvements

* PR Feedback

* linting
2023-05-17 10:58:06 +01:00
Andrew Kingston 475c962a5f Center align boolean fields 2023-05-17 08:16:47 +01:00
Andrew Kingston efb45a850b Update z-indexes for add column button 2023-05-17 08:07:07 +01:00
Andrew Kingston cadd1b5a4e Add automatic scrolling left/right when dragging to reorder columns 2023-05-16 19:48:14 +01:00
Andrew Kingston ba9691ee12 Add grid flag to stripe rows different colours 2023-05-16 17:09:32 +01:00
Andrew Kingston 834202423f Fix bulk deletion triggering on delete keypress after selecting then deselecting a row 2023-05-16 16:42:36 +01:00
Andrew Kingston 0a0e78c314 Fix grid keyboard shortcuts being hard to read in light theme 2023-05-16 15:29:48 +01:00
Andrew Kingston b112995fd0 Disable hide column option in header cell context menu for sticky column 2023-05-16 15:26:20 +01:00
Andrew Kingston 1e48020001 Merge branch 'develop' of github.com:Budibase/budibase into data-section-multidev 2023-05-16 15:23:30 +01:00
Andrew Kingston e2bf3b32e1 Revert flatpickr version to fix bug in 3.3.2, improve display of time-only dates 2023-05-16 14:52:45 +01:00
Andrew Kingston 6ed691be1d Improve builder socket 2023-05-16 14:18:31 +01:00
Andrew Kingston cb9d35f6aa Fix validation error position for new rows 2023-05-16 08:24:23 +01:00
Andrew Kingston 913188052a Fix cell colours with multiple users 2023-05-16 08:18:26 +01:00
Andrew Kingston e2a860ea4c Fix visual issues with other users selecting cells 2023-05-15 16:43:37 +01:00
Peter Clement 007f5ca8a9 Merge remote-tracking branch 'origin/develop' into feature/sync-automations 2023-05-15 15:19:44 +01:00
Andrew Kingston 46d8ad2864 Restore proper functionality for showing other users inside grids 2023-05-15 14:51:54 +01:00
Adria Navarro deb73be17d Merge branch 'develop' into budi-6158/allow_searching_users
# Conflicts:
#	packages/pro
2023-05-15 13:02:03 +02:00
Andrew Kingston f8f970bf7e Update grid websocket to send actual changes down to reduce API load 2023-05-12 16:13:32 +01:00
Peter Clement c86c2b4096 add synchronous webhook functionality 2023-05-12 15:57:34 +01:00
Peter Clement dcfb65b92d sync / async automations go through one endpoint 2023-05-12 15:56:24 +01:00
Andrew Kingston d52983839d Merge pull request #10544 from Budibase/grid-id
Grid improvements and fixes
2023-05-11 17:23:35 +01:00
Andrew Kingston 5a0ae3ff01 Disable most context menu options for cells in the new row 2023-05-11 11:58:26 +01:00
Peter Clement 1626571081 Merge remote-tracking branch 'origin/develop' into feature/sync-automations 2023-05-11 11:53:12 +01:00
Andrew Kingston 59ea4460f9 Fix multiple issues with keypresses and date cells due to flatpickr 2023-05-11 10:51:44 +01:00
Andrew Kingston d146aae084 Treat formula cell as readonly! 2023-05-10 16:02:00 +01:00
Andrew Kingston 72a64d2378 Fix not properly updating row state for formula columns 2023-05-10 16:00:27 +01:00
Andrew Kingston 88c475e4cb Add grid menu items to copy row ID and rev 2023-05-10 16:00:12 +01:00
Adria Navarro 46963bca69 Search on frontend 2023-05-10 15:19:45 +02:00
Adria Navarro d33a06c89c Send search term to api call 2023-05-10 12:32:05 +02:00
Peter Clement 1539bf234b add ability to trigger synchronous automation from button action 2023-05-09 12:10:20 +01:00
Adria Navarro d79af79bf1 Comment 2023-05-05 16:33:02 +01:00
Adria Navarro 916edf47d4 Handling last page removed 2023-05-05 16:33:02 +01:00
Adria Navarro 5e8a2de089 Handle cursors on refresh 2023-05-05 16:33:02 +01:00
Adria Navarro 10fcca92f6 Paginate users on group views 2023-05-05 16:33:01 +01:00
Andrew Kingston 438afa03cf Remove commented out code 2023-05-05 10:46:36 +01:00
Andrew Kingston 1ec5df1299 Use magic icon for auto column and show icons in hide columns button 2023-05-05 08:56:45 +01:00
Andrew Kingston 9c811d1a3b Update position of new row buttons to reduce chance of z-index issues with dropdowns as the first new row column 2023-04-28 11:47:44 +01:00
Andrew Kingston ab0d859c82 Fix z-index of add column icon 2023-04-28 11:41:28 +01:00
Andrew Kingston 933545ccf7 Hide add column icon when disable column addition flag is set 2023-04-28 11:37:38 +01:00
Andrew Kingston b79f466324 Prevent selecting rows with keyboard when disable row deletion flag is set 2023-04-28 11:34:16 +01:00
Andrew Kingston 96fc70f29a Fix keyboard shortcuts circumventing disabling adding rows 2023-04-28 11:32:44 +01:00
Andrew Kingston 80da2fb93a Prevent row bulk deletion when delete rows flag is set to false 2023-04-28 11:30:18 +01:00
Andrew Kingston 023cb2b83b Replace bulk delete button with inline icons 2023-04-28 11:25:00 +01:00
Andrew Kingston b07e5095e9 Increase support for lower resolutions in the grid UI by using tooltips instead of text for some buttons at low horizontal breakpoints 2023-04-28 11:13:40 +01:00
Andrew Kingston 0e0ee590c8 Properly parse number cells as floats 2023-04-27 12:25:21 +01:00
Andrew Kingston 5728cf9b2a Add clickoutside handlers to options, long form and relationship cells 2023-04-27 11:55:03 +01:00
Andrew Kingston 46b079497a Use 'high-low' nomenclature for numerical columns in grid sort button 2023-04-27 10:03:23 +01:00
Andrew Kingston e239d1e559 Use 'high-low' nomenclature for sorting on numeric columns in header cells 2023-04-27 09:55:59 +01:00
Andrew Kingston d4b9531b95 Add keyboard shortcut indicators for adding new rows 2023-04-27 09:02:49 +01:00
Andrew Kingston 5b03ce0566 Add loading state to new row component 2023-04-26 19:23:06 +01:00
Andrew Kingston 78c50df4bd Add overlay to autocolumns when creating rows 2023-04-26 18:52:16 +01:00
Andrew Kingston 09ec898a4d Update readonly cell border to be gray 2023-04-26 18:43:56 +01:00
Andrew Kingston 44ef27299a Update grid keyboard handling to bring invalid origin consideration to be highest precedence 2023-04-26 16:04:14 +01:00
Andrew Kingston c691dafc39 Add default value to contentLines 2023-04-26 12:04:41 +01:00
Andrew Kingston 91b2f4165d Make it more obvious that multi select cells have overflow when using small line height 2023-04-25 14:28:18 +01:00
Andrew Kingston 2f97787dfb Fix hidden gutter cell expand icons still having a tooltip 2023-04-25 09:32:06 +01:00
Andrew Kingston 01ada56686 Use friendly name where possible when configuring column visibility 2023-04-25 09:23:16 +01:00
Andrew Kingston 8d21345d55 Add sticky columns as a permanent, disabled option in hide columns buttons 2023-04-25 09:22:30 +01:00
Andrew Kingston 6ab03289c5 Fix checkbox not having a blur method 2023-04-25 09:13:42 +01:00
Andrew Kingston 6c15471778 Fix tab browser behaviour 2023-04-25 09:05:00 +01:00
Andrew Kingston 45ac7d1850 Add hide column option to header cell menu 2023-04-25 09:04:51 +01:00
Andrew Kingston 81ec010732 Remove mousedown stop propagation on header cell icon 2023-04-24 17:36:38 +01:00
Andrew Kingston 98ca05d97f Merge pull request #10396 from Budibase/grid-tweaks
Grid tweaks
2023-04-24 16:53:46 +01:00
Andrew Kingston 10e64c0573 Fix a couple of pixel layout issues 2023-04-24 16:23:47 +01:00
Andrew Kingston 975cb867ee Fix showing 1px new row component when no columns exist 2023-04-24 16:14:47 +01:00
Andrew Kingston 4162600950 Remove commented out code 2023-04-24 16:12:25 +01:00
Andrew Kingston 31e0f99910 Lint 2023-04-24 14:55:00 +01:00
Andrew Kingston 6a3fcada9b Add background colour to sticky column to fix error label z-index issue 2023-04-24 13:50:00 +01:00
Andrew Kingston b0ce561383 Update z-index of beta button so that row creation goes on top 2023-04-24 13:47:55 +01:00
Andrew Kingston 357894d556 Fix select all checkbox state being wrong 2023-04-24 13:45:14 +01:00
Andrew Kingston 9594aae29d Update header cell hover cursor 2023-04-24 13:43:11 +01:00
Andrew Kingston 726945ea61 Allow bulk row deletion via keyboard even without a focused cell 2023-04-24 13:07:53 +01:00
Andrew Kingston 59a354e0c5 Simplify new row component logic 2023-04-24 13:06:37 +01:00
Andrew Kingston 3a42949b27 Update new row component icon color 2023-04-24 12:53:17 +01:00
Andrew Kingston 5cbaf2f58a Update new row component to render inline where possible 2023-04-24 12:50:35 +01:00
Andrew Kingston 98430138fe Improve gutter cell usage 2023-04-24 11:36:48 +01:00
Andrew Kingston 5155727b56 Update grid button text and refactor gutter cell into own component 2023-04-24 11:22:03 +01:00
Andrew Kingston 3bbf055401 Improve horizontal scrolling performance 2023-04-24 08:09:18 +01:00
Andrew Kingston 4e128c00f4 Add inline button for creating columns 2023-04-24 07:46:36 +01:00
Andrew Kingston 1edfd3b887 Improve grid keyboard shortcuts and allow sorting by any visible field to fix issues with refreshing data when hiding columns 2023-04-23 13:02:17 +01:00
Andrew Kingston 2972af6711 Update column width button sizes 2023-04-23 12:18:43 +01:00
Andrew Kingston 0eb66e7bc6 Add column width button 2023-04-22 23:18:50 +01:00
Andrew Kingston 0493fb5c03 Add space keybind for selecting rows and allow bulk deleting of rows via keypress when rows are selected 2023-04-22 17:03:56 +01:00
Andrew Kingston ace9bca81d Update textarea focus again 2023-04-22 16:42:26 +01:00
Andrew Kingston 0710a0c951 When focusing textarea cells, ensure the cursor is set to the end rather than the start 2023-04-22 16:41:10 +01:00
Andrew Kingston e54ea6661f Improve keyboard shortcuts for adding rows 2023-04-22 16:40:00 +01:00
Andrew Kingston 61f05492ad Improve new row top component and update new row bottom component 2023-04-22 15:09:49 +01:00
Andrew Kingston 9361c91ad4 Update new row top cell colour 2023-04-21 18:49:28 +01:00
Andrew Kingston 49f5aea19c Update new row top component to fix multiple z-index issues 2023-04-21 18:43:01 +01:00
Andrew Kingston 77406ac183 Improve new row top component and fix style issues with z-index with validation labels 2023-04-21 15:16:11 +01:00
Andrew Kingston ea78f7fede Prevent immediately cell mutation by typing for readonly cells 2023-04-21 11:00:03 +01:00
Andrew Kingston f8a9af2458 Disable pasting for readonly cells 2023-04-21 10:57:45 +01:00
Andrew Kingston aa98cf72f5 Use different background colour for readonly cells 2023-04-21 10:55:27 +01:00
Andrew Kingston b44e6ddea6 Use friendly names in sort dropdown£ 2023-04-21 10:53:05 +01:00
Andrew Kingston be3b2549a5 Use shift instead of ctrl/cmd for horizontal scrolling 2023-04-21 10:49:05 +01:00
Andrew Kingston 4cd5239612 Update relationship cell icon 2023-04-21 10:43:43 +01:00
Andrew Kingston 3e2fcf2f76 Make delete rows button more prominent 2023-04-21 10:38:07 +01:00
Andrew Kingston 574595c0af Remove background colour from header cell for sorted column 2023-04-21 10:27:33 +01:00
Andrew Kingston eabd57d20b Add FAB for adding rows and inline row creation 2023-04-21 10:26:55 +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 fe5ab61941 Fix menu postiion, fix copy and paste in menu not working 2023-04-20 08:58:49 +01:00
Andrew Kingston 6bf6d15849 Rename sheet to grid 2023-04-20 08:17:07 +01:00
Andrew Kingston c82451f888 Update koa <> socket.io integation to improve fake koa context and allow current app middleware 2023-04-20 08:02:49 +01:00
Andrew Kingston d3827cdceb Add maze link to grid 2023-04-19 14:28:54 +01:00
Andrew Kingston 8c1d939276 Update beta button text 2023-04-18 21:20:08 +01:00
Andrew Kingston 71de911922 Update beta button position slightly 2023-04-18 21:18:26 +01:00
Andrew Kingston 6d2c928e51 Fix primary display column not properly disabling certain menu options 2023-04-18 14:18:57 +01:00
Andrew Kingston dfd958a08e Update number icon 2023-04-18 14:06:11 +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
Andrew Kingston d331072f9a Lint 2023-04-18 10:54:10 +01:00
Andrew Kingston 083836a87b Remove any naming of dataspaces 2023-04-18 10:46:35 +01:00
Andrew Kingston 8aff208acd Improve sheet loading state 2023-04-18 09:08:38 +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 fef44737f8 Fix reorder overlay height 2023-04-18 08:23:14 +01:00
Andrew Kingston 420e0bb279 Fix resize overlay handler height 2023-04-18 08:22:28 +01:00
Andrew Kingston ccb02661c8 Remove spellcheck from text fields 2023-04-18 08:22:04 +01:00
Andrew Kingston 6f98bca393 Improve relationship cell performance 2023-04-18 08:21:54 +01:00
Andrew Kingston b21e22071e Standardise menu overlay shadow and add count to relationship cells when hovering 2023-04-18 08:05:13 +01:00
Andrew Kingston 2da07fb90c Prevent sheet handling key events sourcing from modals 2023-04-17 18:59:01 +01:00
Andrew Kingston 508cb6c58f Add menu option to edit rows in modal 2023-04-17 18:53:44 +01:00
Andrew Kingston 5d964a756c Prevent using invalid data types as display columns 2023-04-17 18:49:36 +01:00
Andrew Kingston 466e11aa57 Update error label max size and position 2023-04-17 18:29:54 +01:00
Andrew Kingston 51f873beb6 Update relationship icons 2023-04-17 16:42:53 +01:00
Andrew Kingston 091db0a144 Update relationship icons 2023-04-17 16:41:25 +01:00
Andrew Kingston b6877a6d7c Update shadow 2023-04-17 16:32:51 +01:00
Andrew Kingston e7482746c0 Improve styles in relationship dropdown 2023-04-17 16:31:42 +01:00
Andrew Kingston 5ae4c387db Fix icon padding in relationship picker 2023-04-17 16:29:22 +01:00
Andrew Kingston c614c0739f Lint 2023-04-17 16:22:59 +01:00
Andrew Kingston 666762a2c2 Fix relationship cells not being readonly 2023-04-17 16:06:20 +01:00
Andrew Kingston e48e2ff7f0 Clean up 2023-04-17 16:04:41 +01:00
Andrew Kingston 1c702d5f07 Improve a few design issues 2023-04-17 15:58:14 +01:00
Andrew Kingston 730fe0a8ea Persist row height as table metadata 2023-04-17 15:53:20 +01:00
Andrew Kingston 6c5ac00acb Standardise shadows across cell types 2023-04-17 15:41:55 +01:00
Andrew Kingston 4427b18466 Use unique background for focused cell 2023-04-17 14:58:09 +01:00
Andrew Kingston 53d3eaf465 Update attachment cell to respect row height 2023-04-17 14:54:58 +01:00
Andrew Kingston 0cede10867 Update JSON, boolean and date cells to respect row height 2023-04-17 14:50:36 +01:00
Andrew Kingston d38cf2d7f0 Fix row heights with sticky column 2023-04-17 13:53:24 +01:00
Andrew Kingston c4125b5a93 Update text cells, number cells, long form field cells and relationship cells to respect row height 2023-04-17 13:37:03 +01:00
Andrew Kingston bed6fe607c Ensure dynamic row height is properly accounted for 2023-04-17 12:28:34 +01:00
Andrew Kingston 6931436006 Rewrite relationship cell and update default column widths 2023-04-17 12:20:21 +01:00
Andrew Kingston b867d359f4 Fix errors not showing in sticky column and clear cell value on backspace press 2023-04-16 11:56:27 +01:00
Andrew Kingston 6da9da4267 Refactor other sheet stores to improve dependency ordering 2023-04-16 11:50:47 +01:00
Andrew Kingston c2de10c076 Fix dependency ordering 2023-04-14 15:35:47 +01:00
Andrew Kingston b1d227b65f Remove copy/paste rows, remove move to start/end, improve copy/paste for cell values 2023-04-14 15:11:52 +01:00
Andrew Kingston ddc11ab88c Add copy and paste to spreadsheet and add immediate editing of cells without additional click 2023-04-14 09:19:47 +01:00
Andrew Kingston 6f20c3dff8 Improve sorting 2023-04-14 08:16:35 +01:00
Andrew Kingston dd24d7d9ee Add additional reorder options and improve beta button 2023-04-14 07:55:20 +01:00
Andrew Kingston 84a5739c53 Work around table API inconsistencies to handle table schema updates 2023-04-13 16:51:26 +01:00
Andrew Kingston f86c0ec36e Add beta button to sheet, tidy up constants 2023-04-13 15:52:07 +01:00
Andrew Kingston f7f1ee49a6 Improve sheet loading states 2023-04-13 14:30:01 +01:00
Andrew Kingston fa0cc17682 Make column visibility persistent and refactor column updating 2023-04-13 14:09:57 +01:00
Andrew Kingston 8100737817 Fix double click resizing of sticky column 2023-04-13 12:05:47 +01:00
Andrew Kingston 69f6834886 Improve sheet integration with data section and add horizontal cell inversion 2023-04-13 12:01:16 +01:00
Andrew Kingston 724bff60f2 Add persitence to column size and order in sheets 2023-04-12 14:56:22 +01:00
Andrew Kingston 49611298b4 Fix issue with display column not being able to be unset 2023-04-12 10:38:35 +01:00
Andrew Kingston 76353c2e4d Fix issue when no display column exists 2023-04-12 10:34:33 +01:00
Andrew Kingston 68cd1fbe8e Fix reorder overlay z-index issue 2023-04-12 10:13:40 +01:00
Andrew Kingston 7fa976ba5e Simplify logic for reordering and add new overlay. Simplify sheet cells 2023-04-12 09:51:49 +01:00
Andrew Kingston 727d3d5b6d Fix issue with cell colors, improve row API interactions to avoid relationship issues due to API response differences 2023-04-11 22:55:13 +01:00
Andrew Kingston 6290112d06 Improve data fetch reset logic, fix issues with stale cache in spreadsheets 2023-04-11 22:21:07 +01:00
Andrew Kingston 0ee63417c1 Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-04-11 17:36:28 +01:00
Andrew Kingston 0c3a9f367e Remove log 2023-04-11 17:34:06 +01:00
Andrew Kingston 361ab9e3cd Add validation to duplicating rows 2023-04-11 16:46:17 +01:00
Andrew Kingston 4a6713e9d3 Add multiple validation improvements 2023-04-11 16:34:13 +01:00
Andrew Kingston 6c203a1e66 Increase horizontal padding when scrolling to a selected cell 2023-04-11 14:19:02 +01:00
Andrew Kingston 1726948f67 Add custom colors for drop shadows and blue-100 to all themes, fix sticky column shadow 2023-04-11 14:07:27 +01:00
Andrew Kingston ab70dfbcf0 Fix resize overlays 2023-04-11 12:19:54 +01:00
Andrew Kingston fe70793e75 Refactor stores to fix dependency issues, use modals for adding rows, simplify sheet 2023-04-11 12:17:08 +01:00
Andrew Kingston 81a28eb4da Large refactors to row creation, naming and sheet APIs 2023-04-10 18:46:34 +01:00
Andrew Kingston da2023974e Update new row component, fix z-index issues, improve UX 2023-04-05 17:36:38 +02:00
Andrew Kingston 5ab0652c87 Fix scroll not working in new row 2023-04-01 10:50:42 +01:00
Andrew Kingston a50e9ccbc7 Fix overlapping long form text borders 2023-03-31 20:35:29 +01:00
Andrew Kingston fcb8b9e9b1 Add resizable rows 2023-03-31 20:33:08 +01:00
Andrew Kingston a0299d4c7c Move new row component to top, automatically invert cell renderers when required 2023-03-31 17:37:59 +01:00
Andrew Kingston 7050c6713a Remove log and add notification when creating or editing columns 2023-03-31 13:21:53 +01:00
Andrew Kingston 5d554d0616 Fix selecting newly created rows 2023-03-31 13:16:40 +01:00
Andrew Kingston ff4c0aed46 Fix add row button not appearing when horizontal scrollbar is hidden 2023-03-31 12:13:00 +01:00
Andrew Kingston d8800c2823 Fix options ordering 2023-03-31 12:07:49 +01:00
Andrew Kingston dbf5bfe83d Ensure all sheet feature flags work as expected and fix multi row deletion 2023-03-31 12:00:32 +01:00
Andrew Kingston 58141b5183 Improve animations for adding rows and handle add row failure 2023-03-31 10:17:18 +01:00
Andrew Kingston fc009b722f Add new footer for adding rows, improve store memoization, support inverting all data types 2023-03-31 10:12:52 +01:00
Andrew Kingston 11dd5fc805 Sort columns to put autocolumns last 2023-03-30 16:23:13 +01:00
Andrew Kingston 0c53e06267 Fix text cell not using full width 2023-03-30 16:16:07 +01:00
Andrew Kingston 7570c52879 Allow expanding rows using existing edit row modal 2023-03-30 16:12:28 +01:00
Andrew Kingston 5640b2fa89 Make sheet gutter width customisable 2023-03-30 09:19:39 +01:00
Andrew Kingston 09f4f210ee Remove log 2023-03-30 08:53:26 +01:00
Andrew Kingston d3c17308ab Fix one-to-many relationships allowing selecting multiple rows on both sides 2023-03-30 08:53:09 +01:00
Andrew Kingston 7ba064dd31 Rollback state changes when row saving fails 2023-03-30 08:52:43 +01:00
Andrew Kingston aaa0f1a7a0 Disable websocket in sheets 2023-03-30 08:52:22 +01:00
Andrew Kingston b7bea0556c Remove redundant sheet schema context and fix issues with mutating table schema 2023-03-29 15:35:36 +01:00
Andrew Kingston eeda58822c Improve preservation of column widths in sheets when making schema changes 2023-03-29 14:57:56 +01:00
Andrew Kingston 31f6f9db7b Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-03-29 12:09:57 +01:00
adrinr 934a2f09d7 Right checks 2023-03-28 16:46:23 +01:00
Andrew Kingston e0e5ca7a3c Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-integration 2023-03-28 15:47:53 +01:00
Dean 8131d9dc6f Branding feature flag changes, config trimming and some fixes 2023-03-27 15:17:14 +01:00
Andrew Kingston 66de32dfb9 Update user avatar colours 2023-03-16 07:59:31 +00:00
Andrew Kingston 6a4420cde4 Fix race conditions and edge cases in relationship cell 2023-03-15 13:01:32 +00:00
Andrew Kingston 66c84b9f82 Improve relationship cell 2023-03-15 12:38:59 +00:00
Andrew Kingston 616e25ac27 Add functional relationship cell 2023-03-15 09:53:32 +00:00
Andrew Kingston 06a0f75077 Improve sort button, remove header more icons unless hovered and highlight sorted column 2023-03-14 15:15:52 +00:00
Andrew Kingston eda50c1330 Fix attachments overflowing 2023-03-14 15:03:32 +00:00
Andrew Kingston d25128d45a Prevent deleting autocolumns via keyboard 2023-03-14 12:06:33 +00:00
Andrew Kingston 43edf37f74 Increase padding to account for attachment dropdown 2023-03-14 12:03:22 +00:00
Andrew Kingston f290d758ba Add attachment cell 2023-03-14 11:53:01 +00:00
Andrew Kingston b60eca9588 Remove console logs 2023-03-14 10:19:37 +00:00
Andrew Kingston 2d6c2fe904 Add cells for formulae and JSON 2023-03-14 10:18:42 +00:00
Andrew Kingston 4754be109a Add ability to focus first cell via tab 2023-03-14 10:03:47 +00:00
Andrew Kingston 9a024d96e7 Add boolean cell 2023-03-14 09:53:08 +00:00
Andrew Kingston 125febdd5a Add new long form text cell 2023-03-14 09:44:21 +00:00
Andrew Kingston aefdfabe39 Add icons for all data types 2023-03-14 08:52:32 +00:00
Andrew Kingston f2cf174557 Ensure the selected cell is always visible 2023-03-13 19:45:03 +00:00
Andrew Kingston d4a2bcae4f Add advanced key handling for spreadsheets and improve blur and focus UX 2023-03-13 18:45:28 +00:00
Dean 5ce52cad06 Working commit 2023-03-13 12:33:16 +00:00
Andrew Kingston 8a8152168d Improve performance by removing searches through the full row array 2023-03-12 16:25:39 +00:00
Andrew Kingston e76c541627 Reset scrolling when datasource changes and fix wasted pagination calls 2023-03-12 16:04:17 +00:00
Andrew Kingston d7666272e0 Ensure all derived stores have default values 2023-03-11 19:20:38 +00:00
Andrew Kingston 38a3ef0c34 Update filter button to look consistent and add double click to resize columns to default width 2023-03-11 18:54:38 +00:00
Andrew Kingston c1128618fb Fix bug with select placeholders and fix sorting loops causing endless refreshes 2023-03-11 18:28:58 +00:00
Andrew Kingston 57c82c4a5d Add sheet button to control column visibilty, improve sorting, improve disabled states 2023-03-11 14:10:45 +00:00
Andrew Kingston c573955998 Update sorting and remove logs 2023-03-10 16:29:33 +00:00
Andrew Kingston 9231ce88c6 Optimise sheet data loading and add sort button 2023-03-10 16:23:56 +00:00
Andrew Kingston a78ba19cf8 Tidy up buttons above sheets and add FAB for adding rows 2023-03-10 11:59:10 +00:00
Andrew Kingston 33a4d17278 Remove new row component and improve mouse interactions 2023-03-10 11:36:17 +00:00
Andrew Kingston dfd6633bee Improve rendering performance and simplify component props 2023-03-10 10:25:26 +00:00
Andrew Kingston 809c56de9f Merge with new shared-core and moved lucene utils 2023-03-09 18:16:56 +00:00
Andrew Kingston c4e3667b6c Merge branch 'develop' of github.com:Budibase/budibase into just-dataspace-things 2023-03-09 17:54:58 +00:00
Andrew Kingston b540427030 Update menu width 2023-03-09 17:54:52 +00:00
Adria Navarro 158703daef Bug - BUDI-6068 filters do not work for google sheets (#9886)
* Add data-utils with filters

* Create data-utils

* Add data-utils to compiled code

* Reuse constants

* Fix tests

* Rename package to shared-core

* Namespace export shared-core

* Rely on rollup to bundle shared-core

* Revert "Rely on rollup to bundle shared-core"

This reverts commit e8b5a2bb9a.

* Updating version and removing private.

* Update version

* Increment versions.

* Implement sort

* Enabling sort

* v2.3.21-alpha.2

* Fix build

* Improve readability

* Move deepGet to shared helper

* Better type usage

* Fix types

* Configure types

* Fix vite refs

* Add dep

* Fixing depencencies on client

* Add missing dev command

* Fix loading issues

* Update versions to latest

* Multiple es6 and commonjs configs

* Config

* Use local packages on rollup for client

* Change shared-core and types entry points

---------

Co-authored-by: mike12345567 <me@michaeldrury.co.uk>
2023-03-09 08:50:26 +00:00
Andrew Kingston 7f263e9870 Improve loading state 2023-03-08 10:49:52 +00:00
Andrew Kingston 856f0eb844 Fix issue with deleting rows and fix relationship cells displaying undefined 2023-03-08 10:23:39 +00:00
Andrew Kingston 9020060f17 Remove unnecessary searching through large rows array 2023-03-08 10:15:46 +00:00
Andrew Kingston dfce198fe5 Improve keyboard navigation in sheets 2023-03-08 10:10:31 +00:00
Andrew Kingston 48309349ae Add basic keyboard interactions to dataspaces 2023-03-08 08:32:03 +00:00
Andrew Kingston 045d0c89af Improve UX around selecting rows and cells 2023-03-08 07:55:31 +00:00
Andrew Kingston 3c71acd68e Add context menu to sheets with deletion and duplication features 2023-03-07 17:03:37 +00:00
Andrew Kingston ef54813764 Update delete button and allow horizontal scrolling 2023-03-07 14:14:16 +00:00
Andrew Kingston 7f231aecdf Small style updates 2023-03-07 12:10:50 +00:00
Andrew Kingston 0e9fc297fb Expose loading state of sheet and improve column highlighting logic 2023-03-07 12:05:00 +00:00
Andrew Kingston df757ce09b Prevent adding rows to users table and remove log 2023-03-07 11:57:28 +00:00
Andrew Kingston a25af10c0e Count context menu clicks when considering the click outside handler 2023-03-07 11:54:41 +00:00
Andrew Kingston 84770c72c2 Add flags for controlling editing and adding rows in sheets 2023-03-07 11:51:47 +00:00
Andrew Kingston ca92d520b3 Fully integrates sheets with datasection and remove lots of old stuff 2023-03-07 11:40:32 +00:00
Martin McKeaveney ea5e564428 fix tenant filtering issue 2023-03-07 09:45:39 +00:00
Andrew Kingston f516011182 Handle context menu events in header cells 2023-03-07 08:23:50 +00:00
Andrew Kingston 9579c9c0d2 Add column sorting and reordering via popover 2023-03-07 08:15:27 +00:00
Andrew Kingston f0ac9e9d9c Refactor resizing logic into store and improve UX around hover events when resizing/reordering 2023-03-06 15:39:50 +00:00
Andrew Kingston b5a72438e1 Tidy reordering stuff 2023-03-06 15:15:00 +00:00
Andrew Kingston b93f575bca Add popovers to sheet column headers, improve mouse UX 2023-03-06 15:09:42 +00:00
Andrew Kingston 36e8664605 WIP column popovers for dataspace sheets 2023-03-06 12:29:18 +00:00
Andrew Kingston d15b1748ef Update layout and remove logging 2023-03-06 11:30:38 +00:00
Andrew Kingston 4647e1bc07 Fix issues with not disconnecting users when swapping datasource and improve multi-user UI 2023-03-06 11:20:47 +00:00
Andrew Kingston 3e907af8b5 Add WIP multi-user UI for sheet interface 2023-03-06 07:43:45 +00:00
Andrew Kingston 36c953443f Add WIP initial multi-user websocket implementation for sheets 2023-03-05 18:57:05 +00:00
Andrew Kingston 01867f5736 Fix options cells being unable to scroll 2023-03-03 09:16:00 +00:00
Andrew Kingston f1a67a2cc5 Remove add column button 2023-03-03 09:14:38 +00:00
Andrew Kingston 110d5d5a35 Lint and remove unused deps 2023-03-03 09:07:48 +00:00
Andrew Kingston 37393c4e2a Refactor stores and make state more modular 2023-03-03 09:02:19 +00:00
Andrew Kingston b82e7582db Add back in functional delete row button 2023-03-03 08:34:26 +00:00
Andrew Kingston 5b590a5976 Integrate sheet into data section better 2023-03-02 17:20:51 +00:00
Andrew Kingston 540906cf62 Allow configuring selecting rows and adding rows 2023-03-02 16:07:14 +00:00
Andrew Kingston 3a8d223a77 Ensure scroll top is always properly reset and add config store 2023-03-02 15:45:55 +00:00
Andrew Kingston 1067f06fd6 Improve performance by removing keyed each blocks and fix reorder target styling 2023-03-02 13:39:47 +00:00
Andrew Kingston 9b5f2d92f0 Improve rendering performance 2023-03-02 12:10:12 +00:00
Andrew Kingston ff0f91bca3 Fix styles when using no sticky columns 2023-03-02 11:25:06 +00:00
Andrew Kingston 265f2d9ba3 Simplify and improve z index styles 2023-03-02 11:22:01 +00:00
Andrew Kingston f19ba2ea20 Improve scroll logic and handle horizontal wheel events 2023-03-02 11:08:48 +00:00
Andrew Kingston 1620b81e96 Update scroll styles and z-index 2023-03-02 09:27:16 +00:00
Andrew Kingston 2c1a5ae0e8 Update hovered row on wheel 2023-03-01 20:14:50 +00:00
Andrew Kingston 15c07e13ac Fix row hover state not being removed 2023-03-01 20:01:00 +00:00
Andrew Kingston 36f7d24d42 Allow reordering columns to be the first column after sticky column 2023-03-01 19:34:26 +00:00
Andrew Kingston c7b8d78c98 Improve styles 2023-03-01 19:19:22 +00:00
Andrew Kingston a3e23c3cd6 Add padding to sheet 2023-03-01 19:10:22 +00:00
Andrew Kingston 4558a1c6fa Fix issue when no primary display is set 2023-03-01 18:34:43 +00:00
Andrew Kingston 15dffb0f40 Fix some scroll issues and add shadow to sticky column 2023-03-01 18:32:23 +00:00
Andrew Kingston ca96a61cde Tune cell sizes 2023-03-01 16:12:35 +00:00
Andrew Kingston 524c46a554 Fix multiple issues, clean up rendering, improve performance 2023-03-01 16:10:24 +00:00
Andrew Kingston 40df22d791 Refactor spreadsheet into more discreet components 2023-03-01 11:53:09 +00:00
Andrew Kingston 43eadf2ec6 Add WIP virtual dom implementation to massively increase performance 2023-03-01 08:44:02 +00:00
Andrew Kingston db469711cf Optimise resetting data to smoothly transition when changing datasource 2023-02-28 15:00:10 +00:00
Andrew Kingston 9be7d042a9 Fix relationship issues when creating rows 2023-02-28 14:56:44 +00:00
Andrew Kingston d2bc4d8fdc Tidy up 2023-02-28 14:53:31 +00:00
Andrew Kingston 4c70959327 Use search endpoint instead of get endpoint to fetch individual rows so that relationship enrichment occurs 2023-02-28 14:53:11 +00:00
Andrew Kingston c83286cb61 Tidy up 2023-02-28 14:40:36 +00:00
Andrew Kingston 878ebfb8c5 Fix issue reordering columns in firefox and increase performance 2023-02-28 14:31:58 +00:00
Andrew Kingston 26ca96eaa9 Use nicer checkboxes and fix some hover styles 2023-02-28 14:17:06 +00:00
Andrew Kingston a28148d9f8 Merge branch 'develop' of github.com:Budibase/budibase into spreadsheet-abs 2023-02-28 13:59:37 +00:00
Andrew Kingston 385e9eadb0 Add infinite scroll, improve row fetching, add error handling, fix svelte store updates 2023-02-28 11:48:25 +00:00
Dean dd08845a44 Merge remote-tracking branch 'origin/develop' into feature/app-user-onboarding-ux 2023-02-28 09:38:15 +00:00
Dean 61ed62e6c4 Builder user onboarding 2023-02-28 09:37:03 +00:00
Andrew Kingston b45ba0eba7 Separate data fetching logic from main sheet and tidy up 2023-02-27 19:01:23 +00:00
Andrew Kingston 30e1ecd67f Fix date cells in sheets 2023-02-27 15:41:35 +00:00
mike12345567 2fb33e2cf3 Merge branch 'develop' of github.com:Budibase/budibase into feature/audit-logs 2023-02-27 14:51:33 +00:00
Andrew Kingston b1f2fe326a Fix multiple issues with z-index, reordering and resizing 2023-02-27 13:59:35 +00:00
Rory Powell 2c46109e7d Enforceable SSO (#9787)
* 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
2023-02-27 13:42:51 +00:00
Andrew Kingston efca3eef4f Clean up more sheet state and increase performance 2023-02-27 08:59:36 +00:00
Andrew Kingston fae24276f9 Migrate sheet to data section, improve reordering and reszing 2023-02-26 21:29:46 +00:00
mike12345567 42fc004212 Merge branch 'develop' of github.com:Budibase/budibase into feature/audit-logs 2023-02-24 12:46:58 +00:00
Peter Clement c1db2c0c3e add debounce for search 2023-02-23 14:33:15 +00:00
mike12345567 01076bd35f Getting downloading working correctly, some minor UI updates, adding a new middleware for converting a query string to a body (useful for when a GET has to be used). 2023-02-22 18:50:27 +00:00
Peter Clement 647e643439 start download work 2023-02-22 17:25:24 +00:00
Peter Clement 7bb9829165 update sidebar styling and fix bugs 2023-02-22 10:09:15 +00:00
Gerard Burns e7f8a8a801 Backups UI Changes (#9726)
* Backups UI Changes

* PR Feedback

---------

Co-authored-by: Rory Powell <rory.codes@gmail.com>
2023-02-22 10:03:11 +00:00
Peter Clement 0f26f55019 some style updates for the sidebar 2023-02-21 12:31:21 +00:00
Peter Clement a1b47bbce3 ensure table is pulling from search endpoint 2023-02-17 16:49:41 +00:00
Peter Clement 6d60c27521 add store and api funcs 2023-02-13 16:32:14 +00:00
Peter Clement 70ac7b81c3 add base audit logs ui 2023-02-13 09:47:08 +00:00
Gerard Burns dd343a5946 New App Onboarding (#9489)
* 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>
2023-01-31 19:34:32 +00:00
deanhannigan 7540cad45c Merge pull request #9467 from Budibase/feature/auth-screens-redesign
Selfhost onboarding UX/UI updates
2023-01-31 16:13:46 +00:00
Andrew Kingston c280e44b26 Merge branch 'develop' of github.com:Budibase/budibase into develop 2023-01-31 15:50:00 +00:00
Andrew Kingston ca399568e2 Use real testimonials on testimonial page 2023-01-31 15:49:41 +00:00
Andrew Kingston e0ba99621c Update background of split page to use purplish gradient, and also fix it to dark theme 2023-01-31 15:48:35 +00:00
Dean 680a9acb4f Merge remote-tracking branch 'origin/develop' into feature/configurable-data-export 2023-01-31 15:08:46 +00:00
Andrew Kingston 767236a841 Add min-height to split page to align small pages in onboarding flow and match designs 2023-01-31 08:23:20 +00:00
Dean d37c0e4b5d UI Onboarding UI/UX auth refactoring 2023-01-27 13:44:57 +00:00
Rory Powell da2c809a09 Merge branch 'develop' into feature/environment-variables 2023-01-27 11:27:11 +00:00
Peter Clement 9175cab4ca add environmentVariables feature to constants 2023-01-26 15:34:03 +00:00
Andrew Kingston f068f20c61 Add suffix setting to fancy input component and fix lint warning 2023-01-25 15:57:47 +00:00
mike12345567 63d882efc6 Adding frontend event publishing for events like upgrade panel opened. 2023-01-23 19:18:02 +00:00
mike12345567 557a9a8eeb Adding an API for publishing an event from the frontend. 2023-01-23 18:56:44 +00:00
Andrew Kingston 549e4e0dc5 Onboarding core components (#9412)
* 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
2023-01-23 15:38:43 +00:00
Dean 45b907cfde Merge remote-tracking branch 'origin/develop' into feature/configurable-data-export 2023-01-23 11:43:15 +00:00
mike12345567 3b219dc4ef Adding a warning for missing ENCRYPTION_KEY variable to the portal. 2023-01-18 17:29:56 +00:00
Andrew Kingston d92f1a7097 Portal redesign (#9336)
* 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
2023-01-18 13:56:53 +00:00
mike12345567 3659768c42 Merge branch 'develop' of github.com:Budibase/budibase into feature/environment-variables 2023-01-17 15:25:17 +00:00
Gerard Burns 48e1695318 JSON import changes (#9288)
* JSON import changes

* Fix lockfiles

* PR Feedback, fix tests

* fix tests

* pr feedback
2023-01-17 15:07:52 +00:00
Peter Clement f00034544f reuse modal for edit and create and add delete function 2023-01-13 16:39:26 +00:00
Peter Clement a0dacc9717 add create store method and tidy up 2023-01-12 16:09:05 +00:00
mike12345567 03df57d077 Adding in basic implementation of variable usage, getting from pro and enriching through new datasource SDK. 2023-01-11 17:57:51 +00:00
Dean 4479c2477c Merge remote-tracking branch 'origin/develop' into feature/configurable-data-export 2023-01-10 09:39:11 +00:00
Peter Clement 7378d21fea environment variables ui boilerplate 2023-01-09 16:48:39 +00:00
Andrew Kingston 395b4d7ad8 Merge branch 'develop' of github.com:Budibase/budibase into cheeks-lab-day-portal-redesign 2023-01-06 15:22:28 +00:00
Andrew Kingston 66674c7277 Ensure view names are properly encoded to handle certain special characters (#9145) 2022-12-22 13:09:07 +00:00
Andrew Kingston ab29c10936 Update app overview version and name/url screens 2022-12-20 08:48:20 +00:00
Martin McKeaveney 84ab7862d1 fixes for google sheets, admin checklist, and deleting an app from API (#8846)
* 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>
2022-12-19 13:18:00 +00:00
Andrew Kingston 090ae5df49 Master => Develop (#9049)
* 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>
2022-12-15 12:13:42 +00:00
Dean cdcefa16bb Filtering and sort on data row export 2022-12-13 10:13:17 +00:00
Andrew Kingston d4a7412163 Update filter labels to reflect that more than and less than also include equal to 2022-12-07 09:00:29 +00:00
Andrew Kingston ce9feed5f2 Ensure all search requests specify a sort field to avoid random sorting 2022-11-17 14:15:24 +00:00