@vindev/particle
Version:
Angular Component Library using Tailwind
52 lines • 5.4 kB
JavaScript
import { Directive, Input } from '@angular/core';
import * as i0 from "@angular/core";
export function ItemMixin(Base = class {
}, defaultItem = {
label: undefined,
placeholder: undefined,
value: undefined,
}) {
class Item extends Base {
constructor() {
super(...arguments);
this._item = Object.assign({}, defaultItem);
}
set label(label) {
if (String.isString(label)) {
this._item.label = label;
}
}
get label() {
return this.item?.label || this._item.label || null;
}
set placeholder(placeholder) {
if (String.isString(placeholder)) {
this._item.placeholder = placeholder;
}
}
get placeholder() {
return this.item?.placeholder || this._item.placeholder || null;
}
set value(value) {
this._item.value = value;
}
get value() {
return this.item?.value || this._item.value;
}
}
Item.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Item, deps: null, target: i0.ɵɵFactoryTarget.Directive });
Item.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: Item, inputs: { item: "item", label: "label", placeholder: "placeholder", value: "value" }, usesInheritance: true, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: Item, decorators: [{
type: Directive
}], propDecorators: { item: [{
type: Input
}], label: [{
type: Input
}], placeholder: [{
type: Input
}], value: [{
type: Input
}] } });
return Item;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5taXhpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGFydGljbGUtbGliL3NyYy9saWIvc2hhcmVkL21peGlucy9pdGVtLm1peGluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUlqRCxNQUFNLFVBQVUsU0FBUyxDQUN2QixPQUFVO0NBQWUsRUFDekIsY0FBYztJQUNaLEtBQUssRUFBRSxTQUFTO0lBQ2hCLFdBQVcsRUFBRSxTQUFTO0lBQ3RCLEtBQUssRUFBRSxTQUFTO0NBQ1o7SUFFTixNQUNNLElBQUssU0FBUSxJQUFJO1FBRHZCOztZQUVFLFVBQUssR0FBTSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQztTQTRCM0M7UUF4QkMsSUFBYSxLQUFLLENBQUMsS0FBb0I7WUFDckMsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMxQixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7YUFDMUI7UUFDSCxDQUFDO1FBQ0QsSUFBSSxLQUFLO1lBQ1AsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDdEQsQ0FBQztRQUVELElBQWEsV0FBVyxDQUFDLFdBQTBCO1lBQ2pELElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtnQkFDaEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO2FBQ3RDO1FBQ0gsQ0FBQztRQUNELElBQUksV0FBVztZQUNiLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxXQUFXLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDO1FBQ2xFLENBQUM7UUFFRCxJQUFhLEtBQUssQ0FBQyxLQUFVO1lBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUMzQixDQUFDO1FBQ0QsSUFBSSxLQUFLO1lBQ1AsT0FBTyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUM5QyxDQUFDOztxR0E1QkcsSUFBSTt5RkFBSixJQUFJOytGQUFKLElBQUk7c0JBRFQsU0FBUztrQ0FJQyxJQUFJOzBCQUFaLEtBQUs7b0JBRU8sS0FBSzswQkFBakIsS0FBSztvQkFTTyxXQUFXOzBCQUF2QixLQUFLO29CQVNPLEtBQUs7MEJBQWpCLEtBQUs7O0lBUVIsT0FBTyxJQUFJLENBQUM7Q0FDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29uc3RydWN0b3IgfSBmcm9tICcuL2NvbnN0cnVjdG9yJztcclxuaW1wb3J0IHsgSUl0ZW0gfSBmcm9tICcuLi8uLi9zaGFyZWQvY29yZS9pdGVtJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBJdGVtTWl4aW48VCBleHRlbmRzIENvbnN0cnVjdG9yPHt9PiwgSSBleHRlbmRzIElJdGVtPihcclxuICBCYXNlOiBUID0gY2xhc3Mge30gYXMgYW55LFxyXG4gIGRlZmF1bHRJdGVtID0ge1xyXG4gICAgbGFiZWw6IHVuZGVmaW5lZCxcclxuICAgIHBsYWNlaG9sZGVyOiB1bmRlZmluZWQsXHJcbiAgICB2YWx1ZTogdW5kZWZpbmVkLFxyXG4gIH0gYXMgSVxyXG4pIHtcclxuICBARGlyZWN0aXZlKClcclxuICBjbGFzcyBJdGVtIGV4dGVuZHMgQmFzZSB7XHJcbiAgICBfaXRlbTogSSA9IE9iamVjdC5hc3NpZ24oe30sIGRlZmF1bHRJdGVtKTtcclxuXHJcbiAgICBASW5wdXQoKSBpdGVtITogSTtcclxuXHJcbiAgICBASW5wdXQoKSBzZXQgbGFiZWwobGFiZWw6IHN0cmluZyB8IG51bGwpIHtcclxuICAgICAgaWYgKFN0cmluZy5pc1N0cmluZyhsYWJlbCkpIHtcclxuICAgICAgICB0aGlzLl9pdGVtLmxhYmVsID0gbGFiZWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGdldCBsYWJlbCgpOiBzdHJpbmcgfCBudWxsIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaXRlbT8ubGFiZWwgfHwgdGhpcy5faXRlbS5sYWJlbCB8fCBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpIHNldCBwbGFjZWhvbGRlcihwbGFjZWhvbGRlcjogc3RyaW5nIHwgbnVsbCkge1xyXG4gICAgICBpZiAoU3RyaW5nLmlzU3RyaW5nKHBsYWNlaG9sZGVyKSkge1xyXG4gICAgICAgIHRoaXMuX2l0ZW0ucGxhY2Vob2xkZXIgPSBwbGFjZWhvbGRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZ2V0IHBsYWNlaG9sZGVyKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pdGVtPy5wbGFjZWhvbGRlciB8fCB0aGlzLl9pdGVtLnBsYWNlaG9sZGVyIHx8IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KCkgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcclxuICAgICAgdGhpcy5faXRlbS52YWx1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgZ2V0IHZhbHVlKCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5pdGVtPy52YWx1ZSB8fCB0aGlzLl9pdGVtLnZhbHVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIEl0ZW07XHJcbn1cclxuIl19