@wordpress/dataviews 14.2.1-next.v.202605131032.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.
Files changed (108) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/build/components/dataform-controls/date.cjs.map +3 -3
  3. package/build/components/dataform-controls/datetime.cjs.map +2 -2
  4. package/build/components/dataform-controls/email.cjs.map +3 -3
  5. package/build/components/dataform-controls/telephone.cjs.map +3 -3
  6. package/build/components/dataform-controls/url.cjs.map +3 -3
  7. package/build/components/dataform-layouts/panel/summary-button.cjs +18 -1
  8. package/build/components/dataform-layouts/panel/summary-button.cjs.map +3 -3
  9. package/build/components/dataform-layouts/panel/utils/get-label-content.cjs +17 -4
  10. package/build/components/dataform-layouts/panel/utils/get-label-content.cjs.map +3 -3
  11. package/build/components/dataviews-context/index.cjs.map +2 -2
  12. package/build/components/dataviews-filters/filter.cjs +86 -80
  13. package/build/components/dataviews-filters/filter.cjs.map +3 -3
  14. package/build/components/dataviews-filters/search-widget.cjs.map +3 -3
  15. package/build/components/dataviews-layouts/grid/composite-grid.cjs +10 -2
  16. package/build/components/dataviews-layouts/grid/composite-grid.cjs.map +2 -2
  17. package/build/components/dataviews-layouts/picker-table/index.cjs +8 -0
  18. package/build/components/dataviews-layouts/picker-table/index.cjs.map +2 -2
  19. package/build/components/dataviews-layouts/table/column-header-menu.cjs.map +3 -3
  20. package/build/components/dataviews-layouts/table/use-scroll-state.cjs.map +1 -1
  21. package/build/components/dataviews-layouts/utils/item-click-wrapper.cjs.map +2 -2
  22. package/build/components/dataviews-view-config/properties-section.cjs.map +3 -3
  23. package/build/hooks/use-form-validity.cjs.map +1 -1
  24. package/build-module/components/dataform-controls/date.mjs +2 -2
  25. package/build-module/components/dataform-controls/date.mjs.map +2 -2
  26. package/build-module/components/dataform-controls/datetime.mjs.map +2 -2
  27. package/build-module/components/dataform-controls/email.mjs +2 -2
  28. package/build-module/components/dataform-controls/email.mjs.map +2 -2
  29. package/build-module/components/dataform-controls/telephone.mjs +2 -2
  30. package/build-module/components/dataform-controls/telephone.mjs.map +2 -2
  31. package/build-module/components/dataform-controls/url.mjs +2 -2
  32. package/build-module/components/dataform-controls/url.mjs.map +2 -2
  33. package/build-module/components/dataform-layouts/panel/summary-button.mjs +19 -2
  34. package/build-module/components/dataform-layouts/panel/summary-button.mjs.map +2 -2
  35. package/build-module/components/dataform-layouts/panel/utils/get-label-content.mjs +18 -5
  36. package/build-module/components/dataform-layouts/panel/utils/get-label-content.mjs.map +2 -2
  37. package/build-module/components/dataviews-context/index.mjs.map +2 -2
  38. package/build-module/components/dataviews-filters/filter.mjs +88 -83
  39. package/build-module/components/dataviews-filters/filter.mjs.map +2 -2
  40. package/build-module/components/dataviews-filters/search-widget.mjs +3 -3
  41. package/build-module/components/dataviews-filters/search-widget.mjs.map +2 -2
  42. package/build-module/components/dataviews-layouts/grid/composite-grid.mjs +11 -4
  43. package/build-module/components/dataviews-layouts/grid/composite-grid.mjs.map +2 -2
  44. package/build-module/components/dataviews-layouts/picker-table/index.mjs +8 -0
  45. package/build-module/components/dataviews-layouts/picker-table/index.mjs.map +2 -2
  46. package/build-module/components/dataviews-layouts/table/column-header-menu.mjs +5 -5
  47. package/build-module/components/dataviews-layouts/table/column-header-menu.mjs.map +2 -2
  48. package/build-module/components/dataviews-layouts/table/use-scroll-state.mjs.map +1 -1
  49. package/build-module/components/dataviews-layouts/utils/item-click-wrapper.mjs.map +2 -2
  50. package/build-module/components/dataviews-view-config/properties-section.mjs +2 -2
  51. package/build-module/components/dataviews-view-config/properties-section.mjs.map +2 -2
  52. package/build-module/hooks/use-form-validity.mjs.map +1 -1
  53. package/build-style/style-rtl.css +395 -377
  54. package/build-style/style.css +395 -377
  55. package/build-types/components/dataform-layouts/panel/summary-button.d.ts.map +1 -1
  56. package/build-types/components/dataform-layouts/panel/utils/get-label-content.d.ts.map +1 -1
  57. package/build-types/components/dataviews-context/index.d.ts +2 -2
  58. package/build-types/components/dataviews-context/index.d.ts.map +1 -1
  59. package/build-types/components/dataviews-filters/filter.d.ts.map +1 -1
  60. package/build-types/components/dataviews-layouts/grid/composite-grid.d.ts.map +1 -1
  61. package/build-types/components/dataviews-layouts/picker-table/index.d.ts.map +1 -1
  62. package/build-types/components/dataviews-layouts/table/use-scroll-state.d.ts +9 -5
  63. package/build-types/components/dataviews-layouts/table/use-scroll-state.d.ts.map +1 -1
  64. package/build-types/components/dataviews-layouts/utils/item-click-wrapper.d.ts.map +1 -1
  65. package/build-types/dataviews/stories/free-composition.d.ts.map +1 -1
  66. package/build-wp/index.js +3298 -1396
  67. package/package.json +18 -18
  68. package/src/components/dataform-controls/date.tsx +2 -2
  69. package/src/components/dataform-controls/datetime.tsx +1 -1
  70. package/src/components/dataform-controls/email.tsx +2 -2
  71. package/src/components/dataform-controls/style.scss +2 -4
  72. package/src/components/dataform-controls/telephone.tsx +2 -2
  73. package/src/components/dataform-controls/url.tsx +2 -2
  74. package/src/components/dataform-layouts/card/style.scss +4 -7
  75. package/src/components/dataform-layouts/details/style.scss +2 -4
  76. package/src/components/dataform-layouts/panel/style.scss +41 -21
  77. package/src/components/dataform-layouts/panel/summary-button.tsx +17 -6
  78. package/src/components/dataform-layouts/panel/utils/get-label-content.tsx +15 -7
  79. package/src/components/dataform-layouts/regular/style.scss +5 -8
  80. package/src/components/dataviews-bulk-actions/style.scss +2 -6
  81. package/src/components/dataviews-context/index.ts +2 -4
  82. package/src/components/dataviews-filters/filter.tsx +93 -77
  83. package/src/components/dataviews-filters/search-widget.tsx +3 -3
  84. package/src/components/dataviews-filters/style.scss +93 -95
  85. package/src/components/dataviews-footer/style.scss +4 -6
  86. package/src/components/dataviews-item-actions/style.scss +1 -3
  87. package/src/components/dataviews-layouts/activity/style.scss +39 -41
  88. package/src/components/dataviews-layouts/grid/composite-grid.tsx +15 -8
  89. package/src/components/dataviews-layouts/grid/style.scss +46 -50
  90. package/src/components/dataviews-layouts/list/style.scss +61 -59
  91. package/src/components/dataviews-layouts/picker-grid/style.scss +33 -37
  92. package/src/components/dataviews-layouts/picker-table/index.tsx +15 -0
  93. package/src/components/dataviews-layouts/picker-table/style.scss +5 -8
  94. package/src/components/dataviews-layouts/table/column-header-menu.tsx +5 -5
  95. package/src/components/dataviews-layouts/table/style.scss +44 -46
  96. package/src/components/dataviews-layouts/table/use-scroll-state.ts +6 -6
  97. package/src/components/dataviews-layouts/utils/grid-items.scss +4 -6
  98. package/src/components/dataviews-layouts/utils/item-click-wrapper.tsx +3 -1
  99. package/src/components/dataviews-pagination/style.scss +2 -3
  100. package/src/components/dataviews-picker-footer/style.scss +1 -3
  101. package/src/components/dataviews-selection-checkbox/style.scss +0 -1
  102. package/src/components/dataviews-view-config/properties-section.tsx +2 -2
  103. package/src/components/dataviews-view-config/style.scss +8 -11
  104. package/src/dataviews/stories/free-composition.tsx +3 -1
  105. package/src/dataviews/style.scss +27 -18
  106. package/src/dataviews-picker/stories/index.story.tsx +2 -0
  107. package/src/field-types/stories/index.story.tsx +2 -2
  108. package/src/hooks/use-form-validity.ts +2 -2
