@paynext/sdk 0.0.153 → 0.0.154

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.es.js CHANGED
@@ -1,7 +1,7 @@
1
- var D = Object.defineProperty;
2
- var m = (t, n, o) => n in t ? D(t, n, { enumerable: !0, configurable: !0, writable: !0, value: o }) : t[n] = o;
3
- var P = (t, n, o) => m(t, typeof n != "symbol" ? n + "" : n, o);
4
- var s = (t, n, o) => new Promise((r, l) => {
1
+ var m = Object.defineProperty;
2
+ var D = (n, t, o) => t in n ? m(n, t, { enumerable: !0, configurable: !0, writable: !0, value: o }) : n[t] = o;
3
+ var P = (n, t, o) => D(n, typeof t != "symbol" ? t + "" : t, o);
4
+ var s = (n, t, o) => new Promise((r, l) => {
5
5
  var u = (a) => {
6
6
  try {
7
7
  i(o.next(a));
@@ -15,18 +15,18 @@ var s = (t, n, o) => new Promise((r, l) => {
15
15
  l(w);
16
16
  }
17
17
  }, i = (a) => a.done ? r(a.value) : Promise.resolve(a.value).then(u, e);
18
- i((o = o.apply(t, n)).next());
18
+ i((o = o.apply(n, t)).next());
19
19
  });
20
- const C = "https://paynext-sdk-dev.ableapp.workers.dev/index.cdn.js", f = "https://cdn-sdk.paynext.com/index.cdn.js", x = "1.0.0";
20
+ const C = "https://cdn-sdk-dev.paynext.com/index.cdn.js", f = "https://cdn-sdk.paynext.com/index.cdn.js", x = "1.0.0";
21
21
  let d = null, c = null;
22
- function h(t) {
22
+ function h(n) {
23
23
  return s(this, null, function* () {
24
24
  var o, r;
25
25
  if (c)
26
26
  return c;
27
27
  if (d)
28
28
  return d;
29
- const n = (o = t == null ? void 0 : t.toLowerCase()) != null && o.includes("develop") || (r = t == null ? void 0 : t.toLowerCase()) != null && r.includes("staging") ? "develop" : "production";
29
+ const t = (o = n == null ? void 0 : n.toLowerCase()) != null && o.includes("develop") || (r = n == null ? void 0 : n.toLowerCase()) != null && r.includes("staging") ? "develop" : "production";
30
30
  return d = new Promise((l, u) => {
31
31
  if (typeof window == "undefined") {
32
32
  u(new Error("PayNext SDK can only be loaded in browser environment"));
@@ -37,7 +37,7 @@ function h(t) {
37
37
  return;
38
38
  }
39
39
  const e = document.createElement("script");
40
- e.src = n === "develop" ? C : f, e.crossOrigin = "*", e.async = !0, e.onload = () => {
40
+ e.src = t === "develop" ? C : f, e.crossOrigin = "*", e.async = !0, e.onload = () => {
41
41
  setTimeout(() => {
42
42
  const i = window.PayNextSDK;
43
43
  if (!i) {
@@ -58,10 +58,10 @@ class N {
58
58
  P(this, "initPromise", null);
59
59
  }
60
60
  // initialize
61
- initialize(n) {
61
+ initialize(t) {
62
62
  return s(this, null, function* () {
63
63
  try {
64
- if (this.initPromise = yield h(n), !this.initPromise.PayNextCheckout)
64
+ if (this.initPromise = yield h(t), !this.initPromise.PayNextCheckout)
65
65
  throw new Error("PayNextCheckout not found in CDN module");
66
66
  this.cdnInstance = new this.initPromise.PayNextCheckout();
67
67
  } catch (o) {
@@ -77,26 +77,26 @@ class N {
77
77
  throw new Error("SDK instance not created");
78
78
  }
79
79
  // mount
80
- mount(n, o) {
80
+ mount(t, o) {
81
81
  return s(this, null, function* () {
82
82
  var r;
83
- return yield this.initialize(o.environment), this.waitForReady(), (r = this.cdnInstance) == null ? void 0 : r.mount(n, o);
83
+ return yield this.initialize(o.environment), this.waitForReady(), (r = this.cdnInstance) == null ? void 0 : r.mount(t, o);
84
84
  });
85
85
  }
86
86
  // unmount
87
87
  unmount() {
88
88
  return s(this, null, function* () {
89
- var n;
90
- if (this.waitForReady(), (n = this.cdnInstance) != null && n.unmount)
89
+ var t;
90
+ if (this.waitForReady(), (t = this.cdnInstance) != null && t.unmount)
91
91
  return this.cdnInstance.unmount();
92
92
  });
93
93
  }
94
94
  // update config
95
- updateConfig(n) {
95
+ updateConfig(t) {
96
96
  return s(this, null, function* () {
97
97
  var o;
98
98
  if (this.waitForReady(), (o = this.cdnInstance) != null && o.updateConfig)
99
- return this.cdnInstance.updateConfig(n);
99
+ return this.cdnInstance.updateConfig(t);
100
100
  });
101
101
  }
102
102
  // check if loaded
@@ -104,9 +104,9 @@ class N {
104
104
  return c !== null;
105
105
  }
106
106
  // preload (optional optimization)
107
- static preload(n) {
107
+ static preload(t) {
108
108
  return s(this, null, function* () {
109
- yield h(n);
109
+ yield h(t);
110
110
  });
111
111
  }
112
112
  }
@@ -115,7 +115,7 @@ const E = {
115
115
  preload: N.preload,
116
116
  isLoaded: N.isLoaded
117
117
  };
118
- var y = /* @__PURE__ */ ((t) => (t.PAYPAL = "PAYPAL", t.APPLE_PAY = "APPLEPAY", t.GOOGLE_PAY = "GPAY", t.CARD = "CARD", t.VENMO = "VENMO", t))(y || {});
118
+ var y = /* @__PURE__ */ ((n) => (n.PAYPAL = "PAYPAL", n.APPLE_PAY = "APPLEPAY", n.GOOGLE_PAY = "GPAY", n.CARD = "CARD", n.VENMO = "VENMO", n))(y || {});
119
119
  export {
120
120
  N as PayNextCheckout,
121
121
  E as PayNextSDK,
@@ -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-dev.ableapp.workers.dev/index.cdn.js'\nconst CDN_URL_PROD = 'https://cdn-sdk.paynext.com/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()?.includes('develop') || envType?.toLowerCase()?.includes('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 = '*'\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: any | null = null\n\n constructor() {}\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n this.initPromise = await loadSDKFromCDN(envType)\n \n if (!this.initPromise.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new this.initPromise.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 waitForReady(): void {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n\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 await this.initialize(config.environment)\n this.waitForReady()\n return this.cdnInstance?.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n 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 this.waitForReady()\n if (this.cdnInstance?.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\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 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","_a","_b","environment","resolve","reject","script","module","error","PayNextCheckout","__publicField","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://cdn-sdk-dev.paynext.com/index.cdn.js'\nconst CDN_URL_PROD = 'https://cdn-sdk.paynext.com/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()?.includes('develop') || envType?.toLowerCase()?.includes('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 = '*'\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: any | null = null\n\n constructor() {}\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n this.initPromise = await loadSDKFromCDN(envType)\n \n if (!this.initPromise.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new this.initPromise.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 waitForReady(): void {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n\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 await this.initialize(config.environment)\n this.waitForReady()\n return this.cdnInstance?.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n 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 this.waitForReady()\n if (this.cdnInstance?.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\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 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","_a","_b","environment","resolve","reject","script","module","error","PayNextCheckout","__publicField","containerId","config","PayNextSDK","PaymentMethod"],"mappings":"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"}
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(t,n){typeof exports=="object"&&typeof module!="undefined"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(t=typeof globalThis!="undefined"?globalThis:t||self,n(t["PayNext SDK"]={}))})(this,(function(t){"use strict";var C=Object.defineProperty;var x=(t,n,i)=>n in t?C(t,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[n]=i;var y=(t,n,i)=>x(t,typeof n!="symbol"?n+"":n,i);var u=(t,n,i)=>new Promise((N,a)=>{var s=d=>{try{l(i.next(d))}catch(P){a(P)}},w=d=>{try{l(i.throw(d))}catch(P){a(P)}},l=d=>d.done?N(d.value):Promise.resolve(d.value).then(s,w);l((i=i.apply(t,n)).next())});const n="https://paynext-sdk-dev.ableapp.workers.dev/index.cdn.js",i="https://cdn-sdk.paynext.com/index.cdn.js",N="1.0.0";let a=null,s=null;function w(e){return u(this,null,function*(){var r,f;if(s)return s;if(a)return a;const o=(r=e==null?void 0:e.toLowerCase())!=null&&r.includes("develop")||(f=e==null?void 0:e.toLowerCase())!=null&&f.includes("staging")?"develop":"production";return a=new Promise((D,m)=>{if(typeof window=="undefined"){m(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,D(s);return}const c=document.createElement("script");c.src=o==="develop"?n:i,c.crossOrigin="*",c.async=!0,c.onload=()=>{setTimeout(()=>{const h=window.PayNextSDK;if(!h){console.error("[PayNext CDN] PayNextSDK not found in window after load"),a=null,document.head.removeChild(c),m(new Error("PayNextSDK not found in global scope after loading"));return}s=h,D(h)},10)},c.onerror=h=>{console.error("[PayNext CDN] Failed to load script:",h),a=null,document.head.removeChild(c),m(new Error("Failed to load PayNext SDK script from CDN"))},document.head.appendChild(c)}),a})}class l{constructor(){y(this,"cdnInstance",null);y(this,"initPromise",null)}initialize(o){return u(this,null,function*(){try{if(this.initPromise=yield w(o),!this.initPromise.PayNextCheckout)throw new Error("PayNextCheckout not found in CDN module");this.cdnInstance=new this.initPromise.PayNextCheckout}catch(r){throw console.error("[PayNext CDN] Failed to initialize:",r),r}})}waitForReady(){if(!this.initPromise)throw new Error("SDK initialization not started");if(!this.cdnInstance)throw new Error("SDK instance not created")}mount(o,r){return u(this,null,function*(){var f;return yield this.initialize(r.environment),this.waitForReady(),(f=this.cdnInstance)==null?void 0:f.mount(o,r)})}unmount(){return u(this,null,function*(){var o;if(this.waitForReady(),(o=this.cdnInstance)!=null&&o.unmount)return this.cdnInstance.unmount()})}updateConfig(o){return u(this,null,function*(){var r;if(this.waitForReady(),(r=this.cdnInstance)!=null&&r.updateConfig)return this.cdnInstance.updateConfig(o)})}static isLoaded(){return s!==null}static preload(o){return u(this,null,function*(){yield w(o)})}}const d={version:N,preload:l.preload,isLoaded:l.isLoaded};var P=(e=>(e.PAYPAL="PAYPAL",e.APPLE_PAY="APPLEPAY",e.GOOGLE_PAY="GPAY",e.CARD="CARD",e.VENMO="VENMO",e))(P||{});t.PayNextCheckout=l,t.PayNextSDK=d,t.PaymentMethod=P,Object.defineProperty(t,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(t,n){typeof exports=="object"&&typeof module!="undefined"?n(exports):typeof define=="function"&&define.amd?define(["exports"],n):(t=typeof globalThis!="undefined"?globalThis:t||self,n(t["PayNext SDK"]={}))})(this,(function(t){"use strict";var C=Object.defineProperty;var x=(t,n,i)=>n in t?C(t,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[n]=i;var y=(t,n,i)=>x(t,typeof n!="symbol"?n+"":n,i);var l=(t,n,i)=>new Promise((N,a)=>{var s=d=>{try{u(i.next(d))}catch(P){a(P)}},w=d=>{try{u(i.throw(d))}catch(P){a(P)}},u=d=>d.done?N(d.value):Promise.resolve(d.value).then(s,w);u((i=i.apply(t,n)).next())});const n="https://cdn-sdk-dev.paynext.com/index.cdn.js",i="https://cdn-sdk.paynext.com/index.cdn.js",N="1.0.0";let a=null,s=null;function w(e){return l(this,null,function*(){var r,f;if(s)return s;if(a)return a;const o=(r=e==null?void 0:e.toLowerCase())!=null&&r.includes("develop")||(f=e==null?void 0:e.toLowerCase())!=null&&f.includes("staging")?"develop":"production";return a=new Promise((D,m)=>{if(typeof window=="undefined"){m(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,D(s);return}const c=document.createElement("script");c.src=o==="develop"?n:i,c.crossOrigin="*",c.async=!0,c.onload=()=>{setTimeout(()=>{const h=window.PayNextSDK;if(!h){console.error("[PayNext CDN] PayNextSDK not found in window after load"),a=null,document.head.removeChild(c),m(new Error("PayNextSDK not found in global scope after loading"));return}s=h,D(h)},10)},c.onerror=h=>{console.error("[PayNext CDN] Failed to load script:",h),a=null,document.head.removeChild(c),m(new Error("Failed to load PayNext SDK script from CDN"))},document.head.appendChild(c)}),a})}class u{constructor(){y(this,"cdnInstance",null);y(this,"initPromise",null)}initialize(o){return l(this,null,function*(){try{if(this.initPromise=yield w(o),!this.initPromise.PayNextCheckout)throw new Error("PayNextCheckout not found in CDN module");this.cdnInstance=new this.initPromise.PayNextCheckout}catch(r){throw console.error("[PayNext CDN] Failed to initialize:",r),r}})}waitForReady(){if(!this.initPromise)throw new Error("SDK initialization not started");if(!this.cdnInstance)throw new Error("SDK instance not created")}mount(o,r){return l(this,null,function*(){var f;return yield this.initialize(r.environment),this.waitForReady(),(f=this.cdnInstance)==null?void 0:f.mount(o,r)})}unmount(){return l(this,null,function*(){var o;if(this.waitForReady(),(o=this.cdnInstance)!=null&&o.unmount)return this.cdnInstance.unmount()})}updateConfig(o){return l(this,null,function*(){var r;if(this.waitForReady(),(r=this.cdnInstance)!=null&&r.updateConfig)return this.cdnInstance.updateConfig(o)})}static isLoaded(){return s!==null}static preload(o){return l(this,null,function*(){yield w(o)})}}const d={version:N,preload:u.preload,isLoaded:u.isLoaded};var P=(e=>(e.PAYPAL="PAYPAL",e.APPLE_PAY="APPLEPAY",e.GOOGLE_PAY="GPAY",e.CARD="CARD",e.VENMO="VENMO",e))(P||{});t.PayNextCheckout=u,t.PayNextSDK=d,t.PaymentMethod=P,Object.defineProperty(t,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-dev.ableapp.workers.dev/index.cdn.js'\nconst CDN_URL_PROD = 'https://cdn-sdk.paynext.com/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()?.includes('develop') || envType?.toLowerCase()?.includes('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 = '*'\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: any | null = null\n\n constructor() {}\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n this.initPromise = await loadSDKFromCDN(envType)\n \n if (!this.initPromise.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new this.initPromise.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 waitForReady(): void {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n\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 await this.initialize(config.environment)\n this.waitForReady()\n return this.cdnInstance?.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n 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 this.waitForReady()\n if (this.cdnInstance?.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\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 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","_a","_b","resolve","reject","script","module","error","PayNextCheckout","__publicField","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://cdn-sdk-dev.paynext.com/index.cdn.js'\nconst CDN_URL_PROD = 'https://cdn-sdk.paynext.com/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()?.includes('develop') || envType?.toLowerCase()?.includes('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 = '*'\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: any | null = null\n\n constructor() {}\n\n // initialize\n private async initialize(envType: 'develop' | 'staging' | 'sandbox' | 'production'): Promise<void> {\n try {\n this.initPromise = await loadSDKFromCDN(envType)\n \n if (!this.initPromise.PayNextCheckout) {\n throw new Error('PayNextCheckout not found in CDN module')\n }\n \n this.cdnInstance = new this.initPromise.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 waitForReady(): void {\n if (!this.initPromise) {\n throw new Error('SDK initialization not started')\n }\n\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 await this.initialize(config.environment)\n this.waitForReady()\n return this.cdnInstance?.mount(containerId, config)\n }\n\n // unmount\n async unmount(): Promise<void> {\n 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 this.waitForReady()\n if (this.cdnInstance?.updateConfig) {\n return this.cdnInstance.updateConfig(config)\n }\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 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","_a","_b","resolve","reject","script","module","error","PayNextCheckout","__publicField","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.153",
3
+ "version": "0.0.154",
4
4
  "description": "PayNext SDK - Payment processing with automatic CDN loading",
5
5
  "type": "module",
6
6
  "main": "dist/index.es.js",