@fluentui/react-table 9.8.0 → 9.8.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 (371) hide show
  1. package/CHANGELOG.json +151 -1
  2. package/CHANGELOG.md +40 -2
  3. package/dist/index.d.ts +3 -0
  4. package/lib/components/DataGrid/DataGrid.js.map +1 -1
  5. package/lib/components/DataGrid/renderDataGrid.js.map +1 -1
  6. package/lib/components/DataGrid/useDataGrid.js +7 -6
  7. package/lib/components/DataGrid/useDataGrid.js.map +1 -1
  8. package/lib/components/DataGrid/useDataGridContextValues.js +1 -1
  9. package/lib/components/DataGrid/useDataGridContextValues.js.map +1 -1
  10. package/lib/components/DataGridBody/DataGridBody.js.map +1 -1
  11. package/lib/components/DataGridBody/renderDataGridBody.js +7 -5
  12. package/lib/components/DataGridBody/renderDataGridBody.js.map +1 -1
  13. package/lib/components/DataGridBody/useDataGridBody.js +1 -1
  14. package/lib/components/DataGridBody/useDataGridBody.js.map +1 -1
  15. package/lib/components/DataGridCell/DataGridCell.js.map +1 -1
  16. package/lib/components/DataGridCell/renderDataGridCell.js.map +1 -1
  17. package/lib/components/DataGridCell/useDataGridCell.js +1 -1
  18. package/lib/components/DataGridCell/useDataGridCell.js.map +1 -1
  19. package/lib/components/DataGridHeader/DataGridHeader.js.map +1 -1
  20. package/lib/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
  21. package/lib/components/DataGridHeader/useDataGridHeader.js.map +1 -1
  22. package/lib/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
  23. package/lib/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
  24. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js +3 -3
  25. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  26. package/lib/components/DataGridRow/DataGridRow.js.map +1 -1
  27. package/lib/components/DataGridRow/renderDataGridRow.js +10 -5
  28. package/lib/components/DataGridRow/renderDataGridRow.js.map +1 -1
  29. package/lib/components/DataGridRow/useDataGridRow.js +4 -4
  30. package/lib/components/DataGridRow/useDataGridRow.js.map +1 -1
  31. package/lib/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
  32. package/lib/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
  33. package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js +2 -2
  34. package/lib/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
  35. package/lib/components/Table/Table.js.map +1 -1
  36. package/lib/components/Table/renderTable.js +5 -4
  37. package/lib/components/Table/renderTable.js.map +1 -1
  38. package/lib/components/Table/useTable.js.map +1 -1
  39. package/lib/components/Table/useTableContextValues.js +1 -1
  40. package/lib/components/Table/useTableContextValues.js.map +1 -1
  41. package/lib/components/TableBody/TableBody.js.map +1 -1
  42. package/lib/components/TableBody/renderTableBody.js +2 -2
  43. package/lib/components/TableBody/renderTableBody.js.map +1 -1
  44. package/lib/components/TableBody/useTableBody.js +1 -1
  45. package/lib/components/TableBody/useTableBody.js.map +1 -1
  46. package/lib/components/TableCell/TableCell.js.map +1 -1
  47. package/lib/components/TableCell/renderTableCell.js +2 -2
  48. package/lib/components/TableCell/renderTableCell.js.map +1 -1
  49. package/lib/components/TableCell/useTableCell.js +1 -1
  50. package/lib/components/TableCell/useTableCell.js.map +1 -1
  51. package/lib/components/TableCellActions/TableCellActions.js.map +1 -1
  52. package/lib/components/TableCellActions/renderTableCellActions.js +2 -2
  53. package/lib/components/TableCellActions/renderTableCellActions.js.map +1 -1
  54. package/lib/components/TableCellActions/useTableCellActions.js.map +1 -1
  55. package/lib/components/TableCellLayout/TableCellLayout.js.map +1 -1
  56. package/lib/components/TableCellLayout/renderTableCellLayout.js +17 -4
  57. package/lib/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
  58. package/lib/components/TableCellLayout/useTableCellLayout.js +1 -1
  59. package/lib/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  60. package/lib/components/TableCellLayout/useTableCellLayoutContextValues.js +1 -1
  61. package/lib/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
  62. package/lib/components/TableCellLayout/useTableCellLayoutStyles.styles.js.map +1 -1
  63. package/lib/components/TableHeader/TableHeader.js.map +1 -1
  64. package/lib/components/TableHeader/renderTableHeader.js +5 -4
  65. package/lib/components/TableHeader/renderTableHeader.js.map +1 -1
  66. package/lib/components/TableHeader/useTableHeader.js +1 -1
  67. package/lib/components/TableHeader/useTableHeader.js.map +1 -1
  68. package/lib/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
  69. package/lib/components/TableHeaderCell/renderTableHeaderCell.js +12 -2
  70. package/lib/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  71. package/lib/components/TableHeaderCell/useTableHeaderCell.js +1 -1
  72. package/lib/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  73. package/lib/components/TableResizeHandle/TableResizeHandle.js.map +1 -1
  74. package/lib/components/TableResizeHandle/renderTableResizeHandle.js +2 -2
  75. package/lib/components/TableResizeHandle/renderTableResizeHandle.js.map +1 -1
  76. package/lib/components/TableResizeHandle/useTableResizeHandle.js +2 -2
  77. package/lib/components/TableResizeHandle/useTableResizeHandle.js.map +1 -1
  78. package/lib/components/TableRow/TableRow.js.map +1 -1
  79. package/lib/components/TableRow/renderTableRow.js +2 -2
  80. package/lib/components/TableRow/renderTableRow.js.map +1 -1
  81. package/lib/components/TableRow/useTableRow.js +1 -1
  82. package/lib/components/TableRow/useTableRow.js.map +1 -1
  83. package/lib/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
  84. package/lib/components/TableSelectionCell/renderTableSelectionCell.js +7 -2
  85. package/lib/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
  86. package/lib/components/TableSelectionCell/useTableSelectionCell.js +2 -2
  87. package/lib/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
  88. package/lib/contexts/columnIdContext.js.map +1 -1
  89. package/lib/contexts/dataGridContext.js.map +1 -1
  90. package/lib/contexts/rowIdContext.js.map +1 -1
  91. package/lib/contexts/tableContext.js.map +1 -1
  92. package/lib/hooks/createColumn.js +1 -1
  93. package/lib/hooks/createColumn.js.map +1 -1
  94. package/lib/hooks/types.js.map +1 -1
  95. package/lib/hooks/useKeyboardResizing.js +6 -6
  96. package/lib/hooks/useKeyboardResizing.js.map +1 -1
  97. package/lib/hooks/useMeasureElement.js +3 -2
  98. package/lib/hooks/useMeasureElement.js.map +1 -1
  99. package/lib/hooks/useTableColumnResizeMouseHandler.js +20 -16
  100. package/lib/hooks/useTableColumnResizeMouseHandler.js.map +1 -1
  101. package/lib/hooks/useTableColumnResizeState.js +5 -5
  102. package/lib/hooks/useTableColumnResizeState.js.map +1 -1
  103. package/lib/hooks/useTableColumnSizing.js +19 -6
  104. package/lib/hooks/useTableColumnSizing.js.map +1 -1
  105. package/lib/hooks/useTableCompositeNavigation.js +2 -2
  106. package/lib/hooks/useTableCompositeNavigation.js.map +1 -1
  107. package/lib/hooks/useTableFeatures.js +4 -5
  108. package/lib/hooks/useTableFeatures.js.map +1 -1
  109. package/lib/hooks/useTableSelection.js +6 -4
  110. package/lib/hooks/useTableSelection.js.map +1 -1
  111. package/lib/hooks/useTableSort.js +9 -6
  112. package/lib/hooks/useTableSort.js.map +1 -1
  113. package/lib/utils/columnResizeUtils.js +6 -4
  114. package/lib/utils/columnResizeUtils.js.map +1 -1
  115. package/lib-commonjs/DataGrid.js +2 -2
  116. package/lib-commonjs/DataGrid.js.map +1 -1
  117. package/lib-commonjs/DataGridBody.js +2 -2
  118. package/lib-commonjs/DataGridBody.js.map +1 -1
  119. package/lib-commonjs/DataGridCell.js +2 -2
  120. package/lib-commonjs/DataGridCell.js.map +1 -1
  121. package/lib-commonjs/DataGridHeader.js +2 -2
  122. package/lib-commonjs/DataGridHeader.js.map +1 -1
  123. package/lib-commonjs/DataGridHeaderCell.js +2 -2
  124. package/lib-commonjs/DataGridHeaderCell.js.map +1 -1
  125. package/lib-commonjs/DataGridRow.js +2 -2
  126. package/lib-commonjs/DataGridRow.js.map +1 -1
  127. package/lib-commonjs/DataGridSelectionCell.js +2 -2
  128. package/lib-commonjs/DataGridSelectionCell.js.map +1 -1
  129. package/lib-commonjs/Table.js +2 -2
  130. package/lib-commonjs/Table.js.map +1 -1
  131. package/lib-commonjs/TableBody.js +2 -2
  132. package/lib-commonjs/TableBody.js.map +1 -1
  133. package/lib-commonjs/TableCell.js +2 -2
  134. package/lib-commonjs/TableCell.js.map +1 -1
  135. package/lib-commonjs/TableCellActions.js +2 -2
  136. package/lib-commonjs/TableCellActions.js.map +1 -1
  137. package/lib-commonjs/TableCellLayout.js +2 -2
  138. package/lib-commonjs/TableCellLayout.js.map +1 -1
  139. package/lib-commonjs/TableCellPrimaryLayout.js +2 -2
  140. package/lib-commonjs/TableCellPrimaryLayout.js.map +1 -1
  141. package/lib-commonjs/TableHeader.js +2 -2
  142. package/lib-commonjs/TableHeader.js.map +1 -1
  143. package/lib-commonjs/TableHeaderCell.js +2 -2
  144. package/lib-commonjs/TableHeaderCell.js.map +1 -1
  145. package/lib-commonjs/TableResizeHandle.js +2 -2
  146. package/lib-commonjs/TableResizeHandle.js.map +1 -1
  147. package/lib-commonjs/TableRow.js +2 -2
  148. package/lib-commonjs/TableRow.js.map +1 -1
  149. package/lib-commonjs/TableSelectionCell.js +2 -2
  150. package/lib-commonjs/TableSelectionCell.js.map +1 -1
  151. package/lib-commonjs/components/DataGrid/DataGrid.js +9 -7
  152. package/lib-commonjs/components/DataGrid/DataGrid.js.map +1 -1
  153. package/lib-commonjs/components/DataGrid/DataGrid.types.js +2 -2
  154. package/lib-commonjs/components/DataGrid/DataGrid.types.js.map +1 -1
  155. package/lib-commonjs/components/DataGrid/index.js +7 -7
  156. package/lib-commonjs/components/DataGrid/index.js.map +1 -1
  157. package/lib-commonjs/components/DataGrid/renderDataGrid.js +5 -3
  158. package/lib-commonjs/components/DataGrid/renderDataGrid.js.map +1 -1
  159. package/lib-commonjs/components/DataGrid/useDataGrid.js +22 -19
  160. package/lib-commonjs/components/DataGrid/useDataGrid.js.map +1 -1
  161. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js +4 -2
  162. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js.map +1 -1
  163. package/lib-commonjs/components/DataGrid/useDataGridStyles.styles.js +8 -4
  164. package/lib-commonjs/components/DataGrid/useDataGridStyles.styles.js.map +1 -1
  165. package/lib-commonjs/components/DataGridBody/DataGridBody.js +9 -7
  166. package/lib-commonjs/components/DataGridBody/DataGridBody.js.map +1 -1
  167. package/lib-commonjs/components/DataGridBody/DataGridBody.types.js +2 -2
  168. package/lib-commonjs/components/DataGridBody/DataGridBody.types.js.map +1 -1
  169. package/lib-commonjs/components/DataGridBody/index.js +6 -6
  170. package/lib-commonjs/components/DataGridBody/index.js.map +1 -1
  171. package/lib-commonjs/components/DataGridBody/renderDataGridBody.js +13 -9
  172. package/lib-commonjs/components/DataGridBody/renderDataGridBody.js.map +1 -1
  173. package/lib-commonjs/components/DataGridBody/useDataGridBody.js +6 -4
  174. package/lib-commonjs/components/DataGridBody/useDataGridBody.js.map +1 -1
  175. package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.styles.js +8 -4
  176. package/lib-commonjs/components/DataGridBody/useDataGridBodyStyles.styles.js.map +1 -1
  177. package/lib-commonjs/components/DataGridCell/DataGridCell.js +9 -7
  178. package/lib-commonjs/components/DataGridCell/DataGridCell.js.map +1 -1
  179. package/lib-commonjs/components/DataGridCell/index.js +6 -6
  180. package/lib-commonjs/components/DataGridCell/index.js.map +1 -1
  181. package/lib-commonjs/components/DataGridCell/renderDataGridCell.js +3 -1
  182. package/lib-commonjs/components/DataGridCell/renderDataGridCell.js.map +1 -1
  183. package/lib-commonjs/components/DataGridCell/useDataGridCell.js +8 -6
  184. package/lib-commonjs/components/DataGridCell/useDataGridCell.js.map +1 -1
  185. package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.styles.js +8 -4
  186. package/lib-commonjs/components/DataGridCell/useDataGridCellStyles.styles.js.map +1 -1
  187. package/lib-commonjs/components/DataGridHeader/DataGridHeader.js +9 -7
  188. package/lib-commonjs/components/DataGridHeader/DataGridHeader.js.map +1 -1
  189. package/lib-commonjs/components/DataGridHeader/index.js +6 -6
  190. package/lib-commonjs/components/DataGridHeader/index.js.map +1 -1
  191. package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js +3 -1
  192. package/lib-commonjs/components/DataGridHeader/renderDataGridHeader.js.map +1 -1
  193. package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js +5 -3
  194. package/lib-commonjs/components/DataGridHeader/useDataGridHeader.js.map +1 -1
  195. package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.styles.js +8 -4
  196. package/lib-commonjs/components/DataGridHeader/useDataGridHeaderStyles.styles.js.map +1 -1
  197. package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js +9 -7
  198. package/lib-commonjs/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -1
  199. package/lib-commonjs/components/DataGridHeaderCell/index.js +6 -6
  200. package/lib-commonjs/components/DataGridHeaderCell/index.js.map +1 -1
  201. package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js +3 -1
  202. package/lib-commonjs/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -1
  203. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js +10 -8
  204. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  205. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.styles.js +8 -4
  206. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.styles.js.map +1 -1
  207. package/lib-commonjs/components/DataGridRow/DataGridRow.js +9 -7
  208. package/lib-commonjs/components/DataGridRow/DataGridRow.js.map +1 -1
  209. package/lib-commonjs/components/DataGridRow/DataGridRow.types.js +2 -2
  210. package/lib-commonjs/components/DataGridRow/DataGridRow.types.js.map +1 -1
  211. package/lib-commonjs/components/DataGridRow/index.js +6 -6
  212. package/lib-commonjs/components/DataGridRow/index.js.map +1 -1
  213. package/lib-commonjs/components/DataGridRow/renderDataGridRow.js +16 -9
  214. package/lib-commonjs/components/DataGridRow/renderDataGridRow.js.map +1 -1
  215. package/lib-commonjs/components/DataGridRow/useDataGridRow.js +18 -16
  216. package/lib-commonjs/components/DataGridRow/useDataGridRow.js.map +1 -1
  217. package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.styles.js +8 -4
  218. package/lib-commonjs/components/DataGridRow/useDataGridRowStyles.styles.js.map +1 -1
  219. package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js +9 -7
  220. package/lib-commonjs/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -1
  221. package/lib-commonjs/components/DataGridSelectionCell/index.js +6 -6
  222. package/lib-commonjs/components/DataGridSelectionCell/index.js.map +1 -1
  223. package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js +3 -1
  224. package/lib-commonjs/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -1
  225. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js +9 -7
  226. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -1
  227. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.styles.js +8 -4
  228. package/lib-commonjs/components/DataGridSelectionCell/useDataGridSelectionCellStyles.styles.js.map +1 -1
  229. package/lib-commonjs/components/Table/Table.js +9 -7
  230. package/lib-commonjs/components/Table/Table.js.map +1 -1
  231. package/lib-commonjs/components/Table/index.js +6 -6
  232. package/lib-commonjs/components/Table/index.js.map +1 -1
  233. package/lib-commonjs/components/Table/renderTable.js +11 -8
  234. package/lib-commonjs/components/Table/renderTable.js.map +1 -1
  235. package/lib-commonjs/components/Table/useTable.js +7 -5
  236. package/lib-commonjs/components/Table/useTable.js.map +1 -1
  237. package/lib-commonjs/components/Table/useTableContextValues.js +6 -4
  238. package/lib-commonjs/components/Table/useTableContextValues.js.map +1 -1
  239. package/lib-commonjs/components/Table/useTableStyles.styles.js +12 -6
  240. package/lib-commonjs/components/Table/useTableStyles.styles.js.map +1 -1
  241. package/lib-commonjs/components/TableBody/TableBody.js +9 -7
  242. package/lib-commonjs/components/TableBody/TableBody.js.map +1 -1
  243. package/lib-commonjs/components/TableBody/index.js +6 -6
  244. package/lib-commonjs/components/TableBody/index.js.map +1 -1
  245. package/lib-commonjs/components/TableBody/renderTableBody.js +8 -6
  246. package/lib-commonjs/components/TableBody/renderTableBody.js.map +1 -1
  247. package/lib-commonjs/components/TableBody/useTableBody.js +8 -6
  248. package/lib-commonjs/components/TableBody/useTableBody.js.map +1 -1
  249. package/lib-commonjs/components/TableBody/useTableBodyStyles.styles.js +11 -5
  250. package/lib-commonjs/components/TableBody/useTableBodyStyles.styles.js.map +1 -1
  251. package/lib-commonjs/components/TableCell/TableCell.js +9 -7
  252. package/lib-commonjs/components/TableCell/TableCell.js.map +1 -1
  253. package/lib-commonjs/components/TableCell/index.js +6 -6
  254. package/lib-commonjs/components/TableCell/index.js.map +1 -1
  255. package/lib-commonjs/components/TableCell/renderTableCell.js +8 -6
  256. package/lib-commonjs/components/TableCell/renderTableCell.js.map +1 -1
  257. package/lib-commonjs/components/TableCell/useTableCell.js +8 -6
  258. package/lib-commonjs/components/TableCell/useTableCell.js.map +1 -1
  259. package/lib-commonjs/components/TableCell/useTableCellStyles.styles.js +12 -6
  260. package/lib-commonjs/components/TableCell/useTableCellStyles.styles.js.map +1 -1
  261. package/lib-commonjs/components/TableCellActions/TableCellActions.js +9 -7
  262. package/lib-commonjs/components/TableCellActions/TableCellActions.js.map +1 -1
  263. package/lib-commonjs/components/TableCellActions/index.js +6 -6
  264. package/lib-commonjs/components/TableCellActions/index.js.map +1 -1
  265. package/lib-commonjs/components/TableCellActions/renderTableCellActions.js +8 -6
  266. package/lib-commonjs/components/TableCellActions/renderTableCellActions.js.map +1 -1
  267. package/lib-commonjs/components/TableCellActions/useTableCellActions.js +7 -5
  268. package/lib-commonjs/components/TableCellActions/useTableCellActions.js.map +1 -1
  269. package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.styles.js +7 -3
  270. package/lib-commonjs/components/TableCellActions/useTableCellActionsStyles.styles.js.map +1 -1
  271. package/lib-commonjs/components/TableCellLayout/TableCellLayout.js +9 -7
  272. package/lib-commonjs/components/TableCellLayout/TableCellLayout.js.map +1 -1
  273. package/lib-commonjs/components/TableCellLayout/index.js +6 -6
  274. package/lib-commonjs/components/TableCellLayout/index.js.map +1 -1
  275. package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js +24 -9
  276. package/lib-commonjs/components/TableCellLayout/renderTableCellLayout.js.map +1 -1
  277. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js +12 -10
  278. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  279. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js +6 -4
  280. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -1
  281. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.styles.js +8 -4
  282. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.styles.js.map +1 -1
  283. package/lib-commonjs/components/TableHeader/TableHeader.js +9 -7
  284. package/lib-commonjs/components/TableHeader/TableHeader.js.map +1 -1
  285. package/lib-commonjs/components/TableHeader/index.js +6 -6
  286. package/lib-commonjs/components/TableHeader/index.js.map +1 -1
  287. package/lib-commonjs/components/TableHeader/renderTableHeader.js +11 -8
  288. package/lib-commonjs/components/TableHeader/renderTableHeader.js.map +1 -1
  289. package/lib-commonjs/components/TableHeader/useTableHeader.js +8 -6
  290. package/lib-commonjs/components/TableHeader/useTableHeader.js.map +1 -1
  291. package/lib-commonjs/components/TableHeader/useTableHeaderStyles.styles.js +11 -5
  292. package/lib-commonjs/components/TableHeader/useTableHeaderStyles.styles.js.map +1 -1
  293. package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js +9 -7
  294. package/lib-commonjs/components/TableHeaderCell/TableHeaderCell.js.map +1 -1
  295. package/lib-commonjs/components/TableHeaderCell/index.js +6 -6
  296. package/lib-commonjs/components/TableHeaderCell/index.js.map +1 -1
  297. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js +18 -6
  298. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  299. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js +17 -15
  300. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  301. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.styles.js +12 -6
  302. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.styles.js.map +1 -1
  303. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.js +9 -7
  304. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.js.map +1 -1
  305. package/lib-commonjs/components/TableResizeHandle/index.js +6 -6
  306. package/lib-commonjs/components/TableResizeHandle/index.js.map +1 -1
  307. package/lib-commonjs/components/TableResizeHandle/renderTableResizeHandle.js +8 -6
  308. package/lib-commonjs/components/TableResizeHandle/renderTableResizeHandle.js.map +1 -1
  309. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandle.js +10 -8
  310. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandle.js.map +1 -1
  311. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandleStyles.styles.js +7 -3
  312. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandleStyles.styles.js.map +1 -1
  313. package/lib-commonjs/components/TableRow/TableRow.js +9 -7
  314. package/lib-commonjs/components/TableRow/TableRow.js.map +1 -1
  315. package/lib-commonjs/components/TableRow/index.js +6 -6
  316. package/lib-commonjs/components/TableRow/index.js.map +1 -1
  317. package/lib-commonjs/components/TableRow/renderTableRow.js +8 -6
  318. package/lib-commonjs/components/TableRow/renderTableRow.js.map +1 -1
  319. package/lib-commonjs/components/TableRow/useTableRow.js +12 -10
  320. package/lib-commonjs/components/TableRow/useTableRow.js.map +1 -1
  321. package/lib-commonjs/components/TableRow/useTableRowStyles.styles.js +12 -6
  322. package/lib-commonjs/components/TableRow/useTableRowStyles.styles.js.map +1 -1
  323. package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js +9 -7
  324. package/lib-commonjs/components/TableSelectionCell/TableSelectionCell.js.map +1 -1
  325. package/lib-commonjs/components/TableSelectionCell/index.js +6 -6
  326. package/lib-commonjs/components/TableSelectionCell/index.js.map +1 -1
  327. package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js +13 -6
  328. package/lib-commonjs/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -1
  329. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js +17 -15
  330. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCell.js.map +1 -1
  331. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.styles.js +12 -6
  332. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.styles.js.map +1 -1
  333. package/lib-commonjs/contexts/columnIdContext.js +11 -5
  334. package/lib-commonjs/contexts/columnIdContext.js.map +1 -1
  335. package/lib-commonjs/contexts/dataGridContext.js +9 -5
  336. package/lib-commonjs/contexts/dataGridContext.js.map +1 -1
  337. package/lib-commonjs/contexts/rowIdContext.js +11 -5
  338. package/lib-commonjs/contexts/rowIdContext.js.map +1 -1
  339. package/lib-commonjs/contexts/tableContext.js +11 -5
  340. package/lib-commonjs/contexts/tableContext.js.map +1 -1
  341. package/lib-commonjs/contexts/tableHeaderContext.js +8 -4
  342. package/lib-commonjs/contexts/tableHeaderContext.js.map +1 -1
  343. package/lib-commonjs/hooks/createColumn.js +4 -2
  344. package/lib-commonjs/hooks/createColumn.js.map +1 -1
  345. package/lib-commonjs/hooks/index.js +8 -8
  346. package/lib-commonjs/hooks/index.js.map +1 -1
  347. package/lib-commonjs/hooks/types.js +2 -2
  348. package/lib-commonjs/hooks/types.js.map +1 -1
  349. package/lib-commonjs/hooks/useKeyboardResizing.js +22 -20
  350. package/lib-commonjs/hooks/useKeyboardResizing.js.map +1 -1
  351. package/lib-commonjs/hooks/useMeasureElement.js +11 -8
  352. package/lib-commonjs/hooks/useMeasureElement.js.map +1 -1
  353. package/lib-commonjs/hooks/useTableColumnResizeMouseHandler.js +32 -26
  354. package/lib-commonjs/hooks/useTableColumnResizeMouseHandler.js.map +1 -1
  355. package/lib-commonjs/hooks/useTableColumnResizeState.js +15 -13
  356. package/lib-commonjs/hooks/useTableColumnResizeState.js.map +1 -1
  357. package/lib-commonjs/hooks/useTableColumnSizing.js +28 -11
  358. package/lib-commonjs/hooks/useTableColumnSizing.js.map +1 -1
  359. package/lib-commonjs/hooks/useTableCompositeNavigation.js +20 -18
  360. package/lib-commonjs/hooks/useTableCompositeNavigation.js.map +1 -1
  361. package/lib-commonjs/hooks/useTableFeatures.js +12 -9
  362. package/lib-commonjs/hooks/useTableFeatures.js.map +1 -1
  363. package/lib-commonjs/hooks/useTableSelection.js +24 -16
  364. package/lib-commonjs/hooks/useTableSelection.js.map +1 -1
  365. package/lib-commonjs/hooks/useTableSort.js +22 -13
  366. package/lib-commonjs/hooks/useTableSort.js.map +1 -1
  367. package/lib-commonjs/index.js +344 -126
  368. package/lib-commonjs/index.js.map +1 -1
  369. package/lib-commonjs/utils/columnResizeUtils.js +30 -12
  370. package/lib-commonjs/utils/columnResizeUtils.js.map +1 -1
  371. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"sources":["columnResizeUtils.ts"],"sourcesContent":["import { TableColumnDefinition, ColumnWidthState, TableColumnId, TableColumnSizingOptions } from '../hooks';\n\nconst DEFAULT_WIDTH = 150;\nconst DEFAULT_MIN_WIDTH = 100;\n\n/**\n * This function takes the column definitions and the curent ColumnWidthState and returns new state.\n * - It uses existing state for existing columns.\n * - It removes any state for columns no longer present.\n * - It checks if any column has been replaced and returns updated state if so\n * - It returns old state if no changes in the state have been made (so that react doesn't call effects)\n * @param columns\n * @param state\n * @returns\n */\n\nexport function columnDefinitionsToState<T>(\n columns: TableColumnDefinition<T>[],\n state: ColumnWidthState[] = [],\n columnSizingOptions: TableColumnSizingOptions = {},\n): ColumnWidthState[] {\n let updated = false;\n const stateMap = new Map(state.map(s => [s.columnId, s]));\n\n const updatedState = columns.map(column => {\n const existingColumnState = stateMap.get(column.columnId);\n\n if (existingColumnState) {\n const {\n idealWidth = existingColumnState.idealWidth,\n minWidth = existingColumnState.minWidth,\n padding = existingColumnState.padding,\n } = columnSizingOptions[column.columnId] ?? {};\n\n if (\n idealWidth !== existingColumnState.idealWidth ||\n minWidth !== existingColumnState.minWidth ||\n padding !== existingColumnState.padding\n ) {\n updated = true;\n return {\n ...existingColumnState,\n idealWidth,\n width: idealWidth,\n minWidth,\n padding,\n };\n }\n return existingColumnState;\n }\n\n const {\n defaultWidth,\n idealWidth = DEFAULT_WIDTH,\n minWidth = DEFAULT_MIN_WIDTH,\n padding,\n } = columnSizingOptions[column.columnId] ?? {};\n\n updated = true;\n return {\n columnId: column.columnId,\n width: Math.max(defaultWidth ?? idealWidth, minWidth),\n minWidth,\n idealWidth: Math.max(defaultWidth ?? idealWidth, minWidth),\n padding: padding ?? 16,\n };\n });\n\n // If the length of the new state changed (column was added or removed) or any of\n // the individual states has a new reference (column was replaced),\n // we have to reset the column widths to their ideal width (because the column which was last may not be last now).\n // Then the adjustColumnWidthsToFitContainer can do its job and properly stretch the last column.\n if (updatedState.length !== state.length || updated) {\n const column = updatedState.find(col => col.width > col.idealWidth);\n if (column) {\n column.width = column.idealWidth;\n }\n\n updated = true;\n }\n\n return updated ? updatedState : state;\n}\n\nexport function getColumnById(state: ColumnWidthState[], columnId: TableColumnId) {\n return state.find(c => c.columnId === columnId);\n}\n\nexport function getColumnByIndex(state: ColumnWidthState[], index: number) {\n return state[index];\n}\n\nexport function getTotalWidth(state: ColumnWidthState[]): number {\n return state.reduce((sum, column) => sum + column.width + column.padding, 0);\n}\n\nexport function getLength(state: ColumnWidthState[]) {\n return state.length;\n}\n\nexport function getColumnWidth(state: ColumnWidthState[], columnId: TableColumnId): number {\n const column = getColumnById(state, columnId);\n return column?.width ?? 0;\n}\n\n/**\n * This function takes the current state and returns an updated state, so that it can be set.\n * The reason for this is that we can update the state multiple times before commiting to render.\n * This is an optimization and also prevents flickering.\n * It also returns new copy of the state only if the value is different than the one currently in\n * the state, further preventing unnecessary updates.\n * @param localState\n * @param columnId\n * @param property\n * @param value\n * @returns\n */\nexport function setColumnProperty(\n localState: ColumnWidthState[],\n columnId: TableColumnId,\n property: keyof ColumnWidthState,\n value: number,\n) {\n const currentColumn = getColumnById(localState, columnId);\n\n if (!currentColumn || currentColumn?.[property] === value) {\n return localState;\n }\n\n const updatedColumn = { ...currentColumn, [property]: value };\n\n const newState = localState.reduce((acc, current) => {\n if (current.columnId === updatedColumn.columnId) {\n return [...acc, updatedColumn];\n }\n return [...acc, current];\n }, [] as ColumnWidthState[]);\n\n return newState;\n}\n\n/**\n * This function takes the state and container width and makes sure the each column in the state\n * is its optimal width, and that the columns\n * a) fit to the container\n * b) always fill the whole container\n * @param state\n * @param containerWidth\n * @returns\n */\nexport function adjustColumnWidthsToFitContainer(state: ColumnWidthState[], containerWidth: number) {\n let newState = state;\n const totalWidth = getTotalWidth(newState);\n\n // The total width is smaller, we are expanding columns\n if (totalWidth < containerWidth) {\n let difference = containerWidth - totalWidth;\n let i = 0;\n // We start at the beginning and assign the columns their ideal width\n while (i < newState.length && difference > 0) {\n const currentCol = getColumnByIndex(newState, i);\n const colAdjustment = Math.min(currentCol.idealWidth - currentCol.width, difference);\n newState = setColumnProperty(newState, currentCol.columnId, 'width', currentCol.width + colAdjustment);\n difference -= colAdjustment;\n\n // if there is still empty space, after all columns are their ideal sizes, assign it to the last column\n if (i === newState.length - 1 && difference !== 0) {\n const lastCol = getColumnByIndex(newState, i);\n newState = setColumnProperty(newState, lastCol.columnId, 'width', lastCol.width + difference);\n }\n\n i++;\n }\n }\n\n // The total width is larger than container, we need to squash the columns\n else if (totalWidth >= containerWidth) {\n let difference = totalWidth - containerWidth;\n // We start with the last column\n let j = newState.length - 1;\n while (j >= 0 && difference > 0) {\n const currentCol = getColumnByIndex(newState, j);\n if (currentCol.width > currentCol.minWidth) {\n const colAdjustment = Math.min(currentCol.width - currentCol.minWidth, difference);\n difference -= colAdjustment;\n newState = setColumnProperty(newState, currentCol.columnId, 'width', currentCol.width - colAdjustment);\n }\n j--;\n }\n }\n\n return newState;\n}\n"],"names":["DEFAULT_WIDTH","DEFAULT_MIN_WIDTH","columnDefinitionsToState","columns","state","columnSizingOptions","updated","stateMap","Map","map","s","columnId","updatedState","column","existingColumnState","get","idealWidth","minWidth","padding","width","defaultWidth","Math","max","length","find","col","getColumnById","c","getColumnByIndex","index","getTotalWidth","reduce","sum","getLength","getColumnWidth","setColumnProperty","localState","property","value","currentColumn","updatedColumn","newState","acc","current","adjustColumnWidthsToFitContainer","containerWidth","totalWidth","difference","i","currentCol","colAdjustment","min","lastCol","j"],"mappings":"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"}
