UNPKG

dap-design-system

Version:

Official design system for the DÁP (dap.gov.hu)

73 lines (72 loc) 2.34 kB
import "../../node_modules/@lit/reactive-element/reactive-element.js"; import { html as l } from "../../node_modules/lit-html/lit-html.js"; import "../../node_modules/lit-element/lit-element.js"; import { property as c } from "../../node_modules/@lit/reactive-element/decorators/property.js"; import { DdsElement as h } from "../../internal/dds-hu-element.js"; import f from "./overlay.scss.js"; import { unsafeCSS as p } from "../../node_modules/@lit/reactive-element/css-tag.js"; var u = Object.defineProperty, m = (a, e, s, n) => { for (var t = void 0, o = a.length - 1, d; o >= 0; o--) (d = a[o]) && (t = d(e, s, t) || t); return t && u(e, s, t), t; }; const i = class i extends h { constructor() { super(...arguments), this.open = !1; } connectedCallback() { super.connectedCallback(), this.hasAttribute("aria-hidden") || this.setAttribute("aria-hidden", "true"), this.open || this.classList.add("closed"); } updated(e) { if (super.updated(e), e.has("open")) { const s = e.get("open"), n = this.open; n && !s ? this.handleOpen() : !n && s && this.handleClose(); } } handleOpen() { if (this.emit("dds-before-open", void 0, { cancelable: !0 }).defaultPrevented) { this.open = !1; return; } this.classList.remove("closed", "transitioning"), this.setAttribute("aria-hidden", "false"), this.addEventListener( "transitionend", () => { this.emit("dds-opened", void 0, { cancelable: !1 }); }, { once: !0 } ); } handleClose() { if (this.emit("dds-before-close", void 0, { cancelable: !0 }).defaultPrevented) { this.open = !0; return; } this.classList.add("transitioning"), this.classList.remove("closed"), this.setAttribute("aria-hidden", "true"), this.addEventListener( "transitionend", () => { this.classList.remove("transitioning"), this.classList.add("closed"), this.emit("dds-closed", void 0, { cancelable: !1 }); }, { once: !0 } ); } render() { return l`<div part="base"><slot></slot></div>`; } }; i.tagName = "dap-ds-overlay", i.styles = p(f); let r = i; m([ c({ type: Boolean, reflect: !0 }) ], r.prototype, "open"); export { r as default }; //# sourceMappingURL=overlay.component.js.map