@mantine/dates 5.0.0-alpha.2 → 5.0.0-alpha.20
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/README.md +1 -1
- package/cjs/components/Calendar/Calendar.js +1 -1
- package/cjs/components/Calendar/Calendar.js.map +1 -1
- package/cjs/components/CalendarBase/CalendarBase.js +45 -17
- package/cjs/components/CalendarBase/CalendarBase.js.map +1 -1
- package/cjs/components/CalendarBase/CalendarHeader/CalendarHeader.js +9 -4
- package/cjs/components/CalendarBase/CalendarHeader/CalendarHeader.js.map +1 -1
- package/cjs/components/CalendarBase/MonthPicker/MonthPicker.js +8 -4
- package/cjs/components/CalendarBase/MonthPicker/MonthPicker.js.map +1 -1
- package/cjs/components/CalendarBase/MonthsList/MonthsList.js +8 -4
- package/cjs/components/CalendarBase/MonthsList/MonthsList.js.map +1 -1
- package/cjs/components/CalendarBase/YearPicker/YearPicker.js +7 -3
- package/cjs/components/CalendarBase/YearPicker/YearPicker.js.map +1 -1
- package/cjs/components/DatePicker/DatePicker.js +24 -10
- package/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/cjs/components/DatePickerBase/DatePickerBase.js +41 -15
- package/cjs/components/DatePickerBase/DatePickerBase.js.map +1 -1
- package/cjs/components/DateRangePicker/DateRangePicker.js +18 -9
- package/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/cjs/components/Month/Day/Day.js +18 -12
- package/cjs/components/Month/Day/Day.js.map +1 -1
- package/cjs/components/Month/Day/Day.styles.js +47 -61
- package/cjs/components/Month/Day/Day.styles.js.map +1 -1
- package/cjs/components/Month/Month.js +61 -13
- package/cjs/components/Month/Month.js.map +1 -1
- package/cjs/components/Month/get-day-props/get-day-props.js +3 -2
- package/cjs/components/Month/get-day-props/get-day-props.js.map +1 -1
- package/cjs/components/Month/get-day-props/is-weekend/is-weekend.js +2 -3
- package/cjs/components/Month/get-day-props/is-weekend/is-weekend.js.map +1 -1
- package/cjs/components/RangeCalendar/RangeCalendar.js +1 -1
- package/cjs/components/RangeCalendar/RangeCalendar.js.map +1 -1
- package/cjs/components/TimeInput/TimeInput.js +36 -17
- package/cjs/components/TimeInput/TimeInput.js.map +1 -1
- package/cjs/components/TimeInput/TimeInput.styles.js +1 -0
- package/cjs/components/TimeInput/TimeInput.styles.js.map +1 -1
- package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js +32 -11
- package/cjs/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
- package/cjs/components/TimeInputBase/TimeField/TimeField.js +10 -7
- package/cjs/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
- package/cjs/components/TimeInputBase/TimeInputBase.styles.js +7 -2
- package/cjs/components/TimeInputBase/TimeInputBase.styles.js.map +1 -1
- package/cjs/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js +3 -3
- package/cjs/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js.map +1 -1
- package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js +1 -1
- package/cjs/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
- package/cjs/components/TimeInputBase/get-date/get-date.js +2 -2
- package/cjs/components/TimeInputBase/get-date/get-date.js.map +1 -1
- package/cjs/components/TimeInputBase/get-time-values/get-time-value.js +2 -2
- package/cjs/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
- package/cjs/components/TimeRangeInput/TimeRangeInput.js +18 -11
- package/cjs/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
- package/esm/components/Calendar/Calendar.js +2 -2
- package/esm/components/Calendar/Calendar.js.map +1 -1
- package/esm/components/CalendarBase/CalendarBase.js +45 -17
- package/esm/components/CalendarBase/CalendarBase.js.map +1 -1
- package/esm/components/CalendarBase/CalendarHeader/CalendarHeader.js +9 -4
- package/esm/components/CalendarBase/CalendarHeader/CalendarHeader.js.map +1 -1
- package/esm/components/CalendarBase/MonthPicker/MonthPicker.js +8 -4
- package/esm/components/CalendarBase/MonthPicker/MonthPicker.js.map +1 -1
- package/esm/components/CalendarBase/MonthsList/MonthsList.js +8 -4
- package/esm/components/CalendarBase/MonthsList/MonthsList.js.map +1 -1
- package/esm/components/CalendarBase/YearPicker/YearPicker.js +7 -3
- package/esm/components/CalendarBase/YearPicker/YearPicker.js.map +1 -1
- package/esm/components/DatePicker/DatePicker.js +25 -11
- package/esm/components/DatePicker/DatePicker.js.map +1 -1
- package/esm/components/DatePickerBase/DatePickerBase.js +43 -17
- package/esm/components/DatePickerBase/DatePickerBase.js.map +1 -1
- package/esm/components/DateRangePicker/DateRangePicker.js +19 -10
- package/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
- package/esm/components/Month/Day/Day.js +18 -12
- package/esm/components/Month/Day/Day.js.map +1 -1
- package/esm/components/Month/Day/Day.styles.js +47 -61
- package/esm/components/Month/Day/Day.styles.js.map +1 -1
- package/esm/components/Month/Month.js +63 -15
- package/esm/components/Month/Month.js.map +1 -1
- package/esm/components/Month/get-day-props/get-day-props.js +3 -2
- package/esm/components/Month/get-day-props/get-day-props.js.map +1 -1
- package/esm/components/Month/get-day-props/is-weekend/is-weekend.js +2 -3
- package/esm/components/Month/get-day-props/is-weekend/is-weekend.js.map +1 -1
- package/esm/components/RangeCalendar/RangeCalendar.js +2 -2
- package/esm/components/RangeCalendar/RangeCalendar.js.map +1 -1
- package/esm/components/TimeInput/TimeInput.js +38 -19
- package/esm/components/TimeInput/TimeInput.js.map +1 -1
- package/esm/components/TimeInput/TimeInput.styles.js +1 -0
- package/esm/components/TimeInput/TimeInput.styles.js.map +1 -1
- package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js +32 -11
- package/esm/components/TimeInputBase/AmPmInput/AmPmInput.js.map +1 -1
- package/esm/components/TimeInputBase/TimeField/TimeField.js +10 -7
- package/esm/components/TimeInputBase/TimeField/TimeField.js.map +1 -1
- package/esm/components/TimeInputBase/TimeInputBase.styles.js +7 -2
- package/esm/components/TimeInputBase/TimeInputBase.styles.js.map +1 -1
- package/esm/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js +3 -3
- package/esm/components/TimeInputBase/create-amPm-handler/create-amPm-handler.js.map +1 -1
- package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js +1 -1
- package/esm/components/TimeInputBase/create-time-handler/create-time-handler.js.map +1 -1
- package/esm/components/TimeInputBase/get-date/get-date.js +2 -2
- package/esm/components/TimeInputBase/get-date/get-date.js.map +1 -1
- package/esm/components/TimeInputBase/get-time-values/get-time-value.js +2 -2
- package/esm/components/TimeInputBase/get-time-values/get-time-value.js.map +1 -1
- package/esm/components/TimeRangeInput/TimeRangeInput.js +20 -13
- package/esm/components/TimeRangeInput/TimeRangeInput.js.map +1 -1
- package/lib/components/CalendarBase/CalendarBase.d.ts.map +1 -1
- package/lib/components/CalendarBase/CalendarHeader/CalendarHeader.d.ts +1 -1
- package/lib/components/CalendarBase/CalendarHeader/CalendarHeader.d.ts.map +1 -1
- package/lib/components/CalendarBase/MonthPicker/MonthPicker.d.ts +1 -1
- package/lib/components/CalendarBase/MonthPicker/MonthPicker.d.ts.map +1 -1
- package/lib/components/CalendarBase/MonthsList/MonthsList.d.ts +1 -1
- package/lib/components/CalendarBase/MonthsList/MonthsList.d.ts.map +1 -1
- package/lib/components/CalendarBase/YearPicker/YearPicker.d.ts +1 -1
- package/lib/components/CalendarBase/YearPicker/YearPicker.d.ts.map +1 -1
- package/lib/components/DatePicker/DatePicker.d.ts +4 -2
- package/lib/components/DatePicker/DatePicker.d.ts.map +1 -1
- package/lib/components/DatePickerBase/DatePickerBase.d.ts +9 -5
- package/lib/components/DatePickerBase/DatePickerBase.d.ts.map +1 -1
- package/lib/components/DateRangePicker/DateRangePicker.d.ts +3 -1
- package/lib/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
- package/lib/components/Month/Day/Day.d.ts +1 -0
- package/lib/components/Month/Day/Day.d.ts.map +1 -1
- package/lib/components/Month/Day/Day.styles.d.ts +2 -2
- package/lib/components/Month/Day/Day.styles.d.ts.map +1 -1
- package/lib/components/Month/Month.d.ts +4 -0
- package/lib/components/Month/Month.d.ts.map +1 -1
- package/lib/components/Month/get-day-props/get-day-props.d.ts +3 -1
- package/lib/components/Month/get-day-props/get-day-props.d.ts.map +1 -1
- package/lib/components/Month/get-day-props/is-weekend/is-weekend.d.ts +1 -1
- package/lib/components/Month/get-day-props/is-weekend/is-weekend.d.ts.map +1 -1
- package/lib/components/TimeInput/TimeInput.d.ts +6 -2
- package/lib/components/TimeInput/TimeInput.d.ts.map +1 -1
- package/lib/components/TimeInput/TimeInput.styles.d.ts +2 -2
- package/lib/components/TimeInput/TimeInput.styles.d.ts.map +1 -1
- package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts +5 -0
- package/lib/components/TimeInputBase/AmPmInput/AmPmInput.d.ts.map +1 -1
- package/lib/components/TimeInputBase/TimeField/TimeField.d.ts +1 -0
- package/lib/components/TimeInputBase/TimeField/TimeField.d.ts.map +1 -1
- package/lib/components/TimeInputBase/TimeInputBase.styles.d.ts +2 -2
- package/lib/components/TimeInputBase/TimeInputBase.styles.d.ts.map +1 -1
- package/lib/components/TimeInputBase/create-amPm-handler/create-amPm-handler.d.ts +3 -1
- package/lib/components/TimeInputBase/create-amPm-handler/create-amPm-handler.d.ts.map +1 -1
- package/lib/components/TimeInputBase/get-date/get-date.d.ts +1 -1
- package/lib/components/TimeInputBase/get-date/get-date.d.ts.map +1 -1
- package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts +1 -1
- package/lib/components/TimeInputBase/get-time-values/get-time-value.d.ts.map +1 -1
- package/lib/components/TimeRangeInput/TimeRangeInput.d.ts +2 -2
- package/lib/components/TimeRangeInput/TimeRangeInput.d.ts.map +1 -1
- package/package.json +7 -5
|
@@ -54,7 +54,8 @@ function MonthsList(_a) {
|
|
|
54
54
|
labelFormat,
|
|
55
55
|
weekdayLabelFormat,
|
|
56
56
|
preventFocus,
|
|
57
|
-
renderDay
|
|
57
|
+
renderDay,
|
|
58
|
+
unstyled
|
|
58
59
|
} = _b, others = __objRest(_b, [
|
|
59
60
|
"amountOfMonths",
|
|
60
61
|
"month",
|
|
@@ -75,7 +76,8 @@ function MonthsList(_a) {
|
|
|
75
76
|
"labelFormat",
|
|
76
77
|
"weekdayLabelFormat",
|
|
77
78
|
"preventFocus",
|
|
78
|
-
"renderDay"
|
|
79
|
+
"renderDay",
|
|
80
|
+
"unstyled"
|
|
79
81
|
]);
|
|
80
82
|
const nextMonth = dayjs(month).add(amountOfMonths, "months").toDate();
|
|
81
83
|
const previousMonth = dayjs(month).subtract(1, "months").toDate();
|
|
@@ -98,7 +100,8 @@ function MonthsList(_a) {
|
|
|
98
100
|
nextLabel: nextMonthLabel,
|
|
99
101
|
previousLabel: previousMonthLabel,
|
|
100
102
|
preventLevelFocus: index > 0,
|
|
101
|
-
preventFocus
|
|
103
|
+
preventFocus,
|
|
104
|
+
unstyled
|
|
102
105
|
}), /* @__PURE__ */ React.createElement(Month, __spreadValues({
|
|
103
106
|
month: monthDate,
|
|
104
107
|
daysRefs: daysRefs.current[index],
|
|
@@ -113,7 +116,8 @@ function MonthsList(_a) {
|
|
|
113
116
|
focusable: index === 0,
|
|
114
117
|
preventFocus,
|
|
115
118
|
renderDay,
|
|
116
|
-
weekdayLabelFormat
|
|
119
|
+
weekdayLabelFormat,
|
|
120
|
+
unstyled
|
|
117
121
|
}, others)));
|
|
118
122
|
});
|
|
119
123
|
return /* @__PURE__ */ React.createElement(React.Fragment, null, months);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonthsList.js","sources":["../../../../src/components/CalendarBase/MonthsList/MonthsList.tsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { DefaultProps } from '@mantine/core';\nimport { formatMonthLabel } from './format-month-label/format-month-label';\nimport { isMonthInRange } from '../MonthPicker/is-month-in-range/is-month-in-range';\nimport { CalendarHeader, CalendarHeaderStylesNames } from '../CalendarHeader/CalendarHeader';\nimport { Month, MonthProps, DayKeydownPayload, MonthStylesNames } from '../../Month';\n\nexport type MonthsListStylesNames = CalendarHeaderStylesNames | MonthStylesNames;\n\nexport interface MonthsListProps\n extends DefaultProps<MonthsListStylesNames>,\n Omit<MonthProps, 'styles' | 'classNames' | 'daysRefs' | 'onDayKeyDown'> {\n amountOfMonths: number;\n month: Date;\n locale: string;\n allowLevelChange: boolean;\n daysRefs: React.RefObject<HTMLButtonElement[][][]>;\n onMonthChange(month: Date): void;\n onNextLevel(): void;\n onDayKeyDown(\n monthIndex: number,\n payload: DayKeydownPayload,\n event: React.KeyboardEvent<HTMLButtonElement>\n ): void;\n __staticSelector?: string;\n nextMonthLabel?: string;\n previousMonthLabel?: string;\n labelFormat?: string;\n weekdayLabelFormat?: string;\n renderDay?(date: Date): React.ReactNode;\n}\n\nexport function MonthsList({\n amountOfMonths,\n month,\n locale,\n minDate,\n maxDate,\n allowLevelChange,\n size,\n daysRefs,\n onMonthChange,\n onNextLevel,\n onDayKeyDown,\n classNames,\n styles,\n __staticSelector = 'MonthsList',\n nextMonthLabel,\n previousMonthLabel,\n labelFormat,\n weekdayLabelFormat,\n preventFocus,\n renderDay,\n ...others\n}: MonthsListProps) {\n const nextMonth = dayjs(month).add(amountOfMonths, 'months').toDate();\n const previousMonth = dayjs(month).subtract(1, 'months').toDate();\n\n const months = Array(amountOfMonths)\n .fill(0)\n .map((_, index) => {\n const monthDate = dayjs(month).add(index, 'months').toDate();\n return (\n <div key={index}>\n <CalendarHeader\n hasNext={\n index + 1 === amountOfMonths && isMonthInRange({ date: nextMonth, minDate, maxDate })\n }\n hasPrevious={index === 0 && isMonthInRange({ date: previousMonth, minDate, maxDate })}\n label={formatMonthLabel({ month: monthDate, locale, format: labelFormat })}\n onNext={() => onMonthChange(dayjs(month).add(amountOfMonths, 'months').toDate())}\n onPrevious={() =>\n onMonthChange(dayjs(month).subtract(amountOfMonths, 'months').toDate())\n }\n onNextLevel={onNextLevel}\n nextLevelDisabled={!allowLevelChange}\n size={size}\n classNames={classNames}\n styles={styles}\n __staticSelector={__staticSelector}\n nextLabel={nextMonthLabel}\n previousLabel={previousMonthLabel}\n preventLevelFocus={index > 0}\n preventFocus={preventFocus}\n />\n\n <Month\n month={monthDate}\n daysRefs={daysRefs.current[index]}\n onDayKeyDown={(...args) => onDayKeyDown(index, ...args)}\n size={size}\n minDate={minDate}\n maxDate={maxDate}\n classNames={classNames}\n styles={styles}\n __staticSelector={__staticSelector}\n locale={locale}\n focusable={index === 0}\n preventFocus={preventFocus}\n renderDay={renderDay}\n weekdayLabelFormat={weekdayLabelFormat}\n {...others}\n />\n </div>\n );\n });\n\n return <>{months}</>;\n}\n\nMonthsList.displayName = '@mantine/dates/MonthsList';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MonthsList.js","sources":["../../../../src/components/CalendarBase/MonthsList/MonthsList.tsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { DefaultProps } from '@mantine/core';\nimport { formatMonthLabel } from './format-month-label/format-month-label';\nimport { isMonthInRange } from '../MonthPicker/is-month-in-range/is-month-in-range';\nimport { CalendarHeader, CalendarHeaderStylesNames } from '../CalendarHeader/CalendarHeader';\nimport { Month, MonthProps, DayKeydownPayload, MonthStylesNames } from '../../Month';\n\nexport type MonthsListStylesNames = CalendarHeaderStylesNames | MonthStylesNames;\n\nexport interface MonthsListProps\n extends DefaultProps<MonthsListStylesNames>,\n Omit<MonthProps, 'styles' | 'classNames' | 'daysRefs' | 'onDayKeyDown'> {\n amountOfMonths: number;\n month: Date;\n locale: string;\n allowLevelChange: boolean;\n daysRefs: React.RefObject<HTMLButtonElement[][][]>;\n onMonthChange(month: Date): void;\n onNextLevel(): void;\n onDayKeyDown(\n monthIndex: number,\n payload: DayKeydownPayload,\n event: React.KeyboardEvent<HTMLButtonElement>\n ): void;\n __staticSelector?: string;\n nextMonthLabel?: string;\n previousMonthLabel?: string;\n labelFormat?: string;\n weekdayLabelFormat?: string;\n renderDay?(date: Date): React.ReactNode;\n}\n\nexport function MonthsList({\n amountOfMonths,\n month,\n locale,\n minDate,\n maxDate,\n allowLevelChange,\n size,\n daysRefs,\n onMonthChange,\n onNextLevel,\n onDayKeyDown,\n classNames,\n styles,\n __staticSelector = 'MonthsList',\n nextMonthLabel,\n previousMonthLabel,\n labelFormat,\n weekdayLabelFormat,\n preventFocus,\n renderDay,\n unstyled,\n ...others\n}: MonthsListProps) {\n const nextMonth = dayjs(month).add(amountOfMonths, 'months').toDate();\n const previousMonth = dayjs(month).subtract(1, 'months').toDate();\n\n const months = Array(amountOfMonths)\n .fill(0)\n .map((_, index) => {\n const monthDate = dayjs(month).add(index, 'months').toDate();\n return (\n <div key={index}>\n <CalendarHeader\n hasNext={\n index + 1 === amountOfMonths && isMonthInRange({ date: nextMonth, minDate, maxDate })\n }\n hasPrevious={index === 0 && isMonthInRange({ date: previousMonth, minDate, maxDate })}\n label={formatMonthLabel({ month: monthDate, locale, format: labelFormat })}\n onNext={() => onMonthChange(dayjs(month).add(amountOfMonths, 'months').toDate())}\n onPrevious={() =>\n onMonthChange(dayjs(month).subtract(amountOfMonths, 'months').toDate())\n }\n onNextLevel={onNextLevel}\n nextLevelDisabled={!allowLevelChange}\n size={size}\n classNames={classNames}\n styles={styles}\n __staticSelector={__staticSelector}\n nextLabel={nextMonthLabel}\n previousLabel={previousMonthLabel}\n preventLevelFocus={index > 0}\n preventFocus={preventFocus}\n unstyled={unstyled}\n />\n\n <Month\n month={monthDate}\n daysRefs={daysRefs.current[index]}\n onDayKeyDown={(...args) => onDayKeyDown(index, ...args)}\n size={size}\n minDate={minDate}\n maxDate={maxDate}\n classNames={classNames}\n styles={styles}\n __staticSelector={__staticSelector}\n locale={locale}\n focusable={index === 0}\n preventFocus={preventFocus}\n renderDay={renderDay}\n weekdayLabelFormat={weekdayLabelFormat}\n unstyled={unstyled}\n {...others}\n />\n </div>\n );\n });\n\n return <>{months}</>;\n}\n\nMonthsList.displayName = '@mantine/dates/MonthsList';\n"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,8 @@ function YearPicker(_a) {
|
|
|
45
45
|
__staticSelector = "YearPicker",
|
|
46
46
|
nextDecadeLabel,
|
|
47
47
|
previousDecadeLabel,
|
|
48
|
-
preventFocus
|
|
48
|
+
preventFocus,
|
|
49
|
+
unstyled
|
|
49
50
|
} = _b, others = __objRest(_b, [
|
|
50
51
|
"className",
|
|
51
52
|
"styles",
|
|
@@ -58,13 +59,15 @@ function YearPicker(_a) {
|
|
|
58
59
|
"__staticSelector",
|
|
59
60
|
"nextDecadeLabel",
|
|
60
61
|
"previousDecadeLabel",
|
|
61
|
-
"preventFocus"
|
|
62
|
+
"preventFocus",
|
|
63
|
+
"unstyled"
|
|
62
64
|
]);
|
|
63
|
-
const { classes, cx } = useStyles({ size }, { classNames, styles, name: __staticSelector });
|
|
65
|
+
const { classes, cx } = useStyles({ size }, { classNames, styles, unstyled, name: __staticSelector });
|
|
64
66
|
const [decade, setDecade] = useState(value);
|
|
65
67
|
const range = getDecadeRange(decade);
|
|
66
68
|
const years = range.map((year) => /* @__PURE__ */ React.createElement(UnstyledButton, {
|
|
67
69
|
key: year,
|
|
70
|
+
unstyled,
|
|
68
71
|
onClick: () => onChange(year),
|
|
69
72
|
disabled: year < minYear || year > maxYear,
|
|
70
73
|
onMouseDown: (event) => preventFocus && event.preventDefault(),
|
|
@@ -75,6 +78,7 @@ function YearPicker(_a) {
|
|
|
75
78
|
return /* @__PURE__ */ React.createElement("div", __spreadValues({
|
|
76
79
|
className: cx(classes.yearPicker, className)
|
|
77
80
|
}, others), /* @__PURE__ */ React.createElement(CalendarHeader, {
|
|
81
|
+
unstyled,
|
|
78
82
|
label: `${range[0]} \u2013 ${range[range.length - 1]}`,
|
|
79
83
|
hasPrevious: typeof minYear === "number" ? minYear < range[0] : true,
|
|
80
84
|
hasNext: typeof maxYear === "number" ? maxYear > range[range.length - 1] : true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"YearPicker.js","sources":["../../../../src/components/CalendarBase/YearPicker/YearPicker.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { DefaultProps, Selectors, UnstyledButton, MantineSize } from '@mantine/core';\nimport { getDecadeRange } from './get-decade-range/get-decade-range';\nimport { CalendarHeader, CalendarHeaderStylesNames } from '../CalendarHeader/CalendarHeader';\nimport useStyles from './YearPicker.styles';\n\nexport type YearPickerStylesNames = Selectors<typeof useStyles> | CalendarHeaderStylesNames;\n\nexport interface YearPickerProps\n extends DefaultProps<YearPickerStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n value: number;\n onChange(value: number): void;\n minYear?: number;\n maxYear?: number;\n size?: MantineSize;\n __staticSelector?: string;\n nextDecadeLabel?: string;\n previousDecadeLabel?: string;\n preventFocus?: boolean;\n}\n\nexport function YearPicker({\n className,\n styles,\n classNames,\n value,\n onChange,\n size,\n minYear,\n maxYear,\n __staticSelector = 'YearPicker',\n nextDecadeLabel,\n previousDecadeLabel,\n preventFocus,\n ...others\n}: YearPickerProps) {\n const { classes, cx } = useStyles({ size }
|
|
1
|
+
{"version":3,"file":"YearPicker.js","sources":["../../../../src/components/CalendarBase/YearPicker/YearPicker.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { DefaultProps, Selectors, UnstyledButton, MantineSize } from '@mantine/core';\nimport { getDecadeRange } from './get-decade-range/get-decade-range';\nimport { CalendarHeader, CalendarHeaderStylesNames } from '../CalendarHeader/CalendarHeader';\nimport useStyles from './YearPicker.styles';\n\nexport type YearPickerStylesNames = Selectors<typeof useStyles> | CalendarHeaderStylesNames;\n\nexport interface YearPickerProps\n extends DefaultProps<YearPickerStylesNames>,\n Omit<React.ComponentPropsWithoutRef<'div'>, 'onChange'> {\n value: number;\n onChange(value: number): void;\n minYear?: number;\n maxYear?: number;\n size?: MantineSize;\n __staticSelector?: string;\n nextDecadeLabel?: string;\n previousDecadeLabel?: string;\n preventFocus?: boolean;\n}\n\nexport function YearPicker({\n className,\n styles,\n classNames,\n value,\n onChange,\n size,\n minYear,\n maxYear,\n __staticSelector = 'YearPicker',\n nextDecadeLabel,\n previousDecadeLabel,\n preventFocus,\n unstyled,\n ...others\n}: YearPickerProps) {\n const { classes, cx } = useStyles(\n { size },\n { classNames, styles, unstyled, name: __staticSelector }\n );\n const [decade, setDecade] = useState(value);\n const range = getDecadeRange(decade);\n\n const years = range.map((year) => (\n <UnstyledButton<'button'>\n key={year}\n unstyled={unstyled}\n onClick={() => onChange(year)}\n disabled={year < minYear || year > maxYear}\n onMouseDown={(event) => preventFocus && event.preventDefault()}\n className={cx(classes.yearPickerControl, {\n [classes.yearPickerControlActive]: year === value,\n })}\n >\n {year}\n </UnstyledButton>\n ));\n\n return (\n <div className={cx(classes.yearPicker, className)} {...others}>\n <CalendarHeader\n unstyled={unstyled}\n label={`${range[0]} – ${range[range.length - 1]}`}\n hasPrevious={typeof minYear === 'number' ? minYear < range[0] : true}\n hasNext={typeof maxYear === 'number' ? maxYear > range[range.length - 1] : true}\n onNext={() => setDecade((current) => current + 10)}\n onPrevious={() => setDecade((current) => current - 10)}\n nextLevelDisabled\n size={size}\n nextLabel={nextDecadeLabel}\n previousLabel={previousDecadeLabel}\n styles={styles}\n classNames={classNames}\n __staticSelector={__staticSelector}\n preventFocus={preventFocus}\n />\n <div className={classes.yearPickerControls}>{years}</div>\n </div>\n );\n}\n\nYearPicker.displayName = '@mantine/dates/YearPicker';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import dayjs from 'dayjs';
|
|
2
2
|
import React, { forwardRef, useState, useRef, useEffect } from 'react';
|
|
3
3
|
import { useUncontrolled, upperFirst, useMergedRef } from '@mantine/hooks';
|
|
4
|
-
import {
|
|
4
|
+
import { useComponentDefaultProps, useMantineTheme } from '@mantine/core';
|
|
5
5
|
import { Calendar } from '../Calendar/Calendar.js';
|
|
6
6
|
import { DatePickerBase } from '../DatePickerBase/DatePickerBase.js';
|
|
7
7
|
|
|
@@ -42,14 +42,16 @@ const defaultProps = {
|
|
|
42
42
|
name: "date",
|
|
43
43
|
size: "sm",
|
|
44
44
|
dropdownType: "popover",
|
|
45
|
+
dropdownPosition: "flip",
|
|
45
46
|
clearable: true,
|
|
46
47
|
disabled: false,
|
|
47
48
|
fixOnBlur: true,
|
|
48
49
|
withinPortal: true,
|
|
49
|
-
firstDayOfWeek: "monday"
|
|
50
|
+
firstDayOfWeek: "monday",
|
|
51
|
+
openDropdownOnClear: true
|
|
50
52
|
};
|
|
51
53
|
const DatePicker = forwardRef((props, ref) => {
|
|
52
|
-
const _a =
|
|
54
|
+
const _a = useComponentDefaultProps("DatePicker", defaultProps, props), {
|
|
53
55
|
value,
|
|
54
56
|
onChange,
|
|
55
57
|
defaultValue,
|
|
@@ -75,6 +77,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
75
77
|
name,
|
|
76
78
|
size,
|
|
77
79
|
dropdownType,
|
|
80
|
+
dropdownPosition,
|
|
78
81
|
clearable,
|
|
79
82
|
disabled,
|
|
80
83
|
clearButtonLabel,
|
|
@@ -93,7 +96,10 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
93
96
|
hideOutsideDates,
|
|
94
97
|
hideWeekdays,
|
|
95
98
|
renderDay,
|
|
96
|
-
type
|
|
99
|
+
type,
|
|
100
|
+
openDropdownOnClear,
|
|
101
|
+
unstyled,
|
|
102
|
+
weekendDays
|
|
97
103
|
} = _a, others = __objRest(_a, [
|
|
98
104
|
"value",
|
|
99
105
|
"onChange",
|
|
@@ -120,6 +126,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
120
126
|
"name",
|
|
121
127
|
"size",
|
|
122
128
|
"dropdownType",
|
|
129
|
+
"dropdownPosition",
|
|
123
130
|
"clearable",
|
|
124
131
|
"disabled",
|
|
125
132
|
"clearButtonLabel",
|
|
@@ -138,7 +145,10 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
138
145
|
"hideOutsideDates",
|
|
139
146
|
"hideWeekdays",
|
|
140
147
|
"renderDay",
|
|
141
|
-
"type"
|
|
148
|
+
"type",
|
|
149
|
+
"openDropdownOnClear",
|
|
150
|
+
"unstyled",
|
|
151
|
+
"weekendDays"
|
|
142
152
|
]);
|
|
143
153
|
const theme = useMantineTheme();
|
|
144
154
|
const finalLocale = locale || theme.datesLocale;
|
|
@@ -151,8 +161,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
151
161
|
value,
|
|
152
162
|
defaultValue,
|
|
153
163
|
finalValue: null,
|
|
154
|
-
onChange
|
|
155
|
-
rule: (val) => val === null || val instanceof Date
|
|
164
|
+
onChange
|
|
156
165
|
});
|
|
157
166
|
const [calendarMonth, setCalendarMonth] = useState(_value || initialMonth || new Date());
|
|
158
167
|
const [focused, setFocused] = useState(false);
|
|
@@ -187,7 +196,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
187
196
|
setValue(null);
|
|
188
197
|
setLastValidValue(null);
|
|
189
198
|
setInputState("");
|
|
190
|
-
openDropdown();
|
|
199
|
+
openDropdownOnClear && openDropdown();
|
|
191
200
|
(_a2 = inputRef.current) == null ? void 0 : _a2.focus();
|
|
192
201
|
};
|
|
193
202
|
const parseDate = (date) => dateParser ? dateParser(date) : dayjs(date, dateFormat, finalLocale).toDate();
|
|
@@ -216,7 +225,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
216
225
|
}
|
|
217
226
|
};
|
|
218
227
|
const handleKeyDown = (event) => {
|
|
219
|
-
if (event.
|
|
228
|
+
if (event.key === "Enter" && allowFreeInput) {
|
|
220
229
|
closeDropdown();
|
|
221
230
|
setDateFromInput();
|
|
222
231
|
}
|
|
@@ -255,6 +264,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
255
264
|
inputLabel: inputState,
|
|
256
265
|
__staticSelector: "DatePicker",
|
|
257
266
|
dropdownType,
|
|
267
|
+
dropdownPosition,
|
|
258
268
|
clearable: type === "date" ? false : clearable && !!_value && !disabled,
|
|
259
269
|
clearButtonLabel,
|
|
260
270
|
onClear: handleClear,
|
|
@@ -263,7 +273,8 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
263
273
|
amountOfMonths,
|
|
264
274
|
onDropdownClose,
|
|
265
275
|
onDropdownOpen,
|
|
266
|
-
type
|
|
276
|
+
type,
|
|
277
|
+
unstyled
|
|
267
278
|
}, others), /* @__PURE__ */ React.createElement(Calendar, {
|
|
268
279
|
classNames,
|
|
269
280
|
styles,
|
|
@@ -284,6 +295,7 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
284
295
|
excludeDate,
|
|
285
296
|
__staticSelector: "DatePicker",
|
|
286
297
|
fullWidth: dropdownType === "modal",
|
|
298
|
+
__stopPropagation: dropdownType !== "modal",
|
|
287
299
|
size: dropdownType === "modal" ? "lg" : calendarSize,
|
|
288
300
|
firstDayOfWeek,
|
|
289
301
|
preventFocus: allowFreeInput,
|
|
@@ -292,7 +304,9 @@ const DatePicker = forwardRef((props, ref) => {
|
|
|
292
304
|
initialLevel,
|
|
293
305
|
hideOutsideDates,
|
|
294
306
|
hideWeekdays,
|
|
295
|
-
renderDay
|
|
307
|
+
renderDay,
|
|
308
|
+
unstyled,
|
|
309
|
+
weekendDays
|
|
296
310
|
}));
|
|
297
311
|
});
|
|
298
312
|
DatePicker.displayName = "@mantine/dates/DatePicker";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePicker.js","sources":["../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React, { useState, useRef, forwardRef, useEffect } from 'react';\nimport { useUncontrolled, useMergedRef, upperFirst } from '@mantine/hooks';\nimport { useMantineTheme, useMantineDefaultProps } from '@mantine/core';\nimport { FirstDayOfWeek } from '../../types';\nimport { Calendar } from '../Calendar/Calendar';\nimport { CalendarSharedProps } from '../CalendarBase/CalendarBase';\nimport { DatePickerBase, DatePickerBaseSharedProps } from '../DatePickerBase/DatePickerBase';\n\nexport interface DatePickerProps\n extends Omit<DatePickerBaseSharedProps, 'onChange'>,\n Omit<CalendarSharedProps, 'size' | 'classNames' | 'styles' | 'onMonthChange'> {\n /** Selected date, required with controlled input */\n value?: Date | null;\n\n /** Called when date changes */\n onChange?(value: Date | null): void;\n\n /** Default value for uncontrolled input */\n defaultValue?: Date | null;\n\n /** Set to false to force dropdown to stay open after date was selected */\n closeCalendarOnChange?: boolean;\n\n /** dayjs input format */\n inputFormat?: string;\n\n /** Control initial dropdown opened state */\n initiallyOpened?: boolean;\n\n /** Parser function for date provided by input typing */\n dateParser?: (value: string) => Date;\n\n /** Input name, useful for uncontrolled variant to capture data with native form */\n name?: string;\n\n /** Set first day of the week */\n firstDayOfWeek?: FirstDayOfWeek;\n\n /** Allow free input */\n allowFreeInput?: boolean;\n\n /** Render day based on the date */\n renderDay?(date: Date): React.ReactNode;\n}\n\nconst defaultProps: Partial<DatePickerProps> = {\n shadow: 'sm',\n transitionDuration: 200,\n closeCalendarOnChange: true,\n labelFormat: 'MMMM YYYY',\n initiallyOpened: false,\n name: 'date',\n size: 'sm',\n dropdownType: 'popover',\n clearable: true,\n disabled: false,\n fixOnBlur: true,\n withinPortal: true,\n firstDayOfWeek: 'monday',\n};\n\nexport const DatePicker = forwardRef<HTMLButtonElement, DatePickerProps>(\n (props: DatePickerProps, ref) => {\n const {\n value,\n onChange,\n defaultValue,\n classNames,\n styles,\n shadow,\n locale,\n inputFormat,\n transitionDuration,\n transitionTimingFunction,\n nextMonthLabel,\n previousMonthLabel,\n closeCalendarOnChange,\n labelFormat,\n dayClassName,\n dayStyle,\n disableOutsideEvents,\n minDate,\n maxDate,\n excludeDate,\n initialMonth,\n initiallyOpened,\n name,\n size,\n dropdownType,\n clearable,\n disabled,\n clearButtonLabel,\n fixOnBlur,\n allowFreeInput,\n withinPortal,\n dateParser,\n firstDayOfWeek,\n onFocus,\n onBlur,\n amountOfMonths,\n allowLevelChange,\n initialLevel,\n onDropdownClose,\n onDropdownOpen,\n hideOutsideDates,\n hideWeekdays,\n renderDay,\n type,\n ...others\n } = useMantineDefaultProps('DatePicker', defaultProps, props);\n\n const theme = useMantineTheme();\n const finalLocale = locale || theme.datesLocale;\n const dateFormat = type === 'date' ? 'YYYY-MM-DD' : inputFormat || theme.dateFormat;\n const [dropdownOpened, setDropdownOpened] = useState(initiallyOpened);\n const calendarSize = size === 'lg' || size === 'xl' ? 'md' : 'sm';\n const inputRef = useRef<HTMLInputElement>();\n const [lastValidValue, setLastValidValue] = useState(defaultValue ?? null);\n const [_value, setValue] = useUncontrolled<Date>({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n rule: (val) => val === null || val instanceof Date,\n });\n const [calendarMonth, setCalendarMonth] = useState(_value || initialMonth || new Date());\n\n const [focused, setFocused] = useState(false);\n const [inputState, setInputState] = useState(\n _value instanceof Date ? upperFirst(dayjs(_value).locale(finalLocale).format(dateFormat)) : ''\n );\n\n const closeDropdown = () => {\n setDropdownOpened(false);\n onDropdownClose?.();\n };\n\n const openDropdown = () => {\n setDropdownOpened(true);\n onDropdownOpen?.();\n };\n\n useEffect(() => {\n if (value === null && !focused) {\n setInputState('');\n }\n\n if (value instanceof Date && !focused) {\n setInputState(dayjs(value).locale(finalLocale).format(dateFormat));\n }\n }, [value, focused]);\n\n const handleValueChange = (date: Date) => {\n setValue(date);\n setInputState(upperFirst(dayjs(date).locale(finalLocale).format(dateFormat)));\n closeCalendarOnChange && closeDropdown();\n window.setTimeout(() => inputRef.current?.focus(), 0);\n };\n\n const handleClear = () => {\n setValue(null);\n setLastValidValue(null);\n setInputState('');\n openDropdown();\n inputRef.current?.focus();\n };\n\n const parseDate = (date: string) =>\n dateParser ? dateParser(date) : dayjs(date, dateFormat, finalLocale).toDate();\n\n const setDateFromInput = () => {\n let date = typeof _value === 'string' ? parseDate(_value) : _value;\n\n if (maxDate && dayjs(date).isAfter(maxDate)) {\n date = maxDate;\n }\n\n if (minDate && dayjs(date).isBefore(minDate)) {\n date = minDate;\n }\n\n if (dayjs(date).isValid()) {\n setValue(date);\n setLastValidValue(date);\n setInputState(upperFirst(dayjs(date).locale(finalLocale).format(dateFormat)));\n setCalendarMonth(date);\n } else if (fixOnBlur) {\n setValue(lastValidValue);\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n setFocused(false);\n\n if (allowFreeInput) {\n setDateFromInput();\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.code === 'Enter' && allowFreeInput) {\n closeDropdown();\n setDateFromInput();\n }\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n setFocused(true);\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n openDropdown();\n\n const date = parseDate(event.target.value);\n if (dayjs(date).isValid()) {\n setValue(date);\n setLastValidValue(date);\n setInputState(event.target.value);\n setCalendarMonth(date);\n } else {\n setInputState(event.target.value);\n }\n };\n\n return (\n <DatePickerBase\n allowFreeInput={allowFreeInput}\n dropdownOpened={dropdownOpened}\n setDropdownOpened={setDropdownOpened}\n shadow={shadow}\n transitionDuration={transitionDuration}\n ref={useMergedRef(ref, inputRef)}\n size={size}\n styles={styles}\n classNames={classNames}\n onChange={handleChange}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n onKeyDown={handleKeyDown}\n name={name}\n inputLabel={inputState}\n __staticSelector=\"DatePicker\"\n dropdownType={dropdownType}\n clearable={type === 'date' ? false : clearable && !!_value && !disabled}\n clearButtonLabel={clearButtonLabel}\n onClear={handleClear}\n disabled={disabled}\n withinPortal={withinPortal}\n amountOfMonths={amountOfMonths}\n onDropdownClose={onDropdownClose}\n onDropdownOpen={onDropdownOpen}\n type={type}\n {...others}\n >\n <Calendar\n classNames={classNames}\n styles={styles}\n locale={finalLocale}\n nextMonthLabel={nextMonthLabel}\n previousMonthLabel={previousMonthLabel}\n month={allowFreeInput ? calendarMonth : undefined}\n initialMonth={initialMonth || (_value instanceof Date ? _value : new Date())}\n onMonthChange={setCalendarMonth}\n value={_value instanceof Date ? _value : dayjs(_value).toDate()}\n onChange={handleValueChange}\n labelFormat={labelFormat}\n dayClassName={dayClassName}\n dayStyle={dayStyle}\n disableOutsideEvents={disableOutsideEvents}\n minDate={minDate}\n maxDate={maxDate}\n excludeDate={excludeDate}\n __staticSelector=\"DatePicker\"\n fullWidth={dropdownType === 'modal'}\n size={dropdownType === 'modal' ? 'lg' : calendarSize}\n firstDayOfWeek={firstDayOfWeek}\n preventFocus={allowFreeInput}\n amountOfMonths={amountOfMonths}\n allowLevelChange={allowLevelChange}\n initialLevel={initialLevel}\n hideOutsideDates={hideOutsideDates}\n hideWeekdays={hideWeekdays}\n renderDay={renderDay}\n />\n </DatePickerBase>\n );\n }\n);\n\nDatePicker.displayName = '@mantine/dates/DatePicker';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePicker.js","sources":["../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import dayjs from 'dayjs';\nimport React, { useState, useRef, forwardRef, useEffect } from 'react';\nimport { useUncontrolled, useMergedRef, upperFirst } from '@mantine/hooks';\nimport { useMantineTheme, useComponentDefaultProps } from '@mantine/core';\nimport { FirstDayOfWeek } from '../../types';\nimport { Calendar } from '../Calendar/Calendar';\nimport { CalendarSharedProps } from '../CalendarBase/CalendarBase';\nimport { DatePickerBase, DatePickerBaseSharedProps } from '../DatePickerBase/DatePickerBase';\n\nexport interface DatePickerProps\n extends Omit<DatePickerBaseSharedProps, 'onChange'>,\n Omit<CalendarSharedProps, 'size' | 'classNames' | 'styles' | 'onMonthChange' | 'onChange'> {\n /** Selected date, required with controlled input */\n value?: Date | null;\n\n /** Called when date changes */\n onChange?(value: Date | null): void;\n\n /** Default value for uncontrolled input */\n defaultValue?: Date | null;\n\n /** Set to false to force dropdown to stay open after date was selected */\n closeCalendarOnChange?: boolean;\n\n /** Set to true to open dropdown on clear */\n openDropdownOnClear?: boolean;\n\n /** dayjs input format */\n inputFormat?: string;\n\n /** Control initial dropdown opened state */\n initiallyOpened?: boolean;\n\n /** Parser function for date provided by input typing */\n dateParser?: (value: string) => Date;\n\n /** Input name, useful for uncontrolled variant to capture data with native form */\n name?: string;\n\n /** Set first day of the week */\n firstDayOfWeek?: FirstDayOfWeek;\n\n /** Allow free input */\n allowFreeInput?: boolean;\n\n /** Render day based on the date */\n renderDay?(date: Date): React.ReactNode;\n}\n\nconst defaultProps: Partial<DatePickerProps> = {\n shadow: 'sm',\n transitionDuration: 200,\n closeCalendarOnChange: true,\n labelFormat: 'MMMM YYYY',\n initiallyOpened: false,\n name: 'date',\n size: 'sm',\n dropdownType: 'popover',\n dropdownPosition: 'flip',\n clearable: true,\n disabled: false,\n fixOnBlur: true,\n withinPortal: true,\n firstDayOfWeek: 'monday',\n openDropdownOnClear: true,\n};\n\nexport const DatePicker = forwardRef<HTMLInputElement, DatePickerProps>(\n (props: DatePickerProps, ref) => {\n const {\n value,\n onChange,\n defaultValue,\n classNames,\n styles,\n shadow,\n locale,\n inputFormat,\n transitionDuration,\n transitionTimingFunction,\n nextMonthLabel,\n previousMonthLabel,\n closeCalendarOnChange,\n labelFormat,\n dayClassName,\n dayStyle,\n disableOutsideEvents,\n minDate,\n maxDate,\n excludeDate,\n initialMonth,\n initiallyOpened,\n name,\n size,\n dropdownType,\n dropdownPosition,\n clearable,\n disabled,\n clearButtonLabel,\n fixOnBlur,\n allowFreeInput,\n withinPortal,\n dateParser,\n firstDayOfWeek,\n onFocus,\n onBlur,\n amountOfMonths,\n allowLevelChange,\n initialLevel,\n onDropdownClose,\n onDropdownOpen,\n hideOutsideDates,\n hideWeekdays,\n renderDay,\n type,\n openDropdownOnClear,\n unstyled,\n weekendDays,\n ...others\n } = useComponentDefaultProps('DatePicker', defaultProps, props);\n\n const theme = useMantineTheme();\n const finalLocale = locale || theme.datesLocale;\n const dateFormat = type === 'date' ? 'YYYY-MM-DD' : inputFormat || theme.dateFormat;\n const [dropdownOpened, setDropdownOpened] = useState(initiallyOpened);\n const calendarSize = size === 'lg' || size === 'xl' ? 'md' : 'sm';\n const inputRef = useRef<HTMLInputElement>();\n const [lastValidValue, setLastValidValue] = useState(defaultValue ?? null);\n const [_value, setValue] = useUncontrolled<Date>({\n value,\n defaultValue,\n finalValue: null,\n onChange,\n });\n const [calendarMonth, setCalendarMonth] = useState(_value || initialMonth || new Date());\n\n const [focused, setFocused] = useState(false);\n const [inputState, setInputState] = useState(\n _value instanceof Date ? upperFirst(dayjs(_value).locale(finalLocale).format(dateFormat)) : ''\n );\n\n const closeDropdown = () => {\n setDropdownOpened(false);\n onDropdownClose?.();\n };\n\n const openDropdown = () => {\n setDropdownOpened(true);\n onDropdownOpen?.();\n };\n\n useEffect(() => {\n if (value === null && !focused) {\n setInputState('');\n }\n\n if (value instanceof Date && !focused) {\n setInputState(dayjs(value).locale(finalLocale).format(dateFormat));\n }\n }, [value, focused]);\n\n const handleValueChange = (date: Date) => {\n setValue(date);\n setInputState(upperFirst(dayjs(date).locale(finalLocale).format(dateFormat)));\n closeCalendarOnChange && closeDropdown();\n window.setTimeout(() => inputRef.current?.focus(), 0);\n };\n\n const handleClear = () => {\n setValue(null);\n setLastValidValue(null);\n setInputState('');\n openDropdownOnClear && openDropdown();\n inputRef.current?.focus();\n };\n\n const parseDate = (date: string) =>\n dateParser ? dateParser(date) : dayjs(date, dateFormat, finalLocale).toDate();\n\n const setDateFromInput = () => {\n let date = typeof _value === 'string' ? parseDate(_value) : _value;\n\n if (maxDate && dayjs(date).isAfter(maxDate)) {\n date = maxDate;\n }\n\n if (minDate && dayjs(date).isBefore(minDate)) {\n date = minDate;\n }\n\n if (dayjs(date).isValid()) {\n setValue(date);\n setLastValidValue(date);\n setInputState(upperFirst(dayjs(date).locale(finalLocale).format(dateFormat)));\n setCalendarMonth(date);\n } else if (fixOnBlur) {\n setValue(lastValidValue);\n }\n };\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n setFocused(false);\n\n if (allowFreeInput) {\n setDateFromInput();\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter' && allowFreeInput) {\n closeDropdown();\n setDateFromInput();\n }\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n setFocused(true);\n };\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n openDropdown();\n\n const date = parseDate(event.target.value);\n if (dayjs(date).isValid()) {\n setValue(date);\n setLastValidValue(date);\n setInputState(event.target.value);\n setCalendarMonth(date);\n } else {\n setInputState(event.target.value);\n }\n };\n\n return (\n <DatePickerBase\n allowFreeInput={allowFreeInput}\n dropdownOpened={dropdownOpened}\n setDropdownOpened={setDropdownOpened}\n shadow={shadow}\n transitionDuration={transitionDuration}\n ref={useMergedRef(ref, inputRef)}\n size={size}\n styles={styles}\n classNames={classNames}\n onChange={handleChange}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n onKeyDown={handleKeyDown}\n name={name}\n inputLabel={inputState}\n __staticSelector=\"DatePicker\"\n dropdownType={dropdownType}\n dropdownPosition={dropdownPosition}\n clearable={type === 'date' ? false : clearable && !!_value && !disabled}\n clearButtonLabel={clearButtonLabel}\n onClear={handleClear}\n disabled={disabled}\n withinPortal={withinPortal}\n amountOfMonths={amountOfMonths}\n onDropdownClose={onDropdownClose}\n onDropdownOpen={onDropdownOpen}\n type={type}\n unstyled={unstyled}\n {...others}\n >\n <Calendar\n classNames={classNames}\n styles={styles}\n locale={finalLocale}\n nextMonthLabel={nextMonthLabel}\n previousMonthLabel={previousMonthLabel}\n month={allowFreeInput ? calendarMonth : undefined}\n initialMonth={initialMonth || (_value instanceof Date ? _value : new Date())}\n onMonthChange={setCalendarMonth}\n value={_value instanceof Date ? _value : dayjs(_value).toDate()}\n onChange={handleValueChange}\n labelFormat={labelFormat}\n dayClassName={dayClassName}\n dayStyle={dayStyle}\n disableOutsideEvents={disableOutsideEvents}\n minDate={minDate}\n maxDate={maxDate}\n excludeDate={excludeDate}\n __staticSelector=\"DatePicker\"\n fullWidth={dropdownType === 'modal'}\n __stopPropagation={dropdownType !== 'modal'}\n size={dropdownType === 'modal' ? 'lg' : calendarSize}\n firstDayOfWeek={firstDayOfWeek}\n preventFocus={allowFreeInput}\n amountOfMonths={amountOfMonths}\n allowLevelChange={allowLevelChange}\n initialLevel={initialLevel}\n hideOutsideDates={hideOutsideDates}\n hideWeekdays={hideWeekdays}\n renderDay={renderDay}\n unstyled={unstyled}\n weekendDays={weekendDays}\n />\n </DatePickerBase>\n );\n }\n);\n\nDatePicker.displayName = '@mantine/dates/DatePicker';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React, { forwardRef, useRef } from 'react';
|
|
2
|
-
import { extractSystemStyles,
|
|
3
|
-
import {
|
|
2
|
+
import { extractSystemStyles, Input, Popover, Modal, CloseButton } from '@mantine/core';
|
|
3
|
+
import { useId, useMergedRef } from '@mantine/hooks';
|
|
4
4
|
import useStyles from './DatePickerBase.styles.js';
|
|
5
5
|
|
|
6
6
|
var __defProp = Object.defineProperty;
|
|
@@ -41,6 +41,12 @@ const RIGHT_SECTION_WIDTH = {
|
|
|
41
41
|
lg: 40,
|
|
42
42
|
xl: 44
|
|
43
43
|
};
|
|
44
|
+
const defaultTransition = {
|
|
45
|
+
in: { opacity: 1, transform: "translateY(0) scale(1)" },
|
|
46
|
+
out: { opacity: 0, transform: "translateY(-25px) scale(0.93)" },
|
|
47
|
+
common: { transformOrigin: "top left" },
|
|
48
|
+
transitionProperty: "opacity, transform"
|
|
49
|
+
};
|
|
44
50
|
const DatePickerBase = forwardRef((_a, ref) => {
|
|
45
51
|
var _b = _a, {
|
|
46
52
|
classNames,
|
|
@@ -56,7 +62,7 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
56
62
|
description,
|
|
57
63
|
placeholder,
|
|
58
64
|
shadow,
|
|
59
|
-
transition =
|
|
65
|
+
transition = defaultTransition,
|
|
60
66
|
transitionDuration = 100,
|
|
61
67
|
transitionTimingFunction,
|
|
62
68
|
size = "sm",
|
|
@@ -66,6 +72,7 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
66
72
|
dropdownOpened,
|
|
67
73
|
setDropdownOpened,
|
|
68
74
|
dropdownType = "popover",
|
|
75
|
+
dropdownPosition = "flip",
|
|
69
76
|
clearable = true,
|
|
70
77
|
clearButtonLabel,
|
|
71
78
|
onClear,
|
|
@@ -87,7 +94,10 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
87
94
|
labelProps,
|
|
88
95
|
descriptionProps,
|
|
89
96
|
clearButtonTabIndex = 0,
|
|
90
|
-
unstyled
|
|
97
|
+
unstyled,
|
|
98
|
+
inputContainer,
|
|
99
|
+
inputWrapperOrder,
|
|
100
|
+
modalProps
|
|
91
101
|
} = _b, others = __objRest(_b, [
|
|
92
102
|
"classNames",
|
|
93
103
|
"className",
|
|
@@ -112,6 +122,7 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
112
122
|
"dropdownOpened",
|
|
113
123
|
"setDropdownOpened",
|
|
114
124
|
"dropdownType",
|
|
125
|
+
"dropdownPosition",
|
|
115
126
|
"clearable",
|
|
116
127
|
"clearButtonLabel",
|
|
117
128
|
"onClear",
|
|
@@ -133,11 +144,19 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
133
144
|
"labelProps",
|
|
134
145
|
"descriptionProps",
|
|
135
146
|
"clearButtonTabIndex",
|
|
136
|
-
"unstyled"
|
|
147
|
+
"unstyled",
|
|
148
|
+
"inputContainer",
|
|
149
|
+
"inputWrapperOrder",
|
|
150
|
+
"modalProps"
|
|
137
151
|
]);
|
|
138
|
-
const { classes, cx, theme } = useStyles(null, {
|
|
152
|
+
const { classes, cx, theme } = useStyles(null, {
|
|
153
|
+
classNames,
|
|
154
|
+
styles,
|
|
155
|
+
unstyled,
|
|
156
|
+
name: __staticSelector
|
|
157
|
+
});
|
|
139
158
|
const { systemStyles, rest } = extractSystemStyles(others);
|
|
140
|
-
const uuid =
|
|
159
|
+
const uuid = useId(id);
|
|
141
160
|
const inputRef = useRef();
|
|
142
161
|
const closeDropdown = () => {
|
|
143
162
|
setDropdownOpened(false);
|
|
@@ -152,7 +171,7 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
152
171
|
!dropdownOpened ? onDropdownOpen == null ? void 0 : onDropdownOpen() : onDropdownClose == null ? void 0 : onDropdownClose();
|
|
153
172
|
};
|
|
154
173
|
const closeOnEscape = (event) => {
|
|
155
|
-
if (event.
|
|
174
|
+
if (event.key === "Escape") {
|
|
156
175
|
closeDropdown();
|
|
157
176
|
window.setTimeout(() => {
|
|
158
177
|
var _a2;
|
|
@@ -165,7 +184,8 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
165
184
|
"aria-label": clearButtonLabel,
|
|
166
185
|
onClick: onClear,
|
|
167
186
|
size,
|
|
168
|
-
tabIndex: clearButtonTabIndex
|
|
187
|
+
tabIndex: clearButtonTabIndex,
|
|
188
|
+
unstyled
|
|
169
189
|
}) : null;
|
|
170
190
|
const handleInputBlur = (event) => {
|
|
171
191
|
typeof onBlur === "function" && onBlur(event);
|
|
@@ -181,12 +201,12 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
181
201
|
};
|
|
182
202
|
const handleKeyDown = (event) => {
|
|
183
203
|
typeof onKeyDown === "function" && onKeyDown(event);
|
|
184
|
-
if ((event.
|
|
204
|
+
if ((event.key === "Space" || event.key === "Enter") && !allowFreeInput) {
|
|
185
205
|
event.preventDefault();
|
|
186
206
|
openDropdown();
|
|
187
207
|
}
|
|
188
208
|
};
|
|
189
|
-
return /* @__PURE__ */ React.createElement(
|
|
209
|
+
return /* @__PURE__ */ React.createElement(Input.Wrapper, __spreadValues(__spreadValues({
|
|
190
210
|
required,
|
|
191
211
|
id: uuid,
|
|
192
212
|
label,
|
|
@@ -201,9 +221,11 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
201
221
|
sx,
|
|
202
222
|
errorProps,
|
|
203
223
|
descriptionProps,
|
|
204
|
-
labelProps
|
|
224
|
+
labelProps,
|
|
225
|
+
inputContainer,
|
|
226
|
+
inputWrapperOrder,
|
|
227
|
+
unstyled
|
|
205
228
|
}, systemStyles), wrapperProps), /* @__PURE__ */ React.createElement(Popover, {
|
|
206
|
-
position: "bottom-start",
|
|
207
229
|
__staticSelector,
|
|
208
230
|
withinPortal,
|
|
209
231
|
offset: 10,
|
|
@@ -211,6 +233,8 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
211
233
|
transitionDuration,
|
|
212
234
|
transition,
|
|
213
235
|
positionDependencies,
|
|
236
|
+
middlewares: { flip: dropdownPosition === "flip", shift: false },
|
|
237
|
+
position: dropdownPosition === "flip" ? "bottom-start" : dropdownPosition,
|
|
214
238
|
shadow,
|
|
215
239
|
onClose: closeDropdown,
|
|
216
240
|
trapFocus: !allowFreeInput,
|
|
@@ -244,18 +268,20 @@ const DatePickerBase = forwardRef((_a, ref) => {
|
|
|
244
268
|
onBlur: handleInputBlur,
|
|
245
269
|
onFocus: handleInputFocus,
|
|
246
270
|
onChange,
|
|
247
|
-
autoComplete: "off"
|
|
271
|
+
autoComplete: "off",
|
|
272
|
+
unstyled
|
|
248
273
|
}, rest)))), dropdownType === "popover" ? /* @__PURE__ */ React.createElement(Popover.Dropdown, null, /* @__PURE__ */ React.createElement("div", {
|
|
249
274
|
"data-mantine-stop-propagation": dropdownOpened,
|
|
250
275
|
onKeyDownCapture: closeOnEscape,
|
|
251
276
|
"aria-hidden": allowFreeInput || void 0
|
|
252
|
-
}, children)) : /* @__PURE__ */ React.createElement(Modal, {
|
|
277
|
+
}, children)) : /* @__PURE__ */ React.createElement(Modal, __spreadProps(__spreadValues({}, modalProps), {
|
|
253
278
|
opened: dropdownOpened,
|
|
254
279
|
onClose: closeDropdown,
|
|
255
280
|
withCloseButton: false,
|
|
256
281
|
size: amountOfMonths * 400,
|
|
257
|
-
zIndex: modalZIndex
|
|
258
|
-
|
|
282
|
+
zIndex: modalZIndex,
|
|
283
|
+
unstyled
|
|
284
|
+
}), children)));
|
|
259
285
|
});
|
|
260
286
|
DatePickerBase.displayName = "@mantine/dates/DatePickerBase";
|
|
261
287
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerBase.js","sources":["../../../src/components/DatePickerBase/DatePickerBase.tsx"],"sourcesContent":["import React, { useRef, forwardRef } from 'react';\nimport {\n DefaultProps,\n Input,\n InputWrapper,\n InputBaseProps,\n InputWrapperBaseProps,\n MantineTransition,\n InputStylesNames,\n InputWrapperStylesNames,\n MantineSize,\n Modal,\n CloseButton,\n MantineShadow,\n Selectors,\n extractSystemStyles,\n Popover,\n} from '@mantine/core';\nimport { useMergedRef, useUuid } from '@mantine/hooks';\nimport { CalendarBaseStylesNames } from '../CalendarBase/CalendarBase';\nimport useStyles from './DatePickerBase.styles';\n\nexport type DatePickerStylesNames =\n | Selectors<typeof useStyles>\n | CalendarBaseStylesNames\n | InputStylesNames\n | InputWrapperStylesNames\n | 'dropdown';\n\nexport interface DatePickerBaseSharedProps\n extends InputBaseProps,\n InputWrapperBaseProps,\n DefaultProps<DatePickerStylesNames>,\n Omit<\n React.ComponentPropsWithoutRef<'input'>,\n 'value' | 'defaultValue' | 'placeholder' | 'size'\n > {\n /** Props spread to root element (InputWrapper) */\n wrapperProps?: React.ComponentPropsWithoutRef<'div'>;\n\n /** Placeholder, displayed when date is not selected */\n placeholder?: string;\n\n /** Dropdown appear/disappear transition */\n transition?: MantineTransition;\n\n /** Dropdown appear/disappear transition duration */\n transitionDuration?: number;\n\n /** Dropdown appear/disappear transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Dropdown shadow from theme or css value for custom box-shadow */\n shadow?: MantineShadow;\n\n /** Input name, useful fon uncontrolled variant to capture data with native form */\n name?: string;\n\n /** Input size */\n size?: MantineSize;\n\n /** Where to show calendar in modal or popover */\n dropdownType?: 'popover' | 'modal';\n\n /** Allow to clear value */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** useEffect dependencies to force update dropdown position */\n positionDependencies?: any[];\n\n /** Dropdown zIndex */\n zIndex?: number;\n\n /** call onChange with last valid value onBlur */\n fixOnBlur?: boolean;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Called when dropdown opens */\n onDropdownOpen?(): void;\n\n /** Called when dropdown closes */\n onDropdownClose?(): void;\n\n /** Events that should trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** Modal z-index */\n modalZIndex?: number;\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport interface DatePickerBaseProps extends DatePickerBaseSharedProps {\n /** Internal prop to set input label */\n inputLabel?: string;\n\n /** Static css selector base */\n __staticSelector?: string;\n\n /** Controls dropdown opened state */\n dropdownOpened: boolean;\n\n /** Called when dropdown opened state changes */\n setDropdownOpened(opened: boolean): void;\n\n /** Called when clear button in clicked */\n onClear(): void;\n\n /** Allow free input */\n allowFreeInput?: boolean;\n\n /** Amount of months */\n amountOfMonths?: number;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nexport const DatePickerBase = forwardRef<HTMLInputElement, DatePickerBaseProps>(\n (\n {\n classNames,\n className,\n style,\n styles,\n wrapperProps,\n required,\n allowFreeInput = false,\n label,\n error,\n id,\n description,\n placeholder,\n shadow,\n transition = 'pop',\n transitionDuration = 100,\n transitionTimingFunction,\n size = 'sm',\n children,\n inputLabel,\n __staticSelector = 'DatePickerBase',\n dropdownOpened,\n setDropdownOpened,\n dropdownType = 'popover',\n clearable = true,\n clearButtonLabel,\n onClear,\n positionDependencies = [],\n zIndex,\n withinPortal = true,\n onBlur,\n onFocus,\n onChange,\n onKeyDown,\n name = 'date',\n sx,\n amountOfMonths = 1,\n onDropdownClose,\n onDropdownOpen,\n clickOutsideEvents = ['mousedown', 'touchstart'],\n modalZIndex,\n errorProps,\n labelProps,\n descriptionProps,\n clearButtonTabIndex = 0,\n unstyled,\n ...others\n }: DatePickerBaseProps,\n ref\n ) => {\n const { classes, cx, theme } = useStyles(null, { classNames, styles, name: __staticSelector });\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useUuid(id);\n const inputRef = useRef<HTMLButtonElement>();\n\n const closeDropdown = () => {\n setDropdownOpened(false);\n onDropdownClose?.();\n };\n\n const openDropdown = () => {\n setDropdownOpened(true);\n onDropdownOpen?.();\n };\n\n const toggleDropdown = () => {\n setDropdownOpened(!dropdownOpened);\n !dropdownOpened ? onDropdownOpen?.() : onDropdownClose?.();\n };\n\n const closeOnEscape = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.nativeEvent.code === 'Escape') {\n closeDropdown();\n window.setTimeout(() => inputRef.current?.focus(), 0);\n }\n };\n\n const rightSection = clearable ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={onClear}\n size={size}\n tabIndex={clearButtonTabIndex}\n />\n ) : null;\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (allowFreeInput) {\n closeDropdown();\n }\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n if (allowFreeInput) {\n openDropdown();\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n typeof onKeyDown === 'function' && onKeyDown(event);\n if ((event.code === 'Space' || event.code === 'Enter') && !allowFreeInput) {\n event.preventDefault();\n openDropdown();\n }\n };\n\n return (\n <InputWrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector={__staticSelector}\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n {...systemStyles}\n {...wrapperProps}\n >\n <Popover\n position=\"bottom-start\"\n __staticSelector={__staticSelector}\n withinPortal={withinPortal}\n offset={10}\n opened={dropdownOpened}\n transitionDuration={transitionDuration}\n transition={transition}\n positionDependencies={positionDependencies}\n shadow={shadow}\n onClose={closeDropdown}\n trapFocus={!allowFreeInput}\n withRoles={false}\n clickOutsideEvents={clickOutsideEvents}\n zIndex={zIndex}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <Popover.Target>\n <div className={classes.wrapper}>\n <Input<'input'>\n classNames={{\n ...classNames,\n input: cx(\n classes.input,\n { [classes.freeInput]: allowFreeInput },\n classNames?.input\n ),\n }}\n styles={styles}\n onClick={() => (!allowFreeInput ? toggleDropdown() : openDropdown())}\n onKeyDown={handleKeyDown}\n id={uuid}\n ref={useMergedRef(ref, inputRef)}\n __staticSelector={__staticSelector}\n size={size}\n name={name}\n placeholder={placeholder}\n value={inputLabel}\n required={required}\n invalid={!!error}\n readOnly={!allowFreeInput}\n rightSection={rightSection}\n rightSectionWidth={theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n onChange={onChange}\n autoComplete=\"off\"\n {...rest}\n />\n </div>\n </Popover.Target>\n\n {dropdownType === 'popover' ? (\n <Popover.Dropdown>\n <div\n data-mantine-stop-propagation={dropdownOpened}\n onKeyDownCapture={closeOnEscape}\n aria-hidden={allowFreeInput || undefined}\n >\n {children}\n </div>\n </Popover.Dropdown>\n ) : (\n <Modal\n opened={dropdownOpened}\n onClose={closeDropdown}\n withCloseButton={false}\n size={amountOfMonths * 400}\n zIndex={modalZIndex}\n >\n {children}\n </Modal>\n )}\n </Popover>\n </InputWrapper>\n );\n }\n);\n\nDatePickerBase.displayName = '@mantine/dates/DatePickerBase';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerBase.js","sources":["../../../src/components/DatePickerBase/DatePickerBase.tsx"],"sourcesContent":["import React, { useRef, forwardRef } from 'react';\nimport {\n DefaultProps,\n Input,\n InputSharedProps,\n InputWrapperBaseProps,\n MantineTransition,\n InputStylesNames,\n InputWrapperStylesNames,\n MantineSize,\n Modal,\n CloseButton,\n MantineShadow,\n Selectors,\n extractSystemStyles,\n Popover,\n ModalProps,\n} from '@mantine/core';\nimport { useMergedRef, useId } from '@mantine/hooks';\nimport { CalendarBaseStylesNames } from '../CalendarBase/CalendarBase';\nimport useStyles from './DatePickerBase.styles';\n\nexport type DatePickerStylesNames =\n | Selectors<typeof useStyles>\n | CalendarBaseStylesNames\n | InputStylesNames\n | InputWrapperStylesNames\n | 'dropdown';\n\nexport interface DatePickerBaseSharedProps\n extends InputSharedProps,\n InputWrapperBaseProps,\n DefaultProps<DatePickerStylesNames>,\n Omit<\n React.ComponentPropsWithoutRef<'input'>,\n 'value' | 'defaultValue' | 'placeholder' | 'size'\n > {\n /** Props spread to root element */\n wrapperProps?: React.ComponentPropsWithoutRef<'div'>;\n\n /** Placeholder, displayed when date is not selected */\n placeholder?: string;\n\n /** Dropdown appear/disappear transition */\n transition?: MantineTransition;\n\n /** Dropdown appear/disappear transition duration */\n transitionDuration?: number;\n\n /** Dropdown appear/disappear transition timing function, defaults to theme.transitionTimingFunction */\n transitionTimingFunction?: string;\n\n /** Dropdown shadow from theme or css value for custom box-shadow */\n shadow?: MantineShadow;\n\n /** Input name, useful fon uncontrolled variant to capture data with native form */\n name?: string;\n\n /** Input size */\n size?: MantineSize;\n\n /** Where to show calendar in modal or popover */\n dropdownType?: 'popover' | 'modal';\n\n /** Dropdown positioning behavior */\n dropdownPosition?: 'bottom-start' | 'top-start' | 'flip';\n\n /** Allow to clear value */\n clearable?: boolean;\n\n /** aria-label for clear button */\n clearButtonLabel?: string;\n\n /** useEffect dependencies to force update dropdown position */\n positionDependencies?: any[];\n\n /** Dropdown zIndex */\n zIndex?: React.CSSProperties['zIndex'];\n\n /** call onChange with last valid value onBlur */\n fixOnBlur?: boolean;\n\n /** Whether to render the dropdown in a Portal */\n withinPortal?: boolean;\n\n /** Called when dropdown opens */\n onDropdownOpen?(): void;\n\n /** Called when dropdown closes */\n onDropdownClose?(): void;\n\n /** Events that should trigger outside clicks */\n clickOutsideEvents?: string[];\n\n /** Props spread to Modal component */\n modalProps?: Partial<ModalProps>;\n\n /** Modal z-index */\n modalZIndex?: React.CSSProperties['zIndex'];\n\n /** Set the clear button tab index to disabled or default after input field */\n clearButtonTabIndex?: -1 | 0;\n}\n\nexport interface DatePickerBaseProps extends DatePickerBaseSharedProps {\n /** Internal prop to set input label */\n inputLabel?: string;\n\n /** Static css selector base */\n __staticSelector?: string;\n\n /** Controls dropdown opened state */\n dropdownOpened: boolean;\n\n /** Called when dropdown opened state changes */\n setDropdownOpened(opened: boolean): void;\n\n /** Called when clear button in clicked */\n onClear(): void;\n\n /** Allow free input */\n allowFreeInput?: boolean;\n\n /** Amount of months */\n amountOfMonths?: number;\n}\n\nconst RIGHT_SECTION_WIDTH = {\n xs: 24,\n sm: 30,\n md: 34,\n lg: 40,\n xl: 44,\n};\n\nconst defaultTransition: MantineTransition = {\n in: { opacity: 1, transform: 'translateY(0) scale(1)' },\n out: { opacity: 0, transform: 'translateY(-25px) scale(0.93)' },\n common: { transformOrigin: 'top left' },\n transitionProperty: 'opacity, transform',\n};\n\nexport const DatePickerBase = forwardRef<HTMLInputElement, DatePickerBaseProps>(\n (\n {\n classNames,\n className,\n style,\n styles,\n wrapperProps,\n required,\n allowFreeInput = false,\n label,\n error,\n id,\n description,\n placeholder,\n shadow,\n transition = defaultTransition,\n transitionDuration = 100,\n transitionTimingFunction,\n size = 'sm',\n children,\n inputLabel,\n __staticSelector = 'DatePickerBase',\n dropdownOpened,\n setDropdownOpened,\n dropdownType = 'popover',\n dropdownPosition = 'flip',\n clearable = true,\n clearButtonLabel,\n onClear,\n positionDependencies = [],\n zIndex,\n withinPortal = true,\n onBlur,\n onFocus,\n onChange,\n onKeyDown,\n name = 'date',\n sx,\n amountOfMonths = 1,\n onDropdownClose,\n onDropdownOpen,\n clickOutsideEvents = ['mousedown', 'touchstart'],\n modalZIndex,\n errorProps,\n labelProps,\n descriptionProps,\n clearButtonTabIndex = 0,\n unstyled,\n inputContainer,\n inputWrapperOrder,\n modalProps,\n ...others\n }: DatePickerBaseProps,\n ref\n ) => {\n const { classes, cx, theme } = useStyles(null, {\n classNames,\n styles,\n unstyled,\n name: __staticSelector,\n });\n const { systemStyles, rest } = extractSystemStyles(others);\n const uuid = useId(id);\n const inputRef = useRef<HTMLButtonElement>();\n\n const closeDropdown = () => {\n setDropdownOpened(false);\n onDropdownClose?.();\n };\n\n const openDropdown = () => {\n setDropdownOpened(true);\n onDropdownOpen?.();\n };\n\n const toggleDropdown = () => {\n setDropdownOpened(!dropdownOpened);\n !dropdownOpened ? onDropdownOpen?.() : onDropdownClose?.();\n };\n\n const closeOnEscape = (event: React.KeyboardEvent<HTMLDivElement>) => {\n if (event.key === 'Escape') {\n closeDropdown();\n window.setTimeout(() => inputRef.current?.focus(), 0);\n }\n };\n\n const rightSection = clearable ? (\n <CloseButton\n variant=\"transparent\"\n aria-label={clearButtonLabel}\n onClick={onClear}\n size={size}\n tabIndex={clearButtonTabIndex}\n unstyled={unstyled}\n />\n ) : null;\n\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onBlur === 'function' && onBlur(event);\n if (allowFreeInput) {\n closeDropdown();\n }\n };\n\n const handleInputFocus = (event: React.FocusEvent<HTMLInputElement>) => {\n typeof onFocus === 'function' && onFocus(event);\n if (allowFreeInput) {\n openDropdown();\n }\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n typeof onKeyDown === 'function' && onKeyDown(event);\n if ((event.key === 'Space' || event.key === 'Enter') && !allowFreeInput) {\n event.preventDefault();\n openDropdown();\n }\n };\n\n return (\n <Input.Wrapper\n required={required}\n id={uuid}\n label={label}\n error={error}\n description={description}\n className={className}\n style={style}\n classNames={classNames}\n styles={styles}\n size={size}\n __staticSelector={__staticSelector}\n sx={sx}\n errorProps={errorProps}\n descriptionProps={descriptionProps}\n labelProps={labelProps}\n inputContainer={inputContainer}\n inputWrapperOrder={inputWrapperOrder}\n unstyled={unstyled}\n {...systemStyles}\n {...wrapperProps}\n >\n <Popover\n __staticSelector={__staticSelector}\n withinPortal={withinPortal}\n offset={10}\n opened={dropdownOpened}\n transitionDuration={transitionDuration}\n transition={transition}\n positionDependencies={positionDependencies}\n middlewares={{ flip: dropdownPosition === 'flip', shift: false }}\n position={dropdownPosition === 'flip' ? 'bottom-start' : dropdownPosition}\n shadow={shadow}\n onClose={closeDropdown}\n trapFocus={!allowFreeInput}\n withRoles={false}\n clickOutsideEvents={clickOutsideEvents}\n zIndex={zIndex}\n classNames={classNames}\n styles={styles}\n unstyled={unstyled}\n >\n <Popover.Target>\n <div className={classes.wrapper}>\n <Input<'input'>\n classNames={{\n ...classNames,\n input: cx(\n classes.input,\n { [classes.freeInput]: allowFreeInput },\n classNames?.input\n ),\n }}\n styles={styles}\n onClick={() => (!allowFreeInput ? toggleDropdown() : openDropdown())}\n onKeyDown={handleKeyDown}\n id={uuid}\n ref={useMergedRef(ref, inputRef)}\n __staticSelector={__staticSelector}\n size={size}\n name={name}\n placeholder={placeholder}\n value={inputLabel}\n required={required}\n invalid={!!error}\n readOnly={!allowFreeInput}\n rightSection={rightSection}\n rightSectionWidth={theme.fn.size({ size, sizes: RIGHT_SECTION_WIDTH })}\n onBlur={handleInputBlur}\n onFocus={handleInputFocus}\n onChange={onChange}\n autoComplete=\"off\"\n unstyled={unstyled}\n {...rest}\n />\n </div>\n </Popover.Target>\n\n {dropdownType === 'popover' ? (\n <Popover.Dropdown>\n <div\n data-mantine-stop-propagation={dropdownOpened}\n onKeyDownCapture={closeOnEscape}\n aria-hidden={allowFreeInput || undefined}\n >\n {children}\n </div>\n </Popover.Dropdown>\n ) : (\n <Modal\n {...modalProps}\n opened={dropdownOpened}\n onClose={closeDropdown}\n withCloseButton={false}\n size={amountOfMonths * 400}\n zIndex={modalZIndex}\n unstyled={unstyled}\n >\n {children}\n </Modal>\n )}\n </Popover>\n </Input.Wrapper>\n );\n }\n);\n\nDatePickerBase.displayName = '@mantine/dates/DatePickerBase';\n"],"names":[],"mappings":"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"}
|