@fractalpay/fractalpay-next-dev 0.0.123 → 0.0.124

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.
@@ -0,0 +1,729 @@
1
+ "use client";import{a as x,b as _,e as Ie,f as O,g as M,i as Et,j as jt,k as It,m as Ht,n as te,o as Yt,p as Ot,q as He,r as Vt,s as Ye,t as qt}from"./chunk-KQMPYDNL.mjs";import e,{useCallback as Bn,useEffect as Pn,useLayoutEffect as Mn,useRef as Ln,useState as h}from"react";import vn from"react";function Oe(){let f="#000",I="#fff",V="#212529",y="#dee2e6";return vn.createElement("style",null,`
2
+ @import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
3
+ body
4
+ {
5
+ font-family: 'Inter', sans-serif;
6
+ }
7
+ input
8
+ {
9
+ font-family: 'Inter', sans-serif !important;
10
+ }
11
+ .frac-form .form-group-frac{
12
+ margin:0 !important
13
+ }
14
+ .frac-form .mb-4{
15
+ margin-bottom : 10px !important
16
+ }
17
+ .frac-form .save-ach-div{
18
+ display:flex !important;
19
+ gap:5px !important;
20
+ align-items:center
21
+ }
22
+
23
+ .frac-form .card-cvv-in{
24
+ height : 36px !importantt;
25
+ }
26
+
27
+ .frac-form .pay-payment-amount{
28
+ text-align:start !important
29
+ }
30
+ .frac-form .pay-amount{
31
+ text-align:start !important
32
+ }
33
+ .frac-form .pay-main-logo{
34
+ text-align:start !important
35
+ }
36
+
37
+
38
+
39
+ .paymentBtn {
40
+ background-color: black;
41
+ border: none;
42
+ color: white;
43
+ padding: 15px 32px;
44
+ text-align: center;
45
+ text-decoration: none;
46
+ display: inline-block;
47
+ font-size: 16px;
48
+ margin: 4px 2px;
49
+ cursor: pointer;
50
+ border-radius: 180px;
51
+ /* width: auto; */
52
+ }
53
+
54
+ .main-logo {
55
+ text-align: center;
56
+ margin-bottom: 20px;
57
+ }
58
+
59
+ .main-logo img {
60
+ max-width: 180px;
61
+ }
62
+
63
+ .pay-main-box {
64
+ width: 365px !important;
65
+ height: 93%;
66
+ background: 0 0 #ffffff;
67
+ border-radius: 12px;
68
+
69
+
70
+ border: 1px solid #E0DFE2;
71
+ margin: 0 auto;
72
+ display: block;
73
+ padding: 0px 26px !important
74
+ }
75
+ .pay-main-box .pay-header {
76
+ display: flex;
77
+ justify-content: center;
78
+ align-items: center;
79
+ text-align: center;
80
+ }
81
+
82
+ .pay-main-box .pay-header button {
83
+ border: 0;
84
+ background: none;
85
+ padding: 0;
86
+ box-shadow: 0;
87
+ outline: inherit;
88
+ }
89
+
90
+ .pay-main-box h1 {
91
+ margin: 0;
92
+ flex: 1;
93
+ padding: 10px 0;
94
+ font-size: 23px;
95
+ font-weight: 500;
96
+ color: #35254D;
97
+ align-items: start;
98
+ display: flex;
99
+ }
100
+ .tab {
101
+ overflow: hidden;
102
+ padding: 5px;
103
+ border-radius: 8px;
104
+ display: flex;
105
+ justify-content: space-around;
106
+ margin-bottom:12px
107
+ }
108
+
109
+ /* Style the buttons inside the tab */
110
+ .tab button {
111
+ float: left;
112
+ border: none;
113
+ outline: none;
114
+ cursor: pointer;
115
+ background:white;
116
+ padding: 11px 16px;
117
+ transition: 0.3s;
118
+ font-size: 16px;
119
+ width: 143px;
120
+ border-radius: 5px;
121
+ box-shadow: inherit;
122
+ outline: none;
123
+ color: ${f};
124
+ }
125
+
126
+ /* Change background color of buttons on hover */
127
+ .tab button:hover {
128
+ background-color: #f0f0f0;
129
+ }
130
+
131
+ /* Create an active/current tablink class */
132
+ // .tab button.active {
133
+ // background-color: #ccc;
134
+ // }
135
+
136
+ /* Style the tab content */
137
+
138
+
139
+ .parent-pay-container{
140
+ padding: 24px;
141
+ }
142
+ .pay-container{
143
+ display: grid;
144
+ grid-template-columns: 2fr 3fr;
145
+
146
+ }
147
+ .pay-main{
148
+ padding-y: 20px}
149
+
150
+ .request-payment-close-popup {
151
+ position: absolute;
152
+ right: 20px;
153
+ top: 20px;
154
+ cursor: pointer;
155
+ }
156
+ .pay-conatiner-one{
157
+ border-right: 1px solid #E0DFE2;
158
+ display: flex;
159
+ flex-direction: column;
160
+ justify-content: space-between;
161
+ }
162
+ .pay-conatiner-one-first{
163
+
164
+ min-height:inherit !important;
165
+ }
166
+ .pay-conatiner-one-last{
167
+ display:flex;
168
+ font-size:12px;
169
+ gap:5px;
170
+ max-width:250px;
171
+ align-items:center;
172
+ color:black !important
173
+ }
174
+ .pay-conatiner-one-last img{
175
+ width : 17px;
176
+ height:17px
177
+ }
178
+ .pay-conatiner-two{
179
+ padding: 0 5% 0;
180
+ }
181
+ .pay-logo-container{
182
+ border-bottom: 1px solid #E0DFE2
183
+ }
184
+ .pay-heading{
185
+ margin: 0;
186
+ flex: 1;
187
+ padding: 10px 0;
188
+ font-size: 23px;
189
+ font-weight: 500;
190
+ color: #35254D;
191
+ align-items: start;
192
+ display: flex;
193
+ }
194
+ .pay-main-logo > img{
195
+ width: 50%;
196
+ }
197
+ .pay-main-logo-res > img{
198
+ width: 50%;
199
+ display : none
200
+ }
201
+
202
+ .pay-payment-amount{
203
+ display: block;
204
+ font-size: 12px;
205
+ color: #727272;
206
+ margin-bottom: 8px;
207
+ }
208
+ .pay-amount-conatiner{
209
+ margin-top: 6%;
210
+ }
211
+ .pay-amount{
212
+ color: #000000;
213
+ font-size: 38px;
214
+ display: block;
215
+ line-height: 110%;
216
+ letter-spacing: -1px;
217
+ }
218
+ .frac-form label{
219
+ font-family: 'IBM Plex Mono', monospace !important;
220
+ color: #727272 !important;
221
+ margin-bottom: 2px !important;
222
+ font-weight: 600 !important;
223
+ font-size: 12px !important;
224
+ display:block !important;
225
+ text-align : left !important
226
+ }
227
+ .form-control-frac{
228
+ display: block;
229
+ width: 100%;
230
+ padding: .375rem .75rem;
231
+ font-size: 1rem;
232
+ font-weight: 400;
233
+ line-height: 1.5;
234
+ color: ${V};
235
+ -webkit-appearance: none;
236
+ -moz-appearance: none;
237
+ appearance: none;
238
+ background-color: ${I};
239
+ background-clip: padding-box;
240
+ border: 1px solid ${y};
241
+ border-radius: 0.375rem;
242
+ transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
243
+ }
244
+ .form-control-frac:focus{
245
+ border-color: #86b7fe;
246
+ outline: 0;
247
+ }
248
+ .toggle-num-wrapper {
249
+ position: relative;
250
+ }
251
+ .card-number-new{
252
+ border-bottom: none;
253
+ border-bottom-left-radius: 0px;
254
+ border-bottom-right-radius: 0px;
255
+ }
256
+ .card-crdi {
257
+ display: flex;
258
+ border: 1px solid ${y};
259
+ border-radius: 0.375rem;
260
+ }
261
+ .card-expiry-new{
262
+ border-top-left-radius: 0px;
263
+ border-top-right-radius: 0px;
264
+ }
265
+ .exp-date-year-container{
266
+ display: flex;
267
+ flex-wrap: wrap;
268
+ }
269
+ .exp-date-year-container .form-group-frac{
270
+ flex:1;
271
+ padding: 0px !important
272
+
273
+ }
274
+
275
+ .exp-date {
276
+ float: left;
277
+ // width: 30%
278
+ }
279
+
280
+ .exp-date input {
281
+ width: calc(100% + 1px);
282
+ border-top-right-radius: 0;
283
+ border-bottom-right-radius: 0;
284
+ border: 0;
285
+ border-right: 1px solid ${y};
286
+ }
287
+
288
+
289
+ .exp-year {
290
+ float: left;
291
+ // width: 30%
292
+ }
293
+
294
+ .exp-year input {
295
+ width: calc(100% + 1px);
296
+ border-radius: 0;
297
+ border-top: 0;
298
+ border-bottom: 0;
299
+ border-right: 1px solid ${y};
300
+ }
301
+
302
+ .exp-date input:focus {
303
+ position: relative;
304
+ z-index: 10;
305
+ }
306
+
307
+ .security-digit {
308
+ float: right;
309
+ // width: 40%;
310
+ position: relative;
311
+ }
312
+
313
+ .security-digit input {
314
+ border-top-left-radius: 0;
315
+ border-bottom-left-radius: 0;
316
+ border-top: 0;
317
+ border-bottom: 0;
318
+ border-right:0;
319
+ }
320
+ .card-expiry-new{
321
+ border-top-left-radius: 0px;
322
+ border-top-right-radius: 0px;
323
+ }
324
+ .form-control-frac{box-sizing: border-box ;}
325
+ #PaymentForm .form-group-frac{
326
+ padding:5px 0 ;
327
+ matgin: 0 !important
328
+ }
329
+
330
+ .toggle-label {
331
+ position: relative;
332
+ display: inline-block;
333
+ width: 40px;
334
+ height: 24px;
335
+ background-color: #ccc;
336
+ border-radius: 12px;
337
+ cursor: pointer;
338
+ transition: background-color 0.3s;
339
+ }
340
+
341
+ .toggle-label::before {
342
+ content: "";
343
+ position: absolute;
344
+ top: 2px;
345
+ left: 2px;
346
+ width: 20px;
347
+ height: 20px;
348
+ background: #ffffff;
349
+ border-radius: 50%;
350
+ transition: left 300ms linear;
351
+ }
352
+
353
+ .toggle-checkbox {
354
+ display: none;
355
+ }
356
+
357
+ .toggle-checkbox:checked + .toggle-label {
358
+ background-color: #4caf50;
359
+ }
360
+
361
+ .toggle-checkbox:checked + .toggle-label::before {
362
+ left: 18px;
363
+ }
364
+ .ach-scrl {
365
+ max-height: 380px;
366
+ min-height: 380px;
367
+ overflow-y: auto;
368
+ padding-right: 6px;
369
+ }
370
+ .mb-4{
371
+ margin-bottom:4px
372
+ }
373
+ .ach-scrl::-webkit-scrollbar {
374
+ width: 3px;
375
+ background-color: #F5F5F5;
376
+ }
377
+ .ach-scrl::-webkit-scrollbar-thumb {
378
+ background-color: #35254D;
379
+ }
380
+
381
+ .error-span{
382
+ color:red !important;
383
+ font-size:12px !important;
384
+ text-align: left !important;
385
+ width: 100% !important;
386
+ display: block;
387
+ }
388
+
389
+ .charge-customer-name-frac{
390
+ color: #161616;
391
+ font-family: Inter;
392
+ font-size: 24px;
393
+ font-style: normal;
394
+ font-weight: 600;
395
+ line-height: 32px;
396
+ letter-spacing: -0.48px;
397
+ text-transform: capitalize;
398
+ margin-top:0;
399
+ margin-bottom:16px !important;
400
+ text-align:left !important
401
+ }
402
+ .card-ach-heading-frac {
403
+ color: #727272;
404
+ font-family: Inter;
405
+ font-size: 12px;
406
+ font-style: normal;
407
+ font-weight: 500;
408
+ line-height: 18px;
409
+ letter-spacing: -0.24px;
410
+ margin : 0 0 10px !important;
411
+ text-align : left
412
+ }
413
+ .card-list-div{
414
+ max-height : 190px;
415
+ overflow-y : auto;
416
+ border:1px solid #E0DFE2;
417
+ border-radius : 8px
418
+ }
419
+
420
+
421
+ .card-list-div::-webkit-scrollbar{
422
+ width:2px;
423
+ background-color:#F5F5F5
424
+ }
425
+ .card-list-div::-webkit-scrollbar-thumb{
426
+ background-color:#35254D
427
+ }
428
+
429
+ .card-list-single-div{
430
+ border-bottom: 1px solid #E0DFE2;
431
+ padding : 8px 11px;
432
+ display : flex ;
433
+ align-items:center;
434
+ justify-content : space-between;
435
+ gap:12px
436
+ }
437
+ .card-list-single-div:last-child {
438
+ border-bottom: none;
439
+ }
440
+ .card-lint-div-in{
441
+ min-height:444px}
442
+ .card-number-radio{
443
+ display:flex;
444
+ gap:12px;
445
+ }
446
+ .card-number-radio .card-number-last-four{
447
+ color:#161616 !important;
448
+ font-family:Inter !important;
449
+ font-size:14px !important;
450
+ font-weight:500 !important;
451
+ font-style:normal !important;
452
+ line-height : 18px !important;
453
+ latter-spacing:-0.18px !important
454
+ }
455
+ .card-expiry-date{
456
+ margin:0;
457
+ color:#00000080;
458
+ font-family:Inter;
459
+ font-size:14px;
460
+ font-weight:500;
461
+ font-style"normal;
462
+ line-height : 18px;
463
+ latter-spacing:-0.18px
464
+ }
465
+ .pay-with-other-card {
466
+ margin-top : 12px;
467
+ padding:12px 32px;
468
+ border :1px solid #E0DFE2;
469
+ border-radius : 1000px;
470
+ display: flex;
471
+ justify-content : center;
472
+ align-items:center;
473
+ gap:10px;
474
+ // width:100%;
475
+ background:white;
476
+ cursor:pointer;
477
+ color:#161616;
478
+ text-align:center
479
+ font-family: Inter;
480
+ font-size: 14px;
481
+ font-style: normal;
482
+ font-weight: 500;
483
+ line-height: 24px;
484
+ letter-spacing: -0.28px;
485
+ // margin-bottom: 50px;
486
+ }
487
+ .charge-payment-back-btn {
488
+ display: flex;
489
+ padding: 6px 12px !important ;
490
+ align-items: center;
491
+ gap: 6px;
492
+ border-radius: 1000px;
493
+ border: 1px solid #E0DFE2;
494
+ background: #FFF;
495
+ box-shadow: 0px 6px 12px 0px rgba(206, 197, 221, 0.31);
496
+ font-size:16px;
497
+ curso:pointer;
498
+ color:black
499
+ }
500
+ .res-charge-payment-back-btn{
501
+ padding: 9px 16px;
502
+ align-items: center;
503
+ gap: 6px;
504
+ margin-bottom: 20px;
505
+ border-radius: 1000px;
506
+ border: 1px solid #E0DFE2;
507
+ background: #FFF;
508
+ box-shadow: 0px 6px 12px 0px rgba(206, 197, 221, 0.31);
509
+ font-size:16px;
510
+ curso:pointer;
511
+ color:black;
512
+ display:none
513
+ }
514
+ .btn {
515
+ padding: 11px 23px;
516
+ background-color: black;
517
+ color: white;
518
+ border: none;
519
+ border-radius: 6px;
520
+ font-weight: bold;
521
+ margin: 0 10px;
522
+ cursor: pointer;
523
+ }
524
+
525
+ .custom-swal-icon {
526
+ margin: 20px auto;
527
+ }
528
+
529
+ .custom-swal-popup {
530
+ font-size: 16px;
531
+ text-align: center;
532
+ }
533
+
534
+ .frac-form .res-pay-con{
535
+ display:none
536
+ }
537
+
538
+ .saveachtext p, .saveachtext b {
539
+ font-size: 12px !important;
540
+ color: #727272 !important;
541
+ }
542
+
543
+ .cardicon-img img {
544
+ margin-top: -2px !important;
545
+ }
546
+
547
+ .bankicon-img img {
548
+ margin-top: -4px !important;
549
+ }
550
+
551
+ .cardicon {
552
+ margin-right : 8px !important;
553
+ width : 18px !important;
554
+ }
555
+
556
+ .bankicon {
557
+ margin-right : 8px !important;
558
+ width : 18px !important;
559
+ }
560
+
561
+
562
+ .frac-tooltip-wrapper {
563
+ position: absolute;
564
+ right:0;
565
+ }
566
+
567
+ .frac-tooltip-icon {
568
+ cursor: pointer;
569
+ }
570
+ .frac-tooltip-mn{
571
+ position:relative;
572
+ }
573
+ .frac-tooltip-text {
574
+ display: none;
575
+ position: absolute;
576
+ top:-15px;
577
+ right: 22px;
578
+ background: #161616;
579
+ color: white;
580
+ padding: 15px;
581
+ border-radius: 10px;
582
+ width: 200px;
583
+ font-size:12px;
584
+ word-break: break-word;
585
+ white-space: normal;
586
+ z-index: 999;
587
+ }
588
+
589
+ .frac-tooltip-wrapper:hover .frac-tooltip-text {
590
+ display: block;
591
+ }
592
+
593
+ .frac-tooltip-text p,.frac-tooltip-text b {
594
+ font-size : 12px !important;
595
+ line-height : 1.5 !important;
596
+ margin-bottom : 10px !important;
597
+ }
598
+
599
+ .amt-pay-con {
600
+ padding-right: 24px;
601
+ }
602
+
603
+
604
+
605
+ @media (max-width: 768px) {
606
+ .request-payment-close-popup {
607
+ right: 12px !important;
608
+ top: 12px !important;
609
+ }
610
+
611
+ .parent-pay-container{
612
+ padding:24px;
613
+ }
614
+ .pay-container {
615
+ grid-template-columns: 1fr;
616
+ padding: 10px 5%;
617
+ border:1px solid #E0DFE2;
618
+ border-radius : 12px
619
+ }
620
+ .pay-conatiner-one{
621
+ border-right: none;
622
+ }
623
+ .pay-conatiner-one-first{
624
+ min-height:0
625
+ }
626
+ .pay-main-logo > img{
627
+ display: none;
628
+ }
629
+ .pay-main-logo-res > img {
630
+ display:block;
631
+ margin:auto
632
+ }
633
+
634
+ .pay-logo-container{
635
+ border :none
636
+ }
637
+ // .res-charge-payment-back-btn {
638
+ // display:flex !important
639
+ // }
640
+ // .charge-payment-back-btn{
641
+ // display:none !important
642
+ // }
643
+
644
+ .frac-new-form .pay-amount-conatiner {
645
+ margin-top: 0px;
646
+ margin-bottom: 24px;
647
+ }
648
+ .frac-form .res-pay-con{
649
+ display:flex;
650
+ justify-content :space-between;
651
+ align-items:center;
652
+ padding-bottom : 10px
653
+ }
654
+ .amt-pay-con {
655
+ padding-right: 0px;
656
+ }
657
+ .pay-conatiner-one-last{
658
+ display:none}
659
+ .pay-conatiner-two{
660
+ padding:0
661
+ }
662
+
663
+
664
+ }
665
+ @media (max-width : 512px){
666
+ .tab button {
667
+ padding: 6px 16px;
668
+ }
669
+ }
670
+
671
+
672
+ .frac-cash-discount-fee {
673
+ display: flex;
674
+ padding: 11px;
675
+ justify-content: space-between;
676
+ align-items: center;
677
+ align-self: stretch;
678
+ border-radius: 8px;
679
+ border: 1px solid #E0DFE2;
680
+ background: #F6F6F7;
681
+ margin-top: 24px;
682
+ }
683
+ .frac-cash-discount-fee small {
684
+ color:#727272;
685
+ font-size: 12px;
686
+ font-weight: 500;
687
+ }
688
+ .frac-cash-discount-fee p{
689
+ margin:0px;
690
+ font-size: 14px;
691
+ font-weight: 500;
692
+ }
693
+ .frac-card-payment-heading {
694
+ font-size: 24px;
695
+ font-style: normal;
696
+ font-weight: 600;
697
+ margin:0px;
698
+ }
699
+
700
+ .frac-heading-card-wrap {
701
+ display: flex;
702
+ align-items: center;
703
+ margin-bottom:12px;
704
+ }
705
+ .frac-backarrow {
706
+ margin-right: 10px;
707
+ }
708
+ .frac-charge-payment-back-btn-wrap , .frac-tab-2{
709
+ display: none;
710
+ }
711
+ .frac-pay-conatiner-one{
712
+ display: flex;
713
+ flex-direction: column;
714
+ justify-content: space-between;
715
+ min-height: auto;
716
+ }
717
+
718
+ .frac-form .saveachlabel {
719
+ margin-bottom : 0px !important;
720
+ }
721
+
722
+
723
+
724
+
725
+
726
+
727
+
728
+
729
+ `)}import j from"axios";import{IoArrowBack as qe}from"react-icons/io5";import ge from"sweetalert2";import{Elements as kn}from"@stripe/react-stripe-js";import{loadStripe as Sn}from"@stripe/stripe-js";import{PaymentElement as Wt,useElements as wn,useStripe as Nn}from"@stripe/react-stripe-js";import Cn from"axios";import{useState as Kt}from"react";var Ut=({onSuccess:f,showLoader:I,setError:V,session_token:y,callback:F,hideLoader:A,handleClose:H,amount:N,isPreAuth:q})=>{var W;let K=Nn(),J=wn(),[ne,G]=Kt(!1),[Fe,U]=Kt(null);return React.createElement("form",{onSubmit:async oe=>{var Be,Pe,r,ae,g,Q,a;if(oe.preventDefault(),!K||!J){console.warn("stripe nopt loaded");return}console.log("Stripe:",K),console.log("Elements:",J),console.log("PaymentElement:",J.getElement(Wt)),I(),G(!0);try{let{error:z,paymentIntent:c}=await K.confirmPayment({elements:J,confirmParams:{},redirect:"if_required"});if(G(!1),z)console.log(z,"paymentIntent error"),V(z.message||"Payment failed.");else if((c==null?void 0:c.status)==="succeeded"){if(U("\u2705 Payment successful!"),f){console.log(c,"paymentIntent");try{let C=await Cn.post(`${M}api/v1/gateway/secure-charge/${y}`,{stripe_id:c==null?void 0:c.id});if(console.log(C,"chargeDetails"),(Be=C==null?void 0:C.data)!=null&&Be.result){let ce=(Pe=C==null?void 0:C.data)==null?void 0:Pe.data;console.log(ce,"callbackdata"),F(_(x({},ce),{isPreAuth:q})),H(),A()}console.log((r=C==null?void 0:C.data)==null?void 0:r.data,"chargeDetails")}catch(C){console.log(C==null?void 0:C.response,"error"),V(((g=(ae=C==null?void 0:C.response)==null?void 0:ae.data)==null?void 0:g.message)||"Something went wrong"),A()}}setTimeout(()=>window.close(),1500)}else U("Processing payment...")}catch(z){console.log(z==null?void 0:z.response,"error"),V(((a=(Q=z==null?void 0:z.response)==null?void 0:Q.data)==null?void 0:a.message)||"Something went wrong"),A()}}},React.createElement(Wt,null),React.createElement("button",{className:"pay-button",disabled:ne||!K},ne?"Processing...":`${te((W=Number(N))==null?void 0:W.toFixed(2))}`))};var _n=Sn(jt);function Ve({clientSecret:f,onSuccess:I,showLoader:V,setError:y,session_token:F,callback:A,hideLoader:H,handleClose:N,amount:q,isPreAuth:K}){return f?React.createElement(kn,{stripe:_n,options:{clientSecret:f}},React.createElement(Ut,{onSuccess:I,showLoader:V,hideLoader:H,setError:y,session_token:F,callback:A,handleClose:N,amount:q,isPreAuth:K})):null}import{useEffect as Fn,useRef as Tn}from"react";function Zt({challengeUrl:f,fractalToken:I,stripeIntentId:V,onSuccess:y,onError:F,containerRef:A}){let H=Tn(null);return Fn(()=>{if(!f||typeof window=="undefined")return;let N=A.current;if(!N)return;H.current&&N.contains(H.current)&&N.removeChild(H.current);let q=document.createElement("iframe");q.src=f,q.width="100%",q.height="400px",q.style.border="none",q.style.borderRadius="8px",H.current=q,N.appendChild(q);let K=J=>{var ne;((ne=J.data)==null?void 0:ne.type)==="3ds-authentication-challenge-complete"&&(N.innerHTML="",J.data.status==="succeeded"?y(I,V):F(J.data.status))};return window.addEventListener("message",K),()=>{window.removeEventListener("message",K),H.current&&N.contains(H.current)&&N.removeChild(H.current)}},[f,A,I,V,y,F]),null}var Lo=({amount:f,bankAmount:I,submitBtnText:V="Pay",session_token:y,customerId:F,callback:A,merchantName:H="merchant",isPreAuth:N,surcharge:q="0",submitBtnClass:K,submitBtnIcon:J,isRequest:ne,pass_fee:G,pass_fee_amount:Fe,require3ds:U=!1})=>{var bt,yt,ht,xt,vt,wt,Nt,Ct,kt,St,_t,Ft,Tt,Bt;let Te=Ln(null),[W,oe]=h("card"),[Be,Pe]=h("card"),[r,ae]=h(),[g,Q]=h({}),[a,z]=h(),[c,C]=h({}),[ce,We]=h(!1),[X,Ke]=h(!1),[ue,Ue]=h(!1),[Me,k]=h(""),[$n,Jt]=h(!1),[An,Gt]=h(""),[Ze,Je]=h(!1),[Ge,he]=h(!1),[Z,Le]=h([]),[D,Qe]=h([]),[R,Xe]=h(),[pe,xe]=h(Number(f)),[De,ve]=h("form"),[Re,we]=h("form"),[et,tt]=h(!1),[$e,nt]=h(0),[Ae,ot]=h(""),[zn,Qt]=h(null),[at,Ne]=h(!1),[Xt,ze]=h(!1),[re,Ee]=h(null);console.log(pe,"cashDiscount");let rt=O+"widget/mc-img.svg",it=O+"widget/visa-img.svg",st=O+"widget/ae-img.svg",lt=O+"widget/discover-img.svg",En=O+"widget/card.svg",jn=O+"widget/Trash.svg",Dt=O+"widget/bank.svg",Rt=O+"widget/secure-img.png",en=O+"widget/pov-by.png",In=O+"widget/pax.svg",Hn=O+"widget/cardicon.svg",Yn=O+"widget/bankicon.svg",me=()=>Je(!0),S=()=>Je(!1),tn=(n,t)=>{let i=(parseFloat(t)||0)/100,l=n/(1+i);return Math.round(l*100)/100},ct=async n=>{var t,i,l,o,p,s,m,u,b;console.log(n,"ndfkjhdskjfhds");try{let d={pass_fee_amount:Number(f)-pe,pass_fee:G,Token:n==null?void 0:n.Token,amount:f,postal_code:n==null?void 0:n.postalCode,require3ds:U};U&&(n!=null&&n.stripe_3ds_auth_id)&&(d.stripe_3ds_auth_id=n==null?void 0:n.stripe_3ds_auth_id);let v=await j.post(`${M}api/v1/gateway/charge/${y}`,d);if((t=v==null?void 0:v.data)!=null&&t.result){let w;if(ue&&F)try{let E={postal_code:r==null?void 0:r.zipCode,customer_id:F,gateway_token:(n==null?void 0:n.gateway_token)||(n==null?void 0:n.Token)};w=await j.post(`${M}api/v1/gateway/add-card/${y}`,E),console.log((i=w==null?void 0:w.data)==null?void 0:i.data,"addCard?.data?.data"),(l=w==null?void 0:w.data)!=null&&l.result&&(w=(o=w==null?void 0:w.data)==null?void 0:o.data)}catch(E){console.log(E,"error"),S(),k(((s=(p=E==null?void 0:E.response)==null?void 0:p.data)==null?void 0:s.message)||"Something went wrong!")}let L={cardDetails:x(x({},w),n),callback:_(x({},(m=v==null?void 0:v.data)==null?void 0:m.data),{name:r==null?void 0:r.cardName,isPreAuth:N})};ue||delete L.cardDetails,A(L),S(),ee()}}catch(d){k(((b=(u=d==null?void 0:d.response)==null?void 0:u.data)==null?void 0:b.message)||"Something went wrong!"),S()}},pt=async n=>{var t,i,l,o,p,s,m,u;try{let b={Token:n==null?void 0:n.Token,amount:f,postal_code:n==null?void 0:n.postalCode},d=await j.post(`${M}api/v1/gateway/preauth/${y}`,b);if((t=d==null?void 0:d.data)!=null&&t.result){let v;if(ue&&F)try{console.log(d,"preAuthResponse");let L={postal_code:r==null?void 0:r.zipCode,customer_id:F,gateway_token:(n==null?void 0:n.Token)||(n==null?void 0:n.gateway_token)};v=await j.post(`${M}api/v1/gateway/add-card/${y}`,L),(i=v==null?void 0:v.data)!=null&&i.result&&(v=(l=v==null?void 0:v.data)==null?void 0:l.data)}catch(L){console.log(L,"error"),S(),k(((p=(o=L==null?void 0:L.response)==null?void 0:o.data)==null?void 0:p.message)||"Something went wrong!")}let w={cardDetails:x(x({},v),n),callback:_(x({},(s=d==null?void 0:d.data)==null?void 0:s.data),{name:r==null?void 0:r.cardName,isPreAuth:N})};ue||delete w.cardDetails,A(w),S(),ee()}}catch(b){k(((u=(m=b==null?void 0:b.response)==null?void 0:m.data)==null?void 0:u.message)||"Something went wrong!"),S()}},nn=async n=>{var t,i,l,o;if(n.Error)k(n.Error),S();else{let p={token:n.Token,resp:n};try{let s=await j.post(`${M}api/v1/gateway/update/token/${y}`,p);if((s==null?void 0:s.status)==200){let m={Token:(i=(t=s==null?void 0:s.data)==null?void 0:t.data)==null?void 0:i.gateway_token,Brand:n.Brand,ExpirationMonth:n.ExpirationMonth,ExpirationYear:n.ExpirationYear,Last4:n.Last4,Bin:n.Bin,CVV:n.CVV,postalCode:r==null?void 0:r.zipCode},u;N?pt(m):ct(m)}}catch(s){console.log(s,"error"),S(),k(((o=(l=s==null?void 0:s.response)==null?void 0:l.data)==null?void 0:o.message)||"Something went wrong!")}}},on=()=>Ke(!0),mt=n=>{oe(n)},an=()=>{var i,l,o,p,s,m,u,b;let n={},t=a;return(i=t==null?void 0:t.name)!=null&&i.trim()||(n.name="Name is required"),(l=t==null?void 0:t.accountNumber)!=null&&l.trim()||(n.accountNumber="Account number is required"),(o=t==null?void 0:t.accountNumber)!=null&&o.trim()&&((p=t==null?void 0:t.accountNumber)==null?void 0:p.trim())!==((s=t==null?void 0:t.confirmAccountNumber)==null?void 0:s.trim())&&(n.confirmAccountNumber="Account numbers must match"),(m=t==null?void 0:t.bankName)!=null&&m.trim()||(n.bankName="Bank name is required"),(u=t==null?void 0:t.routingNumber)!=null&&u.trim()||(n.routingNumber="Routing Number is required"),t!=null&&t.routingNumber&&((b=t==null?void 0:t.routingNumber)==null?void 0:b.length)!==9&&(n.routingNumber="Routing number must be 9 digits"),((t==null?void 0:t.accountType)==="business saving"||(t==null?void 0:t.accountType)==="business checking")&&(!(t!=null&&t.companyName)||(t==null?void 0:t.companyName)==="")&&(n.companyName="Company Name is required for business accounts"),C(n),Object.keys(n).length>0},je=async(n,t)=>{var i,l,o;console.log(n,t,"fjahfgyuhgad");try{let p=n,s=await j.post(`${M}api/v1/gateway/verify-and-save/${y}`,{token:p,require3ds:U,pass_fee:G});if((s==null?void 0:s.status)==200){let m=(i=s==null?void 0:s.data)==null?void 0:i.data,u={Token:m.gateway_token,Brand:m.card_data.brand,ExpirationMonth:m.card_data.expire_mm,ExpirationYear:m.card_data.expire_yy,Last4:m.card_data.last4,Bin:m.card_data.bin,postalCode:r==null?void 0:r.zipCode,stripe_3ds_auth_id:t};N?pt(u):ct(u)}}catch(p){console.log(p,"error"),k(((o=(l=p==null?void 0:p.response)==null?void 0:l.data)==null?void 0:o.message)||"Something went wrong!"),S()}},rn=async()=>{var n,t,i,l,o,p,s,m,u,b,d,v,w,L,E,be,T,ye,Ce,se,Y,B,ke,Pt,Mt,Lt,$t;try{let de={method:"POST",redirect:"follow"},le=await j.post(`${M}api/v1/widget/generate-session`,de),un=Number(r==null?void 0:r.expiryYear)%100,fn=`${(n=r==null?void 0:r.cardNumber)==null?void 0:n.replace(/\s+/g,"")}=${un}${r==null?void 0:r.expiryMonth} ${r==null?void 0:r.cvv}`,bn=forge.pki.publicKeyFromPem((i=(t=le==null?void 0:le.data)==null?void 0:t.data)==null?void 0:i.publicKeyPem).encrypt(fn,"RSA-OAEP",{md:forge.md.sha1.create(),mgf1:{md:forge.md.sha1.create()}}),yn=forge.util.encode64(bn),hn={"Content-Type":"application/json","x-app-session-key":(o=(l=le.data)==null?void 0:l.data)==null?void 0:o.session_key},At={enc_track2_data:yn,algorithm:"RSAES_OAEP_SHA_1",session_key:(s=(p=le==null?void 0:le.data)==null?void 0:p.data)==null?void 0:s.session_key};if(U&&typeof window!="undefined"&&typeof navigator!="undefined"){let P=(m=navigator.languages)!=null?m:[navigator.language],zt=Array.isArray(P)?P[0]:P;At.three_ds_data={amount:Math.round(parseFloat(f)*100),currency:"usd",channel:{type:"browser",browser:{language:typeof zt=="string"?zt:null,color_depth:(b=(u=window.screen)==null?void 0:u.colorDepth)!=null?b:null,java_enabled:typeof navigator.javaEnabled=="function"?navigator.javaEnabled():!1,screen_height:(v=(d=window.screen)==null?void 0:d.height)!=null?v:null,screen_width:(L=(w=window.screen)==null?void 0:w.width)!=null?L:null,timezoneOffset:new Date().getTimezoneOffset()}}}}let xn=JSON.stringify(At),$=await j.post(`${Et}tokenizer/tokenize`,xn,{headers:hn});if(($==null?void 0:$.status)==200){console.log($,"tokenizeData");let P=(be=(E=$==null?void 0:$.data)==null?void 0:E.data)==null?void 0:be.stripe_three_ds_response;console.log(P,"ThreedsData"),U&&!P&&P.status==="200 OK"&&((T=P==null?void 0:P.data)!=null&&T.challenge_url)&&k("Something went wrong. Please try again later."),U?(ye=P==null?void 0:P.data)!=null&&ye.challenge_url?(S(),Ee(_(x({},P==null?void 0:P.data),{fractalToken:(ke=(B=$==null?void 0:$.data)==null?void 0:B.data)==null?void 0:ke.token}))):je((se=(Ce=$==null?void 0:$.data)==null?void 0:Ce.data)==null?void 0:se.token,(Y=P==null?void 0:P.data)==null?void 0:Y.id):je((Mt=(Pt=$==null?void 0:$.data)==null?void 0:Pt.data)==null?void 0:Mt.token,null)}}catch(de){S(),console.log(de,"error"),k((($t=(Lt=de==null?void 0:de.response)==null?void 0:Lt.data)==null?void 0:$t.message)||"Something went wrong!")}},sn=()=>{var o,p,s,m,u,b;let n={},t=r,i=parseInt((t==null?void 0:t.expiryMonth)||"",10),l=(t==null?void 0:t.expiryYear)||"";if((o=t==null?void 0:t.cardName)!=null&&o.trim()||(n.cardName="Card name is required"),(p=t==null?void 0:t.cardNumber)!=null&&p.trim()||(n.cardNumber="Card number is required"),(!((s=t==null?void 0:t.expiryMonth)!=null&&s.trim())||!((m=t==null?void 0:t.expiryYear)!=null&&m.trim())||isNaN(i)||i<1||i>12||l.length!==4)&&(n.expiryMonth="Invalid Expiration Date."),(u=t==null?void 0:t.cvv)!=null&&u.trim()||(n.cvv="CVV is required"),(b=t==null?void 0:t.zipCode)!=null&&b.trim()||(n.zipCode="ZIP code is required"),t!=null&&t.expiryMonth&&(t!=null&&t.expiryYear)&&t.expiryMonth.length<=2&&t.expiryYear.length===4){let d=parseInt(t.expiryMonth,10),v=parseInt(t.expiryYear,10),w=new Date,L=w.getMonth()+1,E=w.getFullYear();(v<E||v===E&&d<L)&&(n.expiryMonth="Card is expired")}return Q(n),Object.keys(n).length>0},ln=()=>{let n=DatacapWebToken.validateCardNumber(r==null?void 0:r.cardNumber.replaceAll(" ","")),t=DatacapWebToken.validateExpirationDate(r==null?void 0:r.expiryMonth,r==null?void 0:r.expiryYear),i=DatacapWebToken.validateCVV(r==null?void 0:r.cvv),l={};return n||(l.cardNumber="Invalid card Number"),t||(l.expiryMonth="Invalid Expiration Date."),i||(l.cvv="Invalid CVV"),Q(l),n&&i&&t},dt=async n=>{var t,i,l,o,p,s,m,u,b,d,v,w,L,E,be;if(n.preventDefault(),W!=="ach"){if(sn()||!ln())return}else if(an())return;try{me();let T=await j.get(`${M}api/v1/gateway/token/${y}`,{params:{require3ds:U,pass_fee:G}});if((T==null?void 0:T.status)==200){let ye=(i=(t=T==null?void 0:T.data)==null?void 0:t.data)==null?void 0:i.gateway_token,Ce=(o=(l=T==null?void 0:T.data)==null?void 0:l.data)==null?void 0:o.paymentGateway;if(W!=="ach")Ce==((p=qt)==null?void 0:p.FRACTALKEY)?await rn():DatacapWebToken.requestToken(ye,"PaymentForm",nn);else{let se;try{let Y=await j.post(`${M}api/v1/gateway/bank-charge/${y}`,{label:a==null?void 0:a.name,account_number:a==null?void 0:a.accountNumber,routing_number:a==null?void 0:a.routingNumber,bank_name:a==null?void 0:a.bankName,account_type:a==null?void 0:a.accountType,amount:`${I}`,customer_id:null,isSaveAch:!1,tax:"0.00",discount:"0.00",surcharge:"0.00",order_id:"",company_name:(a==null?void 0:a.companyName)||""});if((s=Y==null?void 0:Y.data)!=null&&s.result){if(ce&&F)try{let B=await j.post(`${M}api/v1/gateway/add-bank/${y}`,{name:a==null?void 0:a.name,account_number:a==null?void 0:a.accountNumber,routing_number:a==null?void 0:a.routingNumber,bank_name:a==null?void 0:a.bankName,account_type:a==null?void 0:a.accountType,customer_id:F||"",company_name:(a==null?void 0:a.companyName)||""});B.data.result&&(se={bankDetails:_(x({},(m=B==null?void 0:B.data)==null?void 0:m.data),{account_type:a==null?void 0:a.accountType})})}catch(B){S(),k(((b=(u=B==null?void 0:B.response)==null?void 0:u.data)==null?void 0:b.message)||"Something went wrong!")}se=_(x({},se),{callback:_(x({},(d=Y==null?void 0:Y.data)==null?void 0:d.data),{name:a==null?void 0:a.name,isPreAuth:N})}),A(se),ee(),S()}}catch(Y){console.log(Y,"errororor");let B=(v=Y==null?void 0:Y.response)==null?void 0:v.data;typeof(B==null?void 0:B.message)=="object"?Object.values(B==null?void 0:B.message).forEach(ke=>{k(ke||"Something went wrong")}):k((B==null?void 0:B.message)||"Something went wrong"),S()}}}}catch(T){S(),A({error:((L=(w=T==null?void 0:T.response)==null?void 0:w.data)==null?void 0:L.message)||"Something went wrong!"}),k(((be=(E=T==null?void 0:T.response)==null?void 0:E.data)==null?void 0:be.message)||"Something went wrong!")}},fe=(n,t)=>{let i=n;if(["expiryMonth","expiryYear","zipCode","cvv"].includes(i)){(t===""||/^[0-9]+$/.test(t))&&(Q(o=>_(x({},o),{[i]:""})),ae(o=>_(x({},o),{[i]:t})));return}Q(o=>_(x({},o),{[i]:""})),ae(o=>_(x({},o),{[i]:t}))},cn=n=>{let i=n.target.value.replace(/\D/g,""),l="";/^3[47]/.test(i)?l=i.slice(0,15).replace(/^(\d{1,4})(\d{1,6})?(\d{1,5})?$/,(p,s,m,u)=>[s,m,u].filter(Boolean).join(" ")):l=i.slice(0,16).replace(/^(\d{1,4})(\d{1,4})?(\d{1,4})?(\d{1,4})?$/,(p,s,m,u,b)=>[s,m,u,b].filter(Boolean).join(" ")),Q(o=>_(x({},o),{cardNumber:""})),ae(o=>_(x({},o),{cardNumber:l}))},ie=n=>{let{name:t,value:i}=n.target,l=["routingNumber","accountNumber","confirmAccountNumber"];if(t=="name"){/^[a-zA-Z\s]*$/.test(i)&&(C(o=>_(x({},o),{[t]:""})),z(o=>_(x({},o),{[t]:i})));return}if(l.includes(t)){(i===""||/^[0-9]+$/.test(i))&&(C(o=>_(x({},o),{[t]:""})),z(o=>_(x({},o),{[t]:i})));return}C(o=>_(x({},o),{[t]:""})),z(o=>_(x({},o),{[t]:i}))},ee=()=>{Ke(!1),oe("card"),k(""),Jt(!1),Gt(""),z({name:"",routingNumber:"",accountNumber:"",confirmAccountNumber:"",bankName:"",accountType:""}),C({name:"",routingNumber:"",accountNumber:"",confirmAccountNumber:"",bankName:"",accountType:""}),ae({cardName:"",cardNumber:"",expiryMonth:"",expiryYear:"",cvv:"",orderId:"",zipCode:""}),Q({cardName:"",cardNumber:"",expiryMonth:"",expiryYear:"",cvv:"",orderId:"",zipCode:""}),We(!1),Ue(!1),we("form"),ve("form"),tt(!1),nt(0),xe(0),Le([]),Qt(null),ot(null),Ne(!1),ze(!1),Ee(null)},gt=async()=>{var n,t,i,l;me();try{let o={isPreAuth:N,customerId:F},p=await j.post(`${M}api/v1/gateway/card-list/${y}`,o);console.log("cardListData",p);let s=((t=(n=p==null?void 0:p.data)==null?void 0:n.data)==null?void 0:t.cardList)||[],m=s==null?void 0:s.filter(b=>(b==null?void 0:b.card_type)=="Bank"),u=s==null?void 0:s.filter(b=>(b==null?void 0:b.card_type)!=="Bank");u&&(u==null?void 0:u.length)>0?(oe("card"),ve("list"),Le(u)):(oe("card"),Le([])),m&&(m==null?void 0:m.length)>0?(we("list"),Qe(m)):Qe([]),S()}catch(o){console.log(o),S(),k(((l=(i=o==null?void 0:o.response)==null?void 0:i.data)==null?void 0:l.message)||(o==null?void 0:o.message)||"Something went wrong")}};console.log(D,"lists",Z);let On=n=>{switch(n==null?void 0:n.toLowerCase()){case"visa":return it;case"mastercard":case"mc":case"m/c":return rt;case"amex":case"american express":case"ae":return st;case"discover":case"dcvr":return lt;case"bank":return Dt;default:return n}},ut=async n=>{ge.fire({icon:"warning",text:"Do you want to delete the card?",showCancelButton:!0,confirmButtonText:"Yes",cancelButtonText:"No",reverseButtons:!0,buttonsStyling:!1,customClass:{confirmButton:"swal2-confirm btn btn-dark",cancelButton:"swal2-cancel btn btn-dark",popup:"custom-swal-popup",icon:"custom-swal-icon"}}).then(async t=>{var i,l;if(t.isConfirmed){he(!0);try{let o={card_id:n,customer_id:F},p=await j.patch(`${M}api/v1/gateway/delete-card/${y}`,o);(i=p==null?void 0:p.data)!=null&&i.result?(he(!1),gt(),ge.fire({icon:"success",title:"Deleted!",text:((l=p==null?void 0:p.data)==null?void 0:l.message)||"Card deleted.",confirmButtonText:"OK",showConfirmButton:!0,timer:1e3,timerProgressBar:!0,customClass:{confirmButton:"btn btn-dark"}})):(he(!1),ge.fire({icon:"error",title:"Failure!",text:"Card not deleted.",timer:1e3,timerProgressBar:!0,customClass:{confirmButton:"btn btn-dark"}}))}catch(o){he(!1),ge.fire({icon:"error",title:"Error!",text:"Failed to delete the card.",confirmButtonText:"OK",customClass:{confirmButton:"btn btn-dark"}})}}else t.dismiss===ge.DismissReason.cancel&&ge.fire({icon:"info",text:"Card not deleted",confirmButtonText:"OK",buttonsStyling:!1,customClass:{confirmButton:"btn btn-dark float-end",actions:"swal2-actions-end"}})})},ft=async()=>{var l,o,p,s;let n=F,t=R==null?void 0:R.id,i=R==null?void 0:R.card_type;if(f)if(n)if(t){let m={amount:(i==null?void 0:i.toLowerCase())==="bank"?`${I}`:f,customer_id:n,card_id:t,pass_fee_amount:Number(f)-pe};N&&(m.isPreauth=!0),console.log(m,"chargeobj");let u=M+"api/v1/gateway/charge-by-saved-details/"+y,b={"Content-Type":"application/json"};try{me();let d=await j.post(u,m);console.log(d,"res"),(l=d==null?void 0:d.data)!=null&&l.result&&(A({callback:_(x({},(o=d==null?void 0:d.data)==null?void 0:o.data),{isPreAuth:N})}),S(),ee())}catch(d){console.log(d==null?void 0:d.response,"error by saved details"),S(),k(((s=(p=d==null?void 0:d.response)==null?void 0:p.data)==null?void 0:s.message)||"Something went wrong!")}}else k("Please Select A Card/ACH");else k("Please Select Customer");else k("Something went wrong.")};console.log(X,f,F);let pn=async()=>{var n,t,i,l;try{me();let o=await j.get(`${M}api/v1/gateway/get-payment-details/${y}`);console.log(o,"respinse"),(o==null?void 0:o.status)==200&&(tt((t=(n=o==null?void 0:o.data)==null?void 0:n.data)==null?void 0:t.isBankActive),nt(Number((l=(i=o==null?void 0:o.data)==null?void 0:i.data)==null?void 0:l.fee)||0),S())}catch(o){console.log(o,"error while getting payment details"),S()}};Mn(()=>{X&&pn()},[X]),Pn(()=>{if(X&&Fe){let n=Number(f)-Number(Fe);n&&!isNaN(n)&&xe(n)}else if(X&&G&&$e){let n=tn(f,$e);n&&!isNaN(n)&&xe(n)}else xe(Number(f));F&&X&&!ne&&gt()},[F,X,f,$e]);let Vn=()=>N?"Cards":"Cards/Bank";console.log(et,"scdgfhasgcf");let qn=Bn(async()=>{try{Ne(!0);let t=await(await fetch(`${M}api/v1/gateway/create-payment-intent/${y}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({amount:f,require3ds:U,pass_fee:G})})).json();t.is3dEnable?(Ne(!1),ot(t.clientSecret),ze(t.is3dEnable)):(Ne(!1),ze(t.is3dEnable)),t.result||k(t.error||(t==null?void 0:t.message)||"Failed to get client secret")}catch(n){console.log(n.response,"err.response"),k(n.message)}},[f]),mn=()=>{console.log("successsssssss")};console.log(Ae,"clientSecret");let dn=(n,t)=>{console.log("3DS Auth successful \u2705",n,t),me(),je(n,t),Ee(null)},gn=n=>{console.error("3DS Auth failed \u274C",n),k(`3DS Authentication ${n}`)};return console.log(re,"stripeResponse"),e.createElement(e.Fragment,null,e.createElement("link",{href:"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css"}),e.createElement(Yt,null),e.createElement(Oe,null),e.createElement(Vt,null),e.createElement("button",{className:K||"paymentBtn",onClick:on},V,J),e.createElement(It,{open:X,onClose:ee},at&&e.createElement(Ie,{loading:at}),Me&&e.createElement("div",{style:{maxHeight:"606px",minHeight:"60vh",padding:"40px"}},e.createElement(Ot,{error:Me,onClose:ee})),!Me&&e.createElement(e.Fragment,null,(Ze||Ge)&&e.createElement(Ie,{loading:Ze||Ge}),e.createElement("div",{className:"frac-card-payment-page frac-form frac-new-form"},e.createElement("div",{ref:Te,style:{width:"100%",height:"100%"}}),re!=null&&re.challenge_url?e.createElement(Zt,{containerRef:Te,challengeUrl:re.challenge_url,fractalToken:re.fractalToken,stripeIntentId:re.id,onSuccess:dn,onError:gn}):e.createElement("div",{className:"parent-pay-container"},e.createElement("span",{className:"request-payment-close-popup",onClick:ee},e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none"},e.createElement("g",{clipPath:"url(#clip0_12425_52336)"},e.createElement("path",{d:"M9.46585 8.01168L15.6959 1.7814C16.1014 1.37615 16.1014 0.720912 15.6959 0.315659C15.2907 -0.0895946 14.6354 -0.0895946 14.2302 0.315659L7.99991 6.54593L1.76983 0.315659C1.36438 -0.0895946 0.709336 -0.0895946 0.304082 0.315659C-0.101361 0.720912 -0.101361 1.37615 0.304082 1.7814L6.53416 8.01168L0.304082 14.2419C-0.101361 14.6472 -0.101361 15.3024 0.304082 15.7077C0.506045 15.9098 0.771595 16.0114 1.03695 16.0114C1.30232 16.0114 1.56768 15.9098 1.76983 15.7077L7.99991 9.47742L14.2302 15.7077C14.4323 15.9098 14.6977 16.0114 14.9631 16.0114C15.2284 16.0114 15.4938 15.9098 15.6959 15.7077C16.1014 15.3024 16.1014 14.6472 15.6959 14.2419L9.46585 8.01168Z",fill:"#727272"})),e.createElement("defs",null,e.createElement("clipPath",{id:"clip0_12425_52336"},e.createElement("rect",{width:"16",height:"16",fill:"white"}))))),e.createElement("div",{className:"pay-main-logo-res"}),e.createElement("div",{className:"pay-container"},e.createElement("div",{className:"pay-header pay-conatiner-one"},e.createElement("div",{className:"pay-conatiner-one-first"},e.createElement("div",{className:"pay-logo-container"},e.createElement("div",{className:"pay-main-logo"}),e.createElement("h1",{className:"pay-heading"},"Pay"),(Z==null?void 0:Z.length)>0&&W!=="cardList"&&e.createElement("button",{className:"res-charge-payment-back-btn ",onClick:()=>oe("cardList")}," ",e.createElement(qe,null)," Back")),e.createElement("div",{className:"amt-pay-con"},e.createElement("div",{className:"pay-amount-conatiner"},e.createElement("small",{className:"pay-payment-amount"},"Select payment type"),e.createElement("div",{className:"frac-card-bank-radio-main"},e.createElement(He,{label:"Card",amount:(bt=Number(f))==null?void 0:bt.toFixed(2),value:"card",onChange:mt,activetab:W}),!N&&et&&e.createElement(He,{label:"Bank",amount:(yt=Number(I))==null?void 0:yt.toFixed(2),value:"ach",onChange:mt,activetab:W})),G&&W==="card"&&pe&&Number(f)-Number(pe)>0?e.createElement("div",{className:"frac-cash-discount-fee"},e.createElement("small",null,W==="card"?"Cash Discount":"Cash Discount Savings"," "),e.createElement("p",null,te((Number(f)-Number(pe)).toFixed(2)))):null))),e.createElement("div",{className:"pay-conatiner-one-last"},e.createElement("img",{src:Rt,alt:""}),e.createElement("img",{src:en,alt:""}),"Secure payments powered by Fractal")),e.createElement("div",{className:"pay-tab pay-conatiner-two"},e.createElement("div",{className:"col-md-12"},e.createElement("div",{id:"payment-form-div"},Xt?Ae&&e.createElement(Ve,{onSuccess:mn,clientSecret:Ae,amount:f,showLoader:me,hideLoader:S,callback:A,session_token:y,handleClose:ee,setError:k,isPreAuth:N}):e.createElement(e.Fragment,null,e.createElement("div",{id:"ach",style:{display:W==="card"?"block":"none"},className:"tabcontent"},e.createElement("div",{className:"frac-heading-card-wrap"},e.createElement("div",{className:"frac-backarrow"},(Z==null?void 0:Z.length)>0&&De==="form"&&e.createElement("button",{className:"charge-payment-back-btn ",onClick:()=>ve("list")}," ",e.createElement(qe,null))),e.createElement("h6",{className:"frac-card-payment-heading"},"Card Payment")),e.createElement("div",{style:{display:"flex",gap:"8px",margin:"8px 0px 19px 0px"}},e.createElement("img",{src:it,alt:"",width:33}),e.createElement("img",{src:rt,width:33,alt:""}),e.createElement("img",{src:st,alt:"",width:33}),e.createElement("img",{src:lt,width:33,alt:""})),De==="list"&&(Z==null?void 0:Z.length)>0?e.createElement(e.Fragment,null,e.createElement(Ye,{headingClass:"card-ach-heading-frac",listHeading:"Card",ListItems:Z,selectedCard:R,setSelectedCard:Xe,handleDeleteCard:ut,otherButtonLabel:"Pay With Other Card",otherButtonAction:()=>{ve("form")}}),e.createElement("div",{className:"form-group-frac",style:{padding:"0"}},e.createElement("button",{className:"pay-button",style:{margin:"0px"},type:"submit",onClick:ft},te((ht=Number(f))==null?void 0:ht.toFixed(2))))):e.createElement("form",{id:"PaymentForm",style:{textAlign:"start"},onSubmit:dt},e.createElement("div",{className:"ach-scrl",style:{minHeight:"398px",maxHeight:"398px",overflow:"auto",marginRight:"5px"}},e.createElement("div",{className:"form-group-frac"},e.createElement("label",{htmlFor:"cardHolderName"},"NAME ON CARD "),e.createElement("input",{type:"text",className:"form-control-frac",maxLength:100,placeholder:"John Doe",value:(r==null?void 0:r.cardName)||"",onChange:n=>{let t=n.target.value;/^[a-zA-Z\s]*$/.test(t)&&fe("cardName",t)}}),(g==null?void 0:g.cardName)&&e.createElement("span",{className:"error-span"},g==null?void 0:g.cardName)),e.createElement("div",{className:"form-group-frac"},e.createElement("label",{htmlFor:"cardNumber"},"CARD NUMBER"),e.createElement("div",{className:"toggle-num-wrapper"},e.createElement("input",{className:"form-control-frac card-number-new",type:"text",maxLength:19,inputMode:"numeric",placeholder:"0000 0000 0000 0000",value:(r==null?void 0:r.cardNumber)||"",onChange:n=>cn(n),"data-token":"card_number"}),e.createElement("div",{className:"card-crdi card-expiry-new"},e.createElement("div",{className:"exp-date-year-container"},e.createElement("div",{className:"exp-date form-group-frac"},e.createElement("input",{"data-token":"exp_month",className:"form-control-frac required card-cvv-in",type:"text",style:{maxHeight:"36px"},placeholder:"MM",maxLength:2,value:(r==null?void 0:r.expiryMonth)||"",onChange:n=>fe("expiryMonth",n.target.value)})),e.createElement("div",{className:"exp-year form-group-frac"},e.createElement("input",{"data-token":"exp_year",className:"form-control-frac required card-cvv-in",type:"text",style:{maxHeight:"36px"},placeholder:"YYYY",maxLength:4,value:(r==null?void 0:r.expiryYear)||"",onChange:n=>fe("expiryYear",n.target.value)})),e.createElement("div",{className:"security-digit form-group-frac"},e.createElement("input",{"data-token":"cvv",className:"form-control-frac card-cvv-in required",type:"text",style:{maxHeight:"36px"},maxLength:4,placeholder:"CVC",value:(r==null?void 0:r.cvv)||"",onChange:n=>fe("cvv",n.target.value)})))),(g==null?void 0:g.cardNumber)&&e.createElement("span",{className:"error-span"},g==null?void 0:g.cardNumber),e.createElement("p",{style:{margin:"0"}},g!=null&&g.expiryMonth||g!=null&&g.expiryYear?e.createElement("span",{className:"error-span",style:{paddingRight:"4px"}},g==null?void 0:g.expiryMonth):"",(g==null?void 0:g.cvv)&&e.createElement("span",{className:"error-span"},g==null?void 0:g.cvv)))),e.createElement("div",{className:"form-group-frac"},e.createElement("label",{htmlFor:"zip"},"ZIP"),e.createElement("input",{type:"text",className:"form-control-frac",maxLength:100,placeholder:"000000",value:(xt=r==null?void 0:r.zipCode)!=null?xt:"",onChange:n=>fe("zipCode",n.target.value)}),(g==null?void 0:g.zipCode)&&e.createElement("span",{className:"error-span"},g==null?void 0:g.zipCode)),F&&e.createElement("div",{className:"form-group-frac"},e.createElement("div",{className:"frac-tooltip-mn",style:{display:"flex",alignItems:"center",gap:"10px",paddingTop:"10px"}},e.createElement("input",{type:"checkbox",id:"save_card",className:"toggle-checkbox",checked:ue,onChange:n=>Ue(n.target.checked)}),e.createElement("label",{htmlFor:"save_card",className:"toggle-label"}),e.createElement("label",{htmlFor:"save_card"},"Save card for future payments "),e.createElement("div",{className:"frac-tooltip-wrapper"},e.createElement("div",{className:"frac-tooltip-icon"},e.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none"},e.createElement("circle",{cx:"10",cy:"10",r:"10",fill:"#E0DFE2"}),e.createElement("path",{d:"M9.03406 12.0979V12.0072C9.04055 11.4153 9.10057 10.9443 9.21411 10.5943C9.3309 10.2442 9.49635 9.96102 9.71046 9.74463C9.92457 9.52824 10.1825 9.33095 10.4842 9.15274C10.6788 9.03182 10.854 8.89658 11.0097 8.74702C11.1655 8.59745 11.2887 8.42562 11.3796 8.2315C11.4704 8.03739 11.5158 7.82259 11.5158 7.58711C11.5158 7.3039 11.4477 7.05887 11.3114 6.85203C11.1752 6.64519 10.9935 6.48608 10.7664 6.3747C10.5426 6.26014 10.2928 6.20286 10.017 6.20286C9.76723 6.20286 9.52879 6.25378 9.3017 6.35561C9.07461 6.45744 8.88646 6.61655 8.73723 6.83294C8.588 7.04614 8.50203 7.3214 8.47932 7.65871H7C7.02271 7.08592 7.17032 6.60223 7.44282 6.20764C7.71533 5.80986 8.07543 5.50915 8.52311 5.30549C8.97405 5.10183 9.47202 5 10.017 5C10.6139 5 11.1363 5.10979 11.5839 5.32936C12.0316 5.54574 12.3788 5.84964 12.6253 6.24105C12.8751 6.62928 13 7.08274 13 7.60143C13 7.95784 12.9432 8.27924 12.8297 8.56563C12.7161 8.84885 12.5539 9.10183 12.3431 9.32458C12.1354 9.54733 11.8856 9.74463 11.5937 9.91647C11.3179 10.0851 11.0941 10.2601 10.9221 10.4415C10.7534 10.6229 10.6302 10.8377 10.5523 11.0859C10.4745 11.3341 10.4323 11.6412 10.4258 12.0072V12.0979H9.03406ZM9.76886 15C9.50284 15 9.27413 14.9077 9.08273 14.7232C8.89132 14.5354 8.79562 14.3095 8.79562 14.0453C8.79562 13.7844 8.89132 13.5617 9.08273 13.3771C9.27413 13.1893 9.50284 13.0955 9.76886 13.0955C10.0316 13.0955 10.2587 13.1893 10.4501 13.3771C10.6448 13.5617 10.7421 13.7844 10.7421 14.0453C10.7421 14.2204 10.6967 14.3811 10.6058 14.5274C10.5182 14.6706 10.4015 14.7852 10.2555 14.8711C10.1095 14.957 9.94728 15 9.76886 15Z",fill:"#161616"}))),e.createElement("div",{className:"frac-tooltip-text"},e.createElement("p",null,"If checked, I agree to give the ",e.createElement("b",null,H||"merchant")," permission to charge this credit card for agreed-upon purchases in the future.")))))),e.createElement("div",{className:"form-group-frac",style:{marginTop:"20px",padding:"0"}},e.createElement("button",{type:"submit",style:{margin:0},className:"pay-button"},te((vt=Number(f))==null?void 0:vt.toFixed(2)))))),e.createElement("div",{id:"ach",style:{display:W==="ach"?"block":"none"},className:"tabcontent"},e.createElement(e.Fragment,null,e.createElement("div",{className:"frac-heading-card-wrap"},e.createElement("div",{className:"frac-backarrow"},(D==null?void 0:D.length)>0&&Re==="form"&&e.createElement("button",{className:"charge-payment-back-btn ",onClick:()=>we("list")}," ",e.createElement(qe,null))),e.createElement("h6",{className:"frac-card-payment-heading"},"Bank Payment")),Re==="list"&&(D==null?void 0:D.length)>0?e.createElement(e.Fragment,null,e.createElement(Ye,{headingClass:"card-ach-heading-frac",listHeading:"Banks",ListItems:D,selectedCard:R,setSelectedCard:Xe,handleDeleteCard:ut,otherButtonLabel:"Pay With Other Bank",otherButtonAction:()=>{we("form")}}),e.createElement("div",{className:"form-group-frac",style:{padding:"0"}},e.createElement("button",{className:"pay-button",style:{margin:"0px"},type:"submit",onClick:ft},te((wt=Number(I))==null?void 0:wt.toFixed(2))))):e.createElement("form",{id:"ACHPaymentForm",style:{textAlign:"start"},onSubmit:dt,autoComplete:"off"},e.createElement("div",{className:"ach-scrl",style:{minHeight:"444px",maxHeight:"444px"}},e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"nameonaccount"},"Name on account"),e.createElement("input",{type:"text",id:"nameonaccount",className:"form-control-frac",maxLength:100,placeholder:"John Doe",name:"name",value:(Nt=a==null?void 0:a.name)!=null?Nt:"",onChange:ie}),(c==null?void 0:c.name)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.name)),e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"routingnumber"},"Routing number"),e.createElement("input",{type:"text",id:"routingnumber",className:"form-control-frac",maxLength:9,placeholder:"000000000",name:"routingNumber",value:(Ct=a==null?void 0:a.routingNumber)!=null?Ct:"",onChange:ie}),(c==null?void 0:c.routingNumber)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.routingNumber)),e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"accountnumber"},"Account number"),e.createElement("input",{type:"text",id:"accountnumber",className:"form-control-frac",maxLength:16,placeholder:"0000000000",name:"accountNumber",value:(kt=a==null?void 0:a.accountNumber)!=null?kt:"",onChange:ie}),(c==null?void 0:c.accountNumber)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.accountNumber)),e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"confirmaccountnumber"},"Confirm account number"),e.createElement("input",{type:"text",id:"confirmaccountnumber",className:"form-control-frac",maxLength:16,placeholder:"0000000000",name:"confirmAccountNumber",value:(St=a==null?void 0:a.confirmAccountNumber)!=null?St:"",onChange:ie}),(c==null?void 0:c.confirmAccountNumber)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.confirmAccountNumber)),e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"bankname"},"Bank name"),e.createElement("input",{type:"text",id:"bankname",className:"form-control-frac",maxLength:100,placeholder:"My Bank",name:"bankName",value:(_t=a==null?void 0:a.bankName)!=null?_t:"",onChange:ie}),(c==null?void 0:c.bankName)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.bankName)),((a==null?void 0:a.accountType)==="business saving"||(a==null?void 0:a.accountType)==="business checking")&&e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"companyName"},"Company name"),e.createElement("input",{type:"text",id:"companyName",className:"form-control-frac",maxLength:100,placeholder:"My Company",name:"companyName",value:(Ft=a==null?void 0:a.companyName)!=null?Ft:"",onChange:ie}),(c==null?void 0:c.companyName)&&e.createElement("span",{className:"error-span"},c==null?void 0:c.companyName)),e.createElement("div",{className:"form-group-frac mb-4"},e.createElement("label",{htmlFor:"accounttype"},"Select account type"),e.createElement("select",{name:"accountType",id:"accounttype",className:"form-control-frac",value:(Tt=a==null?void 0:a.accountType)!=null?Tt:"",onChange:ie},e.createElement("option",{value:""},"Select account"),Ht.map(n=>e.createElement("option",{key:n.value,value:n.value},n.label)))),F&&e.createElement("div",{className:"form-group-frac mb-4 save-ach-div",style:{paddingTop:"5px"}},e.createElement("input",{type:"checkbox",id:"saveACH",className:"",maxLength:100,placeholder:"My Bank",checked:ce,onChange:n=>We(n.target.checked)}),e.createElement("label",{className:"saveachlabel",htmlFor:"saveACH"},"Save ACH")),ce&&e.createElement("div",{className:"form-group-frac mb-4 saveachtext"},e.createElement("p",null,"If checked, I agree to give the ",e.createElement("b",null,H||"merchant")," permission to charge this bank account for agreed-upon purchases in the future."))),e.createElement("div",{className:"form-group-frac "},e.createElement("button",{className:"pay-button",style:{margin:"20px 0 0"},type:"submit"},te((Bt=Number(I))==null?void 0:Bt.toFixed(2)))))))))))))))))};export{Lo as PaymentWidget};