PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 2.23.2
GiveWP – Donation Plugin and Fundraising Platform v2.23.2
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 4 years ago style.module.scss 4 years ago
index.js
71 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 = (
16 <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
17 <g opacity="0.501465">
18 <path opacity="0.3" d="M3.75 6H14.25V4.5H3.75V6Z" fill="black" />
19 <path
20 fillRule="evenodd"
21 clipRule="evenodd"
22 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"
23 fill="black"
24 />
25 </g>
26 </svg>
27 );
28
29 return (
30 <div className={styles.periodSelector} key={focusedInput}>
31 <div className={styles.icon}>{icon}</div>
32 <div className={styles.datepicker}>
33 <DateRangePicker
34 noBorder={true}
35 startDate={period.startDate}
36 startDateId="givewp-logs-start"
37 endDate={period.endDate}
38 hideKeyboardShortcutsPanel={true}
39 endDateId="givewp-logs-end"
40 onDatesChange={({startDate, endDate}) => {
41 setDates(startDate, endDate);
42 }}
43 focusedInput={focusedInput}
44 onFocusChange={(newFocus) => {
45 setFocusedInput(newFocus);
46 }}
47 isOutsideRange={(day) => moment().diff(day) < 0}
48 numberOfMonths={1}
49 />
50 </div>
51 </div>
52 );
53 };
54
55 PeriodSelector.propTypes = {
56 // Time period
57 period: PropTypes.object.isRequired,
58 // SetDates function
59 setDates: PropTypes.func.isRequired,
60 };
61
62 PeriodSelector.defaultProps = {
63 period: {
64 startDate: null,
65 endDate: null,
66 },
67 setDates: () => {},
68 };
69
70 export default PeriodSelector;
71