@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 CHANGED
@@ -1,12 +1,47 @@
1
1
  # Change Log - @fluentui/react-datepicker-compat
2
2
 
3
- This log was last generated on Thu, 06 Jun 2024 15:22:27 GMT and should not be manually modified.
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:22:27 GMT
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
- - 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)
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
- - chore: upgrade @fluentui/react-icons to 2.0.237. ([PR #31139](https://github.com/microsoft/fluentui/pull/31139) by ololubek@microsoft.com)
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: false
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: false
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":"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"}
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.40",
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": "tsc -b tsconfig.json",
24
+ "type-check": "just-scripts type-check",
25
25
  "generate-api": "just-scripts generate-api",
26
- "storybook": "start-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.10",
40
- "@fluentui/react-field": "^9.1.67",
41
- "@fluentui/react-icons": "^2.0.239",
42
- "@fluentui/react-input": "^9.4.78",
43
- "@fluentui/react-jsx-runtime": "^9.0.39",
44
- "@fluentui/react-popover": "^9.9.11",
45
- "@fluentui/react-portal": "^9.4.27",
46
- "@fluentui/react-positioning": "^9.15.3",
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.21.5",
48
+ "@fluentui/react-tabster": "^9.22.1",
49
49
  "@fluentui/react-theme": "^9.1.19",
50
- "@fluentui/react-utilities": "^9.18.10",
50
+ "@fluentui/react-utilities": "^9.18.11",
51
51
  "@griffel/react": "^1.5.22",
52
52
  "@swc/helpers": "^0.5.1"
53
53
  },