adds lang-attribute observation to observeDOM() so all [data-trans] nodes re-translate automatically on locale switch
[fix] Ready gate (_initPromise / _initResolve) moved inside define()
— was declared in outer scope, causing disconnection on cache
hit (disk cache served module without re-executing outer scope)
— now always bound to the correct module instance
[fix] _assertReady() replaced with _waitReady() (promise-based)
— load() and translateValidationMessages() no longer throw on
cache hit — requests are queued and resolved after init()
[fix] _assertReady() removed from init()
— basePath validated directly to avoid premature throw before
_i18n is fully assigned
[fix] t() guards _isInitialized in addition to _i18n null check
— returns defaultValue safely when called before init resolves
[fix] setLocale() queues locale on _initPromise when called early
— no longer silently ignored if called before init()