@universal-material/web
Version:
Material web components
39 lines • 1.16 kB
JavaScript
import { __decorate } from "tslib";
import { html, LitElement } from 'lit';
import { customElement, property, state } from 'lit/decorators.js';
import { classMap } from 'lit/directives/class-map.js';
import { styles } from './badge.styles.js';
let UmBadge = class UmBadge extends LitElement {
constructor() {
super(...arguments);
this.static = false;
this._empty = true;
}
static { this.styles = styles; }
render() {
const containerClasses = classMap({
static: this.static,
empty: this._empty,
});
return html `
<div class="container ${containerClasses}" part="container">
<slot @slotchange=${this.#handleSlotChange}></slot>
</div>
`;
}
#handleSlotChange(e) {
const slot = e.target;
this._empty = !!slot.assignedElements().length;
}
};
__decorate([
property({ type: Boolean, reflect: true })
], UmBadge.prototype, "static", void 0);
__decorate([
state()
], UmBadge.prototype, "_empty", void 0);
UmBadge = __decorate([
customElement('u-badge')
], UmBadge);
export { UmBadge };
//# sourceMappingURL=badge.js.map