@mantine/dates
Version:
Calendars, date and time pickers based on Mantine components
93 lines (92 loc) • 3.1 kB
JavaScript
"use client";
const require_get_default_clamped_date = require("../../utils/get-default-clamped-date/get-default-clamped-date.cjs");
const require_PickerInputBase = require("../PickerInputBase/PickerInputBase.cjs");
const require_use_dates_input = require("../../hooks/use-dates-input/use-dates-input.cjs");
const require_pick_calendar_levels_props = require("../Calendar/pick-calendar-levels-props/pick-calendar-levels-props.cjs");
const require_DatePicker = require("../DatePicker/DatePicker.cjs");
let react_jsx_runtime = require("react/jsx-runtime");
let _mantine_core = require("@mantine/core");
//#region packages/@mantine/dates/src/components/DatePickerInput/DatePickerInput.tsx
const defaultProps = {
type: "default",
size: "sm",
valueFormat: "MMMM D, YYYY",
closeOnChange: true,
sortDates: true,
dropdownType: "popover"
};
const DatePickerInput = (0, _mantine_core.factory)((_props) => {
const props = (0, _mantine_core.useProps)([
"Input",
"InputWrapper",
"DatePickerInput"
], defaultProps, _props);
const { type, value, defaultValue, onChange, valueFormat, labelSeparator, locale, classNames, styles, unstyled, closeOnChange, size, variant, dropdownType, sortDates, minDate, maxDate, vars, defaultDate, valueFormatter, presets, attributes, ...rest } = props;
const { resolvedClassNames, resolvedStyles } = (0, _mantine_core.useResolvedStylesApi)({
classNames,
styles,
props
});
const { calendarProps, others } = require_pick_calendar_levels_props.pickCalendarProps(rest);
const { _value, setValue, formattedValue, dropdownHandlers, dropdownOpened, onClear, shouldClear } = require_use_dates_input.useDatesInput({
type,
value,
defaultValue,
onChange,
locale,
format: valueFormat,
labelSeparator,
closeOnChange,
sortDates,
valueFormatter
});
const _defaultDate = Array.isArray(_value) ? _value[0] || defaultDate : _value || defaultDate;
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_PickerInputBase.PickerInputBase, {
formattedValue,
dropdownOpened,
dropdownHandlers,
classNames: resolvedClassNames,
styles: resolvedStyles,
unstyled,
onClear,
shouldClear,
value: _value,
size,
variant,
dropdownType,
...others,
type,
__staticSelector: "DatePickerInput",
attributes,
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_DatePicker.DatePicker, {
...calendarProps,
size,
variant,
type,
value: _value,
defaultDate: _defaultDate || require_get_default_clamped_date.getDefaultClampedDate({
maxDate,
minDate
}),
onChange: setValue,
locale,
classNames: resolvedClassNames,
styles: resolvedStyles,
unstyled,
__staticSelector: "DatePickerInput",
__stopPropagation: dropdownType === "popover",
minDate,
maxDate,
presets,
attributes
})
});
});
DatePickerInput.classes = {
...require_PickerInputBase.PickerInputBase.classes,
...require_DatePicker.DatePicker.classes
};
DatePickerInput.displayName = "@mantine/dates/DatePickerInput";
//#endregion
exports.DatePickerInput = DatePickerInput;
//# sourceMappingURL=DatePickerInput.cjs.map