From 8c9c0986e94f1d227d00ba6b7a2692b82f74329e Mon Sep 17 00:00:00 2001 From: Victor Berchet Date: Fri, 5 Aug 2016 11:53:37 -0700 Subject: [PATCH] refatcor(digestMessage): takes a `i18n.Message` --- modules/@angular/compiler/src/i18n/extractor_merger.ts | 4 ++-- modules/@angular/compiler/src/i18n/message_bundle.ts | 9 ++++----- .../@angular/compiler/test/i18n/extractor_merger_spec.ts | 6 +++--- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/modules/@angular/compiler/src/i18n/extractor_merger.ts b/modules/@angular/compiler/src/i18n/extractor_merger.ts index 1795104b63..9f367e143e 100644 --- a/modules/@angular/compiler/src/i18n/extractor_merger.ts +++ b/modules/@angular/compiler/src/i18n/extractor_merger.ts @@ -338,7 +338,7 @@ class _Visitor implements html.Visitor { // translate the given message given the `TranslationBundle` private _translateMessage(el: html.Node, message: i18n.Message): html.Node[] { if (message && this._mode === _VisitorMode.Merge) { - const id = msgBundle.digestMessage(message.nodes, message.meaning); + const id = msgBundle.digestMessage(message); const nodes = this._translations.get(id); if (nodes) { @@ -374,7 +374,7 @@ class _Visitor implements html.Visitor { if (i18nAttributeMeanings.hasOwnProperty(attr.name)) { const meaning = i18nAttributeMeanings[attr.name]; const message: i18n.Message = this._createI18nMessage([attr], meaning, ''); - const id = msgBundle.digestMessage(message.nodes, message.meaning); + const id = msgBundle.digestMessage(message); const nodes = this._translations.get(id); if (!nodes) { this._reportError( diff --git a/modules/@angular/compiler/src/i18n/message_bundle.ts b/modules/@angular/compiler/src/i18n/message_bundle.ts index 035af595b5..3cd1d09d10 100644 --- a/modules/@angular/compiler/src/i18n/message_bundle.ts +++ b/modules/@angular/compiler/src/i18n/message_bundle.ts @@ -39,16 +39,15 @@ export class MessageBundle { return i18nParserResult.errors; } - i18nParserResult.messages.forEach((message) => { - this._messageMap[digestMessage(message.nodes, message.meaning)] = message; - }); + i18nParserResult.messages.forEach( + (message) => { this._messageMap[digestMessage(message)] = message; }); } write(serializer: Serializer): string { return serializer.write(this._messageMap); } } -export function digestMessage(nodes: i18n.Node[], meaning: string): string { - return strHash(serializeNodes(nodes).join('') + `[${meaning}]`); +export function digestMessage(message: i18n.Message): string { + return strHash(serializeNodes(message.nodes).join('') + `[${message.meaning}]`); } /** diff --git a/modules/@angular/compiler/test/i18n/extractor_merger_spec.ts b/modules/@angular/compiler/test/i18n/extractor_merger_spec.ts index 365f0dd9dc..5c61d04d8a 100644 --- a/modules/@angular/compiler/test/i18n/extractor_merger_spec.ts +++ b/modules/@angular/compiler/test/i18n/extractor_merger_spec.ts @@ -373,9 +373,9 @@ function fakeTranslate( const i18nMsgMap: {[id: string]: html.Node[]} = {}; - messages.forEach(msg => { - const id = digestMessage(msg.nodes, msg.meaning); - const text = serializeI18nNodes(msg.nodes).join(''); + messages.forEach(message => { + const id = digestMessage(message); + const text = serializeI18nNodes(message.nodes).join(''); i18nMsgMap[id] = [new html.Text(`**${text}**`, null)]; });