@opexa/portal-components 0.0.808 → 0.0.809

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.
Files changed (66) hide show
  1. package/dist/components/DepositWithdrawal/Deposit/AiOGCashDeposit/AiOGCashDeposit.js +54 -10
  2. package/dist/components/DepositWithdrawal/Deposit/AiOGrabPayDeposit/AiOGrabPayDeposit.js +54 -10
  3. package/dist/components/DepositWithdrawal/Deposit/AiOPalawanPayDeposit/AiOPalawanPayDeposit.js +54 -10
  4. package/dist/components/DepositWithdrawal/Deposit/AiOPayMayaDeposit/AiOPayMayaDeposit.js +54 -10
  5. package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.js +54 -9
  6. package/dist/components/DepositWithdrawal/Deposit/GCashWebpayDeposit/GCashWebpayDeposit.js +54 -9
  7. package/dist/components/DepositWithdrawal/Deposit/LibanganDeposit/LibanganDeposit.js +49 -25
  8. package/dist/components/DepositWithdrawal/Deposit/MayaDeposit/MayaDeposit.js +54 -9
  9. package/dist/components/DepositWithdrawal/Deposit/MayaWebpayDeposit/MayaWebpayDeposit.js +54 -9
  10. package/dist/components/DepositWithdrawal/Deposit/PisoPayDeposit/PisoPayDeposit.js +54 -10
  11. package/dist/components/DepositWithdrawal/DepositWithdrawal.lazy.js +2 -5
  12. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGCashDeposit/AiOGCashDeposit.d.ts +1 -0
  13. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGCashDeposit/AiOGCashDeposit.js +173 -0
  14. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGrabPayDeposit/AiOGrabPayDeposit.d.ts +1 -0
  15. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOGrabPayDeposit/AiOGrabPayDeposit.js +171 -0
  16. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPalawanPayDeposit/AiOPalawanPayDeposit.d.ts +1 -0
  17. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPalawanPayDeposit/AiOPalawanPayDeposit.js +171 -0
  18. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPayMayaDeposit/AiOPayMayaDeposit.d.ts +1 -0
  19. package/dist/components/DepositWithdrawal/Deposit__legacy/AiOPayMayaDeposit/AiOPayMayaDeposit.js +171 -0
  20. package/dist/components/DepositWithdrawal/Deposit__legacy/AvailablePromos.d.ts +8 -0
  21. package/dist/components/DepositWithdrawal/Deposit__legacy/AvailablePromos.js +33 -0
  22. package/dist/components/DepositWithdrawal/Deposit__legacy/Deposit.d.ts +1 -0
  23. package/dist/components/DepositWithdrawal/Deposit__legacy/Deposit.js +120 -0
  24. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashDeposit/GCashDeposit.d.ts +1 -0
  25. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashDeposit/GCashDeposit.js +163 -0
  26. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashWebpayDeposit/GCashWebpayDeposit.d.ts +1 -0
  27. package/dist/components/DepositWithdrawal/Deposit__legacy/GCashWebpayDeposit/GCashWebpayDeposit.js +165 -0
  28. package/dist/components/DepositWithdrawal/Deposit__legacy/LibanganDeposit/LibanganDeposit.d.ts +1 -0
  29. package/dist/components/DepositWithdrawal/Deposit__legacy/LibanganDeposit/LibanganDeposit.js +186 -0
  30. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaAppDeposit/MayaAppDeposit.d.ts +1 -0
  31. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaAppDeposit/MayaAppDeposit.js +157 -0
  32. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaDeposit/MayaDeposit.d.ts +1 -0
  33. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaDeposit/MayaDeposit.js +163 -0
  34. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaWebpayDeposit/MayaWebpayDeposit.d.ts +1 -0
  35. package/dist/components/DepositWithdrawal/Deposit__legacy/MayaWebpayDeposit/MayaWebpayDeposit.js +166 -0
  36. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDeposit.d.ts +1 -0
  37. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDeposit.js +10 -0
  38. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositAlert.d.ts +1 -0
  39. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositAlert.js +99 -0
  40. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositContext.d.ts +25 -0
  41. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositContext.js +2 -0
  42. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositDetails.d.ts +1 -0
  43. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositDetails.js +19 -0
  44. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositForm.d.ts +1 -0
  45. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/OnlineBankDepositForm.js +115 -0
  46. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/useOnlineBankDeposit.d.ts +13 -0
  47. package/dist/components/DepositWithdrawal/Deposit__legacy/OnlineBankDeposit/useOnlineBankDeposit.js +81 -0
  48. package/dist/components/DepositWithdrawal/Deposit__legacy/PisoPayDeposit/PisoPayDeposit.d.ts +1 -0
  49. package/dist/components/DepositWithdrawal/Deposit__legacy/PisoPayDeposit/PisoPayDeposit.js +180 -0
  50. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDeposit.d.ts +1 -0
  51. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDeposit.js +10 -0
  52. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositAlert.d.ts +1 -0
  53. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositAlert.js +99 -0
  54. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositContext.d.ts +25 -0
  55. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositContext.js +2 -0
  56. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositDetails.d.ts +1 -0
  57. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositDetails.js +17 -0
  58. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositForm.d.ts +1 -0
  59. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHDepositForm.js +116 -0
  60. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHQRCode.d.ts +3 -0
  61. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/QRPHQRCode.js +69 -0
  62. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/useQRPHDeposit.d.ts +13 -0
  63. package/dist/components/DepositWithdrawal/Deposit__legacy/QRPHDeposit/useQRPHDeposit.js +85 -0
  64. package/dist/components/DepositWithdrawal/HasPendingBonuses.d.ts +2 -2
  65. package/dist/components/DepositWithdrawal/HasPendingBonuses.js +1 -2
  66. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Capacitor } from '@capacitor/core';
