@fluentui/react-table 9.0.0-alpha.9 → 9.0.0-rc.2

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 (417) hide show
  1. package/CHANGELOG.json +798 -1
  2. package/CHANGELOG.md +207 -2
  3. package/dist/index.d.ts +239 -133
  4. package/lib/components/DataGrid/DataGrid.js +1 -2
  5. package/lib/components/DataGrid/DataGrid.js.map +1 -1
  6. package/lib/components/DataGrid/DataGrid.types.js.map +1 -1
  7. package/lib/components/DataGrid/renderDataGrid.js +5 -2
  8. package/lib/components/DataGrid/renderDataGrid.js.map +1 -1
  9. package/lib/components/DataGrid/useDataGrid.js +49 -3
  10. package/lib/components/DataGrid/useDataGrid.js.map +1 -1
  11. package/lib/components/DataGrid/useDataGridContextValues.js +11 -1
  12. package/lib/components/DataGrid/useDataGridContextValues.js.map +1 -1
  13. package/lib/components/DataGrid/useDataGridStyles.js +0 -1
  14. package/lib/components/DataGrid/useDataGridStyles.js.map +1 -1
  15. package/lib/components/DataGridBody/DataGridBody.js +1 -2
  16. package/lib/components/DataGridBody/DataGridBody.js.map +1 -1
  17. package/lib/components/DataGridBody/DataGridBody.types.js.map +1 -1
  18. package/lib/components/DataGridBody/renderDataGridBody.js +13 -3
  19. package/lib/components/DataGridBody/renderDataGridBody.js.map +1 -1
  20. package/lib/components/DataGridBody/useDataGridBody.js +16 -2
  21. package/lib/components/DataGridBody/useDataGridBody.js.map +1 -1
  22. package/lib/components/DataGridBody/useDataGridBodyStyles.js +0 -1
  23. package/lib/components/DataGridBody/useDataGridBodyStyles.js.map +1 -1
  24. package/lib/components/DataGridCell/DataGridCell.js +1 -2
  25. package/lib/components/DataGridCell/DataGridCell.js.map +1 -1
  26. package/lib/components/DataGridCell/renderDataGridCell.js +0 -1
  27. package/lib/components/DataGridCell/renderDataGridCell.js.map +1 -1
  28. package/lib/components/DataGridCell/useDataGridCell.js +7 -3
  29. package/lib/components/DataGridCell/useDataGridCell.js.map +1 -1
  30. package/lib/components/DataGridCell/useDataGridCellStyles.js +0 -1
  31. package/lib/components/DataGridCell/useDataGridCellStyles.js.map +1 -1
  32. package/lib/components/DataGridHeader/DataGridHeader.js +1 -2
  33. package/lib/components/DataGridHeader/DataGridHeader.js.map +1 -1
  34. package/lib/components/DataGridHeader/renderDataGridHeader.js +0 -1
  35. package/lib/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
  36. package/lib/components/DataGridHeader/useDataGridHeader.js +2 -2
  37. package/lib/components/DataGridHeader/useDataGridHeader.js.map +1 -1
  38. package/lib/components/DataGridHeader/useDataGridHeaderStyles.js +0 -1
  39. package/lib/components/DataGridHeader/useDataGridHeaderStyles.js.map +1 -1
  40. package/lib/components/DataGridHeaderCell/DataGridHeaderCell.js +1 -2
  41. package/lib/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
  42. package/lib/components/DataGridHeaderCell/renderDataGridHeaderCell.js +0 -1
  43. package/lib/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
  44. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js +23 -3
  45. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  46. package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +0 -4
  47. package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
  48. package/lib/components/DataGridRow/DataGridRow.js +1 -2
  49. package/lib/components/DataGridRow/DataGridRow.js.map +1 -1
  50. package/lib/components/DataGridRow/DataGridRow.types.js.map +1 -1
  51. package/lib/components/DataGridRow/renderDataGridRow.js +15 -3
  52. package/lib/components/DataGridRow/renderDataGridRow.js.map +1 -1
  53. package/lib/components/DataGridRow/useDataGridRow.js +56 -3
  54. package/lib/components/DataGridRow/useDataGridRow.js.map +1 -1
  55. package/lib/components/DataGridRow/useDataGridRowStyles.js +5 -2
  56. package/lib/components/DataGridRow/useDataGridRowStyles.js.map +1 -1
  57. package/lib/components/DataGridSelectionCell/DataGridSelectionCell.js +1 -2
  58. package/lib/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
  59. package/lib/components/DataGridSelectionCell/renderDataGridSelectionCell.js +0 -1
  60. package/lib/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
  61. package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js +33 -3
  62. package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
  63. package/lib/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js +0 -4
  64. package/lib/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js.map +1 -1
  65. package/lib/components/Table/Table.js +1 -2
  66. package/lib/components/Table/Table.js.map +1 -1
  67. package/lib/components/Table/Table.types.js.map +1 -1
  68. package/lib/components/Table/renderTable.js +2 -2
  69. package/lib/components/Table/renderTable.js.map +1 -1
  70. package/lib/components/Table/useTable.js +0 -2
  71. package/lib/components/Table/useTable.js.map +1 -1
  72. package/lib/components/Table/useTableContextValues.js.map +1 -1
  73. package/lib/components/Table/useTableStyles.js +13 -19
  74. package/lib/components/Table/useTableStyles.js.map +1 -1
  75. package/lib/components/TableBody/TableBody.js +1 -2
  76. package/lib/components/TableBody/TableBody.js.map +1 -1
  77. package/lib/components/TableBody/renderTableBody.js +3 -4
  78. package/lib/components/TableBody/renderTableBody.js.map +1 -1
  79. package/lib/components/TableBody/useTableBody.js +0 -2
  80. package/lib/components/TableBody/useTableBody.js.map +1 -1
  81. package/lib/components/TableBody/useTableBodyStyles.js +6 -10
  82. package/lib/components/TableBody/useTableBodyStyles.js.map +1 -1
  83. package/lib/components/TableCell/TableCell.js +1 -2
  84. package/lib/components/TableCell/TableCell.js.map +1 -1
  85. package/lib/components/TableCell/TableCell.types.js.map +1 -1
  86. package/lib/components/TableCell/renderTableCell.js +2 -2
  87. package/lib/components/TableCell/renderTableCell.js.map +1 -1
  88. package/lib/components/TableCell/useTableCell.js +4 -4
  89. package/lib/components/TableCell/useTableCell.js.map +1 -1
  90. package/lib/components/TableCell/useTableCellStyles.js +47 -26
  91. package/lib/components/TableCell/useTableCellStyles.js.map +1 -1
  92. package/lib/components/TableCellActions/TableCellActions.js +1 -2
  93. package/lib/components/TableCellActions/TableCellActions.js.map +1 -1
  94. package/lib/components/TableCellActions/renderTableCellActions.js +3 -4
  95. package/lib/components/TableCellActions/renderTableCellActions.js.map +1 -1
  96. package/lib/components/TableCellActions/useTableCellActions.js +2 -5
  97. package/lib/components/TableCellActions/useTableCellActions.js.map +1 -1
  98. package/lib/components/TableCellActions/useTableCellActionsStyles.js +11 -19
  99. package/lib/components/TableCellActions/useTableCellActionsStyles.js.map +1 -1
  100. package/lib/components/TableCellLayout/TableCellLayout.js +1 -2
  101. package/lib/components/TableCellLayout/TableCellLayout.js.map +1 -1
  102. package/lib/components/TableCellLayout/TableCellLayout.types.js.map +1 -1
  103. package/lib/components/TableCellLayout/renderTableCellLayout.js +10 -6
  104. package/lib/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
  105. package/lib/components/TableCellLayout/useTableCellLayout.js +5 -5
  106. package/lib/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  107. package/lib/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
  108. package/lib/components/TableCellLayout/useTableCellLayoutStyles.js +41 -35
  109. package/lib/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
  110. package/lib/components/TableHeader/TableHeader.js +1 -2
  111. package/lib/components/TableHeader/TableHeader.js.map +1 -1
  112. package/lib/components/TableHeader/renderTableHeader.js +2 -2
  113. package/lib/components/TableHeader/renderTableHeader.js.map +1 -1
  114. package/lib/components/TableHeader/useTableHeader.js +1 -10
  115. package/lib/components/TableHeader/useTableHeader.js.map +1 -1
  116. package/lib/components/TableHeader/useTableHeaderStyles.js +6 -16
  117. package/lib/components/TableHeader/useTableHeaderStyles.js.map +1 -1
  118. package/lib/components/TableHeaderCell/TableHeaderCell.js +1 -2
  119. package/lib/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
  120. package/lib/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -1
  121. package/lib/components/TableHeaderCell/renderTableHeaderCell.js +6 -4
  122. package/lib/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  123. package/lib/components/TableHeaderCell/useTableHeaderCell.js +11 -8
  124. package/lib/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  125. package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js +69 -67
  126. package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
  127. package/lib/components/TableRow/TableRow.js +1 -2
  128. package/lib/components/TableRow/TableRow.js.map +1 -1
  129. package/lib/components/TableRow/TableRow.types.js.map +1 -1
  130. package/lib/components/TableRow/renderTableRow.js +3 -4
  131. package/lib/components/TableRow/renderTableRow.js.map +1 -1
  132. package/lib/components/TableRow/useTableRow.js +7 -5
  133. package/lib/components/TableRow/useTableRow.js.map +1 -1
  134. package/lib/components/TableRow/useTableRowStyles.js +137 -162
  135. package/lib/components/TableRow/useTableRowStyles.js.map +1 -1
  136. package/lib/components/TableSelectionCell/TableSelectionCell.js +1 -2
  137. package/lib/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
  138. package/lib/components/TableSelectionCell/TableSelectionCell.types.js.map +1 -1
  139. package/lib/components/TableSelectionCell/renderTableSelectionCell.js +6 -4
  140. package/lib/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
  141. package/lib/components/TableSelectionCell/useTableSelectionCell.js +9 -5
  142. package/lib/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
  143. package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js +43 -46
  144. package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
  145. package/lib/contexts/columnIdContext.js +9 -0
  146. package/lib/contexts/columnIdContext.js.map +1 -0
  147. package/lib/contexts/dataGridContext.js +13 -0
  148. package/lib/contexts/dataGridContext.js.map +1 -0
  149. package/lib/contexts/rowIdContext.js +9 -0
  150. package/lib/contexts/rowIdContext.js.map +1 -0
  151. package/lib/contexts/tableContext.js +0 -1
  152. package/lib/contexts/tableContext.js.map +1 -1
  153. package/lib/contexts/tableHeaderContext.js.map +1 -1
  154. package/lib/hooks/createColumn.js +35 -0
  155. package/lib/hooks/createColumn.js.map +1 -0
  156. package/lib/hooks/index.js +4 -3
  157. package/lib/hooks/index.js.map +1 -1
  158. package/lib/hooks/selectionManager.js +16 -32
  159. package/lib/hooks/selectionManager.js.map +1 -1
  160. package/lib/hooks/types.js.map +1 -1
  161. package/lib/hooks/{useTable.js → useTableFeatures.js} +12 -9
  162. package/lib/hooks/useTableFeatures.js.map +1 -0
  163. package/lib/hooks/{useSelection.js → useTableSelection.js} +18 -18
  164. package/lib/hooks/useTableSelection.js.map +1 -0
  165. package/lib/hooks/{useSort.js → useTableSort.js} +12 -21
  166. package/lib/hooks/useTableSort.js.map +1 -0
  167. package/lib/index.js +2 -1
  168. package/lib/index.js.map +1 -1
  169. package/lib-commonjs/DataGrid.js +0 -2
  170. package/lib-commonjs/DataGrid.js.map +1 -1
  171. package/lib-commonjs/DataGridBody.js +0 -2
  172. package/lib-commonjs/DataGridBody.js.map +1 -1
  173. package/lib-commonjs/DataGridCell.js +0 -2
  174. package/lib-commonjs/DataGridCell.js.map +1 -1
  175. package/lib-commonjs/DataGridHeader.js +0 -2
  176. package/lib-commonjs/DataGridHeader.js.map +1 -1
  177. package/lib-commonjs/DataGridHeaderCell.js +0 -2
  178. package/lib-commonjs/DataGridHeaderCell.js.map +1 -1
  179. package/lib-commonjs/DataGridRow.js +0 -2
  180. package/lib-commonjs/DataGridRow.js.map +1 -1
  181. package/lib-commonjs/DataGridSelectionCell.js +0 -2
  182. package/lib-commonjs/DataGridSelectionCell.js.map +1 -1
  183. package/lib-commonjs/Table.js +0 -2
  184. package/lib-commonjs/Table.js.map +1 -1
  185. package/lib-commonjs/TableBody.js +0 -2
  186. package/lib-commonjs/TableBody.js.map +1 -1
  187. package/lib-commonjs/TableCell.js +0 -2
  188. package/lib-commonjs/TableCell.js.map +1 -1
  189. package/lib-commonjs/TableCellActions.js +0 -2
  190. package/lib-commonjs/TableCellActions.js.map +1 -1
  191. package/lib-commonjs/TableCellLayout.js +0 -2
  192. package/lib-commonjs/TableCellLayout.js.map +1 -1
  193. package/lib-commonjs/TableCellPrimaryLayout.js +0 -2
  194. package/lib-commonjs/TableCellPrimaryLayout.js.map +1 -1
  195. package/lib-commonjs/TableHeader.js +0 -2
  196. package/lib-commonjs/TableHeader.js.map +1 -1
  197. package/lib-commonjs/TableHeaderCell.js +0 -2
  198. package/lib-commonjs/TableHeaderCell.js.map +1 -1
  199. package/lib-commonjs/TableRow.js +0 -2
  200. package/lib-commonjs/TableRow.js.map +1 -1
  201. package/lib-commonjs/TableSelectionCell.js +0 -2
  202. package/lib-commonjs/TableSelectionCell.js.map +1 -1
  203. package/lib-commonjs/components/DataGrid/DataGrid.js +1 -8
  204. package/lib-commonjs/components/DataGrid/DataGrid.js.map +1 -1
  205. package/lib-commonjs/components/DataGrid/DataGrid.types.js.map +1 -1
  206. package/lib-commonjs/components/DataGrid/index.js +0 -6
  207. package/lib-commonjs/components/DataGrid/index.js.map +1 -1
  208. package/lib-commonjs/components/DataGrid/renderDataGrid.js +5 -5
  209. package/lib-commonjs/components/DataGrid/renderDataGrid.js.map +1 -1
  210. package/lib-commonjs/components/DataGrid/useDataGrid.js +49 -6
  211. package/lib-commonjs/components/DataGrid/useDataGrid.js.map +1 -1
  212. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js +11 -4
  213. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js.map +1 -1
  214. package/lib-commonjs/components/DataGrid/useDataGridStyles.js +0 -5
  215. package/lib-commonjs/components/DataGrid/useDataGridStyles.js.map +1 -1
  216. package/lib-commonjs/components/DataGridBody/DataGridBody.js +1 -7
  217. package/lib-commonjs/components/DataGridBody/DataGridBody.js.map +1 -1
  218. package/lib-commonjs/components/DataGridBody/DataGridBody.types.js.map +1 -1
  219. package/lib-commonjs/components/DataGridBody/index.js +0 -6
  220. package/lib-commonjs/components/DataGridBody/index.js.map +1 -1
  221. package/lib-commonjs/components/DataGridBody/renderDataGridBody.js +13 -6
  222. package/lib-commonjs/components/DataGridBody/renderDataGridBody.js.map +1 -1
  223. package/lib-commonjs/components/DataGridBody/useDataGridBody.js +16 -5
  224. package/lib-commonjs/components/DataGridBody/useDataGridBody.js.map +1 -1
  225. package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.js +0 -5
  226. package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.js.map +1 -1
  227. package/lib-commonjs/components/DataGridCell/DataGridCell.js +1 -7
  228. package/lib-commonjs/components/DataGridCell/DataGridCell.js.map +1 -1
  229. package/lib-commonjs/components/DataGridCell/DataGridCell.types.js.map +1 -1
  230. package/lib-commonjs/components/DataGridCell/index.js +0 -6
  231. package/lib-commonjs/components/DataGridCell/index.js.map +1 -1
  232. package/lib-commonjs/components/DataGridCell/renderDataGridCell.js +0 -4
  233. package/lib-commonjs/components/DataGridCell/renderDataGridCell.js.map +1 -1
  234. package/lib-commonjs/components/DataGridCell/useDataGridCell.js +7 -6
  235. package/lib-commonjs/components/DataGridCell/useDataGridCell.js.map +1 -1
  236. package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.js +0 -5
  237. package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.js.map +1 -1
  238. package/lib-commonjs/components/DataGridHeader/DataGridHeader.js +1 -7
  239. package/lib-commonjs/components/DataGridHeader/DataGridHeader.js.map +1 -1
  240. package/lib-commonjs/components/DataGridHeader/DataGridHeader.types.js.map +1 -1
  241. package/lib-commonjs/components/DataGridHeader/index.js +0 -6
  242. package/lib-commonjs/components/DataGridHeader/index.js.map +1 -1
  243. package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js +0 -4
  244. package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
  245. package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js +2 -5
  246. package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js.map +1 -1
  247. package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.js +0 -5
  248. package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.js.map +1 -1
  249. package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js +1 -7
  250. package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
  251. package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.types.js.map +1 -1
  252. package/lib-commonjs/components/DataGridHeaderCell/index.js +0 -6
  253. package/lib-commonjs/components/DataGridHeaderCell/index.js.map +1 -1
  254. package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js +0 -4
  255. package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
  256. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js +23 -6
  257. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  258. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +0 -8
  259. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
  260. package/lib-commonjs/components/DataGridRow/DataGridRow.js +1 -7
  261. package/lib-commonjs/components/DataGridRow/DataGridRow.js.map +1 -1
  262. package/lib-commonjs/components/DataGridRow/DataGridRow.types.js.map +1 -1
  263. package/lib-commonjs/components/DataGridRow/index.js +0 -6
  264. package/lib-commonjs/components/DataGridRow/index.js.map +1 -1
  265. package/lib-commonjs/components/DataGridRow/renderDataGridRow.js +15 -6
  266. package/lib-commonjs/components/DataGridRow/renderDataGridRow.js.map +1 -1
  267. package/lib-commonjs/components/DataGridRow/useDataGridRow.js +56 -6
  268. package/lib-commonjs/components/DataGridRow/useDataGridRow.js.map +1 -1
  269. package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.js +5 -6
  270. package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.js.map +1 -1
  271. package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js +1 -7
  272. package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
  273. package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.types.js.map +1 -1
  274. package/lib-commonjs/components/DataGridSelectionCell/index.js +0 -6
  275. package/lib-commonjs/components/DataGridSelectionCell/index.js.map +1 -1
  276. package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js +0 -4
  277. package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
  278. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js +33 -6
  279. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
  280. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js +0 -8
  281. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js.map +1 -1
  282. package/lib-commonjs/components/Table/Table.js +1 -8
  283. package/lib-commonjs/components/Table/Table.js.map +1 -1
  284. package/lib-commonjs/components/Table/Table.types.js.map +1 -1
  285. package/lib-commonjs/components/Table/index.js +0 -6
  286. package/lib-commonjs/components/Table/index.js.map +1 -1
  287. package/lib-commonjs/components/Table/renderTable.js +2 -7
  288. package/lib-commonjs/components/Table/renderTable.js.map +1 -1
  289. package/lib-commonjs/components/Table/useTable.js +0 -5
  290. package/lib-commonjs/components/Table/useTable.js.map +1 -1
  291. package/lib-commonjs/components/Table/useTableContextValues.js +0 -3
  292. package/lib-commonjs/components/Table/useTableContextValues.js.map +1 -1
  293. package/lib-commonjs/components/Table/useTableStyles.js +13 -23
  294. package/lib-commonjs/components/Table/useTableStyles.js.map +1 -1
  295. package/lib-commonjs/components/TableBody/TableBody.js +1 -7
  296. package/lib-commonjs/components/TableBody/TableBody.js.map +1 -1
  297. package/lib-commonjs/components/TableBody/TableBody.types.js.map +1 -1
  298. package/lib-commonjs/components/TableBody/index.js +0 -6
  299. package/lib-commonjs/components/TableBody/index.js.map +1 -1
  300. package/lib-commonjs/components/TableBody/renderTableBody.js +3 -8
  301. package/lib-commonjs/components/TableBody/renderTableBody.js.map +1 -1
  302. package/lib-commonjs/components/TableBody/useTableBody.js +0 -6
  303. package/lib-commonjs/components/TableBody/useTableBody.js.map +1 -1
  304. package/lib-commonjs/components/TableBody/useTableBodyStyles.js +6 -12
  305. package/lib-commonjs/components/TableBody/useTableBodyStyles.js.map +1 -1
  306. package/lib-commonjs/components/TableCell/TableCell.js +1 -7
  307. package/lib-commonjs/components/TableCell/TableCell.js.map +1 -1
  308. package/lib-commonjs/components/TableCell/TableCell.types.js.map +1 -1
  309. package/lib-commonjs/components/TableCell/index.js +0 -6
  310. package/lib-commonjs/components/TableCell/index.js.map +1 -1
  311. package/lib-commonjs/components/TableCell/renderTableCell.js +2 -6
  312. package/lib-commonjs/components/TableCell/renderTableCell.js.map +1 -1
  313. package/lib-commonjs/components/TableCell/useTableCell.js +4 -8
  314. package/lib-commonjs/components/TableCell/useTableCell.js.map +1 -1
  315. package/lib-commonjs/components/TableCell/useTableCellStyles.js +47 -30
  316. package/lib-commonjs/components/TableCell/useTableCellStyles.js.map +1 -1
  317. package/lib-commonjs/components/TableCellActions/TableCellActions.js +1 -7
  318. package/lib-commonjs/components/TableCellActions/TableCellActions.js.map +1 -1
  319. package/lib-commonjs/components/TableCellActions/TableCellActions.types.js.map +1 -1
  320. package/lib-commonjs/components/TableCellActions/index.js +0 -6
  321. package/lib-commonjs/components/TableCellActions/index.js.map +1 -1
  322. package/lib-commonjs/components/TableCellActions/renderTableCellActions.js +3 -8
  323. package/lib-commonjs/components/TableCellActions/renderTableCellActions.js.map +1 -1
  324. package/lib-commonjs/components/TableCellActions/useTableCellActions.js +1 -8
  325. package/lib-commonjs/components/TableCellActions/useTableCellActions.js.map +1 -1
  326. package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.js +11 -23
  327. package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.js.map +1 -1
  328. package/lib-commonjs/components/TableCellLayout/TableCellLayout.js +1 -8
  329. package/lib-commonjs/components/TableCellLayout/TableCellLayout.js.map +1 -1
  330. package/lib-commonjs/components/TableCellLayout/TableCellLayout.types.js.map +1 -1
  331. package/lib-commonjs/components/TableCellLayout/index.js +0 -6
  332. package/lib-commonjs/components/TableCellLayout/index.js.map +1 -1
  333. package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js +10 -11
  334. package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
  335. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js +5 -9
  336. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  337. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js +0 -3
  338. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
  339. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js +41 -39
  340. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
  341. package/lib-commonjs/components/TableHeader/TableHeader.js +1 -7
  342. package/lib-commonjs/components/TableHeader/TableHeader.js.map +1 -1
  343. package/lib-commonjs/components/TableHeader/TableHeader.types.js.map +1 -1
  344. package/lib-commonjs/components/TableHeader/index.js +0 -6
  345. package/lib-commonjs/components/TableHeader/index.js.map +1 -1
  346. package/lib-commonjs/components/TableHeader/renderTableHeader.js +2 -7
  347. package/lib-commonjs/components/TableHeader/renderTableHeader.js.map +1 -1
  348. package/lib-commonjs/components/TableHeader/useTableHeader.js +1 -15
  349. package/lib-commonjs/components/TableHeader/useTableHeader.js.map +1 -1
  350. package/lib-commonjs/components/TableHeader/useTableHeaderStyles.js +6 -19
  351. package/lib-commonjs/components/TableHeader/useTableHeaderStyles.js.map +1 -1
  352. package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js +1 -7
  353. package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
  354. package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -1
  355. package/lib-commonjs/components/TableHeaderCell/index.js +0 -6
  356. package/lib-commonjs/components/TableHeaderCell/index.js.map +1 -1
  357. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js +6 -8
  358. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  359. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js +10 -14
  360. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  361. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js +69 -71
  362. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
  363. package/lib-commonjs/components/TableRow/TableRow.js +1 -7
  364. package/lib-commonjs/components/TableRow/TableRow.js.map +1 -1
  365. package/lib-commonjs/components/TableRow/TableRow.types.js.map +1 -1
  366. package/lib-commonjs/components/TableRow/index.js +0 -6
  367. package/lib-commonjs/components/TableRow/index.js.map +1 -1
  368. package/lib-commonjs/components/TableRow/renderTableRow.js +3 -8
  369. package/lib-commonjs/components/TableRow/renderTableRow.js.map +1 -1
  370. package/lib-commonjs/components/TableRow/useTableRow.js +7 -10
  371. package/lib-commonjs/components/TableRow/useTableRow.js.map +1 -1
  372. package/lib-commonjs/components/TableRow/useTableRowStyles.js +137 -170
  373. package/lib-commonjs/components/TableRow/useTableRowStyles.js.map +1 -1
  374. package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js +1 -7
  375. package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
  376. package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.types.js.map +1 -1
  377. package/lib-commonjs/components/TableSelectionCell/index.js +0 -6
  378. package/lib-commonjs/components/TableSelectionCell/index.js.map +1 -1
  379. package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js +6 -8
  380. package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
  381. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js +8 -11
  382. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
  383. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js +43 -50
  384. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
  385. package/lib-commonjs/contexts/columnIdContext.js +16 -0
  386. package/lib-commonjs/contexts/columnIdContext.js.map +1 -0
  387. package/lib-commonjs/contexts/dataGridContext.js +20 -0
  388. package/lib-commonjs/contexts/dataGridContext.js.map +1 -0
  389. package/lib-commonjs/contexts/rowIdContext.js +16 -0
  390. package/lib-commonjs/contexts/rowIdContext.js.map +1 -0
  391. package/lib-commonjs/contexts/tableContext.js +0 -5
  392. package/lib-commonjs/contexts/tableContext.js.map +1 -1
  393. package/lib-commonjs/contexts/tableHeaderContext.js +0 -4
  394. package/lib-commonjs/contexts/tableHeaderContext.js.map +1 -1
  395. package/lib-commonjs/hooks/createColumn.js +42 -0
  396. package/lib-commonjs/hooks/createColumn.js.map +1 -0
  397. package/lib-commonjs/hooks/index.js +4 -8
  398. package/lib-commonjs/hooks/index.js.map +1 -1
  399. package/lib-commonjs/hooks/selectionManager.js +16 -34
  400. package/lib-commonjs/hooks/selectionManager.js.map +1 -1
  401. package/lib-commonjs/hooks/types.js.map +1 -1
  402. package/lib-commonjs/hooks/useTableFeatures.js +42 -0
  403. package/lib-commonjs/hooks/useTableFeatures.js.map +1 -0
  404. package/lib-commonjs/hooks/{useSelection.js → useTableSelection.js} +21 -28
  405. package/lib-commonjs/hooks/useTableSelection.js.map +1 -0
  406. package/lib-commonjs/hooks/{useSort.js → useTableSort.js} +15 -29
  407. package/lib-commonjs/hooks/useTableSort.js.map +1 -0
  408. package/lib-commonjs/index.js +27 -44
  409. package/lib-commonjs/index.js.map +1 -1
  410. package/package.json +15 -11
  411. package/lib/hooks/useSelection.js.map +0 -1
  412. package/lib/hooks/useSort.js.map +0 -1
  413. package/lib/hooks/useTable.js.map +0 -1
  414. package/lib-commonjs/hooks/useSelection.js.map +0 -1
  415. package/lib-commonjs/hooks/useSort.js.map +0 -1
  416. package/lib-commonjs/hooks/useTable.js +0 -42
  417. package/lib-commonjs/hooks/useTable.js.map +0 -1
