hermes-web-angular/src/app/groups/group-item/group-item.component.ts

36 lines
1.2 KiB
TypeScript
Raw Normal View History

import { Component, inject, input, Input, OnInit } from '@angular/core';
import { Group } from '../../shared/models/group';
import { MatCardModule } from '@angular/material/card';
import { MatButtonModule } from '@angular/material/button';
import { MatIconModule } from '@angular/material/icon';
import { Policy } from '../../shared/models/policy';
import { GroupItemEditComponent } from '../group-item-edit/group-item-edit.component';
import { MatDialog } from '@angular/material/dialog';
import { Router } from '@angular/router';
import { GroupChatter } from '../../shared/models/group-chatter';
@Component({
selector: 'group-item',
standalone: true,
imports: [
MatButtonModule,
MatCardModule,
MatIconModule,
],
templateUrl: './group-item.component.html',
styleUrl: './group-item.component.scss'
})
export class GroupItemComponent implements OnInit {
readonly router = inject(Router);
item = input.required<{ group: Group, chatters: GroupChatter[], policies: Policy[] }>();
link: string = '';
special: boolean = true;
ngOnInit() {
this.special = ['everyone', 'subscribers', 'moderators', 'vip', 'broadcaster'].includes(this.item().group.name);
this.link = 'groups/' + this.item().group.id;
}
}