Skip to content
Snippets Groups Projects
Select Git revision
  • 70ac04ce98adb5b05fd4b9aa12f8ba3a26c6efe9
  • master default
  • include-tests
  • remove-yaml-quotes
  • configurable-ci-setup-lookup-path
  • dev-image-test-bak
  • dev-images
  • tmp/deploy-image-build
  • fast-ci
  • modular-templates
10 results

ros_entrypoint.bash

Blame
  • Forked from tecnalia_robotics-public / templates
    Source project has a limited visibility.
    app.module.ts 4.38 KiB
    /**
     * @license
     * Copyright Akveo. All Rights Reserved.
     * Licensed under the MIT License. See License.txt in the project root for license information.
     */
     import { BrowserModule } from '@angular/platform-browser';
     import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
     import { NgModule } from '@angular/core';
     import { HttpClientModule, HttpClient, HTTP_INTERCEPTORS } from '@angular/common/http';
     import { ConfigModule, ConfigLoader } from '@ngx-config/core';
     import { ConfigHttpLoader } from '@ngx-config/http-loader';
     import { TranslateHttpLoader } from "@ngx-translate/http-loader";
     import { CoreModule } from './@core/core.module';
     import { ThemeModule } from './@theme/theme.module';
     import { AppComponent } from './app.component';
     import { AppRoutingModule } from './app-routing.module';
     import {
       NbDatepickerModule,
       NbDialogModule,
       NbMenuModule,
       NbSidebarModule,
       NbToastrModule,
       NbWindowModule,
       NbTimepickerModule,
       NbAccordionModule,
     } from '@nebular/theme';
     import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
     import { NbSecurityModule } from '@nebular/security';
     import { TokenInterceptor } from './auth/services/token.interceptor';
     import { AuthGuard } from './auth/services/auth.guard';
     import { AuthLogoutComponent } from './auth/logout/auth-logout.component';
     import { MarkdownModule } from 'ngx-markdown';
     import { UiFeaturesModule } from './pages/ui-features/ui-features.module';
     
     import { ChartModule } from 'angular2-chartjs';
     import 'chartjs-plugin-zoom';
    import { DashboardCloneWizardComponent } from './pages/dashboard-management/dashboard-clone-wizard/dashboard-clone-wizard.component';
    import { DashboardPageCrudService } from './pages/dashboard-management/services/dashboard-page-crud.service';
    import { PublicDashboardService } from './pages/dashboard-management/services/public-dashboard.service';
    import { DatastorageService } from './pages/dashboard-management/services/datastorage.service';
    
     export function configFactory(http: HttpClient): ConfigLoader {
       return new ConfigHttpLoader(http, './assets/config.json');
     }
     
     export function createTranslateLoader(http: HttpClient) {
       return new TranslateHttpLoader(http, './assets/i18n/', '.json');
     }
     
     @NgModule({
       declarations: [AppComponent, AuthLogoutComponent],
       imports: [
         BrowserModule,
         BrowserAnimationsModule,
         HttpClientModule,
         AppRoutingModule,
         UiFeaturesModule,
         NbSidebarModule.forRoot(),
         NbMenuModule.forRoot(),
         NbDatepickerModule.forRoot(),
         NbTimepickerModule.forRoot(),
         NbDialogModule.forRoot(),
         NbWindowModule.forRoot(),
         NbToastrModule.forRoot(),
         NbAccordionModule,
         CoreModule.forRoot(),
         ThemeModule.forRoot(),
         MarkdownModule.forRoot(),
         ConfigModule.forRoot({
           provide: ConfigLoader,
           useFactory: configFactory,
           deps: [HttpClient]
         }),
         TranslateModule.forRoot({
           loader: {
             provide: TranslateLoader,
             useFactory: createTranslateLoader,
             deps: [HttpClient],
           },
         }),
    
         NbSecurityModule.forRoot({
           accessControl: {
             ADMIN: {
               view: '*'
             },
             MANAGER: {
              view: [
                'external-app',
                'maps',
                'messina',
                'home',
                'about',
                'charts',
                'catalogues',
                'simulation-wizard',
                'map-layers',
                'traffic simulation',
                'tecnalia',
                'dashboard-management',
                'PRIVATE_DASHBOARDS',
                'SHARED_DASHBOARDS',
                'PUBLIC_DASHBOARDS']
            },
            CITIZEN: {
              view: [
                'home',
                'about',
                'ui-features',
                'catalogues',
                'simulation-wizard',
                'traffic simulation',
                'tecnalia',
                'PRIVATE_DASHBOARDS',
                'SHARED_DASHBOARDS',
                'PUBLIC_DASHBOARDS']
            },
            ANONYMOUS: {
              view: [
                'home',
                'about',
                'PUBLIC_DASHBOARDS']
             },
           },
         })
       ],
       providers: [
        DashboardPageCrudService, PublicDashboardService, DatastorageService,
         AuthGuard,
         {
           provide: HTTP_INTERCEPTORS,
           useClass: TokenInterceptor,
           multi: true
         },
         DashboardCloneWizardComponent
       ],
       bootstrap: [AppComponent],
     })
     export class AppModule {
     }