import { Routes } from '@angular/router'; import { PolicyComponent } from './policies/policy/policy.component'; import { AuthUserGuard } from './shared/auth/auth.user.guard'; import { LoginComponent } from './auth/login/login.component'; import { TtsLoginComponent } from './auth/tts-login/tts-login.component'; import { TwitchAuthCallbackComponent } from './twitch-auth-callback/twitch-auth-callback.component'; import { FiltersComponent } from './tts-filters/filters/filters.component'; import { AuthAdminGuard } from './shared/auth/auth.admin.guard'; import { AuthVisitorGuard } from './shared/auth/auth.visitor.guard'; import { ActionsComponent } from './actions/actions/actions.component'; import { RedemptionsComponent } from './redemptions/redemptions/redemptions.component'; import RedemptionResolver from './shared/resolvers/redemption-resolver'; import TwitchRedemptionResolver from './shared/resolvers/twitch-redemption-resolver'; import RedeemableActionResolver from './shared/resolvers/redeemable-action-resolver'; import TtsFilterResolver from './shared/resolvers/tts-filter-resolver'; import ApiKeyResolver from './shared/resolvers/api-key-resolver'; export const routes: Routes = [ { path: 'policies', component: PolicyComponent, canActivate: [AuthUserGuard], }, { path: 'filters', component: FiltersComponent, canActivate: [AuthUserGuard], resolve: { filters: TtsFilterResolver, } }, { path: 'actions', component: ActionsComponent, canActivate: [AuthUserGuard], resolve: { redeemableActions: RedeemableActionResolver, } }, { path: 'redemptions', component: RedemptionsComponent, canActivate: [AuthUserGuard], resolve: { redeemableActions: RedeemableActionResolver, redemptions: RedemptionResolver, twitchRedemptions: TwitchRedemptionResolver, } }, { path: 'login', component: LoginComponent, canActivate: [AuthVisitorGuard], }, { path: 'tts-login', component: TtsLoginComponent, canActivate: [AuthUserGuard], resolve: { keys: ApiKeyResolver, } }, { path: 'auth', component: TwitchAuthCallbackComponent, canActivate: [AuthVisitorGuard], } ];