import { c as createCommonjsModule, a as commonjsGlobal } from './_commonjsHelpers-97e6d7b1.js';
import React from 'react';
import { c as _slicedToArray, _ as _defineProperty, a as _objectSpread2 } from './_rollupPluginBabelHelpers-b9ad31fa.js';
import PropTypes from 'prop-types';
import { s as styleInject } from './style-inject.es-1f59c1d0.js';
import { I as Icon } from './index-fc484d02.js';
import { d as dayjs } from './dayjs.min-c91ef7b0.js';
import { c as cc } from './index-b65fa23c.js';

var customParseFormat = createCommonjsModule(function (module, exports) {
!function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|YYYY|YY?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d\d/,r=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,o={},s=function(e){return (e=+e)+(e>68?1900:2e3)};var a=function(e){return function(t){this[e]=+t;}},f=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||(this.zone={})).offset=function(e){if(!e)return 0;if("Z"===e)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return 0===n?0:"+"===t[0]?-n:n}(e);}],h=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},u=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?"pm":"PM");return n},d={A:[i,function(e){this.afternoon=u(e,!1);}],a:[i,function(e){this.afternoon=u(e,!0);}],S:[/\d/,function(e){this.milliseconds=100*+e;}],SS:[n,function(e){this.milliseconds=10*+e;}],SSS:[/\d{3}/,function(e){this.milliseconds=+e;}],s:[r,a("seconds")],ss:[r,a("seconds")],m:[r,a("minutes")],mm:[r,a("minutes")],H:[r,a("hours")],h:[r,a("hours")],HH:[r,a("hours")],hh:[r,a("hours")],D:[r,a("day")],DD:[n,a("day")],Do:[i,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,"")===e&&(this.day=r);}],M:[r,a("month")],MM:[n,a("month")],MMM:[i,function(e){var t=h("months"),n=(h("monthsShort")||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw new Error;this.month=n%12||n;}],MMMM:[i,function(e){var t=h("months").indexOf(e)+1;if(t<1)throw new Error;this.month=t%12||t;}],Y:[/[+-]?\d+/,a("year")],YY:[n,function(e){this.year=s(e);}],YYYY:[/\d{4}/,a("year")],Z:f,ZZ:f};function c(n){var r,i;r=n,i=o&&o.formats;for(var s=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var o=r&&r.toUpperCase();return n||i[r]||e[r]||i[o].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),a=s.length,f=0;f<a;f+=1){var h=s[f],u=d[h],c=u&&u[0],l=u&&u[1];s[f]=l?{regex:c,parser:l}:h.replace(/^\[|\]$/g,"");}return function(e){for(var t={},n=0,r=0;n<a;n+=1){var i=s[n];if("string"==typeof i)r+=i.length;else {var o=i.regex,f=i.parser,h=e.slice(r),u=o.exec(h)[0];f.call(t,u),e=e.replace(u,"");}}return function(e){var t=e.afternoon;if(void 0!==t){var n=e.hours;t?n<12&&(e.hours+=12):12===n&&(e.hours=0),delete e.afternoon;}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(s=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,s=e.args;this.$u=r;var a=s[1];if("string"==typeof a){var f=!0===s[2],h=!0===s[3],u=f||h,d=s[2];h&&(d=s[2]),o=this.$locale(),!f&&d&&(o=n.Ls[d]),this.$d=function(e,t,n){try{if(["x","X"].indexOf(t)>-1)return new Date(("X"===t?1e3:1)*e);var r=c(t)(e),i=r.year,o=r.month,s=r.day,a=r.hours,f=r.minutes,h=r.seconds,u=r.milliseconds,d=r.zone,l=new Date,m=s||(i||o?1:l.getDate()),M=i||l.getFullYear(),Y=0;i&&!o||(Y=o>0?o-1:l.getMonth());var p=a||0,v=f||0,D=h||0,g=u||0;return d?new Date(Date.UTC(M,Y,m,p,v,D,g+60*d.offset*1e3)):n?new Date(Date.UTC(M,Y,m,p,v,D,g)):new Date(M,Y,m,p,v,D,g)}catch(e){return new Date("")}}(t,a,r),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(a)&&(this.$d=new Date("")),o={};}else if(a instanceof Array)for(var l=a.length,m=1;m<=l;m+=1){s[1]=a[m-1];var M=n.apply(this,s);if(M.isValid()){this.$d=M.$d,this.$L=M.$L,this.init();break}m===l&&(this.$d=new Date(""));}else i.call(this,e);};}}));
});