4
+ import { Directory, Filesystem } from '@capacitor/filesystem';
5
+ import Image from 'next/image';
6
+ import { toaster } from '../../../../client/utils/toaster.js';
7
+ import qrphIcon from '../../../../images/qrph-icon.png';
8
+ import { QrCode } from '../../../../ui/QrCode/index.js';
9
+ export function QRPHQRCode(props) {
10
+ async function handleNativeDownload() {
11
+ const QRCode = await import('qrcode');
12
+ const dataUrl = await QRCode.toDataURL(props.qrCodeString, {
13
+ type: 'image/png',
14
+ color: {
15
+ light: '#FFFFFF',
16
+ dark: '#000000',
17
+ },
18
+ });
19
+ const base64 = dataUrl.split(',')[1];
20
+ try {
21
+ await Filesystem.writeFile({
22
+ path: `qrcode-${Date.now()}.png`,
23
+ data: base64,
24
+ directory: Directory.Documents,
25
+ });
26
+ toaster.success({
27
+ title: 'QR Code successfully saved to your device',
28
+ description: 'To continue with your deposit, please upload the QR code in your banking app.',
29
+ });
30
+ }
31
+ catch (error) {
32
+ console.log(error, 'error');
33
+ toaster.error({
34
+ title: 'Failed to save QR Code',
35
+ description: 'An error occurred while saving the QR code to your device.',
36
+ });
37
+ }
38
+ }
39
+ async function handleWebDownload() {
40
+ try {
41
+ const QRCode = await import('qrcode');
42
+ const dataUrl = await QRCode.toDataURL(props.qrCodeString, {
43
+ type: 'image/png',
44
+ color: {
45
+ light: '#FFFFFF',
46
+ dark: '#000000',
47
+ },
48
+ });
49
+ const link = document.createElement('a');
50
+ link.href = dataUrl;
51
+ link.download = `qrcode-${Date.now()}.png`;
52
+ document.body.appendChild(link);
53
+ link.click();
54
+ document.body.removeChild(link);
55
+ toaster.success({
56
+ title: 'QR Code successfully saved to your device',
57
+ description: 'To continue with your deposit, please upload the QR code in your banking app.',
58
+ });
59
+ }
60
+ catch (error) {
61
+ console.log(error, 'error');
62
+ toaster.error({
63
+ title: 'Failed to save QR Code',
64
+ description: 'An error occurred while saving the QR code to your device.',
65
+ });
66
+ }
67
+ }
68
+ return (_jsxs(QrCode.Root, { value: props.qrCodeString, className: "mx-auto mt-6 w-[12.5rem] rounded-lg border border-border-primary bg-bg-brand-secondary-alt p-5 lg:w-[13rem] lg:p-6", children: [_jsxs("div", { className: "relative", children: [_jsx(QrCode.Frame, { className: "mx-auto size-[10rem] rounded-[0.25rem] border border-border-primary bg-white", children: _jsx(QrCode.Pattern, {}) }), _jsx(QrCode.Overlay, { className: "bg-white p-0.5", children: _jsx(Image, { src: qrphIcon, alt: "", className: "size-8", width: 40, height: 40 }) })] }), Capacitor.isNativePlatform() ? (_jsx("button", { type: "button", onClick: handleNativeDownload, className: "mt-5 block w-full text-center font-semibold text-sm text-text-secondary-700", children: "Download QR Code to Device" })) : (_jsx("button", { type: "button", onClick: handleWebDownload, className: "mt-5 block w-full text-center font-semibold text-sm text-text-secondary-700", children: "Download QR Code" }))] }));
69
+ }
@@ -0,0 +1,13 @@
1
+ import type { Deposit } from '../../../../types';
2
+ export type UseQRPHDepositReturn = ReturnType<typeof useQRPHDeposit>;
3
+ export declare function useQRPHDeposit(): {
4
+ view: "form" | "qrCode";
5
+ status: "waiting" | "processing" | "failed" | "verification-waiting" | "verification-processing" | "verification-failed" | "verification-success";
6
+ verify: () => void;
7
+ reset: () => void;
8
+ deposit: Deposit | null;
9
+ generateQRCode: (input: {
10
+ amount: string;
11
+ promo?: string | null;
12
+ }) => void;
13
+ };
@@ -0,0 +1,85 @@
1
+ import { useEffect, useState } from 'react';
2
+ import invariant from 'tiny-invariant';
3
+ import { useShallow } from 'zustand/shallow';
4
+ import { useCreateQRPHDepositMutation } from '../../../../client/hooks/useCreateQRPHDepositMutation.js';
5
+ import { useDepositQuery } from '../../../../client/hooks/useDepositQuery.js';
6
+ import { useGlobalStore } from '../../../../client/hooks/useGlobalStore.js';
7
+ import { useMemberVerificationQuery } from '../../../../client/hooks/useMemberVerificationQuery.js';
8
+ import { getQueryClient } from '../../../../utils/getQueryClient.js';
9
+ import { getDepositsCountQueryKey } from '../../../../utils/queryKeys.js';
10
+ export function useQRPHDeposit() {
11
+ const globalStore = useGlobalStore(useShallow((ctx) => ({
12
+ kycVerificationStatus: ctx.kycVerificationStatus,
13
+ })));
14
+ const [deposit, setDeposit] = useState(null);
15
+ const verificationQuery = useMemberVerificationQuery();
16
+ const verificationStatus = verificationQuery.data?.status ?? 'UNVERIFIED';
17
+ const [status, setStatus] = useState('waiting');
18
+ const view = status === 'verification-failed' ||
19
+ status === 'verification-waiting' ||
20
+ status === 'verification-success' ||
21
+ status === 'verification-processing'
22
+ ? 'qrCode'
23
+ : 'form';
24
+ const mutation = useCreateQRPHDepositMutation({
25
+ onMutate() {
26
+ setStatus('processing');
27
+ },
28
+ onSuccess(data) {
29
+ const queryClient = getQueryClient();
30
+ invariant(data.qrCode);
31
+ setStatus('verification-waiting');
32
+ queryClient.invalidateQueries({ queryKey: getDepositsCountQueryKey() });
33
+ setDeposit(data);
34
+ },
35
+ onError() {
36
+ setStatus('failed');
37
+ },
38
+ });
39
+ const generateQRCode = (input) => {
40
+ //handle new kyc process
41
+ if (verificationStatus === 'PENDING' ||
42
+ verificationStatus === 'UNVERIFIED' ||
43
+ verificationStatus === 'REJECTED' ||
44
+ verificationStatus === 'CREATED') {
45
+ globalStore.kycVerificationStatus.setOpen(true);
46
+ return;
47
+ }
48
+ else {
49
+ mutation.mutate({
50
+ amount: input.amount,
51
+ promo: input.promo ?? undefined,
52
+ });
53
+ }
54
+ };
55
+ const query = useDepositQuery(deposit?.id, {
56
+ enabled: !!deposit,
57
+ refetchInterval: 5000,
58
+ });
59
+ useEffect(() => {
60
+ if (query.data?.status === 'APPROVED' ||
61
+ query.data?.status === 'CONFIRMED') {
62
+ setStatus('verification-success');
63
+ }
64
+ if (query.data?.status === 'CANCELLED' ||
65
+ query.data?.status === 'REJECTED' ||
66
+ query.data?.status === 'FAILED') {
67
+ setStatus('verification-failed');
68
+ }
69
+ }, [query.data?.status]);
70
+ const reset = () => {
71
+ setDeposit(null);
72
+ setStatus('waiting');
73
+ };
74
+ const verify = () => {
75
+ setStatus('verification-processing');
76
+ };
77
+ return {
78
+ view,
79
+ status,
80
+ verify,
81
+ reset,
82
+ deposit,
83
+ generateQRCode,
84
+ };
85
+ }
@@ -1,5 +1,5 @@
1
1
  interface Props {
2
2
  className?: string;
3
3
  }
