@patternfly/patternfly 6.5.2 → 6.6.0-prerelease.10

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 (220) hide show
  1. package/README.md +1 -1
  2. package/assets/images/img_avatar-rhds.svg +22 -0
  3. package/assets/images/pf-logo-avatar.jpg +0 -0
  4. package/base/normalize.scss +2 -0
  5. package/base/patternfly-common.css +2 -2
  6. package/base/patternfly-common.scss +1 -1
  7. package/base/patternfly-fa-icons.css +3 -3
  8. package/base/patternfly-fa-icons.scss +3 -3
  9. package/base/patternfly-variables.css +58 -56
  10. package/base/reset.scss +2 -0
  11. package/base/tokens/tokens-charts-dark.scss +1 -1
  12. package/base/tokens/tokens-charts-highcontrast-dark.scss +1 -1
  13. package/base/tokens/tokens-charts-highcontrast.scss +1 -1
  14. package/base/tokens/tokens-charts.scss +1 -1
  15. package/base/tokens/tokens-dark.scss +9 -9
  16. package/base/tokens/tokens-default.scss +8 -8
  17. package/base/tokens/tokens-felt-dark.scss +1 -1
  18. package/base/tokens/tokens-felt-glass-dark.scss +8 -8
  19. package/base/tokens/tokens-felt-glass.scss +10 -9
  20. package/base/tokens/tokens-felt-highcontrast-dark.scss +1 -1
  21. package/base/tokens/tokens-felt-highcontrast.scss +1 -1
  22. package/base/tokens/tokens-felt.scss +1 -1
  23. package/base/tokens/tokens-glass-dark.scss +8 -8
  24. package/base/tokens/tokens-glass.scss +10 -9
  25. package/base/tokens/tokens-highcontrast-dark.scss +8 -8
  26. package/base/tokens/tokens-highcontrast.scss +7 -7
  27. package/base/tokens/tokens-palette.scss +1 -1
  28. package/base/tokens/tokens-redhat-highcontrast.scss +6 -6
  29. package/components/AboutModalBox/about-modal-box.css +1 -1
  30. package/components/AboutModalBox/about-modal-box.scss +1 -1
  31. package/components/Accordion/accordion.css +8 -4
  32. package/components/Accordion/accordion.scss +9 -4
  33. package/components/Alert/alert-group.css +1 -1
  34. package/components/Alert/alert-group.scss +1 -1
  35. package/components/Alert/alert.css +4 -3
  36. package/components/Alert/alert.scss +4 -3
  37. package/components/Avatar/avatar.css +144 -0
  38. package/components/Avatar/avatar.scss +161 -0
  39. package/components/Breadcrumb/breadcrumb.css +1 -1
  40. package/components/Breadcrumb/breadcrumb.scss +1 -1
  41. package/components/Button/button.css +9 -6
  42. package/components/Button/button.scss +10 -6
  43. package/components/Card/card.css +2 -2
  44. package/components/Card/card.scss +3 -3
  45. package/components/Check/check.css +1 -1
  46. package/components/Check/check.scss +1 -1
  47. package/components/ClipboardCopy/clipboard-copy.css +2 -2
  48. package/components/ClipboardCopy/clipboard-copy.scss +2 -2
  49. package/components/Compass/compass.css +7 -3
  50. package/components/Compass/compass.scss +7 -3
  51. package/components/Content/content.css +2 -2
  52. package/components/Content/content.scss +2 -2
  53. package/components/DataList/data-list.css +1 -1
  54. package/components/DataList/data-list.scss +1 -1
  55. package/components/DescriptionList/description-list.css +0 -1
  56. package/components/DescriptionList/description-list.scss +0 -1
  57. package/components/Drawer/drawer.css +2 -2
  58. package/components/Drawer/drawer.scss +2 -2
  59. package/components/DualListSelector/dual-list-selector.css +6 -6
  60. package/components/DualListSelector/dual-list-selector.scss +6 -6
  61. package/components/ExpandableSection/expandable-section.css +3 -3
  62. package/components/ExpandableSection/expandable-section.scss +3 -3
  63. package/components/Form/form.css +12 -12
  64. package/components/Form/form.scss +6 -6
  65. package/components/FormControl/form-control.css +1 -1
  66. package/components/FormControl/form-control.scss +3 -1
  67. package/components/Hero/hero.css +1 -1
  68. package/components/Hero/hero.scss +1 -1
  69. package/components/Hint/hint.css +1 -1
  70. package/components/Hint/hint.scss +1 -1
  71. package/components/InputGroup/input-group.css +5 -5
  72. package/components/InputGroup/input-group.scss +5 -5
  73. package/components/JumpLinks/jump-links.css +1 -1
  74. package/components/JumpLinks/jump-links.scss +1 -1
  75. package/components/Label/label.css +1 -1
  76. package/components/Label/label.scss +1 -1
  77. package/components/Login/login.css +2 -2
  78. package/components/Login/login.scss +2 -2
  79. package/components/Masthead/masthead.css +2 -2
  80. package/components/Masthead/masthead.scss +2 -2
  81. package/components/Menu/menu.css +4 -4
  82. package/components/Menu/menu.scss +4 -4
  83. package/components/MenuToggle/menu-toggle.css +4 -1
  84. package/components/MenuToggle/menu-toggle.scss +5 -2
  85. package/components/ModalBox/modal-box.css +1 -1
  86. package/components/ModalBox/modal-box.scss +1 -1
  87. package/components/Nav/nav.css +5 -5
  88. package/components/Nav/nav.scss +5 -5
  89. package/components/NotificationDrawer/notification-drawer.css +5 -5
  90. package/components/NotificationDrawer/notification-drawer.scss +5 -5
  91. package/components/Page/page.css +26 -21
  92. package/components/Page/page.scss +30 -25
  93. package/components/Popover/popover.css +1 -1
  94. package/components/Popover/popover.scss +2 -2
  95. package/components/Progress/progress.css +3 -3
  96. package/components/Progress/progress.scss +3 -6
  97. package/components/ProgressStepper/progress-stepper.css +1 -1
  98. package/components/Radio/radio.css +1 -1
  99. package/components/Radio/radio.scss +1 -1
  100. package/components/Sidebar/sidebar.css +4 -7
  101. package/components/Sidebar/sidebar.scss +9 -9
  102. package/components/Spinner/spinner.css +2 -2
  103. package/components/Spinner/spinner.scss +2 -2
  104. package/components/Switch/switch.css +1 -1
  105. package/components/Switch/switch.scss +1 -1
  106. package/components/Table/table-tree-view.css +10 -10
  107. package/components/Table/table-tree-view.scss +2 -2
  108. package/components/Table/table.css +37 -10
  109. package/components/Table/table.scss +53 -14
  110. package/components/Tabs/tabs.css +3 -3
  111. package/components/Tabs/tabs.scss +3 -3
  112. package/components/TextInputGroup/text-input-group.css +1 -1
  113. package/components/TextInputGroup/text-input-group.scss +1 -1
  114. package/components/Title/title.css +1 -1
  115. package/components/Title/title.scss +1 -1
  116. package/components/Toolbar/toolbar.css +1 -1
  117. package/components/Toolbar/toolbar.scss +1 -1
  118. package/components/Tooltip/tooltip.css +1 -1
  119. package/components/Tooltip/tooltip.scss +2 -2
  120. package/components/TreeView/tree-view.css +5 -5
  121. package/components/TreeView/tree-view.scss +5 -5
  122. package/components/Wizard/wizard.css +5 -5
  123. package/components/Wizard/wizard.scss +5 -5
  124. package/components/_index.css +342 -155
  125. package/docs/components/AboutModalBox/examples/AboutModalBox.md +1 -1
  126. package/docs/components/Accordion/examples/Accordion.md +30 -30
  127. package/docs/components/ActionList/examples/ActionList.md +11 -11
  128. package/docs/components/Alert/examples/Alert.md +54 -54
  129. package/docs/components/Avatar/examples/Avatar.css +6 -0
  130. package/docs/components/Avatar/examples/Avatar.md +414 -40
  131. package/docs/components/BackToTop/examples/BackToTop.md +1 -1
  132. package/docs/components/Banner/examples/Banner.md +10 -10
  133. package/docs/components/Breadcrumb/examples/Breadcrumb.md +25 -25
  134. package/docs/components/Button/examples/Button.md +184 -184
  135. package/docs/components/CalendarMonth/examples/CalendarMonth.md +16 -16
  136. package/docs/components/Card/examples/Card.md +14 -14
  137. package/docs/components/ClipboardCopy/examples/ClipboardCopy.md +22 -22
  138. package/docs/components/CodeBlock/examples/CodeBlock.md +8 -8
  139. package/docs/components/CodeEditor/examples/CodeEditor.md +18 -18
  140. package/docs/components/DataList/examples/DataList.md +34 -34
  141. package/docs/components/DatePicker/examples/DatePicker.md +6 -6
  142. package/docs/components/DescriptionList/examples/DescriptionList.md +25 -25
  143. package/docs/components/Drawer/examples/Drawer.md +23 -23
  144. package/docs/components/DualListSelector/examples/DualListSelector.md +89 -89
  145. package/docs/components/EmptyState/examples/EmptyState.md +6 -6
  146. package/docs/components/ExpandableSection/examples/ExpandableSection.md +7 -7
  147. package/docs/components/Form/examples/Form.md +6 -6
  148. package/docs/components/Hint/examples/Hint.md +3 -3
  149. package/docs/components/Icon/examples/Icon.md +9 -9
  150. package/docs/components/InlineEdit/examples/InlineEdit.md +26 -26
  151. package/docs/components/InputGroup/examples/InputGroup.md +4 -4
  152. package/docs/components/JumpLinks/examples/JumpLinks.md +4 -4
  153. package/docs/components/Label/examples/Label.md +218 -218
  154. package/docs/components/Login/examples/Login.md +4 -4
  155. package/docs/components/Masthead/examples/masthead.md +1 -1
  156. package/docs/components/Menu/examples/Menu.md +129 -129
  157. package/docs/components/MenuToggle/examples/MenuToggle.md +271 -232
  158. package/docs/components/ModalBox/examples/ModalBox.md +24 -24
  159. package/docs/components/MultipleFileUpload/examples/MultipleFileUpload.md +12 -12
  160. package/docs/components/Nav/examples/Navigation.md +66 -66
  161. package/docs/components/NotificationDrawer/examples/NotificationDrawer.md +83 -83
  162. package/docs/components/OverflowMenu/examples/overflow-menu.md +11 -11
  163. package/docs/components/Page/examples/Page.md +1 -1
  164. package/docs/components/Pagination/examples/Pagination.md +92 -92
  165. package/docs/components/Popover/examples/Popover.md +22 -22
  166. package/docs/components/Progress/examples/Progress.md +7 -7
  167. package/docs/components/ProgressStepper/examples/ProgressStepper.md +21 -21
  168. package/docs/components/Sidebar/examples/Sidebar.md +3 -1
  169. package/docs/components/Slider/examples/Slider.md +4 -4
  170. package/docs/components/Table/examples/Table.css +6 -0
  171. package/docs/components/Table/examples/Table.md +807 -527
  172. package/docs/components/Tabs/examples/Tabs.md +378 -378
  173. package/docs/components/TextInputGroup/examples/TextInputGroup.md +46 -46
  174. package/docs/components/ToggleGroup/examples/toggle-group.md +15 -15
  175. package/docs/components/Toolbar/examples/Toolbar.md +117 -117
  176. package/docs/components/TreeView/examples/TreeView.md +104 -104
  177. package/docs/components/Wizard/examples/Wizard.md +40 -40
  178. package/docs/demos/AboutModal/examples/AboutModal.md +9 -9
  179. package/docs/demos/Alert/examples/Alert.md +32 -32
  180. package/docs/demos/BackToTop/examples/BackToTop.md +9 -9
  181. package/docs/demos/Banner/examples/Banner.md +16 -16
  182. package/docs/demos/Button/examples/Button.md +1 -1
  183. package/docs/demos/Card/examples/Card.md +78 -78
  184. package/docs/demos/CardView/examples/CardView.md +38 -38
  185. package/docs/demos/Compass/examples/Compass.md +294 -238
  186. package/docs/demos/Dashboard/examples/Dashboard.md +48 -48
  187. package/docs/demos/DataList/examples/DataList.md +101 -101
  188. package/docs/demos/DescriptionList/examples/DescriptionList.md +26 -26
  189. package/docs/demos/Drawer/examples/Drawer.md +40 -40
  190. package/docs/demos/Form/examples/BasicForms.md +21 -21
  191. package/docs/demos/JumpLinks/examples/JumpLinks.md +49 -49
  192. package/docs/demos/Masthead/examples/Masthead.md +57 -57
  193. package/docs/demos/Modal/examples/Modal.md +54 -54
  194. package/docs/demos/Nav/examples/Nav.md +93 -93
  195. package/docs/demos/NotificationDrawer/examples/NotificationDrawer.md +173 -173
  196. package/docs/demos/Page/examples/Page.md +119 -119
  197. package/docs/demos/PasswordGenerator/examples/PasswordGenerator.md +1 -1
  198. package/docs/demos/PasswordStrength/examples/PasswordStrength.md +4 -4
  199. package/docs/demos/PrimaryDetail/examples/PrimaryDetail.md +142 -142
  200. package/docs/demos/Skeleton/examples/Skeleton.md +8 -8
  201. package/docs/demos/Table/examples/Table.md +630 -630
  202. package/docs/demos/Tabs/examples/Tabs.md +62 -62
  203. package/docs/demos/Toolbar/examples/Toolbar.md +161 -161
  204. package/docs/demos/Wizard/examples/Wizard.md +100 -100
  205. package/layouts/Gallery/gallery.css +1 -1
  206. package/layouts/Gallery/gallery.scss +1 -1
  207. package/layouts/Grid/grid.css +1 -1
  208. package/layouts/Grid/grid.scss +1 -1
  209. package/layouts/_index.css +2 -2
  210. package/package.json +11 -12
  211. package/patternfly-addons.css +12 -12
  212. package/patternfly-base-no-globals.css +63 -61
  213. package/patternfly-base.css +63 -61
  214. package/patternfly-no-globals.css +407 -218
  215. package/patternfly.css +407 -218
  216. package/patternfly.min.css +1 -1
  217. package/patternfly.min.css.map +1 -1
  218. package/sass-utilities/mixins.scss +2 -2
  219. package/utilities/Accessibility/accessibility.css +12 -12
  220. package/utilities/_index.css +12 -12
