@patternfly/patternfly 6.3.0-prerelease.25 → 6.3.0-prerelease.27

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 (60) hide show
  1. package/base/patternfly-common.css +35 -0
  2. package/base/patternfly-common.scss +46 -1
  3. package/components/Button/button.css +103 -0
  4. package/components/Button/button.scss +103 -2
  5. package/components/FormControl/form-control.css +16 -0
  6. package/components/FormControl/form-control.scss +9 -0
  7. package/components/MenuToggle/menu-toggle.css +30 -0
  8. package/components/MenuToggle/menu-toggle.scss +33 -0
  9. package/components/Page/page.css +45 -0
  10. package/components/Page/page.scss +29 -0
  11. package/components/Progress/progress.css +16 -0
  12. package/components/Progress/progress.scss +11 -1
  13. package/components/TextInputGroup/text-input-group.css +16 -0
  14. package/components/TextInputGroup/text-input-group.scss +8 -0
  15. package/components/_index.css +226 -0
  16. package/docs/components/Breadcrumb/examples/Breadcrumb.md +1 -1
  17. package/docs/components/Button/examples/Button.md +85 -3
  18. package/docs/components/Card/examples/Card.md +8 -8
  19. package/docs/components/DataList/examples/DataList.md +23 -23
  20. package/docs/components/DualListSelector/examples/DualListSelector.md +18 -18
  21. package/docs/components/Hint/examples/Hint.md +3 -3
  22. package/docs/components/InlineEdit/examples/InlineEdit.md +2 -2
  23. package/docs/components/Masthead/examples/masthead.md +90 -12
  24. package/docs/components/Menu/examples/Menu.md +2 -2
  25. package/docs/components/MenuToggle/examples/MenuToggle.md +90 -51
  26. package/docs/components/OverflowMenu/examples/overflow-menu.md +5 -5
  27. package/docs/components/Page/examples/Page.md +147 -14
  28. package/docs/components/Pagination/examples/Pagination.md +12 -12
  29. package/docs/components/Table/examples/Table.md +240 -240
  30. package/docs/components/Toolbar/examples/Toolbar.md +7 -7
  31. package/docs/demos/AboutModal/examples/AboutModal.md +22 -3
  32. package/docs/demos/Alert/examples/Alert.md +66 -9
  33. package/docs/demos/BackToTop/examples/BackToTop.md +22 -3
  34. package/docs/demos/Banner/examples/Banner.md +47 -6
  35. package/docs/demos/Card/examples/Card.md +4 -4
  36. package/docs/demos/CardView/examples/CardView.md +24 -5
  37. package/docs/demos/Dashboard/examples/Dashboard.md +24 -5
  38. package/docs/demos/DataList/examples/DataList.md +100 -24
  39. package/docs/demos/DescriptionList/examples/DescriptionList.md +66 -9
  40. package/docs/demos/Drawer/examples/Drawer.md +110 -15
  41. package/docs/demos/JumpLinks/examples/JumpLinks.md +132 -18
  42. package/docs/demos/Masthead/examples/Masthead.md +170 -18
  43. package/docs/demos/Modal/examples/Modal.md +132 -18
  44. package/docs/demos/Nav/examples/Nav.md +111 -16
  45. package/docs/demos/NotificationDrawer/examples/NotificationDrawer.md +110 -15
  46. package/docs/demos/Page/examples/Page.md +309 -43
  47. package/docs/demos/PrimaryDetail/examples/PrimaryDetail.md +160 -27
  48. package/docs/demos/Skeleton/examples/Skeleton.md +22 -3
  49. package/docs/demos/Table/examples/Table.md +435 -150
  50. package/docs/demos/Tabs/examples/Tabs.md +137 -23
  51. package/docs/demos/Toolbar/examples/Toolbar.md +72 -34
  52. package/docs/demos/Wizard/examples/Wizard.md +198 -27
  53. package/package.json +2 -2
  54. package/patternfly-base-no-globals.css +34 -0
  55. package/patternfly-base.css +34 -0
  56. package/patternfly-no-globals.css +260 -0
  57. package/patternfly.css +260 -0
  58. package/patternfly.min.css +1 -1
  59. package/patternfly.min.css.map +1 -1
  60. package/sass-utilities/mixins.scss +54 -0
@@ -55,4 +55,39 @@
55
55
  --pf-t--global--duration--200: 1ms !important;
56
56
  --pf-t--global--duration--100: 1ms !important;
57
57
  --pf-t--global--duration--50: 1ms !important;
58
+ }
59
+
60
+ :root {
61
+ --pf-v6-global--danger-jiggle--AnimationDuration--Transform: var(--pf-t--global--motion--duration--fade--default);
62
+ --pf-v6-global--danger-jiggle--AnimationTimingFunction--Transform: var(--pf-t--global--motion--timing-function--default);
63
+ }
64
+
65
+ @property --pf-v6-global--danger-jiggle--TranslateX {
66
+ syntax: "<length>";
67
+ inherits: false;
68
+ initial-value: 0;
69
+ }
70
+ @keyframes pf-v6-global-danger-jiggle-motion {
71
+ 33% {
72
+ --pf-v6-global--danger-jiggle--TranslateX: -2px;
73
+ }
74
+ 66% {
75
+ --pf-v6-global--danger-jiggle--TranslateX: 3px;
76
+ }
77
+ }
78
+ @keyframes pf-v6-global-fade-in {
79
+ from {
80
+ opacity: 0;
81
+ }
82
+ to {
83
+ opacity: 1;
84
+ }
85
+ }
86
+ @keyframes pf-v6-global-fade-out {
87
+ from {
88
+ opacity: 1;
89
+ }
90
+ to {
91
+ opacity: 0;
92
+ }
58
93
  }
@@ -66,4 +66,49 @@
66
66
  --pf-t--global--duration--50: 1ms !important;
67
67
 
68
68
  // stylelink-enable declaration-no-important
