import { Component, h, Host, Prop } from '@stencil/core';
const tintsToIcons = {
  neutral: 'uil-megaphone',
  primary: 'uil-info-circle',
  secondary: 'uil-check-circle',
  warning: 'uil-exclamation-triangle',
  danger: 'uil-exclamation-octagon',
};
export class DvnAlert {
  constructor() {
    this.tint = 'primary';
    this.extraClass = 'mb-3';
  }
  render() {
    const { message, tint } = this;
    const iconName = tintsToIcons[tint];
    return (h(Host, { class: "d-block" },
      h("dvn-card", { elevation: 0, leaned: true, tint: tint, reverseTint: true, extraClass: this.extraClass },
        h("div", { class: "d-flex align-items-center" },
          h("dvn-icon", { iconName: iconName, class: "pr-2", size: 32 }),
          message),
        h("slot", { name: "footer" }))));
  }
  static get is() { return "dvn-alert"; }
  static get originalStyleUrls() { return {
    "$": ["dvn-alert.scss"]
  }; }
  static get styleUrls() { return {
    "$": ["dvn-alert.css"]
  }; }
  static get properties() { return {
    "tint": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "Tint",
        "resolved": "\"danger\" | \"neutral\" | \"primary\" | \"secondary\" | \"warning\"",
        "references": {
          "Tint": {
            "location": "import",
            "path": "@dvn/alaca/theme"
          }
        }
      },
      "required": false,
      "optional": true,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "tint",
      "reflect": false,
      "defaultValue": "'primary'"
    },
    "message": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "message",
      "reflect": false
    },
    "extraClass": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "extra-class",
      "reflect": false,
      "defaultValue": "'mb-3'"
    }
  }; }
}
