@elliemae/ds-datagrids 3.15.0 → 3.16.0-next.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (380) hide show
  1. package/dist/cjs/DSDataGrid.js +249 -241
  2. package/dist/cjs/DSDataGrid.js.map +2 -2
  3. package/dist/cjs/DataGridImpl.js +11 -11
  4. package/dist/cjs/DataGridImpl.js.map +1 -1
  5. package/dist/cjs/PaginatedDataGrid.js +9 -9
  6. package/dist/cjs/PaginatedDataGrid.js.map +2 -2
  7. package/dist/cjs/components/BodyList.js +3 -5
  8. package/dist/cjs/components/BodyList.js.map +2 -2
  9. package/dist/cjs/components/ColumnVisibilityMenuOption.js +1 -6
  10. package/dist/cjs/components/ColumnVisibilityMenuOption.js.map +2 -2
  11. package/dist/cjs/components/ColumnsOptionsMenuSection.js +2 -11
  12. package/dist/cjs/components/ColumnsOptionsMenuSection.js.map +2 -2
  13. package/dist/cjs/components/EmptyState.js +5 -6
  14. package/dist/cjs/components/EmptyState.js.map +3 -3
  15. package/dist/cjs/components/List.js +2 -2
  16. package/dist/cjs/components/List.js.map +2 -2
  17. package/dist/cjs/components/ListItem.js +3 -6
  18. package/dist/cjs/components/ListItem.js.map +2 -2
  19. package/dist/cjs/components/NoResults.js +4 -10
  20. package/dist/cjs/components/NoResults.js.map +2 -2
  21. package/dist/cjs/components/RowsLoader.js +1 -1
  22. package/dist/cjs/components/RowsLoader.js.map +1 -1
  23. package/dist/cjs/components/Table.js +5 -5
  24. package/dist/cjs/components/Table.js.map +1 -1
  25. package/dist/cjs/components/TableBody.js +2 -7
  26. package/dist/cjs/components/TableBody.js.map +2 -2
  27. package/dist/cjs/components/TableHeader.js +1 -1
  28. package/dist/cjs/components/TableHeader.js.map +2 -2
  29. package/dist/cjs/components/footer/addOptionalFooterComponents.js +1 -1
  30. package/dist/cjs/components/footer/addOptionalFooterComponents.js.map +1 -1
  31. package/dist/cjs/components/index.js +5 -5
  32. package/dist/cjs/components/index.js.map +1 -1
  33. package/dist/cjs/components/renderers/defaultClassedRenderers.js +16 -36
  34. package/dist/cjs/components/renderers/defaultClassedRenderers.js.map +2 -2
  35. package/dist/cjs/components/renderers/index.js +2 -2
  36. package/dist/cjs/components/renderers/index.js.map +1 -1
  37. package/dist/cjs/components/renderers/renderRowsLoader.js +2 -4
  38. package/dist/cjs/components/renderers/renderRowsLoader.js.map +2 -2
  39. package/dist/cjs/defaultPlugins.js +5 -10
  40. package/dist/cjs/defaultPlugins.js.map +2 -2
  41. package/dist/cjs/index.js +9 -9
  42. package/dist/cjs/index.js.map +1 -1
  43. package/dist/cjs/package.json +7 -0
  44. package/dist/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +22 -18
  45. package/dist/cjs/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +2 -2
  46. package/dist/cjs/plugins/body-header-scroll-sync/index.js +1 -1
  47. package/dist/cjs/plugins/body-header-scroll-sync/index.js.map +1 -1
  48. package/dist/cjs/plugins/column-dnd/DndColumnsPlugin.js +1 -1
  49. package/dist/cjs/plugins/column-dnd/DndColumnsPlugin.js.map +1 -1
  50. package/dist/cjs/plugins/column-dnd/index.js +1 -1
  51. package/dist/cjs/plugins/column-dnd/index.js.map +1 -1
  52. package/dist/cjs/plugins/column-sizing/ColumnSizingPlugin.js +4 -4
  53. package/dist/cjs/plugins/column-sizing/ColumnSizingPlugin.js.map +1 -1
  54. package/dist/cjs/plugins/column-sizing/ext-points/decorateColumn.js +1 -1
  55. package/dist/cjs/plugins/column-sizing/ext-points/decorateColumn.js.map +1 -1
  56. package/dist/cjs/plugins/column-sizing/ext-points/getTableProps.js +1 -1
  57. package/dist/cjs/plugins/column-sizing/ext-points/getTableProps.js.map +1 -1
  58. package/dist/cjs/plugins/column-sizing/index.js +1 -1
  59. package/dist/cjs/plugins/column-sizing/index.js.map +1 -1
  60. package/dist/cjs/plugins/column-sizing/useColumnSizeService.js +7 -26
  61. package/dist/cjs/plugins/column-sizing/useColumnSizeService.js.map +2 -2
  62. package/dist/cjs/plugins/column-sizing/useStylesheetHelpers.js +2 -2
  63. package/dist/cjs/plugins/column-sizing/useStylesheetHelpers.js.map +1 -1
  64. package/dist/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js +1 -1
  65. package/dist/cjs/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +1 -1
  66. package/dist/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js +1 -1
  67. package/dist/cjs/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +1 -1
  68. package/dist/cjs/plugins/custom-cell-renderer/getRendererComponent.js +1 -1
  69. package/dist/cjs/plugins/custom-cell-renderer/getRendererComponent.js.map +1 -1
  70. package/dist/cjs/plugins/custom-cell-renderer/index.js +1 -1
  71. package/dist/cjs/plugins/custom-cell-renderer/index.js.map +1 -1
  72. package/dist/cjs/plugins/editable/EditableComponents/ComboBox.js.map +1 -1
  73. package/dist/cjs/plugins/editable/EditableComponents/TextBox.js.map +1 -1
  74. package/dist/cjs/plugins/editable/EditableComponents/index.js +2 -2
  75. package/dist/cjs/plugins/editable/EditableComponents/index.js.map +1 -1
  76. package/dist/cjs/plugins/editable/EditablePlugin.js +1 -1
  77. package/dist/cjs/plugins/editable/EditablePlugin.js.map +1 -1
  78. package/dist/cjs/plugins/editable/decorateEditable.js +1 -1
  79. package/dist/cjs/plugins/editable/decorateEditable.js.map +1 -1
  80. package/dist/cjs/plugins/editable/getEditorComponent.js +3 -16
  81. package/dist/cjs/plugins/editable/getEditorComponent.js.map +2 -2
  82. package/dist/cjs/plugins/editable/index.js +2 -2
  83. package/dist/cjs/plugins/editable/index.js.map +1 -1
  84. package/dist/cjs/plugins/expandable-grid/ExpandableColumn.js +23 -25
  85. package/dist/cjs/plugins/expandable-grid/ExpandableColumn.js.map +2 -2
  86. package/dist/cjs/plugins/expandable-grid/ExpandablePlugin.js +5 -5
  87. package/dist/cjs/plugins/expandable-grid/ExpandablePlugin.js.map +2 -2
  88. package/dist/cjs/plugins/expandable-grid/ExpandedRow.js +6 -6
  89. package/dist/cjs/plugins/expandable-grid/ExpandedRow.js.map +1 -1
  90. package/dist/cjs/plugins/expandable-grid/ExpandedRowExtra.js +12 -8
  91. package/dist/cjs/plugins/expandable-grid/ExpandedRowExtra.js.map +2 -2
  92. package/dist/cjs/plugins/expandable-grid/index.js +2 -2
  93. package/dist/cjs/plugins/expandable-grid/index.js.map +1 -1
  94. package/dist/cjs/plugins/expandable-grid/useExpandGridState.js.map +2 -2
  95. package/dist/cjs/plugins/export-data/index.js +1 -1
  96. package/dist/cjs/plugins/export-data/index.js.map +1 -1
  97. package/dist/cjs/plugins/filterable/FilterablePlugin.js +3 -3
  98. package/dist/cjs/plugins/filterable/FilterablePlugin.js.map +2 -2
  99. package/dist/cjs/plugins/filterable/addFilterToColumn.js +1 -1
  100. package/dist/cjs/plugins/filterable/addFilterToColumn.js.map +1 -1
  101. package/dist/cjs/plugins/filterable/components/FilterableHeader.js +1 -1
  102. package/dist/cjs/plugins/filterable/components/FilterableHeader.js.map +2 -2
  103. package/dist/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +45 -47
  104. package/dist/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +2 -2
  105. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +46 -48
  106. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +2 -2
  107. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +43 -45
  108. package/dist/cjs/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +2 -2
  109. package/dist/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js +3 -3
  110. package/dist/cjs/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +2 -2
  111. package/dist/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +5 -7
  112. package/dist/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +2 -2
  113. package/dist/cjs/plugins/filterable/filterableFormatter.js +29 -37
  114. package/dist/cjs/plugins/filterable/filterableFormatter.js.map +2 -2
  115. package/dist/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js +2 -4
  116. package/dist/cjs/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +2 -2
  117. package/dist/cjs/plugins/filterable/filtering-helper/strategiesOperators.js.map +2 -2
  118. package/dist/cjs/plugins/filterable/helper.js.map +2 -2
  119. package/dist/cjs/plugins/filterable/index.js +1 -1
  120. package/dist/cjs/plugins/filterable/index.js.map +1 -1
  121. package/dist/cjs/plugins/filterable/useFilterableState.js +3 -7
  122. package/dist/cjs/plugins/filterable/useFilterableState.js.map +2 -2
  123. package/dist/cjs/plugins/grouping-grid/GroupingPlugin.js +4 -4
  124. package/dist/cjs/plugins/grouping-grid/GroupingPlugin.js.map +2 -2
  125. package/dist/cjs/plugins/grouping-grid/walkStrategy.js.map +2 -2
  126. package/dist/cjs/plugins/index.js +16 -16
  127. package/dist/cjs/plugins/index.js.map +1 -1
  128. package/dist/cjs/plugins/infinite-scrolling/index.js +1 -1
  129. package/dist/cjs/plugins/infinite-scrolling/index.js.map +1 -1
  130. package/dist/cjs/plugins/pagination/PaginationPlugin.js +4 -4
  131. package/dist/cjs/plugins/pagination/PaginationPlugin.js.map +2 -2
  132. package/dist/cjs/plugins/pagination/components/Pagination.js +5 -24
  133. package/dist/cjs/plugins/pagination/components/Pagination.js.map +2 -2
  134. package/dist/cjs/plugins/pagination/components/PerPageDropdown.js +2 -2
  135. package/dist/cjs/plugins/pagination/components/PerPageDropdown.js.map +2 -2
  136. package/dist/cjs/plugins/pagination/helper.js.map +2 -2
  137. package/dist/cjs/plugins/pagination/index.js +1 -1
  138. package/dist/cjs/plugins/pagination/index.js.map +1 -1
  139. package/dist/cjs/plugins/pagination/usePaginationState.js +1 -1
  140. package/dist/cjs/plugins/pagination/usePaginationState.js.map +1 -1
  141. package/dist/cjs/plugins/resizable/ResizablePlugin.js +1 -1
  142. package/dist/cjs/plugins/resizable/ResizablePlugin.js.map +1 -1
  143. package/dist/cjs/plugins/resizable/decorateResizable.js +4 -2
  144. package/dist/cjs/plugins/resizable/decorateResizable.js.map +2 -2
  145. package/dist/cjs/plugins/resizable/index.js +1 -1
  146. package/dist/cjs/plugins/resizable/index.js.map +1 -1
  147. package/dist/cjs/plugins/resizable/useResizeHandle.js +2 -12
  148. package/dist/cjs/plugins/resizable/useResizeHandle.js.map +2 -2
  149. package/dist/cjs/plugins/row-dnd/index.js +1 -1
  150. package/dist/cjs/plugins/row-dnd/index.js.map +1 -1
  151. package/dist/cjs/plugins/selectable/SelectablePlugin.js +3 -3
  152. package/dist/cjs/plugins/selectable/SelectablePlugin.js.map +1 -1
  153. package/dist/cjs/plugins/selectable/addSelectableColumn.js +1 -1
  154. package/dist/cjs/plugins/selectable/addSelectableColumn.js.map +1 -1
  155. package/dist/cjs/plugins/selectable/index.js +1 -1
  156. package/dist/cjs/plugins/selectable/index.js.map +1 -1
  157. package/dist/cjs/plugins/selectable/selectableFormatter.js +1 -1
  158. package/dist/cjs/plugins/selectable/selectableFormatter.js.map +2 -2
  159. package/dist/cjs/plugins/selectable/useSelectableState.js +1 -1
  160. package/dist/cjs/plugins/selectable/useSelectableState.js.map +2 -2
  161. package/dist/cjs/plugins/sortable/SortablePlugin.js +3 -3
  162. package/dist/cjs/plugins/sortable/SortablePlugin.js.map +1 -1
  163. package/dist/cjs/plugins/sortable/index.js +1 -1
  164. package/dist/cjs/plugins/sortable/index.js.map +1 -1
  165. package/dist/cjs/plugins/sortable/sortTree.js.map +2 -2
  166. package/dist/cjs/plugins/sortable/useSortableState.js +2 -4
  167. package/dist/cjs/plugins/sortable/useSortableState.js.map +2 -2
  168. package/dist/cjs/plugins/toolbar/RowRenderer.js +2 -2
  169. package/dist/cjs/plugins/toolbar/RowRenderer.js.map +1 -1
  170. package/dist/cjs/plugins/toolbar/ToolbarPlugin.js +1 -1
  171. package/dist/cjs/plugins/toolbar/ToolbarPlugin.js.map +1 -1
  172. package/dist/cjs/plugins/toolbar/index.js +1 -1
  173. package/dist/cjs/plugins/toolbar/index.js.map +1 -1
  174. package/dist/cjs/plugins/virtualization/AutoHeightList.js.map +2 -2
  175. package/dist/cjs/plugins/virtualization/VirtualizationPlugin.js +2 -2
  176. package/dist/cjs/plugins/virtualization/VirtualizationPlugin.js.map +2 -2
  177. package/dist/cjs/plugins/virtualization/VirtualizedBody.js +4 -4
  178. package/dist/cjs/plugins/virtualization/VirtualizedBody.js.map +1 -1
  179. package/dist/cjs/plugins/virtualization/index.js +1 -1
  180. package/dist/cjs/plugins/virtualization/index.js.map +1 -1
  181. package/dist/cjs/renders/CellWithAddons.js +1 -1
  182. package/dist/cjs/renders/CellWithAddons.js.map +1 -1
  183. package/dist/cjs/renders/index.js +2 -2
  184. package/dist/cjs/renders/index.js.map +1 -1
  185. package/dist/cjs/rowSizes.js +1 -5
  186. package/dist/cjs/rowSizes.js.map +2 -2
  187. package/dist/cjs/utilities/getPluginsFromProps.js +13 -13
  188. package/dist/cjs/utilities/getPluginsFromProps.js.map +1 -1
  189. package/dist/cjs/utilities/normalizeData.js.map +2 -2
  190. package/dist/esm/DSDataGrid.js +125 -117
  191. package/dist/esm/DSDataGrid.js.map +2 -2
  192. package/dist/esm/DataGridImpl.js +11 -11
  193. package/dist/esm/DataGridImpl.js.map +1 -1
  194. package/dist/esm/PaginatedDataGrid.js +9 -9
  195. package/dist/esm/PaginatedDataGrid.js.map +2 -2
  196. package/dist/esm/components/BodyList.js +3 -5
  197. package/dist/esm/components/BodyList.js.map +2 -2
  198. package/dist/esm/components/ColumnVisibilityMenuOption.js +1 -6
  199. package/dist/esm/components/ColumnVisibilityMenuOption.js.map +2 -2
  200. package/dist/esm/components/ColumnsOptionsMenuSection.js +2 -11
  201. package/dist/esm/components/ColumnsOptionsMenuSection.js.map +2 -2
  202. package/dist/esm/components/EmptyState.js +1 -2
  203. package/dist/esm/components/EmptyState.js.map +2 -2
  204. package/dist/esm/components/List.js +2 -2
  205. package/dist/esm/components/List.js.map +2 -2
  206. package/dist/esm/components/ListItem.js +3 -6
  207. package/dist/esm/components/ListItem.js.map +2 -2
  208. package/dist/esm/components/NoResults.js +4 -10
  209. package/dist/esm/components/NoResults.js.map +2 -2
  210. package/dist/esm/components/RowsLoader.js +1 -1
  211. package/dist/esm/components/RowsLoader.js.map +1 -1
  212. package/dist/esm/components/Table.js +5 -5
  213. package/dist/esm/components/Table.js.map +1 -1
  214. package/dist/esm/components/TableBody.js +2 -7
  215. package/dist/esm/components/TableBody.js.map +2 -2
  216. package/dist/esm/components/TableHeader.js +1 -1
  217. package/dist/esm/components/TableHeader.js.map +2 -2
  218. package/dist/esm/components/footer/addOptionalFooterComponents.js +1 -1
  219. package/dist/esm/components/footer/addOptionalFooterComponents.js.map +1 -1
  220. package/dist/esm/components/index.js +5 -5
  221. package/dist/esm/components/index.js.map +1 -1
  222. package/dist/esm/components/renderers/defaultClassedRenderers.js +16 -40
  223. package/dist/esm/components/renderers/defaultClassedRenderers.js.map +2 -2
  224. package/dist/esm/components/renderers/index.js +2 -2
  225. package/dist/esm/components/renderers/index.js.map +1 -1
  226. package/dist/esm/components/renderers/renderRowsLoader.js +2 -4
  227. package/dist/esm/components/renderers/renderRowsLoader.js.map +2 -2
  228. package/dist/esm/defaultPlugins.js +5 -10
  229. package/dist/esm/defaultPlugins.js.map +2 -2
  230. package/dist/esm/index.js +9 -9
  231. package/dist/esm/index.js.map +1 -1
  232. package/dist/esm/package.json +7 -0
  233. package/dist/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js +22 -18
  234. package/dist/esm/plugins/body-header-scroll-sync/BodyHeaderScrollSyncPlugin.js.map +2 -2
  235. package/dist/esm/plugins/body-header-scroll-sync/index.js +1 -1
  236. package/dist/esm/plugins/body-header-scroll-sync/index.js.map +1 -1
  237. package/dist/esm/plugins/column-dnd/DndColumnsPlugin.js +1 -1
  238. package/dist/esm/plugins/column-dnd/DndColumnsPlugin.js.map +1 -1
  239. package/dist/esm/plugins/column-dnd/index.js +1 -1
  240. package/dist/esm/plugins/column-dnd/index.js.map +1 -1
  241. package/dist/esm/plugins/column-sizing/ColumnSizingPlugin.js +4 -4
  242. package/dist/esm/plugins/column-sizing/ColumnSizingPlugin.js.map +1 -1
  243. package/dist/esm/plugins/column-sizing/ext-points/decorateColumn.js +1 -1
  244. package/dist/esm/plugins/column-sizing/ext-points/decorateColumn.js.map +1 -1
  245. package/dist/esm/plugins/column-sizing/ext-points/getTableProps.js +1 -1
  246. package/dist/esm/plugins/column-sizing/ext-points/getTableProps.js.map +1 -1
  247. package/dist/esm/plugins/column-sizing/index.js +1 -1
  248. package/dist/esm/plugins/column-sizing/index.js.map +1 -1
  249. package/dist/esm/plugins/column-sizing/useColumnSizeService.js +7 -26
  250. package/dist/esm/plugins/column-sizing/useColumnSizeService.js.map +2 -2
  251. package/dist/esm/plugins/column-sizing/useStylesheetHelpers.js +2 -2
  252. package/dist/esm/plugins/column-sizing/useStylesheetHelpers.js.map +1 -1
  253. package/dist/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js +1 -1
  254. package/dist/esm/plugins/custom-cell-renderer/CustomRendererPlugin.js.map +1 -1
  255. package/dist/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js +1 -1
  256. package/dist/esm/plugins/custom-cell-renderer/addCustomRendererToCell.js.map +1 -1
  257. package/dist/esm/plugins/custom-cell-renderer/getRendererComponent.js +1 -1
  258. package/dist/esm/plugins/custom-cell-renderer/getRendererComponent.js.map +1 -1
  259. package/dist/esm/plugins/custom-cell-renderer/index.js +1 -1
  260. package/dist/esm/plugins/custom-cell-renderer/index.js.map +1 -1
  261. package/dist/esm/plugins/editable/EditableComponents/ComboBox.js.map +1 -1
  262. package/dist/esm/plugins/editable/EditableComponents/TextBox.js.map +1 -1
  263. package/dist/esm/plugins/editable/EditableComponents/index.js +2 -2
  264. package/dist/esm/plugins/editable/EditableComponents/index.js.map +1 -1
  265. package/dist/esm/plugins/editable/EditablePlugin.js +1 -1
  266. package/dist/esm/plugins/editable/EditablePlugin.js.map +1 -1
  267. package/dist/esm/plugins/editable/decorateEditable.js +1 -1
  268. package/dist/esm/plugins/editable/decorateEditable.js.map +1 -1
  269. package/dist/esm/plugins/editable/getEditorComponent.js +3 -16
  270. package/dist/esm/plugins/editable/getEditorComponent.js.map +2 -2
  271. package/dist/esm/plugins/editable/index.js +2 -2
  272. package/dist/esm/plugins/editable/index.js.map +1 -1
  273. package/dist/esm/plugins/expandable-grid/ExpandableColumn.js +23 -25
  274. package/dist/esm/plugins/expandable-grid/ExpandableColumn.js.map +2 -2
  275. package/dist/esm/plugins/expandable-grid/ExpandablePlugin.js +5 -5
  276. package/dist/esm/plugins/expandable-grid/ExpandablePlugin.js.map +2 -2
  277. package/dist/esm/plugins/expandable-grid/ExpandedRow.js +6 -6
  278. package/dist/esm/plugins/expandable-grid/ExpandedRow.js.map +1 -1
  279. package/dist/esm/plugins/expandable-grid/ExpandedRowExtra.js +12 -8
  280. package/dist/esm/plugins/expandable-grid/ExpandedRowExtra.js.map +2 -2
  281. package/dist/esm/plugins/expandable-grid/index.js +2 -2
  282. package/dist/esm/plugins/expandable-grid/index.js.map +1 -1
  283. package/dist/esm/plugins/expandable-grid/useExpandGridState.js.map +2 -2
  284. package/dist/esm/plugins/export-data/index.js +1 -1
  285. package/dist/esm/plugins/export-data/index.js.map +1 -1
  286. package/dist/esm/plugins/filterable/FilterablePlugin.js +3 -3
  287. package/dist/esm/plugins/filterable/FilterablePlugin.js.map +2 -2
  288. package/dist/esm/plugins/filterable/addFilterToColumn.js +1 -1
  289. package/dist/esm/plugins/filterable/addFilterToColumn.js.map +1 -1
  290. package/dist/esm/plugins/filterable/components/FilterableHeader.js +1 -1
  291. package/dist/esm/plugins/filterable/components/FilterableHeader.js.map +2 -2
  292. package/dist/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +45 -47
  293. package/dist/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +2 -2
  294. package/dist/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +46 -48
  295. package/dist/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +2 -2
  296. package/dist/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js +43 -45
  297. package/dist/esm/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js.map +2 -2
  298. package/dist/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js +3 -3
  299. package/dist/esm/plugins/filterable/components/filterable-menus/TextFilterMenu.js.map +2 -2
  300. package/dist/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +5 -7
  301. package/dist/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +2 -2
  302. package/dist/esm/plugins/filterable/filterableFormatter.js +29 -37
  303. package/dist/esm/plugins/filterable/filterableFormatter.js.map +2 -2
  304. package/dist/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js +2 -4
  305. package/dist/esm/plugins/filterable/filtering-helper/filterRowsByQuery.js.map +2 -2
  306. package/dist/esm/plugins/filterable/filtering-helper/strategiesOperators.js.map +2 -2
  307. package/dist/esm/plugins/filterable/helper.js +1 -7
  308. package/dist/esm/plugins/filterable/helper.js.map +2 -2
  309. package/dist/esm/plugins/filterable/index.js +1 -1
  310. package/dist/esm/plugins/filterable/index.js.map +1 -1
  311. package/dist/esm/plugins/filterable/useFilterableState.js +3 -11
  312. package/dist/esm/plugins/filterable/useFilterableState.js.map +2 -2
  313. package/dist/esm/plugins/grouping-grid/GroupingPlugin.js +4 -4
  314. package/dist/esm/plugins/grouping-grid/GroupingPlugin.js.map +2 -2
  315. package/dist/esm/plugins/grouping-grid/walkStrategy.js.map +2 -2
  316. package/dist/esm/plugins/index.js +16 -16
  317. package/dist/esm/plugins/index.js.map +1 -1
  318. package/dist/esm/plugins/infinite-scrolling/index.js +1 -1
  319. package/dist/esm/plugins/infinite-scrolling/index.js.map +1 -1
  320. package/dist/esm/plugins/pagination/PaginationPlugin.js +4 -4
  321. package/dist/esm/plugins/pagination/PaginationPlugin.js.map +2 -2
  322. package/dist/esm/plugins/pagination/components/Pagination.js +5 -24
  323. package/dist/esm/plugins/pagination/components/Pagination.js.map +2 -2
  324. package/dist/esm/plugins/pagination/components/PerPageDropdown.js +2 -2
  325. package/dist/esm/plugins/pagination/components/PerPageDropdown.js.map +2 -2
  326. package/dist/esm/plugins/pagination/helper.js.map +2 -2
  327. package/dist/esm/plugins/pagination/index.js +1 -1
  328. package/dist/esm/plugins/pagination/index.js.map +1 -1
  329. package/dist/esm/plugins/pagination/usePaginationState.js +1 -1
  330. package/dist/esm/plugins/pagination/usePaginationState.js.map +1 -1
  331. package/dist/esm/plugins/resizable/ResizablePlugin.js +1 -1
  332. package/dist/esm/plugins/resizable/ResizablePlugin.js.map +1 -1
  333. package/dist/esm/plugins/resizable/decorateResizable.js +4 -2
  334. package/dist/esm/plugins/resizable/decorateResizable.js.map +2 -2
  335. package/dist/esm/plugins/resizable/index.js +1 -1
  336. package/dist/esm/plugins/resizable/index.js.map +1 -1
  337. package/dist/esm/plugins/resizable/useResizeHandle.js +2 -12
  338. package/dist/esm/plugins/resizable/useResizeHandle.js.map +2 -2
  339. package/dist/esm/plugins/row-dnd/index.js +1 -1
  340. package/dist/esm/plugins/row-dnd/index.js.map +1 -1
  341. package/dist/esm/plugins/selectable/SelectablePlugin.js +3 -3
  342. package/dist/esm/plugins/selectable/SelectablePlugin.js.map +1 -1
  343. package/dist/esm/plugins/selectable/addSelectableColumn.js +1 -1
  344. package/dist/esm/plugins/selectable/addSelectableColumn.js.map +1 -1
  345. package/dist/esm/plugins/selectable/index.js +1 -1
  346. package/dist/esm/plugins/selectable/index.js.map +1 -1
  347. package/dist/esm/plugins/selectable/selectableFormatter.js +1 -1
  348. package/dist/esm/plugins/selectable/selectableFormatter.js.map +2 -2
  349. package/dist/esm/plugins/selectable/useSelectableState.js +1 -5
  350. package/dist/esm/plugins/selectable/useSelectableState.js.map +2 -2
  351. package/dist/esm/plugins/sortable/SortablePlugin.js +3 -3
  352. package/dist/esm/plugins/sortable/SortablePlugin.js.map +1 -1
  353. package/dist/esm/plugins/sortable/index.js +1 -1
  354. package/dist/esm/plugins/sortable/index.js.map +1 -1
  355. package/dist/esm/plugins/sortable/sortTree.js.map +2 -2
  356. package/dist/esm/plugins/sortable/useSortableState.js +2 -4
  357. package/dist/esm/plugins/sortable/useSortableState.js.map +2 -2
  358. package/dist/esm/plugins/toolbar/RowRenderer.js +2 -2
  359. package/dist/esm/plugins/toolbar/RowRenderer.js.map +1 -1
  360. package/dist/esm/plugins/toolbar/ToolbarPlugin.js +1 -1
  361. package/dist/esm/plugins/toolbar/ToolbarPlugin.js.map +1 -1
  362. package/dist/esm/plugins/toolbar/index.js +1 -1
  363. package/dist/esm/plugins/toolbar/index.js.map +1 -1
  364. package/dist/esm/plugins/virtualization/AutoHeightList.js.map +2 -2
  365. package/dist/esm/plugins/virtualization/VirtualizationPlugin.js +2 -2
  366. package/dist/esm/plugins/virtualization/VirtualizationPlugin.js.map +2 -2
  367. package/dist/esm/plugins/virtualization/VirtualizedBody.js +4 -4
  368. package/dist/esm/plugins/virtualization/VirtualizedBody.js.map +1 -1
  369. package/dist/esm/plugins/virtualization/index.js +1 -1
  370. package/dist/esm/plugins/virtualization/index.js.map +1 -1
  371. package/dist/esm/renders/CellWithAddons.js +1 -1
  372. package/dist/esm/renders/CellWithAddons.js.map +1 -1
  373. package/dist/esm/renders/index.js +2 -2
  374. package/dist/esm/renders/index.js.map +1 -1
  375. package/dist/esm/rowSizes.js +1 -5
  376. package/dist/esm/rowSizes.js.map +2 -2
  377. package/dist/esm/utilities/getPluginsFromProps.js +13 -13
  378. package/dist/esm/utilities/getPluginsFromProps.js.map +1 -1
  379. package/dist/esm/utilities/normalizeData.js.map +2 -2
  380. package/package.json +22 -21
