UNPKG

@fly/edge

Version:
45 lines 5.27 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.normalizeOptions = exports.optionNormalizer = void 0; /** * @module Backends */ const util_1 = require("../util"); const errors = require("../errors"); /** @hidden */ function optionNormalizer(map) { return function normalize(input) { if (!map) map = {}; const options = { subdomain: "", directory: "/" }; if (typeof input === "string") { options.subdomain = input.trim(); } else if (util_1.isObject(input)) { for (const k of ["subdomain", "directory", "hostname"]) { let alias = map[k]; if (!alias && alias !== false) { alias = k; } if (alias !== false && input[alias]) { const value = input[alias]; options[k] = typeof value === "string" ? value.trim() : value; } } } else { throw errors.invalidInput("options must be a SubdomainOptions object or string"); } if (!options.subdomain) { throw errors.invalidProperty(map["subdomain"] || "subdomain", "is required"); } return options; }; } exports.optionNormalizer = optionNormalizer; /** @hidden */ exports.normalizeOptions = optionNormalizer(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViZG9tYWluX3NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmFja2VuZHMvc3ViZG9tYWluX3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7O0dBRUc7QUFDSCxrQ0FBMEM7QUFDMUMsb0NBQW9DO0FBZXBDLGNBQWM7QUFDZCxTQUFnQixnQkFBZ0IsQ0FBQyxHQUE4QztJQUM3RSxPQUFPLFNBQVMsU0FBUyxDQUFDLEtBQWM7UUFDdEMsSUFBRyxDQUFDLEdBQUc7WUFBRSxHQUFHLEdBQUcsRUFBRSxDQUFBO1FBQ2pCLE1BQU0sT0FBTyxHQUFxQjtZQUNoQyxTQUFTLEVBQUUsRUFBRTtZQUNiLFNBQVMsRUFBRSxHQUFHO1NBQ2YsQ0FBQztRQUVGLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1lBQzdCLE9BQU8sQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2xDO2FBQU0sSUFBSSxlQUFRLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsS0FBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEVBQUM7Z0JBQ3BELElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtnQkFDbEIsSUFBRyxDQUFDLEtBQUssSUFBSSxLQUFLLEtBQUssS0FBSyxFQUFDO29CQUMzQixLQUFLLEdBQUcsQ0FBQyxDQUFBO2lCQUNWO2dCQUNELElBQUcsS0FBSyxLQUFLLEtBQUssSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUM7b0JBQ2pDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDMUIsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7aUJBQy9EO2FBQ0Y7U0FDRjthQUFNO1lBQ0wsTUFBTSxNQUFNLENBQUMsWUFBWSxDQUFDLHFEQUFxRCxDQUFDLENBQUM7U0FDbEY7UUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUN0QixNQUFNLE1BQU0sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLFdBQVcsRUFBRSxhQUFhLENBQUMsQ0FBQztTQUM5RTtRQUVELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUMsQ0FBQTtBQUNILENBQUM7QUEvQkQsNENBK0JDO0FBRUQsY0FBYztBQUNELFFBQUEsZ0JBQWdCLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBCYWNrZW5kc1xuICovXG5pbXBvcnQgeyBpc09iamVjdCwgbWVyZ2UgfSBmcm9tIFwiLi4vdXRpbFwiO1xuaW1wb3J0ICogYXMgZXJyb3JzIGZyb20gXCIuLi9lcnJvcnNcIjtcblxuLyoqXG4gKiBTZXR0aW5ncyBmb3IgYmFja2VuZHMgdGhhdCB1c2Ugc3ViZG9tYWluc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1YmRvbWFpbk9wdGlvbnMge1xuICBbazogc3RyaW5nXTogc3RyaW5nIHwgdW5kZWZpbmVkXG4gIC8qKiBCYWNrZW5kJ3Mgc3ViZG9tYWluOiA8c3ViZG9tYWluPi5leGFtcGxlLmNvbSAqL1xuICBzdWJkb21haW46IHN0cmluZyxcbiAgLyoqIFN1YmRpcmVjdG9yeSBzaXRlIGlzIHNlcnZlZCBmcm9tIChpZiBhbnkpICovXG4gIGRpcmVjdG9yeT86IHN0cmluZyxcbiAgLyoqIElmIHRoZSBCYWNrZW5kIGV4cGVjdHMgYSBzcGVjaWZpYyB4LWZvcndhcmRlZC1ob3N0LCB3ZSBuZWVkIHRoYXQgdG8gcHJveHkgcHJvcGVybHkgKi9cbiAgaG9zdG5hbWU/OiBzdHJpbmdcbn1cblxuLyoqIEBoaWRkZW4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvcHRpb25Ob3JtYWxpemVyKG1hcD86IHtbazpzdHJpbmddOiBzdHJpbmcgfCBmYWxzZSB8IHVuZGVmaW5lZH0pe1xuICByZXR1cm4gZnVuY3Rpb24gbm9ybWFsaXplKGlucHV0OiB1bmtub3duKTogU3ViZG9tYWluT3B0aW9ucyB7XG4gICAgaWYoIW1hcCkgbWFwID0ge31cbiAgICBjb25zdCBvcHRpb25zOiBTdWJkb21haW5PcHRpb25zID0ge1xuICAgICAgc3ViZG9tYWluOiBcIlwiLFxuICAgICAgZGlyZWN0b3J5OiBcIi9cIlxuICAgIH07XG5cbiAgICBpZiAodHlwZW9mIGlucHV0ID09PSBcInN0cmluZ1wiKSB7XG4gICAgICBvcHRpb25zLnN1YmRvbWFpbiA9IGlucHV0LnRyaW0oKTtcbiAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KGlucHV0KSkge1xuICAgICAgZm9yKGNvbnN0IGsgb2YgW1wic3ViZG9tYWluXCIsIFwiZGlyZWN0b3J5XCIsIFwiaG9zdG5hbWVcIl0pe1xuICAgICAgICBsZXQgYWxpYXMgPSBtYXBba11cbiAgICAgICAgaWYoIWFsaWFzICYmIGFsaWFzICE9PSBmYWxzZSl7XG4gICAgICAgICAgYWxpYXMgPSBrXG4gICAgICAgIH1cbiAgICAgICAgaWYoYWxpYXMgIT09IGZhbHNlICYmIGlucHV0W2FsaWFzXSl7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBpbnB1dFthbGlhc11cbiAgICAgICAgICBvcHRpb25zW2tdID0gdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiID8gdmFsdWUudHJpbSgpIDogdmFsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgZXJyb3JzLmludmFsaWRJbnB1dChcIm9wdGlvbnMgbXVzdCBiZSBhIFN1YmRvbWFpbk9wdGlvbnMgb2JqZWN0IG9yIHN0cmluZ1wiKTtcbiAgICB9XG5cbiAgICBpZiAoIW9wdGlvbnMuc3ViZG9tYWluKSB7XG4gICAgICB0aHJvdyBlcnJvcnMuaW52YWxpZFByb3BlcnR5KG1hcFtcInN1YmRvbWFpblwiXSB8fCBcInN1YmRvbWFpblwiLCBcImlzIHJlcXVpcmVkXCIpO1xuICAgIH1cbiAgICBcbiAgICByZXR1cm4gb3B0aW9ucztcbiAgfVxufVxuXG4vKiogQGhpZGRlbiAqL1xuZXhwb3J0IGNvbnN0IG5vcm1hbGl6ZU9wdGlvbnMgPSBvcHRpb25Ob3JtYWxpemVyKCk7Il19