@greenpay_prod/3ds-sdk 0.2.0 → 0.3.0-qa.28
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.global.js +233 -0
- package/dist/index.global.js.map +1 -0
- package/package.json +5 -2
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var GreenPay3DS = (() => {
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __esm = (fn, res) => function __init() {
|
|
8
|
+
return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
|
|
9
|
+
};
|
|
10
|
+
var __export = (target, all) => {
|
|
11
|
+
for (var name in all)
|
|
12
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
|
+
};
|
|
14
|
+
var __copyProps = (to, from, except, desc) => {
|
|
15
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
16
|
+
for (let key of __getOwnPropNames(from))
|
|
17
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
18
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
22
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
23
|
+
|
|
24
|
+
// ../../node_modules/@evervault/js/dist/evervault-js.js
|
|
25
|
+
var evervault_js_exports = {};
|
|
26
|
+
__export(evervault_js_exports, {
|
|
27
|
+
loadEvervault: () => l
|
|
28
|
+
});
|
|
29
|
+
async function i() {
|
|
30
|
+
return t || (t = new Promise((n, r) => {
|
|
31
|
+
const e = document.createElement("script");
|
|
32
|
+
if (e.src = "https://js.evervault.com/v2", e.onload = () => n(), e.onerror = () => {
|
|
33
|
+
t = null, r();
|
|
34
|
+
}, !document.head)
|
|
35
|
+
throw new Error(
|
|
36
|
+
"Expected document.head not to be null. Evervault.js requires a <head> element."
|
|
37
|
+
);
|
|
38
|
+
document.head.appendChild(e);
|
|
39
|
+
}), t);
|
|
40
|
+
}
|
|
41
|
+
async function o() {
|
|
42
|
+
if (window.Evervault)
|
|
43
|
+
return window.Evervault;
|
|
44
|
+
try {
|
|
45
|
+
return await i(), window.Evervault;
|
|
46
|
+
} catch {
|
|
47
|
+
throw new Error("Failed to load Evervault.js");
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
async function l(n, r, e) {
|
|
51
|
+
const a = await o();
|
|
52
|
+
return new a(n, r, e);
|
|
53
|
+
}
|
|
54
|
+
var t;
|
|
55
|
+
var init_evervault_js = __esm({
|
|
56
|
+
"../../node_modules/@evervault/js/dist/evervault-js.js"() {
|
|
57
|
+
"use strict";
|
|
58
|
+
t = null;
|
|
59
|
+
Promise.resolve().then(() => {
|
|
60
|
+
o();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
// src/index.ts
|
|
66
|
+
var index_exports = {};
|
|
67
|
+
__export(index_exports, {
|
|
68
|
+
GreenPay3DS: () => GreenPay3DS,
|
|
69
|
+
GreenPay3DSError: () => GreenPay3DSError
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
// src/api.ts
|
|
73
|
+
async function createSession(apiUrl, cardData, sessionToken, terminalId) {
|
|
74
|
+
const requestBody = { cardData };
|
|
75
|
+
if (terminalId !== void 0 && terminalId !== "") {
|
|
76
|
+
requestBody.terminalId = terminalId;
|
|
77
|
+
}
|
|
78
|
+
const response = await fetch(`${apiUrl}/3ds/create-session`, {
|
|
79
|
+
method: "POST",
|
|
80
|
+
headers: {
|
|
81
|
+
"Content-Type": "application/json",
|
|
82
|
+
"session-token": sessionToken
|
|
83
|
+
},
|
|
84
|
+
body: JSON.stringify(requestBody)
|
|
85
|
+
});
|
|
86
|
+
const json = await response.json();
|
|
87
|
+
if (!response.ok || json.statusCode !== 200) {
|
|
88
|
+
throw new GreenPay3DSError(
|
|
89
|
+
json?.result?.error?.message || json?.message || "Failed to create 3DS session",
|
|
90
|
+
"CREATE_SESSION_FAILED"
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
return json.data;
|
|
94
|
+
}
|
|
95
|
+
async function retrieveSession(apiUrl, sessionId, cardData, sessionToken) {
|
|
96
|
+
const response = await fetch(`${apiUrl}/3ds/retrieve-session`, {
|
|
97
|
+
method: "POST",
|
|
98
|
+
headers: {
|
|
99
|
+
"Content-Type": "application/json",
|
|
100
|
+
"session-token": sessionToken
|
|
101
|
+
},
|
|
102
|
+
body: JSON.stringify({ sessionId, cardData })
|
|
103
|
+
});
|
|
104
|
+
const body = await response.json();
|
|
105
|
+
if (!response.ok || body.statusCode !== 200) {
|
|
106
|
+
throw new GreenPay3DSError(
|
|
107
|
+
body?.result?.error?.message || body?.message || "Failed to retrieve 3DS session",
|
|
108
|
+
"RETRIEVE_SESSION_FAILED"
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
return body;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
// src/environments.ts
|
|
115
|
+
var ENVIRONMENTS = {
|
|
116
|
+
prod: {
|
|
117
|
+
teamId: "team_115ea2493762",
|
|
118
|
+
appId: "app_86bb433bb19f",
|
|
119
|
+
apiUrl: "https://checkoutv2.greenpay.me"
|
|
120
|
+
},
|
|
121
|
+
sbx: {
|
|
122
|
+
teamId: "team_115ea2493762",
|
|
123
|
+
appId: "app_910ecf6fb931",
|
|
124
|
+
apiUrl: "https://checkoutv2.greenpaysbx.me"
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
// src/GreenPay3DS.ts
|
|
129
|
+
var GreenPay3DSError = class extends Error {
|
|
130
|
+
constructor(message, code) {
|
|
131
|
+
super(message);
|
|
132
|
+
this.name = "GreenPay3DSError";
|
|
133
|
+
this.code = code;
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
var GreenPay3DS = class {
|
|
137
|
+
constructor(config = {}) {
|
|
138
|
+
const defaults = config.environment !== void 0 ? ENVIRONMENTS[config.environment] : void 0;
|
|
139
|
+
if (config.environment !== void 0 && !defaults) {
|
|
140
|
+
throw new GreenPay3DSError(
|
|
141
|
+
`Unknown environment "${config.environment}" (expected "prod" or "sbx")`,
|
|
142
|
+
"INVALID_CONFIG"
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
this.teamId = config.teamId ?? defaults?.teamId ?? "";
|
|
146
|
+
this.appId = config.appId ?? defaults?.appId ?? "";
|
|
147
|
+
this.apiUrl = config.apiUrl ?? defaults?.apiUrl;
|
|
148
|
+
if (!this.teamId || !this.appId) {
|
|
149
|
+
throw new GreenPay3DSError(
|
|
150
|
+
'Set environment ("prod" or "sbx"), or pass teamId and appId explicitly',
|
|
151
|
+
"INVALID_CONFIG"
|
|
152
|
+
);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
async authenticate(sessionId, callbacks) {
|
|
156
|
+
if (!sessionId) {
|
|
157
|
+
throw new GreenPay3DSError("sessionId is required", "INVALID_SESSION");
|
|
158
|
+
}
|
|
159
|
+
callbacks?.onStatusChange?.("Loading 3DS authentication...");
|
|
160
|
+
const { loadEvervault } = await Promise.resolve().then(() => (init_evervault_js(), evervault_js_exports));
|
|
161
|
+
const ev = await loadEvervault(this.teamId, this.appId);
|
|
162
|
+
callbacks?.onStatusChange?.("Initializing 3DS challenge...");
|
|
163
|
+
return new Promise((resolve, reject) => {
|
|
164
|
+
const threeDSecure = ev.ui.threeDSecure(sessionId);
|
|
165
|
+
threeDSecure.on("ready", () => {
|
|
166
|
+
callbacks?.onReady?.();
|
|
167
|
+
callbacks?.onStatusChange?.(
|
|
168
|
+
"Challenge ready. If frictionless it will complete automatically, otherwise complete the verification prompt."
|
|
169
|
+
);
|
|
170
|
+
});
|
|
171
|
+
threeDSecure.on("success", () => {
|
|
172
|
+
callbacks?.onSuccess?.();
|
|
173
|
+
callbacks?.onStatusChange?.("Authentication successful");
|
|
174
|
+
resolve();
|
|
175
|
+
});
|
|
176
|
+
threeDSecure.on("failure", () => {
|
|
177
|
+
const msg = "3DS authentication was rejected by the issuer";
|
|
178
|
+
callbacks?.onFailure?.(msg);
|
|
179
|
+
callbacks?.onStatusChange?.("Authentication failed");
|
|
180
|
+
reject(new GreenPay3DSError(msg, "AUTHENTICATION_FAILED"));
|
|
181
|
+
});
|
|
182
|
+
threeDSecure.on("error", (err) => {
|
|
183
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
184
|
+
callbacks?.onError?.(err instanceof Error ? err : msg);
|
|
185
|
+
callbacks?.onStatusChange?.("Authentication error");
|
|
186
|
+
reject(new GreenPay3DSError(msg, "AUTHENTICATION_ERROR"));
|
|
187
|
+
});
|
|
188
|
+
threeDSecure.mount();
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
async processPayment(orderData, callbacks) {
|
|
192
|
+
if (!this.apiUrl) {
|
|
193
|
+
throw new GreenPay3DSError(
|
|
194
|
+
"apiUrl is required in config for processPayment",
|
|
195
|
+
"INVALID_CONFIG"
|
|
196
|
+
);
|
|
197
|
+
}
|
|
198
|
+
const { cardData, sessionToken, terminalId } = orderData;
|
|
199
|
+
if (!cardData?.ed || !cardData?.session || !sessionToken) {
|
|
200
|
+
throw new GreenPay3DSError(
|
|
201
|
+
"cardData.ed, cardData.session, and sessionToken are required",
|
|
202
|
+
"INVALID_ORDER_DATA"
|
|
203
|
+
);
|
|
204
|
+
}
|
|
205
|
+
callbacks?.onStatusChange?.("Creating 3DS session...");
|
|
206
|
+
const session = await createSession(
|
|
207
|
+
this.apiUrl,
|
|
208
|
+
cardData,
|
|
209
|
+
sessionToken,
|
|
210
|
+
terminalId
|
|
211
|
+
);
|
|
212
|
+
callbacks?.onStatusChange?.("Starting 3DS authentication...");
|
|
213
|
+
await this.authenticate(session.id, {
|
|
214
|
+
onReady: callbacks?.onReady,
|
|
215
|
+
onFailure: callbacks?.onFailure,
|
|
216
|
+
onError: callbacks?.onError,
|
|
217
|
+
onStatusChange: callbacks?.onStatusChange
|
|
218
|
+
});
|
|
219
|
+
callbacks?.onStatusChange?.("Retrieving authentication result...");
|
|
220
|
+
const result = await retrieveSession(
|
|
221
|
+
this.apiUrl,
|
|
222
|
+
session.id,
|
|
223
|
+
cardData,
|
|
224
|
+
sessionToken
|
|
225
|
+
);
|
|
226
|
+
callbacks?.onSuccess?.(result);
|
|
227
|
+
callbacks?.onStatusChange?.("3DS authentication complete");
|
|
228
|
+
return result;
|
|
229
|
+
}
|
|
230
|
+
};
|
|
231
|
+
return __toCommonJS(index_exports);
|
|
232
|
+
})();
|
|
233
|
+
//# sourceMappingURL=index.global.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/@evervault/js/dist/evervault-js.js","../src/index.ts","../src/api.ts","../src/environments.ts","../src/GreenPay3DS.ts"],"sourcesContent":["let t = null;\nasync function i() {\n return t || (t = new Promise((n, r) => {\n const e = document.createElement(\"script\");\n if (e.src = \"https://js.evervault.com/v2\", e.onload = () => n(), e.onerror = () => {\n t = null, r();\n }, !document.head)\n throw new Error(\n \"Expected document.head not to be null. Evervault.js requires a <head> element.\"\n );\n document.head.appendChild(e);\n }), t);\n}\nasync function o() {\n if (window.Evervault)\n return window.Evervault;\n try {\n return await i(), window.Evervault;\n } catch {\n throw new Error(\"Failed to load Evervault.js\");\n }\n}\nasync function l(n, r, e) {\n const a = await o();\n return new a(n, r, e);\n}\nPromise.resolve().then(() => {\n o();\n});\nexport {\n l as loadEvervault\n};\n","export { GreenPay3DS, GreenPay3DSError } from './GreenPay3DS'\nexport type {\n GreenPay3DSConfig,\n GreenPay3DSEnvironment,\n ThreeDSCallbacks,\n ThreeDSPaymentCallbacks,\n OrderData,\n ThreeDSSession,\n ThreeDSResult,\n} from './types'\n","import type { ThreeDSSession, ThreeDSResult } from './types'\nimport { GreenPay3DSError } from './GreenPay3DS'\n\nexport async function createSession(\n apiUrl: string,\n cardData: { ed: string; session: string },\n sessionToken: string,\n terminalId?: string\n): Promise<ThreeDSSession> {\n const requestBody: Record<string, unknown> = { cardData }\n if (terminalId !== undefined && terminalId !== '') {\n requestBody.terminalId = terminalId\n }\n\n const response = await fetch(`${apiUrl}/3ds/create-session`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'session-token': sessionToken,\n },\n body: JSON.stringify(requestBody),\n })\n\n const json = await response.json()\n\n if (!response.ok || json.statusCode !== 200) {\n throw new GreenPay3DSError(\n json?.result?.error?.message ||\n json?.message ||\n 'Failed to create 3DS session',\n 'CREATE_SESSION_FAILED'\n )\n }\n\n return json.data\n}\n\nexport async function retrieveSession(\n apiUrl: string,\n sessionId: string,\n cardData: { ed: string; session: string },\n sessionToken: string\n): Promise<ThreeDSResult> {\n const response = await fetch(`${apiUrl}/3ds/retrieve-session`, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'session-token': sessionToken,\n },\n body: JSON.stringify({ sessionId, cardData }),\n })\n\n const body = await response.json()\n\n if (!response.ok || body.statusCode !== 200) {\n throw new GreenPay3DSError(\n body?.result?.error?.message || body?.message || 'Failed to retrieve 3DS session',\n 'RETRIEVE_SESSION_FAILED'\n )\n }\n\n return body\n}\n","import type { GreenPay3DSEnvironment } from './types'\n\nexport interface EnvironmentConfig {\n teamId: string\n appId: string\n apiUrl: string\n}\n\nexport const ENVIRONMENTS: Record<GreenPay3DSEnvironment, EnvironmentConfig> = {\n prod: {\n teamId: 'team_115ea2493762',\n appId: 'app_86bb433bb19f',\n apiUrl: 'https://checkoutv2.greenpay.me',\n },\n sbx: {\n teamId: 'team_115ea2493762',\n appId: 'app_910ecf6fb931',\n apiUrl: 'https://checkoutv2.greenpaysbx.me',\n },\n}\n","import type {\n GreenPay3DSConfig,\n ThreeDSCallbacks,\n ThreeDSPaymentCallbacks,\n OrderData,\n ThreeDSResult,\n} from './types'\nimport { createSession, retrieveSession } from './api'\nimport { ENVIRONMENTS } from './environments'\n\nexport class GreenPay3DSError extends Error {\n code: string\n\n constructor(message: string, code: string) {\n super(message)\n this.name = 'GreenPay3DSError'\n this.code = code\n }\n}\n\nexport class GreenPay3DS {\n private readonly teamId: string\n private readonly appId: string\n private readonly apiUrl?: string\n\n constructor(config: GreenPay3DSConfig = {}) {\n const defaults =\n config.environment !== undefined\n ? ENVIRONMENTS[config.environment]\n : undefined\n\n if (config.environment !== undefined && !defaults) {\n throw new GreenPay3DSError(\n `Unknown environment \"${config.environment}\" (expected \"prod\" or \"sbx\")`,\n 'INVALID_CONFIG'\n )\n }\n\n this.teamId = config.teamId ?? defaults?.teamId ?? ''\n this.appId = config.appId ?? defaults?.appId ?? ''\n this.apiUrl = config.apiUrl ?? defaults?.apiUrl\n\n if (!this.teamId || !this.appId) {\n throw new GreenPay3DSError(\n 'Set environment (\"prod\" or \"sbx\"), or pass teamId and appId explicitly',\n 'INVALID_CONFIG'\n )\n }\n }\n\n async authenticate(\n sessionId: string,\n callbacks?: ThreeDSCallbacks\n ): Promise<void> {\n if (!sessionId) {\n throw new GreenPay3DSError('sessionId is required', 'INVALID_SESSION')\n }\n\n callbacks?.onStatusChange?.('Loading 3DS authentication...')\n\n const { loadEvervault } = await import('@evervault/js')\n const ev = await loadEvervault(this.teamId, this.appId)\n\n callbacks?.onStatusChange?.('Initializing 3DS challenge...')\n\n return new Promise<void>((resolve, reject) => {\n const threeDSecure = ev.ui.threeDSecure(sessionId)\n\n threeDSecure.on('ready', () => {\n callbacks?.onReady?.()\n callbacks?.onStatusChange?.(\n 'Challenge ready. If frictionless it will complete automatically, otherwise complete the verification prompt.'\n )\n })\n\n threeDSecure.on('success', () => {\n callbacks?.onSuccess?.()\n callbacks?.onStatusChange?.('Authentication successful')\n resolve()\n })\n\n threeDSecure.on('failure', () => {\n const msg = '3DS authentication was rejected by the issuer'\n callbacks?.onFailure?.(msg)\n callbacks?.onStatusChange?.('Authentication failed')\n reject(new GreenPay3DSError(msg, 'AUTHENTICATION_FAILED'))\n })\n\n threeDSecure.on('error', (err: unknown) => {\n const msg = err instanceof Error ? err.message : String(err)\n callbacks?.onError?.(err instanceof Error ? err : msg)\n callbacks?.onStatusChange?.('Authentication error')\n reject(new GreenPay3DSError(msg, 'AUTHENTICATION_ERROR'))\n })\n\n threeDSecure.mount()\n })\n }\n\n async processPayment(\n orderData: OrderData,\n callbacks?: ThreeDSPaymentCallbacks\n ): Promise<ThreeDSResult> {\n if (!this.apiUrl) {\n throw new GreenPay3DSError(\n 'apiUrl is required in config for processPayment',\n 'INVALID_CONFIG'\n )\n }\n\n const { cardData, sessionToken, terminalId } = orderData\n if (!cardData?.ed || !cardData?.session || !sessionToken) {\n throw new GreenPay3DSError(\n 'cardData.ed, cardData.session, and sessionToken are required',\n 'INVALID_ORDER_DATA'\n )\n }\n\n callbacks?.onStatusChange?.('Creating 3DS session...')\n const session = await createSession(\n this.apiUrl,\n cardData,\n sessionToken,\n terminalId\n )\n\n callbacks?.onStatusChange?.('Starting 3DS authentication...')\n await this.authenticate(session.id, {\n onReady: callbacks?.onReady,\n onFailure: callbacks?.onFailure,\n onError: callbacks?.onError,\n onStatusChange: callbacks?.onStatusChange,\n })\n\n callbacks?.onStatusChange?.('Retrieving authentication result...')\n const result = await retrieveSession(\n this.apiUrl,\n session.id,\n cardData,\n sessionToken\n )\n\n callbacks?.onSuccess?.(result)\n callbacks?.onStatusChange?.('3DS authentication complete')\n return result\n }\n}\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@greenpay_prod/3ds-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0-qa.28",
|
|
4
4
|
"description": "GreenPay 3D Secure SDK — client-side 3DS authentication",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
7
7
|
"types": "./dist/index.d.ts",
|
|
8
|
+
"unpkg": "./dist/index.global.js",
|
|
9
|
+
"jsdelivr": "./dist/index.global.js",
|
|
8
10
|
"exports": {
|
|
9
11
|
".": {
|
|
10
12
|
"import": {
|
|
@@ -15,7 +17,8 @@
|
|
|
15
17
|
"types": "./dist/index.d.ts",
|
|
16
18
|
"default": "./dist/index.js"
|
|
17
19
|
}
|
|
18
|
-
}
|
|
20
|
+
},
|
|
21
|
+
"./global": "./dist/index.global.js"
|
|
19
22
|
},
|
|
20
23
|
"files": [
|
|
21
24
|
"dist"
|