@brizy/ui
Version:
React elements in Brizy style
30 lines (29 loc) • 1.15 kB
JavaScript
import { BRZ_PREFIX } from "../../constants";
function createElementFb(lang, appId) {
const node = document.createElement("div");
node.className = "fb-root";
document.body.appendChild(node);
const src = "https://connect.facebook.net/" + lang + "/sdk.js#xfbml=1&version=v3.1&appId=" + appId;
(function (d, s, id) {
var _a;
if (d.getElementById(id))
return;
const fjs = d.getElementsByTagName(s)[0];
const js = d.createElement(s);
js.setAttribute("id", id);
js.setAttribute("src", src);
(_a = fjs.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(js, fjs);
})(document, "script", "facebook-jssdk");
}
const Facebook = node => {
var _a;
const facebook = node.querySelector(`.${BRZ_PREFIX}-facebook`);
const fbRoot = node.querySelector(".fb-root");
if (facebook && !fbRoot) {
const lang = (_a = facebook.getAttribute("data-lang")) !== null && _a !== void 0 ? _a : "en_US";
const appId = facebook.getAttribute("data-appid");
if (appId)
createElementFb(lang, appId);
}
};
export { Facebook };