mirror of
https://github.com/shlinkio/shlink-web-client.git
synced 2025-05-05 19:22:58 +03:00
Created reusable DateInput component
This commit is contained in:
parent
1abcb2e1d7
commit
a7bd66827a
4 changed files with 51 additions and 25 deletions
src/short-urls
|
@ -1,14 +1,13 @@
|
|||
import calendarIcon from '@fortawesome/fontawesome-free-regular/faCalendarAlt';
|
||||
import downIcon from '@fortawesome/fontawesome-free-solid/faAngleDoubleDown';
|
||||
import upIcon from '@fortawesome/fontawesome-free-solid/faAngleDoubleUp';
|
||||
import FontAwesomeIcon from '@fortawesome/react-fontawesome';
|
||||
import { assoc, dissoc, isNil, pick, pipe, pluck, replace } from 'ramda';
|
||||
import React from 'react';
|
||||
import DatePicker from 'react-datepicker';
|
||||
import { connect } from 'react-redux';
|
||||
import ReactTags from 'react-tag-autocomplete';
|
||||
import { Collapse } from 'reactstrap';
|
||||
import '../../node_modules/react-datepicker/dist/react-datepicker.css';
|
||||
import DateInput from '../common/DateInput';
|
||||
import './CreateShortUrl.scss';
|
||||
import CreateShortUrlResult from './helpers/CreateShortUrlResult';
|
||||
import { createShortUrl, resetCreateShortUrl } from './reducers/shortUrlCreationResult';
|
||||
|
@ -45,13 +44,10 @@ export class CreateShortUrl extends React.Component {
|
|||
{...props}
|
||||
/>;
|
||||
const createDateInput = (id, placeholder, props = {}) =>
|
||||
<DatePicker
|
||||
<DateInput
|
||||
selected={this.state[id]}
|
||||
className="form-control create-short-url__date-input"
|
||||
placeholderText={placeholder}
|
||||
onChange={date => this.setState({ [id]: date })}
|
||||
dateFormat="YYYY-MM-DD"
|
||||
readOnly
|
||||
{...props}
|
||||
/>;
|
||||
const formatDate = date => isNil(date) ? date : date.format();
|
||||
|
@ -100,13 +96,11 @@ export class CreateShortUrl extends React.Component {
|
|||
</div>
|
||||
</div>
|
||||
<div className="col-sm-6">
|
||||
<div className="form-group create-short-url__date-container">
|
||||
<div className="form-group">
|
||||
{createDateInput('validSince', 'Enabled since...', { maxDate: this.state.validUntil })}
|
||||
<FontAwesomeIcon icon={calendarIcon} className="create-short-url__date-icon" />
|
||||
</div>
|
||||
<div className="form-group create-short-url__date-container">
|
||||
<div className="form-group">
|
||||
{createDateInput('validUntil', 'Enabled until...', { minDate: this.state.validSince })}
|
||||
<FontAwesomeIcon icon={calendarIcon} className="create-short-url__date-icon" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue