Skip to content
This repository was archived by the owner on May 19, 2025. It is now read-only.

Commit 15a7f22

Browse files
committed
chore: include dist/ for GitHub-based installs
1 parent 9ccbc57 commit 15a7f22

File tree

20 files changed

+3240
-0
lines changed

20 files changed

+3240
-0
lines changed

dist/accessibility/index.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
"use strict";
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
exports.ariaLabelsShape = void 0;
7+
var _propTypes = _interopRequireDefault(require("prop-types"));
8+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9+
const ariaLabelsShape = exports.ariaLabelsShape = _propTypes.default.shape({
10+
dateInput: _propTypes.default.objectOf(_propTypes.default.shape({
11+
startDate: _propTypes.default.string,
12+
endDate: _propTypes.default.string
13+
})),
14+
monthPicker: _propTypes.default.string,
15+
yearPicker: _propTypes.default.string,
16+
prevButton: _propTypes.default.string,
17+
nextButton: _propTypes.default.string
18+
});

dist/components/Calendar/index.js

Lines changed: 621 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
"use strict";
2+
3+
var _Calendar = _interopRequireDefault(require("../Calendar"));
4+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
5+
describe('Calendar', () => {
6+
test('Should resolve', () => {
7+
expect(_Calendar.default).toEqual(expect.anything());
8+
});
9+
});

dist/components/DateInput/index.js

Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
"use strict";
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
exports.default = void 0;
7+
var _react = _interopRequireWildcard(require("react"));
8+
var _propTypes = _interopRequireDefault(require("prop-types"));
9+
var _classnames = _interopRequireDefault(require("classnames"));
10+
var _dateFns = require("date-fns");
11+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
13+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
16+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
17+
class DateInput extends _react.PureComponent {
18+
constructor(props, context) {
19+
super(props, context);
20+
_defineProperty(this, "onKeyDown", e => {
21+
const {
22+
value
23+
} = this.state;
24+
if (e.key === 'Enter') {
25+
this.update(value);
26+
}
27+
});
28+
_defineProperty(this, "onChange", e => {
29+
this.setState({
30+
value: e.target.value,
31+
changed: true,
32+
invalid: false
33+
});
34+
});
35+
_defineProperty(this, "onBlur", () => {
36+
const {
37+
value
38+
} = this.state;
39+
this.update(value);
40+
});
41+
this.state = {
42+
invalid: false,
43+
changed: false,
44+
value: this.formatDate(props)
45+
};
46+
}
47+
componentDidUpdate(prevProps) {
48+
const {
49+
value
50+
} = prevProps;
51+
if (!(0, _dateFns.isEqual)(value, this.props.value)) {
52+
this.setState({
53+
value: this.formatDate(this.props)
54+
});
55+
}
56+
}
57+
formatDate(_ref) {
58+
let {
59+
value,
60+
dateDisplayFormat,
61+
dateOptions
62+
} = _ref;
63+
if (value && (0, _dateFns.isValid)(value)) {
64+
return (0, _dateFns.format)(value, dateDisplayFormat, dateOptions);
65+
}
66+
return '';
67+
}
68+
update(value) {
69+
const {
70+
invalid,
71+
changed
72+
} = this.state;
73+
if (invalid || !changed || !value) {
74+
return;
75+
}
76+
const {
77+
onChange,
78+
dateDisplayFormat,
79+
dateOptions
80+
} = this.props;
81+
const parsed = (0, _dateFns.parse)(value, dateDisplayFormat, new Date(), dateOptions);
82+
if ((0, _dateFns.isValid)(parsed)) {
83+
this.setState({
84+
changed: false
85+
}, () => onChange(parsed));
86+
} else {
87+
this.setState({
88+
invalid: true
89+
});
90+
}
91+
}
92+
render() {
93+
const {
94+
className,
95+
readOnly,
96+
placeholder,
97+
ariaLabel,
98+
disabled,
99+
onFocus
100+
} = this.props;
101+
const {
102+
value,
103+
invalid
104+
} = this.state;
105+
return /*#__PURE__*/_react.default.createElement("span", {
106+
className: (0, _classnames.default)('rdrDateInput', className)
107+
}, /*#__PURE__*/_react.default.createElement("input", {
108+
readOnly: readOnly,
109+
disabled: disabled,
110+
value: value,
111+
placeholder: placeholder,
112+
"aria-label": ariaLabel,
113+
onKeyDown: this.onKeyDown,
114+
onChange: this.onChange,
115+
onBlur: this.onBlur,
116+
onFocus: onFocus
117+
}), invalid && /*#__PURE__*/_react.default.createElement("span", {
118+
className: "rdrWarning"
119+
}, "\u26A0"));
120+
}
121+
}
122+
DateInput.propTypes = {
123+
value: _propTypes.default.object,
124+
placeholder: _propTypes.default.string,
125+
disabled: _propTypes.default.bool,
126+
readOnly: _propTypes.default.bool,
127+
dateOptions: _propTypes.default.object,
128+
dateDisplayFormat: _propTypes.default.string,
129+
ariaLabel: _propTypes.default.string,
130+
className: _propTypes.default.string,
131+
onFocus: _propTypes.default.func.isRequired,
132+
onChange: _propTypes.default.func.isRequired
133+
};
134+
DateInput.defaultProps = {
135+
readOnly: true,
136+
disabled: false,
137+
dateDisplayFormat: 'MMM D, YYYY'
138+
};
139+
var _default = exports.default = DateInput;

