@etsoo/appscript
Version:
Applications shared TypeScript framework
33 lines (32 loc) • 1.07 kB
JavaScript
import { AddressRegion } from "./AddressRegion";
/**
* Address utils
*/
export var AddressUtils;
(function (AddressUtils) {
/**
* Get region from regions and detected region and language
* @param regions Supported regions
* @param detectedRegion Detected region
* @param detectedLanguage Detected language
*/
function getRegion(regions, detectedRegion, detectedLanguage) {
// Exactly match
if (detectedRegion && regions.includes(detectedRegion)) {
const region = AddressRegion.getById(detectedRegion);
if (region)
return region;
}
// Match with language
if (detectedLanguage) {
const region = regions
.map((id) => AddressRegion.getById(id))
.find((item) => item.languages.includes(detectedLanguage));
if (region)
region;
}
// Default
return AddressRegion.getById(regions[0]);
}
AddressUtils.getRegion = getRegion;
})(AddressUtils || (AddressUtils = {}));