PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / trunk
GiveWP – Donation Plugin and Fundraising Platform vtrunk
4.16.4 4.16.3 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 / Campaigns / Blocks / shared / components / Pagination / index.tsx
give / src / Campaigns / Blocks / shared / components / Pagination Last commit date
icons.tsx 1 year ago index.tsx 1 year ago styles.scss 1 year ago
index.tsx
79 lines
1 import {__, sprintf} from '@wordpress/i18n';
2 import cx from 'classnames';
3 import {ChevronLeft, ChevronRight} from './icons';
4
5 import './styles.scss';
6
7 export default ({currentPage, totalPages, setPage}: PaginationProps) => {
8 if (1 >= totalPages) {
9 return null;
10 }
11
12 const nextPage = currentPage + 1;
13 const previousPage = currentPage - 1;
14
15 return (
16 <div className="give-campaign-components-pagination">
17 <div className="give-campaign-components-pagination__pages">
18 <div className="give-campaign-components-pagination__pages-links">
19 {previousPage > 0 ? (
20 <button
21 title={__('Previous page', 'give')}
22 className="give-campaign-components-pagination__pages-links-arrow"
23 onClick={(e) => {
24 e.preventDefault();
25 setPage(previousPage);
26 }}
27 >
28 <ChevronLeft />
29 </button>
30 ) : (
31 <button className="give-campaign-components-pagination__pages-links-arrow-disabled">
32 <ChevronLeft />
33 </button>
34 )}
35
36 {[...Array(totalPages)].map((e, i) => {
37 const page = i + 1;
38 return (
39 <button
40 title={sprintf(__('Page %d', 'give'), page)}
41 className={cx('give-campaign-components-pagination__pages-links-page', {'give-campaign-components-pagination__pages-links-current': currentPage === page})}
42 onClick={(e) => {
43 e.preventDefault();
44 setPage(page);
45 }}
46 >
47 {page}
48 </button>
49 )
50 })}
51
52 {nextPage <= totalPages ? (
53 <button
54 title={__('Next page', 'give')}
55 className="give-campaign-components-pagination__pages-links-arrow"
56 onClick={(e) => {
57 e.preventDefault();
58 setPage(nextPage);
59 }}
60 >
61 <ChevronRight />
62 </button>
63 ) : (
64 <button className="give-campaign-components-pagination__pages-links-arrow-disabled">
65 <ChevronRight />
66 </button>
67 )}
68 </div>
69 </div>
70 </div>
71 );
72 }
73
74 interface PaginationProps {
75 currentPage: number,
76 totalPages: number,
77 setPage: (page: number) => void
78 }
79