dist/components/DateRange/index.js

Lines changed: 194 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,194 @@
1+
"use strict";
2+
3+
Object.defineProperty(exports, "__esModule", {
4+
value: true
5+
});
6+
exports.default = void 0;
7+
var _react = _interopRequireWildcard(require("react"));
8+
var _propTypes = _interopRequireDefault(require("prop-types"));
9+
var _Calendar = _interopRequireDefault(require("../Calendar"));
10+
var _DayCell = require("../DayCell");
11+
var _utils = require("../../utils");
12+
var _dateFns = require("date-fns");
13+
var _classnames = _interopRequireDefault(require("classnames"));
14+
var _styles = _interopRequireDefault(require("../../styles"));
15+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
17+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
19+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
20+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
21+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
22+
class DateRange extends _react.Component {
23+
constructor(props, context) {
24+
var _this;
25+
super(props, context);
26+
_this = this;
27+
_defineProperty(this, "calcNewSelection", function (value) {
28+
let isSingleValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
29+
const focusedRange = _this.props.focusedRange || _this.state.focusedRange;
30+
const {
31+
ranges,
32+
onChange,
33+
maxDate,
34+
moveRangeOnFirstSelection,
35+
retainEndDateOnFirstSelection,
36+
disabledDates
37+
} = _this.props;
38+
const focusedRangeIndex = focusedRange[0];
39+
const selectedRange = ranges[focusedRangeIndex];
40+
if (!selectedRange || !onChange) return {};
41+
let {
42+
startDate,
43+
endDate
44+
} = selectedRange;
45+
const now = new Date();
46+
let nextFocusRange;
47+
if (!isSingleValue) {
48+
startDate = value.startDate;
49+
endDate = value.endDate;
50+
} else if (focusedRange[1] === 0) {
51+
// startDate selection
52+
const dayOffset = (0, _dateFns.differenceInCalendarDays)(endDate || now, startDate);
53+
const calculateEndDate = () => {
54+
if (moveRangeOnFirstSelection) {
55+
return (0, _dateFns.addDays)(value, dayOffset);
56+
}
57+
if (retainEndDateOnFirstSelection) {
58+
if (!endDate || (0, _dateFns.isBefore)(value, endDate)) {
59+
return endDate;
60+
}
61+
return value;
62+
}
63+
return value || now;
64+
};
65+
startDate = value;
66+
endDate = calculateEndDate();
67+
if (maxDate) endDate = (0, _dateFns.min)([endDate, maxDate]);
68+
nextFocusRange = [focusedRange[0], 1];
69+
} else {
70+
endDate = value;
71+
}
72+
73+
// reverse dates if startDate before endDate
74+
let isStartDateSelected = focusedRange[1] === 0;
75+
if ((0, _dateFns.isBefore)(endDate, startDate)) {
76+
isStartDateSelected = !isStartDateSelected;
77+
[startDate, endDate] = [endDate, startDate];
78+
}
79+
const inValidDatesWithinRange = disabledDates.filter(disabledDate => (0, _dateFns.isWithinInterval)(disabledDate, {
80+
start: startDate,
81+
end: endDate
82+
}));
83+
if (inValidDatesWithinRange.length > 0) {
84+
if (isStartDateSelected) {
85+
startDate = (0, _dateFns.addDays)((0, _dateFns.max)(inValidDatesWithinRange), 1);
86+
} else {
87+
endDate = (0, _dateFns.addDays)((0, _dateFns.min)(inValidDatesWithinRange), -1);
88+
}
89+
}
90+
if (!nextFocusRange) {
91+
const nextFocusRangeIndex = (0, _utils.findNextRangeIndex)(_this.props.ranges, focusedRange[0]);
92+
nextFocusRange = [nextFocusRangeIndex, 0];
93+
}
94+
return {
95+
wasValid: !(inValidDatesWithinRange.length > 0),
96+
range: {
97+
startDate,
98+
endDate
99+
},
100+
nextFocusRange: nextFocusRange
101+
};
102+
});
103+
_defineProperty(this, "setSelection", (value, isSingleValue) => {
104+
const {
105+
onChange,
106+
ranges,
107+
onRangeFocusChange
108+
} = this.props;
109+
const focusedRange = this.props.focusedRange || this.state.focusedRange;
110+
const focusedRangeIndex = focusedRange[0];
111+
const selectedRange = ranges[focusedRangeIndex];
112+
if (!selectedRange) return;
113+
const newSelection = this.calcNewSelection(value, isSingleValue);
114+
onChange({
115+
[selectedRange.key || `range${focusedRangeIndex + 1}`]: {
116+
...selectedRange,
117+
...newSelection.range
118+
}
119+
});
120+
this.setState({
121+
focusedRange: newSelection.nextFocusRange,
122+
preview: null
123+
});
124+
onRangeFocusChange && onRangeFocusChange(newSelection.nextFocusRange);
125+
});
126+
_defineProperty(this, "handleRangeFocusChange", focusedRange => {
127+
this.setState({
128+
focusedRange
129+
});
130+
this.props.onRangeFocusChange && this.props.onRangeFocusChange(focusedRange);
131+
});
132+
_defineProperty(this, "updatePreview", val => {
133+
if (!val) {
134+
this.setState({
135+
preview: null
136+
});
137+
return;
138+
}
139+
const {
140+
rangeColors,
141+
ranges
142+
} = this.props;
143+
const focusedRange = this.props.focusedRange || this.state.focusedRange;
144+
const color = ranges[focusedRange[0]]?.color || rangeColors[focusedRange[0]] || color;
145+
this.setState({
146+
preview: {
147+
...val.range,
148+
color
149+
}
150+
});
151+
});
152+
this.state = {
153+
focusedRange: props.initialFocusedRange || [(0, _utils.findNextRangeIndex)(props.ranges), 0],
154+
preview: null
155+
};
156+
this.styles = (0, _utils.generateStyles)([_styles.default, props.classNames]);
157+
}
158+
render() {
159+
return /*#__PURE__*/_react.default.createElement(_Calendar.default, _extends({
160+
focusedRange: this.state.focusedRange,
161+
onRangeFocusChange: this.handleRangeFocusChange,
162+
preview: this.state.preview,
163+
onPreviewChange: value => {
164+
this.updatePreview(value ? this.calcNewSelection(value) : null);
165+
}
166+
}, this.props, {
167+
displayMode: "dateRange",
168+
className: (0, _classnames.default)(this.styles.dateRangeWrapper, this.props.className),
169+
onChange: this.setSelection,
170+
updateRange: val => this.setSelection(val, false),
171+
ref: target => {
172+
this.calendar = target;
173+
}
174+
}));
175+
}
176+
}
177+
DateRange.defaultProps = {
178+
classNames: {},
179+
ranges: [],
180+
moveRangeOnFirstSelection: false,
181+
retainEndDateOnFirstSelection: false,
182+
rangeColors: ['#3d91ff', '#3ecf8e', '#fed14c'],
183+
disabledDates: []
184+
};
185+
DateRange.propTypes = {
186+
..._Calendar.default.propTypes,
187+
onChange: _propTypes.default.func,
188+
onRangeFocusChange: _propTypes.default.func,
189+
className: _propTypes.default.string,
190+
ranges: _propTypes.default.arrayOf(_DayCell.rangeShape),
191+
moveRangeOnFirstSelection: _propTypes.default.bool,
192+
retainEndDateOnFirstSelection: _propTypes.default.bool
193+
};
194+
var _default = exports.default = DateRange;

0 commit comments

Comments
 (0)