@patternfly/patternfly 6.3.0-prerelease.5 → 6.3.0-prerelease.51

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 (129) hide show
  1. package/README.md +8 -6
  2. package/assets/images/icon-help.hbs +3 -0
  3. package/assets/images/icon-outlined-star.hbs +3 -0
  4. package/assets/images/icon-star.hbs +3 -0
  5. package/base/normalize.scss +4 -0
  6. package/base/patternfly-common.css +46 -11
  7. package/base/patternfly-common.scss +58 -13
  8. package/components/Accordion/accordion.css +72 -3
  9. package/components/Accordion/accordion.scss +78 -6
  10. package/components/Alert/alert-group.css +52 -31
  11. package/components/Alert/alert-group.scss +77 -46
  12. package/components/Button/button.css +155 -6
  13. package/components/Button/button.scss +161 -8
  14. package/components/Card/card.css +0 -1
  15. package/components/Card/card.scss +0 -1
  16. package/components/DataList/data-list.css +2 -2
  17. package/components/DataList/data-list.scss +2 -2
  18. package/components/DualListSelector/dual-list-selector.css +36 -0
  19. package/components/DualListSelector/dual-list-selector.scss +43 -0
  20. package/components/ExpandableSection/expandable-section.css +63 -1
  21. package/components/ExpandableSection/expandable-section.scss +76 -2
  22. package/components/FileUpload/file-upload.css +3 -3
  23. package/components/FileUpload/file-upload.scss +3 -3
  24. package/components/Form/form.css +40 -1
  25. package/components/Form/form.scss +47 -1
  26. package/components/FormControl/form-control.css +16 -0
  27. package/components/FormControl/form-control.scss +9 -0
  28. package/components/InputGroup/input-group.css +80 -0
  29. package/components/InputGroup/input-group.scss +95 -0
  30. package/components/Menu/menu.css +24 -4
  31. package/components/Menu/menu.scss +20 -5
  32. package/components/MenuToggle/menu-toggle.css +38 -4
  33. package/components/MenuToggle/menu-toggle.scss +48 -3
  34. package/components/Nav/nav.css +22 -8
  35. package/components/Nav/nav.scss +22 -9
  36. package/components/Page/page.css +66 -6
  37. package/components/Page/page.scss +48 -5
  38. package/components/Progress/progress.css +16 -0
  39. package/components/Progress/progress.scss +11 -1
  40. package/components/ProgressStepper/progress-stepper.scss +1 -0
  41. package/components/Skeleton/skeleton.css +22 -2
  42. package/components/Skeleton/skeleton.scss +25 -3
  43. package/components/Spinner/spinner.css +5 -0
  44. package/components/Spinner/spinner.scss +6 -0
  45. package/components/Table/table-grid.css +51 -5
  46. package/components/Table/table-grid.scss +22 -1
  47. package/components/Table/table.css +95 -2
  48. package/components/Table/table.scss +138 -3
  49. package/components/Tabs/tabs.css +25 -15
  50. package/components/Tabs/tabs.scss +26 -13
  51. package/components/TextInputGroup/text-input-group.css +23 -0
  52. package/components/TextInputGroup/text-input-group.scss +16 -1
  53. package/components/Timestamp/timestamp.css +4 -0
  54. package/components/Timestamp/timestamp.scss +7 -0
  55. package/components/TreeView/tree-view.css +39 -0
  56. package/components/TreeView/tree-view.scss +42 -2
  57. package/components/Truncate/truncate.css +1 -0
  58. package/components/Truncate/truncate.scss +3 -0
  59. package/components/Wizard/wizard.css +11 -5
  60. package/components/Wizard/wizard.scss +13 -5
  61. package/components/_index.css +961 -99
  62. package/docs/components/Breadcrumb/examples/Breadcrumb.md +1 -1
  63. package/docs/components/Button/examples/Button.md +161 -6
  64. package/docs/components/Card/examples/Card.md +8 -8
  65. package/docs/components/ClipboardCopy/examples/ClipboardCopy.md +24 -29
  66. package/docs/components/CodeBlock/examples/CodeBlock.md +11 -11
  67. package/docs/components/CodeEditor/examples/CodeEditor.md +29 -5
  68. package/docs/components/DataList/examples/DataList.md +23 -23
  69. package/docs/components/DescriptionList/examples/DescriptionList.md +78 -22
  70. package/docs/components/DualListSelector/examples/DualListSelector.md +534 -16
  71. package/docs/components/EmptyState/examples/EmptyState.md +6 -6
  72. package/docs/components/ExpandableSection/examples/ExpandableSection.md +32 -21
  73. package/docs/components/Form/examples/Form.md +1179 -114
  74. package/docs/components/Hint/examples/Hint.md +3 -3
  75. package/docs/components/InlineEdit/examples/InlineEdit.md +2 -6
  76. package/docs/components/InputGroup/examples/InputGroup.md +5 -1
  77. package/docs/components/JumpLinks/examples/JumpLinks.md +1 -1
  78. package/docs/components/Label/examples/Label.md +2 -2
  79. package/docs/components/Masthead/examples/masthead.md +90 -12
  80. package/docs/components/Menu/examples/Menu.md +122 -6
  81. package/docs/components/MenuToggle/examples/MenuToggle.md +93 -55
  82. package/docs/components/ModalBox/examples/ModalBox.md +13 -1
  83. package/docs/components/MultipleFileUpload/examples/MultipleFileUpload.md +2 -10
  84. package/docs/components/OverflowMenu/examples/overflow-menu.md +5 -5
  85. package/docs/components/Page/examples/Page.md +148 -14
  86. package/docs/components/Pagination/examples/Pagination.md +12 -12
  87. package/docs/components/Popover/examples/Popover.md +0 -4
  88. package/docs/components/ProgressStepper/examples/ProgressStepper.md +32 -6
  89. package/docs/components/Skeleton/examples/Skeleton.md +21 -7
  90. package/docs/components/Slider/examples/Slider.md +2 -2
  91. package/docs/components/Spinner/examples/Spinner.md +10 -0
  92. package/docs/components/Table/examples/Table.md +9462 -6183
  93. package/docs/components/Tabs/examples/Tabs.md +1214 -6729
  94. package/docs/components/TextInputGroup/examples/TextInputGroup.md +168 -49
  95. package/docs/components/Title/examples/Title.md +8 -8
  96. package/docs/components/Toolbar/examples/Toolbar.md +7 -7
  97. package/docs/components/Wizard/examples/Wizard.md +583 -0
  98. package/docs/demos/AboutModal/examples/AboutModal.md +22 -3
  99. package/docs/demos/Alert/examples/Alert.md +66 -9
  100. package/docs/demos/BackToTop/examples/BackToTop.md +22 -3
  101. package/docs/demos/Banner/examples/Banner.md +47 -6
  102. package/docs/demos/Card/examples/Card.md +13 -67
  103. package/docs/demos/CardView/examples/CardView.md +24 -5
  104. package/docs/demos/Dashboard/examples/Dashboard.md +29 -7
  105. package/docs/demos/DataList/examples/DataList.md +100 -24
  106. package/docs/demos/DescriptionList/examples/DescriptionList.md +79 -50
  107. package/docs/demos/Drawer/examples/Drawer.md +110 -53
  108. package/docs/demos/Form/examples/BasicForms.md +142 -22
  109. package/docs/demos/JumpLinks/examples/JumpLinks.md +132 -18
  110. package/docs/demos/Masthead/examples/Masthead.md +171 -19
  111. package/docs/demos/Modal/examples/Modal.md +171 -21
  112. package/docs/demos/Nav/examples/Nav.md +113 -18
  113. package/docs/demos/NotificationDrawer/examples/NotificationDrawer.md +110 -15
  114. package/docs/demos/Page/examples/Page.md +661 -40
  115. package/docs/demos/PasswordGenerator/examples/PasswordGenerator.md +13 -1
  116. package/docs/demos/PrimaryDetail/examples/PrimaryDetail.md +160 -103
  117. package/docs/demos/Skeleton/examples/Skeleton.md +25 -4
  118. package/docs/demos/Table/examples/Table.md +475 -157
  119. package/docs/demos/Tabs/examples/Tabs.md +139 -594
  120. package/docs/demos/Toolbar/examples/Toolbar.md +72 -34
  121. package/docs/demos/Wizard/examples/Wizard.md +198 -27
  122. package/package.json +9 -6
  123. package/patternfly-base-no-globals.css +45 -11
  124. package/patternfly-base.css +49 -11
  125. package/patternfly-no-globals.css +1006 -110
  126. package/patternfly.css +1010 -110
  127. package/patternfly.min.css +1 -1
  128. package/patternfly.min.css.map +1 -1
  129. package/sass-utilities/mixins.scss +54 -0
