@fluentui/react-table 9.0.0-rc.4 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (396) hide show
  1. package/CHANGELOG.json +124 -8
  2. package/CHANGELOG.md +44 -9
  3. package/dist/index.d.ts +114 -3
  4. package/lib/TableResizeHandle.js +2 -0
  5. package/lib/TableResizeHandle.js.map +1 -0
  6. package/lib/components/DataGrid/DataGrid.types.js.map +1 -1
  7. package/lib/components/DataGrid/index.js +1 -0
  8. package/lib/components/DataGrid/index.js.map +1 -1
  9. package/lib/components/DataGrid/useDataGrid.js +16 -4
  10. package/lib/components/DataGrid/useDataGrid.js.map +1 -1
  11. package/lib/components/DataGrid/useDataGridContextValues.js +2 -1
  12. package/lib/components/DataGrid/useDataGridContextValues.js.map +1 -1
  13. package/lib/components/DataGridCell/useDataGridCell.js +5 -0
  14. package/lib/components/DataGridCell/useDataGridCell.js.map +1 -1
  15. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js +3 -0
  16. package/lib/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  17. package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +5 -1
  18. package/lib/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
  19. package/lib/components/TableCellLayout/TableCellLayout.types.js.map +1 -1
  20. package/lib/components/TableCellLayout/useTableCellLayout.js +1 -0
  21. package/lib/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  22. package/lib/components/TableCellLayout/useTableCellLayoutStyles.js +18 -4
  23. package/lib/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
  24. package/lib/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -1
  25. package/lib/components/TableHeaderCell/renderTableHeaderCell.js +3 -1
  26. package/lib/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  27. package/lib/components/TableHeaderCell/useTableHeaderCell.js +3 -1
  28. package/lib/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  29. package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js +10 -4
  30. package/lib/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
  31. package/lib/components/TableResizeHandle/TableResizeHandle.js +14 -0
  32. package/lib/components/TableResizeHandle/TableResizeHandle.js.map +1 -0
  33. package/lib/components/TableResizeHandle/TableResizeHandle.types.js +2 -0
  34. package/lib/components/TableResizeHandle/TableResizeHandle.types.js.map +1 -0
  35. package/lib/components/TableResizeHandle/index.js +6 -0
  36. package/lib/components/TableResizeHandle/index.js.map +1 -0
  37. package/lib/components/TableResizeHandle/renderTableResizeHandle.js +15 -0
  38. package/lib/components/TableResizeHandle/renderTableResizeHandle.js.map +1 -0
  39. package/lib/components/TableResizeHandle/useTableResizeHandle.js +28 -0
  40. package/lib/components/TableResizeHandle/useTableResizeHandle.js.map +1 -0
  41. package/lib/components/TableResizeHandle/useTableResizeHandleStyles.js +49 -0
  42. package/lib/components/TableResizeHandle/useTableResizeHandleStyles.js.map +1 -0
  43. package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js +1 -0
  44. package/lib/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
  45. package/lib/hooks/index.js +1 -0
  46. package/lib/hooks/index.js.map +1 -1
  47. package/lib/hooks/types.js.map +1 -1
  48. package/lib/hooks/useMeasureElement.js +48 -0
  49. package/lib/hooks/useMeasureElement.js.map +1 -0
  50. package/lib/hooks/useTableColumnResizeMouseHandler.js +50 -0
  51. package/lib/hooks/useTableColumnResizeMouseHandler.js.map +1 -0
  52. package/lib/hooks/useTableColumnResizeState.js +112 -0
  53. package/lib/hooks/useTableColumnResizeState.js.map +1 -0
  54. package/lib/hooks/useTableColumnSizing.js +77 -0
  55. package/lib/hooks/useTableColumnSizing.js.map +1 -0
  56. package/lib/hooks/useTableFeatures.js +10 -2
  57. package/lib/hooks/useTableFeatures.js.map +1 -1
  58. package/lib/index.js +3 -2
  59. package/lib/index.js.map +1 -1
  60. package/lib/utils/columnResizeUtils.js +158 -0
  61. package/lib/utils/columnResizeUtils.js.map +1 -0
  62. package/lib-amd/DataGrid.js +6 -0
  63. package/lib-amd/DataGrid.js.map +1 -0
  64. package/lib-amd/DataGridBody.js +6 -0
  65. package/lib-amd/DataGridBody.js.map +1 -0
  66. package/lib-amd/DataGridCell.js +6 -0
  67. package/lib-amd/DataGridCell.js.map +1 -0
  68. package/lib-amd/DataGridHeader.js +6 -0
  69. package/lib-amd/DataGridHeader.js.map +1 -0
  70. package/lib-amd/DataGridHeaderCell.js +6 -0
  71. package/lib-amd/DataGridHeaderCell.js.map +1 -0
  72. package/lib-amd/DataGridRow.js +6 -0
  73. package/lib-amd/DataGridRow.js.map +1 -0
  74. package/lib-amd/DataGridSelectionCell.js +6 -0
  75. package/lib-amd/DataGridSelectionCell.js.map +1 -0
  76. package/lib-amd/Table.js +6 -0
  77. package/lib-amd/Table.js.map +1 -0
  78. package/lib-amd/TableBody.js +6 -0
  79. package/lib-amd/TableBody.js.map +1 -0
  80. package/lib-amd/TableCell.js +6 -0
  81. package/lib-amd/TableCell.js.map +1 -0
  82. package/lib-amd/TableCellActions.js +6 -0
  83. package/lib-amd/TableCellActions.js.map +1 -0
  84. package/lib-amd/TableCellLayout.js +6 -0
  85. package/lib-amd/TableCellLayout.js.map +1 -0
  86. package/lib-amd/TableHeader.js +6 -0
  87. package/lib-amd/TableHeader.js.map +1 -0
  88. package/lib-amd/TableHeaderCell.js +6 -0
  89. package/lib-amd/TableHeaderCell.js.map +1 -0
  90. package/lib-amd/TableResizeHandle.js +6 -0
  91. package/lib-amd/TableResizeHandle.js.map +1 -0
  92. package/lib-amd/TableRow.js +6 -0
  93. package/lib-amd/TableRow.js.map +1 -0
  94. package/lib-amd/TableSelectionCell.js +6 -0
  95. package/lib-amd/TableSelectionCell.js.map +1 -0
  96. package/lib-amd/components/DataGrid/DataGrid.js +15 -0
  97. package/lib-amd/components/DataGrid/DataGrid.js.map +1 -0
  98. package/lib-amd/components/DataGrid/DataGrid.types.js +5 -0
  99. package/lib-amd/components/DataGrid/DataGrid.types.js.map +1 -0
  100. package/lib-amd/components/DataGrid/index.js +11 -0
  101. package/lib-amd/components/DataGrid/index.js.map +1 -0
  102. package/lib-amd/components/DataGrid/renderDataGrid.js +13 -0
  103. package/lib-amd/components/DataGrid/renderDataGrid.js.map +1 -0
  104. package/lib-amd/components/DataGrid/useDataGrid.js +43 -0
  105. package/lib-amd/components/DataGrid/useDataGrid.js.map +1 -0
  106. package/lib-amd/components/DataGrid/useDataGridContextValues.js +11 -0
  107. package/lib-amd/components/DataGrid/useDataGridContextValues.js.map +1 -0
  108. package/lib-amd/components/DataGrid/useDataGridStyles.js +18 -0
  109. package/lib-amd/components/DataGrid/useDataGridStyles.js.map +1 -0
  110. package/lib-amd/components/DataGridBody/DataGridBody.js +15 -0
  111. package/lib-amd/components/DataGridBody/DataGridBody.js.map +1 -0
  112. package/lib-amd/components/DataGridBody/DataGridBody.types.js +5 -0
  113. package/lib-amd/components/DataGridBody/DataGridBody.types.js.map +1 -0
  114. package/lib-amd/components/DataGridBody/index.js +10 -0
  115. package/lib-amd/components/DataGridBody/index.js.map +1 -0
  116. package/lib-amd/components/DataGridBody/renderDataGridBody.js +14 -0
  117. package/lib-amd/components/DataGridBody/renderDataGridBody.js.map +1 -0
  118. package/lib-amd/components/DataGridBody/useDataGridBody.js +24 -0
  119. package/lib-amd/components/DataGridBody/useDataGridBody.js.map +1 -0
  120. package/lib-amd/components/DataGridBody/useDataGridBodyStyles.js +18 -0
  121. package/lib-amd/components/DataGridBody/useDataGridBodyStyles.js.map +1 -0
  122. package/lib-amd/components/DataGridCell/DataGridCell.js +15 -0
  123. package/lib-amd/components/DataGridCell/DataGridCell.js.map +1 -0
  124. package/lib-amd/components/DataGridCell/DataGridCell.types.js +5 -0
  125. package/lib-amd/components/DataGridCell/DataGridCell.types.js.map +1 -0
  126. package/lib-amd/components/DataGridCell/index.js +10 -0
  127. package/lib-amd/components/DataGridCell/index.js.map +1 -0
  128. package/lib-amd/components/DataGridCell/renderDataGridCell.js +13 -0
  129. package/lib-amd/components/DataGridCell/renderDataGridCell.js.map +1 -0
  130. package/lib-amd/components/DataGridCell/useDataGridCell.js +23 -0
  131. package/lib-amd/components/DataGridCell/useDataGridCell.js.map +1 -0
  132. package/lib-amd/components/DataGridCell/useDataGridCellStyles.js +18 -0
  133. package/lib-amd/components/DataGridCell/useDataGridCellStyles.js.map +1 -0
  134. package/lib-amd/components/DataGridHeader/DataGridHeader.js +15 -0
  135. package/lib-amd/components/DataGridHeader/DataGridHeader.js.map +1 -0
  136. package/lib-amd/components/DataGridHeader/DataGridHeader.types.js +5 -0
  137. package/lib-amd/components/DataGridHeader/DataGridHeader.types.js.map +1 -0
  138. package/lib-amd/components/DataGridHeader/index.js +10 -0
  139. package/lib-amd/components/DataGridHeader/index.js.map +1 -0
  140. package/lib-amd/components/DataGridHeader/renderDataGridHeader.js +13 -0
  141. package/lib-amd/components/DataGridHeader/renderDataGridHeader.js.map +1 -0
  142. package/lib-amd/components/DataGridHeader/useDataGridHeader.js +19 -0
  143. package/lib-amd/components/DataGridHeader/useDataGridHeader.js.map +1 -0
  144. package/lib-amd/components/DataGridHeader/useDataGridHeaderStyles.js +18 -0
  145. package/lib-amd/components/DataGridHeader/useDataGridHeaderStyles.js.map +1 -0
  146. package/lib-amd/components/DataGridHeaderCell/DataGridHeaderCell.js +15 -0
  147. package/lib-amd/components/DataGridHeaderCell/DataGridHeaderCell.js.map +1 -0
  148. package/lib-amd/components/DataGridHeaderCell/DataGridHeaderCell.types.js +5 -0
  149. package/lib-amd/components/DataGridHeaderCell/DataGridHeaderCell.types.js.map +1 -0
  150. package/lib-amd/components/DataGridHeaderCell/index.js +10 -0
  151. package/lib-amd/components/DataGridHeaderCell/index.js.map +1 -0
  152. package/lib-amd/components/DataGridHeaderCell/renderDataGridHeaderCell.js +13 -0
  153. package/lib-amd/components/DataGridHeaderCell/renderDataGridHeaderCell.js.map +1 -0
  154. package/lib-amd/components/DataGridHeaderCell/useDataGridHeaderCell.js +34 -0
  155. package/lib-amd/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -0
  156. package/lib-amd/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +30 -0
  157. package/lib-amd/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -0
  158. package/lib-amd/components/DataGridRow/DataGridRow.js +15 -0
  159. package/lib-amd/components/DataGridRow/DataGridRow.js.map +1 -0
  160. package/lib-amd/components/DataGridRow/DataGridRow.types.js +5 -0
  161. package/lib-amd/components/DataGridRow/DataGridRow.types.js.map +1 -0
  162. package/lib-amd/components/DataGridRow/index.js +10 -0
  163. package/lib-amd/components/DataGridRow/index.js.map +1 -0
  164. package/lib-amd/components/DataGridRow/renderDataGridRow.js +16 -0
  165. package/lib-amd/components/DataGridRow/renderDataGridRow.js.map +1 -0
  166. package/lib-amd/components/DataGridRow/useDataGridRow.js +49 -0
  167. package/lib-amd/components/DataGridRow/useDataGridRow.js.map +1 -0
  168. package/lib-amd/components/DataGridRow/useDataGridRowStyles.js +22 -0
  169. package/lib-amd/components/DataGridRow/useDataGridRowStyles.js.map +1 -0
  170. package/lib-amd/components/DataGridSelectionCell/DataGridSelectionCell.js +15 -0
  171. package/lib-amd/components/DataGridSelectionCell/DataGridSelectionCell.js.map +1 -0
  172. package/lib-amd/components/DataGridSelectionCell/DataGridSelectionCell.types.js +5 -0
  173. package/lib-amd/components/DataGridSelectionCell/DataGridSelectionCell.types.js.map +1 -0
  174. package/lib-amd/components/DataGridSelectionCell/index.js +10 -0
  175. package/lib-amd/components/DataGridSelectionCell/index.js.map +1 -0
  176. package/lib-amd/components/DataGridSelectionCell/renderDataGridSelectionCell.js +13 -0
  177. package/lib-amd/components/DataGridSelectionCell/renderDataGridSelectionCell.js.map +1 -0
  178. package/lib-amd/components/DataGridSelectionCell/useDataGridSelectionCell.js +39 -0
  179. package/lib-amd/components/DataGridSelectionCell/useDataGridSelectionCell.js.map +1 -0
  180. package/lib-amd/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js +26 -0
  181. package/lib-amd/components/DataGridSelectionCell/useDataGridSelectionCellStyles.js.map +1 -0
  182. package/lib-amd/components/Table/Table.js +15 -0
  183. package/lib-amd/components/Table/Table.js.map +1 -0
  184. package/lib-amd/components/Table/Table.types.js +5 -0
  185. package/lib-amd/components/Table/Table.types.js.map +1 -0
  186. package/lib-amd/components/Table/index.js +10 -0
  187. package/lib-amd/components/Table/index.js.map +1 -0
  188. package/lib-amd/components/Table/renderTable.js +15 -0
  189. package/lib-amd/components/Table/renderTable.js.map +1 -0
  190. package/lib-amd/components/Table/useTable.js +29 -0
  191. package/lib-amd/components/Table/useTable.js.map +1 -0
  192. package/lib-amd/components/Table/useTableContextValues.js +18 -0
  193. package/lib-amd/components/Table/useTableContextValues.js.map +1 -0
  194. package/lib-amd/components/Table/useTableStyles.js +45 -0
  195. package/lib-amd/components/Table/useTableStyles.js.map +1 -0
  196. package/lib-amd/components/TableBody/TableBody.js +15 -0
  197. package/lib-amd/components/TableBody/TableBody.js.map +1 -0
  198. package/lib-amd/components/TableBody/TableBody.types.js +5 -0
  199. package/lib-amd/components/TableBody/TableBody.types.js.map +1 -0
  200. package/lib-amd/components/TableBody/index.js +10 -0
  201. package/lib-amd/components/TableBody/index.js.map +1 -0
  202. package/lib-amd/components/TableBody/renderTableBody.js +14 -0
  203. package/lib-amd/components/TableBody/renderTableBody.js.map +1 -0
  204. package/lib-amd/components/TableBody/useTableBody.js +28 -0
  205. package/lib-amd/components/TableBody/useTableBody.js.map +1 -0
  206. package/lib-amd/components/TableBody/useTableBodyStyles.js +32 -0
  207. package/lib-amd/components/TableBody/useTableBodyStyles.js.map +1 -0
  208. package/lib-amd/components/TableCell/TableCell.js +15 -0
  209. package/lib-amd/components/TableCell/TableCell.js.map +1 -0
  210. package/lib-amd/components/TableCell/TableCell.types.js +5 -0
  211. package/lib-amd/components/TableCell/TableCell.types.js.map +1 -0
  212. package/lib-amd/components/TableCell/index.js +10 -0
  213. package/lib-amd/components/TableCell/index.js.map +1 -0
  214. package/lib-amd/components/TableCell/renderTableCell.js +14 -0
  215. package/lib-amd/components/TableCell/renderTableCell.js.map +1 -0
  216. package/lib-amd/components/TableCell/useTableCell.js +29 -0
  217. package/lib-amd/components/TableCell/useTableCell.js.map +1 -0
  218. package/lib-amd/components/TableCell/useTableCellStyles.js +56 -0
  219. package/lib-amd/components/TableCell/useTableCellStyles.js.map +1 -0
  220. package/lib-amd/components/TableCellActions/TableCellActions.js +15 -0
  221. package/lib-amd/components/TableCellActions/TableCellActions.js.map +1 -0
  222. package/lib-amd/components/TableCellActions/TableCellActions.types.js +5 -0
  223. package/lib-amd/components/TableCellActions/TableCellActions.types.js.map +1 -0
  224. package/lib-amd/components/TableCellActions/index.js +10 -0
  225. package/lib-amd/components/TableCellActions/index.js.map +1 -0
  226. package/lib-amd/components/TableCellActions/renderTableCellActions.js +14 -0
  227. package/lib-amd/components/TableCellActions/renderTableCellActions.js.map +1 -0
  228. package/lib-amd/components/TableCellActions/useTableCellActions.js +26 -0
  229. package/lib-amd/components/TableCellActions/useTableCellActions.js.map +1 -0
  230. package/lib-amd/components/TableCellActions/useTableCellActionsStyles.js +35 -0
  231. package/lib-amd/components/TableCellActions/useTableCellActionsStyles.js.map +1 -0
  232. package/lib-amd/components/TableCellLayout/TableCellLayout.js +15 -0
  233. package/lib-amd/components/TableCellLayout/TableCellLayout.js.map +1 -0
  234. package/lib-amd/components/TableCellLayout/TableCellLayout.types.js +5 -0
  235. package/lib-amd/components/TableCellLayout/TableCellLayout.types.js.map +1 -0
  236. package/lib-amd/components/TableCellLayout/index.js +10 -0
  237. package/lib-amd/components/TableCellLayout/index.js.map +1 -0
  238. package/lib-amd/components/TableCellLayout/renderTableCellLayout.js +19 -0
  239. package/lib-amd/components/TableCellLayout/renderTableCellLayout.js.map +1 -0
  240. package/lib-amd/components/TableCellLayout/useTableCellLayout.js +42 -0
  241. package/lib-amd/components/TableCellLayout/useTableCellLayout.js.map +1 -0
  242. package/lib-amd/components/TableCellLayout/useTableCellLayoutContextValues.js +16 -0
  243. package/lib-amd/components/TableCellLayout/useTableCellLayoutContextValues.js.map +1 -0
  244. package/lib-amd/components/TableCellLayout/useTableCellLayoutStyles.js +79 -0
  245. package/lib-amd/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -0
  246. package/lib-amd/components/TableHeader/TableHeader.js +15 -0
  247. package/lib-amd/components/TableHeader/TableHeader.js.map +1 -0
  248. package/lib-amd/components/TableHeader/TableHeader.types.js +5 -0
  249. package/lib-amd/components/TableHeader/TableHeader.types.js.map +1 -0
  250. package/lib-amd/components/TableHeader/index.js +10 -0
  251. package/lib-amd/components/TableHeader/index.js.map +1 -0
  252. package/lib-amd/components/TableHeader/renderTableHeader.js +15 -0
  253. package/lib-amd/components/TableHeader/renderTableHeader.js.map +1 -0
  254. package/lib-amd/components/TableHeader/useTableHeader.js +28 -0
  255. package/lib-amd/components/TableHeader/useTableHeader.js.map +1 -0
  256. package/lib-amd/components/TableHeader/useTableHeaderStyles.js +32 -0
  257. package/lib-amd/components/TableHeader/useTableHeaderStyles.js.map +1 -0
  258. package/lib-amd/components/TableHeaderCell/TableHeaderCell.js +15 -0
  259. package/lib-amd/components/TableHeaderCell/TableHeaderCell.js.map +1 -0
  260. package/lib-amd/components/TableHeaderCell/TableHeaderCell.types.js +5 -0
  261. package/lib-amd/components/TableHeaderCell/TableHeaderCell.types.js.map +1 -0
  262. package/lib-amd/components/TableHeaderCell/index.js +10 -0
  263. package/lib-amd/components/TableHeaderCell/index.js.map +1 -0
  264. package/lib-amd/components/TableHeaderCell/renderTableHeaderCell.js +18 -0
  265. package/lib-amd/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -0
  266. package/lib-amd/components/TableHeaderCell/useTableHeaderCell.js +48 -0
  267. package/lib-amd/components/TableHeaderCell/useTableHeaderCell.js.map +1 -0
  268. package/lib-amd/components/TableHeaderCell/useTableHeaderCellStyles.js +67 -0
  269. package/lib-amd/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -0
  270. package/lib-amd/components/TableResizeHandle/TableResizeHandle.js +15 -0
  271. package/lib-amd/components/TableResizeHandle/TableResizeHandle.js.map +1 -0
  272. package/lib-amd/components/TableResizeHandle/TableResizeHandle.types.js +5 -0
  273. package/lib-amd/components/TableResizeHandle/TableResizeHandle.types.js.map +1 -0
  274. package/lib-amd/components/TableResizeHandle/index.js +10 -0
  275. package/lib-amd/components/TableResizeHandle/index.js.map +1 -0
  276. package/lib-amd/components/TableResizeHandle/renderTableResizeHandle.js +14 -0
  277. package/lib-amd/components/TableResizeHandle/renderTableResizeHandle.js.map +1 -0
  278. package/lib-amd/components/TableResizeHandle/useTableResizeHandle.js +29 -0
  279. package/lib-amd/components/TableResizeHandle/useTableResizeHandle.js.map +1 -0
  280. package/lib-amd/components/TableResizeHandle/useTableResizeHandleStyles.js +37 -0
  281. package/lib-amd/components/TableResizeHandle/useTableResizeHandleStyles.js.map +1 -0
  282. package/lib-amd/components/TableRow/TableRow.js +15 -0
  283. package/lib-amd/components/TableRow/TableRow.js.map +1 -0
  284. package/lib-amd/components/TableRow/TableRow.types.js +5 -0
  285. package/lib-amd/components/TableRow/TableRow.types.js.map +1 -0
  286. package/lib-amd/components/TableRow/index.js +10 -0
  287. package/lib-amd/components/TableRow/index.js.map +1 -0
  288. package/lib-amd/components/TableRow/renderTableRow.js +14 -0
  289. package/lib-amd/components/TableRow/renderTableRow.js.map +1 -0
  290. package/lib-amd/components/TableRow/useTableRow.js +34 -0
  291. package/lib-amd/components/TableRow/useTableRow.js.map +1 -0
  292. package/lib-amd/components/TableRow/useTableRowStyles.js +98 -0
  293. package/lib-amd/components/TableRow/useTableRowStyles.js.map +1 -0
  294. package/lib-amd/components/TableSelectionCell/TableSelectionCell.js +15 -0
  295. package/lib-amd/components/TableSelectionCell/TableSelectionCell.js.map +1 -0
  296. package/lib-amd/components/TableSelectionCell/TableSelectionCell.types.js +5 -0
  297. package/lib-amd/components/TableSelectionCell/TableSelectionCell.types.js.map +1 -0
  298. package/lib-amd/components/TableSelectionCell/index.js +10 -0
  299. package/lib-amd/components/TableSelectionCell/index.js.map +1 -0
  300. package/lib-amd/components/TableSelectionCell/renderTableSelectionCell.js +16 -0
  301. package/lib-amd/components/TableSelectionCell/renderTableSelectionCell.js.map +1 -0
  302. package/lib-amd/components/TableSelectionCell/useTableSelectionCell.js +28 -0
  303. package/lib-amd/components/TableSelectionCell/useTableSelectionCell.js.map +1 -0
  304. package/lib-amd/components/TableSelectionCell/useTableSelectionCellStyles.js +58 -0
  305. package/lib-amd/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -0
  306. package/lib-amd/contexts/columnIdContext.js +11 -0
  307. package/lib-amd/contexts/columnIdContext.js.map +1 -0
  308. package/lib-amd/contexts/dataGridContext.js +16 -0
  309. package/lib-amd/contexts/dataGridContext.js.map +1 -0
  310. package/lib-amd/contexts/rowIdContext.js +11 -0
  311. package/lib-amd/contexts/rowIdContext.js.map +1 -0
  312. package/lib-amd/contexts/tableContext.js +15 -0
  313. package/lib-amd/contexts/tableContext.js.map +1 -0
  314. package/lib-amd/contexts/tableHeaderContext.js +11 -0
  315. package/lib-amd/contexts/tableHeaderContext.js.map +1 -0
  316. package/lib-amd/hooks/createColumn.js +36 -0
  317. package/lib-amd/hooks/createColumn.js.map +1 -0
  318. package/lib-amd/hooks/index.js +11 -0
  319. package/lib-amd/hooks/index.js.map +1 -0
  320. package/lib-amd/hooks/selectionManager.js +82 -0
  321. package/lib-amd/hooks/selectionManager.js.map +1 -0
  322. package/lib-amd/hooks/types.js +5 -0
  323. package/lib-amd/hooks/types.js.map +1 -0
  324. package/lib-amd/hooks/useMeasureElement.js +46 -0
  325. package/lib-amd/hooks/useMeasureElement.js.map +1 -0
  326. package/lib-amd/hooks/useTableColumnResizeMouseHandler.js +50 -0
  327. package/lib-amd/hooks/useTableColumnResizeMouseHandler.js.map +1 -0
  328. package/lib-amd/hooks/useTableColumnResizeState.js +73 -0
  329. package/lib-amd/hooks/useTableColumnResizeState.js.map +1 -0
  330. package/lib-amd/hooks/useTableColumnSizing.js +56 -0
  331. package/lib-amd/hooks/useTableColumnSizing.js.map +1 -0
  332. package/lib-amd/hooks/useTableFeatures.js +39 -0
  333. package/lib-amd/hooks/useTableFeatures.js.map +1 -0
  334. package/lib-amd/hooks/useTableSelection.js +70 -0
  335. package/lib-amd/hooks/useTableSelection.js.map +1 -0
  336. package/lib-amd/hooks/useTableSort.js +74 -0
  337. package/lib-amd/hooks/useTableSort.js.map +1 -0
  338. package/lib-amd/index.js +107 -0
  339. package/lib-amd/index.js.map +1 -0
  340. package/lib-amd/utils/columnResizeUtils.js +158 -0
  341. package/lib-amd/utils/columnResizeUtils.js.map +1 -0
  342. package/lib-commonjs/TableResizeHandle.js +8 -0
  343. package/lib-commonjs/TableResizeHandle.js.map +1 -0
  344. package/lib-commonjs/components/DataGrid/index.js +1 -0
  345. package/lib-commonjs/components/DataGrid/index.js.map +1 -1
  346. package/lib-commonjs/components/DataGrid/useDataGrid.js +15 -3
  347. package/lib-commonjs/components/DataGrid/useDataGrid.js.map +1 -1
  348. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js +2 -1
  349. package/lib-commonjs/components/DataGrid/useDataGridContextValues.js.map +1 -1
  350. package/lib-commonjs/components/DataGridCell/useDataGridCell.js +5 -0
  351. package/lib-commonjs/components/DataGridCell/useDataGridCell.js.map +1 -1
  352. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js +3 -0
  353. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCell.js.map +1 -1
  354. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js +5 -1
  355. package/lib-commonjs/components/DataGridHeaderCell/useDataGridHeaderCellStyles.js.map +1 -1
  356. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js +1 -0
  357. package/lib-commonjs/components/TableCellLayout/useTableCellLayout.js.map +1 -1
  358. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js +18 -4
  359. package/lib-commonjs/components/TableCellLayout/useTableCellLayoutStyles.js.map +1 -1
  360. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js +3 -1
  361. package/lib-commonjs/components/TableHeaderCell/renderTableHeaderCell.js.map +1 -1
  362. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js +3 -1
  363. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCell.js.map +1 -1
  364. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js +10 -4
  365. package/lib-commonjs/components/TableHeaderCell/useTableHeaderCellStyles.js.map +1 -1
  366. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.js +20 -0
  367. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.js.map +1 -0
  368. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.types.js +6 -0
  369. package/lib-commonjs/components/TableResizeHandle/TableResizeHandle.types.js.map +1 -0
  370. package/lib-commonjs/components/TableResizeHandle/index.js +12 -0
  371. package/lib-commonjs/components/TableResizeHandle/index.js.map +1 -0
  372. package/lib-commonjs/components/TableResizeHandle/renderTableResizeHandle.js +22 -0
  373. package/lib-commonjs/components/TableResizeHandle/renderTableResizeHandle.js.map +1 -0
  374. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandle.js +35 -0
  375. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandle.js.map +1 -0
  376. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandleStyles.js +56 -0
  377. package/lib-commonjs/components/TableResizeHandle/useTableResizeHandleStyles.js.map +1 -0
  378. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js +2 -1
  379. package/lib-commonjs/components/TableSelectionCell/useTableSelectionCellStyles.js.map +1 -1
  380. package/lib-commonjs/hooks/index.js +1 -0
  381. package/lib-commonjs/hooks/index.js.map +1 -1
  382. package/lib-commonjs/hooks/useMeasureElement.js +55 -0
  383. package/lib-commonjs/hooks/useMeasureElement.js.map +1 -0
  384. package/lib-commonjs/hooks/useTableColumnResizeMouseHandler.js +57 -0
  385. package/lib-commonjs/hooks/useTableColumnResizeMouseHandler.js.map +1 -0
  386. package/lib-commonjs/hooks/useTableColumnResizeState.js +119 -0
  387. package/lib-commonjs/hooks/useTableColumnResizeState.js.map +1 -0
  388. package/lib-commonjs/hooks/useTableColumnSizing.js +84 -0
  389. package/lib-commonjs/hooks/useTableColumnSizing.js.map +1 -0
  390. package/lib-commonjs/hooks/useTableFeatures.js +10 -2
  391. package/lib-commonjs/hooks/useTableFeatures.js.map +1 -1
  392. package/lib-commonjs/index.js +46 -2
  393. package/lib-commonjs/index.js.map +1 -1
  394. package/lib-commonjs/utils/columnResizeUtils.js +172 -0
  395. package/lib-commonjs/utils/columnResizeUtils.js.map +1 -0
  396. package/package.json +10 -11
