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 { styleMap } from 'lit/directives/style-map.js';
import { TiniElement, partMap, VaryGroups, generateColorVaries, generateGradientVaries, generateScaleVaries } from 'tinijs';
export class IconSectionComponent extends TiniElement {
    static { this.defaultTagName = 'icon-section'; }
    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,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTYgNTEyIj48cGF0aCBkPSJNNjQuOSA5NmMyLjItMTEuNiA4LjgtMTkuOCAyMS4xLTI1LjQgMTMuOC02LjIgMzQuOC04LjkgNjEuMi00LjUgOC44IDEuNCAzNi4xIDcuMSA0NC4xIDkuMyAxNyA0LjggMzQuNy01LjEgMzkuNS0yMi4ycy01LjEtMzQuNy0yMi4yLTM5LjVjLTExLjEtMy4xLTQxLTkuMi01MC45LTEwLjgtMzQuNy01LjYtNjkuNC0zLjUtOTggOS40QzI5LjkgMjUuOCA3LjUgNTAuOSAxLjYgODYuNWMtLjEuNS0uMiAxLjEtLjIgMS42LTIuMiAxOS43LjMgMzcuOSA4LjEgNTQuMSA3LjcgMTYuMSAxOS40IDI4IDMyIDM2LjkuNi41IDEuMy45IDIgMS40LTIxLjIgMTMuNy0zNyAzNC42LTQxLjggNjIuNS0uMS42LS4yIDEuMS0uMiAxLjctMi4zIDE5LjMuNCAzNy4xIDguNCA1MyA3LjkgMTUuNiAxOS44IDI3IDMyLjMgMzUuNSAyMi40IDE1LjIgNTEuOSAyNCA3NS40IDMxbDMuNyAxLjFjMjcuMiA4LjIgNDYuOSAxNC42IDU5LjQgMjMuOCA1LjUgNCA4LjIgNy42IDkuNSAxMC45IDEuMyAzLjIgMi42IDguNi45IDE4LjEtMS43IDEwLjEtNy43IDE4LTIwLjcgMjMuNS0xNCA2LTM1LjQgOC41LTYyIDQuNC0xMi44LTIuMS0zNS4xLTkuNy01NC4xLTE2LjItNC4zLTEuNS04LjUtMi45LTEyLjMtNC4yLTE2LjctNS42LTM0LjggMy41LTQwLjQgMjAuMnMzLjUgMzQuOSAyMC4zIDQwLjVjMi42LjggNS43IDEuOSA5LjIgMy4xIDE4LjYgNi4zIDQ4LjUgMTYuNiA2Ny4zIDE5LjZoLjJjMzQuNSA1LjQgNjguOCAzLjQgOTcuMi04LjcgMjkuNC0xMi42IDUyLjUtMzYuNSA1OC41LTcxLjUgMy4zLTE5LjMgMS45LTM3LjQtNS01My45LTYuMy0xNS0xNi40LTI2LjQtMjcuNi0zNS4yIDE2LjUtMTMuOSAyOC41LTMzLjIgMzIuNi01OC4yIDMuMi0xOS44IDEuOS0zOC4zLTQuOC01NS4xLTYuNy0xNi44LTE3LjgtMjkuNC0zMC4yLTM5LTIyLjgtMTcuNi01My42LTI3LjQtNzcuNy0zNWwtMS40LS41Yy0yNy40LTguNy00Ny44LTE1LjMtNjEuNS0yNS02LjEtNC40LTkuNS04LjUtMTEuNC0xMi40LTEuOC0zLjctMy4yLTkuMy0yLjMtMTguNXptNzYuNyAyMDguNWMtLjItLjEtLjQtLjEtLjYtLjJsLTEuNC0uNGMtMjcuNC04LjItNDcuOS0xNC41LTYxLjctMjMuOC02LjItNC4yLTkuMy03LjktMTEtMTEuMy0xLjUtMy0yLjktNy43LTIuMS0xNS43IDEuOS05LjcgNy45LTE3LjMgMjAuNS0yMi43IDE0LTYgMzUuNC04LjUgNjIuMS00LjNsMTYuNCAyLjZjNi4zIDIuOSAxMS43IDYgMTYuMiA5LjUgNS41IDQuMiA4LjQgOC4yIDEwIDEyLjIgMS42IDQgMi44IDEwLjQgMS4xIDIwLjktMi40IDE0LjctMTIuOCAyNi40LTM3LjEgMzFsLTEyLjQgMi4zeiIvPjwvc3ZnPg==');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(changedValues) { super.willUpdate(changedValues); this.extendRootClassesParts({ scheme: !!this.scheme, [`${VaryGroups.Scale}-${this.scale}`]: !!this.scale, [`${VaryGroups.Scheme}-${this.scheme}`]: !!this.scheme }); }
    render() { return html `<i part=${partMap(this.rootClassesParts)} class=${classMap(this.rootClassesParts)} style=${styleMap(this.rootStyles)}></i>`; }
}
__decorate([
    property({ type: String, reflect: true })
], IconSectionComponent.prototype, "scale", void 0);
__decorate([
    property({ type: String, reflect: true })
], IconSectionComponent.prototype, "scheme", void 0);
//# sourceMappingURL=section.js.map