UNPKG

@mui/x-date-pickers-pro

Version:

The Pro plan edition of the MUI X Date and Time Picker components.

52 lines (51 loc) 2.3 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTextFieldProps = useTextFieldProps; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var React = _interopRequireWildcard(require("react")); var _useSlotProps = _interopRequireDefault(require("@mui/utils/useSlotProps")); var _PickersTextField = require("@mui/x-date-pickers/PickersTextField"); var _hooks = require("@mui/x-date-pickers/hooks"); var _internals = require("@mui/x-date-pickers/internals"); var _useNullablePickerRangePositionContext = require("../../hooks/useNullablePickerRangePositionContext"); function useTextFieldProps({ slotProps, ownerState, position, allowTriggerShifting }) { const pickerContext = (0, _internals.useNullablePickerContext)(); const translations = (0, _hooks.usePickerTranslations)(); const pickerFieldUIContext = React.useContext(_internals.PickerFieldUIContext); const rangePositionContext = (0, _useNullablePickerRangePositionContext.useNullablePickerRangePositionContext)(); const textFieldProps = (0, _useSlotProps.default)({ elementType: _PickersTextField.PickersTextField, externalSlotProps: (0, _internals.mergeSlotProps)(pickerFieldUIContext.slotProps.textField, slotProps?.textField), additionalProps: { // TODO: Decide if we also want to set the default labels on standalone fields. label: pickerContext ? translations[position] : undefined, focused: pickerContext?.open ? rangePositionContext?.rangePosition === position : undefined }, ownerState: (0, _extends2.default)({}, ownerState, { position }) }); if (!textFieldProps.InputProps) { textFieldProps.InputProps = {}; } if (pickerContext) { if (!allowTriggerShifting) { if (position === 'start') { textFieldProps.InputProps.ref = pickerContext.triggerRef; } } else if (rangePositionContext?.rangePosition === position) { textFieldProps.InputProps.ref = pickerContext.triggerRef; } } textFieldProps.InputProps['data-multi-input'] = position; return textFieldProps; }