@fluentui/react-datepicker-compat 0.3.6 → 0.3.7
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.json +88 -1
- package/CHANGELOG.md +23 -2
- package/lib/components/Calendar/Calendar.js +9 -7
- package/lib/components/Calendar/Calendar.js.map +1 -1
- package/lib/components/Calendar/useCalendarStyles.styles.js.map +1 -1
- package/lib/components/CalendarDay/CalendarDay.js +8 -11
- package/lib/components/CalendarDay/CalendarDay.js.map +1 -1
- package/lib/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -1
- package/lib/components/CalendarDayGrid/CalendarDayGrid.js +8 -10
- package/lib/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -1
- package/lib/components/CalendarDayGrid/CalendarGridDayCell.js +8 -5
- package/lib/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -1
- package/lib/components/CalendarDayGrid/CalendarGridRow.js +1 -1
- package/lib/components/CalendarDayGrid/CalendarGridRow.js.map +1 -1
- package/lib/components/CalendarDayGrid/CalendarMonthHeaderRow.js +1 -1
- package/lib/components/CalendarDayGrid/CalendarMonthHeaderRow.js.map +1 -1
- package/lib/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -1
- package/lib/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -1
- package/lib/components/CalendarDayGrid/useWeeks.js +4 -3
- package/lib/components/CalendarDayGrid/useWeeks.js.map +1 -1
- package/lib/components/CalendarMonth/CalendarMonth.js +10 -8
- package/lib/components/CalendarMonth/CalendarMonth.js.map +1 -1
- package/lib/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -1
- package/lib/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -1
- package/lib/components/CalendarYear/CalendarYear.js +38 -39
- package/lib/components/CalendarYear/CalendarYear.js.map +1 -1
- package/lib/components/DatePicker/DatePicker.js.map +1 -1
- package/lib/components/DatePicker/renderDatePicker.js +15 -6
- package/lib/components/DatePicker/renderDatePicker.js.map +1 -1
- package/lib/components/DatePicker/useDatePicker.js +18 -13
- package/lib/components/DatePicker/useDatePicker.js.map +1 -1
- package/lib/components/DatePicker/useDatePickerStyles.styles.js.map +1 -1
- package/lib/utils/dateGrid/findAvailableDate.js +1 -1
- package/lib/utils/dateGrid/findAvailableDate.js.map +1 -1
- package/lib/utils/dateGrid/getBoundedDateRange.js.map +1 -1
- package/lib/utils/dateGrid/getDateRangeTypeToUse.js.map +1 -1
- package/lib/utils/dateGrid/getDayGrid.js +3 -2
- package/lib/utils/dateGrid/getDayGrid.js.map +1 -1
- package/lib/utils/dateGrid/isAfterMaxDate.js +1 -1
- package/lib/utils/dateGrid/isAfterMaxDate.js.map +1 -1
- package/lib/utils/dateGrid/isBeforeMinDate.js +1 -1
- package/lib/utils/dateGrid/isBeforeMinDate.js.map +1 -1
- package/lib/utils/dateGrid/isContiguous.js.map +1 -1
- package/lib/utils/dateGrid/isRestrictedDate.js +1 -1
- package/lib/utils/dateGrid/isRestrictedDate.js.map +1 -1
- package/lib/utils/dateMath/dateMath.js.map +1 -1
- package/lib/utils/dom.js.map +1 -1
- package/lib/utils/focus.js.map +1 -1
- package/lib/utils/usePopupPositioning.js +2 -2
- package/lib/utils/usePopupPositioning.js.map +1 -1
- package/lib-commonjs/Calendar.js +2 -2
- package/lib-commonjs/Calendar.js.map +1 -1
- package/lib-commonjs/CalendarDay.js +2 -2
- package/lib-commonjs/CalendarDay.js.map +1 -1
- package/lib-commonjs/CalendarDayGrid.js +2 -2
- package/lib-commonjs/CalendarDayGrid.js.map +1 -1
- package/lib-commonjs/CalendarMonth.js +2 -2
- package/lib-commonjs/CalendarMonth.js.map +1 -1
- package/lib-commonjs/CalendarPicker.js +2 -2
- package/lib-commonjs/CalendarPicker.js.map +1 -1
- package/lib-commonjs/CalendarYear.js +2 -2
- package/lib-commonjs/CalendarYear.js.map +1 -1
- package/lib-commonjs/DatePicker.js +2 -2
- package/lib-commonjs/DatePicker.js.map +1 -1
- package/lib-commonjs/components/Calendar/Calendar.js +32 -28
- package/lib-commonjs/components/Calendar/Calendar.js.map +1 -1
- package/lib-commonjs/components/Calendar/Calendar.types.js +5 -3
- package/lib-commonjs/components/Calendar/Calendar.types.js.map +1 -1
- package/lib-commonjs/components/Calendar/defaults.js +3 -1
- package/lib-commonjs/components/Calendar/defaults.js.map +1 -1
- package/lib-commonjs/components/Calendar/index.js +7 -5
- package/lib-commonjs/components/Calendar/index.js.map +1 -1
- package/lib-commonjs/components/Calendar/useCalendarStyles.styles.js +12 -8
- package/lib-commonjs/components/Calendar/useCalendarStyles.styles.js.map +1 -1
- package/lib-commonjs/components/CalendarDay/CalendarDay.js +25 -26
- package/lib-commonjs/components/CalendarDay/CalendarDay.js.map +1 -1
- package/lib-commonjs/components/CalendarDay/CalendarDay.types.js +2 -2
- package/lib-commonjs/components/CalendarDay/CalendarDay.types.js.map +1 -1
- package/lib-commonjs/components/CalendarDay/index.js +4 -4
- package/lib-commonjs/components/CalendarDay/index.js.map +1 -1
- package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.styles.js +13 -9
- package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js +27 -27
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.types.js +2 -2
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.types.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js +29 -24
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridRow.js +8 -6
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridRow.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/CalendarMonthHeaderRow.js +6 -4
- package/lib-commonjs/components/CalendarDayGrid/CalendarMonthHeaderRow.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/index.js +10 -6
- package/lib-commonjs/components/CalendarDayGrid/index.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js +29 -23
- package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.styles.js +9 -5
- package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -1
- package/lib-commonjs/components/CalendarDayGrid/useWeeks.js +9 -6
- package/lib-commonjs/components/CalendarDayGrid/useWeeks.js.map +1 -1
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.js +24 -21
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.js.map +1 -1
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.types.js +2 -2
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.types.js.map +1 -1
- package/lib-commonjs/components/CalendarMonth/index.js +4 -4
- package/lib-commonjs/components/CalendarMonth/index.js.map +1 -1
- package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js +5 -3
- package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -1
- package/lib-commonjs/components/CalendarPicker/index.js +3 -3
- package/lib-commonjs/components/CalendarPicker/index.js.map +1 -1
- package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.styles.js +20 -16
- package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -1
- package/lib-commonjs/components/CalendarYear/CalendarYear.js +60 -59
- package/lib-commonjs/components/CalendarYear/CalendarYear.js.map +1 -1
- package/lib-commonjs/components/CalendarYear/CalendarYear.types.js +2 -2
- package/lib-commonjs/components/CalendarYear/CalendarYear.types.js.map +1 -1
- package/lib-commonjs/components/CalendarYear/index.js +4 -4
- package/lib-commonjs/components/CalendarYear/index.js.map +1 -1
- package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js +5 -3
- package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js.map +1 -1
- package/lib-commonjs/components/DatePicker/DatePicker.js +7 -5
- package/lib-commonjs/components/DatePicker/DatePicker.js.map +1 -1
- package/lib-commonjs/components/DatePicker/defaults.js +6 -2
- package/lib-commonjs/components/DatePicker/defaults.js.map +1 -1
- package/lib-commonjs/components/DatePicker/index.js +7 -7
- package/lib-commonjs/components/DatePicker/index.js.map +1 -1
- package/lib-commonjs/components/DatePicker/renderDatePicker.js +22 -12
- package/lib-commonjs/components/DatePicker/renderDatePicker.js.map +1 -1
- package/lib-commonjs/components/DatePicker/useDatePicker.js +59 -52
- package/lib-commonjs/components/DatePicker/useDatePicker.js.map +1 -1
- package/lib-commonjs/components/DatePicker/useDatePickerStyles.styles.js +9 -5
- package/lib-commonjs/components/DatePicker/useDatePickerStyles.styles.js.map +1 -1
- package/lib-commonjs/index.js +98 -34
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/utils/animations.js +45 -15
- package/lib-commonjs/utils/animations.js.map +1 -1
- package/lib-commonjs/utils/constants.js +18 -6
- package/lib-commonjs/utils/constants.js.map +1 -1
- package/lib-commonjs/utils/dateFormatting/dateFormatting.defaults.js +24 -8
- package/lib-commonjs/utils/dateFormatting/dateFormatting.defaults.js.map +1 -1
- package/lib-commonjs/utils/dateFormatting/index.js +3 -3
- package/lib-commonjs/utils/dateFormatting/index.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/findAvailableDate.js +4 -2
- package/lib-commonjs/utils/dateGrid/findAvailableDate.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/getBoundedDateRange.js +3 -1
- package/lib-commonjs/utils/dateGrid/getBoundedDateRange.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/getDateRangeTypeToUse.js +3 -1
- package/lib-commonjs/utils/dateGrid/getDateRangeTypeToUse.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/getDayGrid.js +6 -3
- package/lib-commonjs/utils/dateGrid/getDayGrid.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/index.js +6 -6
- package/lib-commonjs/utils/dateGrid/index.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/isAfterMaxDate.js +4 -2
- package/lib-commonjs/utils/dateGrid/isAfterMaxDate.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/isBeforeMinDate.js +4 -2
- package/lib-commonjs/utils/dateGrid/isBeforeMinDate.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/isContiguous.js +3 -1
- package/lib-commonjs/utils/dateGrid/isContiguous.js.map +1 -1
- package/lib-commonjs/utils/dateGrid/isRestrictedDate.js +4 -2
- package/lib-commonjs/utils/dateGrid/isRestrictedDate.js.map +1 -1
- package/lib-commonjs/utils/dateMath/dateMath.js +54 -18
- package/lib-commonjs/utils/dateMath/dateMath.js.map +1 -1
- package/lib-commonjs/utils/dateMath/index.js +2 -2
- package/lib-commonjs/utils/dateMath/index.js.map +1 -1
- package/lib-commonjs/utils/dom.js +5 -3
- package/lib-commonjs/utils/dom.js.map +1 -1
- package/lib-commonjs/utils/focus.js +3 -1
- package/lib-commonjs/utils/focus.js.map +1 -1
- package/lib-commonjs/utils/index.js +8 -8
- package/lib-commonjs/utils/index.js.map +1 -1
- package/lib-commonjs/utils/usePopupPositioning.js +9 -7
- package/lib-commonjs/utils/usePopupPositioning.js.map +1 -1
- package/package.json +17 -17
|
@@ -4,20 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
});
|
|
5
5
|
Object.defineProperty(exports, "useDatePicker_unstable", {
|
|
6
6
|
enumerable: true,
|
|
7
|
-
get: ()
|
|
7
|
+
get: function() {
|
|
8
|
+
return useDatePicker_unstable;
|
|
9
|
+
}
|
|
8
10
|
});
|
|
9
|
-
const
|
|
10
|
-
const _react = /*#__PURE__*/
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
11
|
+
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
|
12
|
+
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
|
13
|
+
const _keyboardkeys = require("@fluentui/keyboard-keys");
|
|
14
|
+
const _Calendar = require("../Calendar/Calendar");
|
|
15
|
+
const _reacticons = require("@fluentui/react-icons");
|
|
14
16
|
const _utils = require("../../utils");
|
|
15
17
|
const _defaults = require("./defaults");
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
18
|
+
const _reactinput = require("@fluentui/react-input");
|
|
19
|
+
const _reactutilities = require("@fluentui/react-utilities");
|
|
20
|
+
const _reactfield = require("@fluentui/react-field");
|
|
21
|
+
const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
|
|
22
|
+
const _reacttabster = require("@fluentui/react-tabster");
|
|
21
23
|
const _usePopupPositioning = require("../../utils/usePopupPositioning");
|
|
22
24
|
function isDateOutOfBounds(date, minDate, maxDate) {
|
|
23
25
|
return !!minDate && (0, _utils.compareDatePart)(minDate, date) > 0 || !!maxDate && (0, _utils.compareDatePart)(maxDate, date) < 0;
|
|
@@ -26,7 +28,7 @@ function useFocusLogic() {
|
|
|
26
28
|
const inputRef = _react.useRef(null);
|
|
27
29
|
const preventFocusOpeningPicker = _react.useRef(false);
|
|
28
30
|
const focus = _react.useCallback(()=>{
|
|
29
|
-
var
|
|
31
|
+
var _inputRef_current_focus, _inputRef_current;
|
|
30
32
|
(_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);
|
|
31
33
|
}, []);
|
|
32
34
|
const preventNextFocusOpeningPicker = _react.useCallback(()=>{
|
|
@@ -40,7 +42,7 @@ function useFocusLogic() {
|
|
|
40
42
|
];
|
|
41
43
|
}
|
|
42
44
|
function usePopupVisibility(props) {
|
|
43
|
-
const [open, setOpen] = (0,
|
|
45
|
+
const [open, setOpen] = (0, _reactutilities.useControllableState)({
|
|
44
46
|
initialState: false,
|
|
45
47
|
defaultState: props.defaultOpen,
|
|
46
48
|
state: props.open
|
|
@@ -48,8 +50,8 @@ function usePopupVisibility(props) {
|
|
|
48
50
|
const isMounted = _react.useRef(false);
|
|
49
51
|
_react.useEffect(()=>{
|
|
50
52
|
if (isMounted.current && !open) {
|
|
51
|
-
var _props_onOpenChange;
|
|
52
|
-
(_props_onOpenChange = props.onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(
|
|
53
|
+
var _props_onOpenChange, _props;
|
|
54
|
+
(_props_onOpenChange = (_props = props).onOpenChange) === null || _props_onOpenChange === void 0 ? void 0 : _props_onOpenChange.call(_props, false);
|
|
53
55
|
}
|
|
54
56
|
isMounted.current = true;
|
|
55
57
|
}, // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -62,14 +64,15 @@ function usePopupVisibility(props) {
|
|
|
62
64
|
setOpen
|
|
63
65
|
];
|
|
64
66
|
}
|
|
65
|
-
function useSelectedDate({ formatDate
|
|
66
|
-
const [selectedDate, setSelectedDateState] = (0,
|
|
67
|
+
function useSelectedDate({ formatDate, onSelectDate, value }) {
|
|
68
|
+
const [selectedDate, setSelectedDateState] = (0, _reactutilities.useControllableState)({
|
|
67
69
|
initialState: null,
|
|
68
70
|
state: value
|
|
69
71
|
});
|
|
70
72
|
const [formattedDate, setFormattedDate] = _react.useState(()=>value && formatDate ? formatDate(value) : '');
|
|
71
73
|
const setSelectedDate = (newDate)=>{
|
|
72
|
-
|
|
74
|
+
var _onSelectDate;
|
|
75
|
+
(_onSelectDate = onSelectDate) === null || _onSelectDate === void 0 ? void 0 : _onSelectDate(newDate);
|
|
73
76
|
setSelectedDateState(newDate);
|
|
74
77
|
setFormattedDate(newDate && formatDate ? formatDate(newDate) : '');
|
|
75
78
|
};
|
|
@@ -92,7 +95,8 @@ const defaultParseDateFromString = (dateStr)=>{
|
|
|
92
95
|
return date ? new Date(date) : null;
|
|
93
96
|
};
|
|
94
97
|
const useDatePicker_unstable = (props, ref)=>{
|
|
95
|
-
|
|
98
|
+
var _fieldContext;
|
|
99
|
+
const { allowTextInput = false, allFocusable = false, borderless = false, dateTimeFormatter, defaultOpen = false, disableAutoFocus = true, firstDayOfWeek = _utils.DayOfWeek.Sunday, firstWeekOfYear = _utils.FirstWeekOfYear.FirstDay, formatDate = defaultFormatDate, highlightCurrentMonth = false, highlightSelectedMonth = false, initialPickerDate = new Date(), 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;
|
|
96
100
|
const calendar = _react.useRef(null);
|
|
97
101
|
const [focus, rootRef, preventFocusOpeningPicker, preventNextFocusOpeningPicker] = useFocusLogic();
|
|
98
102
|
const [selectedDate, formattedDate, setSelectedDate, setFormattedDate] = useSelectedDate({
|
|
@@ -101,11 +105,12 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
101
105
|
value
|
|
102
106
|
});
|
|
103
107
|
const [open, setOpenState] = usePopupVisibility(props);
|
|
104
|
-
const fieldContext = (0,
|
|
108
|
+
const fieldContext = (0, _reactfield.useFieldContext_unstable)();
|
|
105
109
|
var _fieldContext_required;
|
|
106
|
-
const required = (_fieldContext_required = fieldContext === null ||
|
|
107
|
-
const popupSurfaceId = (0,
|
|
110
|
+
const required = (_fieldContext_required = (_fieldContext = fieldContext) === null || _fieldContext === void 0 ? void 0 : _fieldContext.required) !== null && _fieldContext_required !== void 0 ? _fieldContext_required : props.required;
|
|
111
|
+
const popupSurfaceId = (0, _reactutilities.useId)('datePicker-popupSurface');
|
|
108
112
|
const validateTextInput = _react.useCallback((date = null)=>{
|
|
113
|
+
var _onValidationResult;
|
|
109
114
|
let error;
|
|
110
115
|
if (allowTextInput) {
|
|
111
116
|
if (formattedDate || date) {
|
|
@@ -129,15 +134,16 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
129
134
|
}
|
|
130
135
|
}
|
|
131
136
|
} else {
|
|
137
|
+
var _onUserSelectDate;
|
|
132
138
|
if (required) {
|
|
133
139
|
error = 'required-input';
|
|
134
140
|
}
|
|
135
|
-
onUserSelectDate === null ||
|
|
141
|
+
(_onUserSelectDate = onUserSelectDate) === null || _onUserSelectDate === void 0 ? void 0 : _onUserSelectDate(date);
|
|
136
142
|
}
|
|
137
143
|
} else if (required && !formattedDate) {
|
|
138
144
|
error = 'required-input';
|
|
139
145
|
}
|
|
140
|
-
onValidationResult === null ||
|
|
146
|
+
(_onValidationResult = onValidationResult) === null || _onValidationResult === void 0 ? void 0 : _onValidationResult({
|
|
141
147
|
error
|
|
142
148
|
});
|
|
143
149
|
}, [
|
|
@@ -154,7 +160,8 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
154
160
|
setSelectedDate
|
|
155
161
|
]);
|
|
156
162
|
const setOpen = _react.useCallback((newState)=>{
|
|
157
|
-
|
|
163
|
+
var _onOpenChange;
|
|
164
|
+
(_onOpenChange = onOpenChange) === null || _onOpenChange === void 0 ? void 0 : _onOpenChange(newState);
|
|
158
165
|
setOpenState(newState);
|
|
159
166
|
if (!open && !props.disabled) {
|
|
160
167
|
focus();
|
|
@@ -200,7 +207,7 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
200
207
|
preventNextFocusOpeningPicker
|
|
201
208
|
]);
|
|
202
209
|
const onInputChange = _react.useCallback((ev, data)=>{
|
|
203
|
-
const { value: newValue
|
|
210
|
+
const { value: newValue } = data;
|
|
204
211
|
if (allowTextInput) {
|
|
205
212
|
if (open) {
|
|
206
213
|
dismissDatePickerPopup();
|
|
@@ -220,7 +227,7 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
220
227
|
]);
|
|
221
228
|
const onInputKeyDown = _react.useCallback((ev)=>{
|
|
222
229
|
switch(ev.key){
|
|
223
|
-
case
|
|
230
|
+
case _keyboardkeys.Enter:
|
|
224
231
|
ev.preventDefault();
|
|
225
232
|
ev.stopPropagation();
|
|
226
233
|
if (!open) {
|
|
@@ -234,14 +241,14 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
234
241
|
}
|
|
235
242
|
}
|
|
236
243
|
break;
|
|
237
|
-
case
|
|
244
|
+
case _keyboardkeys.Escape:
|
|
238
245
|
ev.stopPropagation();
|
|
239
246
|
ev.preventDefault();
|
|
240
247
|
if (open) {
|
|
241
248
|
calendarDismissed();
|
|
242
249
|
}
|
|
243
250
|
break;
|
|
244
|
-
case
|
|
251
|
+
case _keyboardkeys.ArrowDown:
|
|
245
252
|
ev.preventDefault();
|
|
246
253
|
if (ev.altKey && !open) {
|
|
247
254
|
showDatePickerPopup();
|
|
@@ -302,45 +309,45 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
302
309
|
};
|
|
303
310
|
const inputAppearance = underlined ? 'underline' : borderless ? 'filled-lighter' : 'outline';
|
|
304
311
|
const [triggerWrapperRef, popupRef] = (0, _usePopupPositioning.usePopupPositioning)(props);
|
|
305
|
-
const root =
|
|
312
|
+
const root = _reactutilities.slot.always(restOfProps, {
|
|
306
313
|
defaultProps: {
|
|
307
314
|
appearance: inputAppearance,
|
|
308
315
|
'aria-controls': open ? popupSurfaceId : undefined,
|
|
309
316
|
'aria-expanded': open,
|
|
310
317
|
'aria-haspopup': 'dialog',
|
|
311
|
-
contentAfter: /*#__PURE__*/ _react.createElement(
|
|
318
|
+
contentAfter: /*#__PURE__*/ _react.createElement(_reacticons.CalendarMonthRegular, {
|
|
312
319
|
onClick: onIconClick
|
|
313
320
|
}),
|
|
314
321
|
readOnly: !allowTextInput,
|
|
315
322
|
role: 'combobox'
|
|
316
323
|
},
|
|
317
|
-
elementType:
|
|
324
|
+
elementType: _reactinput.Input
|
|
318
325
|
});
|
|
319
|
-
const inputRoot =
|
|
326
|
+
const inputRoot = _reactutilities.slot.always(props.root, {
|
|
320
327
|
defaultProps: {
|
|
321
328
|
'aria-owns': open ? popupSurfaceId : undefined,
|
|
322
329
|
ref: triggerWrapperRef
|
|
323
330
|
},
|
|
324
331
|
elementType: 'span'
|
|
325
332
|
});
|
|
326
|
-
inputRoot.ref = (0,
|
|
333
|
+
inputRoot.ref = (0, _reactutilities.useMergedRefs)(inputRoot.ref, triggerWrapperRef);
|
|
327
334
|
root.root = inputRoot;
|
|
328
|
-
const inputShorthand =
|
|
335
|
+
const inputShorthand = _reactutilities.slot.always(props.input, {
|
|
329
336
|
elementType: 'input'
|
|
330
337
|
});
|
|
331
|
-
inputShorthand.ref = (0,
|
|
338
|
+
inputShorthand.ref = (0, _reactutilities.useMergedRefs)(inputShorthand.ref, ref, rootRef);
|
|
332
339
|
root.input = inputShorthand;
|
|
333
|
-
root.onChange = (0,
|
|
334
|
-
root.onBlur = (0,
|
|
335
|
-
root.onKeyDown = (0,
|
|
336
|
-
root.onFocus = (0,
|
|
337
|
-
root.onClick = (0,
|
|
338
|
-
const { modalAttributes
|
|
340
|
+
root.onChange = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(root.onChange, onInputChange));
|
|
341
|
+
root.onBlur = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(root.onBlur, onInputBlur));
|
|
342
|
+
root.onKeyDown = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(root.onKeyDown, onInputKeyDown));
|
|
343
|
+
root.onFocus = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(root.onFocus, onInputFocus));
|
|
344
|
+
root.onClick = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(root.onClick, onInputClick));
|
|
345
|
+
const { modalAttributes } = (0, _reacttabster.useModalAttributes)({
|
|
339
346
|
trapFocus: true,
|
|
340
347
|
alwaysFocusable: true,
|
|
341
348
|
legacyTrapFocus: false
|
|
342
349
|
});
|
|
343
|
-
const popupSurface = open ?
|
|
350
|
+
const popupSurface = open ? _reactutilities.slot.optional(props.popupSurface, {
|
|
344
351
|
renderByDefault: true,
|
|
345
352
|
defaultProps: {
|
|
346
353
|
'aria-label': 'Calendar',
|
|
@@ -352,8 +359,8 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
352
359
|
},
|
|
353
360
|
elementType: 'div'
|
|
354
361
|
}) : undefined;
|
|
355
|
-
const { targetDocument
|
|
356
|
-
(0,
|
|
362
|
+
const { targetDocument } = (0, _reactsharedcontexts.useFluent_unstable)();
|
|
363
|
+
(0, _reactutilities.useOnClickOutside)({
|
|
357
364
|
element: targetDocument,
|
|
358
365
|
callback: (ev)=>dismissDatePickerPopup(),
|
|
359
366
|
refs: [
|
|
@@ -362,7 +369,7 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
362
369
|
],
|
|
363
370
|
disabled: !open
|
|
364
371
|
});
|
|
365
|
-
(0,
|
|
372
|
+
(0, _reactutilities.useOnScrollOutside)({
|
|
366
373
|
element: targetDocument,
|
|
367
374
|
callback: (ev)=>dismissDatePickerPopup(),
|
|
368
375
|
refs: [
|
|
@@ -382,7 +389,7 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
382
389
|
open,
|
|
383
390
|
props.disabled
|
|
384
391
|
]);
|
|
385
|
-
const calendarShorthand =
|
|
392
|
+
const calendarShorthand = _reactutilities.slot.always(props.calendar, {
|
|
386
393
|
defaultProps: {
|
|
387
394
|
allFocusable,
|
|
388
395
|
componentRef: calendar,
|
|
@@ -402,16 +409,16 @@ const useDatePicker_unstable = (props, ref)=>{
|
|
|
402
409
|
today,
|
|
403
410
|
value: selectedDate || initialPickerDate
|
|
404
411
|
},
|
|
405
|
-
elementType:
|
|
412
|
+
elementType: _Calendar.Calendar
|
|
406
413
|
});
|
|
407
|
-
calendarShorthand.onDismiss = (0,
|
|
408
|
-
calendarShorthand.onSelectDate = (0,
|
|
414
|
+
calendarShorthand.onDismiss = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(calendarShorthand.onDismiss, calendarDismissed));
|
|
415
|
+
calendarShorthand.onSelectDate = (0, _reactutilities.useEventCallback)((0, _reactutilities.mergeCallbacks)(calendarShorthand.onSelectDate, calendarDismissed));
|
|
409
416
|
const state = {
|
|
410
417
|
disabled: !!props.disabled,
|
|
411
418
|
inlinePopup,
|
|
412
419
|
components: {
|
|
413
|
-
root:
|
|
414
|
-
calendar:
|
|
420
|
+
root: _reactinput.Input,
|
|
421
|
+
calendar: _Calendar.Calendar,
|
|
415
422
|
popupSurface: 'div'
|
|
416
423
|
},
|
|
417
424
|
calendar: calendarShorthand,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["useDatePicker.js"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, Enter, Escape } from '@fluentui/keyboard-keys';\nimport { Calendar } from '../Calendar/Calendar';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { compareDatePart, DayOfWeek, FirstWeekOfYear } from '../../utils';\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, _inputRef_current_focus;\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 =new Date() , 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 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 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 (ev.altKey && !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 root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n contentAfter: /*#__PURE__*/ React.createElement(CalendarMonthRegular, {\n onClick: onIconClick\n }),\n readOnly: !allowTextInput,\n role: 'combobox'\n },\n elementType: Input\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 root.root = inputRoot;\n const inputShorthand = slot.always(props.input, {\n elementType: 'input'\n });\n inputShorthand.ref = useMergedRefs(inputShorthand.ref, ref, rootRef);\n root.input = inputShorthand;\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","_inputRef_current_focus","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","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","defaultDatePickerStrings","today","underlined","restOfProps","calendar","rootRef","setOpenState","fieldContext","useFieldContext","_fieldContext_required","required","popupSurfaceId","useId","validateTextInput","error","isNaN","getTime","newState","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","Enter","preventDefault","stopPropagation","Escape","ArrowDown","altKey","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","usePopupPositioning","root","slot","always","defaultProps","appearance","undefined","contentAfter","createElement","CalendarMonthRegular","onClick","readOnly","role","elementType","Input","inputRoot","useMergedRefs","inputShorthand","input","onChange","useEventCallback","mergeCallbacks","onBlur","onKeyDown","onFocus","modalAttributes","useModalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","id","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 } from '../Calendar/Calendar';\nimport { CalendarMonthRegular } from '@fluentui/react-icons';\nimport { compareDatePart, DayOfWeek, FirstWeekOfYear } from '../../utils';\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, _props;\n (_props_onOpenChange = (_props = 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 var _onSelectDate;\n (_onSelectDate = 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 var _fieldContext;\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 = new Date(), 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 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 = fieldContext) === null || _fieldContext === void 0 ? void 0 : _fieldContext.required) !== null && _fieldContext_required !== void 0 ? _fieldContext_required : props.required;\n const popupSurfaceId = useId('datePicker-popupSurface');\n const validateTextInput = React.useCallback((date = null)=>{\n var _onValidationResult;\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 var _onUserSelectDate;\n if (required) {\n error = 'required-input';\n }\n (_onUserSelectDate = onUserSelectDate) === null || _onUserSelectDate === void 0 ? void 0 : _onUserSelectDate(date);\n }\n } else if (required && !formattedDate) {\n error = 'required-input';\n }\n (_onValidationResult = 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 var _onOpenChange;\n (_onOpenChange = 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 (ev.altKey && !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 root = slot.always(restOfProps, {\n defaultProps: {\n appearance: inputAppearance,\n 'aria-controls': open ? popupSurfaceId : undefined,\n 'aria-expanded': open,\n 'aria-haspopup': 'dialog',\n contentAfter: /*#__PURE__*/ React.createElement(CalendarMonthRegular, {\n onClick: onIconClick\n }),\n readOnly: !allowTextInput,\n role: 'combobox'\n },\n elementType: Input\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 root.root = inputRoot;\n const inputShorthand = slot.always(props.input, {\n elementType: 'input'\n });\n inputShorthand.ref = useMergedRefs(inputShorthand.ref, ref, rootRef);\n root.input = inputShorthand;\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","_props","onOpenChange","allowTextInput","useSelectedDate","formatDate","onSelectDate","value","selectedDate","setSelectedDateState","formattedDate","setFormattedDate","useState","setSelectedDate","newDate","_onSelectDate","defaultFormatDate","toDateString","defaultParseDateFromString","dateStr","Date","parse","ref","_fieldContext","allFocusable","borderless","dateTimeFormatter","disableAutoFocus","firstDayOfWeek","DayOfWeek","Sunday","firstWeekOfYear","FirstWeekOfYear","FirstDay","highlightCurrentMonth","highlightSelectedMonth","initialPickerDate","inlinePopup","isMonthPickerVisible","mountNode","onUserSelectDate","openOnClick","onValidationResult","parseDateFromString","showCloseButton","showGoToToday","showMonthPickerAsOverlay","showWeekNumbers","strings","defaultDatePickerStrings","today","underlined","restOfProps","calendar","rootRef","setOpenState","fieldContext","useFieldContext","_fieldContext_required","required","popupSurfaceId","useId","validateTextInput","_onValidationResult","error","isNaN","getTime","_onUserSelectDate","newState","_onOpenChange","disabled","dismissDatePickerPopup","newlySelectedDate","showDatePickerPopup","calendarDismissed","onInputChange","ev","data","newValue","onInputBlur","onInputKeyDown","key","Enter","preventDefault","stopPropagation","Escape","ArrowDown","altKey","onInputFocus","onInputClick","onIconClick","inputAppearance","triggerWrapperRef","popupRef","usePopupPositioning","root","slot","always","defaultProps","appearance","undefined","contentAfter","createElement","CalendarMonthRegular","onClick","readOnly","role","elementType","Input","inputRoot","useMergedRefs","inputShorthand","input","onChange","useEventCallback","mergeCallbacks","onBlur","onKeyDown","onFocus","modalAttributes","useModalAttributes","trapFocus","alwaysFocusable","legacyTrapFocus","popupSurface","optional","renderByDefault","id","targetDocument","useFluent","useOnClickOutside","element","callback","refs","useOnScrollOutside","calendarShorthand","componentRef","Calendar","onDismiss","components"],"mappings":"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"}
|
|
@@ -9,8 +9,12 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
datePickerClassNames: ()
|
|
13
|
-
|
|
12
|
+
datePickerClassNames: function() {
|
|
13
|
+
return datePickerClassNames;
|
|
14
|
+
},
|
|
15
|
+
useDatePickerStyles_unstable: function() {
|
|
16
|
+
return useDatePickerStyles_unstable;
|
|
17
|
+
}
|
|
14
18
|
});
|
|
15
19
|
const _react = require("@griffel/react");
|
|
16
20
|
const datePickerClassNames = {
|
|
@@ -18,7 +22,7 @@ const datePickerClassNames = {
|
|
|
18
22
|
calendar: 'fui-DatePicker__calendar',
|
|
19
23
|
popupSurface: 'fui-DatePicker__popupSurface'
|
|
20
24
|
};
|
|
21
|
-
const useStyles = /*#__PURE__*/ (0, _react
|
|
25
|
+
const useStyles = /*#__PURE__*/ (0, _react.__styles)({
|
|
22
26
|
base: {
|
|
23
27
|
qhf8xq: "f10pi13n",
|
|
24
28
|
Bceei9c: "f1k6fduh",
|
|
@@ -37,13 +41,13 @@ const useStyles = /*#__PURE__*/ (0, _react["__styles"])({
|
|
|
37
41
|
".f19qwlmg input{cursor:default;}"
|
|
38
42
|
]
|
|
39
43
|
});
|
|
40
|
-
const usePopupSurfaceClassName = /*#__PURE__*/ (0, _react
|
|
44
|
+
const usePopupSurfaceClassName = /*#__PURE__*/ (0, _react.__resetStyles)("r1ytv1z8", null, [
|
|
41
45
|
".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);}"
|
|
42
46
|
]);
|
|
43
47
|
const useDatePickerStyles_unstable = (state)=>{
|
|
44
48
|
const styles = useStyles();
|
|
45
49
|
const popupSurfaceClassName = usePopupSurfaceClassName();
|
|
46
|
-
const { disabled
|
|
50
|
+
const { disabled } = state;
|
|
47
51
|
state.root.className = (0, _react.mergeClasses)(datePickerClassNames.root, styles.base, disabled && styles.disabled, state.root.className);
|
|
48
52
|
if (state.popupSurface) {
|
|
49
53
|
state.popupSurface.className = (0, _react.mergeClasses)(datePickerClassNames.popupSurface, popupSurfaceClassName, state.popupSurface.className);
|
|
@@ -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}, {\n d: [\".f10pi13n{position:relative;}\", \".f1k6fduh{cursor:pointer;}\", \".faxec97 input{cursor:pointer;}\", \".f158kwzp{cursor:default;}\", \".f19qwlmg input{cursor:default;}\"]\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 } = 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);\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","d","usePopupSurfaceClassName","__resetStyles","state","styles","popupSurfaceClassName","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,oBAAoB
|
|
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}, {\n d: [\".f10pi13n{position:relative;}\", \".f1k6fduh{cursor:pointer;}\", \".faxec97 input{cursor:pointer;}\", \".f158kwzp{cursor:default;}\", \".f19qwlmg input{cursor:default;}\"]\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 } = 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);\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","d","usePopupSurfaceClassName","__resetStyles","state","styles","popupSurfaceClassName","className","mergeClasses"],"mappings":";;;;;;;;;;;IAEaA,oBAAoB;eAApBA;;IAsBAC,4BAA4B;eAA5BA;;;uBAxByC;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;AACF,GAAG;IACDE,GAAG;QAAC;QAAiC;QAA8B;QAAmC;QAA8B;KAAmC;AACzK;AACA,MAAMC,2BAA2B,WAAW,GAAEC,IAAAA,oBAAa,EAAC,YAAY,MAAM;IAAC;CAAsZ;AAI9d,MAAMb,+BAA+Bc,CAAAA;IAC1C,MAAMC,SAASX;IACf,MAAMY,wBAAwBJ;IAC9B,MAAM,EACJF,QAAQ,EACT,GAAGI;IACJA,MAAMb,IAAI,CAACgB,SAAS,GAAGC,IAAAA,mBAAY,EAACnB,qBAAqBE,IAAI,EAAEc,OAAOT,IAAI,EAAEI,YAAYK,OAAOL,QAAQ,EAAEI,MAAMb,IAAI,CAACgB,SAAS;IAC7H,IAAIH,MAAMX,YAAY,EAAE;QACtBW,MAAMX,YAAY,CAACc,SAAS,GAAGC,IAAAA,mBAAY,EAACnB,qBAAqBI,YAAY,EAAEa,uBAAuBF,MAAMX,YAAY,CAACc,SAAS;IACpI;IACAH,MAAMZ,QAAQ,CAACe,SAAS,GAAGC,IAAAA,mBAAY,EAACnB,qBAAqBG,QAAQ,EAAEY,MAAMZ,QAAQ,CAACe,SAAS;IAC/F,OAAOH;AACT,GACA,sDAAsD"}
|
package/lib-commonjs/index.js
CHANGED
|
@@ -9,39 +9,103 @@ function _export(target, all) {
|
|
|
9
9
|
});
|
|
10
10
|
}
|
|
11
11
|
_export(exports, {
|
|
12
|
-
AnimationDirection: ()
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
12
|
+
AnimationDirection: function() {
|
|
13
|
+
return _Calendar.AnimationDirection;
|
|
14
|
+
},
|
|
15
|
+
DatePicker: function() {
|
|
16
|
+
return _DatePicker.DatePicker;
|
|
17
|
+
},
|
|
18
|
+
datePickerClassNames: function() {
|
|
19
|
+
return _DatePicker.datePickerClassNames;
|
|
20
|
+
},
|
|
21
|
+
defaultDatePickerErrorStrings: function() {
|
|
22
|
+
return _DatePicker.defaultDatePickerErrorStrings;
|
|
23
|
+
},
|
|
24
|
+
defaultDatePickerStrings: function() {
|
|
25
|
+
return _DatePicker.defaultDatePickerStrings;
|
|
26
|
+
},
|
|
27
|
+
renderDatePicker_unstable: function() {
|
|
28
|
+
return _DatePicker.renderDatePicker_unstable;
|
|
29
|
+
},
|
|
30
|
+
useDatePicker_unstable: function() {
|
|
31
|
+
return _DatePicker.useDatePicker_unstable;
|
|
32
|
+
},
|
|
33
|
+
useDatePickerStyles_unstable: function() {
|
|
34
|
+
return _DatePicker.useDatePickerStyles_unstable;
|
|
35
|
+
},
|
|
36
|
+
DAYS_IN_WEEK: function() {
|
|
37
|
+
return _utils.DAYS_IN_WEEK;
|
|
38
|
+
},
|
|
39
|
+
DateRangeType: function() {
|
|
40
|
+
return _utils.DateRangeType;
|
|
41
|
+
},
|
|
42
|
+
DayOfWeek: function() {
|
|
43
|
+
return _utils.DayOfWeek;
|
|
44
|
+
},
|
|
45
|
+
FirstWeekOfYear: function() {
|
|
46
|
+
return _utils.FirstWeekOfYear;
|
|
47
|
+
},
|
|
48
|
+
MonthOfYear: function() {
|
|
49
|
+
return _utils.MonthOfYear;
|
|
50
|
+
},
|
|
51
|
+
TimeConstants: function() {
|
|
52
|
+
return _utils.TimeConstants;
|
|
53
|
+
},
|
|
54
|
+
addDays: function() {
|
|
55
|
+
return _utils.addDays;
|
|
56
|
+
},
|
|
57
|
+
addMonths: function() {
|
|
58
|
+
return _utils.addMonths;
|
|
59
|
+
},
|
|
60
|
+
addWeeks: function() {
|
|
61
|
+
return _utils.addWeeks;
|
|
62
|
+
},
|
|
63
|
+
addYears: function() {
|
|
64
|
+
return _utils.addYears;
|
|
65
|
+
},
|
|
66
|
+
compareDatePart: function() {
|
|
67
|
+
return _utils.compareDatePart;
|
|
68
|
+
},
|
|
69
|
+
compareDates: function() {
|
|
70
|
+
return _utils.compareDates;
|
|
71
|
+
},
|
|
72
|
+
getDatePartHashValue: function() {
|
|
73
|
+
return _utils.getDatePartHashValue;
|
|
74
|
+
},
|
|
75
|
+
getDateRangeArray: function() {
|
|
76
|
+
return _utils.getDateRangeArray;
|
|
77
|
+
},
|
|
78
|
+
getEndDateOfWeek: function() {
|
|
79
|
+
return _utils.getEndDateOfWeek;
|
|
80
|
+
},
|
|
81
|
+
getMonthEnd: function() {
|
|
82
|
+
return _utils.getMonthEnd;
|
|
83
|
+
},
|
|
84
|
+
getMonthStart: function() {
|
|
85
|
+
return _utils.getMonthStart;
|
|
86
|
+
},
|
|
87
|
+
getStartDateOfWeek: function() {
|
|
88
|
+
return _utils.getStartDateOfWeek;
|
|
89
|
+
},
|
|
90
|
+
getWeekNumber: function() {
|
|
91
|
+
return _utils.getWeekNumber;
|
|
92
|
+
},
|
|
93
|
+
getWeekNumbersInMonth: function() {
|
|
94
|
+
return _utils.getWeekNumbersInMonth;
|
|
95
|
+
},
|
|
96
|
+
getYearEnd: function() {
|
|
97
|
+
return _utils.getYearEnd;
|
|
98
|
+
},
|
|
99
|
+
getYearStart: function() {
|
|
100
|
+
return _utils.getYearStart;
|
|
101
|
+
},
|
|
102
|
+
isInDateRangeArray: function() {
|
|
103
|
+
return _utils.isInDateRangeArray;
|
|
104
|
+
},
|
|
105
|
+
setMonth: function() {
|
|
106
|
+
return _utils.setMonth;
|
|
107
|
+
}
|
|
44
108
|
});
|
|
45
|
-
const
|
|
46
|
-
const
|
|
109
|
+
const _Calendar = require("./Calendar");
|
|
110
|
+
const _DatePicker = require("./DatePicker");
|
|
47
111
|
const _utils = require("./utils");
|