Name: Lighthouse i18n.js
Short Name: i18n
URL: github.com/GoogleChrome/lighthouse
Version: 15dad3944c2754a9e147fef9ef99934169e2ca08
License: Apache License 2.0
Security Critical: no

Description:
lib/i18n.js is the core script for localization which originated from Lighthouse project.
(see https://github.com/GoogleChrome/lighthouse/tree/master/lighthouse-core/lib/i18n)

Local Modifications:
1. Remove un-used imports and strings
2. Change the ultimate fallback from 'en' to 'en-US'
3. In getMessageInstanceIdFn(), us the filename that gets passed in as the first part of the id
4. Add lookupClosestLocale() to the file and remove the require statement
5. Add getFormatter(icuMessageIdOrRawString, locale) and rework the _resolveIcuMessageInstanceId call chain
6. Removing the 'intl' polyfill.
7. Changed locales exports from CommonJS modules to ESM
8. Pointing dependencies to third_party folder.
9. Modified getRendererFormattedStrings hardcoded path to match Devtools logic.
10. Declared idNotInMainDictionaryException that gets thrown when the searched if is not on the main dictionary.
11. Updated the error message in _getLocaleMessageAndCreateFormatter.
12. Updated the error message when forgetting a placeholder value
13. Inline 'isObjectOfUnknownValues', 'isObjectOrArrayOfUknownValues' into i18n.js
14. Weaken 'isIcuMessage' check for placeholder values to make 'getFormatLocalizedString' work
15. Add 'getAllSupportedLocales'

i18n-bundle.js is the bundled version of lib/i18n.js generated by the buildi18nBundle.js script.
The buildi18nBundle.js script is located under: scripts\localizationV2\buildi18nBundle.js

