UNPKG

@vindev/particle

Version:

Angular Component Library using Tailwind

67 lines 7.62 kB
import { Directive, Input } from '@angular/core'; import { ThemeOpt } from '../enums/theme-options'; import * as i0 from "@angular/core"; export function ThemeMixin(Base = class { }) { class Theme extends Base { constructor() { super(...arguments); this.unset = true; this.activeTheme = ThemeOpt.UNSET; } set setPrimary(primary) { this.primary = primary != null && `${primary}` !== 'false'; this.activeTheme = ThemeOpt.PRIMARY; this.unset = false; } set setSecondary(secondary) { this.secondary = secondary != null && `${secondary}` !== 'false'; this.activeTheme = ThemeOpt.SECONDARY; this.unset = false; } set setWarn(warn) { this.warn = warn != null && `${warn}` !== 'false'; this.activeTheme = ThemeOpt.WARN; this.unset = false; } set setNaked(naked) { this.naked = naked != null && `${naked}` !== 'false'; this.activeTheme = ThemeOpt.NAKED; this.unset = false; } setTheme(theme) { const { primary, secondary, warn, naked } = theme; if (primary) { this.setPrimary = primary; } if (secondary) { this.setSecondary = secondary; } if (warn) { this.setWarn = warn; } if (naked) { this.setNaked = naked; } } } Theme.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Theme, deps: null, target: i0.ɵɵFactoryTarget.Directive }); Theme.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: Theme, inputs: { setPrimary: ["primary", "setPrimary"], setSecondary: ["secondary", "setSecondary"], setWarn: ["warn", "setWarn"], setNaked: ["naked", "setNaked"] }, usesInheritance: true, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Theme, decorators: [{ type: Directive }], propDecorators: { setPrimary: [{ type: Input, args: ['primary'] }], setSecondary: [{ type: Input, args: ['secondary'] }], setWarn: [{ type: Input, args: ['warn'] }], setNaked: [{ type: Input, args: ['naked'] }] } }); return Theme; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlbWUubWl4aW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3BhcnRpY2xlLWxpYi9zcmMvbGliL3NoYXJlZC9taXhpbnMvdGhlbWUubWl4aW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQUlsRCxNQUFNLFVBQVUsVUFBVSxDQUN4QixPQUFVO0NBQWU7SUFFekIsTUFDTSxLQUFNLFNBQVEsSUFBSTtRQUR4Qjs7WUFFRSxVQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2IsZ0JBQVcsR0FBVyxRQUFRLENBQUMsS0FBSyxDQUFDO1NBa0R0QztRQS9DQyxJQUFzQixVQUFVLENBQUMsT0FBcUI7WUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLElBQUksSUFBSSxJQUFJLEdBQUcsT0FBTyxFQUFFLEtBQUssT0FBTyxDQUFDO1lBQzNELElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQztZQUNwQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNyQixDQUFDO1FBR0QsSUFBd0IsWUFBWSxDQUFDLFNBQXVCO1lBQzFELElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxJQUFJLElBQUksSUFBSSxHQUFHLFNBQVMsRUFBRSxLQUFLLE9BQU8sQ0FBQztZQUNqRSxJQUFJLENBQUMsV0FBVyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDckIsQ0FBQztRQUdELElBQW1CLE9BQU8sQ0FBQyxJQUFrQjtZQUMzQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLEVBQUUsS0FBSyxPQUFPLENBQUM7WUFDbEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLENBQUM7UUFHRCxJQUFvQixRQUFRLENBQUMsS0FBbUI7WUFDOUMsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLElBQUksSUFBSSxJQUFJLEdBQUcsS0FBSyxFQUFFLEtBQUssT0FBTyxDQUFDO1lBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQztZQUNsQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNyQixDQUFDO1FBRUQsUUFBUSxDQUFDLEtBS1I7WUFDQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEdBQUcsS0FBSyxDQUFDO1lBQ2xELElBQUksT0FBTyxFQUFFO2dCQUNYLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO2FBQzNCO1lBQ0QsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7YUFDL0I7WUFDRCxJQUFJLElBQUksRUFBRTtnQkFDUixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQzthQUNyQjtZQUNELElBQUksS0FBSyxFQUFFO2dCQUNULElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQzs7c0dBbkRHLEtBQUs7MEZBQUwsS0FBSzsrRkFBTCxLQUFLO3NCQURWLFNBQVM7a0NBTWMsVUFBVTswQkFBL0IsS0FBSzsyQkFBQyxTQUFTO29CQU9RLFlBQVk7MEJBQW5DLEtBQUs7MkJBQUMsV0FBVztvQkFPQyxPQUFPOzBCQUF6QixLQUFLOzJCQUFDLE1BQU07b0JBT08sUUFBUTswQkFBM0IsS0FBSzsyQkFBQyxPQUFPOztJQTRCaEIsT0FBTyxLQUFLLENBQUM7Q0FDZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVGhlbWVPcHQgfSBmcm9tICcuLi9lbnVtcy90aGVtZS1vcHRpb25zJztcclxuXHJcbmltcG9ydCB7IENvbnN0cnVjdG9yIH0gZnJvbSAnLi8nO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIFRoZW1lTWl4aW48VCBleHRlbmRzIENvbnN0cnVjdG9yPHt9Pj4oXHJcbiAgQmFzZTogVCA9IGNsYXNzIHt9IGFzIGFueVxyXG4pIHtcclxuICBARGlyZWN0aXZlKClcclxuICBjbGFzcyBUaGVtZSBleHRlbmRzIEJhc2Uge1xyXG4gICAgdW5zZXQgPSB0cnVlO1xyXG4gICAgYWN0aXZlVGhlbWU6IHN0cmluZyA9IFRoZW1lT3B0LlVOU0VUO1xyXG5cclxuICAgIHByaW1hcnkhOiBib29sZWFuO1xyXG4gICAgQElucHV0KCdwcmltYXJ5Jykgc2V0IHNldFByaW1hcnkocHJpbWFyeTogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICAgIHRoaXMucHJpbWFyeSA9IHByaW1hcnkgIT0gbnVsbCAmJiBgJHtwcmltYXJ5fWAgIT09ICdmYWxzZSc7XHJcbiAgICAgIHRoaXMuYWN0aXZlVGhlbWUgPSBUaGVtZU9wdC5QUklNQVJZO1xyXG4gICAgICB0aGlzLnVuc2V0ID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgc2Vjb25kYXJ5ITogYm9vbGVhbjtcclxuICAgIEBJbnB1dCgnc2Vjb25kYXJ5Jykgc2V0IHNldFNlY29uZGFyeShzZWNvbmRhcnk6IGJvb2xlYW4gfCAnJykge1xyXG4gICAgICB0aGlzLnNlY29uZGFyeSA9IHNlY29uZGFyeSAhPSBudWxsICYmIGAke3NlY29uZGFyeX1gICE9PSAnZmFsc2UnO1xyXG4gICAgICB0aGlzLmFjdGl2ZVRoZW1lID0gVGhlbWVPcHQuU0VDT05EQVJZO1xyXG4gICAgICB0aGlzLnVuc2V0ID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgd2FybiE6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoJ3dhcm4nKSBzZXQgc2V0V2Fybih3YXJuOiBib29sZWFuIHwgJycpIHtcclxuICAgICAgdGhpcy53YXJuID0gd2FybiAhPSBudWxsICYmIGAke3dhcm59YCAhPT0gJ2ZhbHNlJztcclxuICAgICAgdGhpcy5hY3RpdmVUaGVtZSA9IFRoZW1lT3B0LldBUk47XHJcbiAgICAgIHRoaXMudW5zZXQgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBuYWtlZCE6IGJvb2xlYW47XHJcbiAgICBASW5wdXQoJ25ha2VkJykgc2V0IHNldE5ha2VkKG5ha2VkOiBib29sZWFuIHwgJycpIHtcclxuICAgICAgdGhpcy5uYWtlZCA9IG5ha2VkICE9IG51bGwgJiYgYCR7bmFrZWR9YCAhPT0gJ2ZhbHNlJztcclxuICAgICAgdGhpcy5hY3RpdmVUaGVtZSA9IFRoZW1lT3B0Lk5BS0VEO1xyXG4gICAgICB0aGlzLnVuc2V0ID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0VGhlbWUodGhlbWU6IHtcclxuICAgICAgcHJpbWFyeT86IGJvb2xlYW47XHJcbiAgICAgIHNlY29uZGFyeT86IGJvb2xlYW47XHJcbiAgICAgIHdhcm4/OiBib29sZWFuO1xyXG4gICAgICBuYWtlZD86IGJvb2xlYW47XHJcbiAgICB9KSB7XHJcbiAgICAgIGNvbnN0IHsgcHJpbWFyeSwgc2Vjb25kYXJ5LCB3YXJuLCBuYWtlZCB9ID0gdGhlbWU7XHJcbiAgICAgIGlmIChwcmltYXJ5KSB7XHJcbiAgICAgICAgdGhpcy5zZXRQcmltYXJ5ID0gcHJpbWFyeTtcclxuICAgICAgfVxyXG4gICAgICBpZiAoc2Vjb25kYXJ5KSB7XHJcbiAgICAgICAgdGhpcy5zZXRTZWNvbmRhcnkgPSBzZWNvbmRhcnk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHdhcm4pIHtcclxuICAgICAgICB0aGlzLnNldFdhcm4gPSB3YXJuO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChuYWtlZCkge1xyXG4gICAgICAgIHRoaXMuc2V0TmFrZWQgPSBuYWtlZDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIFRoZW1lO1xyXG59XHJcbiJdfQ==