@pinerohit11/testwidget 0.1.21 → 0.1.23

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. package/.next/app-build-manifest.json +6 -0
  2. package/.next/build-manifest.json +13 -2
  3. package/.next/cache/webpack/client-development/0.pack.gz +0 -0
  4. package/.next/cache/webpack/client-development/1.pack.gz +0 -0
  5. package/.next/cache/webpack/client-development/10.pack.gz +0 -0
  6. package/.next/cache/webpack/client-development/14.pack.gz +0 -0
  7. package/.next/cache/webpack/client-development/15.pack.gz +0 -0
  8. package/.next/cache/webpack/client-development/16.pack.gz +0 -0
  9. package/.next/cache/webpack/client-development/17.pack.gz +0 -0
  10. package/.next/cache/webpack/client-development/18.pack.gz +0 -0
  11. package/.next/cache/webpack/client-development/19.pack.gz +0 -0
  12. package/.next/cache/webpack/client-development/2.pack.gz +0 -0
  13. package/.next/cache/webpack/client-development/3.pack.gz +0 -0
  14. package/.next/cache/webpack/client-development/4.pack.gz +0 -0
  15. package/.next/cache/webpack/client-development/5.pack.gz +0 -0
  16. package/.next/cache/webpack/client-development/6.pack.gz +0 -0
  17. package/.next/cache/webpack/client-development/7.pack.gz +0 -0
  18. package/.next/cache/webpack/client-development/index.pack.gz +0 -0
  19. package/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
  20. package/.next/cache/webpack/client-development-fallback/0.pack.gz +0 -0
  21. package/.next/cache/webpack/client-development-fallback/1.pack.gz +0 -0
  22. package/.next/cache/webpack/client-development-fallback/index.pack.gz +0 -0
  23. package/.next/cache/webpack/client-development-fallback/index.pack.gz.old +0 -0
  24. package/.next/cache/webpack/server-development/0.pack.gz +0 -0
  25. package/.next/cache/webpack/server-development/10.pack.gz +0 -0
  26. package/.next/cache/webpack/server-development/11.pack.gz +0 -0
  27. package/.next/cache/webpack/server-development/12.pack.gz +0 -0
  28. package/.next/cache/webpack/server-development/13.pack.gz +0 -0
  29. package/.next/cache/webpack/server-development/14.pack.gz +0 -0
  30. package/.next/cache/webpack/server-development/15.pack.gz +0 -0
  31. package/.next/cache/webpack/server-development/2.pack.gz +0 -0
  32. package/.next/cache/webpack/server-development/4.pack.gz +0 -0
  33. package/.next/cache/webpack/server-development/5.pack.gz +0 -0
  34. package/.next/cache/webpack/server-development/6.pack.gz +0 -0
  35. package/.next/cache/webpack/server-development/7.pack.gz +0 -0
  36. package/.next/cache/webpack/server-development/8.pack.gz +0 -0
  37. package/.next/cache/webpack/server-development/9.pack.gz +0 -0
  38. package/.next/cache/webpack/server-development/index.pack.gz +0 -0
  39. package/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
  40. package/.next/fallback-build-manifest.json +28 -0
  41. package/.next/server/_error.js +76 -0
  42. package/.next/server/app/_not-found/page.js +12 -23
  43. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/page.js +15 -15
  45. package/.next/server/app/page_client-reference-manifest.js +1 -1
  46. package/.next/server/app-paths-manifest.json +2 -0
  47. package/.next/server/middleware-build-manifest.js +13 -2
  48. package/.next/server/pages/_app.js +46 -0
  49. package/.next/server/pages/_document.js +66 -0
  50. package/.next/server/pages/_error.js +76 -0
  51. package/.next/server/pages-manifest.json +5 -1
  52. package/.next/server/vendor-chunks/@swc.js +20 -0
  53. package/.next/server/vendor-chunks/bootstrap.js +2 -2
  54. package/.next/server/vendor-chunks/next.js +537 -0
  55. package/.next/server/webpack-runtime.js +6 -1
  56. package/.next/static/chunks/_error.js +28 -0
  57. package/.next/static/chunks/app/layout.js +8 -30
  58. package/.next/static/chunks/app/page.js +23 -1
  59. package/.next/static/chunks/fallback/amp.js +885 -0
  60. package/.next/static/chunks/fallback/main.js +2057 -0
  61. package/.next/static/chunks/fallback/pages/_app.js +28 -0
  62. package/.next/static/chunks/fallback/pages/_error.js +28 -0
  63. package/.next/static/chunks/fallback/react-refresh.js +62 -0
  64. package/.next/static/chunks/fallback/webpack.js +1210 -0
  65. package/.next/static/chunks/main.js +2057 -0
  66. package/.next/static/chunks/pages/_app.js +28 -0
  67. package/.next/static/chunks/pages/_error.js +28 -0
  68. package/.next/static/chunks/react-refresh.js +62 -0
  69. package/.next/static/chunks/webpack.js +1 -1
  70. package/.next/static/css/app/layout.css +0 -699
  71. package/.next/static/css/app/page.css +9 -9
  72. package/.next/static/development/_buildManifest.js +1 -1
  73. package/.next/static/webpack/09b6bf9d551718e6.webpack.hot-update.json +1 -0
  74. package/.next/static/webpack/255312d1130cf6ec.webpack.hot-update.json +1 -0
  75. package/.next/static/webpack/300fc5b668ca0906.webpack.hot-update.json +1 -0
  76. package/.next/static/webpack/32e5c09644d13662.webpack.hot-update.json +1 -0
  77. package/.next/static/webpack/33df40926ef177b8.webpack.hot-update.json +1 -0
  78. package/.next/static/webpack/5a1cff97146b50bb.webpack.hot-update.json +1 -0
  79. package/.next/static/webpack/605a7773ba1d798b.webpack.hot-update.json +1 -0
  80. package/.next/static/webpack/77e53aa0ed10b537.webpack.hot-update.json +1 -0
  81. package/.next/static/webpack/7d5deda3951c8e99.webpack.hot-update.json +1 -0
  82. package/.next/static/webpack/7e9ea68e1248f8c4.webpack.hot-update.json +1 -0
  83. package/.next/static/webpack/8b5b5419d114117b.webpack.hot-update.json +1 -0
  84. package/.next/static/webpack/912fdb75a65577d9.webpack.hot-update.json +1 -0
  85. package/.next/static/webpack/954c98691962cd98.webpack.hot-update.json +1 -0
  86. package/.next/static/webpack/973f3512b11e3d54.webpack.hot-update.json +1 -0
  87. package/.next/static/webpack/97dcbdd43d9b0185.webpack.hot-update.json +1 -0
  88. package/.next/static/webpack/a6280d0500ceb91c.webpack.hot-update.json +1 -0
  89. package/.next/static/webpack/app/layout.255312d1130cf6ec.hot-update.js +31 -0
  90. package/.next/static/webpack/app/layout.300fc5b668ca0906.hot-update.js +31 -0
  91. package/.next/static/webpack/app/layout.32e5c09644d13662.hot-update.js +32 -0
  92. package/.next/static/webpack/app/layout.33df40926ef177b8.hot-update.js +21 -0
  93. package/.next/static/webpack/app/layout.5a1cff97146b50bb.hot-update.js +21 -0
  94. package/.next/static/webpack/app/layout.7e9ea68e1248f8c4.hot-update.js +31 -0
  95. package/.next/static/webpack/app/layout.954c98691962cd98.hot-update.js +21 -0
  96. package/.next/static/webpack/app/layout.a6280d0500ceb91c.hot-update.js +22 -0
  97. package/.next/static/webpack/app/layout.c6e67d2545c174a8.hot-update.js +21 -0
  98. package/.next/static/webpack/app/layout.f678ffea2e9fb9a3.hot-update.js +32 -0
  99. package/.next/static/webpack/app/page.09b6bf9d551718e6.hot-update.js +32 -0
  100. package/.next/static/webpack/app/page.605a7773ba1d798b.hot-update.js +32 -0
  101. package/.next/static/webpack/app/page.7d5deda3951c8e99.hot-update.js +22 -0
  102. package/.next/static/webpack/app/page.912fdb75a65577d9.hot-update.js +22 -0
  103. package/.next/static/webpack/app/page.954c98691962cd98.hot-update.js +22 -0
  104. package/.next/static/webpack/c6e67d2545c174a8.webpack.hot-update.json +1 -0
  105. package/.next/static/webpack/f678ffea2e9fb9a3.webpack.hot-update.json +1 -0
  106. package/.next/static/webpack/webpack.09b6bf9d551718e6.hot-update.js +18 -0
  107. package/.next/static/webpack/webpack.255312d1130cf6ec.hot-update.js +18 -0
  108. package/.next/static/webpack/webpack.300fc5b668ca0906.hot-update.js +18 -0
  109. package/.next/static/webpack/webpack.32e5c09644d13662.hot-update.js +18 -0
  110. package/.next/static/webpack/webpack.33df40926ef177b8.hot-update.js +18 -0
  111. package/.next/static/webpack/webpack.5a1cff97146b50bb.hot-update.js +18 -0
  112. package/.next/static/webpack/webpack.605a7773ba1d798b.hot-update.js +18 -0
  113. package/.next/static/webpack/webpack.77e53aa0ed10b537.hot-update.js +18 -0
  114. package/.next/static/webpack/webpack.7d5deda3951c8e99.hot-update.js +18 -0
  115. package/.next/static/webpack/webpack.7e9ea68e1248f8c4.hot-update.js +18 -0
  116. package/.next/static/webpack/webpack.8b5b5419d114117b.hot-update.js +18 -0
  117. package/.next/static/webpack/webpack.912fdb75a65577d9.hot-update.js +18 -0
  118. package/.next/static/webpack/webpack.954c98691962cd98.hot-update.js +18 -0
  119. package/.next/static/webpack/webpack.973f3512b11e3d54.hot-update.js +18 -0
  120. package/.next/static/webpack/webpack.97dcbdd43d9b0185.hot-update.js +18 -0
  121. package/.next/static/webpack/webpack.a6280d0500ceb91c.hot-update.js +18 -0
  122. package/.next/static/webpack/webpack.c6e67d2545c174a8.hot-update.js +18 -0
  123. package/.next/static/webpack/webpack.f678ffea2e9fb9a3.hot-update.js +18 -0
  124. package/.next/trace +54 -0
  125. package/dist/index.cjs +529 -1
  126. package/dist/index.js +495 -1
  127. package/package.json +1 -1
  128. package/dist/index.css +0 -1
