@patternfly/react-table 6.0.0-alpha.1 → 6.0.0-alpha.100

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 (366) hide show
  1. package/CHANGELOG.md +1215 -1
  2. package/README.md +3 -18
  3. package/components/package.json +1 -1
  4. package/deprecated/package.json +1 -1
  5. package/dist/dynamic/components/Table/package.json +1 -1
  6. package/dist/dynamic/components/Table/utils/decorators/package.json +1 -1
  7. package/dist/dynamic/components/Table/utils/package.json +1 -1
  8. package/dist/dynamic/deprecated/components/Table/base/package.json +1 -1
  9. package/dist/dynamic/deprecated/components/Table/package.json +1 -1
  10. package/dist/dynamic/deprecated/components/package.json +1 -1
  11. package/dist/dynamic-modules.json +127 -0
  12. package/dist/esm/components/Table/ActionsColumn.d.ts +3 -1
  13. package/dist/esm/components/Table/ActionsColumn.d.ts.map +1 -1
  14. package/dist/esm/components/Table/ActionsColumn.js +4 -5
  15. package/dist/esm/components/Table/ActionsColumn.js.map +1 -1
  16. package/dist/esm/components/Table/Caption.js +1 -1
  17. package/dist/esm/components/Table/Caption.js.map +1 -1
  18. package/dist/esm/components/Table/CollapseColumn.js +1 -1
  19. package/dist/esm/components/Table/CollapseColumn.js.map +1 -1
  20. package/dist/esm/components/Table/DraggableCell.d.ts.map +1 -1
  21. package/dist/esm/components/Table/DraggableCell.js +1 -2
  22. package/dist/esm/components/Table/DraggableCell.js.map +1 -1
  23. package/dist/esm/components/Table/DraggableRowWrapper.js +2 -2
  24. package/dist/esm/components/Table/DraggableRowWrapper.js.map +1 -1
  25. package/dist/esm/components/Table/EditColumn.d.ts.map +1 -1
  26. package/dist/esm/components/Table/EditColumn.js +4 -7
  27. package/dist/esm/components/Table/EditColumn.js.map +1 -1
  28. package/dist/esm/components/Table/EditableSelectInputCell.d.ts +3 -4
  29. package/dist/esm/components/Table/EditableSelectInputCell.d.ts.map +1 -1
  30. package/dist/esm/components/Table/EditableSelectInputCell.js +11 -7
  31. package/dist/esm/components/Table/EditableSelectInputCell.js.map +1 -1
  32. package/dist/esm/components/Table/EditableTextCell.js +3 -3
  33. package/dist/esm/components/Table/EditableTextCell.js.map +1 -1
  34. package/dist/esm/components/Table/ExpandableRowContent.js +1 -1
  35. package/dist/esm/components/Table/ExpandableRowContent.js.map +1 -1
  36. package/dist/esm/components/Table/FavoritesCell.d.ts.map +1 -1
  37. package/dist/esm/components/Table/FavoritesCell.js +1 -2
  38. package/dist/esm/components/Table/FavoritesCell.js.map +1 -1
  39. package/dist/esm/components/Table/HeaderCellInfoWrapper.d.ts.map +1 -1
  40. package/dist/esm/components/Table/HeaderCellInfoWrapper.js +3 -5
  41. package/dist/esm/components/Table/HeaderCellInfoWrapper.js.map +1 -1
  42. package/dist/esm/components/Table/InnerScrollContainer.js +1 -1
  43. package/dist/esm/components/Table/InnerScrollContainer.js.map +1 -1
  44. package/dist/esm/components/Table/OuterScrollContainer.js +1 -1
  45. package/dist/esm/components/Table/OuterScrollContainer.js.map +1 -1
  46. package/dist/esm/components/Table/RowWrapper.d.ts +1 -1
  47. package/dist/esm/components/Table/RowWrapper.js.map +1 -1
  48. package/dist/esm/components/Table/SelectColumn.d.ts +5 -0
  49. package/dist/esm/components/Table/SelectColumn.d.ts.map +1 -1
  50. package/dist/esm/components/Table/SelectColumn.js +6 -3
  51. package/dist/esm/components/Table/SelectColumn.js.map +1 -1
  52. package/dist/esm/components/Table/SortColumn.d.ts +4 -0
  53. package/dist/esm/components/Table/SortColumn.d.ts.map +1 -1
  54. package/dist/esm/components/Table/SortColumn.js +3 -3
  55. package/dist/esm/components/Table/SortColumn.js.map +1 -1
  56. package/dist/esm/components/Table/Table.d.ts +1 -1
  57. package/dist/esm/components/Table/Table.d.ts.map +1 -1
  58. package/dist/esm/components/Table/Table.js +9 -9
  59. package/dist/esm/components/Table/Table.js.map +1 -1
  60. package/dist/esm/components/Table/TableText.d.ts +3 -1
  61. package/dist/esm/components/Table/TableText.d.ts.map +1 -1
  62. package/dist/esm/components/Table/TableText.js +13 -11
  63. package/dist/esm/components/Table/TableText.js.map +1 -1
  64. package/dist/esm/components/Table/TableTypes.d.ts +29 -25
  65. package/dist/esm/components/Table/TableTypes.d.ts.map +1 -1
  66. package/dist/esm/components/Table/TableTypes.js.map +1 -1
  67. package/dist/esm/components/Table/Tbody.d.ts +1 -1
  68. package/dist/esm/components/Table/Tbody.d.ts.map +1 -1
  69. package/dist/esm/components/Table/Tbody.js +1 -1
  70. package/dist/esm/components/Table/Tbody.js.map +1 -1
  71. package/dist/esm/components/Table/Td.d.ts +2 -2
  72. package/dist/esm/components/Table/Td.d.ts.map +1 -1
  73. package/dist/esm/components/Table/Td.js +9 -5
  74. package/dist/esm/components/Table/Td.js.map +1 -1
  75. package/dist/esm/components/Table/Th.d.ts +12 -1
  76. package/dist/esm/components/Table/Th.d.ts.map +1 -1
  77. package/dist/esm/components/Table/Th.js +26 -12
  78. package/dist/esm/components/Table/Th.js.map +1 -1
  79. package/dist/esm/components/Table/Thead.d.ts +1 -1
  80. package/dist/esm/components/Table/Thead.d.ts.map +1 -1
  81. package/dist/esm/components/Table/Thead.js +1 -1
  82. package/dist/esm/components/Table/Thead.js.map +1 -1
  83. package/dist/esm/components/Table/Tr.d.ts +4 -2
  84. package/dist/esm/components/Table/Tr.d.ts.map +1 -1
  85. package/dist/esm/components/Table/Tr.js +4 -4
  86. package/dist/esm/components/Table/Tr.js.map +1 -1
  87. package/dist/esm/components/Table/TreeRowWrapper.js +2 -2
  88. package/dist/esm/components/Table/TreeRowWrapper.js.map +1 -1
  89. package/dist/esm/components/Table/base/columns-are-equal.js.map +1 -1
  90. package/dist/esm/components/Table/base/evaluate-transforms.js.map +1 -1
  91. package/dist/esm/components/Table/base/merge-props.js.map +1 -1
  92. package/dist/esm/components/Table/base/provider.d.ts +8 -8
  93. package/dist/esm/components/Table/base/provider.js.map +1 -1
  94. package/dist/esm/components/Table/base/types.d.ts +23 -24
  95. package/dist/esm/components/Table/base/types.d.ts.map +1 -1
  96. package/dist/esm/components/Table/base/types.js.map +1 -1
  97. package/dist/esm/components/Table/utils/decorators/cellActions.js +1 -1
  98. package/dist/esm/components/Table/utils/decorators/cellActions.js.map +1 -1
  99. package/dist/esm/components/Table/utils/decorators/cellWidth.js +1 -1
  100. package/dist/esm/components/Table/utils/decorators/cellWidth.js.map +1 -1
  101. package/dist/esm/components/Table/utils/decorators/classNames.js +1 -1
  102. package/dist/esm/components/Table/utils/decorators/classNames.js.map +1 -1
  103. package/dist/esm/components/Table/utils/decorators/collapsible.js +1 -1
  104. package/dist/esm/components/Table/utils/decorators/collapsible.js.map +1 -1
  105. package/dist/esm/components/Table/utils/decorators/compoundExpand.js +1 -1
  106. package/dist/esm/components/Table/utils/decorators/compoundExpand.js.map +1 -1
  107. package/dist/esm/components/Table/utils/decorators/editable.js +1 -1
  108. package/dist/esm/components/Table/utils/decorators/editable.js.map +1 -1
  109. package/dist/esm/components/Table/utils/decorators/favoritable.js +1 -1
  110. package/dist/esm/components/Table/utils/decorators/favoritable.js.map +1 -1
  111. package/dist/esm/components/Table/utils/decorators/info.js +1 -1
  112. package/dist/esm/components/Table/utils/decorators/info.js.map +1 -1
  113. package/dist/esm/components/Table/utils/decorators/selectable.d.ts.map +1 -1
  114. package/dist/esm/components/Table/utils/decorators/selectable.js +5 -5
  115. package/dist/esm/components/Table/utils/decorators/selectable.js.map +1 -1
  116. package/dist/esm/components/Table/utils/decorators/sortable.d.ts.map +1 -1
  117. package/dist/esm/components/Table/utils/decorators/sortable.js +7 -4
  118. package/dist/esm/components/Table/utils/decorators/sortable.js.map +1 -1
  119. package/dist/esm/components/Table/utils/decorators/treeRow.d.ts +3 -3
  120. package/dist/esm/components/Table/utils/decorators/treeRow.d.ts.map +1 -1
  121. package/dist/esm/components/Table/utils/decorators/treeRow.js +5 -5
  122. package/dist/esm/components/Table/utils/decorators/treeRow.js.map +1 -1
  123. package/dist/esm/components/Table/utils/decorators/wrappable.js +1 -1
  124. package/dist/esm/components/Table/utils/decorators/wrappable.js.map +1 -1
  125. package/dist/esm/components/Table/utils/headerUtils.js.map +1 -1
  126. package/dist/esm/components/Table/utils/utils.js.map +1 -1
  127. package/dist/esm/demos/DashboardHeader.d.ts +8 -0
  128. package/dist/esm/demos/DashboardHeader.d.ts.map +1 -0
  129. package/dist/esm/demos/DashboardHeader.js +78 -0
  130. package/dist/esm/demos/DashboardHeader.js.map +1 -0
  131. package/dist/esm/demos/DashboardWrapper.d.ts +85 -0
  132. package/dist/esm/demos/DashboardWrapper.d.ts.map +1 -0
  133. package/dist/esm/demos/DashboardWrapper.js +41 -0
  134. package/dist/esm/demos/DashboardWrapper.js.map +1 -0
  135. package/dist/esm/demos/index.d.ts +4 -0
  136. package/dist/esm/demos/index.d.ts.map +1 -0
  137. package/dist/esm/demos/index.js +4 -0
  138. package/dist/esm/demos/index.js.map +1 -0
  139. package/dist/esm/demos/sampleData.d.ts +13 -0
  140. package/dist/esm/demos/sampleData.d.ts.map +1 -0
  141. package/dist/esm/demos/sampleData.js +764 -0
  142. package/dist/esm/demos/sampleData.js.map +1 -0
  143. package/dist/esm/deprecated/components/Table/Body.d.ts +2 -2
  144. package/dist/esm/deprecated/components/Table/Body.d.ts.map +1 -1
  145. package/dist/esm/deprecated/components/Table/Body.js.map +1 -1
  146. package/dist/esm/deprecated/components/Table/BodyCell.js.map +1 -1
  147. package/dist/esm/deprecated/components/Table/BodyWrapper.js.map +1 -1
  148. package/dist/esm/deprecated/components/Table/Table.d.ts +1 -1
  149. package/dist/esm/deprecated/components/Table/Table.d.ts.map +1 -1
  150. package/dist/esm/deprecated/components/Table/Table.js +3 -4
  151. package/dist/esm/deprecated/components/Table/Table.js.map +1 -1
  152. package/dist/esm/deprecated/components/Table/base/body-row.js.map +1 -1
  153. package/dist/esm/deprecated/components/Table/base/body.d.ts +8 -2
  154. package/dist/esm/deprecated/components/Table/base/body.d.ts.map +1 -1
  155. package/dist/esm/deprecated/components/Table/base/body.js.map +1 -1
  156. package/dist/esm/deprecated/components/Table/base/header-row.js +1 -1
  157. package/dist/esm/deprecated/components/Table/base/header-row.js.map +1 -1
  158. package/dist/esm/deprecated/components/Table/base/header.d.ts +1 -1
  159. package/dist/esm/deprecated/components/Table/base/header.d.ts.map +1 -1
  160. package/dist/esm/deprecated/components/Table/base/resolve-row-key.js.map +1 -1
  161. package/dist/esm/test-helpers/data-helpers.js.map +1 -1
  162. package/dist/js/components/Table/ActionsColumn.d.ts +3 -1
  163. package/dist/js/components/Table/ActionsColumn.d.ts.map +1 -1
  164. package/dist/js/components/Table/ActionsColumn.js +10 -11
  165. package/dist/js/components/Table/ActionsColumn.js.map +1 -1
  166. package/dist/js/components/Table/CollapseColumn.js +2 -2
  167. package/dist/js/components/Table/CollapseColumn.js.map +1 -1
  168. package/dist/js/components/Table/DraggableCell.d.ts.map +1 -1
  169. package/dist/js/components/Table/DraggableCell.js +3 -4
  170. package/dist/js/components/Table/DraggableCell.js.map +1 -1
  171. package/dist/js/components/Table/EditColumn.d.ts.map +1 -1
  172. package/dist/js/components/Table/EditColumn.js +7 -10
  173. package/dist/js/components/Table/EditColumn.js.map +1 -1
  174. package/dist/js/components/Table/EditableSelectInputCell.d.ts +3 -4
  175. package/dist/js/components/Table/EditableSelectInputCell.d.ts.map +1 -1
  176. package/dist/js/components/Table/EditableSelectInputCell.js +9 -5
  177. package/dist/js/components/Table/EditableSelectInputCell.js.map +1 -1
  178. package/dist/js/components/Table/EditableTextCell.js +2 -2
  179. package/dist/js/components/Table/EditableTextCell.js.map +1 -1
  180. package/dist/js/components/Table/FavoritesCell.d.ts.map +1 -1
  181. package/dist/js/components/Table/FavoritesCell.js +3 -4
  182. package/dist/js/components/Table/FavoritesCell.js.map +1 -1
  183. package/dist/js/components/Table/HeaderCellInfoWrapper.d.ts.map +1 -1
  184. package/dist/js/components/Table/HeaderCellInfoWrapper.js +6 -8
  185. package/dist/js/components/Table/HeaderCellInfoWrapper.js.map +1 -1
  186. package/dist/js/components/Table/RowWrapper.d.ts +1 -1
  187. package/dist/js/components/Table/RowWrapper.js +1 -1
  188. package/dist/js/components/Table/RowWrapper.js.map +1 -1
  189. package/dist/js/components/Table/SelectColumn.d.ts +5 -0
  190. package/dist/js/components/Table/SelectColumn.d.ts.map +1 -1
  191. package/dist/js/components/Table/SelectColumn.js +7 -4
  192. package/dist/js/components/Table/SelectColumn.js.map +1 -1
  193. package/dist/js/components/Table/SortColumn.d.ts +4 -0
  194. package/dist/js/components/Table/SortColumn.d.ts.map +1 -1
  195. package/dist/js/components/Table/SortColumn.js +6 -6
  196. package/dist/js/components/Table/SortColumn.js.map +1 -1
  197. package/dist/js/components/Table/Table.d.ts +1 -1
  198. package/dist/js/components/Table/Table.d.ts.map +1 -1
  199. package/dist/js/components/Table/Table.js +5 -5
  200. package/dist/js/components/Table/Table.js.map +1 -1
  201. package/dist/js/components/Table/TableText.d.ts +3 -1
  202. package/dist/js/components/Table/TableText.d.ts.map +1 -1
  203. package/dist/js/components/Table/TableText.js +15 -13
  204. package/dist/js/components/Table/TableText.js.map +1 -1
  205. package/dist/js/components/Table/TableTypes.d.ts +29 -25
  206. package/dist/js/components/Table/TableTypes.d.ts.map +1 -1
  207. package/dist/js/components/Table/TableTypes.js +2 -2
  208. package/dist/js/components/Table/TableTypes.js.map +1 -1
  209. package/dist/js/components/Table/Tbody.d.ts +1 -1
  210. package/dist/js/components/Table/Tbody.d.ts.map +1 -1
  211. package/dist/js/components/Table/Td.d.ts +2 -2
  212. package/dist/js/components/Table/Td.d.ts.map +1 -1
  213. package/dist/js/components/Table/Td.js +8 -4
  214. package/dist/js/components/Table/Td.js.map +1 -1
  215. package/dist/js/components/Table/Th.d.ts +12 -1
  216. package/dist/js/components/Table/Th.d.ts.map +1 -1
  217. package/dist/js/components/Table/Th.js +24 -10
  218. package/dist/js/components/Table/Th.js.map +1 -1
  219. package/dist/js/components/Table/Thead.d.ts +1 -1
  220. package/dist/js/components/Table/Thead.d.ts.map +1 -1
  221. package/dist/js/components/Table/Tr.d.ts +4 -2
  222. package/dist/js/components/Table/Tr.d.ts.map +1 -1
  223. package/dist/js/components/Table/Tr.js +3 -3
  224. package/dist/js/components/Table/Tr.js.map +1 -1
  225. package/dist/js/components/Table/base/columns-are-equal.js.map +1 -1
  226. package/dist/js/components/Table/base/evaluate-transforms.js.map +1 -1
  227. package/dist/js/components/Table/base/merge-props.js.map +1 -1
  228. package/dist/js/components/Table/base/provider.d.ts +8 -8
  229. package/dist/js/components/Table/base/provider.js.map +1 -1
  230. package/dist/js/components/Table/base/types.d.ts +23 -24
  231. package/dist/js/components/Table/base/types.d.ts.map +1 -1
  232. package/dist/js/components/Table/base/types.js.map +1 -1
  233. package/dist/js/components/Table/utils/decorators/compoundExpand.js.map +1 -1
  234. package/dist/js/components/Table/utils/decorators/editable.js.map +1 -1
  235. package/dist/js/components/Table/utils/decorators/favoritable.js.map +1 -1
  236. package/dist/js/components/Table/utils/decorators/selectable.d.ts.map +1 -1
  237. package/dist/js/components/Table/utils/decorators/selectable.js +3 -3
  238. package/dist/js/components/Table/utils/decorators/selectable.js.map +1 -1
  239. package/dist/js/components/Table/utils/decorators/sortable.d.ts.map +1 -1
  240. package/dist/js/components/Table/utils/decorators/sortable.js +7 -4
  241. package/dist/js/components/Table/utils/decorators/sortable.js.map +1 -1
  242. package/dist/js/components/Table/utils/decorators/treeRow.d.ts +3 -3
  243. package/dist/js/components/Table/utils/decorators/treeRow.d.ts.map +1 -1
  244. package/dist/js/components/Table/utils/decorators/treeRow.js +7 -7
  245. package/dist/js/components/Table/utils/decorators/treeRow.js.map +1 -1
  246. package/dist/js/components/Table/utils/headerUtils.js.map +1 -1
  247. package/dist/js/components/Table/utils/utils.js.map +1 -1
  248. package/dist/js/demos/DashboardHeader.d.ts +8 -0
  249. package/dist/js/demos/DashboardHeader.d.ts.map +1 -0
  250. package/dist/js/demos/DashboardHeader.js +83 -0
  251. package/dist/js/demos/DashboardHeader.js.map +1 -0
  252. package/dist/js/demos/DashboardWrapper.d.ts +85 -0
  253. package/dist/js/demos/DashboardWrapper.d.ts.map +1 -0
  254. package/dist/js/demos/DashboardWrapper.js +45 -0
  255. package/dist/js/demos/DashboardWrapper.js.map +1 -0
  256. package/dist/js/demos/index.d.ts +4 -0
  257. package/dist/js/demos/index.d.ts.map +1 -0
  258. package/dist/js/demos/index.js +7 -0
  259. package/dist/js/demos/index.js.map +1 -0
  260. package/dist/js/demos/sampleData.d.ts +13 -0
  261. package/dist/js/demos/sampleData.d.ts.map +1 -0
  262. package/dist/js/demos/sampleData.js +767 -0
  263. package/dist/js/demos/sampleData.js.map +1 -0
  264. package/dist/js/deprecated/components/Table/Body.d.ts +2 -2
  265. package/dist/js/deprecated/components/Table/Body.d.ts.map +1 -1
  266. package/dist/js/deprecated/components/Table/Body.js.map +1 -1
  267. package/dist/js/deprecated/components/Table/BodyCell.js +3 -3
  268. package/dist/js/deprecated/components/Table/BodyCell.js.map +1 -1
  269. package/dist/js/deprecated/components/Table/BodyWrapper.js.map +1 -1
  270. package/dist/js/deprecated/components/Table/Table.d.ts +1 -1
  271. package/dist/js/deprecated/components/Table/Table.d.ts.map +1 -1
  272. package/dist/js/deprecated/components/Table/Table.js +9 -10
  273. package/dist/js/deprecated/components/Table/Table.js.map +1 -1
  274. package/dist/js/deprecated/components/Table/base/body-row.js.map +1 -1
  275. package/dist/js/deprecated/components/Table/base/body.d.ts +8 -2
  276. package/dist/js/deprecated/components/Table/base/body.d.ts.map +1 -1
  277. package/dist/js/deprecated/components/Table/base/body.js.map +1 -1
  278. package/dist/js/deprecated/components/Table/base/header-row.js +1 -1
  279. package/dist/js/deprecated/components/Table/base/header-row.js.map +1 -1
  280. package/dist/js/deprecated/components/Table/base/header.d.ts +1 -1
  281. package/dist/js/deprecated/components/Table/base/header.d.ts.map +1 -1
  282. package/dist/js/deprecated/components/Table/base/resolve-row-key.js.map +1 -1
  283. package/dist/js/test-helpers/data-helpers.js.map +1 -1
  284. package/dist/umd/assets/output-BnU-TMGU.css +26986 -0
  285. package/dist/umd/react-table.min.js +8 -9
  286. package/package.json +8 -12
  287. package/rollup.config.mjs +8 -0
  288. package/single-packages.config.json +3 -6
  289. package/src/components/Table/ActionsColumn.tsx +35 -31
  290. package/src/components/Table/DraggableCell.tsx +2 -3
  291. package/src/components/Table/EditColumn.tsx +21 -9
  292. package/src/components/Table/EditableSelectInputCell.tsx +16 -11
  293. package/src/components/Table/EditableTextCell.tsx +1 -1
  294. package/src/components/Table/FavoritesCell.tsx +2 -3
  295. package/src/components/Table/HeaderCellInfoWrapper.tsx +10 -6
  296. package/src/components/Table/SelectColumn.tsx +27 -8
  297. package/src/components/Table/SortColumn.tsx +15 -1
  298. package/src/components/Table/Table.tsx +6 -6
  299. package/src/components/Table/TableText.tsx +19 -9
  300. package/src/components/Table/TableTypes.tsx +12 -9
  301. package/src/components/Table/Td.tsx +11 -6
  302. package/src/components/Table/Th.tsx +42 -10
  303. package/src/components/Table/Tr.tsx +5 -1
  304. package/src/components/Table/__tests__/Th.test.tsx +31 -0
  305. package/src/components/Table/__tests__/__snapshots__/RowWrapper.test.tsx.snap +4 -4
  306. package/src/components/Table/base/types.tsx +6 -7
  307. package/src/components/Table/examples/Table.md +48 -3
  308. package/src/components/Table/examples/TableActions.tsx +2 -2
  309. package/src/components/Table/examples/TableActionsOverflow.tsx +3 -5
  310. package/src/components/Table/examples/TableCompoundExpandable.tsx +5 -4
  311. package/src/components/Table/examples/TableDraggable.tsx +19 -16
  312. package/src/components/Table/examples/TableEditable.tsx +313 -0
  313. package/src/components/Table/examples/TableEmptyState.tsx +1 -8
  314. package/src/components/Table/examples/TableExpandable.tsx +1 -2
  315. package/src/components/Table/examples/TableMisc.tsx +3 -1
  316. package/src/components/Table/examples/TableNestedExpandable.tsx +1 -1
  317. package/src/components/Table/examples/TableNestedHeaders.tsx +4 -6
  318. package/src/components/Table/examples/TableNestedStickyHeader.tsx +4 -9
  319. package/src/components/Table/examples/TableNestedTableExpandable.tsx +1 -1
  320. package/src/components/Table/examples/TableSelectable.tsx +1 -0
  321. package/src/components/Table/examples/TableSelectableRadio.tsx +1 -1
  322. package/src/components/Table/examples/TableSortableCustom.tsx +2 -3
  323. package/src/components/Table/examples/TableStickyColumnsAndHeader.tsx +6 -5
  324. package/src/components/Table/examples/TableStripedExpandable.tsx +1 -1
  325. package/src/components/Table/utils/__snapshots__/transformers.test.tsx.snap +4 -4
  326. package/src/components/Table/utils/decorators/selectable.tsx +3 -2
  327. package/src/components/Table/utils/decorators/sortable.tsx +8 -2
  328. package/src/components/Table/utils/decorators/treeRow.tsx +3 -3
  329. package/src/components/Table/utils/transformers.test.tsx +14 -11
  330. package/src/demos/DashboardHeader.tsx +201 -0
  331. package/src/demos/DashboardWrapper.tsx +198 -0
  332. package/src/demos/Table.md +181 -0
  333. package/src/demos/assets/avatarImg.svg +18 -0
  334. package/src/demos/assets/index.d.ts +4 -0
  335. package/src/demos/assets/pf-logo.svg +28 -0
  336. package/src/demos/examples/TableAutomaticPagination.tsx +101 -0
  337. package/src/{docs/demos/table-demos/BulkSelect.jsx → demos/examples/TableBulkSelect.tsx} +42 -21
  338. package/src/demos/examples/TableColumnManagement.tsx +484 -0
  339. package/src/demos/examples/TableColumnManagementWithDraggable.tsx +635 -0
  340. package/src/{docs/demos/table-demos/Compact.jsx → demos/examples/TableCompact.tsx} +39 -18
  341. package/src/{docs/demos/table-demos/CompoundExpansion.jsx → demos/examples/TableCompoundExpansion.tsx} +31 -16
  342. package/src/demos/examples/TableEmptyStateDefault.tsx +58 -0
  343. package/src/demos/examples/TableEmptyStateError.tsx +43 -0
  344. package/src/demos/examples/TableEmptyStateLoading.tsx +33 -0
  345. package/src/{docs/demos/table-demos/ExpandCollapseAll.jsx → demos/examples/TableExpandCollapseAll.tsx} +75 -67
  346. package/src/demos/examples/TableFilterable.tsx +387 -0
  347. package/src/{docs/demos/table-demos/SortableResponsive.jsx → demos/examples/TableSortableResponsive.tsx} +42 -43
  348. package/src/{docs/demos/table-demos/StaticBottomPagination.jsx → demos/examples/TableStaticBottomPagination.tsx} +29 -11
  349. package/src/{docs/demos/table-demos/StickyFirstColumn.jsx → demos/examples/TableStickyFirstColumn.tsx} +31 -9
  350. package/src/{docs/demos/table-demos/StickyHeader.jsx → demos/examples/TableStickyHeader.tsx} +3 -3
  351. package/src/demos/index.ts +3 -0
  352. package/src/{docs/demos/table-demos/sampleData.js → demos/sampleData.tsx} +88 -77
  353. package/src/deprecated/components/Table/Table.tsx +2 -3
  354. package/src/deprecated/components/Table/__tests__/Table.test.tsx +4 -9
  355. package/src/deprecated/components/Table/__tests__/__snapshots__/Table.test.tsx.snap +2457 -2274
  356. package/src/deprecated/components/Table/base/header-row.tsx +1 -1
  357. package/src/deprecated/components/Table/examples/LegacyTableCompoundExpandable.tsx +4 -3
  358. package/src/deprecated/components/Table/examples/LegacyTableEmptyState.tsx +6 -8
  359. package/src/deprecated/components/Table/examples/LegacyTableMisc.tsx +4 -3
  360. package/src/deprecated/components/Table/examples/LegacyTableSelectable.tsx +2 -1
  361. package/src/deprecated/components/Table/examples/LegacyTableSortableCustom.tsx +2 -3
  362. package/src/deprecated/components/Table/examples/LegacyTableStripedCustomTr.tsx +2 -6
  363. package/src/deprecated/components/Table/examples/Table.md +49 -40
  364. package/rollup.config.js +0 -7
  365. package/src/docs/demos/Table.md +0 -1622
  366. package/src/docs/demos/table-demos/ColumnManagement.jsx +0 -471
