UNPKG

infinity-forge

Version:
42 lines 1.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Translate = Translate; var jsx_runtime_1 = require("react/jsx-runtime"); var react_1 = require("react"); function Translate(_a) { var setLanguage = _a.setLanguage, languagesSelecteds = _a.languagesSelecteds; (0, react_1.useEffect)(function () { var addScript = document.createElement('script'); addScript.setAttribute('src', '//translate.google.com/translate_a/element.js?cb=googleTranslateElementInit'); document.body.appendChild(addScript); window.googleTranslateElementInit = function () { new window.google.translate.TranslateElement({ pageLanguage: 'pt', autoDisplay: false, }, 'google_translate_element'); var comboBox = document.querySelector('.goog-te-combo'); var observer = new MutationObserver(function () { var selectedLanguage = document.querySelector('.goog-te-combo'); if (selectedLanguage) { setLanguage(selectedLanguage === null || selectedLanguage === void 0 ? void 0 : selectedLanguage.value); } if (languagesSelecteds && languagesSelecteds.length > 0) { var options = comboBox.querySelectorAll('option'); options.forEach(function (option) { if (!languagesSelecteds.includes(option.value)) { option.remove(); } }); } }); if (comboBox) { observer.observe(comboBox, { attributes: true, childList: true, subtree: true }); } }; return function () { document.body.removeChild(addScript); }; }, [setLanguage]); return (0, jsx_runtime_1.jsx)("div", { id: 'google_translate_element' }); } //# sourceMappingURL=translate.js.map