import { Component, computed, inject } from '@angular/core'; import { HeadingComponent } from '@shared/ui/atoms/heading/heading.component'; import { ApplicationListComponent } from '@shared/ui/molecules/application-list/application-list.component'; import { ApplicationLinkComponent } from '@shared/ui/molecules/application-link/application-link.component'; import { FeatureFlagStore } from '@shared/application/feature-flags.store'; import { FLAG_INSCHRIJVING_OPEN } from '@shared/domain/feature-flag'; /** Section: "Wat wilt u doen?" — the portal's primary transactional actions (see CIBG's componenten/aanvragen). The core pages live in the header nav now; the teaching pages (concepts/brief) are only reachable from here. */ @Component({ selector: 'app-wat-wilt-u-doen-section', imports: [HeadingComponent, ApplicationListComponent, ApplicationLinkComponent], template: `
Wat wilt u doen? @for (a of acties(); track a.to) {
  • }
    `, }) export class WatWiltUDoenSection { private flags = inject(FeatureFlagStore); private readonly allActies = [ { to: '/registreren', titel: $localize`:@@dashboard.actie.inschrijven.titel:Inschrijven`, tekst: $localize`:@@dashboard.actie.inschrijven.tekst:Schrijf u in in het BIG-register via de registratiewizard.`, actie: $localize`:@@dashboard.actie.inschrijven.actie:Start inschrijving`, }, { to: '/herregistratie', titel: $localize`:@@dashboard.actie.herregistratie.titel:Herregistratie aanvragen`, tekst: $localize`:@@dashboard.actie.herregistratie.tekst:Verleng uw registratie voor de komende periode.`, actie: $localize`:@@dashboard.actie.herregistratie.actie:Vraag aan`, }, { to: '/intake', titel: $localize`:@@dashboard.actie.intake.titel:Herregistratie-intake`, tekst: $localize`:@@dashboard.actie.intake.tekst:Vragenlijst met vertakkingen.`, actie: $localize`:@@dashboard.actie.intake.actie:Start intake`, }, { to: '/registratie', titel: $localize`:@@dashboard.actie.wijzigen.titel:Gegevens wijzigen`, tekst: $localize`:@@dashboard.actie.wijzigen.tekst:Bekijk uw gegevens of geef een wijziging door.`, actie: $localize`:@@dashboard.actie.wijzigen.actie:Bekijk gegevens`, }, { to: '/concepts', titel: $localize`:@@dashboard.actie.concepten.titel:Functionele patronen`, tekst: $localize`:@@dashboard.actie.concepten.tekst:Bekijk de FP/TEA-bouwstenen van deze POC.`, actie: $localize`:@@dashboard.actie.concepten.actie:Bekijk patronen`, }, { to: '/brief', titel: $localize`:@@dashboard.actie.brief.titel:Brief opstellen`, tekst: $localize`:@@dashboard.actie.brief.tekst:Stel een brief samen uit vaste en vrije onderdelen.`, actie: $localize`:@@dashboard.actie.brief.actie:Start brief`, }, ]; /** Hide "Inschrijven" when self-service registration is flagged off. */ protected readonly acties = computed(() => this.allActies.filter( (a) => a.to !== '/registreren' || this.flags.enabled(FLAG_INSCHRIJVING_OPEN), ), ); }