@patternfly/patternfly 5.1.0-prerelease.9 → 5.2.0-prerelease.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 (118) hide show
  1. package/README.md +6 -6
  2. package/base/_common.scss +9 -8
  3. package/base/_variables.scss +5 -1
  4. package/base/patternfly-common.css +4 -11
  5. package/base/patternfly-variables.css +5 -1
  6. package/components/AboutModalBox/about-modal-box.css +5 -0
  7. package/components/AboutModalBox/about-modal-box.scss +7 -0
  8. package/components/Accordion/accordion.css +3 -0
  9. package/components/Accordion/accordion.scss +2 -0
  10. package/components/Alert/alert.css +3 -0
  11. package/components/Alert/alert.scss +2 -0
  12. package/components/BackgroundImage/background-image.css +4 -1
  13. package/components/BackgroundImage/background-image.scss +6 -1
  14. package/components/Banner/banner.css +0 -3
  15. package/components/Breadcrumb/breadcrumb.css +3 -0
  16. package/components/Breadcrumb/breadcrumb.scss +2 -0
  17. package/components/Button/button.css +3 -0
  18. package/components/Button/button.scss +4 -0
  19. package/components/CalendarMonth/calendar-month.css +4 -0
  20. package/components/CalendarMonth/calendar-month.scss +2 -0
  21. package/components/Card/card.css +4 -1
  22. package/components/Card/card.scss +3 -1
  23. package/components/ClipboardCopy/clipboard-copy.css +3 -0
  24. package/components/ClipboardCopy/clipboard-copy.scss +2 -0
  25. package/components/DataList/data-list.css +3 -0
  26. package/components/DataList/data-list.scss +2 -0
  27. package/components/Drawer/drawer.css +45 -1
  28. package/components/Drawer/drawer.scss +43 -9
  29. package/components/DualListSelector/dual-list-selector.css +6 -2
  30. package/components/DualListSelector/dual-list-selector.scss +7 -2
  31. package/components/ExpandableSection/expandable-section.css +4 -0
  32. package/components/ExpandableSection/expandable-section.scss +2 -0
  33. package/components/Form/form.css +3 -0
  34. package/components/Form/form.scss +2 -0
  35. package/components/Icon/icon.scss +1 -1
  36. package/components/JumpLinks/jump-links.css +3 -0
  37. package/components/JumpLinks/jump-links.scss +2 -0
  38. package/components/Menu/menu.css +11 -0
  39. package/components/Menu/menu.scss +12 -2
  40. package/components/Nav/nav.css +20 -0
  41. package/components/Nav/nav.scss +22 -2
  42. package/components/NotificationDrawer/notification-drawer.css +4 -0
  43. package/components/NotificationDrawer/notification-drawer.scss +2 -0
  44. package/components/Page/page.css +4 -0
  45. package/components/Page/page.scss +6 -1
  46. package/components/Pagination/pagination.css +1 -1
  47. package/components/Pagination/pagination.scss +1 -1
  48. package/components/Popover/popover.css +62 -33
  49. package/components/Popover/popover.scss +88 -71
  50. package/components/Progress/progress.css +6 -4
  51. package/components/Progress/progress.scss +9 -4
  52. package/components/Skeleton/skeleton.css +4 -0
  53. package/components/Skeleton/skeleton.scss +2 -0
  54. package/components/Slider/slider.css +30 -6
  55. package/components/Slider/slider.scss +50 -19
  56. package/components/Switch/switch.css +5 -1
  57. package/components/Switch/switch.scss +5 -1
  58. package/components/Table/table-scrollable.css +2 -2
  59. package/components/Table/table-scrollable.scss +4 -2
  60. package/components/Table/table-tree-view.css +5 -1
  61. package/components/Table/table-tree-view.scss +7 -2
  62. package/components/Table/table.css +4 -0
  63. package/components/Table/table.scss +2 -0
  64. package/components/Tabs/tabs.css +10 -0
  65. package/components/Tabs/tabs.scss +8 -0
  66. package/components/Toolbar/toolbar.scss +2 -0
  67. package/components/Tooltip/tooltip.css +55 -26
  68. package/components/Tooltip/tooltip.scss +71 -54
  69. package/components/TreeView/tree-view.css +6 -0
  70. package/components/TreeView/tree-view.scss +10 -3
  71. package/components/Truncate/truncate.css +9 -0
  72. package/components/Truncate/truncate.scss +16 -3
  73. package/components/Wizard/wizard.css +6 -3
  74. package/components/Wizard/wizard.scss +8 -3
  75. package/docs/components/Button/examples/Button.md +15 -3
  76. package/docs/components/Card/examples/Card.md +15 -15
  77. package/docs/components/Check/examples/Check.md +71 -59
  78. package/docs/components/ClipboardCopy/examples/ClipboardCopy.md +106 -0
  79. package/docs/components/CodeEditor/examples/CodeEditor.md +3 -3
  80. package/docs/components/DualListSelector/examples/DualListSelector.md +64 -16
  81. package/docs/components/LogViewer/examples/LogViewer.md +120 -30
  82. package/docs/components/Menu/examples/Menu.css +8 -0
  83. package/docs/components/Menu/examples/Menu.md +90 -73
  84. package/docs/components/MenuToggle/examples/MenuToggle.md +60 -39
  85. package/docs/components/ModalBox/examples/ModalBox.css +3 -8
  86. package/docs/components/Nav/examples/Navigation.css +3 -26
  87. package/docs/components/Nav/examples/Navigation.md +99 -0
  88. package/docs/components/OptionsMenu/deprecated/options-menu.md +12 -3
  89. package/docs/components/Popover/examples/Popover.css +4 -9
  90. package/docs/components/Radio/examples/Radio.md +63 -55
  91. package/docs/components/Select/deprecated/Select.md +184 -177
  92. package/docs/components/Table/examples/Table.md +2 -2
  93. package/docs/components/Toolbar/examples/Toolbar.md +525 -431
  94. package/docs/components/Tooltip/examples/Tooltip.css +4 -0
  95. package/docs/components/Tooltip/examples/Tooltip.md +3 -1
  96. package/docs/components/Truncate/examples/Truncate.md +2 -2
  97. package/docs/demos/Card/examples/Card.md +23 -7
  98. package/docs/demos/CardView/examples/CardView.md +24 -20
  99. package/docs/demos/DataList/examples/DataList.md +8 -2
  100. package/docs/demos/PrimaryDetail/examples/PrimaryDetail.md +160 -124
  101. package/docs/demos/Skeleton/examples/Skeleton.md +7 -35
  102. package/docs/demos/Table/examples/Table.md +336 -252
  103. package/docs/demos/Tabs/examples/Tabs.md +28 -21
  104. package/docs/demos/Toolbar/examples/Toolbar.css +5 -0
  105. package/docs/demos/Toolbar/examples/Toolbar.md +44 -44
  106. package/package.json +6 -5
  107. package/patternfly-base-no-globals-theme-dark-unversioned.css +9 -12
  108. package/patternfly-base-no-globals.css +9 -12
  109. package/patternfly-base-theme-dark-unversioned.css +9 -12
  110. package/patternfly-base.css +9 -12
  111. package/patternfly-no-globals.css +356 -104
  112. package/patternfly-theme-dark-unversioned.css +356 -104
  113. package/patternfly.css +356 -104
  114. package/patternfly.min.css +1 -1
  115. package/patternfly.min.css.map +1 -1
  116. package/sass-utilities/functions.scss +6 -0
  117. package/sass-utilities/mixins.scss +55 -20
  118. package/sass-utilities/themes/dark/mixins.scss +3 -1
