File: /var/www/html/wpmuhibbah/wp-content/plugins/give/src/DonationForms/resources/registrars/index.ts
import GatewayRegistrar from './gateways';
import type {DonationConfirmationReceiptServerExports, FormServerExports} from '@givewp/forms/types';
import type {useFormContext, useFormState, useWatch} from 'react-hook-form';
import defaultFormTemplates from './templates';
import useCurrencyFormatter from '@givewp/forms/app/hooks/useCurrencyFormatter';
import useDonationSummary from '@givewp/forms/app/hooks/useDonationSummary';
import {useDonationFormSettings} from '@givewp/forms/app/store/form-settings';
import useFormSubmitButton from '@givewp/forms/app/hooks/useFormSubmitButton';
import useFormData from '@givewp/forms/app/hooks/useFormData';
declare global {
interface Window {
givewpDonationFormExports: FormServerExports;
givewpDonationConfirmationReceiptExports: DonationConfirmationReceiptServerExports;
givewp: {
gateways: GatewayRegistrar;
form: {
templates: typeof defaultFormTemplates;
hooks: {
useFormContext: typeof useFormContext;
useWatch: typeof useWatch;
useFormState: typeof useFormState;
useCurrencyFormatter: typeof useCurrencyFormatter;
useDonationSummary: typeof useDonationSummary;
useDonationFormSettings: typeof useDonationFormSettings;
useFormSubmitButton: typeof useFormSubmitButton;
useFormData: typeof useFormData;
};
};
};
}
}
if (!window.givewp) {
// @ts-ignore
window.givewp = {
// @ts-ignore
form: {},
};
}
window.givewp.gateways = new GatewayRegistrar();
window.givewp.form.templates = Object.freeze(defaultFormTemplates);