|
-
- {{ getDirectionLabel(sub) }}
+
+ {{ getTypeLabel(sub).label }}
|
diff --git a/webapp/src/app/features/subscriptions/subscription-list/subscription-list.component.ts b/webapp/src/app/features/subscriptions/subscription-list/subscription-list.component.ts
index 7b18447..9091fa0 100644
--- a/webapp/src/app/features/subscriptions/subscription-list/subscription-list.component.ts
+++ b/webapp/src/app/features/subscriptions/subscription-list/subscription-list.component.ts
@@ -13,6 +13,7 @@ import { NzModalModule } from 'ng-zorro-antd/modal';
import { NzFormModule } from 'ng-zorro-antd/form';
import { NzInputModule } from 'ng-zorro-antd/input';
import { NzToolTipModule } from 'ng-zorro-antd/tooltip';
+import { NzAlertModule } from 'ng-zorro-antd/alert';
import { ApiService } from '../../../core/services/api.service';
import { AuthService } from '../../../core/services/auth.service';
import { NotificationService } from '../../../core/services/notification.service';
@@ -20,7 +21,19 @@ import { UserCacheService, ResolvedUser } from '../../../core/services/user-cach
import { Subscription, SubscriptionFilter } from '../../../core/models';
import { RelativeTimePipe } from '../../../shared/pipes/relative-time.pipe';
-type TabDirection = 'both' | 'outgoing' | 'incoming';
+type SubscriptionTab = 'all' | 'own' | 'deactivated' | 'external' | 'incoming';
+
+interface TabConfig {
+ filter: SubscriptionFilter;
+}
+
+const TAB_CONFIGS: Record = {
+ all: { filter: {} },
+ own: { filter: { direction: 'outgoing', confirmation: 'confirmed', external: 'false' } },
+ deactivated: { filter: { direction: 'outgoing', confirmation: 'unconfirmed', external: 'false' } },
+ external: { filter: { direction: 'outgoing', confirmation: 'all', external: 'true' } },
+ incoming: { filter: { direction: 'incoming', confirmation: 'all', external: 'true' } },
+};
@Component({
selector: 'app-subscription-list',
@@ -40,6 +53,7 @@ type TabDirection = 'both' | 'outgoing' | 'incoming';
NzFormModule,
NzInputModule,
NzToolTipModule,
+ NzAlertModule,
RelativeTimePipe,
],
templateUrl: './subscription-list.component.html',
@@ -54,7 +68,7 @@ export class SubscriptionListComponent implements OnInit {
subscriptions = signal([]);
userNames = signal |