@simplybusiness/mobius-datepicker 4.2.7 → 4.3.0

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 (146) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cjs/components/DatePicker/DatePicker.js +146 -80
  3. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  4. package/dist/cjs/components/DatePicker/DatePickerIcon.js +14 -5
  5. package/dist/cjs/components/DatePicker/DatePickerIcon.js.map +1 -1
  6. package/dist/cjs/components/DatePicker/DatePickerModal.js +75 -31
  7. package/dist/cjs/components/DatePicker/DatePickerModal.js.map +1 -1
  8. package/dist/cjs/components/DatePicker/constants.js +24 -5
  9. package/dist/cjs/components/DatePicker/constants.js.map +1 -1
  10. package/dist/cjs/components/DatePicker/index.js +18 -16
  11. package/dist/cjs/components/DatePicker/index.js.map +1 -1
  12. package/dist/cjs/components/DatePicker/utils/dateObjToString.js +12 -5
  13. package/dist/cjs/components/DatePicker/utils/dateObjToString.js.map +1 -1
  14. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.js +24 -9
  15. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.js.map +1 -1
  16. package/dist/cjs/components/DatePicker/utils/getStartWeekday.js +21 -0
  17. package/dist/cjs/components/DatePicker/utils/getStartWeekday.js.map +1 -0
  18. package/dist/cjs/components/DatePicker/utils/index.js +21 -19
  19. package/dist/cjs/components/DatePicker/utils/index.js.map +1 -1
  20. package/dist/cjs/components/DatePicker/utils/validateDateFormat.js +23 -9
  21. package/dist/cjs/components/DatePicker/utils/validateDateFormat.js.map +1 -1
  22. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.js +16 -9
  23. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.js.map +1 -1
  24. package/dist/cjs/hooks/index.js +18 -16
  25. package/dist/cjs/hooks/index.js.map +1 -1
  26. package/dist/cjs/hooks/useFocusTrap/index.js +18 -16
  27. package/dist/cjs/hooks/useFocusTrap/index.js.map +1 -1
  28. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.js +24 -15
  29. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
  30. package/dist/cjs/index.js +18 -16
  31. package/dist/cjs/index.js.map +1 -1
  32. package/dist/cjs/styles.d.js +3 -0
  33. package/dist/cjs/styles.d.js.map +1 -0
  34. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  35. package/dist/cjs/utils/StoryContainer.js +21 -9
  36. package/dist/cjs/utils/StoryContainer.js.map +1 -1
  37. package/dist/cjs/utils/excludeControls.js +19 -5
  38. package/dist/cjs/utils/excludeControls.js.map +1 -1
  39. package/dist/cjs/utils/index.js +20 -18
  40. package/dist/cjs/utils/index.js.map +1 -1
  41. package/dist/cjs/utils/isTouchDevice.js +11 -4
  42. package/dist/cjs/utils/isTouchDevice.js.map +1 -1
  43. package/dist/esm/components/DatePicker/DatePicker.js +82 -42
  44. package/dist/esm/components/DatePicker/DatePicker.js.map +1 -1
  45. package/dist/esm/components/DatePicker/DatePickerIcon.js +5 -2
  46. package/dist/esm/components/DatePicker/DatePickerIcon.js.map +1 -1
  47. package/dist/esm/components/DatePicker/DatePickerModal.js +47 -13
  48. package/dist/esm/components/DatePicker/DatePickerModal.js.map +1 -1
  49. package/dist/esm/components/DatePicker/constants.js +3 -2
  50. package/dist/esm/components/DatePicker/constants.js.map +1 -1
  51. package/dist/esm/components/DatePicker/index.js +1 -0
  52. package/dist/esm/components/DatePicker/index.js.map +1 -1
  53. package/dist/esm/components/DatePicker/utils/dateObjToString.js +2 -1
  54. package/dist/esm/components/DatePicker/utils/dateObjToString.js.map +1 -1
  55. package/dist/esm/components/DatePicker/utils/formatErrorMessageText.js +2 -1
  56. package/dist/esm/components/DatePicker/utils/formatErrorMessageText.js.map +1 -1
  57. package/dist/esm/components/DatePicker/utils/getStartWeekday.js +13 -0
  58. package/dist/esm/components/DatePicker/utils/getStartWeekday.js.map +1 -0
  59. package/dist/esm/components/DatePicker/utils/index.js +1 -0
  60. package/dist/esm/components/DatePicker/utils/index.js.map +1 -1
  61. package/dist/esm/components/DatePicker/utils/validateDateFormat.js +2 -1
  62. package/dist/esm/components/DatePicker/utils/validateDateFormat.js.map +1 -1
  63. package/dist/esm/components/DatePicker/utils/weekdayAsOneLetter.js +6 -5
  64. package/dist/esm/components/DatePicker/utils/weekdayAsOneLetter.js.map +1 -1
  65. package/dist/esm/hooks/index.js +1 -0
  66. package/dist/esm/hooks/index.js.map +1 -1
  67. package/dist/esm/hooks/useFocusTrap/index.js +1 -0
  68. package/dist/esm/hooks/useFocusTrap/index.js.map +1 -1
  69. package/dist/esm/hooks/useFocusTrap/useFocusTrap.js +12 -10
  70. package/dist/esm/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
  71. package/dist/esm/index.js +1 -0
  72. package/dist/esm/index.js.map +1 -1
  73. package/dist/esm/styles.d.js +2 -0
  74. package/dist/esm/styles.d.js.map +1 -0
  75. package/dist/esm/utils/StoryContainer.js +5 -1
  76. package/dist/esm/utils/StoryContainer.js.map +1 -1
  77. package/dist/esm/utils/excludeControls.js +9 -1
  78. package/dist/esm/utils/excludeControls.js.map +1 -1
  79. package/dist/esm/utils/index.js +1 -0
  80. package/dist/esm/utils/index.js.map +1 -1
  81. package/dist/esm/utils/isTouchDevice.js +2 -1
  82. package/dist/esm/utils/isTouchDevice.js.map +1 -1
  83. package/package.json +7 -8
  84. package/src/components/DatePicker/DatePicker.tsx +4 -4
  85. package/src/components/DatePicker/DatePickerModal.tsx +4 -2
  86. package/src/components/DatePicker/constants.ts +2 -3
  87. package/src/components/DatePicker/utils/getStartWeekday.test.ts +33 -0
  88. package/src/components/DatePicker/utils/getStartWeekday.ts +19 -0
  89. package/src/components/DatePicker/utils/weekdayAsOneLetter.ts +2 -2
  90. package/dist/cjs/components/DatePicker/DatePicker.d.ts +0 -9
  91. package/dist/cjs/components/DatePicker/DatePicker.stories.d.ts +0 -11
  92. package/dist/cjs/components/DatePicker/DatePicker.stories.js +0 -79
  93. package/dist/cjs/components/DatePicker/DatePicker.stories.js.map +0 -1
  94. package/dist/cjs/components/DatePicker/DatePicker.test.d.ts +0 -1
  95. package/dist/cjs/components/DatePicker/DatePicker.test.js +0 -137
  96. package/dist/cjs/components/DatePicker/DatePicker.test.js.map +0 -1
  97. package/dist/cjs/components/DatePicker/DatePickerIcon.d.ts +0 -1
  98. package/dist/cjs/components/DatePicker/DatePickerModal.d.ts +0 -10
  99. package/dist/cjs/components/DatePicker/DatePickerModal.test.d.ts +0 -1
  100. package/dist/cjs/components/DatePicker/DatePickerModal.test.js +0 -105
  101. package/dist/cjs/components/DatePicker/DatePickerModal.test.js.map +0 -1
  102. package/dist/cjs/components/DatePicker/constants.d.ts +0 -2
  103. package/dist/cjs/components/DatePicker/index.d.ts +0 -1
  104. package/dist/cjs/components/DatePicker/utils/dateObjToString.d.ts +0 -1
  105. package/dist/cjs/components/DatePicker/utils/dateObjToString.test.d.ts +0 -1
  106. package/dist/cjs/components/DatePicker/utils/dateObjToString.test.js +0 -15
  107. package/dist/cjs/components/DatePicker/utils/dateObjToString.test.js.map +0 -1
  108. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.d.ts +0 -2
  109. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.test.d.ts +0 -1
  110. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.test.js +0 -35
  111. package/dist/cjs/components/DatePicker/utils/formatErrorMessageText.test.js.map +0 -1
  112. package/dist/cjs/components/DatePicker/utils/index.d.ts +0 -4
  113. package/dist/cjs/components/DatePicker/utils/validateDateFormat.d.ts +0 -2
  114. package/dist/cjs/components/DatePicker/utils/validateDateFormat.test.d.ts +0 -1
  115. package/dist/cjs/components/DatePicker/utils/validateDateFormat.test.js +0 -26
  116. package/dist/cjs/components/DatePicker/utils/validateDateFormat.test.js.map +0 -1
  117. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.d.ts +0 -2
  118. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.test.d.ts +0 -1
  119. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.test.js +0 -23
  120. package/dist/cjs/components/DatePicker/utils/weekdayAsOneLetter.test.js.map +0 -1
  121. package/dist/cjs/hooks/index.d.ts +0 -1
  122. package/dist/cjs/hooks/useFocusTrap/index.d.ts +0 -1
  123. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.d.ts +0 -5
  124. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.test.d.ts +0 -1
  125. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.test.js +0 -65
  126. package/dist/cjs/hooks/useFocusTrap/useFocusTrap.test.js.map +0 -1
  127. package/dist/cjs/index.d.ts +0 -1
  128. package/dist/cjs/utils/StoryContainer.d.ts +0 -1
  129. package/dist/cjs/utils/excludeControls.d.ts +0 -1
  130. package/dist/cjs/utils/excludeControls.test.d.ts +0 -1
  131. package/dist/cjs/utils/excludeControls.test.js +0 -25
  132. package/dist/cjs/utils/excludeControls.test.js.map +0 -1
  133. package/dist/cjs/utils/index.d.ts +0 -3
  134. package/dist/cjs/utils/isTouchDevice.d.ts +0 -1
  135. package/dist/esm/components/DatePicker/utils/dateObjToString.test.js +0 -13
  136. package/dist/esm/components/DatePicker/utils/dateObjToString.test.js.map +0 -1
  137. package/dist/esm/components/DatePicker/utils/formatErrorMessageText.test.js +0 -33
  138. package/dist/esm/components/DatePicker/utils/formatErrorMessageText.test.js.map +0 -1
  139. package/dist/esm/components/DatePicker/utils/validateDateFormat.test.js +0 -24
  140. package/dist/esm/components/DatePicker/utils/validateDateFormat.test.js.map +0 -1
  141. package/dist/esm/components/DatePicker/utils/weekdayAsOneLetter.test.js +0 -21
  142. package/dist/esm/components/DatePicker/utils/weekdayAsOneLetter.test.js.map +0 -1
  143. package/dist/esm/tsconfig.esm.tsbuildinfo +0 -1
  144. package/dist/esm/utils/excludeControls.test.js +0 -23
  145. package/dist/esm/utils/excludeControls.test.js.map +0 -1
  146. package/dist/mobius-datepicker.d.ts +0 -14
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.3.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 6f657c1: Use locale to display relevant start day in popup calendar
8
+
3
9
  ## 4.2.7
4
10
 
5
11
  ### Patch Changes
@@ -1,91 +1,110 @@
1
- "use strict";
2
1
  "use client";
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k;
5
- var desc = Object.getOwnPropertyDescriptor(m, k);
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k]; } };
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "DatePicker", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return DatePicker;
8
10
  }
9
- Object.defineProperty(o, k2, desc);
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- o[k2] = m[k];
13
- }));
14
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
15
- Object.defineProperty(o, "default", { enumerable: true, value: v });
16
- }) : function(o, v) {
17
- o["default"] = v;
18
11
  });
19
- var __importStar = (this && this.__importStar) || function (mod) {
20
- if (mod && mod.__esModule) return mod;
21
- var result = {};
22
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
23
- __setModuleDefault(result, mod);
24
- return result;
25
- };
26
- var __rest = (this && this.__rest) || function (s, e) {
27
- var t = {};
28
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
29
- t[p] = s[p];
30
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
31
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
32
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
33
- t[p[i]] = s[p[i]];
12
+ const _jsxruntime = require("react/jsx-runtime");
13
+ const _mobius = require("@simplybusiness/mobius");
14
+ const _dedupe = /*#__PURE__*/ _interop_require_default(require("classnames/dedupe"));
15
+ const _react = require("react");
16
+ const _isTouchDevice = require("../../utils/isTouchDevice");
17
+ const _utils = require("./utils");
18
+ function _interop_require_default(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ function _getRequireWildcardCache(nodeInterop) {
24
+ if (typeof WeakMap !== "function") return null;
25
+ var cacheBabelInterop = new WeakMap();
26
+ var cacheNodeInterop = new WeakMap();
27
+ return (_getRequireWildcardCache = function(nodeInterop) {
28
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
29
+ })(nodeInterop);
30
+ }
31
+ function _interop_require_wildcard(obj, nodeInterop) {
32
+ if (!nodeInterop && obj && obj.__esModule) {
33
+ return obj;
34
+ }
35
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
36
+ return {
37
+ default: obj
38
+ };
39
+ }
40
+ var cache = _getRequireWildcardCache(nodeInterop);
41
+ if (cache && cache.has(obj)) {
42
+ return cache.get(obj);
43
+ }
44
+ var newObj = {
45
+ __proto__: null
46
+ };
47
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
48
+ for(var key in obj){
49
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
50
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
51
+ if (desc && (desc.get || desc.set)) {
52
+ Object.defineProperty(newObj, key, desc);
53
+ } else {
54
+ newObj[key] = obj[key];
55
+ }
34
56
  }
35
- return t;
36
- };
37
- var __importDefault = (this && this.__importDefault) || function (mod) {
38
- return (mod && mod.__esModule) ? mod : { "default": mod };
39
- };
40
- Object.defineProperty(exports, "__esModule", { value: true });
41
- exports.DatePicker = void 0;
42
- const jsx_runtime_1 = require("react/jsx-runtime");
43
- const mobius_1 = require("@simplybusiness/mobius");
44
- const dedupe_1 = __importDefault(require("classnames/dedupe"));
45
- const react_1 = require("react");
46
- const isTouchDevice_1 = require("../../utils/isTouchDevice");
47
- const utils_1 = require("./utils");
48
- const DatePickerModal = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require("./DatePickerModal"))));
49
- const DatePicker = (props) => {
50
- const { onChange, defaultValue = "", isDisabled, validationState, errorMessage = "" } = props, otherProps = __rest(props, ["onChange", "defaultValue", "isDisabled", "validationState", "errorMessage"]);
51
- const containerRef = (0, react_1.useRef)(null);
52
- const [top, setTop] = (0, react_1.useState)(0);
53
- const inputRef = (0, react_1.useRef)(null);
54
- const [isOpen, setIsOpen] = (0, react_1.useState)(false);
55
- const [textFieldVal, setTextFieldVal] = (0, react_1.useState)((0, utils_1.validateDateFormat)(defaultValue));
56
- const [isValid, setIsValid] = (0, react_1.useState)(true);
57
- const errorMessageText = !isValid
58
- ? // eslint-disable-next-line react/destructuring-assignment
59
- (0, utils_1.formatErrorMessageText)(textFieldVal, props.min, props.max)
60
- : errorMessage;
57
+ }
58
+ newObj.default = obj;
59
+ if (cache) {
60
+ cache.set(obj, newObj);
61
+ }
62
+ return newObj;
63
+ }
64
+ const DatePickerModal = /*#__PURE__*/ (0, _react.lazy)(()=>Promise.resolve().then(()=>/*#__PURE__*/ _interop_require_wildcard(require("./DatePickerModal"))));
65
+ const DatePicker = (props)=>{
66
+ const { onChange, defaultValue = "", isDisabled, validationState, errorMessage = "", ...otherProps } = props;
67
+ const containerRef = (0, _react.useRef)(null);
68
+ const [top, setTop] = (0, _react.useState)(0);
69
+ const inputRef = (0, _react.useRef)(null);
70
+ const [isOpen, setIsOpen] = (0, _react.useState)(false);
71
+ const [textFieldVal, setTextFieldVal] = (0, _react.useState)((0, _utils.validateDateFormat)(defaultValue));
72
+ const [isValid, setIsValid] = (0, _react.useState)(true);
73
+ const errorMessageText = !isValid ? (0, _utils.formatErrorMessageText)(textFieldVal, props.min, props.max) : errorMessage;
61
74
  const inputValidationState = !isValid ? "invalid" : validationState;
62
- const touchDevice = (0, isTouchDevice_1.isTouchDevice)();
75
+ const touchDevice = (0, _isTouchDevice.isTouchDevice)();
63
76
  const validationClasses = {
64
77
  "--is-valid": validationState === "valid",
65
- "--is-invalid": validationState === "invalid" || !isValid,
78
+ "--is-invalid": validationState === "invalid" || !isValid
66
79
  };
67
- const containerClasses = (0, dedupe_1.default)("mobius/DatePickerContainer", Object.assign({ "--is-disabled": isDisabled, "--is-touch-device": touchDevice }, validationClasses));
68
- const popoverToggleClasses = (0, dedupe_1.default)("mobius/DateFieldButton", Object.assign({}, validationClasses));
69
- const togglePopoverVisibility = () => {
80
+ const containerClasses = (0, _dedupe.default)("mobius/DatePickerContainer", {
81
+ "--is-disabled": isDisabled,
82
+ "--is-touch-device": touchDevice,
83
+ ...validationClasses
84
+ });
85
+ const popoverToggleClasses = (0, _dedupe.default)("mobius/DateFieldButton", {
86
+ ...validationClasses
87
+ });
88
+ const togglePopoverVisibility = ()=>{
70
89
  setIsValid(true);
71
90
  setIsOpen(!isOpen);
72
91
  };
73
- const handleTextFieldChange = (event) => {
92
+ const handleTextFieldChange = (event)=>{
74
93
  setTextFieldVal(event.target.value);
75
94
  // onChange only triggers on a valid date
76
95
  // so this clears the error
77
96
  setIsValid(true);
78
97
  };
79
- const validate = () => {
80
- var _a;
98
+ const validate = ()=>{
99
+ var _inputRef_current;
81
100
  // If 'min' or 'max' values are provided, checkValidity() will
82
101
  // validate the date and return a boolean
83
- const isValidInput = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.checkValidity();
102
+ const isValidInput = (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : _inputRef_current.checkValidity();
84
103
  if (!isValidInput) {
85
104
  setIsValid(false);
86
105
  }
87
106
  };
88
- const onDateSelected = (selectedDate) => {
107
+ const onDateSelected = (selectedDate)=>{
89
108
  // Handle null callback from useOnClickOutside
90
109
  if (selectedDate) {
91
110
  setTextFieldVal(selectedDate);
@@ -96,7 +115,7 @@ const DatePicker = (props) => {
96
115
  setIsOpen(false);
97
116
  };
98
117
  // User has interacted with the component and navigated away
99
- const handleBlur = (event) => {
118
+ const handleBlur = (event)=>{
100
119
  validate();
101
120
  // User hasn't entered a date OR
102
121
  // entered an invalid date
@@ -105,28 +124,75 @@ const DatePicker = (props) => {
105
124
  }
106
125
  onChange === null || onChange === void 0 ? void 0 : onChange(event.target.value);
107
126
  };
108
- (0, react_1.useEffect)(() => {
109
- var _a;
127
+ (0, _react.useEffect)(()=>{
110
128
  if (isOpen) {
111
- setTop(((_a = containerRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect().height) || 0);
129
+ var _containerRef_current;
130
+ setTop(((_containerRef_current = containerRef.current) === null || _containerRef_current === void 0 ? void 0 : _containerRef_current.getBoundingClientRect().height) || 0);
112
131
  // Disable validation when day picker is open
113
132
  setIsValid(true);
114
133
  return;
115
134
  }
116
135
  validate();
117
- }, [isOpen]);
136
+ }, [
137
+ isOpen
138
+ ]);
118
139
  if (touchDevice) {
119
- return ((0, jsx_runtime_1.jsx)("div", { className: containerClasses, children: (0, jsx_runtime_1.jsx)(mobius_1.TextField, Object.assign({ ref: inputRef, type: "date", className: "mobius/DatePicker",
120
- // @ts-ignore
121
- onBlur: handleBlur, onChange: handleTextFieldChange, value: textFieldVal, isDisabled: isDisabled, validationState: inputValidationState }, otherProps, { errorMessage: errorMessageText })) }));
140
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
141
+ className: containerClasses,
142
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_mobius.TextField, {
143
+ ref: inputRef,
144
+ type: "date",
145
+ className: "mobius/DatePicker",
146
+ // @ts-expect-error event type
147
+ onBlur: handleBlur,
148
+ onChange: handleTextFieldChange,
149
+ value: textFieldVal,
150
+ isDisabled: isDisabled,
151
+ validationState: inputValidationState,
152
+ ...otherProps,
153
+ errorMessage: errorMessageText
154
+ })
155
+ });
122
156
  }
123
- return ((0, jsx_runtime_1.jsxs)("div", { className: containerClasses, ref: containerRef, children: [(0, jsx_runtime_1.jsx)(mobius_1.TextField, Object.assign({ ref: inputRef, type: "date", className: "mobius/DatePicker",
124
- // @ts-ignore
125
- onBlur: handleBlur, onChange: handleTextFieldChange, value: textFieldVal, isDisabled: isDisabled, validationState: inputValidationState }, otherProps, { errorMessage: errorMessageText, suffixOutside: (0, jsx_runtime_1.jsx)(mobius_1.Button, { className: popoverToggleClasses, onClick: togglePopoverVisibility, isDisabled: isDisabled, children: (0, jsx_runtime_1.jsx)(mobius_1.VisuallyHidden, { children: "Pick date" }) }) })), isOpen && ((0, jsx_runtime_1.jsx)(react_1.Suspense, { children: (0, jsx_runtime_1.jsx)(DatePickerModal, { date: textFieldVal, isOpen: isOpen, top: top, onSelected: onDateSelected,
157
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
158
+ className: containerClasses,
159
+ ref: containerRef,
160
+ children: [
161
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_mobius.TextField, {
162
+ ref: inputRef,
163
+ type: "date",
164
+ className: "mobius/DatePicker",
165
+ // @ts-expect-error event type
166
+ onBlur: handleBlur,
167
+ onChange: handleTextFieldChange,
168
+ value: textFieldVal,
169
+ isDisabled: isDisabled,
170
+ validationState: inputValidationState,
171
+ ...otherProps,
172
+ errorMessage: errorMessageText,
173
+ suffixOutside: /*#__PURE__*/ (0, _jsxruntime.jsx)(_mobius.Button, {
174
+ className: popoverToggleClasses,
175
+ onClick: togglePopoverVisibility,
176
+ isDisabled: isDisabled,
177
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_mobius.VisuallyHidden, {
178
+ children: "Pick date"
179
+ })
180
+ })
181
+ }),
182
+ isOpen && /*#__PURE__*/ (0, _jsxruntime.jsx)(_react.Suspense, {
183
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(DatePickerModal, {
184
+ date: textFieldVal,
185
+ isOpen: isOpen,
186
+ top: top,
187
+ onSelected: onDateSelected,
126
188
  // eslint-disable-next-line react/destructuring-assignment
127
- min: props.min,
189
+ min: props.min,
128
190
  // eslint-disable-next-line react/destructuring-assignment
129
- max: props.max }) }))] }));
191
+ max: props.max
192
+ })
193
+ })
194
+ ]
195
+ });
130
196
  };
131
- exports.DatePicker = DatePicker;
197
+
132
198
  //# sourceMappingURL=DatePicker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n Button,\n TextField,\n TextFieldElementType,\n TextFieldProps,\n VisuallyHidden,\n} from \"@simplybusiness/mobius\";\nimport classNames from \"classnames/dedupe\";\nimport {\n ChangeEvent,\n FocusEvent,\n Suspense,\n lazy,\n useEffect,\n useRef,\n useState,\n} from \"react\";\nimport { isTouchDevice } from \"../../utils/isTouchDevice\";\nimport { formatErrorMessageText, validateDateFormat } from \"./utils\";\n\nconst DatePickerModal = lazy(() => import(\"./DatePickerModal\"));\n\nexport interface DatePickerProps\n extends Omit<\n TextFieldProps,\n \"defaultValue\" | \"onChange\" | \"onBlur\" | \"onFocus\"\n > {\n onChange?: (date: string | undefined) => void;\n defaultValue?: string;\n min?: string;\n max?: string;\n id?: string;\n}\n\nexport const DatePicker = (props: DatePickerProps) => {\n const {\n onChange,\n defaultValue = \"\",\n isDisabled,\n validationState,\n errorMessage = \"\",\n ...otherProps\n } = props;\n const containerRef = useRef<HTMLDivElement | null>(null);\n const [top, setTop] = useState<number>(0);\n const inputRef = useRef<TextFieldElementType | null>(null);\n const [isOpen, setIsOpen] = useState<boolean>(false);\n const [textFieldVal, setTextFieldVal] = useState<string>(\n validateDateFormat(defaultValue),\n );\n const [isValid, setIsValid] = useState<boolean>(true);\n const errorMessageText = !isValid\n ? // eslint-disable-next-line react/destructuring-assignment\n formatErrorMessageText(textFieldVal, props.min, props.max)\n : errorMessage;\n const inputValidationState = !isValid ? \"invalid\" : validationState;\n const touchDevice = isTouchDevice();\n\n const validationClasses = {\n \"--is-valid\": validationState === \"valid\",\n \"--is-invalid\": validationState === \"invalid\" || !isValid,\n };\n\n const containerClasses = classNames(\"mobius/DatePickerContainer\", {\n \"--is-disabled\": isDisabled,\n \"--is-touch-device\": touchDevice,\n ...validationClasses,\n });\n\n const popoverToggleClasses = classNames(\"mobius/DateFieldButton\", {\n ...validationClasses,\n });\n\n const togglePopoverVisibility = () => {\n setIsValid(true);\n setIsOpen(!isOpen);\n };\n\n const handleTextFieldChange = (event: ChangeEvent<TextFieldElementType>) => {\n setTextFieldVal(event.target.value);\n // onChange only triggers on a valid date\n // so this clears the error\n setIsValid(true);\n };\n\n const validate = () => {\n // If 'min' or 'max' values are provided, checkValidity() will\n // validate the date and return a boolean\n const isValidInput = inputRef.current?.checkValidity();\n\n if (!isValidInput) {\n setIsValid(false);\n }\n };\n\n const onDateSelected = (selectedDate: string | undefined) => {\n // Handle null callback from useOnClickOutside\n if (selectedDate) {\n setTextFieldVal(selectedDate);\n setIsValid(true);\n // Add other callback events here\n onChange?.(selectedDate);\n }\n\n setIsOpen(false);\n };\n\n // User has interacted with the component and navigated away\n const handleBlur = (event: FocusEvent<TextFieldElementType>) => {\n validate();\n\n // User hasn't entered a date OR\n // entered an invalid date\n if (!textFieldVal) {\n setIsValid(false);\n }\n\n onChange?.(event.target.value);\n };\n\n useEffect(() => {\n if (isOpen) {\n setTop(containerRef.current?.getBoundingClientRect().height || 0);\n // Disable validation when day picker is open\n setIsValid(true);\n return;\n }\n\n validate();\n }, [isOpen]);\n\n if (touchDevice) {\n return (\n <div className={containerClasses}>\n <TextField\n ref={inputRef}\n type=\"date\"\n className=\"mobius/DatePicker\"\n // @ts-expect-error event type\n onBlur={handleBlur}\n onChange={handleTextFieldChange}\n value={textFieldVal}\n isDisabled={isDisabled}\n validationState={inputValidationState}\n {...otherProps}\n errorMessage={errorMessageText}\n />\n </div>\n );\n }\n\n return (\n <div className={containerClasses} ref={containerRef}>\n <TextField\n ref={inputRef}\n type=\"date\"\n className=\"mobius/DatePicker\"\n // @ts-expect-error event type\n onBlur={handleBlur}\n onChange={handleTextFieldChange}\n value={textFieldVal}\n isDisabled={isDisabled}\n validationState={inputValidationState}\n {...otherProps}\n errorMessage={errorMessageText}\n suffixOutside={\n <Button\n className={popoverToggleClasses}\n onClick={togglePopoverVisibility}\n isDisabled={isDisabled}\n >\n <VisuallyHidden>Pick date</VisuallyHidden>\n </Button>\n }\n />\n {isOpen && (\n <Suspense>\n <DatePickerModal\n date={textFieldVal}\n isOpen={isOpen}\n top={top}\n onSelected={onDateSelected}\n // eslint-disable-next-line react/destructuring-assignment\n min={props.min}\n // eslint-disable-next-line react/destructuring-assignment\n max={props.max}\n />\n </Suspense>\n )}\n </div>\n );\n};\n"],"names":["DatePicker","DatePickerModal","lazy","props","onChange","defaultValue","isDisabled","validationState","errorMessage","otherProps","containerRef","useRef","top","setTop","useState","inputRef","isOpen","setIsOpen","textFieldVal","setTextFieldVal","validateDateFormat","isValid","setIsValid","errorMessageText","formatErrorMessageText","min","max","inputValidationState","touchDevice","isTouchDevice","validationClasses","containerClasses","classNames","popoverToggleClasses","togglePopoverVisibility","handleTextFieldChange","event","target","value","validate","isValidInput","current","checkValidity","onDateSelected","selectedDate","handleBlur","useEffect","getBoundingClientRect","height","div","className","TextField","ref","type","onBlur","suffixOutside","Button","onClick","VisuallyHidden","Suspense","date","onSelected"],"mappings":"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"}
@@ -1,7 +1,16 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DatePickerIcon = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const DatePickerIcon = () => (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: " " });
6
- exports.DatePickerIcon = DatePickerIcon;
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "DatePickerIcon", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return DatePickerIcon;
9
+ }
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const DatePickerIcon = ()=>/*#__PURE__*/ (0, _jsxruntime.jsx)(_jsxruntime.Fragment, {
13
+ children: " "
14
+ });
15
+
7
16
  //# sourceMappingURL=DatePickerIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerIcon.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/DatePickerIcon.tsx"],"names":[],"mappings":";;;;AAAO,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,iEAAM,CAAC;AAA9B,QAAA,cAAc,kBAAgB"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/DatePickerIcon.tsx"],"sourcesContent":["export const DatePickerIcon = () => <> </>;\n"],"names":["DatePickerIcon"],"mappings":";;;;+BAAaA;;;eAAAA;;;;AAAN,MAAMA,iBAAiB,kBAAM;kBAAE"}
