text: "use strict";
  
  Object.defineProperty(exports, "__esModule", {
    value: true
  });
  exports["default"] = void 0;
  
  var _propTypes = _interopRequireDefault(require("prop-types"));
  
  var _reactMomentProptypes = _interopRequireDefault(require("react-moment-proptypes"));
  
  var _airbnbPropTypes = require("airbnb-prop-types");
  
  var _defaultPhrases = require("../defaultPhrases");
  
  var _getPhrasePropTypes = _interopRequireDefault(require("../utils/getPhrasePropTypes"));
  
  var _FocusedInputShape = _interopRequireDefault(require("./FocusedInputShape"));
  
  var _IconPositionShape = _interopRequireDefault(require("./IconPositionShape"));
  
  var _OrientationShape = _interopRequireDefault(require("./OrientationShape"));
  
  var _DisabledShape = _interopRequireDefault(require("./DisabledShape"));
  
  var _AnchorDirectionShape = _interopRequireDefault(require("./AnchorDirectionShape"));
  
  var _OpenDirectionShape = _interopRequireDefault(require("./OpenDirectionShape"));
  
  var _DayOfWeekShape = _interopRequireDefault(require("./DayOfWeekShape"));
  
  var _CalendarInfoPositionShape = _interopRequireDefault(require("./CalendarInfoPositionShape"));
  
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
  
  var _default = {
    // required props for a functional interactive DateRangePicker
    startDate: _reactMomentProptypes["default"].momentObj,
    endDate: _reactMomentProptypes["default"].momentObj,
    onDatesChange: _propTypes["default"].func.isRequired,
    focusedInput: _FocusedInputShape["default"],
    onFocusChange: _propTypes["default"].func.isRequired,
    onClose: _propTypes["default"].func,
    // input related props
    startDateId: _propTypes["default"].string.isRequired,
    startDatePlaceholderText: _propTypes["default"].string,
    startDateOffset: _propTypes["default"].func,
    endDateOffset: _propTypes["default"].func,
    endDateId: _propTypes["default"].string.isRequired,
    endDatePlaceholderText: _propTypes["default"].string,
    startDateAriaLabel: _propTypes["default"].string,
    endDateAriaLabel: _propTypes["default"].string,
    disabled: _DisabledShape["default"],
    required: _propTypes["default"].bool,
    readOnly: _propTypes["default"].bool,
    screenReaderInputMessage: _propTypes["default"].string,
    showClearDates: _propTypes["default"].bool,
    showDefaultInputIcon: _propTypes["default"].bool,
    inputIconPosition: _IconPositionShape["default"],
    customInputIcon: _propTypes["default"].node,
    customArrowIcon: _propTypes["default"].node,
    customCloseIcon: _propTypes["default"].node,
    noBorder: _propTypes["default"].bool,
    block: _propTypes["default"].bool,
    small: _propTypes["default"].bool,
    regular: _propTypes["default"].bool,
    keepFocusOnInput: _propTypes["default"].bool,
    // calendar presentation and interaction related props
    renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes["default"].func, 'renderMonthText', 'renderMonthElement'),
    renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes["default"].func, 'renderMonthText', 'renderMonthElement'),
    orientation: _OrientationShape["default"],
    anchorDirection: _AnchorDirectionShape["default"],
    openDirection: _OpenDirectionShape["default"],
    horizontalMargin: _propTypes["default"].number,
    withPortal: _propTypes["default"].bool,
    withFullScreenPortal: _propTypes["default"].bool,
    appendToBody: _propTypes["default"].bool,
    disableScroll: _propTypes["default"].bool,
    daySize: _airbnbPropTypes.nonNegativeInteger,
    isRTL: _propTypes["default"].bool,
    firstDayOfWeek: _DayOfWeekShape["default"],
    initialVisibleMonth: _propTypes["default"].func,
    numberOfMonths: _propTypes["default"].number,
    keepOpenOnDateSelect: _propTypes["default"].bool,
    reopenPickerOnClearDates: _propTypes["default"].bool,
    renderCalendarInfo: _propTypes["default"].func,
    calendarInfoPosition: _CalendarInfoPositionShape["default"],
    hideKeyboardShortcutsPanel: _propTypes["default"].bool,
    verticalHeight: _airbnbPropTypes.nonNegativeInteger,
    transitionDuration: _airbnbPropTypes.nonNegativeInteger,
    verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
    horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
    // navigation related props
    navPrev: _propTypes["default"].node,
    navNext: _propTypes["default"].node,
    onPrevMonthClick: _propTypes["default"].func,
    onNextMonthClick: _propTypes["default"].func,
    // day presentation and interaction related props
    renderCalendarDay: _propTypes["default"].func,
    renderDayContents: _propTypes["default"].func,
    minimumNights: _propTypes["default"].number,
    enableOutsideDays: _propTypes["default"].bool,
    isDayBlocked: _propTypes["default"].func,
    isOutsideRange: _propTypes["default"].func,
    isDayHighlighted: _propTypes["default"].func,
    // internationalization props
    displayFormat: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].func]),
    monthFormat: _propTypes["default"].string,
    weekDayFormat: _propTypes["default"].string,
    phrases: _propTypes["default"].shape((0, _getPhrasePropTypes["default"])(_defaultPhrases.DateRangePickerPhrases)),
    dayAriaLabelFormat: _propTypes["default"].string
  };
  exports["default"] = _default;