UNPKG

@junte/ui

Version:

Quality Angular UI components kit

112 lines 9.65 kB
import { __decorate, __metadata, __read } from "tslib"; import { Component, HostBinding, Input } from '@angular/core'; import { PropertyApi } from '../../core/decorators/api'; import { Size } from '../../core/enums/size'; import { Stroke } from '../../core/enums/stroke'; import { IconType } from './enums'; var DEFAULT_ICONSET = 'junte-ui-icons-default'; var IconComponent = /** @class */ (function () { function IconComponent() { this.host = 'jnt-icon-host'; this.iconType = IconType; this._size = Size.auto; this._stroke = Stroke.normal; this.type = IconType.font; this.iconset = DEFAULT_ICONSET; this.color = null; } Object.defineProperty(IconComponent.prototype, "icon", { set: function (query) { var _a; if (!query) { console.warn('Icon query was not passed'); return; } var _b = __read(query.split(':'), 4), icon = _b[0], type = _b[1], iconset = _b[2], tags = _b[3]; _a = __read([icon, type || IconType.font, iconset || DEFAULT_ICONSET, !!tags ? tags.split('|') : []], 4), this._icon = _a[0], this.type = _a[1], this.iconset = _a[2], this.tags = _a[3]; }, enumerable: true, configurable: true }); Object.defineProperty(IconComponent.prototype, "stroke", { get: function () { return this._stroke; }, set: function (stroke) { this._stroke = stroke || Stroke.normal; }, enumerable: true, configurable: true }); Object.defineProperty(IconComponent.prototype, "size", { set: function (size) { this._size = size || Size.normal; }, enumerable: true, configurable: true }); __decorate([ HostBinding('attr.host'), __metadata("design:type", Object) ], IconComponent.prototype, "host", void 0); __decorate([ HostBinding('attr.data-size'), __metadata("design:type", String) ], IconComponent.prototype, "_size", void 0); __decorate([ HostBinding('attr.data-icon'), __metadata("design:type", String) ], IconComponent.prototype, "_icon", void 0); __decorate([ HostBinding('attr.data-type'), __metadata("design:type", String) ], IconComponent.prototype, "type", void 0); __decorate([ HostBinding('attr.tags'), __metadata("design:type", Array) ], IconComponent.prototype, "tags", void 0); __decorate([ PropertyApi({ description: 'Icon query in special format', type: '[name:type:iconset]' }), Input(), __metadata("design:type", String), __metadata("design:paramtypes", [String]) ], IconComponent.prototype, "icon", null); __decorate([ PropertyApi({ description: 'Stroke for icon', type: '[ui.stroke]' }), Input(), __metadata("design:type", String), __metadata("design:paramtypes", [String]) ], IconComponent.prototype, "stroke", null); __decorate([ PropertyApi({ description: 'Size for icon', type: '[ui.size]' }), Input(), __metadata("design:type", String), __metadata("design:paramtypes", [String]) ], IconComponent.prototype, "size", null); __decorate([ PropertyApi({ description: 'Color for icon', type: '[ui.color]' }), Input(), __metadata("design:type", Object) ], IconComponent.prototype, "color", void 0); IconComponent = __decorate([ Component({ selector: 'jnt-icon', template: "<ng-container [ngSwitch]=\"type\">\n <jnt-font-icon child-of=\"jnt-icon-host\" *ngSwitchCase=\"iconType.font\"\n [icon]=\"_icon\"\n [iconset]=\"iconset\"\n [color]=\"color\"></jnt-font-icon>\n <jnt-svg-icon child-of=\"jnt-icon-host\" *ngSwitchCase=\"iconType.svg\"\n [icon]=\"_icon\"\n [iconset]=\"iconset\"\n [stroke]=\"stroke\"\n [color]=\"color\"\n [tags]=\"tags\"></jnt-svg-icon>\n <jnt-animated-icon child-of=\"jnt-icon-host\" *ngSwitchCase=\"iconType.animated\"\n [icon]=\"_icon\"\n [iconset]=\"iconset\"\n [color]=\"color\"\n [tags]=\"tags\"></jnt-animated-icon>\n</ng-container>" }) ], IconComponent); return IconComponent; }()); export { IconComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AanVudGUvdWkvIiwic291cmNlcyI6WyJsaWIvZWxlbWVudHMvaWNvbi9pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFbkMsSUFBTSxlQUFlLEdBQUcsd0JBQXdCLENBQUM7QUFNakQ7SUFBQTtRQUVxQyxTQUFJLEdBQUcsZUFBZSxDQUFDO1FBRTFELGFBQVEsR0FBRyxRQUFRLENBQUM7UUFHcEIsVUFBSyxHQUFTLElBQUksQ0FBQyxJQUFJLENBQUM7UUFFeEIsWUFBTyxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFNaEMsU0FBSSxHQUFhLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFFL0IsWUFBTyxHQUFXLGVBQWUsQ0FBQztRQWdEbEMsVUFBSyxHQUFHLElBQUksQ0FBQztJQUVmLENBQUM7SUF4Q0Msc0JBQUksK0JBQUk7YUFBUixVQUFTLEtBQWE7O1lBQ3BCLElBQUksQ0FBQyxLQUFLLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO2dCQUMxQyxPQUFPO2FBQ1I7WUFFSyxJQUFBLGdDQUE4QyxFQUE3QyxZQUFJLEVBQUUsWUFBSSxFQUFFLGVBQU8sRUFBRSxZQUF3QixDQUFDO1lBQ3JELHdHQUNzRyxFQURyRyxrQkFBVSxFQUFFLGlCQUFTLEVBQUUsb0JBQVksRUFBRSxpQkFBUyxDQUN3RDtRQUN6RyxDQUFDOzs7T0FBQTtJQU9ELHNCQUFJLGlDQUFNO2FBSVY7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDdEIsQ0FBQzthQU5ELFVBQVcsTUFBYztZQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ3pDLENBQUM7OztPQUFBO0lBV0Qsc0JBQUksK0JBQUk7YUFBUixVQUFTLElBQVU7WUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUNuQyxDQUFDOzs7T0FBQTtJQXhEeUI7UUFBekIsV0FBVyxDQUFDLFdBQVcsQ0FBQzs7K0NBQWlDO0lBSzFEO1FBREMsV0FBVyxDQUFDLGdCQUFnQixDQUFDOztnREFDTjtJQUt4QjtRQURDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQzs7Z0RBQ2hCO0lBR2Q7UUFEQyxXQUFXLENBQUMsZ0JBQWdCLENBQUM7OytDQUNDO0lBSy9CO1FBREMsV0FBVyxDQUFDLFdBQVcsQ0FBQzs7K0NBQ1Y7SUFPZjtRQUxDLFdBQVcsQ0FBQztZQUNYLFdBQVcsRUFBRSw4QkFBOEI7WUFDM0MsSUFBSSxFQUFFLHFCQUFxQjtTQUM1QixDQUFDO1FBQ0QsS0FBSyxFQUFFOzs7NkNBVVA7SUFPRDtRQUxDLFdBQVcsQ0FBQztZQUNYLFdBQVcsRUFBRSxpQkFBaUI7WUFDOUIsSUFBSSxFQUFFLGFBQWE7U0FDcEIsQ0FBQztRQUNELEtBQUssRUFBRTs7OytDQUdQO0lBV0Q7UUFMQyxXQUFXLENBQUM7WUFDWCxXQUFXLEVBQUUsZUFBZTtZQUM1QixJQUFJLEVBQUUsV0FBVztTQUNsQixDQUFDO1FBQ0QsS0FBSyxFQUFFOzs7NkNBR1A7SUFPRDtRQUxDLFdBQVcsQ0FBQztZQUNYLFdBQVcsRUFBRSxnQkFBZ0I7WUFDN0IsSUFBSSxFQUFFLFlBQVk7U0FDbkIsQ0FBQztRQUNELEtBQUssRUFBRTs7Z0RBQ0s7SUFqRUYsYUFBYTtRQUp6QixTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsVUFBVTtZQUNwQixveUJBQXVDO1NBQ3hDLENBQUM7T0FDVyxhQUFhLENBbUV6QjtJQUFELG9CQUFDO0NBQUEsQUFuRUQsSUFtRUM7U0FuRVksYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQcm9wZXJ0eUFwaSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy9hcGknO1xuaW1wb3J0IHsgU2l6ZSB9IGZyb20gJy4uLy4uL2NvcmUvZW51bXMvc2l6ZSc7XG5pbXBvcnQgeyBTdHJva2UgfSBmcm9tICcuLi8uLi9jb3JlL2VudW1zL3N0cm9rZSc7XG5pbXBvcnQgeyBJY29uVHlwZSB9IGZyb20gJy4vZW51bXMnO1xuXG5jb25zdCBERUZBVUxUX0lDT05TRVQgPSAnanVudGUtdWktaWNvbnMtZGVmYXVsdCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2pudC1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uZW5jYXBzdWxhdGVkLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEljb25Db21wb25lbnQge1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5ob3N0JykgcmVhZG9ubHkgaG9zdCA9ICdqbnQtaWNvbi1ob3N0JztcblxuICBpY29uVHlwZSA9IEljb25UeXBlO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICBfc2l6ZTogU2l6ZSA9IFNpemUuYXV0bztcblxuICBfc3Ryb2tlOiBTdHJva2UgPSBTdHJva2Uubm9ybWFsO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLWljb24nKVxuICBfaWNvbjogc3RyaW5nO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXR5cGUnKVxuICB0eXBlOiBJY29uVHlwZSA9IEljb25UeXBlLmZvbnQ7XG5cbiAgaWNvbnNldDogc3RyaW5nID0gREVGQVVMVF9JQ09OU0VUO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWdzJylcbiAgdGFnczogc3RyaW5nW107XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ0ljb24gcXVlcnkgaW4gc3BlY2lhbCBmb3JtYXQnLFxuICAgIHR5cGU6ICdbbmFtZTp0eXBlOmljb25zZXRdJ1xuICB9KVxuICBASW5wdXQoKVxuICBzZXQgaWNvbihxdWVyeTogc3RyaW5nKSB7XG4gICAgaWYgKCFxdWVyeSkge1xuICAgICAgY29uc29sZS53YXJuKCdJY29uIHF1ZXJ5IHdhcyBub3QgcGFzc2VkJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgW2ljb24sIHR5cGUsIGljb25zZXQsIHRhZ3NdID0gcXVlcnkuc3BsaXQoJzonKTtcbiAgICBbdGhpcy5faWNvbiwgdGhpcy50eXBlLCB0aGlzLmljb25zZXQsIHRoaXMudGFnc10gPVxuICAgICAgW2ljb24sIHR5cGUgYXMgSWNvblR5cGUgfHwgSWNvblR5cGUuZm9udCwgaWNvbnNldCB8fCBERUZBVUxUX0lDT05TRVQsICEhdGFncyA/IHRhZ3Muc3BsaXQoJ3wnKSA6IFtdXTtcbiAgfVxuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdTdHJva2UgZm9yIGljb24nLFxuICAgIHR5cGU6ICdbdWkuc3Ryb2tlXSdcbiAgfSlcbiAgQElucHV0KClcbiAgc2V0IHN0cm9rZShzdHJva2U6IFN0cm9rZSkge1xuICAgIHRoaXMuX3N0cm9rZSA9IHN0cm9rZSB8fCBTdHJva2Uubm9ybWFsO1xuICB9XG5cbiAgZ2V0IHN0cm9rZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fc3Ryb2tlO1xuICB9XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ1NpemUgZm9yIGljb24nLFxuICAgIHR5cGU6ICdbdWkuc2l6ZV0nXG4gIH0pXG4gIEBJbnB1dCgpXG4gIHNldCBzaXplKHNpemU6IFNpemUpIHtcbiAgICB0aGlzLl9zaXplID0gc2l6ZSB8fCBTaXplLm5vcm1hbDtcbiAgfVxuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdDb2xvciBmb3IgaWNvbicsXG4gICAgdHlwZTogJ1t1aS5jb2xvcl0nXG4gIH0pXG4gIEBJbnB1dCgpXG4gIGNvbG9yID0gbnVsbDtcblxufVxuIl19