PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.2.0
GiveWP – Donation Plugin and Fundraising Platform v3.2.0
4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 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 / DonationForms / Blocks / DonationFormBlock / resources / app / index.tsx
give / src / DonationForms / Blocks / DonationFormBlock / resources / app Last commit date
Components 2 years ago index.tsx 2 years ago
index.tsx
78 lines
1 import {createRoot, render} from '@wordpress/element';
2 import ModalForm from './Components/ModalForm';
3 import IframeResizer from 'iframe-resizer-react';
4
5 import '../editor/styles/index.scss';
6
7 type DonationFormBlockAppProps = {
8 formFormat: 'fullForm' | 'newTab' | 'modal' | string;
9 dataSrc: string;
10 embedId: string;
11 openFormButton: string;
12 formUrl: string;
13 };
14
15 /**
16 * @since 3.2.0 replace form format reveal with new tab.
17 * @since 3.0.0
18 */
19 function DonationFormBlockApp({formFormat, dataSrc, embedId, openFormButton, formUrl}: DonationFormBlockAppProps) {
20 if (formFormat === 'newTab') {
21 return (
22 <a className={'givewp-donation-form-link'} href={formUrl} target={'_blank'} rel={'noopener noreferrer'}>
23 {openFormButton}
24 </a>
25 );
26 }
27
28 if (formFormat === 'modal' || formFormat === 'reveal') {
29 return <ModalForm openFormButton={openFormButton} dataSrc={dataSrc} embedId={embedId} />;
30 }
31
32 return (
33 <IframeResizer
34 id={embedId}
35 src={dataSrc}
36 checkOrigin={false}
37 style={{
38 width: '1px',
39 minWidth: '100%',
40 border: '0',
41 }}
42 />
43 );
44 }
45
46 const roots = document.querySelectorAll('.root-data-givewp-embed');
47
48 roots.forEach((root) => {
49 const dataSrc = root.getAttribute('data-src');
50 const embedId = root.getAttribute('data-givewp-embed-id');
51 const formFormat = root.getAttribute('data-form-format');
52 const openFormButton = root.getAttribute('data-open-form-button');
53 const formUrl = root.getAttribute('data-form-url');
54
55 if (createRoot) {
56 createRoot(root).render(
57 <DonationFormBlockApp
58 openFormButton={openFormButton}
59 formFormat={formFormat}
60 dataSrc={dataSrc}
61 embedId={embedId}
62 formUrl={formUrl}
63 />
64 );
65 } else {
66 render(
67 <DonationFormBlockApp
68 openFormButton={openFormButton}
69 formFormat={formFormat}
70 dataSrc={dataSrc}
71 embedId={embedId}
72 formUrl={formUrl}
73 />,
74 root
75 );
76 }
77 });
78