var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { html, css } from 'lit';
import { property } from 'lit/decorators.js';
import { classMap } from 'lit/directives/class-map.js';
import { TiniElement, partMap, VaryGroups, generateColorVaries, generateGradientVaries, generateScaleVaries } from 'tinijs';
export class IconFiletypeTsxComponent extends TiniElement {
    static { this.defaultTagName = 'icon-filetype-tsx'; }
    static { this.componentName = 'icon'; }
    static { this.styles = css `:host{--icon-width:var(--scale-md-2x);--icon-height:var(--scale-md-2x);--icon-scheme:none;--icon-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9ImN1cnJlbnRDb2xvciIgY2xhc3M9ImJpIGJpLWZpbGV0eXBlLXRzeCIgdmlld0JveD0iMCAwIDE2IDE2Ij48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNCA0LjVWMTRhMiAyIDAgMCAxLTIgMmgtMXYtMWgxYTEgMSAwIDAgMCAxLTFWNC41aC0yQTEuNSAxLjUgMCAwIDEgOS41IDNWMUg0YTEgMSAwIDAgMC0xIDF2OUgyVjJhMiAyIDAgMCAxIDItMmg1LjV6TTMuMTcyIDE0Ljg0MWExLjEzIDEuMTMgMCAwIDAgLjQwMS44MjNjLjEyOS4xMDguMjg4LjE5Mi40NzguMjUyLjE4OS4wNjEuNDEuMDkxLjY2NS4wOTEuMzM4IDAgLjYyNC0uMDUzLjg1OC0uMTU4LjIzNi0uMTA1LjQxNi0uMjUyLjU0LS40NGExLjE3IDEuMTcgMCAwIDAgLjE4Ny0uNjU2YzAtLjIyNC0uMDQ1LS40MS0uMTM1LS41NmExLjAwMSAxLjAwMSAwIDAgMC0uMzc1LS4zNTcgMi4wMjcgMi4wMjcgMCAwIDAtLjU2Ni0uMjFsLS42Mi0uMTQ0YS45Ny45NyAwIDAgMS0uNDA1LS4xNzYuMzcuMzcgMCAwIDEtLjE0NC0uMjk5YzAtLjE1Ni4wNjItLjI4NC4xODUtLjM4NC4xMjUtLjEwMS4yOTYtLjE1Mi41MTMtLjE1Mi4xNDIgMCAuMjY1LjAyMy4zNjkuMDY4YS42MjQuNjI0IDAgMCAxIC4yNDYuMTgxLjU2LjU2IDAgMCAxIC4xMi4yNThoLjc1YTEuMDkyIDEuMDkyIDAgMCAwLS4yLS41NjYgMS4yMSAxLjIxIDAgMCAwLS41LS40MSAxLjgxMyAxLjgxMyAwIDAgMC0uNzgtLjE1MmMtLjI5MiAwLS41NTEuMDUtLjc3Ni4xNS0uMjI0LjA5OS0uNC4yNC0uNTI3LjQyMS0uMTI3LjE4Mi0uMTkuMzk1LS4xOS42MzkgMCAuMjAxLjA0LjM3Ni4xMjIuNTI0LjA4My4xNDkuMi4yNy4zNTIuMzY3LjE1Mi4wOTUuMzMyLjE2Ny41NC4yMTNsLjYxNy4xNDRjLjIwNy4wNDkuMzYyLjExMy40NjMuMTkzYS4zODcuMzg3IDAgMCAxIC4xNTIuMzI2LjUxMS41MTEgMCAwIDEtLjA4NC4yOS41NTkuNTU5IDAgMCAxLS4yNTUuMTkzIDEuMDcgMS4wNyAwIDAgMS0uNDEzLjA3Yy0uMTE4IDAtLjIyNC0uMDEzLS4zMi0uMDRhLjgzNy44MzcgMCAwIDEtLjI0OS0uMTE1LjU3OC41NzggMCAwIDEtLjI1NS0uMzg0aC0uNzY0Wm0tMS4yNDQgMS4wOXYtMy4zMzdoMS4xMzZ2LS42NjJIMHYuNjYyaDEuMTM0djMuMzM3em03LjA3Ni0zLjk5OWguODkzbC0xLjI3NCAyLjAwNyAxLjI1NCAxLjk5MmgtLjkwOWwtLjg1LTEuNDE1aC0uMDM0bC0uODUzIDEuNDE1SDYuMzdsMS4yMzktMi4wMTYtMS4yMjgtMS45ODNoLjkzMmwuODMyIDEuNDM4aC4wMzVsLjgyNC0xLjQzOFoiLz48L3N2Zz4=');display:inline-block}i{display:flex;align-items:center;justify-content:center;background-image:var(--icon-image);background-repeat:no-repeat;background-size:contain;background-position:center;width:var(--icon-width);height:var(--icon-height)}.scheme{background:var(--icon-scheme);-webkit-mask-image:var(--icon-image);-webkit-mask-size:var(--icon-width) var(--icon-height);-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;mask-image:var(--icon-image);mask-size:var(--icon-width) var(--icon-height);mask-repeat:no-repeat;mask-position:center}${generateColorVaries(({ fullName, color }) => `.${fullName} {--icon-scheme: ${color};}`)}${generateGradientVaries(({ fullName, gradient }) => `.${fullName} {--icon-scheme: ${gradient};}`)}${generateScaleVaries(({ name, fullName }) => `.${fullName} {--icon-width: var(--scale-${name}-2x);--icon-height: var(--scale-${name}-2x);}`)}`; }
    willUpdate() { this.extendRootClasses({ raw: { scheme: !!this.scheme }, overridable: { [VaryGroups.Scale]: this.scale, [VaryGroups.Scheme]: this.scheme } }); }
    render() { return html `<i class=${classMap(this.rootClasses)} part=${partMap(this.rootClasses)}></i>`; }
}
__decorate([
    property({ type: String, reflect: true })
], IconFiletypeTsxComponent.prototype, "scale", void 0);
__decorate([
    property({ type: String, reflect: true })
], IconFiletypeTsxComponent.prototype, "scheme", void 0);
//# sourceMappingURL=filetype-tsx.js.map