@@ -1,5 +1,3 @@
1
- @use "@wordpress/base-styles/variables" as *;
2
- @use "@wordpress/base-styles/colors" as *;
3
1
  @use "@wordpress/base-styles/z-index" as *;
4
2
 
5
3
  .dataviews-action-modal {
@@ -10,5 +8,5 @@
10
8
  // from wordpress/ui package, but we're not ready to use it yet.
11
9
  // See https://github.com/WordPress/gutenberg/pull/75721/
12
10
  .dataviews-item-actions .components-button:not(.dataviews-all-actions-button) {
13
- padding: 0 $grid-unit-05;
11
+ padding: 0 var(--wpds-dimension-padding-xs);
14
12
  }
@@ -1,21 +1,19 @@
1
- @use "@wordpress/base-styles/colors" as *;
2
- @use "@wordpress/base-styles/variables" as *;
3
1
  @use "../../../dataviews/style" as *;
4
2
 
5
3
  .dataviews-view-activity {
6
4
  margin: 0 0 auto;
7
- padding: 0 $grid-unit-30;
5
+ padding: 0 var(--wpds-dimension-padding-2xl);
8
6
 
9
7
  .dataviews-view-activity__group-header {
10
- font-size: $font-size-large;
11
- font-weight: $font-weight-medium;
12
- color: $gray-600;
13
- margin: 0 0 $grid-unit-10 0;
8
+ font-size: var(--wpds-typography-font-size-lg);
9
+ font-weight: var(--wpds-typography-font-weight-medium);
10
+ color: var(--wpds-color-fg-content-neutral-weak);
11
+ margin: 0 0 var(--wpds-dimension-gap-sm) 0;
14
12
  padding: 0;
15
13
  }
16
14
 
17
15
  .dataviews-view-activity__item-actions {
18
- min-width: $grid-unit-30;
16
+ min-width: calc(var(--wpds-dimension-base) * 6); // TODO: use size token when available
19
17
  }
20
18
 
21
19
  .dataviews-view-activity__item-content {
@@ -24,7 +22,7 @@
24
22
  .dataviews-view-activity__item-title,
25
23
  .dataviews-view-activity__item-description,
26
24
  .dataviews-view-activity__item-fields {
27
- min-height: $grid-unit-20;
25
+ min-height: calc(var(--wpds-dimension-base) * 4); // TODO: use size token when available
28
26
  }
29
27
 
30
28
  .dataviews-view-activity__item-title {
@@ -38,9 +36,9 @@
38
36
  cursor: var(--wpds-cursor-control);
39
37
 
40
38
  &:focus-visible {
41
- outline: var(--wp-admin-border-width-focus) solid var(--wp-admin-theme-color);
39
+ outline: var(--wp-admin-border-width-focus) solid var(--wpds-color-stroke-focus-brand);
42
40
  outline-offset: var(--wp-admin-border-width-focus);
43
- border-radius: $radius-small;
41
+ border-radius: var(--wpds-border-radius-sm);
44
42
  }
45
43
  }
46
44
  }
@@ -57,10 +55,10 @@
57
55
  }
58
56
 
59
57
  .dataviews-view-activity__item-fields {
60
- color: $gray-700;
58
+ color: var(--wpds-color-fg-content-neutral-weak);
61
59
  display: flex;
62
- gap: $grid-unit-15;
63
- row-gap: $grid-unit-05;
60
+ gap: var(--wpds-dimension-gap-md);
61
+ row-gap: var(--wpds-dimension-gap-xs);
64
62
  flex-wrap: wrap;
65
63
 
66
64
  &:empty {
@@ -89,7 +87,7 @@
89
87
  flex: 1 1 auto;
90
88
  width: 1px;
91
89
  margin: 0 auto;
92
- background-color: $gray-300;
90
+ background-color: var(--wpds-color-stroke-surface-neutral);
93
91
  }
94
92
 
95
93
  &::before {
@@ -97,69 +95,69 @@
97
95
  flex: 0 0 auto;
98
96
  width: 1px;
99
97
  margin: 0 auto;
100
- background-color: $gray-300;
98
+ background-color: var(--wpds-color-stroke-surface-neutral);
101
99
  }
102
100
  }
103
101
 
104
102
  .dataviews-view-activity__item {
105
103
  &.is-compact {
106
104
  .dataviews-view-activity__item-type {
107
- width: $grid-unit-15;
105
+ width: var(--wpds-dimension-padding-md);
108
106
 
109
107
  &::before {
110
- height: $grid-unit-15;
108
+ height: calc(var(--wpds-dimension-base) * 3);
111
109
  }
112
110
  }
113
111
  .dataviews-view-activity__item-type-icon {
114
- width: calc($grid-unit-15 - 1px);
115
- height: calc($grid-unit-15 - 1px);
112
+ width: calc(var(--wpds-dimension-base) * 3 - 1px);
113
+ height: calc(var(--wpds-dimension-base) * 3 - 1px);
116
114
  }
117
115
  .dataviews-view-activity__item-content {
118
- margin: $grid-unit-15 0;
116
+ margin: var(--wpds-dimension-gap-md) 0;
119
117
  }
120
118
  }
121
119
 
122
120
  &.is-balanced {
123
121
  .dataviews-view-activity__item-type {
124
- width: $grid-unit-30;
122
+ width: calc(var(--wpds-dimension-base) * 6); // TODO: use size token when available
125
123
 
126
124
  &::before {
127
- height: $grid-unit-15;
125
+ height: calc(var(--wpds-dimension-base) * 3);
128
126
  }
129
127
  }
130
128
  .dataviews-view-activity__item-type-icon {
131
- width: calc($grid-unit-30 + 1px);
132
- height: calc($grid-unit-30 + 1px);
129
+ width: calc(var(--wpds-dimension-base) * 6 + 1px);
130
+ height: calc(var(--wpds-dimension-base) * 6 + 1px);
133
131
  }
134
132
  .dataviews-view-activity__item-content {
135
- margin: $grid-unit-15 0;
136
- padding-top: $grid-unit-10;
133
+ margin: var(--wpds-dimension-gap-md) 0;
134
+ padding-top: var(--wpds-dimension-padding-sm);
137
135
  }
138
136
  }
139
137
 
140
138
  &.is-comfortable {
141
139
  .dataviews-view-activity__item-type {
142
- width: $grid-unit-40;
140
+ width: calc(var(--wpds-dimension-base) * 8); // TODO: use size token when available
143
141
 
144
142
  &::before {
145
- height: $grid-unit-10;
143
+ height: calc(var(--wpds-dimension-base) * 2);
146
144
  }
147
145
  }
148
146
  .dataviews-view-activity__item-type-icon {
149
- width: calc($grid-unit-40 + 1px);
150
- height: calc($grid-unit-40 + 1px);
147
+ width: calc(var(--wpds-dimension-base) * 8 + 1px);
148
+ height: calc(var(--wpds-dimension-base) * 8 + 1px);
151
149
  }
152
150
  .dataviews-view-activity__item-content {
153
- margin: $grid-unit-10 0 $grid-unit-20;
154
- padding-top: $grid-unit-15;
151
+ margin: var(--wpds-dimension-gap-sm) 0 var(--wpds-dimension-gap-lg);
152
+ padding-top: var(--wpds-dimension-padding-md);
155
153
  }
156
154
  }
157
155
 
158
156
  &.is-comfortable,
159
157
  &.is-balanced {
160
158
  .dataviews-view-activity__item-bullet {
161
- width: calc($grid-unit-10 + 1px);
162
- height: calc($grid-unit-10 + 1px);
159
+ width: calc(var(--wpds-dimension-base) * 2 + 1px);
160
+ height: calc(var(--wpds-dimension-base) * 2 + 1px);
163
161
  position: relative;
164
162
  top: 50%;
165
163
  transform: translateY(-50%);
@@ -179,7 +177,7 @@
179
177
  & > .dataviews-view-activity__item:last-child {
180
178
  .dataviews-view-activity__item-type {
181
179
  &::after {
182
- background: linear-gradient(to bottom, $gray-300 0%, rgba($gray-300, 0.2) 60%, rgba($gray-300, 0) 100%);
180
+ background: linear-gradient(to bottom, var(--wpds-color-stroke-surface-neutral) 0%, color-mix(in srgb, var(--wpds-color-stroke-surface-neutral) 20%, transparent) 60%, transparent 100%);
183
181
  }
184
182
  }
185
183
  }
@@ -187,7 +185,7 @@
187
185
  .dataviews-view-activity__item-type-icon {
188
186
  overflow: hidden;
189
187
  flex-shrink: 0;
190
- background-color: $white;
188
+ background-color: var(--wpds-color-bg-surface-neutral-strong);
191
189
 
192
190
  img,
193
191
  svg,
@@ -197,18 +195,18 @@
197
195
  height: 100%;
198
196
  margin: 0 auto;
199
197
  object-fit: cover;
200
- border-radius: $radius-round;
198
+ border-radius: 50%;
201
199
  box-sizing: border-box;
202
- box-shadow: inset 0 0 0 $border-width $gray-300;
200
+ box-shadow: inset 0 0 0 var(--wpds-border-width-xs) var(--wpds-color-stroke-surface-neutral);
203
201
  }
204
202
 
205
203
  svg {
206
- padding: $grid-unit-05;
204
+ padding: var(--wpds-dimension-padding-xs);
207
205
  }
208
206
 
209
207
  .dataviews-view-activity__item-bullet {
210
208
  content: "";
211
- background-color: $gray-300;
209
+ background-color: var(--wpds-color-stroke-surface-neutral);
212
210
  }
213
211
  }
214
212
 
@@ -10,11 +10,11 @@ import type { ComponentProps, ReactElement, HTMLAttributes } from 'react';
10
10
  import {
11
11
  Flex,
12
12
  FlexItem,
13
- Tooltip,
14
13
  Composite,
15
14
  privateApis as componentsPrivateApis,
16
15
  } from '@wordpress/components';
17
- import { Stack } from '@wordpress/ui';
16
+ // eslint-disable-next-line @wordpress/use-recommended-components -- `Tooltip` is not yet on the recommended `@wordpress/ui` allow-list; landing as a migration step ahead of the wider rollout.
17
+ import { Stack, Tooltip } from '@wordpress/ui';
18
18
  import { __, sprintf } from '@wordpress/i18n';
19
19
  import { useInstanceId } from '@wordpress/compose';
20
20
  import { isAppleOS } from '@wordpress/keycodes';
@@ -236,7 +236,7 @@ const GridItem = forwardRef< HTMLDivElement, GridItemProps< any > >(
236
236
  </div>
237
237
  ) }
238
238
  { showTitle && (
239
- <div className="dataviews-view-grid__title">
239
+ <div className="dataviews-view-grid__title-actions">
240
240
  <ItemClickWrapper
241
241
  item={ item }
242
242
  isItemClickable={ isItemClickable }
@@ -304,11 +304,18 @@ const GridItem = forwardRef< HTMLDivElement, GridItemProps< any > >(
304
304
  direction="row"
305
305
  >
306
306
  <>
307
- <Tooltip text={ field.label }>
308
- <FlexItem className="dataviews-view-grid__field-name">
309
- { field.header }
310
- </FlexItem>
311
- </Tooltip>
307
+ <Tooltip.Root>
308
+ <Tooltip.Trigger
309
+ render={
310
+ <FlexItem className="dataviews-view-grid__field-name">
311
+ { field.header }
312
+ </FlexItem>
313
+ }
314
+ />
315
+ <Tooltip.Popup>
316
+ { field.label }
317
+ </Tooltip.Popup>
318
+ </Tooltip.Root>
312
319
  <FlexItem
313
320
  className="dataviews-view-grid__field-value"
314
321
  style={ { maxHeight: 'none' } }
@@ -1,15 +1,11 @@
1
- @use "sass:math";
2
- @use "@wordpress/base-styles/colors" as *;
3
- @use "@wordpress/base-styles/variables" as *;
4
- @use "@wordpress/base-styles/z-index" as *;
5
1
  @use "../utils/grid-items.scss" as *;
6
2
  @use "../../../dataviews/style" as *;
7
3
 
8
4
  .dataviews-view-grid {
9
- padding: 0 $grid-unit-30 $grid-unit-30;
5
+ padding: 0 var(--wpds-dimension-padding-2xl) var(--wpds-dimension-padding-2xl);
10
6
  display: flex;
11
7
  flex-direction: column;
12
- gap: $grid-unit-30;
8
+ gap: var(--wpds-dimension-gap-xl);
13
9
  container-type: inline-size;
14
10
  margin-bottom: auto;
15
11
 
@@ -18,27 +14,27 @@
18
14
  }
19
15
 
20
16
  &.has-compact-density {
21
- gap: $grid-unit-20;
17
+ gap: var(--wpds-dimension-gap-lg);
22
18
 
23
19
  .dataviews-view-grid__row {
24
- gap: $grid-unit-20;
20
+ gap: var(--wpds-dimension-gap-lg);
25
21
  }
26
22
  }
27
23
 
28
24
  &.has-comfortable-density {
29
- gap: $grid-unit-40;
25
+ gap: var(--wpds-dimension-gap-2xl);
30
26
 
31
27
  .dataviews-view-grid__row {
32
- gap: $grid-unit-40;
28
+ gap: var(--wpds-dimension-gap-2xl);
33
29
  }
34
30
  }
35
31
 
36
32
  .dataviews-view-grid__row {
37
33
  display: grid;
38
- gap: $grid-unit-30;
34
+ gap: var(--wpds-dimension-gap-xl);
39
35
 
40
36
  .dataviews-view-grid__row__gridcell {
41
- border-radius: $radius-medium;
37
+ border-radius: var(--wpds-border-radius-md);
42
38
  position: relative;
43
39
 
44
40
  &[data-focus-visible]::after {
@@ -48,8 +44,8 @@
48
44
  left: 0;
49
45
  width: 100%;
50
46
  height: 100%;
51
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
52
- border-radius: $radius-medium;
47
+ box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wpds-color-stroke-focus-brand);
48
+ border-radius: var(--wpds-border-radius-md);
53
49
  pointer-events: none;
54
50
 
55
51
  // Windows High Contrast mode will show this outline, but not the box-shadow.
@@ -66,13 +62,14 @@
66
62
  height: 100%;
67
63
  justify-content: flex-start;
68
64
  position: relative;
65
+ isolation: isolate;
69
66
 
70
- .dataviews-view-grid__title {
71
- padding: $grid-unit-10 0 $grid-unit-05;
67
+ .dataviews-view-grid__title-actions {
68
+ padding: var(--wpds-dimension-padding-sm) 0 var(--wpds-dimension-padding-xs);
72
69
  }
73
70
 
74
71
  .dataviews-view-grid__title-field {
75
- min-height: $grid-unit-30; // Preserve layout when there is no ellipsis button
72
+ min-height: calc(var(--wpds-dimension-base) * 6); // TODO: use size token when available. Preserve layout when there is no ellipsis button
76
73
  overflow: hidden;
77
74
  align-content: center;
78
75
  text-align: start;
@@ -85,26 +82,24 @@
85
82
 
86
83
  &.is-selected {
87
84
  .dataviews-view-grid__fields .dataviews-view-grid__field .dataviews-view-grid__field-value {
88
- color: $gray-900;
85
+ color: var(--wpds-color-fg-content-neutral);
89
86
  }
90
87
  }
91
- &.is-selected .dataviews-view-grid__media::after,
92
- .dataviews-view-grid__media:focus::after {
93
- background-color: rgba(var(--wp-admin-theme-color--rgb), 0.08);
94
- }
95
88
  &.is-selected .dataviews-view-grid__media::after {
96
- box-shadow: inset 0 0 0 $border-width var(--wp-admin-theme-color);
89
+ box-shadow:
90
+ inset 0 0 0 var(--wpds-border-width-xs) var(--wpds-color-stroke-interactive-brand),
91
+ inset 0 0 0 var(--wpds-border-width-sm) var(--wpds-color-bg-surface-neutral-strong);
97
92
  }
98
93
  .dataviews-view-grid__media:focus::after {
99
- box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wp-admin-theme-color);
94
+ box-shadow: inset 0 0 0 var(--wp-admin-border-width-focus) var(--wpds-color-stroke-focus-brand);
100
95
  }
101
96
  }
102
97
 
103
98
  .dataviews-view-grid__media {
104
99
  width: 100%;
105
100
  aspect-ratio: 1/1;
106
- background-color: $white;
107
- border-radius: $radius-medium;
101
+ background-color: var(--wpds-color-bg-surface-neutral-strong);
102
+ border-radius: var(--wpds-border-radius-md);
108
103
  overflow: hidden;
109
104
  position: relative;
110
105
 
@@ -125,8 +120,8 @@
125
120
  left: 0;
126
121
  width: 100%;
127
122
  height: 100%;
128
- box-shadow: inset 0 0 0 $border-width rgba(0, 0, 0, 0.1);
129
- border-radius: $grid-unit-05;
123
+ box-shadow: inset 0 0 0 var(--wpds-border-width-xs) rgba(0, 0, 0, 0.1);
124
+ border-radius: var(--wpds-border-radius-md);
130
125
  pointer-events: none;
131
126
  }
132
127
 
@@ -134,9 +129,9 @@
134
129
  width: 100%;
135
130
  height: 100%;
136
131
  display: block;
137
- border-radius: $radius-medium;
132
+ border-radius: var(--wpds-border-radius-md);
138
133
  box-shadow: none;
139
- background: $gray-100;
134
+ background: var(--wpds-color-bg-surface-neutral);
140
135
  }
141
136
  }
142
137
 
@@ -146,22 +141,22 @@
146
141
  line-height: 16px;
147
142
 
148
143
  &:not(:empty) {
149
- padding: 0 0 $grid-unit-15;
144
+ padding: 0 0 var(--wpds-dimension-padding-md);
150
145
  }
151
146
 
152
147
  .dataviews-view-grid__field-value:not(:empty) {
153
- min-height: $grid-unit-30;
154
- line-height: $grid-unit-05 * 5;
155
- padding-top: math.div($grid-unit-05, 2);
148
+ min-height: calc(var(--wpds-dimension-base) * 6); // TODO: use size token when available
149
+ line-height: var(--wpds-typography-line-height-sm);
150
+ padding-top: calc(var(--wpds-dimension-base) / 2);
156
151
  }
157
152
 
158
153
  .dataviews-view-grid__field {
159
- min-height: $grid-unit-30;
154
+ min-height: calc(var(--wpds-dimension-base) * 6); // TODO: use size token when available
160
155
  align-items: center;
161
156
 
162
157
  .dataviews-view-grid__field-name {
163
158
  width: 35%;
164
- color: $gray-700;
159
+ color: var(--wpds-color-fg-content-neutral-weak);
165
160
  overflow: hidden;
166
161
  text-overflow: ellipsis;
167
162
  white-space: nowrap;
@@ -182,7 +177,7 @@
182
177
 
183
178
  .dataviews-view-grid__badge-fields {
184
179
  &:not(:empty) {
185
- padding-bottom: $grid-unit-15;
180
+ padding-bottom: var(--wpds-dimension-padding-md);
186
181
  }
187
182
  }
188
183
 
@@ -199,8 +194,9 @@
199
194
  .dataviews-view-grid__card .dataviews-selection-checkbox {
200
195
  position: absolute;
201
196
  top: -9999em;
202
- left: $grid-unit-10;
203
- z-index: z-index(".dataviews-view-grid__card .dataviews-selection-checkbox");
197
+ left: var(--wpds-dimension-padding-sm);
198
+ // Ensure selection checkbox stays above the preview field.
199
+ z-index: 1;
204
200
  opacity: 0;
205
201
 
206
202
  @media not (prefers-reduced-motion) {
@@ -210,7 +206,7 @@
210
206
  @media (hover: none) {
211
207
  // Show checkboxes on devices that do not support hover.
212
208
  opacity: 1;
213
- top: $grid-unit-10;
209
+ top: var(--wpds-dimension-padding-sm);
214
210
  }
215
211
  }
216
212
 
@@ -218,18 +214,18 @@
218
214
  .dataviews-view-grid__card:focus-within .dataviews-selection-checkbox,
219
215
  .dataviews-view-grid__card.is-selected .dataviews-selection-checkbox {
220
216
  opacity: 1;
221
- top: $grid-unit-10;
217
+ top: var(--wpds-dimension-padding-sm);
222
218
  }
223
219
 
224
220
  .dataviews-view-grid__card .dataviews-view-grid__media-actions {
225
221
  position: absolute;
226
222
  z-index: 1;
227
- top: $grid-unit-05;
223
+ top: var(--wpds-dimension-padding-xs);
228
224
  opacity: 0;
229
- right: $grid-unit-05;
225
+ right: var(--wpds-dimension-padding-xs);
230
226
 
231
227
  .dataviews-all-actions-button {
232
- background-color: $white;
228
+ background-color: var(--wpds-color-bg-surface-neutral-strong);
233
229
  }
234
230
 
235
231
  @media not (prefers-reduced-motion) {
@@ -239,7 +235,7 @@
239
235
  @media (hover: none) {
240
236
  // Show actions on devices that do not support hover.
241
237
  opacity: 1;
242
- top: $grid-unit-05;
238
+ top: var(--wpds-dimension-padding-xs);
243
239
  }
244
240
  }
245
241
 
@@ -254,10 +250,10 @@
254
250
  }
255
251
 
256
252
  .dataviews-view-grid__group-header {
257
- font-size: $font-size-large;
258
- font-weight: $font-weight-medium;
259
- color: $gray-900;
260
- margin: 0 0 $grid-unit-10 0;
261
- padding: 0 $grid-unit-30;
253
+ font-size: var(--wpds-typography-font-size-lg);
254
+ font-weight: var(--wpds-typography-font-weight-medium);
255
+ color: var(--wpds-color-fg-content-neutral);
256
+ margin: 0 0 var(--wpds-dimension-gap-sm) 0;
257
+ padding: 0 var(--wpds-dimension-padding-2xl);
262
258
  container-type: inline-size;
263
259
  }