UNPKG

ng-hotkeys

Version:

ng-hotkeys for Angular 14+

37 lines 3.97 kB
import { Injectable } from "@angular/core"; import { NgHotkeysService } from './ng-hotkeys.service'; import { map } from "rxjs/operators"; import * as i0 from "@angular/core"; import * as i1 from "./ng-hotkeys.service"; /** * Service to assist showing custom help screen */ export class NgHotkeysHelpService { /** * @ignore * @param {NgHotkeysService} keyboard */ constructor(keyboard) { this.keyboard = keyboard; /** * Observable to provide access to all registered shortcuts in the app. * @type {Observable<any>} */ this.shortcuts$ = this.keyboard.shortcuts$.pipe(map(shortcuts => shortcuts .filter(shortcut => Boolean(shortcut.label) && Boolean(shortcut.description)) .map(({ key, label, description }) => ({ key, label, description })))); } } NgHotkeysHelpService.ɵfac = function NgHotkeysHelpService_Factory(t) { return new (t || NgHotkeysHelpService)(i0.ɵɵinject(i1.NgHotkeysService)); }; NgHotkeysHelpService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: NgHotkeysHelpService, factory: NgHotkeysHelpService.ɵfac, providedIn: "root" }); (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(NgHotkeysHelpService, [{ type: Injectable, args: [{ providedIn: "root" }] }], function () { return [{ type: i1.NgHotkeysService }]; }, null); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctaG90a2V5cy1oZWxwLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1ob3RrZXlzL3NyYy9saWIvbmctaG90a2V5cy1oZWxwLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQUVyQzs7R0FFRztBQUlILE1BQU0sT0FBTyxvQkFBb0I7SUFDN0I7OztPQUdHO0lBQ0gsWUFBb0IsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7UUFFOUM7OztXQUdHO1FBQ0ksZUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDN0MsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQ1osU0FBUzthQUNKLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUM1RSxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDbkMsR0FBRztZQUNILEtBQUs7WUFDTCxXQUFXO1NBQ2QsQ0FBQyxDQUFDLENBQ1YsQ0FDSixDQUFDO0lBaEIrQyxDQUFDOzt3RkFMekMsb0JBQW9COzBFQUFwQixvQkFBb0IsV0FBcEIsb0JBQW9CLG1CQUZqQixNQUFNO3VGQUVULG9CQUFvQjtjQUhoQyxVQUFVO2VBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5nSG90a2V5c1NlcnZpY2UgfSBmcm9tICcuL25nLWhvdGtleXMuc2VydmljZSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIGFzc2lzdCBzaG93aW5nIGN1c3RvbSBoZWxwIHNjcmVlblxuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCJcbn0pXG5leHBvcnQgY2xhc3MgTmdIb3RrZXlzSGVscFNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBAcGFyYW0ge05nSG90a2V5c1NlcnZpY2V9IGtleWJvYXJkXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBrZXlib2FyZDogTmdIb3RrZXlzU2VydmljZSkge31cblxuICAgIC8qKlxuICAgICAqIE9ic2VydmFibGUgdG8gcHJvdmlkZSBhY2Nlc3MgdG8gYWxsIHJlZ2lzdGVyZWQgc2hvcnRjdXRzIGluIHRoZSBhcHAuXG4gICAgICogQHR5cGUge09ic2VydmFibGU8YW55Pn1cbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvcnRjdXRzJCA9IHRoaXMua2V5Ym9hcmQuc2hvcnRjdXRzJC5waXBlKFxuICAgICAgICBtYXAoc2hvcnRjdXRzID0+XG4gICAgICAgICAgICBzaG9ydGN1dHNcbiAgICAgICAgICAgICAgICAuZmlsdGVyKHNob3J0Y3V0ID0+IEJvb2xlYW4oc2hvcnRjdXQubGFiZWwpICYmIEJvb2xlYW4oc2hvcnRjdXQuZGVzY3JpcHRpb24pKVxuICAgICAgICAgICAgICAgIC5tYXAoKHsga2V5LCBsYWJlbCwgZGVzY3JpcHRpb24gfSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAga2V5LFxuICAgICAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgZGVzY3JpcHRpb25cbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgKVxuICAgICk7XG59XG4iXX0=