"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BestAvailableLocale = void 0; /** * https://tc39.es/ecma402/#sec-bestavailablelocale * @param availableLocales * @param locale */ function BestAvailableLocale(availableLocales, locale) { var candidate = locale; while (true) { if (~availableLocales.indexOf(candidate)) { return candidate; } var pos = candidate.lastIndexOf('-'); if (!~pos) { return undefined; } if (pos >= 2 && candidate[pos - 2] === '-') { pos -= 2; } candidate = candidate.slice(0, pos); } } exports.BestAvailableLocale = BestAvailableLocale;