1
+ {"version":3,"sources":["columnResizeUtils.ts"],"sourcesContent":["import { TableColumnDefinition, ColumnWidthState, TableColumnId, TableColumnSizingOptions } from '../hooks';\n\nconst DEFAULT_WIDTH = 150;\nconst DEFAULT_MIN_WIDTH = 100;\n\n/**\n * This function takes the column definitions and the curent ColumnWidthState and returns new state.\n * - It uses existing state for existing columns.\n * - It removes any state for columns no longer present.\n * - It checks if any column has been replaced and returns updated state if so\n * - It returns old state if no changes in the state have been made (so that react doesn't call effects)\n * @param columns\n * @param state\n * @returns\n */\n\nexport function columnDefinitionsToState<T>(\n columns: TableColumnDefinition<T>[],\n state: ColumnWidthState[] = [],\n columnSizingOptions: TableColumnSizingOptions = {},\n): ColumnWidthState[] {\n let updated = false;\n const stateMap = new Map(state.map(s => [s.columnId, s]));\n\n const updatedState = columns.map(column => {\n const existingColumnState = stateMap.get(column.columnId);\n\n if (existingColumnState) {\n const {\n idealWidth = existingColumnState.idealWidth,\n minWidth = existingColumnState.minWidth,\n padding = existingColumnState.padding,\n } = columnSizingOptions[column.columnId] ?? {};\n\n if (\n idealWidth !== existingColumnState.idealWidth ||\n minWidth !== existingColumnState.minWidth ||\n padding !== existingColumnState.padding\n ) {\n updated = true;\n return {\n ...existingColumnState,\n idealWidth,\n width: idealWidth,\n minWidth,\n padding,\n };\n }\n return existingColumnState;\n }\n\n const {\n defaultWidth,\n idealWidth = DEFAULT_WIDTH,\n minWidth = DEFAULT_MIN_WIDTH,\n padding,\n } = columnSizingOptions[column.columnId] ?? {};\n\n updated = true;\n return {\n columnId: column.columnId,\n width: Math.max(defaultWidth ?? idealWidth, minWidth),\n minWidth,\n idealWidth: Math.max(defaultWidth ?? idealWidth, minWidth),\n padding: padding ?? 16,\n };\n });\n\n // If the length of the new state changed (column was added or removed) or any of\n // the individual states has a new reference (column was replaced),\n // we have to reset the column widths to their ideal width (because the column which was last may not be last now).\n // Then the adjustColumnWidthsToFitContainer can do its job and properly stretch the last column.\n if (updatedState.length !== state.length || updated) {\n const column = updatedState.find(col => col.width > col.idealWidth);\n if (column) {\n column.width = column.idealWidth;\n }\n\n updated = true;\n }\n\n return updated ? updatedState : state;\n}\n\nexport function getColumnById(state: ColumnWidthState[], columnId: TableColumnId) {\n return state.find(c => c.columnId === columnId);\n}\n\nexport function getColumnByIndex(state: ColumnWidthState[], index: number) {\n return state[index];\n}\n\nexport function getTotalWidth(state: ColumnWidthState[]): number {\n return state.reduce((sum, column) => sum + column.width + column.padding, 0);\n}\n\nexport function getLength(state: ColumnWidthState[]) {\n return state.length;\n}\n\nexport function getColumnWidth(state: ColumnWidthState[], columnId: TableColumnId): number {\n const column = getColumnById(state, columnId);\n return column?.width ?? 0;\n}\n\n/**\n * This function takes the current state and returns an updated state, so that it can be set.\n * The reason for this is that we can update the state multiple times before commiting to render.\n * This is an optimization and also prevents flickering.\n * It also returns new copy of the state only if the value is different than the one currently in\n * the state, further preventing unnecessary updates.\n * @param localState\n * @param columnId\n * @param property\n * @param value\n * @returns\n */\nexport function setColumnProperty(\n localState: ColumnWidthState[],\n columnId: TableColumnId,\n property: keyof ColumnWidthState,\n value: number,\n) {\n const currentColumn = getColumnById(localState, columnId);\n\n if (!currentColumn || currentColumn?.[property] === value) {\n return localState;\n }\n\n const updatedColumn = { ...currentColumn, [property]: value };\n\n const newState = localState.reduce((acc, current) => {\n if (current.columnId === updatedColumn.columnId) {\n return [...acc, updatedColumn];\n }\n return [...acc, current];\n }, [] as ColumnWidthState[]);\n\n return newState;\n}\n\n/**\n * This function takes the state and container width and makes sure the each column in the state\n * is its optimal width, and that the columns\n * a) fit to the container\n * b) always fill the whole container\n * @param state\n * @param containerWidth\n * @returns\n */\nexport function adjustColumnWidthsToFitContainer(state: ColumnWidthState[], containerWidth: number) {\n let newState = state;\n const totalWidth = getTotalWidth(newState);\n\n // The total width is smaller, we are expanding columns\n if (totalWidth < containerWidth) {\n let difference = containerWidth - totalWidth;\n let i = 0;\n // We start at the beginning and assign the columns their ideal width\n while (i < newState.length && difference > 0) {\n const currentCol = getColumnByIndex(newState, i);\n const colAdjustment = Math.min(currentCol.idealWidth - currentCol.width, difference);\n newState = setColumnProperty(newState, currentCol.columnId, 'width', currentCol.width + colAdjustment);\n difference -= colAdjustment;\n\n // if there is still empty space, after all columns are their ideal sizes, assign it to the last column\n if (i === newState.length - 1 && difference !== 0) {\n const lastCol = getColumnByIndex(newState, i);\n newState = setColumnProperty(newState, lastCol.columnId, 'width', lastCol.width + difference);\n }\n\n i++;\n }\n }\n\n // The total width is larger than container, we need to squash the columns\n else if (totalWidth >= containerWidth) {\n let difference = totalWidth - containerWidth;\n // We start with the last column\n let j = newState.length - 1;\n while (j >= 0 && difference > 0) {\n const currentCol = getColumnByIndex(newState, j);\n if (currentCol.width > currentCol.minWidth) {\n const colAdjustment = Math.min(currentCol.width - currentCol.minWidth, difference);\n difference -= colAdjustment;\n newState = setColumnProperty(newState, currentCol.columnId, 'width', currentCol.width - colAdjustment);\n }\n j--;\n }\n }\n\n return newState;\n}\n"],"names":["DEFAULT_WIDTH","DEFAULT_MIN_WIDTH","columnDefinitionsToState","columns","state","columnSizingOptions","updated","stateMap","Map","map","s","columnId","updatedState","column","existingColumnState","get","idealWidth","minWidth","padding","width","defaultWidth","Math","max","length","find","col","getColumnById","c","getColumnByIndex","index","getTotalWidth","reduce","sum","getLength","getColumnWidth","setColumnProperty","localState","property","value","currentColumn","updatedColumn","newState","acc","current","adjustColumnWidthsToFitContainer","containerWidth","totalWidth","difference","i","currentCol","colAdjustment","min","lastCol","j"],"mappings":"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"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGrid/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGrid/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGrid.js"],"sourcesContent":["export * from './components/DataGrid/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGrid.js"],"sourcesContent":["export * from './components/DataGrid/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridBody/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridBody/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridBody.js"],"sourcesContent":["export * from './components/DataGridBody/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridBody.js"],"sourcesContent":["export * from './components/DataGridBody/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridCell.js"],"sourcesContent":["export * from './components/DataGridCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridCell.js"],"sourcesContent":["export * from './components/DataGridCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridHeader/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridHeader/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridHeader.js"],"sourcesContent":["export * from './components/DataGridHeader/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridHeader.js"],"sourcesContent":["export * from './components/DataGridHeader/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridHeaderCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridHeaderCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridHeaderCell.js"],"sourcesContent":["export * from './components/DataGridHeaderCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridHeaderCell.js"],"sourcesContent":["export * from './components/DataGridHeaderCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridRow/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridRow/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridRow.js"],"sourcesContent":["export * from './components/DataGridRow/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridRow.js"],"sourcesContent":["export * from './components/DataGridRow/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/DataGridSelectionCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/DataGridSelectionCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGridSelectionCell.js"],"sourcesContent":["export * from './components/DataGridSelectionCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["DataGridSelectionCell.js"],"sourcesContent":["export * from './components/DataGridSelectionCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/Table/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/Table/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["Table.js"],"sourcesContent":["export * from './components/Table/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["Table.js"],"sourcesContent":["export * from './components/Table/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableBody/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableBody/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableBody.js"],"sourcesContent":["export * from './components/TableBody/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableBody.js"],"sourcesContent":["export * from './components/TableBody/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableCell.js"],"sourcesContent":["export * from './components/TableCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableCell.js"],"sourcesContent":["export * from './components/TableCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableCellActions/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableCellActions/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableCellActions.js"],"sourcesContent":["export * from './components/TableCellActions/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableCellActions.js"],"sourcesContent":["export * from './components/TableCellActions/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableCellLayout/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableCellLayout/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableCellLayout.js"],"sourcesContent":["export * from './components/TableCellLayout/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableCellLayout.js"],"sourcesContent":["export * from './components/TableCellLayout/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableCellLayout/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableCellLayout/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableCellPrimaryLayout.js"],"sourcesContent":["export * from './components/TableCellLayout/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableCellPrimaryLayout.js"],"sourcesContent":["export * from './components/TableCellLayout/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableHeader/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableHeader/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableHeader.js"],"sourcesContent":["export * from './components/TableHeader/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableHeader.js"],"sourcesContent":["export * from './components/TableHeader/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableHeaderCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableHeaderCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableHeaderCell.js"],"sourcesContent":["export * from './components/TableHeaderCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableHeaderCell.js"],"sourcesContent":["export * from './components/TableHeaderCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableResizeHandle/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableResizeHandle/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableResizeHandle.js"],"sourcesContent":["export * from './components/TableResizeHandle/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableResizeHandle.js"],"sourcesContent":["export * from './components/TableResizeHandle/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableRow/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableRow/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableRow.js"],"sourcesContent":["export * from './components/TableRow/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableRow.js"],"sourcesContent":["export * from './components/TableRow/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./components/TableSelectionCell/index"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./components/TableSelectionCell/index"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["TableSelectionCell.js"],"sourcesContent":["export * from './components/TableSelectionCell/index';\n"],"names":[],"mappings":";;;;;oBAAc"}
1
+ {"version":3,"sources":["TableSelectionCell.js"],"sourcesContent":["export * from './components/TableSelectionCell/index';\n"],"names":[],"mappings":";;;;;uBAAc"}
@@ -4,19 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "DataGrid", {
6
6
  enumerable: true,
7
- get: ()=>DataGrid
7
+ get: function() {
8
+ return DataGrid;
9
+ }
8
10
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
11
13
  const _useDataGrid = require("./useDataGrid");
12
14
  const _renderDataGrid = require("./renderDataGrid");
13
- const _useDataGridStylesStyles = require("./useDataGridStyles.styles");
15
+ const _useDataGridStylesstyles = require("./useDataGridStyles.styles");
14
16
  const _useDataGridContextValues = require("./useDataGridContextValues");
15
- const _reactSharedContexts = require("@fluentui/react-shared-contexts");
17
+ const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
16
18
  const DataGrid = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
17
19
  const state = (0, _useDataGrid.useDataGrid_unstable)(props, ref);
18
- (0, _useDataGridStylesStyles.useDataGridStyles_unstable)(state);
19
- (0, _reactSharedContexts.useCustomStyleHook_unstable)('useDataGridStyles_unstable')(state);
20
+ (0, _useDataGridStylesstyles.useDataGridStyles_unstable)(state);
21
+ (0, _reactsharedcontexts.useCustomStyleHook_unstable)('useDataGridStyles_unstable')(state);
20
22
  return (0, _renderDataGrid.renderDataGrid_unstable)(state, (0, _useDataGridContextValues.useDataGridContextValues_unstable)(state));
21
23
  });
22
24
  DataGrid.displayName = 'DataGrid';
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { useDataGrid_unstable } from './useDataGrid';\nimport { renderDataGrid_unstable } from './renderDataGrid';\nimport { useDataGridStyles_unstable } from './useDataGridStyles.styles';\nimport { useDataGridContextValues_unstable } from './useDataGridContextValues';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * DataGrid component\n */ export const DataGrid = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useDataGrid_unstable(props, ref);\n useDataGridStyles_unstable(state);\n useCustomStyleHook_unstable('useDataGridStyles_unstable')(state);\n return renderDataGrid_unstable(state, useDataGridContextValues_unstable(state));\n});\nDataGrid.displayName = 'DataGrid';\n"],"names":["DataGrid","React","forwardRef","props","ref","state","useDataGrid_unstable","useDataGridStyles_unstable","useCustomStyleHook_unstable","renderDataGrid_unstable","useDataGridContextValues_unstable","displayName"],"mappings":";;;;+BAQiBA;;aAAAA;;;6DARM;6BACc;gCACG;yCACG;0CACO;qCACN;AAGjC,MAAMA,WAAW,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAM;IACrE,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,mDAA0B,EAACF;IAC3BG,IAAAA,gDAA2B,EAAC,8BAA8BH;IAC1D,OAAOI,IAAAA,uCAAuB,EAACJ,OAAOK,IAAAA,2DAAiC,EAACL;AAC5E;AACAL,SAASW,WAAW,GAAG"}
1
+ {"version":3,"sources":["DataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { useDataGrid_unstable } from './useDataGrid';\nimport { renderDataGrid_unstable } from './renderDataGrid';\nimport { useDataGridStyles_unstable } from './useDataGridStyles.styles';\nimport { useDataGridContextValues_unstable } from './useDataGridContextValues';\nimport { useCustomStyleHook_unstable } from '@fluentui/react-shared-contexts';\n/**\n * DataGrid component\n */ export const DataGrid = /*#__PURE__*/ React.forwardRef((props, ref)=>{\n const state = useDataGrid_unstable(props, ref);\n useDataGridStyles_unstable(state);\n useCustomStyleHook_unstable('useDataGridStyles_unstable')(state);\n return renderDataGrid_unstable(state, useDataGridContextValues_unstable(state));\n});\nDataGrid.displayName = 'DataGrid';\n"],"names":["DataGrid","React","forwardRef","props","ref","state","useDataGrid_unstable","useDataGridStyles_unstable","useCustomStyleHook_unstable","renderDataGrid_unstable","useDataGridContextValues_unstable","displayName"],"mappings":";;;;+BAQiBA;;;eAAAA;;;;iEARM;6BACc;gCACG;yCACG;0CACO;qCACN;AAGjC,MAAMA,WAAW,WAAW,GAAGC,OAAMC,UAAU,CAAC,CAACC,OAAOC;IAC/D,MAAMC,QAAQC,IAAAA,iCAAoB,EAACH,OAAOC;IAC1CG,IAAAA,mDAA0B,EAACF;IAC3BG,IAAAA,gDAA2B,EAAC,8BAA8BH;IAC1D,OAAOI,IAAAA,uCAAuB,EAACJ,OAAOK,IAAAA,2DAAiC,EAACL;AAC5E;AACAL,SAASW,WAAW,GAAG"}
@@ -2,5 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
6
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
5
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
6
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
@@ -1 +1 @@
1
- {"version":3,"sources":["DataGrid.types.js"],"sourcesContent":["import * as React from 'react';\n"],"names":[],"mappings":";;;;;6DAAuB"}
1
+ {"version":3,"sources":["DataGrid.types.js"],"sourcesContent":["import * as React from 'react';\n"],"names":[],"mappings":";;;;;iEAAuB"}
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", {
3
3
  value: true
