@brizy/ui
Version:
React elements in Brizy style
33 lines (32 loc) • 1.28 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Facebook = void 0;
const constants_1 = require("../../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(`.${constants_1.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);
}
};
exports.Facebook = Facebook;