sb-element
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 12.0.1. It is a component library constructed around the SCSS library [Sb-Theming](https://github.com/SeverinBuchser/SbTheming) and supports [Angular Schematics]
34 lines • 4.25 kB
JavaScript
export var Size;
(function (Size) {
Size["EXTRA_SMALL"] = "xs";
Size["SMALL"] = "s";
Size["MEDIUM"] = "m";
Size["LARGE"] = "l";
Size["EXTRA_LARGE"] = "xl";
Size["EXTRA_EXTRA_LARGE"] = "xxl";
})(Size || (Size = {}));
export function mixinSize(core, defaultSize) {
return class extends core {
constructor(...args) {
super(...args);
this.defaultSize = defaultSize;
this.size = defaultSize;
}
get size() {
return this._size;
}
set size(value) {
const size = value || this.defaultSize;
if (size !== this._size) {
if (this._size) {
this._elementRef.nativeElement.classList.remove(`sb--${this._size}`);
}
if (size) {
this._elementRef.nativeElement.classList.add(`sb--${size}`);
}
this._size = size;
}
}
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NiLWVsZW1lbnQvc3JjL2xpYi9jb3JlL2NvbW1vbi1iZWhhdmlvcnMvc2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLENBQU4sSUFBWSxJQU9YO0FBUEQsV0FBWSxJQUFJO0lBQ2QsMEJBQWtCLENBQUE7SUFDbEIsbUJBQVcsQ0FBQTtJQUNYLG9CQUFZLENBQUE7SUFDWixtQkFBVyxDQUFBO0lBQ1gsMEJBQWtCLENBQUE7SUFDbEIsaUNBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQVBXLElBQUksS0FBSixJQUFJLFFBT2Y7QUFhRCxNQUFNLFVBQVUsU0FBUyxDQUN2QixJQUFPLEVBQ1AsV0FBa0I7SUFFbEIsT0FBTyxLQUFNLFNBQVEsSUFBSTtRQXVCdkIsWUFBWSxHQUFHLElBQWdCO1lBQzdCLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDO1lBdEJWLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1lBd0IvQixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztRQUMxQixDQUFDO1FBdEJELElBQUksSUFBSTtZQUNOLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNwQixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBdUI7WUFDOUIsTUFBTSxJQUFJLEdBQUcsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUM7WUFFdkMsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDdkIsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO29CQUNkLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztpQkFDdEU7Z0JBQ0QsSUFBSSxJQUFJLEVBQUU7b0JBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQzdEO2dCQUVELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO2FBQ25CO1FBQ0gsQ0FBQztLQU9GLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb25zdHJ1Y3RvciwgQ29uc3RydWN0b3IgfSBmcm9tIFwiLi9jb25zdHJ1Y3RvclwiO1xuaW1wb3J0IHsgSGFzRWxlbWVudFJlZiB9IGZyb20gXCIuL2hhcy1lbGVtZW50LXJlZlwiO1xuXG5cbmV4cG9ydCBlbnVtIFNpemUge1xuICBFWFRSQV9TTUFMTCA9ICd4cycsXG4gIFNNQUxMID0gJ3MnLFxuICBNRURJVU0gPSAnbScsXG4gIExBUkdFID0gJ2wnLFxuICBFWFRSQV9MQVJHRSA9ICd4bCcsXG4gIEVYVFJBX0VYVFJBX0xBUkdFID0gJ3h4bCdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYW5TaXplIHtcbiAgc2l6ZTogU2l6ZSB8IHVuZGVmaW5lZDtcbiAgZGVmYXVsdFNpemU/OiBTaXplO1xufVxuXG50eXBlIENhblNpemVDdG9yID0gQ29uc3RydWN0b3I8Q2FuU2l6ZT4gJiBBYnN0cmFjdENvbnN0cnVjdG9yPENhblNpemU+O1xuXG5leHBvcnQgZnVuY3Rpb24gbWl4aW5TaXplPFQgZXh0ZW5kcyBBYnN0cmFjdENvbnN0cnVjdG9yPEhhc0VsZW1lbnRSZWY+PihcbiAgY29yZTogVCxcbiAgZGVmYXVsdFNpemU/OiBTaXplXG4pOiBDYW5TaXplQ3RvciAmIFQ7XG5leHBvcnQgZnVuY3Rpb24gbWl4aW5TaXplPFQgZXh0ZW5kcyBDb25zdHJ1Y3RvcjxIYXNFbGVtZW50UmVmPj4oXG4gIGNvcmU6IFQsXG4gIGRlZmF1bHRTaXplPzogU2l6ZVxuKTogQ2FuU2l6ZUN0b3IgJiBUIHtcbiAgcmV0dXJuIGNsYXNzIGV4dGVuZHMgY29yZSB7XG4gICAgcHJpdmF0ZSBfc2l6ZTogU2l6ZSB8IHVuZGVmaW5lZDtcbiAgICBwdWJsaWMgZGVmYXVsdFNpemUgPSBkZWZhdWx0U2l6ZTtcblxuXG4gICAgZ2V0IHNpemUoKTogU2l6ZSB8IHVuZGVmaW5lZCB7XG4gICAgICByZXR1cm4gdGhpcy5fc2l6ZTtcbiAgICB9XG4gICAgc2V0IHNpemUodmFsdWU6IFNpemUgfCB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IHNpemUgPSB2YWx1ZSB8fCB0aGlzLmRlZmF1bHRTaXplO1xuXG4gICAgICBpZiAoc2l6ZSAhPT0gdGhpcy5fc2l6ZSkge1xuICAgICAgICBpZiAodGhpcy5fc2l6ZSkge1xuICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKGBzYi0tJHt0aGlzLl9zaXplfWApO1xuICAgICAgICB9XG4gICAgICAgIGlmIChzaXplKSB7XG4gICAgICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoYHNiLS0ke3NpemV9YCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9zaXplID0gc2l6ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvciguLi5hcmdzOiBBcnJheTxhbnk+KSB7XG4gICAgICBzdXBlciguLi5hcmdzKTtcblxuICAgICAgdGhpcy5zaXplID0gZGVmYXVsdFNpemU7XG4gICAgfVxuICB9XG59XG4iXX0=