@elliemae/ds-data-table 2.2.1 → 2.3.0-alpha.4

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 (560) hide show
  1. package/cjs/DataTable.js +63 -57
  2. package/cjs/DataTable.js.map +7 -0
  3. package/cjs/DataTableContext.js +52 -26
  4. package/cjs/DataTableContext.js.map +7 -0
  5. package/cjs/DataTableSchema.js +151 -113
  6. package/cjs/DataTableSchema.js.map +7 -0
  7. package/cjs/addons/Columns/ColumnAction/ColumnAction.js +40 -14
  8. package/cjs/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  9. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +52 -52
  10. package/cjs/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  11. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js +124 -154
  12. package/cjs/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  13. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +63 -105
  14. package/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  15. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +62 -81
  16. package/cjs/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  17. package/cjs/addons/Columns/index.js +51 -18
  18. package/cjs/addons/Columns/index.js.map +7 -0
  19. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +57 -85
  20. package/cjs/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  21. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js +51 -73
  22. package/cjs/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  23. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js +67 -88
  24. package/cjs/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  25. package/cjs/addons/Editables/index.js +39 -14
  26. package/cjs/addons/Editables/index.js.map +7 -0
  27. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js +87 -137
  28. package/cjs/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  29. package/cjs/addons/Filters/Components/DateRangeFilter/index.js +64 -88
  30. package/cjs/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  31. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js +72 -97
  32. package/cjs/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  33. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js +89 -141
  34. package/cjs/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  35. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +68 -117
  36. package/cjs/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  37. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +59 -75
  38. package/cjs/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  39. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +59 -75
  40. package/cjs/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  41. package/cjs/addons/Filters/Components/SelectFilter/components.js +86 -36
  42. package/cjs/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  43. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +67 -57
  44. package/cjs/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  45. package/cjs/addons/Filters/Components/SelectFilter/utils.js +40 -46
  46. package/cjs/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  47. package/cjs/addons/Filters/Components/SingleDateFilter/index.js +64 -80
  48. package/cjs/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  49. package/cjs/addons/Filters/Components/index.js +34 -21
  50. package/cjs/addons/Filters/Components/index.js.map +7 -0
  51. package/cjs/addons/Filters/index.js +28 -21
  52. package/cjs/addons/Filters/index.js.map +7 -0
  53. package/cjs/addons/Pagination/Pagination.js +45 -37
  54. package/cjs/addons/Pagination/Pagination.js.map +7 -0
  55. package/cjs/addons/Pagination/index.js +35 -9
  56. package/cjs/addons/Pagination/index.js.map +7 -0
  57. package/cjs/configs/constants.js +74 -47
  58. package/cjs/configs/constants.js.map +7 -0
  59. package/cjs/configs/fixedSizes.js +34 -6
  60. package/cjs/configs/fixedSizes.js.map +7 -0
  61. package/cjs/configs/index.js +32 -22
  62. package/cjs/configs/index.js.map +7 -0
  63. package/cjs/configs/useDatatableConfig.js +72 -59
  64. package/cjs/configs/useDatatableConfig.js.map +7 -0
  65. package/cjs/configs/usePaginationConfig.js +61 -23
  66. package/cjs/configs/usePaginationConfig.js.map +7 -0
  67. package/cjs/configs/useRowFlattenization.js +50 -36
  68. package/cjs/configs/useRowFlattenization.js.map +7 -0
  69. package/cjs/configs/useTableColsWithAddons.js +75 -62
  70. package/cjs/configs/useTableColsWithAddons.js.map +7 -0
  71. package/cjs/configs/zIndexInternalConfig.js +34 -6
  72. package/cjs/configs/zIndexInternalConfig.js.map +7 -0
  73. package/cjs/exported-related/EditableCell.js +64 -54
  74. package/cjs/exported-related/EditableCell.js.map +7 -0
  75. package/cjs/exported-related/FilterPopover.js +103 -137
  76. package/cjs/exported-related/FilterPopover.js.map +7 -0
  77. package/cjs/exported-related/FilterTypes.js +42 -14
  78. package/cjs/exported-related/FilterTypes.js.map +7 -0
  79. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js +50 -27
  80. package/cjs/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  81. package/cjs/exported-related/Filters/currencyRangeFilterFn.js +44 -19
  82. package/cjs/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  83. package/cjs/exported-related/Filters/dateRangeFilterFn.js +37 -45
  84. package/cjs/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  85. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js +37 -12
  86. package/cjs/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  87. package/cjs/exported-related/Filters/index.js +34 -21
  88. package/cjs/exported-related/Filters/index.js.map +7 -0
  89. package/cjs/exported-related/Filters/multiSelectFilterFn.js +35 -14
  90. package/cjs/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  91. package/cjs/exported-related/Filters/numberRangeFilterFn.js +36 -13
  92. package/cjs/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  93. package/cjs/exported-related/Filters/singleDateFilterFn.js +37 -45
  94. package/cjs/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  95. package/cjs/exported-related/Filters/singleSelectFilterFn.js +35 -12
  96. package/cjs/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  97. package/cjs/exported-related/Filters/types.js +27 -2
  98. package/cjs/exported-related/Filters/types.js.map +7 -0
  99. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js +107 -109
  100. package/cjs/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  101. package/cjs/exported-related/RowRenderer/index.js +77 -95
  102. package/cjs/exported-related/RowRenderer/index.js.map +7 -0
  103. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js +71 -100
  104. package/cjs/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  105. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js +51 -42
  106. package/cjs/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  107. package/cjs/exported-related/RowRenderer/useRowStyle.js +47 -35
  108. package/cjs/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  109. package/cjs/exported-related/RowVariants.js +43 -15
  110. package/cjs/exported-related/RowVariants.js.map +7 -0
  111. package/cjs/exported-related/Toolbar/Toolbar.js +103 -80
  112. package/cjs/exported-related/Toolbar/Toolbar.js.map +7 -0
  113. package/cjs/exported-related/Toolbar/index.js +35 -9
  114. package/cjs/exported-related/Toolbar/index.js.map +7 -0
  115. package/cjs/exported-related/groupBy.js +43 -25
  116. package/cjs/exported-related/groupBy.js.map +7 -0
  117. package/cjs/exported-related/index.js +44 -35
  118. package/cjs/exported-related/index.js.map +7 -0
  119. package/cjs/helpers/addCellData.js +43 -32
  120. package/cjs/helpers/addCellData.js.map +7 -0
  121. package/cjs/helpers/cellPadding.js +44 -27
  122. package/cjs/helpers/cellPadding.js.map +7 -0
  123. package/cjs/helpers/columnsToGrid.js +41 -17
  124. package/cjs/helpers/columnsToGrid.js.map +7 -0
  125. package/cjs/helpers/getIdFromUniqueRowAccessor.js +38 -20
  126. package/cjs/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  127. package/cjs/helpers/index.js +33 -20
  128. package/cjs/helpers/index.js.map +7 -0
  129. package/cjs/helpers/refs-helpers.js +41 -22
  130. package/cjs/helpers/refs-helpers.js.map +7 -0
  131. package/cjs/helpers/sizeToCss.js +35 -7
  132. package/cjs/helpers/sizeToCss.js.map +7 -0
  133. package/cjs/hooks/useRecoverFocusCol.js +41 -21
  134. package/cjs/hooks/useRecoverFocusCol.js.map +7 -0
  135. package/cjs/hooks/useRecoverFocusRow.js +37 -14
  136. package/cjs/hooks/useRecoverFocusRow.js.map +7 -0
  137. package/cjs/index.js +29 -38
  138. package/cjs/index.js.map +7 -0
  139. package/cjs/parts/Cells/Cell.js +95 -105
  140. package/cjs/parts/Cells/Cell.js.map +7 -0
  141. package/cjs/parts/Cells/index.js +83 -76
  142. package/cjs/parts/Cells/index.js.map +7 -0
  143. package/cjs/parts/Cells/useCellStyle.js +47 -27
  144. package/cjs/parts/Cells/useCellStyle.js.map +7 -0
  145. package/cjs/parts/DnDHandle.js +61 -73
  146. package/cjs/parts/DnDHandle.js.map +7 -0
  147. package/cjs/parts/DropIndicator.js +77 -68
  148. package/cjs/parts/DropIndicator.js.map +7 -0
  149. package/cjs/parts/EmptyContent.js +93 -58
  150. package/cjs/parts/EmptyContent.js.map +7 -0
  151. package/cjs/parts/FilterBar/FiltersBar.js +82 -115
  152. package/cjs/parts/FilterBar/FiltersBar.js.map +7 -0
  153. package/cjs/parts/FilterBar/components/DateRangePill.js +57 -40
  154. package/cjs/parts/FilterBar/components/DateRangePill.js.map +7 -0
  155. package/cjs/parts/FilterBar/components/DateSwitcherPill.js +57 -40
  156. package/cjs/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  157. package/cjs/parts/FilterBar/components/MultiSelectPill.js +57 -42
  158. package/cjs/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  159. package/cjs/parts/FilterBar/components/NumberRangePill.js +56 -39
  160. package/cjs/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  161. package/cjs/parts/FilterBar/components/SelectPill.js +55 -36
  162. package/cjs/parts/FilterBar/components/SelectPill.js.map +7 -0
  163. package/cjs/parts/FilterBar/components/SingleDatePill.js +56 -38
  164. package/cjs/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  165. package/cjs/parts/FilterBar/components/index.js +33 -19
  166. package/cjs/parts/FilterBar/components/index.js.map +7 -0
  167. package/cjs/parts/FilterBar/index.js +35 -9
  168. package/cjs/parts/FilterBar/index.js.map +7 -0
  169. package/cjs/parts/FilterBar/styled.js +49 -23
  170. package/cjs/parts/FilterBar/styled.js.map +7 -0
  171. package/cjs/parts/FilterBar/types.js +27 -2
  172. package/cjs/parts/FilterBar/types.js.map +7 -0
  173. package/cjs/parts/Filters/index.js +69 -108
  174. package/cjs/parts/Filters/index.js.map +7 -0
  175. package/cjs/parts/Footer.js +39 -21
  176. package/cjs/parts/Footer.js.map +7 -0
  177. package/cjs/parts/Headers/EmptyChildrenGroup.js +42 -20
  178. package/cjs/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  179. package/cjs/parts/Headers/HeaderCell.js +114 -159
  180. package/cjs/parts/Headers/HeaderCell.js.map +7 -0
  181. package/cjs/parts/Headers/HeaderCellGroup.js +94 -93
  182. package/cjs/parts/Headers/HeaderCellGroup.js.map +7 -0
  183. package/cjs/parts/Headers/HeaderCellTitle.js +50 -77
  184. package/cjs/parts/Headers/HeaderCellTitle.js.map +7 -0
  185. package/cjs/parts/Headers/HeaderResizer.js +74 -94
  186. package/cjs/parts/Headers/HeaderResizer.js.map +7 -0
  187. package/cjs/parts/Headers/RequiredDot.js +39 -21
  188. package/cjs/parts/Headers/RequiredDot.js.map +7 -0
  189. package/cjs/parts/Headers/index.js +58 -42
  190. package/cjs/parts/Headers/index.js.map +7 -0
  191. package/cjs/parts/Headers/useHeaderCellConfig.js +48 -25
  192. package/cjs/parts/Headers/useHeaderCellConfig.js.map +7 -0
  193. package/cjs/parts/Headers/useHeaderCellHandlers.js +87 -76
  194. package/cjs/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  195. package/cjs/parts/HoC/SortableItemContext.js +44 -19
  196. package/cjs/parts/HoC/SortableItemContext.js.map +7 -0
  197. package/cjs/parts/HoC/withConditionalDnDColumnContext.js +86 -101
  198. package/cjs/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  199. package/cjs/parts/HoC/withConditionalDnDRowContext.js +90 -93
  200. package/cjs/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  201. package/cjs/parts/HoC/withConditionalDnDSortableContext.js +50 -43
  202. package/cjs/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  203. package/cjs/parts/HoC/withDnDSortableColumnContext.js +60 -58
  204. package/cjs/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  205. package/cjs/parts/HoC/withDnDSortableRowContext.js +59 -59
  206. package/cjs/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  207. package/cjs/parts/Loader.js +50 -30
  208. package/cjs/parts/Loader.js.map +7 -0
  209. package/cjs/parts/Row.js +64 -59
  210. package/cjs/parts/Row.js.map +7 -0
  211. package/cjs/parts/RowLoading.js +53 -52
  212. package/cjs/parts/RowLoading.js.map +7 -0
  213. package/cjs/parts/RowVariants/RowVariantHeader.js +79 -95
  214. package/cjs/parts/RowVariants/RowVariantHeader.js.map +7 -0
  215. package/cjs/parts/RowVariants/RowVariantPrimary.js +55 -36
  216. package/cjs/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  217. package/cjs/parts/RowVariants/RowVariantSecondary.js +56 -37
  218. package/cjs/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  219. package/cjs/parts/RowVariants/index.js +59 -77
  220. package/cjs/parts/RowVariants/index.js.map +7 -0
  221. package/cjs/parts/RowVariants/types.js +27 -2
  222. package/cjs/parts/RowVariants/types.js.map +7 -0
  223. package/cjs/parts/Rows.js +71 -68
  224. package/cjs/parts/Rows.js.map +7 -0
  225. package/cjs/parts/SortByCaret.js +44 -30
  226. package/cjs/parts/SortByCaret.js.map +7 -0
  227. package/cjs/parts/SortableHeaderCell.js +43 -38
  228. package/cjs/parts/SortableHeaderCell.js.map +7 -0
  229. package/cjs/parts/TableContent.js +68 -84
  230. package/cjs/parts/TableContent.js.map +7 -0
  231. package/cjs/parts/VirtualRowsList.js +74 -89
  232. package/cjs/parts/VirtualRowsList.js.map +7 -0
  233. package/cjs/parts/index.js +45 -19
  234. package/cjs/parts/index.js.map +7 -0
  235. package/cjs/prop-types.js +76 -56
  236. package/cjs/prop-types.js.map +7 -0
  237. package/cjs/redux/reducers/headersReducers/defaults.js +34 -6
  238. package/cjs/redux/reducers/headersReducers/defaults.js.map +7 -0
  239. package/cjs/redux/reducers/headersReducers/headersReducers.js +46 -23
  240. package/cjs/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  241. package/cjs/redux/reducers/headersReducers/index.js +29 -14
  242. package/cjs/redux/reducers/headersReducers/index.js.map +7 -0
  243. package/cjs/redux/reducers/headersReducers/logic.js +42 -33
  244. package/cjs/redux/reducers/headersReducers/logic.js.map +7 -0
  245. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js +40 -19
  246. package/cjs/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  247. package/cjs/redux/reducers/index.js +46 -17
  248. package/cjs/redux/reducers/index.js.map +7 -0
  249. package/cjs/redux/reducers/rowsReducers/actions_types.js +47 -19
  250. package/cjs/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  251. package/cjs/redux/reducers/rowsReducers/defaults.js +35 -7
  252. package/cjs/redux/reducers/rowsReducers/defaults.js.map +7 -0
  253. package/cjs/redux/reducers/rowsReducers/index.js +29 -20
  254. package/cjs/redux/reducers/rowsReducers/index.js.map +7 -0
  255. package/cjs/redux/reducers/rowsReducers/logic.js +41 -14
  256. package/cjs/redux/reducers/rowsReducers/logic.js.map +7 -0
  257. package/cjs/redux/reducers/rowsReducers/rowsReducer.js +58 -41
  258. package/cjs/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  259. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js +48 -21
  260. package/cjs/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  261. package/cjs/redux/storeConfig.js +36 -9
  262. package/cjs/redux/storeConfig.js.map +7 -0
  263. package/cjs/styled.js +295 -219
  264. package/cjs/styled.js.map +7 -0
  265. package/cjs/tests/utils/index.js +119 -0
  266. package/cjs/tests/utils/index.js.map +7 -0
  267. package/cjs/types/FunctionalHoC.js +27 -2
  268. package/cjs/types/FunctionalHoC.js.map +7 -0
  269. package/cjs/types/props.js +27 -2
  270. package/cjs/types/props.js.map +7 -0
  271. package/esm/DataTable.js +29 -42
  272. package/esm/DataTable.js.map +7 -0
  273. package/esm/DataTableContext.js +22 -19
  274. package/esm/DataTableContext.js.map +7 -0
  275. package/esm/DataTableSchema.js +110 -97
  276. package/esm/DataTableSchema.js.map +7 -0
  277. package/esm/addons/Columns/ColumnAction/ColumnAction.js +11 -10
  278. package/esm/addons/Columns/ColumnAction/ColumnAction.js.map +7 -0
  279. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js +22 -43
  280. package/esm/addons/Columns/ColumnDragHandle/ColumnDragHandle.js.map +7 -0
  281. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js +83 -132
  282. package/esm/addons/Columns/ColumnExpand/ColumnExpand.js.map +7 -0
  283. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +30 -92
  284. package/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +7 -0
  285. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js +32 -71
  286. package/esm/addons/Columns/ColumnSelectSingle/ColumnSelectSingle.js.map +7 -0
  287. package/esm/addons/Columns/index.js +22 -9
  288. package/esm/addons/Columns/index.js.map +7 -0
  289. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js +23 -72
  290. package/esm/addons/Editables/ComboboxEditableCell/ComboboxEditableCell.js.map +7 -0
  291. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js +19 -62
  292. package/esm/addons/Editables/DateEditableCell/DateEditableCell.js.map +7 -0
  293. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js +35 -76
  294. package/esm/addons/Editables/TextEditableCell/TextEditableCell.js.map +7 -0
  295. package/esm/addons/Editables/index.js +9 -9
  296. package/esm/addons/Editables/index.js.map +7 -0
  297. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js +55 -124
  298. package/esm/addons/Filters/Components/CurrencyRangeFilter/index.js.map +7 -0
  299. package/esm/addons/Filters/Components/DateRangeFilter/index.js +33 -77
  300. package/esm/addons/Filters/Components/DateRangeFilter/index.js.map +7 -0
  301. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js +44 -85
  302. package/esm/addons/Filters/Components/DateSwitcherFilter/index.js.map +7 -0
  303. package/esm/addons/Filters/Components/NumberRangeFilter/index.js +57 -128
  304. package/esm/addons/Filters/Components/NumberRangeFilter/index.js.map +7 -0
  305. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js +35 -105
  306. package/esm/addons/Filters/Components/SelectFilter/BaseSelectFilter.js.map +7 -0
  307. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js +30 -67
  308. package/esm/addons/Filters/Components/SelectFilter/MultiSelectFilter.js.map +7 -0
  309. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js +30 -67
  310. package/esm/addons/Filters/Components/SelectFilter/SingleSelectFilter.js.map +7 -0
  311. package/esm/addons/Filters/Components/SelectFilter/components.js +57 -23
  312. package/esm/addons/Filters/Components/SelectFilter/components.js.map +7 -0
  313. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js +38 -53
  314. package/esm/addons/Filters/Components/SelectFilter/useSelectFilterHandlers.js.map +7 -0
  315. package/esm/addons/Filters/Components/SelectFilter/utils.js +11 -41
  316. package/esm/addons/Filters/Components/SelectFilter/utils.js.map +7 -0
  317. package/esm/addons/Filters/Components/SingleDateFilter/index.js +31 -67
  318. package/esm/addons/Filters/Components/SingleDateFilter/index.js.map +7 -0
  319. package/esm/addons/Filters/Components/index.js +9 -7
  320. package/esm/addons/Filters/Components/index.js.map +7 -0
  321. package/esm/addons/Filters/index.js +3 -7
  322. package/esm/addons/Filters/index.js.map +7 -0
  323. package/esm/addons/Pagination/Pagination.js +14 -27
  324. package/esm/addons/Pagination/Pagination.js.map +7 -0
  325. package/esm/addons/Pagination/index.js +6 -1
  326. package/esm/addons/Pagination/index.js.map +7 -0
  327. package/esm/configs/constants.js +45 -42
  328. package/esm/configs/constants.js.map +7 -0
  329. package/esm/configs/fixedSizes.js +5 -2
  330. package/esm/configs/fixedSizes.js.map +7 -0
  331. package/esm/configs/index.js +7 -5
  332. package/esm/configs/index.js.map +7 -0
  333. package/esm/configs/useDatatableConfig.js +35 -47
  334. package/esm/configs/useDatatableConfig.js.map +7 -0
  335. package/esm/configs/usePaginationConfig.js +30 -17
  336. package/esm/configs/usePaginationConfig.js.map +7 -0
  337. package/esm/configs/useRowFlattenization.js +18 -29
  338. package/esm/configs/useRowFlattenization.js.map +7 -0
  339. package/esm/configs/useTableColsWithAddons.js +51 -55
  340. package/esm/configs/useTableColsWithAddons.js.map +7 -0
  341. package/esm/configs/zIndexInternalConfig.js +5 -2
  342. package/esm/configs/zIndexInternalConfig.js.map +7 -0
  343. package/esm/exported-related/EditableCell.js +33 -44
  344. package/esm/exported-related/EditableCell.js.map +7 -0
  345. package/esm/exported-related/FilterPopover.js +70 -122
  346. package/esm/exported-related/FilterPopover.js.map +7 -0
  347. package/esm/exported-related/FilterTypes.js +12 -9
  348. package/esm/exported-related/FilterTypes.js.map +7 -0
  349. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js +14 -16
  350. package/esm/exported-related/Filters/applyOutOfTheBoxFilters.js.map +7 -0
  351. package/esm/exported-related/Filters/currencyRangeFilterFn.js +15 -15
  352. package/esm/exported-related/Filters/currencyRangeFilterFn.js.map +7 -0
  353. package/esm/exported-related/Filters/dateRangeFilterFn.js +8 -37
  354. package/esm/exported-related/Filters/dateRangeFilterFn.js.map +7 -0
  355. package/esm/exported-related/Filters/dateSwitcherFilterFn.js +7 -7
  356. package/esm/exported-related/Filters/dateSwitcherFilterFn.js.map +7 -0
  357. package/esm/exported-related/Filters/index.js +9 -7
  358. package/esm/exported-related/Filters/index.js.map +7 -0
  359. package/esm/exported-related/Filters/multiSelectFilterFn.js +6 -10
  360. package/esm/exported-related/Filters/multiSelectFilterFn.js.map +7 -0
  361. package/esm/exported-related/Filters/numberRangeFilterFn.js +7 -9
  362. package/esm/exported-related/Filters/numberRangeFilterFn.js.map +7 -0
  363. package/esm/exported-related/Filters/singleDateFilterFn.js +8 -37
  364. package/esm/exported-related/Filters/singleDateFilterFn.js.map +7 -0
  365. package/esm/exported-related/Filters/singleSelectFilterFn.js +6 -8
  366. package/esm/exported-related/Filters/singleSelectFilterFn.js.map +7 -0
  367. package/esm/exported-related/Filters/types.js +2 -1
  368. package/esm/exported-related/Filters/types.js.map +7 -0
  369. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js +72 -94
  370. package/esm/exported-related/RowRenderer/DefaultRowContentRenderer.js.map +7 -0
  371. package/esm/exported-related/RowRenderer/index.js +45 -85
  372. package/esm/exported-related/RowRenderer/index.js.map +7 -0
  373. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js +41 -95
  374. package/esm/exported-related/RowRenderer/useRowRendererHandlers.js.map +7 -0
  375. package/esm/exported-related/RowRenderer/useRowRendererProperties.js +19 -31
  376. package/esm/exported-related/RowRenderer/useRowRendererProperties.js.map +7 -0
  377. package/esm/exported-related/RowRenderer/useRowStyle.js +17 -30
  378. package/esm/exported-related/RowRenderer/useRowStyle.js.map +7 -0
  379. package/esm/exported-related/RowVariants.js +14 -9
  380. package/esm/exported-related/RowVariants.js.map +7 -0
  381. package/esm/exported-related/Toolbar/Toolbar.js +68 -64
  382. package/esm/exported-related/Toolbar/Toolbar.js.map +7 -0
  383. package/esm/exported-related/Toolbar/index.js +6 -1
  384. package/esm/exported-related/Toolbar/index.js.map +7 -0
  385. package/esm/exported-related/groupBy.js +14 -21
  386. package/esm/exported-related/groupBy.js.map +7 -0
  387. package/esm/exported-related/index.js +15 -13
  388. package/esm/exported-related/index.js.map +7 -0
  389. package/esm/helpers/addCellData.js +15 -25
  390. package/esm/helpers/addCellData.js.map +7 -0
  391. package/esm/helpers/cellPadding.js +15 -22
  392. package/esm/helpers/cellPadding.js.map +7 -0
  393. package/esm/helpers/columnsToGrid.js +12 -13
  394. package/esm/helpers/columnsToGrid.js.map +7 -0
  395. package/esm/helpers/getIdFromUniqueRowAccessor.js +9 -16
  396. package/esm/helpers/getIdFromUniqueRowAccessor.js.map +7 -0
  397. package/esm/helpers/index.js +8 -6
  398. package/esm/helpers/index.js.map +7 -0
  399. package/esm/helpers/refs-helpers.js +13 -19
  400. package/esm/helpers/refs-helpers.js.map +7 -0
  401. package/esm/helpers/sizeToCss.js +6 -3
  402. package/esm/helpers/sizeToCss.js.map +7 -0
  403. package/esm/hooks/useRecoverFocusCol.js +10 -15
  404. package/esm/hooks/useRecoverFocusCol.js.map +7 -0
  405. package/esm/hooks/useRecoverFocusRow.js +6 -8
  406. package/esm/hooks/useRecoverFocusRow.js.map +7 -0
  407. package/esm/index.js +4 -14
  408. package/esm/index.js.map +7 -0
  409. package/esm/parts/Cells/Cell.js +63 -94
  410. package/esm/parts/Cells/Cell.js.map +7 -0
  411. package/esm/parts/Cells/index.js +54 -70
  412. package/esm/parts/Cells/index.js.map +7 -0
  413. package/esm/parts/Cells/useCellStyle.js +16 -21
  414. package/esm/parts/Cells/useCellStyle.js.map +7 -0
  415. package/esm/parts/DnDHandle.js +32 -65
  416. package/esm/parts/DnDHandle.js.map +7 -0
  417. package/esm/parts/DropIndicator.js +49 -62
  418. package/esm/parts/DropIndicator.js.map +7 -0
  419. package/esm/parts/EmptyContent.js +64 -48
  420. package/esm/parts/EmptyContent.js.map +7 -0
  421. package/esm/parts/FilterBar/FiltersBar.js +49 -94
  422. package/esm/parts/FilterBar/FiltersBar.js.map +7 -0
  423. package/esm/parts/FilterBar/components/DateRangePill.js +27 -31
  424. package/esm/parts/FilterBar/components/DateRangePill.js.map +7 -0
  425. package/esm/parts/FilterBar/components/DateSwitcherPill.js +27 -31
  426. package/esm/parts/FilterBar/components/DateSwitcherPill.js.map +7 -0
  427. package/esm/parts/FilterBar/components/MultiSelectPill.js +28 -34
  428. package/esm/parts/FilterBar/components/MultiSelectPill.js.map +7 -0
  429. package/esm/parts/FilterBar/components/NumberRangePill.js +26 -30
  430. package/esm/parts/FilterBar/components/NumberRangePill.js.map +7 -0
  431. package/esm/parts/FilterBar/components/SelectPill.js +25 -27
  432. package/esm/parts/FilterBar/components/SelectPill.js.map +7 -0
  433. package/esm/parts/FilterBar/components/SingleDatePill.js +26 -29
  434. package/esm/parts/FilterBar/components/SingleDatePill.js.map +7 -0
  435. package/esm/parts/FilterBar/components/index.js +8 -6
  436. package/esm/parts/FilterBar/components/index.js.map +7 -0
  437. package/esm/parts/FilterBar/index.js +6 -1
  438. package/esm/parts/FilterBar/index.js.map +7 -0
  439. package/esm/parts/FilterBar/styled.js +20 -12
  440. package/esm/parts/FilterBar/styled.js.map +7 -0
  441. package/esm/parts/FilterBar/types.js +2 -1
  442. package/esm/parts/FilterBar/types.js.map +7 -0
  443. package/esm/parts/Filters/index.js +40 -92
  444. package/esm/parts/Filters/index.js.map +7 -0
  445. package/esm/parts/Footer.js +10 -15
  446. package/esm/parts/Footer.js.map +7 -0
  447. package/esm/parts/Headers/EmptyChildrenGroup.js +13 -11
  448. package/esm/parts/Headers/EmptyChildrenGroup.js.map +7 -0
  449. package/esm/parts/Headers/HeaderCell.js +77 -141
  450. package/esm/parts/Headers/HeaderCell.js.map +7 -0
  451. package/esm/parts/Headers/HeaderCellGroup.js +64 -82
  452. package/esm/parts/Headers/HeaderCellGroup.js.map +7 -0
  453. package/esm/parts/Headers/HeaderCellTitle.js +22 -70
  454. package/esm/parts/Headers/HeaderCellTitle.js.map +7 -0
  455. package/esm/parts/Headers/HeaderResizer.js +36 -77
  456. package/esm/parts/Headers/HeaderResizer.js.map +7 -0
  457. package/esm/parts/Headers/RequiredDot.js +10 -13
  458. package/esm/parts/Headers/RequiredDot.js.map +7 -0
  459. package/esm/parts/Headers/index.js +28 -35
  460. package/esm/parts/Headers/index.js.map +7 -0
  461. package/esm/parts/Headers/useHeaderCellConfig.js +19 -21
  462. package/esm/parts/Headers/useHeaderCellConfig.js.map +7 -0
  463. package/esm/parts/Headers/useHeaderCellHandlers.js +56 -66
  464. package/esm/parts/Headers/useHeaderCellHandlers.js.map +7 -0
  465. package/esm/parts/HoC/SortableItemContext.js +15 -15
  466. package/esm/parts/HoC/SortableItemContext.js.map +7 -0
  467. package/esm/parts/HoC/withConditionalDnDColumnContext.js +52 -85
  468. package/esm/parts/HoC/withConditionalDnDColumnContext.js.map +7 -0
  469. package/esm/parts/HoC/withConditionalDnDRowContext.js +59 -80
  470. package/esm/parts/HoC/withConditionalDnDRowContext.js.map +7 -0
  471. package/esm/parts/HoC/withConditionalDnDSortableContext.js +21 -34
  472. package/esm/parts/HoC/withConditionalDnDSortableContext.js.map +7 -0
  473. package/esm/parts/HoC/withDnDSortableColumnContext.js +26 -44
  474. package/esm/parts/HoC/withDnDSortableColumnContext.js.map +7 -0
  475. package/esm/parts/HoC/withDnDSortableRowContext.js +26 -46
  476. package/esm/parts/HoC/withDnDSortableRowContext.js.map +7 -0
  477. package/esm/parts/Loader.js +21 -22
  478. package/esm/parts/Loader.js.map +7 -0
  479. package/esm/parts/Row.js +33 -48
  480. package/esm/parts/Row.js.map +7 -0
  481. package/esm/parts/RowLoading.js +23 -42
  482. package/esm/parts/RowLoading.js.map +7 -0
  483. package/esm/parts/RowVariants/RowVariantHeader.js +47 -83
  484. package/esm/parts/RowVariants/RowVariantHeader.js.map +7 -0
  485. package/esm/parts/RowVariants/RowVariantPrimary.js +26 -28
  486. package/esm/parts/RowVariants/RowVariantPrimary.js.map +7 -0
  487. package/esm/parts/RowVariants/RowVariantSecondary.js +27 -29
  488. package/esm/parts/RowVariants/RowVariantSecondary.js.map +7 -0
  489. package/esm/parts/RowVariants/index.js +26 -65
  490. package/esm/parts/RowVariants/index.js.map +7 -0
  491. package/esm/parts/RowVariants/types.js +2 -1
  492. package/esm/parts/RowVariants/types.js.map +7 -0
  493. package/esm/parts/Rows.js +41 -61
  494. package/esm/parts/Rows.js.map +7 -0
  495. package/esm/parts/SortByCaret.js +15 -22
  496. package/esm/parts/SortByCaret.js.map +7 -0
  497. package/esm/parts/SortableHeaderCell.js +14 -29
  498. package/esm/parts/SortableHeaderCell.js.map +7 -0
  499. package/esm/parts/TableContent.js +35 -72
  500. package/esm/parts/TableContent.js.map +7 -0
  501. package/esm/parts/VirtualRowsList.js +40 -78
  502. package/esm/parts/VirtualRowsList.js.map +7 -0
  503. package/esm/parts/index.js +16 -6
  504. package/esm/parts/index.js.map +7 -0
  505. package/esm/prop-types.js +28 -22
  506. package/esm/prop-types.js.map +7 -0
  507. package/esm/redux/reducers/headersReducers/defaults.js +5 -2
  508. package/esm/redux/reducers/headersReducers/defaults.js.map +7 -0
  509. package/esm/redux/reducers/headersReducers/headersReducers.js +12 -11
  510. package/esm/redux/reducers/headersReducers/headersReducers.js.map +7 -0
  511. package/esm/redux/reducers/headersReducers/index.js +4 -2
  512. package/esm/redux/reducers/headersReducers/index.js.map +7 -0
  513. package/esm/redux/reducers/headersReducers/logic.js +13 -24
  514. package/esm/redux/reducers/headersReducers/logic.js.map +7 -0
  515. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js +10 -14
  516. package/esm/redux/reducers/headersReducers/useDispatchHeadersActions.js.map +7 -0
  517. package/esm/redux/reducers/index.js +17 -11
  518. package/esm/redux/reducers/index.js.map +7 -0
  519. package/esm/redux/reducers/rowsReducers/actions_types.js +18 -9
  520. package/esm/redux/reducers/rowsReducers/actions_types.js.map +7 -0
  521. package/esm/redux/reducers/rowsReducers/defaults.js +6 -2
  522. package/esm/redux/reducers/rowsReducers/defaults.js.map +7 -0
  523. package/esm/redux/reducers/rowsReducers/index.js +4 -2
  524. package/esm/redux/reducers/rowsReducers/index.js.map +7 -0
  525. package/esm/redux/reducers/rowsReducers/logic.js +12 -3
  526. package/esm/redux/reducers/rowsReducers/logic.js.map +7 -0
  527. package/esm/redux/reducers/rowsReducers/rowsReducer.js +28 -18
  528. package/esm/redux/reducers/rowsReducers/rowsReducer.js.map +7 -0
  529. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js +26 -15
  530. package/esm/redux/reducers/rowsReducers/useDispatchRowsActions.js.map +7 -0
  531. package/esm/redux/storeConfig.js +6 -4
  532. package/esm/redux/storeConfig.js.map +7 -0
  533. package/esm/styled.js +268 -194
  534. package/esm/styled.js.map +7 -0
  535. package/esm/tests/utils/index.js +90 -0
  536. package/esm/tests/utils/index.js.map +7 -0
  537. package/esm/types/FunctionalHoC.js +2 -1
  538. package/esm/types/FunctionalHoC.js.map +7 -0
  539. package/esm/types/props.js +2 -1
  540. package/esm/types/props.js.map +7 -0
  541. package/package.json +18 -18
  542. package/types/DataTable.d.ts +44 -246
  543. package/types/DataTableContext.d.ts +1 -0
  544. package/types/DataTableSchema.d.ts +43 -245
  545. package/types/configs/useTableColsWithAddons.d.ts +1 -0
  546. package/types/exported-related/RowRenderer/index.d.ts +1 -0
  547. package/types/exported-related/RowRenderer/useRowRendererProperties.d.ts +1 -1
  548. package/types/parts/Cells/Cell.d.ts +1 -0
  549. package/types/parts/Cells/index.d.ts +1 -0
  550. package/types/parts/DropIndicator.d.ts +1 -0
  551. package/types/parts/EmptyContent.d.ts +1 -0
  552. package/types/parts/Footer.d.ts +1 -0
  553. package/types/parts/Headers/index.d.ts +2 -2
  554. package/types/parts/Loader.d.ts +2 -2
  555. package/types/parts/Row.d.ts +3 -2
  556. package/types/parts/RowLoading.d.ts +1 -0
  557. package/types/parts/Rows.d.ts +2 -2
  558. package/types/parts/TableContent.d.ts +1 -0
  559. package/types/parts/VirtualRowsList.d.ts +1 -1
  560. package/types/redux/reducers/index.d.ts +2 -2
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/useHeaderCellConfig.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable complexity */\nimport { TypescriptColumn } from '../../types/props';\nimport { SortableItemContextType } from '../HoC/SortableItemContext';\n\ntype useHeaderCellConfigType = (\n args: {\n column: TypescriptColumn;\n dragAndDropColumns: boolean;\n reduxHeader: { showDnDHandle: boolean };\n isDragOverlay: boolean;\n } & SortableItemContextType,\n) => {\n hasFilter: boolean;\n hasDnD: boolean;\n hasSortingCaret: boolean;\n hasRightIcons: boolean;\n isDragging: boolean;\n shouldShowDnD: boolean;\n hCols: string[];\n};\n\nexport const useHeaderCellConfig: useHeaderCellConfigType = ({\n column,\n dragAndDropColumns,\n draggableProps,\n reduxHeader,\n isDragOverlay,\n}) => {\n const hasFilter = !!(column.filter || column.Filter);\n\n const hasDnD = dragAndDropColumns && !column.disableDnD;\n\n const hasSortingCaret = column.canSort && typeof column.isSortedDesc === 'boolean';\n\n const hasRightIcons = !isDragOverlay && (hasSortingCaret || hasFilter);\n\n const isDragging = draggableProps && draggableProps.isDragging;\n\n const shouldShowDnD =\n hasDnD &&\n ((reduxHeader?.showDnDHandle && draggableProps && !draggableProps.active) ||\n (draggableProps && draggableProps.isDragging) ||\n isDragOverlay);\n\n // Column definition\n const hCols = ['auto'];\n if (hasRightIcons) hCols.push('min-content');\n if (shouldShowDnD) hCols.unshift('min-content');\n\n return {\n hasFilter,\n hasDnD,\n hasSortingCaret,\n hasRightIcons,\n isDragging,\n hCols,\n shouldShowDnD,\n };\n};\n"],
5
+ "mappings": "AAAA;ACqBO,MAAM,sBAA+C,CAAC;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MACI;AACJ,QAAM,YAAY,CAAC,CAAE,QAAO,UAAU,OAAO;AAE7C,QAAM,SAAS,sBAAsB,CAAC,OAAO;AAE7C,QAAM,kBAAkB,OAAO,WAAW,OAAO,OAAO,iBAAiB;AAEzE,QAAM,gBAAgB,CAAC,iBAAkB,oBAAmB;AAE5D,QAAM,aAAa,kBAAkB,eAAe;AAEpD,QAAM,gBACJ,UACE,cAAa,iBAAiB,kBAAkB,CAAC,eAAe,UAC/D,kBAAkB,eAAe,cAClC;AAGJ,QAAM,QAAQ,CAAC;AACf,MAAI;AAAe,UAAM,KAAK;AAC9B,MAAI;AAAe,UAAM,QAAQ;AAEjC,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,45 +1,28 @@
1
- import 'core-js/modules/esnext.async-iterator.filter.js';
2
- import 'core-js/modules/esnext.iterator.constructor.js';
3
- import 'core-js/modules/esnext.iterator.filter.js';
4
- import 'core-js/modules/esnext.async-iterator.for-each.js';
5
- import 'core-js/modules/esnext.iterator.for-each.js';
6
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
7
- import { useCallback } from 'react';
8
-
9
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
10
-
11
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
12
-
13
- const buildNextHeader = function (reduxHeader, value, hasFilter, hasDnD) {
14
- let withTabStops = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
15
- return _objectSpread(_objectSpread({
16
- hideFilterMenu: true
17
- }, reduxHeader), {}, {
18
- hideFilterButton: !(hasFilter && value),
19
- showDnDHandle: hasDnD && value,
20
- withTabStops
21
- });
22
- };
23
-
24
- const useHeaderCellHandlers = _ref => {
25
- let {
26
- hasFilter,
27
- patchHeader,
28
- column,
29
- reduxHeader,
30
- hasDnD,
31
- onColumnSortChange,
32
- dragHandleRef,
33
- filterIconRef,
34
- headerRef
35
- } = _ref;
1
+ import * as React from "react";
2
+ import { useCallback } from "react";
3
+ const buildNextHeader = (reduxHeader, value, hasFilter, hasDnD, withTabStops = false) => ({
4
+ hideFilterMenu: true,
5
+ ...reduxHeader,
6
+ hideFilterButton: !(hasFilter && value),
7
+ showDnDHandle: hasDnD && value,
8
+ withTabStops
9
+ });
10
+ const useHeaderCellHandlers = ({
11
+ hasFilter,
12
+ patchHeader,
13
+ column,
14
+ reduxHeader,
15
+ hasDnD,
16
+ onColumnSortChange,
17
+ dragHandleRef,
18
+ filterIconRef,
19
+ headerRef
20
+ }) => {
36
21
  const onMouseEnter = useCallback(() => {
37
22
  patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));
38
23
  }, [column.id, hasDnD, hasFilter, patchHeader, reduxHeader]);
39
24
  const onMouseLeave = useCallback(() => {
40
- var _headerRef$current;
41
-
42
- if (!(headerRef !== null && headerRef !== void 0 && (_headerRef$current = headerRef.current) !== null && _headerRef$current !== void 0 && _headerRef$current.contains(document.activeElement))) {
25
+ if (!headerRef?.current?.contains(document.activeElement)) {
43
26
  patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));
44
27
  }
45
28
  }, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);
