avatar.component.mjs 5.4 KB

1234567891011121314151617181920212223242526272829
  1. import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
  2. import { IconComponent } from '../icon/icon.component';
  3. import { SafeImagePipe } from '../../../pipes/safe-image.pipe';
  4. import * as i0 from "@angular/core";
  5. export class AvatarComponent {
  6. constructor() {
  7. this.picture = '';
  8. this.title = '';
  9. this.titleInitials = '';
  10. }
  11. ngOnInit() {
  12. this.titleInitials = this.title
  13. .split(' ')
  14. .map(word => word[0]?.toLocaleUpperCase())
  15. .splice(0, 2)
  16. .join('');
  17. }
  18. static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AvatarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
  19. static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: AvatarComponent, isStandalone: true, selector: "ct-avatar", inputs: { picture: "picture", title: "title" }, ngImport: i0, template: "@if (picture) {\n <img\n [src]=\"picture | safeImage\"\n alt=\"{{ title }}\"\n class=\"size-20 rounded-full border-2 border-primary object-cover dark:border-primary-dark\" />\n} @else {\n <div\n class=\"size-16 truncate text-ellipsis rounded-full border border-primary bg-primary-container p-4 text-center text-on-primary-container dark:bg-primary-container-dark dark:text-on-primary-container-dark\">\n <span class=\"text-2xl font-medium\"> {{ titleInitials }}</span>\n </div>\n}\n", dependencies: [{ kind: "pipe", type: SafeImagePipe, name: "safeImage" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
  20. }
  21. i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: AvatarComponent, decorators: [{
  22. type: Component,
  23. args: [{ selector: 'ct-avatar', standalone: true, imports: [IconComponent, SafeImagePipe], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (picture) {\n <img\n [src]=\"picture | safeImage\"\n alt=\"{{ title }}\"\n class=\"size-20 rounded-full border-2 border-primary object-cover dark:border-primary-dark\" />\n} @else {\n <div\n class=\"size-16 truncate text-ellipsis rounded-full border border-primary bg-primary-container p-4 text-center text-on-primary-container dark:bg-primary-container-dark dark:text-on-primary-container-dark\">\n <span class=\"text-2xl font-medium\"> {{ titleInitials }}</span>\n </div>\n}\n" }]
  24. }], propDecorators: { picture: [{
  25. type: Input
  26. }], title: [{
  27. type: Input
  28. }] } });
  29. //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NpcmNsZXRvbmUvc3JjL2xpYi9jb21wb25lbnRzL2F0b21zL2F2YXRhci9hdmF0YXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2lyY2xldG9uZS9zcmMvbGliL2NvbXBvbmVudHMvYXRvbXMvYXZhdGFyL2F2YXRhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQVMvRCxNQUFNLE9BQU8sZUFBZTtJQVA1QjtRQVFXLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLGtCQUFhLEdBQUcsRUFBRSxDQUFDO0tBUXBCO0lBUEMsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUs7YUFDNUIsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUNWLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDO2FBQ3pDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2FBQ1osSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2QsQ0FBQzs4R0FWVSxlQUFlO2tHQUFmLGVBQWUscUhDWDVCLHNmQVdBLHVDREoyQixhQUFhOzsyRkFJM0IsZUFBZTtrQkFQM0IsU0FBUzsrQkFDRSxXQUFXLGNBQ1QsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxtQkFFdEIsdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IFNhZmVJbWFnZVBpcGUgfSBmcm9tICcuLi8uLi8uLi9waXBlcy9zYWZlLWltYWdlLnBpcGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdC1hdmF0YXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbSWNvbkNvbXBvbmVudCwgU2FmZUltYWdlUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9hdmF0YXIuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQXZhdGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgcGljdHVyZSA9ICcnO1xuICBASW5wdXQoKSB0aXRsZSA9ICcnO1xuICB0aXRsZUluaXRpYWxzID0gJyc7XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMudGl0bGVJbml0aWFscyA9IHRoaXMudGl0bGVcbiAgICAgIC5zcGxpdCgnICcpXG4gICAgICAubWFwKHdvcmQgPT4gd29yZFswXT8udG9Mb2NhbGVVcHBlckNhc2UoKSlcbiAgICAgIC5zcGxpY2UoMCwgMilcbiAgICAgIC5qb2luKCcnKTtcbiAgfVxufVxuIiwiQGlmIChwaWN0dXJlKSB7XG4gIDxpbWdcbiAgICBbc3JjXT1cInBpY3R1cmUgfCBzYWZlSW1hZ2VcIlxuICAgIGFsdD1cInt7IHRpdGxlIH19XCJcbiAgICBjbGFzcz1cInNpemUtMjAgcm91bmRlZC1mdWxsIGJvcmRlci0yIGJvcmRlci1wcmltYXJ5IG9iamVjdC1jb3ZlciBkYXJrOmJvcmRlci1wcmltYXJ5LWRhcmtcIiAvPlxufSBAZWxzZSB7XG4gIDxkaXZcbiAgICBjbGFzcz1cInNpemUtMTYgdHJ1bmNhdGUgdGV4dC1lbGxpcHNpcyByb3VuZGVkLWZ1bGwgYm9yZGVyIGJvcmRlci1wcmltYXJ5IGJnLXByaW1hcnktY29udGFpbmVyIHAtNCB0ZXh0LWNlbnRlciB0ZXh0LW9uLXByaW1hcnktY29udGFpbmVyIGRhcms6YmctcHJpbWFyeS1jb250YWluZXItZGFyayBkYXJrOnRleHQtb24tcHJpbWFyeS1jb250YWluZXItZGFya1wiPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC0yeGwgZm9udC1tZWRpdW1cIj4ge3sgdGl0bGVJbml0aWFscyB9fTwvc3Bhbj5cbiAgPC9kaXY+XG59XG4iXX0=