@@ -1,471 +0,0 @@
1
- import React from 'react';
2
-
3
- import {
4
- Button,
5
- Card,
6
- DataList,
7
- DataListCheck,
8
- DataListItem,
9
- DataListItemRow,
10
- DataListCell,
11
- DataListItemCells,
12
- Label,
13
- Toolbar,
14
- ToolbarContent,
15
- ToolbarItem,
16
- MenuToggle,
17
- Modal,
18
- OverflowMenu,
19
- OverflowMenuGroup,
20
- OverflowMenuItem,
21
- PageSection,
22
- Pagination,
23
- PaginationVariant,
24
- Text,
25
- TextContent,
26
- TextVariants
27
- } from '@patternfly/react-core';
28
- import { Table, TableText, Thead, Tr, Th, Tbody, Td } from '@patternfly/react-table';
29
- import FilterIcon from '@patternfly/react-icons/dist/esm/icons/filter-icon';
30
- import SortAmountDownIcon from '@patternfly/react-icons/dist/esm/icons/sort-amount-down-icon';
31
- import DashboardWrapper from '@patternfly/react-core/src/demos/examples/DashboardWrapper.js';
32
- import { capitalize } from '@patternfly/react-table/src/components/Table/utils/utils';
33
- import { rows, columns } from '@patternfly/react-table/src/docs/demos/table-demos/sampleData';
34
-
35
- export const ColumnManagementAction = () => {
36
- const defaultColumns = columns;
37
- const defaultRows = rows;
38
-
39
- const [filters, setFilters] = React.useState([]);
40
- const [filteredColumns, setFilteredColumns] = React.useState([]);
41
- const [filteredRows, setFilteredRows] = React.useState([]);
42
- const [managedColumns, setManagedColumns] = React.useState(defaultColumns);
43
- const [managedRows, setManagedRows] = React.useState(defaultRows);
44
- const [isModalOpen, setIsModalOpen] = React.useState(false);
45
- const [checkedState, setCheckedState] = React.useState(Array(columns.length).fill(true));
46
- const [page, setPage] = React.useState(1);
47
- const [perPage, setPerPage] = React.useState(10);
48
- const [paginatedRows, setPaginatedRows] = React.useState(rows);
49
-
50
- const matchCheckboxNameToColumn = (name) => {
51
- switch (name) {
52
- case 'check1':
53
- return 'Servers';
54
- case 'check2':
55
- return 'Threads';
56
- case 'check3':
57
- return 'Applications';
58
- case 'check4':
59
- return 'Workspaces';
60
- case 'check5':
61
- return 'Status';
62
- case 'check6':
63
- return 'Location';
64
- case 'check7':
65
- return 'Last Modified';
66
- case 'check8':
67
- return 'URL';
68
- }
69
- };
70
- const matchSelectedColumnNameToAttr = (name) => {
71
- switch (name) {
72
- case 'Servers':
73
- return 'name';
74
- case 'Threads':
75
- return 'threads';
76
- case 'Applications':
77
- return 'applications';
78
- case 'Workspaces':
79
- return 'workspaces';
80
- case 'Status':
81
- return 'status';
82
- case 'Location':
83
- return 'location';
84
- case 'Last Modified':
85
- return 'lastModified';
86
- case 'URL':
87
- return 'url';
88
- }
89
- };
90
-
91
- // Pagination logic
92
- const handleSetPage = (_evt, newPage) => {
93
- setPage(newPage);
94
- };
95
-
96
- const handlePerPageSelect = (_evt, newPerPage) => {
97
- setPerPage(newPerPage);
98
- };
99
-
100
- const renderPagination = (variant, isCompact) => (
101
- <Pagination
102
- isCompact={isCompact}
103
- itemCount={rows.length}
104
- page={page}
105
- perPage={perPage}
106
- onSetPage={handleSetPage}
107
- onPerPageSelect={handlePerPageSelect}
108
- variant={variant}
109
- titles={{
110
- paginationAriaLabel: `${variant} pagination`
111
- }}
112
- />
113
- );
114
-
115
- React.useEffect(() => {
116
- setPaginatedRows(managedRows.slice((page - 1) * perPage, page * perPage - 1));
117
- }, [managedRows, page, perPage]);
118
-
119
- // Removes attribute from each node object in Data.jsx
120
- const removePropFromObject = (object, keys) =>
121
- keys.reduce((obj, prop) => {
122
- const { [prop]: _, ...keep } = obj;
123
- return keep;
124
- }, object);
125
-
126
- // Filters columns out of table that are not selected in the column management modal
127
- const filterData = (checked, name) => {
128
- const selectedColumn = matchSelectedColumnNameToAttr(name);
129
-
130
- const filteredRows = [];
131
- if (checked) {
132
- const updatedFilters = filters.filter((item) => item !== selectedColumn);
133
-
134
- // Only show the names of columns that were selected in the modal
135
- const filteredColumns = defaultColumns.filter(
136
- (column) => !updatedFilters.includes(matchSelectedColumnNameToAttr(column))
137
- );
138
-
139
- // Remove the attributes (i.e. "columns") that were not selected
140
- defaultRows.forEach((item) => filteredRows.push(removePropFromObject(item, updatedFilters)));
141
-
142
- setFilters(updatedFilters);
143
- setFilteredColumns(filteredColumns);
144
- setFilteredRows(filteredRows);
145
- } else {
146
- let updatedFilters = filters;
147
- updatedFilters.push(selectedColumn);
148
-
149
- // Only show the names of columns that were selected in the modal
150
- const filteredColumns = managedColumns.filter(
151
- (column) => !filters.includes(matchSelectedColumnNameToAttr(column))
152
- );
153
-
154
- // Remove the attributes (i.e. "columns") that were not selected
155
- managedRows.forEach((item) => filteredRows.push(removePropFromObject(item, updatedFilters)));
156
-
157
- setFilters(updatedFilters);
158
- setFilteredColumns(filteredColumns);
159
- setFilteredRows(filteredRows);
160
- }
161
- };
162
- const unfilterAllData = () => {
163
- setFilters([]);
164
- setFilteredColumns(defaultColumns);
165
- setFilteredRows(defaultRows);
166
- };
167
-
168
- const handleChange = (event, checked) => {
169
- const target = event.target;
170
- const value = target.type === 'checkbox' ? target.checked : target.value;
171
-
172
- // Remove any columns from the table that aren't checked
173
- filterData(checked, matchCheckboxNameToColumn(target.name));
174
- const checkedIndex = columns.findIndex((element) => element === matchCheckboxNameToColumn(target.name));
175
-
176
- const updatedCheckedState = [...checkedState];
177
- updatedCheckedState[checkedIndex] = value;
178
- setCheckedState(updatedCheckedState);
179
- };
180
-
181
- const handleModalToggle = (_event) => {
182
- setIsModalOpen(!isModalOpen);
183
- };
184
-
185
- const onSave = () => {
186
- setManagedColumns(filteredColumns);
187
- setManagedRows(filteredRows);
188
- setPaginatedRows(filteredRows);
189
- setIsModalOpen(!isModalOpen);
190
- };
191
-
192
- const selectAllColumns = () => {
193
- unfilterAllData();
194
- setCheckedState(Array(columns.length).fill(true));
195
- };
196
-
197
- const renderModal = () => {
198
- return (
199
- <Modal
200
- title="Manage columns"
201
- isOpen={isModalOpen}
202
- variant="small"
203
- description={
204
- <TextContent>
205
- <Text component={TextVariants.p}>Selected categories will be displayed in the table.</Text>
206
- <Button isInline onClick={selectAllColumns} variant="link">
207
- Select all
208
- </Button>
209
- </TextContent>
210
- }
211
- onClose={handleModalToggle}
212
- actions={[
213
- <Button key="save" variant="primary" onClick={onSave}>
214
- Save
215
- </Button>,
216
- <Button key="cancel" variant="secondary" onClick={handleModalToggle}>
217
- Cancel
218
- </Button>
219
- ]}
220
- >
221
- <DataList aria-label="Table column management" id="table-column-management" isCompact>
222
- <DataListItem aria-labelledby="table-column-management-item1">
223
- <DataListItemRow>
224
- <DataListCheck
225
- aria-labelledby="table-column-management-item1"
226
- checked={checkedState[0]}
227
- name="check1"
228
- id="check1"
229
- onChange={handleChange}
230
- />
231
- <DataListItemCells
232
- dataListCells={[
233
- <DataListCell id="table-column-management-item1" key="table-column-management-item1">
234
- <label htmlFor="check1">{columns[0]}</label>
235
- </DataListCell>
236
- ]}
237
- />
238
- </DataListItemRow>
239
- </DataListItem>
240
- <DataListItem aria-labelledby="table-column-management-item2">
241
- <DataListItemRow>
242
- <DataListCheck
243
- aria-labelledby="table-column-management-item2"
244
- checked={checkedState[1]}
245
- name="check2"
246
- id="check2"
247
- onChange={handleChange}
248
- />
249
- <DataListItemCells
250
- dataListCells={[
251
- <DataListCell id="table-column-management-item2" key="table-column-management-item2">
252
- <label htmlFor="check2">{columns[1]}</label>
253
- </DataListCell>
254
- ]}
255
- />
256
- </DataListItemRow>
257
- </DataListItem>
258
- <DataListItem aria-labelledby="table-column-management-item3">
259
- <DataListItemRow>
260
- <DataListCheck
261
- aria-labelledby="table-column-management-item3"
262
- checked={checkedState[2]}
263
- name="check3"
264
- id="check3"
265
- onChange={handleChange}
266
- />
267
- <DataListItemCells
268
- dataListCells={[
269
- <DataListCell id="table-column-management-item3" key="table-column-management-item3">
270
- <label htmlFor="check3">{columns[2]}</label>
271
- </DataListCell>
272
- ]}
273
- />
274
- </DataListItemRow>
275
- </DataListItem>
276
- <DataListItem aria-labelledby="table-column-management-item4">
277
- <DataListItemRow>
278
- <DataListCheck
279
- aria-labelledby="table-column-management-item4"
280
- checked={checkedState[3]}
281
- name="check4"
282
- id="check4"
283
- onChange={handleChange}
284
- />
285
- <DataListItemCells
286
- dataListCells={[
287
- <DataListCell id="table-column-management-item4" key="table-column-management-item4">
288
- <label htmlFor="check4">{columns[3]}</label>
289
- </DataListCell>
290
- ]}
291
- />
292
- </DataListItemRow>
293
- </DataListItem>
294
- <DataListItem aria-labelledby="table-column-management-item4">
295
- <DataListItemRow>
296
- <DataListCheck
297
- aria-labelledby="table-column-management-item4"
298
- checked={checkedState[4]}
299
- name="check5"
300
- id="check5"
301
- onChange={handleChange}
302
- />
303
- <DataListItemCells
304
- dataListCells={[
305
- <DataListCell id="table-column-management-item4" key="table-column-management-item4">
306
- <label htmlFor="check5">{columns[4]}</label>
307
- </DataListCell>
308
- ]}
309
- />
310
- </DataListItemRow>
311
- </DataListItem>
312
- <DataListItem aria-labelledby="table-column-management-item5">
313
- <DataListItemRow>
314
- <DataListCheck
315
- aria-labelledby="table-column-management-item5"
316
- checked={checkedState[5]}
317
- name="check6"
318
- id="check6"
319
- onChange={handleChange}
320
- />
321
- <DataListItemCells
322
- dataListCells={[
323
- <DataListCell id="table-column-management-item5" key="table-column-management-item5">
324
- <label htmlFor="check6">{columns[5]}</label>
325
- </DataListCell>
326
- ]}
327
- />
328
- </DataListItemRow>
329
- </DataListItem>
330
- <DataListItem aria-labelledby="table-column-management-item6">
331
- <DataListItemRow>
332
- <DataListCheck
333
- aria-labelledby="table-column-management-item6"
334
- checked={checkedState[6]}
335
- name="check7"
336
- id="check7"
337
- onChange={handleChange}
338
- />
339
- <DataListItemCells
340
- dataListCells={[
341
- <DataListCell id="table-column-management-item6" key="table-column-management-item5">
342
- <label htmlFor="check7">{columns[6]}</label>
343
- </DataListCell>
344
- ]}
345
- />
346
- </DataListItemRow>
347
- </DataListItem>
348
- <DataListItem aria-labelledby="table-column-management-item5">
349
- <DataListItemRow>
350
- <DataListCheck
351
- aria-labelledby="table-column-management-item5"
352
- checked={checkedState[7]}
353
- name="check8"
354
- id="check8"
355
- onChange={handleChange}
356
- />
357
- <DataListItemCells
358
- dataListCells={[
359
- <DataListCell id="table-column-management-item7" key="table-column-management-item7">
360
- <label htmlFor="check8">{columns[7]}</label>
361
- </DataListCell>
362
- ]}
363
- />
364
- </DataListItemRow>
365
- </DataListItem>
366
- </DataList>
367
- </Modal>
368
- );
369
- };
370
-
371
- const renderLabel = (labelText) => {
372
- switch (labelText) {
373
- case 'Running':
374
- return <Label color="green">{labelText}</Label>;
375
- case 'Stopped':
376
- return <Label color="orange">{labelText}</Label>;
377
- case 'Needs Maintenance':
378
- return <Label color="blue">{labelText}</Label>;
379
- case 'Down':
380
- return <Label color="red">{labelText}</Label>;
381
- }
382
- };
383
-
384
- const toolbarItems = (
385
- <React.Fragment>
386
- <Toolbar id="page-layout-table-column-management-action-toolbar-top">
387
- <span id="page-layout-table-column-management-action-toolbar-top-select-checkbox-label" hidden>
388
- Choose one
389
- </span>
390
- <ToolbarContent>
391
- <ToolbarItem variant="overflow-menu">
392
- <OverflowMenu breakpoint="md">
393
- <OverflowMenuItem>
394
- <MenuToggle>
395
- <FilterIcon /> Name
396
- </MenuToggle>
397
- </OverflowMenuItem>
398
- <OverflowMenuItem>
399
- <MenuToggle variant="plain" aria-label="Sort columns">
400
- <SortAmountDownIcon aria-hidden="true" />
401
- </MenuToggle>
402
- </OverflowMenuItem>
403
- <OverflowMenuGroup groupType="button" isPersistent>
404
- <OverflowMenuItem>
405
- <Button variant="primary">Action</Button>
406
- </OverflowMenuItem>
407
- <OverflowMenuItem breakpoint="md" isPersistent>
408
- <Button variant="link" onClick={handleModalToggle}>
409
- Manage columns
410
- </Button>
411
- </OverflowMenuItem>
412
- </OverflowMenuGroup>
413
- </OverflowMenu>
414
- </ToolbarItem>
415
- <ToolbarItem variant="pagination">{renderPagination(PaginationVariant.top)}</ToolbarItem>
416
- </ToolbarContent>
417
- </Toolbar>
418
- </React.Fragment>
419
- );
420
-
421
- return (
422
- <React.Fragment>
423
- <DashboardWrapper hasPageTemplateTitle>
424
- <PageSection isFilled>
425
- <Card>
426
- {toolbarItems}
427
- <Table variant="compact" aria-label="Column Management Table">
428
- <Thead>
429
- <Tr>
430
- {managedColumns.map((column, columnIndex) => (
431
- <Th key={columnIndex}>{column}</Th>
432
- ))}
433
- </Tr>
434
- </Thead>
435
- <Tbody>
436
- {paginatedRows.map((row, rowIndex) => (
437
- <Tr key={rowIndex}>
438
- <>
439
- {Object.entries(row).map(([key, value]) =>
440
- key === 'status' ? (
441
- <Td width={15} dataLabel="Status">
442
- {renderLabel(value)}
443
- </Td>
444
- ) : key === 'url' ? (
445
- <Td width={10} dataLabel="URL" modifier="truncate">
446
- <TableText>
447
- <a href="#">{row.url}</a>
448
- </TableText>
449
- </Td>
450
- ) : (
451
- <Td
452
- width={key === 'name' ? 15 : 10}
453
- dataLabel={key === 'lastModified' ? 'Last modified' : capitalize(key)}
454
- >
455
- {value}
456
- </Td>
457
- )
458
- )}
459
- </>
460
- </Tr>
461
- ))}
462
- </Tbody>
463
- </Table>
464
- {renderPagination(PaginationVariant.bottom)}
465
- {renderModal()}
466
- </Card>
467
- </PageSection>
468
- </DashboardWrapper>
469
- </React.Fragment>
470
- );
471
- };