@paynext/sdk 0.0.145 → 0.0.147

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -350,7 +350,7 @@ declare enum PaymentStatus {
350
350
  export declare class PayNextCheckout {
351
351
  private cdnInstance;
352
352
  private initPromise;
353
- constructor();
353
+ constructor(envType: 'develop' | 'staging' | 'sandbox' | 'production');
354
354
  private initialize;
355
355
  private waitForReady;
356
356
  mount(containerId: string, config: PayNextConfig): Promise<void>;
@@ -359,7 +359,7 @@ export declare class PayNextCheckout {
359
359
  static getVersion(): string;
360
360
  static getCDNUrl(): string;
361
361
  static isLoaded(): boolean;
362
- static preload(): Promise<void>;
362
+ static preload(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void>;
363
363
  }
364
364
 
365
365
  export declare interface PayNextConfig {
package/dist/index.es.js CHANGED
@@ -1,74 +1,78 @@
1
- var h = Object.defineProperty;
2
- var f = (t, e, n) => e in t ? h(t, e, { enumerable: !0, configurable: !0, writable: !0, value: n }) : t[e] = n;
3
- var l = (t, e, n) => f(t, typeof e != "symbol" ? e + "" : e, n);
4
- var a = (t, e, n) => new Promise((o, N) => {
5
- var w = (r) => {
1
+ var m = Object.defineProperty;
2
+ var y = (t, n, o) => n in t ? m(t, n, { enumerable: !0, configurable: !0, writable: !0, value: o }) : t[n] = o;
3
+ var w = (t, n, o) => y(t, typeof n != "symbol" ? n + "" : n, o);
4
+ var r = (t, n, o) => new Promise((c, e) => {
5
+ var i = (a) => {
6
6
  try {
7
- c(n.next(r));
8
- } catch (d) {
9
- N(d);
7
+ l(o.next(a));
8
+ } catch (u) {
9
+ e(u);
10
10
  }
11
- }, C = (r) => {
11
+ }, C = (a) => {
12
12
  try {
13
- c(n.throw(r));
14
- } catch (d) {
15
- N(d);
13
+ l(o.throw(a));
14
+ } catch (u) {
15
+ e(u);
16
16
  }
17
- }, c = (r) => r.done ? o(r.value) : Promise.resolve(r.value).then(w, C);
18
- c((n = n.apply(t, e)).next());
17
+ }, l = (a) => a.done ? c(a.value) : Promise.resolve(a.value).then(i, C);
18
+ l((o = o.apply(t, n)).next());
19
19
  });
20
- const u = "https://paynext-sdk.cbvcode.workers.dev/index.cdn.js", P = "1.0.0";
21
- let i = null, s = null;
22
- function y() {
23
- return a(this, null, function* () {
24
- return s || i || (i = new Promise((t, e) => {
20
+ const N = "https://paynext-sdk.cbvcode.workers.dev/index.cdn.js", f = "https://paynext-sdk.cbvcode.workers.dev/index.cdn.js", D = "1.0.0";
21
+ let s = null, d = null;
22
+ function P(t) {
23
+ return r(this, null, function* () {
24
+ if (d)
25
+ return d;
26
+ if (s)
27
+ return s;
28
+ const n = (t == null ? void 0 : t.toLowerCase()) === "develop" || (t == null ? void 0 : t.toLowerCase()) === "staging" ? "develop" : "production";
29
+ return s = new Promise((o, c) => {
25
30
  if (typeof window == "undefined") {
26
- e(new Error("PayNext SDK can only be loaded in browser environment"));
31
+ c(new Error("PayNext SDK can only be loaded in browser environment"));
27
32
  return;
28
33
  }
29
34
  if (window.PayNextSDK) {
30
- console.log("[PayNext CDN] SDK already loaded from cache"), s = window.PayNextSDK, t(s);
35
+ console.log("[PayNext CDN] SDK already loaded from cache"), d = window.PayNextSDK, o(d);
31
36
  return;
32
37
  }
33
- const n = document.createElement("script");
34
- n.src = u, n.crossOrigin = "anonymous", n.async = !0, n.onload = () => {
35
- console.log("[PayNext CDN] Script loaded, checking global..."), setTimeout(() => {
36
- const o = window.PayNextSDK;
37
- if (!o) {
38
- console.error("[PayNext CDN] PayNextSDK not found in window after load"), i = null, document.head.removeChild(n), e(new Error("PayNextSDK not found in global scope after loading"));
38
+ const e = document.createElement("script");
39
+ e.src = n === "develop" ? N : f, e.crossOrigin = "anonymous", e.async = !0, e.onload = () => {
40
+ setTimeout(() => {
41
+ const i = window.PayNextSDK;
42
+ if (!i) {
43
+ console.error("[PayNext CDN] PayNextSDK not found in window after load"), s = null, document.head.removeChild(e), c(new Error("PayNextSDK not found in global scope after loading"));
39
44
  return;
40
45
  }
41
- console.log("[PayNext CDN] SDK fetched successfully, exports:", Object.keys(o)), s = o, t(o);
42
- }, 1);
43
- }, n.onerror = (o) => {
44
- console.error("[PayNext CDN] Failed to load script:", o), i = null, document.head.removeChild(n), e(new Error("Failed to load PayNext SDK script from CDN"));
45
- }, document.head.appendChild(n);
46
- }), i);
46
+ d = i, o(i);
47
+ }, 10);
48
+ }, e.onerror = (i) => {
49
+ console.error("[PayNext CDN] Failed to load script:", i), s = null, document.head.removeChild(e), c(new Error("Failed to load PayNext SDK script from CDN"));
50
+ }, document.head.appendChild(e);
51
+ }), s;
47
52
  });
48
53
  }
49
- class D {
50
- constructor() {
51
- l(this, "cdnInstance", null);
52
- l(this, "initPromise", null);
53
- this.initPromise = this.initialize();
54
+ class h {
55
+ constructor(n) {
56
+ w(this, "cdnInstance", null);
57
+ w(this, "initPromise", null);
58
+ this.initPromise = this.initialize(n);
54
59
  }
55
60
  // initialize
56
- initialize() {
57
- return a(this, null, function* () {
61
+ initialize(n) {
62
+ return r(this, null, function* () {
58
63
  try {
59
- console.log("[PayNext CDN] Loading SDK from CDN...");
60
- const e = yield y();
61
- if (console.log("[PayNext CDN] SDK loaded, exports:", Object.keys(e)), !e.PayNextCheckout)
64
+ const o = yield P(n);
65
+ if (!o.PayNextCheckout)
62
66
  throw new Error("PayNextCheckout not found in CDN module");
63
- this.cdnInstance = new e.PayNextCheckout(), console.log("[PayNext CDN] Instance created successfully");
64
- } catch (e) {
65
- throw console.error("[PayNext CDN] Failed to initialize:", e), e;
67
+ this.cdnInstance = new o.PayNextCheckout();
68
+ } catch (o) {
69
+ throw console.error("[PayNext CDN] Failed to initialize:", o), o;
66
70
  }
67
71
  });
68
72
  }
69
73
  // wait for ready
70
74
  waitForReady() {
71
- return a(this, null, function* () {
75
+ return r(this, null, function* () {
72
76
  if (!this.initPromise)
73
77
  throw new Error("SDK initialization not started");
74
78
  if (yield this.initPromise, !this.cdnInstance)
@@ -76,54 +80,54 @@ class D {
76
80
  });
77
81
  }
78
82
  // mount
79
- mount(e, n) {
80
- return a(this, null, function* () {
81
- return console.log("[PayNext CDN] mount() called, waiting for SDK..."), yield this.waitForReady(), console.log("[PayNext CDN] SDK ready, calling mount on CDN instance..."), this.cdnInstance.mount(e, n);
83
+ mount(n, o) {
84
+ return r(this, null, function* () {
85
+ return console.log("[PayNext CDN] mount(): ", o.environment), yield this.waitForReady(), this.cdnInstance.mount(n, o);
82
86
  });
83
87
  }
84
88
  // unmount
85
89
  unmount() {
86
- return a(this, null, function* () {
90
+ return r(this, null, function* () {
87
91
  if (yield this.waitForReady(), this.cdnInstance.unmount)
88
92
  return this.cdnInstance.unmount();
89
93
  });
90
94
  }
91
95
  // update config
92
- updateConfig(e) {
93
- return a(this, null, function* () {
96
+ updateConfig(n) {
97
+ return r(this, null, function* () {
94
98
  if (yield this.waitForReady(), this.cdnInstance.updateConfig)
95
- return this.cdnInstance.updateConfig(e);
99
+ return this.cdnInstance.updateConfig(n);
96
100
  });
97
101
  }
98
102
  // get version
99
103
  static getVersion() {
100
- return P;
104
+ return D;
101
105
  }
102
106
  // get CDN url
103
107
  static getCDNUrl() {
104
- return u;
108
+ return N;
105
109
  }
106
110
  // check if loaded
107
111
  static isLoaded() {
108
- return s !== null;
112
+ return d !== null;
109
113
  }
110
114
  // preload (optional optimization)
111
- static preload() {
112
- return a(this, null, function* () {
113
- yield y();
115
+ static preload(n) {
116
+ return r(this, null, function* () {
117
+ yield P(n);
114
118
  });
115
119
  }
116
120
  }
117
- const g = {
118
- version: P,
119
- cdnUrl: u,
120
- preload: D.preload,
121
- isLoaded: D.isLoaded
121
+ const E = {
122
+ version: D,
123
+ cdnUrl: N,
124
+ preload: h.preload,
125
+ isLoaded: h.isLoaded
122
126
  };
123
127
  var x = /* @__PURE__ */ ((t) => (t.PAYPAL = "PAYPAL", t.APPLE_PAY = "APPLEPAY", t.GOOGLE_PAY = "GPAY", t.CARD = "CARD", t.VENMO = "VENMO", t))(x || {});
124
128
  export {
125
- D as PayNextCheckout,
126
- g as PayNextSDK,
129
+ h as PayNextCheckout,
130
+ E as PayNextSDK,
127
131
  x as PaymentMethod
128
132
  };
129
133
  //# sourceMappingURL=index.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../src/app/sdk-pkg/sdk.pkg.ts","../src/pkg/checkout-api/constants/enums.ts"],"sourcesContent":["import type { PayNextConfig } from \"@/core/modules/checkout/checkout.interface\"\n\n// CDN configuration\nconst CDN_URL_DEV = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\n// const CDN_URL_PROD = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_VERSION = '1.0.0'\n\n// cache for loaded SDK\nlet sdkPromise: Promise<any> | null = null\nlet sdkModule: any = null\n\n// dynamically load SDK from CDN\nasync function loadSDKFromCDN(): Promise<any> {\n if (sdkModule) {\n return sdkModule\n }\n\n if (sdkPromise) {\n return sdkPromise\n }\n\n sdkPromise = new Promise((resolve, reject) => {\n if (typeof window === 'undefined') {\n reject(new Error('PayNext SDK can only be loaded in browser environment'))\n return\n }\n\n if ((window as any).PayNextSDK) {\n console.log('[PayNext CDN] SDK already loaded from cache')\n sdkModule = (window as any).PayNextSDK\n resolve(sdkModule)\n return\n }\n \n const script = document.createElement('script')\n script.src = CDN_URL_DEV\n script.crossOrigin = 'anonymous'\n script.async = true\n \n script.onload = () => {\n console.log('[PayNext CDN] Script loaded, checking global...')\n \n setTimeout(() => {\n const module = (window as any).PayNextSDK\n \n if (!module) {\n console.error('[PayNext CDN] PayNextSDK not found in window after load')\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('PayNextSDK not found in global scope after loading'))\n return\n }\n \n console.log('[PayNext CDN] SDK fetched successfully, exports:', Object.keys(module))\n sdkModule = module\n resolve(module)\n }, 1)\n }\n \n script.onerror = (error) => {\n console.error('[PayNext CDN] Failed to load script:', error)\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('Failed to load PayNext SDK script from CDN'))\n }\n \n document.head.appendChild(script)\n })\n\n return sdkPromise\n}\n\n// checkout proxy class\nexport class PayNextCheckout {\n private cdnInstance: any = null\n private initPromise: Promise<void> | null = null\n\n constructor() {\n this.initPromise = this.initialize()\n }\n\n // initialize\n private async initialize(): Promise<void> {\n try {\n console.log('[PayNext CDN] Loading SDK from CDN...')\n const sdk = await loadSDKFromCDN()\n console.log('[PayNext CDN] SDK loaded, exports:', Object.keys(sdk))\n \n if (!sdk.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new sdk.PayNextCheckout()\n console.log('[PayNext CDN] Instance created successfully')\n } catch (error) {\n console.error('[PayNext CDN] Failed to initialize:', error)\n throw error\n }\n }\n\n // wait for ready\n private async waitForReady(): Promise<void> {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n await this.initPromise\n if (!this.cdnInstance) {\n throw new Error('SDK instance not created')\n }\n }\n\n // mount\n async mount(containerId: string, config: PayNextConfig): Promise<void> {\n console.log('[PayNext CDN] mount() called, waiting for SDK...')\n await this.waitForReady()\n console.log('[PayNext CDN] SDK ready, calling mount on CDN instance...')\n return this.cdnInstance.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.unmount) {\n return this.cdnInstance.unmount()\n }\n }\n\n // update config\n async updateConfig(config: any): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\n }\n\n // get version\n static getVersion(): string {\n return CDN_VERSION\n }\n\n // get CDN url\n static getCDNUrl(): string {\n return CDN_URL_DEV\n }\n\n // check if loaded\n static isLoaded(): boolean {\n return sdkModule !== null\n }\n\n // preload (optional optimization)\n static async preload(): Promise<void> {\n await loadSDKFromCDN()\n }\n}\n\n// export\nexport const PayNextSDK = {\n version: CDN_VERSION,\n cdnUrl: CDN_URL_DEV,\n preload: PayNextCheckout.preload,\n isLoaded: PayNextCheckout.isLoaded,\n}\n\nexport default PayNextCheckout\n\n","export enum PaymentMethod {\n PAYPAL = 'PAYPAL',\n APPLE_PAY = 'APPLEPAY',\n GOOGLE_PAY = 'GPAY',\n CARD = 'CARD',\n VENMO = 'VENMO',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n FAILED = 'FAILED',\n AUTHORIZED = 'AUTHORIZED',\n SETTLING = 'SETTLING',\n SETTLED = 'SETTLED',\n DECLINED = 'DECLINED',\n CANCELLED = 'CANCELLED',\n}\n\nexport enum DeclineCode {\n INSUFFICIENT_FUNDS = 'insufficient_funds',\n AUTHENTICATION_REQUIRED = 'authentication_required',\n CARD_ISSUER_DECLINE = 'card_issuer_decline',\n GENERIC_DECLINE = 'generic_decline',\n WITHDRAWAL_LIMIT_EXCEEDED = 'withdrawal_limit_exceeded',\n DO_NOT_HONOR = 'do_not_honor',\n EXPIRED_CARD = 'expired_card',\n SUSPECTED_FRAUD = 'suspected_fraud',\n INCORRECT_CVC = 'incorrect_cvc',\n INVALID_CARD_NUMBER = 'invalid_card_number',\n ISSUER_UNAVAILABLE = 'issuer_unavailable',\n CARD_LOST_OR_STOLEN = 'card_lost_or_stolen',\n CARD_DECLINED = 'card_declined',\n}\n"],"names":["CDN_URL_DEV","CDN_VERSION","sdkPromise","sdkModule","loadSDKFromCDN","__async","resolve","reject","script","module","error","PayNextCheckout","__publicField","sdk","containerId","config","PayNextSDK","PaymentMethod"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../src/app/sdk-pkg/sdk.pkg.ts","../src/pkg/checkout-api/constants/enums.ts"],"sourcesContent":["import type { PayNextConfig } from \"@/core/modules/checkout/checkout.interface\"\n\n// CDN configuration\nconst CDN_URL_DEV = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_URL_PROD = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_VERSION = '1.0.0'\n\n// cache for loaded SDK\nlet sdkPromise: Promise<any> | null = null\nlet sdkModule: any = null\n\n// dynamically load SDK from CDN\nasync function loadSDKFromCDN(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<any> {\n if (sdkModule) {\n return sdkModule\n }\n\n if (sdkPromise) {\n return sdkPromise\n }\n\n const environment = (envType?.toLowerCase() === 'develop' || envType?.toLowerCase() === 'staging') ? 'develop' : 'production'\n\n sdkPromise = new Promise((resolve, reject) => {\n if (typeof window === 'undefined') {\n reject(new Error('PayNext SDK can only be loaded in browser environment'))\n return\n }\n\n if ((window as any).PayNextSDK) {\n console.log('[PayNext CDN] SDK already loaded from cache')\n sdkModule = (window as any).PayNextSDK\n resolve(sdkModule)\n return\n }\n \n const script = document.createElement('script')\n script.src = environment === 'develop' ? CDN_URL_DEV : CDN_URL_PROD\n script.crossOrigin = 'anonymous'\n script.async = true\n \n script.onload = () => { \n setTimeout(() => {\n const module = (window as any).PayNextSDK\n \n if (!module) {\n console.error('[PayNext CDN] PayNextSDK not found in window after load')\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('PayNextSDK not found in global scope after loading'))\n return\n }\n \n sdkModule = module\n resolve(module)\n }, 10)\n }\n \n script.onerror = (error) => {\n console.error('[PayNext CDN] Failed to load script:', error)\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('Failed to load PayNext SDK script from CDN'))\n }\n \n document.head.appendChild(script)\n })\n\n return sdkPromise\n}\n\n// checkout proxy class\nexport class PayNextCheckout {\n private cdnInstance: any = null\n private initPromise: Promise<void> | null = null\n\n constructor(envType: 'develop' | 'staging' | 'sandbox' | 'production') {\n \n\n this.initPromise = this.initialize(envType)\n }\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n const sdk = await loadSDKFromCDN(envType)\n \n if (!sdk.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new sdk.PayNextCheckout()\n } catch (error) {\n console.error('[PayNext CDN] Failed to initialize:', error)\n throw error\n }\n }\n\n // wait for ready\n private async waitForReady(): Promise<void> {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n await this.initPromise\n if (!this.cdnInstance) {\n throw new Error('SDK instance not created')\n }\n }\n\n // mount\n async mount(containerId: string, config: PayNextConfig): Promise<void> {\n console.log('[PayNext CDN] mount(): ', config.environment)\n await this.waitForReady()\n return this.cdnInstance.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.unmount) {\n return this.cdnInstance.unmount()\n }\n }\n\n // update config\n async updateConfig(config: any): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\n }\n\n // get version\n static getVersion(): string {\n return CDN_VERSION\n }\n\n // get CDN url\n static getCDNUrl(): string {\n return CDN_URL_DEV\n }\n\n // check if loaded\n static isLoaded(): boolean {\n return sdkModule !== null\n }\n\n // preload (optional optimization)\n static async preload(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n await loadSDKFromCDN(envType)\n }\n}\n\n// export\nexport const PayNextSDK = {\n version: CDN_VERSION,\n cdnUrl: CDN_URL_DEV,\n preload: PayNextCheckout.preload,\n isLoaded: PayNextCheckout.isLoaded,\n}\n\nexport default PayNextCheckout\n\n","export enum PaymentMethod {\n PAYPAL = 'PAYPAL',\n APPLE_PAY = 'APPLEPAY',\n GOOGLE_PAY = 'GPAY',\n CARD = 'CARD',\n VENMO = 'VENMO',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n FAILED = 'FAILED',\n AUTHORIZED = 'AUTHORIZED',\n SETTLING = 'SETTLING',\n SETTLED = 'SETTLED',\n DECLINED = 'DECLINED',\n CANCELLED = 'CANCELLED',\n}\n\nexport enum DeclineCode {\n INSUFFICIENT_FUNDS = 'insufficient_funds',\n AUTHENTICATION_REQUIRED = 'authentication_required',\n CARD_ISSUER_DECLINE = 'card_issuer_decline',\n GENERIC_DECLINE = 'generic_decline',\n WITHDRAWAL_LIMIT_EXCEEDED = 'withdrawal_limit_exceeded',\n DO_NOT_HONOR = 'do_not_honor',\n EXPIRED_CARD = 'expired_card',\n SUSPECTED_FRAUD = 'suspected_fraud',\n INCORRECT_CVC = 'incorrect_cvc',\n INVALID_CARD_NUMBER = 'invalid_card_number',\n ISSUER_UNAVAILABLE = 'issuer_unavailable',\n CARD_LOST_OR_STOLEN = 'card_lost_or_stolen',\n CARD_DECLINED = 'card_declined',\n}\n"],"names":["CDN_URL_DEV","CDN_URL_PROD","CDN_VERSION","sdkPromise","sdkModule","loadSDKFromCDN","envType","__async","environment","resolve","reject","script","module","error","PayNextCheckout","__publicField","sdk","containerId","config","PayNextSDK","PaymentMethod"],"mappings":"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"}
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(t,e){typeof exports=="object"&&typeof module!="undefined"?e(exports):typeof define=="function"&&define.amd?define(["exports"],e):(t=typeof globalThis!="undefined"?globalThis:t||self,e(t["PayNext SDK"]={}))})(this,function(t){"use strict";var D=Object.defineProperty;var f=(t,e,i)=>e in t?D(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i;var P=(t,e,i)=>f(t,typeof e!="symbol"?e+"":e,i);var d=(t,e,i)=>new Promise((c,s)=>{var N=a=>{try{y(i.next(a))}catch(n){s(n)}},u=a=>{try{y(i.throw(a))}catch(n){s(n)}},y=a=>a.done?c(a.value):Promise.resolve(a.value).then(N,u);y((i=i.apply(t,e)).next())});const e="https://paynext-sdk.cbvcode.workers.dev/index.cdn.js",i="1.0.0";let c=null,s=null;function N(){return d(this,null,function*(){return s||c||(c=new Promise((n,o)=>{if(typeof window=="undefined"){o(new Error("PayNext SDK can only be loaded in browser environment"));return}if(window.PayNextSDK){console.log("[PayNext CDN] SDK already loaded from cache"),s=window.PayNextSDK,n(s);return}const r=document.createElement("script");r.src=e,r.crossOrigin="anonymous",r.async=!0,r.onload=()=>{console.log("[PayNext CDN] Script loaded, checking global..."),setTimeout(()=>{const l=window.PayNextSDK;if(!l){console.error("[PayNext CDN] PayNextSDK not found in window after load"),c=null,document.head.removeChild(r),o(new Error("PayNextSDK not found in global scope after loading"));return}console.log("[PayNext CDN] SDK fetched successfully, exports:",Object.keys(l)),s=l,n(l)},1)},r.onerror=l=>{console.error("[PayNext CDN] Failed to load script:",l),c=null,document.head.removeChild(r),o(new Error("Failed to load PayNext SDK script from CDN"))},document.head.appendChild(r)}),c)})}class u{constructor(){P(this,"cdnInstance",null);P(this,"initPromise",null);this.initPromise=this.initialize()}initialize(){return d(this,null,function*(){try{console.log("[PayNext CDN] Loading SDK from CDN...");const o=yield N();if(console.log("[PayNext CDN] SDK loaded, exports:",Object.keys(o)),!o.PayNextCheckout)throw new Error("PayNextCheckout not found in CDN module");this.cdnInstance=new o.PayNextCheckout,console.log("[PayNext CDN] Instance created successfully")}catch(o){throw console.error("[PayNext CDN] Failed to initialize:",o),o}})}waitForReady(){return d(this,null,function*(){if(!this.initPromise)throw new Error("SDK initialization not started");if(yield this.initPromise,!this.cdnInstance)throw new Error("SDK instance not created")})}mount(o,r){return d(this,null,function*(){return console.log("[PayNext CDN] mount() called, waiting for SDK..."),yield this.waitForReady(),console.log("[PayNext CDN] SDK ready, calling mount on CDN instance..."),this.cdnInstance.mount(o,r)})}unmount(){return d(this,null,function*(){if(yield this.waitForReady(),this.cdnInstance.unmount)return this.cdnInstance.unmount()})}updateConfig(o){return d(this,null,function*(){if(yield this.waitForReady(),this.cdnInstance.updateConfig)return this.cdnInstance.updateConfig(o)})}static getVersion(){return i}static getCDNUrl(){return e}static isLoaded(){return s!==null}static preload(){return d(this,null,function*(){yield N()})}}const y={version:i,cdnUrl:e,preload:u.preload,isLoaded:u.isLoaded};var a=(n=>(n.PAYPAL="PAYPAL",n.APPLE_PAY="APPLEPAY",n.GOOGLE_PAY="GPAY",n.CARD="CARD",n.VENMO="VENMO",n))(a||{});t.PayNextCheckout=u,t.PayNextSDK=y,t.PaymentMethod=a,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})});
1
+ (function(n,t){typeof exports=="object"&&typeof module!="undefined"?t(exports):typeof define=="function"&&define.amd?define(["exports"],t):(n=typeof globalThis!="undefined"?globalThis:n||self,t(n["PayNext SDK"]={}))})(this,function(n){"use strict";var D=Object.defineProperty;var m=(n,t,o)=>t in n?D(n,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):n[t]=o;var y=(n,t,o)=>m(n,typeof t!="symbol"?t+"":t,o);var u=(n,t,o)=>new Promise((N,a)=>{var d=s=>{try{l(o.next(s))}catch(w){a(w)}},f=s=>{try{l(o.throw(s))}catch(w){a(w)}},l=s=>s.done?N(s.value):Promise.resolve(s.value).then(d,f);l((o=o.apply(n,t)).next())});const t="https://paynext-sdk.cbvcode.workers.dev/index.cdn.js",o="https://paynext-sdk.cbvcode.workers.dev/index.cdn.js",N="1.0.0";let a=null,d=null;function f(e){return u(this,null,function*(){if(d)return d;if(a)return a;const i=(e==null?void 0:e.toLowerCase())==="develop"||(e==null?void 0:e.toLowerCase())==="staging"?"develop":"production";return a=new Promise((r,h)=>{if(typeof window=="undefined"){h(new Error("PayNext SDK can only be loaded in browser environment"));return}if(window.PayNextSDK){console.log("[PayNext CDN] SDK already loaded from cache"),d=window.PayNextSDK,r(d);return}const c=document.createElement("script");c.src=i==="develop"?t:o,c.crossOrigin="anonymous",c.async=!0,c.onload=()=>{setTimeout(()=>{const P=window.PayNextSDK;if(!P){console.error("[PayNext CDN] PayNextSDK not found in window after load"),a=null,document.head.removeChild(c),h(new Error("PayNextSDK not found in global scope after loading"));return}d=P,r(P)},10)},c.onerror=P=>{console.error("[PayNext CDN] Failed to load script:",P),a=null,document.head.removeChild(c),h(new Error("Failed to load PayNext SDK script from CDN"))},document.head.appendChild(c)}),a})}class l{constructor(i){y(this,"cdnInstance",null);y(this,"initPromise",null);this.initPromise=this.initialize(i)}initialize(i){return u(this,null,function*(){try{const r=yield f(i);if(!r.PayNextCheckout)throw new Error("PayNextCheckout not found in CDN module");this.cdnInstance=new r.PayNextCheckout}catch(r){throw console.error("[PayNext CDN] Failed to initialize:",r),r}})}waitForReady(){return u(this,null,function*(){if(!this.initPromise)throw new Error("SDK initialization not started");if(yield this.initPromise,!this.cdnInstance)throw new Error("SDK instance not created")})}mount(i,r){return u(this,null,function*(){return console.log("[PayNext CDN] mount(): ",r.environment),yield this.waitForReady(),this.cdnInstance.mount(i,r)})}unmount(){return u(this,null,function*(){if(yield this.waitForReady(),this.cdnInstance.unmount)return this.cdnInstance.unmount()})}updateConfig(i){return u(this,null,function*(){if(yield this.waitForReady(),this.cdnInstance.updateConfig)return this.cdnInstance.updateConfig(i)})}static getVersion(){return N}static getCDNUrl(){return t}static isLoaded(){return d!==null}static preload(i){return u(this,null,function*(){yield f(i)})}}const s={version:N,cdnUrl:t,preload:l.preload,isLoaded:l.isLoaded};var w=(e=>(e.PAYPAL="PAYPAL",e.APPLE_PAY="APPLEPAY",e.GOOGLE_PAY="GPAY",e.CARD="CARD",e.VENMO="VENMO",e))(w||{});n.PayNextCheckout=l,n.PayNextSDK=s,n.PaymentMethod=w,Object.defineProperty(n,Symbol.toStringTag,{value:"Module"})});
2
2
  //# sourceMappingURL=index.umd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.umd.js","sources":["../src/app/sdk-pkg/sdk.pkg.ts","../src/pkg/checkout-api/constants/enums.ts"],"sourcesContent":["import type { PayNextConfig } from \"@/core/modules/checkout/checkout.interface\"\n\n// CDN configuration\nconst CDN_URL_DEV = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\n// const CDN_URL_PROD = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_VERSION = '1.0.0'\n\n// cache for loaded SDK\nlet sdkPromise: Promise<any> | null = null\nlet sdkModule: any = null\n\n// dynamically load SDK from CDN\nasync function loadSDKFromCDN(): Promise<any> {\n if (sdkModule) {\n return sdkModule\n }\n\n if (sdkPromise) {\n return sdkPromise\n }\n\n sdkPromise = new Promise((resolve, reject) => {\n if (typeof window === 'undefined') {\n reject(new Error('PayNext SDK can only be loaded in browser environment'))\n return\n }\n\n if ((window as any).PayNextSDK) {\n console.log('[PayNext CDN] SDK already loaded from cache')\n sdkModule = (window as any).PayNextSDK\n resolve(sdkModule)\n return\n }\n \n const script = document.createElement('script')\n script.src = CDN_URL_DEV\n script.crossOrigin = 'anonymous'\n script.async = true\n \n script.onload = () => {\n console.log('[PayNext CDN] Script loaded, checking global...')\n \n setTimeout(() => {\n const module = (window as any).PayNextSDK\n \n if (!module) {\n console.error('[PayNext CDN] PayNextSDK not found in window after load')\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('PayNextSDK not found in global scope after loading'))\n return\n }\n \n console.log('[PayNext CDN] SDK fetched successfully, exports:', Object.keys(module))\n sdkModule = module\n resolve(module)\n }, 1)\n }\n \n script.onerror = (error) => {\n console.error('[PayNext CDN] Failed to load script:', error)\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('Failed to load PayNext SDK script from CDN'))\n }\n \n document.head.appendChild(script)\n })\n\n return sdkPromise\n}\n\n// checkout proxy class\nexport class PayNextCheckout {\n private cdnInstance: any = null\n private initPromise: Promise<void> | null = null\n\n constructor() {\n this.initPromise = this.initialize()\n }\n\n // initialize\n private async initialize(): Promise<void> {\n try {\n console.log('[PayNext CDN] Loading SDK from CDN...')\n const sdk = await loadSDKFromCDN()\n console.log('[PayNext CDN] SDK loaded, exports:', Object.keys(sdk))\n \n if (!sdk.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new sdk.PayNextCheckout()\n console.log('[PayNext CDN] Instance created successfully')\n } catch (error) {\n console.error('[PayNext CDN] Failed to initialize:', error)\n throw error\n }\n }\n\n // wait for ready\n private async waitForReady(): Promise<void> {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n await this.initPromise\n if (!this.cdnInstance) {\n throw new Error('SDK instance not created')\n }\n }\n\n // mount\n async mount(containerId: string, config: PayNextConfig): Promise<void> {\n console.log('[PayNext CDN] mount() called, waiting for SDK...')\n await this.waitForReady()\n console.log('[PayNext CDN] SDK ready, calling mount on CDN instance...')\n return this.cdnInstance.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.unmount) {\n return this.cdnInstance.unmount()\n }\n }\n\n // update config\n async updateConfig(config: any): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\n }\n\n // get version\n static getVersion(): string {\n return CDN_VERSION\n }\n\n // get CDN url\n static getCDNUrl(): string {\n return CDN_URL_DEV\n }\n\n // check if loaded\n static isLoaded(): boolean {\n return sdkModule !== null\n }\n\n // preload (optional optimization)\n static async preload(): Promise<void> {\n await loadSDKFromCDN()\n }\n}\n\n// export\nexport const PayNextSDK = {\n version: CDN_VERSION,\n cdnUrl: CDN_URL_DEV,\n preload: PayNextCheckout.preload,\n isLoaded: PayNextCheckout.isLoaded,\n}\n\nexport default PayNextCheckout\n\n","export enum PaymentMethod {\n PAYPAL = 'PAYPAL',\n APPLE_PAY = 'APPLEPAY',\n GOOGLE_PAY = 'GPAY',\n CARD = 'CARD',\n VENMO = 'VENMO',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n FAILED = 'FAILED',\n AUTHORIZED = 'AUTHORIZED',\n SETTLING = 'SETTLING',\n SETTLED = 'SETTLED',\n DECLINED = 'DECLINED',\n CANCELLED = 'CANCELLED',\n}\n\nexport enum DeclineCode {\n INSUFFICIENT_FUNDS = 'insufficient_funds',\n AUTHENTICATION_REQUIRED = 'authentication_required',\n CARD_ISSUER_DECLINE = 'card_issuer_decline',\n GENERIC_DECLINE = 'generic_decline',\n WITHDRAWAL_LIMIT_EXCEEDED = 'withdrawal_limit_exceeded',\n DO_NOT_HONOR = 'do_not_honor',\n EXPIRED_CARD = 'expired_card',\n SUSPECTED_FRAUD = 'suspected_fraud',\n INCORRECT_CVC = 'incorrect_cvc',\n INVALID_CARD_NUMBER = 'invalid_card_number',\n ISSUER_UNAVAILABLE = 'issuer_unavailable',\n CARD_LOST_OR_STOLEN = 'card_lost_or_stolen',\n CARD_DECLINED = 'card_declined',\n}\n"],"names":["CDN_URL_DEV","CDN_VERSION","sdkPromise","sdkModule","loadSDKFromCDN","__async","resolve","reject","script","module","error","PayNextCheckout","__publicField","sdk","containerId","config","PayNextSDK","PaymentMethod"],"mappings":"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"}
1
+ {"version":3,"file":"index.umd.js","sources":["../src/app/sdk-pkg/sdk.pkg.ts","../src/pkg/checkout-api/constants/enums.ts"],"sourcesContent":["import type { PayNextConfig } from \"@/core/modules/checkout/checkout.interface\"\n\n// CDN configuration\nconst CDN_URL_DEV = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_URL_PROD = 'https://paynext-sdk.cbvcode.workers.dev/index.cdn.js'\nconst CDN_VERSION = '1.0.0'\n\n// cache for loaded SDK\nlet sdkPromise: Promise<any> | null = null\nlet sdkModule: any = null\n\n// dynamically load SDK from CDN\nasync function loadSDKFromCDN(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<any> {\n if (sdkModule) {\n return sdkModule\n }\n\n if (sdkPromise) {\n return sdkPromise\n }\n\n const environment = (envType?.toLowerCase() === 'develop' || envType?.toLowerCase() === 'staging') ? 'develop' : 'production'\n\n sdkPromise = new Promise((resolve, reject) => {\n if (typeof window === 'undefined') {\n reject(new Error('PayNext SDK can only be loaded in browser environment'))\n return\n }\n\n if ((window as any).PayNextSDK) {\n console.log('[PayNext CDN] SDK already loaded from cache')\n sdkModule = (window as any).PayNextSDK\n resolve(sdkModule)\n return\n }\n \n const script = document.createElement('script')\n script.src = environment === 'develop' ? CDN_URL_DEV : CDN_URL_PROD\n script.crossOrigin = 'anonymous'\n script.async = true\n \n script.onload = () => { \n setTimeout(() => {\n const module = (window as any).PayNextSDK\n \n if (!module) {\n console.error('[PayNext CDN] PayNextSDK not found in window after load')\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('PayNextSDK not found in global scope after loading'))\n return\n }\n \n sdkModule = module\n resolve(module)\n }, 10)\n }\n \n script.onerror = (error) => {\n console.error('[PayNext CDN] Failed to load script:', error)\n sdkPromise = null\n document.head.removeChild(script)\n reject(new Error('Failed to load PayNext SDK script from CDN'))\n }\n \n document.head.appendChild(script)\n })\n\n return sdkPromise\n}\n\n// checkout proxy class\nexport class PayNextCheckout {\n private cdnInstance: any = null\n private initPromise: Promise<void> | null = null\n\n constructor(envType: 'develop' | 'staging' | 'sandbox' | 'production') {\n \n\n this.initPromise = this.initialize(envType)\n }\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n const sdk = await loadSDKFromCDN(envType)\n \n if (!sdk.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new sdk.PayNextCheckout()\n } catch (error) {\n console.error('[PayNext CDN] Failed to initialize:', error)\n throw error\n }\n }\n\n // wait for ready\n private async waitForReady(): Promise<void> {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n await this.initPromise\n if (!this.cdnInstance) {\n throw new Error('SDK instance not created')\n }\n }\n\n // mount\n async mount(containerId: string, config: PayNextConfig): Promise<void> {\n console.log('[PayNext CDN] mount(): ', config.environment)\n await this.waitForReady()\n return this.cdnInstance.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.unmount) {\n return this.cdnInstance.unmount()\n }\n }\n\n // update config\n async updateConfig(config: any): Promise<void> {\n await this.waitForReady()\n if (this.cdnInstance.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\n }\n\n // get version\n static getVersion(): string {\n return CDN_VERSION\n }\n\n // get CDN url\n static getCDNUrl(): string {\n return CDN_URL_DEV\n }\n\n // check if loaded\n static isLoaded(): boolean {\n return sdkModule !== null\n }\n\n // preload (optional optimization)\n static async preload(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n await loadSDKFromCDN(envType)\n }\n}\n\n// export\nexport const PayNextSDK = {\n version: CDN_VERSION,\n cdnUrl: CDN_URL_DEV,\n preload: PayNextCheckout.preload,\n isLoaded: PayNextCheckout.isLoaded,\n}\n\nexport default PayNextCheckout\n\n","export enum PaymentMethod {\n PAYPAL = 'PAYPAL',\n APPLE_PAY = 'APPLEPAY',\n GOOGLE_PAY = 'GPAY',\n CARD = 'CARD',\n VENMO = 'VENMO',\n}\n\nexport enum PaymentStatus {\n PENDING = 'PENDING',\n FAILED = 'FAILED',\n AUTHORIZED = 'AUTHORIZED',\n SETTLING = 'SETTLING',\n SETTLED = 'SETTLED',\n DECLINED = 'DECLINED',\n CANCELLED = 'CANCELLED',\n}\n\nexport enum DeclineCode {\n INSUFFICIENT_FUNDS = 'insufficient_funds',\n AUTHENTICATION_REQUIRED = 'authentication_required',\n CARD_ISSUER_DECLINE = 'card_issuer_decline',\n GENERIC_DECLINE = 'generic_decline',\n WITHDRAWAL_LIMIT_EXCEEDED = 'withdrawal_limit_exceeded',\n DO_NOT_HONOR = 'do_not_honor',\n EXPIRED_CARD = 'expired_card',\n SUSPECTED_FRAUD = 'suspected_fraud',\n INCORRECT_CVC = 'incorrect_cvc',\n INVALID_CARD_NUMBER = 'invalid_card_number',\n ISSUER_UNAVAILABLE = 'issuer_unavailable',\n CARD_LOST_OR_STOLEN = 'card_lost_or_stolen',\n CARD_DECLINED = 'card_declined',\n}\n"],"names":["CDN_URL_DEV","CDN_URL_PROD","CDN_VERSION","sdkPromise","sdkModule","loadSDKFromCDN","envType","__async","environment","resolve","reject","script","module","error","PayNextCheckout","__publicField","sdk","containerId","config","PayNextSDK","PaymentMethod"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paynext/sdk",
3
- "version": "0.0.145",
3
+ "version": "0.0.147",
4
4
  "description": "PayNext SDK - Payment processing with automatic CDN loading",
5
5
  "type": "module",
6
6
  "main": "dist/index.es.js",