@@ -417,6 +417,9 @@
417
417
  transition: var(--pf-v5-c-tabs__toggle-icon--Transition);
418
418
  transform: rotate(var(--pf-v5-c-tabs__toggle-icon--Rotate));
419
419
  }
420
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-tabs__toggle-icon {
421
+ scale: -1 1;
422
+ }
420
423
 
421
424
  .pf-v5-c-tabs__toggle-text {
422
425
  margin-inline-start: var(--pf-v5-c-tabs__toggle-text--MarginLeft);
@@ -591,6 +594,9 @@
591
594
  transition: var(--pf-v5-c-tabs__link-toggle-icon--Transition);
592
595
  transform: rotate(var(--pf-v5-c-tabs__link-toggle-icon--Rotate));
593
596
  }
597
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-tabs__link-toggle-icon {
598
+ scale: -1 1;
599
+ }
594
600
 
595
601
  .pf-v5-c-tabs__item-action {
596
602
  display: flex;
@@ -622,6 +628,10 @@
622
628
  opacity: 0;
623
629
  transition: margin var(--pf-v5-c-tabs__scroll-button--TransitionDuration--margin), transform var(--pf-v5-c-tabs__scroll-button--TransitionDuration--transform), opacity var(--pf-v5-c-tabs__scroll-button--TransitionDuration--opacity);
624
630
  }
631
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-tabs__scroll-button > * {
632
+ scale: -1 1;
633
+ }
634
+
625
635
  .pf-v5-c-tabs__scroll-button:hover, .pf-v5-c-tabs__scroll-button:active, .pf-v5-c-tabs__scroll-button:focus {
626
636
  --pf-v5-c-tabs__scroll-button--Color: var(--pf-v5-c-tabs__scroll-button--hover--Color);
627
637
  }
@@ -490,6 +490,8 @@ $pf-v5-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
490
490
  }
491
491
 
492
492
  .#{$tabs}__toggle-icon {
493
+ @include pf-v5-mirror-inline-on-rtl;
494
+
493
495
  display: inline-block;
