@ozura/elements 1.2.1 → 1.2.3

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 (60) hide show
  1. package/README.md +105 -0
  2. package/dist/frame/element-frame.js +49 -4
  3. package/dist/frame/element-frame.js.map +1 -1
  4. package/dist/frame/tokenizer-frame.js +145 -61
  5. package/dist/frame/tokenizer-frame.js.map +1 -1
  6. package/dist/oz-elements.esm.js +221 -97
  7. package/dist/oz-elements.esm.js.map +1 -1
  8. package/dist/oz-elements.umd.js +221 -97
  9. package/dist/oz-elements.umd.js.map +1 -1
  10. package/dist/react/frame/elementFrame.d.ts +9 -0
  11. package/dist/react/frame/tokenizerFrame.d.ts +17 -1
  12. package/dist/react/index.cjs.js +221 -97
  13. package/dist/react/index.cjs.js.map +1 -1
  14. package/dist/react/index.esm.js +221 -97
  15. package/dist/react/index.esm.js.map +1 -1
  16. package/dist/react/sdk/OzElement.d.ts +4 -1
  17. package/dist/react/sdk/OzVault.d.ts +3 -9
  18. package/dist/react/sdk/createSessionFetcher.d.ts +2 -2
  19. package/dist/react/server/index.d.ts +26 -0
  20. package/dist/react/types/index.d.ts +30 -11
  21. package/dist/react/utils/billingUtils.d.ts +2 -1
  22. package/dist/react/vue/index.d.ts +88 -0
  23. package/dist/server/frame/elementFrame.d.ts +9 -0
  24. package/dist/server/frame/tokenizerFrame.d.ts +17 -1
  25. package/dist/server/index.cjs.js +65 -24
  26. package/dist/server/index.cjs.js.map +1 -1
  27. package/dist/server/index.esm.js +65 -24
  28. package/dist/server/index.esm.js.map +1 -1
  29. package/dist/server/sdk/OzElement.d.ts +4 -1
  30. package/dist/server/sdk/OzVault.d.ts +3 -9
  31. package/dist/server/sdk/createSessionFetcher.d.ts +2 -2
  32. package/dist/server/server/index.d.ts +26 -0
  33. package/dist/server/types/index.d.ts +30 -11
  34. package/dist/server/utils/billingUtils.d.ts +2 -1
  35. package/dist/server/vue/index.d.ts +88 -0
  36. package/dist/types/frame/elementFrame.d.ts +9 -0
  37. package/dist/types/frame/tokenizerFrame.d.ts +17 -1
  38. package/dist/types/sdk/OzElement.d.ts +4 -1
  39. package/dist/types/sdk/OzVault.d.ts +3 -9
  40. package/dist/types/sdk/createSessionFetcher.d.ts +2 -2
  41. package/dist/types/server/index.d.ts +26 -0
  42. package/dist/types/types/index.d.ts +30 -11
  43. package/dist/types/utils/billingUtils.d.ts +2 -1
  44. package/dist/types/vue/index.d.ts +88 -0
  45. package/dist/vue/frame/protocol.d.ts +12 -0
  46. package/dist/vue/index.cjs.js +2335 -0
  47. package/dist/vue/index.cjs.js.map +1 -0
  48. package/dist/vue/index.esm.js +2327 -0
  49. package/dist/vue/index.esm.js.map +1 -0
  50. package/dist/vue/sdk/OzElement.d.ts +99 -0
  51. package/dist/vue/sdk/OzVault.d.ts +250 -0
  52. package/dist/vue/sdk/createSessionFetcher.d.ts +29 -0
  53. package/dist/vue/sdk/errors.d.ts +65 -0
  54. package/dist/vue/sdk/index.d.ts +14 -0
  55. package/dist/vue/types/index.d.ts +667 -0
  56. package/dist/vue/utils/appearance.d.ts +22 -0
  57. package/dist/vue/utils/billingUtils.d.ts +61 -0
  58. package/dist/vue/utils/uuid.d.ts +12 -0
  59. package/dist/vue/vue/index.d.ts +88 -0
  60. package/package.json +15 -3
