UNPKG

@ng-doc/app

Version:

<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>

1 lines 3.27 kB
{"version":3,"file":"ng-doc-app-directives-route-active.mjs","sources":["../../../../libs/app/directives/route-active/route-active.directive.ts","../../../../libs/app/directives/route-active/ng-doc-app-directives-route-active.ts"],"sourcesContent":["import { Directive, ElementRef, inject, Input, Renderer2 } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Event, IsActiveMatchOptions, NavigationEnd, Router } from '@angular/router';\nimport { asArray } from '@ng-doc/core/helpers/as-array';\nimport { distinctUntilChanged, filter, map } from 'rxjs/operators';\n\n@Directive({\n selector: '[ngDocRouteActive]',\n standalone: true,\n})\nexport class NgDocRouteActiveDirective {\n @Input('ngDocRouteActive')\n link: string = '';\n\n @Input()\n activeClass: string | string[] = [];\n\n @Input()\n matchOptions: IsActiveMatchOptions = {\n fragment: 'exact',\n paths: 'subset',\n queryParams: 'exact',\n matrixParams: 'exact',\n };\n\n constructor() {\n const elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n const router = inject(Router);\n const renderer = inject(Renderer2);\n\n router.events\n .pipe(\n filter((event: Event) => event instanceof NavigationEnd),\n map(() => router.isActive(this.link, this.matchOptions)),\n distinctUntilChanged(),\n takeUntilDestroyed(),\n )\n .subscribe((isActive: boolean) => {\n isActive\n ? asArray(this.activeClass).forEach((cls: string) =>\n renderer.addClass(elementRef.nativeElement, cls),\n )\n : asArray(this.activeClass).forEach((cls: string) =>\n renderer.removeClass(elementRef.nativeElement, cls),\n );\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAUa,yBAAyB,CAAA;AAepC,IAAA,WAAA,GAAA;QAbA,IAAA,CAAA,IAAI,GAAW,EAAE;QAGjB,IAAA,CAAA,WAAW,GAAsB,EAAE;AAGnC,QAAA,IAAA,CAAA,YAAY,GAAyB;AACnC,YAAA,QAAQ,EAAE,OAAO;AACjB,YAAA,KAAK,EAAE,QAAQ;AACf,YAAA,WAAW,EAAE,OAAO;AACpB,YAAA,YAAY,EAAE,OAAO;SACtB;AAGC,QAAA,MAAM,UAAU,GAAG,MAAM,CAA0B,UAAU,CAAC;AAC9D,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC7B,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAElC,QAAA,MAAM,CAAC;AACJ,aAAA,IAAI,CACH,MAAM,CAAC,CAAC,KAAY,KAAK,KAAK,YAAY,aAAa,CAAC,EACxD,GAAG,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,EACxD,oBAAoB,EAAE,EACtB,kBAAkB,EAAE;AAErB,aAAA,SAAS,CAAC,CAAC,QAAiB,KAAI;YAC/B;kBACI,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,KAC5C,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC;kBAElD,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,GAAW,KAC5C,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CACpD;AACP,QAAA,CAAC,CAAC;IACN;8GApCW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAzB,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,CAAA,kBAAA,EAAA,MAAA,CAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAzB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAJrC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;sBAEE,KAAK;uBAAC,kBAAkB;;sBAGxB;;sBAGA;;;ACjBH;;AAEG;;;;"}