@wordpress/dataviews 14.3.0 → 15.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 +31 -0
- package/build/components/dataform-controls/date.cjs.map +3 -3
- package/build/components/dataform-controls/datetime.cjs.map +2 -2
- package/build/components/dataform-controls/email.cjs.map +3 -3
- package/build/components/dataform-controls/telephone.cjs.map +3 -3
- package/build/components/dataform-controls/url.cjs.map +3 -3
- package/build/components/dataform-layouts/panel/summary-button.cjs +18 -1
- package/build/components/dataform-layouts/panel/summary-button.cjs.map +3 -3
- package/build/components/dataform-layouts/panel/utils/get-label-content.cjs +17 -4
- package/build/components/dataform-layouts/panel/utils/get-label-content.cjs.map +3 -3
- package/build/components/dataviews-context/index.cjs.map +2 -2
- package/build/components/dataviews-filters/filter.cjs +86 -80
- package/build/components/dataviews-filters/filter.cjs.map +3 -3
- package/build/components/dataviews-filters/search-widget.cjs.map +3 -3
- package/build/components/dataviews-layouts/grid/composite-grid.cjs +10 -2
- package/build/components/dataviews-layouts/grid/composite-grid.cjs.map +2 -2
- package/build/components/dataviews-layouts/picker-table/index.cjs +8 -0
- package/build/components/dataviews-layouts/picker-table/index.cjs.map +2 -2
- package/build/components/dataviews-layouts/table/column-header-menu.cjs.map +3 -3
- package/build/components/dataviews-layouts/table/use-scroll-state.cjs.map +1 -1
- package/build/components/dataviews-layouts/utils/item-click-wrapper.cjs.map +2 -2
- package/build/components/dataviews-view-config/properties-section.cjs.map +3 -3
- package/build/hooks/use-form-validity.cjs.map +1 -1
- package/build-module/components/dataform-controls/date.mjs +2 -2
- package/build-module/components/dataform-controls/date.mjs.map +2 -2
- package/build-module/components/dataform-controls/datetime.mjs.map +2 -2
- package/build-module/components/dataform-controls/email.mjs +2 -2
- package/build-module/components/dataform-controls/email.mjs.map +2 -2
- package/build-module/components/dataform-controls/telephone.mjs +2 -2
- package/build-module/components/dataform-controls/telephone.mjs.map +2 -2
- package/build-module/components/dataform-controls/url.mjs +2 -2
- package/build-module/components/dataform-controls/url.mjs.map +2 -2
- package/build-module/components/dataform-layouts/panel/summary-button.mjs +19 -2
- package/build-module/components/dataform-layouts/panel/summary-button.mjs.map +2 -2
- package/build-module/components/dataform-layouts/panel/utils/get-label-content.mjs +18 -5
- package/build-module/components/dataform-layouts/panel/utils/get-label-content.mjs.map +2 -2
- package/build-module/components/dataviews-context/index.mjs.map +2 -2
- package/build-module/components/dataviews-filters/filter.mjs +88 -83
- package/build-module/components/dataviews-filters/filter.mjs.map +2 -2
- package/build-module/components/dataviews-filters/search-widget.mjs +3 -3
- package/build-module/components/dataviews-filters/search-widget.mjs.map +2 -2
- package/build-module/components/dataviews-layouts/grid/composite-grid.mjs +11 -4
- package/build-module/components/dataviews-layouts/grid/composite-grid.mjs.map +2 -2
- package/build-module/components/dataviews-layouts/picker-table/index.mjs +8 -0
- package/build-module/components/dataviews-layouts/picker-table/index.mjs.map +2 -2
- package/build-module/components/dataviews-layouts/table/column-header-menu.mjs +5 -5
- package/build-module/components/dataviews-layouts/table/column-header-menu.mjs.map +2 -2
- package/build-module/components/dataviews-layouts/table/use-scroll-state.mjs.map +1 -1
- package/build-module/components/dataviews-layouts/utils/item-click-wrapper.mjs.map +2 -2
- package/build-module/components/dataviews-view-config/properties-section.mjs +2 -2
- package/build-module/components/dataviews-view-config/properties-section.mjs.map +2 -2
- package/build-module/hooks/use-form-validity.mjs.map +1 -1
- package/build-style/style-rtl.css +395 -377
- package/build-style/style.css +395 -377
- package/build-types/components/dataform-layouts/panel/summary-button.d.ts.map +1 -1
- package/build-types/components/dataform-layouts/panel/utils/get-label-content.d.ts.map +1 -1
- package/build-types/components/dataviews-context/index.d.ts +2 -2
- package/build-types/components/dataviews-context/index.d.ts.map +1 -1
- package/build-types/components/dataviews-filters/filter.d.ts.map +1 -1
- package/build-types/components/dataviews-layouts/grid/composite-grid.d.ts.map +1 -1
- package/build-types/components/dataviews-layouts/picker-table/index.d.ts.map +1 -1
- package/build-types/components/dataviews-layouts/table/use-scroll-state.d.ts +9 -5
- package/build-types/components/dataviews-layouts/table/use-scroll-state.d.ts.map +1 -1
- package/build-types/components/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
- package/build-types/dataviews/stories/free-composition.d.ts.map +1 -1
- package/build-wp/index.js +3298 -1396
- package/package.json +18 -18
- package/src/components/dataform-controls/date.tsx +2 -2
- package/src/components/dataform-controls/datetime.tsx +1 -1
- package/src/components/dataform-controls/email.tsx +2 -2
- package/src/components/dataform-controls/style.scss +2 -4
- package/src/components/dataform-controls/telephone.tsx +2 -2
- package/src/components/dataform-controls/url.tsx +2 -2
- package/src/components/dataform-layouts/card/style.scss +4 -7
- package/src/components/dataform-layouts/details/style.scss +2 -4
- package/src/components/dataform-layouts/panel/style.scss +41 -21
- package/src/components/dataform-layouts/panel/summary-button.tsx +17 -6
- package/src/components/dataform-layouts/panel/utils/get-label-content.tsx +15 -7
- package/src/components/dataform-layouts/regular/style.scss +5 -8
- package/src/components/dataviews-bulk-actions/style.scss +2 -6
- package/src/components/dataviews-context/index.ts +2 -4
- package/src/components/dataviews-filters/filter.tsx +93 -77
- package/src/components/dataviews-filters/search-widget.tsx +3 -3
- package/src/components/dataviews-filters/style.scss +93 -95
- package/src/components/dataviews-footer/style.scss +4 -6
- package/src/components/dataviews-item-actions/style.scss +1 -3
- package/src/components/dataviews-layouts/activity/style.scss +39 -41
- package/src/components/dataviews-layouts/grid/composite-grid.tsx +15 -8
- package/src/components/dataviews-layouts/grid/style.scss +46 -50
- package/src/components/dataviews-layouts/list/style.scss +61 -59
- package/src/components/dataviews-layouts/picker-grid/style.scss +33 -37
- package/src/components/dataviews-layouts/picker-table/index.tsx +15 -0
- package/src/components/dataviews-layouts/picker-table/style.scss +5 -8
- package/src/components/dataviews-layouts/table/column-header-menu.tsx +5 -5
- package/src/components/dataviews-layouts/table/style.scss +44 -46
- package/src/components/dataviews-layouts/table/use-scroll-state.ts +6 -6
- package/src/components/dataviews-layouts/utils/grid-items.scss +4 -6
- package/src/components/dataviews-layouts/utils/item-click-wrapper.tsx +3 -1
- package/src/components/dataviews-pagination/style.scss +2 -3
- package/src/components/dataviews-picker-footer/style.scss +1 -3
- package/src/components/dataviews-selection-checkbox/style.scss +0 -1
- package/src/components/dataviews-view-config/properties-section.tsx +2 -2
- package/src/components/dataviews-view-config/style.scss +8 -11
- package/src/dataviews/stories/free-composition.tsx +3 -1
- package/src/dataviews/style.scss +27 -18
- package/src/dataviews-picker/stories/index.story.tsx +2 -0
- package/src/field-types/stories/index.story.tsx +2 -2
- package/src/hooks/use-form-validity.ts +2 -2
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/colors" as *;
|
|
2
1
|
@use "@wordpress/base-styles/mixins" as *;
|
|
3
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
4
|
-
@use "@wordpress/base-styles/z-index" as *;
|
|
5
2
|
@use "../../../dataviews/style" as *;
|
|
6
3
|
|
|
7
4
|
.dataviews-view-table {
|
|
@@ -10,19 +7,19 @@
|
|
|
10
7
|
border-color: inherit;
|
|
11
8
|
border-collapse: collapse;
|
|
12
9
|
position: relative;
|
|
13
|
-
color:
|
|
10
|
+
color: var(--wpds-color-fg-content-neutral-weak);
|
|
14
11
|
margin-bottom: auto;
|
|
15
12
|
background-color: inherit;
|
|
16
13
|
|
|
17
14
|
th {
|
|
18
15
|
text-align: left;
|
|
19
|
-
color:
|
|
16
|
+
color: var(--wpds-color-fg-content-neutral);
|
|
20
17
|
font-weight: normal;
|
|
21
|
-
font-size:
|
|
18
|
+
font-size: var(--wpds-typography-font-size-md);
|
|
22
19
|
}
|
|
23
20
|
td,
|
|
24
21
|
th {
|
|
25
|
-
padding:
|
|
22
|
+
padding: var(--wpds-dimension-padding-md);
|
|
26
23
|
|
|
27
24
|
&.dataviews-view-table__actions-column {
|
|
28
25
|
text-align: right;
|
|
@@ -31,7 +28,7 @@
|
|
|
31
28
|
&.dataviews-view-table__actions-column--sticky {
|
|
32
29
|
position: sticky;
|
|
33
30
|
right: 0;
|
|
34
|
-
background-color: var(--wp-dataviews-color-background,
|
|
31
|
+
background-color: var(--wp-dataviews-color-background, var(--wpds-color-bg-surface-neutral-strong));
|
|
35
32
|
}
|
|
36
33
|
|
|
37
34
|
&.dataviews-view-table__actions-column--stuck {
|
|
@@ -43,7 +40,7 @@
|
|
|
43
40
|
bottom: 0;
|
|
44
41
|
left: 0;
|
|
45
42
|
width: 1px;
|
|
46
|
-
background-color:
|
|
43
|
+
background-color: var(--wpds-color-bg-surface-neutral);
|
|
47
44
|
}
|
|
48
45
|
}
|
|
49
46
|
|
|
@@ -57,17 +54,17 @@
|
|
|
57
54
|
}
|
|
58
55
|
}
|
|
59
56
|
tr {
|
|
60
|
-
border-top: 1px solid
|
|
57
|
+
border-top: 1px solid var(--wpds-color-stroke-surface-neutral-weak);
|
|
61
58
|
background-color: inherit;
|
|
62
59
|
|
|
63
60
|
td:first-child,
|
|
64
61
|
th:first-child {
|
|
65
|
-
padding-left:
|
|
62
|
+
padding-left: var(--wpds-dimension-padding-2xl);
|
|
66
63
|
}
|
|
67
64
|
|
|
68
65
|
td:last-child,
|
|
69
66
|
th:last-child {
|
|
70
|
-
padding-right:
|
|
67
|
+
padding-right: var(--wpds-dimension-padding-2xl);
|
|
71
68
|
}
|
|
72
69
|
|
|
73
70
|
&:last-child {
|
|
@@ -86,16 +83,16 @@
|
|
|
86
83
|
}
|
|
87
84
|
|
|
88
85
|
&.is-selected {
|
|
89
|
-
background-color:
|
|
90
|
-
color:
|
|
86
|
+
background-color: var(--wpds-color-bg-interactive-brand-weak-active);
|
|
87
|
+
color: var(--wpds-color-fg-content-neutral);
|
|
91
88
|
|
|
92
89
|
&,
|
|
93
90
|
& + tr {
|
|
94
|
-
border-top: 1px solid
|
|
91
|
+
border-top: 1px solid var(--wpds-color-stroke-surface-brand);
|
|
95
92
|
}
|
|
96
93
|
|
|
97
94
|
.dataviews-view-table__actions-column--sticky {
|
|
98
|
-
background-color:
|
|
95
|
+
background-color: var(--wpds-color-bg-interactive-brand-weak-active);
|
|
99
96
|
}
|
|
100
97
|
}
|
|
101
98
|
|
|
@@ -115,14 +112,14 @@
|
|
|
115
112
|
&:focus-within,
|
|
116
113
|
&:hover {
|
|
117
114
|
.dataviews-view-table__actions-column--sticky {
|
|
118
|
-
background-color: var(--wp-dataviews-color-background,
|
|
115
|
+
background-color: var(--wp-dataviews-color-background, var(--wpds-color-bg-surface-neutral-strong));
|
|
119
116
|
}
|
|
120
117
|
}
|
|
121
118
|
|
|
122
119
|
&.is-selected,
|
|
123
120
|
&.is-selected:hover {
|
|
124
121
|
.dataviews-view-table__actions-column--sticky {
|
|
125
|
-
background-color:
|
|
122
|
+
background-color: var(--wpds-color-bg-interactive-brand-weak-active);
|
|
126
123
|
}
|
|
127
124
|
}
|
|
128
125
|
}
|
|
@@ -131,7 +128,8 @@
|
|
|
131
128
|
thead {
|
|
132
129
|
position: sticky;
|
|
133
130
|
inset-block-start: 0;
|
|
134
|
-
|
|
131
|
+
// Ensure the header stays above the scrolling content.
|
|
132
|
+
z-index: 1;
|
|
135
133
|
background-color: inherit;
|
|
136
134
|
|
|
137
135
|
&.dataviews-view-table__thead--stuck {
|
|
@@ -143,7 +141,7 @@
|
|
|
143
141
|
left: 0;
|
|
144
142
|
right: 0;
|
|
145
143
|
height: 1px;
|
|
146
|
-
background-color:
|
|
144
|
+
background-color: var(--wpds-color-stroke-surface-neutral-weak);
|
|
147
145
|
}
|
|
148
146
|
}
|
|
149
147
|
|
|
@@ -152,29 +150,29 @@
|
|
|
152
150
|
}
|
|
153
151
|
th {
|
|
154
152
|
background-color: inherit;
|
|
155
|
-
padding-top:
|
|
156
|
-
padding-bottom:
|
|
153
|
+
padding-top: var(--wpds-dimension-padding-sm);
|
|
154
|
+
padding-bottom: var(--wpds-dimension-padding-sm);
|
|
157
155
|
font-size: 11px;
|
|
158
156
|
text-transform: uppercase;
|
|
159
|
-
font-weight:
|
|
157
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
160
158
|
|
|
161
159
|
&:has(.dataviews-view-table-header-button) {
|
|
162
|
-
padding-left:
|
|
163
|
-
padding-right:
|
|
160
|
+
padding-left: var(--wpds-dimension-padding-xs);
|
|
161
|
+
padding-right: var(--wpds-dimension-padding-xs);
|
|
164
162
|
|
|
165
163
|
.dataviews-view-table-header-button {
|
|
166
|
-
gap:
|
|
164
|
+
gap: var(--wpds-dimension-gap-xs);
|
|
167
165
|
}
|
|
168
166
|
}
|
|
169
167
|
|
|
170
168
|
&:has(.dataviews-view-table-header-button):first-child {
|
|
171
169
|
// Table cell padding minus the header button padding.
|
|
172
|
-
padding-left:
|
|
170
|
+
padding-left: var(--wpds-dimension-padding-lg);
|
|
173
171
|
}
|
|
174
172
|
|
|
175
173
|
&:has(.dataviews-view-table-header-button):last-child {
|
|
176
174
|
// Table cell padding minus the header button padding.
|
|
177
|
-
padding-right:
|
|
175
|
+
padding-right: var(--wpds-dimension-padding-lg);
|
|
178
176
|
}
|
|
179
177
|
}
|
|
180
178
|
}
|
|
@@ -183,7 +181,7 @@
|
|
|
183
181
|
vertical-align: top;
|
|
184
182
|
}
|
|
185
183
|
.dataviews-view-table__cell-content-wrapper {
|
|
186
|
-
min-height:
|
|
184
|
+
min-height: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
187
185
|
display: flex;
|
|
188
186
|
align-items: center;
|
|
189
187
|
white-space: nowrap;
|
|
@@ -203,13 +201,13 @@
|
|
|
203
201
|
}
|
|
204
202
|
}
|
|
205
203
|
.dataviews-view-table-header-button {
|
|
206
|
-
padding:
|
|
204
|
+
padding: var(--wpds-dimension-padding-xs) var(--wpds-dimension-padding-sm);
|
|
207
205
|
font-size: 11px;
|
|
208
206
|
text-transform: uppercase;
|
|
209
|
-
font-weight:
|
|
207
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
210
208
|
|
|
211
209
|
&:not(:hover) {
|
|
212
|
-
color:
|
|
210
|
+
color: var(--wpds-color-fg-interactive-neutral);
|
|
213
211
|
}
|
|
214
212
|
|
|
215
213
|
span {
|
|
@@ -222,7 +220,7 @@
|
|
|
222
220
|
}
|
|
223
221
|
|
|
224
222
|
.dataviews-view-table-header {
|
|
225
|
-
padding-left:
|
|
223
|
+
padding-left: var(--wpds-dimension-padding-xs);
|
|
226
224
|
}
|
|
227
225
|
|
|
228
226
|
.dataviews-view-table__actions-column {
|
|
@@ -246,14 +244,14 @@
|
|
|
246
244
|
}
|
|
247
245
|
td,
|
|
248
246
|
th {
|
|
249
|
-
padding:
|
|
247
|
+
padding: var(--wpds-dimension-padding-xs) var(--wpds-dimension-padding-sm);
|
|
250
248
|
}
|
|
251
249
|
}
|
|
252
250
|
|
|
253
251
|
&.has-comfortable-density {
|
|
254
252
|
td,
|
|
255
253
|
th {
|
|
256
|
-
padding:
|
|
254
|
+
padding: var(--wpds-dimension-padding-lg) var(--wpds-dimension-padding-md);
|
|
257
255
|
}
|
|
258
256
|
}
|
|
259
257
|
|
|
@@ -278,17 +276,17 @@
|
|
|
278
276
|
|
|
279
277
|
.dataviews-column-primary__media {
|
|
280
278
|
max-width: 60px;
|
|
281
|
-
min-width:
|
|
282
|
-
min-height:
|
|
279
|
+
min-width: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
280
|
+
min-height: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
283
281
|
overflow: hidden;
|
|
284
282
|
position: relative;
|
|
285
283
|
flex-shrink: 0;
|
|
286
|
-
background-color:
|
|
287
|
-
border-radius:
|
|
284
|
+
background-color: var(--wpds-color-bg-surface-neutral-strong);
|
|
285
|
+
border-radius: var(--wpds-border-radius-md);
|
|
288
286
|
|
|
289
287
|
img {
|
|
290
|
-
width:
|
|
291
|
-
height:
|
|
288
|
+
width: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
289
|
+
height: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
292
290
|
object-fit: cover;
|
|
293
291
|
}
|
|
294
292
|
|
|
@@ -299,8 +297,8 @@
|
|
|
299
297
|
left: 0;
|
|
300
298
|
width: 100%;
|
|
301
299
|
height: 100%;
|
|
302
|
-
box-shadow: inset 0 0 0
|
|
303
|
-
border-radius:
|
|
300
|
+
box-shadow: inset 0 0 0 var(--wpds-border-width-xs) rgba(0, 0, 0, 0.1);
|
|
301
|
+
border-radius: var(--wpds-border-radius-md);
|
|
304
302
|
}
|
|
305
303
|
}
|
|
306
304
|
|
|
@@ -314,9 +312,9 @@
|
|
|
314
312
|
|
|
315
313
|
.dataviews-view-table__group-header-row {
|
|
316
314
|
.dataviews-view-table__group-header-cell {
|
|
317
|
-
font-weight:
|
|
318
|
-
padding:
|
|
319
|
-
color:
|
|
315
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
316
|
+
padding: var(--wpds-dimension-padding-md) var(--wpds-dimension-padding-2xl);
|
|
317
|
+
color: var(--wpds-color-fg-content-neutral);
|
|
320
318
|
}
|
|
321
319
|
}
|
|
322
320
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* External dependencies
|
|
3
3
|
*/
|
|
4
|
-
import type {
|
|
4
|
+
import type { RefObject } from 'react';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* WordPress dependencies
|
|
@@ -30,16 +30,16 @@ const isScrolledToEnd = ( element: Element ) => {
|
|
|
30
30
|
*
|
|
31
31
|
* See https://github.com/Automattic/wp-calypso/pull/103005#discussion_r2077567912.
|
|
32
32
|
*
|
|
33
|
-
* @param
|
|
34
|
-
* @param
|
|
35
|
-
* @param
|
|
36
|
-
* @return
|
|
33
|
+
* @param params The parameters for the hook.
|
|
34
|
+
* @param params.scrollContainerRef The ref to the scroll container element.
|
|
35
|
+
* @param [params.enabledHorizontal=false] Whether to track horizontal scroll end.
|
|
36
|
+
* @return The scroll state.
|
|
37
37
|
*/
|
|
38
38
|
export function useScrollState( {
|
|
39
39
|
scrollContainerRef,
|
|
40
40
|
enabledHorizontal = false,
|
|
41
41
|
}: {
|
|
42
|
-
scrollContainerRef:
|
|
42
|
+
scrollContainerRef: RefObject< HTMLDivElement | null >;
|
|
43
43
|
enabledHorizontal?: boolean;
|
|
44
44
|
} ): { isHorizontalScrollEnd: boolean; isVerticallyScrolled: boolean } {
|
|
45
45
|
const [ isHorizontalScrollEnd, setIsHorizontalScrollEnd ] =
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
2
|
-
|
|
3
1
|
.dataviews-view-grid-items {
|
|
4
2
|
margin-bottom: auto;
|
|
5
3
|
display: grid;
|
|
6
|
-
gap:
|
|
4
|
+
gap: var(--wpds-dimension-gap-xl);
|
|
7
5
|
grid-template-rows: max-content;
|
|
8
6
|
grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
|
|
9
|
-
padding: 0
|
|
7
|
+
padding: 0 var(--wpds-dimension-padding-2xl) var(--wpds-dimension-padding-2xl);
|
|
10
8
|
container-type: inline-size;
|
|
11
9
|
|
|
12
10
|
@media not (prefers-reduced-motion) {
|
|
@@ -14,10 +12,10 @@
|
|
|
14
12
|
}
|
|
15
13
|
|
|
16
14
|
&.has-compact-density {
|
|
17
|
-
gap:
|
|
15
|
+
gap: var(--wpds-dimension-gap-lg);
|
|
18
16
|
}
|
|
19
17
|
|
|
20
18
|
&.has-comfortable-density {
|
|
21
|
-
gap:
|
|
19
|
+
gap: var(--wpds-dimension-gap-2xl);
|
|
22
20
|
}
|
|
23
21
|
}
|
|
@@ -86,7 +86,9 @@ export function ItemClickWrapper< Item >( {
|
|
|
86
86
|
className: `${ className } ${ className }--clickable`,
|
|
87
87
|
...extraProps,
|
|
88
88
|
children,
|
|
89
|
-
} )
|
|
89
|
+
} ) as ReactElement<
|
|
90
|
+
Pick< React.DOMAttributes< Element >, 'onClick' | 'onKeyDown' >
|
|
91
|
+
>;
|
|
90
92
|
|
|
91
93
|
// Clone the element and enhance onClick to stop propagation
|
|
92
94
|
return cloneElement( renderedElement, {
|
|
@@ -1,15 +1,14 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
2
1
|
@use "@wordpress/base-styles/mixins" as *;
|
|
3
2
|
|
|
4
3
|
.dataviews-pagination__page-select {
|
|
5
4
|
font-size: 11px;
|
|
6
|
-
font-weight:
|
|
5
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
7
6
|
text-transform: uppercase;
|
|
8
7
|
|
|
9
8
|
@include break-small() {
|
|
10
9
|
.components-select-control__input {
|
|
11
10
|
font-size: 11px !important;
|
|
12
|
-
font-weight:
|
|
11
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
13
12
|
}
|
|
14
13
|
}
|
|
15
14
|
}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
2
|
-
|
|
3
1
|
// For mobile viewports:
|
|
4
2
|
// - align bulk selection checkbox to the left.
|
|
5
3
|
// - align footer actions to the right.
|
|
6
4
|
.dataviews-picker-footer__bulk-selection {
|
|
7
5
|
align-self: flex-start;
|
|
8
|
-
height:
|
|
6
|
+
height: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
|
|
9
7
|
}
|
|
10
8
|
.dataviews-picker-footer__actions {
|
|
11
9
|
align-self: flex-end;
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
__experimentalItemGroup as ItemGroup,
|
|
6
6
|
__experimentalItem as Item,
|
|
7
7
|
BaseControl,
|
|
8
|
-
Icon,
|
|
8
|
+
Icon as WCIcon,
|
|
9
9
|
} from '@wordpress/components';
|
|
10
10
|
import { __ } from '@wordpress/i18n';
|
|
11
11
|
import { useContext } from '@wordpress/element';
|
|
@@ -32,7 +32,7 @@ function FieldItem( {
|
|
|
32
32
|
<Item onClick={ field.enableHiding ? onToggleVisibility : undefined }>
|
|
33
33
|
<Stack direction="row" gap="sm" justify="flex-start" align="center">
|
|
34
34
|
<div style={ { height: 24, width: 24 } }>
|
|
35
|
-
{ isVisible && <
|
|
35
|
+
{ isVisible && <WCIcon icon={ check } /> }
|
|
36
36
|
</div>
|
|
37
37
|
<span className="dataviews-view-config__label">
|
|
38
38
|
{ field.label }
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/colors" as *;
|
|
2
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
3
|
-
|
|
4
1
|
.dataviews-view-config {
|
|
5
2
|
width: 320px;
|
|
6
3
|
/* stylelint-disable-next-line property-no-unknown -- the linter needs to be updated to accepted the container-type property */
|
|
7
4
|
container-type: inline-size;
|
|
8
|
-
font-size:
|
|
9
|
-
line-height:
|
|
5
|
+
font-size: var(--wpds-typography-font-size-md);
|
|
6
|
+
line-height: var(--wpds-typography-line-height-sm);
|
|
10
7
|
}
|
|
11
8
|
|
|
12
9
|
.dataviews-config__popover.is-expanded .dataviews-config__popover-content-wrapper {
|
|
@@ -22,7 +19,7 @@
|
|
|
22
19
|
}
|
|
23
20
|
|
|
24
21
|
.dataviews-settings-section__title.dataviews-settings-section__title {
|
|
25
|
-
line-height:
|
|
22
|
+
line-height: var(--wpds-typography-line-height-md);
|
|
26
23
|
font-size: 15px;
|
|
27
24
|
}
|
|
28
25
|
|
|
@@ -74,11 +71,11 @@
|
|
|
74
71
|
|
|
75
72
|
.dataviews-view-config__modified-indicator {
|
|
76
73
|
position: absolute;
|
|
77
|
-
top:
|
|
78
|
-
right:
|
|
79
|
-
width:
|
|
80
|
-
height:
|
|
81
|
-
background: var(--
|
|
74
|
+
top: var(--wpds-dimension-gap-xs);
|
|
75
|
+
right: var(--wpds-dimension-gap-xs);
|
|
76
|
+
width: var(--wpds-dimension-gap-xs);
|
|
77
|
+
height: var(--wpds-dimension-gap-xs);
|
|
78
|
+
background: var(--wpds-color-bg-interactive-brand-strong);
|
|
82
79
|
border-radius: 50%;
|
|
83
80
|
pointer-events: none;
|
|
84
81
|
}
|
|
@@ -174,7 +174,9 @@ export const FreeCompositionComponent = () => {
|
|
|
174
174
|
No planets
|
|
175
175
|
</WCText>
|
|
176
176
|
<WCText variant="muted">{ `Try a different search because “${ view.search }” returned no results.` }</WCText>
|
|
177
|
-
<Button variant="secondary"
|
|
177
|
+
<Button variant="secondary" __next40pxDefaultSize>
|
|
178
|
+
Create new planet
|
|
179
|
+
</Button>
|
|
178
180
|
</Stack>
|
|
179
181
|
}
|
|
180
182
|
>
|
package/src/dataviews/style.scss
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
@use "@wordpress/base-styles/colors" as *;
|
|
2
|
-
@use "@wordpress/base-styles/variables" as *;
|
|
3
1
|
@use "@wordpress/base-styles/mixins" as *;
|
|
4
2
|
|
|
5
3
|
@mixin dataviews-refreshing {
|
|
@@ -15,21 +13,23 @@
|
|
|
15
13
|
.dataviews-wrapper,
|
|
16
14
|
.dataviews-picker-wrapper {
|
|
17
15
|
height: 100%;
|
|
16
|
+
flex-grow: 1;
|
|
17
|
+
min-height: 0;
|
|
18
18
|
box-sizing: border-box;
|
|
19
|
-
scroll-padding-bottom:
|
|
19
|
+
scroll-padding-bottom: calc(var(--wpds-dimension-base) * 16);
|
|
20
20
|
/* stylelint-disable-next-line property-no-unknown -- '@container' not globally permitted */
|
|
21
21
|
container: dataviews-wrapper / inline-size;
|
|
22
22
|
display: flex;
|
|
23
23
|
flex-direction: column;
|
|
24
|
-
font-size:
|
|
25
|
-
line-height:
|
|
26
|
-
background-color: var(--wp-dataviews-color-background,
|
|
24
|
+
font-size: var(--wpds-typography-font-size-md);
|
|
25
|
+
line-height: var(--wpds-typography-line-height-sm);
|
|
26
|
+
background-color: var(--wp-dataviews-color-background, var(--wpds-color-bg-surface-neutral-strong));
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
.dataviews__view-actions,
|
|
30
30
|
.dataviews-filters__container {
|
|
31
31
|
box-sizing: border-box;
|
|
32
|
-
padding:
|
|
32
|
+
padding: var(--wpds-dimension-padding-lg) var(--wpds-dimension-padding-2xl);
|
|
33
33
|
flex-shrink: 0;
|
|
34
34
|
position: sticky;
|
|
35
35
|
left: 0;
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
|
|
43
43
|
.dataviews-no-results,
|
|
44
44
|
.dataviews-loading {
|
|
45
|
-
padding: 0
|
|
45
|
+
padding: 0 var(--wpds-dimension-padding-2xl);
|
|
46
46
|
flex-grow: 1;
|
|
47
47
|
display: flex;
|
|
48
48
|
align-items: center;
|
|
@@ -75,14 +75,14 @@
|
|
|
75
75
|
@container (max-width: 430px) {
|
|
76
76
|
.dataviews__view-actions,
|
|
77
77
|
.dataviews-filters__container {
|
|
78
|
-
padding:
|
|
78
|
+
padding: var(--wpds-dimension-padding-md) var(--wpds-dimension-padding-2xl);
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
81
|
|
|
82
82
|
.dataviews-title-field {
|
|
83
|
-
font-size:
|
|
84
|
-
font-weight:
|
|
85
|
-
color:
|
|
83
|
+
font-size: var(--wpds-typography-font-size-md);
|
|
84
|
+
font-weight: var(--wpds-typography-font-weight-medium);
|
|
85
|
+
color: var(--wpds-color-fg-content-neutral);
|
|
86
86
|
text-overflow: ellipsis;
|
|
87
87
|
white-space: nowrap;
|
|
88
88
|
width: 100%;
|
|
@@ -94,10 +94,10 @@
|
|
|
94
94
|
overflow: hidden;
|
|
95
95
|
display: block;
|
|
96
96
|
flex-grow: 0;
|
|
97
|
-
color:
|
|
97
|
+
color: var(--wpds-color-fg-interactive-neutral);
|
|
98
98
|
|
|
99
99
|
&:hover {
|
|
100
|
-
color: var(--
|
|
100
|
+
color: var(--wpds-color-fg-interactive-brand);
|
|
101
101
|
}
|
|
102
102
|
@include link-reset();
|
|
103
103
|
}
|
|
@@ -110,18 +110,18 @@
|
|
|
110
110
|
overflow: hidden;
|
|
111
111
|
display: block;
|
|
112
112
|
width: 100%;
|
|
113
|
-
color:
|
|
113
|
+
color: var(--wpds-color-fg-interactive-neutral-active);
|
|
114
114
|
&:hover {
|
|
115
|
-
color: var(--
|
|
115
|
+
color: var(--wpds-color-fg-interactive-brand);
|
|
116
116
|
}
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
.dataviews-title-field--clickable {
|
|
121
121
|
cursor: var(--wpds-cursor-control);
|
|
122
|
-
color:
|
|
122
|
+
color: var(--wpds-color-fg-interactive-neutral);
|
|
123
123
|
&:hover {
|
|
124
|
-
color: var(--
|
|
124
|
+
color: var(--wpds-color-fg-interactive-brand);
|
|
125
125
|
}
|
|
126
126
|
@include link-reset();
|
|
127
127
|
}
|
|
@@ -132,3 +132,12 @@
|
|
|
132
132
|
z-index: 2; // Ensure it appears above dataview items when scrolling.
|
|
133
133
|
background-color: #fff;
|
|
134
134
|
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* When DataViews are placed within cards, apply a consistent top padding.
|
|
138
|
+
*/
|
|
139
|
+
.components-card__body:has(> .dataviews-wrapper),
|
|
140
|
+
.components-card__body:has(> .dataviews-picker-wrapper) {
|
|
141
|
+
padding: var(--wpds-dimension-padding-sm) 0 0;
|
|
142
|
+
overflow: hidden; // Prevent cells with white backgrounds overflowing the card
|
|
143
|
+
}
|
|
@@ -254,6 +254,7 @@ export const WithModal = ( {
|
|
|
254
254
|
<Stack direction="row" justify="left" gap="sm">
|
|
255
255
|
<Button
|
|
256
256
|
variant="primary"
|
|
257
|
+
__next40pxDefaultSize
|
|
257
258
|
onClick={ () => setIsModalOpen( true ) }
|
|
258
259
|
>
|
|
259
260
|
Open Picker Modal
|
|
@@ -262,6 +263,7 @@ export const WithModal = ( {
|
|
|
262
263
|
onClick={ () => setSelectedItems( [] ) }
|
|
263
264
|
disabled={ ! selectedItems.length }
|
|
264
265
|
accessibleWhenDisabled
|
|
266
|
+
__next40pxDefaultSize
|
|
265
267
|
>
|
|
266
268
|
Clear Selection
|
|
267
269
|
</Button>
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { useState, useMemo } from '@wordpress/element';
|
|
5
5
|
import {
|
|
6
|
-
Icon,
|
|
6
|
+
Icon as WCIcon,
|
|
7
7
|
__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,
|
|
8
8
|
__experimentalInputControlSuffixWrapper as InputControlSuffixWrapper,
|
|
9
9
|
} from '@wordpress/components';
|
|
@@ -88,7 +88,7 @@ const DollarPrefix = () => (
|
|
|
88
88
|
);
|
|
89
89
|
const StarIconPrefix = () => (
|
|
90
90
|
<InputControlPrefixWrapper variant="icon">
|
|
91
|
-
<
|
|
91
|
+
<WCIcon icon={ starFilled } />
|
|
92
92
|
</InputControlPrefixWrapper>
|
|
93
93
|
);
|
|
94
94
|
const PercentSuffix = () => (
|
|
@@ -392,8 +392,8 @@ function handleCustomValidationAsync< Item >(
|
|
|
392
392
|
}
|
|
393
393
|
|
|
394
394
|
type PromiseHandler< Item > = {
|
|
395
|
-
customCounterRef: React.
|
|
396
|
-
elementsCounterRef: React.
|
|
395
|
+
customCounterRef: React.RefObject< Record< string, number > >;
|
|
396
|
+
elementsCounterRef: React.RefObject< Record< string, number > >;
|
|
397
397
|
setFormValidity: React.Dispatch< React.SetStateAction< FormValidity > >;
|
|
398
398
|
path: string[];
|
|
399
399
|
item: Item;
|