diff --git a/js/dialog.js b/js/dialog.js deleted file mode 100644 index 49e50a2a08e44d84f8f404a9e3a3dd6cd8631afe..0000000000000000000000000000000000000000 --- a/js/dialog.js +++ /dev/null @@ -1,37 +0,0 @@ -function createDialogImage(url) { - createDialogHTML(`<img src="${url}">`, "imageDialog"); -} - -function createDialogHTML(html, customClasses = "") { - let dialog = document.createElement("div"); - dialog.classList.add("dialog"); - - dialog.innerHTML = ` - <span class="close">×</span> - <div class="dialogContent ${customClasses}"> - ${html} - </div>`; - - document.body.appendChild(dialog); - fade(dialog, 0.04); - - dialog.querySelector(".close").onclick = function (){ - fade(dialog, -0.04, true); - } -} - -function fade(element, value = 0.1, deleteAfterwards = false) { - let opacity = +(element.style.opacity) + value; - - element.style.opacity = String(opacity); - - if ((opacity < 1 && value > 0) || (opacity >= 0 && value < 0)) { - setTimeout(function () { - fade(element, value, deleteAfterwards); - }, 10); - } else if (deleteAfterwards) { - setTimeout(function () { - element.parentNode.removeChild(element); - }, 10); - } -} \ No newline at end of file diff --git a/js/imgPreview.js b/js/imgPreview.js index f9cb3502b3998dd4544ac6fe054830e2dd80c36e..a167585277884af658f81c741e593096d47fed66 100644 --- a/js/imgPreview.js +++ b/js/imgPreview.js @@ -1,7 +1,15 @@ +import * as basicLightbox from 'basiclightbox' + let images = document.getElementsByTagName("img"); for(let i = 0; i < images.length; i++){ let element = images[i]; if(!(element.getAttribute("data-noPreview") === "true")) { - element.onclick = () => createDialogImage(element.src); + element.onclick = () => { + console.log("render"); + const instance = basicLightbox.create(` + <img src="${element.src}"> + `); + instance.show(() => console.log('lightbox now visible')) + } } } \ No newline at end of file diff --git a/js/script.js b/js/script.js index f1dcf14c2974ff1e801d8b1cd325262d7869dae8..7ca5a4a741eff17c6bebd532f527d00cd793bcd5 100644 --- a/js/script.js +++ b/js/script.js @@ -1,6 +1,5 @@ require("./cookie"); require("./burgerMenu"); -require("./dialog"); require("./error"); require("./imgPreview"); require("./includeHTML"); diff --git a/package.json b/package.json index f34f0615425d7135182c5080ea9238ac24cc4d78..b72a4803ca8724ab7593fcdc148a9ee74dccfef2 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "webpack-cli": "^4.5.0" }, "dependencies": { + "basiclightbox": "^5.0.4", "plotly.js-dist": "^1.58.4", "sass": "^1.32.8", "webpack": "^5.28.0" diff --git a/scss/style.scss b/scss/style.scss index dc143e838036509278ba53588315676fd35986e4..3321faf465c3e6c9529aa85997b67a72762b2c61 100644 --- a/scss/style.scss +++ b/scss/style.scss @@ -14,4 +14,5 @@ @import "mobile"; @import "menuMobile"; @import "mobileSmall"; -@import "dialog"; \ No newline at end of file +@import "dialog"; +@import "../node_modules/basiclightbox/src/styles/main"; \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index ac9e98a062d0d693d265b9b913fb0f7d0ead475e..3a3550b61411112f86e9f10395eeb259fbad0b01 100644 --- a/yarn.lock +++ b/yarn.lock @@ -796,6 +796,11 @@ base@^0.11.1: mixin-deep "^1.2.0" pascalcase "^0.1.1" +basiclightbox@^5.0.4: + version "5.0.4" + resolved "https://registry.yarnpkg.com/basiclightbox/-/basiclightbox-5.0.4.tgz#5367d6d468ae44406e51b8486cfb8751f36f1fb2" + integrity sha512-EsuNWmfcFXWZOe0txKXsllYOC7bDpoaVLc4HHHlYKB/roymlZs+FBdLUU6rx2yPpnJZhulwheKdPjqr2k0+NGQ== + binary-extensions@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d"