@@ -199,7 +199,7 @@
199
199
  }
200
200
 
201
201
  .pf-v6-c-popover__body {
202
- word-wrap: break-word;
202
+ overflow-wrap: break-word;
203
203
  }
204
204
 
205
205
  .pf-v6-c-popover__footer {
@@ -219,7 +219,7 @@
219
219
 
220
220
  .#{$popover}__arrow {
221
221
  position: absolute;
222
- // stylelint-disable liberty/use-logical-spec
222
+ // stylelint-disable property-layout-mappings
223
223
  top: var(--#{$popover}__arrow--InsetBlockStart, auto);
224
224
  right: var(--#{$popover}__arrow--InsetInlineEnd, auto);
225
225
  bottom: var(--#{$popover}__arrow--InsetBlockEnd, auto);
@@ -260,7 +260,7 @@
260
260
 
261
261
  // Body
262
262
  .#{$popover}__body {
263
- word-wrap: break-word;
263
+ overflow-wrap: break-word;
264
264
  }
265
265
 
266
266
  .#{$popover}__footer {
@@ -36,7 +36,7 @@
36
36
  display: grid;
37
37
  grid-template-rows: 1fr auto;
38
38
  grid-template-columns: auto auto;
39
- grid-gap: var(--pf-v6-c-progress--GridGap);
39
+ gap: var(--pf-v6-c-progress--GridGap);
40
40
  align-items: end;
41
41
  }
42
42
  .pf-v6-c-progress.pf-m-sm {
@@ -130,7 +130,7 @@
130
130
 
131
131
  .pf-v6-c-progress__description {
132
132
  grid-column: 1/2;
133
- word-break: break-word;
133
+ overflow-wrap: break-word;
134
134
  }
135
135
  .pf-v6-c-progress__description.pf-m-truncate {
136
136
  overflow: hidden;
@@ -146,7 +146,7 @@
146
146
  align-items: flex-start;
147
147
  justify-content: flex-end;
148
148
  text-align: end;
149
- word-break: break-word;
149
+ overflow-wrap: break-word;
150
150
  }
151
151
 
152
152
  .pf-v6-c-progress__status-icon {
@@ -43,7 +43,7 @@
43
43
  display: grid;
44
44
  grid-template-rows: 1fr auto;
45
45
  grid-template-columns: auto auto;
46
- grid-gap: var(--#{$progress}--GridGap);
46
+ gap: var(--#{$progress}--GridGap);
47
47
  align-items: end;
48
48
 
49
49
  // Modifiers
@@ -163,7 +163,7 @@
163
163
  // the progress__description is displayed above the progress bar on the left
164
164
  .#{$progress}__description {
165
165
  grid-column: 1 / 2;
166
- word-break: break-word;
166
+ overflow-wrap: break-word;
167
167
 
168
168
  &.pf-m-truncate {
169
169
  @include pf-v6-text-overflow;
@@ -179,7 +179,7 @@
179
179
  align-items: flex-start;
180
180
  justify-content: flex-end;
181
181
  text-align: end;
182
- word-break: break-word;
182
+ overflow-wrap: break-word;
183
183
  }
184
184
 
185
185
  // the progress__status-icon is an icon displayed always in the upper right
@@ -189,11 +189,8 @@
189
189
 
190
190
  .#{$progress}__bar::before,
191
191
  .#{$progress}__indicator {
192
- // disable linter as the indicator element should always grow ltr
193
- // stylelint-disable liberty/use-logical-spec
194
192
  inset-block-start: 0;
195
193
  inset-inline-start: 0;
196
- // stylelint-enable
197
194
  }
198
195
 
199
196
  // The progress__bar is a white underlay with a semi-transparent color on top, which matches the progress__indicator color
@@ -205,9 +205,9 @@
205
205
  inset-block-start: 0;
206
206
  inset-inline-start: 0;
207
207
  overflow: hidden;
208
- clip: rect(0, 0, 0, 0);
209
208
  white-space: nowrap;
210
209
  border: 0;
210
+ clip-path: inset(50%);
211
211
  }
212
212
  .pf-v6-c-progress-stepper.pf-m-compact .pf-v6-c-progress-stepper__step.pf-m-current .pf-v6-c-progress-stepper__step-main {
213
213
  grid-row: 1/2;
@@ -18,7 +18,7 @@
18
18
  .pf-v6-c-radio {
19
19
  display: grid;
20
20
  grid-template-columns: auto 1fr;
21
- grid-gap: var(--pf-v6-c-radio--GridGap);
21
+ gap: var(--pf-v6-c-radio--GridGap);
22
22
  align-items: baseline;
23
23
  accent-color: var(--pf-v6-c-radio--AccentColor);
24
24
  }
@@ -27,7 +27,7 @@
27
27
  .#{$radio} {
28
28
  display: grid;
29
29
  grid-template-columns: auto 1fr;
30
- grid-gap: var(--#{$radio}--GridGap);
30
+ gap: var(--#{$radio}--GridGap);
31
31
  align-items: baseline;
32
32
  accent-color: var(--#{$radio}--AccentColor);
33
33
 
@@ -168,6 +168,9 @@
168
168
  --pf-v6-c-sidebar__panel--Position: static;
169
169
  --pf-v6-c-sidebar__panel--InsetBlockStart: auto;
170
170
  }
171
+ .pf-v6-c-sidebar__panel.pf-m-no-background, :where(:root:not(.pf-v6-theme-glass)) .pf-v6-c-sidebar__panel.pf-m-plain, :where(:root.pf-v6-theme-glass) .pf-v6-c-sidebar__panel:not(.pf-m-no-plain-on-glass) {
172
+ --pf-v6-c-sidebar__panel--BackgroundColor: transparent;
173
+ }
171
174
  .pf-v6-c-sidebar__panel.pf-m-secondary {
172
175
  --pf-v6-c-sidebar__panel--BackgroundColor: var(--pf-v6-c-sidebar__panel--m-secondary--BackgroundColor);
173
176
  }
@@ -187,7 +190,7 @@
187
190
  --pf-v6-c-sidebar__content--PaddingBlockEnd: var(--pf-v6-c-sidebar__content--m-padding--PaddingBlockEnd);
188
191
  --pf-v6-c-sidebar__content--PaddingInlineStart: var(--pf-v6-c-sidebar__content--m-padding--PaddingBlockStart);
189
192
  }
190
- .pf-v6-c-sidebar__content.pf-m-no-background {
193
+ .pf-v6-c-sidebar__content.pf-m-no-background, :where(:root:not(.pf-v6-theme-glass)) .pf-v6-c-sidebar__content.pf-m-plain, :where(:root.pf-v6-theme-glass) .pf-v6-c-sidebar__content:not(.pf-m-no-plain-on-glass) {
191
194
  --pf-v6-c-sidebar__content--BackgroundColor: transparent;
192
195
  }
193
196
  .pf-v6-c-sidebar__content.pf-m-secondary {
@@ -200,12 +203,6 @@
200
203
  --pf-v6-c-sidebar__content--Order: -1;
201
204
  }
202
205
 
203
- .pf-v6-c-sidebar.pf-m-no-background,
204
- .pf-v6-c-sidebar__panel.pf-m-no-background,
205
- .pf-v6-c-sidebar__content.pf-m-no-background {
206
- background-color: transparent;
207
- }
208
-
209
206
  .pf-v6-c-sidebar__panel.pf-m-width-default {
210
207
  --pf-v6-c-sidebar__panel--FlexBasis: var(--pf-v6-c-sidebar__panel--FlexBasis--base);
211
208
  }
@@ -205,6 +205,12 @@ $pf-v6-c-sidebar__panel--list--width: ("default", 25, 33, 50, 66, 75, 100);
205
205
  --#{$sidebar}__panel--InsetBlockStart: auto;
206
206
  }
207
207
 
208
+ &.pf-m-no-background,
209
+ :where(:root:not(.pf-v6-theme-glass)) &.pf-m-plain,
210
+ :where(:root.pf-v6-theme-glass) &:not(.pf-m-no-plain-on-glass) {
211
+ --#{$sidebar}__panel--BackgroundColor: transparent;
212
+ }
213
+
208
214
  &.pf-m-secondary {
209
215
  --#{$sidebar}__panel--BackgroundColor: var(--#{$sidebar}__panel--m-secondary--BackgroundColor);
210
216
  }
@@ -226,7 +232,9 @@ $pf-v6-c-sidebar__panel--list--width: ("default", 25, 33, 50, 66, 75, 100);
226
232
  --#{$sidebar}__content--PaddingInlineStart: var(--#{$sidebar}__content--m-padding--PaddingBlockStart);
227
233
  }
228
234
 
229
- &.pf-m-no-background {
235
+ &.pf-m-no-background,
236
+ :where(:root:not(.pf-v6-theme-glass)) &.pf-m-plain,
237
+ :where(:root.pf-v6-theme-glass) &:not(.pf-m-no-plain-on-glass) {
230
238
  --#{$sidebar}__content--BackgroundColor: transparent;
231
239
  }
232
240
 
@@ -243,14 +251,6 @@ $pf-v6-c-sidebar__panel--list--width: ("default", 25, 33, 50, 66, 75, 100);
243
251
  }
244
252
  }
245
253
 
246
- .#{$sidebar},
247
- .#{$sidebar}__panel,
248
- .#{$sidebar}__content {
249
- &.pf-m-no-background {
250
- background-color: transparent;
251
- }
252
- }
253
-
254
254
  // Responsive width modifiers
255
255
  @each $breakpoint, $breakpoint-value in $pf-v6-c-sidebar--breakpoint-map--width {
256
256
  $breakpoint-name: "";
@@ -49,10 +49,10 @@
49
49
  width: 100%;
50
50
  height: 100%;
51
51
  stroke: var(--pf-v6-c-spinner--Color);
52
+ stroke-width: var(--pf-v6-c-spinner--StrokeWidth);
53
+ stroke-linecap: round;
52
54
  stroke-dasharray: 283;
53
55
  stroke-dashoffset: 280;
54
- stroke-linecap: round;
55
- stroke-width: var(--pf-v6-c-spinner--StrokeWidth);
56
56
  transform-origin: 50% 50%;
57
57
  animation: pf-v6-c-spinner-animation-dash var(--pf-v6-c-spinner--AnimationDuration) var(--pf-v6-c-spinner__path--AnimationTimingFunction) infinite;
58
58
  }
@@ -66,10 +66,10 @@
66
66
  width: 100%;
67
67
  height: 100%;
68
68
  stroke: var(--#{$spinner}--Color);
69
+ stroke-width: var(--#{$spinner}--StrokeWidth);
70
+ stroke-linecap: round;
69
71
  stroke-dasharray: 283;
70
72
  stroke-dashoffset: 280;
71
- stroke-linecap: round;
72
- stroke-width: var(--#{$spinner}--StrokeWidth);
73
73
  transform-origin: 50% 50%;
74
74
  animation: #{$spinner}-animation-dash var(--#{$spinner}--AnimationDuration) var(--#{$spinner}__path--AnimationTimingFunction) infinite;
75
75
  }
@@ -128,8 +128,8 @@
128
128
  background-color: var(--pf-v6-c-switch__input--not-checked__toggle--before--BackgroundColor);
129
129
  border: var(--pf-v6-c-switch__toggle--before--BorderWidth) solid transparent;
130
130
  border-radius: var(--pf-v6-c-switch__toggle--before--BorderRadius);
131
- transition: var(--pf-v6-c-switch__toggle--before--Transition);
132
131
  transform: translateY(-50%);
132
+ transition: var(--pf-v6-c-switch__toggle--before--Transition);
133
133
  }
134
134
  .pf-v6-c-switch__toggle::after {
135
135
  position: absolute;
@@ -160,8 +160,8 @@
160
160
  background-color: var(--#{$switch}__input--not-checked__toggle--before--BackgroundColor);
161
161
  border: var(--#{$switch}__toggle--before--BorderWidth) solid transparent; // for forced color mode
162
162
  border-radius: var(--#{$switch}__toggle--before--BorderRadius);
163
- transition: var(--#{$switch}__toggle--before--Transition); // TODO remove shorthand in breaking change
164
163
  transform: translateY(-50%);
164
+ transition: var(--#{$switch}__toggle--before--Transition); // TODO remove shorthand in breaking change
165
165
  }
166
166
 
167
167
  &::after {
@@ -134,8 +134,8 @@
134
134
  }
135
135
  .pf-m-tree-view-grid.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr) {
136
136
  position: relative;
137
- border: none;
138
137
  outline-offset: var(--pf-v6-c-table--m-tree-view-grid--tr--OutlineOffset);
138
+ border: none;
139
139
  }
140
140
  .pf-m-tree-view-grid.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr)::before {
141
141
  position: absolute;
@@ -173,7 +173,7 @@
173
173
  .pf-m-tree-view-grid.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] {
174
174
  grid-template-columns: var(--pf-v6-c-table--m-tree-view-grid__td--data-label--GridTemplateColumns);
175
175
  grid-column: 1;
176
- grid-column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
176
+ column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
177
177
  align-items: start;
178
178
  }
179
179
  .pf-m-tree-view-grid.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] > :where(th, td) {
@@ -276,8 +276,8 @@
276
276
  }
277
277
  .pf-m-tree-view-grid-md.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr) {
278
278
  position: relative;
279
- border: none;
280
279
  outline-offset: var(--pf-v6-c-table--m-tree-view-grid--tr--OutlineOffset);
280
+ border: none;
281
281
  }
282
282
  .pf-m-tree-view-grid-md.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr)::before {
283
283
  position: absolute;
@@ -315,7 +315,7 @@
315
315
  .pf-m-tree-view-grid-md.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] {
316
316
  grid-template-columns: var(--pf-v6-c-table--m-tree-view-grid__td--data-label--GridTemplateColumns);
317
317
  grid-column: 1;
318
- grid-column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
318
+ column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
319
319
  align-items: start;
320
320
  }
321
321
  .pf-m-tree-view-grid-md.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] > :where(th, td) {
@@ -419,8 +419,8 @@
419
419
  }
420
420
  .pf-m-tree-view-grid-lg.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr) {
421
421
  position: relative;
422
- border: none;
423
422
  outline-offset: var(--pf-v6-c-table--m-tree-view-grid--tr--OutlineOffset);
423
+ border: none;
424
424
  }
425
425
  .pf-m-tree-view-grid-lg.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr)::before {
426
426
  position: absolute;
@@ -458,7 +458,7 @@
458
458
  .pf-m-tree-view-grid-lg.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] {
459
459
  grid-template-columns: var(--pf-v6-c-table--m-tree-view-grid__td--data-label--GridTemplateColumns);
460
460
  grid-column: 1;
461
- grid-column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
461
+ column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
462
462
  align-items: start;
463
463
  }
464
464
  .pf-m-tree-view-grid-lg.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] > :where(th, td) {
@@ -562,8 +562,8 @@
562
562
  }
