feat: add loading state to generate payment link dialog

This commit is contained in:
Ahmed Bouhuolia
2024-09-15 21:08:41 +02:00
parent 18d6ec7b59
commit 2b42215381
2 changed files with 11 additions and 2 deletions

View File

@@ -1,4 +1,3 @@
import { DialogBody } from '@blueprintjs/core';
import { SharePaymentLinkForm } from './SharePaymentLinkForm';
import { SharePaymentLinkFormContent } from './SharePaymentLinkFormContent';
import { SharePaymentLinkProvider } from './SharePaymentLinkProvider';

View File

@@ -1,4 +1,5 @@
// @ts-nocheck
import { useFormikContext } from 'formik';
import {
Button,
Classes,
@@ -20,15 +21,23 @@ import {
} from '@/components';
import { useSharePaymentLink } from './SharePaymentLinkProvider';
import { useClipboard } from '@/hooks/utils/useClipboard';
import { useDialogActions } from '@/hooks/state';
import { useDialogContext } from '@/components/Dialog/DialogProvider';
export function SharePaymentLinkFormContent() {
const { url } = useSharePaymentLink();
const { closeDialog } = useDialogActions();
const { name } = useDialogContext();
const { isSubmitting } = useFormikContext();
const clipboard = useClipboard();
const handleCopyBtnClick = () => {
clipboard.copy(url);
};
const handleCancelBtnClick = () => {
closeDialog(name);
};
return (
<>
@@ -115,10 +124,11 @@ export function SharePaymentLinkFormContent() {
</Button>
) : (
<>
<Button>Cancel</Button>
<Button onClick={handleCancelBtnClick}>Cancel</Button>
<Button
type={'submit'}
intent={Intent.PRIMARY}
loading={isSubmitting}
style={{ minWidth: 100 }}
>
Generate