{"version":3,"file":"pmeig-ngb-breadcrumb.mjs","sources":["../../../projects/bootstrap/components/breadcrumb/src/lib/b-breadcrumb.directive.ts","../../../projects/bootstrap/components/breadcrumb/src/pmeig-ngb-breadcrumb.ts"],"sourcesContent":["import { Directive, HostListener, input, output } from '@angular/core';\nimport { BTagParentDirective } from '@pmeig/ngb-core';\n\n@Directive({\n  selector: '[breadcrumb]',\n})\nexport class BreadcrumbMaterial extends BTagParentDirective {\n\n  role = input<string>();\n  ariaLabel = input<string>('breadcrumb');\n  breadcrumb = input<string>();\n  breadcrumbChange = output<string>();\n  index = output<number>();\n  divider = input<string>();\n  id = input<string>();\n\n  constructor() {\n    super();\n    this.effect(this.refreshDivider);\n  }\n\n\n  protected override onInit() {\n    super.onInit();\n    if (!this.id()) {\n      throw new Error('Please set id for breadcrumb');\n    }\n    this.putClass('breadcrumb');\n    this.putAttribute(this.renderer.parentNode(this.element), 'aria-label', this.role() || 'breadcrumb');\n    const active = this.breadcrumb() || (this.id() + '-0');\n    this.getChildren().forEach((child, index) => {\n      this.putClass(child, 'breadcrumb-item', 'border-0');\n      this.putStyle(child, { cursor: 'pointer', 'text-decoration': 'underline' });\n      let id = child.id;\n      if (!id) {\n        id = this.id() + '-' + index;\n        child.id = id;\n      }\n      if (id === active) {\n        this.putClass(child, 'active');\n        this.putAttribute(child, 'aria-current', 'page');\n      }\n    });\n  }\n\n  @HostListener('click', ['$event'])\n  protected onClick(event: MouseEvent) {\n    this.getChildren().forEach((child, index) => {\n      this.removeClass(child, 'active');\n      this.removeAttribute(child, 'aria-current');\n      if (child.id === (event.target as unknown as { id: string }).id) {\n        this.putClass(child, 'active');\n        this.breadcrumbChange.emit(child.id);\n        this.index.emit(index);\n      }\n    });\n  }\n\n  refreshDivider() {\n    const divider = this.divider();\n    this.removeStyle(this.renderer.parentNode(this.element), '--bs-breadcrumb-divider');\n    if (divider) {\n      this.addAttribute(this.renderer.parentNode(this.element), 'style', `--bs-breadcrumb-divider: '${divider}';`);\n    }\n  }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}