Newer
Older
iuav-ui / src / components / overlay / overlay.ts
@elcar elcar on 15 Jan 789 bytes :feat: lib (src), dist, test
import { LitElement, html, css } from 'lit';
import { customElement, property } from 'lit/decorators.js';

@customElement('iu-overlay')

export class Overlay extends LitElement {
  static override styles = css`
  :host {
    transition: opacity .25s ease;
    pointer-events: none;
    visibility: hidden;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 40;
  }
  :host([visible]) {
    transition: opacity .25s ease;
    visibility: visible;
    opacity: 1;
  }
  `;
  
  @property({ type: Boolean, reflect: true }) visible = false;
  
  override render() {
    return html`<div></div>`;
  }
  
}

declare global {
  interface HTMLElementTagNameMap {
    'iu-overlay': Overlay;
  }
}