@etsoo/appscript
Version:
Applications shared TypeScript framework
36 lines (35 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AddressUtils = void 0;
const AddressRegion_1 = require("./AddressRegion");
/**
* Address utils
*/
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_1.AddressRegion.getById(detectedRegion);
if (region)
return region;
}
// Match with language
if (detectedLanguage) {
const region = regions
.map((id) => AddressRegion_1.AddressRegion.getById(id))
.find((item) => item.languages.includes(detectedLanguage));
if (region)
region;
}
// Default
return AddressRegion_1.AddressRegion.getById(regions[0]);
}
AddressUtils.getRegion = getRegion;
})(AddressUtils || (exports.AddressUtils = AddressUtils = {}));