@patternfly/react-core 5.2.0-prerelease.15 → 5.2.0-prerelease.17
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.
- package/CHANGELOG.md +11 -0
- package/components/package.json +1 -1
- package/deprecated/package.json +1 -1
- package/dist/dynamic/components/AboutModal/package.json +1 -1
- package/dist/dynamic/components/Accordion/package.json +1 -1
- package/dist/dynamic/components/ActionList/package.json +1 -1
- package/dist/dynamic/components/Alert/package.json +1 -1
- package/dist/dynamic/components/Avatar/package.json +1 -1
- package/dist/dynamic/components/BackToTop/package.json +1 -1
- package/dist/dynamic/components/Backdrop/package.json +1 -1
- package/dist/dynamic/components/BackgroundImage/package.json +1 -1
- package/dist/dynamic/components/Badge/package.json +1 -1
- package/dist/dynamic/components/Banner/package.json +1 -1
- package/dist/dynamic/components/Brand/package.json +1 -1
- package/dist/dynamic/components/Breadcrumb/package.json +1 -1
- package/dist/dynamic/components/Button/package.json +1 -1
- package/dist/dynamic/components/CalendarMonth/package.json +1 -1
- package/dist/dynamic/components/Card/package.json +1 -1
- package/dist/dynamic/components/Checkbox/package.json +1 -1
- package/dist/dynamic/components/Chip/package.json +1 -1
- package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
- package/dist/dynamic/components/CodeBlock/package.json +1 -1
- package/dist/dynamic/components/DataList/package.json +1 -1
- package/dist/dynamic/components/DatePicker/package.json +1 -1
- package/dist/dynamic/components/DescriptionList/package.json +1 -1
- package/dist/dynamic/components/Divider/package.json +1 -1
- package/dist/dynamic/components/DragDrop/package.json +1 -1
- package/dist/dynamic/components/Drawer/package.json +1 -1
- package/dist/dynamic/components/Dropdown/package.json +1 -1
- package/dist/dynamic/components/DualListSelector/package.json +1 -1
- package/dist/dynamic/components/EmptyState/package.json +1 -1
- package/dist/dynamic/components/ExpandableSection/package.json +1 -1
- package/dist/dynamic/components/FileUpload/package.json +1 -1
- package/dist/dynamic/components/Form/package.json +1 -1
- package/dist/dynamic/components/FormSelect/package.json +1 -1
- package/dist/dynamic/components/HelperText/package.json +1 -1
- package/dist/dynamic/components/Hint/package.json +1 -1
- package/dist/dynamic/components/Icon/package.json +1 -1
- package/dist/dynamic/components/InputGroup/package.json +1 -1
- package/dist/dynamic/components/JumpLinks/package.json +1 -1
- package/dist/dynamic/components/Label/package.json +1 -1
- package/dist/dynamic/components/List/package.json +1 -1
- package/dist/dynamic/components/LoginPage/package.json +1 -1
- package/dist/dynamic/components/Masthead/package.json +1 -1
- package/dist/dynamic/components/Menu/package.json +1 -1
- package/dist/dynamic/components/MenuToggle/package.json +1 -1
- package/dist/dynamic/components/Modal/package.json +1 -1
- package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
- package/dist/dynamic/components/Nav/package.json +1 -1
- package/dist/dynamic/components/NotificationBadge/package.json +1 -1
- package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
- package/dist/dynamic/components/NumberInput/package.json +1 -1
- package/dist/dynamic/components/OverflowMenu/package.json +1 -1
- package/dist/dynamic/components/Page/package.json +1 -1
- package/dist/dynamic/components/Pagination/package.json +1 -1
- package/dist/dynamic/components/Panel/package.json +1 -1
- package/dist/dynamic/components/Popover/package.json +1 -1
- package/dist/dynamic/components/Progress/package.json +1 -1
- package/dist/dynamic/components/ProgressStepper/package.json +1 -1
- package/dist/dynamic/components/Radio/package.json +1 -1
- package/dist/dynamic/components/SearchInput/package.json +1 -1
- package/dist/dynamic/components/Select/package.json +1 -1
- package/dist/dynamic/components/Sidebar/package.json +1 -1
- package/dist/dynamic/components/SimpleList/package.json +1 -1
- package/dist/dynamic/components/Skeleton/package.json +1 -1
- package/dist/dynamic/components/SkipToContent/package.json +1 -1
- package/dist/dynamic/components/Slider/package.json +1 -1
- package/dist/dynamic/components/Spinner/package.json +1 -1
- package/dist/dynamic/components/Switch/package.json +1 -1
- package/dist/dynamic/components/Tabs/package.json +1 -1
- package/dist/dynamic/components/Text/package.json +1 -1
- package/dist/dynamic/components/TextArea/package.json +1 -1
- package/dist/dynamic/components/TextInput/package.json +1 -1
- package/dist/dynamic/components/TextInputGroup/package.json +1 -1
- package/dist/dynamic/components/Tile/package.json +1 -1
- package/dist/dynamic/components/TimePicker/package.json +1 -1
- package/dist/dynamic/components/Timestamp/package.json +1 -1
- package/dist/dynamic/components/Title/package.json +1 -1
- package/dist/dynamic/components/ToggleGroup/package.json +1 -1
- package/dist/dynamic/components/Toolbar/package.json +1 -1
- package/dist/dynamic/components/Tooltip/package.json +1 -1
- package/dist/dynamic/components/TreeView/package.json +1 -1
- package/dist/dynamic/components/Truncate/package.json +1 -1
- package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
- package/dist/dynamic/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
- package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
- package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
- package/dist/dynamic/deprecated/components/Select/package.json +1 -1
- package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
- package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
- package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
- package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
- package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
- package/dist/dynamic/helpers/constants/package.json +1 -1
- package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
- package/dist/dynamic/helpers/favorites/package.json +1 -1
- package/dist/dynamic/helpers/fileUtils/package.json +1 -1
- package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
- package/dist/dynamic/helpers/package.json +1 -1
- package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
- package/dist/dynamic/helpers/typeUtils/package.json +1 -1
- package/dist/dynamic/helpers/useInterval/package.json +1 -1
- package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
- package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
- package/dist/dynamic/helpers/util/package.json +1 -1
- package/dist/dynamic/layouts/Bullseye/package.json +1 -1
- package/dist/dynamic/layouts/Flex/package.json +1 -1
- package/dist/dynamic/layouts/Gallery/package.json +1 -1
- package/dist/dynamic/layouts/Grid/package.json +1 -1
- package/dist/dynamic/layouts/Level/package.json +1 -1
- package/dist/dynamic/layouts/Split/package.json +1 -1
- package/dist/dynamic/layouts/Stack/package.json +1 -1
- package/dist/dynamic/next/components/package.json +1 -1
- package/dist/esm/components/Chip/Chip.d.ts.map +1 -1
- package/dist/esm/components/Chip/Chip.js +2 -2
- package/dist/esm/components/Chip/Chip.js.map +1 -1
- package/dist/esm/components/Drawer/DrawerPanelContent.js +4 -4
- package/dist/esm/components/Drawer/DrawerPanelContent.js.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.d.ts +2 -0
- package/dist/esm/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/esm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/esm/components/Menu/Menu.d.ts.map +1 -1
- package/dist/esm/components/Menu/Menu.js +2 -1
- package/dist/esm/components/Menu/Menu.js.map +1 -1
- package/dist/esm/components/Menu/MenuContainer.d.ts +2 -0
- package/dist/esm/components/Menu/MenuContainer.d.ts.map +1 -1
- package/dist/esm/components/Menu/MenuContainer.js.map +1 -1
- package/dist/esm/components/Nav/NavList.js +3 -3
- package/dist/esm/components/Nav/NavList.js.map +1 -1
- package/dist/esm/components/Select/Select.d.ts +2 -0
- package/dist/esm/components/Select/Select.d.ts.map +1 -1
- package/dist/esm/components/Select/Select.js.map +1 -1
- package/dist/esm/components/Slider/Slider.d.ts.map +1 -1
- package/dist/esm/components/Slider/Slider.js +2 -1
- package/dist/esm/components/Slider/Slider.js.map +1 -1
- package/dist/esm/components/Tabs/Tabs.js +3 -3
- package/dist/esm/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/helpers/Popper/Popper.d.ts +2 -1
- package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/esm/helpers/Popper/Popper.js +3 -13
- package/dist/esm/helpers/Popper/Popper.js.map +1 -1
- package/dist/esm/helpers/util.d.ts +9 -0
- package/dist/esm/helpers/util.d.ts.map +1 -1
- package/dist/esm/helpers/util.js +18 -0
- package/dist/esm/helpers/util.js.map +1 -1
- package/dist/js/components/Chip/Chip.d.ts.map +1 -1
- package/dist/js/components/Chip/Chip.js +2 -2
- package/dist/js/components/Chip/Chip.js.map +1 -1
- package/dist/js/components/Drawer/DrawerPanelContent.js +3 -3
- package/dist/js/components/Drawer/DrawerPanelContent.js.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.d.ts +2 -0
- package/dist/js/components/Dropdown/Dropdown.d.ts.map +1 -1
- package/dist/js/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/js/components/Menu/Menu.d.ts.map +1 -1
- package/dist/js/components/Menu/Menu.js +2 -1
- package/dist/js/components/Menu/Menu.js.map +1 -1
- package/dist/js/components/Menu/MenuContainer.d.ts +2 -0
- package/dist/js/components/Menu/MenuContainer.d.ts.map +1 -1
- package/dist/js/components/Menu/MenuContainer.js.map +1 -1
- package/dist/js/components/Nav/NavList.js +2 -2
- package/dist/js/components/Nav/NavList.js.map +1 -1
- package/dist/js/components/Select/Select.d.ts +2 -0
- package/dist/js/components/Select/Select.d.ts.map +1 -1
- package/dist/js/components/Select/Select.js.map +1 -1
- package/dist/js/components/Slider/Slider.d.ts.map +1 -1
- package/dist/js/components/Slider/Slider.js +2 -1
- package/dist/js/components/Slider/Slider.js.map +1 -1
- package/dist/js/components/Tabs/Tabs.js +2 -2
- package/dist/js/components/Tabs/Tabs.js.map +1 -1
- package/dist/js/helpers/Popper/Popper.d.ts +2 -1
- package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
- package/dist/js/helpers/Popper/Popper.js +5 -16
- package/dist/js/helpers/Popper/Popper.js.map +1 -1
- package/dist/js/helpers/util.d.ts +9 -0
- package/dist/js/helpers/util.d.ts.map +1 -1
- package/dist/js/helpers/util.js +20 -1
- package/dist/js/helpers/util.js.map +1 -1
- package/dist/umd/react-core.min.js +1 -1
- package/helpers/package.json +1 -1
- package/layouts/package.json +1 -1
- package/next/package.json +1 -1
- package/package.json +3 -3
- package/src/components/Chip/Chip.tsx +2 -1
- package/src/components/Chip/__tests__/Chip.test.tsx +249 -32
- package/src/components/Chip/__tests__/ChipGroup.test.tsx +288 -61
- package/src/components/Chip/__tests__/__snapshots__/Chip.test.tsx.snap +9 -209
- package/src/components/Chip/__tests__/__snapshots__/ChipGroup.test.tsx.snap +2 -313
- package/src/components/Drawer/DrawerPanelContent.tsx +4 -4
- package/src/components/Dropdown/Dropdown.tsx +2 -0
- package/src/components/Menu/Menu.tsx +2 -1
- package/src/components/Menu/MenuContainer.tsx +2 -0
- package/src/components/Nav/NavList.tsx +3 -3
- package/src/components/Select/Select.tsx +2 -0
- package/src/components/Slider/Slider.tsx +2 -1
- package/src/components/Tabs/Tabs.tsx +3 -3
- package/src/helpers/Popper/Popper.tsx +6 -17
- package/src/helpers/__mocks__/util.ts +2 -0
- package/src/helpers/util.ts +22 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
2
|
|
|
3
|
-
exports[`
|
|
3
|
+
exports[`chip group renders to match snapshot 1`] = `
|
|
4
4
|
<DocumentFragment>
|
|
5
5
|
<div
|
|
6
6
|
aria-label="Chip group category"
|
|
@@ -20,321 +20,10 @@ exports[`ChipGroup chip group default 1`] = `
|
|
|
20
20
|
<li
|
|
21
21
|
class="pf-v5-c-chip-group__list-item"
|
|
22
22
|
>
|
|
23
|
-
|
|
24
|
-
class="pf-v5-c-chip"
|
|
25
|
-
data-ouia-component-id="OUIA-Generated-Chip-1"
|
|
26
|
-
data-ouia-component-type="PF5/Chip"
|
|
27
|
-
data-ouia-safe="true"
|
|
28
|
-
>
|
|
29
|
-
<span
|
|
30
|
-
class="pf-v5-c-chip__content"
|
|
31
|
-
>
|
|
32
|
-
<span
|
|
33
|
-
class="pf-v5-c-chip__text"
|
|
34
|
-
id="pf-random-id-1"
|
|
35
|
-
>
|
|
36
|
-
1.1
|
|
37
|
-
</span>
|
|
38
|
-
</span>
|
|
39
|
-
<span
|
|
40
|
-
class="pf-v5-c-chip__actions"
|
|
41
|
-
>
|
|
42
|
-
<button
|
|
43
|
-
aria-disabled="false"
|
|
44
|
-
aria-label="close"
|
|
45
|
-
aria-labelledby="remove_pf-random-id-1 pf-random-id-1"
|
|
46
|
-
class="pf-v5-c-button pf-m-plain"
|
|
47
|
-
data-ouia-component-id="close"
|
|
48
|
-
data-ouia-component-type="PF5/Button"
|
|
49
|
-
data-ouia-safe="true"
|
|
50
|
-
id="remove_pf-random-id-1"
|
|
51
|
-
type="button"
|
|
52
|
-
>
|
|
53
|
-
<svg
|
|
54
|
-
aria-hidden="true"
|
|
55
|
-
class="pf-v5-svg"
|
|
56
|
-
fill="currentColor"
|
|
57
|
-
height="1em"
|
|
58
|
-
role="img"
|
|
59
|
-
viewBox="0 0 352 512"
|
|
60
|
-
width="1em"
|
|
61
|
-
>
|
|
62
|
-
<path
|
|
63
|
-
d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
|
|
64
|
-
/>
|
|
65
|
-
</svg>
|
|
66
|
-
</button>
|
|
67
|
-
</span>
|
|
68
|
-
</div>
|
|
23
|
+
chips
|
|
69
24
|
</li>
|
|
70
25
|
</ul>
|
|
71
26
|
</div>
|
|
72
27
|
</div>
|
|
73
28
|
</DocumentFragment>
|
|
74
29
|
`;
|
|
75
|
-
|
|
76
|
-
exports[`ChipGroup chip group with category 1`] = `
|
|
77
|
-
<DocumentFragment>
|
|
78
|
-
<div
|
|
79
|
-
aria-labelledby="pf-random-id-2"
|
|
80
|
-
class="pf-v5-c-chip-group pf-m-category"
|
|
81
|
-
data-ouia-component-type="PF5/ChipGroup"
|
|
82
|
-
data-ouia-safe="true"
|
|
83
|
-
role="group"
|
|
84
|
-
>
|
|
85
|
-
<div
|
|
86
|
-
class="pf-v5-c-chip-group__main"
|
|
87
|
-
>
|
|
88
|
-
<span
|
|
89
|
-
class="pf-v5-c-chip-group__label"
|
|
90
|
-
id="pf-random-id-2"
|
|
91
|
-
>
|
|
92
|
-
category
|
|
93
|
-
</span>
|
|
94
|
-
<ul
|
|
95
|
-
aria-labelledby="pf-random-id-2"
|
|
96
|
-
class="pf-v5-c-chip-group__list"
|
|
97
|
-
role="list"
|
|
98
|
-
>
|
|
99
|
-
<li
|
|
100
|
-
class="pf-v5-c-chip-group__list-item"
|
|
101
|
-
>
|
|
102
|
-
<div
|
|
103
|
-
class="pf-v5-c-chip"
|
|
104
|
-
data-ouia-component-id="OUIA-Generated-Chip-2"
|
|
105
|
-
data-ouia-component-type="PF5/Chip"
|
|
106
|
-
data-ouia-safe="true"
|
|
107
|
-
>
|
|
108
|
-
<span
|
|
109
|
-
class="pf-v5-c-chip__content"
|
|
110
|
-
>
|
|
111
|
-
<span
|
|
112
|
-
class="pf-v5-c-chip__text"
|
|
113
|
-
id="pf-random-id-3"
|
|
114
|
-
>
|
|
115
|
-
1.1
|
|
116
|
-
</span>
|
|
117
|
-
</span>
|
|
118
|
-
<span
|
|
119
|
-
class="pf-v5-c-chip__actions"
|
|
120
|
-
>
|
|
121
|
-
<button
|
|
122
|
-
aria-disabled="false"
|
|
123
|
-
aria-label="close"
|
|
124
|
-
aria-labelledby="remove_pf-random-id-3 pf-random-id-3"
|
|
125
|
-
class="pf-v5-c-button pf-m-plain"
|
|
126
|
-
data-ouia-component-id="close"
|
|
127
|
-
data-ouia-component-type="PF5/Button"
|
|
128
|
-
data-ouia-safe="true"
|
|
129
|
-
id="remove_pf-random-id-3"
|
|
130
|
-
type="button"
|
|
131
|
-
>
|
|
132
|
-
<svg
|
|
133
|
-
aria-hidden="true"
|
|
134
|
-
class="pf-v5-svg"
|
|
135
|
-
fill="currentColor"
|
|
136
|
-
height="1em"
|
|
137
|
-
role="img"
|
|
138
|
-
viewBox="0 0 352 512"
|
|
139
|
-
width="1em"
|
|
140
|
-
>
|
|
141
|
-
<path
|
|
142
|
-
d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
|
|
143
|
-
/>
|
|
144
|
-
</svg>
|
|
145
|
-
</button>
|
|
146
|
-
</span>
|
|
147
|
-
</div>
|
|
148
|
-
</li>
|
|
149
|
-
</ul>
|
|
150
|
-
</div>
|
|
151
|
-
</div>
|
|
152
|
-
</DocumentFragment>
|
|
153
|
-
`;
|
|
154
|
-
|
|
155
|
-
exports[`ChipGroup chip group with category and tooltip 1`] = `
|
|
156
|
-
<DocumentFragment>
|
|
157
|
-
<div
|
|
158
|
-
aria-labelledby="pf-random-id-12"
|
|
159
|
-
class="pf-v5-c-chip-group pf-m-category"
|
|
160
|
-
data-ouia-component-type="PF5/ChipGroup"
|
|
161
|
-
data-ouia-safe="true"
|
|
162
|
-
role="group"
|
|
163
|
-
>
|
|
164
|
-
<div
|
|
165
|
-
class="pf-v5-c-chip-group__main"
|
|
166
|
-
>
|
|
167
|
-
<span
|
|
168
|
-
class="pf-v5-c-chip-group__label"
|
|
169
|
-
id="pf-random-id-12"
|
|
170
|
-
>
|
|
171
|
-
A very long category name
|
|
172
|
-
</span>
|
|
173
|
-
<ul
|
|
174
|
-
aria-labelledby="pf-random-id-12"
|
|
175
|
-
class="pf-v5-c-chip-group__list"
|
|
176
|
-
role="list"
|
|
177
|
-
>
|
|
178
|
-
<li
|
|
179
|
-
class="pf-v5-c-chip-group__list-item"
|
|
180
|
-
>
|
|
181
|
-
<div
|
|
182
|
-
class="pf-v5-c-chip"
|
|
183
|
-
data-ouia-component-id="OUIA-Generated-Chip-9"
|
|
184
|
-
data-ouia-component-type="PF5/Chip"
|
|
185
|
-
data-ouia-safe="true"
|
|
186
|
-
>
|
|
187
|
-
<span
|
|
188
|
-
class="pf-v5-c-chip__content"
|
|
189
|
-
>
|
|
190
|
-
<span
|
|
191
|
-
class="pf-v5-c-chip__text"
|
|
192
|
-
id="pf-random-id-13"
|
|
193
|
-
>
|
|
194
|
-
1.1
|
|
195
|
-
</span>
|
|
196
|
-
</span>
|
|
197
|
-
<span
|
|
198
|
-
class="pf-v5-c-chip__actions"
|
|
199
|
-
>
|
|
200
|
-
<button
|
|
201
|
-
aria-disabled="false"
|
|
202
|
-
aria-label="close"
|
|
203
|
-
aria-labelledby="remove_pf-random-id-13 pf-random-id-13"
|
|
204
|
-
class="pf-v5-c-button pf-m-plain"
|
|
205
|
-
data-ouia-component-id="close"
|
|
206
|
-
data-ouia-component-type="PF5/Button"
|
|
207
|
-
data-ouia-safe="true"
|
|
208
|
-
id="remove_pf-random-id-13"
|
|
209
|
-
type="button"
|
|
210
|
-
>
|
|
211
|
-
<svg
|
|
212
|
-
aria-hidden="true"
|
|
213
|
-
class="pf-v5-svg"
|
|
214
|
-
fill="currentColor"
|
|
215
|
-
height="1em"
|
|
216
|
-
role="img"
|
|
217
|
-
viewBox="0 0 352 512"
|
|
218
|
-
width="1em"
|
|
219
|
-
>
|
|
220
|
-
<path
|
|
221
|
-
d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
|
|
222
|
-
/>
|
|
223
|
-
</svg>
|
|
224
|
-
</button>
|
|
225
|
-
</span>
|
|
226
|
-
</div>
|
|
227
|
-
</li>
|
|
228
|
-
</ul>
|
|
229
|
-
</div>
|
|
230
|
-
</div>
|
|
231
|
-
</DocumentFragment>
|
|
232
|
-
`;
|
|
233
|
-
|
|
234
|
-
exports[`ChipGroup chip group with closable category 1`] = `
|
|
235
|
-
<DocumentFragment>
|
|
236
|
-
<div
|
|
237
|
-
aria-labelledby="pf-random-id-4"
|
|
238
|
-
class="pf-v5-c-chip-group pf-m-category"
|
|
239
|
-
data-ouia-component-type="PF5/ChipGroup"
|
|
240
|
-
data-ouia-safe="true"
|
|
241
|
-
role="group"
|
|
242
|
-
>
|
|
243
|
-
<div
|
|
244
|
-
class="pf-v5-c-chip-group__main"
|
|
245
|
-
>
|
|
246
|
-
<span
|
|
247
|
-
class="pf-v5-c-chip-group__label"
|
|
248
|
-
id="pf-random-id-4"
|
|
249
|
-
>
|
|
250
|
-
category
|
|
251
|
-
</span>
|
|
252
|
-
<ul
|
|
253
|
-
aria-labelledby="pf-random-id-4"
|
|
254
|
-
class="pf-v5-c-chip-group__list"
|
|
255
|
-
role="list"
|
|
256
|
-
>
|
|
257
|
-
<li
|
|
258
|
-
class="pf-v5-c-chip-group__list-item"
|
|
259
|
-
>
|
|
260
|
-
<div
|
|
261
|
-
class="pf-v5-c-chip"
|
|
262
|
-
data-ouia-component-id="OUIA-Generated-Chip-3"
|
|
263
|
-
data-ouia-component-type="PF5/Chip"
|
|
264
|
-
data-ouia-safe="true"
|
|
265
|
-
>
|
|
266
|
-
<span
|
|
267
|
-
class="pf-v5-c-chip__content"
|
|
268
|
-
>
|
|
269
|
-
<span
|
|
270
|
-
class="pf-v5-c-chip__text"
|
|
271
|
-
id="pf-random-id-5"
|
|
272
|
-
>
|
|
273
|
-
1.1
|
|
274
|
-
</span>
|
|
275
|
-
</span>
|
|
276
|
-
<span
|
|
277
|
-
class="pf-v5-c-chip__actions"
|
|
278
|
-
>
|
|
279
|
-
<button
|
|
280
|
-
aria-disabled="false"
|
|
281
|
-
aria-label="close"
|
|
282
|
-
aria-labelledby="remove_pf-random-id-5 pf-random-id-5"
|
|
283
|
-
class="pf-v5-c-button pf-m-plain"
|
|
284
|
-
data-ouia-component-id="close"
|
|
285
|
-
data-ouia-component-type="PF5/Button"
|
|
286
|
-
data-ouia-safe="true"
|
|
287
|
-
id="remove_pf-random-id-5"
|
|
288
|
-
type="button"
|
|
289
|
-
>
|
|
290
|
-
<svg
|
|
291
|
-
aria-hidden="true"
|
|
292
|
-
class="pf-v5-svg"
|
|
293
|
-
fill="currentColor"
|
|
294
|
-
height="1em"
|
|
295
|
-
role="img"
|
|
296
|
-
viewBox="0 0 352 512"
|
|
297
|
-
width="1em"
|
|
298
|
-
>
|
|
299
|
-
<path
|
|
300
|
-
d="M242.72 256l100.07-100.07c12.28-12.28 12.28-32.19 0-44.48l-22.24-22.24c-12.28-12.28-32.19-12.28-44.48 0L176 189.28 75.93 89.21c-12.28-12.28-32.19-12.28-44.48 0L9.21 111.45c-12.28 12.28-12.28 32.19 0 44.48L109.28 256 9.21 356.07c-12.28 12.28-12.28 32.19 0 44.48l22.24 22.24c12.28 12.28 32.2 12.28 44.48 0L176 322.72l100.07 100.07c12.28 12.28 32.2 12.28 44.48 0l22.24-22.24c12.28-12.28 12.28-32.19 0-44.48L242.72 256z"
|
|
301
|
-
/>
|
|
302
|
-
</svg>
|
|
303
|
-
</button>
|
|
304
|
-
</span>
|
|
305
|
-
</div>
|
|
306
|
-
</li>
|
|
307
|
-
</ul>
|
|
308
|
-
</div>
|
|
309
|
-
<div
|
|
310
|
-
class="pf-v5-c-chip-group__close"
|
|
311
|
-
>
|
|
312
|
-
<button
|
|
313
|
-
aria-disabled="false"
|
|
314
|
-
aria-label="Close chip group"
|
|
315
|
-
aria-labelledby="remove_group_pf-random-id-4 pf-random-id-4"
|
|
316
|
-
class="pf-v5-c-button pf-m-plain"
|
|
317
|
-
data-ouia-component-id="Close chip group"
|
|
318
|
-
data-ouia-component-type="PF5/Button"
|
|
319
|
-
data-ouia-safe="true"
|
|
320
|
-
id="remove_group_pf-random-id-4"
|
|
321
|
-
type="button"
|
|
322
|
-
>
|
|
323
|
-
<svg
|
|
324
|
-
aria-hidden="true"
|
|
325
|
-
class="pf-v5-svg"
|
|
326
|
-
fill="currentColor"
|
|
327
|
-
height="1em"
|
|
328
|
-
role="img"
|
|
329
|
-
viewBox="0 0 512 512"
|
|
330
|
-
width="1em"
|
|
331
|
-
>
|
|
332
|
-
<path
|
|
333
|
-
d="M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm121.6 313.1c4.7 4.7 4.7 12.3 0 17L338 377.6c-4.7 4.7-12.3 4.7-17 0L256 312l-65.1 65.6c-4.7 4.7-12.3 4.7-17 0L134.4 338c-4.7-4.7-4.7-12.3 0-17l65.6-65-65.6-65.1c-4.7-4.7-4.7-12.3 0-17l39.6-39.6c4.7-4.7 12.3-4.7 17 0l65 65.7 65.1-65.6c4.7-4.7 12.3-4.7 17 0l39.6 39.6c4.7 4.7 4.7 12.3 0 17L312 256l65.6 65.1z"
|
|
334
|
-
/>
|
|
335
|
-
</svg>
|
|
336
|
-
</button>
|
|
337
|
-
</div>
|
|
338
|
-
</div>
|
|
339
|
-
</DocumentFragment>
|
|
340
|
-
`;
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import styles from '@patternfly/react-styles/css/components/Drawer/drawer';
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
4
|
import { DrawerColorVariant, DrawerContext } from './Drawer';
|
|
5
|
-
import { formatBreakpointMods } from '../../helpers/util';
|
|
5
|
+
import { formatBreakpointMods, getLanguageDirection } from '../../helpers/util';
|
|
6
6
|
import { GenerateId } from '../../helpers/GenerateId/GenerateId';
|
|
7
7
|
import { FocusTrap } from '../../helpers/FocusTrap/FocusTrap';
|
|
8
8
|
import cssPanelMdFlexBasis from '@patternfly/react-tokens/dist/esm/c_drawer__panel_md_FlexBasis';
|
|
@@ -111,7 +111,7 @@ export const DrawerPanelContent: React.FunctionComponent<DrawerPanelContentProps
|
|
|
111
111
|
const calcValueNow = () => {
|
|
112
112
|
let splitterPos;
|
|
113
113
|
let drawerSize;
|
|
114
|
-
const isRTL =
|
|
114
|
+
const isRTL = getLanguageDirection(panel.current) === 'rtl';
|
|
115
115
|
|
|
116
116
|
if (isInline && (position === 'end' || position === 'right')) {
|
|
117
117
|
if (isRTL) {
|
|
@@ -198,7 +198,7 @@ export const DrawerPanelContent: React.FunctionComponent<DrawerPanelContentProps
|
|
|
198
198
|
};
|
|
199
199
|
|
|
200
200
|
const handleControlMove = (e: MouseEvent | TouchEvent, controlPosition: number) => {
|
|
201
|
-
const isRTL =
|
|
201
|
+
const isRTL = getLanguageDirection(panel.current) === 'rtl';
|
|
202
202
|
|
|
203
203
|
e.stopPropagation();
|
|
204
204
|
if (!isResizing) {
|
|
@@ -264,7 +264,7 @@ export const DrawerPanelContent: React.FunctionComponent<DrawerPanelContentProps
|
|
|
264
264
|
const callbackMouseUp = React.useCallback(handleMouseup, []);
|
|
265
265
|
|
|
266
266
|
const handleKeys = (e: React.KeyboardEvent) => {
|
|
267
|
-
const isRTL =
|
|
267
|
+
const isRTL = getLanguageDirection(panel.current) === 'rtl';
|
|
268
268
|
|
|
269
269
|
const key = e.key;
|
|
270
270
|
if (
|
|
@@ -19,6 +19,8 @@ export interface DropdownPopperProps {
|
|
|
19
19
|
enableFlip?: boolean;
|
|
20
20
|
/** The container to append the popper to. Defaults to 'inline'. */
|
|
21
21
|
appendTo?: HTMLElement | (() => HTMLElement) | 'inline';
|
|
22
|
+
/** Flag to prevent the popper from overflowing its container and becoming partially obscured. */
|
|
23
|
+
preventOverflow?: boolean;
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
export interface DropdownToggleProps {
|
|
@@ -311,7 +311,8 @@ class MenuBase extends React.Component<MenuProps, MenuState> {
|
|
|
311
311
|
noHorizontalArrowHandling={
|
|
312
312
|
document.activeElement &&
|
|
313
313
|
(document.activeElement.classList.contains(breadcrumbStyles.breadcrumbLink) ||
|
|
314
|
-
document.activeElement.classList.contains(dropdownStyles.dropdownToggle)
|
|
314
|
+
document.activeElement.classList.contains(dropdownStyles.dropdownToggle) ||
|
|
315
|
+
document.activeElement.tagName === 'INPUT')
|
|
315
316
|
}
|
|
316
317
|
noEnterHandling
|
|
317
318
|
noSpaceHandling
|
|
@@ -14,6 +14,8 @@ export interface MenuPopperProps {
|
|
|
14
14
|
maxWidth?: string | 'trigger';
|
|
15
15
|
/** Enable to flip the popper when it reaches the boundary */
|
|
16
16
|
enableFlip?: boolean;
|
|
17
|
+
/** Flag to prevent the popper from overflowing its container and becoming partially obscured. */
|
|
18
|
+
preventOverflow?: boolean;
|
|
17
19
|
}
|
|
18
20
|
export interface MenuContainerProps {
|
|
19
21
|
/** Menu to be rendered */
|
|
@@ -3,7 +3,7 @@ import styles from '@patternfly/react-styles/css/components/Nav/nav';
|
|
|
3
3
|
import { css } from '@patternfly/react-styles';
|
|
4
4
|
import AngleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-left-icon';
|
|
5
5
|
import AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';
|
|
6
|
-
import { isElementInView } from '../../helpers/util';
|
|
6
|
+
import { getLanguageDirection, isElementInView } from '../../helpers/util';
|
|
7
7
|
import { NavContext } from './Nav';
|
|
8
8
|
import { PageSidebarContext } from '../Page/PageSidebar';
|
|
9
9
|
import { getResizeObserver } from '../../helpers/resizeObserver';
|
|
@@ -112,7 +112,7 @@ class NavList extends React.Component<NavListProps> {
|
|
|
112
112
|
|
|
113
113
|
componentDidMount() {
|
|
114
114
|
this.observer = getResizeObserver(this.navList.current, this.handleScrollButtons, true);
|
|
115
|
-
this.direction =
|
|
115
|
+
this.direction = getLanguageDirection(this.navList.current);
|
|
116
116
|
this.handleScrollButtons();
|
|
117
117
|
}
|
|
118
118
|
|
|
@@ -121,7 +121,7 @@ class NavList extends React.Component<NavListProps> {
|
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
componentDidUpdate() {
|
|
124
|
-
this.direction =
|
|
124
|
+
this.direction = getLanguageDirection(this.navList.current);
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
render() {
|
|
@@ -25,6 +25,8 @@ export interface SelectPopperProps {
|
|
|
25
25
|
* appendTo={document.getElementById('target')}
|
|
26
26
|
*/
|
|
27
27
|
appendTo?: HTMLElement | (() => HTMLElement) | 'inline';
|
|
28
|
+
/** Flag to prevent the popper from overflowing its container and becoming partially obscured. */
|
|
29
|
+
preventOverflow?: boolean;
|
|
28
30
|
}
|
|
29
31
|
|
|
30
32
|
export interface SelectToggleProps {
|
|
@@ -8,6 +8,7 @@ import { TextInput } from '../TextInput';
|
|
|
8
8
|
import { Tooltip } from '../Tooltip';
|
|
9
9
|
import cssSliderValue from '@patternfly/react-tokens/dist/esm/c_slider_value';
|
|
10
10
|
import cssFormControlWidthChars from '@patternfly/react-tokens/dist/esm/c_slider__value_c_form_control_width_chars';
|
|
11
|
+
import { getLanguageDirection } from '../../helpers/util';
|
|
11
12
|
|
|
12
13
|
/** Properties for creating custom steps in a slider. These properties should be passed in as
|
|
13
14
|
* an object within an array to the slider component's customSteps property.
|
|
@@ -125,7 +126,7 @@ export const Slider: React.FunctionComponent<SliderProps> = ({
|
|
|
125
126
|
let isRTL: boolean;
|
|
126
127
|
|
|
127
128
|
React.useEffect(() => {
|
|
128
|
-
isRTL =
|
|
129
|
+
isRTL = getLanguageDirection(sliderRailRef.current) === 'rtl';
|
|
129
130
|
});
|
|
130
131
|
|
|
131
132
|
React.useEffect(() => {
|
|
@@ -6,7 +6,7 @@ import { PickOptional } from '../../helpers/typeUtils';
|
|
|
6
6
|
import AngleLeftIcon from '@patternfly/react-icons/dist/esm/icons/angle-left-icon';
|
|
7
7
|
import AngleRightIcon from '@patternfly/react-icons/dist/esm/icons/angle-right-icon';
|
|
8
8
|
import PlusIcon from '@patternfly/react-icons/dist/esm/icons/plus-icon';
|
|
9
|
-
import { getUniqueId, isElementInView, formatBreakpointMods } from '../../helpers/util';
|
|
9
|
+
import { getUniqueId, isElementInView, formatBreakpointMods, getLanguageDirection } from '../../helpers/util';
|
|
10
10
|
import { TabContent } from './TabContent';
|
|
11
11
|
import { TabProps } from './Tab';
|
|
12
12
|
import { TabsContextProvider } from './TabsContext';
|
|
@@ -333,7 +333,7 @@ class Tabs extends React.Component<TabsProps, TabsState> {
|
|
|
333
333
|
if (canUseDOM) {
|
|
334
334
|
window.addEventListener('resize', this.handleScrollButtons, false);
|
|
335
335
|
}
|
|
336
|
-
this.direction =
|
|
336
|
+
this.direction = getLanguageDirection(this.tabList.current);
|
|
337
337
|
// call the handle resize function to check if scroll buttons should be shown
|
|
338
338
|
this.handleScrollButtons();
|
|
339
339
|
}
|
|
@@ -381,7 +381,7 @@ class Tabs extends React.Component<TabsProps, TabsState> {
|
|
|
381
381
|
this.setState({ showScrollButtons: false });
|
|
382
382
|
}
|
|
383
383
|
|
|
384
|
-
this.direction =
|
|
384
|
+
this.direction = getLanguageDirection(this.tabList.current);
|
|
385
385
|
}
|
|
386
386
|
|
|
387
387
|
render() {
|
|
@@ -5,6 +5,7 @@ import { Placement, Modifier } from './thirdparty/popper-core';
|
|
|
5
5
|
import { clearTimeouts } from '../util';
|
|
6
6
|
import { css } from '@patternfly/react-styles';
|
|
7
7
|
import '@patternfly/react-styles/css/components/Popper/Popper.css';
|
|
8
|
+
import { getLanguageDirection } from '../util';
|
|
8
9
|
|
|
9
10
|
const hash = {
|
|
10
11
|
left: 'right',
|
|
@@ -45,21 +46,6 @@ const getOppositePlacement = (placement: Placement): any =>
|
|
|
45
46
|
export const getOpacityTransition = (animationDuration: number) =>
|
|
46
47
|
`opacity ${animationDuration}ms cubic-bezier(.54, 1.5, .38, 1.11)`;
|
|
47
48
|
|
|
48
|
-
export const getLanguageDirection = (targetElement: HTMLElement) => {
|
|
49
|
-
const defaultDirection = 'ltr';
|
|
50
|
-
let direction = defaultDirection;
|
|
51
|
-
|
|
52
|
-
if (targetElement) {
|
|
53
|
-
direction = getComputedStyle(targetElement).getPropertyValue('direction');
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
if (['ltr', 'rtl'].includes(direction)) {
|
|
57
|
-
return direction as 'ltr' | 'rtl';
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
return defaultDirection;
|
|
61
|
-
};
|
|
62
|
-
|
|
63
49
|
export interface PopperProps {
|
|
64
50
|
/**
|
|
65
51
|
* Trigger reference element to which the popper is relatively placed to.
|
|
@@ -186,6 +172,8 @@ export interface PopperProps {
|
|
|
186
172
|
* Lifecycle function invoked when the popper has fully transitioned in.
|
|
187
173
|
*/
|
|
188
174
|
onShown?: () => void;
|
|
175
|
+
/** Flag to prevent the popper from overflowing its container and becoming partially obscured. */
|
|
176
|
+
preventOverflow?: boolean;
|
|
189
177
|
}
|
|
190
178
|
|
|
191
179
|
export const Popper: React.FunctionComponent<PopperProps> = ({
|
|
@@ -224,7 +212,8 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
|
|
|
224
212
|
onHide = () => {},
|
|
225
213
|
onMount = () => {},
|
|
226
214
|
onShow = () => {},
|
|
227
|
-
onShown = () => {}
|
|
215
|
+
onShown = () => {},
|
|
216
|
+
preventOverflow = false
|
|
228
217
|
}) => {
|
|
229
218
|
const [triggerElement, setTriggerElement] = React.useState(null);
|
|
230
219
|
const [refElement, setRefElement] = React.useState<HTMLElement>(null);
|
|
@@ -436,7 +425,7 @@ export const Popper: React.FunctionComponent<PopperProps> = ({
|
|
|
436
425
|
},
|
|
437
426
|
{
|
|
438
427
|
name: 'preventOverflow',
|
|
439
|
-
enabled:
|
|
428
|
+
enabled: preventOverflow
|
|
440
429
|
},
|
|
441
430
|
{
|
|
442
431
|
// adds attribute [data-popper-reference-hidden] to the popper element which can be used to hide it using CSS
|
package/src/helpers/util.ts
CHANGED
|
@@ -522,3 +522,25 @@ export const clearTimeouts = (timeoutRefs: React.RefObject<any>[]) => {
|
|
|
522
522
|
}
|
|
523
523
|
});
|
|
524
524
|
};
|
|
525
|
+
|
|
526
|
+
/**
|
|
527
|
+
* Helper function to get the language direction of a given element, useful for figuring out if left-to-right
|
|
528
|
+
* or right-to-left specific logic should be applied.
|
|
529
|
+
*
|
|
530
|
+
* @param {HTMLElement} targetElement - Element the helper will get the language direction of
|
|
531
|
+
* @param {'ltr' | 'rtl'} defaultDirection - Language direction to assume if one can't be determined, defaults to 'ltr'
|
|
532
|
+
* @returns {'ltr' | 'rtl'} - The language direction of the target element
|
|
533
|
+
*/
|
|
534
|
+
export const getLanguageDirection = (targetElement: HTMLElement, defaultDirection: 'ltr' | 'rtl' = 'ltr') => {
|
|
535
|
+
if (!targetElement) {
|
|
536
|
+
return defaultDirection;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
const computedDirection = getComputedStyle(targetElement).getPropertyValue('direction');
|
|
540
|
+
|
|
541
|
+
if (['ltr', 'rtl'].includes(computedDirection)) {
|
|
542
|
+
return computedDirection as 'ltr' | 'rtl';
|
|
543
|
+
}
|
|
544
|
+
|
|
545
|
+
return defaultDirection;
|
|
546
|
+
};
|