import { Component, Prop, h } from '@stencil/core';
import { setIconSvg } from '../../utils/setIconSvg';
export class TeliaStatusBadge {
  constructor() {
    /** Test id set for web component host */
    this.dataTestid = null;
    /** Describe status of badge for better accessibility support */
    this.allyLabel = null;
    /** Tracking id is used to identify and count Component usage */
    this.dataTrackingId = 'telia-status-badge';
  }
  render() {
    // Unless the variant is neutral and it has an icon or an svg,
    // render the icon by variant.
    const renderIconByVariant = !((this.svg || this.icon) &&
      this.variant === 'neutral');
    return (h("span", { role: "text", class: {
        'telia-status-badge': true,
        [`telia-status-badge--${this.variant}`]: !!this.variant,
      }, "data-testid": this.dataTestid },
      h("telia-icon", { "ally-title": this.allyLabel, name: this.icon, svg: renderIconByVariant ? setIconSvg(this.variant) : this.svg, size: "sm" }),
      h("slot", null),
      h("telia-vst", { dataTrackingId: this.dataTrackingId })));
  }
  static get is() { return "telia-status-badge"; }
  static get encapsulation() { return "shadow"; }
  static get originalStyleUrls() { return {
    "$": ["telia-status-badge.scss"]
  }; }
  static get styleUrls() { return {
    "$": ["telia-status-badge.css"]
  }; }
  static get properties() { return {
    "variant": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "StatusBadgeVariant",
        "resolved": "\"caution\" | \"information\" | \"neutral\" | \"positive\" | \"warning\"",
        "references": {
          "StatusBadgeVariant": {
            "location": "import",
            "path": "../../types/StatusBadgeVariant"
          }
        }
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": "Set Badge Variant"
      },
      "attribute": "variant",
      "reflect": false
    },
    "dataTestid": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": "Test id set for web component host"
      },
      "attribute": "data-testid",
      "reflect": false,
      "defaultValue": "null"
    },
    "icon": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "IconName",
        "resolved": "\"check-bold\" | \"minus-bold\" | \"4g\" | \"5g\" | \"accessories\" | \"activity-level\" | \"add\" | \"address-book\" | \"ai-robot\" | \"airplay\" | \"alarm-off\" | \"alarm\" | \"alert-filled\" | \"alert\" | \"arrow-down\" | \"arrow-left\" | \"arrow-right\" | \"arrow-subdirectory\" | \"arrow-up\" | \"attachment\" | \"b2b-customer\" | \"bag\" | \"bar-chart\" | \"basketball\" | \"battery\" | \"blood-pressure\" | \"bluetooth\" | \"bookmark\" | \"broadband\" | \"broken-phone\" | \"bulb\" | \"business-continuity\" | \"business-intelligence\" | \"calendar\" | \"camera\" | \"card-view\" | \"care\" | \"cart\" | \"cast\" | \"chat-robot\" | \"chat\" | \"check-circle-filled\" | \"check-circle\" | \"checkmark\" | \"chevron-down\" | \"chevron-left\" | \"chevron-right\" | \"chevron-up\" | \"child-1\" | \"child-2\" | \"close-circle\" | \"close\" | \"cloud-connect\" | \"cloud\" | \"coffee\" | \"compass\" | \"connected-building\" | \"connected\" | \"construction\" | \"conversation\" | \"copy\" | \"core-router\" | \"credit-card\" | \"customer-dialogue\" | \"daas-device\" | \"data-transfer\" | \"delete-filled\" | \"delete\" | \"delivery\" | \"desktop\" | \"devices\" | \"dislike\" | \"doc\" | \"document-doc\" | \"document-edit\" | \"document-pdf\" | \"document-ppt\" | \"download\" | \"drone\" | \"dsl-hub\" | \"edit\" | \"education\" | \"efficiency\" | \"email\" | \"end-user\" | \"entertainment\" | \"environment\" | \"error-filled\" | \"error\" | \"esim-simcard\" | \"esim\" | \"euro\" | \"excel\" | \"external\" | \"face-id\" | \"facebook\" | \"facemask\" | \"fiber\" | \"film\" | \"filter\" | \"fingerprint\" | \"flag\" | \"focus\" | \"folder-copy\" | \"folder-new\" | \"folder\" | \"food\" | \"fraud\" | \"games\" | \"getting-started\" | \"gif\" | \"graph\" | \"grid-view\" | \"handshake\" | \"headphones\" | \"heart-filled\" | \"heart\" | \"help\" | \"home-care\" | \"home-installation\" | \"home\" | \"hospital\" | \"image\" | \"industrial-iot\" | \"industry\" | \"infinite\" | \"info-filled\" | \"info\" | \"instagram\" | \"internet\" | \"invoice\" | \"job-search\" | \"key\" | \"kontantkort\" | \"laptop\" | \"late-payment\" | \"layers\" | \"letter\" | \"like\" | \"link\" | \"linkedin\" | \"list-view\" | \"lock-closed\" | \"lock-open\" | \"login\" | \"logout\" | \"map\" | \"measuring-health\" | \"media-content\" | \"megaphone\" | \"menu\" | \"microphone\" | \"minus\" | \"mms\" | \"mobile-broadband\" | \"moisture\" | \"money-back\" | \"money-euro\" | \"money-krone\" | \"more-horizontal\" | \"more-vertical\" | \"music\" | \"mute\" | \"network\" | \"new-contact\" | \"new-group\" | \"news\" | \"offering\" | \"offshore\" | \"optimization\" | \"org-chart\" | \"parental-guide\" | \"password-invisible\" | \"password-visible\" | \"pay-monthly\" | \"pay-once\" | \"payment-success\" | \"pebble\" | \"people-hub\" | \"people\" | \"pet-dog\" | \"phone-recycling\" | \"phone-ringing\" | \"phone\" | \"pie-chart\" | \"pin\" | \"plane\" | \"play\" | \"player-settings\" | \"plus-minus\" | \"plus\" | \"police\" | \"portal\" | \"power-grid\" | \"premises-datacenter\" | \"premises-large\" | \"premises-medium\" | \"premises-small\" | \"premises\" | \"present\" | \"press-button\" | \"price\" | \"print\" | \"pulse\" | \"question-filled\" | \"question\" | \"rack\" | \"radio\" | \"record\" | \"recycle\" | \"refill-card\" | \"register\" | \"remote-control\" | \"repair\" | \"report\" | \"reservation\" | \"reverse\" | \"roaming\" | \"route\" | \"router\" | \"ruler\" | \"satellite\" | \"save\" | \"savings\" | \"search\" | \"secure-device\" | \"secured-1\" | \"secured-2\" | \"security-camera\" | \"send\" | \"sense-car\" | \"server\" | \"service-device\" | \"service-supervision\" | \"services\" | \"settings\" | \"share\" | \"shopping\" | \"shuffle\" | \"signature\" | \"simcard\" | \"skip-back-10sec\" | \"skip-back-30sec\" | \"skip-forward-10sec\" | \"skip-forward-30sec\" | \"slow-wifi\" | \"smart-wifi\" | \"smartphone\" | \"smartwatch\" | \"smiley-happy\" | \"smiley-sad\" | \"sms\" | \"snapchat\" | \"snowflake\" | \"sorter\" | \"speedometer\" | \"spell-check\" | \"split\" | \"spyware\" | \"star-filled\" | \"star\" | \"stop\" | \"store\" | \"stream\" | \"suitcase\" | \"summary\" | \"support\" | \"sustainability\" | \"switch\" | \"sync\" | \"table-view\" | \"tablet\" | \"tag\" | \"temperature\" | \"thinking\" | \"time\" | \"trade-phone\" | \"trailer\" | \"train\" | \"transfer\" | \"tv-next\" | \"tv-pause\" | \"tv-play\" | \"tv-previous\" | \"tv-stop\" | \"tv\" | \"twitter\" | \"undo\" | \"upload\" | \"usb\" | \"user-admin\" | \"vcard\" | \"video-conference\" | \"video\" | \"voice-switch\" | \"voicemail\" | \"volume\" | \"wallet\" | \"wallplug\" | \"warning\" | \"wavelength\" | \"weather\" | \"wireless-off\" | \"wireless\" | \"world-alert\" | \"world-off\" | \"world-question\" | \"world\" | \"youtube\" | \"zoom-out\" | \"zoom\"",
        "references": {
          "IconName": {
            "location": "import",
            "path": "@teliads/icons/dist/main/Icons"
          }
        }
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": "Icon name"
      },
      "attribute": "icon",
      "reflect": false
    },
    "svg": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": "Svg string used for tree-shakable icon rendering"
      },
      "attribute": "svg",
      "reflect": false
    },
    "allyLabel": {
      "type": "string",
      "mutable": false,
      "complexType": {
        "original": "string",
        "resolved": "string",
        "references": {}
      },
      "required": false,
      "optional": false,
      "docs": {
        "tags": [],
        "text": "Describe status of badge for better accessibility support"
      },
      "attribute": "ally-label",
      "reflect": false,
      "defaultValue": "null"
    }
  }; }
}
