PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.15.0
GiveWP – Donation Plugin and Fundraising Platform v2.15.0
4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Views / Components / PeriodSelector / index.js
give / src / Views / Components / PeriodSelector Last commit date
index.js 5 years ago style.module.scss 5 years ago
index.js
65 lines
1 // Vendor dependencies
2 import { useState } from 'react';
3 import PropTypes from 'prop-types';
4 import moment from 'moment';
5 // react-dates dependencies
6 import 'react-dates/initialize';
7 import { DateRangePicker } from 'react-dates';
8 import 'react-dates/lib/css/_datepicker.css';
9
10 import styles from './style.module.scss';
11
12 const PeriodSelector = ( { period, setDates } ) => {
13 const [ focusedInput, setFocusedInput ] = useState( null );
14
15 const icon = <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
16 <g opacity="0.501465">
17 <path opacity="0.3" d="M3.75 6H14.25V4.5H3.75V6Z" fill="black" />
18 <path fillRule="evenodd" clipRule="evenodd" d="M13.5 3H14.25C15.075 3 15.75 3.675 15.75 4.5V15C15.75 15.825 15.075 16.5 14.25 16.5H3.75C2.9175 16.5 2.25 15.825 2.25 15L2.2575 4.5C2.2575 3.675 2.9175 3 3.75 3H4.5V1.5H6V3H12V1.5H13.5V3ZM6.75 9.75V8.25H5.25V9.75H6.75ZM14.25 15H3.75V7.5H14.25V15ZM3.75 6H14.25V4.5H3.75V6ZM12.75 8.25V9.75H11.25V8.25H12.75ZM9.75 8.25H8.25V9.75H9.75V8.25Z" fill="black" />
19 </g>
20 </svg>;
21
22 return (
23 <div className={ styles.periodSelector } key={ focusedInput }>
24 <div className={ styles.icon }>{ icon }</div>
25 <div className={ styles.datepicker }>
26 <DateRangePicker
27 noBorder={ true }
28 startDate={ period.startDate }
29 startDateId="givewp-logs-start"
30 endDate={ period.endDate }
31 hideKeyboardShortcutsPanel={ true }
32 endDateId="givewp-logs-end"
33 onDatesChange={ ( { startDate, endDate } ) => {
34 setDates( startDate, endDate );
35 } }
36 focusedInput={ focusedInput }
37 onFocusChange={ ( newFocus ) => {
38 setFocusedInput( newFocus );
39 } }
40 isOutsideRange={ ( day ) => ( moment().diff( day ) < 0 ) }
41 numberOfMonths={ 1 }
42 />
43 </div>
44
45 </div>
46 );
47 };
48
49 PeriodSelector.propTypes = {
50 // Time period
51 period: PropTypes.object.isRequired,
52 // SetDates function
53 setDates: PropTypes.func.isRequired,
54 };
55
56 PeriodSelector.defaultProps = {
57 period: {
58 startDate: null,
59 endDate: null,
60 },
61 setDates: () => {},
62 };
63
64 export default PeriodSelector;
65