@ozura/elements 1.0.2 → 1.1.0-next.22

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 (42) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +234 -86
  3. package/dist/frame/element-frame.js +92 -20
  4. package/dist/frame/element-frame.js.map +1 -1
  5. package/dist/frame/tokenizer-frame.html +1 -1
  6. package/dist/frame/tokenizer-frame.js +20 -4
  7. package/dist/frame/tokenizer-frame.js.map +1 -1
  8. package/dist/oz-elements.esm.js +477 -251
  9. package/dist/oz-elements.esm.js.map +1 -1
  10. package/dist/oz-elements.umd.js +478 -251
  11. package/dist/oz-elements.umd.js.map +1 -1
  12. package/dist/react/frame/elementFrame.d.ts +70 -1
  13. package/dist/react/frame/protocol.d.ts +12 -0
  14. package/dist/react/index.cjs.js +447 -225
  15. package/dist/react/index.cjs.js.map +1 -1
  16. package/dist/react/index.esm.js +448 -226
  17. package/dist/react/index.esm.js.map +1 -1
  18. package/dist/react/react/index.d.ts +70 -26
  19. package/dist/react/sdk/OzVault.d.ts +55 -5
  20. package/dist/react/sdk/createSessionFetcher.d.ts +29 -0
  21. package/dist/react/sdk/index.d.ts +6 -26
  22. package/dist/react/server/index.d.ts +126 -74
  23. package/dist/react/types/index.d.ts +72 -31
  24. package/dist/server/frame/elementFrame.d.ts +70 -1
  25. package/dist/server/frame/protocol.d.ts +12 -0
  26. package/dist/server/index.cjs.js +167 -78
  27. package/dist/server/index.cjs.js.map +1 -1
  28. package/dist/server/index.esm.js +166 -79
  29. package/dist/server/index.esm.js.map +1 -1
  30. package/dist/server/sdk/OzVault.d.ts +55 -5
  31. package/dist/server/sdk/createSessionFetcher.d.ts +29 -0
  32. package/dist/server/sdk/index.d.ts +6 -26
  33. package/dist/server/server/index.d.ts +126 -74
  34. package/dist/server/types/index.d.ts +72 -31
  35. package/dist/types/frame/elementFrame.d.ts +70 -1
  36. package/dist/types/frame/protocol.d.ts +12 -0
  37. package/dist/types/sdk/OzVault.d.ts +55 -5
  38. package/dist/types/sdk/createSessionFetcher.d.ts +29 -0
  39. package/dist/types/sdk/index.d.ts +6 -26
  40. package/dist/types/server/index.d.ts +126 -74
  41. package/dist/types/types/index.d.ts +72 -31
  42. package/package.json +1 -1
@@ -5,4 +5,73 @@
5
5
  * communicates with the host SDK via postMessage. Raw values NEVER leave this
6
6
  * file except when sent directly to the tokenizer frame (same-origin).
7
7
  */
