@fluentui/react-datepicker-compat 0.4.40 → 0.4.42
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/CHANGELOG.md +123 -88
- package/lib/components/DatePicker/useDatePicker.js +3 -2
- package/lib/components/DatePicker/useDatePicker.js.map +1 -1
- package/lib/components/DatePicker/useDatePickerStyles.styles.js +2 -0
- package/lib/components/DatePicker/useDatePickerStyles.styles.js.map +1 -1
- package/lib-commonjs/components/DatePicker/useDatePicker.js +3 -2
- package/lib-commonjs/components/DatePicker/useDatePicker.js.map +1 -1
- package/lib-commonjs/components/DatePicker/useDatePickerStyles.styles.js +1 -0
- package/lib-commonjs/components/DatePicker/useDatePickerStyles.styles.js.map +1 -1
- package/package.json +15 -15
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,47 @@
|
|
|
1
1
|
# Change Log - @fluentui/react-datepicker-compat
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Mon, 01 Jul 2024 20:26:00 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## [0.4.42](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.42)
|
|
8
|
+
|
|
9
|
+
Mon, 01 Jul 2024 20:26:00 GMT
|
|
10
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.41..@fluentui/react-datepicker-compat_v0.4.42)
|
|
11
|
+
|
|
12
|
+
### Patches
|
|
13
|
+
|
|
14
|
+
- feat: update DatePicker to use legacyTrapFocus ([PR #31801](https://github.com/microsoft/fluentui/pull/31801) by sarah.higley@microsoft.com)
|
|
15
|
+
- chore: Update react-icons package to ^2.0.245 ([PR #31802](https://github.com/microsoft/fluentui/pull/31802) by ololubek@microsoft.com)
|
|
16
|
+
- fix: datepicker popup is not hidden from the a11y tree ([PR #31819](https://github.com/microsoft/fluentui/pull/31819) by sarah.higley@microsoft.com)
|
|
17
|
+
- chore: add eslint react-compiler ([PR #31457](https://github.com/microsoft/fluentui/pull/31457) by seanmonahan@microsoft.com)
|
|
18
|
+
- Bump @fluentui/react-calendar-compat to v0.1.12 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
19
|
+
- Bump @fluentui/react-field to v9.1.69 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
20
|
+
- Bump @fluentui/react-input to v9.4.80 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
21
|
+
- Bump @fluentui/react-jsx-runtime to v9.0.40 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
22
|
+
- Bump @fluentui/react-popover to v9.9.13 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
23
|
+
- Bump @fluentui/react-portal to v9.4.29 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
24
|
+
- Bump @fluentui/react-positioning to v9.15.4 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
25
|
+
- Bump @fluentui/react-tabster to v9.22.1 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
26
|
+
- Bump @fluentui/react-utilities to v9.18.11 ([PR #31861](https://github.com/microsoft/fluentui/pull/31861) by beachball)
|
|
27
|
+
|
|
28
|
+
## [0.4.41](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.41)
|
|
29
|
+
|
|
30
|
+
Mon, 17 Jun 2024 07:34:17 GMT
|
|
31
|
+
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.40..@fluentui/react-datepicker-compat_v0.4.41)
|
|
32
|
+
|
|
33
|
+
### Patches
|
|
34
|
+
|
|
35
|
+
- Bump @fluentui/react-calendar-compat to v0.1.11 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
36
|
+
- Bump @fluentui/react-field to v9.1.68 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
37
|
+
- Bump @fluentui/react-input to v9.4.79 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
38
|
+
- Bump @fluentui/react-popover to v9.9.12 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
39
|
+
- Bump @fluentui/react-portal to v9.4.28 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
40
|
+
- Bump @fluentui/react-tabster to v9.22.0 ([commit](https://github.com/microsoft/fluentui/commit/9ae683c22f2e65d94422a571ad5d3f97d0a77234) by beachball)
|
|
41
|
+
|
|
7
42
|
## [0.4.40](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.40)
|
|
8
43
|
|
|
9
|
-
Thu, 06 Jun 2024 15:
|
|
44
|
+
Thu, 06 Jun 2024 15:26:45 GMT
|
|
10
45
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.39..@fluentui/react-datepicker-compat_v0.4.40)
|
|
11
46
|
|
|
12
47
|
### Patches
|
|
@@ -23,7 +58,7 @@ Thu, 06 Jun 2024 15:22:27 GMT
|
|
|
23
58
|
|
|
24
59
|
## [0.4.39](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.39)
|
|
25
60
|
|
|
26
|
-
Thu, 23 May 2024 08:02:52 GMT
|
|
61
|
+
Thu, 23 May 2024 08:02:52 GMT
|
|
27
62
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.38..@fluentui/react-datepicker-compat_v0.4.39)
|
|
28
63
|
|
|
29
64
|
### Patches
|
|
@@ -37,7 +72,7 @@ Thu, 23 May 2024 08:02:52 GMT
|
|
|
37
72
|
|
|
38
73
|
## [0.4.38](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.38)
|
|
39
74
|
|
|
40
|
-
Mon, 20 May 2024 12:44:55 GMT
|
|
75
|
+
Mon, 20 May 2024 12:44:55 GMT
|
|
41
76
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.37..@fluentui/react-datepicker-compat_v0.4.38)
|
|
42
77
|
|
|
43
78
|
### Patches
|
|
@@ -56,19 +91,19 @@ Mon, 20 May 2024 12:44:55 GMT
|
|
|
56
91
|
|
|
57
92
|
## [0.4.37](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.37)
|
|
58
93
|
|
|
59
|
-
Thu, 16 May 2024 09:25:14 GMT
|
|
94
|
+
Thu, 16 May 2024 09:25:14 GMT
|
|
60
95
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.36..@fluentui/react-datepicker-compat_v0.4.37)
|
|
61
96
|
|
|
62
97
|
### Patches
|
|
63
98
|
|
|
64
|
-
-
|
|
99
|
+
- chore: Upgrade react-icons version to 2.0.239 to pick up provider export map fix. ([PR #31287](https://github.com/microsoft/fluentui/pull/31287) by ololubek@microsoft.com)
|
|
65
100
|
- Bump @fluentui/react-calendar-compat to v0.1.7 ([PR #31390](https://github.com/microsoft/fluentui/pull/31390) by beachball)
|
|
66
101
|
- Bump @fluentui/react-field to v9.1.65 ([PR #31390](https://github.com/microsoft/fluentui/pull/31390) by beachball)
|
|
67
102
|
- Bump @fluentui/react-input to v9.4.75 ([PR #31390](https://github.com/microsoft/fluentui/pull/31390) by beachball)
|
|
68
103
|
|
|
69
104
|
## [0.4.36](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.36)
|
|
70
105
|
|
|
71
|
-
Thu, 09 May 2024 19:35:12 GMT
|
|
106
|
+
Thu, 09 May 2024 19:35:12 GMT
|
|
72
107
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.35..@fluentui/react-datepicker-compat_v0.4.36)
|
|
73
108
|
|
|
74
109
|
### Patches
|
|
@@ -81,7 +116,7 @@ Thu, 09 May 2024 19:35:12 GMT
|
|
|
81
116
|
|
|
82
117
|
## [0.4.35](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.35)
|
|
83
118
|
|
|
84
|
-
Mon, 06 May 2024 12:55:02 GMT
|
|
119
|
+
Mon, 06 May 2024 12:55:02 GMT
|
|
85
120
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.34..@fluentui/react-datepicker-compat_v0.4.35)
|
|
86
121
|
|
|
87
122
|
### Patches
|
|
@@ -99,12 +134,12 @@ Mon, 06 May 2024 12:55:02 GMT
|
|
|
99
134
|
|
|
100
135
|
## [0.4.34](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.34)
|
|
101
136
|
|
|
102
|
-
Thu, 02 May 2024 11:36:32 GMT
|
|
137
|
+
Thu, 02 May 2024 11:36:32 GMT
|
|
103
138
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.33..@fluentui/react-datepicker-compat_v0.4.34)
|
|
104
139
|
|
|
105
140
|
### Patches
|
|
106
141
|
|
|
107
|
-
-
|
|
142
|
+
- chore: upgrade @fluentui/react-icons to 2.0.237. ([PR #31139](https://github.com/microsoft/fluentui/pull/31139) by ololubek@microsoft.com)
|
|
108
143
|
- Bump @fluentui/react-calendar-compat to v0.1.4 ([PR #31231](https://github.com/microsoft/fluentui/pull/31231) by beachball)
|
|
109
144
|
- Bump @fluentui/react-field to v9.1.63 ([PR #31231](https://github.com/microsoft/fluentui/pull/31231) by beachball)
|
|
110
145
|
- Bump @fluentui/react-input to v9.4.73 ([PR #31231](https://github.com/microsoft/fluentui/pull/31231) by beachball)
|
|
@@ -114,7 +149,7 @@ Thu, 02 May 2024 11:36:32 GMT
|
|
|
114
149
|
|
|
115
150
|
## [0.4.33](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.33)
|
|
116
151
|
|
|
117
|
-
Tue, 23 Apr 2024 08:17:49 GMT
|
|
152
|
+
Tue, 23 Apr 2024 08:17:49 GMT
|
|
118
153
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.32..@fluentui/react-datepicker-compat_v0.4.33)
|
|
119
154
|
|
|
120
155
|
### Patches
|
|
@@ -132,7 +167,7 @@ Tue, 23 Apr 2024 08:17:49 GMT
|
|
|
132
167
|
|
|
133
168
|
## [0.4.32](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.32)
|
|
134
169
|
|
|
135
|
-
Wed, 17 Apr 2024 21:53:51 GMT
|
|
170
|
+
Wed, 17 Apr 2024 21:53:51 GMT
|
|
136
171
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.31..@fluentui/react-datepicker-compat_v0.4.32)
|
|
137
172
|
|
|
138
173
|
### Patches
|
|
@@ -147,7 +182,7 @@ Wed, 17 Apr 2024 21:53:51 GMT
|
|
|
147
182
|
|
|
148
183
|
## [0.4.31](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.31)
|
|
149
184
|
|
|
150
|
-
Thu, 04 Apr 2024 12:08:07 GMT
|
|
185
|
+
Thu, 04 Apr 2024 12:08:07 GMT
|
|
151
186
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.30..@fluentui/react-datepicker-compat_v0.4.31)
|
|
152
187
|
|
|
153
188
|
### Patches
|
|
@@ -156,7 +191,7 @@ Thu, 04 Apr 2024 12:08:07 GMT
|
|
|
156
191
|
|
|
157
192
|
## [0.4.30](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.30)
|
|
158
193
|
|
|
159
|
-
Tue, 02 Apr 2024 09:48:01 GMT
|
|
194
|
+
Tue, 02 Apr 2024 09:48:01 GMT
|
|
160
195
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.29..@fluentui/react-datepicker-compat_v0.4.30)
|
|
161
196
|
|
|
162
197
|
### Patches
|
|
@@ -174,7 +209,7 @@ Tue, 02 Apr 2024 09:48:01 GMT
|
|
|
174
209
|
|
|
175
210
|
## [0.4.29](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.29)
|
|
176
211
|
|
|
177
|
-
Mon, 25 Mar 2024 11:12:15 GMT
|
|
212
|
+
Mon, 25 Mar 2024 11:12:15 GMT
|
|
178
213
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.28..@fluentui/react-datepicker-compat_v0.4.29)
|
|
179
214
|
|
|
180
215
|
### Patches
|
|
@@ -185,7 +220,7 @@ Mon, 25 Mar 2024 11:12:15 GMT
|
|
|
185
220
|
|
|
186
221
|
## [0.4.28](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.28)
|
|
187
222
|
|
|
188
|
-
Mon, 18 Mar 2024 19:50:46 GMT
|
|
223
|
+
Mon, 18 Mar 2024 19:50:46 GMT
|
|
189
224
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.27..@fluentui/react-datepicker-compat_v0.4.28)
|
|
190
225
|
|
|
191
226
|
### Patches
|
|
@@ -204,7 +239,7 @@ Mon, 18 Mar 2024 19:50:46 GMT
|
|
|
204
239
|
|
|
205
240
|
## [0.4.27](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.27)
|
|
206
241
|
|
|
207
|
-
Fri, 15 Mar 2024 21:43:49 GMT
|
|
242
|
+
Fri, 15 Mar 2024 21:43:49 GMT
|
|
208
243
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.26..@fluentui/react-datepicker-compat_v0.4.27)
|
|
209
244
|
|
|
210
245
|
### Patches
|
|
@@ -223,7 +258,7 @@ Fri, 15 Mar 2024 21:43:49 GMT
|
|
|
223
258
|
|
|
224
259
|
## [0.4.26](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.26)
|
|
225
260
|
|
|
226
|
-
Thu, 07 Mar 2024 19:33:27 GMT
|
|
261
|
+
Thu, 07 Mar 2024 19:33:27 GMT
|
|
227
262
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.25..@fluentui/react-datepicker-compat_v0.4.26)
|
|
228
263
|
|
|
229
264
|
### Patches
|
|
@@ -242,7 +277,7 @@ Thu, 07 Mar 2024 19:33:27 GMT
|
|
|
242
277
|
|
|
243
278
|
## [0.4.25](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.25)
|
|
244
279
|
|
|
245
|
-
Wed, 28 Feb 2024 02:34:19 GMT
|
|
280
|
+
Wed, 28 Feb 2024 02:34:19 GMT
|
|
246
281
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.24..@fluentui/react-datepicker-compat_v0.4.25)
|
|
247
282
|
|
|
248
283
|
### Patches
|
|
@@ -260,7 +295,7 @@ Wed, 28 Feb 2024 02:34:19 GMT
|
|
|
260
295
|
|
|
261
296
|
## [0.4.24](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.24)
|
|
262
297
|
|
|
263
|
-
Tue, 20 Feb 2024 14:22:19 GMT
|
|
298
|
+
Tue, 20 Feb 2024 14:22:19 GMT
|
|
264
299
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.23..@fluentui/react-datepicker-compat_v0.4.24)
|
|
265
300
|
|
|
266
301
|
### Patches
|
|
@@ -279,7 +314,7 @@ Tue, 20 Feb 2024 14:22:19 GMT
|
|
|
279
314
|
|
|
280
315
|
## [0.4.23](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.23)
|
|
281
316
|
|
|
282
|
-
Tue, 06 Feb 2024 17:55:18 GMT
|
|
317
|
+
Tue, 06 Feb 2024 17:55:18 GMT
|
|
283
318
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.22..@fluentui/react-datepicker-compat_v0.4.23)
|
|
284
319
|
|
|
285
320
|
### Patches
|
|
@@ -293,7 +328,7 @@ Tue, 06 Feb 2024 17:55:18 GMT
|
|
|
293
328
|
|
|
294
329
|
## [0.4.22](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.22)
|
|
295
330
|
|
|
296
|
-
Tue, 30 Jan 2024 23:16:54 GMT
|
|
331
|
+
Tue, 30 Jan 2024 23:16:54 GMT
|
|
297
332
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.21..@fluentui/react-datepicker-compat_v0.4.22)
|
|
298
333
|
|
|
299
334
|
### Patches
|
|
@@ -310,7 +345,7 @@ Tue, 30 Jan 2024 23:16:54 GMT
|
|
|
310
345
|
|
|
311
346
|
## [0.4.21](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.21)
|
|
312
347
|
|
|
313
|
-
Mon, 29 Jan 2024 13:56:06 GMT
|
|
348
|
+
Mon, 29 Jan 2024 13:56:06 GMT
|
|
314
349
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.20..@fluentui/react-datepicker-compat_v0.4.21)
|
|
315
350
|
|
|
316
351
|
### Patches
|
|
@@ -322,7 +357,7 @@ Mon, 29 Jan 2024 13:56:06 GMT
|
|
|
322
357
|
|
|
323
358
|
## [0.4.20](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.20)
|
|
324
359
|
|
|
325
|
-
Fri, 26 Jan 2024 10:40:22 GMT
|
|
360
|
+
Fri, 26 Jan 2024 10:40:22 GMT
|
|
326
361
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.19..@fluentui/react-datepicker-compat_v0.4.20)
|
|
327
362
|
|
|
328
363
|
### Patches
|
|
@@ -332,7 +367,7 @@ Fri, 26 Jan 2024 10:40:22 GMT
|
|
|
332
367
|
|
|
333
368
|
## [0.4.19](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.19)
|
|
334
369
|
|
|
335
|
-
Tue, 23 Jan 2024 15:11:00 GMT
|
|
370
|
+
Tue, 23 Jan 2024 15:11:00 GMT
|
|
336
371
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.18..@fluentui/react-datepicker-compat_v0.4.19)
|
|
337
372
|
|
|
338
373
|
### Patches
|
|
@@ -349,7 +384,7 @@ Tue, 23 Jan 2024 15:11:00 GMT
|
|
|
349
384
|
|
|
350
385
|
## [0.4.18](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.18)
|
|
351
386
|
|
|
352
|
-
Thu, 18 Jan 2024 14:25:03 GMT
|
|
387
|
+
Thu, 18 Jan 2024 14:25:03 GMT
|
|
353
388
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.17..@fluentui/react-datepicker-compat_v0.4.18)
|
|
354
389
|
|
|
355
390
|
### Patches
|
|
@@ -367,7 +402,7 @@ Thu, 18 Jan 2024 14:25:03 GMT
|
|
|
367
402
|
|
|
368
403
|
## [0.4.17](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.17)
|
|
369
404
|
|
|
370
|
-
Wed, 17 Jan 2024 16:18:50 GMT
|
|
405
|
+
Wed, 17 Jan 2024 16:18:50 GMT
|
|
371
406
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.16..@fluentui/react-datepicker-compat_v0.4.17)
|
|
372
407
|
|
|
373
408
|
### Patches
|
|
@@ -384,7 +419,7 @@ Wed, 17 Jan 2024 16:18:50 GMT
|
|
|
384
419
|
|
|
385
420
|
## [0.4.16](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.16)
|
|
386
421
|
|
|
387
|
-
Tue, 16 Jan 2024 13:14:17 GMT
|
|
422
|
+
Tue, 16 Jan 2024 13:14:17 GMT
|
|
388
423
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.15..@fluentui/react-datepicker-compat_v0.4.16)
|
|
389
424
|
|
|
390
425
|
### Patches
|
|
@@ -402,7 +437,7 @@ Tue, 16 Jan 2024 13:14:17 GMT
|
|
|
402
437
|
|
|
403
438
|
## [0.4.15](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.15)
|
|
404
439
|
|
|
405
|
-
Thu, 11 Jan 2024 09:04:29 GMT
|
|
440
|
+
Thu, 11 Jan 2024 09:04:29 GMT
|
|
406
441
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.14..@fluentui/react-datepicker-compat_v0.4.15)
|
|
407
442
|
|
|
408
443
|
### Patches
|
|
@@ -412,7 +447,7 @@ Thu, 11 Jan 2024 09:04:29 GMT
|
|
|
412
447
|
|
|
413
448
|
## [0.4.14](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.14)
|
|
414
449
|
|
|
415
|
-
Tue, 09 Jan 2024 10:21:34 GMT
|
|
450
|
+
Tue, 09 Jan 2024 10:21:34 GMT
|
|
416
451
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.13..@fluentui/react-datepicker-compat_v0.4.14)
|
|
417
452
|
|
|
418
453
|
### Patches
|
|
@@ -422,7 +457,7 @@ Tue, 09 Jan 2024 10:21:34 GMT
|
|
|
422
457
|
|
|
423
458
|
## [0.4.13](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.13)
|
|
424
459
|
|
|
425
|
-
Mon, 08 Jan 2024 16:24:21 GMT
|
|
460
|
+
Mon, 08 Jan 2024 16:24:21 GMT
|
|
426
461
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.12..@fluentui/react-datepicker-compat_v0.4.13)
|
|
427
462
|
|
|
428
463
|
### Patches
|
|
@@ -440,7 +475,7 @@ Mon, 08 Jan 2024 16:24:21 GMT
|
|
|
440
475
|
|
|
441
476
|
## [0.4.12](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.12)
|
|
442
477
|
|
|
443
|
-
Thu, 04 Jan 2024 09:48:06 GMT
|
|
478
|
+
Thu, 04 Jan 2024 09:48:06 GMT
|
|
444
479
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.11..@fluentui/react-datepicker-compat_v0.4.12)
|
|
445
480
|
|
|
446
481
|
### Patches
|
|
@@ -450,7 +485,7 @@ Thu, 04 Jan 2024 09:48:06 GMT
|
|
|
450
485
|
|
|
451
486
|
## [0.4.11](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.11)
|
|
452
487
|
|
|
453
|
-
Wed, 03 Jan 2024 09:26:43 GMT
|
|
488
|
+
Wed, 03 Jan 2024 09:26:43 GMT
|
|
454
489
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.10..@fluentui/react-datepicker-compat_v0.4.11)
|
|
455
490
|
|
|
456
491
|
### Patches
|
|
@@ -467,7 +502,7 @@ Wed, 03 Jan 2024 09:26:43 GMT
|
|
|
467
502
|
|
|
468
503
|
## [0.4.10](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.10)
|
|
469
504
|
|
|
470
|
-
Mon, 18 Dec 2023 17:48:16 GMT
|
|
505
|
+
Mon, 18 Dec 2023 17:48:16 GMT
|
|
471
506
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.9..@fluentui/react-datepicker-compat_v0.4.10)
|
|
472
507
|
|
|
473
508
|
### Patches
|
|
@@ -477,7 +512,7 @@ Mon, 18 Dec 2023 17:48:16 GMT
|
|
|
477
512
|
|
|
478
513
|
## [0.4.9](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.9)
|
|
479
514
|
|
|
480
|
-
Mon, 18 Dec 2023 14:40:46 GMT
|
|
515
|
+
Mon, 18 Dec 2023 14:40:46 GMT
|
|
481
516
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.8..@fluentui/react-datepicker-compat_v0.4.9)
|
|
482
517
|
|
|
483
518
|
### Patches
|
|
@@ -495,7 +530,7 @@ Mon, 18 Dec 2023 14:40:46 GMT
|
|
|
495
530
|
|
|
496
531
|
## [0.4.8](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.8)
|
|
497
532
|
|
|
498
|
-
Thu, 14 Dec 2023 09:58:46 GMT
|
|
533
|
+
Thu, 14 Dec 2023 09:58:46 GMT
|
|
499
534
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.7..@fluentui/react-datepicker-compat_v0.4.8)
|
|
500
535
|
|
|
501
536
|
### Patches
|
|
@@ -513,7 +548,7 @@ Thu, 14 Dec 2023 09:58:46 GMT
|
|
|
513
548
|
|
|
514
549
|
## [0.4.7](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.7)
|
|
515
550
|
|
|
516
|
-
Thu, 30 Nov 2023 13:42:08 GMT
|
|
551
|
+
Thu, 30 Nov 2023 13:42:08 GMT
|
|
517
552
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.6..@fluentui/react-datepicker-compat_v0.4.7)
|
|
518
553
|
|
|
519
554
|
### Patches
|
|
@@ -529,7 +564,7 @@ Thu, 30 Nov 2023 13:42:08 GMT
|
|
|
529
564
|
|
|
530
565
|
## [0.4.6](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.6)
|
|
531
566
|
|
|
532
|
-
Mon, 20 Nov 2023 09:55:10 GMT
|
|
567
|
+
Mon, 20 Nov 2023 09:55:10 GMT
|
|
533
568
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.5..@fluentui/react-datepicker-compat_v0.4.6)
|
|
534
569
|
|
|
535
570
|
### Patches
|
|
@@ -545,7 +580,7 @@ Mon, 20 Nov 2023 09:55:10 GMT
|
|
|
545
580
|
|
|
546
581
|
## [0.4.5](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.5)
|
|
547
582
|
|
|
548
|
-
Tue, 14 Nov 2023 17:51:27 GMT
|
|
583
|
+
Tue, 14 Nov 2023 17:51:27 GMT
|
|
549
584
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.4..@fluentui/react-datepicker-compat_v0.4.5)
|
|
550
585
|
|
|
551
586
|
### Patches
|
|
@@ -557,7 +592,7 @@ Tue, 14 Nov 2023 17:51:27 GMT
|
|
|
557
592
|
|
|
558
593
|
## [0.4.4](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.4)
|
|
559
594
|
|
|
560
|
-
Thu, 09 Nov 2023 17:29:34 GMT
|
|
595
|
+
Thu, 09 Nov 2023 17:29:34 GMT
|
|
561
596
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.3..@fluentui/react-datepicker-compat_v0.4.4)
|
|
562
597
|
|
|
563
598
|
### Patches
|
|
@@ -579,7 +614,7 @@ Thu, 09 Nov 2023 17:29:34 GMT
|
|
|
579
614
|
|
|
580
615
|
## [0.4.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.3)
|
|
581
616
|
|
|
582
|
-
Mon, 06 Nov 2023 13:16:04 GMT
|
|
617
|
+
Mon, 06 Nov 2023 13:16:04 GMT
|
|
583
618
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.2..@fluentui/react-datepicker-compat_v0.4.3)
|
|
584
619
|
|
|
585
620
|
### Patches
|
|
@@ -588,7 +623,7 @@ Mon, 06 Nov 2023 13:16:04 GMT
|
|
|
588
623
|
|
|
589
624
|
## [0.4.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.2)
|
|
590
625
|
|
|
591
|
-
Wed, 01 Nov 2023 12:55:59 GMT
|
|
626
|
+
Wed, 01 Nov 2023 12:55:59 GMT
|
|
592
627
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.1..@fluentui/react-datepicker-compat_v0.4.2)
|
|
593
628
|
|
|
594
629
|
### Patches
|
|
@@ -605,7 +640,7 @@ Wed, 01 Nov 2023 12:55:59 GMT
|
|
|
605
640
|
|
|
606
641
|
## [0.4.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.1)
|
|
607
642
|
|
|
608
|
-
Sat, 28 Oct 2023 23:35:59 GMT
|
|
643
|
+
Sat, 28 Oct 2023 23:35:59 GMT
|
|
609
644
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.4.0..@fluentui/react-datepicker-compat_v0.4.1)
|
|
610
645
|
|
|
611
646
|
### Patches
|
|
@@ -621,7 +656,7 @@ Sat, 28 Oct 2023 23:35:59 GMT
|
|
|
621
656
|
|
|
622
657
|
## [0.4.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.4.0)
|
|
623
658
|
|
|
624
|
-
Mon, 23 Oct 2023 09:51:55 GMT
|
|
659
|
+
Mon, 23 Oct 2023 09:51:55 GMT
|
|
625
660
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.22..@fluentui/react-datepicker-compat_v0.4.0)
|
|
626
661
|
|
|
627
662
|
### Minor changes
|
|
@@ -634,7 +669,7 @@ Mon, 23 Oct 2023 09:51:55 GMT
|
|
|
634
669
|
|
|
635
670
|
## [0.3.22](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.22)
|
|
636
671
|
|
|
637
|
-
Wed, 18 Oct 2023 17:54:08 GMT
|
|
672
|
+
Wed, 18 Oct 2023 17:54:08 GMT
|
|
638
673
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.21..@fluentui/react-datepicker-compat_v0.3.22)
|
|
639
674
|
|
|
640
675
|
### Patches
|
|
@@ -650,7 +685,7 @@ Wed, 18 Oct 2023 17:54:08 GMT
|
|
|
650
685
|
|
|
651
686
|
## [0.3.21](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.21)
|
|
652
687
|
|
|
653
|
-
Thu, 12 Oct 2023 14:55:44 GMT
|
|
688
|
+
Thu, 12 Oct 2023 14:55:44 GMT
|
|
654
689
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.20..@fluentui/react-datepicker-compat_v0.3.21)
|
|
655
690
|
|
|
656
691
|
### Patches
|
|
@@ -662,7 +697,7 @@ Thu, 12 Oct 2023 14:55:44 GMT
|
|
|
662
697
|
|
|
663
698
|
## [0.3.20](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.20)
|
|
664
699
|
|
|
665
|
-
Wed, 11 Oct 2023 13:54:23 GMT
|
|
700
|
+
Wed, 11 Oct 2023 13:54:23 GMT
|
|
666
701
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.19..@fluentui/react-datepicker-compat_v0.3.20)
|
|
667
702
|
|
|
668
703
|
### Patches
|
|
@@ -679,7 +714,7 @@ Wed, 11 Oct 2023 13:54:23 GMT
|
|
|
679
714
|
|
|
680
715
|
## [0.3.19](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.19)
|
|
681
716
|
|
|
682
|
-
Mon, 09 Oct 2023 20:45:44 GMT
|
|
717
|
+
Mon, 09 Oct 2023 20:45:44 GMT
|
|
683
718
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.18..@fluentui/react-datepicker-compat_v0.3.19)
|
|
684
719
|
|
|
685
720
|
### Patches
|
|
@@ -696,7 +731,7 @@ Mon, 09 Oct 2023 20:45:44 GMT
|
|
|
696
731
|
|
|
697
732
|
## [0.3.18](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.18)
|
|
698
733
|
|
|
699
|
-
Thu, 05 Oct 2023 15:25:35 GMT
|
|
734
|
+
Thu, 05 Oct 2023 15:25:35 GMT
|
|
700
735
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.17..@fluentui/react-datepicker-compat_v0.3.18)
|
|
701
736
|
|
|
702
737
|
### Patches
|
|
@@ -712,7 +747,7 @@ Thu, 05 Oct 2023 15:25:35 GMT
|
|
|
712
747
|
|
|
713
748
|
## [0.3.17](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.17)
|
|
714
749
|
|
|
715
|
-
Wed, 04 Oct 2023 08:45:47 GMT
|
|
750
|
+
Wed, 04 Oct 2023 08:45:47 GMT
|
|
716
751
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.16..@fluentui/react-datepicker-compat_v0.3.17)
|
|
717
752
|
|
|
718
753
|
### Patches
|
|
@@ -728,7 +763,7 @@ Wed, 04 Oct 2023 08:45:47 GMT
|
|
|
728
763
|
|
|
729
764
|
## [0.3.16](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.16)
|
|
730
765
|
|
|
731
|
-
Mon, 02 Oct 2023 08:56:05 GMT
|
|
766
|
+
Mon, 02 Oct 2023 08:56:05 GMT
|
|
732
767
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.15..@fluentui/react-datepicker-compat_v0.3.16)
|
|
733
768
|
|
|
734
769
|
### Patches
|
|
@@ -743,7 +778,7 @@ Mon, 02 Oct 2023 08:56:05 GMT
|
|
|
743
778
|
|
|
744
779
|
## [0.3.15](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.15)
|
|
745
780
|
|
|
746
|
-
Tue, 26 Sep 2023 17:49:05 GMT
|
|
781
|
+
Tue, 26 Sep 2023 17:49:05 GMT
|
|
747
782
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.14..@fluentui/react-datepicker-compat_v0.3.15)
|
|
748
783
|
|
|
749
784
|
### Patches
|
|
@@ -763,7 +798,7 @@ Tue, 26 Sep 2023 17:49:05 GMT
|
|
|
763
798
|
|
|
764
799
|
## [0.3.14](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.14)
|
|
765
800
|
|
|
766
|
-
Tue, 26 Sep 2023 15:32:02 GMT
|
|
801
|
+
Tue, 26 Sep 2023 15:32:02 GMT
|
|
767
802
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.13..@fluentui/react-datepicker-compat_v0.3.14)
|
|
768
803
|
|
|
769
804
|
### Patches
|
|
@@ -784,7 +819,7 @@ Tue, 26 Sep 2023 15:32:02 GMT
|
|
|
784
819
|
|
|
785
820
|
## [0.3.13](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.13)
|
|
786
821
|
|
|
787
|
-
Wed, 20 Sep 2023 17:47:36 GMT
|
|
822
|
+
Wed, 20 Sep 2023 17:47:36 GMT
|
|
788
823
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.12..@fluentui/react-datepicker-compat_v0.3.13)
|
|
789
824
|
|
|
790
825
|
### Patches
|
|
@@ -801,7 +836,7 @@ Wed, 20 Sep 2023 17:47:36 GMT
|
|
|
801
836
|
|
|
802
837
|
## [0.3.12](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.12)
|
|
803
838
|
|
|
804
|
-
Wed, 20 Sep 2023 14:59:53 GMT
|
|
839
|
+
Wed, 20 Sep 2023 14:59:53 GMT
|
|
805
840
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.11..@fluentui/react-datepicker-compat_v0.3.12)
|
|
806
841
|
|
|
807
842
|
### Patches
|
|
@@ -817,7 +852,7 @@ Wed, 20 Sep 2023 14:59:53 GMT
|
|
|
817
852
|
|
|
818
853
|
## [0.3.11](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.11)
|
|
819
854
|
|
|
820
|
-
Thu, 14 Sep 2023 16:44:47 GMT
|
|
855
|
+
Thu, 14 Sep 2023 16:44:47 GMT
|
|
821
856
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.10..@fluentui/react-datepicker-compat_v0.3.11)
|
|
822
857
|
|
|
823
858
|
### Patches
|
|
@@ -829,7 +864,7 @@ Thu, 14 Sep 2023 16:44:47 GMT
|
|
|
829
864
|
|
|
830
865
|
## [0.3.10](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.10)
|
|
831
866
|
|
|
832
|
-
Tue, 12 Sep 2023 08:51:34 GMT
|
|
867
|
+
Tue, 12 Sep 2023 08:51:34 GMT
|
|
833
868
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.9..@fluentui/react-datepicker-compat_v0.3.10)
|
|
834
869
|
|
|
835
870
|
### Patches
|
|
@@ -843,7 +878,7 @@ Tue, 12 Sep 2023 08:51:34 GMT
|
|
|
843
878
|
|
|
844
879
|
## [0.3.9](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.9)
|
|
845
880
|
|
|
846
|
-
Wed, 06 Sep 2023 13:31:31 GMT
|
|
881
|
+
Wed, 06 Sep 2023 13:31:31 GMT
|
|
847
882
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.8..@fluentui/react-datepicker-compat_v0.3.9)
|
|
848
883
|
|
|
849
884
|
### Patches
|
|
@@ -859,7 +894,7 @@ Wed, 06 Sep 2023 13:31:31 GMT
|
|
|
859
894
|
|
|
860
895
|
## [0.3.8](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.8)
|
|
861
896
|
|
|
862
|
-
Tue, 05 Sep 2023 15:39:04 GMT
|
|
897
|
+
Tue, 05 Sep 2023 15:39:04 GMT
|
|
863
898
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.7..@fluentui/react-datepicker-compat_v0.3.8)
|
|
864
899
|
|
|
865
900
|
### Patches
|
|
@@ -875,7 +910,7 @@ Tue, 05 Sep 2023 15:39:04 GMT
|
|
|
875
910
|
|
|
876
911
|
## [0.3.7](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.7)
|
|
877
912
|
|
|
878
|
-
Tue, 05 Sep 2023 13:29:20 GMT
|
|
913
|
+
Tue, 05 Sep 2023 13:29:20 GMT
|
|
879
914
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.6..@fluentui/react-datepicker-compat_v0.3.7)
|
|
880
915
|
|
|
881
916
|
### Patches
|
|
@@ -896,7 +931,7 @@ Tue, 05 Sep 2023 13:29:20 GMT
|
|
|
896
931
|
|
|
897
932
|
## [0.3.6](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.6)
|
|
898
933
|
|
|
899
|
-
Tue, 29 Aug 2023 12:57:36 GMT
|
|
934
|
+
Tue, 29 Aug 2023 12:57:36 GMT
|
|
900
935
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.5..@fluentui/react-datepicker-compat_v0.3.6)
|
|
901
936
|
|
|
902
937
|
### Patches
|
|
@@ -912,7 +947,7 @@ Tue, 29 Aug 2023 12:57:36 GMT
|
|
|
912
947
|
|
|
913
948
|
## [0.3.5](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.5)
|
|
914
949
|
|
|
915
|
-
Thu, 24 Aug 2023 10:26:35 GMT
|
|
950
|
+
Thu, 24 Aug 2023 10:26:35 GMT
|
|
916
951
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.4..@fluentui/react-datepicker-compat_v0.3.5)
|
|
917
952
|
|
|
918
953
|
### Patches
|
|
@@ -928,7 +963,7 @@ Thu, 24 Aug 2023 10:26:35 GMT
|
|
|
928
963
|
|
|
929
964
|
## [0.3.4](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.4)
|
|
930
965
|
|
|
931
|
-
Wed, 23 Aug 2023 12:01:49 GMT
|
|
966
|
+
Wed, 23 Aug 2023 12:01:49 GMT
|
|
932
967
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.3..@fluentui/react-datepicker-compat_v0.3.4)
|
|
933
968
|
|
|
934
969
|
### Patches
|
|
@@ -944,7 +979,7 @@ Wed, 23 Aug 2023 12:01:49 GMT
|
|
|
944
979
|
|
|
945
980
|
## [0.3.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.3)
|
|
946
981
|
|
|
947
|
-
Mon, 21 Aug 2023 11:38:00 GMT
|
|
982
|
+
Mon, 21 Aug 2023 11:38:00 GMT
|
|
948
983
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.2..@fluentui/react-datepicker-compat_v0.3.3)
|
|
949
984
|
|
|
950
985
|
### Patches
|
|
@@ -955,7 +990,7 @@ Mon, 21 Aug 2023 11:38:00 GMT
|
|
|
955
990
|
|
|
956
991
|
## [0.3.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.2)
|
|
957
992
|
|
|
958
|
-
Wed, 16 Aug 2023 17:41:08 GMT
|
|
993
|
+
Wed, 16 Aug 2023 17:41:08 GMT
|
|
959
994
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.1..@fluentui/react-datepicker-compat_v0.3.2)
|
|
960
995
|
|
|
961
996
|
### Patches
|
|
@@ -967,7 +1002,7 @@ Wed, 16 Aug 2023 17:41:08 GMT
|
|
|
967
1002
|
|
|
968
1003
|
## [0.3.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.1)
|
|
969
1004
|
|
|
970
|
-
Wed, 16 Aug 2023 11:38:33 GMT
|
|
1005
|
+
Wed, 16 Aug 2023 11:38:33 GMT
|
|
971
1006
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.3.0..@fluentui/react-datepicker-compat_v0.3.1)
|
|
972
1007
|
|
|
973
1008
|
### Patches
|
|
@@ -979,7 +1014,7 @@ Wed, 16 Aug 2023 11:38:33 GMT
|
|
|
979
1014
|
|
|
980
1015
|
## [0.3.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.3.0)
|
|
981
1016
|
|
|
982
|
-
Fri, 11 Aug 2023 12:14:24 GMT
|
|
1017
|
+
Fri, 11 Aug 2023 12:14:24 GMT
|
|
983
1018
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.6..@fluentui/react-datepicker-compat_v0.3.0)
|
|
984
1019
|
|
|
985
1020
|
### Minor changes
|
|
@@ -996,7 +1031,7 @@ Fri, 11 Aug 2023 12:14:24 GMT
|
|
|
996
1031
|
|
|
997
1032
|
## [0.2.6](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.6)
|
|
998
1033
|
|
|
999
|
-
Wed, 09 Aug 2023 13:16:54 GMT
|
|
1034
|
+
Wed, 09 Aug 2023 13:16:54 GMT
|
|
1000
1035
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.5..@fluentui/react-datepicker-compat_v0.2.6)
|
|
1001
1036
|
|
|
1002
1037
|
### Patches
|
|
@@ -1015,7 +1050,7 @@ Wed, 09 Aug 2023 13:16:54 GMT
|
|
|
1015
1050
|
|
|
1016
1051
|
## [0.2.5](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.5)
|
|
1017
1052
|
|
|
1018
|
-
Fri, 04 Aug 2023 08:52:58 GMT
|
|
1053
|
+
Fri, 04 Aug 2023 08:52:58 GMT
|
|
1019
1054
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.4..@fluentui/react-datepicker-compat_v0.2.5)
|
|
1020
1055
|
|
|
1021
1056
|
### Patches
|
|
@@ -1033,7 +1068,7 @@ Fri, 04 Aug 2023 08:52:58 GMT
|
|
|
1033
1068
|
|
|
1034
1069
|
## [0.2.4](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.4)
|
|
1035
1070
|
|
|
1036
|
-
Tue, 01 Aug 2023 10:17:21 GMT
|
|
1071
|
+
Tue, 01 Aug 2023 10:17:21 GMT
|
|
1037
1072
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.3..@fluentui/react-datepicker-compat_v0.2.4)
|
|
1038
1073
|
|
|
1039
1074
|
### Patches
|
|
@@ -1048,7 +1083,7 @@ Tue, 01 Aug 2023 10:17:21 GMT
|
|
|
1048
1083
|
|
|
1049
1084
|
## [0.2.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.3)
|
|
1050
1085
|
|
|
1051
|
-
Thu, 27 Jul 2023 10:34:14 GMT
|
|
1086
|
+
Thu, 27 Jul 2023 10:34:14 GMT
|
|
1052
1087
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.2..@fluentui/react-datepicker-compat_v0.2.3)
|
|
1053
1088
|
|
|
1054
1089
|
### Patches
|
|
@@ -1058,7 +1093,7 @@ Thu, 27 Jul 2023 10:34:14 GMT
|
|
|
1058
1093
|
|
|
1059
1094
|
## [0.2.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.2)
|
|
1060
1095
|
|
|
1061
|
-
Tue, 25 Jul 2023 13:29:18 GMT
|
|
1096
|
+
Tue, 25 Jul 2023 13:29:18 GMT
|
|
1062
1097
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.1..@fluentui/react-datepicker-compat_v0.2.2)
|
|
1063
1098
|
|
|
1064
1099
|
### Patches
|
|
@@ -1072,7 +1107,7 @@ Tue, 25 Jul 2023 13:29:18 GMT
|
|
|
1072
1107
|
|
|
1073
1108
|
## [0.2.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.1)
|
|
1074
1109
|
|
|
1075
|
-
Thu, 20 Jul 2023 18:27:28 GMT
|
|
1110
|
+
Thu, 20 Jul 2023 18:27:28 GMT
|
|
1076
1111
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.2.0..@fluentui/react-datepicker-compat_v0.2.1)
|
|
1077
1112
|
|
|
1078
1113
|
### Patches
|
|
@@ -1085,7 +1120,7 @@ Thu, 20 Jul 2023 18:27:28 GMT
|
|
|
1085
1120
|
|
|
1086
1121
|
## [0.2.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.2.0)
|
|
1087
1122
|
|
|
1088
|
-
Tue, 11 Jul 2023 18:46:34 GMT
|
|
1123
|
+
Tue, 11 Jul 2023 18:46:34 GMT
|
|
1089
1124
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.11..@fluentui/react-datepicker-compat_v0.2.0)
|
|
1090
1125
|
|
|
1091
1126
|
### Minor changes
|
|
@@ -1104,7 +1139,7 @@ Tue, 11 Jul 2023 18:46:34 GMT
|
|
|
1104
1139
|
|
|
1105
1140
|
## [0.1.11](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.11)
|
|
1106
1141
|
|
|
1107
|
-
Mon, 03 Jul 2023 13:34:28 GMT
|
|
1142
|
+
Mon, 03 Jul 2023 13:34:28 GMT
|
|
1108
1143
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.10..@fluentui/react-datepicker-compat_v0.1.11)
|
|
1109
1144
|
|
|
1110
1145
|
### Patches
|
|
@@ -1115,7 +1150,7 @@ Mon, 03 Jul 2023 13:34:28 GMT
|
|
|
1115
1150
|
|
|
1116
1151
|
## [0.1.10](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.10)
|
|
1117
1152
|
|
|
1118
|
-
Mon, 03 Jul 2023 11:57:14 GMT
|
|
1153
|
+
Mon, 03 Jul 2023 11:57:14 GMT
|
|
1119
1154
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.9..@fluentui/react-datepicker-compat_v0.1.10)
|
|
1120
1155
|
|
|
1121
1156
|
### Patches
|
|
@@ -1132,7 +1167,7 @@ Mon, 03 Jul 2023 11:57:14 GMT
|
|
|
1132
1167
|
|
|
1133
1168
|
## [0.1.9](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.9)
|
|
1134
1169
|
|
|
1135
|
-
Wed, 28 Jun 2023 11:12:25 GMT
|
|
1170
|
+
Wed, 28 Jun 2023 11:12:25 GMT
|
|
1136
1171
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.8..@fluentui/react-datepicker-compat_v0.1.9)
|
|
1137
1172
|
|
|
1138
1173
|
### Patches
|
|
@@ -1148,7 +1183,7 @@ Wed, 28 Jun 2023 11:12:25 GMT
|
|
|
1148
1183
|
|
|
1149
1184
|
## [0.1.8](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.8)
|
|
1150
1185
|
|
|
1151
|
-
Tue, 27 Jun 2023 11:21:22 GMT
|
|
1186
|
+
Tue, 27 Jun 2023 11:21:22 GMT
|
|
1152
1187
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.7..@fluentui/react-datepicker-compat_v0.1.8)
|
|
1153
1188
|
|
|
1154
1189
|
### Patches
|
|
@@ -1160,7 +1195,7 @@ Tue, 27 Jun 2023 11:21:22 GMT
|
|
|
1160
1195
|
|
|
1161
1196
|
## [0.1.7](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.7)
|
|
1162
1197
|
|
|
1163
|
-
Mon, 26 Jun 2023 09:53:55 GMT
|
|
1198
|
+
Mon, 26 Jun 2023 09:53:55 GMT
|
|
1164
1199
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.6..@fluentui/react-datepicker-compat_v0.1.7)
|
|
1165
1200
|
|
|
1166
1201
|
### Patches
|
|
@@ -1176,7 +1211,7 @@ Mon, 26 Jun 2023 09:53:55 GMT
|
|
|
1176
1211
|
|
|
1177
1212
|
## [0.1.6](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.6)
|
|
1178
1213
|
|
|
1179
|
-
Tue, 20 Jun 2023 12:38:57 GMT
|
|
1214
|
+
Tue, 20 Jun 2023 12:38:57 GMT
|
|
1180
1215
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.5..@fluentui/react-datepicker-compat_v0.1.6)
|
|
1181
1216
|
|
|
1182
1217
|
### Patches
|
|
@@ -1198,7 +1233,7 @@ Tue, 20 Jun 2023 12:38:57 GMT
|
|
|
1198
1233
|
|
|
1199
1234
|
## [0.1.5](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.5)
|
|
1200
1235
|
|
|
1201
|
-
Wed, 31 May 2023 06:46:12 GMT
|
|
1236
|
+
Wed, 31 May 2023 06:46:12 GMT
|
|
1202
1237
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.4..@fluentui/react-datepicker-compat_v0.1.5)
|
|
1203
1238
|
|
|
1204
1239
|
### Patches
|
|
@@ -1217,7 +1252,7 @@ Wed, 31 May 2023 06:46:12 GMT
|
|
|
1217
1252
|
|
|
1218
1253
|
## [0.1.4](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.4)
|
|
1219
1254
|
|
|
1220
|
-
Thu, 25 May 2023 10:00:48 GMT
|
|
1255
|
+
Thu, 25 May 2023 10:00:48 GMT
|
|
1221
1256
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.3..@fluentui/react-datepicker-compat_v0.1.4)
|
|
1222
1257
|
|
|
1223
1258
|
### Patches
|
|
@@ -1233,7 +1268,7 @@ Thu, 25 May 2023 10:00:48 GMT
|
|
|
1233
1268
|
|
|
1234
1269
|
## [0.1.3](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.3)
|
|
1235
1270
|
|
|
1236
|
-
Wed, 24 May 2023 20:45:26 GMT
|
|
1271
|
+
Wed, 24 May 2023 20:45:26 GMT
|
|
1237
1272
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.2..@fluentui/react-datepicker-compat_v0.1.3)
|
|
1238
1273
|
|
|
1239
1274
|
### Patches
|
|
@@ -1250,7 +1285,7 @@ Wed, 24 May 2023 20:45:26 GMT
|
|
|
1250
1285
|
|
|
1251
1286
|
## [0.1.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.2)
|
|
1252
1287
|
|
|
1253
|
-
Thu, 18 May 2023 13:11:08 GMT
|
|
1288
|
+
Thu, 18 May 2023 13:11:08 GMT
|
|
1254
1289
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.1..@fluentui/react-datepicker-compat_v0.1.2)
|
|
1255
1290
|
|
|
1256
1291
|
### Patches
|
|
@@ -1261,7 +1296,7 @@ Thu, 18 May 2023 13:11:08 GMT
|
|
|
1261
1296
|
|
|
1262
1297
|
## [0.1.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.1)
|
|
1263
1298
|
|
|
1264
|
-
Thu, 18 May 2023 00:39:05 GMT
|
|
1299
|
+
Thu, 18 May 2023 00:39:05 GMT
|
|
1265
1300
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.1.0..@fluentui/react-datepicker-compat_v0.1.1)
|
|
1266
1301
|
|
|
1267
1302
|
### Patches
|
|
@@ -1277,7 +1312,7 @@ Thu, 18 May 2023 00:39:05 GMT
|
|
|
1277
1312
|
|
|
1278
1313
|
## [0.1.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.1.0)
|
|
1279
1314
|
|
|
1280
|
-
Fri, 12 May 2023 20:28:26 GMT
|
|
1315
|
+
Fri, 12 May 2023 20:28:26 GMT
|
|
1281
1316
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.0.0..@fluentui/react-datepicker-compat_v0.1.0)
|
|
1282
1317
|
|
|
1283
1318
|
### Minor changes
|
|
@@ -1304,7 +1339,7 @@ Fri, 12 May 2023 20:28:26 GMT
|
|
|
1304
1339
|
|
|
1305
1340
|
## [0.0.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.0.0)
|
|
1306
1341
|
|
|
1307
|
-
Mon, 24 Apr 2023 08:12:34 GMT
|
|
1342
|
+
Mon, 24 Apr 2023 08:12:34 GMT
|
|
1308
1343
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.0.0-beta.2..@fluentui/react-datepicker-compat_v0.0.0)
|
|
1309
1344
|
|
|
1310
1345
|
### Minor changes
|
|
@@ -1323,7 +1358,7 @@ Mon, 24 Apr 2023 08:12:34 GMT
|
|
|
1323
1358
|
|
|
1324
1359
|
## [0.0.0-beta.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-datepicker-compat_v0.0.0-beta.2)
|
|
1325
1360
|
|
|
1326
|
-
Mon, 17 Apr 2023 17:53:49 GMT
|
|
1361
|
+
Mon, 17 Apr 2023 17:53:49 GMT
|
|
1327
1362
|
[Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-datepicker-compat_v0.0.0-beta.1..@fluentui/react-datepicker-compat_v0.0.0-beta.2)
|
|
1328
1363
|
|
|
1329
1364
|
### Changes
|
|
@@ -30,6 +30,7 @@ function useFocusLogic() {
|
|
|
30
30
|
];
|
|
31
31
|
}
|
|
32
32
|
function usePopupVisibility(props) {
|
|
33
|
+
'use no memo';
|
|
33
34
|
const [open, setOpen] = useControllableState({
|
|
34
35
|
initialState: false,
|
|
35
36
|
defaultState: props.defaultOpen,
|
|
@@ -92,6 +93,7 @@ const defaultParseDateFromString = (dateStr)=>{
|
|
|
92
93
|
* @param props - props from this instance of DatePicker
|
|
93
94
|
* @param ref - reference to root Input slot
|
|
94
95
|
*/ export const useDatePicker_unstable = (props, ref)=>{
|
|
96
|
+
'use no memo';
|
|
95
97
|
const { allowTextInput = false, allFocusable = false, borderless = false, dateTimeFormatter, defaultOpen = false, disableAutoFocus = true, firstDayOfWeek = DayOfWeek.Sunday, firstWeekOfYear = FirstWeekOfYear.FirstDay, formatDate = defaultFormatDate, highlightCurrentMonth = false, highlightSelectedMonth = false, initialPickerDate: initialPickerDateProp, inlinePopup = false, isMonthPickerVisible = true, maxDate, minDate, mountNode, onOpenChange, onSelectDate: onUserSelectDate, openOnClick = true, onValidationResult, parseDateFromString = defaultParseDateFromString, showCloseButton = false, showGoToToday = true, showMonthPickerAsOverlay = false, showWeekNumbers = false, strings = defaultDatePickerStrings, today, underlined = false, value, ...restOfProps } = props;
|
|
96
98
|
const initialPickerDate = React.useMemo(()=>initialPickerDateProp !== null && initialPickerDateProp !== void 0 ? initialPickerDateProp : new Date(), [
|
|
97
99
|
initialPickerDateProp
|
|
@@ -309,7 +311,6 @@ const defaultParseDateFromString = (dateStr)=>{
|
|
|
309
311
|
const [triggerWrapperRef, popupRef] = usePopupPositioning(props);
|
|
310
312
|
const inputRoot = slot.always(props.root, {
|
|
311
313
|
defaultProps: {
|
|
312
|
-
'aria-owns': open ? popupSurfaceId : undefined,
|
|
313
314
|
ref: triggerWrapperRef
|
|
314
315
|
},
|
|
315
316
|
elementType: 'span'
|
|
@@ -364,7 +365,7 @@ const defaultParseDateFromString = (dateStr)=>{
|
|
|
364
365
|
const { modalAttributes } = useModalAttributes({
|
|
365
366
|
trapFocus: true,
|
|
366
367
|
alwaysFocusable: true,
|
|
367
|
-
legacyTrapFocus:
|
|
368
|
+
legacyTrapFocus: true
|
|
368
369
|
});
|
|
369
370
|
const popupSurface = open ? slot.optional(props.popupSurface, {
|
|
370
371
|
renderByDefault: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useDatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar, compareDatePart, DayOfWeek, FirstWeekOfYear } from '@fluentui/react-calendar-compat';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport {\n mergeCallbacks,\n useControllableState,\n useEventCallback,\n useId,\n useMergedRefs,\n useOnClickOutside,\n useOnScrollOutside,\n slot,\n} from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nimport type { CalendarProps, ICalendar } from '@fluentui/react-calendar-compat';\nimport type { DatePickerProps, DatePickerState, DatePickerValidationResultData } from './DatePicker.types';\nimport type { InputProps, InputOnChangeData } from '@fluentui/react-input';\n\nfunction isDateOutOfBounds(date: Date, minDate?: Date, maxDate?: Date): boolean {\n return (!!minDate && compareDatePart(minDate!, date) > 0) || (!!maxDate && compareDatePart(maxDate!, date) < 0);\n}\n\nfunction useFocusLogic() {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const preventFocusOpeningPicker = React.useRef(false);\n\n const focus = React.useCallback(() => {\n inputRef.current?.focus?.();\n }, []);\n\n const preventNextFocusOpeningPicker = React.useCallback(() => {\n preventFocusOpeningPicker.current = true;\n }, []);\n\n return [focus, inputRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] as const;\n}\n\nfunction usePopupVisibility(props: DatePickerProps) {\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open,\n });\n const isMounted = React.useRef(false);\n\n React.useEffect(\n () => {\n if (isMounted.current && !open) {\n // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n props.onOpenChange?.(false);\n }\n isMounted.current = true;\n },\n // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.allowTextInput, open],\n );\n\n return [open, setOpen] as const;\n}\n\nfunction useSelectedDate({ formatDate, onSelectDate, value }: DatePickerProps) {\n const [selectedDate, setSelectedDateState] = useControllableState<Date | null | undefined>({\n initialState: null,\n state: value,\n });\n const [formattedDate, setFormattedDate] = React.useState(() => (value && formatDate ? formatDate(value) : ''));\n\n const setSelectedDate = (newDate: Date | null | undefined) => {\n onSelectDate?.(newDate);\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n\n React.useEffect(() => {\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [formatDate, value]);\n\n return [selectedDate, formattedDate, setSelectedDate, setFormattedDate] as const;\n}\n\nconst defaultFormatDate = (date?: Date) => (date ? date.toDateString() : '');\nconst defaultParseDateFromString = (dateStr: string) => {\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */\nexport const useDatePicker_unstable = (props: DatePickerProps, ref: React.Ref<HTMLInputElement>): DatePickerState => {\n const {\n allowTextInput = false,\n allFocusable = false,\n borderless = false,\n dateTimeFormatter,\n defaultOpen = false,\n disableAutoFocus = true,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n formatDate = defaultFormatDate,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n initialPickerDate: initialPickerDateProp,\n inlinePopup = false,\n isMonthPickerVisible = true,\n maxDate,\n minDate,\n mountNode,\n onOpenChange,\n onSelectDate: onUserSelectDate,\n openOnClick = true,\n onValidationResult,\n parseDateFromString = defaultParseDateFromString,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay = false,\n showWeekNumbers = false,\n strings = defaultDatePickerStrings,\n today,\n underlined = false,\n value,\n ...restOfProps\n } = props;\n\n const initialPickerDate = React.useMemo(() => initialPickerDateProp ?? new Date(), [initialPickerDateProp]);\n\n const calendar = React.useRef<ICalendar>(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value,\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n const required = fieldContext?.required ?? props.required;\n const defaultId = useId('datePicker-input');\n const popupSurfaceId = useId('datePicker-popupSurface');\n\n const validateTextInput = React.useCallback(\n (date: Date | null = null): void => {\n let error: DatePickerValidationResultData['error'];\n\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date ?? selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString!(formattedDate);\n\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n error = 'invalid-input';\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n error = 'out-of-bounds';\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n error = 'required-input';\n }\n\n onUserSelectDate?.(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n\n onValidationResult?.({ error });\n },\n [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationResult,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate,\n ],\n );\n\n const setOpen = React.useCallback(\n (newState: boolean) => {\n onOpenChange?.(newState);\n setOpenState(newState);\n\n if (!open && !props.disabled) {\n focus();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [focus, onOpenChange, props.disabled, setOpenState],\n );\n\n const dismissDatePickerPopup = React.useCallback(\n (newlySelectedDate?: Date | null): void => {\n if (open) {\n setOpen(false);\n\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n },\n [allowTextInput, open, setOpen, setSelectedDate, validateTextInput],\n );\n\n const showDatePickerPopup = React.useCallback((): void => {\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [open, preventNextFocusOpeningPicker, setOpen]);\n\n /**\n * Callback for closing the calendar callout\n */\n const calendarDismissed = React.useCallback(\n (newlySelectedDate?: Date): void => {\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n },\n [dismissDatePickerPopup, preventNextFocusOpeningPicker],\n );\n\n const onInputChange = React.useCallback(\n (ev: React.ChangeEvent<HTMLInputElement>, data: InputOnChangeData) => {\n const { value: newValue } = data;\n\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n\n setFormattedDate(newValue);\n }\n },\n [allowTextInput, dismissDatePickerPopup, open, setFormattedDate],\n );\n\n const onInputBlur: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n validateTextInput();\n }, [validateTextInput]);\n\n const onInputKeyDown = React.useCallback(\n (ev: React.KeyboardEvent<HTMLElement>): void => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n\n case ArrowDown:\n ev.preventDefault();\n if (!open) {\n showDatePickerPopup();\n }\n break;\n\n default:\n break;\n }\n },\n [calendarDismissed, dismissDatePickerPopup, open, props.allowTextInput, showDatePickerPopup, validateTextInput],\n );\n\n const onInputFocus: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n if (disableAutoFocus) {\n return;\n }\n\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [allowTextInput, disableAutoFocus, preventFocusOpeningPicker, showDatePickerPopup]);\n\n const onInputClick: React.MouseEventHandler<HTMLInputElement> = React.useCallback((): void => {\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((props.openOnClick || !props.disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n props.disabled,\n props.disableAutoFocus,\n props.openOnClick,\n showDatePickerPopup,\n ]);\n\n const onIconClick = (ev: React.MouseEvent<HTMLElement>): void => {\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n\n const inputAppearance: InputProps['appearance'] = underlined\n ? 'underline'\n : borderless\n ? 'filled-lighter'\n : 'outline';\n\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n\n const inputRoot = slot.always(props.root, {\n defaultProps: {\n 'aria-owns': open ? popupSurfaceId : undefined,\n ref: triggerWrapperRef,\n },\n elementType: 'span',\n });\n inputRoot.ref = useMergedRefs(inputRoot.ref, triggerWrapperRef);\n\n const input = slot.always(props.input, {\n elementType: 'input',\n });\n input.ref = useMergedRefs(input.ref, ref, rootRef);\n\n // Props to create a semantic but non-focusable button on the element with the click-to-open handler\n // Used for voice control and touch screen reader accessibility\n const inputLabelledBy = props['aria-labelledby'];\n const inputId = props.id ?? defaultId;\n const iconA11yProps = React.useMemo(\n () => ({\n role: 'button',\n 'aria-expanded': open,\n 'aria-labelledby': inputLabelledBy ?? inputId,\n }),\n [open, inputLabelledBy, inputId],\n );\n\n const contentAfter = slot.always(props.contentAfter || {}, {\n defaultProps: {\n children: <CalendarMonthRegular />,\n ...iconA11yProps,\n },\n elementType: 'span',\n });\n contentAfter.onClick = useEventCallback(mergeCallbacks(contentAfter.onClick, onIconClick));\n\n const root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n readOnly: !allowTextInput,\n role: 'combobox',\n id: inputId,\n },\n elementType: Input,\n });\n root.root = inputRoot;\n root.input = input;\n root.contentAfter = contentAfter;\n root.onChange = useEventCallback(mergeCallbacks(root.onChange, onInputChange));\n root.onBlur = useEventCallback(mergeCallbacks(root.onBlur, onInputBlur));\n root.onKeyDown = useEventCallback(mergeCallbacks(root.onKeyDown, onInputKeyDown));\n root.onFocus = useEventCallback(mergeCallbacks(root.onFocus, onInputFocus));\n root.onClick = useEventCallback(mergeCallbacks(root.onClick, onInputClick));\n\n const { modalAttributes } = useModalAttributes({ trapFocus: true, alwaysFocusable: true, legacyTrapFocus: false });\n const popupSurface = open\n ? slot.optional(props.popupSurface, {\n renderByDefault: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes,\n },\n elementType: 'div',\n })\n : undefined;\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n useOnScrollOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n }); // When the popup is opened, focus should go to the calendar.\n // In v8 this was done by focusing after the callout was positioned, but in v9 this can be simulated by using a\n // useEffect hook.\n React.useEffect(() => {\n if (open && !props.disabled && calendar.current) {\n calendar.current.focus();\n }\n }, [disableAutoFocus, open, props.disabled]);\n const calendarShorthand = slot.always(props.calendar, {\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate,\n },\n elementType: Calendar,\n });\n calendarShorthand.onDismiss = useEventCallback(mergeCallbacks(calendarShorthand.onDismiss, calendarDismissed));\n calendarShorthand.onSelectDate = useEventCallback(mergeCallbacks(calendarShorthand.onSelectDate, calendarDismissed));\n const state: DatePickerState = {\n disabled: !!props.disabled,\n inlinePopup,\n components: { root: Input, calendar: Calendar as React.FC<Partial<CalendarProps>>, popupSurface: 'div' },\n calendar: calendarShorthand,\n mountNode,\n root,\n popupSurface,\n };\n\n state.root.value = formattedDate;\n\n return state;\n};\n"],"names":["React","ArrowDown","Enter","Escape","Calendar","compareDatePart","DayOfWeek","FirstWeekOfYear","CalendarMonthRegular","defaultDatePickerStrings","Input","mergeCallbacks","useControllableState","useEventCallback","useId","useMergedRefs","useOnClickOutside","useOnScrollOutside","slot","useFieldContext_unstable","useFieldContext","useFluent_unstable","useFluent","useModalAttributes","usePopupPositioning","isDateOutOfBounds","date","minDate","maxDate","useFocusLogic","inputRef","useRef","preventFocusOpeningPicker","focus","useCallback","current","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","initialState","defaultState","defaultOpen","state","isMounted","useEffect","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","useDatePicker_unstable","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","Sunday","firstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","initialPickerDateProp","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","today","underlined","restOfProps","useMemo","calendar","rootRef","setOpenState","fieldContext","required","defaultId","popupSurfaceId","validateTextInput","error","isNaN","getTime","newState","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","preventDefault","stopPropagation","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","inputRoot","always","root","defaultProps","undefined","elementType","input","inputLabelledBy","inputId","id","iconA11yProps","role","contentAfter","children","onClick","appearance","readOnly","onChange","onBlur","onKeyDown","onFocus","modalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","targetDocument","element","callback","refs","calendarShorthand","componentRef","onDismiss","components"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["useDatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar, compareDatePart, DayOfWeek, FirstWeekOfYear } from '@fluentui/react-calendar-compat';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport {\n mergeCallbacks,\n useControllableState,\n useEventCallback,\n useId,\n useMergedRefs,\n useOnClickOutside,\n useOnScrollOutside,\n slot,\n} from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nimport type { CalendarProps, ICalendar } from '@fluentui/react-calendar-compat';\nimport type { DatePickerProps, DatePickerState, DatePickerValidationResultData } from './DatePicker.types';\nimport type { InputProps, InputOnChangeData } from '@fluentui/react-input';\n\nfunction isDateOutOfBounds(date: Date, minDate?: Date, maxDate?: Date): boolean {\n return (!!minDate && compareDatePart(minDate!, date) > 0) || (!!maxDate && compareDatePart(maxDate!, date) < 0);\n}\n\nfunction useFocusLogic() {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const preventFocusOpeningPicker = React.useRef(false);\n\n const focus = React.useCallback(() => {\n inputRef.current?.focus?.();\n }, []);\n\n const preventNextFocusOpeningPicker = React.useCallback(() => {\n preventFocusOpeningPicker.current = true;\n }, []);\n\n return [focus, inputRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] as const;\n}\n\nfunction usePopupVisibility(props: DatePickerProps) {\n 'use no memo';\n\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open,\n });\n const isMounted = React.useRef(false);\n\n React.useEffect(\n () => {\n if (isMounted.current && !open) {\n // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n props.onOpenChange?.(false);\n }\n isMounted.current = true;\n },\n // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [props.allowTextInput, open],\n );\n\n return [open, setOpen] as const;\n}\n\nfunction useSelectedDate({ formatDate, onSelectDate, value }: DatePickerProps) {\n const [selectedDate, setSelectedDateState] = useControllableState<Date | null | undefined>({\n initialState: null,\n state: value,\n });\n const [formattedDate, setFormattedDate] = React.useState(() => (value && formatDate ? formatDate(value) : ''));\n\n const setSelectedDate = (newDate: Date | null | undefined) => {\n onSelectDate?.(newDate);\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n\n React.useEffect(() => {\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [formatDate, value]);\n\n return [selectedDate, formattedDate, setSelectedDate, setFormattedDate] as const;\n}\n\nconst defaultFormatDate = (date?: Date) => (date ? date.toDateString() : '');\nconst defaultParseDateFromString = (dateStr: string) => {\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */\nexport const useDatePicker_unstable = (props: DatePickerProps, ref: React.Ref<HTMLInputElement>): DatePickerState => {\n 'use no memo';\n\n const {\n allowTextInput = false,\n allFocusable = false,\n borderless = false,\n dateTimeFormatter,\n defaultOpen = false,\n disableAutoFocus = true,\n firstDayOfWeek = DayOfWeek.Sunday,\n firstWeekOfYear = FirstWeekOfYear.FirstDay,\n formatDate = defaultFormatDate,\n highlightCurrentMonth = false,\n highlightSelectedMonth = false,\n initialPickerDate: initialPickerDateProp,\n inlinePopup = false,\n isMonthPickerVisible = true,\n maxDate,\n minDate,\n mountNode,\n onOpenChange,\n onSelectDate: onUserSelectDate,\n openOnClick = true,\n onValidationResult,\n parseDateFromString = defaultParseDateFromString,\n showCloseButton = false,\n showGoToToday = true,\n showMonthPickerAsOverlay = false,\n showWeekNumbers = false,\n strings = defaultDatePickerStrings,\n today,\n underlined = false,\n value,\n ...restOfProps\n } = props;\n\n const initialPickerDate = React.useMemo(() => initialPickerDateProp ?? new Date(), [initialPickerDateProp]);\n\n const calendar = React.useRef<ICalendar>(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value,\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n const required = fieldContext?.required ?? props.required;\n const defaultId = useId('datePicker-input');\n const popupSurfaceId = useId('datePicker-popupSurface');\n\n const validateTextInput = React.useCallback(\n (date: Date | null = null): void => {\n let error: DatePickerValidationResultData['error'];\n\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date ?? selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString!(formattedDate);\n\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n error = 'invalid-input';\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n error = 'out-of-bounds';\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n error = 'required-input';\n }\n\n onUserSelectDate?.(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n\n onValidationResult?.({ error });\n },\n [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationResult,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate,\n ],\n );\n\n const setOpen = React.useCallback(\n (newState: boolean) => {\n onOpenChange?.(newState);\n setOpenState(newState);\n\n if (!open && !props.disabled) {\n focus();\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [focus, onOpenChange, props.disabled, setOpenState],\n );\n\n const dismissDatePickerPopup = React.useCallback(\n (newlySelectedDate?: Date | null): void => {\n if (open) {\n setOpen(false);\n\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n },\n [allowTextInput, open, setOpen, setSelectedDate, validateTextInput],\n );\n\n const showDatePickerPopup = React.useCallback((): void => {\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [open, preventNextFocusOpeningPicker, setOpen]);\n\n /**\n * Callback for closing the calendar callout\n */\n const calendarDismissed = React.useCallback(\n (newlySelectedDate?: Date): void => {\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n },\n [dismissDatePickerPopup, preventNextFocusOpeningPicker],\n );\n\n const onInputChange = React.useCallback(\n (ev: React.ChangeEvent<HTMLInputElement>, data: InputOnChangeData) => {\n const { value: newValue } = data;\n\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n\n setFormattedDate(newValue);\n }\n },\n [allowTextInput, dismissDatePickerPopup, open, setFormattedDate],\n );\n\n const onInputBlur: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n validateTextInput();\n }, [validateTextInput]);\n\n const onInputKeyDown = React.useCallback(\n (ev: React.KeyboardEvent<HTMLElement>): void => {\n switch (ev.key) {\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n\n case ArrowDown:\n ev.preventDefault();\n if (!open) {\n showDatePickerPopup();\n }\n break;\n\n default:\n break;\n }\n },\n [calendarDismissed, dismissDatePickerPopup, open, props.allowTextInput, showDatePickerPopup, validateTextInput],\n );\n\n const onInputFocus: React.FocusEventHandler<HTMLInputElement> = React.useCallback((): void => {\n if (disableAutoFocus) {\n return;\n }\n\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [allowTextInput, disableAutoFocus, preventFocusOpeningPicker, showDatePickerPopup]);\n\n const onInputClick: React.MouseEventHandler<HTMLInputElement> = React.useCallback((): void => {\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((props.openOnClick || !props.disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n props.disabled,\n props.disableAutoFocus,\n props.openOnClick,\n showDatePickerPopup,\n ]);\n\n const onIconClick = (ev: React.MouseEvent<HTMLElement>): void => {\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n\n const inputAppearance: InputProps['appearance'] = underlined\n ? 'underline'\n : borderless\n ? 'filled-lighter'\n : 'outline';\n\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n\n const inputRoot = slot.always(props.root, {\n defaultProps: {\n ref: triggerWrapperRef,\n },\n elementType: 'span',\n });\n inputRoot.ref = useMergedRefs(inputRoot.ref, triggerWrapperRef);\n\n const input = slot.always(props.input, {\n elementType: 'input',\n });\n input.ref = useMergedRefs(input.ref, ref, rootRef);\n\n // Props to create a semantic but non-focusable button on the element with the click-to-open handler\n // Used for voice control and touch screen reader accessibility\n const inputLabelledBy = props['aria-labelledby'];\n const inputId = props.id ?? defaultId;\n const iconA11yProps = React.useMemo(\n () => ({\n role: 'button',\n 'aria-expanded': open,\n 'aria-labelledby': inputLabelledBy ?? inputId,\n }),\n [open, inputLabelledBy, inputId],\n );\n\n const contentAfter = slot.always(props.contentAfter || {}, {\n defaultProps: {\n children: <CalendarMonthRegular />,\n ...iconA11yProps,\n },\n elementType: 'span',\n });\n contentAfter.onClick = useEventCallback(mergeCallbacks(contentAfter.onClick, onIconClick));\n\n const root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n readOnly: !allowTextInput,\n role: 'combobox',\n id: inputId,\n },\n elementType: Input,\n });\n root.root = inputRoot;\n root.input = input;\n root.contentAfter = contentAfter;\n root.onChange = useEventCallback(mergeCallbacks(root.onChange, onInputChange));\n root.onBlur = useEventCallback(mergeCallbacks(root.onBlur, onInputBlur));\n root.onKeyDown = useEventCallback(mergeCallbacks(root.onKeyDown, onInputKeyDown));\n root.onFocus = useEventCallback(mergeCallbacks(root.onFocus, onInputFocus));\n root.onClick = useEventCallback(mergeCallbacks(root.onClick, onInputClick));\n\n const { modalAttributes } = useModalAttributes({ trapFocus: true, alwaysFocusable: true, legacyTrapFocus: true });\n const popupSurface = open\n ? slot.optional(props.popupSurface, {\n renderByDefault: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes,\n },\n elementType: 'div',\n })\n : undefined;\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n });\n useOnScrollOutside({\n element: targetDocument,\n callback: ev => dismissDatePickerPopup(),\n refs: [triggerWrapperRef, popupRef],\n disabled: !open,\n }); // When the popup is opened, focus should go to the calendar.\n // In v8 this was done by focusing after the callout was positioned, but in v9 this can be simulated by using a\n // useEffect hook.\n React.useEffect(() => {\n if (open && !props.disabled && calendar.current) {\n calendar.current.focus();\n }\n }, [disableAutoFocus, open, props.disabled]);\n const calendarShorthand = slot.always(props.calendar, {\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate,\n },\n elementType: Calendar,\n });\n calendarShorthand.onDismiss = useEventCallback(mergeCallbacks(calendarShorthand.onDismiss, calendarDismissed));\n calendarShorthand.onSelectDate = useEventCallback(mergeCallbacks(calendarShorthand.onSelectDate, calendarDismissed));\n const state: DatePickerState = {\n disabled: !!props.disabled,\n inlinePopup,\n components: { root: Input, calendar: Calendar as React.FC<Partial<CalendarProps>>, popupSurface: 'div' },\n calendar: calendarShorthand,\n mountNode,\n root,\n popupSurface,\n };\n\n state.root.value = formattedDate;\n\n return state;\n};\n"],"names":["React","ArrowDown","Enter","Escape","Calendar","compareDatePart","DayOfWeek","FirstWeekOfYear","CalendarMonthRegular","defaultDatePickerStrings","Input","mergeCallbacks","useControllableState","useEventCallback","useId","useMergedRefs","useOnClickOutside","useOnScrollOutside","slot","useFieldContext_unstable","useFieldContext","useFluent_unstable","useFluent","useModalAttributes","usePopupPositioning","isDateOutOfBounds","date","minDate","maxDate","useFocusLogic","inputRef","useRef","preventFocusOpeningPicker","focus","useCallback","current","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","initialState","defaultState","defaultOpen","state","isMounted","useEffect","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","useDatePicker_unstable","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","Sunday","firstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","initialPickerDateProp","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","today","underlined","restOfProps","useMemo","calendar","rootRef","setOpenState","fieldContext","required","defaultId","popupSurfaceId","validateTextInput","error","isNaN","getTime","newState","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","preventDefault","stopPropagation","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","inputRoot","always","root","defaultProps","elementType","input","inputLabelledBy","inputId","id","iconA11yProps","role","contentAfter","children","onClick","appearance","undefined","readOnly","onChange","onBlur","onKeyDown","onFocus","modalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","targetDocument","element","callback","refs","calendarShorthand","componentRef","onDismiss","components"],"mappings":"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"}
|
|
@@ -26,6 +26,8 @@ const usePopupSurfaceClassName = /*#__PURE__*/__resetStyles("r1ytv1z8", null, ["
|
|
|
26
26
|
* Apply styling to the DatePicker slots based on the state
|
|
27
27
|
*/
|
|
28
28
|
export const useDatePickerStyles_unstable = state => {
|
|
29
|
+
'use no memo';
|
|
30
|
+
|
|
29
31
|
const styles = useStyles();
|
|
30
32
|
const popupSurfaceClassName = usePopupSurfaceClassName();
|
|
31
33
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__resetStyles","__styles","mergeClasses","tokens","typographyStyles","datePickerClassNames","root","calendar","popupSurface","useStyles","base","qhf8xq","Bceei9c","xfaavh","disabled","inline","Bj3rh1h","d","usePopupSurfaceClassName","useDatePickerStyles_unstable","state","styles","popupSurfaceClassName","inlinePopup","className"],"sources":["useDatePickerStyles.styles.js"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nexport const datePickerClassNames = {\n root: 'fui-DatePicker',\n calendar: 'fui-DatePicker__calendar',\n popupSurface: 'fui-DatePicker__popupSurface'\n};\nconst useStyles = makeStyles({\n base: {\n position: 'relative',\n cursor: 'pointer',\n '& input': {\n cursor: 'pointer'\n }\n },\n disabled: {\n cursor: 'default',\n '& input': {\n cursor: 'default'\n }\n },\n inline: {\n // When rendering inline, the popupSurface will be rendered under relatively positioned elements such as Input.\n // This is due to the surface being positioned as absolute, therefore zIndex: 1 ensures that won't happen.\n zIndex: 1\n }\n});\nconst usePopupSurfaceClassName = makeResetStyles({\n backgroundColor: tokens.colorNeutralBackground1,\n boxShadow: tokens.shadow16,\n borderRadius: tokens.borderRadiusMedium,\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: tokens.colorTransparentStroke,\n display: 'inline-flex',\n color: tokens.colorNeutralForeground1,\n ...typographyStyles.body1\n});\n/**\n * Apply styling to the DatePicker slots based on the state\n */ export const useDatePickerStyles_unstable = (state)=>{\n const styles = useStyles();\n const popupSurfaceClassName = usePopupSurfaceClassName();\n const { disabled, inlinePopup } = state;\n state.root.className = mergeClasses(datePickerClassNames.root, styles.base, disabled && styles.disabled, state.root.className);\n if (state.popupSurface) {\n state.popupSurface.className = mergeClasses(datePickerClassNames.popupSurface, popupSurfaceClassName, state.popupSurface.className, inlinePopup && styles.inline);\n }\n state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);\n return state;\n};\n"],"mappings":"AAAA,SAAAA,aAAA,EAAAC,QAAA,EAAsCC,YAAY,QAAQ,gBAAgB;AAC1E,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,uBAAuB;AAChE,OAAO,MAAMC,oBAAoB,GAAG;EAChCC,IAAI,EAAE,gBAAgB;EACtBC,QAAQ,EAAE,0BAA0B;EACpCC,YAAY,EAAE;AAClB,CAAC;AACD,MAAMC,SAAS,gBAAGR,QAAA;EAAAS,IAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;EAAA;EAAAC,QAAA;IAAAF,OAAA;IAAAC,MAAA;EAAA;EAAAE,MAAA;IAAAC,OAAA;EAAA;AAAA;EAAAC,CAAA;AAAA,CAmBjB,CAAC;AACF,MAAMC,wBAAwB,gBAAGlB,aAAA,0aAUhC,CAAC;AACF;AACA;AACA;AAAI,OAAO,MAAMmB,4BAA4B,GAAIC,KAAK,IAAG;EACrD,MAAMC,MAAM,GAAGZ,SAAS,CAAC,CAAC;EAC1B,MAAMa,qBAAqB,GAAGJ,wBAAwB,CAAC,CAAC;EACxD,MAAM;IAAEJ,QAAQ;IAAES;EAAY,CAAC,GAAGH,KAAK;EACvCA,KAAK,CAACd,IAAI,CAACkB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACC,IAAI,EAAEe,MAAM,CAACX,IAAI,EAAEI,QAAQ,IAAIO,MAAM,CAACP,QAAQ,EAAEM,KAAK,CAACd,IAAI,CAACkB,SAAS,CAAC;EAC9H,IAAIJ,KAAK,CAACZ,YAAY,EAAE;IACpBY,KAAK,CAACZ,YAAY,CAACgB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACG,YAAY,EAAEc,qBAAqB,EAAEF,KAAK,CAACZ,YAAY,CAACgB,SAAS,EAAED,WAAW,IAAIF,MAAM,CAACN,MAAM,CAAC;EACrK;EACAK,KAAK,CAACb,QAAQ,CAACiB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACE,QAAQ,EAAEa,KAAK,CAACb,QAAQ,CAACiB,SAAS,CAAC;EAChG,OAAOJ,KAAK;AAChB,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__resetStyles","__styles","mergeClasses","tokens","typographyStyles","datePickerClassNames","root","calendar","popupSurface","useStyles","base","qhf8xq","Bceei9c","xfaavh","disabled","inline","Bj3rh1h","d","usePopupSurfaceClassName","useDatePickerStyles_unstable","state","styles","popupSurfaceClassName","inlinePopup","className"],"sources":["useDatePickerStyles.styles.js"],"sourcesContent":["import { makeResetStyles, makeStyles, mergeClasses } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nexport const datePickerClassNames = {\n root: 'fui-DatePicker',\n calendar: 'fui-DatePicker__calendar',\n popupSurface: 'fui-DatePicker__popupSurface'\n};\nconst useStyles = makeStyles({\n base: {\n position: 'relative',\n cursor: 'pointer',\n '& input': {\n cursor: 'pointer'\n }\n },\n disabled: {\n cursor: 'default',\n '& input': {\n cursor: 'default'\n }\n },\n inline: {\n // When rendering inline, the popupSurface will be rendered under relatively positioned elements such as Input.\n // This is due to the surface being positioned as absolute, therefore zIndex: 1 ensures that won't happen.\n zIndex: 1\n }\n});\nconst usePopupSurfaceClassName = makeResetStyles({\n backgroundColor: tokens.colorNeutralBackground1,\n boxShadow: tokens.shadow16,\n borderRadius: tokens.borderRadiusMedium,\n borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: tokens.colorTransparentStroke,\n display: 'inline-flex',\n color: tokens.colorNeutralForeground1,\n ...typographyStyles.body1\n});\n/**\n * Apply styling to the DatePicker slots based on the state\n */ export const useDatePickerStyles_unstable = (state)=>{\n 'use no memo';\n const styles = useStyles();\n const popupSurfaceClassName = usePopupSurfaceClassName();\n const { disabled, inlinePopup } = state;\n state.root.className = mergeClasses(datePickerClassNames.root, styles.base, disabled && styles.disabled, state.root.className);\n if (state.popupSurface) {\n state.popupSurface.className = mergeClasses(datePickerClassNames.popupSurface, popupSurfaceClassName, state.popupSurface.className, inlinePopup && styles.inline);\n }\n state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);\n return state;\n};\n"],"mappings":"AAAA,SAAAA,aAAA,EAAAC,QAAA,EAAsCC,YAAY,QAAQ,gBAAgB;AAC1E,SAASC,MAAM,EAAEC,gBAAgB,QAAQ,uBAAuB;AAChE,OAAO,MAAMC,oBAAoB,GAAG;EAChCC,IAAI,EAAE,gBAAgB;EACtBC,QAAQ,EAAE,0BAA0B;EACpCC,YAAY,EAAE;AAClB,CAAC;AACD,MAAMC,SAAS,gBAAGR,QAAA;EAAAS,IAAA;IAAAC,MAAA;IAAAC,OAAA;IAAAC,MAAA;EAAA;EAAAC,QAAA;IAAAF,OAAA;IAAAC,MAAA;EAAA;EAAAE,MAAA;IAAAC,OAAA;EAAA;AAAA;EAAAC,CAAA;AAAA,CAmBjB,CAAC;AACF,MAAMC,wBAAwB,gBAAGlB,aAAA,0aAUhC,CAAC;AACF;AACA;AACA;AAAI,OAAO,MAAMmB,4BAA4B,GAAIC,KAAK,IAAG;EACrD,aAAa;;EACb,MAAMC,MAAM,GAAGZ,SAAS,CAAC,CAAC;EAC1B,MAAMa,qBAAqB,GAAGJ,wBAAwB,CAAC,CAAC;EACxD,MAAM;IAAEJ,QAAQ;IAAES;EAAY,CAAC,GAAGH,KAAK;EACvCA,KAAK,CAACd,IAAI,CAACkB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACC,IAAI,EAAEe,MAAM,CAACX,IAAI,EAAEI,QAAQ,IAAIO,MAAM,CAACP,QAAQ,EAAEM,KAAK,CAACd,IAAI,CAACkB,SAAS,CAAC;EAC9H,IAAIJ,KAAK,CAACZ,YAAY,EAAE;IACpBY,KAAK,CAACZ,YAAY,CAACgB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACG,YAAY,EAAEc,qBAAqB,EAAEF,KAAK,CAACZ,YAAY,CAACgB,SAAS,EAAED,WAAW,IAAIF,MAAM,CAACN,MAAM,CAAC;EACrK;EACAK,KAAK,CAACb,QAAQ,CAACiB,SAAS,GAAGtB,YAAY,CAACG,oBAAoB,CAACE,QAAQ,EAAEa,KAAK,CAACb,QAAQ,CAACiB,SAAS,CAAC;EAChG,OAAOJ,KAAK;AAChB,CAAC","ignoreList":[]}
|
|
@@ -41,6 +41,7 @@ function useFocusLogic() {
|
|
|
41
41
|
];
|
|
42
42
|
}
|
|
43
43
|
function usePopupVisibility(props) {
|
|
44
|
+
'use no memo';
|
|
44
45
|
const [open, setOpen] = (0, _reactutilities.useControllableState)({
|
|
45
46
|
initialState: false,
|
|
46
47
|
defaultState: props.defaultOpen,
|
|
@@ -93,6 +94,7 @@ const defaultParseDateFromString = (dateStr)=>{
|
|
|
93
94
|
return date ? new Date(date) : null;
|
|
94
95
|
};
|
|
95
96
|
const useDatePicker_unstable = (props, ref)=>{
|
|
97
|
+
'use no memo';
|
|
96
98
|
const { allowTextInput = false, allFocusable = false, borderless = false, dateTimeFormatter, defaultOpen = false, disableAutoFocus = true, firstDayOfWeek = _reactcalendarcompat.DayOfWeek.Sunday, firstWeekOfYear = _reactcalendarcompat.FirstWeekOfYear.FirstDay, formatDate = defaultFormatDate, highlightCurrentMonth = false, highlightSelectedMonth = false, initialPickerDate: initialPickerDateProp, inlinePopup = false, isMonthPickerVisible = true, maxDate, minDate, mountNode, onOpenChange, onSelectDate: onUserSelectDate, openOnClick = true, onValidationResult, parseDateFromString = defaultParseDateFromString, showCloseButton = false, showGoToToday = true, showMonthPickerAsOverlay = false, showWeekNumbers = false, strings = _defaults.defaultDatePickerStrings, today, underlined = false, value, ...restOfProps } = props;
|
|
97
99
|
const initialPickerDate = _react.useMemo(()=>initialPickerDateProp !== null && initialPickerDateProp !== void 0 ? initialPickerDateProp : new Date(), [
|
|
98
100
|
initialPickerDateProp
|
|
@@ -309,7 +311,6 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
309
311
|
const [triggerWrapperRef, popupRef] = (0, _usePopupPositioning.usePopupPositioning)(props);
|
|
310
312
|
const inputRoot = _reactutilities.slot.always(props.root, {
|
|
311
313
|
defaultProps: {
|
|
312
|
-
'aria-owns': open ? popupSurfaceId : undefined,
|
|
313
314
|
ref: triggerWrapperRef
|
|
314
315
|
},
|
|
315
316
|
elementType: 'span'
|
|
@@ -364,7 +365,7 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
364
365
|
const { modalAttributes } = (0, _reacttabster.useModalAttributes)({
|
|
365
366
|
trapFocus: true,
|
|
366
367
|
alwaysFocusable: true,
|
|
367
|
-
legacyTrapFocus:
|
|
368
|
+
legacyTrapFocus: true
|
|
368
369
|
});
|
|
369
370
|
const popupSurface = open ? _reactutilities.slot.optional(props.popupSurface, {
|
|
370
371
|
renderByDefault: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useDatePicker.js"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar, compareDatePart, DayOfWeek, FirstWeekOfYear } from '@fluentui/react-calendar-compat';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport { mergeCallbacks, useControllableState, useEventCallback, useId, useMergedRefs, useOnClickOutside, useOnScrollOutside, slot } from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nfunction isDateOutOfBounds(date, minDate, maxDate) {\n return !!minDate && compareDatePart(minDate, date) > 0 || !!maxDate && compareDatePart(maxDate, date) < 0;\n}\nfunction useFocusLogic() {\n const inputRef = React.useRef(null);\n const preventFocusOpeningPicker = React.useRef(false);\n const focus = React.useCallback(()=>{\n var _inputRef_current_focus, _inputRef_current;\n (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : (_inputRef_current_focus = _inputRef_current.focus) === null || _inputRef_current_focus === void 0 ? void 0 : _inputRef_current_focus.call(_inputRef_current);\n }, []);\n const preventNextFocusOpeningPicker = React.useCallback(()=>{\n preventFocusOpeningPicker.current = true;\n }, []);\n return [\n focus,\n inputRef,\n preventFocusOpeningPicker,\n preventNextFocusOpeningPicker\n ];\n}\nfunction usePopupVisibility(props) {\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open\n });\n const isMounted = React.useRef(false);\n React.useEffect(()=>{\n if (isMounted.current && !open) {\n var // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n _props_onOpenChange;\n (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, false);\n }\n isMounted.current = true;\n }, // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n props.allowTextInput,\n open\n ]);\n return [\n open,\n setOpen\n ];\n}\nfunction useSelectedDate({ formatDate, onSelectDate, value }) {\n const [selectedDate, setSelectedDateState] = useControllableState({\n initialState: null,\n state: value\n });\n const [formattedDate, setFormattedDate] = React.useState(()=>value && formatDate ? formatDate(value) : '');\n const setSelectedDate = (newDate)=>{\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(newDate);\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n React.useEffect(()=>{\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [\n formatDate,\n value\n ]);\n return [\n selectedDate,\n formattedDate,\n setSelectedDate,\n setFormattedDate\n ];\n}\nconst defaultFormatDate = (date)=>date ? date.toDateString() : '';\nconst defaultParseDateFromString = (dateStr)=>{\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */ export const useDatePicker_unstable = (props, ref)=>{\n const { allowTextInput = false, allFocusable = false, borderless = false, dateTimeFormatter, defaultOpen = false, disableAutoFocus = true, firstDayOfWeek = DayOfWeek.Sunday, firstWeekOfYear = FirstWeekOfYear.FirstDay, formatDate = defaultFormatDate, highlightCurrentMonth = false, highlightSelectedMonth = false, initialPickerDate: initialPickerDateProp, inlinePopup = false, isMonthPickerVisible = true, maxDate, minDate, mountNode, onOpenChange, onSelectDate: onUserSelectDate, openOnClick = true, onValidationResult, parseDateFromString = defaultParseDateFromString, showCloseButton = false, showGoToToday = true, showMonthPickerAsOverlay = false, showWeekNumbers = false, strings = defaultDatePickerStrings, today, underlined = false, value, ...restOfProps } = props;\n const initialPickerDate = React.useMemo(()=>initialPickerDateProp !== null && initialPickerDateProp !== void 0 ? initialPickerDateProp : new Date(), [\n initialPickerDateProp\n ]);\n const calendar = React.useRef(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n var _fieldContext_required;\n const required = (_fieldContext_required = fieldContext === null || fieldContext === void 0 ? void 0 : fieldContext.required) !== null && _fieldContext_required !== void 0 ? _fieldContext_required : props.required;\n const defaultId = useId('datePicker-input');\n const popupSurfaceId = useId('datePicker-popupSurface');\n const validateTextInput = React.useCallback((date = null)=>{\n let error;\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date !== null && date !== void 0 ? date : selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString(formattedDate);\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n error = 'invalid-input';\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n error = 'out-of-bounds';\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n error = 'required-input';\n }\n onUserSelectDate === null || onUserSelectDate === void 0 ? void 0 : onUserSelectDate(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n onValidationResult === null || onValidationResult === void 0 ? void 0 : onValidationResult({\n error\n });\n }, [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationResult,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate\n ]);\n const setOpen = React.useCallback((newState)=>{\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(newState);\n setOpenState(newState);\n if (!open && !props.disabled) {\n focus();\n }\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n focus,\n onOpenChange,\n props.disabled,\n setOpenState\n ]);\n const dismissDatePickerPopup = React.useCallback((newlySelectedDate)=>{\n if (open) {\n setOpen(false);\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n }, [\n allowTextInput,\n open,\n setOpen,\n setSelectedDate,\n validateTextInput\n ]);\n const showDatePickerPopup = React.useCallback(()=>{\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [\n open,\n preventNextFocusOpeningPicker,\n setOpen\n ]);\n /**\n * Callback for closing the calendar callout\n */ const calendarDismissed = React.useCallback((newlySelectedDate)=>{\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n }, [\n dismissDatePickerPopup,\n preventNextFocusOpeningPicker\n ]);\n const onInputChange = React.useCallback((ev, data)=>{\n const { value: newValue } = data;\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n setFormattedDate(newValue);\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n setFormattedDate\n ]);\n const onInputBlur = React.useCallback(()=>{\n validateTextInput();\n }, [\n validateTextInput\n ]);\n const onInputKeyDown = React.useCallback((ev)=>{\n switch(ev.key){\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n case ArrowDown:\n ev.preventDefault();\n if (!open) {\n showDatePickerPopup();\n }\n break;\n default:\n break;\n }\n }, [\n calendarDismissed,\n dismissDatePickerPopup,\n open,\n props.allowTextInput,\n showDatePickerPopup,\n validateTextInput\n ]);\n const onInputFocus = React.useCallback(()=>{\n if (disableAutoFocus) {\n return;\n }\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [\n allowTextInput,\n disableAutoFocus,\n preventFocusOpeningPicker,\n showDatePickerPopup\n ]);\n const onInputClick = React.useCallback(()=>{\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((props.openOnClick || !props.disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n props.disabled,\n props.disableAutoFocus,\n props.openOnClick,\n showDatePickerPopup\n ]);\n const onIconClick = (ev)=>{\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n const inputAppearance = underlined ? 'underline' : borderless ? 'filled-lighter' : 'outline';\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n const inputRoot = slot.always(props.root, {\n defaultProps: {\n 'aria-owns': open ? popupSurfaceId : undefined,\n ref: triggerWrapperRef\n },\n elementType: 'span'\n });\n inputRoot.ref = useMergedRefs(inputRoot.ref, triggerWrapperRef);\n const input = slot.always(props.input, {\n elementType: 'input'\n });\n input.ref = useMergedRefs(input.ref, ref, rootRef);\n // Props to create a semantic but non-focusable button on the element with the click-to-open handler\n // Used for voice control and touch screen reader accessibility\n const inputLabelledBy = props['aria-labelledby'];\n var _props_id;\n const inputId = (_props_id = props.id) !== null && _props_id !== void 0 ? _props_id : defaultId;\n const iconA11yProps = React.useMemo(()=>({\n role: 'button',\n 'aria-expanded': open,\n 'aria-labelledby': inputLabelledBy !== null && inputLabelledBy !== void 0 ? inputLabelledBy : inputId\n }), [\n open,\n inputLabelledBy,\n inputId\n ]);\n const contentAfter = slot.always(props.contentAfter || {}, {\n defaultProps: {\n children: /*#__PURE__*/ React.createElement(CalendarMonthRegular, null),\n ...iconA11yProps\n },\n elementType: 'span'\n });\n contentAfter.onClick = useEventCallback(mergeCallbacks(contentAfter.onClick, onIconClick));\n const root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n readOnly: !allowTextInput,\n role: 'combobox',\n id: inputId\n },\n elementType: Input\n });\n root.root = inputRoot;\n root.input = input;\n root.contentAfter = contentAfter;\n root.onChange = useEventCallback(mergeCallbacks(root.onChange, onInputChange));\n root.onBlur = useEventCallback(mergeCallbacks(root.onBlur, onInputBlur));\n root.onKeyDown = useEventCallback(mergeCallbacks(root.onKeyDown, onInputKeyDown));\n root.onFocus = useEventCallback(mergeCallbacks(root.onFocus, onInputFocus));\n root.onClick = useEventCallback(mergeCallbacks(root.onClick, onInputClick));\n const { modalAttributes } = useModalAttributes({\n trapFocus: true,\n alwaysFocusable: true,\n legacyTrapFocus: false\n });\n const popupSurface = open ? slot.optional(props.popupSurface, {\n renderByDefault: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes\n },\n elementType: 'div'\n }) : undefined;\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: (ev)=>dismissDatePickerPopup(),\n refs: [\n triggerWrapperRef,\n popupRef\n ],\n disabled: !open\n });\n useOnScrollOutside({\n element: targetDocument,\n callback: (ev)=>dismissDatePickerPopup(),\n refs: [\n triggerWrapperRef,\n popupRef\n ],\n disabled: !open\n }); // When the popup is opened, focus should go to the calendar.\n // In v8 this was done by focusing after the callout was positioned, but in v9 this can be simulated by using a\n // useEffect hook.\n React.useEffect(()=>{\n if (open && !props.disabled && calendar.current) {\n calendar.current.focus();\n }\n }, [\n disableAutoFocus,\n open,\n props.disabled\n ]);\n const calendarShorthand = slot.always(props.calendar, {\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate\n },\n elementType: Calendar\n });\n calendarShorthand.onDismiss = useEventCallback(mergeCallbacks(calendarShorthand.onDismiss, calendarDismissed));\n calendarShorthand.onSelectDate = useEventCallback(mergeCallbacks(calendarShorthand.onSelectDate, calendarDismissed));\n const state = {\n disabled: !!props.disabled,\n inlinePopup,\n components: {\n root: Input,\n calendar: Calendar,\n popupSurface: 'div'\n },\n calendar: calendarShorthand,\n mountNode,\n root,\n popupSurface\n };\n state.root.value = formattedDate;\n return state;\n};\n"],"names":["useDatePicker_unstable","isDateOutOfBounds","date","minDate","maxDate","compareDatePart","useFocusLogic","inputRef","React","useRef","preventFocusOpeningPicker","focus","useCallback","_inputRef_current_focus","_inputRef_current","current","call","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","useControllableState","initialState","defaultState","defaultOpen","state","isMounted","useEffect","_props_onOpenChange","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","DayOfWeek","Sunday","firstWeekOfYear","FirstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","initialPickerDateProp","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","defaultDatePickerStrings","today","underlined","restOfProps","useMemo","calendar","rootRef","setOpenState","fieldContext","useFieldContext","_fieldContext_required","required","defaultId","useId","popupSurfaceId","validateTextInput","error","isNaN","getTime","newState","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","Enter","preventDefault","stopPropagation","Escape","ArrowDown","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","usePopupPositioning","inputRoot","slot","always","root","defaultProps","undefined","elementType","useMergedRefs","input","inputLabelledBy","_props_id","inputId","id","iconA11yProps","role","contentAfter","children","createElement","CalendarMonthRegular","onClick","useEventCallback","mergeCallbacks","appearance","readOnly","Input","onChange","onBlur","onKeyDown","onFocus","modalAttributes","useModalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","targetDocument","useFluent","useOnClickOutside","element","callback","refs","useOnScrollOutside","calendarShorthand","componentRef","Calendar","onDismiss","components"],"mappings":";;;;+BA6FiBA;;;eAAAA;;;;iEA7FM;8BACkB;qCAC6B;4BACjC;0BACI;4BACnB;gCACoH;4BAC9E;qCACZ;8BACb;qCACC;AACpC,SAASC,kBAAkBC,IAAI,EAAEC,OAAO,EAAEC,OAAO;IAC7C,OAAO,CAAC,CAACD,WAAWE,IAAAA,oCAAe,EAACF,SAASD,QAAQ,KAAK,CAAC,CAACE,WAAWC,IAAAA,oCAAe,EAACD,SAASF,QAAQ;AAC5G;AACA,SAASI;IACL,MAAMC,WAAWC,OAAMC,MAAM,CAAC;IAC9B,MAAMC,4BAA4BF,OAAMC,MAAM,CAAC;IAC/C,MAAME,QAAQH,OAAMI,WAAW,CAAC;QAC5B,IAAIC,yBAAyBC;QAC5BA,CAAAA,oBAAoBP,SAASQ,OAAO,AAAD,MAAO,QAAQD,sBAAsB,KAAK,IAAI,KAAK,IAAI,AAACD,CAAAA,0BAA0BC,kBAAkBH,KAAK,AAAD,MAAO,QAAQE,4BAA4B,KAAK,IAAI,KAAK,IAAIA,wBAAwBG,IAAI,CAACF;IAC1O,GAAG,EAAE;IACL,MAAMG,gCAAgCT,OAAMI,WAAW,CAAC;QACpDF,0BAA0BK,OAAO,GAAG;IACxC,GAAG,EAAE;IACL,OAAO;QACHJ;QACAJ;QACAG;QACAO;KACH;AACL;AACA,SAASC,mBAAmBC,KAAK;IAC7B,MAAM,CAACC,MAAMC,QAAQ,GAAGC,IAAAA,oCAAoB,EAAC;QACzCC,cAAc;QACdC,cAAcL,MAAMM,WAAW;QAC/BC,OAAOP,MAAMC,IAAI;IACrB;IACA,MAAMO,YAAYnB,OAAMC,MAAM,CAAC;IAC/BD,OAAMoB,SAAS,CAAC;QACZ,IAAID,UAAUZ,OAAO,IAAI,CAACK,MAAM;YAC5B,IACAS;YACCA,CAAAA,sBAAsBV,MAAMW,YAAY,AAAD,MAAO,QAAQD,wBAAwB,KAAK,IAAI,KAAK,IAAIA,oBAAoBb,IAAI,CAACG,OAAO;QACrI;QACAQ,UAAUZ,OAAO,GAAG;IACxB,GACA,uDAAuD;IACvD;QACII,MAAMY,cAAc;QACpBX;KACH;IACD,OAAO;QACHA;QACAC;KACH;AACL;AACA,SAASW,gBAAgB,EAAEC,UAAU,EAAEC,YAAY,EAAEC,KAAK,EAAE;IACxD,MAAM,CAACC,cAAcC,qBAAqB,GAAGf,IAAAA,oCAAoB,EAAC;QAC9DC,cAAc;QACdG,OAAOS;IACX;IACA,MAAM,CAACG,eAAeC,iBAAiB,GAAG/B,OAAMgC,QAAQ,CAAC,IAAIL,SAASF,aAAaA,WAAWE,SAAS;IACvG,MAAMM,kBAAkB,CAACC;QACrBR,iBAAiB,QAAQA,iBAAiB,KAAK,IAAI,KAAK,IAAIA,aAAaQ;QACzEL,qBAAqBK;QACrBH,iBAAiBG,WAAWT,aAAaA,WAAWS,WAAW;IACnE;IACAlC,OAAMoB,SAAS,CAAC;QACZW,iBAAiBJ,SAASF,aAAaA,WAAWE,SAAS;IAC/D,GAAG;QACCF;QACAE;KACH;IACD,OAAO;QACHC;QACAE;QACAG;QACAF;KACH;AACL;AACA,MAAMI,oBAAoB,CAACzC,OAAOA,OAAOA,KAAK0C,YAAY,KAAK;AAC/D,MAAMC,6BAA6B,CAACC;IAChC,MAAM5C,OAAO6C,KAAKC,KAAK,CAACF;IACxB,OAAO5C,OAAO,IAAI6C,KAAK7C,QAAQ;AACnC;AASW,MAAMF,yBAAyB,CAACmB,OAAO8B;IAC9C,MAAM,EAAElB,iBAAiB,KAAK,EAAEmB,eAAe,KAAK,EAAEC,aAAa,KAAK,EAAEC,iBAAiB,EAAE3B,cAAc,KAAK,EAAE4B,mBAAmB,IAAI,EAAEC,iBAAiBC,8BAAS,CAACC,MAAM,EAAEC,kBAAkBC,oCAAe,CAACC,QAAQ,EAAE1B,aAAaU,iBAAiB,EAAEiB,wBAAwB,KAAK,EAAEC,yBAAyB,KAAK,EAAEC,mBAAmBC,qBAAqB,EAAEC,cAAc,KAAK,EAAEC,uBAAuB,IAAI,EAAE7D,OAAO,EAAED,OAAO,EAAE+D,SAAS,EAAEpC,YAAY,EAAEI,cAAciC,gBAAgB,EAAEC,cAAc,IAAI,EAAEC,kBAAkB,EAAEC,sBAAsBzB,0BAA0B,EAAE0B,kBAAkB,KAAK,EAAEC,gBAAgB,IAAI,EAAEC,2BAA2B,KAAK,EAAEC,kBAAkB,KAAK,EAAEC,UAAUC,kCAAwB,EAAEC,KAAK,EAAEC,aAAa,KAAK,EAAE3C,KAAK,EAAE,GAAG4C,aAAa,GAAG5D;IAC7vB,MAAM2C,oBAAoBtD,OAAMwE,OAAO,CAAC,IAAIjB,0BAA0B,QAAQA,0BAA0B,KAAK,IAAIA,wBAAwB,IAAIhB,QAAQ;QACjJgB;KACH;IACD,MAAMkB,WAAWzE,OAAMC,MAAM,CAAC;IAC9B,MAAM,CAACE,OAAOuE,SAASxE,2BAA2BO,8BAA8B,GAAGX;IACnF,MAAM,CAAC8B,cAAcE,eAAeG,iBAAiBF,iBAAiB,GAAGP,gBAAgB;QACrFC;QACAC,cAAciC;QACdhC;IACJ;IACA,MAAM,CAACf,MAAM+D,aAAa,GAAGjE,mBAAmBC;IAChD,MAAMiE,eAAeC,IAAAA,oCAAe;IACpC,IAAIC;IACJ,MAAMC,WAAW,AAACD,CAAAA,yBAAyBF,iBAAiB,QAAQA,iBAAiB,KAAK,IAAI,KAAK,IAAIA,aAAaG,QAAQ,AAAD,MAAO,QAAQD,2BAA2B,KAAK,IAAIA,yBAAyBnE,MAAMoE,QAAQ;IACrN,MAAMC,YAAYC,IAAAA,qBAAK,EAAC;IACxB,MAAMC,iBAAiBD,IAAAA,qBAAK,EAAC;IAC7B,MAAME,oBAAoBnF,OAAMI,WAAW,CAAC,CAACV,OAAO,IAAI;QACpD,IAAI0F;QACJ,IAAI7D,gBAAgB;YAChB,IAAIO,iBAAiBpC,MAAM;gBACvB,+FAA+F;gBAC/F,+FAA+F;gBAC/F,mDAAmD;gBACnD,IAAIkC,gBAAgBH,cAAcA,WAAW/B,SAAS,QAAQA,SAAS,KAAK,IAAIA,OAAOkC,kBAAkBE,eAAe;oBACpH;gBACJ;gBACApC,OAAOA,QAAQoE,oBAAoBhC;gBACnC,mDAAmD;gBACnD,IAAI,CAACpC,QAAQ2F,MAAM3F,KAAK4F,OAAO,KAAK;oBAChC,yCAAyC;oBACzCrD,gBAAgBL;oBAChBwD,QAAQ;gBACZ,OAAO;oBACH,IAAI3F,kBAAkBC,MAAMC,SAASC,UAAU;wBAC3CwF,QAAQ;oBACZ,OAAO;wBACHnD,gBAAgBvC;oBACpB;gBACJ;YACJ,OAAO;gBACH,IAAIqF,UAAU;oBACVK,QAAQ;gBACZ;gBACAzB,qBAAqB,QAAQA,qBAAqB,KAAK,IAAI,KAAK,IAAIA,iBAAiBjE;YACzF;QACJ,OAAO,IAAIqF,YAAY,CAACjD,eAAe;YACnCsD,QAAQ;QACZ;QACAvB,uBAAuB,QAAQA,uBAAuB,KAAK,IAAI,KAAK,IAAIA,mBAAmB;YACvFuB;QACJ;IACJ,GAAG;QACC7D;QACAE;QACAK;QACAlC;QACAD;QACAgE;QACAE;QACAC;QACAiB;QACAnD;QACAK;KACH;IACD,MAAMpB,UAAUb,OAAMI,WAAW,CAAC,CAACmF;QAC/BjE,iBAAiB,QAAQA,iBAAiB,KAAK,IAAI,KAAK,IAAIA,aAAaiE;QACzEZ,aAAaY;QACb,IAAI,CAAC3E,QAAQ,CAACD,MAAM6E,QAAQ,EAAE;YAC1BrF;QACJ;IACJ,GACA;QACIA;QACAmB;QACAX,MAAM6E,QAAQ;QACdb;KACH;IACD,MAAMc,yBAAyBzF,OAAMI,WAAW,CAAC,CAACsF;QAC9C,IAAI9E,MAAM;YACNC,QAAQ;YACRsE,kBAAkBO;YAClB,IAAI,CAACnE,kBAAkBmE,mBAAmB;gBACtCzD,gBAAgByD;YACpB;QACJ;IACJ,GAAG;QACCnE;QACAX;QACAC;QACAoB;QACAkD;KACH;IACD,MAAMQ,sBAAsB3F,OAAMI,WAAW,CAAC;QAC1C,IAAI,CAACQ,MAAM;YACPH;YACAI,QAAQ;QACZ;IACJ,GAAG;QACCD;QACAH;QACAI;KACH;IACD;;GAED,GAAG,MAAM+E,oBAAoB5F,OAAMI,WAAW,CAAC,CAACsF;QAC3CjF;QACAgF,uBAAuBC;IAC3B,GAAG;QACCD;QACAhF;KACH;IACD,MAAMoF,gBAAgB7F,OAAMI,WAAW,CAAC,CAAC0F,IAAIC;QACzC,MAAM,EAAEpE,OAAOqE,QAAQ,EAAE,GAAGD;QAC5B,IAAIxE,gBAAgB;YAChB,IAAIX,MAAM;gBACN6E;YACJ;YACA1D,iBAAiBiE;QACrB;IACJ,GAAG;QACCzE;QACAkE;QACA7E;QACAmB;KACH;IACD,MAAMkE,cAAcjG,OAAMI,WAAW,CAAC;QAClC+E;IACJ,GAAG;QACCA;KACH;IACD,MAAMe,iBAAiBlG,OAAMI,WAAW,CAAC,CAAC0F;QACtC,OAAOA,GAAGK,GAAG;YACT,KAAKC,mBAAK;gBACNN,GAAGO,cAAc;gBACjBP,GAAGQ,eAAe;gBAClB,IAAI,CAAC1F,MAAM;oBACPuE;oBACAQ;gBACJ,OAAO;oBACH,qDAAqD;oBACrD,yDAAyD;oBACzD,IAAIhF,MAAMY,cAAc,EAAE;wBACtBkE;oBACJ;gBACJ;gBACA;YACJ,KAAKc,oBAAM;gBACPT,GAAGQ,eAAe;gBAClBR,GAAGO,cAAc;gBACjB,IAAIzF,MAAM;oBACNgF;gBACJ;gBACA;YACJ,KAAKY,uBAAS;gBACVV,GAAGO,cAAc;gBACjB,IAAI,CAACzF,MAAM;oBACP+E;gBACJ;gBACA;YACJ;gBACI;QACR;IACJ,GAAG;QACCC;QACAH;QACA7E;QACAD,MAAMY,cAAc;QACpBoE;QACAR;KACH;IACD,MAAMsB,eAAezG,OAAMI,WAAW,CAAC;QACnC,IAAIyC,kBAAkB;YAClB;QACJ;QACA,IAAI,CAACtB,gBAAgB;YACjB,IAAI,CAACrB,0BAA0BK,OAAO,EAAE;gBACpCoF;YACJ;YACAzF,0BAA0BK,OAAO,GAAG;QACxC;IACJ,GAAG;QACCgB;QACAsB;QACA3C;QACAyF;KACH;IACD,MAAMe,eAAe1G,OAAMI,WAAW,CAAC;QACnC,iGAAiG;QACjG,IAAI,AAACO,CAAAA,MAAMiD,WAAW,IAAI,CAACjD,MAAMkC,gBAAgB,AAAD,KAAM,CAACjC,QAAQ,CAACD,MAAM6E,QAAQ,EAAE;YAC5EG;YACA;QACJ;QACA,IAAIpE,gBAAgB;YAChBkE;QACJ;IACJ,GAAG;QACClE;QACAkE;QACA7E;QACAD,MAAM6E,QAAQ;QACd7E,MAAMkC,gBAAgB;QACtBlC,MAAMiD,WAAW;QACjB+B;KACH;IACD,MAAMgB,cAAc,CAACb;QACjBA,GAAGQ,eAAe;QAClB,IAAI,CAAC1F,QAAQ,CAACD,MAAM6E,QAAQ,EAAE;YAC1BG;QACJ,OAAO,IAAIhF,MAAMY,cAAc,EAAE;YAC7BkE;QACJ;IACJ;IACA,MAAMmB,kBAAkBtC,aAAa,cAAc3B,aAAa,mBAAmB;IACnF,MAAM,CAACkE,mBAAmBC,SAAS,GAAGC,IAAAA,wCAAmB,EAACpG;IAC1D,MAAMqG,YAAYC,oBAAI,CAACC,MAAM,CAACvG,MAAMwG,IAAI,EAAE;QACtCC,cAAc;YACV,aAAaxG,OAAOsE,iBAAiBmC;YACrC5E,KAAKoE;QACT;QACAS,aAAa;IACjB;IACAN,UAAUvE,GAAG,GAAG8E,IAAAA,6BAAa,EAACP,UAAUvE,GAAG,EAAEoE;IAC7C,MAAMW,QAAQP,oBAAI,CAACC,MAAM,CAACvG,MAAM6G,KAAK,EAAE;QACnCF,aAAa;IACjB;IACAE,MAAM/E,GAAG,GAAG8E,IAAAA,6BAAa,EAACC,MAAM/E,GAAG,EAAEA,KAAKiC;IAC1C,oGAAoG;IACpG,+DAA+D;IAC/D,MAAM+C,kBAAkB9G,KAAK,CAAC,kBAAkB;IAChD,IAAI+G;IACJ,MAAMC,UAAU,AAACD,CAAAA,YAAY/G,MAAMiH,EAAE,AAAD,MAAO,QAAQF,cAAc,KAAK,IAAIA,YAAY1C;IACtF,MAAM6C,gBAAgB7H,OAAMwE,OAAO,CAAC,IAAK,CAAA;YACjCsD,MAAM;YACN,iBAAiBlH;YACjB,mBAAmB6G,oBAAoB,QAAQA,oBAAoB,KAAK,IAAIA,kBAAkBE;QAClG,CAAA,GAAI;QACJ/G;QACA6G;QACAE;KACH;IACD,MAAMI,eAAed,oBAAI,CAACC,MAAM,CAACvG,MAAMoH,YAAY,IAAI,CAAC,GAAG;QACvDX,cAAc;YACVY,UAAU,WAAW,GAAGhI,OAAMiI,aAAa,CAACC,gCAAoB,EAAE;YAClE,GAAGL,aAAa;QACpB;QACAP,aAAa;IACjB;IACAS,aAAaI,OAAO,GAAGC,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAACN,aAAaI,OAAO,EAAExB;IAC7E,MAAMQ,OAAOF,oBAAI,CAACC,MAAM,CAAC3C,aAAa;QAClC6C,cAAc;YACVkB,YAAY1B;YACZ,iBAAiBhG,OAAOsE,iBAAiBmC;YACzC,iBAAiBzG;YACjB,iBAAiB;YACjB2H,UAAU,CAAChH;YACXuG,MAAM;YACNF,IAAID;QACR;QACAL,aAAakB,iBAAK;IACtB;IACArB,KAAKA,IAAI,GAAGH;IACZG,KAAKK,KAAK,GAAGA;IACbL,KAAKY,YAAY,GAAGA;IACpBZ,KAAKsB,QAAQ,GAAGL,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAAClB,KAAKsB,QAAQ,EAAE5C;IAC/DsB,KAAKuB,MAAM,GAAGN,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAAClB,KAAKuB,MAAM,EAAEzC;IAC3DkB,KAAKwB,SAAS,GAAGP,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAAClB,KAAKwB,SAAS,EAAEzC;IACjEiB,KAAKyB,OAAO,GAAGR,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAAClB,KAAKyB,OAAO,EAAEnC;IAC7DU,KAAKgB,OAAO,GAAGC,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAAClB,KAAKgB,OAAO,EAAEzB;IAC7D,MAAM,EAAEmC,eAAe,EAAE,GAAGC,IAAAA,gCAAkB,EAAC;QAC3CC,WAAW;QACXC,iBAAiB;QACjBC,iBAAiB;IACrB;IACA,MAAMC,eAAetI,OAAOqG,oBAAI,CAACkC,QAAQ,CAACxI,MAAMuI,YAAY,EAAE;QAC1DE,iBAAiB;QACjBhC,cAAc;YACV,cAAc;YACd,cAAc;YACdQ,IAAI1C;YACJ4C,MAAM;YACNrF,KAAKqE;YACL,GAAG+B,eAAe;QACtB;QACAvB,aAAa;IACjB,KAAKD;IACL,MAAM,EAAEgC,cAAc,EAAE,GAAGC,IAAAA,uCAAS;IACpCC,IAAAA,iCAAiB,EAAC;QACdC,SAASH;QACTI,UAAU,CAAC3D,KAAKL;QAChBiE,MAAM;YACF7C;YACAC;SACH;QACDtB,UAAU,CAAC5E;IACf;IACA+I,IAAAA,kCAAkB,EAAC;QACfH,SAASH;QACTI,UAAU,CAAC3D,KAAKL;QAChBiE,MAAM;YACF7C;YACAC;SACH;QACDtB,UAAU,CAAC5E;IACf,IAAI,6DAA6D;IACjE,+GAA+G;IAC/G,kBAAkB;IAClBZ,OAAMoB,SAAS,CAAC;QACZ,IAAIR,QAAQ,CAACD,MAAM6E,QAAQ,IAAIf,SAASlE,OAAO,EAAE;YAC7CkE,SAASlE,OAAO,CAACJ,KAAK;QAC1B;IACJ,GAAG;QACC0C;QACAjC;QACAD,MAAM6E,QAAQ;KACjB;IACD,MAAMoE,oBAAoB3C,oBAAI,CAACC,MAAM,CAACvG,MAAM8D,QAAQ,EAAE;QAClD2C,cAAc;YACV1E;YACAmH,cAAcpF;YACd7B;YACAE;YACAG;YACAG;YACAC;YACAI;YACA7D;YACAD;YACAoE;YACAC;YACAC;YACAC;YACAC;YACAE;YACA1C,OAAOC,gBAAgB0B;QAC3B;QACAgE,aAAawC,6BAAQ;IACzB;IACAF,kBAAkBG,SAAS,GAAG3B,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAACuB,kBAAkBG,SAAS,EAAEnE;IAC3FgE,kBAAkBlI,YAAY,GAAG0G,IAAAA,gCAAgB,EAACC,IAAAA,8BAAc,EAACuB,kBAAkBlI,YAAY,EAAEkE;IACjG,MAAM1E,QAAQ;QACVsE,UAAU,CAAC,CAAC7E,MAAM6E,QAAQ;QAC1BhC;QACAwG,YAAY;YACR7C,MAAMqB,iBAAK;YACX/D,UAAUqF,6BAAQ;YAClBZ,cAAc;QAClB;QACAzE,UAAUmF;QACVlG;QACAyD;QACA+B;IACJ;IACAhI,MAAMiG,IAAI,CAACxF,KAAK,GAAGG;IACnB,OAAOZ;AACX"}
|
|
1
|
+
{"version":3,"sources":["useDatePicker.js"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar, compareDatePart, DayOfWeek, FirstWeekOfYear } from '@fluentui/react-calendar-compat';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { defaultDatePickerStrings } from './defaults';\nimport { Input } from '@fluentui/react-input';\nimport { mergeCallbacks, useControllableState, useEventCallback, useId, useMergedRefs, useOnClickOutside, useOnScrollOutside, slot } from '@fluentui/react-utilities';\nimport { useFieldContext_unstable as useFieldContext } from '@fluentui/react-field';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { useModalAttributes } from '@fluentui/react-tabster';\nimport { usePopupPositioning } from '../../utils/usePopupPositioning';\nfunction isDateOutOfBounds(date, minDate, maxDate) {\n return !!minDate && compareDatePart(minDate, date) > 0 || !!maxDate && compareDatePart(maxDate, date) < 0;\n}\nfunction useFocusLogic() {\n const inputRef = React.useRef(null);\n const preventFocusOpeningPicker = React.useRef(false);\n const focus = React.useCallback(()=>{\n var _inputRef_current_focus, _inputRef_current;\n (_inputRef_current = inputRef.current) === null || _inputRef_current === void 0 ? void 0 : (_inputRef_current_focus = _inputRef_current.focus) === null || _inputRef_current_focus === void 0 ? void 0 : _inputRef_current_focus.call(_inputRef_current);\n }, []);\n const preventNextFocusOpeningPicker = React.useCallback(()=>{\n preventFocusOpeningPicker.current = true;\n }, []);\n return [\n focus,\n inputRef,\n preventFocusOpeningPicker,\n preventNextFocusOpeningPicker\n ];\n}\nfunction usePopupVisibility(props) {\n 'use no memo';\n const [open, setOpen] = useControllableState({\n initialState: false,\n defaultState: props.defaultOpen,\n state: props.open\n });\n const isMounted = React.useRef(false);\n React.useEffect(()=>{\n if (isMounted.current && !open) {\n var // If DatePicker's menu (Calendar) is closed, run onAfterMenuDismiss\n _props_onOpenChange;\n (_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(props, false);\n }\n isMounted.current = true;\n }, // Should only run on allowTextInput or open change\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n props.allowTextInput,\n open\n ]);\n return [\n open,\n setOpen\n ];\n}\nfunction useSelectedDate({ formatDate, onSelectDate, value }) {\n const [selectedDate, setSelectedDateState] = useControllableState({\n initialState: null,\n state: value\n });\n const [formattedDate, setFormattedDate] = React.useState(()=>value && formatDate ? formatDate(value) : '');\n const setSelectedDate = (newDate)=>{\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(newDate);\n setSelectedDateState(newDate);\n setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');\n };\n React.useEffect(()=>{\n setFormattedDate(value && formatDate ? formatDate(value) : '');\n }, [\n formatDate,\n value\n ]);\n return [\n selectedDate,\n formattedDate,\n setSelectedDate,\n setFormattedDate\n ];\n}\nconst defaultFormatDate = (date)=>date ? date.toDateString() : '';\nconst defaultParseDateFromString = (dateStr)=>{\n const date = Date.parse(dateStr);\n return date ? new Date(date) : null;\n};\n/**\n * Create the state required to render DatePicker.\n *\n * The returned state can be modified with hooks such as useDatePickerStyles_unstable,\n * before being passed to renderDatePicker_unstable.\n *\n * @param props - props from this instance of DatePicker\n * @param ref - reference to root Input slot\n */ export const useDatePicker_unstable = (props, ref)=>{\n 'use no memo';\n const { allowTextInput = false, allFocusable = false, borderless = false, dateTimeFormatter, defaultOpen = false, disableAutoFocus = true, firstDayOfWeek = DayOfWeek.Sunday, firstWeekOfYear = FirstWeekOfYear.FirstDay, formatDate = defaultFormatDate, highlightCurrentMonth = false, highlightSelectedMonth = false, initialPickerDate: initialPickerDateProp, inlinePopup = false, isMonthPickerVisible = true, maxDate, minDate, mountNode, onOpenChange, onSelectDate: onUserSelectDate, openOnClick = true, onValidationResult, parseDateFromString = defaultParseDateFromString, showCloseButton = false, showGoToToday = true, showMonthPickerAsOverlay = false, showWeekNumbers = false, strings = defaultDatePickerStrings, today, underlined = false, value, ...restOfProps } = props;\n const initialPickerDate = React.useMemo(()=>initialPickerDateProp !== null && initialPickerDateProp !== void 0 ? initialPickerDateProp : new Date(), [\n initialPickerDateProp\n ]);\n const calendar = React.useRef(null);\n const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();\n const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({\n formatDate,\n onSelectDate: onUserSelectDate,\n value\n });\n const [open, setOpenState] = usePopupVisibility(props);\n const fieldContext = useFieldContext();\n var _fieldContext_required;\n const required = (_fieldContext_required = fieldContext === null || fieldContext === void 0 ? void 0 : fieldContext.required) !== null && _fieldContext_required !== void 0 ? _fieldContext_required : props.required;\n const defaultId = useId('datePicker-input');\n const popupSurfaceId = useId('datePicker-popupSurface');\n const validateTextInput = React.useCallback((date = null)=>{\n let error;\n if (allowTextInput) {\n if (formattedDate || date) {\n // Don't parse if the selected date has the same formatted string as what we're about to parse.\n // The formatted string might be ambiguous (ex: \"1/2/3\" or \"New Year Eve\") and the parser might\n // not be able to come up with the exact same date.\n if (selectedDate && formatDate && formatDate(date !== null && date !== void 0 ? date : selectedDate) === formattedDate) {\n return;\n }\n date = date || parseDateFromString(formattedDate);\n // Check if date is null or date is an invalid date\n if (!date || isNaN(date.getTime())) {\n // Reset input if formatting is available\n setSelectedDate(selectedDate);\n error = 'invalid-input';\n } else {\n if (isDateOutOfBounds(date, minDate, maxDate)) {\n error = 'out-of-bounds';\n } else {\n setSelectedDate(date);\n }\n }\n } else {\n if (required) {\n error = 'required-input';\n }\n onUserSelectDate === null || onUserSelectDate === void 0 ? void 0 : onUserSelectDate(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n onValidationResult === null || onValidationResult === void 0 ? void 0 : onValidationResult({\n error\n });\n }, [\n allowTextInput,\n formatDate,\n formattedDate,\n maxDate,\n minDate,\n onUserSelectDate,\n onValidationResult,\n parseDateFromString,\n required,\n selectedDate,\n setSelectedDate\n ]);\n const setOpen = React.useCallback((newState)=>{\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(newState);\n setOpenState(newState);\n if (!open && !props.disabled) {\n focus();\n }\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n focus,\n onOpenChange,\n props.disabled,\n setOpenState\n ]);\n const dismissDatePickerPopup = React.useCallback((newlySelectedDate)=>{\n if (open) {\n setOpen(false);\n validateTextInput(newlySelectedDate);\n if (!allowTextInput && newlySelectedDate) {\n setSelectedDate(newlySelectedDate);\n }\n }\n }, [\n allowTextInput,\n open,\n setOpen,\n setSelectedDate,\n validateTextInput\n ]);\n const showDatePickerPopup = React.useCallback(()=>{\n if (!open) {\n preventNextFocusOpeningPicker();\n setOpen(true);\n }\n }, [\n open,\n preventNextFocusOpeningPicker,\n setOpen\n ]);\n /**\n * Callback for closing the calendar callout\n */ const calendarDismissed = React.useCallback((newlySelectedDate)=>{\n preventNextFocusOpeningPicker();\n dismissDatePickerPopup(newlySelectedDate);\n }, [\n dismissDatePickerPopup,\n preventNextFocusOpeningPicker\n ]);\n const onInputChange = React.useCallback((ev, data)=>{\n const { value: newValue } = data;\n if (allowTextInput) {\n if (open) {\n dismissDatePickerPopup();\n }\n setFormattedDate(newValue);\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n setFormattedDate\n ]);\n const onInputBlur = React.useCallback(()=>{\n validateTextInput();\n }, [\n validateTextInput\n ]);\n const onInputKeyDown = React.useCallback((ev)=>{\n switch(ev.key){\n case Enter:\n ev.preventDefault();\n ev.stopPropagation();\n if (!open) {\n validateTextInput();\n showDatePickerPopup();\n } else {\n // When DatePicker allows input date string directly,\n // it is expected to hit another enter to close the popup\n if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n }\n break;\n case Escape:\n ev.stopPropagation();\n ev.preventDefault();\n if (open) {\n calendarDismissed();\n }\n break;\n case ArrowDown:\n ev.preventDefault();\n if (!open) {\n showDatePickerPopup();\n }\n break;\n default:\n break;\n }\n }, [\n calendarDismissed,\n dismissDatePickerPopup,\n open,\n props.allowTextInput,\n showDatePickerPopup,\n validateTextInput\n ]);\n const onInputFocus = React.useCallback(()=>{\n if (disableAutoFocus) {\n return;\n }\n if (!allowTextInput) {\n if (!preventFocusOpeningPicker.current) {\n showDatePickerPopup();\n }\n preventFocusOpeningPicker.current = false;\n }\n }, [\n allowTextInput,\n disableAutoFocus,\n preventFocusOpeningPicker,\n showDatePickerPopup\n ]);\n const onInputClick = React.useCallback(()=>{\n // default openOnClick to !props.disableAutoFocus for legacy support of disableAutoFocus behavior\n if ((props.openOnClick || !props.disableAutoFocus) && !open && !props.disabled) {\n showDatePickerPopup();\n return;\n }\n if (allowTextInput) {\n dismissDatePickerPopup();\n }\n }, [\n allowTextInput,\n dismissDatePickerPopup,\n open,\n props.disabled,\n props.disableAutoFocus,\n props.openOnClick,\n showDatePickerPopup\n ]);\n const onIconClick = (ev)=>{\n ev.stopPropagation();\n if (!open && !props.disabled) {\n showDatePickerPopup();\n } else if (props.allowTextInput) {\n dismissDatePickerPopup();\n }\n };\n const inputAppearance = underlined ? 'underline' : borderless ? 'filled-lighter' : 'outline';\n const [triggerWrapperRef, popupRef] = usePopupPositioning(props);\n const inputRoot = slot.always(props.root, {\n defaultProps: {\n ref: triggerWrapperRef\n },\n elementType: 'span'\n });\n inputRoot.ref = useMergedRefs(inputRoot.ref, triggerWrapperRef);\n const input = slot.always(props.input, {\n elementType: 'input'\n });\n input.ref = useMergedRefs(input.ref, ref, rootRef);\n // Props to create a semantic but non-focusable button on the element with the click-to-open handler\n // Used for voice control and touch screen reader accessibility\n const inputLabelledBy = props['aria-labelledby'];\n var _props_id;\n const inputId = (_props_id = props.id) !== null && _props_id !== void 0 ? _props_id : defaultId;\n const iconA11yProps = React.useMemo(()=>({\n role: 'button',\n 'aria-expanded': open,\n 'aria-labelledby': inputLabelledBy !== null && inputLabelledBy !== void 0 ? inputLabelledBy : inputId\n }), [\n open,\n inputLabelledBy,\n inputId\n ]);\n const contentAfter = slot.always(props.contentAfter || {}, {\n defaultProps: {\n children: /*#__PURE__*/ React.createElement(CalendarMonthRegular, null),\n ...iconA11yProps\n },\n elementType: 'span'\n });\n contentAfter.onClick = useEventCallback(mergeCallbacks(contentAfter.onClick, onIconClick));\n const root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n readOnly: !allowTextInput,\n role: 'combobox',\n id: inputId\n },\n elementType: Input\n });\n root.root = inputRoot;\n root.input = input;\n root.contentAfter = contentAfter;\n root.onChange = useEventCallback(mergeCallbacks(root.onChange, onInputChange));\n root.onBlur = useEventCallback(mergeCallbacks(root.onBlur, onInputBlur));\n root.onKeyDown = useEventCallback(mergeCallbacks(root.onKeyDown, onInputKeyDown));\n root.onFocus = useEventCallback(mergeCallbacks(root.onFocus, onInputFocus));\n root.onClick = useEventCallback(mergeCallbacks(root.onClick, onInputClick));\n const { modalAttributes } = useModalAttributes({\n trapFocus: true,\n alwaysFocusable: true,\n legacyTrapFocus: true\n });\n const popupSurface = open ? slot.optional(props.popupSurface, {\n renderByDefault: true,\n defaultProps: {\n 'aria-label': 'Calendar',\n 'aria-modal': true,\n id: popupSurfaceId,\n role: 'dialog',\n ref: popupRef,\n ...modalAttributes\n },\n elementType: 'div'\n }) : undefined;\n const { targetDocument } = useFluent();\n useOnClickOutside({\n element: targetDocument,\n callback: (ev)=>dismissDatePickerPopup(),\n refs: [\n triggerWrapperRef,\n popupRef\n ],\n disabled: !open\n });\n useOnScrollOutside({\n element: targetDocument,\n callback: (ev)=>dismissDatePickerPopup(),\n refs: [\n triggerWrapperRef,\n popupRef\n ],\n disabled: !open\n }); // When the popup is opened, focus should go to the calendar.\n // In v8 this was done by focusing after the callout was positioned, but in v9 this can be simulated by using a\n // useEffect hook.\n React.useEffect(()=>{\n if (open && !props.disabled && calendar.current) {\n calendar.current.focus();\n }\n }, [\n disableAutoFocus,\n open,\n props.disabled\n ]);\n const calendarShorthand = slot.always(props.calendar, {\n defaultProps: {\n allFocusable,\n componentRef: calendar,\n dateTimeFormatter,\n firstDayOfWeek,\n firstWeekOfYear,\n highlightCurrentMonth,\n highlightSelectedMonth,\n isMonthPickerVisible,\n maxDate,\n minDate,\n showCloseButton,\n showGoToToday,\n showMonthPickerAsOverlay,\n showWeekNumbers,\n strings,\n today,\n value: selectedDate || initialPickerDate\n },\n elementType: Calendar\n });\n calendarShorthand.onDismiss = useEventCallback(mergeCallbacks(calendarShorthand.onDismiss, calendarDismissed));\n calendarShorthand.onSelectDate = useEventCallback(mergeCallbacks(calendarShorthand.onSelectDate, calendarDismissed));\n const state = {\n disabled: !!props.disabled,\n inlinePopup,\n components: {\n root: Input,\n calendar: Calendar,\n popupSurface: 'div'\n },\n calendar: calendarShorthand,\n mountNode,\n root,\n popupSurface\n };\n state.root.value = formattedDate;\n return state;\n};\n"],"names":["useDatePicker_unstable","isDateOutOfBounds","date","minDate","maxDate","compareDatePart","useFocusLogic","inputRef","React","useRef","preventFocusOpeningPicker","focus","useCallback","_inputRef_current_focus","_inputRef_current","current","call","preventNextFocusOpeningPicker","usePopupVisibility","props","open","setOpen","useControllableState","initialState","defaultState","defaultOpen","state","isMounted","useEffect","_props_onOpenChange","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","ref","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","DayOfWeek","Sunday","firstWeekOfYear","FirstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","initialPickerDateProp","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","defaultDatePickerStrings","today","underlined","restOfProps","useMemo","calendar","rootRef","setOpenState","fieldContext","useFieldContext","_fieldContext_required","required","defaultId","useId","popupSurfaceId","validateTextInput","error","isNaN","getTime","newState","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","Enter","preventDefault","stopPropagation","Escape","ArrowDown","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","usePopupPositioning","inputRoot","slot","always","root","defaultProps","elementType","useMergedRefs","input","inputLabelledBy","_props_id","inputId","id","iconA11yProps","role","contentAfter","children","createElement","CalendarMonthRegular","onClick","useEventCallback","mergeCallbacks","appearance","undefined","readOnly","Input","onChange","onBlur","onKeyDown","onFocus","modalAttributes","useModalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","targetDocument","useFluent","useOnClickOutside","element","callback","refs","useOnScrollOutside","calendarShorthand","componentRef","Calendar","onDismiss","components"],"mappings":"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"}
|
|
@@ -49,6 +49,7 @@ const usePopupSurfaceClassName = /*#__PURE__*/ (0, _react.__resetStyles)("r1ytv1
|
|
|
49
49
|
".r1ytv1z8{background-color:var(--colorNeutralBackground1);box-shadow:var(--shadow16);border-radius:var(--borderRadiusMedium);border-width:1px;border-style:solid;border-color:var(--colorTransparentStroke);display:inline-flex;color:var(--colorNeutralForeground1);font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase300);font-weight:var(--fontWeightRegular);line-height:var(--lineHeightBase300);}"
|
|
50
50
|
]);
|
|
51
51
|
const useDatePickerStyles_unstable = (state)=>{
|
|
52
|
+
'use no memo';
|
|
52
53
|
const styles = useStyles();
|
|
53
54
|
const popupSurfaceClassName = usePopupSurfaceClassName();
|
|
54
55
|
const { disabled, inlinePopup } = state;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useDatePickerStyles.styles.js"],"sourcesContent":["import { __resetStyles, __styles, mergeClasses } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nexport const datePickerClassNames = {\n root: 'fui-DatePicker',\n calendar: 'fui-DatePicker__calendar',\n popupSurface: 'fui-DatePicker__popupSurface'\n};\nconst useStyles = /*#__PURE__*/__styles({\n base: {\n qhf8xq: \"f10pi13n\",\n Bceei9c: \"f1k6fduh\",\n xfaavh: \"faxec97\"\n },\n disabled: {\n Bceei9c: \"f158kwzp\",\n xfaavh: \"f19qwlmg\"\n },\n inline: {\n Bj3rh1h: \"f19g0ac\"\n }\n}, {\n d: [\".f10pi13n{position:relative;}\", \".f1k6fduh{cursor:pointer;}\", \".faxec97 input{cursor:pointer;}\", \".f158kwzp{cursor:default;}\", \".f19qwlmg input{cursor:default;}\", \".f19g0ac{z-index:1;}\"]\n});\nconst usePopupSurfaceClassName = /*#__PURE__*/__resetStyles(\"r1ytv1z8\", null, [\".r1ytv1z8{background-color:var(--colorNeutralBackground1);box-shadow:var(--shadow16);border-radius:var(--borderRadiusMedium);border-width:1px;border-style:solid;border-color:var(--colorTransparentStroke);display:inline-flex;color:var(--colorNeutralForeground1);font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase300);font-weight:var(--fontWeightRegular);line-height:var(--lineHeightBase300);}\"]);\n/**\n * Apply styling to the DatePicker slots based on the state\n */\nexport const useDatePickerStyles_unstable = state => {\n const styles = useStyles();\n const popupSurfaceClassName = usePopupSurfaceClassName();\n const {\n disabled,\n inlinePopup\n } = state;\n state.root.className = mergeClasses(datePickerClassNames.root, styles.base, disabled && styles.disabled, state.root.className);\n if (state.popupSurface) {\n state.popupSurface.className = mergeClasses(datePickerClassNames.popupSurface, popupSurfaceClassName, state.popupSurface.className, inlinePopup && styles.inline);\n }\n state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);\n return state;\n};\n//# sourceMappingURL=useDatePickerStyles.styles.js.map"],"names":["datePickerClassNames","useDatePickerStyles_unstable","root","calendar","popupSurface","useStyles","__styles","base","qhf8xq","Bceei9c","xfaavh","disabled","inline","Bj3rh1h","d","usePopupSurfaceClassName","__resetStyles","state","styles","popupSurfaceClassName","inlinePopup","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,oBAAoB;eAApBA;;IAyBAC,4BAA4B;eAA5BA;;;uBA3ByC;AAE/C,MAAMD,uBAAuB;IAClCE,MAAM;IACNC,UAAU;IACVC,cAAc;AAChB;AACA,MAAMC,YAAY,WAAW,GAAEC,IAAAA,eAAQ,EAAC;IACtCC,MAAM;QACJC,QAAQ;QACRC,SAAS;QACTC,QAAQ;IACV;IACAC,UAAU;QACRF,SAAS;QACTC,QAAQ;IACV;IACAE,QAAQ;QACNC,SAAS;IACX;AACF,GAAG;IACDC,GAAG;QAAC;QAAiC;QAA8B;QAAmC;QAA8B;QAAoC;KAAuB;AACjM;AACA,MAAMC,2BAA2B,WAAW,GAAEC,IAAAA,oBAAa,EAAC,YAAY,MAAM;IAAC;CAAsZ;AAI9d,MAAMf,+BAA+BgB,CAAAA;IAC1C,MAAMC,SAASb;IACf,MAAMc,wBAAwBJ;IAC9B,MAAM,EACJJ,QAAQ,EACRS,WAAW,EACZ,GAAGH;IACJA,MAAMf,IAAI,CAACmB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBE,IAAI,EAAEgB,OAAOX,IAAI,EAAEI,YAAYO,OAAOP,QAAQ,EAAEM,MAAMf,IAAI,CAACmB,SAAS;IAC7H,IAAIJ,MAAMb,YAAY,EAAE;QACtBa,MAAMb,YAAY,CAACiB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBI,YAAY,EAAEe,uBAAuBF,MAAMb,YAAY,CAACiB,SAAS,EAAED,eAAeF,OAAON,MAAM;IAClK;IACAK,MAAMd,QAAQ,CAACkB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBG,QAAQ,EAAEc,MAAMd,QAAQ,CAACkB,SAAS;IAC/F,OAAOJ;AACT,GACA,sDAAsD"}
|
|
1
|
+
{"version":3,"sources":["useDatePickerStyles.styles.js"],"sourcesContent":["import { __resetStyles, __styles, mergeClasses } from '@griffel/react';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nexport const datePickerClassNames = {\n root: 'fui-DatePicker',\n calendar: 'fui-DatePicker__calendar',\n popupSurface: 'fui-DatePicker__popupSurface'\n};\nconst useStyles = /*#__PURE__*/__styles({\n base: {\n qhf8xq: \"f10pi13n\",\n Bceei9c: \"f1k6fduh\",\n xfaavh: \"faxec97\"\n },\n disabled: {\n Bceei9c: \"f158kwzp\",\n xfaavh: \"f19qwlmg\"\n },\n inline: {\n Bj3rh1h: \"f19g0ac\"\n }\n}, {\n d: [\".f10pi13n{position:relative;}\", \".f1k6fduh{cursor:pointer;}\", \".faxec97 input{cursor:pointer;}\", \".f158kwzp{cursor:default;}\", \".f19qwlmg input{cursor:default;}\", \".f19g0ac{z-index:1;}\"]\n});\nconst usePopupSurfaceClassName = /*#__PURE__*/__resetStyles(\"r1ytv1z8\", null, [\".r1ytv1z8{background-color:var(--colorNeutralBackground1);box-shadow:var(--shadow16);border-radius:var(--borderRadiusMedium);border-width:1px;border-style:solid;border-color:var(--colorTransparentStroke);display:inline-flex;color:var(--colorNeutralForeground1);font-family:var(--fontFamilyBase);font-size:var(--fontSizeBase300);font-weight:var(--fontWeightRegular);line-height:var(--lineHeightBase300);}\"]);\n/**\n * Apply styling to the DatePicker slots based on the state\n */\nexport const useDatePickerStyles_unstable = state => {\n 'use no memo';\n\n const styles = useStyles();\n const popupSurfaceClassName = usePopupSurfaceClassName();\n const {\n disabled,\n inlinePopup\n } = state;\n state.root.className = mergeClasses(datePickerClassNames.root, styles.base, disabled && styles.disabled, state.root.className);\n if (state.popupSurface) {\n state.popupSurface.className = mergeClasses(datePickerClassNames.popupSurface, popupSurfaceClassName, state.popupSurface.className, inlinePopup && styles.inline);\n }\n state.calendar.className = mergeClasses(datePickerClassNames.calendar, state.calendar.className);\n return state;\n};\n//# sourceMappingURL=useDatePickerStyles.styles.js.map"],"names":["datePickerClassNames","useDatePickerStyles_unstable","root","calendar","popupSurface","useStyles","__styles","base","qhf8xq","Bceei9c","xfaavh","disabled","inline","Bj3rh1h","d","usePopupSurfaceClassName","__resetStyles","state","styles","popupSurfaceClassName","inlinePopup","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,oBAAoB;eAApBA;;IAyBAC,4BAA4B;eAA5BA;;;uBA3ByC;AAE/C,MAAMD,uBAAuB;IAClCE,MAAM;IACNC,UAAU;IACVC,cAAc;AAChB;AACA,MAAMC,YAAY,WAAW,GAAEC,IAAAA,eAAQ,EAAC;IACtCC,MAAM;QACJC,QAAQ;QACRC,SAAS;QACTC,QAAQ;IACV;IACAC,UAAU;QACRF,SAAS;QACTC,QAAQ;IACV;IACAE,QAAQ;QACNC,SAAS;IACX;AACF,GAAG;IACDC,GAAG;QAAC;QAAiC;QAA8B;QAAmC;QAA8B;QAAoC;KAAuB;AACjM;AACA,MAAMC,2BAA2B,WAAW,GAAEC,IAAAA,oBAAa,EAAC,YAAY,MAAM;IAAC;CAAsZ;AAI9d,MAAMf,+BAA+BgB,CAAAA;IAC1C;IAEA,MAAMC,SAASb;IACf,MAAMc,wBAAwBJ;IAC9B,MAAM,EACJJ,QAAQ,EACRS,WAAW,EACZ,GAAGH;IACJA,MAAMf,IAAI,CAACmB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBE,IAAI,EAAEgB,OAAOX,IAAI,EAAEI,YAAYO,OAAOP,QAAQ,EAAEM,MAAMf,IAAI,CAACmB,SAAS;IAC7H,IAAIJ,MAAMb,YAAY,EAAE;QACtBa,MAAMb,YAAY,CAACiB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBI,YAAY,EAAEe,uBAAuBF,MAAMb,YAAY,CAACiB,SAAS,EAAED,eAAeF,OAAON,MAAM;IAClK;IACAK,MAAMd,QAAQ,CAACkB,SAAS,GAAGC,IAAAA,mBAAY,EAACtB,qBAAqBG,QAAQ,EAAEc,MAAMd,QAAQ,CAACkB,SAAS;IAC/F,OAAOJ;AACT,GACA,sDAAsD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui/react-datepicker-compat",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.42",
|
|
4
4
|
"description": "React components for building web experiences",
|
|
5
5
|
"main": "lib-commonjs/index.js",
|
|
6
6
|
"module": "lib/index.js",
|
|
@@ -21,13 +21,13 @@
|
|
|
21
21
|
"just": "just-scripts",
|
|
22
22
|
"lint": "just-scripts lint",
|
|
23
23
|
"test": "jest --passWithNoTests",
|
|
24
|
-
"type-check": "
|
|
24
|
+
"type-check": "just-scripts type-check",
|
|
25
25
|
"generate-api": "just-scripts generate-api",
|
|
26
|
-
"storybook": "
|
|
27
|
-
"start": "yarn storybook"
|
|
28
|
-
"test-ssr": "test-ssr \"./stories/**/*.stories.tsx\""
|
|
26
|
+
"storybook": "yarn --cwd ../stories storybook",
|
|
27
|
+
"start": "yarn storybook"
|
|
29
28
|
},
|
|
30
29
|
"devDependencies": {
|
|
30
|
+
"@fluentui/react-provider": "*",
|
|
31
31
|
"@fluentui/eslint-plugin": "*",
|
|
32
32
|
"@fluentui/react-conformance": "*",
|
|
33
33
|
"@fluentui/react-conformance-griffel": "*",
|
|
@@ -36,18 +36,18 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@fluentui/keyboard-keys": "^9.0.7",
|
|
39
|
-
"@fluentui/react-calendar-compat": "^0.1.
|
|
40
|
-
"@fluentui/react-field": "^9.1.
|
|
41
|
-
"@fluentui/react-icons": "^2.0.
|
|
42
|
-
"@fluentui/react-input": "^9.4.
|
|
43
|
-
"@fluentui/react-jsx-runtime": "^9.0.
|
|
44
|
-
"@fluentui/react-popover": "^9.9.
|
|
45
|
-
"@fluentui/react-portal": "^9.4.
|
|
46
|
-
"@fluentui/react-positioning": "^9.15.
|
|
39
|
+
"@fluentui/react-calendar-compat": "^0.1.12",
|
|
40
|
+
"@fluentui/react-field": "^9.1.69",
|
|
41
|
+
"@fluentui/react-icons": "^2.0.245",
|
|
42
|
+
"@fluentui/react-input": "^9.4.80",
|
|
43
|
+
"@fluentui/react-jsx-runtime": "^9.0.40",
|
|
44
|
+
"@fluentui/react-popover": "^9.9.13",
|
|
45
|
+
"@fluentui/react-portal": "^9.4.29",
|
|
46
|
+
"@fluentui/react-positioning": "^9.15.4",
|
|
47
47
|
"@fluentui/react-shared-contexts": "^9.19.0",
|
|
48
|
-
"@fluentui/react-tabster": "^9.
|
|
48
|
+
"@fluentui/react-tabster": "^9.22.1",
|
|
49
49
|
"@fluentui/react-theme": "^9.1.19",
|
|
50
|
-
"@fluentui/react-utilities": "^9.18.
|
|
50
|
+
"@fluentui/react-utilities": "^9.18.11",
|
|
51
51
|
"@griffel/react": "^1.5.22",
|
|
52
52
|
"@swc/helpers": "^0.5.1"
|
|
53
53
|
},
|