@junte/ui
Version:
Quality Angular UI components kit
106 lines • 8.15 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Component, HostBinding, Input } from '@angular/core';
import { PropertyApi } from '../../core/decorators/api';
import { Color } from '../../core/enums/color';
import { Position } from '../../core/enums/position';
var BadgeComponent = /** @class */ (function () {
function BadgeComponent() {
this.host = 'jnt-badge-host';
this._position = Position.rightTop;
this._color = Color.purple;
this._overflow = null;
}
Object.defineProperty(BadgeComponent.prototype, "overflow", {
get: function () {
return this._overflow;
},
set: function (overflow) {
this._overflow = overflow || null;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BadgeComponent.prototype, "color", {
get: function () {
return this._color;
},
set: function (color) {
this._color = color || Color.purple;
},
enumerable: true,
configurable: true
});
Object.defineProperty(BadgeComponent.prototype, "position", {
set: function (position) {
this._position = position || Position.inline;
},
enumerable: true,
configurable: true
});
__decorate([
HostBinding('attr.host'),
__metadata("design:type", Object)
], BadgeComponent.prototype, "host", void 0);
__decorate([
HostBinding('attr.data-position'),
__metadata("design:type", String)
], BadgeComponent.prototype, "_position", void 0);
__decorate([
PropertyApi({
description: 'Text to show in badge',
type: 'string',
}),
Input(),
__metadata("design:type", String)
], BadgeComponent.prototype, "text", void 0);
__decorate([
PropertyApi({
description: 'Number to show in badge',
type: 'number',
}),
Input(),
__metadata("design:type", Number)
], BadgeComponent.prototype, "value", void 0);
__decorate([
PropertyApi({
description: 'Max count to show',
type: 'number',
default: '99'
}),
Input(),
__metadata("design:type", Number),
__metadata("design:paramtypes", [Number])
], BadgeComponent.prototype, "overflow", null);
__decorate([
PropertyApi({
description: 'Badge background color',
type: 'string',
default: 'ui.color.primary'
}),
Input(),
__metadata("design:type", String),
__metadata("design:paramtypes", [String])
], BadgeComponent.prototype, "color", null);
__decorate([
PropertyApi({
description: 'Badge position',
path: 'ui.position',
default: 'inline',
options: [Position.inline,
Position.rightTop,
Position.leftTop]
}),
Input(),
__metadata("design:type", String),
__metadata("design:paramtypes", [String])
], BadgeComponent.prototype, "position", null);
BadgeComponent = __decorate([
Component({
selector: 'jnt-badge',
template: "<ng-content></ng-content>\n<div child-of=\"jnt-badge-host\" data-text [style.background-color]=\"color\"\n [style.color]=\"color | textBrightness\">\n {{!!text ? text : (overflow === null || overflow > value ? value : overflow + '+')}}\n</div>"
})
], BadgeComponent);
return BadgeComponent;
}());
export { BadgeComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGp1bnRlL3VpLyIsInNvdXJjZXMiOlsibGliL2VsZW1lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBTXJEO0lBQUE7UUFFcUMsU0FBSSxHQUFHLGdCQUFnQixDQUFDO1FBRzNELGNBQVMsR0FBYSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBRXhDLFdBQU0sR0FBVyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBRXRCLGNBQVMsR0FBRyxJQUFJLENBQUM7SUFtRDNCLENBQUM7SUFoQ1Usc0JBQUksb0NBQVE7YUFJckI7WUFDRSxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDeEIsQ0FBQzthQU5RLFVBQWEsUUFBZ0I7WUFDcEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLElBQUksSUFBSSxDQUFDO1FBQ3BDLENBQUM7OztPQUFBO0lBV1Esc0JBQUksaUNBQUs7YUFJbEI7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDckIsQ0FBQzthQU5RLFVBQVUsS0FBYTtZQUM5QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ3RDLENBQUM7OztPQUFBO0lBY1Esc0JBQUksb0NBQVE7YUFBWixVQUFhLFFBQWtCO1lBQ3RDLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUM7UUFDL0MsQ0FBQzs7O09BQUE7SUF6RHlCO1FBQXpCLFdBQVcsQ0FBQyxXQUFXLENBQUM7O2dEQUFrQztJQUczRDtRQURDLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQzs7cURBQ007SUFVL0I7UUFKUixXQUFXLENBQUM7WUFDWCxXQUFXLEVBQUUsdUJBQXVCO1lBQ3BDLElBQUksRUFBRSxRQUFRO1NBQ2YsQ0FBQztRQUNELEtBQUssRUFBRTs7Z0RBQWM7SUFNYjtRQUpSLFdBQVcsQ0FBQztZQUNYLFdBQVcsRUFBRSx5QkFBeUI7WUFDdEMsSUFBSSxFQUFFLFFBQVE7U0FDZixDQUFDO1FBQ0QsS0FBSyxFQUFFOztpREFBZTtJQU9kO1FBTFIsV0FBVyxDQUFDO1lBQ1gsV0FBVyxFQUFFLG1CQUFtQjtZQUNoQyxJQUFJLEVBQUUsUUFBUTtZQUNkLE9BQU8sRUFBRSxJQUFJO1NBQ2QsQ0FBQztRQUNELEtBQUssRUFBRTs7O2tEQUVQO0lBV1E7UUFMUixXQUFXLENBQUM7WUFDWCxXQUFXLEVBQUUsd0JBQXdCO1lBQ3JDLElBQUksRUFBRSxRQUFRO1lBQ2QsT0FBTyxFQUFFLGtCQUFrQjtTQUM1QixDQUFDO1FBQ0QsS0FBSyxFQUFFOzs7K0NBRVA7SUFjUTtRQVJSLFdBQVcsQ0FBQztZQUNYLFdBQVcsRUFBRSxnQkFBZ0I7WUFDN0IsSUFBSSxFQUFFLGFBQWE7WUFDbkIsT0FBTyxFQUFFLFFBQVE7WUFDakIsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU07Z0JBQ3ZCLFFBQVEsQ0FBQyxRQUFRO2dCQUNqQixRQUFRLENBQUMsT0FBTyxDQUFDO1NBQ3BCLENBQUM7UUFDRCxLQUFLLEVBQUU7OztrREFFUDtJQTNEVSxjQUFjO1FBSjFCLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxXQUFXO1lBQ3JCLG9RQUF3QztTQUN6QyxDQUFDO09BQ1csY0FBYyxDQTREMUI7SUFBRCxxQkFBQztDQUFBLEFBNURELElBNERDO1NBNURZLGNBQWMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvcGVydHlBcGkgfSBmcm9tICcuLi8uLi9jb3JlL2RlY29yYXRvcnMvYXBpJztcbmltcG9ydCB7IENvbG9yIH0gZnJvbSAnLi4vLi4vY29yZS9lbnVtcy9jb2xvcic7XG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uLy4uL2NvcmUvZW51bXMvcG9zaXRpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdqbnQtYmFkZ2UnLFxuICB0ZW1wbGF0ZVVybDogJy4vYmFkZ2UuZW5jYXBzdWxhdGVkLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEJhZGdlQ29tcG9uZW50IHtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuaG9zdCcpIHJlYWRvbmx5IGhvc3QgPSAnam50LWJhZGdlLWhvc3QnO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXBvc2l0aW9uJylcbiAgX3Bvc2l0aW9uOiBQb3NpdGlvbiA9IFBvc2l0aW9uLnJpZ2h0VG9wO1xuXG4gIF9jb2xvcjogc3RyaW5nID0gQ29sb3IucHVycGxlO1xuXG4gIHByaXZhdGUgX292ZXJmbG93ID0gbnVsbDtcblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnVGV4dCB0byBzaG93IGluIGJhZGdlJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgfSlcbiAgQElucHV0KCkgdGV4dDogc3RyaW5nO1xuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdOdW1iZXIgdG8gc2hvdyBpbiBiYWRnZScsXG4gICAgdHlwZTogJ251bWJlcicsXG4gIH0pXG4gIEBJbnB1dCgpIHZhbHVlOiBudW1iZXI7XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ01heCBjb3VudCB0byBzaG93JyxcbiAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICBkZWZhdWx0OiAnOTknXG4gIH0pXG4gIEBJbnB1dCgpIHNldCBvdmVyZmxvdyhvdmVyZmxvdzogbnVtYmVyKSB7XG4gICAgdGhpcy5fb3ZlcmZsb3cgPSBvdmVyZmxvdyB8fCBudWxsO1xuICB9XG5cbiAgZ2V0IG92ZXJmbG93KCkge1xuICAgIHJldHVybiB0aGlzLl9vdmVyZmxvdztcbiAgfVxuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdCYWRnZSBiYWNrZ3JvdW5kIGNvbG9yJyxcbiAgICB0eXBlOiAnc3RyaW5nJyxcbiAgICBkZWZhdWx0OiAndWkuY29sb3IucHJpbWFyeSdcbiAgfSlcbiAgQElucHV0KCkgc2V0IGNvbG9yKGNvbG9yOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb2xvciA9IGNvbG9yIHx8IENvbG9yLnB1cnBsZTtcbiAgfVxuXG4gIGdldCBjb2xvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnQmFkZ2UgcG9zaXRpb24nLFxuICAgIHBhdGg6ICd1aS5wb3NpdGlvbicsXG4gICAgZGVmYXVsdDogJ2lubGluZScsXG4gICAgb3B0aW9uczogW1Bvc2l0aW9uLmlubGluZSxcbiAgICAgIFBvc2l0aW9uLnJpZ2h0VG9wLFxuICAgICAgUG9zaXRpb24ubGVmdFRvcF1cbiAgfSlcbiAgQElucHV0KCkgc2V0IHBvc2l0aW9uKHBvc2l0aW9uOiBQb3NpdGlvbikge1xuICAgIHRoaXMuX3Bvc2l0aW9uID0gcG9zaXRpb24gfHwgUG9zaXRpb24uaW5saW5lO1xuICB9XG59XG4iXX0=