@@ -21,7 +21,8 @@
21
21
  --#{$table}__thead--cell--FontWeight: var(--pf-t--global--font--weight--body--bold);
22
22
 
23
23
  // * Table thead toggle
24
- --#{$table}__thead__toggle--PaddingBlockEnd: var(--pf-t--global--spacer--xs);
24
+ --#{$table}__thead__toggle--PaddingBlockStart: var(--#{$table}--cell--Padding--base); // TODO - remove thead toggle custom padding in breaking change
25
+ --#{$table}__thead__toggle--PaddingBlockEnd: var(--#{$table}--cell--Padding--base); // TODO - remove thead toggle custom padding in breaking change
25
26
 
26
27
  // * Table body cell
27
28
  --#{$table}__tbody--cell--PaddingBlockStart: var(--#{$table}--cell--Padding--base);
@@ -118,6 +119,23 @@
118
119
  --#{$table}__action--PaddingInlineStart: var(--pf-t--global--spacer--sm);
119
120
  --#{$table}__action--PaddingInlineEnd: var(--pf-t--global--spacer--sm);
120
121
 
122
+ // * Table expandable row
123
+ --#{$table}__expandable-row--TransitionDuration--expand--slide: 0s;
124
+ --#{$table}__expandable-row--TransitionDuration--expand--fade: var(--pf-t--global--motion--duration--fade--default);
125
+ --#{$table}__expandable-row--TransitionDuration--collapse--slide: 0s;
126
+ --#{$table}__expandable-row--TransitionDuration--collapse--fade: var(--pf-t--global--motion--duration--fade--short);
127
+ --#{$table}__expandable-row--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
128
+ --#{$table}__expandable-row--Opacity: 0;
129
+ --#{$table}__tbody--m-expanded__expandable-row--Opacity: 1;
130
+ --#{$table}__expandable-row--TranslateY: 0;
131
+ --#{$table}__tbody--m-expanded__expandable-row--TranslateY: 0;
132
+
133
+ @media screen and (prefers-reduced-motion: no-preference) {
134
+ --#{$table}__expandable-row--TransitionDuration--expand--slide: var(--pf-t--global--motion--duration--fade--default);
135
+ --#{$table}__expandable-row--TransitionDuration--collapse--slide: var(--pf-t--global--motion--duration--fade--short);
136
+ --#{$table}__expandable-row--TranslateY: -.5rem;
137
+ }
138
+
121
139
  // * Table expandable row content
122
140
  --#{$table}__expandable-row-content--PaddingBlockStart: var(--pf-t--global--spacer--md);
123
141
  --#{$table}__expandable-row-content--PaddingBlockEnd: var(--pf-t--global--spacer--md);
@@ -179,6 +197,14 @@
179
197
  --#{$table}--m-compact--cell--PaddingBlockStart: var(--pf-t--global--spacer--sm);
180
198
  --#{$table}--m-compact--cell--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
181
199
 
200
+ // * Table cell with button
201
+ --#{$table}__td--m-action--PaddingBlockStart: var(--pf-t--global--spacer--sm);
202
+ --#{$table}__td--m-action--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
203
+
204
+ // * Table compact cell with button
205
+ --#{$table}--m-compact__td--m-action--PaddingBlockStart: var(--pf-t--global--spacer--xs);
206
+ --#{$table}--m-compact__td--m-action--PaddingBlockEnd: var(--pf-t--global--spacer--xs);
207
+
182
208
  // * Table compact action
183
209
  --#{$table}--m-compact__action--PaddingBlockStart: var(--pf-t--global--spacer--xs);
184
210
  --#{$table}--m-compact__action--PaddingBlockEnd: var(--pf-t--global--spacer--xs);
@@ -461,6 +487,11 @@
461
487
  // }
462
488
  // }
463
489
 
490
+ .#{$table}__td.pf-m-action {
491
+ --pf-v6-c-table--cell--PaddingBlockStart: var(--#{$table}__td--m-action--PaddingBlockStart);
492
+ --pf-v6-c-table--cell--PaddingBlockEnd: var(--#{$table}__td--m-action--PaddingBlockEnd);
493
+ }
494
+
464
495
  // - Table sort
465
496
  // set property here to increase specificity
466
497
  .#{$table}__sort {
@@ -562,6 +593,74 @@
562
593
  .#{$button} .#{$table}__sort-indicator {
563
594
  --#{$table}__sort-indicator--MarginInlineStart: 0;
564
595
  }