@@ -0,0 +1,34 @@
1
+ define(["require", "exports", "tslib", "@fluentui/react-utilities", "@fluentui/react-tabster", "../../contexts/tableContext", "../../contexts/tableHeaderContext"], function (require, exports, tslib_1, react_utilities_1, react_tabster_1, tableContext_1, tableHeaderContext_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useTableRow_unstable = void 0;
5
+ /**
6
+ * Create the state required to render TableRow.
7
+ *
8
+ * The returned state can be modified with hooks such as useTableRowStyles_unstable,
9
+ * before being passed to renderTableRow_unstable.
10
+ *
11
+ * @param props - props from this instance of TableRow
12
+ * @param ref - reference to root HTMLElement of TableRow
13
+ */
14
+ var useTableRow_unstable = function (props, ref) {
15
+ var _a, _b;
16
+ var _c = tableContext_1.useTableContext(), noNativeElements = _c.noNativeElements, size = _c.size;
17
+ var rootComponent = ((_a = props.as) !== null && _a !== void 0 ? _a : noNativeElements) ? 'div' : 'tr';
18
+ var focusVisibleRef = react_tabster_1.useFocusVisible();
19
+ var focusWithinRef = react_tabster_1.useFocusWithin();
20
+ var isHeaderRow = tableHeaderContext_1.useIsInTableHeader();
21
+ return {
22
+ components: {
23
+ root: rootComponent,
24
+ },
25
+ root: react_utilities_1.getNativeElementProps(rootComponent, tslib_1.__assign({ ref: react_utilities_1.useMergedRefs(ref, focusVisibleRef, focusWithinRef), role: rootComponent === 'div' ? 'row' : undefined }, props)),
26
+ size: size,
27
+ noNativeElements: noNativeElements,
28
+ appearance: (_b = props.appearance) !== null && _b !== void 0 ? _b : 'none',
29
+ isHeaderRow: isHeaderRow,
30
+ };
31
+ };
32
+ exports.useTableRow_unstable = useTableRow_unstable;
33
+ });
34
+ //# sourceMappingURL=useTableRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableRow.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableRow/useTableRow.ts"],"names":[],"mappings":";;;;IAOA;;;;;;;;OAQG;IACI,IAAM,oBAAoB,GAAG,UAAC,KAAoB,EAAE,GAA2B;;QAC9E,IAAA,KAA6B,8BAAe,EAAE,EAA5C,gBAAgB,sBAAA,EAAE,IAAI,UAAsB,CAAC;QACrD,IAAM,aAAa,GAAG,CAAA,MAAA,KAAK,CAAC,EAAE,mCAAI,gBAAgB,EAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,IAAM,eAAe,GAAG,+BAAe,EAAE,CAAC;QAC1C,IAAM,cAAc,GAAG,8BAAc,EAAE,CAAC;QACxC,IAAM,WAAW,GAAG,uCAAkB,EAAE,CAAC;QAEzC,OAAO;YACL,UAAU,EAAE;gBACV,IAAI,EAAE,aAAa;aACpB;YACD,IAAI,EAAE,uCAAqB,CAAC,aAAa,qBACvC,GAAG,EAAE,+BAAa,CAAC,GAAG,EAAE,eAAe,EAAE,cAAc,CAAC,EACxD,IAAI,EAAE,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,IAC9C,KAAK,EACR;YACF,IAAI,MAAA;YACJ,gBAAgB,kBAAA;YAChB,UAAU,EAAE,MAAA,KAAK,CAAC,UAAU,mCAAI,MAAM;YACtC,WAAW,aAAA;SACZ,CAAC;IACJ,CAAC,CAAC;IArBW,QAAA,oBAAoB,wBAqB/B","sourcesContent":["import * as React from 'react';\nimport { getNativeElementProps, useMergedRefs } from '@fluentui/react-utilities';\nimport { useFocusVisible, useFocusWithin } from '@fluentui/react-tabster';\nimport type { TableRowProps, TableRowState } from './TableRow.types';\nimport { useTableContext } from '../../contexts/tableContext';\nimport { useIsInTableHeader } from '../../contexts/tableHeaderContext';\n\n/**\n * Create the state required to render TableRow.\n *\n * The returned state can be modified with hooks such as useTableRowStyles_unstable,\n * before being passed to renderTableRow_unstable.\n *\n * @param props - props from this instance of TableRow\n * @param ref - reference to root HTMLElement of TableRow\n */\nexport const useTableRow_unstable = (props: TableRowProps, ref: React.Ref<HTMLElement>): TableRowState => {\n const { noNativeElements, size } = useTableContext();\n const rootComponent = props.as ?? noNativeElements ? 'div' : 'tr';\n const focusVisibleRef = useFocusVisible();\n const focusWithinRef = useFocusWithin();\n const isHeaderRow = useIsInTableHeader();\n\n return {\n components: {\n root: rootComponent,\n },\n root: getNativeElementProps(rootComponent, {\n ref: useMergedRefs(ref, focusVisibleRef, focusWithinRef),\n role: rootComponent === 'div' ? 'row' : undefined,\n ...props,\n }),\n size,\n noNativeElements,\n appearance: props.appearance ?? 'none',\n isHeaderRow,\n };\n};\n"]}
@@ -0,0 +1,98 @@
1
+ define(["require", "exports", "tslib", "@griffel/react", "@fluentui/react-theme", "../TableCellActions/useTableCellActionsStyles", "../TableSelectionCell/useTableSelectionCellStyles", "@fluentui/react-tabster"], function (require, exports, tslib_1, react_1, react_theme_1, useTableCellActionsStyles_1, useTableSelectionCellStyles_1, react_tabster_1) {
2
+ "use strict";
3
+ var _a, _b, _c;
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.useTableRowStyles_unstable = exports.tableRowClassNames = exports.tableRowClassName = void 0;
6
+ exports.tableRowClassName = 'fui-TableRow';
7
+ exports.tableRowClassNames = {
8
+ root: exports.tableRowClassName,
9
+ };
10
+ var useTableLayoutStyles = react_1.makeStyles({
11
+ root: {
12
+ display: 'table-row',
13
+ },
14
+ });
15
+ var useFlexLayoutStyles = react_1.makeStyles({
16
+ root: {
17
+ display: 'flex',
18
+ alignItems: 'center',
19
+ },
20
+ });
21
+ /**
22
+ * Styles for the root slot
23
+ */
24
+ var useStyles = react_1.makeStyles({
25
+ root: tslib_1.__assign(tslib_1.__assign({ color: react_theme_1.tokens.colorNeutralForeground1, boxSizing: 'border-box' }, react_tabster_1.createCustomFocusIndicatorStyle((_a = {},
26
+ _a["& ." + useTableSelectionCellStyles_1.tableSelectionCellClassNames.root] = {
27
+ opacity: 1,
28
+ },
29
+ _a["& ." + useTableCellActionsStyles_1.tableCellActionsClassNames.root] = {
30
+ opacity: 1,
31
+ },
32
+ _a), { selector: 'focus-within', enableOutline: true })), react_tabster_1.createCustomFocusIndicatorStyle(tslib_1.__assign(tslib_1.__assign({}, react_1.shorthands.outline('2px', 'solid', react_theme_1.tokens.colorStrokeFocus2)), react_1.shorthands.borderRadius(react_theme_1.tokens.borderRadiusMedium)), { selector: 'focus', enableOutline: true })),
33
+ // When focus is within the row the background colour
34
+ // should be the same as hover, except when there is a brand
35
+ // or neutral appearance applied on the row
36
+ noAppearanceFocusWithin: tslib_1.__assign({}, react_tabster_1.createCustomFocusIndicatorStyle({
37
+ backgroundColor: react_theme_1.tokens.colorSubtleBackgroundHover,
38
+ }, { selector: 'focus-within', enableOutline: true })),
39
+ rootInteractive: {
40
+ ':active': (_b = {
41
+ backgroundColor: react_theme_1.tokens.colorSubtleBackgroundPressed,
42
+ color: react_theme_1.tokens.colorNeutralForeground1Pressed
43
+ },
44
+ _b["& ." + useTableCellActionsStyles_1.tableCellActionsClassNames.root] = {
45
+ opacity: 1,
46
+ },
47
+ _b["& ." + useTableSelectionCellStyles_1.tableSelectionCellClassNames.root] = {
48
+ opacity: 1,
49
+ },
50
+ _b),
51
+ ':hover': (_c = {
52
+ backgroundColor: react_theme_1.tokens.colorSubtleBackgroundHover,
53
+ color: react_theme_1.tokens.colorNeutralForeground1Hover
54
+ },
55
+ _c["& ." + useTableCellActionsStyles_1.tableCellActionsClassNames.root] = {
56
+ opacity: 1,
57
+ },
58
+ _c["& ." + useTableSelectionCellStyles_1.tableSelectionCellClassNames.root] = {
59
+ opacity: 1,
60
+ },
61
+ _c),
62
+ },
63
+ medium: tslib_1.__assign({}, react_1.shorthands.borderBottom(react_theme_1.tokens.strokeWidthThin, 'solid', react_theme_1.tokens.colorNeutralStroke2)),
64
+ small: tslib_1.__assign({}, react_1.shorthands.borderBottom(react_theme_1.tokens.strokeWidthThin, 'solid', react_theme_1.tokens.colorNeutralStroke2)),
65
+ 'extra-small': {
66
+ fontSize: react_theme_1.tokens.fontSizeBase200,
67
+ },
68
+ brand: tslib_1.__assign(tslib_1.__assign({ backgroundColor: react_theme_1.tokens.colorBrandBackground2, color: react_theme_1.tokens.colorNeutralForeground1Hover }, react_1.shorthands.borderColor(react_theme_1.tokens.colorNeutralStrokeOnBrand)), { ':hover': {
69
+ backgroundColor: react_theme_1.tokens.colorBrandBackground2,
70
+ }, ':active': {
71
+ backgroundColor: react_theme_1.tokens.colorBrandBackgroundInvertedSelected,
72
+ }, '@media(forced-colors: active)': tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, react_1.shorthands.border('2px', 'solid', 'transparent')), react_1.shorthands.borderRadius(react_theme_1.tokens.borderRadiusMedium)), { boxSizing: 'border-box', ':focus-visible': {
73
+ outlineOffset: '-4px',
74
+ } }) }),
75
+ neutral: tslib_1.__assign({ '@media(forced-colors: active)': tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, react_1.shorthands.border('2px', 'solid', 'transparent')), react_1.shorthands.borderRadius(react_theme_1.tokens.borderRadiusMedium)), { boxSizing: 'border-box', ':focus-visible': {
76
+ outlineOffset: '-4px',
77
+ } }), backgroundColor: react_theme_1.tokens.colorSubtleBackgroundSelected, color: react_theme_1.tokens.colorNeutralForeground1Hover, ':hover': {
78
+ backgroundColor: react_theme_1.tokens.colorSubtleBackgroundSelected,
79
+ }, ':active': {
80
+ backgroundColor: react_theme_1.tokens.colorSubtleBackgroundSelected,
81
+ } }, react_1.shorthands.borderColor(react_theme_1.tokens.colorNeutralStrokeOnBrand)),
82
+ none: {},
83
+ });
84
+ /**
85
+ * Apply styling to the TableRow slots based on the state
86
+ */
87
+ var useTableRowStyles_unstable = function (state) {
88
+ var styles = useStyles();
89
+ var layoutStyles = {
90
+ table: useTableLayoutStyles(),
91
+ flex: useFlexLayoutStyles(),
92
+ };
93
+ state.root.className = react_1.mergeClasses(exports.tableRowClassNames.root, styles.root, !state.isHeaderRow && styles.rootInteractive, styles[state.size], state.noNativeElements ? layoutStyles.flex.root : layoutStyles.table.root, styles[state.appearance], state.appearance === 'none' && !state.isHeaderRow && styles.noAppearanceFocusWithin, state.root.className);
94
+ return state;
95
+ };
96
+ exports.useTableRowStyles_unstable = useTableRowStyles_unstable;
97
+ });
98
+ //# sourceMappingURL=useTableRowStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableRowStyles.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableRow/useTableRowStyles.ts"],"names":[],"mappings":";;;;;IAQa,QAAA,iBAAiB,GAAG,cAAc,CAAC;IACnC,QAAA,kBAAkB,GAAkC;QAC/D,IAAI,EAAE,yBAAiB;KACxB,CAAC;IAEF,IAAM,oBAAoB,GAAG,kBAAU,CAAC;QACtC,IAAI,EAAE;YACJ,OAAO,EAAE,WAAW;SACrB;KACF,CAAC,CAAC;IAEH,IAAM,mBAAmB,GAAG,kBAAU,CAAC;QACrC,IAAI,EAAE;YACJ,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,QAAQ;SACrB;KACF,CAAC,CAAC;IAEH;;OAEG;IACH,IAAM,SAAS,GAAG,kBAAU,CAAC;QAC3B,IAAI,sCACF,KAAK,EAAE,oBAAM,CAAC,uBAAuB,EACrC,SAAS,EAAE,YAAY,IACpB,+CAA+B;YAE9B,GAAC,QAAM,0DAA4B,CAAC,IAAM,IAAG;gBAC3C,OAAO,EAAE,CAAC;aACX;YACD,GAAC,QAAM,sDAA0B,CAAC,IAAM,IAAG;gBACzC,OAAO,EAAE,CAAC;aACX;iBAEH,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,CAClD,GACE,+CAA+B,uCAE3B,kBAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,oBAAM,CAAC,iBAAiB,CAAC,GAC5D,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,kBAAkB,CAAC,GAEvD,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAC3C,CACF;QAED,qDAAqD;QACrD,4DAA4D;QAC5D,2CAA2C;QAC3C,uBAAuB,uBAClB,+CAA+B,CAChC;YACE,eAAe,EAAE,oBAAM,CAAC,0BAA0B;SACnD,EACD,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,EAAE,IAAI,EAAE,CAClD,CACF;QAED,eAAe,EAAE;YACf,SAAS;oBACP,eAAe,EAAE,oBAAM,CAAC,4BAA4B;oBACpD,KAAK,EAAE,oBAAM,CAAC,8BAA8B;;gBAC5C,GAAC,QAAM,sDAA0B,CAAC,IAAM,IAAG;oBACzC,OAAO,EAAE,CAAC;iBACX;gBACD,GAAC,QAAM,0DAA4B,CAAC,IAAM,IAAG;oBAC3C,OAAO,EAAE,CAAC;iBACX;mBACF;YACD,QAAQ;oBACN,eAAe,EAAE,oBAAM,CAAC,0BAA0B;oBAClD,KAAK,EAAE,oBAAM,CAAC,4BAA4B;;gBAC1C,GAAC,QAAM,sDAA0B,CAAC,IAAM,IAAG;oBACzC,OAAO,EAAE,CAAC;iBACX;gBACD,GAAC,QAAM,0DAA4B,CAAC,IAAM,IAAG;oBAC3C,OAAO,EAAE,CAAC;iBACX;mBACF;SACF;QAED,MAAM,uBACD,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,eAAe,EAAE,OAAO,EAAE,oBAAM,CAAC,mBAAmB,CAAC,CACxF;QAED,KAAK,uBACA,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,eAAe,EAAE,OAAO,EAAE,oBAAM,CAAC,mBAAmB,CAAC,CACxF;QAED,aAAa,EAAE;YACb,QAAQ,EAAE,oBAAM,CAAC,eAAe;SACjC;QAED,KAAK,sCACH,eAAe,EAAE,oBAAM,CAAC,qBAAqB,EAC7C,KAAK,EAAE,oBAAM,CAAC,4BAA4B,IACvC,kBAAU,CAAC,WAAW,CAAC,oBAAM,CAAC,yBAAyB,CAAC,KAC3D,QAAQ,EAAE;gBACR,eAAe,EAAE,oBAAM,CAAC,qBAAqB;aAC9C,EACD,SAAS,EAAE;gBACT,eAAe,EAAE,oBAAM,CAAC,oCAAoC;aAC7D,EAED,+BAA+B,yDAC1B,kBAAU,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,GAChD,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,kBAAkB,CAAC,KACrD,SAAS,EAAE,YAAY,EACvB,gBAAgB,EAAE;oBAChB,aAAa,EAAE,MAAM;iBACtB,MAEJ;QAED,OAAO,qBACL,+BAA+B,yDAC1B,kBAAU,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,GAChD,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,kBAAkB,CAAC,KACrD,SAAS,EAAE,YAAY,EACvB,gBAAgB,EAAE;oBAChB,aAAa,EAAE,MAAM;iBACtB,KAEH,eAAe,EAAE,oBAAM,CAAC,6BAA6B,EACrD,KAAK,EAAE,oBAAM,CAAC,4BAA4B,EAC1C,QAAQ,EAAE;gBACR,eAAe,EAAE,oBAAM,CAAC,6BAA6B;aACtD,EACD,SAAS,EAAE;gBACT,eAAe,EAAE,oBAAM,CAAC,6BAA6B;aACtD,IAEE,kBAAU,CAAC,WAAW,CAAC,oBAAM,CAAC,yBAAyB,CAAC,CAC5D;QAED,IAAI,EAAE,EAAE;KACT,CAAC,CAAC;IAEH;;OAEG;IACI,IAAM,0BAA0B,GAAG,UAAC,KAAoB;QAC7D,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAM,YAAY,GAAG;YACnB,KAAK,EAAE,oBAAoB,EAAE;YAC7B,IAAI,EAAE,mBAAmB,EAAE;SAC5B,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,oBAAY,CACjC,0BAAkB,CAAC,IAAI,EACvB,MAAM,CAAC,IAAI,EACX,CAAC,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,eAAe,EAC5C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAClB,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EACzE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EACxB,KAAK,CAAC,UAAU,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,MAAM,CAAC,uBAAuB,EACnF,KAAK,CAAC,IAAI,CAAC,SAAS,CACrB,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAlBW,QAAA,0BAA0B,8BAkBrC","sourcesContent":["import { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { tokens } from '@fluentui/react-theme';\nimport type { TableRowSlots, TableRowState } from './TableRow.types';\nimport type { SlotClassNames } from '@fluentui/react-utilities';\nimport { tableCellActionsClassNames } from '../TableCellActions/useTableCellActionsStyles';\nimport { tableSelectionCellClassNames } from '../TableSelectionCell/useTableSelectionCellStyles';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\n\nexport const tableRowClassName = 'fui-TableRow';\nexport const tableRowClassNames: SlotClassNames<TableRowSlots> = {\n root: tableRowClassName,\n};\n\nconst useTableLayoutStyles = makeStyles({\n root: {\n display: 'table-row',\n },\n});\n\nconst useFlexLayoutStyles = makeStyles({\n root: {\n display: 'flex',\n alignItems: 'center',\n },\n});\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n color: tokens.colorNeutralForeground1,\n boxSizing: 'border-box',\n ...createCustomFocusIndicatorStyle(\n {\n [`& .${tableSelectionCellClassNames.root}`]: {\n opacity: 1,\n },\n [`& .${tableCellActionsClassNames.root}`]: {\n opacity: 1,\n },\n },\n { selector: 'focus-within', enableOutline: true },\n ),\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 // When focus is within the row the background colour\n // should be the same as hover, except when there is a brand\n // or neutral appearance applied on the row\n noAppearanceFocusWithin: {\n ...createCustomFocusIndicatorStyle(\n {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n },\n { selector: 'focus-within', enableOutline: true },\n ),\n },\n\n rootInteractive: {\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n color: tokens.colorNeutralForeground1Pressed,\n [`& .${tableCellActionsClassNames.root}`]: {\n opacity: 1,\n },\n [`& .${tableSelectionCellClassNames.root}`]: {\n opacity: 1,\n },\n },\n ':hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n color: tokens.colorNeutralForeground1Hover,\n [`& .${tableCellActionsClassNames.root}`]: {\n opacity: 1,\n },\n [`& .${tableSelectionCellClassNames.root}`]: {\n opacity: 1,\n },\n },\n },\n\n medium: {\n ...shorthands.borderBottom(tokens.strokeWidthThin, 'solid', tokens.colorNeutralStroke2),\n },\n\n small: {\n ...shorthands.borderBottom(tokens.strokeWidthThin, 'solid', tokens.colorNeutralStroke2),\n },\n\n 'extra-small': {\n fontSize: tokens.fontSizeBase200,\n },\n\n brand: {\n backgroundColor: tokens.colorBrandBackground2,\n color: tokens.colorNeutralForeground1Hover,\n ...shorthands.borderColor(tokens.colorNeutralStrokeOnBrand),\n ':hover': {\n backgroundColor: tokens.colorBrandBackground2,\n },\n ':active': {\n backgroundColor: tokens.colorBrandBackgroundInvertedSelected,\n },\n\n '@media(forced-colors: active)': {\n ...shorthands.border('2px', 'solid', 'transparent'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n boxSizing: 'border-box',\n ':focus-visible': {\n outlineOffset: '-4px',\n },\n },\n },\n\n neutral: {\n '@media(forced-colors: active)': {\n ...shorthands.border('2px', 'solid', 'transparent'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n boxSizing: 'border-box',\n ':focus-visible': {\n outlineOffset: '-4px',\n },\n },\n backgroundColor: tokens.colorSubtleBackgroundSelected,\n color: tokens.colorNeutralForeground1Hover,\n ':hover': {\n backgroundColor: tokens.colorSubtleBackgroundSelected,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundSelected,\n },\n\n ...shorthands.borderColor(tokens.colorNeutralStrokeOnBrand),\n },\n\n none: {},\n});\n\n/**\n * Apply styling to the TableRow slots based on the state\n */\nexport const useTableRowStyles_unstable = (state: TableRowState): TableRowState => {\n const styles = useStyles();\n const layoutStyles = {\n table: useTableLayoutStyles(),\n flex: useFlexLayoutStyles(),\n };\n state.root.className = mergeClasses(\n tableRowClassNames.root,\n styles.root,\n !state.isHeaderRow && styles.rootInteractive,\n styles[state.size],\n state.noNativeElements ? layoutStyles.flex.root : layoutStyles.table.root,\n styles[state.appearance],\n state.appearance === 'none' && !state.isHeaderRow && styles.noAppearanceFocusWithin,\n state.root.className,\n );\n\n return state;\n};\n"]}
@@ -0,0 +1,15 @@
1
+ define(["require", "exports", "react", "./useTableSelectionCell", "./renderTableSelectionCell", "./useTableSelectionCellStyles"], function (require, exports, React, useTableSelectionCell_1, renderTableSelectionCell_1, useTableSelectionCellStyles_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TableSelectionCell = void 0;
5
+ /**
6
+ * TableSelectionCell component
7
+ */
8
+ exports.TableSelectionCell = React.forwardRef(function (props, ref) {
9
+ var state = useTableSelectionCell_1.useTableSelectionCell_unstable(props, ref);
10
+ useTableSelectionCellStyles_1.useTableSelectionCellStyles_unstable(state);
11
+ return renderTableSelectionCell_1.renderTableSelectionCell_unstable(state);
12
+ });
13
+ exports.TableSelectionCell.displayName = 'TableSelectionCell';
14
+ });
15
+ //# sourceMappingURL=TableSelectionCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSelectionCell.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/TableSelectionCell.tsx"],"names":[],"mappings":";;;;IAOA;;OAEG;IACU,QAAA,kBAAkB,GAAiD,KAAK,CAAC,UAAU,CAAC,UAAC,KAAK,EAAE,GAAG;QAC1G,IAAM,KAAK,GAAG,sDAA8B,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAEzD,kEAAoC,CAAC,KAAK,CAAC,CAAC;QAC5C,OAAO,4DAAiC,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,0BAAkB,CAAC,WAAW,GAAG,oBAAoB,CAAC","sourcesContent":["import * as React from 'react';\nimport { useTableSelectionCell_unstable } from './useTableSelectionCell';\nimport { renderTableSelectionCell_unstable } from './renderTableSelectionCell';\nimport { useTableSelectionCellStyles_unstable } from './useTableSelectionCellStyles';\nimport type { TableSelectionCellProps } from './TableSelectionCell.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\n\n/**\n * TableSelectionCell component\n */\nexport const TableSelectionCell: ForwardRefComponent<TableSelectionCellProps> = React.forwardRef((props, ref) => {\n const state = useTableSelectionCell_unstable(props, ref);\n\n useTableSelectionCellStyles_unstable(state);\n return renderTableSelectionCell_unstable(state);\n});\n\nTableSelectionCell.displayName = 'TableSelectionCell';\n"]}
@@ -0,0 +1,5 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ });
5
+ //# sourceMappingURL=TableSelectionCell.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSelectionCell.types.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/TableSelectionCell.types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { Checkbox, CheckboxProps } from '@fluentui/react-checkbox';\nimport type { Radio } from '@fluentui/react-radio';\nimport { TableCellSlots } from '../TableCell/TableCell.types';\nimport { TableContextValue } from '../Table/Table.types';\n\nexport type TableSelectionCellSlots = {\n /**\n * Selection indicator if selection type is checkbox\n */\n checkboxIndicator: Slot<typeof Checkbox>;\n /**\n * Selection indicator if selection type is radio\n */\n radioIndicator: Slot<typeof Radio>;\n} & Pick<TableCellSlots, 'root'>;\n\n/**\n * TableSelectionCell Props\n */\nexport type TableSelectionCellProps = ComponentProps<Partial<TableSelectionCellSlots>> & {\n /**\n * A table can have two kinds of selection modes.\n * @default checkbox\n */\n type?: 'checkbox' | 'radio';\n\n /**\n * @default false\n */\n checked?: CheckboxProps['checked'];\n\n /**\n * Only visible when checked or the parent row is hovered/focused\n * @default false\n */\n subtle?: boolean;\n\n /**\n * Completely hides the selection cell visually but takes up the same space\n * @default false\n */\n hidden?: boolean;\n};\n\n/**\n * State used in rendering TableSelectionCell\n */\nexport type TableSelectionCellState = ComponentState<TableSelectionCellSlots> &\n Pick<Required<TableSelectionCellProps>, 'type' | 'checked' | 'subtle' | 'hidden'> &\n Pick<TableContextValue, 'noNativeElements'>;\n"]}
@@ -0,0 +1,10 @@
1
+ define(["require", "exports", "tslib", "./TableSelectionCell", "./TableSelectionCell.types", "./renderTableSelectionCell", "./useTableSelectionCell", "./useTableSelectionCellStyles"], function (require, exports, tslib_1, TableSelectionCell_1, TableSelectionCell_types_1, renderTableSelectionCell_1, useTableSelectionCell_1, useTableSelectionCellStyles_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ tslib_1.__exportStar(TableSelectionCell_1, exports);
5
+ tslib_1.__exportStar(TableSelectionCell_types_1, exports);
6
+ tslib_1.__exportStar(renderTableSelectionCell_1, exports);
7
+ tslib_1.__exportStar(useTableSelectionCell_1, exports);
8
+ tslib_1.__exportStar(useTableSelectionCellStyles_1, exports);
9
+ });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/index.ts"],"names":[],"mappings":";;;IAAA,oDAAqC;IACrC,0DAA2C;IAC3C,0DAA2C;IAC3C,uDAAwC;IACxC,6DAA8C","sourcesContent":["export * from './TableSelectionCell';\nexport * from './TableSelectionCell.types';\nexport * from './renderTableSelectionCell';\nexport * from './useTableSelectionCell';\nexport * from './useTableSelectionCellStyles';\n"]}
@@ -0,0 +1,16 @@
1
+ define(["require", "exports", "tslib", "react", "@fluentui/react-utilities"], function (require, exports, tslib_1, React, react_utilities_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.renderTableSelectionCell_unstable = void 0;
5
+ /**
6
+ * Render the final JSX of TableSelectionCell
7
+ */
8
+ var renderTableSelectionCell_unstable = function (state) {
9
+ var _a = react_utilities_1.getSlots(state), slots = _a.slots, slotProps = _a.slotProps;
10
+ return (React.createElement(slots.root, tslib_1.__assign({}, slotProps.root),
11
+ state.type === 'checkbox' && slots.checkboxIndicator && (React.createElement(slots.checkboxIndicator, tslib_1.__assign({}, slotProps.checkboxIndicator))),
12
+ state.type === 'radio' && slots.radioIndicator && React.createElement(slots.radioIndicator, tslib_1.__assign({}, slotProps.radioIndicator))));
13
+ };
14
+ exports.renderTableSelectionCell_unstable = renderTableSelectionCell_unstable;
15
+ });
16
+ //# sourceMappingURL=renderTableSelectionCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderTableSelectionCell.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/renderTableSelectionCell.tsx"],"names":[],"mappings":";;;;IAIA;;OAEG;IACI,IAAM,iCAAiC,GAAG,UAAC,KAA8B;QACxE,IAAA,KAAuB,0BAAQ,CAA0B,KAAK,CAAC,EAA7D,KAAK,WAAA,EAAE,SAAS,eAA6C,CAAC;QAEtE,OAAO,CACL,oBAAC,KAAK,CAAC,IAAI,uBAAK,SAAS,CAAC,IAAI;YAC3B,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,KAAK,CAAC,iBAAiB,IAAI,CACvD,oBAAC,KAAK,CAAC,iBAAiB,uBAAK,SAAS,CAAC,iBAAiB,EAAI,CAC7D;YACA,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,cAAc,IAAI,oBAAC,KAAK,CAAC,cAAc,uBAAK,SAAS,CAAC,cAAc,EAAI,CAC9F,CACd,CAAC;IACJ,CAAC,CAAC;IAXW,QAAA,iCAAiC,qCAW5C","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport type { TableSelectionCellState, TableSelectionCellSlots } from './TableSelectionCell.types';\n\n/**\n * Render the final JSX of TableSelectionCell\n */\nexport const renderTableSelectionCell_unstable = (state: TableSelectionCellState) => {\n const { slots, slotProps } = getSlots<TableSelectionCellSlots>(state);\n\n return (\n <slots.root {...slotProps.root}>\n {state.type === 'checkbox' && slots.checkboxIndicator && (\n <slots.checkboxIndicator {...slotProps.checkboxIndicator} />\n )}\n {state.type === 'radio' && slots.radioIndicator && <slots.radioIndicator {...slotProps.radioIndicator} />}\n </slots.root>\n );\n};\n"]}
@@ -0,0 +1,28 @@
1
+ define(["require", "exports", "tslib", "@fluentui/react-utilities", "@fluentui/react-checkbox", "@fluentui/react-radio", "../TableCell/useTableCell", "../../contexts/tableContext"], function (require, exports, tslib_1, react_utilities_1, react_checkbox_1, react_radio_1, useTableCell_1, tableContext_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useTableSelectionCell_unstable = void 0;
5
+ /**
6
+ * Create the state required to render TableSelectionCell.
7
+ *
8
+ * The returned state can be modified with hooks such as useTableSelectionCellStyles_unstable,
9
+ * before being passed to renderTableSelectionCell_unstable.
10
+ *
11
+ * @param props - props from this instance of TableSelectionCell
12
+ * @param ref - reference to root HTMLElement of TableSelectionCell
13
+ */
14
+ var useTableSelectionCell_unstable = function (props, ref) {
15
+ var tableCellState = useTableCell_1.useTableCell_unstable(props, ref);
16
+ var noNativeElements = tableContext_1.useTableContext().noNativeElements;
17
+ var _a = props.type, type = _a === void 0 ? 'checkbox' : _a, _b = props.checked, checked = _b === void 0 ? false : _b, _c = props.subtle, subtle = _c === void 0 ? false : _c, _d = props.hidden, hidden = _d === void 0 ? false : _d;
18
+ return tslib_1.__assign(tslib_1.__assign({}, tableCellState), { components: tslib_1.__assign(tslib_1.__assign({}, tableCellState.components), { checkboxIndicator: react_checkbox_1.Checkbox, radioIndicator: react_radio_1.Radio }), checkboxIndicator: react_utilities_1.resolveShorthand(props.checkboxIndicator, {
19
+ required: type === 'checkbox',
20
+ defaultProps: { checked: props.checked },
21
+ }), radioIndicator: react_utilities_1.resolveShorthand(props.radioIndicator, {
22
+ required: type === 'radio',
23
+ defaultProps: { checked: !!checked, input: { name: react_utilities_1.useId('table-selection-radio') } },
24
+ }), type: type, checked: checked, noNativeElements: noNativeElements, subtle: subtle, hidden: hidden });
25
+ };
26
+ exports.useTableSelectionCell_unstable = useTableSelectionCell_unstable;
27
+ });
28
+ //# sourceMappingURL=useTableSelectionCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableSelectionCell.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/useTableSelectionCell.tsx"],"names":[],"mappings":";;;;IAQA;;;;;;;;OAQG;IACI,IAAM,8BAA8B,GAAG,UAC5C,KAA8B,EAC9B,GAA2B;QAE3B,IAAM,cAAc,GAAG,oCAAqB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjD,IAAA,gBAAgB,GAAK,8BAAe,EAAE,iBAAtB,CAAuB;QACvC,IAAA,KAAuE,KAAK,KAA3D,EAAjB,IAAI,mBAAG,UAAU,KAAA,EAAE,KAAoD,KAAK,QAA1C,EAAf,OAAO,mBAAG,KAAK,KAAA,EAAE,KAAmC,KAAK,OAA1B,EAAd,MAAM,mBAAG,KAAK,KAAA,EAAE,KAAmB,KAAK,OAAV,EAAd,MAAM,mBAAG,KAAK,KAAA,CAAW;QAErF,6CACK,cAAc,KACjB,UAAU,wCACL,cAAc,CAAC,UAAU,KAC5B,iBAAiB,EAAE,yBAAQ,EAC3B,cAAc,EAAE,mBAAK,KAEvB,iBAAiB,EAAE,kCAAgB,CAAC,KAAK,CAAC,iBAAiB,EAAE;gBAC3D,QAAQ,EAAE,IAAI,KAAK,UAAU;gBAC7B,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;aACzC,CAAC,EACF,cAAc,EAAE,kCAAgB,CAAC,KAAK,CAAC,cAAc,EAAE;gBACrD,QAAQ,EAAE,IAAI,KAAK,OAAO;gBAC1B,YAAY,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,uBAAK,CAAC,uBAAuB,CAAC,EAAE,EAAE;aACtF,CAAC,EACF,IAAI,MAAA,EACJ,OAAO,SAAA,EACP,gBAAgB,kBAAA,EAChB,MAAM,QAAA,EACN,MAAM,QAAA,IACN;IACJ,CAAC,CAAC;IA7BW,QAAA,8BAA8B,kCA6BzC","sourcesContent":["import * as React from 'react';\nimport { resolveShorthand, useId } from '@fluentui/react-utilities';\nimport { Checkbox } from '@fluentui/react-checkbox';\nimport { Radio } from '@fluentui/react-radio';\nimport type { TableSelectionCellProps, TableSelectionCellState } from './TableSelectionCell.types';\nimport { useTableCell_unstable } from '../TableCell/useTableCell';\nimport { useTableContext } from '../../contexts/tableContext';\n\n/**\n * Create the state required to render TableSelectionCell.\n *\n * The returned state can be modified with hooks such as useTableSelectionCellStyles_unstable,\n * before being passed to renderTableSelectionCell_unstable.\n *\n * @param props - props from this instance of TableSelectionCell\n * @param ref - reference to root HTMLElement of TableSelectionCell\n */\nexport const useTableSelectionCell_unstable = (\n props: TableSelectionCellProps,\n ref: React.Ref<HTMLElement>,\n): TableSelectionCellState => {\n const tableCellState = useTableCell_unstable(props, ref);\n const { noNativeElements } = useTableContext();\n const { type = 'checkbox', checked = false, subtle = false, hidden = false } = props;\n\n return {\n ...tableCellState,\n components: {\n ...tableCellState.components,\n checkboxIndicator: Checkbox,\n radioIndicator: Radio,\n },\n checkboxIndicator: resolveShorthand(props.checkboxIndicator, {\n required: type === 'checkbox',\n defaultProps: { checked: props.checked },\n }),\n radioIndicator: resolveShorthand(props.radioIndicator, {\n required: type === 'radio',\n defaultProps: { checked: !!checked, input: { name: useId('table-selection-radio') } },\n }),\n type,\n checked,\n noNativeElements,\n subtle,\n hidden,\n };\n};\n"]}
@@ -0,0 +1,58 @@
1
+ define(["require", "exports", "tslib", "@griffel/react", "@fluentui/react-tabster", "@fluentui/react-theme"], function (require, exports, tslib_1, react_1, react_tabster_1, react_theme_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useTableSelectionCellStyles_unstable = exports.tableSelectionCellClassNames = exports.CELL_WIDTH = void 0;
5
+ exports.CELL_WIDTH = 44;
6
+ exports.tableSelectionCellClassNames = {
7
+ root: 'fui-TableSelectionCell',
8
+ checkboxIndicator: 'fui-TableSelectionCell__checkboxIndicator',
9
+ radioIndicator: 'fui-TableSelectionCell__radioIndicator',
10
+ };
11
+ var useTableLayoutStyles = react_1.makeStyles({
12
+ root: {
13
+ display: 'table-cell',
14
+ width: exports.CELL_WIDTH + "px",
15
+ },
16
+ });
17
+ var useFlexLayoutStyles = react_1.makeStyles({
18
+ root: tslib_1.__assign(tslib_1.__assign({ display: 'flex' }, react_1.shorthands.flex(1, 1, '0px')), { minWidth: exports.CELL_WIDTH + "px", maxWidth: exports.CELL_WIDTH + "px", justifyContent: 'center' }),
19
+ });
20
+ /**
21
+ * Styles for the root slot
22
+ */
23
+ var useStyles = react_1.makeStyles({
24
+ root: tslib_1.__assign(tslib_1.__assign({ textAlign: 'center', whiteSpace: 'nowrap' }, react_1.shorthands.padding(0)), react_tabster_1.createCustomFocusIndicatorStyle(tslib_1.__assign(tslib_1.__assign({}, react_1.shorthands.outline('2px', 'solid', react_theme_1.tokens.colorStrokeFocus2)), react_1.shorthands.borderRadius(react_theme_1.tokens.borderRadiusMedium)), { selector: 'focus', enableOutline: true })),
25
+ radioIndicator: {
26
+ display: 'flex',
27
+ flexGrow: 1,
28
+ alignItems: 'center',
29
+ justifyContent: 'center',
30
+ },
31
+ subtle: tslib_1.__assign({ opacity: 0 }, react_tabster_1.createCustomFocusIndicatorStyle({
32
+ opacity: 1,
33
+ }, { selector: 'focus-within' })),
34
+ hidden: {
35
+ visibility: 'hidden',
36
+ },
37
+ });
38
+ /**
39
+ * Apply styling to the TableSelectionCell slots based on the state
40
+ */
41
+ var useTableSelectionCellStyles_unstable = function (state) {
42
+ var styles = useStyles();
43
+ var layoutStyles = {
44
+ table: useTableLayoutStyles(),
45
+ flex: useFlexLayoutStyles(),
46
+ };
47
+ state.root.className = react_1.mergeClasses(exports.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);
48
+ if (state.checkboxIndicator) {
49
+ state.checkboxIndicator.className = react_1.mergeClasses(exports.tableSelectionCellClassNames.checkboxIndicator, state.checkboxIndicator.className);
50
+ }
51
+ if (state.radioIndicator) {
52
+ state.radioIndicator.className = react_1.mergeClasses(exports.tableSelectionCellClassNames.radioIndicator, styles.radioIndicator, state.radioIndicator.className);
53
+ }
54
+ return state;
55
+ };
56
+ exports.useTableSelectionCellStyles_unstable = useTableSelectionCellStyles_unstable;
57
+ });
58
+ //# sourceMappingURL=useTableSelectionCellStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTableSelectionCellStyles.js","sourceRoot":"","sources":["../../../../../../../../../packages/react-components/react-table/src/components/TableSelectionCell/useTableSelectionCellStyles.ts"],"names":[],"mappings":";;;;IAMa,QAAA,UAAU,GAAG,EAAE,CAAC;IAEhB,QAAA,4BAA4B,GAA4C;QACnF,IAAI,EAAE,wBAAwB;QAC9B,iBAAiB,EAAE,2CAA2C;QAC9D,cAAc,EAAE,wCAAwC;KACzD,CAAC;IAEF,IAAM,oBAAoB,GAAG,kBAAU,CAAC;QACtC,IAAI,EAAE;YACJ,OAAO,EAAE,YAAY;YACrB,KAAK,EAAK,kBAAU,OAAI;SACzB;KACF,CAAC,CAAC;IAEH,IAAM,mBAAmB,GAAG,kBAAU,CAAC;QACrC,IAAI,sCACF,OAAO,EAAE,MAAM,IACZ,kBAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,KAC/B,QAAQ,EAAK,kBAAU,OAAI,EAC3B,QAAQ,EAAK,kBAAU,OAAI,EAC3B,cAAc,EAAE,QAAQ,GACzB;KACF,CAAC,CAAC;IAEH;;OAEG;IACH,IAAM,SAAS,GAAG,kBAAU,CAAC;QAC3B,IAAI,sCACF,SAAS,EAAE,QAAQ,EACnB,UAAU,EAAE,QAAQ,IACjB,kBAAU,CAAC,OAAO,CAAC,CAAC,CAAC,GACrB,+CAA+B,uCAE3B,kBAAU,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,oBAAM,CAAC,iBAAiB,CAAC,GAC5D,kBAAU,CAAC,YAAY,CAAC,oBAAM,CAAC,kBAAkB,CAAC,GAEvD,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,CAC3C,CACF;QAED,cAAc,EAAE;YACd,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,CAAC;YACX,UAAU,EAAE,QAAQ;YACpB,cAAc,EAAE,QAAQ;SACzB;QAED,MAAM,qBACJ,OAAO,EAAE,CAAC,IACP,+CAA+B,CAChC;YACE,OAAO,EAAE,CAAC;SACX,EACD,EAAE,QAAQ,EAAE,cAAc,EAAE,CAC7B,CACF;QAED,MAAM,EAAE;YACN,UAAU,EAAE,QAAQ;SACrB;KACF,CAAC,CAAC;IAEH;;OAEG;IACI,IAAM,oCAAoC,GAAG,UAAC,KAA8B;QACjF,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAM,YAAY,GAAG;YACnB,KAAK,EAAE,oBAAoB,EAAE;YAC7B,IAAI,EAAE,mBAAmB,EAAE;SAC5B,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,SAAS,GAAG,oBAAY,CACjC,oCAA4B,CAAC,IAAI,EACjC,MAAM,CAAC,IAAI,EACX,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,EACzE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,MAAM,EACxD,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAC7B,KAAK,CAAC,IAAI,CAAC,SAAS,CACrB,CAAC;QACF,IAAI,KAAK,CAAC,iBAAiB,EAAE;YAC3B,KAAK,CAAC,iBAAiB,CAAC,SAAS,GAAG,oBAAY,CAC9C,oCAA4B,CAAC,iBAAiB,EAC9C,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAClC,CAAC;SACH;QAED,IAAI,KAAK,CAAC,cAAc,EAAE;YACxB,KAAK,CAAC,cAAc,CAAC,SAAS,GAAG,oBAAY,CAC3C,oCAA4B,CAAC,cAAc,EAC3C,MAAM,CAAC,cAAc,EACrB,KAAK,CAAC,cAAc,CAAC,SAAS,CAC/B,CAAC;SACH;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IA9BW,QAAA,oCAAoC,wCA8B/C","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 CELL_WIDTH = 44;\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: `${CELL_WIDTH}px`,\n },\n});\n\nconst useFlexLayoutStyles = makeStyles({\n root: {\n display: 'flex',\n ...shorthands.flex(1, 1, '0px'),\n minWidth: `${CELL_WIDTH}px`,\n maxWidth: `${CELL_WIDTH}px`,\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,11 @@
1
+ define(["require", "exports", "react"], function (require, exports, React) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ColumnIdContextProvider = exports.useColumnIdContext = exports.columnIdContextDefaultValue = void 0;
5
+ var columnIdContext = React.createContext(undefined);
6
+ exports.columnIdContextDefaultValue = '';
7
+ var useColumnIdContext = function () { var _a; return (_a = React.useContext(columnIdContext)) !== null && _a !== void 0 ? _a : exports.columnIdContextDefaultValue; };
8
+ exports.useColumnIdContext = useColumnIdContext;
9
+ exports.ColumnIdContextProvider = columnIdContext.Provider;
10
+ });
11
+ //# sourceMappingURL=columnIdContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnIdContext.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/contexts/columnIdContext.ts"],"names":[],"mappings":";;;;IAGA,IAAM,eAAe,GAAG,KAAK,CAAC,aAAa,CAA4B,SAAS,CAAC,CAAC;IAErE,QAAA,2BAA2B,GAAG,EAAE,CAAC;IAEvC,IAAM,kBAAkB,GAAG,sBAAM,OAAA,MAAA,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,mCAAI,mCAA2B,CAAA,EAAA,CAAC;IAA5F,QAAA,kBAAkB,sBAA0E;IAE5F,QAAA,uBAAuB,GAAG,eAAe,CAAC,QAAQ,CAAC","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,16 @@
1
+ define(["require", "exports", "tslib", "@fluentui/react-context-selector", "../hooks"], function (require, exports, tslib_1, react_context_selector_1, hooks_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useDataGridContext_unstable = exports.DataGridContextProvider = void 0;
5
+ var dataGridContext = react_context_selector_1.createContext(undefined);
6
+ var dataGridContextDefaultValue = tslib_1.__assign(tslib_1.__assign({}, hooks_1.defaultTableState), { subtleSelection: false, selectableRows: false, selectionAppearance: 'brand', focusMode: 'none' });
7
+ exports.DataGridContextProvider = dataGridContext.Provider;
8
+ var useDataGridContext_unstable = function (selector) {
9
+ return react_context_selector_1.useContextSelector(dataGridContext, function (ctx) {
10
+ if (ctx === void 0) { ctx = dataGridContextDefaultValue; }
11
+ return selector(ctx);
12
+ });
13
+ };
14
+ exports.useDataGridContext_unstable = useDataGridContext_unstable;
15
+ });
16
+ //# sourceMappingURL=dataGridContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataGridContext.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/contexts/dataGridContext.ts"],"names":[],"mappings":";;;;IAKA,IAAM,eAAe,GAAG,sCAAa,CAAmC,SAAS,CAAC,CAAC;IAEnF,IAAM,2BAA2B,yCAC5B,yBAAiB,KACpB,eAAe,EAAE,KAAK,EACtB,cAAc,EAAE,KAAK,EACrB,mBAAmB,EAAE,OAAO,EAC5B,SAAS,EAAE,MAAM,GAClB,CAAC;IAEW,QAAA,uBAAuB,GAAG,eAAe,CAAC,QAAQ,CAAC;IAEzD,IAAM,2BAA2B,GAAG,UAAI,QAAkD;QAC/F,OAAA,2CAAkB,CAAC,eAAe,EAAE,UAAC,GAAiC;YAAjC,oBAAA,EAAA,iCAAiC;YAAK,OAAA,QAAQ,CAAC,GAAG,CAAC;QAAb,CAAa,CAAC;IAAzF,CAAyF,CAAC;IAD/E,QAAA,2BAA2B,+BACoD","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,11 @@
1
+ define(["require", "exports", "react"], function (require, exports, React) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TableRowIdContextProvider = exports.useTableRowIdContext = exports.tableRowIdContextDefaultValue = void 0;
5
+ var rowIdContext = React.createContext(undefined);
6
+ exports.tableRowIdContextDefaultValue = '';
7
+ var useTableRowIdContext = function () { var _a; return (_a = React.useContext(rowIdContext)) !== null && _a !== void 0 ? _a : exports.tableRowIdContextDefaultValue; };
8
+ exports.useTableRowIdContext = useTableRowIdContext;
9
+ exports.TableRowIdContextProvider = rowIdContext.Provider;
10
+ });
11
+ //# sourceMappingURL=rowIdContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowIdContext.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/contexts/rowIdContext.ts"],"names":[],"mappings":";;;;IAGA,IAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAyB,SAAS,CAAC,CAAC;IAE/D,QAAA,6BAA6B,GAAG,EAAE,CAAC;IAEzC,IAAM,oBAAoB,GAAG,sBAAM,OAAA,MAAA,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,mCAAI,qCAA6B,CAAA,EAAA,CAAC;IAA7F,QAAA,oBAAoB,wBAAyE;IAE7F,QAAA,yBAAyB,GAAG,YAAY,CAAC,QAAQ,CAAC","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"]}
@@ -0,0 +1,15 @@
1
+ define(["require", "exports", "react"], function (require, exports, React) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useTableContext = exports.TableContextProvider = exports.tableContextDefaultValue = void 0;
5
+ var tableContext = React.createContext(undefined);
6
+ exports.tableContextDefaultValue = {
7
+ size: 'medium',
8
+ noNativeElements: false,
9
+ sortable: false,
10
+ };
11
+ exports.TableContextProvider = tableContext.Provider;
12
+ var useTableContext = function () { var _a; return (_a = React.useContext(tableContext)) !== null && _a !== void 0 ? _a : exports.tableContextDefaultValue; };
13
+ exports.useTableContext = useTableContext;
14
+ });
15
+ //# sourceMappingURL=tableContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableContext.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/contexts/tableContext.ts"],"names":[],"mappings":";;;;IAGA,IAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAgC,SAAS,CAAC,CAAC;IAEtE,QAAA,wBAAwB,GAAsB;QACzD,IAAI,EAAE,QAAQ;QACd,gBAAgB,EAAE,KAAK;QACvB,QAAQ,EAAE,KAAK;KAChB,CAAC;IAEW,QAAA,oBAAoB,GAAG,YAAY,CAAC,QAAQ,CAAC;IACnD,IAAM,eAAe,GAAG,sBAAM,OAAA,MAAA,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,mCAAI,gCAAwB,CAAA,EAAA,CAAC;IAAnF,QAAA,eAAe,mBAAoE","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"]}
@@ -0,0 +1,11 @@
1
+ define(["require", "exports", "react"], function (require, exports, React) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.useIsInTableHeader = exports.TableHeaderContextProvider = void 0;
5
+ var tableHeaderContext = React.createContext(undefined);
6
+ var tableHeaderContextDefaultValue = '';
7
+ exports.TableHeaderContextProvider = tableHeaderContext.Provider;
8
+ var useIsInTableHeader = function () { return React.useContext(tableHeaderContext) === tableHeaderContextDefaultValue; };
9
+ exports.useIsInTableHeader = useIsInTableHeader;
10
+ });
11
+ //# sourceMappingURL=tableHeaderContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableHeaderContext.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/contexts/tableHeaderContext.ts"],"names":[],"mappings":";;;;IAEA,IAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAqB,SAAS,CAAC,CAAC;IAE9E,IAAM,8BAA8B,GAAG,EAAE,CAAC;IAE7B,QAAA,0BAA0B,GAAG,kBAAkB,CAAC,QAAQ,CAAC;IAC/D,IAAM,kBAAkB,GAAG,cAAM,OAAA,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,KAAK,8BAA8B,EAAvE,CAAuE,CAAC;IAAnG,QAAA,kBAAkB,sBAAiF","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,36 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.createTableColumn = void 0;
5
+ var defaultCompare = function () { return 0; };
6
+ var defaultRenderCell = function () {
7
+ if (process.env.NODE_ENV !== 'production') {
8
+ // eslint-disable-next-line no-console
9
+ console.warn('@fluentui/react-table: You are using the default column renderCell function that renders null');
10
+ }
11
+ return null;
12
+ };
13
+ var defaultRenderHeaderCell = function () {
14
+ if (process.env.NODE_ENV !== 'production') {
15
+ // eslint-disable-next-line no-console
16
+ console.warn('@fluentui/react-table: You are using the default column renderHeaderCell function that renders null');
17
+ }
18
+ return null;
19
+ };
20
+ /**
21
+ * Helper function to create column definition with defaults
22
+ * @param options - column definition options
23
+ * @returns - column definition with defaults
24
+ */
25
+ function createTableColumn(options) {
26
+ var columnId = options.columnId, _a = options.renderCell, renderCell = _a === void 0 ? defaultRenderCell : _a, _b = options.renderHeaderCell, renderHeaderCell = _b === void 0 ? defaultRenderHeaderCell : _b, _c = options.compare, compare = _c === void 0 ? defaultCompare : _c;
27
+ return {
28
+ columnId: columnId,
29
+ renderCell: renderCell,
30
+ renderHeaderCell: renderHeaderCell,
31
+ compare: compare,
32
+ };
33
+ }
34
+ exports.createTableColumn = createTableColumn;
35
+ });
36
+ //# sourceMappingURL=createColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createColumn.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/hooks/createColumn.ts"],"names":[],"mappings":";;;;IAEA,IAAM,cAAc,GAAG,cAAM,OAAA,CAAC,EAAD,CAAC,CAAC;IAE/B,IAAM,iBAAiB,GAAG;QACxB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;YACzC,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,+FAA+F,CAAC,CAAC;SAC/G;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,IAAM,uBAAuB,GAAG;QAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;YACzC,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,qGAAqG,CAAC,CAAC;SACrH;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF;;;;OAIG;IACH,SAAgB,iBAAiB,CAAQ,OAAwC;QAE7E,IAAA,QAAQ,GAIN,OAAO,SAJD,EACR,KAGE,OAAO,WAHqB,EAA9B,UAAU,mBAAG,iBAAiB,KAAA,EAC9B,KAEE,OAAO,iBAFiC,EAA1C,gBAAgB,mBAAG,uBAAuB,KAAA,EAC1C,KACE,OAAO,QADe,EAAxB,OAAO,mBAAG,cAAc,KAAA,CACd;QAEZ,OAAO;YACL,QAAQ,UAAA;YACR,UAAU,YAAA;YACV,gBAAgB,kBAAA;YAChB,OAAO,SAAA;SACR,CAAC;IACJ,CAAC;IAdD,8CAcC","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"]}
@@ -0,0 +1,11 @@
1
+ define(["require", "exports", "tslib", "./types", "./useTableFeatures", "./useTableSort", "./useTableSelection", "./createColumn", "./useTableColumnSizing"], function (require, exports, tslib_1, types_1, useTableFeatures_1, useTableSort_1, useTableSelection_1, createColumn_1, useTableColumnSizing_1) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ tslib_1.__exportStar(types_1, exports);
5
+ tslib_1.__exportStar(useTableFeatures_1, exports);
6
+ tslib_1.__exportStar(useTableSort_1, exports);
7
+ tslib_1.__exportStar(useTableSelection_1, exports);
8
+ tslib_1.__exportStar(createColumn_1, exports);
9
+ tslib_1.__exportStar(useTableColumnSizing_1, exports);
10
+ });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/react-components/react-table/src/hooks/index.ts"],"names":[],"mappings":";;;IAAA,uCAAwB;IACxB,kDAAmC;IACnC,8CAA+B;IAC/B,mDAAoC;IACpC,8CAA+B;IAC/B,sDAAuC","sourcesContent":["export * from './types';\nexport * from './useTableFeatures';\nexport * from './useTableSort';\nexport * from './useTableSelection';\nexport * from './createColumn';\nexport * from './useTableColumnSizing';\n"]}
@@ -0,0 +1,82 @@
1
+ define(["require", "exports"], function (require, exports) {
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.createSelectionManager = void 0;
5
+ function createSelectionManager(mode, onSelectionChange) {
6
+ if (onSelectionChange === void 0) { onSelectionChange = function () { return undefined; }; }
7
+ var managerFactory = mode === 'multiselect' ? createMultipleSelectionManager : createSingleSelectionManager;
8
+ return managerFactory(onSelectionChange);
9
+ }
10
+ exports.createSelectionManager = createSelectionManager;
11
+ function createMultipleSelectionManager(onSelectionChange) {
12
+ var toggleAllItems = function (e, itemIds, selectedItems) {
13
+ var allItemsSelected = itemIds.every(function (itemId) { return selectedItems.has(itemId); });
14
+ if (allItemsSelected) {
15
+ selectedItems.clear();
16
+ }
17
+ else {
18
+ itemIds.forEach(function (itemId) { return selectedItems.add(itemId); });
19
+ }
20
+ onSelectionChange(e, new Set(selectedItems));
21
+ };
22
+ var toggleItem = function (e, itemId, selectedItems) {
23
+ if (selectedItems.has(itemId)) {
24
+ selectedItems.delete(itemId);
25
+ }
26
+ else {
27
+ selectedItems.add(itemId);
28
+ }
29
+ onSelectionChange(e, new Set(selectedItems));
30
+ };
31
+ var selectItem = function (e, itemId, selectedItems) {
32
+ selectedItems.add(itemId);
33
+ onSelectionChange(e, new Set(selectedItems));
34
+ };
35
+ var deselectItem = function (e, itemId, selectedItems) {
36
+ selectedItems.delete(itemId);
37
+ onSelectionChange(e, new Set(selectedItems));
38
+ };
39
+ var clearItems = function (e) {
40
+ onSelectionChange(e, new Set());
41
+ };
42
+ var isSelected = function (itemId, selectedItems) {
43
+ return selectedItems.has(itemId);
44
+ };
45
+ return {
46
+ toggleItem: toggleItem,
47
+ selectItem: selectItem,
48
+ deselectItem: deselectItem,
49
+ clearItems: clearItems,
50
+ isSelected: isSelected,
51
+ toggleAllItems: toggleAllItems,
52
+ };
53
+ }
54
+ function createSingleSelectionManager(onSelectionChange) {
55
+ var toggleItem = function (e, itemId) {
56
+ onSelectionChange(e, new Set([itemId]));
57
+ };
58
+ var clearItems = function (e) {
59
+ onSelectionChange(e, new Set());
60
+ };
61
+ var isSelected = function (itemId, selectedItems) {
62
+ return selectedItems.has(itemId);
63
+ };
64
+ var selectItem = function (e, itemId) {
65
+ onSelectionChange(e, new Set([itemId]));
66
+ };
67
+ return {
68
+ deselectItem: clearItems,
69
+ selectItem: selectItem,
70
+ toggleAllItems: function () {
71
+ if (process.env.NODE_ENV !== 'production') {
72
+ throw new Error('[react-table]: `toggleAllItems` should not be used in single selection mode');
73
+ }
74
+ return undefined;
75
+ },
76
+ toggleItem: toggleItem,
77
+ clearItems: clearItems,
78
+ isSelected: isSelected,
79
+ };
80
+ }
81
+ });
82
+ //# sourceMappingURL=selectionManager.js.map