@@ -1,49 +1,93 @@
1
- "use strict";
2
1
  "use client";
3
- var __importDefault = (this && this.__importDefault) || function (mod) {
4
- return (mod && mod.__esModule) ? mod : { "default": mod };
5
- };
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const mobius_1 = require("@simplybusiness/mobius");
9
- const dedupe_1 = __importDefault(require("classnames/dedupe"));
10
- const react_1 = require("react");
11
- const react_day_picker_1 = require("react-day-picker");
12
- const useFocusTrap_1 = __importDefault(require("../../hooks/useFocusTrap/useFocusTrap"));
13
- const DatePickerIcon_1 = require("./DatePickerIcon");
14
- const constants_1 = require("./constants");
15
- const utils_1 = require("./utils");
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "default", {
7
+ enumerable: true,
8
+ get: function() {
9
+ return _default;
10
+ }
11
+ });
12
+ const _jsxruntime = require("react/jsx-runtime");
13
+ const _mobius = require("@simplybusiness/mobius");
14
+ const _dedupe = /*#__PURE__*/ _interop_require_default(require("classnames/dedupe"));
15
+ const _react = require("react");
16
+ const _reactdaypicker = require("react-day-picker");
17
+ const _useFocusTrap = /*#__PURE__*/ _interop_require_default(require("../../hooks/useFocusTrap/useFocusTrap"));
18
+ const _DatePickerIcon = require("./DatePickerIcon");
19
+ const _utils = require("./utils");
20
+ const _getStartWeekday = require("./utils/getStartWeekday");
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ var _navigator;
16
27
  const PARENT_NODE = typeof document !== "undefined" && document.body;