@@ -47,51 +30,58 @@ const useHeaderCellHandlers = _ref => {
47
30
  if (column.canSort) {
48
31
  onColumnSortChange({
49
32
  column: column.id,
50
- direction: column.isSortedDesc ? 'ASC' : 'DESC'
33
+ direction: column.isSortedDesc ? "ASC" : "DESC"
51
34
  });
52
35
  }
53
36
  }, [column.canSort, column.id, column.isSortedDesc, onColumnSortChange]);
54
- const onKeyDown = useCallback(e => {
55
- if (e.code === 'ArrowDown' && column.canSort) {
37
+ const onKeyDown = useCallback((e) => {
38
+ if (e.code === "ArrowDown" && column.canSort) {
56
39
  e.preventDefault();
57
40
  onColumnSortChange({
58
41
  column: column.id,
59
- direction: 'DESC'
42
+ direction: "DESC"
60
43
  });
61
- } else if (e.code === 'ArrowUp' && column.canSort) {
44
+ } else if (e.code === "ArrowUp" && column.canSort) {
62
45
  e.preventDefault();
63
46
  onColumnSortChange({
64
47
  column: column.id,
65
- direction: 'ASC'
48
+ direction: "ASC"
66
49
  });
67
- } else if (['Enter', 'Space'].includes(e.code)) {
68
- patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD, true)); // Elements don't not yet exist
69
-
50
+ } else if (["Enter", "Space"].includes(e.code)) {
51
+ patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD, true));
70
52
  setTimeout(() => {
71
- if (dragHandleRef.current) dragHandleRef.current.focus();else if (filterIconRef.current) filterIconRef.current.focus();
53
+ if (dragHandleRef.current)
54
+ dragHandleRef.current.focus();
55
+ else if (filterIconRef.current)
56
+ filterIconRef.current.focus();
72
57
  });
73
58
  }
74
- }, [column.canSort, column.id, onColumnSortChange, patchHeader, reduxHeader, hasFilter, hasDnD, dragHandleRef, filterIconRef]);
75
- const onFocus = useCallback(e => {
76
- // Don't do anything if focus wasn't placed in the element (bubling issues)
77
- if (e.target === (headerRef === null || headerRef === void 0 ? void 0 : headerRef.current)) {
59
+ }, [
60
+ column.canSort,
61
+ column.id,
62
+ onColumnSortChange,
63
+ patchHeader,
64
+ reduxHeader,
65
+ hasFilter,
66
+ hasDnD,
67
+ dragHandleRef,
68
+ filterIconRef
69
+ ]);
70
+ const onFocus = useCallback((e) => {
71
+ if (e.target === headerRef?.current) {
78
72
  patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));
79
73
  }
80
74
  }, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);
