UNPKG

@ngqp/core

Version:

Synchronizing form controls with the URL for Angular

29 lines 3.29 kB
import { Injectable } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; /** @internal */ export class DefaultRouterAdapter { constructor(router, route) { this.router = router; this.route = route; } get url() { return this.router.url; } get queryParamMap() { return this.route.queryParamMap; } navigate(queryParams, extras = {}) { return this.router.navigate([], Object.assign({ relativeTo: this.route, queryParamsHandling: 'merge', queryParams: queryParams }, extras)); } getCurrentNavigation() { return this.router.getCurrentNavigation(); } } DefaultRouterAdapter.decorators = [ { type: Injectable } ]; DefaultRouterAdapter.ctorParameters = () => [ { type: Router }, { type: ActivatedRoute } ]; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1yb3V0ZXItYWRhcHRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uL3Byb2plY3RzL25ncXAvY29yZS9zcmMvIiwic291cmNlcyI6WyJsaWIvcm91dGVyLWFkYXB0ZXIvZGVmYXVsdC1yb3V0ZXItYWRhcHRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGNBQWMsRUFBVSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdqRSxnQkFBZ0I7QUFFaEIsTUFBTSxPQUFPLG9CQUFvQjtJQUU3QixZQUFvQixNQUFjLEVBQVUsS0FBcUI7UUFBN0MsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFVLFVBQUssR0FBTCxLQUFLLENBQWdCO0lBQ2pFLENBQUM7SUFFRCxJQUFXLEdBQUc7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO0lBQzNCLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDcEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztJQUNwQyxDQUFDO0lBRU0sUUFBUSxDQUFDLFdBQW1CLEVBQUUsU0FBMEMsRUFBRTtRQUM3RSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsa0JBQzFCLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUN0QixtQkFBbUIsRUFBRSxPQUFPLEVBQzVCLFdBQVcsRUFBRSxXQUFXLElBQ3JCLE1BQU0sRUFDWCxDQUFDO0lBQ1AsQ0FBQztJQUVNLG9CQUFvQjtRQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztJQUM5QyxDQUFDOzs7WUF6QkosVUFBVTs7O1lBSnNCLE1BQU07WUFBOUIsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBQYXJhbXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBSb3V0ZXJBZGFwdGVyLCBSb3V0ZXJPcHRpb25zIH0gZnJvbSAnLi9yb3V0ZXItYWRhcHRlci5pbnRlcmZhY2UnO1xuXG4vKiogQGludGVybmFsICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGVmYXVsdFJvdXRlckFkYXB0ZXIgaW1wbGVtZW50cyBSb3V0ZXJBZGFwdGVyIHtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB1cmwoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci51cmw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBxdWVyeVBhcmFtTWFwKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZS5xdWVyeVBhcmFtTWFwO1xuICAgIH1cblxuICAgIHB1YmxpYyBuYXZpZ2F0ZShxdWVyeVBhcmFtczogUGFyYW1zLCBleHRyYXM6IFJvdXRlck9wdGlvbnMgJiB7IHN0YXRlPzogYW55IH0gPSB7fSk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICAgICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnLFxuICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHF1ZXJ5UGFyYW1zLFxuICAgICAgICAgICAgLi4uZXh0cmFzLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0Q3VycmVudE5hdmlnYXRpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5nZXRDdXJyZW50TmF2aWdhdGlvbigpO1xuICAgIH1cblxufSJdfQ==