package/dist/index.cjs CHANGED
@@ -1 +1,529 @@
1
- "use strict";var ae=Object.create;var y=Object.defineProperty,oe=Object.defineProperties,te=Object.getOwnPropertyDescriptor,ie=Object.getOwnPropertyDescriptors,re=Object.getOwnPropertyNames,E=Object.getOwnPropertySymbols,ne=Object.getPrototypeOf,C=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable;var M=(i,t,l)=>t in i?y(i,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):i[t]=l,d=(i,t)=>{for(var l in t||(t={}))C.call(t,l)&&M(i,l,t[l]);if(E)for(var l of E(t))le.call(t,l)&&M(i,l,t[l]);return i},c=(i,t)=>oe(i,ie(t));var pe=(i,t)=>{for(var l in t)y(i,l,{get:t[l],enumerable:!0})},X=(i,t,l,q)=>{if(t&&typeof t=="object"||typeof t=="function")for(let h of re(t))!C.call(i,h)&&h!==l&&y(i,h,{get:()=>t[h],enumerable:!(q=te(t,h))||q.enumerable});return i};var N=(i,t,l)=>(l=i!=null?ae(ne(i)):{},X(t||!i||!i.__esModule?y(l,"default",{value:i,enumerable:!0}):l,i)),de=i=>X(y({},"__esModule",{value:!0}),i);var me={};pe(me,{PaywithFractal:()=>ce});module.exports=de(me);var ke=require("bootstrap/dist/css/bootstrap.min.css");var U=N(require("axios"),1),e=N(require("react"),1),b=require("react-bootstrap");function ce({name:i,amount:t,orderId:l,fractalPayClientKey:q}){let h="http://192.168.1.52:8082/",Q="http://192.168.1.52:8081/";console.log(i,"name",window==null?void 0:window.DatacapWebToken);let[G,Y]=(0,e.useState)(""),[m,p]=(0,e.useState)({}),[V,j]=(0,e.useState)(!1),[n,K]=(0,e.useState)({name:"John Doe",card_number:"4761 7310 0000 0043",exp_month:"12",exp_year:"2024",cvv:"201",zip:""}),[xe,u]=(0,e.useState)(!1),[T,v]=(0,e.useState)(!1),z=async o=>{var r,f,J,W,S,F,w;o.preventDefault();let a={description:"widget payment",amount:t||"1.00",phone_number:"1234567908",zip:n.zip,orderId:l||"",fractalpayPublicKey:q};if(Object.keys(m).length<1)try{u(!0);let x=await U.default.post(`${h}create-widget-order`,a,{headers:{"Content-Type":"application/json"}});if(x.data&&((r=x.data)!=null&&r.result)){console.log("token",(f=x.data)==null?void 0:f.data),Y((W=(J=x.data)==null?void 0:J.data)==null?void 0:W.dctoken);let _=async k=>{var A,P,Z;if(console.log("response for token call back",k),k.Error)alert("if"),console.log("Error: ",k),u(!1);else{let $={"Content-Type":"application/x-www-form-urlencoded"},ee=d({name:n.name,postal_code:n.zip},k);try{let s=await U.default.post(`${Q}quick-pay/${(P=(A=x.data)==null?void 0:A.data)==null?void 0:P.posSalesIdEncode}`,ee,{headers:$});u(!1),console.log("quick response",s),(Z=s==null?void 0:s.data)!=null&&Z.result&&(s==null?void 0:s.status)===200?(console.log("Payment success!",s==null?void 0:s.data),K({name:"John Doe",card_number:"4761 7310 0000 0043",exp_month:"12",exp_year:"2024",cvv:"201",zip:""})):console.log("Payment failed!",s==null?void 0:s.data)}catch(s){console.log("Error: ",s),u(!1)}}};window==null||window.DatacapWebToken.requestToken((F=(S=x.data)==null?void 0:S.data)==null?void 0:F.dctoken,"PaymentForm",_)}else u(!1),console.log("res",(w=x.data)==null?void 0:w.data)}catch(x){u(!1),console.log(x)}},R=o=>{let r=(""+o).replace(/\D/g,"").match(/^(\d{4})(\d{4})(\d{4})(\d{4})$/);return r?`${r[1]} ${r[2]} ${r[3]} ${r[4]}`:o},D=o=>{p(a=>c(d({},a),{card_number:""})),o&&o.match(/[a-zA-Z]/)?p(a=>c(d({},a),{card_number:"Invalid input. Please enter only numbers."})):o.length>12&&!(window!=null&&window.DatacapWebToken.validateCardNumber(o==null?void 0:o.replaceAll(" ","")))?p(a=>c(d({},a),{card_number:"Invalid Card Number"})):o.length?p({}):p(a=>c(d({},a),{card_number:"Card Number required"}))},I=o=>{p(a=>c(d({},a),{exp_month:""})),/^\d{0,2}$/.test(o)&&(o===""||parseInt(o,10)>=1&&parseInt(o,10)<=12)?p({}):o.length?p(a=>c(d({},a),{exp_month:"Value should be between 1 and 12"})):p(a=>c(d({},a),{exp_month:"Month is required"}))},O=o=>{p(a=>c(d({},a),{exp_year:""})),window!=null&&window.DatacapWebToken.validateExpirationDate(n.exp_month,o)?p({}):o.length?p(a=>c(d({},a),{exp_year:"Invalid Expiration Date."})):p(a=>c(d({},a),{exp_year:"Year is required"}))},B=o=>{p(a=>c(d({},a),{cvv:""})),window!=null&&window.DatacapWebToken.validateCVV(o)?p({}):o.length?p(a=>c(d({},a),{cvv:"Invalid CVV."})):p(a=>c(d({},a),{cvv:"CVV is required"}))},g=o=>{let a=o.target.getAttribute("data-token")||"",r=o.target.value;K(f=>c(d({},f),{[a]:r})),a==="card_number"&&D(r),a==="exp_month"&&I(r),a==="exp_year"&&O(r),a==="cvv"&&B(r)};(0,e.useEffect)(()=>{let o="my-script";if(!document.getElementById(o)){let r=document.createElement("script");r.src="https://token-cert.dcap.com/v1/client",r.id=o,r.async=!0,r.onload=()=>{typeof window!="undefined"&&window.DatacapWebToken?console.log("DatacapWebToken",window.DatacapWebToken):console.log("DatacapWebToken is not loaded yet.")},document.head.appendChild(r)}return()=>{let r=document.getElementById(o);r&&document.head.removeChild(r)}},[]);let L=()=>{v(!1)},H=()=>{console.log("open"),v(!0)};return console.log(T,"open"),e.default.createElement(e.default.Fragment,null,e.default.createElement("div",{style:{width:"100%",textAlign:"center"}},e.default.createElement(b.Button,{onClick:H},"Show")),e.default.createElement(b.Modal,{show:T,onHide:L,backdrop:"static",keyboard:!1,size:"lg"},e.default.createElement(b.Modal.Body,null,e.default.createElement("div",{className:"bg-black"},e.default.createElement("div",{className:"container bg-black"},e.default.createElement("div",{className:"row bg-light no-gutters"},e.default.createElement("div",{className:"col-sm-12"},e.default.createElement("div",{className:"bd-example bd-example-tabs right-tabs mttabs m-3 "},e.default.createElement("div",{className:"payment-popup"},e.default.createElement("button",{className:"close-pop",onClick:()=>{v(!1)}},e.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:37,height:37,viewBox:"0 0 21 21"},e.default.createElement("path",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",d:"m7.5 7.5l6 6m0-6l-6 6"}))),e.default.createElement("div",{className:"row"},e.default.createElement("div",{className:"comp-name"},e.default.createElement("img",{src:"https://invoicestaging.skysystemz.com/assets/products/65c49a2740ff1.png",alt:"",className:"client-logo"})),e.default.createElement("div",{className:""},e.default.createElement("div",{id:"Checkout",className:"inline"},e.default.createElement("div",{className:"header"},e.default.createElement("h1",null,"Pay"),e.default.createElement("i",{className:"fa fa-qrcode fa-2x",id:"qrIcon",title:"Show QR Code",onClick:()=>j(!V)})),e.default.createElement("div",{id:"qrCode",style:{display:V?"block":"none"}},e.default.createElement("img",{src:"data:image/png;base64,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",alt:"QRCode",srcSet:""})),e.default.createElement("form",{id:"PaymentForm",className:"payment-form",onSubmit:z},e.default.createElement("input",{type:"hidden",id:"dctoken",defaultValue:G,name:"dctoken"}),e.default.createElement("div",{className:"form-group top-amnt"},e.default.createElement("div",{className:"amtleft"},e.default.createElement("label",{htmlFor:"Amount"},"Payment amount"),e.default.createElement("div",{className:"amount-placeholder"},e.default.createElement("span",null,"$"),e.default.createElement("span",null," ",t||1," "))),e.default.createElement("div",{className:"card-row"},e.default.createElement("span",{className:"visa"}),e.default.createElement("span",{className:"mastercard"}),e.default.createElement("span",{className:"amex"}),e.default.createElement("span",{className:"discover"}))),e.default.createElement("div",{className:"form-group"},e.default.createElement("label",{htmlFor:"NameOnCard"},"Name on card"),e.default.createElement("input",{"data-token":"name",id:"NameOnCard",className:"form-control required",type:"text",maxLength:100,placeholder:"name",value:n==null?void 0:n.name,onChange:g}),e.default.createElement("span",{id:"NameOnCard-error",style:{color:"red"}})),e.default.createElement("div",{className:"form-group"},e.default.createElement("input",{"data-token":"card_number",className:"null card-image form-control required",type:"text",maxLength:19,placeholder:"0000 0000 0000 0000",value:R(n==null?void 0:n.card_number),onChange:g}),m.card_number&&e.default.createElement("span",{id:"card_number-error",style:{color:"red"}},m.card_number)),e.default.createElement("div",{className:"expiry-date-group form-group"},e.default.createElement("input",{"data-token":"exp_month",className:"form-control required",type:"text",placeholder:"MM",maxLength:2,value:n==null?void 0:n.exp_month,onChange:g}),m.exp_month&&e.default.createElement("span",{id:"exp_month-error",style:{color:"red"}},m.exp_month)),e.default.createElement("div",{className:"expiry-date-group form-group"},e.default.createElement("input",{"data-token":"exp_year",className:"form-control required",type:"text",placeholder:"YYYY",maxLength:4,value:n==null?void 0:n.exp_year,onChange:g}),m.exp_year&&e.default.createElement("span",{id:"exp_year-error",style:{color:"red"}},m.exp_year)),e.default.createElement("div",{className:"security-code-group form-group"},e.default.createElement("div",{className:"input-container"},e.default.createElement("input",{"data-token":"cvv",className:"form-control required",type:"text",maxLength:4,placeholder:"CVC",value:n==null?void 0:n.cvv,onChange:g}),e.default.createElement("i",{id:"cvc",className:"fa fa-question-circle"})),m.cvv&&e.default.createElement("span",{id:"cvv-error",style:{color:"red"}},m.cvv),e.default.createElement("div",{className:"cvc-preview-container two-card hide"},e.default.createElement("div",{className:"amex-cvc-preview"}),e.default.createElement("div",{className:"visa-mc-dis-cvc-preview"}))),e.default.createElement("div",{className:"zip-code-group form-group"},e.default.createElement("label",{htmlFor:"ZIPCode"},"Postal code"),e.default.createElement("div",{className:"input-container"},e.default.createElement("input",{id:"ZIPCode","data-token":"zip",className:"form-control required",type:"text",maxLength:7,placeholder:"000000",value:n==null?void 0:n.zip,onChange:g}),e.default.createElement("a",{tabIndex:0,role:"button","data-toggle":"popover","data-trigger":"focus","data-placement":"left","data-content":"Enter the ZIP/Postal code for your credit card billing address."},e.default.createElement("i",{className:"fa fa-question-circle"})),e.default.createElement("span",{id:"ZIPCode-error",style:{color:"red",display:"none"}},"This field is required"))),e.default.createElement("button",{id:"PayButton",className:"btn btn-block btn-success submit-button",type:"submit"},e.default.createElement("span",{className:"submit-button-lock"}),e.default.createElement("span",{className:"align-middle"},"Pay $",t||1))),e.default.createElement("div",{className:"powerd-by-part",style:{display:"flex",fontSize:"12px",textAlign:"center",alignItems:"center",justifyContent:"center",margin:"8px 0 20px 0"}},e.default.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,viewBox:"0 0 26 26"},e.default.createElement("path",{fill:"currentColor",d:"M23.633 5.028a1.074 1.074 0 0 0-.777-.366c-2.295-.06-5.199-2.514-7.119-3.477C14.551.592 13.768.201 13.18.098a1.225 1.225 0 0 0-.36.001c-.588.103-1.371.494-2.556 1.087c-1.92.962-4.824 3.416-7.119 3.476a1.08 1.08 0 0 0-.778.366a1.167 1.167 0 0 0-.291.834c.493 10.023 4.088 16.226 10.396 19.831c.164.093.346.141.527.141s.363-.048.528-.141c6.308-3.605 9.902-9.808 10.396-19.831a1.161 1.161 0 0 0-.29-.834zM18.617 8.97l-5.323 7.855c-.191.282-.491.469-.788.469c-.298 0-.629-.163-.838-.372l-3.752-3.753a.656.656 0 0 1 0-.926l.927-.929a.658.658 0 0 1 .926 0l2.44 2.44l4.239-6.257a.657.657 0 0 1 .91-.173l1.085.736a.657.657 0 0 1 .174.91z"})),"Secure payments powered by Fractal",e.default.createElement("img",{src:"https://ui.fractalpay.com/favicon.ico",alt:"Fractal logo",className:"powered-logo",style:{width:"18px",height:"18px",float:"right",padding:"2px",background:"#000",borderRadius:"4px",marginLeft:"5px"}}))))))))))))))}0&&(module.exports={PaywithFractal});
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
9
+ var __getProtoOf = Object.getPrototypeOf;
10
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __export = (target, all) => {
26
+ for (var name in all)
27
+ __defProp(target, name, { get: all[name], enumerable: true });
28
+ };
29
+ var __copyProps = (to, from, except, desc) => {
30
+ if (from && typeof from === "object" || typeof from === "function") {
31
+ for (let key of __getOwnPropNames(from))
32
+ if (!__hasOwnProp.call(to, key) && key !== except)
33
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
34
+ }
35
+ return to;
36
+ };
37
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
38
+ // If the importer is in node compatibility mode or this is not an ESM
39
+ // file that has been converted to a CommonJS file using a Babel-
40
+ // compatible transform (i.e. "__esModule" has not been set), then set
41
+ // "default" to the CommonJS "module.exports" for node compatibility.
42
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
43
+ mod
44
+ ));
45
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
46
+
47
+ // src/app/index.ts
48
+ var app_exports = {};
49
+ __export(app_exports, {
50
+ PaywithFractal: () => PaywithFractal
51
+ });
52
+ module.exports = __toCommonJS(app_exports);
53
+
54
+ // src/app/components/Greet.tsx
55
+ var import_axios = __toESM(require("axios"), 1);
56
+ var import_react = __toESM(require("react"), 1);
57
+ var import_react_bootstrap = require("react-bootstrap");
58
+
59
+ // src/app/globals.css
60
+ var import_style_inject = __toESM(require("#style-inject"));
61
+ (0, import_style_inject.default)('body {\n background: #d5d5d5;\n font-family: "Poppins", sans-serif;\n}\ninput::placeholder {\n font-weight: 500;\n opacity: 0.5;\n color: #35254D !important;\n}\n.bg-light {\n background: #d5d5d5 !important;\n height: 100vh;\n}\n.payment-popup {\n padding: 0px;\n background: #fff;\n border-radius: 20px;\n position: relative;\n margin: 0 auto;\n}\n@media (max-width:460px) {\n .payment-popup {\n padding: 35px 25px;\n width: 98%;\n }\n}\n.close-pop {\n position: absolute;\n right: 8px;\n top: 8px;\n border: 0;\n padding: 0;\n background: none !important;\n}\n.amex {\n}\n.visa {\n}\n.mastercard {\n}\n.discover {\n}\n.expiry-date-group {\n float: left;\n width: 30%;\n}\n.expiry-date-group input {\n width: calc(100% + 1px);\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.expiry-date-group input:focus {\n position: relative;\n z-index: 10;\n}\n.security-code-group {\n float: right;\n width: 40%;\n position: relative;\n}\n.security-code-group input {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.zip-code-group {\n clear: both;\n}\n#submitButton {\n outline: 0 !important;\n height: 46px;\n font-size: 16px;\n background-color: #161616 !important;\n border: none;\n display: block;\n width: 100%;\n border-radius: 180px;\n}\n#PayButton {\n outline: 0 !important;\n height: 46px;\n font-size: 16px;\n background-color: #161616 !important;\n border: none;\n display: block;\n width: 100%;\n border-radius: 180px;\n}\n#PayButton:hover {\n background-color: #61C699 !important;\n}\n#PayButton:active {\n background-color: #61C699 !important;\n}\n#PayButton:disabled {\n background: rgb(172, 44, 170) !important;\n color: #FFF !important;\n}\n.form-control {\n color: #35254D;\n}\n.container {\n margin-top: 10px;\n}\n#Checkout {\n z-index: 100001;\n width: 100%;\n height: 100%;\n min-height: 100%;\n background: 0 0 #ffffff;\n border-radius: 24px;\n border: 1px solid #E0DFE2;\n margin-left: auto;\n margin-right: auto;\n display: block;\n}\n#Checkout .header {\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n padding: 8px;\n border-bottom: 1px solid #DEDEDE;\n margin: 0 10px 20px 10px;\n}\n#Checkout .header button {\n border: 0;\n background: none;\n padding: 0;\n}\n#Checkout h1 {\n margin: 0;\n flex: 1;\n padding: 10px;\n font-size: 23px;\n font-weight: 500;\n color: #35254D;\n display: flex;\n}\n#Checkout > form {\n margin: 0 25px 10px 25px;\n}\nlabel {\n color: rgba(53, 37, 77, 0.6);\n margin-bottom: 2px;\n text-transform: uppercase;\n font-family: "IBM Plex Mono", monospace;\n font-weight: 500;\n font-size: 12px;\n}\n.input-container {\n position: relative;\n}\n.input-container input {\n padding-right: 25px;\n}\n#zipcode {\n text-transform: capitalize !important;\n}\n#zipcode {\n width: 18px;\n position: absolute;\n right: 8px;\n top: 9px;\n}\n#zipcode .zip-tip {\n display: none;\n background-color: rgb(0, 0, 0, 0.4);\n padding: 5px 8px;\n border-radius: 6px;\n position: absolute;\n right: 26px;\n top: -9px;\n font-size: 12.5px;\n text-transform: capitalize !important;\n color: #fff;\n width: 240px;\n line-height: 16px;\n}\n#zipcode .zip-tip:before {\n width: 0;\n height: 0;\n border-top: 7px solid transparent;\n border-bottom: 7px solid transparent;\n border-left: 7px solid #000;\n opacity: 0.4;\n position: absolute;\n right: -7px;\n top: 50%;\n transform: translateY(-50%);\n content: "";\n}\n#zipcode:hover .zip-tip {\n display: block;\n}\n.input-container > i,\na[role=button] {\n color: #d3d3d3;\n width: 25px;\n height: 30px;\n line-height: 30px;\n font-size: 16px;\n position: absolute;\n top: 5px;\n right: 6px;\n cursor: pointer;\n text-align: center;\n}\n.input-container > i:hover,\na[role=button]:hover {\n color: #777;\n}\n.amount-placeholder {\n white-space: nowrap;\n font-size: 44px;\n font-weight: 600;\n line-height: 40px;\n}\n.amount-placeholder > button {\n float: right;\n width: 60px;\n}\n.amount-placeholder > span {\n line-height: 34px;\n}\n.top-amnt {\n display: flex;\n margin-bottom: 10px;\n align-items: center;\n justify-content: space-between;\n}\n.amtleft {\n text-align: center;\n}\n.amtleft span {\n color: #35254D;\n margin: 0 -5px;\n}\n.card-row {\n text-align: right;\n margin: 8px 0 0 0;\n max-width: 85px;\n line-height: 20px;\n}\n.yer {\n border-radius: 0;\n}\n.card-row span {\n width: 33px;\n height: 21px;\n margin: 0 2px;\n background-repeat: no-repeat;\n display: inline-block;\n background-size: contain;\n}\n.card-image {\n background-repeat: no-repeat;\n padding-right: 50px;\n background-position: right 2px center;\n background-size: auto 90%;\n}\n.cvc-preview-container {\n position: absolute;\n z-index: 9999;\n right: -71px;\n top: -54px;\n width: 165px;\n border-radius: 5px;\n padding: 5px;\n background-color: rgb(0, 0, 0, 0.3);\n display: none;\n}\n.cvc-preview-container:before {\n position: absolute;\n left: 50%;\n transform: translate(-50%);\n bottom: -5px;\n width: 0;\n height: 0;\n border-left: 5px solid transparent;\n border-right: 5px solid transparent;\n border-top: 5px solid #000;\n opacity: 0.3;\n content: "";\n}\n.security-code-group #cvc:hover .cvc-preview-container {\n display: block;\n}\n.cvc-preview-container.two-card div {\n width: 50%;\n height: 45px;\n}\n.cvc-preview-container.two-card div.amex-cvc-preview {\n float: right;\n}\n.cvc-preview-container.two-card div.visa-mc-dis-cvc-preview {\n float: left;\n}\n.amex-cvc-preview {\n background: url(data:image/png;base64,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) center center/contain no-repeat;\n}\n.visa-mc-dis-cvc-preview {\n background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOYAAACOCAMAAAASE4S+AAAAAXNSR0IArs4c6QAAAadQTFRFAAAAzbFj+NyAyLNg+N2DzbRk+96CzrVj+96AzrNj+92By7Rl+92AzbRl/eCDzrRl/t+DzrVl/t+CzbVm/t+C3MFt3MFv/N2B/N6CzrRm/uCDzrRm/uCC7M93/N6CAAAAAQEBAgIBBAQCBQUDBwcECQgFDAsGDg0HEA4IEQ8JFRMLFxUMIBwQIR0RJSETKyYWLikYLyoYMCsZMSsZNC4bNzEcOTIdQDkhQTkhQzsiRT0jRj4kSkEmTEMnWE4tWU8uWk8uXFEvXVIwXlMwX1QxaV02bWA4bmE5cWQ6eGo+eWs+fW5Afm9Bi3pHjHtIkH9KmIZOmYdPnIlQnYpRo5BUppJVqJRWqpZXq5dYrJdYrZhZuaNfvaZhvqdiwKljwapjxK1lybFnyrJoy7NozrVm1Ltq171u2L5v2b9s2b9t2sBt3cNy3zEx3zIx38Rz4MVz4cZ04kI552NI6GVJ6Mx36s5368957dF674xb79J78NN78dV78tV789Z99Nd99dh+9rZv9th+9tl+99l/+duA+sx5+sx6+t2B+92B/N6B/d+C/uCD////AikOogAAAB90Uk5TACQkJSU9PT4+Q0NERJqav7/AwNjY4uLi4u7u8/P6+u6knPAAAAJkSURBVHja7d3pTxNBGMfxQbwAW06Pcj0tntQT8b7v+0JFxaserQcuKlQUFbFUaqvjH+1uG0lMfEETie4z39+bJ/tik/1kjt3MbDLGBFkWbeu0CtPZFq03v7KwxSpO04KKcmm7VZ32xeW2VK70nUF7tlj1afJnH+tA6k3UBWbUrHKBudJ0u8DsNtaJwIQJEyZMmDBhwoQJEyZMmPPCFCcCEyZMmDBhwoQJEyZMmDBhwoQJEyZMmDBhwoQJ010m+5swYcKECRMmTJgwYcKECRMmTJgwYcIMFfPHP8/vz5PLjnpzzmg2F07mxIhXVUYmwsjMVan0nbkQMrOeN1aY+zAsjHleNoRMf1x+rWa6KfjjM4RMvxdWN63+4QaYMGHC/EvM6b0HgpI6tvtoyq9vz+4/clcf89sJ2eiXIZGEyJD9sEl6RAa1MVPbpczsk8vT52SHHZCDUxelXxtzW/x4wPx+6cxn+0A2208PX9pB2aONef7xk3JrBjkth4Jysnf9fX1T0Czzmqx+6pcvcel/pJd5RRLXg1p6d0vWvdHKHJCeG2XljLVb5aZS5r2E3A6uTiUu2Km1klLK3CXxZDK5xd6RNYd3St+MTuaryr94G6y92iuy77X+b9rSi/d8usOEyZIXC5gsR7O5MN9bRexvwoQJEyZMmDBhwoQJEyZMmDBhwoT5vzNLLihLJu8CM2+6XGB2meUuMFeYyEf9ysmIqcsUtSuLmQZjGp8pdxafNxtjamIZ1f12MhOrDQ6uXhRLD4/nVb4/S/nx4XRsSeUY8prGtOI0186eKl8Xae3QSOxojTSUgT8BEvkXyqDHONgAAAAASUVORK5CYII=) center center/contain no-repeat;\n}\n.submit-button-lock {\n height: 15px;\n margin-top: -2px;\n margin-right: 7px;\n vertical-align: middle;\n background: url(data:image/png;base64,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NQxdFfpzGC4sNKwm7Hm4VXh+eHcELWJFREPEu0iPyNLIR4uNFksWd0bJR8VF1UdNRXtFl0VLl1gsWbPkRoxajCCmPRYfGxV7JHZyqffS3UuH4+ziCuPuLjNclrPs2nK15anLz66QX8FZcSoeGx8d3xD/iRPCqeVMrvRfuXflBNeTu4f7kufGK+eN8V34ZfyRBJeEsoTRRJfEXYljSa5JFUnjAk9BteB1sl/ygeSplJCUoykzqdGpzWmEtPi000IlYYqwK10zPSe9L8M0ozBDuspp1e5VE6JA0ZFMKHNZZruYjv5M9UiMJJslg1kLs2qy3mdHZZ/KUcwR5vTkmuRuyx3J88n7fjVmNXd1Z752/ob8wTXuaw6thdauXNu5Tnddwbrh9b7rj20gbUjZ8MtGy41lG99uit7UUaBRsL5gaLPv5sZCuUJR4b0tzlsObMVsFWzt3WazrWrblyJe0fViy+KK4k8l3JLr31l9V/ndzPaE7b2l9qX7d+B2CHfc3em681iZYlle2dCu4F2t5czyovK3u1fsvlZhW3FgD2mPZI+0MqiyvUqvakfVp+qk6oEaj5rmvep7t+2d2sfb17/fbX/TAY0DxQc+HhQcvH/I91BrrUFtxWHc4azDz+ui6rq/Z39ff0TtSPGRz0eFR6XHwo911TvU1zeoN5Q2wo2SxrHjccdv/eD1Q3sTq+lQM6O5+AQ4ITnx4sf4H++eDDzZeYp9qukn/Z/2ttBailqh1tzWibakNml7THvf6YDTnR3OHS0/m/989Iz2mZqzymdLz5HOFZybOZ93fvJCxoXxi4kXhzpXdD66tOTSna6wrt7LgZevXvG5cqnbvfv8VZerZ645XTt9nX297Yb9jdYeu56WX+x+aem172296XCz/ZbjrY6+BX3n+l37L972un3ljv+dGwOLBvruLr57/17cPel93v3RB6kPXj/Mejj9aP1j7OOiJwpPKp6qP6391fjXZqm99Oyg12DPs4hnj4a4Qy//lfmvT8MFz6nPK0a0RupHrUfPjPmM3Xqx9MXwy4yX0+OFvyn+tveV0auffnf7vWdiycTwa9HrmT9K3qi+OfrW9m3nZOjk03dp76anit6rvj/2gf2h+2P0x5Hp7E/4T5WfjT93fAn88ngmbWbm3/eE8/syOll+AAAAYFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////98JRy6AAAAH3RSTlMAAgYMEyIzOUpTVFViY3N2gJmcnaipq7fX3ebx+Pn8eTEuDQAAAI9JREFUKM/N0UkOglAQRdFHDyK90n64+9+lAyQgookjuaNKTlJJpaQlO2n6sW8SW/uCjrku2EloWDLhi3gDa4O3pTtA5Tt+BXDbiDsBmSQpAyZ3pRhoLUmS1QLxSilQPOcCSFfKgfxgPgfZ9ch7Y21LCcdd5wVH5SckEzkXc0ylpPJnMpETmX/d9eUpH1/5AKrsQVrz7YPBAAAAAElFTkSuQmCC) center center/contain no-repeat;\n width: 14px;\n display: inline-block;\n}\n.align-middle {\n vertical-align: middle;\n}\ninput {\n box-shadow: none !important;\n}\n.powerd-by-part {\n display: flex;\n font-size: 12px;\n text-align: center;\n align-items: center;\n justify-content: center;\n margin: 8px 0 20px 0;\n}\n.powered-logo {\n width: 18px;\n height: 18px;\n float: right;\n padding: 2px;\n background: #000000;\n border-radius: 4px;\n margin-left: 5px;\n}\n.comp-name {\n display: block;\n margin-bottom: 8px;\n}\n.client-logo {\n max-width: 140px;\n display: block;\n margin: auto;\n padding: 5px;\n}\n#qrCode {\n text-align: center;\n}\n#qrIcon {\n cursor: pointer;\n border: 1px solid rgb(252, 252, 252);\n padding: 10px;\n border-radius: 5px;\n background: #ffffff;\n}\n#target {\n display: none;\n text-align: center;\n transition: all 5s;\n padding: 5px;\n transition: max-height 0.5s, overflow 0.5s 0.5s;\n}\n.payment-success {\n border-radius: 24px;\n padding: 160px 24px;\n text-align: center;\n background:\n linear-gradient(white, white) padding-box,\n linear-gradient(\n to bottom,\n #B0E2CC,\n #DBFCEE) border-box;\n border-radius: 24px;\n border: 1px solid transparent;\n}\n.payment-icon {\n width: 60px;\n height: 60px;\n border-radius: 180px;\n border: #61C699 1px solid;\n margin: 0 auto 15px auto;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.payment-success h2 {\n font-size: 24px;\n color: #35254D;\n line-height: 25px;\n}\n.payment-success p {\n font-size: 14px;\n color: #9A92A6;\n line-height: 15px;\n}\n.bg-light {\n background: #fff !important;\n}\n.app-pagination .page-item .page-link {\n color: #2e2f2f;\n}\n.app-pagination .page-item.active .page-link {\n background-color: #a9aeb3;\n border-color: #ddd;\n color: #2e2f2f;\n}\n.app-pagination .page-item.disabled .page-link {\n color: #2e2f2f;\n}\n.app-pagination .page-item .page-link:hover {\n text-decoration: none;\n color: #2e2f2f;\n}\n.loader {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(255, 255, 255, 0.521);\n backdrop-filter: blur(.5px);\n z-index: 9999;\n}\n.lds-ellipsis {\n display: inline-block;\n position: relative;\n width: 80px;\n height: 80px;\n}\n.lds-ellipsis div {\n position: absolute;\n top: 33px;\n width: 13px;\n height: 13px;\n border-radius: 50%;\n background: #000;\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n}\n.lds-ellipsis div:nth-child(1) {\n left: 8px;\n animation: lds-ellipsis1 0.6s infinite;\n}\n.lds-ellipsis div:nth-child(2) {\n left: 8px;\n animation: lds-ellipsis2 0.6s infinite;\n}\n.lds-ellipsis div:nth-child(3) {\n left: 32px;\n animation: lds-ellipsis2 0.6s infinite;\n}\n.lds-ellipsis div:nth-child(4) {\n left: 56px;\n animation: lds-ellipsis3 0.6s infinite;\n}\n@keyframes lds-ellipsis1 {\n 0% {\n transform: scale(0);\n }\n 100% {\n transform: scale(1);\n }\n}\n@keyframes lds-ellipsis2 {\n 0% {\n transform: translate(0, 0);\n }\n 100% {\n transform: translate(24px, 0);\n }\n}\n@keyframes lds-ellipsis3 {\n 0% {\n transform: scale(1);\n }\n 100% {\n transform: scale(0);\n }\n}\n.requestPayment {\n max-width: 420px;\n}\n.paymentBtn {\n background-color: black;\n border: none;\n color: white;\n padding: 15px 32px;\n text-align: center;\n text-decoration: none;\n display: inline-block;\n font-size: 16px;\n margin: 4px 2px;\n border-radius: 180px;\n}\n.PayButton {\n outline: 0 !important;\n height: 46px;\n background-color: #161616 !important;\n width: 100%;\n color: #fff;\n margin: 10px 0;\n}\n.requpay-main {\n max-width: 400px;\n width: 100%;\n height: auto;\n padding: 20px;\n border-radius: 20px !important;\n position: relative;\n margin: 30px auto;\n}\n.requpay-main h3 {\n font-size: 20px;\n padding-left: 10px;\n}\n.requpay-in {\n width: 100%;\n background: 0 0 #ffffff;\n border-radius: 24px;\n border: 1px solid #e0dfe2;\n padding: 20px;\n}\n.requpay-in .mb-1 {\n margin-bottom: 10px;\n}\n.requpay-in .pay-amount {\n position: relative;\n}\n.requpay-in .pay-amount input {\n padding-left: 20px;\n}\n.requpay-in .pay-amount .dlr-sign {\n position: absolute;\n left: 10px;\n top: 7px;\n}\n.requpay-in .PayButton {\n border-radius: 4px;\n border: 0;\n height: 43px;\n}\n');
62
+
63
+ // src/app/components/Greet.tsx
64
+ var import_bootstrap_min = require("bootstrap/dist/css/bootstrap.min.css");
65
+ function PaywithFractal({ name, amount, orderId, fractalPayClientKey }) {
66
+ const baseUrl = "http://192.168.1.52:8082/";
67
+ const masterBaseUrl = "http://192.168.1.52:8081/";
68
+ console.log(name, "name", window == null ? void 0 : window.DatacapWebToken);
69
+ const [dcToken, setDcToken] = (0, import_react.useState)("");
70
+ const [error, setError] = (0, import_react.useState)({});
71
+ const [toggleQr, setToggleQr] = (0, import_react.useState)(false);
72
+ const [formData, setFormData] = (0, import_react.useState)({
73
+ name: "John Doe",
74
+ card_number: "4761 7310 0000 0043",
75
+ exp_month: "12",
76
+ exp_year: "2024",
77
+ cvv: "201",
78
+ zip: ""
79
+ });
80
+ const [loading, setLoading] = (0, import_react.useState)(false);
81
+ const [show, setShow] = (0, import_react.useState)(false);
82
+ const handleSubmit = async (e) => {
83
+ var _a, _b, _c, _d, _e, _f, _g;
84
+ e.preventDefault();
85
+ const data = {
86
+ description: "widget payment",
87
+ amount: amount || "1.00",
88
+ phone_number: "1234567908",
89
+ zip: formData.zip,
90
+ orderId: orderId || "",
91
+ fractalpayPublicKey: fractalPayClientKey
92
+ };
93
+ if (Object.keys(error).length < 1) {
94
+ try {
95
+ setLoading(true);
96
+ const res = await import_axios.default.post(`${baseUrl}create-widget-order`, data, {
97
+ headers: {
98
+ "Content-Type": "application/json"
99
+ }
100
+ });
101
+ if (res.data && ((_a = res.data) == null ? void 0 : _a.result)) {
102
+ console.log("token", (_b = res.data) == null ? void 0 : _b.data);
103
+ setDcToken((_d = (_c = res.data) == null ? void 0 : _c.data) == null ? void 0 : _d.dctoken);
104
+ const tokenCallback = async (response) => {
105
+ var _a2, _b2, _c2;
106
+ console.log("response for token call back", response);
107
+ if (response.Error) {
108
+ alert("if");
109
+ console.log("Error: ", response);
110
+ setLoading(false);
111
+ } else {
112
+ const headers = {
113
+ "Content-Type": "application/x-www-form-urlencoded"
114
+ };
115
+ const quickData = __spreadValues({
116
+ name: formData.name,
117
+ postal_code: formData.zip
118
+ }, response);
119
+ try {
120
+ const resp = await import_axios.default.post(`${masterBaseUrl}quick-pay/${(_b2 = (_a2 = res.data) == null ? void 0 : _a2.data) == null ? void 0 : _b2.posSalesIdEncode}`, quickData, {
121
+ headers
122
+ });
123
+ setLoading(false);
124
+ console.log("quick response", resp);
125
+ if (((_c2 = resp == null ? void 0 : resp.data) == null ? void 0 : _c2.result) && (resp == null ? void 0 : resp.status) === 200) {
126
+ console.log("Payment success!", resp == null ? void 0 : resp.data);
127
+ setFormData({
128
+ name: "John Doe",
129
+ card_number: "4761 7310 0000 0043",
130
+ exp_month: "12",
131
+ exp_year: "2024",
132
+ cvv: "201",
133
+ zip: ""
134
+ });
135
+ } else {
136
+ console.log("Payment failed!", resp == null ? void 0 : resp.data);
137
+ }
138
+ } catch (error2) {
139
+ console.log("Error: ", error2);
140
+ setLoading(false);
141
+ }
142
+ }
143
+ };
144
+ window == null ? void 0 : window.DatacapWebToken.requestToken((_f = (_e = res.data) == null ? void 0 : _e.data) == null ? void 0 : _f.dctoken, "PaymentForm", tokenCallback);
145
+ } else {
146
+ setLoading(false);
147
+ console.log("res", (_g = res.data) == null ? void 0 : _g.data);
148
+ }
149
+ } catch (error2) {
150
+ setLoading(false);
151
+ console.log(error2);
152
+ }
153
+ }
154
+ };
155
+ const handleCardFormat = (numericValue) => {
156
+ const cleaned = ("" + numericValue).replace(/\D/g, "");
157
+ const match = cleaned.match(/^(\d{4})(\d{4})(\d{4})(\d{4})$/);
158
+ if (match) {
159
+ return `${match[1]} ${match[2]} ${match[3]} ${match[4]}`;
160
+ }
161
+ return numericValue;
162
+ };
163
+ const handleCardNumberChange = (value) => {
164
+ setError((prev) => __spreadProps(__spreadValues({}, prev), { card_number: "" }));
165
+ if (value && value.match(/[a-zA-Z]/)) {
166
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
167
+ card_number: "Invalid input. Please enter only numbers."
168
+ }));
169
+ } else if (value.length > 12 && !(window == null ? void 0 : window.DatacapWebToken.validateCardNumber(value == null ? void 0 : value.replaceAll(" ", "")))) {
170
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
171
+ card_number: "Invalid Card Number"
172
+ }));
173
+ } else if (!value.length) {
174
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
175
+ card_number: "Card Number required"
176
+ }));
177
+ } else {
178
+ setError({});
179
+ }
180
+ };
181
+ const handleMonthChange = (value) => {
182
+ setError((prev) => __spreadProps(__spreadValues({}, prev), { exp_month: "" }));
183
+ if (/^\d{0,2}$/.test(value) && (value === "" || parseInt(value, 10) >= 1 && parseInt(value, 10) <= 12)) {
184
+ setError({});
185
+ } else if (!value.length) {
186
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
187
+ exp_month: "Month is required"
188
+ }));
189
+ } else {
190
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
191
+ exp_month: "Value should be between 1 and 12"
192
+ }));
193
+ }
194
+ };
195
+ const handleYearChange = (value) => {
196
+ setError((prev) => __spreadProps(__spreadValues({}, prev), { exp_year: "" }));
197
+ if (window == null ? void 0 : window.DatacapWebToken.validateExpirationDate(formData.exp_month, value)) {
198
+ setError({});
199
+ } else if (!value.length) {
200
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
201
+ exp_year: "Year is required"
202
+ }));
203
+ } else {
204
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
205
+ exp_year: "Invalid Expiration Date."
206
+ }));
207
+ }
208
+ };
209
+ const handleCVVChange = (value) => {
210
+ setError((prev) => __spreadProps(__spreadValues({}, prev), { cvv: "" }));
211
+ if (window == null ? void 0 : window.DatacapWebToken.validateCVV(value)) {
212
+ setError({});
213
+ } else if (!value.length) {
214
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
215
+ cvv: "CVV is required"
216
+ }));
217
+ } else {
218
+ setError((prev) => __spreadProps(__spreadValues({}, prev), {
219
+ cvv: "Invalid CVV."
220
+ }));
221
+ }
222
+ };
223
+ const handleChange = (e) => {
224
+ const token = e.target.getAttribute("data-token") || "";
225
+ const value = e.target.value;
226
+ setFormData((prev) => __spreadProps(__spreadValues({}, prev), { [token]: value }));
227
+ if (token === "card_number") {
228
+ handleCardNumberChange(value);
229
+ }
230
+ if (token === "exp_month") {
231
+ handleMonthChange(value);
232
+ }
233
+ if (token === "exp_year") {
234
+ handleYearChange(value);
235
+ }
236
+ if (token === "cvv") {
237
+ handleCVVChange(value);
238
+ }
239
+ };
240
+ (0, import_react.useEffect)(() => {
241
+ const scriptId = "my-script";
242
+ const existingScript = document.getElementById(scriptId);
243
+ if (!existingScript) {
244
+ const script = document.createElement("script");
245
+ script.src = "https://token-cert.dcap.com/v1/client";
246
+ script.id = scriptId;
247
+ script.async = true;
248
+ script.onload = () => {
249
+ if (typeof window !== "undefined" && window.DatacapWebToken) {
250
+ console.log("DatacapWebToken", window.DatacapWebToken);
251
+ } else {
252
+ console.log("DatacapWebToken is not loaded yet.");
253
+ }
254
+ };
255
+ document.head.appendChild(script);
256
+ }
257
+ return () => {
258
+ const script = document.getElementById(scriptId);
259
+ if (script) {
260
+ document.head.removeChild(script);
261
+ }
262
+ };
263
+ }, []);
264
+ const handleClose = () => {
265
+ setShow(false);
266
+ };
267
+ const handleOpen = () => {
268
+ console.log("open");
269
+ setShow(true);
270
+ };
271
+ console.log(show, "open");
272
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { style: { width: "100%", textAlign: "center" } }, /* @__PURE__ */ import_react.default.createElement(import_react_bootstrap.Button, { onClick: handleOpen }, "Show")), /* @__PURE__ */ import_react.default.createElement(
273
+ import_react_bootstrap.Modal,
274
+ {
275
+ show,
276
+ onHide: handleClose,
277
+ backdrop: "static",
278
+ keyboard: false,
279
+ size: "lg"
280
+ },
281
+ /* @__PURE__ */ import_react.default.createElement(import_react_bootstrap.Modal.Body, null, /* @__PURE__ */ import_react.default.createElement("div", { className: "bg-black" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "container bg-black" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "row bg-light no-gutters" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "col-sm-12" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "bd-example bd-example-tabs right-tabs mttabs m-3 " }, /* @__PURE__ */ import_react.default.createElement("div", { className: "payment-popup" }, /* @__PURE__ */ import_react.default.createElement(
282
+ "button",
283
+ {
284
+ className: "close-pop",
285
+ onClick: () => {
286
+ setShow(false);
287
+ }
288
+ },
289
+ /* @__PURE__ */ import_react.default.createElement(
290
+ "svg",
291
+ {
292
+ xmlns: "http://www.w3.org/2000/svg",
293
+ width: 37,
294
+ height: 37,
295
+ viewBox: "0 0 21 21"
296
+ },
297
+ /* @__PURE__ */ import_react.default.createElement(
298
+ "path",
299
+ {
300
+ fill: "none",
301
+ stroke: "currentColor",
302
+ strokeLinecap: "round",
303
+ strokeLinejoin: "round",
304
+ d: "m7.5 7.5l6 6m0-6l-6 6"
305
+ }
306
+ )
307
+ )
308
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "row" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "comp-name" }, /* @__PURE__ */ import_react.default.createElement(
309
+ "img",
310
+ {
311
+ src: "https://invoicestaging.skysystemz.com/assets/products/65c49a2740ff1.png",
312
+ alt: "",
313
+ className: "client-logo"
314
+ }
315
+ )), /* @__PURE__ */ import_react.default.createElement("div", { className: "" }, /* @__PURE__ */ import_react.default.createElement("div", { id: "Checkout", className: "inline" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "header" }, /* @__PURE__ */ import_react.default.createElement("h1", null, "Pay"), /* @__PURE__ */ import_react.default.createElement(
316
+ "i",
317
+ {
318
+ className: "fa fa-qrcode fa-2x",
319
+ id: "qrIcon",
320
+ title: "Show QR Code",
321
+ onClick: () => setToggleQr(!toggleQr)
322
+ }
323
+ )), /* @__PURE__ */ import_react.default.createElement("div", { id: "qrCode", style: {
324
+ display: toggleQr ? "block" : "none"
325
+ } }, /* @__PURE__ */ import_react.default.createElement(
326
+ "img",
327
+ {
328
+ src: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARQAAAEUCAYAAADqcMl5AAAAAklEQVR4AewaftIAABJaSURBVO3BQY7gRhLAQFLo/3+ZO8c8FSCoemwvMsL+YK21LnhYa61LHtZa65KHtda65GGttS55WGutSx7WWuuSh7XWuuRhrbUueVhrrUse1lrrkoe11rrkYa21LnlYa61LHtZa65KHtda65IePVP6miknlpGJSualiUjmpOFGZKk5UpopJ5YuKE5WpYlI5qZhU3qiYVKaKSeWkYlI5qXhD5aRiUvmbKr54WGutSx7WWuuSh7XWuuSHyypuUvlNFW+oTCpTxRsqU8UXKlPFicqJylRxonJScVLxhspU8UbFGxX/pIqbVG56WGutSx7WWuuSh7XWuuSHX6byRsVNKlPFpPJGxW9SmSreqJhUTiomlROVk4ovVL5QOak4UTlR+TdReaPiNz2stdYlD2utdcnDWmtd8sN/XMWkMlVMKlPFpHKiMlWcqJxUTCqTyk0Vk8pJxaQyVUwqN1WcqEwVk8qk8kXFpPJGxaTy/+RhrbUueVhrrUse1lrrkh/+z6lMFScVN1VMKpPKVDGpTBWTyknFFyonKlPFpDJVTConKjdVnKhMFZPKScWkMqlMFf9PHtZa65KHtda65GGttS754ZdV/CaVqWJS+UJlqjhROamYVCaVE5WpYlKZKt6oeEPlpGJSmSreUJkq3lCZKt6omFTeqLip4t/kYa21LnlYa61LHtZa65IfLlP5L1GZKt5QmSomlTcqJpWpYlKZKiaVqeINlaniDZWpYlKZKiaVqWJSmSpOKiaVqWJSmSpuUpkqTlT+zR7WWuuSh7XWuuRhrbUu+eGjin+zipOKSeWNikllqjipmFS+UJkqJpU3Kr6omFROVN6omFSmikllqphUpopJZaqYVKaKSeWNiv+Sh7XWuuRhrbUueVhrrUvsD36RyhsVk8pUMamcVJyofFHxhcpJxaQyVUwqU8Wk8jdVnKhMFZPKGxVvqJxUnKhMFScqN1WcqLxR8cXDWmtd8rDWWpc8rLXWJT98pDJV3FQxqUwVN1VMKicqU8WkMlWcVJxUTCq/qeJE5Q2VqeKkYlI5UZkqJpWp4kTlDZWTihOVqeJE5Y2K3/Sw1lqXPKy11iUPa611yQ8fVZxUTConKicVk8pU8UbFScWk8jep/E0Vk8pJxRsVb6i8UTGpTBUnKlPFTSonFZPKVDFVTCpTxaRyUvHFw1prXfKw1lqXPKy11iU//GUVk8pJxRcqU8VvUjlRmSomlZOKSWWqmFS+qJhU3lA5qZhU/iaVE5UvKr6omFSmiqliUpkqJpWbHtZa65KHtda65GGttS754TKVqWJSmSpOVP5JKlPFicobKlPFb6qYVCaV31TxRcWkMqmcqEwVk8pJxRcVb6icqLyhMlXc9LDWWpc8rLXWJQ9rrXWJ/cEHKlPFicpJxYnKVDGp/JMqTlT+pooTlTcqTlTeqDhRmSq+UDmpOFH5omJSeaNiUjmpOFGZKr54WGutSx7WWuuSh7XWuuSHjyomlaliqphUTlTeqJhUpopJZap4Q+WmihOVk4oTlTcq3qg4UZlUpoqp4kTljYo3VKaKSeWkYlI5qbhJZar4TQ9rrXXJw1prXfKw1lqX/PCRyhcVk8pUMalMKlPFFyonFW+o3FRxonJSMam8ofJGxUnFpPJGxRcqb6icVEwqU8WJylQxqZxUTCp/08Naa13ysNZalzystdYl9gf/IionFScqU8WJylQxqbxRcaIyVZyoTBWTylQxqZxUnKhMFZPKVDGpnFR8oTJVTConFZPKVDGpTBVfqEwVb6icVJyoTBVfPKy11iUPa611ycNaa13ywy9TmSomlanib6qYVE4qJpUTlTdUTlS+qDhROVGZKiaVk4pJ5aRiUvmiYlKZKk4qJpU3KqaKSeWLin/Sw1prXfKw1lqXPKy11iX2Bx+oTBWTyk0Vk8pUMalMFb9J5Y2KE5XfVDGpTBVfqJxUTConFW+oTBUnKjdVTConFW+ofFFx08Naa13ysNZalzystdYl9gcfqEwV/2Yqb1RMKlPFFypTxRsqU8WkMlVMKlPFv5nKGxVvqEwVk8obFW+oTBWTyknFP+lhrbUueVhrrUse1lrrkh8+qphUpopJZao4UZkqJpWp4o2KNyomlTcqTlTeqJhUvlA5qThRmSomlaliUjmp+ELlpoovVKaKSeWkYlJ5o+Kmh7XWuuRhrbUueVhrrUvsDz5QeaPiJpWTiknli4ovVE4qJpWp4kRlqphUTireUJkqJpU3Kr5QmSpOVE4qTlTeqDhRmSr+Sx7WWuuSh7XWuuRhrbUu+eGjihOVE5WpYlKZKk4qvqi4SeWLihOVqWJSmSpOVN6oOKm4SeWkYlKZKk4q3qh4Q2WqmComlaliUvmi4qaHtda65GGttS55WGutS374SGWqOFF5o2JSmSomlZOKE5WpYlI5qZgqTlQmlaliUvlNFScqX6hMFZPKGxWTylQxqUwVk8pJxYnKVDFV3FTxhsqkMlV88bDWWpc8rLXWJQ9rrXXJDx9VTCpTxRcqU8WkMlW8oTJVnFR8ofKGylTxhcpU8YXKVPGGylRxonJSMal8UXGiMlWcqEwVb6j8mz2stdYlD2utdcnDWmtd8sNlFW+onFRMKm+oTBU3qZxUTBVvqPybVLyhMlVMKpPKVDFVTCpvVEwqU8WkMlV8UTGpnFScqJxUTCq/6WGttS55WGutSx7WWusS+4MPVKaKSWWqmFS+qJhUpoo3VE4qTlS+qJhUpopJZaq4SWWqOFE5qZhUpooTlZOKL1SmiknlN1VMKl9U/E0Pa611ycNaa13ysNZal/xwmcqJyhsVb1T8m1RMKm9UTCpvqEwVk8pJxYnKScWkMlVMKlPFVDGpnKhMFZPKicpUcZPKScUbKpPKGxVfPKy11iUPa611ycNaa13yw2UVk8oXKm9UTCpTxRsVb1RMKlPFpDKpvFExqdyk8oXKVDGp/KaKSWWqeEPljYo3VG6qmFSmipse1lrrkoe11rrkYa21Lvnho4pJ5YuKN1TeUPlCZaqYVE5UpopJZao4UXlD5aTiDZWTipOKSWVSOamYVL5QOan4TRVvqEwVk8pUMalMFV88rLXWJQ9rrXXJw1prXfLDZRUnKm+oTBUnKlPFGyqTyonKVDGp3KRyUjGpTBWTyonKVPGFylQxVZyoTCpTxYnKpDJVvKFyUjGpvKEyVbxRMalMFTc9rLXWJQ9rrXXJw1prXfLDRyq/qeJvqjhROVH5omJSmSreqPii4o2KL1SmipOKE5Wp4jdV3FTxhspJxaQyVXzxsNZalzystdYlD2utdYn9wT9I5aaKE5WbKiaVNyreUDmpOFH5TRWTyknFFypTxRsqJxWTylTxhspvqjhRmSpuelhrrUse1lrrkoe11rrE/uADlS8q/p+oTBV/k8pJxYnKVDGpTBV/k8pJxaQyVdykMlXcpDJVnKicVEwqU8UXD2utdcnDWmtd8rDWWpf8cFnFicqkclPFicpUMan8k1S+qJhUTlSmipOKSWWqmFSmijdUpoovVN6o+ELlpGJSmSreqPgnPay11iUPa611ycNaa13yw2Uqb1RMKlPFicqkMlV8UXGiMlWcqEwVU8WJyonKicpUcaLyN6lMFZPKVHFSMalMFZPKGxUnFZPKScWkMlWcqJxU/KaHtda65GGttS55WGutS374yyreUJkqTipOKt5QmSreUPlC5TepfFHxN1VMKlPFpDJVfKEyVUwqU8VUMam8oTJVTBX/pIe11rrkYa21LnlYa61L7A8+UJkqJpUvKiaVqeINlaliUpkqJpWpYlKZKiaVNypuUpkqJpUvKm5S+aJiUpkq/iaVNypOVKaKN1Smii8e1lrrkoe11rrkYa21Lvnhl1VMKlPFpDKp/E0Vk8o/SWWqmFSmiknlpooTlZOKSeWNiknlRGWqOFE5qfiiYlI5UTmpmFSmikllqrjpYa21LnlYa61LHtZa6xL7gw9UTiomlaniDZWp4kTli4ovVKaKL1SmiknlpOJE5aTiDZWTiknlpOINlTcqJpUvKiaVqeILlZOKv+lhrbUueVhrrUse1lrrkh8+qnijYlKZKiaVLyomlaniDZWp4guV31RxonJScaJyUjGpTCpvqEwVb1ScqHxRMalMFZPKVDGpTBU3qUwVXzystdYlD2utdcnDWmtd8sNHKlPFicobFZPKpDJVTCpTxd9UcVLxhcpNFScqU8UXFZPKScWJylQxqZxUTCpTxaQyqUwVk8qJyonKTRU3Pay11iUPa611ycNaa13yw0cVk8pJxaQyqZxUTConFW+onFS8ofJGxaTyhcpJxaRyUnGiclLxRsWkMlWcqEwVJypTxaQyVUwqX1RMKlPFFyonFV88rLXWJQ9rrXXJw1prXfLDX6ZyUnGTylQxqZxUvKHyRsUXFScqU8UXKicVJyonFZPKVHGTyonKVHFS8YXKFypTxVTxmx7WWuuSh7XWuuRhrbUusT+4SGWqOFF5o+INlaliUnmj4kRlqphUTireUDmpmFSmit+kMlVMKicV/2YqU8UXKicV/2YPa611ycNaa13ysNZal/zwy1Smijcq3lCZKk4qvlCZKiaVN1SmikllqjhRmSreUHmjYqq4SWWqOFGZKt5QmSpOVKaKSeWkYlI5UZkq/kkPa611ycNaa13ysNZal9gffKAyVZyoTBWTyhsVX6hMFZPKVHGiclLxhcpJxaRyUnGiMlWcqJxU3KRyUvGFylQxqXxRMam8UTGpTBWTyknFFw9rrXXJw1prXfKw1lqX2B98oHJSMamcVLyhMlVMKlPFpHJS8ZtUTip+k8pUMamcVEwqU8XfpDJVTCpTxaRyUjGpTBWTylQxqZxU/Jc8rLXWJQ9rrXXJw1prXfLDZRVvVJyonFRMKjepTBUnKlPFpHJScaIyVZyovKEyVbxRMalMFScqU8WJylTxhspUMalMKlPFGypTxYnKVDGp3FTxxcNaa13ysNZalzystdYlP/wylaniRGWqmFS+UHmjYlK5qeILlTcqTlTeUJkqvqg4UZkqJpWpYqp4o+INlaniROUNlaniDZXf9LDWWpc8rLXWJQ9rrXXJDx9VvKHyhsobFV+onFRMKl+oTBU3VUwqU8VUMam8ofKGylQxqZyoTBWTylQxqZxUTCpTxVQxqZxUTCpTxRsqU8Xf9LDWWpc8rLXWJQ9rrXXJDx+pvFExqUwVJyo3qUwVk8obFZPKFyonFZPKGypTxUnFpPKbKm5SmSomld9UMam8oXJScVIxqdz0sNZalzystdYlD2utdckPf5nKVHGiMlX8JpWp4ouKE5VJZaqYVH6TyonKGxWTyonKScWk8kbFpHKiMlVMKlPFicobKv8lD2utdcnDWmtd8rDWWpfYH/yHqUwVv0llqjhRmSpOVKaKSWWqmFSmihOVqeINlaliUpkqJpWTikllqjhROak4UfmbKt5QOan4mx7WWuuSh7XWuuRhrbUu+eEjlb+pYqqYVE4q3lCZKiaVL1SmikllqphUpooTlTdUporfVHFSMam8UTGpTBUnFTepnKhMFW+onFTc9LDWWpc8rLXWJQ9rrXXJD5dV3KTyRsWk8obKP0llqnhD5aaKN1SmipOKSWWqOKmYVKaKN1Smiknlb6p4o2JS+Zse1lrrkoe11rrkYa21Lvnhl6m8UfGGym+qmFROKiaVSWWqOFE5qZhUvlD5omJS+UJlqphUpopJ5aRiUnmjYlKZKiaVE5UvVN5QmSq+eFhrrUse1lrrkoe11rrkh/9zFZPKScVJxYnKVPGbVKaKSWWqmFROKiaVqeKkYlKZKk5UTiomlZOKk4qTikllqphUTipOVKaKm1RuelhrrUse1lrrkoe11rrkh/8zFZPKVDGpTConFZPKVDGpnFRMKlPFpDJVfFExqZxUnKi8oXJSMalMFVPFFyonFVPFpDJVnKhMFVPFpPJFxW96WGutSx7WWuuSh7XWuuSHX1bxmyomlaliUnmj4qRiUpkqJpWTipOKSWWqOFF5Q+WkYqqYVKaKSeVE5QuVqWJSmSreUJkqJpWTikllqpgq/s0e1lrrkoe11rrkYa21LvnhMpV/UsWkMlVMKicqJxVTxRcqU8VJxRsVJypTxRsqX1S8oTJVnKhMFZPKScVUMalMFScqU8WkclIxqfyTHtZa65KHtda65GGttS6xP1hrrQse1lrrkoe11rrkYa21LnlYa61LHtZa65KHtda65GGttS55WGutSx7WWuuSh7XWuuRhrbUueVhrrUse1lrrkoe11rrkYa21Lvkf/C+HzIiJCzEAAAAASUVORK5CYII=",
329
+ alt: "QRCode",
330
+ srcSet: ""
331
+ }
332
+ )), /* @__PURE__ */ import_react.default.createElement(
333
+ "form",
334
+ {
335
+ id: "PaymentForm",
336
+ className: "payment-form",
337
+ onSubmit: handleSubmit
338
+ },
339
+ /* @__PURE__ */ import_react.default.createElement(
340
+ "input",
341
+ {
342
+ type: "hidden",
343
+ id: "dctoken",
344
+ defaultValue: dcToken,
345
+ name: "dctoken"
346
+ }
347
+ ),
348
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "form-group top-amnt" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "amtleft" }, /* @__PURE__ */ import_react.default.createElement("label", { htmlFor: "Amount" }, "Payment amount"), /* @__PURE__ */ import_react.default.createElement("div", { className: "amount-placeholder" }, /* @__PURE__ */ import_react.default.createElement("span", null, "$"), /* @__PURE__ */ import_react.default.createElement("span", null, " ", amount || 1, " "))), /* @__PURE__ */ import_react.default.createElement("div", { className: "card-row" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "visa" }), /* @__PURE__ */ import_react.default.createElement("span", { className: "mastercard" }), /* @__PURE__ */ import_react.default.createElement("span", { className: "amex" }), /* @__PURE__ */ import_react.default.createElement("span", { className: "discover" }))),
349
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "form-group" }, /* @__PURE__ */ import_react.default.createElement("label", { htmlFor: "NameOnCard" }, "Name on card"), /* @__PURE__ */ import_react.default.createElement(
350
+ "input",
351
+ {
352
+ "data-token": "name",
353
+ id: "NameOnCard",
354
+ className: "form-control required",
355
+ type: "text",
356
+ maxLength: 100,
357
+ placeholder: "name",
358
+ value: formData == null ? void 0 : formData.name,
359
+ onChange: handleChange
360
+ }
361
+ ), /* @__PURE__ */ import_react.default.createElement(
362
+ "span",
363
+ {
364
+ id: "NameOnCard-error",
365
+ style: { color: "red" }
366
+ }
367
+ )),
368
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "form-group" }, /* @__PURE__ */ import_react.default.createElement(
369
+ "input",
370
+ {
371
+ "data-token": "card_number",
372
+ className: "null card-image form-control required",
373
+ type: "text",
374
+ maxLength: 19,
375
+ placeholder: "0000 0000 0000 0000",
376
+ value: handleCardFormat(formData == null ? void 0 : formData.card_number),
377
+ onChange: handleChange
378
+ }
379
+ ), error.card_number && /* @__PURE__ */ import_react.default.createElement(
380
+ "span",
381
+ {
382
+ id: "card_number-error",
383
+ style: { color: "red" }
384
+ },
385
+ error.card_number
386
+ )),
387
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "expiry-date-group form-group" }, /* @__PURE__ */ import_react.default.createElement(
388
+ "input",
389
+ {
390
+ "data-token": "exp_month",
391
+ className: "form-control required",
392
+ type: "text",
393
+ placeholder: "MM",
394
+ maxLength: 2,
395
+ value: formData == null ? void 0 : formData.exp_month,
396
+ onChange: handleChange
397
+ }
398
+ ), error.exp_month && /* @__PURE__ */ import_react.default.createElement(
399
+ "span",
400
+ {
401
+ id: "exp_month-error",
402
+ style: { color: "red" }
403
+ },
404
+ error.exp_month
405
+ )),
406
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "expiry-date-group form-group" }, /* @__PURE__ */ import_react.default.createElement(
407
+ "input",
408
+ {
409
+ "data-token": "exp_year",
410
+ className: "form-control required",
411
+ type: "text",
412
+ placeholder: "YYYY",
413
+ maxLength: 4,
414
+ value: formData == null ? void 0 : formData.exp_year,
415
+ onChange: handleChange
416
+ }
417
+ ), error.exp_year && /* @__PURE__ */ import_react.default.createElement(
418
+ "span",
419
+ {
420
+ id: "exp_year-error",
421
+ style: { color: "red" }
422
+ },
423
+ error.exp_year
424
+ )),
425
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "security-code-group form-group" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "input-container" }, /* @__PURE__ */ import_react.default.createElement(
426
+ "input",
427
+ {
428
+ "data-token": "cvv",
429
+ className: "form-control required",
430
+ type: "text",
431
+ maxLength: 4,
432
+ placeholder: "CVC",
433
+ value: formData == null ? void 0 : formData.cvv,
434
+ onChange: handleChange
435
+ }
436
+ ), /* @__PURE__ */ import_react.default.createElement("i", { id: "cvc", className: "fa fa-question-circle" })), error.cvv && /* @__PURE__ */ import_react.default.createElement(
437
+ "span",
438
+ {
439
+ id: "cvv-error",
440
+ style: { color: "red" }
441
+ },
442
+ error.cvv
443
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "cvc-preview-container two-card hide" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "amex-cvc-preview" }), /* @__PURE__ */ import_react.default.createElement("div", { className: "visa-mc-dis-cvc-preview" }))),
444
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "zip-code-group form-group" }, /* @__PURE__ */ import_react.default.createElement("label", { htmlFor: "ZIPCode" }, "Postal code"), /* @__PURE__ */ import_react.default.createElement("div", { className: "input-container" }, /* @__PURE__ */ import_react.default.createElement(
445
+ "input",
446
+ {
447
+ id: "ZIPCode",
448
+ "data-token": "zip",
449
+ className: "form-control required",
450
+ type: "text",
451
+ maxLength: 7,
452
+ placeholder: "000000",
453
+ value: formData == null ? void 0 : formData.zip,
454
+ onChange: handleChange
455
+ }
456
+ ), /* @__PURE__ */ import_react.default.createElement(
457
+ "a",
458
+ {
459
+ tabIndex: 0,
460
+ role: "button",
461
+ "data-toggle": "popover",
462
+ "data-trigger": "focus",
463
+ "data-placement": "left",
464
+ "data-content": "Enter the ZIP/Postal code for your credit card billing address."
465
+ },
466
+ /* @__PURE__ */ import_react.default.createElement("i", { className: "fa fa-question-circle" })
467
+ ), /* @__PURE__ */ import_react.default.createElement(
468
+ "span",
469
+ {
470
+ id: "ZIPCode-error",
471
+ style: { color: "red", display: "none" }
472
+ },
473
+ "This field is required"
474
+ ))),
475
+ /* @__PURE__ */ import_react.default.createElement(
476
+ "button",
477
+ {
478
+ id: "PayButton",
479
+ className: "btn btn-block btn-success submit-button",
480
+ type: "submit"
481
+ },
482
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "submit-button-lock" }),
483
+ /* @__PURE__ */ import_react.default.createElement("span", { className: "align-middle" }, "Pay $", amount || 1)
484
+ )
485
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "powerd-by-part", style: {
486
+ display: "flex",
487
+ fontSize: "12px",
488
+ textAlign: "center",
489
+ alignItems: "center",
490
+ justifyContent: "center",
491
+ margin: "8px 0 20px 0"
492
+ } }, /* @__PURE__ */ import_react.default.createElement(
493
+ "svg",
494
+ {
495
+ xmlns: "http://www.w3.org/2000/svg",
496
+ width: 20,
497
+ height: 20,
498
+ viewBox: "0 0 26 26"
499
+ },
500
+ /* @__PURE__ */ import_react.default.createElement(
501
+ "path",
502
+ {
503
+ fill: "currentColor",
504
+ d: "M23.633 5.028a1.074 1.074 0 0 0-.777-.366c-2.295-.06-5.199-2.514-7.119-3.477C14.551.592 13.768.201 13.18.098a1.225 1.225 0 0 0-.36.001c-.588.103-1.371.494-2.556 1.087c-1.92.962-4.824 3.416-7.119 3.476a1.08 1.08 0 0 0-.778.366a1.167 1.167 0 0 0-.291.834c.493 10.023 4.088 16.226 10.396 19.831c.164.093.346.141.527.141s.363-.048.528-.141c6.308-3.605 9.902-9.808 10.396-19.831a1.161 1.161 0 0 0-.29-.834zM18.617 8.97l-5.323 7.855c-.191.282-.491.469-.788.469c-.298 0-.629-.163-.838-.372l-3.752-3.753a.656.656 0 0 1 0-.926l.927-.929a.658.658 0 0 1 .926 0l2.44 2.44l4.239-6.257a.657.657 0 0 1 .91-.173l1.085.736a.657.657 0 0 1 .174.91z"
505
+ }
506
+ )
507
+ ), "Secure payments powered by Fractal", /* @__PURE__ */ import_react.default.createElement(
508
+ "img",
509
+ {
510
+ src: "https://ui.fractalpay.com/favicon.ico",
511
+ alt: "Fractal logo",
512
+ className: "powered-logo",
513
+ style: {
514
+ width: "18px",
515
+ height: "18px",
516
+ float: "right",
517
+ padding: "2px",
518
+ background: "#000",
519
+ borderRadius: "4px",
520
+ marginLeft: "5px"
521
+ }
522
+ }
523
+ ))))))))))))
524
+ ));
525
+ }
526
+ // Annotate the CommonJS export names for ESM import in node:
527
+ 0 && (module.exports = {
528
+ PaywithFractal
529
+ });