@elliemae/ds-datagrids 1.53.4-rc.3 → 1.53.5

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 (57) hide show
  1. package/cjs/DSDataGrid.js +4 -2
  2. package/cjs/DSDataGrid.js.map +1 -1
  3. package/cjs/DataGridImpl.js +4 -2
  4. package/cjs/DataGridImpl.js.map +1 -1
  5. package/cjs/PaginatedDataGrid.js +4 -2
  6. package/cjs/PaginatedDataGrid.js.map +1 -1
  7. package/cjs/index.js +4 -2
  8. package/cjs/index.js.map +1 -1
  9. package/cjs/plugins/filterable/FilterablePlugin.js +5 -3
  10. package/cjs/plugins/filterable/FilterablePlugin.js.map +1 -1
  11. package/cjs/plugins/filterable/addFilterToColumn.js +5 -3
  12. package/cjs/plugins/filterable/addFilterToColumn.js.map +1 -1
  13. package/cjs/plugins/filterable/components/FilterableHeader.js +6 -4
  14. package/cjs/plugins/filterable/components/FilterableHeader.js.map +1 -1
  15. package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +60 -98
  16. package/cjs/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +1 -1
  17. package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +20 -7
  18. package/cjs/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +1 -1
  19. package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +7 -5
  20. package/cjs/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +1 -1
  21. package/cjs/plugins/filterable/filterableFormatter.js +6 -4
  22. package/cjs/plugins/filterable/filterableFormatter.js.map +1 -1
  23. package/cjs/plugins/filterable/index.js +5 -3
  24. package/cjs/plugins/filterable/index.js.map +1 -1
  25. package/cjs/plugins/index.js +4 -2
  26. package/cjs/plugins/index.js.map +1 -1
  27. package/cjs/utilities/getPluginsFromProps.js +4 -2
  28. package/cjs/utilities/getPluginsFromProps.js.map +1 -1
  29. package/esm/DSDataGrid.js +4 -2
  30. package/esm/DSDataGrid.js.map +1 -1
  31. package/esm/DataGridImpl.js +4 -2
  32. package/esm/DataGridImpl.js.map +1 -1
  33. package/esm/PaginatedDataGrid.js +4 -2
  34. package/esm/PaginatedDataGrid.js.map +1 -1
  35. package/esm/index.js +4 -2
  36. package/esm/index.js.map +1 -1
  37. package/esm/plugins/filterable/FilterablePlugin.js +5 -3
  38. package/esm/plugins/filterable/FilterablePlugin.js.map +1 -1
  39. package/esm/plugins/filterable/addFilterToColumn.js +5 -3
  40. package/esm/plugins/filterable/addFilterToColumn.js.map +1 -1
  41. package/esm/plugins/filterable/components/FilterableHeader.js +6 -4
  42. package/esm/plugins/filterable/components/FilterableHeader.js.map +1 -1
  43. package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js +60 -95
  44. package/esm/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js.map +1 -1
  45. package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js +19 -7
  46. package/esm/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js.map +1 -1
  47. package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js +7 -5
  48. package/esm/plugins/filterable/components/filterable-menus/getFilterMenuByType.js.map +1 -1
  49. package/esm/plugins/filterable/filterableFormatter.js +6 -4
  50. package/esm/plugins/filterable/filterableFormatter.js.map +1 -1
  51. package/esm/plugins/filterable/index.js +5 -3
  52. package/esm/plugins/filterable/index.js.map +1 -1
  53. package/esm/plugins/index.js +4 -2
  54. package/esm/plugins/index.js.map +1 -1
  55. package/esm/utilities/getPluginsFromProps.js +4 -2
  56. package/esm/utilities/getPluginsFromProps.js.map +1 -1
  57. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangeFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { DayPickerRangeController } from '@elliemae/ds-date-range-picker';\nimport { DatePickerRangeHeader } from '@elliemae/ds-date-picker';\nimport DSPopper, { PopperPositions as Position } from '@elliemae/ds-basic/Popper';\nimport DatePickerIcon from '@elliemae/ds-icons/DatePicker2';\nimport DSButton from '@elliemae/ds-basic/Button';\nimport moment from 'moment';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport { DEFAULT_DATE_FORMAT } from './defaultDateFormat';\n\nconst START_DATE = 'startDate';\nconst END_DATE = 'endDate';\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, ...otherProps }) => {\n const [focusedInputHeader, setFocusedInputHeader] = useState(START_DATE);\n const [focusedInputPicker, setFocusedInputPicker] = useState(START_DATE);\n const [pickerRange, setPickerRange] = useState({});\n // const [keyHack, setKeyHack] = useState(`ds-data-grid-key-${randomString()}`);\n\n const handleHeaderFocusChange = (inputType) => {\n setFocusedInputHeader(inputType);\n };\n\n const handlePickerFocusChange = () => {\n setFocusedInputPicker(focusedInputPicker === START_DATE ? END_DATE : START_DATE);\n };\n\n const handleDatesChange = (dates) => {\n // setKeyHack(`ds-data-grid-key-${randomString()}`);\n if (dates.endDate) {\n setTimeout(() => {\n onChange({\n startDate: dates.startDate,\n endDate: dates.endDate,\n });\n }, 500);\n }\n setPickerRange({\n startDate: dates.startDate,\n endDate: pickerRange.endDate,\n });\n };\n\n const handlePickerChange = (dates) => {\n if (dates.endDate) {\n setTimeout(() => {\n onChange({\n startDate: dates.startDate,\n endDate: dates.endDate,\n });\n }, 500);\n }\n if (dates.startDate) handleHeaderFocusChange();\n setPickerRange(dates);\n };\n\n const handleStartInputChange = (newDate) => {\n // setKeyHack(`ds-data-grid-key-${randomString()}`);\n setPickerRange({ ...pickerRange, startDate: newDate });\n };\n\n const handleEndInputChange = (newDate) => {\n // setKeyHack(`ds-data-grid-key-${randomString()}`);\n setPickerRange({ ...pickerRange, endDate: newDate });\n };\n\n return (\n <Wrapper data-testid=\"date-range__wrapper\">\n {showHeader && (\n <Header>\n <DatePickerRangeHeader\n autoJumpOnEdit={false}\n focusedInput={focusedInputHeader}\n handleDatesChange={handleDatesChange}\n onEndInputChange={handleEndInputChange}\n onStartInputChange={handleStartInputChange}\n selectedEndDate={pickerRange.endDate}\n selectedStartDate={pickerRange.startDate}\n onFocusChange={handleHeaderFocusChange}\n />\n </Header>\n )}\n <DayPickerRangeController\n {...otherProps}\n // key={keyHack}\n startDate={pickerRange.startDate}\n endDate={pickerRange.endDate}\n enableOutsideDays\n focusedInput={focusedInputPicker}\n hideKeyboardShortcutsPanel\n onDatesChange={handlePickerChange}\n onFocusChange={handlePickerFocusChange}\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={<DatePickerIcon />}\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 default DateRangeFilterMenu;\n"],"names":["START_DATE","END_DATE","blockname","Wrapper","aggregatedClasses","Header","DateRangePickerContainer","onChange","showHeader","otherProps","useState","focusedInputHeader","setFocusedInputHeader","focusedInputPicker","setFocusedInputPicker","pickerRange","setPickerRange","handleHeaderFocusChange","inputType","handlePickerFocusChange","handleDatesChange","dates","endDate","setTimeout","startDate","handlePickerChange","handleStartInputChange","newDate","handleEndInputChange","propTypes","PropTypes","func","bool","formatRangeDate","format","DEFAULT_DATE_FORMAT","sameDay","isSame","DateRangeFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","moment","dateFormat","operator","zIndex","any","string"],"mappings":"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"}
1
+ {"version":3,"file":"DateRangeFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/DateRangeFilterMenu.tsx"],"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-basic/Popper';\nimport DatePickerIcon from '@elliemae/ds-icons/DatePicker2';\nimport DSButton from '@elliemae/ds-basic/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 style={{ width: '262px' }}\n onKeyDown={(e) => e.code === 'Enter' && setLastChangeWasPicker(true)}\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={<DatePickerIcon />}\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 default DateRangeFilterMenu;\n"],"names":["blockname","Wrapper","aggregatedClasses","Header","DateRangePickerContainer","onChange","showHeader","useState","startDate","setStartDate","endDate","setEndDate","lastChangeWasPicker","setLastChangeWasPicker","useEffect","startMoment","moment","endMoment","includes","diff","width","e","code","padding","display","justifyContent","_start","_end","propTypes","PropTypes","func","bool","formatRangeDate","format","DEFAULT_DATE_FORMAT","sameDay","isSame","DateRangeFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","startOf","endOf","group","property","label","value","type","filterParams","start","end","transformRowValue","dateFormat","operator","zIndex","any","string"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import _slicedToArray from '@babel/runtime/helpers/esm/slicedToArray';
2
2
  import React, { useState, useCallback } from 'react';
3
3
  import PropTypes from 'prop-types';
4
- import { DatePickerSingleDate } from '@elliemae/ds-date-picker';
4
+ import Grid from '@elliemae/ds-grid';
5
+ import { DSControlledDateTimePicker } from '@elliemae/ds-controlled-form';
5
6
  import DSPopper, { PopperPositions } from '@elliemae/ds-basic/Popper';
6
7
  import DatePickerIcon from '@elliemae/ds-icons/DatePicker2';
7
8
  import DSButton from '@elliemae/ds-basic/Button';
@@ -21,14 +22,25 @@ var SingleDatePickerContainer = function SingleDatePickerContainer(_ref) {
21
22
  setDate = _useState2[1];
22
23
 
23
24
  var handleDateChange = useCallback(function (data) {
24
- onChange(moment(data));
25
+ if (!data.includes('_')) onChange(moment(data));
25
26
  setDate(data);
26
- }, []);
27
- return /*#__PURE__*/React.createElement(DatePickerSingleDate, {
27
+ }, [onChange]);
28
+ return /*#__PURE__*/React.createElement("div", {
29
+ style: {
30
+ boxShadow: '0 6px 20px 0 rgb(0 0 0 / 24%)'
31
+ }
32
+ }, showHeader && /*#__PURE__*/React.createElement(Grid, {
33
+ p: "xxs"
34
+ }, /*#__PURE__*/React.createElement(DSControlledDateTimePicker, {
28
35
  date: date,
29
- onChange: handleDateChange,
30
- showHeader: showHeader
31
- });
36
+ onDateChange: handleDateChange,
37
+ type: "date-inputs",
38
+ isClearable: true
39
+ })), /*#__PURE__*/React.createElement(DSControlledDateTimePicker, {
40
+ date: date,
41
+ onDateChange: handleDateChange,
42
+ type: "date-picker-controller-only"
43
+ }));
32
44
  };