81
- const onBlur = useCallback(e => {
82
- // Don't do anything if blur was caused by going to a child
83
- if (e.relatedTarget === dragHandleRef.current) return;
84
- if (e.relatedTarget === filterIconRef.current) return;
75
+ const onBlur = useCallback((e) => {
76
+ if (e.relatedTarget === dragHandleRef.current)
77
+ return;
78
+ if (e.relatedTarget === filterIconRef.current)
79
+ return;
85
80
  patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));
86
81
  }, [dragHandleRef, filterIconRef, patchHeader, column.id, reduxHeader, hasFilter, hasDnD]);
87
- return {
88
- onMouseEnter,
89
- onMouseLeave,
90
- onClick,
91
- onKeyDown,
92
- onBlur,
93
- onFocus
94
- };
82
+ return { onMouseEnter, onMouseLeave, onClick, onKeyDown, onBlur, onFocus };
83
+ };
84
+ export {
85
+ useHeaderCellHandlers
95
86
  };
96
-
97
- export { useHeaderCellHandlers };
87
+ //# sourceMappingURL=useHeaderCellHandlers.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/Headers/useHeaderCellHandlers.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-params */\nimport { useCallback } from 'react';\nimport { TypescriptColumn } from '../../types/props';\n\ntype useHeaderCellHandlersType = (args: {\n hasFilter: boolean;\n patchHeader: (headerId: string, newHeader: Record<string, unknown>) => void;\n column: TypescriptColumn;\n reduxHeader: Record<string, unknown>;\n hasDnD: boolean;\n onColumnSortChange: (newSort: { column: string; direction: 'ASC' | 'DESC' }) => void;\n dragHandleRef: React.MutableRefObject<HTMLDivElement>;\n filterIconRef: React.MutableRefObject<HTMLDivElement>;\n headerRef: React.MutableRefObject<HTMLTableColElement>;\n}) => {\n onMouseEnter: React.MouseEventHandler;\n onMouseLeave: React.MouseEventHandler;\n onClick: React.MouseEventHandler;\n onKeyDown: React.KeyboardEventHandler;\n onFocus: React.FocusEventHandler;\n onBlur: React.FocusEventHandler;\n};\n\nconst buildNextHeader = (\n reduxHeader: Record<string, unknown>,\n value: boolean,\n hasFilter: boolean,\n hasDnD: boolean,\n withTabStops = false,\n) => ({\n hideFilterMenu: true, // Do this to overwrite it if it exists\n ...reduxHeader,\n hideFilterButton: !(hasFilter && value),\n showDnDHandle: hasDnD && value,\n withTabStops,\n});\n\nexport const useHeaderCellHandlers: useHeaderCellHandlersType = ({\n hasFilter,\n patchHeader,\n column,\n reduxHeader,\n hasDnD,\n onColumnSortChange,\n dragHandleRef,\n filterIconRef,\n headerRef,\n}) => {\n const onMouseEnter: React.MouseEventHandler = useCallback(() => {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));\n }, [column.id, hasDnD, hasFilter, patchHeader, reduxHeader]);\n\n const onMouseLeave: React.MouseEventHandler = useCallback(() => {\n if (!headerRef?.current?.contains(document.activeElement)) {\n patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));\n }\n }, [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader]);\n\n const onClick: React.MouseEventHandler = useCallback(() => {\n if (column.canSort) {\n onColumnSortChange({\n column: column.id,\n direction: column.isSortedDesc ? 'ASC' : 'DESC',\n });\n }\n }, [column.canSort, column.id, column.isSortedDesc, onColumnSortChange]);\n\n const onKeyDown: React.KeyboardEventHandler = useCallback(\n (e) => {\n if (e.code === 'ArrowDown' && column.canSort) {\n e.preventDefault();\n onColumnSortChange({\n column: column.id,\n direction: 'DESC',\n });\n } else if (e.code === 'ArrowUp' && column.canSort) {\n e.preventDefault();\n onColumnSortChange({\n column: column.id,\n direction: 'ASC',\n });\n } else if (['Enter', 'Space'].includes(e.code)) {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD, true));\n // Elements don't not yet exist\n setTimeout(() => {\n if (dragHandleRef.current) dragHandleRef.current.focus();\n else if (filterIconRef.current) filterIconRef.current.focus();\n });\n }\n },\n [\n column.canSort,\n column.id,\n onColumnSortChange,\n patchHeader,\n reduxHeader,\n hasFilter,\n hasDnD,\n dragHandleRef,\n filterIconRef,\n ],\n );\n\n const onFocus: React.FocusEventHandler = useCallback(\n (e) => {\n // Don't do anything if focus wasn't placed in the element (bubling issues)\n if (e.target === headerRef?.current) {\n patchHeader(column.id, buildNextHeader(reduxHeader, true, hasFilter, hasDnD));\n }\n },\n [column.id, hasDnD, hasFilter, headerRef, patchHeader, reduxHeader],\n );\n\n const onBlur: React.FocusEventHandler = useCallback(\n (e) => {\n // Don't do anything if blur was caused by going to a child\n if (e.relatedTarget === dragHandleRef.current) return;\n if (e.relatedTarget === filterIconRef.current) return;\n patchHeader(column.id, buildNextHeader(reduxHeader, false, hasFilter, hasDnD));\n },\n [dragHandleRef, filterIconRef, patchHeader, column.id, reduxHeader, hasFilter, hasDnD],\n );\n\n return { onMouseEnter, onMouseLeave, onClick, onKeyDown, onBlur, onFocus };\n};\n"],
5
+ "mappings": "AAAA;ACCA;AAsBA,MAAM,kBAAkB,CACtB,aACA,OACA,WACA,QACA,eAAe,UACX;AAAA,EACJ,gBAAgB;AAAA,KACb;AAAA,EACH,kBAAkB,CAAE,cAAa;AAAA,EACjC,eAAe,UAAU;AAAA,EACzB;AAAA;AAGK,MAAM,wBAAmD,CAAC;AAAA,EAC/D;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,MACI;AACJ,QAAM,eAAwC,YAAY,MAAM;AAC9D,gBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW;AAAA,KACpE,CAAC,OAAO,IAAI,QAAQ,WAAW,aAAa;AAE/C,QAAM,eAAwC,YAAY,MAAM;AAC9D,QAAI,CAAC,WAAW,SAAS,SAAS,SAAS,gBAAgB;AACzD,kBAAY,OAAO,IAAI,gBAAgB,aAAa,OAAO,WAAW;AAAA;AAAA,KAEvE,CAAC,OAAO,IAAI,QAAQ,WAAW,WAAW,aAAa;AAE1D,QAAM,UAAmC,YAAY,MAAM;AACzD,QAAI,OAAO,SAAS;AAClB,yBAAmB;AAAA,QACjB,QAAQ,OAAO;AAAA,QACf,WAAW,OAAO,eAAe,QAAQ;AAAA;AAAA;AAAA,KAG5C,CAAC,OAAO,SAAS,OAAO,IAAI,OAAO,cAAc;AAEpD,QAAM,YAAwC,YAC5C,CAAC,MAAM;AACL,QAAI,EAAE,SAAS,eAAe,OAAO,SAAS;AAC5C,QAAE;AACF,yBAAmB;AAAA,QACjB,QAAQ,OAAO;AAAA,QACf,WAAW;AAAA;AAAA,eAEJ,EAAE,SAAS,aAAa,OAAO,SAAS;AACjD,QAAE;AACF,yBAAmB;AAAA,QACjB,QAAQ,OAAO;AAAA,QACf,WAAW;AAAA;AAAA,eAEJ,CAAC,SAAS,SAAS,SAAS,EAAE,OAAO;AAC9C,kBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW,QAAQ;AAE7E,iBAAW,MAAM;AACf,YAAI,cAAc;AAAS,wBAAc,QAAQ;AAAA,iBACxC,cAAc;AAAS,wBAAc,QAAQ;AAAA;AAAA;AAAA,KAI5D;AAAA,IACE,OAAO;AAAA,IACP,OAAO;AAAA,IACP;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAIJ,QAAM,UAAmC,YACvC,CAAC,MAAM;AAEL,QAAI,EAAE,WAAW,WAAW,SAAS;AACnC,kBAAY,OAAO,IAAI,gBAAgB,aAAa,MAAM,WAAW;AAAA;AAAA,KAGzE,CAAC,OAAO,IAAI,QAAQ,WAAW,WAAW,aAAa;AAGzD,QAAM,SAAkC,YACtC,CAAC,MAAM;AAEL,QAAI,EAAE,kBAAkB,cAAc;AAAS;AAC/C,QAAI,EAAE,kBAAkB,cAAc;AAAS;AAC/C,gBAAY,OAAO,IAAI,gBAAgB,aAAa,OAAO,WAAW;AAAA,KAExE,CAAC,eAAe,eAAe,aAAa,OAAO,IAAI,aAAa,WAAW;AAGjF,SAAO,EAAE,cAAc,cAAc,SAAS,WAAW,QAAQ;AAAA;",
6
+ "names": []
7
+ }
@@ -1,17 +1,17 @@
1
- import { createContext } from 'react';
2
-
3
- let DropIndicatorPosition;
4
-
5
- (function (DropIndicatorPosition) {
6
- DropIndicatorPosition[DropIndicatorPosition["None"] = 0] = "None";
7
- DropIndicatorPosition[DropIndicatorPosition["Before"] = 1] = "Before";
8
- DropIndicatorPosition[DropIndicatorPosition["After"] = 2] = "After";
9
- DropIndicatorPosition[DropIndicatorPosition["Inside"] = 3] = "Inside";
10
- })(DropIndicatorPosition || (DropIndicatorPosition = {}));
11
-
12
- /** Context for cross component communication */
13
- const SortableItemContext = /*#__PURE__*/createContext({
1
+ import * as React from "react";
2
+ import { createContext } from "react";
3
+ var DropIndicatorPosition = /* @__PURE__ */ ((DropIndicatorPosition2) => {
4
+ DropIndicatorPosition2[DropIndicatorPosition2["None"] = 0] = "None";
5
+ DropIndicatorPosition2[DropIndicatorPosition2["Before"] = 1] = "Before";
6
+ DropIndicatorPosition2[DropIndicatorPosition2["After"] = 2] = "After";
7
+ DropIndicatorPosition2[DropIndicatorPosition2["Inside"] = 3] = "Inside";
8
+ return DropIndicatorPosition2;
9
+ })(DropIndicatorPosition || {});
10
+ const SortableItemContext = createContext({
14
11
  draggableProps: false
15
12
  });
16
-
17
- export { DropIndicatorPosition, SortableItemContext };
13
+ export {
14
+ DropIndicatorPosition,
15
+ SortableItemContext
16
+ };
17
+ //# sourceMappingURL=SortableItemContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/SortableItemContext.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useSortable } from '@dnd-kit/sortable';\nimport { createContext } from 'react';\n\nexport enum DropIndicatorPosition {\n None = 0,\n Before = 1,\n After = 2,\n Inside = 3,\n}\n\nexport type SortableItemContextType = {\n draggableProps:\n | false\n | (ReturnType<typeof useSortable> & {\n dropIndicatorPosition: DropIndicatorPosition;\n shouldShowDropIndicatorPosition: boolean;\n lastActiveId?: string;\n setLastActiveId?: React.Dispatch<React.SetStateAction<string>>;\n });\n};\n\n/** Context for cross component communication */\nexport const SortableItemContext = createContext<SortableItemContextType>({\n draggableProps: false,\n});\n"],
5
+ "mappings": "AAAA;ACCA;AAEO,IAAK,wBAAL,kBAAK,2BAAL;AACL,0DAAO,KAAP;AACA,4DAAS,KAAT;AACA,2DAAQ,KAAR;AACA,4DAAS,KAAT;AAJU;AAAA;AAmBL,MAAM,sBAAsB,cAAuC;AAAA,EACxE,gBAAgB;AAAA;",
6
+ "names": []
7
+ }
@@ -1,100 +1,64 @@
1
- import 'core-js/modules/esnext.async-iterator.filter.js';
2
- import 'core-js/modules/esnext.iterator.filter.js';
3
- import _jsx from '@babel/runtime/helpers/esm/jsx';
4
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
5
- import 'core-js/modules/esnext.async-iterator.for-each.js';
6
- import 'core-js/modules/esnext.iterator.constructor.js';
7
- import 'core-js/modules/esnext.iterator.for-each.js';
8
- import 'core-js/modules/web.dom-collections.iterator.js';
9
- import 'core-js/modules/esnext.async-iterator.find.js';
10
- import 'core-js/modules/esnext.iterator.find.js';
11
- import React, { useMemo, useCallback, createContext } from 'react';
12
- import { DndContext, DragOverlay } from '@dnd-kit/core';
13
- import { useHierarchyDndkitConfig } from '@elliemae/ds-drag-and-drop';
14
- import { arrayMove } from '@dnd-kit/sortable';
15
- import DataTableContext from '../../DataTableContext.js';
16
- import { HeaderCellGroup } from '../Headers/HeaderCellGroup.js';
17
- import { DATA_TESTID } from '../../configs/constants.js';
18
- import { jsxs, jsx } from 'react/jsx-runtime';
19
-
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
- const DnDGroupContext = /*#__PURE__*/createContext({
24
- activeIndex: undefined
1
+ import * as React from "react";
2
+ import React2, { createContext, useCallback, useMemo } from "react";
3
+ import { DndContext, DragOverlay } from "@dnd-kit/core";
4
+ import { useHierarchyDndkitConfig } from "@elliemae/ds-drag-and-drop";
5
+ import { arrayMove } from "@dnd-kit/sortable";
6
+ import { DataTableContext } from "../../DataTableContext";
7
+ import { HeaderCellGroup } from "../Headers/HeaderCellGroup";
8
+ import { DATA_TESTID } from "../../configs/constants";
9
+ const DnDGroupContext = createContext({
10
+ activeIndex: void 0
25
11
  });
26
-
27
- const flattenColumns = cols => {
12
+ const flattenColumns = (cols) => {
28
13
  const flattened = [];
29
-
30
- const flatten = function (col, index) {
31
- let parentId = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
32
- const {
33
- id
34
- } = col;
35
- flattened.push([{
36
- id,
37
- parentId,
38
- index
39
- }, col]);
40
- if (col.columns) col.columns.forEach((subColumn, childIndex) => flatten(subColumn, childIndex, id));
14
+ const flatten = (col, index, parentId = null) => {
15
+ const { id } = col;
16
+ flattened.push([{ id, parentId, index }, col]);
17
+ if (col.columns)
18
+ col.columns.forEach((subColumn, childIndex) => flatten(subColumn, childIndex, id));
41
19
  };
42
-
43
20
  cols.forEach((col, index) => flatten(col, index));
44
21
  return flattened;
45
- }; // only wraps in "DnDContext" and "DnDGroupContext" if any Drag and Drop functionality is requested
46
-
47
-
48
- const withConditionalDnDColumnContext = Component => props => {
22
+ };
23
+ const withConditionalDnDColumnContext = (Component) => (props) => {
49
24
  const {
50
- tableProps: {
51
- dragAndDropColumns,
52
- onColumnsReorder
53
- },
25
+ tableProps: { dragAndDropColumns, onColumnsReorder },
54
26
  visibleColumns
55
- } = React.useContext(DataTableContext);
27
+ } = React2.useContext(DataTableContext);
56
28
  const flattenedItems = useMemo(() => flattenColumns(visibleColumns), [visibleColumns]);
57
29
  const onReorder = useCallback((movedItem, indexes) => {
58
- // Send from index to target index
59
- const newFlattenedData = arrayMove(flattenedItems, indexes.fromIndex, indexes.targetIndex); // Pull the cols's data into an object
60
-
30
+ const newFlattenedData = arrayMove(flattenedItems, indexes.fromIndex, indexes.targetIndex);
61
31
  const nodes = {};
62
- newFlattenedData.forEach(_ref => {
63
- let [dndData, colData] = _ref;
32
+ newFlattenedData.forEach(([dndData, colData]) => {
64
33
  delete colData.columns;
65
34
  nodes[dndData.id] = colData;
66
35
  });
67
36
  const newData = [];
68
- newFlattenedData.forEach(_ref2 => {
69
- let [dndData, colData] = _ref2;
70
-
71
- // If row has parent, insert it to it's subrows
72
- // otherwise append it to the new user data
37
+ newFlattenedData.forEach(([dndData, colData]) => {
73
38
  if (dndData.parentId) {
74
39
  const parentNode = nodes[dndData.parentId];
75
- if (parentNode.columns) parentNode.columns.push(colData);else parentNode.columns = [colData];
76
- } else newData.push(colData);
40
+ if (parentNode.columns)
41
+ parentNode.columns.push(colData);
42
+ else
43
+ parentNode.columns = [colData];
44
+ } else
45
+ newData.push(colData);
77
46
  });
78
47
  onColumnsReorder(newData, indexes);
79
48
  }, [flattenedItems, onColumnsReorder]);
80
49
  const onPreviewResetState = useCallback(() => {
81
- const el = document.body.querySelector("[data-testid=\"".concat(DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER, "\"]"));
82
- if (el) el.onscroll = () => null;
50
+ const el = document.body.querySelector(`[data-testid="${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`);
51
+ if (el)
52
+ el.onscroll = () => null;
83
53
  }, []);
84
54
  const onPreviewDragStart = useCallback(() => {
85
- const el = document.body.querySelector("[data-testid=\"".concat(DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER, "\"]"));
86
-
55
+ const el = document.body.querySelector(`[data-testid="${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}"]`);
87
56
  if (el) {
88
57
  const y = el.scrollTop;
89
-
90
58
  el.onscroll = () => el.scrollTo(0, y);
91
59
  }
92
60
  }, []);
93
- const {
94
- dndContextProps,
95
- activeId,
96
- activeIndex
97
- } = useHierarchyDndkitConfig({
61
+ const { dndContextProps, activeId, activeIndex } = useHierarchyDndkitConfig({
98
62
  flattenedItems,
99
63
  dragOverlayDataTestid: DATA_TESTID.DATA_TABLE_COLUMN_DRAG_OVERLAY,
100
64
  isHorizontalDnD: true,
@@ -102,20 +66,23 @@ const withConditionalDnDColumnContext = Component => props => {
102
66
  onPreviewResetState,
103
67
  onPreviewDragStart
104
68
  });
105
- if (dragAndDropColumns) return /*#__PURE__*/jsxs(DndContext, _objectSpread(_objectSpread({}, dndContextProps), {}, {
106
- children: [/*#__PURE__*/_jsx(DnDGroupContext.Provider, {
107
- value: {
108
- activeIndex
109
- }
110
- }, void 0, /*#__PURE__*/jsx(Component, _objectSpread({}, props))), /*#__PURE__*/_jsx(DragOverlay, {}, void 0, activeId ? /*#__PURE__*/_jsx(HeaderCellGroup, {
111
- header: flattenedItems.find(_ref3 => {
112
- let [item] = _ref3;
113
- return item.id === activeId;
114
- })[1],
69
+ if (dragAndDropColumns)
70
+ return /* @__PURE__ */ React2.createElement(DndContext, {
71
+ ...dndContextProps
72
+ }, /* @__PURE__ */ React2.createElement(DnDGroupContext.Provider, {
73
+ value: { activeIndex }
74
+ }, /* @__PURE__ */ React2.createElement(Component, {
75
+ ...props
76
+ })), /* @__PURE__ */ React2.createElement(DragOverlay, null, activeId ? /* @__PURE__ */ React2.createElement(HeaderCellGroup, {
77
+ header: flattenedItems.find(([item]) => item.id === activeId)[1],
115
78
  isDragOverlay: true
116
- }) : null)]
117
- }));
118
- return /*#__PURE__*/jsx(Component, _objectSpread({}, props));
79
+ }) : null));
80
+ return /* @__PURE__ */ React2.createElement(Component, {
81
+ ...props
82
+ });
83
+ };
84
+ export {
85
+ DnDGroupContext,
86
+ withConditionalDnDColumnContext
119
87
  };
120
-
121
- export { DnDGroupContext, withConditionalDnDColumnContext };
88
+ //# sourceMappingURL=withConditionalDnDColumnContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withConditionalDnDColumnContext.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-underscore-dangle */\n/* eslint-disable max-params */\nimport React, { createContext, useCallback, useMemo } from 'react';\nimport { DndContext, DragOverlay } from '@dnd-kit/core';\nimport { useHierarchyDndkitConfig } from '@elliemae/ds-drag-and-drop';\nimport { arrayMove } from '@dnd-kit/sortable';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { DataTableContext } from '../../DataTableContext';\nimport { Item } from '../../helpers/dndkit/hierarchy/types';\nimport { TypescriptColumn } from '../../types/props';\nimport { HeaderCellGroup } from '../Headers/HeaderCellGroup';\nimport { DATA_TESTID } from '../../configs/constants';\n\ntype DnDGroupContextType = {\n activeIndex: number;\n};\n\nexport const DnDGroupContext = createContext<DnDGroupContextType>({\n activeIndex: undefined,\n});\n\nconst flattenColumns = (cols: TypescriptColumn[]) => {\n const flattened = [];\n const flatten = (col: TypescriptColumn, index, parentId = null) => {\n const { id } = col;\n flattened.push([{ id, parentId, index }, col]);\n if (col.columns)\n col.columns.forEach((subColumn: TypescriptColumn, childIndex: number) => flatten(subColumn, childIndex, id));\n };\n cols.forEach((col, index) => flatten(col, index));\n return flattened;\n};\n\n// only wraps in \"DnDContext\" and \"DnDGroupContext\" if any Drag and Drop functionality is requested\nexport const withConditionalDnDColumnContext: FunctionalHOC = (Component) => (props) => {\n const {\n tableProps: { dragAndDropColumns, onColumnsReorder },\n visibleColumns,\n } = React.useContext(DataTableContext);\n\n const flattenedItems = useMemo(() => flattenColumns(visibleColumns), [visibleColumns]);\n\n const onReorder = useCallback(\n (movedItem: Item, indexes: { targetIndex: number; fromIndex: number }) => {\n // Send from index to target index\n const newFlattenedData = arrayMove(flattenedItems, indexes.fromIndex, indexes.targetIndex);\n // Pull the cols's data into an object\n const nodes = {};\n newFlattenedData.forEach(([dndData, colData]) => {\n delete colData.columns;\n nodes[dndData.id] = colData;\n });\n const newData = [];\n newFlattenedData.forEach(([dndData, colData]) => {\n // If row has parent, insert it to it's subrows\n // otherwise append it to the new user data\n if (dndData.parentId) {\n const parentNode = nodes[dndData.parentId];\n if (parentNode.columns) parentNode.columns.push(colData);\n else parentNode.columns = [colData];\n } else newData.push(colData);\n });\n onColumnsReorder(newData, indexes);\n },\n [flattenedItems, onColumnsReorder],\n );\n\n const onPreviewResetState = useCallback(() => {\n const el: HTMLDivElement | null = document.body.querySelector(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}\"]`,\n );\n if (el) el.onscroll = () => null;\n }, []);\n\n const onPreviewDragStart = useCallback(() => {\n const el: HTMLDivElement | null = document.body.querySelector(\n `[data-testid=\"${DATA_TESTID.DATA_TABLE_SCROLLABLE_CONTAINER}\"]`,\n );\n if (el) {\n const y = el.scrollTop;\n el.onscroll = () => el.scrollTo(0, y);\n }\n }, []);\n\n const { dndContextProps, activeId, activeIndex } = useHierarchyDndkitConfig({\n flattenedItems,\n dragOverlayDataTestid: DATA_TESTID.DATA_TABLE_COLUMN_DRAG_OVERLAY,\n isHorizontalDnD: true,\n onReorder,\n onPreviewResetState,\n onPreviewDragStart,\n });\n\n if (dragAndDropColumns)\n return (\n <DndContext {...dndContextProps}>\n <DnDGroupContext.Provider value={{ activeIndex }}>\n <Component {...props} />\n </DnDGroupContext.Provider>\n <DragOverlay>\n {activeId ? (\n <HeaderCellGroup header={flattenedItems.find(([item]) => item.id === activeId)[1]} isDragOverlay />\n ) : null}\n </DragOverlay>\n </DndContext>\n );\n return <Component {...props} />;\n};\n"],
5
+ "mappings": "AAAA;ACEA;AACA;AACA;AACA;AAEA;AAGA;AACA;AAMO,MAAM,kBAAkB,cAAmC;AAAA,EAChE,aAAa;AAAA;AAGf,MAAM,iBAAiB,CAAC,SAA6B;AACnD,QAAM,YAAY;AAClB,QAAM,UAAU,CAAC,KAAuB,OAAO,WAAW,SAAS;AACjE,UAAM,EAAE,OAAO;AACf,cAAU,KAAK,CAAC,EAAE,IAAI,UAAU,SAAS;AACzC,QAAI,IAAI;AACN,UAAI,QAAQ,QAAQ,CAAC,WAA6B,eAAuB,QAAQ,WAAW,YAAY;AAAA;AAE5G,OAAK,QAAQ,CAAC,KAAK,UAAU,QAAQ,KAAK;AAC1C,SAAO;AAAA;AAIF,MAAM,kCAAiD,CAAC,cAAc,CAAC,UAAU;AACtF,QAAM;AAAA,IACJ,YAAY,EAAE,oBAAoB;AAAA,IAClC;AAAA,MACE,OAAM,WAAW;AAErB,QAAM,iBAAiB,QAAQ,MAAM,eAAe,iBAAiB,CAAC;AAEtE,QAAM,YAAY,YAChB,CAAC,WAAiB,YAAwD;AAExE,UAAM,mBAAmB,UAAU,gBAAgB,QAAQ,WAAW,QAAQ;AAE9E,UAAM,QAAQ;AACd,qBAAiB,QAAQ,CAAC,CAAC,SAAS,aAAa;AAC/C,aAAO,QAAQ;AACf,YAAM,QAAQ,MAAM;AAAA;AAEtB,UAAM,UAAU;AAChB,qBAAiB,QAAQ,CAAC,CAAC,SAAS,aAAa;AAG/C,UAAI,QAAQ,UAAU;AACpB,cAAM,aAAa,MAAM,QAAQ;AACjC,YAAI,WAAW;AAAS,qBAAW,QAAQ,KAAK;AAAA;AAC3C,qBAAW,UAAU,CAAC;AAAA;AACtB,gBAAQ,KAAK;AAAA;AAEtB,qBAAiB,SAAS;AAAA,KAE5B,CAAC,gBAAgB;AAGnB,QAAM,sBAAsB,YAAY,MAAM;AAC5C,UAAM,KAA4B,SAAS,KAAK,cAC9C,iBAAiB,YAAY;AAE/B,QAAI;AAAI,SAAG,WAAW,MAAM;AAAA,KAC3B;AAEH,QAAM,qBAAqB,YAAY,MAAM;AAC3C,UAAM,KAA4B,SAAS,KAAK,cAC9C,iBAAiB,YAAY;AAE/B,QAAI,IAAI;AACN,YAAM,IAAI,GAAG;AACb,SAAG,WAAW,MAAM,GAAG,SAAS,GAAG;AAAA;AAAA,KAEpC;AAEH,QAAM,EAAE,iBAAiB,UAAU,gBAAgB,yBAAyB;AAAA,IAC1E;AAAA,IACA,uBAAuB,YAAY;AAAA,IACnC,iBAAiB;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA;AAGF,MAAI;AACF,WACE,qCAAC,YAAD;AAAA,SAAgB;AAAA,OACd,qCAAC,gBAAgB,UAAjB;AAAA,MAA0B,OAAO,EAAE;AAAA,OACjC,qCAAC,WAAD;AAAA,SAAe;AAAA,SAEjB,qCAAC,aAAD,MACG,WACC,qCAAC,iBAAD;AAAA,MAAiB,QAAQ,eAAe,KAAK,CAAC,CAAC,UAAU,KAAK,OAAO,UAAU;AAAA,MAAI,eAAa;AAAA,SAC9F;AAIZ,SAAO,qCAAC,WAAD;AAAA,OAAe;AAAA;AAAA;",
6
+ "names": []
7
+ }
@@ -1,74 +1,46 @@
1
- import 'core-js/modules/esnext.async-iterator.filter.js';
2
- import 'core-js/modules/esnext.iterator.filter.js';
3
- import _jsx from '@babel/runtime/helpers/esm/jsx';
4
- import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
5
- import 'core-js/modules/web.dom-collections.iterator.js';
6
- import 'core-js/modules/esnext.async-iterator.for-each.js';
7
- import 'core-js/modules/esnext.iterator.constructor.js';
8
- import 'core-js/modules/esnext.iterator.for-each.js';
9
- import 'core-js/modules/esnext.async-iterator.find.js';
10
- import 'core-js/modules/esnext.iterator.find.js';
11
- import React, { createContext, useCallback } from 'react';
12
- import { DndContext, DragOverlay } from '@dnd-kit/core';
13
- import { SortableContext } from '@dnd-kit/sortable';
14
- import DataTableContext from '../../DataTableContext.js';
15
- import { useTreeDndkitConfig } from '@elliemae/ds-drag-and-drop';
16
- import { DropIndicatorPosition } from './SortableItemContext.js';
17
- import { Row } from '../Row.js';
18
- import { jsxs, jsx } from 'react/jsx-runtime';
19
-
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
- const DnDTreeContext = /*#__PURE__*/createContext({
24
- depth: undefined,
25
- activeIndex: undefined,
26
- visibleItems: undefined,
1
+ import * as React from "react";
2
+ import React2, { createContext, useCallback } from "react";
3
+ import { DndContext, DragOverlay } from "@dnd-kit/core";
4
+ import { SortableContext } from "@dnd-kit/sortable";
5
+ import { DataTableContext } from "../../DataTableContext";
6
+ import { useTreeDndkitConfig } from "@elliemae/ds-drag-and-drop";
7
+ import { DropIndicatorPosition } from "./SortableItemContext";
8
+ import { Row } from "../Row";
9
+ const DnDTreeContext = createContext({
10
+ depth: void 0,
11
+ activeIndex: void 0,
12
+ visibleItems: void 0,
27
13
  dropIndicatorPosition: DropIndicatorPosition.None,
28
- lastActiveId: undefined,
29
- setLastActiveId: undefined
30
- }); // only wraps in "DnDContext" and "DnDTreeContext" if any Drag and Drop functionality is requested
31
-
32
- const withConditionalDnDRowContext = Component => props => {
14
+ lastActiveId: void 0,
15
+ setLastActiveId: void 0
16
+ });
17
+ const withConditionalDnDRowContext = (Component) => (props) => {
33
18
  const {
34
- tableProps: {
35
- dragAndDropRows,
36
- isExpandable,
37
- onRowsReorder,
38
- maxDragAndDropLevel
39
- },
19
+ tableProps: { dragAndDropRows, isExpandable, onRowsReorder, maxDragAndDropLevel },
40
20
  flattenedData,
41
21
  allDataFlattened
42
- } = React.useContext(DataTableContext);
43
- const [lastActiveId, setLastActiveId] = React.useState(null);
22
+ } = React2.useContext(DataTableContext);
23
+ const [lastActiveId, setLastActiveId] = React2.useState(null);
44
24
  const onReorder = useCallback((newData, indexes, considerExpanding) => {
45
- // Pull the row's original data into an object
46
25
  const nodes = {};
47
- newData.forEach(row => {
26
+ newData.forEach((row) => {
48
27
  delete row.original.subRows;
49
28
  nodes[row.uid] = row.original;
50
29
  });
51
30
  const newUserData = [];
52
- newData.forEach(row => {
53
- // If row has parent, insert it to it's subrows
54
- // otherwise append it to the new user data
31
+ newData.forEach((row) => {
55
32
  if (row.parentId) {
56
33
  const parentNode = nodes[row.parentId];
57
- if (parentNode !== null && parentNode !== void 0 && parentNode.subRows) parentNode.subRows.push(row.original);else parentNode.subRows = [row.original];
58
- } else newUserData.push(row.original);
59
- }); // Tell the user that the order has change, he can chose to commit it or not
60
-
34
+ if (parentNode?.subRows)
35
+ parentNode.subRows.push(row.original);
36
+ else
37
+ parentNode.subRows = [row.original];
38
+ } else
39
+ newUserData.push(row.original);
40
+ });
61
41
  onRowsReorder(newUserData, indexes, considerExpanding);
62
42
  }, [onRowsReorder]);
63
- const {
64
- dndContextProps,
65
- sortableContextProps,
66
- activeId,
67
- activeIndex,
68
- depth,
69
- dropIndicatorPosition,
70
- visibleItems
71
- } = useTreeDndkitConfig({
43
+ const { dndContextProps, sortableContextProps, activeId, activeIndex, depth, dropIndicatorPosition, visibleItems } = useTreeDndkitConfig({
72
44
  flattenedItems: allDataFlattened,
73
45
  visibleItems: flattenedData,
74
46
  isHorizontalDnD: false,
@@ -76,29 +48,36 @@ const withConditionalDnDRowContext = Component => props => {
76
48
  onReorder,
77
49
  maxDragAndDropLevel
78
50
  });
79
- if (lastActiveId !== activeId && activeId) setLastActiveId(activeId);
80
- if (dragAndDropRows) return /*#__PURE__*/jsxs(DndContext, _objectSpread(_objectSpread({}, dndContextProps), {}, {
81
- children: [/*#__PURE__*/jsx(SortableContext, _objectSpread(_objectSpread({}, sortableContextProps), {}, {
82
- children: /*#__PURE__*/_jsx(DnDTreeContext.Provider, {
83
- value: {
84
- activeIndex,
85
- depth,
86
- visibleItems,
87
- dropIndicatorPosition,
88
- lastActiveId,
89
- setLastActiveId
90
- }
91
- }, void 0, /*#__PURE__*/jsx(Component, _objectSpread({}, props)))
92
- })), /*#__PURE__*/_jsx(DragOverlay, {
93
- style: {
94
- width: 'auto'
51
+ if (lastActiveId !== activeId && activeId)
52
+ setLastActiveId(activeId);
53
+ if (dragAndDropRows)
54
+ return /* @__PURE__ */ React2.createElement(DndContext, {
55
+ ...dndContextProps
56
+ }, /* @__PURE__ */ React2.createElement(SortableContext, {
57
+ ...sortableContextProps
58
+ }, /* @__PURE__ */ React2.createElement(DnDTreeContext.Provider, {
59
+ value: {
60
+ activeIndex,
61
+ depth,
62
+ visibleItems,
63
+ dropIndicatorPosition,
64
+ lastActiveId,
65
+ setLastActiveId
95
66
  }
96
- }, void 0, activeId ? /*#__PURE__*/_jsx(Row, {
97
- row: flattenedData.find(row => row.uid === activeId),
67
+ }, /* @__PURE__ */ React2.createElement(Component, {
68
+ ...props
69
+ }))), /* @__PURE__ */ React2.createElement(DragOverlay, {
70
+ style: { width: "auto" }
71
+ }, activeId ? /* @__PURE__ */ React2.createElement(Row, {
72
+ row: flattenedData.find((row) => row.uid === activeId),
98
73
  isDragOverlay: true
99
- }) : null)]
100
- }));
101
- return /*#__PURE__*/jsx(Component, _objectSpread({}, props));
74
+ }) : null));
75
+ return /* @__PURE__ */ React2.createElement(Component, {
76
+ ...props
77
+ });
78
+ };
79
+ export {
80
+ DnDTreeContext,
81
+ withConditionalDnDRowContext
102
82
  };
103
-
104
- export { DnDTreeContext, withConditionalDnDRowContext };
83
+ //# sourceMappingURL=withConditionalDnDRowContext.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/parts/HoC/withConditionalDnDRowContext.tsx"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { createContext, useCallback } from 'react';\nimport { DndContext, DragOverlay } from '@dnd-kit/core';\nimport { SortableContext } from '@dnd-kit/sortable';\nimport { DataTableContext } from '../../DataTableContext';\nimport { FunctionalHOC } from '../../types/FunctionalHoC';\nimport { useTreeDndkitConfig } from '@elliemae/ds-drag-and-drop';\nimport { Item } from '../../helpers/dndkit/tree/types';\nimport { DropIndicatorPosition } from './SortableItemContext';\nimport { Row } from '../Row';\n\ntype DnDTreeContextType = {\n depth: number;\n activeIndex: number;\n visibleItems: unknown[];\n dropIndicatorPosition: DropIndicatorPosition;\n lastActiveId: string;\n setLastActiveId: React.Dispatch<React.SetStateAction<string>>;\n};\n\nexport const DnDTreeContext = createContext<DnDTreeContextType>({\n depth: undefined,\n activeIndex: undefined,\n visibleItems: undefined,\n dropIndicatorPosition: DropIndicatorPosition.None,\n lastActiveId: undefined,\n setLastActiveId: undefined,\n});\n\n// only wraps in \"DnDContext\" and \"DnDTreeContext\" if any Drag and Drop functionality is requested\nexport const withConditionalDnDRowContext: FunctionalHOC = (Component) => (props) => {\n const {\n tableProps: { dragAndDropRows, isExpandable, onRowsReorder, maxDragAndDropLevel },\n flattenedData,\n allDataFlattened,\n } = React.useContext(DataTableContext);\n\n const [lastActiveId, setLastActiveId] = React.useState<string>(null);\n\n const onReorder = useCallback(\n (newData: Item[], indexes: { targetIndex: number; fromIndex: number }, considerExpanding: string) => {\n // Pull the row's original data into an object\n const nodes = {};\n newData.forEach((row) => {\n delete row.original.subRows;\n nodes[row.uid] = row.original;\n });\n const newUserData = [];\n newData.forEach((row) => {\n // If row has parent, insert it to it's subrows\n // otherwise append it to the new user data\n if (row.parentId) {\n const parentNode = nodes[row.parentId];\n if (parentNode?.subRows) parentNode.subRows.push(row.original);\n else parentNode.subRows = [row.original];\n } else newUserData.push(row.original);\n });\n // Tell the user that the order has change, he can chose to commit it or not\n onRowsReorder(newUserData, indexes, considerExpanding);\n },\n [onRowsReorder],\n );\n\n const { dndContextProps, sortableContextProps, activeId, activeIndex, depth, dropIndicatorPosition, visibleItems } =\n useTreeDndkitConfig({\n flattenedItems: allDataFlattened,\n visibleItems: flattenedData,\n isHorizontalDnD: false,\n isExpandable,\n onReorder,\n maxDragAndDropLevel,\n });\n\n if (lastActiveId !== activeId && activeId) setLastActiveId(activeId);\n\n if (dragAndDropRows)\n return (\n <DndContext {...dndContextProps}>\n <SortableContext {...sortableContextProps}>\n <DnDTreeContext.Provider\n value={{\n activeIndex,\n depth,\n visibleItems,\n dropIndicatorPosition,\n lastActiveId,\n setLastActiveId,\n }}\n >\n <Component {...props} />\n </DnDTreeContext.Provider>\n </SortableContext>\n <DragOverlay style={{ width: 'auto' }}>\n {activeId ? <Row row={flattenedData.find((row) => row.uid === activeId)} isDragOverlay /> : null}\n </DragOverlay>\n </DndContext>\n );\n return <Component {...props} />;\n};\n"],
5
+ "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA;AAEA;AACA;AAWO,MAAM,iBAAiB,cAAkC;AAAA,EAC9D,OAAO;AAAA,EACP,aAAa;AAAA,EACb,cAAc;AAAA,EACd,uBAAuB,sBAAsB;AAAA,EAC7C,cAAc;AAAA,EACd,iBAAiB;AAAA;AAIZ,MAAM,+BAA8C,CAAC,cAAc,CAAC,UAAU;AACnF,QAAM;AAAA,IACJ,YAAY,EAAE,iBAAiB,cAAc,eAAe;AAAA,IAC5D;AAAA,IACA;AAAA,MACE,OAAM,WAAW;AAErB,QAAM,CAAC,cAAc,mBAAmB,OAAM,SAAiB;AAE/D,QAAM,YAAY,YAChB,CAAC,SAAiB,SAAqD,sBAA8B;AAEnG,UAAM,QAAQ;AACd,YAAQ,QAAQ,CAAC,QAAQ;AACvB,aAAO,IAAI,SAAS;AACpB,YAAM,IAAI,OAAO,IAAI;AAAA;AAEvB,UAAM,cAAc;AACpB,YAAQ,QAAQ,CAAC,QAAQ;AAGvB,UAAI,IAAI,UAAU;AAChB,cAAM,aAAa,MAAM,IAAI;AAC7B,YAAI,YAAY;AAAS,qBAAW,QAAQ,KAAK,IAAI;AAAA;AAChD,qBAAW,UAAU,CAAC,IAAI;AAAA;AAC1B,oBAAY,KAAK,IAAI;AAAA;AAG9B,kBAAc,aAAa,SAAS;AAAA,KAEtC,CAAC;AAGH,QAAM,EAAE,iBAAiB,sBAAsB,UAAU,aAAa,OAAO,uBAAuB,iBAClG,oBAAoB;AAAA,IAClB,gBAAgB;AAAA,IAChB,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB;AAAA,IACA;AAAA,IACA;AAAA;AAGJ,MAAI,iBAAiB,YAAY;AAAU,oBAAgB;AAE3D,MAAI;AACF,WACE,qCAAC,YAAD;AAAA,SAAgB;AAAA,OACd,qCAAC,iBAAD;AAAA,SAAqB;AAAA,OACnB,qCAAC,eAAe,UAAhB;AAAA,MACE,OAAO;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA;AAAA,OAGF,qCAAC,WAAD;AAAA,SAAe;AAAA,UAGnB,qCAAC,aAAD;AAAA,MAAa,OAAO,EAAE,OAAO;AAAA,OAC1B,WAAW,qCAAC,KAAD;AAAA,MAAK,KAAK,cAAc,KAAK,CAAC,QAAQ,IAAI,QAAQ;AAAA,MAAW,eAAa;AAAA,SAAM;AAIpG,SAAO,qCAAC,WAAD;AAAA,OAAe;AAAA;AAAA;",
6
+ "names": []
7
+ }