Translation sources of a project: finds the translation files a project
loads and indexes their keys, without configuration.
TS object literals handed to setTranslation of TranslateService
(ngx-translate, (lang, data)) or TranslocoService ((data, lang)).
The data argument is followed back to the object literal: variables,
imports, parameters through the arguments of their callers (rest
parameters and spread included), forEach/for...of elements, array
and object literals, and lookups like MAP[key].
JSON files named by a TranslateHttpLoader (prefix and suffix) or by the
URL template of a TranslocoLoader class, resolved against the ancestors
of the loader's file. Without a loader or registration, the convention
assets/i18n/*.json below the program's top-level folders.
A source reached through a lookup with a runtime key, or registered in an
if/switch/ternary branch, is conditional (an overlay).
A registration the trace cannot follow to an object is reported as
unresolved, never filled in from file or variable names.
Keys are flattened with . ({ A: { B: 'x' } } -> A.B), each with its
line and value.
Translation sources of a project: finds the translation files a project loads and indexes their keys, without configuration.
setTranslationofTranslateService(ngx-translate,(lang, data)) orTranslocoService((data, lang)). The data argument is followed back to the object literal: variables, imports, parameters through the arguments of their callers (rest parameters and spread included),forEach/for...ofelements, array and object literals, and lookups likeMAP[key].TranslateHttpLoader(prefix and suffix) or by the URL template of aTranslocoLoaderclass, resolved against the ancestors of the loader's file. Without a loader or registration, the conventionassets/i18n/*.jsonbelow the program's top-level folders.A source reached through a lookup with a runtime key, or registered in an
if/switch/ternary branch, isconditional(an overlay). A registration the trace cannot follow to an object is reported as unresolved, never filled in from file or variable names.Keys are flattened with
.({ A: { B: 'x' } }->A.B), each with its line and value.