import { Component, Prop, Host, h } from '@stencil/core'; import { HeadingVarians, HeadingSectionVariants } from "../../utils/utils"; @Component({ tag: 'hy-heading', styleUrl: 'heading.scss', shadow: true }) export class Heading { @Prop() heading: HeadingVarians = HeadingVarians.default; @Prop() section: HeadingSectionVariants = HeadingSectionVariants.default; render() { const headingInVariants = this.heading in HeadingVarians; const classAttributes = ["hy-heading"]; const sectionClassAttributes = [`hy-heading__${this.section}`].join(" "); return ( <Host> { headingInVariants ? <div class="hy-heading__container"><this.heading class={classAttributes.join(" ")}><slot /></this.heading><span class={sectionClassAttributes}></span></div> : <div class="hy-heading__container"><HeadingVarians.default class={classAttributes.join(" ")}><slot /></HeadingVarians.default><span class={sectionClassAttributes}></span></div> } </Host> ); } }