@@ -38,7 +38,7 @@ var import_ds_icons = require("@elliemae/ds-icons");
38
38
  var import_ds_button = require("@elliemae/ds-button");
39
39
  var import_moment = __toESM(require("moment"));
40
40
  var import_ds_classnames = require("@elliemae/ds-classnames");
41
- var import_defaultDateFormat = require("./defaultDateFormat");
41
+ var import_defaultDateFormat = require("./defaultDateFormat.js");
42
42
  const blockname = "date-range";
43
43
  const Wrapper = (0, import_ds_classnames.aggregatedClasses)("div")(blockname, "wrapper");
44
44
  const Header = (0, import_ds_classnames.aggregatedClasses)("div")(blockname, "header");
@@ -106,7 +106,7 @@ const formatRangeDate = ({ startDate, endDate }, format = import_defaultDateForm
106
106
  return `${endDate.format(format)}`;
107
107
  return `${startDate.format(format)} - ${endDate.format(format)}`;
108
108
  };
109
- function DateRangeFilterMenu({
109
+ const DateRangeFilterMenu = ({
110
110
  column,
111
111
  className,
112
112
  isMenuOpened = false,
@@ -116,51 +116,49 @@ function DateRangeFilterMenu({
116
116
  dateFormatter = formatRangeDate,
117
117
  showHeader = true,
118
118
  menuProps
119
- }) {
120
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
121
- import_ds_popper.DSPopper,
122
- {
123
- contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
124
- DateRangePickerContainer,
125
- {
126
- minimumNights: 0,
127
- onChange: ({ startDate, endDate }) => {
128
- startDate.startOf("day");
129
- endDate.endOf("day");
130
- onAddFilter(
131
- {
132
- group: column.property,
133
- label: column.label,
134
- value: dateFormatter({ startDate, endDate }),
135
- type: "date",
136
- filterParams: { start: startDate, end: endDate },
137
- transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT),
138
- operator: "range"
139
- },
140
- column
141
- );
142
- onOpenMenu(false);
143
- },
144
- showHeader
145
- }
146
- ) }),
147
- isOpen: isMenuOpened,
148
- onOpen: onOpenMenu,
149
- placement,
150
- showArrow: false,
151
- triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
152
- import_ds_button.DSButton,
153
- {
154
- buttonType: "text",
155
- icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
156
- onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
157
- size: "s"
158
- }
159
- ),
160
- zIndex: menuProps.zIndex
161
- }
162
- );
163
- }
119
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
120
+ import_ds_popper.DSPopper,
121
+ {
122
+ contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
123
+ DateRangePickerContainer,
124
+ {
125
+ minimumNights: 0,
126
+ onChange: ({ startDate, endDate }) => {
127
+ startDate.startOf("day");
128
+ endDate.endOf("day");
129
+ onAddFilter(
130
+ {
131
+ group: column.property,
132
+ label: column.label,
133
+ value: dateFormatter({ startDate, endDate }),
134
+ type: "date",
135
+ filterParams: { start: startDate, end: endDate },
136
+ transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT),
137
+ operator: "range"
138
+ },
139
+ column
140
+ );
141
+ onOpenMenu(false);
142
+ },
143
+ showHeader
144
+ }
145
+ ) }),
146
+ isOpen: isMenuOpened,
147
+ onOpen: onOpenMenu,
148
+ placement,
149
+ showArrow: false,
150
+ triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
151
+ import_ds_button.DSButton,
152
+ {
153
+ buttonType: "text",
154
+ icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
155
+ onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
156
+ size: "s"
157
+ }
158
+ ),
159
+ zIndex: menuProps.zIndex
160
+ }
161
+ );
164
162
  DateRangeFilterMenu.propTypes = {
165
163
  column: import_prop_types.default.any,
166
164
  className: import_prop_types.default.string,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { DSControlledDateRangePicker } from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\nconst Header = aggregatedClasses('div')(blockname, 'header');\n\n// const randomString = (maxLength = 5) => Math.random().toString(36).slice(-maxLength);\n\nconst DateRangePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <Wrapper\n data-testid=\"date-range__wrapper\"\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n style={{ backgroundColor: 'white', boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)', width: '261px' }}\n >\n {showHeader && (\n <Header style={{ padding: '8px', display: 'flex', justifyContent: 'center' }}>\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n </Header>\n )}\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n </Wrapper>\n );\n};\n\nDateRangePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\nfunction DateRangeFilterMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatRangeDate,\n showHeader = true,\n menuProps,\n}) {\n return (\n <DSPopper\n contentComponent={\n <div className={className}>\n <DateRangePickerContainer\n minimumNights={0}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nDateRangeFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { DateRangeFilterMenu };\nexport default DateRangeFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { DSControlledDateRangePicker } from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat.js';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\nconst Header = aggregatedClasses('div')(blockname, 'header');\n\n// const randomString = (maxLength = 5) => Math.random().toString(36).slice(-maxLength);\n\nconst DateRangePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <Wrapper\n data-testid=\"date-range__wrapper\"\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n style={{ backgroundColor: 'white', boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)', width: '261px' }}\n >\n {showHeader && (\n <Header style={{ padding: '8px', display: 'flex', justifyContent: 'center' }}>\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n </Header>\n )}\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n </Wrapper>\n );\n};\n\nDateRangePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\nconst DateRangeFilterMenu = ({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatRangeDate,\n showHeader = true,\n menuProps,\n}) => (\n <DSPopper\n contentComponent={\n <div className={className}>\n <DateRangePickerContainer\n minimumNights={0}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n);\n\nDateRangeFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { DateRangeFilterMenu };\nexport default DateRangeFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": ["moment", "PropTypes", "Position"]
7
7
  }
