@ozura/elements 0.1.0-beta.1

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.
Files changed (55) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +717 -0
  3. package/dist/frame/element-frame.html +22 -0
  4. package/dist/frame/element-frame.js +731 -0
  5. package/dist/frame/element-frame.js.map +1 -0
  6. package/dist/frame/tokenizer-frame.html +11 -0
  7. package/dist/frame/tokenizer-frame.js +328 -0
  8. package/dist/frame/tokenizer-frame.js.map +1 -0
  9. package/dist/oz-elements.esm.js +1190 -0
  10. package/dist/oz-elements.esm.js.map +1 -0
  11. package/dist/oz-elements.umd.js +1202 -0
  12. package/dist/oz-elements.umd.js.map +1 -0
  13. package/dist/react/frame/elementFrame.d.ts +8 -0
  14. package/dist/react/frame/tokenizerFrame.d.ts +13 -0
  15. package/dist/react/index.cjs.js +1407 -0
  16. package/dist/react/index.cjs.js.map +1 -0
  17. package/dist/react/index.esm.js +1400 -0
  18. package/dist/react/index.esm.js.map +1 -0
  19. package/dist/react/react/index.d.ts +214 -0
  20. package/dist/react/sdk/OzElement.d.ts +65 -0
  21. package/dist/react/sdk/OzVault.d.ts +106 -0
  22. package/dist/react/sdk/errors.d.ts +55 -0
  23. package/dist/react/sdk/index.d.ts +5 -0
  24. package/dist/react/server/index.d.ts +140 -0
  25. package/dist/react/types/index.d.ts +432 -0
  26. package/dist/react/utils/appearance.d.ts +13 -0
  27. package/dist/react/utils/billingUtils.d.ts +60 -0
  28. package/dist/react/utils/cardUtils.d.ts +37 -0
  29. package/dist/server/frame/elementFrame.d.ts +8 -0
  30. package/dist/server/frame/tokenizerFrame.d.ts +13 -0
  31. package/dist/server/index.cjs.js +294 -0
  32. package/dist/server/index.cjs.js.map +1 -0
  33. package/dist/server/index.esm.js +290 -0
  34. package/dist/server/index.esm.js.map +1 -0
  35. package/dist/server/sdk/OzElement.d.ts +65 -0
  36. package/dist/server/sdk/OzVault.d.ts +106 -0
  37. package/dist/server/sdk/errors.d.ts +55 -0
  38. package/dist/server/sdk/index.d.ts +5 -0
  39. package/dist/server/server/index.d.ts +140 -0
  40. package/dist/server/types/index.d.ts +432 -0
  41. package/dist/server/utils/appearance.d.ts +13 -0
  42. package/dist/server/utils/billingUtils.d.ts +60 -0
  43. package/dist/server/utils/cardUtils.d.ts +37 -0
  44. package/dist/types/frame/elementFrame.d.ts +8 -0
  45. package/dist/types/frame/tokenizerFrame.d.ts +13 -0
  46. package/dist/types/sdk/OzElement.d.ts +65 -0
  47. package/dist/types/sdk/OzVault.d.ts +106 -0
  48. package/dist/types/sdk/errors.d.ts +55 -0
  49. package/dist/types/sdk/index.d.ts +5 -0
  50. package/dist/types/server/index.d.ts +140 -0
  51. package/dist/types/types/index.d.ts +432 -0
  52. package/dist/types/utils/appearance.d.ts +13 -0
  53. package/dist/types/utils/billingUtils.d.ts +60 -0
  54. package/dist/types/utils/cardUtils.d.ts +37 -0
  55. package/package.json +97 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"element-frame.js","sources":["../../src/utils/cardUtils.ts","../../src/frame/elementFrame.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta http-equiv="Content-Security-Policy" content="default-src 'none'; script-src 'self'; connect-src https:;" />
6
+ <title>Ozura Tokenizer</title>
7
+ </head>
8
+ <body>
9
+ <script src="./tokenizer-frame.js"></script>
10
+ </body>
11
+ </html>
@@ -0,0 +1,328 @@
1
+ var _OzTokenizerFrame = (function (exports) {
2
+ 'use strict';
3
+
4
+ /**
5
+ * tokenizerFrame.ts — runs inside a hidden <iframe> served from Ozura's domain.
6
+ *
7
+ * Collects raw card field values sent by element frames (same-origin),
8
+ * assembles the vault tokenization payload, and POSTs it directly to the
9
+ * vault API. The merchant page never sees raw card data.
10
+ */
11
+ /**
12
+ * Returns true when the given URL's origin is in the compile-time allowlist.
13
+ * For localhost entries, any port is accepted (dev-server port varies).
14
+ * Exported for unit testing only — not part of the public SDK API.
15
+ */
16
+ function isAllowedVaultOrigin(apiUrl) {
17
+ let parsed;
18
+ try {
19
+ parsed = new URL(apiUrl);
20
+ }
21
+ catch (_a) {
22
+ return false;
23
+ }
24
+ const allowedOrigins = ["https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net","http://localhost"];
25
+ // Exact-origin match for production URLs.
26
+ if (allowedOrigins.includes(parsed.origin))
27
+ return true;
28
+ // For each allowlist entry that is a localhost origin, accept any port.
29
+ for (const entry of allowedOrigins) {
30
+ try {
31
+ const entryUrl = new URL(entry);
32
+ if (entryUrl.hostname === 'localhost' && parsed.hostname === 'localhost'
33
+ && parsed.protocol === entryUrl.protocol) {
34
+ return true;
35
+ }
36
+ }
37
+ catch (_b) {
38
+ // skip malformed allowlist entries
39
+ }
40
+ }
41
+ return false;
42
+ }
43
+ class TokenizerFrame {
44
+ constructor() {
45
+ this.hostOrigin = '';
46
+ this.pending = new Map();
47
+ this.pendingBank = new Map();
48
+ const p = new URLSearchParams(location.hash.slice(1));
49
+ this.vaultId = p.get('vaultId') || '';
50
+ const fromUrl = p.get('parentOrigin');
51
+ if (fromUrl)
52
+ this.hostOrigin = fromUrl;
53
+ window.addEventListener('message', this.onMessage.bind(this));
54
+ window.parent.postMessage({ __oz: true, vaultId: this.vaultId, type: 'OZ_FRAME_READY', frameId: '__tokenizer__' }, this.hostOrigin || window.location.origin);
55
+ }
56
+ onMessage(event) {
57
+ const msg = event.data;
58
+ if (!msg || msg.__oz !== true || msg.vaultId !== this.vaultId)
59
+ return;
60
+ switch (msg.type) {
61
+ case 'OZ_INIT':
62
+ if (!this.hostOrigin) {
63
+ this.hostOrigin = event.origin;
64
+ }
65
+ break;
66
+ case 'OZ_TOKENIZE':
67
+ if (this.hostOrigin && event.origin !== this.hostOrigin)
68
+ return;
69
+ this.pending.set(msg.requestId, {
70
+ kind: 'card',
71
+ requestId: msg.requestId,
72
+ apiUrl: msg.apiUrl,
73
+ apiKey: msg.apiKey,
74
+ pubKey: msg.pubKey || '',
75
+ firstName: msg.firstName || '',
76
+ lastName: msg.lastName || '',
77
+ fieldCount: msg.fieldCount || 3,
78
+ values: new Map(),
79
+ cardMeta: {},
80
+ hostOrigin: event.origin,
81
+ });
82
+ break;
83
+ case 'OZ_BANK_TOKENIZE':
84
+ if (this.hostOrigin && event.origin !== this.hostOrigin)
85
+ return;
86
+ this.pendingBank.set(msg.requestId, {
87
+ kind: 'bank',
88
+ requestId: msg.requestId,
89
+ apiUrl: msg.apiUrl,
90
+ apiKey: msg.apiKey,
91
+ pubKey: msg.pubKey || '',
92
+ firstName: msg.firstName || '',
93
+ lastName: msg.lastName || '',
94
+ fieldCount: msg.fieldCount || 2,
95
+ values: new Map(),
96
+ bankMeta: {},
97
+ hostOrigin: event.origin,
98
+ });
99
+ break;
100
+ case 'OZ_FIELD_VALUE': {
101
+ // ONLY accept field values from same-origin element frames
102
+ if (event.origin !== location.origin) {
103
+ console.warn('[OzTokenizer] Rejected OZ_FIELD_VALUE from cross-origin:', event.origin);
104
+ return;
105
+ }
106
+ // Card session
107
+ const session = this.pending.get(msg.requestId);
108
+ if (session) {
109
+ session.values.set(msg.fieldType, msg.value);
110
+ if (msg.last4)
111
+ session.cardMeta.last4 = msg.last4;
112
+ if (msg.brand)
113
+ session.cardMeta.brand = msg.brand;
114
+ if (msg.expMonth)
115
+ session.cardMeta.expMonth = msg.expMonth;
116
+ if (msg.expYear)
117
+ session.cardMeta.expYear = msg.expYear;
118
+ if (session.values.size >= session.fieldCount) {
119
+ this.pending.delete(session.requestId);
120
+ this.tokenize(session);
121
+ }
122
+ }
123
+ // Bank session
124
+ const bankSession = this.pendingBank.get(msg.requestId);
125
+ if (bankSession) {
126
+ bankSession.values.set(msg.fieldType, msg.value);
127
+ if (msg.last4)
128
+ bankSession.bankMeta.last4 = msg.last4;
129
+ if (msg.fieldType === 'routingNumber')
130
+ bankSession.bankMeta.routingNumber = msg.value;
131
+ if (bankSession.values.size >= bankSession.fieldCount) {
132
+ this.pendingBank.delete(bankSession.requestId);
133
+ this.tokenizeBank(bankSession);
134
+ }
135
+ }
136
+ break;
137
+ }
138
+ }
139
+ }
140
+ /**
141
+ * Shared vault POST helper. Handles origin guard, header construction,
142
+ * the fetchWithRetry call, token extraction, empty-token error, and catch.
143
+ *
144
+ * Returns the raw response data with a guaranteed non-empty `token` string,
145
+ * or `null` if an error was already reported via postMessage to `target`.
146
+ */
147
+ async postToVault(requestId, apiUrl, apiKey, pubKey, body, target, logLabel) {
148
+ var _a, _b;
149
+ if (!isAllowedVaultOrigin(apiUrl)) {
150
+ let error;
151
+ try {
152
+ new URL(apiUrl);
153
+ error = 'Vault API URL is not permitted.';
154
+ }
155
+ catch (_c) {
156
+ error = 'Invalid vault API URL.';
157
+ }
158
+ console.error(`[OzTokenizer] Blocked ${logLabel} request to vault origin:`, apiUrl);
159
+ window.parent.postMessage({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId, error, errorCode: 'config' }, target);
160
+ return null;
161
+ }
162
+ try {
163
+ const headers = {
164
+ 'Content-Type': 'application/json',
165
+ 'X-API-Key': apiKey,
166
+ 'X-Request-ID': requestId,
167
+ };
168
+ if (pubKey) {
169
+ headers['X-Pub-Key'] = pubKey;
170
+ }
171
+ const data = await this.fetchWithRetry(`${apiUrl}/tokenize`, {
172
+ method: 'POST',
173
+ headers,
174
+ body: JSON.stringify(body),
175
+ });
176
+ const token = String((_b = (_a = data === null || data === void 0 ? void 0 : data.token) !== null && _a !== void 0 ? _a : data === null || data === void 0 ? void 0 : data.id) !== null && _b !== void 0 ? _b : '');
177
+ if (!token) {
178
+ window.parent.postMessage({
179
+ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId,
180
+ error: 'Vault returned an empty token. Check your vault API key and configuration.',
181
+ errorCode: 'server',
182
+ }, target);
183
+ return null;
184
+ }
185
+ return data;
186
+ }
187
+ catch (err) {
188
+ const message = err instanceof Error ? err.message : `${logLabel} tokenization failed`;
189
+ const errorCode = (err instanceof Error && err.errorCode) || 'unknown';
190
+ window.parent.postMessage({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId, error: message, errorCode }, target);
191
+ return null;
192
+ }
193
+ }
194
+ async tokenize(session) {
195
+ var _a, _b, _c, _d, _e, _f;
196
+ const { requestId, apiUrl, apiKey, pubKey, firstName, lastName, values, cardMeta, hostOrigin } = session;
197
+ const target = hostOrigin || window.location.origin;
198
+ const cardNumber = values.get('cardNumber') || '';
199
+ const cvv = values.get('cvv') || '';
200
+ const expRaw = values.get('expirationDate') || ''; // MMYY (4 digits)
201
+ const expirationMonth = expRaw.slice(0, 2);
202
+ const expirationYear = `20${expRaw.slice(2, 4)}`;
203
+ const body = {
204
+ type: 'card',
205
+ data: {
206
+ cardNumber,
207
+ cvv,
208
+ expirationMonth,
209
+ expirationYear,
210
+ first_name: firstName,
211
+ last_name: lastName,
212
+ },
213
+ maskingConfig: {
214
+ rules: {
215
+ card_number: { mask_char: '*', reveal_end: 4, reveal_start: 0 },
216
+ },
217
+ },
218
+ };
219
+ const data = await this.postToVault(requestId, apiUrl, apiKey, pubKey, body, target, 'card');
220
+ if (!data)
221
+ return;
222
+ const token = String((_b = (_a = data.token) !== null && _a !== void 0 ? _a : data.id) !== null && _b !== void 0 ? _b : '');
223
+ const cvcSession = String((_f = (_e = (_d = (_c = data.cvcSession) !== null && _c !== void 0 ? _c : data.sessionId) !== null && _d !== void 0 ? _d : data.ozuraCvcSession) !== null && _e !== void 0 ? _e : data.cvc_session_id) !== null && _f !== void 0 ? _f : '');
224
+ if (!cvcSession) {
225
+ window.parent.postMessage({
226
+ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId,
227
+ error: 'Vault returned an empty CVC session. Ensure the vault is configured to return a cvcSession.',
228
+ errorCode: 'server',
229
+ }, target);
230
+ return;
231
+ }
232
+ const hasFullCardMeta = cardMeta.last4 && cardMeta.brand && cardMeta.expMonth && cardMeta.expYear;
233
+ window.parent.postMessage(Object.assign({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_RESULT', requestId, token, cvcSession }, (hasFullCardMeta ? { card: cardMeta } : {})), target);
234
+ }
235
+ async tokenizeBank(session) {
236
+ var _a, _b;
237
+ const { requestId, apiUrl, apiKey, pubKey, firstName, lastName, values, bankMeta, hostOrigin } = session;
238
+ const target = hostOrigin || window.location.origin;
239
+ const body = {
240
+ type: 'bank',
241
+ data: {
242
+ accountNumber: values.get('accountNumber') || '',
243
+ routingNumber: values.get('routingNumber') || '',
244
+ first_name: firstName,
245
+ last_name: lastName,
246
+ },
247
+ maskingConfig: {
248
+ rules: {
249
+ account_number: { mask_char: '*', reveal_end: 4, reveal_start: 0 },
250
+ },
251
+ },
252
+ };
253
+ const data = await this.postToVault(requestId, apiUrl, apiKey, pubKey, body, target, 'bank');
254
+ if (!data)
255
+ return;
256
+ const token = String((_b = (_a = data.token) !== null && _a !== void 0 ? _a : data.id) !== null && _b !== void 0 ? _b : '');
257
+ const hasBankMeta = bankMeta.last4 && bankMeta.routingNumber;
258
+ window.parent.postMessage(Object.assign({ __oz: true, vaultId: this.vaultId, type: 'OZ_BANK_TOKEN_RESULT', requestId, token }, (hasBankMeta ? { bank: bankMeta } : {})), target);
259
+ }
260
+ static classifyHttpStatus(status) {
261
+ if (status === 401 || status === 403)
262
+ return 'auth';
263
+ if (status >= 400 && status < 500)
264
+ return 'validation';
265
+ if (status >= 500)
266
+ return 'server';
267
+ return 'unknown';
268
+ }
269
+ /**
270
+ * Fetches with a 30s timeout and a single automatic retry for network
271
+ * errors and 5xx responses. 4xx errors are not retried (bad input won't
272
+ * succeed on a second attempt).
273
+ *
274
+ * Throws an Error with an `errorCode` property for downstream classification.
275
+ */
276
+ async fetchWithRetry(url, init, attempt = 1) {
277
+ const controller = new AbortController();
278
+ const timeoutId = setTimeout(() => controller.abort(), 30000);
279
+ try {
280
+ const res = await fetch(url, Object.assign(Object.assign({}, init), { signal: controller.signal }));
281
+ clearTimeout(timeoutId);
282
+ if (!res.ok) {
283
+ const err = await res.json().catch(() => ({ error: res.statusText }));
284
+ const errMsg = (err === null || err === void 0 ? void 0 : err.error) || `HTTP ${res.status}`;
285
+ const code = TokenizerFrame.classifyHttpStatus(res.status);
286
+ if (res.status >= 500 && attempt < 2) {
287
+ await new Promise(r => setTimeout(r, 1000));
288
+ return this.fetchWithRetry(url, init, attempt + 1);
289
+ }
290
+ const e = new Error(errMsg);
291
+ e.errorCode = code;
292
+ throw e;
293
+ }
294
+ return await res.json();
295
+ }
296
+ catch (err) {
297
+ clearTimeout(timeoutId);
298
+ if (err instanceof Error && err.errorCode) {
299
+ throw err;
300
+ }
301
+ const isAbort = err instanceof Error && err.name === 'AbortError';
302
+ const isNetworkError = err instanceof TypeError;
303
+ if (!isAbort && isNetworkError && attempt < 2) {
304
+ await new Promise(r => setTimeout(r, 1000));
305
+ return this.fetchWithRetry(url, init, attempt + 1);
306
+ }
307
+ if (isAbort) {
308
+ const e = new Error('Tokenization request timed out. Please try again.');
309
+ e.errorCode = 'timeout';
310
+ throw e;
311
+ }
312
+ if (isNetworkError) {
313
+ const e = new Error(err.message || 'Network error');
314
+ e.errorCode = 'network';
315
+ throw e;
316
+ }
317
+ throw err;
318
+ }
319
+ }
320
+ }
321
+ new TokenizerFrame();
322
+
323
+ exports.isAllowedVaultOrigin = isAllowedVaultOrigin;
324
+
325
+ return exports;
326
+
327
+ })({});
328
+ //# sourceMappingURL=tokenizer-frame.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenizer-frame.js","sources":["../../src/frame/tokenizerFrame.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}