596
+
597
+ // stylelint-disable max-nesting-depth, selector-max-class
598
+ &.pf-m-animate-expand {
599
+ > .#{$table}__tbody {
600
+ &.pf-m-expanded {
601
+ > .#{$table}__control-row {
602
+ border-block-end: 0;
603
+ }
604
+ }
605
+
606
+ > .#{$table}__expandable-row {
607
+ display: var(--#{$table}__expandable-row--Display, revert);
608
+ visibility: hidden;
609
+ opacity: var(--#{$table}__expandable-row--Opacity);
610
+ transition-delay: 0s, 0s, var(--#{$table}__expandable-row--TransitionDuration--collapse--fade), var(--#{$table}__expandable-row--TransitionDuration--collapse--fade);
611
+ transition-timing-function: var(--#{$table}__expandable-row--TransitionTimingFunction);
612
+ transition-duration: var(--#{$table}__expandable-row--TransitionDuration--collapse--fade), var(--#{$table}__expandable-row--TransitionDuration--collapse--slide), 0s, 0s;
613
+ transition-property: opacity, translate, visibility, background-color;
614
+ translate: 0 var(--#{$table}__expandable-row--TranslateY);
615
+
616
+ &[hidden] {
617
+ display: var(--#{$table}__expandable-row--Display, revert);
618
+ }
619
+
620
+ &.pf-m-expanded {
621
+ visibility: visible;
622
+ opacity: var(--#{$table}__tbody--m-expanded__expandable-row--Opacity);
623
+ transition-delay: 0s;
624
+ transition-duration: var(--#{$table}__expandable-row--TransitionDuration--expand--fade), var(--#{$table}__expandable-row--TransitionDuration--expand--slide), 0s, 0s;
625
+ translate: 0 var(--#{$table}__tbody--m-expanded__expandable-row--TranslateY);
626
+
627
+ > :is(.#{$table}__td, .#{$table}__th) {
628
+ > .#{$table}__expandable-row-content {
629
+ max-height: 99999px;
630
+ }
631
+ }
632
+ }
633
+
634
+ &:not(.pf-m-expanded) {
635
+ > :is(.#{$table}__td, .#{$table}__th) {
636
+ &,
637
+ > .#{$table}__expandable-row-content {
638
+ padding: 0;
639
+ overflow: hidden;
640
+ transition-delay: var(--#{$table}__expandable-row--TransitionDuration--collapse--fade);
641
+ transition-property: padding, max-height, overflow;
642
+ }
643
+
644
+ > .#{$table}__expandable-row-content {
645
+ max-height: 0;
646
+ }
647
+ }
648
+ }
649
+ }
650
+
651
+ > .#{$table}__tr:has(~ .#{$table}__expandable-row) {
652
+ border-block-end: 0;
653
+ }
654
+
655
+ > .#{$table}__control-row.pf-m-no-animate-expand ~ .#{$table}__expandable-row {
656
+ --#{$table}__expandable-row--TransitionDuration--collapse--fade: 0s;
657
+ --#{$table}__expandable-row--TransitionDuration--collapse--slide: 0s;
658
+ --#{$table}__expandable-row--TransitionDuration--expand--fade: 0s;
659
+ --#{$table}__expandable-row--TransitionDuration--expand--slide: 0s;
660
+ }
661
+ }
662
+ }
663
+ // stylelint-enable
565
664
  }
566
665
 
567
666
  // - Table truncate - Table wrap - Table nowrap - Table fit content - Table wrap - Table break word
@@ -737,13 +836,20 @@
737
836
  --#{$table}--cell--PaddingInlineStart: var(--#{$table}__toggle--PaddingInlineStart);
738
837
  --#{$table}--cell--PaddingInlineEnd: var(--#{$table}__toggle--PaddingInlineEnd);
739
838
 
839
+ @at-root .#{$table}__thead & {
840
+ .#{$button} {
841
+ margin-block-start: calc(var(--#{$button}--PaddingBlockStart) * -1);
842
+ margin-block-end: calc(var(--#{$button}--PaddingBlockEnd) * -1);
843
+ line-height: 1lh; // set line-height instead of --LineHeight to avoid breaking the min-width calc for plain buttons
844
+ }
845
+ }
846
+
740
847
  .#{$button} {
741
848
  &.pf-m-expanded .#{$table}__toggle-icon {
742
849
  transform: rotate(var(--#{$table}__toggle--c-button--m-expanded__toggle-icon--Rotate));
743
850
  }
744
851
  }
745
852
 
746
-
747
853
  .#{$table}__toggle-icon {
748
854
  @include pf-v6-mirror-inline-on-rtl;
749
855
 
@@ -899,6 +1005,10 @@
899
1005
  .#{$table}__column-help-action {
900
1006
  align-self: last baseline;
901
1007
  margin-inline-start: var(--#{$table}__column-help--MarginInlineStart);
1008
+
1009
+ .#{$button} {
1010
+ line-height: 1lh; // set line-height instead of --LineHeight to avoid breaking the min-width calc for plain buttons
1011
+ }
902
1012
  }
903
1013
 
904
1014
  // - Table sort
@@ -954,13 +1064,21 @@
954
1064
  position: relative;
955
1065
  border-block-end: 0 solid transparent;
956
1066
 
957
- @at-root :not(.#{$table}__control-row) ~ .#{$table}__expandable-row {
1067
+ // remove top padding from expandable row cells by default
1068
+ :not(.#{$table}__control-row) ~ & {
958
1069
  > .#{$table}__th,
959
1070
  > .#{$table}__td {
960
1071
  padding-block-start: 0;
961
1072
  }
962
1073
  }
963
1074
 
1075
+ // add back padding for compound expandable
1076
+ .#{$table}__control-row ~ &.pf-m-expanded {
1077
+ > :is(.#{$table}__th, .#{$table}__td):not(.pf-m-no-padding) {
1078
+ padding-block-start: var(--#{$table}--cell--PaddingBlockStart);
1079
+ }
1080
+ }
1081
+
964
1082
  td:where(.#{$table}__td),
965
1083
  th:where(.#{$table}__th) {
966
1084
  &.pf-m-no-padding {
@@ -971,6 +1089,7 @@
971
1089
 
972
1090
  .#{$table}__expandable-row-content {
973
1091
  padding: 0;
1092
+ border-radius: 0;
974
1093
  }
975
1094
  }
976
1095
  }
@@ -983,6 +1102,10 @@
983
1102
  padding-inline-end: var(--#{$table}__expandable-row-content--PaddingInlineEnd);
984
1103
  background-color: var(--#{$table}__expandable-row-content--BackgroundColor);
985
1104
  border-radius: var(--#{$table}__expandable-row-content--BorderRadius);
1105
+
1106
+ &.pf-m-no-background {
1107
+ background-color: transparent;
1108
+ }
986
1109
  }
987
1110
 
988
1111
  // - Table expandable row content expanded
@@ -1031,6 +1154,11 @@
1031
1154
  --#{$table}--cell--PaddingBlockEnd: var(--#{$table}--m-compact__action--PaddingBlockEnd);
1032
1155
  }
1033
1156
 
1157
+ .#{$table}__td.pf-m-action {
1158
+ --pf-v6-c-table--cell--PaddingBlockStart: var(--#{$table}--m-compact__td--m-action--PaddingBlockStart);
1159
+ --pf-v6-c-table--cell--PaddingBlockEnd: var(--#{$table}--m-compact__td--m-action--PaddingBlockEnd);
1160
+ }
1161
+
1034
1162
  .#{$table}__icon {
1035
1163
  width: auto;
1036
1164
  min-width: 0;
@@ -1041,6 +1169,7 @@
1041
1169
  // - Table thead
1042
1170
  .#{$table}__thead {
1043
1171
  --#{$table}__tr--BorderBlockEndWidth: 0;
1172
+ --#{$table}__toggle--PaddingBlockStart: var(--#{$table}__thead__toggle--PaddingBlockStart);
1044
1173
  --#{$table}__toggle--PaddingBlockEnd: var(--#{$table}__thead__toggle--PaddingBlockEnd);
1045
1174
 
1046
1175
  vertical-align: bottom;
@@ -1086,6 +1215,12 @@
1086
1215
  .#{$table}__control-row {
1087
1216
  background-color: var(--#{$table}__control-row--BackgroundColor);
1088
1217
  border-block-end: var(--#{$table}__control-row--BorderBlockEndWidth) solid var(--#{$table}__control-row__tbody--BorderBlockEndColor);
1218
+
1219
+ // stylelint-disable max-nesting-depth, selector-max-class
1220
+ &.pf-m-expanded {
1221
+ border-block-end: 0; // TODO this is a dupe of the block above, consolidate in a breaking change
1222
+ }
1223
+ // stylelint-enable
1089
1224
  }
1090
1225
  }
1091
1226
  }
@@ -96,25 +96,28 @@
96
96
  --pf-v6-c-tabs__item--m-current__link--after--BorderColor: var(--pf-t--global--border--color--clicked);
97
97
  --pf-v6-c-tabs__item--m-current__link--after--BorderWidth: var(--pf-t--global--border--width--extra-strong);
98
98
  --pf-v6-c-tabs--link-accent--start: 0;
99
- --pf-v6-c-tabs--link-accent--length: auto;
99
+ --pf-v6-c-tabs--link-accent--length: 0;
100
100
  --pf-v6-c-tabs--link-accent--color: var(--pf-v6-c-tabs__item--m-current__link--after--BorderColor);
101
101
  --pf-v6-c-tabs--link-accent--border-size: var(--pf-v6-c-tabs__item--m-current__link--after--BorderWidth);
102
+ --pf-v6-c-tabs--link-accent--TransitionDuration: var(--pf-t--global--motion--duration--md);
103
+ --pf-v6-c-tabs--link-accent--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
102
104
  --pf-v6-c-tabs--link-accent--InsetBlockStart: auto;
103
105
  --pf-v6-c-tabs--link-accent--InsetBlockEnd: 0;
104
- --pf-v6-c-tabs--link-accent--InsetInlineStart: initial;
106
+ --pf-v6-c-tabs--link-accent--InsetInlineStart: 0;
105
107
  --pf-v6-c-tabs--link-accent--Width: initial;
106
108
  --pf-v6-c-tabs--link-accent--Height: 0;
107
109
  --pf-v6-c-tabs--link-accent--BorderBlockEndWidth: var(--pf-v6-c-tabs--link-accent--border-size);
108
110
  --pf-v6-c-tabs--link-accent--BorderInlineStartWidth: 0;
109
- --pf-v6-c-tabs--m-vertical--link-accent--InsetBlockStart: initial;
111
+ --pf-v6-c-tabs--link-accent--TranslateX: var(--pf-v6-c-tabs--link-accent--start);
112
+ --pf-v6-c-tabs--link-accent--TranslateY: 0;
113
+ --pf-v6-c-tabs--link-accent--TransformOrigin: 0 center;
114
+ --pf-v6-c-tabs--m-vertical--link-accent--InsetBlockStart: 0;
110
115
  --pf-v6-c-tabs--m-vertical--link-accent--InsetBlockEnd: auto;
111
- --pf-v6-c-tabs--m-vertical--link-accent--InsetInlineStart: 0;
112
- --pf-v6-c-tabs--m-vertical--link-accent--Width: 0;
113
- --pf-v6-c-tabs--m-vertical--link-accent--Height: initial;
114
116
  --pf-v6-c-tabs--m-vertical--link-accent--BorderBlockEndWidth: 0;
115
117
  --pf-v6-c-tabs--m-vertical--link-accent--BorderInlineStartWidth: var(--pf-v6-c-tabs--link-accent--border-size);
116
- --pf-v6-c-tabs--link-accent--TransitionDuration: var(--pf-t--global--motion--duration--md);
117
- --pf-v6-c-tabs--link-accent--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
118
+ --pf-v6-c-tabs--m-vertical--link-accent--TranslateX: 0;
119
+ --pf-v6-c-tabs--m-vertical--link-accent--TranslateY: var(--pf-v6-c-tabs--link-accent--start);
120
+ --pf-v6-c-tabs--m-vertical--link-accent--TransformOrigin: center 0;
118
121
  --pf-v6-c-tabs__scroll-button--PaddingBlockStart: var(--pf-t--global--spacer--sm);
119
122
  --pf-v6-c-tabs__scroll-button--PaddingBlockEnd: var(--pf-t--global--spacer--sm);
120
123
  --pf-v6-c-tabs__scroll-button--PaddingInlineStart: var(--pf-t--global--spacer--sm);
@@ -274,11 +277,13 @@
274
277
  --pf-v6-c-tabs__list--ScrollSnapTypeAxis: var(--pf-v6-c-tabs--m-vertical__list--ScrollSnapTypeAxis);
275
278
  --pf-v6-c-tabs--link-accent--InsetBlockStart: var(--pf-v6-c-tabs--m-vertical--link-accent--InsetBlockStart);
276
279
  --pf-v6-c-tabs--link-accent--InsetBlockEnd: var(--pf-v6-c-tabs--m-vertical--link-accent--InsetBlockEnd);
277
- --pf-v6-c-tabs--link-accent--InsetInlineStart: var(--pf-v6-c-tabs--m-vertical--link-accent--InsetInlineStart);
278
280
  --pf-v6-c-tabs--link-accent--Width: var(--pf-v6-c-tabs--m-vertical--link-accent--Width);
279
281
  --pf-v6-c-tabs--link-accent--Height: var(--pf-v6-c-tabs--m-vertical--link-accent--Height);
280
282
  --pf-v6-c-tabs--link-accent--BorderBlockEndWidth: var(--pf-v6-c-tabs--m-vertical--link-accent--BorderBlockEndWidth);
281
283
  --pf-v6-c-tabs--link-accent--BorderInlineStartWidth: var(--pf-v6-c-tabs--m-vertical--link-accent--BorderInlineStartWidth);
284
+ --pf-v6-c-tabs--link-accent--TranslateX: var(--pf-v6-c-tabs--m-vertical--link-accent--TranslateX);
285
+ --pf-v6-c-tabs--link-accent--TranslateY: var(--pf-v6-c-tabs--m-vertical--link-accent--TranslateY);
286
+ --pf-v6-c-tabs--link-accent--TransformOrigin: var(--pf-v6-c-tabs--m-vertical--link-accent--TransformOrigin);
282
287
  display: inline-flex;
283
288
  flex-direction: column;
284
289
  height: 100%;
@@ -855,15 +860,15 @@
855
860
  }
856
861
 
857
862
  @media (prefers-reduced-motion: no-preference) {
858
- .pf-v6-c-tabs:not(.pf-m-box) .pf-v6-c-tabs__link::after,
859
- .pf-v6-c-tabs:not(.pf-m-box) .pf-v6-c-tabs__item.pf-m-action::after {
863
+ .pf-v6-c-tabs.pf-m-animate-current:not(.pf-m-box) .pf-v6-c-tabs__link::after,
864
+ .pf-v6-c-tabs.pf-m-animate-current:not(.pf-m-box) .pf-v6-c-tabs__item.pf-m-action::after {
860
865
  content: revert;
861
866
  }
862
- .pf-v6-c-tabs:not(.pf-m-box) .pf-v6-c-tabs__list::after {
867
+ .pf-v6-c-tabs.pf-m-animate-current:not(.pf-m-box) .pf-v6-c-tabs__list::after {
863
868
  position: absolute;
864
- inset-block-start: var(--pf-v6-c-tabs--link-accent--InsetBlockStart, var(--pf-v6-c-tabs--link-accent--start));
869
+ inset-block-start: var(--pf-v6-c-tabs--link-accent--InsetBlockStart);
865
870
  inset-block-end: var(--pf-v6-c-tabs--link-accent--InsetBlockEnd);
866
- inset-inline-start: var(--pf-v6-c-tabs--link-accent--InsetInlineStart, var(--pf-v6-c-tabs--link-accent--start));
871
+ inset-inline-start: var(--pf-v6-c-tabs--link-accent--InsetInlineStart);
867
872
  width: var(--pf-v6-c-tabs--link-accent--Width, var(--pf-v6-c-tabs--link-accent--length));
868
873
  height: var(--pf-v6-c-tabs--link-accent--Height, var(--pf-v6-c-tabs--link-accent--length));
869
874
  content: "";
@@ -872,7 +877,12 @@
872
877
  border-inline-start-width: var(--pf-v6-c-tabs--link-accent--BorderInlineStartWidth);
873
878
  transition-timing-function: var(--pf-v6-c-tabs--link-accent--TransitionTimingFunction);
874
879
  transition-duration: var(--pf-v6-c-tabs--link-accent--TransitionDuration);
875
- transition-property: --pf-v6-c-tabs--link-accent--length, --pf-v6-c-tabs--link-accent--start, width;
880
+ transition-property: width, height, translate;
881
+ transform-origin: var(--pf-v6-c-tabs--link-accent--TransformOrigin);
882
+ translate: var(--pf-v6-c-tabs--link-accent--TranslateX) var(--pf-v6-c-tabs--link-accent--TranslateY);
883
+ }
884
+ :where(.pf-v6-m-dir-rtl, [dir=rtl]) .pf-v6-c-tabs.pf-m-animate-current:not(.pf-m-box) .pf-v6-c-tabs__list::after {
885
+ translate: calc(var(--pf-v6-c-tabs--link-accent--TranslateX) * var(--pf-v6-global--inverse--multiplier)) var(--pf-v6-c-tabs--link-accent--TranslateY);
876
886
  }
877
887
  .pf-v6-c-tabs.pf-m-initializing-accent {
878
888
  --pf-v6-c-tabs--link-accent--TransitionDuration: 0;
@@ -3,6 +3,7 @@
3
3
  $pf-v6-c-tabs--breakpoint-map: build-breakpoint-map("base", "sm", "md", "lg", "xl", "2xl");
4
4
  $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl");
5
5
 
6
+
6
7
  @property --#{$tabs}--link-accent--length {
7
8
  syntax: "<length>";
8
9
  inherits: true;
@@ -121,25 +122,28 @@ $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
121
122
 
122
123
  // Link accent
123
124
  --#{$tabs}--link-accent--start: 0; // needed to create react-token
124
- --#{$tabs}--link-accent--length: auto; // needed to create react-token
125
+ --#{$tabs}--link-accent--length: 0; // needed to create react-token
125
126
  --#{$tabs}--link-accent--color: var(--#{$tabs}__item--m-current__link--after--BorderColor);
126
127
  --#{$tabs}--link-accent--border-size: var(--#{$tabs}__item--m-current__link--after--BorderWidth);
128
+ --#{$tabs}--link-accent--TransitionDuration: var(--pf-t--global--motion--duration--md);
129
+ --#{$tabs}--link-accent--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
127
130
  --#{$tabs}--link-accent--InsetBlockStart: auto;
128
131
  --#{$tabs}--link-accent--InsetBlockEnd: 0;
129
- --#{$tabs}--link-accent--InsetInlineStart: initial;
132
+ --#{$tabs}--link-accent--InsetInlineStart: 0;
130
133
  --#{$tabs}--link-accent--Width: initial;
131
134
  --#{$tabs}--link-accent--Height: 0;
132
135
  --#{$tabs}--link-accent--BorderBlockEndWidth: var(--#{$tabs}--link-accent--border-size);
133
136
  --#{$tabs}--link-accent--BorderInlineStartWidth: 0;
134
- --#{$tabs}--m-vertical--link-accent--InsetBlockStart: initial;
137
+ --#{$tabs}--link-accent--TranslateX: var(--#{$tabs}--link-accent--start);
138
+ --#{$tabs}--link-accent--TranslateY: 0;
139
+ --#{$tabs}--link-accent--TransformOrigin: 0 center;
140
+ --#{$tabs}--m-vertical--link-accent--InsetBlockStart: 0;
135
141
  --#{$tabs}--m-vertical--link-accent--InsetBlockEnd: auto;
136
- --#{$tabs}--m-vertical--link-accent--InsetInlineStart: 0;
137
- --#{$tabs}--m-vertical--link-accent--Width: 0;
138
- --#{$tabs}--m-vertical--link-accent--Height: initial;
139
142
  --#{$tabs}--m-vertical--link-accent--BorderBlockEndWidth: 0;
140
143
  --#{$tabs}--m-vertical--link-accent--BorderInlineStartWidth: var(--#{$tabs}--link-accent--border-size);
141
- --#{$tabs}--link-accent--TransitionDuration: var(--pf-t--global--motion--duration--md);
142
- --#{$tabs}--link-accent--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--decelerate);
144
+ --#{$tabs}--m-vertical--link-accent--TranslateX: 0;
145
+ --#{$tabs}--m-vertical--link-accent--TranslateY: var(--#{$tabs}--link-accent--start);
146
+ --#{$tabs}--m-vertical--link-accent--TransformOrigin: center 0;
143
147
 
144
148
  // Scroll buttons
145
149
  --#{$tabs}__scroll-button--PaddingBlockStart: var(--pf-t--global--spacer--sm);
@@ -354,11 +358,13 @@ $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
354
358
  --#{$tabs}__list--ScrollSnapTypeAxis: var(--#{$tabs}--m-vertical__list--ScrollSnapTypeAxis);
355
359
  --#{$tabs}--link-accent--InsetBlockStart: var(--#{$tabs}--m-vertical--link-accent--InsetBlockStart);
356
360
  --#{$tabs}--link-accent--InsetBlockEnd: var(--#{$tabs}--m-vertical--link-accent--InsetBlockEnd);
357
- --#{$tabs}--link-accent--InsetInlineStart: var(--#{$tabs}--m-vertical--link-accent--InsetInlineStart);
358
361
  --#{$tabs}--link-accent--Width: var(--#{$tabs}--m-vertical--link-accent--Width);
359
362
  --#{$tabs}--link-accent--Height: var(--#{$tabs}--m-vertical--link-accent--Height);
360
363
  --#{$tabs}--link-accent--BorderBlockEndWidth: var(--#{$tabs}--m-vertical--link-accent--BorderBlockEndWidth);
361
364
  --#{$tabs}--link-accent--BorderInlineStartWidth: var(--#{$tabs}--m-vertical--link-accent--BorderInlineStartWidth);
365
+ --#{$tabs}--link-accent--TranslateX: var(--#{$tabs}--m-vertical--link-accent--TranslateX);
366
+ --#{$tabs}--link-accent--TranslateY: var(--#{$tabs}--m-vertical--link-accent--TranslateY);
367
+ --#{$tabs}--link-accent--TransformOrigin: var(--#{$tabs}--m-vertical--link-accent--TransformOrigin);
362
368
 
363
369
  display: inline-flex;
364
370
  flex-direction: column;
@@ -785,7 +791,7 @@ $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
785
791
  // stylelint-enable
786
792
 
787
793
  @media (prefers-reduced-motion: no-preference) {
788
- .#{$tabs}:not(.pf-m-box) {
794
+ .#{$tabs}.pf-m-animate-current:not(.pf-m-box) {
789
795
  .#{$tabs}__link,
790
796
  .#{$tabs}__item.pf-m-action {
791
797
  &::after {
@@ -795,9 +801,9 @@ $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
795
801
 
796
802
  .#{$tabs}__list::after {
797
803
  position: absolute;
798
- inset-block-start: var(--#{$tabs}--link-accent--InsetBlockStart, var(--#{$tabs}--link-accent--start));
804
+ inset-block-start: var(--#{$tabs}--link-accent--InsetBlockStart);
799
805
  inset-block-end: var(--#{$tabs}--link-accent--InsetBlockEnd);
800
- inset-inline-start: var(--#{$tabs}--link-accent--InsetInlineStart, var(--#{$tabs}--link-accent--start));
806
+ inset-inline-start: var(--#{$tabs}--link-accent--InsetInlineStart);
801
807
  width: var(--#{$tabs}--link-accent--Width, var(--#{$tabs}--link-accent--length));
802
808
  height: var(--#{$tabs}--link-accent--Height, var(--#{$tabs}--link-accent--length));
803
809
  content: "";
@@ -806,7 +812,14 @@ $pf-v6-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
806
812
  border-inline-start-width: var(--#{$tabs}--link-accent--BorderInlineStartWidth);
807
813
  transition-timing-function: var(--#{$tabs}--link-accent--TransitionTimingFunction);
808
814
  transition-duration: var(--#{$tabs}--link-accent--TransitionDuration);
809
- transition-property: --#{$tabs}--link-accent--length, --#{$tabs}--link-accent--start, width;
815
+ transition-property: width, height, translate;
816
+ transform-origin: var(--#{$tabs}--link-accent--TransformOrigin);
817
+
818
+ @include pf-v6-bidirectional-style(
819
+ $prop: translate,
820
+ $ltr-val: var(--#{$tabs}--link-accent--TranslateX) var(--#{$tabs}--link-accent--TranslateY),
821
+ $rtl-val: #{pf-v6-calc-inverse(var(--#{$tabs}--link-accent--TranslateX))} var(--#{$tabs}--link-accent--TranslateY)
822
+ );
810
823
  }
811
824
  }
812
825
 
@@ -31,6 +31,7 @@
31
31
  --pf-v6-c-text-input-group__text-input--PaddingInlineStart: var(--pf-t--global--spacer--control--horizontal--default);
32
32
  --pf-v6-c-text-input-group__text-input--MinWidth: 12ch;
33
33
  --pf-v6-c-text-input-group__text-input--m-hint--Color: var(--pf-t--global--text--color--placeholder);
34
+ --pf-v6-c-text-input-group__text-input--Color: var(--pf-t--global--text--color--regular);
34
35
  --pf-v6-c-text-input-group__text-input--placeholder--Color: var(--pf-t--global--text--color--placeholder);
35
36
  --pf-v6-c-text-input-group__text-input--BackgroundColor: transparent;
36
37
  --pf-v6-c-text-input-group__text-input--OutlineOffset: -6px;
@@ -77,6 +78,8 @@
77
78
  }
78
79
  .pf-v6-c-text-input-group.pf-m-disabled {
79
80
  --pf-v6-c-text-input-group--Color: var(--pf-v6-c-text-input-group--m-disabled--Color);
81
+ --pf-v6-c-text-input-group__text-input--Color: var(--pf-v6-c-text-input-group--m-disabled--Color);
82
+ --pf-v6-c-text-input-group__text-input--placeholder--Color: var(--pf-v6-c-text-input-group--m-disabled--Color);
80
83
  --pf-v6-c-text-input-group__icon--Color: var(--pf-v6-c-text-input-group--m-disabled__icon--Color);
81
84
  --pf-v6-c-text-input-group__icon--m-status--Color: var(--pf-v6-c-text-input-group--m-disabled__icon--m-status--Color);
82
85
  --pf-v6-c-text-input-group--BackgroundColor: var(--pf-v6-c-text-input-group--m-disabled--BackgroundColor);
@@ -103,12 +106,31 @@
103
106
  --pf-v6-c-text-input-group--m-hover--BorderColor: var(--pf-v6-c-text-input-group--m-hover--m-error--BorderColor);
104
107
  --pf-v6-c-text-input-group__icon--m-status--Color: var(--pf-v6-c-text-input-group__main--m-error__icon--m-status--Color);
105
108
  }
109
+ @media (prefers-reduced-motion: no-preference) {
110
+ .pf-v6-c-text-input-group.pf-m-error {
111
+ translate: var(--pf-v6-global--danger-jiggle--TranslateX, 0);
112
+ animation-name: pf-v6-global-danger-jiggle-motion;
113
+ animation-duration: var(--pf-v6-global--danger-jiggle--AnimationDuration--Transform);
114
+ animation-timing-function: var(--pf-v6-global--danger-jiggle--AnimationTimingFunction--Transform);
115
+ animation-fill-mode: both;
116
+ }
117
+ }
118
+ .pf-v6-c-text-input-group.pf-m-error .pf-v6-c-text-input-group__icon.pf-m-status {
119
+ --pf-v6-c-text-input-group--TransitionDuration--Opacity: var(--pf-t--global--motion--duration--fade--default);
120
+ --pf-v6-c-text-input-group--TransitionTimingFunction--Opacity: var(--pf-t--global--motion--timing-function--default);
121
+ animation-name: pf-v6-global-fade-in;
122
+ animation-duration: var(--pf-v6-c-text-input-group--TransitionDuration--Opacity);
123
+ animation-timing-function: var(--pf-v6-c-text-input-group--TransitionTimingFunction--Opacity);
124
+ }
106
125
  .pf-v6-c-text-input-group:hover {
107
126
  --pf-v6-c-text-input-group--BorderColor: var(--pf-v6-c-text-input-group--m-hover--BorderColor);
108
127
  }
109
128
  .pf-v6-c-text-input-group:where(.pf-m-success, .pf-m-warning, .pf-m-error) {
110
129
  --pf-v6-c-text-input-group__text-input--PaddingInlineEnd: var(--pf-v6-c-text-input-group--status__text-input--PaddingInlineEnd);
111
130
  }
131
+ .pf-v6-c-text-input-group:where(.pf-m-success, .pf-m-warning, .pf-m-error) .pf-v6-c-text-input-group__text {
132
+ --pf-v6-c-text-input-group__text--Position: relative;
133
+ }
112
134
  .pf-v6-c-text-input-group:has(> .pf-v6-c-text-input-group__utilities) {
113
135
  --pf-v6-c-text-input-group__icon--m-status--InsetInlineEnd: var(--pf-v6-c-text-input-group--utilities--icon--m-status--InsetInlineEnd);
114
136
  --pf-v6-c-text-input-group--status__text-input--PaddingInlineEnd: var(--pf-v6-c-text-input-group--utilities--status__text-input--PaddingInlineEnd);
@@ -171,6 +193,7 @@
171
193
  padding-block-end: var(--pf-v6-c-text-input-group__text-input--PaddingBlockEnd);
172
194
  padding-inline-start: var(--pf-v6-c-text-input-group__text-input--PaddingInlineStart);
173
195
  padding-inline-end: var(--pf-v6-c-text-input-group__text-input--PaddingInlineEnd);
196
+ color: var(--pf-v6-c-text-input-group__text-input--Color);
174
197
  background-color: var(--pf-v6-c-text-input-group__text-input--BackgroundColor);
175
198
  border: 0;
176
199
  outline-offset: var(--pf-v6-c-text-input-group__text-input--OutlineOffset);
@@ -44,6 +44,7 @@
44
44
  --#{$text-input-group}__text-input--PaddingInlineStart: var(--pf-t--global--spacer--control--horizontal--default);
45
45
  --#{$text-input-group}__text-input--MinWidth: 12ch;
46
46
  --#{$text-input-group}__text-input--m-hint--Color: var(--pf-t--global--text--color--placeholder);
47
+ --#{$text-input-group}__text-input--Color: var(--pf-t--global--text--color--regular);
47
48
  --#{$text-input-group}__text-input--placeholder--Color: var(--pf-t--global--text--color--placeholder);
48
49
  --#{$text-input-group}__text-input--BackgroundColor: transparent;
49
50
  --#{$text-input-group}__text-input--OutlineOffset: -6px;
@@ -97,6 +98,8 @@
97
98
 
98
99
  &.pf-m-disabled {
99
100
  --#{$text-input-group}--Color: var(--#{$text-input-group}--m-disabled--Color);
101
+ --#{$text-input-group}__text-input--Color: var(--#{$text-input-group}--m-disabled--Color);
102
+ --#{$text-input-group}__text-input--placeholder--Color: var(--#{$text-input-group}--m-disabled--Color);
100
103
  --#{$text-input-group}__icon--Color: var(--#{$text-input-group}--m-disabled__icon--Color);
101
104
  --#{$text-input-group}__icon--m-status--Color: var(--#{$text-input-group}--m-disabled__icon--m-status--Color);
102
105
  --#{$text-input-group}--BackgroundColor: var(--#{$text-input-group}--m-disabled--BackgroundColor);
@@ -128,6 +131,14 @@
128
131
  --#{$text-input-group}--BorderColor: var(--#{$text-input-group}--m-error--BorderColor);
129
132
  --#{$text-input-group}--m-hover--BorderColor: var(--#{$text-input-group}--m-hover--m-error--BorderColor);
130
133
  --#{$text-input-group}__icon--m-status--Color: var(--#{$text-input-group}__main--m-error__icon--m-status--Color);
134
+
135
+ @media (prefers-reduced-motion: no-preference) {
136
+ @include pf-v6-animate-danger-jiggle;
137
+ }
138
+
139
+ .#{$text-input-group}__icon.pf-m-status {
140
+ @include pf-v6-fade-default(#{$text-input-group});
141
+ }
131
142
  }
132
143
 
133
144
  &:hover {
@@ -136,6 +147,10 @@
136
147
 
137
148
  &:where(.pf-m-success, .pf-m-warning, .pf-m-error) {
138
149
  --#{$text-input-group}__text-input--PaddingInlineEnd: var(--#{$text-input-group}--status__text-input--PaddingInlineEnd);
150
+
151
+ & .pf-v6-c-text-input-group__text {
152
+ --#{$text-input-group}__text--Position: relative;
153
+ }
139
154
  }
140
155
 
141
156
  &:has(> .#{$text-input-group}__utilities) {
@@ -205,6 +220,7 @@
205
220
  padding-block-end: var(--#{$text-input-group}__text-input--PaddingBlockEnd);
206
221
  padding-inline-start: var(--#{$text-input-group}__text-input--PaddingInlineStart);
207
222
  padding-inline-end: var(--#{$text-input-group}__text-input--PaddingInlineEnd);
223
+ color: var(--#{$text-input-group}__text-input--Color);
208
224
  background-color: var(--#{$text-input-group}__text-input--BackgroundColor);
209
225
  border: 0;
210
226
  outline-offset: var(--#{$text-input-group}__text-input--OutlineOffset);
@@ -238,4 +254,3 @@
238
254
  .#{$text-input-group}__group {
239
255
  display: flex;
240
256
  }
241
-
@@ -28,4 +28,8 @@
28
28
  --pf-v6-c-timestamp--Color: var(--pf-v6-c-timestamp--m-help-text--hover--Color);
29
29
  --pf-v6-c-timestamp--m-help-text--TextDecorationLine: var(--pf-v6-c-timestamp--m-help-text--hover--TextDecorationLine);
30
30
  --pf-v6-c-timestamp--m-help-text--TextDecorationStyle: var(--pf-v6-c-timestamp--m-help-text--hover--TextDecorationStyle);
31
+ }
32
+
33
+ .pf-v6-c-timestamp__text {
34
+ text-decoration: inherit;
31
35
  }
@@ -36,3 +36,10 @@
36
36
  }
37
37
  }
38
38
  }
39
+
40
+ // enable timestamp with tooltip to have dashed underline when used with truncate
41
+ .#{$timestamp}__text {
42
+ // stylelint-disable property-disallowed-list
43
+ text-decoration: inherit;
44
+ // stylelint-enable property-disallowed-list
45
+ }
@@ -14,6 +14,17 @@
14
14
  --pf-v6-c-tree-view__node-container--Display: contents;
15
15
  --pf-v6-c-tree-view__node-content--RowGap: var(--pf-t--global--spacer--sm);
16
16
  --pf-v6-c-tree-view__node-content--Overflow: visible;
17
+ --pf-v6-c-tree-view__list--TransitionDuration--expand--slide: 0s;
18
+ --pf-v6-c-tree-view__list--TransitionDuration--expand--fade: var(--pf-t--global--motion--duration--fade--default);
19
+ --pf-v6-c-tree-view__list--TransitionDuration--collapse--slide: 0s;
20
+ --pf-v6-c-tree-view__list--TransitionDuration--collapse--fade: var(--pf-t--global--motion--duration--fade--short);
21
+ --pf-v6-c-tree-view__list--TransitionDuration--slide: var(--pf-v6-c-tree-view__list--TransitionDuration--collapse--slide);
22
+ --pf-v6-c-tree-view__list--TransitionDuration--fade: var(--pf-v6-c-tree-view__list--TransitionDuration--collapse--fade);
23
+ --pf-v6-c-tree-view__list--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
24
+ --pf-v6-c-tree-view__list--Opacity: 0;
25
+ --pf-v6-c-tree-view--m-expanded__list--Opacity: 1;
26
+ --pf-v6-c-tree-view__list--TranslateY: 0;
27
+ --pf-v6-c-tree-view--m-expanded__list--TranslateY: 0;
17
28
  --pf-v6-c-tree-view__list-item__list-item__node-toggle--InsetBlockStart: var(--pf-v6-c-tree-view__node--PaddingBlockStart);
18
29
  --pf-v6-c-tree-view__list-item__list-item__node-toggle--InsetInlineStart: var(--pf-v6-c-tree-view__node--PaddingInlineStart);
19
30
  --pf-v6-c-tree-view__list-item__list-item__node-toggle--TranslateX: -100%;
@@ -29,6 +40,8 @@
29
40
  --pf-v6-c-tree-view__node-toggle--PaddingInlineStart: var(--pf-t--global--spacer--md);
30
41
  --pf-v6-c-tree-view__node-toggle--MarginBlockStart: calc(var(--pf-v6-c-tree-view__node-toggle--PaddingBlockStart) * -1);
31
42
  --pf-v6-c-tree-view__node-toggle--MarginBlockEnd: calc(var(--pf-v6-c-tree-view__node-toggle--PaddingBlockStart) * -1);
43
+ --pf-v6-c-tree-view__node-toggle-icon--TransitionDuration: var(--pf-t--global--motion--duration--icon--default);
44
+ --pf-v6-c-tree-view__node-toggle-icon--TransitionTimingFunction: var(--pf-t--global--motion--timing-function--default);
32
45
  --pf-v6-c-tree-view__node-check--MarginInlineEnd: var(--pf-t--global--spacer--sm);
33
46
  --pf-v6-c-tree-view__node-count--MarginInlineStart: var(--pf-t--global--spacer--sm);
34
47
  --pf-v6-c-tree-view__search--PaddingBlockStart: var(--pf-t--global--spacer--sm);
@@ -104,6 +117,13 @@
104
117
  --pf-v6-c-tree-view--m-compact--m-no-background__node--nested--PaddingBlockEnd: 0;
105
118
  --pf-v6-c-tree-view--m-compact--m-no-background__node--before--InsetBlockStart: calc(var(--pf-v6-c-tree-view--m-compact__node-container--nested--PaddingBlockStart) + var(--pf-v6-c-tree-view--m-compact__node--nested--PaddingBlockStart) + 0.25rem);
106
119
  }
120
+ @media screen and (prefers-reduced-motion: no-preference) {
121
+ .pf-v6-c-tree-view {
122
+ --pf-v6-c-tree-view__list--TransitionDuration--expand--slide: var(--pf-t--global--motion--duration--fade--default);
123
+ --pf-v6-c-tree-view__list--TransitionDuration--collapse--slide: var(--pf-t--global--motion--duration--fade--short);
124
+ --pf-v6-c-tree-view__list--TranslateY: -.5rem;
125
+ }
126
+ }
107
127
 
108
128
  .pf-v6-c-tree-view.pf-m-compact .pf-v6-c-tree-view__list-item, .pf-v6-c-tree-view.pf-m-guides .pf-v6-c-tree-view__list-item {
109
129
  position: relative;
@@ -219,12 +239,23 @@
219
239
  display: inline-block;
220
240
  min-width: var(--pf-v6-c-tree-view__node-toggle-icon--MinWidth);
221
241
  text-align: center;
242
+ transition: transform var(--pf-v6-c-tree-view__node-toggle-icon--TransitionDuration) var(--pf-v6-c-tree-view__node-toggle-icon--TransitionTimingFunction);
222
243
  transform: rotate(var(--pf-v6-c-tree-view__node-toggle-icon--Rotate));
223
244
  }
224
245
  :where(.pf-v6-m-dir-rtl, [dir=rtl]) .pf-v6-c-tree-view__node-toggle-icon {
225
246
  scale: -1 1;
226
247
  }
227
248
 
249
+ .pf-v6-c-tree-view__list-item .pf-v6-c-tree-view__list {
250
+ max-height: 0;
251
+ visibility: hidden;
252
+ opacity: var(--pf-v6-c-tree-view__list--Opacity);
253
+ transition-delay: 0s, 0s, var(--pf-v6-c-tree-view__list--TransitionDuration--fade), var(--pf-v6-c-tree-view__list--TransitionDuration--fade);
254
+ transition-timing-function: var(--pf-v6-c-tree-view__list--TransitionTimingFunction);
255
+ transition-duration: var(--pf-v6-c-tree-view__list--TransitionDuration--fade), var(--pf-v6-c-tree-view__list--TransitionDuration--slide), 0s, 0s;
256
+ transition-property: opacity, translate, visibility, max-height;
257
+ translate: 0 var(--pf-v6-c-tree-view__list--TranslateY);
258
+ }
228
259
  .pf-v6-c-tree-view__list-item .pf-v6-c-tree-view__list-item {
229
260
  --pf-v6-c-tree-view__node-toggle-icon--Rotate: var(--pf-v6-c-tree-view__node-toggle-icon--base--Rotate);
230
261
  --pf-v6-c-tree-view__node-toggle--Color: var(--pf-v6-c-tree-view__node-toggle--Color--base);
@@ -233,6 +264,14 @@
233
264
  --pf-v6-c-tree-view__node-toggle--Color: var(--pf-v6-c-tree-view__list-item--m-expanded__node-toggle--Color);
234
265
  --pf-v6-c-tree-view__node-toggle-icon--Rotate: var(--pf-v6-c-tree-view__list-item--m-expanded__node-toggle-icon--Rotate);
235
266
  }
267
+ .pf-v6-c-tree-view__list-item.pf-m-expanded > .pf-v6-c-tree-view__list {
268
+ max-height: 99999px;
269
+ visibility: revert;
270
+ opacity: var(--pf-v6-c-tree-view--m-expanded__list--Opacity);
271
+ transition-delay: 0s;
272
+ transition-duration: var(--pf-v6-c-tree-view__list--TransitionDuration--expand--fade), var(--pf-v6-c-tree-view__list--TransitionDuration--expand--slide), 0s, 0s;
273
+ translate: 0 var(--pf-v6-c-tree-view--m-expanded__list--TranslateY);
274
+ }
236
275
 
237
276
  .pf-v6-c-tree-view__node,
238
277
  .pf-v6-c-tree-view__node-container {