4
4
  });
5
- const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
- _exportStar(require("./DataGrid"), exports);
7
- _exportStar(require("./DataGrid.types"), exports);
8
- _exportStar(require("./renderDataGrid"), exports);
9
- _exportStar(require("./useDataGrid"), exports);
10
- _exportStar(require("./useDataGridStyles.styles"), exports);
11
- _exportStar(require("./useDataGridContextValues"), exports);
5
+ const _export_star = require("@swc/helpers/_/_export_star");
6
+ _export_star._(require("./DataGrid"), exports);
7
+ _export_star._(require("./DataGrid.types"), exports);
8
+ _export_star._(require("./renderDataGrid"), exports);
9
+ _export_star._(require("./useDataGrid"), exports);
10
+ _export_star._(require("./useDataGridStyles.styles"), exports);
11
+ _export_star._(require("./useDataGridContextValues"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["index.js"],"sourcesContent":["export * from './DataGrid';\nexport * from './DataGrid.types';\nexport * from './renderDataGrid';\nexport * from './useDataGrid';\nexport * from './useDataGridStyles.styles';\nexport * from './useDataGridContextValues';\n"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;oBACA"}
1
+ {"version":3,"sources":["index.js"],"sourcesContent":["export * from './DataGrid';\nexport * from './DataGrid.types';\nexport * from './renderDataGrid';\nexport * from './useDataGrid';\nexport * from './useDataGridStyles.styles';\nexport * from './useDataGridContextValues';\n"],"names":[],"mappings":";;;;;uBAAc;uBACA;uBACA;uBACA;uBACA;uBACA"}
@@ -4,10 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "renderDataGrid_unstable", {
6
6
  enumerable: true,
7
- get: ()=>renderDataGrid_unstable
7
+ get: function() {
8
+ return renderDataGrid_unstable;
9
+ }
8
10
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
11
13
  const _renderTable = require("../Table/renderTable");
12
14
  const _dataGridContext = require("../../contexts/dataGridContext");
13
15
  const renderDataGrid_unstable = (state, contextValues)=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["renderDataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { renderTable_unstable } from '../Table/renderTable';\nimport { DataGridContextProvider } from '../../contexts/dataGridContext';\n/**\n * Render the final JSX of DataGrid\n */ export const renderDataGrid_unstable = (state, contextValues)=>{\n return /*#__PURE__*/ React.createElement(DataGridContextProvider, {\n value: contextValues.dataGrid\n }, renderTable_unstable(state, contextValues));\n};\n"],"names":["renderDataGrid_unstable","state","contextValues","React","createElement","DataGridContextProvider","value","dataGrid","renderTable_unstable"],"mappings":";;;;+BAKiBA;;aAAAA;;;6DALM;6BACc;iCACG;AAG7B,MAAMA,0BAA0B,CAACC,OAAOC,gBAAgB;IAC/D,OAAO,WAAW,GAAGC,OAAMC,aAAa,CAACC,wCAAuB,EAAE;QAC9DC,OAAOJ,cAAcK,QAAQ;IACjC,GAAGC,IAAAA,iCAAoB,EAACP,OAAOC;AACnC"}
1
+ {"version":3,"sources":["renderDataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { renderTable_unstable } from '../Table/renderTable';\nimport { DataGridContextProvider } from '../../contexts/dataGridContext';\n/**\n * Render the final JSX of DataGrid\n */ export const renderDataGrid_unstable = (state, contextValues)=>{\n return /*#__PURE__*/ React.createElement(DataGridContextProvider, {\n value: contextValues.dataGrid\n }, renderTable_unstable(state, contextValues));\n};\n"],"names":["renderDataGrid_unstable","state","contextValues","React","createElement","DataGridContextProvider","value","dataGrid","renderTable_unstable"],"mappings":";;;;+BAKiBA;;;eAAAA;;;;iEALM;6BACc;iCACG;AAG7B,MAAMA,0BAA0B,CAACC,OAAOC;IAC/C,OAAO,WAAW,GAAGC,OAAMC,aAAa,CAACC,wCAAuB,EAAE;QAC9DC,OAAOJ,cAAcK,QAAQ;IACjC,GAAGC,IAAAA,iCAAoB,EAACP,OAAOC;AACnC"}
@@ -4,23 +4,25 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "useDataGrid_unstable", {
6
6
  enumerable: true,
7
- get: ()=>useDataGrid_unstable
7
+ get: function() {
8
+ return useDataGrid_unstable;
9
+ }
8
10
  });
9
- const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
- const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
- const _reactTabster = require("@fluentui/react-tabster");
11
+ const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
13
+ const _reacttabster = require("@fluentui/react-tabster");
12
14
  const _useTable = require("../Table/useTable");
13
- const _reactUtilities = require("@fluentui/react-utilities");
14
- const _keyboardKeys = require("@fluentui/keyboard-keys");
15
+ const _reactutilities = require("@fluentui/react-utilities");
16
+ const _keyboardkeys = require("@fluentui/keyboard-keys");
15
17
  const _hooks = require("../../hooks");
16
- const _tableSelectionCell = require("../TableSelectionCell");
18
+ const _TableSelectionCell = require("../TableSelectionCell");
17
19
  const useDataGrid_unstable = (props, ref)=>{
18
- const { items , columns , focusMode ='cell' , selectionMode , onSortChange , onSelectionChange , defaultSortState , sortState , selectedItems , defaultSelectedItems , subtleSelection =false , selectionAppearance ='brand' , getRowId , resizableColumns , columnSizingOptions , onColumnResize , containerWidthOffset } = props;
19
- const widthOffset = containerWidthOffset !== null && containerWidthOffset !== void 0 ? containerWidthOffset : selectionMode ? -_tableSelectionCell.CELL_WIDTH : 0;
20
- const gridTabsterAttribute = (0, _reactTabster.useArrowNavigationGroup)({
20
+ const { items, columns, focusMode = 'cell', selectionMode, onSortChange, onSelectionChange, defaultSortState, sortState, selectedItems, defaultSelectedItems, subtleSelection = false, selectionAppearance = 'brand', getRowId, resizableColumns, columnSizingOptions, onColumnResize, containerWidthOffset } = props;
21
+ const widthOffset = containerWidthOffset !== null && containerWidthOffset !== void 0 ? containerWidthOffset : selectionMode ? -_TableSelectionCell.CELL_WIDTH : 0;
22
+ const gridTabsterAttribute = (0, _reacttabster.useArrowNavigationGroup)({
21
23
  axis: 'grid'
22
24
  });
23
- const { onTableKeyDown: onCompositeKeyDown , tableTabsterAttribute: compositeTabsterAttribute , tableRowTabsterAttribute: compositeRowTabsterAttribute } = (0, _hooks.useTableCompositeNavigation)();
25
+ const { onTableKeyDown: onCompositeKeyDown, tableTabsterAttribute: compositeTabsterAttribute, tableRowTabsterAttribute: compositeRowTabsterAttribute } = (0, _hooks.useTableCompositeNavigation)();
24
26
  const tableState = (0, _hooks.useTableFeatures)({
25
27
  items,
26
28
  columns,
@@ -46,23 +48,23 @@ const useDataGrid_unstable = (props, ref)=>{
46
48
  })
47
49
  ]);
48
50
  const innerRef = _react.useRef(null);
49
- const { findFirstFocusable , findLastFocusable } = (0, _reactTabster.useFocusFinders)();
50
- const onKeyDown = (0, _reactUtilities.useEventCallback)((e)=>{
51
- var _props_onKeyDown;
52
- (_props_onKeyDown = props.onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(props, e);
51
+ const { findFirstFocusable, findLastFocusable } = (0, _reacttabster.useFocusFinders)();
52
+ const onKeyDown = (0, _reactutilities.useEventCallback)((e)=>{
53
+ var _props_onKeyDown, _props;
54
+ (_props_onKeyDown = (_props = props).onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(_props, e);
53
55
  focusMode === 'composite' && onCompositeKeyDown(e);
54
56
  // handle ctrl+home and ctrl+end
55
57
  if (!innerRef.current || !e.ctrlKey || e.defaultPrevented) {
56
58
  return;
57
59
  }
58
- if (e.key === _keyboardKeys.Home) {
60
+ if (e.key === _keyboardkeys.Home) {
59
61
  const firstRow = innerRef.current.querySelector('[role="row"]');
60
62
  if (firstRow) {
61
63
  var _findFirstFocusable;
62
64
  (_findFirstFocusable = findFirstFocusable(firstRow)) === null || _findFirstFocusable === void 0 ? void 0 : _findFirstFocusable.focus();
63
65
  }
64
66
  }
65
- if (e.key === _keyboardKeys.End) {
67
+ if (e.key === _keyboardkeys.End) {
66
68
  const rows = innerRef.current.querySelectorAll('[role="row"]');
67
69
  if (rows.length) {
68
70
  var _findLastFocusable;
@@ -78,8 +80,9 @@ const useDataGrid_unstable = (props, ref)=>{
78
80
  ...focusMode === 'cell' && gridTabsterAttribute,
79
81
  ...focusMode === 'composite' && compositeTabsterAttribute,
80
82
  ...props,
81
- onKeyDown
82
- }, (0, _reactUtilities.useMergedRefs)(ref, tableState.tableRef, innerRef));
83
+ onKeyDown,
84
+ ...resizableColumns ? tableState.columnSizing_unstable.getTableProps(props) : {}
85
+ }, (0, _reactutilities.useMergedRefs)(ref, tableState.tableRef, innerRef));
83
86
  return {
84
87
  ...baseTableState,
85
88
  focusMode,
@@ -1 +1 @@
1
- {"version":3,"sources":["useDataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { useArrowNavigationGroup, useFocusFinders } from '@fluentui/react-tabster';\nimport { useTable_unstable } from '../Table/useTable';\nimport { useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { End, Home } from '@fluentui/keyboard-keys';\nimport { useTableFeatures, useTableSort, useTableSelection, useTableColumnSizing_unstable, useTableCompositeNavigation } from '../../hooks';\nimport { CELL_WIDTH } from '../TableSelectionCell';\n/**\n * Create the state required to render DataGrid.\n *\n * The returned state can be modified with hooks such as useDataGridStyles_unstable,\n * before being passed to renderDataGrid_unstable.\n *\n * @param props - props from this instance of DataGrid\n * @param ref - reference to root HTMLElement of DataGrid\n */ export const useDataGrid_unstable = (props, ref)=>{\n const { items , columns , focusMode ='cell' , selectionMode , onSortChange , onSelectionChange , defaultSortState , sortState , selectedItems , defaultSelectedItems , subtleSelection =false , selectionAppearance ='brand' , getRowId , resizableColumns , columnSizingOptions , onColumnResize , containerWidthOffset } = props;\n const widthOffset = containerWidthOffset !== null && containerWidthOffset !== void 0 ? containerWidthOffset : selectionMode ? -CELL_WIDTH : 0;\n const gridTabsterAttribute = useArrowNavigationGroup({\n axis: 'grid'\n });\n const { onTableKeyDown: onCompositeKeyDown , tableTabsterAttribute: compositeTabsterAttribute , tableRowTabsterAttribute: compositeRowTabsterAttribute } = useTableCompositeNavigation();\n const tableState = useTableFeatures({\n items,\n columns,\n getRowId\n }, [\n useTableSort({\n defaultSortState,\n sortState,\n onSortChange\n }),\n useTableSelection({\n defaultSelectedItems,\n selectedItems,\n onSelectionChange,\n selectionMode: selectionMode !== null && selectionMode !== void 0 ? selectionMode : 'multiselect'\n }),\n useTableColumnSizing_unstable({\n onColumnResize,\n columnSizingOptions,\n // The selection cell is not part of the columns, therefore its width needs to be subtracted\n // from the container to make sure the columns don't overflow the table.\n containerWidthOffset: widthOffset\n })\n ]);\n const innerRef = React.useRef(null);\n const { findFirstFocusable , findLastFocusable } = useFocusFinders();\n const onKeyDown = useEventCallback((e)=>{\n var _props_onKeyDown;\n (_props_onKeyDown = props.onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(props, e);\n focusMode === 'composite' && onCompositeKeyDown(e);\n // handle ctrl+home and ctrl+end\n if (!innerRef.current || !e.ctrlKey || e.defaultPrevented) {\n return;\n }\n if (e.key === Home) {\n const firstRow = innerRef.current.querySelector('[role=\"row\"]');\n if (firstRow) {\n var _findFirstFocusable;\n (_findFirstFocusable = findFirstFocusable(firstRow)) === null || _findFirstFocusable === void 0 ? void 0 : _findFirstFocusable.focus();\n }\n }\n if (e.key === End) {\n const rows = innerRef.current.querySelectorAll('[role=\"row\"]');\n if (rows.length) {\n var _findLastFocusable;\n const lastRow = rows.item(rows.length - 1);\n (_findLastFocusable = findLastFocusable(lastRow)) === null || _findLastFocusable === void 0 ? void 0 : _findLastFocusable.focus();\n }\n }\n });\n const baseTableState = useTable_unstable({\n role: 'grid',\n as: 'div',\n noNativeElements: true,\n ...focusMode === 'cell' && gridTabsterAttribute,\n ...focusMode === 'composite' && compositeTabsterAttribute,\n ...props,\n onKeyDown\n }, useMergedRefs(ref, tableState.tableRef, innerRef));\n return {\n ...baseTableState,\n focusMode,\n tableState,\n selectableRows: !!selectionMode,\n subtleSelection,\n selectionAppearance,\n resizableColumns,\n compositeRowTabsterAttribute\n };\n};\n"],"names":["useDataGrid_unstable","props","ref","items","columns","focusMode","selectionMode","onSortChange","onSelectionChange","defaultSortState","sortState","selectedItems","defaultSelectedItems","subtleSelection","selectionAppearance","getRowId","resizableColumns","columnSizingOptions","onColumnResize","containerWidthOffset","widthOffset","CELL_WIDTH","gridTabsterAttribute","useArrowNavigationGroup","axis","onTableKeyDown","onCompositeKeyDown","tableTabsterAttribute","compositeTabsterAttribute","tableRowTabsterAttribute","compositeRowTabsterAttribute","useTableCompositeNavigation","tableState","useTableFeatures","useTableSort","useTableSelection","useTableColumnSizing_unstable","innerRef","React","useRef","findFirstFocusable","findLastFocusable","useFocusFinders","onKeyDown","useEventCallback","e","_props_onKeyDown","call","current","ctrlKey","defaultPrevented","key","Home","firstRow","querySelector","_findFirstFocusable","focus","End","rows","querySelectorAll","length","_findLastFocusable","lastRow","item","baseTableState","useTable_unstable","role","as","noNativeElements","useMergedRefs","tableRef","selectableRows"],"mappings":"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"}
1
+ {"version":3,"sources":["useDataGrid.js"],"sourcesContent":["import * as React from 'react';\nimport { useArrowNavigationGroup, useFocusFinders } from '@fluentui/react-tabster';\nimport { useTable_unstable } from '../Table/useTable';\nimport { useEventCallback, useMergedRefs } from '@fluentui/react-utilities';\nimport { End, Home } from '@fluentui/keyboard-keys';\nimport { useTableFeatures, useTableSort, useTableSelection, useTableColumnSizing_unstable, useTableCompositeNavigation } from '../../hooks';\nimport { CELL_WIDTH } from '../TableSelectionCell';\n/**\n * Create the state required to render DataGrid.\n *\n * The returned state can be modified with hooks such as useDataGridStyles_unstable,\n * before being passed to renderDataGrid_unstable.\n *\n * @param props - props from this instance of DataGrid\n * @param ref - reference to root HTMLElement of DataGrid\n */ export const useDataGrid_unstable = (props, ref)=>{\n const { items, columns, focusMode = 'cell', selectionMode, onSortChange, onSelectionChange, defaultSortState, sortState, selectedItems, defaultSelectedItems, subtleSelection = false, selectionAppearance = 'brand', getRowId, resizableColumns, columnSizingOptions, onColumnResize, containerWidthOffset } = props;\n const widthOffset = containerWidthOffset !== null && containerWidthOffset !== void 0 ? containerWidthOffset : selectionMode ? -CELL_WIDTH : 0;\n const gridTabsterAttribute = useArrowNavigationGroup({\n axis: 'grid'\n });\n const { onTableKeyDown: onCompositeKeyDown, tableTabsterAttribute: compositeTabsterAttribute, tableRowTabsterAttribute: compositeRowTabsterAttribute } = useTableCompositeNavigation();\n const tableState = useTableFeatures({\n items,\n columns,\n getRowId\n }, [\n useTableSort({\n defaultSortState,\n sortState,\n onSortChange\n }),\n useTableSelection({\n defaultSelectedItems,\n selectedItems,\n onSelectionChange,\n selectionMode: selectionMode !== null && selectionMode !== void 0 ? selectionMode : 'multiselect'\n }),\n useTableColumnSizing_unstable({\n onColumnResize,\n columnSizingOptions,\n // The selection cell is not part of the columns, therefore its width needs to be subtracted\n // from the container to make sure the columns don't overflow the table.\n containerWidthOffset: widthOffset\n })\n ]);\n const innerRef = React.useRef(null);\n const { findFirstFocusable, findLastFocusable } = useFocusFinders();\n const onKeyDown = useEventCallback((e)=>{\n var _props_onKeyDown, _props;\n (_props_onKeyDown = (_props = props).onKeyDown) === null || _props_onKeyDown === void 0 ? void 0 : _props_onKeyDown.call(_props, e);\n focusMode === 'composite' && onCompositeKeyDown(e);\n // handle ctrl+home and ctrl+end\n if (!innerRef.current || !e.ctrlKey || e.defaultPrevented) {\n return;\n }\n if (e.key === Home) {\n const firstRow = innerRef.current.querySelector('[role=\"row\"]');\n if (firstRow) {\n var _findFirstFocusable;\n (_findFirstFocusable = findFirstFocusable(firstRow)) === null || _findFirstFocusable === void 0 ? void 0 : _findFirstFocusable.focus();\n }\n }\n if (e.key === End) {\n const rows = innerRef.current.querySelectorAll('[role=\"row\"]');\n if (rows.length) {\n var _findLastFocusable;\n const lastRow = rows.item(rows.length - 1);\n (_findLastFocusable = findLastFocusable(lastRow)) === null || _findLastFocusable === void 0 ? void 0 : _findLastFocusable.focus();\n }\n }\n });\n const baseTableState = useTable_unstable({\n role: 'grid',\n as: 'div',\n noNativeElements: true,\n ...focusMode === 'cell' && gridTabsterAttribute,\n ...focusMode === 'composite' && compositeTabsterAttribute,\n ...props,\n onKeyDown,\n ...resizableColumns ? tableState.columnSizing_unstable.getTableProps(props) : {}\n }, useMergedRefs(ref, tableState.tableRef, innerRef));\n return {\n ...baseTableState,\n focusMode,\n tableState,\n selectableRows: !!selectionMode,\n subtleSelection,\n selectionAppearance,\n resizableColumns,\n compositeRowTabsterAttribute\n };\n};\n"],"names":["useDataGrid_unstable","props","ref","items","columns","focusMode","selectionMode","onSortChange","onSelectionChange","defaultSortState","sortState","selectedItems","defaultSelectedItems","subtleSelection","selectionAppearance","getRowId","resizableColumns","columnSizingOptions","onColumnResize","containerWidthOffset","widthOffset","CELL_WIDTH","gridTabsterAttribute","useArrowNavigationGroup","axis","onTableKeyDown","onCompositeKeyDown","tableTabsterAttribute","compositeTabsterAttribute","tableRowTabsterAttribute","compositeRowTabsterAttribute","useTableCompositeNavigation","tableState","useTableFeatures","useTableSort","useTableSelection","useTableColumnSizing_unstable","innerRef","React","useRef","findFirstFocusable","findLastFocusable","useFocusFinders","onKeyDown","useEventCallback","e","_props_onKeyDown","_props","call","current","ctrlKey","defaultPrevented","key","Home","firstRow","querySelector","_findFirstFocusable","focus","End","rows","querySelectorAll","length","_findLastFocusable","lastRow","item","baseTableState","useTable_unstable","role","as","noNativeElements","columnSizing_unstable","getTableProps","useMergedRefs","tableRef","selectableRows"],"mappings":"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"}
@@ -4,12 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  });
5
5
  Object.defineProperty(exports, "useDataGridContextValues_unstable", {
6
6
  enumerable: true,
7
- get: ()=>useDataGridContextValues_unstable
7
+ get: function() {
8
+ return useDataGridContextValues_unstable;
9
+ }
8
10
  });
9
11
  const _useTableContextValues = require("../Table/useTableContextValues");
10
12
  function useDataGridContextValues_unstable(state) {
11
13
  const tableContextValues = (0, _useTableContextValues.useTableContextValues_unstable)(state);
12
- const { tableState , focusMode , selectableRows , subtleSelection , selectionAppearance , resizableColumns , compositeRowTabsterAttribute } = state;
14
+ const { tableState, focusMode, selectableRows, subtleSelection, selectionAppearance, resizableColumns, compositeRowTabsterAttribute } = state;
13
15
  return {
14
16
  ...tableContextValues,
15
17
  dataGrid: {
@@ -1 +1 @@
1
- {"version":3,"sources":["useDataGridContextValues.js"],"sourcesContent":["import { useTableContextValues_unstable } from '../Table/useTableContextValues';\nexport function useDataGridContextValues_unstable(state) {\n const tableContextValues = useTableContextValues_unstable(state);\n const { tableState , focusMode , selectableRows , subtleSelection , selectionAppearance , resizableColumns , compositeRowTabsterAttribute } = state;\n return {\n ...tableContextValues,\n dataGrid: {\n ...tableState,\n focusMode,\n selectableRows,\n subtleSelection,\n selectionAppearance,\n resizableColumns,\n compositeRowTabsterAttribute\n }\n };\n}\n"],"names":["useDataGridContextValues_unstable","state","tableContextValues","useTableContextValues_unstable","tableState","focusMode","selectableRows","subtleSelection","selectionAppearance","resizableColumns","compositeRowTabsterAttribute","dataGrid"],"mappings":";;;;+BACgBA;;aAAAA;;uCAD+B;AACxC,SAASA,kCAAkCC,KAAK,EAAE;IACrD,MAAMC,qBAAqBC,IAAAA,qDAA8B,EAACF;IAC1D,MAAM,EAAEG,WAAU,EAAGC,UAAS,EAAGC,eAAc,EAAGC,gBAAe,EAAGC,oBAAmB,EAAGC,iBAAgB,EAAGC,6BAA4B,EAAG,GAAGT;IAC/I,OAAO;QACH,GAAGC,kBAAkB;QACrBS,UAAU;YACN,GAAGP,UAAU;YACbC;YACAC;YACAC;YACAC;YACAC;YACAC;QACJ;IACJ;AACJ"}
1
+ {"version":3,"sources":["useDataGridContextValues.js"],"sourcesContent":["import { useTableContextValues_unstable } from '../Table/useTableContextValues';\nexport function useDataGridContextValues_unstable(state) {\n const tableContextValues = useTableContextValues_unstable(state);\n const { tableState, focusMode, selectableRows, subtleSelection, selectionAppearance, resizableColumns, compositeRowTabsterAttribute } = state;\n return {\n ...tableContextValues,\n dataGrid: {\n ...tableState,\n focusMode,\n selectableRows,\n subtleSelection,\n selectionAppearance,\n resizableColumns,\n compositeRowTabsterAttribute\n }\n };\n}\n"],"names":["useDataGridContextValues_unstable","state","tableContextValues","useTableContextValues_unstable","tableState","focusMode","selectableRows","subtleSelection","selectionAppearance","resizableColumns","compositeRowTabsterAttribute","dataGrid"],"mappings":";;;;+BACgBA;;;eAAAA;;;uCAD+B;AACxC,SAASA,kCAAkCC,KAAK;IACnD,MAAMC,qBAAqBC,IAAAA,qDAA8B,EAACF;IAC1D,MAAM,EAAEG,UAAU,EAAEC,SAAS,EAAEC,cAAc,EAAEC,eAAe,EAAEC,mBAAmB,EAAEC,gBAAgB,EAAEC,4BAA4B,EAAE,GAAGT;IACxI,OAAO;QACH,GAAGC,kBAAkB;QACrBS,UAAU;YACN,GAAGP,UAAU;YACbC;YACAC;YACAC;YACAC;YACAC;YACAC;QACJ;IACJ;AACJ"}