@@ -85,13 +85,14 @@ function validateEmail(email) {
85
85
  // ─── Phone ───────────────────────────────────────────────────────────────────
86
86
  /**
87
87
  * Validates E.164 phone format: starts with +, 1–3 digit country code,
88
- * followed by 7–12 digits, total ≤50 characters.
88
+ * followed by 7–12 digits, max 15 digits total (E.164 spec cap = 16 chars
89
+ * including the leading +).
89
90
  *
90
91
  * Matches the output of checkout's formatPhoneForAPI() function.
91
92
  * Examples: "+15551234567", "+447911123456", "+61412345678"
92
93
  */
93
94
  function validateE164Phone(phone) {
94
- return /^\+[1-9]\d{6,49}$/.test(phone) && phone.length <= 50;
95
+ return /^\+[1-9]\d{6,14}$/.test(phone);
95
96
  }
96
97
  // ─── Field length ─────────────────────────────────────────────────────────────
97
98
  /** Returns true when the string is non-empty and ≤50 characters (cardSale schema). */
@@ -332,7 +333,7 @@ function timeoutSignal(ms) {
332
333
  // ─── Main class ──────────────────────────────────────────────────────────────
333
334
  class Ozura {
334
335
  constructor(config) {
335
- var _a, _b;
336
+ var _a, _b, _c;
336
337
  if (!config.vaultKey)
337
338
  throw new OzuraError('vaultKey is required', 0);
338
339
  this.merchantId = config.merchantId;
@@ -342,6 +343,30 @@ class Ozura {
342
343
  this.vaultUrl = config.vaultUrl || DEFAULT_VAULT_URL;
343
344
  this.timeoutMs = (_a = config.timeoutMs) !== null && _a !== void 0 ? _a : DEFAULT_TIMEOUT;
344
345
  this.retries = (_b = config.retries) !== null && _b !== void 0 ? _b : DEFAULT_RETRIES;
346
+ this.debug = (_c = config.debug) !== null && _c !== void 0 ? _c : false;
347
+ }
348
+ /** Emits a `[Ozura]`-prefixed entry to `console.log`. No-op when `debug` is not set. */
349
+ log(message, data) {
350
+ if (!this.debug)
351
+ return;
352
+ if (data !== undefined) {
353
+ console.log(`[Ozura] ${message}`, data);
354
+ }
355
+ else {
356
+ console.log(`[Ozura] ${message}`);
357
+ }
358
+ }
359
+ /**
360
+ * Returns a copy of `body` with known-sensitive fields replaced by `'[REDACTED]'`.
361
+ * Used to make debug logs safe to emit without leaking vault tokens or session keys.
362
+ */
363
+ static redactBody(body) {
364
+ const SENSITIVE = new Set(['ozuraVaultToken', 'ozuraCvcSession', 'wax_key', 'waxKey']);
365
+ const result = {};
366
+ for (const [k, v] of Object.entries(body)) {
367
+ result[k] = SENSITIVE.has(k) ? '[REDACTED]' : v;
368
+ }
369
+ return result;
345
370
  }
346
371
  /**
347
372
  * Charge a tokenized card. Maps the friendly `CardSaleInput` shape to the
@@ -350,11 +375,12 @@ class Ozura {
350
375
  * Rate limit: 100 requests/minute per merchant.
351
376
  */
352
377
  async cardSale(input) {
353
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
378
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
354
379
  if (!this.merchantId)
355
380
  throw new OzuraError('merchantId is required for cardSale(). Add it to the Ozura constructor config.', 0);
356
381
  if (!this.apiKey)
357
382
  throw new OzuraError('apiKey is required for cardSale(). Add it to the Ozura constructor config.', 0);
383
+ this.log('cardSale', { merchantId: this.merchantId, amount: input.amount, currency: input.currency || 'USD' });
358
384
  const billing = input.billing;
359
385
  // Build body with required fields, then conditionally add optional billing
360
386
  // fields only when non-empty. The Pay API enforces minLength:1 on these
@@ -364,30 +390,33 @@ class Ozura {
364
390
  merchantId: this.merchantId,
365
391
  amount: input.amount,
366
392
  currency: input.currency || 'USD',
367
- ozuraCardToken: input.token,
393
+ // Pay API requires these two fields. Default to standard web-checkout values.
394
+ transactionInitiationType: (_a = input.transactionInitiationType) !== null && _a !== void 0 ? _a : 'cit',
395
+ transactionChannel: (_b = input.transactionChannel) !== null && _b !== void 0 ? _b : 'ecommerce',
396
+ ozuraVaultToken: input.token,
368
397
  ozuraCvcSession: input.cvcSession,
369
398
  billingFirstName: billing.firstName,
370
399
  billingLastName: billing.lastName,
371
400
  clientIpAddress: input.clientIpAddress,
372
- salesTaxExempt: (_a = input.salesTaxExempt) !== null && _a !== void 0 ? _a : false,
373
- surchargePercent: (_b = input.surchargePercent) !== null && _b !== void 0 ? _b : '0.00',
374
- tipAmount: (_c = input.tipAmount) !== null && _c !== void 0 ? _c : '0.00',
401
+ salesTaxExempt: (_c = input.salesTaxExempt) !== null && _c !== void 0 ? _c : false,
402
+ surchargePercent: (_d = input.surchargePercent) !== null && _d !== void 0 ? _d : '0.00',
403
+ tipAmount: (_e = input.tipAmount) !== null && _e !== void 0 ? _e : '0.00',
375
404
  };
376
405
  if (billing.email)
377
406
  body.billingEmail = billing.email;
378
407
  if (billing.phone)
379
408
  body.billingPhone = billing.phone;
380
- if ((_d = billing.address) === null || _d === void 0 ? void 0 : _d.line1)
409
+ if ((_f = billing.address) === null || _f === void 0 ? void 0 : _f.line1)
381
410
  body.billingAddress1 = billing.address.line1;
382
- if ((_e = billing.address) === null || _e === void 0 ? void 0 : _e.line2)
411
+ if ((_g = billing.address) === null || _g === void 0 ? void 0 : _g.line2)
383
412
  body.billingAddress2 = billing.address.line2;
384
- if ((_f = billing.address) === null || _f === void 0 ? void 0 : _f.city)
413
+ if ((_h = billing.address) === null || _h === void 0 ? void 0 : _h.city)
385
414
  body.billingCity = billing.address.city;
386
- if ((_g = billing.address) === null || _g === void 0 ? void 0 : _g.state)
415
+ if ((_j = billing.address) === null || _j === void 0 ? void 0 : _j.state)
387
416
  body.billingState = billing.address.state;
388
- if ((_h = billing.address) === null || _h === void 0 ? void 0 : _h.zip)
417
+ if ((_k = billing.address) === null || _k === void 0 ? void 0 : _k.zip)
389
418
  body.billingZipcode = billing.address.zip;
390
- body.billingCountry = ((_j = billing.address) === null || _j === void 0 ? void 0 : _j.country) || 'US';
419
+ body.billingCountry = ((_l = billing.address) === null || _l === void 0 ? void 0 : _l.country) || 'US';
391
420
  if (input.processor) {
392
421
  body.processor = input.processor;
393
422
  }
@@ -455,7 +484,8 @@ class Ozura {
455
484
  * app.post('/api/oz-session', createSessionMiddleware(ozura));
456
485
  */
457
486
  async createSession(options) {
458
- var _a, _b, _c;
487
+ var _a, _b, _c, _d;
488
+ this.log('createSession', { sessionId: options === null || options === void 0 ? void 0 : options.sessionId, sessionLimit: (_a = options === null || options === void 0 ? void 0 : options.sessionLimit) !== null && _a !== void 0 ? _a : 3 });
459
489
  const body = {};
460
490
  if (options === null || options === void 0 ? void 0 : options.sessionId) {
461
491
  body.checkout_session_id = options.sessionId;
@@ -465,7 +495,7 @@ class Ozura {
465
495
  // sessionLimit: number → use that value.
466
496
  if ((options === null || options === void 0 ? void 0 : options.sessionLimit) === null) ;
467
497
  else {
468
- body.max_tokenize_calls = (_a = options === null || options === void 0 ? void 0 : options.sessionLimit) !== null && _a !== void 0 ? _a : 3;
498
+ body.max_tokenize_calls = (_b = options === null || options === void 0 ? void 0 : options.sessionLimit) !== null && _b !== void 0 ? _b : 3;
469
499
  }
470
500
  // maxProxyCalls: null → omit (unlimited). undefined → omit (vault default).
471
501
  if ((options === null || options === void 0 ? void 0 : options.maxProxyCalls) != null) {
@@ -481,6 +511,7 @@ class Ozura {
481
511
  body.metadata = options.metadata;
482
512
  if ((options === null || options === void 0 ? void 0 : options.ttlSeconds) != null)
483
513
  body.ttl_seconds = options.ttlSeconds;
514
+ const sessionStartMs = Date.now();
484
515
  const res = await this.fetchWithRetry(`${this.vaultUrl}/internal/wax-session`, {
485
516
  method: 'POST',
486
517
  headers: {
@@ -490,15 +521,16 @@ class Ozura {
490
521
  body: JSON.stringify(body),
491
522
  });
492
523
  const json = await res.json().catch(() => ({}));
493
- if (res.status === 201) {
524
+ this.log(`createSession → ${res.status} (${Date.now() - sessionStartMs}ms)`);
525
+ if (res.ok) {
494
526
  const data = json.data;
495
- const sessionKey = String((_b = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _b !== void 0 ? _b : '');
527
+ const sessionKey = String((_c = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _c !== void 0 ? _c : '');
496
528
  if (!sessionKey) {
497
529
  throw new OzuraError('Vault session response missing data.wax_key', res.status, JSON.stringify(json));
498
530
  }
499
531
  return {
500
532
  sessionKey,
501
- expiresInSeconds: Number((_c = data === null || data === void 0 ? void 0 : data.expires_in_seconds) !== null && _c !== void 0 ? _c : 1800),
533
+ expiresInSeconds: Number((_d = data === null || data === void 0 ? void 0 : data.expires_in_seconds) !== null && _d !== void 0 ? _d : 1800),
502
534
  };
503
535
  }
504
536
  const errorCode = json.error_code || '';
@@ -620,11 +652,20 @@ class Ozura {
620
652
  if (includeVaultKey) {
621
653
  headers['vault-api-key'] = this.vaultKey;
622
654
  }
623
- const res = await this.fetchWithRetry(`${this.apiUrl}${path}`, {
624
- method: 'POST',
625
- headers,
626
- body: JSON.stringify(body),
627
- }, maxRetries);
655
+ const postStartMs = Date.now();
656
+ let res;
657
+ try {
658
+ res = await this.fetchWithRetry(`${this.apiUrl}${path}`, {
659
+ method: 'POST',
660
+ headers,
661
+ body: JSON.stringify(body),
662
+ }, maxRetries);
663
+ }
664
+ catch (err) {
665
+ this.log(`POST ${path} ERROR (${Date.now() - postStartMs}ms)`, { error: err instanceof Error ? err.message : String(err) });
666
+ throw err;
667
+ }
668
+ this.log(`POST ${path} → ${res.status} (${Date.now() - postStartMs}ms)`, Ozura.redactBody(body));
628
669
  return this.handleResponse(res);
629
670
  }
630
671
  async getRaw(path) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../src/sdk/errors.ts","../../src/utils/billingUtils.ts","../../src/server/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"AAAA;;;;;;;;;;AAUG;AA4GH;AAEA,MAAM,mBAAmB,GAA4B;IACnD,CAAC,oBAAoB,EAAiB,0EAA0E,CAAC;IACjH,CAAC,qBAAqB,EAAgB,qEAAqE,CAAC;IAC5G,CAAC,cAAc,EAAuB,qDAAqD,CAAC;IAC5F,CAAC,yBAAyB,EAAY,oEAAoE,CAAC;IAC3G,CAAC,6BAA6B,EAAQ,2EAA2E,CAAC;IAClH,CAAC,cAAc,EAAuB,qFAAqF,CAAC;IAC5H,CAAC,UAAU,EAA2B,qFAAqF,CAAC;IAC5H,CAAC,sCAAsC,EAAE,gDAAgD,CAAC;IAC1F,CAAC,mCAAmC,EAAG,gDAAgD,CAAC;IACxF,CAAC,qBAAqB,EAAgB,iDAAiD,CAAC;IACxF,CAAC,oBAAoB,EAAiB,iDAAiD,CAAC;IACxF,CAAC,mBAAmB,EAAkB,iDAAiD,CAAC;IACxF,CAAC,sBAAsB,EAAe,oDAAoD,CAAC;IAC3F,CAAC,yBAAyB,EAAY,iDAAiD,CAAC;IACxF,CAAC,cAAc,EAAuB,iDAAiD,CAAC;IACxF,CAAC,mBAAmB,EAAkB,wDAAwD,CAAC;IAC/F,CAAC,qBAAqB,EAAgB,qDAAqD,CAAC;IAC5F,CAAC,iCAAiC,EAAI,qGAAqG,CAAC;IAC5I,CAAC,uBAAuB,EAAc,gGAAgG,CAAC;IACvI,CAAC,iBAAiB,EAAoB,kEAAkE,CAAC;IACzG,CAAC,4BAA4B,EAAS,iFAAiF,CAAC;IACxH,CAAC,kBAAkB,EAAmB,6FAA6F,CAAC;CACrI;AAED;;;;;;;;;;;;;;;;AAgBG;AACG,SAAU,sBAAsB,CAAC,GAAW,EAAA;AAChD,IAAA,IAAI,CAAC,GAAG;AAAE,QAAA,OAAO,8CAA8C;IAE/D,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,mBAAmB,EAAE;AAChD,QAAA,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE;AACjD,YAAA,OAAO,OAAO;QAChB;IACF;;AAGA,IAAA,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG;AAAE,QAAA,OAAO,GAAG;AAChC,IAAA,OAAO,iEAAiE;AAC1E;;AC9KA;;;;;;;;;;AAUG;AAIH;AAEA,MAAM,QAAQ,GAAG,4BAA4B;AAE7C;AACM,SAAU,aAAa,CAAC,KAAa,EAAA;AACzC,IAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE;AACnD;AAEA;AAEA;;;;;;AAMG;AACG,SAAU,iBAAiB,CAAC,KAAa,EAAA;AAC7C,IAAA,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE;AAC9D;AAEA;AAEA;AACM,SAAU,mBAAmB,CAAC,KAAa,EAAA;IAC/C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE;AAC/C;AAEA;AAEA;AACA,MAAM,SAAS,GAA2B;AACxC,IAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;AAC1D,IAAA,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;AACnE,IAAA,sBAAsB,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI;AACxE,IAAA,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI;AACpE,IAAA,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;AAC5D,IAAA,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI;AACvE,IAAA,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI;AAC3D,IAAA,eAAe,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI;AAC/E,IAAA,gBAAgB,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI;AACxE,IAAA,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI;AAC9E,IAAA,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;AAC9D,IAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI;AACtE,IAAA,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;;IAE9B,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI;AACvD,IAAA,mBAAmB,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI;AACtD,IAAA,gBAAgB,EAAE,IAAI,EAAE,0BAA0B,EAAE,IAAI;AACxD,IAAA,8CAA8C,EAAE,IAAI;;AAEpD,IAAA,qBAAqB,EAAE,IAAI,EAAE,sBAAsB,EAAE,IAAI;AACzD,IAAA,uBAAuB,EAAE,IAAI;CAC9B;AAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;AAEpD,MAAM,YAAY,GAA2B;AAC3C,IAAA,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI;IAC9E,2BAA2B,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI;IACrE,sBAAsB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI;IAC9D,uBAAuB,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;CAC1D;AAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAEvD;;;;;;AAMG;AACG,SAAU,cAAc,CAAC,KAAa,EAAE,OAAe,EAAA;;IAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAExC,IAAA,IAAI,OAAO,KAAK,IAAI,EAAE;AACpB,QAAA,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,KAAK;AACvC,QAAA,OAAO,MAAA,SAAS,CAAC,KAAK,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,KAAK;IAClC;AAEA,IAAA,IAAI,OAAO,KAAK,IAAI,EAAE;AACpB,QAAA,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,KAAK;AACvC,QAAA,OAAO,MAAA,YAAY,CAAC,KAAK,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,KAAK;IACrC;AAEA,IAAA,OAAO,KAAK;AACd;AAEA;AAEA,MAAM,eAAe,GAA2B;IAC9C,EAAE,EAAE,mBAAmB;IACvB,EAAE,EAAE,qCAAqC;AACzC,IAAA,EAAE,EAAE,8CAA8C;AAClD,IAAA,EAAE,EAAE,SAAS;AACb,IAAA,EAAE,EAAE,SAAS;AACb,IAAA,EAAE,EAAE,SAAS;AACb,IAAA,EAAE,EAAE,SAAS;AACb,IAAA,EAAE,EAAE,SAAS;AACb,IAAA,EAAE,EAAE,uBAAuB;AAC3B,IAAA,EAAE,EAAE,gBAAgB;AACpB,IAAA,EAAE,EAAE,gBAAgB;AACpB,IAAA,EAAE,EAAE,SAAS;CACd;AAED;;;AAGG;AACG,SAAU,kBAAkB,CAAC,GAAW,EAAE,OAAe,EAAA;AAC7D,IAAA,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,yBAAyB,EAAE;AACvF,IAAA,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,4CAA4C,EAAE;IAEjG,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACtD,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;AACjC,QAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA,+BAAA,EAAkC,OAAO,CAAC,WAAW,EAAE,CAAA,CAAE,EAAE;IAC3F;AAEA,IAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE;AACxB;AAYA;;;;;;;;;;;AAWG;AACG,SAAU,eAAe,CAAC,OAAuB,EAAA;;IACrD,MAAM,MAAM,GAAa,EAAE;AAE3B,IAAA,MAAM,SAAS,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;AACjD,IAAA,MAAM,QAAQ,GAAI,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAK,EAAE;AACjD,IAAA,MAAM,KAAK,GAAO,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAS,EAAE;AAClD,IAAA,MAAM,KAAK,GAAO,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAO,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAS,EAAE;AAElD,IAAA,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,EAAE;AACnC,QAAA,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC;IAC1D;AACA,IAAA,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE;AAClC,QAAA,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC;IACzD;IACA,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;AAClC,QAAA,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC;IAC1E;IACA,IAAI,KAAK,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE;AACtC,QAAA,MAAM,CAAC,IAAI,CAAC,6EAA6E,CAAC;IAC5F;AAEA,IAAA,IAAI,iBAA6C;AAEjD,IAAA,IAAI,OAAO,CAAC,OAAO,EAAE;AACnB,QAAA,MAAM,CAAC,GAAG,OAAO,CAAC,OAAO;AACzB,QAAA,MAAM,OAAO,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAA,CAAG,WAAW,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;AACrD,QAAA,MAAM,KAAK,GAAK,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAK,EAAE;AACtC,QAAA,MAAM,KAAK,GAAK,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAK,EAAE;AACtC,QAAA,MAAM,IAAI,GAAM,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAM,EAAE;AACtC,QAAA,MAAM,GAAG,GAAO,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,GAAG,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAO,EAAE;AACtC,QAAA,MAAM,KAAK,GAAK,cAAc,CAAC,CAAA,EAAA,GAAA,MAAA,CAAC,CAAC,KAAK,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,IAAI,EAAE,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE,EAAE,OAAO,CAAC;AAE9D,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;AAAI,YAAA,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC;AAC/F,QAAA,IAAI,KAAK,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC;AACtC,YAAA,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC;AAC1E,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;AAAK,YAAA,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC;AAC9F,QAAA,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE;AAC/B,YAAA,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC;QAC9D;AAAO,aAAA,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACrD,YAAA,MAAM,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAA,gFAAA,CAAkF,CAAC;QAChI;AAAO,aAAA,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;AACrD,YAAA,MAAM,CAAC,IAAI,CAAC,0BAA0B,KAAK,CAAA,yFAAA,CAA2F,CAAC;QACzI;;QAEA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;AAC/B,YAAA,MAAM,CAAC,IAAI,CAAC,4FAA4F,CAAC;QAC3G;AACA,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE;AAC7B,YAAA,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC;QAC5D;AAAO,aAAA,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;YACrC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC;AACrD,YAAA,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE;gBACvB,MAAM,CAAC,IAAI,CAAC,CAAA,qBAAA,EAAwB,YAAY,CAAC,KAAK,CAAA,CAAE,CAAC;YAC3D;QACF;AAEA,QAAA,iBAAiB,iCACf,KAAK,EAAA,GAED,KAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAC1B,IAAI;YACJ,KAAK;YACL,GAAG;AACH,YAAA,OAAO,GACR;IACH;IAEA,MAAM,UAAU,+CACd,SAAS;QACT,QAAQ,EAAA,GACJ,KAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAC,GACvB,KAAK,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KACtB,iBAAiB,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,EAC5D;AAED,IAAA,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE;AAC3D;;AC5OA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;AAaH;AAEA,MAAM,eAAe,GAAG,gCAAe;AACvC,MAAM,iBAAiB,GAAG,4BAAiB;AAC3C,MAAM,eAAe,GAAG,KAAM;AA4B9B;AAEM,MAAO,UAAW,SAAQ,KAAK,CAAA;AAKnC,IAAA,WAAA,CAAY,OAAe,EAAE,UAAkB,EAAE,GAAY,EAAE,UAAmB,EAAA;QAChF,KAAK,CAAC,OAAO,CAAC;AACd,QAAA,IAAI,CAAC,IAAI,GAAG,YAAY;AACxB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU;QAC5B,IAAI,CAAC,GAAG,GAAG,GAAG,KAAA,IAAA,IAAH,GAAG,KAAA,MAAA,GAAH,GAAG,GAAI,OAAO;AACzB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU;IAC9B;AACD;AAiID;AAEA,MAAM,eAAe,GAAG,CAAC;AAEzB,SAAS,WAAW,CAAC,MAAc,EAAA;AACjC,IAAA,OAAO,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;AACtC;AAEA,eAAe,KAAK,CAAC,EAAU,EAAA;AAC7B,IAAA,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACxD;AAEA;;;;;;;;AAQG;AACH,SAAS,aAAa,CAAC,EAAU,EAAA;AAC/B,IAAA,IAAI,OAAO,WAAW,CAAC,OAAO,KAAK,UAAU,EAAE;AAC7C,QAAA,OAAO,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IAChC;AACA,IAAA,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE;IACxC,UAAU,CAAC,MAAM,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;IACxC,OAAO,UAAU,CAAC,MAAM;AAC1B;AAEA;MAEa,KAAK,CAAA;AAShB,IAAA,WAAA,CAAY,MAAmB,EAAA;;QAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ;AAAE,YAAA,MAAM,IAAI,UAAU,CAAC,sBAAsB,EAAE,CAAC,CAAC;AAErE,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;AACnC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM;AAC3B,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,eAAe;QAC9C,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,iBAAiB;QACpD,IAAI,CAAC,SAAS,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,eAAe;QACpD,IAAI,CAAC,OAAO,GAAG,CAAA,EAAA,GAAA,MAAM,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,eAAe;IAClD;AAEA;;;;;AAKG;IACH,MAAM,QAAQ,CAAC,KAAoB,EAAA;;QACjC,IAAI,CAAC,IAAI,CAAC,UAAU;AAAE,YAAA,MAAM,IAAI,UAAU,CAAC,gFAAgF,EAAE,CAAC,CAAC;QAC/H,IAAI,CAAC,IAAI,CAAC,MAAM;AAAE,YAAA,MAAM,IAAI,UAAU,CAAC,4EAA4E,EAAE,CAAC,CAAC;AACvH,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO;;;;;AAM7B,QAAA,MAAM,IAAI,GAAoB;YAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;AACpB,YAAA,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;YACjC,cAAc,EAAE,KAAK,CAAC,KAAK;YAC3B,eAAe,EAAE,KAAK,CAAC,UAAU;YACjC,gBAAgB,EAAE,OAAO,CAAC,SAAS;YACnC,eAAe,EAAE,OAAO,CAAC,QAAQ;YACjC,eAAe,EAAE,KAAK,CAAC,eAAe;AACtC,YAAA,cAAc,EAAE,CAAA,EAAA,GAAA,KAAK,CAAC,cAAc,mCAAI,KAAK;AAC7C,YAAA,gBAAgB,EAAE,CAAA,EAAA,GAAA,KAAK,CAAC,gBAAgB,mCAAI,MAAM;AAClD,YAAA,SAAS,EAAE,CAAA,EAAA,GAAA,KAAK,CAAC,SAAS,mCAAI,MAAM;SACrC;QAED,IAAI,OAAO,CAAC,KAAK;AAAe,YAAA,IAAI,CAAC,YAAY,GAAM,OAAO,CAAC,KAAK;QACpE,IAAI,OAAO,CAAC,KAAK;AAAe,YAAA,IAAI,CAAC,YAAY,GAAM,OAAO,CAAC,KAAK;AACpE,QAAA,IAAI,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,0CAAE,KAAK;YAAM,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK;AAC5E,QAAA,IAAI,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,0CAAE,KAAK;YAAM,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK;AAC5E,QAAA,IAAI,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,0CAAE,IAAI;YAAO,IAAI,CAAC,WAAW,GAAO,OAAO,CAAC,OAAO,CAAC,IAAI;AAC3E,QAAA,IAAI,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,0CAAE,KAAK;YAAM,IAAI,CAAC,YAAY,GAAM,OAAO,CAAC,OAAO,CAAC,KAAK;AAC5E,QAAA,IAAI,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,0CAAE,GAAG;YAAQ,IAAI,CAAC,cAAc,GAAI,OAAO,CAAC,OAAO,CAAC,GAAG;AAC1E,QAAA,IAAI,CAAC,cAAc,GAAG,CAAA,CAAA,EAAA,GAAA,OAAO,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAE,OAAO,KAAI,IAAI;AACtD,QAAA,IAAI,KAAK,CAAC,SAAS,EAAE;AACnB,YAAA,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS;QAClC;;;;AAKA,QAAA,OAAO,IAAI,CAAC,IAAI,CAAuB,kBAAkB,EAAE,IAA0C,EAAE,IAAI,EAAE,CAAC,CAAC;IACjH;AAEA;;;;AAIG;AACH,IAAA,MAAM,gBAAgB,CAAC,KAAA,GAA+B,EAAE,EAAA;QACtD,IAAI,CAAC,IAAI,CAAC,UAAU;AAAE,YAAA,MAAM,IAAI,UAAU,CAAC,wFAAwF,EAAE,CAAC,CAAC;QACvI,IAAI,CAAC,IAAI,CAAC,MAAM;AAAE,YAAA,MAAM,IAAI,UAAU,CAAC,oFAAoF,EAAE,CAAC,CAAC;QAC/H,MAAM,MAAM,GAA2B,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;QACtE,IAAI,KAAK,CAAC,aAAa;AAAE,YAAA,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa;QACnE,IAAI,KAAK,CAAC,QAAQ;AAAE,YAAA,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ;QACpD,IAAI,KAAK,CAAC,MAAM;AAAE,YAAA,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM;QAC9C,IAAI,KAAK,CAAC,eAAe;AAAE,YAAA,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe;QACzE,IAAI,KAAK,CAAC,IAAI;YAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAChD,IAAI,KAAK,CAAC,KAAK;YAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;QACnD,IAAI,KAAK,CAAC,MAAM;AAAE,YAAA,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM;QAC9C,IAAI,KAAK,CAAC,MAAM;AAAE,YAAA,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM;QAC9C,IAAI,KAAK,CAAC,SAAS;AAAE,YAAA,MAAM,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS;AAEvD,QAAA,MAAM,EAAE,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC;QACtC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAI1B,CAAA,mBAAA,EAAsB,EAAE,CAAA,CAAE,CAAC;AAE9B,QAAA,OAAO,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE;IAC/D;;AAIA;;;;;;;;;;;;;;;;;;;;;;;AAuBG;IACH,MAAM,aAAa,CAAC,OAA8B,EAAA;;QAChD,MAAM,IAAI,GAA4B,EAAE;QAExC,IAAI,OAAO,aAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,SAAS,EAAE;AACtB,YAAA,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,SAAS;QAC9C;;;;QAKA,IAAI,CAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,YAAY,MAAK,IAAI,EAAE;aAE7B;AACL,YAAA,IAAI,CAAC,kBAAkB,GAAG,CAAA,EAAA,GAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,YAAY,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,CAAC;QACtD;;QAGA,IAAI,CAAA,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,aAAa,KAAI,IAAI,EAAE;AAClC,YAAA,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,aAAa;QAC9C;AAEA,QAAA,IAAI,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,OAAO;AAAK,YAAA,IAAI,CAAC,QAAQ,GAAiB,OAAO,CAAC,OAAO;AACtE,QAAA,IAAI,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,UAAU;AAAE,YAAA,IAAI,CAAC,oBAAoB,GAAK,OAAO,CAAC,UAAU;AACzE,QAAA,IAAI,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,MAAM;AAAM,YAAA,IAAI,CAAC,OAAO,GAAkB,OAAO,CAAC,MAAM;AACrE,QAAA,IAAI,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,QAAQ;AAAI,YAAA,IAAI,CAAC,QAAQ,GAAiB,OAAO,CAAC,QAAQ;QACvE,IAAI,CAAA,OAAO,KAAA,IAAA,IAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,KAAI,IAAI;AAAE,YAAA,IAAI,CAAC,WAAW,GAAO,OAAO,CAAC,UAAU;AAE1E,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,CAAA,EAAG,IAAI,CAAC,QAAQ,CAAA,qBAAA,CAAuB,EAAE;AAC7E,YAAA,MAAM,EAAE,MAAM;AACd,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;gBAClC,WAAW,EAAE,IAAI,CAAC,QAAQ;AAC3B,aAAA;AACD,YAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;AAC3B,SAAA,CAAC;AAEF,QAAA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAA4B,CAA4B;AAErG,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;AACtB,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAA2C;AAC7D,YAAA,MAAM,UAAU,GAAG,MAAM,CAAC,MAAA,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAE,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,UAAU,EAAE;AACf,gBAAA,MAAM,IAAI,UAAU,CAAC,6CAA6C,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACvG;YACA,OAAO;gBACL,UAAU;AACV,gBAAA,gBAAgB,EAAE,MAAM,CAAC,CAAA,EAAA,GAAA,IAAI,KAAA,IAAA,IAAJ,IAAI,KAAA,MAAA,GAAA,MAAA,GAAJ,IAAI,CAAE,kBAAkB,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI,CAAC;aAC3D;QACH;AAEA,QAAA,MAAM,SAAS,GAAI,IAAI,CAAC,UAAqB,IAAI,EAAE;AACnD,QAAA,MAAM,OAAO,GAAI,IAAI,CAAC,OAAkB,IAAK,IAAI,CAAC,KAAgB,IAAI,CAAA,8BAAA,EAAiC,GAAG,CAAC,MAAM,GAAG;AACpH,QAAA,MAAM,IAAI,UAAU,CAClB,SAAS,GAAG,CAAA,EAAG,OAAO,CAAA,EAAA,EAAK,SAAS,CAAA,CAAA,CAAG,GAAG,OAAO,EACjD,GAAG,CAAC,MAAM,EACV,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAClC;IACH;AAEA;;;;;;;;;;;;;;AAcG;IACH,MAAM,aAAa,CAAC,UAAkB,EAAA;;AACpC,QAAA,IAAI,CAAC,UAAU;YAAE;AAEjB,QAAA,IAAI;YACF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAA,4BAAA,CAA8B,EAAE;AACtE,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,OAAO,EAAE;AACP,oBAAA,cAAc,EAAE,kBAAkB;oBAClC,WAAW,EAAE,IAAI,CAAC,QAAQ;AAC3B,iBAAA;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AAC7C,gBAAA,MAAM,EAAE,aAAa,CAAC,IAAK,CAAC;AAC7B,aAAA,CAAC;YAEF,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;gBAAE;AAE9C,YAAA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAA4B,CAA4B;YACrG,OAAO,CAAC,IAAI,CAAC,0CAA0C,EAAE,GAAG,CAAC,MAAM,EAAE,CAAA,EAAA,GAAA,MAAA,IAAI,CAAC,UAAU,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,IAAI,CAAC,OAAO,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,CAAC;QAC7G;QAAE,OAAO,GAAG,EAAE;AACZ,YAAA,OAAO,CAAC,IAAI,CAAC,iDAAiD,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC;QAC3G;IACF;AAEA;;AAEG;IACH,MAAM,UAAU,CAAC,OAA2B,EAAA;QAC1C,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;AAChE,YAAA,SAAS,EAAE,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,qBAAqB;AACzC,YAAA,YAAY,EAAE,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,gBAAgB;AACvC,YAAA,aAAa,EAAE,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAE,aAAa;AACtC,SAAA,CAAC;AACF,QAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE;IACjD;AAEA;;AAEG;IACH,MAAM,YAAY,CAAC,MAAc,EAAA;AAC/B,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;IACnC;;AAIA;;;AAGG;IACK,MAAM,cAAc,CAAC,GAAW,EAAE,IAAiB,EAAE,UAAU,GAAG,IAAI,CAAC,OAAO,EAAA;AACpF,QAAA,IAAI,SAAkB;AAEtB,QAAA,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE;AACtD,YAAA,IAAI;AACF,gBAAA,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,kCACtB,IAAI,CAAA,EAAA,EACP,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,IACrC;gBAEF,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,OAAO,GAAG,UAAU,EAAE;;AAEnD,oBAAA,IAAI,GAAG,CAAC,IAAI,EAAE;AACZ,wBAAA,IAAI;AACF,4BAAA,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE;wBACzB;AAAE,wBAAA,OAAA,EAAA,EAAM;;wBAER;oBACF;AACA,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,EAAE,IAAI,CAAC;AACnD,oBAAA,MAAM,KAAK,CAAC,OAAO,CAAC;oBACpB;gBACF;AAEA,gBAAA,OAAO,GAAG;YACZ;YAAE,OAAO,GAAG,EAAE;gBACZ,SAAS,GAAG,GAAG;AACf,gBAAA,IAAI,OAAO,GAAG,UAAU,EAAE;AACxB,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,EAAE,IAAI,CAAC;AACnD,oBAAA,MAAM,KAAK,CAAC,OAAO,CAAC;oBACpB;gBACF;YACF;QACF;;AAGA,QAAA,IAAI,SAAS,YAAY,KAAK,EAAE;AAC9B,YAAA,IAAI,SAAS,CAAC,IAAI,KAAK,cAAc,IAAI,SAAS,CAAC,IAAI,KAAK,YAAY,EAAE;AACxE,gBAAA,MAAM,IAAI,UAAU,CAClB,CAAA,wBAAA,EAA2B,IAAI,CAAC,SAAS,CAAA,EAAA,CAAI,EAC7C,CAAC,EACD,SAAS,CAAC,OAAO,CAClB;YACH;AACA,YAAA,MAAM,IAAI,UAAU,CAClB,CAAA,eAAA,EAAkB,SAAS,CAAC,OAAO,CAAA,CAAE,EACrC,CAAC,EACD,SAAS,CAAC,OAAO,CAClB;QACH;AACA,QAAA,MAAM,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;IAC1C;IAEQ,MAAM,IAAI,CAAI,IAAY,EAAE,IAA6B,EAAE,eAAwB,EAAE,UAAmB,EAAA;;;;AAI9G,QAAA,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,IAAI,UAAU,CAClB,4DAA4D;gBAC5D,iEAAiE,EACjE,CAAC,CACF;QACH;AAEA,QAAA,MAAM,OAAO,GAA2B;AACtC,YAAA,cAAc,EAAE,kBAAkB;;YAElC,WAAW,EAAE,IAAI,CAAC,MAAO;SAC1B;QACD,IAAI,eAAe,EAAE;AACnB,YAAA,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,QAAQ;QAC1C;AAEA,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,EAAG,IAAI,EAAE,EAAE;AAC7D,YAAA,MAAM,EAAE,MAAM;YACd,OAAO;AACP,YAAA,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,EAAE,UAAU,CAAC;AAEd,QAAA,OAAO,IAAI,CAAC,cAAc,CAAI,GAAG,CAAC;IACpC;IAEQ,MAAM,MAAM,CAAI,IAAY,EAAA;;AAElC,QAAA,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,IAAI,UAAU,CAClB,4DAA4D;gBAC5D,iEAAiE,EACjE,CAAC,CACF;QACH;AAEA,QAAA,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,CAAA,EAAG,IAAI,CAAC,MAAM,CAAA,EAAG,IAAI,EAAE,EAAE;AAC7D,YAAA,MAAM,EAAE,KAAK;;AAEb,YAAA,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,MAAO,EAAE;AACvC,SAAA,CAAC;QAEF,QAAQ,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;IACtC;IAEQ,MAAM,cAAc,CAAI,GAAa,EAAA;;QAC3C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;QACzC,QAAQ,MAAA,IAAI,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI;IAC3B;AAEA;;;;AAIG;IACK,MAAM,YAAY,CAAC,GAAa,EAAA;QACtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAA4B;AAEjG,QAAA,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;AACX,YAAA,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,KAAK;AAChC,kBAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI;kBAC7D,SAAS;AACb,YAAA,MAAM,IAAI,UAAU,CACjB,IAAI,CAAC,KAAgB,IAAI,CAAA,KAAA,EAAQ,GAAG,CAAC,MAAM,CAAA,CAAE,EAC9C,GAAG,CAAC,MAAM,EACV,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS,EACvD,UAAU,CACX;QACH;AAEA,QAAA,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,EAAE;AAC1B,YAAA,MAAM,IAAI,UAAU,CACjB,IAAI,CAAC,KAAgB,IAAI,4BAA4B,EACtD,GAAG,CAAC,MAAM,EACV,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,SAAS,CACxD;QACH;AAEA,QAAA,OAAO,IAAI;IACb;AACD;AAYD;;;;;;;;;;;;;;;;;;AAkBG;AACG,SAAU,oBAAoB,CAClC,KAAY,EAAA;AAEZ,IAAA,OAAO,OAAO,GAAY,KAAuB;;AAC/C,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE;AACzB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACxE;;;AAGA,QAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QACzD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AAC7C,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAC3F;AAEA,QAAA,IAAI,SAA6B;AACjC,QAAA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAA4B;;QAE1E,MAAM,GAAG,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI,CAAC,qBAAqB;AACxD,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG;YAAE,SAAS,GAAG,GAAG;AAEnD,QAAA,IAAI;AACF,YAAA,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;YAC/D,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;QACtC;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,MAAM,GAAG,GAAG,YAAY,UAAU,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG;AACxF,YAAA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,0BAA0B;AAC/E,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;QACtD;AACF,IAAA,CAAC;AACH;AAEA;;;;;;;;;;;;;;;;;;;;;;AAsBG;AACG,SAAU,uBAAuB,CACrC,KAAY,EAAA;AAEZ,IAAA,OAAO,OAAO,GAAG,EAAE,GAAG,KAAmB;;AACvC,QAAA,MAAM,MAAM,GAAI,GAA+B,CAAC,MAA4B;AAC5E,QAAA,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE;AAC/B,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;YACrD;QACF;;AAEA,QAAA,MAAM,OAAO,GAAI,GAA+B,CAAC,OAAoE;AACrH,QAAA,MAAM,EAAE,GAAG,CAAA,EAAA,IAAC,QAAO,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAG,cAAc,CAAC,CAAA,KAAK,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QAC/F,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AACpC,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC;YACxE;QACF;QAEA,MAAM,IAAI,IAAI,CAAA,EAAA,GAAA,GAAG,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE,CAA4B;QACxD,MAAM,GAAG,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI,CAAC,qBAAqB;AACxD,QAAA,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,GAAG,GAAG,GAAG,SAAS;AAElE,QAAA,IAAI;AACF,YAAA,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;AAC/D,YAAA,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;QAC1B;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,MAAM,GAAG,GAAG,YAAY,UAAU,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG;AACxF,YAAA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,0BAA0B;AAC/E,YAAA,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC7C;AACF,IAAA,CAAC;AACH;AAEA;;;AAGG;AACG,SAAU,oBAAoB,CAClC,KAAY,EAAA;AAEZ,IAAA,OAAO,OAAO,GAAY,KAAuB;;AAC/C,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE;AACzB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACxE;AACA,QAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QACzD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AAC7C,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAC3F;AAEA,QAAA,IAAI,SAA6B;AACjC,QAAA,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAA4B;QAC1E,MAAM,GAAG,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI,CAAC,qBAAqB;AACxD,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG;YAAE,SAAS,GAAG,GAAG;AAEnD,QAAA,IAAI;AACF,YAAA,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;;AAE/D,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC1D;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,MAAM,GAAG,GAAG,YAAY,UAAU,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG;AACxF,YAAA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,0BAA0B;AAC/E,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC;QACtD;AACF,IAAA,CAAC;AACH;AAEA;;;AAGG;AACG,SAAU,uBAAuB,CACrC,KAAY,EAAA;AAEZ,IAAA,OAAO,OAAO,GAAG,EAAE,GAAG,KAAmB;;AACvC,QAAA,MAAM,MAAM,GAAI,GAA+B,CAAC,MAA4B;AAC5E,QAAA,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE;AAC/B,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;YACrD;QACF;AACA,QAAA,MAAM,OAAO,GAAI,GAA+B,CAAC,OAAoE;AACrH,QAAA,MAAM,EAAE,GAAG,CAAA,EAAA,IAAC,QAAO,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAG,cAAc,CAAC,CAAA,KAAK,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QAC/F,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AACpC,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC;YACxE;QACF;QAEA,MAAM,IAAI,IAAI,CAAA,EAAA,GAAA,GAAG,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE,CAA4B;QACxD,MAAM,GAAG,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,IAAI,CAAC,qBAAqB;AACxD,QAAA,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,GAAG,GAAG,GAAG,SAAS;AAElE,QAAA,IAAI;AACF,YAAA,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC;;YAE/D,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;QAC9C;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,MAAM,GAAG,GAAG,YAAY,UAAU,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG;AACxF,YAAA,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,0BAA0B;AAC/E,YAAA,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAC7C;AACF,IAAA,CAAC;AACH;AAEA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCG;AACG,SAAU,WAAW,CAAC,GAA4B,EAAA;;IAEtD,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ,IAAI,GAAG,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,EAAE;;AAGvD,IAAA,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO;IAC3B,IAAI,OAAO,IAAI,OAAQ,OAA6B,CAAC,GAAG,KAAK,UAAU,EAAE;AACvE,QAAA,MAAM,GAAG,GAAG,CAAC,IAAY,KAAM,OAAiD,CAAC,GAAG,CAAC,IAAI,CAAC;AAE1F,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,kBAAkB,CAAC;AACpC,QAAA,IAAI,IAAI;AAAE,YAAA,OAAO,IAAI;AAErB,QAAA,MAAM,GAAG,GAAG,GAAG,CAAC,iBAAiB,CAAC;QAClC,IAAI,GAAG,EAAE;AACP,YAAA,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC1C,YAAA,IAAI,SAAS;AAAE,gBAAA,OAAO,SAAS;QACjC;AAEA,QAAA,MAAM,MAAM,GAAG,GAAG,CAAC,WAAW,CAAC;AAC/B,QAAA,IAAI,MAAM;AAAE,YAAA,OAAO,MAAM;IAC3B;;AAGA,IAAA,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;QAC1C,MAAM,CAAC,GAAG,OAAwD;AAElE,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,kBAAkB,CAAC;AAClC,QAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI;AAAE,YAAA,OAAO,IAAI;AAEjD,QAAA,MAAM,GAAG,GAAG,CAAC,CAAC,iBAAiB,CAAC;AAChC,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,EAAE;AAClC,YAAA,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC1C,YAAA,IAAI,SAAS;AAAE,gBAAA,OAAO,SAAS;QACjC;AACA,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE;AAChC,YAAA,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AAC7C,YAAA,IAAI,SAAS;AAAE,gBAAA,OAAO,SAAS;QACjC;AAEA,QAAA,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC;AAC7B,QAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM;AAAE,YAAA,OAAO,MAAM;IACzD;;AAGA,IAAA,MAAM,MAAM,GAAG,GAAG,CAAC,MAAgD;AACnE,IAAA,IAAI,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,MAAA,GAAA,MAAA,GAAN,MAAM,CAAE,aAAa;QAAE,OAAO,MAAM,CAAC,aAAa;AAEtD,IAAA,OAAO,SAAS;AAClB;AAgDA;;;AAGG;AACH,SAAS,iBAAiB,CACxB,IAA6B,EAAA;IAE7B,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,IAItC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE;QACvC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,mBAAmB,EAAE;IAClD;IACA,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,UAAU,EAAE;QACjD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAwB,EAAE;IACvD;AACA,IAAA,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE;QAC7F,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iDAAiD,EAAE;IAChF;AAEA,IAAA,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,CAAC;AAClD,IAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;AAC5B,QAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA,yBAAA,EAA4B,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,EAAE;IAChG;AAEA,IAAA,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,UAAU,EAAE;AAC/E;AAEA;;;;AAIG;AACH,eAAe,eAAe,CAC5B,KAAY,EACZ,OAA+B,EAC/B,KAAa,EACb,UAAkB,EAClB,OAAuB,EACvB,OAAgC,EAChC,eAAuB,EAAA;AAEvB,IAAA,IAAI,MAAc;AAClB,IAAA,IAAI;QACF,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC;IAC3C;IAAE,OAAO,GAAG,EAAE;QACZ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,0BAA0B,EAAE,MAAM,EAAE,GAAG,EAAE;IAC3G;IAEA,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE;AAChD,QAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,kDAAkD,EAAE,MAAM,EAAE,GAAG,EAAE;IAC9F;IACA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,EAAE;QAC5C,OAAO;AACL,YAAA,EAAE,EAAE,KAAK;YACT,KAAK,EAAE,CAAA,uCAAA,EAA0C,MAAM,CAAA,oDAAA,CAAsD;AAC7G,YAAA,MAAM,EAAE,GAAG;SACZ;IACH;AACA,IAAA,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE;IAEtB,IAAI,QAAQ,GAAG,KAAK;AACpB,IAAA,IAAI,OAAO,CAAC,WAAW,EAAE;AACvB,QAAA,IAAI;YACF,QAAQ,GAAG,MAAM,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC;QAC/C;QAAE,OAAO,GAAG,EAAE;YACZ,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,4BAA4B,EAAE,MAAM,EAAE,GAAG,EAAE;QAC7G;IACF;AAEA,IAAA,IAAI;QACF,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QACtG,OAAO;AACL,YAAA,EAAE,EAAE,IAAI;AACR,YAAA,IAAI,EAAE;gBACJ,aAAa,EAAE,MAAM,CAAC,aAAa;gBACnC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,SAAS,EAAE,MAAM,CAAC,SAAS;AAC5B,aAAA;SACF;IACH;IAAE,OAAO,GAAG,EAAE;AACZ,QAAA,IAAI,GAAG,YAAY,UAAU,EAAE;AAC7B,YAAA,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;gBAC1B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE;YAC3G;YACA,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,GAAG,GAAG,CAAC,UAAU,GAAG,GAAG;AACnF,YAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE;QAC1E;AACA,QAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,EAAE;IAC5D;AACF;AAEA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BG;AACG,SAAU,qBAAqB,CACnC,KAAY,EACZ,OAA+B,EAAA;AAE/B,IAAA,OAAO,OAAO,GAAY,KAAuB;;AAC/C,QAAA,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,EAAE;AACzB,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACxE;AACA,QAAA,MAAM,WAAW,GAAG,CAAA,EAAA,GAAA,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QACzD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AAC7C,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAC3F;AAEA,QAAA,IAAI,IAA6B;AACjC,QAAA,IAAI;AACF,YAAA,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE;QACzB;AAAE,QAAA,OAAA,EAAA,EAAM;AACN,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QACvE;AAEA,QAAA,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;AACd,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;QAChE;AAEA,QAAA,MAAM,OAAO,GAAG,MAAM,eAAe,CACnC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,EAC/D,IAAI,EAAE,WAAW,CAAC,GAAyC,CAAC,CAC7D;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;AACf,YAAA,MAAM,OAAO,GAA2B,OAAO,CAAC;kBAC5C,EAAE,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC;kBAC3C,EAAE;AACN,YAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,kBAAI,MAAM,EAAE,OAAO,CAAC,MAAM,KAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,GAAI;QACrI;QAEA,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AACpC,IAAA,CAAC;AACH;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BG;AACG,SAAU,wBAAwB,CACtC,KAAY,EACZ,OAA+B,EAAA;AAE/B,IAAA,OAAO,OAAO,GAAG,EAAE,GAAG,KAAmB;;AACvC,QAAA,MAAM,MAAM,GAAI,GAA+B,CAAC,MAA4B;AAC5E,QAAA,IAAI,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE;AAC/B,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;YACrD;QACF;AACA,QAAA,MAAM,OAAO,GAAI,GAA+B,CAAC,OAAoE;AACrH,QAAA,MAAM,EAAE,GAAG,CAAA,EAAA,IAAC,QAAO,OAAO,KAAA,IAAA,IAAP,OAAO,KAAA,MAAA,GAAA,MAAA,GAAP,OAAO,CAAG,cAAc,CAAC,CAAA,KAAK,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE;QAC/F,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;AACpC,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uCAAuC,EAAE,CAAC;YACxE;QACF;QAEA,MAAM,IAAI,IAAI,CAAA,EAAA,GAAA,GAAG,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,EAAA,GAAI,EAAE,CAA4B;AACxD,QAAA,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC;AACtC,QAAA,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;AACd,YAAA,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YAC7C;QACF;AAEA,QAAA,MAAM,OAAO,GAAG,MAAM,eAAe,CACnC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,OAAO,EAC/D,IAAI,EAAE,WAAW,CAAC,GAA8B,CAAC,CAClD;AAED,QAAA,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;YACf,IAAI,OAAO,CAAC,UAAU;AAAE,gBAAA,CAAA,EAAA,GAAA,GAAG,CAAC,SAAS,MAAA,IAAA,IAAA,EAAA,KAAA,MAAA,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAA,GAAA,EAAG,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAClF,YAAA,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;YACzD;QACF;AAEA,QAAA,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;AACxB,IAAA,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/sdk/errors.ts","../../src/utils/billingUtils.ts","../../src/server/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
@@ -22,7 +22,10 @@ export declare class OzElement {
22
22
  private _loadTimer;
23
23
  private pendingMessages;
24
24
  private handlers;
25
- constructor(elementType: AnyElementType, options: ElementOptions, vaultId: string, frameBaseUrl: string, fonts?: FontSource[], appearanceStyle?: ElementStyleConfig);
25
+ /** Called by OzVault when this element is destroyed so it can remove stale map entries. @internal */
26
+ private _onDestroy;
27
+ private debug;
28
+ constructor(elementType: AnyElementType, options: ElementOptions, vaultId: string, frameBaseUrl: string, fonts?: FontSource[], appearanceStyle?: ElementStyleConfig, onDestroy?: () => void, debug?: boolean);
26
29
  /** The element type this proxy represents. */
27
30
  get type(): AnyElementType;
28
31
  /** True once the element iframe has loaded and signalled ready. */
@@ -7,16 +7,10 @@ import { ElementType, BankElementType, ElementOptions, VaultOptions, TokenizeOpt
7
7
  * Use the static `OzVault.create()` factory — do not call `new OzVault()` directly.
8
8
  *
9
9
  * @example
10
+ * // Recommended — pass sessionUrl and let the SDK call your backend automatically
10
11
  * const vault = await OzVault.create({
11
- * pubKey: 'pk_live_...',
12
- * fetchWaxKey: async (sessionId) => {
13
- * // Call your backend — which calls ozura.mintWaxKey() from @ozura/elements/server
14
- * const { waxKey } = await fetch('/api/mint-wax', {
15
- * method: 'POST',
16
- * body: JSON.stringify({ sessionId }),
17
- * }).then(r => r.json());
18
- * return waxKey;
19
- * },
12
+ * pubKey: 'pk_prod_...', // or 'pk_test_...' for test mode
13
+ * sessionUrl: '/api/oz-session', // backend endpoint that calls ozura.createSession()
20
14
  * });
21
15
  * const cardNum = vault.createElement('cardNumber');
22
16
  * cardNum.mount('#card-number');
@@ -17,12 +17,12 @@
17
17
  *
18
18
  * @example
19
19
  * // Simplest — just pass sessionUrl, no need to call this directly
20
- * const vault = await OzVault.create({ pubKey: 'pk_live_...', sessionUrl: '/api/oz-session' });
20
+ * const vault = await OzVault.create({ pubKey: 'pk_prod_...', sessionUrl: '/api/oz-session' });
21
21
  *
22
22
  * @example
23
23
  * // Manual — use when you need custom headers
24
24
  * const vault = await OzVault.create({
25
- * pubKey: 'pk_live_...',
25
+ * pubKey: 'pk_prod_...',
26
26
  * getSessionKey: createSessionFetcher('/api/oz-session'),
27
27
  * });
28
28
  */
@@ -51,6 +51,13 @@ export interface OzuraConfig {
51
51
  timeoutMs?: number;
52
52
  /** Max retry attempts for 5xx / network errors. Default: 2 (up to 3 total attempts). Set 0 to disable. */
53
53
  retries?: number;
54
+ /**
55
+ * Enables structured debug logging to the server console.
56
+ * Logs method, path, HTTP status, and duration for every Pay API and vault request.
57
+ * Request bodies are included with sensitive fields (tokens, session keys) redacted.
58
+ * Never enable in production — for local development and CI debugging only.
59
+ */
60
+ debug?: boolean;
54
61
  }
55
62
  export declare class OzuraError extends Error {
56
63
  readonly statusCode: number;
@@ -155,6 +162,17 @@ export interface CardSaleInput {
155
162
  surchargePercent?: string;
156
163
  /** Defaults to "0.00". */
157
164
  tipAmount?: string;
165
+ /**
166
+ * Who initiated the transaction. Default: `'cit'` (customer-initiated) — correct
167
+ * for standard web checkouts. Override for MIT recurring charges (`'mit'`) or
168
+ * unscheduled credential-on-file charges (`'ucof'`).
169
+ */
170
+ transactionInitiationType?: 'cit' | 'mit' | 'ucof' | 'refund';
171
+ /**
172
+ * Channel through which the transaction is processed. Default: `'ecommerce'`.
173
+ * Override for MOTO (`'moto'`) or recurring scheduled charges (`'recurring'`).
174
+ */
175
+ transactionChannel?: 'cardPresent' | 'ecommerce' | 'moto' | 'recurring';
158
176
  }
159
177
  export interface ListTransactionsInput {
160
178
  /** Look up a single transaction by ID. When set, dateFrom/dateTo are not required. */
@@ -180,7 +198,15 @@ export declare class Ozura {
180
198
  private vaultUrl;
181
199
  private timeoutMs;
182
200
  private retries;
201
+ private debug;
183
202
  constructor(config: OzuraConfig);
203
+ /** Emits a `[Ozura]`-prefixed entry to `console.log`. No-op when `debug` is not set. */
204
+ private log;
205
+ /**
206
+ * Returns a copy of `body` with known-sensitive fields replaced by `'[REDACTED]'`.
207
+ * Used to make debug logs safe to emit without leaking vault tokens or session keys.
208
+ */
209
+ private static redactBody;
184
210
  /**
185
211
  * Charge a tokenized card. Maps the friendly `CardSaleInput` shape to the
186
212
  * Pay API's flat field format and handles headers, defaults, and errors.
@@ -418,27 +418,46 @@ export interface CardSaleRequest {
418
418
  amount: string;
419
419
  /** ISO 4217, e.g. "USD". */
420
420
  currency: string;
421
- /** From TokenResponse.token */
422
- ozuraCardToken: string;
421
+ /**
422
+ * Who initiated the transaction. Required by the Pay API.
423
+ * - `'cit'` — Customer-Initiated Transaction (default for web checkouts).
424
+ * - `'mit'` — Merchant-Initiated (scheduled recurring charge, customer not present).
425
+ * - `'ucof'` — Unscheduled Credential-on-File (threshold billing, account-updater, etc.).
426
+ * - `'refund'` — Voids, returns, reversals (not a stored-credential use).
427
+ */
428
+ transactionInitiationType: 'cit' | 'mit' | 'ucof' | 'refund';
429
+ /**
430
+ * Channel through which the transaction is processed. Required by the Pay API.
431
+ * - `'ecommerce'` — Online, customer self-serve (default for web checkouts).
432
+ * - `'moto'` — Mail order / telephone order.
433
+ * - `'cardPresent'`— POS / in-person.
434
+ * - `'recurring'` — Scheduled MIT charge; never the initial CIT charge.
435
+ */
436
+ transactionChannel: 'cardPresent' | 'ecommerce' | 'moto' | 'recurring';
437
+ /** From TokenResponse.token. The vault token representing the stored card. */
438
+ ozuraVaultToken: string;
423
439
  /** From TokenResponse.cvcSession */
424
440
  ozuraCvcSession: string;
425
441
  billingFirstName: string;
426
442
  billingLastName: string;
427
- /** Optional but must be non-empty if provided — Pay API enforces minLength 1. Omit the key rather than send "". */
443
+ /**
444
+ * Required by the Pay API (minLength 1). Optional here so merchants can omit it
445
+ * in rare server-side-only flows, but the Pay API will reject the request if absent.
446
+ */
428
447
  billingEmail?: string;
429
- /** E.164 format, max 50 chars. Optional but must be non-empty if provided. */
448
+ /** E.164 format, max 50 chars. Required by the Pay API; optional here for flexibility. */
430
449
  billingPhone?: string;
431
- /** Optional but must be non-empty if provided. */
450
+ /** Required by the Pay API; optional here for flexibility. Must be non-empty if provided. */
432
451
  billingAddress1?: string;
433
- /** Omit entirely if blank — schema enforces minLength 1 if present. */
452
+ /** Omit entirely if blank — Pay API schema enforces minLength 1 if present. */
434
453
  billingAddress2?: string;
435
- /** Optional but must be non-empty if provided. */
454
+ /** Required by the Pay API; optional here for flexibility. Must be non-empty if provided. */
436
455
  billingCity?: string;
437
- /** 2-letter state/province code. Optional but must be non-empty if provided. */
456
+ /** 2-letter state/province code. Required by the Pay API; optional here for flexibility. */
438
457
  billingState?: string;
439
- /** Optional but must be non-empty if provided. */
458
+ /** Required by the Pay API; optional here for flexibility. Must be non-empty if provided. */
440
459
  billingZipcode?: string;
441
- /** ISO 3166-1 alpha-2. Defaults to 'US'. */
460
+ /** ISO 3166-1 alpha-2. Required by the Pay API. Defaults to 'US' in `Ozura.cardSale()`. */
442
461
  billingCountry?: string;
443
462
  /** Fetch from your server — use an internal route, not api.ipify.org (ad-blockers block it). */
444
463
  clientIpAddress: string;
@@ -637,7 +656,7 @@ export interface TransactionQueryResponse {
637
656
  data: TransactionData[];
638
657
  pagination: TransactionQueryPagination;
639
658
  }
640
- export type OzMessageType = 'OZ_FRAME_READY' | 'OZ_INIT' | 'OZ_UPDATE' | 'OZ_CLEAR' | 'OZ_CHANGE' | 'OZ_FOCUS' | 'OZ_BLUR' | 'OZ_RESIZE' | 'OZ_BEGIN_COLLECT' | 'OZ_FIELD_VALUE' | 'OZ_TOKENIZE' | 'OZ_TOKEN_RESULT' | 'OZ_TOKEN_ERROR' | 'OZ_FOCUS_REQUEST' | 'OZ_BLUR_REQUEST' | 'OZ_SET_CVV_LENGTH' | 'OZ_BANK_TOKENIZE' | 'OZ_BANK_TOKEN_RESULT' | 'OZ_TOKENIZE_CANCEL';
659
+ export type OzMessageType = 'OZ_FRAME_READY' | 'OZ_INIT' | 'OZ_UPDATE' | 'OZ_CLEAR' | 'OZ_CHANGE' | 'OZ_FOCUS' | 'OZ_BLUR' | 'OZ_RESIZE' | 'OZ_BEGIN_COLLECT' | 'OZ_FIELD_VALUE' | 'OZ_TOKENIZE' | 'OZ_TOKEN_RESULT' | 'OZ_TOKEN_ERROR' | 'OZ_FOCUS_REQUEST' | 'OZ_BLUR_REQUEST' | 'OZ_SET_CVV_LENGTH' | 'OZ_BANK_TOKENIZE' | 'OZ_BANK_TOKEN_RESULT' | 'OZ_TOKENIZE_CANCEL' | 'OZ_DEBUG_LOG';
641
660
  export interface OzMessage {
642
661
  __oz: true;
643
662
  /** Protocol version stamped by the frame on OZ_FRAME_READY. Read by the SDK to detect stale CDN frames. */
@@ -14,7 +14,8 @@ import { BillingDetails } from '../types';
14
14
  export declare function validateEmail(email: string): boolean;
15
15
  /**
16
16
  * Validates E.164 phone format: starts with +, 1–3 digit country code,
17
- * followed by 7–12 digits, total ≤50 characters.
17
+ * followed by 7–12 digits, max 15 digits total (E.164 spec cap = 16 chars
18
+ * including the leading +).
18
19
  *
19
20
  * Matches the output of checkout's formatPhoneForAPI() function.
20
21
  * Examples: "+15551234567", "+447911123456", "+61412345678"
@@ -0,0 +1,88 @@
1
+ /**
2
+ * @ozura/elements/vue — Vue 3 wrapper for OzElements.
3
+ *
4
+ * Provides a context-based provider that creates and manages an OzVault instance,
5
+ * five individual field components, and a composable to access createToken +
6
+ * readiness state from anywhere inside the provider tree.
7
+ *
8
+ * Quick start:
9
+ * @example
10
+ * ```vue
11
+ * <script setup lang="ts">
12
+ * import { OzElements, OzCardNumber, OzExpiry, OzCvv, useOzElements } from '@ozura/elements/vue';
13
+ * const { createToken, ready } = useOzElements();
14
+ * </script>
15
+ *
16
+ * <template>
17
+ * <OzElements pub-key="pk_live_..." session-url="/api/oz-session">
18
+ * <OzCardNumber />
19
+ * <OzExpiry />
20
+ * <OzCvv />
21
+ * <button :disabled="!ready" @click="createToken()">Pay</button>
22
+ * </OzElements>
23
+ * </template>
24
+ * ```
25
+ */
26
+ import { type Ref, type ComputedRef } from 'vue';
27
+ import type { TokenizeOptions, TokenResponse, BankTokenizeOptions, BankTokenResponse, FontSource, Appearance } from '../types';
28
+ export interface OzElementsProps {
29
+ pubKey: string;
30
+ sessionUrl?: string;
31
+ getSessionKey?: (sessionId: string) => Promise<string>;
32
+ frameBaseUrl?: string;
33
+ fonts?: FontSource[];
34
+ appearance?: Appearance;
35
+ loadTimeoutMs?: number;
36
+ debug?: boolean;
37
+ }
38
+ /**
39
+ * Creates and owns an OzVault instance for the lifetime of this component.
40
+ * All field components must be rendered inside this provider.
41
+ */
42
+ export declare const OzElements: any;
43
+ export interface UseOzElementsReturn {
44
+ /**
45
+ * Tokenizes all mounted card fields. Resolves with a token and cvcSession
46
+ * that can be passed to the Ozura Pay API endpoint.
47
+ */
48
+ createToken: (options?: TokenizeOptions) => Promise<TokenResponse>;
49
+ /**
50
+ * Tokenizes mounted bank account fields (accountNumber + routingNumber).
51
+ */
52
+ createBankToken: (options: BankTokenizeOptions) => Promise<BankTokenResponse>;
53
+ /**
54
+ * True when the vault tokenizer and all mounted field iframes are ready.
55
+ * Gate your submit button on this.
56
+ */
57
+ ready: ComputedRef<boolean>;
58
+ /**
59
+ * Non-null when OzVault.create() rejected during initialization.
60
+ */
61
+ initError: Ref<Error | null>;
62
+ /**
63
+ * Number of successful tokenizations since the last session refresh.
64
+ */
65
+ tokenizeCount: Ref<number>;
66
+ /**
67
+ * Clears all mounted element fields without destroying the vault.
68
+ */
69
+ reset: () => void;
70
+ }
71
+ /**
72
+ * Returns createToken, createBankToken, ready, initError, tokenizeCount, and reset.
73
+ * Must be called from inside an <OzElements> provider tree.
74
+ *
75
+ * @throws {Error} if called outside an <OzElements> provider
76
+ */
77
+ export declare function useOzElements(): UseOzElementsReturn;
78
+ /** Card number field. Emits `change` (ElementChangeEvent), `focus`, `blur`. */
79
+ export declare const OzCardNumber: any;
80
+ /** Expiry date field. Emits `change` (ElementChangeEvent), `focus`, `blur`. */
81
+ export declare const OzExpiry: any;
82
+ /** CVV / CVC field. Emits `change` (ElementChangeEvent), `focus`, `blur`. */
83
+ export declare const OzCvv: any;
84
+ /** Bank account number field. Emits `change` (ElementChangeEvent), `focus`, `blur`. */
85
+ export declare const OzBankAccountNumber: any;
86
+ /** Bank routing number field. Emits `change` (ElementChangeEvent), `focus`, `blur`. */
87
+ export declare const OzBankRoutingNumber: any;
88
+ export type { ElementChangeEvent, TokenizeOptions, TokenResponse, BankTokenizeOptions, BankTokenResponse, Appearance, FontSource, } from '../types';