[l10n] Throw an error when message keys conflict
[l10n] Throw an error when message keys conflict

We changed collect-strings.js in the past to collect from multiple
directories, not just one. This introduces the potential for message
keys to conflict if:

  - Both directories have a file with the same relative path.
  - The two files with the same relative path both have a UIString
    object with the same property.

In this case the collect-strings.js will throw an error now and the
dev has to resolve this by renaming one (ideally the newly added)
of the conflicting property names.

R=alexrudenko@chromium.org

Bug: 1185727
Change-Id: I175acabda1499a185c3a48a7cf0ffbbcbb846843
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/4020247
Commit-Queue: Simon Zünd <38944668e9e2ca98ccd0275b53370f90fa55c113@chromium.org>
Reviewed-by: Alex Rudenko <d8d88e7d7e77f69e23d1d1432231196fb8e02a62@google.com>

ChromeDevTools/devtools-frontend,ChromeDevTools/devtools-frontend,ChromeDevTools/devtools-frontend,ChromeDevTools/devtools-frontend,ChromeDevTools/devtools-frontend,ChromeDevTools/devtools-frontend