@spot-flow/checkout-inline-js 0.1.16 → 0.1.22
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/README.md +37 -55
- package/dist/api.d.ts +8 -7
- package/dist/apis/payment.service.d.ts +47 -0
- package/dist/checkout-class.d.ts +6 -0
- package/dist/checkout-inline.es.js +30230 -1645
- package/dist/checkout-inline.js +521 -624
- package/dist/data/countryStateCode.json.d.ts +22019 -0
- package/dist/data.d.ts +17 -0
- package/dist/index.css +1 -1
- package/dist/modules/Card.d.ts +23 -4
- package/dist/modules/Transfer.d.ts +27 -6
- package/dist/modules/Ussd.d.ts +37 -7
- package/dist/types/types.d.ts +48 -6
- package/dist/types.d.ts +2 -0
- package/dist/utils/format-date.d.ts +9 -0
- package/dist/utils/keys.d.ts +1 -0
- package/dist/utils/mask-text.d.ts +2 -0
- package/dist/utils/number-format.d.ts +6 -0
- package/dist/utils/set-baseurl.d.ts +1 -0
- package/dist/utils/stringTransform.d.ts +8 -0
- package/dist/utils.d.ts +7 -0
- package/dist/views/card/avs-validation.d.ts +10 -2
- package/dist/views/card/card-detail-form.d.ts +15 -7
- package/dist/views/card/card-otp-validation-form.d.ts +14 -2
- package/dist/views/card/card-pin-form.d.ts +11 -4
- package/dist/views/shared/main-footer.d.ts +15 -0
- package/dist/views/shared/main-header.d.ts +17 -0
- package/dist/views/shared/main-page.d.ts +40 -7
- package/dist/views/shared/main-sidebar.d.ts +17 -0
- package/dist/views/shared/page-loader.d.ts +1 -0
- package/dist/views/shared/payment-warning.d.ts +13 -2
- package/dist/views/shared/shared-main-option.d.ts +23 -0
- package/dist/views/transfer/transfer-confirmation-one.d.ts +13 -0
- package/dist/views/transfer/transfer-confirmation-two.d.ts +13 -0
- package/dist/views/transfer/transfer-confirmtation-progress.d.ts +34 -0
- package/dist/views/transfer/transfer-details.d.ts +23 -0
- package/dist/views/transfer/transfer-expired.d.ts +11 -0
- package/dist/views/ussd/ussd-bank-detail-form.d.ts +14 -2
- package/dist/views/ussd/ussd-error-screen.d.ts +3 -0
- package/dist/views/ussd/ussd-view-code.d.ts +36 -1
- package/package.json +20 -4
package/dist/data.d.ts
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
export declare const TAB_OPTION_OBJECT: {
|
|
2
|
+
card: {
|
|
3
|
+
key: string;
|
|
4
|
+
icon: string;
|
|
5
|
+
label: string;
|
|
6
|
+
};
|
|
7
|
+
bank_transfer: {
|
|
8
|
+
key: string;
|
|
9
|
+
label: string;
|
|
10
|
+
icon: string;
|
|
11
|
+
};
|
|
12
|
+
ussd: {
|
|
13
|
+
key: string;
|
|
14
|
+
label: string;
|
|
15
|
+
icon: string;
|
|
16
|
+
};
|
|
17
|
+
};
|
|
1
18
|
export declare const tabOptions: {
|
|
2
19
|
label: string;
|
|
3
20
|
icon: string;
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
*:where(#checkout-modal,#checkout-modal *),:before:where(#checkout-modal,#checkout-modal *),:after:where(#checkout-modal,#checkout-modal *){box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before:where(#checkout-modal,#checkout-modal *),:after:where(#checkout-modal,#checkout-modal *){--tw-content: ""}#checkout-modal{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}#checkout-modal{margin:0;line-height:inherit}hr:where(#checkout-modal,#checkout-modal *){height:0;color:inherit;border-top-width:1px}abbr:where([title]):where(#checkout-modal,#checkout-modal *){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1:where(#checkout-modal,#checkout-modal *),h2:where(#checkout-modal,#checkout-modal *),h3:where(#checkout-modal,#checkout-modal *),h4:where(#checkout-modal,#checkout-modal *),h5:where(#checkout-modal,#checkout-modal *),h6:where(#checkout-modal,#checkout-modal *){font-size:inherit;font-weight:inherit}a:where(#checkout-modal,#checkout-modal *){color:inherit;text-decoration:inherit}b:where(#checkout-modal,#checkout-modal *),strong:where(#checkout-modal,#checkout-modal *){font-weight:bolder}code:where(#checkout-modal,#checkout-modal *),kbd:where(#checkout-modal,#checkout-modal *),samp:where(#checkout-modal,#checkout-modal *),pre:where(#checkout-modal,#checkout-modal *){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small:where(#checkout-modal,#checkout-modal *){font-size:80%}sub:where(#checkout-modal,#checkout-modal *),sup:where(#checkout-modal,#checkout-modal *){font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub:where(#checkout-modal,#checkout-modal *){bottom:-.25em}sup:where(#checkout-modal,#checkout-modal *){top:-.5em}table:where(#checkout-modal,#checkout-modal *){text-indent:0;border-color:inherit;border-collapse:collapse}button:where(#checkout-modal,#checkout-modal *),input:where(#checkout-modal,#checkout-modal *),optgroup:where(#checkout-modal,#checkout-modal *),select:where(#checkout-modal,#checkout-modal *),textarea:where(#checkout-modal,#checkout-modal *){font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button:where(#checkout-modal,#checkout-modal *),select:where(#checkout-modal,#checkout-modal *){text-transform:none}button:where(#checkout-modal,#checkout-modal *),input:where([type=button]):where(#checkout-modal,#checkout-modal *),input:where([type=reset]):where(#checkout-modal,#checkout-modal *),input:where([type=submit]):where(#checkout-modal,#checkout-modal *){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring:where(#checkout-modal,#checkout-modal *){outline:auto}:-moz-ui-invalid:where(#checkout-modal,#checkout-modal *){box-shadow:none}progress:where(#checkout-modal,#checkout-modal *){vertical-align:baseline}::-webkit-inner-spin-button:where(#checkout-modal,#checkout-modal *),::-webkit-outer-spin-button:where(#checkout-modal,#checkout-modal *){height:auto}[type=search]:where(#checkout-modal,#checkout-modal *){-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration:where(#checkout-modal,#checkout-modal *){-webkit-appearance:none}::-webkit-file-upload-button:where(#checkout-modal,#checkout-modal *){-webkit-appearance:button;font:inherit}summary:where(#checkout-modal,#checkout-modal *){display:list-item}blockquote:where(#checkout-modal,#checkout-modal *),dl:where(#checkout-modal,#checkout-modal *),dd:where(#checkout-modal,#checkout-modal *),h1:where(#checkout-modal,#checkout-modal *),h2:where(#checkout-modal,#checkout-modal *),h3:where(#checkout-modal,#checkout-modal *),h4:where(#checkout-modal,#checkout-modal *),h5:where(#checkout-modal,#checkout-modal *),h6:where(#checkout-modal,#checkout-modal *),hr:where(#checkout-modal,#checkout-modal *),figure:where(#checkout-modal,#checkout-modal *),p:where(#checkout-modal,#checkout-modal *),pre:where(#checkout-modal,#checkout-modal *){margin:0}fieldset:where(#checkout-modal,#checkout-modal *){margin:0;padding:0}legend:where(#checkout-modal,#checkout-modal *){padding:0}ol:where(#checkout-modal,#checkout-modal *),ul:where(#checkout-modal,#checkout-modal *),menu:where(#checkout-modal,#checkout-modal *){list-style:none;margin:0;padding:0}dialog:where(#checkout-modal,#checkout-modal *){padding:0}textarea:where(#checkout-modal,#checkout-modal *){resize:vertical}input::-moz-placeholder:where(#checkout-modal,#checkout-modal *),textarea::-moz-placeholder:where(#checkout-modal,#checkout-modal *){opacity:1;color:#9ca3af}input::placeholder:where(#checkout-modal,#checkout-modal *),textarea::placeholder:where(#checkout-modal,#checkout-modal *){opacity:1;color:#9ca3af}button:where(#checkout-modal,#checkout-modal *),[role=button]:where(#checkout-modal,#checkout-modal *){cursor:pointer}:disabled:where(#checkout-modal,#checkout-modal *){cursor:default}img:where(#checkout-modal,#checkout-modal *),svg:where(#checkout-modal,#checkout-modal *),video:where(#checkout-modal,#checkout-modal *),canvas:where(#checkout-modal,#checkout-modal *),audio:where(#checkout-modal,#checkout-modal *),iframe:where(#checkout-modal,#checkout-modal *),embed:where(#checkout-modal,#checkout-modal *),object:where(#checkout-modal,#checkout-modal *){display:block;vertical-align:middle}img:where(#checkout-modal,#checkout-modal *),video:where(#checkout-modal,#checkout-modal *){max-width:100%;height:auto}[hidden]:where(#checkout-modal,#checkout-modal *){display:none}:root{--primary: 240, 100%, 28%;--primary-light: 266, 21%, 76%;--primary-10: 240, 39%, 86%, 1;--primary-lighter: 240, 100%, 98%;--primary-dark: 240, 39%, 52%;--primary-darker: 240, 100%, 28%;--success: 151, 58%, 46%;--error: 0, 74%, 48%;--common: 60, 4%, 43%;--tone-60: 260, 4%, 43%, 1;--grey: 218, 15%, 65%;--grey-100: 270, 3%, 62%;--grey-200: 264, 3%, 72%;--grey-300: 260, 3%, 81%;--grey-400: 264, 6%, 34%;--grey-500: 217, 24%, 27%;--grey-600: 265, 10%, 24%;--grey-700: 260, 4%, 43%;--grey-800: 265, 21%, 76%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input:focus,button:focus{outline:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.container-center{display:flex;align-items:center;justify-content:center}.container-between{display:flex;align-items:center;justify-content:space-between}.align-center{display:flex;align-items:center}.box-container{padding:18px 0}@media (min-width: 768px){.box-container{padding:1.75rem 1.25rem}}@media (min-width: 1024px){.box-container{padding-left:1.75rem;padding-right:1.75rem}}.content-heading{padding-top:.5rem;text-align:center;font-size:1.25rem;line-height:1.75rem;font-weight:600;color:hsl(var(--grey-400))}@media (min-width: 768px){.content-heading{padding-top:0}}.button-outline{display:flex;height:2.5rem;align-items:center;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(230 230 231 / var(--tw-border-opacity));font-size:.75rem;line-height:1rem;font-weight:600;color:hsl(var(--grey-400))}.payment-options{display:flex;min-height:3rem;width:100%;max-width:28rem;flex-direction:column;overflow:hidden}.tab{margin-bottom:.75rem;display:flex;align-items:center;justify-content:flex-start;text-align:left}.tab-button{display:flex;flex-grow:1;align-items:center;padding:.75rem 1.25rem;text-align:center;--tw-text-opacity: 1;color:rgb(61 56 68 / var(--tw-text-opacity))}@media (min-width: 768px){.tab-button{display:block}.tab-button:hover{border-radius:.75rem;background-color:hsl(var(--primary));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}}@media (min-width: 1024px){.tab-button{display:flex}}.tab-button.active{border-radius:.75rem;background-color:hsl(var(--primary));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.tab-button.active *{fill:#fff}.tab-button span{margin-top:.25rem;margin-bottom:.25rem;display:flex;flex-shrink:0;justify-content:center;font-weight:600}@media (min-width: 1024px){.tab-button span{justify-content:flex-start}}.main{max-height:90vh;width:100%;overflow:auto}@media (min-width: 768px){.main{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 1024px){.main{width:calc(100% - 250px);padding-left:1rem;padding-right:1rem}}.header-container{border-radius:.75rem;background-color:hsl(var(--primary));padding:2.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}@media (min-width: 768px){.header-container{padding:1.25rem 2.25rem}}.content{display:none}.content.active{display:block}.header-chip{display:flex;height:1.4375rem;align-items:center;justify-content:center;white-space:nowrap;border-radius:.25rem;background-color:hsl(var(--success));padding-top:0;padding-bottom:0;padding-left:.25rem;padding-right:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.tooltip{position:absolute;left:0;top:20px;margin-bottom:1.25rem;display:none;width:320px;flex-direction:column;align-items:center}.group:hover .tooltip{display:flex}.tooltip-textbox{position:relative;z-index:10;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1rem 1.25rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tooltip-title{margin-bottom:.25rem;font-size:13px;font-weight:500;line-height:17.4px;color:hsl(var(--grey-500))}.tooltip-text{font-size:13px;line-height:17.4px;letter-spacing:.025em;color:hsl(var(--grey))}.details-input-container{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(206 205 208 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem .75rem .5rem}.details-input-container::-moz-placeholder{color:hsl(var(--grey-200))}.details-input-container::placeholder{color:hsl(var(--grey-200))}.details-input-container:focus{outline:2px solid transparent;outline-offset:2px}.details-form-button{display:inline-flex;height:50px;width:100%;align-items:center;justify-content:center;border-radius:.5rem;background-color:hsl(var(--primary));font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.details-form-button:focus{outline:2px solid transparent;outline-offset:2px}.details-form-button:disabled{background-color:hsl(var(--primary-lighter));color:hsl(var(--primary-light))}.pin-container{margin-left:auto;margin-right:auto;display:flex;justify-content:space-between}.pin-text{margin-left:auto;margin-right:auto;width:80%;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}.pin-input{height:3.5rem;width:5rem;border-radius:.5rem;border-width:1px;border-color:hsl(var(--grey-300));text-align:center;font-size:1.125rem;line-height:1.75rem}.pin-input:focus{border-color:hsl(var(--primary));outline:2px solid transparent;outline-offset:2px}.pin-cancel{text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-600))}.pin-cancel:hover{text-decoration-line:underline}.otp-input{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(206 205 208 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1rem .75rem}.otp-input::-moz-placeholder{color:hsl(var(--grey-200))}.otp-input::placeholder{color:hsl(var(--grey-200))}.otp-input:focus{outline:2px solid transparent;outline-offset:2px}.otp-button{height:3.5rem;border-radius:.5rem;background-color:hsl(var(--success));padding-left:1.5rem;padding-right:1.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.otp-button:disabled{opacity:.8}@media (min-width: 768px){.otp-button{height:100%}}@media (max-width: 639px){.otp-button{width:100%}}.otp-text{margin-left:auto;margin-right:auto;width:91.666667%;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}@media (min-width: 768px){.otp-text{width:60%}}.otp-subtext{margin-left:auto;margin-right:auto;width:60%;text-align:center;font-size:.875rem;line-height:1.25rem;color:hsl(var(--grey-700))}.warning-text,.success-text{margin-top:1rem;margin-bottom:1rem;margin-left:auto;margin-right:auto;text-align:center;font-weight:600;color:hsl(var(--grey-400))}.warning-list{margin-left:auto;margin-right:auto;margin-top:3rem}@media (min-width: 768px){.warning-list{margin-top:2.5rem}}.warning-button,.success-button{margin-bottom:1rem;width:100%;border-radius:.5rem;border-width:1px;border-color:hsl(var(--grey-800));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}.transfer-button,.ussd-button{margin-bottom:1rem;width:100%;border-radius:.5rem;border-width:1px;border-color:hsl(var(--primary-light));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--primary-darker))}.transfer-close{margin-bottom:1rem;width:200px;border-radius:.5rem;background-color:hsl(var(--success));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}#bank-search-input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:2px solid transparent;outline-offset:2px}.bank-options{position:absolute;z-index:1000;margin-top:.25rem;box-sizing:border-box;display:none;max-height:150px;width:100%;overflow-y:auto;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.bank-option{cursor:pointer;padding:10px}.bank-option:hover{background-color:hsl(var(--primary-lighter))}#bank-select-container{display:flex;gap:.75rem;border-radius:.5rem;border-width:1px;border-color:hsl(var(--primary-light));padding:1rem}#bank-code-span{border-radius:.25rem;background-color:hsla(var(--primary-10));padding:.25rem;color:hsla(var(--tone-60))}.copy-code-button{margin-left:auto;margin-right:auto;margin-bottom:1rem;display:flex;width:60%;align-items:center;justify-content:center;gap:.5rem;border-radius:.5rem;background-color:hsl(var(--primary));padding:1rem;text-align:center;font-size:1.25rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.spinner{margin-right:.75rem;height:2rem;width:2rem}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite;fill:#fff}#checkout-modal .fixed{position:fixed}#checkout-modal .absolute{position:absolute}#checkout-modal .relative{position:relative}#checkout-modal .inset-0{top:0;right:0;bottom:0;left:0}#checkout-modal .-bottom-\[25px\]{bottom:-25px}#checkout-modal .-bottom-\[30px\]{bottom:-30px}#checkout-modal .left-0{left:0}#checkout-modal .right-0{right:0}#checkout-modal .right-2\/4{right:50%}#checkout-modal .right-3{right:.75rem}#checkout-modal .top-0{top:0}#checkout-modal .top-1{top:.25rem}#checkout-modal .top-1\/2,#checkout-modal .top-2\/4{top:50%}#checkout-modal .top-\[20px\]{top:20px}#checkout-modal .z-10{z-index:10}#checkout-modal .order-1{order:1}#checkout-modal .order-2{order:2}#checkout-modal .col-span-2{grid-column:span 2 / span 2}#checkout-modal .mx-0{margin-left:0;margin-right:0}#checkout-modal .mx-4{margin-left:1rem;margin-right:1rem}#checkout-modal .mx-5{margin-left:1.25rem;margin-right:1.25rem}#checkout-modal .mx-\[18px\]{margin-left:18px;margin-right:18px}#checkout-modal .mx-auto{margin-left:auto;margin-right:auto}#checkout-modal .my-12{margin-top:3rem;margin-bottom:3rem}#checkout-modal .my-4{margin-top:1rem;margin-bottom:1rem}#checkout-modal .my-6{margin-top:1.5rem;margin-bottom:1.5rem}#checkout-modal .my-8{margin-top:2rem;margin-bottom:2rem}#checkout-modal .my-auto{margin-top:auto;margin-bottom:auto}#checkout-modal .mb-2{margin-bottom:.5rem}#checkout-modal .mb-3{margin-bottom:.75rem}#checkout-modal .mb-4{margin-bottom:1rem}#checkout-modal .mb-5{margin-bottom:1.25rem}#checkout-modal .mb-6{margin-bottom:1.5rem}#checkout-modal .mb-7{margin-bottom:1.75rem}#checkout-modal .mb-8{margin-bottom:2rem}#checkout-modal .mr-1{margin-right:.25rem}#checkout-modal .mr-2{margin-right:.5rem}#checkout-modal .mr-3{margin-right:.75rem}#checkout-modal .mt-10{margin-top:2.5rem}#checkout-modal .mt-12{margin-top:3rem}#checkout-modal .mt-20{margin-top:5rem}#checkout-modal .mt-4{margin-top:1rem}#checkout-modal .mt-6{margin-top:1.5rem}#checkout-modal .mt-7{margin-top:1.75rem}#checkout-modal .mt-8{margin-top:2rem}#checkout-modal .block{display:block}#checkout-modal .flex{display:flex}#checkout-modal .grid{display:grid}#checkout-modal .contents{display:contents}#checkout-modal .hidden{display:none}#checkout-modal .h-12{height:3rem}#checkout-modal .h-3{height:.75rem}#checkout-modal .h-6{height:1.5rem}#checkout-modal .h-8{height:2rem}#checkout-modal .h-9{height:2.25rem}#checkout-modal .h-\[20vh\]{height:20vh}#checkout-modal .h-\[40vh\]{height:40vh}#checkout-modal .h-\[50px\]{height:50px}#checkout-modal .h-full{height:100%}#checkout-modal .min-h-full{min-height:100%}#checkout-modal .min-h-screen{min-height:100vh}#checkout-modal .w-11\/12{width:91.666667%}#checkout-modal .w-12{width:3rem}#checkout-modal .w-16{width:4rem}#checkout-modal .w-3{width:.75rem}#checkout-modal .w-3\/5{width:60%}#checkout-modal .w-4\/5{width:80%}#checkout-modal .w-5\/6{width:83.333333%}#checkout-modal .w-6{width:1.5rem}#checkout-modal .w-8{width:2rem}#checkout-modal .w-9{width:2.25rem}#checkout-modal .w-\[150px\]{width:150px}#checkout-modal .w-\[200px\]{width:200px}#checkout-modal .w-\[250px\]{width:250px}#checkout-modal .w-auto{width:auto}#checkout-modal .w-full{width:100%}#checkout-modal .w-screen{width:100vw}#checkout-modal .min-w-8{min-width:2rem}#checkout-modal .grow{flex-grow:1}#checkout-modal .-translate-y-1\/2,#checkout-modal .-translate-y-2\/4{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .translate-x-2\/4{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .cursor-pointer{cursor:pointer}#checkout-modal .cursor-text{cursor:text}#checkout-modal .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}#checkout-modal .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#checkout-modal .flex-col{flex-direction:column}#checkout-modal .items-end{align-items:flex-end}#checkout-modal .items-center{align-items:center}#checkout-modal .justify-end{justify-content:flex-end}#checkout-modal .justify-center{justify-content:center}#checkout-modal .gap-1{gap:.25rem}#checkout-modal .gap-2{gap:.5rem}#checkout-modal .gap-4{gap:1rem}#checkout-modal .gap-7{gap:1.75rem}#checkout-modal .gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}#checkout-modal .gap-y-4{row-gap:1rem}#checkout-modal .overflow-auto{overflow:auto}#checkout-modal .overflow-hidden{overflow:hidden}#checkout-modal .overflow-y-auto{overflow-y:auto}#checkout-modal .rounded-full{border-radius:9999px}#checkout-modal .rounded-lg{border-radius:.5rem}#checkout-modal .rounded-md{border-radius:.375rem}#checkout-modal .border,#checkout-modal .border-\[1px\]{border-width:1px}#checkout-modal .border-b{border-bottom-width:1px}#checkout-modal .border-dashed{border-style:dashed}#checkout-modal .border-\[\#C0B5CF\]{--tw-border-opacity: 1;border-color:rgb(192 181 207 / var(--tw-border-opacity))}#checkout-modal .border-\[\#E6E6E7\]{--tw-border-opacity: 1;border-color:rgb(230 230 231 / var(--tw-border-opacity))}#checkout-modal .border-grey-200{border-color:hsl(var(--grey-200))}#checkout-modal .border-primary{border-color:hsl(var(--primary))}#checkout-modal .border-b-white{--tw-border-opacity: 1;border-bottom-color:rgb(255 255 255 / var(--tw-border-opacity))}#checkout-modal .bg-\[\#f4f4ff\]{--tw-bg-opacity: 1;background-color:rgb(244 244 255 / var(--tw-bg-opacity))}#checkout-modal .bg-\[\#fafaff\]{--tw-bg-opacity: 1;background-color:rgb(250 250 255 / var(--tw-bg-opacity))}#checkout-modal .bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}#checkout-modal .bg-primary{background-color:hsl(var(--primary))}#checkout-modal .bg-primary-lighter{background-color:hsl(var(--primary-lighter))}#checkout-modal .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}#checkout-modal .bg-opacity-100{--tw-bg-opacity: 1}#checkout-modal .bg-opacity-30{--tw-bg-opacity: .3}#checkout-modal .p-0{padding:0}#checkout-modal .px-2{padding-left:.5rem;padding-right:.5rem}#checkout-modal .px-3{padding-left:.75rem;padding-right:.75rem}#checkout-modal .px-5{padding-left:1.25rem;padding-right:1.25rem}#checkout-modal .px-6{padding-left:1.5rem;padding-right:1.5rem}#checkout-modal .py-3{padding-top:.75rem;padding-bottom:.75rem}#checkout-modal .py-4{padding-top:1rem;padding-bottom:1rem}#checkout-modal .py-5{padding-top:1.25rem;padding-bottom:1.25rem}#checkout-modal .py-8{padding-top:2rem;padding-bottom:2rem}#checkout-modal .pb-1{padding-bottom:.25rem}#checkout-modal .pb-10{padding-bottom:2.5rem}#checkout-modal .pb-4{padding-bottom:1rem}#checkout-modal .pb-5{padding-bottom:1.25rem}#checkout-modal .pb-8{padding-bottom:2rem}#checkout-modal .pb-\[6\.4px\]{padding-bottom:6.4px}#checkout-modal .pb-\[9\.6px\]{padding-bottom:9.6px}#checkout-modal .pt-1{padding-top:.25rem}#checkout-modal .pt-10{padding-top:2.5rem}#checkout-modal .pt-16{padding-top:4rem}#checkout-modal .pt-2{padding-top:.5rem}#checkout-modal .pt-3{padding-top:.75rem}#checkout-modal .pt-9{padding-top:2.25rem}#checkout-modal .pt-\[9\.6px\]{padding-top:9.6px}#checkout-modal .text-left{text-align:left}#checkout-modal .text-center{text-align:center}#checkout-modal .text-\[10px\]{font-size:10px}#checkout-modal .text-lg{font-size:1.125rem;line-height:1.75rem}#checkout-modal .text-sm{font-size:.875rem;line-height:1.25rem}#checkout-modal .text-xl{font-size:1.25rem;line-height:1.75rem}#checkout-modal .text-xs{font-size:.75rem;line-height:1rem}#checkout-modal .font-semibold{font-weight:600}#checkout-modal .tracking-\[0\.5px\]{letter-spacing:.5px}#checkout-modal .text-common{color:hsl(var(--common))}#checkout-modal .text-grey-100{color:hsl(var(--grey-100))}#checkout-modal .text-grey-400{color:hsl(var(--grey-400))}#checkout-modal .text-grey-600{color:hsl(var(--grey-600))}#checkout-modal .text-grey-700{color:hsl(var(--grey-700))}#checkout-modal .text-primary-dark{color:hsl(var(--primary-dark))}#checkout-modal .text-success{color:hsl(var(--success))}#checkout-modal .shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#checkout-modal .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}#checkout-modal .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.tab-button.active:after{animation:text-underline-animation .3s linear forwards}#toast-container{position:fixed;top:20px;right:20px;width:300px;z-index:9999}.toast{display:flex;align-items:center;padding:15px;margin-bottom:10px;border-radius:5px;opacity:0;transform:translateY(-50px);transition:opacity .5s,transform .5s;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.toast.show{opacity:1;transform:translateY(0)}.toast.success{background-color:hsl(var(--success));color:#fff}.toast.error{background-color:hsl(var(--error));color:#fff}.toast .close-btn{margin-left:auto;cursor:pointer;color:#fff}.progress-container{width:100%;height:10px;background-color:#f3f3f3;border-radius:5px;overflow:hidden;position:relative}.progress-bar{height:100%;background-color:#4caf50;width:0;position:absolute;top:0;left:0;animation:progress 1s linear infinite}@keyframes progress{0%{width:0}to{width:100%}}@media (min-width: 768px){.md\:container-center{display:flex;align-items:center;justify-content:center}}#checkout-modal .hover\:bg-primary:hover{background-color:hsl(var(--primary))}#checkout-modal .hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}#checkout-modal .hover\:underline:hover{text-decoration-line:underline}#checkout-modal :is(.group:hover .group-hover\:flex){display:flex}#checkout-modal :is(.group:hover .group-hover\:fill-white){fill:#fff}@media (min-width: 640px){#checkout-modal .sm\:my-8{margin-top:2rem;margin-bottom:2rem}#checkout-modal .sm\:min-h-\[70\%\]{min-height:70%}#checkout-modal .sm\:w-4\/5{width:80%}#checkout-modal .sm\:items-center{align-items:center}}@media (min-width: 768px){#checkout-modal .md\:col-span-2{grid-column:span 2 / span 2}#checkout-modal .md\:mx-5{margin-left:1.25rem;margin-right:1.25rem}#checkout-modal .md\:mx-6{margin-left:1.5rem;margin-right:1.5rem}#checkout-modal .md\:mx-\[18px\]{margin-left:18px;margin-right:18px}#checkout-modal .md\:flex{display:flex}#checkout-modal .md\:hidden{display:none}#checkout-modal .md\:w-3\/5{width:60%}#checkout-modal .md\:w-4\/5{width:80%}#checkout-modal .md\:w-\[90\%\]{width:90%}#checkout-modal .md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#checkout-modal .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}#checkout-modal .md\:gap-5{gap:1.25rem}#checkout-modal .md\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}#checkout-modal .md\:gap-y-6{row-gap:1.5rem}#checkout-modal .md\:py-16{padding-top:4rem;padding-bottom:4rem}#checkout-modal .md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width: 1024px){#checkout-modal .lg\:block{display:block}#checkout-modal .lg\:w-\[900px\]{width:900px}}@media (max-width: 639px){#checkout-modal .max-sm\:mx-auto{margin-left:auto;margin-right:auto}#checkout-modal .max-sm\:hidden{display:none}#checkout-modal .max-sm\:w-4\/5{width:80%}#checkout-modal .max-sm\:px-4{padding-left:1rem;padding-right:1rem}#checkout-modal .max-sm\:py-4{padding-top:1rem;padding-bottom:1rem}#checkout-modal .max-sm\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}#checkout-modal .max-sm\:text-center{text-align:center}}
|
|
1
|
+
*:where(#checkout-modal,#checkout-modal *),:before:where(#checkout-modal,#checkout-modal *),:after:where(#checkout-modal,#checkout-modal *){box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before:where(#checkout-modal,#checkout-modal *),:after:where(#checkout-modal,#checkout-modal *){--tw-content: ""}#checkout-modal{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}#checkout-modal{margin:0;line-height:inherit}hr:where(#checkout-modal,#checkout-modal *){height:0;color:inherit;border-top-width:1px}abbr:where([title]):where(#checkout-modal,#checkout-modal *){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1:where(#checkout-modal,#checkout-modal *),h2:where(#checkout-modal,#checkout-modal *),h3:where(#checkout-modal,#checkout-modal *),h4:where(#checkout-modal,#checkout-modal *),h5:where(#checkout-modal,#checkout-modal *),h6:where(#checkout-modal,#checkout-modal *){font-size:inherit;font-weight:inherit}a:where(#checkout-modal,#checkout-modal *){color:inherit;text-decoration:inherit}b:where(#checkout-modal,#checkout-modal *),strong:where(#checkout-modal,#checkout-modal *){font-weight:bolder}code:where(#checkout-modal,#checkout-modal *),kbd:where(#checkout-modal,#checkout-modal *),samp:where(#checkout-modal,#checkout-modal *),pre:where(#checkout-modal,#checkout-modal *){font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small:where(#checkout-modal,#checkout-modal *){font-size:80%}sub:where(#checkout-modal,#checkout-modal *),sup:where(#checkout-modal,#checkout-modal *){font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub:where(#checkout-modal,#checkout-modal *){bottom:-.25em}sup:where(#checkout-modal,#checkout-modal *){top:-.5em}table:where(#checkout-modal,#checkout-modal *){text-indent:0;border-color:inherit;border-collapse:collapse}button:where(#checkout-modal,#checkout-modal *),input:where(#checkout-modal,#checkout-modal *),optgroup:where(#checkout-modal,#checkout-modal *),select:where(#checkout-modal,#checkout-modal *),textarea:where(#checkout-modal,#checkout-modal *){font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button:where(#checkout-modal,#checkout-modal *),select:where(#checkout-modal,#checkout-modal *){text-transform:none}button:where(#checkout-modal,#checkout-modal *),input:where([type=button]):where(#checkout-modal,#checkout-modal *),input:where([type=reset]):where(#checkout-modal,#checkout-modal *),input:where([type=submit]):where(#checkout-modal,#checkout-modal *){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring:where(#checkout-modal,#checkout-modal *){outline:auto}:-moz-ui-invalid:where(#checkout-modal,#checkout-modal *){box-shadow:none}progress:where(#checkout-modal,#checkout-modal *){vertical-align:baseline}::-webkit-inner-spin-button:where(#checkout-modal,#checkout-modal *),::-webkit-outer-spin-button:where(#checkout-modal,#checkout-modal *){height:auto}[type=search]:where(#checkout-modal,#checkout-modal *){-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration:where(#checkout-modal,#checkout-modal *){-webkit-appearance:none}::-webkit-file-upload-button:where(#checkout-modal,#checkout-modal *){-webkit-appearance:button;font:inherit}summary:where(#checkout-modal,#checkout-modal *){display:list-item}blockquote:where(#checkout-modal,#checkout-modal *),dl:where(#checkout-modal,#checkout-modal *),dd:where(#checkout-modal,#checkout-modal *),h1:where(#checkout-modal,#checkout-modal *),h2:where(#checkout-modal,#checkout-modal *),h3:where(#checkout-modal,#checkout-modal *),h4:where(#checkout-modal,#checkout-modal *),h5:where(#checkout-modal,#checkout-modal *),h6:where(#checkout-modal,#checkout-modal *),hr:where(#checkout-modal,#checkout-modal *),figure:where(#checkout-modal,#checkout-modal *),p:where(#checkout-modal,#checkout-modal *),pre:where(#checkout-modal,#checkout-modal *){margin:0}fieldset:where(#checkout-modal,#checkout-modal *){margin:0;padding:0}legend:where(#checkout-modal,#checkout-modal *){padding:0}ol:where(#checkout-modal,#checkout-modal *),ul:where(#checkout-modal,#checkout-modal *),menu:where(#checkout-modal,#checkout-modal *){list-style:none;margin:0;padding:0}dialog:where(#checkout-modal,#checkout-modal *){padding:0}textarea:where(#checkout-modal,#checkout-modal *){resize:vertical}input::-moz-placeholder:where(#checkout-modal,#checkout-modal *),textarea::-moz-placeholder:where(#checkout-modal,#checkout-modal *){opacity:1;color:#9ca3af}input::placeholder:where(#checkout-modal,#checkout-modal *),textarea::placeholder:where(#checkout-modal,#checkout-modal *){opacity:1;color:#9ca3af}button:where(#checkout-modal,#checkout-modal *),[role=button]:where(#checkout-modal,#checkout-modal *){cursor:pointer}:disabled:where(#checkout-modal,#checkout-modal *){cursor:default}img:where(#checkout-modal,#checkout-modal *),svg:where(#checkout-modal,#checkout-modal *),video:where(#checkout-modal,#checkout-modal *),canvas:where(#checkout-modal,#checkout-modal *),audio:where(#checkout-modal,#checkout-modal *),iframe:where(#checkout-modal,#checkout-modal *),embed:where(#checkout-modal,#checkout-modal *),object:where(#checkout-modal,#checkout-modal *){display:block;vertical-align:middle}img:where(#checkout-modal,#checkout-modal *),video:where(#checkout-modal,#checkout-modal *){max-width:100%;height:auto}[hidden]:where(#checkout-modal,#checkout-modal *){display:none}:root{--primary: 240, 100%, 28%;--primary-light: 266, 21%, 76%;--primary-10: 240, 39%, 86%, 1;--primary-lighter: 240, 100%, 98%;--primary-dark: 240, 39%, 52%;--primary-darker: 240, 100%, 28%;--success: 151, 58%, 46%;--error: 0, 74%, 48%;--common: 60, 4%, 43%;--tone-60: 260, 4%, 43%, 1;--tone-40: 270, 3%, 62%, 1;--tone-70: 264, 6%, 34%, 1;--tone-80: 265, 10%, 24%, 1;--grey: 218, 15%, 65%;--grey-100: 270, 3%, 62%;--grey-200: 264, 3%, 72%;--grey-300: 260, 3%, 81%;--grey-400: 264, 6%, 34%;--grey-500: 217, 24%, 27%;--grey-600: 265, 10%, 24%;--grey-700: 260, 4%, 43%;--grey-800: 265, 21%, 76%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input:focus,button:focus{outline:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.container-center{display:flex;align-items:center;justify-content:center}.hide-scrollbar::-webkit-scrollbar{display:none!important}.hide-scrollbar{-ms-overflow-style:none!important;scrollbar-width:none!important}.container-between{display:flex;align-items:center;justify-content:space-between}.align-center{display:flex;align-items:center}.box-container{padding:18px 0}@media (min-width: 768px){.box-container{padding:1.75rem 1.25rem}}@media (min-width: 1024px){.box-container{padding-left:1.75rem;padding-right:1.75rem}}.content-heading{padding-top:.5rem;text-align:center;font-size:1.25rem;line-height:1.75rem;font-weight:600;color:hsl(var(--grey-400))}@media (min-width: 768px){.content-heading{padding-top:0}}.button-outline{display:flex;height:2.5rem;align-items:center;border-radius:.25rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(230 230 231 / var(--tw-border-opacity));font-size:.75rem;line-height:1rem;font-weight:600;color:hsl(var(--grey-400))}.payment-options{display:flex;min-height:3rem;width:100%;max-width:28rem;flex-direction:column;overflow:hidden}.tab{margin-bottom:.75rem;display:flex;align-items:center;justify-content:flex-start;text-align:left}.tab-button{display:flex;flex-grow:1;align-items:center;padding:.75rem 1.25rem;text-align:center;--tw-text-opacity: 1;color:rgb(61 56 68 / var(--tw-text-opacity))}@media (min-width: 768px){.tab-button{display:block}.tab-button:hover{border-radius:.75rem;--tw-bg-opacity: 1;background-color:rgb(236 236 255 / var(--tw-bg-opacity));color:hsla(var(--tone-60))}}@media (min-width: 1024px){.tab-button{display:flex}}.tab-button.active{border-radius:.75rem;background-color:hsl(var(--primary));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.tab-button.active *{fill:#fff}.tab-button span{margin-top:.25rem;margin-bottom:.25rem;display:flex;flex-shrink:0;justify-content:center;font-weight:600}@media (min-width: 1024px){.tab-button span{justify-content:flex-start}}.main{max-height:98dvh;width:100%;overflow:auto}@media (min-width: 768px){.main{padding-top:1rem;padding-bottom:1rem}}@media (min-width: 1024px){.main{width:calc(100% - 250px);padding-left:1rem;padding-right:1rem}}.header-container{border-radius:.75rem;background-color:hsl(var(--primary));padding:2.5rem 1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}@media (min-width: 768px){.header-container{padding:1.25rem 2.25rem}}.header-chip{display:flex;height:1.4375rem;align-items:center;justify-content:center;white-space:nowrap;border-radius:.25rem;background-color:hsl(var(--success));padding-top:0;padding-bottom:0;padding-left:.25rem;padding-right:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.tooltip-textbox{position:relative;z-index:10;border-radius:.5rem;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1rem 1.25rem;font-size:.75rem;line-height:1rem;--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.tooltip-text{font-size:13px;line-height:17.4px;letter-spacing:.025em;color:hsl(var(--grey))}.details-input-container{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(206 205 208 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1.5rem .75rem .5rem}.details-input-container::-moz-placeholder{color:hsl(var(--grey-200))}.details-input-container::placeholder{color:hsl(var(--grey-200))}.details-input-container:focus{outline:2px solid transparent;outline-offset:2px}.details-form-button{display:inline-flex;height:50px;width:100%;align-items:center;justify-content:center;border-radius:.5rem;background-color:hsl(var(--primary));font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.details-form-button:focus{outline:2px solid transparent;outline-offset:2px}.details-form-button:disabled{background-color:hsl(var(--primary-lighter));color:hsl(var(--primary-light))}.pin-container{margin-left:auto;margin-right:auto;display:flex;width:100%;max-width:26rem;align-items:center;justify-content:space-between;gap:.75rem}@media (min-width: 768px){.pin-container{gap:1.5rem}}.pin-text{margin-left:auto;margin-right:auto;width:80%;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}.pin-input{height:3rem;width:3.5rem;border-radius:.25rem;border-width:1px;border-color:hsl(var(--grey-300));text-align:center;font-size:1.125rem;line-height:1.75rem}.pin-input:focus{border-color:hsl(var(--primary));outline:2px solid transparent;outline-offset:2px}@media (min-width: 768px){.pin-input{height:3.5rem;width:5rem;border-radius:.5rem}}.pin-cancel{text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-600))}.pin-cancel:hover{text-decoration-line:underline}.otp-input{width:100%;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(206 205 208 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));padding:1rem .75rem}.otp-input::-moz-placeholder{color:hsl(var(--grey-200))}.otp-input::placeholder{color:hsl(var(--grey-200))}.otp-input:focus{outline:2px solid transparent;outline-offset:2px}.otp-button{height:3.5rem;border-radius:.5rem;background-color:hsl(var(--success));padding-left:1.5rem;padding-right:1.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.otp-button:disabled{opacity:.8}@media (min-width: 768px){.otp-button{height:100%}}@media (max-width: 639px){.otp-button{width:100%}}.otp-text{margin-left:auto;margin-right:auto;width:91.666667%;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}@media (min-width: 768px){.otp-text{width:60%}}.otp-subtext{margin-left:auto;margin-right:auto;width:60%;text-align:center;font-size:.875rem;line-height:1.25rem;color:hsl(var(--grey-700))}.warning-text,.success-text{margin-top:1rem;margin-bottom:1rem;margin-left:auto;margin-right:auto;text-align:center;font-weight:600;color:hsl(var(--grey-400))}.warning-list{margin-left:auto;margin-right:auto;margin-top:.25rem}@media (min-width: 768px){.warning-list{margin-top:.5rem}}.warning-button,.success-button{margin-bottom:1rem;width:100%;border-radius:.5rem;border-width:1px;border-color:hsl(var(--grey-800));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--grey-400))}.transfer-button,.ussd-button{margin-bottom:1rem;width:100%;border-radius:.5rem;border-width:1px;border-color:hsl(var(--primary-light));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;color:hsl(var(--primary-darker))}.transfer-close{margin-bottom:1rem;width:200px;border-radius:.5rem;background-color:hsl(var(--success));padding:1rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}#bank-search-input{width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:2px solid transparent;outline-offset:2px}.bank-options{position:absolute;z-index:1000;margin-top:.25rem;box-sizing:border-box;display:none;max-height:150px;width:100%;overflow-y:auto;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity));--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#bank-select-container{display:flex;gap:.75rem;border-radius:.5rem;border-width:1px;border-color:hsl(var(--primary-light));padding:1rem}#bank-code-span{border-radius:.25rem;background-color:hsla(var(--primary-10));padding:.25rem;color:hsla(var(--tone-60))}.copy-code-button{margin-left:auto;margin-right:auto;margin-bottom:.5rem;display:flex;width:80%;align-items:center;justify-content:center;gap:.5rem;border-radius:.5rem;background-color:hsl(var(--primary));padding:1rem;text-align:center;font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}@media (min-width: 768px){.copy-code-button{width:60%;font-size:1.25rem;line-height:1.75rem}}.spinner{margin-right:.75rem;height:2rem;width:2rem}@keyframes spin{to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite;fill:#fff}#checkout-modal .static{position:static}#checkout-modal .fixed{position:fixed}#checkout-modal .absolute{position:absolute}#checkout-modal .relative{position:relative}#checkout-modal .inset-0{top:0;right:0;bottom:0;left:0}#checkout-modal .-bottom-\[25px\]{bottom:-25px}#checkout-modal .left-0{left:0}#checkout-modal .left-\[50\%\]{left:50%}#checkout-modal .right-0{right:0}#checkout-modal .right-2\/4{right:50%}#checkout-modal .right-3{right:.75rem}#checkout-modal .top-0{top:0}#checkout-modal .top-1{top:.25rem}#checkout-modal .top-1\/2{top:50%}#checkout-modal .top-5{top:1.25rem}#checkout-modal .top-\[20px\]{top:20px}#checkout-modal .top-\[50\%\]{top:50%}#checkout-modal .z-10{z-index:10}#checkout-modal .z-30{z-index:30}#checkout-modal .z-40{z-index:40}#checkout-modal .z-\[3000\]{z-index:3000}#checkout-modal .order-1{order:1}#checkout-modal .order-2{order:2}#checkout-modal .col-span-2{grid-column:span 2 / span 2}#checkout-modal .mx-0{margin-left:0;margin-right:0}#checkout-modal .mx-4{margin-left:1rem;margin-right:1rem}#checkout-modal .mx-5{margin-left:1.25rem;margin-right:1.25rem}#checkout-modal .mx-\[18px\]{margin-left:18px;margin-right:18px}#checkout-modal .mx-\[2px\]{margin-left:2px;margin-right:2px}#checkout-modal .mx-auto{margin-left:auto;margin-right:auto}#checkout-modal .my-1{margin-top:.25rem;margin-bottom:.25rem}#checkout-modal .my-4{margin-top:1rem;margin-bottom:1rem}#checkout-modal .my-6{margin-top:1.5rem;margin-bottom:1.5rem}#checkout-modal .my-8{margin-top:2rem;margin-bottom:2rem}#checkout-modal .my-auto{margin-top:auto;margin-bottom:auto}#checkout-modal .mb-1{margin-bottom:.25rem}#checkout-modal .mb-2{margin-bottom:.5rem}#checkout-modal .mb-4{margin-bottom:1rem}#checkout-modal .mb-5{margin-bottom:1.25rem}#checkout-modal .mb-7{margin-bottom:1.75rem}#checkout-modal .mr-1{margin-right:.25rem}#checkout-modal .mr-2{margin-right:.5rem}#checkout-modal .mr-3{margin-right:.75rem}#checkout-modal .mt-10{margin-top:2.5rem}#checkout-modal .mt-2{margin-top:.5rem}#checkout-modal .mt-4{margin-top:1rem}#checkout-modal .mt-7{margin-top:1.75rem}#checkout-modal .mt-8{margin-top:2rem}#checkout-modal .block{display:block}#checkout-modal .inline-block{display:inline-block}#checkout-modal .inline{display:inline}#checkout-modal .flex{display:flex}#checkout-modal .grid{display:grid}#checkout-modal .contents{display:contents}#checkout-modal .hidden{display:none}#checkout-modal .h-12{height:3rem}#checkout-modal .h-3{height:.75rem}#checkout-modal .h-5{height:1.25rem}#checkout-modal .h-6{height:1.5rem}#checkout-modal .h-8{height:2rem}#checkout-modal .h-9{height:2.25rem}#checkout-modal .h-\[20vh\]{height:20vh}#checkout-modal .h-\[40dvh\]{height:40dvh}#checkout-modal .h-\[40vh\]{height:40vh}#checkout-modal .h-\[50px\]{height:50px}#checkout-modal .h-full{height:100%}#checkout-modal .max-h-screen{max-height:100vh}#checkout-modal .min-h-full{min-height:100%}#checkout-modal .w-0{width:0px}#checkout-modal .w-11\/12{width:91.666667%}#checkout-modal .w-12{width:3rem}#checkout-modal .w-16{width:4rem}#checkout-modal .w-3{width:.75rem}#checkout-modal .w-4\/5{width:80%}#checkout-modal .w-5{width:1.25rem}#checkout-modal .w-5\/6{width:83.333333%}#checkout-modal .w-6{width:1.5rem}#checkout-modal .w-8{width:2rem}#checkout-modal .w-9{width:2.25rem}#checkout-modal .w-\[150px\]{width:150px}#checkout-modal .w-\[200px\]{width:200px}#checkout-modal .w-\[250px\]{width:250px}#checkout-modal .w-auto{width:auto}#checkout-modal .w-full{width:100%}#checkout-modal .min-w-8{min-width:2rem}#checkout-modal .min-w-\[15rem\]{min-width:15rem}#checkout-modal .max-w-\[28rem\]{max-width:28rem}#checkout-modal .max-w-\[60\%\]{max-width:60%}#checkout-modal .max-w-\[8rem\]{max-width:8rem}#checkout-modal .flex-1{flex:1 1 0%}#checkout-modal .grow{flex-grow:1}#checkout-modal .-translate-x-\[50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .-translate-y-2\/4,#checkout-modal .-translate-y-\[50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .translate-x-2\/4{--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .cursor-pointer{cursor:pointer}#checkout-modal .cursor-text{cursor:text}#checkout-modal .appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}#checkout-modal .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}#checkout-modal .grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}#checkout-modal .grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}#checkout-modal .grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}#checkout-modal .grid-rows-\[auto_1fr_auto\]{grid-template-rows:auto 1fr auto}#checkout-modal .flex-col{flex-direction:column}#checkout-modal .place-items-center{place-items:center}#checkout-modal .items-end{align-items:flex-end}#checkout-modal .items-center{align-items:center}#checkout-modal .justify-center{justify-content:center}#checkout-modal .gap-1{gap:.25rem}#checkout-modal .gap-2{gap:.5rem}#checkout-modal .gap-3{gap:.75rem}#checkout-modal .gap-4{gap:1rem}#checkout-modal .gap-5{gap:1.25rem}#checkout-modal .gap-6{gap:1.5rem}#checkout-modal .gap-7{gap:1.75rem}#checkout-modal .gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}#checkout-modal .gap-y-4{row-gap:1rem}#checkout-modal .justify-self-end{justify-self:end}#checkout-modal .justify-self-center{justify-self:center}#checkout-modal .overflow-auto{overflow:auto}#checkout-modal .overflow-hidden{overflow:hidden}#checkout-modal .overflow-y-auto{overflow-y:auto}#checkout-modal .whitespace-normal{white-space:normal}#checkout-modal .whitespace-nowrap{white-space:nowrap}#checkout-modal .break-words{overflow-wrap:break-word}#checkout-modal .rounded-full{border-radius:9999px}#checkout-modal .rounded-lg{border-radius:.5rem}#checkout-modal .rounded-md{border-radius:.375rem}#checkout-modal .border,#checkout-modal .border-\[1px\]{border-width:1px}#checkout-modal .border-b{border-bottom-width:1px}#checkout-modal .border-dashed{border-style:dashed}#checkout-modal .border-\[\#C0B5CF\]{--tw-border-opacity: 1;border-color:rgb(192 181 207 / var(--tw-border-opacity))}#checkout-modal .border-\[\#E6E6E7\]{--tw-border-opacity: 1;border-color:rgb(230 230 231 / var(--tw-border-opacity))}#checkout-modal .border-grey-200{border-color:hsl(var(--grey-200))}#checkout-modal .border-primary{border-color:hsl(var(--primary))}#checkout-modal .border-b-white{--tw-border-opacity: 1;border-bottom-color:rgb(255 255 255 / var(--tw-border-opacity))}#checkout-modal .bg-\[\#f4f4ff\]{--tw-bg-opacity: 1;background-color:rgb(244 244 255 / var(--tw-bg-opacity))}#checkout-modal .bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}#checkout-modal .bg-primary{background-color:hsl(var(--primary))}#checkout-modal .bg-primary-lighter{background-color:hsl(var(--primary-lighter))}#checkout-modal .bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}#checkout-modal .bg-opacity-30{--tw-bg-opacity: .3}#checkout-modal .p-0{padding:0}#checkout-modal .p-3{padding:.75rem}#checkout-modal .px-0{padding-left:0;padding-right:0}#checkout-modal .px-2{padding-left:.5rem;padding-right:.5rem}#checkout-modal .px-3{padding-left:.75rem;padding-right:.75rem}#checkout-modal .px-4{padding-left:1rem;padding-right:1rem}#checkout-modal .px-5{padding-left:1.25rem;padding-right:1.25rem}#checkout-modal .px-6{padding-left:1.5rem;padding-right:1.5rem}#checkout-modal .px-8{padding-left:2rem;padding-right:2rem}#checkout-modal .py-2{padding-top:.5rem;padding-bottom:.5rem}#checkout-modal .py-3{padding-top:.75rem;padding-bottom:.75rem}#checkout-modal .py-4{padding-top:1rem;padding-bottom:1rem}#checkout-modal .py-5{padding-top:1.25rem;padding-bottom:1.25rem}#checkout-modal .py-8{padding-top:2rem;padding-bottom:2rem}#checkout-modal .pb-1{padding-bottom:.25rem}#checkout-modal .pb-2{padding-bottom:.5rem}#checkout-modal .pb-3{padding-bottom:.75rem}#checkout-modal .pb-4{padding-bottom:1rem}#checkout-modal .pb-5{padding-bottom:1.25rem}#checkout-modal .pb-\[9\.6px\]{padding-bottom:9.6px}#checkout-modal .pt-1{padding-top:.25rem}#checkout-modal .pt-10{padding-top:2.5rem}#checkout-modal .pt-2{padding-top:.5rem}#checkout-modal .pt-3{padding-top:.75rem}#checkout-modal .text-left{text-align:left}#checkout-modal .text-center{text-align:center}#checkout-modal .text-\[0\.625rem\]{font-size:.625rem}#checkout-modal .text-\[10px\]{font-size:10px}#checkout-modal .text-base{font-size:1rem;line-height:1.5rem}#checkout-modal .text-lg{font-size:1.125rem;line-height:1.75rem}#checkout-modal .text-sm{font-size:.875rem;line-height:1.25rem}#checkout-modal .text-xl{font-size:1.25rem;line-height:1.75rem}#checkout-modal .text-xs{font-size:.75rem;line-height:1rem}#checkout-modal .font-medium{font-weight:500}#checkout-modal .font-semibold{font-weight:600}#checkout-modal .lowercase{text-transform:lowercase}#checkout-modal .tracking-\[0\.5px\]{letter-spacing:.5px}#checkout-modal .text-\[\#98A2B3\]{--tw-text-opacity: 1;color:rgb(152 162 179 / var(--tw-text-opacity))}#checkout-modal .text-black{--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity))}#checkout-modal .text-common{color:hsl(var(--common))}#checkout-modal .text-grey-100{color:hsl(var(--grey-100))}#checkout-modal .text-grey-400{color:hsl(var(--grey-400))}#checkout-modal .text-grey-600{color:hsl(var(--grey-600))}#checkout-modal .text-grey-700{color:hsl(var(--grey-700))}#checkout-modal .text-primary-dark{color:hsl(var(--primary-dark))}#checkout-modal .text-success{color:hsl(var(--success))}#checkout-modal .text-tone-70{color:hsla(var(--tone-70))}#checkout-modal .opacity-0{opacity:0}#checkout-modal .opacity-30{opacity:.3}#checkout-modal .shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#checkout-modal .shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}#checkout-modal .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}#checkout-modal .transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}#checkout-modal .duration-500{transition-duration:.5s}#checkout-modal .duration-700{transition-duration:.7s}#checkout-modal *::-webkit-scrollbar{height:.2em;width:.4em;cursor:pointer;--tw-bg-opacity: 1;background-color:rgb(244 244 244 / var(--tw-bg-opacity))}#checkout-modal *::-webkit-scrollbar-track{border-radius:100vh;--tw-bg-opacity: 1;background-color:rgb(153 146 146 / var(--tw-bg-opacity))}#checkout-modal *::-webkit-scrollbar-thumb{cursor:pointer;border-radius:100vh;border-width:3px;--tw-border-opacity: 1;border-color:rgb(112 112 112 / var(--tw-border-opacity));--tw-bg-opacity: 1;background-color:rgb(224 203 203 / var(--tw-bg-opacity))}#checkout-modal *::-webkit-scrollbar-thumb:hover{background:#53b6ed}.tab-button.active:after{animation:text-underline-animation .3s linear forwards}#toast-container{width:100%;margin:0 auto}.toast{display:flex;align-items:center;padding:15px;margin-bottom:10px;border-radius:5px;opacity:0;transform:translateY(-50px);transition:opacity .5s,transform .5s;box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.toast.show{opacity:1;transform:translateY(0)}.toast.success{background-color:hsl(var(--success));color:#fff}.toast.error{background-color:hsl(var(--error));color:#fff}.toast .close-btn{margin-left:auto;cursor:pointer;color:#fff}.progress-container{width:100%;height:10px;background-color:#f3f3f3;border-radius:5px;overflow:hidden;position:relative}.progress-bar{height:100%;background-color:#4caf50;width:0;position:absolute;top:0;left:0;animation:progress 1s linear infinite}@keyframes progress{0%{width:0px}to{width:100%}}#checkout-modal{color:hsla(var(--tone-80))}@media (min-width: 768px){.md\:container-center{display:flex;align-items:center;justify-content:center}}#checkout-modal .before\:absolute:before{content:var(--tw-content);position:absolute}#checkout-modal .before\:-top-0:before{content:var(--tw-content);top:-0px}#checkout-modal .before\:left-0:before{content:var(--tw-content);left:0}#checkout-modal .before\:h-4:before{content:var(--tw-content);height:1rem}#checkout-modal .before\:w-4:before{content:var(--tw-content);width:1rem}#checkout-modal .before\:-translate-y-1:before{content:var(--tw-content);--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .before\:translate-x-\[50\%\]:before{content:var(--tw-content);--tw-translate-x: 50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .before\:rotate-45:before{content:var(--tw-content);--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .before\:bg-white:before{content:var(--tw-content);--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}#checkout-modal .hover\:block:hover{display:block}#checkout-modal .hover\:w-full:hover{width:100%}#checkout-modal .hover\:rotate-0:hover{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal .hover\:border-primary:hover{border-color:hsl(var(--primary))}#checkout-modal .hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity))}#checkout-modal .hover\:bg-primary:hover{background-color:hsl(var(--primary))}#checkout-modal .hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}#checkout-modal .hover\:underline:hover{text-decoration-line:underline}#checkout-modal .hover\:opacity-100:hover{opacity:1}#checkout-modal :is(.group:hover .group-hover\:block){display:block}#checkout-modal :is(.group:hover .group-hover\:flex){display:flex}#checkout-modal :is(.group:hover .group-hover\:w-full){width:100%}#checkout-modal :is(.group:hover .group-hover\:rotate-0){--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}#checkout-modal :is(.group:hover .group-hover\:fill-tone-40){fill:hsla(var(--tone-40))}#checkout-modal :is(.group:hover .group-hover\:fill-white){fill:#fff}@media (min-width: 640px){#checkout-modal .sm\:my-8{margin-top:2rem;margin-bottom:2rem}#checkout-modal .sm\:min-h-\[70\%\]{min-height:70%}#checkout-modal .sm\:items-center{align-items:center}#checkout-modal .sm\:px-3{padding-left:.75rem;padding-right:.75rem}}@media (min-width: 768px){#checkout-modal .md\:-right-0{right:-0px}#checkout-modal .md\:col-span-2{grid-column:span 2 / span 2}#checkout-modal .md\:mx-5{margin-left:1.25rem;margin-right:1.25rem}#checkout-modal .md\:mx-6{margin-left:1.5rem;margin-right:1.5rem}#checkout-modal .md\:mx-\[18px\]{margin-left:18px;margin-right:18px}#checkout-modal .md\:flex{display:flex}#checkout-modal .md\:hidden{display:none}#checkout-modal .md\:h-8{height:2rem}#checkout-modal .md\:w-3\/5{width:60%}#checkout-modal .md\:w-4\/5{width:80%}#checkout-modal .md\:w-8{width:2rem}#checkout-modal .md\:min-w-\[18rem\]{min-width:18rem}#checkout-modal .md\:max-w-\[13\.4rem\]{max-width:13.4rem}#checkout-modal .md\:max-w-\[900px\]{max-width:900px}#checkout-modal .md\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}#checkout-modal .md\:gap-5{gap:1.25rem}#checkout-modal .md\:gap-6{gap:1.5rem}#checkout-modal .md\:gap-9{gap:2.25rem}#checkout-modal .md\:gap-x-4{-moz-column-gap:1rem;column-gap:1rem}#checkout-modal .md\:gap-y-6{row-gap:1.5rem}#checkout-modal .md\:px-5{padding-left:1.25rem;padding-right:1.25rem}#checkout-modal .md\:px-6{padding-left:1.5rem;padding-right:1.5rem}#checkout-modal .md\:px-7{padding-left:1.75rem;padding-right:1.75rem}#checkout-modal .md\:px-9{padding-left:2.25rem;padding-right:2.25rem}#checkout-modal .md\:py-16{padding-top:4rem;padding-bottom:4rem}#checkout-modal .md\:py-4{padding-top:1rem;padding-bottom:1rem}#checkout-modal .md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}#checkout-modal .md\:py-7{padding-top:1.75rem;padding-bottom:1.75rem}#checkout-modal .md\:py-8{padding-top:2rem;padding-bottom:2rem}#checkout-modal .md\:text-base{font-size:1rem;line-height:1.5rem}#checkout-modal .md\:text-xl{font-size:1.25rem;line-height:1.75rem}#checkout-modal .md\:font-medium{font-weight:500}}@media (min-width: 1024px){#checkout-modal .lg\:block{display:block}#checkout-modal .lg\:max-w-\[20rem\]{max-width:20rem}#checkout-modal .lg\:px-7{padding-left:1.75rem;padding-right:1.75rem}#checkout-modal .lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (max-width: 639px){#checkout-modal .max-sm\:mx-auto{margin-left:auto;margin-right:auto}#checkout-modal .max-sm\:hidden{display:none}#checkout-modal .max-sm\:w-4\/5{width:80%}#checkout-modal .max-sm\:text-center{text-align:center}}
|
package/dist/modules/Card.d.ts
CHANGED
|
@@ -1,12 +1,29 @@
|
|
|
1
|
-
import { PaymentResponseData } from '../types/types';
|
|
1
|
+
import { GetMerchantPlanDetail, PaymentResponseData } from '../types/types';
|
|
2
2
|
|
|
3
|
+
type Props = {
|
|
4
|
+
container: HTMLElement;
|
|
5
|
+
closeModal: () => void;
|
|
6
|
+
token: string;
|
|
7
|
+
encryption: string;
|
|
8
|
+
email: string;
|
|
9
|
+
amount: number;
|
|
10
|
+
switchTab: (val: number) => void;
|
|
11
|
+
planId: string;
|
|
12
|
+
onSuccess?: (_val?: any) => void;
|
|
13
|
+
currency?: string;
|
|
14
|
+
rdtCode?: string;
|
|
15
|
+
url?: string;
|
|
16
|
+
reference?: string;
|
|
17
|
+
};
|
|
3
18
|
declare class Card {
|
|
4
19
|
private contents;
|
|
5
20
|
private cardDetailForm;
|
|
6
21
|
private cardOtpValidationForm;
|
|
22
|
+
private merchantPlanDetail;
|
|
7
23
|
private cardPinForm;
|
|
8
24
|
private avsForm;
|
|
9
25
|
private successScreen;
|
|
26
|
+
private pageLoader;
|
|
10
27
|
private warningScreen;
|
|
11
28
|
private container;
|
|
12
29
|
private closeModal;
|
|
@@ -19,9 +36,12 @@ declare class Card {
|
|
|
19
36
|
private currency?;
|
|
20
37
|
private _currentStep;
|
|
21
38
|
private activeRef;
|
|
39
|
+
private rdtCode?;
|
|
40
|
+
private url?;
|
|
41
|
+
private reference?;
|
|
22
42
|
private creditCardTypes;
|
|
23
43
|
private switchTab;
|
|
24
|
-
constructor(
|
|
44
|
+
constructor({ amount, closeModal, container, email, encryption, planId, switchTab, token, currency, rdtCode, url, reference, onSuccess, }: Props);
|
|
25
45
|
private displayCardTypes;
|
|
26
46
|
get currentStep(): number;
|
|
27
47
|
set currentStep(step: number);
|
|
@@ -40,8 +60,7 @@ declare class Card {
|
|
|
40
60
|
}): Promise<void>;
|
|
41
61
|
private redirectTo3DS;
|
|
42
62
|
verifyPayment(onSuccess: (data: PaymentResponseData) => void, onError: (error: Error) => void): Promise<void>;
|
|
43
|
-
|
|
44
|
-
renderCardContent(): string | undefined;
|
|
63
|
+
renderCardContent(values?: GetMerchantPlanDetail): void;
|
|
45
64
|
private displayButtonText;
|
|
46
65
|
}
|
|
47
66
|
export default Card;
|
|
@@ -1,14 +1,38 @@
|
|
|
1
1
|
import { PaymentResponseData } from '../types/types';
|
|
2
|
+
import { PageLoader } from '../views/shared/page-loader';
|
|
2
3
|
|
|
4
|
+
type Props = {
|
|
5
|
+
container: HTMLElement;
|
|
6
|
+
closeModal: () => void;
|
|
7
|
+
token: string;
|
|
8
|
+
email: string;
|
|
9
|
+
amount: number;
|
|
10
|
+
planId: string;
|
|
11
|
+
onSuccess?: (_val?: any) => void;
|
|
12
|
+
currency?: string;
|
|
13
|
+
rdtCode?: string;
|
|
14
|
+
url?: string;
|
|
15
|
+
reference?: string;
|
|
16
|
+
};
|
|
3
17
|
declare class Transfer {
|
|
4
18
|
private container;
|
|
5
19
|
private contents;
|
|
6
20
|
private closeModal;
|
|
7
21
|
private onSuccess;
|
|
8
22
|
private email;
|
|
23
|
+
private transferDetails;
|
|
24
|
+
private transferConfirmationOne;
|
|
25
|
+
private transferConfirmationTwo;
|
|
26
|
+
private transferConfirmationProgress;
|
|
27
|
+
private transferExpired;
|
|
28
|
+
mainLoader: PageLoader;
|
|
9
29
|
private token;
|
|
30
|
+
private currency?;
|
|
10
31
|
private planId;
|
|
11
32
|
private amount;
|
|
33
|
+
private rdtCode?;
|
|
34
|
+
private url?;
|
|
35
|
+
private reference?;
|
|
12
36
|
private _currentStep;
|
|
13
37
|
private activeRef;
|
|
14
38
|
private paymentResponse;
|
|
@@ -16,17 +40,14 @@ declare class Transfer {
|
|
|
16
40
|
private timeLeft;
|
|
17
41
|
private timerId;
|
|
18
42
|
private abortController;
|
|
19
|
-
constructor(
|
|
43
|
+
constructor({ amount, closeModal, container, email, planId, token, currency, rdtCode, url, reference, onSuccess, }: Props);
|
|
20
44
|
get currentStep(): number;
|
|
21
45
|
set currentStep(step: number);
|
|
22
46
|
attachInputListeners(): void;
|
|
47
|
+
onSentVerify(values: number): void;
|
|
23
48
|
createTransfer(): Promise<void>;
|
|
24
49
|
verifyTransfer(token: string, initialInterval: number, onSuccess: (data: PaymentResponseData) => void, onError: (error: Error) => void): Promise<void>;
|
|
25
|
-
|
|
26
|
-
private updateTransferDetailsContent;
|
|
27
|
-
renderTransferContent(): void;
|
|
28
|
-
private startTimer;
|
|
29
|
-
private updateProgressTimerContent;
|
|
50
|
+
renderTransferContent(): string | undefined;
|
|
30
51
|
private stopTimer;
|
|
31
52
|
stopProgressBar(): void;
|
|
32
53
|
copyToClipboard(text: string, element: Element): void;
|
package/dist/modules/Ussd.d.ts
CHANGED
|
@@ -1,21 +1,51 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
container: HTMLElement;
|
|
3
|
+
onSuccess?: (_val?: any) => void;
|
|
4
|
+
secret: string;
|
|
5
|
+
amount: number;
|
|
6
|
+
currency: string;
|
|
7
|
+
planId: string;
|
|
8
|
+
reference?: string;
|
|
9
|
+
email?: string;
|
|
10
|
+
fullname?: string;
|
|
11
|
+
rdtCode?: string;
|
|
12
|
+
url?: string;
|
|
13
|
+
closeModal: () => void;
|
|
14
|
+
switchTab: (val: number) => void;
|
|
15
|
+
};
|
|
1
16
|
declare class Ussd {
|
|
2
17
|
private contents;
|
|
3
|
-
private banks;
|
|
4
18
|
private selectedCode?;
|
|
19
|
+
private secret;
|
|
20
|
+
private amount;
|
|
21
|
+
private currency;
|
|
22
|
+
private planId?;
|
|
23
|
+
private fullname?;
|
|
24
|
+
private email?;
|
|
25
|
+
private pageLoader;
|
|
26
|
+
private reference?;
|
|
5
27
|
private onSuccess;
|
|
28
|
+
private closeModal;
|
|
29
|
+
private warningScreen;
|
|
30
|
+
private switchTab;
|
|
6
31
|
private bankDetail;
|
|
7
32
|
private viewUssdCode;
|
|
8
33
|
private _currentStep;
|
|
9
|
-
|
|
34
|
+
private container;
|
|
35
|
+
private paymentService;
|
|
36
|
+
private successScreen;
|
|
37
|
+
private activeRef;
|
|
38
|
+
private abortController;
|
|
39
|
+
private _retry_count;
|
|
40
|
+
private intervalPayment?;
|
|
41
|
+
private rdtCode?;
|
|
42
|
+
private url?;
|
|
43
|
+
constructor({ container, onSuccess, secret, amount, currency, planId, email, fullname, reference, rdtCode, url, closeModal, switchTab, }: Props);
|
|
10
44
|
get currentStep(): number;
|
|
11
45
|
set currentStep(step: number);
|
|
12
|
-
private getUssdStepContent;
|
|
13
46
|
private onCodeSelect;
|
|
47
|
+
private validate;
|
|
14
48
|
renderUssdContent(): void;
|
|
15
49
|
handleSelectChange(_e: Event): void;
|
|
16
|
-
private renderSearchOptions;
|
|
17
|
-
searchBanksOnInput(searchInput: HTMLInputElement, optionsContainer: HTMLElement): void;
|
|
18
|
-
openSearchOnFocus(searchInput: HTMLInputElement, optionsContainer: HTMLElement): void;
|
|
19
|
-
closeSearchOptionsOutsideFocus(event: Event, searchInput: HTMLInputElement, optionsContainer: HTMLElement): void;
|
|
20
50
|
}
|
|
21
51
|
export default Ussd;
|
package/dist/types/types.d.ts
CHANGED
|
@@ -1,13 +1,20 @@
|
|
|
1
|
+
export type Prettify<T> = {
|
|
2
|
+
[K in keyof T]: T[K];
|
|
3
|
+
} & {};
|
|
1
4
|
export type PaymentRequestPayload = {
|
|
2
5
|
merchantId?: string;
|
|
3
6
|
amount: number;
|
|
4
|
-
channel
|
|
7
|
+
channel?: string;
|
|
5
8
|
currency: string;
|
|
6
9
|
customer: {
|
|
7
|
-
email
|
|
10
|
+
email?: string;
|
|
11
|
+
name?: string;
|
|
12
|
+
phoneNumber?: string;
|
|
8
13
|
};
|
|
9
14
|
reference: string;
|
|
10
15
|
planId?: string;
|
|
16
|
+
callbackUrl?: string;
|
|
17
|
+
regionId?: number;
|
|
11
18
|
};
|
|
12
19
|
export type CardDetails = {
|
|
13
20
|
pan: string;
|
|
@@ -15,13 +22,28 @@ export type CardDetails = {
|
|
|
15
22
|
expiryMonth: string;
|
|
16
23
|
expiryYear: string;
|
|
17
24
|
};
|
|
18
|
-
export type CardPaymentRequestPayload = PaymentRequestPayload & {
|
|
25
|
+
export type CardPaymentRequestPayload = Prettify<PaymentRequestPayload & {
|
|
19
26
|
card?: CardDetails;
|
|
20
27
|
encryptedCard: string;
|
|
21
|
-
}
|
|
28
|
+
}>;
|
|
29
|
+
export type UssdPaymentRequestPayload = Prettify<PaymentRequestPayload & {
|
|
30
|
+
bank: Partial<{
|
|
31
|
+
code: string;
|
|
32
|
+
name: string;
|
|
33
|
+
}>;
|
|
34
|
+
}>;
|
|
22
35
|
export type AuthorizeCardPaymentRequestPayload = {
|
|
23
36
|
authorization: {
|
|
24
|
-
pin
|
|
37
|
+
pin?: string;
|
|
38
|
+
otp?: string;
|
|
39
|
+
phoneNumber?: string;
|
|
40
|
+
avs?: {
|
|
41
|
+
state: string;
|
|
42
|
+
city: string;
|
|
43
|
+
country: string;
|
|
44
|
+
address: string;
|
|
45
|
+
zipCode: string;
|
|
46
|
+
};
|
|
25
47
|
};
|
|
26
48
|
reference: string;
|
|
27
49
|
};
|
|
@@ -29,6 +51,7 @@ export type ValidateCardPaymentRequestPayload = {
|
|
|
29
51
|
authorization: {
|
|
30
52
|
otp?: string;
|
|
31
53
|
phoneNumber?: string;
|
|
54
|
+
pin?: string;
|
|
32
55
|
avs?: {
|
|
33
56
|
state: string;
|
|
34
57
|
city: string;
|
|
@@ -51,9 +74,21 @@ export type PaymentResponseData = {
|
|
|
51
74
|
customer: Customer;
|
|
52
75
|
provider: string;
|
|
53
76
|
providerMessage: string;
|
|
54
|
-
rate: Rate;
|
|
55
77
|
authorization: Authorization;
|
|
56
78
|
createdAt: Date;
|
|
79
|
+
localAmount: number;
|
|
80
|
+
localCurrency: string;
|
|
81
|
+
rate: number;
|
|
82
|
+
region: string;
|
|
83
|
+
card: {
|
|
84
|
+
type: string;
|
|
85
|
+
firstSix: string;
|
|
86
|
+
lastFour: string;
|
|
87
|
+
};
|
|
88
|
+
ussd: {
|
|
89
|
+
code: string;
|
|
90
|
+
paymentCode: string;
|
|
91
|
+
};
|
|
57
92
|
};
|
|
58
93
|
export interface Authorization {
|
|
59
94
|
mode: string;
|
|
@@ -104,3 +139,10 @@ export type GetMerchantPlanDetail = {
|
|
|
104
139
|
};
|
|
105
140
|
plan: PlanDetailResponseData;
|
|
106
141
|
};
|
|
142
|
+
export type GetBanksRequestParams = {
|
|
143
|
+
ussd: boolean;
|
|
144
|
+
};
|
|
145
|
+
export type GetBanksResponse = Array<{
|
|
146
|
+
code: string;
|
|
147
|
+
name: string;
|
|
148
|
+
}>;
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export type SpotflowProps = {
|
|
2
|
+
rdtCode?: string;
|
|
2
3
|
merchantKey: string;
|
|
3
4
|
encryptionKey: string;
|
|
4
5
|
planId: string;
|
|
@@ -13,4 +14,5 @@ export type SpotflowProps = {
|
|
|
13
14
|
firstname?: string;
|
|
14
15
|
lastname?: string;
|
|
15
16
|
onTransferConfirmationPending?: (_val?: any) => void;
|
|
17
|
+
url?: string;
|
|
16
18
|
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Returns the difference between two dates in readable text.
|
|
3
|
+
* @param {Date|string|number} startDate - start date.
|
|
4
|
+
* @param {Date|string|number} endDate - end date.
|
|
5
|
+
* @returns {string} The difference between startDate and endDate in readable text
|
|
6
|
+
*/
|
|
7
|
+
export declare const textDiffInDates: (startDate: Date | string | number, endDate: Date | string | number) => string;
|
|
8
|
+
export declare function formatTimeString(seconds: number): string;
|
|
9
|
+
export declare function getTimeformatWithMomentAppend(time: number, isMoment?: boolean): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const mixpanelKey = "11162d9a0801daeaf786f1200cd3112b";
|
|
@@ -6,3 +6,9 @@ export declare const formatWholeDecimal: (value: number) => {
|
|
|
6
6
|
decimal: number;
|
|
7
7
|
};
|
|
8
8
|
export declare function formatNumberInFormat(num: number): string;
|
|
9
|
+
export declare const CurrenctObject: {
|
|
10
|
+
readonly USD: "$";
|
|
11
|
+
readonly EUR: "€";
|
|
12
|
+
readonly GBP: "£";
|
|
13
|
+
readonly NGN: "₦";
|
|
14
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const setBaseUrl: (prodUrl: string, devUrl?: string) => string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const underscoreRemove: (str: string) => string;
|
|
2
|
+
export declare const capitalizeFirstChar: (str: string) => string;
|
|
3
|
+
export declare const capitalizeWord: (str: string) => string;
|
|
4
|
+
export declare const isEmptyString: (str: string) => boolean;
|
|
5
|
+
export declare const underSCoreCapitalizeWord: (str: string) => string;
|
|
6
|
+
export declare const truncateString: (string: string, maxLength?: number) => string;
|
|
7
|
+
export declare const camelCaseReplacement: (str: string) => string;
|
|
8
|
+
export declare const lowercaseUndersoreText: (str: string) => string;
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
export declare const generatePaymentReference: () => string;
|
|
2
2
|
export declare const clearNumber: (value?: string) => string;
|
|
3
3
|
export declare const formatCreditCardNumber: (value: string) => string;
|
|
4
|
+
export declare const clearNumberModified: (value: string) => string;
|
|
5
|
+
export declare const formatCreditCardModified: (value: string) => string;
|
|
4
6
|
export declare const formatCVC: (value: string) => string;
|
|
5
7
|
export declare const formatExpirationDate: (value: string) => string;
|
|
6
8
|
export declare const unFormatCreditCardNumber: (value: string) => string;
|
|
7
9
|
export declare const formatTime: (seconds: number) => string;
|
|
8
10
|
export declare const getCardType: (cardNumber: string) => string;
|
|
9
11
|
export declare const showToast: (message: string, theme: "success" | "error" | "info" | "warning", duration?: number) => void;
|
|
12
|
+
export declare class Toast {
|
|
13
|
+
static createToast: (message: string, theme: "success" | "error" | "info" | "warning") => HTMLDivElement;
|
|
14
|
+
static showToast: (message: string, theme: "success" | "error" | "info" | "warning", duration?: number) => void;
|
|
15
|
+
static removeToast: (toast: HTMLDivElement) => void;
|
|
16
|
+
}
|
|
@@ -5,13 +5,21 @@ type ContactDetails = {
|
|
|
5
5
|
code?: string;
|
|
6
6
|
state: string;
|
|
7
7
|
};
|
|
8
|
+
type Props = {
|
|
9
|
+
onAction: (_evt: Event) => (_val: ContactDetails) => void;
|
|
10
|
+
container: HTMLDivElement;
|
|
11
|
+
};
|
|
8
12
|
export declare class AvsValidationForm {
|
|
9
13
|
container: HTMLDivElement;
|
|
14
|
+
private onAction;
|
|
10
15
|
contactDetails: ContactDetails;
|
|
11
|
-
|
|
12
|
-
|
|
16
|
+
private countries;
|
|
17
|
+
private states;
|
|
18
|
+
constructor(props: Props);
|
|
19
|
+
attachListeners(): void;
|
|
13
20
|
handleInputChange(event: Event): void;
|
|
14
21
|
validate(callback?: (_va: ContactDetails) => void): void;
|
|
22
|
+
renderComponent(): void;
|
|
15
23
|
render(): string;
|
|
16
24
|
}
|
|
17
25
|
export {};
|
|
@@ -1,8 +1,19 @@
|
|
|
1
|
+
type CardDetailValueType = {
|
|
2
|
+
pan: string;
|
|
3
|
+
cvv: string;
|
|
4
|
+
expiryMonth: string;
|
|
5
|
+
expiryYear: string;
|
|
6
|
+
};
|
|
7
|
+
type Props = {
|
|
8
|
+
container: HTMLDivElement;
|
|
9
|
+
onAction: (_evt: Event) => (_values: CardDetailValueType) => void;
|
|
10
|
+
};
|
|
1
11
|
export declare class CardDetailForm {
|
|
2
12
|
container: HTMLElement | Element;
|
|
13
|
+
private onAction;
|
|
3
14
|
private cardDetailsValues;
|
|
4
15
|
private creditCardTypes;
|
|
5
|
-
constructor(
|
|
16
|
+
constructor(props: Props);
|
|
6
17
|
/**
|
|
7
18
|
*
|
|
8
19
|
* @param func
|
|
@@ -12,15 +23,12 @@ export declare class CardDetailForm {
|
|
|
12
23
|
expiryMonth: this.cardDetailsValues?.expiry.split("/")[0].trim(),
|
|
13
24
|
expiryYear: this.cardDetailsValues?.expiry.split("/")[1].trim(),
|
|
14
25
|
*/
|
|
15
|
-
attachListener(
|
|
16
|
-
pan: string;
|
|
17
|
-
cvv: string;
|
|
18
|
-
expiryMonth: string;
|
|
19
|
-
expiryYear: string;
|
|
20
|
-
}) => void): void;
|
|
26
|
+
attachListener(): void;
|
|
21
27
|
handleInputChange(event: Event, button: HTMLButtonElement | null): void;
|
|
28
|
+
validateCard(): boolean;
|
|
22
29
|
private displayCardTypes;
|
|
23
30
|
private filterCreditCardType;
|
|
24
31
|
renderContent(): void;
|
|
25
32
|
render(): string;
|
|
26
33
|
}
|
|
34
|
+
export {};
|
|
@@ -1,9 +1,21 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
container: HTMLDivElement;
|
|
3
|
+
onAction: (_evt: Event) => (_val: string) => void;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
email?: string;
|
|
6
|
+
phone?: string;
|
|
7
|
+
};
|
|
1
8
|
export declare class CardOtpValidationForm {
|
|
2
9
|
container: HTMLElement | Element;
|
|
3
10
|
cardOtp: string;
|
|
11
|
+
private phone;
|
|
12
|
+
private email;
|
|
4
13
|
private closeModal;
|
|
5
|
-
|
|
6
|
-
|
|
14
|
+
private onAction;
|
|
15
|
+
constructor(props: Props);
|
|
16
|
+
attachListener(): void;
|
|
7
17
|
handleOtpInput(event: Event, button: HTMLButtonElement | null): void;
|
|
18
|
+
renderComponent(): void;
|
|
8
19
|
render(): string;
|
|
9
20
|
}
|
|
21
|
+
export {};
|
|
@@ -1,9 +1,16 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
onAction: (_val: string) => void;
|
|
3
|
+
container: HTMLDivElement;
|
|
4
|
+
};
|
|
1
5
|
export declare class CardPinForm {
|
|
2
6
|
container: HTMLElement | Element;
|
|
3
7
|
private cardPin;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
private onAction;
|
|
9
|
+
constructor(props: Props);
|
|
10
|
+
attachListener(): void;
|
|
11
|
+
handlePinPaste(event: ClipboardEvent, pinInputs: HTMLInputElement[]): void;
|
|
12
|
+
handlePinInputChange(event: Event, index: number, pinInputs: HTMLInputElement[]): void;
|
|
13
|
+
renderComponent(): void;
|
|
8
14
|
render(): string;
|
|
9
15
|
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
type Props = {
|
|
2
|
+
container: HTMLDivElement;
|
|
3
|
+
onAction: () => void;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
};
|
|
6
|
+
export declare class MainFooter {
|
|
7
|
+
container: HTMLDivElement;
|
|
8
|
+
onAction: () => void;
|
|
9
|
+
onClose: () => void;
|
|
10
|
+
constructor(props: Props);
|
|
11
|
+
attachListener(): void;
|
|
12
|
+
renderComponent(): void;
|
|
13
|
+
render(): string;
|
|
14
|
+
}
|
|
15
|
+
export {};
|