17
- const DatePickerModal = ({ date, isOpen, onSelected, top, min, max, }) => {
18
- const modalRef = (0, react_1.useRef)(null);
28
+ const startWeekday = (0, _getStartWeekday.getStartWeekday)((_navigator = navigator) === null || _navigator === void 0 ? void 0 : _navigator.language);
29
+ const DatePickerModal = ({ date, isOpen, onSelected, top, min, max })=>{
30
+ const modalRef = (0, _react.useRef)(null);
19
31
  const initialDate = date ? new Date(date) : undefined;
20
32
  const minDate = min ? new Date(min) : undefined;
21
33
  const maxDate = max ? new Date(max) : undefined;
22
34
  if (isOpen && PARENT_NODE) {
23
35
  PARENT_NODE === null || PARENT_NODE === void 0 ? void 0 : PARENT_NODE.setAttribute("aria-hidden", "true");
24
36
  }
25
- const handleSelected = (selectedDate) => {
26
- if (PARENT_NODE)
27
- PARENT_NODE === null || PARENT_NODE === void 0 ? void 0 : PARENT_NODE.removeAttribute("aria-hidden");
37
+ const handleSelected = (selectedDate)=>{
38
+ if (PARENT_NODE) PARENT_NODE === null || PARENT_NODE === void 0 ? void 0 : PARENT_NODE.removeAttribute("aria-hidden");
28
39
  onSelected(selectedDate);
29
40
  };
30
- const handleDayPickerSelect = (selectedDate) => {
31
- if (!selectedDate)
32
- return;
33
- handleSelected((0, utils_1.dateObjToString)(selectedDate));
41
+ const handleDayPickerSelect = (selectedDate)=>{
42
+ if (!selectedDate) return;
43
+ handleSelected((0, _utils.dateObjToString)(selectedDate));
34
44
  };
35
- (0, mobius_1.useOnClickOutside)(modalRef, () => {
45
+ (0, _mobius.useOnClickOutside)(modalRef, ()=>{
36
46
  if (modalRef.current && isOpen) {
37
47
  handleSelected();
38
48
  }
39
49
  });
40
- const modalClasses = (0, dedupe_1.default)("mobius/DatePickerModal", {
41
- "--is-open": isOpen,
50
+ const modalClasses = (0, _dedupe.default)("mobius/DatePickerModal", {
51
+ "--is-open": isOpen
52
+ });
53
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_useFocusTrap.default, {
54
+ children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
55
+ ref: modalRef,
56
+ className: modalClasses,
57
+ style: {
58
+ top
59
+ },
60
+ "aria-describedby": "screen-reader-title",
61
+ "data-testid": "modal-container",
62
+ children: [
63
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_mobius.VisuallyHidden, {
64
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
65
+ id: "screen-reader-title",
66
+ children: "Please select a date from the calendar"
67
+ })
68
+ }),
69
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactdaypicker.DayPicker, {
70
+ mode: "single",
71
+ fromDate: minDate,
72
+ toDate: maxDate,
73
+ selected: initialDate,
74
+ defaultMonth: initialDate,
75
+ onSelect: handleDayPickerSelect,
76
+ pagedNavigation: true,
77
+ showOutsideDays: true,
78
+ weekStartsOn: startWeekday,
79
+ formatters: {
80
+ formatWeekdayName: _utils.weekdayAsOneLetter
81
+ },
82
+ components: {
83
+ IconLeft: _DatePickerIcon.DatePickerIcon,
84
+ IconRight: _DatePickerIcon.DatePickerIcon
85
+ }
86
+ })
87
+ ]
88
+ })
42
89
  });
43
- return ((0, jsx_runtime_1.jsx)(useFocusTrap_1.default, { children: (0, jsx_runtime_1.jsxs)("div", { ref: modalRef, className: modalClasses, style: { top }, "aria-describedby": "screen-reader-title", "data-testid": "modal-container", children: [(0, jsx_runtime_1.jsx)(mobius_1.VisuallyHidden, { children: (0, jsx_runtime_1.jsx)("div", { id: "screen-reader-title", children: "Please select a date from the calendar" }) }), (0, jsx_runtime_1.jsx)(react_day_picker_1.DayPicker, { mode: "single", fromDate: minDate, toDate: maxDate, selected: initialDate, defaultMonth: initialDate, onSelect: handleDayPickerSelect, pagedNavigation: true, showOutsideDays: true, weekStartsOn: constants_1.MONDAY_AS_NUMBER, formatters: { formatWeekdayName: utils_1.weekdayAsOneLetter }, components: {
44
- IconLeft: DatePickerIcon_1.DatePickerIcon,
45
- IconRight: DatePickerIcon_1.DatePickerIcon,
46
- } })] }) }));
47
90
  };