69
- }
69
+ }
70
+
71
+ :root {
72
+ --#{$pf-global}--danger-jiggle--AnimationDuration--Transform: var(--pf-t--global--motion--duration--fade--default);
73
+ --#{$pf-global}--danger-jiggle--AnimationTimingFunction--Transform: var(--pf-t--global--motion--timing-function--default);
74
+ }
75
+
76
+ // Register the property type for the custom property to be animatable
77
+ @property --#{$pf-global}--danger-jiggle--TranslateX {
78
+ syntax: "<length>";
79
+ inherits: false;
80
+ initial-value: 0;
81
+ }
82
+
83
+ // Animate danger jiggle
84
+ @keyframes #{$pf-global}-danger-jiggle-motion {
85
+ 33% {
86
+ --#{$pf-global}--danger-jiggle--TranslateX: -2px;
87
+ }
88
+
89
+ 66% {
90
+ --#{$pf-global}--danger-jiggle--TranslateX: 3px;
91
+ }
92
+ }
93
+
94
+ // Animate fade-in
95
+ @keyframes #{$pf-global}-fade-in {
96
+ from {
97
+ opacity: 0;
98
+ }
99
+
100
+ to {
101
+ opacity: 1;
102
+ }
103
+ }
104
+
105
+ // Animate fade-out
106
+ @keyframes #{$pf-global}-fade-out {
107
+ from {
108
+ opacity: 1;
109
+ }
110
+
111
+ to {
112
+ opacity: 0;
113
+ }
114
+ }
@@ -19,6 +19,7 @@
19
19
  --pf-v6-c-button--TextDecorationLine: none;
20
20
  --pf-v6-c-button--TextDecorationStyle: none;
21
21
  --pf-v6-c-button--TextDecorationColor: currentcolor;
22
+ --pf-v6-c-button--TransitionDelay: 0s;
22
23
  --pf-v6-c-button--TransitionDuration: var(--pf-t--global--motion--duration--fade--default);
23
24
  --pf-v6-c-button--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
24
25
  --pf-v6-c-button--TransitionProperty: color, background, border-width, border-color;
@@ -237,6 +238,16 @@
237
238
  --pf-v6-c-button__icon--m-end--MarginInlineStart: 0;
238
239
  --pf-v6-c-button--m-notify__icon--AnimationDuration--notify: var(--pf-t--global--motion--duration--3xl);
239
240
  --pf-v6-c-button--m-notify__icon--AnimationTimingFunction--notify: var(--pf-t--global--motion--timing-function--default);
241
+ --pf-v6-c-button__icon--TransitionDelay: 0s;
242
+ --pf-v6-c-button__icon--TransitionTimingFunction: auto;
243
+ --pf-v6-c-button__icon--TransitionDuration: 0s;
244
+ --pf-v6-c-button__icon--TransitionProperty: none;
245
+ --pf-v6-c-button__icon--Rotate: 0deg;
246
+ --pf-v6-c-button__icon--Scale: 1;
247
+ --pf-v6-c-button--hover__icon--TransitionTimingFunction: auto;
248
+ --pf-v6-c-button--hover__icon--TransitionDuration: 0s;
249
+ --pf-v6-c-button--hover__icon--TransitionProperty: none;
250
+ --pf-v6-c-button--hover__icon--Rotate: 0deg;
240
251
  --pf-v6-c-button--m-favorite__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
241
252
  --pf-v6-c-button--m-favorite__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
242
253
  --pf-v6-c-button--m-favorited__icon--Color: var(--pf-t--global--color--favorite--default);
@@ -262,9 +273,28 @@
262
273
  --pf-v6-c-button--m-in-progress--m-plain--Color: var(--pf-t--global--icon--color--brand--default);
263
274
  --pf-v6-c-button--m-in-progress--m-plain__progress--InsetInlineStart: 50%;
264
275
  --pf-v6-c-button--m-in-progress--m-plain__progress--TranslateX: -50%;
276
+ --pf-v6-c-button--m-settings__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
277
+ --pf-v6-c-button--m-settings__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
278
+ --pf-v6-c-button--m-settings--hover__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
279
+ --pf-v6-c-button--m-settings--hover__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
280
+ --pf-v6-c-button--m-settings--hover__icon--Rotate: 60deg;
265
281
  --pf-v6-c-button--m-primary__c-badge--BorderColor: var(--pf-t--global--border--color--default);
266
282
  --pf-v6-c-button--m-block--Display: flex;
267
283
  --pf-v6-c-button--m-block--Width: 100%;
284
+ --pf-v6-c-button--hamburger-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
285
+ --pf-v6-c-button--hamburger-icon--TransitionDuration: var(--pf-t--global--motion--duration--md);
286
+ --pf-v6-c-button--hamburger-icon--top--path--base: path("M1,1 L9,1");
287
+ --pf-v6-c-button--hamburger-icon--middle--path--base: path("M1,5 L9,5");
288
+ --pf-v6-c-button--hamburger-icon--arrow--path--base: path("M1,5 L1,5 L1,5");
289
+ --pf-v6-c-button--hamburger-icon--bottom--path--base: path("M9,9 L1,9");
290
+ --pf-v6-c-button--hamburger-icon--top--path: var(--pf-v6-c-button--hamburger-icon--top--path--base);
291
+ --pf-v6-c-button--hamburger-icon--middle--path: var(--pf-v6-c-button--hamburger-icon--middle--path--base);
292
+ --pf-v6-c-button--hamburger-icon--arrow--path: var(--pf-v6-c-button--hamburger-icon--arrow--path--base);
293
+ --pf-v6-c-button--hamburger-icon--bottom--path: var(--pf-v6-c-button--hamburger-icon--bottom--path--base);
294
+ --pf-v6-c-button--hamburger-icon--top--collapse--path: path("M5,1 L9,1");
295
+ --pf-v6-c-button--hamburger-icon--arrow--collapse--path: path("M3,7 L1,5 L3,3");
296
+ --pf-v6-c-button--hamburger-icon--bottom--collapse--path: path("M9,9 L5,9");
297
+ --pf-v6-c-button--m-hamburger__icon--m-expand--Scale: -1;
268
298
  }
