@wordpress/dataviews 4.0.0 → 4.1.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 +16 -5
- package/build/components/dataform/index.js +10 -61
- package/build/components/dataform/index.js.map +1 -1
- package/build/components/dataviews/index.js +16 -5
- package/build/components/dataviews/index.js.map +1 -1
- package/build/components/dataviews-bulk-actions/index.js +3 -0
- package/build/components/dataviews-bulk-actions/index.js.map +1 -1
- package/build/components/dataviews-filters/add-filter.js +34 -17
- package/build/components/dataviews-filters/add-filter.js.map +1 -1
- package/build/components/dataviews-filters/index.js +106 -43
- package/build/components/dataviews-filters/index.js.map +1 -1
- package/build/components/dataviews-layout/index.js +2 -2
- package/build/components/dataviews-layout/index.js.map +1 -1
- package/build/components/dataviews-search/index.js +8 -5
- package/build/components/dataviews-search/index.js.map +1 -1
- package/build/components/dataviews-view-config/index.js +225 -190
- package/build/components/dataviews-view-config/index.js.map +1 -1
- package/build/constants.js +6 -1
- package/build/constants.js.map +1 -1
- package/build/dataforms-layouts/index.js +24 -0
- package/build/dataforms-layouts/index.js.map +1 -0
- package/build/dataforms-layouts/panel/index.js +129 -0
- package/build/dataforms-layouts/panel/index.js.map +1 -0
- package/build/dataforms-layouts/regular/index.js +39 -0
- package/build/dataforms-layouts/regular/index.js.map +1 -0
- package/build/{layouts → dataviews-layouts}/grid/density-picker.js +1 -1
- package/build/dataviews-layouts/grid/density-picker.js.map +1 -0
- package/build/{layouts → dataviews-layouts}/grid/index.js +8 -8
- package/build/dataviews-layouts/grid/index.js.map +1 -0
- package/build/dataviews-layouts/index.js.map +1 -0
- package/build/dataviews-layouts/list/index.js.map +1 -0
- package/build/{layouts → dataviews-layouts}/table/column-header-menu.js +1 -1
- package/build/dataviews-layouts/table/column-header-menu.js.map +1 -0
- package/build/dataviews-layouts/table/index.js.map +1 -0
- package/build/field-types/index.js +46 -0
- package/build/field-types/index.js.map +1 -0
- package/build/field-types/integer.js +94 -0
- package/build/field-types/integer.js.map +1 -0
- package/build/field-types/text.js +87 -0
- package/build/field-types/text.js.map +1 -0
- package/build/filter-and-sort-data-view.js +2 -11
- package/build/filter-and-sort-data-view.js.map +1 -1
- package/build/index.js +9 -2
- package/build/index.js.map +1 -1
- package/build/normalize-fields.js +35 -1
- package/build/normalize-fields.js.map +1 -1
- package/build/types.js.map +1 -1
- package/build/validation.js +22 -0
- package/build/validation.js.map +1 -0
- package/build-module/components/dataform/index.js +10 -61
- package/build-module/components/dataform/index.js.map +1 -1
- package/build-module/components/dataviews/index.js +14 -5
- package/build-module/components/dataviews/index.js.map +1 -1
- package/build-module/components/dataviews-bulk-actions/index.js +3 -0
- package/build-module/components/dataviews-bulk-actions/index.js.map +1 -1
- package/build-module/components/dataviews-filters/add-filter.js +33 -17
- package/build-module/components/dataviews-filters/add-filter.js.map +1 -1
- package/build-module/components/dataviews-filters/index.js +105 -45
- package/build-module/components/dataviews-filters/index.js.map +1 -1
- package/build-module/components/dataviews-layout/index.js +1 -1
- package/build-module/components/dataviews-layout/index.js.map +1 -1
- package/build-module/components/dataviews-search/index.js +8 -5
- package/build-module/components/dataviews-search/index.js.map +1 -1
- package/build-module/components/dataviews-view-config/index.js +228 -193
- package/build-module/components/dataviews-view-config/index.js.map +1 -1
- package/build-module/constants.js +5 -0
- package/build-module/constants.js.map +1 -1
- package/build-module/dataforms-layouts/index.js +16 -0
- package/build-module/dataforms-layouts/index.js.map +1 -0
- package/build-module/dataforms-layouts/panel/index.js +124 -0
- package/build-module/dataforms-layouts/panel/index.js.map +1 -0
- package/build-module/dataforms-layouts/regular/index.js +32 -0
- package/build-module/dataforms-layouts/regular/index.js.map +1 -0
- package/build-module/{layouts → dataviews-layouts}/grid/density-picker.js +2 -2
- package/build-module/dataviews-layouts/grid/density-picker.js.map +1 -0
- package/build-module/{layouts → dataviews-layouts}/grid/index.js +8 -8
- package/build-module/dataviews-layouts/grid/index.js.map +1 -0
- package/build-module/dataviews-layouts/index.js.map +1 -0
- package/build-module/dataviews-layouts/list/index.js.map +1 -0
- package/build-module/{layouts → dataviews-layouts}/table/column-header-menu.js +1 -1
- package/build-module/dataviews-layouts/table/column-header-menu.js.map +1 -0
- package/build-module/dataviews-layouts/table/index.js.map +1 -0
- package/build-module/field-types/index.js +40 -0
- package/build-module/field-types/index.js.map +1 -0
- package/build-module/field-types/integer.js +87 -0
- package/build-module/field-types/integer.js.map +1 -0
- package/build-module/field-types/text.js +80 -0
- package/build-module/field-types/text.js.map +1 -0
- package/build-module/filter-and-sort-data-view.js +2 -11
- 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/normalize-fields.js +34 -2
- package/build-module/normalize-fields.js.map +1 -1
- package/build-module/types.js.map +1 -1
- package/build-module/validation.js +15 -0
- package/build-module/validation.js.map +1 -0
- package/build-style/style-rtl.css +175 -6
- package/build-style/style.css +175 -6
- package/build-types/components/dataform/index.d.ts +2 -13
- package/build-types/components/dataform/index.d.ts.map +1 -1
- package/build-types/components/dataform/stories/index.story.d.ts +12 -1
- package/build-types/components/dataform/stories/index.story.d.ts.map +1 -1
- package/build-types/components/dataviews/index.d.ts.map +1 -1
- package/build-types/components/dataviews/stories/fixtures.d.ts +6 -0
- package/build-types/components/dataviews/stories/fixtures.d.ts.map +1 -1
- package/build-types/components/dataviews-bulk-actions/index.d.ts.map +1 -1
- package/build-types/components/dataviews-filters/add-filter.d.ts +3 -0
- package/build-types/components/dataviews-filters/add-filter.d.ts.map +1 -1
- package/build-types/components/dataviews-filters/index.d.ts +11 -1
- package/build-types/components/dataviews-filters/index.d.ts.map +1 -1
- package/build-types/components/dataviews-search/index.d.ts.map +1 -1
- package/build-types/components/dataviews-view-config/index.d.ts +1 -1
- package/build-types/components/dataviews-view-config/index.d.ts.map +1 -1
- package/build-types/constants.d.ts +4 -0
- package/build-types/constants.d.ts.map +1 -1
- package/build-types/dataforms-layouts/index.d.ts +9 -0
- package/build-types/dataforms-layouts/index.d.ts.map +1 -0
- package/build-types/dataforms-layouts/panel/index.d.ts +3 -0
- package/build-types/dataforms-layouts/panel/index.d.ts.map +1 -0
- package/build-types/dataforms-layouts/regular/index.d.ts +3 -0
- package/build-types/dataforms-layouts/regular/index.d.ts.map +1 -0
- package/build-types/dataviews-layouts/grid/density-picker.d.ts.map +1 -0
- package/build-types/dataviews-layouts/grid/index.d.ts.map +1 -0
- package/build-types/dataviews-layouts/index.d.ts.map +1 -0
- package/build-types/dataviews-layouts/list/index.d.ts.map +1 -0
- package/build-types/dataviews-layouts/table/column-header-menu.d.ts.map +1 -0
- package/build-types/dataviews-layouts/table/index.d.ts.map +1 -0
- package/build-types/field-types/index.d.ts +20 -0
- package/build-types/field-types/index.d.ts.map +1 -0
- package/build-types/field-types/integer.d.ts +14 -0
- package/build-types/field-types/integer.d.ts.map +1 -0
- package/build-types/field-types/text.d.ts +14 -0
- package/build-types/field-types/text.d.ts.map +1 -0
- 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/normalize-fields.d.ts +0 -3
- package/build-types/normalize-fields.d.ts.map +1 -1
- package/build-types/types.d.ts +38 -3
- package/build-types/types.d.ts.map +1 -1
- package/build-types/validation.d.ts +3 -0
- package/build-types/validation.d.ts.map +1 -0
- package/package.json +12 -11
- package/src/components/dataform/index.tsx +8 -97
- package/src/components/dataform/stories/index.story.tsx +40 -3
- package/src/components/dataviews/index.tsx +20 -8
- package/src/components/dataviews/stories/fixtures.js +1 -0
- package/src/components/dataviews/style.scss +5 -2
- package/src/components/dataviews-bulk-actions/index.tsx +5 -0
- package/src/components/dataviews-filters/add-filter.tsx +37 -21
- package/src/components/dataviews-filters/index.tsx +149 -61
- package/src/components/dataviews-filters/style.scss +30 -0
- package/src/components/dataviews-layout/index.tsx +1 -1
- package/src/components/dataviews-search/index.tsx +8 -5
- package/src/components/dataviews-view-config/index.tsx +272 -258
- package/src/components/dataviews-view-config/style.scss +44 -0
- package/src/constants.ts +5 -0
- package/src/dataforms-layouts/index.tsx +20 -0
- package/src/dataforms-layouts/panel/index.tsx +164 -0
- package/src/dataforms-layouts/panel/style.scss +59 -0
- package/src/dataforms-layouts/regular/index.tsx +41 -0
- package/src/{layouts → dataviews-layouts}/grid/density-picker.tsx +2 -2
- package/src/{layouts → dataviews-layouts}/grid/index.tsx +8 -8
- package/src/{layouts → dataviews-layouts}/grid/style.scss +29 -0
- package/src/{layouts → dataviews-layouts}/list/style.scss +4 -1
- package/src/{layouts → dataviews-layouts}/table/column-header-menu.tsx +1 -1
- package/src/field-types/index.tsx +45 -0
- package/src/field-types/integer.tsx +103 -0
- package/src/field-types/text.tsx +95 -0
- package/src/filter-and-sort-data-view.ts +1 -15
- package/src/index.ts +2 -1
- package/src/normalize-fields.ts +44 -3
- package/src/style.scss +6 -3
- package/src/test/filter-and-sort-data-view.js +46 -3
- package/src/test/validation.ts +131 -0
- package/src/types.ts +50 -3
- package/src/validation.ts +18 -0
- package/tsconfig.json +2 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/build/layouts/grid/density-picker.js.map +0 -1
- package/build/layouts/grid/index.js.map +0 -1
- package/build/layouts/index.js.map +0 -1
- package/build/layouts/list/index.js.map +0 -1
- package/build/layouts/table/column-header-menu.js.map +0 -1
- package/build/layouts/table/index.js.map +0 -1
- package/build-module/layouts/grid/density-picker.js.map +0 -1
- package/build-module/layouts/grid/index.js.map +0 -1
- package/build-module/layouts/index.js.map +0 -1
- package/build-module/layouts/list/index.js.map +0 -1
- package/build-module/layouts/table/column-header-menu.js.map +0 -1
- package/build-module/layouts/table/index.js.map +0 -1
- package/build-types/layouts/grid/density-picker.d.ts.map +0 -1
- package/build-types/layouts/grid/index.d.ts.map +0 -1
- package/build-types/layouts/index.d.ts.map +0 -1
- package/build-types/layouts/list/index.d.ts.map +0 -1
- package/build-types/layouts/table/column-header-menu.d.ts.map +0 -1
- package/build-types/layouts/table/index.d.ts.map +0 -1
- /package/build/{layouts → dataviews-layouts}/index.js +0 -0
- /package/build/{layouts → dataviews-layouts}/list/index.js +0 -0
- /package/build/{layouts → dataviews-layouts}/table/index.js +0 -0
- /package/build-module/{layouts → dataviews-layouts}/index.js +0 -0
- /package/build-module/{layouts → dataviews-layouts}/list/index.js +0 -0
- /package/build-module/{layouts → dataviews-layouts}/table/index.js +0 -0
- /package/build-types/{layouts → dataviews-layouts}/grid/density-picker.d.ts +0 -0
- /package/build-types/{layouts → dataviews-layouts}/grid/index.d.ts +0 -0
- /package/build-types/{layouts → dataviews-layouts}/index.d.ts +0 -0
- /package/build-types/{layouts → dataviews-layouts}/list/index.d.ts +0 -0
- /package/build-types/{layouts → dataviews-layouts}/table/column-header-menu.d.ts +0 -0
- /package/build-types/{layouts → dataviews-layouts}/table/index.d.ts +0 -0
- /package/src/{layouts → dataviews-layouts}/index.ts +0 -0
- /package/src/{layouts → dataviews-layouts}/list/index.tsx +0 -0
- /package/src/{layouts → dataviews-layouts}/table/index.tsx +0 -0
- /package/src/{layouts → dataviews-layouts}/table/style.scss +0 -0
|
@@ -4,16 +4,22 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
|
+
exports.FilterVisibilityToggle = FilterVisibilityToggle;
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
exports.useFilters = useFilters;
|
|
8
10
|
var _element = require("@wordpress/element");
|
|
9
11
|
var _components = require("@wordpress/components");
|
|
12
|
+
var _icons = require("@wordpress/icons");
|
|
13
|
+
var _i18n = require("@wordpress/i18n");
|
|
10
14
|
var _filterSummary = _interopRequireDefault(require("./filter-summary"));
|
|
11
|
-
var _addFilter =
|
|
15
|
+
var _addFilter = _interopRequireWildcard(require("./add-filter"));
|
|
12
16
|
var _resetFilters = _interopRequireDefault(require("./reset-filters"));
|
|
13
17
|
var _dataviewsContext = _interopRequireDefault(require("../dataviews-context"));
|
|
14
18
|
var _utils = require("../../utils");
|
|
15
19
|
var _constants = require("../../constants");
|
|
16
20
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
|
+
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); }
|
|
22
|
+
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; }
|
|
17
23
|
/**
|
|
18
24
|
* WordPress dependencies
|
|
19
25
|
*/
|
|
@@ -22,6 +28,93 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
22
28
|
* Internal dependencies
|
|
23
29
|
*/
|
|
24
30
|
|
|
31
|
+
function useFilters(fields, view) {
|
|
32
|
+
return (0, _element.useMemo)(() => {
|
|
33
|
+
const filters = [];
|
|
34
|
+
fields.forEach(field => {
|
|
35
|
+
if (!field.elements?.length) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const operators = (0, _utils.sanitizeOperators)(field);
|
|
39
|
+
if (operators.length === 0) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const isPrimary = !!field.filterBy?.isPrimary;
|
|
43
|
+
filters.push({
|
|
44
|
+
field: field.id,
|
|
45
|
+
name: field.label,
|
|
46
|
+
elements: field.elements,
|
|
47
|
+
singleSelection: operators.some(op => [_constants.OPERATOR_IS, _constants.OPERATOR_IS_NOT].includes(op)),
|
|
48
|
+
operators,
|
|
49
|
+
isVisible: isPrimary || !!view.filters?.some(f => f.field === field.id && _constants.ALL_OPERATORS.includes(f.operator)),
|
|
50
|
+
isPrimary
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
// Sort filters by primary property. We need the primary filters to be first.
|
|
54
|
+
// Then we sort by name.
|
|
55
|
+
filters.sort((a, b) => {
|
|
56
|
+
if (a.isPrimary && !b.isPrimary) {
|
|
57
|
+
return -1;
|
|
58
|
+
}
|
|
59
|
+
if (!a.isPrimary && b.isPrimary) {
|
|
60
|
+
return 1;
|
|
61
|
+
}
|
|
62
|
+
return a.name.localeCompare(b.name);
|
|
63
|
+
});
|
|
64
|
+
return filters;
|
|
65
|
+
}, [fields, view]);
|
|
66
|
+
}
|
|
67
|
+
function FilterVisibilityToggle({
|
|
68
|
+
filters,
|
|
69
|
+
view,
|
|
70
|
+
onChangeView,
|
|
71
|
+
setOpenedFilter,
|
|
72
|
+
isShowingFilter,
|
|
73
|
+
setIsShowingFilter
|
|
74
|
+
}) {
|
|
75
|
+
const onChangeViewWithFilterVisibility = (0, _element.useCallback)(_view => {
|
|
76
|
+
onChangeView(_view);
|
|
77
|
+
setIsShowingFilter(true);
|
|
78
|
+
}, [onChangeView, setIsShowingFilter]);
|
|
79
|
+
const visibleFilters = filters.filter(filter => filter.isVisible);
|
|
80
|
+
const hasVisibleFilters = !!visibleFilters.length;
|
|
81
|
+
if (!hasVisibleFilters) {
|
|
82
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_addFilter.AddFilterDropdownMenu, {
|
|
83
|
+
filters: filters,
|
|
84
|
+
view: view,
|
|
85
|
+
onChangeView: onChangeViewWithFilterVisibility,
|
|
86
|
+
setOpenedFilter: setOpenedFilter,
|
|
87
|
+
trigger: /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
88
|
+
className: "dataviews-filters__visibility-toggle",
|
|
89
|
+
size: "compact",
|
|
90
|
+
icon: _icons.funnel,
|
|
91
|
+
label: (0, _i18n.__)('Add filter'),
|
|
92
|
+
isPressed: false,
|
|
93
|
+
"aria-expanded": false
|
|
94
|
+
})
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
98
|
+
className: "dataviews-filters__container-visibility-toggle",
|
|
99
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_components.Button, {
|
|
100
|
+
className: "dataviews-filters__visibility-toggle",
|
|
101
|
+
size: "compact",
|
|
102
|
+
icon: _icons.funnel,
|
|
103
|
+
label: (0, _i18n.__)('Toggle filter display'),
|
|
104
|
+
onClick: () => {
|
|
105
|
+
if (!isShowingFilter) {
|
|
106
|
+
setOpenedFilter(null);
|
|
107
|
+
}
|
|
108
|
+
setIsShowingFilter(!isShowingFilter);
|
|
109
|
+
},
|
|
110
|
+
isPressed: isShowingFilter,
|
|
111
|
+
"aria-expanded": isShowingFilter
|
|
112
|
+
}), hasVisibleFilters && !!view.filters?.length && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
113
|
+
className: "dataviews-filters-toggle__count",
|
|
114
|
+
children: view.filters?.length
|
|
115
|
+
})]
|
|
116
|
+
});
|
|
117
|
+
}
|
|
25
118
|
function Filters() {
|
|
26
119
|
const {
|
|
27
120
|
fields,
|
|
@@ -31,37 +124,7 @@ function Filters() {
|
|
|
31
124
|
setOpenedFilter
|
|
32
125
|
} = (0, _element.useContext)(_dataviewsContext.default);
|
|
33
126
|
const addFilterRef = (0, _element.useRef)(null);
|
|
34
|
-
const filters =
|
|
35
|
-
fields.forEach(field => {
|
|
36
|
-
if (!field.elements?.length) {
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
const operators = (0, _utils.sanitizeOperators)(field);
|
|
40
|
-
if (operators.length === 0) {
|
|
41
|
-
return;
|
|
42
|
-
}
|
|
43
|
-
const isPrimary = !!field.filterBy?.isPrimary;
|
|
44
|
-
filters.push({
|
|
45
|
-
field: field.id,
|
|
46
|
-
name: field.label,
|
|
47
|
-
elements: field.elements,
|
|
48
|
-
singleSelection: operators.some(op => [_constants.OPERATOR_IS, _constants.OPERATOR_IS_NOT].includes(op)),
|
|
49
|
-
operators,
|
|
50
|
-
isVisible: isPrimary || !!view.filters?.some(f => f.field === field.id && _constants.ALL_OPERATORS.includes(f.operator)),
|
|
51
|
-
isPrimary
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
// Sort filters by primary property. We need the primary filters to be first.
|
|
55
|
-
// Then we sort by name.
|
|
56
|
-
filters.sort((a, b) => {
|
|
57
|
-
if (a.isPrimary && !b.isPrimary) {
|
|
58
|
-
return -1;
|
|
59
|
-
}
|
|
60
|
-
if (!a.isPrimary && b.isPrimary) {
|
|
61
|
-
return 1;
|
|
62
|
-
}
|
|
63
|
-
return a.name.localeCompare(b.name);
|
|
64
|
-
});
|
|
127
|
+
const filters = useFilters(fields, view);
|
|
65
128
|
const addFilter = /*#__PURE__*/(0, _jsxRuntime.jsx)(_addFilter.default, {
|
|
66
129
|
filters: filters,
|
|
67
130
|
view: view,
|
|
@@ -69,10 +132,11 @@ function Filters() {
|
|
|
69
132
|
ref: addFilterRef,
|
|
70
133
|
setOpenedFilter: setOpenedFilter
|
|
71
134
|
}, "add-filter");
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
135
|
+
const visibleFilters = filters.filter(filter => filter.isVisible);
|
|
136
|
+
if (visibleFilters.length === 0) {
|
|
137
|
+
return null;
|
|
138
|
+
}
|
|
139
|
+
const filterComponents = [...visibleFilters.map(filter => {
|
|
76
140
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_filterSummary.default, {
|
|
77
141
|
filter: filter,
|
|
78
142
|
view: view,
|
|
@@ -81,18 +145,17 @@ function Filters() {
|
|
|
81
145
|
openedFilter: openedFilter
|
|
82
146
|
}, filter.field);
|
|
83
147
|
}), addFilter];
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}, "reset-filters"));
|
|
90
|
-
}
|
|
148
|
+
filterComponents.push( /*#__PURE__*/(0, _jsxRuntime.jsx)(_resetFilters.default, {
|
|
149
|
+
filters: filters,
|
|
150
|
+
view: view,
|
|
151
|
+
onChangeView: onChangeView
|
|
152
|
+
}, "reset-filters"));
|
|
91
153
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.__experimentalHStack, {
|
|
92
154
|
justify: "flex-start",
|
|
93
155
|
style: {
|
|
94
156
|
width: 'fit-content'
|
|
95
157
|
},
|
|
158
|
+
className: "dataviews-filters__container",
|
|
96
159
|
wrap: true,
|
|
97
160
|
children: filterComponents
|
|
98
161
|
});
|
|
@@ -1 +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":[]}
|
|
1
|
+
{"version":3,"names":["_element","require","_components","_icons","_i18n","_filterSummary","_interopRequireDefault","_addFilter","_interopRequireWildcard","_resetFilters","_dataviewsContext","_utils","_constants","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","useFilters","fields","view","useMemo","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","b","localeCompare","FilterVisibilityToggle","onChangeView","setOpenedFilter","isShowingFilter","setIsShowingFilter","onChangeViewWithFilterVisibility","useCallback","_view","visibleFilters","filter","hasVisibleFilters","jsx","AddFilterDropdownMenu","trigger","Button","className","size","icon","funnel","__","isPressed","jsxs","children","onClick","Filters","openedFilter","useContext","DataViewsContext","addFilterRef","useRef","addFilter","ref","filterComponents","map","__experimentalHStack","justify","style","width","wrap","_default","exports","memo"],"sources":["@wordpress/dataviews/src/components/dataviews-filters/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tmemo,\n\tuseContext,\n\tuseRef,\n\tuseMemo,\n\tuseCallback,\n} from '@wordpress/element';\nimport { __experimentalHStack as HStack, Button } from '@wordpress/components';\nimport { funnel } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport FilterSummary from './filter-summary';\nimport { default as AddFilter, AddFilterDropdownMenu } 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, NormalizedField, View } from '../../types';\n\nexport function useFilters( fields: NormalizedField< any >[], view: View ) {\n\treturn useMemo( () => {\n\t\tconst filters: NormalizedFilter[] = [];\n\t\tfields.forEach( ( field ) => {\n\t\t\tif ( ! field.elements?.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst operators = sanitizeOperators( field );\n\t\t\tif ( operators.length === 0 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst isPrimary = !! field.filterBy?.isPrimary;\n\t\t\tfilters.push( {\n\t\t\t\tfield: field.id,\n\t\t\t\tname: field.label,\n\t\t\t\telements: field.elements,\n\t\t\t\tsingleSelection: operators.some( ( op ) =>\n\t\t\t\t\t[ OPERATOR_IS, OPERATOR_IS_NOT ].includes( op )\n\t\t\t\t),\n\t\t\t\toperators,\n\t\t\t\tisVisible:\n\t\t\t\t\tisPrimary ||\n\t\t\t\t\t!! view.filters?.some(\n\t\t\t\t\t\t( f ) =>\n\t\t\t\t\t\t\tf.field === field.id &&\n\t\t\t\t\t\t\tALL_OPERATORS.includes( f.operator )\n\t\t\t\t\t),\n\t\t\t\tisPrimary,\n\t\t\t} );\n\t\t} );\n\t\t// Sort filters by primary property. We need the primary filters to be first.\n\t\t// Then we sort by name.\n\t\tfilters.sort( ( a, b ) => {\n\t\t\tif ( a.isPrimary && ! b.isPrimary ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif ( ! a.isPrimary && b.isPrimary ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn a.name.localeCompare( b.name );\n\t\t} );\n\t\treturn filters;\n\t}, [ fields, view ] );\n}\n\nexport function FilterVisibilityToggle( {\n\tfilters,\n\tview,\n\tonChangeView,\n\tsetOpenedFilter,\n\tisShowingFilter,\n\tsetIsShowingFilter,\n}: {\n\tfilters: NormalizedFilter[];\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n\tsetOpenedFilter: ( filter: string | null ) => void;\n\tisShowingFilter: boolean;\n\tsetIsShowingFilter: React.Dispatch< React.SetStateAction< boolean > >;\n} ) {\n\tconst onChangeViewWithFilterVisibility = useCallback(\n\t\t( _view: View ) => {\n\t\t\tonChangeView( _view );\n\t\t\tsetIsShowingFilter( true );\n\t\t},\n\t\t[ onChangeView, setIsShowingFilter ]\n\t);\n\tconst visibleFilters = filters.filter( ( filter ) => filter.isVisible );\n\n\tconst hasVisibleFilters = !! visibleFilters.length;\n\tif ( ! hasVisibleFilters ) {\n\t\treturn (\n\t\t\t<AddFilterDropdownMenu\n\t\t\t\tfilters={ filters }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeViewWithFilterVisibility }\n\t\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t\t\ttrigger={\n\t\t\t\t\t<Button\n\t\t\t\t\t\tclassName=\"dataviews-filters__visibility-toggle\"\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\ticon={ funnel }\n\t\t\t\t\t\tlabel={ __( 'Add filter' ) }\n\t\t\t\t\t\tisPressed={ false }\n\t\t\t\t\t\taria-expanded={ false }\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t/>\n\t\t);\n\t}\n\treturn (\n\t\t<div className=\"dataviews-filters__container-visibility-toggle\">\n\t\t\t<Button\n\t\t\t\tclassName=\"dataviews-filters__visibility-toggle\"\n\t\t\t\tsize=\"compact\"\n\t\t\t\ticon={ funnel }\n\t\t\t\tlabel={ __( 'Toggle filter display' ) }\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tif ( ! isShowingFilter ) {\n\t\t\t\t\t\tsetOpenedFilter( null );\n\t\t\t\t\t}\n\t\t\t\t\tsetIsShowingFilter( ! isShowingFilter );\n\t\t\t\t} }\n\t\t\t\tisPressed={ isShowingFilter }\n\t\t\t\taria-expanded={ isShowingFilter }\n\t\t\t/>\n\t\t\t{ hasVisibleFilters && !! view.filters?.length && (\n\t\t\t\t<span className=\"dataviews-filters-toggle__count\">\n\t\t\t\t\t{ view.filters?.length }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Filters() {\n\tconst { fields, view, onChangeView, openedFilter, setOpenedFilter } =\n\t\tuseContext( DataViewsContext );\n\tconst addFilterRef = useRef< HTMLButtonElement >( null );\n\tconst filters = useFilters( fields, view );\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 visibleFilters = filters.filter( ( filter ) => filter.isVisible );\n\tif ( visibleFilters.length === 0 ) {\n\t\treturn null;\n\t}\n\tconst filterComponents = [\n\t\t...visibleFilters.map( ( filter ) => {\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\tfilterComponents.push(\n\t\t<ResetFilters\n\t\t\tkey=\"reset-filters\"\n\t\t\tfilters={ filters }\n\t\t\tview={ view }\n\t\t\tonChangeView={ onChangeView }\n\t\t/>\n\t);\n\n\treturn (\n\t\t<HStack\n\t\t\tjustify=\"flex-start\"\n\t\t\tstyle={ { width: 'fit-content' } }\n\t\t\tclassName=\"dataviews-filters__container\"\n\t\t\twrap\n\t\t>\n\t\t\t{ filterComponents }\n\t\t</HStack>\n\t);\n}\n\nexport default memo( Filters );\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = DataViewsLayout;
|
|
8
8
|
var _element = require("@wordpress/element");
|
|
9
9
|
var _dataviewsContext = _interopRequireDefault(require("../dataviews-context"));
|
|
10
|
-
var
|
|
10
|
+
var _dataviewsLayouts = require("../../dataviews-layouts");
|
|
11
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
12
|
/**
|
|
13
13
|
* External dependencies
|
|
@@ -35,7 +35,7 @@ function DataViewsLayout() {
|
|
|
35
35
|
setOpenedFilter,
|
|
36
36
|
density
|
|
37
37
|
} = (0, _element.useContext)(_dataviewsContext.default);
|
|
38
|
-
const ViewComponent =
|
|
38
|
+
const ViewComponent = _dataviewsLayouts.VIEW_LAYOUTS.find(v => v.type === view.type)?.component;
|
|
39
39
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(ViewComponent, {
|
|
40
40
|
actions: actions,
|
|
41
41
|
data: data,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_element","require","_dataviewsContext","_interopRequireDefault","
|
|
1
|
+
{"version":3,"names":["_element","require","_dataviewsContext","_interopRequireDefault","_dataviewsLayouts","_jsxRuntime","DataViewsLayout","actions","data","fields","getItemId","isLoading","view","onChangeView","selection","onChangeSelection","setOpenedFilter","density","useContext","DataViewsContext","ViewComponent","VIEW_LAYOUTS","find","v","type","component","jsx"],"sources":["@wordpress/dataviews/src/components/dataviews-layout/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ComponentType } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useContext } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../dataviews-context';\nimport { VIEW_LAYOUTS } from '../../dataviews-layouts';\nimport type { ViewBaseProps } from '../../types';\n\nexport default function DataViewsLayout() {\n\tconst {\n\t\tactions = [],\n\t\tdata,\n\t\tfields,\n\t\tgetItemId,\n\t\tisLoading,\n\t\tview,\n\t\tonChangeView,\n\t\tselection,\n\t\tonChangeSelection,\n\t\tsetOpenedFilter,\n\t\tdensity,\n\t} = useContext( DataViewsContext );\n\n\tconst ViewComponent = VIEW_LAYOUTS.find( ( v ) => v.type === view.type )\n\t\t?.component as ComponentType< ViewBaseProps< any > >;\n\n\treturn (\n\t\t<ViewComponent\n\t\t\tactions={ actions }\n\t\t\tdata={ data }\n\t\t\tfields={ fields }\n\t\t\tgetItemId={ getItemId }\n\t\t\tisLoading={ isLoading }\n\t\t\tonChangeView={ onChangeView }\n\t\t\tonChangeSelection={ onChangeSelection }\n\t\t\tselection={ selection }\n\t\t\tsetOpenedFilter={ setOpenedFilter }\n\t\t\tview={ view }\n\t\t\tdensity={ density }\n\t\t/>\n\t);\n}\n"],"mappings":";;;;;;;AAQA,IAAAA,QAAA,GAAAC,OAAA;AAKA,IAAAC,iBAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAAuD,IAAAI,WAAA,GAAAJ,OAAA;AAdvD;AACA;AACA;;AAGA;AACA;AACA;;AAGA;AACA;AACA;;AAKe,SAASK,eAAeA,CAAA,EAAG;EACzC,MAAM;IACLC,OAAO,GAAG,EAAE;IACZC,IAAI;IACJC,MAAM;IACNC,SAAS;IACTC,SAAS;IACTC,IAAI;IACJC,YAAY;IACZC,SAAS;IACTC,iBAAiB;IACjBC,eAAe;IACfC;EACD,CAAC,GAAG,IAAAC,mBAAU,EAAEC,yBAAiB,CAAC;EAElC,MAAMC,aAAa,GAAGC,8BAAY,CAACC,IAAI,CAAIC,CAAC,IAAMA,CAAC,CAACC,IAAI,KAAKZ,IAAI,CAACY,IAAK,CAAC,EACrEC,SAAkD;EAErD,oBACC,IAAApB,WAAA,CAAAqB,GAAA,EAACN,aAAa;IACbb,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,MAAM,EAAGA,MAAQ;IACjBC,SAAS,EAAGA,SAAW;IACvBC,SAAS,EAAGA,SAAW;IACvBE,YAAY,EAAGA,YAAc;IAC7BE,iBAAiB,EAAGA,iBAAmB;IACvCD,SAAS,EAAGA,SAAW;IACvBE,eAAe,EAAGA,eAAiB;IACnCJ,IAAI,EAAGA,IAAM;IACbK,OAAO,EAAGA;EAAS,CACnB,CAAC;AAEJ","ignoreList":[]}
|
|
@@ -38,14 +38,17 @@ const DataViewsSearch = (0, _element.memo)(function Search({
|
|
|
38
38
|
viewRef.current = view;
|
|
39
39
|
}, [onChangeView, view]);
|
|
40
40
|
(0, _element.useEffect)(() => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
41
|
+
if (debouncedSearch !== viewRef.current?.search) {
|
|
42
|
+
onChangeViewRef.current({
|
|
43
|
+
...viewRef.current,
|
|
44
|
+
page: 1,
|
|
45
|
+
search: debouncedSearch
|
|
46
|
+
});
|
|
47
|
+
}
|
|
46
48
|
}, [debouncedSearch]);
|
|
47
49
|
const searchLabel = label || (0, _i18n.__)('Search');
|
|
48
50
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_components.SearchControl, {
|
|
51
|
+
className: "dataviews-search",
|
|
49
52
|
__nextHasNoMarginBottom: true,
|
|
50
53
|
onChange: setSearch,
|
|
51
54
|
value: search,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","_components","_compose","_dataviewsContext","_interopRequireDefault","_jsxRuntime","DataViewsSearch","memo","Search","label","view","onChangeView","useContext","DataViewsContext","search","setSearch","debouncedSearch","useDebouncedInput","useEffect","_view$search","onChangeViewRef","useRef","viewRef","current","page","searchLabel","__","jsx","SearchControl","__nextHasNoMarginBottom","onChange","value","placeholder","size","_default","exports","default"],"sources":["@wordpress/dataviews/src/components/dataviews-search/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, memo, useContext } from '@wordpress/element';\nimport { SearchControl } from '@wordpress/components';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../dataviews-context';\n\ninterface SearchProps {\n\tlabel?: string;\n}\n\nconst DataViewsSearch = memo( function Search( { label }: SearchProps ) {\n\tconst { view, onChangeView } = useContext( DataViewsContext );\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput(\n\t\tview.search\n\t);\n\tuseEffect( () => {\n\t\tsetSearch( view.search ?? '' );\n\t}, [ view.search, setSearch ] );\n\tconst onChangeViewRef = useRef( onChangeView );\n\tconst viewRef = useRef( view );\n\tuseEffect( () => {\n\t\tonChangeViewRef.current = onChangeView;\n\t\tviewRef.current = view;\n\t}, [ onChangeView, view ] );\n\tuseEffect( () => {\n\t\tonChangeViewRef.current( {\n\t\t\t...viewRef.current,\n\t\t\tpage: 1,\n\t\t\tsearch: debouncedSearch,\n\t\t} );\n\t}, [ debouncedSearch ] );\n\tconst searchLabel = label || __( 'Search' );\n\treturn (\n\t\t<SearchControl\n\t\t\t__nextHasNoMarginBottom\n\t\t\tonChange={ setSearch }\n\t\t\tvalue={ search }\n\t\t\tlabel={ searchLabel }\n\t\t\tplaceholder={ searchLabel }\n\t\t\tsize=\"compact\"\n\t\t/>\n\t);\n} );\n\nexport default DataViewsSearch;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,iBAAA,GAAAC,sBAAA,CAAAL,OAAA;AAAoD,IAAAM,WAAA,GAAAN,OAAA;AAXpD;AACA;AACA;;AAMA;AACA;AACA;;AAOA,MAAMO,eAAe,GAAG,IAAAC,aAAI,EAAE,SAASC,MAAMA,CAAE;EAAEC;AAAmB,CAAC,EAAG;EACvE,MAAM;IAAEC,IAAI;IAAEC;EAAa,CAAC,GAAG,IAAAC,mBAAU,EAAEC,yBAAiB,CAAC;EAC7D,MAAM,CAAEC,MAAM,EAAEC,SAAS,EAAEC,eAAe,CAAE,GAAG,IAAAC,0BAAiB,EAC/DP,IAAI,CAACI,MACN,CAAC;EACD,IAAAI,kBAAS,EAAE,MAAM;IAAA,IAAAC,YAAA;IAChBJ,SAAS,EAAAI,YAAA,GAAET,IAAI,CAACI,MAAM,cAAAK,YAAA,cAAAA,YAAA,GAAI,EAAG,CAAC;EAC/B,CAAC,EAAE,CAAET,IAAI,CAACI,MAAM,EAAEC,SAAS,CAAG,CAAC;EAC/B,MAAMK,eAAe,GAAG,IAAAC,eAAM,EAAEV,YAAa,CAAC;EAC9C,MAAMW,OAAO,GAAG,IAAAD,eAAM,EAAEX,IAAK,CAAC;EAC9B,IAAAQ,kBAAS,EAAE,MAAM;IAChBE,eAAe,CAACG,OAAO,GAAGZ,YAAY;IACtCW,OAAO,CAACC,OAAO,GAAGb,IAAI;EACvB,CAAC,EAAE,CAAEC,YAAY,EAAED,IAAI,CAAG,CAAC;EAC3B,IAAAQ,kBAAS,EAAE,MAAM;
|
|
1
|
+
{"version":3,"names":["_i18n","require","_element","_components","_compose","_dataviewsContext","_interopRequireDefault","_jsxRuntime","DataViewsSearch","memo","Search","label","view","onChangeView","useContext","DataViewsContext","search","setSearch","debouncedSearch","useDebouncedInput","useEffect","_view$search","onChangeViewRef","useRef","viewRef","current","page","searchLabel","__","jsx","SearchControl","className","__nextHasNoMarginBottom","onChange","value","placeholder","size","_default","exports","default"],"sources":["@wordpress/dataviews/src/components/dataviews-search/index.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef, memo, useContext } from '@wordpress/element';\nimport { SearchControl } from '@wordpress/components';\nimport { useDebouncedInput } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport DataViewsContext from '../dataviews-context';\n\ninterface SearchProps {\n\tlabel?: string;\n}\n\nconst DataViewsSearch = memo( function Search( { label }: SearchProps ) {\n\tconst { view, onChangeView } = useContext( DataViewsContext );\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput(\n\t\tview.search\n\t);\n\tuseEffect( () => {\n\t\tsetSearch( view.search ?? '' );\n\t}, [ view.search, setSearch ] );\n\tconst onChangeViewRef = useRef( onChangeView );\n\tconst viewRef = useRef( view );\n\tuseEffect( () => {\n\t\tonChangeViewRef.current = onChangeView;\n\t\tviewRef.current = view;\n\t}, [ onChangeView, view ] );\n\tuseEffect( () => {\n\t\tif ( debouncedSearch !== viewRef.current?.search ) {\n\t\t\tonChangeViewRef.current( {\n\t\t\t\t...viewRef.current,\n\t\t\t\tpage: 1,\n\t\t\t\tsearch: debouncedSearch,\n\t\t\t} );\n\t\t}\n\t}, [ debouncedSearch ] );\n\tconst searchLabel = label || __( 'Search' );\n\treturn (\n\t\t<SearchControl\n\t\t\tclassName=\"dataviews-search\"\n\t\t\t__nextHasNoMarginBottom\n\t\t\tonChange={ setSearch }\n\t\t\tvalue={ search }\n\t\t\tlabel={ searchLabel }\n\t\t\tplaceholder={ searchLabel }\n\t\t\tsize=\"compact\"\n\t\t/>\n\t);\n} );\n\nexport default DataViewsSearch;\n"],"mappings":";;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAKA,IAAAI,iBAAA,GAAAC,sBAAA,CAAAL,OAAA;AAAoD,IAAAM,WAAA,GAAAN,OAAA;AAXpD;AACA;AACA;;AAMA;AACA;AACA;;AAOA,MAAMO,eAAe,GAAG,IAAAC,aAAI,EAAE,SAASC,MAAMA,CAAE;EAAEC;AAAmB,CAAC,EAAG;EACvE,MAAM;IAAEC,IAAI;IAAEC;EAAa,CAAC,GAAG,IAAAC,mBAAU,EAAEC,yBAAiB,CAAC;EAC7D,MAAM,CAAEC,MAAM,EAAEC,SAAS,EAAEC,eAAe,CAAE,GAAG,IAAAC,0BAAiB,EAC/DP,IAAI,CAACI,MACN,CAAC;EACD,IAAAI,kBAAS,EAAE,MAAM;IAAA,IAAAC,YAAA;IAChBJ,SAAS,EAAAI,YAAA,GAAET,IAAI,CAACI,MAAM,cAAAK,YAAA,cAAAA,YAAA,GAAI,EAAG,CAAC;EAC/B,CAAC,EAAE,CAAET,IAAI,CAACI,MAAM,EAAEC,SAAS,CAAG,CAAC;EAC/B,MAAMK,eAAe,GAAG,IAAAC,eAAM,EAAEV,YAAa,CAAC;EAC9C,MAAMW,OAAO,GAAG,IAAAD,eAAM,EAAEX,IAAK,CAAC;EAC9B,IAAAQ,kBAAS,EAAE,MAAM;IAChBE,eAAe,CAACG,OAAO,GAAGZ,YAAY;IACtCW,OAAO,CAACC,OAAO,GAAGb,IAAI;EACvB,CAAC,EAAE,CAAEC,YAAY,EAAED,IAAI,CAAG,CAAC;EAC3B,IAAAQ,kBAAS,EAAE,MAAM;IAChB,IAAKF,eAAe,KAAKM,OAAO,CAACC,OAAO,EAAET,MAAM,EAAG;MAClDM,eAAe,CAACG,OAAO,CAAE;QACxB,GAAGD,OAAO,CAACC,OAAO;QAClBC,IAAI,EAAE,CAAC;QACPV,MAAM,EAAEE;MACT,CAAE,CAAC;IACJ;EACD,CAAC,EAAE,CAAEA,eAAe,CAAG,CAAC;EACxB,MAAMS,WAAW,GAAGhB,KAAK,IAAI,IAAAiB,QAAE,EAAE,QAAS,CAAC;EAC3C,oBACC,IAAArB,WAAA,CAAAsB,GAAA,EAAC1B,WAAA,CAAA2B,aAAa;IACbC,SAAS,EAAC,kBAAkB;IAC5BC,uBAAuB;IACvBC,QAAQ,EAAGhB,SAAW;IACtBiB,KAAK,EAAGlB,MAAQ;IAChBL,KAAK,EAAGgB,WAAa;IACrBQ,WAAW,EAAGR,WAAa;IAC3BS,IAAI,EAAC;EAAS,CACd,CAAC;AAEJ,CAAE,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEW/B,eAAe","ignoreList":[]}
|