UNPKG

@junte/ui

Version:

Quality Angular UI components kit

112 lines 9.52 kB
import { __decorate, __metadata } from "tslib"; import { ContentChildren, EventEmitter, HostBinding, Input, Output, QueryList } from '@angular/core'; import { LinkTarget } from '../link/enums'; import { PropertyApi } from '../../core/decorators/api'; import { UI } from '../../core/enums/ui'; import { UrlMatching } from '../../core/enums/url'; import { BadgeComponent } from '../../elements/badge/badge.component'; export class AbstractMenuItem { constructor() { this.ui = UI; this._matching = UrlMatching.fullMatch; this.opened = false; this.loading = false; this.disabled = false; this.target = LinkTarget.self; this.matching = UrlMatching.fullMatch; this.click = new EventEmitter(); } set __link__(link) { this.link = (typeof (link) === 'string' || link instanceof Array ? { source: link, position: null } : link); } } __decorate([ HostBinding('attr.opened'), __metadata("design:type", Object) ], AbstractMenuItem.prototype, "opened", void 0); __decorate([ PropertyApi({ description: 'Loading for menu item', default: 'false', type: 'boolean' }), Input(), __metadata("design:type", Object) ], AbstractMenuItem.prototype, "loading", void 0); __decorate([ PropertyApi({ description: 'Icon for menu item', type: 'string' }), Input(), __metadata("design:type", String) ], AbstractMenuItem.prototype, "icon", void 0); __decorate([ PropertyApi({ description: 'Disable menu item', type: 'boolean', default: 'false' }), Input(), __metadata("design:type", Object) ], AbstractMenuItem.prototype, "disabled", void 0); __decorate([ PropertyApi({ description: 'Menu item title', type: 'string' }), Input(), __metadata("design:type", String) ], AbstractMenuItem.prototype, "title", void 0); __decorate([ PropertyApi({ name: 'link', description: 'Menu item source', type: 'string | string[] | Link' }), Input('link'), __metadata("design:type", Object), __metadata("design:paramtypes", [Object]) ], AbstractMenuItem.prototype, "__link__", null); __decorate([ PropertyApi({ description: 'Menu item target', type: 'string', default: LinkTarget.self, options: [LinkTarget.blank, LinkTarget.parent, LinkTarget.self, LinkTarget.top] }), Input(), __metadata("design:type", String) ], AbstractMenuItem.prototype, "target", void 0); __decorate([ PropertyApi({ description: 'Methods of matching', path: 'ui.matching', default: UrlMatching.fullMatch, options: [UrlMatching.fullMatch, UrlMatching.wildcard] }), Input(), __metadata("design:type", String) ], AbstractMenuItem.prototype, "matching", void 0); __decorate([ PropertyApi({ description: 'Set active menu item', type: 'boolean' }), Input(), __metadata("design:type", Boolean) ], AbstractMenuItem.prototype, "active", void 0); __decorate([ PropertyApi({ description: 'Output event for click on menu item' }), Output(), __metadata("design:type", Object) ], AbstractMenuItem.prototype, "click", void 0); __decorate([ ContentChildren(BadgeComponent), __metadata("design:type", QueryList) ], AbstractMenuItem.prototype, "badges", void 0); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbWVudS1pdGVtLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGp1bnRlL3VpLyIsInNvdXJjZXMiOlsibGliL25hdmlnYXRpb24vbWVudS9hYnN0cmFjdC1tZW51LWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQU90RSxNQUFNLE9BQWdCLGdCQUFnQjtJQUF0QztRQUVFLE9BQUUsR0FBRyxFQUFFLENBQUM7UUFJUixjQUFTLEdBQWdCLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFHL0MsV0FBTSxHQUFHLEtBQUssQ0FBQztRQVFmLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFjUCxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBMkIxQixXQUFNLEdBQVcsVUFBVSxDQUFDLElBQUksQ0FBQztRQVVqQyxhQUFRLEdBQWdCLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFhOUMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFLbEMsQ0FBQztJQXhDQyxJQUFJLFFBQVEsQ0FBQyxJQUE4QjtRQUN6QyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLFFBQVEsSUFBSSxJQUFJLFlBQVksS0FBSztZQUM5RCxDQUFDLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFTLENBQUM7SUFDckQsQ0FBQztDQXFDRjtBQTdFQztJQURDLFdBQVcsQ0FBQyxhQUFhLENBQUM7O2dEQUNaO0FBUWY7SUFOQyxXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUsdUJBQXVCO1FBQ3BDLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLElBQUksRUFBRSxTQUFTO0tBQ2hCLENBQUM7SUFDRCxLQUFLLEVBQUU7O2lEQUNRO0FBT2hCO0lBTEMsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLG9CQUFvQjtRQUNqQyxJQUFJLEVBQUUsUUFBUTtLQUNmLENBQUM7SUFDRCxLQUFLLEVBQUU7OzhDQUNLO0FBT0o7SUFMUixXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUsbUJBQW1CO1FBQ2hDLElBQUksRUFBRSxTQUFTO1FBQ2YsT0FBTyxFQUFFLE9BQU87S0FDakIsQ0FBQztJQUNELEtBQUssRUFBRTs7a0RBQWtCO0FBTzFCO0lBTEMsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLGlCQUFpQjtRQUM5QixJQUFJLEVBQUUsUUFBUTtLQUNmLENBQUM7SUFDRCxLQUFLLEVBQUU7OytDQUNNO0FBUWQ7SUFOQyxXQUFXLENBQUM7UUFDWCxJQUFJLEVBQUUsTUFBTTtRQUNaLFdBQVcsRUFBRSxrQkFBa0I7UUFDL0IsSUFBSSxFQUFFLDBCQUEwQjtLQUNqQyxDQUFDO0lBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQzs7O2dEQUliO0FBU0Q7SUFQQyxXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUsa0JBQWtCO1FBQy9CLElBQUksRUFBRSxRQUFRO1FBQ2QsT0FBTyxFQUFFLFVBQVUsQ0FBQyxJQUFJO1FBQ3hCLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUM7S0FDaEYsQ0FBQztJQUNELEtBQUssRUFBRTs7Z0RBQ3lCO0FBVWpDO0lBUkMsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLHFCQUFxQjtRQUNsQyxJQUFJLEVBQUUsYUFBYTtRQUNuQixPQUFPLEVBQUUsV0FBVyxDQUFDLFNBQVM7UUFDOUIsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLFNBQVM7WUFDN0IsV0FBVyxDQUFDLFFBQVEsQ0FBQztLQUN4QixDQUFDO0lBQ0QsS0FBSyxFQUFFOztrREFDc0M7QUFPOUM7SUFMQyxXQUFXLENBQUM7UUFDWCxXQUFXLEVBQUUsc0JBQXNCO1FBQ25DLElBQUksRUFBRSxTQUFTO0tBQ2hCLENBQUM7SUFDRCxLQUFLLEVBQUU7O2dEQUNRO0FBTWhCO0lBSkMsV0FBVyxDQUFDO1FBQ1gsV0FBVyxFQUFFLHFDQUFxQztLQUNuRCxDQUFDO0lBQ0QsTUFBTSxFQUFFOzsrQ0FDdUI7QUFHaEM7SUFEQyxlQUFlLENBQUMsY0FBYyxDQUFDOzhCQUN4QixTQUFTO2dEQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRlbnRDaGlsZHJlbiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaW5rVGFyZ2V0IH0gZnJvbSAnLi4vbGluay9lbnVtcyc7XG5pbXBvcnQgeyBQcm9wZXJ0eUFwaSB9IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9ycy9hcGknO1xuaW1wb3J0IHsgVUkgfSBmcm9tICcuLi8uLi9jb3JlL2VudW1zL3VpJztcbmltcG9ydCB7IFVybE1hdGNoaW5nIH0gZnJvbSAnLi4vLi4vY29yZS9lbnVtcy91cmwnO1xuaW1wb3J0IHsgQmFkZ2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9iYWRnZS9iYWRnZS5jb21wb25lbnQnO1xuXG5pbnRlcmZhY2UgTGluayB7XG4gIHNvdXJjZTogc3RyaW5nIHwgYW55W107XG4gIGZyYWdtZW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdE1lbnVJdGVtIHtcblxuICB1aSA9IFVJO1xuXG4gIGxpbms6IExpbms7XG5cbiAgX21hdGNoaW5nOiBVcmxNYXRjaGluZyA9IFVybE1hdGNoaW5nLmZ1bGxNYXRjaDtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIub3BlbmVkJylcbiAgb3BlbmVkID0gZmFsc2U7XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ0xvYWRpbmcgZm9yIG1lbnUgaXRlbScsXG4gICAgZGVmYXVsdDogJ2ZhbHNlJyxcbiAgICB0eXBlOiAnYm9vbGVhbidcbiAgfSlcbiAgQElucHV0KClcbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdJY29uIGZvciBtZW51IGl0ZW0nLFxuICAgIHR5cGU6ICdzdHJpbmcnXG4gIH0pXG4gIEBJbnB1dCgpXG4gIGljb246IHN0cmluZztcblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnRGlzYWJsZSBtZW51IGl0ZW0nLFxuICAgIHR5cGU6ICdib29sZWFuJyxcbiAgICBkZWZhdWx0OiAnZmFsc2UnXG4gIH0pXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ01lbnUgaXRlbSB0aXRsZScsXG4gICAgdHlwZTogJ3N0cmluZydcbiAgfSlcbiAgQElucHV0KClcbiAgdGl0bGU6IHN0cmluZztcblxuICBAUHJvcGVydHlBcGkoe1xuICAgIG5hbWU6ICdsaW5rJyxcbiAgICBkZXNjcmlwdGlvbjogJ01lbnUgaXRlbSBzb3VyY2UnLFxuICAgIHR5cGU6ICdzdHJpbmcgfCBzdHJpbmdbXSB8IExpbmsnXG4gIH0pXG4gIEBJbnB1dCgnbGluaycpXG4gIHNldCBfX2xpbmtfXyhsaW5rOiBzdHJpbmcgfCBzdHJpbmdbXSB8IExpbmspIHtcbiAgICB0aGlzLmxpbmsgPSAodHlwZW9mIChsaW5rKSA9PT0gJ3N0cmluZycgfHwgbGluayBpbnN0YW5jZW9mIEFycmF5XG4gICAgICA/IHtzb3VyY2U6IGxpbmssIHBvc2l0aW9uOiBudWxsfSA6IGxpbmspIGFzIExpbms7XG4gIH1cblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnTWVudSBpdGVtIHRhcmdldCcsXG4gICAgdHlwZTogJ3N0cmluZycsXG4gICAgZGVmYXVsdDogTGlua1RhcmdldC5zZWxmLFxuICAgIG9wdGlvbnM6IFtMaW5rVGFyZ2V0LmJsYW5rLCBMaW5rVGFyZ2V0LnBhcmVudCwgTGlua1RhcmdldC5zZWxmLCBMaW5rVGFyZ2V0LnRvcF1cbiAgfSlcbiAgQElucHV0KClcbiAgdGFyZ2V0OiBzdHJpbmcgPSBMaW5rVGFyZ2V0LnNlbGY7XG5cbiAgQFByb3BlcnR5QXBpKHtcbiAgICBkZXNjcmlwdGlvbjogJ01ldGhvZHMgb2YgbWF0Y2hpbmcnLFxuICAgIHBhdGg6ICd1aS5tYXRjaGluZycsXG4gICAgZGVmYXVsdDogVXJsTWF0Y2hpbmcuZnVsbE1hdGNoLFxuICAgIG9wdGlvbnM6IFtVcmxNYXRjaGluZy5mdWxsTWF0Y2gsXG4gICAgICBVcmxNYXRjaGluZy53aWxkY2FyZF1cbiAgfSlcbiAgQElucHV0KClcbiAgbWF0Y2hpbmc6IFVybE1hdGNoaW5nID0gVXJsTWF0Y2hpbmcuZnVsbE1hdGNoO1xuXG4gIEBQcm9wZXJ0eUFwaSh7XG4gICAgZGVzY3JpcHRpb246ICdTZXQgYWN0aXZlIG1lbnUgaXRlbScsXG4gICAgdHlwZTogJ2Jvb2xlYW4nXG4gIH0pXG4gIEBJbnB1dCgpXG4gIGFjdGl2ZTogYm9vbGVhbjtcblxuICBAUHJvcGVydHlBcGkoe1xuICAgIGRlc2NyaXB0aW9uOiAnT3V0cHV0IGV2ZW50IGZvciBjbGljayBvbiBtZW51IGl0ZW0nXG4gIH0pXG4gIEBPdXRwdXQoKVxuICBjbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQmFkZ2VDb21wb25lbnQpXG4gIGJhZGdlczogUXVlcnlMaXN0PEJhZGdlQ29tcG9uZW50PjtcblxufVxuIl19