@opexa/portal-components 0.0.996 → 0.0.998
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayPayMayaDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/AurixPayQRPHDeposit/AurixPayQRPHDepositContext.d.ts +2 -2
- package/dist/components/DepositWithdrawal/Deposit/AurixPayQRPHDeposit/useAurixPayQRPHDeposit.d.ts +1 -1
- package/dist/components/DepositWithdrawal/Deposit/AurixPayQRPHDeposit/useAurixPayQRPHDeposit.js +2 -2
- package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/GCashWebpayDeposit/GCashWebpayDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/MayaAppDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.js +1 -1
- package/dist/components/DigitainLauncher/DigitianContainter.js +83 -12
- package/dist/components/DigitainLauncher/Fallback.js +1 -1
- package/dist/components/DigitainLauncher/utils.js +4 -0
- package/dist/components/GameLaunch/GameLaunchTrigger.js +1 -1
- package/dist/components/KYC/KYCDefault/IdentityVerification.js +5 -1
- package/dist/components/KYC/KYCDefault/PersonalInformation.js +5 -1
- package/dist/components/KYC/KycOpenOnHomeMount.js +1 -4
- package/package.json +1 -1
package/dist/components/DepositWithdrawal/Deposit/AurixPayPayMayaDeposit/AurixPayPayMayaDeposit.js
CHANGED
|
@@ -48,7 +48,7 @@ export function AurixPayPayMayaDeposit() {
|
|
|
48
48
|
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
49
49
|
})));
|
|
50
50
|
const verificationQuery = useMemberVerificationQuery();
|
|
51
|
-
const
|
|
51
|
+
const _verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
52
52
|
const [status, setStatus] = useState('waiting');
|
|
53
53
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
54
54
|
const createDepositMutation = useCreateAurixPayPayMayaDepositMutation({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const AurixPayQRPHDepositContext: (props: {
|
|
2
2
|
value: {
|
|
3
|
-
status: "idle" | "generating-qr-code" | "qr-code-generated"
|
|
3
|
+
status: "confirmed" | "failed" | "idle" | "generating-qr-code" | "qr-code-generated";
|
|
4
4
|
deposit: import("../../../../types").Deposit | null;
|
|
5
5
|
errorMessage: {
|
|
6
6
|
name: string;
|
|
@@ -13,7 +13,7 @@ export declare const AurixPayQRPHDepositContext: (props: {
|
|
|
13
13
|
} & {
|
|
14
14
|
children?: import("react").ReactNode | undefined;
|
|
15
15
|
}) => React.ReactNode, useAurixPayQRPHDepositContext: () => {
|
|
16
|
-
status: "idle" | "generating-qr-code" | "qr-code-generated"
|
|
16
|
+
status: "confirmed" | "failed" | "idle" | "generating-qr-code" | "qr-code-generated";
|
|
17
17
|
deposit: import("../../../../types").Deposit | null;
|
|
18
18
|
errorMessage: {
|
|
19
19
|
name: string;
|
package/dist/components/DepositWithdrawal/Deposit/AurixPayQRPHDeposit/useAurixPayQRPHDeposit.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export interface GenerateQRCodeInput {
|
|
|
5
5
|
promo?: string | null;
|
|
6
6
|
}
|
|
7
7
|
export declare function useAurixPayQRPHDeposit(): {
|
|
8
|
-
status: "idle" | "generating-qr-code" | "qr-code-generated"
|
|
8
|
+
status: "confirmed" | "failed" | "idle" | "generating-qr-code" | "qr-code-generated";
|
|
9
9
|
deposit: Deposit | null;
|
|
10
10
|
errorMessage: {
|
|
11
11
|
name: string;
|
package/dist/components/DepositWithdrawal/Deposit/AurixPayQRPHDeposit/useAurixPayQRPHDeposit.js
CHANGED
|
@@ -10,7 +10,7 @@ import { ObjectType } from '../../../../services/ObjectType.js';
|
|
|
10
10
|
import { useDepositWithdrawalPropsContext } from '../../DepositWithdrawalContext.js';
|
|
11
11
|
export function useAurixPayQRPHDeposit() {
|
|
12
12
|
const depositWithdrawalProps = useDepositWithdrawalPropsContext();
|
|
13
|
-
const
|
|
13
|
+
const _globalStore = useGlobalStore(useShallow((ctx) => ({
|
|
14
14
|
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
15
15
|
})));
|
|
16
16
|
const inputRef = useRef(null);
|
|
@@ -18,7 +18,7 @@ export function useAurixPayQRPHDeposit() {
|
|
|
18
18
|
const [status, setStatus] = useState('idle');
|
|
19
19
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
20
20
|
const verificationQuery = useMemberVerificationQuery();
|
|
21
|
-
const
|
|
21
|
+
const _verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
22
22
|
const mutation = useCreateAurixPayQrphDepositMutation({
|
|
23
23
|
onMutate() {
|
|
24
24
|
setStatus('generating-qr-code');
|
|
@@ -44,7 +44,7 @@ export function GCashDeposit() {
|
|
|
44
44
|
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
45
45
|
})));
|
|
46
46
|
const verificationQuery = useMemberVerificationQuery();
|
|
47
|
-
const
|
|
47
|
+
const _verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
48
48
|
const [status, setStatus] = useState('waiting');
|
|
49
49
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
50
50
|
const createDepositMutation = useCreateGCashDepositMutation({
|
|
@@ -44,7 +44,7 @@ export function GCashWebpayDeposit() {
|
|
|
44
44
|
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
45
45
|
})));
|
|
46
46
|
const verificationQuery = useMemberVerificationQuery();
|
|
47
|
-
const
|
|
47
|
+
const _verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
48
48
|
const [status, setStatus] = useState('waiting');
|
|
49
49
|
const createDepositMutation = useCreateGCashWebpayDepositMutation({
|
|
50
50
|
onMutate() {
|
|
@@ -32,7 +32,7 @@ export function MayaAppDeposit() {
|
|
|
32
32
|
kycVerificationStatus: ctx.kycVerificationStatus,
|
|
33
33
|
})));
|
|
34
34
|
const verificationQuery = useMemberVerificationQuery();
|
|
35
|
-
const
|
|
35
|
+
const _verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
|
|
36
36
|
const [status, setStatus] = useState('waiting');
|
|
37
37
|
const [errorMessage, setErrorMessage] = useState(null);
|
|
38
38
|
const createDepositMutation = useCreateMayaAppDepositMutation({
|
|
@@ -171,7 +171,7 @@ function AccountVerificationRequired() {
|
|
|
171
171
|
globalStore.depositWithdrawal.setOpen(false);
|
|
172
172
|
}, children: "Verify Now" })] }));
|
|
173
173
|
}
|
|
174
|
-
function
|
|
174
|
+
function _AccountVerificationPending() {
|
|
175
175
|
return (_jsxs("div", { className: "pt-xl", children: [_jsx("div", { className: "mx-auto flex size-12 items-center justify-center rounded-full bg-bg-warning-secondary", children: _jsx(AlertCircleIcon, { className: "size-6 text-text-featured-icon-light-warning" }) }), _jsx("h2", { className: "mt-lg text-center font-semibold text-lg", children: "Verification Pending" }), _jsx("p", { className: "mx-auto mt-xs max-w-[25rem] text-center text-sm text-text-tertiary-600", children: "Your personal verification is currently under review. You will be able to withdraw funds once your account is approved." })] }));
|
|
176
176
|
}
|
|
177
177
|
function InsufficientBalance() {
|
|
@@ -1,48 +1,119 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx,
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import isMobile from 'is-mobile';
|
|
4
4
|
import { useRouter } from 'next/navigation';
|
|
5
|
-
import { useEffect, useState } from 'react';
|
|
5
|
+
import { useEffect, useRef, useState } from 'react';
|
|
6
6
|
import { twJoin } from 'tailwind-merge';
|
|
7
7
|
import { useSessionQuery } from '../../client/hooks/useSessionQuery.js';
|
|
8
8
|
import { toaster } from '../../client/utils/toaster.js';
|
|
9
9
|
import { Fallback } from './Fallback.js';
|
|
10
10
|
export function DigitainContainer(props) {
|
|
11
11
|
const session = useSessionQuery();
|
|
12
|
-
const [isLoading, setLoading] = useState(
|
|
12
|
+
const [isLoading, setLoading] = useState(true);
|
|
13
|
+
const [hasBooted, setHasBooted] = useState(false);
|
|
13
14
|
const router = useRouter();
|
|
15
|
+
const hasBootedRef = useRef(false);
|
|
16
|
+
const containerRef = useRef(null);
|
|
14
17
|
useEffect(() => {
|
|
15
18
|
if (session.data?.status === 'authenticated') {
|
|
16
19
|
router.refresh();
|
|
17
20
|
}
|
|
18
21
|
}, [session.data?.status, router]);
|
|
19
22
|
useEffect(() => {
|
|
20
|
-
|
|
23
|
+
if (hasBootedRef.current || typeof window === 'undefined') {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
21
26
|
let attempts = 0;
|
|
22
|
-
const maxAttempts = 5;
|
|
23
|
-
|
|
24
|
-
if (
|
|
27
|
+
const maxAttempts = 5;
|
|
28
|
+
const intervalId = setInterval(() => {
|
|
29
|
+
if (window.Bootstrapper) {
|
|
25
30
|
console.log('Bootstrapper found, booting with params:', props.params);
|
|
31
|
+
hasBootedRef.current = true;
|
|
26
32
|
window.Bootstrapper.boot(props.params, {
|
|
27
33
|
name: isMobile() ? 'Mobile' : 'AsianView',
|
|
28
34
|
}).then(() => {
|
|
29
35
|
console.log('Sportsbook booted!');
|
|
36
|
+
setHasBooted(true);
|
|
37
|
+
}).catch((error) => {
|
|
38
|
+
console.error('Sportsbook boot failed:', error);
|
|
39
|
+
setLoading(false);
|
|
40
|
+
toaster.error({
|
|
41
|
+
title: 'Error',
|
|
42
|
+
description: 'Failed to initialize sportsbook.',
|
|
43
|
+
});
|
|
30
44
|
});
|
|
31
|
-
setTimeout(() => setLoading(false), 1000); // Give some time for the UI to update
|
|
32
45
|
clearInterval(intervalId);
|
|
33
46
|
}
|
|
34
47
|
else if (++attempts >= maxAttempts) {
|
|
48
|
+
console.warn('Bootstrapper did not load in time.');
|
|
35
49
|
setLoading(false);
|
|
36
50
|
toaster.error({
|
|
37
51
|
title: 'Error',
|
|
38
52
|
description: 'Sportsbook failed to load. Please try again later.',
|
|
39
53
|
});
|
|
40
|
-
console.warn('Bootstrapper did not load in time.');
|
|
41
54
|
clearInterval(intervalId);
|
|
42
55
|
}
|
|
43
|
-
}
|
|
44
|
-
const intervalId = setInterval(checkAndBoot, 500);
|
|
56
|
+
}, 500);
|
|
45
57
|
return () => clearInterval(intervalId);
|
|
46
58
|
}, [props.params]);
|
|
47
|
-
|
|
59
|
+
useEffect(() => {
|
|
60
|
+
if (!hasBooted || !containerRef.current) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const container = containerRef.current;
|
|
64
|
+
const handleIframeReady = (iframe) => {
|
|
65
|
+
const onLoad = () => {
|
|
66
|
+
console.log('Digitain iframe loaded successfully!');
|
|
67
|
+
setTimeout(() => setLoading(false), 300);
|
|
68
|
+
};
|
|
69
|
+
const onError = () => {
|
|
70
|
+
console.error('Digitain iframe failed to load');
|
|
71
|
+
setLoading(false);
|
|
72
|
+
toaster.error({
|
|
73
|
+
title: 'Error',
|
|
74
|
+
description: 'Failed to load sportsbook. Please try again.',
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
if (iframe.contentDocument?.readyState === 'complete') {
|
|
78
|
+
console.log('Iframe already loaded!');
|
|
79
|
+
setTimeout(() => setLoading(false), 300);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
iframe.addEventListener('load', onLoad, { once: true });
|
|
83
|
+
iframe.addEventListener('error', onError, { once: true });
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
const existingIframe = container.querySelector('iframe');
|
|
87
|
+
if (existingIframe) {
|
|
88
|
+
handleIframeReady(existingIframe);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
let iframeDetected = false;
|
|
92
|
+
const observer = new MutationObserver((mutations) => {
|
|
93
|
+
for (const mutation of mutations) {
|
|
94
|
+
for (const node of mutation.addedNodes) {
|
|
95
|
+
if (node.nodeName === 'IFRAME') {
|
|
96
|
+
console.log('Digitain iframe detected');
|
|
97
|
+
iframeDetected = true;
|
|
98
|
+
handleIframeReady(node);
|
|
99
|
+
observer.disconnect();
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
observer.observe(container, { childList: true, subtree: true });
|
|
106
|
+
const fallbackTimeout = setTimeout(() => {
|
|
107
|
+
if (!iframeDetected) {
|
|
108
|
+
console.warn('No iframe detected after 10 seconds. Hiding loader.');
|
|
109
|
+
setLoading(false);
|
|
110
|
+
observer.disconnect();
|
|
111
|
+
}
|
|
112
|
+
}, 10000);
|
|
113
|
+
return () => {
|
|
114
|
+
observer.disconnect();
|
|
115
|
+
clearTimeout(fallbackTimeout);
|
|
116
|
+
};
|
|
117
|
+
}, [hasBooted]);
|
|
118
|
+
return (_jsxs("div", { className: "relative h-full min-h-screen w-full", children: [_jsx("div", { className: twJoin('absolute inset-0 transition-opacity duration-300', isLoading ? 'z-10 opacity-100' : 'pointer-events-none opacity-0'), children: _jsx(Fallback, { type: "loading", fallbackBackgroundImage: props.fallbackBackgroundImage }) }), _jsx("div", { ref: containerRef, id: "digitain-container", className: twJoin('absolute inset-0 transition-opacity duration-300', isLoading ? 'opacity-0' : 'opacity-100') })] }));
|
|
48
119
|
}
|
|
@@ -8,7 +8,7 @@ export function Fallback({ type, signInUrl, fallbackBackgroundImage, }) {
|
|
|
8
8
|
const globalStore = useGlobalStore(useShallow((ctx) => ({
|
|
9
9
|
signIn: ctx.signIn,
|
|
10
10
|
})));
|
|
11
|
-
return (_jsxs("div", { className: "relative h-
|
|
11
|
+
return (_jsxs("div", { className: "relative h-full w-full", children: [fallbackBackgroundImage && (_jsx(Image, { src: fallbackBackgroundImage, alt: "Background", fill: true, className: "rounded-xl object-cover" })), _jsx("div", { className: "absolute right-0 bottom-safe-area-inset-bottom left-0 h-1/2 rounded-xl bg-gradient-to-b from-[#00000000] to-bg-primary-alt" }), _jsx("div", { className: "absolute right-0 bottom-5 left-0 z-10 m-auto flex max-w-[42.5rem] flex-col items-center justify-center px-4 lg:bottom-15", children: type === 'loading' ? (_jsxs(_Fragment, { children: [_jsx("div", { className: "mb-4 h-10 w-10 animate-spin rounded-full border-4 border-bg-tertiary border-t-button-tertiary-fg" }), _jsx("p", { className: "font-medium text-gray-700 text-lg", children: "Please wait while we load the Sports Book..." })] })) : (_jsx(_Fragment, { children: _jsxs("div", { className: "text-center", children: [_jsxs("div", { className: "mb-8 space-y-3", children: [_jsx("h2", { className: "font-bold text-gray-900 text-xl uppercase lg:text-[40px]", children: "Sports Book Login Required" }), _jsx("p", { className: "text-gray-600 text-xs leading-relaxed lg:text-lg", children: "The Sports Book is our online platform where you can explore real-time betting odds, place bets on a wide range of sports, and track your activity." }), _jsx("p", { className: "text-gray-600 text-xs leading-relaxed lg:text-lg", children: "Access is restricted to authenticated users. Please login to continue and unlock full access to the platform." })] }), _jsx(Button, { className: "mx-auto w-fit", onClick: () => {
|
|
12
12
|
if (signInUrl) {
|
|
13
13
|
window.location.href = signInUrl;
|
|
14
14
|
}
|
|
@@ -34,6 +34,10 @@ export const getDigitainLaunchToken = async () => {
|
|
|
34
34
|
},
|
|
35
35
|
});
|
|
36
36
|
const digitainGame = digitainGameQuery.edges[0]?.node;
|
|
37
|
+
if (!digitainGame) {
|
|
38
|
+
console.warn('--SPORTS WARNING-- No Digitain game found in CMS. Please ensure a game with provider "DIGITAIN" is configured.');
|
|
39
|
+
return '';
|
|
40
|
+
}
|
|
37
41
|
const sessionId = ObjectId.generate(ObjectType.GameSession).toString();
|
|
38
42
|
try {
|
|
39
43
|
await createGameSession({
|
|
@@ -17,7 +17,7 @@ import { getQueryClient } from '../../utils/getQueryClient.js';
|
|
|
17
17
|
import { getSessionQueryKey } from '../../utils/queryKeys.js';
|
|
18
18
|
import { LOCALSTORAGE_PUSH_NOTIFICATION_TOKEN_KEY } from '../PortalProvider/PushNotifications.js';
|
|
19
19
|
export function GameLaunchTrigger(props) {
|
|
20
|
-
const { game, bypassKycCheck, ...rest } = props;
|
|
20
|
+
const { game, bypassKycCheck: _bypassKycCheck, ...rest } = props;
|
|
21
21
|
const sessionQuery = useSessionQuery();
|
|
22
22
|
const createGameSessionMutation = useCreateGameSessionMutation();
|
|
23
23
|
const globalStore = useGlobalStore(useShallow((ctx) => ({
|
|
@@ -5,9 +5,11 @@ import { zodResolver } from '@hookform/resolvers/zod';
|
|
|
5
5
|
import { useRouter } from 'next/navigation';
|
|
6
6
|
import { useEffect } from 'react';
|
|
7
7
|
import { Controller, useForm } from 'react-hook-form';
|
|
8
|
+
import { twMerge } from 'tailwind-merge';
|
|
8
9
|
import invariant from 'tiny-invariant';
|
|
9
10
|
import { z } from 'zod';
|
|
10
11
|
import { useShallow } from 'zustand/shallow';
|
|
12
|
+
import { useAccountQuery } from '../../../client/hooks/useAccountQuery.js';
|
|
11
13
|
import { useCreateMemberVerificationMutation } from '../../../client/hooks/useCreateMemberVerificationMutation.js';
|
|
12
14
|
import { useGlobalStore } from '../../../client/hooks/useGlobalStore.js';
|
|
13
15
|
import { useMemberVerificationQuery } from '../../../client/hooks/useMemberVerificationQuery.js';
|
|
@@ -88,6 +90,8 @@ export function IdentityVerification() {
|
|
|
88
90
|
});
|
|
89
91
|
const memberVerification = useMemberVerificationQuery();
|
|
90
92
|
const memberId = memberVerification.data?.id;
|
|
93
|
+
const accountQuery = useAccountQuery();
|
|
94
|
+
const accountStatus = accountQuery.data?.status;
|
|
91
95
|
const globalStore = useGlobalStore(useShallow((ctx) => ({
|
|
92
96
|
kyc: ctx.kyc,
|
|
93
97
|
kycReminder: ctx.kycReminder,
|
|
@@ -140,7 +144,7 @@ export function IdentityVerification() {
|
|
|
140
144
|
type: 'validate',
|
|
141
145
|
message: error.message,
|
|
142
146
|
});
|
|
143
|
-
} }), _jsx(Field.ErrorText, { children: o.fieldState.error?.message })] })) }), _jsx(Button, { type: "submit", className: "mt-6", disabled: createPending || updatePending, children: "Continue" }), kyc.isSkippable && (_jsx(Button, { variant: "outline", colorScheme: "gray", className:
|
|
147
|
+
} }), _jsx(Field.ErrorText, { children: o.fieldState.error?.message })] })) }), _jsx(Button, { type: "submit", className: "mt-6", disabled: createPending || updatePending, children: "Continue" }), kyc.isSkippable && (_jsx(Button, { variant: "outline", colorScheme: "gray", className: twMerge('mt-lg', accountStatus === 'VERIFICATION_LOCKED' && 'hidden'), type: "button", onClick: () => {
|
|
144
148
|
globalStore.kyc.setOpen(false);
|
|
145
149
|
}, children: "Skip for now" })), _jsx(Button, { className: "bg-transparent text-text-brand-primary-600", onClick: async () => {
|
|
146
150
|
if (Capacitor.isNativePlatform()) {
|
|
@@ -3,9 +3,11 @@ import { Capacitor } from '@capacitor/core';
|
|
|
3
3
|
import { zodResolver } from '@hookform/resolvers/zod';
|
|
4
4
|
import { useRouter } from 'next/navigation';
|
|
5
5
|
import { useForm } from 'react-hook-form';
|
|
6
|
+
import { twMerge } from 'tailwind-merge';
|
|
6
7
|
import invariant from 'tiny-invariant';
|
|
7
8
|
import { z } from 'zod';
|
|
8
9
|
import { useShallow } from 'zustand/shallow';
|
|
10
|
+
import { useAccountQuery } from '../../../client/hooks/useAccountQuery.js';
|
|
9
11
|
import { useApproveMemberVerification } from '../../../client/hooks/useApproveMemberVerification.js';
|
|
10
12
|
import { useCreateMemberVerificationMutation } from '../../../client/hooks/useCreateMemberVerificationMutation.js';
|
|
11
13
|
import { useGlobalStore } from '../../../client/hooks/useGlobalStore.js';
|
|
@@ -40,6 +42,8 @@ export function PersonalInformation() {
|
|
|
40
42
|
})));
|
|
41
43
|
const memberVerificationQuery = useMemberVerificationQuery();
|
|
42
44
|
const memberVerificationId = memberVerificationQuery.data?.id;
|
|
45
|
+
const accountQuery = useAccountQuery();
|
|
46
|
+
const accountStatus = accountQuery.data?.status;
|
|
43
47
|
const router = useRouter();
|
|
44
48
|
const signOutMutation = useSignOutMutation({
|
|
45
49
|
async onSuccess() {
|
|
@@ -146,7 +150,7 @@ export function PersonalInformation() {
|
|
|
146
150
|
});
|
|
147
151
|
}
|
|
148
152
|
}, disabled: !permanentAddress, children: [_jsx(Checkbox.Control, { children: _jsx(Checkbox.Indicator, { asChild: true, children: _jsx(CheckIcon, {}) }) }), _jsx(Checkbox.Label, { children: "Use permanent address as current address" }), _jsx(Checkbox.HiddenInput, {})] }), _jsxs(Field.Root, { className: "mt-2xl", invalid: !!form.formState.errors.sourceOfIncome, children: [_jsx(Field.Label, { children: "Source of income" }), _jsx(Field.Input, { placeholder: "Enter your source of income", ...form.register('sourceOfIncome') }), _jsx(Field.ErrorText, { children: form.formState.errors.sourceOfIncome?.message })] }), _jsxs(Field.Root, { className: "mt-2xl", invalid: !!form.formState.errors.natureOfWork, children: [_jsx(Field.Label, { children: "Nature of Work" }), _jsx(Field.Input, { placeholder: "Enter your nature of work", ...form.register('natureOfWork') }), _jsx(Field.ErrorText, { children: form.formState.errors.natureOfWork?.message })] }), _jsxs(Field.Root, { className: "mt-2xl", invalid: !!form.formState.errors.placeOfBirth, children: [_jsx(Field.Label, { children: "Place of birth" }), _jsx(Field.Input, { placeholder: "Enter your place of birth", ...form.register('placeOfBirth') }), _jsx(Field.ErrorText, { children: form.formState.errors.placeOfBirth?.message })] }), _jsxs(Field.Root, { className: "mt-2xl", invalid: !!form.formState.errors.nationality, children: [_jsx(Field.Label, { children: "Nationality" }), _jsx(Field.Input, { placeholder: "Enter your nationality", ...form.register('nationality') }), _jsx(Field.ErrorText, { children: form.formState.errors.nationality?.message })] }), _jsx(Button, { type: "submit", className: "mt-4xl", disabled: updateMemberVerificationMutation.isPending ||
|
|
149
|
-
createMemberVerificationMutation.isPending, children: "Continue" }), kyc.isSkippable && (_jsx(Button, { variant: "outline", colorScheme: "gray", className:
|
|
153
|
+
createMemberVerificationMutation.isPending, children: "Continue" }), kyc.isSkippable && (_jsx(Button, { variant: "outline", colorScheme: "gray", className: twMerge('mt-lg', accountStatus === 'VERIFICATION_LOCKED' && 'hidden'), type: "button", onClick: () => {
|
|
150
154
|
globalStore.kyc.setOpen(false);
|
|
151
155
|
}, disabled: updateMemberVerificationMutation.isPending ||
|
|
152
156
|
createMemberVerificationMutation.isPending, children: "Skip for now" })), ' ', _jsx(Button, { className: "bg-transparent text-text-brand-primary-600", onClick: async () => {
|
|
@@ -27,7 +27,6 @@ export function KycOpenOnHomeMount(props) {
|
|
|
27
27
|
verification?.sumsubVerified ||
|
|
28
28
|
verification?.status === 'APPROVED' ||
|
|
29
29
|
verification?.status === 'VERIFIED'; //add default value on null return
|
|
30
|
-
const isPending = verification?.status === 'PENDING';
|
|
31
30
|
useEffect(() => {
|
|
32
31
|
// If bypass is enabled, do nothing.
|
|
33
32
|
if (props.bypassKycCheck) {
|
|
@@ -42,8 +41,7 @@ export function KycOpenOnHomeMount(props) {
|
|
|
42
41
|
const shouldShowReminder = Boolean(props.isSkippable);
|
|
43
42
|
const hasSeenKycModal = sessionStorage.getItem('hasSeenKycModal');
|
|
44
43
|
const isFirstVisit = !hasSeenKycModal;
|
|
45
|
-
|
|
46
|
-
if (isKycCompleted || isPending) {
|
|
44
|
+
if (isKycCompleted) {
|
|
47
45
|
setkycReminderOpen(false);
|
|
48
46
|
setkycOpen(false);
|
|
49
47
|
if (isKycCompleted) {
|
|
@@ -96,7 +94,6 @@ export function KycOpenOnHomeMount(props) {
|
|
|
96
94
|
isRejected,
|
|
97
95
|
isUnverified,
|
|
98
96
|
isKycCompleted,
|
|
99
|
-
isPending,
|
|
100
97
|
props.isSkippable,
|
|
101
98
|
props.bypassKycCheck,
|
|
102
99
|
]);
|