{"version":3,"sources":["../src/elements/tab-panel.ts"],"sourcesContent":["import { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { stylesKemetTabPanel } from '../styles/elements/tabs';\n\n/**\n * @since 1.0.0\n * @status stable\n *\n * @tagname kemet-tab-panel\n * @summary A panel in a set of tabs.\n *\n * @prop {boolean} selected - Is true when a panel is selected\n * @prop {string} panel - Identifies the panel to be linked by a tab\n *\n * @cssproperty --kemet-tab-panel-fade-speed - The fade speed.\n *\n */\n\n@customElement('kemet-tab-panel')\nexport default class KemetTabPanel extends LitElement {\n  static styles = [stylesKemetTabPanel];\n\n  @property({ type: Boolean, reflect: true })\n  selected: boolean = false;\n\n  @property({ type: String })\n  panel: string;\n\n  @property({ type: Number })\n  index: number;\n\n  updated() {\n    this.a11y();\n  }\n\n  render() {\n    return html`\n      <slot></slot>\n    `;\n  }\n\n  a11y() {\n    this.setAttribute('role', 'tabpanel');\n\n    if (this.selected) {\n      this.setAttribute('tabindex', '0');\n    } else {\n      this.setAttribute('tabindex', '-1');\n    }\n  }\n}\n\ndeclare global {\n  interface HTMLElementTagNameMap {\n    'kemet-tab-panel': KemetTabPanel\n  }\n}\n"],"mappings":";;;;;;;;AAAA,SAAS,YAAY,YAAY;AACjC,SAAS,eAAe,gBAAgB;AAkBxC,IAAqB,gBAArB,cAA2C,WAAW;AAAA,EAAtD;AAAA;AAIE,oBAAoB;AAAA;AAAA,EAQpB,UAAU;AACR,SAAK,KAAK;AAAA,EACZ;AAAA,EAEA,SAAS;AACP,WAAO;AAAA;AAAA;AAAA,EAGT;AAAA,EAEA,OAAO;AACL,SAAK,aAAa,QAAQ,UAAU;AAEpC,QAAI,KAAK,UAAU;AACjB,WAAK,aAAa,YAAY,GAAG;AAAA,IACnC,OAAO;AACL,WAAK,aAAa,YAAY,IAAI;AAAA,IACpC;AAAA,EACF;AACF;AA/BqB,cACZ,SAAS,CAAC,mBAAmB;AAGpC;AAAA,EADC,SAAS,EAAE,MAAM,SAAS,SAAS,KAAK,CAAC;AAAA,GAHvB,cAInB;AAGA;AAAA,EADC,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GANP,cAOnB;AAGA;AAAA,EADC,SAAS,EAAE,MAAM,OAAO,CAAC;AAAA,GATP,cAUnB;AAVmB,gBAArB;AAAA,EADC,cAAc,iBAAiB;AAAA,GACX;","names":[]}