33
45
 
34
46
  SingleDatePickerContainer.propTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"SingleDateFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.tsx"],"sourcesContent":["import React, { useCallback, useState } from 'react';\nimport PropTypes from 'prop-types';\nimport { DatePickerSingleDate } from '@elliemae/ds-date-picker';\nimport DSPopper, {\n PopperPositions as Position,\n} from '@elliemae/ds-basic/Popper';\nimport DatePickerIcon from '@elliemae/ds-icons/DatePicker2';\nimport DSButton from '@elliemae/ds-basic/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((data) => {\n onChange(moment(data));\n setDate(data);\n }, []);\n\n return (\n <DatePickerSingleDate\n date={date}\n onChange={handleDateChange}\n showHeader={showHeader}\n />\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) =>\n 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={<DatePickerIcon />}\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 default SingleDateFilterMenu;\n"],"names":["SingleDatePickerContainer","onChange","showHeader","useState","date","setDate","handleDateChange","useCallback","data","moment","propTypes","PropTypes","func","bool","formatDate","format","DEFAULT_DATE_FORMAT","SingleDateFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","t","clone","group","property","label","value","dateFormat","type","operator","filterParams","start","startOf","end","endOf","transformRowValue","zIndex","any","string"],"mappings":";;;;;;;;;;AAWA,IAAMA,yBAAyB,GAAG,SAA5BA,yBAA4B,OAA2C;AAAA,2BAAxCC,QAAwC;AAAA,MAAxCA,QAAwC,8BAA7B;AAAA,WAAM,IAAN;AAAA,GAA6B;AAAA,MAAjBC,UAAiB,QAAjBA,UAAiB;;AAC3E,kBAAwBC,QAAQ,EAAhC;AAAA;AAAA,MAAOC,IAAP;AAAA,MAAaC,OAAb;;AAEA,MAAMC,gBAAgB,GAAGC,WAAW,CAAC,UAACC,IAAD,EAAU;AAC7CP,IAAAA,QAAQ,CAACQ,MAAM,CAACD,IAAD,CAAP,CAAR;AACAH,IAAAA,OAAO,CAACG,IAAD,CAAP;AACD,GAHmC,EAGjC,EAHiC,CAApC;AAKA,sBACE,oBAAC,oBAAD;AACE,IAAA,IAAI,EAAEJ,IADR;AAEE,IAAA,QAAQ,EAAEE,gBAFZ;AAGE,IAAA,UAAU,EAAEJ;AAHd,IADF;AAOD,CAfD;;AAiBAF,yBAAyB,CAACU,SAA1B,GAAsC;AACpCT,EAAAA,QAAQ,EAAEU,SAAS,CAACC,IADgB;AAEpCV,EAAAA,UAAU,EAAES,SAAS,CAACE;AAFc,CAAtC;;AAKA,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACV,IAAD;AAAA,MAAOW,MAAP,uEAAgBC,mBAAhB;AAAA,SAAwCZ,IAAI,CAACW,MAAL,CAAYA,MAAZ,CAAxC;AAAA,CAAnB;;AAEA,SAASE,oBAAT,QAUG;AAAA,MATDC,MASC,SATDA,MASC;AAAA,MARDC,SAQC,SARDA,SAQC;AAAA,iCAPDC,YAOC;AAAA,MAPDA,YAOC,mCAPc,KAOd;AAAA,+BANDC,UAMC;AAAA,MANDA,UAMC,iCANY;AAAA,WAAM,IAAN;AAAA,GAMZ;AAAA,8BALDC,SAKC;AAAA,MALDA,SAKC,gCALWC,eAAQ,CAACC,UAKpB;AAAA,gCAJDC,WAIC;AAAA,MAJDA,WAIC,kCAJa;AAAA,WAAM,IAAN;AAAA,GAIb;AAAA,kCAHDC,aAGC;AAAA,MAHDA,aAGC,oCAHeZ,UAGf;AAAA,+BAFDZ,UAEC;AAAA,MAFDA,UAEC,iCAFY,KAEZ;AAAA,MADDyB,SACC,SADDA,SACC;AACD,sBACE,oBAAC,QAAD;AACE,IAAA,gBAAgB,eACd;AAAK,MAAA,SAAS,EAAER,SAAhB;AAA2B,qBAAY;AAAvC,oBACE,oBAAC,yBAAD;AACE,MAAA,aAAa,EAAE,CADjB;AAEE,MAAA,QAAQ,EAAE,kBAACf,IAAD,EAAU;AAClB,YAAMwB,CAAC,GAAGxB,IAAI,CAACyB,KAAL,EAAV;AACAJ,QAAAA,WAAW,CACT;AACEK,UAAAA,KAAK,EAAEZ,MAAM,CAACa,QADhB;AAEEC,UAAAA,KAAK,EAAEd,MAAM,CAACc,KAFhB;AAGEC,UAAAA,KAAK,EAAEP,aAAa,CAACtB,IAAD,EAAOc,MAAM,CAACgB,UAAd,CAHtB;AAIEC,UAAAA,IAAI,EAAE,MAJR;AAKEC,UAAAA,QAAQ,EAAE,OALZ;AAMEC,UAAAA,YAAY,EAAE;AACZC,YAAAA,KAAK,EAAElC,IAAI,CAACmC,OAAL,CAAa,KAAb,CADK;AAEZC,YAAAA,GAAG,EAAEZ,CAAC,CAACa,KAAF,CAAQ,KAAR;AAFO,WANhB;AAUEC,UAAAA,iBAAiB,EAAE,2BAACT,KAAD;AAAA,mBACjBxB,MAAM,CAACwB,KAAD,EAAQf,MAAM,CAACgB,UAAP,IAAqBlB,mBAA7B,CADW;AAAA;AAVrB,SADS,EAcTE,MAdS,CAAX;AAgBAG,QAAAA,UAAU,CAAC,KAAD,CAAV;AACD,OArBH;AAsBE,MAAA,UAAU,EAAEnB;AAtBd,MADF,CAFJ;AA6BE,IAAA,MAAM,EAAEkB,YA7BV;AA8BE,IAAA,MAAM,EAAEC,UA9BV;AA+BE,IAAA,SAAS,EAAEC,SA/Bb;AAgCE,IAAA,SAAS,EAAE,KAhCb;AAiCE,IAAA,gBAAgB,eACd,oBAAC,QAAD;AACE,MAAA,UAAU,EAAC,MADb;AAEE,MAAA,IAAI,eAAE,oBAAC,cAAD,OAFR;AAGE,MAAA,OAAO,EAAE;AAAA,eAAO,CAACF,YAAD,GAAgBC,UAAU,CAAC,IAAD,CAA1B,GAAmCA,UAAU,CAAC,KAAD,CAApD;AAAA,OAHX;AAIE,MAAA,IAAI,EAAC;AAJP,MAlCJ;AAyCE,IAAA,MAAM,EAAEM,SAAS,CAACgB;AAzCpB,IADF;AA6CD;;AAED1B,oBAAoB,CAACP,SAArB,GAAiC;AAC/BQ,EAAAA,MAAM,EAAEP,SAAS,CAACiC,GADa;AAE/BzB,EAAAA,SAAS,EAAER,SAAS,CAACkC,MAFU;AAG/BzB,EAAAA,YAAY,EAAET,SAAS,CAACE,IAHO;AAI/BQ,EAAAA,UAAU,EAAEV,SAAS,CAACC,IAJS;AAK/BU,EAAAA,SAAS,EAAEX,SAAS,CAACkC,MALU;AAM/BpB,EAAAA,WAAW,EAAEd,SAAS,CAACC,IANQ;AAO/Bc,EAAAA,aAAa,EAAEf,SAAS,CAACiC,GAPM;AAQ/B1C,EAAAA,UAAU,EAAES,SAAS,CAACE,IARS;AAS/Bc,EAAAA,SAAS,EAAEhB,SAAS,CAACiC;AATU,CAAjC;;;;"}
