@patternfly/patternfly 6.2.0-prerelease.9 → 6.2.1

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 (99) hide show
  1. package/README.md +1 -1
  2. package/base/patternfly-variables.css +1 -1
  3. package/base/patternfly-variables.scss +1 -1
  4. package/components/Accordion/accordion.css +3 -1
  5. package/components/Accordion/accordion.scss +4 -2
  6. package/components/Alert/alert-group.css +52 -9
  7. package/components/Alert/alert-group.scss +116 -29
  8. package/components/Banner/banner.css +2 -2
  9. package/components/Banner/banner.scss +2 -2
  10. package/components/Button/button.css +41 -0
  11. package/components/Button/button.scss +52 -0
  12. package/components/Card/card.css +24 -2
  13. package/components/Card/card.scss +29 -2
  14. package/components/ClipboardCopy/clipboard-copy.css +6 -1
  15. package/components/ClipboardCopy/clipboard-copy.scss +8 -2
  16. package/components/CodeEditor/code-editor.css +3 -0
  17. package/components/CodeEditor/code-editor.scss +3 -1
  18. package/components/DataList/data-list.css +3 -1
  19. package/components/DataList/data-list.scss +4 -2
  20. package/components/DescriptionList/description-list.css +1 -1
  21. package/components/DescriptionList/description-list.scss +1 -1
  22. package/components/Drawer/drawer.css +28 -14
  23. package/components/Drawer/drawer.scss +28 -9
  24. package/components/DualListSelector/dual-list-selector.css +4 -2
  25. package/components/DualListSelector/dual-list-selector.scss +4 -2
  26. package/components/ExpandableSection/expandable-section.css +3 -1
  27. package/components/ExpandableSection/expandable-section.scss +4 -2
  28. package/components/Form/form.css +7 -5
  29. package/components/Form/form.scss +7 -5
  30. package/components/FormControl/form-control.css +109 -43
  31. package/components/FormControl/form-control.scss +139 -54
  32. package/components/HelperText/helper-text.css +13 -0
  33. package/components/HelperText/helper-text.scss +16 -1
  34. package/components/JumpLinks/jump-links.css +4 -2
  35. package/components/JumpLinks/jump-links.scss +4 -2
  36. package/components/Masthead/masthead.css +1 -1
  37. package/components/Masthead/masthead.scss +1 -1
  38. package/components/Menu/menu.css +4 -5
  39. package/components/Menu/menu.scss +2 -3
  40. package/components/MenuToggle/menu-toggle.css +42 -1
  41. package/components/MenuToggle/menu-toggle.scss +50 -1
  42. package/components/Nav/nav.css +41 -11
  43. package/components/Nav/nav.scss +52 -15
  44. package/components/NotificationDrawer/notification-drawer.css +3 -1
  45. package/components/NotificationDrawer/notification-drawer.scss +4 -2
  46. package/components/Page/page.css +20 -4
  47. package/components/Page/page.scss +21 -5
  48. package/components/Switch/switch.css +3 -1
  49. package/components/Switch/switch.scss +4 -2
  50. package/components/Table/table-grid.css +3 -1
  51. package/components/Table/table-grid.scss +4 -2
  52. package/components/Table/table.css +7 -5
  53. package/components/Table/table.scss +7 -4
  54. package/components/Tabs/tabs.css +71 -2
  55. package/components/Tabs/tabs.scss +85 -4
  56. package/components/Toolbar/toolbar.css +10 -3
  57. package/components/Toolbar/toolbar.scss +11 -3
  58. package/components/Truncate/truncate.css +5 -0
  59. package/components/Truncate/truncate.scss +6 -0
  60. package/components/Wizard/wizard.css +4 -2
  61. package/components/Wizard/wizard.scss +4 -2
  62. package/components/_index.css +515 -121
  63. package/docs/components/Alert/examples/Alert.md +6 -0
  64. package/docs/components/Button/examples/Button.md +29 -0
  65. package/docs/components/Card/examples/Card.md +30 -0
  66. package/docs/components/ClipboardCopy/examples/ClipboardCopy.md +29 -0
  67. package/docs/components/DataList/examples/DataList.md +1 -1
  68. package/docs/components/Divider/examples/Divider.md +1 -1
  69. package/docs/components/Drawer/examples/Drawer.md +4 -0
  70. package/docs/components/Menu/examples/Menu.md +6 -6
  71. package/docs/components/Nav/examples/Navigation.md +3 -0
  72. package/docs/components/Page/examples/Page.md +1 -0
  73. package/docs/components/Table/examples/Table.md +18 -30
  74. package/docs/components/Tabs/examples/Tabs.md +6886 -15
  75. package/docs/components/TextInputGroup/examples/TextInputGroup.md +10 -0
  76. package/docs/components/Toolbar/examples/Toolbar.css +3 -0
  77. package/docs/components/Toolbar/examples/Toolbar.md +28 -0
  78. package/docs/components/Truncate/examples/Truncate.md +53 -10
  79. package/docs/demos/Card/examples/Card.md +89 -24
  80. package/docs/demos/CardView/examples/CardView.md +2 -0
  81. package/docs/demos/DescriptionList/examples/DescriptionList.md +38 -0
  82. package/docs/demos/Drawer/examples/Drawer.md +38 -0
  83. package/docs/demos/Masthead/examples/Masthead.md +1 -1
  84. package/docs/demos/Nav/examples/Nav.md +4 -2
  85. package/docs/demos/Page/examples/Page.md +355 -0
  86. package/docs/demos/PrimaryDetail/examples/PrimaryDetail.md +76 -0
  87. package/docs/demos/Table/examples/Table.md +41 -21
  88. package/docs/demos/Tabs/examples/Tabs.md +570 -0
  89. package/package.json +6 -6
  90. package/patternfly-base-no-globals.css +1 -1
  91. package/patternfly-base.css +1 -1
  92. package/patternfly-charts.css +3 -3
  93. package/patternfly-charts.scss +3 -3
  94. package/patternfly-no-globals.css +516 -122
  95. package/patternfly.css +516 -122
  96. package/patternfly.min.css +1 -1
  97. package/patternfly.min.css.map +1 -1
  98. package/sass-utilities/mixins.scss +8 -4
  99. package/docs/components/TabContent/examples/TabContent.md +0 -153