563
563
  .pf-m-tree-view-grid-xl.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr) {
564
564
  position: relative;
565
- border: none;
566
565
  outline-offset: var(--pf-v6-c-table--m-tree-view-grid--tr--OutlineOffset);
566
+ border: none;
567
567
  }
568
568
  .pf-m-tree-view-grid-xl.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr)::before {
569
569
  position: absolute;
@@ -601,7 +601,7 @@
601
601
  .pf-m-tree-view-grid-xl.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] {
602
602
  grid-template-columns: var(--pf-v6-c-table--m-tree-view-grid__td--data-label--GridTemplateColumns);
603
603
  grid-column: 1;
604
- grid-column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
604
+ column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
605
605
  align-items: start;
606
606
  }
607
607
  .pf-m-tree-view-grid-xl.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] > :where(th, td) {
@@ -705,8 +705,8 @@
705
705
  }
706
706
  .pf-m-tree-view-grid-2xl.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr) {
707
707
  position: relative;
708
- border: none;
709
708
  outline-offset: var(--pf-v6-c-table--m-tree-view-grid--tr--OutlineOffset);
709
+ border: none;
710
710
  }
711
711
  .pf-m-tree-view-grid-2xl.pf-v6-c-table tbody:where(.pf-v6-c-table__tbody) tr:where(.pf-v6-c-table__tr)::before {
712
712
  position: absolute;
@@ -744,7 +744,7 @@
744
744
  .pf-m-tree-view-grid-2xl.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] {
745
745
  grid-template-columns: var(--pf-v6-c-table--m-tree-view-grid__td--data-label--GridTemplateColumns);
746
746
  grid-column: 1;
747
- grid-column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
747
+ column-gap: var(--pf-v6-c-table--m-tree-view-grid__tbody--cell--GridColumnGap);
748
748
  align-items: start;
749
749
  }
