diff --git a/superset-frontend/cypress-base/cypress/e2e/dashboard/horizontalFilterBar.test.ts b/superset-frontend/cypress-base/cypress/e2e/dashboard/horizontalFilterBar.test.ts index 8cbb17dcfa7..0de7b7042bd 100644 --- a/superset-frontend/cypress-base/cypress/e2e/dashboard/horizontalFilterBar.test.ts +++ b/superset-frontend/cypress-base/cypress/e2e/dashboard/horizontalFilterBar.test.ts @@ -155,7 +155,7 @@ describe('Horizontal FilterBar', () => { ]); setFilterBarOrientation('horizontal'); - cy.get('.filter-item-wrapper').should('have.length', 3); + cy.get('.filter-item-wrapper').should('have.length', 4); openMoreFilters(); cy.getBySel('form-item-value').should('have.length', 12); cy.getBySel('filter-control-name').contains('test_3').should('be.visible'); diff --git a/superset-frontend/packages/superset-ui-core/src/components/Badge/index.tsx b/superset-frontend/packages/superset-ui-core/src/components/Badge/index.tsx index 16350bfbd91..b20a05e8224 100644 --- a/superset-frontend/packages/superset-ui-core/src/components/Badge/index.tsx +++ b/superset-frontend/packages/superset-ui-core/src/components/Badge/index.tsx @@ -24,6 +24,7 @@ export const Badge = styled((props: BadgeProps) => )` ${({ theme, color, count }) => ` & > sup, & > sup.ant-badge-count { + box-shadow: none; ${ count !== undefined ? `background: ${color || theme.colorPrimary};` : '' } diff --git a/superset-frontend/packages/superset-ui-core/src/components/DropdownContainer/index.tsx b/superset-frontend/packages/superset-ui-core/src/components/DropdownContainer/index.tsx index 7fab3e498cc..fc4f1526947 100644 --- a/superset-frontend/packages/superset-ui-core/src/components/DropdownContainer/index.tsx +++ b/superset-frontend/packages/superset-ui-core/src/components/DropdownContainer/index.tsx @@ -17,10 +17,8 @@ * under the License. */ import { - CSSProperties, cloneElement, forwardRef, - ReactElement, RefObject, useEffect, useImperativeHandle, @@ -28,7 +26,6 @@ import { useMemo, useState, useRef, - ReactNode, useCallback, } from 'react'; @@ -36,77 +33,7 @@ import { Global } from '@emotion/react'; import { css, t, useTheme, usePrevious } from '@superset-ui/core'; import { useResizeDetector } from 'react-resize-detector'; import { Badge, Icons, Button, Tooltip, Popover } from '..'; -/** - * Container item. - */ -export interface DropdownItem { - /** - * String that uniquely identifies the item. - */ - id: string; - /** - * The element to be rendered. - */ - element: ReactElement; -} - -/** - * Horizontal container that displays overflowed items in a dropdown. - * It shows an indicator of how many items are currently overflowing. - */ -export interface DropdownContainerProps { - /** - * Array of items. The id property is used to uniquely identify - * the elements when rendering or dealing with event handlers. - */ - items: DropdownItem[]; - /** - * Event handler called every time an element moves between - * main container and dropdown. - */ - onOverflowingStateChange?: (overflowingState: { - notOverflowed: string[]; - overflowed: string[]; - }) => void; - /** - * Option to customize the content of the dropdown. - */ - dropdownContent?: (overflowedItems: DropdownItem[]) => ReactElement; - /** - * Dropdown ref. - */ - dropdownRef?: RefObject; - /** - * Dropdown additional style properties. - */ - dropdownStyle?: CSSProperties; - /** - * Displayed count in the dropdown trigger. - */ - dropdownTriggerCount?: number; - /** - * Icon of the dropdown trigger. - */ - dropdownTriggerIcon?: ReactElement; - /** - * Text of the dropdown trigger. - */ - dropdownTriggerText?: string; - /** - * Text of the dropdown trigger tooltip - */ - dropdownTriggerTooltip?: ReactNode | null; - /** - * Main container additional style properties. - */ - style?: CSSProperties; - /** - * Force render popover content before it's first opened - */ - forceRender?: boolean; -} - -export type DropdownRef = HTMLDivElement & { open: () => void }; +import { DropdownContainerProps, DropdownItem, DropdownRef } from './types'; const MAX_HEIGHT = 500; @@ -428,8 +355,13 @@ export const DropdownContainer = forwardRef(