UNPKG

@code_monk/falert

Version:
132 lines 8.29 kB
"use strict"; var __values = (this && this.__values) || function(o) { var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; if (m) return m.call(o); if (o && typeof o.length === "number") return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); }; var __read = (this && this.__read) || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.Falert = void 0; var CDN_BASE = 'https://unpkg.com/@code_monk/falert@latest/dist/'; var Falert = /** @class */ (function () { function Falert(head, body, type) { var e_1, _a; if (type === void 0) { type = "notice"; } var t = document.createElement('template'); t.innerHTML = Falert.html.trim(); var domNode = t.content.firstChild; domNode.style.zIndex = (Falert.getHighestZindex() + 1).toString(10); // get a new "top" value to push this node down the page var newTop = 35; try { for (var _b = __values(Falert.instances), _c = _b.next(); !_c.done; _c = _b.next()) { var i = _c.value; newTop += i.offsetHeight; } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_1) throw e_1.error; } } domNode.style.top = newTop + 'px'; domNode.querySelector('.body').classList.add(type); domNode.addEventListener("animationend", function (ev) { domNode.classList.remove('flyin'); domNode.classList.add('swaying'); }); domNode.addEventListener('click', function (ev) { Falert.instances.delete(domNode); domNode.remove(); }); domNode.querySelector('.body h2').innerHTML = head; domNode.querySelector('.body p').innerHTML = body; domNode.classList.add(type); document.body.appendChild(domNode); Falert.instances.add(domNode); Falert.settings.sounds[type].play(); } ; Falert.getHighestZindex = function () { var e_2, _a; var z = 0; try { for (var _b = __values(Falert.instances), _c = _b.next(); !_c.done; _c = _b.next()) { var f = _c.value; var i = Number(f.style.zIndex); if (i > z) { z = i; } } } catch (e_2_1) { e_2 = { error: e_2_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_2) throw e_2.error; } } return z; }; Falert.instances = new Set(); Falert.settings = { insertionNode: document.body, audio: { volume: 0.25 }, sounds: {} }; (function () { var e_3, _a; // preload audio var sounds = { fatal: CDN_BASE + 'assets/sounds/dramatic.mp3', warning: CDN_BASE + 'assets/sounds/concerning.mp3', notice: CDN_BASE + 'assets/sounds/noteworthy.mp3' }; try { for (var _b = __values(Object.entries(sounds)), _c = _b.next(); !_c.done; _c = _b.next()) { var _d = __read(_c.value, 2), k = _d[0], url = _d[1]; var a = new Audio(); a.addEventListener("error", console.error); a.volume = Falert.settings.audio.volume; a.src = url; Falert.settings.sounds[k] = a; } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_3) throw e_3.error; } } })(); Falert.html = "\n\t<div class=\"falert container flyin\">\n\t\t<div class=\"falert body breathing\">\n\t\t\t<h2>Alert!</h2>\n\t\t\t<p>You can't put your finger in the socket</p>\n\t\t</div>\n\t</div>\n\t"; return Falert; }()); exports.Falert = Falert; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsZXJ0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RzL2ZhbGVydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFNLFFBQVEsR0FBRyxrREFBa0QsQ0FBQztBQUVwRTtJQWlDQyxnQkFBWSxJQUFZLEVBQUUsSUFBWSxFQUFFLElBQXVCOztRQUF2QixxQkFBQSxFQUFBLGVBQXVCO1FBQzlELElBQU0sQ0FBQyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDN0MsQ0FBQyxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQU0sT0FBTyxHQUFtQixDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQztRQUNyRCxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVwRSx3REFBd0Q7UUFDeEQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDOztZQUNoQixLQUFjLElBQUEsS0FBQSxTQUFBLE1BQU0sQ0FBQyxTQUFTLENBQUEsZ0JBQUEsNEJBQUU7Z0JBQTNCLElBQUksQ0FBQyxXQUFBO2dCQUNULE1BQU0sSUFBSSxDQUFDLENBQUMsWUFBWSxDQUFDO2FBQ3pCOzs7Ozs7Ozs7UUFDRCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2xDLE9BQU8sQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuRCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLFVBQUEsRUFBRTtZQUMxQyxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0s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