fix(ivy): i18n - turn on legacy message-id support by default (#33053)

For v9 we want the migration to the new i18n to be as
simple as possible.

Previously the developer had to positively choose to use
legacy messsage id support in the case that their translation
files had not been migrated to the new format by setting the
`legacyMessageIdFormat` option in tsconfig.json to the format
of their translation files.

Now this setting has been changed to `enableI18nLegacyMessageFormat`
as is a boolean that defaults to `true`. The format is then read from
the `i18nInFormat` option, which was previously used to trigger translations
in the pre-ivy angular compiler.

PR Close #33053
This commit is contained in:
Pete Bacon Darwin
2019-10-09 12:34:37 +01:00
committed by Miško Hevery
parent 5ede5b7807
commit f640a4a494
6 changed files with 58 additions and 44 deletions

View File

@ -32,7 +32,6 @@ export function main(
if (configErrors.length) {
return reportErrorsAndExit(configErrors, /*options*/ undefined, consoleError);
}
warnForDeprecatedOptions(options);
if (watch) {
const result = watchMode(project, options, consoleError);
return reportErrorsAndExit(result.firstCompileResult, options, consoleError);
@ -227,14 +226,6 @@ export function watchMode(
}, options, options => createEmitCallback(options)));
}
function warnForDeprecatedOptions(options: api.CompilerOptions) {
if (options.i18nLegacyMessageIdFormat !== undefined) {
console.warn(
'The `i18nLegacyMessageIdFormat` option is deprecated.\n' +
'Migrate your legacy translation files to the new `$localize` message id format and remove this option.');
}
}
// CLI entry point
if (require.main === module) {
const args = process.argv.slice(2);