@elliemae/ds-date-picker 2.2.0-next.4 → 2.3.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/DSDatePicker.js +219 -221
- package/cjs/DSDatePicker.js.map +7 -0
- package/cjs/components/DSDatePickerImpl.js +128 -208
- package/cjs/components/DSDatePickerImpl.js.map +7 -0
- package/cjs/components/DatePickerController/DatePickerController.js +204 -242
- package/cjs/components/DatePickerController/DatePickerController.js.map +7 -0
- package/cjs/components/DatePickerDay/DatePickerDay.js +48 -23
- package/cjs/components/DatePickerDay/DatePickerDay.js.map +7 -0
- package/cjs/components/DatePickerDropdown.js +74 -54
- package/cjs/components/DatePickerDropdown.js.map +7 -0
- package/cjs/components/DatePickerHeader/DatePickerHeader.js +62 -44
- package/cjs/components/DatePickerHeader/DatePickerHeader.js.map +7 -0
- package/cjs/components/DatePickerNavigation/DatePickerNavigation.js +62 -31
- package/cjs/components/DatePickerNavigation/DatePickerNavigation.js.map +7 -0
- package/cjs/components/DatePickerPicker/DatePickerPicker.js +82 -71
- package/cjs/components/DatePickerPicker/DatePickerPicker.js.map +7 -0
- package/cjs/components/DatePickerRange/DatePickerRange.js +84 -93
- package/cjs/components/DatePickerRange/DatePickerRange.js.map +7 -0
- package/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js +91 -97
- package/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +7 -0
- package/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js +60 -45
- package/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +7 -0
- package/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js +88 -77
- package/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js.map +7 -0
- package/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +69 -48
- package/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +7 -0
- package/cjs/components/index.js +53 -27
- package/cjs/components/index.js.map +7 -0
- package/cjs/defaultPhrases.js +77 -92
- package/cjs/defaultPhrases.js.map +7 -0
- package/cjs/index.js +38 -35
- package/cjs/index.js.map +7 -0
- package/esm/DSDatePicker.js +171 -169
- package/esm/DSDatePicker.js.map +7 -0
- package/esm/components/DSDatePickerImpl.js +88 -189
- package/esm/components/DSDatePickerImpl.js.map +7 -0
- package/esm/components/DatePickerController/DatePickerController.js +141 -198
- package/esm/components/DatePickerController/DatePickerController.js.map +7 -0
- package/esm/components/DatePickerDay/DatePickerDay.js +19 -17
- package/esm/components/DatePickerDay/DatePickerDay.js.map +7 -0
- package/esm/components/DatePickerDropdown.js +45 -46
- package/esm/components/DatePickerDropdown.js.map +7 -0
- package/esm/components/DatePickerHeader/DatePickerHeader.js +31 -35
- package/esm/components/DatePickerHeader/DatePickerHeader.js.map +7 -0
- package/esm/components/DatePickerNavigation/DatePickerNavigation.js +36 -24
- package/esm/components/DatePickerNavigation/DatePickerNavigation.js.map +7 -0
- package/esm/components/DatePickerPicker/DatePickerPicker.js +44 -48
- package/esm/components/DatePickerPicker/DatePickerPicker.js.map +7 -0
- package/esm/components/DatePickerRange/DatePickerRange.js +49 -79
- package/esm/components/DatePickerRange/DatePickerRange.js.map +7 -0
- package/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js +50 -78
- package/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +7 -0
- package/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js +31 -37
- package/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +7 -0
- package/esm/components/DatePickerSingleDate/DatePickerSingleDate.js +56 -66
- package/esm/components/DatePickerSingleDate/DatePickerSingleDate.js.map +7 -0
- package/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js +40 -42
- package/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +7 -0
- package/esm/components/index.js +24 -10
- package/esm/components/index.js.map +7 -0
- package/esm/defaultPhrases.js +48 -80
- package/esm/defaultPhrases.js.map +7 -0
- package/esm/index.js +9 -13
- package/esm/index.js.map +7 -0
- package/package.json +10 -10
- package/types/components/DSDatePickerImpl.d.ts +2 -1
- package/types/components/DatePickerController/DatePickerController.d.ts +1 -1
- package/types/components/DatePickerDay/DatePickerDay.d.ts +1 -0
- package/types/components/DatePickerDropdown.d.ts +1 -0
- package/types/components/DatePickerHeader/DatePickerHeader.d.ts +1 -0
- package/types/components/DatePickerNavigation/DatePickerNavigation.d.ts +4 -3
- package/types/components/DatePickerPicker/DatePickerPicker.d.ts +2 -1
- package/types/components/DatePickerRange/DatePickerRange.d.ts +1 -0
- package/types/components/DatePickerRangeHeader/DatePickerRangeHeader.d.ts +1 -0
- package/types/components/DatePickerSingleDate/DatePickerSingleDate.d.ts +1 -0
- package/types/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.d.ts +1 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../scripts/build/transpile/react-shim.js", "../../../src/components/DatePickerDropdown.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { DSPopper } from '@elliemae/ds-popper';\nimport { DatePickerPicker, PickerPropsTypes } from './DatePickerPicker/DatePickerPicker';\nconst { classNameElement } = convertPropToCssClassName('datepicker-range');\n\nconst noop = () => null;\nfunction DatePickerDropdown({\n disabled = false,\n readOnly,\n onClick = noop,\n isOpen,\n menu,\n zIndex = 1,\n pickerProps,\n pickerRef,\n}) {\n return (\n <DSPopper\n contentComponent={menu}\n isOpen={isOpen}\n modifiers={{\n preventOverflow: {\n enabled: true,\n padding: 0,\n boundariesElement: 'window',\n },\n }}\n showArrow={false}\n triggerComponent={\n <div>\n <DatePickerPicker\n innerRef={pickerRef}\n {...pickerProps}\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={onClick}\n readOnly={readOnly}\n />\n </div>\n }\n zIndex={zIndex}\n />\n );\n}\n\nDatePickerDropdown.propTypes = {\n pickerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n isOpen: PropTypes.bool,\n menu: PropTypes.element,\n zIndex: PropTypes.number,\n pickerProps: PropTypes.shape(PickerPropsTypes),\n};\n\nexport { DatePickerDropdown };\nexport default DatePickerDropdown;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA,MAAM,EAAE,qBAAqB,0BAA0B;AAEvD,MAAM,OAAO,MAAM;AACnB,4BAA4B;AAAA,EAC1B,WAAW;AAAA,EACX;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA,SAAS;AAAA,EACT;AAAA,EACA;AAAA,GACC;AACD,SACE,qCAAC,UAAD;AAAA,IACE,kBAAkB;AAAA,IAClB;AAAA,IACA,WAAW;AAAA,MACT,iBAAiB;AAAA,QACf,SAAS;AAAA,QACT,SAAS;AAAA,QACT,mBAAmB;AAAA;AAAA;AAAA,IAGvB,WAAW;AAAA,IACX,kBACE,qCAAC,OAAD,MACE,qCAAC,kBAAD;AAAA,MACE,UAAU;AAAA,SACN;AAAA,MACJ,WAAW,iBAAiB;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA;AAAA,IAIN;AAAA;AAAA;AAKN,mBAAmB,YAAY;AAAA,EAC7B,WAAW,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,EAAE,SAAS,UAAU;AAAA,EACrF,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA,EACpB,SAAS,UAAU;AAAA,EACnB,QAAQ,UAAU;AAAA,EAClB,MAAM,UAAU;AAAA,EAChB,QAAQ,UAAU;AAAA,EAClB,aAAa,UAAU,MAAM;AAAA;AAI/B,IAAO,6BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,49 +1,45 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import moment from
|
|
5
|
-
import {
|
|
6
|
-
import { aggregatedClasses } from
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
const DatePickerHeader = _ref => {
|
|
15
|
-
let {
|
|
16
|
-
onInputChange = () => null,
|
|
17
|
-
selectedDate,
|
|
18
|
-
updateKeyDate
|
|
19
|
-
} = _ref;
|
|
20
|
-
const [value, setValue] = useState(isFn(selectedDate === null || selectedDate === void 0 ? void 0 : selectedDate.format) ? selectedDate.format(DATE_FORMAT) : '');
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2, { useState, useEffect } from "react";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
import moment from "moment";
|
|
5
|
+
import { DSDateInputV2, DSInputGroup } from "@elliemae/ds-form";
|
|
6
|
+
import { aggregatedClasses } from "@elliemae/ds-classnames";
|
|
7
|
+
const DATE_FORMAT = "MMDDYYYY";
|
|
8
|
+
const blockname = "date-picker-header";
|
|
9
|
+
const Header = aggregatedClasses("div")(blockname);
|
|
10
|
+
const isFn = (variable) => typeof variable === "function";
|
|
11
|
+
const DatePickerHeader = ({ onInputChange = () => null, selectedDate, updateKeyDate }) => {
|
|
12
|
+
const [value, setValue] = useState(isFn(selectedDate?.format) ? selectedDate.format(DATE_FORMAT) : "");
|
|
21
13
|
useEffect(() => {
|
|
22
|
-
if (isFn(selectedDate
|
|
23
|
-
setValue(selectedDate
|
|
14
|
+
if (isFn(selectedDate?.format)) {
|
|
15
|
+
setValue(selectedDate?.format(DATE_FORMAT));
|
|
24
16
|
}
|
|
25
17
|
}, [selectedDate]);
|
|
26
|
-
|
|
27
|
-
const handleOnChange = newDate => {
|
|
18
|
+
const handleOnChange = (newDate) => {
|
|
28
19
|
setValue(newDate);
|
|
29
20
|
};
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (e.key === 'Enter' && value.length === DATE_FORMAT.length) {
|
|
21
|
+
const handleOnKeyDown = (e) => {
|
|
22
|
+
if (e.key === "Enter" && value.length === DATE_FORMAT.length) {
|
|
33
23
|
const momentValue = moment(value, DATE_FORMAT);
|
|
34
24
|
onInputChange(momentValue);
|
|
35
25
|
updateKeyDate(momentValue);
|
|
36
26
|
}
|
|
37
27
|
};
|
|
38
|
-
|
|
39
|
-
return /*#__PURE__*/_jsx(Header, {}, void 0, /*#__PURE__*/_jsx(DSInputGroup, {}, void 0, /*#__PURE__*/_jsx(DSDateInputV2, {
|
|
28
|
+
return /* @__PURE__ */ React2.createElement(Header, null, /* @__PURE__ */ React2.createElement(DSInputGroup, null, /* @__PURE__ */ React2.createElement(DSDateInputV2, {
|
|
40
29
|
onChange: handleOnChange,
|
|
41
30
|
onKeyDown: handleOnKeyDown,
|
|
42
|
-
value
|
|
43
|
-
containerProps: {
|
|
44
|
-
'data-testid': 'start-date'
|
|
45
|
-
}
|
|
31
|
+
value,
|
|
32
|
+
containerProps: { "data-testid": "start-date" }
|
|
46
33
|
})));
|
|
47
34
|
};
|
|
48
|
-
|
|
49
|
-
|
|
35
|
+
DatePickerHeader.propTypes = {
|
|
36
|
+
onInputChange: PropTypes.func,
|
|
37
|
+
selectedDate: PropTypes.any,
|
|
38
|
+
updateKeyDate: PropTypes.any
|
|
39
|
+
};
|
|
40
|
+
var DatePickerHeader_default = DatePickerHeader;
|
|
41
|
+
export {
|
|
42
|
+
DatePickerHeader,
|
|
43
|
+
DatePickerHeader_default as default
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=DatePickerHeader.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/DatePickerHeader/DatePickerHeader.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-console */\nimport React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { DSDateInputV2, DSInputGroup } from '@elliemae/ds-form';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst DATE_FORMAT = 'MMDDYYYY';\nconst blockname = 'date-picker-header';\nconst Header = aggregatedClasses('div')(blockname);\n\nconst isFn = (variable) => typeof variable === 'function';\n\nconst DatePickerHeader = ({ onInputChange = () => null, selectedDate, updateKeyDate }) => {\n const [value, setValue] = useState(isFn(selectedDate?.format) ? selectedDate.format(DATE_FORMAT) : '');\n\n useEffect(() => {\n if (isFn(selectedDate?.format)) {\n setValue(selectedDate?.format(DATE_FORMAT));\n }\n }, [selectedDate]);\n\n const handleOnChange = (newDate) => {\n setValue(newDate);\n };\n\n const handleOnKeyDown = (e) => {\n if (e.key === 'Enter' && value.length === DATE_FORMAT.length) {\n const momentValue = moment(value, DATE_FORMAT);\n onInputChange(momentValue);\n updateKeyDate(momentValue);\n }\n };\n\n return (\n <Header>\n <DSInputGroup>\n <DSDateInputV2\n onChange={handleOnChange}\n onKeyDown={handleOnKeyDown}\n value={value}\n containerProps={{ 'data-testid': 'start-date' }}\n />\n </DSInputGroup>\n </Header>\n );\n};\n\nDatePickerHeader.propTypes = {\n onInputChange: PropTypes.func,\n selectedDate: PropTypes.any,\n updateKeyDate: PropTypes.any,\n};\n\nexport { DatePickerHeader };\nexport default DatePickerHeader;\n"],
|
|
5
|
+
"mappings": "AAAA;ACCA;AACA;AACA;AACA;AACA;AAEA,MAAM,cAAc;AACpB,MAAM,YAAY;AAClB,MAAM,SAAS,kBAAkB,OAAO;AAExC,MAAM,OAAO,CAAC,aAAa,OAAO,aAAa;AAE/C,MAAM,mBAAmB,CAAC,EAAE,gBAAgB,MAAM,MAAM,cAAc,oBAAoB;AACxF,QAAM,CAAC,OAAO,YAAY,SAAS,KAAK,cAAc,UAAU,aAAa,OAAO,eAAe;AAEnG,YAAU,MAAM;AACd,QAAI,KAAK,cAAc,SAAS;AAC9B,eAAS,cAAc,OAAO;AAAA;AAAA,KAE/B,CAAC;AAEJ,QAAM,iBAAiB,CAAC,YAAY;AAClC,aAAS;AAAA;AAGX,QAAM,kBAAkB,CAAC,MAAM;AAC7B,QAAI,EAAE,QAAQ,WAAW,MAAM,WAAW,YAAY,QAAQ;AAC5D,YAAM,cAAc,OAAO,OAAO;AAClC,oBAAc;AACd,oBAAc;AAAA;AAAA;AAIlB,SACE,qCAAC,QAAD,MACE,qCAAC,cAAD,MACE,qCAAC,eAAD;AAAA,IACE,UAAU;AAAA,IACV,WAAW;AAAA,IACX;AAAA,IACA,gBAAgB,EAAE,eAAe;AAAA;AAAA;AAO3C,iBAAiB,YAAY;AAAA,EAC3B,eAAe,UAAU;AAAA,EACzB,cAAc,UAAU;AAAA,EACxB,eAAe,UAAU;AAAA;AAI3B,IAAO,2BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,25 +1,37 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
import { ChevronRight } from "@elliemae/ds-icons";
|
|
5
|
+
import { DSIconColors, DSIconSizes } from "@elliemae/ds-icon";
|
|
6
|
+
import {
|
|
7
|
+
iconSizes,
|
|
8
|
+
iconColors
|
|
9
|
+
} from "@elliemae/ds-shared/prop-types";
|
|
10
|
+
const Navigation = ({
|
|
11
|
+
className = "date-picker-navigation",
|
|
12
|
+
icon: Icon = ChevronRight,
|
|
13
|
+
color = DSIconColors.NEUTRAL,
|
|
14
|
+
size = DSIconSizes.S,
|
|
15
|
+
innerRef
|
|
16
|
+
}) => /* @__PURE__ */ React2.createElement("div", {
|
|
17
|
+
tabIndex: 0,
|
|
18
|
+
"data-testid": "date-picker-nav"
|
|
19
|
+
}, /* @__PURE__ */ React2.createElement(Icon, {
|
|
20
|
+
className,
|
|
21
|
+
color,
|
|
22
|
+
innerRef,
|
|
23
|
+
size
|
|
24
|
+
}));
|
|
25
|
+
Navigation.propTypes = {
|
|
26
|
+
className: "date-picker-navigation",
|
|
27
|
+
icon: PropTypes.element,
|
|
28
|
+
color: PropTypes.oneOf(iconColors),
|
|
29
|
+
size: PropTypes.oneOf(iconSizes),
|
|
30
|
+
innerRef: PropTypes.any
|
|
23
31
|
};
|
|
24
|
-
|
|
25
|
-
export {
|
|
32
|
+
var DatePickerNavigation_default = Navigation;
|
|
33
|
+
export {
|
|
34
|
+
Navigation as DatePickerNavigation,
|
|
35
|
+
DatePickerNavigation_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=DatePickerNavigation.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/DatePickerNavigation/DatePickerNavigation.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ChevronRight } from '@elliemae/ds-icons';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport {\n iconSizes,\n iconColors,\n} from '@elliemae/ds-shared/prop-types';\n\nconst Navigation = ({\n className = 'date-picker-navigation',\n icon: Icon = ChevronRight,\n color = DSIconColors.NEUTRAL,\n size = DSIconSizes.S,\n innerRef,\n}) => (\n <div tabIndex={0} data-testid=\"date-picker-nav\">\n <Icon className={className} color={color} innerRef={innerRef} size={size} />\n </div>\n);\nNavigation.propTypes = {\n className: 'date-picker-navigation',\n icon: PropTypes.element,\n color: PropTypes.oneOf(iconColors),\n size: PropTypes.oneOf(iconSizes),\n innerRef: PropTypes.any,\n};\n\nexport { Navigation as DatePickerNavigation };\nexport default Navigation;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAKA,MAAM,aAAa,CAAC;AAAA,EAClB,YAAY;AAAA,EACZ,MAAM,OAAO;AAAA,EACb,QAAQ,aAAa;AAAA,EACrB,OAAO,YAAY;AAAA,EACnB;AAAA,MAEA,qCAAC,OAAD;AAAA,EAAK,UAAU;AAAA,EAAG,eAAY;AAAA,GAC5B,qCAAC,MAAD;AAAA,EAAM;AAAA,EAAsB;AAAA,EAAc;AAAA,EAAoB;AAAA;AAGlE,WAAW,YAAY;AAAA,EACrB,WAAW;AAAA,EACX,MAAM,UAAU;AAAA,EAChB,OAAO,UAAU,MAAM;AAAA,EACvB,MAAM,UAAU,MAAM;AAAA,EACtB,UAAU,UAAU;AAAA;AAItB,IAAO,+BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,50 +1,39 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
icon: icon,
|
|
36
|
-
onBlur: onBlur,
|
|
37
|
-
onClick: onClick,
|
|
38
|
-
readOnly: readOnly,
|
|
39
|
-
size: size,
|
|
40
|
-
tabIndex: tabIndex,
|
|
41
|
-
"data-testid": "btn-date-picker"
|
|
42
|
-
});
|
|
43
|
-
};
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2 from "react";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
import { DSIconColors, DSIconSizes } from "@elliemae/ds-icon";
|
|
5
|
+
import { DatePicker } from "@elliemae/ds-icons";
|
|
6
|
+
import { DSButton, buttonTypes } from "@elliemae/ds-button";
|
|
7
|
+
import { iconSizes } from "@elliemae/ds-shared/prop-types";
|
|
8
|
+
const Picker = ({
|
|
9
|
+
className = "date-picker-icon",
|
|
10
|
+
disabled = false,
|
|
11
|
+
icon = /* @__PURE__ */ React2.createElement(DatePicker, null),
|
|
12
|
+
size = DSIconSizes.M,
|
|
13
|
+
buttonActionType = "secondary",
|
|
14
|
+
onClick = () => null,
|
|
15
|
+
onBlur = () => null,
|
|
16
|
+
readOnly = false,
|
|
17
|
+
tabIndex = 0,
|
|
18
|
+
innerRef,
|
|
19
|
+
...rest
|
|
20
|
+
}) => /* @__PURE__ */ React2.createElement(DSButton, {
|
|
21
|
+
innerRef,
|
|
22
|
+
"aria-label": rest["aria-label"] || "Date Picker Button",
|
|
23
|
+
buttonType: buttonActionType,
|
|
24
|
+
className,
|
|
25
|
+
color: !disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL,
|
|
26
|
+
disabled,
|
|
27
|
+
icon,
|
|
28
|
+
onBlur,
|
|
29
|
+
onClick,
|
|
30
|
+
readOnly,
|
|
31
|
+
size,
|
|
32
|
+
tabIndex,
|
|
33
|
+
"data-testid": "btn-date-picker"
|
|
34
|
+
});
|
|
44
35
|
const PickerPropsTypes = {
|
|
45
|
-
innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
|
|
46
|
-
current: PropTypes.any
|
|
47
|
-
})]),
|
|
36
|
+
innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),
|
|
48
37
|
className: PropTypes.string,
|
|
49
38
|
disabled: PropTypes.bool,
|
|
50
39
|
icon: PropTypes.element,
|
|
@@ -56,5 +45,12 @@ const PickerPropsTypes = {
|
|
|
56
45
|
readOnly: PropTypes.bool,
|
|
57
46
|
tabIndex: PropTypes.number
|
|
58
47
|
};
|
|
59
|
-
|
|
60
|
-
|
|
48
|
+
Picker.propTypes = PickerPropsTypes;
|
|
49
|
+
var DatePickerPicker_default = Picker;
|
|
50
|
+
export {
|
|
51
|
+
Picker as DatePickerPicker,
|
|
52
|
+
Picker,
|
|
53
|
+
PickerPropsTypes,
|
|
54
|
+
DatePickerPicker_default as default
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=DatePickerPicker.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/DatePickerPicker/DatePickerPicker.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import React from 'react';\nimport PropTypes from 'prop-types';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport { DatePicker } from '@elliemae/ds-icons';\nimport { DSButton, buttonTypes } from '@elliemae/ds-button';\nimport { iconSizes } from '@elliemae/ds-shared/prop-types';\n\nexport const Picker = ({\n className = 'date-picker-icon',\n disabled = false,\n icon = <DatePicker />,\n size = DSIconSizes.M,\n buttonActionType = 'secondary',\n onClick = () => null,\n onBlur = () => null,\n readOnly = false,\n tabIndex = 0,\n innerRef,\n ...rest\n}) => (\n <DSButton\n innerRef={innerRef}\n aria-label={rest['aria-label'] || 'Date Picker Button'}\n buttonType={buttonActionType}\n className={className}\n color={!disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL}\n disabled={disabled}\n icon={icon}\n onBlur={onBlur}\n onClick={onClick}\n readOnly={readOnly}\n size={size}\n tabIndex={tabIndex}\n data-testid=\"btn-date-picker\"\n />\n);\n\nexport const PickerPropsTypes = {\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n className: PropTypes.string,\n disabled: PropTypes.bool,\n icon: PropTypes.element,\n size: PropTypes.oneOf(iconSizes),\n buttonActionType: PropTypes.oneOf(buttonTypes),\n onClick: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n readOnly: PropTypes.bool,\n tabIndex: PropTypes.number,\n};\n\nPicker.propTypes = PickerPropsTypes;\n\nexport { Picker as DatePickerPicker };\nexport default Picker;\n"],
|
|
5
|
+
"mappings": "AAAA;ACAA;AACA;AACA;AACA;AACA;AACA;AAEO,MAAM,SAAS,CAAC;AAAA,EACrB,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,OAAO,qCAAC,YAAD;AAAA,EACP,OAAO,YAAY;AAAA,EACnB,mBAAmB;AAAA,EACnB,UAAU,MAAM;AAAA,EAChB,SAAS,MAAM;AAAA,EACf,WAAW;AAAA,EACX,WAAW;AAAA,EACX;AAAA,KACG;AAAA,MAEH,qCAAC,UAAD;AAAA,EACE;AAAA,EACA,cAAY,KAAK,iBAAiB;AAAA,EAClC,YAAY;AAAA,EACZ;AAAA,EACA,OAAO,CAAC,WAAW,aAAa,UAAU,aAAa;AAAA,EACvD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,eAAY;AAAA;AAIT,MAAM,mBAAmB;AAAA,EAC9B,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,EAAE,SAAS,UAAU;AAAA,EACpF,WAAW,UAAU;AAAA,EACrB,UAAU,UAAU;AAAA,EACpB,MAAM,UAAU;AAAA,EAChB,MAAM,UAAU,MAAM;AAAA,EACtB,kBAAkB,UAAU,MAAM;AAAA,EAClC,SAAS,UAAU;AAAA,EACnB,SAAS,UAAU;AAAA,EACnB,QAAQ,UAAU;AAAA,EAClB,UAAU,UAAU;AAAA,EACpB,UAAU,UAAU;AAAA;AAGtB,OAAO,YAAY;AAGnB,IAAO,2BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,111 +1,81 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
import DatePickerRangeHeader from '../DatePickerRangeHeader/DatePickerRangeHeader.js';
|
|
17
|
-
import { jsx } from 'react/jsx-runtime';
|
|
18
|
-
|
|
19
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
20
|
-
|
|
21
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
|
-
const blockname = 'date-range';
|
|
23
|
-
const Wrapper = aggregatedClasses('div')(blockname, 'wrapper');
|
|
24
|
-
const {
|
|
25
|
-
classNameElement,
|
|
26
|
-
classNameBlock
|
|
27
|
-
} = convertPropToCssClassName('datepicker');
|
|
28
|
-
const START_DATE = 'startDate';
|
|
29
|
-
const END_DATE = 'endDate';
|
|
30
|
-
|
|
31
|
-
const DatePickerRangeDate = _ref => {
|
|
32
|
-
let {
|
|
33
|
-
dateStart,
|
|
34
|
-
dateEnd,
|
|
35
|
-
displayFormatDay = 'D',
|
|
36
|
-
showHeader = true,
|
|
37
|
-
otherProps
|
|
38
|
-
} = _ref;
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import React2, { useState, useRef } from "react";
|
|
3
|
+
import { DayPickerRangeController } from "react-dates";
|
|
4
|
+
import moment from "moment";
|
|
5
|
+
import { aggregatedClasses, convertPropToCssClassName } from "@elliemae/ds-classnames";
|
|
6
|
+
import { ChevronLeft } from "@elliemae/ds-icons";
|
|
7
|
+
import { DatePickerDay } from "../DatePickerDay/DatePickerDay";
|
|
8
|
+
import { DatePickerNavigation } from "../DatePickerNavigation/DatePickerNavigation";
|
|
9
|
+
import { DatePickerRangeHeader } from "../DatePickerRangeHeader/DatePickerRangeHeader";
|
|
10
|
+
const blockname = "date-range";
|
|
11
|
+
const Wrapper = aggregatedClasses("div")(blockname, "wrapper");
|
|
12
|
+
const { classNameElement, classNameBlock } = convertPropToCssClassName("datepicker");
|
|
13
|
+
const START_DATE = "startDate";
|
|
14
|
+
const END_DATE = "endDate";
|
|
15
|
+
const DatePickerRangeDate = ({ dateStart, dateEnd, displayFormatDay = "D", showHeader = true, otherProps }) => {
|
|
39
16
|
const [selectedDateStart, setSelectedDateStart] = useState(dateStart);
|
|
40
17
|
const [selectedDateEnd, setSelectedDateEnd] = useState(dateEnd);
|
|
41
18
|
const [focusedInput, setFocusedInput] = useState(START_DATE);
|
|
42
19
|
const datePickerRef = useRef();
|
|
43
|
-
|
|
44
20
|
const handleFocusChange = () => {
|
|
45
21
|
setFocusedInput(focusedInput === START_DATE ? END_DATE : START_DATE);
|
|
46
22
|
};
|
|
47
|
-
|
|
48
|
-
const handleDatesChange = _ref2 => {
|
|
49
|
-
let {
|
|
50
|
-
startDate,
|
|
51
|
-
endDate
|
|
52
|
-
} = _ref2;
|
|
23
|
+
const handleDatesChange = ({ startDate, endDate }) => {
|
|
53
24
|
setSelectedDateStart(startDate);
|
|
54
25
|
setSelectedDateEnd(endDate);
|
|
55
26
|
};
|
|
56
|
-
|
|
57
|
-
const handleStartInputChange = newDate => {
|
|
27
|
+
const handleStartInputChange = (newDate) => {
|
|
58
28
|
setSelectedDateStart(newDate);
|
|
59
29
|
};
|
|
60
|
-
|
|
61
|
-
const handleEndInputChange = newDate => {
|
|
30
|
+
const handleEndInputChange = (newDate) => {
|
|
62
31
|
setSelectedDateEnd(newDate);
|
|
63
32
|
};
|
|
64
|
-
|
|
65
33
|
const getSafeDateStartValue = () => {
|
|
66
34
|
if (selectedDateStart) {
|
|
67
35
|
return moment(selectedDateStart);
|
|
68
36
|
}
|
|
69
37
|
};
|
|
70
|
-
|
|
71
38
|
const getSafeDateEndValue = () => {
|
|
72
39
|
if (selectedDateEnd) {
|
|
73
40
|
return moment(selectedDateEnd);
|
|
74
41
|
}
|
|
75
42
|
};
|
|
76
|
-
|
|
77
43
|
const safeStartDate = getSafeDateStartValue();
|
|
78
44
|
const safeEndDate = getSafeDateEndValue();
|
|
79
|
-
return
|
|
45
|
+
return /* @__PURE__ */ React2.createElement(Wrapper, null, showHeader && /* @__PURE__ */ React2.createElement(DatePickerRangeHeader, {
|
|
80
46
|
onEndInputChange: handleEndInputChange,
|
|
81
47
|
onStartInputChange: handleStartInputChange,
|
|
82
48
|
selectedEndDate: safeEndDate,
|
|
83
49
|
selectedStartDate: safeStartDate
|
|
84
|
-
}),
|
|
50
|
+
}), /* @__PURE__ */ React2.createElement("div", {
|
|
85
51
|
ref: datePickerRef,
|
|
86
|
-
className: classNameBlock(
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
}));
|
|
52
|
+
className: classNameBlock("wrapper-day-picker-single-date-controller")
|
|
53
|
+
}, /* @__PURE__ */ React2.createElement(DayPickerRangeController, {
|
|
54
|
+
...otherProps,
|
|
55
|
+
enableOutsideDays: true,
|
|
56
|
+
endDate: safeEndDate,
|
|
57
|
+
focused: true,
|
|
58
|
+
focusedInput,
|
|
59
|
+
hideKeyboardShortcutsPanel: true,
|
|
60
|
+
navNext: /* @__PURE__ */ React2.createElement(DatePickerNavigation, {
|
|
61
|
+
className: classNameElement("navigation-next")
|
|
62
|
+
}),
|
|
63
|
+
navPrev: /* @__PURE__ */ React2.createElement(DatePickerNavigation, {
|
|
64
|
+
className: classNameElement("navigation-prev"),
|
|
65
|
+
icon: ChevronLeft
|
|
66
|
+
}),
|
|
67
|
+
onDatesChange: handleDatesChange,
|
|
68
|
+
onFocusChange: handleFocusChange,
|
|
69
|
+
renderDayContents: (date) => /* @__PURE__ */ React2.createElement(DatePickerDay, {
|
|
70
|
+
className: classNameElement("day-contents"),
|
|
71
|
+
date: date.format(displayFormatDay)
|
|
72
|
+
}),
|
|
73
|
+
startDate: safeStartDate
|
|
74
|
+
})));
|
|
109
75
|
};
|
|
110
|
-
|
|
111
|
-
export {
|
|
76
|
+
var DatePickerRange_default = DatePickerRangeDate;
|
|
77
|
+
export {
|
|
78
|
+
DatePickerRangeDate,
|
|
79
|
+
DatePickerRange_default as default
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=DatePickerRange.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../../../scripts/build/transpile/react-shim.js", "../../../../src/components/DatePickerRange/DatePickerRange.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable react/prop-types */\n/* eslint-disable consistent-return */\nimport React, { useState, useRef } from 'react';\nimport { DayPickerRangeController } from 'react-dates';\nimport moment from 'moment';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport { DatePickerDay } from '../DatePickerDay/DatePickerDay';\nimport { DatePickerNavigation } from '../DatePickerNavigation/DatePickerNavigation';\nimport { DatePickerRangeHeader } from '../DatePickerRangeHeader/DatePickerRangeHeader';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nconst START_DATE = 'startDate';\nconst END_DATE = 'endDate';\n\nconst DatePickerRangeDate = ({ dateStart, dateEnd, displayFormatDay = 'D', showHeader = true, otherProps }) => {\n const [selectedDateStart, setSelectedDateStart] = useState(dateStart);\n const [selectedDateEnd, setSelectedDateEnd] = useState(dateEnd);\n const [focusedInput, setFocusedInput] = useState(START_DATE);\n const datePickerRef = useRef();\n\n const handleFocusChange = () => {\n setFocusedInput(focusedInput === START_DATE ? END_DATE : START_DATE);\n };\n\n const handleDatesChange = ({ startDate, endDate }) => {\n setSelectedDateStart(startDate);\n setSelectedDateEnd(endDate);\n };\n\n const handleStartInputChange = (newDate) => {\n setSelectedDateStart(newDate);\n };\n\n const handleEndInputChange = (newDate) => {\n setSelectedDateEnd(newDate);\n };\n\n const getSafeDateStartValue = () => {\n if (selectedDateStart) {\n return moment(selectedDateStart);\n }\n };\n\n const getSafeDateEndValue = () => {\n if (selectedDateEnd) {\n return moment(selectedDateEnd);\n }\n };\n\n const safeStartDate = getSafeDateStartValue();\n const safeEndDate = getSafeDateEndValue();\n\n return (\n <Wrapper>\n {showHeader && (\n <DatePickerRangeHeader\n onEndInputChange={handleEndInputChange}\n onStartInputChange={handleStartInputChange}\n selectedEndDate={safeEndDate}\n selectedStartDate={safeStartDate}\n />\n )}\n <div ref={datePickerRef} className={classNameBlock('wrapper-day-picker-single-date-controller')}>\n <DayPickerRangeController\n {...otherProps}\n enableOutsideDays\n endDate={safeEndDate}\n focused\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={<DatePickerNavigation className={classNameElement('navigation-prev')} icon={ChevronLeft} />}\n onDatesChange={handleDatesChange}\n onFocusChange={handleFocusChange}\n renderDayContents={(date) => (\n <DatePickerDay className={classNameElement('day-contents')} date={date.format(displayFormatDay)} />\n )}\n startDate={safeStartDate}\n />\n </div>\n </Wrapper>\n );\n};\n\nexport { DatePickerRangeDate };\nexport default DatePickerRangeDate;\n"],
|
|
5
|
+
"mappings": "AAAA;ACEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA,MAAM,YAAY;AAClB,MAAM,UAAU,kBAAkB,OAAO,WAAW;AAEpD,MAAM,EAAE,kBAAkB,mBAAmB,0BAA0B;AAEvE,MAAM,aAAa;AACnB,MAAM,WAAW;AAEjB,MAAM,sBAAsB,CAAC,EAAE,WAAW,SAAS,mBAAmB,KAAK,aAAa,MAAM,iBAAiB;AAC7G,QAAM,CAAC,mBAAmB,wBAAwB,SAAS;AAC3D,QAAM,CAAC,iBAAiB,sBAAsB,SAAS;AACvD,QAAM,CAAC,cAAc,mBAAmB,SAAS;AACjD,QAAM,gBAAgB;AAEtB,QAAM,oBAAoB,MAAM;AAC9B,oBAAgB,iBAAiB,aAAa,WAAW;AAAA;AAG3D,QAAM,oBAAoB,CAAC,EAAE,WAAW,cAAc;AACpD,yBAAqB;AACrB,uBAAmB;AAAA;AAGrB,QAAM,yBAAyB,CAAC,YAAY;AAC1C,yBAAqB;AAAA;AAGvB,QAAM,uBAAuB,CAAC,YAAY;AACxC,uBAAmB;AAAA;AAGrB,QAAM,wBAAwB,MAAM;AAClC,QAAI,mBAAmB;AACrB,aAAO,OAAO;AAAA;AAAA;AAIlB,QAAM,sBAAsB,MAAM;AAChC,QAAI,iBAAiB;AACnB,aAAO,OAAO;AAAA;AAAA;AAIlB,QAAM,gBAAgB;AACtB,QAAM,cAAc;AAEpB,SACE,qCAAC,SAAD,MACG,cACC,qCAAC,uBAAD;AAAA,IACE,kBAAkB;AAAA,IAClB,oBAAoB;AAAA,IACpB,iBAAiB;AAAA,IACjB,mBAAmB;AAAA,MAGvB,qCAAC,OAAD;AAAA,IAAK,KAAK;AAAA,IAAe,WAAW,eAAe;AAAA,KACjD,qCAAC,0BAAD;AAAA,OACM;AAAA,IACJ,mBAAiB;AAAA,IACjB,SAAS;AAAA,IACT,SAAO;AAAA,IACP;AAAA,IACA,4BAA0B;AAAA,IAC1B,SAAS,qCAAC,sBAAD;AAAA,MAAsB,WAAW,iBAAiB;AAAA;AAAA,IAC3D,SAAS,qCAAC,sBAAD;AAAA,MAAsB,WAAW,iBAAiB;AAAA,MAAoB,MAAM;AAAA;AAAA,IACrF,eAAe;AAAA,IACf,eAAe;AAAA,IACf,mBAAmB,CAAC,SAClB,qCAAC,eAAD;AAAA,MAAe,WAAW,iBAAiB;AAAA,MAAiB,MAAM,KAAK,OAAO;AAAA;AAAA,IAEhF,WAAW;AAAA;AAAA;AAQrB,IAAO,0BAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|