diff --git a/packages/edit-site/src/components/dataviews/add-filter.js b/packages/edit-site/src/components/dataviews/add-filter.js deleted file mode 100644 index eaa6939c53f53..0000000000000 --- a/packages/edit-site/src/components/dataviews/add-filter.js +++ /dev/null @@ -1,70 +0,0 @@ -/** - * WordPress dependencies - */ -import { - privateApis as componentsPrivateApis, - Icon, - Button, -} from '@wordpress/components'; -import { chevronDown, check } from '@wordpress/icons'; -import { __ } from '@wordpress/i18n'; - -/** - * Internal dependencies - */ -import { unlock } from '../../lock-unlock'; - -const { DropdownMenuV2, DropdownMenuItemV2 } = unlock( componentsPrivateApis ); - -export default function AddFilter( { fields, filters, onChangeView } ) { - const filterableFields = fields.filter( - ( field ) => field.enableColumnFilter - ); - if ( ! filterableFields.length ) { - return null; - } - - return ( - - { __( 'Filters' ) } - - - } - > - { filterableFields.map( ( field ) => { - return ( - - ) - } - role="menuitemcheckbox" - onSelect={ ( event ) => { - event.preventDefault(); - onChangeView( ( currentView ) => { - if ( filters.hasOwnProperty( field.id ) ) { - delete currentView.filters[ field.id ]; - return { ...currentView }; - } - - return { - ...currentView, - filters: { - ...currentView.filters, - [ field.id ]: undefined, - }, - }; - } ); - } } - > - { field.header } - - ); - } ) } - - ); -} diff --git a/packages/edit-site/src/components/dataviews/dataviews.js b/packages/edit-site/src/components/dataviews/dataviews.js index 30f299dbddecd..755ce8a2ea348 100644 --- a/packages/edit-site/src/components/dataviews/dataviews.js +++ b/packages/edit-site/src/components/dataviews/dataviews.js @@ -14,8 +14,6 @@ import Pagination from './pagination'; import ViewActions from './view-actions'; import TextFilter from './text-filter'; import { ViewGrid } from './view-grid'; -import AddFilter from './add-filter'; -import FieldFilters from './field-filters'; export default function DataViews( { view, @@ -32,16 +30,6 @@ export default function DataViews( { - - - { field.header } - - - } - > - { [ - // Should providing the nullable state be the field responsibility? - { id: undefined, name: __( 'All' ) }, - ...field.setList, - ].map( ( element ) => { - if ( - ! element.hasOwnProperty( 'id' ) || - ! element.hasOwnProperty( 'name' ) - ) { - return null; - } - - return ( - - ) - } - role="menuitemcheckbox" - onSelect={ () => { - onChangeView( ( currentView ) => { - return { - ...currentView, - filters: { - ...currentView.filters, - [ field.id ]: element.id, - }, - }; - } ); - } } - > - { element.name } - - ); - } ) } - - ); -} - -export default function FieldFilters( { view, fields, onChangeView } ) { - return Object.keys( view.filters ).map( ( key ) => { - const fieldWithFilter = fields.find( - ( field ) => - field.enableColumnFilter && - field.type && // We could consider lift off this restriction and having a fallback filter (search text, for example). - field.id === key - ); - if ( ! fieldWithFilter ) { - return null; - } - - return renderFilter( { field: fieldWithFilter, view, onChangeView } ); - } ); -}