750
750
  .pf-m-tree-view-grid-2xl.pf-v6-c-table td:where(.pf-v6-c-table__td)[data-label] > :where(th, td) {
@@ -195,8 +195,8 @@ $pf-v6-c-tree-view--MaxDepth: 10;
195
195
 
196
196
  tbody:where(.#{$table}__tbody) tr:where(.#{$table}__tr) {
197
197
  position: relative;
198
- border: none;
199
198
  outline-offset: var(--#{$table}--m-tree-view-grid--tr--OutlineOffset);
199
+ border: none;
200
200
 
201
201
  &::before {
202
202
  position: absolute;
@@ -248,7 +248,7 @@ $pf-v6-c-tree-view--MaxDepth: 10;
248
248
  td:where(.#{$table}__td)[data-label] {
249
249
  grid-template-columns: var(--#{$table}--m-tree-view-grid__td--data-label--GridTemplateColumns);
250
250
  grid-column: 1;
251
- grid-column-gap: var(--#{$table}--m-tree-view-grid__tbody--cell--GridColumnGap);
251
+ column-gap: var(--#{$table}--m-tree-view-grid__tbody--cell--GridColumnGap);
252
252
  align-items: start;
253
253
 
254
254
  // set contents of td to start at column two of td grid
@@ -175,6 +175,8 @@
175
175
  --pf-v6-c-table--m-sticky-header--BoxShadow--glass: var(--pf-t--global--box-shadow--sm);
176
176
  --pf-v6-c-table--m-sticky-header--TransitionTimingFunction--BackgroundColor: var(--pf-t--global--motion--timing-function--default);
177
177
  --pf-v6-c-table--m-sticky-header--TransitionDuration--BackgroundColor: var(--pf-t--global--motion--duration--fade--default);
178
+ --pf-v6-c-table--m-sticky-footer--ZIndex: calc(var(--pf-t--global--z-index--xs) + 1);
179
+ --pf-v6-c-table--m-sticky-footer--border--ZIndex: calc(var(--pf-t--global--z-index--xs) + 2);
178
180
  }
179
181
  :where(.pf-v6-theme-glass) .pf-v6-c-table {
180
182
  --pf-v6-c-table--m-sticky-header--BorderBlockEndWidth: 0;
@@ -244,6 +246,26 @@
244
246
  .pf-v6-c-table:not(.pf-m-sticky-header) > .pf-m-nested-column-header tr:where(.pf-v6-c-table__tr):not(:last-child) td:where(.pf-v6-c-table__td):not([rowspan]) {
245
247
  --pf-v6-c-table--cell--PaddingBlockEnd: var(--pf-v6-c-table__thead--m-nested-column-header__tr--PaddingBlockEnd);
246
248
  }
249
+ .pf-v6-c-table.pf-m-sticky-footer > .pf-v6-c-table__tfoot {
250
+ position: sticky;
251
+ inset-block-end: 0;
252
+ z-index: var(--pf-v6-c-table--m-sticky-footer--ZIndex);
253
+ background: var(--pf-v6-c-table--BackgroundColor);
254
+ }
255
+ .pf-v6-c-table.pf-m-sticky-footer > .pf-v6-c-table__tfoot::before {
256
+ position: absolute;
257
+ inset: 0;
258
+ z-index: var(--pf-v6-c-table--m-sticky-footer--border--ZIndex);
259
+ pointer-events: none;
260
+ content: "";
261
+ border-block-start: var(--pf-v6-c-table--border-width--base) solid var(--pf-v6-c-table--BorderColor);
262
+ }
263
+ .pf-v6-c-table.pf-m-sticky-footer > .pf-v6-c-table__tbody:last-of-type > .pf-v6-c-table__tr:last-of-type {
264
+ border-block-end: 0;
265
+ }
266
+ .pf-v6-c-table.pf-m-plain {
267
+ --pf-v6-c-table--BackgroundColor: transparent;
268
+ }
247
269
  .pf-v6-c-table.pf-m-striped:not(.pf-m-expandable) > tbody:where(.pf-v6-c-table__tbody) > tr:where(.pf-v6-c-table__tr):nth-child(odd), .pf-v6-c-table.pf-m-striped.pf-m-expandable > tbody:where(.pf-v6-c-table__tbody):nth-of-type(odd) > tr:where(.pf-v6-c-table__tr),
248
270
  .pf-v6-c-table > .pf-m-striped > tr:nth-child(odd),
249
271
  .pf-v6-c-table > .pf-m-striped-even > tr:nth-child(even),
@@ -314,11 +336,11 @@
314
336
  padding-inline-start: var(--pf-v6-c-table--cell--PaddingInlineStart);
315
337
  padding-inline-end: var(--pf-v6-c-table--cell--PaddingInlineEnd);
316
338
  overflow: var(--pf-v6-c-table--cell--Overflow);
339
+ text-overflow: var(--pf-v6-c-table--cell--TextOverflow);
317
340
  font-size: var(--pf-v6-c-table--cell--FontSize);
318
341
  font-weight: var(--pf-v6-c-table--cell--FontWeight);
319
342
  line-height: var(--pf-v6-c-table--cell--LineHeight);
320
343
  color: var(--pf-v6-c-table--cell--Color);
321
- text-overflow: var(--pf-v6-c-table--cell--TextOverflow);
322
344
  word-break: var(--pf-v6-c-table--cell--WordBreak);
323
345
  white-space: var(--pf-v6-c-table--cell--WhiteSpace);
324
346
  }
@@ -424,24 +446,24 @@
424
446
  }
425
447
  .pf-v6-c-table tr:where(.pf-v6-c-table__tr).pf-m-clickable {
426
448
  cursor: pointer;
427
- background-color: var(--pf-v6-c-table__tr--m-clickable--BackgroundColor);
428
449
  outline-offset: var(--pf-v6-c-table__tr--m-clickable--OutlineOffset);
450
+ background-color: var(--pf-v6-c-table__tr--m-clickable--BackgroundColor);
429
451
  }
430
452
  .pf-v6-c-table tr:where(.pf-v6-c-table__tr).pf-m-clickable:is(:hover, :focus) {
431
453
  --pf-v6-c-table__tr--m-clickable--BackgroundColor: var(--pf-v6-c-table__tr--m-clickable--hover--BackgroundColor);
432
454
  }
433
455
  .pf-v6-c-table tr:where(.pf-v6-c-table__tr).pf-m-selected {
434
456
  position: relative;
435
- background-color: var(--pf-v6-c-table__tr--m-selected--BackgroundColor);
436
457
  outline-offset: var(--pf-v6-c-table__tr--m-selected--OutlineOffset);
458
+ background-color: var(--pf-v6-c-table__tr--m-selected--BackgroundColor);
437
459
  }
438
460
  .pf-v6-c-table tr:where(.pf-v6-c-table__tr).pf-m-first-cell-offset-reset > :first-child {
439
461
  padding-inline-start: var(--pf-v6-c-table__tr--m-first-cell-offset-reset--cell--PaddingInlineStart);
440
462
  }
441
463
  .pf-v6-c-table tbody:where(.pf-v6-c-table__tbody).pf-m-clickable {
442
464
  cursor: pointer;
443
- background-color: var(--pf-v6-c-table__tbody--m-clickable--BackgroundColor);
444
465
  outline-offset: var(--pf-v6-c-table__tbody--m-clickable--OutlineOffset);
466
+ background-color: var(--pf-v6-c-table__tbody--m-clickable--BackgroundColor);
445
467
  }
446
468
  .pf-v6-c-table tbody:where(.pf-v6-c-table__tbody).pf-m-clickable:is(:hover, :focus) {
447
469
  --pf-v6-c-table__tbody--m-clickable--BackgroundColor: var(--pf-v6-c-table__tbody--m-clickable--hover--BackgroundColor);
@@ -450,8 +472,8 @@
450
472
  --pf-v6-c-table__tbody--m-clickable--BackgroundColor: var(--pf-v6-c-table__tbody--m-clickable--m-expanded--BackgroundColor);
451
473
  }
452
474
  .pf-v6-c-table tbody:where(.pf-v6-c-table__tbody).pf-m-selected {
453
- background-color: var(--pf-v6-c-table__tbody--m-selected--BackgroundColor);
454
475
  outline-offset: var(--pf-v6-c-table__tbody--m-selected--OutlineOffset);
476
+ background-color: var(--pf-v6-c-table__tbody--m-selected--BackgroundColor);
455
477
  }
456
478
  .pf-v6-c-table tbody:where(.pf-v6-c-table__tbody).pf-m-selected .pf-v6-c-table__tr.pf-m-expanded:not(.pf-v6-c-table__expandable-row) {
457
479
  border: none;
@@ -476,11 +498,11 @@
476
498
  display: var(--pf-v6-c-table__expandable-row--Display, revert);
477
499
  visibility: hidden;
478
500
  opacity: var(--pf-v6-c-table__expandable-row--Opacity);
501
+ translate: 0 var(--pf-v6-c-table__expandable-row--TranslateY);
479
502
  transition-delay: 0s, 0s, var(--pf-v6-c-table__expandable-row--TransitionDuration--collapse--fade), var(--pf-v6-c-table__expandable-row--TransitionDuration--collapse--fade);
480
503
  transition-timing-function: var(--pf-v6-c-table__expandable-row--TransitionTimingFunction);
481
504
  transition-duration: var(--pf-v6-c-table__expandable-row--TransitionDuration--collapse--fade), var(--pf-v6-c-table__expandable-row--TransitionDuration--collapse--slide), 0s, 0s;
482
505
  transition-property: opacity, translate, visibility, background-color;
483
- translate: 0 var(--pf-v6-c-table__expandable-row--TranslateY);
484
506
  }
485
507
  .pf-v6-c-table.pf-m-animate-expand > .pf-v6-c-table__tbody > .pf-v6-c-table__expandable-row[hidden] {
486
508
  display: var(--pf-v6-c-table__expandable-row--Display, revert);
@@ -488,9 +510,9 @@
488
510
  .pf-v6-c-table.pf-m-animate-expand > .pf-v6-c-table__tbody > .pf-v6-c-table__expandable-row.pf-m-expanded {
489
511
  visibility: visible;
490
512
  opacity: var(--pf-v6-c-table__tbody--m-expanded__expandable-row--Opacity);
513
+ translate: 0 var(--pf-v6-c-table__tbody--m-expanded__expandable-row--TranslateY);
491
514
  transition-delay: 0s;
492
515
  transition-duration: var(--pf-v6-c-table__expandable-row--TransitionDuration--expand--fade), var(--pf-v6-c-table__expandable-row--TransitionDuration--expand--slide), 0s, 0s;
493
- translate: 0 var(--pf-v6-c-table__tbody--m-expanded__expandable-row--TranslateY);
494
516
  }
495
517
  .pf-v6-c-table.pf-m-animate-expand > .pf-v6-c-table__tbody > .pf-v6-c-table__expandable-row.pf-m-expanded > :is(.pf-v6-c-table__td, .pf-v6-c-table__th) > .pf-v6-c-table__expandable-row-content {
496
518
  max-height: 99999px;
@@ -556,8 +578,8 @@
556
578
  min-width: var(--pf-v6-c-table__text--MinWidth);
557
579
  max-width: var(--pf-v6-c-table--cell--MaxWidth);
558
580
  overflow: var(--pf-v6-c-table--cell--Overflow);
559
- line-height: var(--pf-v6-c-table--cell--LineHeight);
560
581
  text-overflow: var(--pf-v6-c-table--cell--TextOverflow);
582
+ line-height: var(--pf-v6-c-table--cell--LineHeight);
561
583
  word-break: var(--pf-v6-c-table--cell--WordBreak);
562
584
  white-space: var(--pf-v6-c-table--cell--WhiteSpace);
563
585
  }
@@ -586,10 +608,10 @@
586
608
  text-align: start;
587
609
  white-space: inherit;
588
610
  user-select: text;
611
+ outline-offset: var(--pf-v6-c-table__button--OutlineOffset);
589
612
  background-color: var(--pf-v6-c-table__button--BackgroundColor);
590
613
  border: 0;
591
614
  border-radius: var(--pf-v6-c-table__button--BorderRadius);
592
- outline-offset: var(--pf-v6-c-table__button--OutlineOffset);
593
615
  }
594
616
  .pf-v6-c-table__button::after {
595
617
  position: absolute;
@@ -683,10 +705,10 @@
683
705
  }
684
706
 
685
707
  .pf-v6-c-table__toggle .pf-v6-c-table__toggle-icon {
708
+ transform: rotate(var(--pf-v6-c-table__toggle--c-button__toggle-icon--Rotate));
686
709
  transition-timing-function: var(--pf-v6-c-table__toggle--c-button__toggle-icon--TransitionTimingFunction);
687
710
  transition-duration: var(--pf-v6-c-table__toggle--c-button__toggle-icon--TransitionDuration);
688
711
  transition-property: transform;
689
- transform: rotate(var(--pf-v6-c-table__toggle--c-button__toggle-icon--Rotate));
690
712
  }
691
713
  .pf-v6-c-table__toggle svg {
692
714
  pointer-events: none;
@@ -978,6 +1000,11 @@ thead .pf-v6-c-table__check .pf-v6-c-radio.pf-m-standalone {
978
1000
  border-block-end: var(--pf-v6-c-table--border-width--base) solid var(--pf-v6-c-table--BorderColor);
979
1001
  }
980
1002
 
1003
+ .pf-v6-c-table__tfoot {
1004
+ --pf-v6-c-table__tr--BorderBlockEndWidth: 0;
1005
+ vertical-align: top;
1006
+ }
1007
+
981
1008
  .pf-v6-c-table__icon-inline {
982
1009
  display: flex;
983
1010
  align-items: center;