1
+ {"version":3,"file":"SingleDateFilterMenu.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/SingleDateFilterMenu.tsx"],"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-basic/Popper';\nimport DatePickerIcon from '@elliemae/ds-icons/DatePicker2';\nimport DSButton from '@elliemae/ds-basic/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={<DatePickerIcon />}\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 default SingleDateFilterMenu;\n"],"names":["SingleDatePickerContainer","onChange","showHeader","useState","date","setDate","handleDateChange","useCallback","data","includes","moment","boxShadow","propTypes","PropTypes","func","bool","formatDate","format","DEFAULT_DATE_FORMAT","SingleDateFilterMenu","column","className","isMenuOpened","onOpenMenu","placement","Position","BOTTOM_END","onAddFilter","dateFormatter","menuProps","t","clone","group","property","label","value","dateFormat","type","operator","filterParams","start","startOf","end","endOf","transformRowValue","zIndex","any","string"],"mappings":"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"}
@@ -2,20 +2,22 @@ import DateRangeFilterMenu from './DateRangeFilterMenu.js';
2
2
  import SingleDateFilterMenu from './SingleDateFilterMenu.js';
3
3
  import SingleRangeSwitcherMenu from './SingleRangeSwitcherMenu.js';
4
4
  import TextFilterMenu from './TextFilterMenu.js';
