* dbeaver/pro#5998 fix: selectAll index header cell
* dbeaver/pro#5998 fix: removed OrderButton from tabbing order, add sorting on space/enter when header column cell is in focus
* dbeaver/pro#5998 feat: add onHeaderKeyDown handler to DataGrid and HeaderCellContentRenderer
we lost ability to copy data grid cells' data when one of the header cells is focused, because the header cell renderer was not handling keydown events. This commit utilizing gridSelectedCellCopy.onKeydownHandler inside HeaderCellContentRenderer keydown event handler
* dbeaver/pro#5998 style: change onKeyDown to a named function
* dbeaver/pro#5998 refactor: simplify OrderButton and update sorting logic in HeaderCellContentRenderer
* dbeaver/pro#5998 refactor: rename container class to clickAreaOverlay in TableIndexColumnHeader, remove z-index
---------
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
* dbeaver/pro#6038 fix: can't click on checkbox in OutputLogMenu
* dbeaver/pro#6038 refactor: update menu item and tree node styles
replace theme-ripple classname with in-place styles for hover and active states
* dbeaver/pro#6038 refactor: move pointer events none in MenuItemIcon class
* Revert "dbeaver/pro#6038 refactor: update menu item and tree node styles"
This reverts commit 2c2fdc2e8d.
* dbeaver/pro#6038 revert changes made in this branch and #5997, #5989
previous manipulations with theme-ripple class has broken our UI in several places. this PR returns to the state before #5989 when only CloudExplorerTree was broken
---------
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
* dbeaver/pro#5242 refactor: update TableItemExpand component
replace a div with IconButton and clean up CSS
* dbeaver/pro#5242 refactor: adjust outline offset for icon button
Usually icon buttons are used inside other components or in small places, so they tend to overflow over their container with a standard button outline offset. I believe that offset 0 is the better default for the IconButton.
---------
Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com>
* dbeaver/pro#6017 adds new ui spinner to loader
* removes unused code
* pr fixes
* changes loader animation
* dbeaver/pro#6017 fix: remove class names that don't exist
* dbeaver/pro#6017 fix: remove cloudbeaver spinner animation adjustments
* dbeaver/pro#6017 feat: introduce animation delay variable for spinner
Make the initial appearance of the spinner better by starting from semi-filled circle, not the tine dot which is crucial on fast loads.
---------
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
Co-authored-by: Sychev Andrey <nukemoore@gmail.com>
* dbeaver/pro#4745 fix: useTreeFilter UX bug
When a user searched for a term (e.g., 're') and found a matching node in the middle of the tree, the user expected to expand that node and see all its children.
But the filter was also being applied to the children, hiding non-matching children. This created a confusing experience where expanding a found node might show empty or partially empty results
In new implementation Tree shows ALL children without filtering if parent node matches filter.
* dbeaver/pro#4745 refactor: update children prop type and usage in AuthenticationProvider
* dbeaver/pro#4745 refactor: replace Loader with Spinner in TreeNodeExpand
* dbeaver/pro#4745 refactor: update typography styles with global typography styles
* dbeaver/pro#4745 feat: add naive tree selection functionality with useTreeSelection hook
* dbeaver/pro#4745 feat: enhance tree selection with loading state management
* dbeaver/pro#4745 feat: add indeterminate selection state management in tree component
* dbeaver/pro#4745 feat: add multiple selection prop in tree component
* dbeaver/pro#4745 refactor: improve indeterminate state management in tree selection
* dbeaver/pro#4745 feat: add expandOnSelect prop to tree and selection hooks
* dbeaver/pro#4745 refactor: adjust padding in CommonDialogHeader styles and fix formatting
* dbeaver/pro#4745 refactor: implement tree selection context for improved node selection management
* dbeaver/pro#4745 style: update padding-left to use CSS variable for treeNodeNested
* dbeaver/pro#4745 refactor: remove redundant state update for empty child nodes in expandNode
It make no sense to close just expanded node if there is no children. User will lost the information about that and could try to open it again later. It's better to keep expanded state to show that this node is empty.
* dbeaver/pro#4745 style: fix lint
* dbeaver/pro#4545 fix: remove useLayoutEffect with focus in TreeNodeControl
This auto focus behavior entailed several bugs like stealing focus from filter input or breaking custom node elements like menu on hover. Decided to remove.
* dbeaver/pro#4745 refactor: make useTreeSelection hook public
* dbeaver/pro#4745 refactor: update tree selection logic and remove unused properties
* dbeaver/pro#4745 refactor: remove async
* dbeaver/pro#4745 refactor: remove duplicated typography styles
* dbeaver/pro#4745 refactor: update selection
* dbeaver/pro#4745 refactor: simplify selection state management in useTreeSelection
* dbeaver/pro#4745 refactor: optimize selection logic in useTreeSelection
* dbeaver/pro#4745 fix: revert children type
* dbeaver/pro#4745 style: lint
* dbeaver/pro#4745 refactor: expose process action from tree node context
* dbeaver/pro#4745 refactor: remove optional showInFilter property from INodeState interface
* dbeaver/pro#4745 refactor: simplify indeterminate state updates and optimize child selection handling
* dbeaver/pro#4745 fix: bug with bad selection state when select with filters
* dbeaver/pro#4745 refactor: update selection context and method names in tree selection
* dbeaver/pro#4745 feat: add disabled prop to Node component
* dbeaver/pro#4745 refactor: remove disabled prop from Node interface
clean unused TreeNodeSelect code
* dbeaver/pro#4745 add action.bound for processAction
* dbeaver/pro#4745 fix: close/deselect node if loading failed
* dbeaver/pro#4745 feat: enhance tree filter functionality with expanded state management
parent nodes are expanded if node matches with filters. When filters are cleared, the tree restores it's unfiltered expand state
* dbeaver/pro#4545 feat: integrate notification service to show errors on load
* dbeaver/pro#4745 fix: don't select empty folders
* Revert "dbeaver/pro#4545 feat: integrate notification service to show errors on load"
This reverts commit c1fd855a94.
* dbeaver/pro#4745 feat: add state transformer to tree filter for expanded state management
---------
Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com>
* dbeaver/pro#6018 fix: context menu disappears on cells with an interactive formatter
add menu visibility handling to cell formatters
* dbeaver/pro#6018 refactor: rename handleStateSwitch to handleCellMenuStateSwitch for clarity
* dbeaver/pro#6018 refactor: rename menu visibility properties for clarity
---------
Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com>
* dbeaver/pro#5800 refactor: InputFieldBase
update InputField by swapping native input by Input from ui-kit, replace inner action icons to IconButton components, and replace Loader with Spinner component
* dbeaver/pro#5800 fix: enforce border and min-height styles in InlineEditor
* dbeaver/pro#5800 feat: add size prop to Filter component for responsive input sizing
* dbeaver/pro#5800 feat: add UiInput tokens for input component
removes hover effect on inputs by using the same token as for default border
---------
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
* dbeaver/pro#5789 refactor: add ButtonIcon component instead of Button.Icon
* dbeaver/pro#5789 refactor: button components across whole application to use UIKit button and UIKit variables
- Rewrite Button.css(former button.module.css) file to define button styles for better maintainability and scalability
- Added props to the Button component for Icons: 'size' and 'placement', currently used only in PropertiesTable (Add property)
- Changed button modifiers to 'variant' swapping unelevated mod to primary(default one, so mod just deleted) and outlined mod to variant secondary.
- In one case changed raised mod to danger variant (deleting a license)
* dbeaver/pro#5789 refactor: fix Button component styling and removed redundant css file
* dbeaver/pro#5789 style: clean up button formatting across multiple components
* dbeaver/pro#5789 refactor: update Tailwind CSS import to use layer directive
* dbeaver/pro#5789 refactor[kit]: add disabled state styles for buttons
* dbeaver/pro#5789 refactor: enhance button styles for disabled state
* dbeaver/pro#5789 fix button problems
* dbeaver/pro#5789 fix: change layer name from theme to base in color styles
* dbeaver/pro#5789 refactor: update button padding from 16px to 15px
* dbeaver/pro#5789 refactor: adjust button gap and update InputFiles button props
* dbeaver/pro#5789 style: center align button in SSHKeyUploader component
* dbeaver/pro#5789 fix: update button classes to use inline-flex for better alignment
* dbeaver/pro#5789 fix: remove initial background from tab styles
* dbeaver/pro#5789 fix: move cursor pointer rule to button container
* dbeaver/pro#5789 fix: update checkbox SVG fill property for proper rendering
* dbeaver/pro#5789 fix: add variant prop to Button component for styling options
* dbeaver/pro#5789 fix: add InlineEditor to CSS layer to compete with theme Important! border-color
* dbeaver/pro#5789 fix: add min-width to button styles for consistency
* dbeaver/pro#5789 refactor: adjust margin for trigger element in context menu
first of all it's done to fix autotests and the second reason is to visually balance the cell with menu
* dbeaver/pro#5789 fix: make boolean great again
---------
Co-authored-by: Daria Marutkina <125263541+dariamarutkina@users.noreply.github.com>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>
Co-authored-by: kseniaguzeeva <112612526+kseniaguzeeva@users.noreply.github.com>
* dbeaver/pro#5553 feat: add column sorting functionality to DataGrid
* dbeaver/pro#5553 feat: enhance column sorting functionality to support multiple selection
* dbeaver/pro#5553 feat: add keyboard navigation to order button
* dbeaver/pro#5553 feat: add constraints handling logic for column sorting in DataGrid
* Revert "dbeaver/pro#5553 feat: add constraints handling logic for column sorting in DataGrid"
This reverts commit 6028a48b13.
* dbeaver/pro#5553 feat: add icon generation script to UIKit, add sample icons
* dbeaver/pro#5553 refactor: use inner react-data-grid API for column sorting
* dbeaver/pro#5553 feat: add IconCross component and update icon-related files
* dbeaver/pro#5553 feat: replace Button with IconButton in OrderButton component
* dbeaver/pro#5553 style: update foreground color variables for IconButton component
* dbeaver/pro#5553 refactor: add normalization rules to layers, use IconButton in Common DialogHeader
checked if new IconButton works well in light and dark mode by using in CommonDialogHeader
* dbeaver/pro#5553 style: format code and update dependencies in CommonDialogHeader and DataGridTable components
* dbeaver/pro#5553 style: move onColumnSort prop to correct position in DataGridTable component
* dbeaver/pro#5553 refactor: remove icons component generation, use svg sprite
* dbeaver/pro#5553 refactor: update OrderButton component and inline icons sprite in Body
we decided to go with this solution for now just adding icons to a sprite and use them by id. Imports by ?url don't work in VSCode if try to use them in <use> href, so we need to find another solution or stick to that approach.
* dbeaver/pro#5553 refactor: update column sorting and sortable logic in DataGrid components
* dbeaver/pro#5553 style: format whitespace in Body component
* dbeaver/pro#5553 feat: add new sorting icons for ascending, descending, and unsorted states
* dbeaver/pro#5553 refactor:styling for header cell and order button components
* dbeaver/pro#5553 refactor: update sorting logic in DataGrid and OrderButton components
* dbeaver/pro#5553 refactor: value deps
* dbeaver/pro#5553 feat: update sorting icons for ascending, descending, and unsorted states
* dbeaver/pro#5553 style: update aria-label and title for OrderButton component
* dbeaver/pro#5553 fix: double focus
* dbeaver/pro#5553 fix: after merge
* dbeaver/pro#5553 refactor: removed outline offset for sort button
* dbeaver/pro#5553 refactor: update Tailwind CSS import to use layer directive
---------
Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com>
Co-authored-by: Alexey <wrouds@gmail.com>
* dbeaver/pro#5745 updates frontend deps
* updates graphql-request
* updates yarn locks for common-typescript, common-react
* updates engines node version
* react-hotkeys-hook + fixes hotkeys so it continues to work
* code cleanup for parseHotKey
* uses fixed version of tailwindcss
* adds 4.0.6 versions for tailwindcss with resolutions
* reverts tailwind 4.0.6 version for yarn.lock
* removes redundant resolutions for tailwindcss
* Update readme.md with new NodeJS version
* Update README.md with correct nodejs version according to our documentation
* updates talewindcss version 4.0.7
* fix: hotkeys types
---------
Co-authored-by: Wroud <wrouds@gmail.com>
Co-authored-by: Evgenia <139753579+EvgeniaBzzz@users.noreply.github.com>
Co-authored-by: mr-anton-t <42037741+mr-anton-t@users.noreply.github.com>