UNPKG

@junte/ui

Version:

Quality Angular UI components kit

93 lines 7.37 kB
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'; let BadgeComponent = class BadgeComponent { constructor() { this.host = 'jnt-badge-host'; this._position = Position.rightTop; this._color = Color.purple; this._overflow = null; } set overflow(overflow) { this._overflow = overflow || null; } get overflow() { return this._overflow; } set color(color) { this._color = color || Color.purple; } get color() { return this._color; } set position(position) { this._position = position || Position.inline; } }; __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); export { BadgeComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGp1bnRlL3VpLyIsInNvdXJjZXMiOlsibGliL2VsZW1lbnRzL2JhZGdlL2JhZGdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBTXJELElBQWEsY0FBYyxHQUEzQixNQUFhLGNBQWM7SUFBM0I7UUFFcUMsU0FBSSxHQUFHLGdCQUFnQixDQUFDO1FBRzNELGNBQVMsR0FBYSxRQUFRLENBQUMsUUFBUSxDQUFDO1FBRXhDLFdBQU0sR0FBVyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBRXRCLGNBQVMsR0FBRyxJQUFJLENBQUM7SUFtRDNCLENBQUM7SUFoQ1UsSUFBSSxRQUFRLENBQUMsUUFBZ0I7UUFDcEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLElBQUksSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQU9RLElBQUksS0FBSyxDQUFDLEtBQWE7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFVUSxJQUFJLFFBQVEsQ0FBQyxRQUFrQjtRQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsSUFBSSxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQy9DLENBQUM7Q0FDRixDQUFBO0FBMUQyQjtJQUF6QixXQUFXLENBQUMsV0FBVyxDQUFDOzs0Q0FBa0M7QUFHM0Q7SUFEQyxXQUFXLENBQUMsb0JBQW9CLENBQUM7O2lEQUNNO0FBVS9CO0lBSlIsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLHVCQUF1QjtRQUNwQyxJQUFJLEVBQUUsUUFBUTtLQUNmLENBQUM7SUFDRCxLQUFLLEVBQUU7OzRDQUFjO0FBTWI7SUFKUixXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUseUJBQXlCO1FBQ3RDLElBQUksRUFBRSxRQUFRO0tBQ2YsQ0FBQztJQUNELEtBQUssRUFBRTs7NkNBQWU7QUFPZDtJQUxSLFdBQVcsQ0FBQztRQUNYLFdBQVcsRUFBRSxtQkFBbUI7UUFDaEMsSUFBSSxFQUFFLFFBQVE7UUFDZCxPQUFPLEVBQUUsSUFBSTtLQUNkLENBQUM7SUFDRCxLQUFLLEVBQUU7Ozs4Q0FFUDtBQVdRO0lBTFIsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLHdCQUF3QjtRQUNyQyxJQUFJLEVBQUUsUUFBUTtRQUNkLE9BQU8sRUFBRSxrQkFBa0I7S0FDNUIsQ0FBQztJQUNELEtBQUssRUFBRTs7OzJDQUVQO0FBY1E7SUFSUixXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUsZ0JBQWdCO1FBQzdCLElBQUksRUFBRSxhQUFhO1FBQ25CLE9BQU8sRUFBRSxRQUFRO1FBQ2pCLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNO1lBQ3ZCLFFBQVEsQ0FBQyxRQUFRO1lBQ2pCLFFBQVEsQ0FBQyxPQUFPLENBQUM7S0FDcEIsQ0FBQztJQUNELEtBQUssRUFBRTs7OzhDQUVQO0FBM0RVLGNBQWM7SUFKMUIsU0FBUyxDQUFDO1FBQ1QsUUFBUSxFQUFFLFdBQVc7UUFDckIsb1FBQXdDO0tBQ3pDLENBQUM7R0FDVyxjQUFjLENBNEQxQjtTQTVEWSxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByb3BlcnR5QXBpIH0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3JzL2FwaSc7XG5pbXBvcnQgeyBDb2xvciB9IGZyb20gJy4uLy4uL2NvcmUvZW51bXMvY29sb3InO1xuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi8uLi9jb3JlL2VudW1zL3Bvc2l0aW9uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnam50LWJhZGdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2JhZGdlLmVuY2Fwc3VsYXRlZC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBCYWRnZUNvbXBvbmVudCB7XG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmhvc3QnKSByZWFkb25seSBob3N0ID0gJ2pudC1iYWRnZS1ob3N0JztcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1wb3NpdGlvbicpXG4gIF9wb3NpdGlvbjogUG9zaXRpb24gPSBQb3NpdGlvbi5yaWdodFRvcDtcblxuICBfY29sb3I6IHN0cmluZyA9IENvbG9yLnB1cnBsZTtcblxuICBwcml2YXRlIF9vdmVyZmxvdyA9IG51bGw7XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ1RleHQgdG8gc2hvdyBpbiBiYWRnZScsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gIH0pXG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZztcblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnTnVtYmVyIHRvIHNob3cgaW4gYmFkZ2UnLFxuICAgIHR5cGU6ICdudW1iZXInLFxuICB9KVxuICBASW5wdXQoKSB2YWx1ZTogbnVtYmVyO1xuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdNYXggY291bnQgdG8gc2hvdycsXG4gICAgdHlwZTogJ251bWJlcicsXG4gICAgZGVmYXVsdDogJzk5J1xuICB9KVxuICBASW5wdXQoKSBzZXQgb3ZlcmZsb3cob3ZlcmZsb3c6IG51bWJlcikge1xuICAgIHRoaXMuX292ZXJmbG93ID0gb3ZlcmZsb3cgfHwgbnVsbDtcbiAgfVxuXG4gIGdldCBvdmVyZmxvdygpIHtcbiAgICByZXR1cm4gdGhpcy5fb3ZlcmZsb3c7XG4gIH1cblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnQmFkZ2UgYmFja2dyb3VuZCBjb2xvcicsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gICAgZGVmYXVsdDogJ3VpLmNvbG9yLnByaW1hcnknXG4gIH0pXG4gIEBJbnB1dCgpIHNldCBjb2xvcihjb2xvcjogc3RyaW5nKSB7XG4gICAgdGhpcy5fY29sb3IgPSBjb2xvciB8fCBDb2xvci5wdXJwbGU7XG4gIH1cblxuICBnZXQgY29sb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xuICB9XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ0JhZGdlIHBvc2l0aW9uJyxcbiAgICBwYXRoOiAndWkucG9zaXRpb24nLFxuICAgIGRlZmF1bHQ6ICdpbmxpbmUnLFxuICAgIG9wdGlvbnM6IFtQb3NpdGlvbi5pbmxpbmUsXG4gICAgICBQb3NpdGlvbi5yaWdodFRvcCxcbiAgICAgIFBvc2l0aW9uLmxlZnRUb3BdXG4gIH0pXG4gIEBJbnB1dCgpIHNldCBwb3NpdGlvbihwb3NpdGlvbjogUG9zaXRpb24pIHtcbiAgICB0aGlzLl9wb3NpdGlvbiA9IHBvc2l0aW9uIHx8IFBvc2l0aW9uLmlubGluZTtcbiAgfVxufVxuIl19