5
- import '@babel/runtime/helpers/esm/extends';
6
- import '@babel/runtime/helpers/esm/defineProperty';
7
5
  import '@babel/runtime/helpers/esm/slicedToArray';
8
- import '@babel/runtime/helpers/esm/objectWithoutProperties';
9
6
  import 'react';
10
7
  import 'prop-types';
11
- import '@elliemae/ds-date-range-picker';
12
- import '@elliemae/ds-date-picker';
8
+ import '@elliemae/ds-controlled-form';
13
9
  import '@elliemae/ds-basic/Popper';
14
10
  import '@elliemae/ds-icons/DatePicker2';
15
11
  import '@elliemae/ds-basic/Button';
16
12
  import 'moment';
17
13
  import '@elliemae/ds-classnames';
18
14
  import './defaultDateFormat.js';
15
+ import '@elliemae/ds-grid';
16
+ import '@babel/runtime/helpers/esm/extends';
17
+ import '@babel/runtime/helpers/esm/defineProperty';
18
+ import '@babel/runtime/helpers/esm/objectWithoutProperties';
19
+ import '@elliemae/ds-date-range-picker';
20
+ import '@elliemae/ds-date-picker';
19
21
  import '@babel/runtime/helpers/esm/toConsumableArray';
20
22
  import 'lodash';
21
23
  import '@elliemae/ds-dropdownmenu';
