diff --git a/frontend/src/metadata/components/popover/filter-popover/basic-filters/tags-filter.js b/frontend/src/metadata/components/popover/filter-popover/basic-filters/tags-filter.js index 74c5d0d5c5..df2f802ffa 100644 --- a/frontend/src/metadata/components/popover/filter-popover/basic-filters/tags-filter.js +++ b/frontend/src/metadata/components/popover/filter-popover/basic-filters/tags-filter.js @@ -1,4 +1,5 @@ import React, { useCallback, useMemo } from 'react'; +import { UncontrolledTooltip } from 'reactstrap'; import PropTypes from 'prop-types'; import CustomizeSelect from '../../../../../components/customize-select'; import Icon from '../../../../../components/icon'; @@ -8,11 +9,13 @@ import { useMetadataStatus } from '../../../../../hooks'; import { useTags } from '../../../../../tag/hooks'; import { getTagId, getTagName, getTagColor } from '../../../../../tag/utils/cell'; import { getRowById } from '../../../../../components/sf-table/utils/table'; +import IconBtn from '../../../../../components/icon-btn'; const TagsFilter = ({ readOnly, value: oldValue, onChange: onChangeAPI }) => { const { tagsData } = useTags(); const { enableTags } = useMetadataStatus(); + const invalidFilterTip = React.createRef(); const value = useMemo(() => { if (!enableTags) return []; @@ -79,20 +82,67 @@ const TagsFilter = ({ readOnly, value: oldValue, onChange: onChangeAPI }) => { } }, [value, onChangeAPI]); - if (!enableTags) return null; + const onDeleteFilter = useCallback((event) => { + event.nativeEvent.stopImmediatePropagation(); + onChangeAPI([]); + oldValue = []; + }, [value, onChangeAPI, oldValue]); + + + const renderErrorMessage = () => { + return ( +