var css_248z = ".date-picker-tooltip {\n  max-width: unset !important; }\n\n.Calendar_datePicker__33Uu5 {\n  position: relative;\n  display: inline-flex;\n  padding: 12px;\n  border-right: 1px solid #eee;\n  background-color: #f4f4f4; }\n  .Calendar_datePickerNavigationIcon__VR0GO {\n    position: absolute;\n    top: 8px;\n    left: 8px;\n    width: 32px !important;\n    height: 32px !important;\n    background-color: #fff;\n    border-radius: 16px;\n    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08);\n    border: 1px solid #ddd;\n    cursor: pointer;\n    transition: 0.2s ease-out;\n    transform: rotate(90deg);\n    padding: 6px;\n    box-sizing: border-box; }\n    .Calendar_datePickerNavigationIcon__VR0GO:hover {\n      transform: translateY(-5%) rotate(90deg);\n      box-shadow: 0 2px 9px rgba(0, 0, 0, 0.08); }\n    .Calendar_datePickerNavigationIcon__VR0GO.Calendar_right__5saNx {\n      left: auto;\n      right: 8px;\n      transform: rotate(-90deg); }\n      .Calendar_datePickerNavigationIcon__VR0GO.Calendar_right__5saNx:hover {\n        transform: translateY(-5%) rotate(-90deg); }\n\n.Calendar_calendar__LqmdE {\n  color: #333;\n  max-width: 224px;\n  border: 1px solid #eee;\n  margin-right: 8px;\n  background-color: #fff; }\n  .Calendar_calendar__LqmdE:last-of-type {\n    margin-right: 0; }\n  .Calendar_calendarHeader__1Wmbj {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    padding: 8px;\n    font-size: 14px; }\n  .Calendar_calendarLabels__37Q5Y {\n    display: flex;\n    align-items: center;\n    padding: 8px;\n    border-bottom: 1px solid #eee; }\n  .Calendar_calendarLabel__2VIDV {\n    display: flex;\n    align-items: center;\n    width: 32px;\n    min-width: 32px;\n    max-width: 32px;\n    height: 28px;\n    min-height: 28px;\n    box-sizing: border-box;\n    height: auto;\n    min-height: 0;\n    font-size: 12px;\n    color: #999; }\n  .Calendar_calendarGridRow__2bhX8 {\n    display: flex;\n    align-items: center; }\n    .Calendar_calendarGridRow__2bhX8:last-child {\n      border-bottom: none; }\n      .Calendar_calendarGridRow__2bhX8:last-child .Calendar_rangePickerCalendarGridItem__1eMna {\n        border-bottom: none; }\n    .Calendar_calendarGridRowItem__lEPOi {\n      width: 32px;\n      min-width: 32px;\n      max-width: 32px;\n      height: 28px;\n      min-height: 28px;\n      box-sizing: border-box;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      padding: 8px;\n      border-right: 1px solid #eee;\n      border-bottom: 1px solid #eee;\n      cursor: pointer; }\n      .Calendar_calendarGridRowItem__lEPOi.Calendar_disabled__1W6C7 {\n        pointer-events: none; }\n      .Calendar_calendarGridRowItem__lEPOi.Calendar_disabled__1W6C7 > * {\n        opacity: 0.1; }\n      .Calendar_calendarGridRowItem__lEPOi.Calendar_invisible__3mIJ1 {\n        pointer-events: none; }\n      .Calendar_calendarGridRowItem__lEPOi.Calendar_invisible__3mIJ1 > * {\n        opacity: 0.05; }\n      .Calendar_calendarGridRowItem__lEPOi:last-child {\n        border-right: none; }\n      .Calendar_calendarGridRowItem__lEPOi:hover {\n        background-color: #f5f5f5; }\n      .Calendar_calendarGridRowItem__lEPOi.Calendar_selected__rAmCO {\n        background-color: rgba(18, 79, 160, 0.3);\n        border-color: #124fa0;\n        border-bottom: 1px solid #124fa0;\n        border-left-style: solid;\n        border-right-style: solid;\n        border-left-width: 0;\n        border-right-width: 0; }\n    .Calendar_calendarGridRowItemText__1P_5d {\n      font-size: 12px; }\n\n@keyframes Calendar_show-in__WCOTR {\n  0% {\n    opacity: 0; }\n  100% {\n    opacity: 1; } }\n";
var styles = {"datePicker":"Calendar_datePicker__33Uu5","datePickerNavigationIcon":"Calendar_datePickerNavigationIcon__VR0GO","right":"Calendar_right__5saNx","calendar":"Calendar_calendar__LqmdE","calendarHeader":"Calendar_calendarHeader__1Wmbj","calendarLabels":"Calendar_calendarLabels__37Q5Y","calendarLabel":"Calendar_calendarLabel__2VIDV","calendarGridRow":"Calendar_calendarGridRow__2bhX8","rangePickerCalendarGridItem":"Calendar_rangePickerCalendarGridItem__1eMna","calendarGridRowItem":"Calendar_calendarGridRowItem__lEPOi","disabled":"Calendar_disabled__1W6C7","invisible":"Calendar_invisible__3mIJ1","selected":"Calendar_selected__rAmCO","calendarGridRowItemText":"Calendar_calendarGridRowItemText__1P_5d","show-in":"Calendar_show-in__WCOTR"};
styleInject(css_248z);

