UNPKG

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).

73 lines 6.16 kB
/** * @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 { Injectable } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; import { share } from 'rxjs/operators'; import { submenuToggle$, itemClick$, itemSelect$, itemHover$, addItems$, navigateHome$, getSelectedItem$, } from './variables'; export class LambMenuService { constructor() { } /** * Agregar elementos al final de la lista de elementos del menú * @param {?} items * @param {?=} tag * @return {?} */ addItems(items, tag) { addItems$.next({ tag, items }); } /** * Navega al elemento del menú de inicio (home). * @param {?=} tag * @return {?} */ navigateHome(tag) { navigateHome$.next({ tag }); } /** * Devuelve el elemento seleccionado actualmente. No se suscribirá a los eventos futuros. * @param {?=} tag * @return {?} Observable<{tag: string; item: LambMenuBag}> */ getSelectedItem(tag) { /** @type {?} */ const listener = new BehaviorSubject(null); getSelectedItem$.next({ tag, listener }); return listener.asObservable(); } /** * @return {?} */ onSubmenuToggle$() { return submenuToggle$.pipe(share()); } /** * @return {?} */ onItemClick() { return itemClick$.pipe(share()); } /** * @return {?} */ onItemSelect() { return itemSelect$.pipe(share()); } /** * @return {?} */ onItemHover() { return itemHover$.pipe(share()); } } LambMenuService.decorators = [ { type: Injectable }, ]; LambMenuService.ctorParameters = () => []; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbGFtYi13ZWItbGliLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvbWVudS9tZW51LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBT0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2QyxPQUFPLEVBQ0wsY0FBYyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUNuRCxTQUFTLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixHQUMzQyxNQUFNLGFBQWEsQ0FBQztBQUdyQixNQUFNO0lBRUosZ0JBQWdCLENBQUM7Ozs7Ozs7SUFPVixRQUFRLENBQUMsS0FBcUIsRUFBRSxHQUFZO1FBQ2pELFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNqQyxDQUFDOzs7Ozs7SUFNTSxZQUFZLENBQUMsR0FBWTtRQUM5QixhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUM5QixDQUFDOzs7Ozs7SUFPTSxlQUFlLENBQUMsR0FBWTs7Y0FDM0IsUUFBUSxHQUFHLElBQUksZUFBZSxDQUFjLElBQUksQ0FBQztRQUV2RCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUV6QyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2pDLENBQUM7Ozs7SUFFTSxnQkFBZ0I7UUFDckIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7O0lBRU0sV0FBVztRQUNoQixNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7Ozs7SUFFTSxZQUFZO1FBQ2pCLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbkMsQ0FBQzs7OztJQUVNLFdBQVc7UUFDaEIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDOzs7WUFqREYsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4vKipcclxuICogQGxpY2Vuc2VcclxuICogQ29weXJpZ2h0IExhbWIgVGVhbS4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cclxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgTGljZW5zZS50eHQgaW4gdGhlIHByb2plY3Qgcm9vdCBmb3IgbGljZW5zZSBpbmZvcm1hdGlvbi5cclxuICovXHJcblxyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMYW1iTWVudUJhZywgTGFtYk1lbnVJdGVtIH0gZnJvbSAnLi9tZW51LWl0ZW0nO1xyXG5pbXBvcnQgeyBzaGFyZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7XHJcbiAgc3VibWVudVRvZ2dsZSQsIGl0ZW1DbGljayQsIGl0ZW1TZWxlY3QkLCBpdGVtSG92ZXIkLFxyXG4gIGFkZEl0ZW1zJCwgbmF2aWdhdGVIb21lJCwgZ2V0U2VsZWN0ZWRJdGVtJCxcclxufSBmcm9tICcuL3ZhcmlhYmxlcyc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBMYW1iTWVudVNlcnZpY2Uge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAvKipcclxuICAgKiBBZ3JlZ2FyIGVsZW1lbnRvcyBhbCBmaW5hbCBkZSBsYSBsaXN0YSBkZSBlbGVtZW50b3MgZGVsIG1lbsO6XHJcbiAgICogQHBhcmFtIExpc3Q8TGFtYk1lbnVJdGVtPn0gaXRlbXNcclxuICAgKiBAcGFyYW0gc3RyaW5nIHRhZ1xyXG4gICAqL1xyXG4gIHB1YmxpYyBhZGRJdGVtcyhpdGVtczogTGFtYk1lbnVJdGVtW10sIHRhZz86IHN0cmluZykge1xyXG4gICAgYWRkSXRlbXMkLm5leHQoeyB0YWcsIGl0ZW1zIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogTmF2ZWdhIGFsIGVsZW1lbnRvIGRlbCBtZW7DuiBkZSBpbmljaW8gKGhvbWUpLlxyXG4gICAqIEBwYXJhbSBzdHJpbmcgdGFnXHJcbiAgICovXHJcbiAgcHVibGljIG5hdmlnYXRlSG9tZSh0YWc/OiBzdHJpbmcpIHtcclxuICAgIG5hdmlnYXRlSG9tZSQubmV4dCh7IHRhZyB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIERldnVlbHZlIGVsIGVsZW1lbnRvIHNlbGVjY2lvbmFkbyBhY3R1YWxtZW50ZS4gTm8gc2Ugc3VzY3JpYmlyw6EgYSBsb3MgZXZlbnRvcyBmdXR1cm9zLlxyXG4gICAqIEBwYXJhbSBzdHJpbmcgdGFnXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZTx7dGFnOiBzdHJpbmc7IGl0ZW06IExhbWJNZW51QmFnfT5cclxuICAgKi9cclxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRJdGVtKHRhZz86IHN0cmluZyk6IE9ic2VydmFibGU8TGFtYk1lbnVCYWc+IHtcclxuICAgIGNvbnN0IGxpc3RlbmVyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMYW1iTWVudUJhZz4obnVsbCk7XHJcblxyXG4gICAgZ2V0U2VsZWN0ZWRJdGVtJC5uZXh0KHsgdGFnLCBsaXN0ZW5lciB9KTtcclxuXHJcbiAgICByZXR1cm4gbGlzdGVuZXIuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TdWJtZW51VG9nZ2xlJCgpOiBPYnNlcnZhYmxlPExhbWJNZW51QmFnPiB7XHJcbiAgICByZXR1cm4gc3VibWVudVRvZ2dsZSQucGlwZShzaGFyZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkl0ZW1DbGljaygpOiBPYnNlcnZhYmxlPExhbWJNZW51QmFnPiB7XHJcbiAgICByZXR1cm4gaXRlbUNsaWNrJC5waXBlKHNoYXJlKCkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uSXRlbVNlbGVjdCgpOiBPYnNlcnZhYmxlPExhbWJNZW51QmFnPiB7XHJcbiAgICByZXR1cm4gaXRlbVNlbGVjdCQucGlwZShzaGFyZSgpKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkl0ZW1Ib3ZlcigpOiBPYnNlcnZhYmxlPExhbWJNZW51QmFnPiB7XHJcbiAgICByZXR1cm4gaXRlbUhvdmVyJC5waXBlKHNoYXJlKCkpO1xyXG4gIH1cclxufVxyXG4iXX0=