{"version":3,"file":"acknow-srl-ack6-lib-luigi.mjs","sources":["../../../projects/ack6-lib/luigi/injection/injection.token.ts","../../../projects/ack6-lib/luigi/services/luigi-navigation-service.service.ts","../../../projects/ack6-lib/luigi/luigi.module.ts","../../../projects/ack6-lib/luigi/acknow-srl-ack6-lib-luigi.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const MICROAPP_NAME = new InjectionToken<string>('MicroappName');\n\n","import { Inject, Injectable, NgZone, Optional } from '@angular/core';\nimport { NavigationEnd, Router } from '@angular/router';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { linkManager } from '@luigi-project/client';\nimport { OnDestroy } from '@angular/core';\nimport * as LuigiClient from '@luigi-project/client';\nimport { LuigiBreadcrumb } from '../models/bradcrumbs';\nimport { MICROAPP_NAME } from '../injection/injection.token';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class LuigiNavigationService implements OnDestroy {\n\n  private subscriptions: Subscription = new Subscription();\n  private homeBreadcrumb: LuigiBreadcrumb = {\n    label: 'home',\n    route: {\n      url: ['/']\n    }\n  };\n\n\n  constructor(\n    @Optional() @Inject(MICROAPP_NAME) private microAppName: string,\n    private router: Router,\n    private ngZone: NgZone) {\n    this.subscriptions.add(\n      router.events\n        .pipe(filter(ev => ev instanceof NavigationEnd))\n        .subscribe((ev: any) => {\n          console.log(ev);\n          linkManager()\n            .fromVirtualTreeRoot()\n            .withoutSync()\n            .navigate(ev.url);\n        })\n    );\n    LuigiClient.addCustomMessageListener(('changeroute.response'), (message: any) => this.ngZone.run(() => {\n      this.router.navigate(message.route.url, { queryParams: message.route.queryParams });\n    }));\n\n    if (LuigiClient.isLuigiClientInitialized()) {\n      this.setAppName(microAppName ?? 'home');\n    } else {\n      const listener = LuigiClient.addInitListener(() => {\n        LuigiClient.removeInitListener(listener);\n        this.setAppName(microAppName ?? 'home');\n      });\n    }\n  }\n\n  /**\n   * Aggiorna il nome della microapp corrente\n   * @param label nome della micro app\n   * @returns void\n   */\n  setAppName = (label: string) => this.setBreadcrumbHome({ label, route: { url: ['/'] } });\n\n  /**\n   * Aggiorna la prima briciola di pane dell'app\n   * @param breadcrumb briciola\n   * @returns void\n   */\n  setBreadcrumbHome = (breadcrumb: LuigiBreadcrumb) => {\n    this.homeBreadcrumb = breadcrumb;\n    LuigiClient.sendCustomMessage({\n      id: 'update-bradcrumbs.request',\n      payload: [this.homeBreadcrumb]\n    });\n  }\n\n  /**\n   * Aggiorna le briciole di pane che seguono la home\n   * @param breadcrumbs nuove briciole da visualizzare\n   * @returns void\n   */\n  changeBreadcrumbs = (breadcrumbs: LuigiBreadcrumb[]) => LuigiClient.sendCustomMessage({\n    id: 'update-bradcrumbs.request',\n    payload: [this.homeBreadcrumb, ...breadcrumbs]\n  })\n\n\n  ngOnDestroy(): void {\n    this.subscriptions.unsubscribe();\n    LuigiClient.removeCustomMessageListener('changeroute.response');\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { MICROAPP_NAME } from './injection/injection.token';\nimport { LuigiNavigationService } from './public-api';\n\n@NgModule({\n  imports: [CommonModule],\n  exports: []\n})\nexport class Ack6LuigiModule {\n  static forRoot(microappName: string): ModuleWithProviders<Ack6LuigiModule> {\n    return {\n      ngModule: Ack6LuigiModule,\n      providers: [\n        { provide: MICROAPP_NAME, useValue: microappName }\n      ],\n    };\n  }\n  constructor(luigiNavigationService: LuigiNavigationService) {\n\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.LuigiNavigationService"],"mappings":"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"}