@opexa/portal-components 0.0.15 → 0.0.16
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/client/hooks/index.d.ts +4 -0
- package/dist/client/hooks/useCreateGCashWithdrawalMutation.d.ts +4 -0
- package/dist/client/hooks/useCreateGCashWithdrawalMutation.js +1 -0
- package/dist/client/hooks/useCreateGCashWithdrawalMutation.mjs +38 -0
- package/dist/client/hooks/useCreateInstapayWithdrawalMutation.d.ts +4 -0
- package/dist/client/hooks/useCreateInstapayWithdrawalMutation.js +1 -0
- package/dist/client/hooks/useCreateInstapayWithdrawalMutation.mjs +38 -0
- package/dist/client/hooks/useCreateMayaAppWithdrawalMutation.d.ts +4 -0
- package/dist/client/hooks/useCreateMayaAppWithdrawalMutation.js +1 -0
- package/dist/client/hooks/useCreateMayaAppWithdrawalMutation.mjs +38 -0
- package/dist/client/hooks/useCreateMayaWithdrawalMutation.d.ts +4 -0
- package/dist/client/hooks/useCreateMayaWithdrawalMutation.js +1 -0
- package/dist/client/hooks/useCreateMayaWithdrawalMutation.mjs +38 -0
- package/dist/client/hooks/useDepositQuery.js +1 -1
- package/dist/client/hooks/useDepositQuery.mjs +12 -13
- package/dist/client/hooks/usePromoQuery.js +1 -1
- package/dist/client/hooks/usePromoQuery.mjs +13 -13
- package/dist/client-hooks.js +1 -1
- package/dist/client-hooks.mjs +84 -76
- package/dist/components/DepositWithdrawal/Deposit/AvailablePromos.js +1 -0
- package/dist/components/DepositWithdrawal/{AvailablePromos.mjs → Deposit/AvailablePromos.mjs} +31 -31
- package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/GCashDeposit/GCashDeposit.mjs +1 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/MayaAppDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/MayaAppDeposit.mjs +4 -4
- package/dist/components/DepositWithdrawal/Deposit/MayaDeposit/MayaDeposit.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaDeposit/MayaDeposit.mjs +1 -1
- package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositForm.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/OnlineBankDeposit/OnlineBankDepositForm.mjs +75 -98
- package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.js +1 -1
- package/dist/components/DepositWithdrawal/Deposit/QRPHDeposit/QRPHDepositForm.mjs +1 -1
- package/dist/components/DepositWithdrawal/MayaSessionExpired.d.ts +1 -0
- package/dist/components/DepositWithdrawal/MayaSessionExpired.js +1 -0
- package/dist/components/DepositWithdrawal/{Deposit/MayaAppDeposit/SessionExpired.mjs → MayaSessionExpired.mjs} +3 -3
- package/dist/components/DepositWithdrawal/PaymentMethods.js +1 -1
- package/dist/components/DepositWithdrawal/PaymentMethods.mjs +23 -17
- package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal/GCashWithdrawal.d.ts +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal/GCashWithdrawal.js +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal/GCashWithdrawal.mjs +205 -0
- package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.d.ts +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.js +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.mjs +264 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal/MayaAppWithdrawal.d.ts +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal/MayaAppWithdrawal.js +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal/MayaAppWithdrawal.mjs +186 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal/MayaWithdrawal.d.ts +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal/MayaWithdrawal.js +1 -0
- package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal/MayaWithdrawal.mjs +205 -0
- package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.d.ts +1 -1
- package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.js +1 -1
- package/dist/components/DepositWithdrawal/Withdrawal/Withdrawal.mjs +81 -3
- package/dist/components/DepositWithdrawal/utils.d.ts +1 -1
- package/dist/components/DepositWithdrawal/utils.js +1 -1
- package/dist/components/DepositWithdrawal/utils.mjs +2 -1
- package/dist/images/instapay.png.js +1 -0
- package/dist/images/instapay.png.mjs +4 -0
- package/dist/theme.css +21 -2
- package/dist/ui/Field/field.recipe.js +1 -1
- package/dist/ui/Field/field.recipe.mjs +3 -3
- package/dist/ui/PasswordInput/PasswordInput.d.ts +1 -0
- package/dist/ui/PasswordInput/index.d.ts +1 -0
- package/dist/ui/PasswordInput/passwordInput.recipe.d.ts +52 -0
- package/dist/utils/queryKeys.d.ts +4 -0
- package/dist/utils/queryKeys.js +1 -1
- package/dist/utils/queryKeys.mjs +50 -38
- package/dist/utils.js +1 -1
- package/dist/utils.mjs +48 -44
- package/package.json +3 -3
- package/dist/components/DepositWithdrawal/AvailablePromos.js +0 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/SessionExpired.d.ts +0 -1
- package/dist/components/DepositWithdrawal/Deposit/MayaAppDeposit/SessionExpired.js +0 -1
- package/dist/components/DepositWithdrawal/Withdrawal/GCashWithdrawal.d.ts +0 -1
- package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal.d.ts +0 -1
- package/dist/components/DepositWithdrawal/Withdrawal/MayaAppWithdrawal.d.ts +0 -1
- package/dist/components/DepositWithdrawal/Withdrawal/MayaWithdrawal.d.ts +0 -1
- /package/dist/components/DepositWithdrawal/{AvailablePromos.d.ts → Deposit/AvailablePromos.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),P=require("@ark-ui/react"),Q=require("@hookform/resolvers/zod"),S=require("react"),h=require("react-hook-form"),a=require("zod");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../../../constants/index.js");require("../../../../utils/capitalize.js");const i=require("../../../../utils/parseDecimal.js");require("../../../../utils/getLocaleInfo.js");require("../../../../utils/getQueryClient.js");require("../../../../utils/isMobile.js");const R=require("../../../../client/hooks/useAvailablePromosQuery.js");require("lodash-es");require("@opexa/portal-sdk-core/object-id");const O=require("../../../../client/hooks/useDepositsCountQuery.js"),F=require("../../../../client/hooks/useDisclosure.js");require("../../../../client/hooks/useGlobalStore.js");require("../../../../client/hooks/useInfiniteQueryHelper.js");require("usehooks-ts");const M=require("../../../../client/hooks/usePaymentSettingsQuery.js"),N=require("../../../../icons/AlertCircleIcon.js"),k=require("../../../../icons/ChevronDownIcon.js"),E=require("../../../../icons/ChevronUpIcon.js"),T=require("../../../../icons/XIcon.js"),n=require("../../../../ui/AlertDialog/AlertDialog.js");require("../../../../ui/Avatar/Avatar.js");require("../../../../ui/Badge/Badge.js");const x=require("../../../../ui/Button/Button.js");require("../../../../ui/Checkbox/Checkbox.js");require("../../../../ui/Clipboard/Clipboard.js");require("../../../../ui/DatePicker/DatePicker.js");require("../../../../ui/Dialog/Dialog.js");require("../../../../ui/Drawer/Drawer.js");const v=require("../../../../ui/Field/Field.js");require("../../../../ui/IconButton/iconButton.recipe.js");const l=require("../../../../ui/NumberInput/NumberInput.js");require("../../../../ui/PinInput/PinInput.js");require("../../../../ui/Popover/Popover.js");require("tailwind-merge");require("../../../../ui/SegmentGroup/SegmentGroup.js");require("../../../../ui/Select/Select.js");require("../../../../ui/Table/Table.js");require("../../../../ui/Tabs/Tabs.js");const w=require("../../AmountChoices.js"),B=require("
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),P=require("@ark-ui/react"),Q=require("@hookform/resolvers/zod"),S=require("react"),h=require("react-hook-form"),a=require("zod");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../../../constants/index.js");require("../../../../utils/capitalize.js");const i=require("../../../../utils/parseDecimal.js");require("../../../../utils/getLocaleInfo.js");require("../../../../utils/getQueryClient.js");require("../../../../utils/isMobile.js");const R=require("../../../../client/hooks/useAvailablePromosQuery.js");require("lodash-es");require("@opexa/portal-sdk-core/object-id");const O=require("../../../../client/hooks/useDepositsCountQuery.js"),F=require("../../../../client/hooks/useDisclosure.js");require("../../../../client/hooks/useGlobalStore.js");require("../../../../client/hooks/useInfiniteQueryHelper.js");require("usehooks-ts");const M=require("../../../../client/hooks/usePaymentSettingsQuery.js"),N=require("../../../../icons/AlertCircleIcon.js"),k=require("../../../../icons/ChevronDownIcon.js"),E=require("../../../../icons/ChevronUpIcon.js"),T=require("../../../../icons/XIcon.js"),n=require("../../../../ui/AlertDialog/AlertDialog.js");require("../../../../ui/Avatar/Avatar.js");require("../../../../ui/Badge/Badge.js");const x=require("../../../../ui/Button/Button.js");require("../../../../ui/Checkbox/Checkbox.js");require("../../../../ui/Clipboard/Clipboard.js");require("../../../../ui/DatePicker/DatePicker.js");require("../../../../ui/Dialog/Dialog.js");require("../../../../ui/Drawer/Drawer.js");const v=require("../../../../ui/Field/Field.js");require("../../../../ui/IconButton/iconButton.recipe.js");const l=require("../../../../ui/NumberInput/NumberInput.js");require("../../../../ui/PinInput/PinInput.js");require("../../../../ui/Popover/Popover.js");require("tailwind-merge");require("../../../../ui/SegmentGroup/SegmentGroup.js");require("../../../../ui/Select/Select.js");require("../../../../ui/Table/Table.js");require("../../../../ui/Tabs/Tabs.js");const w=require("../../AmountChoices.js"),B=require("../AvailablePromos.js"),H=require("./QRPHDepositContext.js");function V(){var j;const b=H.useQRPHDepositContext(),m=F.useDisclosure(),I=O.useDepositsCountQuery().data??0,q=M.usePaymentSettingsQuery(),p=q.data,c=p==null?void 0:p.qrphDepositGatewaySettings,d=i.parseDecimal(c==null?void 0:c.maximumAmount,0),u=I<=0?i.parseDecimal((j=q.data)==null?void 0:j.minimumFirstDepositAmount,0):i.parseDecimal(c==null?void 0:c.minimumAmount,0),g=R.useAvailablePromosQuery().data??[],A=a.z.object({amount:a.z.string().superRefine((o,s)=>{const r=i.parseDecimal(o,0);r<u&&s.addIssue({type:"number",code:a.z.ZodIssueCode.too_small,inclusive:!0,minimum:u,message:`Minimum amount is ${u.toLocaleString()}`}),r>d&&s.addIssue({type:"number",code:a.z.ZodIssueCode.too_big,inclusive:!0,maximum:d,message:`Maximum amount is ${d.toLocaleString()}`})}),promo:a.z.string().optional().nullable()}).superRefine((o,s)=>{const r=g.find(z=>z.id===o.promo),C=i.parseDecimal(r==null?void 0:r.minimumDepositAmount,0),D=i.parseDecimal(r==null?void 0:r.maximumDepositAmount,0),y=i.parseDecimal(o.amount,0);r&&y<C&&s.addIssue({path:["amount"],code:a.z.ZodIssueCode.custom,message:`Minimum amount for this promo is ${C.toLocaleString()}`}),r&&y>D&&s.addIssue({path:["amount"],code:a.z.ZodIssueCode.custom,message:`Maximum amount for this promo is ${D}`})}),t=h.useForm({mode:"all",resolver:Q.zodResolver(A),defaultValues:{amount:"0",promo:null}});S.useEffect(()=>{u&&t.reset({amount:u.toString(),promo:null})},[t,u]);const f=t.handleSubmit(async o=>{b.generateQrCode({amount:o.amount.toString(),promo:o.promo??void 0},{onSuccess(){t.reset()}})});return e.jsxs("form",{onSubmit:f,noValidate:!0,children:[e.jsx(h.Controller,{control:t.control,name:"amount",render:o=>{var s;return e.jsxs(v.Root,{invalid:!!t.formState.errors.amount,children:[e.jsxs(l.Root,{min:0,step:1,value:o.field.value,onValueChange:r=>{o.field.onChange(r.value)},formatOptions:{maximumFractionDigits:2,minimumFractionDigits:0},allowMouseWheel:!0,children:[e.jsx(l.Label,{children:"Enter amount you want to deposit"}),e.jsxs(l.Control,{children:[e.jsx(l.Input,{}),e.jsx(l.IncrementTrigger,{children:e.jsx(E.ChevronUpIcon,{})}),e.jsx(l.DecrementTrigger,{children:e.jsx(k.ChevronDownIcon,{})})]})]}),e.jsx(v.ErrorText,{children:(s=t.formState.errors.amount)==null?void 0:s.message})]})}}),e.jsx(w.AmountChoices,{value:i.parseDecimal(t.watch("amount"),0),onChange:o=>{t.setValue("amount",o.toString(),{shouldTouch:!0,shouldDirty:!0,shouldValidate:!0})},min:u,max:d,className:"mt-xl"}),e.jsx(h.Controller,{control:t.control,name:"promo",render:o=>e.jsx(B.AvailablePromos,{className:"mt-4xl",value:o.field.value,onChange:o.field.onChange})}),e.jsxs("p",{className:"mt-4xl text-xs",children:["Upon clicking the deposit button, you agree to the"," ",e.jsx("button",{type:"button",className:"underline underline-offset-2",children:"Terms of Use and Privacy Policy"}),"."]}),e.jsx(x.Button,{type:"submit",className:"mt-4.5",onClick:async o=>{await t.trigger("amount")&&(g.length<=0||t.getValues("promo")||(o.preventDefault(),m.setOpen(!0)))},children:"Deposit"}),e.jsx(n.Root,{role:"alertdialog",open:m.open,onOpenChange:o=>{m.setOpen(o.open)},lazyMount:!0,unmountOnExit:!0,closeOnEscape:!1,closeOnInteractOutside:!1,children:e.jsxs(P.Portal,{children:[e.jsx(n.Backdrop,{className:"!z-[calc(var(--z-dialog)+10)]"}),e.jsx(n.Positioner,{className:"!z-[calc(var(--z-dialog)+25)]",children:e.jsxs(n.Content,{children:[e.jsxs(n.Header,{children:[e.jsx("div",{className:"flex size-12 items-center justify-center rounded-full bg-[#FEE4E2] text-[#D92D20]",children:e.jsx(N.AlertCircleIcon,{})}),e.jsx(n.CloseTrigger,{children:e.jsx(T.XIcon,{})})]}),e.jsxs(n.Body,{children:[e.jsx(n.Title,{children:"Submit deposit request without promo?"}),e.jsx(n.Description,{children:"You haven’t selected a promo. Are you sure you want to proceed without one?"})]}),e.jsxs(n.Footer,{children:[e.jsx(x.Button,{variant:"outline",colorScheme:"gray",onClick:()=>{m.setOpen(!1)},children:"Cancel"}),e.jsx(x.Button,{onClick:()=>{f(),m.setOpen(!1)},children:"Proceed"})]})]})})]})})]})}exports.QRPHDepositForm=V;
|
|
@@ -46,7 +46,7 @@ import "../../../../ui/Select/Select.mjs";
|
|
|
46
46
|
import "../../../../ui/Table/Table.mjs";
|
|
47
47
|
import "../../../../ui/Tabs/Tabs.mjs";
|
|
48
48
|
import { AmountChoices as to } from "../../AmountChoices.mjs";
|
|
49
|
-
import { AvailablePromos as ro } from "
|
|
49
|
+
import { AvailablePromos as ro } from "../AvailablePromos.mjs";
|
|
50
50
|
import { useQRPHDepositContext as io } from "./QRPHDepositContext.mjs";
|
|
51
51
|
function ie() {
|
|
52
52
|
var C;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function MayaSessionExpired(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../../icons/AlertTriangle.js");function s(){return e.jsxs("div",{className:"bg-gray-50 mt-3xl rounded-lg px-5 py-16 lg:mt-4xl",children:[e.jsx(t.AlertTriangleIcon,{className:"text-amber-500 mx-auto size-10"}),e.jsx("h2",{className:"mt-3 text-center text-lg font-semibold",children:"Session Expired"}),e.jsx("p",{className:"text-gray-700 mx-auto mt-2 max-w-[30rem] text-center text-sm",children:"Your session has timed out. To continue with deposits or withdrawals, Please try reloading the app."})]})}exports.MayaSessionExpired=s;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as t, jsx as e } from "react/jsx-runtime";
|
|
2
|
-
import { AlertTriangleIcon as r } from "
|
|
3
|
-
function
|
|
2
|
+
import { AlertTriangleIcon as r } from "../../icons/AlertTriangle.mjs";
|
|
3
|
+
function o() {
|
|
4
4
|
return /* @__PURE__ */ t("div", { className: "bg-gray-50 mt-3xl rounded-lg px-5 py-16 lg:mt-4xl", children: [
|
|
5
5
|
/* @__PURE__ */ e(r, { className: "text-amber-500 mx-auto size-10" }),
|
|
6
6
|
/* @__PURE__ */ e("h2", { className: "mt-3 text-center text-lg font-semibold", children: "Session Expired" }),
|
|
@@ -8,5 +8,5 @@ function a() {
|
|
|
8
8
|
] });
|
|
9
9
|
}
|
|
10
10
|
export {
|
|
11
|
-
|
|
11
|
+
o as MayaSessionExpired
|
|
12
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),q=require("next/image");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../constants/index.js");require("../../utils/capitalize.js");require("../../utils/parseDecimal.js");require("../../utils/getLocaleInfo.js");require("../../utils/getQueryClient.js");require("../../utils/isMobile.js");const d=require("../../client/hooks/useControllableState.js");require("lodash-es");require("react");require("@opexa/portal-sdk-core/object-id");require("../../client/hooks/useGlobalStore.js");require("../../client/hooks/useInfiniteQueryHelper.js");require("usehooks-ts");const h=require("../../icons/CheckIcon.js"),g=require("../../images/QRPh.png.js"),m=require("../../images/gcash.png.js"),t=require("../../images/maya.png.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),q=require("next/image");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../constants/index.js");require("../../utils/capitalize.js");require("../../utils/parseDecimal.js");require("../../utils/getLocaleInfo.js");require("../../utils/getQueryClient.js");require("../../utils/isMobile.js");const d=require("../../client/hooks/useControllableState.js");require("lodash-es");require("react");require("@opexa/portal-sdk-core/object-id");require("../../client/hooks/useGlobalStore.js");require("../../client/hooks/useInfiniteQueryHelper.js");require("usehooks-ts");const h=require("../../icons/CheckIcon.js"),g=require("../../images/QRPh.png.js"),m=require("../../images/gcash.png.js"),v=require("../../images/instapay.png.js"),t=require("../../images/maya.png.js"),x=require("../../images/online-bank.png.js");require("../../ui/AlertDialog/AlertDialog.js");require("../../ui/Avatar/Avatar.js");require("../../ui/Badge/Badge.js");require("@ark-ui/react");require("../../ui/Button/button.recipe.js");const u=require("../../ui/Checkbox/Checkbox.js");require("../../ui/Clipboard/Clipboard.js");require("../../ui/DatePicker/DatePicker.js");require("../../ui/Dialog/Dialog.js");require("../../ui/Drawer/Drawer.js");const b=require("../../ui/Field/Field.js");require("../../ui/IconButton/iconButton.recipe.js");require("../../ui/NumberInput/NumberInput.js");require("../../ui/PinInput/PinInput.js");require("../../ui/Popover/Popover.js");require("tailwind-merge");require("../../ui/SegmentGroup/SegmentGroup.js");require("../../ui/Select/Select.js");require("../../ui/Table/Table.js");require("../../ui/Tabs/Tabs.js");const y=require("./utils.js"),s=[{value:"GCASH",label:"GCash",image:m},{value:"MAYA_APP",label:"Maya App",image:t},{value:"MAYA",label:"Maya",image:t},{value:"QRPH",label:"QRPH",image:g},{value:"ONLINE_BANK",label:"Online Bank",image:x},{value:"INSTAPAY",label:"Instapay",image:v}];function j(i){var n;const l=(n=i.options)!=null&&n.length?s.filter(r=>{var a;return(a=i.options)==null?void 0:a.includes(r.value)}):s,[c,o]=d.useControllableState({value:i.value,defaultValue:i.defaultValue??l[0].value,onChange:i.onChange});return e.jsxs("div",{className:i.className,children:[e.jsx(b.Label,{asChild:!0,children:e.jsx("div",{children:"Select your payment method"})}),e.jsx(u.Group,{value:[c],onValueChange:r=>{const a=r.at(-1);a&&o(y.PaymentMethodDefinition.parse(a))},className:"grid grid-cols-2 gap-x-4 gap-y-3",children:l.map(r=>e.jsxs(u.Root,{value:r.value,className:"border-gray-200 ui-checked:border-gray-900 ui-checked:outline-solid ui-checked:outline-gray-900 flex cursor-pointer rounded-xl border p-xl ui-checked:outline",children:[e.jsx("div",{className:"grow",children:e.jsx(q,{src:r.image,alt:"",width:200,height:40,className:"h-5 w-auto lg:h-8",draggable:!1})}),e.jsx(u.Control,{className:"shrink-0",children:e.jsx(u.Indicator,{asChild:!0,children:e.jsx(h.CheckIcon,{})})}),e.jsx(u.HiddenInput,{})]},r.value))})]})}exports.PaymentMethods=j;
|
|
@@ -9,24 +9,25 @@ import "../../utils/parseDecimal.mjs";
|
|
|
9
9
|
import "../../utils/getLocaleInfo.mjs";
|
|
10
10
|
import "../../utils/getQueryClient.mjs";
|
|
11
11
|
import "../../utils/isMobile.mjs";
|
|
12
|
-
import { useControllableState as
|
|
12
|
+
import { useControllableState as s } from "../../client/hooks/useControllableState.mjs";
|
|
13
13
|
import "lodash-es";
|
|
14
14
|
import "react";
|
|
15
15
|
import "@opexa/portal-sdk-core/object-id";
|
|
16
16
|
import "../../client/hooks/useGlobalStore.mjs";
|
|
17
17
|
import "../../client/hooks/useInfiniteQueryHelper.mjs";
|
|
18
18
|
import "usehooks-ts";
|
|
19
|
-
import { CheckIcon as
|
|
19
|
+
import { CheckIcon as d } from "../../icons/CheckIcon.mjs";
|
|
20
20
|
import h from "../../images/QRPh.png.mjs";
|
|
21
21
|
import g from "../../images/gcash.png.mjs";
|
|
22
|
+
import f from "../../images/instapay.png.mjs";
|
|
22
23
|
import l from "../../images/maya.png.mjs";
|
|
23
|
-
import
|
|
24
|
+
import v from "../../images/online-bank.png.mjs";
|
|
24
25
|
import "../../ui/AlertDialog/AlertDialog.mjs";
|
|
25
26
|
import "../../ui/Avatar/Avatar.mjs";
|
|
26
27
|
import "../../ui/Badge/Badge.mjs";
|
|
27
28
|
import "@ark-ui/react";
|
|
28
29
|
import "../../ui/Button/button.recipe.mjs";
|
|
29
|
-
import { Group as
|
|
30
|
+
import { Group as y, Root as b, Control as N, Indicator as A, HiddenInput as C } from "../../ui/Checkbox/Checkbox.mjs";
|
|
30
31
|
import "../../ui/Clipboard/Clipboard.mjs";
|
|
31
32
|
import "../../ui/DatePicker/DatePicker.mjs";
|
|
32
33
|
import "../../ui/Dialog/Dialog.mjs";
|
|
@@ -41,8 +42,8 @@ import "../../ui/SegmentGroup/SegmentGroup.mjs";
|
|
|
41
42
|
import "../../ui/Select/Select.mjs";
|
|
42
43
|
import "../../ui/Table/Table.mjs";
|
|
43
44
|
import "../../ui/Tabs/Tabs.mjs";
|
|
44
|
-
import { PaymentMethodDefinition as
|
|
45
|
-
const
|
|
45
|
+
import { PaymentMethodDefinition as I } from "./utils.mjs";
|
|
46
|
+
const p = [
|
|
46
47
|
{
|
|
47
48
|
value: "GCASH",
|
|
48
49
|
label: "GCash",
|
|
@@ -66,31 +67,36 @@ const n = [
|
|
|
66
67
|
{
|
|
67
68
|
value: "ONLINE_BANK",
|
|
68
69
|
label: "Online Bank",
|
|
70
|
+
image: v
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
value: "INSTAPAY",
|
|
74
|
+
label: "Instapay",
|
|
69
75
|
image: f
|
|
70
76
|
}
|
|
71
77
|
];
|
|
72
|
-
function
|
|
73
|
-
var
|
|
74
|
-
const
|
|
78
|
+
function fe(i) {
|
|
79
|
+
var t;
|
|
80
|
+
const a = (t = i.options) != null && t.length ? p.filter((r) => {
|
|
75
81
|
var o;
|
|
76
82
|
return (o = i.options) == null ? void 0 : o.includes(r.value);
|
|
77
|
-
}) :
|
|
83
|
+
}) : p, [n, u] = s({
|
|
78
84
|
value: i.value,
|
|
79
|
-
defaultValue: i.defaultValue ??
|
|
85
|
+
defaultValue: i.defaultValue ?? a[0].value,
|
|
80
86
|
onChange: i.onChange
|
|
81
87
|
});
|
|
82
88
|
return /* @__PURE__ */ m("div", { className: i.className, children: [
|
|
83
89
|
/* @__PURE__ */ e(k, { asChild: !0, children: /* @__PURE__ */ e("div", { children: "Select your payment method" }) }),
|
|
84
90
|
/* @__PURE__ */ e(
|
|
85
|
-
|
|
91
|
+
y,
|
|
86
92
|
{
|
|
87
|
-
value: [
|
|
93
|
+
value: [n],
|
|
88
94
|
onValueChange: (r) => {
|
|
89
95
|
const o = r.at(-1);
|
|
90
|
-
o && u(
|
|
96
|
+
o && u(I.parse(o));
|
|
91
97
|
},
|
|
92
98
|
className: "grid grid-cols-2 gap-x-4 gap-y-3",
|
|
93
|
-
children:
|
|
99
|
+
children: a.map((r) => /* @__PURE__ */ m(
|
|
94
100
|
b,
|
|
95
101
|
{
|
|
96
102
|
value: r.value,
|
|
@@ -107,7 +113,7 @@ function he(i) {
|
|
|
107
113
|
draggable: !1
|
|
108
114
|
}
|
|
109
115
|
) }),
|
|
110
|
-
/* @__PURE__ */ e(
|
|
116
|
+
/* @__PURE__ */ e(N, { className: "shrink-0", children: /* @__PURE__ */ e(A, { asChild: !0, children: /* @__PURE__ */ e(d, {}) }) }),
|
|
111
117
|
/* @__PURE__ */ e(C, {})
|
|
112
118
|
]
|
|
113
119
|
},
|
|
@@ -118,5 +124,5 @@ function he(i) {
|
|
|
118
124
|
] });
|
|
119
125
|
}
|
|
120
126
|
export {
|
|
121
|
-
|
|
127
|
+
fe as PaymentMethods
|
|
122
128
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function GCashWithdrawal(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),S=require("@hookform/resolvers/zod"),v=require("react"),x=require("react-hook-form"),n=require("zod"),y=require("zustand/shallow");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../../../constants/index.js");require("../../../../utils/capitalize.js");const c=require("../../../../utils/parseDecimal.js");require("../../../../utils/getLocaleInfo.js");require("../../../../utils/getQueryClient.js");require("../../../../utils/isMobile.js");require("lodash-es");require("@opexa/portal-sdk-core/object-id");const C=require("../../../../client/hooks/useCreateGCashWithdrawalMutation.js"),I=require("../../../../client/hooks/useGlobalStore.js");require("../../../../client/hooks/useInfiniteQueryHelper.js");const P=require("../../../../client/hooks/useLocaleInfo.js"),D=require("../../../../client/hooks/useMobileNumberParser.js");require("usehooks-ts");const M=require("../../../../client/hooks/usePaymentSettingsQuery.js"),g=require("../../../../client/utils/toaster.js"),W=require("../../../../icons/ChevronDownIcon.js"),z=require("../../../../icons/ChevronUpIcon.js"),R=require("../../../../icons/SpinnerIcon.js");require("../../../../ui/AlertDialog/AlertDialog.js");require("../../../../ui/Avatar/Avatar.js");require("../../../../ui/Badge/Badge.js");const T=require("../../../../ui/Button/Button.js");require("../../../../ui/Checkbox/Checkbox.js");require("../../../../ui/Clipboard/Clipboard.js");require("../../../../ui/DatePicker/DatePicker.js");require("../../../../ui/Dialog/Dialog.js");require("../../../../ui/Drawer/Drawer.js");const t=require("../../../../ui/Field/Field.js");require("@ark-ui/react");require("../../../../ui/IconButton/iconButton.recipe.js");const a=require("../../../../ui/NumberInput/NumberInput.js");require("../../../../ui/PinInput/PinInput.js");require("../../../../ui/Popover/Popover.js");require("tailwind-merge");require("../../../../ui/SegmentGroup/SegmentGroup.js");require("../../../../ui/Select/Select.js");require("../../../../ui/Table/Table.js");require("../../../../ui/Tabs/Tabs.js");const G=require("../../AmountChoices.js");function L(){var q,p;const f=I.useGlobalStore(y.useShallow(s=>({depositWithdrawal:s.depositWithdrawal}))),b=P.useLocaleInfo(),j=D.useMobileNumberParser(),d=C.useCreateGCashWithdrawalMutation({onSuccess(){r.reset(),f.depositWithdrawal.setOpen(!1),g.toaster.success({description:"Withdrawal request submitted successfully."})},onError(s){g.toaster.error({description:s.message})}}),h=M.usePaymentSettingsQuery().data,i=h==null?void 0:h.gcashWithdrawalGatewaySettings,o=c.parseDecimal(i==null?void 0:i.minimumAmount,0),m=c.parseDecimal(i==null?void 0:i.maximumAmount,0),w=n.z.object({amount:n.z.string().superRefine((s,u)=>{const l=c.parseDecimal(s,0);l<o&&u.addIssue({type:"number",code:n.z.ZodIssueCode.too_small,inclusive:!0,minimum:o,message:`Minimum amount is ${o.toLocaleString()}`}),l>m&&u.addIssue({type:"number",code:n.z.ZodIssueCode.too_big,inclusive:!0,maximum:m,message:`Maximum amount is ${m.toLocaleString()}`})}),password:n.z.string().min(8,"Password must be 8 or more characters").max(64,"Password must be not be more than 64 characters"),mobileNumber:n.z.string().regex(b.mobileNumber.pattern,"Invalid mobile number")}),r=x.useForm({mode:"all",resolver:S.zodResolver(w),defaultValues:{amount:"0",password:"",mobileNumber:""}});v.useEffect(()=>{o&&r.reset({amount:o.toString(),password:"",mobileNumber:""})},[r,o]);const N=r.handleSubmit(async s=>{d.mutate({amount:s.amount,recipientMobileNumber:j.format(s.mobileNumber),transactionPassword:s.password})});return e.jsxs("form",{onSubmit:N,noValidate:!0,autoComplete:"off",children:[e.jsxs(t.Root,{invalid:!!r.formState.errors.mobileNumber,children:[e.jsx(t.Label,{children:"Mobile Number"}),e.jsxs("div",{className:"relative",children:[e.jsx(b.country.flag,{className:"pointer-events-none absolute left-3.5 top-1/2 size-5 -translate-y-1/2"}),e.jsx(t.Input,{className:"pl-10.5",...r.register("mobileNumber")})]}),e.jsx(t.ErrorText,{children:(q=r.formState.errors.mobileNumber)==null?void 0:q.message})]}),e.jsx(x.Controller,{control:r.control,name:"amount",render:s=>{var u;return e.jsxs(t.Root,{invalid:!!r.formState.errors.amount,className:"mt-3xl",children:[e.jsxs(a.Root,{min:0,step:1,value:s.field.value,onValueChange:l=>{s.field.onChange(l.value)},formatOptions:{maximumFractionDigits:2,minimumFractionDigits:0},allowMouseWheel:!0,children:[e.jsx(a.Label,{children:"Enter amount you want to withdraw"}),e.jsxs(a.Control,{children:[e.jsx(a.Input,{}),e.jsx(a.IncrementTrigger,{children:e.jsx(z.ChevronUpIcon,{})}),e.jsx(a.DecrementTrigger,{children:e.jsx(W.ChevronDownIcon,{})})]})]}),e.jsx(t.ErrorText,{children:(u=r.formState.errors.amount)==null?void 0:u.message})]})}}),e.jsx(G.AmountChoices,{value:c.parseDecimal(r.watch("amount"),0),onChange:s=>{r.setValue("amount",s.toString(),{shouldTouch:!0,shouldDirty:!0,shouldValidate:!0})},min:o,max:m,className:"mt-xl"}),e.jsxs(t.Root,{className:"mt-3xl",invalid:!!r.formState.errors.password,children:[e.jsx(t.Label,{children:"Password"}),e.jsx(t.Input,{type:"password",...r.register("password")}),e.jsx(t.ErrorText,{children:(p=r.formState.errors.password)==null?void 0:p.message})]}),e.jsxs("p",{className:"mt-4xl text-xs",children:["Upon clicking the deposit button, you agree to the"," ",e.jsx("button",{type:"button",className:"underline underline-offset-2",children:"Terms of Use and Privacy Policy"}),"."]}),e.jsx(T.Button,{type:"submit",className:"mt-4.5",disabled:d.isPending,children:d.isPending?e.jsxs(e.Fragment,{children:[e.jsx(R.SpinnerIcon,{}),"Processing..."]}):"Deposit"})]})}exports.GCashWithdrawal=L;
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import { jsxs as t, jsx as e, Fragment as I } from "react/jsx-runtime";
|
|
2
|
+
import { zodResolver as P } from "@hookform/resolvers/zod";
|
|
3
|
+
import { useEffect as W } from "react";
|
|
4
|
+
import { useForm as M, Controller as D } from "react-hook-form";
|
|
5
|
+
import { z as s } from "zod";
|
|
6
|
+
import { useShallow as L } from "zustand/shallow";
|
|
7
|
+
import "@opexa/portal-sdk-core";
|
|
8
|
+
import "@tanstack/react-query";
|
|
9
|
+
import "tiny-invariant";
|
|
10
|
+
import "../../../../constants/index.mjs";
|
|
11
|
+
import "../../../../utils/capitalize.mjs";
|
|
12
|
+
import { parseDecimal as u } from "../../../../utils/parseDecimal.mjs";
|
|
13
|
+
import "../../../../utils/getLocaleInfo.mjs";
|
|
14
|
+
import "../../../../utils/getQueryClient.mjs";
|
|
15
|
+
import "../../../../utils/isMobile.mjs";
|
|
16
|
+
import "lodash-es";
|
|
17
|
+
import "@opexa/portal-sdk-core/object-id";
|
|
18
|
+
import { useCreateGCashWithdrawalMutation as A } from "../../../../client/hooks/useCreateGCashWithdrawalMutation.mjs";
|
|
19
|
+
import { useGlobalStore as R } from "../../../../client/hooks/useGlobalStore.mjs";
|
|
20
|
+
import "../../../../client/hooks/useInfiniteQueryHelper.mjs";
|
|
21
|
+
import { useLocaleInfo as T } from "../../../../client/hooks/useLocaleInfo.mjs";
|
|
22
|
+
import { useMobileNumberParser as V } from "../../../../client/hooks/useMobileNumberParser.mjs";
|
|
23
|
+
import "usehooks-ts";
|
|
24
|
+
import { usePaymentSettingsQuery as $ } from "../../../../client/hooks/usePaymentSettingsQuery.mjs";
|
|
25
|
+
import { toaster as w } from "../../../../client/utils/toaster.mjs";
|
|
26
|
+
import { ChevronDownIcon as E } from "../../../../icons/ChevronDownIcon.mjs";
|
|
27
|
+
import { ChevronUpIcon as F } from "../../../../icons/ChevronUpIcon.mjs";
|
|
28
|
+
import { SpinnerIcon as G } from "../../../../icons/SpinnerIcon.mjs";
|
|
29
|
+
import "../../../../ui/AlertDialog/AlertDialog.mjs";
|
|
30
|
+
import "../../../../ui/Avatar/Avatar.mjs";
|
|
31
|
+
import "../../../../ui/Badge/Badge.mjs";
|
|
32
|
+
import { Button as j } from "../../../../ui/Button/Button.mjs";
|
|
33
|
+
import "../../../../ui/Checkbox/Checkbox.mjs";
|
|
34
|
+
import "../../../../ui/Clipboard/Clipboard.mjs";
|
|
35
|
+
import "../../../../ui/DatePicker/DatePicker.mjs";
|
|
36
|
+
import "../../../../ui/Dialog/Dialog.mjs";
|
|
37
|
+
import "../../../../ui/Drawer/Drawer.mjs";
|
|
38
|
+
import { Root as d, Label as N, Input as v, ErrorText as f } from "../../../../ui/Field/Field.mjs";
|
|
39
|
+
import "@ark-ui/react";
|
|
40
|
+
import "../../../../ui/IconButton/iconButton.recipe.mjs";
|
|
41
|
+
import { Root as z, Label as Q, Control as U, Input as O, IncrementTrigger as Z, DecrementTrigger as _ } from "../../../../ui/NumberInput/NumberInput.mjs";
|
|
42
|
+
import "../../../../ui/PinInput/PinInput.mjs";
|
|
43
|
+
import "../../../../ui/Popover/Popover.mjs";
|
|
44
|
+
import "tailwind-merge";
|
|
45
|
+
import "../../../../ui/SegmentGroup/SegmentGroup.mjs";
|
|
46
|
+
import "../../../../ui/Select/Select.mjs";
|
|
47
|
+
import "../../../../ui/Table/Table.mjs";
|
|
48
|
+
import "../../../../ui/Tabs/Tabs.mjs";
|
|
49
|
+
import { AmountChoices as k } from "../../AmountChoices.mjs";
|
|
50
|
+
function Oe() {
|
|
51
|
+
var b, g;
|
|
52
|
+
const S = R(
|
|
53
|
+
L((r) => ({
|
|
54
|
+
depositWithdrawal: r.depositWithdrawal
|
|
55
|
+
}))
|
|
56
|
+
), h = T(), x = V(), p = A({
|
|
57
|
+
onSuccess() {
|
|
58
|
+
o.reset(), S.depositWithdrawal.setOpen(!1), w.success({
|
|
59
|
+
description: "Withdrawal request submitted successfully."
|
|
60
|
+
});
|
|
61
|
+
},
|
|
62
|
+
onError(r) {
|
|
63
|
+
w.error({
|
|
64
|
+
description: r.message
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
}), c = $().data, i = c == null ? void 0 : c.gcashWithdrawalGatewaySettings, m = u(i == null ? void 0 : i.minimumAmount, 0), a = u(i == null ? void 0 : i.maximumAmount, 0), y = s.object({
|
|
68
|
+
amount: s.string().superRefine((r, n) => {
|
|
69
|
+
const l = u(r, 0);
|
|
70
|
+
l < m && n.addIssue({
|
|
71
|
+
type: "number",
|
|
72
|
+
code: s.ZodIssueCode.too_small,
|
|
73
|
+
inclusive: !0,
|
|
74
|
+
minimum: m,
|
|
75
|
+
message: `Minimum amount is ${m.toLocaleString()}`
|
|
76
|
+
}), l > a && n.addIssue({
|
|
77
|
+
type: "number",
|
|
78
|
+
code: s.ZodIssueCode.too_big,
|
|
79
|
+
inclusive: !0,
|
|
80
|
+
maximum: a,
|
|
81
|
+
message: `Maximum amount is ${a.toLocaleString()}`
|
|
82
|
+
});
|
|
83
|
+
}),
|
|
84
|
+
password: s.string().min(8, "Password must be 8 or more characters").max(64, "Password must be not be more than 64 characters"),
|
|
85
|
+
mobileNumber: s.string().regex(h.mobileNumber.pattern, "Invalid mobile number")
|
|
86
|
+
}), o = M({
|
|
87
|
+
mode: "all",
|
|
88
|
+
resolver: P(y),
|
|
89
|
+
defaultValues: {
|
|
90
|
+
amount: "0",
|
|
91
|
+
password: "",
|
|
92
|
+
mobileNumber: ""
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
W(() => {
|
|
96
|
+
m && o.reset({
|
|
97
|
+
amount: m.toString(),
|
|
98
|
+
password: "",
|
|
99
|
+
mobileNumber: ""
|
|
100
|
+
});
|
|
101
|
+
}, [o, m]);
|
|
102
|
+
const C = o.handleSubmit(async (r) => {
|
|
103
|
+
p.mutate({
|
|
104
|
+
amount: r.amount,
|
|
105
|
+
recipientMobileNumber: x.format(r.mobileNumber),
|
|
106
|
+
transactionPassword: r.password
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
return /* @__PURE__ */ t("form", { onSubmit: C, noValidate: !0, autoComplete: "off", children: [
|
|
110
|
+
/* @__PURE__ */ t(d, { invalid: !!o.formState.errors.mobileNumber, children: [
|
|
111
|
+
/* @__PURE__ */ e(N, { children: "Mobile Number" }),
|
|
112
|
+
/* @__PURE__ */ t("div", { className: "relative", children: [
|
|
113
|
+
/* @__PURE__ */ e(h.country.flag, { className: "pointer-events-none absolute left-3.5 top-1/2 size-5 -translate-y-1/2" }),
|
|
114
|
+
/* @__PURE__ */ e(v, { className: "pl-10.5", ...o.register("mobileNumber") })
|
|
115
|
+
] }),
|
|
116
|
+
/* @__PURE__ */ e(f, { children: (b = o.formState.errors.mobileNumber) == null ? void 0 : b.message })
|
|
117
|
+
] }),
|
|
118
|
+
/* @__PURE__ */ e(
|
|
119
|
+
D,
|
|
120
|
+
{
|
|
121
|
+
control: o.control,
|
|
122
|
+
name: "amount",
|
|
123
|
+
render: (r) => {
|
|
124
|
+
var n;
|
|
125
|
+
return /* @__PURE__ */ t(
|
|
126
|
+
d,
|
|
127
|
+
{
|
|
128
|
+
invalid: !!o.formState.errors.amount,
|
|
129
|
+
className: "mt-3xl",
|
|
130
|
+
children: [
|
|
131
|
+
/* @__PURE__ */ t(
|
|
132
|
+
z,
|
|
133
|
+
{
|
|
134
|
+
min: 0,
|
|
135
|
+
step: 1,
|
|
136
|
+
value: r.field.value,
|
|
137
|
+
onValueChange: (l) => {
|
|
138
|
+
r.field.onChange(l.value);
|
|
139
|
+
},
|
|
140
|
+
formatOptions: {
|
|
141
|
+
maximumFractionDigits: 2,
|
|
142
|
+
minimumFractionDigits: 0
|
|
143
|
+
},
|
|
144
|
+
allowMouseWheel: !0,
|
|
145
|
+
children: [
|
|
146
|
+
/* @__PURE__ */ e(Q, { children: "Enter amount you want to withdraw" }),
|
|
147
|
+
/* @__PURE__ */ t(U, { children: [
|
|
148
|
+
/* @__PURE__ */ e(O, {}),
|
|
149
|
+
/* @__PURE__ */ e(Z, { children: /* @__PURE__ */ e(F, {}) }),
|
|
150
|
+
/* @__PURE__ */ e(_, { children: /* @__PURE__ */ e(E, {}) })
|
|
151
|
+
] })
|
|
152
|
+
]
|
|
153
|
+
}
|
|
154
|
+
),
|
|
155
|
+
/* @__PURE__ */ e(f, { children: (n = o.formState.errors.amount) == null ? void 0 : n.message })
|
|
156
|
+
]
|
|
157
|
+
}
|
|
158
|
+
);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
),
|
|
162
|
+
/* @__PURE__ */ e(
|
|
163
|
+
k,
|
|
164
|
+
{
|
|
165
|
+
value: u(o.watch("amount"), 0),
|
|
166
|
+
onChange: (r) => {
|
|
167
|
+
o.setValue("amount", r.toString(), {
|
|
168
|
+
shouldTouch: !0,
|
|
169
|
+
shouldDirty: !0,
|
|
170
|
+
shouldValidate: !0
|
|
171
|
+
});
|
|
172
|
+
},
|
|
173
|
+
min: m,
|
|
174
|
+
max: a,
|
|
175
|
+
className: "mt-xl"
|
|
176
|
+
}
|
|
177
|
+
),
|
|
178
|
+
/* @__PURE__ */ t(d, { className: "mt-3xl", invalid: !!o.formState.errors.password, children: [
|
|
179
|
+
/* @__PURE__ */ e(N, { children: "Password" }),
|
|
180
|
+
/* @__PURE__ */ e(v, { type: "password", ...o.register("password") }),
|
|
181
|
+
/* @__PURE__ */ e(f, { children: (g = o.formState.errors.password) == null ? void 0 : g.message })
|
|
182
|
+
] }),
|
|
183
|
+
/* @__PURE__ */ t("p", { className: "mt-4xl text-xs", children: [
|
|
184
|
+
"Upon clicking the deposit button, you agree to the",
|
|
185
|
+
" ",
|
|
186
|
+
/* @__PURE__ */ e("button", { type: "button", className: "underline underline-offset-2", children: "Terms of Use and Privacy Policy" }),
|
|
187
|
+
"."
|
|
188
|
+
] }),
|
|
189
|
+
/* @__PURE__ */ e(
|
|
190
|
+
j,
|
|
191
|
+
{
|
|
192
|
+
type: "submit",
|
|
193
|
+
className: "mt-4.5",
|
|
194
|
+
disabled: p.isPending,
|
|
195
|
+
children: p.isPending ? /* @__PURE__ */ t(I, { children: [
|
|
196
|
+
/* @__PURE__ */ e(G, {}),
|
|
197
|
+
"Processing..."
|
|
198
|
+
] }) : "Deposit"
|
|
199
|
+
}
|
|
200
|
+
)
|
|
201
|
+
] });
|
|
202
|
+
}
|
|
203
|
+
export {
|
|
204
|
+
Oe as GCashWithdrawal
|
|
205
|
+
};
|
package/dist/components/DepositWithdrawal/Withdrawal/InstapayWithdrawal/InstapayWithdrawal.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function InstapayWithdrawal(): import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),v=require("@ark-ui/react"),k=require("@hookform/resolvers/zod"),b=require("react"),j=require("react-hook-form"),c=require("zod"),N=require("zustand/shallow");require("@opexa/portal-sdk-core");require("@tanstack/react-query");require("tiny-invariant");require("../../../../constants/index.js");require("../../../../utils/capitalize.js");const h=require("../../../../utils/parseDecimal.js");require("../../../../utils/getLocaleInfo.js");require("../../../../utils/getQueryClient.js");require("../../../../utils/isMobile.js");require("lodash-es");require("@opexa/portal-sdk-core/object-id");const T=require("../../../../client/hooks/useCreateInstapayWithdrawalMutation.js"),D=require("../../../../client/hooks/useGlobalStore.js");require("../../../../client/hooks/useInfiniteQueryHelper.js");const P=require("../../../../client/hooks/useInstapayBankListQuery.js");require("usehooks-ts");const W=require("../../../../client/hooks/usePaymentSettingsQuery.js"),f=require("../../../../client/utils/toaster.js"),z=require("../../../../icons/CheckIcon.js"),w=require("../../../../icons/ChevronDownIcon.js"),L=require("../../../../icons/ChevronUpIcon.js"),R=require("../../../../icons/SpinnerIcon.js");require("../../../../ui/AlertDialog/AlertDialog.js");require("../../../../ui/Avatar/Avatar.js");require("../../../../ui/Badge/Badge.js");const V=require("../../../../ui/Button/Button.js");require("../../../../ui/Checkbox/Checkbox.js");require("../../../../ui/Clipboard/Clipboard.js");require("../../../../ui/DatePicker/DatePicker.js");require("../../../../ui/Dialog/Dialog.js");require("../../../../ui/Drawer/Drawer.js");const o=require("../../../../ui/Field/Field.js");require("../../../../ui/IconButton/iconButton.recipe.js");const m=require("../../../../ui/NumberInput/NumberInput.js");require("../../../../ui/PinInput/PinInput.js");require("../../../../ui/Popover/Popover.js");require("tailwind-merge");require("../../../../ui/SegmentGroup/SegmentGroup.js");const s=require("../../../../ui/Select/Select.js");require("../../../../ui/Table/Table.js");require("../../../../ui/Tabs/Tabs.js");const B=require("../../AmountChoices.js");function E(){var g,C;const y=D.useGlobalStore(N.useShallow(r=>({depositWithdrawal:r.depositWithdrawal}))),x=T.useCreateInstapayWithdrawalMutation({onSuccess(){t.reset(),y.depositWithdrawal.setOpen(!1),f.toaster.success({description:"Withdrawal request submitted successfully."})},onError(r){f.toaster.error({description:r.message})}}),a=P.useInstapayBankListQuery().data,p=W.usePaymentSettingsQuery().data,l=p==null?void 0:p.instapayWithdrawalGatewaySettings,u=h.parseDecimal(l==null?void 0:l.minimumAmount,0),d=h.parseDecimal(l==null?void 0:l.maximumAmount,0),I=c.z.object({amount:c.z.string().superRefine((r,i)=>{const n=h.parseDecimal(r,0);n<u&&i.addIssue({type:"number",code:c.z.ZodIssueCode.too_small,inclusive:!0,minimum:u,message:`Minimum amount is ${u.toLocaleString()}`}),n>d&&i.addIssue({type:"number",code:c.z.ZodIssueCode.too_big,inclusive:!0,maximum:d,message:`Maximum amount is ${d.toLocaleString()}`})}),password:c.z.string().min(8,"Password must be 8 or more characters").max(64,"Password must be not be more than 64 characters"),accountNumber:c.z.string().min(1).trim(),bankCode:c.z.string().min(1,"Bank is required").trim()}),t=j.useForm({mode:"all",resolver:k.zodResolver(I),defaultValues:{amount:"0",password:"",accountNumber:"",bankCode:""}});b.useEffect(()=>{u&&t.reset({amount:u.toString(),bankCode:t.getValues("bankCode"),password:"",accountNumber:""})},[t,u]),b.useEffect(()=>{a!=null&&a.length&&t.reset({amount:t.getValues("amount"),bankCode:a[0].code,password:"",accountNumber:""})},[t,a]);const S=t.handleSubmit(async r=>{x.mutate({amount:r.amount,transactionPassword:r.password,accountNumber:r.accountNumber,bankCode:r.bankCode})}),q=b.useMemo(()=>v.createListCollection({items:a??[],itemToValue:r=>r.code,itemToString:r=>r.name}),[a]);return console.log(q.items),e.jsxs("form",{onSubmit:S,noValidate:!0,autoComplete:"off",children:[e.jsx(j.Controller,{control:t.control,name:"bankCode",render:r=>{var i;return e.jsxs(o.Root,{invalid:!!t.formState.errors.bankCode,children:[e.jsxs(s.Root,{collection:q,positioning:{sameWidth:!0},value:r.field.value?[r.field.value]:[],onValueChange:n=>{r.field.onChange(n.value.at(0)??"")},children:[e.jsx(s.Label,{children:"Bank"}),e.jsx(s.Control,{children:e.jsxs(s.Trigger,{children:[e.jsx(s.ValueText,{}),e.jsx(s.Indicator,{asChild:!0,children:e.jsx(w.ChevronDownIcon,{})})]})}),e.jsx(s.Positioner,{children:e.jsx(s.Content,{children:e.jsx(s.ItemGroup,{children:q.items.map(n=>e.jsxs(s.Item,{item:n,children:[e.jsx(s.ItemText,{children:n.name}),e.jsx(s.ItemIndicator,{asChild:!0,children:e.jsx(z.CheckIcon,{})})]},n.id))})})})]}),e.jsx(o.ErrorText,{children:(i=t.formState.errors.bankCode)==null?void 0:i.message})]})}}),e.jsxs(o.Root,{invalid:!!t.formState.errors.accountNumber,className:"mt-3xl",children:[e.jsx(o.Label,{children:"Bank account number"}),e.jsx(o.Input,{...t.register("accountNumber")}),e.jsx(o.ErrorText,{children:(g=t.formState.errors.accountNumber)==null?void 0:g.message})]}),e.jsx(j.Controller,{control:t.control,name:"amount",render:r=>{var i;return e.jsxs(o.Root,{invalid:!!t.formState.errors.amount,className:"mt-3xl",children:[e.jsxs(m.Root,{min:0,step:1,value:r.field.value,onValueChange:n=>{r.field.onChange(n.value)},formatOptions:{maximumFractionDigits:2,minimumFractionDigits:0},allowMouseWheel:!0,children:[e.jsx(m.Label,{children:"Enter amount you want to withdraw"}),e.jsxs(m.Control,{children:[e.jsx(m.Input,{}),e.jsx(m.IncrementTrigger,{children:e.jsx(L.ChevronUpIcon,{})}),e.jsx(m.DecrementTrigger,{children:e.jsx(w.ChevronDownIcon,{})})]})]}),e.jsx(o.ErrorText,{children:(i=t.formState.errors.amount)==null?void 0:i.message})]})}}),e.jsx(B.AmountChoices,{value:h.parseDecimal(t.watch("amount"),0),onChange:r=>{t.setValue("amount",r.toString(),{shouldTouch:!0,shouldDirty:!0,shouldValidate:!0})},min:u,max:d,className:"mt-xl"}),e.jsxs(o.Root,{className:"mt-3xl",invalid:!!t.formState.errors.password,children:[e.jsx(o.Label,{children:"Password"}),e.jsx(o.Input,{type:"password",...t.register("password")}),e.jsx(o.ErrorText,{children:(C=t.formState.errors.password)==null?void 0:C.message})]}),e.jsxs("p",{className:"mt-4xl text-xs",children:["Upon clicking the deposit button, you agree to the"," ",e.jsx("button",{type:"button",className:"underline underline-offset-2",children:"Terms of Use and Privacy Policy"}),"."]}),e.jsx(V.Button,{type:"submit",className:"mt-4.5",disabled:x.isPending,children:x.isPending?e.jsxs(e.Fragment,{children:[e.jsx(R.SpinnerIcon,{}),"Processing..."]}):"Deposit"})]})}exports.InstapayWithdrawal=E;
|