269
299
 
270
300
  .pf-v6-c-button {
@@ -296,9 +326,11 @@
296
326
  border-start-end-radius: var(--pf-v6-c-button--BorderStartEndRadius, var(--pf-v6-c-button--BorderRadius));
297
327
  border-end-start-radius: var(--pf-v6-c-button--BorderEndStartRadius, var(--pf-v6-c-button--BorderRadius));
298
328
  border-end-end-radius: var(--pf-v6-c-button--BorderEndEndRadius, var(--pf-v6-c-button--BorderRadius));
329
+ transition-delay: var(--pf-v6-c-button--TransitionDelay);
299
330
  transition-timing-function: var(--pf-v6-c-button--TransitionTimingFunction);
300
331
  transition-duration: var(--pf-v6-c-button--TransitionDuration);
301
332
  transition-property: var(--pf-v6-c-button--TransitionProperty);
333
+ scale: var(--pf-v6-c-button--Scale, revert);
302
334
  }
303
335
  .pf-v6-c-button::after {
304
336
  position: absolute;
@@ -568,7 +600,9 @@ span.pf-v6-c-button.pf-m-link.pf-m-inline {
568
600
  }
569
601
  .pf-v6-c-button.pf-m-favorited {
570
602
  --pf-v6-c-button__icon--Color: var(--pf-v6-c-button--m-favorited__icon--Color);
603
+ --pf-v6-c-button--m-plain--m-no-padding__icon--Color: var(--pf-v6-c-button--m-favorited__icon--Color);
571
604
  --pf-v6-c-button--hover__icon--Color: var(--pf-v6-c-button--m-favorited--hover__icon--Color);
605
+ --pf-v6-c-button--m-plain--m-no-padding--hover__icon--Color: var(--pf-v6-c-button--m-favorited--hover__icon--Color);
572
606
  --pf-v6-c-button__icon--favorite--Opacity: var(--pf-v6-c-button--m-favorited__icon--favorite--Opacity);
573
607
  --pf-v6-c-button__icon--favorited--Opacity: var(--pf-v6-c-button--m-favorited__icon--favorited--Opacity);
574
608
  }
@@ -577,6 +611,41 @@ span.pf-v6-c-button.pf-m-link.pf-m-inline {
577
611
  animation-duration: var(--pf-v6-c-button--m-favorited__icon--AnimationDuration);
578
612
  animation-timing-function: var(--pf-v6-c-button--m-favorited__icon--AnimationTimingFunction);
579
613
  }
614
+ .pf-v6-c-button.pf-m-settings {
615
+ --pf-v6-c-button__icon--TransitionProperty: rotate;
616
+ --pf-v6-c-button__icon--TransitionDuration: var(--pf-v6-c-button--m-settings__icon--TransitionDuration);
617
+ --pf-v6-c-button__icon--TransitionTimingFunction: var(--pf-v6-c-button--m-settings__icon--TransitionTimingFunction);
618
+ --pf-v6-c-button--hover__icon--TransitionProperty: rotate;
619
+ --pf-v6-c-button--hover__icon--TransitionDuration: var(--pf-v6-c-button--m-settings--hover__icon--TransitionDuration);
620
+ --pf-v6-c-button--hover__icon--TransitionTimingFunction: var(--pf-v6-c-button--m-settings--hover__icon--TransitionTimingFunction);
621
+ --pf-v6-c-button--hover__icon--Rotate: var(--pf-v6-c-button--m-settings--hover__icon--Rotate);
622
+ }
623
+ .pf-v6-c-button.pf-m-hamburger {
624
+ --pf-v6-c-button__icon--TransitionDelay: var(--pf-v6-c-button--hamburger-icon--TransitionDuration);
625
+ --pf-v6-c-button__icon--TransitionDuration: 0s;
626
+ --pf-v6-c-button__icon--TransitionProperty: scale;
627
+ --pf-v6-c-button--hover__icon--TransitionDelay: var(--pf-v6-c-button--hamburger-icon--TransitionDuration);
628
+ --pf-v6-c-button--hover__icon--TransitionDuration: 0s;
629
+ --pf-v6-c-button--hover__icon--TransitionProperty: scale;
630
+ }
631
+ .pf-v6-c-button.pf-m-hamburger.pf-m-expand {
632
+ --pf-v6-c-button--hamburger-icon--top--path: var(--pf-v6-c-button--hamburger-icon--top--collapse--path);
633
+ --pf-v6-c-button--hamburger-icon--arrow--path: var(--pf-v6-c-button--hamburger-icon--arrow--collapse--path);
634
+ --pf-v6-c-button--hamburger-icon--bottom--path: var(--pf-v6-c-button--hamburger-icon--bottom--collapse--path);
635
+ --pf-v6-c-button__icon--TransitionDelay: 0s;
636
+ --pf-v6-c-button__icon--Scale: var(--pf-v6-c-button--m-hamburger__icon--m-expand--Scale);
637
+ --pf-v6-c-button--hover__icon--TransitionDelay: 0s;
638
+ --pf-v6-c-button--hover__icon--Scale: var(--pf-v6-c-button--m-hamburger__icon--m-expand--Scale);
639
+ }
640
+ .pf-v6-c-button.pf-m-hamburger.pf-m-collapse {
641
+ --pf-v6-c-button--hamburger-icon--top--path: var(--pf-v6-c-button--hamburger-icon--top--collapse--path);
642
+ --pf-v6-c-button--hamburger-icon--arrow--path: var(--pf-v6-c-button--hamburger-icon--arrow--collapse--path);
643
+ --pf-v6-c-button--hamburger-icon--bottom--path: var(--pf-v6-c-button--hamburger-icon--bottom--collapse--path);
644
+ --pf-v6-c-button__icon--TransitionDelay: 0s;
645
+ --pf-v6-c-button__icon--Scale: 1;
646
+ --pf-v6-c-button--hover__icon--TransitionDelay: 0s;
647
+ --pf-v6-c-button--hover__icon--Scale: 1;
648
+ }
580
649
  .pf-v6-c-button:hover, .pf-v6-c-button:focus {
581
650
  --pf-v6-c-button--Color: var(--pf-v6-c-button--hover--Color);
582
651
  --pf-v6-c-button--BackgroundColor: var(--pf-v6-c-button--hover--BackgroundColor);
@@ -584,6 +653,10 @@ span.pf-v6-c-button.pf-m-link.pf-m-inline {
584
653
  --pf-v6-c-button--BorderWidth: var(--pf-v6-c-button--hover--BorderWidth);
585
654
  --pf-v6-c-button--m-plain--m-no-padding__icon--Color: var(--pf-v6-c-button--m-plain--m-no-padding--hover__icon--Color);
586
655
  --pf-v6-c-button__icon--Color: var(--pf-v6-c-button--hover__icon--Color);
656
+ --pf-v6-c-button__icon--TransitionTimingFunction: var(--pf-v6-c-button--hover__icon--TransitionTimingFunction);
657
+ --pf-v6-c-button__icon--TransitionDuration: var(--pf-v6-c-button--hover__icon--TransitionDuration);
658
+ --pf-v6-c-button__icon--TransitionProperty: var(--pf-v6-c-button--hover__icon--TransitionProperty);
659
+ --pf-v6-c-button__icon--Rotate: var(--pf-v6-c-button--hover__icon--Rotate);
587
660
  text-decoration-line: var(--pf-v6-c-button--hover--TextDecorationLine);
588
661
  text-decoration-style: var(--pf-v6-c-button--hover--TextDecorationStyle);
589
662
  text-decoration-color: var(--pf-v6-c-button--hover--TextDecorationColor);
@@ -646,6 +719,12 @@ span.pf-v6-c-button.pf-m-link.pf-m-inline {
646
719
  margin-inline-start: var(--pf-v6-c-button__icon--MarginInlineStart);
647
720
  margin-inline-end: var(--pf-v6-c-button__icon--MarginInlineEnd);
648
721
  color: var(--pf-v6-c-button__icon--Color);
722
+ transition-delay: var(--pf-v6-c-button__icon--TransitionDelay);
723
+ transition-timing-function: var(--pf-v6-c-button__icon--TransitionTimingFunction);
724
+ transition-duration: var(--pf-v6-c-button__icon--TransitionDuration);
725
+ transition-property: var(--pf-v6-c-button__icon--TransitionProperty);
726
+ rotate: var(--pf-v6-c-button__icon--Rotate);
727
+ scale: var(--pf-v6-c-button__icon--Scale);
649
728
  }
650
729
  .pf-v6-c-button__icon.pf-m-start {
651
730
  --pf-v6-c-button__icon--MarginInlineEnd: var(--pf-v6-c-button__icon--m-start--MarginInlineEnd);
@@ -690,6 +769,30 @@ span.pf-v6-c-button.pf-m-link.pf-m-inline {
690
769
  align-items: center;
691
770
  }
692
771
 
772
+ .pf-v6-c-button--hamburger-icon path {
773
+ fill: none;
774
+ stroke: currentcolor;
775
+ stroke-linecap: round;
776
+ stroke-linejoin: round;
777
+ transition: d var(--pf-v6-c-button--hamburger-icon--TransitionDuration) var(--pf-v6-c-button--hamburger-icon--TransitionTimingFunction);
778
+ }
779
+
780
+ .pf-v6-c-button--hamburger-icon--top {
781
+ d: var(--pf-v6-c-button--hamburger-icon--top--path);
782
+ }
783
+
784
+ .pf-v6-c-button--hamburger-icon--middle {
785
+ d: var(--pf-v6-c-button--hamburger-icon--middle--path);
786
+ }
787
+
788
+ .pf-v6-c-button--hamburger-icon--arrow {
789
+ d: var(--pf-v6-c-button--hamburger-icon--arrow--path);
790
+ }
791
+
792
+ .pf-v6-c-button--hamburger-icon--bottom {
793
+ d: var(--pf-v6-c-button--hamburger-icon--bottom--path);
794
+ }
795
+
693
796
  @keyframes pf-v6-c-button-icon-notify {
694
797
  33% {
695
798
  transform: rotate(30deg);
@@ -21,6 +21,7 @@
21
21
  --#{$button}--TextDecorationLine: none;
22
22
  --#{$button}--TextDecorationStyle: none;
23
23
  --#{$button}--TextDecorationColor: currentcolor;
24
+ --#{$button}--TransitionDelay: 0s;
24
25
  --#{$button}--TransitionDuration: var(--pf-t--global--motion--duration--fade--default);
25
26
  --#{$button}--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
26
27
  --#{$button}--TransitionProperty: color, background, border-width, border-color;
@@ -271,7 +272,7 @@
271
272
  --#{$button}--disabled--BorderColor: transparent;
272
273
  --#{$button}--disabled__icon--Color: var(--pf-t--global--icon--color--on-disabled);
273
274
 
274
- // Icons
275
+ // Icon
275
276
  --#{$button}__icon--Color: var(--pf-t--global--icon--color--regular);
276
277
  --#{$button}--hover__icon--Color: var(--pf-t--global--icon--color--regular);
277
278
  --#{$button}--m-clicked__icon--Color: var(--pf-t--global--icon--color--regular);
@@ -281,6 +282,16 @@
281
282
  --#{$button}__icon--m-end--MarginInlineStart: 0;
282
283
  --#{$button}--m-notify__icon--AnimationDuration--notify: var(--pf-t--global--motion--duration--3xl);
283
284
  --#{$button}--m-notify__icon--AnimationTimingFunction--notify: var(--pf-t--global--motion--timing-function--default);
285
+ --#{$button}__icon--TransitionDelay: 0s;
286
+ --#{$button}__icon--TransitionTimingFunction: auto;
287
+ --#{$button}__icon--TransitionDuration: 0s;
288
+ --#{$button}__icon--TransitionProperty: none;
289
+ --#{$button}__icon--Rotate: 0deg;
290
+ --#{$button}__icon--Scale: 1;
291
+ --#{$button}--hover__icon--TransitionTimingFunction: auto;
292
+ --#{$button}--hover__icon--TransitionDuration: 0s;
293
+ --#{$button}--hover__icon--TransitionProperty: none;
294
+ --#{$button}--hover__icon--Rotate: 0deg;
284
295
 
285
296
  // Favorite button
286
297
  --#{$button}--m-favorite__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
@@ -311,12 +322,35 @@
311
322
  --#{$button}--m-in-progress--m-plain__progress--InsetInlineStart: 50%;
312
323
  --#{$button}--m-in-progress--m-plain__progress--TranslateX: -50%;
313
324
 
325
+ // Settings
326
+ --#{$button}--m-settings__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
327
+ --#{$button}--m-settings__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
328
+ --#{$button}--m-settings--hover__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
329
+ --#{$button}--m-settings--hover__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
330
+ --#{$button}--m-settings--hover__icon--Rotate: 60deg;
331
+
314
332
  // Count
315
333
  --#{$button}--m-primary__c-badge--BorderColor: var(--pf-t--global--border--color--default);
316
334
 
317
335
  // Block
318
336
  --#{$button}--m-block--Display: flex;
319
337
  --#{$button}--m-block--Width: 100%;
338
+
339
+ // Hamburger
340
+ --#{$button}--hamburger-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
341
+ --#{$button}--hamburger-icon--TransitionDuration: var(--pf-t--global--motion--duration--md);
342
+ --#{$button}--hamburger-icon--top--path--base: path("M1,1 L9,1");
343
+ --#{$button}--hamburger-icon--middle--path--base: path("M1,5 L9,5");
344
+ --#{$button}--hamburger-icon--arrow--path--base: path("M1,5 L1,5 L1,5");
345
+ --#{$button}--hamburger-icon--bottom--path--base: path("M9,9 L1,9");
346
+ --#{$button}--hamburger-icon--top--path: var(--#{$button}--hamburger-icon--top--path--base);
347
+ --#{$button}--hamburger-icon--middle--path: var(--#{$button}--hamburger-icon--middle--path--base);
348
+ --#{$button}--hamburger-icon--arrow--path: var(--#{$button}--hamburger-icon--arrow--path--base);
349
+ --#{$button}--hamburger-icon--bottom--path: var(--#{$button}--hamburger-icon--bottom--path--base);
350
+ --#{$button}--hamburger-icon--top--collapse--path: path("M5,1 L9,1");
351
+ --#{$button}--hamburger-icon--arrow--collapse--path: path("M3,7 L1,5 L3,3");
352
+ --#{$button}--hamburger-icon--bottom--collapse--path: path("M9,9 L5,9");
353
+ --#{$button}--m-hamburger__icon--m-expand--Scale: -1;
320
354
  }
321
355
 
322
356
  .#{$button} {
@@ -350,9 +384,11 @@
350
384
  border-start-end-radius: var(--#{$button}--BorderStartEndRadius, var(--#{$button}--BorderRadius));
351
385
  border-end-start-radius: var(--#{$button}--BorderEndStartRadius, var(--#{$button}--BorderRadius));
352
386
  border-end-end-radius: var(--#{$button}--BorderEndEndRadius, var(--#{$button}--BorderRadius));
387
+ transition-delay: var(--#{$button}--TransitionDelay);
353
388
  transition-timing-function: var(--#{$button}--TransitionTimingFunction);
354
389
  transition-duration: var(--#{$button}--TransitionDuration);
355
390
  transition-property: var(--#{$button}--TransitionProperty);
391
+ scale: var(--#{$button}--Scale, revert);
356
392
 
357
393
  &::after {
358
394
  position: absolute;
@@ -632,7 +668,7 @@
632
668
 
633
669
  &.pf-m-block {
634
670
  --#{$button}--Display: var(--#{$button}--m-block--Display);
635
-
671
+
636
672
  width: var(--#{$button}--m-block--Width);
637
673
  }
638
674
 
@@ -661,7 +697,9 @@
661
697
  // Favorite button when favorited
662
698
  &.pf-m-favorited {
663
699
  --#{$button}__icon--Color: var(--#{$button}--m-favorited__icon--Color);
700
+ --#{$button}--m-plain--m-no-padding__icon--Color: var(--#{$button}--m-favorited__icon--Color);
664
701
  --#{$button}--hover__icon--Color: var(--#{$button}--m-favorited--hover__icon--Color);
702
+ --#{$button}--m-plain--m-no-padding--hover__icon--Color: var(--#{$button}--m-favorited--hover__icon--Color);
665
703
  --#{$button}__icon--favorite--Opacity: var(--#{$button}--m-favorited__icon--favorite--Opacity);
666
704
  --#{$button}__icon--favorited--Opacity: var(--#{$button}--m-favorited__icon--favorited--Opacity);
667
705
  }
@@ -673,6 +711,33 @@
673
711
  animation-timing-function: var(--#{$button}--m-favorited__icon--AnimationTimingFunction);
674
712
  }
675
713
 
714
+ &.pf-m-settings {
715
+ --#{$button}__icon--TransitionProperty: rotate;
716
+ --#{$button}__icon--TransitionDuration: var(--#{$button}--m-settings__icon--TransitionDuration);
717
+ --#{$button}__icon--TransitionTimingFunction: var(--#{$button}--m-settings__icon--TransitionTimingFunction);
718
+ --#{$button}--hover__icon--TransitionProperty: rotate;
719
+ --#{$button}--hover__icon--TransitionDuration: var(--#{$button}--m-settings--hover__icon--TransitionDuration);
720
+ --#{$button}--hover__icon--TransitionTimingFunction: var(--#{$button}--m-settings--hover__icon--TransitionTimingFunction);
721
+ --#{$button}--hover__icon--Rotate: var(--#{$button}--m-settings--hover__icon--Rotate);
722
+ }
723
+
724
+ &.pf-m-hamburger {
725
+ --#{$button}__icon--TransitionDelay: var(--#{$button}--hamburger-icon--TransitionDuration);
726
+ --#{$button}__icon--TransitionDuration: 0s;
727
+ --#{$button}__icon--TransitionProperty: scale;
728
+ --#{$button}--hover__icon--TransitionDelay: var(--#{$button}--hamburger-icon--TransitionDuration);
729
+ --#{$button}--hover__icon--TransitionDuration: 0s;
730
+ --#{$button}--hover__icon--TransitionProperty: scale;
731
+
732
+ &.pf-m-expand {
733
+ @include pf-v6-hamburger;
734
+ }
735
+
736
+ &.pf-m-collapse {
737
+ @include pf-v6-hamburger($collapse: true);
738
+ }
739
+ }
740
+
676
741
  &:hover,
677
742
  &:focus {
678
743
  --#{$button}--Color: var(--#{$button}--hover--Color);
@@ -681,6 +746,10 @@
681
746
  --#{$button}--BorderWidth: var(--#{$button}--hover--BorderWidth);
682
747
  --#{$button}--m-plain--m-no-padding__icon--Color: var(--#{$button}--m-plain--m-no-padding--hover__icon--Color);
683
748
  --#{$button}__icon--Color: var(--#{$button}--hover__icon--Color);
749
+ --#{$button}__icon--TransitionTimingFunction: var(--#{$button}--hover__icon--TransitionTimingFunction);
750
+ --#{$button}__icon--TransitionDuration: var(--#{$button}--hover__icon--TransitionDuration);
751
+ --#{$button}__icon--TransitionProperty: var(--#{$button}--hover__icon--TransitionProperty);
752
+ --#{$button}__icon--Rotate: var(--#{$button}--hover__icon--Rotate);
684
753
 
685
754
  text-decoration-line: var(--#{$button}--hover--TextDecorationLine);
686
755
  text-decoration-style: var(--#{$button}--hover--TextDecorationStyle);
@@ -765,6 +834,12 @@
765
834
  margin-inline-start: var(--#{$button}__icon--MarginInlineStart);
766
835
  margin-inline-end: var(--#{$button}__icon--MarginInlineEnd);
767
836
  color: var(--#{$button}__icon--Color);
837
+ transition-delay: var(--#{$button}__icon--TransitionDelay);
838
+ transition-timing-function: var(--#{$button}__icon--TransitionTimingFunction);
839
+ transition-duration: var(--#{$button}__icon--TransitionDuration);
840
+ transition-property: var(--#{$button}__icon--TransitionProperty);
841
+ rotate: var(--#{$button}__icon--Rotate);
842
+ scale: var(--#{$button}__icon--Scale);
768
843
 
769
844
  &.pf-m-start {
770
845
  --#{$button}__icon--MarginInlineEnd: var(--#{$button}__icon--m-start--MarginInlineEnd);
@@ -815,6 +890,32 @@
815
890
  align-items: center;
816
891
  }
817
892
 
893
+ .#{$button}--hamburger-icon {
894
+ path {
895
+ fill: none;
896
+ stroke: currentcolor;
897
+ stroke-linecap: round;
898
+ stroke-linejoin: round;
899
+ transition: d var(--#{$button}--hamburger-icon--TransitionDuration) var(--#{$button}--hamburger-icon--TransitionTimingFunction);
900
+ }
901
+ }
902
+
903
+ .#{$button}--hamburger-icon--top {
904
+ d: var(--#{$button}--hamburger-icon--top--path);
905
+ }
906
+
907
+ .#{$button}--hamburger-icon--middle {
908
+ d: var(--#{$button}--hamburger-icon--middle--path);
909
+ }
910
+
911
+ .#{$button}--hamburger-icon--arrow {
912
+ d: var(--#{$button}--hamburger-icon--arrow--path);
913
+ }
914
+
915
+ .#{$button}--hamburger-icon--bottom {
916
+ d: var(--#{$button}--hamburger-icon--bottom--path);
917
+ }
918
+
818
919
  @keyframes #{$button}-icon-notify {
819
920
  33% {
820
921
  transform: rotate(30deg);
@@ -226,6 +226,22 @@
226
226
  --pf-v6-c-form-control__icon--m-status--Color: var(--pf-v6-c-form-control--m-error__icon--m-status--Color);
227
227
  --pf-v6-c-form-control--after--BorderWidth: var(--pf-v6-c-form-control--m-error--after--BorderWidth);
228
228
  }
229
+ @media (prefers-reduced-motion: no-preference) {
230
+ .pf-v6-c-form-control.pf-m-error {
231
+ translate: var(--pf-v6-global--danger-jiggle--TranslateX, 0);
232
+ animation-name: pf-v6-global-danger-jiggle-motion;
233
+ animation-duration: var(--pf-v6-global--danger-jiggle--AnimationDuration--Transform);
234
+ animation-timing-function: var(--pf-v6-global--danger-jiggle--AnimationTimingFunction--Transform);
235
+ animation-fill-mode: both;
236
+ }
237
+ }
238
+ .pf-v6-c-form-control.pf-m-error .pf-v6-c-form-control__icon.pf-m-status {
239
+ --pf-v6-c-form-control--TransitionDuration--Opacity: var(--pf-t--global--motion--duration--fade--default);
240
+ --pf-v6-c-form-control--TransitionTimingFunction--Opacity: var(--pf-t--global--motion--timing-function--default);
241
+ animation-name: pf-v6-global-fade-in;
242
+ animation-duration: var(--pf-v6-c-form-control--TransitionDuration--Opacity);
243
+ animation-timing-function: var(--pf-v6-c-form-control--TransitionTimingFunction--Opacity);
244
+ }
229
245
  .pf-v6-c-form-control.pf-m-error > textarea {
230
246
  padding-inline-end: var(--pf-v6-c-form-control--m-error--PaddingInlineEnd, var(--pf-v6-c-form-control__textarea--m-error--PaddingInlineEnd));
231
247
  }
@@ -290,6 +290,14 @@
290
290
  --#{$form-control}__icon--m-status--Color: var(--#{$form-control}--m-error__icon--m-status--Color);
291
291
  --#{$form-control}--after--BorderWidth: var(--#{$form-control}--m-error--after--BorderWidth);
292
292
 
293
+ @media (prefers-reduced-motion: no-preference) {
294
+ @include pf-v6-animate-danger-jiggle;
295
+ }
296
+
297
+ .#{$form-control}__icon.pf-m-status {
298
+ @include pf-v6-fade-default(#{$form-control});
299
+ }
300
+
293
301
  > textarea {
294
302
  padding-inline-end: var(--#{$form-control}--m-error--PaddingInlineEnd, var(--#{$form-control}__textarea--m-error--PaddingInlineEnd));
295
303
  }
@@ -438,6 +446,7 @@
438
446
 
439
447
  &.pf-m-status {
440
448
  --#{$form-control}__icon--Color: var(--#{$form-control}__icon--m-status--Color);
449
+
441
450
  }
442
451
  }
443
452
 
@@ -33,6 +33,14 @@
33
33
  --pf-v6-c-menu-toggle--disabled--BackgroundColor: var(--pf-t--global--background--color--disabled--default);
34
34
  --pf-v6-c-menu-toggle__icon--MinHeight: calc(var(--pf-v6-c-menu-toggle--FontSize) * var(--pf-v6-c-menu-toggle--LineHeight));
35
35
  --pf-v6-c-menu-toggle__icon--Color: var(--pf-t--global--icon--color--regular);
36
+ --pf-v6-c-menu-toggle__icon--TransitionDelay: 0s;
37
+ --pf-v6-c-menu-toggle__icon--TransitionDuration: 0s;
38
+ --pf-v6-c-menu-toggle__icon--TransitionProperty: none;
39
+ --pf-v6-c-menu-toggle--hover__icon--TransitionDelay: 0s;
40
+ --pf-v6-c-menu-toggle--hover__icon--TransitionDuration: 0s;
41
+ --pf-v6-c-menu-toggle--hover__icon--TransitionProperty: none;
42
+ --pf-v6-c-menu-toggle__icon--Rotate: 0deg;
43
+ --pf-v6-c-menu-toggle--hover__icon--Rotate: 0deg;
36
44
  --pf-v6-c-menu-toggle__toggle-icon--MinHeight: calc(var(--pf-v6-c-menu-toggle--FontSize) * var(--pf-v6-c-menu-toggle--LineHeight));
37
45
  --pf-v6-c-menu-toggle__toggle-icon--Color: var(--pf-t--global--icon--color--regular);
38
46
  --pf-v6-c-menu-toggle--m-primary--PaddingInlineStart: var(--pf-t--global--spacer--action--horizontal--default);
@@ -130,6 +138,11 @@
130
138
  --pf-v6-c-menu-toggle--m-danger--AnimationTimingFunction--Transform: var(--pf-t--global--motion--timing-function--default);
131
139
  --pf-v6-c-menu-toggle--m-placeholder--Color: var(--pf-t--global--text--color--placeholder);
132
140
  --pf-v6-c-menu-toggle__controls--Gap: var(--pf-t--global--spacer--sm);
141
+ --pf-v6-c-menu-toggle--m-settings__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
142
+ --pf-v6-c-menu-toggle--m-settings__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
143
+ --pf-v6-c-menu-toggle--m-settings--hover__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
144
+ --pf-v6-c-menu-toggle--m-settings--hover__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
145
+ --pf-v6-c-menu-toggle--m-settings--hover__icon--Rotate: 60deg;
133
146
  }
134
147
 
135
148
  .pf-v6-c-menu-toggle {
@@ -243,6 +256,10 @@
243
256
  --pf-v6-c-menu-toggle--BorderWidth: var(--pf-v6-c-menu-toggle--hover--BorderWidth);
244
257
  --pf-v6-c-menu-toggle--BorderColor: var(--pf-v6-c-menu-toggle--hover--BorderColor);
245
258
  --pf-v6-c-menu-toggle__toggle-icon--Color: var(--pf-v6-c-menu-toggle--hover__toggle-icon--Color);
259
+ --pf-v6-c-menu-toggle__icon--TransitionDelay: var(--pf-v6-c-menu-toggle--hover__icon--TransitionDelay);
260
+ --pf-v6-c-menu-toggle__icon--TransitionDuration: var(--pf-v6-c-menu-toggle--hover__icon--TransitionDuration);
261
+ --pf-v6-c-menu-toggle__icon--TransitionProperty: var(--pf-v6-c-menu-toggle--hover__icon--TransitionProperty);
262
+ --pf-v6-c-menu-toggle__icon--Rotate: var(--pf-v6-c-menu-toggle--hover__icon--Rotate);
246
263
  }
247
264
  .pf-v6-c-menu-toggle:is(.pf-m-expanded, [aria-expanded=true]) {
248
265
  --pf-v6-c-menu-toggle--Color: var(--pf-v6-c-menu-toggle--expanded--Color);
@@ -298,6 +315,15 @@
298
315
  opacity: 1;
299
316
  }
300
317
  }
318
+ .pf-v6-c-menu-toggle.pf-m-settings {
319
+ --pf-v6-c-menu-toggle__icon--TransitionProperty: rotate;
320
+ --pf-v6-c-menu-toggle__icon--TransitionDuration: var(--pf-v6-c-menu-toggle--m-settings__icon--TransitionDuration);
321
+ --pf-v6-c-menu-toggle__icon--TransitionTimingFunction: var(--pf-v6-c-menu-toggle--m-settings__icon--TransitionTimingFunction);
322
+ --pf-v6-c-menu-toggle--hover__icon--TransitionProperty: rotate;
323
+ --pf-v6-c-menu-toggle--hover__icon--TransitionDuration: var(--pf-v6-c-menu-toggle--m-settings--hover__icon--TransitionDuration);
324
+ --pf-v6-c-menu-toggle--hover__icon--TransitionTimingFunction: var(--pf-v6-c-menu-toggle--m-settings--hover__icon--TransitionTimingFunction);
325
+ --pf-v6-c-menu-toggle--hover__icon--Rotate: var(--pf-v6-c-menu-toggle--m-settings--hover__icon--Rotate);
326
+ }
301
327
  .pf-v6-c-menu-toggle.pf-m-placeholder {
302
328
  --pf-v6-c-menu-toggle--Color: var(--pf-v6-c-menu-toggle--m-placeholder--Color);
303
329
  }
@@ -459,6 +485,10 @@
459
485
 
460
486
  .pf-v6-c-menu-toggle__icon {
461
487
  flex-shrink: 0;
488
+ transition-delay: var(--pf-v6-c-menu-toggle__icon--TransitionDelay);
489
+ transition-duration: var(--pf-v6-c-menu-toggle__icon--TransitionDuration);
490
+ transition-property: var(--pf-v6-c-menu-toggle__icon--TransitionProperty);
491
+ rotate: var(--pf-v6-c-menu-toggle__icon--Rotate);
462
492
  }
463
493
  .pf-v6-c-menu-toggle__icon :where(picture, img) {
464
494
  vertical-align: middle;
@@ -43,6 +43,14 @@
43
43
  // * Menu toggle icon
44
44
  --#{$menu-toggle}__icon--MinHeight: calc(var(--#{$menu-toggle}--FontSize) * var(--#{$menu-toggle}--LineHeight));
45
45
  --#{$menu-toggle}__icon--Color: var(--pf-t--global--icon--color--regular);
46
+ --#{$menu-toggle}__icon--TransitionDelay: 0s;
47
+ --#{$menu-toggle}__icon--TransitionDuration: 0s;
48
+ --#{$menu-toggle}__icon--TransitionProperty: none;
49
+ --#{$menu-toggle}--hover__icon--TransitionDelay: 0s;
50
+ --#{$menu-toggle}--hover__icon--TransitionDuration: 0s;
51
+ --#{$menu-toggle}--hover__icon--TransitionProperty: none;
52
+ --#{$menu-toggle}__icon--Rotate: 0deg;
53
+ --#{$menu-toggle}--hover__icon--Rotate: 0deg;
46
54
 
47
55
  // * Menu toggle toggle icon
48
56
  --#{$menu-toggle}__toggle-icon--MinHeight: calc(var(--#{$menu-toggle}--FontSize) * var(--#{$menu-toggle}--LineHeight));
@@ -174,6 +182,13 @@
174
182
 
175
183
  // Controls
176
184
  --#{$menu-toggle}__controls--Gap: var(--pf-t--global--spacer--sm);
185
+
186
+ // Settings
187
+ --#{$menu-toggle}--m-settings__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
188
+ --#{$menu-toggle}--m-settings__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--accelerate);
189
+ --#{$menu-toggle}--m-settings--hover__icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--long);
190
+ --#{$menu-toggle}--m-settings--hover__icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
191
+ --#{$menu-toggle}--m-settings--hover__icon--Rotate: 60deg;
177
192
  }
178
193
 
179
194
  .#{$menu-toggle} {
@@ -299,6 +314,10 @@
299
314
  --#{$menu-toggle}--BorderWidth: var(--#{$menu-toggle}--hover--BorderWidth);
300
315
  --#{$menu-toggle}--BorderColor: var(--#{$menu-toggle}--hover--BorderColor);
301
316
  --#{$menu-toggle}__toggle-icon--Color: var(--#{$menu-toggle}--hover__toggle-icon--Color);
317
+ --#{$menu-toggle}__icon--TransitionDelay: var(--#{$menu-toggle}--hover__icon--TransitionDelay);
318
+ --#{$menu-toggle}__icon--TransitionDuration: var(--#{$menu-toggle}--hover__icon--TransitionDuration);
319
+ --#{$menu-toggle}__icon--TransitionProperty: var(--#{$menu-toggle}--hover__icon--TransitionProperty);
320
+ --#{$menu-toggle}__icon--Rotate: var(--#{$menu-toggle}--hover__icon--Rotate);
302
321
  }
303
322
 
304
323
  &:is(.pf-m-expanded, [aria-expanded="true"]) {
@@ -369,6 +388,16 @@
369
388
  }
370
389
  }
371
390
 
391
+ &.pf-m-settings {
392
+ --#{$menu-toggle}__icon--TransitionProperty: rotate;
393
+ --#{$menu-toggle}__icon--TransitionDuration: var(--#{$menu-toggle}--m-settings__icon--TransitionDuration);
394
+ --#{$menu-toggle}__icon--TransitionTimingFunction: var(--#{$menu-toggle}--m-settings__icon--TransitionTimingFunction);
395
+ --#{$menu-toggle}--hover__icon--TransitionProperty: rotate;
396
+ --#{$menu-toggle}--hover__icon--TransitionDuration: var(--#{$menu-toggle}--m-settings--hover__icon--TransitionDuration);
397
+ --#{$menu-toggle}--hover__icon--TransitionTimingFunction: var(--#{$menu-toggle}--m-settings--hover__icon--TransitionTimingFunction);
398
+ --#{$menu-toggle}--hover__icon--Rotate: var(--#{$menu-toggle}--m-settings--hover__icon--Rotate);
399
+ }
400
+
372
401
  &.pf-m-placeholder {
373
402
  --#{$menu-toggle}--Color: var(--#{$menu-toggle}--m-placeholder--Color);
374
403
  }
@@ -574,6 +603,10 @@
574
603
 
575
604
  .#{$menu-toggle}__icon {
576
605
  flex-shrink: 0;
606
+ transition-delay: var(--#{$menu-toggle}__icon--TransitionDelay);
607
+ transition-duration: var(--#{$menu-toggle}__icon--TransitionDuration);
608
+ transition-property: var(--#{$menu-toggle}__icon--TransitionProperty);
609
+ rotate: var(--#{$menu-toggle}__icon--Rotate);
577
610
 
578
611
  @at-root .#{$menu-toggle}:not(.pf-m-plain) & {
579
612
  @extend %pf-v6-menu-toggle__icon--MarginBlock;