var LABELS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
dayjs.extend(customParseFormat);
var hexToRgb = function hexToRgb(hex) {
  var shorthandRegex = /^#?([a-f\d])([a-f\d])([a-f\d])$/i;
  hex = hex.replace(shorthandRegex, function (m, r, g, b) {
    return r + r + g + g + b + b;
  });
  var result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
  return result ? {
    r: parseInt(result[1], 16),
    g: parseInt(result[2], 16),
    b: parseInt(result[3], 16)
  } : null;
};

/**
 * Translates the row/column index for an actual date (we only use the month from date)
 * @Returns
 * text : <string> : the date text (ex. 23)
 * invisible : <bool> : whether the given cell is invisible (out of range)
 * day: <dayjs> : the dayjs object representing the day of the cell
 */
var getTextForCell = function getTextForCell(date, rowIndex, columnIndex) {
  var month = date.startOf("month");
  var cellNumber = rowIndex * 7 + columnIndex;
  var offset = month.day();
  var day = month.add(cellNumber - offset, "d");
  var invisible = day.month() !== month.month();
  return {
    text: "".concat(day.date()),
    day: day,
    invisible: invisible
  };
};

/**
 * For every cell we run this function to see if the range is selected or not
 * so given, the date and the start date and end date we see if it falls inside (inclusively)
 */
var isSelected = function isSelected(date, from, to) {
  return date.isAfter(from, "d") && date.isBefore(to, "d") || date.isSame(from, "d") || date.isSame(to, "d");
};
var renderHeader = function renderHeader(date, ranges, _ref) {
  var prefixClassName = _ref.prefixClassName;
  var month = date.format("MMMM");
  var year = date.format("YYYY");
  return /*#__PURE__*/React.createElement("div", {
    className: "".concat(styles.calendarHeader, " ").concat(prefixClassName, "-calendar-header")
  }, /*#__PURE__*/React.createElement("div", {
    className: "".concat(styles.calendarHeaderMonth, " ").concat(prefixClassName, "-calendar-header-text")
  }, month, " ", /*#__PURE__*/React.createElement("strong", null, year)));
};
var renderLabels = function renderLabels(date, ranges, _ref2) {
  var prefixClassName = _ref2.prefixClassName;
  return /*#__PURE__*/React.createElement("div", {
    className: "".concat(styles.calendarLabels, " ").concat(prefixClassName, "-labels")
  }, new Array(7).fill(0).map(function (_, i) {
    return /*#__PURE__*/React.createElement("div", {
      className: "".concat(styles.calendarLabel, " ").concat(prefixClassName, "-label")
    }, LABELS[i]);
  }));
};

