UNPKG

apstorydnn-navigation-angular

Version:

[![Build status](https://apstory.visualstudio.com/ApStory/_apis/build/status/apstorymq-client-angular)](https://apstory.visualstudio.com/ApStory/_build/latest?definitionId=25)

1 lines 6.83 kB
{"version":3,"file":"apstorydnn-navigation-angular.mjs","sources":["../../../projects/apstorydnn-navigation/src/lib/apstorydnn-navigation.service.ts","../../../projects/apstorydnn-navigation/src/public_api.ts","../../../projects/apstorydnn-navigation/src/apstorydnn-navigation-angular.ts"],"sourcesContent":["import { Location } from '@angular/common';\r\nimport { Injectable, ViewContainerRef, ComponentRef, ComponentFactoryResolver } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ApstorydnnNavigationService {\r\n private navSubject = new Subject<any>();\r\n private paramSubject = new Subject<any>();\r\n\r\n private params: { [key: string]: any };\r\n private prevPage: any;\r\n private navStack: any[];\r\n private componentHolder: ViewContainerRef;\r\n private componentRef: ComponentRef<any>;\r\n\r\n constructor(private componentFactory: ComponentFactoryResolver, private location: Location) {\r\n this.navStack = [];\r\n this.params = {};\r\n }\r\n\r\n setUrl(url: string) {\r\n location.href = url;\r\n }\r\n\r\n getUrlParam(paramName: string) {\r\n const path = this.location.path(false);\r\n const queryString = path.substr(path.indexOf('?') + 1);\r\n const urlParameters = new URLSearchParams(queryString);\r\n return urlParameters.get(paramName);\r\n }\r\n\r\n clearUrlParams() {\r\n this.location.replaceState('/', '');\r\n }\r\n\r\n getNavigationEvent(): Observable<any> {\r\n return this.navSubject.asObservable();\r\n }\r\n\r\n getParameterEvent(): Observable<any> {\r\n return this.paramSubject.asObservable();\r\n }\r\n\r\n private setComponent(type: any): void {\r\n if (this.componentRef) {\r\n this.componentRef.destroy();\r\n }\r\n\r\n const factory = this.componentFactory.resolveComponentFactory(type);\r\n this.componentRef = this.componentHolder.createComponent(factory);\r\n }\r\n\r\n setup(navHolder: ViewContainerRef) {\r\n this.componentHolder = navHolder;\r\n }\r\n\r\n setParam(key: string, value: any) {\r\n this.params[key] = value;\r\n this.paramSubject.next(key);\r\n }\r\n\r\n getParam(key: string) {\r\n return this.params[key];\r\n }\r\n\r\n push(page: any) {\r\n if (this.prevPage) {\r\n this.navStack.push(this.prevPage);\r\n }\r\n\r\n this.setComponent(page);\r\n this.prevPage = page;\r\n this.navSubject.next(this.componentRef);\r\n }\r\n\r\n canPop() {\r\n return this.navStack.length > 0;\r\n }\r\n\r\n popTo(screen: any) {\r\n while (typeof (screen) != typeof (this.prevPage)) {\r\n if (this.canPop()) {\r\n this.prevPage = this.navStack.pop();\r\n }\r\n }\r\n\r\n this.setComponent(this.prevPage);\r\n this.navSubject.next(this.componentRef);\r\n }\r\n\r\n popBack(nr: number) {\r\n for (let i = 0; i < nr; i++) {\r\n if (this.canPop()) {\r\n this.prevPage = this.navStack.pop();\r\n }\r\n }\r\n\r\n this.setComponent(this.prevPage);\r\n this.navSubject.next(this.componentRef);\r\n }\r\n\r\n pop() {\r\n if (this.canPop()) {\r\n this.prevPage = this.navStack.pop();\r\n this.setComponent(this.prevPage);\r\n this.navSubject.next(this.componentRef);\r\n }\r\n }\r\n}","/*\r\n * Public API Surface of apstorydnn-navigation\r\n */\r\n\r\nexport * from './lib/apstorydnn-navigation.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}