494
496
  color: var(--#{$tabs}__toggle-icon--Color);
495
497
  transition: var(--#{$tabs}__toggle-icon--Transition);
@@ -700,6 +702,8 @@ $pf-v5-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
700
702
  }
701
703
 
702
704
  .#{$tabs}__link-toggle-icon {
705
+ @include pf-v5-mirror-inline-on-rtl;
706
+
703
707
  align-self: end;
704
708
  font-size: var(--#{$tabs}__link-toggle-icon--FontSize);
705
709
  color: var(--#{$tabs}__link-toggle-icon--Color);
@@ -741,6 +745,10 @@ $pf-v5-c-tabs--spacer-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2xl
741
745
  opacity: 0;
742
746
  transition: margin var(--#{$tabs}__scroll-button--TransitionDuration--margin), transform var(--#{$tabs}__scroll-button--TransitionDuration--transform), opacity var(--#{$tabs}__scroll-button--TransitionDuration--opacity);
743
747
 
748
+ > * {
749
+ @include pf-v5-mirror-inline-on-rtl; // in breaking change, add an icon wrapper and move this style to the wrapper
750
+ }
751
+
744
752
  &:hover,
745
753
  &:active,
746
754
  &:focus {
@@ -409,6 +409,8 @@ $pf-v5-c-toolbar--inset-map: build-spacer-map("none", "sm", "md", "lg", "xl", "2
409
409
  display: inline-block;
410
410
  transition: var(--#{$toolbar}__expand-all-icon--Transition);
411
411
  transform: rotate(var(--#{$toolbar}__expand-all-icon--Rotate));
412
+
413
+ // @include pf-v5-mirror-inline-on-rtl; - TODO: mirror this icon in breaking change
412
414
  }
413
415
 
414
416
  .#{$toolbar}__content,
@@ -28,39 +28,61 @@
28
28
  max-width: var(--pf-v5-c-tooltip--MaxWidth);
29
29
  box-shadow: var(--pf-v5-c-tooltip--BoxShadow);
30
30
  }
31
- .pf-v5-c-tooltip.pf-m-top .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-top-left .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-top-right .pf-v5-c-tooltip__arrow {
32
- inset-block-end: 0;
33
- inset-inline-start: 50%;
34
- transform: translateX(var(--pf-v5-c-tooltip__arrow--m-top--TranslateX)) translateY(var(--pf-v5-c-tooltip__arrow--m-top--TranslateY)) rotate(var(--pf-v5-c-tooltip__arrow--m-top--Rotate));
31
+ .pf-v5-c-tooltip:is(.pf-m-top,
32
+ .pf-m-top-left,
33
+ .pf-m-top-right) {
34
+ --pf-v5-c-tooltip__arrow--Bottom: var(--pf-v5-c-tooltip--m-top--Bottom, 0);
35
+ --pf-v5-c-tooltip__arrow--Left: var(--pf-v5-c-tooltip--m-top--Left, 50%);
36
+ --pf-v5-c-tooltip__arrow--TranslateX: var(--pf-v5-c-tooltip__arrow--m-top--TranslateX);
37
+ --pf-v5-c-tooltip__arrow--TranslateY: var(--pf-v5-c-tooltip__arrow--m-top--TranslateY);
38
+ --pf-v5-c-tooltip__arrow--Rotate: var(--pf-v5-c-tooltip__arrow--m-top--Rotate);
35
39
  }
36
- .pf-v5-c-tooltip.pf-m-bottom .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-bottom-left .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-bottom-right .pf-v5-c-tooltip__arrow {
37
- inset-block-start: 0;
38
- inset-inline-start: 50%;
39
- transform: translateX(var(--pf-v5-c-tooltip__arrow--m-bottom--TranslateX)) translateY(var(--pf-v5-c-tooltip__arrow--m-bottom--TranslateY)) rotate(var(--pf-v5-c-tooltip__arrow--m-bottom--Rotate));
40
+ .pf-v5-c-tooltip:is(.pf-m-bottom,
41
+ .pf-m-bottom-left,
42
+ .pf-m-bottom-right) {
43
+ --pf-v5-c-tooltip__arrow--Top: var(--pf-v5-c-tooltip--m-bottom--Top, 0);
44
+ --pf-v5-c-tooltip__arrow--Left: var(--pf-v5-c-tooltip--m-bottom--Left, 50%);
45
+ --pf-v5-c-tooltip__arrow--TranslateX: var(--pf-v5-c-tooltip__arrow--m-bottom--TranslateX);
46
+ --pf-v5-c-tooltip__arrow--TranslateY: var(--pf-v5-c-tooltip__arrow--m-bottom--TranslateY);
47
+ --pf-v5-c-tooltip__arrow--Rotate: var(--pf-v5-c-tooltip__arrow--m-bottom--Rotate);
40
48
  }
41
- .pf-v5-c-tooltip.pf-m-left .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-left-top .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-left-bottom .pf-v5-c-tooltip__arrow {
42
- inset-block-start: 50%;
43
- inset-inline-end: 0;
44
- transform: translateX(var(--pf-v5-c-tooltip__arrow--m-left--TranslateX)) translateY(var(--pf-v5-c-tooltip__arrow--m-left--TranslateY)) rotate(var(--pf-v5-c-tooltip__arrow--m-left--Rotate));
49
+ .pf-v5-c-tooltip:is(.pf-m-left,
50
+ .pf-m-left-top,
51
+ .pf-m-left-bottom) {
52
+ --pf-v5-c-tooltip__arrow--Top: var(--pf-v5-c-tooltip--m-left--Top, 50%);
53
+ --pf-v5-c-tooltip__arrow--Right: var(--pf-v5-c-tooltip--m-left--Right, 0);
54
+ --pf-v5-c-tooltip__arrow--TranslateX: var(--pf-v5-c-tooltip__arrow--m-left--TranslateX);
55
+ --pf-v5-c-tooltip__arrow--TranslateY: var(--pf-v5-c-tooltip__arrow--m-left--TranslateY);
56
+ --pf-v5-c-tooltip__arrow--Rotate: var(--pf-v5-c-tooltip__arrow--m-left--Rotate);
45
57
  }
46
- .pf-v5-c-tooltip.pf-m-right .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-right-top .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-right-bottom .pf-v5-c-tooltip__arrow {
47
- inset-block-start: 50%;
48
- inset-inline-start: 0;
49
- transform: translateX(var(--pf-v5-c-tooltip__arrow--m-right--TranslateX)) translateY(var(--pf-v5-c-tooltip__arrow--m-right--TranslateY)) rotate(var(--pf-v5-c-tooltip__arrow--m-right--Rotate));
58
+ .pf-v5-c-tooltip:is(.pf-m-right,
59
+ .pf-m-right-top,
60
+ .pf-m-right-bottom) {
61
+ --pf-v5-c-tooltip__arrow--Top: var(--pf-v5-c-tooltip--m-right--Top, 50%);
62
+ --pf-v5-c-tooltip__arrow--Left: var(--pf-v5-c-tooltip--m-right--Left, 0);
63
+ --pf-v5-c-tooltip__arrow--TranslateX: var(--pf-v5-c-tooltip__arrow--m-right--TranslateX);
64
+ --pf-v5-c-tooltip__arrow--TranslateY: var(--pf-v5-c-tooltip__arrow--m-right--TranslateY);
65
+ --pf-v5-c-tooltip__arrow--Rotate: var(--pf-v5-c-tooltip__arrow--m-right--Rotate);
50
66
  }
51
- .pf-v5-c-tooltip.pf-m-left-top .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-right-top .pf-v5-c-tooltip__arrow {
52
- inset-block-start: var(--pf-v5-c-tooltip__arrow--Height);
67
+ .pf-v5-c-tooltip:is(.pf-m-left-top,
68
+ .pf-m-right-top) {
69
+ --pf-v5-c-tooltip__arrow--Top: 0;
70
+ --pf-v5-c-tooltip__arrow--TranslateY: var(--pf-v5-c-tooltip__arrow--m-top--TranslateY);
53
71
  }
54
- .pf-v5-c-tooltip.pf-m-left-bottom .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-right-bottom .pf-v5-c-tooltip__arrow {
55
- inset-block-start: auto;
56
- inset-block-end: 0;
72
+ .pf-v5-c-tooltip:is(.pf-m-left-bottom,
73
+ .pf-m-right-bottom) {
74
+ --pf-v5-c-tooltip__arrow--Top: auto;
75
+ --pf-v5-c-tooltip__arrow--Bottom: 0;
57
76
  }
58
- .pf-v5-c-tooltip.pf-m-top-left .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-bottom-left .pf-v5-c-tooltip__arrow {
59
- inset-inline-start: var(--pf-v5-c-tooltip__arrow--Width);
77
+ .pf-v5-c-tooltip:is(.pf-m-top-left,
78
+ .pf-m-bottom-left) {
79
+ --pf-v5-c-tooltip__arrow--Left: 0;
80
+ --pf-v5-c-tooltip__arrow--TranslateX: var(--pf-v5-c-tooltip__arrow--m-left--TranslateX);
60
81
  }
61
- .pf-v5-c-tooltip.pf-m-top-right .pf-v5-c-tooltip__arrow, .pf-v5-c-tooltip.pf-m-bottom-right .pf-v5-c-tooltip__arrow {
62
- inset-inline-start: auto;
63
- inset-inline-end: 0;
82
+ .pf-v5-c-tooltip:is(.pf-m-top-right,
83
+ .pf-m-bottom-right) {
84
+ --pf-v5-c-tooltip__arrow--Right: 0;
85
+ --pf-v5-c-tooltip__arrow--Left: auto;
64
86
  }
65
87
 
66
88
  .pf-v5-c-tooltip__content {
@@ -81,11 +103,18 @@
81
103
 
82
104
  .pf-v5-c-tooltip__arrow {
83
105
  position: absolute;
106
+ /* stylelint-disable liberty/use-logical-spec */
107
+ top: var(--pf-v5-c-tooltip__arrow--Top, auto);
108
+ right: var(--pf-v5-c-tooltip__arrow--Right, auto);
109
+ bottom: var(--pf-v5-c-tooltip__arrow--Bottom, auto);
110
+ left: var(--pf-v5-c-tooltip__arrow--Left, auto);
111
+ /* stylelint-enable */
84
112
  width: var(--pf-v5-c-tooltip__arrow--Width);
85
113
  height: var(--pf-v5-c-tooltip__arrow--Height);
86
114
  pointer-events: none;
87
115
  background-color: var(--pf-v5-c-tooltip__arrow--BackgroundColor);
88
116
  box-shadow: var(--pf-v5-c-tooltip__arrow--BoxShadow);
117
+ transform: translateX(var(--pf-v5-c-tooltip__arrow--TranslateX, 0)) translateY(var(--pf-v5-c-tooltip__arrow--TranslateY, 0)) rotate(var(--pf-v5-c-tooltip__arrow--Rotate, 0));
89
118
  }
90
119
 
91
120
  :where(.pf-v5-theme-dark) .pf-v5-c-tooltip {
@@ -36,74 +36,84 @@
36
36
  max-width: var(--#{$tooltip}--MaxWidth);
37
37
  box-shadow: var(--#{$tooltip}--BoxShadow);
38
38
 
39
- &.pf-m-top,
40
- &.pf-m-top-left,
41
- &.pf-m-top-right {
42
- .#{$tooltip}__arrow {
43
- inset-block-end: 0;
44
- inset-inline-start: 50%;
45
- transform: translateX(var(--#{$tooltip}__arrow--m-top--TranslateX)) translateY(var(--#{$tooltip}__arrow--m-top--TranslateY)) rotate(var(--#{$tooltip}__arrow--m-top--Rotate));
46
- }
39
+ &:is(
40
+ .pf-m-top,
41
+ .pf-m-top-left,
42
+ .pf-m-top-right
43
+ ) {
44
+ --#{$tooltip}__arrow--Bottom: var(--#{$tooltip}--m-top--Bottom, 0);
45
+ --#{$tooltip}__arrow--Left: var(--#{$tooltip}--m-top--Left, 50%);
46
+ --#{$tooltip}__arrow--TranslateX: var(--#{$tooltip}__arrow--m-top--TranslateX);
47
+ --#{$tooltip}__arrow--TranslateY: var(--#{$tooltip}__arrow--m-top--TranslateY);
48
+ --#{$tooltip}__arrow--Rotate: var(--#{$tooltip}__arrow--m-top--Rotate);
47
49
  }
48
50
 
49
- &.pf-m-bottom,
50
- &.pf-m-bottom-left,
51
- &.pf-m-bottom-right {
52
- .#{$tooltip}__arrow {
53
- inset-block-start: 0;
54
- inset-inline-start: 50%;
55
- transform: translateX(var(--#{$tooltip}__arrow--m-bottom--TranslateX)) translateY(var(--#{$tooltip}__arrow--m-bottom--TranslateY)) rotate(var(--#{$tooltip}__arrow--m-bottom--Rotate));
56
- }
51
+ &:is(
52
+ .pf-m-bottom,
53
+ .pf-m-bottom-left,
54
+ .pf-m-bottom-right
55
+ ) {
56
+ --#{$tooltip}__arrow--Top: var(--#{$tooltip}--m-bottom--Top, 0);
57
+ --#{$tooltip}__arrow--Left: var(--#{$tooltip}--m-bottom--Left, 50%);
58
+ --#{$tooltip}__arrow--TranslateX: var(--#{$tooltip}__arrow--m-bottom--TranslateX);
59
+ --#{$tooltip}__arrow--TranslateY: var(--#{$tooltip}__arrow--m-bottom--TranslateY);
60
+ --#{$tooltip}__arrow--Rotate: var(--#{$tooltip}__arrow--m-bottom--Rotate);
57
61
  }
58
62
 
59
- &.pf-m-left,
60
- &.pf-m-left-top,
61
- &.pf-m-left-bottom {
62
- .#{$tooltip}__arrow {
63
- inset-block-start: 50%;
64
- inset-inline-end: 0;
65
- transform: translateX(var(--#{$tooltip}__arrow--m-left--TranslateX)) translateY(var(--#{$tooltip}__arrow--m-left--TranslateY)) rotate(var(--#{$tooltip}__arrow--m-left--Rotate));
66
- }
63
+ &:is(
64
+ .pf-m-left,
65
+ .pf-m-left-top,
66
+ .pf-m-left-bottom
67
+ ) {
68
+ --#{$tooltip}__arrow--Top: var(--#{$tooltip}--m-left--Top, 50%);
69
+ --#{$tooltip}__arrow--Right: var(--#{$tooltip}--m-left--Right, 0);
70
+ --#{$tooltip}__arrow--TranslateX: var(--#{$tooltip}__arrow--m-left--TranslateX);
71
+ --#{$tooltip}__arrow--TranslateY: var(--#{$tooltip}__arrow--m-left--TranslateY);
72
+ --#{$tooltip}__arrow--Rotate: var(--#{$tooltip}__arrow--m-left--Rotate);
67
73
  }
68
74
 
69
- &.pf-m-right,
70
- &.pf-m-right-top,
71
- &.pf-m-right-bottom {
72
- .#{$tooltip}__arrow {
73
- inset-block-start: 50%;
74
- inset-inline-start: 0;
75
- transform: translateX(var(--#{$tooltip}__arrow--m-right--TranslateX)) translateY(var(--#{$tooltip}__arrow--m-right--TranslateY)) rotate(var(--#{$tooltip}__arrow--m-right--Rotate));
76
- }
75
+ &:is(
76
+ .pf-m-right,
77
+ .pf-m-right-top,
78
+ .pf-m-right-bottom
79
+ ) {
80
+ --#{$tooltip}__arrow--Top: var(--#{$tooltip}--m-right--Top, 50%);
81
+ --#{$tooltip}__arrow--Left: var(--#{$tooltip}--m-right--Left, 0);
82
+ --#{$tooltip}__arrow--TranslateX: var(--#{$tooltip}__arrow--m-right--TranslateX);
83
+ --#{$tooltip}__arrow--TranslateY: var(--#{$tooltip}__arrow--m-right--TranslateY);
84
+ --#{$tooltip}__arrow--Rotate: var(--#{$tooltip}__arrow--m-right--Rotate);
77
85
  }
78
86
 
79
- &.pf-m-left-top,
80
- &.pf-m-right-top {
81
- .#{$tooltip}__arrow {
82
- inset-block-start: var(--#{$tooltip}__arrow--Height);
83
- }
87
+ &:is(
88
+ .pf-m-left-top,
89
+ .pf-m-right-top
90
+ ) {
91
+ --#{$tooltip}__arrow--Top: 0;
92
+ --#{$tooltip}__arrow--TranslateY: var(--#{$tooltip}__arrow--m-top--TranslateY);
84
93
  }
85
94
 
86
- &.pf-m-left-bottom,
87
- &.pf-m-right-bottom {
88
- .#{$tooltip}__arrow {
89
- inset-block-start: auto;
90
- inset-block-end: 0;
91
- }
95
+ &:is(
96
+ .pf-m-left-bottom,
97
+ .pf-m-right-bottom
98
+ ) {
99
+ --#{$tooltip}__arrow--Top: auto;
100
+ --#{$tooltip}__arrow--Bottom: 0;
92
101
  }
93
102
 
94
- &.pf-m-top-left,
95
- &.pf-m-bottom-left {
96
- .#{$tooltip}__arrow {
97
- inset-inline-start: var(--#{$tooltip}__arrow--Width);
98
- }
103
+ &:is(
104
+ .pf-m-top-left,
105
+ .pf-m-bottom-left
106
+ ) {
107
+ --#{$tooltip}__arrow--Left: 0;
108
+ --#{$tooltip}__arrow--TranslateX: var(--#{$tooltip}__arrow--m-left--TranslateX);
99
109
  }
100
110
 
101
- &.pf-m-top-right,
102
- &.pf-m-bottom-right {
103
- .#{$tooltip}__arrow {
104
- inset-inline-start: auto;
105
- inset-inline-end: 0;
106
- }
111
+ &:is(
112
+ .pf-m-top-right,
113
+ .pf-m-bottom-right
114
+ ) {
115
+ --#{$tooltip}__arrow--Right: 0;
116
+ --#{$tooltip}__arrow--Left: auto;
107
117
  }
108
118
  }
109
119
 
@@ -126,11 +136,18 @@
126
136
 
127
137
  .#{$tooltip}__arrow {
128
138
  position: absolute;
139
+ /* stylelint-disable liberty/use-logical-spec */
140
+ top: var(--#{$tooltip}__arrow--Top, auto);
141
+ right: var(--#{$tooltip}__arrow--Right, auto);
142
+ bottom: var(--#{$tooltip}__arrow--Bottom, auto);
143
+ left: var(--#{$tooltip}__arrow--Left, auto);
144
+ /* stylelint-enable */
129
145
  width: var(--#{$tooltip}__arrow--Width);
130
146
  height: var(--#{$tooltip}__arrow--Height);
131
147
  pointer-events: none;
132
148
  background-color: var(--#{$tooltip}__arrow--BackgroundColor);
133
149
  box-shadow: var(--#{$tooltip}__arrow--BoxShadow);
150
+ transform: translateX(var(--#{$tooltip}__arrow--TranslateX, 0)) translateY(var(--#{$tooltip}__arrow--TranslateY, 0)) rotate(var(--#{$tooltip}__arrow--Rotate, 0));
134
151
  }
135
152
 
136
153
  // stylelint-disable no-invalid-position-at-import-rule
@@ -229,6 +229,9 @@
229
229
  transition: var(--pf-v5-c-tree-view__node-toggle-icon--Transition);
230
230
  transform: rotate(var(--pf-v5-c-tree-view__node-toggle-icon--Rotate));
231
231
  }
232
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-tree-view__node-toggle-icon {
233
+ scale: -1 1;
234
+ }
232
235
 
233
236
  .pf-v5-c-tree-view__list-item .pf-v5-c-tree-view__list-item {
234
237
  --pf-v5-c-tree-view__node-toggle-icon--Rotate: var(--pf-v5-c-tree-view__node-toggle-icon--base--Rotate);
@@ -318,6 +321,9 @@
318
321
  border: 0;
319
322
  transform: translateX(var(--pf-v5-c-tree-view__list-item__list-item__node-toggle--TranslateX));
320
323
  }
324
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-tree-view__node-toggle {
325
+ transform: translateX(calc(var(--pf-v5-c-tree-view__list-item__list-item__node-toggle--TranslateX) * var(--pf-v5-global--inverse--multiplier)));
326
+ }
321
327
 
322
328
  .pf-v5-c-tree-view__node-title.pf-m-truncate,
323
329
  .pf-v5-c-tree-view__node-text.pf-m-truncate {
@@ -332,6 +332,8 @@ $pf-v5-c-tree-view--MaxNesting: 10 !default;
332
332
  }
333
333
 
334
334
  .#{$tree-view}__node-toggle-icon {
335
+ @include pf-v5-mirror-inline-on-rtl;
336
+
335
337
  display: inline-block;
336
338
  min-width: var(--#{$tree-view}__node-toggle-icon--MinWidth);
337
339
  text-align: center;
@@ -429,8 +431,8 @@ $pf-v5-c-tree-view--MaxNesting: 10 !default;
429
431
 
430
432
  .#{$tree-view}__node-toggle {
431
433
  position: var(--#{$tree-view}__node-toggle--Position);
432
- inset-block-start: var(--#{$tree-view}__list-item__list-item__node-toggle--Top);
433
- inset-inline-start: var(--#{$tree-view}__list-item__list-item__node-toggle--Left);
434
+ inset-block-start: var(--#{$tree-view}__list-item__list-item__node-toggle--Top);
435
+ inset-inline-start: var(--#{$tree-view}__list-item__list-item__node-toggle--Left);
434
436
  display: inline-flex;
435
437
  align-items: center;
436
438
  justify-content: center;
@@ -443,7 +445,12 @@ $pf-v5-c-tree-view--MaxNesting: 10 !default;
443
445
  color: var(--#{$tree-view}__node-toggle--Color);
444
446
  background-color: var(--#{$tree-view}__node-toggle--BackgroundColor);
445
447
  border: 0;
446
- transform: translateX(var(--#{$tree-view}__list-item__list-item__node-toggle--TranslateX));
448
+
449
+ @include pf-v5-bidirectional-style(
450
+ $prop: transform,
451
+ $ltr-val: translateX(var(--#{$tree-view}__list-item__list-item__node-toggle--TranslateX)),
452
+ $rtl-val: translateX(#{pf-v5-calc-inverse(var(--#{$tree-view}__list-item__list-item__node-toggle--TranslateX))})
453
+ );
447
454
  }
448
455
 
449
456
  .#{$tree-view}__node-title,
@@ -21,14 +21,23 @@
21
21
  .pf-v5-c-truncate__end {
22
22
  direction: rtl;
23
23
  }
24
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-truncate__end {
25
+ direction: ltr;
26
+ }
24
27
 
25
28
  .pf-v5-c-truncate__start + .pf-v5-c-truncate__end {
26
29
  overflow: visible;
27
30
  direction: ltr;
28
31
  }
32
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-truncate__start + .pf-v5-c-truncate__end {
33
+ direction: rtl;
34
+ }
29
35
 
30
36
  @supports (-webkit-hyphens: none) {
31
37
  .pf-v5-c-truncate__end {
32
38
  direction: ltr;
33
39
  }
40
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-truncate__end {
41
+ direction: rtl;
42
+ }
34
43
  }
@@ -23,17 +23,30 @@
23
23
 
24
24
  // End
25
25
  .#{$truncate}__end {
26
- direction: rtl;
26
+ @include pf-v5-bidirectional-style (
27
+ $prop: direction,
28
+ $ltr-val: rtl,
29
+ $rtl-val: ltr
30
+ )
27
31
  }
28
32
 
29
33
  .#{$truncate}__start + .#{$truncate}__end {
30
34
  overflow: visible;
31
- direction: ltr;
35
+
36
+ @include pf-v5-bidirectional-style (
37
+ $prop: direction,
38
+ $ltr-val: ltr,
39
+ $rtl-val: rtl
40
+ )
32
41
  }
33
42
 
34
43
  // safari not supported
35
44
  @supports (-webkit-hyphens: none) {
36
45
  .#{$truncate}__end {
37
- direction: ltr;
46
+ @include pf-v5-bidirectional-style (
47
+ $prop: direction,
48
+ $ltr-val: ltr,
49
+ $rtl-val: rtl
50
+ )
38
51
  }
39
52
  }
@@ -303,7 +303,7 @@
303
303
  margin-inline-start: var(--pf-v5-c-wizard__toggle-separator--MarginLeft);
304
304
  color: var(--pf-v5-c-wizard__toggle-separator--Color);
305
305
  }
306
- :where(.ws-dir-rtl, .pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-wizard__toggle-separator {
306
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-wizard__toggle-separator {
307
307
  scale: -1 1;
308
308
  }
309
309
 
@@ -410,6 +410,7 @@
410
410
  border: 0;
411
411
  }
412
412
  .pf-v5-c-wizard__toggle-num, .pf-v5-c-wizard__nav-link::before {
413
+ transform: translateX(var(--pf-v5-c-wizard__nav-link--before--TranslateX));
413
414
  position: absolute;
414
415
  inset-block-start: var(--pf-v5-c-wizard__nav-link--before--Top);
415
416
  inset-inline-start: 0;
@@ -423,7 +424,9 @@
423
424
  color: var(--pf-v5-c-wizard__nav-link--before--Color);
424
425
  background-color: var(--pf-v5-c-wizard__nav-link--before--BackgroundColor);
425
426
  border-radius: var(--pf-v5-c-wizard__nav-link--before--BorderRadius);
426
- transform: translateX(calc(var(--pf-v5-c-wizard__nav-link--before--TranslateX) * var(--pf-v5-global--rtl--transform--flip)));
427
+ }
428
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-wizard__toggle-num, .pf-v5-c-wizard__nav-link::before {
429
+ transform: translateX(calc(var(--pf-v5-c-wizard__nav-link--before--TranslateX) * var(--pf-v5-global--inverse--multiplier)));
427
430
  }
428
431
 
429
432
  .pf-v5-c-wizard__nav-link::before {
@@ -472,7 +475,7 @@
472
475
  transition: var(--pf-v5-c-wizard__nav-link-toggle-icon--Transition);
473
476
  transform: rotate(var(--pf-v5-c-wizard__nav-link-toggle-icon--Rotate));
474
477
  }
475
- :where(.ws-dir-rtl, .pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-wizard__nav-link-toggle-icon {
478
+ :where(.pf-v5-m-dir-rtl, [dir=rtl]) .pf-v5-c-wizard__nav-link-toggle-icon {
476
479
  scale: -1 1;
477
480
  }
478
481
 
@@ -335,7 +335,7 @@
335
335
  }
336
336
 
337
337
  .#{$wizard}__toggle-separator {
338
- @include pf-v5-rtl("flip-inline");
338
+ @include pf-v5-mirror-inline-on-rtl;
339
339
 
340
340
  margin-inline-start: var(--#{$wizard}__toggle-separator--MarginLeft);
341
341
  color: var(--#{$wizard}__toggle-separator--Color);
@@ -461,6 +461,12 @@
461
461
  // Common step number styles
462
462
  @at-root .#{$wizard}__toggle-num,
463
463
  &::before {
464
+ @include pf-v5-bidirectional-style(
465
+ $prop: transform,
466
+ $ltr-val: translateX(var(--#{$wizard}__nav-link--before--TranslateX)),
467
+ $rtl-val: translateX(#{pf-v5-calc-inverse(var(--#{$wizard}__nav-link--before--TranslateX))})
468
+ );
469
+
464
470
  position: absolute;
465
471
  inset-block-start: var(--#{$wizard}__nav-link--before--Top);
466
472
  inset-inline-start: 0;
@@ -474,7 +480,6 @@
474
480
  color: var(--#{$wizard}__nav-link--before--Color);
475
481
  background-color: var(--#{$wizard}__nav-link--before--BackgroundColor);
476
482
  border-radius: var(--#{$wizard}__nav-link--before--BorderRadius);
477
- transform: translateX(calc(var(--#{$wizard}__nav-link--before--TranslateX) * var(--#{$pf-global}--rtl--transform--flip)));
478
483
  }
479
484
 
480
485
  // Nav step number
@@ -530,7 +535,7 @@
530
535
  }
531
536
 
532
537
  .#{$wizard}__nav-link-toggle-icon {
533
- @include pf-v5-rtl("flip-inline");
538
+ @include pf-v5-mirror-inline-on-rtl;
534
539
 
535
540
  display: inline-block;
536
541
  transition: var(--#{$wizard}__nav-link-toggle-icon--Transition);
@@ -50,10 +50,20 @@ cssPrefix: pf-v5-c-button
50
50
  <button class="pf-v5-c-button pf-m-inline pf-m-link" type="button">Inline link</button>
51
51
  <br />
52
52
  <br />
53
+ <span>Default plain button:</span>
53
54
  <button class="pf-v5-c-button pf-m-plain" type="button" aria-label="Remove">
54
55
  <i class="fas fa-times" aria-hidden="true"></i>
55
56
  </button>
56
57
  <br />
58
+ <span>No padding plain button:</span>
59
+ <button
60
+ class="pf-v5-c-button pf-m-plain pf-m-no-padding"
61
+ type="button"
62
+ aria-label="Remove"
63
+ >
64
+ <i class="fas fa-times" aria-hidden="true"></i>
65
+ </button>
66
+ <br />
57
67
  <br />
58
68
  <button class="pf-v5-c-button pf-m-control" type="button">Control</button>
59
69
 
@@ -65,10 +75,11 @@ cssPrefix: pf-v5-c-button
65
75
  <i class="fas fa-copy" aria-hidden="true"></i>
66
76
  </button>
67
77
 
68
- <br />
69
- <br />
70
- <br />
78
+ ```
79
+
80
+ ### Small buttons
71
81
 
82
+ ```html
72
83
  <button class="pf-v5-c-button pf-m-primary pf-m-small" type="button">Primary</button>
73
84
 
74
85
  <button class="pf-v5-c-button pf-m-secondary pf-m-small" type="button">Secondary</button>
@@ -533,6 +544,7 @@ Semantic buttons and links are important for usability as well as accessibility.
533
544
  | `.pf-m-warning` | `.pf-v5-c-button` | Modifies for warning styles. |
534
545
  | `.pf-m-link` | `.pf-v5-c-button` | Modifies for link styles. This button has no background or border and is styled as a link. This button would commonly appear in a form and may include an icon. |
535
546
  | `.pf-m-plain` | `.pf-v5-c-button` | Modifies for icon styles. This button has no background or border, uses a standard text color, and is used for `.pf-m-plain` icon buttons such as close, expand, kebab, etc. |
547
+ | `.pf-m-no-padding` | `.pf-v5-c-button.pf-m-plain` | Modifies a plain button to remove padding. This modifier should only be used when the button is inline within a sentence or block of text. Adjacent plain buttons without padding should always have spacing between them. |
536
548
  | `.pf-m-inline` | `.pf-v5-c-button.pf-m-link` | Modifies for inline styles. This button is presented similar to a normal link and has no padding and is displayed inline with other inline content. When used as a `<span>`, the text will flow inline with text around it. |
537
549
  | `.pf-m-block` | `.pf-v5-c-button` | Creates a block level button. |
538
550
  | `.pf-m-control` | `.pf-v5-c-button` | Modifies for control styles. **Note:** This modifier should only be used when using buttons in the Input Group or Clipboard Copy components. |