/**
 * Renders each Row
 */
var renderGridRow = function renderGridRow(rowIndex, date, ranges, _ref3) {
  var handleCellClick = _ref3.handleCellClick,
    mergeColor = _ref3.mergeColor,
    prefixClassName = _ref3.prefixClassName,
    minDate = _ref3.minDate,
    maxDate = _ref3.maxDate,
    comparisonMaxDate = _ref3.comparisonMaxDate,
    toggled = _ref3.toggled,
    startDate = _ref3.startDate,
    endDate = _ref3.endDate;
  return new Array(7).fill(0).map(function (_, columnIndex) {
    var _ref5;
    var _getTextForCell = getTextForCell(date, rowIndex, columnIndex),
      text = _getTextForCell.text,
      day = _getTextForCell.day,
      invisible = _getTextForCell.invisible;
    var selected = false;
    var hasLeftEdgeBorder = false;
    var hasRightEdgeBorder = false;
    var style = {};
    ranges.forEach(function (_ref4) {
      var from = _ref4.from,
        to = _ref4.to,
        _ref4$color = _ref4.color,
        color = _ref4$color === void 0 ? "#1b9cfc" : _ref4$color;
      if (invisible) return;
      if (day.isSame(from, "d")) hasLeftEdgeBorder = true;
      if (day.isSame(to, "d")) hasRightEdgeBorder = true;
      if (isSelected(day, from, to)) {
        selected = true;
        if (!style.backgroundColor) {
          style = {
            borderColor: color,
            borderBottomColor: color,
            backgroundColor: "rgba(".concat(Object.values(hexToRgb(color)), ", 0.3)")
          };
        } else {
          style = {
            borderLeftColor: "transparent",
            borderRightColor: "transparent",
            borderBottomColor: mergeColor,
            backgroundColor: "rgba(".concat(Object.values(hexToRgb(mergeColor)), ", 0.3)")
          };
        }
      }
    });
    var isDisabled = false;
    if (minDate && dayjs(minDate).isAfter(day)) isDisabled = true;
    if (maxDate && dayjs(maxDate).isBefore(day)) isDisabled = true;
    if (toggled && comparisonMaxDate && dayjs(comparisonMaxDate).isBefore(day)) isDisabled = true;
    if (startDate && !endDate && dayjs(startDate).isAfter(day)) isDisabled = true;
    var classNames = {
      gridRowItem: cc([styles.calendarGridRowItem, (_ref5 = {}, _defineProperty(_ref5, styles.invisible, invisible), _defineProperty(_ref5, styles.selected, selected), _defineProperty(_ref5, styles.disabled, isDisabled), _ref5), "".concat(prefixClassName, "-calendar-grid-row-item"), _defineProperty({}, "".concat(prefixClassName, "-calendar-grid-row-item-selected"), selected)]),
      gridRowItemText: cc([styles.calendarGridRowItemText, "".concat(prefixClassName, "-grid-row-item-text")])
    };
    return /*#__PURE__*/React.createElement("div", {
      onClick: function onClick() {
        return handleCellClick(day);
      },
      style: _objectSpread2({
        borderLeftWidth: hasLeftEdgeBorder ? 1 : 0,
        borderRightWidth: hasRightEdgeBorder ? 1 : 0
      }, style),
      className: classNames.gridRowItem
    }, /*#__PURE__*/React.createElement("div", {
      className: classNames.gridRowItemText
    }, text));
  });
};

/**
 * Renders the 6 * 7 grid
 */
