@voxepay/checkout 0.1.0
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 +143 -0
- package/dist/components/modal.d.ts +90 -0
- package/dist/index.cjs.js +1114 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.esm.js +1098 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/types.d.ts +96 -0
- package/dist/utils/card-validator.d.ts +40 -0
- package/dist/utils/formatter.d.ts +23 -0
- package/dist/voxepay-checkout.min.js +2 -0
- package/dist/voxepay-checkout.min.js.map +1 -0
- package/dist/voxepay.d.ts +63 -0
- package/package.json +43 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.esm.js","sources":["../src/utils/card-validator.ts","../src/utils/formatter.ts","../src/components/modal.ts","../src/voxepay.ts"],"sourcesContent":[null,null,null,null],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VoxePay Checkout Type Definitions
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Configuration for initializing VoxePay
|
|
6
|
+
*/
|
|
7
|
+
export interface VoxePayConfig {
|
|
8
|
+
/** Your VoxePay API key (starts with pk_live_ or pk_test_) */
|
|
9
|
+
apiKey: string;
|
|
10
|
+
/** Theme mode: 'dark' (default), 'light', or 'auto' (follows system) */
|
|
11
|
+
theme?: 'dark' | 'light' | 'auto';
|
|
12
|
+
/** Locale for formatting (e.g., 'en-US', 'en-NG') */
|
|
13
|
+
locale?: string;
|
|
14
|
+
/** Custom CSS variables to override default theme */
|
|
15
|
+
customStyles?: Partial<VoxePayTheme>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Custom theme variables
|
|
19
|
+
*/
|
|
20
|
+
export interface VoxePayTheme {
|
|
21
|
+
'--voxepay-primary': string;
|
|
22
|
+
'--voxepay-secondary': string;
|
|
23
|
+
'--voxepay-accent': string;
|
|
24
|
+
'--voxepay-bg': string;
|
|
25
|
+
'--voxepay-surface': string;
|
|
26
|
+
'--voxepay-border': string;
|
|
27
|
+
'--voxepay-text': string;
|
|
28
|
+
'--voxepay-text-muted': string;
|
|
29
|
+
'--voxepay-border-radius': string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Options for opening a checkout session
|
|
33
|
+
*/
|
|
34
|
+
export interface CheckoutOptions {
|
|
35
|
+
/** Payment amount in smallest currency unit (e.g., kobo for NGN, cents for USD) */
|
|
36
|
+
amount: number;
|
|
37
|
+
/** ISO 4217 currency code (e.g., 'NGN', 'USD', 'EUR') */
|
|
38
|
+
currency: string;
|
|
39
|
+
/** Short description of the payment (shown in modal) */
|
|
40
|
+
description?: string;
|
|
41
|
+
/** Customer's email address (optional, for receipts) */
|
|
42
|
+
customerEmail?: string;
|
|
43
|
+
/** Additional metadata to attach to the payment */
|
|
44
|
+
metadata?: Record<string, unknown>;
|
|
45
|
+
/** Callback when payment succeeds */
|
|
46
|
+
onSuccess: (result: PaymentResult) => void;
|
|
47
|
+
/** Callback when payment fails */
|
|
48
|
+
onError: (error: PaymentError) => void;
|
|
49
|
+
/** Callback when modal is closed (optional) */
|
|
50
|
+
onClose?: () => void;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Result returned on successful payment
|
|
54
|
+
*/
|
|
55
|
+
export interface PaymentResult {
|
|
56
|
+
/** Unique payment ID */
|
|
57
|
+
id: string;
|
|
58
|
+
/** Payment status */
|
|
59
|
+
status: 'success' | 'pending';
|
|
60
|
+
/** Amount charged in smallest currency unit */
|
|
61
|
+
amount: number;
|
|
62
|
+
/** Currency code */
|
|
63
|
+
currency: string;
|
|
64
|
+
/** ISO timestamp of the payment */
|
|
65
|
+
timestamp: string;
|
|
66
|
+
/** Transaction reference (if available) */
|
|
67
|
+
reference?: string;
|
|
68
|
+
/** Additional data from payment processor */
|
|
69
|
+
data?: Record<string, unknown>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Error returned on payment failure
|
|
73
|
+
*/
|
|
74
|
+
export interface PaymentError {
|
|
75
|
+
/** Error code */
|
|
76
|
+
code: string;
|
|
77
|
+
/** Human-readable error message */
|
|
78
|
+
message: string;
|
|
79
|
+
/** Whether the error is recoverable (user can retry) */
|
|
80
|
+
recoverable?: boolean;
|
|
81
|
+
/** Additional error details */
|
|
82
|
+
details?: Record<string, unknown>;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Card information (sanitized - no full card numbers)
|
|
86
|
+
*/
|
|
87
|
+
export interface CardInfo {
|
|
88
|
+
/** Card brand (visa, mastercard, verve, etc.) */
|
|
89
|
+
brand: string;
|
|
90
|
+
/** Last 4 digits of the card */
|
|
91
|
+
last4: string;
|
|
92
|
+
/** Expiry month (1-12) */
|
|
93
|
+
expiryMonth: number;
|
|
94
|
+
/** Expiry year (full year) */
|
|
95
|
+
expiryYear: number;
|
|
96
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Card validation utilities for VoxePay Checkout
|
|
3
|
+
*/
|
|
4
|
+
export interface CardBrand {
|
|
5
|
+
name: string;
|
|
6
|
+
code: string;
|
|
7
|
+
pattern: RegExp;
|
|
8
|
+
lengths: number[];
|
|
9
|
+
cvvLength: number;
|
|
10
|
+
}
|
|
11
|
+
export declare const CARD_BRANDS: CardBrand[];
|
|
12
|
+
/**
|
|
13
|
+
* Detect card brand from card number
|
|
14
|
+
*/
|
|
15
|
+
export declare function detectCardBrand(cardNumber: string): CardBrand | null;
|
|
16
|
+
/**
|
|
17
|
+
* Luhn algorithm for card validation
|
|
18
|
+
*/
|
|
19
|
+
export declare function luhnCheck(cardNumber: string): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Validate card number
|
|
22
|
+
*/
|
|
23
|
+
export declare function validateCardNumber(cardNumber: string): {
|
|
24
|
+
valid: boolean;
|
|
25
|
+
error?: string;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Validate expiry date
|
|
29
|
+
*/
|
|
30
|
+
export declare function validateExpiry(expiry: string): {
|
|
31
|
+
valid: boolean;
|
|
32
|
+
error?: string;
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Validate CVV
|
|
36
|
+
*/
|
|
37
|
+
export declare function validateCVV(cvv: string, cardNumber?: string): {
|
|
38
|
+
valid: boolean;
|
|
39
|
+
error?: string;
|
|
40
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Input formatting utilities for VoxePay Checkout
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Format card number with spaces every 4 digits
|
|
6
|
+
*/
|
|
7
|
+
export declare function formatCardNumber(value: string): string;
|
|
8
|
+
/**
|
|
9
|
+
* Format expiry date as MM/YY
|
|
10
|
+
*/
|
|
11
|
+
export declare function formatExpiry(value: string): string;
|
|
12
|
+
/**
|
|
13
|
+
* Format CVV (numbers only, max 4 digits)
|
|
14
|
+
*/
|
|
15
|
+
export declare function formatCVV(value: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* Format currency amount
|
|
18
|
+
*/
|
|
19
|
+
export declare function formatAmount(amount: number, currency: string): string;
|
|
20
|
+
/**
|
|
21
|
+
* Get currency symbol
|
|
22
|
+
*/
|
|
23
|
+
export declare function getCurrencySymbol(currency: string): string;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var VoxePay=function(e){"use strict";const t=[{name:"Visa",code:"visa",pattern:/^4/,lengths:[13,16,19],cvvLength:3},{name:"Mastercard",code:"mastercard",pattern:/^(5[1-5]|2[2-7])/,lengths:[16],cvvLength:3},{name:"Verve",code:"verve",pattern:/^(506[0-9]|507[0-9]|6500)/,lengths:[16,18,19],cvvLength:3},{name:"American Express",code:"amex",pattern:/^3[47]/,lengths:[15],cvvLength:4},{name:"Discover",code:"discover",pattern:/^(6011|65|64[4-9])/,lengths:[16,19],cvvLength:3}];function o(e){const o=e.replace(/\s/g,"");for(const e of t)if(e.pattern.test(o))return e;return null}function a(e){const t=e.replace(/\s/g,"");if(!/^\d+$/.test(t))return!1;let o=0,a=!1;for(let e=t.length-1;e>=0;e--){let n=parseInt(t[e],10);a&&(n*=2,n>9&&(n-=9)),o+=n,a=!a}return o%10==0}function n(e){const t=e.replace(/\s/g,"");if(!t)return{valid:!1,error:"Card number is required"};if(!/^\d+$/.test(t))return{valid:!1,error:"Invalid card number"};const n=o(t);return n?n.lengths.includes(t.length)?a(t)?{valid:!0}:{valid:!1,error:"Invalid card number"}:{valid:!1,error:"Invalid card number length"}:{valid:!1,error:"Unsupported card type"}}function r(e){const t=e.replace(/\s/g,"");if(!t)return{valid:!1,error:"Expiry date is required"};const o=t.match(/^(\d{2})\/(\d{2})$/);if(!o)return{valid:!1,error:"Invalid format (MM/YY)"};const a=parseInt(o[1],10),n=parseInt(o[2],10)+2e3;if(a<1||a>12)return{valid:!1,error:"Invalid month"};const r=new Date,i=r.getFullYear(),s=r.getMonth()+1;return n<i||n===i&&a<s?{valid:!1,error:"Card has expired"}:n>i+20?{valid:!1,error:"Invalid expiry year"}:{valid:!0}}function i(e,t){const a=e.replace(/\s/g,"");if(!a)return{valid:!1,error:"CVV is required"};if(!/^\d+$/.test(a))return{valid:!1,error:"Invalid CVV"};const n=t?o(t):null,r=(null==n?void 0:n.cvvLength)||3;return a.length!==r&&3!==a.length&&4!==a.length?{valid:!1,error:`CVV must be ${r} digits`}:{valid:!0}}function s(e){return(e.replace(/\D/g,"").match(/.{1,4}/g)||[]).join(" ").slice(0,23)}function l(e){const t=e.replace(/\D/g,"");if(0===t.length)return"";if(1===t.length)return parseInt(t)>1?`0${t}`:t;if(2===t.length){const e=parseInt(t);return e>12?"12":0===e?"01":t}return`${t.slice(0,2)}/${t.slice(2,4)}`}function p(e){return e.replace(/\D/g,"").slice(0,4)}function d(e,t){return new Intl.NumberFormat("en-US",{style:"currency",currency:t,minimumFractionDigits:2}).format(e/100)}const v='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">\n <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />\n </svg>',c='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">\n <path stroke-linecap="round" stroke-linejoin="round" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z" />\n </svg>',y='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="3">\n <path stroke-linecap="round" stroke-linejoin="round" d="M5 13l4 4L19 7" />\n </svg>',x='<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 20" stroke="currentColor" stroke-width="2">\n <path stroke-linecap="round" stroke-linejoin="round" d="M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z" />\n </svg>',u={visa:"VISA",mastercard:"MC",amex:"AMEX",verve:"VERVE",discover:"DISC"};class h{constructor(e){this.container=null,this.overlay=null,this.handleEscape=e=>{"Escape"===e.key&&(this.close(),document.removeEventListener("keydown",this.handleEscape))},this.options=e,this.state={cardNumber:"",expiry:"",cvv:"",otp:"",errors:{},isProcessing:!1,isSuccess:!1,isOtpStep:!1,otpTimer:60,canResendOtp:!1,otpTimerInterval:null}}open(){this.injectStyles(),this.render(),this.attachEventListeners(),requestAnimationFrame(()=>{var e;null===(e=this.overlay)||void 0===e||e.classList.add("voxepay-visible")})}close(){var e;null===(e=this.overlay)||void 0===e||e.classList.remove("voxepay-visible"),setTimeout(()=>{var e,t,o;null===(e=this.container)||void 0===e||e.remove(),this.container=null,this.overlay=null,null===(o=(t=this.options).onClose)||void 0===o||o.call(t)},300)}injectStyles(){if(document.getElementById("voxepay-checkout-styles"))return;const e=document.createElement("style");e.id="voxepay-checkout-styles",e.textContent=this.getStyles(),document.head.appendChild(e)}render(){this.container=document.createElement("div"),this.container.className="voxepay-checkout",this.container.innerHTML=this.getModalHTML(),document.body.appendChild(this.container),this.overlay=this.container.querySelector(".voxepay-overlay")}getModalHTML(){const e=d(this.options.amount,this.options.currency);return`\n <div class="voxepay-overlay">\n <div class="voxepay-modal" role="dialog" aria-modal="true" aria-labelledby="voxepay-title">\n <div class="voxepay-header">\n <div class="voxepay-header-left">\n <div class="voxepay-logo">V</div>\n <div>\n <div class="voxepay-amount" id="voxepay-title">Pay ${e}</div>\n ${this.options.description?`<div style="font-size: 0.875rem; color: var(--voxepay-text-muted);">${this.options.description}</div>`:""}\n </div>\n </div>\n <button class="voxepay-close" aria-label="Close" data-action="close">\n ${v}\n </button>\n </div>\n \n <div class="voxepay-body" id="voxepay-form-container">\n <form id="voxepay-payment-form" novalidate>\n <div class="voxepay-form-group">\n <label class="voxepay-label">\n <span class="voxepay-label-icon">💳</span>\n Card Number\n </label>\n <div class="voxepay-card-input-wrapper">\n <input \n type="text" \n class="voxepay-input" \n id="voxepay-card-number"\n name="cardNumber"\n placeholder="1234 5678 9012 3456"\n autocomplete="cc-number"\n inputmode="numeric"\n />\n <div class="voxepay-card-brand" id="voxepay-card-brand"></div>\n </div>\n <div class="voxepay-error-message" id="voxepay-card-error" style="display: none;"></div>\n </div>\n \n <div class="voxepay-row">\n <div class="voxepay-form-group">\n <label class="voxepay-label">\n <span class="voxepay-label-icon">📅</span>\n Expiry\n </label>\n <input \n type="text" \n class="voxepay-input" \n id="voxepay-expiry"\n name="expiry"\n placeholder="MM/YY"\n autocomplete="cc-exp"\n inputmode="numeric"\n maxlength="5"\n />\n <div class="voxepay-error-message" id="voxepay-expiry-error" style="display: none;"></div>\n </div>\n \n <div class="voxepay-form-group">\n <label class="voxepay-label">\n <span class="voxepay-label-icon">🔒</span>\n CVV\n </label>\n <input \n type="text" \n class="voxepay-input" \n id="voxepay-cvv"\n name="cvv"\n placeholder="•••"\n autocomplete="cc-csc"\n inputmode="numeric"\n maxlength="4"\n />\n <div class="voxepay-error-message" id="voxepay-cvv-error" style="display: none;"></div>\n </div>\n </div>\n \n <button type="submit" class="voxepay-submit-btn" id="voxepay-submit">\n <span>Pay Now ${e}</span>\n </button>\n </form>\n </div>\n \n <div class="voxepay-footer">\n <div class="voxepay-powered-by">\n ${c}\n <span>Secured by <strong>VoxePay</strong></span>\n </div>\n </div>\n </div>\n </div>\n `}renderSuccessView(){var e;const t=null===(e=this.container)||void 0===e?void 0:e.querySelector("#voxepay-form-container");if(!t)return;const o=d(this.options.amount,this.options.currency);t.innerHTML=`\n <div class="voxepay-success-view">\n <div class="voxepay-success-icon">\n ${y}\n </div>\n <h2 class="voxepay-success-title">Payment Successful!</h2>\n <p class="voxepay-success-message">Your payment of ${o} has been processed.</p>\n <button class="voxepay-success-btn" data-action="close">Done</button>\n </div>\n `;const a=t.querySelector('[data-action="close"]');null==a||a.addEventListener("click",()=>this.close())}renderOTPView(){var e;const t=null===(e=this.container)||void 0===e?void 0:e.querySelector("#voxepay-form-container");if(!t)return;this.state.isOtpStep=!0,this.state.otpTimer=60,this.state.canResendOtp=!1;const o=this.options.customerEmail?`****${this.options.customerEmail.slice(-4)}`:"****1234";t.innerHTML=`\n <div class="voxepay-otp-view">\n <div class="voxepay-otp-header">\n <div class="voxepay-otp-icon">📱</div>\n <h3 class="voxepay-otp-title">Verify Your Payment</h3>\n <p class="voxepay-otp-subtitle">We've sent a 6-digit code to ${o}</p>\n </div>\n \n <div class="voxepay-otp-inputs-container">\n <div class="voxepay-otp-inputs" id="voxepay-otp-inputs">\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="0" inputmode="numeric" autocomplete="one-time-code" />\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="1" inputmode="numeric" />\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="2" inputmode="numeric" />\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="3" inputmode="numeric" />\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="4" inputmode="numeric" />\n <input type="text" maxlength="1" class="voxepay-otp-digit" data-index="5" inputmode="numeric" />\n </div>\n <div class="voxepay-error-message" id="voxepay-otp-error" style="display: none;"></div>\n </div>\n\n <div class="voxepay-otp-timer" id="voxepay-otp-timer">\n Resend code in <span id="voxepay-timer-count">60</span>s\n </div>\n \n <button class="voxepay-resend-btn" id="voxepay-resend-otp" disabled>\n Resend OTP\n </button>\n \n <button type="button" class="voxepay-submit-btn" id="voxepay-verify-otp">\n <span>🔐 Verify & Pay</span>\n </button>\n \n <button class="voxepay-back-btn" id="voxepay-back-to-card">\n ← Back to card details\n </button>\n </div>\n `,this.attachOTPEventListeners(),this.startOTPTimer()}attachOTPEventListeners(){var e,t,o,a,n;const r=null===(e=this.container)||void 0===e?void 0:e.querySelectorAll(".voxepay-otp-digit");null==r||r.forEach((e,t)=>{e.addEventListener("input",e=>this.handleOTPInput(e,t)),e.addEventListener("keydown",e=>this.handleOTPKeydown(e,t)),e.addEventListener("paste",e=>this.handleOTPPaste(e))});const i=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-verify-otp");null==i||i.addEventListener("click",()=>this.handleOTPSubmit());const s=null===(o=this.container)||void 0===o?void 0:o.querySelector("#voxepay-resend-otp");null==s||s.addEventListener("click",()=>this.handleResendOTP());const l=null===(a=this.container)||void 0===a?void 0:a.querySelector("#voxepay-back-to-card");null==l||l.addEventListener("click",()=>this.handleBackToCard()),null===(n=null==r?void 0:r[0])||void 0===n||n.focus()}handleOTPInput(e,t){var o;const a=e.target,n=a.value.replace(/\D/g,"");if(a.value=n,n&&t<5){const e=null===(o=this.container)||void 0===o?void 0:o.querySelector(`[data-index="${t+1}"]`);null==e||e.focus()}this.updateOTPState(),this.clearError("otp")}handleOTPKeydown(e,t){var o;const a=e.target;if("Backspace"===e.key&&!a.value&&t>0){const e=null===(o=this.container)||void 0===o?void 0:o.querySelector(`[data-index="${t-1}"]`);null==e||e.focus()}}handleOTPPaste(e){var t,o;e.preventDefault();const a=null===(t=e.clipboardData)||void 0===t?void 0:t.getData("text").replace(/\D/g,"").slice(0,6);if(a){const e=null===(o=this.container)||void 0===o?void 0:o.querySelectorAll(".voxepay-otp-digit");a.split("").forEach((t,o)=>{e[o]&&(e[o].value=t)}),this.updateOTPState()}}updateOTPState(){var e;const t=null===(e=this.container)||void 0===e?void 0:e.querySelectorAll(".voxepay-otp-digit");let o="";null==t||t.forEach(e=>o+=e.value),this.state.otp=o}startOTPTimer(){var e,t,o;const a=null===(e=this.container)||void 0===e?void 0:e.querySelector("#voxepay-timer-count"),n=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-otp-timer"),r=null===(o=this.container)||void 0===o?void 0:o.querySelector("#voxepay-resend-otp");this.state.otpTimerInterval=window.setInterval(()=>{this.state.otpTimer--,a&&(a.textContent=String(this.state.otpTimer)),this.state.otpTimer<=0&&(this.state.otpTimerInterval&&clearInterval(this.state.otpTimerInterval),this.state.canResendOtp=!0,n&&(n.style.display="none"),r&&(r.disabled=!1))},1e3)}async handleOTPSubmit(){if(6===this.state.otp.length){this.setOTPProcessing(!0);try{await this.verifyOTP(),this.state.otpTimerInterval&&clearInterval(this.state.otpTimerInterval);const e=await this.processPayment();this.state.isSuccess=!0,this.renderSuccessView(),this.options.onSuccess(e)}catch(e){this.setOTPProcessing(!1);const t=e;this.showError("otp",t.message||"Invalid OTP. Please try again.")}}else this.showError("otp","Please enter the complete 6-digit code")}setOTPProcessing(e){var t;const o=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-verify-otp");o&&(o.disabled=e,o.innerHTML=e?'<div class="voxepay-spinner"></div><span>Verifying...</span>':"<span>🔐 Verify & Pay</span>")}async verifyOTP(){if(await new Promise(e=>setTimeout(e,1500)),6!==this.state.otp.length)throw{code:"INVALID_OTP",message:"Invalid OTP",recoverable:!0}}handleResendOTP(){var e,t,o,a;const n=null===(e=this.container)||void 0===e?void 0:e.querySelector("#voxepay-otp-timer"),r=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-resend-otp");this.state.otpTimer=60,this.state.canResendOtp=!1,n&&(n.style.display="block"),r&&(r.disabled=!0);const i=null===(o=this.container)||void 0===o?void 0:o.querySelectorAll(".voxepay-otp-digit");null==i||i.forEach(e=>e.value=""),this.state.otp="",this.startOTPTimer(),null===(a=null==i?void 0:i[0])||void 0===a||a.focus()}handleBackToCard(){var e;if(this.state.otpTimerInterval&&clearInterval(this.state.otpTimerInterval),this.state.isOtpStep=!1,this.state.otp="",this.container){this.container.innerHTML=this.getModalHTML(),this.overlay=this.container.querySelector(".voxepay-overlay"),null===(e=this.overlay)||void 0===e||e.classList.add("voxepay-visible"),this.attachEventListeners();const t=this.container.querySelector("#voxepay-card-number"),o=this.container.querySelector("#voxepay-expiry"),a=this.container.querySelector("#voxepay-cvv");t&&(t.value=s(this.state.cardNumber)),o&&(o.value=this.state.expiry),a&&(a.value=this.state.cvv)}}attachEventListeners(){var e,t,o,a,n,r;const i=null===(e=this.container)||void 0===e?void 0:e.querySelector('[data-action="close"]');null==i||i.addEventListener("click",()=>this.close()),null===(t=this.overlay)||void 0===t||t.addEventListener("click",e=>{e.target===this.overlay&&this.close()}),document.addEventListener("keydown",this.handleEscape);const s=null===(o=this.container)||void 0===o?void 0:o.querySelector("#voxepay-card-number");null==s||s.addEventListener("input",e=>this.handleCardInput(e)),null==s||s.addEventListener("blur",()=>this.validateField("cardNumber"));const l=null===(a=this.container)||void 0===a?void 0:a.querySelector("#voxepay-expiry");null==l||l.addEventListener("input",e=>this.handleExpiryInput(e)),null==l||l.addEventListener("blur",()=>this.validateField("expiry"));const p=null===(n=this.container)||void 0===n?void 0:n.querySelector("#voxepay-cvv");null==p||p.addEventListener("input",e=>this.handleCVVInput(e)),null==p||p.addEventListener("blur",()=>this.validateField("cvv"));const d=null===(r=this.container)||void 0===r?void 0:r.querySelector("#voxepay-payment-form");null==d||d.addEventListener("submit",e=>this.handleSubmit(e))}handleCardInput(e){var t;const a=e.target,n=s(a.value);a.value=n,this.state.cardNumber=n.replace(/\s/g,"");const r=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-card-brand"),i=o(this.state.cardNumber);r&&(r.textContent=i&&u[i.code]||"",r.style.opacity=i?"1":"0"),this.clearError("cardNumber")}handleExpiryInput(e){const t=e.target,o=l(t.value);t.value=o,this.state.expiry=o,this.clearError("expiry")}handleCVVInput(e){const t=e.target,o=p(t.value);t.value=o,this.state.cvv=o,this.clearError("cvv")}validateField(e){let t;switch(e){case"cardNumber":t=n(this.state.cardNumber);break;case"expiry":t=r(this.state.expiry);break;case"cvv":t=i(this.state.cvv,this.state.cardNumber);break;default:return!0}return t.valid?(this.clearError(e),!0):(this.showError(e,t.error||"Invalid"),!1)}showError(e,t){var o,a;const n=null===(o=this.container)||void 0===o?void 0:o.querySelector(`#voxepay-${"cardNumber"===e?"card":e}-error`),r=null===(a=this.container)||void 0===a?void 0:a.querySelector(`#voxepay-${"cardNumber"===e?"card-number":e}`);n&&(n.innerHTML=`${x} ${t}`,n.style.display="flex"),null==r||r.classList.add("voxepay-error")}clearError(e){var t,o;const a=null===(t=this.container)||void 0===t?void 0:t.querySelector(`#voxepay-${"cardNumber"===e?"card":e}-error`),n=null===(o=this.container)||void 0===o?void 0:o.querySelector(`#voxepay-${"cardNumber"===e?"card-number":e}`);a&&(a.style.display="none"),null==n||n.classList.remove("voxepay-error")}async handleSubmit(e){e.preventDefault();const t=this.validateField("cardNumber"),o=this.validateField("expiry"),a=this.validateField("cvv");if(t&&o&&a){this.setProcessing(!0);try{await new Promise(e=>setTimeout(e,1e3)),this.setProcessing(!1),this.renderOTPView()}catch(e){this.setProcessing(!1);const t=e;this.options.onError(t),this.showError("cardNumber",t.message||"Payment failed. Please try again.")}}}setProcessing(e){var t;this.state.isProcessing=e;const o=null===(t=this.container)||void 0===t?void 0:t.querySelector("#voxepay-submit");o&&(o.disabled=e,o.innerHTML=e?'<div class="voxepay-spinner"></div><span>Processing...</span>':`<span>Pay Now ${d(this.options.amount,this.options.currency)}</span>`)}async processPayment(){return await new Promise(e=>setTimeout(e,2e3)),{id:`pay_${Date.now()}`,status:"success",amount:this.options.amount,currency:this.options.currency,timestamp:(new Date).toISOString()}}getStyles(){return"\n :root {\n /* VoxePay Blue Color Palette */\n --voxepay-primary: #0061FF;\n --voxepay-primary-hover: #0056E0;\n --voxepay-secondary: #0047CC;\n --voxepay-accent: #60A5FA;\n --voxepay-glow: rgba(0, 97, 255, 0.35);\n --voxepay-success: #10B981;\n --voxepay-success-bg: rgba(16, 185, 129, 0.1);\n --voxepay-error: #EF4444;\n \n /* Dark Mode (Default) */\n --voxepay-bg: #0C0C1D;\n --voxepay-surface: rgba(255, 255, 255, 0.04);\n --voxepay-surface-hover: rgba(255, 255, 255, 0.08);\n --voxepay-border: rgba(255, 255, 255, 0.08);\n --voxepay-text: #FFFFFF;\n --voxepay-text-muted: #B4B4C7;\n --voxepay-text-subtle: #6B7280;\n --voxepay-input-bg: rgba(255, 255, 255, 0.06);\n \n /* Effects */\n --voxepay-backdrop-blur: blur(24px);\n --voxepay-border-radius: 12px;\n --voxepay-border-radius-lg: 16px;\n --voxepay-border-radius-xl: 24px;\n --voxepay-glow-shadow: 0 0 60px var(--voxepay-glow);\n --voxepay-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.6);\n --voxepay-transition-fast: 150ms ease;\n --voxepay-transition: 300ms cubic-bezier(0.4, 0, 0.2, 1);\n }\n \n /* Light Mode */\n html.voxepay-light {\n --voxepay-primary: #0061FF;\n --voxepay-primary-hover: #0056E0;\n --voxepay-secondary: #0047CC;\n --voxepay-glow: rgba(0, 97, 255, 0.2);\n \n --voxepay-bg: #FFFFFF;\n --voxepay-surface: #F8FAFC;\n --voxepay-surface-hover: #F1F5F9;\n --voxepay-border: #E2E8F0;\n --voxepay-text: #0F172A;\n --voxepay-text-muted: #475569;\n --voxepay-text-subtle: #94A3B8;\n --voxepay-input-bg: #F8FAFC;\n \n --voxepay-glow-shadow: 0 0 40px rgba(0, 97, 255, 0.12);\n --voxepay-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);\n }\n \n .voxepay-checkout * { box-sizing: border-box; margin: 0; padding: 0; }\n .voxepay-checkout { font-family: 'DM Sans', 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; font-size: 1rem; color: var(--voxepay-text); line-height: 1.5; -webkit-font-smoothing: antialiased; }\n \n .voxepay-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.5); backdrop-filter: var(--voxepay-backdrop-blur); -webkit-backdrop-filter: var(--voxepay-backdrop-blur); display: flex; align-items: center; justify-content: center; z-index: 999999; opacity: 0; visibility: hidden; transition: opacity var(--voxepay-transition), visibility var(--voxepay-transition); }\n html.voxepay-light .voxepay-overlay { background: rgba(15, 23, 42, 0.4); }\n .voxepay-overlay.voxepay-visible { opacity: 1; visibility: visible; }\n \n .voxepay-modal { background: var(--voxepay-bg); border: 1px solid var(--voxepay-border); border-radius: var(--voxepay-border-radius-xl); width: 100%; max-width: 420px; max-height: 90vh; overflow: hidden; box-shadow: var(--voxepay-shadow), var(--voxepay-glow-shadow); transform: scale(0.95) translateY(20px); opacity: 0; transition: transform var(--voxepay-transition), opacity var(--voxepay-transition); }\n .voxepay-overlay.voxepay-visible .voxepay-modal { transform: scale(1) translateY(0); opacity: 1; }\n \n .voxepay-header { display: flex; align-items: center; justify-content: space-between; padding: 20px 24px; border-bottom: 1px solid var(--voxepay-border); background: var(--voxepay-surface); }\n .voxepay-header-left { display: flex; align-items: center; gap: 12px; }\n .voxepay-logo { width: 36px; height: 36px; border-radius: var(--voxepay-border-radius); background: linear-gradient(135deg, var(--voxepay-primary), var(--voxepay-secondary)); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 1.25rem; color: white; box-shadow: 0 4px 12px rgba(0, 97, 255, 0.3); }\n .voxepay-amount { font-size: 1.25rem; font-weight: 600; }\n .voxepay-close { width: 36px; height: 36px; border: none; background: var(--voxepay-surface-hover); border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; color: var(--voxepay-text-muted); transition: all var(--voxepay-transition-fast); }\n .voxepay-close:hover { background: var(--voxepay-border); color: var(--voxepay-text); transform: rotate(90deg); }\n .voxepay-close svg { width: 18px; height: 18px; }\n \n .voxepay-body { padding: 24px; background: var(--voxepay-bg); }\n .voxepay-form-group { margin-bottom: 20px; }\n .voxepay-label { display: flex; align-items: center; gap: 8px; font-size: 0.875rem; font-weight: 500; color: var(--voxepay-text-muted); margin-bottom: 8px; }\n .voxepay-label-icon { font-size: 1rem; }\n \n .voxepay-input { width: 100%; padding: 14px 16px; background: var(--voxepay-input-bg); border: 1.5px solid var(--voxepay-border); border-radius: var(--voxepay-border-radius); color: var(--voxepay-text); font-size: 1rem; font-family: inherit; outline: none; transition: border-color var(--voxepay-transition-fast), box-shadow var(--voxepay-transition-fast), background var(--voxepay-transition-fast); }\n .voxepay-input::placeholder { color: var(--voxepay-text-subtle); }\n .voxepay-input:hover { border-color: var(--voxepay-text-subtle); }\n .voxepay-input:focus { border-color: var(--voxepay-primary); box-shadow: 0 0 0 4px var(--voxepay-glow); background: var(--voxepay-bg); }\n .voxepay-input.voxepay-error { border-color: var(--voxepay-error); box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.15); }\n \n .voxepay-card-input-wrapper { position: relative; }\n .voxepay-card-brand { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); padding: 4px 8px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--voxepay-primary), var(--voxepay-secondary)); border-radius: 6px; font-size: 0.7rem; font-weight: 700; color: white; opacity: 0; transition: opacity var(--voxepay-transition-fast); letter-spacing: 0.5px; }\n .voxepay-card-input-wrapper .voxepay-input { padding-right: 70px; }\n \n .voxepay-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }\n \n .voxepay-error-message { display: flex; align-items: center; gap: 6px; font-size: 0.813rem; color: var(--voxepay-error); margin-top: 8px; animation: voxepay-shake 0.4s ease; }\n .voxepay-error-message svg { width: 16px; height: 16px; flex-shrink: 0; }\n @keyframes voxepay-shake { 0%, 100% { transform: translateX(0); } 20%, 60% { transform: translateX(-4px); } 40%, 80% { transform: translateX(4px); } }\n \n .voxepay-submit-btn { width: 100%; padding: 16px 24px; background: linear-gradient(135deg, var(--voxepay-primary), var(--voxepay-secondary)); border: none; border-radius: var(--voxepay-border-radius); color: white; font-size: 1.063rem; font-weight: 600; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 10px; transition: all var(--voxepay-transition-fast); position: relative; overflow: hidden; box-shadow: 0 4px 15px rgba(0, 97, 255, 0.35); }\n .voxepay-submit-btn:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 8px 25px rgba(0, 97, 255, 0.45); }\n .voxepay-submit-btn:active:not(:disabled) { transform: translateY(0); }\n .voxepay-submit-btn:disabled { opacity: 0.6; cursor: not-allowed; box-shadow: none; }\n .voxepay-submit-btn span { position: relative; z-index: 1; }\n \n .voxepay-spinner { width: 20px; height: 20px; border: 2.5px solid rgba(255, 255, 255, 0.3); border-top-color: white; border-radius: 50%; animation: voxepay-spin 0.8s linear infinite; }\n @keyframes voxepay-spin { to { transform: rotate(360deg); } }\n \n .voxepay-footer { text-align: center; padding: 16px 24px 20px; border-top: 1px solid var(--voxepay-border); background: var(--voxepay-surface); }\n .voxepay-powered-by { font-size: 0.75rem; color: var(--voxepay-text-subtle); display: flex; align-items: center; justify-content: center; gap: 6px; }\n .voxepay-powered-by svg { width: 14px; height: 14px; color: var(--voxepay-primary); }\n .voxepay-powered-by strong { color: var(--voxepay-primary); font-weight: 600; }\n \n .voxepay-success-view { text-align: center; padding: 40px 24px; }\n .voxepay-success-icon { width: 80px; height: 80px; margin: 0 auto 24px; background: linear-gradient(135deg, var(--voxepay-success), #059669); border-radius: 50%; display: flex; align-items: center; justify-content: center; animation: voxepay-success-pop 0.5s ease; box-shadow: 0 8px 25px rgba(16, 185, 129, 0.35); }\n @keyframes voxepay-success-pop { 0% { transform: scale(0); opacity: 0; } 50% { transform: scale(1.1); } 100% { transform: scale(1); opacity: 1; } }\n .voxepay-success-icon svg { width: 40px; height: 40px; color: white; }\n .voxepay-success-title { font-size: 1.5rem; font-weight: 700; margin-bottom: 8px; color: var(--voxepay-text); }\n .voxepay-success-message { font-size: 1rem; color: var(--voxepay-text-muted); margin-bottom: 24px; }\n .voxepay-success-btn { padding: 12px 32px; background: var(--voxepay-surface); border: 1.5px solid var(--voxepay-border); border-radius: var(--voxepay-border-radius); color: var(--voxepay-text); font-size: 1rem; font-weight: 500; cursor: pointer; transition: all var(--voxepay-transition-fast); }\n .voxepay-success-btn:hover { background: var(--voxepay-surface-hover); border-color: var(--voxepay-primary); color: var(--voxepay-primary); }\n \n /* OTP View */\n .voxepay-otp-view { text-align: center; padding: 24px 16px; }\n .voxepay-otp-header { margin-bottom: 24px; }\n .voxepay-otp-icon { font-size: 3rem; margin-bottom: 12px; }\n .voxepay-otp-title { font-size: 1.25rem; font-weight: 700; color: var(--voxepay-text); margin-bottom: 8px; }\n .voxepay-otp-subtitle { font-size: 0.875rem; color: var(--voxepay-text-muted); }\n \n .voxepay-otp-inputs-container { margin-bottom: 16px; }\n .voxepay-otp-inputs { display: flex; justify-content: center; gap: 8px; margin-bottom: 8px; }\n .voxepay-otp-digit { width: 48px; height: 56px; text-align: center; font-size: 1.5rem; font-weight: 700; border: 2px solid var(--voxepay-border); border-radius: var(--voxepay-border-radius); background: var(--voxepay-input-bg); color: var(--voxepay-text); outline: none; transition: all var(--voxepay-transition-fast); }\n .voxepay-otp-digit:focus { border-color: var(--voxepay-primary); box-shadow: 0 0 0 4px var(--voxepay-glow); }\n \n .voxepay-otp-timer { font-size: 0.875rem; color: var(--voxepay-text-muted); margin-bottom: 12px; }\n .voxepay-otp-timer span { font-weight: 700; color: var(--voxepay-primary); }\n \n .voxepay-resend-btn { padding: 8px 16px; background: transparent; border: 1px solid var(--voxepay-border); border-radius: var(--voxepay-border-radius); color: var(--voxepay-text-muted); font-size: 0.875rem; cursor: pointer; margin-bottom: 16px; transition: all var(--voxepay-transition-fast); }\n .voxepay-resend-btn:hover:not(:disabled) { border-color: var(--voxepay-primary); color: var(--voxepay-primary); }\n .voxepay-resend-btn:disabled { opacity: 0.5; cursor: not-allowed; }\n \n .voxepay-back-btn { display: block; width: 100%; padding: 12px; background: transparent; border: none; color: var(--voxepay-text-muted); font-size: 0.875rem; cursor: pointer; margin-top: 12px; transition: color var(--voxepay-transition-fast); }\n .voxepay-back-btn:hover { color: var(--voxepay-primary); }\n \n @media (max-width: 480px) { .voxepay-modal { max-width: 100%; max-height: 100%; border-radius: 0; height: 100%; } .voxepay-body { padding: 20px; } .voxepay-otp-digit { width: 42px; height: 50px; font-size: 1.25rem; } }\n "}}class m{constructor(){this.config=null,this.currentModal=null,this.initialized=!1}init(e){e.apiKey?(this.config={theme:"dark",locale:"en-US",...e},this.initialized=!0,"auto"===e.theme?this.applyAutoTheme():"light"===e.theme&&document.documentElement.classList.add("voxepay-light"),e.customStyles&&this.applyCustomStyles(e.customStyles),console.log("[VoxePay] Initialized successfully")):console.error("[VoxePay] API key is required")}checkout(e){return this.initialized?!e.amount||e.amount<=0?(console.error("[VoxePay] Invalid amount"),void e.onError({code:"INVALID_AMOUNT",message:"Payment amount must be greater than 0",recoverable:!1})):e.currency?(this.closeModal(),this.currentModal=new h({...e,onClose:()=>{var t;this.currentModal=null,null===(t=e.onClose)||void 0===t||t.call(e)}}),void this.currentModal.open()):(console.error("[VoxePay] Currency is required"),void e.onError({code:"INVALID_CURRENCY",message:"Currency code is required",recoverable:!1})):(console.error("[VoxePay] Not initialized. Call VoxePay.init() first."),void e.onError({code:"NOT_INITIALIZED",message:"VoxePay SDK not initialized. Call VoxePay.init() first.",recoverable:!1}))}closeModal(){this.currentModal&&(this.currentModal.close(),this.currentModal=null)}setTheme(e){document.documentElement.classList.remove("voxepay-light"),"light"===e?document.documentElement.classList.add("voxepay-light"):"auto"===e&&this.applyAutoTheme(),this.config&&(this.config.theme=e)}applyAutoTheme(){window.matchMedia("(prefers-color-scheme: dark)").matches||document.documentElement.classList.add("voxepay-light"),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e=>{var t;"auto"===(null===(t=this.config)||void 0===t?void 0:t.theme)&&document.documentElement.classList.toggle("voxepay-light",!e.matches)})}applyCustomStyles(e){const t=document.documentElement;for(const[o,a]of Object.entries(e))a&&t.style.setProperty(o,a)}get version(){return"0.1.0"}get isInitialized(){return this.initialized}}const g=new m;return"undefined"!=typeof window&&(window.VoxePay=g),e.VoxePay=g,e.VoxePaySDK=m,e.default=g,e.detectCardBrand=o,e.formatAmount=d,e.formatCVV=p,e.formatCardNumber=s,e.formatExpiry=l,e.getCurrencySymbol=function(e){return{NGN:"₦",USD:"$",EUR:"€",GBP:"£",GHS:"₵",KES:"KSh",ZAR:"R"}[e.toUpperCase()]||e},e.luhnCheck=a,e.validateCVV=i,e.validateCardNumber=n,e.validateExpiry=r,Object.defineProperty(e,"__esModule",{value:!0}),e}({});
|
|
2
|
+
//# sourceMappingURL=voxepay-checkout.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"voxepay-checkout.min.js","sources":["../src/utils/card-validator.ts","../src/utils/formatter.ts","../src/components/modal.ts","../src/voxepay.ts"],"sourcesContent":[null,null,null,null],"names":["CARD_BRANDS","name","code","pattern","lengths","cvvLength","detectCardBrand","cardNumber","cleaned","replace","brand","test","luhnCheck","sum","isEven","i","length","digit","parseInt","validateCardNumber","valid","error","includes","validateExpiry","expiry","match","month","year","now","Date","currentYear","getFullYear","currentMonth","getMonth","validateCVV","cvv","expectedLength","formatCardNumber","value","join","slice","formatExpiry","formatCVV","formatAmount","amount","currency","Intl","NumberFormat","style","minimumFractionDigits","format","ICONS","CARD_BRAND_DISPLAY","visa","mastercard","amex","verve","discover","VoxePayModal","constructor","options","this","container","overlay","handleEscape","e","key","close","document","removeEventListener","state","otp","errors","isProcessing","isSuccess","isOtpStep","otpTimer","canResendOtp","otpTimerInterval","open","injectStyles","render","attachEventListeners","requestAnimationFrame","_a","classList","add","remove","setTimeout","_c","onClose","getElementById","createElement","id","textContent","getStyles","head","appendChild","className","innerHTML","getModalHTML","body","querySelector","formattedAmount","description","renderSuccessView","formContainer","closeBtn","addEventListener","renderOTPView","maskedPhone","customerEmail","attachOTPEventListeners","startOTPTimer","otpInputs","querySelectorAll","forEach","input","index","handleOTPInput","handleOTPKeydown","handleOTPPaste","verifyBtn","_b","handleOTPSubmit","resendBtn","handleResendOTP","backBtn","_d","handleBackToCard","_e","focus","target","nextInput","updateOTPState","clearError","prevInput","preventDefault","pastedData","clipboardData","getData","inputs","split","timerEl","timerContainer","window","setInterval","String","clearInterval","display","disabled","setOTPProcessing","verifyOTP","result","processPayment","onSuccess","paymentError","showError","message","Promise","resolve","recoverable","cardInput","expiryInput","cvvInput","handleCardInput","validateField","handleExpiryInput","handleCVVInput","form","_f","handleSubmit","formatted","brandEl","opacity","field","errorEl","inputEl","isCardValid","isExpiryValid","isCVVValid","setProcessing","onError","submitBtn","status","timestamp","toISOString","VoxePaySDK","config","currentModal","initialized","init","apiKey","theme","locale","applyAutoTheme","documentElement","customStyles","applyCustomStyles","console","log","checkout","closeModal","call","setTheme","matchMedia","matches","toggle","styles","root","Object","entries","setProperty","version","isInitialized","VoxePay","NGN","USD","EUR","GBP","GHS","KES","ZAR","toUpperCase"],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* VoxePay - Modern Payment Checkout SDK
|
|
3
|
+
*
|
|
4
|
+
* A beautiful, modern payment modal for the web.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```javascript
|
|
8
|
+
* // Initialize VoxePay
|
|
9
|
+
* VoxePay.init({ apiKey: 'pk_live_xxxxx' });
|
|
10
|
+
*
|
|
11
|
+
* // Open checkout
|
|
12
|
+
* VoxePay.checkout({
|
|
13
|
+
* amount: 4999,
|
|
14
|
+
* currency: 'NGN',
|
|
15
|
+
* description: 'Premium Plan',
|
|
16
|
+
* onSuccess: (result) => console.log('Paid!', result),
|
|
17
|
+
* onError: (error) => console.error('Failed', error),
|
|
18
|
+
* });
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
import type { VoxePayConfig, CheckoutOptions } from './types';
|
|
22
|
+
declare class VoxePaySDK {
|
|
23
|
+
private config;
|
|
24
|
+
private currentModal;
|
|
25
|
+
private initialized;
|
|
26
|
+
/**
|
|
27
|
+
* Initialize VoxePay with your configuration
|
|
28
|
+
* @param config - Configuration object with API key and optional settings
|
|
29
|
+
*/
|
|
30
|
+
init(config: VoxePayConfig): void;
|
|
31
|
+
/**
|
|
32
|
+
* Open the checkout modal
|
|
33
|
+
* @param options - Checkout options including amount, currency, and callbacks
|
|
34
|
+
*/
|
|
35
|
+
checkout(options: CheckoutOptions): void;
|
|
36
|
+
/**
|
|
37
|
+
* Close the current checkout modal
|
|
38
|
+
*/
|
|
39
|
+
closeModal(): void;
|
|
40
|
+
/**
|
|
41
|
+
* Set the theme
|
|
42
|
+
* @param theme - 'dark', 'light', or 'auto'
|
|
43
|
+
*/
|
|
44
|
+
setTheme(theme: 'dark' | 'light' | 'auto'): void;
|
|
45
|
+
/**
|
|
46
|
+
* Apply system theme preference
|
|
47
|
+
*/
|
|
48
|
+
private applyAutoTheme;
|
|
49
|
+
/**
|
|
50
|
+
* Apply custom CSS variables
|
|
51
|
+
*/
|
|
52
|
+
private applyCustomStyles;
|
|
53
|
+
/**
|
|
54
|
+
* Get the SDK version
|
|
55
|
+
*/
|
|
56
|
+
get version(): string;
|
|
57
|
+
/**
|
|
58
|
+
* Check if SDK is initialized
|
|
59
|
+
*/
|
|
60
|
+
get isInitialized(): boolean;
|
|
61
|
+
}
|
|
62
|
+
declare const VoxePay: VoxePaySDK;
|
|
63
|
+
export { VoxePay, VoxePaySDK };
|
package/package.json
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@voxepay/checkout",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Modern payment checkout modal for VoxePay - beautiful, fast, and secure",
|
|
5
|
+
"author": "VoxePay",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"main": "./dist/index.cjs.js",
|
|
8
|
+
"module": "./dist/index.esm.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
10
|
+
"sideEffects": false,
|
|
11
|
+
"keywords": [
|
|
12
|
+
"voxepay",
|
|
13
|
+
"checkout",
|
|
14
|
+
"payment",
|
|
15
|
+
"modal",
|
|
16
|
+
"fintech",
|
|
17
|
+
"nigeria",
|
|
18
|
+
"payment-gateway"
|
|
19
|
+
],
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "https://github.com/voxepay/voxepay-checkout.git"
|
|
23
|
+
},
|
|
24
|
+
"files": [
|
|
25
|
+
"dist",
|
|
26
|
+
"README.md"
|
|
27
|
+
],
|
|
28
|
+
"scripts": {
|
|
29
|
+
"build": "rollup -c rollup.config.mjs",
|
|
30
|
+
"dev": "rollup -c rollup.config.mjs --watch",
|
|
31
|
+
"prepublishOnly": "npm run build"
|
|
32
|
+
},
|
|
33
|
+
"devDependencies": {
|
|
34
|
+
"@rollup/plugin-commonjs": "^25.0.0",
|
|
35
|
+
"@rollup/plugin-node-resolve": "^15.0.0",
|
|
36
|
+
"@rollup/plugin-typescript": "^11.0.0",
|
|
37
|
+
"rollup": "^4.0.0",
|
|
38
|
+
"rollup-plugin-terser": "^7.0.0",
|
|
39
|
+
"tslib": "^2.6.0",
|
|
40
|
+
"typescript": "^5.0.0"
|
|
41
|
+
},
|
|
42
|
+
"dependencies": {}
|
|
43
|
+
}
|