4
- declare function HasPendingBonuses(props: Props): import("react/jsx-runtime").JSX.Element;
5
- export default HasPendingBonuses;
4
+ export declare function HasPendingBonuses(props: Props): import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -8,7 +8,7 @@ import { XIcon } from '../../icons/XIcon.js';
8
8
  import { Button } from '../../ui/Button/index.js';
9
9
  import { Dialog } from '../../ui/Dialog/index.js';
10
10
  import { Portal } from '../../ui/Portal/index.js';
11
- function HasPendingBonuses(props) {
11
+ export function HasPendingBonuses(props) {
12
12
  const hasPendingBonusStore = useGlobalStore(useShallow((ctx) => ctx.pendingBonus));
13
13
  return (_jsx(Dialog.Root, { open: hasPendingBonusStore.open, onOpenChange: (details) => {
14
14
  hasPendingBonusStore.setOpen(details.open);
@@ -19,4 +19,3 @@ function HasPendingBonuses(props) {
19
19
  hasPendingBonusStore.setShouldShowWarning(false);
20
20
  }, children: "Yes" })] })] }) })] }) }));
21
21
  }
22
- export default HasPendingBonuses;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opexa/portal-components",
3
- "version": "0.0.808",
3
+ "version": "0.0.809",
4
4
  "exports": {
5
5
  "./ui/*": {
6
6
  "types": "./dist/ui/*/index.d.ts",