12345678910111213141516171819202122232425262728293031323334353637383940 |
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
- import { RouterLink } from '@angular/router';
- import { SizeEnum } from '../../../model/components/size.enum';
- import { IconComponent } from '../icon/icon.component';
- import { ButtonComponent } from '../button/button.component';
- import * as i0 from "@angular/core";
- export class MenuItemComponent {
- constructor() {
- this.text = '';
- this.link = '';
- this.type = 'internal';
- this.icon = undefined;
- this.iconSize = SizeEnum.BASE;
- this.iconAlone = false;
- this.iconDirection = 'horizontal';
- }
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: MenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.2", type: MenuItemComponent, isStandalone: true, selector: "ct-menu-item", inputs: { text: "text", link: "link", type: "type", icon: "icon", iconSize: "iconSize", iconAlone: "iconAlone", iconDirection: "iconDirection" }, ngImport: i0, template: "<a\n [routerLink]=\"(type === 'internal' && link)! || null\"\n [attr.href]=\"type === 'external' && link\"\n class=\"block rounded-md px-4 py-2 text-on-surface hover:bg-primary/25 dark:text-on-surface-dark dark:hover:bg-primary-dark/25\">\n <span\n class=\"flex items-center gap-3\"\n [class.flex-row]=\"iconDirection === 'horizontal'\"\n [class.flex-col]=\"iconDirection === 'vertical'\">\n @if (icon) {\n <ct-icon [icon]=\"icon\" variant=\"solid\" size=\"xl\" />\n }\n @if (text && !iconAlone) {\n <span>{{ text }}</span>\n }\n </span>\n</a>\n", dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: IconComponent, selector: "ct-icon", inputs: ["icon", "fill", "strokeWidth", "strokeColor", "size", "variant"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
- }
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: MenuItemComponent, decorators: [{
- type: Component,
- args: [{ selector: 'ct-menu-item', standalone: true, imports: [RouterLink, IconComponent, ButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n [routerLink]=\"(type === 'internal' && link)! || null\"\n [attr.href]=\"type === 'external' && link\"\n class=\"block rounded-md px-4 py-2 text-on-surface hover:bg-primary/25 dark:text-on-surface-dark dark:hover:bg-primary-dark/25\">\n <span\n class=\"flex items-center gap-3\"\n [class.flex-row]=\"iconDirection === 'horizontal'\"\n [class.flex-col]=\"iconDirection === 'vertical'\">\n @if (icon) {\n <ct-icon [icon]=\"icon\" variant=\"solid\" size=\"xl\" />\n }\n @if (text && !iconAlone) {\n <span>{{ text }}</span>\n }\n </span>\n</a>\n" }]
- }], propDecorators: { text: [{
- type: Input
- }], link: [{
- type: Input,
- args: [{ required: true }]
- }], type: [{
- type: Input,
- args: [{ required: true }]
- }], icon: [{
- type: Input
- }], iconSize: [{
- type: Input
- }], iconAlone: [{
- type: Input
- }], iconDirection: [{
- type: Input
- }] } });
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NpcmNsZXRvbmUvc3JjL2xpYi9jb21wb25lbnRzL2F0b21zL21lbnUtaXRlbS9tZW51LWl0ZW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2lyY2xldG9uZS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvbWVudS1pdGVtL21lbnUtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBUzdELE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFRVyxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1EsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLFNBQUksR0FBcUMsVUFBVSxDQUFDO1FBQ3RFLFNBQUksR0FBWSxTQUFTLENBQUM7UUFDMUIsYUFBUSxHQUF1QixRQUFRLENBQUMsSUFBSSxDQUFDO1FBQzdDLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsa0JBQWEsR0FBdUMsWUFBWSxDQUFDO0tBQzNFOzhHQVJZLGlCQUFpQjtrR0FBakIsaUJBQWlCLDBOQ2I5Qix1a0JBZ0JBLDRDRFBZLFVBQVUsb09BQUUsYUFBYTs7MkZBSXhCLGlCQUFpQjtrQkFQN0IsU0FBUzsrQkFDRSxjQUFjLGNBQ1osSUFBSSxXQUNQLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsbUJBRXBDLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDcUIsSUFBSTtzQkFBOUIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsSUFBSTtzQkFBOUIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFNpemVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vbW9kZWwvY29tcG9uZW50cy9zaXplLmVudW0nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uL2ljb24vaWNvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdC1tZW51LWl0ZW0nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbUm91dGVyTGluaywgSWNvbkNvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51SXRlbUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHRleHQgPSAnJztcbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgbGluayA9ICcnO1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSB0eXBlOiBzdHJpbmcgfCAnaW50ZXJuYWwnIHwgJ2V4dGVybmFsJyA9ICdpbnRlcm5hbCc7XG4gIEBJbnB1dCgpIGljb24/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIGljb25TaXplPzogU2l6ZUVudW0gfCBzdHJpbmcgPSBTaXplRW51bS5CQVNFO1xuICBASW5wdXQoKSBpY29uQWxvbmUgPSBmYWxzZTtcbiAgQElucHV0KCkgaWNvbkRpcmVjdGlvbjogc3RyaW5nIHwgJ3ZlcnRpY2FsJyB8ICdob3Jpem9udGFsJyA9ICdob3Jpem9udGFsJztcbn1cbiIsIjxhXG4gIFtyb3V0ZXJMaW5rXT1cIih0eXBlID09PSAnaW50ZXJuYWwnICYmIGxpbmspISB8fCBudWxsXCJcbiAgW2F0dHIuaHJlZl09XCJ0eXBlID09PSAnZXh0ZXJuYWwnICYmIGxpbmtcIlxuICBjbGFzcz1cImJsb2NrIHJvdW5kZWQtbWQgcHgtNCBweS0yIHRleHQtb24tc3VyZmFjZSBob3ZlcjpiZy1wcmltYXJ5LzI1IGRhcms6dGV4dC1vbi1zdXJmYWNlLWRhcmsgZGFyazpob3ZlcjpiZy1wcmltYXJ5LWRhcmsvMjVcIj5cbiAgPHNwYW5cbiAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0zXCJcbiAgICBbY2xhc3MuZmxleC1yb3ddPVwiaWNvbkRpcmVjdGlvbiA9PT0gJ2hvcml6b250YWwnXCJcbiAgICBbY2xhc3MuZmxleC1jb2xdPVwiaWNvbkRpcmVjdGlvbiA9PT0gJ3ZlcnRpY2FsJ1wiPlxuICAgIEBpZiAoaWNvbikge1xuICAgICAgPGN0LWljb24gW2ljb25dPVwiaWNvblwiIHZhcmlhbnQ9XCJzb2xpZFwiIHNpemU9XCJ4bFwiIC8+XG4gICAgfVxuICAgIEBpZiAodGV4dCAmJiAhaWNvbkFsb25lKSB7XG4gICAgICA8c3Bhbj57eyB0ZXh0IH19PC9zcGFuPlxuICAgIH1cbiAgPC9zcGFuPlxuPC9hPlxuIl19
|