@@ -1 +1 @@
1
- {"version":3,"file":"getFilterMenuByType.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/getFilterMenuByType.tsx"],"sourcesContent":["import DateRangeFilterMenu from './DateRangeFilterMenu';\nimport SingleDateFilterMenu from './SingleDateFilterMenu'; // implement\nimport SingleRangeDateSwitcher from './SingleRangeSwitcherMenu'; // implement\nimport TextFilterMenu from './TextFilterMenu';\n\nconst ComponentTypes = {\n 'date-range': DateRangeFilterMenu,\n 'single-date': SingleDateFilterMenu,\n 'date-switcher': SingleRangeDateSwitcher,\n string: TextFilterMenu,\n};\n\nexport default function getFilterMenuByType(type) {\n return ComponentTypes[type] || ComponentTypes.string;\n}\n"],"names":["ComponentTypes","DateRangeFilterMenu","SingleDateFilterMenu","SingleRangeDateSwitcher","string","TextFilterMenu","getFilterMenuByType","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,cAAc,GAAG;AACrB,gBAAcC,mBADO;AAErB,iBAAeC,oBAFM;AAGrB,mBAAiBC,uBAHI;AAIrBC,EAAAA,MAAM,EAAEC;AAJa,CAAvB;AAOe,SAASC,mBAAT,CAA6BC,IAA7B,EAAmC;AAChD,SAAOP,cAAc,CAACO,IAAD,CAAd,IAAwBP,cAAc,CAACI,MAA9C;AACD;;;;"}
1
+ {"version":3,"file":"getFilterMenuByType.js","sources":["../../../../../../src/plugins/filterable/components/filterable-menus/getFilterMenuByType.tsx"],"sourcesContent":["import DateRangeFilterMenu from './DateRangeFilterMenu';\nimport SingleDateFilterMenu from './SingleDateFilterMenu'; // implement\nimport SingleRangeDateSwitcher from './SingleRangeSwitcherMenu'; // implement\nimport TextFilterMenu from './TextFilterMenu';\n\nconst ComponentTypes = {\n 'date-range': DateRangeFilterMenu,\n 'single-date': SingleDateFilterMenu,\n 'date-switcher': SingleRangeDateSwitcher,\n string: TextFilterMenu,\n};\n\nexport default function getFilterMenuByType(type) {\n return ComponentTypes[type] || ComponentTypes.string;\n}\n"],"names":["ComponentTypes","DateRangeFilterMenu","SingleDateFilterMenu","SingleRangeDateSwitcher","string","TextFilterMenu","getFilterMenuByType","type"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,cAAc,GAAG;AACrB,gBAAcC,mBADO;AAErB,iBAAeC,oBAFM;AAGrB,mBAAiBC,uBAHI;AAIrBC,EAAAA,MAAM,EAAEC;AAJa,CAAvB;AAOe,SAASC,mBAAT,CAA6BC,IAA7B,EAAmC;AAChD,SAAOP,cAAc,CAACO,IAAD,CAAd,IAAwBP,cAAc,CAACI,MAA9C;AACD;;;;"}
@@ -10,17 +10,19 @@ import '@elliemae/ds-utilities/hooks/useResizeObserver';
10
10
  import '@elliemae/ds-system';
11
11
  import './components/filterable-menus/getFilterMenuByType.js';
12
12
  import './components/filterable-menus/DateRangeFilterMenu.js';
13
- import '@babel/runtime/helpers/esm/defineProperty';
14
- import '@babel/runtime/helpers/esm/objectWithoutProperties';
15
- import '@elliemae/ds-date-range-picker';
16
- import '@elliemae/ds-date-picker';
13
+ import '@elliemae/ds-controlled-form';
17
14
  import '@elliemae/ds-basic/Popper';
18
15
  import '@elliemae/ds-icons/DatePicker2';
19
16
  import '@elliemae/ds-basic/Button';
20
17
  import 'moment';
21
18
  import './components/filterable-menus/defaultDateFormat.js';
22
19
  import './components/filterable-menus/SingleDateFilterMenu.js';
20
+ import '@elliemae/ds-grid';
23
21
  import './components/filterable-menus/SingleRangeSwitcherMenu.js';
22
+ import '@babel/runtime/helpers/esm/defineProperty';
23
+ import '@babel/runtime/helpers/esm/objectWithoutProperties';
24
+ import '@elliemae/ds-date-range-picker';
25
+ import '@elliemae/ds-date-picker';
24
26
  import './components/filterable-menus/TextFilterMenu.js';
25
27
  import '@babel/runtime/helpers/esm/toConsumableArray';
26
28
  import 'lodash';
@@ -1 +1 @@
1
- {"version":3,"file":"filterableFormatter.js","sources":["../../../../src/plugins/filterable/filterableFormatter.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React from 'react';\nimport FilterableHeader from './components/FilterableHeader';\nimport { getFilterLabels, getFilterLabelsGroup } from './helper';\n\nfunction FilterableFormatter({\n grid,\n onAddFilter,\n onRemoveFilter,\n query,\n filterMenuRef,\n}) {\n return (value, { column }) => {\n const {\n rows,\n composedRows,\n props: { groupedRows, groupedBy, onFilterMenuClose, onFilterMenuOpen },\n state: { filters },\n } = grid.getInstance();\n\n let rowsToUse = composedRows;\n if (column.filter && column.filter.isMulti) {\n rowsToUse = rows;\n }\n\n const filteredLabels =\n groupedRows && !groupedBy\n ? getFilterLabelsGroup(column, rows, query)\n : getFilterLabels(column, rowsToUse.rows || rowsToUse, query);\n\n const columnData = column.filterOptions || filteredLabels;\n return (\n <FilterableHeader\n column={column}\n columnData={columnData}\n filters={filters}\n filterMenuRef={filterMenuRef}\n onAddFilter={onAddFilter}\n onFilterMenuClose={onFilterMenuClose}\n onFilterMenuOpen={onFilterMenuOpen}\n onRemoveFilter={onRemoveFilter}\n isMulti={column.filter && column.filter.isMulti}\n value={value}\n />\n );\n };\n}\n\nexport default FilterableFormatter;\n"],"names":["FilterableFormatter","grid","onAddFilter","onRemoveFilter","query","filterMenuRef","value","column","getInstance","rows","composedRows","props","groupedRows","groupedBy","onFilterMenuClose","onFilterMenuOpen","filters","state","rowsToUse","filter","isMulti","filteredLabels","getFilterLabelsGroup","getFilterLabels","columnData","filterOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAKA,SAASA,mBAAT,OAMG;AAAA,MALDC,IAKC,QALDA,IAKC;AAAA,MAJDC,WAIC,QAJDA,WAIC;AAAA,MAHDC,cAGC,QAHDA,cAGC;AAAA,WAFDC,KAEC;AAAA,UADDC,aACC,QADDA;AAEA,SAAO,UAACC,KAAD,SAAuB;AAAA,QAAbC,MAAa,SAAbA,MAAa;;AAC5B,4BAKIN,IAAI,CAACO,WAAL,EALJ;AAAA,QACEC,IADF,qBACEA,IADF;AAAA,QAEEC,YAFF,qBAEEA,YAFF;AAAA,kDAGEC,KAHF;AAAA,QAGWC,WAHX,yBAGWA,WAHX;AAAA,QAGwBC,SAHxB,yBAGwBA,SAHxB;AAAA,QAGmCC,iBAHnC,yBAGmCA,iBAHnC;AAAA,QAGsDC,gBAHtD,yBAGsDA,gBAHtD;AAAA,QAIWC,OAJX,qBAIEC,KAJF,CAIWD,OAJX;;AAOA,QAAIE,SAAS,GAAGR,YAAhB;;AACA,QAAIH,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAAnC,EAA4C;AAC1CF,MAAAA,SAAS,GAAGT,IAAZ;AACD;;AAED,QAAMY,cAAc,GAClBT,WAAW,IAAI,CAACC,SAAhB,GACIS,oBAAoB,CAACf,MAAD,EAASE,IAAT,CADxB,GAEIc,eAAe,CAAChB,MAAD,EAASW,SAAS,CAACT,IAAV,IAAkBS,SAA3B,CAHrB;AAKA,QAAMM,UAAU,GAAGjB,MAAM,CAACkB,aAAP,IAAwBJ,cAA3C;AACA,wBACE,oBAAC,gBAAD;AACE,MAAA,MAAM,EAAEd,MADV;AAEE,MAAA,UAAU,EAAEiB,UAFd;AAGE,MAAA,OAAO,EAAER,OAHX;AAIE,MAAA,aAAa,EAAEX,aAJjB;AAKE,MAAA,WAAW,EAAEH,WALf;AAME,MAAA,iBAAiB,EAAEY,iBANrB;AAOE,MAAA,gBAAgB,EAAEC,gBAPpB;AAQE,MAAA,cAAc,EAAEZ,cARlB;AASE,MAAA,OAAO,EAAEI,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAT1C;AAUE,MAAA,KAAK,EAAEd;AAVT,MADF;AAcD,GAjCD;AAkCD;;;;"}
1
+ {"version":3,"file":"filterableFormatter.js","sources":["../../../../src/plugins/filterable/filterableFormatter.tsx"],"sourcesContent":["/* eslint-disable react/display-name */\nimport React from 'react';\nimport FilterableHeader from './components/FilterableHeader';\nimport { getFilterLabels, getFilterLabelsGroup } from './helper';\n\nfunction FilterableFormatter({\n grid,\n onAddFilter,\n onRemoveFilter,\n query,\n filterMenuRef,\n}) {\n return (value, { column }) => {\n const {\n rows,\n composedRows,\n props: { groupedRows, groupedBy, onFilterMenuClose, onFilterMenuOpen },\n state: { filters },\n } = grid.getInstance();\n\n let rowsToUse = composedRows;\n if (column.filter && column.filter.isMulti) {\n rowsToUse = rows;\n }\n\n const filteredLabels =\n groupedRows && !groupedBy\n ? getFilterLabelsGroup(column, rows, query)\n : getFilterLabels(column, rowsToUse.rows || rowsToUse, query);\n\n const columnData = column.filterOptions || filteredLabels;\n return (\n <FilterableHeader\n column={column}\n columnData={columnData}\n filters={filters}\n filterMenuRef={filterMenuRef}\n onAddFilter={onAddFilter}\n onFilterMenuClose={onFilterMenuClose}\n onFilterMenuOpen={onFilterMenuOpen}\n onRemoveFilter={onRemoveFilter}\n isMulti={column.filter && column.filter.isMulti}\n value={value}\n />\n );\n };\n}\n\nexport default FilterableFormatter;\n"],"names":["FilterableFormatter","grid","onAddFilter","onRemoveFilter","query","filterMenuRef","value","column","getInstance","rows","composedRows","props","groupedRows","groupedBy","onFilterMenuClose","onFilterMenuOpen","filters","state","rowsToUse","filter","isMulti","filteredLabels","getFilterLabelsGroup","getFilterLabels","columnData","filterOptions"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAKA,SAASA,mBAAT,OAMG;AAAA,MALDC,IAKC,QALDA,IAKC;AAAA,MAJDC,WAIC,QAJDA,WAIC;AAAA,MAHDC,cAGC,QAHDA,cAGC;AAAA,WAFDC,KAEC;AAAA,UADDC,aACC,QADDA;AAEA,SAAO,UAACC,KAAD,SAAuB;AAAA,QAAbC,MAAa,SAAbA,MAAa;;AAC5B,4BAKIN,IAAI,CAACO,WAAL,EALJ;AAAA,QACEC,IADF,qBACEA,IADF;AAAA,QAEEC,YAFF,qBAEEA,YAFF;AAAA,kDAGEC,KAHF;AAAA,QAGWC,WAHX,yBAGWA,WAHX;AAAA,QAGwBC,SAHxB,yBAGwBA,SAHxB;AAAA,QAGmCC,iBAHnC,yBAGmCA,iBAHnC;AAAA,QAGsDC,gBAHtD,yBAGsDA,gBAHtD;AAAA,QAIWC,OAJX,qBAIEC,KAJF,CAIWD,OAJX;;AAOA,QAAIE,SAAS,GAAGR,YAAhB;;AACA,QAAIH,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAAnC,EAA4C;AAC1CF,MAAAA,SAAS,GAAGT,IAAZ;AACD;;AAED,QAAMY,cAAc,GAClBT,WAAW,IAAI,CAACC,SAAhB,GACIS,oBAAoB,CAACf,MAAD,EAASE,IAAT,CADxB,GAEIc,eAAe,CAAChB,MAAD,EAASW,SAAS,CAACT,IAAV,IAAkBS,SAA3B,CAHrB;AAKA,QAAMM,UAAU,GAAGjB,MAAM,CAACkB,aAAP,IAAwBJ,cAA3C;AACA,wBACE,oBAAC,gBAAD;AACE,MAAA,MAAM,EAAEd,MADV;AAEE,MAAA,UAAU,EAAEiB,UAFd;AAGE,MAAA,OAAO,EAAER,OAHX;AAIE,MAAA,aAAa,EAAEX,aAJjB;AAKE,MAAA,WAAW,EAAEH,WALf;AAME,MAAA,iBAAiB,EAAEY,iBANrB;AAOE,MAAA,gBAAgB,EAAEC,gBAPpB;AAQE,MAAA,cAAc,EAAEZ,cARlB;AASE,MAAA,OAAO,EAAEI,MAAM,CAACY,MAAP,IAAiBZ,MAAM,CAACY,MAAP,CAAcC,OAT1C;AAUE,MAAA,KAAK,EAAEd;AAVT,MADF;AAcD,GAjCD;AAkCD;;;;"}
@@ -15,16 +15,18 @@ import '@elliemae/ds-utilities/hooks/useResizeObserver';
15
15
  import '@elliemae/ds-system';
16
16
  import './components/filterable-menus/getFilterMenuByType.js';
17
17
  import './components/filterable-menus/DateRangeFilterMenu.js';
18
- import '@babel/runtime/helpers/esm/objectWithoutProperties';
19
- import '@elliemae/ds-date-range-picker';
20
- import '@elliemae/ds-date-picker';
18
+ import '@elliemae/ds-controlled-form';
21
19
  import '@elliemae/ds-basic/Popper';
22
20
  import '@elliemae/ds-icons/DatePicker2';
23
21
  import '@elliemae/ds-basic/Button';
24
22
  import 'moment';
25
23
  import './components/filterable-menus/defaultDateFormat.js';
26
24
  import './components/filterable-menus/SingleDateFilterMenu.js';
25
+ import '@elliemae/ds-grid';
27
26
  import './components/filterable-menus/SingleRangeSwitcherMenu.js';
27
+ import '@babel/runtime/helpers/esm/objectWithoutProperties';
28
+ import '@elliemae/ds-date-range-picker';
29
+ import '@elliemae/ds-date-picker';
28
30
  import './components/filterable-menus/TextFilterMenu.js';
29
31
  import '@babel/runtime/helpers/esm/toConsumableArray';
30
32
  import 'lodash';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -99,14 +99,16 @@ import './filterable/filterableFormatter.js';
99
99
  import './filterable/components/FilterableHeader.js';
100
100
  import './filterable/components/filterable-menus/getFilterMenuByType.js';
101
101
  import './filterable/components/filterable-menus/DateRangeFilterMenu.js';
102
- import '@elliemae/ds-date-range-picker';
103
- import '@elliemae/ds-date-picker';
102
+ import '@elliemae/ds-controlled-form';
104
103
  import '@elliemae/ds-basic/Popper';
105
104
  import '@elliemae/ds-icons/DatePicker2';
106
105
  import 'moment';
107
106
  import './filterable/components/filterable-menus/defaultDateFormat.js';
108
107
  import './filterable/components/filterable-menus/SingleDateFilterMenu.js';
108
+ import '@elliemae/ds-grid';
109
109
  import './filterable/components/filterable-menus/SingleRangeSwitcherMenu.js';
110
+ import '@elliemae/ds-date-range-picker';
111
+ import '@elliemae/ds-date-picker';
110
112
  import './filterable/components/filterable-menus/TextFilterMenu.js';
111
113
  import 'lodash';
112
114
  import '@elliemae/ds-menu';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -66,14 +66,16 @@ import '@elliemae/ds-utilities/hooks/useResizeObserver';
66
66
  import '@elliemae/ds-system';
67
67
  import '../plugins/filterable/components/filterable-menus/getFilterMenuByType.js';
68
68
  import '../plugins/filterable/components/filterable-menus/DateRangeFilterMenu.js';
69
- import '@elliemae/ds-date-range-picker';
70
- import '@elliemae/ds-date-picker';
69
+ import '@elliemae/ds-controlled-form';
71
70
  import '@elliemae/ds-basic/Popper';
72
71
  import '@elliemae/ds-icons/DatePicker2';
73
72
  import '@elliemae/ds-basic/Button';
74
73
  import '../plugins/filterable/components/filterable-menus/defaultDateFormat.js';
75
74
  import '../plugins/filterable/components/filterable-menus/SingleDateFilterMenu.js';
75
+ import '@elliemae/ds-grid';
76
76
  import '../plugins/filterable/components/filterable-menus/SingleRangeSwitcherMenu.js';
77
+ import '@elliemae/ds-date-range-picker';
78
+ import '@elliemae/ds-date-picker';
77
79
  import '../plugins/filterable/components/filterable-menus/TextFilterMenu.js';
78
80
  import 'lodash';
79
81
  import '@elliemae/ds-dropdownmenu';
@@ -1 +1 @@
1
- {"version":3,"file":"getPluginsFromProps.js","sources":["../../../src/utilities/getPluginsFromProps.tsx"],"sourcesContent":["import { DndRowsPlugin } from '../plugins/row-dnd/DndRowsPlugin';\nimport { DndColumnsPlugin } from '../plugins/column-dnd/DndColumnsPlugin';\nimport { InfiniteScrollPlugin } from '../plugins/infinite-scrolling/InfiniteScrollPlugin';\nimport { EditablePlugin } from '../plugins/editable/EditablePlugin';\nimport { SortablePlugin } from '../plugins/sortable/SortablePlugin';\nimport { SelectablePlugin } from '../plugins/selectable/SelectablePlugin';\nimport { FilterablePlugin } from '../plugins/filterable/FilterablePlugin';\nimport { ToolbarPlugin } from '../plugins/toolbar/ToolbarPlugin';\nimport { PaginationPlugin } from '../plugins/pagination/PaginationPlugin';\nimport { VirtualizationPlugin } from '../plugins/virtualization/VirtualizationPlugin';\nimport { ExpandablePlugin } from '../plugins/expandable-grid/ExpandablePlugin';\nimport { GroupingPlugin } from '../plugins/grouping-grid/GroupingPlugin';\nimport { GroupingByPlugin } from '../plugins/grouping-by/GroupingByPlugin';\n\nconst mapPropToPlugin = {\n dragAndDropColumns: DndColumnsPlugin,\n editable: EditablePlugin,\n selectable: SelectablePlugin,\n sortable: SortablePlugin,\n searchFilters: FilterablePlugin,\n renderToolbar: ToolbarPlugin,\n infiniteScrolling: InfiniteScrollPlugin,\n paginated: PaginationPlugin,\n virtualized: VirtualizationPlugin,\n expandable: ExpandablePlugin,\n groupedBy: GroupingByPlugin,\n groupedRows: GroupingPlugin,\n dragAndDropRows: DndRowsPlugin,\n};\n\nexport default function getPluginsFromProps(props, omit = {}) {\n const plugins = [];\n\n Object.keys(mapPropToPlugin).forEach((key) => {\n if (props[key] && !omit[key]) plugins.push(mapPropToPlugin[key]);\n });\n return plugins;\n}\n"],"names":["mapPropToPlugin","dragAndDropColumns","DndColumnsPlugin","editable","EditablePlugin","selectable","SelectablePlugin","sortable","SortablePlugin","searchFilters","FilterablePlugin","renderToolbar","ToolbarPlugin","infiniteScrolling","InfiniteScrollPlugin","paginated","PaginationPlugin","virtualized","VirtualizationPlugin","expandable","ExpandablePlugin","groupedBy","GroupingByPlugin","groupedRows","GroupingPlugin","dragAndDropRows","DndRowsPlugin","getPluginsFromProps","props","omit","plugins","Object","keys","forEach","key","push"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAMA,eAAe,GAAG;AACtBC,EAAAA,kBAAkB,EAAEC,gBADE;AAEtBC,EAAAA,QAAQ,EAAEC,cAFY;AAGtBC,EAAAA,UAAU,EAAEC,gBAHU;AAItBC,EAAAA,QAAQ,EAAEC,cAJY;AAKtBC,EAAAA,aAAa,EAAEC,gBALO;AAMtBC,EAAAA,aAAa,EAAEC,aANO;AAOtBC,EAAAA,iBAAiB,EAAEC,oBAPG;AAQtBC,EAAAA,SAAS,EAAEC,gBARW;AAStBC,EAAAA,WAAW,EAAEC,oBATS;AAUtBC,EAAAA,UAAU,EAAEC,gBAVU;AAWtBC,EAAAA,SAAS,EAAEC,gBAXW;AAYtBC,EAAAA,WAAW,EAAEC,cAZS;AAatBC,EAAAA,eAAe,EAAEC;AAbK,CAAxB;AAgBe,SAASC,mBAAT,CAA6BC,KAA7B,EAA+C;AAAA,MAAXC,IAAW,uEAAJ,EAAI;AAC5D,MAAMC,OAAO,GAAG,EAAhB;AAEAC,EAAAA,MAAM,CAACC,IAAP,CAAYhC,eAAZ,EAA6BiC,OAA7B,CAAqC,UAACC,GAAD,EAAS;AAC5C,QAAIN,KAAK,CAACM,GAAD,CAAL,IAAc,CAACL,IAAI,CAACK,GAAD,CAAvB,EAA8BJ,OAAO,CAACK,IAAR,CAAanC,eAAe,CAACkC,GAAD,CAA5B;AAC/B,GAFD;AAGA,SAAOJ,OAAP;AACD;;;;"}
1
+ {"version":3,"file":"getPluginsFromProps.js","sources":["../../../src/utilities/getPluginsFromProps.tsx"],"sourcesContent":["import { DndRowsPlugin } from '../plugins/row-dnd/DndRowsPlugin';\nimport { DndColumnsPlugin } from '../plugins/column-dnd/DndColumnsPlugin';\nimport { InfiniteScrollPlugin } from '../plugins/infinite-scrolling/InfiniteScrollPlugin';\nimport { EditablePlugin } from '../plugins/editable/EditablePlugin';\nimport { SortablePlugin } from '../plugins/sortable/SortablePlugin';\nimport { SelectablePlugin } from '../plugins/selectable/SelectablePlugin';\nimport { FilterablePlugin } from '../plugins/filterable/FilterablePlugin';\nimport { ToolbarPlugin } from '../plugins/toolbar/ToolbarPlugin';\nimport { PaginationPlugin } from '../plugins/pagination/PaginationPlugin';\nimport { VirtualizationPlugin } from '../plugins/virtualization/VirtualizationPlugin';\nimport { ExpandablePlugin } from '../plugins/expandable-grid/ExpandablePlugin';\nimport { GroupingPlugin } from '../plugins/grouping-grid/GroupingPlugin';\nimport { GroupingByPlugin } from '../plugins/grouping-by/GroupingByPlugin';\n\nconst mapPropToPlugin = {\n dragAndDropColumns: DndColumnsPlugin,\n editable: EditablePlugin,\n selectable: SelectablePlugin,\n sortable: SortablePlugin,\n searchFilters: FilterablePlugin,\n renderToolbar: ToolbarPlugin,\n infiniteScrolling: InfiniteScrollPlugin,\n paginated: PaginationPlugin,\n virtualized: VirtualizationPlugin,\n expandable: ExpandablePlugin,\n groupedBy: GroupingByPlugin,\n groupedRows: GroupingPlugin,\n dragAndDropRows: DndRowsPlugin,\n};\n\nexport default function getPluginsFromProps(props, omit = {}) {\n const plugins = [];\n\n Object.keys(mapPropToPlugin).forEach((key) => {\n if (props[key] && !omit[key]) plugins.push(mapPropToPlugin[key]);\n });\n return plugins;\n}\n"],"names":["mapPropToPlugin","dragAndDropColumns","DndColumnsPlugin","editable","EditablePlugin","selectable","SelectablePlugin","sortable","SortablePlugin","searchFilters","FilterablePlugin","renderToolbar","ToolbarPlugin","infiniteScrolling","InfiniteScrollPlugin","paginated","PaginationPlugin","virtualized","VirtualizationPlugin","expandable","ExpandablePlugin","groupedBy","GroupingByPlugin","groupedRows","GroupingPlugin","dragAndDropRows","DndRowsPlugin","getPluginsFromProps","props","omit","plugins","Object","keys","forEach","key","push"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcA,IAAMA,eAAe,GAAG;AACtBC,EAAAA,kBAAkB,EAAEC,gBADE;AAEtBC,EAAAA,QAAQ,EAAEC,cAFY;AAGtBC,EAAAA,UAAU,EAAEC,gBAHU;AAItBC,EAAAA,QAAQ,EAAEC,cAJY;AAKtBC,EAAAA,aAAa,EAAEC,gBALO;AAMtBC,EAAAA,aAAa,EAAEC,aANO;AAOtBC,EAAAA,iBAAiB,EAAEC,oBAPG;AAQtBC,EAAAA,SAAS,EAAEC,gBARW;AAStBC,EAAAA,WAAW,EAAEC,oBATS;AAUtBC,EAAAA,UAAU,EAAEC,gBAVU;AAWtBC,EAAAA,SAAS,EAAEC,gBAXW;AAYtBC,EAAAA,WAAW,EAAEC,cAZS;AAatBC,EAAAA,eAAe,EAAEC;AAbK,CAAxB;AAgBe,SAASC,mBAAT,CAA6BC,KAA7B,EAA+C;AAAA,MAAXC,IAAW,uEAAJ,EAAI;AAC5D,MAAMC,OAAO,GAAG,EAAhB;AAEAC,EAAAA,MAAM,CAACC,IAAP,CAAYhC,eAAZ,EAA6BiC,OAA7B,CAAqC,UAACC,GAAD,EAAS;AAC5C,QAAIN,KAAK,CAACM,GAAD,CAAL,IAAc,CAACL,IAAI,CAACK,GAAD,CAAvB,EAA8BJ,OAAO,CAACK,IAAR,CAAanC,eAAe,CAACkC,GAAD,CAA5B;AAC/B,GAFD;AAGA,SAAOJ,OAAP;AACD;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-datagrids",
3
- "version": "1.53.4-rc.3",
3
+ "version": "1.53.5",
4
4
  "license": "MIT",
5
5
  "description": "Ellie Mae - Dim Sum - Data Grids",
6
6
  "main": "cjs/index.js",
@@ -20,14 +20,14 @@
20
20
  "directory": "dist"
21
21
  },
22
22
  "dependencies": {
23
- "@elliemae/ds-basic": "1.53.4-rc.3",
24
- "@elliemae/ds-classnames": "1.53.4-rc.3",
25
- "@elliemae/ds-date-range-picker": "1.53.4-rc.3",
26
- "@elliemae/ds-dropdownmenu": "1.53.4-rc.3",
27
- "@elliemae/ds-filterbar": "1.53.4-rc.3",
28
- "@elliemae/ds-icons": "1.53.4-rc.3",
29
- "@elliemae/ds-shared": "1.53.4-rc.3",
30
- "@elliemae/ds-utilities": "1.53.4-rc.3",
23
+ "@elliemae/ds-basic": "1.53.5",
24
+ "@elliemae/ds-classnames": "1.53.5",
25
+ "@elliemae/ds-date-range-picker": "1.53.5",
26
+ "@elliemae/ds-dropdownmenu": "1.53.5",
27
+ "@elliemae/ds-filterbar": "1.53.5",
28
+ "@elliemae/ds-icons": "1.53.5",
29
+ "@elliemae/ds-shared": "1.53.5",
30
+ "@elliemae/ds-utilities": "1.53.5",
31
31
  "comparejs": "~1.0.3",
32
32
  "defer-render-hoc": "~0.3.0",
33
33
  "memoize-one": "~5.1.1",