@elliemae/ds-datagrids 2.2.0-alpha.4 → 3.0.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (577) hide show
  1. package/cjs/DSDataGrid.js +635 -395
  2. package/cjs/DataGridImpl.js +128 -103
  3. package/cjs/PaginatedDataGrid.js +68 -68
  4. package/cjs/blockNames.js +11 -39
  5. package/cjs/columns/IconColumn.js +62 -78
  6. package/cjs/columns/NumberColumn.js +5 -35
  7. package/cjs/components/BodyCell.js +80 -83
  8. package/cjs/components/BodyList.js +52 -52
  9. package/cjs/components/ColumnVisibilityMenuOption.js +31 -53
  10. package/cjs/components/ColumnsOptionsMenuSection.js +44 -59
  11. package/cjs/components/EmptyState.js +50 -81
  12. package/cjs/components/HeaderCell.js +58 -64
  13. package/cjs/components/List.js +29 -41
  14. package/cjs/components/ListItem.js +36 -43
  15. package/cjs/components/NoResults.js +51 -55
  16. package/cjs/components/RowsLoader.js +22 -42
  17. package/cjs/components/Table.js +87 -78
  18. package/cjs/components/TableBody.js +60 -61
  19. package/cjs/components/TableHeader.js +30 -47
  20. package/cjs/components/footer/addOptionalFooterComponents.js +43 -53
  21. package/cjs/components/header/PrimaryControls.js +35 -49
  22. package/cjs/components/header/addOptionalHeaderComponents.js +43 -54
  23. package/cjs/components/index.js +17 -43
  24. package/cjs/components/renderers/defaultClassedRenderers.js +57 -64
  25. package/cjs/components/renderers/index.js +17 -44
  26. package/cjs/components/renderers/renderRowsLoader.js +18 -39
  27. package/cjs/components/tableContext.js +13 -36
  28. package/cjs/defaultPlugins.js +12 -44
  29. package/cjs/index.js +67 -72
  30. package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +114 -102
  31. package/cjs/plugins/body-header-scroll-sync/index.js +9 -35
  32. package/cjs/plugins/column-dnd/DndColumnsPlugin.js +86 -107
  33. package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js +27 -43
  34. package/cjs/plugins/column-dnd/index.js +9 -35
  35. package/cjs/plugins/column-sizing/ColumnSizingPlugin.js +55 -59
  36. package/cjs/plugins/column-sizing/columnMeasurerTransformer.js +53 -48
  37. package/cjs/plugins/column-sizing/ext-points/decorateColumn.js +13 -40
  38. package/cjs/plugins/column-sizing/ext-points/getTableProps.js +54 -55
  39. package/cjs/plugins/column-sizing/getColumnNameFromProperty.js +9 -37
  40. package/cjs/plugins/column-sizing/index.js +9 -35
  41. package/cjs/plugins/column-sizing/useColumnSizeService.js +86 -72
  42. package/cjs/plugins/column-sizing/useStylesheetHelpers.js +199 -96
  43. package/cjs/plugins/column-sizing/utils.js +29 -52
  44. package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +16 -38
  45. package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +56 -61
  46. package/cjs/plugins/custom-cell-renderer/getRendererComponent.js +60 -58
  47. package/cjs/plugins/custom-cell-renderer/index.js +9 -35
  48. package/cjs/plugins/editable/EditableComponents/ComboBox.js +53 -50
  49. package/cjs/plugins/editable/EditableComponents/TextBox.js +76 -56
  50. package/cjs/plugins/editable/EditableComponents/index.js +11 -37
  51. package/cjs/plugins/editable/EditablePlugin.js +75 -60
  52. package/cjs/plugins/editable/decorateEditable.js +98 -61
  53. package/cjs/plugins/editable/getEditorComponent.js +76 -70
  54. package/cjs/plugins/editable/index.js +13 -38
  55. package/cjs/plugins/expandable-grid/ExpandableColumn.js +144 -112
  56. package/cjs/plugins/expandable-grid/ExpandablePlugin.js +180 -118
  57. package/cjs/plugins/expandable-grid/ExpandedRow.js +139 -117
  58. package/cjs/plugins/expandable-grid/ExpandedRowExtra.js +52 -54
  59. package/cjs/plugins/expandable-grid/index.js +11 -37
  60. package/cjs/plugins/expandable-grid/useExpandGridState.js +31 -45
  61. package/cjs/plugins/export-data/ExportDataPlugin.js +116 -82
  62. package/cjs/plugins/export-data/index.js +12 -35
  63. package/cjs/plugins/filterable/FilterablePlugin.js +55 -54
  64. package/cjs/plugins/filterable/addFilterToColumn.js +28 -40
  65. package/cjs/plugins/filterable/components/FilterableHeader.js +107 -119
  66. package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +116 -116
  67. package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +73 -97
  68. package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +132 -138
  69. package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +119 -115
  70. package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js +7 -35
  71. package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +15 -46
  72. package/cjs/plugins/filterable/filterableFormatter.js +51 -61
  73. package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +55 -60
  74. package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js +22 -43
  75. package/cjs/plugins/filterable/helper.js +79 -68
  76. package/cjs/plugins/filterable/index.js +9 -35
  77. package/cjs/plugins/filterable/useFilterableState.js +66 -62
  78. package/cjs/plugins/grouping-by/GroupingByPlugin.js +23 -40
  79. package/cjs/plugins/grouping-grid/GroupingPlugin.js +109 -86
  80. package/cjs/plugins/grouping-grid/walkStrategy.js +26 -46
  81. package/cjs/plugins/index.js +48 -68
  82. package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js +88 -64
  83. package/cjs/plugins/infinite-scrolling/index.js +9 -35
  84. package/cjs/plugins/pagination/PaginationPlugin.js +90 -73
  85. package/cjs/plugins/pagination/components/Pagination.js +35 -54
  86. package/cjs/plugins/pagination/components/Paginator.js +44 -59
  87. package/cjs/plugins/pagination/components/PerPageDropdown.js +63 -51
  88. package/cjs/plugins/pagination/helper.js +24 -45
  89. package/cjs/plugins/pagination/index.js +9 -35
  90. package/cjs/plugins/pagination/usePaginationState.js +38 -46
  91. package/cjs/plugins/resizable/ResizablePlugin.js +55 -51
  92. package/cjs/plugins/resizable/decorateResizable.js +53 -49
  93. package/cjs/plugins/resizable/index.js +9 -35
  94. package/cjs/plugins/resizable/useResizeHandle.js +50 -56
  95. package/cjs/plugins/resizable/utils.js +28 -49
  96. package/cjs/plugins/row-dnd/DndRowsPlugin.js +82 -103
  97. package/cjs/plugins/row-dnd/index.js +9 -35
  98. package/cjs/plugins/selectable/SelectablePlugin.js +134 -101
  99. package/cjs/plugins/selectable/addSelectableColumn.js +68 -67
  100. package/cjs/plugins/selectable/helper.js +39 -50
  101. package/cjs/plugins/selectable/index.js +9 -35
  102. package/cjs/plugins/selectable/selectableFormatter.js +105 -83
  103. package/cjs/plugins/selectable/useSelectableState.js +94 -67
  104. package/cjs/plugins/sortable/SortablePlugin.js +76 -62
  105. package/cjs/plugins/sortable/checkIfSortable.js +14 -37
  106. package/cjs/plugins/sortable/index.js +9 -35
  107. package/cjs/plugins/sortable/sortHeaderFormatter.js +50 -56
  108. package/cjs/plugins/sortable/sortTree.js +47 -40
  109. package/cjs/plugins/sortable/sorter.js +172 -140
  110. package/cjs/plugins/sortable/useSortableState.js +79 -53
  111. package/cjs/plugins/toolbar/RowRenderer.js +76 -75
  112. package/cjs/plugins/toolbar/ToolbarPlugin.js +33 -49
  113. package/cjs/plugins/toolbar/ToolbarTrigger.js +70 -89
  114. package/cjs/plugins/toolbar/index.js +9 -35
  115. package/cjs/plugins/virtualization/AutoHeightList.js +52 -64
  116. package/cjs/plugins/virtualization/VirtualizationPlugin.js +97 -86
  117. package/cjs/plugins/virtualization/VirtualizedBody.js +155 -139
  118. package/cjs/plugins/virtualization/VirtualizedBodyRow.js +17 -39
  119. package/cjs/plugins/virtualization/helper.js +7 -35
  120. package/cjs/plugins/virtualization/index.js +9 -35
  121. package/cjs/renders/CellWithAddons.js +50 -98
  122. package/cjs/renders/index.js +11 -37
  123. package/cjs/renders/styled.js +27 -78
  124. package/cjs/rowSizes.js +12 -44
  125. package/cjs/utilities/getPluginsFromProps.js +39 -67
  126. package/cjs/utilities/getScrollbarSize.js +25 -44
  127. package/cjs/utilities/normalizeData.js +34 -44
  128. package/esm/DSDataGrid.js +597 -337
  129. package/esm/DataGridImpl.js +113 -68
  130. package/esm/PaginatedDataGrid.js +59 -39
  131. package/esm/blockNames.js +5 -10
  132. package/esm/columns/IconColumn.js +54 -49
  133. package/esm/columns/NumberColumn.js +3 -6
  134. package/esm/components/BodyCell.js +68 -51
  135. package/esm/components/BodyList.js +43 -23
  136. package/esm/components/ColumnVisibilityMenuOption.js +27 -24
  137. package/esm/components/ColumnsOptionsMenuSection.js +38 -30
  138. package/esm/components/EmptyState.js +40 -52
  139. package/esm/components/HeaderCell.js +48 -33
  140. package/esm/components/List.js +23 -12
  141. package/esm/components/ListItem.js +30 -14
  142. package/esm/components/NoResults.js +43 -26
  143. package/esm/components/RowsLoader.js +15 -13
  144. package/esm/components/Table.js +76 -45
  145. package/esm/components/TableBody.js +52 -32
  146. package/esm/components/TableHeader.js +23 -17
  147. package/esm/components/footer/addOptionalFooterComponents.js +37 -24
  148. package/esm/components/header/PrimaryControls.js +29 -20
  149. package/esm/components/header/addOptionalHeaderComponents.js +36 -25
  150. package/esm/components/index.js +5 -14
  151. package/esm/components/renderers/defaultClassedRenderers.js +46 -41
  152. package/esm/components/renderers/index.js +5 -16
  153. package/esm/components/renderers/renderRowsLoader.js +10 -10
  154. package/esm/components/tableContext.js +5 -7
  155. package/esm/defaultPlugins.js +8 -15
  156. package/esm/index.js +27 -63
  157. package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +101 -71
  158. package/esm/plugins/body-header-scroll-sync/index.js +1 -6
  159. package/esm/plugins/column-dnd/DndColumnsPlugin.js +68 -69
  160. package/esm/plugins/column-dnd/decorateGridWithDndColumns.js +18 -16
  161. package/esm/plugins/column-dnd/index.js +1 -6
  162. package/esm/plugins/column-sizing/ColumnSizingPlugin.js +37 -20
  163. package/esm/plugins/column-sizing/columnMeasurerTransformer.js +42 -16
  164. package/esm/plugins/column-sizing/ext-points/decorateColumn.js +7 -9
  165. package/esm/plugins/column-sizing/ext-points/getTableProps.js +43 -23
  166. package/esm/plugins/column-sizing/getColumnNameFromProperty.js +7 -8
  167. package/esm/plugins/column-sizing/index.js +1 -6
  168. package/esm/plugins/column-sizing/useColumnSizeService.js +71 -34
  169. package/esm/plugins/column-sizing/useStylesheetHelpers.js +171 -64
  170. package/esm/plugins/column-sizing/utils.js +21 -23
  171. package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js +7 -8
  172. package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +43 -28
  173. package/esm/plugins/custom-cell-renderer/getRendererComponent.js +44 -22
  174. package/esm/plugins/custom-cell-renderer/index.js +1 -6
  175. package/esm/plugins/editable/EditableComponents/ComboBox.js +46 -20
  176. package/esm/plugins/editable/EditableComponents/TextBox.js +68 -26
  177. package/esm/plugins/editable/EditableComponents/index.js +2 -8
  178. package/esm/plugins/editable/EditablePlugin.js +63 -27
  179. package/esm/plugins/editable/decorateEditable.js +68 -32
  180. package/esm/plugins/editable/getEditorComponent.js +66 -39
  181. package/esm/plugins/editable/index.js +3 -9
  182. package/esm/plugins/expandable-grid/ExpandableColumn.js +133 -82
  183. package/esm/plugins/expandable-grid/ExpandablePlugin.js +160 -81
  184. package/esm/plugins/expandable-grid/ExpandedRow.js +124 -86
  185. package/esm/plugins/expandable-grid/ExpandedRowExtra.js +44 -25
  186. package/esm/plugins/expandable-grid/index.js +2 -8
  187. package/esm/plugins/expandable-grid/useExpandGridState.js +25 -14
  188. package/esm/plugins/export-data/ExportDataPlugin.js +103 -52
  189. package/esm/plugins/export-data/index.js +1 -6
  190. package/esm/plugins/filterable/FilterablePlugin.js +44 -22
  191. package/esm/plugins/filterable/addFilterToColumn.js +20 -11
  192. package/esm/plugins/filterable/components/FilterableHeader.js +95 -85
  193. package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +103 -83
  194. package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +63 -68
  195. package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +116 -108
  196. package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +106 -84
  197. package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js +3 -6
  198. package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +12 -16
  199. package/esm/plugins/filterable/filterableFormatter.js +45 -32
  200. package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +44 -29
  201. package/esm/plugins/filterable/filtering-helper/strategiesOperators.js +13 -11
  202. package/esm/plugins/filterable/helper.js +62 -42
  203. package/esm/plugins/filterable/index.js +1 -6
  204. package/esm/plugins/filterable/useFilterableState.js +54 -33
  205. package/esm/plugins/grouping-by/GroupingByPlugin.js +14 -10
  206. package/esm/plugins/grouping-grid/GroupingPlugin.js +94 -53
  207. package/esm/plugins/grouping-grid/walkStrategy.js +22 -17
  208. package/esm/plugins/index.js +19 -39
  209. package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js +74 -31
  210. package/esm/plugins/infinite-scrolling/index.js +1 -6
  211. package/esm/plugins/pagination/PaginationPlugin.js +75 -42
  212. package/esm/plugins/pagination/components/Pagination.js +27 -25
  213. package/esm/plugins/pagination/components/Paginator.js +35 -29
  214. package/esm/plugins/pagination/components/PerPageDropdown.js +54 -22
  215. package/esm/plugins/pagination/helper.js +19 -16
  216. package/esm/plugins/pagination/index.js +1 -6
  217. package/esm/plugins/pagination/usePaginationState.js +28 -15
  218. package/esm/plugins/resizable/ResizablePlugin.js +45 -20
  219. package/esm/plugins/resizable/decorateResizable.js +41 -19
  220. package/esm/plugins/resizable/index.js +1 -6
  221. package/esm/plugins/resizable/useResizeHandle.js +39 -24
  222. package/esm/plugins/resizable/utils.js +18 -20
  223. package/esm/plugins/row-dnd/DndRowsPlugin.js +71 -73
  224. package/esm/plugins/row-dnd/index.js +1 -6
  225. package/esm/plugins/selectable/SelectablePlugin.js +117 -64
  226. package/esm/plugins/selectable/addSelectableColumn.js +57 -39
  227. package/esm/plugins/selectable/helper.js +25 -19
  228. package/esm/plugins/selectable/index.js +1 -6
  229. package/esm/plugins/selectable/selectableFormatter.js +97 -54
  230. package/esm/plugins/selectable/useSelectableState.js +78 -34
  231. package/esm/plugins/sortable/SortablePlugin.js +43 -30
  232. package/esm/plugins/sortable/checkIfSortable.js +9 -8
  233. package/esm/plugins/sortable/index.js +1 -6
  234. package/esm/plugins/sortable/sortHeaderFormatter.js +43 -27
  235. package/esm/plugins/sortable/sortTree.js +24 -13
  236. package/esm/plugins/sortable/sorter.js +163 -112
  237. package/esm/plugins/sortable/useSortableState.js +49 -22
  238. package/esm/plugins/toolbar/RowRenderer.js +61 -40
  239. package/esm/plugins/toolbar/ToolbarPlugin.js +23 -19
  240. package/esm/plugins/toolbar/ToolbarTrigger.js +57 -59
  241. package/esm/plugins/toolbar/index.js +1 -6
  242. package/esm/plugins/virtualization/AutoHeightList.js +40 -30
  243. package/esm/plugins/virtualization/VirtualizationPlugin.js +84 -55
  244. package/esm/plugins/virtualization/VirtualizedBody.js +132 -94
  245. package/esm/plugins/virtualization/VirtualizedBodyRow.js +15 -10
  246. package/esm/plugins/virtualization/helper.js +3 -6
  247. package/esm/plugins/virtualization/index.js +1 -6
  248. package/esm/renders/CellWithAddons.js +40 -69
  249. package/esm/renders/index.js +2 -8
  250. package/esm/renders/styled.js +16 -49
  251. package/esm/rowSizes.js +6 -15
  252. package/esm/utilities/getPluginsFromProps.js +24 -25
  253. package/esm/utilities/getScrollbarSize.js +21 -15
  254. package/esm/utilities/normalizeData.js +24 -15
  255. package/package.json +20 -20
  256. package/types/DSDataGrid.d.ts +1 -1
  257. package/types/DataGridImpl.d.ts +2 -3
  258. package/types/PaginatedDataGrid.d.ts +2 -1
  259. package/types/columns/IconColumn.d.ts +2 -3
  260. package/types/components/BodyCell.d.ts +12 -13
  261. package/types/components/ColumnVisibilityMenuOption.d.ts +2 -2
  262. package/types/components/ColumnsOptionsMenuSection.d.ts +0 -1
  263. package/types/components/HeaderCell.d.ts +10 -10
  264. package/types/components/NoResults.d.ts +2 -2
  265. package/types/components/RowsLoader.d.ts +2 -2
  266. package/types/components/Table.d.ts +11 -6
  267. package/types/components/TableBody.d.ts +8 -3
  268. package/types/components/TableHeader.d.ts +1 -2
  269. package/types/components/footer/addOptionalFooterComponents.d.ts +0 -1
  270. package/types/components/header/PrimaryControls.d.ts +0 -1
  271. package/types/components/header/addOptionalHeaderComponents.d.ts +1 -1
  272. package/types/components/renderers/index.d.ts +1 -1
  273. package/types/components/renderers/renderRowsLoader.d.ts +1 -1
  274. package/types/index.d.ts +8 -7
  275. package/types/plugins/body-header-scroll-sync/index.d.ts +1 -1
  276. package/types/plugins/column-dnd/index.d.ts +1 -1
  277. package/types/plugins/column-sizing/getColumnNameFromProperty.d.ts +1 -2
  278. package/types/plugins/column-sizing/index.d.ts +1 -1
  279. package/types/plugins/column-sizing/useColumnSizeService.d.ts +1 -2
  280. package/types/plugins/custom-cell-renderer/addCustomRendererToCell.d.ts +0 -1
  281. package/types/plugins/custom-cell-renderer/getRendererComponent.d.ts +0 -1
  282. package/types/plugins/custom-cell-renderer/index.d.ts +1 -1
  283. package/types/plugins/editable/EditableComponents/ComboBox.d.ts +1 -3
  284. package/types/plugins/editable/EditableComponents/TextBox.d.ts +1 -3
  285. package/types/plugins/editable/getEditorComponent.d.ts +0 -1
  286. package/types/plugins/editable/index.d.ts +2 -2
  287. package/types/plugins/expandable-grid/ExpandableColumn.d.ts +2 -3
  288. package/types/plugins/expandable-grid/ExpandedRow.d.ts +0 -1
  289. package/types/plugins/expandable-grid/ExpandedRowExtra.d.ts +0 -1
  290. package/types/plugins/expandable-grid/index.d.ts +2 -2
  291. package/types/plugins/export-data/index.d.ts +1 -1
  292. package/types/plugins/filterable/components/FilterableHeader.d.ts +15 -15
  293. package/types/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.d.ts +0 -1
  294. package/types/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.d.ts +0 -1
  295. package/types/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.d.ts +1 -2
  296. package/types/plugins/filterable/components/filterable-menus/TextFilterMenu.d.ts +0 -1
  297. package/types/plugins/filterable/components/filterable-menus/getFilterMenuByType.d.ts +1 -2
  298. package/types/plugins/filterable/filterableFormatter.d.ts +2 -3
  299. package/types/plugins/filterable/filtering-helper/filterRowsByQuery.d.ts +1 -2
  300. package/types/plugins/filterable/filtering-helper/strategiesOperators.d.ts +2 -2
  301. package/types/plugins/filterable/index.d.ts +1 -1
  302. package/types/plugins/index.d.ts +16 -16
  303. package/types/plugins/infinite-scrolling/index.d.ts +1 -1
  304. package/types/plugins/pagination/components/Paginator.d.ts +0 -1
  305. package/types/plugins/pagination/components/PerPageDropdown.d.ts +0 -1
  306. package/types/plugins/pagination/helper.d.ts +2 -3
  307. package/types/plugins/pagination/index.d.ts +1 -1
  308. package/types/plugins/resizable/index.d.ts +1 -1
  309. package/types/plugins/row-dnd/index.d.ts +1 -1
  310. package/types/plugins/selectable/index.d.ts +1 -1
  311. package/types/plugins/selectable/selectableFormatter.d.ts +0 -1
  312. package/types/plugins/sortable/index.d.ts +1 -1
  313. package/types/plugins/sortable/sortHeaderFormatter.d.ts +0 -1
  314. package/types/plugins/sortable/sortTree.d.ts +0 -1
  315. package/types/plugins/sortable/sorter.d.ts +1 -1
  316. package/types/plugins/toolbar/index.d.ts +1 -1
  317. package/types/plugins/virtualization/AutoHeightList.d.ts +1 -1
  318. package/types/plugins/virtualization/VirtualizedBody.d.ts +0 -1
  319. package/types/plugins/virtualization/VirtualizedBodyRow.d.ts +2 -2
  320. package/types/plugins/virtualization/index.d.ts +1 -1
  321. package/types/utilities/getPluginsFromProps.d.ts +1 -2
  322. package/cjs/DSDataGrid.js.map +0 -7
  323. package/cjs/DataGridImpl.js.map +0 -7
  324. package/cjs/PaginatedDataGrid.js.map +0 -7
  325. package/cjs/blockNames.js.map +0 -7
  326. package/cjs/columns/IconColumn.js.map +0 -7
  327. package/cjs/columns/NumberColumn.js.map +0 -7
  328. package/cjs/components/BodyCell.js.map +0 -7
  329. package/cjs/components/BodyList.js.map +0 -7
  330. package/cjs/components/ColumnVisibilityMenuOption.js.map +0 -7
  331. package/cjs/components/ColumnsOptionsMenuSection.js.map +0 -7
  332. package/cjs/components/EmptyState.js.map +0 -7
  333. package/cjs/components/HeaderCell.js.map +0 -7
  334. package/cjs/components/List.js.map +0 -7
  335. package/cjs/components/ListItem.js.map +0 -7
  336. package/cjs/components/NoResults.js.map +0 -7
  337. package/cjs/components/RowsLoader.js.map +0 -7
  338. package/cjs/components/Table.js.map +0 -7
  339. package/cjs/components/TableBody.js.map +0 -7
  340. package/cjs/components/TableHeader.js.map +0 -7
  341. package/cjs/components/footer/addOptionalFooterComponents.js.map +0 -7
  342. package/cjs/components/header/PrimaryControls.js.map +0 -7
  343. package/cjs/components/header/addOptionalHeaderComponents.js.map +0 -7
  344. package/cjs/components/index.js.map +0 -7
  345. package/cjs/components/renderers/defaultClassedRenderers.js.map +0 -7
  346. package/cjs/components/renderers/index.js.map +0 -7
  347. package/cjs/components/renderers/renderRowsLoader.js.map +0 -7
  348. package/cjs/components/tableContext.js.map +0 -7
  349. package/cjs/defaultPlugins.js.map +0 -7
  350. package/cjs/index.js.map +0 -7
  351. package/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +0 -7
  352. package/cjs/plugins/body-header-scroll-sync/index.js.map +0 -7
  353. package/cjs/plugins/column-dnd/DndColumnsPlugin.js.map +0 -7
  354. package/cjs/plugins/column-dnd/decorateGridWithDndColumns.js.map +0 -7
  355. package/cjs/plugins/column-dnd/index.js.map +0 -7
  356. package/cjs/plugins/column-sizing/ColumnSizingPlugin.js.map +0 -7
  357. package/cjs/plugins/column-sizing/columnMeasurerTransformer.js.map +0 -7
  358. package/cjs/plugins/column-sizing/ext-points/decorateColumn.js.map +0 -7
  359. package/cjs/plugins/column-sizing/ext-points/getTableProps.js.map +0 -7
  360. package/cjs/plugins/column-sizing/getColumnNameFromProperty.js.map +0 -7
  361. package/cjs/plugins/column-sizing/index.js.map +0 -7
  362. package/cjs/plugins/column-sizing/useColumnSizeService.js.map +0 -7
  363. package/cjs/plugins/column-sizing/useStylesheetHelpers.js.map +0 -7
  364. package/cjs/plugins/column-sizing/utils.js.map +0 -7
  365. package/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +0 -7
  366. package/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +0 -7
  367. package/cjs/plugins/custom-cell-renderer/getRendererComponent.js.map +0 -7
  368. package/cjs/plugins/custom-cell-renderer/index.js.map +0 -7
  369. package/cjs/plugins/editable/EditableComponents/ComboBox.js.map +0 -7
  370. package/cjs/plugins/editable/EditableComponents/TextBox.js.map +0 -7
  371. package/cjs/plugins/editable/EditableComponents/index.js.map +0 -7
  372. package/cjs/plugins/editable/EditablePlugin.js.map +0 -7
  373. package/cjs/plugins/editable/decorateEditable.js.map +0 -7
  374. package/cjs/plugins/editable/getEditorComponent.js.map +0 -7
  375. package/cjs/plugins/editable/index.js.map +0 -7
  376. package/cjs/plugins/expandable-grid/ExpandableColumn.js.map +0 -7
  377. package/cjs/plugins/expandable-grid/ExpandablePlugin.js.map +0 -7
  378. package/cjs/plugins/expandable-grid/ExpandedRow.js.map +0 -7
  379. package/cjs/plugins/expandable-grid/ExpandedRowExtra.js.map +0 -7
  380. package/cjs/plugins/expandable-grid/index.js.map +0 -7
  381. package/cjs/plugins/expandable-grid/useExpandGridState.js.map +0 -7
  382. package/cjs/plugins/export-data/ExportDataPlugin.js.map +0 -7
  383. package/cjs/plugins/export-data/index.js.map +0 -7
  384. package/cjs/plugins/filterable/FilterablePlugin.js.map +0 -7
  385. package/cjs/plugins/filterable/addFilterToColumn.js.map +0 -7
  386. package/cjs/plugins/filterable/components/FilterableHeader.js.map +0 -7
  387. package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +0 -7
  388. package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +0 -7
  389. package/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +0 -7
  390. package/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +0 -7
  391. package/cjs/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +0 -7
  392. package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +0 -7
  393. package/cjs/plugins/filterable/filterableFormatter.js.map +0 -7
  394. package/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +0 -7
  395. package/cjs/plugins/filterable/filtering-helper/strategiesOperators.js.map +0 -7
  396. package/cjs/plugins/filterable/helper.js.map +0 -7
  397. package/cjs/plugins/filterable/index.js.map +0 -7
  398. package/cjs/plugins/filterable/useFilterableState.js.map +0 -7
  399. package/cjs/plugins/grouping-by/GroupingByPlugin.js.map +0 -7
  400. package/cjs/plugins/grouping-grid/GroupingPlugin.js.map +0 -7
  401. package/cjs/plugins/grouping-grid/walkStrategy.js.map +0 -7
  402. package/cjs/plugins/index.js.map +0 -7
  403. package/cjs/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +0 -7
  404. package/cjs/plugins/infinite-scrolling/index.js.map +0 -7
  405. package/cjs/plugins/pagination/PaginationPlugin.js.map +0 -7
  406. package/cjs/plugins/pagination/components/Pagination.js.map +0 -7
  407. package/cjs/plugins/pagination/components/Paginator.js.map +0 -7
  408. package/cjs/plugins/pagination/components/PerPageDropdown.js.map +0 -7
  409. package/cjs/plugins/pagination/helper.js.map +0 -7
  410. package/cjs/plugins/pagination/index.js.map +0 -7
  411. package/cjs/plugins/pagination/usePaginationState.js.map +0 -7
  412. package/cjs/plugins/resizable/ResizablePlugin.js.map +0 -7
  413. package/cjs/plugins/resizable/decorateResizable.js.map +0 -7
  414. package/cjs/plugins/resizable/index.js.map +0 -7
  415. package/cjs/plugins/resizable/useResizeHandle.js.map +0 -7
  416. package/cjs/plugins/resizable/utils.js.map +0 -7
  417. package/cjs/plugins/row-dnd/DndRowsPlugin.js.map +0 -7
  418. package/cjs/plugins/row-dnd/index.js.map +0 -7
  419. package/cjs/plugins/selectable/SelectablePlugin.js.map +0 -7
  420. package/cjs/plugins/selectable/addSelectableColumn.js.map +0 -7
  421. package/cjs/plugins/selectable/helper.js.map +0 -7
  422. package/cjs/plugins/selectable/index.js.map +0 -7
  423. package/cjs/plugins/selectable/selectableFormatter.js.map +0 -7
  424. package/cjs/plugins/selectable/useSelectableState.js.map +0 -7
  425. package/cjs/plugins/sortable/SortablePlugin.js.map +0 -7
  426. package/cjs/plugins/sortable/checkIfSortable.js.map +0 -7
  427. package/cjs/plugins/sortable/index.js.map +0 -7
  428. package/cjs/plugins/sortable/sortHeaderFormatter.js.map +0 -7
  429. package/cjs/plugins/sortable/sortTree.js.map +0 -7
  430. package/cjs/plugins/sortable/sorter.js.map +0 -7
  431. package/cjs/plugins/sortable/useSortableState.js.map +0 -7
  432. package/cjs/plugins/toolbar/RowRenderer.js.map +0 -7
  433. package/cjs/plugins/toolbar/ToolbarPlugin.js.map +0 -7
  434. package/cjs/plugins/toolbar/ToolbarTrigger.js.map +0 -7
  435. package/cjs/plugins/toolbar/index.js.map +0 -7
  436. package/cjs/plugins/virtualization/AutoHeightList.js.map +0 -7
  437. package/cjs/plugins/virtualization/VirtualizationPlugin.js.map +0 -7
  438. package/cjs/plugins/virtualization/VirtualizedBody.js.map +0 -7
  439. package/cjs/plugins/virtualization/VirtualizedBodyRow.js.map +0 -7
  440. package/cjs/plugins/virtualization/helper.js.map +0 -7
  441. package/cjs/plugins/virtualization/index.js.map +0 -7
  442. package/cjs/renders/CellWithAddons.js.map +0 -7
  443. package/cjs/renders/index.js.map +0 -7
  444. package/cjs/renders/styled.js.map +0 -7
  445. package/cjs/rowSizes.js.map +0 -7
  446. package/cjs/utilities/DataGridUtilities.json +0 -1315
  447. package/cjs/utilities/getPluginsFromProps.js.map +0 -7
  448. package/cjs/utilities/getScrollbarSize.js.map +0 -7
  449. package/cjs/utilities/normalizeData.js.map +0 -7
  450. package/esm/DSDataGrid.js.map +0 -7
  451. package/esm/DataGridImpl.js.map +0 -7
  452. package/esm/PaginatedDataGrid.js.map +0 -7
  453. package/esm/blockNames.js.map +0 -7
  454. package/esm/columns/IconColumn.js.map +0 -7
  455. package/esm/columns/NumberColumn.js.map +0 -7
  456. package/esm/components/BodyCell.js.map +0 -7
  457. package/esm/components/BodyList.js.map +0 -7
  458. package/esm/components/ColumnVisibilityMenuOption.js.map +0 -7
  459. package/esm/components/ColumnsOptionsMenuSection.js.map +0 -7
  460. package/esm/components/EmptyState.js.map +0 -7
  461. package/esm/components/HeaderCell.js.map +0 -7
  462. package/esm/components/List.js.map +0 -7
  463. package/esm/components/ListItem.js.map +0 -7
  464. package/esm/components/NoResults.js.map +0 -7
  465. package/esm/components/RowsLoader.js.map +0 -7
  466. package/esm/components/Table.js.map +0 -7
  467. package/esm/components/TableBody.js.map +0 -7
  468. package/esm/components/TableHeader.js.map +0 -7
  469. package/esm/components/footer/addOptionalFooterComponents.js.map +0 -7
  470. package/esm/components/header/PrimaryControls.js.map +0 -7
  471. package/esm/components/header/addOptionalHeaderComponents.js.map +0 -7
  472. package/esm/components/index.js.map +0 -7
  473. package/esm/components/renderers/defaultClassedRenderers.js.map +0 -7
  474. package/esm/components/renderers/index.js.map +0 -7
  475. package/esm/components/renderers/renderRowsLoader.js.map +0 -7
  476. package/esm/components/tableContext.js.map +0 -7
  477. package/esm/defaultPlugins.js.map +0 -7
  478. package/esm/index.js.map +0 -7
  479. package/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +0 -7
  480. package/esm/plugins/body-header-scroll-sync/index.js.map +0 -7
  481. package/esm/plugins/column-dnd/DndColumnsPlugin.js.map +0 -7
  482. package/esm/plugins/column-dnd/decorateGridWithDndColumns.js.map +0 -7
  483. package/esm/plugins/column-dnd/index.js.map +0 -7
  484. package/esm/plugins/column-sizing/ColumnSizingPlugin.js.map +0 -7
  485. package/esm/plugins/column-sizing/columnMeasurerTransformer.js.map +0 -7
  486. package/esm/plugins/column-sizing/ext-points/decorateColumn.js.map +0 -7
  487. package/esm/plugins/column-sizing/ext-points/getTableProps.js.map +0 -7
  488. package/esm/plugins/column-sizing/getColumnNameFromProperty.js.map +0 -7
  489. package/esm/plugins/column-sizing/index.js.map +0 -7
  490. package/esm/plugins/column-sizing/useColumnSizeService.js.map +0 -7
  491. package/esm/plugins/column-sizing/useStylesheetHelpers.js.map +0 -7
  492. package/esm/plugins/column-sizing/utils.js.map +0 -7
  493. package/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +0 -7
  494. package/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +0 -7
  495. package/esm/plugins/custom-cell-renderer/getRendererComponent.js.map +0 -7
  496. package/esm/plugins/custom-cell-renderer/index.js.map +0 -7
  497. package/esm/plugins/editable/EditableComponents/ComboBox.js.map +0 -7
  498. package/esm/plugins/editable/EditableComponents/TextBox.js.map +0 -7
  499. package/esm/plugins/editable/EditableComponents/index.js.map +0 -7
  500. package/esm/plugins/editable/EditablePlugin.js.map +0 -7
  501. package/esm/plugins/editable/decorateEditable.js.map +0 -7
  502. package/esm/plugins/editable/getEditorComponent.js.map +0 -7
  503. package/esm/plugins/editable/index.js.map +0 -7
  504. package/esm/plugins/expandable-grid/ExpandableColumn.js.map +0 -7
  505. package/esm/plugins/expandable-grid/ExpandablePlugin.js.map +0 -7
  506. package/esm/plugins/expandable-grid/ExpandedRow.js.map +0 -7
  507. package/esm/plugins/expandable-grid/ExpandedRowExtra.js.map +0 -7
  508. package/esm/plugins/expandable-grid/index.js.map +0 -7
  509. package/esm/plugins/expandable-grid/useExpandGridState.js.map +0 -7
  510. package/esm/plugins/export-data/ExportDataPlugin.js.map +0 -7
  511. package/esm/plugins/export-data/index.js.map +0 -7
  512. package/esm/plugins/filterable/FilterablePlugin.js.map +0 -7
  513. package/esm/plugins/filterable/addFilterToColumn.js.map +0 -7
  514. package/esm/plugins/filterable/components/FilterableHeader.js.map +0 -7
  515. package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +0 -7
  516. package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +0 -7
  517. package/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +0 -7
  518. package/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +0 -7
  519. package/esm/plugins/filterable/components/filterable-menus/defaultDateFormat.js.map +0 -7
  520. package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +0 -7
  521. package/esm/plugins/filterable/filterableFormatter.js.map +0 -7
  522. package/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +0 -7
  523. package/esm/plugins/filterable/filtering-helper/strategiesOperators.js.map +0 -7
  524. package/esm/plugins/filterable/helper.js.map +0 -7
  525. package/esm/plugins/filterable/index.js.map +0 -7
  526. package/esm/plugins/filterable/useFilterableState.js.map +0 -7
  527. package/esm/plugins/grouping-by/GroupingByPlugin.js.map +0 -7
  528. package/esm/plugins/grouping-grid/GroupingPlugin.js.map +0 -7
  529. package/esm/plugins/grouping-grid/walkStrategy.js.map +0 -7
  530. package/esm/plugins/index.js.map +0 -7
  531. package/esm/plugins/infinite-scrolling/InfiniteScrollPlugin.js.map +0 -7
  532. package/esm/plugins/infinite-scrolling/index.js.map +0 -7
  533. package/esm/plugins/pagination/PaginationPlugin.js.map +0 -7
  534. package/esm/plugins/pagination/components/Pagination.js.map +0 -7
  535. package/esm/plugins/pagination/components/Paginator.js.map +0 -7
  536. package/esm/plugins/pagination/components/PerPageDropdown.js.map +0 -7
  537. package/esm/plugins/pagination/helper.js.map +0 -7
  538. package/esm/plugins/pagination/index.js.map +0 -7
  539. package/esm/plugins/pagination/usePaginationState.js.map +0 -7
  540. package/esm/plugins/resizable/ResizablePlugin.js.map +0 -7
  541. package/esm/plugins/resizable/decorateResizable.js.map +0 -7
  542. package/esm/plugins/resizable/index.js.map +0 -7
  543. package/esm/plugins/resizable/useResizeHandle.js.map +0 -7
  544. package/esm/plugins/resizable/utils.js.map +0 -7
  545. package/esm/plugins/row-dnd/DndRowsPlugin.js.map +0 -7
  546. package/esm/plugins/row-dnd/index.js.map +0 -7
  547. package/esm/plugins/selectable/SelectablePlugin.js.map +0 -7
  548. package/esm/plugins/selectable/addSelectableColumn.js.map +0 -7
  549. package/esm/plugins/selectable/helper.js.map +0 -7
  550. package/esm/plugins/selectable/index.js.map +0 -7
  551. package/esm/plugins/selectable/selectableFormatter.js.map +0 -7
  552. package/esm/plugins/selectable/useSelectableState.js.map +0 -7
  553. package/esm/plugins/sortable/SortablePlugin.js.map +0 -7
  554. package/esm/plugins/sortable/checkIfSortable.js.map +0 -7
  555. package/esm/plugins/sortable/index.js.map +0 -7
  556. package/esm/plugins/sortable/sortHeaderFormatter.js.map +0 -7
  557. package/esm/plugins/sortable/sortTree.js.map +0 -7
  558. package/esm/plugins/sortable/sorter.js.map +0 -7
  559. package/esm/plugins/sortable/useSortableState.js.map +0 -7
  560. package/esm/plugins/toolbar/RowRenderer.js.map +0 -7
  561. package/esm/plugins/toolbar/ToolbarPlugin.js.map +0 -7
  562. package/esm/plugins/toolbar/ToolbarTrigger.js.map +0 -7
  563. package/esm/plugins/toolbar/index.js.map +0 -7
  564. package/esm/plugins/virtualization/AutoHeightList.js.map +0 -7
  565. package/esm/plugins/virtualization/VirtualizationPlugin.js.map +0 -7
  566. package/esm/plugins/virtualization/VirtualizedBody.js.map +0 -7
  567. package/esm/plugins/virtualization/VirtualizedBodyRow.js.map +0 -7
  568. package/esm/plugins/virtualization/helper.js.map +0 -7
  569. package/esm/plugins/virtualization/index.js.map +0 -7
  570. package/esm/renders/CellWithAddons.js.map +0 -7
  571. package/esm/renders/index.js.map +0 -7
  572. package/esm/renders/styled.js.map +0 -7
  573. package/esm/rowSizes.js.map +0 -7
  574. package/esm/utilities/DataGridUtilities.json +0 -1315
  575. package/esm/utilities/getPluginsFromProps.js.map +0 -7
  576. package/esm/utilities/getScrollbarSize.js.map +0 -7
  577. package/esm/utilities/normalizeData.js.map +0 -7
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/filterable/filtering-helper/filterRowsByQuery.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { isFunction } from '@elliemae/ds-utilities';\nimport { strategiesOperators } from './strategiesOperators';\n\nconst getRuleStrategyOperator = (rule) => rule.strategy || strategiesOperators(rule.operator);\n\nconst executeFilterStrategy = (rule, row) => {\n const { value, field, transform, transformRowValue } = rule;\n if (field === 'all') return Object.values(row).some((colValue) => strategiesOperators('contains')(colValue, value));\n const rowValue = row[field];\n const transformedValue = isFunction(transform) ? transform(value) : value;\n const transformedRowValue = isFunction(transformRowValue) ? transformRowValue(rowValue) : rowValue;\n\n const filterStrategy = getRuleStrategyOperator(rule);\n return filterStrategy(transformedRowValue, transformedValue);\n};\n\nconst filterByRules =\n (rules, condition = 'AND') =>\n (row) =>\n condition === 'AND'\n ? rules.reduce(\n (isFiltered, rule) =>\n rule.rules && rule.rules.length\n ? isFiltered && filterByRules(rule.rules, rule.condition)(row)\n : isFiltered && executeFilterStrategy(rule, row),\n true,\n )\n : rules.some((rule) =>\n rule.rules && rule.rules.length\n ? filterByRules(rule.rules, rule.condition)(row)\n : executeFilterStrategy(rule, row),\n );\n\nexport function filterRowsByQueryGroup(rows, query, composedRows) {\n if (query && query.rules && query.rules.length === 0) return rows;\n const newRows = [];\n const parentMap = {};\n composedRows.forEach((parentRow) => {\n if (parentRow.isGroup) {\n newRows.push({\n ...parentRow,\n _filtered: true,\n });\n } else if (!parentRow.isGroup && filterByRules(query.rules, query.condition)(parentRow.data)) {\n newRows.push({\n ...parentRow,\n _filtered: true,\n });\n parentMap[parentRow.parentNode.id] = true;\n }\n });\n\n return newRows.filter((r) => {\n if (r.isGroup && !parentMap[r.id]) return false;\n return true;\n });\n}\n\nexport const filterRowsByQuery = (rows, query) => {\n return rows.filter(filterByRules(query.rules, query.condition));\n};\n\nexport default filterRowsByQuery;\n"],
5
- "mappings": "AAAA;ACAA;AACA;AAEA,MAAM,0BAA0B,CAAC,SAAS,KAAK,YAAY,oBAAoB,KAAK;AAEpF,MAAM,wBAAwB,CAAC,MAAM,QAAQ;AAC3C,QAAM,EAAE,OAAO,OAAO,WAAW,sBAAsB;AACvD,MAAI,UAAU;AAAO,WAAO,OAAO,OAAO,KAAK,KAAK,CAAC,aAAa,oBAAoB,YAAY,UAAU;AAC5G,QAAM,WAAW,IAAI;AACrB,QAAM,mBAAmB,WAAW,aAAa,UAAU,SAAS;AACpE,QAAM,sBAAsB,WAAW,qBAAqB,kBAAkB,YAAY;AAE1F,QAAM,iBAAiB,wBAAwB;AAC/C,SAAO,eAAe,qBAAqB;AAAA;AAG7C,MAAM,gBACJ,CAAC,OAAO,YAAY,UACpB,CAAC,QACC,cAAc,QACV,MAAM,OACJ,CAAC,YAAY,SACX,KAAK,SAAS,KAAK,MAAM,SACrB,cAAc,cAAc,KAAK,OAAO,KAAK,WAAW,OACxD,cAAc,sBAAsB,MAAM,MAChD,QAEF,MAAM,KAAK,CAAC,SACV,KAAK,SAAS,KAAK,MAAM,SACrB,cAAc,KAAK,OAAO,KAAK,WAAW,OAC1C,sBAAsB,MAAM;AAGnC,gCAAgC,MAAM,OAAO,cAAc;AAChE,MAAI,SAAS,MAAM,SAAS,MAAM,MAAM,WAAW;AAAG,WAAO;AAC7D,QAAM,UAAU;AAChB,QAAM,YAAY;AAClB,eAAa,QAAQ,CAAC,cAAc;AAClC,QAAI,UAAU,SAAS;AACrB,cAAQ,KAAK;AAAA,WACR;AAAA,QACH,WAAW;AAAA;AAAA,eAEJ,CAAC,UAAU,WAAW,cAAc,MAAM,OAAO,MAAM,WAAW,UAAU,OAAO;AAC5F,cAAQ,KAAK;AAAA,WACR;AAAA,QACH,WAAW;AAAA;AAEb,gBAAU,UAAU,WAAW,MAAM;AAAA;AAAA;AAIzC,SAAO,QAAQ,OAAO,CAAC,MAAM;AAC3B,QAAI,EAAE,WAAW,CAAC,UAAU,EAAE;AAAK,aAAO;AAC1C,WAAO;AAAA;AAAA;AAIJ,MAAM,oBAAoB,CAAC,MAAM,UAAU;AAChD,SAAO,KAAK,OAAO,cAAc,MAAM,OAAO,MAAM;AAAA;AAGtD,IAAO,4BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/filterable/filtering-helper/strategiesOperators.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import compare from 'comparejs';\n\nexport const strategiesOperators = op =>\n ({\n range: (rowValue, { start, end }) => start <= rowValue && end >= rowValue,\n equal: (value1, value2) => compare.id(value1, value2),\n greaterThan: compare.gt,\n lessThan: compare.lt,\n contains: (rowValue, value) =>\n String(rowValue)\n .toLowerCase()\n .indexOf(String(value).toLowerCase()) !== -1,\n }[op] || compare.id);\n\nexport default strategiesOperators;\n"],
5
- "mappings": "AAAA;ACAA;AAEO,MAAM,sBAAsB,QAChC;AAAA,EACC,OAAO,CAAC,UAAU,EAAE,OAAO,UAAU,SAAS,YAAY,OAAO;AAAA,EACjE,OAAO,CAAC,QAAQ,WAAW,QAAQ,GAAG,QAAQ;AAAA,EAC9C,aAAa,QAAQ;AAAA,EACrB,UAAU,QAAQ;AAAA,EAClB,UAAU,CAAC,UAAU,UACnB,OAAO,UACJ,cACA,QAAQ,OAAO,OAAO,mBAAmB;AAAA,GAC9C,OAAO,QAAQ;AAEnB,IAAO,8BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/filterable/helper.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import {\n isFunction,\n uniqBy,\n get,\n groupBy,\n property,\n} from '@elliemae/ds-utilities';\n\nexport const getFilterLabel = (column, value) => (column.filterLabels ? column.filterLabels[value] || value : value);\n\nexport const getFilterLabels = (column, rows) =>\n uniqBy(rows, property(column.searchBy || column.property))\n .map((row) => {\n const value = get(row, column.searchBy || column.property);\n if (value === undefined) return {};\n const rowColumnValue = String(get(row, column.searchBy || column.property));\n if (isFunction(column.valueTransformation)) {\n const nextValue = column.valueTransformation(rowColumnValue);\n return { id: nextValue, label: nextValue };\n }\n const label = getFilterLabel(column, rowColumnValue);\n return { id: rowColumnValue || label, label };\n })\n .filter((row) => row.id)\n .filter((row) => {\n if (row.id.startsWith) return !row.id.startsWith('grouped-by');\n return true;\n });\n\nexport const getFilterLabelsGroup = (column, rows) => {\n let flat = [];\n rows.forEach((r) => {\n if (r.children) {\n flat = [...flat, ...r.children];\n }\n });\n return getFilterLabels(column, flat);\n};\n\nexport function getFilterValue(filter, column) {\n const { value } = filter;\n\n if (!column) return value;\n\n const { filterOptions, filterLabels } = column;\n\n if (filterOptions) {\n const foundOption = column.filterOptions.filter((option) => option.id === value)[0];\n if (foundOption) return foundOption.label;\n return value;\n }\n if (filterLabels) {\n return filterLabels[value];\n }\n\n return value;\n}\n\nexport function buildFilterArray(newFilter, filters) {\n // if (newFilter.type && newFilter.type === 'date') return [...filters.slice(1), newFilter]\n return uniqBy([...filters, newFilter], (v) => [v.group, v.value].join());\n}\n\nexport const groupFilters = (filters) => filters.filter((filter) => !filter.fixed);\n\nfunction parseFilterToRule(filter) {\n return {\n ...filter,\n value: filter.filterParams || filter.value,\n field: filter.group,\n };\n}\n\nexport function parseFiltersToQuery(filters) {\n const groupedFilters = groupBy(groupFilters(filters), (filter) => filter.group);\n return Object.keys(groupedFilters).reduce(\n (queryResult, field) => {\n const filter = groupedFilters[field];\n if (Array.isArray(filter) && filter.length > 1) {\n // create query group with 'OR' condition\n queryResult.rules.push({\n condition: 'OR',\n rules: filter.map(parseFilterToRule),\n });\n } else {\n queryResult.rules.push(parseFilterToRule(filter[0]));\n }\n return queryResult;\n },\n { condition: 'AND', rules: [] },\n );\n}\n"],
5
- "mappings": "AAAA;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQO,MAAM,iBAAiB,CAAC,QAAQ,UAAW,OAAO,eAAe,OAAO,aAAa,UAAU,QAAQ;AAEvG,MAAM,kBAAkB,CAAC,QAAQ,SACtC,OAAO,MAAM,SAAS,OAAO,YAAY,OAAO,WAC7C,IAAI,CAAC,QAAQ;AACZ,QAAM,QAAQ,IAAI,KAAK,OAAO,YAAY,OAAO;AACjD,MAAI,UAAU;AAAW,WAAO;AAChC,QAAM,iBAAiB,OAAO,IAAI,KAAK,OAAO,YAAY,OAAO;AACjE,MAAI,WAAW,OAAO,sBAAsB;AAC1C,UAAM,YAAY,OAAO,oBAAoB;AAC7C,WAAO,EAAE,IAAI,WAAW,OAAO;AAAA;AAEjC,QAAM,QAAQ,eAAe,QAAQ;AACrC,SAAO,EAAE,IAAI,kBAAkB,OAAO;AAAA,GAEvC,OAAO,CAAC,QAAQ,IAAI,IACpB,OAAO,CAAC,QAAQ;AACf,MAAI,IAAI,GAAG;AAAY,WAAO,CAAC,IAAI,GAAG,WAAW;AACjD,SAAO;AAAA;AAGN,MAAM,uBAAuB,CAAC,QAAQ,SAAS;AACpD,MAAI,OAAO;AACX,OAAK,QAAQ,CAAC,MAAM;AAClB,QAAI,EAAE,UAAU;AACd,aAAO,CAAC,GAAG,MAAM,GAAG,EAAE;AAAA;AAAA;AAG1B,SAAO,gBAAgB,QAAQ;AAAA;AAG1B,wBAAwB,QAAQ,QAAQ;AAC7C,QAAM,EAAE,UAAU;AAElB,MAAI,CAAC;AAAQ,WAAO;AAEpB,QAAM,EAAE,eAAe,iBAAiB;AAExC,MAAI,eAAe;AACjB,UAAM,cAAc,OAAO,cAAc,OAAO,CAAC,WAAW,OAAO,OAAO,OAAO;AACjF,QAAI;AAAa,aAAO,YAAY;AACpC,WAAO;AAAA;AAET,MAAI,cAAc;AAChB,WAAO,aAAa;AAAA;AAGtB,SAAO;AAAA;AAGF,0BAA0B,WAAW,SAAS;AAEnD,SAAO,OAAO,CAAC,GAAG,SAAS,YAAY,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO;AAAA;AAG5D,MAAM,eAAe,CAAC,YAAY,QAAQ,OAAO,CAAC,WAAW,CAAC,OAAO;AAE5E,2BAA2B,QAAQ;AACjC,SAAO;AAAA,OACF;AAAA,IACH,OAAO,OAAO,gBAAgB,OAAO;AAAA,IACrC,OAAO,OAAO;AAAA;AAAA;AAIX,6BAA6B,SAAS;AAC3C,QAAM,iBAAiB,QAAQ,aAAa,UAAU,CAAC,WAAW,OAAO;AACzE,SAAO,OAAO,KAAK,gBAAgB,OACjC,CAAC,aAAa,UAAU;AACtB,UAAM,SAAS,eAAe;AAC9B,QAAI,MAAM,QAAQ,WAAW,OAAO,SAAS,GAAG;AAE9C,kBAAY,MAAM,KAAK;AAAA,QACrB,WAAW;AAAA,QACX,OAAO,OAAO,IAAI;AAAA;AAAA,WAEf;AACL,kBAAY,MAAM,KAAK,kBAAkB,OAAO;AAAA;AAElD,WAAO;AAAA,KAET,EAAE,WAAW,OAAO,OAAO;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/filterable/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { FilterablePlugin } from './FilterablePlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/filterable/useFilterableState.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useMemo, useState, useEffect } from 'react';\nimport { v4 as uuidv4 } from 'uuid';\nimport {\n buildFilterArray,\n getFilterValue,\n parseFiltersToQuery,\n} from './helper';\n\nconst noop = () => null;\n\nexport function useFilterableState(grid) {\n const {\n filters: filtersProp,\n onAddFilter = noop,\n onRemoveFilter = noop,\n onRemoveAllFilters = noop,\n onFiltersChange = noop,\n } = grid.props;\n\n const [filters, setFilters] = useState(filtersProp || []);\n\n useEffect(() => {\n if (filtersProp && filtersProp !== filters) {\n setFilters(filtersProp);\n }\n }, [filtersProp]);\n\n const queryFromFilters = useMemo(() => parseFiltersToQuery(filters || []), [\n filters,\n ]);\n\n const handleFiltersChange = (nextFilters) => {\n const {\n refs: { body },\n } = grid.getInstance();\n body.current.scrollTop = 0;\n setFilters(nextFilters);\n grid.observeRows((rows) =>\n onFiltersChange(nextFilters, queryFromFilters, rows),\n );\n };\n\n const addFilter = (filter, column) => {\n let hasBeenCalled = false;\n const trimmedFilter = {\n ...filter,\n value: String(filter.value).trim(),\n };\n /* eslint-disable indent */\n const parsedFilter = !filter.group\n ? {\n ...trimmedFilter,\n value: String(filter.value).trim(),\n group: 'all',\n label: 'All',\n id: uuidv4(),\n }\n : {\n ...trimmedFilter,\n value: String(filter.value).trim(),\n id: uuidv4(),\n label: (column && column.filterLabel) || trimmedFilter.label,\n originalProperty: column.originalProperty || column.property,\n customValue: getFilterValue(trimmedFilter, column),\n };\n /* eslint-enable indent */\n setFilters((prevFilters) => {\n // This was setted for an issue that was recalling this function on the handleFiltersChange\n if (hasBeenCalled) {\n return;\n }\n hasBeenCalled = true;\n\n const nextFilters = buildFilterArray(parsedFilter, prevFilters);\n handleFiltersChange(nextFilters, true);\n onAddFilter(parsedFilter, nextFilters, column);\n });\n };\n\n const removeFilter = ({ group, pill, nextFilters }) => {\n onRemoveFilter(group, pill.value, nextFilters);\n handleFiltersChange(nextFilters);\n };\n\n const removeAllFilters = () => {\n onRemoveAllFilters();\n handleFiltersChange([]);\n };\n return {\n actions: {\n addFilter,\n removeFilter,\n removeAllFilters,\n },\n state: {\n query: queryFromFilters,\n filters,\n },\n };\n}\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAMA,MAAM,OAAO,MAAM;AAEZ,4BAA4B,MAAM;AACvC,QAAM;AAAA,IACJ,SAAS;AAAA,IACT,cAAc;AAAA,IACd,iBAAiB;AAAA,IACjB,qBAAqB;AAAA,IACrB,kBAAkB;AAAA,MAChB,KAAK;AAET,QAAM,CAAC,SAAS,cAAc,SAAS,eAAe;AAEtD,YAAU,MAAM;AACd,QAAI,eAAe,gBAAgB,SAAS;AAC1C,iBAAW;AAAA;AAAA,KAEZ,CAAC;AAEJ,QAAM,mBAAmB,QAAQ,MAAM,oBAAoB,WAAW,KAAK;AAAA,IACzE;AAAA;AAGF,QAAM,sBAAsB,CAAC,gBAAgB;AAC3C,UAAM;AAAA,MACJ,MAAM,EAAE;AAAA,QACN,KAAK;AACT,SAAK,QAAQ,YAAY;AACzB,eAAW;AACX,SAAK,YAAY,CAAC,SAChB,gBAAgB,aAAa,kBAAkB;AAAA;AAInD,QAAM,YAAY,CAAC,QAAQ,WAAW;AACpC,QAAI,gBAAgB;AACpB,UAAM,gBAAgB;AAAA,SACjB;AAAA,MACH,OAAO,OAAO,OAAO,OAAO;AAAA;AAG9B,UAAM,eAAe,CAAC,OAAO,QACzB;AAAA,SACK;AAAA,MACH,OAAO,OAAO,OAAO,OAAO;AAAA,MAC5B,OAAO;AAAA,MACP,OAAO;AAAA,MACP,IAAI;AAAA,QAEN;AAAA,SACK;AAAA,MACH,OAAO,OAAO,OAAO,OAAO;AAAA,MAC5B,IAAI;AAAA,MACJ,OAAQ,UAAU,OAAO,eAAgB,cAAc;AAAA,MACvD,kBAAkB,OAAO,oBAAoB,OAAO;AAAA,MACpD,aAAa,eAAe,eAAe;AAAA;AAGjD,eAAW,CAAC,gBAAgB;AAE1B,UAAI,eAAe;AACjB;AAAA;AAEF,sBAAgB;AAEhB,YAAM,cAAc,iBAAiB,cAAc;AACnD,0BAAoB,aAAa;AACjC,kBAAY,cAAc,aAAa;AAAA;AAAA;AAI3C,QAAM,eAAe,CAAC,EAAE,OAAO,MAAM,kBAAkB;AACrD,mBAAe,OAAO,KAAK,OAAO;AAClC,wBAAoB;AAAA;AAGtB,QAAM,mBAAmB,MAAM;AAC7B;AACA,wBAAoB;AAAA;AAEtB,SAAO;AAAA,IACL,SAAS;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA;AAAA,IAEF,OAAO;AAAA,MACL,OAAO;AAAA,MACP;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/grouping-by/GroupingByPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { groupBy } from 'lodash';\n\nconst groupedByData = (groupedBy, composedRows) => {\n const grouped = groupBy(composedRows, groupedBy);\n return Object.keys(grouped).map((c, key) => ({\n id: `grouped-by-${groupedBy}-${key}`,\n key: groupedBy,\n value: c,\n children: grouped[c],\n _isGroup: true,\n isGroup: true,\n }));\n};\n\nexport const GroupingByPlugin = createInstancePlugin('groupedByRows', {\n decorateGrid(grid) {\n const {\n composedRows,\n props: { groupedBy },\n } = grid.getInstance();\n grid.composedRows = groupedBy\n ? groupedByData(groupedBy, composedRows)\n : composedRows;\n return grid;\n },\n});\n"],
5
- "mappings": "AAAA;ACAA;AACA;AAEA,MAAM,gBAAgB,CAAC,WAAW,iBAAiB;AACjD,QAAM,UAAU,QAAQ,cAAc;AACtC,SAAO,OAAO,KAAK,SAAS,IAAI,CAAC,GAAG,QAAS;AAAA,IAC3C,IAAI,cAAc,aAAa;AAAA,IAC/B,KAAK;AAAA,IACL,OAAO;AAAA,IACP,UAAU,QAAQ;AAAA,IAClB,UAAU;AAAA,IACV,SAAS;AAAA;AAAA;AAIN,MAAM,mBAAmB,qBAAqB,iBAAiB;AAAA,EACpE,aAAa,MAAM;AACjB,UAAM;AAAA,MACJ;AAAA,MACA,OAAO,EAAE;AAAA,QACP,KAAK;AACT,SAAK,eAAe,YAChB,cAAc,WAAW,gBACzB;AACJ,WAAO;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/grouping-grid/GroupingPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable no-underscore-dangle */\nimport React, { useMemo } from 'react';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { VariableSizeList } from 'react-window';\nimport { walkTreeStrategy } from './walkStrategy';\nimport { RowSizes } from '../../rowSizes';\nimport { dataGridBlockName } from '../../blockNames';\n\nconst blockName = `${dataGridBlockName}-group-row-header`;\nconst GroupRowHeaderWrapper = aggregatedClasses('div')(blockName);\nconst GroupRowHeaderTitle = aggregatedClasses('div')(blockName, 'title');\n\nexport const GroupingPlugin = createInstancePlugin('groupedRows', {\n decorateGrid(grid) {\n const { columns, composedRows } = grid.getInstance();\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const detailColumns = useMemo(\n () =>\n columns\n .map((column) => ({\n ...column,\n customRenderer: column.detailCustomRenderer,\n }))\n .filter((col) => !col.expandableColumn),\n [columns],\n );\n const flatRows = [];\n walkTreeStrategy({\n data: composedRows,\n cb: (n) => flatRows.push(n),\n });\n return {\n detailColumns,\n composedRows: flatRows,\n };\n },\n getBodyProps(bodyProps, grid) {\n const { composedRows: rows } = grid.getInstance();\n // implementation of expandable row single column with aggregation\n const getItemSize = (index) => {\n const rowData = rows[index];\n if (!rowData) return RowSizes.normal;\n return rowData._isGroup || rowData.isGroup\n ? RowSizes.compact\n : RowSizes.normal;\n };\n // eslint-disable-next-line no-unused-vars\n const getListHeight = () => {\n const size = rows.reduce((h, r) => {\n const rowHeight =\n r._isGroup || r.isGroup ? RowSizes.compact : RowSizes.normal;\n return h + rowHeight;\n }, 0);\n return size;\n };\n return {\n ...bodyProps,\n getListHeight,\n listComponent: VariableSizeList,\n listProps: { itemSize: getItemSize },\n };\n },\n composeRows: (rows, grid) => {\n const {\n composedRows,\n props: { rowKey },\n } = grid.getInstance();\n\n if (Array.isArray(rows)) {\n const filterIds = rows.map((r) => r.data[rowKey]);\n return composedRows\n .filter((c) => filterIds.includes(c.data[rowKey]))\n .map((r) => ({\n ...r.data,\n children: Array.isArray(r.data.children)\n ? r.data.children.filter((c) => filterIds.includes(c[rowKey]))\n : r.data.children,\n _isGroup: r.isGroup,\n }))\n .filter((g) => g.children === undefined || g.children.length > 0);\n }\n return {\n ...rows,\n allRows: rows.allRows.map((r) => ({\n ...r.data,\n _isGroup: r.isGroup,\n })),\n rows: rows.rows.map((r) => ({\n ...r.data,\n _isGroup: r.isGroup,\n })),\n };\n },\n decorateRenderers(renderers, grid) {\n const Row = renderers.body.row;\n // eslint-disable-next-line react-hooks/rules-of-hooks\n renderers.body.row = useMemo(\n () =>\n // eslint-disable-next-line react/display-name\n // eslint-disable-next-line react/prop-types\n ({ isExpanded, ...rowProps }) => {\n const { composedRows } = grid.getInstance();\n // // https://jira.elliemae.io/browse/PUI-1667\n const node = composedRows[rowProps.index]\n ? composedRows[rowProps.index]\n : rowProps.rowData;\n const { groupedRowsRenderHeader } = grid.props;\n // eslint-disable-next-line no-underscore-dangle\n if (node && node._isGroup) {\n return (\n <>\n <GroupRowHeaderWrapper {...rowProps}>\n <GroupRowHeaderTitle>\n {groupedRowsRenderHeader\n ? groupedRowsRenderHeader(node)\n : 'Group'}\n </GroupRowHeaderTitle>\n </GroupRowHeaderWrapper>\n </>\n );\n }\n return <Row {...rowProps} />;\n },\n [],\n );\n\n return renderers;\n },\n});\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY,GAAG;AACrB,MAAM,wBAAwB,kBAAkB,OAAO;AACvD,MAAM,sBAAsB,kBAAkB,OAAO,WAAW;AAEzD,MAAM,iBAAiB,qBAAqB,eAAe;AAAA,EAChE,aAAa,MAAM;AACjB,UAAM,EAAE,SAAS,iBAAiB,KAAK;AAEvC,UAAM,gBAAgB,QACpB,MACE,QACG,IAAI,CAAC,WAAY;AAAA,SACb;AAAA,MACH,gBAAgB,OAAO;AAAA,QAExB,OAAO,CAAC,QAAQ,CAAC,IAAI,mBAC1B,CAAC;AAEH,UAAM,WAAW;AACjB,qBAAiB;AAAA,MACf,MAAM;AAAA,MACN,IAAI,CAAC,MAAM,SAAS,KAAK;AAAA;AAE3B,WAAO;AAAA,MACL;AAAA,MACA,cAAc;AAAA;AAAA;AAAA,EAGlB,aAAa,WAAW,MAAM;AAC5B,UAAM,EAAE,cAAc,SAAS,KAAK;AAEpC,UAAM,cAAc,CAAC,UAAU;AAC7B,YAAM,UAAU,KAAK;AACrB,UAAI,CAAC;AAAS,eAAO,SAAS;AAC9B,aAAO,QAAQ,YAAY,QAAQ,UAC/B,SAAS,UACT,SAAS;AAAA;AAGf,UAAM,gBAAgB,MAAM;AAC1B,YAAM,OAAO,KAAK,OAAO,CAAC,GAAG,MAAM;AACjC,cAAM,YACJ,EAAE,YAAY,EAAE,UAAU,SAAS,UAAU,SAAS;AACxD,eAAO,IAAI;AAAA,SACV;AACH,aAAO;AAAA;AAET,WAAO;AAAA,SACF;AAAA,MACH;AAAA,MACA,eAAe;AAAA,MACf,WAAW,EAAE,UAAU;AAAA;AAAA;AAAA,EAG3B,aAAa,CAAC,MAAM,SAAS;AAC3B,UAAM;AAAA,MACJ;AAAA,MACA,OAAO,EAAE;AAAA,QACP,KAAK;AAET,QAAI,MAAM,QAAQ,OAAO;AACvB,YAAM,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE,KAAK;AACzC,aAAO,aACJ,OAAO,CAAC,MAAM,UAAU,SAAS,EAAE,KAAK,UACxC,IAAI,CAAC,MAAO;AAAA,WACR,EAAE;AAAA,QACL,UAAU,MAAM,QAAQ,EAAE,KAAK,YAC3B,EAAE,KAAK,SAAS,OAAO,CAAC,MAAM,UAAU,SAAS,EAAE,YACnD,EAAE,KAAK;AAAA,QACX,UAAU,EAAE;AAAA,UAEb,OAAO,CAAC,MAAM,EAAE,aAAa,UAAa,EAAE,SAAS,SAAS;AAAA;AAEnE,WAAO;AAAA,SACF;AAAA,MACH,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAO;AAAA,WAC7B,EAAE;AAAA,QACL,UAAU,EAAE;AAAA;AAAA,MAEd,MAAM,KAAK,KAAK,IAAI,CAAC,MAAO;AAAA,WACvB,EAAE;AAAA,QACL,UAAU,EAAE;AAAA;AAAA;AAAA;AAAA,EAIlB,kBAAkB,WAAW,MAAM;AACjC,UAAM,MAAM,UAAU,KAAK;AAE3B,cAAU,KAAK,MAAM,QACnB,MAGE,CAAC,EAAE,eAAe,eAAe;AAC/B,YAAM,EAAE,iBAAiB,KAAK;AAE9B,YAAM,OAAO,aAAa,SAAS,SAC/B,aAAa,SAAS,SACtB,SAAS;AACb,YAAM,EAAE,4BAA4B,KAAK;AAEzC,UAAI,QAAQ,KAAK,UAAU;AACzB,eACE,4DACE,qCAAC,uBAAD;AAAA,aAA2B;AAAA,WACzB,qCAAC,qBAAD,MACG,0BACG,wBAAwB,QACxB;AAAA;AAMd,aAAO,qCAAC,KAAD;AAAA,WAAS;AAAA;AAAA,OAEpB;AAGF,WAAO;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/grouping-grid/walkStrategy.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "function getPath(parentNode, index, childrenKey) {\n if (!parentNode) return [index];\n return [...parentNode.path, childrenKey, index];\n}\n\nexport function walkTreeStrategy({\n data,\n childrenKey = 'children',\n level = 0,\n getId = item => item.id,\n parentNode,\n shouldWalkChildren = () => true,\n cb,\n}) {\n // eslint-disable-next-line no-loops/no-loops,no-plusplus\n for (let i = 0; i < data.length; i++) {\n const currLevel = level + 1;\n const children = data[i][childrenKey];\n const isGroup = children && !!children.length;\n const node = {\n index: i,\n id: getId(data[i]),\n data: data[i],\n path: getPath(parentNode, i, childrenKey),\n isGroup,\n nestingLevel: currLevel,\n parentNode: parentNode || {\n isGroup: true,\n data: { children: data },\n },\n };\n cb(node);\n if (shouldWalkChildren(node) && children && children.length) {\n walkTreeStrategy({\n data: children,\n level: currLevel,\n parentNode: node,\n shouldWalkChildren,\n cb,\n });\n }\n }\n}\n"],
5
- "mappings": "AAAA;ACAA,iBAAiB,YAAY,OAAO,aAAa;AAC/C,MAAI,CAAC;AAAY,WAAO,CAAC;AACzB,SAAO,CAAC,GAAG,WAAW,MAAM,aAAa;AAAA;AAGpC,0BAA0B;AAAA,EAC/B;AAAA,EACA,cAAc;AAAA,EACd,QAAQ;AAAA,EACR,QAAQ,UAAQ,KAAK;AAAA,EACrB;AAAA,EACA,qBAAqB,MAAM;AAAA,EAC3B;AAAA,GACC;AAED,WAAS,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;AACpC,UAAM,YAAY,QAAQ;AAC1B,UAAM,WAAW,KAAK,GAAG;AACzB,UAAM,UAAU,YAAY,CAAC,CAAC,SAAS;AACvC,UAAM,OAAO;AAAA,MACX,OAAO;AAAA,MACP,IAAI,MAAM,KAAK;AAAA,MACf,MAAM,KAAK;AAAA,MACX,MAAM,QAAQ,YAAY,GAAG;AAAA,MAC7B;AAAA,MACA,cAAc;AAAA,MACd,YAAY,cAAc;AAAA,QACxB,SAAS;AAAA,QACT,MAAM,EAAE,UAAU;AAAA;AAAA;AAGtB,OAAG;AACH,QAAI,mBAAmB,SAAS,YAAY,SAAS,QAAQ;AAC3D,uBAAiB;AAAA,QACf,MAAM;AAAA,QACN,OAAO;AAAA,QACP,YAAY;AAAA,QACZ;AAAA,QACA;AAAA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/plugins/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { BodyHeaderScrollSyncPlugin } from './body-header-scroll-sync';\nexport { DndColumnsPlugin } from './column-dnd';\nexport { ColumnSizingPlugin } from './column-sizing';\nexport { CustomRendererPlugin } from './custom-cell-renderer';\nexport { EditablePlugin, ComboBox, TextBox } from './editable';\nexport { ExpandableColumn, ExpandablePlugin } from './expandable-grid';\nexport { FilterablePlugin } from './filterable';\nexport { InfiniteScrollPlugin } from './infinite-scrolling';\nexport { PaginationPlugin } from './pagination';\nexport { ResizablePlugin } from './resizable';\nexport { DndRowsPlugin } from './row-dnd';\nexport { SelectablePlugin } from './selectable';\nexport { SortablePlugin } from './sortable';\nexport { ToolbarPlugin } from './toolbar';\nexport { ExportDataPlugin } from './export-data';\nexport { VirtualizationPlugin } from './virtualization';\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/infinite-scrolling/InfiniteScrollPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useRef, useEffect, useState } from 'react';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\n\n// TODO: EXPORT A SEPARATED INFINITE LOADER GRID\n\nconst registerStateHook = (grid) => {\n const {\n props: { getData, onInfiniteScrolling = () => null },\n actions: { updateRows },\n } = grid;\n\n const loading = useRef(false);\n\n const addMoreData = (data = []) => {\n loading.current = false;\n updateRows((prevRows) => prevRows.concat(data || []));\n };\n\n const doLoadData = async (currentRows) => {\n loading.current = true;\n return Promise.resolve(getData(currentRows)).then(addMoreData);\n };\n\n const loadMoreData = (currentRows) => {\n onInfiniteScrolling(currentRows);\n if (loading.current || !getData) return;\n doLoadData(currentRows);\n };\n\n return {\n actions: {\n loadMoreData,\n },\n };\n};\n\nconst getBodyProps = ({ children, ...props }, grid) => {\n const { loadMoreData } = grid.getInstance().actions;\n\n const [bodyNode, setBodyRef] = useState();\n const prevScroll = useRef();\n prevScroll.current = 0;\n\n const handleBodyScroll = (event, s) => {\n const { target } = event;\n const { scrollHeight, scrollTop, offsetHeight, scrollLeft } = target;\n const { composedRows } = grid.getInstance();\n // prevent horizontal scroll triggering infinite scrolling callbacks\n if (prevScroll.current !== scrollLeft) {\n prevScroll.current = scrollLeft;\n return;\n }\n // todo: clean this. Better approach using another component for the infinite scroll\n if (bodyNode !== target) return;\n if (scrollTop + offsetHeight >= scrollHeight - 1) {\n loadMoreData(composedRows);\n }\n };\n\n useEffect(() => {\n if (bodyNode) {\n bodyNode.addEventListener('scroll', handleBodyScroll);\n }\n return () => {\n if (bodyNode) {\n bodyNode.removeEventListener('scroll', handleBodyScroll);\n }\n };\n }, [bodyNode]);\n\n return {\n ...props,\n listProps: { outerRef: setBodyRef },\n };\n};\n\nexport const InfiniteScrollPlugin = createInstancePlugin('infinite-scroll', {\n registerStateHook,\n getBodyProps,\n});\n"],
5
- "mappings": "AAAA;ACAA;AACA;AAIA,MAAM,oBAAoB,CAAC,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS,sBAAsB,MAAM;AAAA,IAC9C,SAAS,EAAE;AAAA,MACT;AAEJ,QAAM,UAAU,OAAO;AAEvB,QAAM,cAAc,CAAC,OAAO,OAAO;AACjC,YAAQ,UAAU;AAClB,eAAW,CAAC,aAAa,SAAS,OAAO,QAAQ;AAAA;AAGnD,QAAM,aAAa,OAAO,gBAAgB;AACxC,YAAQ,UAAU;AAClB,WAAO,QAAQ,QAAQ,QAAQ,cAAc,KAAK;AAAA;AAGpD,QAAM,eAAe,CAAC,gBAAgB;AACpC,wBAAoB;AACpB,QAAI,QAAQ,WAAW,CAAC;AAAS;AACjC,eAAW;AAAA;AAGb,SAAO;AAAA,IACL,SAAS;AAAA,MACP;AAAA;AAAA;AAAA;AAKN,MAAM,eAAe,CAAC,EAAE,aAAa,SAAS,SAAS;AACrD,QAAM,EAAE,iBAAiB,KAAK,cAAc;AAE5C,QAAM,CAAC,UAAU,cAAc;AAC/B,QAAM,aAAa;AACnB,aAAW,UAAU;AAErB,QAAM,mBAAmB,CAAC,OAAO,MAAM;AACrC,UAAM,EAAE,WAAW;AACnB,UAAM,EAAE,cAAc,WAAW,cAAc,eAAe;AAC9D,UAAM,EAAE,iBAAiB,KAAK;AAE9B,QAAI,WAAW,YAAY,YAAY;AACrC,iBAAW,UAAU;AACrB;AAAA;AAGF,QAAI,aAAa;AAAQ;AACzB,QAAI,YAAY,gBAAgB,eAAe,GAAG;AAChD,mBAAa;AAAA;AAAA;AAIjB,YAAU,MAAM;AACd,QAAI,UAAU;AACZ,eAAS,iBAAiB,UAAU;AAAA;AAEtC,WAAO,MAAM;AACX,UAAI,UAAU;AACZ,iBAAS,oBAAoB,UAAU;AAAA;AAAA;AAAA,KAG1C,CAAC;AAEJ,SAAO;AAAA,OACF;AAAA,IACH,WAAW,EAAE,UAAU;AAAA;AAAA;AAIpB,MAAM,uBAAuB,qBAAqB,mBAAmB;AAAA,EAC1E;AAAA,EACA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/infinite-scrolling/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { InfiniteScrollPlugin } from './InfiniteScrollPlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/pagination/PaginationPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/display-name */\nimport React, { useMemo } from 'react';\nimport { mergeRefs } from '@elliemae/ds-utilities';\nimport { FocusGrid } from '@elliemae/ds-shared/FocusGroup/FocusGrid';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { paginate } from './helper';\nimport { usePaginationState } from './usePaginationState';\nimport { NoResults } from '../../components/NoResults';\n\nconst composeRows = (rows, grid) => {\n const {\n state: { pagination },\n props: { groupedRows },\n } = grid.getInstance();\n if (groupedRows) return rows; // disable pagination with grouping\n if (groupedRows) {\n const filterIds = rows.map((r) => r.id);\n return paginate(\n rows\n .filter((c) => filterIds.includes(c.id))\n .map((r) => ({\n ...r,\n _isGroup: r.isGroup,\n })),\n pagination,\n );\n }\n\n return paginate(rows, pagination);\n};\n\nconst Body = React.memo(\n ({\n component: Component,\n rows,\n rowRenderer,\n noResultsPlaceholder,\n innerRef,\n innerBodyRef, // depends on body-header-scroll-sync\n isPlaceholderActive = false,\n ...otherBodyProps\n }) => (\n <Component {...otherBodyProps} innerRef={mergeRefs(innerRef)}>\n {!isPlaceholderActive ? (\n rows.map((row, index) => rowRenderer(row, { index, rowIndex: index }, {}))\n ) : (\n <NoResults innerRef={innerRef} rowRenderer={rowRenderer}>\n {noResultsPlaceholder}\n </NoResults>\n )}\n </Component>\n ),\n);\n\nconst decorateRenderers = (renderers, grid) => {\n const BodyWrapper = renderers.body.wrapper;\n renderers.body.wrapper = useMemo(\n () => (props) => {\n const { hotKeys, shouldRefocus, state } = grid.getInstance();\n return (\n <FocusGrid hotKeys={hotKeys} shouldRefocus={false}>\n <Body {...props} component={BodyWrapper} />\n </FocusGrid>\n );\n },\n [],\n );\n return renderers;\n};\n\nexport const PaginationPlugin = createInstancePlugin('pagination', {\n registerStateHook: usePaginationState,\n decorateRenderers,\n composeRows,\n});\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,cAAc,CAAC,MAAM,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,IACT,OAAO,EAAE;AAAA,MACP,KAAK;AACT,MAAI;AAAa,WAAO;AACxB,MAAI,aAAa;AACf,UAAM,YAAY,KAAK,IAAI,CAAC,MAAM,EAAE;AACpC,WAAO,SACL,KACG,OAAO,CAAC,MAAM,UAAU,SAAS,EAAE,KACnC,IAAI,CAAC,MAAO;AAAA,SACR;AAAA,MACH,UAAU,EAAE;AAAA,SAEhB;AAAA;AAIJ,SAAO,SAAS,MAAM;AAAA;AAGxB,MAAM,OAAO,OAAM,KACjB,CAAC;AAAA,EACC,WAAW;AAAA,EACX;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,sBAAsB;AAAA,KACnB;AAAA,MAEH,qCAAC,WAAD;AAAA,KAAe;AAAA,EAAgB,UAAU,UAAU;AAAA,GAChD,CAAC,sBACA,KAAK,IAAI,CAAC,KAAK,UAAU,YAAY,KAAK,EAAE,OAAO,UAAU,SAAS,OAEtE,qCAAC,WAAD;AAAA,EAAW;AAAA,EAAoB;AAAA,GAC5B;AAOX,MAAM,oBAAoB,CAAC,WAAW,SAAS;AAC7C,QAAM,cAAc,UAAU,KAAK;AACnC,YAAU,KAAK,UAAU,QACvB,MAAM,CAAC,UAAU;AACf,UAAM,EAAE,SAAS,eAAe,UAAU,KAAK;AAC/C,WACE,qCAAC,WAAD;AAAA,MAAW;AAAA,MAAkB,eAAe;AAAA,OAC1C,qCAAC,MAAD;AAAA,SAAU;AAAA,MAAO,WAAW;AAAA;AAAA,KAIlC;AAEF,SAAO;AAAA;AAGF,MAAM,mBAAmB,qBAAqB,cAAc;AAAA,EACjE,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/pagination/components/Pagination.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { Paginator } from './Paginator';\nimport { PerPageDropdown } from './PerPageDropdown';\n\nconst PaginationControls = aggregatedClasses('div')(\n 'data-grid',\n 'controls-pagination',\n);\n\nconst Pagination = ({\n paginated,\n pagination = {},\n onPerPage,\n onPageSelect,\n paginationStep = 5,\n maxPerPage = 10,\n minPerPage = 5,\n}) => {\n const { perPage } = pagination;\n if (\n pagination &&\n pagination.conditionalPagination === true &&\n paginated.amount === 1\n )\n return null;\n return paginated.amount > 0 ? (\n <PaginationControls>\n <PerPageDropdown\n max={maxPerPage}\n min={minPerPage}\n onChange={onPerPage}\n step={paginationStep}\n value={perPage}\n />\n <Paginator\n onSelect={onPageSelect}\n pages={paginated.amount}\n pagination={pagination}\n />\n </PaginationControls>\n ) : null;\n};\n\nexport { Pagination };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,qBAAqB,kBAAkB,OAC3C,aACA;AAGF,MAAM,aAAa,CAAC;AAAA,EAClB;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,EACjB,aAAa;AAAA,EACb,aAAa;AAAA,MACT;AACJ,QAAM,EAAE,YAAY;AACpB,MACE,cACA,WAAW,0BAA0B,QACrC,UAAU,WAAW;AAErB,WAAO;AACT,SAAO,UAAU,SAAS,IACxB,qCAAC,oBAAD,MACE,qCAAC,iBAAD;AAAA,IACE,KAAK;AAAA,IACL,KAAK;AAAA,IACL,UAAU;AAAA,IACV,MAAM;AAAA,IACN,OAAO;AAAA,MAET,qCAAC,WAAD;AAAA,IACE,UAAU;AAAA,IACV,OAAO,UAAU;AAAA,IACjB;AAAA,QAGF;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/pagination/components/Paginator.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable @typescript-eslint/no-unsafe-assignment */\n/* eslint-disable @typescript-eslint/no-unsafe-member-access */\nimport React from 'react';\nimport ReactPagify from 'react-pagify';\nimport segmentize from 'segmentize';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst blockName = 'data-grid';\n\nconst PaginationContainer = aggregatedClasses('div')(blockName, 'pagination');\nconst PagifyContext = aggregatedClasses(ReactPagify?.Context)(blockName, 'pagify-pagination');\n\nconst Paginator = ({ pagination, pages, onSelect, labelPrevious = 'Previous', labelNext = 'Next' }) => {\n const prevPage = pagination.page - 1;\n const nextPage = pagination.page + 1;\n return (\n <PaginationContainer>\n <PagifyContext\n onSelect={(page) => page !== pagination.page && onSelect(page)}\n segments={segmentize({\n page: pagination.page,\n pages,\n beginPages: 1,\n endPages: 1,\n sidePages: 1,\n })}\n >\n <ReactPagify.Button className={pagination.page <= 1 ? 'button-disabled' : ''} page={prevPage}>\n {labelPrevious}\n </ReactPagify.Button>\n\n <ReactPagify.Segment field=\"beginPages\" />\n\n <ReactPagify.Ellipsis className=\"ellipsis\" nextField=\"previousPages\" previousField=\"beginPages\" />\n\n <ReactPagify.Segment field=\"previousPages\" />\n <ReactPagify.Segment className=\"selected\" field=\"centerPage\" />\n <ReactPagify.Segment field=\"nextPages\" />\n\n <ReactPagify.Ellipsis className=\"ellipsis\" nextField=\"endPages\" previousField=\"nextPages\" />\n\n <ReactPagify.Segment field=\"endPages\" />\n\n <ReactPagify.Button className={pagination.page >= pages ? 'button-disabled' : ''} page={nextPage}>\n {labelNext}\n </ReactPagify.Button>\n </PagifyContext>\n </PaginationContainer>\n );\n};\n\nexport { Paginator };\nexport default Paginator;\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AAEA,MAAM,YAAY;AAElB,MAAM,sBAAsB,kBAAkB,OAAO,WAAW;AAChE,MAAM,gBAAgB,kBAAkB,aAAa,SAAS,WAAW;AAEzE,MAAM,YAAY,CAAC,EAAE,YAAY,OAAO,UAAU,gBAAgB,YAAY,YAAY,aAAa;AACrG,QAAM,WAAW,WAAW,OAAO;AACnC,QAAM,WAAW,WAAW,OAAO;AACnC,SACE,qCAAC,qBAAD,MACE,qCAAC,eAAD;AAAA,IACE,UAAU,CAAC,SAAS,SAAS,WAAW,QAAQ,SAAS;AAAA,IACzD,UAAU,WAAW;AAAA,MACnB,MAAM,WAAW;AAAA,MACjB;AAAA,MACA,YAAY;AAAA,MACZ,UAAU;AAAA,MACV,WAAW;AAAA;AAAA,KAGb,qCAAC,YAAY,QAAb;AAAA,IAAoB,WAAW,WAAW,QAAQ,IAAI,oBAAoB;AAAA,IAAI,MAAM;AAAA,KACjF,gBAGH,qCAAC,YAAY,SAAb;AAAA,IAAqB,OAAM;AAAA,MAE3B,qCAAC,YAAY,UAAb;AAAA,IAAsB,WAAU;AAAA,IAAW,WAAU;AAAA,IAAgB,eAAc;AAAA,MAEnF,qCAAC,YAAY,SAAb;AAAA,IAAqB,OAAM;AAAA,MAC3B,qCAAC,YAAY,SAAb;AAAA,IAAqB,WAAU;AAAA,IAAW,OAAM;AAAA,MAChD,qCAAC,YAAY,SAAb;AAAA,IAAqB,OAAM;AAAA,MAE3B,qCAAC,YAAY,UAAb;AAAA,IAAsB,WAAU;AAAA,IAAW,WAAU;AAAA,IAAW,eAAc;AAAA,MAE9E,qCAAC,YAAY,SAAb;AAAA,IAAqB,OAAM;AAAA,MAE3B,qCAAC,YAAY,QAAb;AAAA,IAAoB,WAAW,WAAW,QAAQ,QAAQ,oBAAoB;AAAA,IAAI,MAAM;AAAA,KACrF;AAAA;AAQX,IAAO,oBAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../../scripts/build/transpile/react-shim.js", "../../../../../src/plugins/pagination/components/PerPageDropdown.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport memoize from 'memoize-one';\nimport { range } from '@elliemae/ds-utilities';\nimport { DSComboBox, components } from '@elliemae/ds-form';\n\nconst SingleValue = ({ children, ...props }) => (\n <components.SingleValue {...props}>\n {children} <span>per page</span>\n </components.SingleValue>\n);\n\nconst generateOption = (value) => ({\n value,\n label: value,\n});\nconst getOptions = memoize((step, min, max) => {\n const options = range(min, max + step, step).map(generateOption);\n return min === 0 ? options.slice(1, options.length) : options;\n});\n\nfunction PerPageDropdown({ min = 0, max = 100, step = 5, value = 0, onChange = () => null }) {\n const options = getOptions(step, min, max);\n return (\n <DSComboBox\n className=\"per-page-dropdown\"\n components={{\n SingleValue,\n }}\n containerProps={{\n 'data-testid': 'per-page-dropdown',\n }}\n maxOptions={10}\n onChange={onChange}\n options={options}\n searchable={false}\n value={value}\n />\n );\n}\n\nexport { PerPageDropdown };\nexport default PerPageDropdown;\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,cAAc,CAAC,EAAE,aAAa,YAClC,qCAAC,WAAW,aAAZ;AAAA,KAA4B;AAAA,GACzB,UAAS,KAAC,qCAAC,QAAD,MAAM;AAIrB,MAAM,iBAAiB,CAAC,UAAW;AAAA,EACjC;AAAA,EACA,OAAO;AAAA;AAET,MAAM,aAAa,QAAQ,CAAC,MAAM,KAAK,QAAQ;AAC7C,QAAM,UAAU,MAAM,KAAK,MAAM,MAAM,MAAM,IAAI;AACjD,SAAO,QAAQ,IAAI,QAAQ,MAAM,GAAG,QAAQ,UAAU;AAAA;AAGxD,yBAAyB,EAAE,MAAM,GAAG,MAAM,KAAK,OAAO,GAAG,QAAQ,GAAG,WAAW,MAAM,QAAQ;AAC3F,QAAM,UAAU,WAAW,MAAM,KAAK;AACtC,SACE,qCAAC,YAAD;AAAA,IACE,WAAU;AAAA,IACV,YAAY;AAAA,MACV;AAAA;AAAA,IAEF,gBAAgB;AAAA,MACd,eAAe;AAAA;AAAA,IAEjB,YAAY;AAAA,IACZ;AAAA,IACA;AAAA,IACA,YAAY;AAAA,IACZ;AAAA;AAAA;AAMN,IAAO,0BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/pagination/helper.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export const parsePerPageNumber = (number, max, min = 1) => {\n if (number > max) return max;\n if (number < min) return min;\n return number;\n};\n\nexport const paginate = (\n rows,\n { page, perPage = 1, amountOfPages: amount, totalRows },\n) => {\n // return if pagination state is controlled\n if (amount && totalRows) {\n return {\n amount,\n rows,\n page,\n };\n }\n // adapt to zero indexed logic\n const p = page - 1 || 0;\n\n const amountOfPages = perPage\n ? Math.ceil(rows.length / (perPage > 0 ? perPage : 1))\n : 1;\n const startPage = p < amountOfPages ? p : 0;\n\n return {\n amount: amountOfPages,\n rows: perPage\n ? rows.slice(startPage * perPage, startPage * perPage + perPage)\n : rows,\n allRows: rows,\n page: startPage,\n };\n};\n\nexport default paginate;\n"],
5
- "mappings": "AAAA;ACAO,MAAM,qBAAqB,CAAC,QAAQ,KAAK,MAAM,MAAM;AAC1D,MAAI,SAAS;AAAK,WAAO;AACzB,MAAI,SAAS;AAAK,WAAO;AACzB,SAAO;AAAA;AAGF,MAAM,WAAW,CACtB,MACA,EAAE,MAAM,UAAU,GAAG,eAAe,QAAQ,gBACzC;AAEH,MAAI,UAAU,WAAW;AACvB,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAIJ,QAAM,IAAI,OAAO,KAAK;AAEtB,QAAM,gBAAgB,UAClB,KAAK,KAAK,KAAK,SAAU,WAAU,IAAI,UAAU,MACjD;AACJ,QAAM,YAAY,IAAI,gBAAgB,IAAI;AAE1C,SAAO;AAAA,IACL,QAAQ;AAAA,IACR,MAAM,UACF,KAAK,MAAM,YAAY,SAAS,YAAY,UAAU,WACtD;AAAA,IACJ,SAAS;AAAA,IACT,MAAM;AAAA;AAAA;AAIV,IAAO,iBAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/pagination/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { PaginationPlugin } from './PaginationPlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/pagination/usePaginationState.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { parsePerPageNumber } from './helper';\n\nexport function usePaginationState(grid) {\n const {\n minPerPage = 0,\n maxPerPage = 50,\n onPerPageChange = () => null,\n onPageChange = () => null,\n pagination: paginationProp = {\n page: 1,\n perPage: 10,\n },\n groupedRows,\n } = grid.props;\n const { composedRows, rows } = grid.getInstance();\n const [pagination, setPagination] = useDerivedStateFromProps(paginationProp);\n\n const onPerPage = (perPageNumber) => {\n const parsedPerPageNumber = parsePerPageNumber(perPageNumber, maxPerPage, minPerPage);\n const actualNumber = parsedPerPageNumber ? parseInt(parsedPerPageNumber, 10) : 0;\n\n setPagination((prevPagination) => {\n onPerPageChange(actualNumber);\n return {\n page: prevPagination.page,\n perPage: actualNumber,\n };\n });\n };\n\n const onPageSelect = (page) => {\n const length = groupedRows ? composedRows.length : rows.length;\n setPagination((prevPagination) => {\n const pages = Math.ceil(length / prevPagination.perPage);\n onPageChange(page);\n return {\n ...prevPagination,\n page: Math.min(Math.max(page, 1), pages),\n };\n });\n };\n\n return {\n state: {\n pagination,\n },\n actions: {\n onPerPage,\n onPageSelect,\n },\n };\n}\n"],
5
- "mappings": "AAAA;ACAA;AACA;AAEO,4BAA4B,MAAM;AACvC,QAAM;AAAA,IACJ,aAAa;AAAA,IACb,aAAa;AAAA,IACb,kBAAkB,MAAM;AAAA,IACxB,eAAe,MAAM;AAAA,IACrB,YAAY,iBAAiB;AAAA,MAC3B,MAAM;AAAA,MACN,SAAS;AAAA;AAAA,IAEX;AAAA,MACE,KAAK;AACT,QAAM,EAAE,cAAc,SAAS,KAAK;AACpC,QAAM,CAAC,YAAY,iBAAiB,yBAAyB;AAE7D,QAAM,YAAY,CAAC,kBAAkB;AACnC,UAAM,sBAAsB,mBAAmB,eAAe,YAAY;AAC1E,UAAM,eAAe,sBAAsB,SAAS,qBAAqB,MAAM;AAE/E,kBAAc,CAAC,mBAAmB;AAChC,sBAAgB;AAChB,aAAO;AAAA,QACL,MAAM,eAAe;AAAA,QACrB,SAAS;AAAA;AAAA;AAAA;AAKf,QAAM,eAAe,CAAC,SAAS;AAC7B,UAAM,SAAS,cAAc,aAAa,SAAS,KAAK;AACxD,kBAAc,CAAC,mBAAmB;AAChC,YAAM,QAAQ,KAAK,KAAK,SAAS,eAAe;AAChD,mBAAa;AACb,aAAO;AAAA,WACF;AAAA,QACH,MAAM,KAAK,IAAI,KAAK,IAAI,MAAM,IAAI;AAAA;AAAA;AAAA;AAKxC,SAAO;AAAA,IACL,OAAO;AAAA,MACL;AAAA;AAAA,IAEF,SAAS;AAAA,MACP;AAAA,MACA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/resizable/ResizablePlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-param-reassign */\n/* eslint-disable max-statements */\nimport { runAll } from '@elliemae/ds-utilities';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { addResizableToColumn, resizableFormatter } from './decorateResizable';\n\nconst noop = () => null;\n\nconst DELTA_LAST_COLUMN = 25;\n\n// eslint-disable-next-line no-unused-vars\nconst decorateColumn = (column, grid, index) => {\n const {\n onResizeEnd = noop,\n onResizeStart = noop,\n minColumnWidth = 90,\n isColumnResizeActive = (col) => col.resizable && !col.expandableColumn,\n onColumnResize,\n } = grid.props;\n\n const { decoratedColumns } = grid.getInstance();\n // need to do this because the decorated columns which the index in the function call\n // could be different from the final decorated columns because a plugin could add a\n // column afterwards\n const colIndex = decoratedColumns.findIndex((col) => col.property === column.property);\n const isLast = colIndex === decoratedColumns.length - 1;\n\n if (!isColumnResizeActive(column)) return column;\n return addResizableToColumn(\n column,\n resizableFormatter({\n onDragStart: () => {\n grid.isDragging.current = true;\n grid.disableEvents();\n onResizeStart();\n onColumnResize('onResizeStart', { column });\n },\n onDrag: (width, increasing) => {\n const { resizedColumns, refs } = grid.getInstance();\n if (isLast && increasing) {\n const thisCol = resizedColumns.current[column.uuid] || 0;\n width = Math.max(thisCol + DELTA_LAST_COLUMN, width);\n }\n column.updateBodyHeaderWidth(width, width);\n grid.updateRowWidth();\n if (isLast && increasing) {\n // TODO: Move this to packages/ds-shared/src/ScrollSync/ScrollSync.js\n // It isn't watching the scrollLeft so you have to move both at the same time\n refs.header.current.scrollLeft += DELTA_LAST_COLUMN;\n refs.body.current.scrollLeft += DELTA_LAST_COLUMN;\n }\n },\n onDragEnd: (width, increasing, extraData) => {\n const { resizedColumns } = grid.getInstance();\n if (isLast && increasing) {\n const thisCol = resizedColumns.current[column.uuid] || 0;\n width = Math.max(thisCol + DELTA_LAST_COLUMN, width);\n }\n resizedColumns.current[column.uuid] = width;\n\n grid.isDragging.current = false;\n grid.enableEvents();\n try {\n const total = grid.getInstance().refs.body.current.scrollWidth;\n const sum = Object.keys(grid.resizedColumns.current).reduce((p, n) => grid.resizedColumns.current[n] + p, 0);\n const lastKey = grid.decoratedColumns[grid.columns.length - 1].uuid;\n if (sum < total) {\n const lastCol = grid.getInstance().columnSizeService.columns[lastKey];\n lastCol.updateWidth(grid.resizedColumns.current[lastKey] + total - sum);\n lastCol.updateBodyHeaderWidth(grid.resizedColumns.current[lastKey] + total - sum);\n grid.getInstance().columnSizeService.updateMissingWidths(total);\n }\n } catch (error) {\n console.error(\n 'Unexpected error in the addResizableToColumn trying to use the remaining grid space to the last column',\n error,\n );\n }\n\n onColumnResize('onResizeEnd', {\n column,\n width,\n extraData,\n });\n runAll(onResizeEnd)(width, extraData);\n grid.updateRowWidth();\n },\n minWidth: (column.minWidth || minColumnWidth) - (isLast ? DELTA_LAST_COLUMN : 0),\n isLast,\n }),\n );\n};\n\nexport const ResizablePlugin = createInstancePlugin('resizable', {\n decorateColumn,\n});\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AAEA,MAAM,OAAO,MAAM;AAEnB,MAAM,oBAAoB;AAG1B,MAAM,iBAAiB,CAAC,QAAQ,MAAM,UAAU;AAC9C,QAAM;AAAA,IACJ,cAAc;AAAA,IACd,gBAAgB;AAAA,IAChB,iBAAiB;AAAA,IACjB,uBAAuB,CAAC,QAAQ,IAAI,aAAa,CAAC,IAAI;AAAA,IACtD;AAAA,MACE,KAAK;AAET,QAAM,EAAE,qBAAqB,KAAK;AAIlC,QAAM,WAAW,iBAAiB,UAAU,CAAC,QAAQ,IAAI,aAAa,OAAO;AAC7E,QAAM,SAAS,aAAa,iBAAiB,SAAS;AAEtD,MAAI,CAAC,qBAAqB;AAAS,WAAO;AAC1C,SAAO,qBACL,QACA,mBAAmB;AAAA,IACjB,aAAa,MAAM;AACjB,WAAK,WAAW,UAAU;AAC1B,WAAK;AACL;AACA,qBAAe,iBAAiB,EAAE;AAAA;AAAA,IAEpC,QAAQ,CAAC,OAAO,eAAe;AAC7B,YAAM,EAAE,gBAAgB,SAAS,KAAK;AACtC,UAAI,UAAU,YAAY;AACxB,cAAM,UAAU,eAAe,QAAQ,OAAO,SAAS;AACvD,gBAAQ,KAAK,IAAI,UAAU,mBAAmB;AAAA;AAEhD,aAAO,sBAAsB,OAAO;AACpC,WAAK;AACL,UAAI,UAAU,YAAY;AAGxB,aAAK,OAAO,QAAQ,cAAc;AAClC,aAAK,KAAK,QAAQ,cAAc;AAAA;AAAA;AAAA,IAGpC,WAAW,CAAC,OAAO,YAAY,cAAc;AAC3C,YAAM,EAAE,mBAAmB,KAAK;AAChC,UAAI,UAAU,YAAY;AACxB,cAAM,UAAU,eAAe,QAAQ,OAAO,SAAS;AACvD,gBAAQ,KAAK,IAAI,UAAU,mBAAmB;AAAA;AAEhD,qBAAe,QAAQ,OAAO,QAAQ;AAEtC,WAAK,WAAW,UAAU;AAC1B,WAAK;AACL,UAAI;AACF,cAAM,QAAQ,KAAK,cAAc,KAAK,KAAK,QAAQ;AACnD,cAAM,MAAM,OAAO,KAAK,KAAK,eAAe,SAAS,OAAO,CAAC,GAAG,MAAM,KAAK,eAAe,QAAQ,KAAK,GAAG;AAC1G,cAAM,UAAU,KAAK,iBAAiB,KAAK,QAAQ,SAAS,GAAG;AAC/D,YAAI,MAAM,OAAO;AACf,gBAAM,UAAU,KAAK,cAAc,kBAAkB,QAAQ;AAC7D,kBAAQ,YAAY,KAAK,eAAe,QAAQ,WAAW,QAAQ;AACnE,kBAAQ,sBAAsB,KAAK,eAAe,QAAQ,WAAW,QAAQ;AAC7E,eAAK,cAAc,kBAAkB,oBAAoB;AAAA;AAAA,eAEpD,OAAP;AACA,gBAAQ,MACN,0GACA;AAAA;AAIJ,qBAAe,eAAe;AAAA,QAC5B;AAAA,QACA;AAAA,QACA;AAAA;AAEF,aAAO,aAAa,OAAO;AAC3B,WAAK;AAAA;AAAA,IAEP,UAAW,QAAO,YAAY,kBAAmB,UAAS,oBAAoB;AAAA,IAC9E;AAAA;AAAA;AAKC,MAAM,kBAAkB,qBAAqB,aAAa;AAAA,EAC/D;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/resizable/decorateResizable.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { appendHeaderFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport { useResizeHandle } from './useResizeHandle';\n\nconst addResizableToColumn = (column, formatter) =>\n appendHeaderFormatter(formatter, column);\n\nconst ResizableWrapper = React.memo(\n ({ value, onDrag, onDragEnd, onDragStart, minWidth, handleClassName }) => {\n const { containerRef, Handle } = useResizeHandle({\n onDrag,\n onDragEnd,\n onDragStart,\n minWidth,\n handleClassName,\n });\n return (\n <div ref={containerRef} className=\"resize-container\">\n {value}\n <Handle />\n </div>\n );\n },\n);\n\n// eslint-disable-next-line react/display-name\nconst resizableFormatter = options => value => (\n <ResizableWrapper {...options} value={value} />\n);\n\nexport { addResizableToColumn, resizableFormatter };\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAEA,MAAM,uBAAuB,CAAC,QAAQ,cACpC,sBAAsB,WAAW;AAEnC,MAAM,mBAAmB,OAAM,KAC7B,CAAC,EAAE,OAAO,QAAQ,WAAW,aAAa,UAAU,sBAAsB;AACxE,QAAM,EAAE,cAAc,WAAW,gBAAgB;AAAA,IAC/C;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAEF,SACE,qCAAC,OAAD;AAAA,IAAK,KAAK;AAAA,IAAc,WAAU;AAAA,KAC/B,OACD,qCAAC,QAAD;AAAA;AAOR,MAAM,qBAAqB,aAAW,WACpC,qCAAC,kBAAD;AAAA,KAAsB;AAAA,EAAS;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/resizable/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { ResizablePlugin } from './ResizablePlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/resizable/useResizeHandle.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React, { useCallback, useRef } from 'react';\n\nexport const useResizeHandle = ({\n onDragStart,\n onDrag,\n onDragEnd,\n minWidth = 10,\n isLast = false,\n}) => {\n const startX = useRef();\n const startWidth = useRef();\n const containerRef = useRef();\n\n const triggerMove = (handler, event) => {\n const increasing = startX.current - event.clientX < 0;\n handler(\n Math.max(startWidth.current - startX.current + event.clientX, minWidth),\n increasing,\n {},\n );\n };\n\n const onMouseMove = event => {\n event.stopPropagation();\n event.preventDefault();\n\n triggerMove(onDrag, event);\n };\n\n const onMouseUp = event => {\n event.stopPropagation();\n event.preventDefault();\n\n triggerMove(onDragEnd, event);\n\n document.removeEventListener('mousemove', onMouseMove);\n document.removeEventListener('mouseup', onMouseUp);\n };\n\n const onMouseDown = event => {\n event.stopPropagation();\n event.preventDefault();\n\n document.addEventListener('mousemove', onMouseMove);\n document.addEventListener('mouseup', onMouseUp);\n\n startX.current = event.clientX;\n startWidth.current = containerRef.current.offsetWidth;\n\n triggerMove(onDragStart, event);\n };\n\n const HandleComponent = ({ className = 'resize-handle' }) => (\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n <div className={className} onMouseDown={onMouseDown} />\n );\n\n return {\n containerRef,\n Handle: HandleComponent,\n };\n};\n"],
5
- "mappings": "AAAA;ACAA;AAEO,MAAM,kBAAkB,CAAC;AAAA,EAC9B;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AAAA,EACX,SAAS;AAAA,MACL;AACJ,QAAM,SAAS;AACf,QAAM,aAAa;AACnB,QAAM,eAAe;AAErB,QAAM,cAAc,CAAC,SAAS,UAAU;AACtC,UAAM,aAAa,OAAO,UAAU,MAAM,UAAU;AACpD,YACE,KAAK,IAAI,WAAW,UAAU,OAAO,UAAU,MAAM,SAAS,WAC9D,YACA;AAAA;AAIJ,QAAM,cAAc,WAAS;AAC3B,UAAM;AACN,UAAM;AAEN,gBAAY,QAAQ;AAAA;AAGtB,QAAM,YAAY,WAAS;AACzB,UAAM;AACN,UAAM;AAEN,gBAAY,WAAW;AAEvB,aAAS,oBAAoB,aAAa;AAC1C,aAAS,oBAAoB,WAAW;AAAA;AAG1C,QAAM,cAAc,WAAS;AAC3B,UAAM;AACN,UAAM;AAEN,aAAS,iBAAiB,aAAa;AACvC,aAAS,iBAAiB,WAAW;AAErC,WAAO,UAAU,MAAM;AACvB,eAAW,UAAU,aAAa,QAAQ;AAE1C,gBAAY,aAAa;AAAA;AAG3B,QAAM,kBAAkB,CAAC,EAAE,YAAY,sBAErC,qCAAC,OAAD;AAAA,IAAK;AAAA,IAAsB;AAAA;AAG7B,SAAO;AAAA,IACL;AAAA,IACA,QAAQ;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/resizable/utils.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { parseInt } from '@elliemae/ds-utilities';\nimport memoizeOne from 'memoize-one';\n\nexport const isPercentNumber = (stringNumber) => typeof stringNumber === 'string' && stringNumber.indexOf('%') !== -1;\nexport const isPxNumber = (stringNumber) => typeof stringNumber === 'string' && stringNumber.indexOf('px') !== -1;\n\nexport const translatePercentageToPx = memoizeOne((totalWidth, percentage, minWidth = 0) => {\n const parsedPercentatge = parseInt(percentage.replace('%', ''));\n const width = (totalWidth * parsedPercentatge) / 100;\n return width > minWidth ? width : minWidth;\n});\n\nconst translateStringPxToNumberPx = memoizeOne((pxNumber) => parseInt(pxNumber.replace('%', '')));\nconst translatePxToPercentage = memoizeOne((totalWidth, pxWidth) => `${(pxWidth / totalWidth) * 100}%`);\n\nconst getWidth = memoizeOne((gridWidth, width = 0, minWidth) => {\n if (isPercentNumber(width)) return translatePercentageToPx(gridWidth, width, minWidth);\n if (isPxNumber(width)) return translateStringPxToNumberPx(width);\n return width;\n});\n"],
5
- "mappings": "AAAA;ACAA;AACA;AAEO,MAAM,kBAAkB,CAAC,iBAAiB,OAAO,iBAAiB,YAAY,aAAa,QAAQ,SAAS;AAC5G,MAAM,aAAa,CAAC,iBAAiB,OAAO,iBAAiB,YAAY,aAAa,QAAQ,UAAU;AAExG,MAAM,0BAA0B,WAAW,CAAC,YAAY,YAAY,WAAW,MAAM;AAC1F,QAAM,oBAAoB,SAAS,WAAW,QAAQ,KAAK;AAC3D,QAAM,QAAS,aAAa,oBAAqB;AACjD,SAAO,QAAQ,WAAW,QAAQ;AAAA;AAGpC,MAAM,8BAA8B,WAAW,CAAC,aAAa,SAAS,SAAS,QAAQ,KAAK;AAC5F,MAAM,0BAA0B,WAAW,CAAC,YAAY,YAAY,GAAI,UAAU,aAAc;AAEhG,MAAM,WAAW,WAAW,CAAC,WAAW,QAAQ,GAAG,aAAa;AAC9D,MAAI,gBAAgB;AAAQ,WAAO,wBAAwB,WAAW,OAAO;AAC7E,MAAI,WAAW;AAAQ,WAAO,4BAA4B;AAC1D,SAAO;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/row-dnd/DndRowsPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable react-hooks/rules-of-hooks */\nimport React, { useMemo } from 'react';\nimport { SortableElement, SortableContainer, SortableHandle } from 'react-sortable-hoc';\nimport { GripperVertical } from '@elliemae/ds-icons';\nimport { omit } from '@elliemae/ds-utilities';\nimport { appendCellFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\n\n// todo: remove once it's fixed in react-sortable-hoc library\nconst keysToOmit = [\n 'axis',\n 'contentWindow',\n 'disableAutoscroll',\n 'distance',\n 'getContainer',\n 'getHelperDimensions',\n 'helperClass',\n 'helperContainer',\n 'hideSortableGhost',\n 'keyboardSortingTransitionDuration',\n 'lockAxis',\n 'lockOffset',\n 'lockToContainerEdges',\n 'onSortEnd',\n 'onSortMove',\n 'onSortOver',\n 'onSortStart',\n 'pressDelay',\n 'pressThreshold',\n 'shouldCancelStart',\n 'transitionDuration',\n 'updateBeforeSortStart',\n 'useDragHandle',\n 'useWindowAsScrollContainer',\n];\n\nconst DragHandle = SortableHandle(() => <GripperVertical className=\"drag-handle\" />);\n\nconst translateDnDData = ({ oldIndex, newIndex, index }) => ({\n sourceIndex: oldIndex,\n targetIndex: newIndex,\n fromIndex: index === undefined ? oldIndex : index,\n});\n\nconst decorateColumns = (columns) => {\n const dragColumn = {\n property: 'drag',\n label: '',\n visible: true,\n width: 24,\n minWidth: 24,\n special: true,\n };\n return [\n appendCellFormatter(\n () => (\n <>\n <DragHandle />\n </>\n ),\n dragColumn,\n ),\n ...columns,\n ];\n};\n\nconst getBodyProps = (props, grid) => {\n const { onMoveRowEnd, onReorder, onMoveRowStart } = grid.props;\n return {\n ...props,\n onSortEnd: (data) => {\n grid.enableEvents();\n grid.setIsRowDragging(false);\n onMoveRowEnd(translateDnDData(data));\n },\n onSortStart: (...args) => {\n grid.disableEvents();\n grid.setIsRowDragging(true);\n onMoveRowStart(...args);\n },\n onSortOver: (data) => {\n onReorder(translateDnDData(data));\n },\n lockAxis: 'y',\n useDragHandle: true,\n helperClass: 'row-drag-helper',\n // a promise is needed, since sortable it's mounted before it's container\n getContainer: () =>\n new Promise((resolve) => {\n setTimeout(() => {\n resolve(grid.refs.innerBody.current || grid.refs.body.current);\n }, 100);\n }),\n };\n};\n\nconst decorateRenderers = (renderers) => {\n const RowComponent = renderers.body.row;\n const BodyWrapperComponent = renderers.body.wrapper;\n\n const Row = useMemo(() => SortableElement(RowComponent), []);\n\n const BodyWrapper = useMemo(\n () => SortableContainer((props) => <BodyWrapperComponent {...omit(props, keysToOmit)} />),\n [],\n );\n\n return {\n ...renderers,\n body: {\n ...renderers.body,\n wrapper: BodyWrapper,\n row: Row,\n },\n };\n};\n\nexport const DndRowsPlugin = createInstancePlugin('dnd-rows', {\n decorateColumns,\n getBodyProps,\n decorateRenderers,\n});\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAM,aAAa;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAGF,MAAM,aAAa,eAAe,MAAM,qCAAC,iBAAD;AAAA,EAAiB,WAAU;AAAA;AAEnE,MAAM,mBAAmB,CAAC,EAAE,UAAU,UAAU,YAAa;AAAA,EAC3D,aAAa;AAAA,EACb,aAAa;AAAA,EACb,WAAW,UAAU,SAAY,WAAW;AAAA;AAG9C,MAAM,kBAAkB,CAAC,YAAY;AACnC,QAAM,aAAa;AAAA,IACjB,UAAU;AAAA,IACV,OAAO;AAAA,IACP,SAAS;AAAA,IACT,OAAO;AAAA,IACP,UAAU;AAAA,IACV,SAAS;AAAA;AAEX,SAAO;AAAA,IACL,oBACE,MACE,4DACE,qCAAC,YAAD,QAGJ;AAAA,IAEF,GAAG;AAAA;AAAA;AAIP,MAAM,eAAe,CAAC,OAAO,SAAS;AACpC,QAAM,EAAE,cAAc,WAAW,mBAAmB,KAAK;AACzD,SAAO;AAAA,OACF;AAAA,IACH,WAAW,CAAC,SAAS;AACnB,WAAK;AACL,WAAK,iBAAiB;AACtB,mBAAa,iBAAiB;AAAA;AAAA,IAEhC,aAAa,IAAI,SAAS;AACxB,WAAK;AACL,WAAK,iBAAiB;AACtB,qBAAe,GAAG;AAAA;AAAA,IAEpB,YAAY,CAAC,SAAS;AACpB,gBAAU,iBAAiB;AAAA;AAAA,IAE7B,UAAU;AAAA,IACV,eAAe;AAAA,IACf,aAAa;AAAA,IAEb,cAAc,MACZ,IAAI,QAAQ,CAAC,YAAY;AACvB,iBAAW,MAAM;AACf,gBAAQ,KAAK,KAAK,UAAU,WAAW,KAAK,KAAK,KAAK;AAAA,SACrD;AAAA;AAAA;AAAA;AAKX,MAAM,oBAAoB,CAAC,cAAc;AACvC,QAAM,eAAe,UAAU,KAAK;AACpC,QAAM,uBAAuB,UAAU,KAAK;AAE5C,QAAM,MAAM,QAAQ,MAAM,gBAAgB,eAAe;AAEzD,QAAM,cAAc,QAClB,MAAM,kBAAkB,CAAC,UAAU,qCAAC,sBAAD;AAAA,OAA0B,KAAK,OAAO;AAAA,OACzE;AAGF,SAAO;AAAA,OACF;AAAA,IACH,MAAM;AAAA,SACD,UAAU;AAAA,MACb,SAAS;AAAA,MACT,KAAK;AAAA;AAAA;AAAA;AAKJ,MAAM,gBAAgB,qBAAqB,YAAY;AAAA,EAC5D;AAAA,EACA;AAAA,EACA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/row-dnd/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { DndRowsPlugin } from './DndRowsPlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/SelectablePlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react-hooks/rules-of-hooks */\n/* eslint-disable max-lines */\nimport { useEffect, useState, useCallback } from 'react';\nimport cx from 'obj-str';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { selectionColumnCreator } from './addSelectableColumn';\nimport { useSelectableState } from './useSelectableState';\nimport { selectMultipleRow, selectSingleRow } from './helper';\n\n// DECORATORS\nconst decorateColumns = (columns, grid) => {\n const {\n props: {\n selectable,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n },\n actions: { selectAll: handleSelectAll, selectRow: handleSelectRow },\n state: { selection },\n } = grid;\n\n const createSelectionColumn = selectionColumnCreator({\n grid,\n multiple: selectable === 'multi',\n selectAll: selection.selectAll,\n onSelectAll: handleSelectAll,\n onSelectRow: handleSelectRow,\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent,\n });\n\n const { showSelectColumn, selectionColumnDefinition } = grid.props;\n\n if (showSelectColumn) {\n const selectionColumn = createSelectionColumn(selectionColumnDefinition);\n return [selectionColumn, ...columns];\n }\n return columns;\n};\n\nconst getRowProps = (rowProps, grid, { rowData }) => {\n const {\n props: { showSelectHighlight, showSelectColumn, rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n\n const { _index } = rowData;\n const isSelected = rowData['metaData.selected'];\n\n if (!showSelectColumn) {\n rowProps.onClick = () => selectRow(rowData[rowKey], _index);\n }\n\n rowProps.className = cx({\n [rowProps.className]: true,\n selected: isSelected,\n 'select-highlight': showSelectHighlight && isSelected,\n });\n\n return rowProps;\n};\n\nconst composeRows = (rows, grid) => {\n const {\n props: { isRowSelected, multiple, rowKey },\n state: { selection },\n } = grid.getInstance();\n\n const selectionPredicate = (row) =>\n isFunction(isRowSelected) ? isRowSelected(row) : !!selection.selectedRows[row[rowKey]];\n\n return multiple ? selectMultipleRow(rows, selectionPredicate) : selectSingleRow(rows, selectionPredicate);\n};\n\nconst decorateGrid = (grid) => {\n // const handler = useRef();\n const {\n props: { isRowSelected, rowKey },\n actions: { selectRow },\n state: { selection },\n } = grid.getInstance();\n const [shiftPressed, setShiftPressed] = useState(false);\n const [lastSelectedRow, setLastSelectedRow] = useState(null);\n\n const selectRowHandler = useCallback(\n (rowData, index) => () => selectRow(rowData[rowKey], index, shiftPressed),\n [isRowSelected, selection, shiftPressed],\n );\n\n useEffect(() => {\n const keyDownListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(true);\n }\n };\n const keyUpListener = (event) => {\n if (\n event.key === 'Shift' &&\n event.target.tagName.toLowerCase() !== 'input' &&\n event.target.parentNode.className !== 'em-ds-combobox__input'\n ) {\n setShiftPressed(false);\n }\n };\n window.addEventListener('keydown', keyDownListener);\n window.addEventListener('keyup', keyUpListener);\n return () => {\n window.removeEventListener('keydown', keyDownListener);\n window.removeEventListener('keyup', keyUpListener);\n };\n });\n\n return {\n shiftPressed,\n selectRowHandler,\n setLastSelectedRow,\n lastSelectedRow,\n };\n};\n\nexport const SelectablePlugin = createInstancePlugin('selectable', {\n decorateGrid,\n registerStateHook: useSelectableState,\n decorateColumns,\n getRowProps,\n composeRows,\n registerHotKeys(grid) {\n return [\n {\n key: 'space',\n handler: ({ rowIndex }) => {\n const {\n composedRows,\n props: { rowKey },\n actions: { selectRow },\n } = grid.getInstance();\n const rows = composedRows.rows || composedRows;\n const row = rows[rowIndex];\n if (!row) return;\n selectRow(row[rowKey], rowIndex);\n },\n },\n {\n key: 'ctrl+a',\n handler: () => {\n const {\n state: { selection },\n actions: { selectAll },\n } = grid.getInstance();\n\n selectAll(!selection.selectAll);\n },\n },\n ];\n },\n});\n"],
5
- "mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA,MAAM,kBAAkB,CAAC,SAAS,SAAS;AACzC,QAAM;AAAA,IACJ,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAAA,IAEF,SAAS,EAAE,WAAW,iBAAiB,WAAW;AAAA,IAClD,OAAO,EAAE;AAAA,MACP;AAEJ,QAAM,wBAAwB,uBAAuB;AAAA,IACnD;AAAA,IACA,UAAU,eAAe;AAAA,IACzB,WAAW,UAAU;AAAA,IACrB,aAAa;AAAA,IACb,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGF,QAAM,EAAE,kBAAkB,8BAA8B,KAAK;AAE7D,MAAI,kBAAkB;AACpB,UAAM,kBAAkB,sBAAsB;AAC9C,WAAO,CAAC,iBAAiB,GAAG;AAAA;AAE9B,SAAO;AAAA;AAGT,MAAM,cAAc,CAAC,UAAU,MAAM,EAAE,cAAc;AACnD,QAAM;AAAA,IACJ,OAAO,EAAE,qBAAqB,kBAAkB;AAAA,IAChD,SAAS,EAAE;AAAA,MACT,KAAK;AAET,QAAM,EAAE,WAAW;AACnB,QAAM,aAAa,QAAQ;AAE3B,MAAI,CAAC,kBAAkB;AACrB,aAAS,UAAU,MAAM,UAAU,QAAQ,SAAS;AAAA;AAGtD,WAAS,YAAY,GAAG;AAAA,KACrB,SAAS,YAAY;AAAA,IACtB,UAAU;AAAA,IACV,oBAAoB,uBAAuB;AAAA;AAG7C,SAAO;AAAA;AAGT,MAAM,cAAc,CAAC,MAAM,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe,UAAU;AAAA,IAClC,OAAO,EAAE;AAAA,MACP,KAAK;AAET,QAAM,qBAAqB,CAAC,QAC1B,WAAW,iBAAiB,cAAc,OAAO,CAAC,CAAC,UAAU,aAAa,IAAI;AAEhF,SAAO,WAAW,kBAAkB,MAAM,sBAAsB,gBAAgB,MAAM;AAAA;AAGxF,MAAM,eAAe,CAAC,SAAS;AAE7B,QAAM;AAAA,IACJ,OAAO,EAAE,eAAe;AAAA,IACxB,SAAS,EAAE;AAAA,IACX,OAAO,EAAE;AAAA,MACP,KAAK;AACT,QAAM,CAAC,cAAc,mBAAmB,SAAS;AACjD,QAAM,CAAC,iBAAiB,sBAAsB,SAAS;AAEvD,QAAM,mBAAmB,YACvB,CAAC,SAAS,UAAU,MAAM,UAAU,QAAQ,SAAS,OAAO,eAC5D,CAAC,eAAe,WAAW;AAG7B,YAAU,MAAM;AACd,UAAM,kBAAkB,CAAC,UAAU;AACjC,UACE,MAAM,QAAQ,WACd,MAAM,OAAO,QAAQ,kBAAkB,WACvC,MAAM,OAAO,WAAW,cAAc,yBACtC;AACA,wBAAgB;AAAA;AAAA;AAGpB,UAAM,gBAAgB,CAAC,UAAU;AAC/B,UACE,MAAM,QAAQ,WACd,MAAM,OAAO,QAAQ,kBAAkB,WACvC,MAAM,OAAO,WAAW,cAAc,yBACtC;AACA,wBAAgB;AAAA;AAAA;AAGpB,WAAO,iBAAiB,WAAW;AACnC,WAAO,iBAAiB,SAAS;AACjC,WAAO,MAAM;AACX,aAAO,oBAAoB,WAAW;AACtC,aAAO,oBAAoB,SAAS;AAAA;AAAA;AAIxC,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAAA;AAIG,MAAM,mBAAmB,qBAAqB,cAAc;AAAA,EACjE;AAAA,EACA,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA,gBAAgB,MAAM;AACpB,WAAO;AAAA,MACL;AAAA,QACE,KAAK;AAAA,QACL,SAAS,CAAC,EAAE,eAAe;AACzB,gBAAM;AAAA,YACJ;AAAA,YACA,OAAO,EAAE;AAAA,YACT,SAAS,EAAE;AAAA,cACT,KAAK;AACT,gBAAM,OAAO,aAAa,QAAQ;AAClC,gBAAM,MAAM,KAAK;AACjB,cAAI,CAAC;AAAK;AACV,oBAAU,IAAI,SAAS;AAAA;AAAA;AAAA,MAG3B;AAAA,QACE,KAAK;AAAA,QACL,SAAS,MAAM;AACb,gBAAM;AAAA,YACJ,OAAO,EAAE;AAAA,YACT,SAAS,EAAE;AAAA,cACT,KAAK;AAET,oBAAU,CAAC,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/addSelectableColumn.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import {\n appendCellFormatter,\n appendHeaderFormatter,\n} from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport { selectableFormatter } from './selectableFormatter';\n\nexport function selectionColumnCreator({\n grid,\n selectAll,\n selectionComponent,\n onSelectRow,\n onSelectAll,\n multiple,\n\n // backward compatibility: later this needed to be passed through column definition\n multiSelectFilterLabel,\n multiSelectFilterOptions,\n multiSelectFilterLabels,\n multiSelectComponent, // favor selectionComponent\n}) {\n const {\n props: { rowKey },\n } = grid;\n\n return ({\n visible = true,\n isDataColumn = false,\n width = 40,\n minWidth,\n cellRenderer,\n headerCellRenderer,\n customRenderer,\n header,\n ...column\n } = {}) => {\n let selectionColumn = {\n ...column,\n property: 'metaData.selected',\n filterLabel: multiSelectFilterLabel,\n filterOptions: multiSelectFilterOptions,\n filterLabels: multiSelectFilterLabels,\n visible,\n width,\n minWidth: minWidth || width,\n isDataColumn,\n };\n selectionColumn = appendCellFormatter(\n selectableFormatter(\n {\n isMultiSelect: multiple,\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectRow,\n },\n grid,\n ),\n )(selectionColumn);\n\n if (multiple) {\n selectionColumn = appendHeaderFormatter(\n selectableFormatter(\n {\n rowKey,\n selectAll,\n isMultiSelect: true,\n isHeader: true,\n className: 'multi-select-wrapper',\n renderer: selectionComponent || multiSelectComponent,\n onSelect: onSelectAll,\n },\n grid,\n ),\n )(selectionColumn);\n }\n return selectionColumn;\n };\n}\n"],
5
- "mappings": "AAAA;ACAA;AAAA;AAAA;AAAA;AAIA;AAEO,gCAAgC;AAAA,EACrC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAGA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,GACC;AACD,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,MACP;AAEJ,SAAO,CAAC;AAAA,IACN,UAAU;AAAA,IACV,eAAe;AAAA,IACf,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,OACG;AAAA,MACD,OAAO;AACT,QAAI,kBAAkB;AAAA,SACjB;AAAA,MACH,UAAU;AAAA,MACV,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA,UAAU,YAAY;AAAA,MACtB;AAAA;AAEF,sBAAkB,oBAChB,oBACE;AAAA,MACE,eAAe;AAAA,MACf,UAAU,sBAAsB;AAAA,MAChC,UAAU;AAAA,OAEZ,OAEF;AAEF,QAAI,UAAU;AACZ,wBAAkB,sBAChB,oBACE;AAAA,QACE;AAAA,QACA;AAAA,QACA,eAAe;AAAA,QACf,UAAU;AAAA,QACV,WAAW;AAAA,QACX,UAAU,sBAAsB;AAAA,QAChC,UAAU;AAAA,SAEZ,OAEF;AAAA;AAEJ,WAAO;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/helper.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { toggleInObject } from '@elliemae/ds-utilities';\n\nexport const checkAllRowsSelected = (rows, selectedRows) => {\n if (rows.length && selectedRows.length === rows.length) return true;\n if (selectedRows.length) return 'mixed';\n return false;\n};\n\nexport const toggleSelectAll = (rows, checked) =>\n !checked ? {} : rows.reduce((nextSelRows, row) => toggleInObject(nextSelRows, row.id, true), {});\n\nexport const toggleSingleSelectable = (selectedRows, id) => (!selectedRows[id] ? toggleInObject({}, id, true) : {});\n\nconst mergeSelectedToMetaData = (selected) => (row) => ({\n ...row,\n 'metaData.selected': selected,\n});\n\nexport const selectSingleRow = (rows, filter) => rows.map((row) => mergeSelectedToMetaData(filter(row))(row));\n\nexport const selectMultipleRow = (rows, isRowSelectedPredicate) =>\n rows.map((row) => mergeSelectedToMetaData(isRowSelectedPredicate(row))(row));\n"],
5
- "mappings": "AAAA;ACAA;AAEO,MAAM,uBAAuB,CAAC,MAAM,iBAAiB;AAC1D,MAAI,KAAK,UAAU,aAAa,WAAW,KAAK;AAAQ,WAAO;AAC/D,MAAI,aAAa;AAAQ,WAAO;AAChC,SAAO;AAAA;AAGF,MAAM,kBAAkB,CAAC,MAAM,YACpC,CAAC,UAAU,KAAK,KAAK,OAAO,CAAC,aAAa,QAAQ,eAAe,aAAa,IAAI,IAAI,OAAO;AAExF,MAAM,yBAAyB,CAAC,cAAc,OAAQ,CAAC,aAAa,MAAM,eAAe,IAAI,IAAI,QAAQ;AAEhH,MAAM,0BAA0B,CAAC,aAAa,CAAC,QAAS;AAAA,KACnD;AAAA,EACH,qBAAqB;AAAA;AAGhB,MAAM,kBAAkB,CAAC,MAAM,WAAW,KAAK,IAAI,CAAC,QAAQ,wBAAwB,OAAO,MAAM;AAEjG,MAAM,oBAAoB,CAAC,MAAM,2BACtC,KAAK,IAAI,CAAC,QAAQ,wBAAwB,uBAAuB,MAAM;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { SelectablePlugin } from './SelectablePlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/selectableFormatter.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable indent */\n/* eslint-disable jsx-a11y/no-static-element-interactions,jsx-a11y/click-events-have-key-events,react/display-name */\nimport React, { forwardRef, useEffect, useRef } from 'react';\nimport { isFunction } from '@elliemae/ds-utilities';\nimport { DSCheckbox, DSRadio } from '@elliemae/ds-form';\n\nconst SelectableWrapper = ({ className, children }) => (\n <div className={className} onClick={(e) => e.stopPropagation()}>\n {children}\n </div>\n);\n\nconst SelectableComponent = React.memo(\n forwardRef(\n ({ className, isMultiSelect, isHeader, onSelect, isSelected, value }, ref) => {\n const SelectComponent = isMultiSelect || isHeader ? DSCheckbox : DSRadio;\n\n return (\n <SelectableWrapper className={className}>\n <SelectComponent\n checked={isSelected}\n data-testid=\"column-selectable-component\"\n innerRef={ref}\n onChange={onSelect}\n tabIndex={-1}\n value={value}\n />\n </SelectableWrapper>\n );\n },\n (prev, next) => next.isScrolling,\n ),\n);\n\nconst selectableFormatter =\n ({ isMultiSelect = false, renderer, className, isHeader, onSelect }, grid) =>\n (valueRender, extraParams) => {\n const { registerFocus } = extraParams;\n const ref = useRef();\n const {\n props: { rowKey },\n state: { selection },\n shiftPressed,\n lastSelectedRow,\n } = grid.getInstance();\n const { rowData, isScrolling } = extraParams;\n\n useEffect(() => {\n if (registerFocus) registerFocus(ref.current);\n }, [ref.current]);\n\n const isSelected = isHeader ? selection.selectAll : !!selection.selectedRows[rowData[rowKey]];\n\n const handleSelect = isHeader\n ? () => onSelect(!isSelected)\n : () => onSelect(rowData[rowKey], extraParams.rowIndex, shiftPressed, lastSelectedRow);\n\n if (isFunction(renderer)) {\n return (\n <SelectableWrapper className={className}>\n {renderer({\n rowData: {},\n ...extraParams,\n value: isSelected,\n isHeader,\n onSelect: handleSelect,\n })}\n </SelectableWrapper>\n );\n }\n\n return (\n <SelectableComponent\n ref={ref}\n className={className}\n isMultiSelect={isMultiSelect}\n isScrolling={isScrolling}\n isSelected={isSelected}\n onSelect={handleSelect}\n value={!isHeader ? rowData[rowKey] : 'header-select-all'}\n />\n );\n };\n\nexport { selectableFormatter };\nexport default selectableFormatter;\n"],
5
- "mappings": "AAAA;ACGA;AACA;AACA;AAEA,MAAM,oBAAoB,CAAC,EAAE,WAAW,eACtC,qCAAC,OAAD;AAAA,EAAK;AAAA,EAAsB,SAAS,CAAC,MAAM,EAAE;AAAA,GAC1C;AAIL,MAAM,sBAAsB,OAAM,KAChC,WACE,CAAC,EAAE,WAAW,eAAe,UAAU,UAAU,YAAY,SAAS,QAAQ;AAC5E,QAAM,kBAAkB,iBAAiB,WAAW,aAAa;AAEjE,SACE,qCAAC,mBAAD;AAAA,IAAmB;AAAA,KACjB,qCAAC,iBAAD;AAAA,IACE,SAAS;AAAA,IACT,eAAY;AAAA,IACZ,UAAU;AAAA,IACV,UAAU;AAAA,IACV,UAAU;AAAA,IACV;AAAA;AAAA,GAKR,CAAC,MAAM,SAAS,KAAK;AAIzB,MAAM,sBACJ,CAAC,EAAE,gBAAgB,OAAO,UAAU,WAAW,UAAU,YAAY,SACrE,CAAC,aAAa,gBAAgB;AAC5B,QAAM,EAAE,kBAAkB;AAC1B,QAAM,MAAM;AACZ,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,IACT,OAAO,EAAE;AAAA,IACT;AAAA,IACA;AAAA,MACE,KAAK;AACT,QAAM,EAAE,SAAS,gBAAgB;AAEjC,YAAU,MAAM;AACd,QAAI;AAAe,oBAAc,IAAI;AAAA,KACpC,CAAC,IAAI;AAER,QAAM,aAAa,WAAW,UAAU,YAAY,CAAC,CAAC,UAAU,aAAa,QAAQ;AAErF,QAAM,eAAe,WACjB,MAAM,SAAS,CAAC,cAChB,MAAM,SAAS,QAAQ,SAAS,YAAY,UAAU,cAAc;AAExE,MAAI,WAAW,WAAW;AACxB,WACE,qCAAC,mBAAD;AAAA,MAAmB;AAAA,OAChB,SAAS;AAAA,MACR,SAAS;AAAA,SACN;AAAA,MACH,OAAO;AAAA,MACP;AAAA,MACA,UAAU;AAAA;AAAA;AAMlB,SACE,qCAAC,qBAAD;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV,OAAO,CAAC,WAAW,QAAQ,UAAU;AAAA;AAAA;AAM7C,IAAO,8BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/selectable/useSelectableState.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { toggleInObject, hashArray, omit } from '@elliemae/ds-utilities';\nimport {\n checkAllRowsSelected,\n toggleSelectAll,\n toggleSingleSelectable,\n} from './helper';\n\nfunction deriveSelectedStateFromPropsOnUpdate(rows) {\n return (nextProp = {}, prevProp = {}) => {\n if (nextProp.selectAll !== prevProp.selectAll) {\n const nextSelectedRows = nextProp.selectAll\n ? toggleSelectAll(rows, true)\n : hashArray(nextProp.selectedRows || []);\n return {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(rows, Object.keys(nextSelectedRows)),\n };\n }\n return {\n selectedRows: hashArray(nextProp.selectedRows || []),\n selectAll: checkAllRowsSelected(rows, Object.keys(nextProp.selectedRows)),\n };\n };\n}\n\nexport function useSelectableState(grid) {\n const {\n props: { rowKey = 'id', selectedRows, selectAll, selectable, onSelectRow, onSelectAll },\n rows,\n setLastSelectedRow,\n } = grid.getInstance();\n\n const multiple = selectable === 'multi';\n const [selection, setSelectedRowsState] = useDerivedStateFromProps(\n { selectedRows, selectAll },\n { onUpdate: deriveSelectedStateFromPropsOnUpdate(rows) },\n );\n\n // ACTIONS\n const handleSelectRow = (\n id,\n index,\n shift = false,\n lastSelectedRow = null,\n // eslint-disable-next-line max-params\n ) => {\n setSelectedRowsState((prevState) => {\n const { rows: nextRows } = grid.getInstance();\n const wasSelected = Object.keys(prevState.selectedRows).some(\n // we need to match softly as the id may be a number\n // eslint-disable-next-line eqeqeq\n (elem) => elem == id,\n );\n let nextSelectedRows = multiple\n ? toggleInObject(prevState.selectedRows, id, true)\n : toggleSingleSelectable(prevState.selectedRows, id);\n setLastSelectedRow({ index, mode: wasSelected ? 'deselect' : 'select' });\n if (shift && lastSelectedRow) {\n const prevSmallest = lastSelectedRow.index < index + 1;\n const sliceStart = prevSmallest ? lastSelectedRow.index : index;\n const sliceEnd = prevSmallest ? index + 1 : lastSelectedRow.index + 1;\n const rowSegment = nextRows.slice(sliceStart, sliceEnd).map((row) => row[rowKey]);\n if (lastSelectedRow.mode === 'deselect') {\n nextSelectedRows = omit(prevState.selectedRows, rowSegment);\n } else {\n const selectedSegment = rowSegment.reduce((o, key) => ({ ...o, [key]: true }), {});\n nextSelectedRows = {\n ...prevState.selectedRows,\n ...selectedSegment,\n };\n }\n }\n\n const nextState = {\n selectedRows: nextSelectedRows,\n selectAll: checkAllRowsSelected(nextRows, Object.keys(nextSelectedRows)),\n };\n if (index !== null && index !== undefined) {\n onSelectRow(\n nextRows.filter((row) => nextState.selectedRows[row[rowKey]]),\n nextState.selectAll,\n index,\n );\n }\n\n return nextState;\n });\n };\n\n const handleSelectAll = (checked) => {\n if (!multiple) return;\n setLastSelectedRow(null);\n setSelectedRowsState(() => {\n const { composedRows: nextRows } = grid.getInstance();\n\n const nextState = {\n selectAll: checked,\n selectedRows: toggleSelectAll(nextRows, checked),\n };\n\n onSelectAll(nextState.selectAll);\n onSelectRow(checked ? nextRows : [], nextState.selectAll);\n\n return nextState;\n });\n };\n\n return {\n actions: {\n selectRow: handleSelectRow,\n selectAll: handleSelectAll,\n },\n state: {\n selection,\n },\n };\n}\n"],
5
- "mappings": "AAAA;ACCA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AAMA,8CAA8C,MAAM;AAClD,SAAO,CAAC,WAAW,IAAI,WAAW,OAAO;AACvC,QAAI,SAAS,cAAc,SAAS,WAAW;AAC7C,YAAM,mBAAmB,SAAS,YAC9B,gBAAgB,MAAM,QACtB,UAAU,SAAS,gBAAgB;AACvC,aAAO;AAAA,QACL,cAAc;AAAA,QACd,WAAW,qBAAqB,MAAM,OAAO,KAAK;AAAA;AAAA;AAGtD,WAAO;AAAA,MACL,cAAc,UAAU,SAAS,gBAAgB;AAAA,MACjD,WAAW,qBAAqB,MAAM,OAAO,KAAK,SAAS;AAAA;AAAA;AAAA;AAK1D,4BAA4B,MAAM;AACvC,QAAM;AAAA,IACJ,OAAO,EAAE,SAAS,MAAM,cAAc,WAAW,YAAY,aAAa;AAAA,IAC1E;AAAA,IACA;AAAA,MACE,KAAK;AAET,QAAM,WAAW,eAAe;AAChC,QAAM,CAAC,WAAW,wBAAwB,yBACxC,EAAE,cAAc,aAChB,EAAE,UAAU,qCAAqC;AAInD,QAAM,kBAAkB,CACtB,IACA,OACA,QAAQ,OACR,kBAAkB,SAEf;AACH,yBAAqB,CAAC,cAAc;AAClC,YAAM,EAAE,MAAM,aAAa,KAAK;AAChC,YAAM,cAAc,OAAO,KAAK,UAAU,cAAc,KAGtD,CAAC,SAAS,QAAQ;AAEpB,UAAI,mBAAmB,WACnB,eAAe,UAAU,cAAc,IAAI,QAC3C,uBAAuB,UAAU,cAAc;AACnD,yBAAmB,EAAE,OAAO,MAAM,cAAc,aAAa;AAC7D,UAAI,SAAS,iBAAiB;AAC5B,cAAM,eAAe,gBAAgB,QAAQ,QAAQ;AACrD,cAAM,aAAa,eAAe,gBAAgB,QAAQ;AAC1D,cAAM,WAAW,eAAe,QAAQ,IAAI,gBAAgB,QAAQ;AACpE,cAAM,aAAa,SAAS,MAAM,YAAY,UAAU,IAAI,CAAC,QAAQ,IAAI;AACzE,YAAI,gBAAgB,SAAS,YAAY;AACvC,6BAAmB,KAAK,UAAU,cAAc;AAAA,eAC3C;AACL,gBAAM,kBAAkB,WAAW,OAAO,CAAC,GAAG,QAAS,MAAK,IAAI,MAAM,SAAS;AAC/E,6BAAmB;AAAA,eACd,UAAU;AAAA,eACV;AAAA;AAAA;AAAA;AAKT,YAAM,YAAY;AAAA,QAChB,cAAc;AAAA,QACd,WAAW,qBAAqB,UAAU,OAAO,KAAK;AAAA;AAExD,UAAI,UAAU,QAAQ,UAAU,QAAW;AACzC,oBACE,SAAS,OAAO,CAAC,QAAQ,UAAU,aAAa,IAAI,WACpD,UAAU,WACV;AAAA;AAIJ,aAAO;AAAA;AAAA;AAIX,QAAM,kBAAkB,CAAC,YAAY;AACnC,QAAI,CAAC;AAAU;AACf,uBAAmB;AACnB,yBAAqB,MAAM;AACzB,YAAM,EAAE,cAAc,aAAa,KAAK;AAExC,YAAM,YAAY;AAAA,QAChB,WAAW;AAAA,QACX,cAAc,gBAAgB,UAAU;AAAA;AAG1C,kBAAY,UAAU;AACtB,kBAAY,UAAU,WAAW,IAAI,UAAU;AAE/C,aAAO;AAAA;AAAA;AAIX,SAAO;AAAA,IACL,SAAS;AAAA,MACP,WAAW;AAAA,MACX,WAAW;AAAA;AAAA,IAEb,OAAO;AAAA,MACL;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/SortablePlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import * as sortabular from 'sortabular';\nimport { compose, isEmpty, orderBy } from '@elliemae/ds-utilities';\nimport {\n appendHeaderFormatter,\n mergeClassNameToColumnHeader,\n} from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { sortHeaderFormatter } from './sortHeaderFormatter';\nimport { useSortableState } from './useSortableState';\nimport { sorter, sorterGroups } from './sorter';\n\nconst decorateColumn = (column, grid) => {\n const {\n props: { isSortableColumnActive = (col) => col.sortable, groupedRows },\n } = grid;\n\n if (groupedRows) return column;\n if (!isSortableColumnActive(column)) return column;\n\n const formatter = sortHeaderFormatter(\n sortabular.sort({\n getSortingColumns: () => grid.getState().sortingColumns || [],\n onSort: grid.actions.sort,\n strategy: sortabular.strategies.byProperty,\n }),\n grid,\n );\n\n return compose(appendHeaderFormatter(formatter), mergeClassNameToColumnHeader('with-sortable'))(column);\n};\n\nconst composeRows = (rows, grid) => {\n const {\n state: { sortingColumns },\n props: { isDataSorted, groupedRows, groupedBy, sortEmptyLast },\n rows: rowsData,\n composedRows,\n decoratedColumns,\n } = grid.getInstance();\n\n const sortingConfig = {\n columns: decoratedColumns,\n sortingColumns: !isEmpty(sortingColumns) && sortingColumns,\n sort: orderBy,\n emptyLast: sortEmptyLast,\n };\n\n // TODO: 1572 FIX\n if (groupedRows && !groupedBy) {\n return !isDataSorted ? sorterGroups(sortingConfig)(composedRows, rowsData, groupedBy) : rows;\n }\n\n return !isDataSorted ? sorter(sortingConfig)(rows) : rows;\n};\n\nexport const SortablePlugin = createInstancePlugin('sortable', {\n registerStateHook: useSortableState,\n decorateColumn,\n composeRows,\n registerHotKeys(grid) {\n return {\n key: 'ctrl+s',\n handler: ({ cellIndex }) => {\n const {\n actions: { sort },\n decoratedColumns,\n } = grid.getInstance();\n const column = decoratedColumns[cellIndex];\n if (!column) return;\n sort(column.property);\n },\n };\n },\n});\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAAA;AAAA;AAAA;AAIA;AACA;AACA;AACA;AAEA,MAAM,iBAAiB,CAAC,QAAQ,SAAS;AACvC,QAAM;AAAA,IACJ,OAAO,EAAE,yBAAyB,CAAC,QAAQ,IAAI,UAAU;AAAA,MACvD;AAEJ,MAAI;AAAa,WAAO;AACxB,MAAI,CAAC,uBAAuB;AAAS,WAAO;AAE5C,QAAM,YAAY,oBAChB,WAAW,KAAK;AAAA,IACd,mBAAmB,MAAM,KAAK,WAAW,kBAAkB;AAAA,IAC3D,QAAQ,KAAK,QAAQ;AAAA,IACrB,UAAU,WAAW,WAAW;AAAA,MAElC;AAGF,SAAO,QAAQ,sBAAsB,YAAY,6BAA6B,kBAAkB;AAAA;AAGlG,MAAM,cAAc,CAAC,MAAM,SAAS;AAClC,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,IACT,OAAO,EAAE,cAAc,aAAa,WAAW;AAAA,IAC/C,MAAM;AAAA,IACN;AAAA,IACA;AAAA,MACE,KAAK;AAET,QAAM,gBAAgB;AAAA,IACpB,SAAS;AAAA,IACT,gBAAgB,CAAC,QAAQ,mBAAmB;AAAA,IAC5C,MAAM;AAAA,IACN,WAAW;AAAA;AAIb,MAAI,eAAe,CAAC,WAAW;AAC7B,WAAO,CAAC,eAAe,aAAa,eAAe,cAAc,UAAU,aAAa;AAAA;AAG1F,SAAO,CAAC,eAAe,OAAO,eAAe,QAAQ;AAAA;AAGhD,MAAM,iBAAiB,qBAAqB,YAAY;AAAA,EAC7D,mBAAmB;AAAA,EACnB;AAAA,EACA;AAAA,EACA,gBAAgB,MAAM;AACpB,WAAO;AAAA,MACL,KAAK;AAAA,MACL,SAAS,CAAC,EAAE,gBAAgB;AAC1B,cAAM;AAAA,UACJ,SAAS,EAAE;AAAA,UACX;AAAA,YACE,KAAK;AACT,cAAM,SAAS,iBAAiB;AAChC,YAAI,CAAC;AAAQ;AACb,aAAK,OAAO;AAAA;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/checkIfSortable.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-plusplus */\n/* eslint-disable no-loops/no-loops */\nexport const checkIfSortable = (column, rows) => {\n for (let index = 0; index < rows.length; index++) {\n const element = rows[index][column];\n if (!(element === null || element === undefined)) {\n // PUI-6452\n return true;\n }\n }\n return false;\n};\n\nexport default checkIfSortable;\n"],
5
- "mappings": "AAAA;ACEO,MAAM,kBAAkB,CAAC,QAAQ,SAAS;AAC/C,WAAS,QAAQ,GAAG,QAAQ,KAAK,QAAQ,SAAS;AAChD,UAAM,UAAU,KAAK,OAAO;AAC5B,QAAI,CAAE,aAAY,QAAQ,YAAY,SAAY;AAEhD,aAAO;AAAA;AAAA;AAGX,SAAO;AAAA;AAGT,IAAO,0BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export { SortablePlugin } from './SortablePlugin';\n"],
5
- "mappings": "AAAA;ACAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/sortHeaderFormatter.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { ArrowheadDown, ArrowheadUp } from '@elliemae/ds-icons';\n\nconst blockName = 'data-grid-sort-header';\n\nconst SortHeaderContainer = aggregatedClasses('div')(blockName);\n\nconst iconColor = ['brand-primary', 800];\n\nconst SortHeader = React.memo(({ value, onClick, sortState }) => {\n const sortIndicator = sortState === 'asc' ? <ArrowheadUp color={iconColor} /> : <ArrowheadDown color={iconColor} />;\n return (\n <SortHeaderContainer onClick={onClick}>\n <span className=\"header-value\">{value}</span>\n {sortState && sortIndicator}\n </SortHeaderContainer>\n );\n});\n\nconst sortHeaderFormatter =\n (sortable, grid) =>\n (value, { columnIndex, property }) => {\n const {\n state: { sortingColumns },\n } = grid.getInstance();\n const { onClick, className } = sortable(value, { columnIndex, property });\n return (\n <SortHeader\n className={className}\n onClick={onClick}\n sortState={sortingColumns[property] && sortingColumns[property].direction}\n value={value}\n />\n );\n };\n\nexport { sortHeaderFormatter };\nexport default sortHeaderFormatter;\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAEA,MAAM,YAAY;AAElB,MAAM,sBAAsB,kBAAkB,OAAO;AAErD,MAAM,YAAY,CAAC,iBAAiB;AAEpC,MAAM,aAAa,OAAM,KAAK,CAAC,EAAE,OAAO,SAAS,gBAAgB;AAC/D,QAAM,gBAAgB,cAAc,QAAQ,qCAAC,aAAD;AAAA,IAAa,OAAO;AAAA,OAAgB,qCAAC,eAAD;AAAA,IAAe,OAAO;AAAA;AACtG,SACE,qCAAC,qBAAD;AAAA,IAAqB;AAAA,KACnB,qCAAC,QAAD;AAAA,IAAM,WAAU;AAAA,KAAgB,QAC/B,aAAa;AAAA;AAKpB,MAAM,sBACJ,CAAC,UAAU,SACX,CAAC,OAAO,EAAE,aAAa,eAAe;AACpC,QAAM;AAAA,IACJ,OAAO,EAAE;AAAA,MACP,KAAK;AACT,QAAM,EAAE,SAAS,cAAc,SAAS,OAAO,EAAE,aAAa;AAC9D,SACE,qCAAC,YAAD;AAAA,IACE;AAAA,IACA;AAAA,IACA,WAAW,eAAe,aAAa,eAAe,UAAU;AAAA,IAChE;AAAA;AAAA;AAMR,IAAO,8BAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/sortTree.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import * as sort from 'sortabular';\n\nconst deepSorting = (sortConfig, rows = []) =>\n sort.sorter(sortConfig)(\n rows.map(row =>\n row.children && row.children.length\n ? {\n ...row,\n children: deepSorting(sortConfig, row.children),\n }\n : row,\n ),\n );\nfunction sortTree(sortConfig) {\n return rows => deepSorting(sortConfig, rows);\n}\n\nexport { sortTree };\nexport default sortTree;\n"],
5
- "mappings": "AAAA;ACAA;AAEA,MAAM,cAAc,CAAC,YAAY,OAAO,OACtC,KAAK,OAAO,YACV,KAAK,IAAI,SACP,IAAI,YAAY,IAAI,SAAS,SACzB;AAAA,KACK;AAAA,EACH,UAAU,YAAY,YAAY,IAAI;AAAA,IAExC;AAGV,kBAAkB,YAAY;AAC5B,SAAO,UAAQ,YAAY,YAAY;AAAA;AAIzC,IAAO,mBAAQ;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/sorter.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable max-statements */\nimport { get } from '@elliemae/ds-utilities';\nimport moment from 'moment';\n\nexport const sorter =\n ({ columns, sortingColumns, sort, emptyLast } = {}) =>\n (data) => {\n if (!columns) {\n throw new Error('sort.sorter - Missing \"columns\" argument!');\n }\n\n if (!sort) {\n throw new Error('sort.sorter - Missing \"sort\" argument!');\n }\n\n if (!sortingColumns) {\n return data;\n }\n const columnIndexList = new Array(sortingColumns.length);\n const orderList = new Array(sortingColumns.length);\n\n let actualSortFunction = sort;\n if (emptyLast) {\n actualSortFunction = (innerData, innerColumnIndexList, innerOrderList) => {\n const sortedData = sort(innerData, innerColumnIndexList, innerOrderList);\n\n const keys = Object.keys(sortingColumns);\n\n const withData = sortedData.filter((r) => keys.some((key) => !!r[key]));\n const withoutData = sortedData.filter((r) => keys.some((key) => !r[key]));\n\n return [...withData, ...withoutData];\n };\n }\n\n Object.keys(sortingColumns).forEach((sortingColumnKey) => {\n const realColumn = columns.find((column) => column.property === sortingColumnKey);\n if (!realColumn) return;\n const columnSorter =\n realColumn.sort ||\n function resolveValue(row) {\n const { property, sortBy } = realColumn;\n const value = row[sortBy || property];\n // Pick resolved value by convention\n const resolvedValue = get(row, `_${property}`, value);\n\n if (realColumn.type === 'DateTime') {\n return moment(resolvedValue);\n }\n\n return typeof resolvedValue === 'string' ? resolvedValue.toLowerCase() : resolvedValue;\n };\n\n const sortingColumn = sortingColumns[sortingColumnKey];\n\n columnIndexList[sortingColumn.position] = columnSorter;\n\n orderList[sortingColumn.position] = sortingColumn.direction;\n });\n return actualSortFunction(data, columnIndexList, orderList);\n };\n\nexport const sorterGroups =\n ({ columns, sortingColumns, sort, emptyLast } = {}) =>\n (data, rowsData) => {\n if (!columns) {\n throw new Error('sort.sorter - Missing \"columns\" argument!');\n }\n\n if (!sort) {\n throw new Error('sort.sorter - Missing \"sort\" argument!');\n }\n\n if (!sortingColumns) {\n return data;\n }\n\n const columnIndexList = new Array(sortingColumns.length);\n const orderList = new Array(sortingColumns.length);\n\n let actualSortFunction = sort;\n if (emptyLast) {\n actualSortFunction = (innerData, innerColumnIndexList, innerOrderList) => {\n const sortedData = sort(innerData, innerColumnIndexList, innerOrderList);\n\n const keys = Object.keys(sortingColumns);\n\n const withData = sortedData.filter((r) => keys.some((key) => !!r[key]));\n const withoutData = sortedData.filter((r) => keys.some((key) => !r[key]));\n\n return [...withData, ...withoutData];\n };\n }\n\n Object.keys(sortingColumns).forEach((sortingColumnKey) => {\n const realColumn = columns.find((column) => column.property === sortingColumnKey);\n if (!realColumn) return;\n const columnSorter =\n realColumn.sort ||\n function resolveValue(row) {\n const { property, sortBy } = realColumn;\n const value = row[sortBy || property];\n // Pick resolved value by convention\n const resolvedValue = get(row, `_${property}`, value);\n\n if (realColumn.type === 'DateTime') {\n return moment(resolvedValue);\n }\n\n return typeof resolvedValue === 'string' ? resolvedValue.toLowerCase() : resolvedValue;\n };\n\n const sortingColumn = sortingColumns[sortingColumnKey];\n\n columnIndexList[sortingColumn.position] = columnSorter;\n\n orderList[sortingColumn.position] = sortingColumn.direction;\n });\n\n const groups = {};\n const preserveData = {};\n data.forEach((c) => {\n preserveData[c.id] = { ...c };\n });\n\n rowsData.forEach((group) => {\n groups[group.id] = {\n children: actualSortFunction(\n group.children.map((c) => ({\n parentNode: preserveData[c.id].parentNode,\n data: c,\n ...c,\n })),\n columnIndexList,\n orderList,\n ), // sort internally\n };\n });\n\n const sorted = actualSortFunction(\n data.map((r) => ({\n ...r.data,\n ...r,\n })),\n columnIndexList,\n orderList,\n ); // sort global\n let ssortGlobal = [];\n sorted\n .filter((s) => !s.isGroup)\n .forEach((sr) => {\n if (groups[sr.parentNode.id]) {\n ssortGlobal = [...ssortGlobal, preserveData[sr.parentNode.id], ...groups[sr.parentNode.id].children];\n delete groups[sr.parentNode.id];\n }\n });\n return ssortGlobal;\n };\n"],
5
- "mappings": "AAAA;ACEA;AACA;AAEO,MAAM,SACX,CAAC,EAAE,SAAS,gBAAgB,MAAM,cAAc,OAChD,CAAC,SAAS;AACR,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM;AAAA;AAGlB,MAAI,CAAC,MAAM;AACT,UAAM,IAAI,MAAM;AAAA;AAGlB,MAAI,CAAC,gBAAgB;AACnB,WAAO;AAAA;AAET,QAAM,kBAAkB,IAAI,MAAM,eAAe;AACjD,QAAM,YAAY,IAAI,MAAM,eAAe;AAE3C,MAAI,qBAAqB;AACzB,MAAI,WAAW;AACb,yBAAqB,CAAC,WAAW,sBAAsB,mBAAmB;AACxE,YAAM,aAAa,KAAK,WAAW,sBAAsB;AAEzD,YAAM,OAAO,OAAO,KAAK;AAEzB,YAAM,WAAW,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;AACjE,YAAM,cAAc,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE;AAEnE,aAAO,CAAC,GAAG,UAAU,GAAG;AAAA;AAAA;AAI5B,SAAO,KAAK,gBAAgB,QAAQ,CAAC,qBAAqB;AACxD,UAAM,aAAa,QAAQ,KAAK,CAAC,WAAW,OAAO,aAAa;AAChE,QAAI,CAAC;AAAY;AACjB,UAAM,eACJ,WAAW,QACX,sBAAsB,KAAK;AACzB,YAAM,EAAE,UAAU,WAAW;AAC7B,YAAM,QAAQ,IAAI,UAAU;AAE5B,YAAM,gBAAgB,IAAI,KAAK,IAAI,YAAY;AAE/C,UAAI,WAAW,SAAS,YAAY;AAClC,eAAO,OAAO;AAAA;AAGhB,aAAO,OAAO,kBAAkB,WAAW,cAAc,gBAAgB;AAAA;AAG7E,UAAM,gBAAgB,eAAe;AAErC,oBAAgB,cAAc,YAAY;AAE1C,cAAU,cAAc,YAAY,cAAc;AAAA;AAEpD,SAAO,mBAAmB,MAAM,iBAAiB;AAAA;AAG9C,MAAM,eACX,CAAC,EAAE,SAAS,gBAAgB,MAAM,cAAc,OAChD,CAAC,MAAM,aAAa;AAClB,MAAI,CAAC,SAAS;AACZ,UAAM,IAAI,MAAM;AAAA;AAGlB,MAAI,CAAC,MAAM;AACT,UAAM,IAAI,MAAM;AAAA;AAGlB,MAAI,CAAC,gBAAgB;AACnB,WAAO;AAAA;AAGT,QAAM,kBAAkB,IAAI,MAAM,eAAe;AACjD,QAAM,YAAY,IAAI,MAAM,eAAe;AAE3C,MAAI,qBAAqB;AACzB,MAAI,WAAW;AACb,yBAAqB,CAAC,WAAW,sBAAsB,mBAAmB;AACxE,YAAM,aAAa,KAAK,WAAW,sBAAsB;AAEzD,YAAM,OAAO,OAAO,KAAK;AAEzB,YAAM,WAAW,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE;AACjE,YAAM,cAAc,WAAW,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,QAAQ,CAAC,EAAE;AAEnE,aAAO,CAAC,GAAG,UAAU,GAAG;AAAA;AAAA;AAI5B,SAAO,KAAK,gBAAgB,QAAQ,CAAC,qBAAqB;AACxD,UAAM,aAAa,QAAQ,KAAK,CAAC,WAAW,OAAO,aAAa;AAChE,QAAI,CAAC;AAAY;AACjB,UAAM,eACJ,WAAW,QACX,sBAAsB,KAAK;AACzB,YAAM,EAAE,UAAU,WAAW;AAC7B,YAAM,QAAQ,IAAI,UAAU;AAE5B,YAAM,gBAAgB,IAAI,KAAK,IAAI,YAAY;AAE/C,UAAI,WAAW,SAAS,YAAY;AAClC,eAAO,OAAO;AAAA;AAGhB,aAAO,OAAO,kBAAkB,WAAW,cAAc,gBAAgB;AAAA;AAG7E,UAAM,gBAAgB,eAAe;AAErC,oBAAgB,cAAc,YAAY;AAE1C,cAAU,cAAc,YAAY,cAAc;AAAA;AAGpD,QAAM,SAAS;AACf,QAAM,eAAe;AACrB,OAAK,QAAQ,CAAC,MAAM;AAClB,iBAAa,EAAE,MAAM,KAAK;AAAA;AAG5B,WAAS,QAAQ,CAAC,UAAU;AAC1B,WAAO,MAAM,MAAM;AAAA,MACjB,UAAU,mBACR,MAAM,SAAS,IAAI,CAAC,MAAO;AAAA,QACzB,YAAY,aAAa,EAAE,IAAI;AAAA,QAC/B,MAAM;AAAA,WACH;AAAA,WAEL,iBACA;AAAA;AAAA;AAKN,QAAM,SAAS,mBACb,KAAK,IAAI,CAAC,MAAO;AAAA,OACZ,EAAE;AAAA,OACF;AAAA,OAEL,iBACA;AAEF,MAAI,cAAc;AAClB,SACG,OAAO,CAAC,MAAM,CAAC,EAAE,SACjB,QAAQ,CAAC,OAAO;AACf,QAAI,OAAO,GAAG,WAAW,KAAK;AAC5B,oBAAc,CAAC,GAAG,aAAa,aAAa,GAAG,WAAW,KAAK,GAAG,OAAO,GAAG,WAAW,IAAI;AAC3F,aAAO,OAAO,GAAG,WAAW;AAAA;AAAA;AAGlC,SAAO;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/sortable/useSortableState.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import * as sortabular from 'sortabular/dist/index.js';\nimport { useDerivedStateFromProps } from '@elliemae/ds-utilities';\nimport { checkIfSortable } from './checkIfSortable';\n\nexport function useSortableState(grid) {\n const { onSort, sortingColumns: sortingColumnsProp, pagination } = grid.props;\n\n const [sortingColumns, setSortingColumns] = useDerivedStateFromProps(\n sortingColumnsProp,\n );\n\n const handleSort = selectedColumn => {\n // support for pagination\n const { composedRows = {}, props } = grid.getInstance();\n const { allRows, rows } = composedRows;\n const serverSidePagination =\n pagination &&\n composedRows.amount !== (composedRows.rows && composedRows.rows.length);\n if (\n props.serverSideData ||\n serverSidePagination ||\n checkIfSortable(selectedColumn, allRows || rows || composedRows)\n ) {\n setSortingColumns(prevSortingColumns => {\n const nextSortingColumns = sortabular.byColumn({\n sortingColumns: prevSortingColumns,\n sortingOrder: {\n FIRST: 'asc',\n asc: 'desc',\n desc: 'asc',\n },\n selectedColumn,\n });\n const { columns } = grid.getInstance();\n let columnSorted = columns.find(col => col.property === selectedColumn);\n columnSorted = {\n ...columnSorted,\n originalProperty: columnSorted.property,\n };\n onSort(nextSortingColumns, selectedColumn, columnSorted);\n return nextSortingColumns;\n });\n }\n };\n\n return {\n state: { sortingColumns },\n actions: {\n sort: handleSort,\n },\n };\n}\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AAEO,0BAA0B,MAAM;AACrC,QAAM,EAAE,QAAQ,gBAAgB,oBAAoB,eAAe,KAAK;AAExE,QAAM,CAAC,gBAAgB,qBAAqB,yBAC1C;AAGF,QAAM,aAAa,oBAAkB;AAEnC,UAAM,EAAE,eAAe,IAAI,UAAU,KAAK;AAC1C,UAAM,EAAE,SAAS,SAAS;AAC1B,UAAM,uBACJ,cACA,aAAa,WAAY,cAAa,QAAQ,aAAa,KAAK;AAClE,QACE,MAAM,kBACN,wBACA,gBAAgB,gBAAgB,WAAW,QAAQ,eACnD;AACA,wBAAkB,wBAAsB;AACtC,cAAM,qBAAqB,WAAW,SAAS;AAAA,UAC7C,gBAAgB;AAAA,UAChB,cAAc;AAAA,YACZ,OAAO;AAAA,YACP,KAAK;AAAA,YACL,MAAM;AAAA;AAAA,UAER;AAAA;AAEF,cAAM,EAAE,YAAY,KAAK;AACzB,YAAI,eAAe,QAAQ,KAAK,SAAO,IAAI,aAAa;AACxD,uBAAe;AAAA,aACV;AAAA,UACH,kBAAkB,aAAa;AAAA;AAEjC,eAAO,oBAAoB,gBAAgB;AAC3C,eAAO;AAAA;AAAA;AAAA;AAKb,SAAO;AAAA,IACL,OAAO,EAAE;AAAA,IACT,SAAS;AAAA,MACP,MAAM;AAAA;AAAA;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/toolbar/RowRenderer.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react-hooks/rules-of-hooks */\n/* eslint-disable max-statements */\n/* eslint-disable react/prop-types */\nimport React, { useEffect, useRef, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { isEmpty } from 'lodash';\nimport { omit } from '@elliemae/ds-utilities';\nimport { ToolbarTrigger } from './ToolbarTrigger';\nimport { RowSizes } from '../../rowSizes';\n\nexport const RowRenderer = (Row, grid) => {\n const Wrapped = (props) => {\n const ref = useRef();\n const { rowData = {}, index, rowIndex, style } = props;\n const {\n props: { wrapText },\n } = grid.getInstance();\n const [popStyle, setPopStyle] = useState({});\n const [rowStyle, setRowStyle] = useState(style);\n const gridInstance = grid.getInstance();\n const { refs, isRowDragging } = gridInstance;\n const [hasVerticalScrollBar, setHasVerticalScrollBar] = useState(\n refs.body.current && refs.body.current.offsetWidth > refs.body.current.clientWidth,\n );\n\n useEffect(() => {\n const shouldOmit = isRowDragging ? ['top'] : [];\n setPopStyle({\n ...popStyle,\n ...{ top: style && !isRowDragging ? style.top : '0' },\n });\n if (style) {\n // style defined means it has virtualization\n setHasVerticalScrollBar(true);\n } else {\n setHasVerticalScrollBar(false);\n }\n setRowStyle(\n omit(\n style || {\n height: !wrapText ? RowSizes[gridInstance.props.rowSize] : 'auto',\n position: 'relative',\n },\n [shouldOmit],\n ),\n );\n }, [style, isRowDragging]);\n return (\n <div\n className=\"row-renderer-fixed-height\"\n style={{\n height: !wrapText ? RowSizes[gridInstance.props.rowSize] : 'auto',\n position: style ? 'auto' : 'relative',\n // top: isDragging ? rowStyle.top - RowSizes[gridInstance.props.rowSize] : 'auto',\n }}\n >\n <Row ref={ref} {...props} style={rowStyle} />\n {isEmpty(rowData) && !rowData.index && !rowData.rowIndex ? null : (\n <div className={`toolbar-trigger-container ${style ? 'move' : 'stay'}`} style={{ ...popStyle }}>\n <ToolbarTrigger\n grid={grid}\n rowData={{ rowData, index, rowIndex }}\n hasScrollBar={hasVerticalScrollBar}\n rowRef={ref}\n />\n </div>\n )}\n </div>\n );\n };\n\n Wrapped.propTypes = {\n rowData: PropTypes.any,\n index: PropTypes.number,\n rowIndex: PropTypes.number,\n style: PropTypes.any,\n };\n\n return Wrapped;\n};\n"],
5
- "mappings": "AAAA;ACGA;AACA;AACA;AACA;AACA;AACA;AAEO,MAAM,cAAc,CAAC,KAAK,SAAS;AACxC,QAAM,UAAU,CAAC,UAAU;AACzB,UAAM,MAAM;AACZ,UAAM,EAAE,UAAU,IAAI,OAAO,UAAU,UAAU;AACjD,UAAM;AAAA,MACJ,OAAO,EAAE;AAAA,QACP,KAAK;AACT,UAAM,CAAC,UAAU,eAAe,SAAS;AACzC,UAAM,CAAC,UAAU,eAAe,SAAS;AACzC,UAAM,eAAe,KAAK;AAC1B,UAAM,EAAE,MAAM,kBAAkB;AAChC,UAAM,CAAC,sBAAsB,2BAA2B,SACtD,KAAK,KAAK,WAAW,KAAK,KAAK,QAAQ,cAAc,KAAK,KAAK,QAAQ;AAGzE,cAAU,MAAM;AACd,YAAM,aAAa,gBAAgB,CAAC,SAAS;AAC7C,kBAAY;AAAA,WACP;AAAA,WACA,EAAE,KAAK,SAAS,CAAC,gBAAgB,MAAM,MAAM;AAAA;AAElD,UAAI,OAAO;AAET,gCAAwB;AAAA,aACnB;AACL,gCAAwB;AAAA;AAE1B,kBACE,KACE,SAAS;AAAA,QACP,QAAQ,CAAC,WAAW,SAAS,aAAa,MAAM,WAAW;AAAA,QAC3D,UAAU;AAAA,SAEZ,CAAC;AAAA,OAGJ,CAAC,OAAO;AACX,WACE,qCAAC,OAAD;AAAA,MACE,WAAU;AAAA,MACV,OAAO;AAAA,QACL,QAAQ,CAAC,WAAW,SAAS,aAAa,MAAM,WAAW;AAAA,QAC3D,UAAU,QAAQ,SAAS;AAAA;AAAA,OAI7B,qCAAC,KAAD;AAAA,MAAK;AAAA,SAAc;AAAA,MAAO,OAAO;AAAA,QAChC,QAAQ,YAAY,CAAC,QAAQ,SAAS,CAAC,QAAQ,WAAW,OACzD,qCAAC,OAAD;AAAA,MAAK,WAAW,6BAA6B,QAAQ,SAAS;AAAA,MAAU,OAAO,KAAK;AAAA,OAClF,qCAAC,gBAAD;AAAA,MACE;AAAA,MACA,SAAS,EAAE,SAAS,OAAO;AAAA,MAC3B,cAAc;AAAA,MACd,QAAQ;AAAA;AAAA;AAQpB,UAAQ,YAAY;AAAA,IAClB,SAAS,UAAU;AAAA,IACnB,OAAO,UAAU;AAAA,IACjB,UAAU,UAAU;AAAA,IACpB,OAAO,UAAU;AAAA;AAGnB,SAAO;AAAA;",
6
- "names": []
7
- }
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/plugins/toolbar/ToolbarPlugin.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport { createInstancePlugin } from '@elliemae/ds-shared/createDataInstance/createInstancePlugin';\nimport { appendCellFormatter } from '@elliemae/ds-shared/useDataGrid/initColumnDefinition';\nimport { RowRenderer } from './RowRenderer';\n\nconst decorateColumns = (columns) => {\n const lastColumn = columns[columns.length - 1];\n return [\n ...columns.slice(0, -1),\n appendCellFormatter(\n [\n (value) => (\n <>\n {value}\n <div style={{ width: 34, maxWidth: 34, overflow: 'hidden' }} />\n </>\n ),\n ],\n lastColumn,\n 'fixedFormatters',\n ),\n ];\n};\n\nconst decorateRenderers = (renderers, grid) => {\n const Row = renderers.body.row;\n renderers.body.row = RowRenderer(Row, grid);\n return renderers;\n};\n\nexport const ToolbarPlugin = createInstancePlugin('toolbar', {\n decorateRenderers,\n decorateColumns,\n});\n"],
5
- "mappings": "AAAA;ACAA;AACA;AACA;AACA;AAEA,MAAM,kBAAkB,CAAC,YAAY;AACnC,QAAM,aAAa,QAAQ,QAAQ,SAAS;AAC5C,SAAO;AAAA,IACL,GAAG,QAAQ,MAAM,GAAG;AAAA,IACpB,oBACE;AAAA,MACE,CAAC,UACC,4DACG,OACD,qCAAC,OAAD;AAAA,QAAK,OAAO,EAAE,OAAO,IAAI,UAAU,IAAI,UAAU;AAAA;AAAA,OAIvD,YACA;AAAA;AAAA;AAKN,MAAM,oBAAoB,CAAC,WAAW,SAAS;AAC7C,QAAM,MAAM,UAAU,KAAK;AAC3B,YAAU,KAAK,MAAM,YAAY,KAAK;AACtC,SAAO;AAAA;AAGF,MAAM,gBAAgB,qBAAqB,WAAW;AAAA,EAC3D;AAAA,EACA;AAAA;",
6
- "names": []
7
- }