@@ -1,74 +1,74 @@
1
1
  import { __styles, mergeClasses, shorthands } from '@griffel/react';
2
2
  import { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';
3
+ import { tokens } from '@fluentui/react-theme';
3
4
  export const tableSelectionCellClassNames = {
4
5
  root: 'fui-TableSelectionCell',
5
6
  checkboxIndicator: 'fui-TableSelectionCell__checkboxIndicator',
6
7
  radioIndicator: 'fui-TableSelectionCell__radioIndicator'
7
8
  };
8
-
9
9
  const useTableLayoutStyles = /*#__PURE__*/__styles({
10
- "root": {
11
- "mc9l5x": "f15pt5es",
12
- "a9b677": "fksc0bp"
10
+ root: {
11
+ mc9l5x: "f15pt5es",
12
+ a9b677: "fksc0bp"
13
13
  }
14
14
  }, {
15
- "d": [".f15pt5es{display:table-cell;}", ".fksc0bp{width:44px;}"]
15
+ d: [".f15pt5es{display:table-cell;}", ".fksc0bp{width:44px;}"]
16
16
  });
17
-
18
17
  const useFlexLayoutStyles = /*#__PURE__*/__styles({
19
- "root": {
20
- "mc9l5x": "f22iagw",
21
- "Bh6795r": "fqerorx",
22
- "Bnnss6s": "f1neuvcm",
23
- "xawz": "fkjuxzh",
24
- "Bf4jedk": "fvrlu0f",
25
- "B2u0y6b": "f1c71y05",
26
- "Brf1p80": "f4d9j23"
18
+ root: {
19
+ mc9l5x: "f22iagw",
20
+ Bh6795r: "fqerorx",
21
+ Bnnss6s: "f1neuvcm",
22
+ xawz: "fkjuxzh",
23
+ Bf4jedk: "fvrlu0f",
24
+ B2u0y6b: "f1c71y05",
25
+ Brf1p80: "f4d9j23"
27
26
  }
28
27
  }, {
29
- "d": [".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f1neuvcm{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;}", ".fkjuxzh{-webkit-flex-basis:0px;-ms-flex-preferred-size:0px;flex-basis:0px;}", ".fvrlu0f{min-width:44px;}", ".f1c71y05{max-width:44px;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}"]
28
+ d: [".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f1neuvcm{-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;}", ".fkjuxzh{-webkit-flex-basis:0px;-ms-flex-preferred-size:0px;flex-basis:0px;}", ".fvrlu0f{min-width:44px;}", ".f1c71y05{max-width:44px;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}"]
30
29
  });
31
30
  /**
32
31
  * Styles for the root slot
33
32
  */
34
-
35
-
36
33
  const useStyles = /*#__PURE__*/__styles({
37
- "root": {
38
- "fsow6f": "f17mccla",
39
- "Huce71": "fz5stix",
40
- "z8tnut": "f1g0x7ka",
41
- "z189sj": ["fhxju0i", "f1cnd47f"],
42
- "Byoj8tv": "f1qch9an",
43
- "uwmqm3": ["f1cnd47f", "fhxju0i"]
34
+ root: {
35
+ fsow6f: "f17mccla",
36
+ Huce71: "fz5stix",
37
+ z8tnut: "f1g0x7ka",
38
+ z189sj: ["fhxju0i", "f1cnd47f"],
39
+ Byoj8tv: "f1qch9an",
40
+ uwmqm3: ["f1cnd47f", "fhxju0i"],
41
+ Bn4voq9: "fz36nt7",
42
+ g9k6zt: "f9znhxp",
43
+ Bfpq7zp: "fqrak0z",
44
+ kdpuga: ["f1o2ludy", "f1kjnpwc"],
45
+ Bw81rd7: ["f1kjnpwc", "f1o2ludy"],
46
+ B6xbmo0: ["fxmnebo", "f1witrsb"],
47
+ dm238s: ["f1witrsb", "fxmnebo"]
44
48
  },
45
- "radioIndicator": {
46
- "mc9l5x": "f22iagw",
47
- "Bh6795r": "fqerorx",
48
- "Bt984gj": "f122n59",
49
- "Brf1p80": "f4d9j23",
50
- "B5pe6w7": "f1cqkysu",
51
- "p4uzdd": "f1sgf1mg"
49
+ radioIndicator: {
50
+ mc9l5x: "f22iagw",
51
+ Bh6795r: "fqerorx",
52
+ Bt984gj: "f122n59",
53
+ Brf1p80: "f4d9j23"
52
54
  },
53
- "subtle": {
54
- "abs64n": "fk73vx1",
55
- "Brovlpu": "ftqa4ok",
56
- "B486eqv": "f2hkw1w",
57
- "B113ap8": "f1upwfw9"
55
+ subtle: {
56
+ abs64n: "fk73vx1",
57
+ Brovlpu: "ftqa4ok",
58
+ B486eqv: "f2hkw1w",
59
+ B8a84jv: "f1y7ij6c"
58
60
  },
59
- "hidden": {
60
- "Bcdw1i0": "fd7fpy0"
61
+ hidden: {
62
+ Bcdw1i0: "fd7fpy0"
61
63
  }
62
64
  }, {
63
- "d": [".f17mccla{text-align:center;}", ".fz5stix{white-space:nowrap;}", ".f1g0x7ka{padding-top:0;}", ".fhxju0i{padding-right:0;}", ".f1cnd47f{padding-left:0;}", ".f1qch9an{padding-bottom:0;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f1cqkysu svg{width:16px;}", ".f1sgf1mg svg{height:16px;}", ".fk73vx1{opacity:0;}", ".f1upwfw9[data-fui-focus-visible]:focus-within{opacity:1;}", ".fd7fpy0{visibility:hidden;}"],
64
- "f": [".ftqa4ok:focus{outline-style:none;}"],
65
- "i": [".f2hkw1w:focus-visible{outline-style:none;}"]
65
+ d: [".f17mccla{text-align:center;}", ".fz5stix{white-space:nowrap;}", ".f1g0x7ka{padding-top:0;}", ".fhxju0i{padding-right:0;}", ".f1cnd47f{padding-left:0;}", ".f1qch9an{padding-bottom:0;}", ".fz36nt7[data-fui-focus-visible]{outline-width:2px;}", ".f9znhxp[data-fui-focus-visible]{outline-style:solid;}", ".fqrak0z[data-fui-focus-visible]{outline-color:var(--colorStrokeFocus2);}", ".f1o2ludy[data-fui-focus-visible]{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f1kjnpwc[data-fui-focus-visible]{border-bottom-left-radius:var(--borderRadiusMedium);}", ".fxmnebo[data-fui-focus-visible]{border-top-right-radius:var(--borderRadiusMedium);}", ".f1witrsb[data-fui-focus-visible]{border-top-left-radius:var(--borderRadiusMedium);}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".fqerorx{-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;}", ".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".fk73vx1{opacity:0;}", ".f1y7ij6c[data-fui-focus-within]:focus-within{opacity:1;}", ".fd7fpy0{visibility:hidden;}"],
66
+ f: [".ftqa4ok:focus{outline-style:none;}"],
67
+ i: [".f2hkw1w:focus-visible{outline-style:none;}"]
66
68
  });
67
69
  /**
68
70
  * Apply styling to the TableSelectionCell slots based on the state
69
71
  */
70
-
71
-
72
72
  export const useTableSelectionCellStyles_unstable = state => {
73
73
  const styles = useStyles();
74
74
  const layoutStyles = {
@@ -76,15 +76,12 @@ export const useTableSelectionCellStyles_unstable = state => {
76
76
  flex: useFlexLayoutStyles()
77
77
  };
78
78
  state.root.className = mergeClasses(tableSelectionCellClassNames.root, styles.root, state.noNativeElements ? layoutStyles.flex.root : layoutStyles.table.root, state.subtle && state.checked === false && styles.subtle, state.hidden && styles.hidden, state.root.className);
79
-
80
79
  if (state.checkboxIndicator) {
81
80
  state.checkboxIndicator.className = mergeClasses(tableSelectionCellClassNames.checkboxIndicator, state.checkboxIndicator.className);
82
81
  }
83
-
84
82
  if (state.radioIndicator) {
85
83
  state.radioIndicator.className = mergeClasses(tableSelectionCellClassNames.radioIndicator, styles.radioIndicator, state.radioIndicator.className);
86
84
  }
87
-
88
85
  return state;
89
86
  };
90
87
  //# sourceMappingURL=useTableSelectionCellStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["packages/react-components/react-table/src/components/TableSelectionCell/useTableSelectionCellStyles.ts"],"names":[],"mappings":"AAAA,mBAAqB,YAArB,EAAmC,UAAnC,QAAqD,gBAArD;AAGA,SAAS,+BAAT,QAAgD,yBAAhD;AAEA,OAAO,MAAM,4BAA4B,GAA4C;EACnF,IAAI,EAAE,wBAD6E;EAEnF,iBAAiB,EAAE,2CAFgE;EAGnF,cAAc,EAAE;AAHmE,CAA9E;;AAMP,MAAM,oBAAoB,gBAAG;EAAA;IAAA;IAAA;EAAA;AAAA;EAAA;AAAA,EAA7B;;AAOA,MAAM,mBAAmB,gBAAG;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;AAAA;EAAA;AAAA,EAA5B;AAUA;;AAEG;;;AACH,MAAM,SAAS,gBAAG;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;EAAA;AAAA;EAAA;EAAA;EAAA;AAAA,EAAlB;AAiCA;;AAEG;;;AACH,OAAO,MAAM,oCAAoC,GAAI,KAAD,IAA4D;EAC9G,MAAM,MAAM,GAAG,SAAS,EAAxB;EACA,MAAM,YAAY,GAAG;IACnB,KAAK,EAAE,oBAAoB,EADR;IAEnB,IAAI,EAAE,mBAAmB;EAFN,CAArB;EAIA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,YAAY,CACjC,4BAA4B,CAAC,IADI,EAEjC,MAAM,CAAC,IAF0B,EAGjC,KAAK,CAAC,gBAAN,GAAyB,YAAY,CAAC,IAAb,CAAkB,IAA3C,GAAkD,YAAY,CAAC,KAAb,CAAmB,IAHpC,EAIjC,KAAK,CAAC,MAAN,IAAgB,KAAK,CAAC,OAAN,KAAkB,KAAlC,IAA2C,MAAM,CAAC,MAJjB,EAKjC,KAAK,CAAC,MAAN,IAAgB,MAAM,CAAC,MALU,EAMjC,KAAK,CAAC,IAAN,CAAW,SANsB,CAAnC;;EAQA,IAAI,KAAK,CAAC,iBAAV,EAA6B;IAC3B,KAAK,CAAC,iBAAN,CAAwB,SAAxB,GAAoC,YAAY,CAC9C,4BAA4B,CAAC,iBADiB,EAE9C,KAAK,CAAC,iBAAN,CAAwB,SAFsB,CAAhD;EAID;;EAED,IAAI,KAAK,CAAC,cAAV,EAA0B;IACxB,KAAK,CAAC,cAAN,CAAqB,SAArB,GAAiC,YAAY,CAC3C,4BAA4B,CAAC,cADc,EAE3C,MAAM,CAAC,cAFoC,EAG3C,KAAK,CAAC,cAAN,CAAqB,SAHsB,CAA7C;EAKD;;EAED,OAAO,KAAP;AACD,CA9BM","sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport type { TableSelectionCellSlots, TableSelectionCellState } from './TableSelectionCell.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\n\nexport const tableSelectionCellClassNames: SlotClassNames<TableSelectionCellSlots> = {\n root: 'fui-TableSelectionCell',\n checkboxIndicator: 'fui-TableSelectionCell__checkboxIndicator',\n radioIndicator: 'fui-TableSelectionCell__radioIndicator',\n};\n\nconst useTableLayoutStyles = makeStyles({\n root: {\n display: 'table-cell',\n width: '44px',\n },\n});\n\nconst useFlexLayoutStyles = makeStyles({\n root: {\n display: 'flex',\n ...shorthands.flex(1, 1, '0px'),\n minWidth: '44px',\n maxWidth: '44px',\n justifyContent: 'center',\n },\n});\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n textAlign: 'center',\n whiteSpace: 'nowrap',\n ...shorthands.padding(0),\n },\n\n radioIndicator: {\n display: 'flex',\n flexGrow: 1,\n alignItems: 'center',\n justifyContent: 'center',\n '& svg': {\n width: '16px',\n height: '16px',\n },\n },\n\n subtle: {\n opacity: 0,\n ...createCustomFocusIndicatorStyle(\n {\n opacity: 1,\n },\n { selector: 'focus-within' },\n ),\n },\n\n hidden: {\n visibility: 'hidden',\n },\n});\n\n/**\n * Apply styling to the TableSelectionCell slots based on the state\n */\nexport const useTableSelectionCellStyles_unstable = (state: TableSelectionCellState): TableSelectionCellState => {\n const styles = useStyles();\n const layoutStyles = {\n table: useTableLayoutStyles(),\n flex: useFlexLayoutStyles(),\n };\n state.root.className = mergeClasses(\n tableSelectionCellClassNames.root,\n styles.root,\n state.noNativeElements ? layoutStyles.flex.root : layoutStyles.table.root,\n state.subtle && state.checked === false && styles.subtle,\n state.hidden && styles.hidden,\n state.root.className,\n );\n if (state.checkboxIndicator) {\n state.checkboxIndicator.className = mergeClasses(\n tableSelectionCellClassNames.checkboxIndicator,\n state.checkboxIndicator.className,\n );\n }\n\n if (state.radioIndicator) {\n state.radioIndicator.className = mergeClasses(\n tableSelectionCellClassNames.radioIndicator,\n styles.radioIndicator,\n state.radioIndicator.className,\n );\n }\n\n return state;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"mappings":"AAAA,mBAAqBA,YAAY,EAAEC,UAAU,QAAQ,gBAAgB;AAGrE,SAASC,+BAA+B,QAAQ,yBAAyB;AACzE,SAASC,MAAM,QAAQ,uBAAuB;AAE9C,OAAO,MAAMC,4BAA4B,GAA4C;EACnFC,IAAI,EAAE,wBAAwB;EAC9BC,iBAAiB,EAAE,2CAA2C;EAC9DC,cAAc,EAAE;CACjB;AAED,MAAMC,oBAAoB,gBAAG;EAAA;IAAA;IAAA;EAAA;AAAA;EAAA;AAAA,EAK3B;AAEF,MAAMC,mBAAmB,gBAAG;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;AAAA;EAAA;AAAA,EAQ1B;AAEF;;;AAGA,MAAMC,SAAS,gBAAG;EAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;IAAA;IAAA;IAAA;EAAA;EAAA;IAAA;EAAA;AAAA;EAAA;EAAA;EAAA;AAAA,EAkChB;AAEF;;;AAGA,OAAO,MAAMC,oCAAoC,GAAIC,KAA8B,IAA6B;EAC9G,MAAMC,MAAM,GAAGH,SAAS,EAAE;EAC1B,MAAMI,YAAY,GAAG;IACnBC,KAAK,EAAEP,oBAAoB,EAAE;IAC7BQ,IAAI,EAAEP,mBAAmB;GAC1B;EACDG,KAAK,CAACP,IAAI,CAACY,SAAS,GAAGjB,YAAY,CACjCI,4BAA4B,CAACC,IAAI,EACjCQ,MAAM,CAACR,IAAI,EACXO,KAAK,CAACM,gBAAgB,GAAGJ,YAAY,CAACE,IAAI,CAACX,IAAI,GAAGS,YAAY,CAACC,KAAK,CAACV,IAAI,EACzEO,KAAK,CAACO,MAAM,IAAIP,KAAK,CAACQ,OAAO,KAAK,KAAK,IAAIP,MAAM,CAACM,MAAM,EACxDP,KAAK,CAACS,MAAM,IAAIR,MAAM,CAACQ,MAAM,EAC7BT,KAAK,CAACP,IAAI,CAACY,SAAS,CACrB;EACD,IAAIL,KAAK,CAACN,iBAAiB,EAAE;IAC3BM,KAAK,CAACN,iBAAiB,CAACW,SAAS,GAAGjB,YAAY,CAC9CI,4BAA4B,CAACE,iBAAiB,EAC9CM,KAAK,CAACN,iBAAiB,CAACW,SAAS,CAClC;;EAGH,IAAIL,KAAK,CAACL,cAAc,EAAE;IACxBK,KAAK,CAACL,cAAc,CAACU,SAAS,GAAGjB,YAAY,CAC3CI,4BAA4B,CAACG,cAAc,EAC3CM,MAAM,CAACN,cAAc,EACrBK,KAAK,CAACL,cAAc,CAACU,SAAS,CAC/B;;EAGH,OAAOL,KAAK;AACd,CAAC","names":["mergeClasses","shorthands","createCustomFocusIndicatorStyle","tokens","tableSelectionCellClassNames","root","checkboxIndicator","radioIndicator","useTableLayoutStyles","useFlexLayoutStyles","useStyles","useTableSelectionCellStyles_unstable","state","styles","layoutStyles","table","flex","className","noNativeElements","subtle","checked","hidden"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/components/TableSelectionCell/useTableSelectionCellStyles.ts"],"sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport type { TableSelectionCellSlots, TableSelectionCellState } from './TableSelectionCell.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens } from '@fluentui/react-theme';\n\nexport const tableSelectionCellClassNames: SlotClassNames<TableSelectionCellSlots> = {\n root: 'fui-TableSelectionCell',\n checkboxIndicator: 'fui-TableSelectionCell__checkboxIndicator',\n radioIndicator: 'fui-TableSelectionCell__radioIndicator',\n};\n\nconst useTableLayoutStyles = makeStyles({\n root: {\n display: 'table-cell',\n width: '44px',\n },\n});\n\nconst useFlexLayoutStyles = makeStyles({\n root: {\n display: 'flex',\n ...shorthands.flex(1, 1, '0px'),\n minWidth: '44px',\n maxWidth: '44px',\n justifyContent: 'center',\n },\n});\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n textAlign: 'center',\n whiteSpace: 'nowrap',\n ...shorthands.padding(0),\n ...createCustomFocusIndicatorStyle(\n {\n ...shorthands.outline('2px', 'solid', tokens.colorStrokeFocus2),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n },\n { selector: 'focus', enableOutline: true },\n ),\n },\n\n radioIndicator: {\n display: 'flex',\n flexGrow: 1,\n alignItems: 'center',\n justifyContent: 'center',\n },\n\n subtle: {\n opacity: 0,\n ...createCustomFocusIndicatorStyle(\n {\n opacity: 1,\n },\n { selector: 'focus-within' },\n ),\n },\n\n hidden: {\n visibility: 'hidden',\n },\n});\n\n/**\n * Apply styling to the TableSelectionCell slots based on the state\n */\nexport const useTableSelectionCellStyles_unstable = (state: TableSelectionCellState): TableSelectionCellState => {\n const styles = useStyles();\n const layoutStyles = {\n table: useTableLayoutStyles(),\n flex: useFlexLayoutStyles(),\n };\n state.root.className = mergeClasses(\n tableSelectionCellClassNames.root,\n styles.root,\n state.noNativeElements ? layoutStyles.flex.root : layoutStyles.table.root,\n state.subtle && state.checked === false && styles.subtle,\n state.hidden && styles.hidden,\n state.root.className,\n );\n if (state.checkboxIndicator) {\n state.checkboxIndicator.className = mergeClasses(\n tableSelectionCellClassNames.checkboxIndicator,\n state.checkboxIndicator.className,\n );\n }\n\n if (state.radioIndicator) {\n state.radioIndicator.className = mergeClasses(\n tableSelectionCellClassNames.radioIndicator,\n styles.radioIndicator,\n state.radioIndicator.className,\n );\n }\n\n return state;\n};\n"]}
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ const columnIdContext = /*#__PURE__*/React.createContext(undefined);
3
+ export const columnIdContextDefaultValue = '';
4
+ export const useColumnIdContext = () => {
5
+ var _a;
6
+ return (_a = React.useContext(columnIdContext)) !== null && _a !== void 0 ? _a : columnIdContextDefaultValue;
7
+ };
8
+ export const ColumnIdContextProvider = columnIdContext.Provider;
9
+ //# sourceMappingURL=columnIdContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,MAAMC,eAAe,gBAAGD,KAAK,CAACE,aAAa,CAA4BC,SAAS,CAAC;AAEjF,OAAO,MAAMC,2BAA2B,GAAG,EAAE;AAE7C,OAAO,MAAMC,kBAAkB,GAAG,MAAK;EAAA;EAAC,kBAAK,CAACC,UAAU,CAACL,eAAe,CAAC,mCAAIG,2BAA2B;AAAA;AAExG,OAAO,MAAMG,uBAAuB,GAAGN,eAAe,CAACO,QAAQ","names":["React","columnIdContext","createContext","undefined","columnIdContextDefaultValue","useColumnIdContext","useContext","ColumnIdContextProvider","Provider"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/contexts/columnIdContext.ts"],"sourcesContent":["import * as React from 'react';\nimport type { TableColumnId } from '../hooks/';\n\nconst columnIdContext = React.createContext<TableColumnId | undefined>(undefined);\n\nexport const columnIdContextDefaultValue = '';\n\nexport const useColumnIdContext = () => React.useContext(columnIdContext) ?? columnIdContextDefaultValue;\n\nexport const ColumnIdContextProvider = columnIdContext.Provider;\n"]}
@@ -0,0 +1,13 @@
1
+ import { createContext, useContextSelector } from '@fluentui/react-context-selector';
2
+ import { defaultTableState } from '../hooks';
3
+ const dataGridContext = /*#__PURE__*/createContext(undefined);
4
+ const dataGridContextDefaultValue = {
5
+ ...defaultTableState,
6
+ subtleSelection: false,
7
+ selectableRows: false,
8
+ selectionAppearance: 'brand',
9
+ focusMode: 'none'
10
+ };
11
+ export const DataGridContextProvider = dataGridContext.Provider;
12
+ export const useDataGridContext_unstable = selector => useContextSelector(dataGridContext, (ctx = dataGridContextDefaultValue) => selector(ctx));
13
+ //# sourceMappingURL=dataGridContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"mappings":"AAAA,SAASA,aAAa,EAAEC,kBAAkB,QAAQ,kCAAkC;AAGpF,SAASC,iBAAiB,QAAQ,UAAU;AAE5C,MAAMC,eAAe,gBAAGH,aAAa,CAAmCI,SAAS,CAAC;AAElF,MAAMC,2BAA2B,GAAyB;EACxD,GAAGH,iBAAiB;EACpBI,eAAe,EAAE,KAAK;EACtBC,cAAc,EAAE,KAAK;EACrBC,mBAAmB,EAAE,OAAO;EAC5BC,SAAS,EAAE;CACZ;AAED,OAAO,MAAMC,uBAAuB,GAAGP,eAAe,CAACQ,QAAQ;AAE/D,OAAO,MAAMC,2BAA2B,GAAOC,QAAkD,IAC/FZ,kBAAkB,CAACE,eAAe,EAAE,CAACW,GAAG,GAAGT,2BAA2B,KAAKQ,QAAQ,CAACC,GAAG,CAAC,CAAC","names":["createContext","useContextSelector","defaultTableState","dataGridContext","undefined","dataGridContextDefaultValue","subtleSelection","selectableRows","selectionAppearance","focusMode","DataGridContextProvider","Provider","useDataGridContext_unstable","selector","ctx"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/contexts/dataGridContext.ts"],"sourcesContent":["import { createContext, useContextSelector } from '@fluentui/react-context-selector';\nimport type { ContextSelector } from '@fluentui/react-context-selector';\nimport { DataGridContextValue } from '../components/DataGrid/DataGrid.types';\nimport { defaultTableState } from '../hooks';\n\nconst dataGridContext = createContext<DataGridContextValue | undefined>(undefined);\n\nconst dataGridContextDefaultValue: DataGridContextValue = {\n ...defaultTableState,\n subtleSelection: false,\n selectableRows: false,\n selectionAppearance: 'brand',\n focusMode: 'none',\n};\n\nexport const DataGridContextProvider = dataGridContext.Provider;\n\nexport const useDataGridContext_unstable = <T>(selector: ContextSelector<DataGridContextValue, T>) =>\n useContextSelector(dataGridContext, (ctx = dataGridContextDefaultValue) => selector(ctx));\n"]}
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ const rowIdContext = /*#__PURE__*/React.createContext(undefined);
3
+ export const tableRowIdContextDefaultValue = '';
4
+ export const useTableRowIdContext = () => {
5
+ var _a;
6
+ return (_a = React.useContext(rowIdContext)) !== null && _a !== void 0 ? _a : tableRowIdContextDefaultValue;
7
+ };
8
+ export const TableRowIdContextProvider = rowIdContext.Provider;
9
+ //# sourceMappingURL=rowIdContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,MAAMC,YAAY,gBAAGD,KAAK,CAACE,aAAa,CAAyBC,SAAS,CAAC;AAE3E,OAAO,MAAMC,6BAA6B,GAAG,EAAE;AAE/C,OAAO,MAAMC,oBAAoB,GAAG,MAAK;EAAA;EAAC,kBAAK,CAACC,UAAU,CAACL,YAAY,CAAC,mCAAIG,6BAA6B;AAAA;AAEzG,OAAO,MAAMG,yBAAyB,GAAGN,YAAY,CAACO,QAAQ","names":["React","rowIdContext","createContext","undefined","tableRowIdContextDefaultValue","useTableRowIdContext","useContext","TableRowIdContextProvider","Provider"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/contexts/rowIdContext.ts"],"sourcesContent":["import * as React from 'react';\nimport type { TableRowId } from '../hooks/';\n\nconst rowIdContext = React.createContext<TableRowId | undefined>(undefined);\n\nexport const tableRowIdContextDefaultValue = '';\n\nexport const useTableRowIdContext = () => React.useContext(rowIdContext) ?? tableRowIdContextDefaultValue;\n\nexport const TableRowIdContextProvider = rowIdContext.Provider;\n"]}
@@ -8,7 +8,6 @@ export const tableContextDefaultValue = {
8
8
  export const TableContextProvider = tableContext.Provider;
9
9
  export const useTableContext = () => {
10
10
  var _a;
11
-
12
11
  return (_a = React.useContext(tableContext)) !== null && _a !== void 0 ? _a : tableContextDefaultValue;
13
12
  };
14
13
  //# sourceMappingURL=tableContext.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["packages/react-components/react-table/src/contexts/tableContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAGA,MAAM,YAAY,gBAAG,KAAK,CAAC,aAAN,CAAmD,SAAnD,CAArB;AAEA,OAAO,MAAM,wBAAwB,GAAsB;EACzD,IAAI,EAAE,QADmD;EAEzD,gBAAgB,EAAE,KAFuC;EAGzD,QAAQ,EAAE;AAH+C,CAApD;AAMP,OAAO,MAAM,oBAAoB,GAAG,YAAY,CAAC,QAA1C;AACP,OAAO,MAAM,eAAe,GAAG,MAAK;EAAA,IAAA,EAAA;;EAAC,OAAA,CAAA,EAAA,GAAA,KAAK,CAAC,UAAN,CAAiB,YAAjB,CAAA,MAA8B,IAA9B,IAA8B,EAAA,KAAA,KAAA,CAA9B,GAA8B,EAA9B,GAAkC,wBAAlC;AAA0D,CAAxF","sourcesContent":["import * as React from 'react';\nimport { TableContextValue } from '../components/Table/Table.types';\n\nconst tableContext = React.createContext<TableContextValue | undefined>(undefined);\n\nexport const tableContextDefaultValue: TableContextValue = {\n size: 'medium',\n noNativeElements: false,\n sortable: false,\n};\n\nexport const TableContextProvider = tableContext.Provider;\nexport const useTableContext = () => React.useContext(tableContext) ?? tableContextDefaultValue;\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAG9B,MAAMC,YAAY,gBAAGD,KAAK,CAACE,aAAa,CAAgCC,SAAS,CAAC;AAElF,OAAO,MAAMC,wBAAwB,GAAsB;EACzDC,IAAI,EAAE,QAAQ;EACdC,gBAAgB,EAAE,KAAK;EACvBC,QAAQ,EAAE;CACX;AAED,OAAO,MAAMC,oBAAoB,GAAGP,YAAY,CAACQ,QAAQ;AACzD,OAAO,MAAMC,eAAe,GAAG,MAAK;EAAA;EAAC,kBAAK,CAACC,UAAU,CAACV,YAAY,CAAC,mCAAIG,wBAAwB;AAAA","names":["React","tableContext","createContext","undefined","tableContextDefaultValue","size","noNativeElements","sortable","TableContextProvider","Provider","useTableContext","useContext"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/contexts/tableContext.ts"],"sourcesContent":["import * as React from 'react';\nimport { TableContextValue } from '../components/Table/Table.types';\n\nconst tableContext = React.createContext<TableContextValue | undefined>(undefined);\n\nexport const tableContextDefaultValue: TableContextValue = {\n size: 'medium',\n noNativeElements: false,\n sortable: false,\n};\n\nexport const TableContextProvider = tableContext.Provider;\nexport const useTableContext = () => React.useContext(tableContext) ?? tableContextDefaultValue;\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["packages/react-components/react-table/src/contexts/tableHeaderContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAZ,MAAuB,OAAvB;AAEA,MAAM,kBAAkB,gBAAG,KAAK,CAAC,aAAN,CAAwC,SAAxC,CAA3B;AAEA,MAAM,8BAA8B,GAAG,EAAvC;AAEA,OAAO,MAAM,0BAA0B,GAAG,kBAAkB,CAAC,QAAtD;AACP,OAAO,MAAM,kBAAkB,GAAG,MAAM,KAAK,CAAC,UAAN,CAAiB,kBAAjB,MAAyC,8BAA1E","sourcesContent":["import * as React from 'react';\n\nconst tableHeaderContext = React.createContext<string | undefined>(undefined);\n\nconst tableHeaderContextDefaultValue = '';\n\nexport const TableHeaderContextProvider = tableHeaderContext.Provider;\nexport const useIsInTableHeader = () => React.useContext(tableHeaderContext) === tableHeaderContextDefaultValue;\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAE9B,MAAMC,kBAAkB,gBAAGD,KAAK,CAACE,aAAa,CAAqBC,SAAS,CAAC;AAE7E,MAAMC,8BAA8B,GAAG,EAAE;AAEzC,OAAO,MAAMC,0BAA0B,GAAGJ,kBAAkB,CAACK,QAAQ;AACrE,OAAO,MAAMC,kBAAkB,GAAG,MAAMP,KAAK,CAACQ,UAAU,CAACP,kBAAkB,CAAC,KAAKG,8BAA8B","names":["React","tableHeaderContext","createContext","undefined","tableHeaderContextDefaultValue","TableHeaderContextProvider","Provider","useIsInTableHeader","useContext"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/contexts/tableHeaderContext.ts"],"sourcesContent":["import * as React from 'react';\n\nconst tableHeaderContext = React.createContext<string | undefined>(undefined);\n\nconst tableHeaderContextDefaultValue = '';\n\nexport const TableHeaderContextProvider = tableHeaderContext.Provider;\nexport const useIsInTableHeader = () => React.useContext(tableHeaderContext) === tableHeaderContextDefaultValue;\n"]}
@@ -0,0 +1,35 @@
1
+ const defaultCompare = () => 0;
2
+ const defaultRenderCell = () => {
3
+ if (process.env.NODE_ENV !== 'production') {
4
+ // eslint-disable-next-line no-console
5
+ console.warn('@fluentui/react-table: You are using the default column renderCell function that renders null');
6
+ }
7
+ return null;
8
+ };
9
+ const defaultRenderHeaderCell = () => {
10
+ if (process.env.NODE_ENV !== 'production') {
11
+ // eslint-disable-next-line no-console
12
+ console.warn('@fluentui/react-table: You are using the default column renderHeaderCell function that renders null');
13
+ }
14
+ return null;
15
+ };
16
+ /**
17
+ * Helper function to create column definition with defaults
18
+ * @param options - column definition options
19
+ * @returns - column definition with defaults
20
+ */
21
+ export function createTableColumn(options) {
22
+ const {
23
+ columnId,
24
+ renderCell = defaultRenderCell,
25
+ renderHeaderCell = defaultRenderHeaderCell,
26
+ compare = defaultCompare
27
+ } = options;
28
+ return {
29
+ columnId,
30
+ renderCell,
31
+ renderHeaderCell,
32
+ compare
33
+ };
34
+ }
35
+ //# sourceMappingURL=createColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"mappings":"AAEA,MAAMA,cAAc,GAAG,MAAM,CAAC;AAE9B,MAAMC,iBAAiB,GAAG,MAAK;EAC7B,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzC;IACAC,OAAO,CAACC,IAAI,CAAC,+FAA+F,CAAC;;EAG/G,OAAO,IAAI;AACb,CAAC;AAED,MAAMC,uBAAuB,GAAG,MAAK;EACnC,IAAIL,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzC;IACAC,OAAO,CAACC,IAAI,CAAC,qGAAqG,CAAC;;EAGrH,OAAO,IAAI;AACb,CAAC;AAED;;;;;AAKA,OAAM,SAAUE,iBAAiB,CAAQC,OAAwC;EAC/E,MAAM;IACJC,QAAQ;IACRC,UAAU,GAAGV,iBAAiB;IAC9BW,gBAAgB,GAAGL,uBAAuB;IAC1CM,OAAO,GAAGb;EAAc,CACzB,GAAGS,OAAO;EAEX,OAAO;IACLC,QAAQ;IACRC,UAAU;IACVC,gBAAgB;IAChBC;GACD;AACH","names":["defaultCompare","defaultRenderCell","process","env","NODE_ENV","console","warn","defaultRenderHeaderCell","createTableColumn","options","columnId","renderCell","renderHeaderCell","compare"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/createColumn.ts"],"sourcesContent":["import { CreateTableColumnOptions } from './types';\n\nconst defaultCompare = () => 0;\n\nconst defaultRenderCell = () => {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn('@fluentui/react-table: You are using the default column renderCell function that renders null');\n }\n\n return null;\n};\n\nconst defaultRenderHeaderCell = () => {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line no-console\n console.warn('@fluentui/react-table: You are using the default column renderHeaderCell function that renders null');\n }\n\n return null;\n};\n\n/**\n * Helper function to create column definition with defaults\n * @param options - column definition options\n * @returns - column definition with defaults\n */\nexport function createTableColumn<TItem>(options: CreateTableColumnOptions<TItem>) {\n const {\n columnId,\n renderCell = defaultRenderCell,\n renderHeaderCell = defaultRenderHeaderCell,\n compare = defaultCompare,\n } = options;\n\n return {\n columnId,\n renderCell,\n renderHeaderCell,\n compare,\n };\n}\n"]}
@@ -1,5 +1,6 @@
1
1
  export * from './types';
2
- export * from './useTable';
3
- export * from './useSort';
4
- export * from './useSelection';
2
+ export * from './useTableFeatures';
3
+ export * from './useTableSort';
4
+ export * from './useTableSelection';
5
+ export * from './createColumn';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC","sourcesContent":["export * from './types';\nexport * from './useTable';\nexport * from './useSort';\nexport * from './useSelection';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC","sourcesContent":["export * from './types';\nexport * from './useTableFeatures';\nexport * from './useTableSort';\nexport * from './useTableSelection';\nexport * from './createColumn';\n"]}
@@ -2,48 +2,38 @@ export function createSelectionManager(mode, onSelectionChange = () => undefined
2
2
  const managerFactory = mode === 'multiselect' ? createMultipleSelectionManager : createSingleSelectionManager;
3
3
  return managerFactory(onSelectionChange);
4
4
  }
5
-
6
5
  function createMultipleSelectionManager(onSelectionChange) {
7
- const toggleAllItems = (itemIds, selectedItems) => {
6
+ const toggleAllItems = (e, itemIds, selectedItems) => {
8
7
  const allItemsSelected = itemIds.every(itemId => selectedItems.has(itemId));
9
-
10
8
  if (allItemsSelected) {
11
9
  selectedItems.clear();
12
10
  } else {
13
11
  itemIds.forEach(itemId => selectedItems.add(itemId));
14
12
  }
15
-
16
- onSelectionChange(new Set(selectedItems));
13
+ onSelectionChange(e, new Set(selectedItems));
17
14
  };
18
-
19
- const toggleItem = (itemId, selectedItems) => {
15
+ const toggleItem = (e, itemId, selectedItems) => {
20
16
  if (selectedItems.has(itemId)) {
21
17
  selectedItems.delete(itemId);
22
18
  } else {
23
19
  selectedItems.add(itemId);
24
20
  }
25
-
26
- onSelectionChange(new Set(selectedItems));
21
+ onSelectionChange(e, new Set(selectedItems));
27
22
  };
28
-
29
- const selectItem = (itemId, selectedItems) => {
23
+ const selectItem = (e, itemId, selectedItems) => {
30
24
  selectedItems.add(itemId);
31
- onSelectionChange(new Set(selectedItems));
25
+ onSelectionChange(e, new Set(selectedItems));
32
26
  };
33
-
34
- const deselectItem = (itemId, selectedItems) => {
27
+ const deselectItem = (e, itemId, selectedItems) => {
35
28
  selectedItems.delete(itemId);
36
- onSelectionChange(new Set(selectedItems));
29
+ onSelectionChange(e, new Set(selectedItems));
37
30
  };
38
-
39
- const clearItems = () => {
40
- onSelectionChange(new Set());
31
+ const clearItems = e => {
32
+ onSelectionChange(e, new Set());
41
33
  };
42
-
43
34
  const isSelected = (itemId, selectedItems) => {
44
35
  return selectedItems.has(itemId);
45
36
  };
46
-
47
37
  return {
48
38
  toggleItem,
49
39
  selectItem,
@@ -53,24 +43,19 @@ function createMultipleSelectionManager(onSelectionChange) {
53
43
  toggleAllItems
54
44
  };
55
45
  }
56
-
57
46
  function createSingleSelectionManager(onSelectionChange) {
58
- const toggleItem = itemId => {
59
- onSelectionChange(new Set([itemId]));
47
+ const toggleItem = (e, itemId) => {
48
+ onSelectionChange(e, new Set([itemId]));
60
49
  };
61
-
62
- const clearItems = () => {
63
- onSelectionChange(new Set());
50
+ const clearItems = e => {
51
+ onSelectionChange(e, new Set());
64
52
  };
65
-
66
53
  const isSelected = (itemId, selectedItems) => {
67
54
  return selectedItems.has(itemId);
68
55
  };
69
-
70
- const selectItem = itemId => {
71
- onSelectionChange(new Set([itemId]));
56
+ const selectItem = (e, itemId) => {
57
+ onSelectionChange(e, new Set([itemId]));
72
58
  };
73
-
74
59
  return {
75
60
  deselectItem: clearItems,
76
61
  selectItem,
@@ -78,7 +63,6 @@ function createSingleSelectionManager(onSelectionChange) {
78
63
  if (process.env.NODE_ENV !== 'production') {
79
64
  throw new Error('[react-table]: `toggleAllItems` should not be used in single selection mode');
80
65
  }
81
-
82
66
  return undefined;
83
67
  },
84
68
  toggleItem,
@@ -1 +1 @@
1
- {"version":3,"sources":["packages/react-components/react-table/src/hooks/selectionManager.ts"],"names":[],"mappings":"AAeA,OAAM,SAAU,sBAAV,CACJ,IADI,EAEJ,iBAAA,GAA+C,MAAM,SAFjD,EAE0D;EAE9D,MAAM,cAAc,GAAG,IAAI,KAAK,aAAT,GAAyB,8BAAzB,GAA0D,4BAAjF;EAEA,OAAO,cAAc,CAAC,iBAAD,CAArB;AACD;;AAED,SAAS,8BAAT,CAAwC,iBAAxC,EAAoF;EAClF,MAAM,cAAc,GAAG,CAAC,OAAD,EAA6B,aAA7B,KAAoE;IACzF,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAR,CAAc,MAAM,IAAI,aAAa,CAAC,GAAd,CAAkB,MAAlB,CAAxB,CAAzB;;IAEA,IAAI,gBAAJ,EAAsB;MACpB,aAAa,CAAC,KAAd;IACD,CAFD,MAEO;MACL,OAAO,CAAC,OAAR,CAAgB,MAAM,IAAI,aAAa,CAAC,GAAd,CAAkB,MAAlB,CAA1B;IACD;;IAED,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,aAAR,CAAD,CAAjB;EACD,CAVD;;EAYA,MAAM,UAAU,GAAG,CAAC,MAAD,EAA0B,aAA1B,KAAiE;IAClF,IAAI,aAAa,CAAC,GAAd,CAAkB,MAAlB,CAAJ,EAA+B;MAC7B,aAAa,CAAC,MAAd,CAAqB,MAArB;IACD,CAFD,MAEO;MACL,aAAa,CAAC,GAAd,CAAkB,MAAlB;IACD;;IAED,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,aAAR,CAAD,CAAjB;EACD,CARD;;EAUA,MAAM,UAAU,GAAG,CAAC,MAAD,EAA0B,aAA1B,KAAiE;IAClF,aAAa,CAAC,GAAd,CAAkB,MAAlB;IACA,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,aAAR,CAAD,CAAjB;EACD,CAHD;;EAKA,MAAM,YAAY,GAAG,CAAC,MAAD,EAA0B,aAA1B,KAAiE;IACpF,aAAa,CAAC,MAAd,CAAqB,MAArB;IACA,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,aAAR,CAAD,CAAjB;EACD,CAHD;;EAKA,MAAM,UAAU,GAAG,MAAK;IACtB,iBAAiB,CAAC,IAAI,GAAJ,EAAD,CAAjB;EACD,CAFD;;EAIA,MAAM,UAAU,GAAG,CAAC,MAAD,EAA0B,aAA1B,KAAiE;IAClF,OAAO,aAAa,CAAC,GAAd,CAAkB,MAAlB,CAAP;EACD,CAFD;;EAIA,OAAO;IACL,UADK;IAEL,UAFK;IAGL,YAHK;IAIL,UAJK;IAKL,UALK;IAML;EANK,CAAP;AAQD;;AAED,SAAS,4BAAT,CAAsC,iBAAtC,EAAkF;EAChF,MAAM,UAAU,GAAI,MAAD,IAA4B;IAC7C,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,CAAC,MAAD,CAAR,CAAD,CAAjB;EACD,CAFD;;EAIA,MAAM,UAAU,GAAG,MAAK;IACtB,iBAAiB,CAAC,IAAI,GAAJ,EAAD,CAAjB;EACD,CAFD;;EAIA,MAAM,UAAU,GAAG,CAAC,MAAD,EAA0B,aAA1B,KAAiE;IAClF,OAAO,aAAa,CAAC,GAAd,CAAkB,MAAlB,CAAP;EACD,CAFD;;EAIA,MAAM,UAAU,GAAI,MAAD,IAA4B;IAC7C,iBAAiB,CAAC,IAAI,GAAJ,CAAQ,CAAC,MAAD,CAAR,CAAD,CAAjB;EACD,CAFD;;EAIA,OAAO;IACL,YAAY,EAAE,UADT;IAEL,UAFK;IAGL,cAAc,EAAE,MAAK;MACnB,IAAI,OAAO,CAAC,GAAR,CAAY,QAAZ,KAAyB,YAA7B,EAA2C;QACzC,MAAM,IAAI,KAAJ,CAAU,6EAAV,CAAN;MACD;;MAED,OAAO,SAAP;IACD,CATI;IAUL,UAVK;IAWL,UAXK;IAYL;EAZK,CAAP;AAcD","sourcesContent":["import { SelectionMode } from './types';\n\ntype OnSelectionChangeCallback = (selectedItems: Set<SelectionItemId>) => void;\n\nexport interface SelectionManager {\n toggleItem(id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n selectItem(id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n deselectItem(id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n clearItems(): void;\n isSelected(id: SelectionItemId, selectedItems: Set<SelectionItemId>): boolean;\n toggleAllItems(itemIds: SelectionItemId[], selectedItems: Set<SelectionItemId>): void;\n}\n\nexport type SelectionItemId = string | number;\n\nexport function createSelectionManager(\n mode: SelectionMode,\n onSelectionChange: OnSelectionChangeCallback = () => undefined,\n): SelectionManager {\n const managerFactory = mode === 'multiselect' ? createMultipleSelectionManager : createSingleSelectionManager;\n\n return managerFactory(onSelectionChange);\n}\n\nfunction createMultipleSelectionManager(onSelectionChange: OnSelectionChangeCallback): SelectionManager {\n const toggleAllItems = (itemIds: SelectionItemId[], selectedItems: Set<SelectionItemId>) => {\n const allItemsSelected = itemIds.every(itemId => selectedItems.has(itemId));\n\n if (allItemsSelected) {\n selectedItems.clear();\n } else {\n itemIds.forEach(itemId => selectedItems.add(itemId));\n }\n\n onSelectionChange(new Set(selectedItems));\n };\n\n const toggleItem = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n if (selectedItems.has(itemId)) {\n selectedItems.delete(itemId);\n } else {\n selectedItems.add(itemId);\n }\n\n onSelectionChange(new Set(selectedItems));\n };\n\n const selectItem = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n selectedItems.add(itemId);\n onSelectionChange(new Set(selectedItems));\n };\n\n const deselectItem = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n selectedItems.delete(itemId);\n onSelectionChange(new Set(selectedItems));\n };\n\n const clearItems = () => {\n onSelectionChange(new Set());\n };\n\n const isSelected = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n return selectedItems.has(itemId);\n };\n\n return {\n toggleItem,\n selectItem,\n deselectItem,\n clearItems,\n isSelected,\n toggleAllItems,\n };\n}\n\nfunction createSingleSelectionManager(onSelectionChange: OnSelectionChangeCallback): SelectionManager {\n const toggleItem = (itemId: SelectionItemId) => {\n onSelectionChange(new Set([itemId]));\n };\n\n const clearItems = () => {\n onSelectionChange(new Set<SelectionItemId>());\n };\n\n const isSelected = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n return selectedItems.has(itemId);\n };\n\n const selectItem = (itemId: SelectionItemId) => {\n onSelectionChange(new Set([itemId]));\n };\n\n return {\n deselectItem: clearItems,\n selectItem,\n toggleAllItems: () => {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error('[react-table]: `toggleAllItems` should not be used in single selection mode');\n }\n\n return undefined;\n },\n toggleItem,\n clearItems,\n isSelected,\n };\n}\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"mappings":"AAgBA,OAAM,SAAUA,sBAAsB,CACpCC,IAAmB,EACnBC,oBAA+C,MAAMC,SAAS;EAE9D,MAAMC,cAAc,GAAGH,IAAI,KAAK,aAAa,GAAGI,8BAA8B,GAAGC,4BAA4B;EAE7G,OAAOF,cAAc,CAACF,iBAAiB,CAAC;AAC1C;AAEA,SAASG,8BAA8B,CAACH,iBAA4C;EAClF,MAAMK,cAAc,GAAuC,CAACC,CAAC,EAAEC,OAAO,EAAEC,aAAa,KAAI;IACvF,MAAMC,gBAAgB,GAAGF,OAAO,CAACG,KAAK,CAACC,MAAM,IAAIH,aAAa,CAACI,GAAG,CAACD,MAAM,CAAC,CAAC;IAE3E,IAAIF,gBAAgB,EAAE;MACpBD,aAAa,CAACK,KAAK,EAAE;KACtB,MAAM;MACLN,OAAO,CAACO,OAAO,CAACH,MAAM,IAAIH,aAAa,CAACO,GAAG,CAACJ,MAAM,CAAC,CAAC;;IAGtDX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAACR,aAAa,CAAC,CAAC;EAC9C,CAAC;EAED,MAAMS,UAAU,GAAmC,CAACX,CAAC,EAAEK,MAAM,EAAEH,aAAa,KAAI;IAC9E,IAAIA,aAAa,CAACI,GAAG,CAACD,MAAM,CAAC,EAAE;MAC7BH,aAAa,CAACU,MAAM,CAACP,MAAM,CAAC;KAC7B,MAAM;MACLH,aAAa,CAACO,GAAG,CAACJ,MAAM,CAAC;;IAG3BX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAACR,aAAa,CAAC,CAAC;EAC9C,CAAC;EAED,MAAMW,UAAU,GAAmC,CAACb,CAAC,EAAEK,MAAM,EAAEH,aAAa,KAAI;IAC9EA,aAAa,CAACO,GAAG,CAACJ,MAAM,CAAC;IACzBX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAACR,aAAa,CAAC,CAAC;EAC9C,CAAC;EAED,MAAMY,YAAY,GAAqC,CAACd,CAAC,EAAEK,MAAM,EAAEH,aAAa,KAAI;IAClFA,aAAa,CAACU,MAAM,CAACP,MAAM,CAAC;IAC5BX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAACR,aAAa,CAAC,CAAC;EAC9C,CAAC;EAED,MAAMa,UAAU,GAAmCf,CAAC,IAAG;IACrDN,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,EAAE,CAAC;EACjC,CAAC;EAED,MAAMM,UAAU,GAAG,CAACX,MAAuB,EAAEH,aAAmC,KAAI;IAClF,OAAOA,aAAa,CAACI,GAAG,CAACD,MAAM,CAAC;EAClC,CAAC;EAED,OAAO;IACLM,UAAU;IACVE,UAAU;IACVC,YAAY;IACZC,UAAU;IACVC,UAAU;IACVjB;GACD;AACH;AAEA,SAASD,4BAA4B,CAACJ,iBAA4C;EAChF,MAAMiB,UAAU,GAAmC,CAACX,CAAC,EAAEK,MAAM,KAAI;IAC/DX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAAC,CAACL,MAAM,CAAC,CAAC,CAAC;EACzC,CAAC;EAED,MAAMU,UAAU,GAAmCf,CAAC,IAAG;IACrDN,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,EAAmB,CAAC;EAClD,CAAC;EAED,MAAMM,UAAU,GAAG,CAACX,MAAuB,EAAEH,aAAmC,KAAI;IAClF,OAAOA,aAAa,CAACI,GAAG,CAACD,MAAM,CAAC;EAClC,CAAC;EAED,MAAMQ,UAAU,GAAmC,CAACb,CAAC,EAAEK,MAAM,KAAI;IAC/DX,iBAAiB,CAACM,CAAC,EAAE,IAAIU,GAAG,CAAC,CAACL,MAAM,CAAC,CAAC,CAAC;EACzC,CAAC;EAED,OAAO;IACLS,YAAY,EAAEC,UAAU;IACxBF,UAAU;IACVd,cAAc,EAAE,MAAK;MACnB,IAAIkB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;QACzC,MAAM,IAAIC,KAAK,CAAC,6EAA6E,CAAC;;MAGhG,OAAOzB,SAAS;IAClB,CAAC;IACDgB,UAAU;IACVI,UAAU;IACVC;GACD;AACH","names":["createSelectionManager","mode","onSelectionChange","undefined","managerFactory","createMultipleSelectionManager","createSingleSelectionManager","toggleAllItems","e","itemIds","selectedItems","allItemsSelected","every","itemId","has","clear","forEach","add","Set","toggleItem","delete","selectItem","deselectItem","clearItems","isSelected","process","env","NODE_ENV","Error"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/selectionManager.ts"],"sourcesContent":["import * as React from 'react';\nimport { SelectionMode } from './types';\n\ntype OnSelectionChangeCallback = (e: React.SyntheticEvent, selectedItems: Set<SelectionItemId>) => void;\n\nexport interface SelectionManager {\n toggleItem(e: React.SyntheticEvent, id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n selectItem(e: React.SyntheticEvent, id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n deselectItem(e: React.SyntheticEvent, id: SelectionItemId, selectedItems: Set<SelectionItemId>): void;\n clearItems(e: React.SyntheticEvent): void;\n isSelected(id: SelectionItemId, selectedItems: Set<SelectionItemId>): boolean;\n toggleAllItems(e: React.SyntheticEvent, itemIds: SelectionItemId[], selectedItems: Set<SelectionItemId>): void;\n}\n\nexport type SelectionItemId = string | number;\n\nexport function createSelectionManager(\n mode: SelectionMode,\n onSelectionChange: OnSelectionChangeCallback = () => undefined,\n): SelectionManager {\n const managerFactory = mode === 'multiselect' ? createMultipleSelectionManager : createSingleSelectionManager;\n\n return managerFactory(onSelectionChange);\n}\n\nfunction createMultipleSelectionManager(onSelectionChange: OnSelectionChangeCallback): SelectionManager {\n const toggleAllItems: SelectionManager['toggleAllItems'] = (e, itemIds, selectedItems) => {\n const allItemsSelected = itemIds.every(itemId => selectedItems.has(itemId));\n\n if (allItemsSelected) {\n selectedItems.clear();\n } else {\n itemIds.forEach(itemId => selectedItems.add(itemId));\n }\n\n onSelectionChange(e, new Set(selectedItems));\n };\n\n const toggleItem: SelectionManager['toggleItem'] = (e, itemId, selectedItems) => {\n if (selectedItems.has(itemId)) {\n selectedItems.delete(itemId);\n } else {\n selectedItems.add(itemId);\n }\n\n onSelectionChange(e, new Set(selectedItems));\n };\n\n const selectItem: SelectionManager['selectItem'] = (e, itemId, selectedItems) => {\n selectedItems.add(itemId);\n onSelectionChange(e, new Set(selectedItems));\n };\n\n const deselectItem: SelectionManager['deselectItem'] = (e, itemId, selectedItems) => {\n selectedItems.delete(itemId);\n onSelectionChange(e, new Set(selectedItems));\n };\n\n const clearItems: SelectionManager['clearItems'] = e => {\n onSelectionChange(e, new Set());\n };\n\n const isSelected = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n return selectedItems.has(itemId);\n };\n\n return {\n toggleItem,\n selectItem,\n deselectItem,\n clearItems,\n isSelected,\n toggleAllItems,\n };\n}\n\nfunction createSingleSelectionManager(onSelectionChange: OnSelectionChangeCallback): SelectionManager {\n const toggleItem: SelectionManager['toggleItem'] = (e, itemId) => {\n onSelectionChange(e, new Set([itemId]));\n };\n\n const clearItems: SelectionManager['clearItems'] = e => {\n onSelectionChange(e, new Set<SelectionItemId>());\n };\n\n const isSelected = (itemId: SelectionItemId, selectedItems: Set<SelectionItemId>) => {\n return selectedItems.has(itemId);\n };\n\n const selectItem: SelectionManager['selectItem'] = (e, itemId) => {\n onSelectionChange(e, new Set([itemId]));\n };\n\n return {\n deselectItem: clearItems,\n selectItem,\n toggleAllItems: () => {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error('[react-table]: `toggleAllItems` should not be used in single selection mode');\n }\n\n return undefined;\n },\n toggleItem,\n clearItems,\n isSelected,\n };\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/types.ts"],"names":[],"mappings":"","sourcesContent":["import { SortDirection } from '../components/Table/Table.types';\n\nexport type RowId = string | number;\nexport type ColumnId = string | number;\nexport type SelectionMode = 'single' | 'multiselect';\n\nexport interface SortState {\n sortColumn: ColumnId | undefined;\n sortDirection: SortDirection;\n}\n\nexport interface ColumnDefinition<TItem> {\n columnId: ColumnId;\n compare?: (a: TItem, b: TItem) => number;\n}\n\nexport type RowEnhancer<TItem, TRowState extends RowState<TItem> = RowState<TItem>> = (\n row: RowState<TItem>,\n) => TRowState;\n\nexport interface TableSortState<TItem> {\n /**\n * Current sort direction\n */\n sortDirection: SortDirection;\n /**\n * Column id of the currently sorted column\n */\n sortColumn: ColumnId | undefined;\n /**\n * Set the sort direction for the specified column\n */\n setColumnSort: (columnId: ColumnId, sortDirection: SortDirection) => void;\n /**\n * Toggles the sort direction for specified column\n */\n toggleColumnSort: (columnId: ColumnId) => void;\n /**\n * Returns the sort direction if a column is sorted,\n * returns undefined if the column is not sorted\n */\n getSortDirection: (columnId: ColumnId) => SortDirection | undefined;\n\n /**\n * Sorts rows and returns a **shallow** copy of original items\n */\n sort: (rows: RowState<TItem>[]) => RowState<TItem>[];\n}\n\nexport interface TableSelectionState {\n /**\n * Clears all selected rows\n */\n clearRows: () => void;\n /**\n * Selects single row\n */\n selectRow: (rowId: RowId) => void;\n /**\n * De-selects single row\n */\n deselectRow: (rowId: RowId) => void;\n /**\n * Toggle selection of all rows\n */\n toggleAllRows: () => void;\n /**\n * Toggle selection of single row\n */\n toggleRow: (rowId: RowId) => void;\n /**\n * Collection of row ids corresponding to selected rows\n */\n selectedRows: Set<RowId>;\n /**\n * Whether all rows are selected\n */\n allRowsSelected: boolean;\n /**\n * Whether some rows are selected\n */\n someRowsSelected: boolean;\n\n /**\n * Checks if a given rowId is selected\n */\n isRowSelected: (rowId: RowId) => boolean;\n}\n\nexport interface RowState<TItem> {\n /**\n * User provided data\n */\n item: TItem;\n /**\n * The row id, defaults to index position in the collection\n */\n rowId: RowId;\n}\n\nexport interface TableState<TItem> extends Pick<UseTableOptions<TItem>, 'items' | 'getRowId'> {\n /**\n * The row data for rendering\n * @param rowEnhancer - Enhances the row with extra user data\n */\n getRows: <TRowState extends RowState<TItem> = RowState<TItem>>(\n rowEnhancer?: RowEnhancer<TItem, TRowState>,\n ) => TRowState[];\n /**\n * State and actions to manage row selection\n */\n selection: TableSelectionState;\n /**\n * State and actions to manage row sorting\n */\n sort: TableSortState<TItem>;\n /**\n * Table columns\n */\n columns: ColumnDefinition<TItem>[];\n}\n\nexport interface UseSortOptions {\n /**\n * Used to control sorting\n */\n sortState?: SortState;\n /**\n * Used in uncontrolled mode to set initial sort column and direction on mount\n */\n defaultSortState?: SortState;\n /**\n * Called when sort changes\n */\n onSortChange?: (state: SortState) => void;\n}\n\nexport interface UseSelectionOptions {\n /**\n * Can be multi or single select\n */\n selectionMode: SelectionMode;\n /**\n * Used in uncontrolled mode to set initial selected rows on mount\n */\n defaultSelectedItems?: Set<RowId>;\n /**\n * Used to control row selection\n */\n selectedItems?: Set<RowId>;\n /**\n * Called when selection changes\n */\n onSelectionChange?: (selectedItems: Set<RowId>) => void;\n}\n\nexport interface UseTableOptions<TItem> {\n columns: ColumnDefinition<TItem>[];\n items: TItem[];\n getRowId?: (item: TItem) => RowId;\n}\n\nexport type TableStatePlugin = <TItem>(tableState: TableState<TItem>) => TableState<TItem>;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/types.ts"],"names":[],"mappings":"","sourcesContent":["import * as React from 'react';\nimport { SortDirection } from '../components/Table/Table.types';\n\nexport type TableRowId = string | number;\nexport type TableColumnId = string | number;\nexport type SelectionMode = 'single' | 'multiselect';\n\nexport interface SortState {\n sortColumn: TableColumnId | undefined;\n sortDirection: SortDirection;\n}\n\nexport interface OnSelectionChangeData {\n selectedItems: Set<TableRowId>;\n}\n\nexport interface CreateTableColumnOptions<TItem> extends Partial<TableColumnDefinition<TItem>> {\n columnId: TableColumnId;\n}\n\nexport interface TableColumnDefinition<TItem> {\n columnId: TableColumnId;\n compare: (a: TItem, b: TItem) => number;\n renderHeaderCell: () => React.ReactNode;\n renderCell: (item: TItem) => React.ReactNode;\n}\n\nexport type RowEnhancer<TItem, TRowState extends TableRowData<TItem> = TableRowData<TItem>> = (\n row: TableRowData<TItem>,\n) => TRowState;\n\nexport interface TableSortState<TItem> {\n /**\n * Current sort direction\n */\n sortDirection: SortDirection;\n /**\n * Column id of the currently sorted column\n */\n sortColumn: TableColumnId | undefined;\n /**\n * Set the sort direction for the specified column\n */\n setColumnSort: (event: React.SyntheticEvent, columnId: TableColumnId, sortDirection: SortDirection) => void;\n /**\n * Toggles the sort direction for specified column\n */\n toggleColumnSort: (event: React.SyntheticEvent, columnId: TableColumnId) => void;\n /**\n * Returns the sort direction if a column is sorted,\n * returns undefined if the column is not sorted\n */\n getSortDirection: (columnId: TableColumnId) => SortDirection | undefined;\n\n /**\n * Sorts rows and returns a **shallow** copy of original items\n */\n sort: <TRowState extends TableRowData<TItem>>(rows: TRowState[]) => TRowState[];\n}\n\nexport interface TableSelectionState {\n /**\n * Clears all selected rows\n */\n clearRows: (e: React.SyntheticEvent) => void;\n /**\n * Selects single row\n */\n selectRow: (e: React.SyntheticEvent, rowId: TableRowId) => void;\n /**\n * De-selects single row\n */\n deselectRow: (e: React.SyntheticEvent, rowId: TableRowId) => void;\n /**\n * Toggle selection of all rows\n */\n toggleAllRows: (e: React.SyntheticEvent) => void;\n /**\n * Toggle selection of single row\n */\n toggleRow: (e: React.SyntheticEvent, rowId: TableRowId) => void;\n /**\n * Collection of row ids corresponding to selected rows\n */\n selectedRows: Set<TableRowId>;\n /**\n * Whether all rows are selected\n */\n allRowsSelected: boolean;\n /**\n * Whether some rows are selected\n */\n someRowsSelected: boolean;\n\n /**\n * Checks if a given rowId is selected\n */\n isRowSelected: (rowId: TableRowId) => boolean;\n\n selectionMode: SelectionMode;\n}\n\nexport interface TableRowData<TItem> {\n /**\n * User provided data\n */\n item: TItem;\n /**\n * The row id, defaults to index position in the collection\n */\n rowId: TableRowId;\n}\n\nexport interface TableFeaturesState<TItem> extends Pick<UseTableFeaturesOptions<TItem>, 'items' | 'getRowId'> {\n /**\n * The row data for rendering\n * @param rowEnhancer - Enhances the row with extra user data\n */\n getRows: <TRowState extends TableRowData<TItem> = TableRowData<TItem>>(\n rowEnhancer?: RowEnhancer<TItem, TRowState>,\n ) => TRowState[];\n /**\n * State and actions to manage row selection\n */\n selection: TableSelectionState;\n /**\n * State and actions to manage row sorting\n */\n sort: TableSortState<TItem>;\n /**\n * Table columns\n */\n columns: TableColumnDefinition<TItem>[];\n}\n\nexport interface UseTableSortOptions {\n /**\n * Used to control sorting\n */\n sortState?: SortState;\n /**\n * Used in uncontrolled mode to set initial sort column and direction on mount\n */\n defaultSortState?: SortState;\n /**\n * Called when sort changes\n */\n onSortChange?(e: React.SyntheticEvent, state: SortState): void;\n}\n\nexport interface UseTableSelectionOptions {\n /**\n * Can be multi or single select\n */\n selectionMode: SelectionMode;\n /**\n * Used in uncontrolled mode to set initial selected rows on mount\n */\n defaultSelectedItems?: Set<TableRowId>;\n /**\n * Used to control row selection\n */\n selectedItems?: Set<TableRowId>;\n /**\n * Called when selection changes\n */\n onSelectionChange?(e: React.SyntheticEvent, data: OnSelectionChangeData): void;\n}\n\nexport interface UseTableFeaturesOptions<TItem> {\n columns: TableColumnDefinition<TItem>[];\n items: TItem[];\n getRowId?: (item: TItem) => TableRowId;\n}\n\nexport type TableFeaturePlugin = <TItem>(tableState: TableFeaturesState<TItem>) => TableFeaturesState<TItem>;\n"]}
@@ -1,24 +1,27 @@
1
- import { defaultTableSelectionState } from './useSelection';
2
- import { defaultTableSortState } from './useSort';
3
-
1
+ import { defaultTableSelectionState } from './useTableSelection';
2
+ import { defaultTableSortState } from './useTableSort';
4
3
  const defaultRowEnhancer = row => row;
5
-
6
- export function useTable(options, plugins = []) {
4
+ export const defaultTableState = {
5
+ selection: defaultTableSelectionState,
6
+ sort: defaultTableSortState,
7
+ getRows: () => [],
8
+ getRowId: () => '',
9
+ items: [],
10
+ columns: []
11
+ };
12
+ export function useTableFeatures(options, plugins = []) {
7
13
  const {
8
14
  items,
9
15
  getRowId,
10
16
  columns
11
17
  } = options;
12
-
13
18
  const getRows = (rowEnhancer = defaultRowEnhancer) => items.map((item, i) => {
14
19
  var _a;
15
-
16
20
  return rowEnhancer({
17
21
  item,
18
22
  rowId: (_a = getRowId === null || getRowId === void 0 ? void 0 : getRowId(item)) !== null && _a !== void 0 ? _a : i
19
23
  });
20
24
  });
21
-
22
25
  const initialState = {
23
26
  getRowId,
24
27
  items,
@@ -29,4 +32,4 @@ export function useTable(options, plugins = []) {
29
32
  };
30
33
  return plugins.reduce((state, plugin) => plugin(state), initialState);
31
34
  }
32
- //# sourceMappingURL=useTable.js.map
35
+ //# sourceMappingURL=useTableFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"mappings":"AAQA,SAASA,0BAA0B,QAAQ,qBAAqB;AAChE,SAASC,qBAAqB,QAAQ,gBAAgB;AAEtD,MAAMC,kBAAkB,GAAgDC,GAAG,IAAIA,GAAG;AAElF,OAAO,MAAMC,iBAAiB,GAAgC;EAC5DC,SAAS,EAAEL,0BAA0B;EACrCM,IAAI,EAAEL,qBAAqB;EAC3BM,OAAO,EAAE,MAAM,EAAE;EACjBC,QAAQ,EAAE,MAAM,EAAE;EAClBC,KAAK,EAAE,EAAE;EACTC,OAAO,EAAE;CACV;AAED,OAAM,SAAUC,gBAAgB,CAC9BC,OAAuC,EACvCC,UAAgC,EAAE;EAElC,MAAM;IAAEJ,KAAK;IAAED,QAAQ;IAAEE;EAAO,CAAE,GAAGE,OAAO;EAE5C,MAAML,OAAO,GAAG,CACdO,cAAcZ,kBAAmD,KAC9DO,KAAK,CAACM,GAAG,CAAC,CAACC,IAAI,EAAEC,CAAC,KAAI;IAAA;IAAC,kBAAW,CAAC;MAAED,IAAI;MAAEE,KAAK,EAAE,cAAQ,aAARV,QAAQ,uBAARA,QAAQ,CAAGQ,IAAI,CAAC,mCAAIC;IAAC,CAAE,CAAC;EAAA,EAAC;EAEhF,MAAME,YAAY,GAA8B;IAC9CX,QAAQ;IACRC,KAAK;IACLC,OAAO;IACPH,OAAO;IACPF,SAAS,EAAEL,0BAA0B;IACrCM,IAAI,EAAEL;GACP;EAED,OAAOY,OAAO,CAACO,MAAM,CAAC,CAACC,KAAK,EAAEC,MAAM,KAAKA,MAAM,CAACD,KAAK,CAAC,EAAEF,YAAY,CAAC;AACvE","names":["defaultTableSelectionState","defaultTableSortState","defaultRowEnhancer","row","defaultTableState","selection","sort","getRows","getRowId","items","columns","useTableFeatures","options","plugins","rowEnhancer","map","item","i","rowId","initialState","reduce","state","plugin"],"sourceRoot":"../src/","sources":["packages/react-components/react-table/src/hooks/useTableFeatures.ts"],"sourcesContent":["import type {\n UseTableFeaturesOptions,\n TableFeaturesState,\n TableRowData,\n RowEnhancer,\n TableFeaturePlugin,\n TableSortState,\n} from './types';\nimport { defaultTableSelectionState } from './useTableSelection';\nimport { defaultTableSortState } from './useTableSort';\n\nconst defaultRowEnhancer: RowEnhancer<unknown, TableRowData<unknown>> = row => row;\n\nexport const defaultTableState: TableFeaturesState<unknown> = {\n selection: defaultTableSelectionState,\n sort: defaultTableSortState,\n getRows: () => [],\n getRowId: () => '',\n items: [],\n columns: [],\n};\n\nexport function useTableFeatures<TItem>(\n options: UseTableFeaturesOptions<TItem>,\n plugins: TableFeaturePlugin[] = [],\n): TableFeaturesState<TItem> {\n const { items, getRowId, columns } = options;\n\n const getRows = <TRowState extends TableRowData<TItem>>(\n rowEnhancer = defaultRowEnhancer as RowEnhancer<TItem, TRowState>,\n ) => items.map((item, i) => rowEnhancer({ item, rowId: getRowId?.(item) ?? i }));\n\n const initialState: TableFeaturesState<TItem> = {\n getRowId,\n items,\n columns,\n getRows,\n selection: defaultTableSelectionState,\n sort: defaultTableSortState as TableSortState<TItem>,\n };\n\n return plugins.reduce((state, plugin) => plugin(state), initialState);\n}\n"]}
@@ -1,9 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { useControllableState, useEventCallback } from '@fluentui/react-utilities';
3
3
  import { createSelectionManager } from './selectionManager';
4
-
5
4
  const noop = () => undefined;
6
-
7
5
  export const defaultTableSelectionState = {
8
6
  allRowsSelected: false,
9
7
  clearRows: noop,
@@ -13,14 +11,15 @@ export const defaultTableSelectionState = {
13
11
  selectedRows: /*#__PURE__*/new Set(),
14
12
  someRowsSelected: false,
15
13
  toggleAllRows: noop,
16
- toggleRow: noop
14
+ toggleRow: noop,
15
+ selectionMode: 'multiselect'
17
16
  };
18
- export function useSelection(options) {
17
+ export function useTableSelection(options) {
19
18
  // False positive, these plugin hooks are intended to be run on every render
20
19
  // eslint-disable-next-line react-hooks/rules-of-hooks
21
- return tableState => useSelectionState(tableState, options);
20
+ return tableState => useTableSelectionState(tableState, options);
22
21
  }
23
- export function useSelectionState(tableState, options) {
22
+ export function useTableSelectionState(tableState, options) {
24
23
  const {
25
24
  items,
26
25
  getRowId
@@ -37,28 +36,29 @@ export function useSelectionState(tableState, options) {
37
36
  state: selectedItems
38
37
  });
39
38
  const selectionManager = React.useMemo(() => {
40
- return createSelectionManager(selectionMode, newSelectedItems => {
39
+ return createSelectionManager(selectionMode, (e, newSelectedItems) => {
41
40
  setSelected(() => {
42
- onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange(newSelectedItems);
41
+ onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange(e, {
42
+ selectedItems: newSelectedItems
43
+ });
43
44
  return newSelectedItems;
44
45
  });
45
46
  });
46
47
  }, [onSelectionChange, selectionMode, setSelected]);
47
- const toggleAllRows = useEventCallback(() => {
48
- selectionManager.toggleAllItems(items.map((item, i) => {
48
+ const toggleAllRows = useEventCallback(e => {
49
+ selectionManager.toggleAllItems(e, items.map((item, i) => {
49
50
  var _a;
50
-
51
51
  return (_a = getRowId === null || getRowId === void 0 ? void 0 : getRowId(item)) !== null && _a !== void 0 ? _a : i;
52
52
  }), selected);
53
53
  });
54
- const toggleRow = useEventCallback(rowId => selectionManager.toggleItem(rowId, selected));
55
- const deselectRow = useEventCallback(rowId => selectionManager.deselectItem(rowId, selected));
56
- const selectRow = useEventCallback(rowId => selectionManager.selectItem(rowId, selected));
57
-
54
+ const toggleRow = useEventCallback((e, rowId) => selectionManager.toggleItem(e, rowId, selected));
55
+ const deselectRow = useEventCallback((e, rowId) => selectionManager.deselectItem(e, rowId, selected));
56
+ const selectRow = useEventCallback((e, rowId) => selectionManager.selectItem(e, rowId, selected));
58
57
  const isRowSelected = rowId => selectionManager.isSelected(rowId, selected);
59
-
60
- return { ...tableState,
58
+ return {
59
+ ...tableState,
61
60
  selection: {
61
+ selectionMode,
62
62
  someRowsSelected: selected.size > 0,
63
63
  allRowsSelected: selectionMode === 'single' ? selected.size > 0 : selected.size === items.length,
64
64
  selectedRows: selected,
@@ -71,4 +71,4 @@ export function useSelectionState(tableState, options) {
71
71
  }
72
72
  };
73
73
  }
74
- //# sourceMappingURL=useSelection.js.map
74
+ //# sourceMappingURL=useTableSelection.js.map