import { Component, h, Host, Prop } from '@stencil/core';
export class DvnIcon {
  constructor() {
    this.scale = 'medium';
  }
  render() {
    const vars = {};
    if (this.size) {
      vars['--size'] = `${this.size}px`;
      vars['--icon-size'] = `${this.size}px`;
    }
    return (h(Host, { class: {
        [this.scale]: true,
      }, style: vars },
      h("i", { class: {
          [this.iconName]: true,
        } })));
  }
  static get is() { return "dvn-icon"; }
  static get originalStyleUrls() { return {
    "$": ["dvn-icon.css"]
  }; }
  static get styleUrls() { return {
    "$": ["dvn-icon.css"]
  }; }
  static get properties() { return {
    "iconName": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "icon-name",
      "reflect": false
    },
    "scale": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "Scale",
        "resolved": "\"large\" | \"medium\" | \"small\" | \"x-small\"",
        "references": {
          "Scale": {
            "location": "import",
            "path": "../../theme"
          }
        }
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "scale",
      "reflect": false,
      "defaultValue": "'medium'"
    },
    "size": {
      "type": "number",
      "mutable": false,
      "complexType": {
        "original": "number",
        "resolved": "number",
        "references": {}
      },
      "required": false,
      "optional": true,
      "docs": {
        "tags": [],
        "text": ""
      },
      "attribute": "size",
      "reflect": false
    }
  }; }
}
