Skip to content

Commit d5be895

Browse files
committed
fix[vanilla]: set ready state if translations fail to process correctly
1 parent 3a1c022 commit d5be895

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

src/hooks/translation.loaded.js

+11-3
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
import eventManager from '../utils/eventManager.js';
2-
import { global } from '../utils/global.js';
2+
import { global, globalSet } from '../utils/global.js';
33

44
eventManager.on(':loaded', () => {
5-
if (global('translationReady', { throws: false })) {
5+
const READY = 'translationReady';
6+
if (global(READY, { throws: false })) {
67
eventManager.singleton.emit('translation:loaded');
78
} else {
8-
document.addEventListener('translationReady', () => {
9+
document.addEventListener(READY, () => {
910
eventManager.singleton.emit('translation:loaded');
1011
}, {
1112
once: true,
1213
});
14+
// Fallback for if translation function breaks
15+
eventManager.on(':load', () => {
16+
const translationReady = global(READY, { throws: false });
17+
if (translationReady !== false) return;
18+
globalSet(READY, true);
19+
document.dispatchEvent(global('translationEvent'));
20+
});
1321
}
1422
});

0 commit comments

Comments
 (0)