PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / 3.3.1
GiveWP – Donation Plugin and Fundraising Platform v3.3.1
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
82 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 /**
8 * @since 3.2.1 Revert the display style value of "fullForm" to "onpage".
9 * @since 3.1.2
10 */
11 type DonationFormBlockAppProps = {
12 formFormat: 'onpage' | 'newTab' | 'modal' | string;
13 dataSrc: string;
14 embedId: string;
15 openFormButton: string;
16 formUrl: string;
17 };
18
19 /**
20 * @since 3.2.0 replace form format reveal with new tab.
21 * @since 3.0.0
22 */
23 function DonationFormBlockApp({formFormat, dataSrc, embedId, openFormButton, formUrl}: DonationFormBlockAppProps) {
24 if (formFormat === 'newTab') {
25 return (
26 <a className={'givewp-donation-form-link'} href={formUrl} target={'_blank'} rel={'noopener noreferrer'}>
27 {openFormButton}
28 </a>
29 );
30 }
31
32 if (formFormat === 'modal' || formFormat === 'reveal') {
33 return <ModalForm openFormButton={openFormButton} dataSrc={dataSrc} embedId={embedId} />;
34 }
35
36 return (
37 <IframeResizer
38 id={embedId}
39 src={dataSrc}
40 checkOrigin={false}
41 style={{
42 width: '1px',
43 minWidth: '100%',
44 border: '0',
45 }}
46 />
47 );
48 }
49
50 const roots = document.querySelectorAll('.root-data-givewp-embed');
51
52 roots.forEach((root) => {
53 const dataSrc = root.getAttribute('data-src');
54 const embedId = root.getAttribute('data-givewp-embed-id');
55 const formFormat = root.getAttribute('data-form-format');
56 const openFormButton = root.getAttribute('data-open-form-button');
57 const formUrl = root.getAttribute('data-form-url');
58
59 if (createRoot) {
60 createRoot(root).render(
61 <DonationFormBlockApp
62 openFormButton={openFormButton}
63 formFormat={formFormat}
64 dataSrc={dataSrc}
65 embedId={embedId}
66 formUrl={formUrl}
67 />
68 );
69 } else {
70 render(
71 <DonationFormBlockApp
72 openFormButton={openFormButton}
73 formFormat={formFormat}
74 dataSrc={dataSrc}
75 embedId={embedId}
76 formUrl={formUrl}
77 />,
78 root
79 );
80 }
81 });
82