{"version":3,"file":"main.js","mappings":"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","sources":["./src/app/404.component.ts","./src/app/animations/index.ts","./src/app/animations/ken-burns.animation.ts","./src/app/animations/router.animation.ts","./src/app/animations/scale-in-out.animation.ts","./src/app/app-routing.module.ts","./src/app/app.component.ts","./src/app/app.component.html","./src/app/app.module.ts","./src/app/auth/auth-routing.module.ts","./src/app/auth/auth.module.ts","./src/app/auth/compontents/auth-layout/auth-layout.component.ts","./src/app/auth/compontents/auth-layout/auth-layout.component.html","./src/app/auth/containers/activate-account/activate-account.component.ts","./src/app/auth/containers/activate-account/activate-account.component.html","./src/app/auth/containers/forgot-password/forgot-password.component.ts","./src/app/auth/containers/forgot-password/forgot-password.component.html","./src/app/auth/containers/register/register.component.ts","./src/app/auth/containers/register/register.component.html","./src/app/auth/containers/reset-password/reset-password.component.ts","./src/app/auth/containers/reset-password/reset-password.component.html","./src/app/auth/containers/sign-in/sign-in.component.ts","./src/app/auth/containers/sign-in/sign-in.component.html","./src/app/auth/guards/auth.guard.ts","./src/app/auth/guards/checkAuth.guard.ts","./src/app/auth/services/auth.service.ts","./src/app/auth/services/index.ts","./src/app/auth/store/actions/auth.action.ts","./src/app/auth/store/actions/index.ts","./src/app/auth/store/effects/auth.effect.ts","./src/app/auth/store/effects/index.ts","./src/app/auth/store/index.ts","./src/app/auth/store/reducers/auth.reducer.ts","./src/app/auth/store/reducers/index.ts","./src/app/auth/store/selectors/auth.selector.ts","./src/app/auth/store/selectors/index.ts","./src/app/core/components/alert/alert.component.ts","./src/app/core/components/alert/alert.component.html","./src/app/core/components/confirm/confirm.component.ts","./src/app/core/components/confirm/confirm.component.html","./src/app/core/components/created-by/created-by.component.ts","./src/app/core/components/created-by/created-by.component.html","./src/app/core/components/date/date.component.ts","./src/app/core/components/date/date.component.html","./src/app/core/components/footer/footer.component.ts","./src/app/core/components/footer/footer.component.html","./src/app/core/components/grid-overlay/grid-overlay.component.ts","./src/app/core/components/grid-overlay/grid-overlay.component.html","./src/app/core/components/header/header.component.ts","./src/app/core/components/header/header.component.html","./src/app/core/components/image/image.component.ts","./src/app/core/components/image/image.component.html","./src/app/core/components/loading-indicator/loading-indicator.component.ts","./src/app/core/components/loading-indicator/loading-indicator.component.html","./src/app/core/components/shape-image/shape-image.component.ts","./src/app/core/components/shape-image/shape-image.component.html","./src/app/core/components/tab-bar/tab-bar.component.ts","./src/app/core/components/tab-bar/tab-bar.component.html","./src/app/core/components/topbar/topbar.component.ts","./src/app/core/components/topbar/topbar.component.html","./src/app/core/core.module.ts","./src/app/core/form-fields/form-checkbox-buttons/form-checkbox-buttons.component.ts","./src/app/core/form-fields/form-checkbox-buttons/form-checkbox-buttons.component.html","./src/app/core/form-fields/form-file-input/form-file-input.component.ts","./src/app/core/form-fields/form-file-input/form-file-input.component.html","./src/app/core/http-status-code.service.ts","./src/app/core/pipes/quill-linebreak.pipe.ts","./src/app/events/guards/events-all.guard.ts","./src/app/events/services/events.service.ts","./src/app/events/services/index.ts","./src/app/events/store/actions/events.action.ts","./src/app/events/store/actions/index.ts","./src/app/events/store/effects/events.effect.ts","./src/app/events/store/effects/index.ts","./src/app/events/store/index.ts","./src/app/events/store/reducers/events.reducer.ts","./src/app/events/store/reducers/index.ts","./src/app/events/store/selectors/index.ts","./src/app/events/store/selectors/opinions.selector.ts","./src/app/initiatives/guards/initiatives.guard.ts","./src/app/initiatives/services/index.ts","./src/app/initiatives/services/initiative-comments.service.ts","./src/app/initiatives/services/initiative-status-updates.service.ts","./src/app/initiatives/services/initiatives.service.ts","./src/app/initiatives/store/actions/comments.action.ts","./src/app/initiatives/store/actions/contributors.action.ts","./src/app/initiatives/store/actions/index.ts","./src/app/initiatives/store/actions/initiatives.action.ts","./src/app/initiatives/store/actions/status-updates.action.ts","./src/app/initiatives/store/effects/comments.effect.ts","./src/app/initiatives/store/effects/contributors.effect.ts","./src/app/initiatives/store/effects/index.ts","./src/app/initiatives/store/effects/initiatives.effect.ts","./src/app/initiatives/store/effects/status-updates.effect.ts","./src/app/initiatives/store/index.ts","./src/app/initiatives/store/reducers/comments.reducer.ts","./src/app/initiatives/store/reducers/contributors.reducer.ts","./src/app/initiatives/store/reducers/index.ts","./src/app/initiatives/store/reducers/initiatives.reducer.ts","./src/app/initiatives/store/reducers/status-updates.reducer.ts","./src/app/initiatives/store/selectors/comments.selector.ts","./src/app/initiatives/store/selectors/contributors.selector.ts","./src/app/initiatives/store/selectors/index.ts","./src/app/initiatives/store/selectors/initiatives.selector.ts","./src/app/initiatives/store/selectors/status-updates.selector.ts","./src/app/nl.ts","./src/app/notifications/components/notification-card/notification-card.component.ts","./src/app/notifications/components/notification-card/notification-card.component.html","./src/app/notifications/components/notifications-list/notifications-list.component.ts","./src/app/notifications/components/notifications-list/notifications-list.component.html","./src/app/notifications/guards/index.ts","./src/app/notifications/guards/notifications.guard.ts","./src/app/notifications/notifications.module.ts","./src/app/notifications/services/index.ts","./src/app/notifications/services/notifications.service.ts","./src/app/notifications/store/actions/index.ts","./src/app/notifications/store/actions/notifications.action.ts","./src/app/notifications/store/effects/index.ts","./src/app/notifications/store/effects/notifications.effect.ts","./src/app/notifications/store/index.ts","./src/app/notifications/store/reducers/index.ts","./src/app/notifications/store/reducers/notifications.reducer.ts","./src/app/notifications/store/selectors/index.ts","./src/app/notifications/store/selectors/notifications.selector.ts","./src/app/opinions/guards/opinions-all.guard.ts","./src/app/opinions/services/index.ts","./src/app/opinions/services/opinion-comments.service.ts","./src/app/opinions/services/opinions.service.ts","./src/app/opinions/store/actions/comments.action.ts","./src/app/opinions/store/actions/index.ts","./src/app/opinions/store/actions/opinions.action.ts","./src/app/opinions/store/effects/comments.effect.ts","./src/app/opinions/store/effects/index.ts","./src/app/opinions/store/effects/opinions.effect.ts","./src/app/opinions/store/index.ts","./src/app/opinions/store/reducers/comments.reducer.ts","./src/app/opinions/store/reducers/index.ts","./src/app/opinions/store/reducers/opinions.reducer.ts","./src/app/opinions/store/selectors/comments.selector.ts","./src/app/opinions/store/selectors/index.ts","./src/app/opinions/store/selectors/opinions.selector.ts","./src/app/seo/components/json-ld/json-ld.component.ts","./src/app/seo/seo.module.ts","./src/app/store/actions/contrast.action.ts","./src/app/store/actions/index.ts","./src/app/store/actions/meta.action.ts","./src/app/store/actions/nav.action.ts","./src/app/store/actions/router.action.ts","./src/app/store/effects/index.ts","./src/app/store/effects/meta.effect.ts","./src/app/store/effects/router.effect.ts","./src/app/store/index.ts","./src/app/store/reducers/contrast.reducer.ts","./src/app/store/reducers/index.ts","./src/app/store/reducers/meta.reducer.ts","./src/app/store/reducers/nav.reducer.ts","./src/app/store/selectors/nav.selector.ts","./src/app/utility/arrayToEntities.utility.ts","./src/app/utility/index.ts","./src/environments/environment.ts","./src/main.ts"],"sourcesContent":["import { Component, OnInit, Input, Optional } from '@angular/core';\r\nimport { HttpStatusCodeService } from './core/http-status-code.service';\r\n\r\n@Component({\r\n selector: 'app-404',\r\n template: `\r\n
\r\n
\r\n

{{ 'error-404-title' | fromDictionary }}

\r\n

{{ 'error-404-text' | fromDictionary }}

\r\n
\r\n Terug naar home\r\n
\r\n
\r\n
\r\n `,\r\n})\r\nexport class NotFoundComponent {\r\n constructor(@Optional() private statusCode: HttpStatusCodeService) {\r\n this.statusCode?.setStatusCode(404);\r\n }\r\n}\r\n","export * from './ken-burns.animation';\r\nexport * from './scale-in-out.animation';\r\nexport * from './router.animation';\r\n","import { animation, trigger, animateChild, group, transition, animate, style, query } from '@angular/animations';\r\n\r\nexport const KenBurnsAnimation = animation([\r\n animate(\r\n '{{ time }}',\r\n style({\r\n transform: 'scale3d(1.5, 1.5, 1.5) translate3d(-10%, -10%, 0px)',\r\n })\r\n ),\r\n]);\r\n","import { trigger, transition, style, query as q, group, animate, AnimationMetadata } from '@angular/animations';\r\n\r\n// tslint:disable-next-line: no-shadowed-variable\r\nconst query = (style: string, animate: AnimationMetadata | AnimationMetadata[], optional = { optional: true }) =>\r\n q(style, animate, optional);\r\n\r\nexport const routerFade = trigger('routerFade', [\r\n transition('* <=> *', [\r\n query(':enter, :leave', style({ position: 'fixed', width: '100%', height: '100%' })),\r\n group([\r\n query(':enter', [style({ opacity: 0 }), animate('0.3s ease-out', style({ opacity: 1 }))]),\r\n query(':leave', [animate('0.1s ease-out', style({ opacity: 0 }))]),\r\n ]),\r\n ]),\r\n]);\r\n","import { transition, animate, style, query, stagger, keyframes } from '@angular/animations';\r\n\r\nexport const ScaleInOutAnimation = transition('* => *', [\r\n // Initially the all cards are not visible\r\n query(':enter', style({ opacity: 0 }), { optional: true }),\r\n\r\n // Each card will appear sequentially with the delay of 300ms\r\n query(\r\n ':enter',\r\n stagger('95ms', [\r\n animate(\r\n '210ms ease-in',\r\n keyframes([\r\n style({ opacity: 0, transform: 'scale3d(.5,.5,0)', offset: 0 }),\r\n style({ opacity: 1, transform: 'scale3d(1,1,1)', offset: 1 }),\r\n ])\r\n ),\r\n ]),\r\n { optional: true }\r\n ),\r\n\r\n // Cards will disappear sequentially with the delay of 300ms\r\n query(\r\n ':leave',\r\n stagger('50ms', [\r\n animate(\r\n '250ms ease-out',\r\n keyframes([style({ opacity: 1, offset: 0 }), style({ opacity: 0, transform: 'scale3d(.5,.5, 0)', offset: 1 })])\r\n ),\r\n ]),\r\n { optional: true }\r\n ),\r\n]);\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { CookieSettingsGuard } from '@teamfoster/sdk/cookie-ngrx';\r\nimport { DictionaryGuard } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { MenuGuard } from '@teamfoster/sdk/menu-ngrx';\r\nimport { NotFoundComponent } from './404.component';\r\nimport { AuthGuard } from './auth/guards/auth.guard';\r\nimport { CheckAuthGuard } from './auth/guards/checkAuth.guard';\r\nimport { InitiativesOverviewGuard } from './initiatives/guards/initiatives.guard';\r\nimport { NotificationsGuard } from './notifications/guards';\r\nimport { OpinionsAllOverviewGuard } from './opinions/guards/opinions-all.guard';\r\nimport { EventsAllOverviewGuard } from './events/guards/events-all.guard';\r\n\r\nconst appGuards = [DictionaryGuard, CookieSettingsGuard, CheckAuthGuard, MenuGuard, NotificationsGuard];\r\n// const signedInGuards = [AuthGuard, NotificationsGuard]; // only visible for signed in members\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'dashboard',\r\n loadChildren: () => import('./activity-feed/activity-feed.module').then(m => m.ActivityFeedModule),\r\n pathMatch: 'full',\r\n canActivate: [...appGuards, AuthGuard],\r\n data: {\r\n theme: 'theme-meningen',\r\n tabAction: 'opinion',\r\n },\r\n },\r\n {\r\n path: 'styleguide',\r\n loadChildren: () => import('./style-guide/style-guide.module').then(m => m.StyleGuideModule),\r\n canActivate: [...appGuards],\r\n },\r\n {\r\n path: 'pagina',\r\n loadChildren: () => import('./content/content.module').then(m => m.ContentModule),\r\n canActivate: [...appGuards],\r\n data: {\r\n theme: 'theme-meningen',\r\n tabAction: 'opinion',\r\n },\r\n },\r\n {\r\n path: 'account',\r\n loadChildren: () => import('./auth/auth.module').then(m => m.AuthModule),\r\n canActivate: [...appGuards],\r\n data: {\r\n theme: 'theme-meningen',\r\n tabAction: 'opinion',\r\n },\r\n },\r\n {\r\n path: 'mijn-profiel',\r\n loadChildren: () => import('./profile/profile.module').then(m => m.ProfileModule),\r\n canActivate: [...appGuards, AuthGuard],\r\n data: {\r\n theme: 'theme-inloggen',\r\n tabAction: 'opinion',\r\n },\r\n },\r\n {\r\n path: 'meningen',\r\n loadChildren: () => import('./opinions/opinions.module').then(m => m.OpinionsModule),\r\n canActivate: [...appGuards],\r\n canDeactivate: [OpinionsAllOverviewGuard],\r\n data: {\r\n theme: 'theme-meningen',\r\n tabAction: 'opinion',\r\n },\r\n },\r\n {\r\n path: 'initiatieven',\r\n loadChildren: () => import('./initiatives/initiatives.module').then(m => m.InitiativesModule),\r\n canActivate: [...appGuards],\r\n canDeactivate: [InitiativesOverviewGuard],\r\n data: {\r\n theme: 'theme-initiatieven',\r\n tabAction: 'initiatives',\r\n },\r\n },\r\n {\r\n path: 'agenda',\r\n loadChildren: () => import('./events/events.module').then(m => m.EventsModule),\r\n canActivate: [...appGuards],\r\n canDeactivate: [EventsAllOverviewGuard],\r\n data: {\r\n theme: 'theme-agenda',\r\n tabAction: 'events',\r\n },\r\n },\r\n {\r\n path: '',\r\n pathMatch: 'prefix',\r\n loadChildren: () => import('./landing-pages/landing-pages.module').then(m => m.LandingPagesModule),\r\n canActivate: [...appGuards],\r\n data: {\r\n theme: 'palette-dark',\r\n },\r\n },\r\n {\r\n path: '404',\r\n component: NotFoundComponent,\r\n canActivate: [...appGuards],\r\n },\r\n {\r\n path: '**',\r\n redirectTo: '/404',\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes, { scrollPositionRestoration: 'enabled' })],\r\n exports: [RouterModule],\r\n})\r\nexport class AppRoutingModule {}\r\n","import { Component, OnInit, Inject, PLATFORM_ID, Renderer2, OnDestroy, InjectionToken, HostListener, DestroyRef } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\nimport { isPlatformBrowser, DOCUMENT } from '@angular/common';\r\nimport { Router, NavigationEnd, RouterOutlet, NavigationStart } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { DictionaryState, getDictionaryLoaded } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { Observable, BehaviorSubject, timer, of, Subject, combineLatest } from 'rxjs';\r\nimport { ContentPage } from './content/models';\r\n\r\nimport * as navActions from './store/actions/nav.action';\r\nimport * as navSelectors from './store/selectors/nav.selector';\r\nimport { SetTheme } from 'src/app/store';\r\nimport { tap, take, filter, withLatestFrom, takeUntil, map } from 'rxjs/operators';\r\nimport { routerFade } from './animations';\r\nimport { ChangeDetectionStrategy } from '@angular/core';\r\nimport { CookieConfig, CookieConfigService, CookiePreferences, getCookiePreferences } from '@teamfoster/sdk/cookie-ngrx';\r\nimport { getRouterState, RouterStateUrl } from './store';\r\nimport { RouterReducerState } from '@ngrx/router-store';\r\nimport { getMenuLoaded } from '@teamfoster/sdk/menu-ngrx';\r\nimport { getAuthSignedIn, getUser } from './auth/store';\r\nimport { getAllNotifications, getAllUnreadedNotifications } from './notifications/store';\r\nimport { NotificationBundle } from './notifications/models';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n animations: [routerFade],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AppComponent implements OnInit, OnDestroy {\r\n loading$ = new BehaviorSubject(true);\r\n loaded$!: Observable;\r\n routeState$!: Observable>;\r\n menuOpen$!: Observable;\r\n menuItems$!: Observable;\r\n cookiePrefs$!: Observable;\r\n domainName: string = '';\r\n testGridEnabled = false;\r\n routerAnimationState = '';\r\n theme$!: Observable;\r\n usr$!: Observable;\r\n notifications$!: Observable;\r\n\r\n tabAction: string = 'opinion';\r\n tabActionUrl: string = '/meningen/nieuw';\r\n tabActionLabel: string = '';\r\n\r\n private previousPath = '';\r\n private _unsubscribe$ = new Subject();\r\n\r\n constructor(\r\n @Inject(DOCUMENT) private document: any,\r\n @Inject(PLATFORM_ID) private platformId: InjectionToken,\r\n private router: Router,\r\n private store: Store,\r\n private renderer: Renderer2,\r\n @Inject(CookieConfigService) private cookieConfig: CookieConfig\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.cookiePrefs$ = this.store.select(getCookiePreferences);\r\n this.usr$ = this.store.select(getAuthSignedIn);\r\n this.notifications$ = this.store.select(getAllUnreadedNotifications);\r\n this.loaded$ = combineLatest([this.store.select(getDictionaryLoaded), this.store.select(getMenuLoaded)]).pipe(\r\n map(([dictionaryLoaded, menuLoaded]) => dictionaryLoaded && menuLoaded)\r\n );\r\n this.menuOpen$ = this.store.select(navSelectors.getMenuOpen).pipe(tap(a => this.updateRoot(a)));\r\n this.theme$ = this.store.select(navSelectors.getTheme);\r\n this.routeState$ = this.store.select(getRouterState);\r\n this.domainName = this.document.location.hostname;\r\n this.router.events\r\n .pipe(withLatestFrom(this.cookiePrefs$, this.routeState$), takeUntil(this._unsubscribe$))\r\n .subscribe(([event, cookies, state]) => {\r\n if (event instanceof NavigationStart) {\r\n this.loading$.next(true);\r\n } else if (event instanceof NavigationEnd) {\r\n this.closeMenu();\r\n this.store.dispatch(SetTheme({ theme: state?.state?.data['theme'] ? state?.state?.data['theme'] : 'theme-meningen' }));\r\n\r\n this.tabAction = state?.state?.data['tabAction'];\r\n\r\n switch (this.tabAction) {\r\n case ('opinion'):\r\n this.tabActionUrl = '/meningen/nieuw';\r\n this.tabActionLabel = 'tabbar-actiontab-mening-label';\r\n break;\r\n case ('initiatives'):\r\n this.tabActionUrl = '/initiatieven/nieuw';\r\n this.tabActionLabel = 'tabbar-actiontab-initiatief-label';\r\n break;\r\n case ('events'):\r\n this.tabActionUrl = '/agenda/nieuw';\r\n this.tabActionLabel = 'tabbar-actiontab-agenda-label';\r\n break;\r\n }\r\n\r\n this.loading$.next(false);\r\n }\r\n\r\n if (\r\n isPlatformBrowser(this.platformId) &&\r\n event instanceof NavigationStart &&\r\n (event as NavigationStart).navigationTrigger === 'imperative'\r\n ) {\r\n if (!state?.state?.queryParams) {\r\n window.scrollTo(0, 0);\r\n }\r\n }\r\n\r\n if (isPlatformBrowser(this.platformId) && event instanceof NavigationEnd && cookies?.analytical) {\r\n if ((window).gtag) {\r\n (window).gtag('config', this.cookieConfig.analyticsCode, { page_path: event.urlAfterRedirects, anonymize_ip: true });\r\n }\r\n }\r\n });\r\n\r\n if (isPlatformBrowser(this.platformId)) {\r\n this.document.querySelector('body').classList.add('set--in');\r\n this.document.documentElement.style.setProperty('--vh', `${window.innerHeight * 0.01}px`);\r\n }\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event: Event) {\r\n this.document.documentElement.style.setProperty('--vh', `${window.innerHeight * 0.01}px`);\r\n }\r\n\r\n toggleMenu() {\r\n this.store.dispatch(navActions.ToggleMenu());\r\n }\r\n\r\n closeMenu() {\r\n this.store.dispatch(navActions.CloseMenu());\r\n }\r\n\r\n openMenu() {\r\n this.store.dispatch(navActions.OpenMenu());\r\n }\r\n\r\n prepareRoute(outlet: RouterOutlet) {\r\n return outlet && outlet.activatedRouteData;\r\n }\r\n\r\n private updateRoot(menuActive: boolean) {\r\n menuActive\r\n ? this.renderer.addClass(this.document.body, 'main-nav--active')\r\n : this.renderer.removeClass(this.document.body, 'main-nav--active');\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unsubscribe$.next();\r\n this._unsubscribe$.complete();\r\n }\r\n}\r\n","
\r\n
\r\n \r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n\r\n","import { BrowserModule, HammerModule } from '@angular/platform-browser';\r\n\r\nimport { NgModule, LOCALE_ID } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { CoreModule } from './core/core.module';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { StoreRouterConnectingModule } from '@ngrx/router-store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { environment } from '../environments/environment';\r\nimport { DictionaryNgrxModule, DictionaryGuard, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { IconModule } from '@teamfoster/sdk/icon';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { reducers, CustomSerializer, appEffects, metaReducers } from './store';\r\n\r\nimport localeNl from './nl';\r\nimport { registerLocaleData } from '@angular/common';\r\n\r\n// not used in production\r\nimport { StoreDevtoolsModule } from '@ngrx/store-devtools';\r\nimport { NotFoundComponent } from './404.component';\r\nimport { CookieConfig, CookieNgrxModule } from '@teamfoster/sdk/cookie-ngrx';\r\nimport { DynamicFormConfig, LegacyDynamicFormModule as DynamicFormModule } from '@teamfoster/sdk/legacy-dynamic-form';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { AuthModule } from './auth/auth.module';\r\nimport { MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS as MAT_FORM_FIELD_DEFAULT_OPTIONS } from '@angular/material/legacy-form-field';\r\nimport { MenuGuard, MenuNgrxModule } from '@teamfoster/sdk/menu-ngrx';\r\nimport { FormFileInputComponent } from './core/form-fields/form-file-input/form-file-input.component';\r\n\r\nimport { FormCheckboxButtonsComponent } from './core/form-fields/form-checkbox-buttons/form-checkbox-buttons.component';\r\nimport { MAT_LEGACY_SNACK_BAR_DEFAULT_OPTIONS as MAT_SNACK_BAR_DEFAULT_OPTIONS } from '@angular/material/legacy-snack-bar';\r\nimport { NotificationsModule } from './notifications/notifications.module';\r\n\r\nconst dynamicFormConfig: Partial = {\r\n genericInputErrorMessage: 'Het formulier is niet correct ingevuld, controleer de velden en probeer nogmaals.',\r\n genericServerErrorMessage:\r\n 'Er is iets fout gegaan bij het versturen van het formulier, probeer het later nogmaals. Blijft het probleem voordoen neem dan contact met ons op.',\r\n formControls: {\r\n file: FormFileInputComponent,\r\n checkboxButtons: FormCheckboxButtonsComponent,\r\n },\r\n};\r\n\r\nconst cookieConfig: Partial = {\r\n analyticsCode: 'G-4N43HX6WJQ',\r\n strippedContentPlaceholder: 'Deze inhoud wordt niet getoond omdat je geen marketing cookies hebt geaccepteerd',\r\n buttonSettings: 'Instellingen',\r\n buttonAcceptAll: 'Alles accepteren',\r\n buttonClose: 'Sluiten',\r\n useTagManager: true,\r\n strippedContentButton: 'Cookie-instellingen wijzigen',\r\n types: {\r\n analytical: true,\r\n functional: true,\r\n marketing: false,\r\n },\r\n showSettings: true,\r\n};\r\n\r\nregisterLocaleData(localeNl, 'nl');\r\n@NgModule({\r\n declarations: [AppComponent, NotFoundComponent],\r\n imports: [\r\n BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }),\r\n HttpClientModule,\r\n FormsModule,\r\n AppRoutingModule,\r\n CoreModule,\r\n IconModule.forRoot({ spritesheetUrl: 'assets/dist/svg/symbol/svg/sprite.symbol.svg' }),\r\n StoreModule.forRoot(reducers, {\r\n metaReducers,\r\n runtimeChecks: {\r\n strictStateImmutability: true,\r\n strictActionImmutability: true,\r\n },\r\n }),\r\n EffectsModule.forRoot(appEffects),\r\n StoreRouterConnectingModule.forRoot({ serializer: CustomSerializer }),\r\n StoreDevtoolsModule.instrument({\r\n maxAge: 25,\r\n logOnly: environment.production,\r\n }),\r\n DictionaryNgrxModule.forRoot({}),\r\n CookieNgrxModule.forRoot(cookieConfig),\r\n DynamicFormModule.forRoot(dynamicFormConfig),\r\n MenuNgrxModule.forRoot({}),\r\n BrowserAnimationsModule,\r\n AuthModule,\r\n NotificationsModule,\r\n HammerModule,\r\n ],\r\n providers: [\r\n LanguageService,\r\n { provide: LOCALE_ID, useValue: 'nl' },\r\n { provide: MAT_FORM_FIELD_DEFAULT_OPTIONS, useValue: { appearance: 'fill' } },\r\n { provide: MAT_SNACK_BAR_DEFAULT_OPTIONS, useValue: { duration: 1500, panelClass: ['bg-success'], hasAction: false } },\r\n ],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {\r\n constructor(iconRegistry: MatIconRegistry) {\r\n iconRegistry.setDefaultFontSetClass('material-icons-outlined');\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { ActivateAccountComponent } from './containers/activate-account/activate-account.component';\r\nimport { ForgotPasswordComponent } from './containers/forgot-password/forgot-password.component';\r\nimport { RegisterComponent } from './containers/register/register.component';\r\nimport { ResetPasswordComponent } from './containers/reset-password/reset-password.component';\r\nimport { SignInComponent } from './containers/sign-in/sign-in.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path: 'inloggen',\r\n component: SignInComponent,\r\n },\r\n {\r\n path: 'registreren',\r\n component: RegisterComponent,\r\n },\r\n {\r\n path: 'wachtwoord-vergeten',\r\n component: ForgotPasswordComponent,\r\n },\r\n {\r\n path: 'bevestig-account',\r\n component: ActivateAccountComponent,\r\n },\r\n {\r\n path: 'wachtwoord-resetten',\r\n component: ResetPasswordComponent,\r\n },\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule],\r\n})\r\nexport class AtuhRoutingModule {}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SignInComponent } from './containers/sign-in/sign-in.component';\r\nimport { AtuhRoutingModule } from './auth-routing.module';\r\nimport { RegisterComponent } from './containers/register/register.component';\r\nimport { ForgotPasswordComponent } from './containers/forgot-password/forgot-password.component';\r\nimport { CoreModule } from '../core/core.module';\r\nimport { ResetPasswordComponent } from './containers/reset-password/reset-password.component';\r\nimport { TextUtilityModule } from '@teamfoster/sdk/text-utility';\r\nimport { DictionaryNgrxModule } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { IconModule } from '@teamfoster/sdk/icon';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport { MatLegacySnackBarModule as MatSnackBarModule } from '@angular/material/legacy-snack-bar';\r\n\r\nimport * as fromAuth from './store';\r\nimport { ActivateAccountComponent } from './containers/activate-account/activate-account.component';\r\nimport { RouterModule } from '@angular/router';\r\nimport { LegacyDynamicFormModule as DynamicFormModule } from '@teamfoster/sdk/legacy-dynamic-form';\r\nimport { AuthLayoutComponent } from './compontents/auth-layout/auth-layout.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n SignInComponent,\r\n RegisterComponent,\r\n ForgotPasswordComponent,\r\n ResetPasswordComponent,\r\n ActivateAccountComponent,\r\n AuthLayoutComponent,\r\n ],\r\n imports: [\r\n AtuhRoutingModule,\r\n CommonModule,\r\n DynamicFormModule,\r\n CoreModule,\r\n TextUtilityModule,\r\n DictionaryNgrxModule,\r\n RouterModule,\r\n IconModule,\r\n MatSnackBarModule,\r\n StoreModule.forFeature(fromAuth.featureKey, fromAuth.reducers, {\r\n metaReducers: fromAuth.metaReducers,\r\n }),\r\n EffectsModule.forFeature(fromAuth.effects),\r\n ],\r\n})\r\nexport class AuthModule {}\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-auth-layout',\r\n templateUrl: './auth-layout.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AuthLayoutComponent implements OnInit {\r\n @Input() icon = '';\r\n @Input() title = '';\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{ title }}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { Observable, of } from 'rxjs';\r\nimport { SetTitle } from '../../../store';\r\nimport { ActivateAccount, getAccountActivated, getAccountActivating, getAuthError } from '../../store';\r\n\r\n@Component({\r\n selector: 'app-activate-account',\r\n templateUrl: './activate-account.component.html',\r\n})\r\nexport class ActivateAccountComponent implements OnInit {\r\n prefix = 'account-activatie';\r\n activating$: Observable = of(false);\r\n activated$: Observable = of(false);\r\n error$?: Observable;\r\n\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n constructor(private store: Store, private route: ActivatedRoute, private lang: LanguageService) {}\r\n\r\n ngOnInit(): void {\r\n this.activated$ = this.store.select(getAccountActivated);\r\n this.activating$ = this.store.select(getAccountActivating);\r\n this.error$ = this.store.select(getAuthError);\r\n this.store.dispatch(\r\n SetTitle({ title: `${this.dict.transform('account-activatie-titel')} - ${this.dict.transform('meta-titel-suffix')}` })\r\n );\r\n this.activateAccount(this.route.snapshot.queryParams['token'], this.route.snapshot.queryParams['uid']);\r\n }\r\n\r\n activateAccount(token: string, uid: string) {\r\n this.store.dispatch(ActivateAccount({ token, uid }));\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { Store } from '@ngrx/store';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { DynamicFormField } from '@teamfoster/sdk/dynamic-form';\r\nimport { SetTitle } from '../../../store';\r\nimport { AuthService } from '../../services';\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n})\r\nexport class ForgotPasswordComponent implements OnInit {\r\n prefix = 'wachtwoord-vergeten';\r\n loading = false;\r\n result?: { succeeded: boolean; error?: string };\r\n\r\n checkValidation = false;\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n forgotPasswordForm = this.fb.group({});\r\n formFields: DynamicFormField[] = [];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private auth: AuthService,\r\n private cd: ChangeDetectorRef,\r\n private store: Store,\r\n private lang: LanguageService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.store.dispatch(\r\n SetTitle({ title: `${this.dict.transform(this.prefix + '-titel')} - ${this.dict.transform('meta-titel-suffix')}` })\r\n );\r\n\r\n this.formFields = [\r\n {\r\n inputType: 'email',\r\n label: this.dict.transform(`${this.prefix}-email-label`),\r\n name: 'email',\r\n validators: [Validators.email, Validators.required],\r\n autocomplete: 'email',\r\n placeholder: this.dict.transform(`${this.prefix}-email-placeholder`),\r\n fieldType: 'input',\r\n order: 0,\r\n },\r\n ];\r\n }\r\n\r\n async requestPasswordReset(val: any) {\r\n this.checkValidation = true;\r\n this.loading = true;\r\n this.result = await this.auth.forgotPassword(val.email).toPromise();\r\n this.loading = false;\r\n\r\n this.cd.detectChanges();\r\n }\r\n}\r\n","\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { Validators, FormBuilder } from '@angular/forms';\r\nimport { Store } from '@ngrx/store';\r\nimport { Observable, of } from 'rxjs';\r\nimport { take, tap } from 'rxjs/operators';\r\nimport { getRegisterError, getRegistering, getRegisterSuccess, Register } from '../../store';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { SetTitle } from '../../../store';\r\nimport { DynamicFormField } from '@teamfoster/sdk/dynamic-form';\r\nimport { FormControl } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'app-register',\r\n templateUrl: './register.component.html',\r\n})\r\nexport class RegisterComponent implements OnInit {\r\n registering$: Observable = of(false);\r\n registerSuccess$: Observable = of(false);\r\n registerError$: Observable = of();\r\n\r\n prefix = 'registreren';\r\n formValid = false;\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n formFields: DynamicFormField[] = [];\r\n\r\n constructor(private fb: FormBuilder, private lang: LanguageService, private store: Store, private cd: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.formFields = [\r\n {\r\n inputType: 'email',\r\n label: this.dict.transform(`${this.prefix}-email-label`),\r\n name: 'email',\r\n validators: [Validators.email, Validators.required],\r\n autocomplete: 'email',\r\n placeholder: this.dict.transform(`${this.prefix}-email-placeholder`),\r\n fieldType: 'input',\r\n order: 0,\r\n },\r\n {\r\n inputType: 'text',\r\n label: this.dict.transform(`${this.prefix}-voornaam-label`),\r\n name: 'firstName',\r\n validators: [Validators.required],\r\n autocomplete: 'given-name',\r\n placeholder: this.dict.transform(`${this.prefix}-voornaam-placeholder`),\r\n fieldType: 'input',\r\n order: 1,\r\n },\r\n {\r\n inputType: 'text',\r\n label: this.dict.transform(`${this.prefix}-achternaam-label`),\r\n name: 'lastName',\r\n validators: [Validators.required],\r\n autocomplete: 'family-name',\r\n placeholder: this.dict.transform(`${this.prefix}-achternaam-placeholder`),\r\n fieldType: 'input',\r\n order: 1,\r\n },\r\n {\r\n inputType: 'password',\r\n label: this.dict.transform(`${this.prefix}-wachtwoord-label`),\r\n name: 'password',\r\n validators: [Validators.required],\r\n autocomplete: 'new-password',\r\n hint: this.dict.transform('registreren-wachtwoord-hint'),\r\n fieldType: 'input',\r\n placeholder: this.dict.transform(`${this.prefix}-wachtwoord-placeholder`),\r\n order: 1,\r\n cssClass: 'mb-3',\r\n },\r\n {\r\n inputType: 'password',\r\n label: this.dict.transform(`${this.prefix}-wachtwoord-bevestigen-label`),\r\n name: 'confirmPassword',\r\n validators: [Validators.required],\r\n autocomplete: 'new-password',\r\n placeholder: this.dict.transform(`${this.prefix}-wachtwoord-bevestigen-placeholder`),\r\n fieldType: 'input',\r\n order: 1,\r\n },\r\n\r\n {\r\n fieldType: 'checkbox',\r\n label: '',\r\n checkboxLabel: this.dict.transform(`${this.prefix}-voorwaarden-label`),\r\n name: 'consent',\r\n validators: [Validators.requiredTrue],\r\n order: 1,\r\n },\r\n {\r\n fieldType: 'checkbox',\r\n label: '',\r\n checkboxLabel: this.dict.transform(`${this.prefix}-organisatie-check`),\r\n name: 'isCompany',\r\n validators: [],\r\n order: 1,\r\n },\r\n ];\r\n this.registerSuccess$ = this.store.select(getRegisterSuccess);\r\n this.registering$ = this.store.select(getRegistering);\r\n this.registerError$ = this.store.select(getRegisterError).pipe(\r\n tap(error => {\r\n if (!error?.ok) {\r\n window.scrollTo(0, 0);\r\n }\r\n })\r\n );\r\n this.store.dispatch(\r\n SetTitle({ title: `${this.dict.transform(this.prefix + '-titel')} - ${this.dict.transform('meta-titel-suffix')}` })\r\n );\r\n }\r\n\r\n handleChanges(event: any) {\r\n const formValue = event.value;\r\n\r\n if (formValue.isCompany) {\r\n if (!event.get('acceptedManifest')) {\r\n const manifest: DynamicFormField[] = [\r\n {\r\n id: '32ManiFest',\r\n fieldType: 'checkbox',\r\n label: '',\r\n checkboxLabel: this.dict.transform(`${this.prefix}-manifest-label`),\r\n name: 'acceptedManifest',\r\n validators: [Validators.requiredTrue],\r\n order: 1,\r\n cssClass: 'manifest-checkbox',\r\n },\r\n {\r\n id: '32Company',\r\n inputType: 'text',\r\n label: this.dict.transform(`${this.prefix}-bedrijf-label`),\r\n name: 'companyName',\r\n validators: [Validators.required],\r\n placeholder: this.dict.transform(`${this.prefix}-bedrijf-label`),\r\n fieldType: 'input',\r\n order: 1,\r\n },\r\n ];\r\n\r\n this.formFields = [...this.formFields, ...manifest];\r\n event.addControl('acceptedManifest', new FormControl('', [Validators.requiredTrue]));\r\n event.addControl('companyName', new FormControl('', [Validators.required]));\r\n }\r\n } else {\r\n if (event.get('acceptedManifest')) {\r\n event.removeControl('acceptedManifest'); // remove manifest control\r\n event.removeControl('companyName'); // remove company control\r\n const fields = this.formFields.filter(field => field['id'] !== '32ManiFest').filter(field => field['id'] !== '32Company'); // remove from fields\r\n this.formFields = fields;\r\n }\r\n }\r\n\r\n // disable or enable submit button by valid form\r\n this.formValid = event.valid;\r\n this.cd.detectChanges();\r\n }\r\n\r\n handleSubmit(registerData: any) {\r\n const newPasswordIsValid = registerData?.password.value === registerData?.confirmPassword.value;\r\n // console.log(registerData.company, registerData.acceptedManifest);\r\n\r\n if (newPasswordIsValid) {\r\n // console.log('submit');\r\n this.store.dispatch(Register({ registerData }));\r\n }\r\n }\r\n}\r\n","\r\n \r\n \r\n \r\n
    1\">\r\n
  • \r\n {{ error.description }}\r\n
  • \r\n
\r\n
\r\n

\r\n {{ error.description }}\r\n

\r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { Validators, FormBuilder } from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { AuthService } from '../../services/auth.service';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { SetTitle } from '../../../store';\r\nimport { Store } from '@ngrx/store';\r\nimport { DynamicFormField } from '@teamfoster/sdk/dynamic-form';\r\n\r\n@Component({\r\n selector: 'app-reset-password',\r\n templateUrl: './reset-password.component.html',\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n prefix = 'reset-wachtwoord';\r\n loading = false;\r\n result: any;\r\n checkValidation = false;\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n formFields: DynamicFormField[] = [];\r\n\r\n constructor(\r\n private auth: AuthService,\r\n private route: ActivatedRoute,\r\n private fb: FormBuilder,\r\n private cd: ChangeDetectorRef,\r\n private lang: LanguageService,\r\n private store: Store\r\n ) {}\r\n\r\n ngOnInit() {\r\n this.formFields = [\r\n {\r\n inputType: 'password',\r\n label: this.dict.transform(`${this.prefix}-formulier-veld-label-nieuw-wachtwoord`),\r\n name: 'password',\r\n hint: this.dict.transform('registreren-wachtwoord-hint'),\r\n validators: [Validators.required],\r\n autocomplete: 'new-password',\r\n placeholder: this.dict.transform(`${this.prefix}-placeholder`),\r\n fieldType: 'input',\r\n order: 0,\r\n },\r\n {\r\n inputType: 'password',\r\n label: this.dict.transform(`${this.prefix}-formulier-veld-label-wachtwoord-bevestigen`),\r\n name: 'confirmPassword',\r\n validators: [Validators.required],\r\n autocomplete: 'new-password',\r\n placeholder: this.dict.transform(`${this.prefix}-formulier-veld-placeholder-wachtwoord-bevestigen`),\r\n fieldType: 'input',\r\n order: 0,\r\n },\r\n ];\r\n this.store.dispatch(\r\n SetTitle({ title: `${this.dict.transform(`${this.prefix}-titel`)} - ${this.dict.transform('meta-titel-suffix')}` })\r\n );\r\n }\r\n\r\n async resetPassword(val: any) {\r\n this.checkValidation = true;\r\n this.loading = true;\r\n this.result = await this.auth\r\n .resetPassword(this.route.snapshot.queryParams['token'], this.route.snapshot.queryParams['uid'], val)\r\n .toPromise();\r\n this.loading = false;\r\n this.cd.detectChanges();\r\n }\r\n\r\n getErrorMessage(error: { succeeded: boolean; isLockedOut: boolean; isNotAllowed: boolean; requiresTwoFactor: boolean }) {\r\n console.warn('TODO: custom error messages reset password', error);\r\n return `${this.prefix}-formulier-error-default`;\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n {{ prefix + '-formulier-succes-knoptekst' | fromDictionary }}\r\n \r\n \r\n
\r\n
\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { Store } from '@ngrx/store';\r\nimport { Observable, of } from 'rxjs';\r\nimport { LoginData } from '../../models';\r\nimport { getAuthError, getAuthSignedIn, getAuthSigningIn, SignIn } from '../../store';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { SetTitle } from '../../../store';\r\nimport { DynamicFormField } from '@teamfoster/sdk/dynamic-form';\r\n\r\n@Component({\r\n selector: 'app-sign-in',\r\n templateUrl: './sign-in.component.html',\r\n})\r\nexport class SignInComponent implements OnInit {\r\n signingIn$: Observable = of(false);\r\n signedIn$: Observable = of(false);\r\n error$?: Observable;\r\n prefix = 'inloggen';\r\n\r\n signInForm = this.fb.group({});\r\n formFields: DynamicFormField[] = [];\r\n\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n constructor(private fb: FormBuilder, private store: Store, private lang: LanguageService) {}\r\n\r\n ngOnInit(): void {\r\n this.formFields = [\r\n {\r\n inputType: 'email',\r\n label: this.dict.transform(`${this.prefix}-formulier-veld-label-email`),\r\n name: 'email',\r\n validators: [Validators.email, Validators.required],\r\n autocomplete: 'email',\r\n placeholder: this.dict.transform(`${this.prefix}-formulier-veld-placeholder-email`),\r\n fieldType: 'input',\r\n order: 0,\r\n },\r\n {\r\n inputType: 'password',\r\n label: this.dict.transform(`${this.prefix}-formulier-veld-label-wachtwoord`),\r\n name: 'password',\r\n validators: [Validators.required],\r\n autocomplete: 'password',\r\n placeholder: this.dict.transform(`${this.prefix}-formulier-veld-placeholder-wachtwoord`),\r\n fieldType: 'input',\r\n order: 1,\r\n },\r\n ];\r\n\r\n this.signingIn$ = this.store.select(getAuthSigningIn);\r\n this.signedIn$ = this.store.select(getAuthSignedIn);\r\n this.error$ = this.store.select(getAuthError);\r\n this.store.dispatch(\r\n SetTitle({ title: `${this.dict.transform(`${this.prefix}-titel`)} - ${this.dict.transform('meta-titel-suffix')}` })\r\n );\r\n }\r\n\r\n handleSubmit(e: any) {\r\n const loginData: LoginData = { email: e.email, password: e.password, isPersistent: true };\r\n this.store.dispatch(SignIn({ loginData }));\r\n }\r\n\r\n getErrorMessage(error: { succeeded: boolean; isLockedOut: boolean; isNotAllowed: boolean; requiresTwoFactor: boolean }) {\r\n if (error.isNotAllowed) {\r\n return `${this.prefix}-formulier-error-tekst-activatie`;\r\n }\r\n\r\n if (error.isLockedOut) {\r\n return `${this.prefix}-formulier-error-tekst-disabled`;\r\n }\r\n\r\n return `${this.prefix}-formulier-error-default`;\r\n }\r\n}\r\n","\r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n {{ prefix + '-registreren-prefix-knop' | fromDictionary }}\r\n \r\n {{ prefix + '-registreren-knop-tekst' | fromDictionary }}\r\n \r\n |\r\n \r\n \r\n {{ prefix + '-wachtwoord-vergeten-knop-tekst' | fromDictionary }}\r\n \r\n \r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { combineLatest, Observable, of } from 'rxjs';\r\nimport { switchMap, catchError, tap, filter, take, map } from 'rxjs/operators';\r\nimport { AuthState } from '../store';\r\n\r\nimport * as fromStore from '../store';\r\nimport * as fromRoot from '../../store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthGuard {\r\n signedIn$: Observable = of(false);\r\n signingIn$: Observable = of(false);\r\n\r\n constructor(private store: Store) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot): Observable {\r\n return this.checkStore(route).pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkStore(route: ActivatedRouteSnapshot): Observable {\r\n return combineLatest([\r\n this.store.select(fromStore.getAuthSignedIn),\r\n this.store.select(fromStore.getAuthChecked),\r\n this.store.select(fromStore.getAuthChecking),\r\n this.store.select(fromRoot.getRouterState),\r\n ]).pipe(\r\n tap(([signedIn, checked, checking, route]) => {\r\n if (!checked && !checking) {\r\n this.store.dispatch(fromStore.CheckAuth());\r\n return;\r\n }\r\n if (checked && !signedIn) {\r\n this.store.dispatch(fromRoot.Go({ path: ['/account', 'inloggen'], queryParams: { returnUrl: route.state.url } }));\r\n }\r\n }),\r\n map(([signedIn, checked, checking]) => signedIn && checked && !checking),\r\n filter(loaded => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router, ActivatedRouteSnapshot } from '@angular/router';\r\nimport { Store } from '@ngrx/store';\r\nimport { combineLatest, Observable, of } from 'rxjs';\r\nimport { switchMap, catchError, tap, filter, take, map } from 'rxjs/operators';\r\nimport { AuthState } from '../store';\r\n\r\nimport * as fromStore from '../store';\r\nimport * as fromRoot from '../../store';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class CheckAuthGuard {\r\n signedIn$: Observable = of(false);\r\n signingIn$: Observable = of(false);\r\n\r\n constructor(private store: Store) {}\r\n\r\n canActivate(route: ActivatedRouteSnapshot): Observable {\r\n return this.checkStore(route).pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkStore(route: ActivatedRouteSnapshot): Observable {\r\n return combineLatest([\r\n this.store.select(fromStore.getAuthSignedIn),\r\n this.store.select(fromStore.getAuthChecked),\r\n this.store.select(fromStore.getAuthChecking),\r\n this.store.select(fromRoot.getRouterState),\r\n ]).pipe(\r\n tap(([signedIn, checked, checking, route]) => {\r\n this.store.dispatch(fromStore.CheckAuth());\r\n }),\r\n map(([signedIn, checked, checking]) => true),\r\n filter(loaded => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { LoginData, AuthData, RegisterData, UpdatePasswordData, Profile } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n signIn(data: LoginData) {\r\n return this.http.post(`${this.BASE_URL}api/auth/login`, data);\r\n }\r\n\r\n checkAuth() {\r\n return this.http.get(`${this.BASE_URL}api/auth`, { withCredentials: true });\r\n }\r\n\r\n SignOut() {\r\n return this.http.post(`${this.BASE_URL}api/auth/logout`, null);\r\n }\r\n\r\n forgotPassword(email: string) {\r\n return this.http.post(`${this.BASE_URL}api/auth/forgot-password?email=${email}`, null);\r\n }\r\n\r\n resetPassword(token: string, uid: string, passwords: any) {\r\n return this.http.post(`${this.BASE_URL}api/auth/reset-password?uid=${uid}&token=${encodeURIComponent(token)}`, passwords);\r\n }\r\n\r\n register(regData: RegisterData) {\r\n return this.http.post(`${this.BASE_URL}api/auth/register`, regData);\r\n }\r\n\r\n confirmAccount(token: string, uid: string) {\r\n return this.http.post(`${this.BASE_URL}api/auth/confirm-account?token=${token}&uid=${uid}`, null);\r\n }\r\n\r\n updateAccount(data: any) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('firstName', data.firstName);\r\n formData.append('lastName', data.lastName);\r\n\r\n data.categories.forEach((category: any, i: number) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.put(`${this.BASE_URL}api/auth/me`, formData);\r\n }\r\n\r\n updatePassword(data: UpdatePasswordData) {\r\n return this.http.post(`${this.BASE_URL}api/auth/update-password`, data);\r\n }\r\n\r\n updateAccountVisibility(privacyLevel: 0 | 1 | 2) {\r\n return this.http.put(`${this.BASE_URL}api/auth/me/visibility`, privacyLevel);\r\n }\r\n}\r\n","export * from './auth.service';\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { AuthData, LoginData, Profile, RegisterData, UpdatePasswordData } from '../../models';\r\n\r\nexport const CheckAuth = createAction('[Auth] Check Auth');\r\nexport const CheckAuthSuccess = createAction('[Auth] Check Auth Success', props<{ auth: AuthData }>());\r\nexport const CheckAuthFail = createAction('[Auth] Check Auth Fail', props<{ error: any }>());\r\n\r\nexport const SignIn = createAction('[Auth] Sign In', props<{ loginData: LoginData }>());\r\nexport const SignInSuccess = createAction('[Auth] Sign In Success', props<{ auth: AuthData }>());\r\nexport const SignInFail = createAction('[Auth] Sign In Fail', props<{ error: any }>());\r\n\r\nexport const SignOut = createAction('[Auth] Sign Out');\r\nexport const SignOutSuccess = createAction('[Auth] Sign Out Success', props<{ result: { success: boolean } }>());\r\nexport const SignOutFail = createAction('[Auth] Sign Out Fail', props<{ error: any }>());\r\n\r\nexport const Register = createAction('[Auth] Register', props<{ registerData: RegisterData }>());\r\n// TODO:Switch these success calls out\r\n// export const RegisterSuccess = createAction('[Auth] Register Success', props<{ result: any }>());\r\nexport const RegisterSuccess = createAction('[Auth] Register Success', props<{ result: AuthData }>());\r\nexport const RegisterFail = createAction('[Auth] Register Fail', props<{ error: any }>());\r\n\r\nexport const ActivateAccount = createAction('[Auth] Confirm Account', props<{ token: string; uid: string }>());\r\nexport const ActivateAccountSuccess = createAction('[Auth] Confirm Account Success', props<{ result: any }>());\r\nexport const ActivateAccountFail = createAction('[Auth] Confirm Account Fail', props<{ error: any }>());\r\n\r\nexport const UpdateAccount = createAction('[Auth] Update Account', props<{ accountData: any }>());\r\nexport const UpdateAccountSuccess = createAction('[Auth] Update Account Success', props<{ profile: Profile }>());\r\nexport const UpdateAccountFail = createAction('[Auth] Update Account Fail', props<{ error: any }>());\r\n\r\nexport const UpdatePassword = createAction('[Auth] Update Password', props<{ passwordData: UpdatePasswordData }>());\r\nexport const UpdatePasswordSuccess = createAction('[Auth] Update Password Success', props<{ result: any }>());\r\nexport const UpdatePasswordFail = createAction('[Auth] Update Password Fail', props<{ error: any }>());\r\n","export * from './auth.action';\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as authActions from '../actions/auth.action';\r\nimport { switchMap, map, catchError, tap, take } from 'rxjs/operators';\r\nimport { AuthService } from '../../services';\r\nimport { Store } from '@ngrx/store';\r\nimport * as fromRoot from '../../../store/index';\r\nimport { getRouterState, Go } from '../../../store/index';\r\nimport { Router } from '@angular/router';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\n\r\n@Injectable()\r\nexport class AuthEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private authService: AuthService,\r\n private store: Store,\r\n private router: Router,\r\n private sb: MatSnackBar\r\n ) {}\r\n\r\n checkAuth$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.CheckAuth),\r\n switchMap(() =>\r\n this.authService.checkAuth().pipe(\r\n map(auth => authActions.CheckAuthSuccess({ auth })),\r\n catchError(error => of(authActions.CheckAuthFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n signIn$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.SignIn),\r\n switchMap(({ loginData }) =>\r\n this.authService.signIn(loginData).pipe(\r\n map(auth => authActions.SignInSuccess({ auth })),\r\n catchError(error => of(authActions.SignInFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n signInSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.SignInSuccess),\r\n tap(({ auth }) => {\r\n this.sb.open(`Ingelogd als ${auth?.user?.fullName}`, '');\r\n }),\r\n switchMap(() =>\r\n this.store\r\n .select(getRouterState)\r\n .pipe(take(1))\r\n .pipe(\r\n map(({ state }) => {\r\n return Go({ path: [state.queryParams['returnUrl'] || '/'] });\r\n })\r\n )\r\n )\r\n );\r\n });\r\n\r\n signOut$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.SignOut),\r\n switchMap(() =>\r\n this.authService.SignOut().pipe(\r\n map(auth => authActions.SignOutSuccess({ result: auth })),\r\n catchError(error => of(authActions.SignOutFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n signOutSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(authActions.SignOutSuccess),\r\n tap(() => (window.location.href = '/account/inloggen'))\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n register$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.Register),\r\n switchMap(({ registerData }) =>\r\n this.authService.register(registerData).pipe(\r\n map(result => authActions.RegisterSuccess({ result: result })),\r\n catchError(error => of(authActions.RegisterFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n // TODO: Remove this effect\r\n // registerSuccess$ = createEffect(() => {\r\n // return this.actions$.pipe(\r\n // ofType(authActions.RegisterSuccess),\r\n // tap(({ result }) => {\r\n // this.sb.open(`Je registratie is voltooid!`, '');\r\n // }),\r\n // switchMap(() =>\r\n // this.store\r\n // .select(getRouterState)\r\n // .pipe(take(1))\r\n // .pipe(\r\n // map(({ state }) => {\r\n // return Go({ path: [state.queryParams['returnUrl'] || '/'] });\r\n // })\r\n // )\r\n // )\r\n // );\r\n // });\r\n\r\n confirmAccount$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.ActivateAccount),\r\n switchMap(({ token, uid }) =>\r\n this.authService.confirmAccount(token, uid).pipe(\r\n map(auth => authActions.ActivateAccountSuccess({ result: auth })),\r\n catchError(error => of(authActions.ActivateAccountFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n updateAccount$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.UpdateAccount),\r\n switchMap(({ accountData }) =>\r\n this.authService.updateAccount(accountData).pipe(\r\n map(profile => authActions.UpdateAccountSuccess({ profile })),\r\n catchError(error => of(authActions.UpdateAccountFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n updateAccountSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(authActions.UpdateAccountSuccess),\r\n tap(({ profile }) => {\r\n this.sb.open(`Profiel geüpdatet!`, '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n updatePassword$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(authActions.UpdatePassword),\r\n switchMap(({ passwordData }) =>\r\n this.authService.updatePassword(passwordData).pipe(\r\n map(result => authActions.UpdatePasswordSuccess({ result })),\r\n catchError(error => of(authActions.UpdatePasswordFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n updatePasswordSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(authActions.UpdatePasswordSuccess),\r\n tap(({ result }) => {\r\n this.sb.open(`Wachtwoord geüpdatet!`, '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","\r\nimport { AuthEffects } from './auth.effect';\r\n\r\nexport * from './auth.effect';\r\n\r\nexport const effects = [AuthEffects];\r\n","export * from './selectors';\r\nexport * from './actions';\r\nexport * from './reducers';\r\nexport * from './effects';\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { Profile, User } from '../../models';\r\n\r\nimport * as actions from '../actions/auth.action';\r\n\r\nexport interface AuthState {\r\n user: Profile | undefined;\r\n roles?: string[];\r\n authChecked: boolean;\r\n authChecking: boolean;\r\n signedIn: boolean;\r\n signingIn: boolean;\r\n SignIngOut: boolean;\r\n updating: boolean;\r\n updated: boolean;\r\n registerSuccess: boolean;\r\n registering: boolean;\r\n accountActivating: boolean;\r\n accountActivated: boolean;\r\n passwordUpdating: boolean;\r\n passwordUpdated: boolean;\r\n error?: any;\r\n registerError?: any;\r\n}\r\n\r\nexport const initialState: AuthState = {\r\n user: undefined,\r\n authChecked: false,\r\n authChecking: false,\r\n signedIn: false,\r\n signingIn: false,\r\n SignIngOut: false,\r\n updated: false,\r\n updating: false,\r\n registering: false,\r\n accountActivated: false,\r\n accountActivating: false,\r\n passwordUpdating: false,\r\n passwordUpdated: false,\r\n registerSuccess: false,\r\n};\r\n\r\nexport const authReducer = createReducer(\r\n initialState,\r\n on(actions.CheckAuth, (state: AuthState) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n authChecking: true,\r\n };\r\n }),\r\n on(actions.CheckAuthSuccess, (state: AuthState, { auth }) => {\r\n return {\r\n ...state,\r\n user: auth.user,\r\n authChecked: true,\r\n authChecking: false,\r\n signedIn: auth.isAuth,\r\n error: auth.error,\r\n };\r\n }),\r\n on(actions.CheckAuthFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n user: undefined,\r\n authChecked: true,\r\n signedIn: false,\r\n signingIn: false,\r\n error,\r\n };\r\n }),\r\n on(actions.SignIn, (state: AuthState, { loginData }) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n signingIn: true,\r\n };\r\n }),\r\n on(actions.SignInSuccess, (state: AuthState, { auth }) => {\r\n return {\r\n ...state,\r\n authChecked: true,\r\n user: auth.user,\r\n signedIn: auth.isAuth,\r\n signingIn: false,\r\n error: auth.error,\r\n };\r\n }),\r\n on(actions.SignInFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n user: undefined,\r\n authChecked: true,\r\n signedIn: false,\r\n signingIn: false,\r\n error,\r\n };\r\n }),\r\n on(actions.SignOut, (state: AuthState) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n SignIngOut: true,\r\n };\r\n }),\r\n on(actions.SignOutSuccess, (state: AuthState, { result: auth }) => {\r\n return {\r\n ...state,\r\n authChecked: true,\r\n user: undefined,\r\n signedIn: false,\r\n signingIn: false,\r\n SignIngOut: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.SignOutFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n authChecked: true,\r\n signedIn: true,\r\n SignIngOut: false,\r\n error,\r\n };\r\n }),\r\n on(actions.Register, (state: AuthState) => {\r\n return {\r\n ...state,\r\n registering: true,\r\n registerSuccess: false,\r\n registerError: null,\r\n };\r\n }),\r\n // TODO: Swap out following actions:\r\n // on(actions.RegisterSuccess, (state: AuthState, { result: auth }) => {\r\n // return {\r\n // ...state,\r\n // authChecked: false,\r\n // user: undefined,\r\n // registering: false,\r\n // registerSuccess: true,\r\n // registerError: null,\r\n // };\r\n // }),\r\n on(actions.RegisterSuccess, (state: AuthState, { result: auth }) => {\r\n return {\r\n ...state,\r\n authChecked: true,\r\n user: auth.user,\r\n registering: false,\r\n registerSuccess: true,\r\n registerError: null,\r\n signedIn: auth.isAuth,\r\n signingIn: false,\r\n };\r\n }),\r\n on(actions.RegisterFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n registering: false,\r\n registerSuccess: false,\r\n registerError: error,\r\n };\r\n }),\r\n on(actions.ActivateAccount, (state: AuthState) => {\r\n return {\r\n ...state,\r\n accountActivating: true,\r\n accountActivated: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.ActivateAccountSuccess, (state: AuthState, { result: any }) => {\r\n return {\r\n ...state,\r\n accountActivated: true,\r\n accountActivating: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.ActivateAccountFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n accountActivated: false,\r\n accountActivating: false,\r\n error,\r\n };\r\n }),\r\n on(actions.UpdateAccount, (state: AuthState) => {\r\n return {\r\n ...state,\r\n updating: true,\r\n updated: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.UpdateAccountSuccess, (state: AuthState, { profile }) => {\r\n return {\r\n ...state,\r\n user: {\r\n ...state.user,\r\n ...profile,\r\n },\r\n updated: true,\r\n updating: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.UpdateAccountFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n updated: false,\r\n updating: false,\r\n error,\r\n };\r\n }),\r\n\r\n on(actions.UpdatePassword, (state: AuthState) => {\r\n return {\r\n ...state,\r\n passwordUpdating: true,\r\n passwordUpdated: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.UpdatePasswordSuccess, (state: AuthState, { result: any }) => {\r\n return {\r\n ...state,\r\n passwordUpdated: true,\r\n passwordUpdating: false,\r\n error: null,\r\n };\r\n }),\r\n on(actions.UpdatePasswordFail, (state: AuthState, { error }) => {\r\n return {\r\n ...state,\r\n authChecked: false,\r\n passwordUpdated: false,\r\n passwordUpdating: false,\r\n error,\r\n };\r\n })\r\n);\r\n\r\nexport const getAuthUser = (state: AuthState) => state.user;\r\nexport const getAuthChecked = (state: AuthState) => state.authChecked;\r\nexport const getAuthChecking = (state: AuthState) => state.authChecking;\r\nexport const getAuthSignedIn = (state: AuthState) => state.signedIn;\r\nexport const getAuthSigningIn = (state: AuthState) => state.signingIn;\r\nexport const getAuthError = (state: AuthState) => state.error;\r\nexport const getUser = (state: AuthState) => state.user;\r\n\r\nexport const getRegistering = (state: AuthState) => state.registering;\r\nexport const getRegisterSuccess = (state: AuthState) => state.registerSuccess;\r\nexport const getRegisterError = (state: AuthState) => state.registerError;\r\n\r\nexport const getAccountActivated = (state: AuthState) => state.accountActivated;\r\nexport const getAccountActivating = (state: AuthState) => state.accountActivating;\r\n\r\nexport const getPasswordUpdated = (state: AuthState) => state.passwordUpdated;\r\nexport const getPasswordUpdating = (state: AuthState) => state.passwordUpdating;\r\n\r\nexport const getAccountUpdated = (state: AuthState) => state.updated;\r\nexport const getAccountUpdating = (state: AuthState) => state.updating;\r\n","import { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../../environments/environment';\r\nimport * as fromAuth from './auth.reducer';\r\n\r\nexport const featureKey = 'auth';\r\n\r\nexport interface AuthState {\r\n auth: fromAuth.AuthState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n auth: fromAuth.authReducer,\r\n};\r\n\r\nexport const getContentState = createFeatureSelector(featureKey);\r\n\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromAuth from '../reducers/auth.reducer';\r\n\r\nexport const getContentPageState = createSelector(fromFeature.getContentState, (state: fromFeature.AuthState) => state.auth);\r\n\r\nexport const getAuthChecked = createSelector(getContentPageState, fromAuth.getAuthChecked);\r\nexport const getAuthChecking = createSelector(getContentPageState, fromAuth.getAuthChecking);\r\nexport const getAuthSignedIn = createSelector(getContentPageState, fromAuth.getAuthSignedIn);\r\nexport const getAuthSigningIn = createSelector(getContentPageState, fromAuth.getAuthSigningIn);\r\nexport const getAuthUser = createSelector(getContentPageState, fromAuth.getAuthUser);\r\nexport const getAuthError = createSelector(getContentPageState, fromAuth.getAuthError);\r\n\r\nexport const getUser = createSelector(getContentPageState, fromAuth.getUser);\r\n\r\nexport const getRegistering = createSelector(getContentPageState, fromAuth.getRegistering);\r\nexport const getRegisterSuccess = createSelector(getContentPageState, fromAuth.getRegisterSuccess);\r\nexport const getRegisterError = createSelector(getContentPageState, fromAuth.getRegisterError);\r\n\r\nexport const getAccountActivated = createSelector(getContentPageState, fromAuth.getAccountActivated);\r\nexport const getAccountActivating = createSelector(getContentPageState, fromAuth.getAccountActivating);\r\n\r\nexport const getPasswordUpdated = createSelector(getContentPageState, fromAuth.getPasswordUpdated);\r\nexport const getPasswordUpdating = createSelector(getContentPageState, fromAuth.getPasswordUpdating);\r\n\r\nexport const getAccountUpdated = createSelector(getContentPageState, fromAuth.getAccountUpdated);\r\nexport const getAccountUpdating = createSelector(getContentPageState, fromAuth.getAccountUpdating);\r\n","export * from './auth.selector';\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-alert',\r\n templateUrl: './alert.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class AlertComponent {\r\n @Input() status: string = '';\r\n @Input() title?: string = '';\r\n @Input() message?: string;\r\n\r\n get alertIcon() {\r\n switch (this.status) {\r\n case 'type--error':\r\n return 'icon-error';\r\n\r\n case 'type--succes':\r\n return 'icon-check';\r\n\r\n case 'type--warning':\r\n return 'icon-warning';\r\n\r\n case 'type--danger':\r\n return 'icon-error';\r\n\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n constructor() {}\r\n}\r\n","
\r\n
\r\n
\r\n \r\n

{{ title }}

\r\n
\r\n
\r\n

\r\n {{ message }}\r\n

\r\n \r\n
\r\n
\r\n
\r\n","import { Component, Inject, Input, OnInit } from '@angular/core';\r\nimport { MatLegacyDialogRef as MatDialogRef, MAT_LEGACY_DIALOG_DATA as MAT_DIALOG_DATA } from '@angular/material/legacy-dialog';\r\n\r\n@Component({\r\n selector: 'app-confirm',\r\n templateUrl: './confirm.component.html',\r\n})\r\nexport class ConfirmComponent implements OnInit {\r\n @Input() message!: string;\r\n @Input() title!: string;\r\n @Input() cssClass!: string;\r\n\r\n constructor(public dialogRef: MatDialogRef, @Inject(MAT_DIALOG_DATA) public data: any) {}\r\n\r\n ngOnInit(): void {\r\n this.message = this.data.message;\r\n this.title = this.data.title;\r\n this.cssClass = this.data.cssClass;\r\n\r\n this.dialogRef.addPanelClass('confirm-dialog');\r\n }\r\n\r\n confirmHandler(e: any) {\r\n if (e) {\r\n this.dialogRef.close(true);\r\n } else {\r\n this.dialogRef.close(false);\r\n }\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n

{{ title }}

\r\n
\r\n\r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\nimport { Profile } from 'src/app/auth/models';\r\n\r\n@Component({\r\n selector: 'app-created-by',\r\n templateUrl: './created-by.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class CreatedByComponent implements OnInit {\r\n @Input() name!: string;\r\n @Input() avatar!: string;\r\n @Input() showName = true;\r\n @Input() sizes = 90;\r\n\r\n get firstletter() {\r\n return this.name.slice(0, 1).toLocaleLowerCase();\r\n }\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","
\r\n
\r\n \r\n \r\n
\r\n {{ name }}\r\n
\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\n\r\n@Component({\r\n selector: 'app-date',\r\n templateUrl: './date.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class DateComponent {\r\n @Input() start!: Date | string;\r\n @Input() end?: Date | string;\r\n @Input() size?: 'sm' | 'lg';\r\n @Input() orientation?: 'horizontal' | 'vertical';\r\n\r\n constructor(private lang: LanguageService) {}\r\n\r\n getMonth(d: Date | string) {\r\n if (!d) {\r\n return;\r\n }\r\n let date = typeof d === 'string' ? new Date(d) : d;\r\n return date.toLocaleString(this.lang.getLanguage() || 'nl', { month: 'short' });\r\n }\r\n\r\n isCurrentYear(d: Date | string) {\r\n if (!d) {\r\n return;\r\n }\r\n let date = typeof d === 'string' ? new Date(d) : d;\r\n return new Date().getFullYear() === date.getFullYear();\r\n }\r\n}\r\n","\r\n
\r\n {{ start | date : 'dd' }}\r\n {{ getMonth(start) }}\r\n {{ start | date : 'yyyy' }}\r\n
\r\n\r\n \r\n tot en met\r\n\r\n
\r\n {{ end | date : 'dd' }}\r\n {{ getMonth(end) }}\r\n {{ end | date : 'yyyy' }}\r\n
\r\n
\r\n
\r\n","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { ShowCookieSettings } from '@teamfoster/sdk/cookie-ngrx';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { ContentPage } from 'src/app/content/models';\r\nimport * as fromMenu from '@teamfoster/sdk/menu-ngrx';\r\n\r\n@Component({\r\n selector: 'app-footer',\r\n templateUrl: './footer.component.html',\r\n})\r\nexport class FooterComponent implements OnInit {\r\n @Input() menu: fromMenu.MenuItem[] = [];\r\n @Input() schema: any;\r\n @Input() socials: [] = [];\r\n @Input() domain: string = '';\r\n year = new Date().getFullYear();\r\n\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n constructor(private store: Store, private lang: LanguageService) {}\r\n\r\n ngOnInit(): void {\r\n this.schema = {\r\n '@context': 'http://schema.org',\r\n '@type': this.dict.transform('json-ld-meta-type'),\r\n 'name': this.dict.transform('meta-titel'),\r\n 'url': this.domain,\r\n 'logo': `${this.domain}/assets/gfx/logo-spoorzone.svg`,\r\n 'contactPoint': {\r\n '@type': 'ContactPoint',\r\n 'email': this.dict.transform('contact-email'),\r\n 'contactType': 'customer service',\r\n },\r\n 'sameAs': [],\r\n };\r\n\r\n this.socials.forEach(s => {\r\n const socialLink = s; // to do config with social buttons\r\n this.schema.sameAs.push(socialLink);\r\n });\r\n }\r\n\r\n openCookie() {\r\n this.store.dispatch(ShowCookieSettings());\r\n }\r\n}\r\n","
\r\n
    \r\n
  • {{ year }} © {{ 'meta-titel-suffix' | fromDictionary }}
  • \r\n\r\n
  • \r\n \r\n
  • \r\n
  • \r\n {{ item.title }}\r\n
  • \r\n
\r\n \r\n
\r\n","import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-grid-overlay',\r\n templateUrl: './grid-overlay.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class GridOverlayComponent {\r\n gridColumns = [...Array(12).keys()];\r\n\r\n constructor() {}\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n {{ number + 1 }}\r\n
\r\n
\r\n
\r\n
\r\n
","import { Component, OnInit, Input, Output, EventEmitter } from '@angular/core';\r\nimport { Html5PlayerVars } from '@teamfoster/sdk/html5-video-player';\r\nimport { Header } from '../../models';\r\n\r\n@Component({\r\n selector: 'app-header',\r\n templateUrl: './header.component.html',\r\n})\r\nexport class HeaderComponent {\r\n @Input() imageUrl?: string;\r\n @Input() title?: string;\r\n @Input() subtitle?: string;\r\n @Input() cssClass?: string;\r\n\r\n @Input() header?: Header;\r\n @Input() showLogo: boolean = false;\r\n @Input() isSignedIn: boolean = false;\r\n\r\n constructor() {}\r\n}\r\n","\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \"Blauwhaus\r\n

{{ title || header?.title }}

\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import {\r\n Component,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectorRef,\r\n Input,\r\n HostBinding,\r\n Output,\r\n EventEmitter,\r\n ViewEncapsulation,\r\n} from '@angular/core';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { ResizePipe, Image } from '@teamfoster/sdk/image';\r\nimport { FromDictionaryPipe, LanguageService } from '@teamfoster/sdk/dictionary-ngrx';\r\n\r\n@Component({\r\n selector: 'app-image',\r\n templateUrl: './image.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n encapsulation: ViewEncapsulation.None,\r\n})\r\nexport class ImageComponent implements OnInit {\r\n @Input() image!: Image; // instead of url you can also use the new Image model\r\n @Input() objectFitMode: boolean = false; //Uses CSS object-fit modus instead of url\r\n @Output() loaded = new EventEmitter();\r\n\r\n @Input() debug: boolean = false; // Shows debugdata in table\r\n @Input() alt!: string;\r\n //@Input() src!: string; // URL without resizing pipes etc.\r\n //@Input() alt!: string; // Regular Alt text\r\n\r\n @Input() loading = 'lazy'; // Lazy loading\r\n\r\n // When both width and height are filled, this is used to calculate the aspect-ratio\r\n @Input() width: number = 0;\r\n @Input() height: number = 0;\r\n\r\n // if image get's clipped, this determines from what anchor\r\n //@Input() anchor:\r\n // | 'topleft'\r\n // | 'topcenter'\r\n // | 'topright'\r\n // | 'middleleft'\r\n // | 'middlecenter'\r\n // | 'middleright'\r\n // | 'bottomleft'\r\n // | 'bottomcenter'\r\n // | 'bottomright' = 'middlecenter';\r\n\r\n // Type of clipping when aspect ratio is given.\r\n @Input() mode: 'crop' | 'stretch' | 'pad' | 'max' = 'crop';\r\n\r\n //// Image file format\r\n @Input() format: 'jpg' | 'png' | 'bmp' | 'gif' | 'webp' = 'webp';\r\n\r\n //// Scale\r\n @Input() scale: 'both' | 'down' | 'canvas' = 'both';\r\n\r\n // Set what image sizes the srcset will contain (this will be used to pick from)\r\n @Input() imageSizes: number[] = [550, 800, 1200, 1600, 1920];\r\n\r\n // How many cols does the image span on what breakpoint?\r\n // For example: { md: 4, xl: 3 } is the same as bootstrap .col-md-4 .col-xl-3 classes\r\n @Input() sizes: {\r\n xs?: number;\r\n sm?: number;\r\n md?: number;\r\n lg?: number;\r\n xl?: number;\r\n xxl?: number;\r\n } = {};\r\n\r\n // Overwrite the sizes attribute (to set it manually)\r\n @Input() customSizes: string = '';\r\n\r\n // Used only for debugging purposes\r\n @ViewChild('img') img: ElementRef | undefined;\r\n\r\n // Inherited from CSS: $grid-breakpoints\r\n // is used to generate size attribute with collspans\r\n cssBreakPoints = {\r\n sm: 576,\r\n md: 768,\r\n lg: 992,\r\n xl: 1200,\r\n xxl: 1400,\r\n };\r\n\r\n gcd: number = 0; // GCD is the highest number that evenly divides both numbers\r\n aspectRatio: string = 'auto'; // used for CSS, outputs an string as such: '16/9' or 'auto'\r\n currentSrc: string | undefined; // on resize this will be updated with the chosen image url\r\n\r\n private resize = new ResizePipe();\r\n private dict = new FromDictionaryPipe(this.lang);\r\n\r\n constructor(private cd: ChangeDetectorRef, private sanitizer: DomSanitizer, private lang: LanguageService) {}\r\n\r\n ngOnInit(): void {\r\n this.gcd = this.aspect(this.height, this.width);\r\n this.aspectRatio = this.width && this.height ? `${this.width / this.gcd} / ${this.height / this.gcd}` : 'auto';\r\n\r\n // required alt text\r\n if (!this.image?.alt && !this.alt) {\r\n console.error(`Attribute 'alt' is required for image`, this.image);\r\n }\r\n }\r\n\r\n //? enable this if you want to test with chosen img size\r\n @HostBinding('attr.style')\r\n public get getCSSvariables(): any {\r\n return this.sanitizer.bypassSecurityTrustStyle('--aspect-ratio:' + this.aspectRatio);\r\n }\r\n\r\n // Test purposes only\r\n // shows which src gets chosen\r\n // @HostListener('window:resize', ['$event'])\r\n // onResize() {\r\n // this.currentSrc = this.img.nativeElement.currentSrc.replace(this.src, '');\r\n // this.cd.markForCheck();\r\n // }\r\n\r\n get sizesAttr() {\r\n // So youll be able to make your own size property build\r\n if (this.customSizes) {\r\n return this.customSizes;\r\n }\r\n if (!this.sizes) {\r\n return 'auto';\r\n }\r\n\r\n const sizeRules: string[] = [];\r\n\r\n // Sets for each container width an srcset (so for full width images)\r\n Object.keys(this.sizes).forEach(key => {\r\n const size = this.sizes[key as keyof typeof this.sizes];\r\n const breakpoint = this.cssBreakPoints[key as keyof typeof this.cssBreakPoints];\r\n\r\n if (!size || !breakpoint) {\r\n return;\r\n }\r\n\r\n const width = (100 / 12) * size;\r\n\r\n sizeRules.push(`(min-width: ${breakpoint}px) ${width}vw`); // TODO calculate width with max width of container & vw?\r\n });\r\n\r\n return sizeRules.join(',').concat(', 100vw');\r\n }\r\n\r\n get srcSetAttr() {\r\n const srcSetRules: string[] = [];\r\n\r\n this.imageSizes.forEach(imgWidth => {\r\n srcSetRules.push(\r\n `${this.resize.transform(\r\n encodeURI(this.image.url || this.dict.transform('placeholder-image')),\r\n imgWidth,\r\n this.getAspectRatioHeight(imgWidth),\r\n this.image.anchor || undefined,\r\n this.mode,\r\n this.format,\r\n this.scale\r\n )} ${imgWidth}w` // TODO calculate width with max width of container & vw?\r\n );\r\n });\r\n\r\n return srcSetRules.join(',');\r\n }\r\n\r\n getAspectRatioHeight(size: number): number {\r\n if (!this.height || !this.width) {\r\n return 0;\r\n }\r\n\r\n // ? What if only height is given ?\r\n const percentageDiff = (size - this.width) / this.width;\r\n const newHeight = Math.round((percentageDiff + 1) * this.height);\r\n\r\n return newHeight;\r\n }\r\n\r\n aspect(h: number, w: number): number {\r\n return !w ? h : this.aspect(w, h % w);\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
currentSrc{{ currentSrc }}
Aspect{{ aspectRatio }}
srcset{{ srcSetAttr }}
sizes{{ sizesAttr }}
\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loader-indicator',\r\n templateUrl: './loading-indicator.component.html',\r\n})\r\nexport class LoaderIndicatorComponent {\r\n @Input() loading: boolean = false;\r\n @Input() setFixed = true;\r\n constructor() {}\r\n}\r\n","
\r\n
\r\n
\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-shape-image',\r\n templateUrl: './shape-image.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class ShapeImageComponent {\r\n @Input() shape!: string;\r\n @Input() url!: string;\r\n @Input() anchor: string = 'middlecenter';\r\n @Input() backgroundColor: string = 'orange';\r\n\r\n get shapePath() {\r\n return `url('/assets/dist/svg/stack/svg/sprite.stack.svg#${this.shape}')`;\r\n }\r\n\r\n get CSSImageUrl() {\r\n return `url('${this.url}')`;\r\n }\r\n}\r\n","
\r\n
\r\n \r\n
\r\n","import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-tab-bar',\r\n templateUrl: './tab-bar.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class TabBarComponent implements OnInit {\r\n @Input() actionTabUrl: string = '/meningen/nieuw';\r\n @Input() actionTabLabel: string = 'Deel jou mening';\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n}\r\n","\r\n
\r\n","import { isPlatformBrowser } from '@angular/common';\r\nimport { Component, OnInit, Input, ChangeDetectorRef, Output, EventEmitter, Inject, PLATFORM_ID, InjectionToken } from '@angular/core';\r\nimport { NavigationStart, Router } from '@angular/router';\r\nimport { fromEvent } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\nimport * as fromAuth from '../../../auth/store';\r\nimport * as fromMenu from '@teamfoster/sdk/menu-ngrx';\r\nimport { Store } from '@ngrx/store';\r\nimport { NotificationBundle } from 'src/app/notifications/models';\r\nimport { MarkAsRead } from 'src/app/notifications/store';\r\nimport { Go } from 'src/app/store';\r\nimport { loremNotification } from './_lorem-noties';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n selector: 'app-topbar',\r\n templateUrl: './topbar.component.html',\r\n})\r\nexport class TopbarComponent implements OnInit {\r\n @Input() loading: boolean = false;\r\n @Input() menuActive: boolean = false;\r\n @Input() logoClass: string = '';\r\n @Input() menu: fromMenu.MenuItem[] = [];\r\n @Input() loggedIn: boolean = false;\r\n @Input() notifications!: NotificationBundle[] | null;\r\n\r\n @Output() toggleOverlay = new EventEmitter();\r\n @Output() closeOverlay = new EventEmitter();\r\n @Output() openOverlay = new EventEmitter();\r\n\r\n fixed = false;\r\n showNotifications = false;\r\n\r\n get hasNotify() {\r\n if (this.notifications && this.notifications.length) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n\r\n constructor(\r\n private cd: ChangeDetectorRef,\r\n @Inject(PLATFORM_ID) private platformId: InjectionToken,\r\n private router: Router,\r\n private store: Store\r\n ) {\r\n router.events.pipe(takeUntilDestroyed()).subscribe(s => {\r\n if (s instanceof NavigationStart && this.menuActive) {\r\n this.closeOverlay.emit();\r\n }\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n if (isPlatformBrowser(this.platformId)) {\r\n fromEvent(window, 'scroll')\r\n .pipe(debounceTime(20))\r\n .subscribe(a => {\r\n // show scrollbar after windowinnerheight (window.innerHeight)\r\n if (window.scrollY > 96) {\r\n this.fixed = true;\r\n } else {\r\n this.fixed = false;\r\n }\r\n this.cd.detectChanges();\r\n });\r\n }\r\n }\r\n\r\n signOut() {\r\n this.store.dispatch(fromAuth.SignOut());\r\n }\r\n\r\n read(notification: NotificationBundle) {\r\n this.showNotifications = false;\r\n this.store.dispatch(MarkAsRead({ notification }));\r\n this.store.dispatch(Go({ path: notification.routerLink }));\r\n }\r\n}\r\n","
\r\n
\r\n

\r\n \r\n Blauwhaus\r\n \r\n \r\n

\r\n\r\n
\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n","import { RouterModule } from '@angular/router';\r\nimport { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LoaderIndicatorComponent } from './components/loading-indicator/loading-indicator.component';\r\nimport { HeaderComponent } from './components/header/header.component';\r\nimport { TopbarComponent } from './components/topbar/topbar.component';\r\nimport { FooterComponent } from './components/footer/footer.component';\r\nimport { InViewModule } from '@teamfoster/sdk/in-view';\r\nimport { TextUtilityModule } from '@teamfoster/sdk/text-utility';\r\nimport { IconModule } from '@teamfoster/sdk/icon';\r\nimport { Html5VideoPlayerModule } from '@teamfoster/sdk/html5-video-player';\r\nimport { GridOverlayComponent } from './components/grid-overlay/grid-overlay.component';\r\nimport { ImageComponent } from './components/image/image.component';\r\nimport { DictionaryNgrxModule } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { SeoModule } from '../seo/seo.module';\r\nimport { AlertComponent } from './components/alert/alert.component';\r\nimport { FormFileInputComponent } from './form-fields/form-file-input/form-file-input.component';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { FormCheckboxButtonsComponent } from './form-fields/form-checkbox-buttons/form-checkbox-buttons.component';\r\nimport { ConfirmComponent } from './components/confirm/confirm.component';\r\nimport { MatLegacyDialogModule as MatDialogModule } from '@angular/material/legacy-dialog';\r\nimport { CreatedByComponent } from './components/created-by/created-by.component';\r\nimport { QuillRemoveLinebreakPipe } from './pipes/quill-linebreak.pipe';\r\nimport { TabBarComponent } from './components/tab-bar/tab-bar.component';\r\nimport { ImageModule } from '@teamfoster/sdk/image';\r\nimport { ButtonModule } from '@teamfoster/sdk/button';\r\nimport { ShapeImageComponent } from './components/shape-image/shape-image.component';\r\nimport { DateComponent } from './components/date/date.component';\r\n\r\nconst moduleExports = [\r\n LoaderIndicatorComponent,\r\n HeaderComponent,\r\n TopbarComponent,\r\n FooterComponent,\r\n GridOverlayComponent,\r\n AlertComponent,\r\n FormFileInputComponent,\r\n FormCheckboxButtonsComponent,\r\n ImageComponent,\r\n ConfirmComponent,\r\n CreatedByComponent,\r\n QuillRemoveLinebreakPipe,\r\n TabBarComponent,\r\n ShapeImageComponent,\r\n DateComponent,\r\n];\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n RouterModule,\r\n InViewModule,\r\n TextUtilityModule,\r\n ReactiveFormsModule,\r\n Html5VideoPlayerModule,\r\n IconModule,\r\n DictionaryNgrxModule,\r\n SeoModule,\r\n MatDialogModule,\r\n ImageModule,\r\n ButtonModule,\r\n ],\r\n declarations: [...moduleExports],\r\n exports: [...moduleExports],\r\n providers: [],\r\n})\r\nexport class CoreModule {}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { AbstractControl, FormArray, FormBuilder, FormControl, FormGroup, UntypedFormGroup } from '@angular/forms';\r\nimport { DynamicFormField, SelectOption } from '@teamfoster/sdk/dynamic-form';\r\nimport { Subject } from 'rxjs';\r\nimport { takeUntil } from 'rxjs/operators';\r\n\r\n@Component({\r\n selector: 'app-form-checkbox-buttons',\r\n templateUrl: './form-checkbox-buttons.component.html',\r\n})\r\nexport class FormCheckboxButtonsComponent implements OnInit, OnDestroy {\r\n config!: DynamicFormField;\r\n group!: FormGroup;\r\n\r\n checkBoxes = this.fb.group({});\r\n\r\n private _unsubscribe = new Subject();\r\n\r\n constructor(private fb: FormBuilder) {}\r\n\r\n ngOnInit(): void {\r\n this.config.selectOptions?.forEach((option: SelectOption) => {\r\n const initialValue = this.config.value && this.config.value.some((b: any) => b.id === option.id);\r\n this.checkBoxes.addControl(`${this.config.name}_option_${option.id}`, this.fb.control(initialValue));\r\n });\r\n\r\n // Update checkboxgroup value to array of selected checkboxes\r\n this.checkBoxes.valueChanges.pipe(takeUntil(this._unsubscribe)).subscribe(val => {\r\n let selectedAsArray = Object.keys(val).filter(k => (val)[k]);\r\n selectedAsArray = selectedAsArray.length > 0 ? selectedAsArray : [];\r\n\r\n const objectArray = this.config.selectOptions?.filter(a => selectedAsArray?.indexOf(`${this.config.name}_option_${a.id}`) >= 0) || [];\r\n\r\n this.group.get(this.config.name)?.patchValue(objectArray);\r\n });\r\n\r\n // If value changes outside component (patchvalue) set checkboxvalues\r\n this.group\r\n .get(this.config.name)\r\n ?.valueChanges.pipe(takeUntil(this._unsubscribe))\r\n .subscribe(values => {\r\n if (!values?.length) {\r\n return;\r\n }\r\n values.forEach((name: any) => {\r\n const ctrl = (this.checkBoxes.controls)[`${this.config.name}_option_${name}`];\r\n if (ctrl) {\r\n ctrl.setValue(true);\r\n }\r\n });\r\n });\r\n }\r\n\r\n isRequired(ctrl: AbstractControl | null) {\r\n if (!ctrl || !ctrl.validator) {\r\n return false;\r\n }\r\n const validator = ctrl?.validator({} as AbstractControl);\r\n return validator && validator['required'];\r\n }\r\n\r\n showError(field: AbstractControl) {\r\n return field.invalid && (this.checkBoxes.touched || this.checkBoxes.dirty);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this._unsubscribe.next();\r\n this._unsubscribe.complete();\r\n }\r\n}\r\n","\r\n \r\n \r\n\r\n
\r\n {{ config.label }}\r\n *\r\n
\r\n
{{ config.hint }}
\r\n\r\n
    \r\n
  • \r\n \r\n
  • \r\n
\r\n \r\n
\r\n","import { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { AbstractControl, UntypedFormGroup } from '@angular/forms';\r\nimport { DynamicFormField } from '@teamfoster/sdk/dynamic-form';\r\n\r\n@Component({\r\n selector: 'form-file-input',\r\n templateUrl: './form-file-input.component.html',\r\n})\r\nexport class FormFileInputComponent implements OnInit {\r\n config!: DynamicFormField;\r\n group!: UntypedFormGroup;\r\n\r\n filePreview?: string | ArrayBuffer;\r\n file?: File;\r\n fileName?: string;\r\n fileType?: string;\r\n\r\n dragOver: boolean = false;\r\n isPreview = false;\r\n\r\n constructor(private cd: ChangeDetectorRef) {}\r\n\r\n ngOnInit(): void {\r\n this.filePreview = this.config.value;\r\n }\r\n\r\n showError(field: AbstractControl) {\r\n return field.invalid && (field.touched || field.dirty);\r\n }\r\n\r\n isRequired(field: AbstractControl) {\r\n if (!field.validator) {\r\n return false;\r\n }\r\n const validator = field?.validator({} as AbstractControl);\r\n return validator && validator['required'];\r\n }\r\n\r\n onFileSelected(event: any) {\r\n if (!event.target.files || event.target.files.length === 0) {\r\n return;\r\n }\r\n\r\n this.file = event.target.files[0];\r\n this.setFileDetails();\r\n }\r\n\r\n setFileDetails() {\r\n this.fileName = this.file?.name;\r\n this.fileType = this.file?.type;\r\n this.group.get(this.config.name)?.markAsDirty();\r\n this.group.get(this.config.name)?.setValue(this.file);\r\n this.setFilePreview();\r\n }\r\n\r\n setFilePreview() {\r\n if (!this.fileType?.startsWith('image/') && !this.fileType?.startsWith('image/svg')) {\r\n return;\r\n }\r\n\r\n if (this.file) {\r\n const reader = new FileReader();\r\n reader.readAsDataURL(this.file);\r\n reader.onload = () => {\r\n this.dragOver = false;\r\n this.filePreview = reader.result ?? undefined;\r\n this.isPreview = true;\r\n this.cd.detectChanges();\r\n };\r\n }\r\n }\r\n\r\n onDrop(event: DragEvent) {\r\n event.preventDefault();\r\n const files = event.dataTransfer?.files ?? [];\r\n\r\n if (files.length > 0) {\r\n this.file = files[0];\r\n this.setFileDetails();\r\n return;\r\n }\r\n\r\n console.error('no files found on drop event');\r\n }\r\n onDragOver(event: any) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n this.dragOver = true;\r\n }\r\n onDragLeave(event: any) {\r\n event.stopPropagation();\r\n event.preventDefault();\r\n this.dragOver = false;\r\n }\r\n\r\n clearFile() {\r\n this.file = undefined;\r\n this.filePreview = undefined;\r\n this.fileName = undefined;\r\n this.group.get(this.config.name)?.setValue(null);\r\n }\r\n\r\n error(ctrl: AbstractControl) {\r\n if (ctrl.hasError('required')) {\r\n return 'Dit veld is verplicht.';\r\n }\r\n return null;\r\n }\r\n}\r\n","\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n \r\n {{ 'bestand-uploaden-drop-tekst' | fromDictionary }}\r\n kies bestand\r\n \r\n
\r\n {{ config['acceptHint'] }}\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n {{ 'bestand-uploaden-geselecteerde-label' | fromDictionary }}\r\n
\r\n\r\n
\r\n {{ fileName || filePreview }}\r\n
\r\n\r\n \r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n {{ error(field) }}\r\n
\r\n
\r\n \r\n
\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class HttpStatusCodeService {\r\n private statusCode: number;\r\n\r\n constructor() {\r\n this.statusCode = 200;\r\n }\r\n\r\n public setStatusCode(statusCode: number) {\r\n this.statusCode = statusCode;\r\n }\r\n\r\n public getStatusCode(): number {\r\n return this.statusCode;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'quillRemoveLinebreak',\r\n})\r\nexport class QuillRemoveLinebreakPipe implements PipeTransform {\r\n transform(value: string): any {\r\n return value.replace('


', '');\r\n }\r\n}\r\n","import { Component, Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { tap, filter, take, switchMap, catchError, withLatestFrom, map } from 'rxjs/operators';\r\n\r\nimport * as fromStore from '../store';\r\nimport * as fromRoot from '../../store';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class EventsAllOverviewGuard {\r\n constructor(private store: Store) {}\r\n\r\n canDeactivate(\r\n component: Component,\r\n currentRoute: ActivatedRouteSnapshot,\r\n currentState: RouterStateSnapshot,\r\n nextState?: RouterStateSnapshot | undefined\r\n ): boolean | UrlTree | Observable | Promise {\r\n return this.checkDeactivate().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n canActivate(): Observable {\r\n return this.checkStore().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkDeactivate(): Observable {\r\n return this.store.select(fromStore.getEventsLoaded).pipe(\r\n tap(loaded => {\r\n if (loaded) {\r\n this.store.dispatch(fromStore.ClearEvents());\r\n }\r\n }),\r\n filter(loaded => !loaded),\r\n map(loaded => !loaded),\r\n take(1)\r\n );\r\n }\r\n\r\n checkStore(): Observable {\r\n return this.store.select(fromStore.getEventsLoaded).pipe(\r\n withLatestFrom(this.store.select(fromStore.getEventsPage), this.store.select(fromRoot.getRouterState)),\r\n tap(([loaded, page, router]) => {\r\n if (!loaded || (+router.state.queryParams['page'] || 0) !== page.current) {\r\n const current = +router.state.queryParams['page'] || 0;\r\n this.store.dispatch(fromStore.LoadEvents({ skip: current * page.size, take: page.size }));\r\n }\r\n }),\r\n filter(([loaded]) => loaded),\r\n map(([loaded]) => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Event, UpdateEventData } from '../models/event.model';\r\nimport { PagedOverview } from 'src/app/core/models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class EventsService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getEvents(skip: number = 0, take: number = 0, category: number = 0) {\r\n return this.http.get>(`${this.BASE_URL}api/events?take=${take}&skip=${skip}&category=${category}`);\r\n }\r\n\r\n getEvent(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/events/${id}`);\r\n }\r\n\r\n updateEvent(id: number, data: UpdateEventData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n formData.append('helpText', data.helpText);\r\n formData.append('location', data.location);\r\n formData.append('startDate', data.startDate?.toString());\r\n formData.append('endDate', data.endDate?.toString());\r\n\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.put(`${this.BASE_URL}api/events/${id}`, formData);\r\n }\r\n\r\n deleteEvent(id: number) {\r\n return this.http.delete(`${this.BASE_URL}api/events/${id}`);\r\n }\r\n\r\n createEvent(data: UpdateEventData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n formData.append('location', data.location);\r\n formData.append('startDate', data.startDate?.toString());\r\n formData.append('endDate', data.endDate?.toString());\r\n\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.post(`${this.BASE_URL}api/events`, formData);\r\n }\r\n}\r\n","export * from './events.service';\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { Event, UpdateEventData } from '../../models';\r\n\r\nexport const LoadEvent = createAction('[Events] Load Event', props<{ id: number }>());\r\nexport const LoadEventSuccess = createAction('[Events] Load Event Success', props<{ event: Event }>());\r\nexport const LoadEventFail = createAction('[Events] Load Event Fail', props<{ error: any }>());\r\n\r\nexport const LoadEvents = createAction('[Events] Load Events', props<{ take?: number; skip?: number; category?: number }>());\r\nexport const LoadEventsSuccess = createAction('[Events] Load Events Success', props<{ events: PagedOverview }>());\r\nexport const LoadEventsFail = createAction('[Events] Load Events Fail', props<{ error: any }>());\r\n\r\nexport const LoadMoreEvents = createAction('[Events] Load MORE Events');\r\nexport const LoadMoreEventsSuccess = createAction('[Events] Load MORE Events Success', props<{ events: PagedOverview }>());\r\n\r\nexport const UpdateEvent = createAction('[Events] Update Event', props<{ id: number; eventData: UpdateEventData }>());\r\nexport const UpdateEventSuccess = createAction('[Events] Update Event Success', props<{ event: Event }>());\r\nexport const UpdateEventFail = createAction('[Events] Update Event Fail', props<{ error: any }>());\r\n\r\nexport const CreateEvent = createAction('[Events] Create Event', props<{ eventData: UpdateEventData }>());\r\nexport const CreateEventSuccess = createAction('[Events] Create Event Success', props<{ event: Event }>());\r\nexport const CreateEventFail = createAction('[Events] Create Event Fail', props<{ error: any }>());\r\n\r\nexport const DeleteEvent = createAction('[Events] Delete Event', props<{ id: number }>());\r\nexport const DeleteEventSuccess = createAction('[Events] Delete Event Success', props<{ event: Event }>());\r\nexport const DeleteEventFail = createAction('[Events] Delete Event Fail', props<{ error: any }>());\r\n\r\nexport const ClearEvents = createAction('[Events] Clear Events');\r\n","export * from './events.action';\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/events.action';\r\nimport { switchMap, map, catchError, tap, withLatestFrom } from 'rxjs/operators';\r\nimport { EventsService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go } from '../../../store';\r\nimport { Store } from '@ngrx/store';\r\nimport { getEventsPage } from '../selectors';\r\n\r\n@Injectable()\r\nexport class EventsEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private service: EventsService,\r\n private router: Router,\r\n private sb: MatSnackBar,\r\n private store: Store\r\n ) {}\r\n\r\n LoadEvent$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadEvent),\r\n switchMap(({ id }) =>\r\n this.service.getEvent(id).pipe(\r\n map(event => actions.LoadEventSuccess({ event })),\r\n catchError(error => of(actions.LoadEventFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadEvents$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadEvents),\r\n switchMap(({ skip, take, category }) =>\r\n this.service.getEvents(skip, take, category).pipe(\r\n map(events => actions.LoadEventsSuccess({ events })),\r\n catchError(error => of(actions.LoadEventsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadMoreEvents$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadMoreEvents),\r\n withLatestFrom(this.store.select(getEventsPage)),\r\n switchMap(([{}, pagedata]) =>\r\n this.service.getEvents((pagedata.current + 1) * pagedata.size, pagedata.size, undefined).pipe(\r\n map(events => actions.LoadMoreEventsSuccess({ events })),\r\n catchError(error => of(actions.LoadEventsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateEvent$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateEvent),\r\n switchMap(({ eventData }) =>\r\n this.service.createEvent(eventData).pipe(\r\n map(event => actions.CreateEventSuccess({ event })),\r\n catchError(error => of(actions.CreateEventFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n UpdateEvent$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateEvent),\r\n switchMap(({ id, eventData }) =>\r\n this.service.updateEvent(id, eventData).pipe(\r\n map(event => actions.UpdateEventSuccess({ event })),\r\n catchError(error => of(actions.UpdateEventFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteEvent$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteEvent),\r\n switchMap(({ id }) =>\r\n this.service.deleteEvent(id).pipe(\r\n map(event => actions.DeleteEventSuccess({ event })),\r\n catchError(error => of(actions.DeleteEventFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n updateEventSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateEventSuccess),\r\n tap(({ event }) => {\r\n this.sb.open('Evenement geüpdatet!', '');\r\n }),\r\n map(({ event }) => Go({ path: event.url }))\r\n );\r\n });\r\n\r\n createEventSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateEventSuccess),\r\n tap(({ event }) => {\r\n this.sb.open('Evenement aangemaakt!', '');\r\n }),\r\n map(({ event }) => Go({ path: event.url }))\r\n );\r\n });\r\n\r\n deleteEventSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteEventSuccess),\r\n tap(({ event }) => {\r\n this.sb.open('Evenement verwijderd!', '');\r\n }),\r\n map(({ event }) => Go({ path: ['/', 'agenda'] }))\r\n );\r\n });\r\n}\r\n","import { EventsEffects } from './events.effect';\r\n\r\nexport * from './events.effect';\r\n\r\nexport const effects = [EventsEffects];\r\n","export * from './reducers';\r\nexport * from './effects';\r\nexport * from './actions';\r\nexport * from './selectors';\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { Event } from '../../models';\r\nimport * as utility from '../../../utility';\r\nimport * as EventActions from '../actions/events.action';\r\nimport { PageData } from 'src/app/core/models';\r\n\r\nexport interface EventsState {\r\n entities: { [id: number]: Event };\r\n page: PageData;\r\n loading: boolean;\r\n loaded: boolean;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: EventsState = {\r\n entities: {},\r\n page: { current: 0, pageCount: 0, resultCount: 0, size: 6, filters: { unvoted: true } },\r\n loaded: false,\r\n loading: false,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const EventReducer = createReducer(\r\n initialState,\r\n on(EventActions.LoadEvents, EventActions.LoadMoreEvents, (state: EventsState) => {\r\n return {\r\n ...state,\r\n loading: true,\r\n mineLoaded: false,\r\n };\r\n }),\r\n on(EventActions.LoadEventsSuccess, EventActions.LoadMoreEventsSuccess, (state: EventsState, { events }) => {\r\n const entities = utility.ToEntities(events.items, 'id', state.entities);\r\n\r\n return {\r\n ...state,\r\n entities,\r\n page: events.page,\r\n loading: false,\r\n loaded: true,\r\n mineLoaded: true,\r\n };\r\n }),\r\n on(EventActions.LoadEventsFail, (state: EventsState, { error }) => {\r\n return {\r\n ...state,\r\n loading: false,\r\n loaded: false,\r\n mineLoaded: false,\r\n error,\r\n };\r\n }),\r\n on(EventActions.LoadEvent, (state: EventsState, { id }) => {\r\n const entity: Event = {\r\n ...state.entities[id],\r\n loading: true,\r\n loaded: false,\r\n };\r\n\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [id]: entity,\r\n },\r\n };\r\n }),\r\n on(EventActions.LoadEventSuccess, (state: EventsState, { event }) => {\r\n // console.log('castvvotesucces', event);\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [event.id]: event,\r\n // [event.id]: {\r\n // ...event,\r\n // votes: {\r\n // ...state.entities[event.id].votes,\r\n // mine: direction,\r\n // }\r\n // },\r\n },\r\n };\r\n }),\r\n on(EventActions.CreateEvent, EventActions.UpdateEvent, (state: EventsState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }),\r\n on(EventActions.CreateEventSuccess, EventActions.UpdateEventSuccess, (state: EventsState, { event }) => {\r\n const entities = {\r\n ...state.entities,\r\n [event.id]: event,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(EventActions.DeleteEventSuccess, (state: EventsState, { event }) => {\r\n const { [event.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(EventActions.ClearEvents, (state: EventsState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getEventsEntities = (state: EventsState) => state.entities;\r\nexport const getEventsLoading = (state: EventsState) => state.loading;\r\nexport const getEventsLoaded = (state: EventsState) => state.loaded;\r\nexport const getEventSaved = (state: EventsState) => state.saved;\r\nexport const getEventSaving = (state: EventsState) => state.saving;\r\nexport const getEventsPage = (state: EventsState) => state.page;\r\n","import * as fromEvent from './events.reducer';\r\nimport { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nexport const featureKey = 'Events';\r\n\r\nexport interface EventState {\r\n events: fromEvent.EventsState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n events: fromEvent.EventReducer,\r\n};\r\n\r\nexport const getEventsState = createFeatureSelector(featureKey);\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","export * from './opinions.selector';\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromEvent from '../reducers/events.reducer';\r\nimport * as fromRoot from '../../../store';\r\nimport * as fromAuth from '../../../auth/store';\r\nimport { Event } from '../../models';\r\n\r\nexport const getEventState = createSelector(fromFeature.getEventsState, (state: fromFeature.EventState) => state.events);\r\n\r\nexport const getEventsEntities = createSelector(getEventState, fromEvent.getEventsEntities);\r\n\r\nexport const getAllEvents = createSelector(getEventsEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getMyEvents = createSelector(getAllEvents, fromAuth.getAuthUser, (events, usr) => {\r\n return events?.filter(a => a.createdById === usr?.id);\r\n});\r\n\r\nexport const getEventsLoaded = createSelector(getEventState, fromEvent.getEventsLoaded);\r\nexport const getEventsLoading = createSelector(getEventState, fromEvent.getEventsLoading);\r\nexport const getEventSaved = createSelector(getEventState, fromEvent.getEventSaved);\r\nexport const getEventSaving = createSelector(getEventState, fromEvent.getEventSaving);\r\nexport const getEventsPage = createSelector(getEventState, fromEvent.getEventsPage);\r\n\r\nexport const getOrderedEvents = createSelector(getAllEvents, getEventsPage, (Pages, page) => {\r\n let orderedPages = Pages.sort((a, b) => (new Date(a.startDate) > new Date(b.startDate) ? 1 : -1));\r\n return orderedPages;\r\n});\r\n\r\nexport const getSelectedEvent = createSelector(getEventsEntities, fromRoot.getRouterState, (entities, router): Event => {\r\n return router.state && entities[router.state.params?.['eventId'] || router.state.data?.['id']];\r\n});\r\n\r\nexport const getSelectedEventLoaded = createSelector(getSelectedEvent, (c: Event) => {\r\n return c?.loaded;\r\n});\r\n\r\nexport const getSelectedEventLoading = createSelector(getSelectedEvent, (c: Event) => {\r\n return c?.loading;\r\n});\r\n","import { Component, Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { tap, filter, take, switchMap, catchError, withLatestFrom, map } from 'rxjs/operators';\r\n\r\nimport * as fromStore from '../store';\r\nimport * as fromRoot from '../../store';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class InitiativesOverviewGuard {\r\n constructor(private store: Store) {}\r\n\r\n canDeactivate(\r\n component: Component,\r\n currentRoute: ActivatedRouteSnapshot,\r\n currentState: RouterStateSnapshot,\r\n nextState?: RouterStateSnapshot | undefined\r\n ): boolean | UrlTree | Observable | Promise {\r\n return this.checkDeactivate().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n canActivate(): Observable {\r\n return this.checkStore().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkDeactivate(): Observable {\r\n return this.store.select(fromStore.getInitiativesLoaded).pipe(\r\n tap(loaded => {\r\n if (loaded) {\r\n this.store.dispatch(fromStore.ClearInitiatives());\r\n }\r\n }),\r\n filter(loaded => !loaded),\r\n map(loaded => !loaded),\r\n take(1)\r\n );\r\n }\r\n\r\n checkStore(): Observable {\r\n return this.store.select(fromStore.getInitiativesLoaded).pipe(\r\n withLatestFrom(this.store.select(fromStore.getInitiativesPage), this.store.select(fromRoot.getRouterState)),\r\n tap(([loaded, page, router]) => {\r\n if (!loaded || (+router.state.queryParams['page'] || 0) !== page.current) {\r\n const current = +router.state.queryParams['page'] || 0;\r\n this.store.dispatch(\r\n fromStore.LoadInitiatives({\r\n skip: current * page.size,\r\n take: page.size,\r\n unvoted: page.filters['unvoted'],\r\n personalized: page.filters['personalized'],\r\n })\r\n );\r\n }\r\n }),\r\n filter(([loaded]) => loaded),\r\n map(([loaded]) => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","export * from './initiatives.service';\r\nexport * from './initiative-comments.service';\r\nexport * from './initiative-status-updates.service';\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { InitiativeComment } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class InitiativeCommentsService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getInitiativeComments(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/initiatives/${id}/comments`);\r\n }\r\n\r\n deleteInitiativeComment(id: number, commentId: number) {\r\n return this.http.delete(`${this.BASE_URL}api/initiatives/${id}/comments/${commentId}`);\r\n }\r\n\r\n createInitiativeComment(id: number, comment: string) {\r\n return this.http.post(`${this.BASE_URL}api/initiatives/${id}/comments`, { text: comment });\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { InitiativeStatusUpdate } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class InitiativeStatusUpdatesService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getInitiativeStatusUpdates(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/initiatives/${id}/updates`);\r\n }\r\n\r\n deleteInitiativeStatusUpdate(id: number, updateId: number) {\r\n return this.http.delete(`${this.BASE_URL}api/initiatives/${id}/updates/${updateId}`);\r\n }\r\n\r\n createInitiativeStatusUpdate(id: number, title: string, text: string) {\r\n return this.http.post(`${this.BASE_URL}api/initiatives/${id}/updates`, { title, text });\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Initiative, UpdateInitiativeData } from '../models/initiative.model';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { InitiativeContributor, VoteDirection } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class InitiativesService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getInitiatives(skip: number = 0, take: number = 0, category: number = 0, unvoted: boolean = false, personalized: boolean = false) {\r\n return this.http.get>(\r\n `${this.BASE_URL}api/initiatives?take=${take}&skip=${skip}&category=${category}&unvoted=${unvoted}&personalized=${personalized}`\r\n );\r\n }\r\n\r\n getInitiative(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/initiatives/${id}`);\r\n }\r\n\r\n updateInitiative(id: number, data: UpdateInitiativeData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n formData.append('helpText', data.helpText);\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.put(`${this.BASE_URL}api/initiatives/${id}`, formData);\r\n }\r\n\r\n deleteInitiative(id: number) {\r\n return this.http.delete(`${this.BASE_URL}api/initiatives/${id}`);\r\n }\r\n\r\n closeInitiative(id: number) {\r\n return this.http.post(`${this.BASE_URL}api/initiatives/${id}/close`, null);\r\n }\r\n\r\n castVote(id: number, direction: VoteDirection) {\r\n return this.http.post(`${this.BASE_URL}api/initiatives/${id}/vote`, direction);\r\n }\r\n\r\n createInitiative(data: UpdateInitiativeData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.post(`${this.BASE_URL}api/initiatives`, formData);\r\n }\r\n\r\n createInitiativeFromOpinion(OpinionId: number) {\r\n return this.http.post(`${this.BASE_URL}api/opinions/${OpinionId}/to-initiative`, null);\r\n }\r\n\r\n getInitiativeContributors(initiativeId: number) {\r\n return this.http.get(`${this.BASE_URL}api/initiatives/${initiativeId}/contributors`);\r\n }\r\n\r\n MakeInitiativeContribution(initiativeId: number, motivation: { message: string }) {\r\n return this.http.post(`${this.BASE_URL}api/initiatives/${initiativeId}/contributors`, motivation);\r\n }\r\n}\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { InitiativeComment } from '../../models';\r\n\r\nexport const LoadComments = createAction('[Initiatives] Load Comments for Initiative', props<{ id: number }>());\r\nexport const LoadCommentsSuccess = createAction(\r\n '[Initiatives] Load Comments for Initiative Success',\r\n props<{ comments: InitiativeComment[] }>()\r\n);\r\nexport const LoadCommentsFail = createAction('[Initiatives] Load Comments for Initiative Fail', props<{ error: any }>());\r\n\r\nexport const CreateComment = createAction('[Initiatives] Create Initiative Comment', props<{ id: number; comment: string }>());\r\nexport const CreateCommentSuccess = createAction(\r\n '[Initiatives] Create Initiative Comment Success',\r\n props<{ comment: InitiativeComment }>()\r\n);\r\nexport const CreateCommentFail = createAction('[Initiatives] Create Initiative Comment Fail', props<{ error: any }>());\r\n\r\nexport const DeleteComment = createAction('[Initiatives] Delete Initiative Comment', props<{ id: number; commentId: number }>());\r\nexport const DeleteCommentSuccess = createAction(\r\n '[Initiatives] Delete Initiative Comment Success',\r\n props<{ comment: InitiativeComment }>()\r\n);\r\nexport const DeleteCommentFail = createAction('[Initiatives] Delete Initiative Comment Fail', props<{ error: any }>());\r\n\r\nexport const ClearComments = createAction('[Initiatives] Clear Initiative Comments');\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { Initiative, InitiativeContributor, UpdateInitiativeData, VoteDirection } from '../../models';\r\n\r\nexport const LoadContributors = createAction('[Initiatives] Load Contributors', props<{ initiativeId: number }>());\r\nexport const LoadContributorsSuccess = createAction(\r\n '[Initiatives] Load Contributors Success',\r\n props<{ contributors: InitiativeContributor[]; initiativeId: number }>()\r\n);\r\nexport const LoadContributorsFail = createAction('[Initiatives] Load Contributors Fail', props<{ error: any; initiativeId: number }>());\r\n\r\nexport const AddContribution = createAction('[Initiatives]Add Contribution', props<{ initiativeId: number; motivation: string }>());\r\nexport const AddContributionSuccess = createAction(\r\n '[Initiatives]Add Contribution Success',\r\n props<{ contributor: InitiativeContributor; initiativeId: number }>()\r\n);\r\nexport const AddContributionFail = createAction('[Initiatives]Add Contribution Fail', props<{ error: any; initiativeId: number }>());\r\n","export * from './initiatives.action';\r\nexport * from './comments.action';\r\nexport * from './contributors.action';\r\nexport * from './status-updates.action';\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { Initiative, UpdateInitiativeData, VoteDirection } from '../../models';\r\n\r\nexport const LoadInitiative = createAction('[Initiatives] Load Initiative', props<{ id: number }>());\r\nexport const LoadInitiativeSuccess = createAction('[Initiatives] Load Initiative Success', props<{ initiative: Initiative }>());\r\nexport const LoadInitiativeFail = createAction('[Initiatives] Load Initiative Fail', props<{ error: any }>());\r\n\r\nexport const LoadInitiatives = createAction(\r\n '[Initiatives] Load Initiatives',\r\n props<{ take?: number; skip?: number; category?: number; unvoted?: boolean; personalized?: boolean }>()\r\n);\r\nexport const LoadInitiativesSuccess = createAction(\r\n '[Initiatives] Load Initiatives Success',\r\n props<{ initiatives: PagedOverview }>()\r\n);\r\nexport const LoadInitiativesFail = createAction('[Initiatives] Load Initiatives Fail', props<{ error: any }>());\r\n\r\nexport const LoadMoreInitiatives = createAction('[Initiatives] Load MORE Initiatives');\r\nexport const LoadMoreInitiativesSuccess = createAction(\r\n '[Initiatives] Load MORE Initiatives Success',\r\n props<{ initiatives: PagedOverview }>()\r\n);\r\n\r\nexport const UpdateInitiative = createAction(\r\n '[Initiatives] Update Initiative',\r\n props<{ id: number; initiativeData: UpdateInitiativeData }>()\r\n);\r\nexport const UpdateInitiativeSuccess = createAction('[Initiatives] Update Initiative Success', props<{ initiative: Initiative }>());\r\nexport const UpdateInitiativeFail = createAction('[Initiatives] Update Initiative Fail', props<{ error: any }>());\r\n\r\nexport const CreateInitiative = createAction('[Initiatives] Create Initiative', props<{ initiativeData: UpdateInitiativeData }>());\r\nexport const CreateInitiativeSuccess = createAction('[Initiatives] Create Initiative Success', props<{ initiative: Initiative }>());\r\nexport const CreateInitiativeFail = createAction('[Initiatives] Create Initiative Fail', props<{ error: any }>());\r\n\r\nexport const DeleteInitiative = createAction('[Initiatives] Delete Initiative', props<{ id: number }>());\r\nexport const DeleteInitiativeSuccess = createAction('[Initiatives] Delete Initiative Success', props<{ initiative: Initiative }>());\r\nexport const DeleteInitiativeFail = createAction('[Initiatives] Delete Initiative Fail', props<{ error: any }>());\r\n\r\nexport const CloseInitiative = createAction('[Initiatives] Close Initiative', props<{ id: number }>());\r\nexport const CloseInitiativeSuccess = createAction('[Initiatives] Close Initiative Success', props<{ initiative: Initiative }>());\r\nexport const CloseInitiativeFail = createAction('[Initiatives] Close Initiative Fail', props<{ error: any }>());\r\n\r\nexport const ClearInitiatives = createAction('[Initiatives] Clear Initiatives');\r\n\r\nexport const CastVote = createAction('[Initiatives] Cast Vote', props<{ id: number; direction: VoteDirection }>());\r\nexport const CastVoteSuccess = createAction('[Initiatives] Cast Vote Success', props<{ initiative: Initiative }>());\r\nexport const CastVoteFail = createAction('[Initiatives] Cast Vote Fail', props<{ error: any }>());\r\n\r\nexport const CreateInitiativeFromOpinion = createAction('[Initiatives] Create Initiative From Opinion', props<{ opinionId: number }>());\r\nexport const CreateInitiativeFromOpinionSuccess = createAction(\r\n '[Initiatives] Create Initiative From Opinion Success',\r\n props<{ initiative: Initiative }>()\r\n);\r\nexport const CreateInitiativeFromOpinionFail = createAction('[Initiatives] Create Initiative From Opinion Fail', props<{ error: any }>());\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { InitiativeStatusUpdate } from '../../models';\r\n\r\nexport const LoadStatusUpdates = createAction('[Initiatives] Load Status Updates for Initiative', props<{ id: number }>());\r\nexport const LoadStatusUpdatesSuccess = createAction(\r\n '[Initiatives] Load Status Updates for Initiative Success',\r\n props<{ StatusUpdates: InitiativeStatusUpdate[] }>()\r\n);\r\nexport const LoadStatusUpdatesFail = createAction('[Initiatives] Load Status Updates for Initiative Fail', props<{ error: any }>());\r\n\r\nexport const CreateStatusUpdate = createAction(\r\n '[Initiatives] Create Initiative Status Update',\r\n props<{ id: number; title: string; text: string }>()\r\n);\r\nexport const CreateStatusUpdateSuccess = createAction(\r\n '[Initiatives] Create Initiative Status Update Success',\r\n props<{ StatusUpdate: InitiativeStatusUpdate }>()\r\n);\r\nexport const CreateStatusUpdateFail = createAction('[Initiatives] Create Initiative Status Update Fail', props<{ error: any }>());\r\n\r\nexport const DeleteStatusUpdate = createAction(\r\n '[Initiatives] Delete Initiative Status Update',\r\n props<{ id: number; StatusUpdateId: number }>()\r\n);\r\nexport const DeleteStatusUpdateSuccess = createAction(\r\n '[Initiatives] Delete Initiative Status Update Success',\r\n props<{ StatusUpdate: InitiativeStatusUpdate }>()\r\n);\r\nexport const DeleteStatusUpdateFail = createAction('[Initiatives] Delete Initiative Status Update Fail', props<{ error: any }>());\r\n\r\nexport const ClearStatusUpdates = createAction('[Initiatives] Clear Initiative Status Updates');\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/comments.action';\r\nimport { switchMap, map, catchError, tap } from 'rxjs/operators';\r\nimport { InitiativeCommentsService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go } from '../../../store';\r\n\r\n@Injectable()\r\nexport class InitiativeCommentsEffects {\r\n constructor(private actions$: Actions, private service: InitiativeCommentsService, private router: Router, private sb: MatSnackBar) {}\r\n\r\n LoadComments$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadComments),\r\n switchMap(({ id }) =>\r\n this.service.getInitiativeComments(id).pipe(\r\n map(comments => actions.LoadCommentsSuccess({ comments })),\r\n catchError(error => of(actions.LoadCommentsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateComment$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateComment),\r\n switchMap(({ id, comment }) =>\r\n this.service.createInitiativeComment(id, comment).pipe(\r\n map(comment => actions.CreateCommentSuccess({ comment })),\r\n catchError(error => of(actions.CreateCommentFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteComment$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteComment),\r\n switchMap(({ id, commentId }) =>\r\n this.service.deleteInitiativeComment(id, commentId).pipe(\r\n map(comment => actions.DeleteCommentSuccess({ comment })),\r\n catchError(error => of(actions.DeleteCommentFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n createCommentSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateCommentSuccess),\r\n tap(({}) => {\r\n this.sb.open('Reactie aangemaakt!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n deleteInitiativeCommentSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteCommentSuccess),\r\n tap(({}) => {\r\n this.sb.open('Reactie verwijderd!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/contributors.action';\r\nimport { switchMap, map, catchError, tap, withLatestFrom } from 'rxjs/operators';\r\nimport { InitiativesService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go } from '../../../store';\r\nimport { Store } from '@ngrx/store';\r\nimport { getInitiativesPage } from '../selectors';\r\n\r\n@Injectable()\r\nexport class ContributorsEffects {\r\n constructor(private actions$: Actions, private service: InitiativesService, private sb: MatSnackBar) {}\r\n\r\n LoadContributors$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadContributors),\r\n switchMap(({ initiativeId }) =>\r\n this.service.getInitiativeContributors(initiativeId).pipe(\r\n map(contributors => actions.LoadContributorsSuccess({ contributors, initiativeId })),\r\n catchError(error => of(actions.LoadContributorsFail({ error, initiativeId })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n AddContributor$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.AddContribution),\r\n switchMap(({ initiativeId, motivation }) =>\r\n this.service.MakeInitiativeContribution(initiativeId, { message: motivation }).pipe(\r\n map(contributor => actions.AddContributionSuccess({ contributor, initiativeId })),\r\n catchError(error => of(actions.AddContributionFail({ error, initiativeId })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n AddContributorSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.AddContributionSuccess),\r\n tap(({}) => {\r\n this.sb.open('Je bijdrage is verstuurd!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","import { InitiativeCommentsEffects } from './comments.effect';\r\nimport { ContributorsEffects } from './contributors.effect';\r\nimport { InitiativesEffects } from './initiatives.effect';\r\nimport { StatusUpdatesEffects } from './status-updates.effect';\r\n\r\nexport * from './comments.effect';\r\nexport * from './initiatives.effect';\r\nexport * from './contributors.effect';\r\nexport * from './status-updates.effect';\r\n\r\nexport const effects = [InitiativesEffects, InitiativeCommentsEffects, ContributorsEffects, StatusUpdatesEffects];\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/initiatives.action';\r\nimport { switchMap, map, catchError, tap, withLatestFrom, filter } from 'rxjs/operators';\r\nimport { InitiativesService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go, getRouterState } from '../../../store';\r\nimport { Store } from '@ngrx/store';\r\nimport { getInitiativesPage } from '../selectors';\r\nimport { getAuthSignedIn } from 'src/app/auth/store';\r\n\r\n@Injectable()\r\nexport class InitiativesEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private service: InitiativesService,\r\n private router: Router,\r\n private sb: MatSnackBar,\r\n private store: Store\r\n ) {}\r\n\r\n LoadInitiative$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadInitiative),\r\n switchMap(({ id }) =>\r\n this.service.getInitiative(id).pipe(\r\n map(initiative => actions.LoadInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.LoadInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadInitiatives$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadInitiatives),\r\n switchMap(({ skip, take, category, unvoted, personalized }) =>\r\n this.service.getInitiatives(skip, take, category, unvoted, personalized).pipe(\r\n map(initiatives => actions.LoadInitiativesSuccess({ initiatives })),\r\n catchError(error => of(actions.LoadInitiativesFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadMoreInitiatives$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadMoreInitiatives),\r\n withLatestFrom(this.store.select(getInitiativesPage)),\r\n switchMap(([{}, pagedata]) =>\r\n this.service\r\n .getInitiatives(\r\n (pagedata.current + 1) * pagedata.size,\r\n pagedata.size,\r\n undefined,\r\n pagedata.filters?.['unvoted'],\r\n pagedata.filters?.['personalized']\r\n )\r\n .pipe(\r\n map(initiatives => actions.LoadMoreInitiativesSuccess({ initiatives })),\r\n catchError(error => of(actions.LoadInitiativesFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateInitiative$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateInitiative),\r\n switchMap(({ initiativeData }) =>\r\n this.service.createInitiative(initiativeData).pipe(\r\n map(initiative => actions.CreateInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.CreateInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n UpdateInitiative$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateInitiative),\r\n switchMap(({ id, initiativeData }) =>\r\n this.service.updateInitiative(id, initiativeData).pipe(\r\n map(initiative => actions.UpdateInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.UpdateInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteInitiative$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteInitiative),\r\n switchMap(({ id }) =>\r\n this.service.deleteInitiative(id).pipe(\r\n map(initiative => actions.DeleteInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.DeleteInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CloseInitiative$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CloseInitiative),\r\n switchMap(({ id }) =>\r\n this.service.closeInitiative(id).pipe(\r\n map(initiative => actions.CloseInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.CloseInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CastVote$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVote),\r\n withLatestFrom(this.store.select(getAuthSignedIn)),\r\n filter(([{}, signedIn]) => signedIn),\r\n switchMap(([{ id, direction }, signedIn]) =>\r\n this.service.castVote(id, direction).pipe(\r\n map(initiative => actions.CastVoteSuccess({ initiative })),\r\n catchError(error => of(actions.CastVoteFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CastVoteUnauthorized$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVote),\r\n withLatestFrom(this.store.select(getAuthSignedIn), this.store.select(getRouterState)),\r\n filter(([{}, signedIn]) => !signedIn),\r\n map(([{}, signedIn, router]) => Go({ path: ['/account', 'inloggen'], queryParams: { returnUrl: router.state.url } }))\r\n );\r\n });\r\n\r\n updateInitiativeSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateInitiativeSuccess),\r\n tap(({ initiative }) => {\r\n this.sb.open('Initiatief geüpdatet!', '');\r\n }),\r\n map(({ initiative }) => Go({ path: initiative.url }))\r\n );\r\n });\r\n\r\n createInitiativeSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateInitiativeSuccess),\r\n tap(({ initiative }) => {\r\n this.sb.open('Initiatief aangemaakt!', '');\r\n }),\r\n map(({ initiative }) => Go({ path: initiative.url }))\r\n );\r\n });\r\n\r\n deleteInitiativeSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteInitiativeSuccess),\r\n tap(({ initiative }) => {\r\n this.sb.open('Initiatief verwijderd!', '');\r\n }),\r\n map(({ initiative }) => Go({ path: ['/', 'initiatieven'] }))\r\n );\r\n });\r\n\r\n closeInitiativeSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CloseInitiativeSuccess),\r\n tap(({ initiative }) => {\r\n this.sb.open('Initiatief gesloten!', '');\r\n }),\r\n map(({ initiative }) => Go({ path: initiative.url }))\r\n );\r\n });\r\n\r\n castVoteSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVoteSuccess),\r\n tap(({ initiative }) => {\r\n this.sb.open('Jouw stem is uitgebracht!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n CreateInitiativeFromOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateInitiativeFromOpinion),\r\n switchMap(({ opinionId }) =>\r\n this.service.createInitiativeFromOpinion(opinionId).pipe(\r\n map(initiative => actions.CreateInitiativeSuccess({ initiative })),\r\n catchError(error => of(actions.CreateInitiativeFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/status-updates.action';\r\nimport { switchMap, map, catchError, tap } from 'rxjs/operators';\r\nimport { InitiativeStatusUpdatesService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go } from '../../../store';\r\n\r\n@Injectable()\r\nexport class StatusUpdatesEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private service: InitiativeStatusUpdatesService,\r\n private router: Router,\r\n private sb: MatSnackBar\r\n ) {}\r\n\r\n LoadStatusUpdates$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadStatusUpdates),\r\n switchMap(({ id }) =>\r\n this.service.getInitiativeStatusUpdates(id).pipe(\r\n map(StatusUpdates => actions.LoadStatusUpdatesSuccess({ StatusUpdates })),\r\n catchError(error => of(actions.LoadStatusUpdatesFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateStatusUpdate$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateStatusUpdate),\r\n switchMap(({ id, title, text }) =>\r\n this.service.createInitiativeStatusUpdate(id, title, text).pipe(\r\n map(StatusUpdate => actions.CreateStatusUpdateSuccess({ StatusUpdate })),\r\n catchError(error => of(actions.CreateStatusUpdateFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteStatusUpdate$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteStatusUpdate),\r\n switchMap(({ id, StatusUpdateId }) =>\r\n this.service.deleteInitiativeStatusUpdate(id, StatusUpdateId).pipe(\r\n map(StatusUpdate => actions.DeleteStatusUpdateSuccess({ StatusUpdate })),\r\n catchError(error => of(actions.DeleteStatusUpdateFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n createStatusUpdateSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateStatusUpdateSuccess),\r\n tap(({}) => {\r\n this.sb.open('Statusupdate aangemaakt!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n deleteInitiativeStatuspdateSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteStatusUpdateSuccess),\r\n tap(({}) => {\r\n this.sb.open('Statusupdate verwijderd!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","export * from './reducers';\r\nexport * from './effects';\r\nexport * from './actions';\r\nexport * from './selectors';\r\n\r\nexport function getSelectedOpinion(getSelectedOpinion: any): import('rxjs').ObservableInput {\r\n throw new Error('Function not implemented.');\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as utility from '../../../utility';\r\nimport * as CommentActions from '../actions/comments.action';\r\nimport { PageData } from 'src/app/core/models';\r\nimport { InitiativeComment } from '../../models';\r\n\r\nexport interface CommentsState {\r\n entities: { [id: number]: InitiativeComment };\r\n loadingFor?: number;\r\n loadedFor?: number;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: CommentsState = {\r\n entities: {},\r\n loadedFor: undefined,\r\n loadingFor: undefined,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const CommentReducer = createReducer(\r\n initialState,\r\n on(CommentActions.LoadComments, (state: CommentsState, { id }) => {\r\n return {\r\n ...state,\r\n loadingFor: +id,\r\n };\r\n }),\r\n on(CommentActions.LoadCommentsSuccess, (state: CommentsState, { comments }) => {\r\n const entities = utility.ToEntities(comments, 'id', {});\r\n\r\n return {\r\n ...state,\r\n entities,\r\n loadingFor: undefined,\r\n loadedFor: state.loadingFor,\r\n };\r\n }),\r\n on(CommentActions.LoadCommentsFail, (state: CommentsState, { error }) => {\r\n return {\r\n ...state,\r\n loadingFor: undefined,\r\n loadedFor: undefined,\r\n error,\r\n };\r\n }),\r\n on(CommentActions.CreateComment, (state: CommentsState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }),\r\n on(CommentActions.CreateCommentSuccess, (state: CommentsState, { comment }) => {\r\n const entities = {\r\n ...state.entities,\r\n [comment.id]: comment,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(CommentActions.DeleteCommentSuccess, (state: CommentsState, { comment }) => {\r\n const { [comment.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(CommentActions.ClearComments, (state: CommentsState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getCommentsEntities = (state: CommentsState) => state.entities;\r\nexport const getCommentsLoadingFor = (state: CommentsState) => state.loadingFor;\r\nexport const getCommentsLoadedFor = (state: CommentsState) => state.loadedFor;\r\nexport const getCommentSaved = (state: CommentsState) => state.saved;\r\nexport const getCommentSaving = (state: CommentsState) => state.saving;\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { InitiativeContributor } from '../../models';\r\nimport * as utility from '../../../utility';\r\nimport * as ContributorActions from '../actions/contributors.action';\r\nimport { PageData } from 'src/app/core/models';\r\n\r\nexport interface ContributorsState {\r\n entities: { [id: number]: InitiativeContributor[] };\r\n loading: number[];\r\n loaded: number[];\r\n contributed: number[];\r\n error?: any;\r\n}\r\n\r\nexport const initialState: ContributorsState = {\r\n entities: {},\r\n loaded: [],\r\n loading: [],\r\n contributed: [],\r\n};\r\n\r\nexport const ContributorReducer = createReducer(\r\n initialState,\r\n on(ContributorActions.LoadContributors, (state: ContributorsState, { initiativeId }) => {\r\n return {\r\n ...state,\r\n loading: [...state.loading, initiativeId],\r\n };\r\n }),\r\n on(ContributorActions.LoadContributorsSuccess, (state: ContributorsState, { contributors, initiativeId }) => {\r\n const entities = {\r\n ...state.entities,\r\n [initiativeId]: [...contributors],\r\n };\r\n\r\n return {\r\n ...state,\r\n entities,\r\n loading: [...state.loading.filter(a => a !== initiativeId)],\r\n loaded: [...state.loaded, initiativeId],\r\n };\r\n }),\r\n on(ContributorActions.LoadContributorsFail, (state: ContributorsState, { error, initiativeId }) => {\r\n return {\r\n ...state,\r\n loading: [...state.loading.filter(a => a !== initiativeId)],\r\n loaded: [...state.loaded],\r\n error,\r\n };\r\n }),\r\n on(ContributorActions.AddContributionSuccess, (state: ContributorsState, { initiativeId, contributor }) => {\r\n const entities = {\r\n ...state.entities,\r\n [initiativeId]: [...state.entities[initiativeId], contributor],\r\n };\r\n\r\n return {\r\n ...state,\r\n entities,\r\n contributed: [...state.contributed, initiativeId],\r\n };\r\n })\r\n);\r\n\r\nexport const getContributorsEntities = (state: ContributorsState) => state.entities;\r\nexport const getContributorsLoading = (state: ContributorsState) => state.loading;\r\nexport const getContributorsLoaded = (state: ContributorsState) => state.loaded;\r\nexport const getContributorsContributed = (state: ContributorsState) => state.contributed;\r\n","import * as fromInitiative from './initiatives.reducer';\r\nimport * as fromComments from './comments.reducer';\r\nimport * as fromContributors from './contributors.reducer';\r\nimport * as fromUpdates from './status-updates.reducer';\r\nimport { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nexport const featureKey = 'Initiatives';\r\n\r\nexport interface InitiativeState {\r\n initiatives: fromInitiative.InitiativesState;\r\n comments: fromComments.CommentsState;\r\n contributors: fromContributors.ContributorsState;\r\n statusUpdates: fromUpdates.InitiativeStatusUpdatesState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n initiatives: fromInitiative.InitiativeReducer,\r\n comments: fromComments.CommentReducer,\r\n contributors: fromContributors.ContributorReducer,\r\n statusUpdates: fromUpdates.InitiativeStatusUpdatesReducer,\r\n};\r\n\r\nexport const getInitiativesState = createFeatureSelector(featureKey);\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { Initiative } from '../../models';\r\nimport * as utility from '../../../utility';\r\nimport * as InitiativeActions from '../actions/initiatives.action';\r\nimport { PageData } from 'src/app/core/models';\r\n\r\nexport interface InitiativesState {\r\n entities: { [id: number]: Initiative };\r\n page: PageData;\r\n loading: boolean;\r\n loaded: boolean;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: InitiativesState = {\r\n entities: {},\r\n page: { current: 0, pageCount: 0, resultCount: 0, size: 12, filters: { unvoted: false } },\r\n loaded: false,\r\n loading: false,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const InitiativeReducer = createReducer(\r\n initialState,\r\n on(InitiativeActions.LoadInitiatives, InitiativeActions.LoadMoreInitiatives, (state: InitiativesState) => {\r\n return {\r\n ...state,\r\n loading: true,\r\n mineLoaded: false,\r\n };\r\n }),\r\n on(InitiativeActions.LoadInitiativesSuccess, InitiativeActions.LoadMoreInitiativesSuccess, (state: InitiativesState, { initiatives }) => {\r\n const entities = utility.ToEntities(initiatives.items, 'id', state.entities);\r\n\r\n return {\r\n ...state,\r\n entities,\r\n page: initiatives.page,\r\n loading: false,\r\n loaded: true,\r\n mineLoaded: true,\r\n };\r\n }),\r\n on(InitiativeActions.LoadInitiativesFail, (state: InitiativesState, { error }) => {\r\n return {\r\n ...state,\r\n loading: false,\r\n loaded: false,\r\n mineLoaded: false,\r\n error,\r\n };\r\n }),\r\n on(InitiativeActions.LoadInitiative, (state: InitiativesState, { id }) => {\r\n const entity: Initiative = {\r\n ...state.entities[id],\r\n loading: true,\r\n loaded: false,\r\n };\r\n\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [id]: entity,\r\n },\r\n };\r\n }),\r\n // on(InitiativeActions.CastVote, (state: InitiativesState, { direction, id }) => {\r\n // const entities = {\r\n // ...state.entities,\r\n // [id]: {\r\n // ...state.entities[id],\r\n // votes: {\r\n // ...state.entities[id].votes,\r\n // mine: direction,\r\n // },\r\n // },\r\n // };\r\n // return {\r\n // ...state,\r\n // entities,\r\n // };\r\n // }),\r\n on(InitiativeActions.LoadInitiativeSuccess, InitiativeActions.CastVoteSuccess, (state: InitiativesState, { initiative }) => {\r\n // console.log('castvvotesucces', initiative);\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [initiative.id]: initiative,\r\n // [initiative.id]: {\r\n // ...initiative,\r\n // votes: {\r\n // ...state.entities[initiative.id].votes,\r\n // mine: direction,\r\n // }\r\n // },\r\n },\r\n };\r\n }),\r\n on(\r\n InitiativeActions.CreateInitiative,\r\n InitiativeActions.UpdateInitiative,\r\n InitiativeActions.CloseInitiative,\r\n (state: InitiativesState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }\r\n ),\r\n on(\r\n InitiativeActions.CreateInitiativeSuccess,\r\n InitiativeActions.UpdateInitiativeSuccess,\r\n InitiativeActions.CloseInitiativeSuccess,\r\n (state: InitiativesState, { initiative }) => {\r\n const entities = {\r\n ...state.entities,\r\n [initiative.id]: initiative,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }\r\n ),\r\n on(InitiativeActions.DeleteInitiativeSuccess, (state: InitiativesState, { initiative }) => {\r\n const { [initiative.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(InitiativeActions.ClearInitiatives, (state: InitiativesState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getInitiativesEntities = (state: InitiativesState) => state.entities;\r\nexport const getInitiativesLoading = (state: InitiativesState) => state.loading;\r\nexport const getInitiativesLoaded = (state: InitiativesState) => state.loaded;\r\nexport const getInitiativeSaved = (state: InitiativesState) => state.saved;\r\nexport const getInitiativeSaving = (state: InitiativesState) => state.saving;\r\nexport const getInitiativesPage = (state: InitiativesState) => state.page;\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as utility from '../../../utility';\r\nimport * as actions from '../actions/status-updates.action';\r\nimport { PageData } from 'src/app/core/models';\r\nimport { InitiativeStatusUpdate } from '../../models';\r\n\r\nexport interface InitiativeStatusUpdatesState {\r\n entities: { [id: number]: InitiativeStatusUpdate };\r\n loadingFor?: number;\r\n loadedFor?: number;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: InitiativeStatusUpdatesState = {\r\n entities: {},\r\n loadedFor: undefined,\r\n loadingFor: undefined,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const InitiativeStatusUpdatesReducer = createReducer(\r\n initialState,\r\n on(actions.LoadStatusUpdates, (state: InitiativeStatusUpdatesState, { id }) => {\r\n return {\r\n ...state,\r\n loadingFor: +id,\r\n };\r\n }),\r\n on(actions.LoadStatusUpdatesSuccess, (state: InitiativeStatusUpdatesState, { StatusUpdates }) => {\r\n const entities = utility.ToEntities(StatusUpdates, 'id', {});\r\n\r\n return {\r\n ...state,\r\n entities,\r\n loadingFor: undefined,\r\n loadedFor: state.loadingFor,\r\n };\r\n }),\r\n on(actions.LoadStatusUpdatesFail, (state: InitiativeStatusUpdatesState, { error }) => {\r\n return {\r\n ...state,\r\n loadingFor: undefined,\r\n loadedFor: undefined,\r\n error,\r\n };\r\n }),\r\n on(actions.CreateStatusUpdate, (state: InitiativeStatusUpdatesState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }),\r\n on(actions.CreateStatusUpdateSuccess, (state: InitiativeStatusUpdatesState, { StatusUpdate }) => {\r\n const entities = {\r\n ...state.entities,\r\n [StatusUpdate.id]: StatusUpdate,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(actions.DeleteStatusUpdateSuccess, (state: InitiativeStatusUpdatesState, { StatusUpdate }) => {\r\n const { [StatusUpdate.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(actions.ClearStatusUpdates, (state: InitiativeStatusUpdatesState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getInitiativeStatusUpdatesEntities = (state: InitiativeStatusUpdatesState) => state.entities;\r\nexport const getInitiativeStatusUpdatesLoadingFor = (state: InitiativeStatusUpdatesState) => state.loadingFor;\r\nexport const getInitiativeStatusUpdatesLoadedFor = (state: InitiativeStatusUpdatesState) => state.loadedFor;\r\nexport const getInitiativeStatusUpdatesaved = (state: InitiativeStatusUpdatesState) => state.saved;\r\nexport const getInitiativeStatusUpdatesaving = (state: InitiativeStatusUpdatesState) => state.saving;\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromComments from '../reducers/comments.reducer';\r\nimport * as fromInitiatives from '../selectors/initiatives.selector';\r\nimport { Initiative } from '../../models';\r\n\r\nexport const GetCommentstate = createSelector(fromFeature.getInitiativesState, (state: fromFeature.InitiativeState) => state.comments);\r\n\r\nexport const GetCommentsEntities = createSelector(GetCommentstate, fromComments.getCommentsEntities);\r\n\r\nexport const getAllComments = createSelector(GetCommentsEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getOrderedComments = createSelector(getAllComments, comments => {\r\n return comments.sort((a, b) => new Date(b.createdOn).getTime() - new Date(a.createdOn).getTime());\r\n});\r\n\r\nexport const GetCommentsLoadedFor = createSelector(GetCommentstate, fromComments.getCommentsLoadedFor);\r\nexport const GetCommentsLoadingFor = createSelector(GetCommentstate, fromComments.getCommentsLoadingFor);\r\nexport const GetCommentsaved = createSelector(GetCommentstate, fromComments.getCommentSaved);\r\nexport const GetCommentsaving = createSelector(GetCommentstate, fromComments.getCommentSaving);\r\n\r\nexport const getSelectedInitiativeCommentsLoaded = createSelector(\r\n GetCommentsLoadedFor,\r\n fromInitiatives.getSelectedInitiative,\r\n (loadedFor: number | undefined, o: Initiative) => {\r\n return o?.id === loadedFor;\r\n }\r\n);\r\n\r\nexport const getSelectedInitiativeCommentsLoading = createSelector(\r\n GetCommentsLoadingFor,\r\n fromInitiatives.getSelectedInitiative,\r\n (loadingFor: number | undefined, o: Initiative) => {\r\n return o?.id === loadingFor;\r\n }\r\n);\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromContributors from '../reducers/contributors.reducer';\r\nimport * as fromRoot from '../../../store';\r\nimport * as fromAuth from '../../../auth/store';\r\nimport { InitiativeContributor } from '../../models';\r\n\r\nexport const getContributorState = createSelector(\r\n fromFeature.getInitiativesState,\r\n (state: fromFeature.InitiativeState) => state.contributors\r\n);\r\n\r\nexport const getContributorsEntities = createSelector(getContributorState, fromContributors.getContributorsEntities);\r\nexport const getContributorsLoaded = createSelector(getContributorState, fromContributors.getContributorsLoaded);\r\nexport const getContributorsLoading = createSelector(getContributorState, fromContributors.getContributorsLoading);\r\nexport const getContributorsContributed = createSelector(getContributorState, fromContributors.getContributorsContributed);\r\n\r\nexport const getSelectedContributors = createSelector(\r\n getContributorsEntities,\r\n fromRoot.getRouterState,\r\n (entities, router): InitiativeContributor[] => {\r\n return (\r\n router.state &&\r\n entities[router.state.params?.['initiativeId'] || router.state.data?.['id']]?.sort((a, b) =>\r\n new Date(b.createdOn) > new Date(a.createdOn) ? 1 : -1\r\n )\r\n );\r\n }\r\n);\r\n\r\nexport const getSelectedContributorLoaded = createSelector(getContributorsLoaded, fromRoot.getRouterState, (loaded, router) => {\r\n const id = router.state && router.state.params?.['initiativeId'];\r\n if (!id) {\r\n return false;\r\n }\r\n return loaded.indexOf(+id) >= 0;\r\n});\r\n\r\nexport const getSelectedContributorLoading = createSelector(getContributorsLoading, fromRoot.getRouterState, (loaded, router) => {\r\n const id = router.state && router.state.params?.['initiativeId'];\r\n if (!id) {\r\n return false;\r\n }\r\n return loaded.indexOf(+id) >= 0;\r\n});\r\n\r\nexport const getSelectedContributorContributed = createSelector(\r\n getContributorsContributed,\r\n fromRoot.getRouterState,\r\n (contributed, router) => {\r\n const id = router.state && router.state.params?.['initiativeId'];\r\n if (!id) {\r\n return false;\r\n }\r\n return contributed.indexOf(+id) >= 0;\r\n }\r\n);\r\n","export * from './initiatives.selector';\r\nexport * from './comments.selector';\r\nexport * from './contributors.selector';\r\nexport * from './status-updates.selector';\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromInitiative from '../reducers/initiatives.reducer';\r\nimport * as fromRoot from '../../../store';\r\nimport * as fromAuth from '../../../auth/store';\r\nimport { Initiative } from '../../models';\r\n\r\nexport const getInitiativeState = createSelector(\r\n fromFeature.getInitiativesState,\r\n (state: fromFeature.InitiativeState) => state.initiatives\r\n);\r\n\r\nexport const getInitiativesEntities = createSelector(getInitiativeState, fromInitiative.getInitiativesEntities);\r\n\r\nexport const getAllInitiatives = createSelector(getInitiativesEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getInitiativesLoaded = createSelector(getInitiativeState, fromInitiative.getInitiativesLoaded);\r\nexport const getInitiativesLoading = createSelector(getInitiativeState, fromInitiative.getInitiativesLoading);\r\nexport const getInitiativeSaved = createSelector(getInitiativeState, fromInitiative.getInitiativeSaved);\r\nexport const getInitiativeSaving = createSelector(getInitiativeState, fromInitiative.getInitiativeSaving);\r\nexport const getInitiativesPage = createSelector(getInitiativeState, fromInitiative.getInitiativesPage);\r\n\r\nexport const getOrderedInitiatives = createSelector(getAllInitiatives, getInitiativesPage, (initiatives, page) => {\r\n let orderedInitiatives = initiatives.sort((a, b) => (new Date(b.createdOn) > new Date(a.createdOn) ? 1 : -1));\r\n if (page.filters['personalized']) {\r\n orderedInitiatives = initiatives.sort((a, b) => (b.score > a.score ? 1 : -1));\r\n }\r\n return orderedInitiatives;\r\n});\r\n\r\nexport const getMyInitiatives = createSelector(getAllInitiatives, fromAuth.getAuthUser, (initiatives, usr) => {\r\n return initiatives?.filter(a => a.createdById === usr?.id);\r\n});\r\n\r\nexport const getUnvotedInitiatives = createSelector(getAllInitiatives, fromAuth.getAuthUser, (initiatives, usr) => {\r\n return initiatives?.filter(a => !a.votes.mine);\r\n});\r\n\r\nexport const getSelectedInitiative = createSelector(getInitiativesEntities, fromRoot.getRouterState, (entities, router): Initiative => {\r\n return router.state && entities[router.state.params?.['initiativeId'] || router.state.data?.['id']];\r\n});\r\n\r\nexport const getSelectedInitiativeLoaded = createSelector(getSelectedInitiative, (c: Initiative) => {\r\n return c?.loaded;\r\n});\r\n\r\nexport const getSelectedInitiativeLoading = createSelector(getSelectedInitiative, (c: Initiative) => {\r\n return c?.loading;\r\n});\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromStatusUpdates from '../reducers/status-updates.reducer';\r\nimport * as fromInitiatives from './initiatives.selector';\r\nimport { Initiative } from '../../models';\r\n\r\nexport const GetStatusUpdatestate = createSelector(\r\n fromFeature.getInitiativesState,\r\n (state: fromFeature.InitiativeState) => state.statusUpdates\r\n);\r\n\r\nexport const GetStatusUpdatesEntities = createSelector(GetStatusUpdatestate, fromStatusUpdates.getInitiativeStatusUpdatesEntities);\r\n\r\nexport const getAllStatusUpdates = createSelector(GetStatusUpdatesEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getOrderedStatusUpdates = createSelector(getAllStatusUpdates, StatusUpdates => {\r\n return StatusUpdates.sort((a, b) => new Date(b.createdOn).getTime() - new Date(a.createdOn).getTime());\r\n});\r\n\r\nexport const GetStatusUpdatesLoadedFor = createSelector(GetStatusUpdatestate, fromStatusUpdates.getInitiativeStatusUpdatesLoadedFor);\r\nexport const GetStatusUpdatesLoadingFor = createSelector(GetStatusUpdatestate, fromStatusUpdates.getInitiativeStatusUpdatesLoadingFor);\r\nexport const GetStatusUpdatesSaved = createSelector(GetStatusUpdatestate, fromStatusUpdates.getInitiativeStatusUpdatesaved);\r\nexport const GetStatusUpdatesSaving = createSelector(GetStatusUpdatestate, fromStatusUpdates.getInitiativeStatusUpdatesaving);\r\n\r\nexport const getSelectedInitiativeStatusUpdatesLoaded = createSelector(\r\n GetStatusUpdatesLoadedFor,\r\n fromInitiatives.getSelectedInitiative,\r\n (loadedFor: number | undefined, o: Initiative) => {\r\n return o?.id === loadedFor;\r\n }\r\n);\r\n\r\nexport const getSelectedInitiativeStatusUpdatesLoading = createSelector(\r\n GetStatusUpdatesLoadingFor,\r\n fromInitiatives.getSelectedInitiative,\r\n (loadingFor: number | undefined, o: Initiative) => {\r\n return o?.id === loadingFor;\r\n }\r\n);\r\n","/**\r\n * @license\r\n * Copyright Google Inc. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://angular.io/license\r\n */\r\n\r\n// THIS CODE IS GENERATED - DO NOT MODIFY\r\n// See angular/tools/gulp-tasks/cldr/extract.js\r\n\r\nconst u = undefined;\r\n\r\nfunction plural(n: number): number {\r\n let i = Math.floor(Math.abs(n)), v = n.toString().replace(/^[^.]*\\.?/, '').length;\r\n if (i === 1 && v === 0) return 1;\r\n return 5;\r\n}\r\n\r\nexport default [\r\n 'nl', [['a.m.', 'p.m.'], u, u], u,\r\n [\r\n ['Z', 'M', 'D', 'W', 'D', 'V', 'Z'], ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za'],\r\n ['zondag', 'maandag', 'dinsdag', 'woensdag', 'donderdag', 'vrijdag', 'zaterdag'],\r\n ['zo', 'ma', 'di', 'wo', 'do', 'vr', 'za']\r\n ],\r\n u,\r\n [\r\n ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],\r\n ['jan.', 'feb.', 'mrt.', 'apr.', 'mei', 'jun.', 'jul.', 'aug.', 'sep.', 'okt.', 'nov.', 'dec.'],\r\n [\r\n 'januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september',\r\n 'oktober', 'november', 'december'\r\n ]\r\n ],\r\n u, [['v.C.', 'n.C.'], ['v.Chr.', 'n.Chr.'], ['voor Christus', 'na Christus']], 1, [6, 0],\r\n ['dd-MM-yy', 'd MMM y', 'd MMMM y', 'EEEE d MMMM y'],\r\n ['HH:mm', 'HH:mm:ss', 'HH:mm:ss z', 'HH:mm:ss zzzz'], ['{1} {0}', u, '{1} \\'om\\' {0}', u],\r\n [',', '.', ';', '%', '+', '-', 'E', '×', '‰', '∞', 'NaN', ':'],\r\n ['#,##0.###', '#,##0%', '¤ #,##0.00;¤ -#,##0.00', '#E0'], '€', 'Euro', {\r\n 'AUD': ['AU$', '$'],\r\n 'CAD': ['C$', '$'],\r\n 'FJD': ['FJ$', '$'],\r\n 'JPY': ['JP¥', '¥'],\r\n 'SBD': ['SI$', '$'],\r\n 'THB': ['฿'],\r\n 'TWD': ['NT$'],\r\n 'USD': ['US$', '$'],\r\n 'XPF': []\r\n },\r\n plural\r\n];\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { Go } from 'src/app/store';\r\nimport { NotificationBundle } from '../../models';\r\nimport { MarkAsRead } from '../../store';\r\n\r\n@Component({\r\n selector: 'app-notification-card',\r\n templateUrl: './notification-card.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class NotificationCardComponent {\r\n @Input() notification!: NotificationBundle;\r\n\r\n constructor(private store: Store) {}\r\n\r\n get type() {\r\n const type = this.notification?.routerLink[1];\r\n\r\n switch (type) {\r\n case 'meningen':\r\n return 'Mening';\r\n\r\n case 'initiatieven':\r\n return 'Initiatief';\r\n\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n ngOnInit() {}\r\n\r\n read(notification: NotificationBundle) {\r\n if (!notification.isRead) {\r\n this.store.dispatch(MarkAsRead({ notification }));\r\n }\r\n this.store.dispatch(Go({ path: notification.routerLink }));\r\n }\r\n}\r\n","
\r\n
\r\n

{{ type }}

\r\n\r\n
{{ notification.message }}
\r\n
\r\n {{ notification.date | date }}\r\n
\r\n \r\n
\r\n
\r\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\r\nimport { Store } from '@ngrx/store';\r\nimport { Go } from 'src/app/store';\r\nimport { NotificationBundle } from '../../models';\r\nimport { MarkAsRead } from '../../store';\r\n\r\n@Component({\r\n selector: 'app-notifications-list',\r\n templateUrl: './notifications-list.component.html',\r\n styleUrls: ['./notifications-list.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class NotificationsListComponent {\r\n @Input() notifications!: NotificationBundle[] | null;\r\n\r\n constructor(private store: Store) {}\r\n\r\n read(notification: NotificationBundle) {\r\n this.store.dispatch(MarkAsRead({ notification }));\r\n this.store.dispatch(Go({ path: notification.routerLink }));\r\n }\r\n}\r\n","
    \r\n
  • \r\n \r\n
  • \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n

Updates

\r\n
\r\n
\r\n
\r\n
    \r\n
  • \r\n \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n","import { NotificationsGuard } from './notifications.guard';\r\n\r\nexport * from './notifications.guard';\r\n\r\nexport const guards = [NotificationsGuard];\r\n","import { Injectable } from '@angular/core';\r\n\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { tap, filter, take, switchMap, catchError } from 'rxjs/operators';\r\n\r\nimport * as fromStore from '../store';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class NotificationsGuard {\r\n constructor(private store: Store) {}\r\n\r\n canActivate(): Observable {\r\n return this.checkStore().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkStore(): Observable {\r\n return this.store.select(fromStore.getNotificationsLoaded).pipe(\r\n tap(loaded => {\r\n if (!loaded) {\r\n this.store.dispatch(fromStore.LoadNotifications());\r\n }\r\n }),\r\n filter(loaded => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { StoreModule } from '@ngrx/store';\r\nimport { EffectsModule } from '@ngrx/effects';\r\nimport * as fromNotifications from './store';\r\nimport { TextUtilityModule } from '@teamfoster/sdk/text-utility';\r\nimport { IconModule } from '@teamfoster/sdk/icon';\r\nimport { CoreModule } from '../core/core.module';\r\nimport { DictionaryNgrxModule } from '@teamfoster/sdk/dictionary-ngrx';\r\nimport { NotificationsListComponent } from './components/notifications-list/notifications-list.component';\r\nimport { NotificationCardComponent } from './components/notification-card/notification-card.component';\r\n\r\n@NgModule({\r\n declarations: [NotificationsListComponent, NotificationCardComponent],\r\n imports: [\r\n CommonModule,\r\n StoreModule.forFeature(fromNotifications.featureKey, fromNotifications.reducers, {\r\n metaReducers: fromNotifications.metaReducers,\r\n }),\r\n EffectsModule.forFeature(fromNotifications.effects),\r\n TextUtilityModule,\r\n IconModule,\r\n CoreModule,\r\n DictionaryNgrxModule,\r\n ],\r\n exports: [NotificationsListComponent, NotificationCardComponent],\r\n})\r\nexport class NotificationsModule {}\r\n","export * from './notifications.service';\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { NotificationBundle } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class NotificationsService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getNotifications() {\r\n return this.http.get(`${this.BASE_URL}api/notifications`);\r\n }\r\n\r\n markAsRead(notification: NotificationBundle) {\r\n return this.http.post(`${this.BASE_URL}api/notifications/${notification.subscriptionId}/read`, null);\r\n }\r\n}\r\n","export * from './notifications.action';\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { NotificationBundle } from '../../models';\r\n\r\nexport const LoadNotifications = createAction('[Notifications] Load Notifications');\r\nexport const LoadNotificationsSuccess = createAction(\r\n '[Notifications] Load Notifications Success',\r\n props<{ notifications: NotificationBundle[] }>()\r\n);\r\nexport const LoadNotificationsFail = createAction('[Notifications] Load Notifications Fail', props<{ error: any }>());\r\n\r\nexport const MarkAsRead = createAction('[Notifications] Mark as read', props<{ notification: NotificationBundle }>());\r\nexport const MarkAsReadSuccess = createAction('[Notifications] Mark as read Success', props<{ notifications: NotificationBundle[] }>());\r\nexport const MarkAsReadFail = createAction('[Notifications] Mark as read Fail', props<{ error: any }>());\r\n","import { NotificationsEffects } from './notifications.effect';\r\n\r\nexport const effects = [NotificationsEffects];\r\nexport * from './notifications.effect';\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/notifications.action';\r\nimport { switchMap, map, catchError } from 'rxjs/operators';\r\nimport { NotificationsService } from '../../services';\r\n\r\n@Injectable()\r\nexport class NotificationsEffects {\r\n constructor(private actions$: Actions, private service: NotificationsService) {}\r\n\r\n LoadNotifications$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadNotifications),\r\n switchMap(() =>\r\n this.service.getNotifications().pipe(\r\n map(notifications => actions.LoadNotificationsSuccess({ notifications })),\r\n catchError(error => of(actions.LoadNotificationsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n MarkASRead$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.MarkAsRead),\r\n switchMap(({ notification }) =>\r\n this.service.markAsRead(notification).pipe(\r\n map(notifications => actions.MarkAsReadSuccess({ notifications })),\r\n catchError(error => of(actions.MarkAsReadFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n}\r\n","export * from './actions';\r\nexport * from './effects';\r\nexport * from './reducers';\r\nexport * from './selectors';\r\n","import * as fromPages from './notifications.reducer';\r\nimport { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nexport const featureKey = 'notifications';\r\n\r\nexport interface ContentState {\r\n notifications: fromPages.NotificationsState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n notifications: fromPages.NotificationReducer,\r\n};\r\n\r\nexport const getContentState = createFeatureSelector(featureKey);\r\n\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { NotificationBundle } from '../../models';\r\nimport * as actions from '../actions/notifications.action';\r\nimport * as utility from '../../../utility';\r\n\r\nexport interface NotificationsState {\r\n entities: NotificationBundle[];\r\n loaded: boolean;\r\n loading: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: NotificationsState = {\r\n entities: [],\r\n loaded: false,\r\n loading: false,\r\n};\r\n\r\nexport const NotificationReducer = createReducer(\r\n initialState,\r\n on(actions.LoadNotifications, actions.MarkAsRead, (state: NotificationsState) => {\r\n return {\r\n ...state,\r\n loading: true,\r\n };\r\n }),\r\n on(actions.LoadNotificationsSuccess, actions.MarkAsReadSuccess, (state: NotificationsState, { notifications }) => {\r\n return {\r\n ...state,\r\n entities: notifications,\r\n loading: false,\r\n loaded: true,\r\n };\r\n }),\r\n on(actions.LoadNotificationsFail, actions.MarkAsReadFail, (state: NotificationsState, { error }) => {\r\n return {\r\n ...state,\r\n loading: false,\r\n loaded: false,\r\n error,\r\n };\r\n })\r\n);\r\n\r\nexport const getNotificationsEntities = (state: NotificationsState) => state.entities;\r\nexport const getNotificationsLoading = (state: NotificationsState) => state.loading;\r\nexport const getNotificationsLoaded = (state: NotificationsState) => state.loaded;\r\n","export * from './notifications.selector';\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromNotifications from '../reducers/notifications.reducer';\r\n\r\nexport const getNotificationState = createSelector(fromFeature.getContentState, (state: fromFeature.ContentState) => state.notifications);\r\nexport const getAllNotifications = createSelector(getNotificationState, fromNotifications.getNotificationsEntities);\r\nexport const getAllUnreadedNotifications = createSelector(getAllNotifications, notifications => {\r\n return notifications.filter(n => !n.isRead);\r\n});\r\nexport const getNotificationsLoaded = createSelector(getNotificationState, fromNotifications.getNotificationsLoaded);\r\nexport const getNotificationsLoading = createSelector(getNotificationState, fromNotifications.getNotificationsLoading);\r\n","import { Component, Injectable } from '@angular/core';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\n\r\nimport { Store } from '@ngrx/store';\r\nimport { tap, filter, take, switchMap, catchError, withLatestFrom, map } from 'rxjs/operators';\r\n\r\nimport * as fromStore from '../store';\r\nimport * as fromRoot from '../../store';\r\nimport { Observable, of } from 'rxjs';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class OpinionsAllOverviewGuard {\r\n constructor(private store: Store) {}\r\n\r\n canDeactivate(\r\n component: Component,\r\n currentRoute: ActivatedRouteSnapshot,\r\n currentState: RouterStateSnapshot,\r\n nextState?: RouterStateSnapshot | undefined\r\n ): boolean | UrlTree | Observable | Promise {\r\n return this.checkDeactivate().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n canActivate(): Observable {\r\n return this.checkStore().pipe(\r\n switchMap(() => of(true)),\r\n catchError(() => of(false))\r\n );\r\n }\r\n\r\n checkDeactivate(): Observable {\r\n return this.store.select(fromStore.getOpinionsLoaded).pipe(\r\n tap(loaded => {\r\n if (loaded) {\r\n this.store.dispatch(fromStore.ClearOpinions());\r\n }\r\n }),\r\n filter(loaded => !loaded),\r\n map(loaded => !loaded),\r\n take(1)\r\n );\r\n }\r\n\r\n checkStore(): Observable {\r\n return this.store.select(fromStore.getOpinionsLoaded).pipe(\r\n withLatestFrom(this.store.select(fromStore.getOpinionsPage), this.store.select(fromRoot.getRouterState)),\r\n tap(([loaded, page, router]) => {\r\n if (!loaded || (+router.state.queryParams['page'] || 0) !== page.current) {\r\n const current = +router.state.queryParams['page'] || 0;\r\n this.store.dispatch(fromStore.LoadOpinions({ skip: current * page.size, take: page.size, unvoted: false }));\r\n }\r\n }),\r\n filter(([loaded]) => loaded),\r\n map(([loaded]) => loaded),\r\n take(1)\r\n );\r\n }\r\n}\r\n","export * from './opinions.service';\r\nexport * from './opinion-comments.service';\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { OpinionComment } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpinionCommentsService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getOpinionComments(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/opinions/${id}/comments`);\r\n }\r\n\r\n deleteOpinionComment(id: number, commentId: number) {\r\n return this.http.delete(`${this.BASE_URL}api/opinions/${id}/comments/${commentId}`);\r\n }\r\n\r\n createOpinionComment(id: number, comment: string) {\r\n return this.http.post(`${this.BASE_URL}api/opinions/${id}/comments`, { text: comment });\r\n }\r\n}\r\n","import { Injectable, Optional, Inject } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Opinion, UpdateOpinionData } from '../models/opinion.model';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { VoteDirection } from '../models';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class OpinionsService {\r\n constructor(\r\n private http: HttpClient,\r\n @Optional()\r\n @Inject('BASE_URL')\r\n private BASE_URL: string\r\n ) {}\r\n\r\n getOpinions(skip: number = 0, take: number = 0, category: number = 0, unvoted: boolean = false, personalized: boolean = false) {\r\n return this.http.get>(\r\n `${this.BASE_URL}api/opinions?take=${take}&skip=${skip}&category=${category}&unvoted=${unvoted}&personalized=${personalized}`\r\n );\r\n }\r\n\r\n getOpinion(id: number) {\r\n return this.http.get(`${this.BASE_URL}api/opinions/${id}`);\r\n }\r\n\r\n updateOpinion(id: number, data: UpdateOpinionData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n formData.append('helpText', data.helpText);\r\n\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.put(`${this.BASE_URL}api/opinions/${id}`, formData);\r\n }\r\n\r\n deleteOpinion(id: number) {\r\n return this.http.delete(`${this.BASE_URL}api/opinions/${id}`);\r\n }\r\n\r\n closeOpinion(id: number) {\r\n return this.http.post(`${this.BASE_URL}api/opinions/${id}/close`, null);\r\n }\r\n\r\n castVote(id: number, direction: VoteDirection) {\r\n return this.http.post(`${this.BASE_URL}api/opinions/${id}/vote`, direction);\r\n }\r\n\r\n createOpinion(data: UpdateOpinionData) {\r\n const formData: FormData = new FormData();\r\n if (data.image instanceof Blob) {\r\n formData.append('image', data.image);\r\n } else {\r\n formData.append('image', (null as unknown));\r\n }\r\n formData.append('title', data.title);\r\n formData.append('text', data.text);\r\n data.categories.forEach((category, i) => {\r\n formData.append(`categories[${i}].id`, category.id.toString());\r\n formData.append(`categories[${i}].title`, category.title);\r\n });\r\n formData.append('id', data.id?.toString());\r\n return this.http.post(`${this.BASE_URL}api/opinions`, formData);\r\n }\r\n}\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { OpinionComment } from '../../models';\r\n\r\nexport const LoadComments = createAction('[Opinions] Load Comments for Opinion', props<{ id: number }>());\r\nexport const LoadCommentsSuccess = createAction('[Opinions] Load Comments for Opinion Success', props<{ comments: OpinionComment[] }>());\r\nexport const LoadCommentsFail = createAction('[Opinions] Load Comments for Opinion Fail', props<{ error: any }>());\r\n\r\nexport const CreateComment = createAction('[Opinions] Create Opinion Comment', props<{ id: number; comment: string }>());\r\nexport const CreateCommentSuccess = createAction('[Opinions] Create Opinion Comment Success', props<{ comment: OpinionComment }>());\r\nexport const CreateCommentFail = createAction('[Opinions] Create Opinion Comment Fail', props<{ error: any }>());\r\n\r\nexport const DeleteComment = createAction('[Opinions] Delete Opinion Comment', props<{ id: number; commentId: number }>());\r\nexport const DeleteCommentSuccess = createAction('[Opinions] Delete Opinion Comment Success', props<{ comment: OpinionComment }>());\r\nexport const DeleteCommentFail = createAction('[Opinions] Delete Opinion Comment Fail', props<{ error: any }>());\r\n\r\nexport const ClearComments = createAction('[Opinions] Clear Opinion Comments');\r\n","export * from './opinions.action';\r\nexport * from './comments.action';\r\n","// tslint:disable:max-line-length\r\nimport { createAction, props } from '@ngrx/store';\r\nimport { PagedOverview } from 'src/app/core/models';\r\nimport { Opinion, UpdateOpinionData, VoteDirection } from '../../models';\r\n\r\nexport const LoadOpinion = createAction('[Opinions] Load Opinion', props<{ id: number }>());\r\nexport const LoadOpinionSuccess = createAction('[Opinions] Load Opinion Success', props<{ opinion: Opinion }>());\r\nexport const LoadOpinionFail = createAction('[Opinions] Load Opinion Fail', props<{ error: any }>());\r\n\r\nexport const LoadOpinions = createAction(\r\n '[Opinions] Load Opinions',\r\n props<{ take?: number; skip?: number; category?: number; unvoted?: boolean; personalized?: boolean }>()\r\n);\r\nexport const LoadOpinionsSuccess = createAction('[Opinions] Load Opinions Success', props<{ opinions: PagedOverview }>());\r\nexport const LoadOpinionsFail = createAction('[Opinions] Load Opinions Fail', props<{ error: any }>());\r\n\r\nexport const LoadMoreOpinions = createAction('[Opinions] Load MORE Opinions');\r\nexport const LoadMoreOpinionsSuccess = createAction('[Opinions] Load MORE Opinions Success', props<{ opinions: PagedOverview }>());\r\n\r\nexport const UpdateOpinion = createAction('[Opinions] Update Opinion', props<{ id: number; opinionData: UpdateOpinionData }>());\r\nexport const UpdateOpinionSuccess = createAction('[Opinions] Update Opinion Success', props<{ opinion: Opinion }>());\r\nexport const UpdateOpinionFail = createAction('[Opinions] Update Opinion Fail', props<{ error: any }>());\r\n\r\nexport const CreateOpinion = createAction('[Opinions] Create Opinion', props<{ opinionData: UpdateOpinionData }>());\r\nexport const CreateOpinionSuccess = createAction('[Opinions] Create Opinion Success', props<{ opinion: Opinion }>());\r\nexport const CreateOpinionFail = createAction('[Opinions] Create Opinion Fail', props<{ error: any }>());\r\n\r\nexport const DeleteOpinion = createAction('[Opinions] Delete Opinion', props<{ id: number }>());\r\nexport const DeleteOpinionSuccess = createAction('[Opinions] Delete Opinion Success', props<{ opinion: Opinion }>());\r\nexport const DeleteOpinionFail = createAction('[Opinions] Delete Opinion Fail', props<{ error: any }>());\r\n\r\nexport const CloseOpinion = createAction('[Opinions] Close Opinion', props<{ id: number }>());\r\nexport const CloseOpinionSuccess = createAction('[Opinions] Close Opinion Success', props<{ opinion: Opinion }>());\r\nexport const CloseOpinionFail = createAction('[Opinions] Close Opinion Fail', props<{ error: any }>());\r\n\r\nexport const ClearOpinions = createAction('[Opinions] Clear Opinions');\r\n\r\nexport const CastVote = createAction('[Opinions] Cast Vote', props<{ id: number; direction: VoteDirection }>());\r\nexport const CastVoteSuccess = createAction('[Opinions] Cast Vote Success', props<{ opinion: Opinion }>());\r\nexport const CastVoteFail = createAction('[Opinions] Cast Vote Fail', props<{ error: any }>());\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/comments.action';\r\nimport { switchMap, map, catchError, tap } from 'rxjs/operators';\r\nimport { OpinionCommentsService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go } from '../../../store';\r\n\r\n@Injectable()\r\nexport class OpinionCommentsEffects {\r\n constructor(private actions$: Actions, private service: OpinionCommentsService, private router: Router, private sb: MatSnackBar) {}\r\n\r\n LoadComments$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadComments),\r\n switchMap(({ id }) =>\r\n this.service.getOpinionComments(id).pipe(\r\n map(comments => actions.LoadCommentsSuccess({ comments })),\r\n catchError(error => of(actions.LoadCommentsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateComment$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateComment),\r\n switchMap(({ id, comment }) =>\r\n this.service.createOpinionComment(id, comment).pipe(\r\n map(comment => actions.CreateCommentSuccess({ comment })),\r\n catchError(error => of(actions.CreateCommentFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteComment$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteComment),\r\n switchMap(({ id, commentId }) =>\r\n this.service.deleteOpinionComment(id, commentId).pipe(\r\n map(comment => actions.DeleteCommentSuccess({ comment })),\r\n catchError(error => of(actions.DeleteCommentFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n createCommentSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateCommentSuccess),\r\n tap(({}) => {\r\n this.sb.open('Reactie aangemaakt!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n deleteOpinionCommentSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteCommentSuccess),\r\n tap(({}) => {\r\n this.sb.open('Reactie verwijderd!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","import { OpinionCommentsEffects } from './comments.effect';\r\nimport { OpinionsEffects } from './opinions.effect';\r\n\r\nexport * from './comments.effect';\r\nexport * from './opinions.effect';\r\n\r\nexport const effects = [OpinionsEffects, OpinionCommentsEffects];\r\n","import { Injectable } from '@angular/core';\r\nimport { createEffect, ofType, Actions } from '@ngrx/effects';\r\nimport { of } from 'rxjs';\r\nimport * as actions from '../actions/opinions.action';\r\nimport { switchMap, map, catchError, tap, withLatestFrom, filter } from 'rxjs/operators';\r\nimport { OpinionsService } from '../../services';\r\nimport { MatLegacySnackBar as MatSnackBar } from '@angular/material/legacy-snack-bar';\r\nimport { Router } from '@angular/router';\r\nimport { Go, getRouterState } from '../../../store';\r\nimport { Store } from '@ngrx/store';\r\nimport { getOpinionsPage } from '../selectors';\r\nimport { getAuthSignedIn } from 'src/app/auth/store';\r\n\r\n@Injectable()\r\nexport class OpinionsEffects {\r\n constructor(\r\n private actions$: Actions,\r\n private service: OpinionsService,\r\n private router: Router,\r\n private sb: MatSnackBar,\r\n private store: Store\r\n ) {}\r\n\r\n LoadOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadOpinion),\r\n switchMap(({ id }) =>\r\n this.service.getOpinion(id).pipe(\r\n map(opinion => actions.LoadOpinionSuccess({ opinion })),\r\n catchError(error => of(actions.LoadOpinionFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadOpinions$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadOpinions),\r\n switchMap(({ skip, take, category, unvoted, personalized }) =>\r\n this.service.getOpinions(skip, take, category, unvoted, personalized).pipe(\r\n map(opinions => actions.LoadOpinionsSuccess({ opinions })),\r\n catchError(error => of(actions.LoadOpinionsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n LoadMoreOpinions$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.LoadMoreOpinions),\r\n withLatestFrom(this.store.select(getOpinionsPage)),\r\n switchMap(([{}, pagedata]) =>\r\n this.service\r\n .getOpinions(\r\n (pagedata.current + 1) * pagedata.size,\r\n pagedata.size,\r\n undefined,\r\n pagedata.filters?.['unvoted'],\r\n pagedata.filters?.['personalized']\r\n )\r\n .pipe(\r\n map(opinions => actions.LoadMoreOpinionsSuccess({ opinions })),\r\n catchError(error => of(actions.LoadOpinionsFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CreateOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateOpinion),\r\n switchMap(({ opinionData }) =>\r\n this.service.createOpinion(opinionData).pipe(\r\n map(opinion => actions.CreateOpinionSuccess({ opinion })),\r\n catchError(error => of(actions.CreateOpinionFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n UpdateOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateOpinion),\r\n switchMap(({ id, opinionData }) =>\r\n this.service.updateOpinion(id, opinionData).pipe(\r\n map(opinion => actions.UpdateOpinionSuccess({ opinion })),\r\n catchError(error => of(actions.UpdateOpinionFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n DeleteOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteOpinion),\r\n switchMap(({ id }) =>\r\n this.service.deleteOpinion(id).pipe(\r\n map(opinion => actions.DeleteOpinionSuccess({ opinion })),\r\n catchError(error => of(actions.DeleteOpinionFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CloseOpinion$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CloseOpinion),\r\n switchMap(({ id }) =>\r\n this.service.closeOpinion(id).pipe(\r\n map(opinion => actions.CloseOpinionSuccess({ opinion })),\r\n catchError(error => of(actions.CloseOpinionFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CastVote$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVote),\r\n withLatestFrom(this.store.select(getAuthSignedIn)),\r\n filter(([{}, signedIn]) => signedIn),\r\n switchMap(([{ id, direction }, signedIn]) =>\r\n this.service.castVote(id, direction).pipe(\r\n map(opinion => actions.CastVoteSuccess({ opinion })),\r\n catchError(error => of(actions.CastVoteFail({ error })))\r\n )\r\n )\r\n );\r\n });\r\n\r\n CastVoteUnauthorized$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVote),\r\n withLatestFrom(this.store.select(getAuthSignedIn), this.store.select(getRouterState)),\r\n filter(([{}, signedIn]) => !signedIn),\r\n map(([{}, signedIn, router]) => Go({ path: ['/account', 'inloggen'], queryParams: { returnUrl: router.state.url } }))\r\n );\r\n });\r\n\r\n updateOpinionSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.UpdateOpinionSuccess),\r\n tap(({ opinion }) => {\r\n this.sb.open('Mening geüpdatet!', '');\r\n }),\r\n map(({ opinion }) => Go({ path: opinion.url }))\r\n );\r\n });\r\n\r\n createOpinionSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CreateOpinionSuccess),\r\n tap(({ opinion }) => {\r\n this.sb.open('Mening aangemaakt!', '');\r\n }),\r\n map(({ opinion }) => Go({ path: opinion.url }))\r\n );\r\n });\r\n\r\n deleteOpinionSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.DeleteOpinionSuccess),\r\n tap(({ opinion }) => {\r\n this.sb.open('Mening verwijderd!', '');\r\n }),\r\n map(({ opinion }) => Go({ path: ['/', 'meningen'] }))\r\n );\r\n });\r\n\r\n closeOpinionSuccess$ = createEffect(() => {\r\n return this.actions$.pipe(\r\n ofType(actions.CloseOpinionSuccess),\r\n tap(({ opinion }) => {\r\n this.sb.open('Mening gesloten!', '');\r\n }),\r\n map(({ opinion }) => Go({ path: opinion.url }))\r\n );\r\n });\r\n\r\n castVoteSuccess$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(actions.CastVoteSuccess),\r\n tap(({ opinion }) => {\r\n this.sb.open('Jouw stem is uitgebracht!', '');\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","export * from './reducers';\r\nexport * from './effects';\r\nexport * from './actions';\r\nexport * from './selectors';\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as utility from '../../../utility';\r\nimport * as CommentActions from '../actions/comments.action';\r\nimport { PageData } from 'src/app/core/models';\r\nimport { OpinionComment } from '../../models';\r\n\r\nexport interface CommentsState {\r\n entities: { [id: number]: OpinionComment };\r\n loadingFor?: number;\r\n loadedFor?: number;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: CommentsState = {\r\n entities: {},\r\n loadedFor: undefined,\r\n loadingFor: undefined,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const CommentReducer = createReducer(\r\n initialState,\r\n on(CommentActions.LoadComments, (state: CommentsState, { id }) => {\r\n return {\r\n ...state,\r\n loadingFor: +id,\r\n };\r\n }),\r\n on(CommentActions.LoadCommentsSuccess, (state: CommentsState, { comments }) => {\r\n const entities = utility.ToEntities(comments, 'id', {});\r\n\r\n return {\r\n ...state,\r\n entities,\r\n loadingFor: undefined,\r\n loadedFor: state.loadingFor,\r\n };\r\n }),\r\n on(CommentActions.LoadCommentsFail, (state: CommentsState, { error }) => {\r\n return {\r\n ...state,\r\n loadingFor: undefined,\r\n loadedFor: undefined,\r\n error,\r\n };\r\n }),\r\n on(CommentActions.CreateComment, (state: CommentsState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }),\r\n on(CommentActions.CreateCommentSuccess, (state: CommentsState, { comment }) => {\r\n const entities = {\r\n ...state.entities,\r\n [comment.id]: comment,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(CommentActions.DeleteCommentSuccess, (state: CommentsState, { comment }) => {\r\n const { [comment.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(CommentActions.ClearComments, (state: CommentsState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getCommentsEntities = (state: CommentsState) => state.entities;\r\nexport const getCommentsLoadingFor = (state: CommentsState) => state.loadingFor;\r\nexport const getCommentsLoadedFor = (state: CommentsState) => state.loadedFor;\r\nexport const getCommentSaved = (state: CommentsState) => state.saved;\r\nexport const getCommentSaving = (state: CommentsState) => state.saving;\r\n","import * as fromOpinion from './opinions.reducer';\r\nimport * as fromComments from './comments.reducer';\r\nimport { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../../environments/environment';\r\n\r\nexport const featureKey = 'Opinions';\r\n\r\nexport interface OpinionState {\r\n opinions: fromOpinion.OpinionsState;\r\n comments: fromComments.CommentsState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n opinions: fromOpinion.OpinionReducer,\r\n comments: fromComments.CommentReducer,\r\n};\r\n\r\nexport const getOpinionsState = createFeatureSelector(featureKey);\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport { Opinion } from '../../models';\r\nimport * as utility from '../../../utility';\r\nimport * as OpinionActions from '../actions/opinions.action';\r\nimport { PageData } from 'src/app/core/models';\r\n\r\nexport interface OpinionsState {\r\n entities: { [id: number]: Opinion };\r\n page: PageData;\r\n loading: boolean;\r\n loaded: boolean;\r\n saving: boolean;\r\n saved: boolean;\r\n error?: any;\r\n}\r\n\r\nexport const initialState: OpinionsState = {\r\n entities: {},\r\n page: { current: 0, pageCount: 0, resultCount: 0, size: 6, filters: { unvoted: true } },\r\n loaded: false,\r\n loading: false,\r\n saved: false,\r\n saving: false,\r\n};\r\n\r\nexport const OpinionReducer = createReducer(\r\n initialState,\r\n on(OpinionActions.LoadOpinions, OpinionActions.LoadMoreOpinions, (state: OpinionsState) => {\r\n return {\r\n ...state,\r\n loading: true,\r\n mineLoaded: false,\r\n };\r\n }),\r\n on(OpinionActions.LoadOpinionsSuccess, OpinionActions.LoadMoreOpinionsSuccess, (state: OpinionsState, { opinions }) => {\r\n const entities = utility.ToEntities(opinions.items, 'id', state.entities);\r\n\r\n return {\r\n ...state,\r\n entities,\r\n page: opinions.page,\r\n loading: false,\r\n loaded: true,\r\n mineLoaded: true,\r\n };\r\n }),\r\n on(OpinionActions.LoadOpinionsFail, (state: OpinionsState, { error }) => {\r\n return {\r\n ...state,\r\n loading: false,\r\n loaded: false,\r\n mineLoaded: false,\r\n error,\r\n };\r\n }),\r\n on(OpinionActions.LoadOpinion, (state: OpinionsState, { id }) => {\r\n const entity: Opinion = {\r\n ...state.entities[id],\r\n loading: true,\r\n loaded: false,\r\n };\r\n\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [id]: entity,\r\n },\r\n };\r\n }),\r\n // on(OpinionActions.CastVote, (state: OpinionsState, { direction, id }) => {\r\n // const entities = {\r\n // ...state.entities,\r\n // [id]: {\r\n // ...state.entities[id],\r\n // votes: {\r\n // ...state.entities[id].votes,\r\n // mine: direction,\r\n // },\r\n // },\r\n // };\r\n // return {\r\n // ...state,\r\n // entities,\r\n // };\r\n // }),\r\n on(OpinionActions.LoadOpinionSuccess, OpinionActions.CastVoteSuccess, (state: OpinionsState, { opinion }) => {\r\n // console.log('castvvotesucces', opinion);\r\n return {\r\n ...state,\r\n entities: {\r\n ...state.entities,\r\n [opinion.id]: opinion,\r\n // [opinion.id]: {\r\n // ...opinion,\r\n // votes: {\r\n // ...state.entities[opinion.id].votes,\r\n // mine: direction,\r\n // }\r\n // },\r\n },\r\n };\r\n }),\r\n on(OpinionActions.CreateOpinion, OpinionActions.UpdateOpinion, OpinionActions.CloseOpinion, (state: OpinionsState) => {\r\n return {\r\n ...state,\r\n saved: false,\r\n saving: true,\r\n };\r\n }),\r\n on(\r\n OpinionActions.CreateOpinionSuccess,\r\n OpinionActions.UpdateOpinionSuccess,\r\n OpinionActions.CloseOpinionSuccess,\r\n (state: OpinionsState, { opinion }) => {\r\n const entities = {\r\n ...state.entities,\r\n [opinion.id]: opinion,\r\n };\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }\r\n ),\r\n on(OpinionActions.DeleteOpinionSuccess, (state: OpinionsState, { opinion }) => {\r\n const { [opinion.id]: removed, ...entities } = state.entities;\r\n return {\r\n ...state,\r\n entities,\r\n saved: true,\r\n saving: false,\r\n };\r\n }),\r\n on(OpinionActions.ClearOpinions, (state: OpinionsState) => {\r\n return {\r\n ...initialState,\r\n };\r\n })\r\n);\r\n\r\nexport const getOpinionsEntities = (state: OpinionsState) => state.entities;\r\nexport const getOpinionsLoading = (state: OpinionsState) => state.loading;\r\nexport const getOpinionsLoaded = (state: OpinionsState) => state.loaded;\r\nexport const getOpinionSaved = (state: OpinionsState) => state.saved;\r\nexport const getOpinionSaving = (state: OpinionsState) => state.saving;\r\nexport const getOpinionsPage = (state: OpinionsState) => state.page;\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromComments from '../reducers/comments.reducer';\r\nimport * as fromOpinions from '../selectors/opinions.selector';\r\nimport { Opinion } from '../../models';\r\n\r\nexport const GetCommentstate = createSelector(fromFeature.getOpinionsState, (state: fromFeature.OpinionState) => state.comments);\r\n\r\nexport const GetCommentsEntities = createSelector(GetCommentstate, fromComments.getCommentsEntities);\r\n\r\nexport const getAllComments = createSelector(GetCommentsEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getOrderedComments = createSelector(getAllComments, comments => {\r\n return comments.sort((a, b) => new Date(b.createdOn).getTime() - new Date(a.createdOn).getTime());\r\n});\r\n\r\nexport const GetCommentsLoadedFor = createSelector(GetCommentstate, fromComments.getCommentsLoadedFor);\r\nexport const GetCommentsLoadingFor = createSelector(GetCommentstate, fromComments.getCommentsLoadingFor);\r\nexport const GetCommentsaved = createSelector(GetCommentstate, fromComments.getCommentSaved);\r\nexport const GetCommentsaving = createSelector(GetCommentstate, fromComments.getCommentSaving);\r\n\r\nexport const getSelectedOpinionCommentsLoaded = createSelector(\r\n GetCommentsLoadedFor,\r\n fromOpinions.getSelectedOpinion,\r\n (loadedFor: number | undefined, o: Opinion) => {\r\n return o?.id === loadedFor;\r\n }\r\n);\r\n\r\nexport const getSelectedOpinionCommentsLoading = createSelector(\r\n GetCommentsLoadingFor,\r\n fromOpinions.getSelectedOpinion,\r\n (loadingFor: number | undefined, o: Opinion) => {\r\n return o?.id === loadingFor;\r\n }\r\n);\r\n","export * from './opinions.selector';\r\nexport * from './comments.selector';\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromOpinion from '../reducers/opinions.reducer';\r\nimport * as fromRoot from '../../../store';\r\nimport * as fromAuth from '../../../auth/store';\r\nimport { Opinion } from '../../models';\r\n\r\nexport const getOpinionState = createSelector(fromFeature.getOpinionsState, (state: fromFeature.OpinionState) => state.opinions);\r\n\r\nexport const getOpinionsEntities = createSelector(getOpinionState, fromOpinion.getOpinionsEntities);\r\n\r\nexport const getAllOpinions = createSelector(getOpinionsEntities, entities => {\r\n return Object.keys(entities).map(id => entities[+id]);\r\n});\r\n\r\nexport const getMyOpinions = createSelector(getAllOpinions, fromAuth.getAuthUser, (opinions, usr) => {\r\n return opinions?.filter(a => a.createdById === usr?.id);\r\n});\r\n\r\nexport const getOpinionsLoaded = createSelector(getOpinionState, fromOpinion.getOpinionsLoaded);\r\nexport const getOpinionsLoading = createSelector(getOpinionState, fromOpinion.getOpinionsLoading);\r\nexport const getOpinionSaved = createSelector(getOpinionState, fromOpinion.getOpinionSaved);\r\nexport const getOpinionSaving = createSelector(getOpinionState, fromOpinion.getOpinionSaving);\r\nexport const getOpinionsPage = createSelector(getOpinionState, fromOpinion.getOpinionsPage);\r\n\r\nexport const getOrderedOpinions = createSelector(getAllOpinions, getOpinionsPage, (Pages, page) => {\r\n let orderedPages = Pages.sort((a, b) => (new Date(b.createdOn) > new Date(a.createdOn) ? 1 : -1));\r\n if (page.filters['personalized']) {\r\n orderedPages = Pages.sort((a, b) => (b.score > a.score ? 1 : -1));\r\n }\r\n return orderedPages;\r\n});\r\n\r\nexport const getUnvotedOpinions = createSelector(getOrderedOpinions, fromAuth.getAuthUser, (opinions, usr) => {\r\n return opinions?.filter(a => !a.votes.mine);\r\n});\r\n\r\nexport const getSelectedOpinion = createSelector(getOpinionsEntities, fromRoot.getRouterState, (entities, router): Opinion => {\r\n return router.state && entities[router.state.params?.['opinionId'] || router.state.data?.['id']];\r\n});\r\n\r\nexport const getSelectedOpinionLoaded = createSelector(getSelectedOpinion, (c: Opinion) => {\r\n return c?.loaded;\r\n});\r\n\r\nexport const getSelectedOpinionLoading = createSelector(getSelectedOpinion, (c: Opinion) => {\r\n return c?.loading;\r\n});\r\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, OnInit } from '@angular/core';\r\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-json-ld',\r\n template: '',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class JsonLdComponent implements OnInit {\r\n @Input()\r\n set json(currentValue: {}) {\r\n this.jsonLD = this.getSafeHTML(currentValue);\r\n }\r\n @HostBinding('innerHTML') jsonLD?: SafeHtml;\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n\r\n getSafeHTML(value: {}) {\r\n const json = value\r\n ? JSON.stringify(value, null, 2).replace(/<\\/script>/g, '<\\\\/script>')\r\n : '';\r\n const html = ``;\r\n return this.sanitizer.bypassSecurityTrustHtml(html);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { JsonLdComponent } from './components/json-ld/json-ld.component';\r\n\r\nconst moduleExports = [\r\n JsonLdComponent\r\n];\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [moduleExports],\r\n exports: [moduleExports],\r\n})\r\nexport class SeoModule { }\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\nexport const EnableHighContrast = createAction('[Contrast] enable high contrast');\r\nexport const DisableHighContrast = createAction('[Contrast] disable high contrast');\r\n\r\nexport const ToggleHighContrast = createAction('[Contrast] toggle high contrast');\r\n","export * from './router.action';\r\nexport * from './meta.action';\r\nexport * from './nav.action';\r\nexport * from './contrast.action';\r\n","import { createAction, props } from '@ngrx/store';\r\nimport { MetaData } from '../../core/models';\r\n\r\nexport const SetTitle = createAction('[Meta] Set meta title', props<{ title: string }>());\r\nexport const SetTags = createAction('[Meta] Set meta tags', props<{ properties: { [property: string]: string } }>());\r\nexport const SetMetadata = createAction('[Meta] Set meta data', props<{ data: MetaData }>());\r\n","import { createAction, props } from '@ngrx/store';\r\n\r\nexport const OpenMenu = createAction('[Nav] Open menu');\r\nexport const CloseMenu = createAction('[Nav] Close menu');\r\nexport const ToggleMenu = createAction('[Nav] Toggle menu');\r\n\r\nexport const SetTheme = createAction('[Nav] Set Theme', props<{ theme: string }>());\r\nexport const hideLogo = createAction('[Nav] Set Logo', props<{ hide: boolean }>());\r\n\r\nexport const OpenSearch = createAction('[Nav] Open search');\r\nexport const CloseSearch = createAction('[Nav] Close search');\r\n","import { Action, createAction, props } from '@ngrx/store';\r\nimport { NavigationExtras } from '@angular/router';\r\n\r\nexport const GO = '[Router] Go';\r\nexport const BACK = '[Router] Back';\r\nexport const FORWARD = '[Router] Forward';\r\n\r\nexport const Go = createAction(GO, props<{ path: any[]; queryParams?: object; extras?: NavigationExtras }>());\r\nexport const Back = createAction(BACK);\r\nexport const Forward = createAction(FORWARD);\r\n","import { RouterEffects } from './router.effect';\r\nimport { MetaEffects } from './meta.effect';\r\n\r\nexport const appEffects = [RouterEffects, MetaEffects];\r\n\r\nexport * from './router.effect';\r\nexport * from './meta.effect';\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n\r\nimport { Actions, ofType, createEffect } from '@ngrx/effects';\r\nimport * as metaActions from '../actions/meta.action';\r\n\r\nimport { tap } from 'rxjs/operators';\r\nimport { Meta, Title, MetaDefinition } from '@angular/platform-browser';\r\nimport { StringUtility } from '@teamfoster/sdk/text-utility';\r\n\r\n@Injectable()\r\nexport class MetaEffects {\r\n constructor(private actions$: Actions, private router: Router, private title: Title, private meta: Meta) {}\r\n\r\n setTitle$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(metaActions.SetTitle),\r\n tap(({ title }) => {\r\n this.title.setTitle(title);\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n setMeta$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(metaActions.SetTags),\r\n tap(({ properties }) => {\r\n const keys = Object.keys(properties);\r\n const data: any = keys.map(a => {\r\n const property = a;\r\n const content = properties[a];\r\n if (property === 'description') {\r\n return { name: property, content };\r\n }\r\n\r\n return { property, content };\r\n });\r\n this.meta.addTags(data);\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n SetMetadata$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(metaActions.SetMetadata),\r\n tap(({ data }) => {\r\n this.title.setTitle(`${data.title} - Blauwhaus`);\r\n this.meta.addTags([\r\n { name: 'description', content: StringUtility.Truncate(StringUtility.StripHTML(data.description), 157, '...') },\r\n { property: 'og:image', content: data.imageUrl },\r\n { property: 'og:title', content: `${data.title} - Blauwhaus` },\r\n { property: 'og:description', content: StringUtility.Truncate(StringUtility.StripHTML(data.description), 157, '...') },\r\n ]);\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Location } from '@angular/common';\r\n\r\nimport { Actions, ofType, createEffect } from '@ngrx/effects';\r\nimport * as RouterActions from '../actions/router.action';\r\n\r\nimport { tap, map } from 'rxjs/operators';\r\n\r\n@Injectable()\r\nexport class RouterEffects {\r\n constructor(private actions$: Actions, private router: Router, private location: Location) {}\r\n\r\n navigate$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(RouterActions.Go),\r\n tap(({ path, queryParams, extras }) => {\r\n this.router.navigate(path, { queryParams, ...extras });\r\n })\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n navigateBack$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(RouterActions.Back),\r\n tap(() => this.location.back())\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n\r\n navigateForward$ = createEffect(\r\n () => {\r\n return this.actions$.pipe(\r\n ofType(RouterActions.Forward),\r\n tap(() => this.location.forward())\r\n );\r\n },\r\n { dispatch: false }\r\n );\r\n}\r\n","export * from './reducers';\r\nexport * from './effects';\r\nexport * from './actions';\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as ContrastActions from '../actions/contrast.action';\r\n\r\n// TODO manage themes and contrast in same state\r\nexport interface ContrastState {\r\n highContrast: boolean;\r\n}\r\n\r\nexport const initialState: ContrastState = {\r\n highContrast: false,\r\n};\r\n\r\nexport const ContrastReducer = createReducer(\r\n initialState,\r\n on(ContrastActions.EnableHighContrast, state => {\r\n return {\r\n ...state,\r\n highContrast: true,\r\n };\r\n }),\r\n on(ContrastActions.DisableHighContrast, state => {\r\n return {\r\n ...state,\r\n highContrast: false,\r\n };\r\n }),\r\n on(ContrastActions.ToggleHighContrast, state => {\r\n return {\r\n ...state,\r\n highContrast: !state.highContrast,\r\n };\r\n })\r\n);\r\n\r\nexport const getHighContrast = (state: ContrastState) => state.highContrast;\r\n","import * as fromRouter from '@ngrx/router-store';\r\nimport { ActivatedRouteSnapshot, RouterStateSnapshot, Params, Data } from '@angular/router';\r\nimport { ActionReducerMap, createFeatureSelector, MetaReducer } from '@ngrx/store';\r\nimport { environment } from '../../../environments/environment';\r\nimport * as fromMeta from '../reducers/meta.reducer';\r\nimport * as fromNav from '../reducers/nav.reducer';\r\nimport * as fromContrast from '../reducers/contrast.reducer';\r\n\r\nexport interface RouterStateUrl {\r\n url: string;\r\n queryParams: Params;\r\n params: Params;\r\n data: Data;\r\n}\r\n\r\nexport interface State {\r\n router: fromRouter.RouterReducerState;\r\n meta: fromMeta.MetaState;\r\n nav: fromNav.NavState;\r\n contrast: fromContrast.ContrastState;\r\n}\r\n\r\nexport const reducers: ActionReducerMap = {\r\n router: fromRouter.routerReducer,\r\n meta: fromMeta.metaDataReducer,\r\n nav: fromNav.NavReducer,\r\n contrast: fromContrast.ContrastReducer,\r\n};\r\n\r\nexport const metaReducers: MetaReducer[] = !environment.production ? [] : [];\r\n\r\nexport const getRouterState = createFeatureSelector>('router');\r\nexport const getNavState = createFeatureSelector('nav');\r\nexport const getContrastState = createFeatureSelector('contrast');\r\n\r\nexport class CustomSerializer implements fromRouter.RouterStateSerializer {\r\n serialize(routerState: RouterStateSnapshot): RouterStateUrl {\r\n const { url } = routerState;\r\n const { queryParams } = routerState.root;\r\n\r\n let state: ActivatedRouteSnapshot = routerState.root;\r\n while (state.firstChild) {\r\n state = state.firstChild;\r\n }\r\n\r\n const { params } = state;\r\n const { data } = state;\r\n\r\n return {\r\n url,\r\n queryParams,\r\n params,\r\n data,\r\n };\r\n }\r\n}\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as metaActions from '../actions/meta.action';\r\n\r\nexport interface MetaState {\r\n title: string;\r\n properties: { [content: string]: string };\r\n}\r\n\r\nexport const initialState: MetaState = {\r\n title: '',\r\n properties: {},\r\n};\r\n\r\nexport const metaDataReducer = createReducer(\r\n initialState,\r\n on(metaActions.SetTitle, (state, { title }) => {\r\n return {\r\n ...state,\r\n title,\r\n };\r\n }),\r\n on(metaActions.SetTags, (state, { properties }) => {\r\n return {\r\n ...state,\r\n properties,\r\n };\r\n })\r\n);\r\n","import { createReducer, on } from '@ngrx/store';\r\nimport * as NavActions from '../actions/nav.action';\r\n\r\nexport interface NavState {\r\n menuOpen: boolean;\r\n searchActive: boolean;\r\n theme: string;\r\n hideLogo: boolean;\r\n}\r\n\r\nexport const initialState: NavState = {\r\n menuOpen: false,\r\n searchActive: false,\r\n theme: 'palette-light',\r\n hideLogo: false,\r\n};\r\n\r\nexport const NavReducer = createReducer(\r\n initialState,\r\n on(NavActions.OpenMenu, state => {\r\n return {\r\n ...state,\r\n menuOpen: true,\r\n };\r\n }),\r\n on(NavActions.CloseMenu, state => {\r\n return {\r\n ...state,\r\n menuOpen: false,\r\n };\r\n }),\r\n on(NavActions.ToggleMenu, state => {\r\n return {\r\n ...state,\r\n menuOpen: !state.menuOpen,\r\n };\r\n }),\r\n on(NavActions.OpenSearch, state => {\r\n return {\r\n ...state,\r\n menuOpen: true,\r\n searchActive: true,\r\n };\r\n }),\r\n on(NavActions.CloseSearch, state => {\r\n return {\r\n ...state,\r\n menuOpen: false,\r\n searchActive: false,\r\n };\r\n }),\r\n on(NavActions.SetTheme, (state, { theme }) => {\r\n return {\r\n ...state,\r\n theme,\r\n };\r\n }),\r\n on(NavActions.hideLogo, (state, { hide }) => {\r\n return {\r\n ...state,\r\n hideLogo: hide,\r\n };\r\n })\r\n);\r\n\r\nexport const getMenuOpen = (state: NavState) => state.menuOpen;\r\nexport const getSearchActive = (state: NavState) => state.searchActive;\r\nexport const getTheme = (state: NavState) => state.theme;\r\nexport const getHideLogo = (state: NavState) => state.hideLogo;\r\n","import { createSelector } from '@ngrx/store';\r\n\r\nimport * as fromFeature from '../reducers';\r\nimport * as fromNav from '../reducers/nav.reducer';\r\n\r\nexport const getNavState = createSelector(fromFeature.getNavState, (state: fromNav.NavState) => state);\r\n\r\nexport const getMenuOpen = createSelector(getNavState, (state: fromNav.NavState) => state.menuOpen);\r\nexport const getTheme = createSelector(getNavState, (state: fromNav.NavState) => state.theme);\r\nexport const getLogoHide = createSelector(getNavState, (state: fromNav.NavState) => state.hideLogo);\r\n\r\nexport const getSearchActive = createSelector(getNavState, (state: fromNav.NavState) => state.searchActive);\r\n","export function ToEntities(a: any[], key: string, initialEntities?: {}) {\r\n return a.reduce(\r\n (e: { [k: number]: any }, obj: any) => {\r\n return {\r\n ...e,\r\n [obj[key]]: obj,\r\n };\r\n },\r\n {\r\n ...initialEntities,\r\n }\r\n );\r\n}\r\n","export * from './arrayToEntities.utility';\r\n","// The file contents for the current environment will overwrite these during build.\r\n// The build system defaults to the dev environment which uses `environment.ts`, but if you do\r\n// `ng build --env=prod` then `environment.prod.ts` will be used instead.\r\n// The list of which env maps to which file can be found in `.angular-cli.json`.\r\n\r\nexport const environment = {\r\n production: false,\r\n hmr: false\r\n};\r\n","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\nimport 'hammerjs';\r\n\r\nexport function getBaseUrl() {\r\n return document.getElementsByTagName('base')[0].href;\r\n}\r\n\r\nconst providers = [{ provide: 'BASE_URL', useFactory: getBaseUrl, deps: [] }];\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nconst bootstrap = () => platformBrowserDynamic(providers).bootstrapModule(AppModule);\r\n\r\nif (document.readyState === 'complete') {\r\n function bootstrap() {\r\n bootstrap();\r\n }\r\n\r\n if (document.readyState === 'complete') {\r\n bootstrap();\r\n } else {\r\n document.addEventListener('DOMContentLoaded', bootstrap);\r\n }\r\n} else {\r\n document.addEventListener('DOMContentLoaded', bootstrap);\r\n}\r\n"],"names":["NotFoundComponent","constructor","statusCode","setStatusCode","_","i0","ɵɵdirectiveInject","i1","HttpStatusCodeService","_2","selectors","decls","vars","consts","template","NotFoundComponent_Template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵproperty","animation","animate","style","KenBurnsAnimation","transform","trigger","transition","query","q","group","optional","routerFade","position","width","height","opacity","stagger","keyframes","ScaleInOutAnimation","offset","RouterModule","CookieSettingsGuard","DictionaryGuard","MenuGuard","AuthGuard","CheckAuthGuard","InitiativesOverviewGuard","NotificationsGuard","OpinionsAllOverviewGuard","EventsAllOverviewGuard","appGuards","routes","path","loadChildren","then","m","ActivityFeedModule","pathMatch","canActivate","data","theme","tabAction","StyleGuideModule","ContentModule","AuthModule","ProfileModule","OpinionsModule","canDeactivate","InitiativesModule","EventsModule","LandingPagesModule","component","redirectTo","AppRoutingModule","_3","forRoot","scrollPositionRestoration","imports","exports","PLATFORM_ID","isPlatformBrowser","DOCUMENT","NavigationEnd","NavigationStart","getDictionaryLoaded","BehaviorSubject","Subject","combineLatest","navActions","navSelectors","SetTheme","tap","withLatestFrom","takeUntil","map","CookieConfigService","getCookiePreferences","getRouterState","getMenuLoaded","getAuthSignedIn","getAllUnreadedNotifications","ɵɵlistener","AppComponent_app_topbar_4_Template_app_topbar_toggleOverlay_0_listener","ɵɵrestoreView","_r7","ctx_r6","ɵɵnextContext","ɵɵresetView","toggleMenu","AppComponent_app_topbar_4_Template_app_topbar_closeOverlay_0_listener","ctx_r8","closeMenu","AppComponent_app_topbar_4_Template_app_topbar_openOverlay_0_listener","ctx_r9","openMenu","ctx_r0","usr$","notifications$","tmp_2_0","error","ɵɵpureFunction0","_c0","tmp_3_0","menuOpen$","undefined","ɵɵelement","tmp_0_0","ctx_r2","domainName","ctx_r3","tabActionUrl","tabActionLabel","AppComponent","document","platformId","router","store","renderer","cookieConfig","loading$","testGridEnabled","routerAnimationState","previousPath","_unsubscribe$","ngOnInit","cookiePrefs$","select","loaded$","pipe","dictionaryLoaded","menuLoaded","getMenuOpen","a","updateRoot","theme$","getTheme","routeState$","location","hostname","events","subscribe","event","cookies","state","next","dispatch","navigationTrigger","queryParams","window","scrollTo","analytical","gtag","analyticsCode","page_path","urlAfterRedirects","anonymize_ip","querySelector","classList","add","documentElement","setProperty","innerHeight","onResize","ToggleMenu","CloseMenu","OpenMenu","prepareRoute","outlet","activatedRouteData","menuActive","addClass","body","removeClass","ngOnDestroy","complete","Router","i2","Store","Renderer2","hostBindings","AppComponent_HostBindings","$event","ɵɵresolveWindow","ɵɵtemplate","AppComponent_app_topbar_4_Template","AppComponent_app_footer_10_Template","AppComponent_app_tab_bar_12_Template","AppComponent_fstr_cookie_notice_17_Template","AppComponent_app_grid_overlay_19_Template","ɵɵclassProp","_r1","tmp_6_0","changeDetection","BrowserModule","HammerModule","LOCALE_ID","FormsModule","HttpClientModule","CoreModule","StoreModule","StoreRouterConnectingModule","EffectsModule","environment","DictionaryNgrxModule","LanguageService","IconModule","BrowserAnimationsModule","reducers","CustomSerializer","appEffects","metaReducers","localeNl","registerLocaleData","StoreDevtoolsModule","CookieNgrxModule","LegacyDynamicFormModule","DynamicFormModule","MAT_LEGACY_FORM_FIELD_DEFAULT_OPTIONS","MAT_FORM_FIELD_DEFAULT_OPTIONS","MenuNgrxModule","FormFileInputComponent","FormCheckboxButtonsComponent","MAT_LEGACY_SNACK_BAR_DEFAULT_OPTIONS","MAT_SNACK_BAR_DEFAULT_OPTIONS","NotificationsModule","dynamicFormConfig","genericInputErrorMessage","genericServerErrorMessage","formControls","file","checkboxButtons","strippedContentPlaceholder","buttonSettings","buttonAcceptAll","buttonClose","useTagManager","strippedContentButton","types","functional","marketing","showSettings","AppModule","iconRegistry","setDefaultFontSetClass","ɵɵinject","MatIconRegistry","bootstrap","provide","useValue","appearance","duration","panelClass","hasAction","withServerTransition","appId","spritesheetUrl","runtimeChecks","strictStateImmutability","strictActionImmutability","serializer","instrument","maxAge","logOnly","production","declarations","i3","i4","StoreRootModule","i5","EffectsRootModule","i6","i7","i8","i9","i10","i11","ActivateAccountComponent","ForgotPasswordComponent","RegisterComponent","ResetPasswordComponent","SignInComponent","AtuhRoutingModule","forChild","CommonModule","TextUtilityModule","MatLegacySnackBarModule","MatSnackBarModule","fromAuth","AuthLayoutComponent","forFeature","featureKey","effects","StoreFeatureModule","EffectsFeatureModule","icon","title","inputs","ngContentSelectors","_c1","AuthLayoutComponent_Template","ɵɵprojection","ɵɵclassMap","FromDictionaryPipe","of","SetTitle","ActivateAccount","getAccountActivated","getAccountActivating","getAuthError","prefix","ctx_r1","route","lang","activating$","activated$","dict","error$","activateAccount","snapshot","token","uid","ActivatedRoute","ActivateAccountComponent_Template","ɵɵelementContainerStart","ActivateAccountComponent_app_alert_4_Template","ActivateAccountComponent_app_alert_9_Template","ɵɵelementContainerEnd","ɵɵtextInterpolate1","Validators","result","ForgotPasswordComponent_fstr_dynamic_form_4_Template_fstr_dynamic_form_formSubmit_0_listener","_r4","requestPasswordReset","formFields","fb","auth","cd","loading","checkValidation","forgotPasswordForm","inputType","label","name","validators","email","required","autocomplete","placeholder","fieldType","order","val","_this","_asyncToGenerator","forgotPassword","toPromise","detectChanges","FormBuilder","AuthService","ChangeDetectorRef","ForgotPasswordComponent_Template","ForgotPasswordComponent_app_alert_3_Template","ForgotPasswordComponent_fstr_dynamic_form_4_Template","ForgotPasswordComponent_app_alert_5_Template","succeeded","getRegisterError","getRegistering","getRegisterSuccess","Register","FormControl","error_r7","description","RegisterComponent_app_alert_3_ul_3_li_1_Template","errors_r3","errors","error_r10","RegisterComponent_app_alert_3_div_4_p_1_Template","RegisterComponent_app_alert_3_ul_3_Template","RegisterComponent_app_alert_3_div_4_Template","length","RegisterComponent_fstr_dynamic_form_5_Template_fstr_dynamic_form_formChanges_0_listener","_r13","ctx_r12","handleChanges","RegisterComponent_fstr_dynamic_form_5_Template_fstr_dynamic_form_formSubmit_0_listener","ctx_r14","handleSubmit","formValid","registering$","registerSuccess$","registerError$","hint","cssClass","checkboxLabel","requiredTrue","ok","formValue","value","isCompany","get","manifest","id","addControl","removeControl","fields","filter","field","valid","registerData","newPasswordIsValid","password","confirmPassword","RegisterComponent_Template","RegisterComponent_app_alert_3_Template","RegisterComponent_fstr_dynamic_form_5_Template","RegisterComponent_app_alert_7_Template","ResetPasswordComponent_fstr_dynamic_form_3_Template_fstr_dynamic_form_formSubmit_0_listener","resetPassword","getErrorMessage","console","warn","ResetPasswordComponent_Template","ResetPasswordComponent_fstr_dynamic_form_3_Template","ResetPasswordComponent_app_alert_4_Template","ResetPasswordComponent_ng_container_5_Template","getAuthSigningIn","SignIn","error_r1","signingIn$","signedIn$","signInForm","e","loginData","isPersistent","isNotAllowed","isLockedOut","SignInComponent_Template","SignInComponent_Template_fstr_dynamic_form_formSubmit_2_listener","SignInComponent_app_alert_3_Template","switchMap","catchError","take","fromStore","fromRoot","checkStore","getAuthChecked","getAuthChecking","signedIn","checked","checking","CheckAuth","Go","returnUrl","url","loaded","factory","ɵfac","providedIn","http","BASE_URL","signIn","post","checkAuth","withCredentials","SignOut","passwords","encodeURIComponent","register","regData","confirmAccount","updateAccount","formData","FormData","image","Blob","append","firstName","lastName","categories","forEach","category","i","toString","put","updatePassword","updateAccountVisibility","privacyLevel","HttpClient","createAction","props","CheckAuthSuccess","CheckAuthFail","SignInSuccess","SignInFail","SignOutSuccess","SignOutFail","RegisterSuccess","RegisterFail","ActivateAccountSuccess","ActivateAccountFail","UpdateAccount","UpdateAccountSuccess","UpdateAccountFail","UpdatePassword","UpdatePasswordSuccess","UpdatePasswordFail","createEffect","ofType","authActions","AuthEffects","actions$","authService","sb","checkAuth$","signIn$","signInSuccess$","open","user","fullName","signOut$","signOutSuccess$","href","register$","confirmAccount$","updateAccount$","accountData","profile","updateAccountSuccess$","updatePassword$","passwordData","updatePasswordSuccess$","Actions","MatLegacySnackBar","createReducer","on","actions","initialState","authChecked","authChecking","signingIn","SignIngOut","updated","updating","registering","accountActivated","accountActivating","passwordUpdating","passwordUpdated","registerSuccess","authReducer","isAuth","registerError","any","getAuthUser","getUser","getPasswordUpdated","getPasswordUpdating","getAccountUpdated","getAccountUpdating","createFeatureSelector","getContentState","createSelector","fromFeature","getContentPageState","alertIcon","AlertComponent_header_2_fstr_icon_1_Template","message","AlertComponent","status","AlertComponent_Template","AlertComponent_header_2_Template","AlertComponent_p_4_Template","MAT_LEGACY_DIALOG_DATA","MAT_DIALOG_DATA","ConfirmComponent_header_2_h1_1_Template","ConfirmComponent","dialogRef","addPanelClass","confirmHandler","close","MatLegacyDialogRef","ConfirmComponent_Template","ConfirmComponent_header_2_Template","ConfirmComponent_Template_button_click_6_listener","ConfirmComponent_Template_button_click_8_listener","ɵɵsanitizeHtml","ɵɵpipeBind3","avatar","sizes","ɵɵsanitizeUrl","firstletter","CreatedByComponent","slice","toLocaleLowerCase","showName","CreatedByComponent_Template","CreatedByComponent_img_2_Template","CreatedByComponent_fstr_icon_3_Template","CreatedByComponent_span_4_Template","ɵɵpipeBind2","start","end","DateComponent_ng_container_8_span_9_Template","getMonth","isCurrentYear","DateComponent","d","date","Date","toLocaleString","getLanguage","month","getFullYear","size","orientation","DateComponent_Template","DateComponent_span_7_Template","DateComponent_ng_container_8_Template","ShowCookieSettings","item_r1","routerLink","FooterComponent","menu","socials","domain","year","schema","s","socialLink","sameAs","push","openCookie","FooterComponent_Template","FooterComponent_Template_button_click_6_listener","FooterComponent_li_9_Template","ɵɵtextInterpolate2","number_r1","GridOverlayComponent","gridColumns","Array","keys","GridOverlayComponent_Template","GridOverlayComponent_div_3_Template","ɵɵpipeBind4","header","anchor","button_r6","i_r7","HeaderComponent_ng_container_9_fstr_link_1_Template","buttons","HeaderComponent","showLogo","isSignedIn","imageUrl","subtitle","HeaderComponent_Template","HeaderComponent_div_3_Template","HeaderComponent_img_6_Template","HeaderComponent_h1_7_Template","HeaderComponent_ng_container_9_Template","HeaderComponent_a_10_Template","EventEmitter","ResizePipe","currentSrc","aspectRatio","srcSetAttr","sizesAttr","ImageComponent","sanitizer","objectFitMode","debug","mode","format","scale","imageSizes","customSizes","cssBreakPoints","sm","md","lg","xl","xxl","gcd","resize","aspect","alt","getCSSvariables","bypassSecurityTrustStyle","sizeRules","Object","key","breakpoint","join","concat","srcSetRules","imgWidth","encodeURI","getAspectRatioHeight","percentageDiff","newHeight","Math","round","h","w","DomSanitizer","viewQuery","ImageComponent_Query","ImageComponent_Template_img_load_0_listener","emit","ImageComponent_table_3_Template","tmp_1_0","caption","ɵɵattribute","setFixed","LoaderIndicatorComponent","LoaderIndicatorComponent_Template","LoaderIndicatorComponent_div_0_Template","ShapeImageComponent","backgroundColor","shapePath","shape","CSSImageUrl","ShapeImageComponent_Template","ɵɵstyleProp","TabBarComponent","actionTabUrl","actionTabLabel","TabBarComponent_Template","ɵɵpureFunction1","_c2","_c3","_c4","fromEvent","debounceTime","MarkAsRead","takeUntilDestroyed","n_r6","TopbarComponent_nav_10_div_4_li_3_Template_button_click_1_listener","restoredCtx","_r10","$implicit","read","TopbarComponent_nav_10_div_4_li_3_footer_3_Template","TopbarComponent_nav_10_div_4_li_3_Template","ctx_r4","showNotifications","notifications","TopbarComponent_nav_10_Template_button_click_1_listener","_r12","ctx_r11","hasNotify","TopbarComponent_nav_10_span_3_Template","TopbarComponent_nav_10_div_4_Template","item_r13","TopbarComponent_li_19_Template_button_click_1_listener","_r15","signOut","TopbarComponent","logoClass","loggedIn","toggleOverlay","closeOverlay","openOverlay","fixed","scrollY","notification","outputs","TopbarComponent_Template","TopbarComponent_nav_10_Template","TopbarComponent_Template_button_click_11_listener","TopbarComponent_Template_button_click_15_listener","TopbarComponent_li_18_Template","TopbarComponent_li_19_Template","InViewModule","Html5VideoPlayerModule","SeoModule","ReactiveFormsModule","MatLegacyDialogModule","MatDialogModule","QuillRemoveLinebreakPipe","ImageModule","ButtonModule","moduleExports","config","option_r5","FormCheckboxButtonsComponent_div_1_span_4_Template","FormCheckboxButtonsComponent_div_1_div_5_Template","FormCheckboxButtonsComponent_div_1_li_7_Template","showError","field_r1","isRequired","checkBoxes","selectOptions","_unsubscribe","option","initialValue","some","b","control","valueChanges","selectedAsArray","k","objectArray","indexOf","patchValue","values","ctrl","controls","setValue","validator","invalid","touched","dirty","FormCheckboxButtonsComponent_Template","FormCheckboxButtonsComponent_div_1_Template","subLabel","FormFileInputComponent_ng_container_0_div_11_Template_a_click_4_listener","_r11","ɵɵreference","click","FormFileInputComponent_ng_container_0_div_11_span_7_Template","ctx_r13","fileName","filePreview","FormFileInputComponent_ng_container_0_div_12_figure_1_img_1_Template","FormFileInputComponent_ng_container_0_div_12_figure_1_img_2_Template","isPreview","FormFileInputComponent_ng_container_0_div_12_figure_1_Template","FormFileInputComponent_ng_container_0_div_12_Template_a_click_11_listener","_r16","FormFileInputComponent_ng_container_0_div_12_Template_a_click_15_listener","ctx_r17","clearFile","ctx_r7","FormFileInputComponent_ng_container_0_span_4_Template","FormFileInputComponent_ng_container_0_div_5_Template","FormFileInputComponent_ng_container_0_Template_input_change_7_listener","_r20","ctx_r19","onFileSelected","FormFileInputComponent_ng_container_0_Template_div_drop_9_listener","ctx_r21","onDrop","FormFileInputComponent_ng_container_0_Template_div_dragover_9_listener","ctx_r22","onDragOver","FormFileInputComponent_ng_container_0_Template_div_dragleave_9_listener","ctx_r23","onDragLeave","FormFileInputComponent_ng_container_0_div_11_Template","FormFileInputComponent_ng_container_0_div_12_Template","FormFileInputComponent_ng_container_0_div_14_Template","dragOver","target","files","setFileDetails","fileType","type","markAsDirty","setFilePreview","startsWith","reader","FileReader","readAsDataURL","onload","preventDefault","dataTransfer","stopPropagation","hasError","FormFileInputComponent_Template","FormFileInputComponent_ng_container_0_Template","getStatusCode","replace","pure","currentRoute","currentState","nextState","checkDeactivate","getEventsLoaded","ClearEvents","getEventsPage","page","current","LoadEvents","skip","EventsService","getEvents","getEvent","updateEvent","text","helpText","startDate","endDate","deleteEvent","delete","createEvent","LoadEvent","LoadEventSuccess","LoadEventFail","LoadEventsSuccess","LoadEventsFail","LoadMoreEvents","LoadMoreEventsSuccess","UpdateEvent","UpdateEventSuccess","UpdateEventFail","CreateEvent","CreateEventSuccess","CreateEventFail","DeleteEvent","DeleteEventSuccess","DeleteEventFail","EventsEffects","service","LoadEvent$","LoadEvents$","LoadMoreEvents$","pagedata","CreateEvent$","eventData","UpdateEvent$","DeleteEvent$","updateEventSuccess$","createEventSuccess$","deleteEventSuccess$","utility","EventActions","entities","pageCount","resultCount","filters","unvoted","saved","saving","EventReducer","mineLoaded","ToEntities","items","entity","removed","getEventsEntities","getEventsLoading","getEventSaved","getEventSaving","getEventsState","getEventState","getAllEvents","getMyEvents","usr","createdById","getOrderedEvents","Pages","orderedPages","sort","getSelectedEvent","params","getSelectedEventLoaded","c","getSelectedEventLoading","getInitiativesLoaded","ClearInitiatives","getInitiativesPage","LoadInitiatives","personalized","InitiativeCommentsService","getInitiativeComments","deleteInitiativeComment","commentId","createInitiativeComment","comment","InitiativeStatusUpdatesService","getInitiativeStatusUpdates","deleteInitiativeStatusUpdate","updateId","createInitiativeStatusUpdate","InitiativesService","getInitiatives","getInitiative","updateInitiative","deleteInitiative","closeInitiative","castVote","direction","createInitiative","createInitiativeFromOpinion","OpinionId","getInitiativeContributors","initiativeId","MakeInitiativeContribution","motivation","LoadComments","LoadCommentsSuccess","LoadCommentsFail","CreateComment","CreateCommentSuccess","CreateCommentFail","DeleteComment","DeleteCommentSuccess","DeleteCommentFail","ClearComments","LoadContributors","LoadContributorsSuccess","LoadContributorsFail","AddContribution","AddContributionSuccess","AddContributionFail","LoadInitiative","LoadInitiativeSuccess","LoadInitiativeFail","LoadInitiativesSuccess","LoadInitiativesFail","LoadMoreInitiatives","LoadMoreInitiativesSuccess","UpdateInitiative","UpdateInitiativeSuccess","UpdateInitiativeFail","CreateInitiative","CreateInitiativeSuccess","CreateInitiativeFail","DeleteInitiative","DeleteInitiativeSuccess","DeleteInitiativeFail","CloseInitiative","CloseInitiativeSuccess","CloseInitiativeFail","CastVote","CastVoteSuccess","CastVoteFail","CreateInitiativeFromOpinion","CreateInitiativeFromOpinionSuccess","CreateInitiativeFromOpinionFail","LoadStatusUpdates","LoadStatusUpdatesSuccess","LoadStatusUpdatesFail","CreateStatusUpdate","CreateStatusUpdateSuccess","CreateStatusUpdateFail","DeleteStatusUpdate","DeleteStatusUpdateSuccess","DeleteStatusUpdateFail","ClearStatusUpdates","InitiativeCommentsEffects","LoadComments$","comments","CreateComment$","DeleteComment$","createCommentSuccess$","deleteInitiativeCommentSuccess$","ContributorsEffects","LoadContributors$","contributors","AddContributor$","contributor","AddContributorSuccess$","InitiativesEffects","StatusUpdatesEffects","LoadInitiative$","initiative","LoadInitiatives$","initiatives","LoadMoreInitiatives$","CreateInitiative$","initiativeData","UpdateInitiative$","DeleteInitiative$","CloseInitiative$","CastVote$","CastVoteUnauthorized$","updateInitiativeSuccess$","createInitiativeSuccess$","deleteInitiativeSuccess$","closeInitiativeSuccess$","castVoteSuccess$","CreateInitiativeFromOpinion$","opinionId","LoadStatusUpdates$","StatusUpdates","CreateStatusUpdate$","StatusUpdate","DeleteStatusUpdate$","StatusUpdateId","createStatusUpdateSuccess$","deleteInitiativeStatuspdateSuccess$","getSelectedOpinion","Error","CommentActions","loadedFor","loadingFor","CommentReducer","getCommentsEntities","getCommentsLoadingFor","getCommentsLoadedFor","getCommentSaved","getCommentSaving","ContributorActions","contributed","ContributorReducer","getContributorsEntities","getContributorsLoading","getContributorsLoaded","getContributorsContributed","fromInitiative","fromComments","fromContributors","fromUpdates","InitiativeReducer","statusUpdates","InitiativeStatusUpdatesReducer","getInitiativesState","InitiativeActions","getInitiativesEntities","getInitiativesLoading","getInitiativeSaved","getInitiativeSaving","getInitiativeStatusUpdatesEntities","getInitiativeStatusUpdatesLoadingFor","getInitiativeStatusUpdatesLoadedFor","getInitiativeStatusUpdatesaved","getInitiativeStatusUpdatesaving","fromInitiatives","GetCommentstate","GetCommentsEntities","getAllComments","getOrderedComments","createdOn","getTime","GetCommentsLoadedFor","GetCommentsLoadingFor","GetCommentsaved","GetCommentsaving","getSelectedInitiativeCommentsLoaded","getSelectedInitiative","o","getSelectedInitiativeCommentsLoading","getContributorState","getSelectedContributors","getSelectedContributorLoaded","getSelectedContributorLoading","getSelectedContributorContributed","getInitiativeState","getAllInitiatives","getOrderedInitiatives","orderedInitiatives","score","getMyInitiatives","getUnvotedInitiatives","votes","mine","getSelectedInitiativeLoaded","getSelectedInitiativeLoading","fromStatusUpdates","GetStatusUpdatestate","GetStatusUpdatesEntities","getAllStatusUpdates","getOrderedStatusUpdates","GetStatusUpdatesLoadedFor","GetStatusUpdatesLoadingFor","GetStatusUpdatesSaved","GetStatusUpdatesSaving","getSelectedInitiativeStatusUpdatesLoaded","getSelectedInitiativeStatusUpdatesLoading","u","plural","n","floor","abs","v","NotificationCardComponent","isRead","NotificationCardComponent_Template","NotificationCardComponent_Template_button_click_9_listener","ɵɵnamespaceSVG","NotificationsListComponent_li_1_Template_button_click_1_listener","n_r2","n_r5","NotificationsListComponent","NotificationsListComponent_Template","NotificationsListComponent_li_1_Template","NotificationsListComponent_li_14_Template","guards","getNotificationsLoaded","LoadNotifications","fromNotifications","NotificationsService","getNotifications","markAsRead","subscriptionId","LoadNotificationsSuccess","LoadNotificationsFail","MarkAsReadSuccess","MarkAsReadFail","NotificationsEffects","LoadNotifications$","MarkASRead$","fromPages","NotificationReducer","getNotificationsEntities","getNotificationsLoading","getNotificationState","getAllNotifications","getOpinionsLoaded","ClearOpinions","getOpinionsPage","LoadOpinions","OpinionCommentsService","getOpinionComments","deleteOpinionComment","createOpinionComment","OpinionsService","getOpinions","getOpinion","updateOpinion","deleteOpinion","closeOpinion","createOpinion","LoadOpinion","LoadOpinionSuccess","LoadOpinionFail","LoadOpinionsSuccess","LoadOpinionsFail","LoadMoreOpinions","LoadMoreOpinionsSuccess","UpdateOpinion","UpdateOpinionSuccess","UpdateOpinionFail","CreateOpinion","CreateOpinionSuccess","CreateOpinionFail","DeleteOpinion","DeleteOpinionSuccess","DeleteOpinionFail","CloseOpinion","CloseOpinionSuccess","CloseOpinionFail","OpinionCommentsEffects","deleteOpinionCommentSuccess$","OpinionsEffects","LoadOpinion$","opinion","LoadOpinions$","opinions","LoadMoreOpinions$","CreateOpinion$","opinionData","UpdateOpinion$","DeleteOpinion$","CloseOpinion$","updateOpinionSuccess$","createOpinionSuccess$","deleteOpinionSuccess$","closeOpinionSuccess$","fromOpinion","OpinionReducer","getOpinionsState","OpinionActions","getOpinionsEntities","getOpinionsLoading","getOpinionSaved","getOpinionSaving","fromOpinions","getSelectedOpinionCommentsLoaded","getSelectedOpinionCommentsLoading","getOpinionState","getAllOpinions","getMyOpinions","getOrderedOpinions","getUnvotedOpinions","getSelectedOpinionLoaded","getSelectedOpinionLoading","JsonLdComponent","json","currentValue","jsonLD","getSafeHTML","JSON","stringify","html","bypassSecurityTrustHtml","hostVars","JsonLdComponent_HostBindings","EnableHighContrast","DisableHighContrast","ToggleHighContrast","SetTags","SetMetadata","hideLogo","OpenSearch","CloseSearch","GO","BACK","FORWARD","Back","Forward","RouterEffects","MetaEffects","metaActions","StringUtility","meta","setTitle$","setTitle","setMeta$","properties","property","content","addTags","SetMetadata$","Truncate","StripHTML","Title","Meta","RouterActions","navigate$","extras","navigate","navigateBack$","back","navigateForward$","forward","Location","ContrastActions","highContrast","ContrastReducer","getHighContrast","fromRouter","fromMeta","fromNav","fromContrast","routerReducer","metaDataReducer","nav","NavReducer","contrast","getNavState","getContrastState","serialize","routerState","root","firstChild","NavActions","menuOpen","searchActive","hide","getSearchActive","getHideLogo","getLogoHide","initialEntities","reduce","obj","hmr","enableProdMode","getBaseUrl","getElementsByTagName","providers","useFactory","deps","__NgCli_bootstrap_1","platformBrowser","bootstrapModule","readyState","addEventListener"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}