lamb-web-lib
Version:
LambWebLib. Es un proyecto angular de tipo Librería. que contiene una Suit de componentes reutilizables para el proyecto [Lamb Financial](https://lamb.upeu.edu.pe).
145 lines • 12 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
/**
* @license
* Copyright Lamb Team. All Rights Reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*/
import { Component } from '@angular/core';
import { ActivatedRoute, Router, NavigationEnd } from '@angular/router';
import { Location } from '@angular/common';
import { filter } from 'rxjs/operators';
export class LambButtonBackComponent {
// private pathBack: string;
/**
* @param {?} route
* @param {?} router
* @param {?} location
*/
constructor(route, router, location) {
this.route = route;
this.router = router;
this.location = location;
this.flag = true;
}
/**
* @return {?}
*/
ngOnInit() {
/** Estos dos metodos son para el flag. */
this.initShowOrHideFlag();
this.eventFlagSubscribe();
}
/**
* @return {?}
*/
initShowOrHideFlag() {
/** @type {?} */
const pathEnd = this.pathEnd(this.location.path());
this.condition(pathEnd);
}
/**
* @return {?}
*/
eventFlagSubscribe() {
this.router.events.pipe(filter(path => path instanceof NavigationEnd))
.subscribe((path) => {
/** @type {?} */
const pathEnd = this.pathEnd(path.url);
this.condition(pathEnd);
});
}
/**
* @param {?} path
* @return {?}
*/
pathEnd(path) {
/** @type {?} */
const paths = path.split('/')
.filter(path2 => path2 !== '');
return paths[paths.length - 1];
}
/**
* @param {?} pathEnd
* @return {?}
*/
condition(pathEnd) {
/** @type {?} */
const url = this.route.snapshot.url;
if (((url[0] && url[0].path) === pathEnd)) {
this.flag = true;
}
else if (url[0] == null) {
/** @type {?} */
const urlParent = this.route.parent.snapshot.url;
if (((urlParent[urlParent.length - 1] && urlParent[urlParent.length - 1].path) === pathEnd)) {
this.flag = true;
}
else {
this.flag = false;
}
}
else {
this.flag = false;
}
}
/**
* @return {?}
*/
onBack() {
/** @type {?} */
const url = this.route.snapshot.url;
/** @type {?} */
const link = (url[0] && url[0].path) || '';
/** @type {?} */
const relativeUrl = link ? `../${link}` : `./${link}`;
this.router.navigate([relativeUrl], { relativeTo: this.route });
}
}
LambButtonBackComponent.decorators = [
{ type: Component, args: [{
selector: 'lamb-button-back',
template: `
<a class="btn btn-light lamb-button" [ngClass]="{'lamb-flag': flag}" (click)="onBack()">
<span class="fa fa-reply" > </span>
</a>
`,
styles: [
`
.lamb-flag {
visibility: hidden;
}
.lamb-button {
/* padding: 0.3rem 0.6rem; */
padding: 0.1rem 0.3rem;
cursor: pointer !important;
border-radius: 50%;
-webkit-transition: -webkit-transform .4s ease-in-out;
transition: transform .4s ease-in-out;
}
.lamb-button:hover {
-webkit-transform: rotate(-360deg);
transform: rotate(-360deg)
}
`,
],
},] },
];
LambButtonBackComponent.ctorParameters = () => [
{ type: ActivatedRoute },
{ type: Router },
{ type: Location }
];
if (false) {
/** @type {?} */
LambButtonBackComponent.prototype.flag;
/** @type {?} */
LambButtonBackComponent.prototype.route;
/** @type {?} */
LambButtonBackComponent.prototype.router;
/** @type {?} */
LambButtonBackComponent.prototype.location;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWJhY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbGFtYi13ZWItbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvYnV0dG9uLWJhY2svYnV0dG9uLWJhY2suY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUtBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFjLE1BQU0saUJBQWlCLENBQUM7QUFDcEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQThCeEMsTUFBTTs7Ozs7OztJQUlGLFlBQW9CLEtBQXFCLEVBQzdCLE1BQWMsRUFDZCxRQUFrQjtRQUZWLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQzdCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBTHZCLFNBQUksR0FBWSxJQUFJLENBQUM7SUFLTSxDQUFDOzs7O0lBRW5DLFFBQVE7UUFDSiwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDMUIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQzs7OztJQUVPLGtCQUFrQjs7Y0FDaEIsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7Ozs7SUFFTyxrQkFBa0I7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNuQixNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLFlBQVksYUFBYSxDQUFDLENBQ2hEO2FBQ0ksU0FBUyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7O2tCQUNmLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDdEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7Ozs7O0lBQ08sT0FBTyxDQUFDLElBQVk7O2NBQ2xCLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQzthQUN4QixNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssRUFBRSxDQUFDO1FBQ2xDLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNuQyxDQUFDOzs7OztJQUVPLFNBQVMsQ0FBQyxPQUFlOztjQUN2QixHQUFHLEdBQWlCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUc7UUFDakQsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLENBQUM7UUFBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7O2tCQUNsQixTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUc7WUFDaEQsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDMUYsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDckIsQ0FBQztZQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNKLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLENBQUM7UUFDTCxDQUFDO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDSixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztRQUN0QixDQUFDO0lBQ0wsQ0FBQzs7OztJQUVNLE1BQU07O2NBQ0gsR0FBRyxHQUFpQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHOztjQUMzQyxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUU7O2NBQ3BDLFdBQVcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxFQUFFO1FBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDcEUsQ0FBQzs7O1lBbkZKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QixRQUFRLEVBQUU7Ozs7S0FJVDtnQkFDRCxNQUFNLEVBQUU7b0JBQ0o7Ozs7Ozs7Ozs7Ozs7Ozs7U0FnQkM7aUJBQ0o7YUFDSjs7O1lBOUJRLGNBQWM7WUFBRSxNQUFNO1lBQ3RCLFFBQVE7Ozs7SUFnQ2IsdUNBQTRCOztJQUdoQix3Q0FBNkI7O0lBQ3JDLHlDQUFzQjs7SUFDdEIsMkNBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIEBsaWNlbnNlXHJcbiAqIENvcHlyaWdodCBMYW1iIFRlYW0uIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXHJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIExpY2Vuc2UudHh0IGluIHRoZSBwcm9qZWN0IHJvb3QgZm9yIGxpY2Vuc2UgaW5mb3JtYXRpb24uXHJcbiAqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyLCBOYXZpZ2F0aW9uRW5kLCBVcmxTZWdtZW50IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbGFtYi1idXR0b24tYmFjaycsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxhIGNsYXNzPVwiYnRuIGJ0bi1saWdodCBsYW1iLWJ1dHRvblwiIFtuZ0NsYXNzXT1cInsnbGFtYi1mbGFnJzogZmxhZ31cIiAoY2xpY2spPVwib25CYWNrKClcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmYSBmYS1yZXBseVwiID4gPC9zcGFuPlxyXG4gICAgICAgIDwvYT5cclxuICAgIGAsXHJcbiAgICBzdHlsZXM6IFtcclxuICAgICAgICBgXHJcbiAgICAgICAgLmxhbWItZmxhZyB7XHJcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sYW1iLWJ1dHRvbiB7XHJcbiAgICAgICAgICAvKiBwYWRkaW5nOiAwLjNyZW0gMC42cmVtOyAqL1xyXG4gICAgICAgICAgcGFkZGluZzogMC4xcmVtIDAuM3JlbTtcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGFtYi1idXR0b246aG92ZXIge1xyXG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMzYwZGVnKTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGAsXHJcbiAgICBdLFxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIExhbWJCdXR0b25CYWNrQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIHB1YmxpYyBmbGFnOiBCb29sZWFuID0gdHJ1ZTtcclxuICAgIC8vIHByaXZhdGUgcGF0aEJhY2s6IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcclxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgIHByaXZhdGUgbG9jYXRpb246IExvY2F0aW9uKSB7IH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICAvKiogRXN0b3MgZG9zIG1ldG9kb3Mgc29uIHBhcmEgZWwgZmxhZy4gKi9cclxuICAgICAgICB0aGlzLmluaXRTaG93T3JIaWRlRmxhZygpO1xyXG4gICAgICAgIHRoaXMuZXZlbnRGbGFnU3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbml0U2hvd09ySGlkZUZsYWcoKSB7XHJcbiAgICAgICAgY29uc3QgcGF0aEVuZCA9IHRoaXMucGF0aEVuZCh0aGlzLmxvY2F0aW9uLnBhdGgoKSk7XHJcbiAgICAgICAgdGhpcy5jb25kaXRpb24ocGF0aEVuZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBldmVudEZsYWdTdWJzY3JpYmUoKSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnBpcGUoXHJcbiAgICAgICAgICAgIGZpbHRlcihwYXRoID0+IHBhdGggaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSxcclxuICAgICAgICApXHJcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKHBhdGg6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgcGF0aEVuZCA9IHRoaXMucGF0aEVuZChwYXRoLnVybCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNvbmRpdGlvbihwYXRoRW5kKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBwcml2YXRlIHBhdGhFbmQocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBjb25zdCBwYXRocyA9IHBhdGguc3BsaXQoJy8nKVxyXG4gICAgICAgICAgICAuZmlsdGVyKHBhdGgyID0+IHBhdGgyICE9PSAnJyk7XHJcbiAgICAgICAgcmV0dXJuIHBhdGhzW3BhdGhzLmxlbmd0aCAtIDFdO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY29uZGl0aW9uKHBhdGhFbmQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHVybDogVXJsU2VnbWVudFtdID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC51cmw7XHJcbiAgICAgICAgaWYgKCgodXJsWzBdICYmIHVybFswXS5wYXRoKSA9PT0gcGF0aEVuZCkpIHtcclxuICAgICAgICAgICAgdGhpcy5mbGFnID0gdHJ1ZTtcclxuICAgICAgICB9IGVsc2UgaWYgKHVybFswXSA9PSBudWxsKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHVybFBhcmVudCA9IHRoaXMucm91dGUucGFyZW50LnNuYXBzaG90LnVybDtcclxuICAgICAgICAgICAgaWYgKCgodXJsUGFyZW50W3VybFBhcmVudC5sZW5ndGggLSAxXSAmJiB1cmxQYXJlbnRbdXJsUGFyZW50Lmxlbmd0aCAtIDFdLnBhdGgpID09PSBwYXRoRW5kKSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5mbGFnID0gdHJ1ZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZmxhZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5mbGFnID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBvbkJhY2soKSB7XHJcbiAgICAgICAgY29uc3QgdXJsOiBVcmxTZWdtZW50W10gPSB0aGlzLnJvdXRlLnNuYXBzaG90LnVybDtcclxuICAgICAgICBjb25zdCBsaW5rID0gKHVybFswXSAmJiB1cmxbMF0ucGF0aCkgfHwgJyc7XHJcbiAgICAgICAgY29uc3QgcmVsYXRpdmVVcmwgPSBsaW5rID8gYC4uLyR7bGlua31gIDogYC4vJHtsaW5rfWA7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3JlbGF0aXZlVXJsXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xyXG4gICAgfVxyXG59XHJcblxyXG4iXX0=