8
- export {};
8
+ /**
9
+ * Validates a US ABA routing number using the standard checksum algorithm.
10
+ * The checksum is: (3*(d1+d4+d7) + 7*(d2+d5+d8) + 1*(d3+d6+d9)) mod 10 === 0
11
+ */
12
+ export declare function validateRoutingNumber(routing: string): boolean;
13
+ export declare const ALLOWED_STYLE_PROPERTIES: Set<string>;
14
+ export declare const BLOCKED_VALUE_PATTERNS: RegExp;
15
+ /** Matches `url('https://...')` or `url(https://...)` with optional `format('woff2')`. */
16
+ export declare const FONT_SRC_PATTERN: RegExp;
17
+ export declare const CSS_BREAKOUT: RegExp;
18
+ export declare function sanitizeCssString(value: string, maxLen: number): string;
19
+ export declare function sanitizeCssToken(value: string, maxLen?: number): string;
20
+ export declare class ElementFrame {
21
+ private elementType;
22
+ private vaultId;
23
+ private frameId;
24
+ private hostOrigin;
25
+ private rawValue;
26
+ private cardBrand;
27
+ private cvvMaxLength;
28
+ private _composing;
29
+ private _appliedBaseStyleKeys;
30
+ private _appliedStateStyleKeys;
31
+ private containerEl;
32
+ private inputEl;
33
+ private iconEl;
34
+ private liveRegion;
35
+ private options;
36
+ private _boundOnMessage;
37
+ constructor();
38
+ private buildDOM;
39
+ private getInputType;
40
+ private getAutocomplete;
41
+ private getDefaultPlaceholder;
42
+ private getAriaLabel;
43
+ private onInput;
44
+ private onKeydown;
45
+ private onFocus;
46
+ private onBlur;
47
+ private updateBrandIcon;
48
+ private isComplete;
49
+ private isValid;
50
+ private getError;
51
+ private emitChange;
52
+ private onMessage;
53
+ private placeholderStyleEl;
54
+ private applyOptions;
55
+ private applyStyles;
56
+ private static readonly PLACEHOLDER_INPUT_ID;
57
+ /** Clears all CSS properties that were applied from a state-style bucket
58
+ * (focus, complete, or invalid), then restores any that exist in the base
59
+ * style so that base values are not lost when transitioning between states. */
60
+ private clearStateStyles;
61
+ /** Clears stale state styles then re-applies the correct state bucket based
62
+ * on current focus and validity. Used after a base-style update so the
63
+ * on-screen state visual stays accurate without requiring user interaction. */
64
+ private reapplyStateStyles;
65
+ private applyPlaceholderStyles;
66
+ private fontsInjected;
67
+ private injectFonts;
68
+ /**
69
+ * Delivers this field's raw value to the tokenizer iframe via the MessagePort
70
+ * transferred in OZ_BEGIN_COLLECT. The port provides a direct channel that
71
+ * bypasses the merchant page entirely — no named-window lookup is needed.
72
+ */
73
+ private sendValueToTokenizer;
74
+ private sendResize;
75
+ private postToParent;
76
+ destroy(): void;
77
+ }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Shared postMessage protocol constants.
3
+ *
4
+ * PROTOCOL_VERSION must be incremented any time a breaking change is made to
5
+ * the postMessage message shape (new required fields, renamed types, removed
6
+ * fields, changed semantics). The SDK reads this value from OZ_FRAME_READY
7
+ * messages and warns when the frame and SDK are out of sync.
8
+ *
9
+ * Non-breaking additions (new optional fields, new message types that old
10
+ * frames can safely ignore) do NOT require a version bump.
11
+ */
12
+ export declare const PROTOCOL_VERSION = 1;
@@ -293,8 +293,8 @@ function validateBilling(billing) {
293
293
  * ```
294
294
  */
295
295
  // ─── Configuration ───────────────────────────────────────────────────────────
296
- const DEFAULT_API_URL = "https://payapi.v2.ozurapay.com";
297
- const DEFAULT_VAULT_URL = "https://api.ozuravault.com";
296
+ const DEFAULT_API_URL = "https://ozurapay-pay-api-v2-staging-c8abbdfhfbd3c5em.eastus-01.azurewebsites.net";
297
+ const DEFAULT_VAULT_URL = "https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net";
298
298
  const DEFAULT_TIMEOUT = 30000;
299
299
  // ─── Error ───────────────────────────────────────────────────────────────────
300
300
  class OzuraError extends Error {
@@ -422,46 +422,58 @@ class Ozura {
422
422
  const raw = await this.getRaw(`/api/v1/transQuery?${qs}`);
423
423
  return { transactions: raw.data, pagination: raw.pagination };
424
424
  }
425
- // ─── Wax key helpers ─────────────────────────────────────────────────────
425
+ // ─── Session helpers ──────────────────────────────────────────────────────
426
426
  /**
427
- * Mint a short-lived, use-limited wax key from the vault.
427
+ * Creates a short-lived payment session key from the vault.
428
428
  *
429
- * Call this server-side to implement the `fetchWaxKey` callback required by
430
- * `OzVault.create()` on the frontend. The wax key replaces the vault secret
431
- * on every browser tokenize call — the secret never leaves your server.
429
+ * Call this from your session endpoint (created with `createSessionMiddleware`
430
+ * or `createSessionHandler`) to issue a key that the frontend SDK will use for
431
+ * tokenization. The vault secret never leaves your server.
432
432
  *
433
- * **Use limits:** by default each wax key accepts up to 3 tokenize calls
434
- * (`maxTokenizeCalls: 3`). After that the vault marks the key as consumed and
435
- * the client SDK transparently re-mints. Keep `maxTokenizeCalls` in sync with
436
- * `VaultOptions.maxTokenizeCalls` so the SDK can proactively refresh before
437
- * hitting the limit rather than waiting for a rejection.
438
- *
439
- * **Session correlation:** the `tokenizationSessionId` forwarded from the SDK's
440
- * `fetchWaxKey` callback should be passed here so the vault can correlate the
441
- * key with the checkout session in its audit log.
433
+ * **Use limits:** each session key accepts up to `sessionLimit` (default 3)
434
+ * card submissions. After that the SDK automatically fetches a new session.
435
+ * Set `sessionLimit` to the same value in `VaultOptions` / `OzElementsProps`
436
+ * so the client can refresh proactively before hitting the limit.
442
437
  *
443
438
  * @example
444
- * // Next.js API route
439
+ * // Manual route (Next.js App Router)
445
440
  * export async function POST(req: Request) {
446
441
  * const { sessionId } = await req.json();
447
- * const { waxKey } = await ozura.mintWaxKey({
448
- * tokenizationSessionId: sessionId,
449
- * maxTokenizeCalls: 3,
450
- * });
451
- * return Response.json({ waxKey });
442
+ * const { sessionKey } = await ozura.createSession({ sessionId });
443
+ * return Response.json({ sessionKey });
452
444
  * }
445
+ *
446
+ * @example
447
+ * // One-liner with createSessionMiddleware (Express)
448
+ * app.post('/api/oz-session', createSessionMiddleware(ozura));
453
449
  */
454
- async mintWaxKey(options) {
450
+ async createSession(options) {
455
451
  var _a, _b, _c;
456
452
  const body = {};
457
- if (options === null || options === void 0 ? void 0 : options.tokenizationSessionId) {
458
- body.checkout_session_id = options.tokenizationSessionId;
453
+ if (options === null || options === void 0 ? void 0 : options.sessionId) {
454
+ body.checkout_session_id = options.sessionId;
455
+ }
456
+ // sessionLimit: null → omit field (vault default = unlimited).
457
+ // sessionLimit: undefined → secure default of 3.
458
+ // sessionLimit: number → use that value.
459
+ if ((options === null || options === void 0 ? void 0 : options.sessionLimit) === null) ;
460
+ else {
461
+ body.max_tokenize_calls = (_a = options === null || options === void 0 ? void 0 : options.sessionLimit) !== null && _a !== void 0 ? _a : 3;
459
462
  }
460
- // Always send max_tokenize_calls default 3 if not overridden.
461
- body.max_tokenize_calls = (_a = options === null || options === void 0 ? void 0 : options.maxTokenizeCalls) !== null && _a !== void 0 ? _a : 3;
462
- if ((options === null || options === void 0 ? void 0 : options.maxProxyCalls) !== undefined) {
463
+ // maxProxyCalls: null omit (unlimited). undefined omit (vault default).
464
+ if ((options === null || options === void 0 ? void 0 : options.maxProxyCalls) != null) {
463
465
  body.max_proxy_calls = options.maxProxyCalls;
464
466
  }
467
+ if (options === null || options === void 0 ? void 0 : options.orderId)
468
+ body.order_id = options.orderId;
469
+ if (options === null || options === void 0 ? void 0 : options.customerId)
470
+ body.merchant_customer_id = options.customerId;
471
+ if (options === null || options === void 0 ? void 0 : options.cartId)
472
+ body.cart_id = options.cartId;
473
+ if (options === null || options === void 0 ? void 0 : options.metadata)
474
+ body.metadata = options.metadata;
475
+ if (options === null || options === void 0 ? void 0 : options.ttlSeconds)
476
+ body.ttl_seconds = options.ttlSeconds;
465
477
  const res = await this.fetchWithRetry(`${this.vaultUrl}/internal/wax-session`, {
466
478
  method: 'POST',
467
479
  headers: {
@@ -473,37 +485,37 @@ class Ozura {
473
485
  const json = await res.json().catch(() => ({}));
474
486
  if (res.status === 201) {
475
487
  const data = json.data;
476
- const waxKey = String((_b = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _b !== void 0 ? _b : '');
477
- if (!waxKey) {
478
- throw new OzuraError('Vault mint response missing data.wax_key', res.status, JSON.stringify(json));
488
+ const sessionKey = String((_b = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _b !== void 0 ? _b : '');
489
+ if (!sessionKey) {
490
+ throw new OzuraError('Vault session response missing data.wax_key', res.status, JSON.stringify(json));
479
491
  }
480
492
  return {
481
- waxKey,
493
+ sessionKey,
482
494
  expiresInSeconds: Number((_c = data === null || data === void 0 ? void 0 : data.expires_in_seconds) !== null && _c !== void 0 ? _c : 1800),
483
495
  };
484
496
  }
485
497
  const errorCode = json.error_code || '';
486
- const message = json.message || json.error || `Wax mint failed (HTTP ${res.status})`;
498
+ const message = json.message || json.error || `Session creation failed (HTTP ${res.status})`;
487
499
  throw new OzuraError(errorCode ? `${message} [${errorCode}]` : message, res.status, errorCode || JSON.stringify(json));
488
500
  }
489
501
  /**
490
- * Revoke a previously minted wax key.
502
+ * Revokes a payment session key.
491
503
  *
492
- * Best-effort: never throws. Call this when the user's session ends (payment
493
- * complete, cancelled, or expired) to close the exposure window before the
494
- * vault TTL (30 min) elapses.
504
+ * Best-effort: never throws. Call this when the user's checkout ends (payment
505
+ * complete, cancelled, or abandoned) to close the key's exposure window before
506
+ * the vault TTL (30 min) elapses.
495
507
  *
496
508
  * - 200 = revoked successfully.
497
509
  * - 404 = key already expired or not found — treated as success.
498
- * - 503 = Redis error; the wax may still be valid. Retry if needed.
510
+ * - 503 = Redis error; the key may still be valid. Retry if needed.
499
511
  *
500
512
  * @example
501
513
  * // After a successful card sale:
502
- * await ozura.revokeWaxKey(waxKey);
514
+ * await ozura.revokeSession(sessionKey);
503
515
  */
504
- async revokeWaxKey(waxKey) {
516
+ async revokeSession(sessionKey) {
505
517
  var _a, _b;
506
- if (!waxKey)
518
+ if (!sessionKey)
507
519
  return;
508
520
  try {
509
521
  const res = await fetch(`${this.vaultUrl}/internal/wax-session/revoke`, {
@@ -512,18 +524,35 @@ class Ozura {
512
524
  'Content-Type': 'application/json',
513
525
  'X-API-Key': this.vaultKey,
514
526
  },
515
- body: JSON.stringify({ wax_key: waxKey }),
527
+ body: JSON.stringify({ wax_key: sessionKey }),
516
528
  signal: timeoutSignal(3000),
517
529
  });
518
530
  if (res.status === 200 || res.status === 404)
519
531
  return;
520
532
  const json = await res.json().catch(() => ({}));
521
- console.warn('[Ozura] revokeWaxKey: unexpected status', res.status, (_b = (_a = json.error_code) !== null && _a !== void 0 ? _a : json.message) !== null && _b !== void 0 ? _b : '');
533
+ console.warn('[Ozura] revokeSession: unexpected status', res.status, (_b = (_a = json.error_code) !== null && _a !== void 0 ? _a : json.message) !== null && _b !== void 0 ? _b : '');
522
534
  }
523
535
  catch (err) {
524
- console.warn('[Ozura] revokeWaxKey: best-effort call failed:', err instanceof Error ? err.message : err);
536
+ console.warn('[Ozura] revokeSession: best-effort call failed:', err instanceof Error ? err.message : err);
525
537
  }
526
538
  }
539
+ /**
540
+ * @deprecated Use {@link createSession} instead.
541
+ */
542
+ async mintWaxKey(options) {
543
+ const { sessionKey, expiresInSeconds } = await this.createSession({
544
+ sessionId: options === null || options === void 0 ? void 0 : options.tokenizationSessionId,
545
+ sessionLimit: options === null || options === void 0 ? void 0 : options.maxTokenizeCalls,
546
+ maxProxyCalls: options === null || options === void 0 ? void 0 : options.maxProxyCalls,
547
+ });
548
+ return { waxKey: sessionKey, expiresInSeconds };
549
+ }
550
+ /**
551
+ * @deprecated Use {@link revokeSession} instead.
552
+ */
553
+ async revokeWaxKey(waxKey) {
554
+ return this.revokeSession(waxKey);
555
+ }
527
556
  // ─── HTTP helpers ────────────────────────────────────────────────────────
528
557
  /**
529
558
  * Execute a fetch with retry on 5xx / network errors.
@@ -629,82 +658,77 @@ class Ozura {
629
658
  }
630
659
  }
631
660
  /**
632
- * Creates a ready-to-use Fetch API route handler for minting wax keys.
661
+ * Creates a ready-to-use Fetch API route handler for payment session creation.
633
662
  *
634
663
  * Drop-in for Next.js App Router, Cloudflare Workers, Vercel Edge, and any
635
664
  * runtime built on the standard Web API `Request` / `Response`.
636
665
  *
637
- * The handler reads `sessionId` (or `tokenizationSessionId`) from the JSON
638
- * request body, calls `ozura.mintWaxKey()`, and returns `{ waxKey }`.
666
+ * The handler reads `sessionId` from the JSON request body, calls
667
+ * `ozura.createSession()`, and returns `{ sessionKey }`.
639
668
  * On error it returns `{ error }` with an appropriate HTTP status.
640
669
  *
641
- * @example
642
- * // app/api/mint-wax/route.ts (Next.js App Router)
643
- * import { Ozura, createMintWaxHandler } from '@ozura/elements/server';
670
+ * Pair with `sessionUrl` on the frontend — no other configuration needed.
644
671
  *
645
- * const ozura = new Ozura({
646
- * merchantId: process.env.MERCHANT_ID!,
647
- * apiKey: process.env.MERCHANT_API_KEY!,
648
- * vaultKey: process.env.VAULT_API_KEY!,
649
- * });
672
+ * @example
673
+ * // app/api/oz-session/route.ts (Next.js App Router)
674
+ * import { Ozura, createSessionHandler } from '@ozura/elements/server';
650
675
  *
651
- * export const POST = createMintWaxHandler(ozura);
676
+ * const ozura = new Ozura({ vaultKey: process.env.VAULT_API_KEY! });
677
+ * export const POST = createSessionHandler(ozura);
652
678
  */
653
- function createMintWaxHandler(ozura) {
679
+ function createSessionHandler(ozura) {
654
680
  return async (req) => {
655
681
  var _a, _b;
656
682
  if (req.method !== 'POST') {
657
683
  return Response.json({ error: 'Method Not Allowed' }, { status: 405 });
658
684
  }
659
- // Reject non-JSON bodies — blocks simple-form CSRF requests which send
660
- // application/x-www-form-urlencoded and cannot set Content-Type to
661
- // application/json without triggering a CORS preflight.
685
+ // Reject non-JSON bodies — blocks simple-form CSRF requests which cannot
686
+ // set Content-Type to application/json without triggering a CORS preflight.
662
687
  const contentType = (_a = req.headers.get('content-type')) !== null && _a !== void 0 ? _a : '';
663
688
  if (!contentType.includes('application/json')) {
664
689
  return Response.json({ error: 'Content-Type must be application/json' }, { status: 415 });
665
690
  }
666
691
  let sessionId;
667
692
  const body = await req.json().catch(() => ({}));
693
+ // Accept both current `sessionId` and legacy `tokenizationSessionId` keys.
668
694
  const raw = (_b = body.sessionId) !== null && _b !== void 0 ? _b : body.tokenizationSessionId;
669
695
  if (typeof raw === 'string' && raw)
670
696
  sessionId = raw;
671
697
  try {
672
- const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
673
- return Response.json({ waxKey });
698
+ const { sessionKey } = await ozura.createSession({ sessionId });
699
+ return Response.json({ sessionKey });
674
700
  }
675
701
  catch (err) {
676
702
  const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
677
- const message = err instanceof Error ? err.message : 'Failed to mint wax key';
703
+ const message = err instanceof Error ? err.message : 'Failed to create session';
678
704
  return Response.json({ error: message }, { status });
679
705
  }
680
706
  };
681
707
  }
682
708
  /**
683
- * Creates a ready-to-use Express / Connect middleware for minting wax keys.
709
+ * Creates a ready-to-use Express / Connect middleware for payment session creation.
684
710
  *
685
711
  * Requires `express.json()` (or equivalent body-parser) to be registered
686
712
  * before this middleware so `req.body` is available.
687
713
  *
688
- * The middleware reads `sessionId` (or `tokenizationSessionId`) from
689
- * `req.body`, calls `ozura.mintWaxKey()`, and sends `{ waxKey }`.
714
+ * The middleware reads `sessionId` from `req.body`, calls
715
+ * `ozura.createSession()`, and sends `{ sessionKey }`.
690
716
  * On error it sends `{ error }` with an appropriate HTTP status.
691
717
  *
718
+ * Pair with `sessionUrl` on the frontend — no other configuration needed.
719
+ *
692
720
  * @example
693
721
  * // Express
694
722
  * import express from 'express';
695
- * import { Ozura, createMintWaxMiddleware } from '@ozura/elements/server';
723
+ * import { Ozura, createSessionMiddleware } from '@ozura/elements/server';
696
724
  *
697
- * const ozura = new Ozura({
698
- * merchantId: process.env.MERCHANT_ID!,
699
- * apiKey: process.env.MERCHANT_API_KEY!,
700
- * vaultKey: process.env.VAULT_API_KEY!,
701
- * });
725
+ * const ozura = new Ozura({ vaultKey: process.env.VAULT_API_KEY! });
702
726
  *
703
727
  * const app = express();
704
728
  * app.use(express.json());
705
- * app.post('/api/mint-wax', createMintWaxMiddleware(ozura));
729
+ * app.post('/api/oz-session', createSessionMiddleware(ozura));
706
730
  */
707
- function createMintWaxMiddleware(ozura) {
731
+ function createSessionMiddleware(ozura) {
708
732
  return async (req, res) => {
709
733
  var _a, _b, _c;
710
734
  const method = req.method;
@@ -713,7 +737,6 @@ function createMintWaxMiddleware(ozura) {
713
737
  return;
714
738
  }
715
739
  // Reject non-JSON content types — blocks simple-form CSRF requests.
716
- // Express sets req.headers as a plain object; check it directly.
717
740
  const headers = req.headers;
718
741
  const ct = (_a = (typeof (headers === null || headers === void 0 ? void 0 : headers['content-type']) === 'string' ? headers['content-type'] : '')) !== null && _a !== void 0 ? _a : '';
719
742
  if (!ct.includes('application/json')) {
@@ -724,12 +747,76 @@ function createMintWaxMiddleware(ozura) {
724
747
  const raw = (_c = body.sessionId) !== null && _c !== void 0 ? _c : body.tokenizationSessionId;
725
748
  const sessionId = typeof raw === 'string' && raw ? raw : undefined;
726
749
  try {
727
- const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
728
- res.json({ waxKey });
750
+ const { sessionKey } = await ozura.createSession({ sessionId });
751
+ res.json({ sessionKey });
752
+ }
753
+ catch (err) {
754
+ const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
755
+ const message = err instanceof Error ? err.message : 'Failed to create session';
756
+ res.status(status).json({ error: message });
757
+ }
758
+ };
759
+ }
760
+ /**
761
+ * @deprecated Use {@link createSessionHandler} instead.
762
+ * Returns `{ waxKey }` for backward compatibility with old `createFetchWaxKey` backends.
763
+ */
764
+ function createMintWaxHandler(ozura) {
765
+ return async (req) => {
766
+ var _a, _b;
767
+ if (req.method !== 'POST') {
768
+ return Response.json({ error: 'Method Not Allowed' }, { status: 405 });
769
+ }
770
+ const contentType = (_a = req.headers.get('content-type')) !== null && _a !== void 0 ? _a : '';
771
+ if (!contentType.includes('application/json')) {
772
+ return Response.json({ error: 'Content-Type must be application/json' }, { status: 415 });
773
+ }
774
+ let sessionId;
775
+ const body = await req.json().catch(() => ({}));
776
+ const raw = (_b = body.sessionId) !== null && _b !== void 0 ? _b : body.tokenizationSessionId;
777
+ if (typeof raw === 'string' && raw)
778
+ sessionId = raw;
779
+ try {
780
+ const { sessionKey } = await ozura.createSession({ sessionId });
781
+ // Return `waxKey` for backward compat with old createFetchWaxKey clients.
782
+ return Response.json({ waxKey: sessionKey, sessionKey });
783
+ }
784
+ catch (err) {
785
+ const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
786
+ const message = err instanceof Error ? err.message : 'Failed to create session';
787
+ return Response.json({ error: message }, { status });
788
+ }
789
+ };
790
+ }
791
+ /**
792
+ * @deprecated Use {@link createSessionMiddleware} instead.
793
+ * Sends `{ waxKey }` for backward compatibility with old `createFetchWaxKey` clients.
794
+ */
795
+ function createMintWaxMiddleware(ozura) {
796
+ return async (req, res) => {
797
+ var _a, _b, _c;
798
+ const method = req.method;
799
+ if (method && method !== 'POST') {
800
+ res.status(405).json({ error: 'Method Not Allowed' });
801
+ return;
802
+ }
803
+ const headers = req.headers;
804
+ const ct = (_a = (typeof (headers === null || headers === void 0 ? void 0 : headers['content-type']) === 'string' ? headers['content-type'] : '')) !== null && _a !== void 0 ? _a : '';
805
+ if (!ct.includes('application/json')) {
806
+ res.status(415).json({ error: 'Content-Type must be application/json' });
807
+ return;
808
+ }
809
+ const body = ((_b = req.body) !== null && _b !== void 0 ? _b : {});
810
+ const raw = (_c = body.sessionId) !== null && _c !== void 0 ? _c : body.tokenizationSessionId;
811
+ const sessionId = typeof raw === 'string' && raw ? raw : undefined;
812
+ try {
813
+ const { sessionKey } = await ozura.createSession({ sessionId });
814
+ // Send both keys for backward compat with old createFetchWaxKey clients.
815
+ res.json({ waxKey: sessionKey, sessionKey });
729
816
  }
730
817
  catch (err) {
731
818
  const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
732
- const message = err instanceof Error ? err.message : 'Failed to mint wax key';
819
+ const message = err instanceof Error ? err.message : 'Failed to create session';
733
820
  res.status(status).json({ error: message });
734
821
  }
735
822
  };
@@ -1021,6 +1108,8 @@ exports.createCardSaleHandler = createCardSaleHandler;
1021
1108
  exports.createCardSaleMiddleware = createCardSaleMiddleware;
1022
1109
  exports.createMintWaxHandler = createMintWaxHandler;
1023
1110
  exports.createMintWaxMiddleware = createMintWaxMiddleware;
1111
+ exports.createSessionHandler = createSessionHandler;
1112
+ exports.createSessionMiddleware = createSessionMiddleware;
1024
1113
  exports.getClientIp = getClientIp;
1025
1114
  exports.normalizeCardSaleError = normalizeCardSaleError;
1026
1115
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../../src/sdk/errors.ts","../../src/utils/billingUtils.ts","../../src/server/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../../src/sdk/errors.ts","../../src/utils/billingUtils.ts","../../src/server/index.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}