@fluentui/react-calendar-compat 0.0.0-nightly-20231018-0416.1 → 0.0.1
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 +16 -40
- package/CHANGELOG.md +9 -13
- package/dist/index.d.ts +1376 -0
- package/lib/Calendar.js +1 -0
- package/lib/Calendar.js.map +1 -0
- package/lib/CalendarDay.js +1 -0
- package/lib/CalendarDay.js.map +1 -0
- package/lib/CalendarDayGrid.js +1 -0
- package/lib/CalendarDayGrid.js.map +1 -0
- package/lib/CalendarMonth.js +1 -0
- package/lib/CalendarMonth.js.map +1 -0
- package/lib/CalendarPicker.js +1 -0
- package/lib/CalendarPicker.js.map +1 -0
- package/lib/CalendarYear.js +1 -0
- package/lib/CalendarYear.js.map +1 -0
- package/lib/components/Calendar/Calendar.js +302 -0
- package/lib/components/Calendar/Calendar.js.map +1 -0
- package/lib/components/Calendar/Calendar.types.js +10 -0
- package/lib/components/Calendar/Calendar.types.js.map +1 -0
- package/lib/components/Calendar/defaults.js +2 -0
- package/lib/components/Calendar/defaults.js.map +1 -0
- package/lib/components/Calendar/index.js +4 -0
- package/lib/components/Calendar/index.js.map +1 -0
- package/lib/components/Calendar/useCalendarStyles.styles.js +167 -0
- package/lib/components/Calendar/useCalendarStyles.styles.js.map +1 -0
- package/lib/components/CalendarDay/CalendarDay.js +111 -0
- package/lib/components/CalendarDay/CalendarDay.js.map +1 -0
- package/lib/components/CalendarDay/CalendarDay.types.js +1 -0
- package/lib/components/CalendarDay/CalendarDay.types.js.map +1 -0
- package/lib/components/CalendarDay/index.js +3 -0
- package/lib/components/CalendarDay/index.js.map +1 -0
- package/lib/components/CalendarDay/useCalendarDayStyles.styles.js +180 -0
- package/lib/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -0
- package/lib/components/CalendarDayGrid/CalendarDayGrid.js +168 -0
- package/lib/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -0
- package/lib/components/CalendarDayGrid/CalendarDayGrid.types.js +1 -0
- package/lib/components/CalendarDayGrid/CalendarDayGrid.types.js.map +1 -0
- package/lib/components/CalendarDayGrid/CalendarGridDayCell.js +164 -0
- package/lib/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -0
- package/lib/components/CalendarDayGrid/CalendarGridRow.js +26 -0
- package/lib/components/CalendarDayGrid/CalendarGridRow.js.map +1 -0
- package/lib/components/CalendarDayGrid/CalendarMonthHeaderRow.js +36 -0
- package/lib/components/CalendarDayGrid/CalendarMonthHeaderRow.js.map +1 -0
- package/lib/components/CalendarDayGrid/index.js +4 -0
- package/lib/components/CalendarDayGrid/index.js.map +1 -0
- package/lib/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js +437 -0
- package/lib/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -0
- package/lib/components/CalendarDayGrid/useWeekCornerStyles.styles.js +98 -0
- package/lib/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -0
- package/lib/components/CalendarDayGrid/useWeeks.js +45 -0
- package/lib/components/CalendarDayGrid/useWeeks.js.map +1 -0
- package/lib/components/CalendarMonth/CalendarMonth.js +263 -0
- package/lib/components/CalendarMonth/CalendarMonth.js.map +1 -0
- package/lib/components/CalendarMonth/CalendarMonth.types.js +1 -0
- package/lib/components/CalendarMonth/CalendarMonth.types.js.map +1 -0
- package/lib/components/CalendarMonth/index.js +3 -0
- package/lib/components/CalendarMonth/index.js.map +1 -0
- package/lib/components/CalendarMonth/useCalendarMonthStyles.js +8 -0
- package/lib/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -0
- package/lib/components/CalendarPicker/CalendarPicker.types.js +1 -0
- package/lib/components/CalendarPicker/CalendarPicker.types.js.map +1 -0
- package/lib/components/CalendarPicker/index.js +2 -0
- package/lib/components/CalendarPicker/index.js.map +1 -0
- package/lib/components/CalendarPicker/useCalendarPickerStyles.styles.js +371 -0
- package/lib/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -0
- package/lib/components/CalendarYear/CalendarYear.js +298 -0
- package/lib/components/CalendarYear/CalendarYear.js.map +1 -0
- package/lib/components/CalendarYear/CalendarYear.types.js +1 -0
- package/lib/components/CalendarYear/CalendarYear.types.js.map +1 -0
- package/lib/components/CalendarYear/index.js +3 -0
- package/lib/components/CalendarYear/index.js.map +1 -0
- package/lib/components/CalendarYear/useCalendarYearStyles.styles.js +10 -0
- package/lib/components/CalendarYear/useCalendarYearStyles.styles.js.map +1 -0
- package/lib/index.js +7 -0
- package/lib/index.js.map +1 -0
- package/lib/utils/animations.js +97 -0
- package/lib/utils/animations.js.map +1 -0
- package/lib/utils/constants.js +62 -0
- package/lib/utils/constants.js.map +1 -0
- package/lib/utils/dateFormatting/dateFormatting.defaults.js +95 -0
- package/lib/utils/dateFormatting/dateFormatting.defaults.js.map +1 -0
- package/lib/utils/dateFormatting/dateFormatting.types.js +1 -0
- package/lib/utils/dateFormatting/dateFormatting.types.js.map +1 -0
- package/lib/utils/dateFormatting/index.js +2 -0
- package/lib/utils/dateFormatting/index.js.map +1 -0
- package/lib/utils/dateGrid/dateGrid.types.js +1 -0
- package/lib/utils/dateGrid/dateGrid.types.js.map +1 -0
- package/lib/utils/dateGrid/findAvailableDate.js +22 -0
- package/lib/utils/dateGrid/findAvailableDate.js.map +1 -0
- package/lib/utils/dateGrid/getBoundedDateRange.js +18 -0
- package/lib/utils/dateGrid/getBoundedDateRange.js.map +1 -0
- package/lib/utils/dateGrid/getDateRangeTypeToUse.js +16 -0
- package/lib/utils/dateGrid/getDateRangeTypeToUse.js.map +1 -0
- package/lib/utils/dateGrid/getDayGrid.js +71 -0
- package/lib/utils/dateGrid/getDayGrid.js.map +1 -0
- package/lib/utils/dateGrid/index.js +5 -0
- package/lib/utils/dateGrid/index.js.map +1 -0
- package/lib/utils/dateGrid/isAfterMaxDate.js +9 -0
- package/lib/utils/dateGrid/isAfterMaxDate.js.map +1 -0
- package/lib/utils/dateGrid/isBeforeMinDate.js +9 -0
- package/lib/utils/dateGrid/isBeforeMinDate.js.map +1 -0
- package/lib/utils/dateGrid/isContiguous.js +18 -0
- package/lib/utils/dateGrid/isContiguous.js.map +1 -0
- package/lib/utils/dateGrid/isRestrictedDate.js +15 -0
- package/lib/utils/dateGrid/isRestrictedDate.js.map +1 -0
- package/lib/utils/dateMath/dateMath.js +339 -0
- package/lib/utils/dateMath/dateMath.js.map +1 -0
- package/lib/utils/dateMath/index.js +1 -0
- package/lib/utils/dateMath/index.js.map +1 -0
- package/lib/utils/dom.js +8 -0
- package/lib/utils/dom.js.map +1 -0
- package/lib/utils/focus.js +26 -0
- package/lib/utils/focus.js.map +1 -0
- package/lib/utils/index.js +7 -0
- package/lib/utils/index.js.map +1 -0
- package/lib-commonjs/Calendar.js +6 -0
- package/lib-commonjs/Calendar.js.map +1 -0
- package/lib-commonjs/CalendarDay.js +6 -0
- package/lib-commonjs/CalendarDay.js.map +1 -0
- package/lib-commonjs/CalendarDayGrid.js +6 -0
- package/lib-commonjs/CalendarDayGrid.js.map +1 -0
- package/lib-commonjs/CalendarMonth.js +6 -0
- package/lib-commonjs/CalendarMonth.js.map +1 -0
- package/lib-commonjs/CalendarPicker.js +6 -0
- package/lib-commonjs/CalendarPicker.js.map +1 -0
- package/lib-commonjs/CalendarYear.js +6 -0
- package/lib-commonjs/CalendarYear.js.map +1 -0
- package/lib-commonjs/components/Calendar/Calendar.js +311 -0
- package/lib-commonjs/components/Calendar/Calendar.js.map +1 -0
- package/lib-commonjs/components/Calendar/Calendar.types.js +21 -0
- package/lib-commonjs/components/Calendar/Calendar.types.js.map +1 -0
- package/lib-commonjs/components/Calendar/defaults.js +12 -0
- package/lib-commonjs/components/Calendar/defaults.js.map +1 -0
- package/lib-commonjs/components/Calendar/index.js +15 -0
- package/lib-commonjs/components/Calendar/index.js.map +1 -0
- package/lib-commonjs/components/Calendar/useCalendarStyles.styles.js +339 -0
- package/lib-commonjs/components/Calendar/useCalendarStyles.styles.js.map +1 -0
- package/lib-commonjs/components/CalendarDay/CalendarDay.js +120 -0
- package/lib-commonjs/components/CalendarDay/CalendarDay.js.map +1 -0
- package/lib-commonjs/components/CalendarDay/CalendarDay.types.js +6 -0
- package/lib-commonjs/components/CalendarDay/CalendarDay.types.js.map +1 -0
- package/lib-commonjs/components/CalendarDay/index.js +8 -0
- package/lib-commonjs/components/CalendarDay/index.js.map +1 -0
- package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.styles.js +357 -0
- package/lib-commonjs/components/CalendarDay/useCalendarDayStyles.styles.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js +179 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.types.js +6 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarDayGrid.types.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js +173 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridDayCell.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridRow.js +35 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarGridRow.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarMonthHeaderRow.js +45 -0
- package/lib-commonjs/components/CalendarDayGrid/CalendarMonthHeaderRow.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/index.js +22 -0
- package/lib-commonjs/components/CalendarDayGrid/index.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js +890 -0
- package/lib-commonjs/components/CalendarDayGrid/useCalendarDayGridStyles.styles.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.styles.js +105 -0
- package/lib-commonjs/components/CalendarDayGrid/useWeekCornerStyles.styles.js.map +1 -0
- package/lib-commonjs/components/CalendarDayGrid/useWeeks.js +54 -0
- package/lib-commonjs/components/CalendarDayGrid/useWeeks.js.map +1 -0
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.js +272 -0
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.js.map +1 -0
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.types.js +6 -0
- package/lib-commonjs/components/CalendarMonth/CalendarMonth.types.js.map +1 -0
- package/lib-commonjs/components/CalendarMonth/index.js +8 -0
- package/lib-commonjs/components/CalendarMonth/index.js.map +1 -0
- package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js +14 -0
- package/lib-commonjs/components/CalendarMonth/useCalendarMonthStyles.js.map +1 -0
- package/lib-commonjs/components/CalendarPicker/CalendarPicker.types.js +4 -0
- package/lib-commonjs/components/CalendarPicker/CalendarPicker.types.js.map +1 -0
- package/lib-commonjs/components/CalendarPicker/index.js +7 -0
- package/lib-commonjs/components/CalendarPicker/index.js.map +1 -0
- package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.styles.js +742 -0
- package/lib-commonjs/components/CalendarPicker/useCalendarPickerStyles.styles.js.map +1 -0
- package/lib-commonjs/components/CalendarYear/CalendarYear.js +307 -0
- package/lib-commonjs/components/CalendarYear/CalendarYear.js.map +1 -0
- package/lib-commonjs/components/CalendarYear/CalendarYear.types.js +6 -0
- package/lib-commonjs/components/CalendarYear/CalendarYear.types.js.map +1 -0
- package/lib-commonjs/components/CalendarYear/index.js +8 -0
- package/lib-commonjs/components/CalendarYear/index.js.map +1 -0
- package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js +14 -0
- package/lib-commonjs/components/CalendarYear/useCalendarYearStyles.styles.js.map +1 -0
- package/lib-commonjs/index.js +154 -0
- package/lib-commonjs/index.js.map +1 -0
- package/lib-commonjs/utils/animations.js +154 -0
- package/lib-commonjs/utils/animations.js.map +1 -0
- package/lib-commonjs/utils/constants.js +92 -0
- package/lib-commonjs/utils/constants.js.map +1 -0
- package/lib-commonjs/utils/dateFormatting/dateFormatting.defaults.js +116 -0
- package/lib-commonjs/utils/dateFormatting/dateFormatting.defaults.js.map +1 -0
- package/lib-commonjs/utils/dateFormatting/dateFormatting.types.js +4 -0
- package/lib-commonjs/utils/dateFormatting/dateFormatting.types.js.map +1 -0
- package/lib-commonjs/utils/dateFormatting/index.js +7 -0
- package/lib-commonjs/utils/dateFormatting/index.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/dateGrid.types.js +4 -0
- package/lib-commonjs/utils/dateGrid/dateGrid.types.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/findAvailableDate.js +29 -0
- package/lib-commonjs/utils/dateGrid/findAvailableDate.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/getBoundedDateRange.js +23 -0
- package/lib-commonjs/utils/dateGrid/getBoundedDateRange.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/getDateRangeTypeToUse.js +20 -0
- package/lib-commonjs/utils/dateGrid/getDateRangeTypeToUse.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/getDayGrid.js +76 -0
- package/lib-commonjs/utils/dateGrid/getDayGrid.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/index.js +10 -0
- package/lib-commonjs/utils/dateGrid/index.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/isAfterMaxDate.js +15 -0
- package/lib-commonjs/utils/dateGrid/isAfterMaxDate.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/isBeforeMinDate.js +15 -0
- package/lib-commonjs/utils/dateGrid/isBeforeMinDate.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/isContiguous.js +28 -0
- package/lib-commonjs/utils/dateGrid/isContiguous.js.map +1 -0
- package/lib-commonjs/utils/dateGrid/isRestrictedDate.js +21 -0
- package/lib-commonjs/utils/dateGrid/isRestrictedDate.js.map +1 -0
- package/lib-commonjs/utils/dateMath/dateMath.js +308 -0
- package/lib-commonjs/utils/dateMath/dateMath.js.map +1 -0
- package/lib-commonjs/utils/dateMath/index.js +6 -0
- package/lib-commonjs/utils/dateMath/index.js.map +1 -0
- package/lib-commonjs/utils/dom.js +18 -0
- package/lib-commonjs/utils/dom.js.map +1 -0
- package/lib-commonjs/utils/focus.js +31 -0
- package/lib-commonjs/utils/focus.js.map +1 -0
- package/lib-commonjs/utils/index.js +12 -0
- package/lib-commonjs/utils/index.js.map +1 -0
- package/package.json +16 -10
@@ -0,0 +1,173 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "CalendarGridDayCell", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return CalendarGridDayCell;
|
9
|
+
}
|
10
|
+
});
|
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 _reactutilities = require("@fluentui/react-utilities");
|
15
|
+
const _reactsharedcontexts = require("@fluentui/react-shared-contexts");
|
16
|
+
const _react1 = require("@griffel/react");
|
17
|
+
const _utils = require("../../utils");
|
18
|
+
const _useWeekCornerStylesstyles = require("./useWeekCornerStyles.styles");
|
19
|
+
const _useCalendarDayGridStylesstyles = require("./useCalendarDayGridStyles.styles");
|
20
|
+
const CalendarGridDayCell = (props)=>{
|
21
|
+
const { navigatedDate, dateTimeFormatter, allFocusable, strings, activeDescendantId, navigatedDayRef, calculateRoundedStyles, weeks, classNames, day, dayIndex, weekIndex, weekCorners, ariaHidden, customDayCellRef, dateRangeType, daysToSelectInDayView, onSelectDate, restrictedDates, minDate, maxDate, onNavigateDate, getDayInfosInRangeOfDay, getRefsFromDayInfos } = props;
|
22
|
+
var _weekCorners_;
|
23
|
+
const cornerStyle = (_weekCorners_ = weekCorners === null || weekCorners === void 0 ? void 0 : weekCorners[weekIndex + '_' + dayIndex]) !== null && _weekCorners_ !== void 0 ? _weekCorners_ : '';
|
24
|
+
const isNavigatedDate = (0, _utils.compareDates)(navigatedDate, day.originalDate);
|
25
|
+
const { dir } = (0, _reactsharedcontexts.useFluent_unstable)();
|
26
|
+
const navigateMonthEdge = (ev, date)=>{
|
27
|
+
let targetDate = undefined;
|
28
|
+
let direction = 1; // by default search forward
|
29
|
+
if (ev.key === _keyboardkeys.ArrowUp) {
|
30
|
+
targetDate = (0, _utils.addWeeks)(date, -1);
|
31
|
+
direction = -1;
|
32
|
+
} else if (ev.key === _keyboardkeys.ArrowDown) {
|
33
|
+
targetDate = (0, _utils.addWeeks)(date, 1);
|
34
|
+
} else if (ev.key === (0, _reactutilities.getRTLSafeKey)(_keyboardkeys.ArrowLeft, dir)) {
|
35
|
+
targetDate = (0, _utils.addDays)(date, -1);
|
36
|
+
direction = -1;
|
37
|
+
} else if (ev.key === (0, _reactutilities.getRTLSafeKey)(_keyboardkeys.ArrowRight, dir)) {
|
38
|
+
targetDate = (0, _utils.addDays)(date, 1);
|
39
|
+
}
|
40
|
+
if (!targetDate) {
|
41
|
+
// if we couldn't find a target date at all, do nothing
|
42
|
+
return;
|
43
|
+
}
|
44
|
+
const findAvailableDateOptions = {
|
45
|
+
initialDate: date,
|
46
|
+
targetDate,
|
47
|
+
direction,
|
48
|
+
restrictedDates,
|
49
|
+
minDate,
|
50
|
+
maxDate
|
51
|
+
};
|
52
|
+
// target date is restricted, search in whatever direction until finding the next possible date,
|
53
|
+
// stopping at boundaries
|
54
|
+
let nextDate = (0, _utils.findAvailableDate)(findAvailableDateOptions);
|
55
|
+
if (!nextDate) {
|
56
|
+
// if no dates available in initial direction, try going backwards
|
57
|
+
findAvailableDateOptions.direction = -direction;
|
58
|
+
nextDate = (0, _utils.findAvailableDate)(findAvailableDateOptions);
|
59
|
+
}
|
60
|
+
// if the nextDate is still inside the same focusZone area, let the focusZone handle setting the focus so we
|
61
|
+
// don't jump the view unnecessarily
|
62
|
+
const isInCurrentView = weeks && nextDate && weeks.slice(1, weeks.length - 1).some((week)=>{
|
63
|
+
return week.some((dayToCompare)=>{
|
64
|
+
return (0, _utils.compareDates)(dayToCompare.originalDate, nextDate);
|
65
|
+
});
|
66
|
+
});
|
67
|
+
if (isInCurrentView) {
|
68
|
+
return;
|
69
|
+
}
|
70
|
+
// else, fire navigation on the date to change the view to show it
|
71
|
+
if (nextDate) {
|
72
|
+
onNavigateDate(nextDate, true);
|
73
|
+
ev.preventDefault();
|
74
|
+
}
|
75
|
+
};
|
76
|
+
const onMouseOverDay = (ev)=>{
|
77
|
+
const dayInfos = getDayInfosInRangeOfDay(day);
|
78
|
+
const dayRefs = getRefsFromDayInfos(dayInfos);
|
79
|
+
dayRefs.forEach((dayRef, index)=>{
|
80
|
+
if (dayRef) {
|
81
|
+
dayRef.classList.add(_useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames.hoverStyle);
|
82
|
+
if (!dayInfos[index].isSelected && dateRangeType === _utils.DateRangeType.Day && daysToSelectInDayView && daysToSelectInDayView > 1) {
|
83
|
+
// remove the static classes first to overwrite them
|
84
|
+
dayRef.classList.remove(_useWeekCornerStylesstyles.weekCornersClassNames.bottomLeftCornerDate, _useWeekCornerStylesstyles.weekCornersClassNames.bottomRightCornerDate, _useWeekCornerStylesstyles.weekCornersClassNames.topLeftCornerDate, _useWeekCornerStylesstyles.weekCornersClassNames.topRightCornerDate);
|
85
|
+
const classNamesToAdd = calculateRoundedStyles(false, false, index > 0, index < dayRefs.length - 1).trim();
|
86
|
+
if (classNamesToAdd) {
|
87
|
+
dayRef.classList.add(...classNamesToAdd);
|
88
|
+
}
|
89
|
+
}
|
90
|
+
}
|
91
|
+
});
|
92
|
+
};
|
93
|
+
const onMouseDownDay = (ev)=>{
|
94
|
+
const dayInfos = getDayInfosInRangeOfDay(day);
|
95
|
+
const dayRefs = getRefsFromDayInfos(dayInfos);
|
96
|
+
dayRefs.forEach((dayRef)=>{
|
97
|
+
if (dayRef) {
|
98
|
+
dayRef.classList.add(_useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames.pressedStyle);
|
99
|
+
}
|
100
|
+
});
|
101
|
+
};
|
102
|
+
const onMouseUpDay = (ev)=>{
|
103
|
+
const dayInfos = getDayInfosInRangeOfDay(day);
|
104
|
+
const dayRefs = getRefsFromDayInfos(dayInfos);
|
105
|
+
dayRefs.forEach((dayRef)=>{
|
106
|
+
if (dayRef) {
|
107
|
+
dayRef.classList.remove(_useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames.pressedStyle);
|
108
|
+
}
|
109
|
+
});
|
110
|
+
};
|
111
|
+
const onMouseOutDay = (ev)=>{
|
112
|
+
const dayInfos = getDayInfosInRangeOfDay(day);
|
113
|
+
const dayRefs = getRefsFromDayInfos(dayInfos);
|
114
|
+
dayRefs.forEach((dayRef, index)=>{
|
115
|
+
if (dayRef) {
|
116
|
+
dayRef.classList.remove(_useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames.hoverStyle);
|
117
|
+
dayRef.classList.remove(_useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames.pressedStyle);
|
118
|
+
if (!dayInfos[index].isSelected && dateRangeType === _utils.DateRangeType.Day && daysToSelectInDayView && daysToSelectInDayView > 1) {
|
119
|
+
const classNamesToAdd = calculateRoundedStyles(false, false, index > 0, index < dayRefs.length - 1).trim();
|
120
|
+
if (classNamesToAdd) {
|
121
|
+
dayRef.classList.remove(...classNamesToAdd);
|
122
|
+
}
|
123
|
+
}
|
124
|
+
}
|
125
|
+
});
|
126
|
+
};
|
127
|
+
const onDayKeyDown = (ev)=>{
|
128
|
+
if (ev.key === _keyboardkeys.Enter) {
|
129
|
+
onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(day.originalDate);
|
130
|
+
} else {
|
131
|
+
navigateMonthEdge(ev, day.originalDate);
|
132
|
+
}
|
133
|
+
};
|
134
|
+
let ariaLabel = day.originalDate.getDate() + ', ' + strings.months[day.originalDate.getMonth()] + ', ' + day.originalDate.getFullYear();
|
135
|
+
if (day.isMarked) {
|
136
|
+
ariaLabel = ariaLabel + ', ' + strings.dayMarkedAriaLabel;
|
137
|
+
}
|
138
|
+
const isFocusable = !ariaHidden && (allFocusable || (day.isInBounds ? true : undefined));
|
139
|
+
return /*#__PURE__*/ _react.createElement("td", {
|
140
|
+
className: (0, _react1.mergeClasses)(classNames.dayCell, weekCorners && cornerStyle, day.isSelected && classNames.daySelected, !day.isInBounds && classNames.dayOutsideBounds, !day.isInMonth && classNames.dayOutsideNavigatedMonth),
|
141
|
+
ref: (element)=>{
|
142
|
+
customDayCellRef === null || customDayCellRef === void 0 ? void 0 : customDayCellRef(element, day.originalDate, classNames);
|
143
|
+
day.setRef(element);
|
144
|
+
isNavigatedDate && (navigatedDayRef.current = element);
|
145
|
+
},
|
146
|
+
"aria-hidden": ariaHidden,
|
147
|
+
"aria-disabled": !ariaHidden && !day.isInBounds,
|
148
|
+
onClick: day.isInBounds && !ariaHidden ? day.onSelected : undefined,
|
149
|
+
onMouseOver: !ariaHidden ? onMouseOverDay : undefined,
|
150
|
+
onMouseDown: !ariaHidden ? onMouseDownDay : undefined,
|
151
|
+
onMouseUp: !ariaHidden ? onMouseUpDay : undefined,
|
152
|
+
onMouseOut: !ariaHidden ? onMouseOutDay : undefined,
|
153
|
+
onKeyDown: !ariaHidden ? onDayKeyDown : undefined,
|
154
|
+
role: "gridcell",
|
155
|
+
tabIndex: isNavigatedDate || isFocusable ? 0 : undefined,
|
156
|
+
"aria-current": day.isToday ? 'date' : undefined,
|
157
|
+
"aria-selected": day.isInBounds ? day.isSelected : undefined
|
158
|
+
}, /*#__PURE__*/ _react.createElement("button", {
|
159
|
+
key: day.key + 'button',
|
160
|
+
"aria-hidden": ariaHidden,
|
161
|
+
className: (0, _react1.mergeClasses)(classNames.dayButton, day.isToday && classNames.dayIsToday),
|
162
|
+
"aria-label": ariaLabel,
|
163
|
+
id: isNavigatedDate ? activeDescendantId : undefined,
|
164
|
+
disabled: !ariaHidden && !day.isInBounds,
|
165
|
+
type: "button",
|
166
|
+
tabIndex: -1
|
167
|
+
}, /*#__PURE__*/ _react.createElement("span", {
|
168
|
+
"aria-hidden": "true"
|
169
|
+
}, dateTimeFormatter.formatDay(day.originalDate)), day.isMarked && /*#__PURE__*/ _react.createElement("div", {
|
170
|
+
"aria-hidden": "true",
|
171
|
+
className: classNames.dayMarker
|
172
|
+
})));
|
173
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["CalendarGridDayCell.js"],"sourcesContent":["import * as React from 'react';\nimport { ArrowDown, ArrowLeft, ArrowRight, ArrowUp, Enter } from '@fluentui/keyboard-keys';\nimport { getRTLSafeKey } from '@fluentui/react-utilities';\nimport { useFluent_unstable } from '@fluentui/react-shared-contexts';\nimport { mergeClasses } from '@griffel/react';\nimport { addDays, addWeeks, compareDates, findAvailableDate, DateRangeType } from '../../utils';\nimport { weekCornersClassNames } from './useWeekCornerStyles.styles';\nimport { extraCalendarDayGridClassNames } from './useCalendarDayGridStyles.styles';\n/**\n * @internal\n */ export const CalendarGridDayCell = (props)=>{\n const { navigatedDate, dateTimeFormatter, allFocusable, strings, activeDescendantId, navigatedDayRef, calculateRoundedStyles, weeks, classNames, day, dayIndex, weekIndex, weekCorners, ariaHidden, customDayCellRef, dateRangeType, daysToSelectInDayView, onSelectDate, restrictedDates, minDate, maxDate, onNavigateDate, getDayInfosInRangeOfDay, getRefsFromDayInfos } = props;\n var _weekCorners_;\n const cornerStyle = (_weekCorners_ = weekCorners === null || weekCorners === void 0 ? void 0 : weekCorners[weekIndex + '_' + dayIndex]) !== null && _weekCorners_ !== void 0 ? _weekCorners_ : '';\n const isNavigatedDate = compareDates(navigatedDate, day.originalDate);\n const { dir } = useFluent_unstable();\n const navigateMonthEdge = (ev, date)=>{\n let targetDate = undefined;\n let direction = 1; // by default search forward\n if (ev.key === ArrowUp) {\n targetDate = addWeeks(date, -1);\n direction = -1;\n } else if (ev.key === ArrowDown) {\n targetDate = addWeeks(date, 1);\n } else if (ev.key === getRTLSafeKey(ArrowLeft, dir)) {\n targetDate = addDays(date, -1);\n direction = -1;\n } else if (ev.key === getRTLSafeKey(ArrowRight, dir)) {\n targetDate = addDays(date, 1);\n }\n if (!targetDate) {\n // if we couldn't find a target date at all, do nothing\n return;\n }\n const findAvailableDateOptions = {\n initialDate: date,\n targetDate,\n direction,\n restrictedDates,\n minDate,\n maxDate\n };\n // target date is restricted, search in whatever direction until finding the next possible date,\n // stopping at boundaries\n let nextDate = findAvailableDate(findAvailableDateOptions);\n if (!nextDate) {\n // if no dates available in initial direction, try going backwards\n findAvailableDateOptions.direction = -direction;\n nextDate = findAvailableDate(findAvailableDateOptions);\n }\n // if the nextDate is still inside the same focusZone area, let the focusZone handle setting the focus so we\n // don't jump the view unnecessarily\n const isInCurrentView = weeks && nextDate && weeks.slice(1, weeks.length - 1).some((week)=>{\n return week.some((dayToCompare)=>{\n return compareDates(dayToCompare.originalDate, nextDate);\n });\n });\n if (isInCurrentView) {\n return;\n }\n // else, fire navigation on the date to change the view to show it\n if (nextDate) {\n onNavigateDate(nextDate, true);\n ev.preventDefault();\n }\n };\n const onMouseOverDay = (ev)=>{\n const dayInfos = getDayInfosInRangeOfDay(day);\n const dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach((dayRef, index)=>{\n if (dayRef) {\n dayRef.classList.add(extraCalendarDayGridClassNames.hoverStyle);\n if (!dayInfos[index].isSelected && dateRangeType === DateRangeType.Day && daysToSelectInDayView && daysToSelectInDayView > 1) {\n // remove the static classes first to overwrite them\n dayRef.classList.remove(weekCornersClassNames.bottomLeftCornerDate, weekCornersClassNames.bottomRightCornerDate, weekCornersClassNames.topLeftCornerDate, weekCornersClassNames.topRightCornerDate);\n const classNamesToAdd = calculateRoundedStyles(false, false, index > 0, index < dayRefs.length - 1).trim();\n if (classNamesToAdd) {\n dayRef.classList.add(...classNamesToAdd);\n }\n }\n }\n });\n };\n const onMouseDownDay = (ev)=>{\n const dayInfos = getDayInfosInRangeOfDay(day);\n const dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach((dayRef)=>{\n if (dayRef) {\n dayRef.classList.add(extraCalendarDayGridClassNames.pressedStyle);\n }\n });\n };\n const onMouseUpDay = (ev)=>{\n const dayInfos = getDayInfosInRangeOfDay(day);\n const dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach((dayRef)=>{\n if (dayRef) {\n dayRef.classList.remove(extraCalendarDayGridClassNames.pressedStyle);\n }\n });\n };\n const onMouseOutDay = (ev)=>{\n const dayInfos = getDayInfosInRangeOfDay(day);\n const dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach((dayRef, index)=>{\n if (dayRef) {\n dayRef.classList.remove(extraCalendarDayGridClassNames.hoverStyle);\n dayRef.classList.remove(extraCalendarDayGridClassNames.pressedStyle);\n if (!dayInfos[index].isSelected && dateRangeType === DateRangeType.Day && daysToSelectInDayView && daysToSelectInDayView > 1) {\n const classNamesToAdd = calculateRoundedStyles(false, false, index > 0, index < dayRefs.length - 1).trim();\n if (classNamesToAdd) {\n dayRef.classList.remove(...classNamesToAdd);\n }\n }\n }\n });\n };\n const onDayKeyDown = (ev)=>{\n if (ev.key === Enter) {\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(day.originalDate);\n } else {\n navigateMonthEdge(ev, day.originalDate);\n }\n };\n let ariaLabel = day.originalDate.getDate() + ', ' + strings.months[day.originalDate.getMonth()] + ', ' + day.originalDate.getFullYear();\n if (day.isMarked) {\n ariaLabel = ariaLabel + ', ' + strings.dayMarkedAriaLabel;\n }\n const isFocusable = !ariaHidden && (allFocusable || (day.isInBounds ? true : undefined));\n return /*#__PURE__*/ React.createElement(\"td\", {\n className: mergeClasses(classNames.dayCell, weekCorners && cornerStyle, day.isSelected && classNames.daySelected, !day.isInBounds && classNames.dayOutsideBounds, !day.isInMonth && classNames.dayOutsideNavigatedMonth),\n ref: (element)=>{\n customDayCellRef === null || customDayCellRef === void 0 ? void 0 : customDayCellRef(element, day.originalDate, classNames);\n day.setRef(element);\n isNavigatedDate && (navigatedDayRef.current = element);\n },\n \"aria-hidden\": ariaHidden,\n \"aria-disabled\": !ariaHidden && !day.isInBounds,\n onClick: day.isInBounds && !ariaHidden ? day.onSelected : undefined,\n onMouseOver: !ariaHidden ? onMouseOverDay : undefined,\n onMouseDown: !ariaHidden ? onMouseDownDay : undefined,\n onMouseUp: !ariaHidden ? onMouseUpDay : undefined,\n onMouseOut: !ariaHidden ? onMouseOutDay : undefined,\n onKeyDown: !ariaHidden ? onDayKeyDown : undefined,\n role: \"gridcell\",\n tabIndex: isNavigatedDate || isFocusable ? 0 : undefined,\n \"aria-current\": day.isToday ? 'date' : undefined,\n \"aria-selected\": day.isInBounds ? day.isSelected : undefined\n }, /*#__PURE__*/ React.createElement(\"button\", {\n key: day.key + 'button',\n \"aria-hidden\": ariaHidden,\n className: mergeClasses(classNames.dayButton, day.isToday && classNames.dayIsToday),\n \"aria-label\": ariaLabel,\n id: isNavigatedDate ? activeDescendantId : undefined,\n disabled: !ariaHidden && !day.isInBounds,\n type: \"button\",\n tabIndex: -1\n }, /*#__PURE__*/ React.createElement(\"span\", {\n \"aria-hidden\": \"true\"\n }, dateTimeFormatter.formatDay(day.originalDate)), day.isMarked && /*#__PURE__*/ React.createElement(\"div\", {\n \"aria-hidden\": \"true\",\n className: classNames.dayMarker\n })));\n};\n"],"names":["CalendarGridDayCell","props","navigatedDate","dateTimeFormatter","allFocusable","strings","activeDescendantId","navigatedDayRef","calculateRoundedStyles","weeks","classNames","day","dayIndex","weekIndex","weekCorners","ariaHidden","customDayCellRef","dateRangeType","daysToSelectInDayView","onSelectDate","restrictedDates","minDate","maxDate","onNavigateDate","getDayInfosInRangeOfDay","getRefsFromDayInfos","_weekCorners_","cornerStyle","isNavigatedDate","compareDates","originalDate","dir","useFluent_unstable","navigateMonthEdge","ev","date","targetDate","undefined","direction","key","ArrowUp","addWeeks","ArrowDown","getRTLSafeKey","ArrowLeft","addDays","ArrowRight","findAvailableDateOptions","initialDate","nextDate","findAvailableDate","isInCurrentView","slice","length","some","week","dayToCompare","preventDefault","onMouseOverDay","dayInfos","dayRefs","forEach","dayRef","index","classList","add","extraCalendarDayGridClassNames","hoverStyle","isSelected","DateRangeType","Day","remove","weekCornersClassNames","bottomLeftCornerDate","bottomRightCornerDate","topLeftCornerDate","topRightCornerDate","classNamesToAdd","trim","onMouseDownDay","pressedStyle","onMouseUpDay","onMouseOutDay","onDayKeyDown","Enter","ariaLabel","getDate","months","getMonth","getFullYear","isMarked","dayMarkedAriaLabel","isFocusable","isInBounds","React","createElement","className","mergeClasses","dayCell","daySelected","dayOutsideBounds","isInMonth","dayOutsideNavigatedMonth","ref","element","setRef","current","onClick","onSelected","onMouseOver","onMouseDown","onMouseUp","onMouseOut","onKeyDown","role","tabIndex","isToday","dayButton","dayIsToday","id","disabled","type","formatDay","dayMarker"],"mappings":"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"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "CalendarGridRow", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return CalendarGridRow;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
12
|
+
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
13
|
+
const _utils = require("../../utils");
|
14
|
+
const _CalendarGridDayCell = require("./CalendarGridDayCell");
|
15
|
+
const CalendarGridRow = (props)=>{
|
16
|
+
const { classNames, week, weeks, weekIndex, rowClassName, ariaRole, showWeekNumbers, firstDayOfWeek, firstWeekOfYear, navigatedDate, strings } = props;
|
17
|
+
const weekNumbers = showWeekNumbers ? (0, _utils.getWeekNumbersInMonth)(weeks.length, firstDayOfWeek, firstWeekOfYear, navigatedDate) : null;
|
18
|
+
const titleString = weekNumbers ? strings.weekNumberFormatString && strings.weekNumberFormatString.replace('{0}', `${weekNumbers[weekIndex]}`) : '';
|
19
|
+
return /*#__PURE__*/ _react.createElement("tr", {
|
20
|
+
role: ariaRole,
|
21
|
+
className: rowClassName,
|
22
|
+
key: weekIndex + '_' + week[0].key
|
23
|
+
}, showWeekNumbers && weekNumbers && /*#__PURE__*/ _react.createElement("th", {
|
24
|
+
className: classNames.weekNumberCell,
|
25
|
+
key: weekIndex,
|
26
|
+
title: titleString,
|
27
|
+
"aria-label": titleString,
|
28
|
+
scope: "row"
|
29
|
+
}, /*#__PURE__*/ _react.createElement("span", null, weekNumbers[weekIndex])), week.map((day, dayIndex)=>/*#__PURE__*/ _react.createElement(_CalendarGridDayCell.CalendarGridDayCell, {
|
30
|
+
...props,
|
31
|
+
key: day.key,
|
32
|
+
day: day,
|
33
|
+
dayIndex: dayIndex
|
34
|
+
})));
|
35
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["CalendarGridRow.js"],"sourcesContent":["import * as React from 'react';\nimport { getWeekNumbersInMonth } from '../../utils';\nimport { CalendarGridDayCell } from './CalendarGridDayCell';\n/**\n * @internal\n */ export const CalendarGridRow = (props)=>{\n const { classNames, week, weeks, weekIndex, rowClassName, ariaRole, showWeekNumbers, firstDayOfWeek, firstWeekOfYear, navigatedDate, strings } = props;\n const weekNumbers = showWeekNumbers ? getWeekNumbersInMonth(weeks.length, firstDayOfWeek, firstWeekOfYear, navigatedDate) : null;\n const titleString = weekNumbers ? strings.weekNumberFormatString && strings.weekNumberFormatString.replace('{0}', `${weekNumbers[weekIndex]}`) : '';\n return /*#__PURE__*/ React.createElement(\"tr\", {\n role: ariaRole,\n className: rowClassName,\n key: weekIndex + '_' + week[0].key\n }, showWeekNumbers && weekNumbers && /*#__PURE__*/ React.createElement(\"th\", {\n className: classNames.weekNumberCell,\n key: weekIndex,\n title: titleString,\n \"aria-label\": titleString,\n scope: \"row\"\n }, /*#__PURE__*/ React.createElement(\"span\", null, weekNumbers[weekIndex])), week.map((day, dayIndex)=>/*#__PURE__*/ React.createElement(CalendarGridDayCell, {\n ...props,\n key: day.key,\n day: day,\n dayIndex: dayIndex\n })));\n};\n"],"names":["CalendarGridRow","props","classNames","week","weeks","weekIndex","rowClassName","ariaRole","showWeekNumbers","firstDayOfWeek","firstWeekOfYear","navigatedDate","strings","weekNumbers","getWeekNumbersInMonth","length","titleString","weekNumberFormatString","replace","React","createElement","role","className","key","weekNumberCell","title","scope","map","day","dayIndex","CalendarGridDayCell"],"mappings":";;;;+BAKiBA;;;eAAAA;;;;iEALM;uBACe;qCACF;AAGzB,MAAMA,kBAAkB,CAACC;IAChC,MAAM,EAAEC,UAAU,EAAEC,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,YAAY,EAAEC,QAAQ,EAAEC,eAAe,EAAEC,cAAc,EAAEC,eAAe,EAAEC,aAAa,EAAEC,OAAO,EAAE,GAAGX;IACjJ,MAAMY,cAAcL,kBAAkBM,IAAAA,4BAAqB,EAACV,MAAMW,MAAM,EAAEN,gBAAgBC,iBAAiBC,iBAAiB;IAC5H,MAAMK,cAAcH,cAAcD,QAAQK,sBAAsB,IAAIL,QAAQK,sBAAsB,CAACC,OAAO,CAAC,OAAO,CAAC,EAAEL,WAAW,CAACR,UAAU,CAAC,CAAC,IAAI;IACjJ,OAAO,WAAW,GAAGc,OAAMC,aAAa,CAAC,MAAM;QAC3CC,MAAMd;QACNe,WAAWhB;QACXiB,KAAKlB,YAAY,MAAMF,IAAI,CAAC,EAAE,CAACoB,GAAG;IACtC,GAAGf,mBAAmBK,eAAe,WAAW,GAAGM,OAAMC,aAAa,CAAC,MAAM;QACzEE,WAAWpB,WAAWsB,cAAc;QACpCD,KAAKlB;QACLoB,OAAOT;QACP,cAAcA;QACdU,OAAO;IACX,GAAG,WAAW,GAAGP,OAAMC,aAAa,CAAC,QAAQ,MAAMP,WAAW,CAACR,UAAU,IAAIF,KAAKwB,GAAG,CAAC,CAACC,KAAKC,WAAW,WAAW,GAAGV,OAAMC,aAAa,CAACU,wCAAmB,EAAE;YACtJ,GAAG7B,KAAK;YACRsB,KAAKK,IAAIL,GAAG;YACZK,KAAKA;YACLC,UAAUA;QACd;AACR"}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "CalendarMonthHeaderRow", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return CalendarMonthHeaderRow;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
const _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
|
12
|
+
const _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
|
13
|
+
const _react1 = require("@griffel/react");
|
14
|
+
const _utils = require("../../utils");
|
15
|
+
const CalendarMonthHeaderRow = (props)=>{
|
16
|
+
const { showWeekNumbers, strings, firstDayOfWeek, allFocusable, weeksToShow, weeks, classNames } = props;
|
17
|
+
const dayLabels = strings.shortDays.slice();
|
18
|
+
let firstOfMonthIndex = -1;
|
19
|
+
const firstWeekOfMonth = weeks[1];
|
20
|
+
for(let i = 0; i < weeks[1].length; i++){
|
21
|
+
if (firstWeekOfMonth[i].originalDate.getDate() === 1) {
|
22
|
+
firstOfMonthIndex = i;
|
23
|
+
break;
|
24
|
+
}
|
25
|
+
}
|
26
|
+
if (weeksToShow === 1 && firstOfMonthIndex >= 0) {
|
27
|
+
// if we only show one week, replace the header with short month name
|
28
|
+
const firstOfMonthIndexOffset = (firstOfMonthIndex + firstDayOfWeek) % _utils.DAYS_IN_WEEK;
|
29
|
+
dayLabels[firstOfMonthIndexOffset] = strings.shortMonths[weeks[1][firstOfMonthIndex].originalDate.getMonth()];
|
30
|
+
}
|
31
|
+
return /*#__PURE__*/ _react.createElement("tr", null, showWeekNumbers && /*#__PURE__*/ _react.createElement("th", {
|
32
|
+
className: classNames.dayCell
|
33
|
+
}), dayLabels.map((val, index)=>{
|
34
|
+
const i = (index + firstDayOfWeek) % _utils.DAYS_IN_WEEK;
|
35
|
+
const label = strings.days[i];
|
36
|
+
return /*#__PURE__*/ _react.createElement("th", {
|
37
|
+
className: (0, _react1.mergeClasses)(classNames.dayCell, classNames.weekDayLabelCell),
|
38
|
+
scope: "col",
|
39
|
+
key: dayLabels[i] + ' ' + index,
|
40
|
+
title: label,
|
41
|
+
"aria-label": label,
|
42
|
+
tabIndex: allFocusable ? 0 : undefined
|
43
|
+
}, dayLabels[i]);
|
44
|
+
}));
|
45
|
+
};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["CalendarMonthHeaderRow.js"],"sourcesContent":["import * as React from 'react';\nimport { mergeClasses } from '@griffel/react';\nimport { DAYS_IN_WEEK } from '../../utils';\n/**\n * @internal\n */ export const CalendarMonthHeaderRow = (props)=>{\n const { showWeekNumbers, strings, firstDayOfWeek, allFocusable, weeksToShow, weeks, classNames } = props;\n const dayLabels = strings.shortDays.slice();\n let firstOfMonthIndex = -1;\n const firstWeekOfMonth = weeks[1];\n for(let i = 0; i < weeks[1].length; i++){\n if (firstWeekOfMonth[i].originalDate.getDate() === 1) {\n firstOfMonthIndex = i;\n break;\n }\n }\n if (weeksToShow === 1 && firstOfMonthIndex >= 0) {\n // if we only show one week, replace the header with short month name\n const firstOfMonthIndexOffset = (firstOfMonthIndex + firstDayOfWeek) % DAYS_IN_WEEK;\n dayLabels[firstOfMonthIndexOffset] = strings.shortMonths[weeks[1][firstOfMonthIndex].originalDate.getMonth()];\n }\n return /*#__PURE__*/ React.createElement(\"tr\", null, showWeekNumbers && /*#__PURE__*/ React.createElement(\"th\", {\n className: classNames.dayCell\n }), dayLabels.map((val, index)=>{\n const i = (index + firstDayOfWeek) % DAYS_IN_WEEK;\n const label = strings.days[i];\n return /*#__PURE__*/ React.createElement(\"th\", {\n className: mergeClasses(classNames.dayCell, classNames.weekDayLabelCell),\n scope: \"col\",\n key: dayLabels[i] + ' ' + index,\n title: label,\n \"aria-label\": label,\n tabIndex: allFocusable ? 0 : undefined\n }, dayLabels[i]);\n }));\n};\n"],"names":["CalendarMonthHeaderRow","props","showWeekNumbers","strings","firstDayOfWeek","allFocusable","weeksToShow","weeks","classNames","dayLabels","shortDays","slice","firstOfMonthIndex","firstWeekOfMonth","i","length","originalDate","getDate","firstOfMonthIndexOffset","DAYS_IN_WEEK","shortMonths","getMonth","React","createElement","className","dayCell","map","val","index","label","days","mergeClasses","weekDayLabelCell","scope","key","title","tabIndex","undefined"],"mappings":";;;;+BAKiBA;;;eAAAA;;;;iEALM;wBACM;uBACA;AAGlB,MAAMA,yBAAyB,CAACC;IACvC,MAAM,EAAEC,eAAe,EAAEC,OAAO,EAAEC,cAAc,EAAEC,YAAY,EAAEC,WAAW,EAAEC,KAAK,EAAEC,UAAU,EAAE,GAAGP;IACnG,MAAMQ,YAAYN,QAAQO,SAAS,CAACC,KAAK;IACzC,IAAIC,oBAAoB,CAAC;IACzB,MAAMC,mBAAmBN,KAAK,CAAC,EAAE;IACjC,IAAI,IAAIO,IAAI,GAAGA,IAAIP,KAAK,CAAC,EAAE,CAACQ,MAAM,EAAED,IAAI;QACpC,IAAID,gBAAgB,CAACC,EAAE,CAACE,YAAY,CAACC,OAAO,OAAO,GAAG;YAClDL,oBAAoBE;YACpB;QACJ;IACJ;IACA,IAAIR,gBAAgB,KAAKM,qBAAqB,GAAG;QAC7C,qEAAqE;QACrE,MAAMM,0BAA0B,AAACN,CAAAA,oBAAoBR,cAAa,IAAKe,mBAAY;QACnFV,SAAS,CAACS,wBAAwB,GAAGf,QAAQiB,WAAW,CAACb,KAAK,CAAC,EAAE,CAACK,kBAAkB,CAACI,YAAY,CAACK,QAAQ,GAAG;IACjH;IACA,OAAO,WAAW,GAAGC,OAAMC,aAAa,CAAC,MAAM,MAAMrB,mBAAmB,WAAW,GAAGoB,OAAMC,aAAa,CAAC,MAAM;QAC5GC,WAAWhB,WAAWiB,OAAO;IACjC,IAAIhB,UAAUiB,GAAG,CAAC,CAACC,KAAKC;QACpB,MAAMd,IAAI,AAACc,CAAAA,QAAQxB,cAAa,IAAKe,mBAAY;QACjD,MAAMU,QAAQ1B,QAAQ2B,IAAI,CAAChB,EAAE;QAC7B,OAAO,WAAW,GAAGQ,OAAMC,aAAa,CAAC,MAAM;YAC3CC,WAAWO,IAAAA,oBAAY,EAACvB,WAAWiB,OAAO,EAAEjB,WAAWwB,gBAAgB;YACvEC,OAAO;YACPC,KAAKzB,SAAS,CAACK,EAAE,GAAG,MAAMc;YAC1BO,OAAON;YACP,cAAcA;YACdO,UAAU/B,eAAe,IAAIgC;QACjC,GAAG5B,SAAS,CAACK,EAAE;IACnB;AACJ"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
function _export(target, all) {
|
6
|
+
for(var name in all)Object.defineProperty(target, name, {
|
7
|
+
enumerable: true,
|
8
|
+
get: all[name]
|
9
|
+
});
|
10
|
+
}
|
11
|
+
_export(exports, {
|
12
|
+
calendarDayGridClassNames: function() {
|
13
|
+
return _useCalendarDayGridStylesstyles.calendarDayGridClassNames;
|
14
|
+
},
|
15
|
+
extraCalendarDayGridClassNames: function() {
|
16
|
+
return _useCalendarDayGridStylesstyles.extraCalendarDayGridClassNames;
|
17
|
+
}
|
18
|
+
});
|
19
|
+
const _export_star = require("@swc/helpers/_/_export_star");
|
20
|
+
_export_star._(require("./CalendarDayGrid"), exports);
|
21
|
+
_export_star._(require("./CalendarDayGrid.types"), exports);
|
22
|
+
const _useCalendarDayGridStylesstyles = _export_star._(require("./useCalendarDayGridStyles.styles"), exports);
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"sources":["index.js"],"sourcesContent":["export * from './CalendarDayGrid';\nexport * from './CalendarDayGrid.types';\nexport * from './useCalendarDayGridStyles.styles';\nexport { calendarDayGridClassNames, extraCalendarDayGridClassNames } from './useCalendarDayGridStyles.styles';\n"],"names":["calendarDayGridClassNames","extraCalendarDayGridClassNames"],"mappings":";;;;;;;;;;;IAGSA,yBAAyB;eAAzBA,yDAAyB;;IAAEC,8BAA8B;eAA9BA,8DAA8B;;;;uBAHpD;uBACA;+DACA"}
|