@vindev/particle
Version:
Angular Component Library using Tailwind
80 lines • 7.15 kB
JavaScript
import { Directive, Input } from '@angular/core';
import { Sizes } from '../enums';
import '../utils/string.extensions';
import * as i0 from "@angular/core";
export function SizeMixin(Base = class {
}) {
class Size extends Base {
constructor() {
super(...arguments);
this.Sizes = Sizes;
this.size = Sizes.M;
}
set setSize(size) {
for (const key in Sizes) {
if (size?.compare(key, 0) ||
size?.compare(Sizes[key], 0)) {
this.size = Sizes[key];
}
}
}
set setS(s) {
this.size = Sizes.S;
}
set setSmall(s) {
this.size = Sizes.S;
}
set setM(m) {
this.size = Sizes.M;
}
set setMedium(m) {
this.size = Sizes.M;
}
set setL(l) {
this.size = Sizes.L;
}
set setLarge(l) {
this.size = Sizes.L;
}
set setXl(xl) {
this.size = Sizes.XL;
}
set setXlarge(xl) {
this.size = Sizes.XL;
}
}
Size.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Size, deps: null, target: i0.ɵɵFactoryTarget.Directive });
Size.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: Size, inputs: { setSize: ["size", "setSize"], setS: ["S", "setS"], setSmall: ["small", "setSmall"], setM: ["M", "setM"], setMedium: ["medium", "setMedium"], setL: ["L", "setL"], setLarge: ["large", "setLarge"], setXl: ["XL", "setXl"], setXlarge: ["xlarge", "setXlarge"] }, usesInheritance: true, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Size, decorators: [{
type: Directive
}], propDecorators: { setSize: [{
type: Input,
args: ['size']
}], setS: [{
type: Input,
args: ['S']
}], setSmall: [{
type: Input,
args: ['small']
}], setM: [{
type: Input,
args: ['M']
}], setMedium: [{
type: Input,
args: ['medium']
}], setL: [{
type: Input,
args: ['L']
}], setLarge: [{
type: Input,
args: ['large']
}], setXl: [{
type: Input,
args: ['XL']
}], setXlarge: [{
type: Input,
args: ['xlarge']
}] } });
return Size;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGFydGljbGUtbGliL3NyYy9saWIvc2hhcmVkL21peGlucy9zaXplLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDakMsT0FBTyw0QkFBNEIsQ0FBQzs7QUFFcEMsTUFBTSxVQUFVLFNBQVMsQ0FBNEIsT0FBVTtDQUFhO0lBQzFFLE1BQ00sSUFBSyxTQUFRLElBQUk7UUFEdkI7O1lBRUUsVUFBSyxHQUFHLEtBQUssQ0FBQztZQUNkLFNBQUksR0FBVSxLQUFLLENBQUMsQ0FBQyxDQUFDO1NBbUN2QjtRQWxDQyxJQUFtQixPQUFPLENBQUMsSUFBb0I7WUFDN0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxLQUFLLEVBQUU7Z0JBQ3ZCLElBQ0UsSUFBSSxFQUFFLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO29CQUNyQixJQUFJLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUF5QixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQ2xEO29CQUNBLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEdBQXlCLENBQUMsQ0FBQztpQkFDOUM7YUFDRjtRQUNILENBQUM7UUFDRCxJQUFnQixJQUFJLENBQUMsQ0FBUztZQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQW9CLFFBQVEsQ0FBQyxDQUFTO1lBQ3BDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsSUFBZ0IsSUFBSSxDQUFDLENBQVM7WUFDNUIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7UUFDRCxJQUFxQixTQUFTLENBQUMsQ0FBUztZQUN0QyxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQztRQUNELElBQWdCLElBQUksQ0FBQyxDQUFTO1lBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN0QixDQUFDO1FBQ0QsSUFBb0IsUUFBUSxDQUFDLENBQVM7WUFDcEMsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7UUFDRCxJQUFpQixLQUFLLENBQUMsRUFBVTtZQUMvQixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDdkIsQ0FBQztRQUNELElBQXFCLFNBQVMsQ0FBQyxFQUFVO1lBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QixDQUFDOztxR0FwQ0csSUFBSTt5RkFBSixJQUFJOytGQUFKLElBQUk7c0JBRFQsU0FBUztrQ0FJVyxPQUFPOzBCQUF6QixLQUFLOzJCQUFDLE1BQU07b0JBVUcsSUFBSTswQkFBbkIsS0FBSzsyQkFBQyxHQUFHO29CQUdVLFFBQVE7MEJBQTNCLEtBQUs7MkJBQUMsT0FBTztvQkFHRSxJQUFJOzBCQUFuQixLQUFLOzJCQUFDLEdBQUc7b0JBR1csU0FBUzswQkFBN0IsS0FBSzsyQkFBQyxRQUFRO29CQUdDLElBQUk7MEJBQW5CLEtBQUs7MkJBQUMsR0FBRztvQkFHVSxRQUFROzBCQUEzQixLQUFLOzJCQUFDLE9BQU87b0JBR0csS0FBSzswQkFBckIsS0FBSzsyQkFBQyxJQUFJO29CQUdVLFNBQVM7MEJBQTdCLEtBQUs7MkJBQUMsUUFBUTs7SUFLakIsT0FBTyxJQUFJLENBQUM7Q0FDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yJztcclxuaW1wb3J0IHsgU2l6ZXMgfSBmcm9tICcuLi9lbnVtcyc7XHJcbmltcG9ydCAnLi4vdXRpbHMvc3RyaW5nLmV4dGVuc2lvbnMnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFNpemVNaXhpbjxUIGV4dGVuZHMgQ29uc3RydWN0b3I8e30+PihCYXNlOiBUID0gY2xhc3Mge30gYXMgVCkge1xyXG4gIEBEaXJlY3RpdmUoKVxyXG4gIGNsYXNzIFNpemUgZXh0ZW5kcyBCYXNlIHtcclxuICAgIFNpemVzID0gU2l6ZXM7XHJcbiAgICBzaXplOiBTaXplcyA9IFNpemVzLk07XHJcbiAgICBASW5wdXQoJ3NpemUnKSBzZXQgc2V0U2l6ZShzaXplOiBTaXplcyB8IHN0cmluZykge1xyXG4gICAgICBmb3IgKGNvbnN0IGtleSBpbiBTaXplcykge1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIHNpemU/LmNvbXBhcmUoa2V5LCAwKSB8fFxyXG4gICAgICAgICAgc2l6ZT8uY29tcGFyZShTaXplc1trZXkgYXMga2V5b2YgdHlwZW9mIFNpemVzXSwgMClcclxuICAgICAgICApIHtcclxuICAgICAgICAgIHRoaXMuc2l6ZSA9IFNpemVzW2tleSBhcyBrZXlvZiB0eXBlb2YgU2l6ZXNdO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQElucHV0KCdTJykgc2V0IHNldFMoczogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuc2l6ZSA9IFNpemVzLlM7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoJ3NtYWxsJykgc2V0IHNldFNtYWxsKHM6IHN0cmluZykge1xyXG4gICAgICB0aGlzLnNpemUgPSBTaXplcy5TO1xyXG4gICAgfVxyXG4gICAgQElucHV0KCdNJykgc2V0IHNldE0obTogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuc2l6ZSA9IFNpemVzLk07XHJcbiAgICB9XHJcbiAgICBASW5wdXQoJ21lZGl1bScpIHNldCBzZXRNZWRpdW0obTogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuc2l6ZSA9IFNpemVzLk07XHJcbiAgICB9XHJcbiAgICBASW5wdXQoJ0wnKSBzZXQgc2V0TChsOiBzdHJpbmcpIHtcclxuICAgICAgdGhpcy5zaXplID0gU2l6ZXMuTDtcclxuICAgIH1cclxuICAgIEBJbnB1dCgnbGFyZ2UnKSBzZXQgc2V0TGFyZ2UobDogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuc2l6ZSA9IFNpemVzLkw7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoJ1hMJykgc2V0IHNldFhsKHhsOiBzdHJpbmcpIHtcclxuICAgICAgdGhpcy5zaXplID0gU2l6ZXMuWEw7XHJcbiAgICB9XHJcbiAgICBASW5wdXQoJ3hsYXJnZScpIHNldCBzZXRYbGFyZ2UoeGw6IHN0cmluZykge1xyXG4gICAgICB0aGlzLnNpemUgPSBTaXplcy5YTDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJldHVybiBTaXplO1xyXG59XHJcbiJdfQ==