@@ -17,6 +17,7 @@
17
17
  --#{$card}__title-text--FontSize: var(--pf-t--global--font--size--heading--xs);
18
18
  --#{$card}__title-text--FontWeight: var(--pf-t--global--font--weight--heading--default);
19
19
  --#{$card}__title-text--LineHeight: var(--pf-t--global--font--line-height--heading);
20
+ --#{$card}__title-text--OverflowWrap: break-word;
20
21
  --#{$card}--c-button--disabled--Color: var(--pf-t--global--text--color--on-disabled);
21
22
  --#{$card}__body--FontSize: var(--pf-t--global--font--size--body--default);
22
23
  --#{$card}__footer--FontSize: var(--pf-t--global--font--size--body--default);
@@ -25,6 +26,8 @@
25
26
  --#{$card}__actions--Gap: var(--pf-t--global--spacer--gap--action-to-action--default);
26
27
  --#{$card}__actions--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
27
28
  --#{$card}__actions--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
29
+ --#{$card}__header--m-wrap--RowGap: var(--pf-t--global--spacer--sm);
30
+ --#{$card}__header--m-wrap--ColumnGap: var(--pf-t--global--spacer--md);
28
31
 
29
32
  // Expandable
30
33
  --#{$card}__header-toggle--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
@@ -32,7 +35,7 @@
32
35
  --#{$card}__header-toggle--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
33
36
  --#{$card}__header-toggle--MarginInlineStart: calc(var(--pf-t--global--spacer--action--horizontal--plain--default) * -1);
34
37
  --#{$card}__header-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
35
- --#{$card}__header-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
38
+ --#{$card}__header-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
36
39
  --#{$card}--m-expanded__header-toggle-icon--Rotate: 90deg;
37
40
 
38
41
  // Selectable/Clickable
@@ -265,6 +268,26 @@
265
268
  order: 2;
266
269
  }
267
270
  }
271
+
272
+ &.pf-m-wrap {
273
+ --pf-v6-c-card__actions--PaddingInlineStart: 0;
274
+
275
+ gap: var(--#{$card}__header--m-wrap--RowGap) var(--#{$card}__header--m-wrap--ColumnGap);
276
+
277
+ &,
278
+ .#{$card}__actions {
279
+ flex-wrap: wrap;
280
+ row-gap: var(--#{$card}__header--m-wrap--RowGap);
281
+ }
282
+
283
+ .#{$card}__actions {
284
+ + * {
285
+ margin-inline-end: auto;
286
+ }
287
+
288
+ margin-inline-start: 0
289
+ }
290
+ }
268
291
  }
269
292
 
270
293
  .#{$card}__header-main {
@@ -283,15 +306,19 @@
283
306
  @include pf-v6-mirror-inline-on-rtl;
284
307
 
285
308
  display: inline-block;
