UNPKG

@fly/edge

Version:
34 lines 3.46 kB
"use strict"; /** * @module Backends */ Object.defineProperty(exports, "__esModule", { value: true }); exports.aerobatic = void 0; const proxy_1 = require("../proxy"); const subdomain_service_1 = require("./subdomain_service"); /** * Creates a `fetch` like function for proxying requests to hosted Aerobatic sites. * * Example: * ```typescript * import { aerobatic } from "./src/backends"; * const backend = aerobatic({ * subdomain: "sample" * }); * ``` * @param options Aerobatic site information. Accepts subdomain as a string. */ function aerobatic(options) { const config = subdomain_service_1.normalizeOptions(options); const aerobaticHost = `${config.subdomain}.aerobaticapp.com`; const uri = `https://${aerobaticHost}${config.directory}`; const headers = { "host": aerobaticHost, "x-forwarded-host": config.hostname || false }; const fn = proxy_1.proxy(uri, { headers: headers }); return Object.assign(fn, { proxyConfig: config }); } exports.aerobatic = aerobatic; aerobatic.normalizeOptions = subdomain_service_1.normalizeOptions; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWVyb2JhdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JhY2tlbmRzL2Flcm9iYXRpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7O0dBRUc7OztBQUVILG9DQUFnRDtBQUNoRCwyREFBeUU7QUFFekU7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxTQUFnQixTQUFTLENBQUMsT0FBa0M7SUFDMUQsTUFBTSxNQUFNLEdBQUcsb0NBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFekMsTUFBTSxhQUFhLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxtQkFBbUIsQ0FBQTtJQUM1RCxNQUFNLEdBQUcsR0FBRyxXQUFXLGFBQWEsR0FBRyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDekQsTUFBTSxPQUFPLEdBQUc7UUFDZCxNQUFNLEVBQUUsYUFBYTtRQUNyQixrQkFBa0IsRUFBRSxNQUFNLENBQUMsUUFBUSxJQUFJLEtBQUs7S0FDN0MsQ0FBQTtJQUVELE1BQU0sRUFBRSxHQUFHLGFBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUMzQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBQyxDQUFDLENBQUE7QUFDbEQsQ0FBQztBQVpELDhCQVlDO0FBRUQsU0FBUyxDQUFDLGdCQUFnQixHQUFHLG9DQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbW9kdWxlIEJhY2tlbmRzXG4gKi9cblxuaW1wb3J0IHsgcHJveHksIFByb3h5RnVuY3Rpb24gfSBmcm9tIFwiLi4vcHJveHlcIjtcbmltcG9ydCB7IG5vcm1hbGl6ZU9wdGlvbnMsIFN1YmRvbWFpbk9wdGlvbnMgfSBmcm9tIFwiLi9zdWJkb21haW5fc2VydmljZVwiO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBgZmV0Y2hgIGxpa2UgZnVuY3Rpb24gZm9yIHByb3h5aW5nIHJlcXVlc3RzIHRvIGhvc3RlZCBBZXJvYmF0aWMgc2l0ZXMuXG4gKiBcbiAqIEV4YW1wbGU6XG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBhZXJvYmF0aWMgfSBmcm9tIFwiLi9zcmMvYmFja2VuZHNcIjtcbiAqIGNvbnN0IGJhY2tlbmQgPSBhZXJvYmF0aWMoe1xuICogIHN1YmRvbWFpbjogXCJzYW1wbGVcIlxuICogfSk7XG4gKiBgYGBcbiAqIEBwYXJhbSBvcHRpb25zIEFlcm9iYXRpYyBzaXRlIGluZm9ybWF0aW9uLiBBY2NlcHRzIHN1YmRvbWFpbiBhcyBhIHN0cmluZy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGFlcm9iYXRpYyhvcHRpb25zOiBTdWJkb21haW5PcHRpb25zIHwgc3RyaW5nKTogUHJveHlGdW5jdGlvbjxTdWJkb21haW5PcHRpb25zPiB7XG4gIGNvbnN0IGNvbmZpZyA9IG5vcm1hbGl6ZU9wdGlvbnMob3B0aW9ucyk7XG5cbiAgY29uc3QgYWVyb2JhdGljSG9zdCA9IGAke2NvbmZpZy5zdWJkb21haW59LmFlcm9iYXRpY2FwcC5jb21gIFxuICBjb25zdCB1cmkgPSBgaHR0cHM6Ly8ke2Flcm9iYXRpY0hvc3R9JHtjb25maWcuZGlyZWN0b3J5fWBcbiAgY29uc3QgaGVhZGVycyA9IHtcbiAgICBcImhvc3RcIjogYWVyb2JhdGljSG9zdCxcbiAgICBcIngtZm9yd2FyZGVkLWhvc3RcIjogY29uZmlnLmhvc3RuYW1lIHx8IGZhbHNlXG4gIH1cblxuICBjb25zdCBmbiA9IHByb3h5KHVyaSwgeyBoZWFkZXJzOiBoZWFkZXJzIH0pXG4gIHJldHVybiBPYmplY3QuYXNzaWduKGZuLCB7IHByb3h5Q29uZmlnOiBjb25maWd9KVxufVxuXG5hZXJvYmF0aWMubm9ybWFsaXplT3B0aW9ucyA9IG5vcm1hbGl6ZU9wdGlvbnM7XG4iXX0=