48
- exports.default = DatePickerModal;
91
+ const _default = DatePickerModal;
92
+
49
93
  //# sourceMappingURL=DatePickerModal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DatePickerModal.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/DatePickerModal.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;AAEb,mDAA2E;AAC3E,+DAA2C;AAC3C,iCAA+B;AAC/B,uDAA6C;AAC7C,yFAA8D;AAC9D,qDAAkD;AAClD,2CAA+C;AAC/C,mCAA8D;AAE9D,MAAM,WAAW,GAAG,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,IAAI,CAAC;AAWrE,MAAM,eAAe,GAAG,CAAC,EACvB,IAAI,EACJ,MAAM,EACN,UAAU,EACV,GAAG,EACH,GAAG,EACH,GAAG,GACkB,EAAE,EAAE;IACzB,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAiB,IAAI,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACtD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEhD,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;QAC1B,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,YAAiC,EAAE,EAAE;QAC3D,IAAI,WAAW;YAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,eAAe,CAAC,aAAa,CAAC,CAAC;QAC7D,UAAU,CAAC,YAAY,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAAC,YAA8B,EAAE,EAAE;QAC/D,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,cAAc,CAAC,IAAA,uBAAe,EAAC,YAAY,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,IAAA,0BAAiB,EAAC,QAAQ,EAAE,GAAG,EAAE;QAC/B,IAAI,QAAQ,CAAC,OAAO,IAAI,MAAM,EAAE,CAAC;YAC/B,cAAc,EAAE,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,IAAA,gBAAU,EAAC,wBAAwB,EAAE;QACxD,WAAW,EAAE,MAAM;KACpB,CAAC,CAAC;IAEH,OAAO,CACL,uBAAC,sBAAS,cACR,iCACE,GAAG,EAAE,QAAQ,EACb,SAAS,EAAE,YAAY,EACvB,KAAK,EAAE,EAAE,GAAG,EAAE,sBACG,qBAAqB,iBAC1B,iBAAiB,aAE7B,uBAAC,uBAAc,cACb,gCAAK,EAAE,EAAC,qBAAqB,uDAEvB,GACS,EACjB,uBAAC,4BAAS,IACR,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,OAAO,EACjB,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,WAAW,EACzB,QAAQ,EAAE,qBAAqB,EAC/B,eAAe,QACf,eAAe,QACf,YAAY,EAAE,4BAAgB,EAC9B,UAAU,EAAE,EAAE,iBAAiB,EAAE,0BAAkB,EAAE,EACrD,UAAU,EAAE;wBACV,QAAQ,EAAE,+BAAc;wBACxB,SAAS,EAAE,+BAAc;qBAC1B,GACD,IACE,GACI,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/DatePickerModal.tsx"],"sourcesContent":["\"use client\";\n\nimport { VisuallyHidden, useOnClickOutside } from \"@simplybusiness/mobius\";\nimport classNames from \"classnames/dedupe\";\nimport { useRef } from \"react\";\nimport { DayPicker } from \"react-day-picker\";\nimport FocusTrap from \"../../hooks/useFocusTrap/useFocusTrap\";\nimport { DatePickerIcon } from \"./DatePickerIcon\";\nimport { dateObjToString, weekdayAsOneLetter } from \"./utils\";\nimport { getStartWeekday } from \"./utils/getStartWeekday\";\n\nconst PARENT_NODE = typeof document !== \"undefined\" && document.body;\n\nexport type DatePickerModalProps = {\n date?: string; // yyyy-mm-dd\n isOpen: boolean;\n top: number;\n onSelected: (date?: string | undefined) => void;\n min?: string;\n max?: string;\n};\n\nconst startWeekday = getStartWeekday(navigator?.language);\n\nconst DatePickerModal = ({\n date,\n isOpen,\n onSelected,\n top,\n min,\n max,\n}: DatePickerModalProps) => {\n const modalRef = useRef<HTMLDivElement>(null);\n const initialDate = date ? new Date(date) : undefined;\n const minDate = min ? new Date(min) : undefined;\n const maxDate = max ? new Date(max) : undefined;\n\n if (isOpen && PARENT_NODE) {\n PARENT_NODE?.setAttribute(\"aria-hidden\", \"true\");\n }\n\n const handleSelected = (selectedDate?: string | undefined) => {\n if (PARENT_NODE) PARENT_NODE?.removeAttribute(\"aria-hidden\");\n onSelected(selectedDate);\n };\n\n const handleDayPickerSelect = (selectedDate: Date | undefined) => {\n if (!selectedDate) return;\n\n handleSelected(dateObjToString(selectedDate));\n };\n\n useOnClickOutside(modalRef, () => {\n if (modalRef.current && isOpen) {\n handleSelected();\n }\n });\n\n const modalClasses = classNames(\"mobius/DatePickerModal\", {\n \"--is-open\": isOpen,\n });\n\n return (\n <FocusTrap>\n <div\n ref={modalRef}\n className={modalClasses}\n style={{ top }}\n aria-describedby=\"screen-reader-title\"\n data-testid=\"modal-container\"\n >\n <VisuallyHidden>\n <div id=\"screen-reader-title\">\n Please select a date from the calendar\n </div>\n </VisuallyHidden>\n <DayPicker\n mode=\"single\"\n fromDate={minDate}\n toDate={maxDate}\n selected={initialDate}\n defaultMonth={initialDate}\n onSelect={handleDayPickerSelect}\n pagedNavigation\n showOutsideDays\n weekStartsOn={startWeekday}\n formatters={{ formatWeekdayName: weekdayAsOneLetter }}\n components={{\n IconLeft: DatePickerIcon,\n IconRight: DatePickerIcon,\n }}\n />\n </div>\n </FocusTrap>\n );\n};\n\nexport default DatePickerModal;\n"],"names":["navigator","PARENT_NODE","document","body","startWeekday","getStartWeekday","language","DatePickerModal","date","isOpen","onSelected","top","min","max","modalRef","useRef","initialDate","Date","undefined","minDate","maxDate","setAttribute","handleSelected","selectedDate","removeAttribute","handleDayPickerSelect","dateObjToString","useOnClickOutside","current","modalClasses","classNames","FocusTrap","div","ref","className","style","aria-describedby","data-testid","VisuallyHidden","id","DayPicker","mode","fromDate","toDate","selected","defaultMonth","onSelect","pagedNavigation","showOutsideDays","weekStartsOn","formatters","formatWeekdayName","weekdayAsOneLetter","components","IconLeft","DatePickerIcon","IconRight"],"mappings":"AAAA;;;;;+BAiGA;;;eAAA;;;;wBA/FkD;+DAC3B;uBACA;gCACG;qEACJ;gCACS;uBACqB;iCACpB;;;;;;IAaKA;AAXrC,MAAMC,cAAc,OAAOC,aAAa,eAAeA,SAASC,IAAI;AAWpE,MAAMC,eAAeC,IAAAA,gCAAe,GAACL,aAAAA,uBAAAA,iCAAAA,WAAWM,QAAQ;AAExD,MAAMC,kBAAkB,CAAC,EACvBC,IAAI,EACJC,MAAM,EACNC,UAAU,EACVC,GAAG,EACHC,GAAG,EACHC,GAAG,EACkB;IACrB,MAAMC,WAAWC,IAAAA,aAAM,EAAiB;IACxC,MAAMC,cAAcR,OAAO,IAAIS,KAAKT,QAAQU;IAC5C,MAAMC,UAAUP,MAAM,IAAIK,KAAKL,OAAOM;IACtC,MAAME,UAAUP,MAAM,IAAII,KAAKJ,OAAOK;IAEtC,IAAIT,UAAUR,aAAa;QACzBA,wBAAAA,kCAAAA,YAAaoB,YAAY,CAAC,eAAe;IAC3C;IAEA,MAAMC,iBAAiB,CAACC;QACtB,IAAItB,aAAaA,wBAAAA,kCAAAA,YAAauB,eAAe,CAAC;QAC9Cd,WAAWa;IACb;IAEA,MAAME,wBAAwB,CAACF;QAC7B,IAAI,CAACA,cAAc;QAEnBD,eAAeI,IAAAA,sBAAe,EAACH;IACjC;IAEAI,IAAAA,yBAAiB,EAACb,UAAU;QAC1B,IAAIA,SAASc,OAAO,IAAInB,QAAQ;YAC9Ba;QACF;IACF;IAEA,MAAMO,eAAeC,IAAAA,eAAU,EAAC,0BAA0B;QACxD,aAAarB;IACf;IAEA,qBACE,qBAACsB,qBAAS;kBACR,cAAA,sBAACC;YACCC,KAAKnB;YACLoB,WAAWL;YACXM,OAAO;gBAAExB;YAAI;YACbyB,oBAAiB;YACjBC,eAAY;;8BAEZ,qBAACC,sBAAc;8BACb,cAAA,qBAACN;wBAAIO,IAAG;kCAAsB;;;8BAIhC,qBAACC,yBAAS;oBACRC,MAAK;oBACLC,UAAUvB;oBACVwB,QAAQvB;oBACRwB,UAAU5B;oBACV6B,cAAc7B;oBACd8B,UAAUrB;oBACVsB,eAAe;oBACfC,eAAe;oBACfC,cAAc7C;oBACd8C,YAAY;wBAAEC,mBAAmBC,yBAAkB;oBAAC;oBACpDC,YAAY;wBACVC,UAAUC,8BAAc;wBACxBC,WAAWD,8BAAc;oBAC3B;;;;;AAKV;MAEA,WAAehD"}
