@drieam/common
Version:
Default Drieam api wrapper
44 lines (36 loc) • 1.24 kB
JavaScript
import { broadcastMessage, postLtiFrameResize } from "./broadcaster";
import { render, getAttributes } from "./render";
import { iframeResizeObserver, observeIframeResize } from "./resizeObserver";
if (Element.prototype.getAttributeNames === undefined) {
Element.prototype.getAttributeNames = function getAttributeNames() {
var attributes = this.attributes;
var length = attributes.length; // tslint:disable-next-line
var result = new Array(length);
for (var i = 0; i < length; i += 1) {
result[i] = attributes[i].name;
}
return result;
};
}
function getCSRFToken() {
var meta = document.head.querySelector("meta[name=csrf-token]");
return meta ? meta.getAttribute("content") : "";
}
function getLocale() {
return document.documentElement.getAttribute("lang") || "en";
}
function getTimeZone() {
return document.body.dataset.timeZone || "Europe/Amsterdam";
}
var dom = {
iframeResizeObserver: iframeResizeObserver,
observeIframeResize: observeIframeResize,
broadcastMessage: broadcastMessage,
postLtiFrameResize: postLtiFrameResize,
render: render,
getAttributes: getAttributes,
getCSRFToken: getCSRFToken,
getLocale: getLocale,
getTimeZone: getTimeZone
};
export { dom };