var renderGrid = function renderGrid(date, ranges, props) {
  // eslint-disable-next-line react/prop-types
  var prefixClassName = props.prefixClassName;
  return /*#__PURE__*/React.createElement("div", {
    className: "".concat(styles.calendarGrid, " ").concat(prefixClassName, "-calendar-grid")
  }, new Array(6).fill(0).map(function (_, i) {
    return /*#__PURE__*/React.createElement("div", {
      className: "".concat(styles.calendarGridRow, " ").concat(prefixClassName, "-calendar-grid-row")
    }, renderGridRow(i, date, ranges, props));
  }));
};
var renderCalendar = function renderCalendar(date, ranges, props) {
  // eslint-disable-next-line react/prop-types
  var prefixClassName = props.prefixClassName;
  return /*#__PURE__*/React.createElement("div", {
    className: "".concat(styles.calendar, " ").concat(prefixClassName, "-calendar")
  }, renderHeader(date, ranges, props), renderLabels(date, ranges, props), renderGrid(date, ranges, props));
};
var Calendar = function Calendar(_ref7) {
  var value = _ref7.value,
    numMonths = _ref7.numMonths,
    onChange = _ref7.onChange,
    mergeColor = _ref7.mergeColor,
    className = _ref7.className,
    prefixClassName = _ref7.prefixClassName,
    maxDate = _ref7.maxDate,
    minDate = _ref7.minDate,
    comparisonMaxDate = _ref7.comparisonMaxDate,
    toggled = _ref7.toggled,
    startDate = _ref7.startDate,
    endDate = _ref7.endDate;
  var ranges = Array.isArray(value) ? value : [{
    from: value,
    to: value
  }];
  var _React$useState = React.useState(dayjs()),
    _React$useState2 = _slicedToArray(_React$useState, 2),
    viewingMonth = _React$useState2[0],
    setViewingMonth = _React$useState2[1];
  React.useEffect(function () {
    startDate && endDate && viewingMonth.format("M") !== dayjs(endDate).add(1, "month").format("M") && setViewingMonth(endDate);
  }, [endDate]);
  var viewNextMonth = React.useCallback(function () {
    setViewingMonth(viewingMonth.add(1, "month"));
  });
  var viewPreviousMonth = React.useCallback(function () {
    setViewingMonth(viewingMonth.subtract(1, "month"));
  });
  var handleCellClick = React.useCallback(function (day) {
    onChange(day);
  });
  var props = {
    handleCellClick: handleCellClick,
    mergeColor: mergeColor,
    prefixClassName: prefixClassName,
    maxDate: maxDate,
    minDate: minDate,
    comparisonMaxDate: comparisonMaxDate,
    toggled: toggled,
    startDate: startDate,
    endDate: endDate
  };
  return /*#__PURE__*/React.createElement("div", {
    "data-testid": "calendar",
    className: "".concat(styles.datePicker, " ").concat(className, " ").concat(prefixClassName)
  }, /*#__PURE__*/React.createElement(Icon, {
    src: "angle-down",
    className: "".concat(styles.datePickerNavigationIcon, " ").concat(prefixClassName, "-arrow-left"),
    onClick: viewPreviousMonth
  }), /*#__PURE__*/React.createElement(Icon, {
    src: "angle-down",
    className: "".concat(styles.datePickerNavigationIcon, " ").concat(styles.right, " ").concat(prefixClassName, "-arrow-right"),
    onClick: viewNextMonth
  }), new Array(numMonths).fill(0).map(function (_, i) {
    return renderCalendar(viewingMonth.subtract(numMonths - i - 1, "months"), ranges, props);
  }));
};
Calendar.propTypes = {
  /** The classname to appended to the outermost element */
  className: PropTypes.string,
  /** The prefix classname appended to all elements */
  prefixClassName: PropTypes.string,
  /** onChange callback */
  onChange: PropTypes.func,
  /** when specifying multiple ranges, this is the color for conflicting ranges */
  mergeColor: PropTypes.string,
  /** start date of the range * */
  startDate: PropTypes.string,
  /** end date of the range* */
  endDate: PropTypes.string,
  /** Dates after this date would be disabled * */
  maxDate: PropTypes.string,
  /** Dates before this date would be disabled * */
  minDate: PropTypes.string,
  /** Dates after this date would be disabled * */
  comparisonMaxDate: PropTypes.string,
  /** number of months to show in the calendar at a time */
  numMonths: PropTypes.number,
  /**  when compare is enabled */
  toggled: PropTypes.bool,
  /** The dates to highlight, can be an array of objects or a single a object */
  value: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.shape({
    from: PropTypes.object,
    to: PropTypes.object,
    color: PropTypes.string
  })), PropTypes.object])
};
Calendar.defaultProps = {
  onChange: function onChange() {},
  numMonths: 1,
  value: dayjs(),
  mergeColor: "#F00",
  className: "",
  prefixClassName: "",
  minDate: null,
  maxDate: null,
  comparisonMaxDate: null,
  toggled: false
};
Calendar.classNames = {
  $prefix: "Outermost element",
  "$prefix-arrow-left": "The left arrow",
  "$prefix-arrow-right": "The right arrow",
  "$prefix-calendar": "The calendar month",
  "$prefix-calendar-header": "The calendar header",
  "$prefix-calendar-header-text": "The calendar header's text (Month)",
  "$prefix-labels": "The wrapper for labels for the days",
  "$prefix-label": "The labels for the days (Sun, Mon, Tue, etc.)",
  "$prefix-calendar-grid": "The main calendar grid div",
  "$prefix-calendar-grid-row": "Each row of the calendar grid",
  "$prefix-calendar-grid-row-item": "Each item of the grid (the square)",
  "$prefix-calendar-grid-row-item-selected": "selected grid row item",
  "$prefix-grid-row-item-text": "The label for each grid item (the day)"
};
Calendar.__docgenInfo = {
  "description": "",
  "methods": [],
  "displayName": "Calendar",
  "props": {
    "onChange": {
      "defaultValue": {
        "value": "() => {}",
        "computed": false
      },
      "type": {
        "name": "func"
      },
      "required": false,
      "description": "onChange callback"
    },
    "numMonths": {
      "defaultValue": {
        "value": "1",
        "computed": false
      },
      "type": {
        "name": "number"
      },
      "required": false,
      "description": "number of months to show in the calendar at a time"
    },
    "value": {
      "defaultValue": {
        "value": "dayjs()",
        "computed": true
      },
      "type": {
        "name": "union",
        "value": [{
          "name": "arrayOf",
          "value": {
            "name": "shape",
            "value": {
              "from": {
                "name": "object",
                "required": false
              },
              "to": {
                "name": "object",
                "required": false
              },
              "color": {
                "name": "string",
                "required": false
              }
            }
          }
        }, {
          "name": "object"
        }]
      },
      "required": false,
      "description": "The dates to highlight, can be an array of objects or a single a object"
    },
    "mergeColor": {
      "defaultValue": {
        "value": "\"#F00\"",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "when specifying multiple ranges, this is the color for conflicting ranges"
    },
    "className": {
      "defaultValue": {
        "value": "\"\"",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "The classname to appended to the outermost element"
    },
    "prefixClassName": {
      "defaultValue": {
        "value": "\"\"",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "The prefix classname appended to all elements"
    },
    "minDate": {
      "defaultValue": {
        "value": "null",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "Dates before this date would be disabled *"
    },
    "maxDate": {
      "defaultValue": {
        "value": "null",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "Dates after this date would be disabled *"
    },
    "comparisonMaxDate": {
      "defaultValue": {
        "value": "null",
        "computed": false
      },
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "Dates after this date would be disabled *"
    },
    "toggled": {
      "defaultValue": {
        "value": "false",
        "computed": false
      },
      "type": {
        "name": "bool"
      },
      "required": false,
      "description": "when compare is enabled"
    },
    "startDate": {
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "start date of the range *"
    },
    "endDate": {
      "type": {
        "name": "string"
      },
      "required": false,
      "description": "end date of the range*"
    }
  }
};

export { Calendar as C, customParseFormat as c };
