@patternfly/react-core 6.3.0-prerelease.9 → 6.3.1-prerelease.0

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 (518) hide show
  1. package/CHANGELOG.md +154 -0
  2. package/CONTRIBUTING.md +3 -5
  3. package/components/package.json +1 -1
  4. package/deprecated/package.json +1 -1
  5. package/dist/dynamic/components/AboutModal/package.json +1 -1
  6. package/dist/dynamic/components/Accordion/package.json +1 -1
  7. package/dist/dynamic/components/ActionList/package.json +1 -1
  8. package/dist/dynamic/components/Alert/package.json +1 -1
  9. package/dist/dynamic/components/Avatar/package.json +1 -1
  10. package/dist/dynamic/components/BackToTop/package.json +1 -1
  11. package/dist/dynamic/components/Backdrop/package.json +1 -1
  12. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  13. package/dist/dynamic/components/Badge/package.json +1 -1
  14. package/dist/dynamic/components/Banner/package.json +1 -1
  15. package/dist/dynamic/components/Brand/package.json +1 -1
  16. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  17. package/dist/dynamic/components/Button/package.json +1 -1
  18. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  19. package/dist/dynamic/components/Card/package.json +1 -1
  20. package/dist/dynamic/components/Checkbox/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/Content/package.json +1 -1
  24. package/dist/dynamic/components/DataList/package.json +1 -1
  25. package/dist/dynamic/components/DatePicker/package.json +1 -1
  26. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  27. package/dist/dynamic/components/Divider/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/TextArea/package.json +1 -1
  72. package/dist/dynamic/components/TextInput/package.json +1 -1
  73. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  74. package/dist/dynamic/components/TimePicker/package.json +1 -1
  75. package/dist/dynamic/components/Timestamp/package.json +1 -1
  76. package/dist/dynamic/components/Title/package.json +1 -1
  77. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  78. package/dist/dynamic/components/Toolbar/package.json +1 -1
  79. package/dist/dynamic/components/Tooltip/package.json +1 -1
  80. package/dist/dynamic/components/TreeView/package.json +1 -1
  81. package/dist/dynamic/components/Truncate/package.json +1 -1
  82. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  83. package/dist/dynamic/components/Wizard/package.json +1 -1
  84. package/dist/dynamic/deprecated/components/Chip/package.json +1 -1
  85. package/dist/dynamic/deprecated/components/DragDrop/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/DualListSelector/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/Modal/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Tile/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/package.json +1 -1
  91. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  92. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  93. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  94. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  95. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  96. package/dist/dynamic/helpers/constants/package.json +1 -1
  97. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  98. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  99. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  100. package/dist/dynamic/helpers/package.json +1 -1
  101. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  102. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  104. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  105. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  106. package/dist/dynamic/helpers/util/package.json +1 -1
  107. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  108. package/dist/dynamic/layouts/Flex/package.json +1 -1
  109. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  110. package/dist/dynamic/layouts/Grid/package.json +1 -1
  111. package/dist/dynamic/layouts/Level/package.json +1 -1
  112. package/dist/dynamic/layouts/Split/package.json +1 -1
  113. package/dist/dynamic/layouts/Stack/package.json +1 -1
  114. package/dist/dynamic/styles/package.json +1 -1
  115. package/dist/dynamic-modules.json +2 -0
  116. package/dist/esm/components/Alert/AlertGroupInline.d.ts.map +1 -1
  117. package/dist/esm/components/Alert/AlertGroupInline.js +7 -1
  118. package/dist/esm/components/Alert/AlertGroupInline.js.map +1 -1
  119. package/dist/esm/components/Button/Button.d.ts +12 -0
  120. package/dist/esm/components/Button/Button.d.ts.map +1 -1
  121. package/dist/esm/components/Button/Button.js +33 -3
  122. package/dist/esm/components/Button/Button.js.map +1 -1
  123. package/dist/esm/components/Button/hamburgerIcon.d.ts +2 -0
  124. package/dist/esm/components/Button/hamburgerIcon.d.ts.map +1 -0
  125. package/dist/esm/components/Button/hamburgerIcon.js +7 -0
  126. package/dist/esm/components/Button/hamburgerIcon.js.map +1 -0
  127. package/dist/esm/components/Card/Card.d.ts +3 -1
  128. package/dist/esm/components/Card/Card.d.ts.map +1 -1
  129. package/dist/esm/components/Card/Card.js +5 -4
  130. package/dist/esm/components/Card/Card.js.map +1 -1
  131. package/dist/esm/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  132. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js +2 -2
  133. package/dist/esm/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  134. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
  135. package/dist/esm/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  136. package/dist/esm/components/DualListSelector/DualListSelector.d.ts +5 -0
  137. package/dist/esm/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  138. package/dist/esm/components/DualListSelector/DualListSelector.js +4 -3
  139. package/dist/esm/components/DualListSelector/DualListSelector.js.map +1 -1
  140. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  141. package/dist/esm/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  142. package/dist/esm/components/DualListSelector/DualListSelectorContext.js +1 -1
  143. package/dist/esm/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  144. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  145. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
  146. package/dist/esm/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  147. package/dist/esm/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  148. package/dist/esm/components/DualListSelector/DualListSelectorTree.js +4 -1
  149. package/dist/esm/components/DualListSelector/DualListSelectorTree.js.map +1 -1
  150. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
  151. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  152. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js +8 -4
  153. package/dist/esm/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  154. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts +5 -1
  155. package/dist/esm/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  156. package/dist/esm/components/ExpandableSection/ExpandableSection.js +6 -2
  157. package/dist/esm/components/ExpandableSection/ExpandableSection.js.map +1 -1
  158. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
  159. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  160. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
  161. package/dist/esm/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  162. package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts +5 -0
  163. package/dist/esm/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  164. package/dist/esm/components/Form/FormFieldGroupExpandable.js +2 -2
  165. package/dist/esm/components/Form/FormFieldGroupExpandable.js.map +1 -1
  166. package/dist/esm/components/Form/InternalFormFieldGroup.d.ts +5 -0
  167. package/dist/esm/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  168. package/dist/esm/components/Form/InternalFormFieldGroup.js +2 -2
  169. package/dist/esm/components/Form/InternalFormFieldGroup.js.map +1 -1
  170. package/dist/esm/components/Label/Label.js +57 -57
  171. package/dist/esm/components/Label/Label.js.map +1 -1
  172. package/dist/esm/components/Menu/Menu.js +3 -3
  173. package/dist/esm/components/Menu/Menu.js.map +1 -1
  174. package/dist/esm/components/MenuToggle/MenuToggle.d.ts +2 -0
  175. package/dist/esm/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  176. package/dist/esm/components/MenuToggle/MenuToggle.js +4 -3
  177. package/dist/esm/components/MenuToggle/MenuToggle.js.map +1 -1
  178. package/dist/esm/components/Page/PageToggleButton.d.ts +4 -0
  179. package/dist/esm/components/Page/PageToggleButton.d.ts.map +1 -1
  180. package/dist/esm/components/Page/PageToggleButton.js +2 -2
  181. package/dist/esm/components/Page/PageToggleButton.js.map +1 -1
  182. package/dist/esm/components/Popover/Popover.d.ts.map +1 -1
  183. package/dist/esm/components/Popover/Popover.js +11 -1
  184. package/dist/esm/components/Popover/Popover.js.map +1 -1
  185. package/dist/esm/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
  186. package/dist/esm/components/SearchInput/AdvancedSearchMenu.js +13 -19
  187. package/dist/esm/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
  188. package/dist/esm/components/SearchInput/SearchInput.d.ts +4 -0
  189. package/dist/esm/components/SearchInput/SearchInput.d.ts.map +1 -1
  190. package/dist/esm/components/SearchInput/SearchInput.js +37 -13
  191. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  192. package/dist/esm/components/Tabs/OverflowTab.d.ts +26 -0
  193. package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -1
  194. package/dist/esm/components/Tabs/OverflowTab.js +2 -2
  195. package/dist/esm/components/Tabs/OverflowTab.js.map +1 -1
  196. package/dist/esm/components/Tabs/Tab.d.ts.map +1 -1
  197. package/dist/esm/components/Tabs/Tab.js +5 -2
  198. package/dist/esm/components/Tabs/Tab.js.map +1 -1
  199. package/dist/esm/components/Tabs/Tabs.d.ts +10 -0
  200. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  201. package/dist/esm/components/Tabs/Tabs.js +46 -12
  202. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  203. package/dist/esm/components/Tabs/TabsContext.d.ts +1 -0
  204. package/dist/esm/components/Tabs/TabsContext.d.ts.map +1 -1
  205. package/dist/esm/components/Tabs/TabsContext.js +1 -0
  206. package/dist/esm/components/Tabs/TabsContext.js.map +1 -1
  207. package/dist/esm/components/TextArea/TextArea.d.ts.map +1 -1
  208. package/dist/esm/components/TextArea/TextArea.js +4 -3
  209. package/dist/esm/components/TextArea/TextArea.js.map +1 -1
  210. package/dist/esm/components/TreeView/TreeView.d.ts +5 -0
  211. package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
  212. package/dist/esm/components/TreeView/TreeView.js +5 -5
  213. package/dist/esm/components/TreeView/TreeView.js.map +1 -1
  214. package/dist/esm/components/TreeView/TreeViewListItem.d.ts +5 -0
  215. package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  216. package/dist/esm/components/TreeView/TreeViewListItem.js +8 -4
  217. package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
  218. package/dist/esm/components/TreeView/TreeViewRoot.d.ts.map +1 -1
  219. package/dist/esm/components/TreeView/TreeViewRoot.js +2 -2
  220. package/dist/esm/components/TreeView/TreeViewRoot.js.map +1 -1
  221. package/dist/esm/components/Truncate/Truncate.d.ts +11 -8
  222. package/dist/esm/components/Truncate/Truncate.d.ts.map +1 -1
  223. package/dist/esm/components/Truncate/Truncate.js +16 -9
  224. package/dist/esm/components/Truncate/Truncate.js.map +1 -1
  225. package/dist/esm/demos/DashboardHeader.d.ts.map +1 -1
  226. package/dist/esm/demos/DashboardHeader.js +1 -2
  227. package/dist/esm/demos/DashboardHeader.js.map +1 -1
  228. package/dist/esm/demos/sampleData.d.ts.map +1 -1
  229. package/dist/esm/demos/sampleData.js +225 -226
  230. package/dist/esm/demos/sampleData.js.map +1 -1
  231. package/dist/esm/demos/sampleDataRTL.d.ts +7 -0
  232. package/dist/esm/demos/sampleDataRTL.d.ts.map +1 -0
  233. package/dist/esm/demos/sampleDataRTL.js +128 -0
  234. package/dist/esm/demos/sampleDataRTL.js.map +1 -0
  235. package/dist/esm/helpers/KeyboardHandler.js +3 -2
  236. package/dist/esm/helpers/KeyboardHandler.js.map +1 -1
  237. package/dist/esm/helpers/Popper/Popper.d.ts.map +1 -1
  238. package/dist/esm/helpers/Popper/Popper.js +1 -0
  239. package/dist/esm/helpers/Popper/Popper.js.map +1 -1
  240. package/dist/esm/helpers/util.d.ts +17 -0
  241. package/dist/esm/helpers/util.d.ts.map +1 -1
  242. package/dist/esm/helpers/util.js +36 -0
  243. package/dist/esm/helpers/util.js.map +1 -1
  244. package/dist/js/components/Alert/AlertGroupInline.d.ts.map +1 -1
  245. package/dist/js/components/Alert/AlertGroupInline.js +6 -0
  246. package/dist/js/components/Alert/AlertGroupInline.js.map +1 -1
  247. package/dist/js/components/Button/Button.d.ts +12 -0
  248. package/dist/js/components/Button/Button.d.ts.map +1 -1
  249. package/dist/js/components/Button/Button.js +33 -3
  250. package/dist/js/components/Button/Button.js.map +1 -1
  251. package/dist/js/components/Button/hamburgerIcon.d.ts +2 -0
  252. package/dist/js/components/Button/hamburgerIcon.d.ts.map +1 -0
  253. package/dist/js/components/Button/hamburgerIcon.js +11 -0
  254. package/dist/js/components/Button/hamburgerIcon.js.map +1 -0
  255. package/dist/js/components/Card/Card.d.ts +3 -1
  256. package/dist/js/components/Card/Card.d.ts.map +1 -1
  257. package/dist/js/components/Card/Card.js +4 -4
  258. package/dist/js/components/Card/Card.js.map +1 -1
  259. package/dist/js/components/ClipboardCopy/ClipboardCopy.d.ts.map +1 -1
  260. package/dist/js/components/ClipboardCopy/ClipboardCopy.js +2 -2
  261. package/dist/js/components/ClipboardCopy/ClipboardCopy.js.map +1 -1
  262. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js +1 -1
  263. package/dist/js/components/ClipboardCopy/ClipboardCopyToggle.js.map +1 -1
  264. package/dist/js/components/DualListSelector/DualListSelector.d.ts +5 -0
  265. package/dist/js/components/DualListSelector/DualListSelector.d.ts.map +1 -1
  266. package/dist/js/components/DualListSelector/DualListSelector.js +4 -3
  267. package/dist/js/components/DualListSelector/DualListSelector.js.map +1 -1
  268. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts +1 -0
  269. package/dist/js/components/DualListSelector/DualListSelectorContext.d.ts.map +1 -1
  270. package/dist/js/components/DualListSelector/DualListSelectorContext.js +1 -1
  271. package/dist/js/components/DualListSelector/DualListSelectorContext.js.map +1 -1
  272. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.d.ts.map +1 -1
  273. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js +1 -1
  274. package/dist/js/components/DualListSelector/DualListSelectorListWrapper.js.map +1 -1
  275. package/dist/js/components/DualListSelector/DualListSelectorTree.d.ts.map +1 -1
  276. package/dist/js/components/DualListSelector/DualListSelectorTree.js +4 -1
  277. package/dist/js/components/DualListSelector/DualListSelectorTree.js.map +1 -1
  278. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts +5 -0
  279. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.d.ts.map +1 -1
  280. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js +7 -3
  281. package/dist/js/components/DualListSelector/DualListSelectorTreeItem.js.map +1 -1
  282. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts +5 -1
  283. package/dist/js/components/ExpandableSection/ExpandableSection.d.ts.map +1 -1
  284. package/dist/js/components/ExpandableSection/ExpandableSection.js +6 -2
  285. package/dist/js/components/ExpandableSection/ExpandableSection.js.map +1 -1
  286. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts +2 -0
  287. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.d.ts.map +1 -1
  288. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js +4 -3
  289. package/dist/js/components/ExpandableSection/ExpandableSectionToggle.js.map +1 -1
  290. package/dist/js/components/Form/FormFieldGroupExpandable.d.ts +5 -0
  291. package/dist/js/components/Form/FormFieldGroupExpandable.d.ts.map +1 -1
  292. package/dist/js/components/Form/FormFieldGroupExpandable.js +2 -2
  293. package/dist/js/components/Form/FormFieldGroupExpandable.js.map +1 -1
  294. package/dist/js/components/Form/InternalFormFieldGroup.d.ts +5 -0
  295. package/dist/js/components/Form/InternalFormFieldGroup.d.ts.map +1 -1
  296. package/dist/js/components/Form/InternalFormFieldGroup.js +2 -2
  297. package/dist/js/components/Form/InternalFormFieldGroup.js.map +1 -1
  298. package/dist/js/components/Label/Label.js +57 -57
  299. package/dist/js/components/Label/Label.js.map +1 -1
  300. package/dist/js/components/Menu/Menu.js +3 -3
  301. package/dist/js/components/Menu/Menu.js.map +1 -1
  302. package/dist/js/components/MenuToggle/MenuToggle.d.ts +2 -0
  303. package/dist/js/components/MenuToggle/MenuToggle.d.ts.map +1 -1
  304. package/dist/js/components/MenuToggle/MenuToggle.js +4 -3
  305. package/dist/js/components/MenuToggle/MenuToggle.js.map +1 -1
  306. package/dist/js/components/Page/PageToggleButton.d.ts +4 -0
  307. package/dist/js/components/Page/PageToggleButton.d.ts.map +1 -1
  308. package/dist/js/components/Page/PageToggleButton.js +2 -2
  309. package/dist/js/components/Page/PageToggleButton.js.map +1 -1
  310. package/dist/js/components/Popover/Popover.d.ts.map +1 -1
  311. package/dist/js/components/Popover/Popover.js +11 -1
  312. package/dist/js/components/Popover/Popover.js.map +1 -1
  313. package/dist/js/components/SearchInput/AdvancedSearchMenu.d.ts.map +1 -1
  314. package/dist/js/components/SearchInput/AdvancedSearchMenu.js +12 -18
  315. package/dist/js/components/SearchInput/AdvancedSearchMenu.js.map +1 -1
  316. package/dist/js/components/SearchInput/SearchInput.d.ts +4 -0
  317. package/dist/js/components/SearchInput/SearchInput.d.ts.map +1 -1
  318. package/dist/js/components/SearchInput/SearchInput.js +36 -12
  319. package/dist/js/components/SearchInput/SearchInput.js.map +1 -1
  320. package/dist/js/components/Tabs/OverflowTab.d.ts +26 -0
  321. package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -1
  322. package/dist/js/components/Tabs/OverflowTab.js +2 -2
  323. package/dist/js/components/Tabs/OverflowTab.js.map +1 -1
  324. package/dist/js/components/Tabs/Tab.d.ts.map +1 -1
  325. package/dist/js/components/Tabs/Tab.js +4 -1
  326. package/dist/js/components/Tabs/Tab.js.map +1 -1
  327. package/dist/js/components/Tabs/Tabs.d.ts +10 -0
  328. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  329. package/dist/js/components/Tabs/Tabs.js +45 -11
  330. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  331. package/dist/js/components/Tabs/TabsContext.d.ts +1 -0
  332. package/dist/js/components/Tabs/TabsContext.d.ts.map +1 -1
  333. package/dist/js/components/Tabs/TabsContext.js +1 -0
  334. package/dist/js/components/Tabs/TabsContext.js.map +1 -1
  335. package/dist/js/components/TextArea/TextArea.d.ts.map +1 -1
  336. package/dist/js/components/TextArea/TextArea.js +4 -3
  337. package/dist/js/components/TextArea/TextArea.js.map +1 -1
  338. package/dist/js/components/TreeView/TreeView.d.ts +5 -0
  339. package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
  340. package/dist/js/components/TreeView/TreeView.js +5 -5
  341. package/dist/js/components/TreeView/TreeView.js.map +1 -1
  342. package/dist/js/components/TreeView/TreeViewListItem.d.ts +5 -0
  343. package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  344. package/dist/js/components/TreeView/TreeViewListItem.js +7 -3
  345. package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
  346. package/dist/js/components/TreeView/TreeViewRoot.d.ts.map +1 -1
  347. package/dist/js/components/TreeView/TreeViewRoot.js +2 -2
  348. package/dist/js/components/TreeView/TreeViewRoot.js.map +1 -1
  349. package/dist/js/components/Truncate/Truncate.d.ts +11 -8
  350. package/dist/js/components/Truncate/Truncate.d.ts.map +1 -1
  351. package/dist/js/components/Truncate/Truncate.js +15 -9
  352. package/dist/js/components/Truncate/Truncate.js.map +1 -1
  353. package/dist/js/demos/DashboardHeader.d.ts.map +1 -1
  354. package/dist/js/demos/DashboardHeader.js +1 -2
  355. package/dist/js/demos/DashboardHeader.js.map +1 -1
  356. package/dist/js/demos/sampleData.d.ts.map +1 -1
  357. package/dist/js/demos/sampleData.js +225 -226
  358. package/dist/js/demos/sampleData.js.map +1 -1
  359. package/dist/js/demos/sampleDataRTL.d.ts +7 -0
  360. package/dist/js/demos/sampleDataRTL.d.ts.map +1 -0
  361. package/dist/js/demos/sampleDataRTL.js +131 -0
  362. package/dist/js/demos/sampleDataRTL.js.map +1 -0
  363. package/dist/js/helpers/KeyboardHandler.js +3 -2
  364. package/dist/js/helpers/KeyboardHandler.js.map +1 -1
  365. package/dist/js/helpers/Popper/Popper.d.ts.map +1 -1
  366. package/dist/js/helpers/Popper/Popper.js +1 -0
  367. package/dist/js/helpers/Popper/Popper.js.map +1 -1
  368. package/dist/js/helpers/util.d.ts +17 -0
  369. package/dist/js/helpers/util.d.ts.map +1 -1
  370. package/dist/js/helpers/util.js +39 -1
  371. package/dist/js/helpers/util.js.map +1 -1
  372. package/dist/styles/assets/images/icon-help.hbs +3 -0
  373. package/dist/styles/assets/images/icon-outlined-star.hbs +3 -0
  374. package/dist/styles/assets/images/icon-star.hbs +3 -0
  375. package/dist/styles/base-no-reset.css +52 -11
  376. package/dist/styles/base.css +52 -11
  377. package/dist/umd/assets/{output-iWrWEXUG.css → output-CQ44UfaW.css} +20162 -19420
  378. package/dist/umd/react-core.min.js +3 -3
  379. package/helpers/package.json +1 -1
  380. package/layouts/package.json +1 -1
  381. package/next/package.json +1 -1
  382. package/package.json +6 -6
  383. package/src/components/Alert/AlertGroupInline.tsx +13 -2
  384. package/src/components/Button/Button.tsx +78 -5
  385. package/src/components/Button/__tests__/Button.test.tsx +380 -74
  386. package/src/components/Button/__tests__/__snapshots__/Button.test.tsx.snap +1 -1
  387. package/src/components/Button/examples/Button.md +57 -14
  388. package/src/components/Button/examples/ButtonFavorite.tsx +18 -0
  389. package/src/components/Button/examples/ButtonHamburger.tsx +9 -0
  390. package/src/components/Button/examples/ButtonSettings.tsx +10 -0
  391. package/src/components/Button/hamburgerIcon.tsx +13 -0
  392. package/src/components/Card/Card.tsx +9 -3
  393. package/src/components/Card/__tests__/Card.test.tsx +11 -0
  394. package/src/components/Card/examples/Card.md +1 -1
  395. package/src/components/Card/examples/CardSelectable.tsx +73 -60
  396. package/src/components/Card/examples/CardSingleSelectable.tsx +65 -48
  397. package/src/components/ClipboardCopy/ClipboardCopy.tsx +2 -1
  398. package/src/components/ClipboardCopy/ClipboardCopyToggle.tsx +1 -1
  399. package/src/components/ClipboardCopy/__tests__/ClipboardCopyToggle.test.tsx +7 -1
  400. package/src/components/ClipboardCopy/__tests__/__snapshots__/ClipboardCopyToggle.test.tsx.snap +0 -1
  401. package/src/components/DualListSelector/DualListSelector.tsx +18 -4
  402. package/src/components/DualListSelector/DualListSelectorContext.ts +2 -1
  403. package/src/components/DualListSelector/DualListSelectorListWrapper.tsx +8 -5
  404. package/src/components/DualListSelector/DualListSelectorTree.tsx +4 -0
  405. package/src/components/DualListSelector/DualListSelectorTreeItem.tsx +17 -2
  406. package/src/components/DualListSelector/__tests__/DualListSelector.test.tsx +32 -1
  407. package/src/components/DualListSelector/__tests__/DualListSelectorTreeItem.test.tsx +55 -0
  408. package/src/components/DualListSelector/examples/DualListSelectorTree.tsx +1 -1
  409. package/src/components/ExpandableSection/ExpandableSection.tsx +13 -1
  410. package/src/components/ExpandableSection/ExpandableSectionToggle.tsx +5 -1
  411. package/src/components/ExpandableSection/__tests__/ExpandableSection.test.tsx +85 -23
  412. package/src/components/ExpandableSection/__tests__/ExpandableSectionToggle.test.tsx +32 -0
  413. package/src/components/ExpandableSection/__tests__/__snapshots__/ExpandableSection.test.tsx.snap +1 -63
  414. package/src/components/ExpandableSection/examples/ExpandableSection.md +2 -0
  415. package/src/components/ExpandableSection/examples/ExpandableSectionDetached.tsx +1 -1
  416. package/src/components/Form/FormFieldGroupExpandable.tsx +7 -0
  417. package/src/components/Form/InternalFormFieldGroup.tsx +19 -3
  418. package/src/components/Form/__tests__/FormFieldGroupExpandable.test.tsx +55 -0
  419. package/src/components/Form/examples/FormFieldGroups.tsx +7 -1
  420. package/src/components/Label/Label.tsx +63 -63
  421. package/src/components/Masthead/examples/MastheadBasic.tsx +1 -2
  422. package/src/components/Masthead/examples/MastheadBasicMixedContent.tsx +1 -2
  423. package/src/components/Masthead/examples/MastheadDisplayInline.tsx +1 -2
  424. package/src/components/Masthead/examples/MastheadDisplayStack.tsx +1 -2
  425. package/src/components/Masthead/examples/MastheadDisplayStackInlineResponsive.tsx +1 -2
  426. package/src/components/Masthead/examples/MastheadInsets.tsx +1 -2
  427. package/src/components/Masthead/examples/MastheadLogoCustomComponent.tsx +1 -2
  428. package/src/components/Menu/Menu.tsx +3 -3
  429. package/src/components/MenuToggle/MenuToggle.tsx +6 -1
  430. package/src/components/MenuToggle/__tests__/MenuToggle.test.tsx +59 -45
  431. package/src/components/MenuToggle/__tests__/__snapshots__/MenuToggle.test.tsx.snap +9 -9
  432. package/src/components/MenuToggle/examples/MenuToggle.md +14 -30
  433. package/src/components/MenuToggle/examples/MenuToggleCustomIcon.tsx +17 -0
  434. package/src/components/MenuToggle/examples/MenuToggleSettings.tsx +8 -0
  435. package/src/components/Page/PageToggleButton.tsx +9 -2
  436. package/src/components/Page/examples/Page.md +1 -1
  437. package/src/components/Page/examples/PageCenteredSection.tsx +4 -8
  438. package/src/components/Page/examples/PageGroupSection.tsx +2 -5
  439. package/src/components/Page/examples/PageMainSectionPadding.tsx +2 -5
  440. package/src/components/Page/examples/PageMainSectionVariations.tsx +2 -5
  441. package/src/components/Page/examples/PageMultipleSidebarBody.tsx +2 -5
  442. package/src/components/Page/examples/PageUncontrolledNav.tsx +1 -4
  443. package/src/components/Page/examples/PageVerticalNav.tsx +2 -5
  444. package/src/components/Page/examples/PageWithOrWithoutFill.tsx +2 -5
  445. package/src/components/Popover/Popover.tsx +13 -1
  446. package/src/components/SearchInput/AdvancedSearchMenu.tsx +15 -23
  447. package/src/components/SearchInput/SearchInput.tsx +111 -15
  448. package/src/components/SearchInput/__tests__/SearchInput.test.tsx +84 -0
  449. package/src/components/SearchInput/examples/SearchInput.md +11 -2
  450. package/src/components/SearchInput/examples/SearchInputWithExpandable.tsx +6 -1
  451. package/src/components/Skeleton/examples/SkeletonText.tsx +0 -1
  452. package/src/components/Tabs/OverflowTab.tsx +29 -0
  453. package/src/components/Tabs/Tab.tsx +6 -2
  454. package/src/components/Tabs/Tabs.tsx +76 -11
  455. package/src/components/Tabs/TabsContext.ts +2 -0
  456. package/src/components/Tabs/__tests__/Tabs.test.tsx +65 -1
  457. package/src/components/Tabs/__tests__/__snapshots__/Tabs.test.tsx.snap +39 -26
  458. package/src/components/Tabs/examples/Tabs.md +1 -1
  459. package/src/components/TextArea/TextArea.tsx +5 -3
  460. package/src/components/TextArea/__tests__/__snapshots__/TextArea.test.tsx.snap +1 -1
  461. package/src/components/Timestamp/examples/TimestampBasicFormats.tsx +1 -1
  462. package/src/components/Timestamp/examples/TimestampDefaultTooltip.tsx +1 -1
  463. package/src/components/TreeView/TreeView.tsx +9 -0
  464. package/src/components/TreeView/TreeViewListItem.tsx +18 -5
  465. package/src/components/TreeView/TreeViewRoot.tsx +4 -2
  466. package/src/components/TreeView/__tests__/TreeView.test.tsx +8 -1
  467. package/src/components/TreeView/__tests__/TreeViewList.test.tsx +39 -0
  468. package/src/components/TreeView/__tests__/TreeViewListItem.test.tsx +17 -3
  469. package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +3 -0
  470. package/src/components/TreeView/examples/TreeViewCompact.tsx +1 -1
  471. package/src/components/TreeView/examples/TreeViewCompactNoBackground.tsx +8 -1
  472. package/src/components/TreeView/examples/TreeViewGuides.tsx +1 -1
  473. package/src/components/TreeView/examples/TreeViewMultiselectable.tsx +1 -0
  474. package/src/components/TreeView/examples/TreeViewSelectionExpansion.tsx +1 -0
  475. package/src/components/TreeView/examples/TreeViewSingleSelectable.tsx +1 -0
  476. package/src/components/TreeView/examples/TreeViewWithActionItems.tsx +1 -0
  477. package/src/components/TreeView/examples/TreeViewWithBadges.tsx +1 -0
  478. package/src/components/TreeView/examples/TreeViewWithCheckboxes.tsx +9 -1
  479. package/src/components/TreeView/examples/TreeViewWithCustomBadges.tsx +1 -0
  480. package/src/components/TreeView/examples/TreeViewWithIconPerItem.tsx +1 -0
  481. package/src/components/TreeView/examples/TreeViewWithIcons.tsx +1 -0
  482. package/src/components/TreeView/examples/TreeViewWithMemoization.tsx +1 -0
  483. package/src/components/TreeView/examples/TreeViewWithSearch.tsx +1 -0
  484. package/src/components/Truncate/Truncate.tsx +40 -19
  485. package/src/components/Truncate/__tests__/Truncate.test.tsx +24 -0
  486. package/src/components/Truncate/examples/Truncate.md +8 -0
  487. package/src/components/Truncate/examples/TruncateLinks.tsx +22 -0
  488. package/src/demos/CardDemos.md +1 -1
  489. package/src/demos/DashboardHeader.tsx +2 -5
  490. package/src/demos/NotificationDrawer/examples/NotificationDrawerBasic.tsx +2 -5
  491. package/src/demos/NotificationDrawer/examples/NotificationDrawerGrouped.tsx +2 -5
  492. package/src/demos/RTL/RTL.md +1 -0
  493. package/src/demos/RTL/examples/PaginatedTable.tsx +18 -53
  494. package/src/demos/examples/Card/CardAggregateStatus.tsx +2 -6
  495. package/src/demos/examples/Card/CardDetails.tsx +2 -3
  496. package/src/demos/examples/Card/CardEventsView.tsx +2 -3
  497. package/src/demos/examples/Card/CardLogView.tsx +2 -3
  498. package/src/demos/examples/Card/CardStatus.tsx +0 -1
  499. package/src/demos/examples/Card/CardUtilizationDemo3.tsx +0 -1
  500. package/src/demos/examples/Masthead/MastheadWithHorizontalNav.tsx +1 -1
  501. package/src/demos/examples/Masthead/MastheadWithUtilitiesAndUserDropdownMenu.tsx +2 -5
  502. package/src/demos/examples/Nav/NavFlyout.tsx +3 -6
  503. package/src/demos/examples/Nav/NavHorizontal.tsx +1 -1
  504. package/src/demos/examples/Nav/NavHorizontalWithSubnav.tsx +2 -5
  505. package/src/demos/examples/Nav/NavManual.tsx +3 -6
  506. package/src/demos/examples/Page/PageContextSelector.tsx +3 -6
  507. package/src/demos/examples/Page/PageStickySectionBreadcrumb.tsx +2 -5
  508. package/src/demos/examples/Page/PageStickySectionGroup.tsx +2 -5
  509. package/src/demos/examples/Page/PageStickySectionGroupAlternate.tsx +2 -5
  510. package/src/demos/examples/Toolbar/ConsoleLogViewerToolbar.tsx +2 -3
  511. package/src/demos/examples/Wizard/InPageWithDrawer.tsx +1 -4
  512. package/src/demos/examples/Wizard/InPageWithDrawerInformationalStep.tsx +1 -4
  513. package/src/demos/sampleData.tsx +225 -227
  514. package/src/demos/sampleDataRTL.tsx +133 -0
  515. package/src/helpers/KeyboardHandler.tsx +2 -2
  516. package/src/helpers/Popper/Popper.tsx +1 -0
  517. package/src/helpers/util.ts +45 -0
  518. package/src/demos/RTL/examples/PaginatedTable.jsx +0 -504