286
- transition: transform var(--#{$card}__header-toggle-icon--TransitionDuration) var(--#{$card}__header-toggle-icon--TransitionTimingFunction);
309
+ transition-timing-function: var(--#{$card}__header-toggle-icon--TransitionTimingFunction);
310
+ transition-duration: var(--#{$card}__header-toggle-icon--TransitionDuration);
311
+ transition-property: transform;
287
312
  }
288
313
 
289
314
  .#{$card}__title-text {
315
+ overflow: auto;
290
316
  font-family: var(--#{$card}__title-text--FontFamily);
291
317
  font-size: var(--#{$card}__title-text--FontSize);
292
318
  font-weight: var(--#{$card}__title-text--FontWeight);
293
319
  line-height: var(--#{$card}__title-text--LineHeight);
294
320
  color: var(--#{$card}__title-text--Color);
321
+ overflow-wrap: var(--#{$card}__title-text--OverflowWrap);
295
322
  }
296
323
 
297
324
  .#{$card}__actions {
@@ -1,5 +1,7 @@
1
1
  .pf-v6-c-clipboard-copy {
2
- --pf-v6-c-clipboard-copy__toggle-icon--Transition: .2s ease-in 0s;
2
+ --pf-v6-c-clipboard-copy__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
3
+ --pf-v6-c-clipboard-copy__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
4
+ --pf-v6-c-clipboard-copy__toggle-icon--Transition: transform var(--pf-v6-c-clipboard-copy__toggle-icon--TransitionDuration) var(--pf-v6-c-clipboard-copy__toggle-icon--TransitionTimingFunction);
3
5
  --pf-v6-c-clipboard-copy--m-expanded__toggle-icon--Rotate: 90deg;
4
6
  --pf-v6-c-clipboard-copy__expandable-content--MarginBlockStart: var(--pf-t--global--spacer--xs);
5
7
  --pf-v6-c-clipboard-copy__expandable-content--PaddingBlockStart: var(--pf-t--global--spacer--md);
@@ -39,6 +41,9 @@
39
41
  .pf-v6-c-clipboard-copy.pf-m-inline.pf-m-block {
40
42
  display: block;
41
43
  }
44
+ .pf-v6-c-clipboard-copy.pf-m-inline.pf-m-truncate {
45
+ display: inline-flex;
46
+ }
42
47
 
43
48
  .pf-v6-c-clipboard-copy__group {
44
49
  display: flex;
@@ -2,7 +2,9 @@
2
2
 
3
3
  @include pf-root($clipboard-copy) {
4
4
  // Toggle icon
5
- --#{$clipboard-copy}__toggle-icon--Transition: .2s ease-in 0s;
5
+ --#{$clipboard-copy}__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
6
+ --#{$clipboard-copy}__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
7
+ --#{$clipboard-copy}__toggle-icon--Transition: transform var(--#{$clipboard-copy}__toggle-icon--TransitionDuration) var(--#{$clipboard-copy}__toggle-icon--TransitionTimingFunction); // TODO Remove in breaking change along with shorthand property
6
8
  --#{$clipboard-copy}--m-expanded__toggle-icon--Rotate: 90deg;
7
9
 
8
10
  // Clipboard copy expanded content
@@ -55,6 +57,10 @@
55
57
  &.pf-m-block {
56
58
  display: block;
57
59
  }
60
+
61
+ &.pf-m-truncate {
62
+ display: inline-flex;
63
+ }
58
64
  }
59
65
  }
60
66
 
@@ -67,7 +73,7 @@
67
73
  .#{$clipboard-copy}__toggle-icon {
68
74
  @include pf-v6-mirror-inline-on-rtl;
69
75
 
70
- transition: var(--#{$clipboard-copy}__toggle-icon--Transition);
76
+ transition: var(--#{$clipboard-copy}__toggle-icon--Transition); // TODO remove shorthand in breaking change
71
77
  }
72
78
 
73
79
  .#{$clipboard-copy}__expandable-content {
@@ -148,6 +148,9 @@
148
148
  .pf-v6-c-code-editor__main .monaco-editor {
149
149
  background-color: var(--pf-v6-c-code-editor__main--BackgroundColor);
150
150
  }
151
+ .pf-v6-c-code-editor__main a.label-name {
152
+ text-decoration-line: none;
153
+ }
151
154
 
152
155
  .pf-v6-c-code-editor__header + .pf-v6-c-code-editor__main {
153
156
  border-block-start-width: 0;
@@ -157,7 +157,7 @@
157
157
  }
158
158
 
159
159
  .#{$code-editor}__main {
160
- position: relative;
160
+ position: relative;
161
161
  flex-grow: 1;
162
162
  color: var(--#{$code-editor}__main--Color, inherit);
163
163
  background-color: var(--#{$code-editor}__main--BackgroundColor);
@@ -175,6 +175,8 @@
175
175
  .monaco-editor {
176
176
  background-color: var(--#{$code-editor}__main--BackgroundColor);
177
177
  }
178
+
179
+ a.label-name { text-decoration-line: none; } // revert normalize.scss
178
180
  // stylelint-enable selector-class-pattern
179
181
  }
180
182
 
@@ -443,7 +443,9 @@
443
443
  --pf-v6-c-data-list__toggle--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
444
444
  --pf-v6-c-data-list__toggle--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
445
445
  --pf-v6-c-data-list__toggle-icon--Height: calc(var(--pf-v6-c-data-list--FontSize) * var(--pf-v6-c-data-list--LineHeight));
446
- --pf-v6-c-data-list__toggle-icon--Transition: .2s ease-in 0s;
446
+ --pf-v6-c-data-list__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
447
+ --pf-v6-c-data-list__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
448
+ --pf-v6-c-data-list__toggle-icon--Transition: transform var(--pf-v6-c-data-list__toggle-icon--TransitionDuration) var(--pf-v6-c-data-list__toggle-icon--TransitionTimingFunction);
447
449
  --pf-v6-c-data-list__toggle-icon--Rotate: 0;
448
450
  --pf-v6-c-data-list__item--m-expanded__toggle-icon--Rotate: 90deg;
449
451
  --pf-v6-c-data-list__item-draggable-button--BackgroundColor: transparent;
@@ -60,7 +60,9 @@
60
60
  --#{$data-list}__toggle--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
61
61
  --#{$data-list}__toggle--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--default) * -1);
62
62
  --#{$data-list}__toggle-icon--Height: calc(var(--#{$data-list}--FontSize) * var(--#{$data-list}--LineHeight));
63
- --#{$data-list}__toggle-icon--Transition: .2s ease-in 0s;
63
+ --#{$data-list}__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
64
+ --#{$data-list}__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
65
+ --#{$data-list}__toggle-icon--Transition: transform var(--#{$data-list}__toggle-icon--TransitionDuration) var(--#{$data-list}__toggle-icon--TransitionTimingFunction); // TODO remove in breaking change along with shorthand property
64
66
  --#{$data-list}__toggle-icon--Rotate: 0;
65
67
  --#{$data-list}__item--m-expanded__toggle-icon--Rotate: 90deg;
66
68
 
@@ -342,7 +344,7 @@
342
344
 
343
345
  height: var(--#{$data-list}__toggle-icon--Height);
344
346
  pointer-events: none;
345
- transition: var(--#{$data-list}__toggle-icon--Transition);
347
+ transition: var(--#{$data-list}__toggle-icon--Transition); // TODO remove shorthand in breaking change
346
348
  transform: rotate(var(--#{$data-list}__toggle-icon--Rotate));
347
349
  }
348
350
 
@@ -14,7 +14,7 @@
14
14
  --pf-v6-c-description-list__term--Display: inline;
15
15
  --pf-v6-c-description-list__term--sm--Display: flex;
16
16
  --pf-v6-c-description-list__term--FontWeight: var(--pf-t--global--font--weight--body--bold);
17
- --pf-v6-c-description-list__term--FontSize: var(--pf-t--global--font--size--body--sm);
17
+ --pf-v6-c-description-list__term--FontSize: var(--pf-t--global--font--size--body--default);
18
18
  --pf-v6-c-description-list__term--LineHeight: var(--pf-t--global--font--line-height--body);
19
19
  --pf-v6-c-description-list__term-icon--MinWidth: var(--pf-t--global--font--size--body--sm);
20
20
  --pf-v6-c-description-list__term-icon--MarginInlineEnd: var(--pf-t--global--spacer--sm);
@@ -24,7 +24,7 @@ $pf-v6-c-description-list--breakpoint-map: build-breakpoint-map("base", "sm", "m
24
24
  --#{$description-list}__term--Display: inline;
25
25
  --#{$description-list}__term--sm--Display: flex;
26
26
  --#{$description-list}__term--FontWeight: var(--pf-t--global--font--weight--body--bold);
27
- --#{$description-list}__term--FontSize: var(--pf-t--global--font--size--body--sm);
27
+ --#{$description-list}__term--FontSize: var(--pf-t--global--font--size--body--default);
28
28
  --#{$description-list}__term--LineHeight: var(--pf-t--global--font--line-height--body);
29
29
 
30
30
  @media screen and (min-width: $pf-v6-global--breakpoint--sm) {
@@ -15,9 +15,15 @@
15
15
  --pf-v6-c-drawer__panel--RowGap: var(--pf-t--global--spacer--sm);
16
16
  --pf-v6-c-drawer__panel--PaddingBlockStart: var(--pf-t--global--spacer--sm);
17
17
  --pf-v6-c-drawer__panel--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
18
+ --pf-v6-c-drawer__panel--TransitionDelay: 0s, var(--pf-v6-c-drawer__panel--TransitionDelay--focus), var(--pf-v6-c-drawer__panel--TransitionDelay--focus);
19
+ --pf-v6-c-drawer__panel--TransitionDelay--focus: var(--pf-v6-c-drawer__panel--TransitionDuration--fade);
20
+ --pf-v6-c-drawer__panel--TransitionDelay--expand--focus: 0s;
18
21
  --pf-v6-c-drawer__panel--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
19
- --pf-v6-c-drawer__panel--TransitionDuration: var(--pf-t--global--motion--duration--slide-in--short);
20
- --pf-v6-c-drawer__panel--TransitionProperty: margin, transform, box-shadow, flex-basis;
22
+ --pf-v6-c-drawer__panel--TransitionDuration--fade: var(--pf-t--global--motion--duration--fade--default);
23
+ --pf-v6-c-drawer__panel--TransitionDuration: var(--pf-v6-c-drawer__panel--TransitionDuration--fade), 0s, 0s;
24
+ --pf-v6-c-drawer__panel--TransitionProperty: opacity, visibility, transform;
25
+ --pf-v6-c-drawer__panel--Opacity: 0;
26
+ --pf-v6-c-drawer--m-expanded__panel--Opacity: 1;
21
27
  --pf-v6-c-drawer__panel--FlexBasis: 100%;
22
28
  --pf-v6-c-drawer__panel--md--FlexBasis--min: 1.5rem;
23
29
  --pf-v6-c-drawer__panel--md--FlexBasis: 50%;
@@ -107,6 +113,17 @@
107
113
  --pf-v6-c-drawer--m-panel-left--m-inline__panel--PaddingInlineEnd: var(--pf-v6-c-drawer__panel--after--Width);
108
114
  --pf-v6-c-drawer--m-panel-bottom--m-inline__panel--PaddingBlockStart: var(--pf-v6-c-drawer__panel--after--Width);
109
115
  }
116
+ @media screen and (prefers-reduced-motion: no-preference) {
117
+ .pf-v6-c-drawer {
118
+ --pf-v6-c-drawer__panel--TransitionDuration--slide: var(--pf-t--global--motion--duration--slide-in--short);
119
+ --pf-v6-c-drawer__panel--TransitionDelay--focus: var(--pf-v6-c-drawer__panel--TransitionDuration--slide);
120
+ --pf-v6-c-drawer__panel--TransitionDelay: 0s, 0s, 0s, 0s, var(--pf-v6-c-drawer__panel--TransitionDelay--focus);
121
+ --pf-v6-c-drawer__panel--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
122
+ --pf-v6-c-drawer__panel--TransitionDuration: 0s, var(--pf-v6-c-drawer__panel--TransitionDuration--slide), 0s, 0s, 0s;
123
+ --pf-v6-c-drawer__panel--TransitionProperty: margin, transform, box-shadow, flex-basis, visibility;
124
+ --pf-v6-c-drawer__panel--Opacity: 1;
125
+ }
126
+ }
110
127
  @media screen and (min-width: 75rem) {
111
128
  .pf-v6-c-drawer {
112
129
  --pf-v6-c-drawer__panel--MinWidth: var(--pf-v6-c-drawer__panel--xl--MinWidth);
@@ -154,8 +171,13 @@
154
171
  .pf-v6-c-drawer.pf-m-panel-bottom > .pf-v6-c-drawer__main {
155
172
  flex-direction: column;
156
173
  }
174
+ .pf-v6-c-drawer.pf-m-expanded {
175
+ --pf-v6-c-drawer__panel--TransitionDelay--focus: var(--pf-v6-c-drawer__panel--TransitionDelay--expand--focus);
176
+ }
157
177
  .pf-v6-c-drawer.pf-m-expanded > .pf-v6-c-drawer__main > .pf-v6-c-drawer__panel {
158
178
  transform: translateX(-100%);
179
+ --pf-v6-c-drawer__panel--Opacity: var(--pf-v6-c-drawer--m-expanded__panel--Opacity);
180
+ visibility: visible;
159
181
  }
160
182
  :where(.pf-v6-m-dir-rtl, [dir=rtl]) .pf-v6-c-drawer.pf-m-expanded > .pf-v6-c-drawer__main > .pf-v6-c-drawer__panel {
161
183
  transform: translateX(calc(-100% * var(--pf-v6-global--inverse--multiplier)));
@@ -228,8 +250,11 @@
228
250
  order: 1;
229
251
  max-height: var(--pf-v6-c-drawer__panel--MaxHeight);
230
252
  overflow: auto;
253
+ visibility: hidden;
231
254
  background-color: var(--pf-v6-c-drawer__panel--BackgroundColor);
232
255
  box-shadow: var(--pf-v6-c-drawer__panel--BoxShadow);
256
+ opacity: var(--pf-v6-c-drawer__panel--Opacity);
257
+ transition-delay: var(--pf-v6-c-drawer__panel--TransitionDelay);
233
258
  transition-timing-function: var(--pf-v6-c-drawer__panel--TransitionTimingFunction);
234
259
  transition-duration: var(--pf-v6-c-drawer__panel--TransitionDuration);
235
260
  transition-property: var(--pf-v6-c-drawer__panel--TransitionProperty);
@@ -286,17 +311,6 @@
286
311
  padding-block-end: var(--pf-v6-c-drawer__panel--PaddingBlockEnd);
287
312
  }
288
313
 
289
- @keyframes pf-remove-tab-focus {
290
- to {
291
- visibility: hidden;
292
- }
293
- }
294
- .pf-v6-c-drawer__panel[hidden] {
295
- animation-name: pf-remove-tab-focus;
296
- animation-delay: var(--pf-v6-c-drawer__panel--TransitionDuration);
297
- animation-fill-mode: forwards;
298
- }
299
-
300
314
  .pf-v6-c-drawer__head {
301
315
  display: grid;
302
316
  grid-template-columns: auto;
@@ -404,7 +418,7 @@
404
418
  .pf-v6-c-drawer {
405
419
  min-width: var(--pf-v6-c-drawer__panel--MinWidth);
406
420
  }
407
- .pf-v6-c-drawer.pf-m-expanded > .pf-v6-c-drawer__main > .pf-v6-c-drawer__panel {
421
+ .pf-v6-c-drawer > .pf-v6-c-drawer__main > .pf-v6-c-drawer__panel {
408
422
  box-shadow: var(--pf-v6-c-drawer--m-expanded__panel--BoxShadow);
409
423
  }
410
424
  .pf-v6-c-drawer > .pf-v6-c-drawer__main > .pf-v6-c-drawer__panel.pf-m-resizable {
@@ -27,9 +27,15 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
27
27
  --#{$drawer}__panel--RowGap: var(--pf-t--global--spacer--sm);
28
28
  --#{$drawer}__panel--PaddingBlockStart: var(--pf-t--global--spacer--sm);
29
29
  --#{$drawer}__panel--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
30
+ --#{$drawer}__panel--TransitionDelay: 0s, var(--#{$drawer}__panel--TransitionDelay--focus), var(--#{$drawer}__panel--TransitionDelay--focus);
31
+ --#{$drawer}__panel--TransitionDelay--focus: var(--#{$drawer}__panel--TransitionDuration--fade);
32
+ --#{$drawer}__panel--TransitionDelay--expand--focus: 0s; // on expand, transition visible immediately
30
33
  --#{$drawer}__panel--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
31
- --#{$drawer}__panel--TransitionDuration: var(--pf-t--global--motion--duration--slide-in--short);
32
- --#{$drawer}__panel--TransitionProperty: margin, transform, box-shadow, flex-basis;
34
+ --#{$drawer}__panel--TransitionDuration--fade: var(--pf-t--global--motion--duration--fade--default);
35
+ --#{$drawer}__panel--TransitionDuration: var(--#{$drawer}__panel--TransitionDuration--fade), 0s, 0s;
36
+ --#{$drawer}__panel--TransitionProperty: opacity, visibility, transform; // by default, fade the drawer
37
+ --#{$drawer}__panel--Opacity: 0;
38
+ --#{$drawer}--m-expanded__panel--Opacity: 1;
33
39
  --#{$drawer}__panel--FlexBasis: 100%;
34
40
  --#{$drawer}__panel--md--FlexBasis--min: #{pf-size-prem(24px)};
35
41
  --#{$drawer}__panel--md--FlexBasis: 50%;
@@ -46,6 +52,16 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
46
52
  --#{$drawer}--m-panel-bottom__panel--m-resizable--md--FlexBasis--min: #{pf-size-prem(24px)};
47
53
  --#{$drawer}--m-panel-bottom__panel--m-resizable--MinHeight: #{pf-size-prem(24px)};
48
54
 
55
+ @media screen and (prefers-reduced-motion: no-preference) {
56
+ --#{$drawer}__panel--TransitionDuration--slide: var(--pf-t--global--motion--duration--slide-in--short);
57
+ --#{$drawer}__panel--TransitionDelay--focus: var(--#{$drawer}__panel--TransitionDuration--slide);
58
+ --#{$drawer}__panel--TransitionDelay: 0s, 0s, 0s, 0s, var(--#{$drawer}__panel--TransitionDelay--focus);
59
+ --#{$drawer}__panel--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
60
+ --#{$drawer}__panel--TransitionDuration: 0s, var(--#{$drawer}__panel--TransitionDuration--slide), 0s, 0s, 0s;
61
+ --#{$drawer}__panel--TransitionProperty: margin, transform, box-shadow, flex-basis, visibility; // with no preference, slide the panel
62
+ --#{$drawer}__panel--Opacity: 1;
63
+ }
64
+
49
65
  // Drawer panel head
50
66
  --#{$drawer}__head--ColumnGap: var(--pf-t--global--spacer--gap--text-to-element--default);
51
67
  --#{$drawer}__head--PaddingBlockStart: var(--pf-t--global--spacer--sm);
@@ -205,12 +221,18 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
205
221
  // Expanded
206
222
  // stylelint-disable selector-max-class
207
223
  &.pf-m-expanded {
224
+ --#{$drawer}__panel--TransitionDelay--focus: var(--#{$drawer}__panel--TransitionDelay--expand--focus);
225
+
208
226
  > .#{$drawer}__main > .#{$drawer}__panel {
209
227
  @include pf-v6-bidirectional-style(
210
228
  $prop: transform,
211
229
  $ltr-val: translateX(-100%),
212
230
  $rtl-val: translateX(#{pf-v6-calc-inverse(-100%)}),
213
231
  );
232
+
233
+ --#{$drawer}__panel--Opacity: var(--#{$drawer}--m-expanded__panel--Opacity);
234
+
235
+ visibility: visible;
214
236
  }
215
237
 
216
238
  &.pf-m-panel-left > .#{$drawer}__main > .#{$drawer}__panel {
@@ -297,8 +319,11 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
297
319
  order: 1;
298
320
  max-height: var(--#{$drawer}__panel--MaxHeight);
299
321
  overflow: auto;
322
+ visibility: hidden; // hidden by default
300
323
  background-color: var(--#{$drawer}__panel--BackgroundColor);
301
324
  box-shadow: var(--#{$drawer}__panel--BoxShadow);
325
+ opacity: var(--#{$drawer}__panel--Opacity);
326
+ transition-delay: var(--#{$drawer}__panel--TransitionDelay);
302
327
  transition-timing-function: var(--#{$drawer}__panel--TransitionTimingFunction);
303
328
  transition-duration: var(--#{$drawer}__panel--TransitionDuration);
304
329
  transition-property: var(--#{$drawer}__panel--TransitionProperty);
@@ -360,9 +385,6 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
360
385
  padding-block-end: var(--#{$drawer}__panel--PaddingBlockEnd);
361
386
  }
362
387
 
363
- // Remove tab focus
364
- @include pf-v6-animate-remove-tab-focus(".#{$drawer}__panel", var(--#{$drawer}__panel--TransitionDuration));
365
-
366
388
  // Panel head
367
389
  .#{$drawer}__head {
368
390
  display: grid;
@@ -491,9 +513,7 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
491
513
  .#{$drawer} {
492
514
  min-width: var(--#{$drawer}__panel--MinWidth);
493
515
 
494
- // stylelint-disable selector-max-class
495
- // Expanded
496
- &.pf-m-expanded > .#{$drawer}__main {
516
+ > .#{$drawer}__main {
497
517
  > .#{$drawer}__panel {
498
518
  box-shadow: var(--#{$drawer}--m-expanded__panel--BoxShadow);
499
519
  }
@@ -618,7 +638,6 @@ $pf-v6-c-drawer__panel--list--width: (25, 33, 50, 66, 75, 100);
618
638
  .#{$drawer}.pf-m-panel-left > .#{$drawer}__main > .#{$drawer}__panel.pf-m-no-border {
619
639
  --#{$drawer}--m-expanded__panel--BoxShadow: none;
620
640
  }
621
- // stylelint-enable
622
641
 
623
642
  .#{$drawer}__splitter {
624
643
  display: block;
@@ -53,7 +53,7 @@
53
53
  --pf-v6-c-dual-list-selector__item--c-badge--m-read--BackgroundColor: var(--pf-t--global--color--nonstatus--gray--default);
54
54
  --pf-v6-c-dual-list-selector__item-toggle-icon--Rotate: 0;
55
55
  --pf-v6-c-dual-list-selector__list-item--m-expanded__item-toggle-icon--Rotate: 90deg;
56
- --pf-v6-c-dual-list-selector__item-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
56
+ --pf-v6-c-dual-list-selector__item-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
57
57
  --pf-v6-c-dual-list-selector__item-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
58
58
  --pf-v6-c-dual-list-selector__item-toggle-icon--MinWidth: var(--pf-v6-c-dual-list-selector__list-item-row--FontSize);
59
59
  --pf-v6-c-dual-list-selector__list-item--m-disabled__item-toggle-icon--Color: var(--pf-t--global--icon--color--disabled);
@@ -277,7 +277,9 @@
277
277
  min-width: var(--pf-v6-c-dual-list-selector__item-toggle-icon--MinWidth);
278
278
  color: var(--pf-v6-c-dual-list-selector__item-toggle-icon--Color, inherit);
279
279
  text-align: center;
280
- transition: transform var(--pf-v6-c-dual-list-selector__item-toggle-icon--TransitionDuration) var(--pf-v6-c-dual-list-selector__item-toggle-icon--TransitionTimingFunction);
280
+ transition-timing-function: var(--pf-v6-c-dual-list-selector__item-toggle-icon--TransitionTimingFunction);
281
+ transition-duration: var(--pf-v6-c-dual-list-selector__item-toggle-icon--TransitionDuration);
282
+ transition-property: transform;
281
283
  transform: rotate(var(--pf-v6-c-dual-list-selector__item-toggle-icon--Rotate));
282
284
  }
283
285
 
@@ -84,7 +84,7 @@ $pf-v6-c-dual-list-selector__item--MaxNesting: 10;
84
84
  // Icon
85
85
  --#{$dual-list-selector}__item-toggle-icon--Rotate: 0;
86
86
  --#{$dual-list-selector}__list-item--m-expanded__item-toggle-icon--Rotate: 90deg;
87
- --#{$dual-list-selector}__item-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
87
+ --#{$dual-list-selector}__item-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
88
88
  --#{$dual-list-selector}__item-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
89
89
  --#{$dual-list-selector}__item-toggle-icon--MinWidth: var(--#{$dual-list-selector}__list-item-row--FontSize);
90
90
  --#{$dual-list-selector}__list-item--m-disabled__item-toggle-icon--Color: var(--pf-t--global--icon--color--disabled);
@@ -339,7 +339,9 @@ $pf-v6-c-dual-list-selector__item--MaxNesting: 10;
339
339
  min-width: var(--#{$dual-list-selector}__item-toggle-icon--MinWidth);
340
340
  color: var(--#{$dual-list-selector}__item-toggle-icon--Color, inherit);
341
341
  text-align: center;
342
- transition: transform var(--#{$dual-list-selector}__item-toggle-icon--TransitionDuration) var(--#{$dual-list-selector}__item-toggle-icon--TransitionTimingFunction);
342
+ transition-timing-function: var(--#{$dual-list-selector}__item-toggle-icon--TransitionTimingFunction);
343
+ transition-duration: var(--#{$dual-list-selector}__item-toggle-icon--TransitionDuration);
344
+ transition-property: transform;
343
345
  transform: rotate(var(--#{$dual-list-selector}__item-toggle-icon--Rotate));
344
346
  }
345
347
 
@@ -2,7 +2,9 @@
2
2
  --pf-v6-c-expandable-section--Gap: var(--pf-t--global--spacer--sm);
3
3
  --pf-v6-c-expandable-section__toggle-icon--MinWidth: 1em;
4
4
  --pf-v6-c-expandable-section__toggle-icon--Color: var(--pf-t--global--icon--color--regular);
5
- --pf-v6-c-expandable-section__toggle-icon--Transition: .2s ease-in 0s;
5
+ --pf-v6-c-expandable-section__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
6
+ --pf-v6-c-expandable-section__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
7
+ --pf-v6-c-expandable-section__toggle-icon--Transition: transform var(--pf-v6-c-expandable-section__toggle-icon--TransitionDuration) var(--pf-v6-c-expandable-section__toggle-icon--TransitionTimingFunction);
6
8
  --pf-v6-c-expandable-section__toggle-icon--Rotate: 0;
7
9
  --pf-v6-c-expandable-section__toggle-icon--m-expand-top--Rotate: 0;
8
10
  --pf-v6-c-expandable-section--m-expanded__toggle-icon--Rotate: 90deg;
@@ -6,7 +6,9 @@
6
6
  // Toggle icon
7
7
  --#{$expandable-section}__toggle-icon--MinWidth: 1em;
8
8
  --#{$expandable-section}__toggle-icon--Color: var(--pf-t--global--icon--color--regular);
9
- --#{$expandable-section}__toggle-icon--Transition: .2s ease-in 0s;
9
+ --#{$expandable-section}__toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
10
+ --#{$expandable-section}__toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
11
+ --#{$expandable-section}__toggle-icon--Transition: transform var(--#{$expandable-section}__toggle-icon--TransitionDuration) var(--#{$expandable-section}__toggle-icon--TransitionTimingFunction); // TODO remove in breaking change along with shorthand property
10
12
  --#{$expandable-section}__toggle-icon--Rotate: 0;
11
13
  --#{$expandable-section}__toggle-icon--m-expand-top--Rotate: 0;
12
14
  --#{$expandable-section}--m-expanded__toggle-icon--Rotate: 90deg;
@@ -85,7 +87,7 @@
85
87
  display: inline-block;
86
88
  min-width: var(--#{$expandable-section}__toggle-icon--MinWidth);
87
89
  color: var(--#{$expandable-section}__toggle-icon--Color);
88
- transition: var(--#{$expandable-section}__toggle-icon--Transition);
90
+ transition: var(--#{$expandable-section}__toggle-icon--Transition); // TODO remove shorthand in breaking change
89
91
  transform: rotate(var(--#{$expandable-section}__toggle-icon--Rotate));
90
92
 
91
93
  &.pf-m-expand-top {
@@ -10,16 +10,16 @@
10
10
  --pf-v6-c-form__group-label--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
11
11
  --pf-v6-c-form--m-horizontal__group-label--m-no-padding--md--PaddingBlockStart: 0;
12
12
  --pf-v6-c-form--m-horizontal__group-label--m-no-padding--md--TranslateY: calc(((((var(--pf-t--global--font--size--body--sm) * var(--pf-t--global--font--line-height--body)) - var(--pf-t--global--font--size--body--sm)) / 2) + var(--pf-t--global--font--size--body--sm)) - ((((var(--pf-t--global--font--size--body--default) * var(--pf-t--global--font--line-height--body)) - var(--pf-t--global--font--size--body--default)) / 2) + var(--pf-t--global--font--size--body--default)));
13
- --pf-v6-c-form__label--FontSize: var(--pf-t--global--font--size--body--sm);
13
+ --pf-v6-c-form__label--FontSize: var(--pf-t--global--font--size--body--default);
14
14
  --pf-v6-c-form__label--LineHeight: var(--pf-t--global--font--line-height--body);
15
15
  --pf-v6-c-form__label--m-disabled--Color: var(--pf-t--global--text--color--disabled);
16
16
  --pf-v6-c-form__label--hover--Cursor: pointer;
17
17
  --pf-v6-c-form__label--m-disabled--hover--Cursor: not-allowed;
18
18
  --pf-v6-c-form__label-text--FontWeight: var(--pf-t--global--font--weight--body--bold);
19
19
  --pf-v6-c-form__label-required--MarginInlineStart: var(--pf-t--global--spacer--xs);
20
- --pf-v6-c-form__label-required--FontSize: var(--pf-t--global--font--size--body--sm);
20
+ --pf-v6-c-form__label-required--FontSize: var(--pf-t--global--font--size--body--default);
21
21
  --pf-v6-c-form__label-required--Color: var(--pf-t--global--color--status--danger--default);
22
- --pf-v6-c-form__group-label-help--FontSize: var(--pf-t--global--font--size--body--sm);
22
+ --pf-v6-c-form__group-label-help--FontSize: var(--pf-t--global--font--size--body--default);
23
23
  --pf-v6-c-form__group-label--m-info--Gap: var(--pf-t--global--spacer--gap--horizontal);
24
24
  --pf-v6-c-form__group-label-info--FontSize: var(--pf-t--global--font--size--body--sm);
25
25
  --pf-v6-c-form--m-horizontal__group-label--m-info--Gap: var(--pf-t--global--spacer--gap--group--vertical);
@@ -56,7 +56,7 @@
56
56
  --pf-v6-c-form__field-group__field-group--field-group__field-group-toggle--after--BorderBlockStartWidth: var(--pf-v6-c-form__field-group-header-toggle--BorderWidth--base);
57
57
  --pf-v6-c-form__field-group-toggle-button--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--plain) * -1);
58
58
  --pf-v6-c-form__field-group-toggle-button--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--plain) * -1);
59
- --pf-v6-c-form__field-group-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
59
+ --pf-v6-c-form__field-group-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
60
60
  --pf-v6-c-form__field-group-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
61
61
  --pf-v6-c-form__field-group-toggle-icon--MinWidth: var(--pf-t--global--font--size--body--default);
62
62
  --pf-v6-c-form__field-group-toggle-icon--Rotate: 0;
@@ -454,7 +454,9 @@
454
454
  display: inline-block;
455
455
  min-width: var(--pf-v6-c-form__field-group-toggle-icon--MinWidth);
456
456
  text-align: center;
457
- transition: transform var(--pf-v6-c-form__field-group-toggle-icon--TransitionDuration) var(--pf-v6-c-form__field-group-toggle-icon--TransitionTimingFunction);
457
+ transition-timing-function: var(--pf-v6-c-form__field-group-toggle-icon--TransitionTimingFunction);
458
+ transition-duration: var(--pf-v6-c-form__field-group-toggle-icon--TransitionDuration);
459
+ transition-property: transform;
458
460
  transform: rotate(var(--pf-v6-c-form__field-group-toggle-icon--Rotate));
459
461
  }
460
462
  :where(.pf-v6-m-dir-rtl, [dir=rtl]) .pf-v6-c-form__field-group-toggle-icon {
@@ -67,7 +67,7 @@ $pf-v6-c-form--m-horizontal--breakpoint-map: build-breakpoint-map("sm", "md", "l
67
67
  --#{$form}--m-horizontal__group-label--m-no-padding--md--TranslateY: calc(((((var(--pf-t--global--font--size--body--sm) * var(--pf-t--global--font--line-height--body)) - var(--pf-t--global--font--size--body--sm)) / 2) + var(--pf-t--global--font--size--body--sm)) - ((((var(--pf-t--global--font--size--body--default) * var(--pf-t--global--font--line-height--body)) - var(--pf-t--global--font--size--body--default)) / 2) + var(--pf-t--global--font--size--body--default)));
68
68
 
69
69
  // Label
70
- --#{$form}__label--FontSize: var(--pf-t--global--font--size--body--sm);
70
+ --#{$form}__label--FontSize: var(--pf-t--global--font--size--body--default);
71
71
  --#{$form}__label--LineHeight: var(--pf-t--global--font--line-height--body);
72
72
  --#{$form}__label--m-disabled--Color: var(--pf-t--global--text--color--disabled);
73
73
  --#{$form}__label--hover--Cursor: pointer;
@@ -78,11 +78,11 @@ $pf-v6-c-form--m-horizontal--breakpoint-map: build-breakpoint-map("sm", "md", "l
78
78
 
79
79
  // Required labels
80
80
  --#{$form}__label-required--MarginInlineStart: var(--pf-t--global--spacer--xs);
81
- --#{$form}__label-required--FontSize: var(--pf-t--global--font--size--body--sm);
81
+ --#{$form}__label-required--FontSize: var(--pf-t--global--font--size--body--default);
82
82
  --#{$form}__label-required--Color: var(--pf-t--global--color--status--danger--default);
83
83
 
84
84
  // Field level help
85
- --#{$form}__group-label-help--FontSize: var(--pf-t--global--font--size--body--sm);
85
+ --#{$form}__group-label-help--FontSize: var(--pf-t--global--font--size--body--default);
86
86
 
87
87
  // Form group label info
88
88
  --#{$form}__group-label--m-info--Gap: var(--pf-t--global--spacer--gap--horizontal);
@@ -133,7 +133,7 @@ $pf-v6-c-form--m-horizontal--breakpoint-map: build-breakpoint-map("sm", "md", "l
133
133
  --#{$form}__field-group__field-group--field-group__field-group-toggle--after--BorderBlockStartWidth: var(--#{$form}__field-group-header-toggle--BorderWidth--base);
134
134
  --#{$form}__field-group-toggle-button--MarginBlockStart: calc(var(--pf-t--global--spacer--control--vertical--plain) * -1);
135
135
  --#{$form}__field-group-toggle-button--MarginBlockEnd: calc(var(--pf-t--global--spacer--control--vertical--plain) * -1);
136
- --#{$form}__field-group-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
136
+ --#{$form}__field-group-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
137
137
  --#{$form}__field-group-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
138
138
  --#{$form}__field-group-toggle-icon--MinWidth: var(--pf-t--global--font--size--body--default);
139
139
  --#{$form}__field-group-toggle-icon--Rotate: 0;
@@ -408,7 +408,9 @@ $pf-v6-c-form--m-horizontal--breakpoint-map: build-breakpoint-map("sm", "md", "l
408
408
  display: inline-block;
409
409
  min-width: var(--#{$form}__field-group-toggle-icon--MinWidth);
410
410
  text-align: center;
411
- transition: transform var(--#{$form}__field-group-toggle-icon--TransitionDuration) var(--#{$form}__field-group-toggle-icon--TransitionTimingFunction);
411
+ transition-timing-function: var(--#{$form}__field-group-toggle-icon--TransitionTimingFunction);
412
+ transition-duration: var(--#{$form}__field-group-toggle-icon--TransitionDuration);
413
+ transition-property: transform;
412
414
  transform: rotate(var(--#{$form}__field-group-toggle-icon--Rotate));
413
415
 
414
416
  @include pf-v6-mirror-inline-on-rtl;