UNPKG

ng-zorro-antd

Version:

An enterprise-class UI components based on Ant Design and Angular

1 lines 17.5 kB
{"version":3,"file":"ng-zorro-antd-breadcrumb.mjs","sources":["../../components/breadcrumb/breadcrumb-separator.component.ts","../../components/breadcrumb/breadcrumb.ts","../../components/breadcrumb/breadcrumb-item.component.ts","../../components/breadcrumb/breadcrumb.component.ts","../../components/breadcrumb/breadcrumb.module.ts","../../components/breadcrumb/public-api.ts","../../components/breadcrumb/ng-zorro-antd-breadcrumb.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Component } from '@angular/core';\n\n@Component({\n selector: 'nz-breadcrumb-separator',\n exportAs: 'nzBreadcrumbSeparator',\n template: `<ng-content></ng-content>`,\n host: {\n class: 'ant-breadcrumb-separator'\n }\n})\nexport class NzBreadCrumbSeparatorComponent {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { TemplateRef } from '@angular/core';\n\n/**\n * https://angular.io/errors/NG3003\n * An intermediate interface for {@link NzBreadCrumbComponent} & {@link NzBreadCrumbItemComponent}\n */\nexport abstract class NzBreadcrumb {\n abstract nzSeparator: string | TemplateRef<void> | null;\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';\n\nimport { NzOutletModule } from 'ng-zorro-antd/core/outlet';\nimport { NzDropdownMenuComponent, NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\nimport { NzBreadcrumb } from './breadcrumb';\nimport { NzBreadCrumbSeparatorComponent } from './breadcrumb-separator.component';\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n selector: 'nz-breadcrumb-item',\n exportAs: 'nzBreadcrumbItem',\n preserveWhitespaces: false,\n imports: [NgTemplateOutlet, NzBreadCrumbSeparatorComponent, NzDropDownModule, NzIconModule, NzOutletModule],\n template: `\n @if (!!nzOverlay) {\n <span class=\"ant-breadcrumb-overlay-link\" nz-dropdown [nzDropdownMenu]=\"nzOverlay\">\n <ng-template [ngTemplateOutlet]=\"noMenuTpl\"></ng-template>\n <nz-icon nzType=\"down\" />\n </span>\n } @else {\n <ng-template [ngTemplateOutlet]=\"noMenuTpl\" />\n }\n\n @if (nzBreadCrumbComponent.nzSeparator) {\n <nz-breadcrumb-separator>\n <ng-container *nzStringTemplateOutlet=\"nzBreadCrumbComponent.nzSeparator\">\n {{ nzBreadCrumbComponent.nzSeparator }}\n </ng-container>\n </nz-breadcrumb-separator>\n }\n\n <ng-template #noMenuTpl>\n <span class=\"ant-breadcrumb-link\">\n <ng-content />\n </span>\n </ng-template>\n `\n})\nexport class NzBreadCrumbItemComponent {\n /**\n * Dropdown content of a breadcrumb item.\n */\n @Input() nzOverlay?: NzDropdownMenuComponent;\n\n constructor(public nzBreadCrumbComponent: NzBreadcrumb) {}\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction, Directionality } from '@angular/cdk/bidi';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Injector,\n Input,\n OnDestroy,\n OnInit,\n Renderer2,\n TemplateRef,\n ViewEncapsulation,\n booleanAttribute,\n forwardRef\n} from '@angular/core';\nimport { ActivatedRoute, NavigationEnd, PRIMARY_OUTLET, Params, Router } from '@angular/router';\nimport { Subject } from 'rxjs';\nimport { filter, startWith, takeUntil } from 'rxjs/operators';\n\nimport { PREFIX } from 'ng-zorro-antd/core/logger';\n\nimport { NzBreadcrumb } from './breadcrumb';\nimport { NzBreadCrumbItemComponent } from './breadcrumb-item.component';\n\nexport interface BreadcrumbOption {\n label: string;\n params: Params;\n url: string;\n}\n\n@Component({\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n selector: 'nz-breadcrumb',\n exportAs: 'nzBreadcrumb',\n preserveWhitespaces: false,\n providers: [{ provide: NzBreadcrumb, useExisting: forwardRef(() => NzBreadCrumbComponent) }],\n imports: [NzBreadCrumbItemComponent],\n template: `\n <ng-content />\n @if (nzAutoGenerate && breadcrumbs.length) {\n @for (breadcrumb of breadcrumbs; track breadcrumb.url) {\n <nz-breadcrumb-item>\n <a [attr.href]=\"breadcrumb.url\" (click)=\"navigate(breadcrumb.url, $event)\">{{ breadcrumb.label }}</a>\n </nz-breadcrumb-item>\n }\n }\n `,\n host: {\n class: 'ant-breadcrumb'\n }\n})\nexport class NzBreadCrumbComponent implements OnInit, OnDestroy, NzBreadcrumb {\n @Input({ transform: booleanAttribute }) nzAutoGenerate = false;\n @Input() nzSeparator: string | TemplateRef<void> | null = '/';\n @Input() nzRouteLabel: string = 'breadcrumb';\n @Input() nzRouteLabelFn: (label: string) => string = label => label;\n @Input() nzRouteFn: (route: string) => string = route => route;\n\n breadcrumbs: BreadcrumbOption[] = [];\n dir: Direction = 'ltr';\n\n private destroy$ = new Subject<void>();\n\n constructor(\n private injector: Injector,\n private cdr: ChangeDetectorRef,\n private elementRef: ElementRef,\n private renderer: Renderer2,\n private directionality: Directionality\n ) {}\n\n ngOnInit(): void {\n if (this.nzAutoGenerate) {\n this.registerRouterChange();\n }\n\n this.directionality.change?.pipe(takeUntil(this.destroy$)).subscribe((direction: Direction) => {\n this.dir = direction;\n this.prepareComponentForRtl();\n this.cdr.detectChanges();\n });\n\n this.dir = this.directionality.value;\n this.prepareComponentForRtl();\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n navigate(url: string, e: MouseEvent): void {\n e.preventDefault();\n this.injector.get(Router).navigateByUrl(url);\n }\n\n private registerRouterChange(): void {\n try {\n const router = this.injector.get(Router);\n const activatedRoute = this.injector.get(ActivatedRoute);\n router.events\n .pipe(\n filter(e => e instanceof NavigationEnd),\n takeUntil(this.destroy$),\n startWith(true) // trigger initial render\n )\n .subscribe(() => {\n this.breadcrumbs = this.getBreadcrumbs(activatedRoute.root);\n this.cdr.markForCheck();\n });\n } catch {\n throw new Error(`${PREFIX} You should import RouterModule if you want to use 'NzAutoGenerate'.`);\n }\n }\n\n private getBreadcrumbs(\n route: ActivatedRoute,\n url: string = '',\n breadcrumbs: BreadcrumbOption[] = []\n ): BreadcrumbOption[] {\n const children: ActivatedRoute[] = route.children;\n\n // If there's no sub root, then stop the recurse and returns the generated breadcrumbs.\n if (children.length === 0) {\n return breadcrumbs;\n }\n\n for (const child of children) {\n if (child.outlet === PRIMARY_OUTLET) {\n // Only parse components in primary router-outlet (in another word, router-outlet without a specific name).\n // Parse this layer and generate a breadcrumb item.\n const routeUrl: string = child.snapshot.url\n .map(segment => segment.path)\n .filter(path => path)\n .join('/');\n\n // Do not change nextUrl if routeUrl is falsy. This happens when it's a route lazy loading other modules.\n const nextUrl = routeUrl ? `${url}/${routeUrl}` : url;\n const breadcrumbLabel = this.nzRouteLabelFn(child.snapshot.data[this.nzRouteLabel]);\n const shapedUrl = this.nzRouteFn(nextUrl);\n // If have data, go to generate a breadcrumb for it.\n if (routeUrl && breadcrumbLabel) {\n const breadcrumb: BreadcrumbOption = {\n label: breadcrumbLabel,\n params: child.snapshot.params,\n url: shapedUrl\n };\n breadcrumbs.push(breadcrumb);\n }\n\n return this.getBreadcrumbs(child, nextUrl, breadcrumbs);\n }\n }\n\n return breadcrumbs;\n }\n\n private prepareComponentForRtl(): void {\n if (this.dir === 'rtl') {\n this.renderer.addClass(this.elementRef.nativeElement, 'ant-breadcrumb-rtl');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'ant-breadcrumb-rtl');\n }\n }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { NzBreadCrumbItemComponent } from './breadcrumb-item.component';\nimport { NzBreadCrumbSeparatorComponent } from './breadcrumb-separator.component';\nimport { NzBreadCrumbComponent } from './breadcrumb.component';\n\n@NgModule({\n imports: [NzBreadCrumbComponent, NzBreadCrumbItemComponent, NzBreadCrumbSeparatorComponent],\n exports: [NzBreadCrumbComponent, NzBreadCrumbItemComponent, NzBreadCrumbSeparatorComponent]\n})\nexport class NzBreadCrumbModule {}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './breadcrumb-item.component';\nexport * from './breadcrumb.component';\nexport * from './breadcrumb.module';\nexport * from './breadcrumb-separator.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.NzBreadcrumb"],"mappings":"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"}