Socket
Socket
Sign inDemoInstall

react-date-picker

Package Overview
Dependencies
Maintainers
1
Versions
259
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-date-picker - npm Package Compare versions

Comparing version 8.0.1 to 8.0.2

87

dist/DateInput.js

@@ -44,7 +44,7 @@ "use strict";

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }

@@ -59,23 +59,31 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
var defaultMinDate = new Date(-8.64e15);
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
var defaultMinDate = new Date('0001-01-01');
var defaultMaxDate = new Date(8.64e15);

@@ -153,4 +161,4 @@ var allViews = ['century', 'decade', 'year', 'month'];

function isValidInput(element) {
return element.tagName === 'INPUT' && element.type === 'number';
function isInternalInput(element) {
return element.getAttribute('data-input') === 'true';
}

@@ -163,3 +171,3 @@

nextElement = nextElement[property];
} while (nextElement && !isValidInput(nextElement));
} while (nextElement && !isInternalInput(nextElement));

@@ -182,3 +190,5 @@ return nextElement;

return placeholder.split(pattern).reduce(function (arr, element, index) {
var divider = element && // eslint-disable-next-line react/no-array-index-key
var divider = element &&
/*#__PURE__*/
// eslint-disable-next-line react/no-array-index-key
_react["default"].createElement(_Divider["default"], {

@@ -211,5 +221,5 @@ key: "separator_".concat(index)

var _super = _createSuper(DateInput);
function DateInput() {
var _getPrototypeOf2;
var _this;

@@ -223,3 +233,3 @@

_this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DateInput)).call.apply(_getPrototypeOf2, [this].concat(args)));
_this = _super.call.apply(_super, [this].concat(args));

@@ -371,3 +381,3 @@ _defineProperty(_assertThisInitialized(_this), "state", {

var showLeadingZerosFromFormat = currentMatch && currentMatch.length === 2;
return _react["default"].createElement(_DayInput["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_DayInput["default"], _extends({
key: "day"

@@ -401,3 +411,3 @@ }, _this.commonInputProps, {

if (currentMatch.length > 2) {
return _react["default"].createElement(_MonthSelect["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_MonthSelect["default"], _extends({
key: "month"

@@ -416,3 +426,3 @@ }, _this.commonInputProps, {

var showLeadingZerosFromFormat = currentMatch && currentMatch.length === 2;
return _react["default"].createElement(_MonthInput["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_MonthInput["default"], _extends({
key: "month"

@@ -435,3 +445,3 @@ }, _this.commonInputProps, {

var year = _this.state.year;
return _react["default"].createElement(_YearInput["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_YearInput["default"], _extends({
key: "year"

@@ -510,3 +520,3 @@ }, _this.commonInputProps, {

var value = this.state.value;
return _react["default"].createElement(_NativeInput["default"], {
return /*#__PURE__*/_react["default"].createElement(_NativeInput["default"], {
key: "date",

@@ -532,3 +542,3 @@ ariaLabel: nativeInputAriaLabel,

return _react["default"].createElement("div", {
return /*#__PURE__*/_react["default"].createElement("div", {
className: className,

@@ -556,11 +566,2 @@ onClick: this.onClick

return (0, _dateFormatter.getFormatter)(options);
} // eslint-disable-next-line class-methods-use-this
}, {
key: "formatNumber",
get: function get() {
var options = {
useGrouping: false
};
return (0, _dateFormatter.getFormatter)(options);
}

@@ -587,3 +588,19 @@ }, {

var date = new Date(year, monthIndex, day);
return this.formatDate(locale, date).replace(this.formatNumber(locale, year), 'y').replace(this.formatNumber(locale, monthIndex + 1), 'M').replace(this.formatNumber(locale, day), 'd');
var formattedDate = this.formatDate(locale, date);
var datePieces = ['year', 'month', 'day'];
var datePieceReplacements = ['y', 'M', 'd'];
function formatDatePiece(name, dateToFormat) {
return (0, _dateFormatter.getFormatter)(_defineProperty({
useGrouping: false
}, name, 'numeric'))(locale, dateToFormat).match(/\d{1,}/);
}
var placeholder = formattedDate;
datePieces.forEach(function (datePiece, index) {
var formattedDatePiece = formatDatePiece(datePiece, date);
var datePieceReplacement = datePieceReplacements[index];
placeholder = placeholder.replace(formattedDatePiece, datePieceReplacement);
});
return placeholder;
}

@@ -590,0 +607,0 @@ }, {

@@ -49,3 +49,3 @@ "use strict";

var minDay = (0, _utils.safeMax)(1, isSameMonth(minDate) && (0, _dateUtils.getDate)(minDate));
return _react["default"].createElement(_Input["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_Input["default"], _extends({
max: maxDay,

@@ -52,0 +52,0 @@ min: minDay,

@@ -64,10 +64,11 @@ "use strict";

var numberRegExp = /[0-9]/;
function makeOnKeyPress(maxLength) {
return function onKeyPress(event) {
var key = event.key,
input = event.target;
var value = input.value;
var isNumberKey = !isNaN(parseInt(key, 10));
var selection = getSelectionString();
var value = event.target.value;
if (numberRegExp.test(event.key) && (selection || value.length < maxLength)) {
if (isNumberKey && (selection || value.length < maxLength)) {
return;

@@ -101,6 +102,6 @@ }

var maxLength = max.toString().length;
return [hasLeadingZero && _react["default"].createElement("span", {
return [hasLeadingZero && /*#__PURE__*/_react["default"].createElement("span", {
key: "leadingZero",
className: "".concat(className, "__leadingZero")
}, "0"), _react["default"].createElement("input", {
}, "0"), /*#__PURE__*/_react["default"].createElement("input", {
key: "input",

@@ -111,2 +112,3 @@ "aria-label": ariaLabel,

className: (0, _mergeClassNames["default"])("".concat(className, "__input"), "".concat(className, "__").concat(nameForClass || name), hasLeadingZero && "".concat(className, "__input--hasLeadingZero")),
"data-input": "true",
disabled: disabled,

@@ -146,2 +148,3 @@ max: max,

Input.propTypes = {
ariaLabel: _propTypes["default"].string,
className: _propTypes["default"].string.isRequired,

@@ -148,0 +151,0 @@ disabled: _propTypes["default"].bool,

@@ -40,3 +40,3 @@ "use strict";

var minMonth = (0, _utils.safeMax)(1, isSameYear(minDate) && (0, _dateUtils.getMonthHuman)(minDate));
return _react["default"].createElement(_Input["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_Input["default"], _extends({
max: maxMonth,

@@ -43,0 +43,0 @@ min: minMonth,

@@ -26,10 +26,14 @@ "use strict";

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }

@@ -66,5 +70,6 @@

var formatter = _short ? _dateFormatter.formatShortMonth : _dateFormatter.formatMonth;
return _react["default"].createElement("select", _extends({
return /*#__PURE__*/_react["default"].createElement("select", _extends({
"aria-label": ariaLabel,
className: (0, _mergeClassNames["default"])("".concat(className, "__input"), "".concat(className, "__").concat(name)),
"data-input": "true",
name: name,

@@ -77,3 +82,3 @@ ref: function ref(_ref2) {

value: value !== null ? value : ''
}, otherProps), !value && _react["default"].createElement("option", {
}, otherProps), !value && /*#__PURE__*/_react["default"].createElement("option", {
value: ""

@@ -83,3 +88,3 @@ }, placeholder), dates.map(function (date) {

var disabled = month < minMonth || month > maxMonth;
return _react["default"].createElement("option", {
return /*#__PURE__*/_react["default"].createElement("option", {
key: month,

@@ -86,0 +91,0 @@ disabled: disabled,

@@ -68,3 +68,3 @@ "use strict";

return _react["default"].createElement("input", {
return /*#__PURE__*/_react["default"].createElement("input", {
"aria-label": ariaLabel,

@@ -71,0 +71,0 @@ disabled: disabled,

@@ -47,3 +47,3 @@ "use strict";

return _react["default"].createElement(_Input["default"], _extends({
return /*#__PURE__*/_react["default"].createElement(_Input["default"], _extends({
max: maxYear,

@@ -50,0 +50,0 @@ min: minYear,

@@ -24,4 +24,2 @@ "use strict";

var _utils = require("./shared/utils");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }

@@ -41,8 +39,12 @@

function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance"); }
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === "[object Arguments]")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }

@@ -56,11 +58,15 @@

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }

@@ -76,5 +82,5 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

var _super = _createSuper(DatePicker);
function DatePicker() {
var _getPrototypeOf2;
var _this;

@@ -88,3 +94,3 @@

_this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DatePicker)).call.apply(_getPrototypeOf2, [this].concat(args)));
_this = _super.call.apply(_super, [this].concat(args));

@@ -181,3 +187,4 @@ _defineProperty(_assertThisInitialized(_this), "state", {});

this.handleOutsideActionListeners();
(0, _utils.callIfDefined)(isOpen ? onCalendarOpen : onCalendarClose);
var callback = isOpen ? onCalendarOpen : onCalendarClose;
if (callback) callback();
}

@@ -247,5 +254,5 @@ }

};
return _react["default"].createElement("div", {
return /*#__PURE__*/_react["default"].createElement("div", {
className: "".concat(baseClassName, "__wrapper")
}, _react["default"].createElement(_DateInput["default"], _extends({}, ariaLabelProps, placeholderProps, {
}, /*#__PURE__*/_react["default"].createElement(_DateInput["default"], _extends({}, ariaLabelProps, placeholderProps, {
autoFocus: autoFocus,

@@ -266,3 +273,3 @@ className: "".concat(baseClassName, "__inputGroup"),

value: valueFrom
})), clearIcon !== null && _react["default"].createElement("button", {
})), clearIcon !== null && /*#__PURE__*/_react["default"].createElement("button", {
"aria-label": clearAriaLabel,

@@ -274,3 +281,3 @@ className: "".concat(baseClassName, "__clear-button ").concat(baseClassName, "__button"),

type: "button"
}, clearIcon), calendarIcon !== null && !disableCalendar && _react["default"].createElement("button", {
}, clearIcon), calendarIcon !== null && !disableCalendar && /*#__PURE__*/_react["default"].createElement("button", {
"aria-label": calendarAriaLabel,

@@ -303,5 +310,5 @@ className: "".concat(baseClassName, "__calendar-button ").concat(baseClassName, "__button"),

var className = "".concat(baseClassName, "__calendar");
return _react["default"].createElement(_reactFit["default"], null, _react["default"].createElement("div", {
return /*#__PURE__*/_react["default"].createElement(_reactFit["default"], null, /*#__PURE__*/_react["default"].createElement("div", {
className: (0, _mergeClassNames["default"])(className, "".concat(className, "--").concat(isOpen ? 'open' : 'closed'))
}, _react["default"].createElement(_reactCalendar["default"], _extends({
}, /*#__PURE__*/_react["default"].createElement(_reactCalendar["default"], _extends({
className: calendarClassName,

@@ -321,3 +328,3 @@ onChange: this.onChange,

var isOpen = this.state.isOpen;
return _react["default"].createElement("div", _extends({
return /*#__PURE__*/_react["default"].createElement("div", _extends({
className: (0, _mergeClassNames["default"])(baseClassName, "".concat(baseClassName, "--").concat(isOpen ? 'open' : 'closed'), "".concat(baseClassName, "--").concat(disabled ? 'disabled' : 'enabled'), className)

@@ -367,5 +374,5 @@ }, this.eventProps, {

var CalendarIcon = _react["default"].createElement("svg", _extends({}, iconProps, {
var CalendarIcon = /*#__PURE__*/_react["default"].createElement("svg", _extends({}, iconProps, {
className: "".concat(baseClassName, "__calendar-button__icon ").concat(baseClassName, "__button__icon")
}), _react["default"].createElement("rect", {
}), /*#__PURE__*/_react["default"].createElement("rect", {
fill: "none",

@@ -376,3 +383,3 @@ height: "15",

y: "2"
}), _react["default"].createElement("line", {
}), /*#__PURE__*/_react["default"].createElement("line", {
x1: "6",

@@ -382,3 +389,3 @@ x2: "6",

y2: "4"
}), _react["default"].createElement("line", {
}), /*#__PURE__*/_react["default"].createElement("line", {
x1: "13",

@@ -390,5 +397,5 @@ x2: "13",

var ClearIcon = _react["default"].createElement("svg", _extends({}, iconProps, {
var ClearIcon = /*#__PURE__*/_react["default"].createElement("svg", _extends({}, iconProps, {
className: "".concat(baseClassName, "__clear-button__icon ").concat(baseClassName, "__button__icon")
}), _react["default"].createElement("line", {
}), /*#__PURE__*/_react["default"].createElement("line", {
x1: "4",

@@ -398,3 +405,3 @@ x2: "15",

y2: "15"
}), _react["default"].createElement("line", {
}), /*#__PURE__*/_react["default"].createElement("line", {
x1: "15",

@@ -401,0 +408,0 @@ x2: "4",

@@ -16,3 +16,3 @@ "use strict";

var children = _ref.children;
return _react["default"].createElement("span", {
return /*#__PURE__*/_react["default"].createElement("span", {
className: "react-date-picker__inputGroup__divider"

@@ -19,0 +19,0 @@ }, children);

@@ -14,10 +14,14 @@ "use strict";

function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
var allViews = ['century', 'decade', 'year', 'month'];

@@ -24,0 +28,0 @@ var allValueTypes = [].concat(_toConsumableArray(allViews.slice(1)), ['day']);

@@ -7,14 +7,17 @@ "use strict";

exports.between = between;
exports.callIfDefined = callIfDefined;
exports.safeMin = safeMin;
exports.safeMax = safeMax;
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); }
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } }
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); }
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
/**

@@ -38,19 +41,3 @@ * Returns a value no smaller than min and no larger than max.

}
/**
* Calls a function, if it's defined, with specified arguments
* @param {Function} fn
* @param {Object} args
*/
function callIfDefined(fn) {
if (fn && typeof fn === 'function') {
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
args[_key - 1] = arguments[_key];
}
fn.apply(void 0, args);
}
}
function isValidNumber(num) {

@@ -61,4 +48,4 @@ return num !== null && num !== false && !Number.isNaN(Number(num));

function safeMin() {
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
args[_key2] = arguments[_key2];
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}

@@ -70,4 +57,4 @@

function safeMax() {
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
args[_key3] = arguments[_key3];
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
args[_key2] = arguments[_key2];
}

@@ -74,0 +61,0 @@

{
"name": "react-date-picker",
"version": "8.0.1",
"version": "8.0.2",
"description": "A date picker for your React app.",

@@ -8,5 +8,9 @@ "main": "dist/entry.js",

"types": "./index.d.ts",
"workspaces": [
".",
"test"
],
"scripts": {
"build": "yarn build-js && yarn copy-styles && yarn build-styles && yarn copy-types",
"build-js": "babel src -d dist --ignore **/*.spec.js,**/*.spec.jsx",
"build-js": "babel src -d dist --ignore \"**/*.spec.js,**/*.spec.jsx\"",
"build-styles": "lessc ./dist/DatePicker.less ./dist/DatePicker.css",

@@ -77,3 +81,3 @@ "clean": "rimraf dist",

"@types/react-calendar": "^3.0.0",
"@wojtekmaj/date-utils": "^1.0.2",
"@wojtekmaj/date-utils": "^1.0.3",
"get-user-locale": "^1.2.0",

@@ -88,18 +92,17 @@ "make-event-props": "^1.1.0",

"devDependencies": {
"@babel/cli": "^7.5.5",
"@babel/core": "^7.5.5",
"@babel/plugin-proposal-class-properties": "^7.5.5",
"@babel/preset-env": "^7.5.5",
"@babel/preset-react": "^7.0.0",
"@babel/cli": "^7.8.0",
"@babel/core": "^7.9.0",
"@babel/plugin-proposal-class-properties": "^7.8.0",
"@babel/preset-env": "^7.9.0",
"@babel/preset-react": "^7.9.0",
"babel-eslint": "^10.0.0",
"babel-jest": "^25.1.0",
"enzyme": "^3.10.0",
"enzyme-adapter-react-16": "^1.14.0",
"eslint": "^6.1.0",
"eslint-config-airbnb": "^18.0.0",
"eslint-plugin-import": "^2.18.2",
"eslint-plugin-jsx-a11y": "^6.2.3",
"eslint-plugin-react": "^7.14.3",
"eslint-plugin-react-hooks": "^1.7.0",
"jest": "^25.1.0",
"eslint": "~7.2.0",
"eslint-config-airbnb": "^18.2.0",
"eslint-plugin-import": "^2.21.2",
"eslint-plugin-jsx-a11y": "^6.3.0",
"eslint-plugin-react": "^7.20.0",
"eslint-plugin-react-hooks": "^4.0.0",
"jest": "^26.0.0",
"less": "^3.8.1",

@@ -125,3 +128,4 @@ "react": "^16.7.0",

"url": "https://github.com/wojtekmaj/react-date-picker.git"
}
},
"funding": "https://github.com/wojtekmaj/react-date-picker?sponsor=1"
}

@@ -1,2 +0,2 @@

[![npm](https://img.shields.io/npm/v/react-date-picker.svg)](https://www.npmjs.com/package/react-date-picker) ![downloads](https://img.shields.io/npm/dt/react-date-picker.svg) ![build](https://img.shields.io/travis/wojtekmaj/react-date-picker/master.svg) ![dependencies](https://img.shields.io/david/wojtekmaj/react-date-picker.svg) ![dev dependencies](https://img.shields.io/david/dev/wojtekmaj/react-date-picker.svg) [![tested with jest](https://img.shields.io/badge/tested_with-jest-99424f.svg)](https://github.com/facebook/jest)
[![npm](https://img.shields.io/npm/v/react-date-picker.svg)](https://www.npmjs.com/package/react-date-picker) ![downloads](https://img.shields.io/npm/dt/react-date-picker.svg) [![build](https://travis-ci.com/wojtekmaj/react-date-picker.svg?branch=master)](https://travis-ci.com/wojtekmaj/react-date-picker) ![dependencies](https://img.shields.io/david/wojtekmaj/react-date-picker.svg) ![dev dependencies](https://img.shields.io/david/dev/wojtekmaj/react-date-picker.svg) [![tested with jest](https://img.shields.io/badge/tested_with-jest-99424f.svg)](https://github.com/facebook/jest)

@@ -18,3 +18,3 @@ # React-Date-Picker

Minimal demo page is included in sample directory.
A minimal demo page can be found in `sample` directory.

@@ -31,3 +31,3 @@ [Online demo](http://projects.wojtekmaj.pl/react-date-picker/) is also available!

Your project needs to use React 16 or later. If you use older version of React, please refer to the table below to find suitable React-Date-Picker version.
Your project needs to use React 16 or later. If you use an older version of React, please refer to the table below to find a suitable React-Date-Picker version.

@@ -54,22 +54,16 @@ |React version|Newest available React-Date-Picker|

```js
import React, { Component } from 'react';
import React, { useState } from 'react';
import DatePicker from 'react-date-picker';
class MyApp extends Component {
state = {
date: new Date(),
}
function MyApp() {
const [value, onChange] = useState(new Date());
onChange = date => this.setState({ date })
render() {
return (
<div>
<DatePicker
onChange={this.onChange}
value={this.state.date}
/>
</div>
);
}
return (
<div>
<DatePicker
onChange={onChange}
value={value}
/>
</div>
);
}

@@ -76,0 +70,0 @@ ```

@@ -20,3 +20,3 @@ import React, { PureComponent } from 'react';

const defaultMinDate = new Date(-8.64e15);
const defaultMinDate = new Date('0001-01-01');
const defaultMaxDate = new Date(8.64e15);

@@ -90,4 +90,4 @@ const allViews = ['century', 'decade', 'year', 'month'];

function isValidInput(element) {
return element.tagName === 'INPUT' && element.type === 'number';
function isInternalInput(element) {
return element.getAttribute('data-input') === 'true';
}

@@ -99,3 +99,3 @@

nextElement = nextElement[property];
} while (nextElement && !isValidInput(nextElement));
} while (nextElement && !isInternalInput(nextElement));
return nextElement;

@@ -223,9 +223,2 @@ }

// eslint-disable-next-line class-methods-use-this
get formatNumber() {
const options = { useGrouping: false };
return getFormatter(options);
}
/**

@@ -269,9 +262,19 @@ * Gets current value in a desired format.

const date = new Date(year, monthIndex, day);
const formattedDate = this.formatDate(locale, date);
return (
this.formatDate(locale, date)
.replace(this.formatNumber(locale, year), 'y')
.replace(this.formatNumber(locale, monthIndex + 1), 'M')
.replace(this.formatNumber(locale, day), 'd')
);
const datePieces = ['year', 'month', 'day'];
const datePieceReplacements = ['y', 'M', 'd'];
function formatDatePiece(name, dateToFormat) {
return getFormatter({ useGrouping: false, [name]: 'numeric' })(locale, dateToFormat).match(/\d{1,}/);
}
let placeholder = formattedDate;
datePieces.forEach((datePiece, index) => {
const formattedDatePiece = formatDatePiece(datePiece, date);
const datePieceReplacement = datePieceReplacements[index];
placeholder = placeholder.replace(formattedDatePiece, datePieceReplacement);
});
return placeholder;
}

@@ -278,0 +281,0 @@

@@ -62,3 +62,3 @@ import React from 'react';

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -77,3 +77,3 @@ expect(nativeInput).toHaveLength(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.find('input[name="day"]');

@@ -97,3 +97,3 @@ const monthInput = customInputs.find('input[name="month"]');

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.find('input[name="day"]');

@@ -103,3 +103,3 @@ const monthInput = customInputs.find('input[name="month"]');

expect(customInputs).toHaveLength(2);
expect(customInputs).toHaveLength(1);
expect(dayInput).toHaveLength(0);

@@ -121,3 +121,3 @@ expect(monthInput).toHaveLength(0);

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -141,3 +141,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -161,3 +161,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -182,3 +182,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -203,3 +203,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -224,3 +224,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -242,3 +242,3 @@ expect(nativeInput.prop('value')).toBe('2017-09-30');

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -260,3 +260,3 @@ expect(nativeInput.prop('value')).toBeFalsy();

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -282,3 +282,3 @@ expect(nativeInput.prop('value')).toBeFalsy();

const nativeInput = component.find('input[type="date"]');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -296,3 +296,3 @@ expect(nativeInput.prop('value')).toBeFalsy();

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -312,3 +312,3 @@ expect(customInputs.at(0).prop('name')).toBe('month');

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -330,3 +330,3 @@ expect(customInputs.at(0).prop('name')).toBe('year');

const componentInput = component.find('YearInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -346,3 +346,3 @@ expect(componentInput).toHaveLength(1);

const componentInput = component.find('YearInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -362,3 +362,3 @@ expect(componentInput).toHaveLength(1);

const componentInput = component.find('MonthInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -378,3 +378,3 @@ expect(componentInput).toHaveLength(1);

const componentInput = component.find('MonthInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -427,3 +427,3 @@ expect(componentInput).toHaveLength(1);

const componentInput = component.find('DayInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -443,3 +443,3 @@ expect(componentInput).toHaveLength(1);

const componentInput = component.find('DayInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -476,3 +476,3 @@ expect(componentInput).toHaveLength(1);

const dayInput = component.find('DayInput');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -510,3 +510,3 @@ expect(monthInput).toHaveLength(1);

const separators = component.find('.react-date-picker__inputGroup__divider');
const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -522,3 +522,3 @@ expect(separators).toHaveLength(customInputs.length - 1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -542,3 +542,3 @@ const monthInput = customInputs.at(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -564,3 +564,3 @@ const monthInput = customInputs.at(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const yearInput = customInputs.at(2);

@@ -583,3 +583,3 @@

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -603,3 +603,3 @@ const monthInput = customInputs.at(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -622,3 +622,3 @@

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -641,3 +641,3 @@ const monthInput = customInputs.at(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -660,3 +660,3 @@ const monthInput = customInputs.at(1);

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -684,3 +684,3 @@

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(1);

@@ -709,3 +709,3 @@

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(1);

@@ -736,3 +736,3 @@

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');

@@ -739,0 +739,0 @@ customInputs.forEach((customInput) => {

@@ -46,10 +46,11 @@ import React from 'react';

const numberRegExp = /[0-9]/;
function makeOnKeyPress(maxLength) {
return function onKeyPress(event) {
const { key, target: input } = event;
const { value } = input;
const isNumberKey = !isNaN(parseInt(key, 10));
const selection = getSelectionString();
const { value } = event.target;
if (numberRegExp.test(event.key) && (selection || value.length < maxLength)) {
if (isNumberKey && (selection || value.length < maxLength)) {
return;

@@ -96,2 +97,3 @@ }

)}
data-input="true"
disabled={disabled}

@@ -132,2 +134,3 @@ max={max}

Input.propTypes = {
ariaLabel: PropTypes.string,
className: PropTypes.string.isRequired,

@@ -134,0 +137,0 @@ disabled: PropTypes.bool,

@@ -40,2 +40,3 @@ import React from 'react';

)}
data-input="true"
name={name}

@@ -42,0 +43,0 @@ ref={(ref) => {

@@ -54,3 +54,2 @@ import React from 'react';

/* eslint-disable indent */
it.each`

@@ -62,4 +61,6 @@ valueType | parsedValue

${'decade'} | ${'2019'}
`('displays given value properly if valueType is $valueType',
({ valueType, parsedValue }) => {
`('displays given value properly if valueType is $valueType', ({
valueType,
parsedValue,
}) => {
const value = new Date(2019, 5, 1);

@@ -143,4 +144,6 @@

${'decade'} | ${'2019'}
`('has proper min for minDate which is a full year if valueType is $valueType',
({ valueType, parsedMin }) => {
`('has proper min for minDate which is a full year if valueType is $valueType', ({
valueType,
parsedMin
}) => {
const component = shallow(

@@ -165,4 +168,6 @@ <NativeInput

${'decade'} | ${'2019'}
`('has proper min for minDate which is not a full year if valueType is $valueType',
({ valueType, parsedMin }) => {
`('has proper min for minDate which is not a full year if valueType is $valueType', ({
valueType,
parsedMin,
}) => {
const component = shallow(

@@ -197,4 +202,6 @@ <NativeInput

${'decade'} | ${'2020'}
`('has proper max for maxDate which is a full year if valueType is $valueType',
({ valueType, parsedMax }) => {
`('has proper max for maxDate which is a full year if valueType is $valueType', ({
valueType,
parsedMax,
}) => {
const component = shallow(

@@ -219,4 +226,6 @@ <NativeInput

${'decade'} | ${'2020'}
`('has proper max for maxDate which is not a full year if valueType is $valueType',
({ valueType, parsedMax }) => {
`('has proper max for maxDate which is not a full year if valueType is $valueType', ({
valueType,
parsedMax,
}) => {
const component = shallow(

@@ -223,0 +232,0 @@ <NativeInput

@@ -11,3 +11,2 @@ import React, { PureComponent } from 'react';

import { isMaxDate, isMinDate } from './shared/propTypes';
import { callIfDefined } from './shared/utils';

@@ -42,3 +41,4 @@ const baseClassName = 'react-date-picker';

this.handleOutsideActionListeners();
callIfDefined(isOpen ? onCalendarOpen : onCalendarClose);
const callback = isOpen ? onCalendarOpen : onCalendarClose;
if (callback) callback();
}

@@ -45,0 +45,0 @@ }

@@ -325,3 +325,3 @@ import React from 'react';

const customInputs = component.find('input[type="number"]');
const customInputs = component.find('input[data-input]');
const dayInput = customInputs.at(0);

@@ -328,0 +328,0 @@ const monthInput = customInputs.at(1);

@@ -18,13 +18,2 @@ /**

/**
* Calls a function, if it's defined, with specified arguments
* @param {Function} fn
* @param {Object} args
*/
export function callIfDefined(fn, ...args) {
if (fn && typeof fn === 'function') {
fn(...args);
}
}
function isValidNumber(num) {

@@ -31,0 +20,0 @@ return num !== null && num !== false && !Number.isNaN(Number(num));

import {
between,
callIfDefined,
safeMin,

@@ -44,14 +43,2 @@ safeMax,

describe('callIfDefined', () => {
it('calls given function if defined', () => {
const fn = jest.fn();
const arg1 = 'hi';
const arg2 = 'hello';
callIfDefined(fn, arg1, arg2);
expect(fn).toHaveBeenCalledWith(arg1, arg2);
});
});
describe('safeMin', () => {

@@ -58,0 +45,0 @@ it('returns Infinity given no values', () => {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc