@ozura/elements 0.1.0-beta.7 → 1.0.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 (50) hide show
  1. package/README.md +906 -663
  2. package/dist/frame/element-frame.js +77 -57
  3. package/dist/frame/element-frame.js.map +1 -1
  4. package/dist/frame/tokenizer-frame.html +1 -1
  5. package/dist/frame/tokenizer-frame.js +211 -94
  6. package/dist/frame/tokenizer-frame.js.map +1 -1
  7. package/dist/oz-elements.esm.js +817 -230
  8. package/dist/oz-elements.esm.js.map +1 -1
  9. package/dist/oz-elements.umd.js +817 -229
  10. package/dist/oz-elements.umd.js.map +1 -1
  11. package/dist/react/frame/tokenizerFrame.d.ts +32 -0
  12. package/dist/react/index.cjs.js +968 -218
  13. package/dist/react/index.cjs.js.map +1 -1
  14. package/dist/react/index.esm.js +965 -219
  15. package/dist/react/index.esm.js.map +1 -1
  16. package/dist/react/react/index.d.ts +148 -6
  17. package/dist/react/sdk/OzElement.d.ts +34 -3
  18. package/dist/react/sdk/OzVault.d.ts +68 -4
  19. package/dist/react/sdk/errors.d.ts +9 -0
  20. package/dist/react/sdk/index.d.ts +29 -0
  21. package/dist/react/server/index.d.ts +181 -17
  22. package/dist/react/types/index.d.ts +69 -19
  23. package/dist/react/utils/appearance.d.ts +9 -0
  24. package/dist/react/utils/cardUtils.d.ts +14 -0
  25. package/dist/react/utils/uuid.d.ts +12 -0
  26. package/dist/server/frame/tokenizerFrame.d.ts +32 -0
  27. package/dist/server/index.cjs.js +608 -71
  28. package/dist/server/index.cjs.js.map +1 -1
  29. package/dist/server/index.esm.js +606 -72
  30. package/dist/server/index.esm.js.map +1 -1
  31. package/dist/server/sdk/OzElement.d.ts +34 -3
  32. package/dist/server/sdk/OzVault.d.ts +68 -4
  33. package/dist/server/sdk/errors.d.ts +9 -0
  34. package/dist/server/sdk/index.d.ts +29 -0
  35. package/dist/server/server/index.d.ts +181 -17
  36. package/dist/server/types/index.d.ts +69 -19
  37. package/dist/server/utils/appearance.d.ts +9 -0
  38. package/dist/server/utils/cardUtils.d.ts +14 -0
  39. package/dist/server/utils/uuid.d.ts +12 -0
  40. package/dist/types/frame/tokenizerFrame.d.ts +32 -0
  41. package/dist/types/sdk/OzElement.d.ts +34 -3
  42. package/dist/types/sdk/OzVault.d.ts +68 -4
  43. package/dist/types/sdk/errors.d.ts +9 -0
  44. package/dist/types/sdk/index.d.ts +29 -0
  45. package/dist/types/server/index.d.ts +181 -17
  46. package/dist/types/types/index.d.ts +69 -19
  47. package/dist/types/utils/appearance.d.ts +9 -0
  48. package/dist/types/utils/cardUtils.d.ts +14 -0
  49. package/dist/types/utils/uuid.d.ts +12 -0
  50. package/package.json +7 -4
@@ -1,6 +1,23 @@
1
1
  var _OzTokenizerFrame = (function (exports) {
2
2
  'use strict';
3
3
 
4
+ /**
5
+ * errors.ts — error types and normalisation for OzElements.
6
+ *
7
+ * Three normalisation functions:
8
+ * - normalizeVaultError — maps raw vault /tokenize errors to user-facing messages (card flows)
9
+ * - normalizeBankVaultError — maps raw vault /tokenize errors to user-facing messages (bank/ACH flows)
10
+ * - normalizeCardSaleError — maps raw cardSale API errors to user-facing messages
11
+ *
12
+ * Error keys in normalizeCardSaleError are taken directly from checkout's
13
+ * errorMapping.ts so the same error strings produce the same user-facing copy.
14
+ */
15
+ const OZ_ERROR_CODES = new Set(['network', 'timeout', 'auth', 'validation', 'server', 'config', 'unknown']);
16
+ /** Returns true and narrows to OzErrorCode when `value` is a valid member of the union. */
17
+ function isOzErrorCode(value) {
18
+ return typeof value === 'string' && OZ_ERROR_CODES.has(value);
19
+ }
20
+
4
21
  /**
5
22
  * tokenizerFrame.ts — runs inside a hidden <iframe> served from Ozura's domain.
6
23
  *
@@ -8,12 +25,12 @@ var _OzTokenizerFrame = (function (exports) {
8
25
  * assembles the vault tokenization payload, and POSTs it directly to the
9
26
  * vault API. The merchant page never sees raw card data.
10
27
  *
11
- * The vault URL is determined by "https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net", injected at build time.
28
+ * The vault URL is determined by "https://api.ozuravault.com", injected at build time.
12
29
  * The tokenizer ignores any apiUrl sent by the SDK in OZ_TOKENIZE messages —
13
30
  * an attacker who XSSes the merchant page cannot redirect where card data is
14
31
  * sent because the destination is hardcoded in this Ozura-controlled bundle.
15
32
  */
16
- const VAULT_API_URL = "https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net";
33
+ const VAULT_API_URL = "https://api.ozuravault.com";
17
34
  /**
18
35
  * Defense-in-depth guard: only allows the build-time vault URL origin.
19
36
  * The tokenizer already uses VAULT_API_URL directly and never reads
@@ -38,9 +55,12 @@ var _OzTokenizerFrame = (function (exports) {
38
55
  return false;
39
56
  }
40
57
  }
58
+ /** Exported for unit testing only — not part of the public SDK API. */
41
59
  class TokenizerFrame {
42
60
  constructor() {
43
61
  this.hostOrigin = '';
62
+ /** Wax key delivered once via OZ_INIT. Used for all tokenize calls. */
63
+ this.waxKey = '';
44
64
  this.pending = new Map();
45
65
  this.pendingBank = new Map();
46
66
  const p = new URLSearchParams(location.hash.slice(1));
@@ -60,79 +80,192 @@ var _OzTokenizerFrame = (function (exports) {
60
80
  if (!this.hostOrigin) {
61
81
  this.hostOrigin = event.origin;
62
82
  }
83
+ // Origin-validated wax key store. Accepts both the initial delivery and
84
+ // subsequent refresh deliveries (sent by OzVault.refreshWaxKey() after
85
+ // minting a new key). Origin validation is the security boundary —
86
+ // messages from any origin other than the one that sent the first
87
+ // OZ_INIT are rejected. The previous write-once guard blocked refreshes
88
+ // and made the auto-refresh feature non-functional.
89
+ if (event.origin === this.hostOrigin && typeof msg.waxKey === 'string' && msg.waxKey) {
90
+ this.waxKey = msg.waxKey;
91
+ }
63
92
  break;
64
93
  case 'OZ_TOKENIZE':
65
94
  if (!this.hostOrigin || event.origin !== this.hostOrigin)
66
95
  return;
67
- this.pending.set(msg.requestId, {
68
- kind: 'card',
69
- requestId: msg.requestId,
70
- waxKey: msg.waxKey || '',
71
- tokenizationSessionId: msg.tokenizationSessionId || '',
72
- pubKey: msg.pubKey || '',
73
- firstName: msg.firstName || '',
74
- lastName: msg.lastName || '',
75
- fieldCount: msg.fieldCount || 3,
76
- values: new Map(),
77
- cardMeta: {},
78
- hostOrigin: event.origin,
79
- });
96
+ {
97
+ const rawCount = msg.fieldCount;
98
+ // Enforce a sane minimum. A legitimate SDK always sends ≥ 1 (the
99
+ // number of mounted+ready elements). A value < 1 means the message
100
+ // was crafted or corrupted — reject it rather than tokenizing early.
101
+ // Number.isInteger rejects NaN and Infinity which typeof === 'number'
102
+ // but would make values.size >= fieldCount always false, hanging forever.
103
+ if (!Number.isInteger(rawCount) || rawCount < 1) {
104
+ console.warn('[OzTokenizer] Rejected OZ_TOKENIZE: invalid fieldCount', rawCount);
105
+ window.parent.postMessage({
106
+ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR',
107
+ requestId: msg.requestId,
108
+ error: 'Invalid fieldCount in OZ_TOKENIZE.',
109
+ errorCode: 'config',
110
+ }, this.hostOrigin);
111
+ return;
112
+ }
113
+ const requestId = typeof msg.requestId === 'string' && msg.requestId ? msg.requestId : null;
114
+ if (!requestId) {
115
+ console.warn('[OzTokenizer] Rejected OZ_TOKENIZE: missing or invalid requestId');
116
+ return;
117
+ }
118
+ const sessionPorts = Array.from(event.ports);
119
+ // If a session with this requestId already exists (e.g. duplicate message),
120
+ // close its ports to prevent leaks before overwriting.
121
+ const existing = this.pending.get(requestId);
122
+ if (existing) {
123
+ existing.ports.forEach(p => p.close());
124
+ this.pending.delete(requestId);
125
+ }
126
+ this.pending.set(requestId, {
127
+ kind: 'card',
128
+ requestId,
129
+ // Prefer the internally stored wax key (delivered once via OZ_INIT).
130
+ // Fall back to the message payload for the brief window where the
131
+ // OZ_INIT delivery may not have been processed yet.
132
+ waxKey: this.waxKey || (msg.waxKey || ''),
133
+ tokenizationSessionId: msg.tokenizationSessionId || '',
134
+ pubKey: msg.pubKey || '',
135
+ firstName: msg.firstName || '',
136
+ lastName: msg.lastName || '',
137
+ fieldCount: rawCount,
138
+ values: new Map(),
139
+ cardMeta: {},
140
+ hostOrigin: event.origin,
141
+ ports: sessionPorts,
142
+ });
143
+ // Each element iframe sends its field value via a dedicated MessagePort
144
+ // transferred here. This removes the window.parent named-frame dependency.
145
+ for (const port of sessionPorts) {
146
+ port.onmessage = (e) => {
147
+ const data = e.data;
148
+ if (!data || data.__oz !== true || data.vaultId !== this.vaultId || data.type !== 'OZ_FIELD_VALUE')
149
+ return;
150
+ const session = this.pending.get(requestId);
151
+ if (!session)
152
+ return;
153
+ const fieldType = typeof data.fieldType === 'string' ? data.fieldType : null;
154
+ const value = typeof data.value === 'string' ? data.value : null;
155
+ if (!fieldType || value === null)
156
+ return;
157
+ session.values.set(fieldType, value);
158
+ if (typeof data.last4 === 'string' && data.last4)
159
+ session.cardMeta.last4 = data.last4;
160
+ if (typeof data.brand === 'string' && data.brand)
161
+ session.cardMeta.brand = data.brand;
162
+ if (typeof data.expMonth === 'string' && data.expMonth)
163
+ session.cardMeta.expMonth = data.expMonth;
164
+ if (typeof data.expYear === 'string' && data.expYear)
165
+ session.cardMeta.expYear = data.expYear;
166
+ if (session.values.size >= session.fieldCount) {
167
+ this.pending.delete(requestId);
168
+ session.ports.forEach(p => p.close());
169
+ this.tokenize(session).catch(err => {
170
+ console.error('[OzTokenizer] Unhandled error in tokenize:', err);
171
+ });
172
+ }
173
+ };
174
+ }
175
+ }
80
176
  break;
81
177
  case 'OZ_BANK_TOKENIZE':
82
178
  if (!this.hostOrigin || event.origin !== this.hostOrigin)
83
179
  return;
84
- this.pendingBank.set(msg.requestId, {
85
- kind: 'bank',
86
- requestId: msg.requestId,
87
- waxKey: msg.waxKey || '',
88
- tokenizationSessionId: msg.tokenizationSessionId || '',
89
- pubKey: msg.pubKey || '',
90
- firstName: msg.firstName || '',
91
- lastName: msg.lastName || '',
92
- fieldCount: msg.fieldCount || 2,
93
- values: new Map(),
94
- bankMeta: {},
95
- hostOrigin: event.origin,
96
- });
180
+ {
181
+ const rawCount = msg.fieldCount;
182
+ if (!Number.isInteger(rawCount) || rawCount < 1) {
183
+ console.warn('[OzTokenizer] Rejected OZ_BANK_TOKENIZE: invalid fieldCount', rawCount);
184
+ window.parent.postMessage({
185
+ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR',
186
+ requestId: msg.requestId,
187
+ error: 'Invalid fieldCount in OZ_BANK_TOKENIZE.',
188
+ errorCode: 'config',
189
+ }, this.hostOrigin);
190
+ return;
191
+ }
192
+ const requestId = typeof msg.requestId === 'string' && msg.requestId ? msg.requestId : null;
193
+ if (!requestId) {
194
+ console.warn('[OzTokenizer] Rejected OZ_BANK_TOKENIZE: missing or invalid requestId');
195
+ return;
196
+ }
197
+ const bankSessionPorts = Array.from(event.ports);
198
+ // Close and evict any pre-existing session with the same requestId.
199
+ const existingBank = this.pendingBank.get(requestId);
200
+ if (existingBank) {
201
+ existingBank.ports.forEach(p => p.close());
202
+ this.pendingBank.delete(requestId);
203
+ }
204
+ this.pendingBank.set(requestId, {
205
+ kind: 'bank',
206
+ requestId,
207
+ // Same wax key preference: stored value first, message payload as fallback.
208
+ waxKey: this.waxKey || (msg.waxKey || ''),
209
+ tokenizationSessionId: msg.tokenizationSessionId || '',
210
+ pubKey: msg.pubKey || '',
211
+ firstName: msg.firstName || '',
212
+ lastName: msg.lastName || '',
213
+ fieldCount: rawCount,
214
+ values: new Map(),
215
+ bankMeta: {},
216
+ hostOrigin: event.origin,
217
+ ports: bankSessionPorts,
218
+ });
219
+ for (const port of bankSessionPorts) {
220
+ port.onmessage = (e) => {
221
+ const data = e.data;
222
+ if (!data || data.__oz !== true || data.vaultId !== this.vaultId || data.type !== 'OZ_FIELD_VALUE')
223
+ return;
224
+ const bankSession = this.pendingBank.get(requestId);
225
+ if (!bankSession)
226
+ return;
227
+ const fieldType = typeof data.fieldType === 'string' ? data.fieldType : null;
228
+ const value = typeof data.value === 'string' ? data.value : null;
229
+ if (!fieldType || value === null)
230
+ return;
231
+ bankSession.values.set(fieldType, value);
232
+ if (fieldType === 'accountNumber' && typeof data.last4 === 'string' && data.last4) {
233
+ bankSession.bankMeta.last4 = data.last4;
234
+ }
235
+ if (fieldType === 'routingNumber') {
236
+ bankSession.bankMeta.routingNumberLast4 = value.slice(-4);
237
+ }
238
+ if (bankSession.values.size >= bankSession.fieldCount) {
239
+ this.pendingBank.delete(requestId);
240
+ bankSession.ports.forEach(p => p.close());
241
+ this.tokenizeBank(bankSession).catch(err => {
242
+ console.error('[OzTokenizer] Unhandled error in tokenizeBank:', err);
243
+ });
244
+ }
245
+ };
246
+ }
247
+ }
97
248
  break;
98
- case 'OZ_FIELD_VALUE': {
99
- // ONLY accept field values from same-origin element frames
100
- if (event.origin !== location.origin) {
101
- console.warn('[OzTokenizer] Rejected OZ_FIELD_VALUE from cross-origin:', event.origin);
249
+ case 'OZ_TOKENIZE_CANCEL':
250
+ if (!this.hostOrigin || event.origin !== this.hostOrigin)
102
251
  return;
103
- }
104
- // Card session
105
- const session = this.pending.get(msg.requestId);
106
- if (session) {
107
- session.values.set(msg.fieldType, msg.value);
108
- if (msg.last4)
109
- session.cardMeta.last4 = msg.last4;
110
- if (msg.brand)
111
- session.cardMeta.brand = msg.brand;
112
- if (msg.expMonth)
113
- session.cardMeta.expMonth = msg.expMonth;
114
- if (msg.expYear)
115
- session.cardMeta.expYear = msg.expYear;
116
- if (session.values.size >= session.fieldCount) {
117
- this.pending.delete(session.requestId);
118
- this.tokenize(session);
252
+ {
253
+ const requestId = msg.requestId;
254
+ if (!requestId)
255
+ return;
256
+ const cardSession = this.pending.get(requestId);
257
+ if (cardSession) {
258
+ this.pending.delete(requestId);
259
+ cardSession.ports.forEach(p => p.close());
260
+ break;
119
261
  }
120
- }
121
- // Bank session
122
- const bankSession = this.pendingBank.get(msg.requestId);
123
- if (bankSession) {
124
- bankSession.values.set(msg.fieldType, msg.value);
125
- if (msg.fieldType === 'accountNumber' && msg.last4)
126
- bankSession.bankMeta.last4 = msg.last4;
127
- if (msg.fieldType === 'routingNumber')
128
- bankSession.bankMeta.routingNumber = msg.value;
129
- if (bankSession.values.size >= bankSession.fieldCount) {
130
- this.pendingBank.delete(bankSession.requestId);
131
- this.tokenizeBank(bankSession);
262
+ const bankSession = this.pendingBank.get(requestId);
263
+ if (bankSession) {
264
+ this.pendingBank.delete(requestId);
265
+ bankSession.ports.forEach(p => p.close());
132
266
  }
133
267
  }
134
268
  break;
135
- }
136
269
  }
137
270
  }
138
271
  /**
@@ -143,7 +276,7 @@ var _OzTokenizerFrame = (function (exports) {
143
276
  * `token` string, or `null` if an error was already reported via
144
277
  * postMessage to `target`.
145
278
  */
146
- async postToVault(requestId, apiUrl, waxKey, pubKey, body, target, logLabel, tokenizationSessionId) {
279
+ async postToVault(requestId, apiUrl, waxKey, pubKey, body, target, logLabel) {
147
280
  var _a, _b;
148
281
  if (!isAllowedVaultOrigin(apiUrl)) {
149
282
  let error;
@@ -168,29 +301,10 @@ var _OzTokenizerFrame = (function (exports) {
168
301
  const headers = {
169
302
  'Content-Type': 'application/json',
170
303
  'X-Wax-Key': waxKey,
171
- 'X-Request-ID': requestId,
172
304
  };
173
305
  if (pubKey) {
174
306
  headers['X-Pub-Key'] = pubKey;
175
307
  }
176
- if (tokenizationSessionId) {
177
- headers['X-Tokenization-Session-Id'] = tokenizationSessionId;
178
- }
179
- // ── Security enforcement ──────────────────────────────────────────────
180
- // x-api-key is a merchant secret and must NEVER be sent to the vault
181
- // tokenize endpoint. The vault authenticates tokenize requests via
182
- // X-Wax-Key (session-scoped) only. Any accidental inclusion here is a
183
- // configuration bug that must surface immediately, not silently degrade.
184
- const forbiddenKey = Object.keys(headers).find(k => k.toLowerCase() === 'x-api-key');
185
- if (forbiddenKey) {
186
- const msg = `[OzTokenizer] SECURITY: 'x-api-key' must not be sent to the vault ` +
187
- `tokenize endpoint (found as '${forbiddenKey}'). ` +
188
- `Vault tokenize authenticates via X-Wax-Key only.`;
189
- console.error(msg);
190
- window.parent.postMessage({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId, error: msg, errorCode: 'config' }, target);
191
- return null;
192
- }
193
- // ─────────────────────────────────────────────────────────────────────
194
308
  const data = await this.fetchWithRetry(`${apiUrl}/tokenize`, {
195
309
  method: 'POST',
196
310
  headers,
@@ -209,20 +323,21 @@ var _OzTokenizerFrame = (function (exports) {
209
323
  }
210
324
  catch (err) {
211
325
  const message = err instanceof Error ? err.message : `${logLabel} tokenization failed`;
212
- const errorCode = (err instanceof Error && err.errorCode) || 'unknown';
326
+ const rawCode = err instanceof Error ? err.errorCode : undefined;
327
+ const errorCode = isOzErrorCode(rawCode) ? rawCode : 'unknown';
213
328
  window.parent.postMessage({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_ERROR', requestId, error: message, errorCode }, target);
214
329
  return null;
215
330
  }
216
331
  }
217
332
  async tokenize(session) {
218
333
  var _a, _b, _c, _d;
219
- const { requestId, waxKey, tokenizationSessionId, pubKey, firstName, lastName, values, cardMeta, hostOrigin } = session;
334
+ const { requestId, waxKey, pubKey, firstName, lastName, values, cardMeta, hostOrigin } = session;
220
335
  const target = hostOrigin || window.location.origin;
221
336
  const cardNumber = values.get('cardNumber') || '';
222
337
  const cvv = values.get('cvv') || '';
223
338
  const expRaw = values.get('expirationDate') || ''; // MMYY (4 digits)
224
339
  const expirationMonth = expRaw.slice(0, 2);
225
- const expirationYear = `20${expRaw.slice(2, 4)}`;
340
+ const expirationYear = '20' + expRaw.slice(2, 4);
226
341
  const body = {
227
342
  type: 'card',
228
343
  data: {
@@ -239,7 +354,7 @@ var _OzTokenizerFrame = (function (exports) {
239
354
  },
240
355
  },
241
356
  };
242
- const data = await this.postToVault(requestId, VAULT_API_URL, waxKey, pubKey, body, target, 'card', tokenizationSessionId);
357
+ const data = await this.postToVault(requestId, VAULT_API_URL, waxKey, pubKey, body, target, 'card');
243
358
  if (!data)
244
359
  return;
245
360
  const { token } = data;
@@ -256,7 +371,7 @@ var _OzTokenizerFrame = (function (exports) {
256
371
  window.parent.postMessage(Object.assign({ __oz: true, vaultId: this.vaultId, type: 'OZ_TOKEN_RESULT', requestId, token, cvcSession }, (hasFullCardMeta ? { card: cardMeta } : {})), target);
257
372
  }
258
373
  async tokenizeBank(session) {
259
- const { requestId, waxKey, tokenizationSessionId, pubKey, firstName, lastName, values, bankMeta, hostOrigin } = session;
374
+ const { requestId, waxKey, pubKey, firstName, lastName, values, bankMeta, hostOrigin } = session;
260
375
  const target = hostOrigin || window.location.origin;
261
376
  const body = {
262
377
  type: 'bank',
@@ -272,11 +387,11 @@ var _OzTokenizerFrame = (function (exports) {
272
387
  },
273
388
  },
274
389
  };
275
- const data = await this.postToVault(requestId, VAULT_API_URL, waxKey, pubKey, body, target, 'bank', tokenizationSessionId);
390
+ const data = await this.postToVault(requestId, VAULT_API_URL, waxKey, pubKey, body, target, 'bank');
276
391
  if (!data)
277
392
  return;
278
393
  const { token } = data;
279
- window.parent.postMessage(Object.assign({ __oz: true, vaultId: this.vaultId, type: 'OZ_BANK_TOKEN_RESULT', requestId, token }, (bankMeta.last4 ? { bank: bankMeta } : {})), target);
394
+ window.parent.postMessage(Object.assign({ __oz: true, vaultId: this.vaultId, type: 'OZ_BANK_TOKEN_RESULT', requestId, token }, (bankMeta.last4 || bankMeta.routingNumberLast4 ? { bank: bankMeta } : {})), target);
280
395
  }
281
396
  static classifyHttpStatus(status) {
282
397
  if (status === 401 || status === 403)
@@ -289,8 +404,9 @@ var _OzTokenizerFrame = (function (exports) {
289
404
  }
290
405
  /**
291
406
  * Fetches with a 30s timeout and a single automatic retry for network
292
- * errors and 5xx responses. 4xx errors are not retried (bad input won't
293
- * succeed on a second attempt).
407
+ * errors only. 4xx and 5xx responses are not retried 4xx inputs won't
408
+ * succeed on a second attempt, and 5xx may have already been processed
409
+ * server-side (idempotency cannot be guaranteed for the vault tokenize POST).
294
410
  *
295
411
  * Throws an Error with an `errorCode` property for downstream classification.
296
412
  */
@@ -304,10 +420,10 @@ var _OzTokenizerFrame = (function (exports) {
304
420
  const err = await res.json().catch(() => ({ error: res.statusText }));
305
421
  const errMsg = (err === null || err === void 0 ? void 0 : err.error) || `HTTP ${res.status}`;
306
422
  const code = TokenizerFrame.classifyHttpStatus(res.status);
307
- if (res.status >= 500 && attempt < 2) {
308
- await new Promise(r => setTimeout(r, 1000));
309
- return this.fetchWithRetry(url, init, attempt + 1);
310
- }
423
+ // 5xx responses are not retried the vault may have processed the
424
+ // tokenization request before returning the error, and retrying would
425
+ // create a duplicate orphaned token. Only pure transport failures
426
+ // (no response at all) are safe to retry below.
311
427
  const e = new Error(errMsg);
312
428
  e.errorCode = code;
313
429
  throw e;
@@ -341,6 +457,7 @@ var _OzTokenizerFrame = (function (exports) {
341
457
  }
342
458
  new TokenizerFrame();
343
459
 
460
+ exports.TokenizerFrame = TokenizerFrame;
344
461
  exports.isAllowedVaultOrigin = isAllowedVaultOrigin;
345
462
 
346
463
  return exports;
@@ -1 +1 @@
1
- {"version":3,"file":"tokenizer-frame.js","sources":["../../src/frame/tokenizerFrame.ts"],"sourcesContent":[null],"names":[],"mappings":";;;IAAA;;;;;;;;;;;IAWG;IAIH,MAAM,aAAa,GAAG,wEAAiB;IAEvC;;;;;;;IAOG;IACG,SAAU,oBAAoB,CAAC,MAAc,EAAA;IACjD,IAAA,IAAI,MAAW;IACf,IAAA,IAAI;IACF,QAAA,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC;QAC1B;IAAE,IAAA,OAAA,EAAA,EAAM;IACN,QAAA,OAAO,KAAK;QACd;IAEA,IAAA,IAAI;IACF,QAAA,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC;IACtC,QAAA,OAAO,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM;QACzC;IAAE,IAAA,OAAA,EAAA,EAAM;IACN,QAAA,OAAO,KAAK;QACd;IACF;IAoCA,MAAM,cAAc,CAAA;IAMlB,IAAA,WAAA,GAAA;YAJQ,IAAA,CAAA,UAAU,GAAG,EAAE;IACf,QAAA,IAAA,CAAA,OAAO,GAAG,IAAI,GAAG,EAA0B;IAC3C,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,GAAG,EAA8B;IAGzD,QAAA,MAAM,CAAC,GAAG,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrD,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE;YACrC,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC;IACrC,QAAA,IAAI,OAAO;IAAE,YAAA,IAAI,CAAC,UAAU,GAAG,OAAO;IAEtC,QAAA,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7D,QAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,eAAe,EAAE,EACvF,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAC1C;QACH;IAEQ,IAAA,SAAS,CAAC,KAAmB,EAAA;IACnC,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,IAAiB;IACnC,QAAA,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO;gBAAE;IAE/D,QAAA,QAAQ,GAAG,CAAC,IAAI;IACd,YAAA,KAAK,SAAS;IACZ,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;IACpB,oBAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM;oBAChC;oBACA;IAEF,YAAA,KAAK,aAAa;oBAChB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU;wBAAE;oBAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,EAAE;IACxC,oBAAA,IAAI,EAAE,MAAM;wBACZ,SAAS,EAAE,GAAG,CAAC,SAAmB;IAClC,oBAAA,MAAM,EAAG,GAAG,CAAC,MAAiB,IAAI,EAAE;IACpC,oBAAA,qBAAqB,EAAG,GAAG,CAAC,qBAAgC,IAAI,EAAE;IAClE,oBAAA,MAAM,EAAG,GAAG,CAAC,MAAiB,IAAI,EAAE;IACpC,oBAAA,SAAS,EAAG,GAAG,CAAC,SAAoB,IAAI,EAAE;IAC1C,oBAAA,QAAQ,EAAG,GAAG,CAAC,QAAmB,IAAI,EAAE;IACxC,oBAAA,UAAU,EAAG,GAAG,CAAC,UAAqB,IAAI,CAAC;wBAC3C,MAAM,EAAE,IAAI,GAAG,EAAE;IACjB,oBAAA,QAAQ,EAAE,EAAE;wBACZ,UAAU,EAAE,KAAK,CAAC,MAAM;IACzB,iBAAA,CAAC;oBACF;IAEF,YAAA,KAAK,kBAAkB;oBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU;wBAAE;oBAC1D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,EAAE;IAC5C,oBAAA,IAAI,EAAE,MAAM;wBACZ,SAAS,EAAE,GAAG,CAAC,SAAmB;IAClC,oBAAA,MAAM,EAAG,GAAG,CAAC,MAAiB,IAAI,EAAE;IACpC,oBAAA,qBAAqB,EAAG,GAAG,CAAC,qBAAgC,IAAI,EAAE;IAClE,oBAAA,MAAM,EAAG,GAAG,CAAC,MAAiB,IAAI,EAAE;IACpC,oBAAA,SAAS,EAAG,GAAG,CAAC,SAAoB,IAAI,EAAE;IAC1C,oBAAA,QAAQ,EAAG,GAAG,CAAC,QAAmB,IAAI,EAAE;IACxC,oBAAA,UAAU,EAAG,GAAG,CAAC,UAAqB,IAAI,CAAC;wBAC3C,MAAM,EAAE,IAAI,GAAG,EAAE;IACjB,oBAAA,QAAQ,EAAE,EAAE;wBACZ,UAAU,EAAE,KAAK,CAAC,MAAM;IACzB,iBAAA,CAAC;oBACF;gBAEF,KAAK,gBAAgB,EAAE;;oBAErB,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE;wBACpC,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,KAAK,CAAC,MAAM,CAAC;wBACtF;oBACF;;IAGA,gBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,CAAC;oBACzD,IAAI,OAAO,EAAE;IACX,oBAAA,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,EAAE,GAAG,CAAC,KAAe,CAAC;wBAEhE,IAAI,GAAG,CAAC,KAAK;4BAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC,KAAe;wBAC3D,IAAI,GAAG,CAAC,KAAK;4BAAE,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC,KAAe;wBAC3D,IAAI,GAAG,CAAC,QAAQ;4BAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAkB;wBACpE,IAAI,GAAG,CAAC,OAAO;4BAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,GAAG,GAAG,CAAC,OAAiB;wBAEjE,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,OAAO,CAAC,UAAU,EAAE;4BAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;IACtC,wBAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;wBACxB;oBACF;;IAGA,gBAAA,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,CAAC;oBACjE,IAAI,WAAW,EAAE;IACf,oBAAA,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,SAAmB,EAAE,GAAG,CAAC,KAAe,CAAC;wBAEpE,IAAI,GAAG,CAAC,SAAS,KAAK,eAAe,IAAI,GAAG,CAAC,KAAK;4BAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,GAAG,GAAG,CAAC,KAAe;IACpG,oBAAA,IAAI,GAAG,CAAC,SAAS,KAAK,eAAe;4BAAE,WAAW,CAAC,QAAQ,CAAC,aAAa,GAAG,GAAG,CAAC,KAAe;wBAE/F,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,IAAI,WAAW,CAAC,UAAU,EAAE;4BACrD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;IAC9C,wBAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC;wBAChC;oBACF;oBACA;gBACF;;QAEJ;IAEA;;;;;;;IAOG;IACK,IAAA,MAAM,WAAW,CACvB,SAAiB,EACjB,MAAc,EACd,MAAc,EACd,MAAc,EACd,IAA6B,EAC7B,MAAc,EACd,QAAgB,EAChB,qBAA6B,EAAA;;IAE7B,QAAA,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAAE;IACjC,YAAA,IAAI,KAAa;IACjB,YAAA,IAAI;IACF,gBAAA,IAAI,GAAG,CAAC,MAAM,CAAC;oBACf,KAAK,GAAG,iCAAiC;gBAC3C;IAAE,YAAA,OAAA,EAAA,EAAM;oBACN,KAAK,GAAG,wBAAwB;gBAClC;gBACA,OAAO,CAAC,KAAK,CAAC,CAAA,sBAAA,EAAyB,QAAQ,CAAA,yBAAA,CAA2B,EAAE,MAAM,CAAC;IACnF,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EACpG,MAAM,CACP;IACD,YAAA,OAAO,IAAI;YACb;YAEA,IAAI,CAAC,MAAM,EAAE;gBACX,MAAM,KAAK,GAAG,kGAAkG;IAChH,YAAA,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAA,CAAE,CAAC;IACvC,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,EACpG,MAAM,CACP;IACD,YAAA,OAAO,IAAI;YACb;IAEA,QAAA,IAAI;IACF,YAAA,MAAM,OAAO,GAA2B;IACtC,gBAAA,cAAc,EAAE,kBAAkB;IAClC,gBAAA,WAAW,EAAE,MAAM;IACnB,gBAAA,cAAc,EAAE,SAAS;iBAC1B;gBACD,IAAI,MAAM,EAAE;IACV,gBAAA,OAAO,CAAC,WAAW,CAAC,GAAG,MAAM;gBAC/B;gBACA,IAAI,qBAAqB,EAAE;IACzB,gBAAA,OAAO,CAAC,2BAA2B,CAAC,GAAG,qBAAqB;gBAC9D;;;;;;gBAOA,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAC5C,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,WAAW,CACrC;gBACD,IAAI,YAAY,EAAE;oBAChB,MAAM,GAAG,GACP,CAAA,kEAAA,CAAoE;IACpE,oBAAA,CAAA,6BAAA,EAAgC,YAAY,CAAA,IAAA,CAAM;IAClD,oBAAA,CAAA,gDAAA,CAAkD;IACpD,gBAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;IAClB,gBAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,EACzG,MAAM,CACP;IACD,gBAAA,OAAO,IAAI;gBACb;;gBAGA,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,CAAA,EAAG,MAAM,CAAA,SAAA,CAAW,EAAE;IAC3D,gBAAA,MAAM,EAAE,MAAM;oBACd,OAAO;IACP,gBAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;IAC3B,aAAA,CAAC;gBAEF,MAAM,KAAK,GAAG,MAAM,CAAC,CAAA,EAAA,GAAA,MAAA,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJ,IAAI,CAAE,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAJ,IAAI,CAAE,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAC;gBACnD,IAAI,CAAC,KAAK,EAAE;IACV,gBAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB;IACE,oBAAA,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS;IACpE,oBAAA,KAAK,EAAE,4EAA4E;IACnF,oBAAA,SAAS,EAAE,QAAQ;qBACpB,EACD,MAAM,CACP;IACD,gBAAA,OAAO,IAAI;gBACb;gBAEA,OAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAY,IAAI,CAAA,EAAA,EAAE,KAAK,EAAA,CAAA;YACzB;YAAE,OAAO,GAAY,EAAE;IACrB,YAAA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,CAAA,EAAG,QAAQ,sBAAsB;IACtF,YAAA,MAAM,SAAS,GAAG,CAAC,GAAG,YAAY,KAAK,IAAK,GAAsC,CAAC,SAAS,KAAK,SAAS;IAC1G,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,EACnG,MAAM,CACP;IACD,YAAA,OAAO,IAAI;YACb;QACF;QAEQ,MAAM,QAAQ,CAAC,OAAuB,EAAA;;YAC5C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO;YACvH,MAAM,MAAM,GAAG,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM;YAEnD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE;YACjD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;IACnC,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;YAClD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1C,QAAA,MAAM,cAAc,GAAG,CAAA,EAAA,EAAK,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;IAEhD,QAAA,MAAM,IAAI,GAAG;IACX,YAAA,IAAI,EAAE,MAAM;IACZ,YAAA,IAAI,EAAE;oBACJ,UAAU;oBACV,GAAG;oBACH,eAAe;oBACf,cAAc;IACd,gBAAA,UAAU,EAAE,SAAS;IACrB,gBAAA,SAAS,EAAE,QAAQ;IACpB,aAAA;IACD,YAAA,aAAa,EAAE;IACb,gBAAA,KAAK,EAAE;IACL,oBAAA,WAAW,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;IAChE,iBAAA;IACF,aAAA;aACF;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IAC1H,QAAA,IAAI,CAAC,IAAI;gBAAE;IAEX,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI;YACtB,MAAM,UAAU,GAAG,MAAM,CACvB,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAI,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GACf,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GACd,IAAI,CAAC,eAAe,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GACpB,IAAI,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GACnB,EAAE,CACH;YAED,IAAI,CAAC,UAAU,EAAE;IACf,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CACvB;IACE,gBAAA,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS;IACpE,gBAAA,KAAK,EAAE,6FAA6F;IACpG,gBAAA,SAAS,EAAE,QAAQ;iBACpB,EACD,MAAM,CACP;gBACD;YACF;IAEA,QAAA,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO;IACjG,QAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA,MAAA,CAAA,MAAA,CAAA,EAErB,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,KACpF,eAAe,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAC,EAEhD,MAAM,CACP;QACH;QAEQ,MAAM,YAAY,CAAC,OAA2B,EAAA;YACpD,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO;YACvH,MAAM,MAAM,GAAG,UAAU,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM;IAEnD,QAAA,MAAM,IAAI,GAAG;IACX,YAAA,IAAI,EAAE,MAAM;IACZ,YAAA,IAAI,EAAE;oBACJ,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE;oBAChD,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE;IAChD,gBAAA,UAAU,EAAE,SAAS;IACrB,gBAAA,SAAS,EAAE,QAAQ;IACpB,aAAA;IACD,YAAA,aAAa,EAAE;IACb,gBAAA,KAAK,EAAE;IACL,oBAAA,cAAc,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;IACnE,iBAAA;IACF,aAAA;aACF;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,CAAC;IAC1H,QAAA,IAAI,CAAC,IAAI;gBAAE;IAEX,QAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI;IACtB,QAAA,MAAM,CAAC,MAAM,CAAC,WAAW,CAAA,MAAA,CAAA,MAAA,CAAA,EAErB,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,KAAK,EAAA,GAC7E,QAAQ,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAC,EAE/C,MAAM,CACP;QACH;QAEQ,OAAO,kBAAkB,CAAC,MAAc,EAAA;IAC9C,QAAA,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;IAAE,YAAA,OAAO,MAAM;IACnD,QAAA,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;IAAE,YAAA,OAAO,YAAY;YACtD,IAAI,MAAM,IAAI,GAAG;IAAE,YAAA,OAAO,QAAQ;IAClC,QAAA,OAAO,SAAS;QAClB;IAEA;;;;;;IAMG;QACK,MAAM,cAAc,CAAC,GAAW,EAAE,IAAiB,EAAE,OAAO,GAAG,CAAC,EAAA;IACtE,QAAA,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE;IACxC,QAAA,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,UAAU,CAAC,KAAK,EAAE,EAAE,KAAM,CAAC;IAE9D,QAAA,IAAI;IACF,YAAA,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAO,IAAI,CAAA,EAAA,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,IAAG;gBACpE,YAAY,CAAC,SAAS,CAAC;IAEvB,YAAA,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;oBACX,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACrE,gBAAA,MAAM,MAAM,GAAG,CAAA,GAAG,KAAA,IAAA,IAAH,GAAG,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAH,GAAG,CAAE,KAAK,KAAI,CAAA,KAAA,EAAQ,GAAG,CAAC,MAAM,EAAE;oBACjD,MAAM,IAAI,GAAG,cAAc,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC;oBAE1D,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,EAAE;IACpC,oBAAA,MAAM,IAAI,OAAO,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3C,oBAAA,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC;oBACpD;IACA,gBAAA,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC;IAC1B,gBAAA,CAAmC,CAAC,SAAS,GAAG,IAAI;IACrD,gBAAA,MAAM,CAAC;gBACT;IAEA,YAAA,OAAO,MAAM,GAAG,CAAC,IAAI,EAAE;YACzB;YAAE,OAAO,GAAY,EAAE;gBACrB,YAAY,CAAC,SAAS,CAAC;gBAEvB,IAAI,GAAG,YAAY,KAAK,IAAK,GAAsC,CAAC,SAAS,EAAE;IAC7E,gBAAA,MAAM,GAAG;gBACX;gBAEA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;IACjE,YAAA,MAAM,cAAc,GAAG,GAAG,YAAY,SAAS;gBAC/C,IAAI,CAAC,OAAO,IAAI,cAAc,IAAI,OAAO,GAAG,CAAC,EAAE;IAC7C,gBAAA,MAAM,IAAI,OAAO,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3C,gBAAA,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,GAAG,CAAC,CAAC;gBACpD;gBAEA,IAAI,OAAO,EAAE;IACX,gBAAA,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,mDAAmD,CAAC;IACvE,gBAAA,CAAmC,CAAC,SAAS,GAAG,SAAS;IAC1D,gBAAA,MAAM,CAAC;gBACT;gBACA,IAAI,cAAc,EAAE;oBAClB,MAAM,CAAC,GAAG,IAAI,KAAK,CAAE,GAAiB,CAAC,OAAO,IAAI,eAAe,CAAC;IACjE,gBAAA,CAAmC,CAAC,SAAS,GAAG,SAAS;IAC1D,gBAAA,MAAM,CAAC;gBACT;IACA,YAAA,MAAM,GAAG;YACX;QACF;IACD;IAED,IAAI,cAAc,EAAE;;;;;;;;;;"}
1
+ {"version":3,"file":"tokenizer-frame.js","sources":["../../src/sdk/errors.ts","../../src/frame/tokenizerFrame.ts"],"sourcesContent":[null,null],"names":[],"mappings":"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"}