@@ -38,7 +38,7 @@ var import_ds_popper = require("@elliemae/ds-popper");
38
38
  var import_ds_icons = require("@elliemae/ds-icons");
39
39
  var import_ds_button = require("@elliemae/ds-button");
40
40
  var import_moment = __toESM(require("moment"));
41
- var import_defaultDateFormat = require("./defaultDateFormat");
41
+ var import_defaultDateFormat = require("./defaultDateFormat.js");
42
42
  const SingleDatePickerContainer = ({ onChange = () => null, showHeader }) => {
43
43
  const [date, setDate] = (0, import_react.useState)("");
44
44
  const handleDateChange = (0, import_react.useCallback)(
@@ -59,7 +59,7 @@ SingleDatePickerContainer.propTypes = {
59
59
  showHeader: import_prop_types.default.bool
60
60
  };
61
61
  const formatDate = (date, format = import_defaultDateFormat.DEFAULT_DATE_FORMAT) => date.format(format);
62
- function SingleDateFilterMenu({
62
+ const SingleDateFilterMenu = ({
63
63
  column,
64
64
  className,
65
65
  isMenuOpened = false,
@@ -69,53 +69,51 @@ function SingleDateFilterMenu({
69
69
  dateFormatter = formatDate,
70
70
  showHeader = false,
71
71
  menuProps
72
- }) {
73
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
74
- import_ds_popper.DSPopper,
75
- {
76
- contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, "data-testid": "date-single__wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
77
- SingleDatePickerContainer,
78
- {
79
- minimumNights: 0,
80
- onChange: (date) => {
81
- const t = date.clone();
82
- onAddFilter(
83
- {
84
- group: column.property,
85
- label: column.label,
86
- value: dateFormatter(date, column.dateFormat),
87
- type: "date",
88
- operator: "range",
89
- filterParams: {
90
- start: date.startOf("day"),
91
- end: t.endOf("day")
92
- },
93
- transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT)
72
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
73
+ import_ds_popper.DSPopper,
74
+ {
75
+ contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, "data-testid": "date-single__wrapper", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
76
+ SingleDatePickerContainer,
77
+ {
78
+ minimumNights: 0,
79
+ onChange: (date) => {
80
+ const t = date.clone();
81
+ onAddFilter(
82
+ {
83
+ group: column.property,
84
+ label: column.label,
85
+ value: dateFormatter(date, column.dateFormat),
86
+ type: "date",
87
+ operator: "range",
88
+ filterParams: {
89
+ start: date.startOf("day"),
90
+ end: t.endOf("day")
94
91
  },
95
- column
96
- );
97
- onOpenMenu(false);
98
- },
99
- showHeader
100
- }
101
- ) }),
102
- isOpen: isMenuOpened,
103
- onOpen: onOpenMenu,
104
- placement,
105
- showArrow: false,
106
- triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
107
- import_ds_button.DSButton,
108
- {
109
- buttonType: "text",
110
- icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
111
- onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
112
- size: "s"
113
- }
114
- ),
115
- zIndex: menuProps.zIndex
116
- }
117
- );
118
- }
92
+ transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT)
93
+ },
94
+ column
95
+ );
96
+ onOpenMenu(false);
97
+ },
98
+ showHeader
99
+ }
100
+ ) }),
101
+ isOpen: isMenuOpened,
102
+ onOpen: onOpenMenu,
103
+ placement,
104
+ showArrow: false,
105
+ triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
106
+ import_ds_button.DSButton,
107
+ {
108
+ buttonType: "text",
109
+ icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
110
+ onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
111
+ size: "s"
112
+ }
113
+ ),
114
+ zIndex: menuProps.zIndex
115
+ }
116
+ );
119
117
  SingleDateFilterMenu.propTypes = {
120
118
  column: import_prop_types.default.any,
121
119
  className: import_prop_types.default.string,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import React, { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSControlledDateTimePicker } from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst SingleDatePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [date, setDate] = useState('');\n\n const handleDateChange = useCallback(\n (data) => {\n if (!data.includes('_')) onChange(moment(data));\n setDate(data);\n },\n [onChange],\n );\n\n return (\n <div style={{ boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)' }}>\n {showHeader && (\n <Grid p=\"xxs\">\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-inputs\" isClearable />\n </Grid>\n )}\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-picker-controller-only\" />\n </div>\n );\n};\n\nSingleDatePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatDate = (date, format = DEFAULT_DATE_FORMAT) => date.format(format);\n\nfunction SingleDateFilterMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatDate,\n showHeader = false,\n menuProps,\n}) {\n return (\n <DSPopper\n contentComponent={\n <div className={className} data-testid=\"date-single__wrapper\">\n <SingleDatePickerContainer\n minimumNights={0}\n onChange={(date) => {\n const t = date.clone();\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter(date, column.dateFormat),\n type: 'date',\n operator: 'range',\n filterParams: {\n start: date.startOf('day'),\n end: t.endOf('day'),\n },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nSingleDateFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { SingleDateFilterMenu };\nexport default SingleDateFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import React, { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { Grid } from '@elliemae/ds-grid';\nimport { DSControlledDateTimePicker } from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport moment from 'moment';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat.js';\n\nconst SingleDatePickerContainer = ({ onChange = () => null, showHeader }) => {\n const [date, setDate] = useState('');\n\n const handleDateChange = useCallback(\n (data) => {\n if (!data.includes('_')) onChange(moment(data));\n setDate(data);\n },\n [onChange],\n );\n\n return (\n <div style={{ boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)' }}>\n {showHeader && (\n <Grid p=\"xxs\">\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-inputs\" isClearable />\n </Grid>\n )}\n <DSControlledDateTimePicker date={date} onDateChange={handleDateChange} type=\"date-picker-controller-only\" />\n </div>\n );\n};\n\nSingleDatePickerContainer.propTypes = {\n onChange: PropTypes.func,\n showHeader: PropTypes.bool,\n};\n\nconst formatDate = (date, format = DEFAULT_DATE_FORMAT) => date.format(format);\n\nconst SingleDateFilterMenu = ({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = () => null,\n placement = Position.BOTTOM_END,\n onAddFilter = () => null,\n dateFormatter = formatDate,\n showHeader = false,\n menuProps,\n}) => (\n <DSPopper\n contentComponent={\n <div className={className} data-testid=\"date-single__wrapper\">\n <SingleDatePickerContainer\n minimumNights={0}\n onChange={(date) => {\n const t = date.clone();\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter(date, column.dateFormat),\n type: 'date',\n operator: 'range',\n filterParams: {\n start: date.startOf('day'),\n end: t.endOf('day'),\n },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n },\n column,\n );\n onOpenMenu(false);\n }}\n showHeader={showHeader}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n);\n\nSingleDateFilterMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n showHeader: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { SingleDateFilterMenu };\nexport default SingleDateFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADsBnB;AAtBJ,mBAA6C;AAC7C,wBAAsB;AACtB,qBAAqB;AACrB,gCAA2C;AAC3C,uBAAsD;AACtD,sBAA4B;AAC5B,uBAAyB;AACzB,oBAAmB;AACnB,+BAAoC;AAEpC,MAAM,4BAA4B,CAAC,EAAE,WAAW,MAAM,MAAM,WAAW,MAAM;AAC3E,QAAM,CAAC,MAAM,OAAO,QAAI,uBAAS,EAAE;AAEnC,QAAM,uBAAmB;AAAA,IACvB,CAAC,SAAS;AACR,UAAI,CAAC,KAAK,SAAS,GAAG;AAAG,qBAAS,cAAAA,SAAO,IAAI,CAAC;AAC9C,cAAQ,IAAI;AAAA,IACd;AAAA,IACA,CAAC,QAAQ;AAAA,EACX;AAEA,SACE,6CAAC,SAAI,OAAO,EAAE,WAAW,gCAAgC,GACtD;AAAA,kBACC,4CAAC,uBAAK,GAAE,OACN,sDAAC,wDAA2B,MAAY,cAAc,kBAAkB,MAAK,eAAc,aAAW,MAAC,GACzG;AAAA,IAEF,4CAAC,wDAA2B,MAAY,cAAc,kBAAkB,MAAK,+BAA8B;AAAA,KAC7G;AAEJ;AAEA,0BAA0B,YAAY;AAAA,EACpC,UAAU,kBAAAC,QAAU;AAAA,EACpB,YAAY,kBAAAA,QAAU;AACxB;AAEA,MAAM,aAAa,CAAC,MAAM,SAAS,iDAAwB,KAAK,OAAO,MAAM;AAE7E,MAAM,uBAAuB,CAAC;AAAA,EAC5B;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,aAAa,MAAM;AAAA,EACnB,YAAY,iBAAAC,gBAAS;AAAA,EACrB,cAAc,MAAM;AAAA,EACpB,gBAAgB;AAAA,EAChB,aAAa;AAAA,EACb;AACF,MACE;AAAA,EAAC;AAAA;AAAA,IACC,kBACE,4CAAC,SAAI,WAAsB,eAAY,wBACrC;AAAA,MAAC;AAAA;AAAA,QACC,eAAe;AAAA,QACf,UAAU,CAAC,SAAS;AAClB,gBAAM,IAAI,KAAK,MAAM;AACrB;AAAA,YACE;AAAA,cACE,OAAO,OAAO;AAAA,cACd,OAAO,OAAO;AAAA,cACd,OAAO,cAAc,MAAM,OAAO,UAAU;AAAA,cAC5C,MAAM;AAAA,cACN,UAAU;AAAA,cACV,cAAc;AAAA,gBACZ,OAAO,KAAK,QAAQ,KAAK;AAAA,gBACzB,KAAK,EAAE,MAAM,KAAK;AAAA,cACpB;AAAA,cACA,mBAAmB,CAAC,cAAU,cAAAF,SAAO,OAAO,OAAO,cAAc,4CAAmB;AAAA,YACtF;AAAA,YACA;AAAA,UACF;AACA,qBAAW,KAAK;AAAA,QAClB;AAAA,QACA;AAAA;AAAA,IACF,GACF;AAAA,IAEF,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR;AAAA,IACA,WAAW;AAAA,IACX,kBACE;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,MAAM,4CAAC,+BAAY;AAAA,QACnB,SAAS,MAAO,CAAC,eAAe,WAAW,IAAI,IAAI,WAAW,KAAK;AAAA,QACnE,MAAK;AAAA;AAAA,IACP;AAAA,IAEF,QAAQ,UAAU;AAAA;AACpB;AAGF,qBAAqB,YAAY;AAAA,EAC/B,QAAQ,kBAAAC,QAAU;AAAA,EAClB,WAAW,kBAAAA,QAAU;AAAA,EACrB,cAAc,kBAAAA,QAAU;AAAA,EACxB,YAAY,kBAAAA,QAAU;AAAA,EACtB,WAAW,kBAAAA,QAAU;AAAA,EACrB,aAAa,kBAAAA,QAAU;AAAA,EACvB,eAAe,kBAAAA,QAAU;AAAA,EACzB,YAAY,kBAAAA,QAAU;AAAA,EACtB,WAAW,kBAAAA,QAAU;AACvB;AAGA,IAAO,+BAAQ;",
6
6
  "names": ["moment", "PropTypes", "Position"]
7
7
  }
@@ -39,7 +39,7 @@ var import_ds_button = require("@elliemae/ds-button");
39
39
  var import_ds_grid = require("@elliemae/ds-grid");
40
40
  var import_moment = __toESM(require("moment"));
41
41
  var import_ds_system = require("@elliemae/ds-system");
42
- var import_defaultDateFormat = require("./defaultDateFormat");
42
+ var import_defaultDateFormat = require("./defaultDateFormat.js");
43
43
  const StyledGridWrapper = (0, import_ds_system.styled)(import_ds_grid.Grid)`
44
44
  .notCurrentMonth {
45
45
  opacity: ${(props) => props.enableOutsideDays ? "1" : "0"};
@@ -159,7 +159,7 @@ const formatRangeDate = ({ startDate, endDate }, format = import_defaultDateForm
159
159
  return `${endDate.format(format)}`;
160
160
  return `${startDate.format(format)} - ${endDate.format(format)}`;
161
161
  };
162
- function SingleRangeSwitcherMenu({
162
+ const SingleRangeSwitcherMenu = ({
163
163
  column,
164
164
  className,
165
165
  isMenuOpened = false,
@@ -169,50 +169,48 @@ function SingleRangeSwitcherMenu({
169
169
  dateFormatter = formatRangeDate,
170
170
  enableOutsideDays = true,
171
171
  menuProps
172
- }) {
173
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
174
- import_ds_popper.DSPopper,
175
- {
176
- contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
177
- SingleRangeSwitcherContainer,
178
- {
179
- enableOutsideDays,
180
- onChange: ({ startDate, endDate }) => {
181
- startDate.startOf("day");
182
- endDate.endOf("day");
183
- onAddFilter(
184
- {
185
- group: column.property,
186
- label: column.label,
187
- value: dateFormatter({ startDate, endDate }, column.format),
188
- type: "date",
189
- filterParams: { start: startDate, end: endDate },
190
- transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT),
191
- operator: "range"
192
- },
193
- column
194
- );
195
- onOpenMenu(false);
196
- }
197
- }
198
- ) }),
199
- isOpen: isMenuOpened,
200
- onOpen: onOpenMenu,
201
- placement,
202
- showArrow: false,
203
- triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
204
- import_ds_button.DSButton,
205
- {
206
- buttonType: "text",
207
- icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
208
- onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
209
- size: "s"
172
+ }) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
173
+ import_ds_popper.DSPopper,
174
+ {
175
+ contentComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
176
+ SingleRangeSwitcherContainer,
177
+ {
178
+ enableOutsideDays,
179
+ onChange: ({ startDate, endDate }) => {
180
+ startDate.startOf("day");
181
+ endDate.endOf("day");
182
+ onAddFilter(
183
+ {
184
+ group: column.property,
185
+ label: column.label,
186
+ value: dateFormatter({ startDate, endDate }, column.format),
187
+ type: "date",
188
+ filterParams: { start: startDate, end: endDate },
189
+ transformRowValue: (value) => (0, import_moment.default)(value, column.dateFormat || import_defaultDateFormat.DEFAULT_DATE_FORMAT),
190
+ operator: "range"
191
+ },
192
+ column
193
+ );
194
+ onOpenMenu(false);
210
195
  }
211
- ),
212
- zIndex: menuProps.zIndex
213
- }
214
- );
215
- }
196
+ }
197
+ ) }),
198
+ isOpen: isMenuOpened,
199
+ onOpen: onOpenMenu,
200
+ placement,
201
+ showArrow: false,
202
+ triggerComponent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
203
+ import_ds_button.DSButton,
204
+ {
205
+ buttonType: "text",
206
+ icon: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_icons.DatePicker2, {}),
207
+ onClick: () => !isMenuOpened ? onOpenMenu(true) : onOpenMenu(false),
208
+ size: "s"
209
+ }
210
+ ),
211
+ zIndex: menuProps.zIndex
212
+ }
213
+ );
216
214
  SingleRangeSwitcherMenu.propTypes = {
217
215
  column: import_prop_types.default.any,
218
216
  className: import_prop_types.default.string,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n DSControlledDateTimePicker,\n DSControlledDateRangePicker,\n DSControlledCheckbox,\n} from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport { Grid } from '@elliemae/ds-grid';\nimport moment from 'moment';\nimport { styled } from '@elliemae/ds-system';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst StyledGridWrapper = styled(Grid)`\n .notCurrentMonth {\n opacity: ${(props) => (props.enableOutsideDays ? '1' : '0')};\n pointer-events: ${(props) => (props.enableOutsideDays ? 'auto' : 'none')};\n }\n`;\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function\nconst noop = (...args) => {};\n\nconst SingleRangeSwitcherContainer = ({ onChange = noop, enableOutsideDays }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n const [isDateRange, setIsDateRange] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <StyledGridWrapper\n data-testid=\"date-single-range__wrapper\"\n style={{\n backgroundColor: 'white',\n boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)',\n width: '261px',\n display: 'grid',\n justifyContent: 'center',\n }}\n cols={['100%']}\n enableOutsideDays={enableOutsideDays}\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n >\n <Grid gutter=\"xxs\" alignItems=\"center\" p=\"xxs\">\n <DSControlledCheckbox\n checked={isDateRange}\n name=\"Date range\"\n label=\"Range\"\n id=\"date-range-switcher-id-internal\"\n onChange={() => {\n setIsDateRange(!isDateRange);\n setStartDate('');\n setEndDate('');\n }}\n />\n <div style={{ width: 'fit-content' }}>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(false);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-inputs\"\n />\n )}\n </div>\n </Grid>\n <Grid>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(true);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-picker-controller-only\"\n />\n )}\n </Grid>\n </StyledGridWrapper>\n );\n};\n\nSingleRangeSwitcherContainer.propTypes = {\n onChange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nfunction SingleRangeSwitcherMenu({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = noop,\n placement = Position.BOTTOM_END,\n onAddFilter = noop,\n dateFormatter = formatRangeDate,\n enableOutsideDays = true,\n menuProps,\n}): JSX.Element {\n return (\n <DSPopper\n contentComponent={\n <div className={className}>\n <SingleRangeSwitcherContainer\n enableOutsideDays={enableOutsideDays}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }, column.format),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n );\n}\n\nSingleRangeSwitcherMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n enableOutsideDays: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { SingleRangeSwitcherMenu };\nexport default SingleRangeSwitcherMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useEffect, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport {\n DSControlledDateTimePicker,\n DSControlledDateRangePicker,\n DSControlledCheckbox,\n} from '@elliemae/ds-controlled-form';\nimport { DSPopper, PopperPositions as Position } from '@elliemae/ds-popper';\nimport { DatePicker2 } from '@elliemae/ds-icons';\nimport { DSButton } from '@elliemae/ds-button';\nimport { Grid } from '@elliemae/ds-grid';\nimport moment from 'moment';\nimport { styled } from '@elliemae/ds-system';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat.js';\n\nconst StyledGridWrapper = styled(Grid)`\n .notCurrentMonth {\n opacity: ${(props) => (props.enableOutsideDays ? '1' : '0')};\n pointer-events: ${(props) => (props.enableOutsideDays ? 'auto' : 'none')};\n }\n`;\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function\nconst noop = (...args) => {};\n\nconst SingleRangeSwitcherContainer = ({ onChange = noop, enableOutsideDays }) => {\n const [startDate, setStartDate] = useState('');\n const [endDate, setEndDate] = useState('');\n\n // For some reason it worked like this\n const [lastChangeWasPicker, setLastChangeWasPicker] = useState(false);\n\n const [isDateRange, setIsDateRange] = useState(false);\n\n useEffect(() => {\n const startMoment = moment(startDate);\n const endMoment = moment(endDate);\n if (\n lastChangeWasPicker &&\n startDate &&\n !startDate.includes('_') &&\n endDate &&\n !endDate.includes('_') &&\n endMoment.diff(startMoment) >= 0\n ) {\n onChange({ startDate: startMoment, endDate: endMoment });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [startDate, endDate, lastChangeWasPicker]);\n\n return (\n <StyledGridWrapper\n data-testid=\"date-single-range__wrapper\"\n style={{\n backgroundColor: 'white',\n boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)',\n width: '261px',\n display: 'grid',\n justifyContent: 'center',\n }}\n cols={['100%']}\n enableOutsideDays={enableOutsideDays}\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\n >\n <Grid gutter=\"xxs\" alignItems=\"center\" p=\"xxs\">\n <DSControlledCheckbox\n checked={isDateRange}\n name=\"Date range\"\n label=\"Range\"\n id=\"date-range-switcher-id-internal\"\n onChange={() => {\n setIsDateRange(!isDateRange);\n setStartDate('');\n setEndDate('');\n }}\n />\n <div style={{ width: 'fit-content' }}>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(false);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(false);\n }}\n type=\"date-range-inputs\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(false);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-inputs\"\n />\n )}\n </div>\n </Grid>\n <Grid>\n {isDateRange ? (\n <DSControlledDateRangePicker\n fromDate={startDate}\n onFromDateChange={(_start) => {\n setStartDate(_start);\n setLastChangeWasPicker(true);\n }}\n toDate={endDate}\n onToDateChange={(_end) => {\n setEndDate(_end);\n setLastChangeWasPicker(true);\n }}\n type=\"date-range-picker-controller-only\"\n />\n ) : (\n <DSControlledDateTimePicker\n date={startDate}\n onDateChange={(_date) => {\n setLastChangeWasPicker(true);\n setStartDate(_date);\n setEndDate(_date);\n }}\n type=\"date-picker-controller-only\"\n />\n )}\n </Grid>\n </StyledGridWrapper>\n );\n};\n\nSingleRangeSwitcherContainer.propTypes = {\n onChange: PropTypes.func,\n enableOutsideDays: PropTypes.bool,\n};\n\nconst formatRangeDate = ({ startDate, endDate }, format = DEFAULT_DATE_FORMAT) => {\n const sameDay = startDate.isSame(endDate, 'day');\n if (sameDay) return `${endDate.format(format)}`;\n return `${startDate.format(format)} - ${endDate.format(format)}`;\n};\n\n// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\nconst SingleRangeSwitcherMenu = ({\n column,\n className,\n isMenuOpened = false,\n onOpenMenu = noop,\n placement = Position.BOTTOM_END,\n onAddFilter = noop,\n dateFormatter = formatRangeDate,\n enableOutsideDays = true,\n menuProps,\n}): JSX.Element => (\n <DSPopper\n contentComponent={\n <div className={className}>\n <SingleRangeSwitcherContainer\n enableOutsideDays={enableOutsideDays}\n onChange={({ startDate, endDate }) => {\n startDate.startOf('day');\n endDate.endOf('day');\n onAddFilter(\n {\n group: column.property,\n label: column.label,\n value: dateFormatter({ startDate, endDate }, column.format),\n type: 'date', // todo: create constants for filter types\n filterParams: { start: startDate, end: endDate },\n transformRowValue: (value) => moment(value, column.dateFormat || DEFAULT_DATE_FORMAT),\n operator: 'range',\n },\n column,\n );\n onOpenMenu(false);\n }}\n />\n </div>\n }\n isOpen={isMenuOpened}\n onOpen={onOpenMenu}\n placement={placement}\n showArrow={false}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<DatePicker2 />}\n onClick={() => (!isMenuOpened ? onOpenMenu(true) : onOpenMenu(false))}\n size=\"s\"\n />\n }\n zIndex={menuProps.zIndex}\n />\n);\n\nSingleRangeSwitcherMenu.propTypes = {\n column: PropTypes.any,\n className: PropTypes.string,\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n placement: PropTypes.string,\n onAddFilter: PropTypes.func,\n dateFormatter: PropTypes.any,\n enableOutsideDays: PropTypes.bool,\n menuProps: PropTypes.any,\n};\n\nexport { SingleRangeSwitcherMenu };\nexport default SingleRangeSwitcherMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADiEjB;AAhEN,mBAA2C;AAC3C,wBAAsB;AACtB,gCAIO;AACP,uBAAsD;AACtD,sBAA4B;AAC5B,uBAAyB;AACzB,qBAAqB;AACrB,oBAAmB;AACnB,uBAAuB;AACvB,+BAAoC;AAEpC,MAAM,wBAAoB,yBAAO,mBAAI;AAAA;AAAA,eAEtB,CAAC,UAAW,MAAM,oBAAoB,MAAM;AAAA,sBACrC,CAAC,UAAW,MAAM,oBAAoB,SAAS;AAAA;AAAA;AAKrE,MAAM,OAAO,IAAI,SAAS;AAAC;AAE3B,MAAM,+BAA+B,CAAC,EAAE,WAAW,MAAM,kBAAkB,MAAM;AAC/E,QAAM,CAAC,WAAW,YAAY,QAAI,uBAAS,EAAE;AAC7C,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAS,EAAE;AAGzC,QAAM,CAAC,qBAAqB,sBAAsB,QAAI,uBAAS,KAAK;AAEpE,QAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AAEpD,8BAAU,MAAM;AACd,UAAM,kBAAc,cAAAA,SAAO,SAAS;AACpC,UAAM,gBAAY,cAAAA,SAAO,OAAO;AAChC,QACE,uBACA,aACA,CAAC,UAAU,SAAS,GAAG,KACvB,WACA,CAAC,QAAQ,SAAS,GAAG,KACrB,UAAU,KAAK,WAAW,KAAK,GAC/B;AACA,eAAS,EAAE,WAAW,aAAa,SAAS,UAAU,CAAC;AAAA,IACzD;AAAA,EAEF,GAAG,CAAC,WAAW,SAAS,mBAAmB,CAAC;AAE5C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAY;AAAA,MACZ,OAAO;AAAA,QACL,iBAAiB;AAAA,QACjB,WAAW;AAAA,QACX,OAAO;AAAA,QACP,SAAS;AAAA,QACT,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,CAAC,MAAM;AAAA,MACb;AAAA,MACA,WAAW,CAAC,MAAM,EAAE,SAAS,WAAW,uBAAuB,IAAI;AAAA,MAEnE;AAAA,qDAAC,uBAAK,QAAO,OAAM,YAAW,UAAS,GAAE,OACvC;AAAA;AAAA,YAAC;AAAA;AAAA,cACC,SAAS;AAAA,cACT,MAAK;AAAA,cACL,OAAM;AAAA,cACN,IAAG;AAAA,cACH,UAAU,MAAM;AACd,+BAAe,CAAC,WAAW;AAC3B,6BAAa,EAAE;AACf,2BAAW,EAAE;AAAA,cACf;AAAA;AAAA,UACF;AAAA,UACA,4CAAC,SAAI,OAAO,EAAE,OAAO,cAAc,GAChC,wBACC;AAAA,YAAC;AAAA;AAAA,cACC,UAAU;AAAA,cACV,kBAAkB,CAAC,WAAW;AAC5B,6BAAa,MAAM;AACnB,uCAAuB,KAAK;AAAA,cAC9B;AAAA,cACA,QAAQ;AAAA,cACR,gBAAgB,CAAC,SAAS;AACxB,2BAAW,IAAI;AACf,uCAAuB,KAAK;AAAA,cAC9B;AAAA,cACA,MAAK;AAAA;AAAA,UACP,IAEA;AAAA,YAAC;AAAA;AAAA,cACC,MAAM;AAAA,cACN,cAAc,CAAC,UAAU;AACvB,uCAAuB,KAAK;AAC5B,6BAAa,KAAK;AAClB,2BAAW,KAAK;AAAA,cAClB;AAAA,cACA,MAAK;AAAA;AAAA,UACP,GAEJ;AAAA,WACF;AAAA,QACA,4CAAC,uBACE,wBACC;AAAA,UAAC;AAAA;AAAA,YACC,UAAU;AAAA,YACV,kBAAkB,CAAC,WAAW;AAC5B,2BAAa,MAAM;AACnB,qCAAuB,IAAI;AAAA,YAC7B;AAAA,YACA,QAAQ;AAAA,YACR,gBAAgB,CAAC,SAAS;AACxB,yBAAW,IAAI;AACf,qCAAuB,IAAI;AAAA,YAC7B;AAAA,YACA,MAAK;AAAA;AAAA,QACP,IAEA;AAAA,UAAC;AAAA;AAAA,YACC,MAAM;AAAA,YACN,cAAc,CAAC,UAAU;AACvB,qCAAuB,IAAI;AAC3B,2BAAa,KAAK;AAClB,yBAAW,KAAK;AAAA,YAClB;AAAA,YACA,MAAK;AAAA;AAAA,QACP,GAEJ;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,6BAA6B,YAAY;AAAA,EACvC,UAAU,kBAAAC,QAAU;AAAA,EACpB,mBAAmB,kBAAAA,QAAU;AAC/B;AAEA,MAAM,kBAAkB,CAAC,EAAE,WAAW,QAAQ,GAAG,SAAS,iDAAwB;AAChF,QAAM,UAAU,UAAU,OAAO,SAAS,KAAK;AAC/C,MAAI;AAAS,WAAO,GAAG,QAAQ,OAAO,MAAM;AAC5C,SAAO,GAAG,UAAU,OAAO,MAAM,OAAO,QAAQ,OAAO,MAAM;AAC/D;AAGA,MAAM,0BAA0B,CAAC;AAAA,EAC/B;AAAA,EACA;AAAA,EACA,eAAe;AAAA,EACf,aAAa;AAAA,EACb,YAAY,iBAAAC,gBAAS;AAAA,EACrB,cAAc;AAAA,EACd,gBAAgB;AAAA,EAChB,oBAAoB;AAAA,EACpB;AACF,MACE;AAAA,EAAC;AAAA;AAAA,IACC,kBACE,4CAAC,SAAI,WACH;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,UAAU,CAAC,EAAE,WAAW,QAAQ,MAAM;AACpC,oBAAU,QAAQ,KAAK;AACvB,kBAAQ,MAAM,KAAK;AACnB;AAAA,YACE;AAAA,cACE,OAAO,OAAO;AAAA,cACd,OAAO,OAAO;AAAA,cACd,OAAO,cAAc,EAAE,WAAW,QAAQ,GAAG,OAAO,MAAM;AAAA,cAC1D,MAAM;AAAA,cACN,cAAc,EAAE,OAAO,WAAW,KAAK,QAAQ;AAAA,cAC/C,mBAAmB,CAAC,cAAU,cAAAF,SAAO,OAAO,OAAO,cAAc,4CAAmB;AAAA,cACpF,UAAU;AAAA,YACZ;AAAA,YACA;AAAA,UACF;AACA,qBAAW,KAAK;AAAA,QAClB;AAAA;AAAA,IACF,GACF;AAAA,IAEF,QAAQ;AAAA,IACR,QAAQ;AAAA,IACR;AAAA,IACA,WAAW;AAAA,IACX,kBACE;AAAA,MAAC;AAAA;AAAA,QACC,YAAW;AAAA,QACX,MAAM,4CAAC,+BAAY;AAAA,QACnB,SAAS,MAAO,CAAC,eAAe,WAAW,IAAI,IAAI,WAAW,KAAK;AAAA,QACnE,MAAK;AAAA;AAAA,IACP;AAAA,IAEF,QAAQ,UAAU;AAAA;AACpB;AAGF,wBAAwB,YAAY;AAAA,EAClC,QAAQ,kBAAAC,QAAU;AAAA,EAClB,WAAW,kBAAAA,QAAU;AAAA,EACrB,cAAc,kBAAAA,QAAU;AAAA,EACxB,YAAY,kBAAAA,QAAU;AAAA,EACtB,WAAW,kBAAAA,QAAU;AAAA,EACrB,aAAa,kBAAAA,QAAU;AAAA,EACvB,eAAe,kBAAAA,QAAU;AAAA,EACzB,mBAAmB,kBAAAA,QAAU;AAAA,EAC7B,WAAW,kBAAAA,QAAU;AACvB;AAGA,IAAO,kCAAQ;",
6
6
  "names": ["moment", "PropTypes", "Position"]
7
7
  }
@@ -38,7 +38,7 @@ var import_ds_button = require("@elliemae/ds-button");
38
38
  var import_ds_popper = require("@elliemae/ds-popper");
39
39
  var import_ds_menu = require("@elliemae/ds-menu");
40
40
  var import_ds_icons = require("@elliemae/ds-icons");
41
- function TextFilterMenu({
41
+ const TextFilterMenu = ({
42
42
  column,
43
43
  menuStyle = {},
44
44
  className,
@@ -52,7 +52,7 @@ function TextFilterMenu({
52
52
  onRemoveFilter = () => null,
53
53
  maxOptions = 10,
54
54
  isMulti = false
55
- }) {
55
+ }) => {
56
56
  const { options, ...otherMenuProps } = menuProps;
57
57
  const generateOption = (option, idx) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_menu.Menu.ItemCheckbox, { label: option.label, name: option.id }, idx);
58
58
  const renderOptions = (arr) => arr.map(generateOption);
@@ -159,7 +159,7 @@ function TextFilterMenu({
159
159
  )
160
160
  }
161
161
  );
162
- }
162
+ };
163
163
  TextFilterMenu.propTypes = {
164
164
  column: import_prop_types.default.any,
165
165
  menuStyle: import_prop_types.default.shape({}),
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/plugins/filterable/components/filterable-menus/TextFilterMenu.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { compact } from 'lodash';\nimport { DSDropdownMenu } from '@elliemae/ds-dropdownmenu';\nimport { DSButton } from '@elliemae/ds-button';\nimport { PopperPositions as Position } from '@elliemae/ds-popper';\nimport { Menu, MenuCombobox } from '@elliemae/ds-menu';\nimport { SearchSmall } from '@elliemae/ds-icons';\n\nfunction TextFilterMenu({\n column,\n menuStyle = {},\n className,\n filters = [],\n isMenuOpened = false,\n onOpenMenu = () => null,\n onClose = () => null,\n placement = Position.BOTTOM_END,\n menuProps = {},\n onAddFilter = () => null,\n onRemoveFilter = () => null,\n maxOptions = 10,\n isMulti = false,\n}) {\n const { options, ...otherMenuProps } = menuProps;\n\n const generateOption = (option, idx) => <Menu.ItemCheckbox key={idx} label={option.label} name={option.id} />;\n\n const renderOptions = (arr) => arr.map(generateOption);\n\n const filtersForColumn = filters.filter((f) => f.group === column.property);\n\n const initialSelectedOptions = filtersForColumn.map((f) => f.value);\n\n const [selected, setSelected] = useState(initialSelectedOptions);\n\n React.useEffect(() => {\n const filtersForColumn2 = filters.filter((f) => f.group === column.property);\n setSelected(filtersForColumn2.map((f) => f.value));\n }, [filters]);\n\n const filterGroup = column.searchBy || column.property;\n\n const onCloseMulti = () => {\n let nextFilters = [...filters];\n const shouldRemove = [];\n // if selected doesn't includes item, then we have to remove the filter\n // but given that we are maintaining state here and updating the grid state\n // is not implemented on useFilterableState, we have to do this in 2 traverses\n // as doing it in one gives trouble when removing and adding at the same time.\n initialSelectedOptions.forEach((item) => {\n if (!selected.includes(item)) {\n nextFilters = nextFilters.filter((filter) => !(filter.group === filterGroup && filter.value === item));\n shouldRemove.push({ group: filterGroup, pill: { value: item } });\n }\n });\n shouldRemove.forEach((removedFilter) => {\n onRemoveFilter({\n ...removedFilter,\n nextFilters,\n });\n });\n selected.forEach((item) => {\n // if initialSelectedOptions includes item, then we do nothing\n if (!initialSelectedOptions.includes(item)) {\n onAddFilter(\n {\n group: filterGroup,\n label: column.label,\n value: item,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n }\n });\n onClose();\n };\n\n return (\n <DSDropdownMenu\n closeMenuOnItemSelection\n contentStyle={menuStyle}\n customMenu={\n isMulti ? (\n <Menu containerProps={{ id: 'text-filter-menu-multiple' }} className=\"dg-multiple-filter\" visible>\n <Menu.SelectionGroup\n active={selected}\n onSelect={(newValues) => {\n setSelected(newValues);\n }}\n focusOnOpen\n multi\n searchable\n >\n {renderOptions(options)}\n </Menu.SelectionGroup>\n </Menu>\n ) : (\n <MenuCombobox\n {...otherMenuProps}\n className={className}\n dropdownFilterOptions={{\n ...column.dropdownFilterOptions,\n maxOptions,\n }}\n maxWidth={column.filterMenuMaxWidth}\n minWidth={column.filterMenuMinWidth}\n onSelectMenuItem={(selectedValue) => {\n if (selectedValue) {\n onAddFilter(\n {\n group: column.searchBy || column.property,\n label: column.label,\n value: selectedValue,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n onOpenMenu(false);\n }\n }}\n />\n )\n }\n isOpen={isMenuOpened}\n maxWidth={column.filterMenuMaxWidth}\n menuProps={menuProps}\n minWidth={column.filterMenuMinWidth}\n onOpenMenu={onOpenMenu}\n onClose={isMulti ? onCloseMulti : onClose}\n options={compact(options)}\n placement={placement}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<SearchSmall />}\n onClick={() => (isMenuOpened ? onOpenMenu(false) : onOpenMenu(true))}\n size=\"s\"\n />\n }\n />\n );\n}\n\nTextFilterMenu.propTypes = {\n column: PropTypes.any,\n menuStyle: PropTypes.shape({}),\n className: PropTypes.string,\n filters: PropTypes.arrayOf(PropTypes.shape({})),\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n onClose: PropTypes.func,\n placement: PropTypes.string,\n menuProps: PropTypes.shape({}),\n onAddFilter: PropTypes.func,\n onRemoveFilter: PropTypes.func,\n maxOptions: PropTypes.number,\n isMulti: PropTypes.bool,\n};\n\nexport { TextFilterMenu };\nexport default TextFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { compact } from 'lodash';\nimport { DSDropdownMenu } from '@elliemae/ds-dropdownmenu';\nimport { DSButton } from '@elliemae/ds-button';\nimport { PopperPositions as Position } from '@elliemae/ds-popper';\nimport { Menu, MenuCombobox } from '@elliemae/ds-menu';\nimport { SearchSmall } from '@elliemae/ds-icons';\n\nconst TextFilterMenu = ({\n column,\n menuStyle = {},\n className,\n filters = [],\n isMenuOpened = false,\n onOpenMenu = () => null,\n onClose = () => null,\n placement = Position.BOTTOM_END,\n menuProps = {},\n onAddFilter = () => null,\n onRemoveFilter = () => null,\n maxOptions = 10,\n isMulti = false,\n}) => {\n const { options, ...otherMenuProps } = menuProps;\n\n const generateOption = (option, idx) => <Menu.ItemCheckbox key={idx} label={option.label} name={option.id} />;\n\n const renderOptions = (arr) => arr.map(generateOption);\n\n const filtersForColumn = filters.filter((f) => f.group === column.property);\n\n const initialSelectedOptions = filtersForColumn.map((f) => f.value);\n\n const [selected, setSelected] = useState(initialSelectedOptions);\n\n React.useEffect(() => {\n const filtersForColumn2 = filters.filter((f) => f.group === column.property);\n setSelected(filtersForColumn2.map((f) => f.value));\n }, [filters]);\n\n const filterGroup = column.searchBy || column.property;\n\n const onCloseMulti = () => {\n let nextFilters = [...filters];\n const shouldRemove = [];\n // if selected doesn't includes item, then we have to remove the filter\n // but given that we are maintaining state here and updating the grid state\n // is not implemented on useFilterableState, we have to do this in 2 traverses\n // as doing it in one gives trouble when removing and adding at the same time.\n initialSelectedOptions.forEach((item) => {\n if (!selected.includes(item)) {\n nextFilters = nextFilters.filter((filter) => !(filter.group === filterGroup && filter.value === item));\n shouldRemove.push({ group: filterGroup, pill: { value: item } });\n }\n });\n shouldRemove.forEach((removedFilter) => {\n onRemoveFilter({\n ...removedFilter,\n nextFilters,\n });\n });\n selected.forEach((item) => {\n // if initialSelectedOptions includes item, then we do nothing\n if (!initialSelectedOptions.includes(item)) {\n onAddFilter(\n {\n group: filterGroup,\n label: column.label,\n value: item,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n }\n });\n onClose();\n };\n\n return (\n <DSDropdownMenu\n closeMenuOnItemSelection\n contentStyle={menuStyle}\n customMenu={\n isMulti ? (\n <Menu containerProps={{ id: 'text-filter-menu-multiple' }} className=\"dg-multiple-filter\" visible>\n <Menu.SelectionGroup\n active={selected}\n onSelect={(newValues) => {\n setSelected(newValues);\n }}\n focusOnOpen\n multi\n searchable\n >\n {renderOptions(options)}\n </Menu.SelectionGroup>\n </Menu>\n ) : (\n <MenuCombobox\n {...otherMenuProps}\n className={className}\n dropdownFilterOptions={{\n ...column.dropdownFilterOptions,\n maxOptions,\n }}\n maxWidth={column.filterMenuMaxWidth}\n minWidth={column.filterMenuMinWidth}\n onSelectMenuItem={(selectedValue) => {\n if (selectedValue) {\n onAddFilter(\n {\n group: column.searchBy || column.property,\n label: column.label,\n value: selectedValue,\n operator: column?.filter?.operator || 'contains',\n transformRowValue: column.valueTransformation,\n },\n column,\n );\n onOpenMenu(false);\n }\n }}\n />\n )\n }\n isOpen={isMenuOpened}\n maxWidth={column.filterMenuMaxWidth}\n menuProps={menuProps}\n minWidth={column.filterMenuMinWidth}\n onOpenMenu={onOpenMenu}\n onClose={isMulti ? onCloseMulti : onClose}\n options={compact(options)}\n placement={placement}\n triggerComponent={\n <DSButton\n buttonType=\"text\"\n icon={<SearchSmall />}\n onClick={() => (isMenuOpened ? onOpenMenu(false) : onOpenMenu(true))}\n size=\"s\"\n />\n }\n />\n );\n};\n\nTextFilterMenu.propTypes = {\n column: PropTypes.any,\n menuStyle: PropTypes.shape({}),\n className: PropTypes.string,\n filters: PropTypes.arrayOf(PropTypes.shape({})),\n isMenuOpened: PropTypes.bool,\n onOpenMenu: PropTypes.func,\n onClose: PropTypes.func,\n placement: PropTypes.string,\n menuProps: PropTypes.shape({}),\n onAddFilter: PropTypes.func,\n onRemoveFilter: PropTypes.func,\n maxOptions: PropTypes.number,\n isMulti: PropTypes.bool,\n};\n\nexport { TextFilterMenu };\nexport default TextFilterMenu;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": "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",
6
6
  "names": ["Position", "React", "PropTypes"]
7
7
  }
@@ -29,18 +29,16 @@ __export(getFilterMenuByType_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(getFilterMenuByType_exports);
31
31
  var React = __toESM(require("react"));
32
- var import_DateRangeFilterMenu = require("./DateRangeFilterMenu");
33
- var import_SingleDateFilterMenu = require("./SingleDateFilterMenu");
34
- var import_SingleRangeSwitcherMenu = require("./SingleRangeSwitcherMenu");
35
- var import_TextFilterMenu = require("./TextFilterMenu");
32
+ var import_DateRangeFilterMenu = require("./DateRangeFilterMenu.js");
33
+ var import_SingleDateFilterMenu = require("./SingleDateFilterMenu.js");
34
+ var import_SingleRangeSwitcherMenu = require("./SingleRangeSwitcherMenu.js");
35
+ var import_TextFilterMenu = require("./TextFilterMenu.js");
36
36
  const ComponentTypes = {
37
37
  "date-range": import_DateRangeFilterMenu.DateRangeFilterMenu,
38
38
  "single-date": import_SingleDateFilterMenu.SingleDateFilterMenu,
39
39
  "date-switcher": import_SingleRangeSwitcherMenu.SingleRangeSwitcherMenu,
40
40
  string: import_TextFilterMenu.TextFilterMenu
41
41
  };
42
- const getFilterMenuByType = (type) => {
43
- return ComponentTypes[type] || ComponentTypes.string;
44
- };
42
+ const getFilterMenuByType = (type) => ComponentTypes[type] || ComponentTypes.string;
45
43
  var getFilterMenuByType_default = getFilterMenuByType;
46
44
  //# sourceMappingURL=getFilterMenuByType.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/plugins/filterable/components/filterable-menus/getFilterMenuByType.tsx", "../../../../../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { DateRangeFilterMenu } from './DateRangeFilterMenu';\nimport { SingleDateFilterMenu } from './SingleDateFilterMenu'; // implement\nimport { SingleRangeSwitcherMenu } from './SingleRangeSwitcherMenu'; // implement\nimport { TextFilterMenu } from './TextFilterMenu';\n\nconst ComponentTypes = {\n 'date-range': DateRangeFilterMenu,\n 'single-date': SingleDateFilterMenu,\n 'date-switcher': SingleRangeSwitcherMenu,\n string: TextFilterMenu,\n};\n\nexport const getFilterMenuByType = (type) => {\n return ComponentTypes[type] || ComponentTypes.string;\n};\n\nexport default getFilterMenuByType;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iCAAoC;AACpC,kCAAqC;AACrC,qCAAwC;AACxC,4BAA+B;AAE/B,MAAM,iBAAiB;AAAA,EACrB,cAAc;AAAA,EACd,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,QAAQ;AACV;AAEO,MAAM,sBAAsB,CAAC,SAAS;AAC3C,SAAO,eAAe,SAAS,eAAe;AAChD;AAEA,IAAO,8BAAQ;",
4
+ "sourcesContent": ["import { DateRangeFilterMenu } from './DateRangeFilterMenu.js';\nimport { SingleDateFilterMenu } from './SingleDateFilterMenu.js'; // implement\nimport { SingleRangeSwitcherMenu } from './SingleRangeSwitcherMenu.js'; // implement\nimport { TextFilterMenu } from './TextFilterMenu.js';\n\nconst ComponentTypes = {\n 'date-range': DateRangeFilterMenu,\n 'single-date': SingleDateFilterMenu,\n 'date-switcher': SingleRangeSwitcherMenu,\n string: TextFilterMenu,\n};\n\nexport const getFilterMenuByType = (type) => ComponentTypes[type] || ComponentTypes.string;\n\nexport default getFilterMenuByType;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,iCAAoC;AACpC,kCAAqC;AACrC,qCAAwC;AACxC,4BAA+B;AAE/B,MAAM,iBAAiB;AAAA,EACrB,cAAc;AAAA,EACd,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,QAAQ;AACV;AAEO,MAAM,sBAAsB,CAAC,SAAS,eAAe,SAAS,eAAe;AAEpF,IAAO,8BAAQ;",
6
6
  "names": []
7
7
  }