@@ -1,7 +1,26 @@
1
1
  "use strict";
2
- var _a;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.DEFAULT_LOCALE = exports.MONDAY_AS_NUMBER = void 0;
5
- exports.MONDAY_AS_NUMBER = 1;
6
- exports.DEFAULT_LOCALE = (typeof window !== "undefined" && ((_a = window === null || window === void 0 ? void 0 : window.navigator) === null || _a === void 0 ? void 0 : _a.language)) || "en-GB";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ DEFAULT_LOCALE: function() {
13
+ return DEFAULT_LOCALE;
14
+ },
15
+ MONDAY_AS_NUMBER: function() {
16
+ return MONDAY_AS_NUMBER;
17
+ },
18
+ SUNDAY_AS_NUMBER: function() {
19
+ return SUNDAY_AS_NUMBER;
20
+ }
21
+ });
22
+ const SUNDAY_AS_NUMBER = 0;
23
+ const MONDAY_AS_NUMBER = 1;
24
+ const DEFAULT_LOCALE = "en-GB";
25
+
7
26
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/constants.ts"],"names":[],"mappings":";;;;AAAa,QAAA,gBAAgB,GAAG,CAAC,CAAC;AAErB,QAAA,cAAc,GACzB,CAAC,OAAO,MAAM,KAAK,WAAW,KAAI,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,0CAAE,QAAQ,CAAA,CAAC,IAAI,OAAO,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/constants.ts"],"sourcesContent":["export const SUNDAY_AS_NUMBER = 0;\nexport const MONDAY_AS_NUMBER = 1;\nexport const DEFAULT_LOCALE = \"en-GB\";\n"],"names":["DEFAULT_LOCALE","MONDAY_AS_NUMBER","SUNDAY_AS_NUMBER"],"mappings":";;;;;;;;;;;IAEaA,cAAc;eAAdA;;IADAC,gBAAgB;eAAhBA;;IADAC,gBAAgB;eAAhBA;;;AAAN,MAAMA,mBAAmB;AACzB,MAAMD,mBAAmB;AACzB,MAAMD,iBAAiB"}
@@ -1,18 +1,20 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./DatePicker"), exports);
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ _export_star(require("./DatePicker"), exports);
6
+ function _export_star(from, to) {
7
+ Object.keys(from).forEach(function(k) {
8
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
9
+ Object.defineProperty(to, k, {
10
+ enumerable: true,
11
+ get: function() {
12
+ return from[k];
13
+ }
14
+ });
15
+ }
16
+ });
17
+ return from;
18
+ }
19
+
18
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/DatePicker/index.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/index.tsx"],"sourcesContent":["export * from \"./DatePicker\";\n"],"names":[],"mappings":";;;;qBAAc"}
@@ -1,7 +1,14 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.dateObjToString = void 0;
4
- const date_fns_1 = require("date-fns");
5
- const dateObjToString = (date) => (0, date_fns_1.format)(date, "yyyy-MM-dd");
6
- exports.dateObjToString = dateObjToString;
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "dateObjToString", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return dateObjToString;
9
+ }
10
+ });
11
+ const _datefns = require("date-fns");
12
+ const dateObjToString = (date)=>(0, _datefns.format)(date, "yyyy-MM-dd");
13
+
7
14
  //# sourceMappingURL=dateObjToString.js.map