logix-pay 1.0.1 → 1.0.3

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/index.cjs.js CHANGED
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  var React = require('react');
4
- var stripeJs = require('@stripe/stripe-js');
5
4
  var reactStripeJs = require('@stripe/react-stripe-js');
6
5
 
7
6
  function _arrayLikeToArray(r, a) {
@@ -457,8 +456,7 @@ function ShiftPaymentForm(_ref) {
457
456
 
458
457
  function StripePaymentForm(_ref) {
459
458
  var amount = _ref.amount,
460
- _ref$currency = _ref.currency,
461
- currency = _ref$currency === void 0 ? "usd" : _ref$currency,
459
+ currency = _ref.currency,
462
460
  _ref$color = _ref.color,
463
461
  color = _ref$color === void 0 ? "#556cd6" : _ref$color,
464
462
  _ref$formWidth = _ref.formWidth,
@@ -477,117 +475,49 @@ function StripePaymentForm(_ref) {
477
475
  description = _ref$description === void 0 ? "" : _ref$description;
478
476
  var stripe = reactStripeJs.useStripe();
479
477
  var elements = reactStripeJs.useElements();
480
- var initializedRef = React.useRef(false);
481
- var _useState = React.useState(null),
478
+ var _useState = React.useState(false),
482
479
  _useState2 = _slicedToArray(_useState, 2),
483
- publicKey = _useState2[0],
484
- setPublicKey = _useState2[1];
485
- var _useState3 = React.useState(false),
486
- _useState4 = _slicedToArray(_useState3, 2),
487
- isSubmitting = _useState4[0],
488
- setIsSubmitting = _useState4[1];
489
-
490
- /** Input styling based on props */
491
- var inputStyle = {
492
- style: {
493
- base: {
494
- fontSize: "15px",
495
- color: "#111",
496
- "::placeholder": {
497
- color: "#aaa"
498
- },
499
- padding: "".concat(inputPadding, "px"),
500
- border: "1px solid #ccc",
501
- borderRadius: "6px",
502
- backgroundColor: "#fff"
503
- },
504
- invalid: {
505
- color: "#ff4d4f"
506
- }
507
- }
508
- };
509
-
510
- /** Fetch Stripe public key once */
511
- React.useEffect(function () {
512
- if (initializedRef.current) return;
513
- initializedRef.current = true;
514
- var initPayment = /*#__PURE__*/function () {
515
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
516
- var res, data, _t;
517
- return _regenerator().w(function (_context) {
518
- while (1) switch (_context.p = _context.n) {
519
- case 0:
520
- _context.p = 0;
521
- _context.n = 1;
522
- return fetch("".concat(baseUrl).concat(userId));
523
- case 1:
524
- res = _context.v;
525
- if (!res.ok) errorPage("Failed to fetch public key");
526
- _context.n = 2;
527
- return res.json();
528
- case 2:
529
- data = _context.v;
530
- if (!data.publicKey) errorPage("Public key not found");
531
- setPublicKey(data.publicKey);
532
- _context.n = 4;
533
- break;
534
- case 3:
535
- _context.p = 3;
536
- _t = _context.v;
537
- if (errorPage) errorPage(_t.message);
538
- case 4:
539
- return _context.a(2);
540
- }
541
- }, _callee, null, [[0, 3]]);
542
- }));
543
- return function initPayment() {
544
- return _ref2.apply(this, arguments);
545
- };
546
- }();
547
- initPayment();
548
- }, [baseUrl, userId, errorPage]);
549
-
550
- /** Handle form submit */
480
+ isSubmitting = _useState2[0],
481
+ setIsSubmitting = _useState2[1];
551
482
  var handleSubmit = /*#__PURE__*/function () {
552
- var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(e) {
553
- var card, _yield$stripe$createP, pmError, paymentMethod, res, result, _t2;
554
- return _regenerator().w(function (_context2) {
555
- while (1) switch (_context2.p = _context2.n) {
483
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(e) {
484
+ var card, _yield$stripe$createP, error, paymentMethod, res, result, _t;
485
+ return _regenerator().w(function (_context) {
486
+ while (1) switch (_context.p = _context.n) {
556
487
  case 0:
557
488
  e.preventDefault();
558
- errorPage("");
559
489
  if (!(!stripe || !elements)) {
560
- _context2.n = 1;
490
+ _context.n = 1;
561
491
  break;
562
492
  }
563
- return _context2.a(2);
493
+ return _context.a(2);
564
494
  case 1:
565
495
  card = elements.getElement(reactStripeJs.CardNumberElement);
566
496
  if (card) {
567
- _context2.n = 2;
497
+ _context.n = 2;
568
498
  break;
569
499
  }
570
- return _context2.a(2, errorPage("Card element not found"));
500
+ return _context.a(2, errorPage === null || errorPage === void 0 ? void 0 : errorPage("Card element not found"));
571
501
  case 2:
572
- _context2.n = 3;
502
+ _context.n = 3;
573
503
  return stripe.createPaymentMethod({
574
504
  type: "card",
575
505
  card: card
576
506
  });
577
507
  case 3:
578
- _yield$stripe$createP = _context2.v;
579
- pmError = _yield$stripe$createP.error;
508
+ _yield$stripe$createP = _context.v;
509
+ error = _yield$stripe$createP.error;
580
510
  paymentMethod = _yield$stripe$createP.paymentMethod;
581
- if (!pmError) {
582
- _context2.n = 4;
511
+ if (!error) {
512
+ _context.n = 4;
583
513
  break;
584
514
  }
585
- if (errorPage) errorPage(pmError.message);
586
- return _context2.a(2);
515
+ errorPage === null || errorPage === void 0 || errorPage(error.message);
516
+ return _context.a(2);
587
517
  case 4:
588
518
  setIsSubmitting(true);
589
- _context2.p = 5;
590
- _context2.n = 6;
519
+ _context.p = 5;
520
+ _context.n = 6;
591
521
  return fetch("".concat(baseUrl, "charge/").concat(userId), {
592
522
  method: "POST",
593
523
  headers: {
@@ -601,43 +531,39 @@ function StripePaymentForm(_ref) {
601
531
  })
602
532
  });
603
533
  case 6:
604
- res = _context2.v;
605
- _context2.n = 7;
534
+ res = _context.v;
535
+ _context.n = 7;
606
536
  return res.json();
607
537
  case 7:
608
- result = _context2.v;
538
+ result = _context.v;
609
539
  if (res.ok) {
610
- _context2.n = 8;
540
+ _context.n = 8;
611
541
  break;
612
542
  }
613
- if (errorPage) errorPage(result);
614
- return _context2.a(2);
543
+ errorPage === null || errorPage === void 0 || errorPage(result);
544
+ return _context.a(2);
615
545
  case 8:
616
- if (successPage) successPage(result.message);
617
- _context2.n = 10;
546
+ successPage === null || successPage === void 0 || successPage(result.message);
547
+ _context.n = 10;
618
548
  break;
619
549
  case 9:
620
- _context2.p = 9;
621
- _t2 = _context2.v;
622
- if (errorPage) errorPage(_t2.message);
550
+ _context.p = 9;
551
+ _t = _context.v;
552
+ errorPage === null || errorPage === void 0 || errorPage(_t.message);
623
553
  case 10:
624
- _context2.p = 10;
554
+ _context.p = 10;
625
555
  setIsSubmitting(false);
626
- return _context2.f(10);
556
+ return _context.f(10);
627
557
  case 11:
628
- return _context2.a(2);
558
+ return _context.a(2);
629
559
  }
630
- }, _callee2, null, [[5, 9, 10, 11]]);
560
+ }, _callee, null, [[5, 9, 10, 11]]);
631
561
  }));
632
562
  return function handleSubmit(_x) {
633
- return _ref3.apply(this, arguments);
563
+ return _ref2.apply(this, arguments);
634
564
  };
635
565
  }();
636
- if (!publicKey) return /*#__PURE__*/React.createElement("p", null, "Loading payment form...");
637
- var stripePromise = stripeJs.loadStripe(publicKey);
638
- return /*#__PURE__*/React.createElement(reactStripeJs.Elements, {
639
- stripe: stripePromise
640
- }, /*#__PURE__*/React.createElement("form", {
566
+ return /*#__PURE__*/React.createElement("form", {
641
567
  onSubmit: handleSubmit,
642
568
  style: {
643
569
  maxWidth: "".concat(formWidth, "px"),
@@ -646,69 +572,20 @@ function StripePaymentForm(_ref) {
646
572
  borderRadius: "".concat(formBorderRadius, "px"),
647
573
  backgroundColor: formBackgroundColor,
648
574
  display: "grid",
649
- gap: "14px",
650
- fontFamily: "Arial, sans-serif",
651
- boxShadow: "0 2px 6px rgba(0,0,0,0.08)"
652
- }
653
- }, /*#__PURE__*/React.createElement("div", {
654
- style: {
655
- display: "grid",
656
- gap: "6px"
657
- }
658
- }, /*#__PURE__*/React.createElement("label", {
659
- style: {
660
- fontWeight: "500",
661
- color: "#555"
662
- }
663
- }, "Card number"), /*#__PURE__*/React.createElement(reactStripeJs.CardNumberElement, {
664
- options: inputStyle
665
- })), /*#__PURE__*/React.createElement("div", {
666
- style: {
667
- display: "flex",
668
- gap: "10px"
669
- }
670
- }, /*#__PURE__*/React.createElement("div", {
671
- style: {
672
- flex: 1,
673
- display: "grid",
674
- gap: "4px"
675
- }
676
- }, /*#__PURE__*/React.createElement("label", {
677
- style: {
678
- fontWeight: "500",
679
- color: "#555"
680
- }
681
- }, "Expiration"), /*#__PURE__*/React.createElement(reactStripeJs.CardExpiryElement, {
682
- options: inputStyle
683
- })), /*#__PURE__*/React.createElement("div", {
684
- style: {
685
- flex: 1,
686
- display: "grid",
687
- gap: "4px"
688
- }
689
- }, /*#__PURE__*/React.createElement("label", {
690
- style: {
691
- fontWeight: "500",
692
- color: "#555"
575
+ gap: "14px"
693
576
  }
694
- }, "CVC"), /*#__PURE__*/React.createElement(reactStripeJs.CardCvcElement, {
695
- options: inputStyle
696
- }))), /*#__PURE__*/React.createElement("button", {
577
+ }, /*#__PURE__*/React.createElement(reactStripeJs.CardNumberElement, null), /*#__PURE__*/React.createElement(reactStripeJs.CardExpiryElement, null), /*#__PURE__*/React.createElement(reactStripeJs.CardCvcElement, null), /*#__PURE__*/React.createElement("button", {
697
578
  type: "submit",
698
579
  disabled: isSubmitting,
699
580
  style: {
700
- marginTop: "16px",
701
- width: "100%",
702
581
  padding: "".concat(inputPadding + 2, "px"),
703
582
  backgroundColor: color,
704
583
  color: "white",
705
584
  border: "none",
706
585
  borderRadius: "".concat(formBorderRadius, "px"),
707
- fontWeight: "600",
708
- cursor: isSubmitting ? "not-allowed" : "pointer",
709
- opacity: isSubmitting ? 0.7 : 1
586
+ cursor: isSubmitting ? "not-allowed" : "pointer"
710
587
  }
711
- }, isSubmitting ? "Processing..." : "Buy now")));
588
+ }, isSubmitting ? "Processing..." : "Buy now"));
712
589
  }
713
590
 
714
591
  exports.ShiftPaymentForm = ShiftPaymentForm;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/ShiftPaymentForm.jsx","../src/StripePaymentForm.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\n\nexport default function ShiftPaymentForm({ amount, currency, color, formwidth = 400, formborderRadius = 20, formbackgroundColor = \"#fff\", inputpadding = 12, baseUrl, userId, successPage, errorPage, description }) {\n const formRef = useRef();\n const initializedRef = useRef(false);\n const shift4Ref = useRef(null);\n const componentsRef = useRef(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [isReady, setIsReady] = useState(false);\n\n\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const response = await fetch(baseUrl + userId);\n if (!response.ok) errorPage(\"Failed to fetch public key\");\n\n const { publicKeys,isProd } = await response.json();\n if (!publicKeys) errorPage(\"Public key is empty\");\n\n const script = document.createElement(\"script\");\n script.src = isProd ? \"https://js.shift4.com/shift4.js\" : \"https://js.dev.shift4.com/shift4.js\";\n script.async = true;\n\n script.onload = () => {\n if (!window.Shift4) return;\n\n shift4Ref.current = window.Shift4(publicKeys);\n\n componentsRef.current = shift4Ref.current\n .createComponentGroup()\n .automount(\"#payment-form\");\n setIsReady(true);\n };\n\n script.onerror = () => {\n setError(\"Payment provider script failed to load.\");\n };\n\n document.body.appendChild(script);\n } catch (err) {\n console.error(err);\n setError(\"Payment initialization failed. Please try again.\");\n }\n };\n\n initPayment();\n }, []);\n\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (isSubmitting) return;\n if (!formRef.current) return;\n\n if (!shift4Ref.current || !componentsRef.current) {\n errorPage(\"Payment form is not ready yet. Please try again.\");\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const token = await shift4Ref.current.createToken(componentsRef.current);\n if (!token?.id) {\n errorPage(\"Card tokenization failed. Please check your details and try again.\");\n }\n\n const request = {\n amount: amount,\n currency: currency,\n card: token.id,\n description\n };\n\n const threeDSecureToken = await shift4Ref.current.verifyThreeDSecure(request);\n if (!threeDSecureToken?.id) {\n errorPage(\"3D Secure verification failed. Please try again.\");\n }\n\n const apiBase = baseUrl + \"charge/\" + userId;\n const response = await fetch(`${apiBase}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n tokenId: threeDSecureToken.id,\n amount: request.amount,\n currency: request.currency,\n description\n }),\n });\n const result = await response.json();\n if (!response.ok) {\n if (typeof errorPage === \"function\")\n errorPage(result);\n return;\n }\n\n if (typeof successPage === \"function\")\n successPage(result.message);\n \n \n\n\n\n } catch (err) {\n if (typeof errorPage === \"function\")\n errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n\n\n\n }\n };\n\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n width: \"100%\",\n boxSizing: \"border-box\"\n }}\n >\n <form\n ref={formRef}\n id=\"payment-form\"\n onSubmit={handleSubmit}\n method=\"post\"\n style={{\n display: \"grid\",\n gap: \"12px\",\n padding: \"20px\",\n backgroundColor: formbackgroundColor,\n borderRadius: formborderRadius,\n width: formwidth,\n boxSizing: \"border-box\"\n }}\n >\n\n\n <div style={{ display: \"grid\", gap: \"8px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <div\n data-shift4=\"number\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"10px\", marginTop: \"5px\" }}>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>Expiration</label>\n <div\n data-shift4=\"expiry\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>CVC</label>\n <div\n data-shift4=\"cvc\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n </div>\n\n <button\n type=\"submit\"\n disabled={!isReady || isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: inputpadding + 2,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: formborderRadius,\n fontWeight: \"600\",\n cursor: !isReady || isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: !isReady || isSubmitting ? 0.7 : 1\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </div>\n );\n}\n","import React, { useEffect, useState, useRef } from \"react\";\nimport { loadStripe } from \"@stripe/stripe-js\";\nimport {\n Elements,\n useStripe,\n useElements,\n CardNumberElement,\n CardExpiryElement,\n CardCvcElement,\n} from \"@stripe/react-stripe-js\";\n\nexport default function StripePaymentForm({\n amount,\n currency = \"usd\",\n color = \"#556cd6\",\n formWidth = 400,\n formBorderRadius = 20,\n formBackgroundColor = \"#fff\",\n inputPadding = 12,\n baseUrl,\n userId,\n successPage,\n errorPage,\n description = \"\",\n}) {\n const stripe = useStripe();\n const elements = useElements();\n\n const initializedRef = useRef(false);\n const [publicKey, setPublicKey] = useState(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n /** Input styling based on props */\n const inputStyle = {\n style: {\n base: {\n fontSize: \"15px\",\n color: \"#111\",\n \"::placeholder\": { color: \"#aaa\" },\n padding: `${inputPadding}px`,\n border: \"1px solid #ccc\",\n borderRadius: \"6px\",\n backgroundColor: \"#fff\",\n },\n invalid: { color: \"#ff4d4f\" },\n },\n };\n\n /** Fetch Stripe public key once */\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const res = await fetch(`${baseUrl}${userId}`);\n if (!res.ok) errorPage(\"Failed to fetch public key\");\n\n const data = await res.json();\n if (!data.publicKey) errorPage(\"Public key not found\");\n setPublicKey(data.publicKey);\n } catch (err) {\n if (errorPage) errorPage(err.message);\n }\n };\n\n initPayment();\n }, [baseUrl, userId, errorPage]);\n\n /** Handle form submit */\n const handleSubmit = async (e) => {\n e.preventDefault();\n errorPage(\"\");\n\n if (!stripe || !elements) return;\n\n const card = elements.getElement(CardNumberElement);\n if (!card) return errorPage(\"Card element not found\");\n\n const { error: pmError, paymentMethod } = await stripe.createPaymentMethod({\n type: \"card\",\n card,\n });\n\n if (pmError) {\n if (errorPage) errorPage(pmError.message);\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const res = await fetch(`${baseUrl}charge/${userId}`, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n tokenId: paymentMethod.id,\n amount,\n currency,\n description,\n }),\n });\n\n const result = await res.json();\n\n if (!res.ok) {\n if (errorPage) errorPage(result);\n return;\n }\n\n if (successPage) successPage(result.message);\n } catch (err) {\n if (errorPage) errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n if (!publicKey) return <p>Loading payment form...</p>;\n\n const stripePromise = loadStripe(publicKey);\n\n return (\n <Elements stripe={stripePromise}>\n <form\n onSubmit={handleSubmit}\n style={{\n maxWidth: `${formWidth}px`,\n margin: \"30px auto\",\n padding: \"20px\",\n borderRadius: `${formBorderRadius}px`,\n backgroundColor: formBackgroundColor,\n display: \"grid\",\n gap: \"14px\",\n fontFamily: \"Arial, sans-serif\",\n boxShadow: \"0 2px 6px rgba(0,0,0,0.08)\",\n }}\n >\n {/* Card Number */}\n <div style={{ display: \"grid\", gap: \"6px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <CardNumberElement options={inputStyle} />\n </div>\n\n {/* Expiration + CVC */}\n <div style={{ display: \"flex\", gap: \"10px\" }}>\n <div style={{ flex: 1, display: \"grid\", gap: \"4px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Expiration</label>\n <CardExpiryElement options={inputStyle} />\n </div>\n <div style={{ flex: 1, display: \"grid\", gap: \"4px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>CVC</label>\n <CardCvcElement options={inputStyle} />\n </div>\n </div>\n <button\n type=\"submit\"\n disabled={isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: `${inputPadding + 2}px`,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: `${formBorderRadius}px`,\n fontWeight: \"600\",\n cursor: isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: isSubmitting ? 0.7 : 1,\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </Elements>\n );\n}"],"names":["ShiftPaymentForm","_ref","amount","currency","color","_ref$formwidth","formwidth","_ref$formborderRadius","formborderRadius","_ref$formbackgroundCo","formbackgroundColor","_ref$inputpadding","inputpadding","baseUrl","userId","successPage","errorPage","description","formRef","useRef","initializedRef","shift4Ref","componentsRef","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useState3","_useState4","isReady","setIsReady","useEffect","current","initPayment","_ref2","_asyncToGenerator","_regenerator","m","_callee","response","_yield$response$json","publicKeys","isProd","script","_t","w","_context","p","n","fetch","v","ok","json","document","createElement","src","async","onload","window","Shift4","createComponentGroup","automount","onerror","setError","body","appendChild","console","error","a","apply","arguments","handleSubmit","_ref3","_callee2","e","token","request","threeDSecureToken","apiBase","result","_t2","_context2","preventDefault","createToken","id","card","verifyThreeDSecure","concat","method","headers","JSON","stringify","tokenId","message","f","_x","React","style","display","justifyContent","width","boxSizing","ref","onSubmit","gap","padding","backgroundColor","borderRadius","fontWeight","className","border","boxShadow","gridTemplateColumns","marginTop","marginBottom","type","disabled","cursor","opacity","StripePaymentForm","_ref$currency","_ref$color","_ref$formWidth","formWidth","_ref$formBorderRadius","formBorderRadius","_ref$formBackgroundCo","formBackgroundColor","_ref$inputPadding","inputPadding","_ref$description","stripe","useStripe","elements","useElements","publicKey","setPublicKey","inputStyle","base","fontSize","invalid","res","data","_yield$stripe$createP","pmError","paymentMethod","getElement","CardNumberElement","createPaymentMethod","stripePromise","loadStripe","Elements","maxWidth","margin","fontFamily","options","flex","CardExpiryElement","CardCvcElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEe,SAASA,gBAAgBA,CAAAC,IAAA,EAA6K;AAAA,EAAA,IAA1KC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAAC,cAAA,GAAAJ,IAAA,CAAEK,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAAN,IAAA,CAAEO,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAR,IAAA,CAAES,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAV,IAAA,CAAEW,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IAAEE,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IAAEC,MAAM,GAAAb,IAAA,CAANa,MAAM;IAAEC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IAAEC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAEC,WAAW,GAAAhB,IAAA,CAAXgB,WAAW;AAC/M,EAAA,IAAMC,OAAO,GAAGC,YAAM,EAAE;AACxB,EAAA,IAAMC,cAAc,GAAGD,YAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAME,SAAS,GAAGF,YAAM,CAAC,IAAI,CAAC;AAC9B,EAAA,IAAMG,aAAa,GAAGH,YAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAAI,SAAA,GAAwCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhDI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAI,UAAA,GAA8BL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAtCE,IAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAG1BG,EAAAA,eAAS,CAAC,YAAM;IACd,IAAIb,cAAc,CAACc,OAAO,EAAE;IAC5Bd,cAAc,CAACc,OAAO,GAAG,IAAI;AAE7B,IAAA,IAAMC,WAAW,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;QAAA,IAAAC,QAAA,EAAAC,oBAAA,EAAAC,UAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,EAAA;AAAA,QAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEOC,KAAK,CAACtC,OAAO,GAAGC,MAAM,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxC2B,QAAQ,GAAAO,QAAA,CAAAI,CAAA;cACd,IAAI,CAACX,QAAQ,CAACY,EAAE,EAAErC,SAAS,CAAC,4BAA4B,CAAC;AAACgC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEtBT,QAAQ,CAACa,IAAI,EAAE;AAAA,YAAA,KAAA,CAAA;cAAAZ,oBAAA,GAAAM,QAAA,CAAAI,CAAA;cAA3CT,UAAU,GAAAD,oBAAA,CAAVC,UAAU;cAACC,MAAM,GAAAF,oBAAA,CAANE,MAAM;AACzB,cAAA,IAAI,CAACD,UAAU,EAAE3B,SAAS,CAAC,qBAAqB,CAAC;AAE3C6B,cAAAA,MAAM,GAAGU,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;AAC/CX,cAAAA,MAAM,CAACY,GAAG,GAAGb,MAAM,GAAG,iCAAiC,GAAG,qCAAqC;cAC/FC,MAAM,CAACa,KAAK,GAAG,IAAI;cAEnBb,MAAM,CAACc,MAAM,GAAG,YAAM;AACpB,gBAAA,IAAI,CAACC,MAAM,CAACC,MAAM,EAAE;gBAEpBxC,SAAS,CAACa,OAAO,GAAG0B,MAAM,CAACC,MAAM,CAAClB,UAAU,CAAC;AAE7CrB,gBAAAA,aAAa,CAACY,OAAO,GAAGb,SAAS,CAACa,OAAO,CACtC4B,oBAAoB,EAAE,CACtBC,SAAS,CAAC,eAAe,CAAC;gBAC7B/B,UAAU,CAAC,IAAI,CAAC;cAClB,CAAC;cAEDa,MAAM,CAACmB,OAAO,GAAG,YAAM;gBACrBC,QAAQ,CAAC,yCAAyC,CAAC;cACrD,CAAC;AAEDV,cAAAA,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACtB,MAAM,CAAC;AAACG,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;AAElCgB,cAAAA,OAAO,CAACC,KAAK,CAAAvB,EAAI,CAAC;cAClBmB,QAAQ,CAAC,kDAAkD,CAAC;AAAC,YAAA,KAAA,CAAA;cAAA,OAAAjB,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;MAAA,CAEhE,CAAA,CAAA;AAAA,MAAA,OAAA,SAhCKL,WAAWA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAgChB;AAEDrC,IAAAA,WAAW,EAAE;EACf,CAAC,EAAE,EAAE,CAAC;AAGN,EAAA,IAAMsC,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAoC,QAAAA,CAAOC,CAAC,EAAA;AAAA,MAAA,IAAAC,KAAA,EAAAC,OAAA,EAAAC,iBAAA,EAAAC,OAAA,EAAAvC,QAAA,EAAAwC,MAAA,EAAAC,GAAA;AAAA,MAAA,OAAA5C,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAoC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAlC,CAAA,GAAAkC,SAAA,CAAAjC,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;AAAC,YAAA,IAAA,CAEfzD,YAAY,EAAA;AAAAwD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IACXpD,OAAO,CAACgB,OAAO,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IAAA,EAEhB,CAACjD,SAAS,CAACa,OAAO,IAAI,CAACZ,aAAa,CAACY,OAAO,CAAA,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAC9ClC,SAAS,CAAC,kDAAkD,CAAC;YAAC,OAAAmE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAIhE1C,eAAe,CAAC,IAAI,CAAC;AAACuD,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;AAAAkC,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAGA7B,SAAS,CAACa,OAAO,CAACmD,WAAW,CAAC/D,aAAa,CAACY,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAlE2C,KAAK,GAAAM,SAAA,CAAA/B,CAAA;YACX,IAAI,EAACyB,KAAK,KAAA,IAAA,IAALA,KAAK,eAALA,KAAK,CAAES,EAAE,CAAA,EAAE;cACdtE,SAAS,CAAC,oEAAoE,CAAC;AACjF,YAAA;AAEM8D,YAAAA,OAAO,GAAG;AACd5E,cAAAA,MAAM,EAAEA,MAAM;AACdC,cAAAA,QAAQ,EAAEA,QAAQ;cAClBoF,IAAI,EAAEV,KAAK,CAACS,EAAE;AACdrE,cAAAA,WAAW,EAAXA;aACD;AAAAkE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAE+B7B,SAAS,CAACa,OAAO,CAACsD,kBAAkB,CAACV,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAvEC,iBAAiB,GAAAI,SAAA,CAAA/B,CAAA;YACvB,IAAI,EAAC2B,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAEO,EAAE,CAAA,EAAE;cAC1BtE,SAAS,CAAC,kDAAkD,CAAC;AAC/D,YAAA;AAEMgE,YAAAA,OAAO,GAAGnE,OAAO,GAAG,SAAS,GAAGC,MAAM;AAAAqE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OACrBC,KAAK,CAAA,EAAA,CAAAsC,MAAA,CAAIT,OAAO,CAAA,EAAI;AACzCU,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE;eACjB;AACDzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAEf,iBAAiB,CAACO,EAAE;gBAC7BpF,MAAM,EAAE4E,OAAO,CAAC5E,MAAM;gBACtBC,QAAQ,EAAE2E,OAAO,CAAC3E,QAAQ;AAC1Bc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAXIwB,QAAQ,GAAA0C,SAAA,CAAA/B,CAAA;AAAA+B,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAYOT,QAAQ,CAACa,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAA9B2B,MAAM,GAAAE,SAAA,CAAA/B,CAAA;YAAA,IACPX,QAAQ,CAACY,EAAE,EAAA;AAAA8B,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YACd,IAAI,OAAOlC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACiE,MAAM,CAAC;YAAC,OAAAE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAItB,IAAI,OAAOvD,WAAW,KAAK,UAAU,EACxCA,WAAW,CAACkE,MAAM,CAACc,OAAO,CAAC;AAACZ,YAAAA,SAAA,CAAAjC,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAAiC,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAAAiC,GAAA,GAAAC,SAAA,CAAA/B,CAAA;YAOzB,IAAI,OAAOpC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACkE,GAAA,CAAIa,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAZ,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAEzBrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAuD,SAAA,CAAAa,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAb,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAK1B,CAAA,CAAA;IAAA,OAAA,SAnEKF,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAAvB,KAAA,CAAAH,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAmEjB;EAED,oBACE0B,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE2C,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,cAAc,EAAE,QAAQ;AACxBC,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,SAAS,EAAE;AACb;GAAE,eAEFL,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEgD,IAAAA,GAAG,EAAEtF,OAAQ;AACboE,IAAAA,EAAE,EAAC,cAAc;AACjBmB,IAAAA,QAAQ,EAAEhC,YAAa;AACvBiB,IAAAA,MAAM,EAAC,MAAM;AACbS,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE,MAAM;AACXC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,eAAe,EAAElG,mBAAmB;AACpCmG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9B8F,MAAAA,KAAK,EAAEhG,SAAS;AAChBiG,MAAAA,SAAS,EAAE;AACb;GAAE,eAIFL,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eAC1CR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,aAAkB,CAAC,eACvE8F,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEc,MAAAA,mBAAmB,EAAE,SAAS;AAAER,MAAAA,GAAG,EAAE,MAAM;AAAES,MAAAA,SAAS,EAAE;AAAM;AAAE,GAAA,eAC7FjB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,YAAiB,CAAC,eACvFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;GACD,CACE,CAAC,eACNf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,KAAU,CAAC,eAChFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,KAAK;AACjBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CACF,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE,CAACvF,OAAO,IAAIJ,YAAa;AACnCwE,IAAAA,KAAK,EAAE;AACLgB,MAAAA,SAAS,EAAE,MAAM;AACjBb,MAAAA,KAAK,EAAE,MAAM;MACbK,OAAO,EAAE/F,YAAY,GAAG,CAAC;AACzBgG,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BsG,MAAAA,UAAU,EAAE,KAAK;MACjBS,MAAM,EAAE,CAACxF,OAAO,IAAIJ,YAAY,GAAG,aAAa,GAAG,SAAS;AAC5D6F,MAAAA,OAAO,EAAE,CAACzF,OAAO,IAAIJ,YAAY,GAAG,GAAG,GAAG;AAC5C;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CACH,CAAC;AAEV;;ACzMe,SAAS8F,iBAAiBA,CAAAxH,IAAA,EAatC;AAAA,EAAA,IAZDC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAAwH,aAAA,GAAAzH,IAAA,CACNE,QAAQ;AAARA,IAAAA,QAAQ,GAAAuH,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAC,UAAA,GAAA1H,IAAA,CAChBG,KAAK;AAALA,IAAAA,KAAK,GAAAuH,UAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,UAAA;IAAAC,cAAA,GAAA3H,IAAA,CACjB4H,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAA7H,IAAA,CACf8H,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAA/H,IAAA,CACrBgI,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAjI,IAAA,CAC5BkI,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IACjBrH,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IACPC,MAAM,GAAAb,IAAA,CAANa,MAAM;IACNC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAAoH,gBAAA,GAAAnI,IAAA,CACTgB,WAAW;AAAXA,IAAAA,WAAW,GAAAmH,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhB,EAAA,IAAMC,MAAM,GAAGC,uBAAS,EAAE;AAC1B,EAAA,IAAMC,QAAQ,GAAGC,yBAAW,EAAE;AAE9B,EAAA,IAAMpH,cAAc,GAAGD,YAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAAI,SAAA,GAAkCC,cAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCkH,IAAAA,SAAS,GAAAhH,UAAA,CAAA,CAAA,CAAA;AAAEiH,IAAAA,YAAY,GAAAjH,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAAI,UAAA,GAAwCL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAhDF,IAAAA,YAAY,GAAAG,UAAA,CAAA,CAAA,CAAA;AAAEF,IAAAA,eAAe,GAAAE,UAAA,CAAA,CAAA,CAAA;;AAEpC;AACA,EAAA,IAAM6G,UAAU,GAAG;AACjBxC,IAAAA,KAAK,EAAE;AACLyC,MAAAA,IAAI,EAAE;AACJC,QAAAA,QAAQ,EAAE,MAAM;AAChBzI,QAAAA,KAAK,EAAE,MAAM;AACb,QAAA,eAAe,EAAE;AAAEA,UAAAA,KAAK,EAAE;SAAQ;AAClCuG,QAAAA,OAAO,EAAA,EAAA,CAAAlB,MAAA,CAAK0C,YAAY,EAAA,IAAA,CAAI;AAC5BnB,QAAAA,MAAM,EAAE,gBAAgB;AACxBH,QAAAA,YAAY,EAAE,KAAK;AACnBD,QAAAA,eAAe,EAAE;OAClB;AACDkC,MAAAA,OAAO,EAAE;AAAE1I,QAAAA,KAAK,EAAE;AAAU;AAC9B;GACD;;AAED;AACA6B,EAAAA,eAAS,CAAC,YAAM;IACd,IAAIb,cAAc,CAACc,OAAO,EAAE;IAC5Bd,cAAc,CAACc,OAAO,GAAG,IAAI;AAE7B,IAAA,IAAMC,WAAW,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;AAAA,QAAA,IAAAuG,GAAA,EAAAC,IAAA,EAAAlG,EAAA;AAAA,QAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;cAAA,OAEEC,KAAK,CAAA,EAAA,CAAAsC,MAAA,CAAI5E,OAAO,EAAA4E,MAAA,CAAG3E,MAAM,CAAE,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxCiI,GAAG,GAAA/F,QAAA,CAAAI,CAAA;cACT,IAAI,CAAC2F,GAAG,CAAC1F,EAAE,EAAErC,SAAS,CAAC,4BAA4B,CAAC;AAACgC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAElC6F,GAAG,CAACzF,IAAI,EAAE;AAAA,YAAA,KAAA,CAAA;cAAvB0F,IAAI,GAAAhG,QAAA,CAAAI,CAAA;cACV,IAAI,CAAC4F,IAAI,CAACP,SAAS,EAAEzH,SAAS,CAAC,sBAAsB,CAAC;AACtD0H,cAAAA,YAAY,CAACM,IAAI,CAACP,SAAS,CAAC;AAACzF,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;AAE7B,cAAA,IAAIpC,SAAS,EAAEA,SAAS,CAAC8B,EAAA,CAAIiD,OAAO,CAAC;AAAC,YAAA,KAAA,CAAA;cAAA,OAAA/C,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;MAAA,CAEzC,CAAA,CAAA;AAAA,MAAA,OAAA,SAXKL,WAAWA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAWhB;AAEDrC,IAAAA,WAAW,EAAE;EACf,CAAC,EAAE,CAACtB,OAAO,EAAEC,MAAM,EAAEE,SAAS,CAAC,CAAC;;AAEhC;AACA,EAAA,IAAMyD,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAoC,QAAAA,CAAOC,CAAC,EAAA;AAAA,MAAA,IAAAW,IAAA,EAAA0D,qBAAA,EAAAC,OAAA,EAAAC,aAAA,EAAAJ,GAAA,EAAA9D,MAAA,EAAAC,GAAA;AAAA,MAAA,OAAA5C,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAoC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAlC,CAAA,GAAAkC,SAAA,CAAAjC,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;YAClBpE,SAAS,CAAC,EAAE,CAAC;AAAC,YAAA,IAAA,EAEV,CAACqH,MAAM,IAAI,CAACE,QAAQ,CAAA,EAAA;AAAApD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAElBiB,YAAAA,IAAI,GAAGgD,QAAQ,CAACa,UAAU,CAACC,+BAAiB,CAAC;AAAA,YAAA,IAC9C9D,IAAI,EAAA;AAAAJ,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AAAA,YAAA,OAAAiC,SAAA,CAAAb,CAAA,IAAStD,SAAS,CAAC,wBAAwB,CAAC,CAAA;AAAA,UAAA,KAAA,CAAA;AAAAmE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAELmF,MAAM,CAACiB,mBAAmB,CAAC;AACzEjC,cAAAA,IAAI,EAAE,MAAM;AACZ9B,cAAAA,IAAI,EAAJA;AACF,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAAA0D,qBAAA,GAAA9D,SAAA,CAAA/B,CAAA;YAHa8F,OAAO,GAAAD,qBAAA,CAAd5E,KAAK;YAAW8E,aAAa,GAAAF,qBAAA,CAAbE,aAAa;AAAA,YAAA,IAAA,CAKjCD,OAAO,EAAA;AAAA/D,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AACT,YAAA,IAAIlC,SAAS,EAAEA,SAAS,CAACkI,OAAO,CAACnD,OAAO,CAAC;YAAC,OAAAZ,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAI5C1C,eAAe,CAAC,IAAI,CAAC;AAACuD,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;AAAAkC,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAGFC,KAAK,IAAAsC,MAAA,CAAI5E,OAAO,EAAA,SAAA,CAAA,CAAA4E,MAAA,CAAU3E,MAAM,CAAA,EAAI;AACpD4E,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AAAE,gBAAA,cAAc,EAAE;eAAoB;AAC/CzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAEqD,aAAa,CAAC7D,EAAE;AACzBpF,gBAAAA,MAAM,EAANA,MAAM;AACNC,gBAAAA,QAAQ,EAARA,QAAQ;AACRc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YATI8H,GAAG,GAAA5D,SAAA,CAAA/B,CAAA;AAAA+B,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAWY6F,GAAG,CAACzF,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAAzB2B,MAAM,GAAAE,SAAA,CAAA/B,CAAA;YAAA,IAEP2F,GAAG,CAAC1F,EAAE,EAAA;AAAA8B,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AACT,YAAA,IAAIlC,SAAS,EAAEA,SAAS,CAACiE,MAAM,CAAC;YAAC,OAAAE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAInC,YAAA,IAAIvD,WAAW,EAAEA,WAAW,CAACkE,MAAM,CAACc,OAAO,CAAC;AAACZ,YAAAA,SAAA,CAAAjC,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,CAAA;AAAAiC,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;YAAAiC,GAAA,GAAAC,SAAA,CAAA/B,CAAA;AAE7C,YAAA,IAAIpC,SAAS,EAAEA,SAAS,CAACkE,GAAA,CAAIa,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAZ,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAEtCrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAuD,SAAA,CAAAa,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAb,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAE1B,CAAA,CAAA;IAAA,OAAA,SA9CKF,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAAvB,KAAA,CAAAH,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EA8CjB;EAED,IAAI,CAACiE,SAAS,EAAE,oBAAOvC,KAAA,CAAA1C,aAAA,CAAA,GAAA,EAAA,IAAA,EAAG,yBAA0B,CAAC;AAErD,EAAA,IAAM+F,aAAa,GAAGC,mBAAU,CAACf,SAAS,CAAC;AAE3C,EAAA,oBACEvC,KAAA,CAAA1C,aAAA,CAACiG,sBAAQ,EAAA;AAACpB,IAAAA,MAAM,EAAEkB;GAAc,eAC9BrD,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEiD,IAAAA,QAAQ,EAAEhC,YAAa;AACvB0B,IAAAA,KAAK,EAAE;AACLuD,MAAAA,QAAQ,EAAA,EAAA,CAAAjE,MAAA,CAAKoC,SAAS,EAAA,IAAA,CAAI;AAC1B8B,MAAAA,MAAM,EAAE,WAAW;AACnBhD,MAAAA,OAAO,EAAE,MAAM;AACfE,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKsC,gBAAgB,EAAA,IAAA,CAAI;AACrCnB,MAAAA,eAAe,EAAEqB,mBAAmB;AACpC7B,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE,MAAM;AACXkD,MAAAA,UAAU,EAAE,mBAAmB;AAC/B3C,MAAAA,SAAS,EAAE;AACb;GAAE,eAGFf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eAC1CR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,aAAkB,CAAC,eACvE8F,KAAA,CAAA1C,aAAA,CAAC6F,+BAAiB,EAAA;AAACQ,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACtC,CAAC,eAGNzC,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAO;GAAE,eAC3CR,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAE2D,MAAAA,IAAI,EAAE,CAAC;AAAE1D,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eACnDR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,YAAiB,CAAC,eACtE8F,KAAA,CAAA1C,aAAA,CAACuG,+BAAiB,EAAA;AAACF,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACtC,CAAC,eACNzC,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAE2D,MAAAA,IAAI,EAAE,CAAC;AAAE1D,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eACnDR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,KAAU,CAAC,eAC/D8F,KAAA,CAAA1C,aAAA,CAACwG,4BAAc,EAAA;AAACH,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACnC,CACF,CAAC,eACNzC,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE3F,YAAa;AACvBwE,IAAAA,KAAK,EAAE;AACLgB,MAAAA,SAAS,EAAE,MAAM;AACjBb,MAAAA,KAAK,EAAE,MAAM;AACbK,MAAAA,OAAO,KAAAlB,MAAA,CAAK0C,YAAY,GAAG,CAAC,EAAA,IAAA,CAAI;AAChCvB,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKsC,gBAAgB,EAAA,IAAA,CAAI;AACrCjB,MAAAA,UAAU,EAAE,KAAK;AACjBS,MAAAA,MAAM,EAAE5F,YAAY,GAAG,aAAa,GAAG,SAAS;AAChD6F,MAAAA,OAAO,EAAE7F,YAAY,GAAG,GAAG,GAAG;AAChC;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CACE,CAAC;AAEf;;;;;"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/ShiftPaymentForm.jsx","../src/StripePaymentForm.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\n\nexport default function ShiftPaymentForm({ amount, currency, color, formwidth = 400, formborderRadius = 20, formbackgroundColor = \"#fff\", inputpadding = 12, baseUrl, userId, successPage, errorPage, description }) {\n const formRef = useRef();\n const initializedRef = useRef(false);\n const shift4Ref = useRef(null);\n const componentsRef = useRef(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [isReady, setIsReady] = useState(false);\n\n\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const response = await fetch(baseUrl + userId);\n if (!response.ok) errorPage(\"Failed to fetch public key\");\n\n const { publicKeys,isProd } = await response.json();\n if (!publicKeys) errorPage(\"Public key is empty\");\n\n const script = document.createElement(\"script\");\n script.src = isProd ? \"https://js.shift4.com/shift4.js\" : \"https://js.dev.shift4.com/shift4.js\";\n script.async = true;\n\n script.onload = () => {\n if (!window.Shift4) return;\n\n shift4Ref.current = window.Shift4(publicKeys);\n\n componentsRef.current = shift4Ref.current\n .createComponentGroup()\n .automount(\"#payment-form\");\n setIsReady(true);\n };\n\n script.onerror = () => {\n setError(\"Payment provider script failed to load.\");\n };\n\n document.body.appendChild(script);\n } catch (err) {\n console.error(err);\n setError(\"Payment initialization failed. Please try again.\");\n }\n };\n\n initPayment();\n }, []);\n\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (isSubmitting) return;\n if (!formRef.current) return;\n\n if (!shift4Ref.current || !componentsRef.current) {\n errorPage(\"Payment form is not ready yet. Please try again.\");\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const token = await shift4Ref.current.createToken(componentsRef.current);\n if (!token?.id) {\n errorPage(\"Card tokenization failed. Please check your details and try again.\");\n }\n\n const request = {\n amount: amount,\n currency: currency,\n card: token.id,\n description\n };\n\n const threeDSecureToken = await shift4Ref.current.verifyThreeDSecure(request);\n if (!threeDSecureToken?.id) {\n errorPage(\"3D Secure verification failed. Please try again.\");\n }\n\n const apiBase = baseUrl + \"charge/\" + userId;\n const response = await fetch(`${apiBase}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n tokenId: threeDSecureToken.id,\n amount: request.amount,\n currency: request.currency,\n description\n }),\n });\n const result = await response.json();\n if (!response.ok) {\n if (typeof errorPage === \"function\")\n errorPage(result);\n return;\n }\n\n if (typeof successPage === \"function\")\n successPage(result.message);\n \n \n\n\n\n } catch (err) {\n if (typeof errorPage === \"function\")\n errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n\n\n\n }\n };\n\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n width: \"100%\",\n boxSizing: \"border-box\"\n }}\n >\n <form\n ref={formRef}\n id=\"payment-form\"\n onSubmit={handleSubmit}\n method=\"post\"\n style={{\n display: \"grid\",\n gap: \"12px\",\n padding: \"20px\",\n backgroundColor: formbackgroundColor,\n borderRadius: formborderRadius,\n width: formwidth,\n boxSizing: \"border-box\"\n }}\n >\n\n\n <div style={{ display: \"grid\", gap: \"8px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <div\n data-shift4=\"number\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"10px\", marginTop: \"5px\" }}>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>Expiration</label>\n <div\n data-shift4=\"expiry\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>CVC</label>\n <div\n data-shift4=\"cvc\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n </div>\n\n <button\n type=\"submit\"\n disabled={!isReady || isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: inputpadding + 2,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: formborderRadius,\n fontWeight: \"600\",\n cursor: !isReady || isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: !isReady || isSubmitting ? 0.7 : 1\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </div>\n );\n}\n","import React, { useState } from \"react\";\nimport {\n useStripe,\n useElements,\n CardNumberElement,\n CardExpiryElement,\n CardCvcElement,\n} from \"@stripe/react-stripe-js\";\n\nexport default function StripePaymentForm({\n amount,\n currency,\n color = \"#556cd6\",\n formWidth = 400,\n formBorderRadius = 20,\n formBackgroundColor = \"#fff\",\n inputPadding = 12,\n baseUrl,\n userId,\n successPage,\n errorPage,\n description = \"\",\n}) {\n const stripe = useStripe();\n const elements = useElements();\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (!stripe || !elements) return;\n\n const card = elements.getElement(CardNumberElement);\n if (!card) return errorPage?.(\"Card element not found\");\n\n const { error, paymentMethod } = await stripe.createPaymentMethod({\n type: \"card\",\n card,\n });\n\n if (error) {\n errorPage?.(error.message);\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const res = await fetch(`${baseUrl}charge/${userId}`, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n tokenId: paymentMethod.id,\n amount,\n currency,\n description,\n }),\n });\n\n const result = await res.json();\n\n if (!res.ok) {\n errorPage?.(result);\n return;\n }\n\n successPage?.(result.message);\n } catch (err) {\n errorPage?.(err.message);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n return (\n <form\n onSubmit={handleSubmit}\n style={{\n maxWidth: `${formWidth}px`,\n margin: \"30px auto\",\n padding: \"20px\",\n borderRadius: `${formBorderRadius}px`,\n backgroundColor: formBackgroundColor,\n display: \"grid\",\n gap: \"14px\",\n }}\n >\n <CardNumberElement />\n <CardExpiryElement />\n <CardCvcElement />\n\n <button\n type=\"submit\"\n disabled={isSubmitting}\n style={{\n padding: `${inputPadding + 2}px`,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: `${formBorderRadius}px`,\n cursor: isSubmitting ? \"not-allowed\" : \"pointer\",\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n );\n}"],"names":["ShiftPaymentForm","_ref","amount","currency","color","_ref$formwidth","formwidth","_ref$formborderRadius","formborderRadius","_ref$formbackgroundCo","formbackgroundColor","_ref$inputpadding","inputpadding","baseUrl","userId","successPage","errorPage","description","formRef","useRef","initializedRef","shift4Ref","componentsRef","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useState3","_useState4","isReady","setIsReady","useEffect","current","initPayment","_ref2","_asyncToGenerator","_regenerator","m","_callee","response","_yield$response$json","publicKeys","isProd","script","_t","w","_context","p","n","fetch","v","ok","json","document","createElement","src","async","onload","window","Shift4","createComponentGroup","automount","onerror","setError","body","appendChild","console","error","a","apply","arguments","handleSubmit","_ref3","_callee2","e","token","request","threeDSecureToken","apiBase","result","_t2","_context2","preventDefault","createToken","id","card","verifyThreeDSecure","concat","method","headers","JSON","stringify","tokenId","message","f","_x","React","style","display","justifyContent","width","boxSizing","ref","onSubmit","gap","padding","backgroundColor","borderRadius","fontWeight","className","border","boxShadow","gridTemplateColumns","marginTop","marginBottom","type","disabled","cursor","opacity","StripePaymentForm","_ref$color","_ref$formWidth","formWidth","_ref$formBorderRadius","formBorderRadius","_ref$formBackgroundCo","formBackgroundColor","_ref$inputPadding","inputPadding","_ref$description","stripe","useStripe","elements","useElements","_yield$stripe$createP","paymentMethod","res","getElement","CardNumberElement","createPaymentMethod","maxWidth","margin","CardExpiryElement","CardCvcElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEe,SAASA,gBAAgBA,CAAAC,IAAA,EAA6K;AAAA,EAAA,IAA1KC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAAC,cAAA,GAAAJ,IAAA,CAAEK,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAAN,IAAA,CAAEO,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAR,IAAA,CAAES,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAV,IAAA,CAAEW,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IAAEE,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IAAEC,MAAM,GAAAb,IAAA,CAANa,MAAM;IAAEC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IAAEC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAEC,WAAW,GAAAhB,IAAA,CAAXgB,WAAW;AAC/M,EAAA,IAAMC,OAAO,GAAGC,YAAM,EAAE;AACxB,EAAA,IAAMC,cAAc,GAAGD,YAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAME,SAAS,GAAGF,YAAM,CAAC,IAAI,CAAC;AAC9B,EAAA,IAAMG,aAAa,GAAGH,YAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAAI,SAAA,GAAwCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhDI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAI,UAAA,GAA8BL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAtCE,IAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAG1BG,EAAAA,eAAS,CAAC,YAAM;IACd,IAAIb,cAAc,CAACc,OAAO,EAAE;IAC5Bd,cAAc,CAACc,OAAO,GAAG,IAAI;AAE7B,IAAA,IAAMC,WAAW,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;QAAA,IAAAC,QAAA,EAAAC,oBAAA,EAAAC,UAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,EAAA;AAAA,QAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEOC,KAAK,CAACtC,OAAO,GAAGC,MAAM,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxC2B,QAAQ,GAAAO,QAAA,CAAAI,CAAA;cACd,IAAI,CAACX,QAAQ,CAACY,EAAE,EAAErC,SAAS,CAAC,4BAA4B,CAAC;AAACgC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEtBT,QAAQ,CAACa,IAAI,EAAE;AAAA,YAAA,KAAA,CAAA;cAAAZ,oBAAA,GAAAM,QAAA,CAAAI,CAAA;cAA3CT,UAAU,GAAAD,oBAAA,CAAVC,UAAU;cAACC,MAAM,GAAAF,oBAAA,CAANE,MAAM;AACzB,cAAA,IAAI,CAACD,UAAU,EAAE3B,SAAS,CAAC,qBAAqB,CAAC;AAE3C6B,cAAAA,MAAM,GAAGU,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;AAC/CX,cAAAA,MAAM,CAACY,GAAG,GAAGb,MAAM,GAAG,iCAAiC,GAAG,qCAAqC;cAC/FC,MAAM,CAACa,KAAK,GAAG,IAAI;cAEnBb,MAAM,CAACc,MAAM,GAAG,YAAM;AACpB,gBAAA,IAAI,CAACC,MAAM,CAACC,MAAM,EAAE;gBAEpBxC,SAAS,CAACa,OAAO,GAAG0B,MAAM,CAACC,MAAM,CAAClB,UAAU,CAAC;AAE7CrB,gBAAAA,aAAa,CAACY,OAAO,GAAGb,SAAS,CAACa,OAAO,CACtC4B,oBAAoB,EAAE,CACtBC,SAAS,CAAC,eAAe,CAAC;gBAC7B/B,UAAU,CAAC,IAAI,CAAC;cAClB,CAAC;cAEDa,MAAM,CAACmB,OAAO,GAAG,YAAM;gBACrBC,QAAQ,CAAC,yCAAyC,CAAC;cACrD,CAAC;AAEDV,cAAAA,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACtB,MAAM,CAAC;AAACG,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;AAElCgB,cAAAA,OAAO,CAACC,KAAK,CAAAvB,EAAI,CAAC;cAClBmB,QAAQ,CAAC,kDAAkD,CAAC;AAAC,YAAA,KAAA,CAAA;cAAA,OAAAjB,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;MAAA,CAEhE,CAAA,CAAA;AAAA,MAAA,OAAA,SAhCKL,WAAWA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAgChB;AAEDrC,IAAAA,WAAW,EAAE;EACf,CAAC,EAAE,EAAE,CAAC;AAGN,EAAA,IAAMsC,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAoC,QAAAA,CAAOC,CAAC,EAAA;AAAA,MAAA,IAAAC,KAAA,EAAAC,OAAA,EAAAC,iBAAA,EAAAC,OAAA,EAAAvC,QAAA,EAAAwC,MAAA,EAAAC,GAAA;AAAA,MAAA,OAAA5C,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAoC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAlC,CAAA,GAAAkC,SAAA,CAAAjC,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;AAAC,YAAA,IAAA,CAEfzD,YAAY,EAAA;AAAAwD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IACXpD,OAAO,CAACgB,OAAO,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IAAA,EAEhB,CAACjD,SAAS,CAACa,OAAO,IAAI,CAACZ,aAAa,CAACY,OAAO,CAAA,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAC9ClC,SAAS,CAAC,kDAAkD,CAAC;YAAC,OAAAmE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAIhE1C,eAAe,CAAC,IAAI,CAAC;AAACuD,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;AAAAkC,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAGA7B,SAAS,CAACa,OAAO,CAACmD,WAAW,CAAC/D,aAAa,CAACY,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAlE2C,KAAK,GAAAM,SAAA,CAAA/B,CAAA;YACX,IAAI,EAACyB,KAAK,KAAA,IAAA,IAALA,KAAK,eAALA,KAAK,CAAES,EAAE,CAAA,EAAE;cACdtE,SAAS,CAAC,oEAAoE,CAAC;AACjF,YAAA;AAEM8D,YAAAA,OAAO,GAAG;AACd5E,cAAAA,MAAM,EAAEA,MAAM;AACdC,cAAAA,QAAQ,EAAEA,QAAQ;cAClBoF,IAAI,EAAEV,KAAK,CAACS,EAAE;AACdrE,cAAAA,WAAW,EAAXA;aACD;AAAAkE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAE+B7B,SAAS,CAACa,OAAO,CAACsD,kBAAkB,CAACV,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAvEC,iBAAiB,GAAAI,SAAA,CAAA/B,CAAA;YACvB,IAAI,EAAC2B,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAEO,EAAE,CAAA,EAAE;cAC1BtE,SAAS,CAAC,kDAAkD,CAAC;AAC/D,YAAA;AAEMgE,YAAAA,OAAO,GAAGnE,OAAO,GAAG,SAAS,GAAGC,MAAM;AAAAqE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OACrBC,KAAK,CAAA,EAAA,CAAAsC,MAAA,CAAIT,OAAO,CAAA,EAAI;AACzCU,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE;eACjB;AACDzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAEf,iBAAiB,CAACO,EAAE;gBAC7BpF,MAAM,EAAE4E,OAAO,CAAC5E,MAAM;gBACtBC,QAAQ,EAAE2E,OAAO,CAAC3E,QAAQ;AAC1Bc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAXIwB,QAAQ,GAAA0C,SAAA,CAAA/B,CAAA;AAAA+B,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAYOT,QAAQ,CAACa,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAA9B2B,MAAM,GAAAE,SAAA,CAAA/B,CAAA;YAAA,IACPX,QAAQ,CAACY,EAAE,EAAA;AAAA8B,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YACd,IAAI,OAAOlC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACiE,MAAM,CAAC;YAAC,OAAAE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAItB,IAAI,OAAOvD,WAAW,KAAK,UAAU,EACxCA,WAAW,CAACkE,MAAM,CAACc,OAAO,CAAC;AAACZ,YAAAA,SAAA,CAAAjC,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAAiC,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAAAiC,GAAA,GAAAC,SAAA,CAAA/B,CAAA;YAOzB,IAAI,OAAOpC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACkE,GAAA,CAAIa,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAZ,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAEzBrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAuD,SAAA,CAAAa,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAb,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAK1B,CAAA,CAAA;IAAA,OAAA,SAnEKF,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAAvB,KAAA,CAAAH,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAmEjB;EAED,oBACE0B,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE2C,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,cAAc,EAAE,QAAQ;AACxBC,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,SAAS,EAAE;AACb;GAAE,eAEFL,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEgD,IAAAA,GAAG,EAAEtF,OAAQ;AACboE,IAAAA,EAAE,EAAC,cAAc;AACjBmB,IAAAA,QAAQ,EAAEhC,YAAa;AACvBiB,IAAAA,MAAM,EAAC,MAAM;AACbS,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE,MAAM;AACXC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,eAAe,EAAElG,mBAAmB;AACpCmG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9B8F,MAAAA,KAAK,EAAEhG,SAAS;AAChBiG,MAAAA,SAAS,EAAE;AACb;GAAE,eAIFL,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eAC1CR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,aAAkB,CAAC,eACvE8F,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEc,MAAAA,mBAAmB,EAAE,SAAS;AAAER,MAAAA,GAAG,EAAE,MAAM;AAAES,MAAAA,SAAS,EAAE;AAAM;AAAE,GAAA,eAC7FjB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,YAAiB,CAAC,eACvFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;GACD,CACE,CAAC,eACNf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,KAAU,CAAC,eAChFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,KAAK;AACjBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CACF,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE,CAACvF,OAAO,IAAIJ,YAAa;AACnCwE,IAAAA,KAAK,EAAE;AACLgB,MAAAA,SAAS,EAAE,MAAM;AACjBb,MAAAA,KAAK,EAAE,MAAM;MACbK,OAAO,EAAE/F,YAAY,GAAG,CAAC;AACzBgG,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BsG,MAAAA,UAAU,EAAE,KAAK;MACjBS,MAAM,EAAE,CAACxF,OAAO,IAAIJ,YAAY,GAAG,aAAa,GAAG,SAAS;AAC5D6F,MAAAA,OAAO,EAAE,CAACzF,OAAO,IAAIJ,YAAY,GAAG,GAAG,GAAG;AAC5C;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CACH,CAAC;AAEV;;AC3Me,SAAS8F,iBAAiBA,CAAAxH,IAAA,EAatC;AAAA,EAAA,IAZDC,MAAM,GAAAD,IAAA,CAANC,MAAM;IACNC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAAuH,UAAA,GAAAzH,IAAA,CACRG,KAAK;AAALA,IAAAA,KAAK,GAAAsH,UAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,UAAA;IAAAC,cAAA,GAAA1H,IAAA,CACjB2H,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAA5H,IAAA,CACf6H,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAA9H,IAAA,CACrB+H,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAhI,IAAA,CAC5BiI,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IACjBpH,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IACPC,MAAM,GAAAb,IAAA,CAANa,MAAM;IACNC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAAmH,gBAAA,GAAAlI,IAAA,CACTgB,WAAW;AAAXA,IAAAA,WAAW,GAAAkH,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhB,EAAA,IAAMC,MAAM,GAAGC,uBAAS,EAAE;AAC1B,EAAA,IAAMC,QAAQ,GAAGC,yBAAW,EAAE;AAC9B,EAAA,IAAAhH,SAAA,GAAwCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhDI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AAEpC,EAAA,IAAMgD,YAAY,gBAAA,YAAA;IAAA,IAAArC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAC,OAAAA,CAAOoC,CAAC,EAAA;AAAA,MAAA,IAAAW,IAAA,EAAAiD,qBAAA,EAAAnE,KAAA,EAAAoE,aAAA,EAAAC,GAAA,EAAAzD,MAAA,EAAAnC,EAAA;AAAA,MAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;AAAC,YAAA,IAAA,EAEf,CAACgD,MAAM,IAAI,CAACE,QAAQ,CAAA,EAAA;AAAAtF,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAF,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAElBiB,YAAAA,IAAI,GAAG+C,QAAQ,CAACK,UAAU,CAACC,+BAAiB,CAAC;AAAA,YAAA,IAC9CrD,IAAI,EAAA;AAAAvC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAF,QAAA,CAAAsB,CAAA,CAAA,CAAA,EAAStD,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAG,wBAAwB,CAAC,CAAA;AAAA,UAAA,KAAA,CAAA;AAAAgC,YAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;YAAA,OAEhBkF,MAAM,CAACS,mBAAmB,CAAC;AAChExB,cAAAA,IAAI,EAAE,MAAM;AACZ9B,cAAAA,IAAI,EAAJA;AACF,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAAAiD,qBAAA,GAAAxF,QAAA,CAAAI,CAAA;YAHMiB,KAAK,GAAAmE,qBAAA,CAALnE,KAAK;YAAEoE,aAAa,GAAAD,qBAAA,CAAbC,aAAa;AAAA,YAAA,IAAA,CAKxBpE,KAAK,EAAA;AAAArB,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YACPlC,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,IAATA,SAAS,CAAGqD,KAAK,CAAC0B,OAAO,CAAC;YAAC,OAAA/C,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAI7B1C,eAAe,CAAC,IAAI,CAAC;AAACoB,YAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,YAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;YAAA,OAGFC,KAAK,IAAAsC,MAAA,CAAI5E,OAAO,EAAA,SAAA,CAAA,CAAA4E,MAAA,CAAU3E,MAAM,CAAA,EAAI;AACpD4E,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AAAE,gBAAA,cAAc,EAAE;eAAoB;AAC/CzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAE2C,aAAa,CAACnD,EAAE;AACzBpF,gBAAAA,MAAM,EAANA,MAAM;AACNC,gBAAAA,QAAQ,EAARA,QAAQ;AACRc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YATIyH,GAAG,GAAA1F,QAAA,CAAAI,CAAA;AAAAJ,YAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,YAAA,OAWYwF,GAAG,CAACpF,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAAzB2B,MAAM,GAAAjC,QAAA,CAAAI,CAAA;YAAA,IAEPsF,GAAG,CAACrF,EAAE,EAAA;AAAAL,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AACTlC,YAAAA,SAAS,aAATA,SAAS,KAAA,MAAA,IAATA,SAAS,CAAGiE,MAAM,CAAC;YAAC,OAAAjC,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAItBvD,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,IAAXA,WAAW,CAAGkE,MAAM,CAACc,OAAO,CAAC;AAAC/C,YAAAA,QAAA,CAAAE,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,CAAA;AAAAF,YAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;YAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;YAE9BpC,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,IAATA,SAAS,CAAG8B,EAAA,CAAIiD,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAA/C,YAAAA,QAAA,CAAAC,CAAA,GAAA,EAAA;YAEzBrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAoB,QAAA,CAAAgD,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAhD,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAE1B,CAAA,CAAA;IAAA,OAAA,SA7CKiC,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAA7D,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EA6CjB;EAED,oBACE0B,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEiD,IAAAA,QAAQ,EAAEhC,YAAa;AACvB0B,IAAAA,KAAK,EAAE;AACL2C,MAAAA,QAAQ,EAAA,EAAA,CAAArD,MAAA,CAAKmC,SAAS,EAAA,IAAA,CAAI;AAC1BmB,MAAAA,MAAM,EAAE,WAAW;AACnBpC,MAAAA,OAAO,EAAE,MAAM;AACfE,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKqC,gBAAgB,EAAA,IAAA,CAAI;AACrClB,MAAAA,eAAe,EAAEoB,mBAAmB;AACpC5B,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE;AACP;GAAE,eAEFR,KAAA,CAAA1C,aAAA,CAACoF,+BAAiB,EAAA,IAAE,CAAC,eACrB1C,KAAA,CAAA1C,aAAA,CAACwF,+BAAiB,MAAE,CAAC,eACrB9C,KAAA,CAAA1C,aAAA,CAACyF,4BAAc,EAAA,IAAE,CAAC,eAElB/C,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE3F,YAAa;AACvBwE,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,KAAAlB,MAAA,CAAKyC,YAAY,GAAG,CAAC,EAAA,IAAA,CAAI;AAChCtB,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKqC,gBAAgB,EAAA,IAAA,CAAI;AACrCP,MAAAA,MAAM,EAAE5F,YAAY,GAAG,aAAa,GAAG;AACzC;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CAAC;AAEX;;;;;"}
package/dist/index.esm.js CHANGED
@@ -1,6 +1,5 @@
1
1
  import React, { useRef, useState, useEffect } from 'react';
2
- import { loadStripe } from '@stripe/stripe-js';
3
- import { useStripe, useElements, Elements, CardNumberElement, CardExpiryElement, CardCvcElement } from '@stripe/react-stripe-js';
2
+ import { useStripe, useElements, CardNumberElement, CardExpiryElement, CardCvcElement } from '@stripe/react-stripe-js';
4
3
 
5
4
  function _arrayLikeToArray(r, a) {
6
5
  (null == a || a > r.length) && (a = r.length);
@@ -455,8 +454,7 @@ function ShiftPaymentForm(_ref) {
455
454
 
456
455
  function StripePaymentForm(_ref) {
457
456
  var amount = _ref.amount,
458
- _ref$currency = _ref.currency,
459
- currency = _ref$currency === void 0 ? "usd" : _ref$currency,
457
+ currency = _ref.currency,
460
458
  _ref$color = _ref.color,
461
459
  color = _ref$color === void 0 ? "#556cd6" : _ref$color,
462
460
  _ref$formWidth = _ref.formWidth,
@@ -475,117 +473,49 @@ function StripePaymentForm(_ref) {
475
473
  description = _ref$description === void 0 ? "" : _ref$description;
476
474
  var stripe = useStripe();
477
475
  var elements = useElements();
478
- var initializedRef = useRef(false);
479
- var _useState = useState(null),
476
+ var _useState = useState(false),
480
477
  _useState2 = _slicedToArray(_useState, 2),
481
- publicKey = _useState2[0],
482
- setPublicKey = _useState2[1];
483
- var _useState3 = useState(false),
484
- _useState4 = _slicedToArray(_useState3, 2),
485
- isSubmitting = _useState4[0],
486
- setIsSubmitting = _useState4[1];
487
-
488
- /** Input styling based on props */
489
- var inputStyle = {
490
- style: {
491
- base: {
492
- fontSize: "15px",
493
- color: "#111",
494
- "::placeholder": {
495
- color: "#aaa"
496
- },
497
- padding: "".concat(inputPadding, "px"),
498
- border: "1px solid #ccc",
499
- borderRadius: "6px",
500
- backgroundColor: "#fff"
501
- },
502
- invalid: {
503
- color: "#ff4d4f"
504
- }
505
- }
506
- };
507
-
508
- /** Fetch Stripe public key once */
509
- useEffect(function () {
510
- if (initializedRef.current) return;
511
- initializedRef.current = true;
512
- var initPayment = /*#__PURE__*/function () {
513
- var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
514
- var res, data, _t;
515
- return _regenerator().w(function (_context) {
516
- while (1) switch (_context.p = _context.n) {
517
- case 0:
518
- _context.p = 0;
519
- _context.n = 1;
520
- return fetch("".concat(baseUrl).concat(userId));
521
- case 1:
522
- res = _context.v;
523
- if (!res.ok) errorPage("Failed to fetch public key");
524
- _context.n = 2;
525
- return res.json();
526
- case 2:
527
- data = _context.v;
528
- if (!data.publicKey) errorPage("Public key not found");
529
- setPublicKey(data.publicKey);
530
- _context.n = 4;
531
- break;
532
- case 3:
533
- _context.p = 3;
534
- _t = _context.v;
535
- if (errorPage) errorPage(_t.message);
536
- case 4:
537
- return _context.a(2);
538
- }
539
- }, _callee, null, [[0, 3]]);
540
- }));
541
- return function initPayment() {
542
- return _ref2.apply(this, arguments);
543
- };
544
- }();
545
- initPayment();
546
- }, [baseUrl, userId, errorPage]);
547
-
548
- /** Handle form submit */
478
+ isSubmitting = _useState2[0],
479
+ setIsSubmitting = _useState2[1];
549
480
  var handleSubmit = /*#__PURE__*/function () {
550
- var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(e) {
551
- var card, _yield$stripe$createP, pmError, paymentMethod, res, result, _t2;
552
- return _regenerator().w(function (_context2) {
553
- while (1) switch (_context2.p = _context2.n) {
481
+ var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(e) {
482
+ var card, _yield$stripe$createP, error, paymentMethod, res, result, _t;
483
+ return _regenerator().w(function (_context) {
484
+ while (1) switch (_context.p = _context.n) {
554
485
  case 0:
555
486
  e.preventDefault();
556
- errorPage("");
557
487
  if (!(!stripe || !elements)) {
558
- _context2.n = 1;
488
+ _context.n = 1;
559
489
  break;
560
490
  }
561
- return _context2.a(2);
491
+ return _context.a(2);
562
492
  case 1:
563
493
  card = elements.getElement(CardNumberElement);
564
494
  if (card) {
565
- _context2.n = 2;
495
+ _context.n = 2;
566
496
  break;
567
497
  }
568
- return _context2.a(2, errorPage("Card element not found"));
498
+ return _context.a(2, errorPage === null || errorPage === void 0 ? void 0 : errorPage("Card element not found"));
569
499
  case 2:
570
- _context2.n = 3;
500
+ _context.n = 3;
571
501
  return stripe.createPaymentMethod({
572
502
  type: "card",
573
503
  card: card
574
504
  });
575
505
  case 3:
576
- _yield$stripe$createP = _context2.v;
577
- pmError = _yield$stripe$createP.error;
506
+ _yield$stripe$createP = _context.v;
507
+ error = _yield$stripe$createP.error;
578
508
  paymentMethod = _yield$stripe$createP.paymentMethod;
579
- if (!pmError) {
580
- _context2.n = 4;
509
+ if (!error) {
510
+ _context.n = 4;
581
511
  break;
582
512
  }
583
- if (errorPage) errorPage(pmError.message);
584
- return _context2.a(2);
513
+ errorPage === null || errorPage === void 0 || errorPage(error.message);
514
+ return _context.a(2);
585
515
  case 4:
586
516
  setIsSubmitting(true);
587
- _context2.p = 5;
588
- _context2.n = 6;
517
+ _context.p = 5;
518
+ _context.n = 6;
589
519
  return fetch("".concat(baseUrl, "charge/").concat(userId), {
590
520
  method: "POST",
591
521
  headers: {
@@ -599,43 +529,39 @@ function StripePaymentForm(_ref) {
599
529
  })
600
530
  });
601
531
  case 6:
602
- res = _context2.v;
603
- _context2.n = 7;
532
+ res = _context.v;
533
+ _context.n = 7;
604
534
  return res.json();
605
535
  case 7:
606
- result = _context2.v;
536
+ result = _context.v;
607
537
  if (res.ok) {
608
- _context2.n = 8;
538
+ _context.n = 8;
609
539
  break;
610
540
  }
611
- if (errorPage) errorPage(result);
612
- return _context2.a(2);
541
+ errorPage === null || errorPage === void 0 || errorPage(result);
542
+ return _context.a(2);
613
543
  case 8:
614
- if (successPage) successPage(result.message);
615
- _context2.n = 10;
544
+ successPage === null || successPage === void 0 || successPage(result.message);
545
+ _context.n = 10;
616
546
  break;
617
547
  case 9:
618
- _context2.p = 9;
619
- _t2 = _context2.v;
620
- if (errorPage) errorPage(_t2.message);
548
+ _context.p = 9;
549
+ _t = _context.v;
550
+ errorPage === null || errorPage === void 0 || errorPage(_t.message);
621
551
  case 10:
622
- _context2.p = 10;
552
+ _context.p = 10;
623
553
  setIsSubmitting(false);
624
- return _context2.f(10);
554
+ return _context.f(10);
625
555
  case 11:
626
- return _context2.a(2);
556
+ return _context.a(2);
627
557
  }
628
- }, _callee2, null, [[5, 9, 10, 11]]);
558
+ }, _callee, null, [[5, 9, 10, 11]]);
629
559
  }));
630
560
  return function handleSubmit(_x) {
631
- return _ref3.apply(this, arguments);
561
+ return _ref2.apply(this, arguments);
632
562
  };
633
563
  }();
634
- if (!publicKey) return /*#__PURE__*/React.createElement("p", null, "Loading payment form...");
635
- var stripePromise = loadStripe(publicKey);
636
- return /*#__PURE__*/React.createElement(Elements, {
637
- stripe: stripePromise
638
- }, /*#__PURE__*/React.createElement("form", {
564
+ return /*#__PURE__*/React.createElement("form", {
639
565
  onSubmit: handleSubmit,
640
566
  style: {
641
567
  maxWidth: "".concat(formWidth, "px"),
@@ -644,69 +570,20 @@ function StripePaymentForm(_ref) {
644
570
  borderRadius: "".concat(formBorderRadius, "px"),
645
571
  backgroundColor: formBackgroundColor,
646
572
  display: "grid",
647
- gap: "14px",
648
- fontFamily: "Arial, sans-serif",
649
- boxShadow: "0 2px 6px rgba(0,0,0,0.08)"
650
- }
651
- }, /*#__PURE__*/React.createElement("div", {
652
- style: {
653
- display: "grid",
654
- gap: "6px"
655
- }
656
- }, /*#__PURE__*/React.createElement("label", {
657
- style: {
658
- fontWeight: "500",
659
- color: "#555"
660
- }
661
- }, "Card number"), /*#__PURE__*/React.createElement(CardNumberElement, {
662
- options: inputStyle
663
- })), /*#__PURE__*/React.createElement("div", {
664
- style: {
665
- display: "flex",
666
- gap: "10px"
667
- }
668
- }, /*#__PURE__*/React.createElement("div", {
669
- style: {
670
- flex: 1,
671
- display: "grid",
672
- gap: "4px"
673
- }
674
- }, /*#__PURE__*/React.createElement("label", {
675
- style: {
676
- fontWeight: "500",
677
- color: "#555"
678
- }
679
- }, "Expiration"), /*#__PURE__*/React.createElement(CardExpiryElement, {
680
- options: inputStyle
681
- })), /*#__PURE__*/React.createElement("div", {
682
- style: {
683
- flex: 1,
684
- display: "grid",
685
- gap: "4px"
686
- }
687
- }, /*#__PURE__*/React.createElement("label", {
688
- style: {
689
- fontWeight: "500",
690
- color: "#555"
573
+ gap: "14px"
691
574
  }
692
- }, "CVC"), /*#__PURE__*/React.createElement(CardCvcElement, {
693
- options: inputStyle
694
- }))), /*#__PURE__*/React.createElement("button", {
575
+ }, /*#__PURE__*/React.createElement(CardNumberElement, null), /*#__PURE__*/React.createElement(CardExpiryElement, null), /*#__PURE__*/React.createElement(CardCvcElement, null), /*#__PURE__*/React.createElement("button", {
695
576
  type: "submit",
696
577
  disabled: isSubmitting,
697
578
  style: {
698
- marginTop: "16px",
699
- width: "100%",
700
579
  padding: "".concat(inputPadding + 2, "px"),
701
580
  backgroundColor: color,
702
581
  color: "white",
703
582
  border: "none",
704
583
  borderRadius: "".concat(formBorderRadius, "px"),
705
- fontWeight: "600",
706
- cursor: isSubmitting ? "not-allowed" : "pointer",
707
- opacity: isSubmitting ? 0.7 : 1
584
+ cursor: isSubmitting ? "not-allowed" : "pointer"
708
585
  }
709
- }, isSubmitting ? "Processing..." : "Buy now")));
586
+ }, isSubmitting ? "Processing..." : "Buy now"));
710
587
  }
711
588
 
712
589
  export { ShiftPaymentForm, StripePaymentForm };
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../src/ShiftPaymentForm.jsx","../src/StripePaymentForm.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\n\nexport default function ShiftPaymentForm({ amount, currency, color, formwidth = 400, formborderRadius = 20, formbackgroundColor = \"#fff\", inputpadding = 12, baseUrl, userId, successPage, errorPage, description }) {\n const formRef = useRef();\n const initializedRef = useRef(false);\n const shift4Ref = useRef(null);\n const componentsRef = useRef(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [isReady, setIsReady] = useState(false);\n\n\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const response = await fetch(baseUrl + userId);\n if (!response.ok) errorPage(\"Failed to fetch public key\");\n\n const { publicKeys,isProd } = await response.json();\n if (!publicKeys) errorPage(\"Public key is empty\");\n\n const script = document.createElement(\"script\");\n script.src = isProd ? \"https://js.shift4.com/shift4.js\" : \"https://js.dev.shift4.com/shift4.js\";\n script.async = true;\n\n script.onload = () => {\n if (!window.Shift4) return;\n\n shift4Ref.current = window.Shift4(publicKeys);\n\n componentsRef.current = shift4Ref.current\n .createComponentGroup()\n .automount(\"#payment-form\");\n setIsReady(true);\n };\n\n script.onerror = () => {\n setError(\"Payment provider script failed to load.\");\n };\n\n document.body.appendChild(script);\n } catch (err) {\n console.error(err);\n setError(\"Payment initialization failed. Please try again.\");\n }\n };\n\n initPayment();\n }, []);\n\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (isSubmitting) return;\n if (!formRef.current) return;\n\n if (!shift4Ref.current || !componentsRef.current) {\n errorPage(\"Payment form is not ready yet. Please try again.\");\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const token = await shift4Ref.current.createToken(componentsRef.current);\n if (!token?.id) {\n errorPage(\"Card tokenization failed. Please check your details and try again.\");\n }\n\n const request = {\n amount: amount,\n currency: currency,\n card: token.id,\n description\n };\n\n const threeDSecureToken = await shift4Ref.current.verifyThreeDSecure(request);\n if (!threeDSecureToken?.id) {\n errorPage(\"3D Secure verification failed. Please try again.\");\n }\n\n const apiBase = baseUrl + \"charge/\" + userId;\n const response = await fetch(`${apiBase}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n tokenId: threeDSecureToken.id,\n amount: request.amount,\n currency: request.currency,\n description\n }),\n });\n const result = await response.json();\n if (!response.ok) {\n if (typeof errorPage === \"function\")\n errorPage(result);\n return;\n }\n\n if (typeof successPage === \"function\")\n successPage(result.message);\n \n \n\n\n\n } catch (err) {\n if (typeof errorPage === \"function\")\n errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n\n\n\n }\n };\n\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n width: \"100%\",\n boxSizing: \"border-box\"\n }}\n >\n <form\n ref={formRef}\n id=\"payment-form\"\n onSubmit={handleSubmit}\n method=\"post\"\n style={{\n display: \"grid\",\n gap: \"12px\",\n padding: \"20px\",\n backgroundColor: formbackgroundColor,\n borderRadius: formborderRadius,\n width: formwidth,\n boxSizing: \"border-box\"\n }}\n >\n\n\n <div style={{ display: \"grid\", gap: \"8px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <div\n data-shift4=\"number\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"10px\", marginTop: \"5px\" }}>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>Expiration</label>\n <div\n data-shift4=\"expiry\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>CVC</label>\n <div\n data-shift4=\"cvc\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n </div>\n\n <button\n type=\"submit\"\n disabled={!isReady || isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: inputpadding + 2,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: formborderRadius,\n fontWeight: \"600\",\n cursor: !isReady || isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: !isReady || isSubmitting ? 0.7 : 1\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </div>\n );\n}\n","import React, { useEffect, useState, useRef } from \"react\";\nimport { loadStripe } from \"@stripe/stripe-js\";\nimport {\n Elements,\n useStripe,\n useElements,\n CardNumberElement,\n CardExpiryElement,\n CardCvcElement,\n} from \"@stripe/react-stripe-js\";\n\nexport default function StripePaymentForm({\n amount,\n currency = \"usd\",\n color = \"#556cd6\",\n formWidth = 400,\n formBorderRadius = 20,\n formBackgroundColor = \"#fff\",\n inputPadding = 12,\n baseUrl,\n userId,\n successPage,\n errorPage,\n description = \"\",\n}) {\n const stripe = useStripe();\n const elements = useElements();\n\n const initializedRef = useRef(false);\n const [publicKey, setPublicKey] = useState(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n /** Input styling based on props */\n const inputStyle = {\n style: {\n base: {\n fontSize: \"15px\",\n color: \"#111\",\n \"::placeholder\": { color: \"#aaa\" },\n padding: `${inputPadding}px`,\n border: \"1px solid #ccc\",\n borderRadius: \"6px\",\n backgroundColor: \"#fff\",\n },\n invalid: { color: \"#ff4d4f\" },\n },\n };\n\n /** Fetch Stripe public key once */\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const res = await fetch(`${baseUrl}${userId}`);\n if (!res.ok) errorPage(\"Failed to fetch public key\");\n\n const data = await res.json();\n if (!data.publicKey) errorPage(\"Public key not found\");\n setPublicKey(data.publicKey);\n } catch (err) {\n if (errorPage) errorPage(err.message);\n }\n };\n\n initPayment();\n }, [baseUrl, userId, errorPage]);\n\n /** Handle form submit */\n const handleSubmit = async (e) => {\n e.preventDefault();\n errorPage(\"\");\n\n if (!stripe || !elements) return;\n\n const card = elements.getElement(CardNumberElement);\n if (!card) return errorPage(\"Card element not found\");\n\n const { error: pmError, paymentMethod } = await stripe.createPaymentMethod({\n type: \"card\",\n card,\n });\n\n if (pmError) {\n if (errorPage) errorPage(pmError.message);\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const res = await fetch(`${baseUrl}charge/${userId}`, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n tokenId: paymentMethod.id,\n amount,\n currency,\n description,\n }),\n });\n\n const result = await res.json();\n\n if (!res.ok) {\n if (errorPage) errorPage(result);\n return;\n }\n\n if (successPage) successPage(result.message);\n } catch (err) {\n if (errorPage) errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n if (!publicKey) return <p>Loading payment form...</p>;\n\n const stripePromise = loadStripe(publicKey);\n\n return (\n <Elements stripe={stripePromise}>\n <form\n onSubmit={handleSubmit}\n style={{\n maxWidth: `${formWidth}px`,\n margin: \"30px auto\",\n padding: \"20px\",\n borderRadius: `${formBorderRadius}px`,\n backgroundColor: formBackgroundColor,\n display: \"grid\",\n gap: \"14px\",\n fontFamily: \"Arial, sans-serif\",\n boxShadow: \"0 2px 6px rgba(0,0,0,0.08)\",\n }}\n >\n {/* Card Number */}\n <div style={{ display: \"grid\", gap: \"6px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <CardNumberElement options={inputStyle} />\n </div>\n\n {/* Expiration + CVC */}\n <div style={{ display: \"flex\", gap: \"10px\" }}>\n <div style={{ flex: 1, display: \"grid\", gap: \"4px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Expiration</label>\n <CardExpiryElement options={inputStyle} />\n </div>\n <div style={{ flex: 1, display: \"grid\", gap: \"4px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>CVC</label>\n <CardCvcElement options={inputStyle} />\n </div>\n </div>\n <button\n type=\"submit\"\n disabled={isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: `${inputPadding + 2}px`,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: `${formBorderRadius}px`,\n fontWeight: \"600\",\n cursor: isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: isSubmitting ? 0.7 : 1,\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </Elements>\n );\n}"],"names":["ShiftPaymentForm","_ref","amount","currency","color","_ref$formwidth","formwidth","_ref$formborderRadius","formborderRadius","_ref$formbackgroundCo","formbackgroundColor","_ref$inputpadding","inputpadding","baseUrl","userId","successPage","errorPage","description","formRef","useRef","initializedRef","shift4Ref","componentsRef","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useState3","_useState4","isReady","setIsReady","useEffect","current","initPayment","_ref2","_asyncToGenerator","_regenerator","m","_callee","response","_yield$response$json","publicKeys","isProd","script","_t","w","_context","p","n","fetch","v","ok","json","document","createElement","src","async","onload","window","Shift4","createComponentGroup","automount","onerror","setError","body","appendChild","console","error","a","apply","arguments","handleSubmit","_ref3","_callee2","e","token","request","threeDSecureToken","apiBase","result","_t2","_context2","preventDefault","createToken","id","card","verifyThreeDSecure","concat","method","headers","JSON","stringify","tokenId","message","f","_x","React","style","display","justifyContent","width","boxSizing","ref","onSubmit","gap","padding","backgroundColor","borderRadius","fontWeight","className","border","boxShadow","gridTemplateColumns","marginTop","marginBottom","type","disabled","cursor","opacity","StripePaymentForm","_ref$currency","_ref$color","_ref$formWidth","formWidth","_ref$formBorderRadius","formBorderRadius","_ref$formBackgroundCo","formBackgroundColor","_ref$inputPadding","inputPadding","_ref$description","stripe","useStripe","elements","useElements","publicKey","setPublicKey","inputStyle","base","fontSize","invalid","res","data","_yield$stripe$createP","pmError","paymentMethod","getElement","CardNumberElement","createPaymentMethod","stripePromise","loadStripe","Elements","maxWidth","margin","fontFamily","options","flex","CardExpiryElement","CardCvcElement"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEe,SAASA,gBAAgBA,CAAAC,IAAA,EAA6K;AAAA,EAAA,IAA1KC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAEC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;IAAEC,KAAK,GAAAH,IAAA,CAALG,KAAK;IAAAC,cAAA,GAAAJ,IAAA,CAAEK,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAAN,IAAA,CAAEO,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAR,IAAA,CAAES,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAV,IAAA,CAAEW,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IAAEE,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IAAEC,MAAM,GAAAb,IAAA,CAANa,MAAM;IAAEC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IAAEC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAEC,WAAW,GAAAhB,IAAA,CAAXgB,WAAW;AAC/M,EAAA,IAAMC,OAAO,GAAGC,MAAM,EAAE;AACxB,EAAA,IAAMC,cAAc,GAAGD,MAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAME,SAAS,GAAGF,MAAM,CAAC,IAAI,CAAC;AAC9B,EAAA,IAAMG,aAAa,GAAGH,MAAM,CAAC,IAAI,CAAC;AAClC,EAAA,IAAAI,SAAA,GAAwCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhDI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAI,UAAA,GAA8BL,QAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAtCE,IAAAA,OAAO,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAG1BG,EAAAA,SAAS,CAAC,YAAM;IACd,IAAIb,cAAc,CAACc,OAAO,EAAE;IAC5Bd,cAAc,CAACc,OAAO,GAAG,IAAI;AAE7B,IAAA,IAAMC,WAAW,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;QAAA,IAAAC,QAAA,EAAAC,oBAAA,EAAAC,UAAA,EAAAC,MAAA,EAAAC,MAAA,EAAAC,EAAA;AAAA,QAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEOC,KAAK,CAACtC,OAAO,GAAGC,MAAM,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxC2B,QAAQ,GAAAO,QAAA,CAAAI,CAAA;cACd,IAAI,CAACX,QAAQ,CAACY,EAAE,EAAErC,SAAS,CAAC,4BAA4B,CAAC;AAACgC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAEtBT,QAAQ,CAACa,IAAI,EAAE;AAAA,YAAA,KAAA,CAAA;cAAAZ,oBAAA,GAAAM,QAAA,CAAAI,CAAA;cAA3CT,UAAU,GAAAD,oBAAA,CAAVC,UAAU;cAACC,MAAM,GAAAF,oBAAA,CAANE,MAAM;AACzB,cAAA,IAAI,CAACD,UAAU,EAAE3B,SAAS,CAAC,qBAAqB,CAAC;AAE3C6B,cAAAA,MAAM,GAAGU,QAAQ,CAACC,aAAa,CAAC,QAAQ,CAAC;AAC/CX,cAAAA,MAAM,CAACY,GAAG,GAAGb,MAAM,GAAG,iCAAiC,GAAG,qCAAqC;cAC/FC,MAAM,CAACa,KAAK,GAAG,IAAI;cAEnBb,MAAM,CAACc,MAAM,GAAG,YAAM;AACpB,gBAAA,IAAI,CAACC,MAAM,CAACC,MAAM,EAAE;gBAEpBxC,SAAS,CAACa,OAAO,GAAG0B,MAAM,CAACC,MAAM,CAAClB,UAAU,CAAC;AAE7CrB,gBAAAA,aAAa,CAACY,OAAO,GAAGb,SAAS,CAACa,OAAO,CACtC4B,oBAAoB,EAAE,CACtBC,SAAS,CAAC,eAAe,CAAC;gBAC7B/B,UAAU,CAAC,IAAI,CAAC;cAClB,CAAC;cAEDa,MAAM,CAACmB,OAAO,GAAG,YAAM;gBACrBC,QAAQ,CAAC,yCAAyC,CAAC;cACrD,CAAC;AAEDV,cAAAA,QAAQ,CAACW,IAAI,CAACC,WAAW,CAACtB,MAAM,CAAC;AAACG,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;AAElCgB,cAAAA,OAAO,CAACC,KAAK,CAAAvB,EAAI,CAAC;cAClBmB,QAAQ,CAAC,kDAAkD,CAAC;AAAC,YAAA,KAAA,CAAA;cAAA,OAAAjB,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;MAAA,CAEhE,CAAA,CAAA;AAAA,MAAA,OAAA,SAhCKL,WAAWA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAgChB;AAEDrC,IAAAA,WAAW,EAAE;EACf,CAAC,EAAE,EAAE,CAAC;AAGN,EAAA,IAAMsC,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAoC,QAAAA,CAAOC,CAAC,EAAA;AAAA,MAAA,IAAAC,KAAA,EAAAC,OAAA,EAAAC,iBAAA,EAAAC,OAAA,EAAAvC,QAAA,EAAAwC,MAAA,EAAAC,GAAA;AAAA,MAAA,OAAA5C,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAoC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAlC,CAAA,GAAAkC,SAAA,CAAAjC,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;AAAC,YAAA,IAAA,CAEfzD,YAAY,EAAA;AAAAwD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IACXpD,OAAO,CAACgB,OAAO,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,IAAA,EAEhB,CAACjD,SAAS,CAACa,OAAO,IAAI,CAACZ,aAAa,CAACY,OAAO,CAAA,EAAA;AAAAiD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAC9ClC,SAAS,CAAC,kDAAkD,CAAC;YAAC,OAAAmE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAIhE1C,eAAe,CAAC,IAAI,CAAC;AAACuD,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;AAAAkC,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAGA7B,SAAS,CAACa,OAAO,CAACmD,WAAW,CAAC/D,aAAa,CAACY,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAlE2C,KAAK,GAAAM,SAAA,CAAA/B,CAAA;YACX,IAAI,EAACyB,KAAK,KAAA,IAAA,IAALA,KAAK,eAALA,KAAK,CAAES,EAAE,CAAA,EAAE;cACdtE,SAAS,CAAC,oEAAoE,CAAC;AACjF,YAAA;AAEM8D,YAAAA,OAAO,GAAG;AACd5E,cAAAA,MAAM,EAAEA,MAAM;AACdC,cAAAA,QAAQ,EAAEA,QAAQ;cAClBoF,IAAI,EAAEV,KAAK,CAACS,EAAE;AACdrE,cAAAA,WAAW,EAAXA;aACD;AAAAkE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAE+B7B,SAAS,CAACa,OAAO,CAACsD,kBAAkB,CAACV,OAAO,CAAC;AAAA,UAAA,KAAA,CAAA;YAAvEC,iBAAiB,GAAAI,SAAA,CAAA/B,CAAA;YACvB,IAAI,EAAC2B,iBAAiB,KAAA,IAAA,IAAjBA,iBAAiB,eAAjBA,iBAAiB,CAAEO,EAAE,CAAA,EAAE;cAC1BtE,SAAS,CAAC,kDAAkD,CAAC;AAC/D,YAAA;AAEMgE,YAAAA,OAAO,GAAGnE,OAAO,GAAG,SAAS,GAAGC,MAAM;AAAAqE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OACrBC,KAAK,CAAA,EAAA,CAAAsC,MAAA,CAAIT,OAAO,CAAA,EAAI;AACzCU,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE;eACjB;AACDzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAEf,iBAAiB,CAACO,EAAE;gBAC7BpF,MAAM,EAAE4E,OAAO,CAAC5E,MAAM;gBACtBC,QAAQ,EAAE2E,OAAO,CAAC3E,QAAQ;AAC1Bc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAXIwB,QAAQ,GAAA0C,SAAA,CAAA/B,CAAA;AAAA+B,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAYOT,QAAQ,CAACa,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAA9B2B,MAAM,GAAAE,SAAA,CAAA/B,CAAA;YAAA,IACPX,QAAQ,CAACY,EAAE,EAAA;AAAA8B,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YACd,IAAI,OAAOlC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACiE,MAAM,CAAC;YAAC,OAAAE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAItB,IAAI,OAAOvD,WAAW,KAAK,UAAU,EACxCA,WAAW,CAACkE,MAAM,CAACc,OAAO,CAAC;AAACZ,YAAAA,SAAA,CAAAjC,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,EAAA;AAAAiC,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAAAiC,GAAA,GAAAC,SAAA,CAAA/B,CAAA;YAOzB,IAAI,OAAOpC,SAAS,KAAK,UAAU,EACjCA,SAAS,CAACkE,GAAA,CAAIa,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAZ,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAEzBrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAuD,SAAA,CAAAa,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAb,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAK1B,CAAA,CAAA;IAAA,OAAA,SAnEKF,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAAvB,KAAA,CAAAH,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAmEjB;EAED,oBACE0B,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE2C,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,cAAc,EAAE,QAAQ;AACxBC,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,SAAS,EAAE;AACb;GAAE,eAEFL,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEgD,IAAAA,GAAG,EAAEtF,OAAQ;AACboE,IAAAA,EAAE,EAAC,cAAc;AACjBmB,IAAAA,QAAQ,EAAEhC,YAAa;AACvBiB,IAAAA,MAAM,EAAC,MAAM;AACbS,IAAAA,KAAK,EAAE;AACLC,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE,MAAM;AACXC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,eAAe,EAAElG,mBAAmB;AACpCmG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9B8F,MAAAA,KAAK,EAAEhG,SAAS;AAChBiG,MAAAA,SAAS,EAAE;AACb;GAAE,eAIFL,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eAC1CR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,aAAkB,CAAC,eACvE8F,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEc,MAAAA,mBAAmB,EAAE,SAAS;AAAER,MAAAA,GAAG,EAAE,MAAM;AAAES,MAAAA,SAAS,EAAE;AAAM;AAAE,GAAA,eAC7FjB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,YAAiB,CAAC,eACvFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,QAAQ;AACpBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;GACD,CACE,CAAC,eACNf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA,IAAA,eACE0C,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE,MAAM;AAAEgH,MAAAA,YAAY,EAAE;AAAE;AAAE,GAAA,EAAC,KAAU,CAAC,eAChFlB,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,KAAK;AACjBuD,IAAAA,SAAS,EAAC,cAAc;AACxBZ,IAAAA,KAAK,EAAE;AACLQ,MAAAA,OAAO,EAAE/F,YAAY;AACrBiG,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BwG,MAAAA,MAAM,EAAE,gBAAgB;AACxBC,MAAAA,SAAS,EAAE;AACb;AAAE,GACH,CACE,CACF,CAAC,eAENf,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE,CAACvF,OAAO,IAAIJ,YAAa;AACnCwE,IAAAA,KAAK,EAAE;AACLgB,MAAAA,SAAS,EAAE,MAAM;AACjBb,MAAAA,KAAK,EAAE,MAAM;MACbK,OAAO,EAAE/F,YAAY,GAAG,CAAC;AACzBgG,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAErG,gBAAgB;AAC9BsG,MAAAA,UAAU,EAAE,KAAK;MACjBS,MAAM,EAAE,CAACxF,OAAO,IAAIJ,YAAY,GAAG,aAAa,GAAG,SAAS;AAC5D6F,MAAAA,OAAO,EAAE,CAACzF,OAAO,IAAIJ,YAAY,GAAG,GAAG,GAAG;AAC5C;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CACH,CAAC;AAEV;;ACzMe,SAAS8F,iBAAiBA,CAAAxH,IAAA,EAatC;AAAA,EAAA,IAZDC,MAAM,GAAAD,IAAA,CAANC,MAAM;IAAAwH,aAAA,GAAAzH,IAAA,CACNE,QAAQ;AAARA,IAAAA,QAAQ,GAAAuH,aAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,aAAA;IAAAC,UAAA,GAAA1H,IAAA,CAChBG,KAAK;AAALA,IAAAA,KAAK,GAAAuH,UAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,UAAA;IAAAC,cAAA,GAAA3H,IAAA,CACjB4H,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,cAAA;IAAAE,qBAAA,GAAA7H,IAAA,CACf8H,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAA/H,IAAA,CACrBgI,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;IAAAE,iBAAA,GAAAjI,IAAA,CAC5BkI,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IACjBrH,OAAO,GAAAZ,IAAA,CAAPY,OAAO;IACPC,MAAM,GAAAb,IAAA,CAANa,MAAM;IACNC,WAAW,GAAAd,IAAA,CAAXc,WAAW;IACXC,SAAS,GAAAf,IAAA,CAATe,SAAS;IAAAoH,gBAAA,GAAAnI,IAAA,CACTgB,WAAW;AAAXA,IAAAA,WAAW,GAAAmH,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;AAEhB,EAAA,IAAMC,MAAM,GAAGC,SAAS,EAAE;AAC1B,EAAA,IAAMC,QAAQ,GAAGC,WAAW,EAAE;AAE9B,EAAA,IAAMpH,cAAc,GAAGD,MAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAAI,SAAA,GAAkCC,QAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAzCkH,IAAAA,SAAS,GAAAhH,UAAA,CAAA,CAAA,CAAA;AAAEiH,IAAAA,YAAY,GAAAjH,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAAI,UAAA,GAAwCL,QAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAhDF,IAAAA,YAAY,GAAAG,UAAA,CAAA,CAAA,CAAA;AAAEF,IAAAA,eAAe,GAAAE,UAAA,CAAA,CAAA,CAAA;;AAEpC;AACA,EAAA,IAAM6G,UAAU,GAAG;AACjBxC,IAAAA,KAAK,EAAE;AACLyC,MAAAA,IAAI,EAAE;AACJC,QAAAA,QAAQ,EAAE,MAAM;AAChBzI,QAAAA,KAAK,EAAE,MAAM;AACb,QAAA,eAAe,EAAE;AAAEA,UAAAA,KAAK,EAAE;SAAQ;AAClCuG,QAAAA,OAAO,EAAA,EAAA,CAAAlB,MAAA,CAAK0C,YAAY,EAAA,IAAA,CAAI;AAC5BnB,QAAAA,MAAM,EAAE,gBAAgB;AACxBH,QAAAA,YAAY,EAAE,KAAK;AACnBD,QAAAA,eAAe,EAAE;OAClB;AACDkC,MAAAA,OAAO,EAAE;AAAE1I,QAAAA,KAAK,EAAE;AAAU;AAC9B;GACD;;AAED;AACA6B,EAAAA,SAAS,CAAC,YAAM;IACd,IAAIb,cAAc,CAACc,OAAO,EAAE;IAC5Bd,cAAc,CAACc,OAAO,GAAG,IAAI;AAE7B,IAAA,IAAMC,WAAW,gBAAA,YAAA;MAAA,IAAAC,KAAA,GAAAC,iBAAA,cAAAC,YAAA,EAAA,CAAAC,CAAA,CAAG,SAAAC,OAAAA,GAAA;AAAA,QAAA,IAAAuG,GAAA,EAAAC,IAAA,EAAAlG,EAAA;AAAA,QAAA,OAAAR,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAC,QAAA,EAAA;AAAA,UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAAC,CAAA,GAAAD,QAAA,CAAAE,CAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;AAAAD,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;cAAA,OAEEC,KAAK,CAAA,EAAA,CAAAsC,MAAA,CAAI5E,OAAO,EAAA4E,MAAA,CAAG3E,MAAM,CAAE,CAAC;AAAA,YAAA,KAAA,CAAA;cAAxCiI,GAAG,GAAA/F,QAAA,CAAAI,CAAA;cACT,IAAI,CAAC2F,GAAG,CAAC1F,EAAE,EAAErC,SAAS,CAAC,4BAA4B,CAAC;AAACgC,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA,OAElC6F,GAAG,CAACzF,IAAI,EAAE;AAAA,YAAA,KAAA,CAAA;cAAvB0F,IAAI,GAAAhG,QAAA,CAAAI,CAAA;cACV,IAAI,CAAC4F,IAAI,CAACP,SAAS,EAAEzH,SAAS,CAAC,sBAAsB,CAAC;AACtD0H,cAAAA,YAAY,CAACM,IAAI,CAACP,SAAS,CAAC;AAACzF,cAAAA,QAAA,CAAAE,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA,KAAA,CAAA;AAAAF,cAAAA,QAAA,CAAAC,CAAA,GAAA,CAAA;cAAAH,EAAA,GAAAE,QAAA,CAAAI,CAAA;AAE7B,cAAA,IAAIpC,SAAS,EAAEA,SAAS,CAAC8B,EAAA,CAAIiD,OAAO,CAAC;AAAC,YAAA,KAAA,CAAA;cAAA,OAAA/C,QAAA,CAAAsB,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,QAAA,CAAA,EAAA9B,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;MAAA,CAEzC,CAAA,CAAA;AAAA,MAAA,OAAA,SAXKL,WAAWA,GAAA;AAAA,QAAA,OAAAC,KAAA,CAAAmC,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA,CAAA;IAAA,CAAA,EAWhB;AAEDrC,IAAAA,WAAW,EAAE;EACf,CAAC,EAAE,CAACtB,OAAO,EAAEC,MAAM,EAAEE,SAAS,CAAC,CAAC;;AAEhC;AACA,EAAA,IAAMyD,YAAY,gBAAA,YAAA;IAAA,IAAAC,KAAA,GAAArC,iBAAA,cAAAC,YAAA,GAAAC,CAAA,CAAG,SAAAoC,QAAAA,CAAOC,CAAC,EAAA;AAAA,MAAA,IAAAW,IAAA,EAAA0D,qBAAA,EAAAC,OAAA,EAAAC,aAAA,EAAAJ,GAAA,EAAA9D,MAAA,EAAAC,GAAA;AAAA,MAAA,OAAA5C,YAAA,EAAA,CAAAS,CAAA,CAAA,UAAAoC,SAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,SAAA,CAAAlC,CAAA,GAAAkC,SAAA,CAAAjC,CAAA;AAAA,UAAA,KAAA,CAAA;YAC3B0B,CAAC,CAACQ,cAAc,EAAE;YAClBpE,SAAS,CAAC,EAAE,CAAC;AAAC,YAAA,IAAA,EAEV,CAACqH,MAAM,IAAI,CAACE,QAAQ,CAAA,EAAA;AAAApD,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;YAAA,OAAAiC,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAElBiB,YAAAA,IAAI,GAAGgD,QAAQ,CAACa,UAAU,CAACC,iBAAiB,CAAC;AAAA,YAAA,IAC9C9D,IAAI,EAAA;AAAAJ,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AAAA,YAAA,OAAAiC,SAAA,CAAAb,CAAA,IAAStD,SAAS,CAAC,wBAAwB,CAAC,CAAA;AAAA,UAAA,KAAA,CAAA;AAAAmE,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAELmF,MAAM,CAACiB,mBAAmB,CAAC;AACzEjC,cAAAA,IAAI,EAAE,MAAM;AACZ9B,cAAAA,IAAI,EAAJA;AACF,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YAAA0D,qBAAA,GAAA9D,SAAA,CAAA/B,CAAA;YAHa8F,OAAO,GAAAD,qBAAA,CAAd5E,KAAK;YAAW8E,aAAa,GAAAF,qBAAA,CAAbE,aAAa;AAAA,YAAA,IAAA,CAKjCD,OAAO,EAAA;AAAA/D,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AACT,YAAA,IAAIlC,SAAS,EAAEA,SAAS,CAACkI,OAAO,CAACnD,OAAO,CAAC;YAAC,OAAAZ,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAI5C1C,eAAe,CAAC,IAAI,CAAC;AAACuD,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;AAAAkC,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;YAAA,OAGFC,KAAK,IAAAsC,MAAA,CAAI5E,OAAO,EAAA,SAAA,CAAA,CAAA4E,MAAA,CAAU3E,MAAM,CAAA,EAAI;AACpD4E,cAAAA,MAAM,EAAE,MAAM;AACdC,cAAAA,OAAO,EAAE;AAAE,gBAAA,cAAc,EAAE;eAAoB;AAC/CzB,cAAAA,IAAI,EAAE0B,IAAI,CAACC,SAAS,CAAC;gBACnBC,OAAO,EAAEqD,aAAa,CAAC7D,EAAE;AACzBpF,gBAAAA,MAAM,EAANA,MAAM;AACNC,gBAAAA,QAAQ,EAARA,QAAQ;AACRc,gBAAAA,WAAW,EAAXA;eACD;AACH,aAAC,CAAC;AAAA,UAAA,KAAA,CAAA;YATI8H,GAAG,GAAA5D,SAAA,CAAA/B,CAAA;AAAA+B,YAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,YAAA,OAWY6F,GAAG,CAACzF,IAAI,EAAE;AAAA,UAAA,KAAA,CAAA;YAAzB2B,MAAM,GAAAE,SAAA,CAAA/B,CAAA;YAAA,IAEP2F,GAAG,CAAC1F,EAAE,EAAA;AAAA8B,cAAAA,SAAA,CAAAjC,CAAA,GAAA,CAAA;AAAA,cAAA;AAAA,YAAA;AACT,YAAA,IAAIlC,SAAS,EAAEA,SAAS,CAACiE,MAAM,CAAC;YAAC,OAAAE,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;AAInC,YAAA,IAAIvD,WAAW,EAAEA,WAAW,CAACkE,MAAM,CAACc,OAAO,CAAC;AAACZ,YAAAA,SAAA,CAAAjC,CAAA,GAAA,EAAA;AAAA,YAAA;AAAA,UAAA,KAAA,CAAA;AAAAiC,YAAAA,SAAA,CAAAlC,CAAA,GAAA,CAAA;YAAAiC,GAAA,GAAAC,SAAA,CAAA/B,CAAA;AAE7C,YAAA,IAAIpC,SAAS,EAAEA,SAAS,CAACkE,GAAA,CAAIa,OAAO,CAAC;AAAC,UAAA,KAAA,EAAA;AAAAZ,YAAAA,SAAA,CAAAlC,CAAA,GAAA,EAAA;YAEtCrB,eAAe,CAAC,KAAK,CAAC;YAAC,OAAAuD,SAAA,CAAAa,CAAA,CAAA,EAAA,CAAA;AAAA,UAAA,KAAA,EAAA;YAAA,OAAAb,SAAA,CAAAb,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAAK,QAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;IAAA,CAE1B,CAAA,CAAA;IAAA,OAAA,SA9CKF,YAAYA,CAAAwB,EAAA,EAAA;AAAA,MAAA,OAAAvB,KAAA,CAAAH,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EA8CjB;EAED,IAAI,CAACiE,SAAS,EAAE,oBAAOvC,KAAA,CAAA1C,aAAA,CAAA,GAAA,EAAA,IAAA,EAAG,yBAA0B,CAAC;AAErD,EAAA,IAAM+F,aAAa,GAAGC,UAAU,CAACf,SAAS,CAAC;AAE3C,EAAA,oBACEvC,KAAA,CAAA1C,aAAA,CAACiG,QAAQ,EAAA;AAACpB,IAAAA,MAAM,EAAEkB;GAAc,eAC9BrD,KAAA,CAAA1C,aAAA,CAAA,MAAA,EAAA;AACEiD,IAAAA,QAAQ,EAAEhC,YAAa;AACvB0B,IAAAA,KAAK,EAAE;AACLuD,MAAAA,QAAQ,EAAA,EAAA,CAAAjE,MAAA,CAAKoC,SAAS,EAAA,IAAA,CAAI;AAC1B8B,MAAAA,MAAM,EAAE,WAAW;AACnBhD,MAAAA,OAAO,EAAE,MAAM;AACfE,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKsC,gBAAgB,EAAA,IAAA,CAAI;AACrCnB,MAAAA,eAAe,EAAEqB,mBAAmB;AACpC7B,MAAAA,OAAO,EAAE,MAAM;AACfM,MAAAA,GAAG,EAAE,MAAM;AACXkD,MAAAA,UAAU,EAAE,mBAAmB;AAC/B3C,MAAAA,SAAS,EAAE;AACb;GAAE,eAGFf,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eAC1CR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,aAAkB,CAAC,eACvE8F,KAAA,CAAA1C,aAAA,CAAC6F,iBAAiB,EAAA;AAACQ,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACtC,CAAC,eAGNzC,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAEC,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAO;GAAE,eAC3CR,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAE2D,MAAAA,IAAI,EAAE,CAAC;AAAE1D,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eACnDR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,YAAiB,CAAC,eACtE8F,KAAA,CAAA1C,aAAA,CAACuG,iBAAiB,EAAA;AAACF,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACtC,CAAC,eACNzC,KAAA,CAAA1C,aAAA,CAAA,KAAA,EAAA;AAAK2C,IAAAA,KAAK,EAAE;AAAE2D,MAAAA,IAAI,EAAE,CAAC;AAAE1D,MAAAA,OAAO,EAAE,MAAM;AAAEM,MAAAA,GAAG,EAAE;AAAM;GAAE,eACnDR,KAAA,CAAA1C,aAAA,CAAA,OAAA,EAAA;AAAO2C,IAAAA,KAAK,EAAE;AAAEW,MAAAA,UAAU,EAAE,KAAK;AAAE1G,MAAAA,KAAK,EAAE;AAAO;AAAE,GAAA,EAAC,KAAU,CAAC,eAC/D8F,KAAA,CAAA1C,aAAA,CAACwG,cAAc,EAAA;AAACH,IAAAA,OAAO,EAAElB;AAAW,GAAE,CACnC,CACF,CAAC,eACNzC,KAAA,CAAA1C,aAAA,CAAA,QAAA,EAAA;AACE6D,IAAAA,IAAI,EAAC,QAAQ;AACbC,IAAAA,QAAQ,EAAE3F,YAAa;AACvBwE,IAAAA,KAAK,EAAE;AACLgB,MAAAA,SAAS,EAAE,MAAM;AACjBb,MAAAA,KAAK,EAAE,MAAM;AACbK,MAAAA,OAAO,KAAAlB,MAAA,CAAK0C,YAAY,GAAG,CAAC,EAAA,IAAA,CAAI;AAChCvB,MAAAA,eAAe,EAAExG,KAAK;AACtBA,MAAAA,KAAK,EAAE,OAAO;AACd4G,MAAAA,MAAM,EAAE,MAAM;AACdH,MAAAA,YAAY,EAAA,EAAA,CAAApB,MAAA,CAAKsC,gBAAgB,EAAA,IAAA,CAAI;AACrCjB,MAAAA,UAAU,EAAE,KAAK;AACjBS,MAAAA,MAAM,EAAE5F,YAAY,GAAG,aAAa,GAAG,SAAS;AAChD6F,MAAAA,OAAO,EAAE7F,YAAY,GAAG,GAAG,GAAG;AAChC;AAAE,GAAA,EAEDA,YAAY,GAAG,eAAe,GAAG,SAC5B,CACJ,CACE,CAAC;AAEf;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../src/ShiftPaymentForm.jsx","../src/StripePaymentForm.jsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\n\nexport default function ShiftPaymentForm({ amount, currency, color, formwidth = 400, formborderRadius = 20, formbackgroundColor = \"#fff\", inputpadding = 12, baseUrl, userId, successPage, errorPage, description }) {\n const formRef = useRef();\n const initializedRef = useRef(false);\n const shift4Ref = useRef(null);\n const componentsRef = useRef(null);\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [isReady, setIsReady] = useState(false);\n\n\n useEffect(() => {\n if (initializedRef.current) return;\n initializedRef.current = true;\n\n const initPayment = async () => {\n try {\n const response = await fetch(baseUrl + userId);\n if (!response.ok) errorPage(\"Failed to fetch public key\");\n\n const { publicKeys,isProd } = await response.json();\n if (!publicKeys) errorPage(\"Public key is empty\");\n\n const script = document.createElement(\"script\");\n script.src = isProd ? \"https://js.shift4.com/shift4.js\" : \"https://js.dev.shift4.com/shift4.js\";\n script.async = true;\n\n script.onload = () => {\n if (!window.Shift4) return;\n\n shift4Ref.current = window.Shift4(publicKeys);\n\n componentsRef.current = shift4Ref.current\n .createComponentGroup()\n .automount(\"#payment-form\");\n setIsReady(true);\n };\n\n script.onerror = () => {\n setError(\"Payment provider script failed to load.\");\n };\n\n document.body.appendChild(script);\n } catch (err) {\n console.error(err);\n setError(\"Payment initialization failed. Please try again.\");\n }\n };\n\n initPayment();\n }, []);\n\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (isSubmitting) return;\n if (!formRef.current) return;\n\n if (!shift4Ref.current || !componentsRef.current) {\n errorPage(\"Payment form is not ready yet. Please try again.\");\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const token = await shift4Ref.current.createToken(componentsRef.current);\n if (!token?.id) {\n errorPage(\"Card tokenization failed. Please check your details and try again.\");\n }\n\n const request = {\n amount: amount,\n currency: currency,\n card: token.id,\n description\n };\n\n const threeDSecureToken = await shift4Ref.current.verifyThreeDSecure(request);\n if (!threeDSecureToken?.id) {\n errorPage(\"3D Secure verification failed. Please try again.\");\n }\n\n const apiBase = baseUrl + \"charge/\" + userId;\n const response = await fetch(`${apiBase}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify({\n tokenId: threeDSecureToken.id,\n amount: request.amount,\n currency: request.currency,\n description\n }),\n });\n const result = await response.json();\n if (!response.ok) {\n if (typeof errorPage === \"function\")\n errorPage(result);\n return;\n }\n\n if (typeof successPage === \"function\")\n successPage(result.message);\n \n \n\n\n\n } catch (err) {\n if (typeof errorPage === \"function\")\n errorPage(err.message);\n } finally {\n setIsSubmitting(false);\n\n\n\n }\n };\n\n return (\n <div\n style={{\n display: \"flex\",\n justifyContent: \"center\",\n width: \"100%\",\n boxSizing: \"border-box\"\n }}\n >\n <form\n ref={formRef}\n id=\"payment-form\"\n onSubmit={handleSubmit}\n method=\"post\"\n style={{\n display: \"grid\",\n gap: \"12px\",\n padding: \"20px\",\n backgroundColor: formbackgroundColor,\n borderRadius: formborderRadius,\n width: formwidth,\n boxSizing: \"border-box\"\n }}\n >\n\n\n <div style={{ display: \"grid\", gap: \"8px\" }}>\n <label style={{ fontWeight: \"500\", color: \"#555\" }}>Card number</label>\n <div\n data-shift4=\"number\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n\n <div style={{ display: \"grid\", gridTemplateColumns: \"1fr 1fr\", gap: \"10px\", marginTop: \"5px\" }}>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>Expiration</label>\n <div\n data-shift4=\"expiry\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n <div>\n <label style={{ fontWeight: \"500\", color: \"#555\", marginBottom: 2 }}>CVC</label>\n <div\n data-shift4=\"cvc\"\n className=\"form-control\"\n style={{\n padding: inputpadding,\n borderRadius: formborderRadius,\n border: \"1px solid #ccc\",\n boxShadow: \"inset 0 2px 4px rgba(0,0,0,0.05)\"\n }}\n />\n </div>\n </div>\n\n <button\n type=\"submit\"\n disabled={!isReady || isSubmitting}\n style={{\n marginTop: \"16px\",\n width: \"100%\",\n padding: inputpadding + 2,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: formborderRadius,\n fontWeight: \"600\",\n cursor: !isReady || isSubmitting ? \"not-allowed\" : \"pointer\",\n opacity: !isReady || isSubmitting ? 0.7 : 1\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n </div>\n );\n}\n","import React, { useState } from \"react\";\nimport {\n useStripe,\n useElements,\n CardNumberElement,\n CardExpiryElement,\n CardCvcElement,\n} from \"@stripe/react-stripe-js\";\n\nexport default function StripePaymentForm({\n amount,\n currency,\n color = \"#556cd6\",\n formWidth = 400,\n formBorderRadius = 20,\n formBackgroundColor = \"#fff\",\n inputPadding = 12,\n baseUrl,\n userId,\n successPage,\n errorPage,\n description = \"\",\n}) {\n const stripe = useStripe();\n const elements = useElements();\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const handleSubmit = async (e) => {\n e.preventDefault();\n\n if (!stripe || !elements) return;\n\n const card = elements.getElement(CardNumberElement);\n if (!card) return errorPage?.(\"Card element not found\");\n\n const { error, paymentMethod } = await stripe.createPaymentMethod({\n type: \"card\",\n card,\n });\n\n if (error) {\n errorPage?.(error.message);\n return;\n }\n\n setIsSubmitting(true);\n\n try {\n const res = await fetch(`${baseUrl}charge/${userId}`, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n tokenId: paymentMethod.id,\n amount,\n currency,\n description,\n }),\n });\n\n const result = await res.json();\n\n if (!res.ok) {\n errorPage?.(result);\n return;\n }\n\n successPage?.(result.message);\n } catch (err) {\n errorPage?.(err.message);\n } finally {\n setIsSubmitting(false);\n }\n };\n\n return (\n <form\n onSubmit={handleSubmit}\n style={{\n maxWidth: `${formWidth}px`,\n margin: \"30px auto\",\n padding: \"20px\",\n borderRadius: `${formBorderRadius}px`,\n backgroundColor: formBackgroundColor,\n display: \"grid\",\n gap: \"14px\",\n }}\n >\n <CardNumberElement />\n <CardExpiryElement />\n <CardCvcElement />\n\n <button\n type=\"submit\"\n disabled={isSubmitting}\n style={{\n padding: `${inputPadding + 2}px`,\n backgroundColor: color,\n color: \"white\",\n border: \"none\",\n borderRadius: `${formBorderRadius}px`,\n cursor: isSubmitting ? \"not-allowed\" : \"pointer\",\n }}\n >\n {isSubmitting ? \"Processing...\" : \"Buy now\"}\n </button>\n </form>\n );\n}"],"names":["ShiftPaymentForm","_ref","amount","currency","color","_ref$formwidth","formwidth","_ref$formborderRadius","formborderRadius","_ref$formbackgroundCo","formbackgroundColor","_ref$inputpadding","inputpadding","baseUrl","userId","successPage","errorPage","description","formRef","useRef","initializedRef","shift4Ref","componentsRef","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useState3","_useState4","isReady","setIsReady","useEffect","current","initPayment","_ref2","_asyncToGenerator","_regenerator","m","_callee","response","_yield$response$json","publicKeys","isProd","script","_t","w","_context","p","n","fetch","v","ok","json","document","createElement","src","async","onload","window","Shift4","createComponentGroup","automount","onerror","setError","body","appendChild","console","error","a","apply","arguments","handleSubmit","_ref3","_callee2","e","token","request","threeDSecureToken","apiBase","result","_t2","_context2","preventDefault","createToken","id","card","verifyThreeDSecure","concat","method","headers","JSON","stringify","tokenId","message","f","_x","React","style","display","justifyContent","width","boxSizing","ref","onSubmit","gap","padding","backgroundColor","borderRadius","fontWeight","className","border","boxShadow","gridTemplateColumns","marginTop","marginBottom","type","disabled","cursor","opacity","StripePaymentForm","_ref$color","_ref$formWidth","formWidth","_ref$formBorderRadius","formBorderRadius","_ref$formBackgroundCo","formBackgroundColor","_ref$inputPadding","inputPadding","_ref$description","stripe","useStripe","elements","useElements","_yield$stripe$createP","paymentMethod","res","getElement","CardNumberElement","createPaymentMethod","maxWidth","margin","CardExpiryElement","CardCvcElement"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "logix-pay",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "A React component library for integrating Logix payments with Logix applications. Provides a seamless and secure payment experience using Stripe or Shift4 payment gateways.",
5
5
  "license": "ISC",
6
6
  "type": "module",