);
}
-
- renderWeekdays(classes) {
- const dow = this.state.firstDayOfWeek;
- const weekdays = [];
- const { styles } = this;
- const { onlyClasses, lang } = this.props;
-
- for (let i = dow; i < 7 + dow; i++) {
- let day = moment.weekdaysMin(i);
- const dayLower = day.toLowerCase();
- day = lang && LangDic[lang] && LangDic[lang][dayLower] ? LangDic[lang][dayLower] : day;
- weekdays.push(
-
- );
- }
-
- return weekdays;
+ renderWeekdays(classes, dateOptions) {
+ const now = new Date();
+ return eachDayOfInterval({
+ start: startOfWeek(now, dateOptions),
+ end: endOfWeek(now, dateOptions),
+ }).map((day, i) => (
+
+ ));
}
- renderDays(classes) {
- // TODO: Split this logic into smaller chunks
- const { styles } = this;
-
- const {
- range,
- minDate,
- maxDate,
- format,
- onlyClasses,
- disableDaysBeforeToday,
- specialDays,
- } = this.props;
-
- const shownDate = this.getShownDate();
- const { date, firstDayOfWeek } = this.state;
- const dateUnix = date.unix();
-
- const monthNumber = shownDate.month();
- const dayCount = shownDate.daysInMonth();
- const startOfMonth = shownDate
- .clone()
- .startOf('month')
- .isoWeekday();
-
- const lastMonth = shownDate.clone().month(monthNumber - 1);
- const lastMonthDayCount = lastMonth.daysInMonth();
-
- const nextMonth = shownDate.clone().month(monthNumber + 1);
-
- const days = [];
-
- // Previous month's days
- const diff = Math.abs(firstDayOfWeek - (startOfMonth + 7)) % 7;
- for (let i = diff - 1; i >= 0; i--) {
- const dayMoment = lastMonth.clone().date(lastMonthDayCount - i);
- days.push({ dayMoment, isPassive: true });
- }
-
- // Current month's days
- for (let i = 1; i <= dayCount; i++) {
- const dayMoment = shownDate.clone().date(i);
- // set days before today to isPassive
- const _today = moment();
- if (disableDaysBeforeToday && Number(dayMoment.diff(_today, 'days')) <= -1) {
- days.push({ dayMoment, isPassive: true });
- } else {
- days.push({ dayMoment });
+ renderDays(classes, dateOptions, focusedDate) {
+ const now = new Date();
+ const { specialDays } = this.props;
+ const minDate = this.props.minDate && startOfDay(this.props.minDate);
+ const maxDate = this.props.maxDate && endOfDay(this.props.maxDate);
+ const startDateOfMonth = startOfMonth(focusedDate, dateOptions);
+ const endDateOfMonth = endOfMonth(focusedDate, dateOptions);
+ const startDateOfCalendar = startOfWeek(startDateOfMonth, dateOptions);
+ const endDateOfCalendar = endOfWeek(endDateOfMonth, dateOptions);
+
+ return eachDayOfInterval({ start: startDateOfCalendar, end: endDateOfCalendar }).map(
+ (day, index) => {
+ const isStartOfMonth = isSameDay(day, startDateOfMonth);
+ const isEndOfMonth = isSameDay(day, endDateOfMonth);
+ const isSpecialDay = specialDays.some(specialDay => isSameDay(day, specialDay));
+ const isOutsideMinMax =
+ (minDate && isBefore(day, minDate)) || (maxDate && isAfter(day, maxDate));
+
+ return (
+
+ );
}
- }
-
- // Next month's days
- const remainingCells = 42 - days.length; // 42cells = 7days * 6rows
- for (let i = 1; i <= remainingCells; i++) {
- const dayMoment = nextMonth.clone().date(i);
- days.push({ dayMoment, isPassive: true });
- }
-
- const today = moment().startOf('day');
- return days.map((data, index) => {
- const { dayMoment, isPassive } = data;
- const isSelected = !range && dayMoment.unix() === dateUnix;
- const isInRange = range && checkRange(dayMoment, range);
- const isStartEdge = range && checkStartEdge(dayMoment, range);
- const isEndEdge = range && checkEndEdge(dayMoment, range);
- const isEdge = isStartEdge || isEndEdge;
- const isToday = today.isSame(dayMoment);
- const isSunday = dayMoment.day() === 0;
- const isSpecialDay =
- specialDays &&
- specialDays.some(specialDay => {
- return dayMoment.endOf('day').isSame(specialDay.date.endOf('day'));
- });
- const isOutsideMinMax = isOusideMinMax(dayMoment, minDate, maxDate, format);
-
- return (
-
- );
- });
+ );
}
+ formatDateDisplay(date, defaultText) {
+ if (!date) return defaultText;
+ return format(date, this.props.dateDisplayFormat);
+ }
render() {
- const { styles } = this;
- const { onlyClasses, classNames } = this.props;
-
- const classes = { ...defaultClasses, ...classNames };
-
+ const dateOptions = { locale: this.props.locale };
+ const { focusedRange, color } = this.props;
return (
-
-
{this.renderMonthAndYear(classes)}
-
{this.renderWeekdays(classes)}
-
{this.renderDays(classes)}
+
+
+ {this.renderMonthAndYear(styles, this.state.focusedDate)}
+
{
+ this.props.onPreviewChange && this.props.onPreviewChange();
+ }}>
+ {new Array(this.props.months).fill(null).map((_, i) => (
+
+
{this.renderWeekdays(styles, dateOptions)}
+
+ {this.renderDays(styles, dateOptions, addMonths(this.state.focusedDate, i))}
+
+
+ ))}
+
);
}
}
Calendar.defaultProps = {
- format: 'DD/MM/YYYY',
- theme: {},
showMonthArrow: true,
- disableDaysBeforeToday: false,
- onlyClasses: false,
classNames: {},
specialDays: [],
+ locale: defaultLocale,
+ ranges: [],
+ focusedRange: [0, 0],
+ dateDisplayFormat: 'MMM D,YYYY',
+ showSelectionPreview: true,
+ displayMode: 'date',
+ months: 1,
+ color: '#3d91ff',
};
Calendar.propTypes = {
showMonthArrow: PropTypes.bool,
- disableDaysBeforeToday: PropTypes.bool,
- lang: PropTypes.string,
- sets: PropTypes.string,
- range: PropTypes.shape({
- startDate: PropTypes.object,
- endDate: PropTypes.object,
- }),
- minDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- maxDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- date: PropTypes.oneOfType([PropTypes.object, PropTypes.string, PropTypes.func]),
- format: PropTypes.string.isRequired,
- firstDayOfWeek: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
+ minDate: PropTypes.object,
+ maxDate: PropTypes.object,
+ date: PropTypes.object,
onChange: PropTypes.func,
- onInit: PropTypes.func,
- link: PropTypes.oneOfType([
- PropTypes.shape({
- startDate: PropTypes.object,
- endDate: PropTypes.object,
- }),
- PropTypes.bool,
- ]),
- linkCB: PropTypes.func,
- theme: PropTypes.object,
- onlyClasses: PropTypes.bool,
+ onPreviewChange: PropTypes.func,
+ onRangeFocusChange: PropTypes.func,
specialDays: PropTypes.array,
classNames: PropTypes.object,
- locale: PropTypes.string,
+ locale: PropTypes.object,
shownDate: PropTypes.object,
- oldRange: PropTypes.shape({
+ ranges: PropTypes.arrayOf(rangeShape),
+ preview: PropTypes.shape({
startDate: PropTypes.object,
endDate: PropTypes.object,
}),
- style: PropTypes.object,
- offset: PropTypes.number,
+ previewColor: PropTypes.string,
+ dateDisplayFormat: PropTypes.string,
+ focusedRange: PropTypes.arrayOf(PropTypes.number),
+ months: PropTypes.number,
+ className: PropTypes.string,
+ showSelectionPreview: PropTypes.bool,
+ displayMode: PropTypes.oneOf(['dateRange', 'date']),
+ color: PropTypes.string,
};
export default Calendar;
diff --git a/src/Calendar.test.js b/src/Calendar.test.js
new file mode 100644
index 000000000..f567be45a
--- /dev/null
+++ b/src/Calendar.test.js
@@ -0,0 +1,7 @@
+import Calendar from './Calendar';
+
+describe('Calendar', () => {
+ test('Should resolve', () => {
+ expect(Calendar).toEqual(expect.anything());
+ });
+});
diff --git a/src/DateRange.js b/src/DateRange.js
index 128746390..c6efa1f6a 100644
--- a/src/DateRange.js
+++ b/src/DateRange.js
@@ -1,234 +1,111 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';
-import parseInput from './utils/parseInput.js';
import Calendar from './Calendar.js';
-import PredefinedRanges from './PredefinedRanges.js';
-import getTheme, { defaultClasses } from './styles.js';
+import { findNextRangeIndex } from './utils.js';
+import styles from './styles';
+import { isBefore, differenceInCalendarDays, addDays, min } from 'date-fns';
+import classnames from 'classnames';
class DateRange extends Component {
constructor(props, context) {
super(props, context);
-
- const { format, linkedCalendars, theme } = props;
-
- const startDate = parseInput(props.startDate, format, 'startOf');
- const endDate = parseInput(props.endDate, format, 'endOf');
-
+ this.setSelection = this.setSelection.bind(this);
+ this.handleRangeFocusChange = this.handleRangeFocusChange.bind(this);
+ this.updatePreview = this.updatePreview.bind(this);
+ this.calcNewSelection = this.calcNewSelection.bind(this);
this.state = {
- range: { startDate, endDate },
- link: linkedCalendars && endDate,
- };
-
- this.step = 0;
- this.styles = getTheme(theme);
- }
-
- componentDidMount() {
- const { onInit } = this.props;
- onInit && onInit(this.state.range);
- }
-
- orderRange(range) {
- const { startDate, endDate } = range;
- const swap = startDate.isAfter(endDate);
-
- if (!swap) return range;
-
- return {
- startDate: endDate,
- endDate: startDate,
+ focusedRange: [findNextRangeIndex(props.ranges), 0],
+ preview: null,
};
}
-
- setRange(range, source, triggerChange) {
- const { onChange } = this.props;
- range = this.orderRange(range);
-
- this.setState({ range }, () => triggerChange && onChange && onChange(range, source));
- }
-
- handleSelect(date, source) {
- if (date.startDate && date.endDate) {
- this.step = 0;
- return this.setRange(date, source, true);
+ calcNewSelection(value) {
+ const { focusedRange } = this.state;
+ const { ranges, onChange, maxDate, moveRangeOnFirstSelection } = this.props;
+ const selectedRangeIndex = focusedRange[0];
+ const selectedRange = ranges[selectedRangeIndex];
+ if (!selectedRange || !onChange) return;
+
+ let { startDate, endDate } = selectedRange;
+ if (!endDate) endDate = new Date(startDate);
+ let nextFocusRange;
+ if (focusedRange[1] === 0) {
+ // startDate selection
+ const dayOffset = differenceInCalendarDays(endDate, startDate);
+ startDate = value;
+ endDate = moveRangeOnFirstSelection ? addDays(value, dayOffset) : value;
+ if (maxDate) endDate = min([endDate, maxDate]);
+ nextFocusRange = [focusedRange[0], 1];
+ } else {
+ endDate = value;
+ // reverse dates if startDate before endDate
+ if (isBefore(value, startDate)) {
+ [startDate, endDate] = [endDate, startDate];
+ }
+ const nextFocusRangeIndex = findNextRangeIndex(this.props.ranges, focusedRange[0]);
+ nextFocusRange = [nextFocusRangeIndex, 0];
}
-
- const { startDate, endDate } = this.state.range;
-
- const range = {
- startDate,
- endDate,
+ return {
+ range: { startDate, endDate },
+ nextFocusRange: nextFocusRange,
};
-
- switch (this.step) {
- case 0:
- range.startDate = date;
- range.endDate = date;
- this.step = 1;
- break;
-
- case 1:
- range.endDate = date;
- this.step = 0;
- break;
- }
-
- const triggerChange =
- !this.props.twoStepChange || (this.step === 0 && this.props.twoStepChange);
-
- this.setRange(range, source, triggerChange);
}
-
- handleLinkChange(direction) {
- const { link } = this.state;
-
+ setSelection(value) {
+ const { onChange, ranges } = this.props;
+ const { focusedRange } = this.state;
+ const selectedRangeIndex = focusedRange[0];
+ const selectedRange = ranges[selectedRangeIndex];
+
+ const newSelection = this.calcNewSelection(value);
+ onChange({
+ [selectedRange.key || `range${selectedRangeIndex + 1}`]: newSelection.range,
+ });
this.setState({
- link: link.clone().add(direction, 'months'),
+ focusedRange: newSelection.nextFocusRange,
+ preview: newSelection.range,
});
}
-
- componentWillReceiveProps(newProps) {
- // Whenever date props changes, update state with parsed variant
- if (newProps.startDate || newProps.endDate) {
- const format = newProps.format || this.props.format;
- const startDate = newProps.startDate && parseInput(newProps.startDate, format, 'startOf');
- const endDate = newProps.endDate && parseInput(newProps.endDate, format, 'endOf');
- const oldStartDate =
- this.props.startDate && parseInput(this.props.startDate, format, 'startOf');
- const oldEndDate = this.props.endDate && parseInput(this.props.endDate, format, 'endOf');
-
- if (!startDate.isSame(oldStartDate) || !endDate.isSame(oldEndDate)) {
- this.setRange({
- startDate: startDate || oldStartDate,
- endDate: endDate || oldEndDate,
- });
- }
- }
+ handleRangeFocusChange(focusedRange) {
+ this.setState({ focusedRange });
+ this.props.onRangeFocusChange && this.props.onRangeFocusChange(focusedRange);
+ }
+ updatePreview(val) {
+ this.setState({ preview: val });
}
-
render() {
- const {
- ranges,
- format,
- linkedCalendars,
- style,
- calendars,
- firstDayOfWeek,
- minDate,
- maxDate,
- classNames,
- onlyClasses,
- specialDays,
- lang,
- disableDaysBeforeToday,
- offsetPositive,
- shownDate,
- showMonthArrow,
- rangedCalendars,
- } = this.props;
- const { range, link } = this.state;
- const { styles } = this;
-
- const classes = { ...defaultClasses, ...classNames };
- const yearsDiff = range.endDate.year() - range.startDate.year();
- const monthsDiff = range.endDate.month() - range.startDate.month();
- const diff = yearsDiff * 12 + monthsDiff;
- const calendarsCount = Number(calendars) - 1;
-
return (
-
- {ranges && (
-
- )}
-
- {(() => {
- const _calendars = [];
- const _method = offsetPositive ? 'unshift' : 'push';
- for (let i = calendarsCount; i >= 0; i--) {
- const offset = offsetPositive ? i : -i;
- const realDiff = offsetPositive ? diff : -diff;
- const realOffset =
- rangedCalendars && i == calendarsCount && diff != 0 ? realDiff : offset;
-
- _calendars[_method](
-
- );
- }
- return _calendars;
- })()}
-
+
{
+ this.updatePreview(value ? this.calcNewSelection(value).range : null);
+ }}
+ ref={target => {
+ this.calendar = target;
+ }}
+ />
);
}
}
DateRange.defaultProps = {
- linkedCalendars: true,
- theme: {},
- format: 'DD/MM/YYYY',
- calendars: 2,
- onlyClasses: false,
- offsetPositive: false,
classNames: {},
- specialDays: [],
- rangedCalendars: false,
- twoStepChange: false,
+ ranges: [],
+ moveRangeOnFirstSelection: false,
};
DateRange.propTypes = {
- format: PropTypes.string,
- firstDayOfWeek: PropTypes.number,
- calendars: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
- startDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- endDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- minDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- maxDate: PropTypes.oneOfType([PropTypes.object, PropTypes.func, PropTypes.string]),
- dateLimit: PropTypes.func,
- ranges: PropTypes.object,
- linkedCalendars: PropTypes.bool,
- twoStepChange: PropTypes.bool,
- theme: PropTypes.object,
- onInit: PropTypes.func,
+ ...Calendar.propTypes,
onChange: PropTypes.func,
- onlyClasses: PropTypes.bool,
- specialDays: PropTypes.array,
- offsetPositive: PropTypes.bool,
- classNames: PropTypes.object,
- rangedCalendars: PropTypes.bool,
- style: PropTypes.object,
- offset: PropTypes.number,
- disableDaysBeforeToday: PropTypes.bool,
- shownDate: PropTypes.object,
- showMonthArrow: PropTypes.bool,
- lang: PropTypes.string,
+ onRangeFocusChange: PropTypes.func,
+ className: PropTypes.string,
+ ranges: Calendar.propTypes.ranges,
+ moveRangeOnFirstSelection: PropTypes.bool,
};
export default DateRange;
diff --git a/src/DateRange.test.js b/src/DateRange.test.js
new file mode 100644
index 000000000..9b0687bf8
--- /dev/null
+++ b/src/DateRange.test.js
@@ -0,0 +1,7 @@
+import DateRange from './DateRange';
+
+describe('DateRange', () => {
+ test('Should resolve', () => {
+ expect(DateRange).toEqual(expect.anything());
+ });
+});
diff --git a/src/DateRangePicker.js b/src/DateRangePicker.js
new file mode 100644
index 000000000..19b0ae4f1
--- /dev/null
+++ b/src/DateRangePicker.js
@@ -0,0 +1,58 @@
+import React, { Component } from 'react';
+import PropTypes from 'prop-types';
+import DateRange from './DateRange';
+import DefinedRanges from './DefinedRanges';
+import { findNextRangeIndex } from './utils.js';
+import classnames from 'classnames';
+import styles from './styles';
+
+class DateRangePicker extends Component {
+ constructor(props) {
+ super(props);
+ this.handleChange = this.handleChange.bind(this);
+ this.state = {
+ focusedRange: [findNextRangeIndex(props.ranges), 0],
+ };
+ }
+ handleChange(range) {
+ const { focusedRange } = this.state;
+ const { ranges, onChange } = this.props;
+ const selectedRangeIndex = focusedRange[0];
+ const selectedRange = ranges[selectedRangeIndex];
+ if (!selectedRange || !onChange) return;
+ onChange({
+ [selectedRange.key || `range${selectedRangeIndex + 1}`]: range,
+ });
+ }
+ render() {
+ const focusedRangeIndex = this.state.focusedRange[0];
+ return (
+
+ {
+ this.dateRange.updatePreview(value);
+ }}
+ />
+ {
+ this.dateRange = t;
+ }}
+ {...this.props}
+ />
+
+ );
+ }
+}
+
+DateRangePicker.defaultProps = {};
+
+DateRangePicker.propTypes = {
+ ...DateRange.propTypes,
+ ...DefinedRanges.propTypes,
+ className: PropTypes.string,
+};
+
+export default DateRangePicker;
diff --git a/src/DayCell.js b/src/DayCell.js
index 5bdb1b14d..b98b37c79 100644
--- a/src/DayCell.js
+++ b/src/DayCell.js
@@ -1,6 +1,8 @@
import React, { Component } from 'react';
import PropTypes from 'prop-types';
import classnames from 'classnames';
+import styles from './styles';
+import { startOfDay, format, isSameDay, isAfter, isBefore, endOfDay } from 'date-fns';
class DayCell extends Component {
constructor(props, context) {
@@ -10,159 +12,198 @@ class DayCell extends Component {
hover: false,
active: false,
};
-
- this.styles = this.props.theme;
+ this.getClassNames = this.getClassNames.bind(this);
+ this.handleSelect = this.handleSelect.bind(this);
+ this.handleMouseEvent = this.handleMouseEvent.bind(this);
+ this.renderSelectionPlaceholders = this.renderSelectionPlaceholders.bind(this);
+ this.renderPreviewPlaceholder = this.renderPreviewPlaceholder.bind(this);
}
handleMouseEvent(event) {
- event.preventDefault();
-
- if (this.props.isPassive) return null;
-
- const newState = {};
-
+ const { day, disabled, onSelect, onPreviewChange } = this.props;
+ if (disabled) return null;
+ const stateChanges = {};
switch (event.type) {
- case 'mouseenter':
- newState['hover'] = true;
+ case 'click':
+ onSelect && onSelect(day, 'selection');
break;
-
- case 'mouseup':
+ case 'blur':
case 'mouseleave':
- newState['hover'] = false;
- newState['active'] = false;
+ stateChanges.hover = false;
break;
-
case 'mousedown':
- newState['active'] = true;
+ stateChanges.active = true;
+ break;
+ case 'mouseup':
+ stateChanges.active = false;
+ break;
+ case 'mouseenter':
+ case 'focus':
+ stateChanges.hover = true;
+ onPreviewChange && onPreviewChange(day);
break;
}
-
- this.setState(newState);
+ if (Object.keys(stateChanges).length) {
+ this.setState(stateChanges);
+ }
}
- handleSelect(event) {
- event.preventDefault();
-
- if (this.props.isPassive) return null;
-
- this.props.onSelect(this.props.dayMoment);
+ handleSelect() {
+ if (this.props.disabled) return null;
+ this.props.onSelect(this.props.day);
}
- getStateStyles() {
- const { hover, active } = this.state;
+ getClassNames() {
const {
- isSelected,
- isInRange,
isPassive,
- isStartEdge,
- isEndEdge,
isToday,
isSunday,
isSpecialDay,
+ isStartOfWeek,
+ isEndOfWeek,
+ isStartOfMonth,
+ isEndOfMonth,
+ disabled,
} = this.props;
- const { styles } = this;
- const hoverStyle = hover ? styles['DayHover'] : {};
- const activeStyle = active ? styles['DayActive'] : {};
- const passiveStyle = isPassive ? styles['DayPassive'] : {};
- const startEdgeStyle = isStartEdge ? styles['DayStartEdge'] : {};
- const endEdgeStyle = isEndEdge ? styles['DayEndEdge'] : {};
- const selectedStyle = isSelected ? styles['DaySelected'] : {};
- const inRangeStyle = isInRange ? styles['DayInRange'] : {};
- const todayStyle = isToday ? styles['DayToday'] : {};
- const sundayStyle = isSunday ? styles['DaySunday'] : {};
- const specialDayStyle = isSpecialDay ? styles['DaySpecialDay'] : {};
-
- return {
- ...todayStyle,
- ...sundayStyle,
- ...specialDayStyle,
- ...inRangeStyle,
- ...hoverStyle,
- ...passiveStyle,
- ...activeStyle,
- ...selectedStyle,
- ...startEdgeStyle,
- ...endEdgeStyle,
- };
- }
-
- getClassNames(classes) {
- const {
- isSelected,
- isInRange,
- isPassive,
- isStartEdge,
- isEndEdge,
- isToday,
- isSunday,
- isSpecialDay,
- } = this.props;
-
- return classnames({
- [classes.day]: true,
- [classes.dayActive]: isSelected,
- [classes.dayPassive]: isPassive,
- [classes.dayInRange]: isInRange,
- [classes.dayStartEdge]: isStartEdge,
- [classes.dayEndEdge]: isEndEdge,
- [classes.dayToday]: isToday,
- [classes.daySunday]: isSunday,
- [classes.daySpecialDay]: isSpecialDay,
+ return classnames(styles.day, {
+ [styles.dayPassive]: isPassive,
+ [styles.dayDisabled]: disabled,
+ [styles.dayToday]: isToday,
+ [styles.daySunday]: isSunday,
+ [styles.daySpecialDay]: isSpecialDay,
+ [styles.dayStartOfWeek]: isStartOfWeek,
+ [styles.dayEndOfWeek]: isEndOfWeek,
+ [styles.dayStartOfMonth]: isStartOfMonth,
+ [styles.dayEndOfMonth]: isEndOfMonth,
+ [styles.dayHovered]: this.state.hover,
+ [styles.dayActive]: this.state.active,
});
}
-
- render() {
- const { dayMoment, onlyClasses, classNames } = this.props;
-
- const { styles } = this;
- const stateStyle = this.getStateStyles();
- const classes = this.getClassNames(classNames);
- const dayWrapperStyles = {
- width: styles['Day'].width,
- height: styles['Day'].height,
- display: styles['Day'].display,
- };
-
+ renderPreviewPlaceholder() {
+ const { preview, day, previewColor, color } = this.props;
+ if (!preview) return null;
+ const startDate = preview.startDate ? endOfDay(preview.startDate) : null;
+ const endDate = preview.endDate ? startOfDay(preview.endDate) : null;
+ const isInRange =
+ (!startDate || isAfter(day, startDate)) && (!endDate || isBefore(day, endDate));
+ const isStartEdge = !isInRange && isSameDay(day, startDate);
+ const isEndEdge = !isInRange && isSameDay(day, endDate);
return (
-
- {dayMoment.date()}
+ className={classnames({
+ [styles.dayStartPreview]: isStartEdge,
+ [styles.dayInPreview]: isInRange,
+ [styles.dayEndPreview]: isEndEdge,
+ })}
+ style={{ color: previewColor || color }}
+ />
+ );
+ }
+ renderSelectionPlaceholders() {
+ if (this.props.displayMode === 'date') {
+ let isSelected = isSameDay(this.props.day, this.props.date);
+ return isSelected ? (
+
+ ) : null;
+ }
+ const { ranges, day } = this.props;
+
+ const inRanges = ranges.reduce((result, range) => {
+ const startDate = range.startDate ? endOfDay(range.startDate) : null;
+ const endDate = range.endDate ? startOfDay(range.endDate) : null;
+ const isInRange =
+ (!startDate || isAfter(day, startDate)) && (!endDate || isBefore(day, endDate));
+ const isStartEdge = !isInRange && isSameDay(day, startDate);
+ const isEndEdge = !isInRange && isSameDay(day, endDate);
+ if (isInRange || isStartEdge || isEndEdge) {
+ return [
+ ...result,
+ {
+ isStartEdge,
+ isEndEdge: isEndEdge,
+ isInRange,
+ ...range,
+ },
+ ];
+ }
+ return result;
+ }, []);
+
+ return inRanges.map((range, i) => (
+
+ ));
+ }
+ render() {
+ return (
+
+
);
}
}
-DayCell.defaultProps = {
- theme: { Day: {} },
- onlyClasses: false,
-};
+DayCell.defaultProps = {};
+
+export const rangeShape = PropTypes.shape({
+ startDate: PropTypes.object,
+ endDate: PropTypes.object,
+ color: PropTypes.string,
+ key: PropTypes.string,
+ autoFocus: PropTypes.bool,
+ disabled: PropTypes.bool,
+});
DayCell.propTypes = {
- dayMoment: PropTypes.object.isRequired,
+ day: PropTypes.object.isRequired,
+ date: PropTypes.object,
+ ranges: PropTypes.arrayOf(rangeShape),
+ preview: PropTypes.shape({
+ startDate: PropTypes.object,
+ endDate: PropTypes.object,
+ }),
onSelect: PropTypes.func,
- isSelected: PropTypes.bool,
- isInRange: PropTypes.bool,
+ onPreviewChange: PropTypes.func,
+ previewColor: PropTypes.string,
+ disabled: PropTypes.bool,
isPassive: PropTypes.bool,
- theme: PropTypes.shape({
- Day: PropTypes.object.isRequired,
- }).isRequired,
- onlyClasses: PropTypes.bool,
isSpecialDay: PropTypes.bool,
- classNames: PropTypes.object,
- isStartEdge: PropTypes.bool,
- isEndEdge: PropTypes.bool,
isToday: PropTypes.bool,
isSunday: PropTypes.bool,
+ isStartOfWeek: PropTypes.bool,
+ isEndOfWeek: PropTypes.bool,
+ isStartOfMonth: PropTypes.bool,
+ isEndOfMonth: PropTypes.bool,
+ onMouseOver: PropTypes.func,
+ color: PropTypes.string,
+ displayMode: PropTypes.oneOf(['dateRange', 'date']),
};
export default DayCell;
diff --git a/src/DefinedRanges.js b/src/DefinedRanges.js
new file mode 100644
index 000000000..e7e566431
--- /dev/null
+++ b/src/DefinedRanges.js
@@ -0,0 +1,76 @@
+import React, { Component } from 'react';
+import PropTypes from 'prop-types';
+import styles from './styles';
+import { defaultInputRanges, defaultStaticRanges } from './defaultRanges';
+import { rangeShape } from './DayCell';
+
+class DefinedRanges extends Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ rangeOffset: 0,
+ focusedInput: -1,
+ };
+ this.handleRangeChange = this.handleRangeChange.bind(this);
+ }
+ handleRangeChange(range) {
+ const { onChange } = this.props;
+ onChange && onChange(range);
+ }
+ render() {
+ const { onPreviewChange } = this.props;
+ return (
+
+
+ {this.props.staticRanges.map((rangeOption, i) => (
+
+ ))}
+
+
+ {this.props.inputRanges.map((rangeOption, i) => (
+
+ this.setState({ focusedInput: i, rangeOffset: 0 })}
+ onChange={e => {
+ let value = parseInt(e.target.value, 10);
+ value = isNaN(value) ? 0 : Math.max(Math.min(99999, value), 0);
+ this.setState({ rangeOffset: value });
+ this.handleRangeChange(rangeOption.range(value, this.props));
+ }}
+ min={0}
+ max={99999}
+ value={this.state.focusedInput === i ? this.state.rangeOffset : 0}
+ />{' '}
+ {rangeOption.label}
+
+ ))}
+
+
+ );
+ }
+}
+
+DefinedRanges.propTypes = {
+ inputRanges: PropTypes.array,
+ staticRanges: PropTypes.array,
+ range: rangeShape,
+ onPreviewChange: PropTypes.func,
+ onChange: PropTypes.func,
+};
+
+DefinedRanges.defaultProps = {
+ inputRanges: defaultInputRanges,
+ staticRanges: defaultStaticRanges,
+};
+
+export default DefinedRanges;
diff --git a/src/LangDic.js b/src/LangDic.js
deleted file mode 100644
index 5cab90226..000000000
--- a/src/LangDic.js
+++ /dev/null
@@ -1,266 +0,0 @@
-export default {
- cn: {
- // Chinese
- january: '一月',
- february: '二月',
- march: '三月',
- april: '四月',
- may: '五月',
- june: '六月',
- july: '七月',
- august: '八月',
- september: '九月',
- october: '十月',
- november: '十一月',
- december: '十二月',
- su: '日',
- mo: '一',
- tu: '二',
- we: '三',
- th: '四',
- fr: '五',
- sa: '六',
- },
- jp: {
- // Japanese
- january: '1月',
- february: '2月',
- march: '3月',
- april: '4月',
- may: '5月',
- june: '6月',
- july: '7月',
- august: '8月',
- september: '9月',
- october: '10月',
- november: '11月',
- december: '12月',
- su: '日',
- mo: '月',
- tu: '火',
- we: '水',
- th: '木',
- fr: '金',
- sa: '土',
- },
- fr: {
- // French
- january: 'janvier',
- february: 'février',
- march: 'mars',
- april: 'avril',
- may: 'mai',
- june: 'juin',
- july: 'juillet',
- august: 'août',
- september: 'septembre',
- october: 'octobre',
- november: 'novembre',
- december: 'décembre',
- su: 'Dimanche',
- mo: 'Lundi',
- tu: 'Mardi',
- we: 'Mercredi',
- th: 'Jeudi',
- fr: 'Vendredi',
- sa: 'Samedi',
- },
- it: {
- // Italian
- january: 'gennaio',
- february: 'febbraio',
- march: 'marzo',
- april: 'aprile',
- may: 'maggio',
- june: 'giugno',
- july: 'luglio',
- august: 'agosto',
- september: 'settembre',
- october: 'ottobre',
- november: 'novembre',
- december: 'dicembre',
- su: 'Domenica',
- mo: 'Lunedì',
- tu: 'Martedì',
- we: 'Mercoledì',
- th: 'Giovedì',
- fr: 'Venerdì',
- sa: 'Sabato',
- },
- de: {
- // German
- january: 'Januar',
- february: 'Februar',
- march: 'März',
- april: 'April',
- may: 'Mai',
- june: 'Juni',
- july: 'Juli',
- august: 'August',
- september: 'September',
- october: 'Oktober',
- november: 'November',
- december: 'Dezember',
- su: 'Sonntag',
- mo: 'Montag',
- tu: 'Dienstag',
- we: 'Mittwoch',
- th: 'Donnerstag',
- fr: 'Freitag',
- sa: 'Samstag',
- },
- ko: {
- // Korean
- january: '1월',
- february: '2월',
- march: '3월',
- april: '4월',
- may: '5월',
- june: '6월',
- july: '7월',
- august: '8월',
- september: '9월',
- october: '10월',
- november: '11월',
- december: '12월',
- su: '일',
- mo: '월',
- tu: '화',
- we: '수',
- th: '목',
- fr: '금',
- sa: '토',
- },
- es: {
- // Spanish
- january: 'Enero',
- february: 'Febrero',
- march: 'Marzo',
- april: 'Abril',
- may: 'Mayo',
- june: 'Junio',
- july: 'Julio',
- august: 'Agosto',
- september: 'Septiembre',
- october: 'Octubre',
- november: 'Noviembre',
- december: 'Diciembre',
- su: 'Do',
- mo: 'Lu',
- tu: 'Ma',
- we: 'Mi',
- th: 'Ju',
- fr: 'Vi',
- sa: 'Sa',
- },
- ru: {
- // Russian
- january: 'Январь',
- february: 'Февраль',
- march: 'Март',
- april: 'Апрель',
- may: 'Май',
- june: 'Июнь',
- july: 'Июль',
- august: 'Август',
- september: 'Сентябрь',
- october: 'Октябрь',
- november: 'Ноябрь',
- december: 'Декабрь',
- su: 'Вс',
- mo: 'Пн',
- tu: 'Вт',
- we: 'Ср',
- th: 'Чт',
- fr: 'Пт',
- sa: 'Сб',
- },
- tr: {
- // Turkish
- january: 'Ocak',
- february: 'Şubat',
- march: 'Mart',
- april: 'Nisan',
- may: 'Mayıs',
- june: 'Haziran',
- july: 'Temmuz',
- august: 'Ağustos',
- september: 'Eylül',
- october: 'Ekim',
- november: 'Kasım',
- december: 'Aralık',
- su: 'Pz',
- mo: 'Pts',
- tu: 'Sa',
- we: 'Ça',
- th: 'Pe',
- fr: 'Cu',
- sa: 'Cts',
- },
- pt: {
- // Portuguese
- january: 'Janeiro',
- february: 'Fevereiro',
- march: 'Março',
- april: 'Abril',
- may: 'Maio',
- june: 'Junho',
- july: 'Julho',
- august: 'Agosto',
- september: 'Setembro',
- october: 'Outubro',
- november: 'Novembro',
- december: 'Dezembro',
- su: 'Dom',
- mo: 'Seg',
- tu: 'Ter',
- we: 'Qua',
- th: 'Qui',
- fr: 'Sex',
- sa: 'Sáb',
- },
- 'pt-br': {
- // Português Brazil
- january: 'Janeiro',
- february: 'Fevereiro',
- march: 'Março',
- april: 'Abril',
- may: 'Maio',
- june: 'Junho',
- july: 'Julho',
- august: 'Agosto',
- september: 'Setembro',
- october: 'Outubro',
- november: 'Novembro',
- december: 'Dezembro',
- su: 'Dom',
- mo: 'Seg',
- tu: 'Ter',
- we: 'Qua',
- th: 'Qui',
- fr: 'Sex',
- sa: 'Sab',
- },
- fi: {
- // Finnish
- january: 'Tammikuu',
- february: 'Helmikuu',
- march: 'Maaliskuu',
- april: 'Huhtikuu',
- may: 'Toukokuu',
- june: 'Kesäkuu',
- july: 'Heinäkuu',
- august: 'Elokuu',
- september: 'Syyskuu',
- october: 'Lokakuu',
- november: 'Marraskuu',
- december: 'Joulukuu',
- su: 'Su',
- mo: 'Ma',
- tu: 'Ti',
- we: 'Ke',
- th: 'To',
- fr: 'Pe',
- sa: 'La',
- },
-};
diff --git a/src/PredefinedRanges.js b/src/PredefinedRanges.js
deleted file mode 100644
index 63fb69f5e..000000000
--- a/src/PredefinedRanges.js
+++ /dev/null
@@ -1,91 +0,0 @@
-import React, { Component } from 'react';
-import PropTypes from 'prop-types';
-import classnames from 'classnames';
-import parseInput from './utils/parseInput.js';
-import { defaultClasses } from './styles.js';
-
-class PredefinedRanges extends Component {
- constructor(props, context) {
- super(props, context);
-
- this.styles = this.props.theme;
- }
-
- handleSelect(name, event) {
- event.preventDefault();
-
- const range = this.props.ranges[name];
-
- this.props.onSelect(
- {
- startDate: parseInput(range.startDate, null, 'startOf'),
- endDate: parseInput(range.endDate, null, 'endOf'),
- },
- PredefinedRanges
- );
- }
-
- renderRangeList(classes) {
- const { ranges, range, onlyClasses } = this.props;
- const { styles } = this;
-
- return Object.keys(ranges).map(name => {
- const active =
- parseInput(ranges[name].startDate, null, 'startOf').isSame(range.startDate) &&
- parseInput(ranges[name].endDate, null, 'endOf').isSame(range.endDate);
-
- const style = {
- ...styles.PredefinedRangesItem,
- ...(active ? styles.PredefinedRangesItemActive : {}),
- };
-
- const predefinedRangeClass = classnames({
- [classes.predefinedRangesItem]: true,
- [classes.predefinedRangesItemActive]: active,
- });
-
- return (
-
- {name}
-
- );
- });
- }
-
- render() {
- const { style, onlyClasses, classNames } = this.props;
- const { styles } = this;
-
- const classes = { ...defaultClasses, ...classNames };
-
- return (
-
- {this.renderRangeList(classes)}
-
- );
- }
-}
-
-PredefinedRanges.defaultProps = {
- onlyClasses: false,
- classNames: {},
-};
-
-PredefinedRanges.propTypes = {
- ranges: PropTypes.object.isRequired,
- onlyClasses: PropTypes.bool,
- classNames: PropTypes.object,
- theme: PropTypes.object,
- onSelect: PropTypes.func,
- range: PropTypes.object,
- style: PropTypes.object,
-};
-
-export default PredefinedRanges;
diff --git a/src/calendar.css b/src/calendar.css
new file mode 100644
index 000000000..955934b62
--- /dev/null
+++ b/src/calendar.css
@@ -0,0 +1,81 @@
+.rdrCalendarWrapper {
+ box-sizing: border-box;
+ background: #ffffff;
+ display: inline-flex;
+ flex-direction: column;
+}
+
+.rdrDateDisplay{
+ display: flex;
+ justify-content: space-between;
+}
+
+.rdrDateDisplayItem{
+ flex: 1 1;
+ width: 0;
+ text-align: center;
+ color: inherit;
+ & + &{
+ margin-left: 0.833em;
+ }
+ input{
+ text-align: inherit;
+ &:disabled{
+ cursor: default;
+ }
+ }
+}
+
+.rdrDateDisplayItemActive{}
+
+.rdrMonthAndYearWrapper {
+ box-sizing: inherit;
+ display: flex;
+ justify-content: space-between;
+}
+
+.rdrMonthAndYearPickers{
+ flex: 1 1 auto;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+.rdrMonthPicker{}
+
+.rdrYearPicker{}
+
+.rdrNextPrevButton {
+ box-sizing: inherit;
+ cursor: pointer;
+ outline: none;
+}
+
+.rdrPprevButton {}
+
+.rdrNextButton {}
+
+.rdrMonths{
+ display: flex;
+}
+
+.rdrMonth{
+ width: 27.667em;
+}
+
+.rdrWeekDays{
+ display: flex;
+}
+
+.rdrWeekDay {
+ flex-basis: calc(100% / 7);
+ box-sizing: inherit;
+ text-align: center;
+}
+
+.rdrDays{
+ display: flex;
+ flex-wrap: wrap;
+}
+
+.rdrDateDisplayWrapper{}
diff --git a/src/dateRange.css b/src/dateRange.css
new file mode 100644
index 000000000..cb13ff63d
--- /dev/null
+++ b/src/dateRange.css
@@ -0,0 +1 @@
+.rdrDateRangeWrapper{}
diff --git a/src/dateRangePicker.css b/src/dateRangePicker.css
new file mode 100644
index 000000000..1f9b60142
--- /dev/null
+++ b/src/dateRangePicker.css
@@ -0,0 +1,3 @@
+.rdrDateRangePickerWrapper{
+ display: flex;
+}
\ No newline at end of file
diff --git a/src/dayCell.css b/src/dayCell.css
new file mode 100644
index 000000000..2ebc58cf3
--- /dev/null
+++ b/src/dayCell.css
@@ -0,0 +1,42 @@
+.rdrDay {
+ box-sizing: inherit;
+ width: calc(100% / 7);
+ position: relative;
+ font: inherit;
+}
+
+.rdrDayNumber {
+ display: block;
+ position: relative;
+ span{
+ color: #1d2429;
+ }
+}
+
+.rdrDayPassive {
+ cursor: default;
+ pointer-events: none;
+ .rdrInRange, .rdrStartEdge, .rdrEndEdge, .rdrSelected, .rdrDayStartPreview, .rdrDayInPreview, .rdrDayEndPreview{
+ display: none;
+ }
+}
+
+.rdrDayDisabled {
+ cursor: default;
+ pointer-events: none;
+}
+
+
+.rdrSelected, .rdrInRange, .rdrStartEdge, .rdrEndEdge{
+ pointer-events: none;
+}
+
+.rdrInRange{}
+
+.rdrDayStartPreview, .rdrDayInPreview, .rdrDayEndPreview{
+ pointer-events: none;
+}
+
+.rdrDayHovered{}
+
+.rdrDayActive{}
diff --git a/src/defaultRanges.js b/src/defaultRanges.js
index d9901aef7..7c3e302cd 100644
--- a/src/defaultRanges.js
+++ b/src/defaultRanges.js
@@ -1,37 +1,94 @@
-export default {
- Today: {
- startDate: now => {
- return now;
+import {
+ addDays,
+ endOfDay,
+ startOfDay,
+ startOfMonth,
+ endOfMonth,
+ addMonths,
+ startOfWeek,
+ endOfWeek,
+} from 'date-fns';
+
+export const defaultStaticRanges = [
+ {
+ label: 'Today',
+ range() {
+ return {
+ startDate: startOfDay(new Date()),
+ endDate: endOfDay(new Date()),
+ };
},
- endDate: now => {
- return now;
+ },
+ {
+ label: 'Yesterday',
+ range() {
+ const yesterday = addDays(new Date(), -1);
+ return {
+ startDate: startOfDay(yesterday),
+ endDate: endOfDay(yesterday),
+ };
},
},
- Yesterday: {
- startDate: now => {
- return now.add(-1, 'days');
+ {
+ label: 'This Week',
+ range() {
+ return {
+ startDate: startOfWeek(new Date()),
+ endDate: endOfWeek(new Date()),
+ };
},
- endDate: now => {
- return now.add(-1, 'days');
+ },
+ {
+ label: 'Last Week',
+ range() {
+ const lastWeek = addDays(new Date(), -7);
+ return {
+ startDate: startOfWeek(lastWeek),
+ endDate: endOfWeek(lastWeek),
+ };
},
},
-
- 'Last 7 Days': {
- startDate: now => {
- return now.add(-7, 'days');
+ {
+ label: 'This Month',
+ range() {
+ return {
+ startDate: startOfMonth(new Date()),
+ endDate: endOfMonth(new Date()),
+ };
},
- endDate: now => {
- return now;
+ },
+ {
+ label: 'Last Month',
+ range() {
+ const lastMonth = addMonths(new Date(), -1);
+ return {
+ startDate: startOfMonth(lastMonth),
+ endDate: endOfMonth(lastMonth),
+ };
},
},
+];
- 'Last 30 Days': {
- startDate: now => {
- return now.add(-30, 'days');
+export const defaultInputRanges = [
+ {
+ label: 'days up today',
+ range(value) {
+ const today = new Date();
+ return {
+ startDate: addDays(today, Number(value) * -1),
+ endDate: today,
+ };
},
- endDate: now => {
- return now;
+ },
+ {
+ label: 'days up yesterday',
+ range(value) {
+ const today = new Date();
+ return {
+ startDate: today,
+ endDate: addDays(today, Number(value)),
+ };
},
},
-};
+];
diff --git a/src/definedRanges.css b/src/definedRanges.css
new file mode 100644
index 000000000..9f05efa0c
--- /dev/null
+++ b/src/definedRanges.css
@@ -0,0 +1,20 @@
+.rdrDefinedRangesWrapper{}
+
+.rdrStaticRanges{
+ display: flex;
+ flex-direction: column;
+}
+
+.rdrStaticRange{
+ font-size: inherit;
+}
+
+.rdrStaticRangeLabel{}
+
+.rdrInputRanges{}
+
+.rdrInputRange{
+ display: flex;
+}
+
+.rdrInputRangeInput{}
diff --git a/src/index.js b/src/index.js
index d847f272d..c345c9ca1 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,7 +1,5 @@
-import DateRangeComp from './DateRange.js';
-import CalendarComp from './Calendar.js';
-import defaultRangesComp from './defaultRanges.js';
-
-export const DateRange = DateRangeComp;
-export const Calendar = CalendarComp;
-export const defaultRanges = defaultRangesComp;
+export { default as DateRange } from './DateRange';
+export { default as Calendar } from './Calendar';
+export { default as DateRangePicker } from './DateRangePicker';
+export { default as DefinedRanges } from './DefinedRanges';
+export { inputRanges, staticRanges } from './defaultRanges';
diff --git a/src/styles.css b/src/styles.css
new file mode 100644
index 000000000..c834d4911
--- /dev/null
+++ b/src/styles.css
@@ -0,0 +1,5 @@
+@import 'calendar.css';
+@import 'dateRange.css';
+@import 'dayCell.css';
+@import 'dateRangePicker.css';
+@import 'definedRanges.css';
diff --git a/src/styles.js b/src/styles.js
index b6bffac77..95e96c5af 100644
--- a/src/styles.js
+++ b/src/styles.js
@@ -1,247 +1,47 @@
-export const defaultClasses = {
- calendar: 'rdr-Calendar',
- dateRange: 'rdr-DateRange',
- predefinedRanges: 'rdr-PredefinedRanges',
- predefinedRangesItem: 'rdr-PredefinedRangesItem',
- predefinedRangesItemActive: 'rdr-PredefinedRangesItemActive',
- monthAndYear: 'rdr-MonthAndYear',
- weekDays: 'rdr-WeekDays',
- weekDay: 'rdr-WeekDay',
- days: 'rdr-Days',
- day: 'rdr-Day',
- dayActive: 'is-selected',
- dayPassive: 'is-passive',
- dayInRange: 'is-inRange',
- monthAndYearWrapper: 'rdr-MonthAndYear-innerWrapper',
- prevButton: 'rdr-MonthAndYear-button prev',
- nextButton: 'rdr-MonthAndYear-button next',
- month: 'rdr-MonthAndYear-month',
- monthAndYearDivider: 'rdr-MonthAndYear-divider',
- year: 'rdr-MonthAndYear-year',
- daySunday: 'rdr-Sunday',
- daySpecialDay: 'rdr-SpecialDay',
-};
-
-const defaultTheme = {
- DateRange: {
- display: 'block',
- boxSizing: 'border-box',
- background: '#ffffff',
- borderRadius: '2px',
- },
-
- Calendar: {
- width: 280,
- padding: 10,
- background: '#ffffff',
- borderRadius: '2px',
- display: 'inline-block',
- boxSizing: 'border-box',
- letterSpacing: 0,
- color: '#000000',
- },
-
- Day: {
- boxSizing: 'border-box',
- display: 'inline-block',
- letterSpacing: 'initial',
- textAlign: 'center',
- fontSize: 12,
- cursor: 'pointer',
- transition: 'transform .1s ease',
- },
-
- DayPassive: {
- opacity: 0.4,
- cursor: 'normal',
- },
-
- DayHover: {
- background: '#bdc3c7',
- },
-
- DayToday: {},
-
- DaySunday: {},
-
- DaySpecialDay: {},
-
- DayActive: {
- background: '#95a5a6',
- color: '#ffffff',
- transform: 'scale(0.9)',
- },
-
- DaySelected: {
- background: '#e74c3c',
- color: '#ffffff',
- },
-
- DayStartEdge: {},
-
- DayEndEdge: {},
-
- DayInRange: {
- background: '#34495e',
- color: '#95a5a6',
- },
-
- Weekday: {
- boxSizing: 'border-box',
- display: 'inline-block',
- letterSpacing: 'initial',
- textAlign: 'center',
- fontSize: 12,
- fontWeight: '600',
- marginBottom: 1,
- },
-
- MonthAndYear: {
- textAlign: 'center',
- boxSizing: 'border-box',
- fontSize: 12,
- padding: '10px 0',
- height: 38,
- lineHeight: '18px',
- },
-
- MonthButton: {
- display: 'block',
- boxSizing: 'border-box',
- height: 18,
- width: 18,
- padding: 0,
- margin: '0 10px',
- border: 'none',
- background: '#bdc3c7',
- boxShadow: 'none',
- outline: 'none',
- borderRadius: '50%',
- },
-
- MonthArrow: {
- display: 'block',
- width: 0,
- height: 0,
- padding: 0,
- margin: 0,
- border: '4px solid transparent',
- textAlign: 'center',
- },
-
- MonthArrowPrev: {
- borderRightWidth: '6px',
- borderRightColor: '#34495e',
- marginLeft: 1,
- },
-
- MonthArrowNext: {
- borderLeftWidth: '6px',
- borderLeftColor: '#34495e',
- marginLeft: 7,
- },
-
- PredefinedRanges: {
- width: 140,
- display: 'inline-block',
- verticalAlign: 'top',
- },
-
- PredefinedRangesItem: {
- display: 'block',
- fontSize: 12,
- color: '#2c3e50',
- padding: '10px 14px',
- borderRadius: '2px',
- background: '#ecf0f1',
- textDecoration: 'none',
- marginBottom: 6,
- },
-
- PredefinedRangesItemActive: {
- color: '#E74C3C',
- },
-};
-
-export default (customTheme = {}) => {
- let calendarWidth = defaultTheme.Calendar.width;
- let calendarPadding = defaultTheme.Calendar.padding;
- let cellMargin = defaultTheme.Day.margin || 0;
-
- if (customTheme.Calendar && customTheme.Calendar.hasOwnProperty('width')) {
- calendarWidth = customTheme.Calendar.width;
- }
-
- if (customTheme.Calendar && customTheme.Calendar.hasOwnProperty('padding')) {
- calendarPadding = customTheme.Calendar.padding;
- }
-
- if (customTheme.Day && customTheme.Day.hasOwnProperty('margin')) {
- cellMargin = customTheme.Day.margin;
- }
-
- const cellSize =
- (parseInt(calendarWidth) - parseInt(calendarPadding) * 2) / 7 - parseInt(cellMargin) * 2;
-
- return {
- DateRange: { ...defaultTheme.DateRange, ...customTheme.DateRange },
-
- Calendar: { ...defaultTheme.Calendar, ...customTheme.Calendar },
-
- Day: {
- width: cellSize,
- height: cellSize,
- lineHeight: cellSize + 'px',
- ...defaultTheme.Day,
- ...customTheme.Day,
- },
-
- DayPassive: { ...defaultTheme.DayPassive, ...customTheme.DayPassive },
-
- DayHover: { ...defaultTheme.DayHover, ...customTheme.DayHover },
-
- DayToday: { ...defaultTheme.DayToday, ...customTheme.DayToday },
- DaySunday: { ...defaultTheme.DaySunday, ...customTheme.DaySunday },
- DaySpecialDay: { ...defaultTheme.DaySpecialDay, ...customTheme.DaySpecialDay },
-
- DayActive: { ...defaultTheme.DayActive, ...customTheme.DayActive },
-
- DaySelected: { ...defaultTheme.DaySelected, ...customTheme.DaySelected },
-
- DayStartEdge: { ...defaultTheme.DayStartEdge, ...customTheme.DayStartEdge },
-
- DayEndEdge: { ...defaultTheme.DayEndEdge, ...customTheme.DayEndEdge },
-
- DayInRange: { ...defaultTheme.DayInRange, ...customTheme.DayInRange },
-
- Weekday: {
- width: cellSize,
- height: cellSize / 2,
- lineHeight: cellSize / 2 + 'px',
- ...defaultTheme.Weekday,
- ...customTheme.Weekday,
- },
-
- MonthAndYear: { ...defaultTheme.MonthAndYear, ...customTheme.MonthAndYear },
-
- MonthButton: { ...defaultTheme.MonthButton, ...customTheme.MonthButton },
-
- MonthArrow: { ...defaultTheme.MonthArrow, ...customTheme.MonthArrow },
-
- MonthArrowPrev: { ...defaultTheme.MonthArrowPrev, ...customTheme.MonthArrowPrev },
-
- MonthArrowNext: { ...defaultTheme.MonthArrowNext, ...customTheme.MonthArrowNext },
-
- PredefinedRanges: { ...defaultTheme.PredefinedRanges, ...customTheme.PredefinedRanges },
-
- PredefinedRangesItem: {
- ...defaultTheme.PredefinedRangesItem,
- ...customTheme.PredefinedRangesItem,
- },
-
- PredefinedRangesItemActive: {
- ...defaultTheme.PredefinedRangesItemActive,
- ...customTheme.PredefinedRangesItemActive,
- },
- };
+export default {
+ dateRangeWrapper: 'rdrDateRangeWrapper',
+ calendarWrapper: 'rdrCalendarWrapper',
+ dateDisplay: 'rdrDateDisplay',
+ dateDisplayItem: 'rdrDateDisplayItem',
+ dateDisplayItemActive: 'rdrDateDisplayItemActive',
+ monthAndYearWrapper: 'rdrMonthAndYearWrapper',
+ monthAndYearPickers: 'rdrMonthAndYearPickers',
+ nextPrevButton: 'rdrNextPrevButton',
+ month: 'rdrMonth',
+ weekDays: 'rdrWeekDays',
+ weekDay: 'rdrWeekDay',
+ days: 'rdrDays',
+ day: 'rdrDay',
+ dayNumber: 'rdrDayNumber',
+ dayPassive: 'rdrDayPassive',
+ dayToday: 'rdrDayToday',
+ dayStartOfWeek: 'rdrDayStartOfWeek',
+ inRange: 'rdrInRange',
+ endEdge: 'rdrEndEdge',
+ dayEndOfWeek: 'rdrDayEndOfWeek',
+ startEdge: 'rdrStartEdge',
+ prevButton: 'rdrPprevButton',
+ nextButton: 'rdrNextButton',
+ daySelected: 'rdrDaySelected',
+ selected: 'rdrSelected',
+ dayDisabled: 'rdrDayDisabled',
+ months: 'rdrMonths',
+ monthPicker: 'rdrMonthPicker',
+ yearPicker: 'rdrYearPicker',
+ dateDisplayWrapper: 'rdrDateDisplayWrapper',
+ dayStartOfMonth: 'rdrDayStartOfMonth',
+ dayEndOfMonth: 'rdrDayEndOfMonth',
+ definedRangesWrapper: 'rdrDefinedRangesWrapper',
+ staticRanges: 'rdrStaticRanges',
+ staticRange: 'rdrStaticRange',
+ inputRanges: 'rdrInputRanges',
+ inputRange: 'rdrInputRange',
+ inputRangeInput: 'rdrInputRangeInput',
+ dateRangePickerWrapper: 'rdrDateRangePickerWrapper',
+ dayStartPreview: 'rdrDayStartPreview',
+ dayInPreview: 'rdrDayInPreview',
+ dayEndPreview: 'rdrDayEndPreview',
+ staticRangeLabel: 'rdrStaticRangeLabel',
+ dayHovered: 'rdrDayHovered',
+ dayActive: 'rdrDayActive',
};
diff --git a/src/styles.scss b/src/styles.scss
deleted file mode 100644
index a1a77b858..000000000
--- a/src/styles.scss
+++ /dev/null
@@ -1,135 +0,0 @@
-$calendar-color: #000000 !default;
-$calendar-background: #ffffff !default;
-$calendar-month-button-background: #bdc3c7 !default;
-$calendar-month-button-icon-color: rgb(52, 73, 94) !default;
-$calendar-day-selected-background: #e74c3c !default;
-$calendar-day-hover-background: #bdc3c7 !default;
-$calendar-day-in-range-background: #34495e !default;
-$calendar-width: 280px !default;
-$calendar-padding: 10px !default;
-$cell-margin: 0 !default;
-$cell-size: (($calendar-width - $calendar-padding * 2) / 7) - ($cell-margin * 2) - 1 !default;
-$calendar-shadow: rgba($calendar-color, 0.25) 0 0 1em !default;
-
-.rdr-DateRange {
- display: block;
- box-sizing: border-box;
- white-space: nowrap;
- border-radius: 2px;
- background: $calendar-background;
- box-shadow: $calendar-shadow;
-
- .rdr-Calendar {
- box-shadow: none;
- }
-}
-
-.rdr-Calendar {
- display: inline-block;
- box-sizing: border-box;
- width: $calendar-width;
- padding: $calendar-padding;
- white-space: normal;
- letter-spacing: 0;
- color: $calendar-color;
- border-radius: 2px;
- background: $calendar-background;
- box-shadow: $calendar-shadow;
-}
-
-.rdr-MonthAndYear-innerWrapper {
- font-size: 12px;
- line-height: 18px;
- box-sizing: border-box;
- height: 38px;
- padding: 10px 0;
- text-align: center;
-}
-
-.rdr-MonthAndYear-button {
- display: block;
- box-sizing: border-box;
- width: 18px;
- height: 18px;
- margin: 0 10px;
- padding: 0;
- border: 0;
- border-radius: 50%;
- outline: none;
- background: $calendar-month-button-background;
- box-shadow: none;
-
- i {
- display: block;
- width: 0;
- height: 0;
- padding: 0;
- text-align: center;
- border-style: solid;
- }
-
- &.prev {
- float: left;
-
- i {
- margin: 0 0 0 1px;
- border-width: 4px 6px 4px 4px;
- border-color: transparent $calendar-month-button-icon-color transparent transparent;
- }
- }
-
- &.next {
- float: right;
-
- i {
- margin: 0 0 0 7px;
- border-width: 4px 4px 4px 6px;
- border-color: transparent transparent transparent $calendar-month-button-icon-color;
- }
- }
-}
-
-.rdr-WeekDay {
- font-size: 12px;
- font-weight: 600;
- line-height: $cell-size / 2;
- display: inline-block;
- box-sizing: border-box;
- width: $cell-size;
- height: $cell-size / 2;
- margin-bottom: 1px;
- text-align: center;
- letter-spacing: initial;
-}
-
-.rdr-Day {
- font-size: 12px;
- line-height: $cell-size;
- display: inline-block;
- box-sizing: border-box;
- width: $cell-size;
- height: $cell-size;
- cursor: pointer;
- transition: transform 0.1s ease;
- text-align: center;
- letter-spacing: initial;
-
- &.is-passive {
- cursor: normal;
- opacity: 0.4;
- }
-
- &.is-selected {
- color: $calendar-background;
- background: $calendar-day-selected-background;
- }
-
- &.is-inRange {
- color: $calendar-background;
- background: $calendar-day-in-range-background;
- }
-
- &:hover:not(.is-selected) {
- background: $calendar-day-hover-background;
- }
-}
diff --git a/src/theme/default.css b/src/theme/default.css
new file mode 100644
index 000000000..001db1f2f
--- /dev/null
+++ b/src/theme/default.css
@@ -0,0 +1,344 @@
+.rdrCalendarWrapper{
+ color: #000000;
+ font-size: 12px;
+}
+
+.rdrDateDisplay{
+ background-color: rgb(239, 242, 247);
+ padding: 0.833em;
+}
+
+.rdrDateDisplayItem{
+ border-radius: 4px;
+ background-color: rgb(255, 255, 255);
+ box-shadow: 0 1px 2px 0 rgba(35, 57, 66, 0.21);
+ border: 1px solid transparent;
+ input{
+ cursor: pointer;
+ height: 2.5em;
+ line-height: 2.5em;
+ border: 0px;
+ background: transparent;
+ width: 100%;
+ color: #849095;
+ }
+}
+
+.rdrDateDisplayItemActive{
+ border-color: currentColor;
+}
+
+.rdrDateDisplayItemActive{
+ input{
+ color: #7d888d
+ }
+}
+
+.rdrMonthAndYearWrapper {
+ align-items: center;
+ height: 60px;
+ padding-top: 10px;
+}
+
+.rdrMonthAndYearPickers{
+ font-weight: 600;
+ select{
+ appearance: none;
+ border: 0;
+ background: transparent;
+ padding: 10px 30px 10px 10px;
+ border-radius: 4px;
+ outline: 0;
+ color: #3e484f;
+ background: url("data:image/svg+xml;utf8,") no-repeat;
+ background-position: right 8px center;
+ cursor: pointer;
+ text-align: center;
+ &:hover{
+ background-color: rgba(0,0,0,0.07);
+ }
+ }
+}
+
+.rdrMonthPicker, .rdrYearPicker{
+ margin: 0 5px
+}
+
+.rdrNextPrevButton {
+ display: block;
+ width: 24px;
+ height: 24px;
+ margin: 0 0.833em;
+ padding: 0;
+ border: 0;
+ border-radius: 5px;
+ background: #EFF2F7;
+ &:hover{
+ background: #E1E7F0;
+ }
+ i {
+ display: block;
+ width: 0;
+ height: 0;
+ padding: 0;
+ text-align: center;
+ border-style: solid;
+ margin: auto;
+ transform: translate(-3px, 0px);
+ }
+}
+
+.rdrPprevButton {
+ i {
+ border-width: 4px 6px 4px 4px;
+ border-color: transparent rgb(52, 73, 94) transparent transparent;
+ transform: translate(-3px, 0px);
+ }
+}
+
+.rdrNextButton {
+ i {
+ margin: 0 0 0 7px;
+ border-width: 4px 4px 4px 6px;
+ border-color: transparent transparent transparent rgb(52, 73, 94);
+ transform: translate(3px, 0px);
+ }
+}
+
+.rdrMonth{
+ padding: 0 0.833em 1.666em 0.833em;
+}
+
+.rdrWeekDay {
+ font-weight: 400;
+ line-height: 2.667em;
+ color: rgb(132, 144, 149);
+}
+
+.rdrDay {
+ background: transparent;
+ user-select: none;
+ border: 0;
+ padding: 0;
+ line-height: 3.000em;
+ height: 3.000em;
+ cursor: pointer;
+ text-align: center;
+ color: #1d2429;
+ &:focus {
+ outline: 0;
+ }
+}
+
+.rdrDayNumber {
+ // height: 32px;
+ // line-height: 32px;
+ outline: 0;
+ font-weight: 300;
+ position: absolute;
+ left: 0;
+ right: 0;
+ top: 0;
+ bottom: 0;
+ top: 5px;
+ bottom: 5px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.rdrDayToday .rdrDayNumber span{
+ font-weight: 500;
+ &:after{
+ content: '';
+ position: absolute;
+ bottom: 4px;
+ left: 50%;
+ transform: translate(-50%, 0);
+ width: 18px;
+ height: 2px;
+ border-radius: 2px;
+ background: #3d91ff;
+ }
+}
+
+.rdrDay:not(.rdrDayPassive){
+ .rdrInRange, .rdrStartEdge, .rdrEndEdge, .rdrSelected{
+ & ~ .rdrDayNumber{
+ span{
+ color: rgba(255, 255, 255, 0.85);
+ &:after{
+ background: rgba(255, 255, 255, 0.85);
+ }
+ }
+ }
+ }
+}
+
+.rdrDayPassive {
+ opacity: 0.5;
+}
+
+.rdrDayDisabled .rdrDayNumber{
+ opacity: 0.5;
+}
+
+
+.rdrSelected, .rdrInRange, .rdrStartEdge, .rdrEndEdge{
+ background: currentColor;
+ position: absolute;
+ top: 5px;
+ left: 0;
+ right: 0;
+ bottom: 5px;
+}
+
+.rdrInRange{}
+
+.rdrStartEdge{
+ border-top-left-radius: 1.042em;
+ border-bottom-left-radius: 1.042em;
+}
+
+.rdrEndEdge{
+ border-top-right-radius: 1.042em;
+ border-bottom-right-radius: 1.042em;
+}
+
+.rdrSelected{
+ border-radius: 1.042em;
+}
+
+.rdrDayStartOfMonth, .rdrDayStartOfWeek{
+ .rdrInRange, .rdrEndEdge{
+ border-top-left-radius: 1.042em;
+ border-bottom-left-radius: 1.042em;
+ }
+}
+
+.rdrDayEndOfMonth, .rdrDayEndOfWeek{
+ .rdrInRange, .rdrStartEdge{
+ border-top-right-radius: 1.042em;
+ border-bottom-right-radius: 1.042em;
+ }
+}
+
+.rdrDayStartOfMonth, .rdrDayStartOfWeek{
+ .rdrDayInPreview, .rdrDayEndPreview{
+ border-top-left-radius: 1.333em;
+ border-bottom-left-radius: 1.333em;
+ border-left-width: 1px;
+ left: -2px;
+ }
+}
+
+.rdrDayEndOfMonth, .rdrDayEndOfWeek{
+ .rdrDayInPreview, .rdrDayStartPreview{
+ border-top-right-radius: 1.333em;
+ border-bottom-right-radius: 1.333em;
+ border-right-width: 1px;
+ right: -2px;
+ }
+}
+
+
+.rdrDayStartPreview, .rdrDayInPreview, .rdrDayEndPreview{
+ background: rgba(255, 255, 255, 0.09);
+ position: absolute;
+ top: 3px;
+ left: 0px;
+ right: 0px;
+ bottom: 3px;
+ pointer-events: none;
+ border: 0px solid currentColor;
+ z-index: 1;
+}
+
+
+.rdrDayStartPreview{
+ border-top-width: 1px;
+ border-left-width: 1px;
+ border-bottom-width: 1px;
+ border-top-left-radius: 1.333em;
+ border-bottom-left-radius: 1.333em;
+ left: -2px;
+}
+
+.rdrDayInPreview{
+ border-top-width: 1px;
+ border-bottom-width: 1px;
+}
+
+.rdrDayEndPreview{
+ border-top-width: 1px;
+ border-right-width: 1px;
+ border-bottom-width: 1px;
+ border-top-right-radius: 1.333em;
+ border-bottom-right-radius: 1.333em;
+ right: -2px;
+}
+
+.rdrDefinedRangesWrapper{
+ font-size: 12px;
+ width: 226px;
+ border-right: solid 1px #eff2f7;
+ background: #fff;
+}
+
+.rdrStaticRange{
+ border: 0;
+ cursor: pointer;
+ display: block;
+ outline: 0;
+ border-bottom: 1px solid #eff2f7;
+ padding: 0;
+ background: #fff;
+ &:hover, &:focus{
+ .rdrStaticRangeLabel{
+ background: #eff2f7;
+ }
+ }
+}
+
+.rdrStaticRangeLabel{
+ display: block;
+ outline: 0;
+ line-height: 18px;
+ padding: 10px 20px;
+ text-align: left;
+}
+
+.rdrInputRanges{
+ padding: 10px 0;
+}
+
+.rdrInputRange{
+ align-items: center;
+ padding: 5px 20px;
+}
+
+.rdrInputRangeInput{
+ width: 30px;
+ height: 30px;
+ line-height: 30px;
+ border-radius: 4px;
+ text-align: center;
+ border: solid 1px rgb(222, 231, 235);
+ margin-right: 10px;
+ &:focus, &:hover{
+ border-color: rgb(180, 191, 196);
+ outline: 0;
+ }
+}
+
+.rdrCalendarWrapper:not(.rdrDateRangeWrapper) .rdrDayHovered .rdrDayNumber:after{
+ content: '';
+ border: 1px solid currentColor;
+ border-radius: 1.333em;
+ position: absolute;
+ top: -2px;
+ bottom: -2px;
+ left: -2px;
+ right: -2px;
+ background: transparent;
+}
\ No newline at end of file
diff --git a/src/utils.js b/src/utils.js
new file mode 100644
index 000000000..ebe962e12
--- /dev/null
+++ b/src/utils.js
@@ -0,0 +1,43 @@
+import { addMonths, areIntervalsOverlapping, startOfMonth, endOfMonth } from 'date-fns';
+
+export function calcFocusDate(currentFocusedDate, props) {
+ const { shownDate, date, months, ranges, focusedRange, displayMode } = props;
+ // find primary date according the props
+ let targetInterval;
+ if (displayMode === 'dateRange') {
+ const range = ranges[focusedRange[0]] || {};
+ targetInterval = {
+ start: range.startDate,
+ end: range.endDate,
+ };
+ } else {
+ targetInterval = {
+ start: date,
+ end: date,
+ };
+ }
+ targetInterval.start = startOfMonth(targetInterval.start || new Date());
+ targetInterval.end = endOfMonth(targetInterval.end || targetInterval.start);
+
+ const targetDate = targetInterval.start || targetInterval.end || shownDate || new Date();
+ // initial focus
+ if (!currentFocusedDate)
+ return shownDate || targetInterval.start || targetInterval.end || new Date();
+ const currentFocusInterval = {
+ start: startOfMonth(currentFocusedDate),
+ end: endOfMonth(addMonths(currentFocusedDate, months - 1)),
+ };
+ // don't change focused if new selection in view area
+ if (areIntervalsOverlapping(targetInterval, currentFocusInterval)) {
+ return currentFocusedDate;
+ }
+ return targetDate;
+}
+
+export function findNextRangeIndex(ranges, currentRangeIndex = -1) {
+ const nextIndex = ranges.findIndex(
+ (range, i) => i > currentRangeIndex && range.autoFocus !== false && !range.disabled
+ );
+ if (currentRangeIndex === -1) return nextIndex;
+ return ranges.findIndex(range => range.autoFocus !== false && !range.disabled);
+}
diff --git a/src/utils/parseInput.js b/src/utils/parseInput.js
deleted file mode 100644
index a18259da2..000000000
--- a/src/utils/parseInput.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import moment from 'moment';
-
-export default function parseInput(input, format, timeOfDay) {
- let output = null;
-
- if (typeof input === 'undefined' || input === null || !input || input === '') {
- output = moment()[timeOfDay]('day');
- } else if (typeof input === 'string') {
- output = moment(input, format)[timeOfDay]('day');
- } else if (typeof input === 'function') {
- output = parseInput(input(moment()[timeOfDay]('day')), format, timeOfDay);
- } else if (input._isAMomentObject) {
- output = input[timeOfDay]('day').clone();
- }
-
- return output;
-}
diff --git a/webpack.config.js b/webpack.config.js
index 5ed9ab830..02571ffb3 100644
--- a/webpack.config.js
+++ b/webpack.config.js
@@ -30,7 +30,7 @@ module.exports = {
},
{
test: /\.s?css$/,
- use: ['style-loader', 'css-loader?module&importLoaders=1', 'postcss-loader'],
+ use: ['style-loader', 'css-loader', 'postcss-loader'],
},
],
},
diff --git a/yarn.lock b/yarn.lock
index e8637e285..b75ee2ac0 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -10,6 +10,14 @@
esutils "^2.0.2"
js-tokens "^3.0.0"
+"@babel/code-frame@^7.0.0-beta.35":
+ version "7.0.0-beta.38"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.38.tgz#c0af5930617e55e050336838e3a3670983b0b2b2"
+ dependencies:
+ chalk "^2.0.0"
+ esutils "^2.0.2"
+ js-tokens "^3.0.0"
+
"@babel/helper-function-name@7.0.0-beta.31":
version "7.0.0-beta.31"
resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.31.tgz#afe63ad799209989348b1109b44feb66aa245f57"
@@ -55,6 +63,14 @@
lodash "^4.2.0"
to-fast-properties "^2.0.0"
+"@types/node@*":
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-9.3.0.tgz#3a129cda7c4e5df2409702626892cb4b96546dd5"
+
+abab@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e"
+
abbrev@1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
@@ -72,6 +88,12 @@ acorn-dynamic-import@^2.0.0:
dependencies:
acorn "^4.0.3"
+acorn-globals@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538"
+ dependencies:
+ acorn "^5.0.0"
+
acorn-jsx@^3.0.0:
version "3.0.1"
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b"
@@ -86,7 +108,7 @@ acorn@^4.0.3:
version "4.0.13"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787"
-acorn@^5.0.0, acorn@^5.2.1:
+acorn@^5.0.0, acorn@^5.1.2, acorn@^5.2.1:
version "5.3.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.3.0.tgz#7446d39459c54fb49a80e6ee6478149b940ec822"
@@ -146,7 +168,7 @@ ansi-styles@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
-ansi-styles@^3.1.0:
+ansi-styles@^3.1.0, ansi-styles@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88"
dependencies:
@@ -159,6 +181,12 @@ anymatch@^1.3.0:
micromatch "^2.1.5"
normalize-path "^2.0.0"
+append-transform@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991"
+ dependencies:
+ default-require-extensions "^1.0.0"
+
aproba@^1.0.3:
version "1.2.0"
resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a"
@@ -192,6 +220,10 @@ arr-flatten@^1.0.1:
version "1.1.0"
resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1"
+array-equal@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93"
+
array-find-index@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1"
@@ -225,7 +257,7 @@ array-unique@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53"
-arrify@^1.0.0:
+arrify@^1.0.0, arrify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
@@ -263,19 +295,19 @@ ast-types-flow@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz#f70b735c6bca1a5c9c22d982c3e39e7feba3bdad"
+astral-regex@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
+
async-each@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
-async-foreach@^0.1.3:
- version "0.1.3"
- resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542"
-
-async@^1.5.2:
+async@^1.4.0, async@^1.5.2:
version "1.5.2"
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
-async@^2.1.2:
+async@^2.1.2, async@^2.1.4:
version "2.6.0"
resolved "https://registry.yarnpkg.com/async/-/async-2.6.0.tgz#61a29abb6fcc026fea77e56d1c6ec53a795951f4"
dependencies:
@@ -354,7 +386,7 @@ babel-code-frame@^6.22.0, babel-code-frame@^6.26.0:
esutils "^2.0.2"
js-tokens "^3.0.2"
-babel-core@^6.26.0:
+babel-core@^6.0.0, babel-core@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.26.0.tgz#af32f78b31a6fcef119c87b0fd8d9753f03a0bb8"
dependencies:
@@ -389,7 +421,7 @@ babel-eslint@^8.1.2:
eslint-scope "~3.7.1"
eslint-visitor-keys "^1.0.0"
-babel-generator@^6.26.0:
+babel-generator@^6.18.0, babel-generator@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5"
dependencies:
@@ -511,6 +543,13 @@ babel-helpers@^6.24.1:
babel-runtime "^6.22.0"
babel-template "^6.24.1"
+babel-jest@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-22.1.0.tgz#7fae6f655fffe77e818a8c2868c754a42463fdfd"
+ dependencies:
+ babel-plugin-istanbul "^4.1.5"
+ babel-preset-jest "^22.1.0"
+
babel-loader@^7.1.2:
version "7.1.2"
resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-7.1.2.tgz#f6cbe122710f1aa2af4d881c6d5b54358ca24126"
@@ -531,6 +570,22 @@ babel-plugin-check-es2015-constants@^6.22.0:
dependencies:
babel-runtime "^6.22.0"
+babel-plugin-date-fns@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-date-fns/-/babel-plugin-date-fns-0.1.0.tgz#6ad4e66129bc051bec9300a0a256e73a983c04a6"
+
+babel-plugin-istanbul@^4.1.5:
+ version "4.1.5"
+ resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.5.tgz#6760cdd977f411d3e175bb064f2bc327d99b2b6e"
+ dependencies:
+ find-up "^2.1.0"
+ istanbul-lib-instrument "^1.7.5"
+ test-exclude "^4.1.1"
+
+babel-plugin-jest-hoist@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.1.0.tgz#c1281dd7887d77a1711dc760468c3b8285dde9ee"
+
babel-plugin-syntax-async-functions@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95"
@@ -539,6 +594,10 @@ babel-plugin-syntax-exponentiation-operator@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de"
+babel-plugin-syntax-export-extensions@^6.8.0:
+ version "6.13.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721"
+
babel-plugin-syntax-flow@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz#4c3ab20a2af26aa20cd25995c398c4eb70310c8d"
@@ -547,7 +606,7 @@ babel-plugin-syntax-jsx@^6.3.13, babel-plugin-syntax-jsx@^6.8.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
-babel-plugin-syntax-object-rest-spread@^6.8.0:
+babel-plugin-syntax-object-rest-spread@^6.13.0, babel-plugin-syntax-object-rest-spread@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
@@ -739,6 +798,13 @@ babel-plugin-transform-exponentiation-operator@^6.22.0:
babel-plugin-syntax-exponentiation-operator "^6.8.0"
babel-runtime "^6.22.0"
+babel-plugin-transform-export-extensions@^6.22.0:
+ version "6.22.0"
+ resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653"
+ dependencies:
+ babel-plugin-syntax-export-extensions "^6.8.0"
+ babel-runtime "^6.22.0"
+
babel-plugin-transform-flow-strip-types@^6.22.0:
version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz#84cb672935d43714fdc32bce84568d87441cf7cf"
@@ -843,6 +909,13 @@ babel-preset-flow@^6.23.0:
dependencies:
babel-plugin-transform-flow-strip-types "^6.22.0"
+babel-preset-jest@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-22.1.0.tgz#ff4e704102f9642765e2254226050561d8942ec9"
+ dependencies:
+ babel-plugin-jest-hoist "^22.1.0"
+ babel-plugin-syntax-object-rest-spread "^6.13.0"
+
babel-preset-react@^6.24.1:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-preset-react/-/babel-preset-react-6.24.1.tgz#ba69dfaea45fc3ec639b6a4ecea6e17702c91380"
@@ -873,7 +946,7 @@ babel-runtime@^6.18.0, babel-runtime@^6.22.0, babel-runtime@^6.26.0:
core-js "^2.4.0"
regenerator-runtime "^0.11.0"
-babel-template@^6.24.1, babel-template@^6.26.0:
+babel-template@^6.16.0, babel-template@^6.24.1, babel-template@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.26.0.tgz#de03e2d16396b069f46dd9fff8521fb1a0e35e02"
dependencies:
@@ -883,7 +956,7 @@ babel-template@^6.24.1, babel-template@^6.26.0:
babylon "^6.18.0"
lodash "^4.17.4"
-babel-traverse@^6.24.1, babel-traverse@^6.26.0:
+babel-traverse@^6.18.0, babel-traverse@^6.24.1, babel-traverse@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.26.0.tgz#46a9cbd7edcc62c8e5c064e2d2d8d0f4035766ee"
dependencies:
@@ -897,7 +970,7 @@ babel-traverse@^6.24.1, babel-traverse@^6.26.0:
invariant "^2.2.2"
lodash "^4.17.4"
-babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
+babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.24.1, babel-types@^6.26.0:
version "6.26.0"
resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.26.0.tgz#a3b073f94ab49eb6fa55cd65227a334380632497"
dependencies:
@@ -1029,6 +1102,16 @@ brorand@^1.0.1:
version "1.1.0"
resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
+browser-process-hrtime@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-0.1.2.tgz#425d68a58d3447f02a04aa894187fce8af8b7b8e"
+
+browser-resolve@^1.11.2:
+ version "1.11.2"
+ resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce"
+ dependencies:
+ resolve "1.1.7"
+
browserify-aes@^1.0.0, browserify-aes@^1.0.4:
version "1.1.1"
resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.1.1.tgz#38b7ab55edb806ff2dcda1a7f1620773a477c49f"
@@ -1095,6 +1178,12 @@ browserslist@^2.1.2, browserslist@^2.10.2:
caniuse-lite "^1.0.30000784"
electron-to-chromium "^1.3.30"
+bser@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/bser/-/bser-2.0.0.tgz#9ac78d3ed5d915804fd87acb158bc797147a1719"
+ dependencies:
+ node-int64 "^0.4.0"
+
buffer-indexof@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/buffer-indexof/-/buffer-indexof-1.1.1.tgz#52fabcc6a606d1a00302802648ef68f639da268c"
@@ -1133,6 +1222,10 @@ callsites@^0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca"
+callsites@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50"
+
camel-case@3.0.x:
version "3.0.0"
resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73"
@@ -1184,10 +1277,6 @@ caniuse-lite@^1.0.30000784:
version "1.0.30000787"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000787.tgz#a76c4fa1d6ac00640447ec83c1e7c6b33dd615c5"
-caseless@~0.11.0:
- version "0.11.0"
- resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
-
caseless@~0.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
@@ -1199,7 +1288,7 @@ center-align@^0.1.1:
align-text "^0.1.3"
lazy-cache "^1.0.3"
-chalk@^1.1.1, chalk@^1.1.3:
+chalk@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
dependencies:
@@ -1209,7 +1298,7 @@ chalk@^1.1.1, chalk@^1.1.3:
strip-ansi "^3.0.0"
supports-color "^2.0.0"
-chalk@^2.0.0, chalk@^2.1.0, chalk@^2.3.0:
+chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba"
dependencies:
@@ -1221,6 +1310,17 @@ chardet@^0.4.0:
version "0.4.2"
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz#b5473b33dc97c424e5d98dc87d55d4d8a29c8bf2"
+cheerio@^1.0.0-rc.2:
+ version "1.0.0-rc.2"
+ resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.2.tgz#4b9f53a81b27e4d5dac31c0ffd0cfa03cc6830db"
+ dependencies:
+ css-select "~1.2.0"
+ dom-serializer "~0.1.0"
+ entities "~1.1.1"
+ htmlparser2 "^3.9.1"
+ lodash "^4.15.0"
+ parse5 "^3.0.1"
+
chokidar@^1.6.0, chokidar@^1.6.1, chokidar@^1.7.0:
version "1.7.0"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468"
@@ -1236,6 +1336,10 @@ chokidar@^1.6.0, chokidar@^1.6.1, chokidar@^1.7.0:
optionalDependencies:
fsevents "^1.0.0"
+ci-info@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.1.2.tgz#03561259db48d0474c8bdc90f5b47b068b6bbfb4"
+
cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3:
version "1.0.4"
resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.4.tgz#8760e4ecc272f4c363532f926d874aae2c1397de"
@@ -1289,6 +1393,14 @@ cliui@^3.2.0:
strip-ansi "^3.0.1"
wrap-ansi "^2.0.0"
+cliui@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.0.0.tgz#743d4650e05f36d1ed2575b59638d87322bfbbcc"
+ dependencies:
+ string-width "^2.1.1"
+ strip-ansi "^4.0.0"
+ wrap-ansi "^2.0.0"
+
clone@^1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.3.tgz#298d7e2231660f40c003c2ed3140decf3f53085f"
@@ -1339,6 +1451,10 @@ colormin@^1.0.5:
css-color-names "0.0.4"
has "^1.0.1"
+colors@0.5.x:
+ version "0.5.1"
+ resolved "https://registry.yarnpkg.com/colors/-/colors-0.5.1.tgz#7d0023eaeb154e8ee9fce75dcb923d0ed1667774"
+
colors@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63"
@@ -1349,7 +1465,7 @@ combined-stream@^1.0.5, combined-stream@~1.0.5:
dependencies:
delayed-stream "~1.0.0"
-commander@2.12.x, commander@^2.11.0, commander@^2.9.0, commander@~2.12.1:
+commander@2.12.x, commander@^2.11.0, commander@~2.12.1:
version "2.12.2"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555"
@@ -1413,11 +1529,15 @@ content-disposition@0.5.2:
version "0.5.2"
resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4"
+content-type-parser@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7"
+
content-type@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b"
-convert-source-map@^1.5.0:
+convert-source-map@^1.4.0, convert-source-map@^1.5.0:
version "1.5.1"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.1.tgz#b8278097b9bc229365de5c62cf5fcaed8b5599e5"
@@ -1480,13 +1600,6 @@ create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
-cross-spawn@^3.0.0:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
- dependencies:
- lru-cache "^4.0.1"
- which "^1.2.9"
-
cross-spawn@^5.0.1, cross-spawn@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449"
@@ -1555,18 +1668,7 @@ css-loader@^0.28.8:
postcss-value-parser "^3.3.0"
source-list-map "^2.0.0"
-css-modules-loader-core@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/css-modules-loader-core/-/css-modules-loader-core-1.1.0.tgz#5908668294a1becd261ae0a4ce21b0b551f21d16"
- dependencies:
- icss-replace-symbols "1.1.0"
- postcss "6.0.1"
- postcss-modules-extract-imports "1.1.0"
- postcss-modules-local-by-default "1.2.0"
- postcss-modules-scope "1.1.0"
- postcss-modules-values "1.3.0"
-
-css-select@^1.1.0:
+css-select@^1.1.0, css-select@~1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858"
dependencies:
@@ -1635,6 +1737,16 @@ csso@~2.3.1:
clap "^1.0.9"
source-map "^0.5.3"
+cssom@0.3.x, "cssom@>= 0.3.2 < 0.4.0":
+ version "0.3.2"
+ resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b"
+
+"cssstyle@>= 0.2.37 < 0.3.0":
+ version "0.2.37"
+ resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54"
+ dependencies:
+ cssom "0.3.x"
+
currently-unhandled@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea"
@@ -1657,6 +1769,10 @@ dashdash@^1.12.0:
dependencies:
assert-plus "^1.0.0"
+date-fns@2.0.0-alpha.7:
+ version "2.0.0-alpha.7"
+ resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-2.0.0-alpha.7.tgz#245ad16f95764eababfb2c0a41fd5d033c20e57a"
+
date-now@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b"
@@ -1689,6 +1805,12 @@ deep-is@~0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
+default-require-extensions@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8"
+ dependencies:
+ strip-bom "^2.0.0"
+
define-properties@^1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94"
@@ -1756,10 +1878,18 @@ detect-libc@^1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b"
+detect-newline@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
+
detect-node@^2.0.3:
version "2.0.3"
resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.3.tgz#a2033c09cc8e158d37748fbde7507832bd6ce127"
+diff@^3.2.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/diff/-/diff-3.4.0.tgz#b1d85507daf3964828de54b37d0d73ba67dda56c"
+
diffie-hellman@^5.0.0:
version "5.0.2"
resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e"
@@ -1768,6 +1898,10 @@ diffie-hellman@^5.0.0:
miller-rabin "^4.0.0"
randombytes "^2.0.0"
+discontinuous-range@1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/discontinuous-range/-/discontinuous-range-1.0.0.tgz#e38331f0844bba49b9a9cb71c771585aab1bc65a"
+
dns-equal@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/dns-equal/-/dns-equal-1.0.0.tgz#b39e7f1da6eb0a75ba9c17324b34753c47e0654d"
@@ -1804,7 +1938,7 @@ dom-converter@~0.1:
dependencies:
utila "~0.3"
-dom-serializer@0:
+dom-serializer@0, dom-serializer@~0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82"
dependencies:
@@ -1819,7 +1953,7 @@ domain-browser@^1.1.1:
version "1.1.7"
resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc"
-domelementtype@1:
+domelementtype@1, domelementtype@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2"
@@ -1827,12 +1961,22 @@ domelementtype@~1.1.1:
version "1.1.3"
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b"
+domexception@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.0.tgz#81fe5df81b3f057052cde3a9fa9bf536a85b9ab0"
+
domhandler@2.1:
version "2.1.0"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594"
dependencies:
domelementtype "1"
+domhandler@^2.3.0:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259"
+ dependencies:
+ domelementtype "1"
+
domutils@1.1:
version "1.1.6"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485"
@@ -1846,6 +1990,13 @@ domutils@1.5.1:
dom-serializer "0"
domelementtype "1"
+domutils@^1.5.1:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff"
+ dependencies:
+ dom-serializer "0"
+ domelementtype "1"
+
ecc-jsbn@~0.1.1:
version "0.1.1"
resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
@@ -1905,10 +2056,51 @@ enhanced-resolve@^3.4.0:
object-assign "^4.0.1"
tapable "^0.2.7"
-entities@~1.1.1:
+entities@^1.1.1, entities@~1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0"
+enzyme-adapter-react-16@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.1.1.tgz#a8f4278b47e082fbca14f5bfb1ee50ee650717b4"
+ dependencies:
+ enzyme-adapter-utils "^1.3.0"
+ lodash "^4.17.4"
+ object.assign "^4.0.4"
+ object.values "^1.0.4"
+ prop-types "^15.6.0"
+ react-reconciler "^0.7.0"
+ react-test-renderer "^16.0.0-0"
+
+enzyme-adapter-utils@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/enzyme-adapter-utils/-/enzyme-adapter-utils-1.3.0.tgz#d6c85756826c257a8544d362cc7a67e97ea698c7"
+ dependencies:
+ lodash "^4.17.4"
+ object.assign "^4.0.4"
+ prop-types "^15.6.0"
+
+enzyme@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479"
+ dependencies:
+ cheerio "^1.0.0-rc.2"
+ function.prototype.name "^1.0.3"
+ has "^1.0.1"
+ is-boolean-object "^1.0.0"
+ is-callable "^1.1.3"
+ is-number-object "^1.0.3"
+ is-string "^1.0.4"
+ is-subset "^0.1.1"
+ lodash "^4.17.4"
+ object-inspect "^1.5.0"
+ object-is "^1.0.1"
+ object.assign "^4.1.0"
+ object.entries "^1.0.4"
+ object.values "^1.0.4"
+ raf "^3.4.0"
+ rst-selector-parser "^2.2.3"
+
errno@^0.1.3:
version "0.1.6"
resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026"
@@ -1927,7 +2119,7 @@ error-stack-parser@^1.3.6:
dependencies:
stackframe "^0.3.1"
-es-abstract@^1.7.0:
+es-abstract@^1.5.1, es-abstract@^1.6.1, es-abstract@^1.7.0:
version "1.10.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.10.0.tgz#1ecb36c197842a00d8ee4c2dfd8646bb97d60864"
dependencies:
@@ -2005,6 +2197,17 @@ escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+escodegen@^1.9.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.9.0.tgz#9811a2f265dc1cd3894420ee3717064b632b8852"
+ dependencies:
+ esprima "^3.1.3"
+ estraverse "^4.2.0"
+ esutils "^2.0.2"
+ optionator "^0.8.1"
+ optionalDependencies:
+ source-map "~0.5.6"
+
escope@^3.6.0:
version "3.6.0"
resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3"
@@ -2141,6 +2344,10 @@ esprima@^2.6.0:
version "2.7.3"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
+esprima@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
+
esprima@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.0.tgz#4499eddcd1110e0b218bacf2fa7f7f59f55ca804"
@@ -2158,7 +2365,7 @@ esrecurse@^4.1.0:
estraverse "^4.1.0"
object-assign "^4.0.1"
-estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1:
+estraverse@^4.0.0, estraverse@^4.1.0, estraverse@^4.1.1, estraverse@^4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13"
@@ -2198,6 +2405,12 @@ evp_bytestokey@^1.0.0, evp_bytestokey@^1.0.3:
md5.js "^1.3.4"
safe-buffer "^5.1.1"
+exec-sh@^0.2.0:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.1.tgz#163b98a6e89e6b65b47c2a28d215bc1f63989c38"
+ dependencies:
+ merge "^1.1.3"
+
execa@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777"
@@ -2210,6 +2423,10 @@ execa@^0.7.0:
signal-exit "^3.0.0"
strip-eof "^1.0.0"
+exit@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
+
expand-brackets@^0.1.4:
version "0.1.5"
resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b"
@@ -2222,6 +2439,17 @@ expand-range@^1.8.1:
dependencies:
fill-range "^2.1.0"
+expect@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/expect/-/expect-22.1.0.tgz#f8f9b019ab275d859cbefed531fbaefe8972431d"
+ dependencies:
+ ansi-styles "^3.2.0"
+ jest-diff "^22.1.0"
+ jest-get-type "^22.1.0"
+ jest-matcher-utils "^22.1.0"
+ jest-message-util "^22.1.0"
+ jest-regex-util "^22.1.0"
+
express@^4.16.2:
version "4.16.2"
resolved "https://registry.yarnpkg.com/express/-/express-4.16.2.tgz#e35c6dfe2d64b7dca0a5cd4f21781be3299e076c"
@@ -2315,6 +2543,12 @@ faye-websocket@~0.11.0:
dependencies:
websocket-driver ">=0.5.1"
+fb-watchman@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.0.tgz#54e9abf7dfa2f26cd9b1636c588c1afc05de5d58"
+ dependencies:
+ bser "^2.0.0"
+
fbjs@^0.8.16:
version "0.8.16"
resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.16.tgz#5e67432f550dc41b572bf55847b8aca64e5337db"
@@ -2344,6 +2578,13 @@ filename-regex@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26"
+fileset@^2.0.2:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/fileset/-/fileset-2.0.3.tgz#8e7548a96d3cc2327ee5e674168723a333bba2a0"
+ dependencies:
+ glob "^7.0.3"
+ minimatch "^3.0.3"
+
fill-range@^2.1.0:
version "2.2.3"
resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723"
@@ -2450,7 +2691,7 @@ fs.realpath@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
-fsevents@^1.0.0:
+fsevents@^1.0.0, fsevents@^1.1.1:
version "1.1.3"
resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8"
dependencies:
@@ -2474,10 +2715,18 @@ fstream@^1.0.0, fstream@^1.0.10, fstream@^1.0.2:
mkdirp ">=0.5 0"
rimraf "2"
-function-bind@^1.0.2, function-bind@^1.1.1:
+function-bind@^1.0.2, function-bind@^1.1.0, function-bind@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+function.prototype.name@^1.0.3:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327"
+ dependencies:
+ define-properties "^1.1.2"
+ function-bind "^1.1.1"
+ is-callable "^1.1.3"
+
functional-red-black-tree@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
@@ -2495,28 +2744,6 @@ gauge@~2.7.3:
strip-ansi "^3.0.1"
wide-align "^1.1.0"
-gaze@^1.0.0:
- version "1.1.2"
- resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105"
- dependencies:
- globule "^1.0.0"
-
-generate-function@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74"
-
-generate-object-property@^1.1.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0"
- dependencies:
- is-property "^1.0.0"
-
-generic-names@^1.0.2:
- version "1.0.3"
- resolved "https://registry.yarnpkg.com/generic-names/-/generic-names-1.0.3.tgz#2d786a121aee508876796939e8e3bff836c20917"
- dependencies:
- loader-utils "^0.2.16"
-
get-caller-file@^1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5"
@@ -2552,17 +2779,7 @@ glob-parent@^2.0.0:
dependencies:
is-glob "^2.0.0"
-glob@^6.0.4:
- version "6.0.4"
- resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22"
- dependencies:
- inflight "^1.0.4"
- inherits "2"
- minimatch "2 || 3"
- once "^1.3.0"
- path-is-absolute "^1.0.0"
-
-glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@~7.1.1:
+glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2:
version "7.1.2"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
dependencies:
@@ -2613,22 +2830,28 @@ globby@^6.1.0:
pify "^2.0.0"
pinkie-promise "^2.0.0"
-globule@^1.0.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/globule/-/globule-1.2.0.tgz#1dc49c6822dd9e8a2fa00ba2a295006e8664bd09"
- dependencies:
- glob "~7.1.1"
- lodash "~4.17.4"
- minimatch "~3.0.2"
-
-graceful-fs@^4.1.2, graceful-fs@^4.1.4:
+graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4:
version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
+growly@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081"
+
handle-thing@^1.2.5:
version "1.2.5"
resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4"
+handlebars@^4.0.3:
+ version "4.0.11"
+ resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.11.tgz#630a35dfe0294bc281edae6ffc5d329fc7982dcc"
+ dependencies:
+ async "^1.4.0"
+ optimist "^0.6.1"
+ source-map "^0.4.4"
+ optionalDependencies:
+ uglify-js "^2.6"
+
har-schema@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e"
@@ -2637,15 +2860,6 @@ har-schema@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
-har-validator@~2.0.6:
- version "2.0.6"
- resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d"
- dependencies:
- chalk "^1.1.1"
- commander "^2.9.0"
- is-my-json-valid "^2.12.4"
- pinkie-promise "^2.0.0"
-
har-validator@~4.2.1:
version "4.2.1"
resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a"
@@ -2674,6 +2888,10 @@ has-flag@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
+has-symbols@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
+
has-unicode@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
@@ -2766,6 +2984,12 @@ html-comment-regex@^1.1.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e"
+html-encoding-sniffer@^1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8"
+ dependencies:
+ whatwg-encoding "^1.0.1"
+
html-entities@^1.2.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f"
@@ -2794,6 +3018,17 @@ html-webpack-plugin@^2.30.1:
pretty-error "^2.0.2"
toposort "^1.0.0"
+htmlparser2@^3.9.1:
+ version "3.9.2"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338"
+ dependencies:
+ domelementtype "^1.3.0"
+ domhandler "^2.3.0"
+ domutils "^1.5.1"
+ entities "^1.1.1"
+ inherits "^2.0.1"
+ readable-stream "^2.0.2"
+
htmlparser2@~3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe"
@@ -2860,7 +3095,7 @@ iconv-lite@0.4.19, iconv-lite@^0.4.17, iconv-lite@~0.4.13:
version "0.4.19"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b"
-icss-replace-symbols@1.1.0, icss-replace-symbols@^1.1.0:
+icss-replace-symbols@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded"
@@ -2885,14 +3120,17 @@ import-local@^0.1.1:
pkg-dir "^2.0.0"
resolve-cwd "^2.0.0"
+import-local@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/import-local/-/import-local-1.0.0.tgz#5e4ffdc03f4fe6c009c6729beb29631c2f8227bc"
+ dependencies:
+ pkg-dir "^2.0.0"
+ resolve-cwd "^2.0.0"
+
imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
-in-publish@^2.0.0:
- version "2.0.0"
- resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
-
indent-string@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80"
@@ -2987,6 +3225,10 @@ is-binary-path@^1.0.0:
dependencies:
binary-extensions "^1.0.0"
+is-boolean-object@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.0.0.tgz#98f8b28030684219a95f375cfbd88ce3405dff93"
+
is-buffer@^1.1.5:
version "1.1.6"
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
@@ -3001,6 +3243,12 @@ is-callable@^1.1.1, is-callable@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2"
+is-ci@^1.0.10:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5"
+ dependencies:
+ ci-info "^1.0.0"
+
is-date-object@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
@@ -3047,6 +3295,10 @@ is-fullwidth-code-point@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
+is-generator-fn@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-1.0.0.tgz#969d49e1bb3329f6bb7f09089be26578b2ddd46a"
+
is-glob@^2.0.0, is-glob@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863"
@@ -3059,14 +3311,9 @@ is-glob@^3.1.0:
dependencies:
is-extglob "^2.1.0"
-is-my-json-valid@^2.12.4:
- version "2.17.1"
- resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.1.tgz#3da98914a70a22f0a8563ef1511a246c6fc55471"
- dependencies:
- generate-function "^2.0.0"
- generate-object-property "^1.1.0"
- jsonpointer "^4.0.0"
- xtend "^4.0.0"
+is-number-object@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.3.tgz#f265ab89a9f445034ef6aff15a8f00b00f551799"
is-number@^2.1.0:
version "2.1.0"
@@ -3112,10 +3359,6 @@ is-promise@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.1.0.tgz#79a2a9ece7f096e80f36d2b2f3bc16c1ff4bf3fa"
-is-property@^1.0.0:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
-
is-regex@^1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
@@ -3130,6 +3373,14 @@ is-stream@^1.0.1, is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
+is-string@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.4.tgz#cc3a9b69857d621e963725a24caeec873b826e64"
+
+is-subset@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/is-subset/-/is-subset-0.1.1.tgz#8a59117d932de1de00f245fcdd39ce43f1e939a6"
+
is-svg@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9"
@@ -3181,49 +3432,391 @@ isstream@~0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
-jest-docblock@^21.0.0:
- version "21.2.0"
- resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414"
+istanbul-api@^1.1.14:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.1.tgz#0c60a0515eb11c7d65c6b50bba2c6e999acd8620"
+ dependencies:
+ async "^2.1.4"
+ fileset "^2.0.2"
+ istanbul-lib-coverage "^1.1.1"
+ istanbul-lib-hook "^1.1.0"
+ istanbul-lib-instrument "^1.9.1"
+ istanbul-lib-report "^1.1.2"
+ istanbul-lib-source-maps "^1.2.2"
+ istanbul-reports "^1.1.3"
+ js-yaml "^3.7.0"
+ mkdirp "^0.5.1"
+ once "^1.4.0"
-js-base64@^2.1.8, js-base64@^2.1.9:
- version "2.4.0"
- resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa"
+istanbul-lib-coverage@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da"
-js-tokens@^3.0.0, js-tokens@^3.0.2:
- version "3.0.2"
- resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
+istanbul-lib-hook@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.1.0.tgz#8538d970372cb3716d53e55523dd54b557a8d89b"
+ dependencies:
+ append-transform "^0.4.0"
-js-yaml@^3.4.3, js-yaml@^3.9.1:
- version "3.10.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc"
+istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.8.0, istanbul-lib-instrument@^1.9.1:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.1.tgz#250b30b3531e5d3251299fdd64b0b2c9db6b558e"
dependencies:
- argparse "^1.0.7"
- esprima "^4.0.0"
+ babel-generator "^6.18.0"
+ babel-template "^6.16.0"
+ babel-traverse "^6.18.0"
+ babel-types "^6.18.0"
+ babylon "^6.18.0"
+ istanbul-lib-coverage "^1.1.1"
+ semver "^5.3.0"
-js-yaml@~3.7.0:
- version "3.7.0"
- resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
+istanbul-lib-report@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.2.tgz#922be27c13b9511b979bd1587359f69798c1d425"
dependencies:
- argparse "^1.0.7"
- esprima "^2.6.0"
+ istanbul-lib-coverage "^1.1.1"
+ mkdirp "^0.5.1"
+ path-parse "^1.0.5"
+ supports-color "^3.1.2"
-jsbn@~0.1.0:
- version "0.1.1"
- resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
+istanbul-lib-source-maps@^1.2.1, istanbul-lib-source-maps@^1.2.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.2.tgz#750578602435f28a0c04ee6d7d9e0f2960e62c1c"
+ dependencies:
+ debug "^3.1.0"
+ istanbul-lib-coverage "^1.1.1"
+ mkdirp "^0.5.1"
+ rimraf "^2.6.1"
+ source-map "^0.5.3"
-jsesc@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
+istanbul-reports@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.3.tgz#3b9e1e8defb6d18b1d425da8e8b32c5a163f2d10"
+ dependencies:
+ handlebars "^4.0.3"
-jsesc@~0.5.0:
- version "0.5.0"
- resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
+jest-changed-files@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-22.1.4.tgz#1f7844bcb739dec07e5899a633c0cb6d5069834e"
+ dependencies:
+ throat "^4.0.0"
-json-loader@^0.5.4:
- version "0.5.7"
- resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
+jest-cli@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-22.1.4.tgz#0fe9f3ac881b0cdc00227114c58583a2ebefcc04"
+ dependencies:
+ ansi-escapes "^3.0.0"
+ chalk "^2.0.1"
+ exit "^0.1.2"
+ glob "^7.1.2"
+ graceful-fs "^4.1.11"
+ import-local "^1.0.0"
+ is-ci "^1.0.10"
+ istanbul-api "^1.1.14"
+ istanbul-lib-coverage "^1.1.1"
+ istanbul-lib-instrument "^1.8.0"
+ istanbul-lib-source-maps "^1.2.1"
+ jest-changed-files "^22.1.4"
+ jest-config "^22.1.4"
+ jest-environment-jsdom "^22.1.4"
+ jest-get-type "^22.1.0"
+ jest-haste-map "^22.1.0"
+ jest-message-util "^22.1.0"
+ jest-regex-util "^22.1.0"
+ jest-resolve-dependencies "^22.1.0"
+ jest-runner "^22.1.4"
+ jest-runtime "^22.1.4"
+ jest-snapshot "^22.1.2"
+ jest-util "^22.1.4"
+ jest-worker "^22.1.0"
+ micromatch "^2.3.11"
+ node-notifier "^5.1.2"
+ realpath-native "^1.0.0"
+ rimraf "^2.5.4"
+ slash "^1.0.0"
+ string-length "^2.0.0"
+ strip-ansi "^4.0.0"
+ which "^1.2.12"
+ yargs "^10.0.3"
-json-schema-traverse@^0.3.0:
+jest-config@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.1.4.tgz#075ffacce83c3e38cf85b1b9ba0d21bd3ee27ad0"
+ dependencies:
+ chalk "^2.0.1"
+ glob "^7.1.1"
+ jest-environment-jsdom "^22.1.4"
+ jest-environment-node "^22.1.4"
+ jest-get-type "^22.1.0"
+ jest-jasmine2 "^22.1.4"
+ jest-regex-util "^22.1.0"
+ jest-resolve "^22.1.4"
+ jest-util "^22.1.4"
+ jest-validate "^22.1.2"
+ pretty-format "^22.1.0"
+
+jest-diff@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.1.0.tgz#0fad9d96c87b453896bf939df3dc8aac6919ac38"
+ dependencies:
+ chalk "^2.0.1"
+ diff "^3.2.0"
+ jest-get-type "^22.1.0"
+ pretty-format "^22.1.0"
+
+jest-docblock@^21.0.0:
+ version "21.2.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414"
+
+jest-docblock@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-22.1.0.tgz#3fe5986d5444cbcb149746eb4b07c57c5a464dfd"
+ dependencies:
+ detect-newline "^2.1.0"
+
+jest-environment-jsdom@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.1.4.tgz#704518ce8375f7ec5de048d1e9c4268b08a03e00"
+ dependencies:
+ jest-mock "^22.1.0"
+ jest-util "^22.1.4"
+ jsdom "^11.5.1"
+
+jest-environment-node@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.1.4.tgz#0f2946e8f8686ce6c5d8fa280ce1cd8d58e869eb"
+ dependencies:
+ jest-mock "^22.1.0"
+ jest-util "^22.1.4"
+
+jest-get-type@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.1.0.tgz#4e90af298ed6181edc85d2da500dbd2753e0d5a9"
+
+jest-haste-map@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-22.1.0.tgz#1174c6ff393f9818ebf1163710d8868b5370da2a"
+ dependencies:
+ fb-watchman "^2.0.0"
+ graceful-fs "^4.1.11"
+ jest-docblock "^22.1.0"
+ jest-worker "^22.1.0"
+ micromatch "^2.3.11"
+ sane "^2.0.0"
+
+jest-jasmine2@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.1.4.tgz#cada0baf50a220c616a9575728b80d4ddedebe8b"
+ dependencies:
+ callsites "^2.0.0"
+ chalk "^2.0.1"
+ co "^4.6.0"
+ expect "^22.1.0"
+ graceful-fs "^4.1.11"
+ is-generator-fn "^1.0.0"
+ jest-diff "^22.1.0"
+ jest-matcher-utils "^22.1.0"
+ jest-message-util "^22.1.0"
+ jest-snapshot "^22.1.2"
+ source-map-support "^0.5.0"
+
+jest-leak-detector@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-22.1.0.tgz#08376644cee07103da069baac19adb0299b772c2"
+ dependencies:
+ pretty-format "^22.1.0"
+
+jest-matcher-utils@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.1.0.tgz#e164665b5d313636ac29f7f6fe9ef0a6ce04febc"
+ dependencies:
+ chalk "^2.0.1"
+ jest-get-type "^22.1.0"
+ pretty-format "^22.1.0"
+
+jest-message-util@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.1.0.tgz#51ba0794cb6e579bfc4e9adfac452f9f1a0293fc"
+ dependencies:
+ "@babel/code-frame" "^7.0.0-beta.35"
+ chalk "^2.0.1"
+ micromatch "^2.3.11"
+ slash "^1.0.0"
+ stack-utils "^1.0.1"
+
+jest-mock@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.1.0.tgz#87ec21c0599325671c9a23ad0e05c86fb5879b61"
+
+jest-regex-util@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-22.1.0.tgz#5daf2fe270074b6da63e5d85f1c9acc866768f53"
+
+jest-resolve-dependencies@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-22.1.0.tgz#340e4139fb13315cd43abc054e6c06136be51e31"
+ dependencies:
+ jest-regex-util "^22.1.0"
+
+jest-resolve@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.1.4.tgz#72b9b371eaac48f84aad4ad732222ffe37692602"
+ dependencies:
+ browser-resolve "^1.11.2"
+ chalk "^2.0.1"
+
+jest-runner@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-22.1.4.tgz#e039039110cb1b31febc0f99e349bf7c94304a2f"
+ dependencies:
+ exit "^0.1.2"
+ jest-config "^22.1.4"
+ jest-docblock "^22.1.0"
+ jest-haste-map "^22.1.0"
+ jest-jasmine2 "^22.1.4"
+ jest-leak-detector "^22.1.0"
+ jest-message-util "^22.1.0"
+ jest-runtime "^22.1.4"
+ jest-util "^22.1.4"
+ jest-worker "^22.1.0"
+ throat "^4.0.0"
+
+jest-runtime@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-22.1.4.tgz#1474d9f5cda518b702e0b25a17d4ef3fc563a20c"
+ dependencies:
+ babel-core "^6.0.0"
+ babel-jest "^22.1.0"
+ babel-plugin-istanbul "^4.1.5"
+ chalk "^2.0.1"
+ convert-source-map "^1.4.0"
+ exit "^0.1.2"
+ graceful-fs "^4.1.11"
+ jest-config "^22.1.4"
+ jest-haste-map "^22.1.0"
+ jest-regex-util "^22.1.0"
+ jest-resolve "^22.1.4"
+ jest-util "^22.1.4"
+ json-stable-stringify "^1.0.1"
+ micromatch "^2.3.11"
+ realpath-native "^1.0.0"
+ slash "^1.0.0"
+ strip-bom "3.0.0"
+ write-file-atomic "^2.1.0"
+ yargs "^10.0.3"
+
+jest-snapshot@^22.1.2:
+ version "22.1.2"
+ resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.1.2.tgz#b270cf6e3098f33aceeafda02b13eb0933dc6139"
+ dependencies:
+ chalk "^2.0.1"
+ jest-diff "^22.1.0"
+ jest-matcher-utils "^22.1.0"
+ mkdirp "^0.5.1"
+ natural-compare "^1.4.0"
+ pretty-format "^22.1.0"
+
+jest-util@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.1.4.tgz#ac8cbd43ee654102f1941f3f0e9d1d789a8b6a9b"
+ dependencies:
+ callsites "^2.0.0"
+ chalk "^2.0.1"
+ graceful-fs "^4.1.11"
+ is-ci "^1.0.10"
+ jest-message-util "^22.1.0"
+ jest-validate "^22.1.2"
+ mkdirp "^0.5.1"
+
+jest-validate@^22.1.2:
+ version "22.1.2"
+ resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.1.2.tgz#c3b06bcba7bd9a850919fe336b5f2a8c3a239404"
+ dependencies:
+ chalk "^2.0.1"
+ jest-get-type "^22.1.0"
+ leven "^2.1.0"
+ pretty-format "^22.1.0"
+
+jest-worker@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-22.1.0.tgz#0987832fe58fbdc205357f4c19b992446368cafb"
+ dependencies:
+ merge-stream "^1.0.1"
+
+jest@^22.1.4:
+ version "22.1.4"
+ resolved "https://registry.yarnpkg.com/jest/-/jest-22.1.4.tgz#9ec71373a38f40ff92a3e5e96ae85687c181bb72"
+ dependencies:
+ jest-cli "^22.1.4"
+
+js-base64@^2.1.9:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa"
+
+js-tokens@^3.0.0, js-tokens@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.2.tgz#9866df395102130e38f7f996bceb65443209c25b"
+
+js-yaml@^3.4.3, js-yaml@^3.7.0, js-yaml@^3.9.1:
+ version "3.10.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.10.0.tgz#2e78441646bd4682e963f22b6e92823c309c62dc"
+ dependencies:
+ argparse "^1.0.7"
+ esprima "^4.0.0"
+
+js-yaml@~3.7.0:
+ version "3.7.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
+ dependencies:
+ argparse "^1.0.7"
+ esprima "^2.6.0"
+
+jsbn@~0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
+
+jsdom@^11.5.1:
+ version "11.5.1"
+ resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.5.1.tgz#5df753b8d0bca20142ce21f4f6c039f99a992929"
+ dependencies:
+ abab "^1.0.3"
+ acorn "^5.1.2"
+ acorn-globals "^4.0.0"
+ array-equal "^1.0.0"
+ browser-process-hrtime "^0.1.2"
+ content-type-parser "^1.0.1"
+ cssom ">= 0.3.2 < 0.4.0"
+ cssstyle ">= 0.2.37 < 0.3.0"
+ domexception "^1.0.0"
+ escodegen "^1.9.0"
+ html-encoding-sniffer "^1.0.1"
+ left-pad "^1.2.0"
+ nwmatcher "^1.4.3"
+ parse5 "^3.0.2"
+ pn "^1.0.0"
+ request "^2.83.0"
+ request-promise-native "^1.0.3"
+ sax "^1.2.1"
+ symbol-tree "^3.2.1"
+ tough-cookie "^2.3.3"
+ webidl-conversions "^4.0.2"
+ whatwg-encoding "^1.0.1"
+ whatwg-url "^6.3.0"
+ xml-name-validator "^2.0.1"
+
+jsesc@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
+
+jsesc@~0.5.0:
+ version "0.5.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d"
+
+json-loader@^0.5.4:
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
+
+json-schema-traverse@^0.3.0:
version "0.3.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
@@ -3257,10 +3850,6 @@ jsonify@~0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73"
-jsonpointer@^4.0.0:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9"
-
jsprim@^1.2.2:
version "1.4.1"
resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
@@ -3302,6 +3891,14 @@ lcid@^1.0.0:
dependencies:
invert-kv "^1.0.0"
+left-pad@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee"
+
+leven@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580"
+
levn@^0.3.0, levn@~0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
@@ -3356,35 +3953,31 @@ locate-path@^2.0.0:
p-locate "^2.0.0"
path-exists "^3.0.0"
-lodash.assign@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7"
-
lodash.camelcase@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
-lodash.clonedeep@^4.3.2:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef"
-
lodash.cond@^4.3.0:
version "4.5.2"
resolved "https://registry.yarnpkg.com/lodash.cond/-/lodash.cond-4.5.2.tgz#f471a1da486be60f6ab955d17115523dd1d255d5"
+lodash.flattendeep@^4.4.0:
+ version "4.4.0"
+ resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
+
lodash.memoize@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
-lodash.mergewith@^4.6.0:
- version "4.6.0"
- resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55"
+lodash.sortby@^4.7.0:
+ version "4.7.0"
+ resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438"
lodash.uniq@^4.5.0:
version "4.5.0"
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
-lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0, lodash@^4.6.1, lodash@~4.17.4:
+lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0, lodash@^4.6.1:
version "4.17.4"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae"
@@ -3430,6 +4023,12 @@ make-dir@^1.0.0:
dependencies:
pify "^3.0.0"
+makeerror@1.0.x:
+ version "1.0.11"
+ resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.11.tgz#e01a5c9109f2af79660e4e8b9587790184f5a96c"
+ dependencies:
+ tmpl "1.0.x"
+
map-obj@^1.0.0, map-obj@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d"
@@ -3462,7 +4061,7 @@ memory-fs@^0.4.0, memory-fs@~0.4.1:
errno "^0.1.3"
readable-stream "^2.0.1"
-meow@^3.3.0, meow@^3.7.0:
+meow@^3.3.0:
version "3.7.0"
resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb"
dependencies:
@@ -3481,6 +4080,16 @@ merge-descriptors@1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61"
+merge-stream@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-1.0.1.tgz#4041202d508a342ba00174008df0c251b8c135e1"
+ dependencies:
+ readable-stream "^2.0.1"
+
+merge@^1.1.3:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.0.tgz#7531e39d4949c281a66b8c5a6e0265e8b05894da"
+
methods@~1.1.2:
version "1.1.2"
resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
@@ -3550,7 +4159,7 @@ minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a"
-"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2:
+minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4:
version "3.0.4"
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
dependencies:
@@ -3560,20 +4169,20 @@ minimist@0.0.8:
version "0.0.8"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
-minimist@^1.1.3, minimist@^1.2.0:
+minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284"
-mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
+minimist@~0.0.1:
+ version "0.0.10"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
+
+mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.1, mkdirp@~0.5.0, mkdirp@~0.5.1:
version "0.5.1"
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
dependencies:
minimist "0.0.8"
-moment@^2.19.4:
- version "2.20.1"
- resolved "https://registry.yarnpkg.com/moment/-/moment-2.20.1.tgz#d6eb1a46cbcc14a2b2f9434112c1ff8907f313fd"
-
ms@2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
@@ -3593,7 +4202,7 @@ mute-stream@0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab"
-nan@^2.3.0, nan@^2.3.2:
+nan@^2.3.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a"
@@ -3607,6 +4216,14 @@ ncname@1.0.x:
dependencies:
xml-char-classes "^1.0.0"
+nearley@^2.7.10:
+ version "2.11.0"
+ resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.0.tgz#5e626c79a6cd2f6ab9e7e5d5805e7668967757ae"
+ dependencies:
+ nomnom "~1.6.2"
+ railroad-diagrams "^1.0.0"
+ randexp "^0.4.2"
+
negotiator@0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9"
@@ -3628,23 +4245,9 @@ node-forge@0.6.33:
version "0.6.33"
resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-0.6.33.tgz#463811879f573d45155ad6a9f43dc296e8e85ebc"
-node-gyp@^3.3.1:
- version "3.6.2"
- resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.2.tgz#9bfbe54562286284838e750eac05295853fa1c60"
- dependencies:
- fstream "^1.0.0"
- glob "^7.0.3"
- graceful-fs "^4.1.2"
- minimatch "^3.0.2"
- mkdirp "^0.5.0"
- nopt "2 || 3"
- npmlog "0 || 1 || 2 || 3 || 4"
- osenv "0"
- request "2"
- rimraf "2"
- semver "~5.3.0"
- tar "^2.0.0"
- which "1"
+node-int64@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b"
node-libs-browser@^2.0.0:
version "2.1.0"
@@ -3674,6 +4277,15 @@ node-libs-browser@^2.0.0:
util "^0.10.3"
vm-browserify "0.0.4"
+node-notifier@^5.1.2:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea"
+ dependencies:
+ growly "^1.3.0"
+ semver "^5.4.1"
+ shellwords "^0.1.1"
+ which "^1.3.0"
+
node-pre-gyp@^0.6.39:
version "0.6.39"
resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649"
@@ -3690,35 +4302,12 @@ node-pre-gyp@^0.6.39:
tar "^2.2.1"
tar-pack "^3.4.0"
-node-sass@^4.7.2:
- version "4.7.2"
- resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.7.2.tgz#9366778ba1469eb01438a9e8592f4262bcb6794e"
- dependencies:
- async-foreach "^0.1.3"
- chalk "^1.1.1"
- cross-spawn "^3.0.0"
- gaze "^1.0.0"
- get-stdin "^4.0.1"
- glob "^7.0.3"
- in-publish "^2.0.0"
- lodash.assign "^4.2.0"
- lodash.clonedeep "^4.3.2"
- lodash.mergewith "^4.6.0"
- meow "^3.7.0"
- mkdirp "^0.5.1"
- nan "^2.3.2"
- node-gyp "^3.3.1"
- npmlog "^4.0.0"
- request "~2.79.0"
- sass-graph "^2.2.4"
- stdout-stream "^1.4.0"
- "true-case-path" "^1.0.2"
-
-"nopt@2 || 3":
- version "3.0.6"
- resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9"
+nomnom@~1.6.2:
+ version "1.6.2"
+ resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.6.2.tgz#84a66a260174408fc5b77a18f888eccc44fb6971"
dependencies:
- abbrev "1"
+ colors "0.5.x"
+ underscore "~1.4.4"
nopt@^4.0.1:
version "4.0.1"
@@ -3765,7 +4354,7 @@ npm-run-path@^2.0.0:
dependencies:
path-key "^2.0.0"
-"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
+npmlog@^4.0.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b"
dependencies:
@@ -3788,6 +4377,10 @@ number-is-nan@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
+nwmatcher@^1.4.3:
+ version "1.4.3"
+ resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.4.3.tgz#64348e3b3d80f035b40ac11563d278f8b72db89c"
+
oauth-sign@~0.8.1, oauth-sign@~0.8.2:
version "0.8.2"
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43"
@@ -3796,10 +4389,43 @@ object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
-object-keys@^1.0.8:
+object-inspect@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.5.0.tgz#9d876c11e40f485c79215670281b767488f9bfe3"
+
+object-is@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6"
+
+object-keys@^1.0.11, object-keys@^1.0.8:
version "1.0.11"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d"
+object.assign@^4.0.4, object.assign@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
+ dependencies:
+ define-properties "^1.1.2"
+ function-bind "^1.1.1"
+ has-symbols "^1.0.0"
+ object-keys "^1.0.11"
+
+object.entries@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.6.1"
+ function-bind "^1.1.0"
+ has "^1.0.1"
+
+object.getownpropertydescriptors@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.5.1"
+
object.omit@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa"
@@ -3807,6 +4433,15 @@ object.omit@^2.0.0:
for-own "^0.1.4"
is-extendable "^0.1.1"
+object.values@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a"
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.6.1"
+ function-bind "^1.1.0"
+ has "^1.0.1"
+
obuf@^1.0.0, obuf@^1.1.1:
version "1.1.1"
resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.1.tgz#104124b6c602c6796881a042541d36db43a5264e"
@@ -3821,7 +4456,7 @@ on-headers@~1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.1.tgz#928f5d0f470d49342651ea6794b0857c100693f7"
-once@^1.3.0, once@^1.3.3:
+once@^1.3.0, once@^1.3.3, once@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
dependencies:
@@ -3839,7 +4474,14 @@ opn@^5.1.0:
dependencies:
is-wsl "^1.1.0"
-optionator@^0.8.2:
+optimist@^0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686"
+ dependencies:
+ minimist "~0.0.1"
+ wordwrap "~0.0.2"
+
+optionator@^0.8.1, optionator@^0.8.2:
version "0.8.2"
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64"
dependencies:
@@ -3882,7 +4524,7 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
-osenv@0, osenv@^0.1.4:
+osenv@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644"
dependencies:
@@ -3956,6 +4598,12 @@ parse-json@^2.2.0:
dependencies:
error-ex "^1.2.0"
+parse5@^3.0.1, parse5@^3.0.2:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c"
+ dependencies:
+ "@types/node" "*"
+
parseurl@~1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.2.tgz#fc289d4ed8993119460c156253262cdc8de65bf3"
@@ -4060,6 +4708,10 @@ pluralize@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777"
+pn@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb"
+
portfinder@^1.0.9:
version "1.0.13"
resolved "https://registry.yarnpkg.com/portfinder/-/portfinder-1.0.13.tgz#bb32ecd87c27104ae6ee44b5a3ccbf0ebb1aede9"
@@ -4186,6 +4838,15 @@ postcss-import@^10.0.0:
read-cache "^1.0.0"
resolve "^1.1.7"
+postcss-import@^11.0.0:
+ version "11.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-11.0.0.tgz#a962e2df82d3bc5a6da6a386841747204f41ef5b"
+ dependencies:
+ postcss "^6.0.1"
+ postcss-value-parser "^3.2.3"
+ read-cache "^1.0.0"
+ resolve "^1.1.7"
+
postcss-js@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-1.0.1.tgz#ffaf29226e399ea74b5dce02cab1729d7addbc7b"
@@ -4302,42 +4963,33 @@ postcss-mixins@^6.0.1:
postcss-simple-vars "^4.1.0"
sugarss "^1.0.0"
-postcss-modules-extract-imports@1.1.0, postcss-modules-extract-imports@^1.1.0:
+postcss-modules-extract-imports@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz#b614c9720be6816eaee35fb3a5faa1dba6a05ddb"
dependencies:
postcss "^6.0.1"
-postcss-modules-local-by-default@1.2.0, postcss-modules-local-by-default@^1.2.0:
+postcss-modules-local-by-default@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069"
dependencies:
css-selector-tokenizer "^0.7.0"
postcss "^6.0.1"
-postcss-modules-scope@1.1.0, postcss-modules-scope@^1.1.0:
+postcss-modules-scope@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90"
dependencies:
css-selector-tokenizer "^0.7.0"
postcss "^6.0.1"
-postcss-modules-values@1.3.0, postcss-modules-values@^1.3.0:
+postcss-modules-values@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20"
dependencies:
icss-replace-symbols "^1.1.0"
postcss "^6.0.1"
-postcss-modules@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/postcss-modules/-/postcss-modules-1.1.0.tgz#c9f94f76ff6addf7c35b842e69ed442118156bb0"
- dependencies:
- css-modules-loader-core "^1.1.0"
- generic-names "^1.0.2"
- postcss "^6.0.1"
- string-hash "^1.1.1"
-
postcss-nested@^2.0.2:
version "2.1.2"
resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-2.1.2.tgz#04057281f9631fef684857fb0119bae04ede03c6"
@@ -4466,14 +5118,6 @@ postcss-zindex@^2.0.1:
postcss "^5.0.4"
uniqs "^2.0.0"
-postcss@6.0.1:
- version "6.0.1"
- resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.1.tgz#000dbd1f8eef217aa368b9a212c5fc40b2a8f3f2"
- dependencies:
- chalk "^1.1.3"
- source-map "^0.5.6"
- supports-color "^3.2.3"
-
postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.16:
version "5.2.18"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.18.tgz#badfa1497d46244f6390f58b319830d9107853c5"
@@ -4543,6 +5187,13 @@ pretty-error@^2.0.2:
renderkid "^2.0.1"
utila "~0.4"
+pretty-format@^22.1.0:
+ version "22.1.0"
+ resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.1.0.tgz#2277605b40ed4529ae4db51ff62f4be817647914"
+ dependencies:
+ ansi-regex "^3.0.0"
+ ansi-styles "^3.2.0"
+
private@^0.1.6, private@^0.1.7:
version "0.1.8"
resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff"
@@ -4610,6 +5261,10 @@ punycode@^1.2.4, punycode@^1.4.1:
version "1.4.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
+punycode@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.0.tgz#5f863edc89b96db09074bad7947bf09056ca4e7d"
+
q@^1.1.2:
version "1.5.1"
resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
@@ -4618,10 +5273,6 @@ qs@6.5.1, qs@~6.5.1:
version "6.5.1"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8"
-qs@~6.3.0:
- version "6.3.2"
- resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.2.tgz#e75bd5f6e268122a2a0e0bda630b2550c166502c"
-
qs@~6.4.0:
version "6.4.0"
resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233"
@@ -4649,6 +5300,23 @@ querystringify@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-1.0.0.tgz#6286242112c5b712fa654e526652bf6a13ff05cb"
+raf@^3.4.0:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/raf/-/raf-3.4.0.tgz#a28876881b4bc2ca9117d4138163ddb80f781575"
+ dependencies:
+ performance-now "^2.1.0"
+
+railroad-diagrams@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e"
+
+randexp@^0.4.2:
+ version "0.4.6"
+ resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3"
+ dependencies:
+ discontinuous-range "1.0.0"
+ ret "~0.1.10"
+
randomatic@^1.1.3:
version "1.1.7"
resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.7.tgz#c7abe9cc8b87c0baa876b19fde83fd464797e38c"
@@ -4720,6 +5388,23 @@ react-proxy@^3.0.0-alpha.0:
dependencies:
lodash "^4.6.1"
+react-reconciler@^0.7.0:
+ version "0.7.0"
+ resolved "https://registry.yarnpkg.com/react-reconciler/-/react-reconciler-0.7.0.tgz#9614894103e5f138deeeb5eabaf3ee80eb1d026d"
+ dependencies:
+ fbjs "^0.8.16"
+ loose-envify "^1.1.0"
+ object-assign "^4.1.1"
+ prop-types "^15.6.0"
+
+react-test-renderer@^16.0.0-0:
+ version "16.2.0"
+ resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.2.0.tgz#bddf259a6b8fcd8555f012afc8eacc238872a211"
+ dependencies:
+ fbjs "^0.8.16"
+ object-assign "^4.1.1"
+ prop-types "^15.6.0"
+
react@^16.2.0:
version "16.2.0"
resolved "https://registry.yarnpkg.com/react/-/react-16.2.0.tgz#a31bd2dab89bff65d42134fa187f24d054c273ba"
@@ -4795,6 +5480,12 @@ readdirp@^2.0.0:
readable-stream "^2.0.2"
set-immediate-shim "^1.0.1"
+realpath-native@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/realpath-native/-/realpath-native-1.0.0.tgz#7885721a83b43bd5327609f0ddecb2482305fdf0"
+ dependencies:
+ util.promisify "^1.0.0"
+
redbox-react@^1.3.6:
version "1.5.0"
resolved "https://registry.yarnpkg.com/redbox-react/-/redbox-react-1.5.0.tgz#04dab11557d26651bf3562a67c22ace56c5d3967"
@@ -4909,32 +5600,19 @@ repeating@^2.0.0:
dependencies:
is-finite "^1.0.0"
-request@2:
- version "2.83.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356"
+request-promise-core@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.1.tgz#3eee00b2c5aa83239cfb04c5700da36f81cd08b6"
dependencies:
- aws-sign2 "~0.7.0"
- aws4 "^1.6.0"
- caseless "~0.12.0"
- combined-stream "~1.0.5"
- extend "~3.0.1"
- forever-agent "~0.6.1"
- form-data "~2.3.1"
- har-validator "~5.0.3"
- hawk "~6.0.2"
- http-signature "~1.2.0"
- is-typedarray "~1.0.0"
- isstream "~0.1.2"
- json-stringify-safe "~5.0.1"
- mime-types "~2.1.17"
- oauth-sign "~0.8.2"
- performance-now "^2.1.0"
- qs "~6.5.1"
- safe-buffer "^5.1.1"
- stringstream "~0.0.5"
- tough-cookie "~2.3.3"
- tunnel-agent "^0.6.0"
- uuid "^3.1.0"
+ lodash "^4.13.1"
+
+request-promise-native@^1.0.3:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5"
+ dependencies:
+ request-promise-core "1.1.1"
+ stealthy-require "^1.1.0"
+ tough-cookie ">=2.3.3"
request@2.81.0:
version "2.81.0"
@@ -4963,30 +5641,32 @@ request@2.81.0:
tunnel-agent "^0.6.0"
uuid "^3.0.0"
-request@~2.79.0:
- version "2.79.0"
- resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de"
+request@^2.83.0:
+ version "2.83.0"
+ resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356"
dependencies:
- aws-sign2 "~0.6.0"
- aws4 "^1.2.1"
- caseless "~0.11.0"
+ aws-sign2 "~0.7.0"
+ aws4 "^1.6.0"
+ caseless "~0.12.0"
combined-stream "~1.0.5"
- extend "~3.0.0"
+ extend "~3.0.1"
forever-agent "~0.6.1"
- form-data "~2.1.1"
- har-validator "~2.0.6"
- hawk "~3.1.3"
- http-signature "~1.1.0"
+ form-data "~2.3.1"
+ har-validator "~5.0.3"
+ hawk "~6.0.2"
+ http-signature "~1.2.0"
is-typedarray "~1.0.0"
isstream "~0.1.2"
json-stringify-safe "~5.0.1"
- mime-types "~2.1.7"
- oauth-sign "~0.8.1"
- qs "~6.3.0"
- stringstream "~0.0.4"
- tough-cookie "~2.3.0"
- tunnel-agent "~0.4.1"
- uuid "^3.0.0"
+ mime-types "~2.1.17"
+ oauth-sign "~0.8.2"
+ performance-now "^2.1.0"
+ qs "~6.5.1"
+ safe-buffer "^5.1.1"
+ stringstream "~0.0.5"
+ tough-cookie "~2.3.3"
+ tunnel-agent "^0.6.0"
+ uuid "^3.1.0"
require-directory@^2.1.1:
version "2.1.1"
@@ -5025,6 +5705,10 @@ resolve-from@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748"
+resolve@1.1.7:
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
+
resolve@^1.1.7, resolve@^1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36"
@@ -5038,6 +5722,10 @@ restore-cursor@^2.0.0:
onetime "^2.0.0"
signal-exit "^3.0.2"
+ret@~0.1.10:
+ version "0.1.15"
+ resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc"
+
rgb@~0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/rgb/-/rgb-0.1.0.tgz#be27b291e8feffeac1bd99729721bfa40fc037b5"
@@ -5048,7 +5736,7 @@ right-align@^0.1.1:
dependencies:
align-text "^0.1.1"
-rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.6.1:
+rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1:
version "2.6.2"
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36"
dependencies:
@@ -5061,6 +5749,13 @@ ripemd160@^2.0.0, ripemd160@^2.0.1:
hash-base "^2.0.0"
inherits "^2.0.1"
+rst-selector-parser@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz#81b230ea2fcc6066c89e3472de794285d9b03d91"
+ dependencies:
+ lodash.flattendeep "^4.4.0"
+ nearley "^2.7.10"
+
run-async@^2.2.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0"
@@ -5081,16 +5776,21 @@ safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, s
version "5.1.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853"
-sass-graph@^2.2.4:
- version "2.2.4"
- resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49"
+sane@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/sane/-/sane-2.2.0.tgz#d6d2e2fcab00e3d283c93b912b7c3a20846f1d56"
dependencies:
- glob "^7.0.0"
- lodash "^4.0.0"
- scss-tokenizer "^0.2.3"
- yargs "^7.0.0"
+ anymatch "^1.3.0"
+ exec-sh "^0.2.0"
+ fb-watchman "^2.0.0"
+ minimatch "^3.0.2"
+ minimist "^1.1.1"
+ walker "~1.0.5"
+ watch "~0.18.0"
+ optionalDependencies:
+ fsevents "^1.1.1"
-sax@~1.2.1:
+sax@^1.2.1, sax@~1.2.1:
version "1.2.4"
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
@@ -5100,13 +5800,6 @@ schema-utils@^0.3.0:
dependencies:
ajv "^5.0.0"
-scss-tokenizer@^0.2.3:
- version "0.2.3"
- resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1"
- dependencies:
- js-base64 "^2.1.8"
- source-map "^0.4.2"
-
select-hose@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
@@ -5121,9 +5814,9 @@ selfsigned@^1.9.1:
version "5.4.1"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
-semver@~5.3.0:
- version "5.3.0"
- resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
+semver@^5.4.1:
+ version "5.5.0"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab"
send@0.16.1:
version "0.16.1"
@@ -5201,6 +5894,10 @@ shebang-regex@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
+shellwords@^0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b"
+
signal-exit@^3.0.0, signal-exit@^3.0.2:
version "3.0.2"
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
@@ -5261,21 +5958,27 @@ source-map-support@^0.4.15:
dependencies:
source-map "^0.5.6"
+source-map-support@^0.5.0:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.2.tgz#1a6297fd5b2e762b39688c7fc91233b60984f0a5"
+ dependencies:
+ source-map "^0.6.0"
+
source-map@0.5.6:
version "0.5.6"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412"
-source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1:
+source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.1, source-map@~0.5.6:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
-source-map@^0.4.2:
+source-map@^0.4.4:
version "0.4.4"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b"
dependencies:
amdefine ">=0.0.4"
-source-map@^0.6.1, source-map@~0.6.1:
+source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
@@ -5340,6 +6043,10 @@ sshpk@^1.7.0:
jsbn "~0.1.0"
tweetnacl "~0.14.0"
+stack-utils@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-1.0.1.tgz#d4f33ab54e8e38778b0ca5cfd3b3afb12db68620"
+
stackframe@^0.3.1:
version "0.3.1"
resolved "https://registry.yarnpkg.com/stackframe/-/stackframe-0.3.1.tgz#33aa84f1177a5548c8935533cbfeb3420975f5a4"
@@ -5352,11 +6059,9 @@ statuses@~1.3.1:
version "1.3.1"
resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e"
-stdout-stream@^1.4.0:
- version "1.4.0"
- resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b"
- dependencies:
- readable-stream "^2.0.1"
+stealthy-require@^1.1.0:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
stream-browserify@^2.0.1:
version "2.0.1"
@@ -5379,9 +6084,12 @@ strict-uri-encode@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713"
-string-hash@^1.1.1:
- version "1.1.3"
- resolved "https://registry.yarnpkg.com/string-hash/-/string-hash-1.1.3.tgz#e8aafc0ac1855b4666929ed7dd1275df5d6c811b"
+string-length@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/string-length/-/string-length-2.0.0.tgz#d40dbb686a3ace960c1cffca562bf2c45f8363ed"
+ dependencies:
+ astral-regex "^1.0.0"
+ strip-ansi "^4.0.0"
string-width@^1.0.1, string-width@^1.0.2:
version "1.0.2"
@@ -5424,16 +6132,16 @@ strip-ansi@^4.0.0:
dependencies:
ansi-regex "^3.0.0"
+strip-bom@3.0.0, strip-bom@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
+
strip-bom@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e"
dependencies:
is-utf8 "^0.2.0"
-strip-bom@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
-
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
@@ -5465,7 +6173,7 @@ supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
-supports-color@^3.2.3:
+supports-color@^3.1.2, supports-color@^3.2.3:
version "3.2.3"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6"
dependencies:
@@ -5495,6 +6203,10 @@ svgo@^0.7.0:
sax "~1.2.1"
whet.extend "~0.9.9"
+symbol-tree@^3.2.1:
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6"
+
table@^4.0.1:
version "4.0.2"
resolved "https://registry.yarnpkg.com/table/-/table-4.0.2.tgz#a33447375391e766ad34d3486e6e2aedc84d2e36"
@@ -5523,7 +6235,7 @@ tar-pack@^3.4.0:
tar "^2.2.1"
uid-number "^0.0.6"
-tar@^2.0.0, tar@^2.2.1:
+tar@^2.2.1:
version "2.2.1"
resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1"
dependencies:
@@ -5535,10 +6247,24 @@ tcomb@^2.5.1:
version "2.7.0"
resolved "https://registry.yarnpkg.com/tcomb/-/tcomb-2.7.0.tgz#10d62958041669a5d53567b9a4ee8cde22b1c2b0"
+test-exclude@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26"
+ dependencies:
+ arrify "^1.0.1"
+ micromatch "^2.3.11"
+ object-assign "^4.1.0"
+ read-pkg-up "^1.0.1"
+ require-main-filename "^1.0.1"
+
text-table@~0.2.0:
version "0.2.0"
resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
+throat@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/throat/-/throat-4.1.0.tgz#89037cbc92c56ab18926e6ba4cbb200e15672a6a"
+
through@^2.3.6:
version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
@@ -5563,6 +6289,10 @@ tmp@^0.0.33:
dependencies:
os-tmpdir "~1.0.2"
+tmpl@1.0.x:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.4.tgz#23640dd7b42d00433911140820e5cf440e521dd1"
+
to-arraybuffer@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
@@ -5579,12 +6309,18 @@ toposort@^1.0.0:
version "1.0.6"
resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.6.tgz#c31748e55d210effc00fdcdc7d6e68d7d7bb9cec"
-tough-cookie@~2.3.0, tough-cookie@~2.3.3:
+tough-cookie@>=2.3.3, tough-cookie@^2.3.3, tough-cookie@~2.3.0, tough-cookie@~2.3.3:
version "2.3.3"
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.3.tgz#0b618a5565b6dea90bf3425d04d55edc475a7561"
dependencies:
punycode "^1.4.1"
+tr46@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09"
+ dependencies:
+ punycode "^2.1.0"
+
trim-newlines@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613"
@@ -5593,12 +6329,6 @@ trim-right@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
-"true-case-path@^1.0.2":
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/true-case-path/-/true-case-path-1.0.2.tgz#7ec91130924766c7f573be3020c34f8fdfd00d62"
- dependencies:
- glob "^6.0.4"
-
tty-browserify@0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
@@ -5609,10 +6339,6 @@ tunnel-agent@^0.6.0:
dependencies:
safe-buffer "^5.0.1"
-tunnel-agent@~0.4.1:
- version "0.4.3"
- resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb"
-
tweetnacl@^0.14.3, tweetnacl@~0.14.0:
version "0.14.5"
resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
@@ -5645,7 +6371,7 @@ uglify-js@3.3.x:
commander "~2.12.1"
source-map "~0.6.1"
-uglify-js@^2.8.29:
+uglify-js@^2.6, uglify-js@^2.8.29:
version "2.8.29"
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"
dependencies:
@@ -5670,6 +6396,10 @@ uid-number@^0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
+underscore@~1.4.4:
+ version "1.4.4"
+ resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.4.4.tgz#61a6a32010622afa07963bf325203cf12239d604"
+
uniq@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
@@ -5721,6 +6451,13 @@ util-deprecate@~1.0.1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+util.promisify@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
+ dependencies:
+ define-properties "^1.1.2"
+ object.getownpropertydescriptors "^2.0.3"
+
util@0.10.3, util@^0.10.3:
version "0.10.3"
resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9"
@@ -5743,10 +6480,14 @@ uuid@^2.0.2:
version "2.0.3"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a"
-uuid@^3.0.0, uuid@^3.1.0:
+uuid@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04"
+uuid@^3.1.0:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14"
+
v8flags@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4"
@@ -5782,6 +6523,19 @@ vm-browserify@0.0.4:
dependencies:
indexof "0.0.1"
+walker@~1.0.5:
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.7.tgz#2f7f9b8fd10d677262b18a884e28d19618e028fb"
+ dependencies:
+ makeerror "1.0.x"
+
+watch@~0.18.0:
+ version "0.18.0"
+ resolved "https://registry.yarnpkg.com/watch/-/watch-0.18.0.tgz#28095476c6df7c90c963138990c0a5423eb4b986"
+ dependencies:
+ exec-sh "^0.2.0"
+ minimist "^1.2.0"
+
watchpack@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.4.0.tgz#4a1472bcbb952bd0a9bb4036801f954dfb39faac"
@@ -5796,6 +6550,10 @@ wbuf@^1.1.0, wbuf@^1.7.2:
dependencies:
minimalistic-assert "^1.0.0"
+webidl-conversions@^4.0.1, webidl-conversions@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad"
+
webpack-dev-middleware@^1.11.0:
version "1.12.2"
resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.12.2.tgz#f8fc1120ce3b4fc5680ceecb43d777966b21105e"
@@ -5892,10 +6650,24 @@ websocket-extensions@>=0.1.1:
version "0.1.3"
resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29"
+whatwg-encoding@^1.0.1:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3"
+ dependencies:
+ iconv-lite "0.4.19"
+
whatwg-fetch@>=0.10.0:
version "2.0.3"
resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84"
+whatwg-url@^6.3.0:
+ version "6.4.0"
+ resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.4.0.tgz#08fdf2b9e872783a7a1f6216260a1d66cc722e08"
+ dependencies:
+ lodash.sortby "^4.7.0"
+ tr46 "^1.0.0"
+ webidl-conversions "^4.0.1"
+
whet.extend@~0.9.9:
version "0.9.9"
resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1"
@@ -5908,7 +6680,7 @@ which-module@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
-which@1, which@^1.2.9:
+which@^1.2.12, which@^1.2.9, which@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a"
dependencies:
@@ -5928,6 +6700,10 @@ wordwrap@0.0.2:
version "0.0.2"
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f"
+wordwrap@~0.0.2:
+ version "0.0.3"
+ resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107"
+
wordwrap@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb"
@@ -5943,6 +6719,14 @@ wrappy@1:
version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+write-file-atomic@^2.1.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.3.0.tgz#1ff61575c2e2a4e8e510d6fa4e243cce183999ab"
+ dependencies:
+ graceful-fs "^4.1.11"
+ imurmurhash "^0.1.4"
+ signal-exit "^3.0.2"
+
write@^0.2.1:
version "0.2.1"
resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757"
@@ -5953,6 +6737,10 @@ xml-char-classes@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d"
+xml-name-validator@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635"
+
xtend@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
@@ -5971,39 +6759,38 @@ yargs-parser@^4.2.0:
dependencies:
camelcase "^3.0.0"
-yargs-parser@^5.0.0:
- version "5.0.0"
- resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a"
- dependencies:
- camelcase "^3.0.0"
-
yargs-parser@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9"
dependencies:
camelcase "^4.1.0"
-yargs@^6.6.0:
- version "6.6.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208"
+yargs-parser@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-8.1.0.tgz#f1376a33b6629a5d063782944da732631e966950"
dependencies:
- camelcase "^3.0.0"
- cliui "^3.2.0"
+ camelcase "^4.1.0"
+
+yargs@^10.0.3:
+ version "10.1.1"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.1.tgz#5fe1ea306985a099b33492001fa19a1e61efe285"
+ dependencies:
+ cliui "^4.0.0"
decamelize "^1.1.1"
+ find-up "^2.1.0"
get-caller-file "^1.0.1"
- os-locale "^1.4.0"
- read-pkg-up "^1.0.1"
+ os-locale "^2.0.0"
require-directory "^2.1.1"
require-main-filename "^1.0.1"
set-blocking "^2.0.0"
- string-width "^1.0.2"
- which-module "^1.0.0"
+ string-width "^2.0.0"
+ which-module "^2.0.0"
y18n "^3.2.1"
- yargs-parser "^4.2.0"
+ yargs-parser "^8.1.0"
-yargs@^7.0.0:
- version "7.1.0"
- resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8"
+yargs@^6.6.0:
+ version "6.6.0"
+ resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208"
dependencies:
camelcase "^3.0.0"
cliui "^3.2.0"
@@ -6017,7 +6804,7 @@ yargs@^7.0.0:
string-width "^1.0.2"
which-module "^1.0.0"
y18n "^3.2.1"
- yargs-parser "^5.0.0"
+ yargs-parser "^4.2.0"
yargs@^8.0.2:
version "8.0.2"