mirror of
https://github.com/kingomarnajjar/flex-template-web.git
synced 2026-07-29 05:00:43 +10:00
Merge pull request #499 from sharetribe/update-client-packages
Update client packages
This commit is contained in:
commit
f397113ae9
140 changed files with 574 additions and 386 deletions
49
package.json
49
package.json
|
|
@ -3,37 +3,38 @@
|
|||
"version": "0.2.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"array-includes": "^3.0.2",
|
||||
"array-includes": "^3.0.3",
|
||||
"array.prototype.find": "^2.0.4",
|
||||
"autosize": "^4.0.0",
|
||||
"basic-auth": "^2.0.0",
|
||||
"classnames": "^2.2.5",
|
||||
"compression": "^1.7.1",
|
||||
"cookie-parser": "^1.4.3",
|
||||
"decimal.js": "^7.1.1",
|
||||
"decimal.js": "7.2.4",
|
||||
"express": "^4.16.2",
|
||||
"express-enforces-ssl": "^1.1.0",
|
||||
"helmet": "^3.8.2",
|
||||
"helmet": "^3.9.0",
|
||||
"lodash": "^4.17.4",
|
||||
"moment": "(2.10 - 2.14 || ^2.15.1) && < 2.18.0",
|
||||
"moment": "^2.18.1",
|
||||
"nsp": "^2.8.1",
|
||||
"path-to-regexp": "^1.5.3",
|
||||
"path-to-regexp": "^2.0.0",
|
||||
"prop-types": "^15.6.0",
|
||||
"query-string": "^5.0.0",
|
||||
"raven": "^2.1.2",
|
||||
"raven-js": "^3.6.0",
|
||||
"react": "^15.4.2",
|
||||
"react-addons-shallow-compare": ">=0.14",
|
||||
"react-dates": "^9.0.1",
|
||||
"react-dom": "^15.4.2",
|
||||
"react-google-maps": "^7.2.0",
|
||||
"react-helmet": "^5.0.2",
|
||||
"react-intl": "^2.2.3",
|
||||
"react-moment-proptypes": "^1.4.0",
|
||||
"react-redux": "^5.0.3",
|
||||
"react-router-dom": "^4.0.0",
|
||||
"react-sortable-hoc": "^0.6.1",
|
||||
"redux": "^3.6.0",
|
||||
"redux-form": "^6.6.1",
|
||||
"raven": "^2.2.1",
|
||||
"raven-js": "^3.18.1",
|
||||
"react": "^15.6.2",
|
||||
"react-addons-shallow-compare": "^15.6.2",
|
||||
"react-dates": "^12.0.0",
|
||||
"react-dom": "^15.6.2",
|
||||
"react-google-maps": "^7.3.0",
|
||||
"react-helmet": "^5.2.0",
|
||||
"react-intl": "^2.4.0",
|
||||
"react-moment-proptypes": "^1.5.0",
|
||||
"react-redux": "^5.0.6",
|
||||
"react-router-dom": "^4.2.2",
|
||||
"react-sortable-hoc": "^0.6.8",
|
||||
"redux": "^3.7.2",
|
||||
"redux-form": "^6.8.0",
|
||||
"redux-thunk": "^2.2.0",
|
||||
"sanitize.css": "^5.0.0",
|
||||
"sharetribe-scripts": "1.0.14",
|
||||
|
|
@ -42,12 +43,12 @@
|
|||
"url": "^0.11.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"enzyme": "^2.8.0",
|
||||
"enzyme-to-json": "^1.5.0",
|
||||
"enzyme": "^2.9.1",
|
||||
"enzyme-to-json": "^1.6.0",
|
||||
"nodemon": "^1.12.1",
|
||||
"prettier": "1.7.4",
|
||||
"react-addons-test-utils": "^15.4.2",
|
||||
"react-test-renderer": "^15.4.2"
|
||||
"react-addons-test-utils": "^15.6.2",
|
||||
"react-test-renderer": "^15.6.2"
|
||||
},
|
||||
"scripts": {
|
||||
"clean": "rm -rf build/*",
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { Switch, Route, withRouter } from 'react-router-dom';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import ReactDOMServer from 'react-dom/server';
|
||||
import Helmet from 'react-helmet';
|
||||
import { BrowserRouter, StaticRouter } from 'react-router-dom';
|
||||
|
|
|
|||
|
|
@ -7,7 +7,8 @@
|
|||
* <input type="file" accept="images/*" onChange={handleChange} />
|
||||
* </AddImages>
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { SortableContainer } from 'react-sortable-hoc';
|
||||
import classNames from 'classnames';
|
||||
import { ImageFromFile, ResponsiveImage, IconSpinner } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import css from './AddImages.css';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
* This component will show the booking info and calculated total price.
|
||||
* I.e. dates and other details related to payment decision in receipt format.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage, FormattedHTMLMessage, intlShape, injectIntl } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { types } from '../../util/sdkLoader';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes, Component } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { IconSpinner, IconCheckmark } from '../../components';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
/* eslint-disable no-console */
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { IntlProvider, addLocaleData } from 'react-intl';
|
||||
import { reduxForm, propTypes as formPropTypes } from 'redux-form';
|
||||
import en from 'react-intl/locale-data/en';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* onFocus: renders given value in unformatted manner: "9999,99"
|
||||
* onBlur: formats the given input: "9 999,99 €"
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { intlShape, injectIntl } from 'react-intl';
|
||||
import { Field } from 'redux-form';
|
||||
import classNames from 'classnames';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* Styles for SingleDatePicker can be found from 'public/reactDates.css'.
|
||||
* CSS modules can't handle global styles so they are currently added separately
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import { intlShape, injectIntl } from 'react-intl';
|
||||
import { SingleDatePicker, isInclusivelyAfterDay } from 'react-dates';
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ exports[`DateInput matches snapshot 1`] = `
|
|||
className="SingleDatePickerInput"
|
||||
>
|
||||
<div
|
||||
className="DateInput"
|
||||
className="DateInput DateInput--open-down"
|
||||
>
|
||||
<input
|
||||
aria-describedby="DateInput__screen-reader-message-date-input"
|
||||
|
|
|
|||
|
|
@ -79,6 +79,13 @@
|
|||
& :global(.DayPickerNavigation__prev),
|
||||
& :global(.DayPickerNavigation__next) {
|
||||
color: var(--matterColorLight);
|
||||
border: 0;
|
||||
}
|
||||
& :global(.CalendarDay__button) {
|
||||
border: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
& :global(.CalendarDay) {
|
||||
@apply --marketplaceH4FontStyles;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,8 @@
|
|||
*
|
||||
* N.B. *isOutsideRange* in defaultProps is defining what dates are available to booking.
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { intlShape, injectIntl } from 'react-intl';
|
||||
import { DateRangePicker, isInclusivelyAfterDay, isInclusivelyBeforeDay } from 'react-dates';
|
||||
import classNames from 'classnames';
|
||||
|
|
@ -39,6 +40,7 @@ const defaultProps = {
|
|||
endDatePlaceholderText: null, // Handled inside component
|
||||
disabled: false,
|
||||
required: false,
|
||||
readOnly: false,
|
||||
screenReaderInputMessage: null, // Handled inside component
|
||||
showClearDates: false,
|
||||
showDefaultInputIcon: false,
|
||||
|
|
@ -47,17 +49,21 @@ const defaultProps = {
|
|||
customCloseIcon: null,
|
||||
|
||||
// calendar presentation and interaction related props
|
||||
renderMonth: null,
|
||||
orientation: HORIZONTAL_ORIENTATION,
|
||||
anchorDirection: ANCHOR_LEFT,
|
||||
horizontalMargin: 0,
|
||||
withPortal: false,
|
||||
withFullScreenPortal: false,
|
||||
daySize: 38,
|
||||
isRTL: false,
|
||||
initialVisibleMonth: null,
|
||||
firstDayOfWeek: 0, // 0 .. 6, 0 is Sunday. TODO: This should come from some localization config.
|
||||
numberOfMonths: 1,
|
||||
keepOpenOnDateSelect: false,
|
||||
reopenPickerOnClearDates: false,
|
||||
renderCalendarInfo: null,
|
||||
daySize: 38,
|
||||
hideKeyboardShortcutsPanel: true,
|
||||
|
||||
// navigation related props
|
||||
navPrev: <PreviousMonthIcon />,
|
||||
|
|
@ -90,6 +96,7 @@ const defaultProps = {
|
|||
// https://momentjs.com/
|
||||
displayFormat: 'ddd, MMMM D',
|
||||
monthFormat: 'MMMM YYYY',
|
||||
weekDayFormat: 'dd',
|
||||
phrases: {
|
||||
closeDatePicker: null, // Handled inside component
|
||||
clearDate: null, // Handled inside component
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import classNames from 'classnames';
|
||||
import { START_DATE, END_DATE } from '../../util/dates';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './DateRangeInput.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './DateRangeInput.css';
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ exports[`DateRangeInput matches snapshot 1`] = `
|
|||
className="DateRangePickerInput"
|
||||
>
|
||||
<div
|
||||
className="DateInput"
|
||||
className="DateInput DateInput--open-down"
|
||||
>
|
||||
<input
|
||||
aria-describedby="DateInput__screen-reader-message-bookingStartDate"
|
||||
|
|
@ -44,12 +44,14 @@ exports[`DateRangeInput matches snapshot 1`] = `
|
|||
</div>
|
||||
</div>
|
||||
<div
|
||||
aria-hidden="true"
|
||||
className="DateRangePickerInput__arrow"
|
||||
role="presentation"
|
||||
>
|
||||
<span />
|
||||
</div>
|
||||
<div
|
||||
className="DateInput"
|
||||
className="DateInput DateInput--open-down"
|
||||
>
|
||||
<input
|
||||
aria-describedby="DateInput__screen-reader-message-bookingEndDate"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Button } from '../../components';
|
||||
|
||||
import css from './Discussion.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import { ensureListing } from '../../util/data';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import { ensureListing, parseAddress } from '../../util/data';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { omitBy, isUndefined } from 'lodash';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import { createSlug } from '../../util/urlHelpers';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import routeConfiguration from '../../routeConfiguration';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
// External link that opens in a new tab/window, ensuring that the
|
||||
// opened page doesn't have access to the current page.
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const Form = props => {
|
||||
const { children, ...restProps } = props;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { stringify } from '../../util/urlHelpers';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import css from './IconBannedUser.css';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconCheckMark.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconClose.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconEmailAttention.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconEmailSent.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconEmailSuccess.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const IconKeys = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const IconKeysSuccess = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconSearch.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './IconSpinner.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { ResponsiveImage } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { Promised } from '../../components';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* and main content. Side navigation (first child) will be shown aside on Desktop and
|
||||
* as sub bar under Topbar on mobile screens.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './LayoutSideNavigation.css';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* SideNavWrapper will be shown aside on Desktop layout and
|
||||
* as a sub bar under Topbar on mobile screens.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import TopbarWrapper from './TopbarWrapper';
|
||||
import SideNavWrapper from './SideNavWrapper';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* and main content. Side navigation (first child) will be shown aside on Desktop and
|
||||
* as sub bar under Topbar on mobile screens.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './LayoutSideNavigation.css';
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@
|
|||
* and main content. Side navigation (first child) will be shown aside on Desktop and
|
||||
* as sub bar under Topbar on mobile screens.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './LayoutSideNavigation.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage, intlShape, injectIntl } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { NamedLink, ResponsiveImage } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import { debounce } from 'lodash';
|
||||
import classNames from 'classnames';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { withRouter } from 'react-router-dom';
|
||||
import { FormattedMessage, intlShape, injectIntl } from 'react-intl';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './ManageListingCard.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { NamedLink } from '../../components';
|
||||
import css from './MapPanel.css';
|
||||
|
||||
|
|
|
|||
|
|
@ -16,7 +16,8 @@
|
|||
*
|
||||
*/
|
||||
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import { MenuContent, MenuLabel } from '../../components';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
* MenuContent is a immediate child of Menu component sibling to MenuLabel.
|
||||
* Clicking MenuLabel toggles visibility of MenuContent.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { MenuItem } from '../../components';
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,8 @@
|
|||
* Example:
|
||||
* <MenuItem key="item 1"><a href="example.com">Click me</a><MenuItem>
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './MenuItem.css';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
* MenuLabel is the only always visible part of Menu.
|
||||
* Clicking it toggles visibility of MenuContent.
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './MenuLabel.css';
|
||||
|
|
|
|||
|
|
@ -8,7 +8,8 @@
|
|||
* </Modal>
|
||||
* </Parent>
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage, intlShape, injectIntl } from 'react-intl';
|
||||
import { Button, IconClose } from '../../components';
|
||||
|
|
|
|||
|
|
@ -11,7 +11,8 @@
|
|||
* </ModalInMobile>
|
||||
* </Parent>
|
||||
*/
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { Modal } from '../../components';
|
||||
import { withViewport } from '../../util/contextHelpers';
|
||||
|
|
|
|||
|
|
@ -17,7 +17,8 @@
|
|||
* will be added to the element className if the current URL matches
|
||||
* the one in the generated pathname of the link.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Link, withRouter } from 'react-router-dom';
|
||||
import classNames from 'classnames';
|
||||
import routeConfiguration from '../../routeConfiguration';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
* This component wraps React-Router's Redirect by providing name-based routing.
|
||||
* (Helps to narrow down the scope of possible format changes to routes.)
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Redirect } from 'react-router-dom';
|
||||
import routeConfiguration from '../../routeConfiguration';
|
||||
import { pathByRouteName } from '../../util/routes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './NotificationBadge.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape, FormattedDate, FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Discussion } from '../../components';
|
||||
|
||||
const OrderDiscussionPanel = props => {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import Helmet from 'react-helmet';
|
||||
import { withRouter } from 'react-router-dom';
|
||||
import { FormattedMessage, injectIntl, intlShape } from 'react-intl';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const NextPageIcon = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { withRouter } from 'react-router-dom';
|
||||
import { parse } from '../../util/urlHelpers';
|
||||
import PaginationLinks from './PaginationLinks';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { range } from 'lodash';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const PrevPageIcon = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -7,7 +7,8 @@
|
|||
*/
|
||||
|
||||
/* eslint-disable no-underscore-dangle */
|
||||
import { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
class Promised extends Component {
|
||||
constructor(props) {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const NoImageIcon = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -30,7 +30,8 @@
|
|||
* // Browser decides which image it will fetch based on current screen size.
|
||||
*/
|
||||
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { injectIntl, intlShape, FormattedDate, FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { withGoogleMap, GoogleMap } from 'react-google-maps';
|
||||
import classNames from 'classnames';
|
||||
import { groupBy, isEqual, reduce } from 'lodash';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { OverlayView } from 'react-google-maps';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { OverlayView } from 'react-google-maps';
|
||||
import { compose } from 'redux';
|
||||
import { withRouter } from 'react-router-dom';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { OverlayView } from 'react-google-maps';
|
||||
import { injectIntl, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import * as propTypes from '../../util/propTypes';
|
||||
import { ListingCard, PaginationLinks } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import classNames from 'classnames';
|
||||
import { ValidationError } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
/* eslint-disable no-underscore-dangle */
|
||||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { intlShape, injectIntl, FormattedMessage } from 'react-intl';
|
||||
import { Field } from 'redux-form';
|
||||
import classNames from 'classnames';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { NamedLink } from '../../components';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { NamedLink } from '../../components';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import Tabs from './Tabs';
|
||||
|
||||
const TestPanel = props => {
|
||||
|
|
|
|||
|
|
@ -15,7 +15,8 @@
|
|||
*
|
||||
*/
|
||||
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
import { TabNav } from '../../components';
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { Field } from 'redux-form';
|
||||
import classNames from 'classnames';
|
||||
import { ValidationError, ExpandingTextarea } from '../../components';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const LogoIcon = props => {
|
||||
const { className } = props;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './Topbar.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './Topbar.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { FormattedMessage, intlShape, injectIntl } from 'react-intl';
|
||||
import { pickBy } from 'lodash';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage, intlShape } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { ACCOUNT_SETTINGS_PAGES } from '../../routeConfiguration';
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@
|
|||
* TopbarMobileMenu prints the menu content for authenticated user or
|
||||
* shows login actions for those who are not authenticated.
|
||||
*/
|
||||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { ACCOUNT_SETTINGS_PAGES } from '../../routeConfiguration';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import classNames from 'classnames';
|
||||
import { ACCOUNT_SETTINGS_PAGES } from '../../routeConfiguration';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import classNames from 'classnames';
|
||||
|
||||
import css from './ValidationError.css';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { withRouter, Redirect } from 'react-router-dom';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { reduxForm, formValueSelector, propTypes as formPropTypes } from 'redux-form';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { FormattedMessage, injectIntl, intlShape } from 'react-intl';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import desktopLogo from './images/saunatime-logo.png';
|
||||
|
||||
const LogoIcon = props => {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { Component, PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React, { Component } from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { FormattedMessage, injectIntl, intlShape } from 'react-intl';
|
||||
import { reduxForm, propTypes as formPropTypes } from 'redux-form';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { reduxForm, propTypes as formPropTypes } from 'redux-form';
|
||||
import { intlShape, injectIntl, FormattedMessage } from 'react-intl';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { connect } from 'react-redux';
|
||||
import { reduxForm, formValueSelector, propTypes as formPropTypes } from 'redux-form';
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
import React, { PropTypes } from 'react'; // eslint-disable-line react/no-deprecated
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { compose } from 'redux';
|
||||
import { withRouter } from 'react-router-dom';
|
||||
import { intlShape, injectIntl } from 'react-intl';
|
||||
|
|
@ -180,7 +181,7 @@ const { bool, func, instanceOf, object, shape, string, oneOf } = PropTypes;
|
|||
|
||||
EditListingPageComponent.propTypes = {
|
||||
authInfoError: instanceOf(Error),
|
||||
createStripeAccountError: PropTypes.instanceOf(Error),
|
||||
createStripeAccountError: instanceOf(Error),
|
||||
currentUser: propTypes.currentUser,
|
||||
fetchInProgress: bool.isRequired,
|
||||
getListing: func.isRequired,
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue