@wordpress/dataviews 2.2.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +23 -8
- package/build/components/dataform/index.js +78 -0
- package/build/components/dataform/index.js.map +1 -0
- package/build/components/dataviews/index.js +115 -0
- package/build/components/dataviews/index.js.map +1 -0
- package/build/{bulk-actions.js → components/dataviews-bulk-actions/index.js} +39 -16
- package/build/components/dataviews-bulk-actions/index.js.map +1 -0
- package/build/{bulk-actions-toolbar.js → components/dataviews-bulk-actions-toolbar/index.js} +36 -20
- package/build/components/dataviews-bulk-actions-toolbar/index.js.map +1 -0
- package/build/components/dataviews-context/index.js +36 -0
- package/build/components/dataviews-context/index.js.map +1 -0
- package/build/{add-filter.js → components/dataviews-filters/add-filter.js} +3 -3
- package/build/components/dataviews-filters/add-filter.js.map +1 -0
- package/build/{filter-summary.js → components/dataviews-filters/filter-summary.js} +15 -14
- package/build/components/dataviews-filters/filter-summary.js.map +1 -0
- package/build/{filters.js → components/dataviews-filters/index.js} +15 -16
- package/build/components/dataviews-filters/index.js.map +1 -0
- package/build/{reset-filters.js → components/dataviews-filters/reset-filters.js} +1 -1
- package/build/components/dataviews-filters/reset-filters.js.map +1 -0
- package/build/{search-widget.js → components/dataviews-filters/search-widget.js} +21 -19
- package/build/components/dataviews-filters/search-widget.js.map +1 -0
- package/build/{item-actions.js → components/dataviews-item-actions/index.js} +3 -3
- package/build/components/dataviews-item-actions/index.js.map +1 -0
- package/build/components/dataviews-layout/index.js +53 -0
- package/build/components/dataviews-layout/index.js.map +1 -0
- package/build/{pagination.js → components/dataviews-pagination/index.js} +18 -15
- package/build/components/dataviews-pagination/index.js.map +1 -0
- package/build/{search.js → components/dataviews-search/index.js} +10 -6
- package/build/components/dataviews-search/index.js.map +1 -0
- package/build/components/dataviews-selection-checkbox/index.js +52 -0
- package/build/components/dataviews-selection-checkbox/index.js.map +1 -0
- package/build/{view-actions.js → components/dataviews-view-config/index.js} +94 -80
- package/build/components/dataviews-view-config/index.js.map +1 -0
- package/build/filter-and-sort-data-view.js +4 -1
- package/build/filter-and-sort-data-view.js.map +1 -1
- package/build/index.js +8 -1
- package/build/index.js.map +1 -1
- package/build/layouts/grid/density-picker.js +143 -0
- package/build/layouts/grid/density-picker.js.map +1 -0
- package/build/{view-grid.js → layouts/grid/index.js} +40 -53
- package/build/layouts/grid/index.js.map +1 -0
- package/build/layouts/index.js +52 -0
- package/build/layouts/index.js.map +1 -0
- package/build/{view-list.js → layouts/list/index.js} +31 -27
- package/build/layouts/list/index.js.map +1 -0
- package/build/layouts/table/column-header-menu.js +196 -0
- package/build/layouts/table/column-header-menu.js.map +1 -0
- package/build/layouts/table/index.js +350 -0
- package/build/layouts/table/index.js.map +1 -0
- package/build/normalize-fields.js +1 -1
- package/build/normalize-fields.js.map +1 -1
- package/build/private-types.js +6 -0
- package/build/private-types.js.map +1 -0
- package/build/types.js.map +1 -1
- package/build/utils.js.map +1 -1
- package/build-module/components/dataform/index.js +72 -0
- package/build-module/components/dataform/index.js.map +1 -0
- package/build-module/components/dataviews/index.js +108 -0
- package/build-module/components/dataviews/index.js.map +1 -0
- package/build-module/{bulk-actions.js → components/dataviews-bulk-actions/index.js} +39 -17
- package/build-module/components/dataviews-bulk-actions/index.js.map +1 -0
- package/build-module/{bulk-actions-toolbar.js → components/dataviews-bulk-actions-toolbar/index.js} +35 -20
- package/build-module/components/dataviews-bulk-actions-toolbar/index.js.map +1 -0
- package/build-module/components/dataviews-context/index.js +30 -0
- package/build-module/components/dataviews-context/index.js.map +1 -0
- package/build-module/{add-filter.js → components/dataviews-filters/add-filter.js} +3 -3
- package/build-module/components/dataviews-filters/add-filter.js.map +1 -0
- package/build-module/{filter-summary.js → components/dataviews-filters/filter-summary.js} +15 -14
- package/build-module/components/dataviews-filters/filter-summary.js.map +1 -0
- package/build-module/{filters.js → components/dataviews-filters/index.js} +16 -17
- package/build-module/components/dataviews-filters/index.js.map +1 -0
- package/build-module/{reset-filters.js → components/dataviews-filters/reset-filters.js} +1 -1
- package/build-module/components/dataviews-filters/reset-filters.js.map +1 -0
- package/build-module/{search-widget.js → components/dataviews-filters/search-widget.js} +21 -19
- package/build-module/components/dataviews-filters/search-widget.js.map +1 -0
- package/build-module/{item-actions.js → components/dataviews-item-actions/index.js} +3 -3
- package/build-module/components/dataviews-item-actions/index.js.map +1 -0
- package/build-module/components/dataviews-layout/index.js +45 -0
- package/build-module/components/dataviews-layout/index.js.map +1 -0
- package/build-module/{pagination.js → components/dataviews-pagination/index.js} +19 -17
- package/build-module/components/dataviews-pagination/index.js.map +1 -0
- package/build-module/{search.js → components/dataviews-search/index.js} +10 -7
- package/build-module/components/dataviews-search/index.js.map +1 -0
- package/build-module/components/dataviews-selection-checkbox/index.js +45 -0
- package/build-module/components/dataviews-selection-checkbox/index.js.map +1 -0
- package/build-module/{view-actions.js → components/dataviews-view-config/index.js} +98 -84
- package/build-module/components/dataviews-view-config/index.js.map +1 -0
- package/build-module/filter-and-sort-data-view.js +4 -1
- package/build-module/filter-and-sort-data-view.js.map +1 -1
- package/build-module/index.js +2 -1
- package/build-module/index.js.map +1 -1
- package/build-module/layouts/grid/density-picker.js +138 -0
- package/build-module/layouts/grid/density-picker.js.map +1 -0
- package/build-module/{view-grid.js → layouts/grid/index.js} +37 -50
- package/build-module/layouts/grid/index.js.map +1 -0
- package/build-module/layouts/index.js +43 -0
- package/build-module/layouts/index.js.map +1 -0
- package/build-module/{view-list.js → layouts/list/index.js} +29 -25
- package/build-module/layouts/list/index.js.map +1 -0
- package/build-module/layouts/table/column-header-menu.js +190 -0
- package/build-module/layouts/table/column-header-menu.js.map +1 -0
- package/build-module/layouts/table/index.js +344 -0
- package/build-module/layouts/table/index.js.map +1 -0
- package/build-module/normalize-fields.js +1 -1
- package/build-module/normalize-fields.js.map +1 -1
- package/build-module/private-types.js +2 -0
- package/build-module/private-types.js.map +1 -0
- package/build-module/types.js.map +1 -1
- package/build-module/utils.js.map +1 -1
- package/build-style/style-rtl.css +607 -561
- package/build-style/style.css +607 -561
- package/build-types/components/dataform/index.d.ts +17 -0
- package/build-types/components/dataform/index.d.ts.map +1 -0
- package/build-types/components/dataform/stories/index.story.d.ts +11 -0
- package/build-types/components/dataform/stories/index.story.d.ts.map +1 -0
- package/build-types/components/dataviews/index.d.ts +33 -0
- package/build-types/components/dataviews/index.d.ts.map +1 -0
- package/build-types/{stories → components/dataviews/stories}/fixtures.d.ts +18 -17
- package/build-types/components/dataviews/stories/fixtures.d.ts.map +1 -0
- package/build-types/components/dataviews/stories/index.story.d.ts +46 -0
- package/build-types/components/dataviews/stories/index.story.d.ts.map +1 -0
- package/build-types/components/dataviews-bulk-actions/index.d.ts +5 -0
- package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -0
- package/build-types/components/dataviews-bulk-actions-toolbar/index.d.ts +2 -0
- package/build-types/components/dataviews-bulk-actions-toolbar/index.d.ts.map +1 -0
- package/build-types/components/dataviews-context/index.d.ts +26 -0
- package/build-types/components/dataviews-context/index.d.ts.map +1 -0
- package/build-types/{add-filter.d.ts → components/dataviews-filters/add-filter.d.ts} +1 -2
- package/build-types/components/dataviews-filters/add-filter.d.ts.map +1 -0
- package/build-types/{filter-summary.d.ts → components/dataviews-filters/filter-summary.d.ts} +1 -1
- package/build-types/components/dataviews-filters/filter-summary.d.ts.map +1 -0
- package/build-types/components/dataviews-filters/index.d.ts +4 -0
- package/build-types/components/dataviews-filters/index.d.ts.map +1 -0
- package/build-types/{reset-filters.d.ts → components/dataviews-filters/reset-filters.d.ts} +1 -2
- package/build-types/components/dataviews-filters/reset-filters.d.ts.map +1 -0
- package/build-types/{search-widget.d.ts → components/dataviews-filters/search-widget.d.ts} +1 -2
- package/build-types/components/dataviews-filters/search-widget.d.ts.map +1 -0
- package/build-types/components/dataviews-item-actions/index.d.ts +35 -0
- package/build-types/components/dataviews-item-actions/index.d.ts.map +1 -0
- package/build-types/components/dataviews-layout/index.d.ts +2 -0
- package/build-types/components/dataviews-layout/index.d.ts.map +1 -0
- package/build-types/components/dataviews-pagination/index.d.ts +4 -0
- package/build-types/components/dataviews-pagination/index.d.ts.map +1 -0
- package/build-types/components/dataviews-search/index.d.ts +6 -0
- package/build-types/components/dataviews-search/index.d.ts.map +1 -0
- package/build-types/components/dataviews-selection-checkbox/index.d.ts +16 -0
- package/build-types/components/dataviews-selection-checkbox/index.d.ts.map +1 -0
- package/build-types/components/dataviews-view-config/index.d.ts +8 -0
- package/build-types/components/dataviews-view-config/index.d.ts.map +1 -0
- package/build-types/filter-and-sort-data-view.d.ts +2 -2
- package/build-types/filter-and-sort-data-view.d.ts.map +1 -1
- package/build-types/index.d.ts +2 -1
- package/build-types/index.d.ts.map +1 -1
- package/build-types/layouts/grid/density-picker.d.ts +5 -0
- package/build-types/layouts/grid/density-picker.d.ts.map +1 -0
- package/build-types/layouts/grid/index.d.ts +3 -0
- package/build-types/layouts/grid/index.d.ts.map +1 -0
- package/build-types/{layouts.d.ts → layouts/index.d.ts} +6 -5
- package/build-types/layouts/index.d.ts.map +1 -0
- package/build-types/layouts/list/index.d.ts +3 -0
- package/build-types/layouts/list/index.d.ts.map +1 -0
- package/build-types/layouts/table/column-header-menu.d.ts +17 -0
- package/build-types/layouts/table/column-header-menu.d.ts.map +1 -0
- package/build-types/layouts/table/index.d.ts +4 -0
- package/build-types/layouts/table/index.d.ts.map +1 -0
- package/build-types/normalize-fields.d.ts +2 -2
- package/build-types/normalize-fields.d.ts.map +1 -1
- package/build-types/private-types.d.ts +3 -0
- package/build-types/private-types.d.ts.map +1 -0
- package/build-types/types.d.ts +106 -46
- package/build-types/types.d.ts.map +1 -1
- package/build-types/utils.d.ts +2 -2
- package/build-types/utils.d.ts.map +1 -1
- package/package.json +10 -10
- package/src/components/dataform/index.tsx +106 -0
- package/src/components/dataform/stories/index.story.tsx +42 -0
- package/src/components/dataviews/index.tsx +149 -0
- package/src/{stories → components/dataviews/stories}/fixtures.js +23 -11
- package/src/components/dataviews/stories/index.story.js +65 -0
- package/src/components/dataviews/style.scss +97 -0
- package/src/{bulk-actions.tsx → components/dataviews-bulk-actions/index.tsx} +58 -36
- package/src/components/dataviews-bulk-actions/style.scss +7 -0
- package/src/{bulk-actions-toolbar.tsx → components/dataviews-bulk-actions-toolbar/index.tsx} +48 -36
- package/src/components/dataviews-bulk-actions-toolbar/style.scss +45 -0
- package/src/components/dataviews-context/index.ts +49 -0
- package/src/{add-filter.tsx → components/dataviews-filters/add-filter.tsx} +4 -4
- package/src/{filter-summary.tsx → components/dataviews-filters/filter-summary.tsx} +36 -22
- package/src/{filters.tsx → components/dataviews-filters/index.tsx} +11 -25
- package/src/{reset-filters.tsx → components/dataviews-filters/reset-filters.tsx} +2 -2
- package/src/{search-widget.tsx → components/dataviews-filters/search-widget.tsx} +20 -20
- package/src/components/dataviews-filters/style.scss +252 -0
- package/src/{item-actions.tsx → components/dataviews-item-actions/index.tsx} +16 -17
- package/src/components/dataviews-item-actions/style.scss +3 -0
- package/src/components/dataviews-layout/index.tsx +51 -0
- package/src/{pagination.tsx → components/dataviews-pagination/index.tsx} +15 -23
- package/src/components/dataviews-pagination/style.scss +26 -0
- package/src/{search.tsx → components/dataviews-search/index.tsx} +5 -10
- package/src/components/dataviews-selection-checkbox/index.tsx +65 -0
- package/src/components/dataviews-selection-checkbox/style.scss +14 -0
- package/src/{view-actions.tsx → components/dataviews-view-config/index.tsx} +116 -119
- package/src/filter-and-sort-data-view.ts +13 -3
- package/src/index.ts +2 -1
- package/src/layouts/grid/density-picker.tsx +136 -0
- package/src/{view-grid.tsx → layouts/grid/index.tsx} +45 -63
- package/src/layouts/grid/style.scss +140 -0
- package/src/layouts/index.ts +66 -0
- package/src/{view-list.tsx → layouts/list/index.tsx} +40 -30
- package/src/layouts/list/style.scss +189 -0
- package/src/layouts/table/column-header-menu.tsx +268 -0
- package/src/layouts/table/index.tsx +471 -0
- package/src/layouts/table/style.scss +201 -0
- package/src/normalize-fields.ts +6 -4
- package/src/private-types.tsx +2 -0
- package/src/style.scss +11 -919
- package/src/test/filter-and-sort-data-view.js +17 -2
- package/src/types.ts +113 -55
- package/src/utils.ts +2 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/build/add-filter.js.map +0 -1
- package/build/bulk-actions-toolbar.js.map +0 -1
- package/build/bulk-actions.js.map +0 -1
- package/build/dataviews.js +0 -136
- package/build/dataviews.js.map +0 -1
- package/build/filter-summary.js.map +0 -1
- package/build/filters.js.map +0 -1
- package/build/item-actions.js.map +0 -1
- package/build/layouts.js +0 -38
- package/build/layouts.js.map +0 -1
- package/build/pagination.js.map +0 -1
- package/build/reset-filters.js.map +0 -1
- package/build/search-widget.js.map +0 -1
- package/build/search.js.map +0 -1
- package/build/single-selection-checkbox.js +0 -63
- package/build/single-selection-checkbox.js.map +0 -1
- package/build/view-actions.js.map +0 -1
- package/build/view-grid.js.map +0 -1
- package/build/view-list.js.map +0 -1
- package/build/view-table.js +0 -409
- package/build/view-table.js.map +0 -1
- package/build-module/add-filter.js.map +0 -1
- package/build-module/bulk-actions-toolbar.js.map +0 -1
- package/build-module/bulk-actions.js.map +0 -1
- package/build-module/dataviews.js +0 -129
- package/build-module/dataviews.js.map +0 -1
- package/build-module/filter-summary.js.map +0 -1
- package/build-module/filters.js.map +0 -1
- package/build-module/item-actions.js.map +0 -1
- package/build-module/layouts.js +0 -30
- package/build-module/layouts.js.map +0 -1
- package/build-module/pagination.js.map +0 -1
- package/build-module/reset-filters.js.map +0 -1
- package/build-module/search-widget.js.map +0 -1
- package/build-module/search.js.map +0 -1
- package/build-module/single-selection-checkbox.js +0 -56
- package/build-module/single-selection-checkbox.js.map +0 -1
- package/build-module/view-actions.js.map +0 -1
- package/build-module/view-grid.js.map +0 -1
- package/build-module/view-list.js.map +0 -1
- package/build-module/view-table.js +0 -402
- package/build-module/view-table.js.map +0 -1
- package/build-types/add-filter.d.ts.map +0 -1
- package/build-types/bulk-actions-toolbar.d.ts +0 -12
- package/build-types/bulk-actions-toolbar.d.ts.map +0 -1
- package/build-types/bulk-actions.d.ts +0 -14
- package/build-types/bulk-actions.d.ts.map +0 -1
- package/build-types/dataviews.d.ts +0 -24
- package/build-types/dataviews.d.ts.map +0 -1
- package/build-types/filter-summary.d.ts.map +0 -1
- package/build-types/filters.d.ts +0 -13
- package/build-types/filters.d.ts.map +0 -1
- package/build-types/item-actions.d.ts +0 -35
- package/build-types/item-actions.d.ts.map +0 -1
- package/build-types/layouts.d.ts.map +0 -1
- package/build-types/pagination.d.ts +0 -16
- package/build-types/pagination.d.ts.map +0 -1
- package/build-types/reset-filters.d.ts.map +0 -1
- package/build-types/search-widget.d.ts.map +0 -1
- package/build-types/search.d.ts +0 -13
- package/build-types/search.d.ts.map +0 -1
- package/build-types/single-selection-checkbox.d.ts +0 -17
- package/build-types/single-selection-checkbox.d.ts.map +0 -1
- package/build-types/stories/fixtures.d.ts.map +0 -1
- package/build-types/stories/index.story.d.ts +0 -15
- package/build-types/stories/index.story.d.ts.map +0 -1
- package/build-types/view-actions.d.ts +0 -12
- package/build-types/view-actions.d.ts.map +0 -1
- package/build-types/view-grid.d.ts +0 -4
- package/build-types/view-grid.d.ts.map +0 -1
- package/build-types/view-list.d.ts +0 -4
- package/build-types/view-list.d.ts.map +0 -1
- package/build-types/view-table.d.ts +0 -5
- package/build-types/view-table.d.ts.map +0 -1
- package/src/dataviews.tsx +0 -189
- package/src/layouts.ts +0 -39
- package/src/single-selection-checkbox.tsx +0 -80
- package/src/stories/index.story.js +0 -64
- package/src/view-table.tsx +0 -603
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_components","require","_element","_i18n","_icons","_compose","_data","_dataviewsBulkActions","_dataviewsContext","_interopRequireDefault","_dataviewsItemActions","_constants","_jsxRuntime","SNACKBAR_VARIANTS","init","bottom","open","transition","type","duration","ease","exit","opacity","ActionTrigger","action","onClick","isBusy","items","label","jsx","ToolbarButton","disabled","icon","isDestructive","size","tooltipPosition","EMPTY_ARRAY","ActionButton","selectedItems","actionInProgress","setActionInProgress","registry","useRegistry","selectedEligibleItems","useMemo","filter","item","isEligible","ActionWithModal","id","callback","renderToolbarContent","selection","actionsToShow","onChangeSelection","jsxs","Fragment","children","ToolbarGroup","className","length","__","sprintf","_n","map","closeSmall","showTooltip","ToolbarContent","useState","buttons","useRef","current","_BulkActionsToolbar","data","actions","getItemId","useContext","DataViewsContext","isReducedMotion","useReducedMotion","includes","supportsBulk","some","__unstableAnimatePresence","__unstableMotion","div","layout","initial","animate","variants","undefined","Toolbar","BulkActionsToolbar","view","hasPossibleBulkAction","useSomeItemHasAPossibleBulkAction","LAYOUT_TABLE","LAYOUT_GRID"],"sources":["@wordpress/dataviews/src/components/dataviews-bulk-actions-toolbar/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tToolbarButton,\n\tToolbar,\n\tToolbarGroup,\n\t__unstableMotion as motion,\n\t__unstableAnimatePresence as AnimatePresence,\n} from '@wordpress/components';\nimport { useMemo, useState, useRef, useContext } from '@wordpress/element';\nimport { _n, sprintf, __ } from '@wordpress/i18n';\nimport { closeSmall } from '@wordpress/icons';\nimport { useReducedMotion } from '@wordpress/compose';\nimport { useRegistry } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { useSomeItemHasAPossibleBulkAction } from '../dataviews-bulk-actions';\nimport DataViewsContext from '../dataviews-context';\nimport { ActionWithModal } from '../dataviews-item-actions';\nimport { LAYOUT_GRID, LAYOUT_TABLE } from '../../constants';\nimport type { Action } from '../../types';\nimport type { ActionTriggerProps } from '../dataviews-item-actions';\nimport type { SetSelection } from '../../private-types';\n\ninterface ActionButtonProps< Item > {\n\taction: Action< Item >;\n\tselectedItems: Item[];\n\tactionInProgress: string | null;\n\tsetActionInProgress: ( actionId: string | null ) => void;\n}\n\ninterface ToolbarContentProps< Item > {\n\tselection: string[];\n\tactionsToShow: Action< Item >[];\n\tselectedItems: Item[];\n\tonChangeSelection: SetSelection;\n}\n\nconst SNACKBAR_VARIANTS = {\n\tinit: {\n\t\tbottom: -48,\n\t},\n\topen: {\n\t\tbottom: 24,\n\t\ttransition: {\n\t\t\tbottom: { type: 'tween', duration: 0.2, ease: [ 0, 0, 0.2, 1 ] },\n\t\t},\n\t},\n\texit: {\n\t\topacity: 0,\n\t\tbottom: 24,\n\t\ttransition: {\n\t\t\topacity: { type: 'tween', duration: 0.2, ease: [ 0, 0, 0.2, 1 ] },\n\t\t},\n\t},\n};\n\nfunction ActionTrigger< Item >( {\n\taction,\n\tonClick,\n\tisBusy,\n\titems,\n}: ActionTriggerProps< Item > ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<ToolbarButton\n\t\t\tdisabled={ isBusy }\n\t\t\tlabel={ label }\n\t\t\ticon={ action.icon }\n\t\t\tisDestructive={ action.isDestructive }\n\t\t\tsize=\"compact\"\n\t\t\tonClick={ onClick }\n\t\t\tisBusy={ isBusy }\n\t\t\ttooltipPosition=\"top\"\n\t\t/>\n\t);\n}\n\nconst EMPTY_ARRAY: [] = [];\n\nfunction ActionButton< Item >( {\n\taction,\n\tselectedItems,\n\tactionInProgress,\n\tsetActionInProgress,\n}: ActionButtonProps< Item > ) {\n\tconst registry = useRegistry();\n\tconst selectedEligibleItems = useMemo( () => {\n\t\treturn selectedItems.filter( ( item ) => {\n\t\t\treturn ! action.isEligible || action.isEligible( item );\n\t\t} );\n\t}, [ action, selectedItems ] );\n\tif ( 'RenderModal' in action ) {\n\t\treturn (\n\t\t\t<ActionWithModal\n\t\t\t\tkey={ action.id }\n\t\t\t\taction={ action }\n\t\t\t\titems={ selectedEligibleItems }\n\t\t\t\tActionTrigger={ ActionTrigger }\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<ActionTrigger\n\t\t\tkey={ action.id }\n\t\t\taction={ action }\n\t\t\tonClick={ () => {\n\t\t\t\tsetActionInProgress( action.id );\n\t\t\t\taction.callback( selectedItems, {\n\t\t\t\t\tregistry,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\titems={ selectedEligibleItems }\n\t\t\tisBusy={ actionInProgress === action.id }\n\t\t/>\n\t);\n}\n\nfunction renderToolbarContent< Item >(\n\tselection: string[],\n\tactionsToShow: Action< Item >[],\n\tselectedItems: Item[],\n\tactionInProgress: string | null,\n\tsetActionInProgress: ( actionId: string | null ) => void,\n\tonChangeSelection: SetSelection\n) {\n\treturn (\n\t\t<>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<div className=\"dataviews-bulk-actions-toolbar__selection-count\">\n\t\t\t\t\t{ selection.length === 1\n\t\t\t\t\t\t? __( '1 item selected' )\n\t\t\t\t\t\t: sprintf(\n\t\t\t\t\t\t\t\t// translators: %s: Total number of selected items.\n\t\t\t\t\t\t\t\t_n(\n\t\t\t\t\t\t\t\t\t'%s item selected',\n\t\t\t\t\t\t\t\t\t'%s items selected',\n\t\t\t\t\t\t\t\t\tselection.length\n\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\tselection.length\n\t\t\t\t\t\t ) }\n\t\t\t\t</div>\n\t\t\t</ToolbarGroup>\n\t\t\t<ToolbarGroup>\n\t\t\t\t{ actionsToShow.map( ( action ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionButton\n\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\tselectedItems={ selectedItems }\n\t\t\t\t\t\t\tactionInProgress={ actionInProgress }\n\t\t\t\t\t\t\tsetActionInProgress={ setActionInProgress }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t</ToolbarGroup>\n\t\t\t<ToolbarGroup>\n\t\t\t\t<ToolbarButton\n\t\t\t\t\ticon={ closeSmall }\n\t\t\t\t\tshowTooltip\n\t\t\t\t\ttooltipPosition=\"top\"\n\t\t\t\t\tlabel={ __( 'Cancel' ) }\n\t\t\t\t\tdisabled={ !! actionInProgress }\n\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\tonChangeSelection( EMPTY_ARRAY );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</ToolbarGroup>\n\t\t</>\n\t);\n}\n\nfunction ToolbarContent< Item >( {\n\tselection,\n\tactionsToShow,\n\tselectedItems,\n\tonChangeSelection,\n}: ToolbarContentProps< Item > ) {\n\tconst [ actionInProgress, setActionInProgress ] = useState< string | null >(\n\t\tnull\n\t);\n\tconst buttons = useRef< JSX.Element | null >( null );\n\tif ( ! actionInProgress ) {\n\t\tif ( buttons.current ) {\n\t\t\tbuttons.current = null;\n\t\t}\n\t\treturn renderToolbarContent(\n\t\t\tselection,\n\t\t\tactionsToShow,\n\t\t\tselectedItems,\n\t\t\tactionInProgress,\n\t\t\tsetActionInProgress,\n\t\t\tonChangeSelection\n\t\t);\n\t} else if ( ! buttons.current ) {\n\t\tbuttons.current = renderToolbarContent(\n\t\t\tselection,\n\t\t\tactionsToShow,\n\t\t\tselectedItems,\n\t\t\tactionInProgress,\n\t\t\tsetActionInProgress,\n\t\t\tonChangeSelection\n\t\t);\n\t}\n\treturn buttons.current;\n}\n\nfunction _BulkActionsToolbar() {\n\tconst {\n\t\tdata,\n\t\tselection,\n\t\tactions = EMPTY_ARRAY,\n\t\tonChangeSelection,\n\t\tgetItemId,\n\t} = useContext( DataViewsContext );\n\tconst isReducedMotion = useReducedMotion();\n\tconst selectedItems = useMemo( () => {\n\t\treturn data.filter( ( item ) =>\n\t\t\tselection.includes( getItemId( item ) )\n\t\t);\n\t}, [ selection, data, getItemId ] );\n\n\tconst actionsToShow = useMemo(\n\t\t() =>\n\t\t\tactions.filter( ( action ) => {\n\t\t\t\treturn (\n\t\t\t\t\taction.supportsBulk &&\n\t\t\t\t\taction.icon &&\n\t\t\t\t\tselectedItems.some(\n\t\t\t\t\t\t( item ) =>\n\t\t\t\t\t\t\t! action.isEligible || action.isEligible( item )\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} ),\n\t\t[ actions, selectedItems ]\n\t);\n\n\tif (\n\t\t( selection && selection.length === 0 ) ||\n\t\tactionsToShow.length === 0\n\t) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<AnimatePresence>\n\t\t\t<motion.div\n\t\t\t\tlayout={ ! isReducedMotion } // See https://www.framer.com/docs/animation/#layout-animations\n\t\t\t\tinitial=\"init\"\n\t\t\t\tanimate=\"open\"\n\t\t\t\texit=\"exit\"\n\t\t\t\tvariants={ isReducedMotion ? undefined : SNACKBAR_VARIANTS }\n\t\t\t\tclassName=\"dataviews-bulk-actions-toolbar\"\n\t\t\t>\n\t\t\t\t<Toolbar label={ __( 'Bulk actions' ) }>\n\t\t\t\t\t<div className=\"dataviews-bulk-actions-toolbar__wrapper\">\n\t\t\t\t\t\t<ToolbarContent\n\t\t\t\t\t\t\tselection={ selection }\n\t\t\t\t\t\t\tactionsToShow={ actionsToShow }\n\t\t\t\t\t\t\tselectedItems={ selectedItems }\n\t\t\t\t\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</Toolbar>\n\t\t\t</motion.div>\n\t\t</AnimatePresence>\n\t);\n}\n\nexport default function BulkActionsToolbar() {\n\tconst { data, actions = [], view } = useContext( DataViewsContext );\n\tconst hasPossibleBulkAction = useSomeItemHasAPossibleBulkAction(\n\t\tactions,\n\t\tdata\n\t);\n\tif (\n\t\t! [ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) ||\n\t\t! hasPossibleBulkAction\n\t) {\n\t\treturn null;\n\t}\n\n\treturn <_BulkActionsToolbar />;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _element = require("@wordpress/element");
|
|
8
|
+
var _constants = require("../../constants");
|
|
9
|
+
/**
|
|
10
|
+
* WordPress dependencies
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Internal dependencies
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
const DataViewsContext = (0, _element.createContext)({
|
|
18
|
+
view: {
|
|
19
|
+
type: _constants.LAYOUT_TABLE
|
|
20
|
+
},
|
|
21
|
+
onChangeView: () => {},
|
|
22
|
+
fields: [],
|
|
23
|
+
data: [],
|
|
24
|
+
paginationInfo: {
|
|
25
|
+
totalItems: 0,
|
|
26
|
+
totalPages: 0
|
|
27
|
+
},
|
|
28
|
+
selection: [],
|
|
29
|
+
onChangeSelection: () => {},
|
|
30
|
+
setOpenedFilter: () => {},
|
|
31
|
+
openedFilter: null,
|
|
32
|
+
getItemId: item => item.id,
|
|
33
|
+
density: 0
|
|
34
|
+
});
|
|
35
|
+
var _default = exports.default = DataViewsContext;
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_element","require","_constants","DataViewsContext","createContext","view","type","LAYOUT_TABLE","onChangeView","fields","data","paginationInfo","totalItems","totalPages","selection","onChangeSelection","setOpenedFilter","openedFilter","getItemId","item","id","density","_default","exports","default"],"sources":["@wordpress/dataviews/src/components/dataviews-context/index.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { View, Action, NormalizedField } from '../../types';\nimport type { SetSelection } from '../../private-types';\nimport { LAYOUT_TABLE } from '../../constants';\n\ntype DataViewsContextType< Item > = {\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n\tfields: NormalizedField< Item >[];\n\tactions?: Action< Item >[];\n\tdata: Item[];\n\tisLoading?: boolean;\n\tpaginationInfo: {\n\t\ttotalItems: number;\n\t\ttotalPages: number;\n\t};\n\tselection: string[];\n\tonChangeSelection: SetSelection;\n\topenedFilter: string | null;\n\tsetOpenedFilter: ( openedFilter: string | null ) => void;\n\tgetItemId: ( item: Item ) => string;\n\tdensity: number;\n};\n\nconst DataViewsContext = createContext< DataViewsContextType< any > >( {\n\tview: { type: LAYOUT_TABLE },\n\tonChangeView: () => {},\n\tfields: [],\n\tdata: [],\n\tpaginationInfo: {\n\t\ttotalItems: 0,\n\t\ttotalPages: 0,\n\t},\n\tselection: [],\n\tonChangeSelection: () => {},\n\tsetOpenedFilter: () => {},\n\topenedFilter: null,\n\tgetItemId: ( item ) => item.id,\n\tdensity: 0,\n} );\n\nexport default DataViewsContext;\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AAOA,IAAAC,UAAA,GAAAD,OAAA;AAVA;AACA;AACA;;AAGA;AACA;AACA;;AAwBA,MAAME,gBAAgB,GAAG,IAAAC,sBAAa,EAAiC;EACtEC,IAAI,EAAE;IAAEC,IAAI,EAAEC;EAAa,CAAC;EAC5BC,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;EACtBC,MAAM,EAAE,EAAE;EACVC,IAAI,EAAE,EAAE;EACRC,cAAc,EAAE;IACfC,UAAU,EAAE,CAAC;IACbC,UAAU,EAAE;EACb,CAAC;EACDC,SAAS,EAAE,EAAE;EACbC,iBAAiB,EAAEA,CAAA,KAAM,CAAC,CAAC;EAC3BC,eAAe,EAAEA,CAAA,KAAM,CAAC,CAAC;EACzBC,YAAY,EAAE,IAAI;EAClBC,SAAS,EAAIC,IAAI,IAAMA,IAAI,CAACC,EAAE;EAC9BC,OAAO,EAAE;AACV,CAAE,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEWrB,gBAAgB","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _components = require("@wordpress/components");
|
|
8
8
|
var _i18n = require("@wordpress/i18n");
|
|
9
9
|
var _element = require("@wordpress/element");
|
|
10
|
-
var _lockUnlock = require("
|
|
10
|
+
var _lockUnlock = require("../../lock-unlock");
|
|
11
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
12
|
/**
|
|
13
13
|
* External dependencies
|
|
@@ -40,9 +40,9 @@ function AddFilter({
|
|
|
40
40
|
const inactiveFilters = filters.filter(filter => !filter.isVisible);
|
|
41
41
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(DropdownMenu, {
|
|
42
42
|
trigger: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
43
|
-
|
|
43
|
+
accessibleWhenDisabled: true,
|
|
44
44
|
size: "compact",
|
|
45
|
-
className: "dataviews-
|
|
45
|
+
className: "dataviews-filters__button",
|
|
46
46
|
variant: "tertiary",
|
|
47
47
|
disabled: !inactiveFilters.length,
|
|
48
48
|
ref: ref,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_element","_lockUnlock","_jsxRuntime","DropdownMenuV2","DropdownMenu","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","unlock","componentsPrivateApis","AddFilter","filters","view","onChangeView","setOpenedFilter","ref","length","every","isPrimary","inactiveFilters","filter","isVisible","jsx","trigger","Button","accessibleWhenDisabled","size","className","variant","disabled","children","__","map","onClick","field","page","value","undefined","operator","operators","name","_default","exports","default","forwardRef"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/add-filter.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { Ref } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { forwardRef } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport type { NormalizedFilter, View } from '../../types';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n} = unlock( componentsPrivateApis );\n\ninterface AddFilterProps {\n\tfilters: NormalizedFilter[];\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n\tsetOpenedFilter: ( filter: string | null ) => void;\n}\n\nfunction AddFilter(\n\t{ filters, view, onChangeView, setOpenedFilter }: AddFilterProps,\n\tref: Ref< HTMLButtonElement >\n) {\n\tif ( ! filters.length || filters.every( ( { isPrimary } ) => isPrimary ) ) {\n\t\treturn null;\n\t}\n\tconst inactiveFilters = filters.filter( ( filter ) => ! filter.isVisible );\n\treturn (\n\t\t<DropdownMenu\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\taccessibleWhenDisabled\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\tclassName=\"dataviews-filters__button\"\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tdisabled={ ! inactiveFilters.length }\n\t\t\t\t\tref={ ref }\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add filter' ) }\n\t\t\t\t</Button>\n\t\t\t}\n\t\t>\n\t\t\t{ inactiveFilters.map( ( filter ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\tsetOpenedFilter( filter.field );\n\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\tfilters: [\n\t\t\t\t\t\t\t\t\t...( view.filters || [] ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\tvalue: undefined,\n\t\t\t\t\t\t\t\t\t\toperator: filter.operators[ 0 ],\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t<DropdownMenuItemLabel>\n\t\t\t\t\t\t\t{ filter.name }\n\t\t\t\t\t\t</DropdownMenuItemLabel>\n\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenu>\n\t);\n}\n\nexport default forwardRef( AddFilter );\n"],"mappings":";;;;;;AAQA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAKA,IAAAG,WAAA,GAAAH,OAAA;AAA2C,IAAAI,WAAA,GAAAJ,OAAA;AAlB3C;AACA;AACA;;AAGA;AACA;AACA;;AAQA;AACA;AACA;;AAIA,MAAM;EACLK,cAAc,EAAEC,YAAY;EAC5BC,kBAAkB,EAAEC,gBAAgB;EACpCC,uBAAuB,EAAEC;AAC1B,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AASnC,SAASC,SAASA,CACjB;EAAEC,OAAO;EAAEC,IAAI;EAAEC,YAAY;EAAEC;AAAgC,CAAC,EAChEC,GAA6B,EAC5B;EACD,IAAK,CAAEJ,OAAO,CAACK,MAAM,IAAIL,OAAO,CAACM,KAAK,CAAE,CAAE;IAAEC;EAAU,CAAC,KAAMA,SAAU,CAAC,EAAG;IAC1E,OAAO,IAAI;EACZ;EACA,MAAMC,eAAe,GAAGR,OAAO,CAACS,MAAM,CAAIA,MAAM,IAAM,CAAEA,MAAM,CAACC,SAAU,CAAC;EAC1E,oBACC,IAAApB,WAAA,CAAAqB,GAAA,EAACnB,YAAY;IACZoB,OAAO,eACN,IAAAtB,WAAA,CAAAqB,GAAA,EAAC1B,WAAA,CAAA4B,MAAM;MACNC,sBAAsB;MACtBC,IAAI,EAAC,SAAS;MACdC,SAAS,EAAC,2BAA2B;MACrCC,OAAO,EAAC,UAAU;MAClBC,QAAQ,EAAG,CAAEV,eAAe,CAACH,MAAQ;MACrCD,GAAG,EAAGA,GAAK;MAAAe,QAAA,EAET,IAAAC,QAAE,EAAE,YAAa;IAAC,CACb,CACR;IAAAD,QAAA,EAECX,eAAe,CAACa,GAAG,CAAIZ,MAAM,IAAM;MACpC,oBACC,IAAAnB,WAAA,CAAAqB,GAAA,EAACjB,gBAAgB;QAEhB4B,OAAO,EAAGA,CAAA,KAAM;UACfnB,eAAe,CAAEM,MAAM,CAACc,KAAM,CAAC;UAC/BrB,YAAY,CAAE;YACb,GAAGD,IAAI;YACPuB,IAAI,EAAE,CAAC;YACPxB,OAAO,EAAE,CACR,IAAKC,IAAI,CAACD,OAAO,IAAI,EAAE,CAAE,EACzB;cACCuB,KAAK,EAAEd,MAAM,CAACc,KAAK;cACnBE,KAAK,EAAEC,SAAS;cAChBC,QAAQ,EAAElB,MAAM,CAACmB,SAAS,CAAE,CAAC;YAC9B,CAAC;UAEH,CAAE,CAAC;QACJ,CAAG;QAAAT,QAAA,eAEH,IAAA7B,WAAA,CAAAqB,GAAA,EAACf,qBAAqB;UAAAuB,QAAA,EACnBV,MAAM,CAACoB;QAAI,CACS;MAAC,GAnBlBpB,MAAM,CAACc,KAoBI,CAAC;IAErB,CAAE;EAAC,CACU,CAAC;AAEjB;AAAC,IAAAO,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEc,IAAAC,mBAAU,EAAElC,SAAU,CAAC","ignoreList":[]}
|
|
@@ -11,7 +11,7 @@ var _i18n = require("@wordpress/i18n");
|
|
|
11
11
|
var _element = require("@wordpress/element");
|
|
12
12
|
var _icons = require("@wordpress/icons");
|
|
13
13
|
var _searchWidget = _interopRequireDefault(require("./search-widget"));
|
|
14
|
-
var _constants = require("
|
|
14
|
+
var _constants = require("../../constants");
|
|
15
15
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
16
|
/**
|
|
17
17
|
* External dependencies
|
|
@@ -38,10 +38,10 @@ const FilterText = ({
|
|
|
38
38
|
}
|
|
39
39
|
const filterTextWrappers = {
|
|
40
40
|
Name: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
41
|
-
className: "dataviews-filter-
|
|
41
|
+
className: "dataviews-filters__summary-filter-text-name"
|
|
42
42
|
}),
|
|
43
43
|
Value: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
44
|
-
className: "dataviews-filter-
|
|
44
|
+
className: "dataviews-filters__summary-filter-text-value"
|
|
45
45
|
})
|
|
46
46
|
};
|
|
47
47
|
if (filterInView?.operator === _constants.OPERATOR_IS_ANY) {
|
|
@@ -80,22 +80,23 @@ function OperatorSelector({
|
|
|
80
80
|
value: operator,
|
|
81
81
|
label: _constants.OPERATORS[operator]?.label
|
|
82
82
|
}));
|
|
83
|
-
const currentFilter = view.filters
|
|
83
|
+
const currentFilter = view.filters?.find(_filter => _filter.field === filter.field);
|
|
84
84
|
const value = currentFilter?.operator || filter.operators[0];
|
|
85
85
|
return operatorOptions.length > 1 && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_components.__experimentalHStack, {
|
|
86
86
|
spacing: 2,
|
|
87
87
|
justify: "flex-start",
|
|
88
|
-
className: "dataviews-
|
|
88
|
+
className: "dataviews-filters__summary-operators-container",
|
|
89
89
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.FlexItem, {
|
|
90
|
-
className: "dataviews-
|
|
90
|
+
className: "dataviews-filters__summary-operators-filter-name",
|
|
91
91
|
children: filter.name
|
|
92
92
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SelectControl, {
|
|
93
93
|
label: (0, _i18n.__)('Conditions'),
|
|
94
94
|
value: value,
|
|
95
95
|
options: operatorOptions,
|
|
96
96
|
onChange: newValue => {
|
|
97
|
+
var _view$filters, _view$filters2;
|
|
97
98
|
const operator = newValue;
|
|
98
|
-
const newFilters = currentFilter ? [...view.filters.map(_filter => {
|
|
99
|
+
const newFilters = currentFilter ? [...((_view$filters = view.filters) !== null && _view$filters !== void 0 ? _view$filters : []).map(_filter => {
|
|
99
100
|
if (_filter.field === filter.field) {
|
|
100
101
|
return {
|
|
101
102
|
..._filter,
|
|
@@ -103,7 +104,7 @@ function OperatorSelector({
|
|
|
103
104
|
};
|
|
104
105
|
}
|
|
105
106
|
return _filter;
|
|
106
|
-
})] : [...view.filters, {
|
|
107
|
+
})] : [...((_view$filters2 = view.filters) !== null && _view$filters2 !== void 0 ? _view$filters2 : []), {
|
|
107
108
|
field: filter.field,
|
|
108
109
|
operator,
|
|
109
110
|
value: undefined
|
|
@@ -131,7 +132,7 @@ function FilterSummary({
|
|
|
131
132
|
view,
|
|
132
133
|
onChangeView
|
|
133
134
|
} = commonProps;
|
|
134
|
-
const filterInView = view.filters
|
|
135
|
+
const filterInView = view.filters?.find(f => f.field === filter.field);
|
|
135
136
|
const activeElements = filter.elements.filter(element => {
|
|
136
137
|
if (filter.singleSelection) {
|
|
137
138
|
return element.value === filterInView?.value;
|
|
@@ -143,7 +144,7 @@ function FilterSummary({
|
|
|
143
144
|
const canResetOrRemove = !isPrimary || hasValues;
|
|
144
145
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Dropdown, {
|
|
145
146
|
defaultOpen: openedFilter === filter.field,
|
|
146
|
-
contentClassName: "dataviews-
|
|
147
|
+
contentClassName: "dataviews-filters__summary-popover",
|
|
147
148
|
popoverProps: {
|
|
148
149
|
placement: 'bottom-start',
|
|
149
150
|
role: 'dialog'
|
|
@@ -155,13 +156,13 @@ function FilterSummary({
|
|
|
155
156
|
isOpen,
|
|
156
157
|
onToggle
|
|
157
158
|
}) => /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
158
|
-
className: "dataviews-
|
|
159
|
+
className: "dataviews-filters__summary-chip-container",
|
|
159
160
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Tooltip, {
|
|
160
161
|
text: (0, _i18n.sprintf)( /* translators: 1: Filter name. */
|
|
161
162
|
(0, _i18n.__)('Filter by: %1$s'), filter.name.toLowerCase()),
|
|
162
163
|
placement: "top",
|
|
163
164
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
164
|
-
className: (0, _clsx.default)('dataviews-
|
|
165
|
+
className: (0, _clsx.default)('dataviews-filters__summary-chip', {
|
|
165
166
|
'has-reset': canResetOrRemove,
|
|
166
167
|
'has-values': hasValues
|
|
167
168
|
}),
|
|
@@ -187,14 +188,14 @@ function FilterSummary({
|
|
|
187
188
|
text: isPrimary ? (0, _i18n.__)('Reset') : (0, _i18n.__)('Remove'),
|
|
188
189
|
placement: "top",
|
|
189
190
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
|
|
190
|
-
className: (0, _clsx.default)('dataviews-
|
|
191
|
+
className: (0, _clsx.default)('dataviews-filters__summary-chip-remove', {
|
|
191
192
|
'has-values': hasValues
|
|
192
193
|
}),
|
|
193
194
|
onClick: () => {
|
|
194
195
|
onChangeView({
|
|
195
196
|
...view,
|
|
196
197
|
page: 1,
|
|
197
|
-
filters: view.filters
|
|
198
|
+
filters: view.filters?.filter(_filter => _filter.field !== filter.field)
|
|
198
199
|
});
|
|
199
200
|
// If the filter is not primary and can be removed, it will be added
|
|
200
201
|
// back to the available filters from `Add filter` component.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_clsx","_interopRequireDefault","require","_components","_i18n","_element","_icons","_searchWidget","_constants","_jsxRuntime","ENTER","SPACE","FilterText","activeElements","filterInView","filter","undefined","length","name","filterTextWrappers","Name","jsx","className","Value","operator","OPERATOR_IS_ANY","createInterpolateElement","sprintf","__","map","element","label","join","OPERATOR_IS_NONE","OPERATOR_IS_ALL","OPERATOR_IS_NOT_ALL","OPERATOR_IS","OPERATOR_IS_NOT","OperatorSelector","view","onChangeView","operatorOptions","operators","value","OPERATORS","currentFilter","filters","find","_filter","field","jsxs","__experimentalHStack","spacing","justify","children","FlexItem","SelectControl","options","onChange","newValue","_view$filters","_view$filters2","newFilters","page","size","__nextHasNoMarginBottom","hideLabelFromVision","FilterSummary","addFilterRef","openedFilter","commonProps","toggleRef","useRef","f","elements","singleSelection","includes","isPrimary","hasValues","canResetOrRemove","Dropdown","defaultOpen","contentClassName","popoverProps","placement","role","onClose","current","focus","renderToggle","isOpen","onToggle","Tooltip","text","toLowerCase","clsx","tabIndex","onClick","onKeyDown","event","key","preventDefault","ref","Icon","icon","closeSmall","renderContent","__experimentalVStack","default"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/filter-summary.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\nimport type { RefObject } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tDropdown,\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n\tFlexItem,\n\tSelectControl,\n\tTooltip,\n\tIcon,\n} from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useRef, createInterpolateElement } from '@wordpress/element';\nimport { closeSmall } from '@wordpress/icons';\n\nconst ENTER = 'Enter';\nconst SPACE = ' ';\n\n/**\n * Internal dependencies\n */\nimport SearchWidget from './search-widget';\nimport {\n\tOPERATORS,\n\tOPERATOR_IS,\n\tOPERATOR_IS_NOT,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n\tOPERATOR_IS_ALL,\n\tOPERATOR_IS_NOT_ALL,\n} from '../../constants';\nimport type {\n\tFilter,\n\tNormalizedFilter,\n\tOperator,\n\tOption,\n\tView,\n} from '../../types';\n\ninterface FilterTextProps {\n\tactiveElements: Option[];\n\tfilterInView?: Filter;\n\tfilter: NormalizedFilter;\n}\n\ninterface OperatorSelectorProps {\n\tfilter: NormalizedFilter;\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n}\n\ninterface FilterSummaryProps extends OperatorSelectorProps {\n\taddFilterRef: RefObject< HTMLButtonElement >;\n\topenedFilter: string | null;\n}\n\nconst FilterText = ( {\n\tactiveElements,\n\tfilterInView,\n\tfilter,\n}: FilterTextProps ) => {\n\tif ( activeElements === undefined || activeElements.length === 0 ) {\n\t\treturn filter.name;\n\t}\n\n\tconst filterTextWrappers = {\n\t\tName: <span className=\"dataviews-filters__summary-filter-text-name\" />,\n\t\tValue: (\n\t\t\t<span className=\"dataviews-filters__summary-filter-text-value\" />\n\t\t),\n\t};\n\n\tif ( filterInView?.operator === OPERATOR_IS_ANY ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is any: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is any: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NONE ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is none: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is none: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT_ALL ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is not all: Admin, Editor\". */\n\t\t\t\t__( '<Name>%1$s is not all: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements.map( ( element ) => element.label ).join( ', ' )\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is: Admin\". */\n\t\t\t\t__( '<Name>%1$s is: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\tif ( filterInView?.operator === OPERATOR_IS_NOT ) {\n\t\treturn createInterpolateElement(\n\t\t\tsprintf(\n\t\t\t\t/* translators: 1: Filter name. 3: Filter value. e.g.: \"Author is not: Admin\". */\n\t\t\t\t__( '<Name>%1$s is not: </Name><Value>%2$s</Value>' ),\n\t\t\t\tfilter.name,\n\t\t\t\tactiveElements[ 0 ].label\n\t\t\t),\n\t\t\tfilterTextWrappers\n\t\t);\n\t}\n\n\treturn sprintf(\n\t\t/* translators: 1: Filter name e.g.: \"Unknown status for Author\". */\n\t\t__( 'Unknown status for %1$s' ),\n\t\tfilter.name\n\t);\n};\n\nfunction OperatorSelector( {\n\tfilter,\n\tview,\n\tonChangeView,\n}: OperatorSelectorProps ) {\n\tconst operatorOptions = filter.operators?.map( ( operator ) => ( {\n\t\tvalue: operator,\n\t\tlabel: OPERATORS[ operator ]?.label,\n\t} ) );\n\tconst currentFilter = view.filters?.find(\n\t\t( _filter ) => _filter.field === filter.field\n\t);\n\tconst value = currentFilter?.operator || filter.operators[ 0 ];\n\treturn (\n\t\toperatorOptions.length > 1 && (\n\t\t\t<HStack\n\t\t\t\tspacing={ 2 }\n\t\t\t\tjustify=\"flex-start\"\n\t\t\t\tclassName=\"dataviews-filters__summary-operators-container\"\n\t\t\t>\n\t\t\t\t<FlexItem className=\"dataviews-filters__summary-operators-filter-name\">\n\t\t\t\t\t{ filter.name }\n\t\t\t\t</FlexItem>\n\n\t\t\t\t<SelectControl\n\t\t\t\t\tlabel={ __( 'Conditions' ) }\n\t\t\t\t\tvalue={ value }\n\t\t\t\t\toptions={ operatorOptions }\n\t\t\t\t\tonChange={ ( newValue ) => {\n\t\t\t\t\t\tconst operator = newValue as Operator;\n\t\t\t\t\t\tconst newFilters = currentFilter\n\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ).map(\n\t\t\t\t\t\t\t\t\t\t( _filter ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field === filter.field\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t\t..._filter,\n\t\t\t\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\treturn _filter;\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t: [\n\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\toperator,\n\t\t\t\t\t\t\t\t\t\tvalue: undefined,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t ];\n\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\tfilters: newFilters,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\thideLabelFromVision\n\t\t\t\t/>\n\t\t\t</HStack>\n\t\t)\n\t);\n}\n\nexport default function FilterSummary( {\n\taddFilterRef,\n\topenedFilter,\n\t...commonProps\n}: FilterSummaryProps ) {\n\tconst toggleRef = useRef< HTMLDivElement >( null );\n\tconst { filter, view, onChangeView } = commonProps;\n\tconst filterInView = view.filters?.find(\n\t\t( f ) => f.field === filter.field\n\t);\n\tconst activeElements = filter.elements.filter( ( element ) => {\n\t\tif ( filter.singleSelection ) {\n\t\t\treturn element.value === filterInView?.value;\n\t\t}\n\t\treturn filterInView?.value?.includes( element.value );\n\t} );\n\tconst isPrimary = filter.isPrimary;\n\tconst hasValues = filterInView?.value !== undefined;\n\tconst canResetOrRemove = ! isPrimary || hasValues;\n\treturn (\n\t\t<Dropdown\n\t\t\tdefaultOpen={ openedFilter === filter.field }\n\t\t\tcontentClassName=\"dataviews-filters__summary-popover\"\n\t\t\tpopoverProps={ { placement: 'bottom-start', role: 'dialog' } }\n\t\t\tonClose={ () => {\n\t\t\t\ttoggleRef.current?.focus();\n\t\t\t} }\n\t\t\trenderToggle={ ( { isOpen, onToggle } ) => (\n\t\t\t\t<div className=\"dataviews-filters__summary-chip-container\">\n\t\t\t\t\t<Tooltip\n\t\t\t\t\t\ttext={ sprintf(\n\t\t\t\t\t\t\t/* translators: 1: Filter name. */\n\t\t\t\t\t\t\t__( 'Filter by: %1$s' ),\n\t\t\t\t\t\t\tfilter.name.toLowerCase()\n\t\t\t\t\t\t) }\n\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'has-reset': canResetOrRemove,\n\t\t\t\t\t\t\t\t\t'has-values': hasValues,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\trole=\"button\"\n\t\t\t\t\t\t\ttabIndex={ 0 }\n\t\t\t\t\t\t\tonClick={ onToggle }\n\t\t\t\t\t\t\tonKeyDown={ ( event ) => {\n\t\t\t\t\t\t\t\tif ( [ ENTER, SPACE ].includes( event.key ) ) {\n\t\t\t\t\t\t\t\t\tonToggle();\n\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\taria-pressed={ isOpen }\n\t\t\t\t\t\t\taria-expanded={ isOpen }\n\t\t\t\t\t\t\tref={ toggleRef }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FilterText\n\t\t\t\t\t\t\t\tactiveElements={ activeElements }\n\t\t\t\t\t\t\t\tfilterInView={ filterInView }\n\t\t\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t\t{ canResetOrRemove && (\n\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\ttext={ isPrimary ? __( 'Reset' ) : __( 'Remove' ) }\n\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\tclassName={ clsx(\n\t\t\t\t\t\t\t\t\t'dataviews-filters__summary-chip-remove',\n\t\t\t\t\t\t\t\t\t{ 'has-values': hasValues }\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\tfilters: view.filters?.filter(\n\t\t\t\t\t\t\t\t\t\t\t( _filter ) =>\n\t\t\t\t\t\t\t\t\t\t\t\t_filter.field !== filter.field\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t\t// If the filter is not primary and can be removed, it will be added\n\t\t\t\t\t\t\t\t\t// back to the available filters from `Add filter` component.\n\t\t\t\t\t\t\t\t\tif ( ! isPrimary ) {\n\t\t\t\t\t\t\t\t\t\taddFilterRef.current?.focus();\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t// If is primary, focus the toggle button.\n\t\t\t\t\t\t\t\t\t\ttoggleRef.current?.focus();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<Icon icon={ closeSmall } />\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t) }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\trenderContent={ () => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack spacing={ 0 } justify=\"flex-start\">\n\t\t\t\t\t\t<OperatorSelector { ...commonProps } />\n\t\t\t\t\t\t<SearchWidget { ...commonProps } />\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} }\n\t\t/>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,8 +10,9 @@ var _components = require("@wordpress/components");
|
|
|
10
10
|
var _filterSummary = _interopRequireDefault(require("./filter-summary"));
|
|
11
11
|
var _addFilter = _interopRequireDefault(require("./add-filter"));
|
|
12
12
|
var _resetFilters = _interopRequireDefault(require("./reset-filters"));
|
|
13
|
-
var
|
|
14
|
-
var
|
|
13
|
+
var _dataviewsContext = _interopRequireDefault(require("../dataviews-context"));
|
|
14
|
+
var _utils = require("../../utils");
|
|
15
|
+
var _constants = require("../../constants");
|
|
15
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
17
|
/**
|
|
17
18
|
* WordPress dependencies
|
|
@@ -21,13 +22,14 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
21
22
|
* Internal dependencies
|
|
22
23
|
*/
|
|
23
24
|
|
|
24
|
-
function
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
25
|
+
function Filters() {
|
|
26
|
+
const {
|
|
27
|
+
fields,
|
|
28
|
+
view,
|
|
29
|
+
onChangeView,
|
|
30
|
+
openedFilter,
|
|
31
|
+
setOpenedFilter
|
|
32
|
+
} = (0, _element.useContext)(_dataviewsContext.default);
|
|
31
33
|
const addFilterRef = (0, _element.useRef)(null);
|
|
32
34
|
const filters = [];
|
|
33
35
|
fields.forEach(field => {
|
|
@@ -41,11 +43,11 @@ function _Filters({
|
|
|
41
43
|
const isPrimary = !!field.filterBy?.isPrimary;
|
|
42
44
|
filters.push({
|
|
43
45
|
field: field.id,
|
|
44
|
-
name: field.
|
|
46
|
+
name: field.label,
|
|
45
47
|
elements: field.elements,
|
|
46
48
|
singleSelection: operators.some(op => [_constants.OPERATOR_IS, _constants.OPERATOR_IS_NOT].includes(op)),
|
|
47
49
|
operators,
|
|
48
|
-
isVisible: isPrimary || view.filters
|
|
50
|
+
isVisible: isPrimary || !!view.filters?.some(f => f.field === field.id && _constants.ALL_OPERATORS.includes(f.operator)),
|
|
49
51
|
isPrimary
|
|
50
52
|
});
|
|
51
53
|
});
|
|
@@ -95,8 +97,5 @@ function _Filters({
|
|
|
95
97
|
children: filterComponents
|
|
96
98
|
});
|
|
97
99
|
}
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const Filters = (0, _element.memo)(_Filters);
|
|
101
|
-
var _default = exports.default = Filters;
|
|
102
|
-
//# sourceMappingURL=filters.js.map
|
|
100
|
+
var _default = exports.default = (0, _element.memo)(Filters);
|
|
101
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_element","require","_components","_filterSummary","_interopRequireDefault","_addFilter","_resetFilters","_dataviewsContext","_utils","_constants","_jsxRuntime","Filters","fields","view","onChangeView","openedFilter","setOpenedFilter","useContext","DataViewsContext","addFilterRef","useRef","filters","forEach","field","elements","length","operators","sanitizeOperators","isPrimary","filterBy","push","id","name","label","singleSelection","some","op","OPERATOR_IS","OPERATOR_IS_NOT","includes","isVisible","f","ALL_OPERATORS","operator","sort","a","b","localeCompare","addFilter","jsx","default","ref","filterComponents","map","filter","__experimentalHStack","justify","style","width","wrap","children","_default","exports","memo"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { memo, useContext, useRef } from '@wordpress/element';\nimport { __experimentalHStack as HStack } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FilterSummary from './filter-summary';\nimport AddFilter from './add-filter';\nimport ResetFilters from './reset-filters';\nimport DataViewsContext from '../dataviews-context';\nimport { sanitizeOperators } from '../../utils';\nimport { ALL_OPERATORS, OPERATOR_IS, OPERATOR_IS_NOT } from '../../constants';\nimport type { NormalizedFilter } from '../../types';\n\nfunction Filters() {\n\tconst { fields, view, onChangeView, openedFilter, setOpenedFilter } =\n\t\tuseContext( DataViewsContext );\n\tconst addFilterRef = useRef< HTMLButtonElement >( null );\n\tconst filters: NormalizedFilter[] = [];\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.elements?.length ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst operators = sanitizeOperators( field );\n\t\tif ( operators.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst isPrimary = !! field.filterBy?.isPrimary;\n\t\tfilters.push( {\n\t\t\tfield: field.id,\n\t\t\tname: field.label,\n\t\t\telements: field.elements,\n\t\t\tsingleSelection: operators.some( ( op ) =>\n\t\t\t\t[ OPERATOR_IS, OPERATOR_IS_NOT ].includes( op )\n\t\t\t),\n\t\t\toperators,\n\t\t\tisVisible:\n\t\t\t\tisPrimary ||\n\t\t\t\t!! view.filters?.some(\n\t\t\t\t\t( f ) =>\n\t\t\t\t\t\tf.field === field.id &&\n\t\t\t\t\t\tALL_OPERATORS.includes( f.operator )\n\t\t\t\t),\n\t\t\tisPrimary,\n\t\t} );\n\t} );\n\t// Sort filters by primary property. We need the primary filters to be first.\n\t// Then we sort by name.\n\tfilters.sort( ( a, b ) => {\n\t\tif ( a.isPrimary && ! b.isPrimary ) {\n\t\t\treturn -1;\n\t\t}\n\t\tif ( ! a.isPrimary && b.isPrimary ) {\n\t\t\treturn 1;\n\t\t}\n\t\treturn a.name.localeCompare( b.name );\n\t} );\n\tconst addFilter = (\n\t\t<AddFilter\n\t\t\tkey=\"add-filter\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t\tref={ addFilterRef }\n\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t/>\n\t);\n\tconst filterComponents = [\n\t\t...filters.map( ( filter ) => {\n\t\t\tif ( ! filter.isVisible ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<FilterSummary\n\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\tfilter={ filter }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\taddFilterRef={ addFilterRef }\n\t\t\t\t\topenedFilter={ openedFilter }\n\t\t\t\t/>\n\t\t\t);\n\t\t} ),\n\t\taddFilter,\n\t];\n\n\tif ( filterComponents.length > 1 ) {\n\t\tfilterComponents.push(\n\t\t\t<ResetFilters\n\t\t\t\tkey=\"reset-filters\"\n\t\t\t\tfilters={ filters }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<HStack justify=\"flex-start\" style={ { width: 'fit-content' } } wrap>\n\t\t\t{ filterComponents }\n\t\t</HStack>\n\t);\n}\n\nexport default memo( Filters );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -24,7 +24,7 @@ function ResetFilter({
|
|
|
24
24
|
const isDisabled = !view.search && !view.filters?.some(_filter => _filter.value !== undefined || !isPrimary(_filter.field));
|
|
25
25
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
26
26
|
disabled: isDisabled,
|
|
27
|
-
|
|
27
|
+
accessibleWhenDisabled: true,
|
|
28
28
|
size: "compact",
|
|
29
29
|
variant: "tertiary",
|
|
30
30
|
className: "dataviews-filters__reset-button",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_components","require","_i18n","_jsxRuntime","ResetFilter","filters","view","onChangeView","isPrimary","field","some","_filter","isDisabled","search","value","undefined","jsx","Button","disabled","accessibleWhenDisabled","size","variant","className","onClick","page","children","__"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/reset-filters.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { NormalizedFilter, View } from '../../types';\n\ninterface ResetFilterProps {\n\tfilters: NormalizedFilter[];\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n}\n\nexport default function ResetFilter( {\n\tfilters,\n\tview,\n\tonChangeView,\n}: ResetFilterProps ) {\n\tconst isPrimary = ( field: string ) =>\n\t\tfilters.some(\n\t\t\t( _filter ) => _filter.field === field && _filter.isPrimary\n\t\t);\n\tconst isDisabled =\n\t\t! view.search &&\n\t\t! view.filters?.some(\n\t\t\t( _filter ) =>\n\t\t\t\t_filter.value !== undefined || ! isPrimary( _filter.field )\n\t\t);\n\treturn (\n\t\t<Button\n\t\t\tdisabled={ isDisabled }\n\t\t\taccessibleWhenDisabled\n\t\t\tsize=\"compact\"\n\t\t\tvariant=\"tertiary\"\n\t\t\tclassName=\"dataviews-filters__reset-button\"\n\t\t\tonClick={ () => {\n\t\t\t\tonChangeView( {\n\t\t\t\t\t...view,\n\t\t\t\t\tpage: 1,\n\t\t\t\t\tsearch: '',\n\t\t\t\t\tfilters: [],\n\t\t\t\t} );\n\t\t\t} }\n\t\t>\n\t\t\t{ __( 'Reset' ) }\n\t\t</Button>\n\t);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAAqC,IAAAE,WAAA,GAAAF,OAAA;AAJrC;AACA;AACA;;AAIA;AACA;AACA;;AASe,SAASG,WAAWA,CAAE;EACpCC,OAAO;EACPC,IAAI;EACJC;AACiB,CAAC,EAAG;EACrB,MAAMC,SAAS,GAAKC,KAAa,IAChCJ,OAAO,CAACK,IAAI,CACTC,OAAO,IAAMA,OAAO,CAACF,KAAK,KAAKA,KAAK,IAAIE,OAAO,CAACH,SACnD,CAAC;EACF,MAAMI,UAAU,GACf,CAAEN,IAAI,CAACO,MAAM,IACb,CAAEP,IAAI,CAACD,OAAO,EAAEK,IAAI,CACjBC,OAAO,IACRA,OAAO,CAACG,KAAK,KAAKC,SAAS,IAAI,CAAEP,SAAS,CAAEG,OAAO,CAACF,KAAM,CAC5D,CAAC;EACF,oBACC,IAAAN,WAAA,CAAAa,GAAA,EAAChB,WAAA,CAAAiB,MAAM;IACNC,QAAQ,EAAGN,UAAY;IACvBO,sBAAsB;IACtBC,IAAI,EAAC,SAAS;IACdC,OAAO,EAAC,UAAU;IAClBC,SAAS,EAAC,iCAAiC;IAC3CC,OAAO,EAAGA,CAAA,KAAM;MACfhB,YAAY,CAAE;QACb,GAAGD,IAAI;QACPkB,IAAI,EAAE,CAAC;QACPX,MAAM,EAAE,EAAE;QACVR,OAAO,EAAE;MACV,CAAE,CAAC;IACJ,CAAG;IAAAoB,QAAA,EAED,IAAAC,QAAE,EAAE,OAAQ;EAAC,CACR,CAAC;AAEX","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ var _element = require("@wordpress/element");
|
|
|
12
12
|
var _components = require("@wordpress/components");
|
|
13
13
|
var _icons = require("@wordpress/icons");
|
|
14
14
|
var _primitives = require("@wordpress/primitives");
|
|
15
|
-
var _lockUnlock = require("
|
|
15
|
+
var _lockUnlock = require("../../lock-unlock");
|
|
16
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
17
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
18
18
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -81,12 +81,12 @@ function ListBox({
|
|
|
81
81
|
// so the first item is not selected, since the focus is on the operators control.
|
|
82
82
|
defaultActiveId: filter.operators?.length === 1 ? undefined : null
|
|
83
83
|
});
|
|
84
|
-
const currentFilter = view.filters
|
|
84
|
+
const currentFilter = view.filters?.find(f => f.field === filter.field);
|
|
85
85
|
const currentValue = getCurrentValue(filter, currentFilter);
|
|
86
86
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(Composite, {
|
|
87
87
|
store: compositeStore,
|
|
88
88
|
role: "listbox",
|
|
89
|
-
className: "dataviews-
|
|
89
|
+
className: "dataviews-filters__search-widget-listbox",
|
|
90
90
|
"aria-label": (0, _i18n.sprintf)( /* translators: List of items for a filter. 1: Filter name. e.g.: "List of: Author". */
|
|
91
91
|
(0, _i18n.__)('List of: %1$s'), filter.name),
|
|
92
92
|
onFocusVisible: () => {
|
|
@@ -103,10 +103,11 @@ function ListBox({
|
|
|
103
103
|
render: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
104
104
|
"aria-label": element.label,
|
|
105
105
|
role: "option",
|
|
106
|
-
className: "dataviews-
|
|
106
|
+
className: "dataviews-filters__search-widget-listitem"
|
|
107
107
|
}),
|
|
108
108
|
onClick: () => {
|
|
109
|
-
|
|
109
|
+
var _view$filters, _view$filters2;
|
|
110
|
+
const newFilters = currentFilter ? [...((_view$filters = view.filters) !== null && _view$filters !== void 0 ? _view$filters : []).map(_filter => {
|
|
110
111
|
if (_filter.field === filter.field) {
|
|
111
112
|
return {
|
|
112
113
|
..._filter,
|
|
@@ -115,7 +116,7 @@ function ListBox({
|
|
|
115
116
|
};
|
|
116
117
|
}
|
|
117
118
|
return _filter;
|
|
118
|
-
})] : [...view.filters, {
|
|
119
|
+
})] : [...((_view$filters2 = view.filters) !== null && _view$filters2 !== void 0 ? _view$filters2 : []), {
|
|
119
120
|
field: filter.field,
|
|
120
121
|
operator: filter.operators[0],
|
|
121
122
|
value: getNewValue(filter, currentFilter, element.value)
|
|
@@ -128,7 +129,7 @@ function ListBox({
|
|
|
128
129
|
}
|
|
129
130
|
}),
|
|
130
131
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
131
|
-
className: "dataviews-
|
|
132
|
+
className: "dataviews-filters__search-widget-listitem-check",
|
|
132
133
|
children: [filter.singleSelection && currentValue === element.value && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
133
134
|
icon: radioCheck
|
|
134
135
|
}), !filter.singleSelection && currentValue.includes(element.value) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
@@ -136,7 +137,7 @@ function ListBox({
|
|
|
136
137
|
})]
|
|
137
138
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
138
139
|
children: [element.label, !!element.description && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
139
|
-
className: "dataviews-
|
|
140
|
+
className: "dataviews-filters__search-widget-listitem-description",
|
|
140
141
|
children: element.description
|
|
141
142
|
})]
|
|
142
143
|
})]
|
|
@@ -150,7 +151,7 @@ function ComboboxList({
|
|
|
150
151
|
}) {
|
|
151
152
|
const [searchValue, setSearchValue] = (0, _element.useState)('');
|
|
152
153
|
const deferredSearchValue = (0, _element.useDeferredValue)(searchValue);
|
|
153
|
-
const currentFilter = view.filters
|
|
154
|
+
const currentFilter = view.filters?.find(_filter => _filter.field === filter.field);
|
|
154
155
|
const currentValue = getCurrentValue(filter, currentFilter);
|
|
155
156
|
const matches = (0, _element.useMemo)(() => {
|
|
156
157
|
const normalizedSearch = normalizeSearchInput(deferredSearchValue);
|
|
@@ -160,7 +161,8 @@ function ComboboxList({
|
|
|
160
161
|
resetValueOnSelect: false,
|
|
161
162
|
selectedValue: currentValue,
|
|
162
163
|
setSelectedValue: value => {
|
|
163
|
-
|
|
164
|
+
var _view$filters3, _view$filters4;
|
|
165
|
+
const newFilters = currentFilter ? [...((_view$filters3 = view.filters) !== null && _view$filters3 !== void 0 ? _view$filters3 : []).map(_filter => {
|
|
164
166
|
if (_filter.field === filter.field) {
|
|
165
167
|
return {
|
|
166
168
|
..._filter,
|
|
@@ -169,7 +171,7 @@ function ComboboxList({
|
|
|
169
171
|
};
|
|
170
172
|
}
|
|
171
173
|
return _filter;
|
|
172
|
-
})] : [...view.filters, {
|
|
174
|
+
})] : [...((_view$filters4 = view.filters) !== null && _view$filters4 !== void 0 ? _view$filters4 : []), {
|
|
173
175
|
field: filter.field,
|
|
174
176
|
operator: filter.operators[0],
|
|
175
177
|
value
|
|
@@ -182,7 +184,7 @@ function ComboboxList({
|
|
|
182
184
|
},
|
|
183
185
|
setValue: setSearchValue,
|
|
184
186
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
185
|
-
className: "dataviews-
|
|
187
|
+
className: "dataviews-filters__search-widget-filter-combobox__wrapper",
|
|
186
188
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Ariakit.ComboboxLabel, {
|
|
187
189
|
render: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.VisuallyHidden, {
|
|
188
190
|
children: (0, _i18n.__)('Search items')
|
|
@@ -191,25 +193,25 @@ function ComboboxList({
|
|
|
191
193
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(Ariakit.Combobox, {
|
|
192
194
|
autoSelect: "always",
|
|
193
195
|
placeholder: (0, _i18n.__)('Search'),
|
|
194
|
-
className: "dataviews-
|
|
196
|
+
className: "dataviews-filters__search-widget-filter-combobox__input"
|
|
195
197
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
196
|
-
className: "dataviews-
|
|
198
|
+
className: "dataviews-filters__search-widget-filter-combobox__icon",
|
|
197
199
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
198
200
|
icon: _icons.search
|
|
199
201
|
})
|
|
200
202
|
})]
|
|
201
203
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(Ariakit.ComboboxList, {
|
|
202
|
-
className: "dataviews-
|
|
204
|
+
className: "dataviews-filters__search-widget-filter-combobox-list",
|
|
203
205
|
alwaysVisible: true,
|
|
204
206
|
children: [matches.map(element => {
|
|
205
207
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Ariakit.ComboboxItem, {
|
|
206
208
|
value: element.value,
|
|
207
|
-
className: "dataviews-
|
|
209
|
+
className: "dataviews-filters__search-widget-listitem",
|
|
208
210
|
hideOnClick: false,
|
|
209
211
|
setValueOnClick: false,
|
|
210
212
|
focusOnHover: true,
|
|
211
213
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
212
|
-
className: "dataviews-
|
|
214
|
+
className: "dataviews-filters__search-widget-listitem-check",
|
|
213
215
|
children: [filter.singleSelection && currentValue === element.value && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
214
216
|
icon: radioCheck
|
|
215
217
|
}), !filter.singleSelection && currentValue.includes(element.value) && /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Icon, {
|
|
@@ -217,10 +219,10 @@ function ComboboxList({
|
|
|
217
219
|
})]
|
|
218
220
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
|
|
219
221
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Ariakit.ComboboxItemValue, {
|
|
220
|
-
className: "dataviews-
|
|
222
|
+
className: "dataviews-filters__search-widget-filter-combobox-item-value",
|
|
221
223
|
value: element.label
|
|
222
224
|
}), !!element.description && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
223
|
-
className: "dataviews-
|
|
225
|
+
className: "dataviews-filters__search-widget-listitem-description",
|
|
224
226
|
children: element.description
|
|
225
227
|
})]
|
|
226
228
|
})]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Ariakit","_interopRequireWildcard","require","_removeAccents","_interopRequireDefault","_i18n","_element","_components","_icons","_primitives","_lockUnlock","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CompositeV2","Composite","CompositeItemV2","CompositeItem","useCompositeStoreV2","useCompositeStore","unlock","componentsPrivateApis","radioCheck","jsx","SVG","xmlns","viewBox","children","Circle","cx","cy","normalizeSearchInput","input","removeAccents","trim","toLowerCase","EMPTY_ARRAY","getCurrentValue","filterDefinition","currentFilter","singleSelection","value","Array","isArray","getNewValue","includes","filter","v","ListBox","view","onChangeView","compositeStore","virtualFocus","focusLoop","defaultActiveId","operators","length","undefined","filters","find","f","field","currentValue","store","role","className","sprintf","__","name","onFocusVisible","getState","activeId","move","first","render","CompositeTypeahead","elements","map","element","jsxs","CompositeHover","label","onClick","_view$filters","_view$filters2","newFilters","_filter","operator","page","Icon","icon","check","description","ComboboxList","searchValue","setSearchValue","useState","deferredSearchValue","useDeferredValue","matches","useMemo","normalizedSearch","item","ComboboxProvider","resetValueOnSelect","selectedValue","setSelectedValue","_view$filters3","_view$filters4","setValue","ComboboxLabel","VisuallyHidden","Combobox","autoSelect","placeholder","search","alwaysVisible","ComboboxItem","hideOnClick","setValueOnClick","focusOnHover","ComboboxItemValue","SearchWidget","props","Widget"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/search-widget.tsx"],"sourcesContent":["/**\n * External dependencies\n */\n// eslint-disable-next-line no-restricted-imports\nimport * as Ariakit from '@ariakit/react';\nimport removeAccents from 'remove-accents';\n\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useState, useMemo, useDeferredValue } from '@wordpress/element';\nimport {\n\tVisuallyHidden,\n\tIcon,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { search, check } from '@wordpress/icons';\nimport { SVG, Circle } from '@wordpress/primitives';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport type { Filter, NormalizedFilter, View } from '../../types';\n\nconst {\n\tCompositeV2: Composite,\n\tCompositeItemV2: CompositeItem,\n\tuseCompositeStoreV2: useCompositeStore,\n} = unlock( componentsPrivateApis );\n\ninterface SearchWidgetProps {\n\tview: View;\n\tfilter: NormalizedFilter;\n\tonChangeView: ( view: View ) => void;\n}\n\nconst radioCheck = (\n\t<SVG xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n\t\t<Circle cx={ 12 } cy={ 12 } r={ 3 }></Circle>\n\t</SVG>\n);\n\nfunction normalizeSearchInput( input = '' ) {\n\treturn removeAccents( input.trim().toLowerCase() );\n}\n\nconst EMPTY_ARRAY: [] = [];\nconst getCurrentValue = (\n\tfilterDefinition: NormalizedFilter,\n\tcurrentFilter?: Filter\n) => {\n\tif ( filterDefinition.singleSelection ) {\n\t\treturn currentFilter?.value;\n\t}\n\n\tif ( Array.isArray( currentFilter?.value ) ) {\n\t\treturn currentFilter.value;\n\t}\n\n\tif ( ! Array.isArray( currentFilter?.value ) && !! currentFilter?.value ) {\n\t\treturn [ currentFilter.value ];\n\t}\n\n\treturn EMPTY_ARRAY;\n};\n\nconst getNewValue = (\n\tfilterDefinition: NormalizedFilter,\n\tcurrentFilter: Filter | undefined,\n\tvalue: any\n) => {\n\tif ( filterDefinition.singleSelection ) {\n\t\treturn value;\n\t}\n\n\tif ( Array.isArray( currentFilter?.value ) ) {\n\t\treturn currentFilter.value.includes( value )\n\t\t\t? currentFilter.value.filter( ( v ) => v !== value )\n\t\t\t: [ ...currentFilter.value, value ];\n\t}\n\n\treturn [ value ];\n};\n\nfunction ListBox( { view, filter, onChangeView }: SearchWidgetProps ) {\n\tconst compositeStore = useCompositeStore( {\n\t\tvirtualFocus: true,\n\t\tfocusLoop: true,\n\t\t// When we have no or just one operator, we can set the first item as active.\n\t\t// We do that by passing `undefined` to `defaultActiveId`. Otherwise, we set it to `null`,\n\t\t// so the first item is not selected, since the focus is on the operators control.\n\t\tdefaultActiveId: filter.operators?.length === 1 ? undefined : null,\n\t} );\n\tconst currentFilter = view.filters?.find(\n\t\t( f ) => f.field === filter.field\n\t);\n\tconst currentValue = getCurrentValue( filter, currentFilter );\n\treturn (\n\t\t<Composite\n\t\t\tstore={ compositeStore }\n\t\t\trole=\"listbox\"\n\t\t\tclassName=\"dataviews-filters__search-widget-listbox\"\n\t\t\taria-label={ sprintf(\n\t\t\t\t/* translators: List of items for a filter. 1: Filter name. e.g.: \"List of: Author\". */\n\t\t\t\t__( 'List of: %1$s' ),\n\t\t\t\tfilter.name\n\t\t\t) }\n\t\t\tonFocusVisible={ () => {\n\t\t\t\tif ( ! compositeStore.getState().activeId ) {\n\t\t\t\t\tcompositeStore.move( compositeStore.first() );\n\t\t\t\t}\n\t\t\t} }\n\t\t\trender={ <Ariakit.CompositeTypeahead store={ compositeStore } /> }\n\t\t>\n\t\t\t{ filter.elements.map( ( element ) => (\n\t\t\t\t<Ariakit.CompositeHover\n\t\t\t\t\tstore={ compositeStore }\n\t\t\t\t\tkey={ element.value }\n\t\t\t\t\trender={\n\t\t\t\t\t\t<CompositeItem\n\t\t\t\t\t\t\trender={\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\taria-label={ element.label }\n\t\t\t\t\t\t\t\t\trole=\"option\"\n\t\t\t\t\t\t\t\t\tclassName=\"dataviews-filters__search-widget-listitem\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\tconst newFilters = currentFilter\n\t\t\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ).map(\n\t\t\t\t\t\t\t\t\t\t\t\t( _filter ) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t_filter.field ===\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tfilter.field\n\t\t\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t..._filter,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\toperator:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentFilter.operator ||\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfilter\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t.operators[ 0 ],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: getNewValue(\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tfilter,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentFilter,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\telement.value\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn _filter;\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t\t\t: [\n\t\t\t\t\t\t\t\t\t\t\t...( view.filters ?? [] ),\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\t\t\toperator: filter.operators[ 0 ],\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: getNewValue(\n\t\t\t\t\t\t\t\t\t\t\t\t\tfilter,\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentFilter,\n\t\t\t\t\t\t\t\t\t\t\t\t\telement.value\n\t\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t ];\n\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\tfilters: newFilters,\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t<span className=\"dataviews-filters__search-widget-listitem-check\">\n\t\t\t\t\t\t{ filter.singleSelection &&\n\t\t\t\t\t\t\tcurrentValue === element.value && (\n\t\t\t\t\t\t\t\t<Icon icon={ radioCheck } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t{ ! filter.singleSelection &&\n\t\t\t\t\t\t\tcurrentValue.includes( element.value ) && (\n\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t</span>\n\t\t\t\t\t<span>\n\t\t\t\t\t\t{ element.label }\n\t\t\t\t\t\t{ !! element.description && (\n\t\t\t\t\t\t\t<span className=\"dataviews-filters__search-widget-listitem-description\">\n\t\t\t\t\t\t\t\t{ element.description }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</span>\n\t\t\t\t</Ariakit.CompositeHover>\n\t\t\t) ) }\n\t\t</Composite>\n\t);\n}\n\nfunction ComboboxList( { view, filter, onChangeView }: SearchWidgetProps ) {\n\tconst [ searchValue, setSearchValue ] = useState( '' );\n\tconst deferredSearchValue = useDeferredValue( searchValue );\n\tconst currentFilter = view.filters?.find(\n\t\t( _filter ) => _filter.field === filter.field\n\t);\n\tconst currentValue = getCurrentValue( filter, currentFilter );\n\tconst matches = useMemo( () => {\n\t\tconst normalizedSearch = normalizeSearchInput( deferredSearchValue );\n\t\treturn filter.elements.filter( ( item ) =>\n\t\t\tnormalizeSearchInput( item.label ).includes( normalizedSearch )\n\t\t);\n\t}, [ filter.elements, deferredSearchValue ] );\n\treturn (\n\t\t<Ariakit.ComboboxProvider\n\t\t\tresetValueOnSelect={ false }\n\t\t\tselectedValue={ currentValue }\n\t\t\tsetSelectedValue={ ( value ) => {\n\t\t\t\tconst newFilters = currentFilter\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t...( view.filters ?? [] ).map( ( _filter ) => {\n\t\t\t\t\t\t\t\tif ( _filter.field === filter.field ) {\n\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t..._filter,\n\t\t\t\t\t\t\t\t\t\toperator:\n\t\t\t\t\t\t\t\t\t\t\tcurrentFilter.operator ||\n\t\t\t\t\t\t\t\t\t\t\tfilter.operators[ 0 ],\n\t\t\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\treturn _filter;\n\t\t\t\t\t\t\t} ),\n\t\t\t\t\t ]\n\t\t\t\t\t: [\n\t\t\t\t\t\t\t...( view.filters ?? [] ),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\toperator: filter.operators[ 0 ],\n\t\t\t\t\t\t\t\tvalue,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ];\n\t\t\t\tonChangeView( {\n\t\t\t\t\t...view,\n\t\t\t\t\tpage: 1,\n\t\t\t\t\tfilters: newFilters,\n\t\t\t\t} );\n\t\t\t} }\n\t\t\tsetValue={ setSearchValue }\n\t\t>\n\t\t\t<div className=\"dataviews-filters__search-widget-filter-combobox__wrapper\">\n\t\t\t\t<Ariakit.ComboboxLabel\n\t\t\t\t\trender={\n\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t{ __( 'Search items' ) }\n\t\t\t\t\t\t</VisuallyHidden>\n\t\t\t\t\t}\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Search items' ) }\n\t\t\t\t</Ariakit.ComboboxLabel>\n\t\t\t\t<Ariakit.Combobox\n\t\t\t\t\tautoSelect=\"always\"\n\t\t\t\t\tplaceholder={ __( 'Search' ) }\n\t\t\t\t\tclassName=\"dataviews-filters__search-widget-filter-combobox__input\"\n\t\t\t\t/>\n\t\t\t\t<div className=\"dataviews-filters__search-widget-filter-combobox__icon\">\n\t\t\t\t\t<Icon icon={ search } />\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<Ariakit.ComboboxList\n\t\t\t\tclassName=\"dataviews-filters__search-widget-filter-combobox-list\"\n\t\t\t\talwaysVisible\n\t\t\t>\n\t\t\t\t{ matches.map( ( element ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<Ariakit.ComboboxItem\n\t\t\t\t\t\t\tkey={ element.value }\n\t\t\t\t\t\t\tvalue={ element.value }\n\t\t\t\t\t\t\tclassName=\"dataviews-filters__search-widget-listitem\"\n\t\t\t\t\t\t\thideOnClick={ false }\n\t\t\t\t\t\t\tsetValueOnClick={ false }\n\t\t\t\t\t\t\tfocusOnHover\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span className=\"dataviews-filters__search-widget-listitem-check\">\n\t\t\t\t\t\t\t\t{ filter.singleSelection &&\n\t\t\t\t\t\t\t\t\tcurrentValue === element.value && (\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ radioCheck } />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t{ ! filter.singleSelection &&\n\t\t\t\t\t\t\t\t\tcurrentValue.includes( element.value ) && (\n\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t\t<Ariakit.ComboboxItemValue\n\t\t\t\t\t\t\t\t\tclassName=\"dataviews-filters__search-widget-filter-combobox-item-value\"\n\t\t\t\t\t\t\t\t\tvalue={ element.label }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t{ !! element.description && (\n\t\t\t\t\t\t\t\t\t<span className=\"dataviews-filters__search-widget-listitem-description\">\n\t\t\t\t\t\t\t\t\t\t{ element.description }\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</Ariakit.ComboboxItem>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t\t{ ! matches.length && <p>{ __( 'No results found' ) }</p> }\n\t\t\t</Ariakit.ComboboxList>\n\t\t</Ariakit.ComboboxProvider>\n\t);\n}\n\nexport default function SearchWidget( props: SearchWidgetProps ) {\n\tconst Widget = props.filter.elements.length > 10 ? ComboboxList : ListBox;\n\treturn <Widget { ...props } />;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,7 @@ var _i18n = require("@wordpress/i18n");
|
|
|
12
12
|
var _element = require("@wordpress/element");
|
|
13
13
|
var _icons = require("@wordpress/icons");
|
|
14
14
|
var _data = require("@wordpress/data");
|
|
15
|
-
var _lockUnlock = require("
|
|
15
|
+
var _lockUnlock = require("../../lock-unlock");
|
|
16
16
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
17
17
|
/**
|
|
18
18
|
* External dependencies
|
|
@@ -196,7 +196,7 @@ function CompactItemActions({
|
|
|
196
196
|
size: "compact",
|
|
197
197
|
icon: _icons.moreVertical,
|
|
198
198
|
label: (0, _i18n.__)('Actions'),
|
|
199
|
-
|
|
199
|
+
accessibleWhenDisabled: true,
|
|
200
200
|
disabled: !actions.length,
|
|
201
201
|
className: "dataviews-all-actions-button"
|
|
202
202
|
}),
|
|
@@ -207,4 +207,4 @@ function CompactItemActions({
|
|
|
207
207
|
})
|
|
208
208
|
});
|
|
209
209
|
}
|
|
210
|
-
//# sourceMappingURL=
|
|
210
|
+
//# sourceMappingURL=index.js.map
|