diff --git a/packages/web/src/appobj/AppObjectList.js b/packages/web/src/appobj/AppObjectList.js index cbf5ffeea..c2770646f 100644 --- a/packages/web/src/appobj/AppObjectList.js +++ b/packages/web/src/appobj/AppObjectList.js @@ -38,6 +38,7 @@ function AppObjectListItem({ SubItems, getCommonProps, expandOnClick, + ExpandIconComponent, }) { const [isExpanded, setIsExpanded] = React.useState(false); @@ -53,7 +54,7 @@ function AppObjectListItem({ prefix: SubItems ? ( {expandable ? ( - { setIsExpanded(v => !v); @@ -61,7 +62,7 @@ function AppObjectListItem({ }} /> ) : ( - + )} ) : null, @@ -119,6 +120,7 @@ export function AppObjectList({ isExpandable = undefined, getCommonProps = undefined, expandOnClick = false, + ExpandIconComponent = ExpandIcon, }) { const createComponent = data => ( ); diff --git a/packages/web/src/icons.js b/packages/web/src/icons.js index e138f836f..fac6562c7 100644 --- a/packages/web/src/icons.js +++ b/packages/web/src/icons.js @@ -54,6 +54,9 @@ const iconNames = { 'icon run': 'mdi mdi-play', 'icon chevron-down': 'mdi mdi-chevron-down', + 'icon chevron-left': 'mdi mdi-chevron-left', + 'icon chevron-right': 'mdi mdi-chevron-right', + 'icon chevron-up': 'mdi mdi-chevron-up', 'icon plugin': 'mdi mdi-toy-brick', 'img ok': 'mdi mdi-check-circle color-green-8', @@ -111,3 +114,10 @@ export function ExpandIcon({ isBlank = false, isExpanded = false, ...other }) { } return ; } + +export function ChevronExpandIcon({ isBlank = false, isExpanded = false, ...other }) { + if (isBlank) { + return ; + } + return ; +} diff --git a/packages/web/src/widgets/DatabaseWidget.js b/packages/web/src/widgets/DatabaseWidget.js index d791ac9b0..f648f10ee 100644 --- a/packages/web/src/widgets/DatabaseWidget.js +++ b/packages/web/src/widgets/DatabaseWidget.js @@ -26,6 +26,7 @@ import ToolbarButton from './ToolbarButton'; import useShowModal from '../modals/showModal'; import ConnectionModal from '../modals/ConnectionModal'; import SubColumnParamList from '../appobj/SubColumnParamList'; +import { ChevronExpandIcon } from '../icons'; function SubDatabaseList({ data }) { const setDb = useSetCurrentDatabase(); @@ -153,6 +154,7 @@ function SqlObjectList({ conid, database }) { filter={filter} SubItems={SubColumnParamList} isExpandable={data => data.objectTypeField == 'tables' || data.objectTypeField == 'views'} + ExpandIconComponent={ChevronExpandIcon} /> )}