UNPKG

@stripe/ui-extension-sdk

Version:

The suite of functionality available to UI extensions in Stripe apps

41 lines (40 loc) 1.28 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.fetchViaFrame = void 0; const fetchAppEmbeddedKey_1 = require("./fetchAppEmbeddedKey"); const fetchViaFrame = async (url, options = {}) => { const apiKey = await (0, fetchAppEmbeddedKey_1.fetchAppEmbeddedKey)(); const init = { ...options, headers: { ...options.headers, Authorization: `Bearer ${apiKey}`, }, }; const response = await fetch(url, init); const headers = {}; response.headers.forEach((value, key) => { headers[key] = value; }); const serializableResponse = { json: undefined, arrayBuffer: undefined, headers, ok: response.ok, redirected: response.redirected, status: response.status, statusText: response.statusText, type: response.type, url: response.url, }; switch (response.headers.get('Content-Type')) { case 'application/json': serializableResponse.json = await response.json(); break; default: serializableResponse.arrayBuffer = await response.arrayBuffer(); break; } return serializableResponse; }; exports.fetchViaFrame = fetchViaFrame;