@wordpress/dataviews 1.2.0 → 2.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 +16 -0
- package/README.md +33 -30
- package/build/add-filter.js +30 -22
- package/build/add-filter.js.map +1 -1
- package/build/bulk-actions-toolbar.js +74 -69
- package/build/bulk-actions-toolbar.js.map +1 -1
- package/build/bulk-actions.js +69 -56
- package/build/bulk-actions.js.map +1 -1
- package/build/constants.js +17 -10
- package/build/constants.js.map +1 -1
- package/build/dataviews.js +63 -56
- package/build/dataviews.js.map +1 -1
- package/build/filter-summary.js +105 -95
- package/build/filter-summary.js.map +1 -1
- package/build/filters.js +18 -17
- package/build/filters.js.map +1 -1
- package/build/index.js.map +1 -1
- package/build/item-actions.js +78 -65
- package/build/item-actions.js.map +1 -1
- package/build/layouts.js.map +1 -1
- package/build/pagination.js +60 -57
- package/build/pagination.js.map +1 -1
- package/build/reset-filters.js +9 -4
- package/build/reset-filters.js.map +1 -1
- package/build/search-widget.js +108 -89
- package/build/search-widget.js.map +1 -1
- package/build/search.js +13 -6
- package/build/search.js.map +1 -1
- package/build/single-selection-checkbox.js +2 -2
- package/build/single-selection-checkbox.js.map +1 -1
- package/build/types.js.map +1 -1
- package/build/utils.js +3 -15
- package/build/utils.js.map +1 -1
- package/build/view-actions.js +168 -120
- package/build/view-actions.js.map +1 -1
- package/build/view-grid.js +113 -99
- package/build/view-grid.js.map +1 -1
- package/build/view-list.js +153 -132
- package/build/view-list.js.map +1 -1
- package/build/view-table.js +220 -192
- package/build/view-table.js.map +1 -1
- package/build-module/add-filter.js +30 -22
- package/build-module/add-filter.js.map +1 -1
- package/build-module/bulk-actions-toolbar.js +76 -69
- package/build-module/bulk-actions-toolbar.js.map +1 -1
- package/build-module/bulk-actions.js +71 -56
- package/build-module/bulk-actions.js.map +1 -1
- package/build-module/constants.js +16 -9
- package/build-module/constants.js.map +1 -1
- package/build-module/dataviews.js +64 -56
- package/build-module/dataviews.js.map +1 -1
- package/build-module/filter-summary.js +106 -96
- package/build-module/filter-summary.js.map +1 -1
- package/build-module/filters.js +18 -17
- package/build-module/filters.js.map +1 -1
- package/build-module/index.js.map +1 -1
- package/build-module/item-actions.js +80 -65
- package/build-module/item-actions.js.map +1 -1
- package/build-module/layouts.js.map +1 -1
- package/build-module/pagination.js +61 -58
- package/build-module/pagination.js.map +1 -1
- package/build-module/reset-filters.js +9 -4
- package/build-module/reset-filters.js.map +1 -1
- package/build-module/search-widget.js +109 -89
- package/build-module/search-widget.js.map +1 -1
- package/build-module/search.js +13 -6
- package/build-module/search.js.map +1 -1
- package/build-module/single-selection-checkbox.js +2 -3
- package/build-module/single-selection-checkbox.js.map +1 -1
- package/build-module/types.js.map +1 -1
- package/build-module/utils.js +2 -13
- package/build-module/utils.js.map +1 -1
- package/build-module/view-actions.js +170 -121
- package/build-module/view-actions.js.map +1 -1
- package/build-module/view-grid.js +115 -99
- package/build-module/view-grid.js.map +1 -1
- package/build-module/view-list.js +154 -132
- package/build-module/view-list.js.map +1 -1
- package/build-module/view-table.js +223 -194
- package/build-module/view-table.js.map +1 -1
- package/build-style/style-rtl.css +109 -20
- package/build-style/style.css +109 -20
- package/build-types/add-filter.d.ts +9 -6
- package/build-types/add-filter.d.ts.map +1 -1
- package/build-types/bulk-actions-toolbar.d.ts +11 -7
- package/build-types/bulk-actions-toolbar.d.ts.map +1 -1
- package/build-types/bulk-actions.d.ts.map +1 -1
- package/build-types/constants.d.ts +19 -32
- package/build-types/constants.d.ts.map +1 -1
- package/build-types/dataviews.d.ts +21 -14
- package/build-types/dataviews.d.ts.map +1 -1
- package/build-types/filter-summary.d.ts +13 -5
- package/build-types/filter-summary.d.ts.map +1 -1
- package/build-types/filters.d.ts +11 -1
- package/build-types/filters.d.ts.map +1 -1
- package/build-types/index.d.ts +3 -3
- package/build-types/index.d.ts.map +1 -1
- package/build-types/item-actions.d.ts +5 -7
- package/build-types/item-actions.d.ts.map +1 -1
- package/build-types/layouts.d.ts +8 -4
- package/build-types/layouts.d.ts.map +1 -1
- package/build-types/reset-filters.d.ts +12 -5
- package/build-types/reset-filters.d.ts.map +1 -1
- package/build-types/search-widget.d.ts +9 -1
- package/build-types/search-widget.d.ts.map +1 -1
- package/build-types/search.d.ts +11 -1
- package/build-types/search.d.ts.map +1 -1
- package/build-types/types.d.ts +78 -10
- package/build-types/types.d.ts.map +1 -1
- package/build-types/utils.d.ts +2 -1
- package/build-types/utils.d.ts.map +1 -1
- package/build-types/view-actions.d.ts +10 -1
- package/build-types/view-actions.d.ts.map +1 -1
- package/build-types/view-grid.d.ts +1 -12
- package/build-types/view-grid.d.ts.map +1 -1
- package/build-types/view-list.d.ts +2 -14
- package/build-types/view-list.d.ts.map +1 -1
- package/build-types/view-table.d.ts +3 -12
- package/build-types/view-table.d.ts.map +1 -1
- package/package.json +11 -12
- package/src/{add-filter.js → add-filter.tsx} +17 -1
- package/src/{bulk-actions-toolbar.js → bulk-actions-toolbar.tsx} +68 -40
- package/src/bulk-actions.tsx +5 -1
- package/src/constants.ts +12 -5
- package/src/{dataviews.js → dataviews.tsx} +41 -12
- package/src/{filter-summary.js → filter-summary.tsx} +35 -6
- package/src/{filters.js → filters.tsx} +18 -6
- package/src/item-actions.tsx +20 -15
- package/src/pagination.tsx +1 -1
- package/src/{reset-filters.js → reset-filters.tsx} +17 -2
- package/src/{search-widget.js → search-widget.tsx} +27 -7
- package/src/{search.js → search.tsx} +22 -5
- package/src/style.scss +97 -23
- package/src/types.ts +105 -10
- package/src/{utils.js → utils.ts} +5 -13
- package/src/{view-actions.js → view-actions.tsx} +105 -49
- package/src/view-grid.tsx +4 -20
- package/src/view-list.tsx +12 -23
- package/src/{view-table.js → view-table.tsx} +91 -32
- package/tsconfig.json +0 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/build/dropdown-menu-helper.js +0 -71
- package/build/dropdown-menu-helper.js.map +0 -1
- package/build-module/dropdown-menu-helper.js +0 -64
- package/build-module/dropdown-menu-helper.js.map +0 -1
- package/build-types/dropdown-menu-helper.d.ts +0 -6
- package/build-types/dropdown-menu-helper.d.ts.map +0 -1
- package/src/dropdown-menu-helper.js +0 -61
- /package/src/{index.js → index.ts} +0 -0
- /package/src/{layouts.js → layouts.ts} +0 -0
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { createElement, Fragment } from "react";
|
|
2
1
|
/**
|
|
3
2
|
* External dependencies
|
|
4
3
|
*/
|
|
@@ -15,6 +14,9 @@ import { moreVertical } from '@wordpress/icons';
|
|
|
15
14
|
* Internal dependencies
|
|
16
15
|
*/
|
|
17
16
|
import { unlock } from './lock-unlock';
|
|
17
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
18
|
+
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
19
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
18
20
|
const {
|
|
19
21
|
DropdownMenuV2: DropdownMenu,
|
|
20
22
|
DropdownMenuGroupV2: DropdownMenuGroup,
|
|
@@ -24,10 +26,12 @@ const {
|
|
|
24
26
|
} = unlock(componentsPrivateApis);
|
|
25
27
|
function ButtonTrigger({
|
|
26
28
|
action,
|
|
27
|
-
onClick
|
|
29
|
+
onClick,
|
|
30
|
+
items
|
|
28
31
|
}) {
|
|
29
|
-
|
|
30
|
-
|
|
32
|
+
const label = typeof action.label === 'string' ? action.label : action.label(items);
|
|
33
|
+
return /*#__PURE__*/_jsx(Button, {
|
|
34
|
+
label: label,
|
|
31
35
|
icon: action.icon,
|
|
32
36
|
isDestructive: action.isDestructive,
|
|
33
37
|
size: "compact",
|
|
@@ -36,29 +40,36 @@ function ButtonTrigger({
|
|
|
36
40
|
}
|
|
37
41
|
function DropdownMenuItemTrigger({
|
|
38
42
|
action,
|
|
39
|
-
onClick
|
|
43
|
+
onClick,
|
|
44
|
+
items
|
|
40
45
|
}) {
|
|
41
|
-
|
|
46
|
+
const label = typeof action.label === 'string' ? action.label : action.label(items);
|
|
47
|
+
return /*#__PURE__*/_jsx(DropdownMenuItem, {
|
|
42
48
|
onClick: onClick,
|
|
43
|
-
hideOnClick: !('RenderModal' in action)
|
|
44
|
-
|
|
49
|
+
hideOnClick: !('RenderModal' in action),
|
|
50
|
+
children: /*#__PURE__*/_jsx(DropdownMenuItemLabel, {
|
|
51
|
+
children: label
|
|
52
|
+
})
|
|
53
|
+
});
|
|
45
54
|
}
|
|
46
55
|
export function ActionModal({
|
|
47
56
|
action,
|
|
48
57
|
items,
|
|
49
58
|
closeModal
|
|
50
59
|
}) {
|
|
51
|
-
|
|
52
|
-
|
|
60
|
+
const label = typeof action.label === 'string' ? action.label : action.label(items);
|
|
61
|
+
return /*#__PURE__*/_jsx(Modal, {
|
|
62
|
+
title: action.modalHeader || label,
|
|
53
63
|
__experimentalHideHeader: !!action.hideModalHeader,
|
|
54
64
|
onRequestClose: closeModal !== null && closeModal !== void 0 ? closeModal : () => {},
|
|
55
|
-
overlayClassName: `dataviews-action-modal dataviews-action-modal__${kebabCase(action.id)}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
65
|
+
overlayClassName: `dataviews-action-modal dataviews-action-modal__${kebabCase(action.id)}`,
|
|
66
|
+
children: /*#__PURE__*/_jsx(action.RenderModal, {
|
|
67
|
+
items: items,
|
|
68
|
+
closeModal: closeModal,
|
|
69
|
+
onActionStart: action.onActionStart,
|
|
70
|
+
onActionPerformed: action.onActionPerformed
|
|
71
|
+
})
|
|
72
|
+
});
|
|
62
73
|
}
|
|
63
74
|
export function ActionWithModal({
|
|
64
75
|
action,
|
|
@@ -75,33 +86,36 @@ export function ActionWithModal({
|
|
|
75
86
|
items,
|
|
76
87
|
isBusy
|
|
77
88
|
};
|
|
78
|
-
return
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
89
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
90
|
+
children: [/*#__PURE__*/_jsx(ActionTrigger, {
|
|
91
|
+
...actionTriggerProps
|
|
92
|
+
}), isModalOpen && /*#__PURE__*/_jsx(ActionModal, {
|
|
93
|
+
action: action,
|
|
94
|
+
items: items,
|
|
95
|
+
closeModal: () => setIsModalOpen(false)
|
|
96
|
+
})]
|
|
97
|
+
});
|
|
85
98
|
}
|
|
86
99
|
export function ActionsDropdownMenuGroup({
|
|
87
100
|
actions,
|
|
88
101
|
item
|
|
89
102
|
}) {
|
|
90
|
-
return
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
103
|
+
return /*#__PURE__*/_jsx(DropdownMenuGroup, {
|
|
104
|
+
children: actions.map(action => {
|
|
105
|
+
if ('RenderModal' in action) {
|
|
106
|
+
return /*#__PURE__*/_jsx(ActionWithModal, {
|
|
107
|
+
action: action,
|
|
108
|
+
items: [item],
|
|
109
|
+
ActionTrigger: DropdownMenuItemTrigger
|
|
110
|
+
}, action.id);
|
|
111
|
+
}
|
|
112
|
+
return /*#__PURE__*/_jsx(DropdownMenuItemTrigger, {
|
|
94
113
|
action: action,
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
key: action.id,
|
|
101
|
-
action: action,
|
|
102
|
-
onClick: () => action.callback([item])
|
|
103
|
-
});
|
|
104
|
-
}));
|
|
114
|
+
onClick: () => action.callback([item]),
|
|
115
|
+
items: [item]
|
|
116
|
+
}, action.id);
|
|
117
|
+
})
|
|
118
|
+
});
|
|
105
119
|
}
|
|
106
120
|
export default function ItemActions({
|
|
107
121
|
item,
|
|
@@ -122,54 +136,55 @@ export default function ItemActions({
|
|
|
122
136
|
};
|
|
123
137
|
}, [actions, item]);
|
|
124
138
|
if (isCompact) {
|
|
125
|
-
return
|
|
139
|
+
return /*#__PURE__*/_jsx(CompactItemActions, {
|
|
126
140
|
item: item,
|
|
127
141
|
actions: eligibleActions
|
|
128
142
|
});
|
|
129
143
|
}
|
|
130
|
-
return
|
|
144
|
+
return /*#__PURE__*/_jsxs(HStack, {
|
|
131
145
|
spacing: 1,
|
|
132
146
|
justify: "flex-end",
|
|
133
147
|
className: "dataviews-item-actions",
|
|
134
148
|
style: {
|
|
135
149
|
flexShrink: '0',
|
|
136
150
|
width: 'auto'
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
151
|
+
},
|
|
152
|
+
children: [!!primaryActions.length && primaryActions.map(action => {
|
|
153
|
+
if ('RenderModal' in action) {
|
|
154
|
+
return /*#__PURE__*/_jsx(ActionWithModal, {
|
|
155
|
+
action: action,
|
|
156
|
+
items: [item],
|
|
157
|
+
ActionTrigger: ButtonTrigger
|
|
158
|
+
}, action.id);
|
|
159
|
+
}
|
|
160
|
+
return /*#__PURE__*/_jsx(ButtonTrigger, {
|
|
142
161
|
action: action,
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
});
|
|
152
|
-
}), createElement(CompactItemActions, {
|
|
153
|
-
item: item,
|
|
154
|
-
actions: eligibleActions
|
|
155
|
-
}));
|
|
162
|
+
onClick: () => action.callback([item]),
|
|
163
|
+
items: [item]
|
|
164
|
+
}, action.id);
|
|
165
|
+
}), /*#__PURE__*/_jsx(CompactItemActions, {
|
|
166
|
+
item: item,
|
|
167
|
+
actions: eligibleActions
|
|
168
|
+
})]
|
|
169
|
+
});
|
|
156
170
|
}
|
|
157
171
|
function CompactItemActions({
|
|
158
172
|
item,
|
|
159
173
|
actions
|
|
160
174
|
}) {
|
|
161
|
-
return
|
|
162
|
-
trigger:
|
|
175
|
+
return /*#__PURE__*/_jsx(DropdownMenu, {
|
|
176
|
+
trigger: /*#__PURE__*/_jsx(Button, {
|
|
163
177
|
size: "compact",
|
|
164
178
|
icon: moreVertical,
|
|
165
179
|
label: __('Actions'),
|
|
166
180
|
disabled: !actions.length,
|
|
167
181
|
className: "dataviews-all-actions-button"
|
|
168
182
|
}),
|
|
169
|
-
placement: "bottom-end"
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
183
|
+
placement: "bottom-end",
|
|
184
|
+
children: /*#__PURE__*/_jsx(ActionsDropdownMenuGroup, {
|
|
185
|
+
actions: actions,
|
|
186
|
+
item: item
|
|
187
|
+
})
|
|
188
|
+
});
|
|
174
189
|
}
|
|
175
190
|
//# sourceMappingURL=item-actions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","Modal","__experimentalHStack","HStack","privateApis","componentsPrivateApis","__","useMemo","useState","moreVertical","unlock","DropdownMenuV2","DropdownMenu","DropdownMenuGroupV2","DropdownMenuGroup","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","kebabCase","ButtonTrigger","action","onClick","createElement","label","icon","isDestructive","size","DropdownMenuItemTrigger","hideOnClick","ActionModal","items","closeModal","title","modalHeader","__experimentalHideHeader","hideModalHeader","onRequestClose","overlayClassName","id","RenderModal","onActionStart","onActionPerformed","ActionWithModal","ActionTrigger","isBusy","isModalOpen","setIsModalOpen","actionTriggerProps","Fragment","ActionsDropdownMenuGroup","actions","item","map","key","callback","ItemActions","isCompact","primaryActions","eligibleActions","_eligibleActions","filter","isEligible","_primaryActions","isPrimary","CompactItemActions","spacing","justify","className","style","flexShrink","width","length","trigger","disabled","placement"],"sources":["@wordpress/dataviews/src/item-actions.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { MouseEventHandler, ReactElement } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport type { Action, ActionModal as ActionModalType, AnyItem } from './types';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuGroupV2: DropdownMenuGroup,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n\tkebabCase,\n} = unlock( componentsPrivateApis );\n\ninterface ButtonTriggerProps< Item extends AnyItem > {\n\taction: Action< Item >;\n\tonClick: MouseEventHandler;\n}\n\ninterface DropdownMenuItemTriggerProps< Item extends AnyItem > {\n\taction: Action< Item >;\n\tonClick: MouseEventHandler;\n}\n\ninterface ActionModalProps< Item extends AnyItem > {\n\taction: ActionModalType< Item >;\n\titems: Item[];\n\tcloseModal?: () => void;\n}\n\ninterface ActionWithModalProps< Item extends AnyItem >\n\textends ActionModalProps< Item > {\n\tActionTrigger: (\n\t\tprops: ButtonTriggerProps< Item > | DropdownMenuItemTriggerProps< Item >\n\t) => ReactElement;\n\tisBusy?: boolean;\n}\n\ninterface ActionsDropdownMenuGroupProps< Item extends AnyItem > {\n\tactions: Action< Item >[];\n\titem: Item;\n}\n\ninterface ItemActionsProps< Item extends AnyItem > {\n\titem: Item;\n\tactions: Action< Item >[];\n\tisCompact: boolean;\n}\n\ninterface CompactItemActionsProps< Item extends AnyItem > {\n\titem: Item;\n\tactions: Action< Item >[];\n}\n\nfunction ButtonTrigger< Item extends AnyItem >( {\n\taction,\n\tonClick,\n}: ButtonTriggerProps< Item > ) {\n\treturn (\n\t\t<Button\n\t\t\tlabel={ action.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/>\n\t);\n}\n\nfunction DropdownMenuItemTrigger< Item extends AnyItem >( {\n\taction,\n\tonClick,\n}: DropdownMenuItemTriggerProps< Item > ) {\n\treturn (\n\t\t<DropdownMenuItem\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! ( 'RenderModal' in action ) }\n\t\t>\n\t\t\t<DropdownMenuItemLabel>{ action.label }</DropdownMenuItemLabel>\n\t\t</DropdownMenuItem>\n\t);\n}\n\nexport function ActionModal< Item extends AnyItem >( {\n\taction,\n\titems,\n\tcloseModal,\n}: ActionModalProps< Item > ) {\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ action.modalHeader || action.label }\n\t\t\t__experimentalHideHeader={ !! action.hideModalHeader }\n\t\t\tonRequestClose={ closeModal ?? ( () => {} ) }\n\t\t\toverlayClassName={ `dataviews-action-modal dataviews-action-modal__${ kebabCase(\n\t\t\t\taction.id\n\t\t\t) }` }\n\t\t>\n\t\t\t<action.RenderModal\n\t\t\t\titems={ items }\n\t\t\t\tcloseModal={ closeModal }\n\t\t\t\tonActionStart={ action.onActionStart }\n\t\t\t\tonActionPerformed={ action.onActionPerformed }\n\t\t\t/>\n\t\t</Modal>\n\t);\n}\n\nexport function ActionWithModal< Item extends AnyItem >( {\n\taction,\n\titems,\n\tActionTrigger,\n\tisBusy,\n}: ActionWithModalProps< Item > ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => {\n\t\t\tsetIsModalOpen( true );\n\t\t},\n\t\titems,\n\t\tisBusy,\n\t};\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<ActionModal\n\t\t\t\t\taction={ action }\n\t\t\t\t\titems={ items }\n\t\t\t\t\tcloseModal={ () => setIsModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport function ActionsDropdownMenuGroup< Item extends AnyItem >( {\n\tactions,\n\titem,\n}: ActionsDropdownMenuGroupProps< Item > ) {\n\treturn (\n\t\t<DropdownMenuGroup>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( 'RenderModal' in action ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\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\titems={ [ item ] }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuGroup>\n\t);\n}\n\nexport default function ItemActions< Item extends AnyItem >( {\n\titem,\n\tactions,\n\tisCompact,\n}: ItemActionsProps< Item > ) {\n\tconst { primaryActions, eligibleActions } = useMemo( () => {\n\t\t// If an action is eligible for all items, doesn't need\n\t\t// to provide the `isEligible` function.\n\t\tconst _eligibleActions = actions.filter(\n\t\t\t( action ) => ! action.isEligible || action.isEligible( item )\n\t\t);\n\t\tconst _primaryActions = _eligibleActions.filter(\n\t\t\t( action ) => action.isPrimary && !! action.icon\n\t\t);\n\t\treturn {\n\t\t\tprimaryActions: _primaryActions,\n\t\t\teligibleActions: _eligibleActions,\n\t\t};\n\t}, [ actions, item ] );\n\tif ( isCompact ) {\n\t\treturn <CompactItemActions item={ item } actions={ eligibleActions } />;\n\t}\n\treturn (\n\t\t<HStack\n\t\t\tspacing={ 1 }\n\t\t\tjustify=\"flex-end\"\n\t\t\tclassName=\"dataviews-item-actions\"\n\t\t\tstyle={ {\n\t\t\t\tflexShrink: '0',\n\t\t\t\twidth: 'auto',\n\t\t\t} }\n\t\t>\n\t\t\t{ !! primaryActions.length &&\n\t\t\t\tprimaryActions.map( ( action ) => {\n\t\t\t\t\tif ( 'RenderModal' in action ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\t\t\tActionTrigger={ ButtonTrigger }\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\treturn (\n\t\t\t\t\t\t<ButtonTrigger\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\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t<CompactItemActions item={ item } actions={ eligibleActions } />\n\t\t</HStack>\n\t);\n}\n\nfunction CompactItemActions< Item extends AnyItem >( {\n\titem,\n\tactions,\n}: CompactItemActionsProps< Item > ) {\n\treturn (\n\t\t<DropdownMenu\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\tclassName=\"dataviews-all-actions-button\"\n\t\t\t\t/>\n\t\t\t}\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup actions={ actions } item={ item } />\n\t\t</DropdownMenu>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Button","Modal","__experimentalHStack","HStack","privateApis","componentsPrivateApis","__","useMemo","useState","moreVertical","unlock","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","DropdownMenuV2","DropdownMenu","DropdownMenuGroupV2","DropdownMenuGroup","DropdownMenuItemV2","DropdownMenuItem","DropdownMenuItemLabelV2","DropdownMenuItemLabel","kebabCase","ButtonTrigger","action","onClick","items","label","icon","isDestructive","size","DropdownMenuItemTrigger","hideOnClick","children","ActionModal","closeModal","title","modalHeader","__experimentalHideHeader","hideModalHeader","onRequestClose","overlayClassName","id","RenderModal","onActionStart","onActionPerformed","ActionWithModal","ActionTrigger","isBusy","isModalOpen","setIsModalOpen","actionTriggerProps","ActionsDropdownMenuGroup","actions","item","map","callback","ItemActions","isCompact","primaryActions","eligibleActions","_eligibleActions","filter","isEligible","_primaryActions","isPrimary","CompactItemActions","spacing","justify","className","style","flexShrink","width","length","trigger","disabled","placement"],"sources":["@wordpress/dataviews/src/item-actions.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { MouseEventHandler, ReactElement } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tModal,\n\t__experimentalHStack as HStack,\n\tprivateApis as componentsPrivateApis,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo, useState } from '@wordpress/element';\nimport { moreVertical } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from './lock-unlock';\nimport type { Action, ActionModal as ActionModalType, AnyItem } from './types';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuGroupV2: DropdownMenuGroup,\n\tDropdownMenuItemV2: DropdownMenuItem,\n\tDropdownMenuItemLabelV2: DropdownMenuItemLabel,\n\tkebabCase,\n} = unlock( componentsPrivateApis );\n\nexport interface ActionTriggerProps< Item extends AnyItem > {\n\taction: Action< Item >;\n\tonClick: MouseEventHandler;\n\tisBusy?: boolean;\n\titems: Item[];\n}\n\ninterface ActionModalProps< Item extends AnyItem > {\n\taction: ActionModalType< Item >;\n\titems: Item[];\n\tcloseModal?: () => void;\n}\n\ninterface ActionWithModalProps< Item extends AnyItem >\n\textends ActionModalProps< Item > {\n\tActionTrigger: ( props: ActionTriggerProps< Item > ) => ReactElement;\n\tisBusy?: boolean;\n}\n\ninterface ActionsDropdownMenuGroupProps< Item extends AnyItem > {\n\tactions: Action< Item >[];\n\titem: Item;\n}\n\ninterface ItemActionsProps< Item extends AnyItem > {\n\titem: Item;\n\tactions: Action< Item >[];\n\tisCompact?: boolean;\n}\n\ninterface CompactItemActionsProps< Item extends AnyItem > {\n\titem: Item;\n\tactions: Action< Item >[];\n}\n\nfunction ButtonTrigger< Item extends AnyItem >( {\n\taction,\n\tonClick,\n\titems,\n}: ActionTriggerProps< Item > ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<Button\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/>\n\t);\n}\n\nfunction DropdownMenuItemTrigger< Item extends AnyItem >( {\n\taction,\n\tonClick,\n\titems,\n}: ActionTriggerProps< Item > ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<DropdownMenuItem\n\t\t\tonClick={ onClick }\n\t\t\thideOnClick={ ! ( 'RenderModal' in action ) }\n\t\t>\n\t\t\t<DropdownMenuItemLabel>{ label }</DropdownMenuItemLabel>\n\t\t</DropdownMenuItem>\n\t);\n}\n\nexport function ActionModal< Item extends AnyItem >( {\n\taction,\n\titems,\n\tcloseModal,\n}: ActionModalProps< Item > ) {\n\tconst label =\n\t\ttypeof action.label === 'string' ? action.label : action.label( items );\n\treturn (\n\t\t<Modal\n\t\t\ttitle={ action.modalHeader || label }\n\t\t\t__experimentalHideHeader={ !! action.hideModalHeader }\n\t\t\tonRequestClose={ closeModal ?? ( () => {} ) }\n\t\t\toverlayClassName={ `dataviews-action-modal dataviews-action-modal__${ kebabCase(\n\t\t\t\taction.id\n\t\t\t) }` }\n\t\t>\n\t\t\t<action.RenderModal\n\t\t\t\titems={ items }\n\t\t\t\tcloseModal={ closeModal }\n\t\t\t\tonActionStart={ action.onActionStart }\n\t\t\t\tonActionPerformed={ action.onActionPerformed }\n\t\t\t/>\n\t\t</Modal>\n\t);\n}\n\nexport function ActionWithModal< Item extends AnyItem >( {\n\taction,\n\titems,\n\tActionTrigger,\n\tisBusy,\n}: ActionWithModalProps< Item > ) {\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\tconst actionTriggerProps = {\n\t\taction,\n\t\tonClick: () => {\n\t\t\tsetIsModalOpen( true );\n\t\t},\n\t\titems,\n\t\tisBusy,\n\t};\n\treturn (\n\t\t<>\n\t\t\t<ActionTrigger { ...actionTriggerProps } />\n\t\t\t{ isModalOpen && (\n\t\t\t\t<ActionModal\n\t\t\t\t\taction={ action }\n\t\t\t\t\titems={ items }\n\t\t\t\t\tcloseModal={ () => setIsModalOpen( false ) }\n\t\t\t\t/>\n\t\t\t) }\n\t\t</>\n\t);\n}\n\nexport function ActionsDropdownMenuGroup< Item extends AnyItem >( {\n\tactions,\n\titem,\n}: ActionsDropdownMenuGroupProps< Item > ) {\n\treturn (\n\t\t<DropdownMenuGroup>\n\t\t\t{ actions.map( ( action ) => {\n\t\t\t\tif ( 'RenderModal' in action ) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<ActionWithModal\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\titems={ [ item ] }\n\t\t\t\t\t\t\tActionTrigger={ DropdownMenuItemTrigger }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuItemTrigger\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuGroup>\n\t);\n}\n\nexport default function ItemActions< Item extends AnyItem >( {\n\titem,\n\tactions,\n\tisCompact,\n}: ItemActionsProps< Item > ) {\n\tconst { primaryActions, eligibleActions } = useMemo( () => {\n\t\t// If an action is eligible for all items, doesn't need\n\t\t// to provide the `isEligible` function.\n\t\tconst _eligibleActions = actions.filter(\n\t\t\t( action ) => ! action.isEligible || action.isEligible( item )\n\t\t);\n\t\tconst _primaryActions = _eligibleActions.filter(\n\t\t\t( action ) => action.isPrimary && !! action.icon\n\t\t);\n\t\treturn {\n\t\t\tprimaryActions: _primaryActions,\n\t\t\teligibleActions: _eligibleActions,\n\t\t};\n\t}, [ actions, item ] );\n\tif ( isCompact ) {\n\t\treturn <CompactItemActions item={ item } actions={ eligibleActions } />;\n\t}\n\treturn (\n\t\t<HStack\n\t\t\tspacing={ 1 }\n\t\t\tjustify=\"flex-end\"\n\t\t\tclassName=\"dataviews-item-actions\"\n\t\t\tstyle={ {\n\t\t\t\tflexShrink: '0',\n\t\t\t\twidth: 'auto',\n\t\t\t} }\n\t\t>\n\t\t\t{ !! primaryActions.length &&\n\t\t\t\tprimaryActions.map( ( action ) => {\n\t\t\t\t\tif ( 'RenderModal' in action ) {\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<ActionWithModal\n\t\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\t\taction={ action }\n\t\t\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\t\t\tActionTrigger={ ButtonTrigger }\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\treturn (\n\t\t\t\t\t\t<ButtonTrigger\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\tonClick={ () => action.callback( [ item ] ) }\n\t\t\t\t\t\t\titems={ [ item ] }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t} ) }\n\t\t\t<CompactItemActions item={ item } actions={ eligibleActions } />\n\t\t</HStack>\n\t);\n}\n\nfunction CompactItemActions< Item extends AnyItem >( {\n\titem,\n\tactions,\n}: CompactItemActionsProps< Item > ) {\n\treturn (\n\t\t<DropdownMenu\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\ticon={ moreVertical }\n\t\t\t\t\tlabel={ __( 'Actions' ) }\n\t\t\t\t\tdisabled={ ! actions.length }\n\t\t\t\t\tclassName=\"dataviews-all-actions-button\"\n\t\t\t\t/>\n\t\t\t}\n\t\t\tplacement=\"bottom-end\"\n\t\t>\n\t\t\t<ActionsDropdownMenuGroup actions={ actions } item={ item } />\n\t\t</DropdownMenu>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","isRTL","blockTable","category","formatListBullets","formatListBulletsRTL","ViewTable","ViewGrid","ViewList","LAYOUT_GRID","LAYOUT_LIST","LAYOUT_TABLE","VIEW_LAYOUTS","type","label","component","icon"],"sources":["@wordpress/dataviews/src/layouts.
|
|
1
|
+
{"version":3,"names":["__","isRTL","blockTable","category","formatListBullets","formatListBulletsRTL","ViewTable","ViewGrid","ViewList","LAYOUT_GRID","LAYOUT_LIST","LAYOUT_TABLE","VIEW_LAYOUTS","type","label","component","icon"],"sources":["@wordpress/dataviews/src/layouts.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __, isRTL } from '@wordpress/i18n';\nimport {\n\tblockTable,\n\tcategory,\n\tformatListBullets,\n\tformatListBulletsRTL,\n} from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport ViewTable from './view-table';\nimport ViewGrid from './view-grid';\nimport ViewList from './view-list';\nimport { LAYOUT_GRID, LAYOUT_LIST, LAYOUT_TABLE } from './constants';\n\nexport const VIEW_LAYOUTS = [\n\t{\n\t\ttype: LAYOUT_TABLE,\n\t\tlabel: __( 'Table' ),\n\t\tcomponent: ViewTable,\n\t\ticon: blockTable,\n\t},\n\t{\n\t\ttype: LAYOUT_GRID,\n\t\tlabel: __( 'Grid' ),\n\t\tcomponent: ViewGrid,\n\t\ticon: category,\n\t},\n\t{\n\t\ttype: LAYOUT_LIST,\n\t\tlabel: __( 'List' ),\n\t\tcomponent: ViewList,\n\t\ticon: isRTL() ? formatListBulletsRTL : formatListBullets,\n\t},\n];\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,EAAEC,KAAK,QAAQ,iBAAiB;AAC3C,SACCC,UAAU,EACVC,QAAQ,EACRC,iBAAiB,EACjBC,oBAAoB,QACd,kBAAkB;;AAEzB;AACA;AACA;AACA,OAAOC,SAAS,MAAM,cAAc;AACpC,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,QAAQ,MAAM,aAAa;AAClC,SAASC,WAAW,EAAEC,WAAW,EAAEC,YAAY,QAAQ,aAAa;AAEpE,OAAO,MAAMC,YAAY,GAAG,CAC3B;EACCC,IAAI,EAAEF,YAAY;EAClBG,KAAK,EAAEd,EAAE,CAAE,OAAQ,CAAC;EACpBe,SAAS,EAAET,SAAS;EACpBU,IAAI,EAAEd;AACP,CAAC,EACD;EACCW,IAAI,EAAEJ,WAAW;EACjBK,KAAK,EAAEd,EAAE,CAAE,MAAO,CAAC;EACnBe,SAAS,EAAER,QAAQ;EACnBS,IAAI,EAAEb;AACP,CAAC,EACD;EACCU,IAAI,EAAEH,WAAW;EACjBI,KAAK,EAAEd,EAAE,CAAE,MAAO,CAAC;EACnBe,SAAS,EAAEP,QAAQ;EACnBQ,IAAI,EAAEf,KAAK,CAAC,CAAC,GAAGI,oBAAoB,GAAGD;AACxC,CAAC,CACD","ignoreList":[]}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { createElement } from "react";
|
|
2
1
|
/**
|
|
3
2
|
* WordPress dependencies
|
|
4
3
|
*/
|
|
@@ -10,7 +9,8 @@ import { chevronRight, chevronLeft } from '@wordpress/icons';
|
|
|
10
9
|
/**
|
|
11
10
|
* Internal dependencies
|
|
12
11
|
*/
|
|
13
|
-
|
|
12
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
13
|
+
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
14
|
const Pagination = memo(function Pagination({
|
|
15
15
|
view,
|
|
16
16
|
onChangeView,
|
|
@@ -24,66 +24,69 @@ const Pagination = memo(function Pagination({
|
|
|
24
24
|
return null;
|
|
25
25
|
}
|
|
26
26
|
const currentPage = (_view$page = view.page) !== null && _view$page !== void 0 ? _view$page : 1;
|
|
27
|
-
return !!totalItems && totalPages !== 1 &&
|
|
27
|
+
return !!totalItems && totalPages !== 1 && /*#__PURE__*/_jsxs(HStack, {
|
|
28
28
|
expanded: false,
|
|
29
29
|
spacing: 6,
|
|
30
30
|
justify: "end",
|
|
31
|
-
className: "dataviews-pagination"
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
31
|
+
className: "dataviews-pagination",
|
|
32
|
+
children: [/*#__PURE__*/_jsx(HStack, {
|
|
33
|
+
justify: "flex-start",
|
|
34
|
+
expanded: false,
|
|
35
|
+
spacing: 2,
|
|
36
|
+
className: "dataviews-pagination__page-selection",
|
|
37
|
+
children: createInterpolateElement(sprintf(
|
|
38
|
+
// translators: %s: Total number of pages.
|
|
39
|
+
_x('Page <CurrentPageControl /> of %s', 'paging'), totalPages), {
|
|
40
|
+
CurrentPageControl: /*#__PURE__*/_jsx(SelectControl, {
|
|
41
|
+
"aria-label": __('Current page'),
|
|
42
|
+
value: view.page?.toString(),
|
|
43
|
+
options: Array.from(Array(totalPages)).map((_, i) => {
|
|
44
|
+
const page = i + 1;
|
|
45
|
+
return {
|
|
46
|
+
value: page.toString(),
|
|
47
|
+
label: page.toString()
|
|
48
|
+
};
|
|
49
|
+
}),
|
|
50
|
+
onChange: newValue => {
|
|
51
|
+
onChangeView({
|
|
52
|
+
...view,
|
|
53
|
+
page: +newValue
|
|
54
|
+
});
|
|
55
|
+
},
|
|
56
|
+
size: "compact",
|
|
57
|
+
__nextHasNoMarginBottom: true
|
|
58
|
+
})
|
|
59
|
+
})
|
|
60
|
+
}), /*#__PURE__*/_jsxs(HStack, {
|
|
61
|
+
expanded: false,
|
|
62
|
+
spacing: 1,
|
|
63
|
+
children: [/*#__PURE__*/_jsx(Button, {
|
|
64
|
+
onClick: () => onChangeView({
|
|
52
65
|
...view,
|
|
53
|
-
page:
|
|
54
|
-
})
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
page: currentPage + 1
|
|
78
|
-
}),
|
|
79
|
-
disabled: currentPage >= totalPages,
|
|
80
|
-
__experimentalIsFocusable: true,
|
|
81
|
-
label: __('Next page'),
|
|
82
|
-
icon: chevronRight,
|
|
83
|
-
showTooltip: true,
|
|
84
|
-
size: "compact",
|
|
85
|
-
tooltipPosition: "top"
|
|
86
|
-
})));
|
|
66
|
+
page: currentPage - 1
|
|
67
|
+
}),
|
|
68
|
+
disabled: currentPage === 1,
|
|
69
|
+
__experimentalIsFocusable: true,
|
|
70
|
+
label: __('Previous page'),
|
|
71
|
+
icon: chevronLeft,
|
|
72
|
+
showTooltip: true,
|
|
73
|
+
size: "compact",
|
|
74
|
+
tooltipPosition: "top"
|
|
75
|
+
}), /*#__PURE__*/_jsx(Button, {
|
|
76
|
+
onClick: () => onChangeView({
|
|
77
|
+
...view,
|
|
78
|
+
page: currentPage + 1
|
|
79
|
+
}),
|
|
80
|
+
disabled: currentPage >= totalPages,
|
|
81
|
+
__experimentalIsFocusable: true,
|
|
82
|
+
label: __('Next page'),
|
|
83
|
+
icon: chevronRight,
|
|
84
|
+
showTooltip: true,
|
|
85
|
+
size: "compact",
|
|
86
|
+
tooltipPosition: "top"
|
|
87
|
+
})]
|
|
88
|
+
})]
|
|
89
|
+
});
|
|
87
90
|
});
|
|
88
91
|
export default Pagination;
|
|
89
92
|
//# sourceMappingURL=pagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","__experimentalHStack","HStack","SelectControl","createInterpolateElement","memo","sprintf","__","_x","chevronRight","chevronLeft","Pagination","view","onChangeView","paginationInfo","totalItems","totalPages","_view$page","currentPage","page","
|
|
1
|
+
{"version":3,"names":["Button","__experimentalHStack","HStack","SelectControl","createInterpolateElement","memo","sprintf","__","_x","chevronRight","chevronLeft","jsx","_jsx","jsxs","_jsxs","Pagination","view","onChangeView","paginationInfo","totalItems","totalPages","_view$page","currentPage","page","expanded","spacing","justify","className","children","CurrentPageControl","value","toString","options","Array","from","map","_","i","label","onChange","newValue","size","__nextHasNoMarginBottom","onClick","disabled","__experimentalIsFocusable","icon","showTooltip","tooltipPosition"],"sources":["@wordpress/dataviews/src/pagination.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalHStack as HStack,\n\tSelectControl,\n} from '@wordpress/components';\nimport { createInterpolateElement, memo } from '@wordpress/element';\nimport { sprintf, __, _x } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport type { View } from './types';\n\ninterface PaginationProps {\n\tview: View;\n\tonChangeView: ( view: View ) => void;\n\tpaginationInfo: {\n\t\ttotalItems: number;\n\t\ttotalPages: number;\n\t};\n}\n\nconst Pagination = memo( function Pagination( {\n\tview,\n\tonChangeView,\n\tpaginationInfo: { totalItems = 0, totalPages },\n}: PaginationProps ) {\n\tif ( ! totalItems || ! totalPages ) {\n\t\treturn null;\n\t}\n\tconst currentPage = view.page ?? 1;\n\treturn (\n\t\t!! totalItems &&\n\t\ttotalPages !== 1 && (\n\t\t\t<HStack\n\t\t\t\texpanded={ false }\n\t\t\t\tspacing={ 6 }\n\t\t\t\tjustify=\"end\"\n\t\t\t\tclassName=\"dataviews-pagination\"\n\t\t\t>\n\t\t\t\t<HStack\n\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\texpanded={ false }\n\t\t\t\t\tspacing={ 2 }\n\t\t\t\t\tclassName=\"dataviews-pagination__page-selection\"\n\t\t\t\t>\n\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t// translators: %s: Total number of pages.\n\t\t\t\t\t\t\t_x( 'Page <CurrentPageControl /> of %s', 'paging' ),\n\t\t\t\t\t\t\ttotalPages\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tCurrentPageControl: (\n\t\t\t\t\t\t\t\t<SelectControl\n\t\t\t\t\t\t\t\t\taria-label={ __( 'Current page' ) }\n\t\t\t\t\t\t\t\t\tvalue={ view.page?.toString() }\n\t\t\t\t\t\t\t\t\toptions={ Array.from(\n\t\t\t\t\t\t\t\t\t\tArray( totalPages )\n\t\t\t\t\t\t\t\t\t).map( ( _, i ) => {\n\t\t\t\t\t\t\t\t\t\tconst page = i + 1;\n\t\t\t\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t\t\t\tvalue: page.toString(),\n\t\t\t\t\t\t\t\t\t\t\tlabel: page.toString(),\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\tonChange={ ( newValue ) => {\n\t\t\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\t\t\tpage: +newValue,\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\tsize=\"compact\"\n\t\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\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</HStack>\n\t\t\t\t<HStack expanded={ false } spacing={ 1 }>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ () =>\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: currentPage - 1,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdisabled={ currentPage === 1 }\n\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\tlabel={ __( 'Previous page' ) }\n\t\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\ttooltipPosition=\"top\"\n\t\t\t\t\t/>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\tonChangeView( { ...view, page: currentPage + 1 } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tdisabled={ currentPage >= totalPages }\n\t\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\t\tlabel={ __( 'Next page' ) }\n\t\t\t\t\t\ticon={ chevronRight }\n\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\ttooltipPosition=\"top\"\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t</HStack>\n\t\t)\n\t);\n} );\n\nexport default Pagination;\n"],"mappings":"AAAA;AACA;AACA;AACA,SACCA,MAAM,EACNC,oBAAoB,IAAIC,MAAM,EAC9BC,aAAa,QACP,uBAAuB;AAC9B,SAASC,wBAAwB,EAAEC,IAAI,QAAQ,oBAAoB;AACnE,SAASC,OAAO,EAAEC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACjD,SAASC,YAAY,EAAEC,WAAW,QAAQ,kBAAkB;;AAE5D;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAcA,MAAMC,UAAU,GAAGV,IAAI,CAAE,SAASU,UAAUA,CAAE;EAC7CC,IAAI;EACJC,YAAY;EACZC,cAAc,EAAE;IAAEC,UAAU,GAAG,CAAC;IAAEC;EAAW;AAC7B,CAAC,EAAG;EAAA,IAAAC,UAAA;EACpB,IAAK,CAAEF,UAAU,IAAI,CAAEC,UAAU,EAAG;IACnC,OAAO,IAAI;EACZ;EACA,MAAME,WAAW,IAAAD,UAAA,GAAGL,IAAI,CAACO,IAAI,cAAAF,UAAA,cAAAA,UAAA,GAAI,CAAC;EAClC,OACC,CAAC,CAAEF,UAAU,IACbC,UAAU,KAAK,CAAC,iBACfN,KAAA,CAACZ,MAAM;IACNsB,QAAQ,EAAG,KAAO;IAClBC,OAAO,EAAG,CAAG;IACbC,OAAO,EAAC,KAAK;IACbC,SAAS,EAAC,sBAAsB;IAAAC,QAAA,gBAEhChB,IAAA,CAACV,MAAM;MACNwB,OAAO,EAAC,YAAY;MACpBF,QAAQ,EAAG,KAAO;MAClBC,OAAO,EAAG,CAAG;MACbE,SAAS,EAAC,sCAAsC;MAAAC,QAAA,EAE9CxB,wBAAwB,CACzBE,OAAO;MACN;MACAE,EAAE,CAAE,mCAAmC,EAAE,QAAS,CAAC,EACnDY,UACD,CAAC,EACD;QACCS,kBAAkB,eACjBjB,IAAA,CAACT,aAAa;UACb,cAAaI,EAAE,CAAE,cAAe,CAAG;UACnCuB,KAAK,EAAGd,IAAI,CAACO,IAAI,EAAEQ,QAAQ,CAAC,CAAG;UAC/BC,OAAO,EAAGC,KAAK,CAACC,IAAI,CACnBD,KAAK,CAAEb,UAAW,CACnB,CAAC,CAACe,GAAG,CAAE,CAAEC,CAAC,EAAEC,CAAC,KAAM;YAClB,MAAMd,IAAI,GAAGc,CAAC,GAAG,CAAC;YAClB,OAAO;cACNP,KAAK,EAAEP,IAAI,CAACQ,QAAQ,CAAC,CAAC;cACtBO,KAAK,EAAEf,IAAI,CAACQ,QAAQ,CAAC;YACtB,CAAC;UACF,CAAE,CAAG;UACLQ,QAAQ,EAAKC,QAAQ,IAAM;YAC1BvB,YAAY,CAAE;cACb,GAAGD,IAAI;cACPO,IAAI,EAAE,CAACiB;YACR,CAAE,CAAC;UACJ,CAAG;UACHC,IAAI,EAAC,SAAS;UACdC,uBAAuB;QAAA,CACvB;MAEH,CACD;IAAC,CACM,CAAC,eACT5B,KAAA,CAACZ,MAAM;MAACsB,QAAQ,EAAG,KAAO;MAACC,OAAO,EAAG,CAAG;MAAAG,QAAA,gBACvChB,IAAA,CAACZ,MAAM;QACN2C,OAAO,EAAGA,CAAA,KACT1B,YAAY,CAAE;UACb,GAAGD,IAAI;UACPO,IAAI,EAAED,WAAW,GAAG;QACrB,CAAE,CACF;QACDsB,QAAQ,EAAGtB,WAAW,KAAK,CAAG;QAC9BuB,yBAAyB;QACzBP,KAAK,EAAG/B,EAAE,CAAE,eAAgB,CAAG;QAC/BuC,IAAI,EAAGpC,WAAa;QACpBqC,WAAW;QACXN,IAAI,EAAC,SAAS;QACdO,eAAe,EAAC;MAAK,CACrB,CAAC,eACFpC,IAAA,CAACZ,MAAM;QACN2C,OAAO,EAAGA,CAAA,KACT1B,YAAY,CAAE;UAAE,GAAGD,IAAI;UAAEO,IAAI,EAAED,WAAW,GAAG;QAAE,CAAE,CACjD;QACDsB,QAAQ,EAAGtB,WAAW,IAAIF,UAAY;QACtCyB,yBAAyB;QACzBP,KAAK,EAAG/B,EAAE,CAAE,WAAY,CAAG;QAC3BuC,IAAI,EAAGrC,YAAc;QACrBsC,WAAW;QACXN,IAAI,EAAC,SAAS;QACdO,eAAe,EAAC;MAAK,CACrB,CAAC;IAAA,CACK,CAAC;EAAA,CACF,CACR;AAEH,CAAE,CAAC;AAEH,eAAejC,UAAU","ignoreList":[]}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import { createElement } from "react";
|
|
2
1
|
/**
|
|
3
2
|
* WordPress dependencies
|
|
4
3
|
*/
|
|
5
4
|
import { Button } from '@wordpress/components';
|
|
6
5
|
import { __ } from '@wordpress/i18n';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
11
|
export default function ResetFilter({
|
|
8
12
|
filters,
|
|
9
13
|
view,
|
|
@@ -11,7 +15,7 @@ export default function ResetFilter({
|
|
|
11
15
|
}) {
|
|
12
16
|
const isPrimary = field => filters.some(_filter => _filter.field === field && _filter.isPrimary);
|
|
13
17
|
const isDisabled = !view.search && !view.filters?.some(_filter => _filter.value !== undefined || !isPrimary(_filter.field));
|
|
14
|
-
return
|
|
18
|
+
return /*#__PURE__*/_jsx(Button, {
|
|
15
19
|
disabled: isDisabled,
|
|
16
20
|
__experimentalIsFocusable: true,
|
|
17
21
|
size: "compact",
|
|
@@ -24,7 +28,8 @@ export default function ResetFilter({
|
|
|
24
28
|
search: '',
|
|
25
29
|
filters: []
|
|
26
30
|
});
|
|
27
|
-
}
|
|
28
|
-
|
|
31
|
+
},
|
|
32
|
+
children: __('Reset')
|
|
33
|
+
});
|
|
29
34
|
}
|
|
30
35
|
//# sourceMappingURL=reset-filters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","__","ResetFilter","filters","view","onChangeView","isPrimary","field","some","_filter","isDisabled","search","value","undefined","
|
|
1
|
+
{"version":3,"names":["Button","__","jsx","_jsx","ResetFilter","filters","view","onChangeView","isPrimary","field","some","_filter","isDisabled","search","value","undefined","disabled","__experimentalIsFocusable","size","variant","className","onClick","page","children"],"sources":["@wordpress/dataviews/src/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\t__experimentalIsFocusable\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":"AAAA;AACA;AACA;AACA,SAASA,MAAM,QAAQ,uBAAuB;AAC9C,SAASC,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AAFA,SAAAC,GAAA,IAAAC,IAAA;AAWA,eAAe,SAASC,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,oBACCN,IAAA,CAACH,MAAM;IACNgB,QAAQ,EAAGJ,UAAY;IACvBK,yBAAyB;IACzBC,IAAI,EAAC,SAAS;IACdC,OAAO,EAAC,UAAU;IAClBC,SAAS,EAAC,iCAAiC;IAC3CC,OAAO,EAAGA,CAAA,KAAM;MACfd,YAAY,CAAE;QACb,GAAGD,IAAI;QACPgB,IAAI,EAAE,CAAC;QACPT,MAAM,EAAE,EAAE;QACVR,OAAO,EAAE;MACV,CAAE,CAAC;IACJ,CAAG;IAAAkB,QAAA,EAEDtB,EAAE,CAAE,OAAQ;EAAC,CACR,CAAC;AAEX","ignoreList":[]}
|