@ozura/elements 0.1.0-beta.6 → 0.1.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +181 -14
- package/dist/frame/tokenizer-frame.js +34 -8
- package/dist/frame/tokenizer-frame.js.map +1 -1
- package/dist/oz-elements.esm.js +74 -11
- package/dist/oz-elements.esm.js.map +1 -1
- package/dist/oz-elements.umd.js +74 -11
- package/dist/oz-elements.umd.js.map +1 -1
- package/dist/react/index.cjs.js +104 -18
- package/dist/react/index.cjs.js.map +1 -1
- package/dist/react/index.esm.js +104 -18
- package/dist/react/index.esm.js.map +1 -1
- package/dist/react/react/index.d.ts +18 -3
- package/dist/react/sdk/OzVault.d.ts +39 -3
- package/dist/react/server/index.d.ts +106 -0
- package/dist/react/types/index.d.ts +30 -1
- package/dist/server/index.cjs.js +200 -0
- package/dist/server/index.cjs.js.map +1 -1
- package/dist/server/index.esm.js +199 -1
- package/dist/server/index.esm.js.map +1 -1
- package/dist/server/sdk/OzVault.d.ts +39 -3
- package/dist/server/server/index.d.ts +106 -0
- package/dist/server/types/index.d.ts +30 -1
- package/dist/types/sdk/OzVault.d.ts +39 -3
- package/dist/types/server/index.d.ts +106 -0
- package/dist/types/types/index.d.ts +30 -1
- package/package.json +1 -1
|
@@ -36,6 +36,11 @@ export interface OzuraConfig {
|
|
|
36
36
|
vaultKey: string;
|
|
37
37
|
/** Ozura Pay API base URL. Defaults to staging. */
|
|
38
38
|
apiUrl?: string;
|
|
39
|
+
/**
|
|
40
|
+
* Ozura Vault base URL. Used for `mintWaxKey` and `revokeWaxKey`.
|
|
41
|
+
* Defaults to the build-time vault URL (staging or production).
|
|
42
|
+
*/
|
|
43
|
+
vaultUrl?: string;
|
|
39
44
|
/** Request timeout in milliseconds. Default: 30000. */
|
|
40
45
|
timeoutMs?: number;
|
|
41
46
|
/** Max retry attempts for 5xx / network errors. Default: 2 (up to 3 total attempts). Set 0 to disable. */
|
|
@@ -47,6 +52,12 @@ export declare class OzuraError extends Error {
|
|
|
47
52
|
readonly retryAfter?: number;
|
|
48
53
|
constructor(message: string, statusCode: number, raw?: string, retryAfter?: number);
|
|
49
54
|
}
|
|
55
|
+
export interface MintWaxKeyResult {
|
|
56
|
+
/** Wax key UUID — pass as the `X-Wax-Key` header on vault tokenize calls. */
|
|
57
|
+
waxKey: string;
|
|
58
|
+
/** Seconds until the wax key expires. Typically 1800 (30 min). */
|
|
59
|
+
expiresInSeconds: number;
|
|
60
|
+
}
|
|
50
61
|
export interface CardSaleInput {
|
|
51
62
|
/** From TokenResponse.token (frontend SDK). */
|
|
52
63
|
token: string;
|
|
@@ -89,6 +100,7 @@ export declare class Ozura {
|
|
|
89
100
|
private apiKey;
|
|
90
101
|
private vaultKey;
|
|
91
102
|
private apiUrl;
|
|
103
|
+
private vaultUrl;
|
|
92
104
|
private timeoutMs;
|
|
93
105
|
private retries;
|
|
94
106
|
constructor(config: OzuraConfig);
|
|
@@ -105,6 +117,44 @@ export declare class Ozura {
|
|
|
105
117
|
* Rate limit: 200 requests/minute per merchant.
|
|
106
118
|
*/
|
|
107
119
|
listTransactions(input?: ListTransactionsInput): Promise<ListTransactionsResult>;
|
|
120
|
+
/**
|
|
121
|
+
* Mint a short-lived wax key from the vault.
|
|
122
|
+
*
|
|
123
|
+
* Call this server-side to implement the `fetchWaxKey` callback required by
|
|
124
|
+
* `OzVault.create()` on the frontend. The wax key replaces the vault secret
|
|
125
|
+
* on every browser tokenize call — the secret never leaves your server.
|
|
126
|
+
*
|
|
127
|
+
* The `tokenizationSessionId` passed to `fetchWaxKey` by the SDK should be
|
|
128
|
+
* forwarded here for correlation; it is stored by the vault alongside the
|
|
129
|
+
* wax key but is not used for authentication.
|
|
130
|
+
*
|
|
131
|
+
* @example
|
|
132
|
+
* // Next.js API route
|
|
133
|
+
* export async function POST(req: Request) {
|
|
134
|
+
* const { sessionId } = await req.json();
|
|
135
|
+
* const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
|
|
136
|
+
* return Response.json({ waxKey });
|
|
137
|
+
* }
|
|
138
|
+
*/
|
|
139
|
+
mintWaxKey(options?: {
|
|
140
|
+
tokenizationSessionId?: string;
|
|
141
|
+
}): Promise<MintWaxKeyResult>;
|
|
142
|
+
/**
|
|
143
|
+
* Revoke a previously minted wax key.
|
|
144
|
+
*
|
|
145
|
+
* Best-effort: never throws. Call this when the user's session ends (payment
|
|
146
|
+
* complete, cancelled, or expired) to close the exposure window before the
|
|
147
|
+
* vault TTL (30 min) elapses.
|
|
148
|
+
*
|
|
149
|
+
* - 200 = revoked successfully.
|
|
150
|
+
* - 404 = key already expired or not found — treated as success.
|
|
151
|
+
* - 503 = Redis error; the wax may still be valid. Retry if needed.
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* // After a successful card sale:
|
|
155
|
+
* await ozura.revokeWaxKey(waxKey);
|
|
156
|
+
*/
|
|
157
|
+
revokeWaxKey(waxKey: string): Promise<void>;
|
|
108
158
|
/**
|
|
109
159
|
* Execute a fetch with retry on 5xx / network errors.
|
|
110
160
|
* 4xx errors (including 429) are never retried — they require caller action.
|
|
@@ -114,6 +164,62 @@ export declare class Ozura {
|
|
|
114
164
|
private getRaw;
|
|
115
165
|
private handleResponse;
|
|
116
166
|
}
|
|
167
|
+
/** Minimal response shape required by {@link createMintWaxMiddleware}. */
|
|
168
|
+
interface NodeLikeResponse {
|
|
169
|
+
json(data: unknown): void;
|
|
170
|
+
status(code: number): NodeLikeResponse;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Creates a ready-to-use Fetch API route handler for minting wax keys.
|
|
174
|
+
*
|
|
175
|
+
* Drop-in for Next.js App Router, Cloudflare Workers, Vercel Edge, and any
|
|
176
|
+
* runtime built on the standard Web API `Request` / `Response`.
|
|
177
|
+
*
|
|
178
|
+
* The handler reads `sessionId` (or `tokenizationSessionId`) from the JSON
|
|
179
|
+
* request body, calls `ozura.mintWaxKey()`, and returns `{ waxKey }`.
|
|
180
|
+
* On error it returns `{ error }` with an appropriate HTTP status.
|
|
181
|
+
*
|
|
182
|
+
* @example
|
|
183
|
+
* // app/api/mint-wax/route.ts (Next.js App Router)
|
|
184
|
+
* import { Ozura, createMintWaxHandler } from '@ozura/elements/server';
|
|
185
|
+
*
|
|
186
|
+
* const ozura = new Ozura({
|
|
187
|
+
* merchantId: process.env.MERCHANT_ID!,
|
|
188
|
+
* apiKey: process.env.MERCHANT_API_KEY!,
|
|
189
|
+
* vaultKey: process.env.VAULT_API_KEY!,
|
|
190
|
+
* });
|
|
191
|
+
*
|
|
192
|
+
* export const POST = createMintWaxHandler(ozura);
|
|
193
|
+
*/
|
|
194
|
+
export declare function createMintWaxHandler(ozura: Ozura): (req: Request) => Promise<Response>;
|
|
195
|
+
/**
|
|
196
|
+
* Creates a ready-to-use Express / Connect middleware for minting wax keys.
|
|
197
|
+
*
|
|
198
|
+
* Requires `express.json()` (or equivalent body-parser) to be registered
|
|
199
|
+
* before this middleware so `req.body` is available.
|
|
200
|
+
*
|
|
201
|
+
* The middleware reads `sessionId` (or `tokenizationSessionId`) from
|
|
202
|
+
* `req.body`, calls `ozura.mintWaxKey()`, and sends `{ waxKey }`.
|
|
203
|
+
* On error it sends `{ error }` with an appropriate HTTP status.
|
|
204
|
+
*
|
|
205
|
+
* @example
|
|
206
|
+
* // Express
|
|
207
|
+
* import express from 'express';
|
|
208
|
+
* import { Ozura, createMintWaxMiddleware } from '@ozura/elements/server';
|
|
209
|
+
*
|
|
210
|
+
* const ozura = new Ozura({
|
|
211
|
+
* merchantId: process.env.MERCHANT_ID!,
|
|
212
|
+
* apiKey: process.env.MERCHANT_API_KEY!,
|
|
213
|
+
* vaultKey: process.env.VAULT_API_KEY!,
|
|
214
|
+
* });
|
|
215
|
+
*
|
|
216
|
+
* const app = express();
|
|
217
|
+
* app.use(express.json());
|
|
218
|
+
* app.post('/api/mint-wax', createMintWaxMiddleware(ozura));
|
|
219
|
+
*/
|
|
220
|
+
export declare function createMintWaxMiddleware(ozura: Ozura): (req: {
|
|
221
|
+
body?: unknown;
|
|
222
|
+
}, res: NodeLikeResponse) => Promise<void>;
|
|
117
223
|
/**
|
|
118
224
|
* Extract the client IP address from a server request object.
|
|
119
225
|
* Works with Express (`req.ip`), Fastify (`request.ip`), Next.js App Router
|
|
@@ -153,6 +153,36 @@ export interface VaultOptions {
|
|
|
153
153
|
/** System pub key required for tokenization. Obtain from Ozura admin.
|
|
154
154
|
* Sent as the `X-Pub-Key` header on tokenize requests. */
|
|
155
155
|
pubKey: string;
|
|
156
|
+
/**
|
|
157
|
+
* Called by the SDK with a SDK-generated `tokenizationSessionId` UUID during
|
|
158
|
+
* `OzVault.create()`. Implement this to call your backend, which should mint a
|
|
159
|
+
* wax key from the vault using your vault secret and return it here.
|
|
160
|
+
*
|
|
161
|
+
* The wax key is a short-lived, session-scoped credential (TTL ~30 min).
|
|
162
|
+
* It replaces the vault secret on every browser tokenize call — the secret
|
|
163
|
+
* never leaves your server.
|
|
164
|
+
*
|
|
165
|
+
* **Server-side (recommended):** Use `ozura.mintWaxKey()` from `oz-elements/server`:
|
|
166
|
+
* @example
|
|
167
|
+
* // Your API route (e.g. Next.js App Router):
|
|
168
|
+
* // POST /api/mint-wax
|
|
169
|
+
* // const { sessionId } = await req.json();
|
|
170
|
+
* // const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
|
|
171
|
+
* // return Response.json({ waxKey });
|
|
172
|
+
*
|
|
173
|
+
* **Client-side (fetchWaxKey callback):**
|
|
174
|
+
* @example
|
|
175
|
+
* fetchWaxKey: async (sessionId) => {
|
|
176
|
+
* const res = await fetch('/api/mint-wax', {
|
|
177
|
+
* method: 'POST',
|
|
178
|
+
* headers: { 'Content-Type': 'application/json' },
|
|
179
|
+
* body: JSON.stringify({ sessionId }),
|
|
180
|
+
* });
|
|
181
|
+
* const { waxKey } = await res.json();
|
|
182
|
+
* return waxKey;
|
|
183
|
+
* }
|
|
184
|
+
*/
|
|
185
|
+
fetchWaxKey: (tokenizationSessionId: string) => Promise<string>;
|
|
156
186
|
/** Base URL where the Ozura frame HTML/JS assets are served from.
|
|
157
187
|
* Defaults to the production CDN. Override for local development. */
|
|
158
188
|
frameBaseUrl?: string;
|
|
@@ -290,7 +320,6 @@ export interface BankTokenResponse {
|
|
|
290
320
|
*
|
|
291
321
|
* Headers required:
|
|
292
322
|
* x-api-key: <merchantApiKey>
|
|
293
|
-
* vault-api-key: <vaultApiKey> (same key passed to OzVault)
|
|
294
323
|
*/
|
|
295
324
|
export interface CardSaleRequest {
|
|
296
325
|
/** Processor to use. If omitted, the Pay API auto-selects (Elavon → Nuvei → Worldpay). */
|
package/dist/server/index.cjs.js
CHANGED
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
*/
|
|
31
31
|
// ─── Configuration ───────────────────────────────────────────────────────────
|
|
32
32
|
const DEFAULT_API_URL = "https://ozurapay-pay-api-v2-staging-c8abbdfhfbd3c5em.eastus-01.azurewebsites.net";
|
|
33
|
+
const DEFAULT_VAULT_URL = "https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net";
|
|
33
34
|
const DEFAULT_TIMEOUT = 30000;
|
|
34
35
|
// ─── Error ───────────────────────────────────────────────────────────────────
|
|
35
36
|
class OzuraError extends Error {
|
|
@@ -63,6 +64,7 @@ class Ozura {
|
|
|
63
64
|
this.apiKey = config.apiKey;
|
|
64
65
|
this.vaultKey = config.vaultKey;
|
|
65
66
|
this.apiUrl = config.apiUrl || DEFAULT_API_URL;
|
|
67
|
+
this.vaultUrl = config.vaultUrl || DEFAULT_VAULT_URL;
|
|
66
68
|
this.timeoutMs = (_a = config.timeoutMs) !== null && _a !== void 0 ? _a : DEFAULT_TIMEOUT;
|
|
67
69
|
this.retries = (_b = config.retries) !== null && _b !== void 0 ? _b : DEFAULT_RETRIES;
|
|
68
70
|
}
|
|
@@ -132,6 +134,102 @@ class Ozura {
|
|
|
132
134
|
const raw = await this.getRaw(`/api/v1/transQuery?${qs}`);
|
|
133
135
|
return { transactions: raw.data, pagination: raw.pagination };
|
|
134
136
|
}
|
|
137
|
+
// ─── Wax key helpers ─────────────────────────────────────────────────────
|
|
138
|
+
/**
|
|
139
|
+
* Mint a short-lived wax key from the vault.
|
|
140
|
+
*
|
|
141
|
+
* Call this server-side to implement the `fetchWaxKey` callback required by
|
|
142
|
+
* `OzVault.create()` on the frontend. The wax key replaces the vault secret
|
|
143
|
+
* on every browser tokenize call — the secret never leaves your server.
|
|
144
|
+
*
|
|
145
|
+
* The `tokenizationSessionId` passed to `fetchWaxKey` by the SDK should be
|
|
146
|
+
* forwarded here for correlation; it is stored by the vault alongside the
|
|
147
|
+
* wax key but is not used for authentication.
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* // Next.js API route
|
|
151
|
+
* export async function POST(req: Request) {
|
|
152
|
+
* const { sessionId } = await req.json();
|
|
153
|
+
* const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
|
|
154
|
+
* return Response.json({ waxKey });
|
|
155
|
+
* }
|
|
156
|
+
*/
|
|
157
|
+
async mintWaxKey(options) {
|
|
158
|
+
var _a, _b;
|
|
159
|
+
const body = {};
|
|
160
|
+
if (options === null || options === void 0 ? void 0 : options.tokenizationSessionId) {
|
|
161
|
+
body.checkout_session_id = options.tokenizationSessionId;
|
|
162
|
+
}
|
|
163
|
+
let res;
|
|
164
|
+
try {
|
|
165
|
+
res = await fetch(`${this.vaultUrl}/internal/wax-session`, {
|
|
166
|
+
method: 'POST',
|
|
167
|
+
headers: {
|
|
168
|
+
'Content-Type': 'application/json',
|
|
169
|
+
'X-API-Key': this.vaultKey,
|
|
170
|
+
},
|
|
171
|
+
body: JSON.stringify(body),
|
|
172
|
+
signal: AbortSignal.timeout(this.timeoutMs),
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
const msg = err instanceof Error ? err.message : 'Network error';
|
|
177
|
+
throw new OzuraError(`Wax key mint failed: ${msg}`, 0, msg);
|
|
178
|
+
}
|
|
179
|
+
const json = await res.json().catch(() => ({}));
|
|
180
|
+
if (res.status === 201) {
|
|
181
|
+
const data = json.data;
|
|
182
|
+
const waxKey = String((_a = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _a !== void 0 ? _a : '');
|
|
183
|
+
if (!waxKey) {
|
|
184
|
+
throw new OzuraError('Vault mint response missing data.wax_key', res.status, JSON.stringify(json));
|
|
185
|
+
}
|
|
186
|
+
return {
|
|
187
|
+
waxKey,
|
|
188
|
+
expiresInSeconds: Number((_b = data === null || data === void 0 ? void 0 : data.expires_in_seconds) !== null && _b !== void 0 ? _b : 1800),
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
const errorCode = json.error_code || '';
|
|
192
|
+
const message = json.message || json.error || `Wax mint failed (HTTP ${res.status})`;
|
|
193
|
+
throw new OzuraError(errorCode ? `${message} [${errorCode}]` : message, res.status, errorCode || JSON.stringify(json));
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Revoke a previously minted wax key.
|
|
197
|
+
*
|
|
198
|
+
* Best-effort: never throws. Call this when the user's session ends (payment
|
|
199
|
+
* complete, cancelled, or expired) to close the exposure window before the
|
|
200
|
+
* vault TTL (30 min) elapses.
|
|
201
|
+
*
|
|
202
|
+
* - 200 = revoked successfully.
|
|
203
|
+
* - 404 = key already expired or not found — treated as success.
|
|
204
|
+
* - 503 = Redis error; the wax may still be valid. Retry if needed.
|
|
205
|
+
*
|
|
206
|
+
* @example
|
|
207
|
+
* // After a successful card sale:
|
|
208
|
+
* await ozura.revokeWaxKey(waxKey);
|
|
209
|
+
*/
|
|
210
|
+
async revokeWaxKey(waxKey) {
|
|
211
|
+
var _a, _b;
|
|
212
|
+
if (!waxKey)
|
|
213
|
+
return;
|
|
214
|
+
try {
|
|
215
|
+
const res = await fetch(`${this.vaultUrl}/internal/wax-session/revoke`, {
|
|
216
|
+
method: 'POST',
|
|
217
|
+
headers: {
|
|
218
|
+
'Content-Type': 'application/json',
|
|
219
|
+
'X-API-Key': this.vaultKey,
|
|
220
|
+
},
|
|
221
|
+
body: JSON.stringify({ wax_key: waxKey }),
|
|
222
|
+
signal: AbortSignal.timeout(3000),
|
|
223
|
+
});
|
|
224
|
+
if (res.status === 200 || res.status === 404)
|
|
225
|
+
return;
|
|
226
|
+
const json = await res.json().catch(() => ({}));
|
|
227
|
+
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 : '');
|
|
228
|
+
}
|
|
229
|
+
catch (err) {
|
|
230
|
+
console.warn('[Ozura] revokeWaxKey: best-effort call failed:', err instanceof Error ? err.message : err);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
135
233
|
// ─── HTTP helpers ────────────────────────────────────────────────────────
|
|
136
234
|
/**
|
|
137
235
|
* Execute a fetch with retry on 5xx / network errors.
|
|
@@ -177,6 +275,13 @@ class Ozura {
|
|
|
177
275
|
throw new OzuraError('Network error', 0);
|
|
178
276
|
}
|
|
179
277
|
async post(path, body, includeVaultKey) {
|
|
278
|
+
// Enforce: the server SDK sends x-api-key on every request, so it must
|
|
279
|
+
// never be used to call the vault tokenize endpoint. Tokenization is
|
|
280
|
+
// client-side only (OzVault + tokenizerFrame). Surface misuse immediately.
|
|
281
|
+
if (/\/tokenize\b/i.test(path)) {
|
|
282
|
+
throw new OzuraError('The server SDK must not call the vault tokenize endpoint. ' +
|
|
283
|
+
'Tokenization must be performed client-side via the OzVault SDK.', 0);
|
|
284
|
+
}
|
|
180
285
|
const headers = {
|
|
181
286
|
'Content-Type': 'application/json',
|
|
182
287
|
'x-api-key': this.apiKey,
|
|
@@ -192,6 +297,11 @@ class Ozura {
|
|
|
192
297
|
return this.handleResponse(res);
|
|
193
298
|
}
|
|
194
299
|
async getRaw(path) {
|
|
300
|
+
// Enforce: same rule as post() — x-api-key must never reach /tokenize.
|
|
301
|
+
if (/\/tokenize\b/i.test(path)) {
|
|
302
|
+
throw new OzuraError('The server SDK must not call the vault tokenize endpoint. ' +
|
|
303
|
+
'Tokenization must be performed client-side via the OzVault SDK.', 0);
|
|
304
|
+
}
|
|
195
305
|
const res = await this.fetchWithRetry(`${this.apiUrl}${path}`, {
|
|
196
306
|
method: 'GET',
|
|
197
307
|
headers: { 'x-api-key': this.apiKey },
|
|
@@ -223,6 +333,94 @@ class Ozura {
|
|
|
223
333
|
return ((_a = json.data) !== null && _a !== void 0 ? _a : json);
|
|
224
334
|
}
|
|
225
335
|
}
|
|
336
|
+
/**
|
|
337
|
+
* Creates a ready-to-use Fetch API route handler for minting wax keys.
|
|
338
|
+
*
|
|
339
|
+
* Drop-in for Next.js App Router, Cloudflare Workers, Vercel Edge, and any
|
|
340
|
+
* runtime built on the standard Web API `Request` / `Response`.
|
|
341
|
+
*
|
|
342
|
+
* The handler reads `sessionId` (or `tokenizationSessionId`) from the JSON
|
|
343
|
+
* request body, calls `ozura.mintWaxKey()`, and returns `{ waxKey }`.
|
|
344
|
+
* On error it returns `{ error }` with an appropriate HTTP status.
|
|
345
|
+
*
|
|
346
|
+
* @example
|
|
347
|
+
* // app/api/mint-wax/route.ts (Next.js App Router)
|
|
348
|
+
* import { Ozura, createMintWaxHandler } from '@ozura/elements/server';
|
|
349
|
+
*
|
|
350
|
+
* const ozura = new Ozura({
|
|
351
|
+
* merchantId: process.env.MERCHANT_ID!,
|
|
352
|
+
* apiKey: process.env.MERCHANT_API_KEY!,
|
|
353
|
+
* vaultKey: process.env.VAULT_API_KEY!,
|
|
354
|
+
* });
|
|
355
|
+
*
|
|
356
|
+
* export const POST = createMintWaxHandler(ozura);
|
|
357
|
+
*/
|
|
358
|
+
function createMintWaxHandler(ozura) {
|
|
359
|
+
return async (req) => {
|
|
360
|
+
var _a;
|
|
361
|
+
let sessionId;
|
|
362
|
+
try {
|
|
363
|
+
const body = await req.json().catch(() => ({}));
|
|
364
|
+
const raw = (_a = body.sessionId) !== null && _a !== void 0 ? _a : body.tokenizationSessionId;
|
|
365
|
+
if (typeof raw === 'string' && raw)
|
|
366
|
+
sessionId = raw;
|
|
367
|
+
}
|
|
368
|
+
catch (_b) {
|
|
369
|
+
// unreadable body — proceed without sessionId
|
|
370
|
+
}
|
|
371
|
+
try {
|
|
372
|
+
const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
|
|
373
|
+
return Response.json({ waxKey });
|
|
374
|
+
}
|
|
375
|
+
catch (err) {
|
|
376
|
+
const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
|
|
377
|
+
const message = err instanceof Error ? err.message : 'Failed to mint wax key';
|
|
378
|
+
return Response.json({ error: message }, { status });
|
|
379
|
+
}
|
|
380
|
+
};
|
|
381
|
+
}
|
|
382
|
+
/**
|
|
383
|
+
* Creates a ready-to-use Express / Connect middleware for minting wax keys.
|
|
384
|
+
*
|
|
385
|
+
* Requires `express.json()` (or equivalent body-parser) to be registered
|
|
386
|
+
* before this middleware so `req.body` is available.
|
|
387
|
+
*
|
|
388
|
+
* The middleware reads `sessionId` (or `tokenizationSessionId`) from
|
|
389
|
+
* `req.body`, calls `ozura.mintWaxKey()`, and sends `{ waxKey }`.
|
|
390
|
+
* On error it sends `{ error }` with an appropriate HTTP status.
|
|
391
|
+
*
|
|
392
|
+
* @example
|
|
393
|
+
* // Express
|
|
394
|
+
* import express from 'express';
|
|
395
|
+
* import { Ozura, createMintWaxMiddleware } from '@ozura/elements/server';
|
|
396
|
+
*
|
|
397
|
+
* const ozura = new Ozura({
|
|
398
|
+
* merchantId: process.env.MERCHANT_ID!,
|
|
399
|
+
* apiKey: process.env.MERCHANT_API_KEY!,
|
|
400
|
+
* vaultKey: process.env.VAULT_API_KEY!,
|
|
401
|
+
* });
|
|
402
|
+
*
|
|
403
|
+
* const app = express();
|
|
404
|
+
* app.use(express.json());
|
|
405
|
+
* app.post('/api/mint-wax', createMintWaxMiddleware(ozura));
|
|
406
|
+
*/
|
|
407
|
+
function createMintWaxMiddleware(ozura) {
|
|
408
|
+
return async (req, res) => {
|
|
409
|
+
var _a, _b;
|
|
410
|
+
const body = ((_a = req.body) !== null && _a !== void 0 ? _a : {});
|
|
411
|
+
const raw = (_b = body.sessionId) !== null && _b !== void 0 ? _b : body.tokenizationSessionId;
|
|
412
|
+
const sessionId = typeof raw === 'string' && raw ? raw : undefined;
|
|
413
|
+
try {
|
|
414
|
+
const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
|
|
415
|
+
res.json({ waxKey });
|
|
416
|
+
}
|
|
417
|
+
catch (err) {
|
|
418
|
+
const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
|
|
419
|
+
const message = err instanceof Error ? err.message : 'Failed to mint wax key';
|
|
420
|
+
res.status(status).json({ error: message });
|
|
421
|
+
}
|
|
422
|
+
};
|
|
423
|
+
}
|
|
226
424
|
// ─── Utilities ────────────────────────────────────────────────────────────────
|
|
227
425
|
/**
|
|
228
426
|
* Extract the client IP address from a server request object.
|
|
@@ -282,5 +480,7 @@ function getClientIp(req) {
|
|
|
282
480
|
|
|
283
481
|
exports.Ozura = Ozura;
|
|
284
482
|
exports.OzuraError = OzuraError;
|
|
483
|
+
exports.createMintWaxHandler = createMintWaxHandler;
|
|
484
|
+
exports.createMintWaxMiddleware = createMintWaxMiddleware;
|
|
285
485
|
exports.getClientIp = getClientIp;
|
|
286
486
|
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../../src/server/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../../src/server/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|