@ohm-vision/kiwi-tequila-api
Version:
Unofficial wrapper for Kiwi (tequila) API
35 lines (34 loc) • 965 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.serializeFlyLocations = void 0;
function serializeFlyLocations(input) {
if (Array.isArray(input)) {
return input.flatMap(serializeFlyLocations);
}
if (isSearchFlyLocation(input)) {
const { type, value } = input;
if (Array.isArray(value)) {
return value.map(v => `${type}:${v}`);
}
return [`${type}:${value}`];
}
if (isSearchRadius(input)) {
const { lat, lon, xkm } = input;
return [`${lat}-${lon}-${xkm}km`];
}
return [input];
}
exports.serializeFlyLocations = serializeFlyLocations;
function isSearchFlyLocation(obj) {
return !!obj &&
typeof obj === "object" &&
"type" in obj &&
"value" in obj;
}
function isSearchRadius(obj) {
return !!obj &&
typeof obj === "object" &&
"lat" in obj &&
"lon" in obj &&
"xkm" in obj;
}