@@ -1,504 +0,0 @@
1
- import { Fragment, useEffect, useState } from 'react';
2
- import {
3
- Avatar,
4
- Brand,
5
- Breadcrumb,
6
- BreadcrumbItem,
7
- Button,
8
- ButtonVariant,
9
- Card,
10
- Content,
11
- Divider,
12
- Dropdown,
13
- DropdownGroup,
14
- DropdownItem,
15
- DropdownList,
16
- Icon,
17
- Label,
18
- Masthead,
19
- MastheadMain,
20
- MastheadLogo,
21
- MastheadContent,
22
- MastheadBrand,
23
- MastheadToggle,
24
- MenuToggle,
25
- Nav,
26
- NavItem,
27
- NavList,
28
- Page,
29
- PageBreadcrumb,
30
- PageSection,
31
- PageSidebar,
32
- PageSidebarBody,
33
- PageToggleButton,
34
- Pagination,
35
- PaginationVariant,
36
- Toolbar,
37
- ToolbarContent,
38
- ToolbarGroup,
39
- ToolbarItem,
40
- Truncate
41
- } from '@patternfly/react-core';
42
-
43
- import { Table, Thead, Tr, Th, Tbody, Td } from '@patternfly/react-table';
44
- import translationsEn from './examples/translations.en.json';
45
- import translationsHe from './examples/translations.he.json';
46
- import AlignRightIcon from '@patternfly/react-icons/dist/esm/icons/align-right-icon';
47
- import ToolsIcon from '@patternfly/react-icons/dist/esm/icons/tools-icon';
48
- import ClockIcon from '@patternfly/react-icons/dist/esm/icons/clock-icon';
49
- import WalkingIcon from '@patternfly/react-icons/dist/esm/icons/walking-icon';
50
- import pfLogo from '@patternfly/react-core/src/demos/assets/PF-HorizontalLogo-Color.svg';
51
- import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
52
- import CogIcon from '@patternfly/react-icons/dist/esm/icons/cog-icon';
53
- import QuestionCircleIcon from '@patternfly/react-icons/dist/esm/icons/question-circle-icon';
54
- import HelpIcon from '@patternfly/react-icons/dist/esm/icons/help-icon';
55
- import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
56
- import HandPaperIcon from '@patternfly/react-icons/dist/esm/icons/hand-paper-icon';
57
- import imgAvatar from '@patternfly/react-core/src/components/assets/avatarImg.svg';
58
-
59
- export const PaginatedTableAction = () => {
60
- const [translation, setTranslation] = useState(translationsEn);
61
- const [page, setPage] = useState(1);
62
- const [perPage, setPerPage] = useState(10);
63
-
64
- const columns = [
65
- translation.table.columns.servers,
66
- translation.table.columns.status,
67
- translation.table.columns.location,
68
- translation.table.columns.modified,
69
- translation.table.columns.url
70
- ];
71
-
72
- const numRows = 25;
73
- const getRandomInteger = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min;
74
- const createRows = () => {
75
- const rows = [];
76
- for (let i = 0; i < numRows; i++) {
77
- const num = i + 1;
78
- const rowObj = {
79
- name: translation.table.rows.node + num,
80
- status: [
81
- translation.table.rows.status.stopped,
82
- translation.table.rows.status.running,
83
- translation.table.rows.status.down,
84
- translation.table.rows.status.needsMaintenance
85
- ][getRandomInteger(0, 3)],
86
- location: [
87
- translation.table.rows.locations.raleigh,
88
- translation.table.rows.locations.boston,
89
- translation.table.rows.locations.atlanta,
90
- translation.table.rows.locations.sanFrancisco
91
- ][getRandomInteger(0, 3)],
92
- lastModified: [
93
- translation.table.rows.lastModified.oneHr,
94
- translation.table.rows.lastModified.threeHrs,
95
- translation.table.rows.lastModified.fiveHrs,
96
- translation.table.rows.lastModified.sevenMins,
97
- translation.table.rows.lastModified.fortyTwoMins,
98
- translation.table.rows.lastModified.twoDays,
99
- translation.table.rows.lastModified.oneMonth
100
- ][getRandomInteger(0, 6)],
101
- url: 'http://www.redhat.com/en/office-locations/node' + num
102
- };
103
- rows.push(rowObj);
104
- }
105
-
106
- return rows;
107
- };
108
-
109
- const rows = createRows();
110
- const [managedRows, setManagedRows] = useState(rows);
111
- const [paginatedRows, setPaginatedRows] = useState(rows.slice(0, 10));
112
- const [isDirRTL, setIsDirRTL] = useState(false);
113
-
114
- const capitalize = (input) => input[0].toUpperCase() + input.substring(1);
115
-
116
- const switchTranslation = () => {
117
- setIsDirRTL((prevIsDirRTL) => !prevIsDirRTL);
118
- setTranslation((prevTranslation) => (prevTranslation === translationsEn ? translationsHe : translationsEn));
119
- };
120
-
121
- useEffect(() => {
122
- const newRows = createRows();
123
- setManagedRows(newRows);
124
- setPaginatedRows(newRows.slice((page - 1) * perPage, page * perPage));
125
- }, [translation]);
126
-
127
- useEffect(() => {
128
- const html = document.querySelector('html');
129
- html.dir = isDirRTL ? 'rtl' : 'ltr';
130
- }, [isDirRTL]);
131
-
132
- // Pagination logic
133
-
134
- const handleSetPage = (_evt, newPage, _perPage, startIdx, endIdx) => {
135
- setPaginatedRows(managedRows.slice(startIdx, endIdx));
136
- setPage(newPage);
137
- };
138
-
139
- const handlePerPageSelect = (_evt, newPerPage, _newPage, startIdx, endIdx) => {
140
- setPaginatedRows(managedRows.slice(startIdx, endIdx));
141
- setPerPage(newPerPage);
142
- };
143
-
144
- const renderPagination = (variant) => {
145
- const { pagination } = translation;
146
-
147
- return (
148
- <Pagination
149
- itemCount={managedRows.length}
150
- page={page}
151
- perPage={perPage}
152
- onSetPage={handleSetPage}
153
- onPerPageSelect={handlePerPageSelect}
154
- variant={variant}
155
- titles={{
156
- paginationAriaLabel: pagination?.[`${variant}VariantAriaLabel`] || `${variant} pagination`,
157
- ofWord: pagination?.ofWord,
158
- items: pagination?.items,
159
- perPageSuffix: pagination?.perPageSuffix,
160
- toNextPageAriaLabel: pagination?.toNextPageAriaLabel,
161
- toPreviousPageAriaLabel: pagination?.toPreviousPageAriaLabel,
162
- toFirstPageAriaLabel: pagination?.toFirstPageAriaLabel,
163
- toLastPageAriaLabel: pagination?.perPageSuffix,
164
- currPageAriaLabel: pagination?.currPageAriaLabel
165
- }}
166
- />
167
- );
168
- };
169
-
170
- const breadcrumbItems = {
171
- home: {
172
- url: '#home'
173
- },
174
- category: {
175
- url: '#category'
176
- },
177
- subCategory: {
178
- url: 'sub-category'
179
- }
180
- };
181
-
182
- const renderLabel = (labelText) => {
183
- switch (labelText) {
184
- case 'Running':
185
- case 'רץ':
186
- return (
187
- <Label
188
- color="green"
189
- icon={
190
- <Icon shouldMirrorRTL>
191
- <WalkingIcon />
192
- </Icon>
193
- }
194
- >
195
- {translation.table.rows.status.running}
196
- </Label>
197
- );
198
- case 'Stopped':
199
- case 'עצר':
200
- return (
201
- <Label
202
- icon={
203
- <Icon shouldMirrorRTL>
204
- <HandPaperIcon />
205
- </Icon>
206
- }
207
- color="red"
208
- >
209
- {translation.table.rows.status.stopped}
210
- </Label>
211
- );
212
- case 'Needs maintenance':
213
- case 'זקוק לתחזוקה':
214
- return (
215
- <Label icon={<ToolsIcon />} color="blue">
216
- {translation.table.rows.status.needsMaintenance}
217
- </Label>
218
- );
219
- case 'Down':
220
- case 'מטה':
221
- return (
222
- <Label icon={<ClockIcon />} color="orange">
223
- {translation.table.rows.status.down}
224
- </Label>
225
- );
226
- }
227
- };
228
-
229
- const toolbarItems = (
230
- <Fragment>
231
- <Toolbar id="rtl-paginated-table">
232
- <ToolbarContent>
233
- <ToolbarItem>
234
- <Button
235
- variant="primary"
236
- icon={
237
- <Icon shouldMirrorRTL>
238
- <AlignRightIcon />
239
- </Icon>
240
- }
241
- iconPosition="end"
242
- onClick={switchTranslation}
243
- >
244
- {translation.switchBtn}
245
- </Button>
246
- </ToolbarItem>
247
- <ToolbarItem variant="pagination">{renderPagination(PaginationVariant.top)}</ToolbarItem>
248
- </ToolbarContent>
249
- </Toolbar>
250
- </Fragment>
251
- );
252
-
253
- const pageNav = (
254
- <Nav aria-label={translation.nav.ariaLabel || undefined}>
255
- <NavList>
256
- <NavItem itemId={0} isActive to="#system-panel">
257
- {translation.nav.systemPanel}
258
- </NavItem>
259
- <NavItem itemId={1} to="#policy">
260
- {translation.nav.policy}
261
- </NavItem>
262
- <NavItem itemId={2} to="#auth">
263
- {translation.nav.authentication}
264
- </NavItem>
265
- <NavItem itemId={3} to="#network">
266
- {translation.nav.networkServices}
267
- </NavItem>
268
- <NavItem itemId={4} to="#server">
269
- {translation.nav.server}
270
- </NavItem>
271
- </NavList>
272
- </Nav>
273
- );
274
-
275
- const sidebar = (
276
- <PageSidebar>
277
- <PageSidebarBody>{pageNav}</PageSidebarBody>
278
- </PageSidebar>
279
- );
280
-
281
- const [isDropdownOpen, setIsDropdownOpen] = useState(false);
282
- const [isKebabDropdownOpen, setIsKebabDropdownOpen] = useState(false);
283
- const [isFullKebabDropdownOpen, setIsFullKebabDropdownOpen] = useState(false);
284
-
285
- const kebabDropdownItems = (
286
- <>
287
- <DropdownItem icon={<CogIcon />}>{translation.kebabDropdown.settings}</DropdownItem>
288
- <DropdownItem icon={<HelpIcon />}>{translation.kebabDropdown.help}</DropdownItem>
289
- </>
290
- );
291
-
292
- const userDropdownItems = (
293
- <>
294
- <DropdownItem key="group 2 profile">{translation.userDropdown.myProfile}</DropdownItem>
295
- <DropdownItem key="group 2 user">{translation.userDropdown.userManagement}</DropdownItem>
296
- <DropdownItem key="group 2 logout">{translation.userDropdown.logout}</DropdownItem>
297
- </>
298
- );
299
-
300
- const onDropdownToggle = () => {
301
- setIsDropdownOpen(!isDropdownOpen);
302
- };
303
-
304
- const onDropdownSelect = () => {
305
- setIsDropdownOpen(false);
306
- };
307
-
308
- const onKebabDropdownToggle = () => {
309
- setIsKebabDropdownOpen(!isKebabDropdownOpen);
310
- };
311
-
312
- const onKebabDropdownSelect = () => {
313
- setIsKebabDropdownOpen(false);
314
- };
315
-
316
- const onFullKebabToggle = () => {
317
- setIsFullKebabDropdownOpen(!isFullKebabDropdownOpen);
318
- };
319
-
320
- const onFullKebabSelect = () => {
321
- setIsFullKebabDropdownOpen(false);
322
- };
323
-
324
- const masthead = (
325
- <Masthead>
326
- <MastheadMain>
327
- <MastheadToggle>
328
- <PageToggleButton variant="plain" aria-label={translation.mastheadToggleAriaLabel}>
329
- <BarsIcon />
330
- </PageToggleButton>
331
- </MastheadToggle>
332
- <MastheadBrand>
333
- <MastheadLogo dir="ltr">
334
- <Brand src={pfLogo} alt="PatternFly" heights={{ default: '36px' }} />
335
- {translation.brandLanguage && <span className="brand-language">{translation.brandLanguage}</span>}
336
- </MastheadLogo>
337
- </MastheadBrand>
338
- </MastheadMain>
339
- <MastheadContent>
340
- <Toolbar id="toolbar" isStatic>
341
- <ToolbarContent>
342
- <ToolbarGroup
343
- variant="action-group-plain"
344
- align={{ default: 'alignEnd' }}
345
- gap={{ default: 'gapNone', md: 'gapMd' }}
346
- >
347
- <ToolbarGroup variant="action-group-plain" visibility={{ default: 'hidden', lg: 'visible' }}>
348
- <ToolbarItem>
349
- <Button
350
- aria-label={translation.kebabDropdown.settings}
351
- variant={ButtonVariant.plain}
352
- icon={<CogIcon />}
353
- />
354
- </ToolbarItem>
355
- <ToolbarItem>
356
- <Button
357
- aria-label={translation.kebabDropdown.help}
358
- variant={ButtonVariant.plain}
359
- icon={<QuestionCircleIcon />}
360
- />
361
- </ToolbarItem>
362
- </ToolbarGroup>
363
- <ToolbarItem visibility={{ default: 'hidden', md: 'visible', lg: 'hidden' }}>
364
- <Dropdown
365
- isOpen={isKebabDropdownOpen}
366
- onSelect={onKebabDropdownSelect}
367
- onOpenChange={setIsKebabDropdownOpen}
368
- popperProps={{ position: 'right' }}
369
- toggle={(toggleRef) => (
370
- <MenuToggle
371
- ref={toggleRef}
372
- isExpanded={isKebabDropdownOpen}
373
- onClick={onKebabDropdownToggle}
374
- variant="plain"
375
- aria-label={translation.kebabDropdown.settingsAndHelp}
376
- icon={<EllipsisVIcon />}
377
- />
378
- )}
379
- >
380
- <DropdownList>{kebabDropdownItems}</DropdownList>
381
- </Dropdown>
382
- </ToolbarItem>
383
- <ToolbarItem visibility={{ md: 'hidden' }}>
384
- <Dropdown
385
- isOpen={isFullKebabDropdownOpen}
386
- onSelect={onFullKebabSelect}
387
- onOpenChange={setIsFullKebabDropdownOpen}
388
- popperProps={{ position: 'right' }}
389
- toggle={(toggleRef) => (
390
- <MenuToggle
391
- ref={toggleRef}
392
- isExpanded={isFullKebabDropdownOpen}
393
- onClick={onFullKebabToggle}
394
- variant="plain"
395
- aria-label={translation.kebabAndUserDropdown.toolbarMenuAriaLabel}
396
- icon={<EllipsisVIcon />}
397
- />
398
- )}
399
- >
400
- <DropdownGroup key="group 2" aria-label={translation.kebabAndUserDropdown.groupAriaLabel}>
401
- <DropdownList>{userDropdownItems}</DropdownList>
402
- </DropdownGroup>
403
- <Divider />
404
- <DropdownList>{kebabDropdownItems}</DropdownList>
405
- </Dropdown>
406
- </ToolbarItem>
407
- </ToolbarGroup>
408
- <ToolbarItem visibility={{ default: 'hidden', md: 'visible' }}>
409
- <Dropdown
410
- isOpen={isDropdownOpen}
411
- onSelect={onDropdownSelect}
412
- onOpenChange={setIsDropdownOpen}
413
- popperProps={{ position: 'right' }}
414
- toggle={(toggleRef) => (
415
- <MenuToggle
416
- ref={toggleRef}
417
- isExpanded={isDropdownOpen}
418
- onClick={onDropdownToggle}
419
- icon={<Avatar src={imgAvatar} alt="" size="sm" />}
420
- >
421
- {translation.username}
422
- </MenuToggle>
423
- )}
424
- >
425
- <DropdownList>{userDropdownItems}</DropdownList>
426
- </Dropdown>
427
- </ToolbarItem>
428
- </ToolbarContent>
429
- </Toolbar>
430
- </MastheadContent>
431
- </Masthead>
432
- );
433
-
434
- return (
435
- <Fragment>
436
- <Page sidebar={sidebar} masthead={masthead} isManagedSidebar>
437
- <PageBreadcrumb>
438
- <Breadcrumb aria-label={translation.breadcrumbs.ariaLabel || undefined}>
439
- {Object.keys(breadcrumbItems).map((key, idx, arr) => (
440
- <BreadcrumbItem key={idx} isActive={arr.length - 1 === idx} to={`${breadcrumbItems[key].url}`}>
441
- {translation.breadcrumbs[key]}
442
- {breadcrumbItems.length}
443
- </BreadcrumbItem>
444
- ))}
445
- </Breadcrumb>
446
- </PageBreadcrumb>
447
- <PageSection variant="light" aria-labelledby='main-title' >
448
- <Content>
449
- <h1 id='main-title'>{translation.title}</h1>
450
- <p>{translation.body}</p>
451
- </Content>
452
- </PageSection>
453
- <PageSection>
454
- <Card>
455
- {toolbarItems}
456
- <Table variant="compact" aria-label={translation.table.ariaLabel}>
457
- <Thead>
458
- <Tr>
459
- {columns.map((column, columnIndex) => (
460
- <Th key={columnIndex}>{column}</Th>
461
- ))}
462
- </Tr>
463
- </Thead>
464
- <Tbody>
465
- {paginatedRows.map((row, rowIndex) => (
466
- <Tr key={rowIndex}>
467
- <>
468
- {Object.entries(row).map(([key, value]) => {
469
- if (key === 'status') {
470
- return (
471
- <Td key={key} width={15} dataLabel="Status">
472
- {renderLabel(value)}
473
- </Td>
474
- );
475
- } else if (key === 'url') {
476
- return (
477
- // Passing dir="rtl" forces truncation at the start of the URL,
478
- // resulting in the unique portion being visible regardless of language
479
- <Td key={key} dataLabel="URL" width={15}>
480
- <a href="#">
481
- <Truncate content={row.url} position={isDirRTL ? 'end' : 'start'} />
482
- </a>
483
- </Td>
484
- );
485
- } else {
486
- return (
487
- <Td key={key} dataLabel={key === 'lastModified' ? 'Last modified' : capitalize(key)}>
488
- {value}
489
- </Td>
490
- );
491
- }
492
- })}
493
- </>
494
- </Tr>
495
- ))}
496
- </Tbody>
497
- </Table>
498
- {renderPagination(PaginationVariant.bottom)}
499
- </Card>
500
- </PageSection>
501
- </Page>
502
- </Fragment>
503
- );
504
- };