@dnb/eufemia
Version:
DNB Eufemia Design System UI Library
56 lines • 1.87 kB
JavaScript
import { getVersion, getSha, getBuildDate } from "./build-info/BuildInfo.js";
import { runCssVersionMismatchWarning } from "./helpers/runCssVersionMismatchWarning.js";
import { runOldBuildDateWarning } from "./helpers/runOldBuildDateWarning.js";
export const version = getVersion();
export const sha = getSha();
export const buildDate = getBuildDate();
export function init() {
if (typeof window !== 'undefined') {
class Eufemia {
constructor() {
if (!window.__eufemiaVersions) {
window.__eufemiaVersions = [];
}
if (!window.__eufemiaVersions.includes(this.version)) {
window.__eufemiaVersions.push(this.version);
}
if (!window.__eufemiaSHAs) {
window.__eufemiaSHAs = [];
}
if (!window.__eufemiaSHAs.includes(this.sha)) {
window.__eufemiaSHAs.push(this.sha);
}
}
get version() {
return version;
}
get sha() {
return sha;
}
get buildDate() {
return buildDate;
}
get shas() {
return window.__eufemiaSHAs;
}
get versions() {
return window.__eufemiaSHAs.map((sha, i) => {
const scopeElement = document.querySelector(`[data-scope-hash-id][data-scope-sha="${sha}"]`);
const styleElement = scopeElement?.querySelector('.dnb-core-style');
const css = window.getComputedStyle(styleElement || document.body).getPropertyValue('--eufemia-version').replace(/"/g, '');
const js = window.__eufemiaVersions[i] || window.__eufemiaVersions[0] || this.version;
return {
js,
css,
sha,
scopeElement
};
});
}
}
window.Eufemia = new Eufemia();
runCssVersionMismatchWarning();
runOldBuildDateWarning();
}
}
//# sourceMappingURL=Eufemia.js.map